diff options
2178 files changed, 56812 insertions, 91394 deletions
diff --git a/ACTIVITY_MANAGER_OWNERS b/ACTIVITY_MANAGER_OWNERS new file mode 100644 index 000000000000..47782d1406c4 --- /dev/null +++ b/ACTIVITY_MANAGER_OWNERS @@ -0,0 +1,4 @@ +mwachens@google.com +sudheersai@google.com +varunshah@google.com +yamasani@google.com diff --git a/ACTIVITY_SECURITY_OWNERS b/ACTIVITY_SECURITY_OWNERS new file mode 100644 index 000000000000..c39842e1b7a3 --- /dev/null +++ b/ACTIVITY_SECURITY_OWNERS @@ -0,0 +1,2 @@ +haok@google.com +wnan@google.com
\ No newline at end of file diff --git a/ADPF_OWNERS b/ADPF_OWNERS index e6ca8f4bd48a..bcdc33825a13 100644 --- a/ADPF_OWNERS +++ b/ADPF_OWNERS @@ -1,3 +1,4 @@ -lpy@google.com -mattbuckley@google.com +sumir@google.com +chingtangyu@google.com xwxw@google.com +mattbuckley@google.com diff --git a/AconfigFlags.bp b/AconfigFlags.bp index 96d6f32fc1df..e71ded922ae6 100644 --- a/AconfigFlags.bp +++ b/AconfigFlags.bp @@ -15,6 +15,7 @@ aconfig_declarations_group { name: "framework-minus-apex-aconfig-declarations", aconfig_declarations_groups: [ + "aconfig_trade_in_mode_flags", "audio-framework-aconfig", ], java_aconfig_libraries: [ @@ -74,6 +75,7 @@ aconfig_declarations_group { "android.view.inputmethod.flags-aconfig-java", "android.webkit.flags-aconfig-java", "android.widget.flags-aconfig-java", + "art_exported_aconfig_flags_lib", "backstage_power_flags_lib", "backup_flags_lib", "camera_platform_flags_core_java_lib", @@ -88,6 +90,7 @@ aconfig_declarations_group { "com.android.media.flags.performance-aconfig-java", "com.android.media.flags.projection-aconfig-java", "com.android.net.thread.platform.flags-aconfig-java", + "com.android.ranging.flags.ranging-aconfig-java", "com.android.server.contextualsearch.flags-java", "com.android.server.flags.services-aconfig-java", "com.android.text.flags-aconfig-java", @@ -109,7 +112,7 @@ aconfig_declarations_group { filegroup { name: "framework-minus-apex-aconfig-srcjars", - srcs: [ + device_common_srcs: [ ":framework-minus-apex-aconfig-declarations{.srcjars}", ], } @@ -133,6 +136,14 @@ java_defaults { libs: ["fake_device_config"], } +// ART +java_aconfig_library { + name: "art_exported_aconfig_flags_lib", + aconfig_declarations: "art-aconfig-flags", + mode: "exported", + defaults: ["framework-minus-apex-aconfig-java-defaults"], +} + // Camera java_aconfig_library { name: "camera_platform_flags_core_java_lib", @@ -459,6 +470,13 @@ java_aconfig_library { defaults: ["framework-minus-apex-aconfig-java-defaults"], } +cc_aconfig_library { + name: "android.os.vibrator.flags-aconfig-cc", + aconfig_declarations: "android.os.vibrator.flags-aconfig", + host_supported: true, + vendor_available: true, +} + // View aconfig_declarations { name: "android.view.flags-aconfig", @@ -625,6 +643,11 @@ java_aconfig_library { defaults: ["framework-minus-apex-aconfig-java-defaults"], } +cc_aconfig_library { + name: "com.android.media.flags.editing-aconfig-cc", + aconfig_declarations: "com.android.media.flags.editing-aconfig", +} + // MediaProjection aconfig_declarations { name: "com.android.media.flags.projection-aconfig", @@ -1446,6 +1469,13 @@ java_aconfig_library { defaults: ["framework-minus-apex-aconfig-java-defaults"], } +// Ranging +java_aconfig_library { + name: "com.android.ranging.flags.ranging-aconfig-java", + aconfig_declarations: "ranging_aconfig_flags", + defaults: ["framework-minus-apex-aconfig-java-defaults"], +} + // System Server aconfig_declarations { name: "android.systemserver.flags-aconfig", @@ -1492,3 +1522,29 @@ java_aconfig_library { aconfig_declarations: "dropbox_flags", defaults: ["framework-minus-apex-aconfig-java-defaults"], } + +// Trade in mode +aconfig_declarations { + name: "aconfig_trade_in_mode_flags", + package: "com.android.tradeinmode.flags", + container: "system", + srcs: [ + "core/java/android/os/image/flags/trade_in_mode_flags.aconfig", + ], +} + +java_aconfig_library { + name: "aconfig_trade_in_mode_flags_java_lib", + aconfig_declarations: "aconfig_trade_in_mode_flags", + defaults: ["framework-minus-apex-aconfig-java-defaults"], +} + +cc_aconfig_library { + name: "android_trade_in_mode_flags_cc_lib", + aconfig_declarations: "aconfig_trade_in_mode_flags", + apex_available: [ + "//apex_available:platform", + "com.android.adbd", + ], + min_sdk_version: "apex_inherit", +} diff --git a/Android.bp b/Android.bp index f0aa62cc37ae..d2e80034423b 100644 --- a/Android.bp +++ b/Android.bp @@ -61,10 +61,9 @@ license { filegroup { name: "framework-non-updatable-sources", - srcs: [ + device_common_srcs: [ // Java/AIDL sources under frameworks/base ":framework-annotations", - ":ravenwood-annotations", ":framework-blobstore-sources", ":framework-core-sources", ":framework-drm-sources", @@ -169,12 +168,6 @@ java_library { //same purpose. "//external/robolectric:__subpackages__", "//frameworks/layoutlib:__subpackages__", - - // This is for the same purpose as robolectric -- to build "framework.jar" for host-side - // testing. - // TODO: Once Ravenwood is stable, move the host side jar targets to this directory, - // and remove this line. - "//frameworks/base/tools/hoststubgen:__subpackages__", ], } @@ -261,7 +254,6 @@ java_library { "devicepolicyprotosnano", "ImmutabilityAnnotation", - "com.android.sysprop.init", "com.android.sysprop.localization", "PlatformProperties", ], @@ -295,7 +287,6 @@ java_defaults { enforce_permissions_exceptions: [ // Do not add entries to this list. ":framework-annotations", - ":ravenwood-annotations", ":framework-blobstore-sources", ":framework-core-sources", ":framework-drm-sources", @@ -401,6 +392,7 @@ java_defaults { ], sdk_version: "core_platform", static_libs: [ + "aconfig_storage_reader_java", "android.hardware.common.fmq-V1-java", "bouncycastle-repackaged-unbundled", "com.android.sysprop.foldlockbehavior", @@ -417,7 +409,6 @@ java_defaults { "modules-utils-fastxmlserializer", "modules-utils-preconditions", "modules-utils-statemachine", - "modules-utils-synchronous-result-receiver", "modules-utils-os", "modules-utils-uieventlogger-interface", "framework-permission-aidl-java", @@ -598,8 +589,6 @@ filegroup { filegroup { name: "framework-networkstack-shared-srcs", srcs: [ - // TODO: remove these annotations as soon as we can use andoid.support.annotations.* - ":framework-annotations", ":modules-utils-preconditions-srcs", "core/java/android/util/IndentingPrintWriter.java", "core/java/android/util/LocalLog.java", @@ -637,7 +626,6 @@ java_library { "core/java/com/android/internal/util/AsyncService.java", "core/java/com/android/internal/util/Protocol.java", "telephony/java/android/telephony/Annotation.java", - ":net-utils-framework-wifi-common-srcs", ], libs: [ "framework-annotations-lib", diff --git a/BATTERY_STATS_OWNERS b/BATTERY_STATS_OWNERS index 7728975fcec1..575bded5ad64 100644 --- a/BATTERY_STATS_OWNERS +++ b/BATTERY_STATS_OWNERS @@ -1,4 +1,3 @@ # OWNERS of BatteryStats related files -bookatz@google.com dplotnikov@google.com mwachens@google.com diff --git a/BROADCASTS_OWNERS b/BROADCASTS_OWNERS index 01f1f8a6ba57..f0cbe46ea402 100644 --- a/BROADCASTS_OWNERS +++ b/BROADCASTS_OWNERS @@ -1,5 +1,5 @@ # Bug component: 316181 -ctate@android.com -jsharkey@google.com +set noparent + sudheersai@google.com yamasani@google.com #{LAST_RESORT_SUGGESTION} diff --git a/GAME_MANAGER_OWNERS b/GAME_MANAGER_OWNERS index b65c43a8d7f0..bcdc33825a13 100644 --- a/GAME_MANAGER_OWNERS +++ b/GAME_MANAGER_OWNERS @@ -1,3 +1,4 @@ -lpy@google.com +sumir@google.com chingtangyu@google.com xwxw@google.com +mattbuckley@google.com diff --git a/INPUT_OWNERS b/INPUT_OWNERS index 06ead06fc13a..9b1016e7b7e9 100644 --- a/INPUT_OWNERS +++ b/INPUT_OWNERS @@ -1,4 +1,5 @@ # Bug component: 136048 +# Please assign bugs to android-framework-input-triage@. arpitks@google.com asmitapoddar@google.com hcutts@google.com diff --git a/INTENT_OWNERS b/INTENT_OWNERS index 58b5f2a61be0..c828215ef225 100644 --- a/INTENT_OWNERS +++ b/INTENT_OWNERS @@ -1,3 +1,4 @@ include /PACKAGE_MANAGER_OWNERS include /services/core/java/com/android/server/wm/OWNERS include /services/core/java/com/android/server/am/OWNERS +include /ACTIVITY_SECURITY_OWNERS
\ No newline at end of file diff --git a/MULTIUSER_OWNERS b/MULTIUSER_OWNERS index b8857ecd0a93..1738a35c6925 100644 --- a/MULTIUSER_OWNERS +++ b/MULTIUSER_OWNERS @@ -3,7 +3,5 @@ annabauza@google.com bookatz@google.com nykkumar@google.com olilan@google.com -omakoto@google.com tetianameronyk@google.com tyk@google.com -yamasani@google.com diff --git a/OOM_ADJUSTER_OWNERS b/OOM_ADJUSTER_OWNERS new file mode 100644 index 000000000000..7727f9f014c0 --- /dev/null +++ b/OOM_ADJUSTER_OWNERS @@ -0,0 +1,3 @@ +mwachens@google.com +dplotnikov@google.com +tyk@google.com @@ -7,13 +7,12 @@ dsandler@google.com #{LAST_RESORT_SUGGESTION} hackbod@android.com #{LAST_RESORT_SUGGESTION} hackbod@google.com #{LAST_RESORT_SUGGESTION} jjaggi@google.com #{LAST_RESORT_SUGGESTION} -jsharkey@android.com #{LAST_RESORT_SUGGESTION} -jsharkey@google.com #{LAST_RESORT_SUGGESTION} lorenzo@google.com #{LAST_RESORT_SUGGESTION} michaelwr@google.com #{LAST_RESORT_SUGGESTION} nandana@google.com #{LAST_RESORT_SUGGESTION} narayan@google.com #{LAST_RESORT_SUGGESTION} ogunwale@google.com #{LAST_RESORT_SUGGESTION} +omakoto@google.com #{LAST_RESORT_SUGGESTION} roosa@google.com #{LAST_RESORT_SUGGESTION} smoreland@google.com #{LAST_RESORT_SUGGESTION} yamasani@google.com #{LAST_RESORT_SUGGESTION} @@ -28,19 +27,24 @@ per-file */TEST_MAPPING = * # Support bulk translation updates per-file */res*/values*/*.xml = byi@google.com, delphij@google.com -per-file **.bp,**.mk = hansson@google.com, joeo@google.com, lamontjones@google.com +per-file **.bp,**.mk =joeo@google.com, lamontjones@google.com per-file TestProtoLibraries.bp = file:platform/platform_testing:/libraries/health/OWNERS per-file TestProtoLibraries.bp = file:platform/tools/tradefederation:/OWNERS -per-file INPUT_OWNERS = file:/INPUT_OWNERS -per-file ZYGOTE_OWNERS = file:/ZYGOTE_OWNERS -per-file SQLITE_OWNERS = file:/SQLITE_OWNERS - per-file *ravenwood* = file:ravenwood/OWNERS per-file *Ravenwood* = file:ravenwood/OWNERS +per-file INPUT_OWNERS = file:/INPUT_OWNERS +per-file ZYGOTE_OWNERS = file:/ZYGOTE_OWNERS +per-file SQLITE_OWNERS = file:/SQLITE_OWNERS per-file PERFORMANCE_OWNERS = file:/PERFORMANCE_OWNERS - per-file PACKAGE_MANAGER_OWNERS = file:/PACKAGE_MANAGER_OWNERS - per-file WEAR_OWNERS = file:/WEAR_OWNERS +per-file ACTIVITY_MANAGER_OWNERS = file:/ACTIVITY_MANAGER_OWNERS +per-file BATTERY_STATS_OWNERS = file:/BATTERY_STATS_OWNERS +per-file OOM_ADJUSTER_OWNERS = file:/OOM_ADJUSTER_OWNERS +per-file MULTIUSER_OWNERS = file:/MULTIUSER_OWNERS +per-file BROADCASTS_OWNERS = file:/BROADCASTS_OWNERS +per-file ADPF_OWNERS = file:/ADPF_OWNERS +per-file GAME_MANAGER_OWNERS = file:/GAME_MANAGER_OWNERS +per-file SDK_OWNERS = file:/SDK_OWNERS diff --git a/PERFORMANCE_OWNERS b/PERFORMANCE_OWNERS index 48a020130445..d5d752f7ff23 100644 --- a/PERFORMANCE_OWNERS +++ b/PERFORMANCE_OWNERS @@ -6,3 +6,5 @@ philipcuadra@google.com shayba@google.com jdduke@google.com shombert@google.com +kevinjeon@google.com +yforta@google.com diff --git a/Ravenwood.bp b/Ravenwood.bp index 11da20aa6e02..2e038e00bb35 100644 --- a/Ravenwood.bp +++ b/Ravenwood.bp @@ -12,314 +12,19 @@ // See the License for the specific language governing permissions and // limitations under the License. -// We need this "trampoline" rule to force soong to give a host-side jar to -// framework-minus-apex.ravenwood-base. Otherwise, soong would mix up the arch (?) and we'd get -// a dex jar. -java_library { - name: "framework-minus-apex-for-hoststubgen", - installable: false, // host only jar. - static_libs: [ - "framework-minus-apex", - ], - sdk_version: "core_platform", - visibility: ["//visibility:private"], -} - -// Generate the stub/impl from framework-all, with hidden APIs. -java_genrule { - name: "framework-minus-apex.ravenwood-base", - tools: ["hoststubgen"], - cmd: "$(location hoststubgen) " + - "@$(location :ravenwood-standard-options) " + - - "--debug-log $(location hoststubgen_framework-minus-apex.log) " + - "--stats-file $(location hoststubgen_framework-minus-apex_stats.csv) " + - "--supported-api-list-file $(location hoststubgen_framework-minus-apex_apis.csv) " + - - "--out-impl-jar $(location ravenwood.jar) " + - - "--gen-keep-all-file $(location hoststubgen_keep_all.txt) " + - "--gen-input-dump-file $(location hoststubgen_dump.txt) " + - - "--in-jar $(location :framework-minus-apex-for-hoststubgen) " + - "--policy-override-file $(location :ravenwood-framework-policies) " + - "--annotation-allowed-classes-file $(location :ravenwood-annotation-allowed-classes) ", - srcs: [ - ":framework-minus-apex-for-hoststubgen", - ":ravenwood-framework-policies", - ":ravenwood-standard-options", - ":ravenwood-annotation-allowed-classes", - ], - out: [ - "ravenwood.jar", - - // Following files are created just as FYI. - "hoststubgen_keep_all.txt", - "hoststubgen_dump.txt", - - "hoststubgen_framework-minus-apex.log", - "hoststubgen_framework-minus-apex_stats.csv", - "hoststubgen_framework-minus-apex_apis.csv", - ], - visibility: ["//visibility:private"], -} - -// Extract the impl jar from "framework-minus-apex.ravenwood-base" for subsequent build rules. -// Note this emits a "device side" output, so that ravenwood tests can (implicitly) -// depend on it. -java_genrule { - name: "framework-minus-apex.ravenwood", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":framework-minus-apex.ravenwood-base{ravenwood.jar}", - ], - out: [ - "framework-minus-apex.ravenwood.jar", - ], -} - -// Extract the stats file. -genrule { - name: "framework-minus-apex.ravenwood.stats", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":framework-minus-apex.ravenwood-base{hoststubgen_framework-minus-apex_stats.csv}", - ], - out: [ - "hoststubgen_framework-minus-apex_stats.csv", - ], -} - -genrule { - name: "framework-minus-apex.ravenwood.apis", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":framework-minus-apex.ravenwood-base{hoststubgen_framework-minus-apex_apis.csv}", - ], - out: [ - "hoststubgen_framework-minus-apex_apis.csv", - ], -} - -genrule { - name: "framework-minus-apex.ravenwood.keep_all", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":framework-minus-apex.ravenwood-base{hoststubgen_keep_all.txt}", - ], - out: [ - "hoststubgen_framework-minus-apex_keep_all.txt", - ], -} +// "framework-minus-apex" and "all-updatable-modules-system-stubs" are not +// visible publicly. We re-export them to Ravenwood in this file. java_library { - name: "services.core-for-hoststubgen", - installable: false, // host only jar. - static_libs: [ - "services.core", - ], - sdk_version: "core_platform", - visibility: ["//visibility:private"], -} - -java_genrule { - name: "services.core.ravenwood-base", - tools: ["hoststubgen"], - cmd: "$(location hoststubgen) " + - "@$(location :ravenwood-standard-options) " + - - "--debug-log $(location hoststubgen_services.core.log) " + - "--stats-file $(location hoststubgen_services.core_stats.csv) " + - "--supported-api-list-file $(location hoststubgen_services.core_apis.csv) " + - - "--out-impl-jar $(location ravenwood.jar) " + - - "--gen-keep-all-file $(location hoststubgen_keep_all.txt) " + - "--gen-input-dump-file $(location hoststubgen_dump.txt) " + - - "--in-jar $(location :services.core-for-hoststubgen) " + - "--policy-override-file $(location :ravenwood-services-policies) " + - "--annotation-allowed-classes-file $(location :ravenwood-annotation-allowed-classes) ", - srcs: [ - ":services.core-for-hoststubgen", - ":ravenwood-services-policies", - ":ravenwood-standard-options", - ":ravenwood-annotation-allowed-classes", - ], - out: [ - "ravenwood.jar", - - // Following files are created just as FYI. - "hoststubgen_keep_all.txt", - "hoststubgen_dump.txt", - - "hoststubgen_services.core.log", - "hoststubgen_services.core_stats.csv", - "hoststubgen_services.core_apis.csv", - ], - visibility: ["//visibility:private"], -} - -java_genrule { - name: "services.core.ravenwood", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":services.core.ravenwood-base{ravenwood.jar}", - ], - out: [ - "services.core.ravenwood.jar", - ], -} - -// Extract the stats file. -genrule { - name: "services.core.ravenwood.stats", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":services.core.ravenwood-base{hoststubgen_services.core_stats.csv}", - ], - out: [ - "hoststubgen_services.core_stats.csv", - ], -} - -genrule { - name: "services.core.ravenwood.apis", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":services.core.ravenwood-base{hoststubgen_services.core_apis.csv}", - ], - out: [ - "hoststubgen_services.core_apis.csv", - ], -} - -genrule { - name: "services.core.ravenwood.keep_all", - defaults: ["ravenwood-internal-only-visibility-genrule"], - cmd: "cp $(in) $(out)", - srcs: [ - ":services.core.ravenwood-base{hoststubgen_keep_all.txt}", - ], - out: [ - "hoststubgen_services.core_keep_all.txt", - ], -} - -java_library { - name: "services.core.ravenwood-jarjar", - installable: false, - static_libs: [ - "services.core.ravenwood", - ], - jarjar_rules: ":ravenwood-services-jarjar-rules", - visibility: ["//visibility:private"], -} - -java_library { - name: "services.fakes.ravenwood-jarjar", - installable: false, - srcs: [":services.fakes-sources"], - libs: [ - "ravenwood-framework", - "services.core.ravenwood", - ], - jarjar_rules: ":ravenwood-services-jarjar-rules", - visibility: ["//visibility:private"], -} - -java_library { - name: "mockito-ravenwood-prebuilt", + name: "framework-minus-apex-for-host", installable: false, - static_libs: [ - "mockito-robolectric-prebuilt", - ], + static_libs: ["framework-minus-apex"], + visibility: ["//frameworks/base/ravenwood"], } java_library { - name: "inline-mockito-ravenwood-prebuilt", + name: "all-updatable-modules-system-stubs-for-host", installable: false, - static_libs: [ - "inline-mockito-robolectric-prebuilt", - ], -} - -// Jars in "ravenwood-runtime" are set to the classpath, sorted alphabetically. -// Rename some of the dependencies to make sure they're included in the intended order. -java_genrule { - name: "100-framework-minus-apex.ravenwood", - cmd: "cp $(in) $(out)", - srcs: [":framework-minus-apex.ravenwood"], - out: ["100-framework-minus-apex.ravenwood.jar"], - visibility: ["//visibility:private"], -} - -java_genrule { - // Use 200 to make sure it comes before the mainline stub ("all-updatable..."). - name: "200-kxml2-android", - cmd: "cp $(in) $(out)", - srcs: [":kxml2-android"], - out: ["200-kxml2-android.jar"], - visibility: ["//visibility:private"], -} - -java_genrule { - name: "z00-all-updatable-modules-system-stubs", - cmd: "cp $(in) $(out)", - srcs: [":all-updatable-modules-system-stubs"], - out: ["z00-all-updatable-modules-system-stubs.jar"], - visibility: ["//visibility:private"], -} - -android_ravenwood_libgroup { - name: "ravenwood-runtime", - libs: [ - "100-framework-minus-apex.ravenwood", - "200-kxml2-android", - - "ravenwood-runtime-common-ravenwood", - - "android.test.mock.ravenwood", - "ravenwood-helper-runtime", - "hoststubgen-helper-runtime.ravenwood", - "services.core.ravenwood-jarjar", - "services.fakes.ravenwood-jarjar", - - // Provide runtime versions of utils linked in below - "junit", - "truth", - "flag-junit", - "ravenwood-framework", - "ravenwood-junit-impl", - "ravenwood-junit-impl-flag", - "mockito-ravenwood-prebuilt", - "inline-mockito-ravenwood-prebuilt", - - // It's a stub, so it should be towards the end. - "z00-all-updatable-modules-system-stubs", - ], - jni_libs: [ - "libandroid_runtime", - "libravenwood_runtime", - ], -} - -android_ravenwood_libgroup { - name: "ravenwood-utils", - libs: [ - "junit", - "truth", - "flag-junit", - "ravenwood-framework", - "ravenwood-junit", - "mockito-ravenwood-prebuilt", - "inline-mockito-ravenwood-prebuilt", - ], + static_libs: ["all-updatable-modules-system-stubs"], + visibility: ["//frameworks/base/ravenwood"], } diff --git a/SDK_OWNERS b/SDK_OWNERS new file mode 100644 index 000000000000..c9ca47aa4703 --- /dev/null +++ b/SDK_OWNERS @@ -0,0 +1,6 @@ +amhk@google.com +kimalexander@google.com +lus@google.com +michaelwr@google.com +nanaasiedu@google.com +paulduffin@google.com diff --git a/TEST_MAPPING b/TEST_MAPPING index 49384cde5803..bdae506115e8 100644 --- a/TEST_MAPPING +++ b/TEST_MAPPING @@ -1,44 +1,17 @@ { "presubmit-large": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_Presubmit" } ], "presubmit-pm": [ { - "name": "PackageManagerServiceServerTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "PackageManagerServiceServerTests_Presubmit" } ], "presubmit": [ { - "name": "ManagedProvisioningTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ManagedProvisioningTests" }, { "file_patterns": [ @@ -46,86 +19,28 @@ "SystemServer\\.java", "services/tests/apexsystemservices/.*" ], - "name": "ApexSystemServicesTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "ApexSystemServicesTestCases" }, { - "name": "FrameworksUiServicesTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksUiServicesTests" }, { - "name": "FrameworksInputMethodSystemServerTests", - "options": [ - {"include-filter": "com.android.server.inputmethod"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksInputMethodSystemServerTests_server_inputmethod" }, { - "name": "ExtServicesUnitTests-tplus", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ExtServicesUnitTests-tplus" }, { - "name": "ExtServicesUnitTests-sminus", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ExtServicesUnitTests-sminus" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_Presubmit" }, { - "name": "FrameworkPermissionTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworkPermissionTests_Presubmit" }, { - "name": "FrameworksInProcessTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksInProcessTests" }, { "name": "vts_treble_vintf_framework_test" @@ -159,78 +74,25 @@ // infra during the hardening phase. // TODO: this tag to be removed once the above is no longer an issue. { - "name": "FrameworksUiServicesTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksUiServicesTests" }, { - "name": "ExtServicesUnitTests-tplus", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ExtServicesUnitTests-tplus" }, { - "name": "ExtServicesUnitTests-sminus", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ExtServicesUnitTests-sminus" }, { - "name": "TestablesTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TestablesTests" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_Presubmit" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_presubmit" }, { - "name": "PackageManagerServiceServerTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "PackageManagerServiceServerTests_Presubmit" } ] } diff --git a/ZYGOTE_OWNERS b/ZYGOTE_OWNERS index f6d15e03a892..6918c16840dd 100644 --- a/ZYGOTE_OWNERS +++ b/ZYGOTE_OWNERS @@ -1,4 +1,4 @@ chriswailes@google.com +hboehm@google.com maco@google.com -narayan@google.com ngeoffray@google.com diff --git a/apct-tests/perftests/core/Android.bp b/apct-tests/perftests/core/Android.bp index 65bc8ccd12f8..1e299cdf8002 100644 --- a/apct-tests/perftests/core/Android.bp +++ b/apct-tests/perftests/core/Android.bp @@ -52,7 +52,7 @@ android_test { "guava", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], java_resources: [":GoogleFontDancingScript"], diff --git a/apct-tests/perftests/core/apps/reources_manager/Android.bp b/apct-tests/perftests/core/apps/reources_manager/Android.bp index 96b9d6af5f31..a95e1175fb0c 100644 --- a/apct-tests/perftests/core/apps/reources_manager/Android.bp +++ b/apct-tests/perftests/core/apps/reources_manager/Android.bp @@ -27,7 +27,7 @@ android_test_helper_app { static_libs: ["androidx.appcompat_appcompat"], } -genrule { +java_genrule { name: "LargeResourcesUncompressed", srcs: [":LargeResourcesCompressed"], out: ["LargeResourcesUncompressed.apk"], diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/CipherEncryptPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/CipherEncryptPerfTest.java index c69ae39846bd..36266de04d23 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/CipherEncryptPerfTest.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/CipherEncryptPerfTest.java @@ -23,6 +23,9 @@ import androidx.test.filters.LargeTest; import org.conscrypt.TestUtils; import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; import java.security.Key; import java.security.NoSuchAlgorithmException; import javax.crypto.Cipher; @@ -91,21 +94,17 @@ public final class CipherEncryptPerfTest { } } - private Object[] getParams() { - return new Object[][] { - new Object[] {new Config(BufferType.ARRAY, - MyCipherFactory.CONSCRYPT, - Transformation.AES_CBC_PKCS5)}, - new Object[] {new Config(BufferType.ARRAY, - MyCipherFactory.CONSCRYPT, - Transformation.AES_ECB_PKCS5)}, - new Object[] {new Config(BufferType.ARRAY, - MyCipherFactory.CONSCRYPT, - Transformation.AES_GCM_NO)}, - new Object[] {new Config(BufferType.ARRAY, - MyCipherFactory.CONSCRYPT, - Transformation.AES_GCM_SIV)}, - }; + public Collection <Object[]> getParams() { + final List<Object[]> params = new ArrayList<>(); + for (BufferType bufferType : BufferType.values()) { + for (CipherFactory cipherFactory : MyCipherFactory.values()) { + for (Transformation transformation : Transformation.values()) { + params.add(new Object[] {new Config( + bufferType, cipherFactory, transformation)}); + } + } + } + return params; } private EncryptStrategy encryptStrategy; diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java index dd9f4eb7e8d3..f20b1706129b 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java @@ -30,6 +30,9 @@ import java.io.IOException; import java.io.OutputStream; import java.net.SocketException; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -104,19 +107,26 @@ public final class ClientSocketPerfTest { } } - private Object[] getParams() { - return new Object[][] { - new Object[] {new Config( - EndpointFactory.CONSCRYPT, - EndpointFactory.CONSCRYPT, - 64, - "AES128-GCM", - ChannelType.CHANNEL, - PerfTestProtocol.TLSv13)}, - }; + public Collection getParams() { + final List<Object[]> params = new ArrayList<>(); + for (EndpointFactory endpointFactory : EndpointFactory.values()) { + for (ChannelType channelType : ChannelType.values()) { + for (PerfTestProtocol protocol : PerfTestProtocol.values()) { + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 64, "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + channelType, protocol)}); + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 512, "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + channelType, protocol)}); + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 4096, "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + channelType, protocol)}); + } + } + } + return params; } - private ClientEndpoint client; private ServerEndpoint server; private byte[] message; @@ -132,7 +142,7 @@ public final class ClientSocketPerfTest { // Always use the same server for consistency across the benchmarks. server = config.serverFactory().newServer( - ChannelType.CHANNEL, config.messageSize(), config.protocol().getProtocols(), + config.messageSize(), config.protocol().getProtocols(), ciphers(config)); server.setMessageProcessor(new ServerEndpoint.MessageProcessor() { diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EndpointFactory.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EndpointFactory.java index 0655f45726ba..ba2acb8a5205 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EndpointFactory.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EndpointFactory.java @@ -43,10 +43,10 @@ public enum EndpointFactory { factories.clientFactory, channelType, port, protocols, ciphers); } - public ServerEndpoint newServer(ChannelType channelType, int messageSize, + public ServerEndpoint newServer(int messageSize, String[] protocols, String[] ciphers) throws IOException { return new ServerEndpoint(factories.serverFactory, factories.serverSocketFactory, - channelType, messageSize, protocols, ciphers); + messageSize, protocols, ciphers); } private static final class Factories { diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineFactory.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineFactory.java new file mode 100644 index 000000000000..8a0d52dff3b1 --- /dev/null +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineFactory.java @@ -0,0 +1,68 @@ +/* + * Copyright 2017 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.conscrypt; + +import org.conscrypt.TestUtils; +import java.security.Security; +import javax.net.ssl.SSLContext; +import javax.net.ssl.SSLEngine; + + +/** + * Factory for {@link SSLEngine} instances. + */ +public class EngineFactory { + public EngineFactory() { + this(newConscryptClientContext(), newConscryptServerContext()); + } + + private EngineFactory(SSLContext clientContext, SSLContext serverContext) { + this.clientContext = clientContext; + this.serverContext = serverContext; + } + + private final SSLContext clientContext; + private final SSLContext serverContext; + + public SSLEngine newClientEngine(String cipher) { + SSLEngine engine = initEngine(clientContext.createSSLEngine(), cipher, true); + return engine; + } + + public SSLEngine newServerEngine(String cipher) { + SSLEngine engine = initEngine(serverContext.createSSLEngine(), cipher, false); + return engine; + } + + public void dispose(SSLEngine engine) { + engine.closeOutbound(); + } + + private static SSLContext newConscryptClientContext() { + return TestUtils.newClientSslContext(TestUtils.getConscryptProvider()); + } + + private static SSLContext newConscryptServerContext() { + return TestUtils.newServerSslContext(TestUtils.getConscryptProvider()); + } + + static SSLEngine initEngine(SSLEngine engine, String cipher, boolean client) { + engine.setEnabledProtocols(new String[]{"TLSv1.2", "TLSv1.3"}); + engine.setEnabledCipherSuites(new String[] {cipher}); + engine.setUseClientMode(client); + return engine; + } +}
\ No newline at end of file diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java new file mode 100644 index 000000000000..cd0ac96b41de --- /dev/null +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java @@ -0,0 +1,207 @@ +/* + * Copyright 2017 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. + */ + +/* + * Copyright 2017 The Netty Project + * + * The Netty Project licenses this file to you 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.conscrypt; + +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import javax.net.ssl.SSLEngine; +import javax.net.ssl.SSLEngineResult; +import javax.net.ssl.SSLEngineResult.HandshakeStatus; +import javax.net.ssl.SSLException; + +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; + +import android.perftests.utils.BenchmarkState; +import android.perftests.utils.PerfStatusReporter; +import androidx.test.filters.LargeTest; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Benchmark comparing handshake performance of various engine implementations to conscrypt. + */ +@RunWith(JUnitParamsRunner.class) +@LargeTest +public final class EngineHandshakePerfTest { + @Rule public PerfStatusReporter mPerfStatusReporter = new PerfStatusReporter(); + + /** + * Provider for the test configuration + */ + private class Config { + BufferType a_bufferType; + String c_cipher; + int d_rttMillis; + Config(BufferType bufferType, + String cipher, + int rttMillis) { + a_bufferType = bufferType; + c_cipher = cipher; + d_rttMillis = rttMillis; + } + public BufferType bufferType() { + return a_bufferType; + } + + public String cipher() { + return c_cipher; + } + + public int rttMillis() { + return d_rttMillis; + } + } + + public Collection getParams() { + final List<Object[]> params = new ArrayList<>(); + for (BufferType bufferType : BufferType.values()) { + params.add(new Object[] {new Config(bufferType, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", 100)}); + } + return params; + } + + private static final ByteBuffer EMPTY_BUFFER = ByteBuffer.allocateDirect(0); + + private EngineFactory engineFactory = new EngineFactory(); + private String cipher; + private int rttMillis; + + private ByteBuffer clientApplicationBuffer; + private ByteBuffer clientPacketBuffer; + private ByteBuffer serverApplicationBuffer; + private ByteBuffer serverPacketBuffer; + + private void setup(Config config) throws Exception { + cipher = config.cipher(); + rttMillis = config.rttMillis(); + BufferType bufferType = config.bufferType(); + + SSLEngine clientEngine = engineFactory.newClientEngine(cipher); + SSLEngine serverEngine = engineFactory.newServerEngine(cipher); + + // Create the application and packet buffers for both endpoints. + clientApplicationBuffer = bufferType.newApplicationBuffer(clientEngine); + serverApplicationBuffer = bufferType.newApplicationBuffer(serverEngine); + clientPacketBuffer = bufferType.newPacketBuffer(clientEngine); + serverPacketBuffer = bufferType.newPacketBuffer(serverEngine); + + engineFactory.dispose(clientEngine); + engineFactory.dispose(serverEngine); + } + + @Test + @Parameters(method = "getParams") + public void handshake(Config config) throws Exception { + setup(config); + SSLEngine client = engineFactory.newClientEngine(cipher); + SSLEngine server = engineFactory.newServerEngine(cipher); + clientApplicationBuffer.clear(); + clientPacketBuffer.clear(); + serverApplicationBuffer.clear(); + serverPacketBuffer.clear(); + + BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + while (state.keepRunning()) { + client.beginHandshake(); + server.beginHandshake(); + doHandshake(client, server); + } + + engineFactory.dispose(client); + engineFactory.dispose(server); + } + + private void doHandshake(SSLEngine client, SSLEngine server) throws SSLException { + + BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + while (state.keepRunning()) { + // Send as many client-to-server messages as possible + doHalfHandshake(client, server, clientPacketBuffer, serverApplicationBuffer); + + if (client.getHandshakeStatus() == HandshakeStatus.NOT_HANDSHAKING + && server.getHandshakeStatus() == HandshakeStatus.NOT_HANDSHAKING) { + return; + } + + // Do the same with server-to-client messages + doHalfHandshake(server, client, serverPacketBuffer, clientApplicationBuffer); + + if (client.getHandshakeStatus() == HandshakeStatus.NOT_HANDSHAKING + && server.getHandshakeStatus() == HandshakeStatus.NOT_HANDSHAKING) { + return; + } + } + } + + private void doHalfHandshake(SSLEngine sender, SSLEngine receiver, + ByteBuffer senderPacketBuffer, ByteBuffer receiverApplicationBuffer) + throws SSLException { + SSLEngineResult senderResult; + SSLEngineResult receiverResult; + + do { + senderResult = sender.wrap(EMPTY_BUFFER, senderPacketBuffer); + runDelegatedTasks(senderResult, sender); + senderPacketBuffer.flip(); + receiverResult = receiver.unwrap(senderPacketBuffer, receiverApplicationBuffer); + runDelegatedTasks(receiverResult, receiver); + senderPacketBuffer.compact(); + } while (senderResult.getHandshakeStatus() == HandshakeStatus.NEED_WRAP); + + if (rttMillis > 0) { + try { + Thread.sleep(rttMillis / 2); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } + } + + private static void runDelegatedTasks(SSLEngineResult result, SSLEngine engine) { + if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.NEED_TASK) { + for (;;) { + Runnable task = engine.getDelegatedTask(); + if (task == null) { + break; + } + task.run(); + } + } + } +}
\ No newline at end of file diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java new file mode 100644 index 000000000000..1fee2183b11e --- /dev/null +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java @@ -0,0 +1,221 @@ +/* + * Copyright 2017 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. + */ + +/* + * Copyright 2017 The Netty Project + * + * The Netty Project licenses this file to you 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.conscrypt; + +import static org.conscrypt.TestUtils.doEngineHandshake; +import static org.conscrypt.TestUtils.newTextMessage; +import static org.junit.Assert.assertEquals; + +import java.nio.ByteBuffer; +import java.util.Locale; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import javax.net.ssl.SSLEngine; +import javax.net.ssl.SSLEngineResult; +import javax.net.ssl.SSLException; + +import android.perftests.utils.BenchmarkState; +import android.perftests.utils.PerfStatusReporter; +import androidx.test.filters.LargeTest; + +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Benchmark comparing performance of various engine implementations to conscrypt. + */ +@RunWith(JUnitParamsRunner.class) +@LargeTest +public final class EngineWrapPerfTest { + @Rule public PerfStatusReporter mPerfStatusReporter = new PerfStatusReporter(); + + /** + * Provider for the benchmark configuration + */ + private class Config { + BufferType a_bufferType; + int c_messageSize; + String d_cipher; + Config(BufferType bufferType, + int messageSize, + String cipher) { + a_bufferType = bufferType; + c_messageSize = messageSize; + d_cipher = cipher; + } + public BufferType bufferType() { + return a_bufferType; + } + + public int messageSize() { + return c_messageSize; + } + + public String cipher() { + return d_cipher; + } + } + + public Collection getParams() { + final List<Object[]> params = new ArrayList<>(); + for (BufferType bufferType : BufferType.values()) { + params.add(new Object[] {new Config(bufferType, 64, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")}); + params.add(new Object[] {new Config(bufferType, 512, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")}); + params.add(new Object[] {new Config(bufferType, 4096, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")}); + } + return params; + } + + + private EngineFactory engineFactory = new EngineFactory(); + private String cipher; + private SSLEngine clientEngine; + private SSLEngine serverEngine; + + private ByteBuffer messageBuffer; + private ByteBuffer clientApplicationBuffer; + private ByteBuffer clientPacketBuffer; + private ByteBuffer serverApplicationBuffer; + private ByteBuffer serverPacketBuffer; + private ByteBuffer preEncryptedBuffer; + + private void setup(Config config) throws Exception { + cipher = config.cipher(); + BufferType bufferType = config.bufferType(); + + clientEngine = engineFactory.newClientEngine(cipher); + serverEngine = engineFactory.newServerEngine(cipher); + + // Create the application and packet buffers for both endpoints. + clientApplicationBuffer = bufferType.newApplicationBuffer(clientEngine); + serverApplicationBuffer = bufferType.newApplicationBuffer(serverEngine); + clientPacketBuffer = bufferType.newPacketBuffer(clientEngine); + serverPacketBuffer = bufferType.newPacketBuffer(serverEngine); + + // Generate the message to be sent from the client. + int messageSize = config.messageSize(); + messageBuffer = bufferType.newBuffer(messageSize); + messageBuffer.put(newTextMessage(messageSize)); + messageBuffer.flip(); + + // Complete the initial TLS handshake. + doEngineHandshake(clientEngine, serverEngine, clientApplicationBuffer, clientPacketBuffer, + serverApplicationBuffer, serverPacketBuffer, true); + + // Populate the pre-encrypted buffer for use with the unwrap benchmark. + preEncryptedBuffer = bufferType.newBuffer(clientEngine.getSession().getPacketBufferSize()); + doWrap(messageBuffer, preEncryptedBuffer); + doUnwrap(preEncryptedBuffer, serverApplicationBuffer); + } + + void teardown() { + engineFactory.dispose(clientEngine); + engineFactory.dispose(serverEngine); + } + + @Test + @Parameters(method = "getParams") + public void wrap(Config config) throws Exception { + setup(config); + + BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + while (state.keepRunning()) { + // Reset the buffers. + messageBuffer.position(0); + clientPacketBuffer.clear(); + // Wrap the original message and create the encrypted data. + doWrap(messageBuffer, clientPacketBuffer); + + // Lightweight comparison - just make sure the data length is correct. + assertEquals(preEncryptedBuffer.limit(), clientPacketBuffer.limit()); + } + teardown(); + } + + /** + * Simple benchmark that sends a single message from client to server. + */ + @Test + @Parameters(method = "getParams") + public void wrapAndUnwrap(Config config) throws Exception { + setup(config); + + BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + while (state.keepRunning()) { + // Reset the buffers. + messageBuffer.position(0); + clientPacketBuffer.clear(); + serverApplicationBuffer.clear(); + // Wrap the original message and create the encrypted data. + doWrap(messageBuffer, clientPacketBuffer); + + // Unwrap the encrypted data and get back the original result. + doUnwrap(clientPacketBuffer, serverApplicationBuffer); + + // Lightweight comparison - just make sure the unencrypted data length is correct. + assertEquals(messageBuffer.limit(), serverApplicationBuffer.limit()); + } + teardown(); + } + + private void doWrap(ByteBuffer src, ByteBuffer dst) throws SSLException { + // Wrap the original message and create the encrypted data. + verifyResult(src, clientEngine.wrap(src, dst)); + dst.flip(); + } + + private void doUnwrap(ByteBuffer src, ByteBuffer dst) throws SSLException { + verifyResult(src, serverEngine.unwrap(src, dst)); + dst.flip(); + } + + private void verifyResult(ByteBuffer src, SSLEngineResult result) { + if (result.getStatus() != SSLEngineResult.Status.OK) { + throw new RuntimeException("Operation returned unexpected result " + result); + } + if (result.bytesConsumed() != src.limit()) { + throw new RuntimeException( + String.format(Locale.US, + "Operation didn't consume all bytes. Expected %d, consumed %d.", + src.limit(), result.bytesConsumed())); + } + } +}
\ No newline at end of file diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerEndpoint.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerEndpoint.java index 3631c3f29287..1e4f12460936 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerEndpoint.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerEndpoint.java @@ -34,8 +34,6 @@ import javax.net.ssl.SSLServerSocketFactory; import javax.net.ssl.SSLSocket; import javax.net.ssl.SSLSocketFactory; -import org.conscrypt.ChannelType; - /** * A simple socket-based test server. */ @@ -63,7 +61,6 @@ final class ServerEndpoint { } private final ServerSocket serverSocket; - private final ChannelType channelType; private final SSLSocketFactory socketFactory; private final int messageSize; private final String[] protocols; @@ -78,11 +75,10 @@ final class ServerEndpoint { private volatile Future<?> processFuture; ServerEndpoint(SSLSocketFactory socketFactory, SSLServerSocketFactory serverSocketFactory, - ChannelType channelType, int messageSize, String[] protocols, + int messageSize, String[] protocols, String[] cipherSuites) throws IOException { - this.serverSocket = channelType.newServerSocket(serverSocketFactory); + this.serverSocket = serverSocketFactory.createServerSocket(); this.socketFactory = socketFactory; - this.channelType = channelType; this.messageSize = messageSize; this.protocols = protocols; this.cipherSuites = cipherSuites; @@ -134,7 +130,7 @@ final class ServerEndpoint { if (stopping) { return; } - socket = channelType.accept(serverSocket, socketFactory); + socket = (SSLSocket) serverSocket.accept(); socket.setEnabledProtocols(protocols); socket.setEnabledCipherSuites(cipherSuites); diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java index ba2a65a17e84..af3c405eab82 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java @@ -24,6 +24,9 @@ import static org.junit.Assert.assertEquals; import java.io.IOException; import java.io.OutputStream; import java.net.SocketException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -94,15 +97,22 @@ public final class ServerSocketPerfTest { } } - private Object[] getParams() { - return new Object[][] { - new Object[] {new Config( - EndpointFactory.CONSCRYPT, - EndpointFactory.CONSCRYPT, - 64, - "AES128-GCM", - ChannelType.CHANNEL)}, - }; + public Collection getParams() { + final List<Object[]> params = new ArrayList<>(); + for (EndpointFactory endpointFactory : EndpointFactory.values()) { + for (ChannelType channelType : ChannelType.values()) { + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 64, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)}); + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 512, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)}); + params.add(new Object[] {new Config(endpointFactory, + endpointFactory, 4096, + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)}); + } + } + return params; } private ClientEndpoint client; @@ -120,8 +130,8 @@ public final class ServerSocketPerfTest { final ChannelType channelType = config.channelType(); - server = config.serverFactory().newServer( - channelType, config.messageSize(), getCommonProtocolSuites(), ciphers(config)); + server = config.serverFactory().newServer(config.messageSize(), + new String[] {"TLSv1.3", "TLSv1.2"}, ciphers(config)); server.setMessageProcessor(new MessageProcessor() { @Override public void processMessage(byte[] inMessage, int numBytes, OutputStream os) { @@ -145,7 +155,8 @@ public final class ServerSocketPerfTest { // Always use the same client for consistency across the benchmarks. client = config.clientFactory().newClient( - ChannelType.CHANNEL, server.port(), getCommonProtocolSuites(), ciphers(config)); + ChannelType.CHANNEL, server.port(), + new String[] {"TLSv1.3", "TLSv1.2"}, ciphers(config)); client.start(); // Wait for the initial connection to complete. diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/Transformation.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/Transformation.java index 78fe73262e4c..3542b0a76803 100644 --- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/Transformation.java +++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/Transformation.java @@ -31,7 +31,6 @@ public enum Transformation { AES_CBC_PKCS5("AES", "CBC", "PKCS5Padding", new AesKeyGen()), AES_ECB_PKCS5("AES", "ECB", "PKCS5Padding", new AesKeyGen()), AES_GCM_NO("AES", "GCM", "NoPadding", new AesKeyGen()), - AES_GCM_SIV("AES", "GCM_SIV", "NoPadding", new AesKeyGen()), RSA_ECB_PKCS1("RSA", "ECB", "PKCS1Padding", new RsaKeyGen()); Transformation(String algorithm, String mode, String padding, KeyGen keyGen) { diff --git a/apct-tests/perftests/core/src/android/libcore/SystemArrayCopyPerfTest.java b/apct-tests/perftests/core/src/android/libcore/SystemArrayCopyPerfTest.java index 6363e9c3ef21..25e4c4341b43 100644 --- a/apct-tests/perftests/core/src/android/libcore/SystemArrayCopyPerfTest.java +++ b/apct-tests/perftests/core/src/android/libcore/SystemArrayCopyPerfTest.java @@ -16,7 +16,8 @@ package android.libcore; -import android.perftests.utils.BenchmarkState; +import androidx.benchmark.BenchmarkState; +import androidx.benchmark.junit4.BenchmarkRule; import android.perftests.utils.PerfStatusReporter; import androidx.test.filters.LargeTest; @@ -34,7 +35,8 @@ import java.util.Collection; @RunWith(JUnitParamsRunner.class) @LargeTest public class SystemArrayCopyPerfTest { - @Rule public PerfStatusReporter mPerfStatusReporter = new PerfStatusReporter(); + @Rule + public BenchmarkRule mBenchmarkRule = new BenchmarkRule(); public static Collection<Object[]> getData() { return Arrays.asList( @@ -51,7 +53,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; char[] src = new char[len]; char[] dst = new char[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -63,7 +65,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; byte[] src = new byte[len]; byte[] dst = new byte[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -75,7 +77,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; short[] src = new short[len]; short[] dst = new short[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -87,7 +89,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; int[] src = new int[len]; int[] dst = new int[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -99,7 +101,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; long[] src = new long[len]; long[] dst = new long[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -111,7 +113,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; float[] src = new float[len]; float[] dst = new float[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -123,7 +125,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; double[] src = new double[len]; double[] dst = new double[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } @@ -135,7 +137,7 @@ public class SystemArrayCopyPerfTest { final int len = arrayLength; boolean[] src = new boolean[len]; boolean[] dst = new boolean[len]; - BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); + final BenchmarkState state = mBenchmarkRule.getState(); while (state.keepRunning()) { System.arraycopy(src, 0, dst, 0, len); } diff --git a/apct-tests/perftests/core/src/android/libcore/regression/ByteBufferPerfTest.java b/apct-tests/perftests/core/src/android/libcore/regression/ByteBufferPerfTest.java index cb2438e519da..42e3910aab4b 100644 --- a/apct-tests/perftests/core/src/android/libcore/regression/ByteBufferPerfTest.java +++ b/apct-tests/perftests/core/src/android/libcore/regression/ByteBufferPerfTest.java @@ -565,7 +565,6 @@ public class ByteBufferPerfTest { } @Test - @Parameters(method = "getData") public void time_new_byteArray() throws Exception { BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); while (state.keepRunning()) { @@ -574,7 +573,6 @@ public class ByteBufferPerfTest { } @Test - @Parameters(method = "getData") public void time_ByteBuffer_allocate() throws Exception { BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); while (state.keepRunning()) { diff --git a/apct-tests/perftests/core/src/android/libcore/varhandles/generate_java.py b/apct-tests/perftests/core/src/android/libcore/varhandles/generate_java.py index cfcb1d2a02d4..4b4bc605a6c3 100755 --- a/apct-tests/perftests/core/src/android/libcore/varhandles/generate_java.py +++ b/apct-tests/perftests/core/src/android/libcore/varhandles/generate_java.py @@ -160,8 +160,8 @@ package android.libcore.varhandles; import android.perftests.utils.BenchmarkState; import android.perftests.utils.PerfStatusReporter; +import android.test.suitebuilder.annotation.LargeTest; -import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; import org.junit.After; diff --git a/apct-tests/perftests/healthconnect/Android.bp b/apct-tests/perftests/healthconnect/Android.bp index c38a24ee05d2..072010e90fae 100644 --- a/apct-tests/perftests/healthconnect/Android.bp +++ b/apct-tests/perftests/healthconnect/Android.bp @@ -37,7 +37,7 @@ android_test { "collector-device-lib-platform", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], platform_apis: true, test_suites: ["device-tests"], data: [":perfetto_artifacts"], diff --git a/apct-tests/perftests/multiuser/Android.bp b/apct-tests/perftests/multiuser/Android.bp index 1653edc77de9..9eea712b33dd 100644 --- a/apct-tests/perftests/multiuser/Android.bp +++ b/apct-tests/perftests/multiuser/Android.bp @@ -38,3 +38,15 @@ android_test { ], certificate: "platform", } + +filegroup { + name: "multi_user_trace_config", + srcs: [ + "trace_configs/trace_config_multi_user.textproto", + ], +} + +prebuilt_etc { + name: "trace_config_multi_user.textproto", + src: ":multi_user_trace_config", +} diff --git a/apct-tests/perftests/packagemanager/Android.bp b/apct-tests/perftests/packagemanager/Android.bp index 02fc12cde04b..b2626911ea1e 100644 --- a/apct-tests/perftests/packagemanager/Android.bp +++ b/apct-tests/perftests/packagemanager/Android.bp @@ -28,7 +28,7 @@ android_test { "services.core", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], platform_apis: true, diff --git a/apct-tests/perftests/packagemanager/src/android/os/PackageManagerPerfTest.java b/apct-tests/perftests/packagemanager/src/android/os/PackageManagerPerfTest.java index 4bcc8c499f0d..f302033dee0f 100644 --- a/apct-tests/perftests/packagemanager/src/android/os/PackageManagerPerfTest.java +++ b/apct-tests/perftests/packagemanager/src/android/os/PackageManagerPerfTest.java @@ -31,6 +31,7 @@ import android.content.pm.PackageInstaller; import android.content.pm.PackageManager; import android.perftests.utils.BenchmarkState; import android.perftests.utils.PerfStatusReporter; +import android.permission.PermissionManager; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; @@ -107,6 +108,8 @@ public class PackageManagerPerfTest { public void setup() { PackageManager.disableApplicationInfoCache(); PackageManager.disablePackageInfoCache(); + PermissionManager.disablePermissionCache(); + PermissionManager.disablePackageNamePermissionCache(); } @Test diff --git a/apct-tests/perftests/permission/Android.bp b/apct-tests/perftests/permission/Android.bp index bc8e7696440a..f4c7fbbf6593 100644 --- a/apct-tests/perftests/permission/Android.bp +++ b/apct-tests/perftests/permission/Android.bp @@ -43,7 +43,7 @@ android_test { "cts-install-lib-java", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], platform_apis: true, diff --git a/apct-tests/perftests/settingsprovider/Android.bp b/apct-tests/perftests/settingsprovider/Android.bp index e4aa14cd8a77..382803900507 100644 --- a/apct-tests/perftests/settingsprovider/Android.bp +++ b/apct-tests/perftests/settingsprovider/Android.bp @@ -28,7 +28,7 @@ android_test { "services.core", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], platform_apis: true, diff --git a/apex/blobstore/OWNERS b/apex/blobstore/OWNERS index a53bbeaa8601..f8208830d83e 100644 --- a/apex/blobstore/OWNERS +++ b/apex/blobstore/OWNERS @@ -1,2 +1,5 @@ +# Bug component: 1628187 +set noparent + sudheersai@google.com -yamasani@google.com +yamasani@google.com #{LAST_RESORT_SUGGESTION} diff --git a/apex/blobstore/TEST_MAPPING b/apex/blobstore/TEST_MAPPING index 6d3c0d73f77f..5157ce43fd4c 100644 --- a/apex/blobstore/TEST_MAPPING +++ b/apex/blobstore/TEST_MAPPING @@ -7,12 +7,7 @@ "name": "CtsBlobStoreHostTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.blob" - } - ] + "name": "FrameworksMockingServicesTests_blob" } ] } diff --git a/apex/jobscheduler/ALARM_OWNERS b/apex/jobscheduler/ALARM_OWNERS new file mode 100644 index 000000000000..5c3bff7b42f4 --- /dev/null +++ b/apex/jobscheduler/ALARM_OWNERS @@ -0,0 +1,2 @@ +suprabh@google.com +tetianameronyk@google.com
\ No newline at end of file diff --git a/apex/jobscheduler/DEVICE_IDLE_OWNERS b/apex/jobscheduler/DEVICE_IDLE_OWNERS new file mode 100644 index 000000000000..62db91db98f8 --- /dev/null +++ b/apex/jobscheduler/DEVICE_IDLE_OWNERS @@ -0,0 +1,2 @@ +suprabh@google.com +guanxin@google.com
\ No newline at end of file diff --git a/apex/jobscheduler/JOB_OWNERS b/apex/jobscheduler/JOB_OWNERS new file mode 100644 index 000000000000..05bf25c50d60 --- /dev/null +++ b/apex/jobscheduler/JOB_OWNERS @@ -0,0 +1,3 @@ +suprabh@google.com +varunshah@google.com +guanxin@google.com
\ No newline at end of file diff --git a/apex/jobscheduler/OWNERS b/apex/jobscheduler/OWNERS index 22b648975e5f..ffa58022c4f7 100644 --- a/apex/jobscheduler/OWNERS +++ b/apex/jobscheduler/OWNERS @@ -1,8 +1,25 @@ -ctate@android.com -ctate@google.com -dplotnikov@google.com -jji@google.com -omakoto@google.com -suprabh@google.com -varunshah@google.com -yamasani@google.com +# For Job Scheduler and App Standby changes, JOB_OWNERS +per-file JOB_OWNERS = file:/apex/jobscheduler/JOB_OWNERS +per-file framework/aconfig/job.aconfig = file:/apex/jobscheduler/JOB_OWNERS +per-file service/aconfig/job.aconfig = file:/apex/jobscheduler/JOB_OWNERS +per-file service/aconfig/app_idle.aconfig = file:/apex/jobscheduler/JOB_OWNERS +per-file *Job* = file:/apex/jobscheduler/JOB_OWNERS +per-file *Standby* = file:/apex/jobscheduler/JOB_OWNERS +per-file framework/java/android/app/job/* = file:/apex/jobscheduler/JOB_OWNERS +per-file framework/java/com/android/server/job/* = file:/apex/jobscheduler/JOB_OWNERS +per-file service/java/com/android/server/job/* = file:/apex/jobscheduler/JOB_OWNERS + +# For Alarm Manager changes, ALARM_OWNERS +per-file ALARM_OWNERS = file:/apex/jobscheduler/ALARM_OWNERS +per-file service/aconfig/alarm.aconfig = file:/apex/jobscheduler/ALARM_OWNERS +per-file *Alarm* = file:/apex/jobscheduler/ALARM_OWNERS +per-file service/java/com/android/server/alarm/* = file:/apex/jobscheduler/ALARM_OWNERS + +# For Device Idle changes, DEVICE_IDLE_OWNERS +per-file DEVICE_IDLE_OWNERS = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS +per-file service/aconfig/device_idle.aconfig = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS +per-file *Idle* = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS +per-file service/java/com/android/server/deviceidle/* = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS +per-file framework/java/com/android/server/deviceidle/* = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS + +suprabh@google.com #{LAST_RESORT_SUGGESTION}
\ No newline at end of file diff --git a/apex/jobscheduler/framework/java/android/app/job/OWNERS b/apex/jobscheduler/framework/java/android/app/job/OWNERS deleted file mode 100644 index 0b1e559dda15..000000000000 --- a/apex/jobscheduler/framework/java/android/app/job/OWNERS +++ /dev/null @@ -1,6 +0,0 @@ -# Bug component: 330738 - -yamasani@google.com -omakoto@google.com -ctate@android.com -ctate@google.com diff --git a/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java b/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java index 33f6899239c6..ecb9a738aa32 100644 --- a/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java +++ b/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java @@ -444,8 +444,13 @@ public class AppStateTrackerImpl implements AppStateTracker { private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + return; + } + final int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, -1); - switch (intent.getAction()) { + switch (action) { case Intent.ACTION_USER_REMOVED: if (userId > 0) { mHandler.doUserRemoved(userId); diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java index c2aeadaea65c..3e650da2e66f 100644 --- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java +++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java @@ -666,7 +666,12 @@ public class DeviceIdleController extends SystemService private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { - switch (intent.getAction()) { + final String action = intent.getAction(); + if (action == null) { + return; + } + + switch (action) { case ConnectivityManager.CONNECTIVITY_ACTION: { updateConnectivityState(intent); } break; @@ -2629,8 +2634,13 @@ public class DeviceIdleController extends SystemService for (int i=0; i<allowPowerExceptIdle.size(); i++) { String pkg = allowPowerExceptIdle.valueAt(i); try { + // On some devices (eg. HSUM), some apps may + // be not be pre-installed on user 0, but may be + // pre-installed on FULL users. Look for pre-installed system + // apps across all users to make sure they're properly + // allowlisted. ApplicationInfo ai = pm.getApplicationInfo(pkg, - PackageManager.MATCH_SYSTEM_ONLY); + PackageManager.MATCH_ANY_USER | PackageManager.MATCH_SYSTEM_ONLY); int appid = UserHandle.getAppId(ai.uid); mPowerSaveWhitelistAppsExceptIdle.put(ai.packageName, appid); mPowerSaveWhitelistSystemAppIdsExceptIdle.put(appid, true); @@ -2641,8 +2651,13 @@ public class DeviceIdleController extends SystemService for (int i=0; i<allowPower.size(); i++) { String pkg = allowPower.valueAt(i); try { + // On some devices (eg. HSUM), some apps may + // be not be pre-installed on user 0, but may be + // pre-installed on FULL users. Look for pre-installed system + // apps across all users to make sure they're properly + // allowlisted. ApplicationInfo ai = pm.getApplicationInfo(pkg, - PackageManager.MATCH_SYSTEM_ONLY); + PackageManager.MATCH_ANY_USER | PackageManager.MATCH_SYSTEM_ONLY); int appid = UserHandle.getAppId(ai.uid); // These apps are on both the whitelist-except-idle as well // as the full whitelist, so they apply in all cases. @@ -3558,7 +3573,7 @@ public class DeviceIdleController extends SystemService Slog.i(TAG, "becomeActiveLocked, reason=" + activeReason + ", changeLightIdle=" + changeLightIdle); } - if (mState != STATE_ACTIVE || mLightState != STATE_ACTIVE) { + if (mState != STATE_ACTIVE || mLightState != LIGHT_STATE_ACTIVE) { moveToStateLocked(STATE_ACTIVE, activeReason); mInactiveTimeout = newInactiveTimeout; resetIdleManagementLocked(); diff --git a/apex/jobscheduler/service/java/com/android/server/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/TEST_MAPPING index 6924cb210adb..e3e72f43ef65 100644 --- a/apex/jobscheduler/service/java/com/android/server/TEST_MAPPING +++ b/apex/jobscheduler/service/java/com/android/server/TEST_MAPPING @@ -1,31 +1,17 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "file_patterns": [ - "DeviceIdleController\\.java" - ], - "options": [ - {"include-filter": "com.android.server.DeviceIdleControllerTest"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksMockingServicesTests_IdleController", + "file_patterns": ["DeviceIdleController\\.java"] }, { - "name": "FrameworksMockingServicesTests", - "file_patterns": ["AppStateTrackerImpl\\.java"], - "options": [ - {"include-filter": "com.android.server.AppStateTrackerTest"}, - {"include-annotation": "android.platform.test.annotations.Presubmit"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksMockingServicesTests_AppStateTracker", + "file_patterns": ["AppStateTrackerImpl\\.java"] } ], "postsubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server"} - ] + "name": "FrameworksMockingServicesTests_android_server" } ] } diff --git a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java index b982d1253e21..d1f1ac3c1c92 100644 --- a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java +++ b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java @@ -4935,10 +4935,14 @@ public class AlarmManagerService extends SystemService { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + return; + } final int uid = intent.getIntExtra(Intent.EXTRA_UID, -1); synchronized (mLock) { String pkgList[] = null; - switch (intent.getAction()) { + switch (action) { case Intent.ACTION_QUERY_PACKAGE_RESTART: pkgList = intent.getStringArrayExtra(Intent.EXTRA_PACKAGES); for (String packageName : pkgList) { diff --git a/apex/jobscheduler/service/java/com/android/server/alarm/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/alarm/TEST_MAPPING index d76ce7449e43..ab0f17810308 100644 --- a/apex/jobscheduler/service/java/com/android/server/alarm/TEST_MAPPING +++ b/apex/jobscheduler/service/java/com/android/server/alarm/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.alarm" - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksMockingServicesTests_com_android_server_alarm" } ], diff --git a/apex/jobscheduler/service/java/com/android/server/deviceidle/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/deviceidle/TEST_MAPPING index c06861164d31..ed8851c93042 100644 --- a/apex/jobscheduler/service/java/com/android/server/deviceidle/TEST_MAPPING +++ b/apex/jobscheduler/service/java/com/android/server/deviceidle/TEST_MAPPING @@ -1,19 +1,12 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.DeviceIdleControllerTest"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksMockingServicesTests_IdleController" } ], "postsubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server"} - ] + "name": "FrameworksMockingServicesTests_android_server" } ] } diff --git a/apex/jobscheduler/service/java/com/android/server/job/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/job/TEST_MAPPING index e82df1203137..d198bfdd03ee 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/TEST_MAPPING +++ b/apex/jobscheduler/service/java/com/android/server/job/TEST_MAPPING @@ -1,27 +1,13 @@ { "presubmit": [ { - "name": "CtsJobSchedulerTestCases", - "options": [ - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "CtsJobSchedulerTestCases_com_android_server_job" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.job"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "FrameworksMockingServicesTests_com_android_server_job_Presubmit" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.job"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "FrameworksServicesTests_com_android_server_job_Presubmit" } ], "postsubmit": [ @@ -29,29 +15,16 @@ "name": "CtsJobSchedulerTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.job"} - ] + "name": "FrameworksMockingServicesTests_com_android_server_job" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.job"} - ] + "name": "FrameworksServicesTests_com_android_server_job" }, { - "name": "CtsHostsideNetworkPolicyTests", - "options": [ - {"include-filter": "com.android.cts.netpolicy.HostsideRestrictBackgroundNetworkTests#testMeteredNetworkAccess_expeditedJob"}, - {"include-filter": "com.android.cts.netpolicy.HostsideRestrictBackgroundNetworkTests#testNonMeteredNetworkAccess_expeditedJob"} - ] + "name": "CtsHostsideNetworkPolicyTests_com_android_server_job" }, { - "name": "CtsStatsdAtomHostTestCases", - "options": [ - {"include-filter": "android.cts.statsdatom.jobscheduler"} - ] + "name": "CtsStatsdAtomHostTestCases_statsdatom_jobscheduler" } ] } diff --git a/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java b/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java index e3ac780abf09..7a21697331af 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java +++ b/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java @@ -84,9 +84,13 @@ public final class BackgroundJobsController extends StateController { private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + return; + } + final String pkgName = getPackageName(intent); final int pkgUid = intent.getIntExtra(Intent.EXTRA_UID, -1); - final String action = intent.getAction(); if (pkgUid == -1) { Slog.e(TAG, "Didn't get package UID in intent (" + action + ")"); return; diff --git a/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING index a75415ec6151..1a2013daf2cd 100644 --- a/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING +++ b/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING @@ -1,27 +1,13 @@ { "presubmit": [ { - "name": "CtsUsageStatsTestCases", - "options": [ - {"include-filter": "android.app.usage.cts.UsageStatsTest"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.MediumTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "CtsUsageStatsTestCases_cts_usagestatstest" }, { - "name": "CtsBRSTestCases", - "options": [ - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "CtsBRSTestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.usage"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksServicesTests_com_android_server_usage" } ], "postsubmit": [ @@ -29,10 +15,7 @@ "name": "CtsUsageStatsTestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.usage"} - ] + "name": "FrameworksServicesTests_com_android_server_usage" } ] } diff --git a/api/Android.bp b/api/Android.bp index 6a04f0d76bf9..c7c56861894d 100644 --- a/api/Android.bp +++ b/api/Android.bp @@ -29,12 +29,14 @@ bootstrap_go_package { pkgPath: "android/soong/api", deps: [ "blueprint", + "blueprint-proptools", "soong", "soong-android", "soong-genrule", "soong-java", ], srcs: ["api.go"], + testSrcs: ["api_test.go"], pluginFor: ["soong_build"], } @@ -60,40 +62,8 @@ metalava_cmd = "$(location metalava)" metalava_cmd += " -J--add-opens=java.base/java.util=ALL-UNNAMED " metalava_cmd += " --quiet " -soong_config_module_type { - name: "enable_crashrecovery_module", - module_type: "combined_apis_defaults", - config_namespace: "ANDROID", - bool_variables: ["release_crashrecovery_module"], - properties: [ - "bootclasspath", - "system_server_classpath", - ], -} - -soong_config_bool_variable { - name: "release_crashrecovery_module", -} - -enable_crashrecovery_module { - name: "crashrecovery_module_defaults", - soong_config_variables: { - release_crashrecovery_module: { - bootclasspath: [ - "framework-crashrecovery", - ], - system_server_classpath: [ - "service-crashrecovery", - ], - }, - }, -} - combined_apis { name: "frameworks-base-api", - defaults: [ - "crashrecovery_module_defaults", - ], bootclasspath: [ "android.net.ipsec.ike", "art.module.public.api", @@ -103,6 +73,7 @@ combined_apis { "framework-bluetooth", "framework-configinfrastructure", "framework-connectivity", + "framework-connectivity-b", "framework-connectivity-t", "framework-devicelock", "framework-graphics", @@ -117,6 +88,7 @@ combined_apis { "framework-permission", "framework-permission-s", "framework-profiling", + "framework-photopicker", "framework-scheduling", "framework-sdkextensions", "framework-statsd", @@ -126,7 +98,17 @@ combined_apis { "framework-virtualization", "framework-wifi", "i18n.module.public.api", - ], + ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), { + "true": [ + "framework-crashrecovery", + ], + default: [], + }) + select(release_flag("RELEASE_RANGING_STACK"), { + true: [ + "framework-ranging", + ], + default: [], + }), system_server_classpath: [ "service-art", "service-configinfrastructure", @@ -135,30 +117,62 @@ combined_apis { "service-permission", "service-rkp", "service-sdksandbox", + ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), { + "true": [ + "service-crashrecovery", + ], + default: [], + }), +} + +// Create a single file containing the latest released version of the whole +// Android public API. +java_genrule { + name: "android.api.merged.public.latest", + srcs: [ + ":android.api.combined.public.latest", ], + out: ["public-latest.txt"], + tools: ["metalava"], + cmd: metalava_cmd + " merge-signatures --format=2.0 $(in) --out $(out)", } -genrule { +// Make sure that the Android public API is compatible with the +// previously released public API. +java_genrule { name: "frameworks-base-api-current-compat", srcs: [ - ":android.api.public.latest", + ":android.api.merged.public.latest", ":android-incompatibilities.api.public.latest", ":frameworks-base-api-current.txt", ], out: ["updated-baseline.txt"], tools: ["metalava"], cmd: metalava_cmd + - "--check-compatibility:api:released $(location :android.api.public.latest) " + + "--check-compatibility:api:released $(location :android.api.merged.public.latest) " + "--baseline:compatibility:released $(location :android-incompatibilities.api.public.latest) " + "--update-baseline:compatibility:released $(genDir)/updated-baseline.txt " + "$(location :frameworks-base-api-current.txt)", } -genrule { +// Create a single file containing the latest released version of the whole +// Android system API. +java_genrule { + name: "android.api.merged.system.latest", + srcs: [ + ":android.api.combined.system.latest", + ], + out: ["system-latest.txt"], + tools: ["metalava"], + cmd: metalava_cmd + " merge-signatures --format=2.0 $(in) --out $(out)", +} + +// Make sure that the Android system API is compatible with the +// previously released system API. +java_genrule { name: "frameworks-base-api-system-current-compat", srcs: [ - ":android.api.public.latest", - ":android.api.system.latest", + ":android.api.merged.system.latest", ":android-incompatibilities.api.system.latest", ":frameworks-base-api-current.txt", ":frameworks-base-api-system-current.txt", @@ -166,20 +180,31 @@ genrule { out: ["updated-baseline.txt"], tools: ["metalava"], cmd: metalava_cmd + - "--check-compatibility:api:released $(location :android.api.public.latest) " + - "--check-compatibility:api:released $(location :android.api.system.latest) " + + "--check-compatibility:api:released $(location :android.api.merged.system.latest) " + "--baseline:compatibility:released $(location :android-incompatibilities.api.system.latest) " + "--update-baseline:compatibility:released $(genDir)/updated-baseline.txt " + "$(location :frameworks-base-api-current.txt) " + "$(location :frameworks-base-api-system-current.txt)", } -genrule { +// Create a single file containing the latest released version of the whole +// Android module-lib API. +java_genrule { + name: "android.api.merged.module-lib.latest", + srcs: [ + ":android.api.combined.module-lib.latest", + ], + out: ["module-lib-latest.txt"], + tools: ["metalava"], + cmd: metalava_cmd + " merge-signatures --format=2.0 $(in) --out $(out)", +} + +// Make sure that the Android module-lib API is compatible with the +// previously released module-lib API. +java_genrule { name: "frameworks-base-api-module-lib-current-compat", srcs: [ - ":android.api.public.latest", - ":android.api.system.latest", - ":android.api.module-lib.latest", + ":android.api.merged.module-lib.latest", ":android-incompatibilities.api.module-lib.latest", ":frameworks-base-api-current.txt", ":frameworks-base-api-system-current.txt", @@ -188,9 +213,7 @@ genrule { out: ["updated-baseline.txt"], tools: ["metalava"], cmd: metalava_cmd + - "--check-compatibility:api:released $(location :android.api.public.latest) " + - "--check-compatibility:api:released $(location :android.api.system.latest) " + - "--check-compatibility:api:released $(location :android.api.module-lib.latest) " + + "--check-compatibility:api:released $(location :android.api.merged.module-lib.latest) " + "--baseline:compatibility:released $(location :android-incompatibilities.api.module-lib.latest) " + "--update-baseline:compatibility:released $(genDir)/updated-baseline.txt " + "$(location :frameworks-base-api-current.txt) " + @@ -198,14 +221,14 @@ genrule { "$(location :frameworks-base-api-module-lib-current.txt)", } -genrule { +java_genrule { name: "frameworks-base-api-current.srcjar", tools: ["merge_zips"], out: ["current.srcjar"], cmd: "$(location merge_zips) $(out) $(in)", srcs: [ ":api-stubs-docs-non-updatable{.exportable}", - ":all-modules-public-stubs-source", + ":all-modules-public-stubs-source-exportable", ], visibility: ["//visibility:private"], // Used by make module in //development, mind } @@ -223,7 +246,7 @@ genrule_defaults { "$(location soong_zip) -o $(out) -C $(genDir)/out -D $(genDir)/out", } -genrule { +java_genrule { name: "sdk-annotations.zip", defaults: ["sdk-annotations-defaults"], srcs: [ @@ -232,7 +255,7 @@ genrule { ], } -genrule { +java_genrule { name: "sdk-annotations-system.zip", defaults: ["sdk-annotations-defaults"], srcs: [ @@ -241,7 +264,7 @@ genrule { ], } -genrule { +java_genrule { name: "sdk-annotations-module-lib.zip", defaults: ["sdk-annotations-defaults"], srcs: [ @@ -250,7 +273,7 @@ genrule { ], } -genrule { +java_genrule { name: "sdk-annotations-system-server.zip", defaults: ["sdk-annotations-defaults"], srcs: [ @@ -259,7 +282,7 @@ genrule { ], } -genrule { +java_genrule { name: "combined-removed-dex", visibility: [ "//frameworks/base/boot", @@ -304,7 +327,7 @@ packages_to_document = [ // These are libs from framework-internal-utils that are required (i.e. being referenced) // from framework-non-updatable-sources. Add more here when there's a need. // DO NOT add the entire framework-internal-utils. It might cause unnecessary circular -// dependencies gets bigger. +// dependencies when the list gets bigger. android_non_updatable_stubs_libs = [ "android.hardware.cas-V1.2-java", "android.hardware.health-V1.0-java-constants", @@ -404,6 +427,11 @@ non_updatable_api_deps_on_modules = [ "sdk_system_current_android", ] +java_defaults { + name: "module-classpath-java-defaults", + libs: non_updatable_api_deps_on_modules, +} + // Defaults with module APIs in the classpath (mostly from prebuilts). // Suitable for compiling android-non-updatable. stubs_defaults { @@ -469,7 +497,7 @@ genrule_defaults { tools: ["extract-flagged-apis"], } -genrule { +java_genrule { name: "flag-api-mapping-PublicApi", defaults: ["flag-api-mapping-generation-defaults"], srcs: [":frameworks-base-api-current.txt"], @@ -479,7 +507,7 @@ genrule { }, } -genrule { +java_genrule { name: "flag-api-mapping-SystemApi", defaults: ["flag-api-mapping-generation-defaults"], srcs: [":frameworks-base-api-system-current.txt"], @@ -489,7 +517,7 @@ genrule { }, } -genrule { +java_genrule { name: "flag-api-mapping-ModuleLibApi", defaults: ["flag-api-mapping-generation-defaults"], srcs: [":frameworks-base-api-module-lib-current.txt"], @@ -499,7 +527,7 @@ genrule { }, } -genrule { +java_genrule { name: "flag-api-mapping-SystemServerApi", defaults: ["flag-api-mapping-generation-defaults"], srcs: [":frameworks-base-api-system-server-current.txt"], diff --git a/api/ApiDocs.bp b/api/ApiDocs.bp index e8fcf4b2b32d..1ebe0cdfabd7 100644 --- a/api/ApiDocs.bp +++ b/api/ApiDocs.bp @@ -129,7 +129,7 @@ droidstubs { droidstubs { name: "framework-doc-stubs", defaults: ["android-non-updatable-doc-stubs-defaults"], - srcs: [":all-modules-public-stubs-source"], + srcs: [":all-modules-public-stubs-source-exportable"], api_levels_module: "api_versions_public", aidl: { include_dirs: [ diff --git a/api/StubLibraries.bp b/api/StubLibraries.bp index 12820f9ff277..a949ff5a331b 100644 --- a/api/StubLibraries.bp +++ b/api/StubLibraries.bp @@ -364,19 +364,14 @@ java_defaults { java_library { name: "android-non-updatable.stubs", defaults: ["android-non-updatable_defaults"], - static_libs: [ - "android-non-updatable.stubs.from-source", - ], - product_variables: { - build_from_text_stub: { - static_libs: [ - "android-non-updatable.stubs.from-text", - ], - exclude_static_libs: [ - "android-non-updatable.stubs.from-source", - ], - }, - }, + static_libs: select(product_variable("build_from_text_stub"), { + true: [ + "android-non-updatable.stubs.from-text", + ], + default: [ + "android-non-updatable.stubs.from-source", + ], + }), } java_library { @@ -390,19 +385,14 @@ java_library { java_library { name: "android-non-updatable.stubs.system", defaults: ["android-non-updatable_defaults"], - static_libs: [ - "android-non-updatable.stubs.system.from-source", - ], - product_variables: { - build_from_text_stub: { - static_libs: [ - "android-non-updatable.stubs.system.from-text", - ], - exclude_static_libs: [ - "android-non-updatable.stubs.system.from-source", - ], - }, - }, + static_libs: select(product_variable("build_from_text_stub"), { + true: [ + "android-non-updatable.stubs.system.from-text", + ], + default: [ + "android-non-updatable.stubs.system.from-source", + ], + }), } java_library { @@ -416,19 +406,14 @@ java_library { java_library { name: "android-non-updatable.stubs.module_lib", defaults: ["android-non-updatable_defaults"], - static_libs: [ - "android-non-updatable.stubs.module_lib.from-source", - ], - product_variables: { - build_from_text_stub: { - static_libs: [ - "android-non-updatable.stubs.module_lib.from-text", - ], - exclude_static_libs: [ - "android-non-updatable.stubs.module_lib.from-source", - ], - }, - }, + static_libs: select(product_variable("build_from_text_stub"), { + true: [ + "android-non-updatable.stubs.module_lib.from-text", + ], + default: [ + "android-non-updatable.stubs.module_lib.from-source", + ], + }), } java_library { @@ -442,19 +427,14 @@ java_library { java_library { name: "android-non-updatable.stubs.test", defaults: ["android-non-updatable_defaults"], - static_libs: [ - "android-non-updatable.stubs.test.from-source", - ], - product_variables: { - build_from_text_stub: { - static_libs: [ - "android-non-updatable.stubs.test.from-text", - ], - exclude_static_libs: [ - "android-non-updatable.stubs.test.from-source", - ], - }, - }, + static_libs: select(product_variable("build_from_text_stub"), { + true: [ + "android-non-updatable.stubs.test.from-text", + ], + default: [ + "android-non-updatable.stubs.test.from-source", + ], + }), } java_library { @@ -466,6 +446,27 @@ java_library { } java_library { + name: "android-non-updatable.stubs.system_server", + defaults: ["android-non-updatable_defaults"], + static_libs: select(product_variable("build_from_text_stub"), { + true: [ + "android-non-updatable.stubs.system_server.from-text", + ], + default: [ + "android-non-updatable.stubs.system_server.from-source", + ], + }), +} + +java_library { + name: "android-non-updatable.stubs.exportable.system_server", + defaults: ["android-non-updatable_defaults"], + static_libs: [ + "android-non-updatable.stubs.exportable.system_server.from-source", + ], +} + +java_library { name: "android-non-updatable.stubs.from-source", defaults: [ "android-non-updatable_defaults", @@ -561,10 +562,38 @@ java_library { }, } +java_library { + name: "android-non-updatable.stubs.system_server.from-source", + defaults: [ + "android-non-updatable_defaults", + "android-non-updatable_from_source_defaults", + ], + srcs: [":services-non-updatable-stubs"], + libs: non_updatable_api_deps_on_modules, +} + +java_library { + name: "android-non-updatable.stubs.exportable.system_server.from-source", + defaults: [ + "android-non-updatable_defaults", + "android-non-updatable_from_source_defaults", + "android-non-updatable_exportable_from_source_defaults", + ], + srcs: [":services-non-updatable-stubs{.exportable}"], + libs: non_updatable_api_deps_on_modules, + dist: { + dir: "apistubs/android/system-server", + }, +} + java_defaults { name: "android-non-updatable_from_text_defaults", + defaults: ["android-non-updatable-stubs-libs-defaults"], static_libs: ["framework-res-package-jar"], libs: ["stub-annotations"], + sdk_version: "none", + system_modules: "none", + previous_api: ":android.api.public.latest", } java_defaults { @@ -582,10 +611,10 @@ java_api_library { "api-stubs-docs-non-updatable.api.contribution", ], defaults: ["android-non-updatable_everything_from_text_defaults"], - full_api_surface_stub: "android_stubs_current.from-text", // Use full Android API not just the non-updatable API as the latter is incomplete // and can result in incorrect behavior. previous_api: ":android.api.combined.public.latest", + libs: ["all-modules-public-stubs"], } java_api_library { @@ -596,10 +625,10 @@ java_api_library { "system-api-stubs-docs-non-updatable.api.contribution", ], defaults: ["android-non-updatable_everything_from_text_defaults"], - full_api_surface_stub: "android_system_stubs_current.from-text", // Use full Android API not just the non-updatable API as the latter is incomplete // and can result in incorrect behavior. previous_api: ":android.api.combined.system.latest", + libs: ["all-modules-system-stubs"], } java_api_library { @@ -611,10 +640,10 @@ java_api_library { "test-api-stubs-docs-non-updatable.api.contribution", ], defaults: ["android-non-updatable_everything_from_text_defaults"], - full_api_surface_stub: "android_test_stubs_current.from-text", // Use full Android API not just the non-updatable API as the latter is incomplete // and can result in incorrect behavior. previous_api: ":android.api.combined.test.latest", + libs: ["all-modules-system-stubs"], } java_api_library { @@ -625,8 +654,10 @@ java_api_library { "system-api-stubs-docs-non-updatable.api.contribution", "module-lib-api-stubs-docs-non-updatable.api.contribution", ], - defaults: ["android-non-updatable_everything_from_text_defaults"], - full_api_surface_stub: "android_module_lib_stubs_current_full.from-text", + defaults: [ + "module-classpath-java-defaults", + "android-non-updatable_everything_from_text_defaults", + ], // Use full Android API not just the non-updatable API as the latter is incomplete // and can result in incorrect behavior. previous_api: ":android.api.combined.module-lib.latest", @@ -644,14 +675,35 @@ java_api_library { "test-api-stubs-docs-non-updatable.api.contribution", "module-lib-api-stubs-docs-non-updatable.api.contribution", ], - defaults: ["android-non-updatable_everything_from_text_defaults"], - full_api_surface_stub: "android_test_module_lib_stubs_current.from-text", + defaults: [ + "module-classpath-java-defaults", + "android-non-updatable_everything_from_text_defaults", + ], // No need to specify previous_api as this is not used for compiling against. - // This module is only used for hiddenapi, and other modules should not // depend on this module. visibility: ["//visibility:private"], + libs: ["all-modules-system-stubs"], +} + +java_api_library { + name: "android-non-updatable.stubs.system_server.from-text", + api_surface: "system_server", + api_contributions: [ + "api-stubs-docs-non-updatable.api.contribution", + "system-api-stubs-docs-non-updatable.api.contribution", + "module-lib-api-stubs-docs-non-updatable.api.contribution", + "services-non-updatable-stubs.api.contribution", + ], + defaults: [ + "module-classpath-java-defaults", + "android-non-updatable_everything_from_text_defaults", + ], + + // Use full Android API not just the non-updatable API as the latter is incomplete + // and can result in incorrect behavior. + previous_api: ":android.api.combined.system-server.latest", } java_defaults { @@ -665,7 +717,7 @@ java_defaults { } java_library { - name: "android_stubs_current.from-source", + name: "android_stubs_current", static_libs: [ "all-modules-public-stubs", "android-non-updatable.stubs", @@ -675,7 +727,7 @@ java_library { } java_library { - name: "android_stubs_current_exportable.from-source", + name: "android_stubs_current_exportable", static_libs: [ "all-modules-public-stubs-exportable", "android-non-updatable.stubs.exportable", @@ -685,7 +737,7 @@ java_library { } java_library { - name: "android_system_stubs_current.from-source", + name: "android_system_stubs_current", static_libs: [ "all-modules-system-stubs", "android-non-updatable.stubs.system", @@ -698,7 +750,7 @@ java_library { } java_library { - name: "android_system_stubs_current_exportable.from-source", + name: "android_system_stubs_current_exportable", static_libs: [ "all-modules-system-stubs-exportable", "android-non-updatable.stubs.exportable.system", @@ -722,7 +774,7 @@ java_library { } java_library { - name: "android_test_stubs_current.from-source", + name: "android_test_stubs_current", static_libs: [ // Updatable modules do not have test APIs, but we want to include their SystemApis, like we // include the SystemApi of framework-non-updatable-sources. @@ -739,7 +791,7 @@ java_library { } java_library { - name: "android_test_stubs_current_exportable.from-source", + name: "android_test_stubs_current_exportable", static_libs: [ // Updatable modules do not have test APIs, but we want to include their SystemApis, like we // include the SystemApi of framework-non-updatable-sources. @@ -760,7 +812,7 @@ java_library { // This module does not need to be copied to dist java_library { - name: "android_test_frameworks_core_stubs_current.from-source", + name: "android_test_frameworks_core_stubs_current", static_libs: [ "all-updatable-modules-system-stubs", "android-non-updatable.stubs.test", @@ -772,7 +824,7 @@ java_library { } java_library { - name: "android_module_lib_stubs_current.from-source", + name: "android_module_lib_stubs_current", defaults: [ "android.jar_defaults", ], @@ -785,7 +837,7 @@ java_library { } java_library { - name: "android_module_lib_stubs_current_exportable.from-source", + name: "android_module_lib_stubs_current_exportable", defaults: [ "android.jar_defaults", "android_stubs_dists_default", @@ -801,28 +853,28 @@ java_library { } java_library { - name: "android_system_server_stubs_current.from-source", + name: "android_system_server_stubs_current", defaults: [ "android.jar_defaults", ], - srcs: [":services-non-updatable-stubs"], installable: false, static_libs: [ - "android_module_lib_stubs_current.from-source", + "android-non-updatable.stubs.system_server", + "android_module_lib_stubs_current", ], visibility: ["//frameworks/base/services"], } java_library { - name: "android_system_server_stubs_current_exportable.from-source", + name: "android_system_server_stubs_current_exportable", defaults: [ "android.jar_defaults", "android_stubs_dists_default", ], - srcs: [":services-non-updatable-stubs{.exportable}"], installable: false, static_libs: [ - "android_module_lib_stubs_current_exportable.from-source", + "android-non-updatable.stubs.exportable.system_server", + "android_module_lib_stubs_current_exportable", ], dist: { dir: "apistubs/android/system-server", @@ -882,7 +934,7 @@ java_genrule { cmd: "rm -f $(genDir)/framework.aidl.merged && " + "for i in $(in); do " + " rm -f $(genDir)/framework.aidl.tmp && " + - " $(location sdkparcelables) $$i $(genDir)/framework.aidl.tmp && " + + " $(location sdkparcelables) $$i $(genDir)/framework.aidl.tmp --guarantee_stable && " + " cat $(genDir)/framework.aidl.tmp >> $(genDir)/framework.aidl.merged; " + "done && " + "sort -u $(genDir)/framework.aidl.merged > $(out)", @@ -897,215 +949,6 @@ java_genrule { }, } -// -// Java API defaults and libraries for single tree build -// - -java_defaults { - name: "stub-annotation-defaults", - libs: [ - "stub-annotations", - ], - static_libs: [ - // stub annotations do not contribute to the API surfaces but are statically - // linked in the stubs for API surfaces (see frameworks/base/StubLibraries.bp). - // This is because annotation processors insist on loading the classes for any - // annotations found, thus should exist inside android.jar. - "private-stub-annotations-jar", - ], - is_stubs_module: true, -} - -// Listing of API domains contribution and dependencies per API surfaces -java_defaults { - name: "android_test_stubs_current_contributions", - api_surface: "test", - api_contributions: [ - "framework-virtualization.stubs.source.test.api.contribution", - "framework-location.stubs.source.test.api.contribution", - ], -} - -java_defaults { - name: "android_test_frameworks_core_stubs_current_contributions", - api_surface: "test", - api_contributions: [ - "test-api-stubs-docs-non-updatable.api.contribution", - ], -} - -java_defaults { - name: "android_module_lib_stubs_current_contributions", - api_surface: "module-lib", - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - "system-api-stubs-docs-non-updatable.api.contribution", - "module-lib-api-stubs-docs-non-updatable.api.contribution", - "art.module.public.api.stubs.source.api.contribution", - "art.module.public.api.stubs.source.system.api.contribution", - "art.module.public.api.stubs.source.module_lib.api.contribution", - "i18n.module.public.api.stubs.source.api.contribution", - "i18n.module.public.api.stubs.source.system.api.contribution", - "i18n.module.public.api.stubs.source.module_lib.api.contribution", - ], - previous_api: ":android.api.combined.module-lib.latest", -} - -// Java API library definitions per API surface -java_api_library { - name: "android_stubs_current.from-text", - api_surface: "public", - defaults: [ - // This module is dynamically created at frameworks/base/api/api.go - // instead of being written out, in order to minimize edits in the codebase - // when there is a change in the list of modules. - // that contributes to an api surface. - "android_stubs_current_contributions", - "stub-annotation-defaults", - ], - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_system_stubs_current.from-text", - api_surface: "system", - defaults: [ - "android_stubs_current_contributions", - "android_system_stubs_current_contributions", - "stub-annotation-defaults", - ], - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - "system-api-stubs-docs-non-updatable.api.contribution", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_test_stubs_current.from-text", - api_surface: "test", - defaults: [ - "android_stubs_current_contributions", - "android_system_stubs_current_contributions", - "android_test_stubs_current_contributions", - "stub-annotation-defaults", - ], - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - "system-api-stubs-docs-non-updatable.api.contribution", - "test-api-stubs-docs-non-updatable.api.contribution", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_test_frameworks_core_stubs_current.from-text", - api_surface: "test", - defaults: [ - "android_stubs_current_contributions", - "android_system_stubs_current_contributions", - "android_test_frameworks_core_stubs_current_contributions", - ], - libs: [ - "stub-annotations", - ], - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - "system-api-stubs-docs-non-updatable.api.contribution", - ], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_module_lib_stubs_current_full.from-text", - api_surface: "module-lib", - defaults: [ - "android_stubs_current_contributions", - "android_system_stubs_current_contributions", - "android_module_lib_stubs_current_contributions_full", - ], - libs: [ - "stub-annotations", - ], - api_contributions: [ - "api-stubs-docs-non-updatable.api.contribution", - "system-api-stubs-docs-non-updatable.api.contribution", - "module-lib-api-stubs-docs-non-updatable.api.contribution", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_module_lib_stubs_current.from-text", - api_surface: "module-lib", - defaults: [ - "android_module_lib_stubs_current_contributions", - ], - libs: [ - "android_module_lib_stubs_current_full.from-text", - "stub-annotations", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_test_module_lib_stubs_current.from-text", - api_surface: "module-lib", - defaults: [ - "android_stubs_current_contributions", - "android_system_stubs_current_contributions", - "android_test_stubs_current_contributions", - "android_module_lib_stubs_current_contributions", - ], - libs: [ - "android_module_lib_stubs_current_full.from-text", - "stub-annotations", - ], - api_contributions: [ - "test-api-stubs-docs-non-updatable.api.contribution", - ], - - // This module is only used to build android-non-updatable.stubs.test_module_lib - // and other modules should not depend on this module. - visibility: [ - "//visibility:private", - ], - enable_validation: false, - stubs_type: "everything", -} - -java_api_library { - name: "android_system_server_stubs_current.from-text", - api_surface: "system-server", - api_contributions: [ - "services-non-updatable-stubs.api.contribution", - ], - libs: [ - "android_module_lib_stubs_current.from-text", - "stub-annotations", - ], - static_libs: [ - "android_module_lib_stubs_current.from-text", - ], - visibility: ["//visibility:public"], - enable_validation: false, - stubs_type: "everything", -} - //////////////////////////////////////////////////////////////////////// // api-versions.xml generation, for public and system. This API database // also contains the android.test.* APIs. @@ -1345,4 +1188,5 @@ java_library { ":hwbinder-stubs-docs", ], visibility: ["//visibility:public"], + is_stubs_module: true, } diff --git a/api/api.go b/api/api.go index d4db49e90a01..aa89c2450288 100644 --- a/api/api.go +++ b/api/api.go @@ -15,14 +15,11 @@ package api import ( - "fmt" - "sort" - "strings" + "slices" "github.com/google/blueprint/proptools" "android/soong/android" - "android/soong/genrule" "android/soong/java" ) @@ -54,16 +51,15 @@ var non_updatable_modules = []string{virtualization, location} // The properties of the combined_apis module type. type CombinedApisProperties struct { // Module libraries in the bootclasspath - Bootclasspath []string + Bootclasspath proptools.Configurable[[]string] // Module libraries on the bootclasspath if include_nonpublic_framework_api is true. Conditional_bootclasspath []string // Module libraries in system server - System_server_classpath []string + System_server_classpath proptools.Configurable[[]string] } type CombinedApis struct { android.ModuleBase - android.DefaultableModuleBase properties CombinedApisProperties } @@ -74,34 +70,35 @@ func init() { func registerBuildComponents(ctx android.RegistrationContext) { ctx.RegisterModuleType("combined_apis", combinedApisModuleFactory) - ctx.RegisterModuleType("combined_apis_defaults", CombinedApisModuleDefaultsFactory) } var PrepareForCombinedApisTest = android.FixtureRegisterWithContext(registerBuildComponents) -func (a *CombinedApis) apiFingerprintStubDeps() []string { - ret := []string{} +func (a *CombinedApis) apiFingerprintStubDeps(ctx android.BottomUpMutatorContext) []string { + bootClasspath := a.properties.Bootclasspath.GetOrDefault(ctx, nil) + systemServerClasspath := a.properties.System_server_classpath.GetOrDefault(ctx, nil) + var ret []string ret = append( ret, - transformArray(a.properties.Bootclasspath, "", ".stubs")..., + transformArray(bootClasspath, "", ".stubs")..., ) ret = append( ret, - transformArray(a.properties.Bootclasspath, "", ".stubs.system")..., + transformArray(bootClasspath, "", ".stubs.system")..., ) ret = append( ret, - transformArray(a.properties.Bootclasspath, "", ".stubs.module_lib")..., + transformArray(bootClasspath, "", ".stubs.module_lib")..., ) ret = append( ret, - transformArray(a.properties.System_server_classpath, "", ".stubs.system_server")..., + transformArray(systemServerClasspath, "", ".stubs.system_server")..., ) return ret } func (a *CombinedApis) DepsMutator(ctx android.BottomUpMutatorContext) { - ctx.AddDependency(ctx.Module(), nil, a.apiFingerprintStubDeps()...) + ctx.AddDependency(ctx.Module(), nil, a.apiFingerprintStubDeps(ctx)...) } func (a *CombinedApis) GenerateAndroidBuildActions(ctx android.ModuleContext) { @@ -125,7 +122,7 @@ type genruleProps struct { Cmd *string Dists []android.Dist Out []string - Srcs []string + Srcs proptools.Configurable[[]string] Tools []string Visibility []string } @@ -133,16 +130,17 @@ type genruleProps struct { type libraryProps struct { Name *string Sdk_version *string - Static_libs []string + Static_libs proptools.Configurable[[]string] Visibility []string Defaults []string Is_stubs_module *bool } type fgProps struct { - Name *string - Srcs []string - Visibility []string + Name *string + Srcs proptools.Configurable[[]string] + Device_common_srcs proptools.Configurable[[]string] + Visibility []string } type defaultsProps struct { @@ -162,7 +160,7 @@ type MergedTxtDefinition struct { // The module for the non-updatable / non-module part of the api. BaseTxt string // The list of modules that are relevant for this merged txt. - Modules []string + Modules proptools.Configurable[[]string] // The output tag for each module to use.e.g. {.public.api.txt} for current.txt ModuleTag string // public, system, module-lib or system-server @@ -186,7 +184,8 @@ func createMergedTxt(ctx android.LoadHookContext, txt MergedTxtDefinition, stubs props.Tools = []string{"metalava"} props.Out = []string{filename} props.Cmd = proptools.StringPtr(metalavaCmd + "$(in) --out $(out)") - props.Srcs = append([]string{txt.BaseTxt}, createSrcs(txt.Modules, txt.ModuleTag)...) + props.Srcs = proptools.NewSimpleConfigurable([]string{txt.BaseTxt}) + props.Srcs.Append(createSrcs(txt.Modules, txt.ModuleTag)) if doDist { props.Dists = []android.Dist{ { @@ -202,14 +201,14 @@ func createMergedTxt(ctx android.LoadHookContext, txt MergedTxtDefinition, stubs } } props.Visibility = []string{"//visibility:public"} - ctx.CreateModule(genrule.GenRuleFactory, &props) + ctx.CreateModule(java.GenRuleFactory, &props) } -func createMergedAnnotationsFilegroups(ctx android.LoadHookContext, modules, system_server_modules []string) { +func createMergedAnnotationsFilegroups(ctx android.LoadHookContext, modules, system_server_modules proptools.Configurable[[]string]) { for _, i := range []struct { name string tag string - modules []string + modules proptools.Configurable[[]string] }{ { name: "all-modules-public-annotations", @@ -231,38 +230,44 @@ func createMergedAnnotationsFilegroups(ctx android.LoadHookContext, modules, sys } { props := fgProps{} props.Name = proptools.StringPtr(i.name) - props.Srcs = createSrcs(i.modules, i.tag) + props.Device_common_srcs = createSrcs(i.modules, i.tag) ctx.CreateModule(android.FileGroupFactory, &props) } } -func createMergedPublicStubs(ctx android.LoadHookContext, modules []string) { +func createMergedPublicStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { + modules = modules.Clone() + transformConfigurableArray(modules, "", ".stubs") props := libraryProps{} props.Name = proptools.StringPtr("all-modules-public-stubs") - props.Static_libs = transformArray(modules, "", ".stubs") + props.Static_libs = modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createMergedPublicExportableStubs(ctx android.LoadHookContext, modules []string) { +func createMergedPublicExportableStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { + modules = modules.Clone() + transformConfigurableArray(modules, "", ".stubs.exportable") props := libraryProps{} props.Name = proptools.StringPtr("all-modules-public-stubs-exportable") - props.Static_libs = transformArray(modules, "", ".stubs.exportable") + props.Static_libs = modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createMergedSystemStubs(ctx android.LoadHookContext, modules []string) { +func createMergedSystemStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { // First create the all-updatable-modules-system-stubs { - updatable_modules := removeAll(modules, non_updatable_modules) + updatable_modules := modules.Clone() + removeAll(updatable_modules, non_updatable_modules) + transformConfigurableArray(updatable_modules, "", ".stubs.system") props := libraryProps{} props.Name = proptools.StringPtr("all-updatable-modules-system-stubs") - props.Static_libs = transformArray(updatable_modules, "", ".stubs.system") + props.Static_libs = updatable_modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) @@ -271,10 +276,11 @@ func createMergedSystemStubs(ctx android.LoadHookContext, modules []string) { // Now merge all-updatable-modules-system-stubs and stubs from non-updatable modules // into all-modules-system-stubs. { + static_libs := transformArray(non_updatable_modules, "", ".stubs.system") + static_libs = append(static_libs, "all-updatable-modules-system-stubs") props := libraryProps{} props.Name = proptools.StringPtr("all-modules-system-stubs") - props.Static_libs = transformArray(non_updatable_modules, "", ".stubs.system") - props.Static_libs = append(props.Static_libs, "all-updatable-modules-system-stubs") + props.Static_libs = proptools.NewSimpleConfigurable(static_libs) props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) @@ -282,13 +288,15 @@ func createMergedSystemStubs(ctx android.LoadHookContext, modules []string) { } } -func createMergedSystemExportableStubs(ctx android.LoadHookContext, modules []string) { +func createMergedSystemExportableStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { // First create the all-updatable-modules-system-stubs { - updatable_modules := removeAll(modules, non_updatable_modules) + updatable_modules := modules.Clone() + removeAll(updatable_modules, non_updatable_modules) + transformConfigurableArray(updatable_modules, "", ".stubs.exportable.system") props := libraryProps{} props.Name = proptools.StringPtr("all-updatable-modules-system-stubs-exportable") - props.Static_libs = transformArray(updatable_modules, "", ".stubs.exportable.system") + props.Static_libs = updatable_modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) @@ -297,10 +305,11 @@ func createMergedSystemExportableStubs(ctx android.LoadHookContext, modules []st // Now merge all-updatable-modules-system-stubs and stubs from non-updatable modules // into all-modules-system-stubs. { + static_libs := transformArray(non_updatable_modules, "", ".stubs.exportable.system") + static_libs = append(static_libs, "all-updatable-modules-system-stubs-exportable") props := libraryProps{} props.Name = proptools.StringPtr("all-modules-system-stubs-exportable") - props.Static_libs = transformArray(non_updatable_modules, "", ".stubs.exportable.system") - props.Static_libs = append(props.Static_libs, "all-updatable-modules-system-stubs-exportable") + props.Static_libs = proptools.NewSimpleConfigurable(static_libs) props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) @@ -311,7 +320,7 @@ func createMergedSystemExportableStubs(ctx android.LoadHookContext, modules []st func createMergedTestStubsForNonUpdatableModules(ctx android.LoadHookContext) { props := libraryProps{} props.Name = proptools.StringPtr("all-non-updatable-modules-test-stubs") - props.Static_libs = transformArray(non_updatable_modules, "", ".stubs.test") + props.Static_libs = proptools.NewSimpleConfigurable(transformArray(non_updatable_modules, "", ".stubs.test")) props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) @@ -321,25 +330,27 @@ func createMergedTestStubsForNonUpdatableModules(ctx android.LoadHookContext) { func createMergedTestExportableStubsForNonUpdatableModules(ctx android.LoadHookContext) { props := libraryProps{} props.Name = proptools.StringPtr("all-non-updatable-modules-test-stubs-exportable") - props.Static_libs = transformArray(non_updatable_modules, "", ".stubs.exportable.test") + props.Static_libs = proptools.NewSimpleConfigurable(transformArray(non_updatable_modules, "", ".stubs.exportable.test")) props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createMergedFrameworkImpl(ctx android.LoadHookContext, modules []string) { +func createMergedFrameworkImpl(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { + modules = modules.Clone() // This module is for the "framework-all" module, which should not include the core libraries. - modules = removeAll(modules, core_libraries_modules) + removeAll(modules, core_libraries_modules) // Remove the modules that belong to non-updatable APEXes since those are allowed to compile // against unstable APIs. - modules = removeAll(modules, non_updatable_modules) + removeAll(modules, non_updatable_modules) // First create updatable-framework-module-impl, which contains all updatable modules. // This module compiles against module_lib SDK. { + transformConfigurableArray(modules, "", ".impl") props := libraryProps{} props.Name = proptools.StringPtr("updatable-framework-module-impl") - props.Static_libs = transformArray(modules, "", ".impl") + props.Static_libs = modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} ctx.CreateModule(java.LibraryFactory, &props) @@ -348,73 +359,90 @@ func createMergedFrameworkImpl(ctx android.LoadHookContext, modules []string) { // Now create all-framework-module-impl, which contains updatable-framework-module-impl // and all non-updatable modules. This module compiles against hidden APIs. { + static_libs := transformArray(non_updatable_modules, "", ".impl") + static_libs = append(static_libs, "updatable-framework-module-impl") props := libraryProps{} props.Name = proptools.StringPtr("all-framework-module-impl") - props.Static_libs = transformArray(non_updatable_modules, "", ".impl") - props.Static_libs = append(props.Static_libs, "updatable-framework-module-impl") + props.Static_libs = proptools.NewSimpleConfigurable(static_libs) props.Sdk_version = proptools.StringPtr("core_platform") props.Visibility = []string{"//frameworks/base"} ctx.CreateModule(java.LibraryFactory, &props) } } -func createMergedFrameworkModuleLibExportableStubs(ctx android.LoadHookContext, modules []string) { +func createMergedFrameworkModuleLibExportableStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { + modules = modules.Clone() // The user of this module compiles against the "core" SDK and against non-updatable modules, // so remove to avoid dupes. - modules = removeAll(modules, core_libraries_modules) - modules = removeAll(modules, non_updatable_modules) + removeAll(modules, core_libraries_modules) + removeAll(modules, non_updatable_modules) + transformConfigurableArray(modules, "", ".stubs.exportable.module_lib") props := libraryProps{} props.Name = proptools.StringPtr("framework-updatable-stubs-module_libs_api-exportable") - props.Static_libs = transformArray(modules, "", ".stubs.exportable.module_lib") + props.Static_libs = modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createMergedFrameworkModuleLibStubs(ctx android.LoadHookContext, modules []string) { +func createMergedFrameworkModuleLibStubs(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { + modules = modules.Clone() // The user of this module compiles against the "core" SDK and against non-updatable modules, // so remove to avoid dupes. - modules = removeAll(modules, core_libraries_modules) - modules = removeAll(modules, non_updatable_modules) + removeAll(modules, core_libraries_modules) + removeAll(modules, non_updatable_modules) + transformConfigurableArray(modules, "", ".stubs.module_lib") props := libraryProps{} props.Name = proptools.StringPtr("framework-updatable-stubs-module_libs_api") - props.Static_libs = transformArray(modules, "", ".stubs.module_lib") + props.Static_libs = modules props.Sdk_version = proptools.StringPtr("module_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createMergedFrameworkSystemServerExportableStubs(ctx android.LoadHookContext, bootclasspath, system_server_classpath []string) { +func createMergedFrameworkSystemServerExportableStubs(ctx android.LoadHookContext, bootclasspath, system_server_classpath proptools.Configurable[[]string]) { // The user of this module compiles against the "core" SDK and against non-updatable bootclasspathModules, // so remove to avoid dupes. - bootclasspathModules := removeAll(bootclasspath, core_libraries_modules) - bootclasspathModules = removeAll(bootclasspath, non_updatable_modules) - modules := append( - // Include all the module-lib APIs from the bootclasspath libraries. - transformArray(bootclasspathModules, "", ".stubs.exportable.module_lib"), - // Then add all the system-server APIs from the service-* libraries. - transformArray(system_server_classpath, "", ".stubs.exportable.system_server")..., - ) + bootclasspathModules := bootclasspath.Clone() + removeAll(bootclasspathModules, core_libraries_modules) + removeAll(bootclasspathModules, non_updatable_modules) + transformConfigurableArray(bootclasspathModules, "", ".stubs.exportable.module_lib") + + system_server_classpath = system_server_classpath.Clone() + transformConfigurableArray(system_server_classpath, "", ".stubs.exportable.system_server") + + // Include all the module-lib APIs from the bootclasspath libraries. + // Then add all the system-server APIs from the service-* libraries. + bootclasspathModules.Append(system_server_classpath) + props := libraryProps{} props.Name = proptools.StringPtr("framework-updatable-stubs-system_server_api-exportable") - props.Static_libs = modules + props.Static_libs = bootclasspathModules props.Sdk_version = proptools.StringPtr("system_server_current") props.Visibility = []string{"//frameworks/base"} props.Is_stubs_module = proptools.BoolPtr(true) ctx.CreateModule(java.LibraryFactory, &props) } -func createPublicStubsSourceFilegroup(ctx android.LoadHookContext, modules []string) { +func createPublicStubsSourceFilegroup(ctx android.LoadHookContext, modules proptools.Configurable[[]string]) { props := fgProps{} - props.Name = proptools.StringPtr("all-modules-public-stubs-source") - props.Srcs = createSrcs(modules, "{.public.stubs.source}") + props.Name = proptools.StringPtr("all-modules-public-stubs-source-exportable") + transformConfigurableArray(modules, "", ".stubs.source") + props.Device_common_srcs = createSrcs(modules, "{.exportable}") props.Visibility = []string{"//frameworks/base"} ctx.CreateModule(android.FileGroupFactory, &props) } -func createMergedTxts(ctx android.LoadHookContext, bootclasspath, system_server_classpath []string, baseTxtModulePrefix, stubsTypeSuffix string, doDist bool) { +func createMergedTxts( + ctx android.LoadHookContext, + bootclasspath proptools.Configurable[[]string], + system_server_classpath proptools.Configurable[[]string], + baseTxtModulePrefix string, + stubsTypeSuffix string, + doDist bool, +) { var textFiles []MergedTxtDefinition tagSuffix := []string{".api.txt}", ".removed-api.txt}"} @@ -458,85 +486,11 @@ func createMergedTxts(ctx android.LoadHookContext, bootclasspath, system_server_ } } -func createApiContributionDefaults(ctx android.LoadHookContext, modules []string) { - defaultsSdkKinds := []android.SdkKind{ - android.SdkPublic, android.SdkSystem, android.SdkModule, - } - for _, sdkKind := range defaultsSdkKinds { - props := defaultsProps{} - props.Name = proptools.StringPtr( - sdkKind.DefaultJavaLibraryName() + "_contributions") - if sdkKind == android.SdkModule { - props.Name = proptools.StringPtr( - sdkKind.DefaultJavaLibraryName() + "_contributions_full") - } - props.Api_surface = proptools.StringPtr(sdkKind.String()) - apiSuffix := "" - if sdkKind != android.SdkPublic { - apiSuffix = "." + strings.ReplaceAll(sdkKind.String(), "-", "_") - } - props.Api_contributions = transformArray( - modules, "", fmt.Sprintf(".stubs.source%s.api.contribution", apiSuffix)) - props.Defaults_visibility = []string{"//visibility:public"} - props.Previous_api = proptools.StringPtr(":android.api.combined." + sdkKind.String() + ".latest") - ctx.CreateModule(java.DefaultsFactory, &props) - } -} - -func createFullApiLibraries(ctx android.LoadHookContext) { - javaLibraryNames := []string{ - "android_stubs_current", - "android_system_stubs_current", - "android_test_stubs_current", - "android_test_frameworks_core_stubs_current", - "android_module_lib_stubs_current", - "android_system_server_stubs_current", - } - - for _, libraryName := range javaLibraryNames { - props := libraryProps{} - props.Name = proptools.StringPtr(libraryName) - staticLib := libraryName + ".from-source" - if ctx.Config().BuildFromTextStub() { - staticLib = libraryName + ".from-text" - } - props.Static_libs = []string{staticLib} - props.Defaults = []string{"android.jar_defaults"} - props.Visibility = []string{"//visibility:public"} - props.Is_stubs_module = proptools.BoolPtr(true) - - ctx.CreateModule(java.LibraryFactory, &props) - } -} - -func createFullExportableApiLibraries(ctx android.LoadHookContext) { - javaLibraryNames := []string{ - "android_stubs_current_exportable", - "android_system_stubs_current_exportable", - "android_test_stubs_current_exportable", - "android_module_lib_stubs_current_exportable", - "android_system_server_stubs_current_exportable", - } - - for _, libraryName := range javaLibraryNames { - props := libraryProps{} - props.Name = proptools.StringPtr(libraryName) - staticLib := libraryName + ".from-source" - props.Static_libs = []string{staticLib} - props.Defaults = []string{"android.jar_defaults"} - props.Visibility = []string{"//visibility:public"} - props.Is_stubs_module = proptools.BoolPtr(true) - - ctx.CreateModule(java.LibraryFactory, &props) - } -} - func (a *CombinedApis) createInternalModules(ctx android.LoadHookContext) { - bootclasspath := a.properties.Bootclasspath - system_server_classpath := a.properties.System_server_classpath + bootclasspath := a.properties.Bootclasspath.Clone() + system_server_classpath := a.properties.System_server_classpath.Clone() if ctx.Config().VendorConfig("ANDROID").Bool("include_nonpublic_framework_api") { - bootclasspath = append(bootclasspath, a.properties.Conditional_bootclasspath...) - sort.Strings(bootclasspath) + bootclasspath.AppendSimpleValue(a.properties.Conditional_bootclasspath) } createMergedTxts(ctx, bootclasspath, system_server_classpath, "non-updatable-", "-", false) createMergedTxts(ctx, bootclasspath, system_server_classpath, "non-updatable-exportable-", "-exportable-", true) @@ -556,19 +510,12 @@ func (a *CombinedApis) createInternalModules(ctx android.LoadHookContext) { createMergedAnnotationsFilegroups(ctx, bootclasspath, system_server_classpath) createPublicStubsSourceFilegroup(ctx, bootclasspath) - - createApiContributionDefaults(ctx, bootclasspath) - - createFullApiLibraries(ctx) - - createFullExportableApiLibraries(ctx) } func combinedApisModuleFactory() android.Module { module := &CombinedApis{} module.AddProperties(&module.properties) - android.InitAndroidModule(module) - android.InitDefaultableModule(module) + android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon) android.AddLoadHook(module, func(ctx android.LoadHookContext) { module.createInternalModules(ctx) }) return module } @@ -576,8 +523,10 @@ func combinedApisModuleFactory() android.Module { // Various utility methods below. // Creates an array of ":<m><tag>" for each m in <modules>. -func createSrcs(modules []string, tag string) []string { - return transformArray(modules, ":", tag) +func createSrcs(modules proptools.Configurable[[]string], tag string) proptools.Configurable[[]string] { + result := modules.Clone() + transformConfigurableArray(result, ":", tag) + return result } // Creates an array of "<prefix><m><suffix>", for each m in <modules>. @@ -589,11 +538,23 @@ func transformArray(modules []string, prefix, suffix string) []string { return a } -func removeAll(s []string, vs []string) []string { - for _, v := range vs { - s = remove(s, v) - } - return s +// Creates an array of "<prefix><m><suffix>", for each m in <modules>. +func transformConfigurableArray(modules proptools.Configurable[[]string], prefix, suffix string) { + modules.AddPostProcessor(func(s []string) []string { + return transformArray(s, prefix, suffix) + }) +} + +func removeAll(s proptools.Configurable[[]string], vs []string) { + s.AddPostProcessor(func(s []string) []string { + a := make([]string, 0, len(s)) + for _, module := range s { + if !slices.Contains(vs, module) { + a = append(a, module) + } + } + return a + }) } func remove(s []string, v string) []string { @@ -605,16 +566,3 @@ func remove(s []string, v string) []string { } return s2 } - -// Defaults -type CombinedApisModuleDefaults struct { - android.ModuleBase - android.DefaultsModuleBase -} - -func CombinedApisModuleDefaultsFactory() android.Module { - module := &CombinedApisModuleDefaults{} - module.AddProperties(&CombinedApisProperties{}) - android.InitDefaultsModule(module) - return module -} diff --git a/api/api_test.go b/api/api_test.go new file mode 100644 index 000000000000..166f053978f2 --- /dev/null +++ b/api/api_test.go @@ -0,0 +1,259 @@ +// Copyright (C) 2024 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 api + +import ( + "android/soong/android" + "android/soong/java" + "fmt" + "testing" + + "github.com/google/blueprint/proptools" +) + +var prepareForTestWithCombinedApis = android.GroupFixturePreparers( + android.FixtureRegisterWithContext(registerBuildComponents), + java.PrepareForTestWithJavaBuildComponents, + android.FixtureAddTextFile("a/Android.bp", gatherRequiredDepsForTest()), + java.PrepareForTestWithJavaSdkLibraryFiles, + android.FixtureMergeMockFs(android.MockFS{ + "a/api/current.txt": nil, + "a/api/removed.txt": nil, + "a/api/system-current.txt": nil, + "a/api/system-removed.txt": nil, + "a/api/test-current.txt": nil, + "a/api/test-removed.txt": nil, + "a/api/module-lib-current.txt": nil, + "a/api/module-lib-removed.txt": nil, + }), + android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) { + variables.Allow_missing_dependencies = proptools.BoolPtr(true) + }), +) + +func gatherRequiredDepsForTest() string { + var bp string + + extraLibraryModules := []string{ + "stable.core.platform.api.stubs", + "core-lambda-stubs", + "core.current.stubs", + "ext", + "framework", + "android_stubs_current", + "android_system_stubs_current", + "android_test_stubs_current", + "android_test_frameworks_core_stubs_current", + "android_module_lib_stubs_current", + "android_system_server_stubs_current", + "android_stubs_current.from-text", + "android_system_stubs_current.from-text", + "android_test_stubs_current.from-text", + "android_test_frameworks_core_stubs_current.from-text", + "android_module_lib_stubs_current.from-text", + "android_system_server_stubs_current.from-text", + "android_stubs_current.from-source", + "android_system_stubs_current.from-source", + "android_test_stubs_current.from-source", + "android_test_frameworks_core_stubs_current.from-source", + "android_module_lib_stubs_current.from-source", + "android_system_server_stubs_current.from-source", + "android_stubs_current_exportable.from-source", + "android_system_stubs_current_exportable.from-source", + "android_test_stubs_current_exportable.from-source", + "android_module_lib_stubs_current_exportable.from-source", + "android_system_server_stubs_current_exportable.from-source", + "stub-annotations", + } + + extraSdkLibraryModules := []string{ + "framework-virtualization", + "framework-location", + } + + extraSystemModules := []string{ + "core-public-stubs-system-modules", + "core-module-lib-stubs-system-modules", + "stable-core-platform-api-stubs-system-modules", + } + + extraFilegroupModules := []string{ + "non-updatable-current.txt", + "non-updatable-removed.txt", + "non-updatable-system-current.txt", + "non-updatable-system-removed.txt", + "non-updatable-test-current.txt", + "non-updatable-test-removed.txt", + "non-updatable-module-lib-current.txt", + "non-updatable-module-lib-removed.txt", + "non-updatable-system-server-current.txt", + "non-updatable-system-server-removed.txt", + "non-updatable-exportable-current.txt", + "non-updatable-exportable-removed.txt", + "non-updatable-exportable-system-current.txt", + "non-updatable-exportable-system-removed.txt", + "non-updatable-exportable-test-current.txt", + "non-updatable-exportable-test-removed.txt", + "non-updatable-exportable-module-lib-current.txt", + "non-updatable-exportable-module-lib-removed.txt", + "non-updatable-exportable-system-server-current.txt", + "non-updatable-exportable-system-server-removed.txt", + } + + for _, extra := range extraLibraryModules { + bp += fmt.Sprintf(` + java_library { + name: "%s", + srcs: ["a.java"], + sdk_version: "none", + system_modules: "stable-core-platform-api-stubs-system-modules", + compile_dex: true, + } + `, extra) + } + + for _, extra := range extraSdkLibraryModules { + bp += fmt.Sprintf(` + java_sdk_library { + name: "%s", + srcs: ["a.java"], + public: { + enabled: true, + }, + system: { + enabled: true, + }, + test: { + enabled: true, + }, + module_lib: { + enabled: true, + }, + api_packages: [ + "foo", + ], + sdk_version: "core_current", + compile_dex: true, + annotations_enabled: true, + } + `, extra) + } + + for _, extra := range extraFilegroupModules { + bp += fmt.Sprintf(` + filegroup { + name: "%[1]s", + } + `, extra) + } + + for _, extra := range extraSystemModules { + bp += fmt.Sprintf(` + java_system_modules { + name: "%[1]s", + libs: ["%[1]s-lib"], + } + java_library { + name: "%[1]s-lib", + sdk_version: "none", + system_modules: "none", + } + `, extra) + } + + bp += fmt.Sprintf(` + java_defaults { + name: "android.jar_defaults", + } + `) + + return bp +} + +func TestCombinedApisDefaults(t *testing.T) { + + result := android.GroupFixturePreparers( + prepareForTestWithCombinedApis, + java.FixtureWithLastReleaseApis( + "framework-location", "framework-virtualization", "framework-foo", "framework-bar"), + android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) { + variables.VendorVars = map[string]map[string]string{ + "boolean_var": { + "for_testing": "true", + }, + } + }), + ).RunTestWithBp(t, ` + java_sdk_library { + name: "framework-foo", + srcs: ["a.java"], + public: { + enabled: true, + }, + system: { + enabled: true, + }, + test: { + enabled: true, + }, + module_lib: { + enabled: true, + }, + api_packages: [ + "foo", + ], + sdk_version: "core_current", + annotations_enabled: true, + } + java_sdk_library { + name: "framework-bar", + srcs: ["a.java"], + public: { + enabled: true, + }, + system: { + enabled: true, + }, + test: { + enabled: true, + }, + module_lib: { + enabled: true, + }, + api_packages: [ + "foo", + ], + sdk_version: "core_current", + annotations_enabled: true, + } + + combined_apis { + name: "foo", + bootclasspath: [ + "framework-bar", + ] + select(boolean_var_for_testing(), { + true: [ + "framework-foo", + ], + default: [], + }), + } + `) + + subModuleDependsOnSelectAppendedModule := java.CheckModuleHasDependency(t, + result.TestContext, "foo-current.txt", "android_common", "framework-foo") + android.AssertBoolEquals(t, "Submodule expected to depend on the select-appended module", + true, subModuleDependsOnSelectAppendedModule) +} diff --git a/api/go.work b/api/go.work index edd002e7efba..c09bee578b61 100644 --- a/api/go.work +++ b/api/go.work @@ -1,17 +1,17 @@ -go 1.18 +go 1.22 use ( . - ../../../build/soong ../../../build/blueprint + ../../../build/soong ../../../external/go-cmp ../../../external/golang-protobuf ) replace ( android/soong v0.0.0 => ../../../build/soong - google.golang.org/protobuf v0.0.0 => ../../../external/golang-protobuf github.com/google/blueprint v0.0.0 => ../../../build/blueprint github.com/google/go-cmp v0.0.0 => ../../../external/go-cmp go.starlark.net v0.0.0 => ../../../external/starlark-go + google.golang.org/protobuf v0.0.0 => ../../../external/golang-protobuf ) diff --git a/boot/Android.bp b/boot/Android.bp index f60bb9e7149a..6eead42a4d30 100644 --- a/boot/Android.bp +++ b/boot/Android.bp @@ -234,7 +234,7 @@ custom_platform_bootclasspath { ], } -genrule { // This module exists to make the srcjar output available to Make. +java_genrule { // This module exists to make the srcjar output available to Make. name: "platform-bootclasspath.srcjar", srcs: [":platform-bootclasspath{.srcjar}"], out: ["platform-bootclasspath.srcjar"], diff --git a/boot/README.md b/boot/README.md new file mode 100644 index 000000000000..d9219c801b7b --- /dev/null +++ b/boot/README.md @@ -0,0 +1,10 @@ +# Configuration files for ART compiling the framework + +* boot-image-profile.txt: A list of methods from the framework boot classpath + to be compiled by dex2oat. The order in the file is not relevant. +* boot-profile.txt: An ordered list of methods from the boot classpath to be + compiled by the JIT in the order provided in the file. Used by JIT zygote, + when on-device signing failed. +* boot-image-profile-extra.txt: An extra list of methods from the framework + boot classpath to be compiled by dex2oat on top of what we have at + boot-image-profile.txt. diff --git a/config/boot-image-profile-extra.txt b/boot/boot-image-profile-extra.txt index e3b187e0a66d..e3b187e0a66d 100644 --- a/config/boot-image-profile-extra.txt +++ b/boot/boot-image-profile-extra.txt diff --git a/boot/boot-image-profile.txt b/boot/boot-image-profile.txt index 1a316120a816..74b2f84b84a5 100644 --- a/boot/boot-image-profile.txt +++ b/boot/boot-image-profile.txt @@ -26,6 +26,7 @@ HSPLandroid/accounts/Account;-><init>(Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/accounts/Account;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/accounts/Account;->equals(Ljava/lang/Object;)Z HSPLandroid/accounts/Account;->hashCode()I +HSPLandroid/accounts/Account;->onAccountAccessed(Ljava/lang/String;)V HSPLandroid/accounts/Account;->toString()Ljava/lang/String; HSPLandroid/accounts/Account;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/accounts/AccountManager$10;-><init>(Landroid/accounts/AccountManager;Landroid/app/Activity;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;Landroid/accounts/Account;Ljava/lang/String;ZLandroid/os/Bundle;)V @@ -52,7 +53,6 @@ HSPLandroid/accounts/AccountManager$AccountKeyData;->equals(Ljava/lang/Object;)Z HSPLandroid/accounts/AccountManager$AccountKeyData;->hashCode()I HSPLandroid/accounts/AccountManager$AmsTask$1;-><init>(Landroid/accounts/AccountManager;)V HSPLandroid/accounts/AccountManager$AmsTask$Response;-><init>(Landroid/accounts/AccountManager$AmsTask;)V -HSPLandroid/accounts/AccountManager$AmsTask$Response;-><init>(Landroid/accounts/AccountManager$AmsTask;Landroid/accounts/AccountManager$AmsTask$Response-IA;)V HSPLandroid/accounts/AccountManager$AmsTask$Response;->onResult(Landroid/os/Bundle;)V HSPLandroid/accounts/AccountManager$AmsTask;-><init>(Landroid/accounts/AccountManager;Landroid/app/Activity;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;)V HSPLandroid/accounts/AccountManager$AmsTask;->done()V @@ -123,19 +123,19 @@ HSPLandroid/accounts/IAccountManagerResponse$Stub;->onTransact(ILandroid/os/Parc HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;-><init>(Landroid/animation/AnimationHandler;)V HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;->doFrame(J)V HSPLandroid/animation/AnimationHandler$1;-><init>(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/AnimationHandler$1;->doFrame(J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider;Landroid/animation/AnimationHandler$MyFrameCallbackProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimationHandler$1;->doFrame(J)V HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;-><init>(Landroid/animation/AnimationHandler;)V HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;->getFrameTime()J HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V HSPLandroid/animation/AnimationHandler;-><init>()V -HSPLandroid/animation/AnimationHandler;->addAnimationFrameCallback(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider;Landroid/animation/AnimationHandler$MyFrameCallbackProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimationHandler;->addAnimationFrameCallback(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)V HSPLandroid/animation/AnimationHandler;->autoCancelBasedOn(Landroid/animation/ObjectAnimator;)V HSPLandroid/animation/AnimationHandler;->cleanUpList()V -HSPLandroid/animation/AnimationHandler;->doAnimationFrame(J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallback;Landroid/animation/AnimatorSet;,Landroid/animation/ValueAnimator;,Lcom/android/internal/dynamicanimation/animation/SpringAnimation;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimationHandler;->doAnimationFrame(J)V HSPLandroid/animation/AnimationHandler;->getAnimationCount()I HSPLandroid/animation/AnimationHandler;->getInstance()Landroid/animation/AnimationHandler; HSPLandroid/animation/AnimationHandler;->getProvider()Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider; -HSPLandroid/animation/AnimationHandler;->isCallbackDue(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/animation/AnimationHandler;->isCallbackDue(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)Z HSPLandroid/animation/AnimationHandler;->isPauseBgAnimationsEnabledInSystemProperties()Z HSPLandroid/animation/AnimationHandler;->removeCallback(Landroid/animation/AnimationHandler$AnimationFrameCallback;)V HSPLandroid/animation/AnimationHandler;->requestAnimatorsEnabled(ZLjava/lang/Object;)V @@ -161,13 +161,13 @@ HSPLandroid/animation/Animator$AnimatorConstantState;-><init>(Landroid/animation HSPLandroid/animation/Animator$AnimatorConstantState;->getChangingConfigurations()I HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Landroid/animation/Animator; HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Ljava/lang/Object; -HSPLandroid/animation/Animator$AnimatorListener;->onAnimationEnd(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types -HSPLandroid/animation/Animator$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types +HSPLandroid/animation/Animator$AnimatorListener;->onAnimationEnd(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;missing_types +HSPLandroid/animation/Animator$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;missing_types HSPLandroid/animation/Animator;-><init>()V -HSPLandroid/animation/Animator;->addListener(Landroid/animation/Animator$AnimatorListener;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/Animator;->addListener(Landroid/animation/Animator$AnimatorListener;)V HSPLandroid/animation/Animator;->addPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V HSPLandroid/animation/Animator;->appendChangingConfigurations(I)V -HSPLandroid/animation/Animator;->callOnList(Ljava/util/ArrayList;Landroid/animation/Animator$AnimatorCaller;Ljava/lang/Object;Z)V+]Landroid/animation/Animator$AnimatorCaller;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; +HSPLandroid/animation/Animator;->callOnList(Ljava/util/ArrayList;Landroid/animation/Animator$AnimatorCaller;Ljava/lang/Object;Z)V HSPLandroid/animation/Animator;->clone()Landroid/animation/Animator; HSPLandroid/animation/Animator;->createConstantState()Landroid/content/res/ConstantState; HSPLandroid/animation/Animator;->getBackgroundPauseDelay()J @@ -176,7 +176,7 @@ HSPLandroid/animation/Animator;->getListeners()Ljava/util/ArrayList; HSPLandroid/animation/Animator;->getStartAndEndTimes(Landroid/util/LongArray;J)V HSPLandroid/animation/Animator;->notifyEndListeners(Z)V HSPLandroid/animation/Animator;->notifyListeners(Landroid/animation/Animator$AnimatorCaller;Z)V -HSPLandroid/animation/Animator;->notifyStartListeners(Z)V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/Animator;->notifyStartListeners(Z)V HSPLandroid/animation/Animator;->pause()V HSPLandroid/animation/Animator;->removeAllListeners()V HSPLandroid/animation/Animator;->removeListener(Landroid/animation/Animator$AnimatorListener;)V @@ -218,19 +218,19 @@ HSPLandroid/animation/AnimatorSet$Node;->addChild(Landroid/animation/AnimatorSet HSPLandroid/animation/AnimatorSet$Node;->addParent(Landroid/animation/AnimatorSet$Node;)V HSPLandroid/animation/AnimatorSet$Node;->addParents(Ljava/util/ArrayList;)V HSPLandroid/animation/AnimatorSet$Node;->addSibling(Landroid/animation/AnimatorSet$Node;)V -HSPLandroid/animation/AnimatorSet$Node;->clone()Landroid/animation/AnimatorSet$Node;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/AnimatorSet$Node;->clone()Landroid/animation/AnimatorSet$Node; HSPLandroid/animation/AnimatorSet$SeekState;-><init>(Landroid/animation/AnimatorSet;)V HSPLandroid/animation/AnimatorSet$SeekState;->getPlayTimeNormalized()J HSPLandroid/animation/AnimatorSet$SeekState;->isActive()Z HSPLandroid/animation/AnimatorSet$SeekState;->reset()V -HSPLandroid/animation/AnimatorSet;-><init>()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimatorSet;-><init>()V HSPLandroid/animation/AnimatorSet;->addAnimationCallback(J)V HSPLandroid/animation/AnimatorSet;->addAnimationEndListener()V HSPLandroid/animation/AnimatorSet;->cancel()V HSPLandroid/animation/AnimatorSet;->clone()Landroid/animation/Animator; -HSPLandroid/animation/AnimatorSet;->clone()Landroid/animation/AnimatorSet;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator;]Landroid/animation/AnimatorSet$Node;Landroid/animation/AnimatorSet$Node;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/AnimatorSet;->createDependencyGraph()V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator;]Landroid/animation/AnimatorSet$AnimationEvent;Landroid/animation/AnimatorSet$AnimationEvent;]Landroid/animation/AnimatorSet$Node;Landroid/animation/AnimatorSet$Node;]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->doAnimationFrame(J)Z+]Landroid/animation/AnimatorSet$SeekState;Landroid/animation/AnimatorSet$SeekState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimatorSet;->clone()Landroid/animation/AnimatorSet; +HSPLandroid/animation/AnimatorSet;->createDependencyGraph()V +HSPLandroid/animation/AnimatorSet;->doAnimationFrame(J)Z HSPLandroid/animation/AnimatorSet;->end()V HSPLandroid/animation/AnimatorSet;->endAnimation()V HSPLandroid/animation/AnimatorSet;->ensureChildStartAndEndTimes()[J @@ -265,7 +265,7 @@ HSPLandroid/animation/AnimatorSet;->setStartDelay(J)V HSPLandroid/animation/AnimatorSet;->setTarget(Ljava/lang/Object;)V HSPLandroid/animation/AnimatorSet;->shouldPlayTogether()Z HSPLandroid/animation/AnimatorSet;->skipToEndValue(Z)V -HSPLandroid/animation/AnimatorSet;->sortAnimationEvents()V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/AnimatorSet;->sortAnimationEvents()V HSPLandroid/animation/AnimatorSet;->start()V HSPLandroid/animation/AnimatorSet;->start(ZZ)V HSPLandroid/animation/AnimatorSet;->startAnimation()V @@ -273,30 +273,30 @@ HSPLandroid/animation/AnimatorSet;->startWithoutPulsing(Z)V HSPLandroid/animation/AnimatorSet;->updateAnimatorsDuration()V HSPLandroid/animation/AnimatorSet;->updatePlayTime(Landroid/animation/AnimatorSet$Node;Ljava/util/ArrayList;)V HSPLandroid/animation/ArgbEvaluator;-><init>()V -HSPLandroid/animation/ArgbEvaluator;->evaluate(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLandroid/animation/ArgbEvaluator;->evaluate(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/animation/ArgbEvaluator;->getInstance()Landroid/animation/ArgbEvaluator; HSPLandroid/animation/FloatKeyframeSet;-><init>([Landroid/animation/Keyframe$FloatKeyframe;)V HSPLandroid/animation/FloatKeyframeSet;->clone()Landroid/animation/FloatKeyframeSet; HSPLandroid/animation/FloatKeyframeSet;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/FloatKeyframeSet;->getFloatValue(F)F+]Landroid/animation/Keyframe$FloatKeyframe;Landroid/animation/Keyframe$FloatKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; +HSPLandroid/animation/FloatKeyframeSet;->getFloatValue(F)F HSPLandroid/animation/FloatKeyframeSet;->getValue(F)Ljava/lang/Object; HSPLandroid/animation/IntKeyframeSet;-><init>([Landroid/animation/Keyframe$IntKeyframe;)V -HSPLandroid/animation/IntKeyframeSet;->clone()Landroid/animation/IntKeyframeSet;+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; +HSPLandroid/animation/IntKeyframeSet;->clone()Landroid/animation/IntKeyframeSet; HSPLandroid/animation/IntKeyframeSet;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/IntKeyframeSet;->getIntValue(F)I+]Landroid/animation/Keyframe$IntKeyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; +HSPLandroid/animation/IntKeyframeSet;->getIntValue(F)I HSPLandroid/animation/Keyframe$FloatKeyframe;-><init>(F)V HSPLandroid/animation/Keyframe$FloatKeyframe;-><init>(FF)V -HSPLandroid/animation/Keyframe$FloatKeyframe;->clone()Landroid/animation/Keyframe$FloatKeyframe;+]Landroid/animation/Keyframe$FloatKeyframe;Landroid/animation/Keyframe$FloatKeyframe; +HSPLandroid/animation/Keyframe$FloatKeyframe;->clone()Landroid/animation/Keyframe$FloatKeyframe; HSPLandroid/animation/Keyframe$FloatKeyframe;->clone()Landroid/animation/Keyframe; HSPLandroid/animation/Keyframe$FloatKeyframe;->getFloatValue()F HSPLandroid/animation/Keyframe$FloatKeyframe;->getValue()Ljava/lang/Object; HSPLandroid/animation/Keyframe$FloatKeyframe;->setValue(Ljava/lang/Object;)V HSPLandroid/animation/Keyframe$IntKeyframe;-><init>(FI)V -HSPLandroid/animation/Keyframe$IntKeyframe;->clone()Landroid/animation/Keyframe$IntKeyframe;+]Landroid/animation/Keyframe$IntKeyframe;Landroid/animation/Keyframe$IntKeyframe; +HSPLandroid/animation/Keyframe$IntKeyframe;->clone()Landroid/animation/Keyframe$IntKeyframe; HSPLandroid/animation/Keyframe$IntKeyframe;->clone()Landroid/animation/Keyframe; HSPLandroid/animation/Keyframe$IntKeyframe;->getIntValue()I HSPLandroid/animation/Keyframe$IntKeyframe;->getValue()Ljava/lang/Object; -HSPLandroid/animation/Keyframe$IntKeyframe;->setValue(Ljava/lang/Object;)V+]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Object;Ljava/lang/Integer; +HSPLandroid/animation/Keyframe$IntKeyframe;->setValue(Ljava/lang/Object;)V HSPLandroid/animation/Keyframe$ObjectKeyframe;-><init>(FLjava/lang/Object;)V HSPLandroid/animation/Keyframe$ObjectKeyframe;->clone()Landroid/animation/Keyframe$ObjectKeyframe; HSPLandroid/animation/Keyframe$ObjectKeyframe;->clone()Landroid/animation/Keyframe; @@ -312,17 +312,17 @@ HSPLandroid/animation/Keyframe;->ofObject(FLjava/lang/Object;)Landroid/animation HSPLandroid/animation/Keyframe;->setInterpolator(Landroid/animation/TimeInterpolator;)V HSPLandroid/animation/Keyframe;->setValueWasSetOnStart(Z)V HSPLandroid/animation/Keyframe;->valueWasSetOnStart()Z -HSPLandroid/animation/KeyframeSet;-><init>([Landroid/animation/Keyframe;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$FloatKeyframe;,Landroid/animation/Keyframe$IntKeyframe;,Landroid/animation/Keyframe$ObjectKeyframe; +HSPLandroid/animation/KeyframeSet;-><init>([Landroid/animation/Keyframe;)V HSPLandroid/animation/KeyframeSet;->clone()Landroid/animation/KeyframeSet; HSPLandroid/animation/KeyframeSet;->clone()Landroid/animation/Keyframes; HSPLandroid/animation/KeyframeSet;->getKeyframes()Ljava/util/List; -HSPLandroid/animation/KeyframeSet;->getValue(F)Ljava/lang/Object;+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$ObjectKeyframe;]Landroid/animation/TypeEvaluator;Landroid/animation/ArgbEvaluator; +HSPLandroid/animation/KeyframeSet;->getValue(F)Ljava/lang/Object; HSPLandroid/animation/KeyframeSet;->ofFloat([F)Landroid/animation/KeyframeSet; HSPLandroid/animation/KeyframeSet;->ofInt([I)Landroid/animation/KeyframeSet; HSPLandroid/animation/KeyframeSet;->ofObject([Ljava/lang/Object;)Landroid/animation/KeyframeSet; HSPLandroid/animation/KeyframeSet;->setEvaluator(Landroid/animation/TypeEvaluator;)V HSPLandroid/animation/LayoutTransition$1;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$2;->onLayoutChange(Landroid/view/View;IIIIIIII)V+]Landroid/animation/Animator;Landroid/animation/ObjectAnimator;]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/lang/Object;Ljava/lang/Integer;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap; +HSPLandroid/animation/LayoutTransition$2;->onLayoutChange(Landroid/view/View;IIIIIIII)V HSPLandroid/animation/LayoutTransition$3;->onAnimationEnd(Landroid/animation/Animator;)V HSPLandroid/animation/LayoutTransition$3;->onAnimationStart(Landroid/animation/Animator;)V HSPLandroid/animation/LayoutTransition$4;->onAnimationEnd(Landroid/animation/Animator;)V @@ -350,20 +350,20 @@ HSPLandroid/animation/LayoutTransition;->setAnimator(ILandroid/animation/Animato HSPLandroid/animation/LayoutTransition;->setDuration(J)V HSPLandroid/animation/LayoutTransition;->setInterpolator(ILandroid/animation/TimeInterpolator;)V HSPLandroid/animation/LayoutTransition;->setStartDelay(IJ)V -HSPLandroid/animation/LayoutTransition;->setupChangeAnimation(Landroid/view/ViewGroup;ILandroid/animation/Animator;JLandroid/view/View;)V+]Landroid/animation/Animator;Landroid/animation/ObjectAnimator;]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/view/View;missing_types]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/animation/LayoutTransition;->setupChangeAnimation(Landroid/view/ViewGroup;ILandroid/animation/Animator;JLandroid/view/View;)V HSPLandroid/animation/LayoutTransition;->showChild(Landroid/view/ViewGroup;Landroid/view/View;I)V HSPLandroid/animation/LayoutTransition;->startChangingAnimations()V HSPLandroid/animation/ObjectAnimator;-><init>()V HSPLandroid/animation/ObjectAnimator;-><init>(Ljava/lang/Object;Landroid/util/Property;)V HSPLandroid/animation/ObjectAnimator;-><init>(Ljava/lang/Object;Ljava/lang/String;)V -HSPLandroid/animation/ObjectAnimator;->animateValue(F)V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; +HSPLandroid/animation/ObjectAnimator;->animateValue(F)V HSPLandroid/animation/ObjectAnimator;->clone()Landroid/animation/Animator; HSPLandroid/animation/ObjectAnimator;->clone()Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->getNameForTrace()Ljava/lang/String;+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/animation/ObjectAnimator;->getPropertyName()Ljava/lang/String;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/animation/ObjectAnimator;->getTarget()Ljava/lang/Object;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/animation/ObjectAnimator;->getNameForTrace()Ljava/lang/String; +HSPLandroid/animation/ObjectAnimator;->getPropertyName()Ljava/lang/String; +HSPLandroid/animation/ObjectAnimator;->getTarget()Ljava/lang/Object; HSPLandroid/animation/ObjectAnimator;->hasSameTargetAndProperties(Landroid/animation/Animator;)Z -HSPLandroid/animation/ObjectAnimator;->initAnimation()V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; +HSPLandroid/animation/ObjectAnimator;->initAnimation()V HSPLandroid/animation/ObjectAnimator;->isInitialized()Z HSPLandroid/animation/ObjectAnimator;->ofFloat(Ljava/lang/Object;Landroid/util/Property;[F)Landroid/animation/ObjectAnimator; HSPLandroid/animation/ObjectAnimator;->ofFloat(Ljava/lang/Object;Ljava/lang/String;[F)Landroid/animation/ObjectAnimator; @@ -381,7 +381,7 @@ HSPLandroid/animation/ObjectAnimator;->setIntValues([I)V HSPLandroid/animation/ObjectAnimator;->setObjectValues([Ljava/lang/Object;)V HSPLandroid/animation/ObjectAnimator;->setProperty(Landroid/util/Property;)V HSPLandroid/animation/ObjectAnimator;->setPropertyName(Ljava/lang/String;)V -HSPLandroid/animation/ObjectAnimator;->setTarget(Ljava/lang/Object;)V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator; +HSPLandroid/animation/ObjectAnimator;->setTarget(Ljava/lang/Object;)V HSPLandroid/animation/ObjectAnimator;->setupEndValues()V HSPLandroid/animation/ObjectAnimator;->setupStartValues()V HSPLandroid/animation/ObjectAnimator;->shouldAutoCancel(Landroid/animation/AnimationHandler$AnimationFrameCallback;)Z @@ -398,36 +398,36 @@ HSPLandroid/animation/PathKeyframes;->interpolateInRange(FII)Landroid/graphics/P HSPLandroid/animation/PropertyValuesHolder$1;->getValueAtFraction(F)Ljava/lang/Object; HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;-><init>(Landroid/util/Property;[F)V HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;-><init>(Ljava/lang/String;[F)V -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->calculateValue(F)V+]Landroid/animation/Keyframes$FloatKeyframes;Landroid/animation/FloatKeyframeSet; +HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->calculateValue(F)V HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V+]Landroid/util/FloatProperty;Landroid/view/View$12;,Landroid/view/View$13;]Landroid/util/Property;missing_types +HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setFloatValues([F)V HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setProperty(Landroid/util/Property;)V HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setupSetter(Ljava/lang/Class;)V HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;-><init>(Ljava/lang/String;[I)V HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->calculateValue(F)V HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder;+]Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder; +HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setIntValues([I)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setupSetter(Ljava/lang/Class;)V+]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setupSetter(Ljava/lang/Class;)V HSPLandroid/animation/PropertyValuesHolder$PropertyValues;-><init>()V HSPLandroid/animation/PropertyValuesHolder;-><init>(Landroid/util/Property;)V HSPLandroid/animation/PropertyValuesHolder;-><init>(Ljava/lang/String;)V HSPLandroid/animation/PropertyValuesHolder;-><init>(Ljava/lang/String;Landroid/animation/PropertyValuesHolder-IA;)V HSPLandroid/animation/PropertyValuesHolder;->calculateValue(F)V -HSPLandroid/animation/PropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder;+]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;,Landroid/animation/IntKeyframeSet;,Landroid/animation/KeyframeSet; +HSPLandroid/animation/PropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder;->convertBack(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/animation/PropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; HSPLandroid/animation/PropertyValuesHolder;->getMethodName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; HSPLandroid/animation/PropertyValuesHolder;->getPropertyFunction(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method; HSPLandroid/animation/PropertyValuesHolder;->getPropertyName()Ljava/lang/String; -HSPLandroid/animation/PropertyValuesHolder;->getPropertyValues(Landroid/animation/PropertyValuesHolder$PropertyValues;)V+]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;]Ljava/util/List;Ljava/util/Arrays$ArrayList; +HSPLandroid/animation/PropertyValuesHolder;->getPropertyValues(Landroid/animation/PropertyValuesHolder$PropertyValues;)V HSPLandroid/animation/PropertyValuesHolder;->getValueType()Ljava/lang/Class; -HSPLandroid/animation/PropertyValuesHolder;->init()V+]Landroid/animation/Keyframes;Landroid/animation/KeyframeSet; +HSPLandroid/animation/PropertyValuesHolder;->init()V HSPLandroid/animation/PropertyValuesHolder;->ofFloat(Landroid/util/Property;[F)Landroid/animation/PropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder; HSPLandroid/animation/PropertyValuesHolder;->ofInt(Ljava/lang/String;[I)Landroid/animation/PropertyValuesHolder; @@ -440,12 +440,12 @@ HSPLandroid/animation/PropertyValuesHolder;->setIntValues([I)V HSPLandroid/animation/PropertyValuesHolder;->setObjectValues([Ljava/lang/Object;)V HSPLandroid/animation/PropertyValuesHolder;->setProperty(Landroid/util/Property;)V HSPLandroid/animation/PropertyValuesHolder;->setPropertyName(Ljava/lang/String;)V -HSPLandroid/animation/PropertyValuesHolder;->setupEndValue(Ljava/lang/Object;)V+]Landroid/animation/Keyframes;Landroid/animation/IntKeyframeSet;]Ljava/util/List;Ljava/util/Arrays$ArrayList; +HSPLandroid/animation/PropertyValuesHolder;->setupEndValue(Ljava/lang/Object;)V HSPLandroid/animation/PropertyValuesHolder;->setupGetter(Ljava/lang/Class;)V -HSPLandroid/animation/PropertyValuesHolder;->setupSetterAndGetter(Ljava/lang/Object;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$FloatKeyframe;,Landroid/animation/Keyframe$IntKeyframe;,Landroid/animation/Keyframe$ObjectKeyframe;]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;,Landroid/animation/IntKeyframeSet;,Landroid/animation/KeyframeSet;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;]Ljava/lang/Object;missing_types]Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->setupSetterOrGetter(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;+]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/PropertyValuesHolder;->setupStartValue(Ljava/lang/Object;)V+]Landroid/animation/Keyframes;Landroid/animation/IntKeyframeSet;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->setupValue(Ljava/lang/Object;Landroid/animation/Keyframe;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/lang/Object;missing_types]Ljava/lang/reflect/Method;Ljava/lang/reflect/Method; +HSPLandroid/animation/PropertyValuesHolder;->setupSetterAndGetter(Ljava/lang/Object;)V +HSPLandroid/animation/PropertyValuesHolder;->setupSetterOrGetter(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method; +HSPLandroid/animation/PropertyValuesHolder;->setupStartValue(Ljava/lang/Object;)V +HSPLandroid/animation/PropertyValuesHolder;->setupValue(Ljava/lang/Object;Landroid/animation/Keyframe;)V HSPLandroid/animation/StateListAnimator$1;-><init>(Landroid/animation/StateListAnimator;)V HSPLandroid/animation/StateListAnimator$1;->onAnimationEnd(Landroid/animation/Animator;)V HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;-><init>(Landroid/animation/StateListAnimator;)V @@ -453,10 +453,10 @@ HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;->newInst HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;->newInstance()Ljava/lang/Object; HSPLandroid/animation/StateListAnimator$Tuple;-><init>([ILandroid/animation/Animator;)V HSPLandroid/animation/StateListAnimator;-><init>()V -HSPLandroid/animation/StateListAnimator;->addState([ILandroid/animation/Animator;)V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/StateListAnimator;->addState([ILandroid/animation/Animator;)V HSPLandroid/animation/StateListAnimator;->appendChangingConfigurations(I)V HSPLandroid/animation/StateListAnimator;->clearTarget()V -HSPLandroid/animation/StateListAnimator;->clone()Landroid/animation/StateListAnimator;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/animation/StateListAnimator;->clone()Landroid/animation/StateListAnimator; HSPLandroid/animation/StateListAnimator;->createConstantState()Landroid/content/res/ConstantState; HSPLandroid/animation/StateListAnimator;->getChangingConfigurations()I HSPLandroid/animation/StateListAnimator;->getTarget()Landroid/view/View; @@ -471,18 +471,18 @@ HSPLandroid/animation/TimeAnimator;->setTimeListener(Landroid/animation/TimeAnim HSPLandroid/animation/ValueAnimator;-><init>()V HSPLandroid/animation/ValueAnimator;->addAnimationCallback(J)V HSPLandroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V -HSPLandroid/animation/ValueAnimator;->animateBasedOnTime(J)Z+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->animateValue(F)V+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Landroid/animation/TimeInterpolator;missing_types]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->animateBasedOnTime(J)Z +HSPLandroid/animation/ValueAnimator;->animateValue(F)V HSPLandroid/animation/ValueAnimator;->areAnimatorsEnabled()Z HSPLandroid/animation/ValueAnimator;->cancel()V HSPLandroid/animation/ValueAnimator;->clampFraction(F)F HSPLandroid/animation/ValueAnimator;->clone()Landroid/animation/Animator; -HSPLandroid/animation/ValueAnimator;->clone()Landroid/animation/ValueAnimator;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/ValueAnimator;->doAnimationFrame(J)Z+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->clone()Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->doAnimationFrame(J)Z HSPLandroid/animation/ValueAnimator;->end()V -HSPLandroid/animation/ValueAnimator;->endAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->endAnimation()V HSPLandroid/animation/ValueAnimator;->getAnimatedFraction()F -HSPLandroid/animation/ValueAnimator;->getAnimatedValue()Ljava/lang/Object;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; +HSPLandroid/animation/ValueAnimator;->getAnimatedValue()Ljava/lang/Object; HSPLandroid/animation/ValueAnimator;->getAnimationHandler()Landroid/animation/AnimationHandler; HSPLandroid/animation/ValueAnimator;->getCurrentAnimationsCount()I HSPLandroid/animation/ValueAnimator;->getCurrentIteration(F)I @@ -513,25 +513,25 @@ HSPLandroid/animation/ValueAnimator;->removeAnimationCallback()V HSPLandroid/animation/ValueAnimator;->resolveDurationScale()F HSPLandroid/animation/ValueAnimator;->setAllowRunningAsynchronously(Z)V HSPLandroid/animation/ValueAnimator;->setAnimationHandler(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/ValueAnimator;->setCurrentFraction(F)V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->setCurrentFraction(F)V HSPLandroid/animation/ValueAnimator;->setCurrentPlayTime(J)V HSPLandroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/Animator; HSPLandroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; HSPLandroid/animation/ValueAnimator;->setDurationScale(F)V HSPLandroid/animation/ValueAnimator;->setEvaluator(Landroid/animation/TypeEvaluator;)V -HSPLandroid/animation/ValueAnimator;->setFloatValues([F)V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->setFloatValues([F)V HSPLandroid/animation/ValueAnimator;->setIntValues([I)V HSPLandroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V HSPLandroid/animation/ValueAnimator;->setObjectValues([Ljava/lang/Object;)V HSPLandroid/animation/ValueAnimator;->setRepeatCount(I)V HSPLandroid/animation/ValueAnimator;->setRepeatMode(I)V HSPLandroid/animation/ValueAnimator;->setStartDelay(J)V -HSPLandroid/animation/ValueAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/animation/ValueAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V HSPLandroid/animation/ValueAnimator;->shouldPlayBackward(IZ)Z HSPLandroid/animation/ValueAnimator;->skipToEndValue(Z)V HSPLandroid/animation/ValueAnimator;->start()V -HSPLandroid/animation/ValueAnimator;->start(Z)V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->startAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; +HSPLandroid/animation/ValueAnimator;->start(Z)V +HSPLandroid/animation/ValueAnimator;->startAnimation()V HSPLandroid/animation/ValueAnimator;->startWithoutPulsing(Z)V HSPLandroid/app/Activity$1;-><init>(Landroid/app/Activity;)V HSPLandroid/app/Activity$1;->isTaskRoot()Z @@ -545,7 +545,7 @@ HSPLandroid/app/Activity;-><init>()V HSPLandroid/app/Activity;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Landroid/app/Instrumentation;Landroid/os/IBinder;ILandroid/app/Application;Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Ljava/lang/CharSequence;Landroid/app/Activity;Ljava/lang/String;Landroid/app/Activity$NonConfigurationInstances;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;Landroid/os/IBinder;Landroid/os/IBinder;)V HSPLandroid/app/Activity;->attachBaseContext(Landroid/content/Context;)V HSPLandroid/app/Activity;->cancelInputsAndStartExitTransition(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->collectActivityLifecycleCallbacks()[Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/Activity;->collectActivityLifecycleCallbacks()[Ljava/lang/Object; HSPLandroid/app/Activity;->dispatchActivityCreated(Landroid/os/Bundle;)V HSPLandroid/app/Activity;->dispatchActivityPostCreated(Landroid/os/Bundle;)V HSPLandroid/app/Activity;->dispatchActivityPostResumed()V @@ -608,7 +608,7 @@ HSPLandroid/app/Activity;->onCreate(Landroid/os/Bundle;)V HSPLandroid/app/Activity;->onCreateDescription()Ljava/lang/CharSequence; HSPLandroid/app/Activity;->onCreateOptionsMenu(Landroid/view/Menu;)Z HSPLandroid/app/Activity;->onCreatePanelMenu(ILandroid/view/Menu;)Z -HSPLandroid/app/Activity;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View;+]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/app/Activity;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/app/Activity;->onCreateView(Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/app/Activity;->onDestroy()V HSPLandroid/app/Activity;->onDetachedFromWindow()V @@ -689,10 +689,10 @@ HSPLandroid/app/ActivityClient;->activityResumed(Landroid/os/IBinder;Z)V HSPLandroid/app/ActivityClient;->activityStopped(Landroid/os/IBinder;Landroid/os/Bundle;Landroid/os/PersistableBundle;Ljava/lang/CharSequence;)V HSPLandroid/app/ActivityClient;->activityTopResumedStateLost()V HSPLandroid/app/ActivityClient;->finishActivity(Landroid/os/IBinder;ILandroid/content/Intent;I)Z -HSPLandroid/app/ActivityClient;->getActivityClientController()Landroid/app/IActivityClientController;+]Landroid/app/ActivityClient$ActivityClientControllerSingleton;Landroid/app/ActivityClient$ActivityClientControllerSingleton; +HSPLandroid/app/ActivityClient;->getActivityClientController()Landroid/app/IActivityClientController; HSPLandroid/app/ActivityClient;->getCallingActivity(Landroid/os/IBinder;)Landroid/content/ComponentName; HSPLandroid/app/ActivityClient;->getDisplayId(Landroid/os/IBinder;)I -HSPLandroid/app/ActivityClient;->getInstance()Landroid/app/ActivityClient;+]Landroid/util/Singleton;Landroid/app/ActivityClient$1; +HSPLandroid/app/ActivityClient;->getInstance()Landroid/app/ActivityClient; HSPLandroid/app/ActivityClient;->getTaskForActivity(Landroid/os/IBinder;Z)I HSPLandroid/app/ActivityClient;->overridePendingTransition(Landroid/os/IBinder;Ljava/lang/String;III)V HSPLandroid/app/ActivityClient;->reportActivityFullyDrawn(Landroid/os/IBinder;Z)V @@ -700,8 +700,6 @@ HSPLandroid/app/ActivityClient;->reportSizeConfigurations(Landroid/os/IBinder;La HSPLandroid/app/ActivityClient;->setActivityClientController(Landroid/app/IActivityClientController;)Landroid/app/IActivityClientController; HSPLandroid/app/ActivityClient;->setRequestedOrientation(Landroid/os/IBinder;I)V HSPLandroid/app/ActivityClient;->setTaskDescription(Landroid/os/IBinder;Landroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/ActivityManager$3;->create()Landroid/app/IActivityManager; -HSPLandroid/app/ActivityManager$3;->create()Ljava/lang/Object; HSPLandroid/app/ActivityManager$AppTask;->getTaskInfo()Landroid/app/ActivityManager$RecentTaskInfo; HSPLandroid/app/ActivityManager$MemoryInfo;-><init>()V HSPLandroid/app/ActivityManager$MemoryInfo;->readFromParcel(Landroid/os/Parcel;)V @@ -716,7 +714,6 @@ HSPLandroid/app/ActivityManager$RunningAppProcessInfo$1;->createFromParcel(Landr HSPLandroid/app/ActivityManager$RunningAppProcessInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>()V HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>(Landroid/os/Parcel;Landroid/app/ActivityManager$RunningAppProcessInfo-IA;)V HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->importanceToProcState(I)I HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->procStateToImportance(I)I HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->procStateToImportanceForClient(ILandroid/content/Context;)I @@ -826,7 +823,6 @@ HSPLandroid/app/ActivityThread$AppBindData;-><init>()V HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;-><init>()V HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;)V HSPLandroid/app/ActivityThread$ApplicationThread;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$ApplicationThread;-><init>(Landroid/app/ActivityThread;Landroid/app/ActivityThread$ApplicationThread-IA;)V HSPLandroid/app/ActivityThread$ApplicationThread;->clearDnsCache()V HSPLandroid/app/ActivityThread$ApplicationThread;->dispatchPackageBroadcast(I[Ljava/lang/String;)V HSPLandroid/app/ActivityThread$ApplicationThread;->dumpCacheInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V @@ -870,7 +866,6 @@ HSPLandroid/app/ActivityThread$GcIdler;->queueIdle()Z HSPLandroid/app/ActivityThread$H;-><init>(Landroid/app/ActivityThread;)V HSPLandroid/app/ActivityThread$H;->handleMessage(Landroid/os/Message;)V HSPLandroid/app/ActivityThread$Idler;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$Idler;-><init>(Landroid/app/ActivityThread;Landroid/app/ActivityThread$Idler-IA;)V HSPLandroid/app/ActivityThread$Idler;->queueIdle()Z HSPLandroid/app/ActivityThread$Profiler;-><init>()V HSPLandroid/app/ActivityThread$ProviderKey;-><init>(Ljava/lang/String;I)V @@ -924,8 +919,8 @@ HSPLandroid/app/ActivityThread;->deliverNewIntents(Landroid/app/ActivityThread$A HSPLandroid/app/ActivityThread;->deliverResults(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/util/List;Ljava/lang/String;)V HSPLandroid/app/ActivityThread;->dumpMemoryInfo(Landroid/util/proto/ProtoOutputStream;JLjava/lang/String;IIIIIIZIII)V HSPLandroid/app/ActivityThread;->getActivitiesToBeDestroyed()Ljava/util/Map; -HSPLandroid/app/ActivityThread;->getActivity(Landroid/os/IBinder;)Landroid/app/Activity;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/app/ActivityThread;->getActivityClient(Landroid/os/IBinder;)Landroid/app/ActivityThread$ActivityClientRecord;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/app/ActivityThread;->getActivity(Landroid/os/IBinder;)Landroid/app/Activity; +HSPLandroid/app/ActivityThread;->getActivityClient(Landroid/os/IBinder;)Landroid/app/ActivityThread$ActivityClientRecord; HSPLandroid/app/ActivityThread;->getApplication()Landroid/app/Application; HSPLandroid/app/ActivityThread;->getApplicationThread()Landroid/app/ActivityThread$ApplicationThread; HSPLandroid/app/ActivityThread;->getBackupAgentName(Landroid/app/ActivityThread$CreateBackupAgentData;)Ljava/lang/String; @@ -1000,7 +995,7 @@ HSPLandroid/app/ActivityThread;->isSystem()Z HSPLandroid/app/ActivityThread;->main([Ljava/lang/String;)V HSPLandroid/app/ActivityThread;->onCoreSettingsChange()V HSPLandroid/app/ActivityThread;->peekPackageInfo(Ljava/lang/String;Z)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->performLaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/content/Intent;)Landroid/app/Activity;+]Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/ActivityThread$ActivityClientRecord;]Landroid/app/ActivityThread;Landroid/app/ActivityThread;]Landroid/app/ConfigurationController;Landroid/app/ConfigurationController;]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/app/Instrumentation;Landroid/app/Instrumentation;]Landroid/app/LoadedApk;Landroid/app/LoadedApk;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/List;Ljava/util/Collections$EmptyList; +HSPLandroid/app/ActivityThread;->performLaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/content/Intent;)Landroid/app/Activity; HSPLandroid/app/ActivityThread;->performPauseActivity(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;Landroid/app/servertransaction/PendingTransactionActions;)Landroid/os/Bundle; HSPLandroid/app/ActivityThread;->performPauseActivityIfNeeded(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/lang/String;)V HSPLandroid/app/ActivityThread;->performRestartActivity(Landroid/app/ActivityThread$ActivityClientRecord;Z)V @@ -1126,7 +1121,7 @@ HSPLandroid/app/AppOpsManager;->opToDefaultMode(I)I HSPLandroid/app/AppOpsManager;->opToPermission(I)Ljava/lang/String; HSPLandroid/app/AppOpsManager;->opToPublicName(I)Ljava/lang/String; HSPLandroid/app/AppOpsManager;->opToSwitch(I)I -HSPLandroid/app/AppOpsManager;->pauseNotedAppOpsCollection()Landroid/app/AppOpsManager$PausedNotedAppOpsCollection;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; +HSPLandroid/app/AppOpsManager;->pauseNotedAppOpsCollection()Landroid/app/AppOpsManager$PausedNotedAppOpsCollection; HSPLandroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/app/AppOpsManager;->permissionToOpCode(Ljava/lang/String;)I HSPLandroid/app/AppOpsManager;->prefixParcelWithAppOpsIfNeeded(Landroid/os/Parcel;)V @@ -1164,7 +1159,7 @@ HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreStarted(La HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreStopped(Landroid/app/Activity;)V HSPLandroid/app/Application;-><init>()V HSPLandroid/app/Application;->attach(Landroid/content/Context;)V -HSPLandroid/app/Application;->collectActivityLifecycleCallbacks()[Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/Application;->collectActivityLifecycleCallbacks()[Ljava/lang/Object; HSPLandroid/app/Application;->dispatchActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V HSPLandroid/app/Application;->dispatchActivityDestroyed(Landroid/app/Activity;)V HSPLandroid/app/Application;->dispatchActivityPaused(Landroid/app/Activity;)V @@ -1210,7 +1205,6 @@ HSPLandroid/app/ApplicationExitInfo;->getRss()J HSPLandroid/app/ApplicationExitInfo;->getStatus()I HSPLandroid/app/ApplicationExitInfo;->getTimestamp()J HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>()V -HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>(Landroid/app/ApplicationLoaders$CachedClassLoader-IA;)V HSPLandroid/app/ApplicationLoaders;->addNative(Ljava/lang/ClassLoader;Ljava/util/Collection;)V HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoader(Landroid/content/pm/SharedLibraryInfo;)V HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoaders(Ljava/util/List;)V @@ -1235,6 +1229,7 @@ HSPLandroid/app/ApplicationPackageManager$HasSystemFeatureQuery;->hashCode()I HSPLandroid/app/ApplicationPackageManager$ResourceName;-><init>(Ljava/lang/String;I)V HSPLandroid/app/ApplicationPackageManager$ResourceName;->equals(Ljava/lang/Object;)Z HSPLandroid/app/ApplicationPackageManager$ResourceName;->hashCode()I +HSPLandroid/app/ApplicationPackageManager;-><init>(Landroid/app/ContextImpl;Landroid/content/pm/IPackageManager;)V HSPLandroid/app/ApplicationPackageManager;->addOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V HSPLandroid/app/ApplicationPackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I HSPLandroid/app/ApplicationPackageManager;->checkSignatures(II)I @@ -1264,7 +1259,7 @@ HSPLandroid/app/ApplicationPackageManager;->getInstalledPackages(Landroid/conten HSPLandroid/app/ApplicationPackageManager;->getInstalledPackagesAsUser(II)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->getInstalledPackagesAsUser(Landroid/content/pm/PackageManager$PackageInfoFlags;I)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->getInstallerPackageName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getLaunchIntentForPackage(Ljava/lang/String;)Landroid/content/Intent;+]Landroid/app/ApplicationPackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/app/ApplicationPackageManager;->getLaunchIntentForPackage(Ljava/lang/String;)Landroid/content/Intent; HSPLandroid/app/ApplicationPackageManager;->getModuleInfo(Ljava/lang/String;I)Landroid/content/pm/ModuleInfo; HSPLandroid/app/ApplicationPackageManager;->getNameForUid(I)Ljava/lang/String; HSPLandroid/app/ApplicationPackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo; @@ -1323,7 +1318,7 @@ HSPLandroid/app/ApplicationPackageManager;->queryBroadcastReceiversAsUser(Landro HSPLandroid/app/ApplicationPackageManager;->queryIntentActivities(Landroid/content/Intent;I)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->queryIntentActivities(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List;+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/content/pm/PackageManager$ResolveInfoFlags;Landroid/content/pm/PackageManager$ResolveInfoFlags;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice; +HSPLandroid/app/ApplicationPackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProviders(Landroid/content/Intent;I)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProviders(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProvidersAsUser(Landroid/content/Intent;II)Ljava/util/List; @@ -1411,7 +1406,7 @@ HSPLandroid/app/ContextImpl$ApplicationContentResolver;->releaseProvider(Landroi HSPLandroid/app/ContextImpl$ApplicationContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z HSPLandroid/app/ContextImpl$ApplicationContentResolver;->resolveUserIdFromAuthority(Ljava/lang/String;)I HSPLandroid/app/ContextImpl$ApplicationContentResolver;->unstableProviderDied(Landroid/content/IContentProvider;)V -HSPLandroid/app/ContextImpl;-><init>(Landroid/app/ContextImpl;Landroid/app/ActivityThread;Landroid/app/LoadedApk;Landroid/content/ContextParams;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;Landroid/os/IBinder;Landroid/os/UserHandle;ILjava/lang/ClassLoader;Ljava/lang/String;IZ)V+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/app/LoadedApk;Landroid/app/LoadedApk;]Landroid/content/ContextParams;Landroid/content/ContextParams; +HSPLandroid/app/ContextImpl;-><init>(Landroid/app/ContextImpl;Landroid/app/ActivityThread;Landroid/app/LoadedApk;Landroid/content/ContextParams;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;Landroid/os/IBinder;Landroid/os/UserHandle;ILjava/lang/ClassLoader;Ljava/lang/String;IZ)V HSPLandroid/app/ContextImpl;->bindIsolatedService(Landroid/content/Intent;ILjava/lang/String;Ljava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z HSPLandroid/app/ContextImpl;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z HSPLandroid/app/ContextImpl;->bindServiceAsUser(Landroid/content/Intent;Landroid/content/ServiceConnection;ILandroid/os/Handler;Landroid/os/UserHandle;)Z @@ -1431,7 +1426,7 @@ HSPLandroid/app/ContextImpl;->createAppContext(Landroid/app/ActivityThread;Landr HSPLandroid/app/ContextImpl;->createAppContext(Landroid/app/ActivityThread;Landroid/app/LoadedApk;Ljava/lang/String;)Landroid/app/ContextImpl; HSPLandroid/app/ContextImpl;->createApplicationContext(Landroid/content/pm/ApplicationInfo;I)Landroid/content/Context; HSPLandroid/app/ContextImpl;->createAttributionContext(Ljava/lang/String;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createAttributionSource(Ljava/lang/String;Landroid/content/AttributionSource;Ljava/util/Set;ZI)Landroid/content/AttributionSource;+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/permission/PermissionManager;Landroid/permission/PermissionManager;]Ljava/util/Set;missing_types +HSPLandroid/app/ContextImpl;->createAttributionSource(Ljava/lang/String;Landroid/content/AttributionSource;Ljava/util/Set;ZI)Landroid/content/AttributionSource; HSPLandroid/app/ContextImpl;->createConfigurationContext(Landroid/content/res/Configuration;)Landroid/content/Context; HSPLandroid/app/ContextImpl;->createContext(Landroid/content/ContextParams;)Landroid/content/Context; HSPLandroid/app/ContextImpl;->createContextAsUser(Landroid/os/UserHandle;I)Landroid/content/Context; @@ -1466,7 +1461,7 @@ HSPLandroid/app/ContextImpl;->fileList()[Ljava/lang/String; HSPLandroid/app/ContextImpl;->finalize()V HSPLandroid/app/ContextImpl;->getActivityToken()Landroid/os/IBinder; HSPLandroid/app/ContextImpl;->getApplicationContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;+]Landroid/app/LoadedApk;Landroid/app/LoadedApk; +HSPLandroid/app/ContextImpl;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; HSPLandroid/app/ContextImpl;->getAssets()Landroid/content/res/AssetManager; HSPLandroid/app/ContextImpl;->getAssociatedDisplayId()I HSPLandroid/app/ContextImpl;->getAttributionSource()Landroid/content/AttributionSource; @@ -1537,6 +1532,7 @@ HSPLandroid/app/ContextImpl;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOu HSPLandroid/app/ContextImpl;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase; HSPLandroid/app/ContextImpl;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;)Landroid/database/sqlite/SQLiteDatabase; HSPLandroid/app/ContextImpl;->performFinalCleanup(Ljava/lang/String;Ljava/lang/String;)V +HSPLandroid/app/ContextImpl;->registerAttributionSourceIfNeeded(Landroid/content/AttributionSource;Z)Landroid/content/AttributionSource; HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent; HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;I)Landroid/content/Intent; HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; @@ -1733,13 +1729,13 @@ HSPLandroid/app/FragmentManagerImpl;->addAddedFragments(Landroid/util/ArraySet;) HSPLandroid/app/FragmentManagerImpl;->addFragment(Landroid/app/Fragment;Z)V HSPLandroid/app/FragmentManagerImpl;->attachController(Landroid/app/FragmentHostCallback;Landroid/app/FragmentContainer;Landroid/app/Fragment;)V HSPLandroid/app/FragmentManagerImpl;->beginTransaction()Landroid/app/FragmentTransaction; -HSPLandroid/app/FragmentManagerImpl;->burpActive()V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/app/FragmentManagerImpl;->burpActive()V HSPLandroid/app/FragmentManagerImpl;->checkStateLoss()V HSPLandroid/app/FragmentManagerImpl;->cleanupExec()V HSPLandroid/app/FragmentManagerImpl;->dispatchActivityCreated()V HSPLandroid/app/FragmentManagerImpl;->dispatchCreate()V HSPLandroid/app/FragmentManagerImpl;->dispatchCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z -HSPLandroid/app/FragmentManagerImpl;->dispatchMoveToState(I)V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl; +HSPLandroid/app/FragmentManagerImpl;->dispatchMoveToState(I)V HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentActivityCreated(Landroid/app/Fragment;Landroid/os/Bundle;Z)V HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentAttached(Landroid/app/Fragment;Landroid/content/Context;Z)V HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentCreated(Landroid/app/Fragment;Landroid/os/Bundle;Z)V @@ -1762,9 +1758,9 @@ HSPLandroid/app/FragmentManagerImpl;->dispatchStop()V HSPLandroid/app/FragmentManagerImpl;->doPendingDeferredStart()V HSPLandroid/app/FragmentManagerImpl;->endAnimatingAwayFragments()V HSPLandroid/app/FragmentManagerImpl;->enqueueAction(Landroid/app/FragmentManagerImpl$OpGenerator;Z)V -HSPLandroid/app/FragmentManagerImpl;->ensureExecReady(Z)V+]Landroid/app/FragmentHostCallback;Landroid/app/Activity$HostCallbacks;]Landroid/os/Handler;Landroid/os/Handler; +HSPLandroid/app/FragmentManagerImpl;->ensureExecReady(Z)V HSPLandroid/app/FragmentManagerImpl;->ensureInflatedFragmentView(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->execPendingActions()Z+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl; +HSPLandroid/app/FragmentManagerImpl;->execPendingActions()Z HSPLandroid/app/FragmentManagerImpl;->executeOps(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V HSPLandroid/app/FragmentManagerImpl;->executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V HSPLandroid/app/FragmentManagerImpl;->executePendingTransactions()Z @@ -1782,9 +1778,9 @@ HSPLandroid/app/FragmentManagerImpl;->makeActive(Landroid/app/Fragment;)V HSPLandroid/app/FragmentManagerImpl;->makeInactive(Landroid/app/Fragment;)V HSPLandroid/app/FragmentManagerImpl;->makeRemovedFragmentsInvisible(Landroid/util/ArraySet;)V HSPLandroid/app/FragmentManagerImpl;->moveFragmentToExpectedState(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->moveToState(IZ)V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/FragmentManagerImpl;->moveToState(IZ)V HSPLandroid/app/FragmentManagerImpl;->moveToState(Landroid/app/Fragment;IIIZ)V -HSPLandroid/app/FragmentManagerImpl;->noteStateNotSaved()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/FragmentManagerImpl;->noteStateNotSaved()V HSPLandroid/app/FragmentManagerImpl;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/app/FragmentManagerImpl;->performPendingDeferredStart(Landroid/app/Fragment;)V HSPLandroid/app/FragmentManagerImpl;->popBackStackImmediate()Z @@ -1798,7 +1794,7 @@ HSPLandroid/app/FragmentManagerImpl;->saveFragmentBasicState(Landroid/app/Fragme HSPLandroid/app/FragmentManagerImpl;->saveNonConfig()V HSPLandroid/app/FragmentManagerImpl;->scheduleCommit()V HSPLandroid/app/FragmentManagerImpl;->setRetaining(Landroid/app/FragmentManagerNonConfig;)V -HSPLandroid/app/FragmentManagerImpl;->startPendingDeferredFragments()V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/app/FragmentManagerImpl;->startPendingDeferredFragments()V HSPLandroid/app/FragmentManagerState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/FragmentManagerState; HSPLandroid/app/FragmentManagerState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/FragmentManagerState;-><init>(Landroid/os/Parcel;)V @@ -1815,7 +1811,6 @@ HSPLandroid/app/FragmentTransaction;-><init>()V HSPLandroid/app/FragmentTransition;->addToFirstInLastOut(Landroid/app/BackStackRecord;Landroid/app/BackStackRecord$Op;Landroid/util/SparseArray;ZZ)V HSPLandroid/app/FragmentTransition;->calculateFragments(Landroid/app/BackStackRecord;Landroid/util/SparseArray;Z)V HSPLandroid/app/FragmentTransition;->startTransitions(Landroid/app/FragmentManagerImpl;Ljava/util/ArrayList;Ljava/util/ArrayList;IIZ)V -HSPLandroid/app/GameManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V HSPLandroid/app/GameManager;->isAngleEnabled(Ljava/lang/String;)Z HSPLandroid/app/IActivityClientController$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityDestroyed(Landroid/os/IBinder;)V @@ -1841,10 +1836,10 @@ HSPLandroid/app/IActivityManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; HSPLandroid/app/IActivityManager$Stub$Proxy;->attachApplication(Landroid/app/IApplicationThread;J)V HSPLandroid/app/IActivityManager$Stub$Proxy;->backupAgentCreated(Ljava/lang/String;Landroid/os/IBinder;I)V HSPLandroid/app/IActivityManager$Stub$Proxy;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;Ljava/lang/String;I)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/IActivityManager$Stub$Proxy;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I HSPLandroid/app/IActivityManager$Stub$Proxy;->cancelIntentSender(Landroid/content/IIntentSender;)V HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermission(Ljava/lang/String;II)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermissionForDevice(Ljava/lang/String;III)I+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermissionForDevice(Ljava/lang/String;III)I HSPLandroid/app/IActivityManager$Stub$Proxy;->checkUriPermission(Landroid/net/Uri;IIIILandroid/os/IBinder;)I HSPLandroid/app/IActivityManager$Stub$Proxy;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V HSPLandroid/app/IActivityManager$Stub$Proxy;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder; @@ -1872,7 +1867,7 @@ HSPLandroid/app/IActivityManager$Stub$Proxy;->registerStrictModeCallback(Landroi HSPLandroid/app/IActivityManager$Stub$Proxy;->registerUidObserver(Landroid/app/IUidObserver;IILjava/lang/String;)V HSPLandroid/app/IActivityManager$Stub$Proxy;->removeContentProvider(Landroid/os/IBinder;Z)V HSPLandroid/app/IActivityManager$Stub$Proxy;->revokeUriPermission(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/net/Uri;II)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/IActivityManager$Stub$Proxy;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V HSPLandroid/app/IActivityManager$Stub$Proxy;->setRenderThread(I)V HSPLandroid/app/IActivityManager$Stub$Proxy;->setServiceForeground(Landroid/content/ComponentName;Landroid/os/IBinder;ILandroid/app/Notification;II)V HSPLandroid/app/IActivityManager$Stub$Proxy;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;I)Landroid/content/ComponentName; @@ -1931,7 +1926,7 @@ HSPLandroid/app/INotificationManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/app/INotificationManager$Stub$Proxy;->areNotificationsEnabled(Ljava/lang/String;)Z HSPLandroid/app/INotificationManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; HSPLandroid/app/INotificationManager$Stub$Proxy;->cancelAllNotifications(Ljava/lang/String;I)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->cancelNotificationWithTag(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V+]Landroid/app/INotificationManager$Stub$Proxy;Landroid/app/INotificationManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/INotificationManager$Stub$Proxy;->cancelNotificationWithTag(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V HSPLandroid/app/INotificationManager$Stub$Proxy;->createNotificationChannelGroups(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V HSPLandroid/app/INotificationManager$Stub$Proxy;->createNotificationChannels(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V HSPLandroid/app/INotificationManager$Stub$Proxy;->deleteNotificationChannel(Ljava/lang/String;Ljava/lang/String;)V @@ -2035,7 +2030,7 @@ HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0;-><i HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0;->run()V HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;-><init>(Landroid/app/LoadedApk$ReceiverDispatcher;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;->getRunnable()Ljava/lang/Runnable; -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;->lambda$getRunnable$0()V+]Landroid/app/LoadedApk$ReceiverDispatcher$Args;Landroid/app/LoadedApk$ReceiverDispatcher$Args;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;->lambda$getRunnable$0()V HSPLandroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZI)V HSPLandroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V HSPLandroid/app/LoadedApk$ReceiverDispatcher;-><init>(Landroid/app/IApplicationThread;Landroid/content/BroadcastReceiver;Landroid/content/Context;Landroid/os/Handler;Landroid/app/Instrumentation;Z)V @@ -2043,7 +2038,6 @@ HSPLandroid/app/LoadedApk$ReceiverDispatcher;->getIIntentReceiver()Landroid/cont HSPLandroid/app/LoadedApk$ReceiverDispatcher;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V HSPLandroid/app/LoadedApk$ReceiverDispatcher;->validate(Landroid/content/Context;Landroid/os/Handler;)V HSPLandroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo;-><init>()V -HSPLandroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo;-><init>(Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo-IA;)V HSPLandroid/app/LoadedApk$ServiceDispatcher$DeathMonitor;-><init>(Landroid/app/LoadedApk$ServiceDispatcher;Landroid/content/ComponentName;Landroid/os/IBinder;)V HSPLandroid/app/LoadedApk$ServiceDispatcher$DeathMonitor;->binderDied()V HSPLandroid/app/LoadedApk$ServiceDispatcher$InnerConnection;-><init>(Landroid/app/LoadedApk$ServiceDispatcher;)V @@ -2067,7 +2061,6 @@ HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->getClassLoaderForSplit(Lja HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->getSplitPathsForSplit(Ljava/lang/String;)[Ljava/lang/String; HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->isSplitCached(I)Z HSPLandroid/app/LoadedApk$WarningContextClassLoader;-><init>()V -HSPLandroid/app/LoadedApk$WarningContextClassLoader;-><init>(Landroid/app/LoadedApk$WarningContextClassLoader-IA;)V HSPLandroid/app/LoadedApk;->-$$Nest$fgetmClassLoader(Landroid/app/LoadedApk;)Ljava/lang/ClassLoader; HSPLandroid/app/LoadedApk;->-$$Nest$fgetmLock(Landroid/app/LoadedApk;)Ljava/lang/Object; HSPLandroid/app/LoadedApk;->-$$Nest$fgetmSplitNames(Landroid/app/LoadedApk;)[Ljava/lang/String; @@ -2363,7 +2356,7 @@ HSPLandroid/app/NotificationManager;->areNotificationsEnabled()Z HSPLandroid/app/NotificationManager;->cancel(I)V HSPLandroid/app/NotificationManager;->cancel(Ljava/lang/String;I)V HSPLandroid/app/NotificationManager;->cancelAll()V -HSPLandroid/app/NotificationManager;->cancelAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)V+]Landroid/app/INotificationManager;Landroid/app/INotificationManager$Stub$Proxy;]Landroid/content/Context;Landroid/view/ContextThemeWrapper;]Landroid/os/UserHandle;Landroid/os/UserHandle; +HSPLandroid/app/NotificationManager;->cancelAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)V HSPLandroid/app/NotificationManager;->createNotificationChannel(Landroid/app/NotificationChannel;)V HSPLandroid/app/NotificationManager;->createNotificationChannelGroup(Landroid/app/NotificationChannelGroup;)V HSPLandroid/app/NotificationManager;->createNotificationChannelGroups(Ljava/util/List;)V @@ -2443,7 +2436,7 @@ HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;) HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/PictureInPictureParams;-><init>(Landroid/os/Parcel;)V HSPLandroid/app/PropertyInvalidatedCache$1;-><init>(Landroid/app/PropertyInvalidatedCache;IFZ)V -HSPLandroid/app/PropertyInvalidatedCache$1;->removeEldestEntry(Ljava/util/Map$Entry;)Z+]Landroid/app/PropertyInvalidatedCache$1;Landroid/app/PropertyInvalidatedCache$1; +HSPLandroid/app/PropertyInvalidatedCache$1;->removeEldestEntry(Ljava/util/Map$Entry;)Z HSPLandroid/app/PropertyInvalidatedCache$DefaultComputer;-><init>(Landroid/app/PropertyInvalidatedCache;)V HSPLandroid/app/PropertyInvalidatedCache$NoPreloadHolder;-><clinit>()V HSPLandroid/app/PropertyInvalidatedCache$NoPreloadHolder;->next()J @@ -2455,7 +2448,7 @@ HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fputmHighWaterMark(Landroid/a HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;)V HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;Ljava/lang/String;)V HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V -HSPLandroid/app/PropertyInvalidatedCache;->bypass(Ljava/lang/Object;)Z+]Landroid/app/PropertyInvalidatedCache$QueryHandler;Landroid/app/PropertyInvalidatedCache$DefaultComputer; +HSPLandroid/app/PropertyInvalidatedCache;->bypass(Ljava/lang/Object;)Z HSPLandroid/app/PropertyInvalidatedCache;->cacheName()Ljava/lang/String; HSPLandroid/app/PropertyInvalidatedCache;->clear()V HSPLandroid/app/PropertyInvalidatedCache;->createMap()Ljava/util/LinkedHashMap; @@ -2463,14 +2456,12 @@ HSPLandroid/app/PropertyInvalidatedCache;->createPropertyName(Ljava/lang/String; HSPLandroid/app/PropertyInvalidatedCache;->disableLocal()V HSPLandroid/app/PropertyInvalidatedCache;->dumpCacheInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V HSPLandroid/app/PropertyInvalidatedCache;->getActiveCaches()Ljava/util/ArrayList; -HSPLandroid/app/PropertyInvalidatedCache;->getActiveCorks()Ljava/util/ArrayList; -HSPLandroid/app/PropertyInvalidatedCache;->getCurrentNonce()J+]Landroid/os/SystemProperties$Handle;Landroid/os/SystemProperties$Handle; +HSPLandroid/app/PropertyInvalidatedCache;->getCurrentNonce()J HSPLandroid/app/PropertyInvalidatedCache;->invalidateCache(Ljava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;->invalidateCacheLocked(Ljava/lang/String;)V HSPLandroid/app/PropertyInvalidatedCache;->isDisabled()Z HSPLandroid/app/PropertyInvalidatedCache;->isReservedNonce(J)Z HSPLandroid/app/PropertyInvalidatedCache;->maybeCheckConsistency(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/PropertyInvalidatedCache;->query(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/app/PropertyInvalidatedCache;megamorphic_types]Ljava/util/LinkedHashMap;Landroid/app/PropertyInvalidatedCache$1; +HSPLandroid/app/PropertyInvalidatedCache;->query(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/app/PropertyInvalidatedCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/app/PropertyInvalidatedCache;->refresh(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/app/PropertyInvalidatedCache;->registerCache()V @@ -2479,7 +2470,7 @@ HSPLandroid/app/QueuedWork$QueuedWorkHandler;->handleMessage(Landroid/os/Message HSPLandroid/app/QueuedWork;->-$$Nest$smprocessPendingWork()V HSPLandroid/app/QueuedWork;->addFinisher(Ljava/lang/Runnable;)V HSPLandroid/app/QueuedWork;->getHandler()Landroid/os/Handler; -HSPLandroid/app/QueuedWork;->handlerRemoveMessages(I)V+]Landroid/os/Handler;Landroid/app/QueuedWork$QueuedWorkHandler; +HSPLandroid/app/QueuedWork;->handlerRemoveMessages(I)V HSPLandroid/app/QueuedWork;->hasPendingWork()Z HSPLandroid/app/QueuedWork;->processPendingWork()V HSPLandroid/app/QueuedWork;->queue(Ljava/lang/Runnable;Z)V @@ -2508,17 +2499,15 @@ HSPLandroid/app/RemoteInput;->getChoices()[Ljava/lang/CharSequence; HSPLandroid/app/RemoteInput;->getEditChoicesBeforeSending()I HSPLandroid/app/RemoteInput;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/app/ResourcesManager$ActivityResource;-><init>()V -HSPLandroid/app/ResourcesManager$ActivityResource;-><init>(Landroid/app/ResourcesManager$ActivityResource-IA;)V HSPLandroid/app/ResourcesManager$ActivityResources;-><init>()V -HSPLandroid/app/ResourcesManager$ActivityResources;-><init>(Landroid/app/ResourcesManager$ActivityResources-IA;)V HSPLandroid/app/ResourcesManager$ApkAssetsSupplier;-><init>(Landroid/app/ResourcesManager;)V HSPLandroid/app/ResourcesManager$ApkAssetsSupplier;->load(Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets; HSPLandroid/app/ResourcesManager$ApkKey;-><init>(Ljava/lang/String;ZZ)V -HSPLandroid/app/ResourcesManager$ApkKey;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/app/ResourcesManager$ApkKey;->hashCode()I+]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/app/ResourcesManager$ApkKey;->equals(Ljava/lang/Object;)Z +HSPLandroid/app/ResourcesManager$ApkKey;->hashCode()I +HSPLandroid/app/ResourcesManager$PathCollector;-><init>(Landroid/content/res/ResourcesKey;)V +HSPLandroid/app/ResourcesManager$PathCollector;->collectedKey()Landroid/content/res/ResourcesKey;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLandroid/app/ResourcesManager$UpdateHandler;-><init>(Landroid/app/ResourcesManager;)V -HSPLandroid/app/ResourcesManager$UpdateHandler;-><init>(Landroid/app/ResourcesManager;Landroid/app/ResourcesManager$UpdateHandler-IA;)V -HSPLandroid/app/ResourcesManager;->-$$Nest$mloadApkAssets(Landroid/app/ResourcesManager;Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets; HSPLandroid/app/ResourcesManager;-><init>()V HSPLandroid/app/ResourcesManager;->addApplicationPathsLocked(Ljava/lang/String;[Ljava/lang/String;)V HSPLandroid/app/ResourcesManager;->appendLibAssetsForMainAssetPath(Ljava/lang/String;[Ljava/lang/String;)V @@ -2540,7 +2529,7 @@ HSPLandroid/app/ResourcesManager;->createResourcesForActivity(Landroid/os/IBinde HSPLandroid/app/ResourcesManager;->createResourcesForActivityLocked(Landroid/os/IBinder;Landroid/content/res/Configuration;Ljava/lang/Integer;Ljava/lang/ClassLoader;Landroid/content/res/ResourcesImpl;Landroid/content/res/CompatibilityInfo;)Landroid/content/res/Resources; HSPLandroid/app/ResourcesManager;->createResourcesImpl(Landroid/content/res/ResourcesKey;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/ResourcesImpl; HSPLandroid/app/ResourcesManager;->createResourcesLocked(Ljava/lang/ClassLoader;Landroid/content/res/ResourcesImpl;Landroid/content/res/CompatibilityInfo;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->extractApkKeys(Landroid/content/res/ResourcesKey;)Ljava/util/ArrayList;+]Ljava/lang/String;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/ResourcesManager;->extractApkKeys(Landroid/content/res/ResourcesKey;)Ljava/util/ArrayList; HSPLandroid/app/ResourcesManager;->findKeyForResourceImplLocked(Landroid/content/res/ResourcesImpl;)Landroid/content/res/ResourcesKey; HSPLandroid/app/ResourcesManager;->findOrCreateResourcesImplForKeyLocked(Landroid/content/res/ResourcesKey;)Landroid/content/res/ResourcesImpl; HSPLandroid/app/ResourcesManager;->findOrCreateResourcesImplForKeyLocked(Landroid/content/res/ResourcesKey;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/ResourcesImpl; @@ -2561,12 +2550,14 @@ HSPLandroid/app/ResourcesManager;->initializeApplicationPaths(Ljava/lang/String; HSPLandroid/app/ResourcesManager;->isSameResourcesOverrideConfig(Landroid/os/IBinder;Landroid/content/res/Configuration;)Z HSPLandroid/app/ResourcesManager;->lambda$cleanupReferences$1(Ljava/util/function/Function;Ljava/util/HashSet;Ljava/lang/Object;)Z HSPLandroid/app/ResourcesManager;->lambda$createResourcesForActivityLocked$0(Landroid/app/ResourcesManager$ActivityResource;)Ljava/lang/ref/WeakReference; -HSPLandroid/app/ResourcesManager;->loadApkAssets(Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets;+]Landroid/content/res/ApkAssets;Landroid/content/res/ApkAssets;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/app/ResourcesManager;->loadApkAssets(Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets; HSPLandroid/app/ResourcesManager;->overlayPathToIdmapPath(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/app/ResourcesManager;->rebaseActivityOverrideConfig(Landroid/app/ResourcesManager$ActivityResource;Landroid/content/res/Configuration;I)Landroid/content/res/ResourcesKey; HSPLandroid/app/ResourcesManager;->rebaseKeyForActivity(Landroid/os/IBinder;Landroid/content/res/ResourcesKey;Z)V HSPLandroid/app/ResourcesManager;->rebaseKeyForDisplay(Landroid/content/res/ResourcesKey;I)V HSPLandroid/app/ResourcesManager;->redirectResourcesToNewImplLocked(Landroid/util/ArrayMap;)V +HSPLandroid/app/ResourcesManager;->registerAllResourcesReference(Landroid/content/res/Resources;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/app/ResourcesManager;->updateResourceImplWithRegisteredLibs(Landroid/content/res/ResourcesImpl;)I+]Landroid/app/ResourcesManager$SharedLibraryAssets;Landroid/app/ResourcesManager$SharedLibraryAssets;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; HSPLandroid/app/ResourcesManager;->updateResourcesForActivity(Landroid/os/IBinder;Landroid/content/res/Configuration;I)V HSPLandroid/app/ResultInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ResultInfo; HSPLandroid/app/ResultInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -2623,7 +2614,6 @@ HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putString(Ljava/lang/String;L HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putStringSet(Ljava/lang/String;Ljava/util/Set;)Landroid/content/SharedPreferences$Editor; HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->remove(Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;-><init>(JZLjava/util/List;Ljava/util/Set;Ljava/util/Map;)V -HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;-><init>(JZLjava/util/List;Ljava/util/Set;Ljava/util/Map;Landroid/app/SharedPreferencesImpl$MemoryCommitResult-IA;)V HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;->setDiskWriteResult(ZZ)V HSPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmCurrentMemoryStateGeneration(Landroid/app/SharedPreferencesImpl;)J @@ -2743,9 +2733,11 @@ HSPLandroid/app/SystemServiceRegistry$3;->createService(Landroid/app/ContextImpl HSPLandroid/app/SystemServiceRegistry$3;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$40;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$41;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; +HSPLandroid/app/SystemServiceRegistry$42;->createService(Landroid/app/ContextImpl;)Landroid/hardware/SensorManager; HSPLandroid/app/SystemServiceRegistry$42;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$43;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$44;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; +HSPLandroid/app/SystemServiceRegistry$45;->createService(Landroid/app/ContextImpl;)Landroid/os/storage/StorageManager; HSPLandroid/app/SystemServiceRegistry$45;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$46;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$47;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; @@ -2764,6 +2756,7 @@ HSPLandroid/app/SystemServiceRegistry$56;->createService(Landroid/app/ContextImp HSPLandroid/app/SystemServiceRegistry$57;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$58;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$59;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; +HSPLandroid/app/SystemServiceRegistry$60;->createService(Landroid/app/ContextImpl;)Landroid/view/WindowManager; HSPLandroid/app/SystemServiceRegistry$60;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$61;->createService(Landroid/app/ContextImpl;)Landroid/os/UserManager; HSPLandroid/app/SystemServiceRegistry$61;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; @@ -2775,14 +2768,12 @@ HSPLandroid/app/SystemServiceRegistry$65;->createService(Landroid/app/ContextImp HSPLandroid/app/SystemServiceRegistry$66;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$67;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$68;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$71;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$74;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$75;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$77;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$78;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Landroid/app/AlarmManager; HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$83;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$84;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$85;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$86;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; @@ -2805,8 +2796,8 @@ HSPLandroid/app/SystemServiceRegistry$9;->createService(Landroid/app/ContextImpl HSPLandroid/app/SystemServiceRegistry$CachedServiceFetcher;->getService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry$StaticServiceFetcher;->getService(Landroid/app/ContextImpl;)Ljava/lang/Object; HSPLandroid/app/SystemServiceRegistry;->createServiceCache()[Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry;->getSystemService(Landroid/app/ContextImpl;Ljava/lang/String;)Ljava/lang/Object;+]Landroid/app/SystemServiceRegistry$ServiceFetcher;megamorphic_types -HSPLandroid/app/SystemServiceRegistry;->getSystemServiceFetcher(Ljava/lang/String;)Landroid/app/SystemServiceRegistry$ServiceFetcher;+]Ljava/util/Map;Landroid/util/ArrayMap; +HSPLandroid/app/SystemServiceRegistry;->getSystemService(Landroid/app/ContextImpl;Ljava/lang/String;)Ljava/lang/Object; +HSPLandroid/app/SystemServiceRegistry;->getSystemServiceFetcher(Ljava/lang/String;)Landroid/app/SystemServiceRegistry$ServiceFetcher; HSPLandroid/app/SystemServiceRegistry;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String; HSPLandroid/app/TaskInfo;-><init>()V HSPLandroid/app/TaskInfo;->getWindowingMode()I @@ -2829,7 +2820,6 @@ HSPLandroid/app/UiModeManager$1;-><init>(Landroid/app/UiModeManager;)V HSPLandroid/app/UiModeManager$Globals;->-$$Nest$fgetmService(Landroid/app/UiModeManager$Globals;)Landroid/app/IUiModeManager; HSPLandroid/app/UiModeManager$Globals;-><init>(Landroid/app/IUiModeManager;)V HSPLandroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager;-><init>()V -HSPLandroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager;-><init>(Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager-IA;)V HSPLandroid/app/UiModeManager;-><init>(Landroid/content/Context;)V HSPLandroid/app/UiModeManager;->getActiveProjectionTypes()I HSPLandroid/app/UiModeManager;->getCurrentModeType()I @@ -2854,12 +2844,13 @@ HSPLandroid/app/WallpaperManager;->initGlobals(Landroid/app/IWallpaperManager;La HSPLandroid/app/WallpaperManager;->setWallpaperZoomOut(Landroid/os/IBinder;F)V HSPLandroid/app/WindowConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/WindowConfiguration; HSPLandroid/app/WindowConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/WindowConfiguration;-><init>()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; +HSPLandroid/app/WindowConfiguration;-><init>()V HSPLandroid/app/WindowConfiguration;-><init>(Landroid/os/Parcel;)V HSPLandroid/app/WindowConfiguration;->activityTypeToString(I)Ljava/lang/String; +HSPLandroid/app/WindowConfiguration;->areConfigurationsEqualForDisplay(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Z HSPLandroid/app/WindowConfiguration;->canReceiveKeys()Z HSPLandroid/app/WindowConfiguration;->compareTo(Landroid/app/WindowConfiguration;)I -HSPLandroid/app/WindowConfiguration;->diff(Landroid/app/WindowConfiguration;Z)J+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/app/WindowConfiguration;->diff(Landroid/app/WindowConfiguration;Z)J HSPLandroid/app/WindowConfiguration;->equals(Ljava/lang/Object;)Z HSPLandroid/app/WindowConfiguration;->getActivityType()I HSPLandroid/app/WindowConfiguration;->getAppBounds()Landroid/graphics/Rect; @@ -2871,23 +2862,23 @@ HSPLandroid/app/WindowConfiguration;->getWindowingMode()I HSPLandroid/app/WindowConfiguration;->hasWindowShadow()Z HSPLandroid/app/WindowConfiguration;->inMultiWindowMode(I)Z HSPLandroid/app/WindowConfiguration;->isFloating(I)Z -HSPLandroid/app/WindowConfiguration;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/WindowConfiguration;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/app/WindowConfiguration;->setActivityType(I)V HSPLandroid/app/WindowConfiguration;->setAlwaysOnTop(I)V -HSPLandroid/app/WindowConfiguration;->setAppBounds(IIII)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/app/WindowConfiguration;->setAppBounds(IIII)V HSPLandroid/app/WindowConfiguration;->setAppBounds(Landroid/graphics/Rect;)V HSPLandroid/app/WindowConfiguration;->setBounds(Landroid/graphics/Rect;)V HSPLandroid/app/WindowConfiguration;->setDisplayRotation(I)V HSPLandroid/app/WindowConfiguration;->setMaxBounds(Landroid/graphics/Rect;)V HSPLandroid/app/WindowConfiguration;->setRotation(I)V -HSPLandroid/app/WindowConfiguration;->setTo(Landroid/app/WindowConfiguration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; +HSPLandroid/app/WindowConfiguration;->setTo(Landroid/app/WindowConfiguration;)V HSPLandroid/app/WindowConfiguration;->setTo(Landroid/app/WindowConfiguration;I)V -HSPLandroid/app/WindowConfiguration;->setToDefaults()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; +HSPLandroid/app/WindowConfiguration;->setToDefaults()V HSPLandroid/app/WindowConfiguration;->setWindowingMode(I)V HSPLandroid/app/WindowConfiguration;->tasksAreFloating()Z HSPLandroid/app/WindowConfiguration;->toString()Ljava/lang/String; HSPLandroid/app/WindowConfiguration;->unset()V -HSPLandroid/app/WindowConfiguration;->updateFrom(Landroid/app/WindowConfiguration;)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/app/WindowConfiguration;->updateFrom(Landroid/app/WindowConfiguration;)I HSPLandroid/app/WindowConfiguration;->windowingModeToString(I)Ljava/lang/String; HSPLandroid/app/WindowConfiguration;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda5;-><init>(Landroid/app/admin/DevicePolicyManager;)V @@ -3156,7 +3147,7 @@ HSPLandroid/app/job/JobInfo$TriggerContentUri;->writeToParcel(Landroid/os/Parcel HSPLandroid/app/job/JobInfo;-><init>(Landroid/app/job/JobInfo$Builder;)V HSPLandroid/app/job/JobInfo;-><init>(Landroid/app/job/JobInfo$Builder;Landroid/app/job/JobInfo-IA;)V HSPLandroid/app/job/JobInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/job/JobInfo;->enforceValidity(ZZZZ)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/app/job/JobInfo;->enforceValidity(ZZZZ)V HSPLandroid/app/job/JobInfo;->getExtras()Landroid/os/PersistableBundle; HSPLandroid/app/job/JobInfo;->getFlags()I HSPLandroid/app/job/JobInfo;->getFlexMillis()J @@ -3254,22 +3245,21 @@ HSPLandroid/app/prediction/IPredictionCallback$Stub;->asInterface(Landroid/os/IB HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ActivityConfigurationChangeItem; HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/ActivityLifecycleItem;-><init>()V HSPLandroid/app/servertransaction/ActivityRelaunchItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V HSPLandroid/app/servertransaction/ActivityResultItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ActivityResultItem; HSPLandroid/app/servertransaction/ActivityResultItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/servertransaction/ActivityResultItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V HSPLandroid/app/servertransaction/ActivityResultItem;->getPostExecutionState()I -HSPLandroid/app/servertransaction/ActivityTransactionItem;-><init>()V HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ClientTransaction; HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;)V+]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/app/servertransaction/ClientTransaction;]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;)V HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;Landroid/app/servertransaction/ClientTransaction-IA;)V HSPLandroid/app/servertransaction/ClientTransaction;->getCallbacks()Ljava/util/List; HSPLandroid/app/servertransaction/ClientTransaction;->getLifecycleStateRequest()Landroid/app/servertransaction/ActivityLifecycleItem; -HSPLandroid/app/servertransaction/ClientTransaction;->preExecute(Landroid/app/ClientTransactionHandler;)V+]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/app/servertransaction/ClientTransaction;->preExecute(Landroid/app/ClientTransactionHandler;)V HSPLandroid/app/servertransaction/ClientTransactionItem;-><init>()V HSPLandroid/app/servertransaction/ClientTransactionItem;->getPostExecutionState()I +HSPLandroid/app/servertransaction/ClientTransactionItem;->isActivityLifecycleItem()Z HSPLandroid/app/servertransaction/ClientTransactionItem;->shouldHaveDefinedPreExecutionState()Z HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ConfigurationChangeItem; HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -3328,14 +3318,13 @@ HSPLandroid/app/servertransaction/TransactionExecutor;-><init>(Landroid/app/Clie HSPLandroid/app/servertransaction/TransactionExecutor;->cycleToPath(Landroid/app/ActivityThread$ActivityClientRecord;ILandroid/app/servertransaction/ClientTransaction;)V HSPLandroid/app/servertransaction/TransactionExecutor;->cycleToPath(Landroid/app/ActivityThread$ActivityClientRecord;IZLandroid/app/servertransaction/ClientTransaction;)V HSPLandroid/app/servertransaction/TransactionExecutor;->execute(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->executeCallbacks(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->executeLifecycleState(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->performLifecycleSequence(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/util/IntArray;Landroid/app/servertransaction/ClientTransaction;)V+]Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread;]Landroid/util/IntArray;Landroid/util/IntArray; +HSPLandroid/app/servertransaction/TransactionExecutor;->executeNonLifecycleItem(Landroid/app/servertransaction/ClientTransaction;Landroid/app/servertransaction/ClientTransactionItem;Z)V+]Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread;]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Landroid/app/servertransaction/TransactionExecutor;Landroid/app/servertransaction/TransactionExecutor;]Landroid/app/servertransaction/TransactionExecutorHelper;Landroid/app/servertransaction/TransactionExecutorHelper;]Ljava/util/Map;Ljava/util/Collections$SynchronizedMap; +HSPLandroid/app/servertransaction/TransactionExecutor;->executeTransactionItems(Landroid/app/servertransaction/ClientTransaction;)V+]Landroid/app/servertransaction/ClientTransaction;Landroid/app/servertransaction/ClientTransaction;]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/app/servertransaction/TransactionExecutor;->performLifecycleSequence(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/util/IntArray;Landroid/app/servertransaction/ClientTransaction;)V HSPLandroid/app/servertransaction/TransactionExecutorHelper;-><init>()V HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getClosestOfStates(Landroid/app/ActivityThread$ActivityClientRecord;[I)I HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getClosestPreExecutionState(Landroid/app/ActivityThread$ActivityClientRecord;I)I -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getLifecyclePath(IIZ)Landroid/util/IntArray;+]Landroid/util/IntArray;Landroid/util/IntArray; -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->lastCallbackRequestingState(Landroid/app/servertransaction/ClientTransaction;)I +HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getLifecyclePath(IIZ)Landroid/util/IntArray; HSPLandroid/app/slice/ISliceManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/app/slice/ISliceManager$Stub$Proxy;->getPinnedSlices(Ljava/lang/String;)[Landroid/net/Uri; HSPLandroid/app/slice/ISliceManager$Stub$Proxy;->grantSlicePermission(Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;)V @@ -3402,7 +3391,7 @@ HSPLandroid/app/usage/AppStandbyInfo$1;->createFromParcel(Landroid/os/Parcel;)La HSPLandroid/app/usage/AppStandbyInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/app/usage/AppStandbyInfo;-><init>(Ljava/lang/String;I)V HSPLandroid/app/usage/AppStandbyInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/usage/IStorageStatsManager$Stub$Proxy;->queryStatsForPackage(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Landroid/app/usage/StorageStats;+]Landroid/app/usage/IStorageStatsManager$Stub$Proxy;Landroid/app/usage/IStorageStatsManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/app/usage/IStorageStatsManager$Stub$Proxy;->queryStatsForPackage(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Landroid/app/usage/StorageStats; HSPLandroid/app/usage/IStorageStatsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/usage/IStorageStatsManager; HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; @@ -3426,10 +3415,10 @@ HSPLandroid/app/usage/UsageEvents$Event;->getTimeStamp()J HSPLandroid/app/usage/UsageEvents;-><init>(Landroid/os/Parcel;)V HSPLandroid/app/usage/UsageEvents;->getNextEvent(Landroid/app/usage/UsageEvents$Event;)Z HSPLandroid/app/usage/UsageEvents;->hasNextEvent()Z -HSPLandroid/app/usage/UsageEvents;->readEventFromParcel(Landroid/os/Parcel;Landroid/app/usage/UsageEvents$Event;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/content/res/Configuration$1; -HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/UsageStats;+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/app/usage/UsageStats$1;Landroid/app/usage/UsageStats$1; -HSPLandroid/app/usage/UsageStats$1;->readBundleToEventMap(Landroid/os/Bundle;Landroid/util/ArrayMap;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLandroid/app/usage/UsageEvents;->readEventFromParcel(Landroid/os/Parcel;Landroid/app/usage/UsageEvents$Event;)V +HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/UsageStats; +HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; +HSPLandroid/app/usage/UsageStats$1;->readBundleToEventMap(Landroid/os/Bundle;Landroid/util/ArrayMap;)V HSPLandroid/app/usage/UsageStats;-><init>()V HSPLandroid/app/usage/UsageStats;->getPackageName()Ljava/lang/String; HSPLandroid/app/usage/UsageStats;->update(Ljava/lang/String;JII)V @@ -3463,6 +3452,8 @@ HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy;->getDeviceIdForD HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/companion/virtual/IVirtualDeviceManager; HSPLandroid/companion/virtual/VirtualDeviceManager;-><init>(Landroid/companion/virtual/IVirtualDeviceManager;Landroid/content/Context;)V HSPLandroid/companion/virtual/VirtualDeviceManager;->getDeviceIdForDisplayId(I)I +HSPLandroid/companion/virtual/flags/FeatureFlagsImpl;->enableNativeVdm()Z +HSPLandroid/companion/virtual/flags/Flags;->enableNativeVdm()Z HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->cancelSync(Landroid/content/ISyncContext;)V HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->isCallerSystem()Z HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->startSync(Landroid/content/ISyncContext;Ljava/lang/String;Landroid/accounts/Account;Landroid/os/Bundle;)V @@ -3600,7 +3591,7 @@ HSPLandroid/content/ComponentName;->getClassName()Ljava/lang/String; HSPLandroid/content/ComponentName;->getPackageName()Ljava/lang/String; HSPLandroid/content/ComponentName;->getShortClassName()Ljava/lang/String; HSPLandroid/content/ComponentName;->hashCode()I -HSPLandroid/content/ComponentName;->readFromParcel(Landroid/os/Parcel;)Landroid/content/ComponentName;+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/ComponentName;->readFromParcel(Landroid/os/Parcel;)Landroid/content/ComponentName; HSPLandroid/content/ComponentName;->toShortString()Ljava/lang/String; HSPLandroid/content/ComponentName;->toString()Ljava/lang/String; HSPLandroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName; @@ -3609,11 +3600,11 @@ HSPLandroid/content/ComponentName;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/ContentCaptureOptions$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions; HSPLandroid/content/ContentCaptureOptions$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1;->apply(I)Ljava/lang/Object; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->-$$Nest$smcreateFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions$ContentProtectionOptions; HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;-><init>(ZILjava/util/List;Ljava/util/List;I)V HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions$ContentProtectionOptions; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->createGroupsFromParcel(Landroid/os/Parcel;)Ljava/util/List;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/stream/IntStream;Ljava/util/stream/IntPipeline$Head;]Ljava/util/stream/Stream;Ljava/util/stream/IntPipeline$4;,Ljava/util/stream/ReferencePipeline$11; +HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->createGroupsFromParcel(Landroid/os/Parcel;)Ljava/util/List; HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->lambda$createGroupsFromParcel$0(I)Ljava/util/ArrayList; HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->writeToParcel(Landroid/os/Parcel;)V HSPLandroid/content/ContentCaptureOptions;-><init>(IIIIILandroid/util/ArraySet;)V @@ -3648,6 +3639,7 @@ HSPLandroid/content/ContentProvider;->checkUser(IILandroid/content/Context;)Z HSPLandroid/content/ContentProvider;->clearCallingIdentity()Landroid/content/ContentProvider$CallingIdentity; HSPLandroid/content/ContentProvider;->coerceToLocalContentProvider(Landroid/content/IContentProvider;)Landroid/content/ContentProvider; HSPLandroid/content/ContentProvider;->delete(Landroid/net/Uri;Landroid/os/Bundle;)I +HSPLandroid/content/ContentProvider;->deniedAccessSystemUserOnlyProvider(IZ)Z HSPLandroid/content/ContentProvider;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V HSPLandroid/content/ContentProvider;->enforceReadPermissionInner(Landroid/net/Uri;Landroid/content/AttributionSource;)I HSPLandroid/content/ContentProvider;->enforceWritePermissionInner(Landroid/net/Uri;Landroid/content/AttributionSource;)I @@ -3862,7 +3854,7 @@ HSPLandroid/content/ContentValues;->putNull(Ljava/lang/String;)V HSPLandroid/content/ContentValues;->putObject(Ljava/lang/String;Ljava/lang/Object;)V HSPLandroid/content/ContentValues;->remove(Ljava/lang/String;)V HSPLandroid/content/ContentValues;->size()I -HSPLandroid/content/ContentValues;->toString()Ljava/lang/String;+]Landroid/content/ContentValues;Landroid/content/ContentValues;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLandroid/content/ContentValues;->toString()Ljava/lang/String; HSPLandroid/content/ContentValues;->valueSet()Ljava/util/Set; HSPLandroid/content/ContentValues;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/Context;-><init>()V @@ -3876,11 +3868,11 @@ HSPLandroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String; HSPLandroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/content/Context;->getText(I)Ljava/lang/CharSequence; HSPLandroid/content/Context;->getToken(Landroid/content/Context;)Landroid/os/IBinder; -HSPLandroid/content/Context;->isAutofillCompatibilityEnabled()Z+]Landroid/content/Context;missing_types -HSPLandroid/content/Context;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes([I)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; +HSPLandroid/content/Context;->isAutofillCompatibilityEnabled()Z +HSPLandroid/content/Context;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray; +HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; +HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; +HSPLandroid/content/Context;->obtainStyledAttributes([I)Landroid/content/res/TypedArray; HSPLandroid/content/Context;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V HSPLandroid/content/Context;->unregisterComponentCallbacks(Landroid/content/ComponentCallbacks;)V HSPLandroid/content/ContextParams$Builder;-><init>()V @@ -3927,13 +3919,13 @@ HSPLandroid/content/ContextWrapper;->enforceCallingPermission(Ljava/lang/String; HSPLandroid/content/ContextWrapper;->enforcePermission(Ljava/lang/String;IILjava/lang/String;)V HSPLandroid/content/ContextWrapper;->fileList()[Ljava/lang/String; HSPLandroid/content/ContextWrapper;->getActivityToken()Landroid/os/IBinder; -HSPLandroid/content/ContextWrapper;->getApplicationContext()Landroid/content/Context;+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;+]Landroid/content/Context;missing_types +HSPLandroid/content/ContextWrapper;->getApplicationContext()Landroid/content/Context; +HSPLandroid/content/ContextWrapper;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; HSPLandroid/content/ContextWrapper;->getAssets()Landroid/content/res/AssetManager; HSPLandroid/content/ContextWrapper;->getAttributionSource()Landroid/content/AttributionSource; HSPLandroid/content/ContextWrapper;->getAttributionTag()Ljava/lang/String; HSPLandroid/content/ContextWrapper;->getAutofillClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/content/ContextWrapper;->getAutofillOptions()Landroid/content/AutofillOptions;+]Landroid/content/Context;missing_types +HSPLandroid/content/ContextWrapper;->getAutofillOptions()Landroid/content/AutofillOptions; HSPLandroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context; HSPLandroid/content/ContextWrapper;->getBasePackageName()Ljava/lang/String; HSPLandroid/content/ContextWrapper;->getCacheDir()Ljava/io/File; @@ -3968,14 +3960,14 @@ HSPLandroid/content/ContextWrapper;->getResources()Landroid/content/res/Resource HSPLandroid/content/ContextWrapper;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; HSPLandroid/content/ContextWrapper;->getSharedPreferencesPath(Ljava/lang/String;)Ljava/io/File; HSPLandroid/content/ContextWrapper;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/content/ContextWrapper;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String;+]Landroid/content/Context;missing_types +HSPLandroid/content/ContextWrapper;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String; HSPLandroid/content/ContextWrapper;->getTheme()Landroid/content/res/Resources$Theme; HSPLandroid/content/ContextWrapper;->getUser()Landroid/os/UserHandle; HSPLandroid/content/ContextWrapper;->getUserId()I HSPLandroid/content/ContextWrapper;->getWindowContextToken()Landroid/os/IBinder; HSPLandroid/content/ContextWrapper;->grantUriPermission(Ljava/lang/String;Landroid/net/Uri;I)V HSPLandroid/content/ContextWrapper;->isDeviceProtectedStorage()Z -HSPLandroid/content/ContextWrapper;->isRestricted()Z+]Landroid/content/Context;missing_types +HSPLandroid/content/ContextWrapper;->isRestricted()Z HSPLandroid/content/ContextWrapper;->isUiContext()Z HSPLandroid/content/ContextWrapper;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream; HSPLandroid/content/ContextWrapper;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; @@ -4061,7 +4053,7 @@ HSPLandroid/content/Intent;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/Intent;-><init>(Ljava/lang/String;)V HSPLandroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V HSPLandroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;Landroid/content/Context;Ljava/lang/Class;)V -HSPLandroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent; HSPLandroid/content/Intent;->addFlags(I)Landroid/content/Intent; HSPLandroid/content/Intent;->cloneFilter()Landroid/content/Intent; HSPLandroid/content/Intent;->filterEquals(Landroid/content/Intent;)Z @@ -4306,7 +4298,7 @@ HSPLandroid/content/pm/ActivityInfo$1;->createFromParcel(Landroid/os/Parcel;)Lja HSPLandroid/content/pm/ActivityInfo$1;->newArray(I)[Landroid/content/pm/ActivityInfo; HSPLandroid/content/pm/ActivityInfo$1;->newArray(I)[Ljava/lang/Object; HSPLandroid/content/pm/ActivityInfo$WindowLayout;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ActivityInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLandroid/content/pm/ActivityInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/ActivityInfo;->activityInfoConfigNativeToJava(I)I HSPLandroid/content/pm/ActivityInfo;->getRealConfigChanged()I HSPLandroid/content/pm/ActivityInfo;->getThemeResource()I @@ -4325,7 +4317,7 @@ HSPLandroid/content/pm/ApplicationInfo$1;->createFromParcel(Landroid/os/Parcel;) HSPLandroid/content/pm/ApplicationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/content/pm/ApplicationInfo;-><init>()V HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;Lcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;]Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;]Ljava/util/Set;Ljava/util/Collections$EmptySet; +HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/ApplicationInfo-IA;)V HSPLandroid/content/pm/ApplicationInfo;->getAllApkPaths()[Ljava/lang/String; HSPLandroid/content/pm/ApplicationInfo;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; @@ -4371,7 +4363,7 @@ HSPLandroid/content/pm/BaseParceledListSlice;-><init>(Ljava/util/List;)V HSPLandroid/content/pm/BaseParceledListSlice;->getList()Ljava/util/List; HSPLandroid/content/pm/BaseParceledListSlice;->readCreator(Landroid/os/Parcelable$Creator;Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; HSPLandroid/content/pm/BaseParceledListSlice;->readVerifyAndAddElement(Landroid/os/Parcelable$Creator;Landroid/os/Parcel;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; -HSPLandroid/content/pm/BaseParceledListSlice;->verifySameType(Ljava/lang/Class;Ljava/lang/Class;)V+]Ljava/lang/Object;Ljava/lang/Class; +HSPLandroid/content/pm/BaseParceledListSlice;->verifySameType(Ljava/lang/Class;Ljava/lang/Class;)V HSPLandroid/content/pm/BaseParceledListSlice;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/pm/Checksum$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/Checksum; HSPLandroid/content/pm/Checksum$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -4418,15 +4410,15 @@ HSPLandroid/content/pm/IPackageManager$Stub$Proxy;-><init>(Landroid/os/IBinder;) HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->checkPermission(Ljava/lang/String;Ljava/lang/String;I)I HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getActivityInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationEnabledSetting(Ljava/lang/String;I)I+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationEnabledSetting(Ljava/lang/String;I)I +HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getComponentEnabledSetting(Landroid/content/ComponentName;I)I HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getHomeActivities(Ljava/util/List;)Landroid/content/ComponentName; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstalledApplications(JI)Landroid/content/pm/ParceledListSlice; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstalledPackages(JI)Landroid/content/pm/ParceledListSlice; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstallerPackageName(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getNameForUid(I)Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo;+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageInstaller()Landroid/content/pm/IPackageInstaller; HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageUid(Ljava/lang/String;JI)I HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackagesForUid(I)[Ljava/lang/String; @@ -4496,7 +4488,7 @@ HSPLandroid/content/pm/ModuleInfo;->getPackageName()Ljava/lang/String; HSPLandroid/content/pm/PackageInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageInfo; HSPLandroid/content/pm/PackageInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/content/pm/PackageInfo;-><init>()V -HSPLandroid/content/pm/PackageInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/content/pm/ApplicationInfo$1;,Landroid/content/pm/SigningInfo$1; +HSPLandroid/content/pm/PackageInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/PackageInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/PackageInfo-IA;)V HSPLandroid/content/pm/PackageInfo;->composeLongVersionCode(II)J HSPLandroid/content/pm/PackageInfo;->getLongVersionCode()J @@ -4531,7 +4523,7 @@ HSPLandroid/content/pm/PackageItemInfo;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/pm/PackageManager$2;->recompute(Landroid/content/pm/PackageManager$ApplicationInfoQuery;)Landroid/content/pm/ApplicationInfo; HSPLandroid/content/pm/PackageManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/content/pm/PackageManager$3;->recompute(Landroid/content/pm/PackageManager$PackageInfoQuery;)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/content/pm/PackageManager$3;Landroid/content/pm/PackageManager$3; +HSPLandroid/content/pm/PackageManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/content/pm/PackageManager$ApplicationInfoFlags;-><init>(J)V HSPLandroid/content/pm/PackageManager$ApplicationInfoFlags;->of(J)Landroid/content/pm/PackageManager$ApplicationInfoFlags; HSPLandroid/content/pm/PackageManager$ApplicationInfoQuery;-><init>(Ljava/lang/String;JI)V @@ -4692,7 +4684,7 @@ HSPLandroid/content/pm/ServiceInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/ServiceInfo;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/pm/SharedLibraryInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SharedLibraryInfo; HSPLandroid/content/pm/SharedLibraryInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; +HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/SharedLibraryInfo-IA;)V HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;JILandroid/content/pm/VersionedPackage;Ljava/util/List;Ljava/util/List;Z)V HSPLandroid/content/pm/SharedLibraryInfo;->addDependency(Landroid/content/pm/SharedLibraryInfo;)V @@ -4766,7 +4758,7 @@ HSPLandroid/content/pm/Signature$1;->createFromParcel(Landroid/os/Parcel;)Landro HSPLandroid/content/pm/Signature$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/content/pm/Signature$1;->newArray(I)[Landroid/content/pm/Signature; HSPLandroid/content/pm/Signature$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/Signature;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/pm/Signature;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/Signature;-><init>(Landroid/os/Parcel;Landroid/content/pm/Signature-IA;)V HSPLandroid/content/pm/Signature;-><init>(Ljava/lang/String;)V HSPLandroid/content/pm/Signature;-><init>([B)V @@ -4779,11 +4771,11 @@ HSPLandroid/content/pm/Signature;->toChars([C[I)[C HSPLandroid/content/pm/Signature;->toCharsString()Ljava/lang/String; HSPLandroid/content/pm/SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SigningDetails; HSPLandroid/content/pm/SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SigningDetails;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; +HSPLandroid/content/pm/SigningDetails;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/SigningDetails;->getSignatures()[Landroid/content/pm/Signature; HSPLandroid/content/pm/SigningInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SigningInfo; HSPLandroid/content/pm/SigningInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SigningInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcelable$Creator;Landroid/content/pm/SigningDetails$1; +HSPLandroid/content/pm/SigningInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/SigningInfo;->getApkContentsSigners()[Landroid/content/pm/Signature; HSPLandroid/content/pm/SigningInfo;->getSigningCertificateHistory()[Landroid/content/pm/Signature; HSPLandroid/content/pm/SigningInfo;->hasMultipleSigners()Z @@ -4793,7 +4785,7 @@ HSPLandroid/content/pm/StringParceledListSlice$1;->createFromParcel(Landroid/os/ HSPLandroid/content/pm/StringParceledListSlice;->getList()Ljava/util/List; HSPLandroid/content/pm/UserInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/UserInfo; HSPLandroid/content/pm/UserInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/UserInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/pm/UserInfo;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle; HSPLandroid/content/pm/UserInfo;->isAdmin()Z HSPLandroid/content/pm/UserInfo;->isEnabled()Z @@ -4820,6 +4812,7 @@ HSPLandroid/content/pm/dex/ArtManager;->getCurrentProfilePath(Ljava/lang/String; HSPLandroid/content/pm/dex/ArtManager;->getProfileName(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/content/pm/dex/ArtManager;->getReferenceProfilePath(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String; HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseApkLite(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;I)Landroid/content/pm/parsing/result/ParseResult; +HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseApkLite(Landroid/content/pm/parsing/result/ParseInput;Ljava/lang/String;Landroid/content/res/XmlResourceParser;Landroid/content/pm/SigningDetails;I)Landroid/content/pm/parsing/result/ParseResult; HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseApkLiteInner(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;Ljava/io/FileDescriptor;Ljava/lang/String;I)Landroid/content/pm/parsing/result/ParseResult; HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseMonolithicPackageLite(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;I)Landroid/content/pm/parsing/result/ParseResult; HSPLandroid/content/pm/parsing/result/ParseTypeImpl;-><init>(Landroid/content/pm/parsing/result/ParseInput$Callback;)V @@ -4847,7 +4840,7 @@ HSPLandroid/content/res/ApkAssets;->dump(Ljava/io/PrintWriter;Ljava/lang/String; HSPLandroid/content/res/ApkAssets;->finalize()V HSPLandroid/content/res/ApkAssets;->getAssetPath()Ljava/lang/String; HSPLandroid/content/res/ApkAssets;->getDebugName()Ljava/lang/String; -HSPLandroid/content/res/ApkAssets;->getStringFromPool(I)Ljava/lang/CharSequence;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; +HSPLandroid/content/res/ApkAssets;->getStringFromPool(I)Ljava/lang/CharSequence; HSPLandroid/content/res/ApkAssets;->isUpToDate()Z HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;)Landroid/content/res/ApkAssets; HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;I)Landroid/content/res/ApkAssets; @@ -4869,7 +4862,6 @@ HSPLandroid/content/res/AssetFileDescriptor;->getParcelFileDescriptor()Landroid/ HSPLandroid/content/res/AssetFileDescriptor;->getStartOffset()J HSPLandroid/content/res/AssetFileDescriptor;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/res/AssetManager$AssetInputStream;-><init>(Landroid/content/res/AssetManager;J)V -HSPLandroid/content/res/AssetManager$AssetInputStream;-><init>(Landroid/content/res/AssetManager;JLandroid/content/res/AssetManager$AssetInputStream-IA;)V HSPLandroid/content/res/AssetManager$AssetInputStream;->available()I HSPLandroid/content/res/AssetManager$AssetInputStream;->close()V HSPLandroid/content/res/AssetManager$AssetInputStream;->ensureOpen()V @@ -4882,7 +4874,7 @@ HSPLandroid/content/res/AssetManager$AssetInputStream;->read([B)I HSPLandroid/content/res/AssetManager$AssetInputStream;->read([BII)I HSPLandroid/content/res/AssetManager$Builder;-><init>()V HSPLandroid/content/res/AssetManager$Builder;->addApkAssets(Landroid/content/res/ApkAssets;)Landroid/content/res/AssetManager$Builder; -HSPLandroid/content/res/AssetManager$Builder;->build()Landroid/content/res/AssetManager;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/content/res/AssetManager$Builder;->build()Landroid/content/res/AssetManager; HSPLandroid/content/res/AssetManager;->-$$Nest$fgetmObject(Landroid/content/res/AssetManager;)J HSPLandroid/content/res/AssetManager;->-$$Nest$fputmApkAssets(Landroid/content/res/AssetManager;[Landroid/content/res/ApkAssets;)V HSPLandroid/content/res/AssetManager;->-$$Nest$fputmLoaders(Landroid/content/res/AssetManager;[Landroid/content/res/loader/ResourcesLoader;)V @@ -4894,7 +4886,6 @@ HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetRead(J[BII)I HSPLandroid/content/res/AssetManager;-><init>()V HSPLandroid/content/res/AssetManager;-><init>(Z)V HSPLandroid/content/res/AssetManager;-><init>(ZLandroid/content/res/AssetManager-IA;)V -HSPLandroid/content/res/AssetManager;->addAssetPathInternal(Ljava/lang/String;ZZ)I HSPLandroid/content/res/AssetManager;->applyStyle(JIILandroid/content/res/XmlBlock$Parser;[IJJ)V HSPLandroid/content/res/AssetManager;->applyStyleToTheme(JIZ)V HSPLandroid/content/res/AssetManager;->close()V @@ -4914,7 +4905,7 @@ HSPLandroid/content/res/AssetManager;->getLoaders()Ljava/util/List; HSPLandroid/content/res/AssetManager;->getLocales()[Ljava/lang/String; HSPLandroid/content/res/AssetManager;->getNonSystemLocales()[Ljava/lang/String; HSPLandroid/content/res/AssetManager;->getParentThemeIdentifier(I)I -HSPLandroid/content/res/AssetManager;->getPooledStringForCookie(II)Ljava/lang/CharSequence;+]Landroid/content/res/ApkAssets;Landroid/content/res/ApkAssets;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; +HSPLandroid/content/res/AssetManager;->getPooledStringForCookie(II)Ljava/lang/CharSequence; HSPLandroid/content/res/AssetManager;->getResourceArray(I[I)I HSPLandroid/content/res/AssetManager;->getResourceArraySize(I)I HSPLandroid/content/res/AssetManager;->getResourceBagText(II)Ljava/lang/CharSequence; @@ -4927,10 +4918,10 @@ HSPLandroid/content/res/AssetManager;->getResourceStringArray(I)[Ljava/lang/Stri HSPLandroid/content/res/AssetManager;->getResourceText(I)Ljava/lang/CharSequence; HSPLandroid/content/res/AssetManager;->getResourceTextArray(I)[Ljava/lang/CharSequence; HSPLandroid/content/res/AssetManager;->getResourceTypeName(I)Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourceValue(IILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; +HSPLandroid/content/res/AssetManager;->getResourceValue(IILandroid/util/TypedValue;Z)Z HSPLandroid/content/res/AssetManager;->getSizeConfigurations()[Landroid/content/res/Configuration; HSPLandroid/content/res/AssetManager;->getSystem()Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->getThemeValue(JILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; +HSPLandroid/content/res/AssetManager;->getThemeValue(JILandroid/util/TypedValue;Z)Z HSPLandroid/content/res/AssetManager;->incRefsLocked(J)V HSPLandroid/content/res/AssetManager;->isUpToDate()Z HSPLandroid/content/res/AssetManager;->list(Ljava/lang/String;)[Ljava/lang/String; @@ -4940,7 +4931,7 @@ HSPLandroid/content/res/AssetManager;->openFd(Ljava/lang/String;)Landroid/conten HSPLandroid/content/res/AssetManager;->openNonAsset(ILjava/lang/String;I)Ljava/io/InputStream; HSPLandroid/content/res/AssetManager;->openNonAssetFd(ILjava/lang/String;)Landroid/content/res/AssetFileDescriptor; HSPLandroid/content/res/AssetManager;->openNonAssetFd(Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/AssetManager;->openXmlBlockAsset(ILjava/lang/String;)Landroid/content/res/XmlBlock;+]Ljava/lang/Object;Landroid/content/res/XmlBlock; +HSPLandroid/content/res/AssetManager;->openXmlBlockAsset(ILjava/lang/String;)Landroid/content/res/XmlBlock; HSPLandroid/content/res/AssetManager;->openXmlResourceParser(ILjava/lang/String;)Landroid/content/res/XmlResourceParser; HSPLandroid/content/res/AssetManager;->rebaseTheme(JLandroid/content/res/AssetManager;[I[ZI)Landroid/content/res/AssetManager; HSPLandroid/content/res/AssetManager;->releaseTheme(J)V @@ -4969,13 +4960,13 @@ HSPLandroid/content/res/ColorStateList;->getChangingConfigurations()I HSPLandroid/content/res/ColorStateList;->getColorForState([II)I HSPLandroid/content/res/ColorStateList;->getConstantState()Landroid/content/res/ConstantState; HSPLandroid/content/res/ColorStateList;->getDefaultColor()I -HSPLandroid/content/res/ColorStateList;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/AttributeSet;Landroid/content/res/XmlBlock$Parser;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/content/res/ColorStateList;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/content/res/ColorStateList;->isStateful()Z HSPLandroid/content/res/ColorStateList;->modulateColor(IFF)I HSPLandroid/content/res/ColorStateList;->obtainForTheme(Landroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; HSPLandroid/content/res/ColorStateList;->obtainForTheme(Landroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; HSPLandroid/content/res/ColorStateList;->onColorsChanged()V -HSPLandroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList; HSPLandroid/content/res/ColorStateList;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/res/CompatibilityInfo$2;->createFromParcel(Landroid/os/Parcel;)Landroid/content/res/CompatibilityInfo; HSPLandroid/content/res/CompatibilityInfo$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -5007,35 +4998,35 @@ HSPLandroid/content/res/Configuration;-><init>(Landroid/os/Parcel;)V HSPLandroid/content/res/Configuration;-><init>(Landroid/os/Parcel;Landroid/content/res/Configuration-IA;)V HSPLandroid/content/res/Configuration;->compareTo(Landroid/content/res/Configuration;)I HSPLandroid/content/res/Configuration;->diff(Landroid/content/res/Configuration;)I -HSPLandroid/content/res/Configuration;->diff(Landroid/content/res/Configuration;ZZ)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/os/LocaleList;Landroid/os/LocaleList; +HSPLandroid/content/res/Configuration;->diff(Landroid/content/res/Configuration;ZZ)I HSPLandroid/content/res/Configuration;->diffPublicOnly(Landroid/content/res/Configuration;)I HSPLandroid/content/res/Configuration;->equals(Landroid/content/res/Configuration;)Z HSPLandroid/content/res/Configuration;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/res/Configuration;->fixUpLocaleList()V+]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Object;Ljava/util/Locale; +HSPLandroid/content/res/Configuration;->fixUpLocaleList()V HSPLandroid/content/res/Configuration;->generateDelta(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Landroid/content/res/Configuration; HSPLandroid/content/res/Configuration;->getGrammaticalGender()I HSPLandroid/content/res/Configuration;->getLayoutDirection()I HSPLandroid/content/res/Configuration;->getLocales()Landroid/os/LocaleList; HSPLandroid/content/res/Configuration;->getScreenLayoutNoDirection(I)I -HSPLandroid/content/res/Configuration;->hashCode()I+]Landroid/os/LocaleList;Landroid/os/LocaleList; +HSPLandroid/content/res/Configuration;->hashCode()I HSPLandroid/content/res/Configuration;->isLayoutSizeAtLeast(I)Z HSPLandroid/content/res/Configuration;->isOtherSeqNewer(Landroid/content/res/Configuration;)Z HSPLandroid/content/res/Configuration;->isScreenRound()Z HSPLandroid/content/res/Configuration;->isScreenWideColorGamut()Z HSPLandroid/content/res/Configuration;->needNewResources(II)Z -HSPLandroid/content/res/Configuration;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/content/res/Configuration;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/content/res/Configuration;->readFromProto(Landroid/util/proto/ProtoInputStream;J)V HSPLandroid/content/res/Configuration;->reduceScreenLayout(III)I HSPLandroid/content/res/Configuration;->resetScreenLayout(I)I HSPLandroid/content/res/Configuration;->setLayoutDirection(Ljava/util/Locale;)V HSPLandroid/content/res/Configuration;->setLocale(Ljava/util/Locale;)V HSPLandroid/content/res/Configuration;->setLocales(Landroid/os/LocaleList;)V -HSPLandroid/content/res/Configuration;->setTo(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; +HSPLandroid/content/res/Configuration;->setTo(Landroid/content/res/Configuration;)V HSPLandroid/content/res/Configuration;->setTo(Landroid/content/res/Configuration;II)V -HSPLandroid/content/res/Configuration;->setToDefaults()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; +HSPLandroid/content/res/Configuration;->setToDefaults()V HSPLandroid/content/res/Configuration;->toString()Ljava/lang/String; HSPLandroid/content/res/Configuration;->unset()V -HSPLandroid/content/res/Configuration;->updateFrom(Landroid/content/res/Configuration;)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; +HSPLandroid/content/res/Configuration;->updateFrom(Landroid/content/res/Configuration;)I HSPLandroid/content/res/Configuration;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/content/res/ConfigurationBoundResourceCache;-><init>()V HSPLandroid/content/res/ConfigurationBoundResourceCache;->get(JLandroid/content/res/Resources$Theme;)Ljava/lang/Object; @@ -5056,8 +5047,8 @@ HSPLandroid/content/res/DrawableCache;->shouldInvalidateEntry(Ljava/lang/Object; HSPLandroid/content/res/FeatureFlagsImpl;->defaultLocale()Z HSPLandroid/content/res/Flags;->defaultLocale()Z HSPLandroid/content/res/FontResourcesParser;->parse(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry; -HSPLandroid/content/res/FontResourcesParser;->readFamilies(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry;+]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/FontResourcesParser;->readFamily(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/util/List;Ljava/util/ArrayList;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/content/res/FontResourcesParser;->readFamilies(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry; +HSPLandroid/content/res/FontResourcesParser;->readFamily(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry; HSPLandroid/content/res/FontScaleConverterFactory;->forScale(F)Landroid/content/res/FontScaleConverter; HSPLandroid/content/res/FontScaleConverterFactory;->isNonLinearFontScalingActive(F)Z HSPLandroid/content/res/GradientColor;-><init>()V @@ -5074,35 +5065,34 @@ HSPLandroid/content/res/Resources$$ExternalSyntheticLambda0;->test(Ljava/lang/Ob HSPLandroid/content/res/Resources$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V HSPLandroid/content/res/Resources$NotFoundException;-><init>(Ljava/lang/String;)V HSPLandroid/content/res/Resources$Theme;-><init>(Landroid/content/res/Resources;)V -HSPLandroid/content/res/Resources$Theme;-><init>(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme-IA;)V HSPLandroid/content/res/Resources$Theme;->applyStyle(IZ)V -HSPLandroid/content/res/Resources$Theme;->equals(Ljava/lang/Object;)Z+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Ljava/lang/Object;Landroid/content/res/Resources$Theme; +HSPLandroid/content/res/Resources$Theme;->equals(Ljava/lang/Object;)Z HSPLandroid/content/res/Resources$Theme;->getAppliedStyleResId()I HSPLandroid/content/res/Resources$Theme;->getChangingConfigurations()I -HSPLandroid/content/res/Resources$Theme;->getKey()Landroid/content/res/Resources$ThemeKey;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; +HSPLandroid/content/res/Resources$Theme;->getKey()Landroid/content/res/Resources$ThemeKey; HSPLandroid/content/res/Resources$Theme;->getParentThemeIdentifier(I)I HSPLandroid/content/res/Resources$Theme;->getResources()Landroid/content/res/Resources; HSPLandroid/content/res/Resources$Theme;->getTheme()[Ljava/lang/String; HSPLandroid/content/res/Resources$Theme;->hashCode()I -HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; +HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray; +HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes([I)Landroid/content/res/TypedArray; HSPLandroid/content/res/Resources$Theme;->rebase()V HSPLandroid/content/res/Resources$Theme;->rebase(Landroid/content/res/ResourcesImpl;)V -HSPLandroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; +HSPLandroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z HSPLandroid/content/res/Resources$Theme;->resolveAttributes([I[I)Landroid/content/res/TypedArray; HSPLandroid/content/res/Resources$Theme;->setImpl(Landroid/content/res/ResourcesImpl$ThemeImpl;)V HSPLandroid/content/res/Resources$Theme;->setTo(Landroid/content/res/Resources$Theme;)V -HSPLandroid/content/res/Resources$Theme;->toString()Ljava/lang/String;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/content/res/Resources$Theme;->toString()Ljava/lang/String; HSPLandroid/content/res/Resources$ThemeKey;-><init>()V HSPLandroid/content/res/Resources$ThemeKey;->append(IZ)V HSPLandroid/content/res/Resources$ThemeKey;->clone()Landroid/content/res/Resources$ThemeKey; -HSPLandroid/content/res/Resources$ThemeKey;->equals(Ljava/lang/Object;)Z+]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Ljava/lang/Object;Landroid/content/res/Resources$ThemeKey; +HSPLandroid/content/res/Resources$ThemeKey;->equals(Ljava/lang/Object;)Z HSPLandroid/content/res/Resources$ThemeKey;->hashCode()I HSPLandroid/content/res/Resources$ThemeKey;->moveToLast(I)V -HSPLandroid/content/res/Resources$ThemeKey;->setTo(Landroid/content/res/Resources$ThemeKey;)V+][I[I][Z[Z +HSPLandroid/content/res/Resources$ThemeKey;->setTo(Landroid/content/res/Resources$ThemeKey;)V HSPLandroid/content/res/Resources;-><init>(Landroid/content/res/AssetManager;Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;)V -HSPLandroid/content/res/Resources;-><init>(Ljava/lang/ClassLoader;)V+]Ljava/util/Set;Ljava/util/Collections$SynchronizedSet; +HSPLandroid/content/res/Resources;-><init>(Ljava/lang/ClassLoader;)V HSPLandroid/content/res/Resources;->addLoaders([Landroid/content/res/loader/ResourcesLoader;)V HSPLandroid/content/res/Resources;->checkCallbacksRegistered()V HSPLandroid/content/res/Resources;->cleanupThemeReferences()V @@ -5111,25 +5101,25 @@ HSPLandroid/content/res/Resources;->dumpHistory(Ljava/io/PrintWriter;Ljava/lang/ HSPLandroid/content/res/Resources;->finishPreloading()V HSPLandroid/content/res/Resources;->getAnimation(I)Landroid/content/res/XmlResourceParser; HSPLandroid/content/res/Resources;->getAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/Resources;->getAssets()Landroid/content/res/AssetManager;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getAssets()Landroid/content/res/AssetManager; HSPLandroid/content/res/Resources;->getAttributeSetSourceResId(Landroid/util/AttributeSet;)I HSPLandroid/content/res/Resources;->getBoolean(I)Z HSPLandroid/content/res/Resources;->getClassLoader()Ljava/lang/ClassLoader; HSPLandroid/content/res/Resources;->getColor(I)I -HSPLandroid/content/res/Resources;->getColor(ILandroid/content/res/Resources$Theme;)I+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getColor(ILandroid/content/res/Resources$Theme;)I HSPLandroid/content/res/Resources;->getColorStateList(I)Landroid/content/res/ColorStateList; HSPLandroid/content/res/Resources;->getColorStateList(ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; HSPLandroid/content/res/Resources;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; -HSPLandroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getDimension(I)F+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration; +HSPLandroid/content/res/Resources;->getDimension(I)F HSPLandroid/content/res/Resources;->getDimensionPixelOffset(I)I HSPLandroid/content/res/Resources;->getDimensionPixelSize(I)I HSPLandroid/content/res/Resources;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; -HSPLandroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; HSPLandroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; HSPLandroid/content/res/Resources;->getDrawable(ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; HSPLandroid/content/res/Resources;->getDrawableForDensity(II)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->getDrawableForDensity(IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getDrawableForDensity(IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; HSPLandroid/content/res/Resources;->getDrawableInflater()Landroid/graphics/drawable/DrawableInflater; HSPLandroid/content/res/Resources;->getFloat(I)F HSPLandroid/content/res/Resources;->getFont(Landroid/util/TypedValue;I)Landroid/graphics/Typeface; @@ -5143,7 +5133,7 @@ HSPLandroid/content/res/Resources;->getLoaders()Ljava/util/List; HSPLandroid/content/res/Resources;->getQuantityString(II)Ljava/lang/String; HSPLandroid/content/res/Resources;->getQuantityString(II[Ljava/lang/Object;)Ljava/lang/String; HSPLandroid/content/res/Resources;->getQuantityText(II)Ljava/lang/CharSequence; -HSPLandroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String; HSPLandroid/content/res/Resources;->getResourceName(I)Ljava/lang/String; HSPLandroid/content/res/Resources;->getResourcePackageName(I)Ljava/lang/String; HSPLandroid/content/res/Resources;->getResourceTypeName(I)Ljava/lang/String; @@ -5151,24 +5141,24 @@ HSPLandroid/content/res/Resources;->getSizeConfigurations()[Landroid/content/res HSPLandroid/content/res/Resources;->getStateListAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; HSPLandroid/content/res/Resources;->getString(I)Ljava/lang/String; HSPLandroid/content/res/Resources;->getString(I[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String; HSPLandroid/content/res/Resources;->getSystem()Landroid/content/res/Resources; HSPLandroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence; HSPLandroid/content/res/Resources;->getTextArray(I)[Ljava/lang/CharSequence; -HSPLandroid/content/res/Resources;->getValue(ILandroid/util/TypedValue;Z)V+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->getValue(ILandroid/util/TypedValue;Z)V HSPLandroid/content/res/Resources;->getValueForDensity(IILandroid/util/TypedValue;Z)V HSPLandroid/content/res/Resources;->getXml(I)Landroid/content/res/XmlResourceParser; HSPLandroid/content/res/Resources;->hasOverrideDisplayAdjustments()Z -HSPLandroid/content/res/Resources;->loadColorStateList(Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->loadColorStateList(Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; HSPLandroid/content/res/Resources;->loadComplexColor(Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; HSPLandroid/content/res/Resources;->loadDrawable(Landroid/util/TypedValue;IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->loadXmlResourceParser(ILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/content/res/Resources;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->newTheme()Landroid/content/res/Resources$Theme;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/content/res/Resources;->loadXmlResourceParser(ILjava/lang/String;)Landroid/content/res/XmlResourceParser; +HSPLandroid/content/res/Resources;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser; +HSPLandroid/content/res/Resources;->newTheme()Landroid/content/res/Resources$Theme; HSPLandroid/content/res/Resources;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/Resources;->obtainAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->obtainAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; HSPLandroid/content/res/Resources;->obtainTempTypedValue()Landroid/util/TypedValue; -HSPLandroid/content/res/Resources;->obtainTypedArray(I)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; +HSPLandroid/content/res/Resources;->obtainTypedArray(I)Landroid/content/res/TypedArray; HSPLandroid/content/res/Resources;->openRawResource(I)Ljava/io/InputStream; HSPLandroid/content/res/Resources;->openRawResource(ILandroid/util/TypedValue;)Ljava/io/InputStream; HSPLandroid/content/res/Resources;->openRawResourceFd(I)Landroid/content/res/AssetFileDescriptor; @@ -5194,30 +5184,29 @@ HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda1;->onHeaderDecode HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;-><init>()V HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;->get()Ljava/lang/Object; HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>()V -HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>(Landroid/content/res/ResourcesImpl$LookupStack-IA;)V HSPLandroid/content/res/ResourcesImpl$LookupStack;->contains(I)Z HSPLandroid/content/res/ResourcesImpl$LookupStack;->pop()V HSPLandroid/content/res/ResourcesImpl$LookupStack;->push(I)V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;-><init>(Landroid/content/res/ResourcesImpl;)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->applyStyle(IZ)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey; +HSPLandroid/content/res/ResourcesImpl$ThemeImpl;-><init>(Landroid/content/res/ResourcesImpl;)V +HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->applyStyle(IZ)V HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->finalize()V HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getAppliedStyleResId()I HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getChangingConfigurations()I HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getKey()Landroid/content/res/Resources$ThemeKey; HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getParentThemeIdentifier(I)I HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getTheme()[Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->obtainStyledAttributes(Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; +HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->obtainStyledAttributes(Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->rebase()V HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->rebase(Landroid/content/res/AssetManager;)V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->resolveAttribute(ILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; +HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->resolveAttribute(ILandroid/util/TypedValue;Z)Z HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->resolveAttributes(Landroid/content/res/Resources$Theme;[I[I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->setTo(Landroid/content/res/ResourcesImpl$ThemeImpl;)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; +HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->setTo(Landroid/content/res/ResourcesImpl$ThemeImpl;)V HSPLandroid/content/res/ResourcesImpl;->-$$Nest$sfgetsThemeRegistry()Llibcore/util/NativeAllocationRegistry; -HSPLandroid/content/res/ResourcesImpl;-><init>(Landroid/content/res/AssetManager;Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;Landroid/view/DisplayAdjustments;)V+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments; +HSPLandroid/content/res/ResourcesImpl;-><init>(Landroid/content/res/AssetManager;Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;Landroid/view/DisplayAdjustments;)V HSPLandroid/content/res/ResourcesImpl;->adjustLanguageTag(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/content/res/ResourcesImpl;->attrForQuantityCode(Ljava/lang/String;)I HSPLandroid/content/res/ResourcesImpl;->cacheDrawable(Landroid/util/TypedValue;ZLandroid/content/res/DrawableCache;Landroid/content/res/Resources$Theme;ZJLandroid/graphics/drawable/Drawable;I)V -HSPLandroid/content/res/ResourcesImpl;->calcConfigChanges(Landroid/content/res/Configuration;)I+]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments; +HSPLandroid/content/res/ResourcesImpl;->calcConfigChanges(Landroid/content/res/Configuration;)I HSPLandroid/content/res/ResourcesImpl;->decodeImageDrawable(Landroid/content/res/AssetManager$AssetInputStream;Landroid/content/res/Resources;Landroid/util/TypedValue;)Landroid/graphics/drawable/Drawable; HSPLandroid/content/res/ResourcesImpl;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V HSPLandroid/content/res/ResourcesImpl;->finishPreloading()V @@ -5225,7 +5214,7 @@ HSPLandroid/content/res/ResourcesImpl;->flushLayoutCache()V HSPLandroid/content/res/ResourcesImpl;->getAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; HSPLandroid/content/res/ResourcesImpl;->getAssets()Landroid/content/res/AssetManager; HSPLandroid/content/res/ResourcesImpl;->getAttributeSetSourceResId(Landroid/util/AttributeSet;)I -HSPLandroid/content/res/ResourcesImpl;->getColorStateListFromInt(Landroid/util/TypedValue;J)Landroid/content/res/ColorStateList;+]Landroid/content/res/ConstantState;Landroid/content/res/ColorStateList$ColorStateListFactory;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; +HSPLandroid/content/res/ResourcesImpl;->getColorStateListFromInt(Landroid/util/TypedValue;J)Landroid/content/res/ColorStateList; HSPLandroid/content/res/ResourcesImpl;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; HSPLandroid/content/res/ResourcesImpl;->getConfiguration()Landroid/content/res/Configuration; HSPLandroid/content/res/ResourcesImpl;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; @@ -5239,7 +5228,7 @@ HSPLandroid/content/res/ResourcesImpl;->getResourcePackageName(I)Ljava/lang/Stri HSPLandroid/content/res/ResourcesImpl;->getResourceTypeName(I)Ljava/lang/String; HSPLandroid/content/res/ResourcesImpl;->getSizeConfigurations()[Landroid/content/res/Configuration; HSPLandroid/content/res/ResourcesImpl;->getStateListAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/ResourcesImpl;->getValue(ILandroid/util/TypedValue;Z)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; +HSPLandroid/content/res/ResourcesImpl;->getValue(ILandroid/util/TypedValue;Z)V HSPLandroid/content/res/ResourcesImpl;->getValueForDensity(IILandroid/util/TypedValue;Z)V HSPLandroid/content/res/ResourcesImpl;->isIntLike(Ljava/lang/String;)Z HSPLandroid/content/res/ResourcesImpl;->lambda$decodeImageDrawable$1(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V @@ -5247,18 +5236,18 @@ HSPLandroid/content/res/ResourcesImpl;->lambda$new$0()Landroid/content/res/Resou HSPLandroid/content/res/ResourcesImpl;->loadColorStateList(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; HSPLandroid/content/res/ResourcesImpl;->loadComplexColor(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; HSPLandroid/content/res/ResourcesImpl;->loadComplexColorForCookie(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/ResourcesImpl;->loadComplexColorFromName(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/TypedValue;I)Landroid/content/res/ComplexColor;+]Landroid/content/res/ComplexColor;Landroid/content/res/ColorStateList;,Landroid/content/res/GradientColor;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/ConstantState;Landroid/content/res/ColorStateList$ColorStateListFactory;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/content/res/ResourcesImpl;->loadDrawable(Landroid/content/res/Resources;Landroid/util/TypedValue;IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/graphics/drawable/Drawable$ConstantState;megamorphic_types]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/content/res/ResourcesImpl;->loadDrawableForCookie(Landroid/content/res/Resources;Landroid/util/TypedValue;II)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl$LookupStack;Landroid/content/res/ResourcesImpl$LookupStack;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/content/res/ResourcesImpl;->loadFont(Landroid/content/res/Resources;Landroid/util/TypedValue;I)Landroid/graphics/Typeface;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/content/res/ResourcesImpl;->loadComplexColorFromName(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/TypedValue;I)Landroid/content/res/ComplexColor; +HSPLandroid/content/res/ResourcesImpl;->loadDrawable(Landroid/content/res/Resources;Landroid/util/TypedValue;IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; +HSPLandroid/content/res/ResourcesImpl;->loadDrawableForCookie(Landroid/content/res/Resources;Landroid/util/TypedValue;II)Landroid/graphics/drawable/Drawable; +HSPLandroid/content/res/ResourcesImpl;->loadFont(Landroid/content/res/Resources;Landroid/util/TypedValue;I)Landroid/graphics/Typeface; HSPLandroid/content/res/ResourcesImpl;->loadXmlDrawable(Landroid/content/res/Resources;Landroid/util/TypedValue;IILjava/lang/String;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/ResourcesImpl;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/XmlBlock;Landroid/content/res/XmlBlock;]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/content/res/ResourcesImpl;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser; HSPLandroid/content/res/ResourcesImpl;->newThemeImpl()Landroid/content/res/ResourcesImpl$ThemeImpl; HSPLandroid/content/res/ResourcesImpl;->openRawResource(ILandroid/util/TypedValue;)Ljava/io/InputStream; HSPLandroid/content/res/ResourcesImpl;->openRawResourceFd(ILandroid/util/TypedValue;)Landroid/content/res/AssetFileDescriptor; HSPLandroid/content/res/ResourcesImpl;->startPreloading()V -HSPLandroid/content/res/ResourcesImpl;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V+]Landroid/app/ResourcesManager;Landroid/app/ResourcesManager;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/content/res/ResourcesImpl;->updateConfigurationImpl(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Z)V+]Landroid/app/ResourcesManager;Landroid/app/ResourcesManager;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; +HSPLandroid/content/res/ResourcesImpl;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V +HSPLandroid/content/res/ResourcesImpl;->updateConfigurationImpl(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Z)V HSPLandroid/content/res/ResourcesImpl;->verifyPreloadConfig(IIILjava/lang/String;)Z HSPLandroid/content/res/ResourcesKey;-><init>(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;[Landroid/content/res/loader/ResourcesLoader;)V HSPLandroid/content/res/ResourcesKey;->equals(Ljava/lang/Object;)Z @@ -5269,11 +5258,11 @@ HSPLandroid/content/res/StringBlock;->applyStyles(Ljava/lang/String;[ILandroid/c HSPLandroid/content/res/StringBlock;->close()V HSPLandroid/content/res/StringBlock;->finalize()V HSPLandroid/content/res/StringBlock;->get(I)Ljava/lang/CharSequence; -HSPLandroid/content/res/StringBlock;->getSequence(I)Ljava/lang/CharSequence;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/content/res/StringBlock;->getSequence(I)Ljava/lang/CharSequence; HSPLandroid/content/res/ThemedResourceCache;-><init>()V -HSPLandroid/content/res/ThemedResourceCache;->get(JLandroid/content/res/Resources$Theme;)Ljava/lang/Object;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/content/res/ThemedResourceCache;->get(JLandroid/content/res/Resources$Theme;)Ljava/lang/Object; HSPLandroid/content/res/ThemedResourceCache;->getGeneration()I -HSPLandroid/content/res/ThemedResourceCache;->getThemedLocked(Landroid/content/res/Resources$Theme;Z)Landroid/util/LongSparseArray;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/content/res/ThemedResourceCache;->getThemedLocked(Landroid/content/res/Resources$Theme;Z)Landroid/util/LongSparseArray; HSPLandroid/content/res/ThemedResourceCache;->getUnthemedLocked(Z)Landroid/util/LongSparseArray; HSPLandroid/content/res/ThemedResourceCache;->onConfigurationChange(I)V HSPLandroid/content/res/ThemedResourceCache;->pruneEntriesLocked(Landroid/util/LongSparseArray;I)Z @@ -5284,30 +5273,30 @@ HSPLandroid/content/res/TypedArray;-><init>(Landroid/content/res/Resources;)V HSPLandroid/content/res/TypedArray;->extractThemeAttrs()[I HSPLandroid/content/res/TypedArray;->extractThemeAttrs([I)[I HSPLandroid/content/res/TypedArray;->getBoolean(IZ)Z -HSPLandroid/content/res/TypedArray;->getChangingConfigurations()I+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; -HSPLandroid/content/res/TypedArray;->getColor(II)I+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList;+]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/content/res/TypedArray;->getChangingConfigurations()I +HSPLandroid/content/res/TypedArray;->getColor(II)I +HSPLandroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList; HSPLandroid/content/res/TypedArray;->getComplexColor(I)Landroid/content/res/ComplexColor; HSPLandroid/content/res/TypedArray;->getDimension(IF)F HSPLandroid/content/res/TypedArray;->getDimensionPixelOffset(II)I HSPLandroid/content/res/TypedArray;->getDimensionPixelSize(II)I HSPLandroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/TypedArray;->getDrawableForDensity(II)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/content/res/TypedArray;->getDrawableForDensity(II)Landroid/graphics/drawable/Drawable; HSPLandroid/content/res/TypedArray;->getFloat(IF)F -HSPLandroid/content/res/TypedArray;->getFont(I)Landroid/graphics/Typeface;+]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/content/res/TypedArray;->getFont(I)Landroid/graphics/Typeface; HSPLandroid/content/res/TypedArray;->getFraction(IIIF)F HSPLandroid/content/res/TypedArray;->getIndex(I)I HSPLandroid/content/res/TypedArray;->getIndexCount()I HSPLandroid/content/res/TypedArray;->getInt(II)I HSPLandroid/content/res/TypedArray;->getInteger(II)I HSPLandroid/content/res/TypedArray;->getLayoutDimension(II)I -HSPLandroid/content/res/TypedArray;->getLayoutDimension(ILjava/lang/String;)I+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/content/res/TypedArray;->getLayoutDimension(ILjava/lang/String;)I HSPLandroid/content/res/TypedArray;->getNonConfigurationString(II)Ljava/lang/String; HSPLandroid/content/res/TypedArray;->getNonResourceString(I)Ljava/lang/String; HSPLandroid/content/res/TypedArray;->getPositionDescription()Ljava/lang/String; HSPLandroid/content/res/TypedArray;->getResourceId(II)I HSPLandroid/content/res/TypedArray;->getResources()Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getString(I)Ljava/lang/String;+]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/content/res/TypedArray;->getString(I)Ljava/lang/String; HSPLandroid/content/res/TypedArray;->getText(I)Ljava/lang/CharSequence; HSPLandroid/content/res/TypedArray;->getTextArray(I)[Ljava/lang/CharSequence; HSPLandroid/content/res/TypedArray;->getType(I)I @@ -5316,11 +5305,11 @@ HSPLandroid/content/res/TypedArray;->getValueAt(ILandroid/util/TypedValue;)Z HSPLandroid/content/res/TypedArray;->hasValue(I)Z HSPLandroid/content/res/TypedArray;->hasValueOrEmpty(I)Z HSPLandroid/content/res/TypedArray;->length()I -HSPLandroid/content/res/TypedArray;->loadStringValueAt(I)Ljava/lang/CharSequence;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/TypedArray;->obtain(Landroid/content/res/Resources;I)Landroid/content/res/TypedArray;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; +HSPLandroid/content/res/TypedArray;->loadStringValueAt(I)Ljava/lang/CharSequence; +HSPLandroid/content/res/TypedArray;->obtain(Landroid/content/res/Resources;I)Landroid/content/res/TypedArray; HSPLandroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue; -HSPLandroid/content/res/TypedArray;->recycle()V+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/content/res/TypedArray;->resize(I)V+]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; +HSPLandroid/content/res/TypedArray;->recycle()V +HSPLandroid/content/res/TypedArray;->resize(I)V HSPLandroid/content/res/XmlBlock$Parser;-><init>(Landroid/content/res/XmlBlock;JLandroid/content/res/XmlBlock;)V HSPLandroid/content/res/XmlBlock$Parser;->close()V HSPLandroid/content/res/XmlBlock$Parser;->finalize()V @@ -5339,17 +5328,17 @@ HSPLandroid/content/res/XmlBlock$Parser;->getClassAttribute()Ljava/lang/String; HSPLandroid/content/res/XmlBlock$Parser;->getDepth()I HSPLandroid/content/res/XmlBlock$Parser;->getEventType()I HSPLandroid/content/res/XmlBlock$Parser;->getLineNumber()I -HSPLandroid/content/res/XmlBlock$Parser;->getName()Ljava/lang/String;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; -HSPLandroid/content/res/XmlBlock$Parser;->getPooledString(I)Ljava/lang/CharSequence;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; +HSPLandroid/content/res/XmlBlock$Parser;->getName()Ljava/lang/String; +HSPLandroid/content/res/XmlBlock$Parser;->getPooledString(I)Ljava/lang/CharSequence; HSPLandroid/content/res/XmlBlock$Parser;->getPositionDescription()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getSequenceString(Ljava/lang/CharSequence;)Ljava/lang/String;+]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/content/res/XmlBlock$Parser;->getSequenceString(Ljava/lang/CharSequence;)Ljava/lang/String; HSPLandroid/content/res/XmlBlock$Parser;->getSourceResId()I HSPLandroid/content/res/XmlBlock$Parser;->getText()Ljava/lang/String; HSPLandroid/content/res/XmlBlock$Parser;->isEmptyElementTag()Z -HSPLandroid/content/res/XmlBlock$Parser;->next()I+]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/content/res/XmlBlock$Parser;->next()I HSPLandroid/content/res/XmlBlock$Parser;->nextTag()I HSPLandroid/content/res/XmlBlock$Parser;->nextText()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->require(ILjava/lang/String;Ljava/lang/String;)V+]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser;]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/content/res/XmlBlock$Parser;->require(ILjava/lang/String;Ljava/lang/String;)V HSPLandroid/content/res/XmlBlock;->-$$Nest$fgetmOpenCount(Landroid/content/res/XmlBlock;)I HSPLandroid/content/res/XmlBlock;->-$$Nest$fputmOpenCount(Landroid/content/res/XmlBlock;I)V HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeCount(J)I @@ -5363,7 +5352,7 @@ HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetLineNumber(J)I HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetText(J)I HSPLandroid/content/res/XmlBlock;-><init>(Landroid/content/res/AssetManager;J)V HSPLandroid/content/res/XmlBlock;->close()V -HSPLandroid/content/res/XmlBlock;->decOpenCountLocked()V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock;]Ljava/lang/Object;Landroid/content/res/XmlBlock; +HSPLandroid/content/res/XmlBlock;->decOpenCountLocked()V HSPLandroid/content/res/XmlBlock;->finalize()V HSPLandroid/content/res/XmlBlock;->newParser()Landroid/content/res/XmlResourceParser; HSPLandroid/content/res/XmlBlock;->newParser(I)Landroid/content/res/XmlResourceParser; @@ -5374,10 +5363,10 @@ HSPLandroid/content/type/DefaultMimeMapFactory;->parseTypes(Llibcore/content/typ HSPLandroid/database/AbstractCursor$SelfContentObserver;-><init>(Landroid/database/AbstractCursor;)V HSPLandroid/database/AbstractCursor$SelfContentObserver;->onChange(Z)V HSPLandroid/database/AbstractCursor;-><init>()V -HSPLandroid/database/AbstractCursor;->checkPosition()V+]Landroid/database/AbstractCursor;Landroid/database/BulkCursorToCursorAdaptor;,Landroid/database/sqlite/SQLiteCursor; +HSPLandroid/database/AbstractCursor;->checkPosition()V HSPLandroid/database/AbstractCursor;->close()V HSPLandroid/database/AbstractCursor;->fillWindow(ILandroid/database/CursorWindow;)V -HSPLandroid/database/AbstractCursor;->finalize()V+]Ldalvik/system/CloseGuard;Ldalvik/system/CloseGuard; +HSPLandroid/database/AbstractCursor;->finalize()V HSPLandroid/database/AbstractCursor;->getColumnCount()I HSPLandroid/database/AbstractCursor;->getColumnIndex(Ljava/lang/String;)I HSPLandroid/database/AbstractCursor;->getColumnIndexOrThrow(Ljava/lang/String;)I @@ -5410,13 +5399,13 @@ HSPLandroid/database/AbstractWindowedCursor;->closeWindow()V HSPLandroid/database/AbstractWindowedCursor;->getBlob(I)[B HSPLandroid/database/AbstractWindowedCursor;->getDouble(I)D HSPLandroid/database/AbstractWindowedCursor;->getFloat(I)F -HSPLandroid/database/AbstractWindowedCursor;->getInt(I)I+]Landroid/database/AbstractWindowedCursor;Landroid/database/BulkCursorToCursorAdaptor;,Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->getLong(I)J+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->getString(I)Ljava/lang/String;+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/AbstractWindowedCursor;->getInt(I)I +HSPLandroid/database/AbstractWindowedCursor;->getLong(I)J +HSPLandroid/database/AbstractWindowedCursor;->getString(I)Ljava/lang/String; HSPLandroid/database/AbstractWindowedCursor;->getType(I)I HSPLandroid/database/AbstractWindowedCursor;->getWindow()Landroid/database/CursorWindow; HSPLandroid/database/AbstractWindowedCursor;->hasWindow()Z -HSPLandroid/database/AbstractWindowedCursor;->isNull(I)Z+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/AbstractWindowedCursor;->isNull(I)Z HSPLandroid/database/AbstractWindowedCursor;->onDeactivateOrClose()V HSPLandroid/database/AbstractWindowedCursor;->setWindow(Landroid/database/CursorWindow;)V HSPLandroid/database/BulkCursorDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Landroid/database/BulkCursorDescriptor; @@ -5482,16 +5471,16 @@ HSPLandroid/database/CursorWindow;->allocRow()Z HSPLandroid/database/CursorWindow;->clear()V HSPLandroid/database/CursorWindow;->dispose()V HSPLandroid/database/CursorWindow;->finalize()V -HSPLandroid/database/CursorWindow;->getBlob(II)[B+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/CursorWindow;->getBlob(II)[B HSPLandroid/database/CursorWindow;->getCursorWindowSize()I HSPLandroid/database/CursorWindow;->getDouble(II)D HSPLandroid/database/CursorWindow;->getFloat(II)F HSPLandroid/database/CursorWindow;->getInt(II)I -HSPLandroid/database/CursorWindow;->getLong(II)J+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/CursorWindow;->getLong(II)J HSPLandroid/database/CursorWindow;->getNumRows()I HSPLandroid/database/CursorWindow;->getStartPosition()I -HSPLandroid/database/CursorWindow;->getString(II)Ljava/lang/String;+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->getType(II)I+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/CursorWindow;->getString(II)Ljava/lang/String; +HSPLandroid/database/CursorWindow;->getType(II)I HSPLandroid/database/CursorWindow;->newFromParcel(Landroid/os/Parcel;)Landroid/database/CursorWindow; HSPLandroid/database/CursorWindow;->onAllReferencesReleased()V HSPLandroid/database/CursorWindow;->putLong(JII)Z @@ -5530,9 +5519,9 @@ HSPLandroid/database/DataSetObservable;->notifyChanged()V HSPLandroid/database/DataSetObservable;->notifyInvalidated()V HSPLandroid/database/DataSetObserver;-><init>()V HSPLandroid/database/DatabaseUtils;->appendEscapedSQLString(Ljava/lang/StringBuilder;Ljava/lang/String;)V -HSPLandroid/database/DatabaseUtils;->categorizeStatement(Ljava/lang/String;Ljava/lang/String;)I+]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/database/DatabaseUtils;->categorizeStatement(Ljava/lang/String;Ljava/lang/String;)I HSPLandroid/database/DatabaseUtils;->cursorFillWindow(Landroid/database/Cursor;ILandroid/database/CursorWindow;)V -HSPLandroid/database/DatabaseUtils;->getSqlStatementPrefixSimple(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/database/DatabaseUtils;->getSqlStatementPrefixSimple(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/database/DatabaseUtils;->getSqlStatementType(Ljava/lang/String;)I HSPLandroid/database/DatabaseUtils;->getSqlStatementTypeExtended(Ljava/lang/String;)I HSPLandroid/database/DatabaseUtils;->getTypeOfObject(Ljava/lang/Object;)I @@ -5593,17 +5582,14 @@ HSPLandroid/database/sqlite/Flags;->sqliteAllowTempTables()Z HSPLandroid/database/sqlite/SQLiteClosable;-><init>()V HSPLandroid/database/sqlite/SQLiteClosable;->acquireReference()V HSPLandroid/database/sqlite/SQLiteClosable;->close()V -HSPLandroid/database/sqlite/SQLiteClosable;->releaseReference()V+]Landroid/database/sqlite/SQLiteClosable;Landroid/database/CursorWindow;,Landroid/database/sqlite/SQLiteDatabase;,Landroid/database/sqlite/SQLiteQuery;,Landroid/database/sqlite/SQLiteStatement; +HSPLandroid/database/sqlite/SQLiteClosable;->releaseReference()V HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->getTruncateSize()J HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->init(Ljava/lang/String;)V HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->initIfNeeded()V HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->isLegacyCompatibilityWalEnabled()Z -HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>()V -HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>(Landroid/database/sqlite/SQLiteConnection$Operation-IA;)V HSPLandroid/database/sqlite/SQLiteConnection$Operation;->describe(Ljava/lang/StringBuilder;Z)V HSPLandroid/database/sqlite/SQLiteConnection$Operation;->getTraceMethodName()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->beginOperation(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)I+]Landroid/database/sqlite/SQLiteConnectionPool;Landroid/database/sqlite/SQLiteConnectionPool;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->beginOperation(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)I HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->dump(Landroid/util/Printer;)V HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->endOperation(I)V HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->endOperationDeferLog(I)Z @@ -5619,16 +5605,16 @@ HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->createStat HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->entryRemoved(ZLjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->entryRemoved(ZLjava/lang/String;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->getLastSeqNum()J -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->getStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement;+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; +HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->getStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement; HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$fgetmConnectionPtr(Landroid/database/sqlite/SQLiteConnection;)J HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$mfinalizePreparedStatement(Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$smnativePrepareStatement(JLjava/lang/String;)J HSPLandroid/database/sqlite/SQLiteConnection;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;Landroid/database/sqlite/SQLiteDatabaseConfiguration;IZ)V HSPLandroid/database/sqlite/SQLiteConnection;->acquirePreparedStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement; -HSPLandroid/database/sqlite/SQLiteConnection;->acquirePreparedStatementLI(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement;+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; +HSPLandroid/database/sqlite/SQLiteConnection;->acquirePreparedStatementLI(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement; HSPLandroid/database/sqlite/SQLiteConnection;->applyBlockGuardPolicy(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnection;->attachCancellationSignal(Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteConnection;->bindArguments(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;[Ljava/lang/Object;)V+]Ljava/lang/Number;Ljava/lang/Double;,Ljava/lang/Integer;,Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/database/sqlite/SQLiteConnection;->bindArguments(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;[Ljava/lang/Object;)V HSPLandroid/database/sqlite/SQLiteConnection;->canonicalizeSyncMode(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/database/sqlite/SQLiteConnection;->checkDatabaseWiped()V HSPLandroid/database/sqlite/SQLiteConnection;->close()V @@ -5636,11 +5622,11 @@ HSPLandroid/database/sqlite/SQLiteConnection;->collectDbStats(Ljava/util/ArrayLi HSPLandroid/database/sqlite/SQLiteConnection;->detachCancellationSignal(Landroid/os/CancellationSignal;)V HSPLandroid/database/sqlite/SQLiteConnection;->dispose(Z)V HSPLandroid/database/sqlite/SQLiteConnection;->dumpUnsafe(Landroid/util/Printer;Z)V -HSPLandroid/database/sqlite/SQLiteConnection;->execute(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V+]Landroid/database/sqlite/SQLiteConnection$OperationLog;Landroid/database/sqlite/SQLiteConnection$OperationLog;]Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection; +HSPLandroid/database/sqlite/SQLiteConnection;->execute(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V HSPLandroid/database/sqlite/SQLiteConnection;->executeForChangedRowCount(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)I HSPLandroid/database/sqlite/SQLiteConnection;->executeForCursorWindow(Ljava/lang/String;[Ljava/lang/Object;Landroid/database/CursorWindow;IIZLandroid/os/CancellationSignal;)I HSPLandroid/database/sqlite/SQLiteConnection;->executeForLastInsertedRowId(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)J -HSPLandroid/database/sqlite/SQLiteConnection;->executeForLong(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)J+]Landroid/database/sqlite/SQLiteConnection$OperationLog;Landroid/database/sqlite/SQLiteConnection$OperationLog;]Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection; +HSPLandroid/database/sqlite/SQLiteConnection;->executeForLong(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)J HSPLandroid/database/sqlite/SQLiteConnection;->executeForString(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)Ljava/lang/String; HSPLandroid/database/sqlite/SQLiteConnection;->executePerConnectionSqlFromConfiguration(I)V HSPLandroid/database/sqlite/SQLiteConnection;->finalize()V @@ -5658,7 +5644,7 @@ HSPLandroid/database/sqlite/SQLiteConnection;->prepare(Ljava/lang/String;Landroi HSPLandroid/database/sqlite/SQLiteConnection;->reconfigure(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V HSPLandroid/database/sqlite/SQLiteConnection;->recyclePreparedStatement(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnection;->releasePreparedStatement(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->releasePreparedStatementLI(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; +HSPLandroid/database/sqlite/SQLiteConnection;->releasePreparedStatementLI(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnection;->setAutoCheckpointInterval()V HSPLandroid/database/sqlite/SQLiteConnection;->setCustomFunctionsFromConfiguration()V HSPLandroid/database/sqlite/SQLiteConnection;->setForeignKeyModeFromConfiguration()V @@ -5672,13 +5658,13 @@ HSPLandroid/database/sqlite/SQLiteConnection;->setSyncMode(Ljava/lang/String;)V HSPLandroid/database/sqlite/SQLiteConnection;->setSyncModeFromConfiguration()V HSPLandroid/database/sqlite/SQLiteConnection;->throwIfStatementForbidden(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>()V -HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>(Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter-IA;)V HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionAcquired(Landroid/database/sqlite/SQLiteConnection;)V HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionClosed(Landroid/database/sqlite/SQLiteConnection;)V HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionReleased(Landroid/database/sqlite/SQLiteConnection;)V HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->handleMessage(Landroid/os/Message;)V HSPLandroid/database/sqlite/SQLiteConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V HSPLandroid/database/sqlite/SQLiteConnectionPool;->acquireConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)Landroid/database/sqlite/SQLiteConnection; +HSPLandroid/database/sqlite/SQLiteConnectionPool;->clearAcquiredConnectionsPreparedStatementCache()V HSPLandroid/database/sqlite/SQLiteConnectionPool;->close()V HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableConnectionLocked(I)Z HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableConnectionsAndLogExceptionsLocked()V @@ -5723,7 +5709,7 @@ HSPLandroid/database/sqlite/SQLiteCursor;->getColumnIndex(Ljava/lang/String;)I HSPLandroid/database/sqlite/SQLiteCursor;->getColumnNames()[Ljava/lang/String; HSPLandroid/database/sqlite/SQLiteCursor;->getCount()I HSPLandroid/database/sqlite/SQLiteCursor;->getDatabase()Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteCursor;->onMove(II)Z+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; +HSPLandroid/database/sqlite/SQLiteCursor;->onMove(II)Z HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda2;-><init>()V @@ -5748,14 +5734,13 @@ HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmLookasideSl HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmOpenFlags(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)I HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmSyncMode(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Ljava/lang/String; HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;-><init>(ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;-><init>(ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$OpenParams-IA;)V HSPLandroid/database/sqlite/SQLiteDatabase;-><init>(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;)V HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransaction()V HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransaction(Landroid/database/sqlite/SQLiteTransactionListener;Z)V HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransactionNonExclusive()V HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransactionWithListener(Landroid/database/sqlite/SQLiteTransactionListener;)V HSPLandroid/database/sqlite/SQLiteDatabase;->collectDbStats(Ljava/util/ArrayList;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->compileStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteStatement;+]Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteDatabase; +HSPLandroid/database/sqlite/SQLiteDatabase;->compileStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteStatement; HSPLandroid/database/sqlite/SQLiteDatabase;->createSession()Landroid/database/sqlite/SQLiteSession; HSPLandroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I HSPLandroid/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;)Z @@ -5783,7 +5768,7 @@ HSPLandroid/database/sqlite/SQLiteDatabase;->getVersion()I HSPLandroid/database/sqlite/SQLiteDatabase;->inTransaction()Z HSPLandroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J HSPLandroid/database/sqlite/SQLiteDatabase;->insertOrThrow(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J -HSPLandroid/database/sqlite/SQLiteDatabase;->insertWithOnConflict(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;I)J+]Landroid/content/ContentValues;Landroid/content/ContentValues;]Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteDatabase;]Landroid/database/sqlite/SQLiteStatement;Landroid/database/sqlite/SQLiteStatement;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLandroid/database/sqlite/SQLiteDatabase;->insertWithOnConflict(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;I)J HSPLandroid/database/sqlite/SQLiteDatabase;->isMainThread()Z HSPLandroid/database/sqlite/SQLiteDatabase;->isOpen()Z HSPLandroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z @@ -5900,12 +5885,11 @@ HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setStrict(Z)V HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setTables(Ljava/lang/String;)V HSPLandroid/database/sqlite/SQLiteQueryBuilder;->wrap(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/database/sqlite/SQLiteSession$Transaction;-><init>()V -HSPLandroid/database/sqlite/SQLiteSession$Transaction;-><init>(Landroid/database/sqlite/SQLiteSession$Transaction-IA;)V HSPLandroid/database/sqlite/SQLiteSession;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;)V HSPLandroid/database/sqlite/SQLiteSession;->acquireConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)V HSPLandroid/database/sqlite/SQLiteSession;->beginTransaction(ILandroid/database/sqlite/SQLiteTransactionListener;ILandroid/os/CancellationSignal;)V HSPLandroid/database/sqlite/SQLiteSession;->beginTransactionUnchecked(ILandroid/database/sqlite/SQLiteTransactionListener;ILandroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->closeOpenDependents()V+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLandroid/database/sqlite/SQLiteSession;->closeOpenDependents()V HSPLandroid/database/sqlite/SQLiteSession;->endTransaction(Landroid/os/CancellationSignal;)V HSPLandroid/database/sqlite/SQLiteSession;->endTransactionUnchecked(Landroid/os/CancellationSignal;Z)V HSPLandroid/database/sqlite/SQLiteSession;->execute(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)V @@ -5928,7 +5912,7 @@ HSPLandroid/database/sqlite/SQLiteSession;->throwIfTransactionMarkedSuccessful() HSPLandroid/database/sqlite/SQLiteSession;->yieldTransaction(JZLandroid/os/CancellationSignal;)Z HSPLandroid/database/sqlite/SQLiteSession;->yieldTransactionUnchecked(JLandroid/os/CancellationSignal;)Z HSPLandroid/database/sqlite/SQLiteStatement;-><init>(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/database/sqlite/SQLiteStatement;->execute()V+]Landroid/database/sqlite/SQLiteSession;Landroid/database/sqlite/SQLiteSession;]Landroid/database/sqlite/SQLiteStatement;Landroid/database/sqlite/SQLiteStatement; +HSPLandroid/database/sqlite/SQLiteStatement;->execute()V HSPLandroid/database/sqlite/SQLiteStatement;->executeInsert()J HSPLandroid/database/sqlite/SQLiteStatement;->executeUpdateDelete()I HSPLandroid/database/sqlite/SQLiteStatement;->simpleQueryForLong()J @@ -5936,7 +5920,6 @@ HSPLandroid/database/sqlite/SQLiteStatement;->simpleQueryForString()Ljava/lang/S HSPLandroid/database/sqlite/SQLiteStatementInfo;-><init>()V HSPLandroid/ddm/DdmHandle;->putString(Ljava/nio/ByteBuffer;Ljava/lang/String;)V HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;Landroid/ddm/DdmHandleAppName$Names-IA;)V HSPLandroid/ddm/DdmHandleAppName;->sendAPNM(Ljava/lang/String;Ljava/lang/String;I)V HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;I)V HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;Ljava/lang/String;I)V @@ -5965,11 +5948,11 @@ HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/g HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/RectF;Landroid/graphics/Paint;)V HSPLandroid/graphics/BaseCanvas;->drawColor(I)V HSPLandroid/graphics/BaseCanvas;->drawLine(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V+]Landroid/graphics/Path;Landroid/graphics/Path; +HSPLandroid/graphics/BaseCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V HSPLandroid/graphics/BaseCanvas;->drawText(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseCanvas;->drawTextRun(Ljava/lang/CharSequence;IIIIFFZLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseCanvas;->throwIfCannotDraw(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/BaseCanvas;->throwIfHasHwFeaturesInSwMode(Landroid/graphics/Paint;)V+]Landroid/graphics/BaseCanvas;Landroid/graphics/Canvas; +HSPLandroid/graphics/BaseCanvas;->throwIfHasHwFeaturesInSwMode(Landroid/graphics/Paint;)V HSPLandroid/graphics/BaseCanvas;->throwIfHasHwFeaturesInSwMode(Landroid/graphics/Shader;)V HSPLandroid/graphics/BaseCanvas;->throwIfHwBitmapInSwMode(Landroid/graphics/Bitmap;)V HSPLandroid/graphics/BaseRecordingCanvas;-><init>(J)V @@ -5983,12 +5966,12 @@ HSPLandroid/graphics/BaseRecordingCanvas;->drawLine(FFFFLandroid/graphics/Paint; HSPLandroid/graphics/BaseRecordingCanvas;->drawOval(FFFFLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseRecordingCanvas;->drawOval(Landroid/graphics/RectF;Landroid/graphics/Paint;)V HSPLandroid/graphics/BaseRecordingCanvas;->drawPatch(Landroid/graphics/NinePatch;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V+]Landroid/graphics/Paint;missing_types]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(FFFFLandroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/Rect;Landroid/graphics/Paint;)V+]Landroid/graphics/BaseRecordingCanvas;Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(FFFFFFLandroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V+]Landroid/graphics/BaseRecordingCanvas;Landroid/graphics/RecordingCanvas; +HSPLandroid/graphics/BaseRecordingCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V +HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(FFFFLandroid/graphics/Paint;)V +HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/Rect;Landroid/graphics/Paint;)V +HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V +HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(FFFFFFLandroid/graphics/Paint;)V +HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseRecordingCanvas;->drawText(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseRecordingCanvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V HSPLandroid/graphics/BaseRecordingCanvas;->drawTextRun(Ljava/lang/CharSequence;IIIIFFZLandroid/graphics/Paint;)V @@ -6072,7 +6055,7 @@ HSPLandroid/graphics/BitmapShader;-><init>(Landroid/graphics/Bitmap;II)V HSPLandroid/graphics/BitmapShader;-><init>(Landroid/graphics/Bitmap;Landroid/graphics/Shader$TileMode;Landroid/graphics/Shader$TileMode;)V HSPLandroid/graphics/BitmapShader;->createNativeInstance(JZ)J HSPLandroid/graphics/BitmapShader;->shouldDiscardNativeInstance(Z)Z -HSPLandroid/graphics/BlendMode;->blendModeToPorterDuffMode(Landroid/graphics/BlendMode;)Landroid/graphics/PorterDuff$Mode;+]Landroid/graphics/BlendMode;Landroid/graphics/BlendMode; +HSPLandroid/graphics/BlendMode;->blendModeToPorterDuffMode(Landroid/graphics/BlendMode;)Landroid/graphics/PorterDuff$Mode; HSPLandroid/graphics/BlendMode;->fromValue(I)Landroid/graphics/BlendMode; HSPLandroid/graphics/BlendMode;->getXfermode()Landroid/graphics/Xfermode; HSPLandroid/graphics/BlendMode;->toValue(Landroid/graphics/BlendMode;)I @@ -6136,8 +6119,8 @@ HSPLandroid/graphics/Canvas;->rotate(FFF)V HSPLandroid/graphics/Canvas;->save()I HSPLandroid/graphics/Canvas;->save(I)I HSPLandroid/graphics/Canvas;->saveLayer(FFFFLandroid/graphics/Paint;I)I -HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;)I+]Landroid/graphics/Canvas;Landroid/graphics/Canvas;,Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;I)I+]Landroid/graphics/Canvas;Landroid/graphics/Canvas;,Landroid/graphics/RecordingCanvas; +HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;)I +HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;I)I HSPLandroid/graphics/Canvas;->saveLayerAlpha(FFFFI)I HSPLandroid/graphics/Canvas;->saveLayerAlpha(FFFFII)I HSPLandroid/graphics/Canvas;->saveUnclippedLayer(IIII)I @@ -6170,7 +6153,7 @@ HSPLandroid/graphics/Color;->green()F HSPLandroid/graphics/Color;->green(I)I HSPLandroid/graphics/Color;->green(J)F HSPLandroid/graphics/Color;->luminance()F -HSPLandroid/graphics/Color;->pack(FFFFLandroid/graphics/ColorSpace;)J+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb; +HSPLandroid/graphics/Color;->pack(FFFFLandroid/graphics/ColorSpace;)J HSPLandroid/graphics/Color;->pack(I)J HSPLandroid/graphics/Color;->parseColor(Ljava/lang/String;)I HSPLandroid/graphics/Color;->red()F @@ -6230,6 +6213,8 @@ HSPLandroid/graphics/Compatibility;-><clinit>()V HSPLandroid/graphics/Compatibility;->getTargetSdkVersion()I HSPLandroid/graphics/Compatibility;->setTargetSdkVersion(I)V HSPLandroid/graphics/DrawFilter;-><init>()V +HSPLandroid/graphics/FontListParser;->readFamily(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;Ljava/util/Map;Z)Landroid/text/FontConfig$FontFamily; +HSPLandroid/graphics/FontListParser;->readFont(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;Ljava/util/Map;Z)Landroid/text/FontConfig$Font; HSPLandroid/graphics/FrameInfo;-><init>()V HSPLandroid/graphics/FrameInfo;->addFlags(J)V HSPLandroid/graphics/FrameInfo;->markAnimationsStart()V @@ -6306,13 +6291,11 @@ HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;->toString()Ljava/lang/ HSPLandroid/graphics/ImageDecoder$ImageDecoderSourceTrace;-><init>(Landroid/graphics/ImageDecoder;)V HSPLandroid/graphics/ImageDecoder$ImageDecoderSourceTrace;->close()V HSPLandroid/graphics/ImageDecoder$ImageInfo;-><init>(Landroid/util/Size;ZLjava/lang/String;Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/ImageDecoder$ImageInfo;-><init>(Landroid/util/Size;ZLjava/lang/String;Landroid/graphics/ColorSpace;Landroid/graphics/ImageDecoder$ImageInfo-IA;)V HSPLandroid/graphics/ImageDecoder$InputStreamSource;-><init>(Landroid/content/res/Resources;Ljava/io/InputStream;I)V HSPLandroid/graphics/ImageDecoder$InputStreamSource;->createImageDecoder(Z)Landroid/graphics/ImageDecoder; HSPLandroid/graphics/ImageDecoder$InputStreamSource;->getDensity()I HSPLandroid/graphics/ImageDecoder$InputStreamSource;->getResources()Landroid/content/res/Resources; HSPLandroid/graphics/ImageDecoder$Source;-><init>()V -HSPLandroid/graphics/ImageDecoder$Source;-><init>(Landroid/graphics/ImageDecoder$Source-IA;)V HSPLandroid/graphics/ImageDecoder$Source;->computeDstDensity()I HSPLandroid/graphics/ImageDecoder;->-$$Nest$smdescribeDecoderForTrace(Landroid/graphics/ImageDecoder;)Ljava/lang/String; HSPLandroid/graphics/ImageDecoder;-><init>(JIIZZ)V @@ -6342,7 +6325,7 @@ HSPLandroid/graphics/Insets$1;->createFromParcel(Landroid/os/Parcel;)Landroid/gr HSPLandroid/graphics/Insets$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/graphics/Insets;-><init>(IIII)V HSPLandroid/graphics/Insets;-><init>(IIIILandroid/graphics/Insets-IA;)V -HSPLandroid/graphics/Insets;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Insets; +HSPLandroid/graphics/Insets;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/Insets;->hashCode()I HSPLandroid/graphics/Insets;->max(Landroid/graphics/Insets;Landroid/graphics/Insets;)Landroid/graphics/Insets; HSPLandroid/graphics/Insets;->min(Landroid/graphics/Insets;Landroid/graphics/Insets;)Landroid/graphics/Insets; @@ -6364,18 +6347,18 @@ HSPLandroid/graphics/LinearGradient;-><init>(FFFFJJLandroid/graphics/Shader$Tile HSPLandroid/graphics/LinearGradient;-><init>(FFFF[I[FLandroid/graphics/Shader$TileMode;)V HSPLandroid/graphics/LinearGradient;-><init>(FFFF[J[FLandroid/graphics/Shader$TileMode;)V HSPLandroid/graphics/LinearGradient;-><init>(FFFF[J[FLandroid/graphics/Shader$TileMode;Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/LinearGradient;->createNativeInstance(JZ)J+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb;]Landroid/graphics/LinearGradient;Landroid/graphics/LinearGradient; +HSPLandroid/graphics/LinearGradient;->createNativeInstance(JZ)J HSPLandroid/graphics/MaskFilter;->finalize()V -HSPLandroid/graphics/Matrix;-><init>()V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Matrix;-><init>(Landroid/graphics/Matrix;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/graphics/Matrix;-><init>()V +HSPLandroid/graphics/Matrix;-><init>(Landroid/graphics/Matrix;)V HSPLandroid/graphics/Matrix;->checkPointArrays([FI[FII)V HSPLandroid/graphics/Matrix;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/Matrix;->getValues([F)V HSPLandroid/graphics/Matrix;->invert(Landroid/graphics/Matrix;)Z HSPLandroid/graphics/Matrix;->isIdentity()Z -HSPLandroid/graphics/Matrix;->mapPoints([F)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; +HSPLandroid/graphics/Matrix;->mapPoints([F)V HSPLandroid/graphics/Matrix;->mapPoints([FI[FII)V -HSPLandroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; +HSPLandroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;)Z HSPLandroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;Landroid/graphics/RectF;)Z HSPLandroid/graphics/Matrix;->ni()J HSPLandroid/graphics/Matrix;->postConcat(Landroid/graphics/Matrix;)Z @@ -6411,18 +6394,18 @@ HSPLandroid/graphics/Outline;-><init>()V HSPLandroid/graphics/Outline;->isEmpty()Z HSPLandroid/graphics/Outline;->setAlpha(F)V HSPLandroid/graphics/Outline;->setConvexPath(Landroid/graphics/Path;)V -HSPLandroid/graphics/Outline;->setEmpty()V+]Landroid/graphics/Path;Landroid/graphics/Path;]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/graphics/Outline;->setEmpty()V HSPLandroid/graphics/Outline;->setOval(IIII)V HSPLandroid/graphics/Outline;->setOval(Landroid/graphics/Rect;)V HSPLandroid/graphics/Outline;->setPath(Landroid/graphics/Path;)V HSPLandroid/graphics/Outline;->setRect(IIII)V HSPLandroid/graphics/Outline;->setRect(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Outline;->setRoundRect(IIIIF)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Outline;->setRoundRect(Landroid/graphics/Rect;F)V+]Landroid/graphics/Outline;Landroid/graphics/Outline; +HSPLandroid/graphics/Outline;->setRoundRect(IIIIF)V +HSPLandroid/graphics/Outline;->setRoundRect(Landroid/graphics/Rect;F)V HSPLandroid/graphics/Paint$FontMetrics;-><init>()V HSPLandroid/graphics/Paint$FontMetricsInt;-><init>()V HSPLandroid/graphics/Paint;-><init>()V -HSPLandroid/graphics/Paint;-><init>(I)V+]Landroid/graphics/Paint;missing_types]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/graphics/Paint;-><init>(I)V HSPLandroid/graphics/Paint;-><init>(Landroid/graphics/Paint;)V HSPLandroid/graphics/Paint;->ascent()F HSPLandroid/graphics/Paint;->descent()F @@ -6436,15 +6419,16 @@ HSPLandroid/graphics/Paint;->getFontMetrics()Landroid/graphics/Paint$FontMetrics HSPLandroid/graphics/Paint;->getFontMetrics(Landroid/graphics/Paint$FontMetrics;)F HSPLandroid/graphics/Paint;->getFontMetricsInt()Landroid/graphics/Paint$FontMetricsInt; HSPLandroid/graphics/Paint;->getFontMetricsInt(Landroid/graphics/Paint$FontMetricsInt;)I -HSPLandroid/graphics/Paint;->getFontMetricsInt(Ljava/lang/CharSequence;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V+]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/graphics/Paint;->getFontMetricsInt(Ljava/lang/CharSequence;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V HSPLandroid/graphics/Paint;->getFontVariationSettings()Ljava/lang/String; HSPLandroid/graphics/Paint;->getHinting()I HSPLandroid/graphics/Paint;->getLetterSpacing()F HSPLandroid/graphics/Paint;->getMaskFilter()Landroid/graphics/MaskFilter; -HSPLandroid/graphics/Paint;->getNativeInstance()J+]Landroid/graphics/ColorFilter;Landroid/graphics/BlendModeColorFilter;,Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Paint;missing_types]Landroid/graphics/Shader;Landroid/graphics/BitmapShader;,Landroid/graphics/LinearGradient;,Landroid/graphics/drawable/RippleShader; +HSPLandroid/graphics/Paint;->getNativeInstance()J HSPLandroid/graphics/Paint;->getRunAdvance(Ljava/lang/CharSequence;IIIIZI)F HSPLandroid/graphics/Paint;->getRunAdvance([CIIIIZI)F HSPLandroid/graphics/Paint;->getRunCharacterAdvance(Ljava/lang/CharSequence;IIIIZI[FI)F +HSPLandroid/graphics/Paint;->getRunCharacterAdvance(Ljava/lang/CharSequence;IIIIZI[FILandroid/graphics/RectF;Landroid/graphics/Paint$RunInfo;)F+]Landroid/graphics/Paint;Landroid/text/TextPaint;]Ljava/lang/CharSequence;megamorphic_types HSPLandroid/graphics/Paint;->getRunCharacterAdvance([CIIIIZI[FI)F HSPLandroid/graphics/Paint;->getShader()Landroid/graphics/Shader; HSPLandroid/graphics/Paint;->getShadowLayerColor()I @@ -6478,7 +6462,7 @@ HSPLandroid/graphics/Paint;->installXfermode(Landroid/graphics/Xfermode;)Landroi HSPLandroid/graphics/Paint;->isAntiAlias()Z HSPLandroid/graphics/Paint;->isDither()Z HSPLandroid/graphics/Paint;->isElegantTextHeight()Z -HSPLandroid/graphics/Paint;->isFilterBitmap()Z+]Landroid/graphics/Paint;missing_types +HSPLandroid/graphics/Paint;->isFilterBitmap()Z HSPLandroid/graphics/Paint;->measureText(Ljava/lang/CharSequence;II)F HSPLandroid/graphics/Paint;->measureText(Ljava/lang/String;)F HSPLandroid/graphics/Paint;->measureText(Ljava/lang/String;II)F @@ -6504,7 +6488,7 @@ HSPLandroid/graphics/Paint;->setMaskFilter(Landroid/graphics/MaskFilter;)Landroi HSPLandroid/graphics/Paint;->setPathEffect(Landroid/graphics/PathEffect;)Landroid/graphics/PathEffect; HSPLandroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; HSPLandroid/graphics/Paint;->setShadowLayer(FFFI)V -HSPLandroid/graphics/Paint;->setShadowLayer(FFFJ)V+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb; +HSPLandroid/graphics/Paint;->setShadowLayer(FFFJ)V HSPLandroid/graphics/Paint;->setStartHyphenEdit(I)V HSPLandroid/graphics/Paint;->setStrokeCap(Landroid/graphics/Paint$Cap;)V HSPLandroid/graphics/Paint;->setStrokeJoin(Landroid/graphics/Paint$Join;)V @@ -6512,25 +6496,25 @@ HSPLandroid/graphics/Paint;->setStrokeMiter(F)V HSPLandroid/graphics/Paint;->setStrokeWidth(F)V HSPLandroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V HSPLandroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V -HSPLandroid/graphics/Paint;->setTextLocales(Landroid/os/LocaleList;)V+]Landroid/os/LocaleList;Landroid/os/LocaleList; +HSPLandroid/graphics/Paint;->setTextLocales(Landroid/os/LocaleList;)V HSPLandroid/graphics/Paint;->setTextScaleX(F)V HSPLandroid/graphics/Paint;->setTextSize(F)V HSPLandroid/graphics/Paint;->setTextSkewX(F)V HSPLandroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface; HSPLandroid/graphics/Paint;->setUnderlineText(Z)V HSPLandroid/graphics/Paint;->setXfermode(Landroid/graphics/Xfermode;)Landroid/graphics/Xfermode; -HSPLandroid/graphics/Paint;->syncTextLocalesWithMinikin()V+]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/graphics/Paint;->syncTextLocalesWithMinikin()V HSPLandroid/graphics/PaintFlagsDrawFilter;-><init>(II)V -HSPLandroid/graphics/Path;-><init>()V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/graphics/Path;-><init>()V HSPLandroid/graphics/Path;-><init>(Landroid/graphics/Path;)V HSPLandroid/graphics/Path;->addArc(FFFFFF)V HSPLandroid/graphics/Path;->addArc(Landroid/graphics/RectF;FF)V HSPLandroid/graphics/Path;->addCircle(FFFLandroid/graphics/Path$Direction;)V HSPLandroid/graphics/Path;->addOval(FFFFLandroid/graphics/Path$Direction;)V HSPLandroid/graphics/Path;->addOval(Landroid/graphics/RectF;Landroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addPath(Landroid/graphics/Path;Landroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; +HSPLandroid/graphics/Path;->addPath(Landroid/graphics/Path;Landroid/graphics/Matrix;)V HSPLandroid/graphics/Path;->addRect(FFFFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addRect(Landroid/graphics/RectF;Landroid/graphics/Path$Direction;)V+]Landroid/graphics/Path;Landroid/graphics/Path; +HSPLandroid/graphics/Path;->addRect(Landroid/graphics/RectF;Landroid/graphics/Path$Direction;)V HSPLandroid/graphics/Path;->addRoundRect(FFFFFFLandroid/graphics/Path$Direction;)V HSPLandroid/graphics/Path;->addRoundRect(FFFF[FLandroid/graphics/Path$Direction;)V HSPLandroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V @@ -6538,9 +6522,9 @@ HSPLandroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;[FLandroid/grap HSPLandroid/graphics/Path;->approximate(F)[F HSPLandroid/graphics/Path;->arcTo(FFFFFFZ)V HSPLandroid/graphics/Path;->arcTo(Landroid/graphics/RectF;FF)V -HSPLandroid/graphics/Path;->arcTo(Landroid/graphics/RectF;FFZ)V+]Landroid/graphics/Path;Landroid/graphics/Path; +HSPLandroid/graphics/Path;->arcTo(Landroid/graphics/RectF;FFZ)V HSPLandroid/graphics/Path;->close()V -HSPLandroid/graphics/Path;->computeBounds(Landroid/graphics/RectF;Z)V+]Landroid/graphics/Path;Landroid/graphics/Path; +HSPLandroid/graphics/Path;->computeBounds(Landroid/graphics/RectF;Z)V HSPLandroid/graphics/Path;->cubicTo(FFFFFF)V HSPLandroid/graphics/Path;->getFillType()Landroid/graphics/Path$FillType; HSPLandroid/graphics/Path;->isConvex()Z @@ -6548,15 +6532,15 @@ HSPLandroid/graphics/Path;->isEmpty()Z HSPLandroid/graphics/Path;->lineTo(FF)V HSPLandroid/graphics/Path;->moveTo(FF)V HSPLandroid/graphics/Path;->offset(FF)V -HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z+]Landroid/graphics/Path$Op;Landroid/graphics/Path$Op; +HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z +HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z HSPLandroid/graphics/Path;->rLineTo(FF)V HSPLandroid/graphics/Path;->readOnlyNI()J -HSPLandroid/graphics/Path;->reset()V+]Landroid/graphics/Path;Landroid/graphics/Path; +HSPLandroid/graphics/Path;->reset()V HSPLandroid/graphics/Path;->rewind()V HSPLandroid/graphics/Path;->set(Landroid/graphics/Path;)V HSPLandroid/graphics/Path;->setFillType(Landroid/graphics/Path$FillType;)V -HSPLandroid/graphics/Path;->transform(Landroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; +HSPLandroid/graphics/Path;->transform(Landroid/graphics/Matrix;)V HSPLandroid/graphics/Path;->transform(Landroid/graphics/Matrix;Landroid/graphics/Path;)V HSPLandroid/graphics/PathMeasure;-><init>()V HSPLandroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V @@ -6579,7 +6563,7 @@ HSPLandroid/graphics/Point;-><init>()V HSPLandroid/graphics/Point;-><init>(II)V HSPLandroid/graphics/Point;-><init>(Landroid/graphics/Point;)V HSPLandroid/graphics/Point;->equals(II)Z -HSPLandroid/graphics/Point;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Point; +HSPLandroid/graphics/Point;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/Point;->hashCode()I HSPLandroid/graphics/Point;->offset(II)V HSPLandroid/graphics/Point;->readFromParcel(Landroid/os/Parcel;)V @@ -6589,7 +6573,7 @@ HSPLandroid/graphics/Point;->toString()Ljava/lang/String; HSPLandroid/graphics/PointF;-><init>()V HSPLandroid/graphics/PointF;-><init>(FF)V HSPLandroid/graphics/PointF;->equals(FF)Z -HSPLandroid/graphics/PointF;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/PointF; +HSPLandroid/graphics/PointF;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/PointF;->length()F HSPLandroid/graphics/PointF;->length(FF)F HSPLandroid/graphics/PointF;->set(FF)V @@ -6613,11 +6597,11 @@ HSPLandroid/graphics/RecordingCanvas;->finishRecording(Landroid/graphics/RenderN HSPLandroid/graphics/RecordingCanvas;->getHeight()I HSPLandroid/graphics/RecordingCanvas;->getWidth()I HSPLandroid/graphics/RecordingCanvas;->isHardwareAccelerated()Z -HSPLandroid/graphics/RecordingCanvas;->obtain(Landroid/graphics/RenderNode;II)Landroid/graphics/RecordingCanvas;+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/graphics/RecordingCanvas;->recycle()V+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; +HSPLandroid/graphics/RecordingCanvas;->obtain(Landroid/graphics/RenderNode;II)Landroid/graphics/RecordingCanvas; +HSPLandroid/graphics/RecordingCanvas;->recycle()V HSPLandroid/graphics/RecordingCanvas;->throwIfCannotDraw(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Rect;+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/graphics/Rect$1;Landroid/graphics/Rect$1; +HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Rect; +HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/graphics/Rect$1;->newArray(I)[Landroid/graphics/Rect; HSPLandroid/graphics/Rect$1;->newArray(I)[Ljava/lang/Object; HSPLandroid/graphics/Rect;-><init>()V @@ -6627,7 +6611,7 @@ HSPLandroid/graphics/Rect;->centerX()I HSPLandroid/graphics/Rect;->centerY()I HSPLandroid/graphics/Rect;->contains(II)Z HSPLandroid/graphics/Rect;->contains(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Rect;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Rect; +HSPLandroid/graphics/Rect;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/Rect;->exactCenterX()F HSPLandroid/graphics/Rect;->exactCenterY()F HSPLandroid/graphics/Rect;->hashCode()I @@ -6644,7 +6628,7 @@ HSPLandroid/graphics/Rect;->isEmpty()Z HSPLandroid/graphics/Rect;->isValid()Z HSPLandroid/graphics/Rect;->offset(II)V HSPLandroid/graphics/Rect;->offsetTo(II)V -HSPLandroid/graphics/Rect;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/graphics/Rect;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/graphics/Rect;->scale(F)V HSPLandroid/graphics/Rect;->set(IIII)V HSPLandroid/graphics/Rect;->set(Landroid/graphics/Rect;)V @@ -6653,7 +6637,7 @@ HSPLandroid/graphics/Rect;->setIntersect(Landroid/graphics/Rect;Landroid/graphic HSPLandroid/graphics/Rect;->toShortString(Ljava/lang/StringBuilder;)Ljava/lang/String; HSPLandroid/graphics/Rect;->toString()Ljava/lang/String; HSPLandroid/graphics/Rect;->union(IIII)V -HSPLandroid/graphics/Rect;->union(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/graphics/Rect;->union(Landroid/graphics/Rect;)V HSPLandroid/graphics/Rect;->width()I HSPLandroid/graphics/Rect;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/graphics/RectF;-><init>()V @@ -6667,7 +6651,7 @@ HSPLandroid/graphics/RectF;->equals(Ljava/lang/Object;)Z HSPLandroid/graphics/RectF;->height()F HSPLandroid/graphics/RectF;->inset(FF)V HSPLandroid/graphics/RectF;->intersect(FFFF)Z -HSPLandroid/graphics/RectF;->intersect(Landroid/graphics/RectF;)Z+]Landroid/graphics/RectF;Landroid/graphics/RectF; +HSPLandroid/graphics/RectF;->intersect(Landroid/graphics/RectF;)Z HSPLandroid/graphics/RectF;->isEmpty()Z HSPLandroid/graphics/RectF;->offset(FF)V HSPLandroid/graphics/RectF;->offsetTo(FF)V @@ -6678,7 +6662,7 @@ HSPLandroid/graphics/RectF;->set(Landroid/graphics/Rect;)V HSPLandroid/graphics/RectF;->set(Landroid/graphics/RectF;)V HSPLandroid/graphics/RectF;->setEmpty()V HSPLandroid/graphics/RectF;->union(FFFF)V -HSPLandroid/graphics/RectF;->union(Landroid/graphics/RectF;)V+]Landroid/graphics/RectF;Landroid/graphics/RectF; +HSPLandroid/graphics/RectF;->union(Landroid/graphics/RectF;)V HSPLandroid/graphics/RectF;->width()F HSPLandroid/graphics/Region$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Region; HSPLandroid/graphics/Region$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -6707,14 +6691,14 @@ HSPLandroid/graphics/RenderNode$CompositePositionUpdateListener;->without(Landro HSPLandroid/graphics/RenderNode$PositionUpdateListener;->callPositionChanged(Ljava/lang/ref/WeakReference;JIIII)Z HSPLandroid/graphics/RenderNode$PositionUpdateListener;->callPositionLost(Ljava/lang/ref/WeakReference;J)Z HSPLandroid/graphics/RenderNode;-><init>(J)V -HSPLandroid/graphics/RenderNode;-><init>(Ljava/lang/String;Landroid/graphics/RenderNode$AnimationHost;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/graphics/RenderNode;-><init>(Ljava/lang/String;Landroid/graphics/RenderNode$AnimationHost;)V HSPLandroid/graphics/RenderNode;->addPositionUpdateListener(Landroid/graphics/RenderNode$PositionUpdateListener;)V HSPLandroid/graphics/RenderNode;->adopt(J)Landroid/graphics/RenderNode; HSPLandroid/graphics/RenderNode;->beginRecording(II)Landroid/graphics/RecordingCanvas; HSPLandroid/graphics/RenderNode;->clearStretch()Z HSPLandroid/graphics/RenderNode;->create(Ljava/lang/String;Landroid/graphics/RenderNode$AnimationHost;)Landroid/graphics/RenderNode; HSPLandroid/graphics/RenderNode;->discardDisplayList()V -HSPLandroid/graphics/RenderNode;->endRecording()V+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas; +HSPLandroid/graphics/RenderNode;->endRecording()V HSPLandroid/graphics/RenderNode;->getClipToOutline()Z HSPLandroid/graphics/RenderNode;->getElevation()F HSPLandroid/graphics/RenderNode;->getMatrix(Landroid/graphics/Matrix;)V @@ -6734,7 +6718,7 @@ HSPLandroid/graphics/RenderNode;->offsetTopAndBottom(I)Z HSPLandroid/graphics/RenderNode;->removePositionUpdateListener(Landroid/graphics/RenderNode$PositionUpdateListener;)V HSPLandroid/graphics/RenderNode;->setAlpha(F)Z HSPLandroid/graphics/RenderNode;->setAmbientShadowColor(I)Z -HSPLandroid/graphics/RenderNode;->setAnimationMatrix(Landroid/graphics/Matrix;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; +HSPLandroid/graphics/RenderNode;->setAnimationMatrix(Landroid/graphics/Matrix;)Z HSPLandroid/graphics/RenderNode;->setClipToBounds(Z)Z HSPLandroid/graphics/RenderNode;->setClipToOutline(Z)Z HSPLandroid/graphics/RenderNode;->setElevation(F)Z @@ -6771,7 +6755,7 @@ HSPLandroid/graphics/Shader;->detectColorSpace([J)Landroid/graphics/ColorSpace; HSPLandroid/graphics/Shader;->discardNativeInstance()V HSPLandroid/graphics/Shader;->discardNativeInstanceLocked()V HSPLandroid/graphics/Shader;->getNativeInstance()J -HSPLandroid/graphics/Shader;->getNativeInstance(Z)J+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Shader;Landroid/graphics/BitmapShader;,Landroid/graphics/LinearGradient;,Landroid/graphics/drawable/RippleShader;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/graphics/Shader;->getNativeInstance(Z)J HSPLandroid/graphics/Shader;->setLocalMatrix(Landroid/graphics/Matrix;)V HSPLandroid/graphics/Shader;->shouldDiscardNativeInstance(Z)Z HSPLandroid/graphics/SurfaceTexture$1;->handleMessage(Landroid/os/Message;)V @@ -6789,7 +6773,7 @@ HSPLandroid/graphics/TextureLayer;-><init>(Landroid/graphics/HardwareRenderer;J) HSPLandroid/graphics/TextureLayer;->close()V HSPLandroid/graphics/TextureLayer;->detachSurfaceTexture()V HSPLandroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface$Builder;->createAssetUid(Landroid/content/res/AssetManager;Ljava/lang/String;I[Landroid/graphics/fonts/FontVariationAxis;IILjava/lang/String;)Ljava/lang/String;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/graphics/Typeface$Builder;->createAssetUid(Landroid/content/res/AssetManager;Ljava/lang/String;I[Landroid/graphics/fonts/FontVariationAxis;IILjava/lang/String;)Ljava/lang/String; HSPLandroid/graphics/Typeface$CustomFallbackBuilder;-><init>(Landroid/graphics/fonts/FontFamily;)V HSPLandroid/graphics/Typeface$CustomFallbackBuilder;->build()Landroid/graphics/Typeface; HSPLandroid/graphics/Typeface$CustomFallbackBuilder;->setStyle(Landroid/graphics/fonts/FontStyle;)Landroid/graphics/Typeface$CustomFallbackBuilder; @@ -6803,9 +6787,9 @@ HSPLandroid/graphics/Typeface;->createWeightStyle(Landroid/graphics/Typeface;IZ) HSPLandroid/graphics/Typeface;->defaultFromStyle(I)Landroid/graphics/Typeface; HSPLandroid/graphics/Typeface;->deserializeFontMap(Ljava/nio/ByteBuffer;Ljava/util/Map;)[J HSPLandroid/graphics/Typeface;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/Typeface;->findFromCache(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;+]Landroid/util/LruCache;Landroid/util/LruCache; +HSPLandroid/graphics/Typeface;->findFromCache(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface; HSPLandroid/graphics/Typeface;->getStyle()I -HSPLandroid/graphics/Typeface;->getSystemDefaultTypeface(Ljava/lang/String;)Landroid/graphics/Typeface;+]Ljava/util/Map;Landroid/util/ArrayMap; +HSPLandroid/graphics/Typeface;->getSystemDefaultTypeface(Ljava/lang/String;)Landroid/graphics/Typeface; HSPLandroid/graphics/Typeface;->getSystemFontFamilyName()Ljava/lang/String; HSPLandroid/graphics/Typeface;->hasFontFamily(Ljava/lang/String;)Z HSPLandroid/graphics/Typeface;->readString(Ljava/nio/ByteBuffer;)Ljava/lang/String; @@ -7068,7 +7052,7 @@ HSPLandroid/graphics/drawable/ColorDrawable;-><init>(Landroid/graphics/drawable/ HSPLandroid/graphics/drawable/ColorDrawable;-><init>(Landroid/graphics/drawable/ColorDrawable$ColorState;Landroid/content/res/Resources;Landroid/graphics/drawable/ColorDrawable-IA;)V HSPLandroid/graphics/drawable/ColorDrawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/ColorDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/ColorDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/drawable/ColorDrawable;Landroid/graphics/drawable/ColorDrawable; +HSPLandroid/graphics/drawable/ColorDrawable;->draw(Landroid/graphics/Canvas;)V HSPLandroid/graphics/drawable/ColorDrawable;->getAlpha()I HSPLandroid/graphics/drawable/ColorDrawable;->getChangingConfigurations()I HSPLandroid/graphics/drawable/ColorDrawable;->getColor()I @@ -7094,12 +7078,12 @@ HSPLandroid/graphics/drawable/Drawable;->applyTheme(Landroid/content/res/Resourc HSPLandroid/graphics/drawable/Drawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/Drawable;->clearColorFilter()V HSPLandroid/graphics/drawable/Drawable;->clearMutated()V -HSPLandroid/graphics/drawable/Drawable;->copyBounds(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/graphics/drawable/Drawable;->copyBounds(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/Drawable;->createFromXmlForDensity(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/Drawable;->createFromXmlInner(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/Drawable;->createFromXmlInnerForDensity(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; -HSPLandroid/graphics/drawable/Drawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/graphics/drawable/Drawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback; HSPLandroid/graphics/drawable/Drawable;->getChangingConfigurations()I HSPLandroid/graphics/drawable/Drawable;->getColorFilter()Landroid/graphics/ColorFilter; HSPLandroid/graphics/drawable/Drawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; @@ -7109,14 +7093,14 @@ HSPLandroid/graphics/drawable/Drawable;->getIntrinsicHeight()I HSPLandroid/graphics/drawable/Drawable;->getIntrinsicWidth()I HSPLandroid/graphics/drawable/Drawable;->getLayoutDirection()I HSPLandroid/graphics/drawable/Drawable;->getLevel()I -HSPLandroid/graphics/drawable/Drawable;->getMinimumHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->getMinimumWidth()I+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable; +HSPLandroid/graphics/drawable/Drawable;->getMinimumHeight()I +HSPLandroid/graphics/drawable/Drawable;->getMinimumWidth()I HSPLandroid/graphics/drawable/Drawable;->getOutline(Landroid/graphics/Outline;)V HSPLandroid/graphics/drawable/Drawable;->getPadding(Landroid/graphics/Rect;)Z HSPLandroid/graphics/drawable/Drawable;->getState()[I HSPLandroid/graphics/drawable/Drawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/Drawable;->inflateWithAttributes(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/TypedArray;I)V -HSPLandroid/graphics/drawable/Drawable;->invalidateSelf()V+]Landroid/graphics/drawable/Drawable$Callback;missing_types]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/Drawable;->invalidateSelf()V HSPLandroid/graphics/drawable/Drawable;->isProjected()Z HSPLandroid/graphics/drawable/Drawable;->isStateful()Z HSPLandroid/graphics/drawable/Drawable;->isVisible()Z @@ -7127,14 +7111,14 @@ HSPLandroid/graphics/drawable/Drawable;->onBoundsChange(Landroid/graphics/Rect;) HSPLandroid/graphics/drawable/Drawable;->onLevelChange(I)Z HSPLandroid/graphics/drawable/Drawable;->onStateChange([I)Z HSPLandroid/graphics/drawable/Drawable;->parseBlendMode(ILandroid/graphics/BlendMode;)Landroid/graphics/BlendMode; -HSPLandroid/graphics/drawable/Drawable;->resolveDensity(Landroid/content/res/Resources;I)I+]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/graphics/drawable/Drawable;->resolveDensity(Landroid/content/res/Resources;I)I HSPLandroid/graphics/drawable/Drawable;->resolveOpacity(II)I HSPLandroid/graphics/drawable/Drawable;->scaleFromDensity(FII)F HSPLandroid/graphics/drawable/Drawable;->scaleFromDensity(IIIZ)I HSPLandroid/graphics/drawable/Drawable;->scheduleSelf(Ljava/lang/Runnable;J)V HSPLandroid/graphics/drawable/Drawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/Drawable;->setBounds(IIII)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->setBounds(Landroid/graphics/Rect;)V+]Landroid/graphics/drawable/Drawable;megamorphic_types +HSPLandroid/graphics/drawable/Drawable;->setBounds(IIII)V +HSPLandroid/graphics/drawable/Drawable;->setBounds(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/Drawable;->setCallback(Landroid/graphics/drawable/Drawable$Callback;)V HSPLandroid/graphics/drawable/Drawable;->setChangingConfigurations(I)V HSPLandroid/graphics/drawable/Drawable;->setColorFilter(ILandroid/graphics/PorterDuff$Mode;)V @@ -7143,20 +7127,19 @@ HSPLandroid/graphics/drawable/Drawable;->setHotspot(FF)V HSPLandroid/graphics/drawable/Drawable;->setLayoutDirection(I)Z HSPLandroid/graphics/drawable/Drawable;->setLevel(I)Z HSPLandroid/graphics/drawable/Drawable;->setSrcDensityOverride(I)V -HSPLandroid/graphics/drawable/Drawable;->setState([I)Z+]Landroid/graphics/drawable/Drawable;megamorphic_types +HSPLandroid/graphics/drawable/Drawable;->setState([I)Z HSPLandroid/graphics/drawable/Drawable;->setTint(I)V HSPLandroid/graphics/drawable/Drawable;->setTintList(Landroid/content/res/ColorStateList;)V HSPLandroid/graphics/drawable/Drawable;->setTintMode(Landroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/drawable/Drawable;->setVisible(ZZ)Z+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/Drawable;->setVisible(ZZ)Z HSPLandroid/graphics/drawable/Drawable;->unscheduleSelf(Ljava/lang/Runnable;)V -HSPLandroid/graphics/drawable/Drawable;->updateBlendModeFilter(Landroid/graphics/BlendModeColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/BlendMode;)Landroid/graphics/BlendModeColorFilter;+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/BlendModeColorFilter;Landroid/graphics/BlendModeColorFilter;]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable;,Landroid/graphics/drawable/ShapeDrawable;,Landroid/graphics/drawable/VectorDrawable; +HSPLandroid/graphics/drawable/Drawable;->updateBlendModeFilter(Landroid/graphics/BlendModeColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/BlendMode;)Landroid/graphics/BlendModeColorFilter; HSPLandroid/graphics/drawable/Drawable;->updateTintFilter(Landroid/graphics/PorterDuffColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuffColorFilter; HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>()V -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>(Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback-IA;)V HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->unwrap()Landroid/graphics/drawable/Drawable$Callback; HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->wrap(Landroid/graphics/drawable/Drawable$Callback;)Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;-><init>(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;Landroid/graphics/drawable/DrawableContainer;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;-><init>(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;Landroid/graphics/drawable/DrawableContainer;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->addChild(Landroid/graphics/drawable/Drawable;)I HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->canApplyTheme()Z @@ -7199,11 +7182,11 @@ HSPLandroid/graphics/drawable/DrawableContainer;->getOpacity()I HSPLandroid/graphics/drawable/DrawableContainer;->getOpticalInsets()Landroid/graphics/Insets; HSPLandroid/graphics/drawable/DrawableContainer;->getOutline(Landroid/graphics/Outline;)V HSPLandroid/graphics/drawable/DrawableContainer;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/DrawableContainer;->initializeDrawableForDisplay(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;]Landroid/graphics/drawable/DrawableContainer;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/StateListDrawable;,Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable; +HSPLandroid/graphics/drawable/DrawableContainer;->initializeDrawableForDisplay(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/DrawableContainer;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/DrawableContainer;->isAutoMirrored()Z HSPLandroid/graphics/drawable/DrawableContainer;->isStateful()Z -HSPLandroid/graphics/drawable/DrawableContainer;->jumpToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/DrawableContainer;->jumpToCurrentState()V HSPLandroid/graphics/drawable/DrawableContainer;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/DrawableContainer;->needsMirroring()Z HSPLandroid/graphics/drawable/DrawableContainer;->onBoundsChange(Landroid/graphics/Rect;)V @@ -7237,27 +7220,27 @@ HSPLandroid/graphics/drawable/DrawableWrapper;->applyTheme(Landroid/content/res/ HSPLandroid/graphics/drawable/DrawableWrapper;->canApplyTheme()Z HSPLandroid/graphics/drawable/DrawableWrapper;->clearMutated()V HSPLandroid/graphics/drawable/DrawableWrapper;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->getChangingConfigurations()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;Landroid/graphics/drawable/InsetDrawable$InsetState; +HSPLandroid/graphics/drawable/DrawableWrapper;->getChangingConfigurations()I HSPLandroid/graphics/drawable/DrawableWrapper;->getColorFilter()Landroid/graphics/ColorFilter; HSPLandroid/graphics/drawable/DrawableWrapper;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; HSPLandroid/graphics/drawable/DrawableWrapper;->getDrawable()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/DrawableWrapper;->getIntrinsicHeight()I HSPLandroid/graphics/drawable/DrawableWrapper;->getIntrinsicWidth()I HSPLandroid/graphics/drawable/DrawableWrapper;->getOpacity()I -HSPLandroid/graphics/drawable/DrawableWrapper;->getPadding(Landroid/graphics/Rect;)Z+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/DrawableWrapper;->getPadding(Landroid/graphics/Rect;)Z HSPLandroid/graphics/drawable/DrawableWrapper;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/DrawableWrapper;->inflateChildDrawable(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable$Callback;Landroid/graphics/drawable/RippleDrawable;]Landroid/graphics/drawable/DrawableWrapper;Landroid/graphics/drawable/InsetDrawable; +HSPLandroid/graphics/drawable/DrawableWrapper;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/DrawableWrapper;->isStateful()Z HSPLandroid/graphics/drawable/DrawableWrapper;->jumpToCurrentState()V HSPLandroid/graphics/drawable/DrawableWrapper;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/DrawableWrapper;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; HSPLandroid/graphics/drawable/DrawableWrapper;->onBoundsChange(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/DrawableWrapper;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/DrawableWrapper;->onStateChange([I)Z+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper;missing_types +HSPLandroid/graphics/drawable/DrawableWrapper;->onStateChange([I)Z HSPLandroid/graphics/drawable/DrawableWrapper;->setAlpha(I)V HSPLandroid/graphics/drawable/DrawableWrapper;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper;missing_types +HSPLandroid/graphics/drawable/DrawableWrapper;->setDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/DrawableWrapper;->setHotspot(FF)V HSPLandroid/graphics/drawable/DrawableWrapper;->setTintBlendMode(Landroid/graphics/BlendMode;)V HSPLandroid/graphics/drawable/DrawableWrapper;->setTintList(Landroid/content/res/ColorStateList;)V @@ -7287,8 +7270,8 @@ HSPLandroid/graphics/drawable/GradientDrawable;->applyTheme(Landroid/content/res HSPLandroid/graphics/drawable/GradientDrawable;->applyThemeChildElements(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/GradientDrawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/GradientDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/drawable/GradientDrawable;->ensureValidRect()Z+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/graphics/drawable/GradientDrawable;Landroid/graphics/drawable/GradientDrawable; +HSPLandroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V +HSPLandroid/graphics/drawable/GradientDrawable;->ensureValidRect()Z HSPLandroid/graphics/drawable/GradientDrawable;->getChangingConfigurations()I HSPLandroid/graphics/drawable/GradientDrawable;->getColorFilter()Landroid/graphics/ColorFilter; HSPLandroid/graphics/drawable/GradientDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; @@ -7329,7 +7312,7 @@ HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawablePadding(L HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableSize(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableSolid(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableStroke(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateLocalState(Landroid/content/res/Resources;)V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/drawable/GradientDrawable;Landroid/graphics/drawable/GradientDrawable; +HSPLandroid/graphics/drawable/GradientDrawable;->updateLocalState(Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/GradientDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/Icon$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/drawable/Icon; HSPLandroid/graphics/drawable/Icon$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -7354,7 +7337,7 @@ HSPLandroid/graphics/drawable/Icon;->setBitmap(Landroid/graphics/Bitmap;)V HSPLandroid/graphics/drawable/Icon;->setTint(I)Landroid/graphics/drawable/Icon; HSPLandroid/graphics/drawable/Icon;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->-$$Nest$fputmThemeAttrs(Landroid/graphics/drawable/InsetDrawable$InsetState;[I)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue; +HSPLandroid/graphics/drawable/InsetDrawable$InsetState;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->applyDensityScaling(II)V HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->onDensityChanged(II)V @@ -7370,19 +7353,19 @@ HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/ HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;Landroid/graphics/drawable/InsetDrawable-IA;)V HSPLandroid/graphics/drawable/InsetDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/InsetDrawable;->getInset(Landroid/content/res/TypedArray;ILandroid/graphics/drawable/InsetDrawable$InsetValue;)Landroid/graphics/drawable/InsetDrawable$InsetValue; -HSPLandroid/graphics/drawable/InsetDrawable;->getInsets(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue;]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicHeight()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types +HSPLandroid/graphics/drawable/InsetDrawable;->getInsets(Landroid/graphics/Rect;)V +HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicHeight()I +HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicWidth()I HSPLandroid/graphics/drawable/InsetDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/InsetDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types +HSPLandroid/graphics/drawable/InsetDrawable;->getOutline(Landroid/graphics/Outline;)V HSPLandroid/graphics/drawable/InsetDrawable;->getPadding(Landroid/graphics/Rect;)Z HSPLandroid/graphics/drawable/InsetDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/InsetDrawable;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/InsetDrawable;->onBoundsChange(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue; +HSPLandroid/graphics/drawable/InsetDrawable;->onBoundsChange(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/InsetDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/InsetDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;-><init>(I)V -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;Landroid/graphics/drawable/LayerDrawable;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/Drawable$ConstantState;megamorphic_types]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;Landroid/graphics/drawable/LayerDrawable;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->applyDensityScaling(II)V HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->setDensity(I)V @@ -7402,11 +7385,11 @@ HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->newDrawable(Landroid/co HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->onDensityChanged(II)V HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->setDensity(I)V HSPLandroid/graphics/drawable/LayerDrawable;-><init>()V -HSPLandroid/graphics/drawable/LayerDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/LayerDrawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/LayerDrawable$LayerState;)V -HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/Drawable;[IIIIII)Landroid/graphics/drawable/LayerDrawable$ChildDrawable;+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;)I+]Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/RippleDrawable$RippleState; +HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/Drawable;[IIIIII)Landroid/graphics/drawable/LayerDrawable$ChildDrawable; +HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;)I HSPLandroid/graphics/drawable/LayerDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/LayerDrawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/LayerDrawable;->clearMutated()V @@ -7420,23 +7403,23 @@ HSPLandroid/graphics/drawable/LayerDrawable;->findIndexByLayerId(I)I HSPLandroid/graphics/drawable/LayerDrawable;->getChangingConfigurations()I HSPLandroid/graphics/drawable/LayerDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; HSPLandroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicHeight()I +HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicWidth()I HSPLandroid/graphics/drawable/LayerDrawable;->getNumberOfLayers()I HSPLandroid/graphics/drawable/LayerDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/LayerDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline; -HSPLandroid/graphics/drawable/LayerDrawable;->getPadding(Landroid/graphics/Rect;)Z+]Landroid/graphics/drawable/LayerDrawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;->getOutline(Landroid/graphics/Outline;)V +HSPLandroid/graphics/drawable/LayerDrawable;->getPadding(Landroid/graphics/Rect;)Z HSPLandroid/graphics/drawable/LayerDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/LayerDrawable;->inflateLayers(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/LayerDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/LayerDrawable$LayerState;,Landroid/graphics/drawable/RippleDrawable$RippleState;]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/LayerDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/graphics/drawable/LayerDrawable;->isAutoMirrored()Z HSPLandroid/graphics/drawable/LayerDrawable;->isProjected()Z HSPLandroid/graphics/drawable/LayerDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/LayerDrawable;->jumpToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;->jumpToCurrentState()V HSPLandroid/graphics/drawable/LayerDrawable;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/LayerDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/LayerDrawable;->refreshChildPadding(ILandroid/graphics/drawable/LayerDrawable$ChildDrawable;)Z+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;->onStateChange([I)Z +HSPLandroid/graphics/drawable/LayerDrawable;->refreshChildPadding(ILandroid/graphics/drawable/LayerDrawable$ChildDrawable;)Z HSPLandroid/graphics/drawable/LayerDrawable;->refreshPadding()V HSPLandroid/graphics/drawable/LayerDrawable;->resolveGravity(IIIII)I HSPLandroid/graphics/drawable/LayerDrawable;->resumeChildInvalidation()V @@ -7452,10 +7435,10 @@ HSPLandroid/graphics/drawable/LayerDrawable;->setLayerInset(IIIII)V HSPLandroid/graphics/drawable/LayerDrawable;->setPaddingMode(I)V HSPLandroid/graphics/drawable/LayerDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V HSPLandroid/graphics/drawable/LayerDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/LayerDrawable;->setVisible(ZZ)Z+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;->setVisible(ZZ)Z HSPLandroid/graphics/drawable/LayerDrawable;->suspendChildInvalidation()V HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerBounds(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerBoundsInternal(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;missing_types +HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerBoundsInternal(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerFromTypedArray(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/LayerDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/NinePatchDrawable$$ExternalSyntheticLambda0;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V @@ -7552,12 +7535,12 @@ HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->newDrawable()Landroid HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->onDensityChanged(II)V HSPLandroid/graphics/drawable/RippleDrawable;-><init>()V -HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/content/res/ColorStateList;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/RippleDrawable;missing_types -HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/graphics/drawable/RippleDrawable$RippleState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/content/res/ColorStateList;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V +HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/graphics/drawable/RippleDrawable$RippleState;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/graphics/drawable/RippleDrawable$RippleState;Landroid/content/res/Resources;Landroid/graphics/drawable/RippleDrawable-IA;)V HSPLandroid/graphics/drawable/RippleDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/RippleDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/RippleDrawable;->cancelExitingRipples()V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/RippleDrawable;->cancelExitingRipples()V HSPLandroid/graphics/drawable/RippleDrawable;->clearHotspots()V HSPLandroid/graphics/drawable/RippleDrawable;->computeRadius()F HSPLandroid/graphics/drawable/RippleDrawable;->createAnimationProperties(FFFFFF)Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties; @@ -7566,27 +7549,27 @@ HSPLandroid/graphics/drawable/RippleDrawable;->createConstantState(Landroid/grap HSPLandroid/graphics/drawable/RippleDrawable;->draw(Landroid/graphics/Canvas;)V HSPLandroid/graphics/drawable/RippleDrawable;->drawBackgroundAndRipples(Landroid/graphics/Canvas;)V HSPLandroid/graphics/drawable/RippleDrawable;->drawContent(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/RippleDrawable;->drawPatterned(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;]Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;]Landroid/graphics/drawable/RippleDrawable;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/graphics/drawable/RippleDrawable;->drawPatterned(Landroid/graphics/Canvas;)V HSPLandroid/graphics/drawable/RippleDrawable;->drawPatternedBackground(Landroid/graphics/Canvas;FF)V HSPLandroid/graphics/drawable/RippleDrawable;->exitPatternedAnimation()V -HSPLandroid/graphics/drawable/RippleDrawable;->exitPatternedBackgroundAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/graphics/drawable/RippleDrawable;missing_types +HSPLandroid/graphics/drawable/RippleDrawable;->exitPatternedBackgroundAnimation()V HSPLandroid/graphics/drawable/RippleDrawable;->getComputedRadius()I HSPLandroid/graphics/drawable/RippleDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/RippleDrawable;->getDirtyBounds()Landroid/graphics/Rect;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleDrawable;missing_types +HSPLandroid/graphics/drawable/RippleDrawable;->getDirtyBounds()Landroid/graphics/Rect; HSPLandroid/graphics/drawable/RippleDrawable;->getMaskType()I HSPLandroid/graphics/drawable/RippleDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/RippleDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/InsetDrawable;,Landroid/graphics/drawable/StateListDrawable; +HSPLandroid/graphics/drawable/RippleDrawable;->getOutline(Landroid/graphics/Outline;)V HSPLandroid/graphics/drawable/RippleDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/RippleDrawable;->invalidateSelf()V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/RippleDrawable;->invalidateSelf()V HSPLandroid/graphics/drawable/RippleDrawable;->invalidateSelf(Z)V -HSPLandroid/graphics/drawable/RippleDrawable;->isBounded()Z+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->isProjected()Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/graphics/drawable/RippleDrawable;->isBounded()Z +HSPLandroid/graphics/drawable/RippleDrawable;->isProjected()Z HSPLandroid/graphics/drawable/RippleDrawable;->isStateful()Z HSPLandroid/graphics/drawable/RippleDrawable;->jumpToCurrentState()V HSPLandroid/graphics/drawable/RippleDrawable;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/RippleDrawable;->onBoundsChange(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/RippleDrawable;->onHotspotBoundsChanged()V -HSPLandroid/graphics/drawable/RippleDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/RippleDrawable;missing_types +HSPLandroid/graphics/drawable/RippleDrawable;->onStateChange([I)Z HSPLandroid/graphics/drawable/RippleDrawable;->pruneRipples()V HSPLandroid/graphics/drawable/RippleDrawable;->setBackgroundActive(ZZZZ)V HSPLandroid/graphics/drawable/RippleDrawable;->setColor(Landroid/content/res/ColorStateList;)V @@ -7595,11 +7578,11 @@ HSPLandroid/graphics/drawable/RippleDrawable;->setHotspotBounds(IIII)V HSPLandroid/graphics/drawable/RippleDrawable;->setPaddingMode(I)V HSPLandroid/graphics/drawable/RippleDrawable;->setRippleActive(Z)V HSPLandroid/graphics/drawable/RippleDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/RippleDrawable;->startBackgroundAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator; +HSPLandroid/graphics/drawable/RippleDrawable;->startBackgroundAnimation()V HSPLandroid/graphics/drawable/RippleDrawable;->tryRippleEnter()V HSPLandroid/graphics/drawable/RippleDrawable;->updateLocalState()V HSPLandroid/graphics/drawable/RippleDrawable;->updateMaskShaderIfNeeded()V -HSPLandroid/graphics/drawable/RippleDrawable;->updateRipplePaint()Landroid/graphics/Paint;+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/BitmapShader;Landroid/graphics/BitmapShader;]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/PorterDuffColorFilter;Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;]Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable;]Landroid/graphics/drawable/RippleShader;Landroid/graphics/drawable/RippleShader;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/graphics/drawable/RippleDrawable;->updateRipplePaint()Landroid/graphics/Paint; HSPLandroid/graphics/drawable/RippleDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/RippleDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/RippleForeground$1;->onAnimationEnd(Landroid/animation/Animator;)V @@ -7677,7 +7660,7 @@ HSPLandroid/graphics/drawable/ShapeDrawable;->getOpacity()I HSPLandroid/graphics/drawable/ShapeDrawable;->getOutline(Landroid/graphics/Outline;)V HSPLandroid/graphics/drawable/ShapeDrawable;->getPadding(Landroid/graphics/Rect;)Z HSPLandroid/graphics/drawable/ShapeDrawable;->getPaint()Landroid/graphics/Paint; -HSPLandroid/graphics/drawable/ShapeDrawable;->isStateful()Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList; +HSPLandroid/graphics/drawable/ShapeDrawable;->isStateful()Z HSPLandroid/graphics/drawable/ShapeDrawable;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/ShapeDrawable;->onBoundsChange(Landroid/graphics/Rect;)V HSPLandroid/graphics/drawable/ShapeDrawable;->onDraw(Landroid/graphics/drawable/shapes/Shape;Landroid/graphics/Canvas;Landroid/graphics/Paint;)V @@ -7687,7 +7670,7 @@ HSPLandroid/graphics/drawable/ShapeDrawable;->setIntrinsicWidth(I)V HSPLandroid/graphics/drawable/ShapeDrawable;->setShape(Landroid/graphics/drawable/shapes/Shape;)V HSPLandroid/graphics/drawable/ShapeDrawable;->setTintList(Landroid/content/res/ColorStateList;)V HSPLandroid/graphics/drawable/ShapeDrawable;->updateLocalState()V -HSPLandroid/graphics/drawable/ShapeDrawable;->updateShape()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/ShapeDrawable;Landroid/graphics/drawable/PaintDrawable;]Landroid/graphics/drawable/shapes/Shape;Landroid/graphics/drawable/shapes/OvalShape;,Landroid/graphics/drawable/shapes/RoundRectShape; +HSPLandroid/graphics/drawable/ShapeDrawable;->updateShape()V HSPLandroid/graphics/drawable/StateListDrawable$StateListState;-><init>(Landroid/graphics/drawable/StateListDrawable$StateListState;Landroid/graphics/drawable/StateListDrawable;Landroid/content/res/Resources;)V HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->addStateSet([ILandroid/graphics/drawable/Drawable;)I HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->canApplyTheme()Z @@ -7736,23 +7719,23 @@ HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getProperty(Ljava/lang/ HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getPropertyIndex(Ljava/lang/String;)I HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->inflate(Landroid/content/res/Resources;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->isStateful()Z -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->onStateChange([I)Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/VectorDrawable$VFullPath;Landroid/graphics/drawable/VectorDrawable$VFullPath; -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V+]Landroid/content/res/ComplexColor;Landroid/content/res/ColorStateList;,Landroid/content/res/GradientColor;]Landroid/content/res/GradientColor;Landroid/content/res/GradientColor;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/Shader;Landroid/graphics/LinearGradient;]Ljava/lang/String;Ljava/lang/String;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer; +HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->onStateChange([I)Z +HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->-$$Nest$fgetmChangingConfigurations(Landroid/graphics/drawable/VectorDrawable$VGroup;)I HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->-$$Nest$fgetmNativePtr(Landroid/graphics/drawable/VectorDrawable$VGroup;)J HSPLandroid/graphics/drawable/VectorDrawable$VGroup;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;-><init>(Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/util/ArrayMap;)V+]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->addChild(Landroid/graphics/drawable/VectorDrawable$VObject;)V+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/graphics/drawable/VectorDrawable$VGroup;-><init>(Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/util/ArrayMap;)V +HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->addChild(Landroid/graphics/drawable/VectorDrawable$VObject;)V HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->canApplyTheme()Z HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getGroupName()Ljava/lang/String; HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getNativePtr()J -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getNativeSize()I+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getNativeSize()I HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getProperty(Ljava/lang/String;)Landroid/util/Property; HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->inflate(Landroid/content/res/Resources;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->isStateful()Z -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->onStateChange([I)Z+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->setTree(Lcom/android/internal/util/VirtualRefBasePtr;)V+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->onStateChange([I)Z +HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->setTree(Lcom/android/internal/util/VirtualRefBasePtr;)V HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/VectorDrawable$VObject;-><init>()V HSPLandroid/graphics/drawable/VectorDrawable$VObject;->isTreeValid()Z @@ -7762,25 +7745,25 @@ HSPLandroid/graphics/drawable/VectorDrawable$VPath;-><init>(Landroid/graphics/dr HSPLandroid/graphics/drawable/VectorDrawable$VPath;->getPathName()Ljava/lang/String; HSPLandroid/graphics/drawable/VectorDrawable$VPath;->getProperty(Ljava/lang/String;)Landroid/util/Property; HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->-$$Nest$mcreateNativeTree(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VGroup;)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;-><init>(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;)V+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;-><init>(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;)V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->applyDensityScaling(II)V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->applyTheme(Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->canReuseCache()Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->canReuseCache()Z HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->createNativeTree(Landroid/graphics/drawable/VectorDrawable$VGroup;)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->createNativeTreeFromCopy(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VGroup;)V+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->createNativeTreeFromCopy(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VGroup;)V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->finalize()V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getAlpha()F+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getAlpha()F HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getNativeRenderer()J+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->isStateful()Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getNativeRenderer()J +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->isStateful()Z HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->newDrawable()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->onStateChange([I)Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->onTreeConstructionFinished()V+]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->onTreeConstructionFinished()V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setAlpha(F)Z HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setDensity(I)Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setViewportSize(FF)V+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; +HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setViewportSize(FF)V HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->updateCacheStates()V HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnAddChild(JJ)V HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateFullPath()J @@ -7807,33 +7790,33 @@ HSPLandroid/graphics/drawable/VectorDrawable;->applyTheme(Landroid/content/res/R HSPLandroid/graphics/drawable/VectorDrawable;->canApplyTheme()Z HSPLandroid/graphics/drawable/VectorDrawable;->clearMutated()V HSPLandroid/graphics/drawable/VectorDrawable;->computeVectorSize()V -HSPLandroid/graphics/drawable/VectorDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/ColorFilter;Landroid/graphics/BlendModeColorFilter;,Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable;->getAlpha()I+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; +HSPLandroid/graphics/drawable/VectorDrawable;->draw(Landroid/graphics/Canvas;)V +HSPLandroid/graphics/drawable/VectorDrawable;->getAlpha()I HSPLandroid/graphics/drawable/VectorDrawable;->getChangingConfigurations()I HSPLandroid/graphics/drawable/VectorDrawable;->getColorFilter()Landroid/graphics/ColorFilter; HSPLandroid/graphics/drawable/VectorDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; HSPLandroid/graphics/drawable/VectorDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/VectorDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; +HSPLandroid/graphics/drawable/VectorDrawable;->getIntrinsicWidth()I HSPLandroid/graphics/drawable/VectorDrawable;->getNativeTree()J HSPLandroid/graphics/drawable/VectorDrawable;->getOpacity()I HSPLandroid/graphics/drawable/VectorDrawable;->getPixelSize()F HSPLandroid/graphics/drawable/VectorDrawable;->getTargetByName(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/VectorDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/graphics/drawable/VectorDrawable$VClipPath;Landroid/graphics/drawable/VectorDrawable$VClipPath;]Landroid/graphics/drawable/VectorDrawable$VFullPath;Landroid/graphics/drawable/VectorDrawable$VFullPath;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Stack;Ljava/util/Stack;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/graphics/drawable/VectorDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V +HSPLandroid/graphics/drawable/VectorDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V HSPLandroid/graphics/drawable/VectorDrawable;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/VectorDrawable;->isStateful()Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; +HSPLandroid/graphics/drawable/VectorDrawable;->isStateful()Z HSPLandroid/graphics/drawable/VectorDrawable;->mutate()Landroid/graphics/drawable/Drawable; HSPLandroid/graphics/drawable/VectorDrawable;->needMirroring()Z -HSPLandroid/graphics/drawable/VectorDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; +HSPLandroid/graphics/drawable/VectorDrawable;->onStateChange([I)Z HSPLandroid/graphics/drawable/VectorDrawable;->setAllowCaching(Z)V HSPLandroid/graphics/drawable/VectorDrawable;->setAlpha(I)V HSPLandroid/graphics/drawable/VectorDrawable;->setAutoMirrored(Z)V HSPLandroid/graphics/drawable/VectorDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V HSPLandroid/graphics/drawable/VectorDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/VectorDrawable;->setTintList(Landroid/content/res/ColorStateList;)V+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/VectorDrawable;->updateColorFilters(Landroid/graphics/BlendMode;Landroid/content/res/ColorStateList;)V+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; +HSPLandroid/graphics/drawable/VectorDrawable;->setTintList(Landroid/content/res/ColorStateList;)V +HSPLandroid/graphics/drawable/VectorDrawable;->updateColorFilters(Landroid/graphics/BlendMode;Landroid/content/res/ColorStateList;)V HSPLandroid/graphics/drawable/VectorDrawable;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/VectorDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; +HSPLandroid/graphics/drawable/VectorDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V HSPLandroid/graphics/drawable/shapes/OvalShape;-><init>()V HSPLandroid/graphics/drawable/shapes/OvalShape;->draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V HSPLandroid/graphics/drawable/shapes/OvalShape;->getOutline(Landroid/graphics/Outline;)V @@ -7910,13 +7893,13 @@ HSPLandroid/graphics/text/LineBreaker;->computeLineBreaks(Landroid/graphics/text HSPLandroid/graphics/text/MeasuredText$Builder;-><init>([C)V HSPLandroid/graphics/text/MeasuredText$Builder;->appendReplacementRun(Landroid/graphics/Paint;IF)Landroid/graphics/text/MeasuredText$Builder; HSPLandroid/graphics/text/MeasuredText$Builder;->appendStyleRun(Landroid/graphics/Paint;IZ)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText$Builder;->appendStyleRun(Landroid/graphics/Paint;Landroid/graphics/text/LineBreakConfig;IZ)Landroid/graphics/text/MeasuredText$Builder;+]Landroid/graphics/Paint;Landroid/text/TextPaint; +HSPLandroid/graphics/text/MeasuredText$Builder;->appendStyleRun(Landroid/graphics/Paint;Landroid/graphics/text/LineBreakConfig;IZ)Landroid/graphics/text/MeasuredText$Builder; HSPLandroid/graphics/text/MeasuredText$Builder;->build()Landroid/graphics/text/MeasuredText; HSPLandroid/graphics/text/MeasuredText$Builder;->ensureNativePtrNoReuse()V HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeHyphenation(I)Landroid/graphics/text/MeasuredText$Builder; HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeHyphenation(Z)Landroid/graphics/text/MeasuredText$Builder; HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeLayout(Z)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText;->getCharWidthAt(I)F+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/graphics/text/MeasuredText;->getCharWidthAt(I)F HSPLandroid/graphics/text/MeasuredText;->getChars()[C HSPLandroid/graphics/text/MeasuredText;->getNativePtr()J HSPLandroid/hardware/Camera$CameraInfo;-><init>()V @@ -7986,7 +7969,7 @@ HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->removeSensor(Landroid/ HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;-><init>(Landroid/hardware/SensorEventListener;Landroid/os/Looper;Landroid/hardware/SystemSensorManager;Ljava/lang/String;)V HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->addSensorEvent(Landroid/hardware/Sensor;)V HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->dispatchAdditionalInfoEvent(III[F[I)V -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->dispatchSensorEvent(I[FIJ)V+]Landroid/hardware/Sensor;Landroid/hardware/Sensor;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->dispatchSensorEvent(I[FIJ)V HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->removeSensorEvent(Landroid/hardware/Sensor;)V HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->addSensorEvent(Landroid/hardware/Sensor;)V HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->dispatchSensorEvent(I[FIJ)V @@ -8028,7 +8011,6 @@ HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->getCameraServic HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->onCameraAccessPrioritiesChanged()V HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->postSingleAccessPriorityChangeUpdate(Landroid/hardware/camera2/CameraManager$AvailabilityCallback;Ljava/util/concurrent/Executor;)V HSPLandroid/hardware/camera2/CameraManager$FoldStateListener;->addDeviceStateListener(Landroid/hardware/camera2/CameraManager$DeviceStateListener;)V -HSPLandroid/hardware/camera2/CameraManager$FoldStateListener;->handleStateChange(I)V HSPLandroid/hardware/camera2/CameraManager;-><init>(Landroid/content/Context;)V HSPLandroid/hardware/camera2/CameraManager;->getCameraCharacteristics(Ljava/lang/String;)Landroid/hardware/camera2/CameraCharacteristics; HSPLandroid/hardware/camera2/CameraManager;->getCameraIdList()[Ljava/lang/String; @@ -8112,18 +8094,15 @@ HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWra HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2;->run()V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper;-><init>(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback-IA;)V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;->onDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->-$$Nest$mhandleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateInfo;)V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;-><init>(Landroid/hardware/devicestate/IDeviceStateManager;)V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->findCallbackLocked(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;)I HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->getInstance()Landroid/hardware/devicestate/DeviceStateManagerGlobal; HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->handleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerCallbackIfNeededLocked()V HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerDeviceStateCallback(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;->registerCallback(Landroid/hardware/devicestate/IDeviceStateManagerCallback;)V HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/devicestate/IDeviceStateManager; HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;-><init>()V HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->asBinder()Landroid/os/IBinder; @@ -8162,7 +8141,6 @@ HSPLandroid/hardware/display/DeviceProductInfo;->equals(Ljava/lang/Object;)Z HSPLandroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2;-><init>()V HSPLandroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2;->test(Ljava/lang/Object;)Z HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;-><init>()V -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;-><init>(Landroid/hardware/display/DisplayManager$WeakDisplayCache-IA;)V HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->get(I)Landroid/view/Display; HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->put(Landroid/view/Display;)V HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->removeStaleEntries()V @@ -8182,8 +8160,8 @@ HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Integ HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0;->run()V HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;->clearEvents()V +HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;->handleDisplayEventInner(IILandroid/view/DisplayInfo;Z)V+]Landroid/hardware/display/DisplayManager$DisplayListener;megamorphic_types HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;)V -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback-IA;)V HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;->onDisplayEvent(II)V HSPLandroid/hardware/display/DisplayManagerGlobal;->-$$Nest$fgetmDm(Landroid/hardware/display/DisplayManagerGlobal;)Landroid/hardware/display/IDisplayManager; HSPLandroid/hardware/display/DisplayManagerGlobal;-><init>(Landroid/hardware/display/IDisplayManager;)V @@ -8195,15 +8173,16 @@ HSPLandroid/hardware/display/DisplayManagerGlobal;->getCompatibleDisplay(ILandro HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayIds()[I HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayIds(Z)[I HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfo(I)Landroid/view/DisplayInfo; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfoLocked(I)Landroid/view/DisplayInfo;+]Landroid/app/PropertyInvalidatedCache;Landroid/hardware/display/DisplayManagerGlobal$1; +HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfoLocked(I)Landroid/view/DisplayInfo; HSPLandroid/hardware/display/DisplayManagerGlobal;->getInstance()Landroid/hardware/display/DisplayManagerGlobal; HSPLandroid/hardware/display/DisplayManagerGlobal;->getLooperForHandler(Landroid/os/Handler;)Landroid/os/Looper; HSPLandroid/hardware/display/DisplayManagerGlobal;->getPreferredWideGamutColorSpace()Landroid/graphics/ColorSpace; HSPLandroid/hardware/display/DisplayManagerGlobal;->getStableDisplaySize()Landroid/graphics/Point; HSPLandroid/hardware/display/DisplayManagerGlobal;->getWifiDisplayStatus()Landroid/hardware/display/WifiDisplayStatus; HSPLandroid/hardware/display/DisplayManagerGlobal;->initExtraLogging()Z +HSPLandroid/hardware/display/DisplayManagerGlobal;->maybeLogAllDisplayListeners()V HSPLandroid/hardware/display/DisplayManagerGlobal;->registerCallbackIfNeededLocked()V -HSPLandroid/hardware/display/DisplayManagerGlobal;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Ljava/util/concurrent/Executor;JLjava/lang/String;)V+]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; +HSPLandroid/hardware/display/DisplayManagerGlobal;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Ljava/util/concurrent/Executor;JLjava/lang/String;)V HSPLandroid/hardware/display/DisplayManagerGlobal;->registerNativeChoreographerForRefreshRateCallbacks()V HSPLandroid/hardware/display/DisplayManagerGlobal;->unregisterDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;)V HSPLandroid/hardware/display/DisplayManagerGlobal;->updateCallbackIfNeededLocked()V @@ -8269,7 +8248,6 @@ HSPLandroid/hardware/input/InputManager;->registerInputDeviceListener(Landroid/h HSPLandroid/hardware/input/InputManager;->unregisterInputDeviceListener(Landroid/hardware/input/InputManager$InputDeviceListener;)V HSPLandroid/hardware/input/InputManagerGlobal$InputDeviceListenerDelegate;-><init>(Landroid/hardware/input/InputManager$InputDeviceListener;Landroid/os/Handler;)V HSPLandroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener;-><init>(Landroid/hardware/input/InputManagerGlobal;)V -HSPLandroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener;-><init>(Landroid/hardware/input/InputManagerGlobal;Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener-IA;)V HSPLandroid/hardware/input/InputManagerGlobal;-><init>(Landroid/hardware/input/IInputManager;)V HSPLandroid/hardware/input/InputManagerGlobal;->getInputDevice(I)Landroid/view/InputDevice; HSPLandroid/hardware/input/InputManagerGlobal;->getInputDeviceIds()[I @@ -8412,6 +8390,8 @@ HSPLandroid/icu/impl/CalendarUtil$CalendarPreferences;->getCalendarTypeForRegion HSPLandroid/icu/impl/CalendarUtil;->getCalendarType(Landroid/icu/util/ULocale;)Ljava/lang/String; HSPLandroid/icu/impl/CaseMapImpl;->appendUnchanged(Ljava/lang/CharSequence;IILjava/lang/Appendable;ILandroid/icu/text/Edits;)V HSPLandroid/icu/impl/CaseMapImpl;->applyEdits(Ljava/lang/CharSequence;Ljava/lang/StringBuilder;Landroid/icu/text/Edits;)Ljava/lang/String; +HSPLandroid/icu/impl/CaseMapImpl;->fold(ILjava/lang/CharSequence;)Ljava/lang/String; +HSPLandroid/icu/impl/CaseMapImpl;->internalToLower(IILjava/lang/CharSequence;IILandroid/icu/impl/CaseMapImpl$StringContextIterator;Ljava/lang/Appendable;Landroid/icu/text/Edits;)V HSPLandroid/icu/impl/CaseMapImpl;->internalToUpper(IILjava/lang/CharSequence;Ljava/lang/Appendable;Landroid/icu/text/Edits;)V HSPLandroid/icu/impl/CaseMapImpl;->toUpper(IILjava/lang/CharSequence;Ljava/lang/Appendable;Landroid/icu/text/Edits;)Ljava/lang/Appendable; HSPLandroid/icu/impl/CharacterIteration;->nextTrail32(Ljava/text/CharacterIterator;I)I @@ -8425,6 +8405,10 @@ HSPLandroid/icu/impl/CurrencyData$CurrencySpacingInfo;->setSymbolIfNull(Landroid HSPLandroid/icu/impl/DateNumberFormat;-><init>(Landroid/icu/util/ULocale;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/icu/impl/DateNumberFormat;->getDigits()[C HSPLandroid/icu/impl/DateNumberFormat;->initialize(Landroid/icu/util/ULocale;Ljava/lang/String;Ljava/lang/String;)V +HSPLandroid/icu/impl/DayPeriodRules$DayPeriod;->fromStringOrNull(Ljava/lang/CharSequence;)Landroid/icu/impl/DayPeriodRules$DayPeriod; +HSPLandroid/icu/impl/DayPeriodRules$DayPeriodRulesDataSink;->parseHour(Ljava/lang/String;)I +HSPLandroid/icu/impl/DayPeriodRules$DayPeriodRulesDataSink;->processRules(Landroid/icu/impl/UResource$Table;Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V +HSPLandroid/icu/impl/DayPeriodRules$DayPeriodRulesDataSink;->setDayPeriodForHoursFromCutoffs()V HSPLandroid/icu/impl/FormattedStringBuilder;-><init>()V HSPLandroid/icu/impl/FormattedStringBuilder;-><init>(I)V HSPLandroid/icu/impl/FormattedStringBuilder;-><init>(Landroid/icu/impl/FormattedStringBuilder;)V @@ -8446,7 +8430,7 @@ HSPLandroid/icu/impl/FormattedStringBuilder;->toString()Ljava/lang/String; HSPLandroid/icu/impl/FormattedStringBuilder;->unwrapField(Ljava/lang/Object;)Ljava/text/Format$Field; HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->isIntOrGroup(Ljava/lang/Object;)Z HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->nextFieldPosition(Landroid/icu/impl/FormattedStringBuilder;Ljava/text/FieldPosition;)Z -HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->nextPosition(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/text/ConstrainedFieldPosition;Ljava/text/Format$Field;)Z+]Landroid/icu/text/ConstrainedFieldPosition;Landroid/icu/text/ConstrainedFieldPosition; +HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->nextPosition(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/text/ConstrainedFieldPosition;Ljava/text/Format$Field;)Z HSPLandroid/icu/impl/Grego;->dayOfWeek(J)I HSPLandroid/icu/impl/Grego;->dayToFields(J[I)[I HSPLandroid/icu/impl/Grego;->fieldsToDay(III)J @@ -8492,7 +8476,6 @@ HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->get HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->getSymbol(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider;->getInstance(Landroid/icu/util/ULocale;Z)Landroid/icu/impl/CurrencyData$CurrencyDisplayInfo; HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;-><init>()V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;-><init>(Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector-IA;)V HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->collect(Ljava/lang/String;Ljava/lang/String;JJIZ)V HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->collects()I HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->getList()Ljava/util/List; @@ -8540,7 +8523,6 @@ HSPLandroid/icu/impl/ICUResourceBundle$5;-><init>(Ljava/lang/String;Ljava/lang/S HSPLandroid/icu/impl/ICUResourceBundle$5;->load()Landroid/icu/impl/ICUResourceBundle; HSPLandroid/icu/impl/ICUResourceBundle$AvailEntry;->getFullLocaleNameSet()Ljava/util/Set; HSPLandroid/icu/impl/ICUResourceBundle$Loader;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundle$Loader;-><init>(Landroid/icu/impl/ICUResourceBundle$Loader-IA;)V HSPLandroid/icu/impl/ICUResourceBundle$WholeBundle;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundleReader;)V HSPLandroid/icu/impl/ICUResourceBundle;->-$$Nest$mgetNoFallback(Landroid/icu/impl/ICUResourceBundle;)Z HSPLandroid/icu/impl/ICUResourceBundle;->-$$Nest$sfgetDEBUG()Z @@ -8630,7 +8612,7 @@ HSPLandroid/icu/impl/ICUResourceBundleReader$Array32;->getContainerResource(Land HSPLandroid/icu/impl/ICUResourceBundleReader$Array;-><init>()V HSPLandroid/icu/impl/ICUResourceBundleReader$Array;->getValue(ILandroid/icu/impl/UResource$Value;)Z HSPLandroid/icu/impl/ICUResourceBundleReader$Container;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainer16Resource(Landroid/icu/impl/ICUResourceBundleReader;I)I+]Ljava/nio/CharBuffer;Ljava/nio/ByteBufferAsCharBuffer; +HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainer16Resource(Landroid/icu/impl/ICUResourceBundleReader;I)I HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainer32Resource(Landroid/icu/impl/ICUResourceBundleReader;I)I HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getSize()I @@ -8648,6 +8630,7 @@ HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getStringArray()[Ljav HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getStringArray(Landroid/icu/impl/ICUResourceBundleReader$Array;)[Ljava/lang/String; HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getTable()Landroid/icu/impl/UResource$Table; HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getType()I +HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level;-><init>(II)V HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level;->get(I)Ljava/lang/Object; HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level;->putIfAbsent(ILjava/lang/Object;I)Ljava/lang/Object; HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;-><init>(I)V @@ -8659,6 +8642,7 @@ HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->putIfCleared([Ljava HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->storeDirectly(I)Z HSPLandroid/icu/impl/ICUResourceBundleReader$Table1632;-><init>(Landroid/icu/impl/ICUResourceBundleReader;I)V HSPLandroid/icu/impl/ICUResourceBundleReader$Table1632;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I +HSPLandroid/icu/impl/ICUResourceBundleReader$Table16;-><init>(Landroid/icu/impl/ICUResourceBundleReader;I)V HSPLandroid/icu/impl/ICUResourceBundleReader$Table16;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I HSPLandroid/icu/impl/ICUResourceBundleReader$Table;-><init>()V HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->findTableItem(Landroid/icu/impl/ICUResourceBundleReader;Ljava/lang/CharSequence;)I @@ -8761,12 +8745,15 @@ HSPLandroid/icu/impl/LocaleIDParser;->skipCountry()V HSPLandroid/icu/impl/LocaleIDParser;->skipLanguage()V HSPLandroid/icu/impl/LocaleIDParser;->skipScript()V HSPLandroid/icu/impl/LocaleIDParser;->skipUntilTerminatorOrIDSeparator()V +HSPLandroid/icu/impl/LocaleIDs;->findIndex([Ljava/lang/String;Ljava/lang/String;)I HSPLandroid/icu/impl/Norm2AllModes$ComposeNormalizer2;->spanQuickCheckYes(Ljava/lang/CharSequence;)I +HSPLandroid/icu/impl/Norm2AllModes$DecomposeNormalizer2;->getQuickCheck(I)I HSPLandroid/icu/impl/Norm2AllModes$DecomposeNormalizer2;->normalizeAndAppend(Ljava/lang/CharSequence;ZLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;)V HSPLandroid/icu/impl/Norm2AllModes$DecomposeNormalizer2;->spanQuickCheckYes(Ljava/lang/CharSequence;)I HSPLandroid/icu/impl/Norm2AllModes$NFKCSingleton;->-$$Nest$sfgetINSTANCE()Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton; HSPLandroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;->-$$Nest$fgetallModes(Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;)Landroid/icu/impl/Norm2AllModes; HSPLandroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;->-$$Nest$fgetexception(Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;)Ljava/lang/RuntimeException; +HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->getCombiningClass(I)I HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalize(Ljava/lang/CharSequence;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder; HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalizeSecondAndAppend(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalizeSecondAndAppend(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder; @@ -8862,14 +8849,14 @@ HSPLandroid/icu/impl/StaticUnicodeSets;->chooseFrom(Ljava/lang/String;Landroid/i HSPLandroid/icu/impl/StaticUnicodeSets;->get(Landroid/icu/impl/StaticUnicodeSets$Key;)Landroid/icu/text/UnicodeSet; HSPLandroid/icu/impl/StringSegment;-><init>(Ljava/lang/String;Z)V HSPLandroid/icu/impl/StringSegment;->adjustOffset(I)V -HSPLandroid/icu/impl/StringSegment;->charAt(I)C+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/icu/impl/StringSegment;->charAt(I)C HSPLandroid/icu/impl/StringSegment;->codePointsEqual(IIZ)Z -HSPLandroid/icu/impl/StringSegment;->getCodePoint()I+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/icu/impl/StringSegment;->getCodePoint()I HSPLandroid/icu/impl/StringSegment;->getCommonPrefixLength(Ljava/lang/CharSequence;)I HSPLandroid/icu/impl/StringSegment;->getOffset()I -HSPLandroid/icu/impl/StringSegment;->getPrefixLengthInternal(Ljava/lang/CharSequence;Z)I+]Landroid/icu/impl/StringSegment;Landroid/icu/impl/StringSegment;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/icu/impl/StringSegment;->getPrefixLengthInternal(Ljava/lang/CharSequence;Z)I HSPLandroid/icu/impl/StringSegment;->length()I -HSPLandroid/icu/impl/StringSegment;->startsWith(Landroid/icu/text/UnicodeSet;)Z+]Landroid/icu/impl/StringSegment;Landroid/icu/impl/StringSegment;]Landroid/icu/text/UnicodeSet;Landroid/icu/text/UnicodeSet; +HSPLandroid/icu/impl/StringSegment;->startsWith(Landroid/icu/text/UnicodeSet;)Z HSPLandroid/icu/impl/StringSegment;->startsWith(Ljava/lang/CharSequence;)Z HSPLandroid/icu/impl/TextTrieMap$Node;-><init>(Landroid/icu/impl/TextTrieMap;)V HSPLandroid/icu/impl/TextTrieMap;-><init>(Z)V @@ -8888,7 +8875,6 @@ HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->getName(Landroid/icu/text/TimeZo HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->getNameTypeIndex(Landroid/icu/text/TimeZoneNames$NameType;)I HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->-$$Nest$mgetNames(Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;)[Ljava/lang/String; HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;-><init>()V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;-><init>(Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader-IA;)V HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->getNames()[Ljava/lang/String; HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->loadMetaZone(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->loadNames(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V @@ -8908,6 +8894,7 @@ HSPLandroid/icu/impl/TimeZoneNamesImpl;->initialize(Landroid/icu/util/ULocale;)V HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadMetaZoneNames(Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadStrings(Ljava/lang/String;)V HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadTimeZoneNames(Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; +HSPLandroid/icu/impl/Trie2$Trie2Iterator;->next()Landroid/icu/impl/Trie2$Range; HSPLandroid/icu/impl/Trie2;-><init>()V HSPLandroid/icu/impl/Trie2;->createFromSerialized(Ljava/nio/ByteBuffer;)Landroid/icu/impl/Trie2; HSPLandroid/icu/impl/Trie2Writable;-><init>(II)V @@ -8923,11 +8910,12 @@ HSPLandroid/icu/impl/Trie2Writable;->setIndex2Entry(II)V HSPLandroid/icu/impl/Trie2Writable;->setRange(IIIZ)Landroid/icu/impl/Trie2Writable; HSPLandroid/icu/impl/Trie2Writable;->writeBlock(II)V HSPLandroid/icu/impl/Trie2_16;->get(I)I +HSPLandroid/icu/impl/Trie2_16;->rangeEnd(III)I HSPLandroid/icu/impl/Trie2_32;->get(I)I HSPLandroid/icu/impl/Trie2_32;->getFromU16SingleLead(C)I HSPLandroid/icu/impl/UBiDiProps;->getClass(I)I HSPLandroid/icu/impl/UBiDiProps;->getClassFromProps(I)I -HSPLandroid/icu/impl/UCaseProps;->fold(II)I+]Landroid/icu/impl/Trie2_16;Landroid/icu/impl/Trie2_16; +HSPLandroid/icu/impl/UCaseProps;->fold(II)I HSPLandroid/icu/impl/UCaseProps;->getCaseLocale(Ljava/lang/String;)I HSPLandroid/icu/impl/UCaseProps;->getCaseLocale(Ljava/util/Locale;)I HSPLandroid/icu/impl/UCaseProps;->getDelta(I)I @@ -8935,7 +8923,9 @@ HSPLandroid/icu/impl/UCaseProps;->isUpperOrTitleFromProps(I)Z HSPLandroid/icu/impl/UCaseProps;->propsHasException(I)Z HSPLandroid/icu/impl/UCaseProps;->toUpperOrTitle(ILandroid/icu/impl/UCaseProps$ContextIterator;Ljava/lang/Appendable;IZ)I HSPLandroid/icu/impl/UCharacterProperty$IntProperty;->getValue(I)I +HSPLandroid/icu/impl/UCharacterProperty;->addPropertyStarts(Landroid/icu/text/UnicodeSet;)Landroid/icu/text/UnicodeSet; HSPLandroid/icu/impl/UCharacterProperty;->digit(I)I +HSPLandroid/icu/impl/UCharacterProperty;->getAdditional(II)I HSPLandroid/icu/impl/UCharacterProperty;->getIntPropertyValue(II)I HSPLandroid/icu/impl/UCharacterProperty;->getNumericTypeValue(I)I HSPLandroid/icu/impl/UCharacterProperty;->getProperty(I)I @@ -8964,6 +8954,7 @@ HSPLandroid/icu/impl/Utility;->arrayEquals([BLjava/lang/Object;)Z HSPLandroid/icu/impl/Utility;->arrayRegionMatches([BI[BII)Z HSPLandroid/icu/impl/Utility;->sameObjects(Ljava/lang/Object;Ljava/lang/Object;)Z HSPLandroid/icu/impl/Utility;->shouldAlwaysBeEscaped(I)Z +HSPLandroid/icu/impl/ValidIdentifiers$ValiditySet;-><init>(Ljava/util/Set;Z)V HSPLandroid/icu/impl/ZoneMeta$SystemTimeZoneCache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/icu/impl/ZoneMeta$SystemTimeZoneCache;->createInstance(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/impl/OlsonTimeZone; HSPLandroid/icu/impl/ZoneMeta;->findCLDRCanonicalID(Ljava/lang/String;)Ljava/lang/String; @@ -9104,8 +9095,14 @@ HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->getBaseLocale()Landroid/icu/ HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->getLocaleExtensions()Landroid/icu/impl/locale/LocaleExtensions; HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->setLanguage(Ljava/lang/String;)Landroid/icu/impl/locale/InternalLocaleBuilder; HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->setRegion(Ljava/lang/String;)Landroid/icu/impl/locale/InternalLocaleBuilder; +HSPLandroid/icu/impl/locale/KeyTypeData;->initFromResourceBundle()V +HSPLandroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda0;-><init>()V +HSPLandroid/icu/impl/locale/LSR$CachedDecoder;->decode(I)[Ljava/lang/String; +HSPLandroid/icu/impl/locale/LSR$CachedDecoder;->toLanguage(I)Ljava/lang/String; +HSPLandroid/icu/impl/locale/LSR;->indexForRegion(Ljava/lang/String;)I HSPLandroid/icu/impl/locale/LanguageTag;->isLanguage(Ljava/lang/String;)Z HSPLandroid/icu/impl/locale/LanguageTag;->isRegion(Ljava/lang/String;)Z +HSPLandroid/icu/impl/locale/LikelySubtags;->maximize(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Landroid/icu/impl/locale/LSR; HSPLandroid/icu/impl/locale/LocaleExtensions;->getKeys()Ljava/util/Set; HSPLandroid/icu/impl/locale/LocaleObjectCache$CacheEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V HSPLandroid/icu/impl/locale/LocaleObjectCache$CacheEntry;->getKey()Ljava/lang/Object; @@ -9217,11 +9214,11 @@ HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToBigInteger(Ljava HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToDoubleFast(D)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToLong(J)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->adjustMagnitude(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->appendDigit(BIZ)V+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; +HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->appendDigit(BIZ)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->applyMaxInteger(I)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->convertToAccurateDouble()V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->copyFrom(Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->fitsInLong()Z+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; +HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->fitsInLong()Z HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getDigit(I)B HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getLowerDisplayMagnitude()I HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getMagnitude()I @@ -9244,8 +9241,8 @@ HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToDouble(D)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToInt(I)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToLong(J)V HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->signum()Landroid/icu/impl/number/Modifier$Signum; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->toLong(Z)J+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>()V+]Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; +HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->toLong(Z)J +HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>()V HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(D)V HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(I)V HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(J)V @@ -9304,7 +9301,6 @@ HSPLandroid/icu/impl/number/MutablePatternModifier;->setPatternInfo(Landroid/icu HSPLandroid/icu/impl/number/MutablePatternModifier;->setSymbols(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/util/Currency;Landroid/icu/number/NumberFormatter$UnitWidth;Landroid/icu/text/PluralRules;)V HSPLandroid/icu/impl/number/Padder;->isValid()Z HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;-><init>(Ljava/lang/String;Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo-IA;)V HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;->getEndpoints(I)J HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;->getString(I)Ljava/lang/String; HSPLandroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;-><init>()V @@ -9350,14 +9346,14 @@ HSPLandroid/icu/impl/number/SimpleModifier;->apply(Landroid/icu/impl/FormattedSt HSPLandroid/icu/impl/number/parse/AffixMatcher$1;->compare(Landroid/icu/impl/number/parse/AffixMatcher;Landroid/icu/impl/number/parse/AffixMatcher;)I HSPLandroid/icu/impl/number/parse/AffixMatcher$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I HSPLandroid/icu/impl/number/parse/AffixMatcher;-><init>(Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher;I)V -HSPLandroid/icu/impl/number/parse/AffixMatcher;->createMatchers(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/parse/NumberParserImpl;Landroid/icu/impl/number/parse/AffixTokenMatcherFactory;Landroid/icu/impl/number/parse/IgnorablesMatcher;I)V+]Landroid/icu/impl/number/parse/NumberParserImpl;Landroid/icu/impl/number/parse/NumberParserImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/icu/impl/number/parse/AffixMatcher;->createMatchers(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/parse/NumberParserImpl;Landroid/icu/impl/number/parse/AffixTokenMatcherFactory;Landroid/icu/impl/number/parse/IgnorablesMatcher;I)V HSPLandroid/icu/impl/number/parse/AffixMatcher;->getInstance(Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher;I)Landroid/icu/impl/number/parse/AffixMatcher; HSPLandroid/icu/impl/number/parse/AffixMatcher;->isInteresting(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/parse/IgnorablesMatcher;I)Z HSPLandroid/icu/impl/number/parse/AffixMatcher;->length(Landroid/icu/impl/number/parse/AffixPatternMatcher;)I HSPLandroid/icu/impl/number/parse/AffixMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)Z HSPLandroid/icu/impl/number/parse/AffixMatcher;->matched(Landroid/icu/impl/number/parse/AffixPatternMatcher;Ljava/lang/String;)Z HSPLandroid/icu/impl/number/parse/AffixMatcher;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/AffixMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z+]Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher; +HSPLandroid/icu/impl/number/parse/AffixMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;-><init>(Ljava/lang/String;)V HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->consumeToken(I)V HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->equals(Ljava/lang/Object;)Z @@ -9365,7 +9361,7 @@ HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->fromAffixPattern(Ljava/l HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->getPattern()Ljava/lang/String; HSPLandroid/icu/impl/number/parse/AffixTokenMatcherFactory;-><init>()V HSPLandroid/icu/impl/number/parse/AffixTokenMatcherFactory;->minusSign()Landroid/icu/impl/number/parse/MinusSignMatcher; -HSPLandroid/icu/impl/number/parse/DecimalMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;I)V+]Landroid/icu/impl/number/Grouper;Landroid/icu/impl/number/Grouper;]Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/text/DecimalFormatSymbols; +HSPLandroid/icu/impl/number/parse/DecimalMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;I)V HSPLandroid/icu/impl/number/parse/DecimalMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;I)Landroid/icu/impl/number/parse/DecimalMatcher; HSPLandroid/icu/impl/number/parse/DecimalMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)Z HSPLandroid/icu/impl/number/parse/DecimalMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;I)Z @@ -9386,7 +9382,7 @@ HSPLandroid/icu/impl/number/parse/NumberParserImpl;->parse(Ljava/lang/String;IZL HSPLandroid/icu/impl/number/parse/NumberParserImpl;->parseGreedy(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)V HSPLandroid/icu/impl/number/parse/ParsedNumber;-><init>()V HSPLandroid/icu/impl/number/parse/ParsedNumber;->clear()V -HSPLandroid/icu/impl/number/parse/ParsedNumber;->getNumber(I)Ljava/lang/Number;+]Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; +HSPLandroid/icu/impl/number/parse/ParsedNumber;->getNumber(I)Ljava/lang/Number; HSPLandroid/icu/impl/number/parse/ParsedNumber;->postProcess()V HSPLandroid/icu/impl/number/parse/ParsedNumber;->seenNumber()Z HSPLandroid/icu/impl/number/parse/ParsedNumber;->setCharsConsumed(Landroid/icu/impl/StringSegment;)V @@ -9395,7 +9391,7 @@ HSPLandroid/icu/impl/number/parse/RequireAffixValidator;-><init>()V HSPLandroid/icu/impl/number/parse/RequireAffixValidator;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V HSPLandroid/icu/impl/number/parse/RequireNumberValidator;-><init>()V HSPLandroid/icu/impl/number/parse/RequireNumberValidator;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/ScientificMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;)V+]Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/text/DecimalFormatSymbols;]Landroid/icu/text/UnicodeSet;Landroid/icu/text/UnicodeSet; +HSPLandroid/icu/impl/number/parse/ScientificMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;)V HSPLandroid/icu/impl/number/parse/ScientificMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;)Landroid/icu/impl/number/parse/ScientificMatcher; HSPLandroid/icu/impl/number/parse/ScientificMatcher;->minusSignSet()Landroid/icu/text/UnicodeSet; HSPLandroid/icu/impl/number/parse/ScientificMatcher;->plusSignSet()Landroid/icu/text/UnicodeSet; @@ -9423,7 +9419,7 @@ HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getSetForLocale(Landroi HSPLandroid/icu/impl/number/range/StandardPluralRanges;->setCapacity(I)V HSPLandroid/icu/lang/UCharacter;->codePointAt(Ljava/lang/CharSequence;I)I HSPLandroid/icu/lang/UCharacter;->digit(I)I -HSPLandroid/icu/lang/UCharacter;->foldCase(II)I+]Landroid/icu/impl/UCaseProps;Landroid/icu/impl/UCaseProps; +HSPLandroid/icu/lang/UCharacter;->foldCase(II)I HSPLandroid/icu/lang/UCharacter;->foldCase(IZ)I HSPLandroid/icu/lang/UCharacter;->getPropertyValueEnumNoThrow(ILjava/lang/CharSequence;)I HSPLandroid/icu/lang/UCharacter;->getType(I)I @@ -9431,6 +9427,7 @@ HSPLandroid/icu/lang/UCharacter;->isDigit(I)Z HSPLandroid/icu/lang/UCharacter;->isLowerCase(I)Z HSPLandroid/icu/lang/UScript$ScriptMetadata;->getScriptProps(I)I HSPLandroid/icu/lang/UScript;->getCodeFromName(Ljava/lang/String;)I +HSPLandroid/icu/lang/UScript;->getScript(I)I HSPLandroid/icu/lang/UScript;->isRightToLeft(I)Z HSPLandroid/icu/number/CurrencyPrecision;->withCurrency(Landroid/icu/util/Currency;)Landroid/icu/number/Precision; HSPLandroid/icu/number/FormattedNumber;->appendTo(Ljava/lang/Appendable;)Ljava/lang/Appendable; @@ -9455,7 +9452,7 @@ HSPLandroid/icu/number/NumberFormatterImpl;->formatStatic(Landroid/icu/impl/numb HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffix(BLandroid/icu/impl/StandardPlural;Landroid/icu/impl/FormattedStringBuilder;)I HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffixImpl(Landroid/icu/impl/number/MicroPropsGenerator;BLandroid/icu/impl/FormattedStringBuilder;)I HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffixStatic(Landroid/icu/impl/number/MacroProps;BLandroid/icu/impl/StandardPlural;Landroid/icu/impl/FormattedStringBuilder;)I -HSPLandroid/icu/number/NumberFormatterImpl;->macrosToMicroGenerator(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/MicroProps;Z)Landroid/icu/impl/number/MicroPropsGenerator;+]Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/PropertiesAffixPatternProvider;]Landroid/icu/impl/number/Grouper;Landroid/icu/impl/number/Grouper;]Landroid/icu/impl/number/MutablePatternModifier;Landroid/icu/impl/number/MutablePatternModifier;]Landroid/icu/number/Precision;Landroid/icu/number/Precision$FractionRounderImpl;]Landroid/icu/text/NumberingSystem;Landroid/icu/text/NumberingSystem; +HSPLandroid/icu/number/NumberFormatterImpl;->macrosToMicroGenerator(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/MicroProps;Z)Landroid/icu/impl/number/MicroPropsGenerator; HSPLandroid/icu/number/NumberFormatterImpl;->preProcess(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; HSPLandroid/icu/number/NumberFormatterImpl;->preProcessUnsafe(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; HSPLandroid/icu/number/NumberFormatterImpl;->unitIsBaseUnit(Landroid/icu/util/MeasureUnit;)Z @@ -9501,6 +9498,7 @@ HSPLandroid/icu/platform/AndroidDataFiles;->getI18nModuleFile(Ljava/lang/String; HSPLandroid/icu/platform/AndroidDataFiles;->getI18nModuleIcuFile(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/icu/platform/AndroidDataFiles;->getTimeZoneModuleFile(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/icu/platform/AndroidDataFiles;->getTimeZoneModuleIcuFile(Ljava/lang/String;)Ljava/lang/String; +HSPLandroid/icu/text/AnyTransliterator;->register()V HSPLandroid/icu/text/Bidi;-><init>(II)V HSPLandroid/icu/text/Bidi;->DirPropFlag(B)I HSPLandroid/icu/text/Bidi;->GetParaLevelAt(I)B @@ -9755,7 +9753,7 @@ HSPLandroid/icu/text/DecimalFormat;->setParseIntegerOnly(Z)V HSPLandroid/icu/text/DecimalFormat;->setParseStrictMode(Landroid/icu/impl/number/DecimalFormatProperties$ParseMode;)V HSPLandroid/icu/text/DecimalFormat;->setPropertiesFromPattern(Ljava/lang/String;I)V HSPLandroid/icu/text/DecimalFormat;->toNumberFormatter()Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/text/DecimalFormat;->toPattern()Ljava/lang/String;+]Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/impl/number/DecimalFormatProperties; +HSPLandroid/icu/text/DecimalFormat;->toPattern()Ljava/lang/String; HSPLandroid/icu/text/DecimalFormatSymbols$1;->createInstance(Landroid/icu/util/ULocale;Ljava/lang/Void;)Landroid/icu/text/DecimalFormatSymbols$CacheData; HSPLandroid/icu/text/DecimalFormatSymbols$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/icu/text/DecimalFormatSymbols$CacheData;-><init>(Landroid/icu/util/ULocale;[Ljava/lang/String;[Ljava/lang/String;)V @@ -9831,11 +9829,14 @@ HSPLandroid/icu/text/DecimalFormatSymbols;->setPlusSign(C)V HSPLandroid/icu/text/DecimalFormatSymbols;->setPlusSignString(Ljava/lang/String;)V HSPLandroid/icu/text/DecimalFormatSymbols;->setZeroDigit(C)V HSPLandroid/icu/text/DisplayContext;->type()Landroid/icu/text/DisplayContext$Type; +HSPLandroid/icu/text/Edits$Iterator;->next()Z HSPLandroid/icu/text/Edits$Iterator;->next(Z)Z +HSPLandroid/icu/text/Edits$Iterator;->updateNextIndexes()V HSPLandroid/icu/text/Edits;-><init>()V HSPLandroid/icu/text/Edits;->addReplace(II)V HSPLandroid/icu/text/Edits;->addUnchanged(I)V HSPLandroid/icu/text/Edits;->append(I)V +HSPLandroid/icu/text/Edits;->getCoarseIterator()Landroid/icu/text/Edits$Iterator; HSPLandroid/icu/text/Edits;->hasChanges()Z HSPLandroid/icu/text/Edits;->lastUnit()I HSPLandroid/icu/text/Edits;->reset()V @@ -9981,7 +9982,6 @@ HSPLandroid/icu/text/RuleBasedBreakIterator;->next()I HSPLandroid/icu/text/RuleBasedBreakIterator;->preceding(I)I HSPLandroid/icu/text/RuleBasedBreakIterator;->setText(Ljava/text/CharacterIterator;)V HSPLandroid/icu/text/RuleBasedCollator$CollationBuffer;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/text/RuleBasedCollator$CollationBuffer;-><init>(Landroid/icu/impl/coll/CollationData;Landroid/icu/text/RuleBasedCollator$CollationBuffer-IA;)V HSPLandroid/icu/text/RuleBasedCollator$CollationKeyByteSink;-><init>(Landroid/icu/text/RawCollationKey;)V HSPLandroid/icu/text/RuleBasedCollator$FCDUTF16NFDIterator;-><init>()V HSPLandroid/icu/text/RuleBasedCollator$NFDIterator;-><init>()V @@ -10040,6 +10040,12 @@ HSPLandroid/icu/text/TimeZoneNames;-><init>()V HSPLandroid/icu/text/TimeZoneNames;->getDisplayName(Ljava/lang/String;Landroid/icu/text/TimeZoneNames$NameType;J)Ljava/lang/String; HSPLandroid/icu/text/TimeZoneNames;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/TimeZoneNames; HSPLandroid/icu/text/TimeZoneNames;->getInstance(Ljava/util/Locale;)Landroid/icu/text/TimeZoneNames; +HSPLandroid/icu/text/Transliterator;-><clinit>()V +HSPLandroid/icu/text/TransliteratorIDParser;->IDtoSTV(Ljava/lang/String;)[Ljava/lang/String; +HSPLandroid/icu/text/TransliteratorIDParser;->STVtoID(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +HSPLandroid/icu/text/TransliteratorRegistry;->getAvailableVariants(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Enumeration; +HSPLandroid/icu/text/TransliteratorRegistry;->registerEntry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Z)V +HSPLandroid/icu/text/TransliteratorRegistry;->registerSTV(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/icu/text/UCharacterIterator;-><init>()V HSPLandroid/icu/text/UCharacterIterator;->getInstance(Ljava/lang/String;)Landroid/icu/text/UCharacterIterator; HSPLandroid/icu/text/UCharacterIterator;->getText()Ljava/lang/String; @@ -10053,6 +10059,7 @@ HSPLandroid/icu/text/UTF16;->charAt(Ljava/lang/String;I)I HSPLandroid/icu/text/UTF16;->charAt([CIII)I HSPLandroid/icu/text/UTF16;->getCharCount(I)I HSPLandroid/icu/text/UnicodeFilter;-><init>()V +HSPLandroid/icu/text/UnicodeSet$GeneralCategoryMaskFilter;->contains(I)Z HSPLandroid/icu/text/UnicodeSet;-><init>()V HSPLandroid/icu/text/UnicodeSet;-><init>(Landroid/icu/text/UnicodeSet;)V HSPLandroid/icu/text/UnicodeSet;->_appendToPat(Ljava/lang/Appendable;IIZ)Ljava/lang/Appendable; @@ -10065,6 +10072,7 @@ HSPLandroid/icu/text/UnicodeSet;->add_unchecked(I)Landroid/icu/text/UnicodeSet; HSPLandroid/icu/text/UnicodeSet;->add_unchecked(II)Landroid/icu/text/UnicodeSet; HSPLandroid/icu/text/UnicodeSet;->appendCodePoint(Ljava/lang/Appendable;I)V HSPLandroid/icu/text/UnicodeSet;->appendNewPattern(Ljava/lang/Appendable;ZZ)Ljava/lang/Appendable; +HSPLandroid/icu/text/UnicodeSet;->applyFilter(Landroid/icu/text/UnicodeSet$Filter;Landroid/icu/text/UnicodeSet;)V HSPLandroid/icu/text/UnicodeSet;->applyPattern(Landroid/icu/impl/RuleCharacterIterator;Landroid/icu/text/SymbolTable;Ljava/lang/Appendable;II)V HSPLandroid/icu/text/UnicodeSet;->applyPattern(Ljava/lang/String;Ljava/text/ParsePosition;Landroid/icu/text/SymbolTable;I)Landroid/icu/text/UnicodeSet; HSPLandroid/icu/text/UnicodeSet;->checkFrozen()V @@ -10074,6 +10082,7 @@ HSPLandroid/icu/text/UnicodeSet;->compact()Landroid/icu/text/UnicodeSet; HSPLandroid/icu/text/UnicodeSet;->contains(I)Z HSPLandroid/icu/text/UnicodeSet;->contains(Ljava/lang/CharSequence;)Z HSPLandroid/icu/text/UnicodeSet;->containsAll(Ljava/lang/String;)Z +HSPLandroid/icu/text/UnicodeSet;->containsNone(II)Z HSPLandroid/icu/text/UnicodeSet;->findCodePoint(I)I HSPLandroid/icu/text/UnicodeSet;->freeze()Landroid/icu/text/UnicodeSet; HSPLandroid/icu/text/UnicodeSet;->getRangeCount()I @@ -10173,6 +10182,9 @@ HSPLandroid/icu/util/Calendar;->setWeekData(Landroid/icu/util/Calendar$WeekData; HSPLandroid/icu/util/Calendar;->setWeekData(Ljava/lang/String;)V HSPLandroid/icu/util/Calendar;->weekNumber(II)I HSPLandroid/icu/util/Calendar;->weekNumber(III)I +HSPLandroid/icu/util/CaseInsensitiveString;-><init>(Ljava/lang/String;)V +HSPLandroid/icu/util/CaseInsensitiveString;->equals(Ljava/lang/Object;)Z +HSPLandroid/icu/util/CaseInsensitiveString;->hashCode()I HSPLandroid/icu/util/CharsTrie;-><init>(Ljava/lang/CharSequence;I)V HSPLandroid/icu/util/CharsTrie;->branchNext(III)Landroid/icu/util/BytesTrie$Result; HSPLandroid/icu/util/CharsTrie;->first(I)Landroid/icu/util/BytesTrie$Result; @@ -10191,6 +10203,7 @@ HSPLandroid/icu/util/CodePointMap$Range;->-$$Nest$fputstart(Landroid/icu/util/Co HSPLandroid/icu/util/CodePointMap$Range;-><init>()V HSPLandroid/icu/util/CodePointMap$Range;->getEnd()I HSPLandroid/icu/util/CodePointMap$Range;->getValue()I +HSPLandroid/icu/util/CodePointMap$Range;->set(III)V HSPLandroid/icu/util/CodePointMap;-><init>()V HSPLandroid/icu/util/CodePointMap;->getRange(ILandroid/icu/util/CodePointMap$RangeOption;ILandroid/icu/util/CodePointMap$ValueFilter;Landroid/icu/util/CodePointMap$Range;)Z HSPLandroid/icu/util/CodePointTrie$Data16;->getFromIndex(I)I @@ -10201,7 +10214,6 @@ HSPLandroid/icu/util/CodePointTrie$Data8;-><init>([B)V HSPLandroid/icu/util/CodePointTrie$Data8;->getDataLength()I HSPLandroid/icu/util/CodePointTrie$Data8;->getFromIndex(I)I HSPLandroid/icu/util/CodePointTrie$Data;-><init>()V -HSPLandroid/icu/util/CodePointTrie$Data;-><init>(Landroid/icu/util/CodePointTrie$Data-IA;)V HSPLandroid/icu/util/CodePointTrie$Fast16;->bmpGet(I)I HSPLandroid/icu/util/CodePointTrie$Fast16;->get(I)I HSPLandroid/icu/util/CodePointTrie$Fast8;-><init>([C[BIII)V @@ -10211,7 +10223,6 @@ HSPLandroid/icu/util/CodePointTrie$Fast;->cpIndex(I)I HSPLandroid/icu/util/CodePointTrie$Fast;->getType()Landroid/icu/util/CodePointTrie$Type; HSPLandroid/icu/util/CodePointTrie$Small32;-><init>([C[IIII)V HSPLandroid/icu/util/CodePointTrie$Small;-><init>([CLandroid/icu/util/CodePointTrie$Data;III)V -HSPLandroid/icu/util/CodePointTrie$Small;-><init>([CLandroid/icu/util/CodePointTrie$Data;IIILandroid/icu/util/CodePointTrie$Small-IA;)V HSPLandroid/icu/util/CodePointTrie;-><init>([CLandroid/icu/util/CodePointTrie$Data;III)V HSPLandroid/icu/util/CodePointTrie;-><init>([CLandroid/icu/util/CodePointTrie$Data;IIILandroid/icu/util/CodePointTrie-IA;)V HSPLandroid/icu/util/CodePointTrie;->fastIndex(I)I @@ -10260,7 +10271,6 @@ HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;-><init>()V HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;->findMostUsed()I HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;->findOrAdd(III)I HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;-><init>()V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;-><init>(Landroid/icu/util/MutableCodePointTrie$MixedBlocks-IA;)V HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->addEntry([I[CIII)V HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->extend([CIII)V HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->extend([IIII)V @@ -10432,6 +10442,7 @@ HSPLandroid/icu/util/UResourceBundle;->resolveObject(Ljava/lang/String;Landroid/ HSPLandroid/icu/util/UResourceBundleIterator;-><init>(Landroid/icu/util/UResourceBundle;)V HSPLandroid/icu/util/UResourceBundleIterator;->hasNext()Z HSPLandroid/icu/util/UResourceBundleIterator;->next()Landroid/icu/util/UResourceBundle; +HSPLandroid/icu/util/VersionInfo;->compareTo(Landroid/icu/util/VersionInfo;)I HSPLandroid/icu/util/VersionInfo;->getMajor()I HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastPreReleaseCodename(Ljava/lang/String;)Z HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastV()Z @@ -10560,7 +10571,6 @@ HSPLandroid/media/AudioManager$AudioPlaybackCallback;-><init>()V HSPLandroid/media/AudioManager$AudioPlaybackCallbackInfo;-><init>(Landroid/media/AudioManager$AudioPlaybackCallback;Landroid/os/Handler;)V HSPLandroid/media/AudioManager$AudioRecordingCallback;-><init>()V HSPLandroid/media/AudioManager$DevRoleListeners;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$DevRoleListeners;-><init>(Landroid/media/AudioManager;Landroid/media/AudioManager$DevRoleListeners-IA;)V HSPLandroid/media/AudioManager$NativeEventHandlerDelegate$1;-><init>(Landroid/media/AudioManager$NativeEventHandlerDelegate;Landroid/os/Looper;Landroid/media/AudioManager;Landroid/media/AudioDeviceCallback;)V HSPLandroid/media/AudioManager$NativeEventHandlerDelegate$1;->handleMessage(Landroid/os/Message;)V HSPLandroid/media/AudioManager$NativeEventHandlerDelegate;-><init>(Landroid/media/AudioManager;Landroid/media/AudioDeviceCallback;Landroid/os/Handler;)V @@ -10760,7 +10770,6 @@ HSPLandroid/media/MediaCodec$BufferInfo;->set(IIJI)V HSPLandroid/media/MediaCodec$BufferMap$CodecBuffer;->free()V HSPLandroid/media/MediaCodec$BufferMap$CodecBuffer;->setByteBuffer(Ljava/nio/ByteBuffer;)V HSPLandroid/media/MediaCodec$BufferMap;-><init>()V -HSPLandroid/media/MediaCodec$BufferMap;-><init>(Landroid/media/MediaCodec$BufferMap-IA;)V HSPLandroid/media/MediaCodec$BufferMap;->clear()V HSPLandroid/media/MediaCodec$BufferMap;->put(ILjava/nio/ByteBuffer;)V HSPLandroid/media/MediaCodec$BufferMap;->remove(I)V @@ -11281,6 +11290,8 @@ HSPLandroid/metrics/LogMaker;->setCategory(I)Landroid/metrics/LogMaker; HSPLandroid/metrics/LogMaker;->setComponentName(Landroid/content/ComponentName;)Landroid/metrics/LogMaker; HSPLandroid/metrics/LogMaker;->setSubtype(I)Landroid/metrics/LogMaker; HSPLandroid/metrics/LogMaker;->setType(I)Landroid/metrics/LogMaker; +HSPLandroid/multiuser/FeatureFlagsImpl;->enableSystemUserOnlyForServicesAndProviders()Z +HSPLandroid/multiuser/Flags;->enableSystemUserOnlyForServicesAndProviders()Z HSPLandroid/net/Credentials;-><init>(III)V HSPLandroid/net/Credentials;->getPid()I HSPLandroid/net/Credentials;->getUid()I @@ -11378,7 +11389,6 @@ HSPLandroid/net/Uri$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/net/Uri$1;->newArray(I)[Landroid/net/Uri; HSPLandroid/net/Uri$1;->newArray(I)[Ljava/lang/Object; HSPLandroid/net/Uri$AbstractHierarchicalUri;-><init>()V -HSPLandroid/net/Uri$AbstractHierarchicalUri;-><init>(Landroid/net/Uri$AbstractHierarchicalUri-IA;)V HSPLandroid/net/Uri$AbstractHierarchicalUri;->findPortSeparator(Ljava/lang/String;)I HSPLandroid/net/Uri$AbstractHierarchicalUri;->getHost()Ljava/lang/String; HSPLandroid/net/Uri$AbstractHierarchicalUri;->getLastPathSegment()Ljava/lang/String; @@ -11413,7 +11423,7 @@ HSPLandroid/net/Uri$Builder;->toString()Ljava/lang/String; HSPLandroid/net/Uri$HierarchicalUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$PathPart;Landroid/net/Uri$Part;Landroid/net/Uri$Part;)V HSPLandroid/net/Uri$HierarchicalUri;->appendSspTo(Ljava/lang/StringBuilder;)V HSPLandroid/net/Uri$HierarchicalUri;->buildUpon()Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$HierarchicalUri;->generatePath(Landroid/net/Uri$PathPart;)Landroid/net/Uri$PathPart;+]Landroid/net/Uri$Part;Landroid/net/Uri$Part$EmptyPart;,Landroid/net/Uri$Part; +HSPLandroid/net/Uri$HierarchicalUri;->generatePath(Landroid/net/Uri$PathPart;)Landroid/net/Uri$PathPart; HSPLandroid/net/Uri$HierarchicalUri;->getAuthority()Ljava/lang/String; HSPLandroid/net/Uri$HierarchicalUri;->getEncodedAuthority()Ljava/lang/String; HSPLandroid/net/Uri$HierarchicalUri;->getEncodedFragment()Ljava/lang/String; @@ -11431,7 +11441,6 @@ HSPLandroid/net/Uri$HierarchicalUri;->readFrom(Landroid/os/Parcel;)Landroid/net/ HSPLandroid/net/Uri$HierarchicalUri;->toString()Ljava/lang/String; HSPLandroid/net/Uri$HierarchicalUri;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/net/Uri$OpaqueUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$Part;)V -HSPLandroid/net/Uri$OpaqueUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$Part;Landroid/net/Uri$OpaqueUri-IA;)V HSPLandroid/net/Uri$OpaqueUri;->getEncodedSchemeSpecificPart()Ljava/lang/String; HSPLandroid/net/Uri$OpaqueUri;->getScheme()Ljava/lang/String; HSPLandroid/net/Uri$OpaqueUri;->getSchemeSpecificPart()Ljava/lang/String; @@ -11461,7 +11470,6 @@ HSPLandroid/net/Uri$PathSegments;->size()I HSPLandroid/net/Uri$PathSegmentsBuilder;->add(Ljava/lang/String;)V HSPLandroid/net/Uri$PathSegmentsBuilder;->build()Landroid/net/Uri$PathSegments; HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;)V -HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;Landroid/net/Uri$StringUri-IA;)V HSPLandroid/net/Uri$StringUri;->buildUpon()Landroid/net/Uri$Builder; HSPLandroid/net/Uri$StringUri;->findFragmentSeparator()I HSPLandroid/net/Uri$StringUri;->findSchemeSeparator()I @@ -11485,7 +11493,7 @@ HSPLandroid/net/Uri$StringUri;->isRelative()Z HSPLandroid/net/Uri$StringUri;->parseAuthority(Ljava/lang/String;I)Ljava/lang/String; HSPLandroid/net/Uri$StringUri;->parseFragment()Ljava/lang/String; HSPLandroid/net/Uri$StringUri;->parsePath()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parsePath(Ljava/lang/String;I)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/net/Uri$StringUri;->parsePath(Ljava/lang/String;I)Ljava/lang/String; HSPLandroid/net/Uri$StringUri;->parseQuery()Ljava/lang/String; HSPLandroid/net/Uri$StringUri;->parseScheme()Ljava/lang/String; HSPLandroid/net/Uri$StringUri;->toString()Ljava/lang/String; @@ -11498,25 +11506,25 @@ HSPLandroid/net/Uri;->compareTo(Landroid/net/Uri;)I HSPLandroid/net/Uri;->compareTo(Ljava/lang/Object;)I HSPLandroid/net/Uri;->decode(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/net/Uri;->encode(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/net/Uri;->encode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/net/Uri;->encode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; HSPLandroid/net/Uri;->equals(Ljava/lang/Object;)Z HSPLandroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri; HSPLandroid/net/Uri;->fromParts(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri; HSPLandroid/net/Uri;->getBooleanQueryParameter(Ljava/lang/String;Z)Z -HSPLandroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String;+]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/net/Uri;->getQueryParameterNames()Ljava/util/Set;+]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/Set;Ljava/util/LinkedHashSet; +HSPLandroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String; +HSPLandroid/net/Uri;->getQueryParameterNames()Ljava/util/Set; HSPLandroid/net/Uri;->hashCode()I HSPLandroid/net/Uri;->isAbsolute()Z -HSPLandroid/net/Uri;->isAllowed(CLjava/lang/String;)Z+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/net/Uri;->isAllowed(CLjava/lang/String;)Z HSPLandroid/net/Uri;->isOpaque()Z HSPLandroid/net/Uri;->normalizeScheme()Landroid/net/Uri; HSPLandroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri; HSPLandroid/net/Uri;->toSafeString()Ljava/lang/String; HSPLandroid/net/Uri;->withAppendedPath(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri; HSPLandroid/net/Uri;->writeToParcel(Landroid/os/Parcel;Landroid/net/Uri;)V -HSPLandroid/net/UriCodec;->appendDecoded(Ljava/lang/StringBuilder;Ljava/lang/String;ZLjava/nio/charset/Charset;Z)V+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer;]Ljava/nio/charset/Charset;Lcom/android/icu/charset/CharsetICU;]Ljava/nio/charset/CharsetDecoder;Lcom/android/icu/charset/CharsetDecoderICU; +HSPLandroid/net/UriCodec;->appendDecoded(Ljava/lang/StringBuilder;Ljava/lang/String;ZLjava/nio/charset/Charset;Z)V HSPLandroid/net/UriCodec;->decode(Ljava/lang/String;ZLjava/nio/charset/Charset;Z)Ljava/lang/String; -HSPLandroid/net/UriCodec;->flushDecodingByteAccumulator(Ljava/lang/StringBuilder;Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Z)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer;]Ljava/nio/charset/CharsetDecoder;Lcom/android/icu/charset/CharsetDecoderICU; +HSPLandroid/net/UriCodec;->flushDecodingByteAccumulator(Ljava/lang/StringBuilder;Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Z)V HSPLandroid/net/UriCodec;->getNextCharacter(Ljava/lang/String;IILjava/lang/String;)C HSPLandroid/net/UriCodec;->hexCharToValue(C)I HSPLandroid/net/WebAddress;-><init>(Ljava/lang/String;)V @@ -11559,7 +11567,6 @@ HSPLandroid/os/AsyncTask$SerialExecutor$1;->run()V HSPLandroid/os/AsyncTask$SerialExecutor;->execute(Ljava/lang/Runnable;)V HSPLandroid/os/AsyncTask$SerialExecutor;->scheduleNext()V HSPLandroid/os/AsyncTask$WorkerRunnable;-><init>()V -HSPLandroid/os/AsyncTask$WorkerRunnable;-><init>(Landroid/os/AsyncTask$WorkerRunnable-IA;)V HSPLandroid/os/AsyncTask;->-$$Nest$fgetmTaskInvoked(Landroid/os/AsyncTask;)Ljava/util/concurrent/atomic/AtomicBoolean; HSPLandroid/os/AsyncTask;->-$$Nest$mfinish(Landroid/os/AsyncTask;Ljava/lang/Object;)V HSPLandroid/os/AsyncTask;->-$$Nest$mpostResult(Landroid/os/AsyncTask;Ljava/lang/Object;)Ljava/lang/Object; @@ -11586,7 +11593,7 @@ HSPLandroid/os/BaseBundle;-><init>(I)V HSPLandroid/os/BaseBundle;-><init>(Landroid/os/BaseBundle;)V HSPLandroid/os/BaseBundle;-><init>(Landroid/os/BaseBundle;Z)V HSPLandroid/os/BaseBundle;-><init>(Landroid/os/Parcel;I)V -HSPLandroid/os/BaseBundle;-><init>(Ljava/lang/ClassLoader;I)V+]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/os/Bundle; +HSPLandroid/os/BaseBundle;-><init>(Ljava/lang/ClassLoader;I)V HSPLandroid/os/BaseBundle;->clear()V HSPLandroid/os/BaseBundle;->containsKey(Ljava/lang/String;)Z HSPLandroid/os/BaseBundle;->deepCopyValue(Ljava/lang/Object;)Ljava/lang/Object; @@ -11622,7 +11629,7 @@ HSPLandroid/os/BaseBundle;->isEmpty()Z HSPLandroid/os/BaseBundle;->isEmptyParcel()Z HSPLandroid/os/BaseBundle;->isEmptyParcel(Landroid/os/Parcel;)Z HSPLandroid/os/BaseBundle;->isParcelled()Z -HSPLandroid/os/BaseBundle;->keySet()Ljava/util/Set;+]Landroid/os/BaseBundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/os/BaseBundle;->keySet()Ljava/util/Set; HSPLandroid/os/BaseBundle;->putAll(Landroid/os/PersistableBundle;)V HSPLandroid/os/BaseBundle;->putAll(Landroid/util/ArrayMap;)V HSPLandroid/os/BaseBundle;->putBoolean(Ljava/lang/String;Z)V @@ -11647,10 +11654,10 @@ HSPLandroid/os/BaseBundle;->remove(Ljava/lang/String;)V HSPLandroid/os/BaseBundle;->setClassLoader(Ljava/lang/ClassLoader;)V HSPLandroid/os/BaseBundle;->setShouldDefuse(Z)V HSPLandroid/os/BaseBundle;->size()I -HSPLandroid/os/BaseBundle;->unparcel()V+]Landroid/os/BaseBundle;Landroid/os/Bundle; +HSPLandroid/os/BaseBundle;->unparcel()V HSPLandroid/os/BaseBundle;->unparcel(Z)V -HSPLandroid/os/BaseBundle;->unwrapLazyValueFromMapLocked(ILjava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/function/BiFunction;Landroid/os/Parcel$LazyValue; -HSPLandroid/os/BaseBundle;->writeToParcelInner(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/os/BaseBundle;->unwrapLazyValueFromMapLocked(ILjava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; +HSPLandroid/os/BaseBundle;->writeToParcelInner(Landroid/os/Parcel;I)V HSPLandroid/os/BatteryManager;-><init>(Landroid/content/Context;Lcom/android/internal/app/IBatteryStats;Landroid/os/IBatteryPropertiesRegistrar;)V HSPLandroid/os/BatteryManager;->getIntProperty(I)I HSPLandroid/os/BatteryManager;->getLongProperty(I)J @@ -11687,7 +11694,7 @@ HSPLandroid/os/Binder$PropagateWorkSourceTransactListener;->onTransactEnded(Ljav HSPLandroid/os/Binder$PropagateWorkSourceTransactListener;->onTransactStarted(Landroid/os/IBinder;I)Ljava/lang/Object; HSPLandroid/os/Binder$ProxyTransactListener;->onTransactStarted(Landroid/os/IBinder;II)Ljava/lang/Object;+]Landroid/os/Binder$ProxyTransactListener;Landroid/os/Binder$PropagateWorkSourceTransactListener; HSPLandroid/os/Binder;-><init>()V -HSPLandroid/os/Binder;-><init>(Ljava/lang/String;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; +HSPLandroid/os/Binder;-><init>(Ljava/lang/String;)V HSPLandroid/os/Binder;->allowBlocking(Landroid/os/IBinder;)Landroid/os/IBinder; HSPLandroid/os/Binder;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V HSPLandroid/os/Binder;->checkParcel(Landroid/os/IBinder;ILandroid/os/Parcel;Ljava/lang/String;)V @@ -11695,14 +11702,14 @@ HSPLandroid/os/Binder;->copyAllowBlocking(Landroid/os/IBinder;Landroid/os/IBinde HSPLandroid/os/Binder;->defaultBlocking(Landroid/os/IBinder;)Landroid/os/IBinder; HSPLandroid/os/Binder;->doDump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V HSPLandroid/os/Binder;->dump(Ljava/io/FileDescriptor;[Ljava/lang/String;)V -HSPLandroid/os/Binder;->execTransact(IJJI)Z+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Binder;->execTransactInternal(ILandroid/os/Parcel;Landroid/os/Parcel;II)Z+]Landroid/os/Binder;missing_types +HSPLandroid/os/Binder;->execTransact(IJJI)Z +HSPLandroid/os/Binder;->execTransactInternal(ILandroid/os/Parcel;Landroid/os/Parcel;II)Z HSPLandroid/os/Binder;->getCallingUserHandle()Landroid/os/UserHandle; HSPLandroid/os/Binder;->getInterfaceDescriptor()Ljava/lang/String; HSPLandroid/os/Binder;->getMaxTransactionId()I HSPLandroid/os/Binder;->getSimpleDescriptor()Ljava/lang/String; HSPLandroid/os/Binder;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/os/Binder;->getTransactionTraceName(I)Ljava/lang/String;+]Landroid/os/Binder;megamorphic_types]Ljava/lang/StringBuffer;Ljava/lang/StringBuffer;]Ljava/util/concurrent/atomic/AtomicReferenceArray;Ljava/util/concurrent/atomic/AtomicReferenceArray; +HSPLandroid/os/Binder;->getTransactionTraceName(I)Ljava/lang/String; HSPLandroid/os/Binder;->isBinderAlive()Z HSPLandroid/os/Binder;->isDirectlyHandlingTransaction()Z HSPLandroid/os/Binder;->isProxy(Landroid/os/IInterface;)Z @@ -11717,17 +11724,17 @@ HSPLandroid/os/Binder;->setTransactionCallback(Landroid/os/IBinderCallback;)V HSPLandroid/os/Binder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HSPLandroid/os/Binder;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z HSPLandroid/os/Binder;->withCleanCallingIdentity(Lcom/android/internal/util/FunctionalUtils$ThrowingRunnable;)V -HSPLandroid/os/BinderProxy$ProxyMap;->get(J)Landroid/os/BinderProxy;+]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/os/BinderProxy$ProxyMap;->get(J)Landroid/os/BinderProxy; HSPLandroid/os/BinderProxy$ProxyMap;->hash(J)I HSPLandroid/os/BinderProxy$ProxyMap;->remove(II)V HSPLandroid/os/BinderProxy$ProxyMap;->set(JLandroid/os/BinderProxy;)V HSPLandroid/os/BinderProxy;-><init>(J)V -HSPLandroid/os/BinderProxy;->getInstance(JJ)Landroid/os/BinderProxy;+]Landroid/os/BinderProxy$ProxyMap;Landroid/os/BinderProxy$ProxyMap;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/os/BinderProxy;->linkToDeath(Landroid/os/IBinder$DeathRecipient;I)V+]Ljava/util/List;Ljava/util/Collections$SynchronizedRandomAccessList; +HSPLandroid/os/BinderProxy;->getInstance(JJ)Landroid/os/BinderProxy; +HSPLandroid/os/BinderProxy;->linkToDeath(Landroid/os/IBinder$DeathRecipient;I)V HSPLandroid/os/BinderProxy;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface; HSPLandroid/os/BinderProxy;->sendDeathNotice(Landroid/os/IBinder$DeathRecipient;Landroid/os/IBinder;)V -HSPLandroid/os/BinderProxy;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/os/BinderProxy;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/BinderProxy;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z+]Ljava/util/List;Ljava/util/Collections$SynchronizedRandomAccessList; +HSPLandroid/os/BinderProxy;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z +HSPLandroid/os/BinderProxy;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z HSPLandroid/os/BluetoothServiceManager$ServiceRegisterer;-><init>(Ljava/lang/String;)V HSPLandroid/os/BluetoothServiceManager$ServiceRegisterer;->get()Landroid/os/IBinder; HSPLandroid/os/BluetoothServiceManager;-><init>()V @@ -11772,7 +11779,7 @@ HSPLandroid/os/Bundle;->hasFileDescriptors()Z HSPLandroid/os/Bundle;->maybePrefillHasFds()V HSPLandroid/os/Bundle;->putAll(Landroid/os/Bundle;)V HSPLandroid/os/Bundle;->putBinder(Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V HSPLandroid/os/Bundle;->putByteArray(Ljava/lang/String;[B)V HSPLandroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V HSPLandroid/os/Bundle;->putCharSequenceArray(Ljava/lang/String;[Ljava/lang/CharSequence;)V @@ -11792,7 +11799,7 @@ HSPLandroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V HSPLandroid/os/Bundle;->setDefusable(Landroid/os/Bundle;Z)Landroid/os/Bundle; HSPLandroid/os/Bundle;->setDefusable(Z)V HSPLandroid/os/Bundle;->toString()Ljava/lang/String; -HSPLandroid/os/Bundle;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Bundle;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/os/CancellationSignal$Transport;-><init>()V HSPLandroid/os/CancellationSignal$Transport;->cancel()V HSPLandroid/os/CancellationSignal;-><init>()V @@ -11967,7 +11974,6 @@ HSPLandroid/os/GraphicsEnvironment;->getGlobalSettingsString(Landroid/content/Co HSPLandroid/os/GraphicsEnvironment;->getInstance()Landroid/os/GraphicsEnvironment; HSPLandroid/os/GraphicsEnvironment;->getPackageIndex(Ljava/lang/String;Ljava/util/List;)I HSPLandroid/os/GraphicsEnvironment;->getVulkanVersion(Landroid/content/pm/PackageManager;)I -HSPLandroid/os/GraphicsEnvironment;->queryAngleChoiceInternal(Landroid/content/Context;Landroid/os/Bundle;Ljava/lang/String;)Ljava/lang/String; HSPLandroid/os/GraphicsEnvironment;->setLayerPaths(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/os/GraphicsEnvironment;->setup(Landroid/content/Context;Landroid/os/Bundle;)V HSPLandroid/os/GraphicsEnvironment;->setupAngle(Landroid/content/Context;Landroid/os/Bundle;Landroid/content/pm/PackageManager;Ljava/lang/String;)Z @@ -11978,7 +11984,6 @@ HSPLandroid/os/Handler$BlockingRunnable;-><init>(Ljava/lang/Runnable;)V HSPLandroid/os/Handler$BlockingRunnable;->postAndWait(Landroid/os/Handler;J)Z HSPLandroid/os/Handler$BlockingRunnable;->run()V HSPLandroid/os/Handler$MessengerImpl;-><init>(Landroid/os/Handler;)V -HSPLandroid/os/Handler$MessengerImpl;-><init>(Landroid/os/Handler;Landroid/os/Handler$MessengerImpl-IA;)V HSPLandroid/os/Handler$MessengerImpl;->send(Landroid/os/Message;)V HSPLandroid/os/Handler;-><init>()V HSPLandroid/os/Handler;-><init>(Landroid/os/Handler$Callback;)V @@ -11990,8 +11995,8 @@ HSPLandroid/os/Handler;-><init>(Landroid/os/Looper;Landroid/os/Handler$Callback; HSPLandroid/os/Handler;-><init>(Z)V HSPLandroid/os/Handler;->createAsync(Landroid/os/Looper;)Landroid/os/Handler; HSPLandroid/os/Handler;->disallowNullArgumentIfShared(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/Handler;->dispatchMessage(Landroid/os/Message;)V+]Landroid/os/Handler;missing_types -HSPLandroid/os/Handler;->enqueueMessage(Landroid/os/MessageQueue;Landroid/os/Message;J)Z+]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue;Landroid/os/MessageQueue; +HSPLandroid/os/Handler;->dispatchMessage(Landroid/os/Message;)V +HSPLandroid/os/Handler;->enqueueMessage(Landroid/os/MessageQueue;Landroid/os/Message;J)Z HSPLandroid/os/Handler;->executeOrSendMessage(Landroid/os/Message;)Z HSPLandroid/os/Handler;->getIMessenger()Landroid/os/IMessenger; HSPLandroid/os/Handler;->getLooper()Landroid/os/Looper; @@ -11999,7 +12004,7 @@ HSPLandroid/os/Handler;->getMain()Landroid/os/Handler; HSPLandroid/os/Handler;->getPostMessage(Ljava/lang/Runnable;)Landroid/os/Message; HSPLandroid/os/Handler;->getPostMessage(Ljava/lang/Runnable;Ljava/lang/Object;)Landroid/os/Message; HSPLandroid/os/Handler;->getTraceName(Landroid/os/Message;)Ljava/lang/String; -HSPLandroid/os/Handler;->handleCallback(Landroid/os/Message;)V+]Ljava/lang/Runnable;missing_types +HSPLandroid/os/Handler;->handleCallback(Landroid/os/Message;)V HSPLandroid/os/Handler;->handleMessage(Landroid/os/Message;)V HSPLandroid/os/Handler;->hasCallbacks(Ljava/lang/Runnable;)Z HSPLandroid/os/Handler;->hasMessages(I)Z @@ -12009,7 +12014,7 @@ HSPLandroid/os/Handler;->obtainMessage(I)Landroid/os/Message; HSPLandroid/os/Handler;->obtainMessage(III)Landroid/os/Message; HSPLandroid/os/Handler;->obtainMessage(IIILjava/lang/Object;)Landroid/os/Message; HSPLandroid/os/Handler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Handler;->post(Ljava/lang/Runnable;)Z+]Landroid/os/Handler;missing_types +HSPLandroid/os/Handler;->post(Ljava/lang/Runnable;)Z HSPLandroid/os/Handler;->postAtFrontOfQueue(Ljava/lang/Runnable;)Z HSPLandroid/os/Handler;->postAtTime(Ljava/lang/Runnable;J)Z HSPLandroid/os/Handler;->postAtTime(Ljava/lang/Runnable;Ljava/lang/Object;J)Z @@ -12027,7 +12032,7 @@ HSPLandroid/os/Handler;->sendEmptyMessageDelayed(IJ)Z HSPLandroid/os/Handler;->sendMessage(Landroid/os/Message;)Z HSPLandroid/os/Handler;->sendMessageAtFrontOfQueue(Landroid/os/Message;)Z HSPLandroid/os/Handler;->sendMessageAtTime(Landroid/os/Message;J)Z -HSPLandroid/os/Handler;->sendMessageDelayed(Landroid/os/Message;J)Z+]Landroid/os/Handler;missing_types +HSPLandroid/os/Handler;->sendMessageDelayed(Landroid/os/Message;J)Z HSPLandroid/os/Handler;->toString()Ljava/lang/String; HSPLandroid/os/HandlerExecutor;-><init>(Landroid/os/Handler;)V HSPLandroid/os/HandlerExecutor;->execute(Ljava/lang/Runnable;)V @@ -12057,7 +12062,7 @@ HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;-><init>(Landroid/os/IBind HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->asBinder()Landroid/os/IBinder; HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->getProperty(ILandroid/os/BatteryProperty;)I HSPLandroid/os/IBatteryPropertiesRegistrar$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IBatteryPropertiesRegistrar; -HSPLandroid/os/IBinder$DeathRecipient;->binderDied(Landroid/os/IBinder;)V+]Landroid/os/IBinder$DeathRecipient;Landroid/os/RemoteCallbackList$Callback; +HSPLandroid/os/IBinder$DeathRecipient;->binderDied(Landroid/os/IBinder;)V HSPLandroid/os/IBinder;->getSuggestedMaxIpcSizeBytes()I HSPLandroid/os/ICancellationSignal$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/os/ICancellationSignal$Stub$Proxy;->asBinder()Landroid/os/IBinder; @@ -12108,7 +12113,6 @@ HSPLandroid/os/IRemoteCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/ HSPLandroid/os/IRemoteCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HSPLandroid/os/IServiceManager$Stub$Proxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V HSPLandroid/os/IServiceManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IServiceManager$Stub$Proxy;->checkService(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/IServiceManager$Stub$Proxy;->isDeclared(Ljava/lang/String;)Z HSPLandroid/os/ISystemConfig$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/ISystemConfig; HSPLandroid/os/IThermalEventListener$Stub;-><init>()V @@ -12164,17 +12168,17 @@ HSPLandroid/os/IpcDataCache;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/ HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$QueryHandler;)V HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$RemoteCall;)V HSPLandroid/os/IpcDataCache;->query(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/LocaleList;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/os/LocaleList$1;Landroid/os/LocaleList$1; -HSPLandroid/os/LocaleList;-><init>([Ljava/util/Locale;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/Locale;Ljava/util/Locale; +HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/LocaleList; +HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; +HSPLandroid/os/LocaleList;-><init>([Ljava/util/Locale;)V HSPLandroid/os/LocaleList;->computeFirstMatch(Ljava/util/Collection;Z)Ljava/util/Locale; HSPLandroid/os/LocaleList;->computeFirstMatchIndex(Ljava/util/Collection;Z)I HSPLandroid/os/LocaleList;->equals(Ljava/lang/Object;)Z HSPLandroid/os/LocaleList;->findFirstMatchIndex(Ljava/util/Locale;)I -HSPLandroid/os/LocaleList;->forLanguageTags(Ljava/lang/String;)Landroid/os/LocaleList;+]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/os/LocaleList;->forLanguageTags(Ljava/lang/String;)Landroid/os/LocaleList; HSPLandroid/os/LocaleList;->get(I)Ljava/util/Locale; HSPLandroid/os/LocaleList;->getAdjustedDefault()Landroid/os/LocaleList; -HSPLandroid/os/LocaleList;->getDefault()Landroid/os/LocaleList;+]Ljava/lang/Object;Ljava/util/Locale; +HSPLandroid/os/LocaleList;->getDefault()Landroid/os/LocaleList; HSPLandroid/os/LocaleList;->getEmptyLocaleList()Landroid/os/LocaleList; HSPLandroid/os/LocaleList;->getFirstMatchWithEnglishSupported([Ljava/lang/String;)Ljava/util/Locale; HSPLandroid/os/LocaleList;->getLikelyScript(Ljava/util/Locale;)Ljava/lang/String; @@ -12193,11 +12197,11 @@ HSPLandroid/os/Looper;-><init>(Z)V HSPLandroid/os/Looper;->getMainLooper()Landroid/os/Looper; HSPLandroid/os/Looper;->getQueue()Landroid/os/MessageQueue; HSPLandroid/os/Looper;->getThread()Ljava/lang/Thread; -HSPLandroid/os/Looper;->getThresholdOverride()I+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/lang/Thread;Landroid/os/HandlerThread; +HSPLandroid/os/Looper;->getThresholdOverride()I HSPLandroid/os/Looper;->isCurrentThread()Z HSPLandroid/os/Looper;->loop()V -HSPLandroid/os/Looper;->loopOnce(Landroid/os/Looper;JI)Z+]Landroid/os/Handler;missing_types]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue;Landroid/os/MessageQueue; -HSPLandroid/os/Looper;->myLooper()Landroid/os/Looper;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; +HSPLandroid/os/Looper;->loopOnce(Landroid/os/Looper;JI)Z +HSPLandroid/os/Looper;->myLooper()Landroid/os/Looper; HSPLandroid/os/Looper;->myQueue()Landroid/os/MessageQueue; HSPLandroid/os/Looper;->prepare()V HSPLandroid/os/Looper;->prepare(Z)V @@ -12245,22 +12249,22 @@ HSPLandroid/os/MessageQueue;->addIdleHandler(Landroid/os/MessageQueue$IdleHandle HSPLandroid/os/MessageQueue;->addOnFileDescriptorEventListener(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V HSPLandroid/os/MessageQueue;->dispatchEvents(II)I HSPLandroid/os/MessageQueue;->dispose()V -HSPLandroid/os/MessageQueue;->enqueueMessage(Landroid/os/Message;J)Z+]Landroid/os/Message;Landroid/os/Message; +HSPLandroid/os/MessageQueue;->enqueueMessage(Landroid/os/Message;J)Z HSPLandroid/os/MessageQueue;->finalize()V HSPLandroid/os/MessageQueue;->hasMessages(Landroid/os/Handler;ILjava/lang/Object;)Z HSPLandroid/os/MessageQueue;->hasMessages(Landroid/os/Handler;Ljava/lang/Runnable;Ljava/lang/Object;)Z -HSPLandroid/os/MessageQueue;->next()Landroid/os/Message;+]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue$IdleHandler;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/os/MessageQueue;->next()Landroid/os/Message; HSPLandroid/os/MessageQueue;->postSyncBarrier()I -HSPLandroid/os/MessageQueue;->postSyncBarrier(J)I+]Landroid/os/Message;Landroid/os/Message; +HSPLandroid/os/MessageQueue;->postSyncBarrier(J)I HSPLandroid/os/MessageQueue;->quit(Z)V HSPLandroid/os/MessageQueue;->removeAllFutureMessagesLocked()V HSPLandroid/os/MessageQueue;->removeAllMessagesLocked()V -HSPLandroid/os/MessageQueue;->removeCallbacksAndMessages(Landroid/os/Handler;Ljava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; +HSPLandroid/os/MessageQueue;->removeCallbacksAndMessages(Landroid/os/Handler;Ljava/lang/Object;)V HSPLandroid/os/MessageQueue;->removeIdleHandler(Landroid/os/MessageQueue$IdleHandler;)V -HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;ILjava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;Ljava/lang/Runnable;Ljava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; +HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;ILjava/lang/Object;)V +HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;Ljava/lang/Runnable;Ljava/lang/Object;)V HSPLandroid/os/MessageQueue;->removeOnFileDescriptorEventListener(Ljava/io/FileDescriptor;)V -HSPLandroid/os/MessageQueue;->removeSyncBarrier(I)V+]Landroid/os/Message;Landroid/os/Message; +HSPLandroid/os/MessageQueue;->removeSyncBarrier(I)V HSPLandroid/os/MessageQueue;->updateOnFileDescriptorEventListenerLocked(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V HSPLandroid/os/Messenger$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/Messenger; HSPLandroid/os/Messenger$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -12273,14 +12277,14 @@ HSPLandroid/os/Messenger;->send(Landroid/os/Message;)V HSPLandroid/os/Messenger;->writeMessengerOrNullToParcel(Landroid/os/Messenger;Landroid/os/Parcel;)V HSPLandroid/os/Messenger;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/os/Parcel$2;-><init>(Landroid/os/Parcel;Ljava/io/InputStream;Ljava/lang/ClassLoader;)V -HSPLandroid/os/Parcel$2;->resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;+]Ljava/io/ObjectStreamClass;Ljava/io/ObjectStreamClass; +HSPLandroid/os/Parcel$2;->resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class; HSPLandroid/os/Parcel$LazyValue;-><init>(Landroid/os/Parcel;IIILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/os/Parcel$LazyValue;->writeToParcel(Landroid/os/Parcel;)V -HSPLandroid/os/Parcel$ReadWriteHelper;->readString16(Landroid/os/Parcel;)Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$ReadWriteHelper;->readString8(Landroid/os/Parcel;)Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$ReadWriteHelper;->writeString16(Landroid/os/Parcel;Ljava/lang/String;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel$ReadWriteHelper;->readString16(Landroid/os/Parcel;)Ljava/lang/String; +HSPLandroid/os/Parcel$ReadWriteHelper;->readString8(Landroid/os/Parcel;)Ljava/lang/String; +HSPLandroid/os/Parcel$ReadWriteHelper;->writeString16(Landroid/os/Parcel;Ljava/lang/String;)V HSPLandroid/os/Parcel$ReadWriteHelper;->writeString8(Landroid/os/Parcel;Ljava/lang/String;)V HSPLandroid/os/Parcel;->-$$Nest$mreadValue(Landroid/os/Parcel;Ljava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel;-><init>(J)V @@ -12294,15 +12298,15 @@ HSPLandroid/os/Parcel;->createBooleanArray()[Z HSPLandroid/os/Parcel;->createByteArray()[B HSPLandroid/os/Parcel;->createException(ILjava/lang/String;)Ljava/lang/Exception; HSPLandroid/os/Parcel;->createExceptionOrNull(ILjava/lang/String;)Ljava/lang/Exception; -HSPLandroid/os/Parcel;->createFloatArray()[F+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createIntArray()[I+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->createFloatArray()[F +HSPLandroid/os/Parcel;->createIntArray()[I HSPLandroid/os/Parcel;->createLongArray()[J -HSPLandroid/os/Parcel;->createString16Array()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createString8Array()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->createString16Array()[Ljava/lang/String; +HSPLandroid/os/Parcel;->createString8Array()[Ljava/lang/String; HSPLandroid/os/Parcel;->createStringArray()[Ljava/lang/String; HSPLandroid/os/Parcel;->createStringArrayList()Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->createTypedArray(Landroid/os/Parcelable$Creator;)[Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;missing_types -HSPLandroid/os/Parcel;->createTypedArrayList(Landroid/os/Parcelable$Creator;)Ljava/util/ArrayList;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/os/Parcel;->createTypedArray(Landroid/os/Parcelable$Creator;)[Ljava/lang/Object; +HSPLandroid/os/Parcel;->createTypedArrayList(Landroid/os/Parcelable$Creator;)Ljava/util/ArrayList; HSPLandroid/os/Parcel;->dataAvail()I HSPLandroid/os/Parcel;->dataPosition()I HSPLandroid/os/Parcel;->dataSize()I @@ -12334,10 +12338,10 @@ HSPLandroid/os/Parcel;->readArrayListInternal(Ljava/lang/ClassLoader;Ljava/lang/ HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;IZZLjava/lang/ClassLoader;)I HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;Ljava/lang/ClassLoader;)V HSPLandroid/os/Parcel;->readArrayMapInternal(Landroid/util/ArrayMap;ILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readArraySet(Ljava/lang/ClassLoader;)Landroid/util/ArraySet;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLandroid/os/Parcel;->readArraySet(Ljava/lang/ClassLoader;)Landroid/util/ArraySet; HSPLandroid/os/Parcel;->readBinderList(Ljava/util/List;)V HSPLandroid/os/Parcel;->readBlob()[B -HSPLandroid/os/Parcel;->readBoolean()Z+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readBoolean()Z HSPLandroid/os/Parcel;->readBooleanArray([Z)V HSPLandroid/os/Parcel;->readBundle()Landroid/os/Bundle; HSPLandroid/os/Parcel;->readBundle(Ljava/lang/ClassLoader;)Landroid/os/Bundle; @@ -12347,9 +12351,9 @@ HSPLandroid/os/Parcel;->readCallingWorkSourceUid()I HSPLandroid/os/Parcel;->readCharSequence()Ljava/lang/CharSequence; HSPLandroid/os/Parcel;->readCharSequenceArray()[Ljava/lang/CharSequence; HSPLandroid/os/Parcel;->readDouble()D -HSPLandroid/os/Parcel;->readException()V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readException()V HSPLandroid/os/Parcel;->readException(ILjava/lang/String;)V -HSPLandroid/os/Parcel;->readExceptionCode()I+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readExceptionCode()I HSPLandroid/os/Parcel;->readFloat()F HSPLandroid/os/Parcel;->readFloatArray([F)V HSPLandroid/os/Parcel;->readHashMap(Ljava/lang/ClassLoader;)Ljava/util/HashMap; @@ -12372,16 +12376,16 @@ HSPLandroid/os/Parcel;->readParcelableArray(Ljava/lang/ClassLoader;)[Landroid/os HSPLandroid/os/Parcel;->readParcelableArray(Ljava/lang/ClassLoader;Ljava/lang/Class;)[Ljava/lang/Object; HSPLandroid/os/Parcel;->readParcelableArrayInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)[Ljava/lang/Object; HSPLandroid/os/Parcel;->readParcelableCreator(Ljava/lang/ClassLoader;)Landroid/os/Parcelable$Creator; -HSPLandroid/os/Parcel;->readParcelableCreatorInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/os/Parcelable$Creator;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/reflect/Field;Ljava/lang/reflect/Field;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/os/Parcel;->readParcelableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcelable$Creator;megamorphic_types +HSPLandroid/os/Parcel;->readParcelableCreatorInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/os/Parcelable$Creator; +HSPLandroid/os/Parcel;->readParcelableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel;->readParcelableList(Ljava/util/List;Ljava/lang/ClassLoader;)Ljava/util/List; HSPLandroid/os/Parcel;->readParcelableList(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/List; -HSPLandroid/os/Parcel;->readParcelableListInternal(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/List;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/os/Parcel;->readParcelableListInternal(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/List; HSPLandroid/os/Parcel;->readPersistableBundle()Landroid/os/PersistableBundle; HSPLandroid/os/Parcel;->readPersistableBundle(Ljava/lang/ClassLoader;)Landroid/os/PersistableBundle; HSPLandroid/os/Parcel;->readRawFileDescriptor()Ljava/io/FileDescriptor; HSPLandroid/os/Parcel;->readSerializable()Ljava/io/Serializable; -HSPLandroid/os/Parcel;->readSerializableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/io/ObjectInputStream;Landroid/os/Parcel$2; +HSPLandroid/os/Parcel;->readSerializableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel;->readSize()Landroid/util/Size; HSPLandroid/os/Parcel;->readSparseArray(Ljava/lang/ClassLoader;)Landroid/util/SparseArray; HSPLandroid/os/Parcel;->readSparseArray(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/util/SparseArray; @@ -12389,23 +12393,23 @@ HSPLandroid/os/Parcel;->readSparseArrayInternal(Ljava/lang/ClassLoader;Ljava/lan HSPLandroid/os/Parcel;->readSparseIntArray()Landroid/util/SparseIntArray; HSPLandroid/os/Parcel;->readSparseIntArrayInternal(Landroid/util/SparseIntArray;I)V HSPLandroid/os/Parcel;->readSquashed(Landroid/os/Parcel$SquashReadHelper;)Landroid/os/Parcelable; -HSPLandroid/os/Parcel;->readString()Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readString16()Ljava/lang/String;+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; +HSPLandroid/os/Parcel;->readString()Ljava/lang/String; +HSPLandroid/os/Parcel;->readString16()Ljava/lang/String; HSPLandroid/os/Parcel;->readString16Array([Ljava/lang/String;)V HSPLandroid/os/Parcel;->readString16NoHelper()Ljava/lang/String; -HSPLandroid/os/Parcel;->readString8()Ljava/lang/String;+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; +HSPLandroid/os/Parcel;->readString8()Ljava/lang/String; HSPLandroid/os/Parcel;->readString8NoHelper()Ljava/lang/String; -HSPLandroid/os/Parcel;->readStringArray()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readStringArray()[Ljava/lang/String; HSPLandroid/os/Parcel;->readStringArray([Ljava/lang/String;)V HSPLandroid/os/Parcel;->readStringList(Ljava/util/List;)V HSPLandroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder; -HSPLandroid/os/Parcel;->readTypedArray([Ljava/lang/Object;Landroid/os/Parcelable$Creator;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readTypedArray([Ljava/lang/Object;Landroid/os/Parcelable$Creator;)V HSPLandroid/os/Parcel;->readTypedList(Ljava/util/List;Landroid/os/Parcelable$Creator;)V -HSPLandroid/os/Parcel;->readTypedObject(Landroid/os/Parcelable$Creator;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;megamorphic_types +HSPLandroid/os/Parcel;->readTypedObject(Landroid/os/Parcelable$Creator;)Ljava/lang/Object; HSPLandroid/os/Parcel;->readValue(ILjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readValue(ILjava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; +HSPLandroid/os/Parcel;->readValue(ILjava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel;->readValue(Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readValue(Ljava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->readValue(Ljava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/os/Parcel;->recycle()V HSPLandroid/os/Parcel;->resetSqaushingState()V HSPLandroid/os/Parcel;->restoreAllowFds(Z)V @@ -12415,13 +12419,13 @@ HSPLandroid/os/Parcel;->setDataSize(I)V HSPLandroid/os/Parcel;->setReadWriteHelper(Landroid/os/Parcel$ReadWriteHelper;)V HSPLandroid/os/Parcel;->unmarshall([BII)V HSPLandroid/os/Parcel;->writeArrayMap(Landroid/util/ArrayMap;)V -HSPLandroid/os/Parcel;->writeArrayMapInternal(Landroid/util/ArrayMap;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/os/Parcel;->writeArrayMapInternal(Landroid/util/ArrayMap;)V HSPLandroid/os/Parcel;->writeArraySet(Landroid/util/ArraySet;)V HSPLandroid/os/Parcel;->writeBinderList(Ljava/util/List;)V HSPLandroid/os/Parcel;->writeBlob([B)V HSPLandroid/os/Parcel;->writeBoolean(Z)V HSPLandroid/os/Parcel;->writeBooleanArray([Z)V -HSPLandroid/os/Parcel;->writeBundle(Landroid/os/Bundle;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->writeBundle(Landroid/os/Bundle;)V HSPLandroid/os/Parcel;->writeByte(B)V HSPLandroid/os/Parcel;->writeByteArray([B)V HSPLandroid/os/Parcel;->writeByteArray([BII)V @@ -12434,23 +12438,23 @@ HSPLandroid/os/Parcel;->writeFloatArray([F)V HSPLandroid/os/Parcel;->writeInt(I)V HSPLandroid/os/Parcel;->writeIntArray([I)V HSPLandroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeList(Ljava/util/List;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/os/Parcel;->writeList(Ljava/util/List;)V HSPLandroid/os/Parcel;->writeLong(J)V HSPLandroid/os/Parcel;->writeLongArray([J)V HSPLandroid/os/Parcel;->writeMap(Ljava/util/Map;)V HSPLandroid/os/Parcel;->writeMapInternal(Ljava/util/Map;)V HSPLandroid/os/Parcel;->writeNoException()V -HSPLandroid/os/Parcel;->writeParcelable(Landroid/os/Parcelable;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable;missing_types +HSPLandroid/os/Parcel;->writeParcelable(Landroid/os/Parcelable;I)V HSPLandroid/os/Parcel;->writeParcelableArray([Landroid/os/Parcelable;I)V -HSPLandroid/os/Parcel;->writeParcelableCreator(Landroid/os/Parcelable;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types +HSPLandroid/os/Parcel;->writeParcelableCreator(Landroid/os/Parcelable;)V HSPLandroid/os/Parcel;->writeParcelableList(Ljava/util/List;I)V HSPLandroid/os/Parcel;->writePersistableBundle(Landroid/os/PersistableBundle;)V HSPLandroid/os/Parcel;->writeSerializable(Ljava/io/Serializable;)V -HSPLandroid/os/Parcel;->writeSparseArray(Landroid/util/SparseArray;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/os/Parcel;->writeSparseArray(Landroid/util/SparseArray;)V HSPLandroid/os/Parcel;->writeSparseBooleanArray(Landroid/util/SparseBooleanArray;)V HSPLandroid/os/Parcel;->writeSparseIntArray(Landroid/util/SparseIntArray;)V -HSPLandroid/os/Parcel;->writeString(Ljava/lang/String;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->writeString16(Ljava/lang/String;)V+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; +HSPLandroid/os/Parcel;->writeString(Ljava/lang/String;)V +HSPLandroid/os/Parcel;->writeString16(Ljava/lang/String;)V HSPLandroid/os/Parcel;->writeString16Array([Ljava/lang/String;)V HSPLandroid/os/Parcel;->writeString16NoHelper(Ljava/lang/String;)V HSPLandroid/os/Parcel;->writeString8(Ljava/lang/String;)V @@ -12464,9 +12468,9 @@ HSPLandroid/os/Parcel;->writeTypedArray([Landroid/os/Parcelable;I)V HSPLandroid/os/Parcel;->writeTypedArrayMap(Landroid/util/ArrayMap;I)V HSPLandroid/os/Parcel;->writeTypedList(Ljava/util/List;)V HSPLandroid/os/Parcel;->writeTypedList(Ljava/util/List;I)V -HSPLandroid/os/Parcel;->writeTypedObject(Landroid/os/Parcelable;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable;Landroid/app/FragmentState;,Landroid/content/Intent;,Landroid/os/Bundle;,Landroid/view/SurfaceControl$Transaction; -HSPLandroid/os/Parcel;->writeValue(ILjava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLandroid/os/Parcel;->writeValue(Ljava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/os/Parcel;->writeTypedObject(Landroid/os/Parcelable;I)V +HSPLandroid/os/Parcel;->writeValue(ILjava/lang/Object;)V +HSPLandroid/os/Parcel;->writeValue(Ljava/lang/Object;)V HSPLandroid/os/ParcelFileDescriptor$2;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ParcelFileDescriptor; HSPLandroid/os/ParcelFileDescriptor$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/os/ParcelFileDescriptor$AutoCloseInputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V @@ -12620,15 +12624,12 @@ HSPLandroid/os/RemoteCallback;-><init>(Landroid/os/RemoteCallback$OnResultListen HSPLandroid/os/RemoteCallback;-><init>(Landroid/os/RemoteCallback$OnResultListener;Landroid/os/Handler;)V HSPLandroid/os/RemoteCallback;->sendResult(Landroid/os/Bundle;)V HSPLandroid/os/RemoteCallback;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/RemoteCallbackList$Callback;-><init>(Landroid/os/RemoteCallbackList;Landroid/os/IInterface;Ljava/lang/Object;)V -HSPLandroid/os/RemoteCallbackList$Callback;->binderDied()V HSPLandroid/os/RemoteCallbackList;-><init>()V HSPLandroid/os/RemoteCallbackList;->beginBroadcast()I HSPLandroid/os/RemoteCallbackList;->finishBroadcast()V HSPLandroid/os/RemoteCallbackList;->getBroadcastCookie(I)Ljava/lang/Object; HSPLandroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; HSPLandroid/os/RemoteCallbackList;->kill()V -HSPLandroid/os/RemoteCallbackList;->logExcessiveCallbacks()V HSPLandroid/os/RemoteCallbackList;->onCallbackDied(Landroid/os/IInterface;)V HSPLandroid/os/RemoteCallbackList;->onCallbackDied(Landroid/os/IInterface;Ljava/lang/Object;)V HSPLandroid/os/RemoteCallbackList;->register(Landroid/os/IInterface;)Z @@ -12655,22 +12656,17 @@ HSPLandroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinde HSPLandroid/os/ServiceManager;->getServiceOrThrow(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/ServiceManager;->initServiceCache(Ljava/util/Map;)V HSPLandroid/os/ServiceManager;->isDeclared(Ljava/lang/String;)Z -HSPLandroid/os/ServiceManager;->rawGetService(Ljava/lang/String;)Landroid/os/IBinder;+]Landroid/os/IServiceManager;Landroid/os/ServiceManagerProxy;]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger; +HSPLandroid/os/ServiceManager;->rawGetService(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/ServiceManager;->waitForDeclaredService(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/ServiceManagerProxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V -HSPLandroid/os/ServiceManagerProxy;->checkService(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/ServiceManagerProxy;->getService(Ljava/lang/String;)Landroid/os/IBinder; HSPLandroid/os/ServiceManagerProxy;->isDeclared(Ljava/lang/String;)Z HSPLandroid/os/ServiceSpecificException;-><init>(ILjava/lang/String;)V HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/SharedMemory; HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/SharedMemory$Closer;-><init>(ILandroid/os/SharedMemory$MemoryRegistration;)V -HSPLandroid/os/SharedMemory$Closer;-><init>(ILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory$Closer-IA;)V HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(I)V -HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(ILandroid/os/SharedMemory$MemoryRegistration-IA;)V HSPLandroid/os/SharedMemory$MemoryRegistration;->acquire()Landroid/os/SharedMemory$MemoryRegistration; HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;)V -HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory$Unmapper-IA;)V HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;)V HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;Landroid/os/SharedMemory-IA;)V HSPLandroid/os/SharedMemory;->checkOpen()V @@ -12721,7 +12717,6 @@ HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onWriteToDisk()V HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->setThreadPolicyMask(I)V HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->startHandlingViolationException(Landroid/os/strictmode/Violation;)V HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>()V -HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>(Landroid/os/StrictMode$AndroidCloseGuardReporter-IA;)V HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;)V HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;Ljava/lang/Throwable;)V HSPLandroid/os/StrictMode$InstanceTracker;-><init>(Ljava/lang/Object;)V @@ -12750,11 +12745,8 @@ HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitDiskReads()Landroid/os/St HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitDiskWrites()Landroid/os/StrictMode$ThreadPolicy$Builder; HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitUnbufferedIo()Landroid/os/StrictMode$ThreadPolicy$Builder; HSPLandroid/os/StrictMode$ThreadPolicy;-><init>(ILandroid/os/StrictMode$OnThreadViolationListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/os/StrictMode$ThreadPolicy;-><init>(ILandroid/os/StrictMode$OnThreadViolationListener;Ljava/util/concurrent/Executor;Landroid/os/StrictMode$ThreadPolicy-IA;)V HSPLandroid/os/StrictMode$ThreadSpanState;-><init>()V -HSPLandroid/os/StrictMode$ThreadSpanState;-><init>(Landroid/os/StrictMode$ThreadSpanState-IA;)V HSPLandroid/os/StrictMode$UnsafeIntentStrictModeCallback;-><init>()V -HSPLandroid/os/StrictMode$UnsafeIntentStrictModeCallback;-><init>(Landroid/os/StrictMode$UnsafeIntentStrictModeCallback-IA;)V HSPLandroid/os/StrictMode$ViolationInfo;->-$$Nest$fgetmViolation(Landroid/os/StrictMode$ViolationInfo;)Landroid/os/strictmode/Violation; HSPLandroid/os/StrictMode$ViolationInfo;-><init>(Landroid/os/Parcel;Z)V HSPLandroid/os/StrictMode$ViolationInfo;-><init>(Landroid/os/strictmode/Violation;I)V @@ -12784,7 +12776,6 @@ HSPLandroid/os/StrictMode$VmPolicy$Builder;->penaltyLog()Landroid/os/StrictMode$ HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitActivityLeaks()Landroid/os/StrictMode$VmPolicy$Builder; HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitUnsafeIntentLaunch()Landroid/os/StrictMode$VmPolicy$Builder; HSPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;Landroid/os/StrictMode$VmPolicy-IA;)V HSPLandroid/os/StrictMode;->-$$Nest$sfgetEMPTY_CLASS_LIMIT_MAP()Ljava/util/HashMap; HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOGCAT_LOGGER()Landroid/os/StrictMode$ViolationLogger; HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOG_V()Z @@ -12802,7 +12793,7 @@ HSPLandroid/os/StrictMode;->allowThreadDiskWritesMask()I HSPLandroid/os/StrictMode;->allowVmViolations()Landroid/os/StrictMode$VmPolicy; HSPLandroid/os/StrictMode;->assertConfigurationContext(Landroid/content/Context;Ljava/lang/String;)V HSPLandroid/os/StrictMode;->clampViolationTimeMap(Landroid/util/SparseLongArray;J)V -HSPLandroid/os/StrictMode;->clearGatheredViolations()V+]Ljava/lang/ThreadLocal;Landroid/os/StrictMode$1; +HSPLandroid/os/StrictMode;->clearGatheredViolations()V HSPLandroid/os/StrictMode;->decrementExpectedActivityCount(Ljava/lang/Class;)V HSPLandroid/os/StrictMode;->dropboxViolationAsync(ILandroid/os/StrictMode$ViolationInfo;)V HSPLandroid/os/StrictMode;->enterCriticalSpan(Ljava/lang/String;)Landroid/os/StrictMode$Span; @@ -12849,7 +12840,6 @@ HSPLandroid/os/SystemConfigManager;-><init>()V HSPLandroid/os/SystemConfigManager;->getDisabledUntilUsedPreinstalledCarrierApps()Ljava/util/Set; HSPLandroid/os/SystemConfigManager;->getDisabledUntilUsedPreinstalledCarrierAssociatedAppEntries()Ljava/util/Map; HSPLandroid/os/SystemProperties$Handle;-><init>(J)V -HSPLandroid/os/SystemProperties$Handle;-><init>(JLandroid/os/SystemProperties$Handle-IA;)V HSPLandroid/os/SystemProperties$Handle;->getLong(J)J HSPLandroid/os/SystemProperties;->-$$Nest$smnative_get_long(JJ)J HSPLandroid/os/SystemProperties;->addChangeCallback(Ljava/lang/Runnable;)V @@ -12880,18 +12870,18 @@ HSPLandroid/os/Temperature;-><init>(FILjava/lang/String;I)V HSPLandroid/os/Temperature;->getStatus()I HSPLandroid/os/Temperature;->isValidStatus(I)Z HSPLandroid/os/ThreadLocalWorkSource$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLandroid/os/ThreadLocalWorkSource;->getToken()J+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/ThreadLocalWorkSource;->getUid()I+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; +HSPLandroid/os/ThreadLocalWorkSource;->getToken()J +HSPLandroid/os/ThreadLocalWorkSource;->getUid()I HSPLandroid/os/ThreadLocalWorkSource;->lambda$static$0()[I HSPLandroid/os/ThreadLocalWorkSource;->parseUidFromToken(J)I -HSPLandroid/os/ThreadLocalWorkSource;->restore(J)V+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/ThreadLocalWorkSource;->setUid(I)J+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; +HSPLandroid/os/ThreadLocalWorkSource;->restore(J)V +HSPLandroid/os/ThreadLocalWorkSource;->setUid(I)J HSPLandroid/os/Trace;->asyncTraceBegin(JLjava/lang/String;I)V HSPLandroid/os/Trace;->asyncTraceEnd(JLjava/lang/String;I)V HSPLandroid/os/Trace;->asyncTraceForTrackBegin(JLjava/lang/String;Ljava/lang/String;I)V HSPLandroid/os/Trace;->asyncTraceForTrackEnd(JLjava/lang/String;I)V HSPLandroid/os/Trace;->beginAsyncSection(Ljava/lang/String;I)V -HSPLandroid/os/Trace;->beginSection(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/os/Trace;->beginSection(Ljava/lang/String;)V HSPLandroid/os/Trace;->endAsyncSection(Ljava/lang/String;I)V HSPLandroid/os/Trace;->endSection()V HSPLandroid/os/Trace;->instant(JLjava/lang/String;)V @@ -12933,19 +12923,7 @@ HSPLandroid/os/UserHandle;->writeToParcel(Landroid/os/UserHandle;Landroid/os/Par HSPLandroid/os/UserManager$1;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Integer;)Z HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$1;->recompute(Ljava/lang/Integer;)Ljava/lang/Boolean; HSPLandroid/os/UserManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$2;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager$2;->bypass(Ljava/lang/Integer;)Z -HSPLandroid/os/UserManager$2;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$2;->recompute(Ljava/lang/Integer;)Ljava/lang/Boolean; -HSPLandroid/os/UserManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$3;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager$3;->bypass(Ljava/lang/Integer;)Z -HSPLandroid/os/UserManager$3;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$3;->recompute(Ljava/lang/Integer;)Ljava/lang/String; -HSPLandroid/os/UserManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$4;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V HSPLandroid/os/UserManager;->-$$Nest$fgetmService(Landroid/os/UserManager;)Landroid/os/IUserManager; HSPLandroid/os/UserManager;-><init>(Landroid/content/Context;Landroid/os/IUserManager;)V HSPLandroid/os/UserManager;->convertUserIdsToUserHandles([I)Ljava/util/List; @@ -13041,7 +13019,6 @@ HSPLandroid/os/WorkSource;->updateLocked(Landroid/os/WorkSource;ZZ)Z HSPLandroid/os/WorkSource;->updateUidsAndNamesLocked(Landroid/os/WorkSource;ZZ)Z HSPLandroid/os/WorkSource;->updateUidsLocked(Landroid/os/WorkSource;ZZ)Z HSPLandroid/os/WorkSource;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/connectivity/CellularBatteryStats;-><init>(JJJJJJJJJLjava/lang/Long;[J[J[JJ)V HSPLandroid/os/health/HealthStats;-><init>(Landroid/os/Parcel;)V HSPLandroid/os/health/HealthStats;->getMeasurement(I)J HSPLandroid/os/health/HealthStats;->getMeasurements(I)Ljava/util/Map; @@ -13075,7 +13052,6 @@ HSPLandroid/os/storage/IStorageManager$Stub;->asInterface(Landroid/os/IBinder;)L HSPLandroid/os/storage/StorageEventListener;-><init>()V HSPLandroid/os/storage/StorageEventListener;->onStorageStateChanged(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/os/storage/StorageManager$ObbActionListener;-><init>(Landroid/os/storage/StorageManager;)V -HSPLandroid/os/storage/StorageManager$ObbActionListener;-><init>(Landroid/os/storage/StorageManager;Landroid/os/storage/StorageManager$ObbActionListener-IA;)V HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;-><init>(Landroid/os/storage/StorageManager;Ljava/util/concurrent/Executor;Landroid/os/storage/StorageEventListener;Landroid/os/storage/StorageManager$StorageVolumeCallback;)V HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;->onStorageStateChanged(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;->onVolumeStateChanged(Landroid/os/storage/VolumeInfo;II)V @@ -13173,9 +13149,10 @@ HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getTargetSdk()I HSPLandroid/permission/PermissionManager;-><clinit>()V HSPLandroid/permission/PermissionManager;-><init>(Landroid/content/Context;)V HSPLandroid/permission/PermissionManager;->addOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V -HSPLandroid/permission/PermissionManager;->checkPermissionUncached(Ljava/lang/String;III)I+]Landroid/app/IActivityManager;Landroid/app/IActivityManager$Stub$Proxy; +HSPLandroid/permission/PermissionManager;->checkPermissionUncached(Ljava/lang/String;III)I HSPLandroid/permission/PermissionManager;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)I HSPLandroid/permission/PermissionManager;->getPermissionInfo(Ljava/lang/String;I)Landroid/content/pm/PermissionInfo; +HSPLandroid/permission/PermissionManager;->getPersistentDeviceId(I)Ljava/lang/String; HSPLandroid/permission/PermissionManager;->getSplitPermissions()Ljava/util/List; HSPLandroid/permission/PermissionManager;->removeOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V HSPLandroid/permission/PermissionManager;->splitPermissionInfoListToNonParcelableList(Ljava/util/List;)Ljava/util/List; @@ -13243,7 +13220,7 @@ HSPLandroid/provider/Settings$Global;->putString(Landroid/content/ContentResolve HSPLandroid/provider/Settings$Global;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIZ)Z HSPLandroid/provider/Settings$NameValueCache$$ExternalSyntheticLambda0;-><init>(Landroid/provider/Settings$NameValueCache;)V HSPLandroid/provider/Settings$NameValueCache;->getStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/provider/Settings$NameValueCache;->getStringsForPrefixStripPrefix(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/util/List;)Ljava/util/Map;+]Landroid/content/ContentResolver;Landroid/app/ContextImpl$ApplicationContentResolver;]Landroid/content/IContentProvider;Landroid/content/ContentProvider$Transport;,Landroid/content/ContentProviderProxy;]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/provider/Settings$ContentProviderHolder;Landroid/provider/Settings$ContentProviderHolder;]Landroid/provider/Settings$GenerationTracker;Landroid/provider/Settings$GenerationTracker;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/Arrays$ArrayItr;,Ljava/util/HashMap$EntryIterator;]Ljava/util/List;Ljava/util/Arrays$ArrayList;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; +HSPLandroid/provider/Settings$NameValueCache;->getStringsForPrefixStripPrefix(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/util/List;)Ljava/util/Map; HSPLandroid/provider/Settings$NameValueCache;->isCallerExemptFromReadableRestriction()Z HSPLandroid/provider/Settings$NameValueCache;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIZ)Z HSPLandroid/provider/Settings$NameValueTable;->getUriFor(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri; @@ -13288,6 +13265,8 @@ HSPLandroid/provider/Settings;->parseLongSettingWithDefault(Ljava/lang/String;J) HSPLandroid/provider/Telephony$Sms;->getDefaultSmsPackage(Landroid/content/Context;)Ljava/lang/String; HSPLandroid/renderscript/RenderScriptCacheDir;->setupDiskCache(Ljava/io/File;)V HSPLandroid/se/omapi/SeServiceManager;-><init>()V +HSPLandroid/security/FeatureFlagsImpl;-><init>()V +HSPLandroid/security/Flags;-><clinit>()V HSPLandroid/security/KeyChain$1;-><init>(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)V HSPLandroid/security/KeyChain$1;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V HSPLandroid/security/KeyChain$KeyChainConnection;-><init>(Landroid/content/Context;Landroid/content/ServiceConnection;Landroid/security/IKeyChainService;)V @@ -13415,10 +13394,8 @@ HSPLandroid/security/keystore/KeystoreResponse;->getErrorCode()I HSPLandroid/security/keystore/Utils;->cloneIfNotNull(Ljava/util/Date;)Ljava/util/Date; HSPLandroid/security/keystore/Utils;->cloneIfNotNull([B)[B HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;-><init>(Landroid/security/KeyStoreOperation;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;-><init>(Landroid/security/KeyStoreOperation;Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA;)V HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;->finish([B[B)[B HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationStreamer;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationStreamer;Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA;)V HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;->doFinal([BII[B)[B HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding;-><init>()V HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding;->finalize()V @@ -13874,14 +13851,11 @@ HSPLandroid/telecom/Log;->obfuscatePhoneNumber(Ljava/lang/StringBuilder;Ljava/la HSPLandroid/telecom/Log;->pii(Ljava/lang/Object;)Ljava/lang/String; HSPLandroid/telecom/Log;->piiHandle(Ljava/lang/Object;)Ljava/lang/String; HSPLandroid/telecom/Log;->v(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/telecom/Logging/Session;-><init>(Ljava/lang/String;Ljava/lang/String;JZLjava/lang/String;)V HSPLandroid/telecom/Logging/Session;->addChild(Landroid/telecom/Logging/Session;)V HSPLandroid/telecom/Logging/Session;->equals(Ljava/lang/Object;)Z HSPLandroid/telecom/Logging/Session;->getChildSessions()Ljava/util/ArrayList; HSPLandroid/telecom/Logging/Session;->getExecutionStartTimeMilliseconds()J -HSPLandroid/telecom/Logging/Session;->getFullMethodPath(Ljava/lang/StringBuilder;ZI)V HSPLandroid/telecom/Logging/Session;->getFullMethodPath(Z)Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->getFullSessionId(I)Ljava/lang/String; HSPLandroid/telecom/Logging/Session;->getLocalExecutionTime()J HSPLandroid/telecom/Logging/Session;->getNextChildId()Ljava/lang/String; HSPLandroid/telecom/Logging/Session;->getOwnerInfo()Ljava/lang/String; @@ -13894,7 +13868,6 @@ HSPLandroid/telecom/Logging/Session;->markSessionCompleted(J)V HSPLandroid/telecom/Logging/Session;->removeChild(Landroid/telecom/Logging/Session;)V HSPLandroid/telecom/Logging/Session;->setExecutionStartTimeMs(J)V HSPLandroid/telecom/Logging/Session;->setParentSession(Landroid/telecom/Logging/Session;)V -HSPLandroid/telecom/Logging/Session;->setSessionId(Ljava/lang/String;)V HSPLandroid/telecom/Logging/Session;->setShortMethodName(Ljava/lang/String;)V HSPLandroid/telecom/Logging/Session;->toString()Ljava/lang/String; HSPLandroid/telecom/Logging/SessionManager;-><init>()V @@ -13902,7 +13875,6 @@ HSPLandroid/telecom/Logging/SessionManager;->cleanupStaleSessions(J)V HSPLandroid/telecom/Logging/SessionManager;->continueSession(Landroid/telecom/Logging/Session;Ljava/lang/String;)V HSPLandroid/telecom/Logging/SessionManager;->createSubsession()Landroid/telecom/Logging/Session; HSPLandroid/telecom/Logging/SessionManager;->createSubsession(Z)Landroid/telecom/Logging/Session; -HSPLandroid/telecom/Logging/SessionManager;->endParentSessions(Landroid/telecom/Logging/Session;)V HSPLandroid/telecom/Logging/SessionManager;->endSession()V HSPLandroid/telecom/Logging/SessionManager;->getSessionId()Ljava/lang/String; HSPLandroid/telecom/Logging/SessionManager;->resetStaleSessionTimer()V @@ -14059,7 +14031,6 @@ HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->set HSPLandroid/telephony/LocationAccessPolicy;->checkAppLocationPermissionHelper(Landroid/content/Context;Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery;Ljava/lang/String;)Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; HSPLandroid/telephony/LocationAccessPolicy;->checkLocationPermission(Landroid/content/Context;Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery;)Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; HSPLandroid/telephony/LocationAccessPolicy;->getAppOpsString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/LocationAccessPolicy;->isAppAtLeastSdkVersion(Landroid/content/Context;Ljava/lang/String;I)Z HSPLandroid/telephony/LocationAccessPolicy;->isCurrentProfile(Landroid/content/Context;I)Z HSPLandroid/telephony/LteVopsSupportInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/LteVopsSupportInfo; HSPLandroid/telephony/LteVopsSupportInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -14175,7 +14146,7 @@ HSPLandroid/telephony/SignalStrength;->getCellSignalStrengths(Ljava/lang/Class;) HSPLandroid/telephony/SignalStrength;->getLevel()I HSPLandroid/telephony/SignalStrength;->getPrimary()Landroid/telephony/CellSignalStrength; HSPLandroid/telephony/SignalStrength;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/SubscriptionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/SubscriptionInfo;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/text/TextUtils$1;]Landroid/telephony/SubscriptionInfo$Builder;Landroid/telephony/SubscriptionInfo$Builder; +HSPLandroid/telephony/SubscriptionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/SubscriptionInfo; HSPLandroid/telephony/SubscriptionInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmAreUiccApplicationsEnabled(Landroid/telephony/SubscriptionInfo$Builder;)Z HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCardId(Landroid/telephony/SubscriptionInfo$Builder;)I @@ -14258,6 +14229,8 @@ HSPLandroid/telephony/SubscriptionInfo;->getSubscriptionId()I HSPLandroid/telephony/SubscriptionInfo;->isEmbedded()Z HSPLandroid/telephony/SubscriptionInfo;->isOpportunistic()Z HSPLandroid/telephony/SubscriptionInfo;->toString()Ljava/lang/String; +HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda10;->applyOrThrow(Ljava/lang/Object;)Ljava/lang/Object; +HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda15;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda9;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->query(Ljava/lang/Integer;)Ljava/lang/Object; HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->recompute(Ljava/lang/Integer;)Ljava/lang/Object; @@ -14480,7 +14453,7 @@ HSPLandroid/telephony/data/ApnSetting;->getApnName()Ljava/lang/String; HSPLandroid/telephony/data/ApnSetting;->getApnTypeBitmask()I HSPLandroid/telephony/data/ApnSetting;->getApnTypesStringFromBitmask(I)Ljava/lang/String; HSPLandroid/telephony/data/ApnSetting;->portToString(I)Ljava/lang/String; -HSPLandroid/telephony/data/ApnSetting;->toString()Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Map;Landroid/util/ArrayMap; +HSPLandroid/telephony/data/ApnSetting;->toString()Ljava/lang/String; HSPLandroid/telephony/euicc/EuiccManager;->getIEuiccController()Lcom/android/internal/telephony/euicc/IEuiccController; HSPLandroid/telephony/euicc/EuiccManager;->isEnabled()Z HSPLandroid/telephony/ims/ImsMmTelManager;->createForSubscriptionId(I)Landroid/telephony/ims/ImsMmTelManager; @@ -14529,7 +14502,7 @@ HSPLandroid/text/BidiFormatter;->markBefore(Ljava/lang/CharSequence;Landroid/tex HSPLandroid/text/BidiFormatter;->unicodeWrap(Ljava/lang/CharSequence;Landroid/text/TextDirectionHeuristic;Z)Ljava/lang/CharSequence; HSPLandroid/text/BoringLayout$Metrics;->-$$Nest$mreset(Landroid/text/BoringLayout$Metrics;)V HSPLandroid/text/BoringLayout$Metrics;-><init>()V -HSPLandroid/text/BoringLayout$Metrics;->reset()V+]Landroid/graphics/RectF;Landroid/graphics/RectF; +HSPLandroid/text/BoringLayout$Metrics;->reset()V HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)V HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)V HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;IZ)V @@ -14544,13 +14517,14 @@ HSPLandroid/text/BoringLayout;->getLineCount()I HSPLandroid/text/BoringLayout;->getLineDescent(I)I HSPLandroid/text/BoringLayout;->getLineDirections(I)Landroid/text/Layout$Directions; HSPLandroid/text/BoringLayout;->getLineMax(I)F -HSPLandroid/text/BoringLayout;->getLineStart(I)I+]Landroid/text/BoringLayout;Landroid/text/BoringLayout;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/text/BoringLayout;->getLineStart(I)I HSPLandroid/text/BoringLayout;->getLineTop(I)I HSPLandroid/text/BoringLayout;->getLineWidth(I)F HSPLandroid/text/BoringLayout;->getParagraphDirection(I)I HSPLandroid/text/BoringLayout;->hasAnyInterestingChars(Ljava/lang/CharSequence;I)Z -HSPLandroid/text/BoringLayout;->init(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/Layout$Alignment;Landroid/text/BoringLayout$Metrics;ZZZ)V+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/text/BoringLayout;->init(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/Layout$Alignment;Landroid/text/BoringLayout$Metrics;ZZZ)V HSPLandroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;Landroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics; +HSPLandroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;ZLandroid/graphics/Paint$FontMetrics;Landroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics;+]Landroid/text/BoringLayout$Metrics;Landroid/text/BoringLayout$Metrics;]Landroid/text/Spanned;Landroid/text/PrecomputedText;,Landroid/text/SpannableString;,Landroid/text/SpannableStringBuilder;,Landroid/text/SpannedString;,Landroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;]Landroid/text/TextDirectionHeuristic;Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal;,Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicLocale;]Landroid/text/TextLine;Landroid/text/TextLine;]Ljava/lang/CharSequence;megamorphic_types HSPLandroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;ZLandroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics; HSPLandroid/text/BoringLayout;->isFallbackLineSpacingEnabled()Z HSPLandroid/text/BoringLayout;->make(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)Landroid/text/BoringLayout; @@ -14610,7 +14584,7 @@ HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;)Landroid/text/Spanned; HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;I)Landroid/text/Spanned; HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;ILandroid/text/Html$ImageGetter;Landroid/text/Html$TagHandler;)Landroid/text/Spanned; HSPLandroid/text/HtmlToSpannedConverter;-><init>(Ljava/lang/String;Landroid/text/Html$ImageGetter;Landroid/text/Html$TagHandler;Lorg/ccil/cowan/tagsoup/Parser;I)V -HSPLandroid/text/HtmlToSpannedConverter;->characters([CII)V+]Landroid/text/SpannableStringBuilder;Landroid/text/SpannableStringBuilder;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/text/HtmlToSpannedConverter;->characters([CII)V HSPLandroid/text/HtmlToSpannedConverter;->convert()Landroid/text/Spanned; HSPLandroid/text/HtmlToSpannedConverter;->end(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V HSPLandroid/text/HtmlToSpannedConverter;->endA(Landroid/text/Editable;)V @@ -14619,8 +14593,8 @@ HSPLandroid/text/HtmlToSpannedConverter;->endElement(Ljava/lang/String;Ljava/lan HSPLandroid/text/HtmlToSpannedConverter;->endPrefixMapping(Ljava/lang/String;)V HSPLandroid/text/HtmlToSpannedConverter;->getLast(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object; HSPLandroid/text/HtmlToSpannedConverter;->handleBr(Landroid/text/Editable;)V -HSPLandroid/text/HtmlToSpannedConverter;->handleEndTag(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/text/HtmlToSpannedConverter;->handleStartTag(Ljava/lang/String;Lorg/xml/sax/Attributes;)V+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/text/HtmlToSpannedConverter;->handleEndTag(Ljava/lang/String;)V +HSPLandroid/text/HtmlToSpannedConverter;->handleStartTag(Ljava/lang/String;Lorg/xml/sax/Attributes;)V HSPLandroid/text/HtmlToSpannedConverter;->setDocumentLocator(Lorg/xml/sax/Locator;)V HSPLandroid/text/HtmlToSpannedConverter;->setSpanFromMark(Landroid/text/Spannable;Ljava/lang/Object;[Ljava/lang/Object;)V HSPLandroid/text/HtmlToSpannedConverter;->start(Landroid/text/Editable;Ljava/lang/Object;)V @@ -14638,7 +14612,7 @@ HSPLandroid/text/Layout$Directions;->getRunStart(I)I HSPLandroid/text/Layout$Directions;->isRunRtl(I)Z HSPLandroid/text/Layout$Ellipsizer;-><init>(Ljava/lang/CharSequence;)V HSPLandroid/text/Layout$Ellipsizer;->charAt(I)C -HSPLandroid/text/Layout$Ellipsizer;->getChars(II[CI)V+]Landroid/text/Layout;Landroid/text/StaticLayout; +HSPLandroid/text/Layout$Ellipsizer;->getChars(II[CI)V HSPLandroid/text/Layout$Ellipsizer;->length()I HSPLandroid/text/Layout$HorizontalMeasurementProvider;->init()V HSPLandroid/text/Layout$SpannedEllipsizer;->getSpanEnd(Ljava/lang/Object;)I @@ -14647,12 +14621,13 @@ HSPLandroid/text/Layout$SpannedEllipsizer;->getSpanStart(Ljava/lang/Object;)I HSPLandroid/text/Layout$SpannedEllipsizer;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; HSPLandroid/text/Layout$SpannedEllipsizer;->nextSpanTransition(IILjava/lang/Class;)I HSPLandroid/text/Layout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V +HSPLandroid/text/Layout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FFZZILandroid/text/TextUtils$TruncateAt;III[I[IILandroid/graphics/text/LineBreakConfig;ZZLandroid/graphics/Paint$FontMetrics;)V HSPLandroid/text/Layout;->addSelection(IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;)V HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;I)V HSPLandroid/text/Layout;->drawBackground(Landroid/graphics/Canvas;II)V -HSPLandroid/text/Layout;->drawText(Landroid/graphics/Canvas;II)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/Spanned;Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString;]Landroid/text/TextLine;Landroid/text/TextLine;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Ljava/lang/CharSequence;Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString; +HSPLandroid/text/Layout;->drawText(Landroid/graphics/Canvas;II)V HSPLandroid/text/Layout;->drawWithoutText(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;III)V HSPLandroid/text/Layout;->ellipsize(III[CILandroid/text/TextUtils$TruncateAt;)V HSPLandroid/text/Layout;->getCursorPath(ILandroid/graphics/Path;Ljava/lang/CharSequence;)V @@ -14664,17 +14639,17 @@ HSPLandroid/text/Layout;->getHeight(Z)I HSPLandroid/text/Layout;->getHorizontal(IZ)F HSPLandroid/text/Layout;->getHorizontal(IZIZ)F HSPLandroid/text/Layout;->getIndentAdjust(ILandroid/text/Layout$Alignment;)I -HSPLandroid/text/Layout;->getLineBaseline(I)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout; +HSPLandroid/text/Layout;->getLineBaseline(I)I HSPLandroid/text/Layout;->getLineBottom(I)I HSPLandroid/text/Layout;->getLineBottom(IZ)I HSPLandroid/text/Layout;->getLineEnd(I)I -HSPLandroid/text/Layout;->getLineExtent(ILandroid/text/Layout$TabStops;Z)F+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/TextLine;Landroid/text/TextLine;]Landroid/text/TextPaint;Landroid/text/TextPaint; +HSPLandroid/text/Layout;->getLineExtent(ILandroid/text/Layout$TabStops;Z)F HSPLandroid/text/Layout;->getLineExtent(IZ)F -HSPLandroid/text/Layout;->getLineForOffset(I)I+]Landroid/text/Layout;Landroid/text/StaticLayout; -HSPLandroid/text/Layout;->getLineForVertical(I)I+]Landroid/text/Layout;Landroid/text/BoringLayout; +HSPLandroid/text/Layout;->getLineForOffset(I)I +HSPLandroid/text/Layout;->getLineForVertical(I)I HSPLandroid/text/Layout;->getLineLeft(I)F HSPLandroid/text/Layout;->getLineMax(I)F -HSPLandroid/text/Layout;->getLineRangeForDraw(Landroid/graphics/Canvas;)J+]Landroid/graphics/Canvas;missing_types]Landroid/text/Layout;Landroid/text/StaticLayout; +HSPLandroid/text/Layout;->getLineRangeForDraw(Landroid/graphics/Canvas;)J HSPLandroid/text/Layout;->getLineRight(I)F HSPLandroid/text/Layout;->getLineStartPos(III)I HSPLandroid/text/Layout;->getLineVisibleEnd(I)I @@ -14706,7 +14681,8 @@ HSPLandroid/text/Layout;->primaryIsTrailingPrevious(I)Z HSPLandroid/text/Layout;->replaceWith(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V HSPLandroid/text/Layout;->shouldClampCursor(I)Z HSPLandroid/text/MeasuredParagraph;-><init>()V -HSPLandroid/text/MeasuredParagraph;->applyMetricsAffectingSpan(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;[Landroid/text/style/MetricAffectingSpan;[Landroid/text/style/LineBreakConfigSpan;IILandroid/graphics/text/MeasuredText$Builder;Landroid/text/MeasuredParagraph$StyleRunCallback;)V+]Landroid/graphics/text/LineBreakConfig$Builder;Landroid/graphics/text/LineBreakConfig$Builder;]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/text/style/MetricAffectingSpan;missing_types +HSPLandroid/text/MeasuredParagraph;->applyMetricsAffectingSpan(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;[Landroid/text/style/MetricAffectingSpan;[Landroid/text/style/LineBreakConfigSpan;IILandroid/graphics/text/MeasuredText$Builder;Landroid/text/MeasuredParagraph$StyleRunCallback;)V +HSPLandroid/text/MeasuredParagraph;->applyStyleRun(IILandroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;Landroid/graphics/text/MeasuredText$Builder;Landroid/text/MeasuredParagraph$StyleRunCallback;)V+]Landroid/text/AutoGrowArray$ByteArray;Landroid/text/AutoGrowArray$ByteArray;]Landroid/text/AutoGrowArray$FloatArray;Landroid/text/AutoGrowArray$FloatArray;]Landroid/text/TextPaint;Landroid/text/TextPaint; HSPLandroid/text/MeasuredParagraph;->breakText(IZF)I HSPLandroid/text/MeasuredParagraph;->buildForBidi(Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph; HSPLandroid/text/MeasuredParagraph;->buildForMeasurement(Landroid/text/TextPaint;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph; @@ -14902,8 +14878,9 @@ HSPLandroid/text/StaticLayout$Builder;->setLineSpacing(FF)Landroid/text/StaticLa HSPLandroid/text/StaticLayout$Builder;->setMaxLines(I)Landroid/text/StaticLayout$Builder; HSPLandroid/text/StaticLayout$Builder;->setTextDirection(Landroid/text/TextDirectionHeuristic;)Landroid/text/StaticLayout$Builder; HSPLandroid/text/StaticLayout$Builder;->setUseLineSpacingFromFallbacks(Z)Landroid/text/StaticLayout$Builder; +HSPLandroid/text/StaticLayout;-><init>(Landroid/text/StaticLayout$Builder;ZI)V+]Landroid/text/StaticLayout;Landroid/text/StaticLayout; HSPLandroid/text/StaticLayout;->calculateEllipsis(IILandroid/text/MeasuredParagraph;IFLandroid/text/TextUtils$TruncateAt;IFLandroid/text/TextPaint;Z)V -HSPLandroid/text/StaticLayout;->generate(Landroid/text/StaticLayout$Builder;ZZ)V+]Landroid/graphics/text/LineBreaker$Builder;Landroid/graphics/text/LineBreaker$Builder;]Landroid/graphics/text/LineBreaker$ParagraphConstraints;Landroid/graphics/text/LineBreaker$ParagraphConstraints;]Landroid/graphics/text/LineBreaker$Result;Landroid/graphics/text/LineBreaker$Result;]Landroid/graphics/text/LineBreaker;Landroid/graphics/text/LineBreaker;]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/text/StaticLayout;->generate(Landroid/text/StaticLayout$Builder;ZZ)V HSPLandroid/text/StaticLayout;->getBottomPadding()I HSPLandroid/text/StaticLayout;->getEllipsisCount(I)I HSPLandroid/text/StaticLayout;->getEllipsisStart(I)I @@ -14927,13 +14904,14 @@ HSPLandroid/text/StaticLayout;->packHyphenEdit(II)I HSPLandroid/text/StaticLayout;->unpackEndHyphenEdit(I)I HSPLandroid/text/StaticLayout;->unpackStartHyphenEdit(I)I HSPLandroid/text/TextDirectionHeuristics$FirstStrong;->checkRtl(Ljava/lang/CharSequence;II)I -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->doCheck(Ljava/lang/CharSequence;II)Z+]Landroid/text/TextDirectionHeuristics$TextDirectionAlgorithm;Landroid/text/TextDirectionHeuristics$FirstStrong;]Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal; +HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->doCheck(Ljava/lang/CharSequence;II)Z HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->isRtl(Ljava/lang/CharSequence;II)Z HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->isRtl([CII)Z HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal;->defaultIsRtl()Z HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicLocale;->defaultIsRtl()Z HSPLandroid/text/TextDirectionHeuristics;->isRtlCodePoint(I)I -HSPLandroid/text/TextFlags;->getKeyForFlag(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/text/TextFlags;->getKeyForFlag(Ljava/lang/String;)Ljava/lang/String; +HSPLandroid/text/TextFlags;->isFeatureEnabled(Ljava/lang/String;)Z HSPLandroid/text/TextLine$DecorationInfo;-><init>()V HSPLandroid/text/TextLine$DecorationInfo;->copyInfo()Landroid/text/TextLine$DecorationInfo; HSPLandroid/text/TextLine$DecorationInfo;->hasDecoration()Z @@ -14944,15 +14922,19 @@ HSPLandroid/text/TextLine;->draw(Landroid/graphics/Canvas;FIII)V HSPLandroid/text/TextLine;->drawStroke(Landroid/text/TextPaint;Landroid/graphics/Canvas;IFFFFF)V HSPLandroid/text/TextLine;->drawTextRun(Landroid/graphics/Canvas;Landroid/text/TextPaint;IIIIZFI)V HSPLandroid/text/TextLine;->equalAttributes(Landroid/text/TextPaint;Landroid/text/TextPaint;)Z -HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/graphics/Paint$FontMetricsInt;Landroid/text/TextPaint;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/text/TextPaint;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/TextLine;->extractDecorationInfo(Landroid/text/TextPaint;Landroid/text/TextLine$DecorationInfo;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; +HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/graphics/Paint$FontMetricsInt;Landroid/text/TextPaint;)V +HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/text/TextPaint;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V +HSPLandroid/text/TextLine;->extractDecorationInfo(Landroid/text/TextPaint;Landroid/text/TextLine$DecorationInfo;)V HSPLandroid/text/TextLine;->getOffsetBeforeAfter(IIIZIZ)I HSPLandroid/text/TextLine;->getOffsetToLeftRightOf(IZ)I +HSPLandroid/text/TextLine;->getRunAdvance(Landroid/text/TextPaint;IIIIZI[FILandroid/graphics/RectF;Landroid/text/TextLine$LineInfo;)F+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/text/PrecomputedText;Landroid/text/PrecomputedText;]Landroid/text/TextPaint;Landroid/text/TextPaint; HSPLandroid/text/TextLine;->handleReplacement(Landroid/text/style/ReplacementSpan;Landroid/text/TextPaint;IIZLandroid/graphics/Canvas;FIIILandroid/graphics/Paint$FontMetricsInt;Z)F +HSPLandroid/text/TextLine;->handleRun(IIIZLandroid/graphics/Canvas;Landroid/text/TextShaper$GlyphsConsumer;FIIILandroid/graphics/Paint$FontMetricsInt;Landroid/graphics/RectF;Z[FILandroid/text/TextLine$LineInfo;I)F+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/text/SpanSet;Landroid/text/SpanSet;]Landroid/text/TextPaint;missing_types]Landroid/text/style/CharacterStyle;missing_types]Landroid/text/style/MetricAffectingSpan;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/text/TextLine;->handleText(Landroid/text/TextPaint;IIIIZLandroid/graphics/Canvas;Landroid/text/TextShaper$GlyphsConsumer;FIIILandroid/graphics/Paint$FontMetricsInt;Landroid/graphics/RectF;ZILjava/util/ArrayList;[FILandroid/text/TextLine$LineInfo;I)F+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLandroid/text/TextLine;->isLineEndSpace(C)Z +HSPLandroid/text/TextLine;->measure(IZLandroid/graphics/Paint$FontMetricsInt;Landroid/graphics/RectF;Landroid/text/TextLine$LineInfo;)F+]Landroid/text/Layout$Directions;Landroid/text/Layout$Directions; HSPLandroid/text/TextLine;->obtain()Landroid/text/TextLine; -HSPLandroid/text/TextLine;->recycle(Landroid/text/TextLine;)Landroid/text/TextLine;+]Landroid/text/SpanSet;Landroid/text/SpanSet; +HSPLandroid/text/TextLine;->recycle(Landroid/text/TextLine;)Landroid/text/TextLine; HSPLandroid/text/TextLine;->set(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;IIZ)V HSPLandroid/text/TextLine;->updateMetrics(Landroid/graphics/Paint$FontMetricsInt;IIIII)V HSPLandroid/text/TextPaint;-><init>()V @@ -14980,9 +14962,9 @@ HSPLandroid/text/TextUtils;->ellipsize(Ljava/lang/CharSequence;Landroid/text/Tex HSPLandroid/text/TextUtils;->emptyIfNull(Ljava/lang/String;)Ljava/lang/String; HSPLandroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z HSPLandroid/text/TextUtils;->expandTemplate(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->formatSimple(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/text/TextUtils;->formatSimple(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; HSPLandroid/text/TextUtils;->getCapsMode(Ljava/lang/CharSequence;II)I -HSPLandroid/text/TextUtils;->getChars(Ljava/lang/CharSequence;II[CI)V+]Landroid/text/GetChars;Landroid/text/Layout$Ellipsizer;,Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString;]Ljava/lang/Object;megamorphic_types]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/text/TextUtils;->getChars(Ljava/lang/CharSequence;II[CI)V HSPLandroid/text/TextUtils;->getEllipsisString(Landroid/text/TextUtils$TruncateAt;)Ljava/lang/String; HSPLandroid/text/TextUtils;->getLayoutDirectionFromLocale(Ljava/util/Locale;)I HSPLandroid/text/TextUtils;->getTrimmedLength(Ljava/lang/CharSequence;)I @@ -14992,7 +14974,7 @@ HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;CII)I HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)I HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;Ljava/lang/CharSequence;II)I HSPLandroid/text/TextUtils;->isDigitsOnly(Ljava/lang/CharSequence;)Z -HSPLandroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z+]Ljava/lang/CharSequence;Landroid/text/SpannableStringBuilder;,Ljava/lang/String; +HSPLandroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z HSPLandroid/text/TextUtils;->isGraphic(Ljava/lang/CharSequence;)Z HSPLandroid/text/TextUtils;->join(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String; HSPLandroid/text/TextUtils;->join(Ljava/lang/CharSequence;[Ljava/lang/Object;)Ljava/lang/String; @@ -15206,7 +15188,7 @@ HSPLandroid/transition/Transition$2;->onAnimationEnd(Landroid/animation/Animator HSPLandroid/transition/Transition$2;->onAnimationStart(Landroid/animation/Animator;)V HSPLandroid/transition/Transition$3;->onAnimationEnd(Landroid/animation/Animator;)V HSPLandroid/transition/Transition;-><init>()V -HSPLandroid/transition/Transition;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;megamorphic_types +HSPLandroid/transition/Transition;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/transition/Transition;->addListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/Transition; HSPLandroid/transition/Transition;->addTarget(Landroid/view/View;)Landroid/transition/Transition; HSPLandroid/transition/Transition;->addUnmatched(Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V @@ -15237,7 +15219,7 @@ HSPLandroid/transition/Transition;->setEpicenterCallback(Landroid/transition/Tra HSPLandroid/transition/Transition;->start()V HSPLandroid/transition/TransitionInflater;-><init>(Landroid/content/Context;)V HSPLandroid/transition/TransitionInflater;->createCustom(Landroid/util/AttributeSet;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/transition/TransitionInflater;->createTransitionFromXml(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/transition/Transition;)Landroid/transition/Transition;+]Landroid/transition/TransitionSet;Landroid/transition/TransitionSet;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/transition/TransitionInflater;->createTransitionFromXml(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/transition/Transition;)Landroid/transition/Transition; HSPLandroid/transition/TransitionInflater;->from(Landroid/content/Context;)Landroid/transition/TransitionInflater; HSPLandroid/transition/TransitionInflater;->inflateTransition(I)Landroid/transition/Transition; HSPLandroid/transition/TransitionListenerAdapter;-><init>()V @@ -15300,7 +15282,7 @@ HSPLandroid/util/ArrayMap;-><init>(I)V HSPLandroid/util/ArrayMap;-><init>(IZ)V HSPLandroid/util/ArrayMap;-><init>(Landroid/util/ArrayMap;)V HSPLandroid/util/ArrayMap;->allocArrays(I)V -HSPLandroid/util/ArrayMap;->append(Ljava/lang/Object;Ljava/lang/Object;)V+]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/util/ArrayMap;->append(Ljava/lang/Object;Ljava/lang/Object;)V HSPLandroid/util/ArrayMap;->binarySearchHashes([III)I HSPLandroid/util/ArrayMap;->clear()V HSPLandroid/util/ArrayMap;->containsKey(Ljava/lang/Object;)Z @@ -15309,18 +15291,18 @@ HSPLandroid/util/ArrayMap;->ensureCapacity(I)V HSPLandroid/util/ArrayMap;->entrySet()Ljava/util/Set; HSPLandroid/util/ArrayMap;->equals(Ljava/lang/Object;)Z HSPLandroid/util/ArrayMap;->freeArrays([I[Ljava/lang/Object;I)V -HSPLandroid/util/ArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/util/ArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/util/ArrayMap;->getCollection()Landroid/util/MapCollections; HSPLandroid/util/ArrayMap;->hashCode()I -HSPLandroid/util/ArrayMap;->indexOf(Ljava/lang/Object;I)I+]Ljava/lang/Object;megamorphic_types -HSPLandroid/util/ArrayMap;->indexOfKey(Ljava/lang/Object;)I+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Object;megamorphic_types +HSPLandroid/util/ArrayMap;->indexOf(Ljava/lang/Object;I)I +HSPLandroid/util/ArrayMap;->indexOfKey(Ljava/lang/Object;)I HSPLandroid/util/ArrayMap;->indexOfNull()I HSPLandroid/util/ArrayMap;->indexOfValue(Ljava/lang/Object;)I HSPLandroid/util/ArrayMap;->isEmpty()Z HSPLandroid/util/ArrayMap;->keyAt(I)Ljava/lang/Object; HSPLandroid/util/ArrayMap;->keySet()Ljava/util/Set; -HSPLandroid/util/ArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Object;megamorphic_types -HSPLandroid/util/ArrayMap;->putAll(Landroid/util/ArrayMap;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLandroid/util/ArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +HSPLandroid/util/ArrayMap;->putAll(Landroid/util/ArrayMap;)V HSPLandroid/util/ArrayMap;->putAll(Ljava/util/Map;)V HSPLandroid/util/ArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; HSPLandroid/util/ArrayMap;->removeAt(I)Ljava/lang/Object; @@ -15345,7 +15327,7 @@ HSPLandroid/util/ArraySet;->add(Ljava/lang/Object;)Z HSPLandroid/util/ArraySet;->addAll(Landroid/util/ArraySet;)V HSPLandroid/util/ArraySet;->addAll(Ljava/util/Collection;)Z HSPLandroid/util/ArraySet;->allocArrays(I)V -HSPLandroid/util/ArraySet;->append(Ljava/lang/Object;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/Object;Landroid/app/PendingIntent;,Lcom/android/org/conscrypt/OpenSSLRSAPublicKey; +HSPLandroid/util/ArraySet;->append(Ljava/lang/Object;)V HSPLandroid/util/ArraySet;->binarySearch([II)I HSPLandroid/util/ArraySet;->clear()V HSPLandroid/util/ArraySet;->contains(Ljava/lang/Object;)Z @@ -15383,11 +15365,11 @@ HSPLandroid/util/Base64$Decoder;-><init>(I[B)V HSPLandroid/util/Base64$Decoder;->process([BIIZ)Z HSPLandroid/util/Base64$Encoder;-><init>(I[B)V HSPLandroid/util/Base64$Encoder;->process([BIIZ)Z -HSPLandroid/util/Base64;->decode(Ljava/lang/String;I)[B+]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/util/Base64;->decode(Ljava/lang/String;I)[B HSPLandroid/util/Base64;->decode([BI)[B -HSPLandroid/util/Base64;->decode([BIII)[B+]Landroid/util/Base64$Decoder;Landroid/util/Base64$Decoder; +HSPLandroid/util/Base64;->decode([BIII)[B HSPLandroid/util/Base64;->encode([BI)[B -HSPLandroid/util/Base64;->encode([BIII)[B+]Landroid/util/Base64$Encoder;Landroid/util/Base64$Encoder; +HSPLandroid/util/Base64;->encode([BIII)[B HSPLandroid/util/Base64;->encodeToString([BI)Ljava/lang/String; HSPLandroid/util/Base64;->encodeToString([BIII)Ljava/lang/String; HSPLandroid/util/CloseGuard;-><init>()V @@ -15431,7 +15413,7 @@ HSPLandroid/util/IndentingPrintWriter;->write(Ljava/lang/String;II)V HSPLandroid/util/IndentingPrintWriter;->write([CII)V HSPLandroid/util/IntArray;-><init>()V HSPLandroid/util/IntArray;-><init>(I)V -HSPLandroid/util/IntArray;->add(I)V+]Landroid/util/IntArray;Landroid/util/IntArray; +HSPLandroid/util/IntArray;->add(I)V HSPLandroid/util/IntArray;->add(II)V HSPLandroid/util/IntArray;->addAll(Landroid/util/IntArray;)V HSPLandroid/util/IntArray;->binarySearch(I)I @@ -15540,7 +15522,7 @@ HSPLandroid/util/LongSparseArray;->append(JLjava/lang/Object;)V HSPLandroid/util/LongSparseArray;->clear()V HSPLandroid/util/LongSparseArray;->delete(J)V HSPLandroid/util/LongSparseArray;->gc()V -HSPLandroid/util/LongSparseArray;->get(J)Ljava/lang/Object;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; +HSPLandroid/util/LongSparseArray;->get(J)Ljava/lang/Object; HSPLandroid/util/LongSparseArray;->get(JLjava/lang/Object;)Ljava/lang/Object; HSPLandroid/util/LongSparseArray;->indexOfKey(J)I HSPLandroid/util/LongSparseArray;->keyAt(I)J @@ -15695,20 +15677,20 @@ HSPLandroid/util/Slog;->v(Ljava/lang/String;Ljava/lang/String;)I HSPLandroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I HSPLandroid/util/SparseArray;-><init>()V HSPLandroid/util/SparseArray;-><init>(I)V -HSPLandroid/util/SparseArray;->append(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/util/SparseArray;->append(ILjava/lang/Object;)V HSPLandroid/util/SparseArray;->clear()V HSPLandroid/util/SparseArray;->clone()Landroid/util/SparseArray; HSPLandroid/util/SparseArray;->contains(I)Z -HSPLandroid/util/SparseArray;->contentEquals(Landroid/util/SparseArray;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/util/SparseArray;->contentEquals(Landroid/util/SparseArray;)Z HSPLandroid/util/SparseArray;->delete(I)V HSPLandroid/util/SparseArray;->gc()V -HSPLandroid/util/SparseArray;->get(I)Ljava/lang/Object;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/util/SparseArray;->get(I)Ljava/lang/Object; HSPLandroid/util/SparseArray;->get(ILjava/lang/Object;)Ljava/lang/Object; HSPLandroid/util/SparseArray;->indexOfKey(I)I HSPLandroid/util/SparseArray;->indexOfValue(Ljava/lang/Object;)I HSPLandroid/util/SparseArray;->keyAt(I)I HSPLandroid/util/SparseArray;->put(ILjava/lang/Object;)V -HSPLandroid/util/SparseArray;->remove(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/util/SparseArray;->remove(I)V HSPLandroid/util/SparseArray;->removeAt(I)V HSPLandroid/util/SparseArray;->removeReturnOld(I)Ljava/lang/Object; HSPLandroid/util/SparseArray;->setValueAt(ILjava/lang/Object;)V @@ -15739,7 +15721,7 @@ HSPLandroid/util/SparseIntArray;->clear()V HSPLandroid/util/SparseIntArray;->clone()Landroid/util/SparseIntArray; HSPLandroid/util/SparseIntArray;->copyKeys()[I HSPLandroid/util/SparseIntArray;->delete(I)V -HSPLandroid/util/SparseIntArray;->get(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLandroid/util/SparseIntArray;->get(I)I HSPLandroid/util/SparseIntArray;->get(II)I HSPLandroid/util/SparseIntArray;->indexOfKey(I)I HSPLandroid/util/SparseIntArray;->indexOfValue(I)I @@ -15874,20 +15856,18 @@ HSPLandroid/view/AbsSavedState$2;->createFromParcel(Landroid/os/Parcel;Ljava/lan HSPLandroid/view/AbsSavedState$2;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; HSPLandroid/view/AbsSavedState;-><init>(Landroid/os/Parcelable;)V HSPLandroid/view/AbsSavedState;->getSuperState()Landroid/os/Parcelable; -HSPLandroid/view/AbsSavedState;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/view/AbsSavedState;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/Choreographer$1;->initialValue()Landroid/view/Choreographer; HSPLandroid/view/Choreographer$1;->initialValue()Ljava/lang/Object; HSPLandroid/view/Choreographer$2;->initialValue()Landroid/view/Choreographer; HSPLandroid/view/Choreographer$2;->initialValue()Ljava/lang/Object; HSPLandroid/view/Choreographer$CallbackQueue;-><init>(Landroid/view/Choreographer;)V -HSPLandroid/view/Choreographer$CallbackQueue;-><init>(Landroid/view/Choreographer;Landroid/view/Choreographer$CallbackQueue-IA;)V HSPLandroid/view/Choreographer$CallbackQueue;->addCallbackLocked(JLjava/lang/Object;Ljava/lang/Object;)V HSPLandroid/view/Choreographer$CallbackQueue;->extractDueCallbacksLocked(J)Landroid/view/Choreographer$CallbackRecord; HSPLandroid/view/Choreographer$CallbackQueue;->removeCallbacksLocked(Ljava/lang/Object;Ljava/lang/Object;)V HSPLandroid/view/Choreographer$CallbackRecord;-><init>()V -HSPLandroid/view/Choreographer$CallbackRecord;-><init>(Landroid/view/Choreographer$CallbackRecord-IA;)V -HSPLandroid/view/Choreographer$CallbackRecord;->run(J)V+]Landroid/view/Choreographer$FrameCallback;missing_types]Ljava/lang/Runnable;Landroid/view/ViewPropertyAnimator$1;,Landroid/view/ViewRootImpl$ConsumeBatchedInputRunnable;,Landroid/view/ViewRootImpl$TraversalRunnable;,Lcom/android/internal/util/function/pooled/PooledLambdaImpl; -HSPLandroid/view/Choreographer$CallbackRecord;->run(Landroid/view/Choreographer$FrameData;)V+]Landroid/view/Choreographer$CallbackRecord;Landroid/view/Choreographer$CallbackRecord;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData; +HSPLandroid/view/Choreographer$CallbackRecord;->run(J)V +HSPLandroid/view/Choreographer$CallbackRecord;->run(Landroid/view/Choreographer$FrameData;)V HSPLandroid/view/Choreographer$FrameData;->-$$Nest$fgetmFrameTimeNanos(Landroid/view/Choreographer$FrameData;)J HSPLandroid/view/Choreographer$FrameData;-><init>()V HSPLandroid/view/Choreographer$FrameData;->allocateFrameTimelines(I)V @@ -15895,13 +15875,13 @@ HSPLandroid/view/Choreographer$FrameData;->checkInCallback()V HSPLandroid/view/Choreographer$FrameData;->getFrameTimeNanos()J HSPLandroid/view/Choreographer$FrameData;->getFrameTimelines()[Landroid/view/Choreographer$FrameTimeline; HSPLandroid/view/Choreographer$FrameData;->getPreferredFrameTimeline()Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameData;->setInCallback(Z)V+]Landroid/view/Choreographer$FrameTimeline;Landroid/view/Choreographer$FrameTimeline; +HSPLandroid/view/Choreographer$FrameData;->setInCallback(Z)V HSPLandroid/view/Choreographer$FrameData;->update(JI)V -HSPLandroid/view/Choreographer$FrameData;->update(JLandroid/view/DisplayEventReceiver$VsyncEventData;)Landroid/view/Choreographer$FrameTimeline;+]Landroid/view/Choreographer$FrameTimeline;Landroid/view/Choreographer$FrameTimeline; +HSPLandroid/view/Choreographer$FrameData;->update(JLandroid/view/DisplayEventReceiver$VsyncEventData;)Landroid/view/Choreographer$FrameTimeline; HSPLandroid/view/Choreographer$FrameData;->update(JLandroid/view/DisplayEventReceiver;J)Landroid/view/Choreographer$FrameTimeline; HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;-><init>(Landroid/view/Choreographer;Landroid/os/Looper;IJ)V -HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->onVsync(JJILandroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler;]Landroid/view/DisplayEventReceiver$VsyncEventData;Landroid/view/DisplayEventReceiver$VsyncEventData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->run()V+]Landroid/view/Choreographer;Landroid/view/Choreographer; +HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->onVsync(JJILandroid/view/DisplayEventReceiver$VsyncEventData;)V +HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->run()V HSPLandroid/view/Choreographer$FrameHandler;-><init>(Landroid/view/Choreographer;Landroid/os/Looper;)V HSPLandroid/view/Choreographer$FrameHandler;->handleMessage(Landroid/os/Message;)V HSPLandroid/view/Choreographer$FrameTimeline;->-$$Nest$fgetmDeadlineNanos(Landroid/view/Choreographer$FrameTimeline;)J @@ -15918,31 +15898,31 @@ HSPLandroid/view/Choreographer;->-$$Nest$sfputmMainInstance(Landroid/view/Choreo HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;I)V HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;IJ)V HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;ILandroid/view/Choreographer-IA;)V -HSPLandroid/view/Choreographer;->doCallbacks(IJ)V+]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$CallbackRecord;Landroid/view/Choreographer$CallbackRecord;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData; -HSPLandroid/view/Choreographer;->doFrame(JILandroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/graphics/FrameInfo;Landroid/graphics/FrameInfo;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/DisplayEventReceiver$VsyncEventData;Landroid/view/DisplayEventReceiver$VsyncEventData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/view/Choreographer;->doCallbacks(IJ)V +HSPLandroid/view/Choreographer;->doFrame(JILandroid/view/DisplayEventReceiver$VsyncEventData;)V HSPLandroid/view/Choreographer;->doScheduleCallback(I)V HSPLandroid/view/Choreographer;->doScheduleVsync()V HSPLandroid/view/Choreographer;->getFrameIntervalNanos()J HSPLandroid/view/Choreographer;->getFrameTime()J HSPLandroid/view/Choreographer;->getFrameTimeNanos()J -HSPLandroid/view/Choreographer;->getInstance()Landroid/view/Choreographer;+]Ljava/lang/ThreadLocal;Landroid/view/Choreographer$1; +HSPLandroid/view/Choreographer;->getInstance()Landroid/view/Choreographer; HSPLandroid/view/Choreographer;->getMainThreadInstance()Landroid/view/Choreographer; HSPLandroid/view/Choreographer;->getRefreshRate()F HSPLandroid/view/Choreographer;->getSfInstance()Landroid/view/Choreographer; HSPLandroid/view/Choreographer;->getVsyncId()J HSPLandroid/view/Choreographer;->isRunningOnLooperThreadLocked()Z HSPLandroid/view/Choreographer;->obtainCallbackLocked(JLjava/lang/Object;Ljava/lang/Object;)Landroid/view/Choreographer$CallbackRecord; -HSPLandroid/view/Choreographer;->postCallback(ILjava/lang/Runnable;Ljava/lang/Object;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; +HSPLandroid/view/Choreographer;->postCallback(ILjava/lang/Runnable;Ljava/lang/Object;)V HSPLandroid/view/Choreographer;->postCallbackDelayed(ILjava/lang/Runnable;Ljava/lang/Object;J)V -HSPLandroid/view/Choreographer;->postCallbackDelayedInternal(ILjava/lang/Object;Ljava/lang/Object;J)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; +HSPLandroid/view/Choreographer;->postCallbackDelayedInternal(ILjava/lang/Object;Ljava/lang/Object;J)V +HSPLandroid/view/Choreographer;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V HSPLandroid/view/Choreographer;->postFrameCallbackDelayed(Landroid/view/Choreographer$FrameCallback;J)V HSPLandroid/view/Choreographer;->recycleCallbackLocked(Landroid/view/Choreographer$CallbackRecord;)V HSPLandroid/view/Choreographer;->removeCallbacks(ILjava/lang/Runnable;Ljava/lang/Object;)V -HSPLandroid/view/Choreographer;->removeCallbacksInternal(ILjava/lang/Object;Ljava/lang/Object;)V+]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; +HSPLandroid/view/Choreographer;->removeCallbacksInternal(ILjava/lang/Object;Ljava/lang/Object;)V HSPLandroid/view/Choreographer;->removeFrameCallback(Landroid/view/Choreographer$FrameCallback;)V -HSPLandroid/view/Choreographer;->scheduleFrameLocked(J)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->scheduleVsyncLocked()V+]Landroid/view/Choreographer$FrameDisplayEventReceiver;Landroid/view/Choreographer$FrameDisplayEventReceiver; +HSPLandroid/view/Choreographer;->scheduleFrameLocked(J)V +HSPLandroid/view/Choreographer;->scheduleVsyncLocked()V HSPLandroid/view/Choreographer;->setFPSDivisor(I)V HSPLandroid/view/ContextThemeWrapper;-><init>()V HSPLandroid/view/ContextThemeWrapper;-><init>(Landroid/content/Context;I)V @@ -15953,15 +15933,14 @@ HSPLandroid/view/ContextThemeWrapper;->getOverrideConfiguration()Landroid/conten HSPLandroid/view/ContextThemeWrapper;->getResources()Landroid/content/res/Resources; HSPLandroid/view/ContextThemeWrapper;->getResourcesInternal()Landroid/content/res/Resources; HSPLandroid/view/ContextThemeWrapper;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/view/ContextThemeWrapper;->getTheme()Landroid/content/res/Resources$Theme;+]Landroid/view/ContextThemeWrapper;Landroid/view/ContextThemeWrapper; -HSPLandroid/view/ContextThemeWrapper;->initializeTheme()V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ContextThemeWrapper;Landroid/view/ContextThemeWrapper; +HSPLandroid/view/ContextThemeWrapper;->getTheme()Landroid/content/res/Resources$Theme; +HSPLandroid/view/ContextThemeWrapper;->initializeTheme()V HSPLandroid/view/ContextThemeWrapper;->onApplyThemeResource(Landroid/content/res/Resources$Theme;IZ)V HSPLandroid/view/ContextThemeWrapper;->setTheme(I)V HSPLandroid/view/CrossWindowBlurListeners;-><clinit>()V HSPLandroid/view/Display$HdrCapabilities$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/Display$HdrCapabilities; HSPLandroid/view/Display$HdrCapabilities$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/Display$HdrCapabilities;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/Display$HdrCapabilities;-><init>(Landroid/os/Parcel;Landroid/view/Display$HdrCapabilities-IA;)V HSPLandroid/view/Display$HdrCapabilities;->equals(Ljava/lang/Object;)Z HSPLandroid/view/Display$HdrCapabilities;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/view/Display$HdrCapabilities;->toString()Ljava/lang/String; @@ -15972,7 +15951,6 @@ HSPLandroid/view/Display$Mode;-><init>(IIIF)V HSPLandroid/view/Display$Mode;-><init>(IIIFF[F[I)V HSPLandroid/view/Display$Mode;-><init>(IIIF[F[I)V HSPLandroid/view/Display$Mode;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/Display$Mode;-><init>(Landroid/os/Parcel;Landroid/view/Display$Mode-IA;)V HSPLandroid/view/Display$Mode;->equals(Ljava/lang/Object;)Z HSPLandroid/view/Display$Mode;->getModeId()I HSPLandroid/view/Display$Mode;->getPhysicalHeight()I @@ -15982,7 +15960,7 @@ HSPLandroid/view/Display$Mode;->matches(IIF)Z HSPLandroid/view/Display$Mode;->toString()Ljava/lang/String; HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/content/res/Resources;)V HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/view/DisplayAdjustments;)V -HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/view/DisplayAdjustments;Landroid/content/res/Resources;)V+]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/view/DisplayAdjustments;Landroid/content/res/Resources;)V HSPLandroid/view/Display;->getAppVsyncOffsetNanos()J HSPLandroid/view/Display;->getCutout()Landroid/view/DisplayCutout; HSPLandroid/view/Display;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; @@ -16014,11 +15992,10 @@ HSPLandroid/view/Display;->isWideColorGamut()Z HSPLandroid/view/Display;->shouldReportMaxBounds()Z HSPLandroid/view/Display;->stateToString(I)Ljava/lang/String; HSPLandroid/view/Display;->updateCachedAppSizeIfNeededLocked()V -HSPLandroid/view/Display;->updateDisplayInfoLocked()V+]Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal; +HSPLandroid/view/Display;->updateDisplayInfoLocked()V HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayAddress$Physical; HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/DisplayAddress$Physical;-><init>(J)V -HSPLandroid/view/DisplayAddress$Physical;-><init>(JLandroid/view/DisplayAddress$Physical-IA;)V HSPLandroid/view/DisplayAddress$Physical;->equals(Ljava/lang/Object;)Z HSPLandroid/view/DisplayAddress$Physical;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/DisplayAddress;-><init>()V @@ -16033,12 +16010,11 @@ HSPLandroid/view/DisplayAdjustments;->setCompatibilityInfo(Landroid/content/res/ HSPLandroid/view/DisplayAdjustments;->setConfiguration(Landroid/content/res/Configuration;)V HSPLandroid/view/DisplayCutout$Bounds;->-$$Nest$mgetRects(Landroid/view/DisplayCutout$Bounds;)[Landroid/graphics/Rect; HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;Z)V -HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;ZLandroid/view/DisplayCutout$Bounds-IA;)V HSPLandroid/view/DisplayCutout$Bounds;->equals(Ljava/lang/Object;)Z HSPLandroid/view/DisplayCutout$Bounds;->getRects()[Landroid/graphics/Rect; HSPLandroid/view/DisplayCutout$Bounds;->isEmpty()Z HSPLandroid/view/DisplayCutout$CutoutPathParserInfo;-><init>(IIIIFLjava/lang/String;IFF)V -HSPLandroid/view/DisplayCutout$CutoutPathParserInfo;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Ljava/lang/String; +HSPLandroid/view/DisplayCutout$CutoutPathParserInfo;->equals(Ljava/lang/Object;)Z HSPLandroid/view/DisplayCutout$ParcelableWrapper$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayCutout$ParcelableWrapper; HSPLandroid/view/DisplayCutout$ParcelableWrapper$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/DisplayCutout$ParcelableWrapper;-><init>()V @@ -16072,11 +16048,11 @@ HSPLandroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;-><init>(JJJ) HSPLandroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;->copyFrom(Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;)V HSPLandroid/view/DisplayEventReceiver$VsyncEventData;-><init>()V HSPLandroid/view/DisplayEventReceiver$VsyncEventData;-><init>([Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;IIJ)V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData;->copyFrom(Landroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; +HSPLandroid/view/DisplayEventReceiver$VsyncEventData;->copyFrom(Landroid/view/DisplayEventReceiver$VsyncEventData;)V HSPLandroid/view/DisplayEventReceiver$VsyncEventData;->preferredFrameTimeline()Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; HSPLandroid/view/DisplayEventReceiver;-><init>(Landroid/os/Looper;II)V HSPLandroid/view/DisplayEventReceiver;-><init>(Landroid/os/Looper;IIJ)V -HSPLandroid/view/DisplayEventReceiver;->dispatchVsync(JJI)V+]Landroid/view/DisplayEventReceiver;Landroid/view/Choreographer$FrameDisplayEventReceiver; +HSPLandroid/view/DisplayEventReceiver;->dispatchVsync(JJI)V HSPLandroid/view/DisplayEventReceiver;->getLatestVsyncEventData()Landroid/view/DisplayEventReceiver$VsyncEventData; HSPLandroid/view/DisplayEventReceiver;->scheduleVsync()V HSPLandroid/view/DisplayInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayInfo; @@ -16092,12 +16068,12 @@ HSPLandroid/view/DisplayInfo;->getAppMetrics(Landroid/util/DisplayMetrics;Landro HSPLandroid/view/DisplayInfo;->getAppMetrics(Landroid/util/DisplayMetrics;Landroid/view/DisplayAdjustments;)V HSPLandroid/view/DisplayInfo;->getLogicalMetrics(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;)V HSPLandroid/view/DisplayInfo;->getMaxBoundsMetrics(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayInfo;->getMetricsWithSize(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;II)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/view/DisplayInfo;->getMetricsWithSize(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;II)V HSPLandroid/view/DisplayInfo;->getMode()Landroid/view/Display$Mode; HSPLandroid/view/DisplayInfo;->getRefreshRate()F HSPLandroid/view/DisplayInfo;->hasAccess(I)Z HSPLandroid/view/DisplayInfo;->isWideColorGamut()Z -HSPLandroid/view/DisplayInfo;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/view/Display$Mode$1; +HSPLandroid/view/DisplayInfo;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/view/DisplayInfo;->toString()Ljava/lang/String; HSPLandroid/view/DisplayInfo;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/DisplayShape$1;-><init>()V @@ -16128,7 +16104,7 @@ HSPLandroid/view/FrameMetrics;-><init>()V HSPLandroid/view/FrameMetrics;->getMetric(I)J HSPLandroid/view/FrameMetricsObserver;-><init>(Landroid/view/Window;Landroid/os/Handler;Landroid/view/Window$OnFrameMetricsAvailableListener;)V HSPLandroid/view/FrameMetricsObserver;->getRendererObserver()Landroid/graphics/HardwareRendererObserver; -HSPLandroid/view/FrameMetricsObserver;->onFrameMetricsAvailable(I)V+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLandroid/view/FrameMetricsObserver;->onFrameMetricsAvailable(I)V HSPLandroid/view/GestureDetector$GestureHandler;-><init>(Landroid/view/GestureDetector;)V HSPLandroid/view/GestureDetector$GestureHandler;-><init>(Landroid/view/GestureDetector;Landroid/os/Handler;)V HSPLandroid/view/GestureDetector$GestureHandler;->handleMessage(Landroid/os/Message;)V @@ -16162,7 +16138,7 @@ HSPLandroid/view/Gravity;->isVertical(I)Z HSPLandroid/view/HandlerActionQueue$HandlerAction;-><init>(Ljava/lang/Runnable;J)V HSPLandroid/view/HandlerActionQueue$HandlerAction;->matches(Ljava/lang/Runnable;)Z HSPLandroid/view/HandlerActionQueue;-><init>()V -HSPLandroid/view/HandlerActionQueue;->executeActions(Landroid/os/Handler;)V+]Landroid/os/Handler;Landroid/view/ViewRootImpl$ViewRootHandler; +HSPLandroid/view/HandlerActionQueue;->executeActions(Landroid/os/Handler;)V HSPLandroid/view/HandlerActionQueue;->post(Ljava/lang/Runnable;)V HSPLandroid/view/HandlerActionQueue;->postDelayed(Ljava/lang/Runnable;J)V HSPLandroid/view/HandlerActionQueue;->removeCallbacks(Ljava/lang/Runnable;)V @@ -16181,6 +16157,7 @@ HSPLandroid/view/HandwritingInitiator;->onInputConnectionClosed(Landroid/view/Vi HSPLandroid/view/HandwritingInitiator;->onInputConnectionCreated(Landroid/view/View;)V HSPLandroid/view/HandwritingInitiator;->onTouchEvent(Landroid/view/MotionEvent;)Z HSPLandroid/view/HandwritingInitiator;->updateHandwritingAreasForView(Landroid/view/View;)V +HSPLandroid/view/HdrRenderState;->updateForFrame(J)Z+]Landroid/view/HdrRenderState;Landroid/view/HdrRenderState; HSPLandroid/view/IGraphicsStats$Stub$Proxy;-><init>(Landroid/os/IBinder;)V HSPLandroid/view/IGraphicsStats$Stub$Proxy;->asBinder()Landroid/os/IBinder; HSPLandroid/view/IGraphicsStats$Stub$Proxy;->requestBufferForProcess(Ljava/lang/String;Landroid/view/IGraphicsStatsCallback;)Landroid/os/ParcelFileDescriptor; @@ -16229,10 +16206,9 @@ HSPLandroid/view/ImeFocusController;->onPostWindowFocus(Landroid/view/View;ZLand HSPLandroid/view/ImeFocusController;->onPreWindowFocus(ZLandroid/view/WindowManager$LayoutParams;)V HSPLandroid/view/ImeFocusController;->onProcessImeInputStage(Ljava/lang/Object;Landroid/view/InputEvent;Landroid/view/WindowManager$LayoutParams;Landroid/view/inputmethod/InputMethodManager$FinishedInputEventCallback;)I HSPLandroid/view/ImeFocusController;->onTraversal(ZLandroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ImeFocusController;->onViewDetachedFromWindow(Landroid/view/View;)V+]Landroid/view/ImeFocusController$InputMethodManagerDelegate;Landroid/view/inputmethod/InputMethodManager$DelegateImpl; +HSPLandroid/view/ImeFocusController;->onViewDetachedFromWindow(Landroid/view/View;)V HSPLandroid/view/ImeFocusController;->onViewFocusChanged(Landroid/view/View;Z)V HSPLandroid/view/ImeFocusController;->onWindowDismissed()V -HSPLandroid/view/ImeInsetsSourceConsumer;-><init>(ILandroid/view/InsetsState;Ljava/util/function/Supplier;Landroid/view/InsetsController;)V HSPLandroid/view/ImeInsetsSourceConsumer;->applyLocalVisibilityOverride()Z HSPLandroid/view/ImeInsetsSourceConsumer;->getImm()Landroid/view/inputmethod/InputMethodManager; HSPLandroid/view/ImeInsetsSourceConsumer;->isRequestedVisibleAwaitingControl()Z @@ -16241,7 +16217,6 @@ HSPLandroid/view/ImeInsetsSourceConsumer;->onShowRequested()V HSPLandroid/view/ImeInsetsSourceConsumer;->onWindowFocusGained(Z)V HSPLandroid/view/ImeInsetsSourceConsumer;->onWindowFocusLost()V HSPLandroid/view/ImeInsetsSourceConsumer;->removeSurface()V -HSPLandroid/view/ImeInsetsSourceConsumer;->setControl(Landroid/view/InsetsSourceControl;[I[I)Z HSPLandroid/view/InputChannel$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InputChannel; HSPLandroid/view/InputChannel$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/InputChannel;-><init>()V @@ -16273,7 +16248,7 @@ HSPLandroid/view/InputEventCompatProcessor;->processInputEventForCompatibility(L HSPLandroid/view/InputEventConsistencyVerifier;->isInstrumentationEnabled()Z HSPLandroid/view/InputEventReceiver;-><init>(Landroid/view/InputChannel;Landroid/os/Looper;)V HSPLandroid/view/InputEventReceiver;->consumeBatchedInputEvents(J)Z -HSPLandroid/view/InputEventReceiver;->dispatchInputEvent(ILandroid/view/InputEvent;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Landroid/view/InputEventReceiver;Landroid/view/ViewRootImpl$WindowInputEventReceiver;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/view/InputEventReceiver;->dispatchInputEvent(ILandroid/view/InputEvent;)V HSPLandroid/view/InputEventReceiver;->dispose()V HSPLandroid/view/InputEventReceiver;->dispose(Z)V HSPLandroid/view/InputEventReceiver;->finalize()V @@ -16291,7 +16266,6 @@ HSPLandroid/view/InputMonitor$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lan HSPLandroid/view/InputMonitor;-><init>(Landroid/os/Parcel;)V HSPLandroid/view/InputMonitor;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/InsetsAnimationControlImpl$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V -HSPLandroid/view/InsetsAnimationControlImpl;-><init>(Landroid/util/SparseArray;Landroid/graphics/Rect;Landroid/view/InsetsState;Landroid/view/WindowInsetsAnimationControlListener;ILandroid/view/InsetsAnimationControlCallbacks;JLandroid/view/animation/Interpolator;IILandroid/content/res/CompatibilityInfo$Translator;Landroid/view/inputmethod/ImeTracker$Token;)V HSPLandroid/view/InsetsAnimationControlImpl;->addTranslationToMatrix(IILandroid/graphics/Matrix;Landroid/graphics/Rect;)V HSPLandroid/view/InsetsAnimationControlImpl;->applyChangeInsets(Landroid/view/InsetsState;)Z HSPLandroid/view/InsetsAnimationControlImpl;->buildSideControlsMap(Landroid/util/SparseSetArray;Landroid/util/SparseArray;)V @@ -16323,7 +16297,6 @@ HSPLandroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1;-> HSPLandroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0;->run()V HSPLandroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1;->run()V HSPLandroid/view/InsetsAnimationThreadControlRunner$1;-><init>(Landroid/view/InsetsAnimationThreadControlRunner;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->applySurfaceParams([Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;)V HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->notifyFinished(Landroid/view/InsetsAnimationControlRunner;Z)V HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->releaseSurfaceControlFromRt(Landroid/view/SurfaceControl;)V HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->reportPerceptible(IZ)V @@ -16338,7 +16311,6 @@ HSPLandroid/view/InsetsAnimationThreadControlRunner;->getTypes()I HSPLandroid/view/InsetsAnimationThreadControlRunner;->notifyControlRevoked(I)V HSPLandroid/view/InsetsAnimationThreadControlRunner;->updateSurfacePosition(Landroid/util/SparseArray;)V HSPLandroid/view/InsetsController$$ExternalSyntheticLambda10;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$$ExternalSyntheticLambda7;-><init>()V HSPLandroid/view/InsetsController$$ExternalSyntheticLambda9;-><init>(Landroid/view/InsetsController;)V HSPLandroid/view/InsetsController$1;-><init>(Landroid/view/InsetsController;)V HSPLandroid/view/InsetsController$2;-><init>(Landroid/view/InsetsController;)V @@ -16350,10 +16322,7 @@ HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSynt HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda3;->getInterpolation(F)F HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda4;->getInterpolation(F)F HSPLandroid/view/InsetsController$InternalAnimationControlListener;-><init>(ZZIIZILandroid/view/WindowInsetsAnimationControlListener;Landroid/view/inputmethod/ImeTracker$InputMethodJankContext;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->calculateDurationMs()J HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getAlphaInterpolator()Landroid/view/animation/Interpolator; -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getDurationMs()J -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getInsetsInterpolator()Landroid/view/animation/Interpolator; HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$2(F)F HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$3(F)F HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$4(F)F @@ -16375,8 +16344,6 @@ HSPLandroid/view/InsetsController;->calculateVisibleInsets(IIII)Landroid/graphic HSPLandroid/view/InsetsController;->cancelAnimation(Landroid/view/InsetsAnimationControlRunner;Z)V HSPLandroid/view/InsetsController;->cancelExistingAnimations()V HSPLandroid/view/InsetsController;->cancelExistingControllers(I)V -HSPLandroid/view/InsetsController;->collectSourceControls(ZILandroid/util/SparseArray;ILandroid/view/inputmethod/ImeTracker$Token;)Landroid/util/Pair; -HSPLandroid/view/InsetsController;->controlAnimationUncheckedInner(ILandroid/os/CancellationSignal;Landroid/view/WindowInsetsAnimationControlListener;Landroid/graphics/Rect;ZJLandroid/view/animation/Interpolator;IIZLandroid/view/inputmethod/ImeTracker$Token;)V HSPLandroid/view/InsetsController;->dispatchAnimationEnd(Landroid/view/WindowInsetsAnimation;)V HSPLandroid/view/InsetsController;->getAnimationType(I)I HSPLandroid/view/InsetsController;->getHost()Landroid/view/InsetsController$Host; @@ -16392,13 +16359,12 @@ HSPLandroid/view/InsetsController;->lambda$static$1(FLandroid/graphics/Insets;La HSPLandroid/view/InsetsController;->notifyControlRevoked(Landroid/view/InsetsSourceConsumer;)V HSPLandroid/view/InsetsController;->notifyFinished(Landroid/view/InsetsAnimationControlRunner;Z)V HSPLandroid/view/InsetsController;->notifyVisibilityChanged()V -HSPLandroid/view/InsetsController;->onControlsChanged([Landroid/view/InsetsSourceControl;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceConsumer;Landroid/view/ImeInsetsSourceConsumer;,Landroid/view/InsetsSourceConsumer;]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/InsetsController;->onControlsChanged([Landroid/view/InsetsSourceControl;)V HSPLandroid/view/InsetsController;->onFrameChanged(Landroid/graphics/Rect;)V HSPLandroid/view/InsetsController;->onStateChanged(Landroid/view/InsetsState;)Z HSPLandroid/view/InsetsController;->onWindowFocusGained(Z)V HSPLandroid/view/InsetsController;->onWindowFocusLost()V HSPLandroid/view/InsetsController;->reportPerceptible(IZ)V -HSPLandroid/view/InsetsController;->reportRequestedVisibleTypes()V HSPLandroid/view/InsetsController;->setRequestedVisibleTypes(II)V HSPLandroid/view/InsetsController;->show(I)V HSPLandroid/view/InsetsController;->show(IZLandroid/view/inputmethod/ImeTracker$Token;)V @@ -16406,15 +16372,15 @@ HSPLandroid/view/InsetsController;->updateCompatSysUiVisibility()V HSPLandroid/view/InsetsController;->updateState(Landroid/view/InsetsState;)V HSPLandroid/view/InsetsFlags;-><init>()V HSPLandroid/view/InsetsSource$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/view/InsetsSource$1;Landroid/view/InsetsSource$1; +HSPLandroid/view/InsetsSource$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/InsetsSource;-><init>(II)V -HSPLandroid/view/InsetsSource;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/graphics/Rect$1; +HSPLandroid/view/InsetsSource;-><init>(Landroid/os/Parcel;)V HSPLandroid/view/InsetsSource;-><init>(Landroid/view/InsetsSource;)V -HSPLandroid/view/InsetsSource;->calculateInsets(Landroid/graphics/Rect;Landroid/graphics/Rect;Z)Landroid/graphics/Insets;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; +HSPLandroid/view/InsetsSource;->calculateInsets(Landroid/graphics/Rect;Landroid/graphics/Rect;Z)Landroid/graphics/Insets; HSPLandroid/view/InsetsSource;->calculateInsets(Landroid/graphics/Rect;Z)Landroid/graphics/Insets; HSPLandroid/view/InsetsSource;->calculateVisibleInsets(Landroid/graphics/Rect;)Landroid/graphics/Insets; -HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;)Z+]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Ljava/lang/Object;Landroid/view/InsetsSource; +HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;)Z +HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;Z)Z HSPLandroid/view/InsetsSource;->getFlags()I HSPLandroid/view/InsetsSource;->getFrame()Landroid/graphics/Rect; HSPLandroid/view/InsetsSource;->getId()I @@ -16425,9 +16391,7 @@ HSPLandroid/view/InsetsSource;->hasFlags(I)Z HSPLandroid/view/InsetsSource;->isVisible()Z HSPLandroid/view/InsetsSource;->setVisible(Z)Landroid/view/InsetsSource; HSPLandroid/view/InsetsSource;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/InsetsSourceConsumer;-><init>(IILandroid/view/InsetsState;Ljava/util/function/Supplier;Landroid/view/InsetsController;)V HSPLandroid/view/InsetsSourceConsumer;->applyLocalVisibilityOverride()Z -HSPLandroid/view/InsetsSourceConsumer;->applyRequestedVisibilityToControl()V HSPLandroid/view/InsetsSourceConsumer;->getControl()Landroid/view/InsetsSourceControl; HSPLandroid/view/InsetsSourceConsumer;->getId()I HSPLandroid/view/InsetsSourceConsumer;->getType()I @@ -16436,7 +16400,6 @@ HSPLandroid/view/InsetsSourceConsumer;->onPerceptible(Z)V HSPLandroid/view/InsetsSourceConsumer;->onWindowFocusGained(Z)V HSPLandroid/view/InsetsSourceConsumer;->onWindowFocusLost()V HSPLandroid/view/InsetsSourceConsumer;->removeSurface()V -HSPLandroid/view/InsetsSourceConsumer;->setControl(Landroid/view/InsetsSourceControl;[I[I)Z HSPLandroid/view/InsetsSourceConsumer;->updateSource(Landroid/view/InsetsSource;I)V HSPLandroid/view/InsetsSourceControl$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsSourceControl; HSPLandroid/view/InsetsSourceControl$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -16475,9 +16438,9 @@ HSPLandroid/view/InsetsState;->calculateRelativeCutout(Landroid/graphics/Rect;)L HSPLandroid/view/InsetsState;->calculateRelativeDisplayShape(Landroid/graphics/Rect;)Landroid/view/DisplayShape; HSPLandroid/view/InsetsState;->calculateRelativePrivacyIndicatorBounds(Landroid/graphics/Rect;)Landroid/view/PrivacyIndicatorBounds; HSPLandroid/view/InsetsState;->calculateRelativeRoundedCorners(Landroid/graphics/Rect;)Landroid/view/RoundedCorners; -HSPLandroid/view/InsetsState;->calculateUncontrollableInsetsFromFrame(Landroid/graphics/Rect;)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; +HSPLandroid/view/InsetsState;->calculateUncontrollableInsetsFromFrame(Landroid/graphics/Rect;)I HSPLandroid/view/InsetsState;->calculateVisibleInsets(Landroid/graphics/Rect;IIII)Landroid/graphics/Insets; -HSPLandroid/view/InsetsState;->canControlSource(Landroid/graphics/Rect;Landroid/view/InsetsSource;)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; +HSPLandroid/view/InsetsState;->canControlSource(Landroid/graphics/Rect;Landroid/view/InsetsSource;)Z HSPLandroid/view/InsetsState;->clearsCompatInsets(IIII)Z HSPLandroid/view/InsetsState;->equals(Ljava/lang/Object;)Z HSPLandroid/view/InsetsState;->equals(Ljava/lang/Object;ZZ)Z @@ -16489,9 +16452,9 @@ HSPLandroid/view/InsetsState;->getPrivacyIndicatorBounds()Landroid/view/PrivacyI HSPLandroid/view/InsetsState;->getRoundedCorners()Landroid/view/RoundedCorners; HSPLandroid/view/InsetsState;->isSourceOrDefaultVisible(II)Z HSPLandroid/view/InsetsState;->peekSource(I)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->readFromParcel(Landroid/os/Parcel;)Landroid/util/SparseArray;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayCutout$ParcelableWrapper;Landroid/view/DisplayCutout$ParcelableWrapper;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; +HSPLandroid/view/InsetsState;->readFromParcel(Landroid/os/Parcel;)Landroid/util/SparseArray; HSPLandroid/view/InsetsState;->set(Landroid/view/InsetsState;I)V -HSPLandroid/view/InsetsState;->set(Landroid/view/InsetsState;Z)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayCutout$ParcelableWrapper;Landroid/view/DisplayCutout$ParcelableWrapper;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState; +HSPLandroid/view/InsetsState;->set(Landroid/view/InsetsState;Z)V HSPLandroid/view/InsetsState;->setDisplayCutout(Landroid/view/DisplayCutout;)V HSPLandroid/view/InsetsState;->setDisplayFrame(Landroid/graphics/Rect;)V HSPLandroid/view/InsetsState;->setPrivacyIndicatorBounds(Landroid/view/PrivacyIndicatorBounds;)V @@ -16550,28 +16513,28 @@ HSPLandroid/view/LayoutInflater;-><init>(Landroid/content/Context;)V HSPLandroid/view/LayoutInflater;-><init>(Landroid/view/LayoutInflater;Landroid/content/Context;)V HSPLandroid/view/LayoutInflater;->advanceToRootNode(Lorg/xmlpull/v1/XmlPullParser;)V HSPLandroid/view/LayoutInflater;->consumeChildElements(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLandroid/view/LayoutInflater;->createView(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View;+]Landroid/content/Context;missing_types]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/ViewStub;Landroid/view/ViewStub;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/lang/reflect/Constructor;Ljava/lang/reflect/Constructor;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/view/LayoutInflater;->createView(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->createView(Ljava/lang/String;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->createViewFromTag(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->createViewFromTag(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;Z)Landroid/view/View;+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/AttributeSet;Landroid/content/res/XmlBlock$Parser;]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; +HSPLandroid/view/LayoutInflater;->createViewFromTag(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;Z)Landroid/view/View; HSPLandroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater; HSPLandroid/view/LayoutInflater;->getContext()Landroid/content/Context; HSPLandroid/view/LayoutInflater;->getFactory()Landroid/view/LayoutInflater$Factory; HSPLandroid/view/LayoutInflater;->getFactory2()Landroid/view/LayoutInflater$Factory2; HSPLandroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;Z)Landroid/view/View;+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;Z)Landroid/view/View; HSPLandroid/view/LayoutInflater;->onCreateView(Landroid/content/Context;Landroid/view/View;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->onCreateView(Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; HSPLandroid/view/LayoutInflater;->parseInclude(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/Context;Landroid/view/View;Landroid/util/AttributeSet;)V -HSPLandroid/view/LayoutInflater;->rInflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/content/Context;Landroid/util/AttributeSet;Z)V+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/view/LayoutInflater;->rInflateChildren(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/util/AttributeSet;Z)V+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types +HSPLandroid/view/LayoutInflater;->rInflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/content/Context;Landroid/util/AttributeSet;Z)V +HSPLandroid/view/LayoutInflater;->rInflateChildren(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/util/AttributeSet;Z)V HSPLandroid/view/LayoutInflater;->setFactory2(Landroid/view/LayoutInflater$Factory2;)V HSPLandroid/view/LayoutInflater;->setFilter(Landroid/view/LayoutInflater$Filter;)V HSPLandroid/view/LayoutInflater;->setPrivateFactory(Landroid/view/LayoutInflater$Factory2;)V -HSPLandroid/view/LayoutInflater;->tryCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View;+]Landroid/view/LayoutInflater$Factory2;missing_types]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/view/LayoutInflater;->verifyClassLoader(Ljava/lang/reflect/Constructor;)Z+]Landroid/content/Context;missing_types]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/reflect/Constructor;Ljava/lang/reflect/Constructor; +HSPLandroid/view/LayoutInflater;->tryCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; +HSPLandroid/view/LayoutInflater;->verifyClassLoader(Ljava/lang/reflect/Constructor;)Z HSPLandroid/view/MenuInflater;-><init>(Landroid/content/Context;)V HSPLandroid/view/MotionEvent$PointerCoords;-><init>()V HSPLandroid/view/MotionEvent$PointerProperties;-><init>()V @@ -16659,12 +16622,12 @@ HSPLandroid/view/RemoteAccessibilityController;->setRemoteAccessibilityEmbeddedC HSPLandroid/view/RemoteAnimationAdapter;-><init>(Landroid/view/IRemoteAnimationRunner;JJ)V HSPLandroid/view/RemoteAnimationAdapter;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/RoundedCorner$1;-><init>()V -HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/RoundedCorner;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/view/RoundedCorner$1;Landroid/view/RoundedCorner$1; +HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/RoundedCorner; +HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/RoundedCorner;-><clinit>()V HSPLandroid/view/RoundedCorner;-><init>(I)V HSPLandroid/view/RoundedCorner;-><init>(IIII)V -HSPLandroid/view/RoundedCorner;->equals(Ljava/lang/Object;)Z+]Landroid/graphics/Point;Landroid/graphics/Point; +HSPLandroid/view/RoundedCorner;->equals(Ljava/lang/Object;)Z HSPLandroid/view/RoundedCorner;->getCenter()Landroid/graphics/Point; HSPLandroid/view/RoundedCorner;->getRadius()I HSPLandroid/view/RoundedCorner;->isEmpty()Z @@ -16778,7 +16741,6 @@ HSPLandroid/view/SurfaceControl;->release()V HSPLandroid/view/SurfaceControl;->rotationToBufferTransform(I)I HSPLandroid/view/SurfaceControl;->setTransformHint(I)V HSPLandroid/view/SurfaceControlRegistry$DefaultReporter;-><init>()V -HSPLandroid/view/SurfaceControlRegistry$DefaultReporter;-><init>(Landroid/view/SurfaceControlRegistry$DefaultReporter-IA;)V HSPLandroid/view/SurfaceControlRegistry;-><clinit>()V HSPLandroid/view/SurfaceControlRegistry;->getProcessInstance()Landroid/view/SurfaceControlRegistry; HSPLandroid/view/SurfaceSession;-><init>()V @@ -16858,7 +16820,6 @@ HSPLandroid/view/ThreadedRenderer$1;->onFrameDraw(IJ)Landroid/graphics/HardwareR HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->-$$Nest$fgetmSurfaceControl(Landroid/view/ThreadedRenderer$WebViewOverlayProvider;)Landroid/view/SurfaceControl; HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><clinit>()V HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><init>()V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><init>(Landroid/view/ThreadedRenderer$WebViewOverlayProvider-IA;)V HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setBLASTBufferQueue(Landroid/graphics/BLASTBufferQueue;)V HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setSurfaceControl(Landroid/view/SurfaceControl;)V HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setSurfaceControlOpaque(Z)Z @@ -16974,26 +16935,26 @@ HSPLandroid/view/View$TintInfo;-><init>()V HSPLandroid/view/View$TransformationInfo;-><init>()V HSPLandroid/view/View$UnsetPressedState;->run()V HSPLandroid/view/View$VisibilityChangeForAutofillHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/View;-><init>(Landroid/content/Context;)V+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types]Landroid/view/ViewConfiguration;Landroid/view/ViewConfiguration;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types +HSPLandroid/view/View;-><init>(Landroid/content/Context;)V HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types +HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/view/View;->addFocusables(Ljava/util/ArrayList;I)V HSPLandroid/view/View;->addFocusables(Ljava/util/ArrayList;II)V HSPLandroid/view/View;->addFrameMetricsListener(Landroid/view/Window;Landroid/view/Window$OnFrameMetricsAvailableListener;Landroid/os/Handler;)V HSPLandroid/view/View;->addOnAttachStateChangeListener(Landroid/view/View$OnAttachStateChangeListener;)V -HSPLandroid/view/View;->addOnLayoutChangeListener(Landroid/view/View$OnLayoutChangeListener;)V+]Landroid/view/View;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/View;->addOnLayoutChangeListener(Landroid/view/View$OnLayoutChangeListener;)V HSPLandroid/view/View;->animate()Landroid/view/ViewPropertyAnimator; HSPLandroid/view/View;->announceForAccessibility(Ljava/lang/CharSequence;)V HSPLandroid/view/View;->appendId(Ljava/lang/StringBuilder;)V HSPLandroid/view/View;->applyBackgroundTint()V HSPLandroid/view/View;->applyForegroundTint()V HSPLandroid/view/View;->applyInsets(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->applyLegacyAnimation(Landroid/view/ViewGroup;JLandroid/view/animation/Animation;Z)Z+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/View;missing_types]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; +HSPLandroid/view/View;->applyLegacyAnimation(Landroid/view/ViewGroup;JLandroid/view/animation/Animation;Z)Z HSPLandroid/view/View;->areDrawablesResolved()Z HSPLandroid/view/View;->assignParent(Landroid/view/ViewParent;)V HSPLandroid/view/View;->awakenScrollBars()Z -HSPLandroid/view/View;->awakenScrollBars(IZ)Z+]Landroid/os/Handler;Landroid/view/ViewRootImpl$ViewRootHandler;]Landroid/view/View;missing_types +HSPLandroid/view/View;->awakenScrollBars(IZ)Z HSPLandroid/view/View;->bringToFront()V HSPLandroid/view/View;->buildDrawingCache(Z)V HSPLandroid/view/View;->buildDrawingCacheImpl(Z)V @@ -17001,10 +16962,10 @@ HSPLandroid/view/View;->buildLayer()V HSPLandroid/view/View;->calculateAccessibilityDataSensitive()V HSPLandroid/view/View;->calculateIsImportantForContentCapture()Z HSPLandroid/view/View;->canHaveDisplayList()Z -HSPLandroid/view/View;->canNotifyAutofillEnterExitEvent()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->canNotifyAutofillEnterExitEvent()Z HSPLandroid/view/View;->canReceivePointerEvents()Z -HSPLandroid/view/View;->canResolveLayoutDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->canResolveTextDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types +HSPLandroid/view/View;->canResolveLayoutDirection()Z +HSPLandroid/view/View;->canResolveTextDirection()Z HSPLandroid/view/View;->canScrollHorizontally(I)Z HSPLandroid/view/View;->canScrollVertically(I)Z HSPLandroid/view/View;->canTakeFocus()Z @@ -17013,8 +16974,8 @@ HSPLandroid/view/View;->cancelLongPress()V HSPLandroid/view/View;->cancelPendingInputEvents()V HSPLandroid/view/View;->checkForLongClick(JFFI)V HSPLandroid/view/View;->checkInputConnectionProxy(Landroid/view/View;)Z -HSPLandroid/view/View;->cleanupDraw()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->clearAccessibilityFocus()V+]Landroid/view/View;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/View;->cleanupDraw()V +HSPLandroid/view/View;->clearAccessibilityFocus()V HSPLandroid/view/View;->clearAccessibilityFocusNoCallbacks(I)V HSPLandroid/view/View;->clearAccessibilityThrottles()V HSPLandroid/view/View;->clearAnimation()V @@ -17023,7 +16984,7 @@ HSPLandroid/view/View;->clearFocusInternal(Landroid/view/View;ZZ)V HSPLandroid/view/View;->clearParentsWantFocus()V HSPLandroid/view/View;->clearTranslationState()V HSPLandroid/view/View;->clearViewTranslationResponse()V -HSPLandroid/view/View;->collectPreferKeepClearRects()Ljava/util/List;+]Landroid/view/View;missing_types +HSPLandroid/view/View;->collectPreferKeepClearRects()Ljava/util/List; HSPLandroid/view/View;->collectUnrestrictedPreferKeepClearRects()Ljava/util/List; HSPLandroid/view/View;->combineMeasuredStates(II)I HSPLandroid/view/View;->combineVisibility(II)I @@ -17031,21 +16992,21 @@ HSPLandroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/ HSPLandroid/view/View;->computeHorizontalScrollExtent()I HSPLandroid/view/View;->computeHorizontalScrollOffset()I HSPLandroid/view/View;->computeHorizontalScrollRange()I -HSPLandroid/view/View;->computeOpaqueFlags()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/view/View;->computeOpaqueFlags()V HSPLandroid/view/View;->computeScroll()V HSPLandroid/view/View;->computeSystemWindowInsets(Landroid/view/WindowInsets;Landroid/graphics/Rect;)Landroid/view/WindowInsets; HSPLandroid/view/View;->computeVerticalScrollExtent()I HSPLandroid/view/View;->computeVerticalScrollOffset()I HSPLandroid/view/View;->computeVerticalScrollRange()I -HSPLandroid/view/View;->damageInParent()V+]Landroid/view/ViewParent;missing_types +HSPLandroid/view/View;->damageInParent()V HSPLandroid/view/View;->destroyDrawingCache()V HSPLandroid/view/View;->destroyHardwareResources()V -HSPLandroid/view/View;->dispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets;+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V+]Landroid/view/HandlerActionQueue;Landroid/view/HandlerActionQueue;]Landroid/view/View;missing_types]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HSPLandroid/view/View;->dispatchCancelPendingInputEvents()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->dispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; +HSPLandroid/view/View;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V +HSPLandroid/view/View;->dispatchCancelPendingInputEvents()V +HSPLandroid/view/View;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V HSPLandroid/view/View;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/view/View;->dispatchDetachedFromWindow()V+]Landroid/view/ImeFocusController;Landroid/view/ImeFocusController;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;Landroid/view/ViewOverlay$OverlayViewGroup;]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/List;Ljava/util/Collections$EmptyList;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; +HSPLandroid/view/View;->dispatchDetachedFromWindow()V HSPLandroid/view/View;->dispatchDraw(Landroid/graphics/Canvas;)V HSPLandroid/view/View;->dispatchDrawableHotspotChanged(FF)V HSPLandroid/view/View;->dispatchFinishTemporaryDetach()V @@ -17061,7 +17022,7 @@ HSPLandroid/view/View;->dispatchProvideAutofillStructure(Landroid/view/ViewStruc HSPLandroid/view/View;->dispatchProvideContentCaptureStructure()V HSPLandroid/view/View;->dispatchProvideStructure(Landroid/view/ViewStructure;II)V HSPLandroid/view/View;->dispatchRestoreInstanceState(Landroid/util/SparseArray;)V -HSPLandroid/view/View;->dispatchSaveInstanceState(Landroid/util/SparseArray;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/view/View;->dispatchSaveInstanceState(Landroid/util/SparseArray;)V HSPLandroid/view/View;->dispatchScreenStateChanged(I)V HSPLandroid/view/View;->dispatchSetActivated(Z)V HSPLandroid/view/View;->dispatchSetPressed(Z)V @@ -17069,20 +17030,20 @@ HSPLandroid/view/View;->dispatchSetSelected(Z)V HSPLandroid/view/View;->dispatchStartTemporaryDetach()V HSPLandroid/view/View;->dispatchSystemUiVisibilityChanged(I)V HSPLandroid/view/View;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->dispatchVisibilityAggregated(Z)Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchVisibilityChanged(Landroid/view/View;I)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->dispatchVisibilityAggregated(Z)Z +HSPLandroid/view/View;->dispatchVisibilityChanged(Landroid/view/View;I)V HSPLandroid/view/View;->dispatchWindowFocusChanged(Z)V HSPLandroid/view/View;->dispatchWindowInsetsAnimationEnd(Landroid/view/WindowInsetsAnimation;)V HSPLandroid/view/View;->dispatchWindowSystemUiVisiblityChanged(I)V -HSPLandroid/view/View;->dispatchWindowVisibilityChanged(I)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;Landroid/view/ViewGroup;J)Z+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/AnimationSet;,Landroid/view/animation/RotateAnimation;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; +HSPLandroid/view/View;->dispatchWindowVisibilityChanged(I)V +HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;)V +HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;Landroid/view/ViewGroup;J)Z HSPLandroid/view/View;->drawAutofilledHighlight(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->drawBackground(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types +HSPLandroid/view/View;->drawBackground(Landroid/graphics/Canvas;)V HSPLandroid/view/View;->drawDefaultFocusHighlight(Landroid/graphics/Canvas;)V HSPLandroid/view/View;->drawableHotspotChanged(FF)V -HSPLandroid/view/View;->drawableStateChanged()V+]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->drawsWithRenderNode(Landroid/graphics/Canvas;)Z+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas; +HSPLandroid/view/View;->drawableStateChanged()V +HSPLandroid/view/View;->drawsWithRenderNode(Landroid/graphics/Canvas;)Z HSPLandroid/view/View;->ensureTransformationInfo()V HSPLandroid/view/View;->findAccessibilityFocusHost(Z)Landroid/view/View; HSPLandroid/view/View;->findFocus()Landroid/view/View; @@ -17091,7 +17052,7 @@ HSPLandroid/view/View;->findKeyboardNavigationCluster()Landroid/view/View; HSPLandroid/view/View;->findOnBackInvokedDispatcher()Landroid/window/OnBackInvokedDispatcher; HSPLandroid/view/View;->findUserSetNextFocus(Landroid/view/View;I)Landroid/view/View; HSPLandroid/view/View;->findViewByAutofillIdTraversal(I)Landroid/view/View; -HSPLandroid/view/View;->findViewById(I)Landroid/view/View;+]Landroid/view/View;missing_types +HSPLandroid/view/View;->findViewById(I)Landroid/view/View; HSPLandroid/view/View;->findViewTraversal(I)Landroid/view/View; HSPLandroid/view/View;->findViewWithTag(Ljava/lang/Object;)Landroid/view/View; HSPLandroid/view/View;->findViewWithTagTraversal(Ljava/lang/Object;)Landroid/view/View; @@ -17126,8 +17087,8 @@ HSPLandroid/view/View;->getContentDescription()Ljava/lang/CharSequence; HSPLandroid/view/View;->getContext()Landroid/content/Context; HSPLandroid/view/View;->getDefaultSize(II)I HSPLandroid/view/View;->getDisplay()Landroid/view/Display; -HSPLandroid/view/View;->getDrawableRenderNode(Landroid/graphics/drawable/Drawable;Landroid/graphics/RenderNode;)Landroid/graphics/RenderNode;+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/graphics/drawable/Drawable;missing_types]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types -HSPLandroid/view/View;->getDrawableState()[I+]Landroid/view/View;missing_types +HSPLandroid/view/View;->getDrawableRenderNode(Landroid/graphics/drawable/Drawable;Landroid/graphics/RenderNode;)Landroid/graphics/RenderNode; +HSPLandroid/view/View;->getDrawableState()[I HSPLandroid/view/View;->getDrawingCache(Z)Landroid/graphics/Bitmap; HSPLandroid/view/View;->getDrawingRect(Landroid/graphics/Rect;)V HSPLandroid/view/View;->getDrawingTime()J @@ -17143,7 +17104,7 @@ HSPLandroid/view/View;->getForegroundGravity()I HSPLandroid/view/View;->getGlobalVisibleRect(Landroid/graphics/Rect;)Z HSPLandroid/view/View;->getGlobalVisibleRect(Landroid/graphics/Rect;Landroid/graphics/Point;)Z HSPLandroid/view/View;->getHandler()Landroid/os/Handler; -HSPLandroid/view/View;->getHasOverlappingRendering()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->getHasOverlappingRendering()Z HSPLandroid/view/View;->getHeight()I HSPLandroid/view/View;->getHitRect(Landroid/graphics/Rect;)V HSPLandroid/view/View;->getHorizontalFadingEdgeLength()I @@ -17156,7 +17117,7 @@ HSPLandroid/view/View;->getImportantForContentCapture()I HSPLandroid/view/View;->getInverseMatrix()Landroid/graphics/Matrix; HSPLandroid/view/View;->getKeyDispatcherState()Landroid/view/KeyEvent$DispatcherState; HSPLandroid/view/View;->getLayerType()I -HSPLandroid/view/View;->getLayoutDirection()I+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types +HSPLandroid/view/View;->getLayoutDirection()I HSPLandroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; HSPLandroid/view/View;->getLeft()I HSPLandroid/view/View;->getListenerInfo()Landroid/view/View$ListenerInfo; @@ -17177,9 +17138,9 @@ HSPLandroid/view/View;->getOutlineProvider()Landroid/view/ViewOutlineProvider; HSPLandroid/view/View;->getOverScrollMode()I HSPLandroid/view/View;->getPaddingBottom()I HSPLandroid/view/View;->getPaddingEnd()I -HSPLandroid/view/View;->getPaddingLeft()I+]Landroid/view/View;missing_types +HSPLandroid/view/View;->getPaddingLeft()I HSPLandroid/view/View;->getPaddingRight()I -HSPLandroid/view/View;->getPaddingStart()I+]Landroid/view/View;missing_types +HSPLandroid/view/View;->getPaddingStart()I HSPLandroid/view/View;->getPaddingTop()I HSPLandroid/view/View;->getParent()Landroid/view/ViewParent; HSPLandroid/view/View;->getPivotX()F @@ -17203,9 +17164,9 @@ HSPLandroid/view/View;->getScrollX()I HSPLandroid/view/View;->getScrollY()I HSPLandroid/view/View;->getSolidColor()I HSPLandroid/view/View;->getStateListAnimator()Landroid/animation/StateListAnimator; -HSPLandroid/view/View;->getStraightVerticalScrollBarBounds(Landroid/graphics/Rect;Landroid/graphics/Rect;)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getSuggestedMinimumHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->getSuggestedMinimumWidth()I+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/view/View;->getStraightVerticalScrollBarBounds(Landroid/graphics/Rect;Landroid/graphics/Rect;)V +HSPLandroid/view/View;->getSuggestedMinimumHeight()I +HSPLandroid/view/View;->getSuggestedMinimumWidth()I HSPLandroid/view/View;->getSystemGestureExclusionRects()Ljava/util/List; HSPLandroid/view/View;->getSystemUiVisibility()I HSPLandroid/view/View;->getTag()Ljava/lang/Object; @@ -17220,7 +17181,7 @@ HSPLandroid/view/View;->getTranslationX()F HSPLandroid/view/View;->getTranslationY()F HSPLandroid/view/View;->getTranslationZ()F HSPLandroid/view/View;->getVerticalFadingEdgeLength()I -HSPLandroid/view/View;->getVerticalScrollbarWidth()I+]Landroid/widget/ScrollBarDrawable;Landroid/widget/ScrollBarDrawable; +HSPLandroid/view/View;->getVerticalScrollbarWidth()I HSPLandroid/view/View;->getViewRootImpl()Landroid/view/ViewRootImpl; HSPLandroid/view/View;->getViewTranslationCallback()Landroid/view/translation/ViewTranslationCallback; HSPLandroid/view/View;->getViewTreeObserver()Landroid/view/ViewTreeObserver; @@ -17232,7 +17193,7 @@ HSPLandroid/view/View;->getWindowInsetsController()Landroid/view/WindowInsetsCon HSPLandroid/view/View;->getWindowSystemUiVisibility()I HSPLandroid/view/View;->getWindowToken()Landroid/os/IBinder; HSPLandroid/view/View;->getWindowVisibility()I -HSPLandroid/view/View;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/View;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V HSPLandroid/view/View;->getX()F HSPLandroid/view/View;->getY()F HSPLandroid/view/View;->getZ()F @@ -17244,13 +17205,13 @@ HSPLandroid/view/View;->hasExplicitFocusable()Z HSPLandroid/view/View;->hasFocus()Z HSPLandroid/view/View;->hasFocusable()Z HSPLandroid/view/View;->hasFocusable(ZZ)Z -HSPLandroid/view/View;->hasIdentityMatrix()Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->hasIdentityMatrix()Z HSPLandroid/view/View;->hasImeFocus()Z HSPLandroid/view/View;->hasListenersForAccessibility()Z HSPLandroid/view/View;->hasNestedScrollingParent()Z HSPLandroid/view/View;->hasOnClickListeners()Z HSPLandroid/view/View;->hasOverlappingRendering()Z -HSPLandroid/view/View;->hasRtlSupport()Z+]Landroid/content/Context;missing_types]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo; +HSPLandroid/view/View;->hasRtlSupport()Z HSPLandroid/view/View;->hasSize()Z HSPLandroid/view/View;->hasTransientState()Z HSPLandroid/view/View;->hasTranslationTransientState()Z @@ -17263,22 +17224,22 @@ HSPLandroid/view/View;->includeForAccessibility()Z HSPLandroid/view/View;->includeForAccessibility(Z)Z HSPLandroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View; HSPLandroid/view/View;->initScrollCache()V -HSPLandroid/view/View;->initialAwakenScrollBars()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->initialAwakenScrollBars()Z HSPLandroid/view/View;->initializeFadingEdgeInternal(Landroid/content/res/TypedArray;)V HSPLandroid/view/View;->initializeScrollIndicatorsInternal()V HSPLandroid/view/View;->initializeScrollbarsInternal(Landroid/content/res/TypedArray;)V -HSPLandroid/view/View;->internalSetPadding(IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->internalSetPadding(IIII)V HSPLandroid/view/View;->invalidate()V -HSPLandroid/view/View;->invalidate(IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->invalidate(IIII)V HSPLandroid/view/View;->invalidate(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->invalidate(Z)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidateInternal(IIIIZZ)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->invalidateOutline()V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->invalidate(Z)V +HSPLandroid/view/View;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V +HSPLandroid/view/View;->invalidateInternal(IIIIZZ)V +HSPLandroid/view/View;->invalidateOutline()V HSPLandroid/view/View;->invalidateParentCaches()V HSPLandroid/view/View;->invalidateParentIfNeeded()V HSPLandroid/view/View;->invalidateParentIfNeededAndWasQuickRejected()V -HSPLandroid/view/View;->invalidateViewProperty(ZZ)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types +HSPLandroid/view/View;->invalidateViewProperty(ZZ)V HSPLandroid/view/View;->isAccessibilityFocused()Z HSPLandroid/view/View;->isAccessibilityFocusedViewOrHost()Z HSPLandroid/view/View;->isAccessibilityPane()Z @@ -17287,7 +17248,7 @@ HSPLandroid/view/View;->isActivated()Z HSPLandroid/view/View;->isAggregatedVisible()Z HSPLandroid/view/View;->isAttachedToWindow()Z HSPLandroid/view/View;->isAutoHandwritingEnabled()Z -HSPLandroid/view/View;->isAutofillable()Z+]Landroid/view/View;missing_types]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; +HSPLandroid/view/View;->isAutofillable()Z HSPLandroid/view/View;->isAutofilled()Z HSPLandroid/view/View;->isClickable()Z HSPLandroid/view/View;->isContextClickable()Z @@ -17305,7 +17266,7 @@ HSPLandroid/view/View;->isHardwareAccelerated()Z HSPLandroid/view/View;->isHorizontalFadingEdgeEnabled()Z HSPLandroid/view/View;->isHorizontalScrollBarEnabled()Z HSPLandroid/view/View;->isImportantForAccessibility()Z -HSPLandroid/view/View;->isImportantForAutofill()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types +HSPLandroid/view/View;->isImportantForAutofill()Z HSPLandroid/view/View;->isImportantForContentCapture()Z HSPLandroid/view/View;->isInEditMode()Z HSPLandroid/view/View;->isInLayout()Z @@ -17313,12 +17274,12 @@ HSPLandroid/view/View;->isInScrollingContainer()Z HSPLandroid/view/View;->isInTouchMode()Z HSPLandroid/view/View;->isKeyboardNavigationCluster()Z HSPLandroid/view/View;->isLaidOut()Z -HSPLandroid/view/View;->isLayoutDirectionInherited()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->isLayoutDirectionInherited()Z HSPLandroid/view/View;->isLayoutDirectionResolved()Z -HSPLandroid/view/View;->isLayoutModeOptical(Ljava/lang/Object;)Z+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/View;->isLayoutModeOptical(Ljava/lang/Object;)Z HSPLandroid/view/View;->isLayoutRequested()Z HSPLandroid/view/View;->isLayoutRtl()Z -HSPLandroid/view/View;->isLayoutValid()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->isLayoutValid()Z HSPLandroid/view/View;->isLongClickable()Z HSPLandroid/view/View;->isNestedScrollingEnabled()Z HSPLandroid/view/View;->isOpaque()Z @@ -17326,7 +17287,7 @@ HSPLandroid/view/View;->isPaddingResolved()Z HSPLandroid/view/View;->isPressed()Z HSPLandroid/view/View;->isProjectionReceiver()Z HSPLandroid/view/View;->isRootNamespace()Z -HSPLandroid/view/View;->isRtlCompatibilityMode()Z+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types +HSPLandroid/view/View;->isRtlCompatibilityMode()Z HSPLandroid/view/View;->isSelected()Z HSPLandroid/view/View;->isShowingLayoutBounds()Z HSPLandroid/view/View;->isShown()Z @@ -17342,40 +17303,40 @@ HSPLandroid/view/View;->isVerticalScrollBarHidden()Z HSPLandroid/view/View;->isViewIdGenerated(I)Z HSPLandroid/view/View;->isVisibleToUser()Z HSPLandroid/view/View;->isVisibleToUser(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->jumpDrawablesToCurrentState()V+]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->layout(IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->jumpDrawablesToCurrentState()V +HSPLandroid/view/View;->layout(IIII)V HSPLandroid/view/View;->makeFrameworkOptionalFitsSystemWindows()V HSPLandroid/view/View;->makeOptionalFitsSystemWindows()V HSPLandroid/view/View;->mapRectFromViewToScreenCoords(Landroid/graphics/RectF;Z)V HSPLandroid/view/View;->mapRectFromViewToWindowCoords(Landroid/graphics/RectF;Z)V -HSPLandroid/view/View;->measure(II)V+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Landroid/view/View;missing_types +HSPLandroid/view/View;->measure(II)V HSPLandroid/view/View;->mergeDrawableStates([I[I)[I HSPLandroid/view/View;->needGlobalAttributesUpdate(Z)V HSPLandroid/view/View;->needRtlPropertiesResolution()Z HSPLandroid/view/View;->notifyAppearedOrDisappearedForContentCaptureIfNeeded(Z)V HSPLandroid/view/View;->notifyAutofillManagerOnClick()V -HSPLandroid/view/View;->notifyEnterOrExitForAutoFillIfNeeded(Z)V+]Landroid/view/View;missing_types]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; +HSPLandroid/view/View;->notifyEnterOrExitForAutoFillIfNeeded(Z)V HSPLandroid/view/View;->notifyGlobalFocusCleared(Landroid/view/View;)V HSPLandroid/view/View;->notifySubtreeAccessibilityStateChangedByParentIfNeeded()V -HSPLandroid/view/View;->notifySubtreeAccessibilityStateChangedIfNeeded()V+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/View;->notifyViewAccessibilityStateChangedIfNeeded(I)V+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; +HSPLandroid/view/View;->notifySubtreeAccessibilityStateChangedIfNeeded()V +HSPLandroid/view/View;->notifyViewAccessibilityStateChangedIfNeeded(I)V HSPLandroid/view/View;->offsetLeftAndRight(I)V HSPLandroid/view/View;->offsetTopAndBottom(I)V HSPLandroid/view/View;->onAnimationEnd()V HSPLandroid/view/View;->onAnimationStart()V HSPLandroid/view/View;->onApplyFrameworkOptionalFitSystemWindows(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; HSPLandroid/view/View;->onApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/View;->onAttachedToWindow()V+]Landroid/view/View;missing_types]Landroid/view/accessibility/AccessibilityNodeIdManager;Landroid/view/accessibility/AccessibilityNodeIdManager; -HSPLandroid/view/View;->onCancelPendingInputEvents()V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->onAttachedToWindow()V +HSPLandroid/view/View;->onCancelPendingInputEvents()V HSPLandroid/view/View;->onCheckIsTextEditor()Z HSPLandroid/view/View;->onCloseSystemDialogs(Ljava/lang/String;)V HSPLandroid/view/View;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/view/View;->onCreateDrawableState(I)[I+]Landroid/view/View;missing_types +HSPLandroid/view/View;->onCreateDrawableState(I)[I HSPLandroid/view/View;->onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; HSPLandroid/view/View;->onDetachedFromWindow()V -HSPLandroid/view/View;->onDetachedFromWindowInternal()V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/accessibility/AccessibilityNodeIdManager;Landroid/view/accessibility/AccessibilityNodeIdManager; +HSPLandroid/view/View;->onDetachedFromWindowInternal()V HSPLandroid/view/View;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->onDrawForeground(Landroid/graphics/Canvas;)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->onDrawForeground(Landroid/graphics/Canvas;)V HSPLandroid/view/View;->onDrawHorizontalScrollBar(Landroid/graphics/Canvas;Landroid/graphics/drawable/Drawable;IIII)V HSPLandroid/view/View;->onDrawScrollBars(Landroid/graphics/Canvas;)V HSPLandroid/view/View;->onDrawScrollIndicators(Landroid/graphics/Canvas;)V @@ -17389,7 +17350,7 @@ HSPLandroid/view/View;->onKeyDown(ILandroid/view/KeyEvent;)Z HSPLandroid/view/View;->onKeyPreIme(ILandroid/view/KeyEvent;)Z HSPLandroid/view/View;->onKeyUp(ILandroid/view/KeyEvent;)Z HSPLandroid/view/View;->onLayout(ZIIII)V -HSPLandroid/view/View;->onMeasure(II)V+]Landroid/view/View;Landroid/view/View; +HSPLandroid/view/View;->onMeasure(II)V HSPLandroid/view/View;->onProvideAutofillStructure(Landroid/view/ViewStructure;I)V HSPLandroid/view/View;->onProvideAutofillVirtualStructure(Landroid/view/ViewStructure;I)V HSPLandroid/view/View;->onProvideContentCaptureStructure(Landroid/view/ViewStructure;I)V @@ -17399,14 +17360,14 @@ HSPLandroid/view/View;->onRestoreInstanceState(Landroid/os/Parcelable;)V HSPLandroid/view/View;->onRtlPropertiesChanged(I)V HSPLandroid/view/View;->onSaveInstanceState()Landroid/os/Parcelable; HSPLandroid/view/View;->onScreenStateChanged(I)V -HSPLandroid/view/View;->onScrollChanged(IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->onScrollChanged(IIII)V HSPLandroid/view/View;->onSetAlpha(I)Z HSPLandroid/view/View;->onSizeChanged(IIII)V HSPLandroid/view/View;->onStartTemporaryDetach()V HSPLandroid/view/View;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->onVisibilityAggregated(Z)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/util/List;Ljava/util/Collections$EmptyList; +HSPLandroid/view/View;->onVisibilityAggregated(Z)V HSPLandroid/view/View;->onVisibilityChanged(Landroid/view/View;I)V -HSPLandroid/view/View;->onWindowFocusChanged(Z)V+]Landroid/view/View;megamorphic_types +HSPLandroid/view/View;->onWindowFocusChanged(Z)V HSPLandroid/view/View;->onWindowSystemUiVisibilityChanged(I)V HSPLandroid/view/View;->onWindowVisibilityChanged(I)V HSPLandroid/view/View;->overScrollBy(IIIIIIIIZ)Z @@ -17425,14 +17386,14 @@ HSPLandroid/view/View;->post(Ljava/lang/Runnable;)Z HSPLandroid/view/View;->postDelayed(Ljava/lang/Runnable;J)Z HSPLandroid/view/View;->postInvalidate()V HSPLandroid/view/View;->postInvalidateDelayed(J)V -HSPLandroid/view/View;->postInvalidateOnAnimation()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/View;->postInvalidateOnAnimation()V HSPLandroid/view/View;->postOnAnimation(Ljava/lang/Runnable;)V HSPLandroid/view/View;->postOnAnimationDelayed(Ljava/lang/Runnable;J)V HSPLandroid/view/View;->postSendViewScrolledAccessibilityEventCallback(II)V HSPLandroid/view/View;->postUpdate(Ljava/lang/Runnable;)V -HSPLandroid/view/View;->rebuildOutline()V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/ViewOutlineProvider;missing_types +HSPLandroid/view/View;->rebuildOutline()V HSPLandroid/view/View;->recomputePadding()V -HSPLandroid/view/View;->refreshDrawableState()V+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types +HSPLandroid/view/View;->refreshDrawableState()V HSPLandroid/view/View;->registerPendingFrameMetricsObservers()V HSPLandroid/view/View;->removeCallbacks(Ljava/lang/Runnable;)Z HSPLandroid/view/View;->removeFrameMetricsListener(Landroid/view/Window$OnFrameMetricsAvailableListener;)V @@ -17448,30 +17409,30 @@ HSPLandroid/view/View;->requestFocus()Z HSPLandroid/view/View;->requestFocus(I)Z HSPLandroid/view/View;->requestFocus(ILandroid/graphics/Rect;)Z HSPLandroid/view/View;->requestFocusNoSearch(ILandroid/graphics/Rect;)Z -HSPLandroid/view/View;->requestLayout()V+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/View;->requestLayout()V HSPLandroid/view/View;->requestRectangleOnScreen(Landroid/graphics/Rect;)Z HSPLandroid/view/View;->requestRectangleOnScreen(Landroid/graphics/Rect;Z)Z HSPLandroid/view/View;->requireViewById(I)Landroid/view/View; -HSPLandroid/view/View;->resetDisplayList()V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->resetDisplayList()V HSPLandroid/view/View;->resetPressedState()V -HSPLandroid/view/View;->resetResolvedDrawables()V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->resetResolvedDrawables()V HSPLandroid/view/View;->resetResolvedDrawablesInternal()V HSPLandroid/view/View;->resetResolvedLayoutDirection()V -HSPLandroid/view/View;->resetResolvedPadding()V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->resetResolvedPadding()V HSPLandroid/view/View;->resetResolvedPaddingInternal()V HSPLandroid/view/View;->resetResolvedTextAlignment()V HSPLandroid/view/View;->resetResolvedTextDirection()V -HSPLandroid/view/View;->resetRtlProperties()V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->resetRtlProperties()V HSPLandroid/view/View;->resetSubtreeAccessibilityStateChanged()V -HSPLandroid/view/View;->resolveDrawables()V+]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->resolveLayoutDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->resolveLayoutParams()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup$LayoutParams;missing_types -HSPLandroid/view/View;->resolvePadding()V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/view/View;->resolveRtlPropertiesIfNeeded()Z+]Landroid/view/View;missing_types +HSPLandroid/view/View;->resolveDrawables()V +HSPLandroid/view/View;->resolveLayoutDirection()Z +HSPLandroid/view/View;->resolveLayoutParams()V +HSPLandroid/view/View;->resolvePadding()V +HSPLandroid/view/View;->resolveRtlPropertiesIfNeeded()Z HSPLandroid/view/View;->resolveSize(II)I HSPLandroid/view/View;->resolveSizeAndState(III)I -HSPLandroid/view/View;->resolveTextAlignment()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resolveTextDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types +HSPLandroid/view/View;->resolveTextAlignment()Z +HSPLandroid/view/View;->resolveTextDirection()Z HSPLandroid/view/View;->restoreHierarchyState(Landroid/util/SparseArray;)V HSPLandroid/view/View;->retrieveExplicitStyle(Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;)V HSPLandroid/view/View;->rootViewRequestFocus()Z @@ -17493,53 +17454,53 @@ HSPLandroid/view/View;->setAccessibilityTraversalBefore(I)V HSPLandroid/view/View;->setActivated(Z)V HSPLandroid/view/View;->setAlpha(F)V HSPLandroid/view/View;->setAlphaInternal(F)V -HSPLandroid/view/View;->setAlphaNoInvalidation(F)Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->setAlphaNoInvalidation(F)Z HSPLandroid/view/View;->setAnimation(Landroid/view/animation/Animation;)V HSPLandroid/view/View;->setAutoHandwritingEnabled(Z)V HSPLandroid/view/View;->setAutofilled(ZZ)V HSPLandroid/view/View;->setBackground(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/view/View;->setBackgroundBounds()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/view/View;->setBackgroundBounds()V HSPLandroid/view/View;->setBackgroundColor(I)V -HSPLandroid/view/View;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/view/View;->setBackgroundRenderNodeProperties(Landroid/graphics/RenderNode;)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V +HSPLandroid/view/View;->setBackgroundRenderNodeProperties(Landroid/graphics/RenderNode;)V HSPLandroid/view/View;->setBackgroundResource(I)V HSPLandroid/view/View;->setBackgroundTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/view/View;->setBottom(I)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types +HSPLandroid/view/View;->setBottom(I)V HSPLandroid/view/View;->setClickable(Z)V HSPLandroid/view/View;->setClipBounds(Landroid/graphics/Rect;)V HSPLandroid/view/View;->setClipToOutline(Z)V HSPLandroid/view/View;->setContentDescription(Ljava/lang/CharSequence;)V HSPLandroid/view/View;->setDefaultFocusHighlightEnabled(Z)V HSPLandroid/view/View;->setDetached(Z)V -HSPLandroid/view/View;->setDisplayListProperties(Landroid/graphics/RenderNode;)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->setDisplayListProperties(Landroid/graphics/RenderNode;)V HSPLandroid/view/View;->setDrawingCacheEnabled(Z)V HSPLandroid/view/View;->setElevation(F)V HSPLandroid/view/View;->setEnabled(Z)V HSPLandroid/view/View;->setFitsSystemWindows(Z)V -HSPLandroid/view/View;->setFlags(II)V+]Landroid/view/View;megamorphic_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewParent;missing_types]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; +HSPLandroid/view/View;->setFlags(II)V HSPLandroid/view/View;->setFocusable(I)V HSPLandroid/view/View;->setFocusable(Z)V HSPLandroid/view/View;->setFocusableInTouchMode(Z)V HSPLandroid/view/View;->setForeground(Landroid/graphics/drawable/Drawable;)V HSPLandroid/view/View;->setForegroundGravity(I)V -HSPLandroid/view/View;->setFrame(IIII)Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->setFrame(IIII)Z HSPLandroid/view/View;->setHandwritingArea(Landroid/graphics/Rect;)V HSPLandroid/view/View;->setHapticFeedbackEnabled(Z)V HSPLandroid/view/View;->setHasTransientState(Z)V HSPLandroid/view/View;->setHorizontalFadingEdgeEnabled(Z)V HSPLandroid/view/View;->setHorizontalScrollBarEnabled(Z)V HSPLandroid/view/View;->setId(I)V -HSPLandroid/view/View;->setImportantForAccessibility(I)V+]Landroid/view/View;megamorphic_types +HSPLandroid/view/View;->setImportantForAccessibility(I)V HSPLandroid/view/View;->setImportantForAutofill(I)V HSPLandroid/view/View;->setImportantForContentCapture(I)V HSPLandroid/view/View;->setIsRootNamespace(Z)V HSPLandroid/view/View;->setKeepScreenOn(Z)V HSPLandroid/view/View;->setKeyboardNavigationCluster(Z)V -HSPLandroid/view/View;->setKeyedTag(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/view/View;->setKeyedTag(ILjava/lang/Object;)V HSPLandroid/view/View;->setLayerPaint(Landroid/graphics/Paint;)V HSPLandroid/view/View;->setLayerType(ILandroid/graphics/Paint;)V HSPLandroid/view/View;->setLayoutDirection(I)V -HSPLandroid/view/View;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/View;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/View;->setLeft(I)V HSPLandroid/view/View;->setLeftTopRightBottom(IIII)V HSPLandroid/view/View;->setLongClickable(Z)V @@ -17564,14 +17525,14 @@ HSPLandroid/view/View;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V HSPLandroid/view/View;->setOutlineProviderFromAttribute(I)V HSPLandroid/view/View;->setOutlineSpotShadowColor(I)V HSPLandroid/view/View;->setOverScrollMode(I)V -HSPLandroid/view/View;->setPadding(IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->setPadding(IIII)V HSPLandroid/view/View;->setPaddingRelative(IIII)V HSPLandroid/view/View;->setPivotX(F)V HSPLandroid/view/View;->setPivotY(F)V HSPLandroid/view/View;->setPointerIcon(Landroid/view/PointerIcon;)V HSPLandroid/view/View;->setPressed(Z)V HSPLandroid/view/View;->setRenderEffect(Landroid/graphics/RenderEffect;)V -HSPLandroid/view/View;->setRight(I)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/view/View;->setRight(I)V HSPLandroid/view/View;->setRotation(F)V HSPLandroid/view/View;->setRotationX(F)V HSPLandroid/view/View;->setRotationY(F)V @@ -17603,13 +17564,13 @@ HSPLandroid/view/View;->setTranslationX(F)V HSPLandroid/view/View;->setTranslationY(F)V HSPLandroid/view/View;->setTranslationZ(F)V HSPLandroid/view/View;->setVerticalScrollBarEnabled(Z)V -HSPLandroid/view/View;->setVisibility(I)V+]Landroid/view/View;missing_types +HSPLandroid/view/View;->setVisibility(I)V HSPLandroid/view/View;->setWillNotDraw(Z)V HSPLandroid/view/View;->setX(F)V HSPLandroid/view/View;->setY(F)V -HSPLandroid/view/View;->shouldDrawRoundScrollbar()Z+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/view/View;->sizeChange(IIII)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; -HSPLandroid/view/View;->skipInvalidate()Z+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/View;->shouldDrawRoundScrollbar()Z +HSPLandroid/view/View;->sizeChange(IIII)V +HSPLandroid/view/View;->skipInvalidate()Z HSPLandroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V HSPLandroid/view/View;->startNestedScroll(I)Z HSPLandroid/view/View;->stopNestedScroll()V @@ -17617,15 +17578,15 @@ HSPLandroid/view/View;->switchDefaultFocusHighlight()V HSPLandroid/view/View;->toString()Ljava/lang/String; HSPLandroid/view/View;->transformFromViewToWindowSpace([I)V HSPLandroid/view/View;->unFocus(Landroid/view/View;)V -HSPLandroid/view/View;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; +HSPLandroid/view/View;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/view/View;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;)V -HSPLandroid/view/View;->updateDisplayListIfDirty()Landroid/graphics/RenderNode;+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;Landroid/view/ViewOverlay$OverlayViewGroup;]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; +HSPLandroid/view/View;->updateDisplayListIfDirty()Landroid/graphics/RenderNode; HSPLandroid/view/View;->updateFocusedInCluster(Landroid/view/View;I)V HSPLandroid/view/View;->updateHandwritingArea()V HSPLandroid/view/View;->updateKeepClearRects()V HSPLandroid/view/View;->updateLocalSystemUiVisibility(II)Z HSPLandroid/view/View;->updatePflags3AndNotifyA11yIfChanged(IZ)V -HSPLandroid/view/View;->updatePositionUpdateListener()V+]Landroid/view/View;missing_types]Ljava/util/List;Ljava/util/Collections$EmptyList; +HSPLandroid/view/View;->updatePositionUpdateListener()V HSPLandroid/view/View;->updatePreferKeepClearForFocus()V HSPLandroid/view/View;->updateSystemGestureExclusionRects()V HSPLandroid/view/View;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z @@ -17634,7 +17595,7 @@ HSPLandroid/view/ViewAnimationHostBridge;-><init>(Landroid/view/View;)V HSPLandroid/view/ViewAnimationHostBridge;->isAttached()Z HSPLandroid/view/ViewAnimationHostBridge;->registerVectorDrawableAnimator(Landroid/view/NativeVectorDrawableAnimator;)V HSPLandroid/view/ViewConfiguration;-><init>(Landroid/content/Context;)V -HSPLandroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLandroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration; HSPLandroid/view/ViewConfiguration;->getDoubleTapTimeout()I HSPLandroid/view/ViewConfiguration;->getLongPressTimeout()I HSPLandroid/view/ViewConfiguration;->getPressedStateDuration()I @@ -17681,9 +17642,9 @@ HSPLandroid/view/ViewGroup$LayoutParams;-><init>(II)V HSPLandroid/view/ViewGroup$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/view/ViewGroup$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup$LayoutParams;->resolveLayoutDirection(I)V -HSPLandroid/view/ViewGroup$LayoutParams;->setBaseAttributes(Landroid/content/res/TypedArray;II)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; +HSPLandroid/view/ViewGroup$LayoutParams;->setBaseAttributes(Landroid/content/res/TypedArray;II)V HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(II)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/ViewGroup$MarginLayoutParams;missing_types +HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$MarginLayoutParams;)V HSPLandroid/view/ViewGroup$MarginLayoutParams;->doResolveMargins()V @@ -17691,7 +17652,7 @@ HSPLandroid/view/ViewGroup$MarginLayoutParams;->getLayoutDirection()I HSPLandroid/view/ViewGroup$MarginLayoutParams;->getMarginEnd()I HSPLandroid/view/ViewGroup$MarginLayoutParams;->getMarginStart()I HSPLandroid/view/ViewGroup$MarginLayoutParams;->isMarginRelative()Z -HSPLandroid/view/ViewGroup$MarginLayoutParams;->resolveLayoutDirection(I)V+]Landroid/view/ViewGroup$MarginLayoutParams;missing_types +HSPLandroid/view/ViewGroup$MarginLayoutParams;->resolveLayoutDirection(I)V HSPLandroid/view/ViewGroup$MarginLayoutParams;->setLayoutDirection(I)V HSPLandroid/view/ViewGroup$MarginLayoutParams;->setMarginEnd(I)V HSPLandroid/view/ViewGroup$MarginLayoutParams;->setMarginStart(I)V @@ -17709,12 +17670,12 @@ HSPLandroid/view/ViewGroup;->addTouchTarget(Landroid/view/View;I)Landroid/view/V HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;I)V HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;II)V -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup;->addViewInLayout(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)Z HSPLandroid/view/ViewGroup;->addViewInLayout(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)Z -HSPLandroid/view/ViewGroup;->addViewInner(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V+]Landroid/animation/LayoutTransition;Landroid/animation/LayoutTransition;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->addViewInner(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V +HSPLandroid/view/ViewGroup;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup;->bringChildToFront(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->buildOrderedChildList()Ljava/util/ArrayList; HSPLandroid/view/ViewGroup;->buildTouchDispatchChildList()Ljava/util/ArrayList; @@ -17731,20 +17692,20 @@ HSPLandroid/view/ViewGroup;->clearDisappearingChildren()V HSPLandroid/view/ViewGroup;->clearFocus()V HSPLandroid/view/ViewGroup;->clearFocusedInCluster()V HSPLandroid/view/ViewGroup;->clearTouchTargets()V -HSPLandroid/view/ViewGroup;->destroyHardwareResources()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->destroyHardwareResources()V HSPLandroid/view/ViewGroup;->detachAllViewsFromParent()V HSPLandroid/view/ViewGroup;->detachViewFromParent(I)V HSPLandroid/view/ViewGroup;->dispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/ViewGroup;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->dispatchCancelPendingInputEvents()V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V +HSPLandroid/view/ViewGroup;->dispatchCancelPendingInputEvents()V +HSPLandroid/view/ViewGroup;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V HSPLandroid/view/ViewGroup;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V HSPLandroid/view/ViewGroup;->dispatchDetachedFromWindow()V -HSPLandroid/view/ViewGroup;->dispatchDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/animation/LayoutAnimationController;Landroid/view/animation/LayoutAnimationController; +HSPLandroid/view/ViewGroup;->dispatchDraw(Landroid/graphics/Canvas;)V HSPLandroid/view/ViewGroup;->dispatchDrawableHotspotChanged(FF)V HSPLandroid/view/ViewGroup;->dispatchFinishTemporaryDetach()V HSPLandroid/view/ViewGroup;->dispatchFreezeSelfOnly(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchGetDisplayList()V+]Landroid/view/View;missing_types]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; +HSPLandroid/view/ViewGroup;->dispatchGetDisplayList()V HSPLandroid/view/ViewGroup;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z HSPLandroid/view/ViewGroup;->dispatchKeyEventPreIme(Landroid/view/KeyEvent;)Z HSPLandroid/view/ViewGroup;->dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V @@ -17758,18 +17719,18 @@ HSPLandroid/view/ViewGroup;->dispatchSetSelected(Z)V HSPLandroid/view/ViewGroup;->dispatchStartTemporaryDetach()V HSPLandroid/view/ViewGroup;->dispatchSystemUiVisibilityChanged(I)V HSPLandroid/view/ViewGroup;->dispatchThawSelfOnly(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewGroup;->dispatchTransformedTouchEvent(Landroid/view/MotionEvent;ZLandroid/view/View;I)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z +HSPLandroid/view/ViewGroup;->dispatchTransformedTouchEvent(Landroid/view/MotionEvent;ZLandroid/view/View;I)Z HSPLandroid/view/ViewGroup;->dispatchUnhandledKeyEvent(Landroid/view/KeyEvent;)Landroid/view/View; -HSPLandroid/view/ViewGroup;->dispatchViewAdded(Landroid/view/View;)V+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->dispatchViewAdded(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->dispatchViewRemoved(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->dispatchVisibilityAggregated(Z)Z+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchVisibilityChanged(Landroid/view/View;I)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchWindowFocusChanged(Z)V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->dispatchVisibilityAggregated(Z)Z +HSPLandroid/view/ViewGroup;->dispatchVisibilityChanged(Landroid/view/View;I)V +HSPLandroid/view/ViewGroup;->dispatchWindowFocusChanged(Z)V HSPLandroid/view/ViewGroup;->dispatchWindowInsetsAnimationEnd(Landroid/view/WindowInsetsAnimation;)V HSPLandroid/view/ViewGroup;->dispatchWindowSystemUiVisiblityChanged(I)V -HSPLandroid/view/ViewGroup;->dispatchWindowVisibilityChanged(I)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->dispatchWindowVisibilityChanged(I)V +HSPLandroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z HSPLandroid/view/ViewGroup;->drawableStateChanged()V HSPLandroid/view/ViewGroup;->endViewTransition(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->exitHoverTargets()V @@ -17778,7 +17739,7 @@ HSPLandroid/view/ViewGroup;->findFocus()Landroid/view/View; HSPLandroid/view/ViewGroup;->findOnBackInvokedDispatcherForChild(Landroid/view/View;Landroid/view/View;)Landroid/window/OnBackInvokedDispatcher; HSPLandroid/view/ViewGroup;->findViewByAutofillIdTraversal(I)Landroid/view/View; HSPLandroid/view/ViewGroup;->findViewByPredicateTraversal(Ljava/util/function/Predicate;Landroid/view/View;)Landroid/view/View; -HSPLandroid/view/ViewGroup;->findViewTraversal(I)Landroid/view/View;+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->findViewTraversal(I)Landroid/view/View; HSPLandroid/view/ViewGroup;->findViewWithTagTraversal(Ljava/lang/Object;)Landroid/view/View; HSPLandroid/view/ViewGroup;->finishAnimatingView(Landroid/view/View;Landroid/view/animation/Animation;)V HSPLandroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View; @@ -17788,13 +17749,13 @@ HSPLandroid/view/ViewGroup;->generateDefaultLayoutParams()Landroid/view/ViewGrou HSPLandroid/view/ViewGroup;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; HSPLandroid/view/ViewGroup;->getAccessibilityClassName()Ljava/lang/CharSequence; HSPLandroid/view/ViewGroup;->getAndVerifyPreorderedIndex(IIZ)I -HSPLandroid/view/ViewGroup;->getAndVerifyPreorderedView(Ljava/util/ArrayList;[Landroid/view/View;I)Landroid/view/View;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/ViewGroup;->getAndVerifyPreorderedView(Ljava/util/ArrayList;[Landroid/view/View;I)Landroid/view/View; HSPLandroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; HSPLandroid/view/ViewGroup;->getChildCount()I HSPLandroid/view/ViewGroup;->getChildMeasureSpec(III)I HSPLandroid/view/ViewGroup;->getChildTransformation()Landroid/view/animation/Transformation; HSPLandroid/view/ViewGroup;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;)Z -HSPLandroid/view/ViewGroup;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewParent;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewGroup;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;Z)Z HSPLandroid/view/ViewGroup;->getChildrenForAutofill(I)Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; HSPLandroid/view/ViewGroup;->getChildrenForContentCapture()Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; HSPLandroid/view/ViewGroup;->getClipChildren()Z @@ -17820,22 +17781,22 @@ HSPLandroid/view/ViewGroup;->hasTransientState()Z HSPLandroid/view/ViewGroup;->hasUnhandledKeyListener()Z HSPLandroid/view/ViewGroup;->hasWindowInsetsAnimationCallback()Z HSPLandroid/view/ViewGroup;->indexOfChild(Landroid/view/View;)I -HSPLandroid/view/ViewGroup;->initFromAttributes(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->initViewGroup()V+]Landroid/content/Context;missing_types]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->initFromAttributes(Landroid/content/Context;Landroid/util/AttributeSet;II)V +HSPLandroid/view/ViewGroup;->initViewGroup()V HSPLandroid/view/ViewGroup;->internalSetPadding(IIII)V -HSPLandroid/view/ViewGroup;->invalidateChild(Landroid/view/View;Landroid/graphics/Rect;)V+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->invalidateChild(Landroid/view/View;Landroid/graphics/Rect;)V HSPLandroid/view/ViewGroup;->invalidateChildInParent([ILandroid/graphics/Rect;)Landroid/view/ViewParent; HSPLandroid/view/ViewGroup;->isChildrenDrawingOrderEnabled()Z HSPLandroid/view/ViewGroup;->isLayoutModeOptical()Z HSPLandroid/view/ViewGroup;->isLayoutSuppressed()Z HSPLandroid/view/ViewGroup;->isTransformedTouchPointInView(FFLandroid/view/View;Landroid/graphics/PointF;)Z HSPLandroid/view/ViewGroup;->isViewTransitioning(Landroid/view/View;)Z -HSPLandroid/view/ViewGroup;->jumpDrawablesToCurrentState()V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->jumpDrawablesToCurrentState()V HSPLandroid/view/ViewGroup;->layout(IIII)V HSPLandroid/view/ViewGroup;->makeFrameworkOptionalFitsSystemWindows()V HSPLandroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V HSPLandroid/view/ViewGroup;->measureChild(Landroid/view/View;II)V -HSPLandroid/view/ViewGroup;->measureChildWithMargins(Landroid/view/View;IIII)V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->measureChildWithMargins(Landroid/view/View;IIII)V HSPLandroid/view/ViewGroup;->measureChildren(II)V HSPLandroid/view/ViewGroup;->newDispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; HSPLandroid/view/ViewGroup;->notifySubtreeAccessibilityStateChangedIfNeeded()V @@ -17844,19 +17805,19 @@ HSPLandroid/view/ViewGroup;->offsetRectBetweenParentAndChild(Landroid/view/View; HSPLandroid/view/ViewGroup;->onAttachedToWindow()V HSPLandroid/view/ViewGroup;->onChildVisibilityChanged(Landroid/view/View;II)V HSPLandroid/view/ViewGroup;->onCreateDrawableState(I)[I -HSPLandroid/view/ViewGroup;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V+]Landroid/view/ViewParent;missing_types +HSPLandroid/view/ViewGroup;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V HSPLandroid/view/ViewGroup;->onDescendantUnbufferedRequested()V HSPLandroid/view/ViewGroup;->onDetachedFromWindow()V HSPLandroid/view/ViewGroup;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z HSPLandroid/view/ViewGroup;->onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z -HSPLandroid/view/ViewGroup;->onSetLayoutParams(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->onSetLayoutParams(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/ViewGroup;->onStartNestedScroll(Landroid/view/View;Landroid/view/View;I)Z HSPLandroid/view/ViewGroup;->onViewAdded(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->onViewRemoved(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->populateChildrenForAutofill(Ljava/util/ArrayList;I)V HSPLandroid/view/ViewGroup;->populateChildrenForContentCapture(Ljava/util/ArrayList;)V HSPLandroid/view/ViewGroup;->recomputeViewAttributes(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->recreateChildDisplayList(Landroid/view/View;)V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->recreateChildDisplayList(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->removeAllViews()V HSPLandroid/view/ViewGroup;->removeAllViewsInLayout()V HSPLandroid/view/ViewGroup;->removeDetachedView(Landroid/view/View;Z)V @@ -17875,18 +17836,18 @@ HSPLandroid/view/ViewGroup;->requestFocus(ILandroid/graphics/Rect;)Z HSPLandroid/view/ViewGroup;->requestTransitionStart(Landroid/animation/LayoutTransition;)V HSPLandroid/view/ViewGroup;->requestTransparentRegion(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->resetCancelNextUpFlag(Landroid/view/View;)Z -HSPLandroid/view/ViewGroup;->resetResolvedDrawables()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedLayoutDirection()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedPadding()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedTextAlignment()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedTextDirection()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetSubtreeAccessibilityStateChanged()V+]Landroid/view/View;missing_types +HSPLandroid/view/ViewGroup;->resetResolvedDrawables()V +HSPLandroid/view/ViewGroup;->resetResolvedLayoutDirection()V +HSPLandroid/view/ViewGroup;->resetResolvedPadding()V +HSPLandroid/view/ViewGroup;->resetResolvedTextAlignment()V +HSPLandroid/view/ViewGroup;->resetResolvedTextDirection()V +HSPLandroid/view/ViewGroup;->resetSubtreeAccessibilityStateChanged()V HSPLandroid/view/ViewGroup;->resetTouchState()V HSPLandroid/view/ViewGroup;->resolveDrawables()V HSPLandroid/view/ViewGroup;->resolveLayoutDirection()Z -HSPLandroid/view/ViewGroup;->resolveLayoutParams()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resolvePadding()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resolveRtlPropertiesIfNeeded()Z+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types +HSPLandroid/view/ViewGroup;->resolveLayoutParams()V +HSPLandroid/view/ViewGroup;->resolvePadding()V +HSPLandroid/view/ViewGroup;->resolveRtlPropertiesIfNeeded()Z HSPLandroid/view/ViewGroup;->resolveTextAlignment()Z HSPLandroid/view/ViewGroup;->resolveTextDirection()Z HSPLandroid/view/ViewGroup;->restoreDefaultFocus()Z @@ -17906,13 +17867,13 @@ HSPLandroid/view/ViewGroup;->shouldBlockFocusForTouchscreen()Z HSPLandroid/view/ViewGroup;->shouldDelayChildPressedState()Z HSPLandroid/view/ViewGroup;->startViewTransition(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->suppressLayout(Z)V -HSPLandroid/view/ViewGroup;->touchAccessibilityNodeProviderIfNeeded(Landroid/view/View;)V+]Landroid/content/Context;missing_types +HSPLandroid/view/ViewGroup;->touchAccessibilityNodeProviderIfNeeded(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->transformPointToViewLocal([FLandroid/view/View;)V HSPLandroid/view/ViewGroup;->unFocus(Landroid/view/View;)V HSPLandroid/view/ViewGroup;->updateLocalSystemUiVisibility(II)Z HSPLandroid/view/ViewGroupOverlay;->add(Landroid/view/View;)V HSPLandroid/view/ViewGroupOverlay;->remove(Landroid/view/View;)V -HSPLandroid/view/ViewOutlineProvider$1;->getOutline(Landroid/view/View;Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types +HSPLandroid/view/ViewOutlineProvider$1;->getOutline(Landroid/view/View;Landroid/graphics/Outline;)V HSPLandroid/view/ViewOutlineProvider$2;->getOutline(Landroid/view/View;Landroid/graphics/Outline;)V HSPLandroid/view/ViewOutlineProvider;-><init>()V HSPLandroid/view/ViewOverlay$OverlayViewGroup;-><init>(Landroid/content/Context;Landroid/view/View;)V @@ -17938,7 +17899,7 @@ HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;-><init>(Landroid/vi HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationCancel(Landroid/animation/Animator;)V HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationEnd(Landroid/animation/Animator;)V HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationUpdate(Landroid/animation/ValueAnimator;)V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationUpdate(Landroid/animation/ValueAnimator;)V HSPLandroid/view/ViewPropertyAnimator$NameValuesHolder;-><init>(IFF)V HSPLandroid/view/ViewPropertyAnimator$PropertyBundle;-><init>(ILjava/util/ArrayList;)V HSPLandroid/view/ViewPropertyAnimator$PropertyBundle;->cancel(I)Z @@ -17978,7 +17939,7 @@ HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;-><init>(Landroid/view/View HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processKeyEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processMotionEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; +HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$HighContrastTextManager;-><init>(Landroid/view/ViewRootImpl;)V HSPLandroid/view/ViewRootImpl$ImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V HSPLandroid/view/ViewRootImpl$ImeInputStage;->onFinishedInputEvent(Ljava/lang/Object;Z)V @@ -17993,13 +17954,13 @@ HSPLandroid/view/ViewRootImpl$InputStage;->forward(Landroid/view/ViewRootImpl$Qu HSPLandroid/view/ViewRootImpl$InputStage;->onDeliverToNext(Landroid/view/ViewRootImpl$QueuedInputEvent;)V HSPLandroid/view/ViewRootImpl$InputStage;->onDetachedFromWindow()V HSPLandroid/view/ViewRootImpl$InputStage;->onWindowFocusChanged(Z)V -HSPLandroid/view/ViewRootImpl$InputStage;->shouldDropInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)Z+]Landroid/view/InputEvent;Landroid/view/MotionEvent; -HSPLandroid/view/ViewRootImpl$InputStage;->traceEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;J)V+]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/view/ViewRootImpl$EarlyPostImeInputStage;,Landroid/view/ViewRootImpl$NativePostImeInputStage;,Landroid/view/ViewRootImpl$SyntheticInputStage;,Landroid/view/ViewRootImpl$ViewPostImeInputStage;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/view/ViewRootImpl$InputStage;->shouldDropInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)Z +HSPLandroid/view/ViewRootImpl$InputStage;->traceEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;J)V HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->addView(Landroid/view/View;)V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->postIfNeededLocked()V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->removeView(Landroid/view/View;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->run()V+]Landroid/view/View;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->addView(Landroid/view/View;)V +HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->postIfNeededLocked()V +HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->removeView(Landroid/view/View;)V +HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->run()V HSPLandroid/view/ViewRootImpl$NativePostImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V HSPLandroid/view/ViewRootImpl$NativePostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$NativePreImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V @@ -18022,9 +17983,8 @@ HSPLandroid/view/ViewRootImpl$SyntheticTrackballHandler;-><init>(Landroid/view/V HSPLandroid/view/ViewRootImpl$SystemUiVisibilityInfo;-><init>()V HSPLandroid/view/ViewRootImpl$TrackballAxis;-><init>()V HSPLandroid/view/ViewRootImpl$TraversalRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$TraversalRunnable;->run()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl$TraversalRunnable;->run()V HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;-><init>()V -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;-><init>(Landroid/view/ViewRootImpl$UnhandledKeyManager-IA;)V HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->dispatch(Landroid/view/View;Landroid/view/KeyEvent;)Z HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->preDispatch(Landroid/view/KeyEvent;)V HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->preViewDispatch(Landroid/view/KeyEvent;)Z @@ -18033,7 +17993,7 @@ HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->maybeUpdatePointerIcon(Lan HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->onDeliverToNext(Landroid/view/ViewRootImpl$QueuedInputEvent;)V HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->processKeyEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I+]Landroid/view/HandwritingInitiator;Landroid/view/HandwritingInitiator;]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; +HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$ViewPreImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;)V HSPLandroid/view/ViewRootImpl$ViewPreImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I HSPLandroid/view/ViewRootImpl$ViewRootHandler;-><init>(Landroid/view/ViewRootImpl;)V @@ -18055,7 +18015,7 @@ HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmBlastBufferQueue(Landroid/view/View HSPLandroid/view/ViewRootImpl;->-$$Nest$fputmProfileRendering(Landroid/view/ViewRootImpl;Z)V HSPLandroid/view/ViewRootImpl;->-$$Nest$mprofileRendering(Landroid/view/ViewRootImpl;Z)V HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;)V -HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;Landroid/view/IWindowSession;Landroid/view/WindowLayout;)V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowLeaked;Landroid/view/WindowLeaked;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/Optional;Ljava/util/Optional; +HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;Landroid/view/IWindowSession;Landroid/view/WindowLayout;)V HSPLandroid/view/ViewRootImpl;->addConfigCallback(Landroid/view/ViewRootImpl$ConfigChangedCallback;)V HSPLandroid/view/ViewRootImpl;->addFrameCommitCallbackIfNeeded()V HSPLandroid/view/ViewRootImpl;->addSurfaceChangedCallback(Landroid/view/ViewRootImpl$SurfaceChangedCallback;)V @@ -18063,17 +18023,17 @@ HSPLandroid/view/ViewRootImpl;->addWindowCallbacks(Landroid/view/WindowCallbacks HSPLandroid/view/ViewRootImpl;->applyKeepScreenOnFlag(Landroid/view/WindowManager$LayoutParams;)V HSPLandroid/view/ViewRootImpl;->applyTransactionOnDraw(Landroid/view/SurfaceControl$Transaction;)Z HSPLandroid/view/ViewRootImpl;->canResolveTextDirection()Z -HSPLandroid/view/ViewRootImpl;->cancelInvalidate(Landroid/view/View;)V+]Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler; +HSPLandroid/view/ViewRootImpl;->cancelInvalidate(Landroid/view/View;)V HSPLandroid/view/ViewRootImpl;->checkForLeavingTouchModeAndConsume(Landroid/view/KeyEvent;)Z HSPLandroid/view/ViewRootImpl;->checkThread()V HSPLandroid/view/ViewRootImpl;->childDrawableStateChanged(Landroid/view/View;)V HSPLandroid/view/ViewRootImpl;->childHasTransientStateChanged(Landroid/view/View;Z)V HSPLandroid/view/ViewRootImpl;->clearChildFocus(Landroid/view/View;)V HSPLandroid/view/ViewRootImpl;->clearLowProfileModeIfNeeded(IZ)V -HSPLandroid/view/ViewRootImpl;->collectViewAttributes()Z+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; +HSPLandroid/view/ViewRootImpl;->collectViewAttributes()Z HSPLandroid/view/ViewRootImpl;->controlInsetsForCompatibility(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ViewRootImpl;->createSyncIfNeeded()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/window/SurfaceSyncGroup;Landroid/window/SurfaceSyncGroup;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->deliverInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)V+]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Landroid/view/ViewRootImpl$InputStage;Landroid/view/ViewRootImpl$EarlyPostImeInputStage;]Landroid/view/ViewRootImpl$QueuedInputEvent;Landroid/view/ViewRootImpl$QueuedInputEvent;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/view/ViewRootImpl;->createSyncIfNeeded()V +HSPLandroid/view/ViewRootImpl;->deliverInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)V HSPLandroid/view/ViewRootImpl;->destroyHardwareRenderer()V HSPLandroid/view/ViewRootImpl;->destroyHardwareResources()V HSPLandroid/view/ViewRootImpl;->destroySurface()V @@ -18090,15 +18050,14 @@ HSPLandroid/view/ViewRootImpl;->dispatchInvalidateOnAnimation(Landroid/view/View HSPLandroid/view/ViewRootImpl;->dispatchMoved(II)V HSPLandroid/view/ViewRootImpl;->doConsumeBatchedInput(J)Z HSPLandroid/view/ViewRootImpl;->doDie()V -HSPLandroid/view/ViewRootImpl;->doProcessInputEvents()V+]Landroid/view/InputEventAssigner;Landroid/view/InputEventAssigner;]Landroid/view/ViewFrameInfo;Landroid/view/ViewFrameInfo; -HSPLandroid/view/ViewRootImpl;->doTraversal()V+]Landroid/os/Looper;Landroid/os/Looper;]Landroid/os/MessageQueue;Landroid/os/MessageQueue;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler; -HSPLandroid/view/ViewRootImpl;->draw(ZLandroid/window/SurfaceSyncGroup;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/HdrRenderState;Landroid/view/HdrRenderState;]Landroid/view/Surface;Landroid/view/Surface;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver; +HSPLandroid/view/ViewRootImpl;->doProcessInputEvents()V +HSPLandroid/view/ViewRootImpl;->doTraversal()V +HSPLandroid/view/ViewRootImpl;->draw(ZLandroid/window/SurfaceSyncGroup;Z)Z HSPLandroid/view/ViewRootImpl;->drawAccessibilityFocusedDrawableIfNeeded(Landroid/graphics/Canvas;)V HSPLandroid/view/ViewRootImpl;->drawSoftware(Landroid/view/Surface;Landroid/view/View$AttachInfo;IIZLandroid/graphics/Rect;Landroid/graphics/Rect;)Z HSPLandroid/view/ViewRootImpl;->enableHardwareAcceleration(Landroid/view/WindowManager$LayoutParams;)V HSPLandroid/view/ViewRootImpl;->endDragResizing()V HSPLandroid/view/ViewRootImpl;->enqueueInputEvent(Landroid/view/InputEvent;)V -HSPLandroid/view/ViewRootImpl;->enqueueInputEvent(Landroid/view/InputEvent;Landroid/view/InputEventReceiver;IZ)V HSPLandroid/view/ViewRootImpl;->ensureTouchMode(Z)Z HSPLandroid/view/ViewRootImpl;->ensureTouchModeLocally(Z)Z HSPLandroid/view/ViewRootImpl;->enterTouchMode()Z @@ -18114,10 +18073,10 @@ HSPLandroid/view/ViewRootImpl;->getAutofillManager()Landroid/view/autofill/Autof HSPLandroid/view/ViewRootImpl;->getBufferTransformHint()I HSPLandroid/view/ViewRootImpl;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;)Z HSPLandroid/view/ViewRootImpl;->getCompatWindowConfiguration()Landroid/app/WindowConfiguration; -HSPLandroid/view/ViewRootImpl;->getConfiguration()Landroid/content/res/Configuration;+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLandroid/view/ViewRootImpl;->getConfiguration()Landroid/content/res/Configuration; HSPLandroid/view/ViewRootImpl;->getDisplayId()I HSPLandroid/view/ViewRootImpl;->getHandwritingInitiator()Landroid/view/HandwritingInitiator; -HSPLandroid/view/ViewRootImpl;->getHostVisibility()I+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; +HSPLandroid/view/ViewRootImpl;->getHostVisibility()I HSPLandroid/view/ViewRootImpl;->getImeFocusController()Landroid/view/ImeFocusController; HSPLandroid/view/ViewRootImpl;->getImpliedSystemUiVisibility(Landroid/view/WindowManager$LayoutParams;)I HSPLandroid/view/ViewRootImpl;->getInsetsController()Landroid/view/InsetsController; @@ -18126,7 +18085,7 @@ HSPLandroid/view/ViewRootImpl;->getOnBackInvokedDispatcher()Landroid/window/Wind HSPLandroid/view/ViewRootImpl;->getOrCreateSurfaceSyncGroup()Landroid/window/SurfaceSyncGroup; HSPLandroid/view/ViewRootImpl;->getParent()Landroid/view/ViewParent; HSPLandroid/view/ViewRootImpl;->getRootMeasureSpec(III)I -HSPLandroid/view/ViewRootImpl;->getRunQueue()Landroid/view/HandlerActionQueue;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; +HSPLandroid/view/ViewRootImpl;->getRunQueue()Landroid/view/HandlerActionQueue; HSPLandroid/view/ViewRootImpl;->getSurfaceControl()Landroid/view/SurfaceControl; HSPLandroid/view/ViewRootImpl;->getSurfaceSequenceId()I HSPLandroid/view/ViewRootImpl;->getTextDirection()I @@ -18137,19 +18096,20 @@ HSPLandroid/view/ViewRootImpl;->getView()Landroid/view/View; HSPLandroid/view/ViewRootImpl;->getViewBoundsSandboxingEnabled()Z HSPLandroid/view/ViewRootImpl;->getWindowBoundsInsetSystemBars()Landroid/graphics/Rect; HSPLandroid/view/ViewRootImpl;->getWindowFlags()I -HSPLandroid/view/ViewRootImpl;->getWindowInsets(Z)Landroid/view/WindowInsets;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/graphics/Insets;Landroid/graphics/Insets;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/WindowInsets;Landroid/view/WindowInsets; -HSPLandroid/view/ViewRootImpl;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->getWindowInsets(Z)Landroid/view/WindowInsets; +HSPLandroid/view/ViewRootImpl;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V HSPLandroid/view/ViewRootImpl;->handleAppVisibility(Z)V HSPLandroid/view/ViewRootImpl;->handleContentCaptureFlush()V HSPLandroid/view/ViewRootImpl;->handleDispatchSystemUiVisibilityChanged()V HSPLandroid/view/ViewRootImpl;->handleWindowFocusChanged()V -HSPLandroid/view/ViewRootImpl;->invalidate()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->invalidate()V HSPLandroid/view/ViewRootImpl;->invalidateChild(Landroid/view/View;Landroid/graphics/Rect;)V HSPLandroid/view/ViewRootImpl;->invalidateChildInParent([ILandroid/graphics/Rect;)Landroid/view/ViewParent; HSPLandroid/view/ViewRootImpl;->invalidateRectOnScreen(Landroid/graphics/Rect;)V +HSPLandroid/view/ViewRootImpl;->isAccessibilityFocusDirty()Z HSPLandroid/view/ViewRootImpl;->isContentCaptureEnabled()Z HSPLandroid/view/ViewRootImpl;->isContentCaptureReallyEnabled()Z -HSPLandroid/view/ViewRootImpl;->isHardwareEnabled()Z+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; +HSPLandroid/view/ViewRootImpl;->isHardwareEnabled()Z HSPLandroid/view/ViewRootImpl;->isInLayout()Z HSPLandroid/view/ViewRootImpl;->isInTouchMode()Z HSPLandroid/view/ViewRootImpl;->isInWMSRequestedSync()Z @@ -18164,28 +18124,28 @@ HSPLandroid/view/ViewRootImpl;->lambda$new$1(Landroid/view/View;)Ljava/util/List HSPLandroid/view/ViewRootImpl;->lambda$new$2(Landroid/view/View;)Ljava/util/List; HSPLandroid/view/ViewRootImpl;->loadSystemProperties()V HSPLandroid/view/ViewRootImpl;->maybeFireAccessibilityWindowStateChangedEvent()V -HSPLandroid/view/ViewRootImpl;->maybeHandleWindowMove(Landroid/graphics/Rect;)V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; +HSPLandroid/view/ViewRootImpl;->maybeHandleWindowMove(Landroid/graphics/Rect;)V HSPLandroid/view/ViewRootImpl;->maybeUpdateTooltip(Landroid/view/MotionEvent;)V -HSPLandroid/view/ViewRootImpl;->measureHierarchy(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/content/res/Resources;IIZ)Z+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; +HSPLandroid/view/ViewRootImpl;->measureHierarchy(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/content/res/Resources;IIZ)Z HSPLandroid/view/ViewRootImpl;->mergeWithNextTransaction(Landroid/view/SurfaceControl$Transaction;J)V HSPLandroid/view/ViewRootImpl;->notifyContentCaptureEvents()V -HSPLandroid/view/ViewRootImpl;->notifyDrawStarted(Z)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/ViewRootImpl;->notifyDrawStarted(Z)V HSPLandroid/view/ViewRootImpl;->notifyInsetsChanged()V -HSPLandroid/view/ViewRootImpl;->notifyRendererOfFramePending()V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; +HSPLandroid/view/ViewRootImpl;->notifyRendererOfFramePending()V HSPLandroid/view/ViewRootImpl;->notifySurfaceCreated(Landroid/view/SurfaceControl$Transaction;)V HSPLandroid/view/ViewRootImpl;->notifySurfaceDestroyed()V HSPLandroid/view/ViewRootImpl;->obtainQueuedInputEvent(Landroid/view/InputEvent;Landroid/view/InputEventReceiver;I)Landroid/view/ViewRootImpl$QueuedInputEvent; -HSPLandroid/view/ViewRootImpl;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V HSPLandroid/view/ViewRootImpl;->onDescendantUnbufferedRequested()V HSPLandroid/view/ViewRootImpl;->onMovedToDisplay(ILandroid/content/res/Configuration;)V HSPLandroid/view/ViewRootImpl;->onPostDraw(Landroid/graphics/RecordingCanvas;)V HSPLandroid/view/ViewRootImpl;->onPreDraw(Landroid/graphics/RecordingCanvas;)V HSPLandroid/view/ViewRootImpl;->onStartNestedScroll(Landroid/view/View;Landroid/view/View;I)Z HSPLandroid/view/ViewRootImpl;->performContentCaptureInitialReport()V -HSPLandroid/view/ViewRootImpl;->performDraw(Landroid/window/SurfaceSyncGroup;)Z+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->performLayout(Landroid/view/WindowManager$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->performMeasure(II)V+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl;->performTraversals()V+]Landroid/content/Context;missing_types]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Landroid/view/HandlerActionQueue;Landroid/view/HandlerActionQueue;]Landroid/view/ImeFocusController;Landroid/view/ImeFocusController;]Landroid/view/Surface;Landroid/view/Surface;]Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Landroid/window/SurfaceSyncGroup;Landroid/window/SurfaceSyncGroup;]Landroid/window/WindowOnBackInvokedDispatcher;Landroid/window/WindowOnBackInvokedDispatcher;]Lcom/android/internal/view/RootViewSurfaceTaker;Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/ViewRootImpl;->performDraw(Landroid/window/SurfaceSyncGroup;)Z +HSPLandroid/view/ViewRootImpl;->performLayout(Landroid/view/WindowManager$LayoutParams;II)V +HSPLandroid/view/ViewRootImpl;->performMeasure(II)V +HSPLandroid/view/ViewRootImpl;->performTraversals()V HSPLandroid/view/ViewRootImpl;->playSoundEffect(I)V HSPLandroid/view/ViewRootImpl;->pokeDrawLockIfNeeded()V HSPLandroid/view/ViewRootImpl;->prepareSurfaces()V @@ -18199,7 +18159,7 @@ HSPLandroid/view/ViewRootImpl;->registerCallbacksForSync(ZLandroid/window/Surfac HSPLandroid/view/ViewRootImpl;->registerCompatOnBackInvokedCallback()V HSPLandroid/view/ViewRootImpl;->registerListeners()V HSPLandroid/view/ViewRootImpl;->registerRtFrameCallback(Landroid/graphics/HardwareRenderer$FrameDrawingCallback;)V -HSPLandroid/view/ViewRootImpl;->relayoutWindow(Landroid/view/WindowManager$LayoutParams;IZ)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Landroid/view/Display;Landroid/view/Display;]Landroid/view/HdrRenderState;Landroid/view/HdrRenderState;]Landroid/view/IWindowSession;Landroid/view/IWindowSession$Stub$Proxy;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->relayoutWindow(Landroid/view/WindowManager$LayoutParams;IZ)I HSPLandroid/view/ViewRootImpl;->removeSendWindowContentChangedCallback()V HSPLandroid/view/ViewRootImpl;->removeSurfaceChangedCallback(Landroid/view/ViewRootImpl$SurfaceChangedCallback;)V HSPLandroid/view/ViewRootImpl;->removeWindowCallbacks(Landroid/view/WindowCallbacks;)V @@ -18209,25 +18169,25 @@ HSPLandroid/view/ViewRootImpl;->requestChildFocus(Landroid/view/View;Landroid/vi HSPLandroid/view/ViewRootImpl;->requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z HSPLandroid/view/ViewRootImpl;->requestDisallowInterceptTouchEvent(Z)V HSPLandroid/view/ViewRootImpl;->requestFitSystemWindows()V -HSPLandroid/view/ViewRootImpl;->requestLayout()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->requestLayout()V HSPLandroid/view/ViewRootImpl;->requestLayoutDuringLayout(Landroid/view/View;)Z HSPLandroid/view/ViewRootImpl;->requestTransparentRegion(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->scheduleConsumeBatchedInput()V+]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; -HSPLandroid/view/ViewRootImpl;->scheduleTraversals()V+]Landroid/os/Looper;Landroid/os/Looper;]Landroid/os/MessageQueue;Landroid/os/MessageQueue;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; +HSPLandroid/view/ViewRootImpl;->scheduleConsumeBatchedInput()V +HSPLandroid/view/ViewRootImpl;->scheduleTraversals()V HSPLandroid/view/ViewRootImpl;->scrollToRectOrFocus(Landroid/graphics/Rect;Z)Z -HSPLandroid/view/ViewRootImpl;->sendBackKeyEvent(I)V HSPLandroid/view/ViewRootImpl;->setAccessibilityFocus(Landroid/view/View;Landroid/view/accessibility/AccessibilityNodeInfo;)V HSPLandroid/view/ViewRootImpl;->setAccessibilityWindowAttributesIfNeeded()V HSPLandroid/view/ViewRootImpl;->setActivityConfigCallback(Landroid/view/ViewRootImpl$ActivityConfigCallback;)V HSPLandroid/view/ViewRootImpl;->setBoundsLayerCrop(Landroid/view/SurfaceControl$Transaction;)V HSPLandroid/view/ViewRootImpl;->setFrame(Landroid/graphics/Rect;Z)V -HSPLandroid/view/ViewRootImpl;->setLayoutParams(Landroid/view/WindowManager$LayoutParams;Z)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; +HSPLandroid/view/ViewRootImpl;->setLayoutParams(Landroid/view/WindowManager$LayoutParams;Z)V HSPLandroid/view/ViewRootImpl;->setOnContentApplyWindowInsetsListener(Landroid/view/Window$OnContentApplyWindowInsetsListener;)V HSPLandroid/view/ViewRootImpl;->setTag()V -HSPLandroid/view/ViewRootImpl;->setView(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/view/View;I)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/Display;Landroid/view/Display;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Landroid/view/FallbackEventHandler;Lcom/android/internal/policy/PhoneFallbackEventHandler;]Landroid/view/IWindowSession;Landroid/view/IWindowSession$Stub$Proxy;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/PendingInsetsController;Landroid/view/PendingInsetsController;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowLayout;Landroid/view/WindowLayout;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Lcom/android/internal/view/RootViewSurfaceTaker;Lcom/android/internal/policy/DecorView;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLandroid/view/ViewRootImpl;->setView(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/view/View;I)V HSPLandroid/view/ViewRootImpl;->setWindowStopped(Z)V HSPLandroid/view/ViewRootImpl;->shouldDispatchCutout()Z HSPLandroid/view/ViewRootImpl;->shouldOptimizeMeasure(Landroid/view/WindowManager$LayoutParams;)Z +HSPLandroid/view/ViewRootImpl;->shouldSetFrameRate()Z HSPLandroid/view/ViewRootImpl;->shouldUseDisplaySize(Landroid/view/WindowManager$LayoutParams;)Z HSPLandroid/view/ViewRootImpl;->systemGestureExclusionChanged()V HSPLandroid/view/ViewRootImpl;->unscheduleConsumeBatchedInput()V @@ -18237,7 +18197,7 @@ HSPLandroid/view/ViewRootImpl;->updateBoundsLayer(Landroid/view/SurfaceControl$T HSPLandroid/view/ViewRootImpl;->updateCompatSysUiVisibility(III)V HSPLandroid/view/ViewRootImpl;->updateCompatSystemUiVisibilityInfo(IIII)V HSPLandroid/view/ViewRootImpl;->updateConfiguration(I)V -HSPLandroid/view/ViewRootImpl;->updateContentDrawBounds()Z+]Landroid/view/WindowCallbacks;Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/ViewRootImpl;->updateContentDrawBounds()Z HSPLandroid/view/ViewRootImpl;->updateForceDarkMode()V HSPLandroid/view/ViewRootImpl;->updateInternalDisplay(ILandroid/content/res/Resources;)V HSPLandroid/view/ViewRootImpl;->updateKeepClearForAccessibilityFocusRect()V @@ -18410,13 +18370,13 @@ HSPLandroid/view/WindowInsets;->getSystemWindowInsetBottom()I HSPLandroid/view/WindowInsets;->getSystemWindowInsetLeft()I HSPLandroid/view/WindowInsets;->getSystemWindowInsetRight()I HSPLandroid/view/WindowInsets;->getSystemWindowInsetTop()I -HSPLandroid/view/WindowInsets;->getSystemWindowInsets()Landroid/graphics/Insets;+]Landroid/view/WindowInsets;Landroid/view/WindowInsets; +HSPLandroid/view/WindowInsets;->getSystemWindowInsets()Landroid/graphics/Insets; HSPLandroid/view/WindowInsets;->getSystemWindowInsetsAsRect()Landroid/graphics/Rect; HSPLandroid/view/WindowInsets;->inset(IIII)Landroid/view/WindowInsets; HSPLandroid/view/WindowInsets;->inset(Landroid/graphics/Insets;)Landroid/view/WindowInsets; HSPLandroid/view/WindowInsets;->insetInsets(Landroid/graphics/Insets;IIII)Landroid/graphics/Insets; HSPLandroid/view/WindowInsets;->insetInsets([Landroid/graphics/Insets;IIII)[Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->insetUnchecked(IIII)Landroid/view/WindowInsets;+]Landroid/view/PrivacyIndicatorBounds;Landroid/view/PrivacyIndicatorBounds;]Landroid/view/RoundedCorners;Landroid/view/RoundedCorners; +HSPLandroid/view/WindowInsets;->insetUnchecked(IIII)Landroid/view/WindowInsets; HSPLandroid/view/WindowInsets;->isConsumed()Z HSPLandroid/view/WindowInsets;->isRound()Z HSPLandroid/view/WindowInsets;->replaceSystemWindowInsets(IIII)Landroid/view/WindowInsets; @@ -18427,7 +18387,7 @@ HSPLandroid/view/WindowInsetsAnimation;->getTypeMask()I HSPLandroid/view/WindowInsetsAnimation;->setAlpha(F)V HSPLandroid/view/WindowLayout;-><clinit>()V HSPLandroid/view/WindowLayout;-><init>()V -HSPLandroid/view/WindowLayout;->computeFrames(Landroid/view/WindowManager$LayoutParams;Landroid/view/InsetsState;Landroid/graphics/Rect;Landroid/graphics/Rect;IIIIFLandroid/window/ClientWindowFrames;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/DisplayCutout;Landroid/view/DisplayCutout;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; +HSPLandroid/view/WindowLayout;->computeFrames(Landroid/view/WindowManager$LayoutParams;Landroid/view/InsetsState;Landroid/graphics/Rect;Landroid/graphics/Rect;IIIIFLandroid/window/ClientWindowFrames;)V HSPLandroid/view/WindowLayout;->computeSurfaceSize(Landroid/view/WindowManager$LayoutParams;Landroid/graphics/Rect;IILandroid/graphics/Rect;ZLandroid/graphics/Point;)V HSPLandroid/view/WindowLeaked;-><init>(Ljava/lang/String;)V HSPLandroid/view/WindowManager$LayoutParams$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/WindowManager$LayoutParams; @@ -18435,7 +18395,7 @@ HSPLandroid/view/WindowManager$LayoutParams$1;->createFromParcel(Landroid/os/Par HSPLandroid/view/WindowManager$LayoutParams;-><init>()V HSPLandroid/view/WindowManager$LayoutParams;-><init>(IIIII)V HSPLandroid/view/WindowManager$LayoutParams;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/WindowManager$LayoutParams;->copyFrom(Landroid/view/WindowManager$LayoutParams;)I+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/view/WindowManager$LayoutParams;->copyFrom(Landroid/view/WindowManager$LayoutParams;)I HSPLandroid/view/WindowManager$LayoutParams;->forRotation(I)Landroid/view/WindowManager$LayoutParams; HSPLandroid/view/WindowManager$LayoutParams;->getColorMode()I HSPLandroid/view/WindowManager$LayoutParams;->getFitInsetsSides()I @@ -18450,13 +18410,12 @@ HSPLandroid/view/WindowManager$LayoutParams;->setFitInsetsSides(I)V HSPLandroid/view/WindowManager$LayoutParams;->setFitInsetsTypes(I)V HSPLandroid/view/WindowManager$LayoutParams;->setSurfaceInsets(Landroid/view/View;ZZ)V HSPLandroid/view/WindowManager$LayoutParams;->setTitle(Ljava/lang/CharSequence;)V -HSPLandroid/view/WindowManager$LayoutParams;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/view/WindowManager$LayoutParams;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/WindowManager;->hasWindowExtensionsEnabled()Z HSPLandroid/view/WindowManagerGlobal$1;-><init>()V HSPLandroid/view/WindowManagerGlobal$2;-><init>(Landroid/view/WindowManagerGlobal;)V HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><clinit>()V HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><init>(Landroid/view/WindowManagerGlobal;)V -HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><init>(Landroid/view/WindowManagerGlobal;Landroid/view/WindowManagerGlobal$TrustedPresentationListener-IA;)V HSPLandroid/view/WindowManagerGlobal;-><init>()V HSPLandroid/view/WindowManagerGlobal;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;Landroid/view/Display;Landroid/view/Window;I)V HSPLandroid/view/WindowManagerGlobal;->closeAll(Landroid/os/IBinder;Ljava/lang/String;Ljava/lang/String;)V @@ -18473,7 +18432,7 @@ HSPLandroid/view/WindowManagerGlobal;->initialize()V HSPLandroid/view/WindowManagerGlobal;->peekWindowSession()Landroid/view/IWindowSession; HSPLandroid/view/WindowManagerGlobal;->removeView(Landroid/view/View;Z)V HSPLandroid/view/WindowManagerGlobal;->removeViewLocked(IZ)V -HSPLandroid/view/WindowManagerGlobal;->setStoppedState(Landroid/os/IBinder;Z)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowManagerGlobal;Landroid/view/WindowManagerGlobal;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/view/WindowManagerGlobal;->setStoppedState(Landroid/os/IBinder;Z)V HSPLandroid/view/WindowManagerGlobal;->trimMemory(I)V HSPLandroid/view/WindowManagerGlobal;->updateViewLayout(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/view/WindowManagerImpl;-><init>(Landroid/content/Context;)V @@ -18499,12 +18458,10 @@ HSPLandroid/view/accessibility/AccessibilityManager$1;->notifyServicesStateChang HSPLandroid/view/accessibility/AccessibilityManager$1;->setFocusAppearance(II)V HSPLandroid/view/accessibility/AccessibilityManager$1;->setState(I)V HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;-><init>(Landroid/view/accessibility/AccessibilityManager;)V -HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;-><init>(Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager$MyCallback-IA;)V HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;->handleMessage(Landroid/os/Message;)Z HSPLandroid/view/accessibility/AccessibilityManager;-><init>(Landroid/content/Context;Landroid/view/accessibility/IAccessibilityManager;I)V HSPLandroid/view/accessibility/AccessibilityManager;->addAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;)Z HSPLandroid/view/accessibility/AccessibilityManager;->addAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;Landroid/os/Handler;)V -HSPLandroid/view/accessibility/AccessibilityManager;->addHighTextContrastStateChangeListener(Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener;Landroid/os/Handler;)V HSPLandroid/view/accessibility/AccessibilityManager;->addTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;)Z HSPLandroid/view/accessibility/AccessibilityManager;->addTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;Landroid/os/Handler;)V HSPLandroid/view/accessibility/AccessibilityManager;->getEnabledAccessibilityServiceList(I)Ljava/util/List; @@ -18514,13 +18471,11 @@ HSPLandroid/view/accessibility/AccessibilityManager;->getRecommendedTimeoutMilli HSPLandroid/view/accessibility/AccessibilityManager;->getServiceLocked()Landroid/view/accessibility/IAccessibilityManager; HSPLandroid/view/accessibility/AccessibilityManager;->hasAnyDirectConnection()Z HSPLandroid/view/accessibility/AccessibilityManager;->initialFocusAppearanceLocked(Landroid/content/res/Resources;)V -HSPLandroid/view/accessibility/AccessibilityManager;->isEnabled()Z+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/accessibility/AccessibilityManager;->isHighTextContrastEnabled()Z +HSPLandroid/view/accessibility/AccessibilityManager;->isEnabled()Z HSPLandroid/view/accessibility/AccessibilityManager;->isTouchExplorationEnabled()Z HSPLandroid/view/accessibility/AccessibilityManager;->notifyAccessibilityStateChanged()V HSPLandroid/view/accessibility/AccessibilityManager;->registerSystemAction(Landroid/app/RemoteAction;I)V HSPLandroid/view/accessibility/AccessibilityManager;->removeAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;)Z -HSPLandroid/view/accessibility/AccessibilityManager;->removeHighTextContrastStateChangeListener(Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener;)V HSPLandroid/view/accessibility/AccessibilityManager;->removeTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;)Z HSPLandroid/view/accessibility/AccessibilityManager;->setStateLocked(I)V HSPLandroid/view/accessibility/AccessibilityManager;->tryConnectToServiceLocked(Landroid/view/accessibility/IAccessibilityManager;)V @@ -18530,8 +18485,8 @@ HSPLandroid/view/accessibility/AccessibilityManager;->updateFocusAppearanceLocke HSPLandroid/view/accessibility/AccessibilityManager;->updateUiTimeout(J)V HSPLandroid/view/accessibility/AccessibilityNodeIdManager;-><init>()V HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->getInstance()Landroid/view/accessibility/AccessibilityNodeIdManager; -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->registerViewWithId(Landroid/view/View;I)V+]Landroid/view/accessibility/WeakSparseArray;Landroid/view/accessibility/WeakSparseArray; -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->unregisterViewWithId(I)V+]Landroid/view/accessibility/WeakSparseArray;Landroid/view/accessibility/WeakSparseArray; +HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->registerViewWithId(Landroid/view/View;I)V +HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->unregisterViewWithId(I)V HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;-><init>(ILjava/lang/CharSequence;)V HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;->equals(Ljava/lang/Object;)Z HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;->getId()I @@ -18571,9 +18526,9 @@ HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->getTransaction HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HSPLandroid/view/accessibility/WeakSparseArray$WeakReferenceWithId;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;I)V HSPLandroid/view/accessibility/WeakSparseArray;-><init>()V -HSPLandroid/view/accessibility/WeakSparseArray;->append(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/accessibility/WeakSparseArray;->remove(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/accessibility/WeakSparseArray;->removeUnreachableValues()V+]Ljava/lang/ref/ReferenceQueue;Ljava/lang/ref/ReferenceQueue; +HSPLandroid/view/accessibility/WeakSparseArray;->append(ILjava/lang/Object;)V +HSPLandroid/view/accessibility/WeakSparseArray;->remove(I)V +HSPLandroid/view/accessibility/WeakSparseArray;->removeUnreachableValues()V HSPLandroid/view/animation/AccelerateDecelerateInterpolator;-><init>()V HSPLandroid/view/animation/AccelerateDecelerateInterpolator;->createNativeInterpolator()J HSPLandroid/view/animation/AccelerateDecelerateInterpolator;->getInterpolation(F)F @@ -18583,7 +18538,7 @@ HSPLandroid/view/animation/AccelerateInterpolator;-><init>(Landroid/content/res/ HSPLandroid/view/animation/AccelerateInterpolator;->getInterpolation(F)F HSPLandroid/view/animation/AlphaAnimation;-><init>(FF)V HSPLandroid/view/animation/AlphaAnimation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/AlphaAnimation;->applyTransformation(FLandroid/view/animation/Transformation;)V+]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; +HSPLandroid/view/animation/AlphaAnimation;->applyTransformation(FLandroid/view/animation/Transformation;)V HSPLandroid/view/animation/AlphaAnimation;->hasAlpha()Z HSPLandroid/view/animation/AlphaAnimation;->willChangeBounds()Z HSPLandroid/view/animation/AlphaAnimation;->willChangeTransformationMatrix()Z @@ -18592,7 +18547,7 @@ HSPLandroid/view/animation/Animation$3;->run()V HSPLandroid/view/animation/Animation$Description;-><init>()V HSPLandroid/view/animation/Animation$Description;->parseValue(Landroid/util/TypedValue;Landroid/content/Context;)Landroid/view/animation/Animation$Description; HSPLandroid/view/animation/Animation;-><init>()V -HSPLandroid/view/animation/Animation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; +HSPLandroid/view/animation/Animation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/view/animation/Animation;->cancel()V HSPLandroid/view/animation/Animation;->detach()V HSPLandroid/view/animation/Animation;->dispatchAnimationEnd()V @@ -18601,12 +18556,12 @@ HSPLandroid/view/animation/Animation;->ensureInterpolator()V HSPLandroid/view/animation/Animation;->finalize()V HSPLandroid/view/animation/Animation;->getDuration()J HSPLandroid/view/animation/Animation;->getFillAfter()Z -HSPLandroid/view/animation/Animation;->getInvalidateRegion(IIIILandroid/graphics/RectF;Landroid/view/animation/Transformation;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; +HSPLandroid/view/animation/Animation;->getInvalidateRegion(IIIILandroid/graphics/RectF;Landroid/view/animation/Transformation;)V HSPLandroid/view/animation/Animation;->getScaleFactor()F HSPLandroid/view/animation/Animation;->getStartOffset()J -HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;)Z+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation;]Ldalvik/system/CloseGuard;Ldalvik/system/CloseGuard; -HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;F)Z+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; -HSPLandroid/view/animation/Animation;->getTransformationAt(FLandroid/view/animation/Transformation;)V+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation;]Landroid/view/animation/Interpolator;Landroid/view/animation/AccelerateDecelerateInterpolator;,Landroid/view/animation/LinearInterpolator; +HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;)Z +HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;F)Z +HSPLandroid/view/animation/Animation;->getTransformationAt(FLandroid/view/animation/Transformation;)V HSPLandroid/view/animation/Animation;->hasAlpha()Z HSPLandroid/view/animation/Animation;->hasEnded()Z HSPLandroid/view/animation/Animation;->hasStarted()Z @@ -18660,17 +18615,16 @@ HSPLandroid/view/animation/AnimationSet;->willChangeTransformationMatrix()Z HSPLandroid/view/animation/AnimationUtils$1;->initialValue()Landroid/view/animation/AnimationUtils$AnimationState; HSPLandroid/view/animation/AnimationUtils$1;->initialValue()Ljava/lang/Object; HSPLandroid/view/animation/AnimationUtils$AnimationState;-><init>()V -HSPLandroid/view/animation/AnimationUtils$AnimationState;-><init>(Landroid/view/animation/AnimationUtils$AnimationState-IA;)V HSPLandroid/view/animation/AnimationUtils;->createAnimationFromXml(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;)Landroid/view/animation/Animation; HSPLandroid/view/animation/AnimationUtils;->createAnimationFromXml(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;Landroid/view/animation/AnimationSet;Landroid/util/AttributeSet;)Landroid/view/animation/Animation; -HSPLandroid/view/animation/AnimationUtils;->createInterpolatorFromXml(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;)Landroid/view/animation/Interpolator;+]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; +HSPLandroid/view/animation/AnimationUtils;->createInterpolatorFromXml(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;)Landroid/view/animation/Interpolator; HSPLandroid/view/animation/AnimationUtils;->currentAnimationTimeMillis()J HSPLandroid/view/animation/AnimationUtils;->loadAnimation(Landroid/content/Context;I)Landroid/view/animation/Animation; HSPLandroid/view/animation/AnimationUtils;->loadInterpolator(Landroid/content/Context;I)Landroid/view/animation/Interpolator; HSPLandroid/view/animation/AnimationUtils;->loadInterpolator(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;I)Landroid/view/animation/Interpolator; HSPLandroid/view/animation/AnimationUtils;->lockAnimationClock(J)V -HSPLandroid/view/animation/AnimationUtils;->lockAnimationClock(JJ)V+]Ljava/lang/ThreadLocal;Landroid/view/animation/AnimationUtils$1; -HSPLandroid/view/animation/AnimationUtils;->unlockAnimationClock()V+]Ljava/lang/ThreadLocal;Landroid/view/animation/AnimationUtils$1; +HSPLandroid/view/animation/AnimationUtils;->lockAnimationClock(JJ)V +HSPLandroid/view/animation/AnimationUtils;->unlockAnimationClock()V HSPLandroid/view/animation/BaseInterpolator;-><init>()V HSPLandroid/view/animation/BaseInterpolator;->getChangingConfiguration()I HSPLandroid/view/animation/BaseInterpolator;->setChangingConfiguration(I)V @@ -18697,13 +18651,13 @@ HSPLandroid/view/animation/ScaleAnimation;->initialize(IIII)V HSPLandroid/view/animation/ScaleAnimation;->initializePivotPoint()V HSPLandroid/view/animation/ScaleAnimation;->resolveScale(FIIII)F HSPLandroid/view/animation/Transformation;-><init>()V -HSPLandroid/view/animation/Transformation;->clear()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLandroid/view/animation/Transformation;->clear()V HSPLandroid/view/animation/Transformation;->compose(Landroid/view/animation/Transformation;)V HSPLandroid/view/animation/Transformation;->getAlpha()F HSPLandroid/view/animation/Transformation;->getInsets()Landroid/graphics/Insets; HSPLandroid/view/animation/Transformation;->getMatrix()Landroid/graphics/Matrix; HSPLandroid/view/animation/Transformation;->getTransformationType()I -HSPLandroid/view/animation/Transformation;->set(Landroid/view/animation/Transformation;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; +HSPLandroid/view/animation/Transformation;->set(Landroid/view/animation/Transformation;)V HSPLandroid/view/animation/Transformation;->setAlpha(F)V HSPLandroid/view/animation/Transformation;->setInsets(Landroid/graphics/Insets;)V HSPLandroid/view/animation/TranslateAnimation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V @@ -18764,7 +18718,6 @@ HSPLandroid/view/autofill/AutofillManager$AutofillCallback;-><init>()V HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->getAugmentedAutofillClient(Lcom/android/internal/os/IResultReceiver;)V HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->lambda$setState$0(Landroid/view/autofill/AutofillManager;I)V HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->setState(I)V -HSPLandroid/view/autofill/AutofillManager;->-$$Nest$mpost(Landroid/view/autofill/AutofillManager;Ljava/lang/Runnable;)V HSPLandroid/view/autofill/AutofillManager;-><init>(Landroid/content/Context;Landroid/view/autofill/IAutoFillManager;)V HSPLandroid/view/autofill/AutofillManager;->cancelLocked()V HSPLandroid/view/autofill/AutofillManager;->cancelSessionLocked()V @@ -18776,7 +18729,7 @@ HSPLandroid/view/autofill/AutofillManager;->hasFillDialogUiFeature()Z HSPLandroid/view/autofill/AutofillManager;->isActiveLocked()Z HSPLandroid/view/autofill/AutofillManager;->isDisabledByServiceLocked()Z HSPLandroid/view/autofill/AutofillManager;->isEnabled()Z -HSPLandroid/view/autofill/AutofillManager;->notifyValueChanged(Landroid/view/View;)V+]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; +HSPLandroid/view/autofill/AutofillManager;->notifyValueChanged(Landroid/view/View;)V HSPLandroid/view/autofill/AutofillManager;->notifyViewEntered(Landroid/view/View;I)V HSPLandroid/view/autofill/AutofillManager;->notifyViewEnteredForAugmentedAutofill(Landroid/view/View;)V HSPLandroid/view/autofill/AutofillManager;->notifyViewEnteredForFillDialog(Landroid/view/View;)V @@ -18872,19 +18825,14 @@ HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->getMaxTran HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->getTransactionName(I)Ljava/lang/String; HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda0;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda10;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda11;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda12;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda1;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda2;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda3;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda4;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda8;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1;->run()V HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;-><init>(Landroid/view/contentcapture/MainContentCaptureSession;)V HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;->lambda$send$1(Landroid/view/contentcapture/MainContentCaptureSession;ILandroid/os/IBinder;)V HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;->send(ILandroid/os/Bundle;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;-><init>(Landroid/view/contentcapture/ContentCaptureManager$StrippedContext;Landroid/view/contentcapture/ContentCaptureManager;Landroid/os/Handler;Landroid/view/contentcapture/IContentCaptureManager;)V HSPLandroid/view/contentcapture/MainContentCaptureSession;->clearEvents()Landroid/content/pm/ParceledListSlice; HSPLandroid/view/contentcapture/MainContentCaptureSession;->destroySession()V HSPLandroid/view/contentcapture/MainContentCaptureSession;->flush(I)V @@ -19006,7 +18954,6 @@ HSPLandroid/view/inputmethod/ImeTracker$Token$1;->createFromParcel(Landroid/os/P HSPLandroid/view/inputmethod/ImeTracker$Token$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/view/inputmethod/ImeTracker$Token;->-$$Nest$fgetmTag(Landroid/view/inputmethod/ImeTracker$Token;)Ljava/lang/String; HSPLandroid/view/inputmethod/ImeTracker$Token;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/inputmethod/ImeTracker$Token;-><init>(Landroid/os/Parcel;Landroid/view/inputmethod/ImeTracker$Token-IA;)V HSPLandroid/view/inputmethod/ImeTracker$Token;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/view/inputmethod/ImeTracker;-><clinit>()V HSPLandroid/view/inputmethod/ImeTracker;->forLogging()Landroid/view/inputmethod/ImeTracker; @@ -19048,7 +18995,7 @@ HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;-><init>(Landroid/v HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onPostWindowGainedFocus(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;)V HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onPreWindowGainedFocus(Landroid/view/ViewRootImpl;)V HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onScheduledCheckFocus(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onViewDetachedFromWindow(Landroid/view/View;Landroid/view/ViewRootImpl;)V+]Landroid/view/View;missing_types +HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onViewDetachedFromWindow(Landroid/view/View;Landroid/view/ViewRootImpl;)V HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onWindowDismissed(Landroid/view/ViewRootImpl;)V HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->setCurrentRootViewLocked(Landroid/view/ViewRootImpl;)V HSPLandroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda0;->run()V @@ -19373,19 +19320,18 @@ HSPLandroid/webkit/WebViewProviderResponse$1;->createFromParcel(Landroid/os/Parc HSPLandroid/widget/AbsListView$3;->run()V HSPLandroid/widget/AbsListView$AdapterDataSetObserver;->onChanged()V HSPLandroid/widget/AbsListView$DeviceConfigChangeListener;-><init>()V -HSPLandroid/widget/AbsListView$DeviceConfigChangeListener;-><init>(Landroid/widget/AbsListView$DeviceConfigChangeListener-IA;)V HSPLandroid/widget/AbsListView$PerformClick;->run()V -HSPLandroid/widget/AbsListView$RecycleBin;->addScrapView(Landroid/view/View;I)V+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin;]Landroid/widget/AbsListView;Landroid/widget/ListView;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/widget/AbsListView$RecycleBin;->addScrapView(Landroid/view/View;I)V HSPLandroid/widget/AbsListView$RecycleBin;->clear()V HSPLandroid/widget/AbsListView$RecycleBin;->clearTransientStateViews()V HSPLandroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V HSPLandroid/widget/AbsListView$RecycleBin;->getActiveView(I)Landroid/view/View; -HSPLandroid/widget/AbsListView$RecycleBin;->getScrapView(I)Landroid/view/View;+]Landroid/widget/ListAdapter;missing_types +HSPLandroid/widget/AbsListView$RecycleBin;->getScrapView(I)Landroid/view/View; HSPLandroid/widget/AbsListView$RecycleBin;->getTransientStateView(I)Landroid/view/View; HSPLandroid/widget/AbsListView$RecycleBin;->markChildrenDirty()V HSPLandroid/widget/AbsListView$RecycleBin;->pruneScrapViews()V HSPLandroid/widget/AbsListView$RecycleBin;->removeSkippedScrap()V -HSPLandroid/widget/AbsListView$RecycleBin;->retrieveFromScrap(Ljava/util/ArrayList;I)Landroid/view/View;+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/ListAdapter;Landroid/preference/PreferenceGroupAdapter;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/widget/AbsListView$RecycleBin;->retrieveFromScrap(Ljava/util/ArrayList;I)Landroid/view/View; HSPLandroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V HSPLandroid/widget/AbsListView$RecycleBin;->setViewTypeCount(I)V HSPLandroid/widget/AbsListView$RecycleBin;->shouldRecycleViewType(I)Z @@ -19395,12 +19341,12 @@ HSPLandroid/widget/AbsListView$WindowRunnnable;->sameWindow()Z HSPLandroid/widget/AbsListView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/AbsListView;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z HSPLandroid/widget/AbsListView;->clearChoices()V -HSPLandroid/widget/AbsListView;->computeVerticalScrollExtent()I+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types -HSPLandroid/widget/AbsListView;->computeVerticalScrollOffset()I+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types +HSPLandroid/widget/AbsListView;->computeVerticalScrollExtent()I +HSPLandroid/widget/AbsListView;->computeVerticalScrollOffset()I HSPLandroid/widget/AbsListView;->computeVerticalScrollRange()I HSPLandroid/widget/AbsListView;->dispatchDraw(Landroid/graphics/Canvas;)V HSPLandroid/widget/AbsListView;->dispatchSetPressed(Z)V -HSPLandroid/widget/AbsListView;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/widget/AbsListView;missing_types]Landroid/widget/EdgeEffect;Landroid/widget/EdgeEffect; +HSPLandroid/widget/AbsListView;->draw(Landroid/graphics/Canvas;)V HSPLandroid/widget/AbsListView;->drawableStateChanged()V HSPLandroid/widget/AbsListView;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; HSPLandroid/widget/AbsListView;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; @@ -19418,7 +19364,7 @@ HSPLandroid/widget/AbsListView;->isFastScrollEnabled()Z HSPLandroid/widget/AbsListView;->isInFilterMode()Z HSPLandroid/widget/AbsListView;->isVerticalScrollBarHidden()Z HSPLandroid/widget/AbsListView;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/AbsListView;->obtainView(I[Z)Landroid/view/View;+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin;]Landroid/widget/ListAdapter;missing_types +HSPLandroid/widget/AbsListView;->obtainView(I[Z)Landroid/view/View; HSPLandroid/widget/AbsListView;->onAttachedToWindow()V HSPLandroid/widget/AbsListView;->onCancelPendingInputEvents()V HSPLandroid/widget/AbsListView;->onDetachedFromWindow()V @@ -19428,9 +19374,9 @@ HSPLandroid/widget/AbsListView;->onMeasure(II)V HSPLandroid/widget/AbsListView;->onRtlPropertiesChanged(I)V HSPLandroid/widget/AbsListView;->onSaveInstanceState()Landroid/os/Parcelable; HSPLandroid/widget/AbsListView;->onTouchDown(Landroid/view/MotionEvent;)V -HSPLandroid/widget/AbsListView;->onTouchEvent(Landroid/view/MotionEvent;)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/VelocityTracker;Landroid/view/VelocityTracker;]Landroid/widget/AbsListView;Landroid/widget/ListView; +HSPLandroid/widget/AbsListView;->onTouchEvent(Landroid/view/MotionEvent;)Z HSPLandroid/widget/AbsListView;->onTouchModeChanged(Z)V -HSPLandroid/widget/AbsListView;->onTouchMove(Landroid/view/MotionEvent;Landroid/view/MotionEvent;)V+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;Landroid/widget/ListView; +HSPLandroid/widget/AbsListView;->onTouchMove(Landroid/view/MotionEvent;Landroid/view/MotionEvent;)V HSPLandroid/widget/AbsListView;->onTouchUp(Landroid/view/MotionEvent;)V HSPLandroid/widget/AbsListView;->onWindowFocusChanged(Z)V HSPLandroid/widget/AbsListView;->performItemClick(Landroid/view/View;IJ)Z @@ -19445,7 +19391,7 @@ HSPLandroid/widget/AbsListView;->setFastScrollAlwaysVisible(Z)V HSPLandroid/widget/AbsListView;->setFastScrollEnabled(Z)V HSPLandroid/widget/AbsListView;->setFastScrollStyle(I)V HSPLandroid/widget/AbsListView;->setFrame(IIII)Z -HSPLandroid/widget/AbsListView;->setItemViewLayoutParams(Landroid/view/View;I)V+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types]Landroid/widget/ListAdapter;missing_types +HSPLandroid/widget/AbsListView;->setItemViewLayoutParams(Landroid/view/View;I)V HSPLandroid/widget/AbsListView;->setOnScrollListener(Landroid/widget/AbsListView$OnScrollListener;)V HSPLandroid/widget/AbsListView;->setScrollingCacheEnabled(Z)V HSPLandroid/widget/AbsListView;->setSelectionFromTop(II)V @@ -19577,15 +19523,15 @@ HSPLandroid/widget/EdgeEffect;-><init>(Landroid/content/Context;)V HSPLandroid/widget/EdgeEffect;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/EdgeEffect;->calculateDistanceFromGlowValues(FF)F HSPLandroid/widget/EdgeEffect;->dampStretchVector(F)F -HSPLandroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; +HSPLandroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z HSPLandroid/widget/EdgeEffect;->finish()V HSPLandroid/widget/EdgeEffect;->getCurrentEdgeEffectBehavior()I HSPLandroid/widget/EdgeEffect;->getDistance()F HSPLandroid/widget/EdgeEffect;->isAtEquilibrium()Z HSPLandroid/widget/EdgeEffect;->isFinished()Z HSPLandroid/widget/EdgeEffect;->onAbsorb(I)V -HSPLandroid/widget/EdgeEffect;->onPull(FF)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/widget/EdgeEffect;->onPullDistance(FF)F+]Landroid/widget/EdgeEffect;Landroid/widget/EdgeEffect; +HSPLandroid/widget/EdgeEffect;->onPull(FF)V +HSPLandroid/widget/EdgeEffect;->onPullDistance(FF)F HSPLandroid/widget/EdgeEffect;->onRelease()V HSPLandroid/widget/EdgeEffect;->setSize(II)V HSPLandroid/widget/EdgeEffect;->update()V @@ -19606,7 +19552,6 @@ HSPLandroid/widget/EditText;->supportsAutoSizeText()Z HSPLandroid/widget/Editor$$ExternalSyntheticLambda2;-><init>(Landroid/widget/Editor;)V HSPLandroid/widget/Editor$2;->onDraw()V HSPLandroid/widget/Editor$AccessibilitySmartActions;-><init>(Landroid/widget/TextView;)V -HSPLandroid/widget/Editor$AccessibilitySmartActions;-><init>(Landroid/widget/TextView;Landroid/widget/Editor$AccessibilitySmartActions-IA;)V HSPLandroid/widget/Editor$Blink;->cancel()V HSPLandroid/widget/Editor$Blink;->run()V HSPLandroid/widget/Editor$Blink;->uncancel()V @@ -19766,12 +19711,12 @@ HSPLandroid/widget/ForwardingListener;->onViewAttachedToWindow(Landroid/view/Vie HSPLandroid/widget/ForwardingListener;->onViewDetachedFromWindow(Landroid/view/View;)V HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(II)V HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(III)V -HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; +HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;)V HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/FrameLayout;missing_types +HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/FrameLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z HSPLandroid/widget/FrameLayout;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; HSPLandroid/widget/FrameLayout;->generateDefaultLayoutParams()Landroid/widget/FrameLayout$LayoutParams; @@ -19779,13 +19724,13 @@ HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/util/AttributeSet HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/widget/FrameLayout$LayoutParams; HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; HSPLandroid/widget/FrameLayout;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/FrameLayout;->getPaddingBottomWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingLeftWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingRightWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingTopWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->layoutChildren(IIIIZ)V+]Landroid/view/View;missing_types]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->onLayout(ZIIII)V+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->onMeasure(II)V+]Landroid/view/View;missing_types]Landroid/widget/FrameLayout;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/widget/FrameLayout;->getPaddingBottomWithForeground()I +HSPLandroid/widget/FrameLayout;->getPaddingLeftWithForeground()I +HSPLandroid/widget/FrameLayout;->getPaddingRightWithForeground()I +HSPLandroid/widget/FrameLayout;->getPaddingTopWithForeground()I +HSPLandroid/widget/FrameLayout;->layoutChildren(IIIIZ)V +HSPLandroid/widget/FrameLayout;->onLayout(ZIIII)V +HSPLandroid/widget/FrameLayout;->onMeasure(II)V HSPLandroid/widget/FrameLayout;->setForegroundGravity(I)V HSPLandroid/widget/FrameLayout;->setMeasureAllChildren(Z)V HSPLandroid/widget/FrameLayout;->shouldDelayChildPressedState()Z @@ -19882,13 +19827,13 @@ HSPLandroid/widget/ImageView$ScaleType;->values()[Landroid/widget/ImageView$Scal HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;)V HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/ImageView;->applyAlpha()V HSPLandroid/widget/ImageView;->applyColorFilter()V -HSPLandroid/widget/ImageView;->applyImageTint()V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/VectorDrawable; +HSPLandroid/widget/ImageView;->applyImageTint()V HSPLandroid/widget/ImageView;->applyXfermode()V HSPLandroid/widget/ImageView;->clearColorFilter()V -HSPLandroid/widget/ImageView;->configureBounds()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->configureBounds()V HSPLandroid/widget/ImageView;->drawableHotspotChanged(FF)V HSPLandroid/widget/ImageView;->drawableStateChanged()V HSPLandroid/widget/ImageView;->getAccessibilityClassName()Ljava/lang/CharSequence; @@ -19897,21 +19842,21 @@ HSPLandroid/widget/ImageView;->getDrawable()Landroid/graphics/drawable/Drawable; HSPLandroid/widget/ImageView;->getImageMatrix()Landroid/graphics/Matrix; HSPLandroid/widget/ImageView;->getScaleType()Landroid/widget/ImageView$ScaleType; HSPLandroid/widget/ImageView;->hasOverlappingRendering()Z -HSPLandroid/widget/ImageView;->initImageView()V+]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->initImageView()V +HSPLandroid/widget/ImageView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ImageView;->isFilledByImage()Z -HSPLandroid/widget/ImageView;->isOpaque()Z+]Landroid/graphics/drawable/Drawable;megamorphic_types -HSPLandroid/widget/ImageView;->jumpDrawablesToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/widget/ImageView;->isOpaque()Z +HSPLandroid/widget/ImageView;->jumpDrawablesToCurrentState()V HSPLandroid/widget/ImageView;->onAttachedToWindow()V HSPLandroid/widget/ImageView;->onCreateDrawableState(I)[I HSPLandroid/widget/ImageView;->onDetachedFromWindow()V -HSPLandroid/widget/ImageView;->onDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/widget/ImageView;->onMeasure(II)V+]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->onDraw(Landroid/graphics/Canvas;)V +HSPLandroid/widget/ImageView;->onMeasure(II)V HSPLandroid/widget/ImageView;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/ImageView;->onVisibilityAggregated(Z)V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/widget/ImageView;->onVisibilityAggregated(Z)V HSPLandroid/widget/ImageView;->resizeFromDrawable()V HSPLandroid/widget/ImageView;->resolveAdjustedSize(III)I -HSPLandroid/widget/ImageView;->resolveUri()V+]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->resolveUri()V HSPLandroid/widget/ImageView;->scaleTypeToScaleToFit(Landroid/widget/ImageView$ScaleType;)Landroid/graphics/Matrix$ScaleToFit; HSPLandroid/widget/ImageView;->setAdjustViewBounds(Z)V HSPLandroid/widget/ImageView;->setAlpha(I)V @@ -19922,9 +19867,9 @@ HSPLandroid/widget/ImageView;->setCropToPadding(Z)V HSPLandroid/widget/ImageView;->setFrame(IIII)Z HSPLandroid/widget/ImageView;->setImageAlpha(I)V HSPLandroid/widget/ImageView;->setImageBitmap(Landroid/graphics/Bitmap;)V -HSPLandroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ImageView;->setImageMatrix(Landroid/graphics/Matrix;)V -HSPLandroid/widget/ImageView;->setImageResource(I)V+]Landroid/widget/ImageView;Landroid/widget/ImageView; +HSPLandroid/widget/ImageView;->setImageResource(I)V HSPLandroid/widget/ImageView;->setImageTintBlendMode(Landroid/graphics/BlendMode;)V HSPLandroid/widget/ImageView;->setImageTintList(Landroid/content/res/ColorStateList;)V HSPLandroid/widget/ImageView;->setMaxHeight(I)V @@ -19932,16 +19877,16 @@ HSPLandroid/widget/ImageView;->setMaxWidth(I)V HSPLandroid/widget/ImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V HSPLandroid/widget/ImageView;->setSelected(Z)V HSPLandroid/widget/ImageView;->setVisibility(I)V -HSPLandroid/widget/ImageView;->updateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types +HSPLandroid/widget/ImageView;->updateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ImageView;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(II)V HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(IIF)V -HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; +HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;)V HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/LinearLayout;missing_types +HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/LinearLayout;->allViewsAreGoneBefore(I)Z HSPLandroid/widget/LinearLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z HSPLandroid/widget/LinearLayout;->forceUniformHeight(II)V @@ -19960,20 +19905,20 @@ HSPLandroid/widget/LinearLayout;->getGravity()I HSPLandroid/widget/LinearLayout;->getLocationOffset(Landroid/view/View;)I HSPLandroid/widget/LinearLayout;->getNextLocationOffset(Landroid/view/View;)I HSPLandroid/widget/LinearLayout;->getOrientation()I -HSPLandroid/widget/LinearLayout;->getVirtualChildAt(I)Landroid/view/View;+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->getVirtualChildCount()I+]Landroid/widget/LinearLayout;missing_types +HSPLandroid/widget/LinearLayout;->getVirtualChildAt(I)Landroid/view/View; +HSPLandroid/widget/LinearLayout;->getVirtualChildCount()I HSPLandroid/widget/LinearLayout;->hasDividerBeforeChildAt(I)Z -HSPLandroid/widget/LinearLayout;->layoutHorizontal(IIII)V+]Landroid/view/View;missing_types]Landroid/widget/LinearLayout;Landroid/widget/LinearLayout; -HSPLandroid/widget/LinearLayout;->layoutVertical(IIII)V+]Landroid/view/View;megamorphic_types]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->measureChildBeforeLayout(Landroid/view/View;IIIII)V+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->measureHorizontal(II)V+]Landroid/view/View;missing_types]Landroid/widget/LinearLayout;Landroid/widget/LinearLayout; -HSPLandroid/widget/LinearLayout;->measureVertical(II)V+]Landroid/view/View;megamorphic_types]Landroid/widget/LinearLayout;missing_types +HSPLandroid/widget/LinearLayout;->layoutHorizontal(IIII)V +HSPLandroid/widget/LinearLayout;->layoutVertical(IIII)V +HSPLandroid/widget/LinearLayout;->measureChildBeforeLayout(Landroid/view/View;IIIII)V +HSPLandroid/widget/LinearLayout;->measureHorizontal(II)V +HSPLandroid/widget/LinearLayout;->measureVertical(II)V HSPLandroid/widget/LinearLayout;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/LinearLayout;->onLayout(ZIIII)V+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->onMeasure(II)V+]Landroid/widget/LinearLayout;missing_types +HSPLandroid/widget/LinearLayout;->onLayout(ZIIII)V +HSPLandroid/widget/LinearLayout;->onMeasure(II)V HSPLandroid/widget/LinearLayout;->onRtlPropertiesChanged(I)V HSPLandroid/widget/LinearLayout;->setBaselineAligned(Z)V -HSPLandroid/widget/LinearLayout;->setChildFrame(Landroid/view/View;IIII)V+]Landroid/view/View;missing_types +HSPLandroid/widget/LinearLayout;->setChildFrame(Landroid/view/View;IIII)V HSPLandroid/widget/LinearLayout;->setDividerDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/LinearLayout;->setGravity(I)V HSPLandroid/widget/LinearLayout;->setOrientation(I)V @@ -19997,7 +19942,7 @@ HSPLandroid/widget/ListView;-><init>(Landroid/content/Context;Landroid/util/Attr HSPLandroid/widget/ListView;->adjustViewsUpOrDown()V HSPLandroid/widget/ListView;->clearRecycledState(Ljava/util/ArrayList;)V HSPLandroid/widget/ListView;->correctTooHigh(I)V -HSPLandroid/widget/ListView;->dispatchDraw(Landroid/graphics/Canvas;)V+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/ListAdapter;Landroid/preference/PreferenceGroupAdapter;]Landroid/widget/ListView;Landroid/widget/ListView;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLandroid/widget/ListView;->dispatchDraw(Landroid/graphics/Canvas;)V HSPLandroid/widget/ListView;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z HSPLandroid/widget/ListView;->fillDown(II)Landroid/view/View; HSPLandroid/widget/ListView;->fillFromTop(I)Landroid/view/View; @@ -20013,8 +19958,8 @@ HSPLandroid/widget/ListView;->isOpaque()Z HSPLandroid/widget/ListView;->layoutChildren()V HSPLandroid/widget/ListView;->lookForSelectablePosition(IZ)I HSPLandroid/widget/ListView;->makeAndAddView(IIZIZ)Landroid/view/View; -HSPLandroid/widget/ListView;->measureHeightOfChildren(IIIII)I+]Landroid/view/View;Landroid/widget/CheckedTextView;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin; -HSPLandroid/widget/ListView;->measureScrapChild(Landroid/view/View;III)V+]Landroid/view/View;Landroid/widget/CheckedTextView; +HSPLandroid/widget/ListView;->measureHeightOfChildren(IIIII)I +HSPLandroid/widget/ListView;->measureScrapChild(Landroid/view/View;III)V HSPLandroid/widget/ListView;->onDetachedFromWindow()V HSPLandroid/widget/ListView;->onFinishInflate()V HSPLandroid/widget/ListView;->onMeasure(II)V @@ -20026,7 +19971,7 @@ HSPLandroid/widget/ListView;->setAdapter(Landroid/widget/ListAdapter;)V HSPLandroid/widget/ListView;->setCacheColorHint(I)V HSPLandroid/widget/ListView;->setDivider(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ListView;->setSelection(I)V -HSPLandroid/widget/ListView;->setupChild(Landroid/view/View;IIZIZZ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/Checkable;Landroid/widget/CheckedTextView;]Landroid/widget/ListAdapter;missing_types]Landroid/widget/ListView;missing_types +HSPLandroid/widget/ListView;->setupChild(Landroid/view/View;IIZIZZ)V HSPLandroid/widget/OverScroller$SplineOverScroller;-><init>(Landroid/content/Context;)V HSPLandroid/widget/OverScroller$SplineOverScroller;->adjustDuration(III)V HSPLandroid/widget/OverScroller$SplineOverScroller;->continueWhenFinished()Z @@ -20173,8 +20118,8 @@ HSPLandroid/widget/RelativeLayout$DependencyGraph$Node;->release()V HSPLandroid/widget/RelativeLayout$DependencyGraph;-><init>()V HSPLandroid/widget/RelativeLayout$DependencyGraph;->add(Landroid/view/View;)V HSPLandroid/widget/RelativeLayout$DependencyGraph;->clear()V -HSPLandroid/widget/RelativeLayout$DependencyGraph;->findRoots([I)Ljava/util/ArrayDeque;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/RelativeLayout$DependencyGraph;->getSortedViews([Landroid/view/View;[I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLandroid/widget/RelativeLayout$DependencyGraph;->findRoots([I)Ljava/util/ArrayDeque; +HSPLandroid/widget/RelativeLayout$DependencyGraph;->getSortedViews([Landroid/view/View;[I)V HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmBottom(Landroid/widget/RelativeLayout$LayoutParams;)I HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmLeft(Landroid/widget/RelativeLayout$LayoutParams;)I HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmRight(Landroid/widget/RelativeLayout$LayoutParams;)I @@ -20197,7 +20142,7 @@ HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/uti HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/RelativeLayout;->applyHorizontalSizeRules(Landroid/widget/RelativeLayout$LayoutParams;I[I)V -HSPLandroid/widget/RelativeLayout;->applyVerticalSizeRules(Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams; +HSPLandroid/widget/RelativeLayout;->applyVerticalSizeRules(Landroid/widget/RelativeLayout$LayoutParams;II)V HSPLandroid/widget/RelativeLayout;->centerHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V HSPLandroid/widget/RelativeLayout;->centerVertical(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V HSPLandroid/widget/RelativeLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z @@ -20209,25 +20154,24 @@ HSPLandroid/widget/RelativeLayout;->generateLayoutParams(Landroid/view/ViewGroup HSPLandroid/widget/RelativeLayout;->getAccessibilityClassName()Ljava/lang/CharSequence; HSPLandroid/widget/RelativeLayout;->getBaseline()I HSPLandroid/widget/RelativeLayout;->getChildMeasureSpec(IIIIIIII)I -HSPLandroid/widget/RelativeLayout;->getRelatedView([II)Landroid/view/View;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView; +HSPLandroid/widget/RelativeLayout;->getRelatedView([II)Landroid/view/View; HSPLandroid/widget/RelativeLayout;->getRelatedViewBaselineOffset([I)I HSPLandroid/widget/RelativeLayout;->getRelatedViewParams([II)Landroid/widget/RelativeLayout$LayoutParams; HSPLandroid/widget/RelativeLayout;->initFromAttributes(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/RelativeLayout;->measureChild(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/TextView; -HSPLandroid/widget/RelativeLayout;->measureChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/TextView; +HSPLandroid/widget/RelativeLayout;->measureChild(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V +HSPLandroid/widget/RelativeLayout;->measureChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V HSPLandroid/widget/RelativeLayout;->onLayout(ZIIII)V -HSPLandroid/widget/RelativeLayout;->onMeasure(II)V+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; +HSPLandroid/widget/RelativeLayout;->onMeasure(II)V HSPLandroid/widget/RelativeLayout;->positionAtEdge(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout;->positionChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; -HSPLandroid/widget/RelativeLayout;->positionChildVertical(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams; +HSPLandroid/widget/RelativeLayout;->positionChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z +HSPLandroid/widget/RelativeLayout;->positionChildVertical(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z HSPLandroid/widget/RelativeLayout;->queryCompatibilityModes(Landroid/content/Context;)V HSPLandroid/widget/RelativeLayout;->requestLayout()V HSPLandroid/widget/RelativeLayout;->shouldDelayChildPressedState()Z -HSPLandroid/widget/RelativeLayout;->sortChildren()V+]Landroid/widget/RelativeLayout$DependencyGraph;Landroid/widget/RelativeLayout$DependencyGraph;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; +HSPLandroid/widget/RelativeLayout;->sortChildren()V HSPLandroid/widget/RemoteViews$2;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/RemoteViews; HSPLandroid/widget/RemoteViews$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLandroid/widget/RemoteViews$Action;-><init>()V -HSPLandroid/widget/RemoteViews$Action;-><init>(Landroid/widget/RemoteViews$Action-IA;)V HSPLandroid/widget/RemoteViews$Action;->setHierarchyRootData(Landroid/widget/RemoteViews$HierarchyRootData;)V HSPLandroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0;-><init>(Landroid/content/pm/ApplicationInfo;)V HSPLandroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; @@ -20299,8 +20243,8 @@ HSPLandroid/widget/RtlSpacingHelper;->setAbsolute(II)V HSPLandroid/widget/RtlSpacingHelper;->setDirection(Z)V HSPLandroid/widget/RtlSpacingHelper;->setRelative(II)V HSPLandroid/widget/ScrollBarDrawable;-><init>()V -HSPLandroid/widget/ScrollBarDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/widget/ScrollBarDrawable;Landroid/widget/ScrollBarDrawable; -HSPLandroid/widget/ScrollBarDrawable;->drawThumb(Landroid/graphics/Canvas;Landroid/graphics/Rect;IIZ)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable; +HSPLandroid/widget/ScrollBarDrawable;->draw(Landroid/graphics/Canvas;)V +HSPLandroid/widget/ScrollBarDrawable;->drawThumb(Landroid/graphics/Canvas;Landroid/graphics/Rect;IIZ)V HSPLandroid/widget/ScrollBarDrawable;->getSize(Z)I HSPLandroid/widget/ScrollBarDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ScrollBarDrawable;->isStateful()Z @@ -20308,7 +20252,7 @@ HSPLandroid/widget/ScrollBarDrawable;->mutate()Landroid/widget/ScrollBarDrawable HSPLandroid/widget/ScrollBarDrawable;->onBoundsChange(Landroid/graphics/Rect;)V HSPLandroid/widget/ScrollBarDrawable;->onStateChange([I)Z HSPLandroid/widget/ScrollBarDrawable;->propagateCurrentState(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->setAlpha(I)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable; +HSPLandroid/widget/ScrollBarDrawable;->setAlpha(I)V HSPLandroid/widget/ScrollBarDrawable;->setAlwaysDrawVerticalTrack(Z)V HSPLandroid/widget/ScrollBarDrawable;->setHorizontalThumbDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/ScrollBarDrawable;->setHorizontalTrackDrawable(Landroid/graphics/drawable/Drawable;)V @@ -20418,28 +20362,27 @@ HSPLandroid/widget/TextView$SavedState$1;->createFromParcel(Landroid/os/Parcel;) HSPLandroid/widget/TextView$SavedState;-><init>(Landroid/os/Parcel;)V HSPLandroid/widget/TextView$SavedState;->writeToParcel(Landroid/os/Parcel;I)V HSPLandroid/widget/TextView$TextAppearanceAttributes;-><init>()V -HSPLandroid/widget/TextView$TextAppearanceAttributes;-><init>(Landroid/widget/TextView$TextAppearanceAttributes-IA;)V HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;)V HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Landroid/view/ViewConfiguration;Landroid/view/ViewConfiguration;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V HSPLandroid/widget/TextView;->addSearchHighlightPaths()V HSPLandroid/widget/TextView;->addTextChangedListener(Landroid/text/TextWatcher;)V HSPLandroid/widget/TextView;->applyCompoundDrawableTint()V HSPLandroid/widget/TextView;->applySingleLine(ZZZZ)V -HSPLandroid/widget/TextView;->applyTextAppearance(Landroid/widget/TextView$TextAppearanceAttributes;)V+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->applyTextAppearance(Landroid/widget/TextView$TextAppearanceAttributes;)V HSPLandroid/widget/TextView;->assumeLayout()V HSPLandroid/widget/TextView;->autoSizeText()V HSPLandroid/widget/TextView;->beginBatchEdit()V HSPLandroid/widget/TextView;->bringPointIntoView(I)Z HSPLandroid/widget/TextView;->bringPointIntoView(IZ)Z -HSPLandroid/widget/TextView;->bringTextIntoView()Z+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->bringTextIntoView()Z HSPLandroid/widget/TextView;->canMarquee()Z HSPLandroid/widget/TextView;->cancelLongPress()V -HSPLandroid/widget/TextView;->checkForRelayout()V+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->checkForRelayout()V HSPLandroid/widget/TextView;->checkForResize()V HSPLandroid/widget/TextView;->cleanupAutoSizePresetSizes([I)[I -HSPLandroid/widget/TextView;->compressText(F)Z+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;Landroid/widget/CheckedTextView;,Landroid/widget/TextView; +HSPLandroid/widget/TextView;->compressText(F)Z HSPLandroid/widget/TextView;->computeHorizontalScrollRange()I HSPLandroid/widget/TextView;->computeScroll()V HSPLandroid/widget/TextView;->computeVerticalScrollExtent()I @@ -20449,7 +20392,7 @@ HSPLandroid/widget/TextView;->createEditorIfNeeded()V HSPLandroid/widget/TextView;->didTouchFocusSelect()Z HSPLandroid/widget/TextView;->doKeyDown(ILandroid/view/KeyEvent;Landroid/view/KeyEvent;)I HSPLandroid/widget/TextView;->drawableHotspotChanged(FF)V -HSPLandroid/widget/TextView;->drawableStateChanged()V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->drawableStateChanged()V HSPLandroid/widget/TextView;->endBatchEdit()V HSPLandroid/widget/TextView;->findLargestTextSizeWhichFits(Landroid/graphics/RectF;)I HSPLandroid/widget/TextView;->fixFocusableAndClickableSettings()V @@ -20458,10 +20401,10 @@ HSPLandroid/widget/TextView;->getAutoSizeStepGranularity()I HSPLandroid/widget/TextView;->getAutofillHints()[Ljava/lang/String; HSPLandroid/widget/TextView;->getAutofillType()I HSPLandroid/widget/TextView;->getAutofillValue()Landroid/view/autofill/AutofillValue; -HSPLandroid/widget/TextView;->getBaseline()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getBaselineOffset()I+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->getBaseline()I +HSPLandroid/widget/TextView;->getBaselineOffset()I HSPLandroid/widget/TextView;->getBottomVerticalOffset(Z)I -HSPLandroid/widget/TextView;->getBoxHeight(Landroid/text/Layout;)I+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->getBoxHeight(Landroid/text/Layout;)I HSPLandroid/widget/TextView;->getBreakStrategy()I HSPLandroid/widget/TextView;->getCompoundDrawablePadding()I HSPLandroid/widget/TextView;->getCompoundDrawables()[Landroid/graphics/drawable/Drawable; @@ -20474,12 +20417,12 @@ HSPLandroid/widget/TextView;->getCurrentTextColor()I HSPLandroid/widget/TextView;->getDefaultEditable()Z HSPLandroid/widget/TextView;->getDefaultMovementMethod()Landroid/text/method/MovementMethod; HSPLandroid/widget/TextView;->getDesiredHeight()I -HSPLandroid/widget/TextView;->getDesiredHeight(Landroid/text/Layout;Z)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->getDesiredHeight(Landroid/text/Layout;Z)I HSPLandroid/widget/TextView;->getEditableText()Landroid/text/Editable; HSPLandroid/widget/TextView;->getEllipsize()Landroid/text/TextUtils$TruncateAt; HSPLandroid/widget/TextView;->getError()Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->getExtendedPaddingBottom()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getExtendedPaddingTop()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->getExtendedPaddingBottom()I +HSPLandroid/widget/TextView;->getExtendedPaddingTop()I HSPLandroid/widget/TextView;->getFilters()[Landroid/text/InputFilter; HSPLandroid/widget/TextView;->getFocusedRect(Landroid/graphics/Rect;)V HSPLandroid/widget/TextView;->getFreezesText()Z @@ -20495,7 +20438,7 @@ HSPLandroid/widget/TextView;->getInterestingRect(Landroid/graphics/Rect;I)V HSPLandroid/widget/TextView;->getJustificationMode()I HSPLandroid/widget/TextView;->getKeyListener()Landroid/text/method/KeyListener; HSPLandroid/widget/TextView;->getLayout()Landroid/text/Layout; -HSPLandroid/widget/TextView;->getLayoutAlignment()Landroid/text/Layout$Alignment;+]Landroid/widget/TextView;Landroid/widget/TextView; +HSPLandroid/widget/TextView;->getLayoutAlignment()Landroid/text/Layout$Alignment; HSPLandroid/widget/TextView;->getLineAtCoordinate(F)I HSPLandroid/widget/TextView;->getLineAtCoordinateUnclamped(F)I HSPLandroid/widget/TextView;->getLineCount()I @@ -20518,7 +20461,7 @@ HSPLandroid/widget/TextView;->getSpellCheckerLocale()Ljava/util/Locale; HSPLandroid/widget/TextView;->getText()Ljava/lang/CharSequence; HSPLandroid/widget/TextView;->getTextColors()Landroid/content/res/ColorStateList; HSPLandroid/widget/TextView;->getTextCursorDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic;+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic; HSPLandroid/widget/TextView;->getTextLocale()Ljava/util/Locale; HSPLandroid/widget/TextView;->getTextLocales()Landroid/os/LocaleList; HSPLandroid/widget/TextView;->getTextSelectHandle()Landroid/graphics/drawable/Drawable; @@ -20532,18 +20475,18 @@ HSPLandroid/widget/TextView;->getTotalPaddingTop()I HSPLandroid/widget/TextView;->getTransformationMethod()Landroid/text/method/TransformationMethod; HSPLandroid/widget/TextView;->getTypeface()Landroid/graphics/Typeface; HSPLandroid/widget/TextView;->getTypefaceStyle()I -HSPLandroid/widget/TextView;->getUpdatedHighlightPath()Landroid/graphics/Path;+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getVerticalOffset(Z)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLandroid/widget/TextView;->getUpdatedHighlightPath()Landroid/graphics/Path; +HSPLandroid/widget/TextView;->getVerticalOffset(Z)I HSPLandroid/widget/TextView;->handleBackInTextActionModeIfNeeded(Landroid/view/KeyEvent;)Z HSPLandroid/widget/TextView;->handleTextChanged(Ljava/lang/CharSequence;III)V HSPLandroid/widget/TextView;->hasGesturePreviewHighlight()Z -HSPLandroid/widget/TextView;->hasOverlappingRendering()Z+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/RippleDrawable; +HSPLandroid/widget/TextView;->hasOverlappingRendering()Z HSPLandroid/widget/TextView;->hasPasswordTransformationMethod()Z HSPLandroid/widget/TextView;->hasSelection()Z HSPLandroid/widget/TextView;->hideErrorIfUnchanged()V HSPLandroid/widget/TextView;->invalidateCursor()V HSPLandroid/widget/TextView;->invalidateCursorPath()V -HSPLandroid/widget/TextView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable;,Landroid/graphics/drawable/RippleDrawable;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/TextView;->invalidateRegion(IIZ)V HSPLandroid/widget/TextView;->isAnyPasswordInputType()Z HSPLandroid/widget/TextView;->isAutoSizeEnabled()Z @@ -20563,22 +20506,22 @@ HSPLandroid/widget/TextView;->isTextAutofillable()Z HSPLandroid/widget/TextView;->isTextEditable()Z HSPLandroid/widget/TextView;->isTextSelectable()Z HSPLandroid/widget/TextView;->isVisibleToAccessibility()Z -HSPLandroid/widget/TextView;->jumpDrawablesToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types +HSPLandroid/widget/TextView;->jumpDrawablesToCurrentState()V HSPLandroid/widget/TextView;->length()I -HSPLandroid/widget/TextView;->makeNewLayout(IILandroid/text/BoringLayout$Metrics;Landroid/text/BoringLayout$Metrics;IZ)V+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->makeSingleLayout(ILandroid/text/BoringLayout$Metrics;ILandroid/text/Layout$Alignment;ZLandroid/text/TextUtils$TruncateAt;Z)Landroid/text/Layout;+]Landroid/text/BoringLayout;Landroid/text/BoringLayout;]Landroid/text/StaticLayout$Builder;Landroid/text/StaticLayout$Builder;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/widget/TextView;->maybeUpdateHighlightPaths()V+]Landroid/widget/TextView;missing_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLandroid/widget/TextView;->makeNewLayout(IILandroid/text/BoringLayout$Metrics;Landroid/text/BoringLayout$Metrics;IZ)V +HSPLandroid/widget/TextView;->makeSingleLayout(ILandroid/text/BoringLayout$Metrics;ILandroid/text/Layout$Alignment;ZLandroid/text/TextUtils$TruncateAt;Z)Landroid/text/Layout; +HSPLandroid/widget/TextView;->maybeUpdateHighlightPaths()V HSPLandroid/widget/TextView;->notifyContentCaptureTextChanged()V -HSPLandroid/widget/TextView;->notifyListeningManagersAfterTextChanged()V+]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->notifyListeningManagersAfterTextChanged()V HSPLandroid/widget/TextView;->nullLayouts()V HSPLandroid/widget/TextView;->onAttachedToWindow()V HSPLandroid/widget/TextView;->onBeginBatchEdit()V HSPLandroid/widget/TextView;->onCheckIsTextEditor()Z HSPLandroid/widget/TextView;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/widget/TextView;->onCreateDrawableState(I)[I+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->onCreateDrawableState(I)[I HSPLandroid/widget/TextView;->onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; HSPLandroid/widget/TextView;->onDetachedFromWindowInternal()V -HSPLandroid/widget/TextView;->onDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->onDraw(Landroid/graphics/Canvas;)V HSPLandroid/widget/TextView;->onEditorAction(I)V HSPLandroid/widget/TextView;->onEndBatchEdit()V HSPLandroid/widget/TextView;->onFocusChanged(ZILandroid/graphics/Rect;)V @@ -20589,7 +20532,7 @@ HSPLandroid/widget/TextView;->onKeyPreIme(ILandroid/view/KeyEvent;)Z HSPLandroid/widget/TextView;->onKeyUp(ILandroid/view/KeyEvent;)Z HSPLandroid/widget/TextView;->onLayout(ZIIII)V HSPLandroid/widget/TextView;->onLocaleChanged()V -HSPLandroid/widget/TextView;->onMeasure(II)V+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/DynamicLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->onMeasure(II)V HSPLandroid/widget/TextView;->onPreDraw()Z HSPLandroid/widget/TextView;->onProvideStructure(Landroid/view/ViewStructure;II)V HSPLandroid/widget/TextView;->onResolveDrawables(I)V @@ -20606,7 +20549,7 @@ HSPLandroid/widget/TextView;->onVisibilityChanged(Landroid/view/View;I)V HSPLandroid/widget/TextView;->onWindowFocusChanged(Z)V HSPLandroid/widget/TextView;->originalToTransformed(II)I HSPLandroid/widget/TextView;->preloadFontCache()V -HSPLandroid/widget/TextView;->readTextAppearance(Landroid/content/Context;Landroid/content/res/TypedArray;Landroid/widget/TextView$TextAppearanceAttributes;Z)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/TypedValue;Landroid/util/TypedValue; +HSPLandroid/widget/TextView;->readTextAppearance(Landroid/content/Context;Landroid/content/res/TypedArray;Landroid/widget/TextView$TextAppearanceAttributes;Z)V HSPLandroid/widget/TextView;->registerForPreDraw()V HSPLandroid/widget/TextView;->removeAdjacentSuggestionSpans(I)V HSPLandroid/widget/TextView;->removeIntersectingNonAdjacentSpans(IILjava/lang/Class;)V @@ -20626,7 +20569,7 @@ HSPLandroid/widget/TextView;->setAutoSizeTextTypeUniformWithPresetSizes([II)V HSPLandroid/widget/TextView;->setBreakStrategy(I)V HSPLandroid/widget/TextView;->setCompoundDrawablePadding(I)V HSPLandroid/widget/TextView;->setCompoundDrawableTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/TextView;->setCompoundDrawables(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->setCompoundDrawables(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/TextView;->setCompoundDrawablesRelative(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/TextView;->setCompoundDrawablesRelativeWithIntrinsicBounds(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/TextView;->setCompoundDrawablesWithIntrinsicBounds(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V @@ -20656,7 +20599,7 @@ HSPLandroid/widget/TextView;->setInputTypeFromEditor()V HSPLandroid/widget/TextView;->setInputTypeSingleLine(Z)V HSPLandroid/widget/TextView;->setKeyListener(Landroid/text/method/KeyListener;)V HSPLandroid/widget/TextView;->setKeyListenerOnly(Landroid/text/method/KeyListener;)V -HSPLandroid/widget/TextView;->setLetterSpacing(F)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; +HSPLandroid/widget/TextView;->setLetterSpacing(F)V HSPLandroid/widget/TextView;->setLineHeight(I)V HSPLandroid/widget/TextView;->setLineSpacing(FF)V HSPLandroid/widget/TextView;->setLines(I)V @@ -20673,7 +20616,7 @@ HSPLandroid/widget/TextView;->setPadding(IIII)V HSPLandroid/widget/TextView;->setPaddingRelative(IIII)V HSPLandroid/widget/TextView;->setPrivateImeOptions(Ljava/lang/String;)V HSPLandroid/widget/TextView;->setRawInputType(I)V -HSPLandroid/widget/TextView;->setRawTextSize(FZ)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; +HSPLandroid/widget/TextView;->setRawTextSize(FZ)V HSPLandroid/widget/TextView;->setRelativeDrawablesIfNeeded(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V HSPLandroid/widget/TextView;->setSelected(Z)V HSPLandroid/widget/TextView;->setShadowLayer(FFFI)V @@ -20682,7 +20625,7 @@ HSPLandroid/widget/TextView;->setSingleLine(Z)V HSPLandroid/widget/TextView;->setText(I)V HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;)V -HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;ZI)V+]Landroid/text/Editable$Factory;Landroid/text/Editable$Factory;]Landroid/text/InputFilter;Landroid/text/InputFilter$LengthFilter;]Landroid/text/Spannable$Factory;Landroid/text/Spannable$Factory;]Landroid/text/Spannable;Landroid/text/SpannableString;,Landroid/text/SpannableStringBuilder;]Landroid/text/Spanned;Landroid/text/SpannableStringBuilder;,Landroid/text/SpannedString;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/text/method/MovementMethod;Landroid/text/method/ArrowKeyMovementMethod;,Landroid/text/method/LinkMovementMethod;]Landroid/text/method/TransformationMethod;Landroid/text/method/AllCapsTransformationMethod;,Landroid/text/method/SingleLineTransformationMethod;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Landroid/text/SpannableStringBuilder;,Landroid/text/SpannedString;,Ljava/lang/String; +HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;ZI)V HSPLandroid/widget/TextView;->setTextAppearance(I)V HSPLandroid/widget/TextView;->setTextAppearance(Landroid/content/Context;I)V HSPLandroid/widget/TextView;->setTextColor(I)V @@ -20694,14 +20637,14 @@ HSPLandroid/widget/TextView;->setTextSize(IF)V HSPLandroid/widget/TextView;->setTextSizeInternal(IFZ)V HSPLandroid/widget/TextView;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V HSPLandroid/widget/TextView;->setTransformationMethodInternal(Landroid/text/method/TransformationMethod;Z)V -HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;I)V+]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V +HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;I)V HSPLandroid/widget/TextView;->setTypefaceFromAttrs(Landroid/graphics/Typeface;Ljava/lang/String;III)V HSPLandroid/widget/TextView;->setupAutoSizeText()Z HSPLandroid/widget/TextView;->setupAutoSizeUniformPresetSizesConfiguration()Z HSPLandroid/widget/TextView;->shouldAdvanceFocusOnEnter()Z HSPLandroid/widget/TextView;->spanChange(Landroid/text/Spanned;Ljava/lang/Object;IIII)V -HSPLandroid/widget/TextView;->startMarquee()V+]Landroid/widget/TextView;Landroid/widget/CheckedTextView;,Landroid/widget/TextView; +HSPLandroid/widget/TextView;->startMarquee()V HSPLandroid/widget/TextView;->startStopMarquee(Z)V HSPLandroid/widget/TextView;->stopMarquee()V HSPLandroid/widget/TextView;->stopTextActionMode()V @@ -20711,8 +20654,8 @@ HSPLandroid/widget/TextView;->textCanBeSelected()Z HSPLandroid/widget/TextView;->unregisterForPreDraw()V HSPLandroid/widget/TextView;->updateAfterEdit()V HSPLandroid/widget/TextView;->updateCursorVisibleInternal()V -HSPLandroid/widget/TextView;->updateTextColors()V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/widget/TextView;->useDynamicLayout()Z+]Landroid/widget/TextView;missing_types +HSPLandroid/widget/TextView;->updateTextColors()V +HSPLandroid/widget/TextView;->useDynamicLayout()Z HSPLandroid/widget/TextView;->validateAndSetAutoSizeTextTypeUniformConfiguration(FFF)V HSPLandroid/widget/TextView;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z HSPLandroid/widget/TextView;->viewClicked(Landroid/view/inputmethod/InputMethodManager;)V @@ -20773,6 +20716,7 @@ HSPLandroid/widget/inline/InlinePresentationSpec$1;->createFromParcel(Landroid/o HSPLandroid/widget/inline/InlinePresentationSpec;-><clinit>()V HSPLandroid/widget/inline/InlinePresentationSpec;-><init>(Landroid/os/Parcel;)V HSPLandroid/widget/inline/InlinePresentationSpec;->writeToParcel(Landroid/os/Parcel;I)V +HSPLandroid/window/BackProgressAnimator;-><init>()V HSPLandroid/window/ClientWindowFrames$1;-><init>()V HSPLandroid/window/ClientWindowFrames$1;->createFromParcel(Landroid/os/Parcel;)Landroid/window/ClientWindowFrames; HSPLandroid/window/ClientWindowFrames$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -20820,8 +20764,6 @@ HSPLandroid/window/SizeConfigurationBuckets$1;-><init>()V HSPLandroid/window/SizeConfigurationBuckets;-><clinit>()V HSPLandroid/window/SizeConfigurationBuckets;-><init>([Landroid/content/res/Configuration;)V HSPLandroid/window/SizeConfigurationBuckets;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V -HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda3;->accept(Ljava/lang/Object;)V HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda5;->accept(Ljava/lang/Object;)V HSPLandroid/window/SurfaceSyncGroup$2;-><init>(Landroid/window/SurfaceSyncGroup;Z)V HSPLandroid/window/SurfaceSyncGroup$2;->onTransactionReady(Landroid/view/SurfaceControl$Transaction;)V @@ -20881,11 +20823,9 @@ HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->-$$Nest$mgetContext(L HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;-><init>(Landroid/content/Context;)V HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->checkApplicationCallbackRegistration(ILandroid/window/OnBackInvokedCallback;)Z HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->getContext()Landroid/content/Context; -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0;-><init>(Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;)V HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0;->run()V HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2;->run()V HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3;->run()V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef;-><init>(Landroid/window/OnBackInvokedCallback;Z)V HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->getBackAnimationCallback()Landroid/window/OnBackAnimationCallback; HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->onBackCancelled()V HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->onBackInvoked()V @@ -21078,7 +21018,7 @@ HSPLcom/android/i18n/timezone/ZoneInfoData;->findTransitionIndex(J)I HSPLcom/android/i18n/timezone/ZoneInfoData;->getID()Ljava/lang/String; HSPLcom/android/i18n/timezone/ZoneInfoData;->getLatestDstSavingsMillis(J)Ljava/lang/Integer; HSPLcom/android/i18n/timezone/ZoneInfoData;->getOffset(J)I -HSPLcom/android/i18n/timezone/ZoneInfoData;->getOffsetsByUtcTime(J[I)I+]Lcom/android/i18n/timezone/ZoneInfoData;Lcom/android/i18n/timezone/ZoneInfoData; +HSPLcom/android/i18n/timezone/ZoneInfoData;->getOffsetsByUtcTime(J[I)I HSPLcom/android/i18n/timezone/ZoneInfoData;->getRawOffset()I HSPLcom/android/i18n/timezone/ZoneInfoData;->getTransitions()[J HSPLcom/android/i18n/timezone/ZoneInfoData;->hashCode()I @@ -21256,15 +21196,15 @@ HSPLcom/android/internal/appwidget/IAppWidgetService$Stub;->asInterface(Landroid HSPLcom/android/internal/colorextraction/ColorExtractor$GradientColors;->getMainColor()I HSPLcom/android/internal/colorextraction/ColorExtractor$GradientColors;->supportsDarkText()Z HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;-><init>(JI)V -HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Lcom/android/internal/compat/ChangeReporter$ChangeReport; +HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;->equals(Ljava/lang/Object;)Z HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;->hashCode()I HSPLcom/android/internal/compat/ChangeReporter;-><init>(I)V HSPLcom/android/internal/compat/ChangeReporter;->debugLog(IJI)V -HSPLcom/android/internal/compat/ChangeReporter;->isAlreadyReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)Z+]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashSet; -HSPLcom/android/internal/compat/ChangeReporter;->markAsReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)V+]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashSet; -HSPLcom/android/internal/compat/ChangeReporter;->reportChange(IJI)V+]Lcom/android/internal/compat/ChangeReporter;Lcom/android/internal/compat/ChangeReporter; +HSPLcom/android/internal/compat/ChangeReporter;->isAlreadyReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)Z +HSPLcom/android/internal/compat/ChangeReporter;->markAsReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)V +HSPLcom/android/internal/compat/ChangeReporter;->reportChange(IJI)V HSPLcom/android/internal/compat/ChangeReporter;->shouldWriteToDebug(IJI)Z -HSPLcom/android/internal/compat/ChangeReporter;->shouldWriteToStatsLog(IJI)Z +HSPLcom/android/internal/compat/ChangeReporter;->shouldWriteToDebug(ZIZ)Z HSPLcom/android/internal/compat/ChangeReporter;->stateToString(I)Ljava/lang/String; HSPLcom/android/internal/compat/IPlatformCompat$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/compat/IPlatformCompat; HSPLcom/android/internal/content/PackageMonitor;-><init>()V @@ -21272,6 +21212,8 @@ HSPLcom/android/internal/content/ReferrerIntent$1;->createFromParcel(Landroid/os HSPLcom/android/internal/content/ReferrerIntent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; HSPLcom/android/internal/display/BrightnessSynchronizer;-><clinit>()V HSPLcom/android/internal/display/BrightnessSynchronizer;->floatEquals(FF)Z +HSPLcom/android/internal/dynamicanimation/animation/DynamicAnimation;-><init>(Ljava/lang/Object;Landroid/util/FloatProperty;)V +HSPLcom/android/internal/dynamicanimation/animation/SpringForce;-><init>()V HSPLcom/android/internal/graphics/ColorUtils;->HSLToColor([F)I HSPLcom/android/internal/graphics/ColorUtils;->RGBToHSL(III[F)V HSPLcom/android/internal/graphics/ColorUtils;->colorToHSL(I[F)V @@ -21320,6 +21262,7 @@ HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->stop()V HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;-><init>(Landroid/view/ViewRootImpl;)V HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;->hasRegions()Z HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;->hasUpdates()Z +HSPLcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl;->messageQueueTailTracking()Z HSPLcom/android/internal/infra/AndroidFuture$1;->complete(Lcom/android/internal/infra/AndroidFuture;)V HSPLcom/android/internal/infra/AndroidFuture$2;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/infra/AndroidFuture; HSPLcom/android/internal/infra/AndroidFuture$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; @@ -21400,7 +21343,7 @@ HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onComple HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onPostExecute(Z)V HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onPreExecute()V HSPLcom/android/internal/listeners/ListenerExecutor;->executeSafely(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;)V -HSPLcom/android/internal/listeners/ListenerExecutor;->executeSafely(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V+]Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda2;,Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda3;]Ljava/util/concurrent/Executor;Landroid/net/connectivity/com/android/modules/utils/HandlerExecutor;,Landroid/os/HandlerExecutor;,Lcom/android/wifi/x/com/android/modules/utils/HandlerExecutor;]Ljava/util/function/Supplier;Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda1; +HSPLcom/android/internal/listeners/ListenerExecutor;->executeSafely(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V HSPLcom/android/internal/listeners/ListenerExecutor;->lambda$executeSafely$0(Ljava/lang/Object;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V HSPLcom/android/internal/logging/AndroidConfig;-><init>()V HSPLcom/android/internal/logging/AndroidHandler$1;->format(Ljava/util/logging/LogRecord;)Ljava/lang/String; @@ -21529,7 +21472,6 @@ HSPLcom/android/internal/os/RuntimeInit$Arguments;-><init>([Ljava/lang/String;)V HSPLcom/android/internal/os/RuntimeInit$Arguments;->parseArgs([Ljava/lang/String;)V HSPLcom/android/internal/os/RuntimeInit$KillApplicationHandler;-><init>(Lcom/android/internal/os/RuntimeInit$LoggingHandler;)V HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>()V -HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>(Lcom/android/internal/os/RuntimeInit$LoggingHandler-IA;)V HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;-><init>(Ljava/lang/reflect/Method;[Ljava/lang/String;)V HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;->run()V HSPLcom/android/internal/os/RuntimeInit;->applicationInit(I[J[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Runnable; @@ -21605,7 +21547,6 @@ HSPLcom/android/internal/os/ZygoteInit;->gcAndFinalize()V HSPLcom/android/internal/os/ZygoteInit;->isExperimentEnabled(Ljava/lang/String;)Z HSPLcom/android/internal/os/ZygoteInit;->main([Ljava/lang/String;)V HSPLcom/android/internal/os/ZygoteInit;->maybePreloadGraphicsDriver()V -HSPLcom/android/internal/os/ZygoteInit;->posixCapabilitiesAsBits([I)J HSPLcom/android/internal/os/ZygoteInit;->preload(Landroid/util/TimingsTraceLog;)V HSPLcom/android/internal/os/ZygoteInit;->preloadClasses()V HSPLcom/android/internal/os/ZygoteInit;->preloadSharedLibraries()V @@ -21629,7 +21570,7 @@ HSPLcom/android/internal/os/ZygoteServer;->setForkChild()V HSPLcom/android/internal/policy/DecorContext;-><init>(Landroid/content/Context;Lcom/android/internal/policy/PhoneWindow;)V HSPLcom/android/internal/policy/DecorContext;->getAutofillOptions()Landroid/content/AutofillOptions; HSPLcom/android/internal/policy/DecorContext;->getContentCaptureOptions()Landroid/content/ContentCaptureOptions; -HSPLcom/android/internal/policy/DecorContext;->getResources()Landroid/content/res/Resources;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLcom/android/internal/policy/DecorContext;->getResources()Landroid/content/res/Resources; HSPLcom/android/internal/policy/DecorContext;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; HSPLcom/android/internal/policy/DecorContext;->isUiContext()Z HSPLcom/android/internal/policy/DecorContext;->setPhoneWindow(Lcom/android/internal/policy/PhoneWindow;)V @@ -21652,7 +21593,7 @@ HSPLcom/android/internal/policy/DecorView;->finishChanging()V HSPLcom/android/internal/policy/DecorView;->getAccessibilityViewId()I HSPLcom/android/internal/policy/DecorView;->getBackground()Landroid/graphics/drawable/Drawable; HSPLcom/android/internal/policy/DecorView;->getNavBarSize(III)I -HSPLcom/android/internal/policy/DecorView;->getResources()Landroid/content/res/Resources;+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; +HSPLcom/android/internal/policy/DecorView;->getResources()Landroid/content/res/Resources; HSPLcom/android/internal/policy/DecorView;->getTitleSuffix(Landroid/view/WindowManager$LayoutParams;)Ljava/lang/String; HSPLcom/android/internal/policy/DecorView;->getWindowInsetsController()Landroid/view/WindowInsetsController; HSPLcom/android/internal/policy/DecorView;->initializeElevation()V @@ -21666,8 +21607,8 @@ HSPLcom/android/internal/policy/DecorView;->onContentDrawn(IIII)Z HSPLcom/android/internal/policy/DecorView;->onDetachedFromWindow()V HSPLcom/android/internal/policy/DecorView;->onDraw(Landroid/graphics/Canvas;)V HSPLcom/android/internal/policy/DecorView;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/DecorView;->onLayout(ZIIII)V+]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/DecorView;->onMeasure(II)V+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; +HSPLcom/android/internal/policy/DecorView;->onLayout(ZIIII)V +HSPLcom/android/internal/policy/DecorView;->onMeasure(II)V HSPLcom/android/internal/policy/DecorView;->onPostDraw(Landroid/graphics/RecordingCanvas;)V HSPLcom/android/internal/policy/DecorView;->onResourcesLoaded(Landroid/view/LayoutInflater;I)V HSPLcom/android/internal/policy/DecorView;->onRootViewScrollYChanged(I)V @@ -21681,7 +21622,7 @@ HSPLcom/android/internal/policy/DecorView;->sendAccessibilityEvent(I)V HSPLcom/android/internal/policy/DecorView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V HSPLcom/android/internal/policy/DecorView;->setBackgroundFallback(Landroid/graphics/drawable/Drawable;)V HSPLcom/android/internal/policy/DecorView;->setColor(Landroid/view/View;IIZZ)V -HSPLcom/android/internal/policy/DecorView;->setFrame(IIII)Z+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; +HSPLcom/android/internal/policy/DecorView;->setFrame(IIII)Z HSPLcom/android/internal/policy/DecorView;->setWindow(Lcom/android/internal/policy/PhoneWindow;)V HSPLcom/android/internal/policy/DecorView;->setWindowBackground(Landroid/graphics/drawable/Drawable;)V HSPLcom/android/internal/policy/DecorView;->setWindowFrame(Landroid/graphics/drawable/Drawable;)V @@ -21690,16 +21631,15 @@ HSPLcom/android/internal/policy/DecorView;->superDispatchKeyEvent(Landroid/view/ HSPLcom/android/internal/policy/DecorView;->superDispatchTouchEvent(Landroid/view/MotionEvent;)Z HSPLcom/android/internal/policy/DecorView;->updateBackgroundBlurRadius()V HSPLcom/android/internal/policy/DecorView;->updateBackgroundDrawable()V -HSPLcom/android/internal/policy/DecorView;->updateColorViewInt(Lcom/android/internal/policy/DecorView$ColorViewState;IIIZZIZZI)V+]Landroid/view/View;Landroid/view/View;]Landroid/view/ViewPropertyAnimator;Landroid/view/ViewPropertyAnimator;]Lcom/android/internal/policy/DecorView$ColorViewAttributes;Lcom/android/internal/policy/DecorView$ColorViewAttributes;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; +HSPLcom/android/internal/policy/DecorView;->updateColorViewInt(Lcom/android/internal/policy/DecorView$ColorViewState;IIIZZIZZI)V HSPLcom/android/internal/policy/DecorView;->updateColorViewTranslations()V -HSPLcom/android/internal/policy/DecorView;->updateColorViews(Landroid/view/WindowInsets;Z)Landroid/view/WindowInsets;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ViewGroup;Landroid/widget/LinearLayout;]Landroid/view/WindowInsets;Landroid/view/WindowInsets;]Landroid/view/WindowInsetsController;Landroid/view/InsetsController;,Landroid/view/PendingInsetsController;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; -HSPLcom/android/internal/policy/DecorView;->updateElevation()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; +HSPLcom/android/internal/policy/DecorView;->updateColorViews(Landroid/view/WindowInsets;Z)Landroid/view/WindowInsets; +HSPLcom/android/internal/policy/DecorView;->updateElevation()V HSPLcom/android/internal/policy/DecorView;->updateLogTag(Landroid/view/WindowManager$LayoutParams;)V HSPLcom/android/internal/policy/DecorView;->updateStatusGuard(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; HSPLcom/android/internal/policy/DecorView;->willYouTakeTheInputQueue()Landroid/view/InputQueue$Callback; HSPLcom/android/internal/policy/DecorView;->willYouTakeTheSurface()Landroid/view/SurfaceHolder$Callback2; HSPLcom/android/internal/policy/GestureNavigationSettingsObserver$1;-><init>(Lcom/android/internal/policy/GestureNavigationSettingsObserver;)V -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;-><init>(Landroid/os/Handler;Landroid/content/Context;Ljava/lang/Runnable;)V HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->areNavigationButtonForcedVisible()Z HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->getLeftSensitivity(Landroid/content/res/Resources;)I HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->getRightSensitivity(Landroid/content/res/Resources;)I @@ -21731,7 +21671,7 @@ HSPLcom/android/internal/policy/PhoneWindow;->closePanel(Lcom/android/internal/p HSPLcom/android/internal/policy/PhoneWindow;->dispatchWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V HSPLcom/android/internal/policy/PhoneWindow;->doInvalidatePanelMenu(I)V HSPLcom/android/internal/policy/PhoneWindow;->generateDecor(I)Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/PhoneWindow;->generateLayout(Lcom/android/internal/policy/DecorView;)Landroid/view/ViewGroup;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow;]Ljava/lang/Boolean;Ljava/lang/Boolean; +HSPLcom/android/internal/policy/PhoneWindow;->generateLayout(Lcom/android/internal/policy/DecorView;)Landroid/view/ViewGroup; HSPLcom/android/internal/policy/PhoneWindow;->getCurrentFocus()Landroid/view/View; HSPLcom/android/internal/policy/PhoneWindow;->getDecorView()Landroid/view/View; HSPLcom/android/internal/policy/PhoneWindow;->getLayoutInflater()Landroid/view/LayoutInflater; @@ -21832,6 +21772,7 @@ HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getAvailableSubscriptionInf HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultDataSubId()I HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultSmsSubId()I HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultSubId()I +HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultSubIdAsUser(I)I HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultVoiceSubId()I HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getPhoneId(I)I HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getSlotIndex(I)I @@ -21955,7 +21896,6 @@ HSPLcom/android/internal/util/ExponentiallyBucketedHistogram;->add(I)V HSPLcom/android/internal/util/ExponentiallyBucketedHistogram;->log(Ljava/lang/String;Ljava/lang/CharSequence;)V HSPLcom/android/internal/util/FastMath;->round(F)I HSPLcom/android/internal/util/FastPrintWriter$DummyWriter;-><init>()V -HSPLcom/android/internal/util/FastPrintWriter$DummyWriter;-><init>(Lcom/android/internal/util/FastPrintWriter$DummyWriter-IA;)V HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/OutputStream;)V HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/OutputStream;ZI)V HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/Writer;ZI)V @@ -21978,13 +21918,13 @@ HSPLcom/android/internal/util/FastPrintWriter;->write([CII)V HSPLcom/android/internal/util/FastXmlSerializer;-><init>()V HSPLcom/android/internal/util/FastXmlSerializer;-><init>(I)V HSPLcom/android/internal/util/FastXmlSerializer;->append(C)V -HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;II)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->appendIndent(I)V+]Ljava/lang/String;Ljava/lang/String; +HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;)V +HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;II)V +HSPLcom/android/internal/util/FastXmlSerializer;->appendIndent(I)V HSPLcom/android/internal/util/FastXmlSerializer;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; HSPLcom/android/internal/util/FastXmlSerializer;->endDocument()V HSPLcom/android/internal/util/FastXmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/FastXmlSerializer;->escapeAndAppendString(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; +HSPLcom/android/internal/util/FastXmlSerializer;->escapeAndAppendString(Ljava/lang/String;)V HSPLcom/android/internal/util/FastXmlSerializer;->flush()V HSPLcom/android/internal/util/FastXmlSerializer;->flushBytes()V HSPLcom/android/internal/util/FastXmlSerializer;->setFeature(Ljava/lang/String;Z)V @@ -22006,7 +21946,7 @@ HSPLcom/android/internal/util/GrowingArrayUtils;->append([ZIZ)[Z HSPLcom/android/internal/util/GrowingArrayUtils;->growSize(I)I HSPLcom/android/internal/util/GrowingArrayUtils;->insert([IIII)[I HSPLcom/android/internal/util/GrowingArrayUtils;->insert([JIIJ)[J -HSPLcom/android/internal/util/GrowingArrayUtils;->insert([Ljava/lang/Object;IILjava/lang/Object;)[Ljava/lang/Object;+]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;[Ljava/lang/Object; +HSPLcom/android/internal/util/GrowingArrayUtils;->insert([Ljava/lang/Object;IILjava/lang/Object;)[Ljava/lang/Object; HSPLcom/android/internal/util/GrowingArrayUtils;->insert([ZIIZ)[Z HSPLcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter; HSPLcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter; @@ -22033,7 +21973,7 @@ HSPLcom/android/internal/util/LineBreakBufferedWriter;-><init>(Ljava/io/Writer;I HSPLcom/android/internal/util/LineBreakBufferedWriter;->ensureCapacity(I)V HSPLcom/android/internal/util/LineBreakBufferedWriter;->flush()V HSPLcom/android/internal/util/LineBreakBufferedWriter;->println()V -HSPLcom/android/internal/util/LineBreakBufferedWriter;->write(Ljava/lang/String;II)V+]Ljava/lang/String;Ljava/lang/String; +HSPLcom/android/internal/util/LineBreakBufferedWriter;->write(Ljava/lang/String;II)V HSPLcom/android/internal/util/LineBreakBufferedWriter;->writeBuffer(I)V HSPLcom/android/internal/util/MemInfoReader;-><init>()V HSPLcom/android/internal/util/MemInfoReader;->getTotalSize()J @@ -22076,7 +22016,7 @@ HSPLcom/android/internal/util/Preconditions;->checkStringNotEmpty(Ljava/lang/Cha HSPLcom/android/internal/util/ProcFileReader;->finishLine()V HSPLcom/android/internal/util/ScreenshotHelper;-><init>(Landroid/content/Context;)V HSPLcom/android/internal/util/StatLogger;->getTime()J -HSPLcom/android/internal/util/StatLogger;->logDurationStat(IJ)J+]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger; +HSPLcom/android/internal/util/StatLogger;->logDurationStat(IJ)J HSPLcom/android/internal/util/State;-><init>()V HSPLcom/android/internal/util/State;->enter()V HSPLcom/android/internal/util/StateMachine$LogRecords;->add(Lcom/android/internal/util/StateMachine;Landroid/os/Message;Ljava/lang/String;Lcom/android/internal/util/IState;Lcom/android/internal/util/IState;Lcom/android/internal/util/IState;)V @@ -22128,7 +22068,7 @@ HSPLcom/android/internal/util/XmlSerializerWrapper;->endTag(Ljava/lang/String;Lj HSPLcom/android/internal/util/XmlSerializerWrapper;->setFeature(Ljava/lang/String;Z)V HSPLcom/android/internal/util/XmlSerializerWrapper;->setOutput(Ljava/io/OutputStream;Ljava/lang/String;)V HSPLcom/android/internal/util/XmlSerializerWrapper;->startDocument(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLcom/android/internal/util/XmlSerializerWrapper;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;+]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/FastXmlSerializer; +HSPLcom/android/internal/util/XmlSerializerWrapper;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; HSPLcom/android/internal/util/XmlSerializerWrapper;->text(Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;-><init>(Lorg/xmlpull/v1/XmlPullParser;)V HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;->getAttributeBoolean(I)Z @@ -22157,13 +22097,13 @@ HSPLcom/android/internal/util/XmlUtils;->readThisSetXml(Lcom/android/modules/uti HSPLcom/android/internal/util/XmlUtils;->readThisValueXml(Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;Lcom/android/internal/util/XmlUtils$ReadMapCallback;Z)Ljava/lang/Object; HSPLcom/android/internal/util/XmlUtils;->readValueXml(Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;)Ljava/lang/Object; HSPLcom/android/internal/util/XmlUtils;->skipCurrentTag(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V+]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; +HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/io/OutputStream;)V HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V HSPLcom/android/internal/util/XmlUtils;->writeSetXml(Ljava/util/Set;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V -HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V HSPLcom/android/internal/util/function/pooled/OmniFunction;->run()V HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/HexConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/QuadConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; @@ -22262,6 +22202,7 @@ HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->handleStron HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->isNonStrongBiometricAllowedAfterIdleTimeout(I)Z HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->onIsNonStrongBiometricAllowedChanged(I)V HSPLcom/android/internal/widget/LockPatternUtils;-><init>(Landroid/content/Context;)V +HSPLcom/android/internal/widget/LockPatternUtils;-><init>(Landroid/content/Context;Lcom/android/internal/widget/ILockSettings;)V+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/internal/widget/LockPatternUtils;->credentialTypeToPasswordQuality(I)I HSPLcom/android/internal/widget/LockPatternUtils;->getBoolean(Ljava/lang/String;ZI)Z HSPLcom/android/internal/widget/LockPatternUtils;->getCredentialTypeForUser(I)I @@ -22277,11 +22218,11 @@ HSPLcom/android/internal/widget/LockPatternUtils;->isOwnerInfoEnabled(I)Z HSPLcom/android/internal/widget/LockPatternUtils;->isSecure(I)Z HSPLcom/android/internal/widget/LockPatternUtils;->isSeparateProfileChallengeEnabled(I)Z HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeBoolean(Ljava/lang/String;Ljava/lang/String;)Z+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeFloat(Ljava/lang/String;Ljava/lang/String;)F+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndex(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeFloat(Ljava/lang/String;Ljava/lang/String;)F +HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndex(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndexOrThrow(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeInt(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeLong(Ljava/lang/String;Ljava/lang/String;)J+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; +HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeLong(Ljava/lang/String;Ljava/lang/String;)J HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalAddresses(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalDnses(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalHttpProxy(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z @@ -22297,6 +22238,8 @@ HSPLcom/android/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I HSPLcom/android/telephony/Rlog;->log(ILjava/lang/String;Ljava/lang/String;)I HSPLcom/android/telephony/Rlog;->pii(ZLjava/lang/Object;)Ljava/lang/String; HSPLcom/android/telephony/Rlog;->w(Ljava/lang/String;Ljava/lang/String;)I +HSPLcom/android/text/flags/FeatureFlagsImpl;-><init>()V +HSPLcom/android/text/flags/Flags;-><clinit>()V HSPLcom/google/android/collect/Lists;->newArrayList()Ljava/util/ArrayList; HSPLcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList; HSPLcom/google/android/collect/Maps;->newHashMap()Ljava/util/HashMap; @@ -22330,8 +22273,8 @@ HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getURI(I)Ljava/lang/String; HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getValue(I)Ljava/lang/String; HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->removeAttribute(I)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->setAttributes(Lorg/xml/sax/Attributes;)V+]Lorg/ccil/cowan/tagsoup/AttributesImpl;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl; -HSPLorg/ccil/cowan/tagsoup/Element;-><init>(Lorg/ccil/cowan/tagsoup/ElementType;Z)V+]Lorg/ccil/cowan/tagsoup/ElementType;Lorg/ccil/cowan/tagsoup/ElementType; +HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->setAttributes(Lorg/xml/sax/Attributes;)V +HSPLorg/ccil/cowan/tagsoup/Element;-><init>(Lorg/ccil/cowan/tagsoup/ElementType;Z)V HSPLorg/ccil/cowan/tagsoup/Element;->atts()Lorg/ccil/cowan/tagsoup/AttributesImpl; HSPLorg/ccil/cowan/tagsoup/Element;->canContain(Lorg/ccil/cowan/tagsoup/Element;)Z HSPLorg/ccil/cowan/tagsoup/Element;->clean()V @@ -22360,10 +22303,10 @@ HSPLorg/ccil/cowan/tagsoup/HTMLScanner;-><init>()V HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->mark()V HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->resetDocumentLocator(Ljava/lang/String;Ljava/lang/String;)V HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->save(ILorg/ccil/cowan/tagsoup/ScanHandler;)V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->scan(Ljava/io/Reader;Lorg/ccil/cowan/tagsoup/ScanHandler;)V+]Ljava/io/PushbackReader;Ljava/io/PushbackReader;]Lorg/ccil/cowan/tagsoup/ScanHandler;Lorg/ccil/cowan/tagsoup/Parser; +HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->scan(Ljava/io/Reader;Lorg/ccil/cowan/tagsoup/ScanHandler;)V HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->unread(Ljava/io/PushbackReader;I)V HSPLorg/ccil/cowan/tagsoup/Parser$1;-><init>(Lorg/ccil/cowan/tagsoup/Parser;)V -HSPLorg/ccil/cowan/tagsoup/Parser;-><init>()V+]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLorg/ccil/cowan/tagsoup/Parser;-><init>()V HSPLorg/ccil/cowan/tagsoup/Parser;->aname([CII)V HSPLorg/ccil/cowan/tagsoup/Parser;->aval([CII)V HSPLorg/ccil/cowan/tagsoup/Parser;->entity([CII)V @@ -22378,16 +22321,16 @@ HSPLorg/ccil/cowan/tagsoup/Parser;->getReader(Lorg/xml/sax/InputSource;)Ljava/io HSPLorg/ccil/cowan/tagsoup/Parser;->gi([CII)V HSPLorg/ccil/cowan/tagsoup/Parser;->lookupEntity([CII)I HSPLorg/ccil/cowan/tagsoup/Parser;->makeName([CII)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Parser;->parse(Lorg/xml/sax/InputSource;)V+]Ljava/lang/Object;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Scanner;Lorg/ccil/cowan/tagsoup/HTMLScanner;]Lorg/ccil/cowan/tagsoup/Schema;Lorg/ccil/cowan/tagsoup/HTMLSchema;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter;]Lorg/xml/sax/InputSource;Lorg/xml/sax/InputSource; +HSPLorg/ccil/cowan/tagsoup/Parser;->parse(Lorg/xml/sax/InputSource;)V HSPLorg/ccil/cowan/tagsoup/Parser;->pcdata([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->pop()V+]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter; +HSPLorg/ccil/cowan/tagsoup/Parser;->pop()V HSPLorg/ccil/cowan/tagsoup/Parser;->prefixOf(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Parser;->push(Lorg/ccil/cowan/tagsoup/Element;)V+]Ljava/lang/String;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter; -HSPLorg/ccil/cowan/tagsoup/Parser;->rectify(Lorg/ccil/cowan/tagsoup/Element;)V+]Ljava/lang/Object;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element; +HSPLorg/ccil/cowan/tagsoup/Parser;->push(Lorg/ccil/cowan/tagsoup/Element;)V +HSPLorg/ccil/cowan/tagsoup/Parser;->rectify(Lorg/ccil/cowan/tagsoup/Element;)V HSPLorg/ccil/cowan/tagsoup/Parser;->restart(Lorg/ccil/cowan/tagsoup/Element;)V HSPLorg/ccil/cowan/tagsoup/Parser;->setContentHandler(Lorg/xml/sax/ContentHandler;)V HSPLorg/ccil/cowan/tagsoup/Parser;->setProperty(Ljava/lang/String;Ljava/lang/Object;)V -HSPLorg/ccil/cowan/tagsoup/Parser;->setup()V+]Lorg/ccil/cowan/tagsoup/Schema;Lorg/ccil/cowan/tagsoup/HTMLSchema; +HSPLorg/ccil/cowan/tagsoup/Parser;->setup()V HSPLorg/ccil/cowan/tagsoup/Parser;->stagc([CII)V HSPLorg/ccil/cowan/tagsoup/Parser;->truthValue(Z)Ljava/lang/Boolean; HSPLorg/ccil/cowan/tagsoup/Schema;->getElementType(Ljava/lang/String;)Lorg/ccil/cowan/tagsoup/ElementType; @@ -22429,7 +22372,6 @@ Landroid/accounts/AccountManager$5; Landroid/accounts/AccountManager$8; Landroid/accounts/AccountManager$AccountKeyData; Landroid/accounts/AccountManager$AmsTask$1; -Landroid/accounts/AccountManager$AmsTask$Response-IA; Landroid/accounts/AccountManager$AmsTask$Response; Landroid/accounts/AccountManager$AmsTask; Landroid/accounts/AccountManager$BaseFutureTask$1; @@ -22437,6 +22379,7 @@ Landroid/accounts/AccountManager$BaseFutureTask$Response; Landroid/accounts/AccountManager$BaseFutureTask; Landroid/accounts/AccountManager$Future2Task$1; Landroid/accounts/AccountManager$Future2Task; +Landroid/accounts/AccountManager-IA; Landroid/accounts/AccountManager; Landroid/accounts/AccountManagerCallback; Landroid/accounts/AccountManagerFuture; @@ -22447,6 +22390,7 @@ Landroid/accounts/AuthenticatorDescription$1; Landroid/accounts/AuthenticatorDescription-IA; Landroid/accounts/AuthenticatorDescription; Landroid/accounts/AuthenticatorException; +Landroid/accounts/IAccountAuthenticator$Stub$Proxy; Landroid/accounts/IAccountAuthenticator$Stub; Landroid/accounts/IAccountAuthenticator; Landroid/accounts/IAccountAuthenticatorResponse$Stub$Proxy; @@ -22455,18 +22399,26 @@ Landroid/accounts/IAccountAuthenticatorResponse; Landroid/accounts/IAccountManager$Stub$Proxy; Landroid/accounts/IAccountManager$Stub; Landroid/accounts/IAccountManager; +Landroid/accounts/IAccountManagerResponse$Stub$Proxy; Landroid/accounts/IAccountManagerResponse$Stub; Landroid/accounts/IAccountManagerResponse; Landroid/accounts/NetworkErrorException; Landroid/accounts/OnAccountsUpdateListener; Landroid/accounts/OperationCanceledException; +Landroid/aconfig/nano/Aconfig$flag_declaration; +Landroid/aconfig/nano/Aconfig$flag_declarations; +Landroid/aconfig/nano/Aconfig$flag_value; +Landroid/aconfig/nano/Aconfig$flag_values; +Landroid/aconfig/nano/Aconfig$parsed_flag; +Landroid/aconfig/nano/Aconfig$parsed_flags; +Landroid/aconfig/nano/Aconfig$tracepoint; Landroid/animation/AnimationHandler$$ExternalSyntheticLambda0; Landroid/animation/AnimationHandler$1; Landroid/animation/AnimationHandler$2; Landroid/animation/AnimationHandler$AnimationFrameCallback; Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider; -Landroid/animation/AnimationHandler$MyFrameCallbackProvider-IA; Landroid/animation/AnimationHandler$MyFrameCallbackProvider; +Landroid/animation/AnimationHandler-IA; Landroid/animation/AnimationHandler; Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda0; Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda1; @@ -22480,8 +22432,8 @@ Landroid/animation/Animator$AnimatorConstantState; Landroid/animation/Animator$AnimatorListener; Landroid/animation/Animator$AnimatorPauseListener; Landroid/animation/Animator; -Landroid/animation/AnimatorInflater$PathDataEvaluator-IA; Landroid/animation/AnimatorInflater$PathDataEvaluator; +Landroid/animation/AnimatorInflater-IA; Landroid/animation/AnimatorInflater; Landroid/animation/AnimatorListenerAdapter; Landroid/animation/AnimatorSet$$ExternalSyntheticLambda0; @@ -22492,8 +22444,8 @@ Landroid/animation/AnimatorSet$3; Landroid/animation/AnimatorSet$AnimationEvent; Landroid/animation/AnimatorSet$Builder; Landroid/animation/AnimatorSet$Node; -Landroid/animation/AnimatorSet$SeekState-IA; Landroid/animation/AnimatorSet$SeekState; +Landroid/animation/AnimatorSet-IA; Landroid/animation/AnimatorSet; Landroid/animation/ArgbEvaluator; Landroid/animation/BidirectionalTypeConverter; @@ -22524,8 +22476,8 @@ Landroid/animation/PathKeyframes$3; Landroid/animation/PathKeyframes$4; Landroid/animation/PathKeyframes$FloatKeyframesBase; Landroid/animation/PathKeyframes$IntKeyframesBase; -Landroid/animation/PathKeyframes$SimpleKeyframes-IA; Landroid/animation/PathKeyframes$SimpleKeyframes; +Landroid/animation/PathKeyframes-IA; Landroid/animation/PathKeyframes; Landroid/animation/PropertyValuesHolder$1; Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder; @@ -22538,8 +22490,8 @@ Landroid/animation/RectEvaluator; Landroid/animation/RevealAnimator; Landroid/animation/StateListAnimator$1; Landroid/animation/StateListAnimator$StateListAnimatorConstantState; -Landroid/animation/StateListAnimator$Tuple-IA; Landroid/animation/StateListAnimator$Tuple; +Landroid/animation/StateListAnimator-IA; Landroid/animation/StateListAnimator; Landroid/animation/TimeAnimator$TimeListener; Landroid/animation/TimeAnimator; @@ -22572,19 +22524,22 @@ Landroid/app/Activity$$ExternalSyntheticLambda0; Landroid/app/Activity$1; Landroid/app/Activity$HostCallbacks; Landroid/app/Activity$ManagedCursor; -Landroid/app/Activity$ManagedDialog-IA; Landroid/app/Activity$ManagedDialog; Landroid/app/Activity$NonConfigurationInstances; Landroid/app/Activity$RequestFinishCallback; Landroid/app/Activity$TranslucentConversionListener; +Landroid/app/Activity-IA; Landroid/app/Activity; Landroid/app/ActivityClient$1; -Landroid/app/ActivityClient$ActivityClientControllerSingleton-IA; Landroid/app/ActivityClient$ActivityClientControllerSingleton; Landroid/app/ActivityClient-IA; Landroid/app/ActivityClient; -Landroid/app/ActivityManager$2; +Landroid/app/ActivityManager$$ExternalSyntheticLambda0; +Landroid/app/ActivityManager$$ExternalSyntheticLambda1; +Landroid/app/ActivityManager$$ExternalSyntheticLambda2; +Landroid/app/ActivityManager$1; Landroid/app/ActivityManager$3; +Landroid/app/ActivityManager$4; Landroid/app/ActivityManager$AppTask; Landroid/app/ActivityManager$MemoryInfo$1; Landroid/app/ActivityManager$MemoryInfo; @@ -22596,20 +22551,16 @@ Landroid/app/ActivityManager$ProcessErrorStateInfo$1; Landroid/app/ActivityManager$ProcessErrorStateInfo; Landroid/app/ActivityManager$RecentTaskInfo$1; Landroid/app/ActivityManager$RecentTaskInfo$PersistedTaskSnapshotData; -Landroid/app/ActivityManager$RecentTaskInfo-IA; Landroid/app/ActivityManager$RecentTaskInfo; Landroid/app/ActivityManager$RunningAppProcessInfo$1; -Landroid/app/ActivityManager$RunningAppProcessInfo-IA; Landroid/app/ActivityManager$RunningAppProcessInfo; Landroid/app/ActivityManager$RunningServiceInfo$1; -Landroid/app/ActivityManager$RunningServiceInfo-IA; Landroid/app/ActivityManager$RunningServiceInfo; Landroid/app/ActivityManager$RunningTaskInfo$1; -Landroid/app/ActivityManager$RunningTaskInfo-IA; Landroid/app/ActivityManager$RunningTaskInfo; Landroid/app/ActivityManager$TaskDescription$1; -Landroid/app/ActivityManager$TaskDescription-IA; Landroid/app/ActivityManager$TaskDescription; +Landroid/app/ActivityManager-IA; Landroid/app/ActivityManager; Landroid/app/ActivityManagerInternal; Landroid/app/ActivityOptions$1; @@ -22639,10 +22590,11 @@ Landroid/app/ActivityThread$3; Landroid/app/ActivityThread$4; Landroid/app/ActivityThread$ActivityClientRecord$1; Landroid/app/ActivityThread$ActivityClientRecord; +Landroid/app/ActivityThread$AndroidOs; Landroid/app/ActivityThread$AppBindData; Landroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2; Landroid/app/ActivityThread$ApplicationThread$1; -Landroid/app/ActivityThread$ApplicationThread-IA; +Landroid/app/ActivityThread$ApplicationThread; Landroid/app/ActivityThread$BindServiceData; Landroid/app/ActivityThread$ContextCleanupInfo; Landroid/app/ActivityThread$CreateBackupAgentData; @@ -22652,7 +22604,6 @@ Landroid/app/ActivityThread$DumpHeapData; Landroid/app/ActivityThread$DumpResourcesData; Landroid/app/ActivityThread$GcIdler; Landroid/app/ActivityThread$H; -Landroid/app/ActivityThread$Idler-IA; Landroid/app/ActivityThread$Idler; Landroid/app/ActivityThread$Profiler; Landroid/app/ActivityThread$ProviderClientRecord; @@ -22664,6 +22615,7 @@ Landroid/app/ActivityThread$RequestAssistContextExtras; Landroid/app/ActivityThread$SafeCancellationTransport; Landroid/app/ActivityThread$ServiceArgsData; Landroid/app/ActivityThread$UpdateCompatibilityData; +Landroid/app/ActivityThread-IA; Landroid/app/ActivityThread; Landroid/app/ActivityThreadInternal; Landroid/app/ActivityTransitionCoordinator; @@ -22746,8 +22698,8 @@ Landroid/app/ApplicationErrorReport; Landroid/app/ApplicationExitInfo$1; Landroid/app/ApplicationExitInfo-IA; Landroid/app/ApplicationExitInfo; -Landroid/app/ApplicationLoaders$CachedClassLoader-IA; Landroid/app/ApplicationLoaders$CachedClassLoader; +Landroid/app/ApplicationLoaders-IA; Landroid/app/ApplicationLoaders; Landroid/app/ApplicationPackageManager$$ExternalSyntheticLambda1; Landroid/app/ApplicationPackageManager$$ExternalSyntheticLambda2; @@ -22770,6 +22722,8 @@ Landroid/app/BackgroundInstallControlManager; Landroid/app/BackgroundServiceStartNotAllowedException$1; Landroid/app/BackgroundServiceStartNotAllowedException; Landroid/app/BroadcastOptions; +Landroid/app/BroadcastStickyCache; +Landroid/app/CameraCompatTaskInfo$1; Landroid/app/CameraCompatTaskInfo; Landroid/app/ClientTransactionHandler; Landroid/app/ComponentCaller; @@ -22874,7 +22828,6 @@ Landroid/app/IAssistDataReceiver; Landroid/app/IBackupAgent$Stub$Proxy; Landroid/app/IBackupAgent$Stub; Landroid/app/IBackupAgent; -Landroid/app/ICompatCameraControlCallback; Landroid/app/IForegroundServiceObserver$Stub$Proxy; Landroid/app/IForegroundServiceObserver$Stub; Landroid/app/IForegroundServiceObserver; @@ -22915,6 +22868,7 @@ Landroid/app/IServiceConnection; Landroid/app/IStopUserCallback$Stub$Proxy; Landroid/app/IStopUserCallback$Stub; Landroid/app/IStopUserCallback; +Landroid/app/ITaskStackListener$Stub$Proxy; Landroid/app/ITaskStackListener$Stub; Landroid/app/ITaskStackListener; Landroid/app/ITransientNotification$Stub$Proxy; @@ -22969,14 +22923,13 @@ Landroid/app/ListActivity; Landroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0; Landroid/app/LoadedApk$ReceiverDispatcher$Args; Landroid/app/LoadedApk$ReceiverDispatcher; -Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo-IA; Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo; Landroid/app/LoadedApk$ServiceDispatcher$DeathMonitor; Landroid/app/LoadedApk$ServiceDispatcher$RunConnection; Landroid/app/LoadedApk$ServiceDispatcher; Landroid/app/LoadedApk$SplitDependencyLoaderImpl; -Landroid/app/LoadedApk$WarningContextClassLoader-IA; Landroid/app/LoadedApk$WarningContextClassLoader; +Landroid/app/LoadedApk-IA; Landroid/app/LoadedApk; Landroid/app/LoaderManager$LoaderCallbacks; Landroid/app/LoaderManager; @@ -22990,13 +22943,11 @@ Landroid/app/Notification$$ExternalSyntheticLambda0; Landroid/app/Notification$1; Landroid/app/Notification$Action$1; Landroid/app/Notification$Action$Builder; -Landroid/app/Notification$Action-IA; Landroid/app/Notification$Action; Landroid/app/Notification$BigPictureStyle; Landroid/app/Notification$BigTextStyle; Landroid/app/Notification$BubbleMetadata$1; Landroid/app/Notification$BubbleMetadata$Builder; -Landroid/app/Notification$BubbleMetadata-IA; Landroid/app/Notification$BubbleMetadata; Landroid/app/Notification$Builder; Landroid/app/Notification$BuilderRemoteViews; @@ -23009,12 +22960,12 @@ Landroid/app/Notification$InboxStyle; Landroid/app/Notification$MediaStyle; Landroid/app/Notification$MessagingStyle$Message; Landroid/app/Notification$MessagingStyle; -Landroid/app/Notification$StandardTemplateParams-IA; Landroid/app/Notification$StandardTemplateParams; Landroid/app/Notification$Style; Landroid/app/Notification$TemplateBindResult$MarginSet; Landroid/app/Notification$TemplateBindResult; Landroid/app/Notification$TvExtender; +Landroid/app/Notification-IA; Landroid/app/Notification; Landroid/app/NotificationChannel$1; Landroid/app/NotificationChannel; @@ -23033,7 +22984,6 @@ Landroid/app/PackageInstallObserver; Landroid/app/PendingIntent$$ExternalSyntheticLambda0; Landroid/app/PendingIntent$$ExternalSyntheticLambda1; Landroid/app/PendingIntent$$ExternalSyntheticLambda2; -Landroid/app/PendingIntent$$ExternalSyntheticLambda3; Landroid/app/PendingIntent$1; Landroid/app/PendingIntent$CancelListener; Landroid/app/PendingIntent$CanceledException; @@ -23041,7 +22991,6 @@ Landroid/app/PendingIntent$OnFinished; Landroid/app/PendingIntent$OnMarshaledListener; Landroid/app/PendingIntent; Landroid/app/Person$1; -Landroid/app/Person$Builder-IA; Landroid/app/Person$Builder; Landroid/app/Person-IA; Landroid/app/Person; @@ -23080,15 +23029,14 @@ Landroid/app/RemoteInputHistoryItem; Landroid/app/RemoteServiceException; Landroid/app/ResourcesManager$$ExternalSyntheticLambda0; Landroid/app/ResourcesManager$$ExternalSyntheticLambda1; -Landroid/app/ResourcesManager$ActivityResource-IA; Landroid/app/ResourcesManager$ActivityResource; -Landroid/app/ResourcesManager$ActivityResources-IA; Landroid/app/ResourcesManager$ActivityResources; Landroid/app/ResourcesManager$ApkAssetsSupplier; Landroid/app/ResourcesManager$ApkKey; +Landroid/app/ResourcesManager$PathCollector; Landroid/app/ResourcesManager$SharedLibraryAssets; -Landroid/app/ResourcesManager$UpdateHandler-IA; Landroid/app/ResourcesManager$UpdateHandler; +Landroid/app/ResourcesManager-IA; Landroid/app/ResourcesManager; Landroid/app/ResultInfo$1; Landroid/app/ResultInfo; @@ -23115,9 +23063,9 @@ Landroid/app/SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0; Landroid/app/SharedPreferencesImpl$EditorImpl$1; Landroid/app/SharedPreferencesImpl$EditorImpl$2; Landroid/app/SharedPreferencesImpl$EditorImpl; -Landroid/app/SharedPreferencesImpl$MemoryCommitResult-IA; Landroid/app/SharedPreferencesImpl$MemoryCommitResult; Landroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory; +Landroid/app/SharedPreferencesImpl-IA; Landroid/app/StackTrace; Landroid/app/StatusBarManager; Landroid/app/SyncNotedAppOp$1; @@ -23174,6 +23122,8 @@ Landroid/app/SystemServiceRegistry$143; Landroid/app/SystemServiceRegistry$144; Landroid/app/SystemServiceRegistry$145; Landroid/app/SystemServiceRegistry$146; +Landroid/app/SystemServiceRegistry$147; +Landroid/app/SystemServiceRegistry$148; Landroid/app/SystemServiceRegistry$14; Landroid/app/SystemServiceRegistry$15; Landroid/app/SystemServiceRegistry$16; @@ -23283,8 +23233,8 @@ Landroid/app/UiModeManager$1; Landroid/app/UiModeManager$Globals; Landroid/app/UiModeManager$InnerListener; Landroid/app/UiModeManager$OnProjectionStateChangedListener; -Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager-IA; Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager; +Landroid/app/UiModeManager-IA; Landroid/app/UiModeManager; Landroid/app/UidObserver; Landroid/app/UriGrantsManager$1; @@ -23396,17 +23346,17 @@ Landroid/app/assist/AssistStructure$ViewNodeText; Landroid/app/assist/AssistStructure$ViewStackEntry; Landroid/app/assist/AssistStructure$WindowNode; Landroid/app/assist/AssistStructure; -Landroid/app/backup/BackupAgent$BackupServiceBinder-IA; Landroid/app/backup/BackupAgent$BackupServiceBinder; Landroid/app/backup/BackupAgent$SharedPrefsSynchronizer; +Landroid/app/backup/BackupAgent-IA; Landroid/app/backup/BackupAgent; Landroid/app/backup/BackupAgentHelper; Landroid/app/backup/BackupDataInput$EntityHeader; Landroid/app/backup/BackupDataInput; Landroid/app/backup/BackupDataOutput; Landroid/app/backup/BackupHelper; -Landroid/app/backup/BackupHelperDispatcher$Header-IA; Landroid/app/backup/BackupHelperDispatcher$Header; +Landroid/app/backup/BackupHelperDispatcher-IA; Landroid/app/backup/BackupHelperDispatcher; Landroid/app/backup/BackupHelperWithLogger; Landroid/app/backup/BackupManager$BackupObserverWrapper$1; @@ -23494,11 +23444,11 @@ Landroid/app/job/IUserVisibleJobObserver; Landroid/app/job/JobInfo$1; Landroid/app/job/JobInfo$Builder; Landroid/app/job/JobInfo$TriggerContentUri$1; -Landroid/app/job/JobInfo$TriggerContentUri-IA; Landroid/app/job/JobInfo$TriggerContentUri; Landroid/app/job/JobInfo-IA; Landroid/app/job/JobInfo; Landroid/app/job/JobParameters$1; +Landroid/app/job/JobParameters$JobCleanupCallback; Landroid/app/job/JobParameters-IA; Landroid/app/job/JobParameters; Landroid/app/job/JobScheduler; @@ -23572,8 +23522,6 @@ Landroid/app/servertransaction/LaunchActivityItem; Landroid/app/servertransaction/NewIntentItem$1; Landroid/app/servertransaction/NewIntentItem-IA; Landroid/app/servertransaction/NewIntentItem; -Landroid/app/servertransaction/ObjectPool; -Landroid/app/servertransaction/ObjectPoolItem; Landroid/app/servertransaction/PauseActivityItem$1; Landroid/app/servertransaction/PauseActivityItem-IA; Landroid/app/servertransaction/PauseActivityItem; @@ -23593,6 +23541,7 @@ Landroid/app/servertransaction/TopResumedActivityChangeItem-IA; Landroid/app/servertransaction/TopResumedActivityChangeItem; Landroid/app/servertransaction/TransactionExecutor; Landroid/app/servertransaction/TransactionExecutorHelper; +Landroid/app/servertransaction/WindowStateTransactionItem$TransactionListener; Landroid/app/slice/ISliceManager$Stub$Proxy; Landroid/app/slice/ISliceManager$Stub; Landroid/app/slice/ISliceManager; @@ -23644,6 +23593,7 @@ Landroid/app/smartspace/uitemplatedata/TapAction$1; Landroid/app/smartspace/uitemplatedata/TapAction; Landroid/app/smartspace/uitemplatedata/Text$1; Landroid/app/smartspace/uitemplatedata/Text; +Landroid/app/supervision/SupervisionManager; Landroid/app/time/ITimeZoneDetectorListener$Stub$Proxy; Landroid/app/time/ITimeZoneDetectorListener$Stub; Landroid/app/time/ITimeZoneDetectorListener; @@ -23766,15 +23716,15 @@ Landroid/companion/virtual/IVirtualDevice; Landroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy; Landroid/companion/virtual/IVirtualDeviceManager$Stub; Landroid/companion/virtual/IVirtualDeviceManager; +Landroid/companion/virtual/VirtualDevice$1; Landroid/companion/virtual/VirtualDevice; Landroid/companion/virtual/VirtualDeviceManager; Landroid/companion/virtual/flags/FeatureFlags; Landroid/companion/virtual/flags/FeatureFlagsImpl; Landroid/companion/virtual/flags/Flags; -Landroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl-IA; Landroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl; -Landroid/content/AbstractThreadedSyncAdapter$SyncThread-IA; Landroid/content/AbstractThreadedSyncAdapter$SyncThread; +Landroid/content/AbstractThreadedSyncAdapter-IA; Landroid/content/AbstractThreadedSyncAdapter; Landroid/content/ActivityNotFoundException; Landroid/content/ApexEnvironment; @@ -23796,8 +23746,8 @@ Landroid/content/BroadcastReceiver$PendingResult$1; Landroid/content/BroadcastReceiver$PendingResult; Landroid/content/BroadcastReceiver; Landroid/content/ClipData$1; -Landroid/content/ClipData$Item-IA; Landroid/content/ClipData$Item; +Landroid/content/ClipData-IA; Landroid/content/ClipData; Landroid/content/ClipDescription$1; Landroid/content/ClipDescription; @@ -23825,14 +23775,13 @@ Landroid/content/ContentProvider$PipeDataWriter; Landroid/content/ContentProvider$Transport; Landroid/content/ContentProvider; Landroid/content/ContentProviderClient$CursorWrapperInner; -Landroid/content/ContentProviderClient$NotRespondingRunnable-IA; Landroid/content/ContentProviderClient$NotRespondingRunnable; +Landroid/content/ContentProviderClient-IA; Landroid/content/ContentProviderClient; Landroid/content/ContentProviderNative; Landroid/content/ContentProviderOperation$1; Landroid/content/ContentProviderOperation$BackReference$1; Landroid/content/ContentProviderOperation$BackReference; -Landroid/content/ContentProviderOperation$Builder-IA; Landroid/content/ContentProviderOperation$Builder; Landroid/content/ContentProviderOperation-IA; Landroid/content/ContentProviderOperation; @@ -23842,11 +23791,10 @@ Landroid/content/ContentResolver$1; Landroid/content/ContentResolver$2; Landroid/content/ContentResolver$OpenResourceIdResult; Landroid/content/ContentResolver$ParcelFileDescriptorInner; -Landroid/content/ContentResolver$ResultListener-IA; Landroid/content/ContentResolver$ResultListener; -Landroid/content/ContentResolver$StringResultListener-IA; Landroid/content/ContentResolver$StringResultListener; Landroid/content/ContentResolver$UriResultListener; +Landroid/content/ContentResolver-IA; Landroid/content/ContentResolver; Landroid/content/ContentUris; Landroid/content/ContentValues$1; @@ -24040,6 +23988,7 @@ Landroid/content/pm/IDexModuleRegisterCallback; Landroid/content/pm/ILauncherApps$Stub$Proxy; Landroid/content/pm/ILauncherApps$Stub; Landroid/content/pm/ILauncherApps; +Landroid/content/pm/IOnAppsChangedListener$Stub$Proxy; Landroid/content/pm/IOnAppsChangedListener$Stub; Landroid/content/pm/IOnAppsChangedListener; Landroid/content/pm/IOnChecksumsReadyListener$Stub$Proxy; @@ -24114,11 +24063,11 @@ Landroid/content/pm/LauncherApps$1; Landroid/content/pm/LauncherApps$AppUsageLimit$1; Landroid/content/pm/LauncherApps$AppUsageLimit; Landroid/content/pm/LauncherApps$Callback; -Landroid/content/pm/LauncherApps$CallbackMessageHandler$CallbackInfo-IA; Landroid/content/pm/LauncherApps$CallbackMessageHandler$CallbackInfo; Landroid/content/pm/LauncherApps$CallbackMessageHandler; Landroid/content/pm/LauncherApps$ShortcutQuery$QueryFlags; Landroid/content/pm/LauncherApps$ShortcutQuery; +Landroid/content/pm/LauncherApps-IA; Landroid/content/pm/LauncherApps; Landroid/content/pm/ModuleInfo$1; Landroid/content/pm/ModuleInfo-IA; @@ -24162,7 +24111,6 @@ Landroid/content/pm/PackageManager$Property; Landroid/content/pm/PackageManager$ResolveInfoFlags; Landroid/content/pm/PackageManager; Landroid/content/pm/PackageParser$Activity$1; -Landroid/content/pm/PackageParser$Activity-IA; Landroid/content/pm/PackageParser$Activity; Landroid/content/pm/PackageParser$ActivityIntentInfo; Landroid/content/pm/PackageParser$ApkLite; @@ -24182,16 +24130,13 @@ Landroid/content/pm/PackageParser$PackageParserException; Landroid/content/pm/PackageParser$ParseComponentArgs; Landroid/content/pm/PackageParser$ParsePackageItemArgs; Landroid/content/pm/PackageParser$Permission$1; -Landroid/content/pm/PackageParser$Permission-IA; Landroid/content/pm/PackageParser$Permission; Landroid/content/pm/PackageParser$PermissionGroup$1; Landroid/content/pm/PackageParser$PermissionGroup; Landroid/content/pm/PackageParser$Provider$1; -Landroid/content/pm/PackageParser$Provider-IA; Landroid/content/pm/PackageParser$Provider; Landroid/content/pm/PackageParser$ProviderIntentInfo; Landroid/content/pm/PackageParser$Service$1; -Landroid/content/pm/PackageParser$Service-IA; Landroid/content/pm/PackageParser$Service; Landroid/content/pm/PackageParser$ServiceIntentInfo; Landroid/content/pm/PackageParser$SigningDetails$1; @@ -24200,6 +24145,7 @@ Landroid/content/pm/PackageParser$SigningDetails; Landroid/content/pm/PackageParser$SplitAssetLoader; Landroid/content/pm/PackageParser$SplitDependencyLoader$IllegalDependencyException; Landroid/content/pm/PackageParser$SplitNameComparator; +Landroid/content/pm/PackageParser-IA; Landroid/content/pm/PackageParser; Landroid/content/pm/PackageParserCacheHelper$ReadHelper; Landroid/content/pm/PackageParserCacheHelper$WriteHelper; @@ -24324,7 +24270,6 @@ Landroid/content/res/ApkAssets; Landroid/content/res/AssetFileDescriptor$1; Landroid/content/res/AssetFileDescriptor$AutoCloseInputStream; Landroid/content/res/AssetFileDescriptor; -Landroid/content/res/AssetManager$AssetInputStream-IA; Landroid/content/res/AssetManager$AssetInputStream; Landroid/content/res/AssetManager$Builder; Landroid/content/res/AssetManager-IA; @@ -24369,17 +24314,17 @@ Landroid/content/res/Resources$$ExternalSyntheticLambda0; Landroid/content/res/Resources$$ExternalSyntheticLambda1; Landroid/content/res/Resources$AssetManagerUpdateHandler; Landroid/content/res/Resources$NotFoundException; -Landroid/content/res/Resources$Theme-IA; Landroid/content/res/Resources$Theme; Landroid/content/res/Resources$ThemeKey; Landroid/content/res/Resources$UpdateCallbacks; +Landroid/content/res/Resources-IA; Landroid/content/res/Resources; Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda0; Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda1; Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2; -Landroid/content/res/ResourcesImpl$LookupStack-IA; Landroid/content/res/ResourcesImpl$LookupStack; Landroid/content/res/ResourcesImpl$ThemeImpl; +Landroid/content/res/ResourcesImpl-IA; Landroid/content/res/ResourcesImpl; Landroid/content/res/ResourcesKey; Landroid/content/res/StringBlock$Height; @@ -24459,17 +24404,20 @@ Landroid/database/sqlite/SQLiteBlobTooBigException; Landroid/database/sqlite/SQLiteCantOpenDatabaseException; Landroid/database/sqlite/SQLiteClosable; Landroid/database/sqlite/SQLiteCompatibilityWalFlags; -Landroid/database/sqlite/SQLiteConnection$Operation-IA; Landroid/database/sqlite/SQLiteConnection$Operation; +Landroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda0; +Landroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1; Landroid/database/sqlite/SQLiteConnection$OperationLog; Landroid/database/sqlite/SQLiteConnection$PreparedStatement; Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; +Landroid/database/sqlite/SQLiteConnection$RateLimiter; +Landroid/database/sqlite/SQLiteConnection-IA; Landroid/database/sqlite/SQLiteConnection; Landroid/database/sqlite/SQLiteConnectionPool$1; Landroid/database/sqlite/SQLiteConnectionPool$AcquiredConnectionStatus; -Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter-IA; Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter; Landroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler; +Landroid/database/sqlite/SQLiteConnectionPool-IA; Landroid/database/sqlite/SQLiteConnectionPool; Landroid/database/sqlite/SQLiteConstraintException; Landroid/database/sqlite/SQLiteCursorDriver; @@ -24481,8 +24429,8 @@ Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda3; Landroid/database/sqlite/SQLiteDatabase$1; Landroid/database/sqlite/SQLiteDatabase$CursorFactory; Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -Landroid/database/sqlite/SQLiteDatabase$OpenParams-IA; Landroid/database/sqlite/SQLiteDatabase$OpenParams; +Landroid/database/sqlite/SQLiteDatabase-IA; Landroid/database/sqlite/SQLiteDatabase; Landroid/database/sqlite/SQLiteDatabaseConfiguration; Landroid/database/sqlite/SQLiteDatabaseCorruptException; @@ -24506,8 +24454,8 @@ Landroid/database/sqlite/SQLiteQuery; Landroid/database/sqlite/SQLiteQueryBuilder; Landroid/database/sqlite/SQLiteRawStatement; Landroid/database/sqlite/SQLiteReadOnlyDatabaseException; -Landroid/database/sqlite/SQLiteSession$Transaction-IA; Landroid/database/sqlite/SQLiteSession$Transaction; +Landroid/database/sqlite/SQLiteSession-IA; Landroid/database/sqlite/SQLiteSession; Landroid/database/sqlite/SQLiteStatement; Landroid/database/sqlite/SQLiteStatementInfo; @@ -24516,8 +24464,8 @@ Landroid/database/sqlite/SQLiteTokenizer; Landroid/database/sqlite/SQLiteTransactionListener; Landroid/database/sqlite/SqliteWrapper; Landroid/ddm/DdmHandle; -Landroid/ddm/DdmHandleAppName$Names-IA; Landroid/ddm/DdmHandleAppName$Names; +Landroid/ddm/DdmHandleAppName-IA; Landroid/ddm/DdmHandleAppName; Landroid/ddm/DdmHandleExit; Landroid/ddm/DdmHandleHeap; @@ -24579,11 +24527,12 @@ Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda4; Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda5; Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda6; Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda9; +Landroid/graphics/ColorSpace$Rgb$Native; Landroid/graphics/ColorSpace$Rgb$NoImagePreloadHolder; Landroid/graphics/ColorSpace$Rgb$TransferParameters; -Landroid/graphics/ColorSpace$Rgb-IA; Landroid/graphics/ColorSpace$Rgb; Landroid/graphics/ColorSpace$Xyz; +Landroid/graphics/ColorSpace-IA; Landroid/graphics/ColorSpace; Landroid/graphics/Compatibility; Landroid/graphics/ComposePathEffect; @@ -24613,11 +24562,11 @@ Landroid/graphics/HardwareRenderer$DestroyContextRunnable; Landroid/graphics/HardwareRenderer$FrameCommitCallback; Landroid/graphics/HardwareRenderer$FrameCompleteCallback; Landroid/graphics/HardwareRenderer$FrameDrawingCallback; -Landroid/graphics/HardwareRenderer$FrameRenderRequest-IA; Landroid/graphics/HardwareRenderer$FrameRenderRequest; Landroid/graphics/HardwareRenderer$PrepareSurfaceControlForWebviewCallback; Landroid/graphics/HardwareRenderer$ProcessInitializer$1; Landroid/graphics/HardwareRenderer$ProcessInitializer; +Landroid/graphics/HardwareRenderer-IA; Landroid/graphics/HardwareRenderer; Landroid/graphics/HardwareRendererObserver$$ExternalSyntheticLambda0; Landroid/graphics/HardwareRendererObserver$OnFrameMetricsAvailableListener; @@ -24626,12 +24575,11 @@ Landroid/graphics/ImageDecoder$AssetInputStreamSource; Landroid/graphics/ImageDecoder$ByteArraySource; Landroid/graphics/ImageDecoder$DecodeException; Landroid/graphics/ImageDecoder$ImageDecoderSourceTrace; -Landroid/graphics/ImageDecoder$ImageInfo-IA; Landroid/graphics/ImageDecoder$ImageInfo; Landroid/graphics/ImageDecoder$InputStreamSource; Landroid/graphics/ImageDecoder$OnHeaderDecodedListener; -Landroid/graphics/ImageDecoder$Source-IA; Landroid/graphics/ImageDecoder$Source; +Landroid/graphics/ImageDecoder-IA; Landroid/graphics/ImageDecoder; Landroid/graphics/ImageFormat; Landroid/graphics/Insets$1; @@ -24749,7 +24697,6 @@ Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState; Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedVectorDrawableTransition; Landroid/graphics/drawable/AnimatedStateListDrawable$AnimationDrawableTransition; Landroid/graphics/drawable/AnimatedStateListDrawable$FrameInterpolator; -Landroid/graphics/drawable/AnimatedStateListDrawable$Transition-IA; Landroid/graphics/drawable/AnimatedStateListDrawable$Transition; Landroid/graphics/drawable/AnimatedStateListDrawable-IA; Landroid/graphics/drawable/AnimatedStateListDrawable; @@ -24783,9 +24730,9 @@ Landroid/graphics/drawable/Drawable$Callback; Landroid/graphics/drawable/Drawable$ConstantState; Landroid/graphics/drawable/Drawable; Landroid/graphics/drawable/DrawableContainer$1; -Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback-IA; Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback; Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; +Landroid/graphics/drawable/DrawableContainer-IA; Landroid/graphics/drawable/DrawableContainer; Landroid/graphics/drawable/DrawableInflater; Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; @@ -24898,7 +24845,6 @@ Landroid/graphics/text/LineBreakConfig$Builder; Landroid/graphics/text/LineBreakConfig; Landroid/graphics/text/LineBreaker$Builder; Landroid/graphics/text/LineBreaker$ParagraphConstraints; -Landroid/graphics/text/LineBreaker$Result-IA; Landroid/graphics/text/LineBreaker$Result; Landroid/graphics/text/LineBreaker-IA; Landroid/graphics/text/LineBreaker; @@ -25032,7 +24978,6 @@ Landroid/hardware/camera2/CameraCharacteristics$5; Landroid/hardware/camera2/CameraCharacteristics$6; Landroid/hardware/camera2/CameraCharacteristics$7; Landroid/hardware/camera2/CameraCharacteristics$8; -Landroid/hardware/camera2/CameraCharacteristics$9; Landroid/hardware/camera2/CameraCharacteristics$Key; Landroid/hardware/camera2/CameraCharacteristics; Landroid/hardware/camera2/CameraDevice$StateCallback; @@ -25052,18 +24997,17 @@ Landroid/hardware/camera2/CameraMetadata; Landroid/hardware/camera2/CameraOfflineSession$CameraOfflineSessionCallback; Landroid/hardware/camera2/CaptureRequest$1; Landroid/hardware/camera2/CaptureRequest$2; -Landroid/hardware/camera2/CaptureRequest$3; Landroid/hardware/camera2/CaptureRequest$Key; Landroid/hardware/camera2/CaptureRequest; Landroid/hardware/camera2/CaptureResult$1; Landroid/hardware/camera2/CaptureResult$2; Landroid/hardware/camera2/CaptureResult$3; -Landroid/hardware/camera2/CaptureResult$4; Landroid/hardware/camera2/CaptureResult$Key; Landroid/hardware/camera2/CaptureResult; Landroid/hardware/camera2/DngCreator; Landroid/hardware/camera2/TotalCaptureResult; Landroid/hardware/camera2/extension/ICaptureProcessorImpl; +Landroid/hardware/camera2/impl/CameraDeviceImpl$1; Landroid/hardware/camera2/impl/CameraDeviceImpl$CameraHandlerExecutor; Landroid/hardware/camera2/impl/CameraDeviceImpl; Landroid/hardware/camera2/impl/CameraExtensionJpegProcessor; @@ -25198,6 +25142,7 @@ Landroid/hardware/contexthub/V1_0/MemRange; Landroid/hardware/contexthub/V1_0/NanoAppBinary; Landroid/hardware/contexthub/V1_0/PhysicalSensor; Landroid/hardware/contexthub/V1_1/Setting; +Landroid/hardware/devicestate/DeviceState$Configuration$1; Landroid/hardware/devicestate/DeviceState$Configuration; Landroid/hardware/devicestate/DeviceState; Landroid/hardware/devicestate/DeviceStateInfo$1; @@ -25209,8 +25154,8 @@ Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrappe Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1; Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2; Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback-IA; Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback; +Landroid/hardware/devicestate/DeviceStateManagerGlobal-IA; Landroid/hardware/devicestate/DeviceStateManagerGlobal; Landroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy; Landroid/hardware/devicestate/IDeviceStateManager$Stub; @@ -25245,13 +25190,12 @@ Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda0; Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda1; Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2; Landroid/hardware/display/DisplayManager$DisplayListener; -Landroid/hardware/display/DisplayManager$WeakDisplayCache-IA; Landroid/hardware/display/DisplayManager$WeakDisplayCache; +Landroid/hardware/display/DisplayManager-IA; Landroid/hardware/display/DisplayManager; Landroid/hardware/display/DisplayManagerGlobal$1; Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0; Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate; -Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback-IA; Landroid/hardware/display/DisplayManagerGlobal; Landroid/hardware/display/DisplayManagerInternal$DisplayPowerCallbacks; Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest; @@ -25357,9 +25301,9 @@ Landroid/hardware/input/InputDeviceIdentifier; Landroid/hardware/input/InputManager$InputDeviceListener; Landroid/hardware/input/InputManager; Landroid/hardware/input/InputManagerGlobal$InputDeviceListenerDelegate; -Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener-IA; Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener; Landroid/hardware/input/InputManagerGlobal$OnTabletModeChangedListenerDelegate; +Landroid/hardware/input/InputManagerGlobal-IA; Landroid/hardware/input/InputManagerGlobal; Landroid/hardware/input/InputSettings; Landroid/hardware/input/KeyboardLayout$1; @@ -25869,11 +25813,11 @@ Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$VariantS Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo; Landroid/icu/impl/ICUCurrencyDisplayInfoProvider; Landroid/icu/impl/ICUCurrencyMetaInfo$Collector; -Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector-IA; Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector; Landroid/icu/impl/ICUCurrencyMetaInfo$InfoCollector; Landroid/icu/impl/ICUCurrencyMetaInfo$RegionCollector; Landroid/icu/impl/ICUCurrencyMetaInfo$UniqueList; +Landroid/icu/impl/ICUCurrencyMetaInfo-IA; Landroid/icu/impl/ICUCurrencyMetaInfo; Landroid/icu/impl/ICUData$1; Landroid/icu/impl/ICUData$2; @@ -25901,10 +25845,10 @@ Landroid/icu/impl/ICUResourceBundle$4; Landroid/icu/impl/ICUResourceBundle$5; Landroid/icu/impl/ICUResourceBundle$AvailEntry; Landroid/icu/impl/ICUResourceBundle$AvailableLocalesSink; -Landroid/icu/impl/ICUResourceBundle$Loader-IA; Landroid/icu/impl/ICUResourceBundle$Loader; Landroid/icu/impl/ICUResourceBundle$OpenType; Landroid/icu/impl/ICUResourceBundle$WholeBundle; +Landroid/icu/impl/ICUResourceBundle-IA; Landroid/icu/impl/ICUResourceBundle; Landroid/icu/impl/ICUResourceBundleImpl$ResourceArray; Landroid/icu/impl/ICUResourceBundleImpl$ResourceBinary; @@ -26039,10 +25983,10 @@ Landroid/icu/impl/TZDBTimeZoneNames$TZDBNames; Landroid/icu/impl/TZDBTimeZoneNames; Landroid/icu/impl/TextTrieMap$CharIterator; Landroid/icu/impl/TextTrieMap$LongestMatchHandler; -Landroid/icu/impl/TextTrieMap$Node-IA; Landroid/icu/impl/TextTrieMap$Node; Landroid/icu/impl/TextTrieMap$Output; Landroid/icu/impl/TextTrieMap$ResultHandler; +Landroid/icu/impl/TextTrieMap-IA; Landroid/icu/impl/TextTrieMap; Landroid/icu/impl/TimeZoneAdapter; Landroid/icu/impl/TimeZoneGenericNames$1; @@ -26062,9 +26006,9 @@ Landroid/icu/impl/TimeZoneNamesImpl$NameSearchHandler; Landroid/icu/impl/TimeZoneNamesImpl$TZ2MZsCache; Landroid/icu/impl/TimeZoneNamesImpl$ZNames$NameTypeIndex; Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader-IA; Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader; Landroid/icu/impl/TimeZoneNamesImpl$ZoneStringsLoader; +Landroid/icu/impl/TimeZoneNamesImpl-IA; Landroid/icu/impl/TimeZoneNamesImpl; Landroid/icu/impl/Trie$DataManipulate; Landroid/icu/impl/Trie$DefaultGetFoldingOffset; @@ -26405,10 +26349,10 @@ Landroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier; Landroid/icu/impl/number/MutablePatternModifier; Landroid/icu/impl/number/Padder$PadPosition; Landroid/icu/impl/number/Padder; -Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo-IA; Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo; Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo; Landroid/icu/impl/number/PatternStringParser$ParserState; +Landroid/icu/impl/number/PatternStringParser-IA; Landroid/icu/impl/number/PatternStringParser; Landroid/icu/impl/number/PatternStringUtils$1; Landroid/icu/impl/number/PatternStringUtils$PatternSignType; @@ -26720,7 +26664,6 @@ Landroid/icu/text/DateFormat$Field; Landroid/icu/text/DateFormat$HourCycle; Landroid/icu/text/DateFormat; Landroid/icu/text/DateFormatSymbols$1; -Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols-IA; Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols; Landroid/icu/text/DateFormatSymbols$CalendarDataSink$AliasType; Landroid/icu/text/DateFormatSymbols$CalendarDataSink; @@ -26736,25 +26679,21 @@ Landroid/icu/text/DateIntervalFormat; Landroid/icu/text/DateIntervalInfo$DateIntervalSink; Landroid/icu/text/DateIntervalInfo$PatternInfo; Landroid/icu/text/DateIntervalInfo; -Landroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink-IA; Landroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink; -Landroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink-IA; Landroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink; Landroid/icu/text/DateTimePatternGenerator$AvailableFormatsSink; Landroid/icu/text/DateTimePatternGenerator$DTPGflags; -Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher-IA; Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher; Landroid/icu/text/DateTimePatternGenerator$DayPeriodAllowedHoursSink; Landroid/icu/text/DateTimePatternGenerator$DisplayWidth; -Landroid/icu/text/DateTimePatternGenerator$DistanceInfo-IA; Landroid/icu/text/DateTimePatternGenerator$DistanceInfo; Landroid/icu/text/DateTimePatternGenerator$FormatParser; Landroid/icu/text/DateTimePatternGenerator$PatternInfo; Landroid/icu/text/DateTimePatternGenerator$PatternWithMatcher; Landroid/icu/text/DateTimePatternGenerator$PatternWithSkeletonFlag; -Landroid/icu/text/DateTimePatternGenerator$SkeletonFields-IA; Landroid/icu/text/DateTimePatternGenerator$SkeletonFields; Landroid/icu/text/DateTimePatternGenerator$VariableField; +Landroid/icu/text/DateTimePatternGenerator-IA; Landroid/icu/text/DateTimePatternGenerator; Landroid/icu/text/DecimalFormat$PropertySetter; Landroid/icu/text/DecimalFormat; @@ -26765,8 +26704,8 @@ Landroid/icu/text/DecimalFormatSymbols; Landroid/icu/text/DisplayContext$Type; Landroid/icu/text/DisplayContext; Landroid/icu/text/DurationFormat; -Landroid/icu/text/Edits$Iterator-IA; Landroid/icu/text/Edits$Iterator; +Landroid/icu/text/Edits-IA; Landroid/icu/text/Edits; Landroid/icu/text/EscapeTransliterator$1; Landroid/icu/text/EscapeTransliterator$2; @@ -26904,10 +26843,10 @@ Landroid/icu/text/PluralRules$OrConstraint; Landroid/icu/text/PluralRules$PluralType; Landroid/icu/text/PluralRules$RangeConstraint; Landroid/icu/text/PluralRules$Rule; -Landroid/icu/text/PluralRules$RuleList-IA; Landroid/icu/text/PluralRules$RuleList; Landroid/icu/text/PluralRules$SampleType; Landroid/icu/text/PluralRules$SimpleTokenizer; +Landroid/icu/text/PluralRules-IA; Landroid/icu/text/PluralRules; Landroid/icu/text/PluralRulesSerialProxy; Landroid/icu/text/Quantifier; @@ -26953,12 +26892,12 @@ Landroid/icu/text/ReplaceableString; Landroid/icu/text/RuleBasedBreakIterator$BreakCache; Landroid/icu/text/RuleBasedBreakIterator$DictionaryCache; Landroid/icu/text/RuleBasedBreakIterator; -Landroid/icu/text/RuleBasedCollator$CollationBuffer-IA; Landroid/icu/text/RuleBasedCollator$CollationBuffer; Landroid/icu/text/RuleBasedCollator$CollationKeyByteSink; Landroid/icu/text/RuleBasedCollator$FCDUTF16NFDIterator; Landroid/icu/text/RuleBasedCollator$NFDIterator; Landroid/icu/text/RuleBasedCollator$UTF16NFDIterator; +Landroid/icu/text/RuleBasedCollator-IA; Landroid/icu/text/RuleBasedCollator; Landroid/icu/text/RuleBasedNumberFormat; Landroid/icu/text/RuleBasedTransliterator$Data; @@ -27112,11 +27051,11 @@ Landroid/icu/util/BytesTrieBuilder$BytesAsCharSequence; Landroid/icu/util/BytesTrieBuilder; Landroid/icu/util/CECalendar; Landroid/icu/util/Calendar$1; -Landroid/icu/util/Calendar$FormatConfiguration-IA; Landroid/icu/util/Calendar$FormatConfiguration; Landroid/icu/util/Calendar$PatternData; Landroid/icu/util/Calendar$WeekData; Landroid/icu/util/Calendar$WeekDataCache; +Landroid/icu/util/Calendar-IA; Landroid/icu/util/Calendar; Landroid/icu/util/CaseInsensitiveString; Landroid/icu/util/CharsTrie$Entry; @@ -27131,19 +27070,16 @@ Landroid/icu/util/CodePointMap$RangeOption; Landroid/icu/util/CodePointMap$StringIterator; Landroid/icu/util/CodePointMap$ValueFilter; Landroid/icu/util/CodePointMap; -Landroid/icu/util/CodePointTrie$Data-IA; Landroid/icu/util/CodePointTrie$Data16; Landroid/icu/util/CodePointTrie$Data32; Landroid/icu/util/CodePointTrie$Data8; Landroid/icu/util/CodePointTrie$Data; Landroid/icu/util/CodePointTrie$Fast$FastStringIterator; -Landroid/icu/util/CodePointTrie$Fast-IA; Landroid/icu/util/CodePointTrie$Fast16; Landroid/icu/util/CodePointTrie$Fast32; Landroid/icu/util/CodePointTrie$Fast8; Landroid/icu/util/CodePointTrie$Fast; Landroid/icu/util/CodePointTrie$Small$SmallStringIterator; -Landroid/icu/util/CodePointTrie$Small-IA; Landroid/icu/util/CodePointTrie$Small16; Landroid/icu/util/CodePointTrie$Small32; Landroid/icu/util/CodePointTrie$Small8; @@ -27225,8 +27161,8 @@ Landroid/icu/util/MeasureUnit$MeasureUnitSink; Landroid/icu/util/MeasureUnit; Landroid/icu/util/MutableCodePointTrie$1; Landroid/icu/util/MutableCodePointTrie$AllSameBlocks; -Landroid/icu/util/MutableCodePointTrie$MixedBlocks-IA; Landroid/icu/util/MutableCodePointTrie$MixedBlocks; +Landroid/icu/util/MutableCodePointTrie-IA; Landroid/icu/util/MutableCodePointTrie; Landroid/icu/util/NoUnit; Landroid/icu/util/Output; @@ -27300,6 +27236,7 @@ Landroid/inputmethodservice/InputMethodService$Insets; Landroid/inputmethodservice/InputMethodService$SettingsObserver; Landroid/inputmethodservice/InputMethodService; Landroid/inputmethodservice/SoftInputWindow; +Landroid/internal/framework/protobuf/nano/MessageNano; Landroid/internal/hidl/base/V1_0/DebugInfo; Landroid/internal/hidl/base/V1_0/IBase; Landroid/internal/hidl/manager/V1_0/IServiceManager; @@ -27334,11 +27271,14 @@ Landroid/location/IGpsGeofenceHardware$Stub; Landroid/location/IGpsGeofenceHardware; Landroid/location/Location$$ExternalSyntheticLambda0; Landroid/location/Location$1; -Landroid/location/Location$BearingDistanceCache-IA; Landroid/location/Location$BearingDistanceCache; +Landroid/location/Location-IA; Landroid/location/Location; Landroid/location/LocationTime$1; Landroid/location/LocationTime; +Landroid/location/flags/FeatureFlags; +Landroid/location/flags/FeatureFlagsImpl; +Landroid/location/flags/Flags; Landroid/media/AudioAttributes$1; Landroid/media/AudioAttributes$Builder; Landroid/media/AudioAttributes-IA; @@ -27365,7 +27305,6 @@ Landroid/media/AudioGain; Landroid/media/AudioGainConfig; Landroid/media/AudioHandle; Landroid/media/AudioManager$1; -Landroid/media/AudioManager$2; Landroid/media/AudioManager$3; Landroid/media/AudioManager$4; Landroid/media/AudioManager$AudioPlaybackCallback; @@ -27373,22 +27312,20 @@ Landroid/media/AudioManager$AudioPlaybackCallbackInfo; Landroid/media/AudioManager$AudioRecordingCallback; Landroid/media/AudioManager$AudioRecordingCallbackInfo; Landroid/media/AudioManager$BlockingFocusResultReceiver; -Landroid/media/AudioManager$DevRoleListeners-IA; Landroid/media/AudioManager$DevRoleListeners; Landroid/media/AudioManager$FocusRequestInfo; Landroid/media/AudioManager$NativeEventHandlerDelegate$1; Landroid/media/AudioManager$NativeEventHandlerDelegate; -Landroid/media/AudioManager$OnAmPortUpdateListener-IA; Landroid/media/AudioManager$OnAmPortUpdateListener; Landroid/media/AudioManager$OnAudioFocusChangeListener; Landroid/media/AudioManager$OnAudioPortUpdateListener; Landroid/media/AudioManager$OnModeChangedListener; Landroid/media/AudioManager$PlaybackConfigChangeCallbackData; Landroid/media/AudioManager$RecordConfigChangeCallbackData; -Landroid/media/AudioManager$SafeWaitObject-IA; Landroid/media/AudioManager$SafeWaitObject; Landroid/media/AudioManager$ServiceEventHandlerDelegate$1; Landroid/media/AudioManager$ServiceEventHandlerDelegate; +Landroid/media/AudioManager-IA; Landroid/media/AudioManager; Landroid/media/AudioManagerInternal$RingerModeDelegate; Landroid/media/AudioManagerInternal; @@ -27499,7 +27436,6 @@ Landroid/media/IMediaRoute2ProviderServiceCallback; Landroid/media/IMediaRouter2$Stub$Proxy; Landroid/media/IMediaRouter2$Stub; Landroid/media/IMediaRouter2; -Landroid/media/IMediaRouter2Manager$Stub$Proxy; Landroid/media/IMediaRouter2Manager$Stub; Landroid/media/IMediaRouter2Manager; Landroid/media/IMediaRouterClient$Stub$Proxy; @@ -27509,7 +27445,6 @@ Landroid/media/IMediaRouterService$Stub$Proxy; Landroid/media/IMediaRouterService$Stub; Landroid/media/IMediaRouterService; Landroid/media/INearbyMediaDevicesProvider; -Landroid/media/IPlaybackConfigDispatcher$Stub$Proxy; Landroid/media/IPlaybackConfigDispatcher$Stub; Landroid/media/IPlaybackConfigDispatcher; Landroid/media/IPlayer$Stub$Proxy; @@ -27546,10 +27481,9 @@ Landroid/media/ImageWriter; Landroid/media/JetPlayer; Landroid/media/MediaCodec$$ExternalSyntheticLambda6; Landroid/media/MediaCodec$$ExternalSyntheticLambda7; +Landroid/media/MediaCodec$$ExternalSyntheticLambda8; Landroid/media/MediaCodec$BufferInfo; -Landroid/media/MediaCodec$BufferMap$CodecBuffer-IA; Landroid/media/MediaCodec$BufferMap$CodecBuffer; -Landroid/media/MediaCodec$BufferMap-IA; Landroid/media/MediaCodec$BufferMap; Landroid/media/MediaCodec$Callback; Landroid/media/MediaCodec$CodecException; @@ -27565,6 +27499,7 @@ Landroid/media/MediaCodec$OutputFrame; Landroid/media/MediaCodec$ParameterDescriptor; Landroid/media/MediaCodec$PersistentSurface; Landroid/media/MediaCodec$QueueRequest; +Landroid/media/MediaCodec-IA; Landroid/media/MediaCodec; Landroid/media/MediaCodecInfo$AudioCapabilities; Landroid/media/MediaCodecInfo$CodecCapabilities$FeatureList; @@ -27624,7 +27559,6 @@ Landroid/media/MediaPlayer$2; Landroid/media/MediaPlayer$3; Landroid/media/MediaPlayer$6; Landroid/media/MediaPlayer$7; -Landroid/media/MediaPlayer$DrmInfo-IA; Landroid/media/MediaPlayer$DrmInfo; Landroid/media/MediaPlayer$EventHandler$$ExternalSyntheticLambda0; Landroid/media/MediaPlayer$EventHandler$1; @@ -27650,6 +27584,7 @@ Landroid/media/MediaPlayer$TimeProvider$EventHandler; Landroid/media/MediaPlayer$TimeProvider; Landroid/media/MediaPlayer$TrackInfo$1; Landroid/media/MediaPlayer$TrackInfo; +Landroid/media/MediaPlayer-IA; Landroid/media/MediaPlayer; Landroid/media/MediaRecorder; Landroid/media/MediaRoute2Info$1; @@ -27815,13 +27750,14 @@ Landroid/media/browse/MediaBrowser$ConnectionCallback; Landroid/media/browse/MediaBrowser$MediaItem$1; Landroid/media/browse/MediaBrowser$MediaItem; Landroid/media/browse/MediaBrowser$MediaServiceConnection$1; -Landroid/media/browse/MediaBrowser$MediaServiceConnection-IA; Landroid/media/browse/MediaBrowser$MediaServiceConnection; Landroid/media/browse/MediaBrowser$ServiceCallbacks; Landroid/media/browse/MediaBrowser$Subscription; Landroid/media/browse/MediaBrowser$SubscriptionCallback; +Landroid/media/browse/MediaBrowser-IA; Landroid/media/browse/MediaBrowser; Landroid/media/browse/MediaBrowserUtils; +Landroid/media/codec/Flags; Landroid/media/metrics/Event; Landroid/media/metrics/IMediaMetricsManager$Stub$Proxy; Landroid/media/metrics/IMediaMetricsManager$Stub; @@ -27913,8 +27849,8 @@ Landroid/media/session/MediaController$CallbackStub; Landroid/media/session/MediaController$MessageHandler; Landroid/media/session/MediaController$PlaybackInfo$1; Landroid/media/session/MediaController$PlaybackInfo; -Landroid/media/session/MediaController$TransportControls-IA; Landroid/media/session/MediaController$TransportControls; +Landroid/media/session/MediaController-IA; Landroid/media/session/MediaController; Landroid/media/session/MediaSession$Callback; Landroid/media/session/MediaSession$CallbackMessageHandler; @@ -27927,29 +27863,26 @@ Landroid/media/session/MediaSession; Landroid/media/session/MediaSessionLegacyHelper; Landroid/media/session/MediaSessionManager$OnActiveSessionsChangedListener; Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListenerStub-IA; Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListenerStub; Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub-IA; Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub; Landroid/media/session/MediaSessionManager$OnMediaKeyListener; Landroid/media/session/MediaSessionManager$OnMediaKeyListenerImpl; Landroid/media/session/MediaSessionManager$OnSession2TokensChangedListener; Landroid/media/session/MediaSessionManager$OnVolumeKeyLongPressListener; Landroid/media/session/MediaSessionManager$OnVolumeKeyLongPressListenerImpl; -Landroid/media/session/MediaSessionManager$RemoteSessionCallbackStub-IA; Landroid/media/session/MediaSessionManager$RemoteSessionCallbackStub; Landroid/media/session/MediaSessionManager$RemoteUserInfo; Landroid/media/session/MediaSessionManager$Session2TokensChangedWrapper; Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0; Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1; Landroid/media/session/MediaSessionManager$SessionsChangedWrapper; +Landroid/media/session/MediaSessionManager-IA; Landroid/media/session/MediaSessionManager; Landroid/media/session/ParcelableListBinder; Landroid/media/session/PlaybackState$1; Landroid/media/session/PlaybackState$Builder; Landroid/media/session/PlaybackState$CustomAction$1; -Landroid/media/session/PlaybackState$CustomAction-IA; Landroid/media/session/PlaybackState$CustomAction; Landroid/media/session/PlaybackState-IA; Landroid/media/session/PlaybackState; @@ -28080,18 +28013,14 @@ Landroid/net/TelephonyNetworkSpecifier$1; Landroid/net/TelephonyNetworkSpecifier$Builder; Landroid/net/TelephonyNetworkSpecifier; Landroid/net/Uri$1; -Landroid/net/Uri$AbstractHierarchicalUri-IA; Landroid/net/Uri$AbstractHierarchicalUri; Landroid/net/Uri$AbstractPart; Landroid/net/Uri$Builder; -Landroid/net/Uri$HierarchicalUri-IA; Landroid/net/Uri$NotCachedHolder; -Landroid/net/Uri$OpaqueUri-IA; Landroid/net/Uri$Part$EmptyPart; Landroid/net/Uri$Part; Landroid/net/Uri$PathPart; Landroid/net/Uri$PathSegmentsBuilder; -Landroid/net/Uri$StringUri-IA; Landroid/net/Uri-IA; Landroid/net/Uri; Landroid/net/UriCodec; @@ -28220,16 +28149,99 @@ Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventHandler; Landroid/net/wifi/nl80211/WifiNl80211Manager$SignalPollResult; Landroid/net/wifi/nl80211/WifiNl80211Manager; Landroid/net/wifi/sharedconnectivity/app/SharedConnectivityManager; +Landroid/nfc/IAppCallback$Stub; +Landroid/nfc/IAppCallback; +Landroid/nfc/INfcAdapter$Stub; +Landroid/nfc/INfcAdapter; +Landroid/nfc/INfcAdapterExtras; +Landroid/nfc/INfcCardEmulation; +Landroid/nfc/INfcControllerAlwaysOnListener$Stub; +Landroid/nfc/INfcControllerAlwaysOnListener; +Landroid/nfc/INfcDta; +Landroid/nfc/INfcFCardEmulation; +Landroid/nfc/INfcTag; +Landroid/nfc/INfcUnlockHandler$Stub; +Landroid/nfc/INfcUnlockHandler; +Landroid/nfc/INfcVendorNciCallback$Stub; +Landroid/nfc/INfcVendorNciCallback; +Landroid/nfc/INfcWlcStateListener$Stub; +Landroid/nfc/INfcWlcStateListener; +Landroid/nfc/ITagRemovedCallback$Stub; +Landroid/nfc/ITagRemovedCallback; +Landroid/nfc/NdefMessage; +Landroid/nfc/NfcActivityManager; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda0; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda10; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda11; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda12; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda13; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda14; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda15; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda16; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda17; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda18; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda19; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda1; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda20; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda21; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda22; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda23; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda24; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda25; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda26; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda27; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda28; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda29; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda2; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda30; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda31; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda32; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda33; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda34; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda35; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda36; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda37; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda38; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda39; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda3; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda4; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda5; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda6; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda7; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda8; +Landroid/nfc/NfcAdapter$$ExternalSyntheticLambda9; +Landroid/nfc/NfcAdapter$1; +Landroid/nfc/NfcAdapter$2; +Landroid/nfc/NfcAdapter$ControllerAlwaysOnListener; +Landroid/nfc/NfcAdapter$CreateBeamUrisCallback; +Landroid/nfc/NfcAdapter$CreateNdefMessageCallback; +Landroid/nfc/NfcAdapter$NfcUnlockHandler; +Landroid/nfc/NfcAdapter$NfcVendorNciCallback; +Landroid/nfc/NfcAdapter$OnNdefPushCompleteCallback; +Landroid/nfc/NfcAdapter$OnTagRemovedListener; +Landroid/nfc/NfcAdapter$ReaderCallback; +Landroid/nfc/NfcAdapter$ServiceCall; +Landroid/nfc/NfcAdapter$ServiceCallReturn; +Landroid/nfc/NfcAdapter$WlcStateListener; Landroid/nfc/NfcAdapter; +Landroid/nfc/NfcAntennaInfo; +Landroid/nfc/NfcControllerAlwaysOnListener; Landroid/nfc/NfcFrameworkInitializer$$ExternalSyntheticLambda0; Landroid/nfc/NfcFrameworkInitializer; Landroid/nfc/NfcManager; +Landroid/nfc/NfcOemExtension; Landroid/nfc/NfcServiceManager$ServiceRegisterer; Landroid/nfc/NfcServiceManager; +Landroid/nfc/NfcVendorNciCallbackListener; +Landroid/nfc/NfcWlcStateListener; +Landroid/nfc/Tag; +Landroid/nfc/TechListParcel; +Landroid/nfc/WlcListenerDeviceInfo; Landroid/nfc/cardemulation/AidGroup$1; Landroid/nfc/cardemulation/AidGroup; Landroid/nfc/cardemulation/ApduServiceInfo$1; Landroid/nfc/cardemulation/ApduServiceInfo; +Landroid/nfc/cardemulation/PollingFrame; Landroid/opengl/EGL14; Landroid/opengl/EGL15; Landroid/opengl/EGLConfig; @@ -28280,8 +28292,8 @@ Landroid/os/AsyncTask$InternalHandler; Landroid/os/AsyncTask$SerialExecutor$1; Landroid/os/AsyncTask$SerialExecutor; Landroid/os/AsyncTask$Status; -Landroid/os/AsyncTask$WorkerRunnable-IA; Landroid/os/AsyncTask$WorkerRunnable; +Landroid/os/AsyncTask-IA; Landroid/os/AsyncTask; Landroid/os/BadParcelableException; Landroid/os/BadTypeParcelableException; @@ -28349,8 +28361,8 @@ Landroid/os/Build; Landroid/os/Bundle$1; Landroid/os/Bundle; Landroid/os/CancellationSignal$OnCancelListener; -Landroid/os/CancellationSignal$Transport-IA; Landroid/os/CancellationSignal$Transport; +Landroid/os/CancellationSignal-IA; Landroid/os/CancellationSignal; Landroid/os/CarrierAssociatedAppEntry$1; Landroid/os/CarrierAssociatedAppEntry; @@ -28376,8 +28388,8 @@ Landroid/os/DdmSyncState; Landroid/os/DeadObjectException; Landroid/os/DeadSystemException; Landroid/os/Debug$MemoryInfo$1; -Landroid/os/Debug$MemoryInfo-IA; Landroid/os/Debug$MemoryInfo; +Landroid/os/Debug-IA; Landroid/os/Debug; Landroid/os/DeviceIdleManager; Landroid/os/DropBoxManager$Entry$1; @@ -28412,8 +28424,8 @@ Landroid/os/GraphicsEnvironment$1; Landroid/os/GraphicsEnvironment; Landroid/os/Handler$BlockingRunnable; Landroid/os/Handler$Callback; -Landroid/os/Handler$MessengerImpl-IA; Landroid/os/Handler$MessengerImpl; +Landroid/os/Handler-IA; Landroid/os/Handler; Landroid/os/HandlerExecutor; Landroid/os/HandlerThread; @@ -28431,6 +28443,7 @@ Landroid/os/IBatteryPropertiesRegistrar$Stub$Proxy; Landroid/os/IBatteryPropertiesRegistrar$Stub; Landroid/os/IBatteryPropertiesRegistrar; Landroid/os/IBinder$DeathRecipient; +Landroid/os/IBinder$FrozenStateChangeCallback; Landroid/os/IBinder; Landroid/os/IBinderCallback; Landroid/os/ICancellationSignal$Stub$Proxy; @@ -28560,6 +28573,7 @@ Landroid/os/IWakeLockCallback; Landroid/os/IncidentManager$IncidentReport$1; Landroid/os/IncidentManager$IncidentReport; Landroid/os/IncidentManager; +Landroid/os/IpcDataCache$1; Landroid/os/IpcDataCache$Config; Landroid/os/IpcDataCache$QueryHandler; Landroid/os/IpcDataCache$RemoteCall; @@ -28655,7 +28669,6 @@ Landroid/os/RemoteCallback$2; Landroid/os/RemoteCallback$3; Landroid/os/RemoteCallback$OnResultListener; Landroid/os/RemoteCallback; -Landroid/os/RemoteCallbackList$Callback; Landroid/os/RemoteCallbackList; Landroid/os/RemoteException; Landroid/os/ResultReceiver$1; @@ -28664,17 +28677,16 @@ Landroid/os/ResultReceiver$MyRunnable; Landroid/os/ResultReceiver; Landroid/os/SELinux; Landroid/os/SecurityStateManager; +Landroid/os/Service$1; +Landroid/os/Service; Landroid/os/ServiceManager$ServiceNotFoundException; Landroid/os/ServiceManager; Landroid/os/ServiceManagerNative; Landroid/os/ServiceManagerProxy; Landroid/os/ServiceSpecificException; Landroid/os/SharedMemory$1; -Landroid/os/SharedMemory$Closer-IA; Landroid/os/SharedMemory$Closer; -Landroid/os/SharedMemory$MemoryRegistration-IA; Landroid/os/SharedMemory$MemoryRegistration; -Landroid/os/SharedMemory$Unmapper-IA; Landroid/os/SharedMemory$Unmapper; Landroid/os/SharedMemory-IA; Landroid/os/SharedMemory; @@ -28700,33 +28712,29 @@ Landroid/os/StrictMode$9; Landroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0; Landroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1; Landroid/os/StrictMode$AndroidBlockGuardPolicy; -Landroid/os/StrictMode$AndroidCloseGuardReporter-IA; Landroid/os/StrictMode$AndroidCloseGuardReporter; Landroid/os/StrictMode$InstanceTracker; Landroid/os/StrictMode$OnThreadViolationListener; Landroid/os/StrictMode$OnVmViolationListener; Landroid/os/StrictMode$Span; Landroid/os/StrictMode$ThreadPolicy$Builder; -Landroid/os/StrictMode$ThreadPolicy-IA; Landroid/os/StrictMode$ThreadPolicy; -Landroid/os/StrictMode$ThreadSpanState-IA; Landroid/os/StrictMode$ThreadSpanState; -Landroid/os/StrictMode$UnsafeIntentStrictModeCallback-IA; Landroid/os/StrictMode$UnsafeIntentStrictModeCallback; Landroid/os/StrictMode$ViolationInfo$1; Landroid/os/StrictMode$ViolationInfo; Landroid/os/StrictMode$ViolationLogger; Landroid/os/StrictMode$VmPolicy$Builder; -Landroid/os/StrictMode$VmPolicy-IA; Landroid/os/StrictMode$VmPolicy; +Landroid/os/StrictMode-IA; Landroid/os/StrictMode; Landroid/os/SynchronousResultReceiver$Result; Landroid/os/SynchronousResultReceiver; Landroid/os/SystemClock$2; Landroid/os/SystemClock; Landroid/os/SystemConfigManager; -Landroid/os/SystemProperties$Handle-IA; Landroid/os/SystemProperties$Handle; +Landroid/os/SystemProperties-IA; Landroid/os/SystemProperties; Landroid/os/SystemService$1; Landroid/os/SystemService$State; @@ -28762,9 +28770,6 @@ Landroid/os/UpdateLock; Landroid/os/UserHandle$1; Landroid/os/UserHandle; Landroid/os/UserManager$1; -Landroid/os/UserManager$2; -Landroid/os/UserManager$3; -Landroid/os/UserManager$4; Landroid/os/UserManager$EnforcingUser$1; Landroid/os/UserManager$EnforcingUser; Landroid/os/UserManager$UserOperationException; @@ -28842,7 +28847,6 @@ Landroid/os/storage/IStorageShutdownObserver; Landroid/os/storage/OnObbStateChangeListener; Landroid/os/storage/StorageEventListener; Landroid/os/storage/StorageManager$1; -Landroid/os/storage/StorageManager$ObbActionListener-IA; Landroid/os/storage/StorageManager$ObbActionListener; Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda2; Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda3; @@ -28851,6 +28855,7 @@ Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSynthet Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda6; Landroid/os/storage/StorageManager$StorageEventListenerDelegate; Landroid/os/storage/StorageManager$StorageVolumeCallback; +Landroid/os/storage/StorageManager-IA; Landroid/os/storage/StorageManager; Landroid/os/storage/StorageManagerInternal; Landroid/os/storage/StorageVolume$1; @@ -28919,8 +28924,8 @@ Landroid/permission/PermissionManager$2; Landroid/permission/PermissionManager$OnPermissionsChangeListenerDelegate; Landroid/permission/PermissionManager$PackageNamePermissionQuery; Landroid/permission/PermissionManager$PermissionQuery; -Landroid/permission/PermissionManager$SplitPermissionInfo-IA; Landroid/permission/PermissionManager$SplitPermissionInfo; +Landroid/permission/PermissionManager-IA; Landroid/permission/PermissionManager; Landroid/permission/PermissionManagerInternal; Landroid/preference/DialogPreference; @@ -29237,12 +29242,11 @@ Landroid/security/keystore/recovery/WrappedApplicationKey$1; Landroid/security/keystore/recovery/WrappedApplicationKey$Builder; Landroid/security/keystore/recovery/WrappedApplicationKey; Landroid/security/keystore/recovery/X509CertificateParsingUtils; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA; Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA; Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer; Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding; Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM; +Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi-IA; Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi; Landroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider; Landroid/security/keystore2/AndroidKeyStoreCipherSpiBase; @@ -29457,18 +29461,16 @@ Landroid/service/media/MediaBrowserService$BrowserRoot; Landroid/service/media/MediaBrowserService$ConnectionRecord; Landroid/service/media/MediaBrowserService$Result; Landroid/service/media/MediaBrowserService$ServiceBinder$$ExternalSyntheticLambda1; -Landroid/service/media/MediaBrowserService$ServiceBinder-IA; Landroid/service/media/MediaBrowserService$ServiceBinder; -Landroid/service/media/MediaBrowserService$ServiceState-IA; Landroid/service/media/MediaBrowserService$ServiceState; +Landroid/service/media/MediaBrowserService-IA; Landroid/service/media/MediaBrowserService; Landroid/service/notification/Adjustment$1; Landroid/service/notification/Adjustment; Landroid/service/notification/Condition$1; Landroid/service/notification/Condition; -Landroid/service/notification/ConditionProviderService$H-IA; Landroid/service/notification/ConditionProviderService$H; -Landroid/service/notification/ConditionProviderService$Provider-IA; +Landroid/service/notification/ConditionProviderService-IA; Landroid/service/notification/ConditionProviderService; Landroid/service/notification/IConditionProvider$Stub; Landroid/service/notification/IConditionProvider; @@ -29485,8 +29487,8 @@ Landroid/service/notification/NotificationListenerFilter; Landroid/service/notification/NotificationListenerService$MyHandler; Landroid/service/notification/NotificationListenerService$Ranking; Landroid/service/notification/NotificationListenerService$RankingMap$1; -Landroid/service/notification/NotificationListenerService$RankingMap-IA; Landroid/service/notification/NotificationListenerService$RankingMap; +Landroid/service/notification/NotificationListenerService-IA; Landroid/service/notification/NotificationListenerService; Landroid/service/notification/NotificationRankingUpdate$1; Landroid/service/notification/NotificationRankingUpdate; @@ -29616,16 +29618,13 @@ Landroid/speech/tts/TextToSpeech$$ExternalSyntheticLambda17; Landroid/speech/tts/TextToSpeech$$ExternalSyntheticLambda1; Landroid/speech/tts/TextToSpeech$Action; Landroid/speech/tts/TextToSpeech$Connection$1; -Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask-IA; Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask; -Landroid/speech/tts/TextToSpeech$Connection-IA; Landroid/speech/tts/TextToSpeech$Connection; -Landroid/speech/tts/TextToSpeech$DirectConnection-IA; Landroid/speech/tts/TextToSpeech$DirectConnection; Landroid/speech/tts/TextToSpeech$EngineInfo; Landroid/speech/tts/TextToSpeech$OnInitListener; -Landroid/speech/tts/TextToSpeech$SystemConnection-IA; Landroid/speech/tts/TextToSpeech$SystemConnection; +Landroid/speech/tts/TextToSpeech-IA; Landroid/speech/tts/TextToSpeech; Landroid/speech/tts/TtsEngines$EngineInfoComparator; Landroid/speech/tts/TtsEngines; @@ -29639,7 +29638,6 @@ Landroid/sysprop/CryptoProperties; Landroid/sysprop/DeviceProperties; Landroid/sysprop/DisplayProperties; Landroid/sysprop/HdmiProperties; -Landroid/sysprop/InitProperties; Landroid/sysprop/InputProperties; Landroid/sysprop/MediaProperties; Landroid/sysprop/PowerProperties; @@ -29659,6 +29657,7 @@ Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda7; Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda8; Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda9; Landroid/sysprop/TelephonyProperties; +Landroid/sysprop/ViewProperties; Landroid/sysprop/VndkProperties; Landroid/system/keystore2/Authorization$1; Landroid/system/keystore2/Authorization; @@ -29898,9 +29897,9 @@ Landroid/telephony/JapanesePhoneNumberFormatter; Landroid/telephony/LinkCapacityEstimate$1; Landroid/telephony/LinkCapacityEstimate; Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery-IA; Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery; Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; +Landroid/telephony/LocationAccessPolicy-IA; Landroid/telephony/LocationAccessPolicy; Landroid/telephony/LteVopsSupportInfo$1; Landroid/telephony/LteVopsSupportInfo-IA; @@ -30459,33 +30458,23 @@ Landroid/text/Html$TagHandler; Landroid/text/Html; Landroid/text/HtmlToSpannedConverter$Alignment; Landroid/text/HtmlToSpannedConverter$Background; -Landroid/text/HtmlToSpannedConverter$Big-IA; Landroid/text/HtmlToSpannedConverter$Big; -Landroid/text/HtmlToSpannedConverter$Blockquote-IA; Landroid/text/HtmlToSpannedConverter$Blockquote; -Landroid/text/HtmlToSpannedConverter$Bold-IA; Landroid/text/HtmlToSpannedConverter$Bold; -Landroid/text/HtmlToSpannedConverter$Bullet-IA; Landroid/text/HtmlToSpannedConverter$Bullet; Landroid/text/HtmlToSpannedConverter$Font; Landroid/text/HtmlToSpannedConverter$Foreground; Landroid/text/HtmlToSpannedConverter$Heading; Landroid/text/HtmlToSpannedConverter$Href; -Landroid/text/HtmlToSpannedConverter$Italic-IA; Landroid/text/HtmlToSpannedConverter$Italic; -Landroid/text/HtmlToSpannedConverter$Monospace-IA; Landroid/text/HtmlToSpannedConverter$Monospace; Landroid/text/HtmlToSpannedConverter$Newline; -Landroid/text/HtmlToSpannedConverter$Small-IA; Landroid/text/HtmlToSpannedConverter$Small; -Landroid/text/HtmlToSpannedConverter$Strikethrough-IA; Landroid/text/HtmlToSpannedConverter$Strikethrough; -Landroid/text/HtmlToSpannedConverter$Sub-IA; Landroid/text/HtmlToSpannedConverter$Sub; -Landroid/text/HtmlToSpannedConverter$Super-IA; Landroid/text/HtmlToSpannedConverter$Super; -Landroid/text/HtmlToSpannedConverter$Underline-IA; Landroid/text/HtmlToSpannedConverter$Underline; +Landroid/text/HtmlToSpannedConverter-IA; Landroid/text/HtmlToSpannedConverter; Landroid/text/Hyphenator; Landroid/text/InputFilter$LengthFilter; @@ -30521,6 +30510,7 @@ Landroid/text/Selection$MemoryTextWatcher; Landroid/text/Selection$PositionIterator; Landroid/text/Selection$START; Landroid/text/Selection; +Landroid/text/SpanColors; Landroid/text/SpanSet; Landroid/text/SpanWatcher; Landroid/text/Spannable$Factory; @@ -30543,9 +30533,9 @@ Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal; Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicLocale; Landroid/text/TextDirectionHeuristics; Landroid/text/TextFlags; -Landroid/text/TextLine$DecorationInfo-IA; Landroid/text/TextLine$DecorationInfo; Landroid/text/TextLine$LineInfo; +Landroid/text/TextLine-IA; Landroid/text/TextLine; Landroid/text/TextPaint; Landroid/text/TextShaper$GlyphsConsumer; @@ -30684,6 +30674,8 @@ Landroid/timezone/TelephonyLookup; Landroid/timezone/TelephonyNetwork; Landroid/timezone/TelephonyNetworkFinder; Landroid/timezone/TimeZoneFinder; +Landroid/tracing/FeatureFlags; +Landroid/tracing/FeatureFlagsImpl; Landroid/tracing/Flags; Landroid/tracing/perfetto/CreateIncrementalStateArgs; Landroid/tracing/perfetto/CreateTlsStateArgs; @@ -30755,8 +30747,8 @@ Landroid/transition/TransitionValues; Landroid/transition/TransitionValuesMaps; Landroid/transition/Visibility$1; Landroid/transition/Visibility$DisappearListener; -Landroid/transition/Visibility$VisibilityInfo-IA; Landroid/transition/Visibility$VisibilityInfo; +Landroid/transition/Visibility-IA; Landroid/transition/Visibility; Landroid/transition/VisibilityPropagation; Landroid/transparency/BinaryTransparencyManager; @@ -30871,6 +30863,7 @@ Landroid/util/RecurrenceRule$RecurringIterator; Landroid/util/RecurrenceRule; Landroid/util/ReflectiveProperty; Landroid/util/RotationUtils; +Landroid/util/SequenceUtils; Landroid/util/Singleton; Landroid/util/Size; Landroid/util/SizeF$1; @@ -30971,9 +30964,7 @@ Landroid/view/Choreographer$1; Landroid/view/Choreographer$2; Landroid/view/Choreographer$3; Landroid/view/Choreographer$4; -Landroid/view/Choreographer$CallbackQueue-IA; Landroid/view/Choreographer$CallbackQueue; -Landroid/view/Choreographer$CallbackRecord-IA; Landroid/view/Choreographer$CallbackRecord; Landroid/view/Choreographer$FrameCallback; Landroid/view/Choreographer$FrameData; @@ -30992,21 +30983,19 @@ Landroid/view/CrossWindowBlurListeners; Landroid/view/CutoutSpecification$Parser; Landroid/view/CutoutSpecification; Landroid/view/Display$HdrCapabilities$1; -Landroid/view/Display$HdrCapabilities-IA; Landroid/view/Display$HdrCapabilities; Landroid/view/Display$HdrSdrRatioListenerWrapper; Landroid/view/Display$Mode$1; -Landroid/view/Display$Mode-IA; Landroid/view/Display$Mode; +Landroid/view/Display-IA; Landroid/view/Display; Landroid/view/DisplayAddress$Network$1; Landroid/view/DisplayAddress$Network; Landroid/view/DisplayAddress$Physical$1; -Landroid/view/DisplayAddress$Physical-IA; Landroid/view/DisplayAddress$Physical; +Landroid/view/DisplayAddress-IA; Landroid/view/DisplayAddress; Landroid/view/DisplayAdjustments; -Landroid/view/DisplayCutout$Bounds-IA; Landroid/view/DisplayCutout$Bounds; Landroid/view/DisplayCutout$CutoutPathParserInfo; Landroid/view/DisplayCutout$ParcelableWrapper$1; @@ -31051,8 +31040,8 @@ Landroid/view/HandlerActionQueue$HandlerAction; Landroid/view/HandlerActionQueue; Landroid/view/HandwritingInitiator$HandwritableViewInfo; Landroid/view/HandwritingInitiator$HandwritingAreaTracker; -Landroid/view/HandwritingInitiator$State-IA; Landroid/view/HandwritingInitiator$State; +Landroid/view/HandwritingInitiator-IA; Landroid/view/HandwritingInitiator; Landroid/view/HapticScrollFeedbackProvider; Landroid/view/HdrRenderState; @@ -31089,12 +31078,6 @@ Landroid/view/IOnKeyguardExitResult$Stub; Landroid/view/IOnKeyguardExitResult; Landroid/view/IPinnedTaskListener$Stub; Landroid/view/IPinnedTaskListener; -Landroid/view/IRecentsAnimationController$Stub$Proxy; -Landroid/view/IRecentsAnimationController$Stub; -Landroid/view/IRecentsAnimationController; -Landroid/view/IRecentsAnimationRunner$Stub$Proxy; -Landroid/view/IRecentsAnimationRunner$Stub; -Landroid/view/IRecentsAnimationRunner; Landroid/view/IRemoteAnimationFinishedCallback$Stub$Proxy; Landroid/view/IRemoteAnimationFinishedCallback$Stub; Landroid/view/IRemoteAnimationFinishedCallback; @@ -31146,7 +31129,6 @@ Landroid/view/InputApplicationHandle; Landroid/view/InputChannel$1; Landroid/view/InputChannel; Landroid/view/InputDevice$1; -Landroid/view/InputDevice$MotionRange-IA; Landroid/view/InputDevice$MotionRange; Landroid/view/InputDevice$ViewBehavior; Landroid/view/InputDevice-IA; @@ -31168,10 +31150,14 @@ Landroid/view/InputWindowHandle; Landroid/view/InsetsAnimationControlCallbacks; Landroid/view/InsetsAnimationControlImpl$$ExternalSyntheticLambda0; Landroid/view/InsetsAnimationControlImpl; +Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0; +Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier; Landroid/view/InsetsAnimationControlRunner; +Landroid/view/InsetsAnimationSpec; Landroid/view/InsetsAnimationThread; Landroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda0; Landroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1; +Landroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda2; Landroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0; Landroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1; Landroid/view/InsetsAnimationThreadControlRunner$1; @@ -31179,7 +31165,6 @@ Landroid/view/InsetsAnimationThreadControlRunner; Landroid/view/InsetsController$$ExternalSyntheticLambda0; Landroid/view/InsetsController$$ExternalSyntheticLambda10; Landroid/view/InsetsController$$ExternalSyntheticLambda11; -Landroid/view/InsetsController$$ExternalSyntheticLambda12; Landroid/view/InsetsController$$ExternalSyntheticLambda1; Landroid/view/InsetsController$$ExternalSyntheticLambda2; Landroid/view/InsetsController$$ExternalSyntheticLambda3; @@ -31294,10 +31279,10 @@ Landroid/view/SearchEvent; Landroid/view/SoundEffectConstants; Landroid/view/SubMenu; Landroid/view/Surface$1; -Landroid/view/Surface$CompatibleCanvas-IA; Landroid/view/Surface$CompatibleCanvas; Landroid/view/Surface$HwuiContext; Landroid/view/Surface$OutOfResourcesException; +Landroid/view/Surface-IA; Landroid/view/Surface; Landroid/view/SurfaceControl$1; Landroid/view/SurfaceControl$Builder; @@ -31314,6 +31299,7 @@ Landroid/view/SurfaceControl$RefreshRateRange$1; Landroid/view/SurfaceControl$RefreshRateRange; Landroid/view/SurfaceControl$RefreshRateRanges; Landroid/view/SurfaceControl$StaticDisplayInfo; +Landroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda1; Landroid/view/SurfaceControl$Transaction$1; Landroid/view/SurfaceControl$Transaction$2; Landroid/view/SurfaceControl$Transaction; @@ -31324,9 +31310,7 @@ Landroid/view/SurfaceControl$TrustedPresentationThresholds; Landroid/view/SurfaceControl-IA; Landroid/view/SurfaceControl; Landroid/view/SurfaceControlHdrLayerInfoListener; -Landroid/view/SurfaceControlRegistry$DefaultReporter-IA; Landroid/view/SurfaceControlRegistry$DefaultReporter; -Landroid/view/SurfaceControlRegistry$NoOpRegistry-IA; Landroid/view/SurfaceControlRegistry$NoOpRegistry; Landroid/view/SurfaceControlRegistry$Reporter; Landroid/view/SurfaceControlRegistry-IA; @@ -31344,14 +31328,14 @@ Landroid/view/SurfaceView$$ExternalSyntheticLambda3; Landroid/view/SurfaceView$$ExternalSyntheticLambda4; Landroid/view/SurfaceView$$ExternalSyntheticLambda5; Landroid/view/SurfaceView$1; -Landroid/view/SurfaceView$2; +Landroid/view/SurfaceView$SurfaceControlViewHostParent; Landroid/view/SurfaceView$SurfaceViewPositionUpdateListener; -Landroid/view/SurfaceView$SyncBufferTransactionCallback-IA; Landroid/view/SurfaceView$SyncBufferTransactionCallback; +Landroid/view/SurfaceView-IA; Landroid/view/SurfaceView; Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder; -Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams-IA; Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams; +Landroid/view/SyncRtSurfaceTransactionApplier-IA; Landroid/view/SyncRtSurfaceTransactionApplier; Landroid/view/TextureView$$ExternalSyntheticLambda0; Landroid/view/TextureView$$ExternalSyntheticLambda1; @@ -31360,8 +31344,8 @@ Landroid/view/TextureView; Landroid/view/ThreadedRenderer$1$$ExternalSyntheticLambda0; Landroid/view/ThreadedRenderer$1; Landroid/view/ThreadedRenderer$DrawCallbacks; -Landroid/view/ThreadedRenderer$WebViewOverlayProvider-IA; Landroid/view/ThreadedRenderer$WebViewOverlayProvider; +Landroid/view/ThreadedRenderer-IA; Landroid/view/ThreadedRenderer; Landroid/view/TouchDelegate; Landroid/view/TunnelModeEnabledListener; @@ -31404,13 +31388,10 @@ Landroid/view/View$AttachInfo$InvalidateInfo; Landroid/view/View$AttachInfo; Landroid/view/View$BaseSavedState$1; Landroid/view/View$BaseSavedState; -Landroid/view/View$CheckForLongPress-IA; Landroid/view/View$CheckForLongPress; -Landroid/view/View$CheckForTap-IA; Landroid/view/View$CheckForTap; Landroid/view/View$DeclaredOnClickListener; Landroid/view/View$DragShadowBuilder; -Landroid/view/View$ForegroundInfo-IA; Landroid/view/View$ForegroundInfo; Landroid/view/View$ListenerInfo; Landroid/view/View$MatchIdPredicate; @@ -31430,19 +31411,16 @@ Landroid/view/View$OnLongClickListener; Landroid/view/View$OnScrollChangeListener; Landroid/view/View$OnSystemUiVisibilityChangeListener; Landroid/view/View$OnTouchListener; -Landroid/view/View$PerformClick-IA; Landroid/view/View$PerformClick; Landroid/view/View$ScrollabilityCache; Landroid/view/View$SendAccessibilityEventThrottle; Landroid/view/View$SendViewScrolledAccessibilityEvent; Landroid/view/View$TintInfo; -Landroid/view/View$TooltipInfo-IA; Landroid/view/View$TooltipInfo; Landroid/view/View$TransformationInfo; -Landroid/view/View$UnsetPressedState-IA; Landroid/view/View$UnsetPressedState; -Landroid/view/View$VisibilityChangeForAutofillHandler-IA; Landroid/view/View$VisibilityChangeForAutofillHandler; +Landroid/view/View-IA; Landroid/view/View; Landroid/view/ViewAnimationHostBridge; Landroid/view/ViewAnimationUtils; @@ -31480,10 +31458,10 @@ Landroid/view/ViewParent; Landroid/view/ViewPropertyAnimator$1; Landroid/view/ViewPropertyAnimator$2; Landroid/view/ViewPropertyAnimator$3; -Landroid/view/ViewPropertyAnimator$AnimatorEventListener-IA; Landroid/view/ViewPropertyAnimator$AnimatorEventListener; Landroid/view/ViewPropertyAnimator$NameValuesHolder; Landroid/view/ViewPropertyAnimator$PropertyBundle; +Landroid/view/ViewPropertyAnimator-IA; Landroid/view/ViewPropertyAnimator; Landroid/view/ViewRootImpl$$ExternalSyntheticLambda0; Landroid/view/ViewRootImpl$$ExternalSyntheticLambda10; @@ -31504,6 +31482,8 @@ Landroid/view/ViewRootImpl$$ExternalSyntheticLambda6; Landroid/view/ViewRootImpl$$ExternalSyntheticLambda7; Landroid/view/ViewRootImpl$$ExternalSyntheticLambda8; Landroid/view/ViewRootImpl$$ExternalSyntheticLambda9; +Landroid/view/ViewRootImpl$10; +Landroid/view/ViewRootImpl$11; Landroid/view/ViewRootImpl$1; Landroid/view/ViewRootImpl$2; Landroid/view/ViewRootImpl$3; @@ -31530,7 +31510,6 @@ Landroid/view/ViewRootImpl$InputStage; Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable; Landroid/view/ViewRootImpl$NativePostImeInputStage; Landroid/view/ViewRootImpl$NativePreImeInputStage; -Landroid/view/ViewRootImpl$QueuedInputEvent-IA; Landroid/view/ViewRootImpl$QueuedInputEvent; Landroid/view/ViewRootImpl$SendWindowContentChangedAccessibilityEvent; Landroid/view/ViewRootImpl$SurfaceChangedCallback; @@ -31545,13 +31524,13 @@ Landroid/view/ViewRootImpl$SystemUiVisibilityInfo; Landroid/view/ViewRootImpl$TakenSurfaceHolder; Landroid/view/ViewRootImpl$TrackballAxis; Landroid/view/ViewRootImpl$TraversalRunnable; -Landroid/view/ViewRootImpl$UnhandledKeyManager-IA; Landroid/view/ViewRootImpl$UnhandledKeyManager; Landroid/view/ViewRootImpl$ViewPostImeInputStage; Landroid/view/ViewRootImpl$ViewPreImeInputStage; Landroid/view/ViewRootImpl$ViewRootHandler; Landroid/view/ViewRootImpl$W; Landroid/view/ViewRootImpl$WindowInputEventReceiver; +Landroid/view/ViewRootImpl-IA; Landroid/view/ViewRootImpl; Landroid/view/ViewRootInsetsControllerHost; Landroid/view/ViewRootRectTracker$ViewInfo; @@ -31615,8 +31594,8 @@ Landroid/view/WindowManager; Landroid/view/WindowManagerGlobal$$ExternalSyntheticLambda0; Landroid/view/WindowManagerGlobal$1; Landroid/view/WindowManagerGlobal$2; -Landroid/view/WindowManagerGlobal$TrustedPresentationListener-IA; Landroid/view/WindowManagerGlobal$TrustedPresentationListener; +Landroid/view/WindowManagerGlobal-IA; Landroid/view/WindowManagerGlobal; Landroid/view/WindowManagerImpl; Landroid/view/WindowManagerPolicyConstants$PointerEventListener; @@ -31639,10 +31618,9 @@ Landroid/view/accessibility/AccessibilityManager$1; Landroid/view/accessibility/AccessibilityManager$AccessibilityPolicy; Landroid/view/accessibility/AccessibilityManager$AccessibilityServicesStateChangeListener; Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener; -Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener; -Landroid/view/accessibility/AccessibilityManager$MyCallback-IA; Landroid/view/accessibility/AccessibilityManager$MyCallback; Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener; +Landroid/view/accessibility/AccessibilityManager-IA; Landroid/view/accessibility/AccessibilityManager; Landroid/view/accessibility/AccessibilityNodeIdManager; Landroid/view/accessibility/AccessibilityNodeInfo$1; @@ -31696,11 +31674,12 @@ Landroid/view/animation/Animation$NoImagePreloadHolder; Landroid/view/animation/Animation; Landroid/view/animation/AnimationSet; Landroid/view/animation/AnimationUtils$1; -Landroid/view/animation/AnimationUtils$AnimationState-IA; Landroid/view/animation/AnimationUtils$AnimationState; +Landroid/view/animation/AnimationUtils-IA; Landroid/view/animation/AnimationUtils; Landroid/view/animation/AnticipateInterpolator; Landroid/view/animation/AnticipateOvershootInterpolator; +Landroid/view/animation/BackGestureInterpolator; Landroid/view/animation/BaseInterpolator; Landroid/view/animation/BounceInterpolator; Landroid/view/animation/ClipRectAnimation; @@ -31729,7 +31708,6 @@ Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda1; Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda2; Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda3; Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda4; -Landroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient-IA; Landroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient; Landroid/view/autofill/AutofillManager$AutofillCallback; Landroid/view/autofill/AutofillManager$AutofillClient; @@ -31740,13 +31718,15 @@ Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticL Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda16; Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda18; Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda8; -Landroid/view/autofill/AutofillManager$AutofillManagerClient-IA; +Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda9; Landroid/view/autofill/AutofillManager$AutofillManagerClient; Landroid/view/autofill/AutofillManager$CompatibilityBridge; Landroid/view/autofill/AutofillManager$TrackedViews; +Landroid/view/autofill/AutofillManager-IA; Landroid/view/autofill/AutofillManager; Landroid/view/autofill/AutofillManagerInternal; Landroid/view/autofill/AutofillPopupWindow; +Landroid/view/autofill/AutofillStateFingerprint; Landroid/view/autofill/AutofillValue$1; Landroid/view/autofill/AutofillValue-IA; Landroid/view/autofill/AutofillValue; @@ -31773,9 +31753,9 @@ Landroid/view/contentcapture/ContentCaptureEvent$1; Landroid/view/contentcapture/ContentCaptureEvent; Landroid/view/contentcapture/ContentCaptureHelper; Landroid/view/contentcapture/ContentCaptureManager$ContentCaptureClient; -Landroid/view/contentcapture/ContentCaptureManager$LocalDataShareAdapterResourceManager-IA; Landroid/view/contentcapture/ContentCaptureManager$LocalDataShareAdapterResourceManager; Landroid/view/contentcapture/ContentCaptureManager$StrippedContext; +Landroid/view/contentcapture/ContentCaptureManager-IA; Landroid/view/contentcapture/ContentCaptureManager; Landroid/view/contentcapture/ContentCaptureSession; Landroid/view/contentcapture/ContentCaptureSessionId$1; @@ -31796,18 +31776,13 @@ Landroid/view/contentcapture/IContentCaptureOptionsCallback; Landroid/view/contentcapture/IDataShareWriteAdapter$Stub; Landroid/view/contentcapture/IDataShareWriteAdapter; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda0; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda10; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda11; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda12; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda13; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda1; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda2; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda3; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda4; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda5; Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda6; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda8; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda9; +Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda7; Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda0; Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1; Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver; @@ -31863,20 +31838,17 @@ Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda6; Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda8; Landroid/view/inputmethod/IInputMethodSessionInvoker; Landroid/view/inputmethod/ImeTracker$1$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/ImeTracker$1; Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda0; Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda1; Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda2; Landroid/view/inputmethod/ImeTracker$Debug; -Landroid/view/inputmethod/ImeTracker$ImeJankTracker-IA; Landroid/view/inputmethod/ImeTracker$ImeJankTracker; -Landroid/view/inputmethod/ImeTracker$ImeLatencyTracker-IA; Landroid/view/inputmethod/ImeTracker$ImeLatencyTracker; Landroid/view/inputmethod/ImeTracker$InputMethodJankContext; Landroid/view/inputmethod/ImeTracker$InputMethodLatencyContext; Landroid/view/inputmethod/ImeTracker$Token$1; -Landroid/view/inputmethod/ImeTracker$Token-IA; Landroid/view/inputmethod/ImeTracker$Token; +Landroid/view/inputmethod/ImeTracker-IA; Landroid/view/inputmethod/ImeTracker; Landroid/view/inputmethod/InlineSuggestionsRequest$1; Landroid/view/inputmethod/InlineSuggestionsRequest; @@ -31902,16 +31874,15 @@ Landroid/view/inputmethod/InputMethodManager$1; Landroid/view/inputmethod/InputMethodManager$2; Landroid/view/inputmethod/InputMethodManager$6; Landroid/view/inputmethod/InputMethodManager$BindState; -Landroid/view/inputmethod/InputMethodManager$DelegateImpl-IA; Landroid/view/inputmethod/InputMethodManager$DelegateImpl; Landroid/view/inputmethod/InputMethodManager$FinishedInputEventCallback; Landroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda0; Landroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda1; Landroid/view/inputmethod/InputMethodManager$H; Landroid/view/inputmethod/InputMethodManager$ImeInputEventSender; -Landroid/view/inputmethod/InputMethodManager$PendingEvent-IA; Landroid/view/inputmethod/InputMethodManager$PendingEvent; Landroid/view/inputmethod/InputMethodManager$ReportInputConnectionOpenedRunner; +Landroid/view/inputmethod/InputMethodManager-IA; Landroid/view/inputmethod/InputMethodManager; Landroid/view/inputmethod/InputMethodManagerGlobal; Landroid/view/inputmethod/InputMethodSession$EventCallback; @@ -31972,7 +31943,6 @@ Landroid/view/textclassifier/ConversationAction; Landroid/view/textclassifier/ConversationActions$1; Landroid/view/textclassifier/ConversationActions$Message$1; Landroid/view/textclassifier/ConversationActions$Message$Builder; -Landroid/view/textclassifier/ConversationActions$Message-IA; Landroid/view/textclassifier/ConversationActions$Message; Landroid/view/textclassifier/ConversationActions$Request$1; Landroid/view/textclassifier/ConversationActions$Request$Builder; @@ -31990,8 +31960,8 @@ Landroid/view/textclassifier/SelectionEvent; Landroid/view/textclassifier/SelectionSessionLogger$SignatureParser; Landroid/view/textclassifier/SelectionSessionLogger; Landroid/view/textclassifier/SystemTextClassifier$BlockingCallback; -Landroid/view/textclassifier/SystemTextClassifier$ResponseReceiver-IA; Landroid/view/textclassifier/SystemTextClassifier$ResponseReceiver; +Landroid/view/textclassifier/SystemTextClassifier-IA; Landroid/view/textclassifier/SystemTextClassifier; Landroid/view/textclassifier/SystemTextClassifierMetadata$1; Landroid/view/textclassifier/SystemTextClassifierMetadata; @@ -32019,23 +31989,19 @@ Landroid/view/textclassifier/TextClassificationSessionId; Landroid/view/textclassifier/TextClassifier$1; Landroid/view/textclassifier/TextClassifier$EntityConfig$1; Landroid/view/textclassifier/TextClassifier$EntityConfig$Builder; -Landroid/view/textclassifier/TextClassifier$EntityConfig-IA; Landroid/view/textclassifier/TextClassifier$EntityConfig; Landroid/view/textclassifier/TextClassifier$Utils; +Landroid/view/textclassifier/TextClassifier-IA; Landroid/view/textclassifier/TextClassifier; Landroid/view/textclassifier/TextClassifierEvent$1; Landroid/view/textclassifier/TextClassifierEvent$Builder; Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent-IA; Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent; Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent-IA; Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent; Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent-IA; Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent; Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent-IA; Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent; Landroid/view/textclassifier/TextClassifierEvent-IA; Landroid/view/textclassifier/TextClassifierEvent; @@ -32068,7 +32034,6 @@ Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$1; Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams; Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl; Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams$Builder; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams-IA; Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams; Landroid/view/textservice/SpellCheckerSession; Landroid/view/textservice/SpellCheckerSubtype$1; @@ -32174,12 +32139,9 @@ Landroid/widget/AbsListView$3; Landroid/widget/AbsListView$4; Landroid/widget/AbsListView$AbsPositionScroller; Landroid/widget/AbsListView$AdapterDataSetObserver; -Landroid/widget/AbsListView$CheckForKeyLongPress-IA; Landroid/widget/AbsListView$CheckForKeyLongPress; Landroid/widget/AbsListView$CheckForLongPress; -Landroid/widget/AbsListView$CheckForTap-IA; Landroid/widget/AbsListView$CheckForTap; -Landroid/widget/AbsListView$DeviceConfigChangeListener-IA; Landroid/widget/AbsListView$DeviceConfigChangeListener; Landroid/widget/AbsListView$FlingRunnable$1; Landroid/widget/AbsListView$FlingRunnable; @@ -32189,7 +32151,6 @@ Landroid/widget/AbsListView$ListItemAccessibilityDelegate; Landroid/widget/AbsListView$MultiChoiceModeListener; Landroid/widget/AbsListView$MultiChoiceModeWrapper; Landroid/widget/AbsListView$OnScrollListener; -Landroid/widget/AbsListView$PerformClick-IA; Landroid/widget/AbsListView$PerformClick; Landroid/widget/AbsListView$PositionScroller; Landroid/widget/AbsListView$RecycleBin; @@ -32197,8 +32158,8 @@ Landroid/widget/AbsListView$RecyclerListener; Landroid/widget/AbsListView$SavedState$1; Landroid/widget/AbsListView$SavedState; Landroid/widget/AbsListView$SelectionBoundsAdjuster; -Landroid/widget/AbsListView$WindowRunnnable-IA; Landroid/widget/AbsListView$WindowRunnnable; +Landroid/widget/AbsListView-IA; Landroid/widget/AbsListView; Landroid/widget/AbsSeekBar; Landroid/widget/AbsSpinner$RecycleBin; @@ -32234,13 +32195,11 @@ Landroid/widget/AdapterView; Landroid/widget/ArrayAdapter; Landroid/widget/AutoCompleteTextView$$ExternalSyntheticLambda0; Landroid/widget/AutoCompleteTextView$$ExternalSyntheticLambda1; -Landroid/widget/AutoCompleteTextView$DropDownItemClickListener-IA; Landroid/widget/AutoCompleteTextView$DropDownItemClickListener; -Landroid/widget/AutoCompleteTextView$MyWatcher-IA; Landroid/widget/AutoCompleteTextView$MyWatcher; -Landroid/widget/AutoCompleteTextView$PassThroughClickListener-IA; Landroid/widget/AutoCompleteTextView$PassThroughClickListener; Landroid/widget/AutoCompleteTextView$Validator; +Landroid/widget/AutoCompleteTextView-IA; Landroid/widget/AutoCompleteTextView; Landroid/widget/BaseAdapter; Landroid/widget/Button; @@ -32268,21 +32227,16 @@ Landroid/widget/Editor$1; Landroid/widget/Editor$2; Landroid/widget/Editor$3; Landroid/widget/Editor$5; -Landroid/widget/Editor$AccessibilitySmartActions-IA; Landroid/widget/Editor$AccessibilitySmartActions; -Landroid/widget/Editor$Blink-IA; Landroid/widget/Editor$Blink; Landroid/widget/Editor$CorrectionHighlighter; -Landroid/widget/Editor$CursorAnchorInfoNotifier-IA; Landroid/widget/Editor$CursorAnchorInfoNotifier; Landroid/widget/Editor$CursorController; Landroid/widget/Editor$EasyEditDeleteListener; -Landroid/widget/Editor$EasyEditPopupWindow-IA; Landroid/widget/Editor$EasyEditPopupWindow; Landroid/widget/Editor$EditOperation$1; Landroid/widget/Editor$EditOperation; Landroid/widget/Editor$ErrorPopup; -Landroid/widget/Editor$HandleView-IA; Landroid/widget/Editor$HandleView; Landroid/widget/Editor$InputContentType; Landroid/widget/Editor$InputMethodState; @@ -32293,24 +32247,20 @@ Landroid/widget/Editor$InsertionPointCursorController$1; Landroid/widget/Editor$InsertionPointCursorController; Landroid/widget/Editor$MagnifierMotionAnimator; Landroid/widget/Editor$PinnedPopupWindow; -Landroid/widget/Editor$PositionListener-IA; Landroid/widget/Editor$PositionListener; -Landroid/widget/Editor$ProcessTextIntentActionsHandler-IA; Landroid/widget/Editor$ProcessTextIntentActionsHandler; Landroid/widget/Editor$SelectionHandleView; Landroid/widget/Editor$SelectionModifierCursorController; Landroid/widget/Editor$SpanController$1; Landroid/widget/Editor$SpanController$2; -Landroid/widget/Editor$SpanController-IA; Landroid/widget/Editor$SpanController; -Landroid/widget/Editor$SuggestionHelper$SuggestionSpanComparator-IA; Landroid/widget/Editor$SuggestionHelper$SuggestionSpanComparator; -Landroid/widget/Editor$SuggestionHelper-IA; Landroid/widget/Editor$SuggestionHelper; Landroid/widget/Editor$SuggestionsPopupWindow; Landroid/widget/Editor$TextRenderNode; Landroid/widget/Editor$TextViewPositionListener; Landroid/widget/Editor$UndoInputFilter; +Landroid/widget/Editor-IA; Landroid/widget/Editor; Landroid/widget/EditorTouchState; Landroid/widget/FastScroller$1; @@ -32325,8 +32275,8 @@ Landroid/widget/Filter$FilterListener; Landroid/widget/Filter$FilterResults; Landroid/widget/Filter$RequestArguments; Landroid/widget/Filter$RequestHandler; -Landroid/widget/Filter$ResultsHandler-IA; Landroid/widget/Filter$ResultsHandler; +Landroid/widget/Filter-IA; Landroid/widget/Filter; Landroid/widget/Filterable; Landroid/widget/ForwardingListener; @@ -32345,15 +32295,14 @@ Landroid/widget/GridLayout$Alignment; Landroid/widget/GridLayout$Arc; Landroid/widget/GridLayout$Assoc; Landroid/widget/GridLayout$Axis$1; -Landroid/widget/GridLayout$Axis-IA; Landroid/widget/GridLayout$Axis; Landroid/widget/GridLayout$Bounds; Landroid/widget/GridLayout$Interval; Landroid/widget/GridLayout$LayoutParams; Landroid/widget/GridLayout$MutableInt; -Landroid/widget/GridLayout$PackedMap-IA; Landroid/widget/GridLayout$PackedMap; Landroid/widget/GridLayout$Spec; +Landroid/widget/GridLayout-IA; Landroid/widget/GridLayout; Landroid/widget/HeaderViewListAdapter; Landroid/widget/HorizontalScrollView$SavedState$1; @@ -32366,22 +32315,17 @@ Landroid/widget/ImageView; Landroid/widget/LinearLayout$LayoutParams; Landroid/widget/LinearLayout; Landroid/widget/ListAdapter; -Landroid/widget/ListPopupWindow$ListSelectorHider-IA; Landroid/widget/ListPopupWindow$ListSelectorHider; -Landroid/widget/ListPopupWindow$PopupDataSetObserver-IA; Landroid/widget/ListPopupWindow$PopupDataSetObserver; -Landroid/widget/ListPopupWindow$PopupScrollListener-IA; Landroid/widget/ListPopupWindow$PopupScrollListener; -Landroid/widget/ListPopupWindow$PopupTouchInterceptor-IA; Landroid/widget/ListPopupWindow$PopupTouchInterceptor; -Landroid/widget/ListPopupWindow$ResizePopupRunnable-IA; Landroid/widget/ListPopupWindow$ResizePopupRunnable; +Landroid/widget/ListPopupWindow-IA; Landroid/widget/ListPopupWindow; -Landroid/widget/ListView$ArrowScrollFocusResult-IA; Landroid/widget/ListView$ArrowScrollFocusResult; Landroid/widget/ListView$FixedViewInfo; -Landroid/widget/ListView$FocusSelector-IA; Landroid/widget/ListView$FocusSelector; +Landroid/widget/ListView-IA; Landroid/widget/ListView; Landroid/widget/Magnifier$Builder; Landroid/widget/Magnifier$InternalPopupWindow; @@ -32413,14 +32357,12 @@ Landroid/widget/PopupWindow$PopupDecorView; Landroid/widget/PopupWindow; Landroid/widget/ProgressBar$1; Landroid/widget/ProgressBar$2; -Landroid/widget/ProgressBar$ProgressTintInfo-IA; Landroid/widget/ProgressBar$ProgressTintInfo; Landroid/widget/ProgressBar$RefreshData; -Landroid/widget/ProgressBar$RefreshProgressRunnable-IA; Landroid/widget/ProgressBar$RefreshProgressRunnable; Landroid/widget/ProgressBar$SavedState$1; -Landroid/widget/ProgressBar$SavedState-IA; Landroid/widget/ProgressBar$SavedState; +Landroid/widget/ProgressBar-IA; Landroid/widget/ProgressBar; Landroid/widget/QuickContactBadge; Landroid/widget/RadioButton; @@ -32428,17 +32370,18 @@ Landroid/widget/RadioGroup$OnCheckedChangeListener; Landroid/widget/RadioGroup; Landroid/widget/RatingBar; Landroid/widget/RelativeLayout$DependencyGraph$Node; -Landroid/widget/RelativeLayout$DependencyGraph-IA; Landroid/widget/RelativeLayout$DependencyGraph; Landroid/widget/RelativeLayout$LayoutParams; Landroid/widget/RelativeLayout$TopToBottomLeftToRightComparator; +Landroid/widget/RelativeLayout-IA; Landroid/widget/RelativeLayout; Landroid/widget/RemoteViews$$ExternalSyntheticLambda0; Landroid/widget/RemoteViews$$ExternalSyntheticLambda1; Landroid/widget/RemoteViews$$ExternalSyntheticLambda2; +Landroid/widget/RemoteViews$$ExternalSyntheticLambda4; +Landroid/widget/RemoteViews$$ExternalSyntheticLambda5; Landroid/widget/RemoteViews$1; Landroid/widget/RemoteViews$2; -Landroid/widget/RemoteViews$Action-IA; Landroid/widget/RemoteViews$Action; Landroid/widget/RemoteViews$ActionException; Landroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0; @@ -32457,6 +32400,7 @@ Landroid/widget/RemoteViews$MethodArgs; Landroid/widget/RemoteViews$MethodKey; Landroid/widget/RemoteViews$NightModeReflectionAction; Landroid/widget/RemoteViews$OnViewAppliedListener; +Landroid/widget/RemoteViews$PendingResources; Landroid/widget/RemoteViews$ReflectionAction; Landroid/widget/RemoteViews$RemoteCollectionCache; Landroid/widget/RemoteViews$RemoteCollectionItems$1; @@ -32492,6 +32436,7 @@ Landroid/widget/RemoteViews$ViewGroupActionRemove$1; Landroid/widget/RemoteViews$ViewGroupActionRemove; Landroid/widget/RemoteViews$ViewPaddingAction; Landroid/widget/RemoteViews$ViewTree; +Landroid/widget/RemoteViews-IA; Landroid/widget/RemoteViews; Landroid/widget/RemoteViewsAdapter$AsyncRemoteAdapterAction; Landroid/widget/RemoteViewsAdapter$RemoteAdapterConnectionCallback; @@ -32515,10 +32460,10 @@ Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda2; Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda3; Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda8; Landroid/widget/SelectionActionModeHelper$SelectionMetricsLogger; -Landroid/widget/SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable-IA; Landroid/widget/SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable; Landroid/widget/SelectionActionModeHelper$SelectionTracker; Landroid/widget/SelectionActionModeHelper$TextClassificationHelper; +Landroid/widget/SelectionActionModeHelper-IA; Landroid/widget/SelectionActionModeHelper; Landroid/widget/SmartSelectSprite$$ExternalSyntheticLambda0; Landroid/widget/SmartSelectSprite$$ExternalSyntheticLambda1; @@ -32529,11 +32474,10 @@ Landroid/widget/Space; Landroid/widget/SpellChecker$1; Landroid/widget/SpellChecker$RemoveReason; Landroid/widget/SpellChecker$SentenceIteratorWrapper; -Landroid/widget/SpellChecker$SpellParser-IA; Landroid/widget/SpellChecker$SpellParser; +Landroid/widget/SpellChecker-IA; Landroid/widget/SpellChecker; Landroid/widget/Spinner$1; -Landroid/widget/Spinner$DialogPopup-IA; Landroid/widget/Spinner$DialogPopup; Landroid/widget/Spinner$DropDownAdapter; Landroid/widget/Spinner$DropdownPopup$1; @@ -32541,6 +32485,7 @@ Landroid/widget/Spinner$DropdownPopup; Landroid/widget/Spinner$SavedState$1; Landroid/widget/Spinner$SavedState; Landroid/widget/Spinner$SpinnerPopup; +Landroid/widget/Spinner-IA; Landroid/widget/Spinner; Landroid/widget/SpinnerAdapter; Landroid/widget/Switch$1; @@ -32565,7 +32510,6 @@ Landroid/widget/TextView$2; Landroid/widget/TextView$3; Landroid/widget/TextView$4; Landroid/widget/TextView$BufferType; -Landroid/widget/TextView$ChangeWatcher-IA; Landroid/widget/TextView$ChangeWatcher; Landroid/widget/TextView$CharWrapper; Landroid/widget/TextView$Drawables; @@ -32575,23 +32519,22 @@ Landroid/widget/TextView$Marquee$3; Landroid/widget/TextView$Marquee; Landroid/widget/TextView$OnEditorActionListener; Landroid/widget/TextView$SavedState$1; -Landroid/widget/TextView$SavedState-IA; Landroid/widget/TextView$SavedState; -Landroid/widget/TextView$TextAppearanceAttributes-IA; Landroid/widget/TextView$TextAppearanceAttributes; +Landroid/widget/TextView-IA; Landroid/widget/TextView; -Landroid/widget/TextViewOnReceiveContentListener$InputConnectionInfo-IA; Landroid/widget/TextViewOnReceiveContentListener$InputConnectionInfo; +Landroid/widget/TextViewOnReceiveContentListener-IA; Landroid/widget/TextViewOnReceiveContentListener; Landroid/widget/TextViewTranslationCallback; Landroid/widget/ThemedSpinnerAdapter; Landroid/widget/Toast$Callback; Landroid/widget/Toast$CallbackBinder$$ExternalSyntheticLambda0; Landroid/widget/Toast$CallbackBinder$$ExternalSyntheticLambda1; -Landroid/widget/Toast$CallbackBinder-IA; Landroid/widget/Toast$CallbackBinder; Landroid/widget/Toast$TN$1; Landroid/widget/Toast$TN; +Landroid/widget/Toast-IA; Landroid/widget/Toast; Landroid/widget/ToastPresenter; Landroid/widget/ToggleButton; @@ -32608,6 +32551,8 @@ Landroid/widget/ViewFlipper$1; Landroid/widget/ViewFlipper; Landroid/widget/ViewSwitcher; Landroid/widget/WrapperListAdapter; +Landroid/widget/flags/FeatureFlags; +Landroid/widget/flags/FeatureFlagsImpl; Landroid/widget/flags/Flags; Landroid/widget/inline/InlinePresentationSpec$1; Landroid/widget/inline/InlinePresentationSpec$BaseBuilder; @@ -32623,10 +32568,10 @@ Landroid/window/BackMotionEvent; Landroid/window/BackNavigationInfo$1; Landroid/window/BackNavigationInfo; Landroid/window/BackProgressAnimator$$ExternalSyntheticLambda0; +Landroid/window/BackProgressAnimator$$ExternalSyntheticLambda1; Landroid/window/BackProgressAnimator$1; Landroid/window/BackProgressAnimator$ProgressCallback; Landroid/window/BackProgressAnimator; -Landroid/window/BackTouchTracker$TouchTrackerState; Landroid/window/BackTouchTracker; Landroid/window/ClientWindowFrames$1; Landroid/window/ClientWindowFrames-IA; @@ -32681,7 +32626,6 @@ Landroid/window/IWindowContainerTransactionCallback; Landroid/window/IWindowOrganizerController$Stub$Proxy; Landroid/window/IWindowOrganizerController$Stub; Landroid/window/IWindowOrganizerController; -Landroid/window/ImeOnBackInvokedDispatcher$$ExternalSyntheticLambda0; Landroid/window/ImeOnBackInvokedDispatcher$1; Landroid/window/ImeOnBackInvokedDispatcher$2; Landroid/window/ImeOnBackInvokedDispatcher$DefaultImeOnBackAnimationCallback; @@ -32725,11 +32669,12 @@ Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda3; Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda4; Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda5; Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda6; +Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda7; Landroid/window/SurfaceSyncGroup$1; Landroid/window/SurfaceSyncGroup$2; -Landroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl-IA; Landroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl; Landroid/window/SurfaceSyncGroup$SurfaceViewFrameCallback; +Landroid/window/SurfaceSyncGroup-IA; Landroid/window/SurfaceSyncGroup; Landroid/window/TaskAppearedInfo$1; Landroid/window/TaskAppearedInfo; @@ -32769,13 +32714,15 @@ Landroid/window/WindowInfosListener; Landroid/window/WindowMetricsController$$ExternalSyntheticLambda0; Landroid/window/WindowMetricsController; Landroid/window/WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda0; +Landroid/window/WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda1; +Landroid/window/WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda2; Landroid/window/WindowOnBackInvokedDispatcher$Checker; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda1; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda4; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef; +Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda5; Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper; Landroid/window/WindowOnBackInvokedDispatcher; Landroid/window/WindowOrganizer$1; @@ -32859,10 +32806,15 @@ Lcom/android/framework/protobuf/nano/InternalNano; Lcom/android/framework/protobuf/nano/InvalidProtocolBufferNanoException; Lcom/android/framework/protobuf/nano/MessageNano; Lcom/android/framework/protobuf/nano/WireFormatNano; +Lcom/android/graphics/flags/FeatureFlags; +Lcom/android/graphics/flags/FeatureFlagsImpl; Lcom/android/graphics/flags/Flags; Lcom/android/graphics/hwui/flags/FeatureFlags; Lcom/android/graphics/hwui/flags/FeatureFlagsImpl; Lcom/android/graphics/hwui/flags/Flags; +Lcom/android/graphics/surfaceflinger/flags/FeatureFlags; +Lcom/android/graphics/surfaceflinger/flags/FeatureFlagsImpl; +Lcom/android/graphics/surfaceflinger/flags/Flags; Lcom/android/i18n/phonenumbers/AlternateFormatsCountryCodeSet; Lcom/android/i18n/phonenumbers/AsYouTypeFormatter; Lcom/android/i18n/phonenumbers/CountryCodeToRegionCodeMap; @@ -32998,6 +32950,7 @@ Lcom/android/icu/util/ExtendedCalendar; Lcom/android/icu/util/ExtendedTimeZone; Lcom/android/icu/util/Icu4cMetadata; Lcom/android/icu/util/LocaleNative; +Lcom/android/icu/util/UResourceBundleNative; Lcom/android/icu/util/regex/MatcherNative; Lcom/android/icu/util/regex/PatternNative; Lcom/android/ims/FeatureConnection$$ExternalSyntheticLambda0; @@ -33051,6 +33004,7 @@ Lcom/android/ims/ImsManager$$ExternalSyntheticLambda2; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda3; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda4; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda5; +Lcom/android/ims/ImsManager$$ExternalSyntheticLambda6; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda7; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda8; Lcom/android/ims/ImsManager$$ExternalSyntheticLambda9; @@ -33070,7 +33024,6 @@ Lcom/android/ims/ImsMultiEndpoint$ImsExternalCallStateListenerProxy; Lcom/android/ims/ImsMultiEndpoint; Lcom/android/ims/ImsServiceClass; Lcom/android/ims/ImsUt$IImsUtListenerProxy; -Lcom/android/ims/ImsUt; Lcom/android/ims/ImsUtInterface; Lcom/android/ims/MmTelFeatureConnection$BinderAccessState; Lcom/android/ims/MmTelFeatureConnection$CapabilityCallbackManager; @@ -33129,6 +33082,7 @@ Lcom/android/ims/internal/IImsRegistrationListener$Stub; Lcom/android/ims/internal/IImsRegistrationListener; Lcom/android/ims/internal/IImsServiceController$Stub; Lcom/android/ims/internal/IImsServiceController; +Lcom/android/ims/internal/IImsServiceFeatureCallback$Stub$Proxy; Lcom/android/ims/internal/IImsServiceFeatureCallback$Stub; Lcom/android/ims/internal/IImsServiceFeatureCallback; Lcom/android/ims/internal/IImsStreamMediaSession; @@ -33572,6 +33526,7 @@ Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$8; Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$9; Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$MassState; Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$OnAnimationEndListener; +Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$OnAnimationUpdateListener; Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$ViewProperty; Lcom/android/internal/dynamicanimation/animation/DynamicAnimation; Lcom/android/internal/dynamicanimation/animation/Force; @@ -33591,6 +33546,11 @@ Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator; Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable$BlurRegion; Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable-IA; Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable; +Lcom/android/internal/hidden_from_bootclasspath/android/app/appfunctions/flags/FeatureFlags; +Lcom/android/internal/hidden_from_bootclasspath/android/app/appfunctions/flags/FeatureFlagsImpl; +Lcom/android/internal/hidden_from_bootclasspath/android/app/appfunctions/flags/Flags; +Lcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlags; +Lcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlagsImpl; Lcom/android/internal/hidden_from_bootclasspath/android/app/job/Flags; Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlags; Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlagsImpl; @@ -33598,9 +33558,17 @@ Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/Flags; Lcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlags; Lcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl; Lcom/android/internal/hidden_from_bootclasspath/android/os/Flags; +Lcom/android/internal/hidden_from_bootclasspath/android/permission/flags/FeatureFlags; +Lcom/android/internal/hidden_from_bootclasspath/android/permission/flags/FeatureFlagsImpl; +Lcom/android/internal/hidden_from_bootclasspath/android/permission/flags/Flags; Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlags; Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlagsImpl; Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/Flags; +Lcom/android/internal/hidden_from_bootclasspath/com/android/libcore/Flags; +Lcom/android/internal/hidden_from_bootclasspath/com/android/server/power/optimization/Flags; +Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags; +Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl; +Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags; Lcom/android/internal/infra/AbstractMultiplePendingRequestsRemoteService; Lcom/android/internal/infra/AbstractRemoteService$AsyncRequest; Lcom/android/internal/infra/AbstractRemoteService$BasePendingRequest; @@ -33653,6 +33621,7 @@ Lcom/android/internal/inputmethod/IRemoteInputConnection$Stub; Lcom/android/internal/inputmethod/IRemoteInputConnection; Lcom/android/internal/inputmethod/ImeTracing; Lcom/android/internal/inputmethod/ImeTracingClientImpl; +Lcom/android/internal/inputmethod/ImeTracingPerfettoImpl; Lcom/android/internal/inputmethod/ImeTracingServerImpl; Lcom/android/internal/inputmethod/InputBindResult$1; Lcom/android/internal/inputmethod/InputBindResult-IA; @@ -33694,8 +33663,8 @@ Lcom/android/internal/jank/InteractionJankMonitor$Configuration; Lcom/android/internal/jank/InteractionJankMonitor$InstanceHolder; Lcom/android/internal/jank/InteractionJankMonitor$RunningTracker; Lcom/android/internal/jank/InteractionJankMonitor$TimeFunction; -Lcom/android/internal/jank/InteractionJankMonitor$TrackerResult-IA; Lcom/android/internal/jank/InteractionJankMonitor$TrackerResult; +Lcom/android/internal/jank/InteractionJankMonitor-IA; Lcom/android/internal/jank/InteractionJankMonitor; Lcom/android/internal/listeners/ListenerExecutor$$ExternalSyntheticLambda0; Lcom/android/internal/listeners/ListenerExecutor$FailureCallback; @@ -33760,8 +33729,8 @@ Lcom/android/internal/os/BinderCallsStats$OverflowBinder; Lcom/android/internal/os/BinderCallsStats$SettingsObserver; Lcom/android/internal/os/BinderCallsStats$UidEntry; Lcom/android/internal/os/BinderCallsStats; -Lcom/android/internal/os/BinderDeathDispatcher$RecipientsInfo-IA; Lcom/android/internal/os/BinderDeathDispatcher$RecipientsInfo; +Lcom/android/internal/os/BinderDeathDispatcher-IA; Lcom/android/internal/os/BinderDeathDispatcher; Lcom/android/internal/os/BinderInternal$BinderProxyCountEventListenerDelegate; Lcom/android/internal/os/BinderInternal$CallSession; @@ -33782,6 +33751,8 @@ Lcom/android/internal/os/CachedDeviceState$TimeInStateStopwatch; Lcom/android/internal/os/CachedDeviceState; Lcom/android/internal/os/ClassLoaderFactory; Lcom/android/internal/os/Clock; +Lcom/android/internal/os/DebugStore$DebugStoreNative; +Lcom/android/internal/os/DebugStore; Lcom/android/internal/os/FeatureFlags; Lcom/android/internal/os/FeatureFlagsImpl; Lcom/android/internal/os/Flags; @@ -33841,10 +33812,10 @@ Lcom/android/internal/os/LongArrayMultiStateCounter$LongArrayContainer; Lcom/android/internal/os/LongArrayMultiStateCounter; Lcom/android/internal/os/LongMultiStateCounter$1; Lcom/android/internal/os/LongMultiStateCounter; -Lcom/android/internal/os/LooperStats$DispatchSession-IA; Lcom/android/internal/os/LooperStats$DispatchSession; Lcom/android/internal/os/LooperStats$Entry; Lcom/android/internal/os/LooperStats$ExportedEntry; +Lcom/android/internal/os/LooperStats-IA; Lcom/android/internal/os/LooperStats; Lcom/android/internal/os/PowerProfile$CpuClusterKey; Lcom/android/internal/os/PowerProfile; @@ -33865,9 +33836,9 @@ Lcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1; Lcom/android/internal/os/RuntimeInit$ApplicationWtfHandler; Lcom/android/internal/os/RuntimeInit$Arguments; Lcom/android/internal/os/RuntimeInit$KillApplicationHandler; -Lcom/android/internal/os/RuntimeInit$LoggingHandler-IA; Lcom/android/internal/os/RuntimeInit$LoggingHandler; Lcom/android/internal/os/RuntimeInit$MethodAndArgsCaller; +Lcom/android/internal/os/RuntimeInit-IA; Lcom/android/internal/os/RuntimeInit; Lcom/android/internal/os/SafeZipPathValidatorCallback; Lcom/android/internal/os/SomeArgs; @@ -33940,12 +33911,12 @@ Lcom/android/internal/policy/PhoneWindow$$ExternalSyntheticLambda1; Lcom/android/internal/policy/PhoneWindow$1; Lcom/android/internal/policy/PhoneWindow$ActionMenuPresenterCallback; Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState$1; -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState-IA; Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState; Lcom/android/internal/policy/PhoneWindow$PanelFeatureState; Lcom/android/internal/policy/PhoneWindow$PhoneWindowMenuCallback; Lcom/android/internal/policy/PhoneWindow$RotationWatcher$1; Lcom/android/internal/policy/PhoneWindow$RotationWatcher; +Lcom/android/internal/policy/PhoneWindow-IA; Lcom/android/internal/policy/PhoneWindow; Lcom/android/internal/policy/ScreenDecorationsUtils; Lcom/android/internal/policy/SystemBarUtils; @@ -33960,6 +33931,8 @@ Lcom/android/internal/protolog/ProtoLogViewerConfigReader; Lcom/android/internal/protolog/common/BitmaskConversionException; Lcom/android/internal/protolog/common/IProtoLogGroup; Lcom/android/internal/protolog/common/LogDataType; +Lcom/android/internal/ravenwood/RavenwoodEnvironment$Workaround; +Lcom/android/internal/ravenwood/RavenwoodEnvironment; Lcom/android/internal/security/VerityUtils; Lcom/android/internal/statusbar/IAddTileResultCallback; Lcom/android/internal/statusbar/IStatusBar$Stub; @@ -34200,6 +34173,7 @@ Lcom/android/internal/telephony/IState; Lcom/android/internal/telephony/ISub$Stub$Proxy; Lcom/android/internal/telephony/ISub$Stub; Lcom/android/internal/telephony/ISub; +Lcom/android/internal/telephony/ITelephony$Stub$Proxy; Lcom/android/internal/telephony/ITelephony$Stub; Lcom/android/internal/telephony/ITelephony; Lcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy; @@ -34993,6 +34967,7 @@ Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLa Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda7; Lcom/android/internal/telephony/metrics/PersistAtomsStorage$1; Lcom/android/internal/telephony/metrics/PersistAtomsStorage; +Lcom/android/internal/telephony/metrics/SatelliteStats$CarrierRoamingSatelliteControllerStatsParams; Lcom/android/internal/telephony/metrics/ServiceStateStats$$ExternalSyntheticLambda0; Lcom/android/internal/telephony/metrics/ServiceStateStats$TimestampedServiceState; Lcom/android/internal/telephony/metrics/ServiceStateStats; @@ -35022,6 +34997,8 @@ Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierAttribute; Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierId; Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierList; Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierIdMismatch; +Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierRoamingSatelliteControllerStats; +Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierRoamingSatelliteSession; Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularDataServiceSwitch; Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularServiceState; Lcom/android/internal/telephony/nano/PersistAtomsProto$DataCallSession; @@ -35043,7 +35020,10 @@ Lcom/android/internal/telephony/nano/PersistAtomsProto$PersistAtoms; Lcom/android/internal/telephony/nano/PersistAtomsProto$PresenceNotifyEvent; Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsAcsProvisioningStats; Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsClientProvisioningStats; +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteAccessController; +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteConfigUpdater; Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteController; +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteEntitlement; Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteIncomingDatagram; Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteOutgoingDatagram; Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteProvision; @@ -35467,8 +35447,8 @@ Lcom/android/internal/util/DumpUtils; Lcom/android/internal/util/EmergencyAffordanceManager; Lcom/android/internal/util/ExponentiallyBucketedHistogram; Lcom/android/internal/util/FastMath; -Lcom/android/internal/util/FastPrintWriter$DummyWriter-IA; Lcom/android/internal/util/FastPrintWriter$DummyWriter; +Lcom/android/internal/util/FastPrintWriter-IA; Lcom/android/internal/util/FastPrintWriter; Lcom/android/internal/util/FastXmlSerializer; Lcom/android/internal/util/FileRotator$FileInfo; @@ -35498,11 +35478,11 @@ Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda1; Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda2; Lcom/android/internal/util/LatencyTracker$Action; Lcom/android/internal/util/LatencyTracker$ActionProperties; -Lcom/android/internal/util/LatencyTracker$FrameworkStatsLogEvent-IA; Lcom/android/internal/util/LatencyTracker$FrameworkStatsLogEvent; Lcom/android/internal/util/LatencyTracker$SLatencyTrackerHolder; Lcom/android/internal/util/LatencyTracker$Session$$ExternalSyntheticLambda0; Lcom/android/internal/util/LatencyTracker$Session; +Lcom/android/internal/util/LatencyTracker-IA; Lcom/android/internal/util/LatencyTracker; Lcom/android/internal/util/LineBreakBufferedWriter; Lcom/android/internal/util/LocalLog; @@ -35529,6 +35509,8 @@ Lcom/android/internal/util/ProcFileReader; Lcom/android/internal/util/ProgressReporter; Lcom/android/internal/util/ProviderAccessStats$PerThreadData; Lcom/android/internal/util/ProviderAccessStats; +Lcom/android/internal/util/RateLimitingCache$ValueFetcher; +Lcom/android/internal/util/RateLimitingCache; Lcom/android/internal/util/RingBuffer$$ExternalSyntheticLambda0; Lcom/android/internal/util/RingBuffer$$ExternalSyntheticLambda1; Lcom/android/internal/util/RingBuffer; @@ -35539,22 +35521,18 @@ Lcom/android/internal/util/ScreenshotHelper; Lcom/android/internal/util/StatLogger; Lcom/android/internal/util/State; Lcom/android/internal/util/StateMachine$LogRec; -Lcom/android/internal/util/StateMachine$LogRecords-IA; Lcom/android/internal/util/StateMachine$LogRecords; -Lcom/android/internal/util/StateMachine$SmHandler$HaltingState-IA; Lcom/android/internal/util/StateMachine$SmHandler$HaltingState; -Lcom/android/internal/util/StateMachine$SmHandler$QuittingState-IA; Lcom/android/internal/util/StateMachine$SmHandler$QuittingState; Lcom/android/internal/util/StateMachine$SmHandler$StateInfo; -Lcom/android/internal/util/StateMachine$SmHandler-IA; Lcom/android/internal/util/StateMachine$SmHandler; +Lcom/android/internal/util/StateMachine-IA; Lcom/android/internal/util/StateMachine; Lcom/android/internal/util/StringPool; Lcom/android/internal/util/SyncResultReceiver$TimeoutException; Lcom/android/internal/util/SyncResultReceiver; Lcom/android/internal/util/ToBooleanFunction; Lcom/android/internal/util/TokenBucket; -Lcom/android/internal/util/TraceBuffer$ProtoOutputStreamProvider-IA; Lcom/android/internal/util/TraceBuffer$ProtoOutputStreamProvider; Lcom/android/internal/util/TraceBuffer$ProtoProvider; Lcom/android/internal/util/TraceBuffer; @@ -35768,6 +35746,7 @@ Lcom/android/net/module/util/NetworkCapabilitiesUtils; Lcom/android/net/module/util/NetworkIdentityUtils; Lcom/android/net/module/util/NetworkStackConstants; Lcom/android/net/module/util/ProxyUtils; +Lcom/android/nfc/x/android/nfc/Flags; Lcom/android/phone/ecc/nano/CodedInputByteBufferNano; Lcom/android/phone/ecc/nano/CodedOutputByteBufferNano$OutOfSpaceException; Lcom/android/phone/ecc/nano/CodedOutputByteBufferNano; @@ -35793,9 +35772,9 @@ Lcom/android/server/am/nano/Capabilities; Lcom/android/server/am/nano/Capability; Lcom/android/server/am/nano/FrameworkCapability; Lcom/android/server/am/nano/VMCapability; +Lcom/android/server/am/nano/VMInfo; Lcom/android/server/backup/AccountManagerBackupHelper; Lcom/android/server/backup/AccountSyncSettingsBackupHelper; -Lcom/android/server/backup/NotificationBackupHelper; Lcom/android/server/backup/PermissionBackupHelper; Lcom/android/server/backup/PreferredActivityBackupHelper; Lcom/android/server/backup/ShortcutBackupHelper; @@ -35831,6 +35810,7 @@ Lcom/android/server/criticalevents/nano/CriticalEventProto$Watchdog; Lcom/android/server/job/JobSchedulerInternal$JobStorePersistStats; Lcom/android/server/net/BaseNetdEventCallback; Lcom/android/server/net/BaseNetworkObserver; +Lcom/android/server/ondeviceintelligence/nano/InferenceInfo; Lcom/android/server/sip/SipHelper; Lcom/android/server/sip/SipService$ConnectivityReceiver$1; Lcom/android/server/sip/SipService$ConnectivityReceiver; @@ -35906,9 +35886,6 @@ Lcom/android/telephony/Rlog; Lcom/android/text/flags/FeatureFlags; Lcom/android/text/flags/FeatureFlagsImpl; Lcom/android/text/flags/Flags; -Lcom/android/window/flags/FeatureFlags; -Lcom/android/window/flags/FeatureFlagsImpl; -Lcom/android/window/flags/Flags; Lcom/google/android/collect/Lists; Lcom/google/android/collect/Maps; Lcom/google/android/collect/Sets; @@ -36473,6 +36450,7 @@ Lorg/apache/http/conn/ssl/X509HostnameVerifier; Lorg/apache/http/params/CoreConnectionPNames; Lorg/apache/http/params/HttpConnectionParams; Lorg/apache/http/params/HttpParams; +Lorg/ccil/cowan/tagsoup/AttributesImpl; Lorg/ccil/cowan/tagsoup/AutoDetector; Lorg/ccil/cowan/tagsoup/CommandLine; Lorg/ccil/cowan/tagsoup/Element; @@ -36910,7 +36888,6 @@ Lorg/ccil/cowan/tagsoup/jaxp/SAXParserImpl; [Landroid/widget/SpellChecker$SpellParser; [Landroid/widget/TextView$BufferType; [Landroid/widget/TextView$ChangeWatcher; -[Landroid/window/BackTouchTracker$TouchTrackerState; [Landroid/window/TransitionFilter$Requirement; [Lcom/android/framework/protobuf/GeneratedMessageLite$MethodToInvoke; [Lcom/android/framework/protobuf/MessageInfoFactory; diff --git a/config/boot-profile.txt b/boot/boot-profile.txt index e0e9164b3f90..e0e9164b3f90 100644 --- a/config/boot-profile.txt +++ b/boot/boot-profile.txt diff --git a/boot/preloaded-classes b/boot/preloaded-classes index 40318ed96f19..a696e03d5bdf 100644 --- a/boot/preloaded-classes +++ b/boot/preloaded-classes @@ -56,13 +56,13 @@ android.accounts.AccountManager$5 android.accounts.AccountManager$8 android.accounts.AccountManager$AccountKeyData android.accounts.AccountManager$AmsTask$1 -android.accounts.AccountManager$AmsTask$Response-IA android.accounts.AccountManager$AmsTask$Response android.accounts.AccountManager$AmsTask android.accounts.AccountManager$BaseFutureTask$1 android.accounts.AccountManager$BaseFutureTask android.accounts.AccountManager$Future2Task$1 android.accounts.AccountManager$Future2Task +android.accounts.AccountManager-IA android.accounts.AccountManager android.accounts.AccountManagerCallback android.accounts.AccountManagerFuture @@ -86,13 +86,20 @@ android.accounts.IAccountManagerResponse android.accounts.NetworkErrorException android.accounts.OnAccountsUpdateListener android.accounts.OperationCanceledException +android.aconfig.nano.Aconfig$flag_declaration +android.aconfig.nano.Aconfig$flag_declarations +android.aconfig.nano.Aconfig$flag_value +android.aconfig.nano.Aconfig$flag_values +android.aconfig.nano.Aconfig$parsed_flag +android.aconfig.nano.Aconfig$parsed_flags +android.aconfig.nano.Aconfig$tracepoint android.animation.AnimationHandler$$ExternalSyntheticLambda0 android.animation.AnimationHandler$1 android.animation.AnimationHandler$2 android.animation.AnimationHandler$AnimationFrameCallback android.animation.AnimationHandler$AnimationFrameCallbackProvider -android.animation.AnimationHandler$MyFrameCallbackProvider-IA android.animation.AnimationHandler$MyFrameCallbackProvider +android.animation.AnimationHandler-IA android.animation.AnimationHandler android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda0 android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda1 @@ -106,8 +113,8 @@ android.animation.Animator$AnimatorConstantState android.animation.Animator$AnimatorListener android.animation.Animator$AnimatorPauseListener android.animation.Animator -android.animation.AnimatorInflater$PathDataEvaluator-IA android.animation.AnimatorInflater$PathDataEvaluator +android.animation.AnimatorInflater-IA android.animation.AnimatorInflater android.animation.AnimatorListenerAdapter android.animation.AnimatorSet$$ExternalSyntheticLambda0 @@ -118,8 +125,8 @@ android.animation.AnimatorSet$3 android.animation.AnimatorSet$AnimationEvent android.animation.AnimatorSet$Builder android.animation.AnimatorSet$Node -android.animation.AnimatorSet$SeekState-IA android.animation.AnimatorSet$SeekState +android.animation.AnimatorSet-IA android.animation.AnimatorSet android.animation.ArgbEvaluator android.animation.BidirectionalTypeConverter @@ -150,8 +157,8 @@ android.animation.PathKeyframes$3 android.animation.PathKeyframes$4 android.animation.PathKeyframes$FloatKeyframesBase android.animation.PathKeyframes$IntKeyframesBase -android.animation.PathKeyframes$SimpleKeyframes-IA android.animation.PathKeyframes$SimpleKeyframes +android.animation.PathKeyframes-IA android.animation.PathKeyframes android.animation.PropertyValuesHolder$1 android.animation.PropertyValuesHolder$FloatPropertyValuesHolder @@ -164,8 +171,8 @@ android.animation.RectEvaluator android.animation.RevealAnimator android.animation.StateListAnimator$1 android.animation.StateListAnimator$StateListAnimatorConstantState -android.animation.StateListAnimator$Tuple-IA android.animation.StateListAnimator$Tuple +android.animation.StateListAnimator-IA android.animation.StateListAnimator android.animation.TimeAnimator$TimeListener android.animation.TimeAnimator @@ -198,19 +205,22 @@ android.app.Activity$$ExternalSyntheticLambda0 android.app.Activity$1 android.app.Activity$HostCallbacks android.app.Activity$ManagedCursor -android.app.Activity$ManagedDialog-IA android.app.Activity$ManagedDialog android.app.Activity$NonConfigurationInstances android.app.Activity$RequestFinishCallback android.app.Activity$TranslucentConversionListener +android.app.Activity-IA android.app.Activity android.app.ActivityClient$1 -android.app.ActivityClient$ActivityClientControllerSingleton-IA android.app.ActivityClient$ActivityClientControllerSingleton android.app.ActivityClient-IA android.app.ActivityClient -android.app.ActivityManager$2 +android.app.ActivityManager$$ExternalSyntheticLambda0 +android.app.ActivityManager$$ExternalSyntheticLambda1 +android.app.ActivityManager$$ExternalSyntheticLambda2 +android.app.ActivityManager$1 android.app.ActivityManager$3 +android.app.ActivityManager$4 android.app.ActivityManager$AppTask android.app.ActivityManager$MemoryInfo$1 android.app.ActivityManager$MemoryInfo @@ -222,20 +232,16 @@ android.app.ActivityManager$ProcessErrorStateInfo$1 android.app.ActivityManager$ProcessErrorStateInfo android.app.ActivityManager$RecentTaskInfo$1 android.app.ActivityManager$RecentTaskInfo$PersistedTaskSnapshotData -android.app.ActivityManager$RecentTaskInfo-IA android.app.ActivityManager$RecentTaskInfo android.app.ActivityManager$RunningAppProcessInfo$1 -android.app.ActivityManager$RunningAppProcessInfo-IA android.app.ActivityManager$RunningAppProcessInfo android.app.ActivityManager$RunningServiceInfo$1 -android.app.ActivityManager$RunningServiceInfo-IA android.app.ActivityManager$RunningServiceInfo android.app.ActivityManager$RunningTaskInfo$1 -android.app.ActivityManager$RunningTaskInfo-IA android.app.ActivityManager$RunningTaskInfo android.app.ActivityManager$TaskDescription$1 -android.app.ActivityManager$TaskDescription-IA android.app.ActivityManager$TaskDescription +android.app.ActivityManager-IA android.app.ActivityManager android.app.ActivityManagerInternal android.app.ActivityOptions$1 @@ -268,7 +274,6 @@ android.app.ActivityThread$ActivityClientRecord android.app.ActivityThread$AppBindData android.app.ActivityThread$ApplicationThread$$ExternalSyntheticLambda2 android.app.ActivityThread$ApplicationThread$1 -android.app.ActivityThread$ApplicationThread-IA android.app.ActivityThread$BindServiceData android.app.ActivityThread$ContextCleanupInfo android.app.ActivityThread$CreateBackupAgentData @@ -278,7 +283,6 @@ android.app.ActivityThread$DumpHeapData android.app.ActivityThread$DumpResourcesData android.app.ActivityThread$GcIdler android.app.ActivityThread$H -android.app.ActivityThread$Idler-IA android.app.ActivityThread$Idler android.app.ActivityThread$Profiler android.app.ActivityThread$ProviderClientRecord @@ -290,6 +294,7 @@ android.app.ActivityThread$RequestAssistContextExtras android.app.ActivityThread$SafeCancellationTransport android.app.ActivityThread$ServiceArgsData android.app.ActivityThread$UpdateCompatibilityData +android.app.ActivityThread-IA android.app.ActivityThread android.app.ActivityThreadInternal android.app.ActivityTransitionCoordinator @@ -360,6 +365,7 @@ android.app.AppOpsManager android.app.AppOpsManagerInternal android.app.Application$ActivityLifecycleCallbacks android.app.Application$OnProvideAssistDataListener +android.app.Application android.app.ApplicationErrorReport$1 android.app.ApplicationErrorReport$AnrInfo android.app.ApplicationErrorReport$BatteryInfo @@ -371,8 +377,8 @@ android.app.ApplicationErrorReport android.app.ApplicationExitInfo$1 android.app.ApplicationExitInfo-IA android.app.ApplicationExitInfo -android.app.ApplicationLoaders$CachedClassLoader-IA android.app.ApplicationLoaders$CachedClassLoader +android.app.ApplicationLoaders-IA android.app.ApplicationLoaders android.app.ApplicationPackageManager$$ExternalSyntheticLambda1 android.app.ApplicationPackageManager$$ExternalSyntheticLambda2 @@ -395,6 +401,8 @@ android.app.BackgroundInstallControlManager android.app.BackgroundServiceStartNotAllowedException$1 android.app.BackgroundServiceStartNotAllowedException android.app.BroadcastOptions +android.app.BroadcastStickyCache +android.app.CameraCompatTaskInfo$1 android.app.CameraCompatTaskInfo android.app.ClientTransactionHandler android.app.ComponentCaller @@ -499,7 +507,6 @@ android.app.IAssistDataReceiver android.app.IBackupAgent$Stub$Proxy android.app.IBackupAgent$Stub android.app.IBackupAgent -android.app.ICompatCameraControlCallback android.app.IForegroundServiceObserver$Stub$Proxy android.app.IForegroundServiceObserver$Stub android.app.IForegroundServiceObserver @@ -594,14 +601,13 @@ android.app.ListActivity android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0 android.app.LoadedApk$ReceiverDispatcher$Args android.app.LoadedApk$ReceiverDispatcher -android.app.LoadedApk$ServiceDispatcher$ConnectionInfo-IA android.app.LoadedApk$ServiceDispatcher$ConnectionInfo android.app.LoadedApk$ServiceDispatcher$DeathMonitor android.app.LoadedApk$ServiceDispatcher$RunConnection android.app.LoadedApk$ServiceDispatcher android.app.LoadedApk$SplitDependencyLoaderImpl -android.app.LoadedApk$WarningContextClassLoader-IA android.app.LoadedApk$WarningContextClassLoader +android.app.LoadedApk-IA android.app.LoadedApk android.app.LoaderManager$LoaderCallbacks android.app.LoaderManager @@ -615,13 +621,11 @@ android.app.Notification$$ExternalSyntheticLambda0 android.app.Notification$1 android.app.Notification$Action$1 android.app.Notification$Action$Builder -android.app.Notification$Action-IA android.app.Notification$Action android.app.Notification$BigPictureStyle android.app.Notification$BigTextStyle android.app.Notification$BubbleMetadata$1 android.app.Notification$BubbleMetadata$Builder -android.app.Notification$BubbleMetadata-IA android.app.Notification$BubbleMetadata android.app.Notification$Builder android.app.Notification$BuilderRemoteViews @@ -634,12 +638,12 @@ android.app.Notification$InboxStyle android.app.Notification$MediaStyle android.app.Notification$MessagingStyle$Message android.app.Notification$MessagingStyle -android.app.Notification$StandardTemplateParams-IA android.app.Notification$StandardTemplateParams android.app.Notification$Style android.app.Notification$TemplateBindResult$MarginSet android.app.Notification$TemplateBindResult android.app.Notification$TvExtender +android.app.Notification-IA android.app.Notification android.app.NotificationChannel$1 android.app.NotificationChannel @@ -658,7 +662,6 @@ android.app.PackageInstallObserver android.app.PendingIntent$$ExternalSyntheticLambda0 android.app.PendingIntent$$ExternalSyntheticLambda1 android.app.PendingIntent$$ExternalSyntheticLambda2 -android.app.PendingIntent$$ExternalSyntheticLambda3 android.app.PendingIntent$1 android.app.PendingIntent$CancelListener android.app.PendingIntent$CanceledException @@ -666,7 +669,6 @@ android.app.PendingIntent$OnFinished android.app.PendingIntent$OnMarshaledListener android.app.PendingIntent android.app.Person$1 -android.app.Person$Builder-IA android.app.Person$Builder android.app.Person-IA android.app.Person @@ -704,15 +706,14 @@ android.app.RemoteInputHistoryItem android.app.RemoteServiceException android.app.ResourcesManager$$ExternalSyntheticLambda0 android.app.ResourcesManager$$ExternalSyntheticLambda1 -android.app.ResourcesManager$ActivityResource-IA android.app.ResourcesManager$ActivityResource -android.app.ResourcesManager$ActivityResources-IA android.app.ResourcesManager$ActivityResources android.app.ResourcesManager$ApkAssetsSupplier android.app.ResourcesManager$ApkKey +android.app.ResourcesManager$PathCollector android.app.ResourcesManager$SharedLibraryAssets -android.app.ResourcesManager$UpdateHandler-IA android.app.ResourcesManager$UpdateHandler +android.app.ResourcesManager-IA android.app.ResourcesManager android.app.ResultInfo$1 android.app.ResultInfo @@ -738,9 +739,10 @@ android.app.SharedPreferencesImpl$1 android.app.SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0 android.app.SharedPreferencesImpl$EditorImpl$1 android.app.SharedPreferencesImpl$EditorImpl$2 -android.app.SharedPreferencesImpl$MemoryCommitResult-IA +android.app.SharedPreferencesImpl$EditorImpl android.app.SharedPreferencesImpl$MemoryCommitResult android.app.SharedPreferencesImpl$SharedPreferencesThreadFactory +android.app.SharedPreferencesImpl-IA android.app.StackTrace android.app.StatusBarManager android.app.SyncNotedAppOp$1 @@ -797,6 +799,8 @@ android.app.SystemServiceRegistry$143 android.app.SystemServiceRegistry$144 android.app.SystemServiceRegistry$145 android.app.SystemServiceRegistry$146 +android.app.SystemServiceRegistry$147 +android.app.SystemServiceRegistry$148 android.app.SystemServiceRegistry$14 android.app.SystemServiceRegistry$15 android.app.SystemServiceRegistry$16 @@ -906,8 +910,8 @@ android.app.UiModeManager$1 android.app.UiModeManager$Globals android.app.UiModeManager$InnerListener android.app.UiModeManager$OnProjectionStateChangedListener -android.app.UiModeManager$OnProjectionStateChangedListenerResourceManager-IA android.app.UiModeManager$OnProjectionStateChangedListenerResourceManager +android.app.UiModeManager-IA android.app.UiModeManager android.app.UidObserver android.app.UriGrantsManager$1 @@ -1019,17 +1023,17 @@ android.app.assist.AssistStructure$ViewNodeText android.app.assist.AssistStructure$ViewStackEntry android.app.assist.AssistStructure$WindowNode android.app.assist.AssistStructure -android.app.backup.BackupAgent$BackupServiceBinder-IA android.app.backup.BackupAgent$BackupServiceBinder android.app.backup.BackupAgent$SharedPrefsSynchronizer +android.app.backup.BackupAgent-IA android.app.backup.BackupAgent android.app.backup.BackupAgentHelper android.app.backup.BackupDataInput$EntityHeader android.app.backup.BackupDataInput android.app.backup.BackupDataOutput android.app.backup.BackupHelper -android.app.backup.BackupHelperDispatcher$Header-IA android.app.backup.BackupHelperDispatcher$Header +android.app.backup.BackupHelperDispatcher-IA android.app.backup.BackupHelperDispatcher android.app.backup.BackupHelperWithLogger android.app.backup.BackupManager$BackupObserverWrapper$1 @@ -1117,11 +1121,11 @@ android.app.job.IUserVisibleJobObserver android.app.job.JobInfo$1 android.app.job.JobInfo$Builder android.app.job.JobInfo$TriggerContentUri$1 -android.app.job.JobInfo$TriggerContentUri-IA android.app.job.JobInfo$TriggerContentUri android.app.job.JobInfo-IA android.app.job.JobInfo android.app.job.JobParameters$1 +android.app.job.JobParameters$JobCleanupCallback android.app.job.JobParameters-IA android.app.job.JobParameters android.app.job.JobScheduler @@ -1195,8 +1199,6 @@ android.app.servertransaction.LaunchActivityItem android.app.servertransaction.NewIntentItem$1 android.app.servertransaction.NewIntentItem-IA android.app.servertransaction.NewIntentItem -android.app.servertransaction.ObjectPool -android.app.servertransaction.ObjectPoolItem android.app.servertransaction.PauseActivityItem$1 android.app.servertransaction.PauseActivityItem-IA android.app.servertransaction.PauseActivityItem @@ -1216,6 +1218,7 @@ android.app.servertransaction.TopResumedActivityChangeItem-IA android.app.servertransaction.TopResumedActivityChangeItem android.app.servertransaction.TransactionExecutor android.app.servertransaction.TransactionExecutorHelper +android.app.servertransaction.WindowStateTransactionItem$TransactionListener android.app.slice.ISliceManager$Stub$Proxy android.app.slice.ISliceManager$Stub android.app.slice.ISliceManager @@ -1267,6 +1270,7 @@ android.app.smartspace.uitemplatedata.TapAction$1 android.app.smartspace.uitemplatedata.TapAction android.app.smartspace.uitemplatedata.Text$1 android.app.smartspace.uitemplatedata.Text +android.app.supervision.SupervisionManager android.app.time.ITimeZoneDetectorListener$Stub$Proxy android.app.time.ITimeZoneDetectorListener$Stub android.app.time.ITimeZoneDetectorListener @@ -1389,15 +1393,15 @@ android.companion.virtual.IVirtualDevice android.companion.virtual.IVirtualDeviceManager$Stub$Proxy android.companion.virtual.IVirtualDeviceManager$Stub android.companion.virtual.IVirtualDeviceManager +android.companion.virtual.VirtualDevice$1 android.companion.virtual.VirtualDevice android.companion.virtual.VirtualDeviceManager android.companion.virtual.flags.FeatureFlags android.companion.virtual.flags.FeatureFlagsImpl android.companion.virtual.flags.Flags -android.content.AbstractThreadedSyncAdapter$ISyncAdapterImpl-IA android.content.AbstractThreadedSyncAdapter$ISyncAdapterImpl -android.content.AbstractThreadedSyncAdapter$SyncThread-IA android.content.AbstractThreadedSyncAdapter$SyncThread +android.content.AbstractThreadedSyncAdapter-IA android.content.AbstractThreadedSyncAdapter android.content.ActivityNotFoundException android.content.ApexEnvironment @@ -1417,8 +1421,8 @@ android.content.BroadcastReceiver$PendingResult$1 android.content.BroadcastReceiver$PendingResult android.content.BroadcastReceiver android.content.ClipData$1 -android.content.ClipData$Item-IA android.content.ClipData$Item +android.content.ClipData-IA android.content.ClipData android.content.ClipDescription$1 android.content.ClipDescription @@ -1446,14 +1450,13 @@ android.content.ContentProvider$PipeDataWriter android.content.ContentProvider$Transport android.content.ContentProvider android.content.ContentProviderClient$CursorWrapperInner -android.content.ContentProviderClient$NotRespondingRunnable-IA android.content.ContentProviderClient$NotRespondingRunnable +android.content.ContentProviderClient-IA android.content.ContentProviderClient android.content.ContentProviderNative android.content.ContentProviderOperation$1 android.content.ContentProviderOperation$BackReference$1 android.content.ContentProviderOperation$BackReference -android.content.ContentProviderOperation$Builder-IA android.content.ContentProviderOperation$Builder android.content.ContentProviderOperation-IA android.content.ContentProviderOperation @@ -1463,11 +1466,10 @@ android.content.ContentResolver$1 android.content.ContentResolver$2 android.content.ContentResolver$OpenResourceIdResult android.content.ContentResolver$ParcelFileDescriptorInner -android.content.ContentResolver$ResultListener-IA android.content.ContentResolver$ResultListener -android.content.ContentResolver$StringResultListener-IA android.content.ContentResolver$StringResultListener android.content.ContentResolver$UriResultListener +android.content.ContentResolver-IA android.content.ContentResolver android.content.ContentUris android.content.ContentValues$1 @@ -1735,11 +1737,11 @@ android.content.pm.LauncherApps$1 android.content.pm.LauncherApps$AppUsageLimit$1 android.content.pm.LauncherApps$AppUsageLimit android.content.pm.LauncherApps$Callback -android.content.pm.LauncherApps$CallbackMessageHandler$CallbackInfo-IA android.content.pm.LauncherApps$CallbackMessageHandler$CallbackInfo android.content.pm.LauncherApps$CallbackMessageHandler android.content.pm.LauncherApps$ShortcutQuery$QueryFlags android.content.pm.LauncherApps$ShortcutQuery +android.content.pm.LauncherApps-IA android.content.pm.LauncherApps android.content.pm.ModuleInfo$1 android.content.pm.ModuleInfo-IA @@ -1783,7 +1785,6 @@ android.content.pm.PackageManager$Property android.content.pm.PackageManager$ResolveInfoFlags android.content.pm.PackageManager android.content.pm.PackageParser$Activity$1 -android.content.pm.PackageParser$Activity-IA android.content.pm.PackageParser$Activity android.content.pm.PackageParser$ActivityIntentInfo android.content.pm.PackageParser$ApkLite @@ -1803,16 +1804,13 @@ android.content.pm.PackageParser$PackageParserException android.content.pm.PackageParser$ParseComponentArgs android.content.pm.PackageParser$ParsePackageItemArgs android.content.pm.PackageParser$Permission$1 -android.content.pm.PackageParser$Permission-IA android.content.pm.PackageParser$Permission android.content.pm.PackageParser$PermissionGroup$1 android.content.pm.PackageParser$PermissionGroup android.content.pm.PackageParser$Provider$1 -android.content.pm.PackageParser$Provider-IA android.content.pm.PackageParser$Provider android.content.pm.PackageParser$ProviderIntentInfo android.content.pm.PackageParser$Service$1 -android.content.pm.PackageParser$Service-IA android.content.pm.PackageParser$Service android.content.pm.PackageParser$ServiceIntentInfo android.content.pm.PackageParser$SigningDetails$1 @@ -1821,6 +1819,7 @@ android.content.pm.PackageParser$SigningDetails android.content.pm.PackageParser$SplitAssetLoader android.content.pm.PackageParser$SplitDependencyLoader$IllegalDependencyException android.content.pm.PackageParser$SplitNameComparator +android.content.pm.PackageParser-IA android.content.pm.PackageParser android.content.pm.PackageParserCacheHelper$ReadHelper android.content.pm.PackageParserCacheHelper$WriteHelper @@ -1945,7 +1944,6 @@ android.content.res.ApkAssets android.content.res.AssetFileDescriptor$1 android.content.res.AssetFileDescriptor$AutoCloseInputStream android.content.res.AssetFileDescriptor -android.content.res.AssetManager$AssetInputStream-IA android.content.res.AssetManager$AssetInputStream android.content.res.AssetManager$Builder android.content.res.AssetManager-IA @@ -1987,19 +1985,20 @@ android.content.res.ResourceTimer$Config android.content.res.ResourceTimer$Timer android.content.res.ResourceTimer android.content.res.Resources$$ExternalSyntheticLambda0 +android.content.res.Resources$$ExternalSyntheticLambda1 android.content.res.Resources$AssetManagerUpdateHandler android.content.res.Resources$NotFoundException -android.content.res.Resources$Theme-IA android.content.res.Resources$Theme android.content.res.Resources$ThemeKey android.content.res.Resources$UpdateCallbacks +android.content.res.Resources-IA android.content.res.Resources android.content.res.ResourcesImpl$$ExternalSyntheticLambda0 android.content.res.ResourcesImpl$$ExternalSyntheticLambda1 android.content.res.ResourcesImpl$$ExternalSyntheticLambda2 -android.content.res.ResourcesImpl$LookupStack-IA android.content.res.ResourcesImpl$LookupStack android.content.res.ResourcesImpl$ThemeImpl +android.content.res.ResourcesImpl-IA android.content.res.ResourcesImpl android.content.res.ResourcesKey android.content.res.StringBlock$Height @@ -2079,17 +2078,20 @@ android.database.sqlite.SQLiteBlobTooBigException android.database.sqlite.SQLiteCantOpenDatabaseException android.database.sqlite.SQLiteClosable android.database.sqlite.SQLiteCompatibilityWalFlags -android.database.sqlite.SQLiteConnection$Operation-IA android.database.sqlite.SQLiteConnection$Operation +android.database.sqlite.SQLiteConnection$OperationLog$$ExternalSyntheticLambda0 +android.database.sqlite.SQLiteConnection$OperationLog$$ExternalSyntheticLambda1 android.database.sqlite.SQLiteConnection$OperationLog android.database.sqlite.SQLiteConnection$PreparedStatement android.database.sqlite.SQLiteConnection$PreparedStatementCache +android.database.sqlite.SQLiteConnection$RateLimiter +android.database.sqlite.SQLiteConnection-IA android.database.sqlite.SQLiteConnection android.database.sqlite.SQLiteConnectionPool$1 android.database.sqlite.SQLiteConnectionPool$AcquiredConnectionStatus -android.database.sqlite.SQLiteConnectionPool$ConnectionWaiter-IA android.database.sqlite.SQLiteConnectionPool$ConnectionWaiter android.database.sqlite.SQLiteConnectionPool$IdleConnectionHandler +android.database.sqlite.SQLiteConnectionPool-IA android.database.sqlite.SQLiteConnectionPool android.database.sqlite.SQLiteConstraintException android.database.sqlite.SQLiteCursorDriver @@ -2101,8 +2103,8 @@ android.database.sqlite.SQLiteDatabase$$ExternalSyntheticLambda3 android.database.sqlite.SQLiteDatabase$1 android.database.sqlite.SQLiteDatabase$CursorFactory android.database.sqlite.SQLiteDatabase$OpenParams$Builder -android.database.sqlite.SQLiteDatabase$OpenParams-IA android.database.sqlite.SQLiteDatabase$OpenParams +android.database.sqlite.SQLiteDatabase-IA android.database.sqlite.SQLiteDatabase android.database.sqlite.SQLiteDatabaseConfiguration android.database.sqlite.SQLiteDatabaseCorruptException @@ -2125,8 +2127,8 @@ android.database.sqlite.SQLiteQuery android.database.sqlite.SQLiteQueryBuilder android.database.sqlite.SQLiteRawStatement android.database.sqlite.SQLiteReadOnlyDatabaseException -android.database.sqlite.SQLiteSession$Transaction-IA android.database.sqlite.SQLiteSession$Transaction +android.database.sqlite.SQLiteSession-IA android.database.sqlite.SQLiteSession android.database.sqlite.SQLiteStatement android.database.sqlite.SQLiteStatementInfo @@ -2135,8 +2137,8 @@ android.database.sqlite.SQLiteTokenizer android.database.sqlite.SQLiteTransactionListener android.database.sqlite.SqliteWrapper android.ddm.DdmHandle -android.ddm.DdmHandleAppName$Names-IA android.ddm.DdmHandleAppName$Names +android.ddm.DdmHandleAppName-IA android.ddm.DdmHandleAppName android.ddm.DdmHandleExit android.ddm.DdmHandleHeap @@ -2194,12 +2196,16 @@ android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda0 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda1 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda2 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda3 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda4 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda5 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda6 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda9 +android.graphics.ColorSpace$Rgb$Native android.graphics.ColorSpace$Rgb$NoImagePreloadHolder android.graphics.ColorSpace$Rgb$TransferParameters -android.graphics.ColorSpace$Rgb-IA android.graphics.ColorSpace$Rgb android.graphics.ColorSpace$Xyz +android.graphics.ColorSpace-IA android.graphics.ColorSpace android.graphics.Compatibility android.graphics.ComposePathEffect @@ -2229,11 +2235,11 @@ android.graphics.HardwareRenderer$DestroyContextRunnable android.graphics.HardwareRenderer$FrameCommitCallback android.graphics.HardwareRenderer$FrameCompleteCallback android.graphics.HardwareRenderer$FrameDrawingCallback -android.graphics.HardwareRenderer$FrameRenderRequest-IA android.graphics.HardwareRenderer$FrameRenderRequest android.graphics.HardwareRenderer$PrepareSurfaceControlForWebviewCallback android.graphics.HardwareRenderer$ProcessInitializer$1 android.graphics.HardwareRenderer$ProcessInitializer +android.graphics.HardwareRenderer-IA android.graphics.HardwareRenderer android.graphics.HardwareRendererObserver$$ExternalSyntheticLambda0 android.graphics.HardwareRendererObserver$OnFrameMetricsAvailableListener @@ -2242,12 +2248,11 @@ android.graphics.ImageDecoder$AssetInputStreamSource android.graphics.ImageDecoder$ByteArraySource android.graphics.ImageDecoder$DecodeException android.graphics.ImageDecoder$ImageDecoderSourceTrace -android.graphics.ImageDecoder$ImageInfo-IA android.graphics.ImageDecoder$ImageInfo android.graphics.ImageDecoder$InputStreamSource android.graphics.ImageDecoder$OnHeaderDecodedListener -android.graphics.ImageDecoder$Source-IA android.graphics.ImageDecoder$Source +android.graphics.ImageDecoder-IA android.graphics.ImageDecoder android.graphics.ImageFormat android.graphics.Insets$1 @@ -2260,6 +2265,7 @@ android.graphics.LightingColorFilter android.graphics.LinearGradient android.graphics.MaskFilter android.graphics.Matrix$1 +android.graphics.Matrix$ExtraNatives android.graphics.Matrix$NoImagePreloadHolder android.graphics.Matrix$ScaleToFit android.graphics.Matrix @@ -2283,6 +2289,7 @@ android.graphics.Paint android.graphics.PaintFlagsDrawFilter android.graphics.Path$Direction android.graphics.Path$FillType +android.graphics.Path$NoImagePreloadHolder android.graphics.Path$Op android.graphics.Path android.graphics.PathDashPathEffect @@ -2363,7 +2370,6 @@ android.graphics.drawable.AnimatedStateListDrawable$AnimatedStateListState android.graphics.drawable.AnimatedStateListDrawable$AnimatedVectorDrawableTransition android.graphics.drawable.AnimatedStateListDrawable$AnimationDrawableTransition android.graphics.drawable.AnimatedStateListDrawable$FrameInterpolator -android.graphics.drawable.AnimatedStateListDrawable$Transition-IA android.graphics.drawable.AnimatedStateListDrawable$Transition android.graphics.drawable.AnimatedStateListDrawable-IA android.graphics.drawable.AnimatedStateListDrawable @@ -2397,9 +2403,9 @@ android.graphics.drawable.Drawable$Callback android.graphics.drawable.Drawable$ConstantState android.graphics.drawable.Drawable android.graphics.drawable.DrawableContainer$1 -android.graphics.drawable.DrawableContainer$BlockInvalidateCallback-IA android.graphics.drawable.DrawableContainer$BlockInvalidateCallback android.graphics.drawable.DrawableContainer$DrawableContainerState +android.graphics.drawable.DrawableContainer-IA android.graphics.drawable.DrawableContainer android.graphics.drawable.DrawableInflater android.graphics.drawable.DrawableWrapper$DrawableWrapperState @@ -2493,6 +2499,7 @@ android.graphics.drawable.shapes.RectShape android.graphics.drawable.shapes.RoundRectShape android.graphics.drawable.shapes.Shape android.graphics.fonts.Font$Builder +android.graphics.fonts.Font$NoImagePreloadHolder android.graphics.fonts.Font android.graphics.fonts.FontCustomizationParser$Result android.graphics.fonts.FontCustomizationParser @@ -2511,7 +2518,6 @@ android.graphics.text.LineBreakConfig$Builder android.graphics.text.LineBreakConfig android.graphics.text.LineBreaker$Builder android.graphics.text.LineBreaker$ParagraphConstraints -android.graphics.text.LineBreaker$Result-IA android.graphics.text.LineBreaker$Result android.graphics.text.LineBreaker-IA android.graphics.text.LineBreaker @@ -2645,7 +2651,6 @@ android.hardware.camera2.CameraCharacteristics$5 android.hardware.camera2.CameraCharacteristics$6 android.hardware.camera2.CameraCharacteristics$7 android.hardware.camera2.CameraCharacteristics$8 -android.hardware.camera2.CameraCharacteristics$9 android.hardware.camera2.CameraCharacteristics$Key android.hardware.camera2.CameraCharacteristics android.hardware.camera2.CameraDevice$StateCallback @@ -2665,18 +2670,17 @@ android.hardware.camera2.CameraMetadata android.hardware.camera2.CameraOfflineSession$CameraOfflineSessionCallback android.hardware.camera2.CaptureRequest$1 android.hardware.camera2.CaptureRequest$2 -android.hardware.camera2.CaptureRequest$3 android.hardware.camera2.CaptureRequest$Key android.hardware.camera2.CaptureRequest android.hardware.camera2.CaptureResult$1 android.hardware.camera2.CaptureResult$2 android.hardware.camera2.CaptureResult$3 -android.hardware.camera2.CaptureResult$4 android.hardware.camera2.CaptureResult$Key android.hardware.camera2.CaptureResult android.hardware.camera2.DngCreator android.hardware.camera2.TotalCaptureResult android.hardware.camera2.extension.ICaptureProcessorImpl +android.hardware.camera2.impl.CameraDeviceImpl$1 android.hardware.camera2.impl.CameraDeviceImpl$CameraHandlerExecutor android.hardware.camera2.impl.CameraDeviceImpl android.hardware.camera2.impl.CameraExtensionJpegProcessor @@ -2811,6 +2815,7 @@ android.hardware.contexthub.V1_0.MemRange android.hardware.contexthub.V1_0.NanoAppBinary android.hardware.contexthub.V1_0.PhysicalSensor android.hardware.contexthub.V1_1.Setting +android.hardware.devicestate.DeviceState$Configuration$1 android.hardware.devicestate.DeviceState$Configuration android.hardware.devicestate.DeviceState android.hardware.devicestate.DeviceStateInfo$1 @@ -2822,8 +2827,8 @@ android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1 android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2 android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper -android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateManagerCallback-IA android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateManagerCallback +android.hardware.devicestate.DeviceStateManagerGlobal-IA android.hardware.devicestate.DeviceStateManagerGlobal android.hardware.devicestate.IDeviceStateManager$Stub$Proxy android.hardware.devicestate.IDeviceStateManager$Stub @@ -2858,13 +2863,12 @@ android.hardware.display.DisplayManager$$ExternalSyntheticLambda0 android.hardware.display.DisplayManager$$ExternalSyntheticLambda1 android.hardware.display.DisplayManager$$ExternalSyntheticLambda2 android.hardware.display.DisplayManager$DisplayListener -android.hardware.display.DisplayManager$WeakDisplayCache-IA android.hardware.display.DisplayManager$WeakDisplayCache +android.hardware.display.DisplayManager-IA android.hardware.display.DisplayManager android.hardware.display.DisplayManagerGlobal$1 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate -android.hardware.display.DisplayManagerGlobal$DisplayManagerCallback-IA android.hardware.display.DisplayManagerGlobal android.hardware.display.DisplayManagerInternal$DisplayPowerCallbacks android.hardware.display.DisplayManagerInternal$DisplayPowerRequest @@ -2970,9 +2974,9 @@ android.hardware.input.InputDeviceIdentifier android.hardware.input.InputManager$InputDeviceListener android.hardware.input.InputManager android.hardware.input.InputManagerGlobal$InputDeviceListenerDelegate -android.hardware.input.InputManagerGlobal$InputDevicesChangedListener-IA android.hardware.input.InputManagerGlobal$InputDevicesChangedListener android.hardware.input.InputManagerGlobal$OnTabletModeChangedListenerDelegate +android.hardware.input.InputManagerGlobal-IA android.hardware.input.InputManagerGlobal android.hardware.input.InputSettings android.hardware.input.KeyboardLayout$1 @@ -3482,11 +3486,11 @@ android.icu.impl.ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$VariantSy android.icu.impl.ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo android.icu.impl.ICUCurrencyDisplayInfoProvider android.icu.impl.ICUCurrencyMetaInfo$Collector -android.icu.impl.ICUCurrencyMetaInfo$CurrencyCollector-IA android.icu.impl.ICUCurrencyMetaInfo$CurrencyCollector android.icu.impl.ICUCurrencyMetaInfo$InfoCollector android.icu.impl.ICUCurrencyMetaInfo$RegionCollector android.icu.impl.ICUCurrencyMetaInfo$UniqueList +android.icu.impl.ICUCurrencyMetaInfo-IA android.icu.impl.ICUCurrencyMetaInfo android.icu.impl.ICUData$1 android.icu.impl.ICUData$2 @@ -3514,10 +3518,10 @@ android.icu.impl.ICUResourceBundle$4 android.icu.impl.ICUResourceBundle$5 android.icu.impl.ICUResourceBundle$AvailEntry android.icu.impl.ICUResourceBundle$AvailableLocalesSink -android.icu.impl.ICUResourceBundle$Loader-IA android.icu.impl.ICUResourceBundle$Loader android.icu.impl.ICUResourceBundle$OpenType android.icu.impl.ICUResourceBundle$WholeBundle +android.icu.impl.ICUResourceBundle-IA android.icu.impl.ICUResourceBundle android.icu.impl.ICUResourceBundleImpl$ResourceArray android.icu.impl.ICUResourceBundleImpl$ResourceBinary @@ -3652,10 +3656,10 @@ android.icu.impl.TZDBTimeZoneNames$TZDBNames android.icu.impl.TZDBTimeZoneNames android.icu.impl.TextTrieMap$CharIterator android.icu.impl.TextTrieMap$LongestMatchHandler -android.icu.impl.TextTrieMap$Node-IA android.icu.impl.TextTrieMap$Node android.icu.impl.TextTrieMap$Output android.icu.impl.TextTrieMap$ResultHandler +android.icu.impl.TextTrieMap-IA android.icu.impl.TextTrieMap android.icu.impl.TimeZoneAdapter android.icu.impl.TimeZoneGenericNames$1 @@ -3675,9 +3679,9 @@ android.icu.impl.TimeZoneNamesImpl$NameSearchHandler android.icu.impl.TimeZoneNamesImpl$TZ2MZsCache android.icu.impl.TimeZoneNamesImpl$ZNames$NameTypeIndex android.icu.impl.TimeZoneNamesImpl$ZNames -android.icu.impl.TimeZoneNamesImpl$ZNamesLoader-IA android.icu.impl.TimeZoneNamesImpl$ZNamesLoader android.icu.impl.TimeZoneNamesImpl$ZoneStringsLoader +android.icu.impl.TimeZoneNamesImpl-IA android.icu.impl.TimeZoneNamesImpl android.icu.impl.Trie$DataManipulate android.icu.impl.Trie$DefaultGetFoldingOffset @@ -4018,10 +4022,10 @@ android.icu.impl.number.MutablePatternModifier$ImmutablePatternModifier android.icu.impl.number.MutablePatternModifier android.icu.impl.number.Padder$PadPosition android.icu.impl.number.Padder -android.icu.impl.number.PatternStringParser$ParsedPatternInfo-IA android.icu.impl.number.PatternStringParser$ParsedPatternInfo android.icu.impl.number.PatternStringParser$ParsedSubpatternInfo android.icu.impl.number.PatternStringParser$ParserState +android.icu.impl.number.PatternStringParser-IA android.icu.impl.number.PatternStringParser android.icu.impl.number.PatternStringUtils$1 android.icu.impl.number.PatternStringUtils$PatternSignType @@ -4333,7 +4337,6 @@ android.icu.text.DateFormat$Field android.icu.text.DateFormat$HourCycle android.icu.text.DateFormat android.icu.text.DateFormatSymbols$1 -android.icu.text.DateFormatSymbols$AospExtendedDateFormatSymbols-IA android.icu.text.DateFormatSymbols$AospExtendedDateFormatSymbols android.icu.text.DateFormatSymbols$CalendarDataSink$AliasType android.icu.text.DateFormatSymbols$CalendarDataSink @@ -4349,25 +4352,21 @@ android.icu.text.DateIntervalFormat android.icu.text.DateIntervalInfo$DateIntervalSink android.icu.text.DateIntervalInfo$PatternInfo android.icu.text.DateIntervalInfo -android.icu.text.DateTimePatternGenerator$AppendItemFormatsSink-IA android.icu.text.DateTimePatternGenerator$AppendItemFormatsSink -android.icu.text.DateTimePatternGenerator$AppendItemNamesSink-IA android.icu.text.DateTimePatternGenerator$AppendItemNamesSink android.icu.text.DateTimePatternGenerator$AvailableFormatsSink android.icu.text.DateTimePatternGenerator$DTPGflags -android.icu.text.DateTimePatternGenerator$DateTimeMatcher-IA android.icu.text.DateTimePatternGenerator$DateTimeMatcher android.icu.text.DateTimePatternGenerator$DayPeriodAllowedHoursSink android.icu.text.DateTimePatternGenerator$DisplayWidth -android.icu.text.DateTimePatternGenerator$DistanceInfo-IA android.icu.text.DateTimePatternGenerator$DistanceInfo android.icu.text.DateTimePatternGenerator$FormatParser android.icu.text.DateTimePatternGenerator$PatternInfo android.icu.text.DateTimePatternGenerator$PatternWithMatcher android.icu.text.DateTimePatternGenerator$PatternWithSkeletonFlag -android.icu.text.DateTimePatternGenerator$SkeletonFields-IA android.icu.text.DateTimePatternGenerator$SkeletonFields android.icu.text.DateTimePatternGenerator$VariableField +android.icu.text.DateTimePatternGenerator-IA android.icu.text.DateTimePatternGenerator android.icu.text.DecimalFormat$PropertySetter android.icu.text.DecimalFormat @@ -4378,8 +4377,8 @@ android.icu.text.DecimalFormatSymbols android.icu.text.DisplayContext$Type android.icu.text.DisplayContext android.icu.text.DurationFormat -android.icu.text.Edits$Iterator-IA android.icu.text.Edits$Iterator +android.icu.text.Edits-IA android.icu.text.Edits android.icu.text.EscapeTransliterator$1 android.icu.text.EscapeTransliterator$2 @@ -4517,10 +4516,10 @@ android.icu.text.PluralRules$OrConstraint android.icu.text.PluralRules$PluralType android.icu.text.PluralRules$RangeConstraint android.icu.text.PluralRules$Rule -android.icu.text.PluralRules$RuleList-IA android.icu.text.PluralRules$RuleList android.icu.text.PluralRules$SampleType android.icu.text.PluralRules$SimpleTokenizer +android.icu.text.PluralRules-IA android.icu.text.PluralRules android.icu.text.PluralRulesSerialProxy android.icu.text.Quantifier @@ -4566,12 +4565,12 @@ android.icu.text.ReplaceableString android.icu.text.RuleBasedBreakIterator$BreakCache android.icu.text.RuleBasedBreakIterator$DictionaryCache android.icu.text.RuleBasedBreakIterator -android.icu.text.RuleBasedCollator$CollationBuffer-IA android.icu.text.RuleBasedCollator$CollationBuffer android.icu.text.RuleBasedCollator$CollationKeyByteSink android.icu.text.RuleBasedCollator$FCDUTF16NFDIterator android.icu.text.RuleBasedCollator$NFDIterator android.icu.text.RuleBasedCollator$UTF16NFDIterator +android.icu.text.RuleBasedCollator-IA android.icu.text.RuleBasedCollator android.icu.text.RuleBasedNumberFormat android.icu.text.RuleBasedTransliterator$Data @@ -4725,11 +4724,11 @@ android.icu.util.BytesTrieBuilder$BytesAsCharSequence android.icu.util.BytesTrieBuilder android.icu.util.CECalendar android.icu.util.Calendar$1 -android.icu.util.Calendar$FormatConfiguration-IA android.icu.util.Calendar$FormatConfiguration android.icu.util.Calendar$PatternData android.icu.util.Calendar$WeekData android.icu.util.Calendar$WeekDataCache +android.icu.util.Calendar-IA android.icu.util.Calendar android.icu.util.CaseInsensitiveString android.icu.util.CharsTrie$Entry @@ -4744,19 +4743,16 @@ android.icu.util.CodePointMap$RangeOption android.icu.util.CodePointMap$StringIterator android.icu.util.CodePointMap$ValueFilter android.icu.util.CodePointMap -android.icu.util.CodePointTrie$Data-IA android.icu.util.CodePointTrie$Data16 android.icu.util.CodePointTrie$Data32 android.icu.util.CodePointTrie$Data8 android.icu.util.CodePointTrie$Data android.icu.util.CodePointTrie$Fast$FastStringIterator -android.icu.util.CodePointTrie$Fast-IA android.icu.util.CodePointTrie$Fast16 android.icu.util.CodePointTrie$Fast32 android.icu.util.CodePointTrie$Fast8 android.icu.util.CodePointTrie$Fast android.icu.util.CodePointTrie$Small$SmallStringIterator -android.icu.util.CodePointTrie$Small-IA android.icu.util.CodePointTrie$Small16 android.icu.util.CodePointTrie$Small32 android.icu.util.CodePointTrie$Small8 @@ -4838,8 +4834,8 @@ android.icu.util.MeasureUnit$MeasureUnitSink android.icu.util.MeasureUnit android.icu.util.MutableCodePointTrie$1 android.icu.util.MutableCodePointTrie$AllSameBlocks -android.icu.util.MutableCodePointTrie$MixedBlocks-IA android.icu.util.MutableCodePointTrie$MixedBlocks +android.icu.util.MutableCodePointTrie-IA android.icu.util.MutableCodePointTrie android.icu.util.NoUnit android.icu.util.Output @@ -4913,6 +4909,7 @@ android.inputmethodservice.InputMethodService$Insets android.inputmethodservice.InputMethodService$SettingsObserver android.inputmethodservice.InputMethodService android.inputmethodservice.SoftInputWindow +android.internal.framework.protobuf.nano.MessageNano android.internal.hidl.base.V1_0.DebugInfo android.internal.hidl.base.V1_0.IBase android.internal.hidl.manager.V1_0.IServiceManager @@ -4947,11 +4944,14 @@ android.location.IGpsGeofenceHardware$Stub android.location.IGpsGeofenceHardware android.location.Location$$ExternalSyntheticLambda0 android.location.Location$1 -android.location.Location$BearingDistanceCache-IA android.location.Location$BearingDistanceCache +android.location.Location-IA android.location.Location android.location.LocationTime$1 android.location.LocationTime +android.location.flags.FeatureFlags +android.location.flags.FeatureFlagsImpl +android.location.flags.Flags android.media.AudioAttributes$1 android.media.AudioAttributes$Builder android.media.AudioAttributes-IA @@ -4985,22 +4985,20 @@ android.media.AudioManager$AudioPlaybackCallbackInfo android.media.AudioManager$AudioRecordingCallback android.media.AudioManager$AudioRecordingCallbackInfo android.media.AudioManager$BlockingFocusResultReceiver -android.media.AudioManager$DevRoleListeners-IA android.media.AudioManager$DevRoleListeners android.media.AudioManager$FocusRequestInfo android.media.AudioManager$NativeEventHandlerDelegate$1 android.media.AudioManager$NativeEventHandlerDelegate -android.media.AudioManager$OnAmPortUpdateListener-IA android.media.AudioManager$OnAmPortUpdateListener android.media.AudioManager$OnAudioFocusChangeListener android.media.AudioManager$OnAudioPortUpdateListener android.media.AudioManager$OnModeChangedListener android.media.AudioManager$PlaybackConfigChangeCallbackData android.media.AudioManager$RecordConfigChangeCallbackData -android.media.AudioManager$SafeWaitObject-IA android.media.AudioManager$SafeWaitObject android.media.AudioManager$ServiceEventHandlerDelegate$1 android.media.AudioManager$ServiceEventHandlerDelegate +android.media.AudioManager-IA android.media.AudioManager android.media.AudioManagerInternal$RingerModeDelegate android.media.AudioManagerInternal @@ -5156,10 +5154,9 @@ android.media.ImageWriter android.media.JetPlayer android.media.MediaCodec$$ExternalSyntheticLambda6 android.media.MediaCodec$$ExternalSyntheticLambda7 +android.media.MediaCodec$$ExternalSyntheticLambda8 android.media.MediaCodec$BufferInfo -android.media.MediaCodec$BufferMap$CodecBuffer-IA android.media.MediaCodec$BufferMap$CodecBuffer -android.media.MediaCodec$BufferMap-IA android.media.MediaCodec$BufferMap android.media.MediaCodec$Callback android.media.MediaCodec$CodecException @@ -5175,6 +5172,7 @@ android.media.MediaCodec$OutputFrame android.media.MediaCodec$ParameterDescriptor android.media.MediaCodec$PersistentSurface android.media.MediaCodec$QueueRequest +android.media.MediaCodec-IA android.media.MediaCodecInfo$AudioCapabilities android.media.MediaCodecInfo$CodecProfileLevel android.media.MediaCodecInfo$EncoderCapabilities @@ -5229,7 +5227,6 @@ android.media.MediaPlayer$2 android.media.MediaPlayer$3 android.media.MediaPlayer$6 android.media.MediaPlayer$7 -android.media.MediaPlayer$DrmInfo-IA android.media.MediaPlayer$DrmInfo android.media.MediaPlayer$EventHandler$$ExternalSyntheticLambda0 android.media.MediaPlayer$EventHandler$1 @@ -5255,6 +5252,7 @@ android.media.MediaPlayer$TimeProvider$EventHandler android.media.MediaPlayer$TimeProvider android.media.MediaPlayer$TrackInfo$1 android.media.MediaPlayer$TrackInfo +android.media.MediaPlayer-IA android.media.MediaPlayer android.media.MediaRecorder android.media.MediaRoute2Info$1 @@ -5420,13 +5418,14 @@ android.media.browse.MediaBrowser$ConnectionCallback android.media.browse.MediaBrowser$MediaItem$1 android.media.browse.MediaBrowser$MediaItem android.media.browse.MediaBrowser$MediaServiceConnection$1 -android.media.browse.MediaBrowser$MediaServiceConnection-IA android.media.browse.MediaBrowser$MediaServiceConnection android.media.browse.MediaBrowser$ServiceCallbacks android.media.browse.MediaBrowser$Subscription android.media.browse.MediaBrowser$SubscriptionCallback +android.media.browse.MediaBrowser-IA android.media.browse.MediaBrowser android.media.browse.MediaBrowserUtils +android.media.codec.Flags android.media.metrics.Event android.media.metrics.IMediaMetricsManager$Stub$Proxy android.media.metrics.IMediaMetricsManager$Stub @@ -5507,6 +5506,7 @@ android.media.session.ISessionCallback android.media.session.ISessionController$Stub$Proxy android.media.session.ISessionController$Stub android.media.session.ISessionController +android.media.session.ISessionControllerCallback$Stub$Proxy android.media.session.ISessionControllerCallback$Stub android.media.session.ISessionControllerCallback android.media.session.ISessionManager$Stub$Proxy @@ -5517,8 +5517,8 @@ android.media.session.MediaController$CallbackStub android.media.session.MediaController$MessageHandler android.media.session.MediaController$PlaybackInfo$1 android.media.session.MediaController$PlaybackInfo -android.media.session.MediaController$TransportControls-IA android.media.session.MediaController$TransportControls +android.media.session.MediaController-IA android.media.session.MediaController android.media.session.MediaSession$Callback android.media.session.MediaSession$CallbackMessageHandler @@ -5531,29 +5531,26 @@ android.media.session.MediaSession android.media.session.MediaSessionLegacyHelper android.media.session.MediaSessionManager$OnActiveSessionsChangedListener android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListener -android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListenerStub-IA android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListenerStub android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListener -android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub-IA android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub android.media.session.MediaSessionManager$OnMediaKeyListener android.media.session.MediaSessionManager$OnMediaKeyListenerImpl android.media.session.MediaSessionManager$OnSession2TokensChangedListener android.media.session.MediaSessionManager$OnVolumeKeyLongPressListener android.media.session.MediaSessionManager$OnVolumeKeyLongPressListenerImpl -android.media.session.MediaSessionManager$RemoteSessionCallbackStub-IA android.media.session.MediaSessionManager$RemoteSessionCallbackStub android.media.session.MediaSessionManager$RemoteUserInfo android.media.session.MediaSessionManager$Session2TokensChangedWrapper android.media.session.MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0 android.media.session.MediaSessionManager$SessionsChangedWrapper$1 android.media.session.MediaSessionManager$SessionsChangedWrapper +android.media.session.MediaSessionManager-IA android.media.session.MediaSessionManager android.media.session.ParcelableListBinder android.media.session.PlaybackState$1 android.media.session.PlaybackState$Builder android.media.session.PlaybackState$CustomAction$1 -android.media.session.PlaybackState$CustomAction-IA android.media.session.PlaybackState$CustomAction android.media.session.PlaybackState-IA android.media.session.PlaybackState @@ -5620,7 +5617,6 @@ android.net.INetworkPolicyListener android.net.INetworkPolicyManager$Stub$Proxy android.net.INetworkPolicyManager$Stub android.net.INetworkPolicyManager -android.net.INetworkRecommendationProvider$Stub$Proxy android.net.INetworkRecommendationProvider$Stub android.net.INetworkRecommendationProvider android.net.INetworkScoreCache$Stub$Proxy @@ -5683,18 +5679,14 @@ android.net.TelephonyNetworkSpecifier$1 android.net.TelephonyNetworkSpecifier$Builder android.net.TelephonyNetworkSpecifier android.net.Uri$1 -android.net.Uri$AbstractHierarchicalUri-IA android.net.Uri$AbstractHierarchicalUri android.net.Uri$AbstractPart android.net.Uri$Builder -android.net.Uri$HierarchicalUri-IA android.net.Uri$NotCachedHolder -android.net.Uri$OpaqueUri-IA android.net.Uri$Part$EmptyPart android.net.Uri$Part android.net.Uri$PathPart android.net.Uri$PathSegmentsBuilder -android.net.Uri$StringUri-IA android.net.Uri-IA android.net.Uri android.net.UriCodec @@ -5823,16 +5815,99 @@ android.net.wifi.nl80211.WifiNl80211Manager$ScanEventHandler android.net.wifi.nl80211.WifiNl80211Manager$SignalPollResult android.net.wifi.nl80211.WifiNl80211Manager android.net.wifi.sharedconnectivity.app.SharedConnectivityManager +android.nfc.IAppCallback$Stub +android.nfc.IAppCallback +android.nfc.INfcAdapter$Stub +android.nfc.INfcAdapter +android.nfc.INfcAdapterExtras +android.nfc.INfcCardEmulation +android.nfc.INfcControllerAlwaysOnListener$Stub +android.nfc.INfcControllerAlwaysOnListener +android.nfc.INfcDta +android.nfc.INfcFCardEmulation +android.nfc.INfcTag +android.nfc.INfcUnlockHandler$Stub +android.nfc.INfcUnlockHandler +android.nfc.INfcVendorNciCallback$Stub +android.nfc.INfcVendorNciCallback +android.nfc.INfcWlcStateListener$Stub +android.nfc.INfcWlcStateListener +android.nfc.ITagRemovedCallback$Stub +android.nfc.ITagRemovedCallback +android.nfc.NdefMessage +android.nfc.NfcActivityManager +android.nfc.NfcAdapter$$ExternalSyntheticLambda0 +android.nfc.NfcAdapter$$ExternalSyntheticLambda10 +android.nfc.NfcAdapter$$ExternalSyntheticLambda11 +android.nfc.NfcAdapter$$ExternalSyntheticLambda12 +android.nfc.NfcAdapter$$ExternalSyntheticLambda13 +android.nfc.NfcAdapter$$ExternalSyntheticLambda14 +android.nfc.NfcAdapter$$ExternalSyntheticLambda15 +android.nfc.NfcAdapter$$ExternalSyntheticLambda16 +android.nfc.NfcAdapter$$ExternalSyntheticLambda17 +android.nfc.NfcAdapter$$ExternalSyntheticLambda18 +android.nfc.NfcAdapter$$ExternalSyntheticLambda19 +android.nfc.NfcAdapter$$ExternalSyntheticLambda1 +android.nfc.NfcAdapter$$ExternalSyntheticLambda20 +android.nfc.NfcAdapter$$ExternalSyntheticLambda21 +android.nfc.NfcAdapter$$ExternalSyntheticLambda22 +android.nfc.NfcAdapter$$ExternalSyntheticLambda23 +android.nfc.NfcAdapter$$ExternalSyntheticLambda24 +android.nfc.NfcAdapter$$ExternalSyntheticLambda25 +android.nfc.NfcAdapter$$ExternalSyntheticLambda26 +android.nfc.NfcAdapter$$ExternalSyntheticLambda27 +android.nfc.NfcAdapter$$ExternalSyntheticLambda28 +android.nfc.NfcAdapter$$ExternalSyntheticLambda29 +android.nfc.NfcAdapter$$ExternalSyntheticLambda2 +android.nfc.NfcAdapter$$ExternalSyntheticLambda30 +android.nfc.NfcAdapter$$ExternalSyntheticLambda31 +android.nfc.NfcAdapter$$ExternalSyntheticLambda32 +android.nfc.NfcAdapter$$ExternalSyntheticLambda33 +android.nfc.NfcAdapter$$ExternalSyntheticLambda34 +android.nfc.NfcAdapter$$ExternalSyntheticLambda35 +android.nfc.NfcAdapter$$ExternalSyntheticLambda36 +android.nfc.NfcAdapter$$ExternalSyntheticLambda37 +android.nfc.NfcAdapter$$ExternalSyntheticLambda38 +android.nfc.NfcAdapter$$ExternalSyntheticLambda39 +android.nfc.NfcAdapter$$ExternalSyntheticLambda3 +android.nfc.NfcAdapter$$ExternalSyntheticLambda4 +android.nfc.NfcAdapter$$ExternalSyntheticLambda5 +android.nfc.NfcAdapter$$ExternalSyntheticLambda6 +android.nfc.NfcAdapter$$ExternalSyntheticLambda7 +android.nfc.NfcAdapter$$ExternalSyntheticLambda8 +android.nfc.NfcAdapter$$ExternalSyntheticLambda9 +android.nfc.NfcAdapter$1 +android.nfc.NfcAdapter$2 +android.nfc.NfcAdapter$ControllerAlwaysOnListener +android.nfc.NfcAdapter$CreateBeamUrisCallback +android.nfc.NfcAdapter$CreateNdefMessageCallback +android.nfc.NfcAdapter$NfcUnlockHandler +android.nfc.NfcAdapter$NfcVendorNciCallback +android.nfc.NfcAdapter$OnNdefPushCompleteCallback +android.nfc.NfcAdapter$OnTagRemovedListener +android.nfc.NfcAdapter$ReaderCallback +android.nfc.NfcAdapter$ServiceCall +android.nfc.NfcAdapter$ServiceCallReturn +android.nfc.NfcAdapter$WlcStateListener android.nfc.NfcAdapter +android.nfc.NfcAntennaInfo +android.nfc.NfcControllerAlwaysOnListener android.nfc.NfcFrameworkInitializer$$ExternalSyntheticLambda0 android.nfc.NfcFrameworkInitializer android.nfc.NfcManager +android.nfc.NfcOemExtension android.nfc.NfcServiceManager$ServiceRegisterer android.nfc.NfcServiceManager +android.nfc.NfcVendorNciCallbackListener +android.nfc.NfcWlcStateListener +android.nfc.Tag +android.nfc.TechListParcel +android.nfc.WlcListenerDeviceInfo android.nfc.cardemulation.AidGroup$1 android.nfc.cardemulation.AidGroup android.nfc.cardemulation.ApduServiceInfo$1 android.nfc.cardemulation.ApduServiceInfo +android.nfc.cardemulation.PollingFrame android.opengl.EGL14 android.opengl.EGL15 android.opengl.EGLConfig @@ -5883,8 +5958,8 @@ android.os.AsyncTask$InternalHandler android.os.AsyncTask$SerialExecutor$1 android.os.AsyncTask$SerialExecutor android.os.AsyncTask$Status -android.os.AsyncTask$WorkerRunnable-IA android.os.AsyncTask$WorkerRunnable +android.os.AsyncTask-IA android.os.AsyncTask android.os.BadParcelableException android.os.BadTypeParcelableException @@ -5952,8 +6027,8 @@ android.os.Build android.os.Bundle$1 android.os.Bundle android.os.CancellationSignal$OnCancelListener -android.os.CancellationSignal$Transport-IA android.os.CancellationSignal$Transport +android.os.CancellationSignal-IA android.os.CancellationSignal android.os.CarrierAssociatedAppEntry$1 android.os.CarrierAssociatedAppEntry @@ -5979,8 +6054,8 @@ android.os.DdmSyncState android.os.DeadObjectException android.os.DeadSystemException android.os.Debug$MemoryInfo$1 -android.os.Debug$MemoryInfo-IA android.os.Debug$MemoryInfo +android.os.Debug-IA android.os.Debug android.os.DeviceIdleManager android.os.DropBoxManager$Entry$1 @@ -6014,8 +6089,8 @@ android.os.GraphicsEnvironment$1 android.os.GraphicsEnvironment android.os.Handler$BlockingRunnable android.os.Handler$Callback -android.os.Handler$MessengerImpl-IA android.os.Handler$MessengerImpl +android.os.Handler-IA android.os.Handler android.os.HandlerExecutor android.os.HandlerThread @@ -6033,6 +6108,7 @@ android.os.IBatteryPropertiesRegistrar$Stub$Proxy android.os.IBatteryPropertiesRegistrar$Stub android.os.IBatteryPropertiesRegistrar android.os.IBinder$DeathRecipient +android.os.IBinder$FrozenStateChangeCallback android.os.IBinder android.os.IBinderCallback android.os.ICancellationSignal$Stub$Proxy @@ -6161,6 +6237,7 @@ android.os.IWakeLockCallback android.os.IncidentManager$IncidentReport$1 android.os.IncidentManager$IncidentReport android.os.IncidentManager +android.os.IpcDataCache$1 android.os.IpcDataCache$Config android.os.IpcDataCache$QueryHandler android.os.IpcDataCache$RemoteCall @@ -6255,7 +6332,6 @@ android.os.RemoteCallback$2 android.os.RemoteCallback$3 android.os.RemoteCallback$OnResultListener android.os.RemoteCallback -android.os.RemoteCallbackList$Callback android.os.RemoteCallbackList android.os.RemoteException android.os.ResultReceiver$1 @@ -6264,17 +6340,16 @@ android.os.ResultReceiver$MyRunnable android.os.ResultReceiver android.os.SELinux android.os.SecurityStateManager +android.os.Service$1 +android.os.Service android.os.ServiceManager$ServiceNotFoundException android.os.ServiceManager android.os.ServiceManagerNative android.os.ServiceManagerProxy android.os.ServiceSpecificException android.os.SharedMemory$1 -android.os.SharedMemory$Closer-IA android.os.SharedMemory$Closer -android.os.SharedMemory$MemoryRegistration-IA android.os.SharedMemory$MemoryRegistration -android.os.SharedMemory$Unmapper-IA android.os.SharedMemory$Unmapper android.os.SharedMemory-IA android.os.SharedMemory @@ -6300,33 +6375,29 @@ android.os.StrictMode$9 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1 android.os.StrictMode$AndroidBlockGuardPolicy -android.os.StrictMode$AndroidCloseGuardReporter-IA android.os.StrictMode$AndroidCloseGuardReporter android.os.StrictMode$InstanceTracker android.os.StrictMode$OnThreadViolationListener android.os.StrictMode$OnVmViolationListener android.os.StrictMode$Span android.os.StrictMode$ThreadPolicy$Builder -android.os.StrictMode$ThreadPolicy-IA android.os.StrictMode$ThreadPolicy -android.os.StrictMode$ThreadSpanState-IA android.os.StrictMode$ThreadSpanState -android.os.StrictMode$UnsafeIntentStrictModeCallback-IA android.os.StrictMode$UnsafeIntentStrictModeCallback android.os.StrictMode$ViolationInfo$1 android.os.StrictMode$ViolationInfo android.os.StrictMode$ViolationLogger android.os.StrictMode$VmPolicy$Builder -android.os.StrictMode$VmPolicy-IA android.os.StrictMode$VmPolicy +android.os.StrictMode-IA android.os.StrictMode android.os.SynchronousResultReceiver$Result android.os.SynchronousResultReceiver android.os.SystemClock$2 android.os.SystemClock android.os.SystemConfigManager -android.os.SystemProperties$Handle-IA android.os.SystemProperties$Handle +android.os.SystemProperties-IA android.os.SystemProperties android.os.SystemService$1 android.os.SystemService$State @@ -6362,9 +6433,6 @@ android.os.UpdateLock android.os.UserHandle$1 android.os.UserHandle android.os.UserManager$1 -android.os.UserManager$2 -android.os.UserManager$3 -android.os.UserManager$4 android.os.UserManager$EnforcingUser$1 android.os.UserManager$EnforcingUser android.os.UserManager$UserOperationException @@ -6442,7 +6510,6 @@ android.os.storage.IStorageShutdownObserver android.os.storage.OnObbStateChangeListener android.os.storage.StorageEventListener android.os.storage.StorageManager$1 -android.os.storage.StorageManager$ObbActionListener-IA android.os.storage.StorageManager$ObbActionListener android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda2 android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda3 @@ -6451,6 +6518,7 @@ android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheti android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda6 android.os.storage.StorageManager$StorageEventListenerDelegate android.os.storage.StorageManager$StorageVolumeCallback +android.os.storage.StorageManager-IA android.os.storage.StorageManager android.os.storage.StorageManagerInternal android.os.storage.StorageVolume$1 @@ -6519,8 +6587,8 @@ android.permission.PermissionManager$2 android.permission.PermissionManager$OnPermissionsChangeListenerDelegate android.permission.PermissionManager$PackageNamePermissionQuery android.permission.PermissionManager$PermissionQuery -android.permission.PermissionManager$SplitPermissionInfo-IA android.permission.PermissionManager$SplitPermissionInfo +android.permission.PermissionManager-IA android.permission.PermissionManagerInternal android.preference.DialogPreference android.preference.GenericInflater$Parent @@ -6836,12 +6904,11 @@ android.security.keystore.recovery.WrappedApplicationKey$1 android.security.keystore.recovery.WrappedApplicationKey$Builder android.security.keystore.recovery.WrappedApplicationKey android.security.keystore.recovery.X509CertificateParsingUtils -android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream -android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$GCM +android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi android.security.keystore2.AndroidKeyStoreBCWorkaroundProvider android.security.keystore2.AndroidKeyStoreCipherSpiBase @@ -7053,18 +7120,16 @@ android.service.media.MediaBrowserService$BrowserRoot android.service.media.MediaBrowserService$ConnectionRecord android.service.media.MediaBrowserService$Result android.service.media.MediaBrowserService$ServiceBinder$$ExternalSyntheticLambda1 -android.service.media.MediaBrowserService$ServiceBinder-IA android.service.media.MediaBrowserService$ServiceBinder -android.service.media.MediaBrowserService$ServiceState-IA android.service.media.MediaBrowserService$ServiceState +android.service.media.MediaBrowserService-IA android.service.media.MediaBrowserService android.service.notification.Adjustment$1 android.service.notification.Adjustment android.service.notification.Condition$1 android.service.notification.Condition -android.service.notification.ConditionProviderService$H-IA android.service.notification.ConditionProviderService$H -android.service.notification.ConditionProviderService$Provider-IA +android.service.notification.ConditionProviderService-IA android.service.notification.ConditionProviderService android.service.notification.IConditionProvider$Stub android.service.notification.IConditionProvider @@ -7081,8 +7146,8 @@ android.service.notification.NotificationListenerFilter android.service.notification.NotificationListenerService$MyHandler android.service.notification.NotificationListenerService$Ranking android.service.notification.NotificationListenerService$RankingMap$1 -android.service.notification.NotificationListenerService$RankingMap-IA android.service.notification.NotificationListenerService$RankingMap +android.service.notification.NotificationListenerService-IA android.service.notification.NotificationListenerService android.service.notification.NotificationRankingUpdate$1 android.service.notification.NotificationRankingUpdate @@ -7212,14 +7277,11 @@ android.speech.tts.TextToSpeech$$ExternalSyntheticLambda17 android.speech.tts.TextToSpeech$$ExternalSyntheticLambda1 android.speech.tts.TextToSpeech$Action android.speech.tts.TextToSpeech$Connection$1 -android.speech.tts.TextToSpeech$Connection$SetupConnectionAsyncTask-IA -android.speech.tts.TextToSpeech$Connection-IA -android.speech.tts.TextToSpeech$DirectConnection-IA android.speech.tts.TextToSpeech$DirectConnection android.speech.tts.TextToSpeech$EngineInfo android.speech.tts.TextToSpeech$OnInitListener -android.speech.tts.TextToSpeech$SystemConnection-IA android.speech.tts.TextToSpeech$SystemConnection +android.speech.tts.TextToSpeech-IA android.speech.tts.TtsEngines$EngineInfoComparator android.speech.tts.TtsEngines android.speech.tts.UtteranceProgressListener @@ -7232,7 +7294,6 @@ android.sysprop.CryptoProperties android.sysprop.DeviceProperties android.sysprop.DisplayProperties android.sysprop.HdmiProperties -android.sysprop.InitProperties android.sysprop.InputProperties android.sysprop.MediaProperties android.sysprop.PowerProperties @@ -7252,6 +7313,7 @@ android.sysprop.TelephonyProperties$$ExternalSyntheticLambda7 android.sysprop.TelephonyProperties$$ExternalSyntheticLambda8 android.sysprop.TelephonyProperties$$ExternalSyntheticLambda9 android.sysprop.TelephonyProperties +android.sysprop.ViewProperties android.sysprop.VndkProperties android.system.keystore2.Authorization$1 android.system.keystore2.Authorization @@ -7491,9 +7553,9 @@ android.telephony.JapanesePhoneNumberFormatter android.telephony.LinkCapacityEstimate$1 android.telephony.LinkCapacityEstimate android.telephony.LocationAccessPolicy$LocationPermissionQuery$Builder -android.telephony.LocationAccessPolicy$LocationPermissionQuery-IA android.telephony.LocationAccessPolicy$LocationPermissionQuery android.telephony.LocationAccessPolicy$LocationPermissionResult +android.telephony.LocationAccessPolicy-IA android.telephony.LocationAccessPolicy android.telephony.LteVopsSupportInfo$1 android.telephony.LteVopsSupportInfo-IA @@ -7727,6 +7789,7 @@ android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda0 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda1 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda2 android.telephony.TelephonyRegistryManager$1$$ExternalSyntheticLambda0 +android.telephony.TelephonyRegistryManager$1 android.telephony.TelephonyRegistryManager$2 android.telephony.TelephonyRegistryManager$3 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0 @@ -8051,33 +8114,23 @@ android.text.Html$TagHandler android.text.Html android.text.HtmlToSpannedConverter$Alignment android.text.HtmlToSpannedConverter$Background -android.text.HtmlToSpannedConverter$Big-IA android.text.HtmlToSpannedConverter$Big -android.text.HtmlToSpannedConverter$Blockquote-IA android.text.HtmlToSpannedConverter$Blockquote -android.text.HtmlToSpannedConverter$Bold-IA android.text.HtmlToSpannedConverter$Bold -android.text.HtmlToSpannedConverter$Bullet-IA android.text.HtmlToSpannedConverter$Bullet android.text.HtmlToSpannedConverter$Font android.text.HtmlToSpannedConverter$Foreground android.text.HtmlToSpannedConverter$Heading android.text.HtmlToSpannedConverter$Href -android.text.HtmlToSpannedConverter$Italic-IA android.text.HtmlToSpannedConverter$Italic -android.text.HtmlToSpannedConverter$Monospace-IA android.text.HtmlToSpannedConverter$Monospace android.text.HtmlToSpannedConverter$Newline -android.text.HtmlToSpannedConverter$Small-IA android.text.HtmlToSpannedConverter$Small -android.text.HtmlToSpannedConverter$Strikethrough-IA android.text.HtmlToSpannedConverter$Strikethrough -android.text.HtmlToSpannedConverter$Sub-IA android.text.HtmlToSpannedConverter$Sub -android.text.HtmlToSpannedConverter$Super-IA android.text.HtmlToSpannedConverter$Super -android.text.HtmlToSpannedConverter$Underline-IA android.text.HtmlToSpannedConverter$Underline +android.text.HtmlToSpannedConverter-IA android.text.HtmlToSpannedConverter android.text.Hyphenator android.text.InputFilter$LengthFilter @@ -8113,6 +8166,7 @@ android.text.Selection$MemoryTextWatcher android.text.Selection$PositionIterator android.text.Selection$START android.text.Selection +android.text.SpanColors android.text.SpanSet android.text.SpanWatcher android.text.Spannable$Factory @@ -8134,9 +8188,9 @@ android.text.TextDirectionHeuristics$TextDirectionHeuristicImpl android.text.TextDirectionHeuristics$TextDirectionHeuristicInternal android.text.TextDirectionHeuristics$TextDirectionHeuristicLocale android.text.TextDirectionHeuristics -android.text.TextLine$DecorationInfo-IA android.text.TextLine$DecorationInfo android.text.TextLine$LineInfo +android.text.TextLine-IA android.text.TextLine android.text.TextPaint android.text.TextShaper$GlyphsConsumer @@ -8275,6 +8329,7 @@ android.timezone.TelephonyLookup android.timezone.TelephonyNetwork android.timezone.TelephonyNetworkFinder android.timezone.TimeZoneFinder +android.tracing.Flags android.tracing.perfetto.CreateIncrementalStateArgs android.tracing.perfetto.CreateTlsStateArgs android.tracing.perfetto.DataSource @@ -8345,8 +8400,8 @@ android.transition.TransitionValues android.transition.TransitionValuesMaps android.transition.Visibility$1 android.transition.Visibility$DisappearListener -android.transition.Visibility$VisibilityInfo-IA android.transition.Visibility$VisibilityInfo +android.transition.Visibility-IA android.transition.Visibility android.transition.VisibilityPropagation android.transparency.BinaryTransparencyManager @@ -8396,6 +8451,7 @@ android.util.FeatureFlagUtils android.util.FloatProperty android.util.Half android.util.IconDrawableFactory +android.util.IndentingPrintWriter android.util.IntArray android.util.IntProperty android.util.JsonReader$1 @@ -8459,6 +8515,7 @@ android.util.RecurrenceRule$NonrecurringIterator android.util.RecurrenceRule android.util.ReflectiveProperty android.util.RotationUtils +android.util.SequenceUtils android.util.Singleton android.util.Size android.util.SizeF$1 @@ -8559,9 +8616,7 @@ android.view.Choreographer$1 android.view.Choreographer$2 android.view.Choreographer$3 android.view.Choreographer$4 -android.view.Choreographer$CallbackQueue-IA android.view.Choreographer$CallbackQueue -android.view.Choreographer$CallbackRecord-IA android.view.Choreographer$CallbackRecord android.view.Choreographer$FrameCallback android.view.Choreographer$FrameData @@ -8580,21 +8635,19 @@ android.view.CrossWindowBlurListeners android.view.CutoutSpecification$Parser android.view.CutoutSpecification android.view.Display$HdrCapabilities$1 -android.view.Display$HdrCapabilities-IA android.view.Display$HdrCapabilities android.view.Display$HdrSdrRatioListenerWrapper android.view.Display$Mode$1 -android.view.Display$Mode-IA android.view.Display$Mode +android.view.Display-IA android.view.Display android.view.DisplayAddress$Network$1 android.view.DisplayAddress$Network android.view.DisplayAddress$Physical$1 -android.view.DisplayAddress$Physical-IA android.view.DisplayAddress$Physical +android.view.DisplayAddress-IA android.view.DisplayAddress android.view.DisplayAdjustments -android.view.DisplayCutout$Bounds-IA android.view.DisplayCutout$Bounds android.view.DisplayCutout$CutoutPathParserInfo android.view.DisplayCutout$ParcelableWrapper$1 @@ -8639,8 +8692,8 @@ android.view.HandlerActionQueue$HandlerAction android.view.HandlerActionQueue android.view.HandwritingInitiator$HandwritableViewInfo android.view.HandwritingInitiator$HandwritingAreaTracker -android.view.HandwritingInitiator$State-IA android.view.HandwritingInitiator$State +android.view.HandwritingInitiator-IA android.view.HandwritingInitiator android.view.HapticScrollFeedbackProvider android.view.IAppTransitionAnimationSpecsFuture$Stub$Proxy @@ -8675,12 +8728,6 @@ android.view.IOnKeyguardExitResult$Stub android.view.IOnKeyguardExitResult android.view.IPinnedTaskListener$Stub android.view.IPinnedTaskListener -android.view.IRecentsAnimationController$Stub$Proxy -android.view.IRecentsAnimationController$Stub -android.view.IRecentsAnimationController -android.view.IRecentsAnimationRunner$Stub$Proxy -android.view.IRecentsAnimationRunner$Stub -android.view.IRecentsAnimationRunner android.view.IRemoteAnimationFinishedCallback$Stub$Proxy android.view.IRemoteAnimationFinishedCallback$Stub android.view.IRemoteAnimationFinishedCallback @@ -8732,7 +8779,6 @@ android.view.InputApplicationHandle android.view.InputChannel$1 android.view.InputChannel android.view.InputDevice$1 -android.view.InputDevice$MotionRange-IA android.view.InputDevice$MotionRange android.view.InputDevice$ViewBehavior android.view.InputDevice-IA @@ -8754,10 +8800,14 @@ android.view.InputWindowHandle android.view.InsetsAnimationControlCallbacks android.view.InsetsAnimationControlImpl$$ExternalSyntheticLambda0 android.view.InsetsAnimationControlImpl +android.view.InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0 +android.view.InsetsAnimationControlRunner$SurfaceParamsApplier android.view.InsetsAnimationControlRunner +android.view.InsetsAnimationSpec android.view.InsetsAnimationThread android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda0 android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1 +android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda2 android.view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0 android.view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1 android.view.InsetsAnimationThreadControlRunner$1 @@ -8765,7 +8815,6 @@ android.view.InsetsAnimationThreadControlRunner android.view.InsetsController$$ExternalSyntheticLambda0 android.view.InsetsController$$ExternalSyntheticLambda10 android.view.InsetsController$$ExternalSyntheticLambda11 -android.view.InsetsController$$ExternalSyntheticLambda12 android.view.InsetsController$$ExternalSyntheticLambda1 android.view.InsetsController$$ExternalSyntheticLambda2 android.view.InsetsController$$ExternalSyntheticLambda3 @@ -8880,10 +8929,10 @@ android.view.SearchEvent android.view.SoundEffectConstants android.view.SubMenu android.view.Surface$1 -android.view.Surface$CompatibleCanvas-IA android.view.Surface$CompatibleCanvas android.view.Surface$HwuiContext android.view.Surface$OutOfResourcesException +android.view.Surface-IA android.view.Surface android.view.SurfaceControl$1 android.view.SurfaceControl$Builder @@ -8900,6 +8949,7 @@ android.view.SurfaceControl$RefreshRateRange$1 android.view.SurfaceControl$RefreshRateRange android.view.SurfaceControl$RefreshRateRanges android.view.SurfaceControl$StaticDisplayInfo +android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda1 android.view.SurfaceControl$Transaction$1 android.view.SurfaceControl$Transaction$2 android.view.SurfaceControl$Transaction @@ -8910,9 +8960,7 @@ android.view.SurfaceControl$TrustedPresentationThresholds android.view.SurfaceControl-IA android.view.SurfaceControl android.view.SurfaceControlHdrLayerInfoListener -android.view.SurfaceControlRegistry$DefaultReporter-IA android.view.SurfaceControlRegistry$DefaultReporter -android.view.SurfaceControlRegistry$NoOpRegistry-IA android.view.SurfaceControlRegistry$NoOpRegistry android.view.SurfaceControlRegistry$Reporter android.view.SurfaceControlRegistry-IA @@ -8930,14 +8978,14 @@ android.view.SurfaceView$$ExternalSyntheticLambda3 android.view.SurfaceView$$ExternalSyntheticLambda4 android.view.SurfaceView$$ExternalSyntheticLambda5 android.view.SurfaceView$1 -android.view.SurfaceView$2 +android.view.SurfaceView$SurfaceControlViewHostParent android.view.SurfaceView$SurfaceViewPositionUpdateListener -android.view.SurfaceView$SyncBufferTransactionCallback-IA android.view.SurfaceView$SyncBufferTransactionCallback +android.view.SurfaceView-IA android.view.SurfaceView android.view.SyncRtSurfaceTransactionApplier$SurfaceParams$Builder -android.view.SyncRtSurfaceTransactionApplier$SurfaceParams-IA android.view.SyncRtSurfaceTransactionApplier$SurfaceParams +android.view.SyncRtSurfaceTransactionApplier-IA android.view.SyncRtSurfaceTransactionApplier android.view.TextureView$$ExternalSyntheticLambda0 android.view.TextureView$$ExternalSyntheticLambda1 @@ -8946,8 +8994,8 @@ android.view.TextureView android.view.ThreadedRenderer$1$$ExternalSyntheticLambda0 android.view.ThreadedRenderer$1 android.view.ThreadedRenderer$DrawCallbacks -android.view.ThreadedRenderer$WebViewOverlayProvider-IA android.view.ThreadedRenderer$WebViewOverlayProvider +android.view.ThreadedRenderer-IA android.view.ThreadedRenderer android.view.TouchDelegate android.view.TunnelModeEnabledListener @@ -8990,13 +9038,10 @@ android.view.View$AttachInfo$InvalidateInfo android.view.View$AttachInfo android.view.View$BaseSavedState$1 android.view.View$BaseSavedState -android.view.View$CheckForLongPress-IA android.view.View$CheckForLongPress -android.view.View$CheckForTap-IA android.view.View$CheckForTap android.view.View$DeclaredOnClickListener android.view.View$DragShadowBuilder -android.view.View$ForegroundInfo-IA android.view.View$ForegroundInfo android.view.View$ListenerInfo android.view.View$MatchIdPredicate @@ -9016,19 +9061,16 @@ android.view.View$OnLongClickListener android.view.View$OnScrollChangeListener android.view.View$OnSystemUiVisibilityChangeListener android.view.View$OnTouchListener -android.view.View$PerformClick-IA android.view.View$PerformClick android.view.View$ScrollabilityCache android.view.View$SendAccessibilityEventThrottle android.view.View$SendViewScrolledAccessibilityEvent android.view.View$TintInfo -android.view.View$TooltipInfo-IA android.view.View$TooltipInfo android.view.View$TransformationInfo -android.view.View$UnsetPressedState-IA android.view.View$UnsetPressedState -android.view.View$VisibilityChangeForAutofillHandler-IA android.view.View$VisibilityChangeForAutofillHandler +android.view.View-IA android.view.View android.view.ViewAnimationHostBridge android.view.ViewAnimationUtils @@ -9066,10 +9108,10 @@ android.view.ViewParent android.view.ViewPropertyAnimator$1 android.view.ViewPropertyAnimator$2 android.view.ViewPropertyAnimator$3 -android.view.ViewPropertyAnimator$AnimatorEventListener-IA android.view.ViewPropertyAnimator$AnimatorEventListener android.view.ViewPropertyAnimator$NameValuesHolder android.view.ViewPropertyAnimator$PropertyBundle +android.view.ViewPropertyAnimator-IA android.view.ViewPropertyAnimator android.view.ViewRootImpl$$ExternalSyntheticLambda0 android.view.ViewRootImpl$$ExternalSyntheticLambda10 @@ -9090,6 +9132,8 @@ android.view.ViewRootImpl$$ExternalSyntheticLambda6 android.view.ViewRootImpl$$ExternalSyntheticLambda7 android.view.ViewRootImpl$$ExternalSyntheticLambda8 android.view.ViewRootImpl$$ExternalSyntheticLambda9 +android.view.ViewRootImpl$10 +android.view.ViewRootImpl$11 android.view.ViewRootImpl$1 android.view.ViewRootImpl$2 android.view.ViewRootImpl$3 @@ -9116,7 +9160,6 @@ android.view.ViewRootImpl$InputStage android.view.ViewRootImpl$InvalidateOnAnimationRunnable android.view.ViewRootImpl$NativePostImeInputStage android.view.ViewRootImpl$NativePreImeInputStage -android.view.ViewRootImpl$QueuedInputEvent-IA android.view.ViewRootImpl$QueuedInputEvent android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent android.view.ViewRootImpl$SurfaceChangedCallback @@ -9131,12 +9174,12 @@ android.view.ViewRootImpl$SystemUiVisibilityInfo android.view.ViewRootImpl$TakenSurfaceHolder android.view.ViewRootImpl$TrackballAxis android.view.ViewRootImpl$TraversalRunnable -android.view.ViewRootImpl$UnhandledKeyManager-IA android.view.ViewRootImpl$UnhandledKeyManager android.view.ViewRootImpl$ViewPostImeInputStage android.view.ViewRootImpl$ViewPreImeInputStage android.view.ViewRootImpl$ViewRootHandler android.view.ViewRootImpl$WindowInputEventReceiver +android.view.ViewRootImpl-IA android.view.ViewRootImpl android.view.ViewRootInsetsControllerHost android.view.ViewRootRectTracker$ViewInfo @@ -9200,12 +9243,13 @@ android.view.WindowManager android.view.WindowManagerGlobal$$ExternalSyntheticLambda0 android.view.WindowManagerGlobal$1 android.view.WindowManagerGlobal$2 -android.view.WindowManagerGlobal$TrustedPresentationListener-IA android.view.WindowManagerGlobal$TrustedPresentationListener +android.view.WindowManagerGlobal-IA android.view.WindowManagerGlobal android.view.WindowManagerPolicyConstants$PointerEventListener android.view.WindowManagerPolicyConstants android.view.WindowMetrics +android.view.WindowRelayoutResult android.view.WindowlessWindowLayout android.view.WindowlessWindowManager android.view.accessibility.AccessibilityCache$AccessibilityNodeRefresher @@ -9222,10 +9266,9 @@ android.view.accessibility.AccessibilityManager$1 android.view.accessibility.AccessibilityManager$AccessibilityPolicy android.view.accessibility.AccessibilityManager$AccessibilityServicesStateChangeListener android.view.accessibility.AccessibilityManager$AccessibilityStateChangeListener -android.view.accessibility.AccessibilityManager$HighTextContrastChangeListener -android.view.accessibility.AccessibilityManager$MyCallback-IA android.view.accessibility.AccessibilityManager$MyCallback android.view.accessibility.AccessibilityManager$TouchExplorationStateChangeListener +android.view.accessibility.AccessibilityManager-IA android.view.accessibility.AccessibilityManager android.view.accessibility.AccessibilityNodeIdManager android.view.accessibility.AccessibilityNodeInfo$1 @@ -9279,11 +9322,12 @@ android.view.animation.Animation$NoImagePreloadHolder android.view.animation.Animation android.view.animation.AnimationSet android.view.animation.AnimationUtils$1 -android.view.animation.AnimationUtils$AnimationState-IA android.view.animation.AnimationUtils$AnimationState +android.view.animation.AnimationUtils-IA android.view.animation.AnimationUtils android.view.animation.AnticipateInterpolator android.view.animation.AnticipateOvershootInterpolator +android.view.animation.BackGestureInterpolator android.view.animation.BaseInterpolator android.view.animation.BounceInterpolator android.view.animation.ClipRectAnimation @@ -9312,7 +9356,6 @@ android.view.autofill.AutofillManager$$ExternalSyntheticLambda1 android.view.autofill.AutofillManager$$ExternalSyntheticLambda2 android.view.autofill.AutofillManager$$ExternalSyntheticLambda3 android.view.autofill.AutofillManager$$ExternalSyntheticLambda4 -android.view.autofill.AutofillManager$AugmentedAutofillManagerClient-IA android.view.autofill.AutofillManager$AugmentedAutofillManagerClient android.view.autofill.AutofillManager$AutofillCallback android.view.autofill.AutofillManager$AutofillClient @@ -9323,13 +9366,15 @@ android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLa android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda16 android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda18 android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda8 -android.view.autofill.AutofillManager$AutofillManagerClient-IA +android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda9 android.view.autofill.AutofillManager$AutofillManagerClient android.view.autofill.AutofillManager$CompatibilityBridge android.view.autofill.AutofillManager$TrackedViews +android.view.autofill.AutofillManager-IA android.view.autofill.AutofillManager android.view.autofill.AutofillManagerInternal android.view.autofill.AutofillPopupWindow +android.view.autofill.AutofillStateFingerprint android.view.autofill.AutofillValue$1 android.view.autofill.AutofillValue-IA android.view.autofill.AutofillValue @@ -9356,9 +9401,9 @@ android.view.contentcapture.ContentCaptureEvent$1 android.view.contentcapture.ContentCaptureEvent android.view.contentcapture.ContentCaptureHelper android.view.contentcapture.ContentCaptureManager$ContentCaptureClient -android.view.contentcapture.ContentCaptureManager$LocalDataShareAdapterResourceManager-IA android.view.contentcapture.ContentCaptureManager$LocalDataShareAdapterResourceManager android.view.contentcapture.ContentCaptureManager$StrippedContext +android.view.contentcapture.ContentCaptureManager-IA android.view.contentcapture.ContentCaptureManager android.view.contentcapture.ContentCaptureSession android.view.contentcapture.ContentCaptureSessionId$1 @@ -9379,18 +9424,13 @@ android.view.contentcapture.IContentCaptureOptionsCallback android.view.contentcapture.IDataShareWriteAdapter$Stub android.view.contentcapture.IDataShareWriteAdapter android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda0 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda10 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda11 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda12 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda13 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda1 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda2 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda3 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda4 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda5 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda6 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda8 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda9 +android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda7 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda0 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver @@ -9450,15 +9490,13 @@ android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda0 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda1 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda2 android.view.inputmethod.ImeTracker$Debug -android.view.inputmethod.ImeTracker$ImeJankTracker-IA android.view.inputmethod.ImeTracker$ImeJankTracker -android.view.inputmethod.ImeTracker$ImeLatencyTracker-IA android.view.inputmethod.ImeTracker$ImeLatencyTracker android.view.inputmethod.ImeTracker$InputMethodJankContext android.view.inputmethod.ImeTracker$InputMethodLatencyContext android.view.inputmethod.ImeTracker$Token$1 -android.view.inputmethod.ImeTracker$Token-IA android.view.inputmethod.ImeTracker$Token +android.view.inputmethod.ImeTracker-IA android.view.inputmethod.ImeTracker android.view.inputmethod.InlineSuggestionsRequest$1 android.view.inputmethod.InlineSuggestionsRequest @@ -9484,16 +9522,15 @@ android.view.inputmethod.InputMethodManager$1 android.view.inputmethod.InputMethodManager$2 android.view.inputmethod.InputMethodManager$6 android.view.inputmethod.InputMethodManager$BindState -android.view.inputmethod.InputMethodManager$DelegateImpl-IA android.view.inputmethod.InputMethodManager$DelegateImpl android.view.inputmethod.InputMethodManager$FinishedInputEventCallback android.view.inputmethod.InputMethodManager$H$$ExternalSyntheticLambda0 android.view.inputmethod.InputMethodManager$H$$ExternalSyntheticLambda1 android.view.inputmethod.InputMethodManager$H android.view.inputmethod.InputMethodManager$ImeInputEventSender -android.view.inputmethod.InputMethodManager$PendingEvent-IA android.view.inputmethod.InputMethodManager$PendingEvent android.view.inputmethod.InputMethodManager$ReportInputConnectionOpenedRunner +android.view.inputmethod.InputMethodManager-IA android.view.inputmethod.InputMethodManager android.view.inputmethod.InputMethodManagerGlobal android.view.inputmethod.InputMethodSession$EventCallback @@ -9554,7 +9591,6 @@ android.view.textclassifier.ConversationAction android.view.textclassifier.ConversationActions$1 android.view.textclassifier.ConversationActions$Message$1 android.view.textclassifier.ConversationActions$Message$Builder -android.view.textclassifier.ConversationActions$Message-IA android.view.textclassifier.ConversationActions$Message android.view.textclassifier.ConversationActions$Request$1 android.view.textclassifier.ConversationActions$Request$Builder @@ -9572,8 +9608,8 @@ android.view.textclassifier.SelectionEvent android.view.textclassifier.SelectionSessionLogger$SignatureParser android.view.textclassifier.SelectionSessionLogger android.view.textclassifier.SystemTextClassifier$BlockingCallback -android.view.textclassifier.SystemTextClassifier$ResponseReceiver-IA android.view.textclassifier.SystemTextClassifier$ResponseReceiver +android.view.textclassifier.SystemTextClassifier-IA android.view.textclassifier.SystemTextClassifier android.view.textclassifier.SystemTextClassifierMetadata$1 android.view.textclassifier.SystemTextClassifierMetadata @@ -9601,23 +9637,19 @@ android.view.textclassifier.TextClassificationSessionId android.view.textclassifier.TextClassifier$1 android.view.textclassifier.TextClassifier$EntityConfig$1 android.view.textclassifier.TextClassifier$EntityConfig$Builder -android.view.textclassifier.TextClassifier$EntityConfig-IA android.view.textclassifier.TextClassifier$EntityConfig android.view.textclassifier.TextClassifier$Utils +android.view.textclassifier.TextClassifier-IA android.view.textclassifier.TextClassifier android.view.textclassifier.TextClassifierEvent$1 android.view.textclassifier.TextClassifierEvent$Builder android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent$1 -android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent-IA android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent$1 -android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent-IA android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent$1 -android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent-IA android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent android.view.textclassifier.TextClassifierEvent$TextSelectionEvent$1 -android.view.textclassifier.TextClassifierEvent$TextSelectionEvent-IA android.view.textclassifier.TextClassifierEvent$TextSelectionEvent android.view.textclassifier.TextClassifierEvent-IA android.view.textclassifier.TextClassifierEvent @@ -9650,7 +9682,6 @@ android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl$1 android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams$Builder -android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams-IA android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams android.view.textservice.SpellCheckerSession android.view.textservice.SpellCheckerSubtype$1 @@ -9756,12 +9787,9 @@ android.widget.AbsListView$3 android.widget.AbsListView$4 android.widget.AbsListView$AbsPositionScroller android.widget.AbsListView$AdapterDataSetObserver -android.widget.AbsListView$CheckForKeyLongPress-IA android.widget.AbsListView$CheckForKeyLongPress android.widget.AbsListView$CheckForLongPress -android.widget.AbsListView$CheckForTap-IA android.widget.AbsListView$CheckForTap -android.widget.AbsListView$DeviceConfigChangeListener-IA android.widget.AbsListView$DeviceConfigChangeListener android.widget.AbsListView$FlingRunnable$1 android.widget.AbsListView$FlingRunnable @@ -9771,7 +9799,6 @@ android.widget.AbsListView$ListItemAccessibilityDelegate android.widget.AbsListView$MultiChoiceModeListener android.widget.AbsListView$MultiChoiceModeWrapper android.widget.AbsListView$OnScrollListener -android.widget.AbsListView$PerformClick-IA android.widget.AbsListView$PerformClick android.widget.AbsListView$PositionScroller android.widget.AbsListView$RecycleBin @@ -9779,8 +9806,8 @@ android.widget.AbsListView$RecyclerListener android.widget.AbsListView$SavedState$1 android.widget.AbsListView$SavedState android.widget.AbsListView$SelectionBoundsAdjuster -android.widget.AbsListView$WindowRunnnable-IA android.widget.AbsListView$WindowRunnnable +android.widget.AbsListView-IA android.widget.AbsListView android.widget.AbsSeekBar android.widget.AbsSpinner$RecycleBin @@ -9816,13 +9843,11 @@ android.widget.AdapterView android.widget.ArrayAdapter android.widget.AutoCompleteTextView$$ExternalSyntheticLambda0 android.widget.AutoCompleteTextView$$ExternalSyntheticLambda1 -android.widget.AutoCompleteTextView$DropDownItemClickListener-IA android.widget.AutoCompleteTextView$DropDownItemClickListener -android.widget.AutoCompleteTextView$MyWatcher-IA android.widget.AutoCompleteTextView$MyWatcher -android.widget.AutoCompleteTextView$PassThroughClickListener-IA android.widget.AutoCompleteTextView$PassThroughClickListener android.widget.AutoCompleteTextView$Validator +android.widget.AutoCompleteTextView-IA android.widget.AutoCompleteTextView android.widget.BaseAdapter android.widget.Button @@ -9850,21 +9875,16 @@ android.widget.Editor$1 android.widget.Editor$2 android.widget.Editor$3 android.widget.Editor$5 -android.widget.Editor$AccessibilitySmartActions-IA android.widget.Editor$AccessibilitySmartActions -android.widget.Editor$Blink-IA android.widget.Editor$Blink android.widget.Editor$CorrectionHighlighter -android.widget.Editor$CursorAnchorInfoNotifier-IA android.widget.Editor$CursorAnchorInfoNotifier android.widget.Editor$CursorController android.widget.Editor$EasyEditDeleteListener -android.widget.Editor$EasyEditPopupWindow-IA android.widget.Editor$EasyEditPopupWindow android.widget.Editor$EditOperation$1 android.widget.Editor$EditOperation android.widget.Editor$ErrorPopup -android.widget.Editor$HandleView-IA android.widget.Editor$HandleView android.widget.Editor$InputContentType android.widget.Editor$InputMethodState @@ -9875,24 +9895,20 @@ android.widget.Editor$InsertionPointCursorController$1 android.widget.Editor$InsertionPointCursorController android.widget.Editor$MagnifierMotionAnimator android.widget.Editor$PinnedPopupWindow -android.widget.Editor$PositionListener-IA android.widget.Editor$PositionListener -android.widget.Editor$ProcessTextIntentActionsHandler-IA android.widget.Editor$ProcessTextIntentActionsHandler android.widget.Editor$SelectionHandleView android.widget.Editor$SelectionModifierCursorController android.widget.Editor$SpanController$1 android.widget.Editor$SpanController$2 -android.widget.Editor$SpanController-IA android.widget.Editor$SpanController -android.widget.Editor$SuggestionHelper$SuggestionSpanComparator-IA android.widget.Editor$SuggestionHelper$SuggestionSpanComparator -android.widget.Editor$SuggestionHelper-IA android.widget.Editor$SuggestionHelper android.widget.Editor$SuggestionsPopupWindow android.widget.Editor$TextRenderNode android.widget.Editor$TextViewPositionListener android.widget.Editor$UndoInputFilter +android.widget.Editor-IA android.widget.Editor android.widget.EditorTouchState android.widget.FastScroller$1 @@ -9907,8 +9923,8 @@ android.widget.Filter$FilterListener android.widget.Filter$FilterResults android.widget.Filter$RequestArguments android.widget.Filter$RequestHandler -android.widget.Filter$ResultsHandler-IA android.widget.Filter$ResultsHandler +android.widget.Filter-IA android.widget.Filter android.widget.Filterable android.widget.ForwardingListener @@ -9927,15 +9943,14 @@ android.widget.GridLayout$Alignment android.widget.GridLayout$Arc android.widget.GridLayout$Assoc android.widget.GridLayout$Axis$1 -android.widget.GridLayout$Axis-IA android.widget.GridLayout$Axis android.widget.GridLayout$Bounds android.widget.GridLayout$Interval android.widget.GridLayout$LayoutParams android.widget.GridLayout$MutableInt -android.widget.GridLayout$PackedMap-IA android.widget.GridLayout$PackedMap android.widget.GridLayout$Spec +android.widget.GridLayout-IA android.widget.GridLayout android.widget.HeaderViewListAdapter android.widget.HorizontalScrollView$SavedState$1 @@ -9948,22 +9963,17 @@ android.widget.ImageView android.widget.LinearLayout$LayoutParams android.widget.LinearLayout android.widget.ListAdapter -android.widget.ListPopupWindow$ListSelectorHider-IA android.widget.ListPopupWindow$ListSelectorHider -android.widget.ListPopupWindow$PopupDataSetObserver-IA android.widget.ListPopupWindow$PopupDataSetObserver -android.widget.ListPopupWindow$PopupScrollListener-IA android.widget.ListPopupWindow$PopupScrollListener -android.widget.ListPopupWindow$PopupTouchInterceptor-IA android.widget.ListPopupWindow$PopupTouchInterceptor -android.widget.ListPopupWindow$ResizePopupRunnable-IA android.widget.ListPopupWindow$ResizePopupRunnable +android.widget.ListPopupWindow-IA android.widget.ListPopupWindow -android.widget.ListView$ArrowScrollFocusResult-IA android.widget.ListView$ArrowScrollFocusResult android.widget.ListView$FixedViewInfo -android.widget.ListView$FocusSelector-IA android.widget.ListView$FocusSelector +android.widget.ListView-IA android.widget.ListView android.widget.Magnifier$Builder android.widget.Magnifier$InternalPopupWindow @@ -9994,14 +10004,12 @@ android.widget.PopupWindow$PopupDecorView android.widget.PopupWindow android.widget.ProgressBar$1 android.widget.ProgressBar$2 -android.widget.ProgressBar$ProgressTintInfo-IA android.widget.ProgressBar$ProgressTintInfo android.widget.ProgressBar$RefreshData -android.widget.ProgressBar$RefreshProgressRunnable-IA android.widget.ProgressBar$RefreshProgressRunnable android.widget.ProgressBar$SavedState$1 -android.widget.ProgressBar$SavedState-IA android.widget.ProgressBar$SavedState +android.widget.ProgressBar-IA android.widget.ProgressBar android.widget.QuickContactBadge android.widget.RadioButton @@ -10009,19 +10017,21 @@ android.widget.RadioGroup$OnCheckedChangeListener android.widget.RadioGroup android.widget.RatingBar android.widget.RelativeLayout$DependencyGraph$Node -android.widget.RelativeLayout$DependencyGraph-IA android.widget.RelativeLayout$DependencyGraph android.widget.RelativeLayout$LayoutParams android.widget.RelativeLayout$TopToBottomLeftToRightComparator +android.widget.RelativeLayout-IA android.widget.RelativeLayout android.widget.RemoteViews$$ExternalSyntheticLambda0 android.widget.RemoteViews$$ExternalSyntheticLambda1 android.widget.RemoteViews$$ExternalSyntheticLambda2 +android.widget.RemoteViews$$ExternalSyntheticLambda4 +android.widget.RemoteViews$$ExternalSyntheticLambda5 android.widget.RemoteViews$1 android.widget.RemoteViews$2 -android.widget.RemoteViews$Action-IA android.widget.RemoteViews$Action android.widget.RemoteViews$ActionException +android.widget.RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0 android.widget.RemoteViews$ApplicationInfoCache android.widget.RemoteViews$AsyncApplyTask android.widget.RemoteViews$AttributeReflectionAction @@ -10037,6 +10047,7 @@ android.widget.RemoteViews$MethodArgs android.widget.RemoteViews$MethodKey android.widget.RemoteViews$NightModeReflectionAction android.widget.RemoteViews$OnViewAppliedListener +android.widget.RemoteViews$PendingResources android.widget.RemoteViews$ReflectionAction android.widget.RemoteViews$RemoteCollectionCache android.widget.RemoteViews$RemoteCollectionItems$1 @@ -10072,6 +10083,7 @@ android.widget.RemoteViews$ViewGroupActionRemove$1 android.widget.RemoteViews$ViewGroupActionRemove android.widget.RemoteViews$ViewPaddingAction android.widget.RemoteViews$ViewTree +android.widget.RemoteViews-IA android.widget.RemoteViews android.widget.RemoteViewsAdapter$AsyncRemoteAdapterAction android.widget.RemoteViewsAdapter$RemoteAdapterConnectionCallback @@ -10095,10 +10107,10 @@ android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda2 android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda3 android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda8 android.widget.SelectionActionModeHelper$SelectionMetricsLogger -android.widget.SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable-IA android.widget.SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable android.widget.SelectionActionModeHelper$SelectionTracker android.widget.SelectionActionModeHelper$TextClassificationHelper +android.widget.SelectionActionModeHelper-IA android.widget.SelectionActionModeHelper android.widget.SmartSelectSprite$$ExternalSyntheticLambda0 android.widget.SmartSelectSprite$$ExternalSyntheticLambda1 @@ -10109,11 +10121,10 @@ android.widget.Space android.widget.SpellChecker$1 android.widget.SpellChecker$RemoveReason android.widget.SpellChecker$SentenceIteratorWrapper -android.widget.SpellChecker$SpellParser-IA android.widget.SpellChecker$SpellParser +android.widget.SpellChecker-IA android.widget.SpellChecker android.widget.Spinner$1 -android.widget.Spinner$DialogPopup-IA android.widget.Spinner$DialogPopup android.widget.Spinner$DropDownAdapter android.widget.Spinner$DropdownPopup$1 @@ -10121,6 +10132,7 @@ android.widget.Spinner$DropdownPopup android.widget.Spinner$SavedState$1 android.widget.Spinner$SavedState android.widget.Spinner$SpinnerPopup +android.widget.Spinner-IA android.widget.Spinner android.widget.SpinnerAdapter android.widget.Switch$1 @@ -10145,7 +10157,6 @@ android.widget.TextView$2 android.widget.TextView$3 android.widget.TextView$4 android.widget.TextView$BufferType -android.widget.TextView$ChangeWatcher-IA android.widget.TextView$ChangeWatcher android.widget.TextView$CharWrapper android.widget.TextView$Drawables @@ -10155,23 +10166,22 @@ android.widget.TextView$Marquee$3 android.widget.TextView$Marquee android.widget.TextView$OnEditorActionListener android.widget.TextView$SavedState$1 -android.widget.TextView$SavedState-IA android.widget.TextView$SavedState -android.widget.TextView$TextAppearanceAttributes-IA android.widget.TextView$TextAppearanceAttributes +android.widget.TextView-IA android.widget.TextView -android.widget.TextViewOnReceiveContentListener$InputConnectionInfo-IA android.widget.TextViewOnReceiveContentListener$InputConnectionInfo +android.widget.TextViewOnReceiveContentListener-IA android.widget.TextViewOnReceiveContentListener android.widget.TextViewTranslationCallback android.widget.ThemedSpinnerAdapter android.widget.Toast$Callback android.widget.Toast$CallbackBinder$$ExternalSyntheticLambda0 android.widget.Toast$CallbackBinder$$ExternalSyntheticLambda1 -android.widget.Toast$CallbackBinder-IA android.widget.Toast$CallbackBinder android.widget.Toast$TN$1 android.widget.Toast$TN +android.widget.Toast-IA android.widget.Toast android.widget.ToastPresenter android.widget.ToggleButton @@ -10188,6 +10198,8 @@ android.widget.ViewFlipper$1 android.widget.ViewFlipper android.widget.ViewSwitcher android.widget.WrapperListAdapter +android.widget.flags.FeatureFlags +android.widget.flags.FeatureFlagsImpl android.widget.flags.Flags android.widget.inline.InlinePresentationSpec$1 android.widget.inline.InlinePresentationSpec$BaseBuilder @@ -10203,6 +10215,7 @@ android.window.BackMotionEvent android.window.BackNavigationInfo$1 android.window.BackNavigationInfo android.window.BackProgressAnimator$$ExternalSyntheticLambda0 +android.window.BackProgressAnimator$$ExternalSyntheticLambda1 android.window.BackProgressAnimator$1 android.window.BackProgressAnimator$ProgressCallback android.window.BackProgressAnimator @@ -10259,7 +10272,6 @@ android.window.IWindowContainerTransactionCallback android.window.IWindowOrganizerController$Stub$Proxy android.window.IWindowOrganizerController$Stub android.window.IWindowOrganizerController -android.window.ImeOnBackInvokedDispatcher$$ExternalSyntheticLambda0 android.window.ImeOnBackInvokedDispatcher$1 android.window.ImeOnBackInvokedDispatcher$2 android.window.ImeOnBackInvokedDispatcher$DefaultImeOnBackAnimationCallback @@ -10305,9 +10317,9 @@ android.window.SurfaceSyncGroup$$ExternalSyntheticLambda5 android.window.SurfaceSyncGroup$$ExternalSyntheticLambda6 android.window.SurfaceSyncGroup$1 android.window.SurfaceSyncGroup$2 -android.window.SurfaceSyncGroup$ISurfaceSyncGroupImpl-IA android.window.SurfaceSyncGroup$ISurfaceSyncGroupImpl android.window.SurfaceSyncGroup$SurfaceViewFrameCallback +android.window.SurfaceSyncGroup-IA android.window.SurfaceSyncGroup android.window.TaskAppearedInfo$1 android.window.TaskAppearedInfo @@ -10347,13 +10359,15 @@ android.window.WindowInfosListener android.window.WindowMetricsController$$ExternalSyntheticLambda0 android.window.WindowMetricsController android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda0 +android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda1 +android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda2 android.window.WindowOnBackInvokedDispatcher$Checker android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda1 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda4 -android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef +android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda5 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper android.window.WindowOnBackInvokedDispatcher android.window.WindowOrganizer$1 @@ -10437,9 +10451,15 @@ com.android.framework.protobuf.nano.InternalNano com.android.framework.protobuf.nano.InvalidProtocolBufferNanoException com.android.framework.protobuf.nano.MessageNano com.android.framework.protobuf.nano.WireFormatNano +com.android.graphics.flags.FeatureFlags +com.android.graphics.flags.FeatureFlagsImpl +com.android.graphics.flags.Flags com.android.graphics.hwui.flags.FeatureFlags com.android.graphics.hwui.flags.FeatureFlagsImpl com.android.graphics.hwui.flags.Flags +com.android.graphics.surfaceflinger.flags.FeatureFlags +com.android.graphics.surfaceflinger.flags.FeatureFlagsImpl +com.android.graphics.surfaceflinger.flags.Flags com.android.i18n.phonenumbers.AlternateFormatsCountryCodeSet com.android.i18n.phonenumbers.AsYouTypeFormatter com.android.i18n.phonenumbers.CountryCodeToRegionCodeMap @@ -10575,6 +10595,7 @@ com.android.icu.util.ExtendedCalendar com.android.icu.util.ExtendedTimeZone com.android.icu.util.Icu4cMetadata com.android.icu.util.LocaleNative +com.android.icu.util.UResourceBundleNative com.android.icu.util.regex.MatcherNative com.android.icu.util.regex.PatternNative com.android.ims.FeatureConnection$$ExternalSyntheticLambda0 @@ -10628,6 +10649,7 @@ com.android.ims.ImsManager$$ExternalSyntheticLambda2 com.android.ims.ImsManager$$ExternalSyntheticLambda3 com.android.ims.ImsManager$$ExternalSyntheticLambda4 com.android.ims.ImsManager$$ExternalSyntheticLambda5 +com.android.ims.ImsManager$$ExternalSyntheticLambda6 com.android.ims.ImsManager$$ExternalSyntheticLambda7 com.android.ims.ImsManager$$ExternalSyntheticLambda8 com.android.ims.ImsManager$$ExternalSyntheticLambda9 @@ -10659,6 +10681,7 @@ com.android.ims.RcsFeatureConnection$RegistrationCallbackManager com.android.ims.RcsFeatureConnection com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda0 com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda1 +com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda2 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda0 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda1 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda2 @@ -10704,6 +10727,7 @@ com.android.ims.internal.IImsRegistrationListener$Stub com.android.ims.internal.IImsRegistrationListener com.android.ims.internal.IImsServiceController$Stub com.android.ims.internal.IImsServiceController +com.android.ims.internal.IImsServiceFeatureCallback$Stub$Proxy com.android.ims.internal.IImsServiceFeatureCallback$Stub com.android.ims.internal.IImsServiceFeatureCallback com.android.ims.internal.IImsStreamMediaSession @@ -10982,7 +11006,6 @@ com.android.internal.app.AlertController$ButtonHandler com.android.internal.app.AlertController$RecycleListView com.android.internal.app.AlertController com.android.internal.app.AssistUtils -com.android.internal.app.IAppOpsActiveCallback$Stub$Proxy com.android.internal.app.IAppOpsActiveCallback$Stub com.android.internal.app.IAppOpsActiveCallback com.android.internal.app.IAppOpsAsyncNotedCallback$Stub @@ -11069,6 +11092,7 @@ com.android.internal.appwidget.IAppWidgetHost com.android.internal.appwidget.IAppWidgetService$Stub$Proxy com.android.internal.appwidget.IAppWidgetService$Stub com.android.internal.appwidget.IAppWidgetService +com.android.internal.backup.IBackupTransport$Stub$Proxy com.android.internal.backup.IBackupTransport$Stub com.android.internal.backup.IBackupTransport com.android.internal.colorextraction.ColorExtractor$GradientColors @@ -11146,6 +11170,7 @@ com.android.internal.dynamicanimation.animation.DynamicAnimation$8 com.android.internal.dynamicanimation.animation.DynamicAnimation$9 com.android.internal.dynamicanimation.animation.DynamicAnimation$MassState com.android.internal.dynamicanimation.animation.DynamicAnimation$OnAnimationEndListener +com.android.internal.dynamicanimation.animation.DynamicAnimation$OnAnimationUpdateListener com.android.internal.dynamicanimation.animation.DynamicAnimation$ViewProperty com.android.internal.dynamicanimation.animation.DynamicAnimation com.android.internal.dynamicanimation.animation.Force @@ -11165,13 +11190,29 @@ com.android.internal.graphics.drawable.BackgroundBlurDrawable$Aggregator com.android.internal.graphics.drawable.BackgroundBlurDrawable$BlurRegion com.android.internal.graphics.drawable.BackgroundBlurDrawable-IA com.android.internal.graphics.drawable.BackgroundBlurDrawable +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.Flags +com.android.internal.hidden_from_bootclasspath.android.app.job.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.app.job.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.app.job.Flags +com.android.internal.hidden_from_bootclasspath.android.content.pm.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.content.pm.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.content.pm.Flags com.android.internal.hidden_from_bootclasspath.android.os.FeatureFlags com.android.internal.hidden_from_bootclasspath.android.os.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.os.Flags +com.android.internal.hidden_from_bootclasspath.android.permission.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.permission.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.permission.flags.Flags com.android.internal.hidden_from_bootclasspath.android.service.notification.FeatureFlags com.android.internal.hidden_from_bootclasspath.android.service.notification.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.service.notification.Flags +com.android.internal.hidden_from_bootclasspath.com.android.libcore.Flags +com.android.internal.hidden_from_bootclasspath.com.android.server.power.optimization.Flags +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.Flags com.android.internal.infra.AbstractMultiplePendingRequestsRemoteService com.android.internal.infra.AbstractRemoteService$AsyncRequest com.android.internal.infra.AbstractRemoteService$BasePendingRequest @@ -11221,6 +11262,7 @@ com.android.internal.inputmethod.IRemoteInputConnection$Stub com.android.internal.inputmethod.IRemoteInputConnection com.android.internal.inputmethod.ImeTracing com.android.internal.inputmethod.ImeTracingClientImpl +com.android.internal.inputmethod.ImeTracingPerfettoImpl com.android.internal.inputmethod.ImeTracingServerImpl com.android.internal.inputmethod.InputBindResult$1 com.android.internal.inputmethod.InputBindResult-IA @@ -11261,8 +11303,8 @@ com.android.internal.jank.InteractionJankMonitor$$ExternalSyntheticLambda9 com.android.internal.jank.InteractionJankMonitor$Configuration com.android.internal.jank.InteractionJankMonitor$RunningTracker com.android.internal.jank.InteractionJankMonitor$TimeFunction -com.android.internal.jank.InteractionJankMonitor$TrackerResult-IA com.android.internal.jank.InteractionJankMonitor$TrackerResult +com.android.internal.jank.InteractionJankMonitor-IA com.android.internal.listeners.ListenerExecutor$$ExternalSyntheticLambda0 com.android.internal.listeners.ListenerExecutor$FailureCallback com.android.internal.listeners.ListenerExecutor$ListenerOperation @@ -11324,8 +11366,8 @@ com.android.internal.os.BinderCallsStats$ExportedCallStat com.android.internal.os.BinderCallsStats$Injector com.android.internal.os.BinderCallsStats$OverflowBinder com.android.internal.os.BinderCallsStats$UidEntry -com.android.internal.os.BinderDeathDispatcher$RecipientsInfo-IA com.android.internal.os.BinderDeathDispatcher$RecipientsInfo +com.android.internal.os.BinderDeathDispatcher-IA com.android.internal.os.BinderDeathDispatcher com.android.internal.os.BinderInternal$BinderProxyCountEventListenerDelegate com.android.internal.os.BinderInternal$CallSession @@ -11346,6 +11388,7 @@ com.android.internal.os.CachedDeviceState$TimeInStateStopwatch com.android.internal.os.CachedDeviceState com.android.internal.os.ClassLoaderFactory com.android.internal.os.Clock +com.android.internal.os.DebugStore com.android.internal.os.FeatureFlags com.android.internal.os.FeatureFlagsImpl com.android.internal.os.Flags @@ -11405,10 +11448,10 @@ com.android.internal.os.LongArrayMultiStateCounter$LongArrayContainer com.android.internal.os.LongArrayMultiStateCounter com.android.internal.os.LongMultiStateCounter$1 com.android.internal.os.LongMultiStateCounter -com.android.internal.os.LooperStats$DispatchSession-IA com.android.internal.os.LooperStats$DispatchSession com.android.internal.os.LooperStats$Entry com.android.internal.os.LooperStats$ExportedEntry +com.android.internal.os.LooperStats-IA com.android.internal.os.LooperStats com.android.internal.os.PowerProfile$CpuClusterKey com.android.internal.os.PowerProfile @@ -11429,9 +11472,9 @@ com.android.internal.os.RuntimeInit$$ExternalSyntheticLambda1 com.android.internal.os.RuntimeInit$ApplicationWtfHandler com.android.internal.os.RuntimeInit$Arguments com.android.internal.os.RuntimeInit$KillApplicationHandler -com.android.internal.os.RuntimeInit$LoggingHandler-IA com.android.internal.os.RuntimeInit$LoggingHandler com.android.internal.os.RuntimeInit$MethodAndArgsCaller +com.android.internal.os.RuntimeInit-IA com.android.internal.os.RuntimeInit com.android.internal.os.SafeZipPathValidatorCallback com.android.internal.os.SomeArgs @@ -11504,12 +11547,12 @@ com.android.internal.policy.PhoneWindow$$ExternalSyntheticLambda1 com.android.internal.policy.PhoneWindow$1 com.android.internal.policy.PhoneWindow$ActionMenuPresenterCallback com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState$1 -com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState-IA com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState com.android.internal.policy.PhoneWindow$PanelFeatureState com.android.internal.policy.PhoneWindow$PhoneWindowMenuCallback com.android.internal.policy.PhoneWindow$RotationWatcher$1 com.android.internal.policy.PhoneWindow$RotationWatcher +com.android.internal.policy.PhoneWindow-IA com.android.internal.policy.PhoneWindow com.android.internal.policy.ScreenDecorationsUtils com.android.internal.policy.SystemBarUtils @@ -11524,6 +11567,8 @@ com.android.internal.protolog.ProtoLogViewerConfigReader com.android.internal.protolog.common.BitmaskConversionException com.android.internal.protolog.common.IProtoLogGroup com.android.internal.protolog.common.LogDataType +com.android.internal.ravenwood.RavenwoodEnvironment$Workaround +com.android.internal.ravenwood.RavenwoodEnvironment com.android.internal.security.VerityUtils com.android.internal.statusbar.IAddTileResultCallback com.android.internal.statusbar.IStatusBar$Stub @@ -11763,6 +11808,7 @@ com.android.internal.telephony.IState com.android.internal.telephony.ISub$Stub$Proxy com.android.internal.telephony.ISub$Stub com.android.internal.telephony.ISub +com.android.internal.telephony.ITelephony$Stub$Proxy com.android.internal.telephony.ITelephony$Stub com.android.internal.telephony.ITelephony com.android.internal.telephony.ITelephonyRegistry$Stub$Proxy @@ -11928,6 +11974,7 @@ com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda8 com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda9 com.android.internal.telephony.PhoneSubInfoController$CallPhoneMethodHelper com.android.internal.telephony.PhoneSubInfoController$PermissionCheckHelper +com.android.internal.telephony.PhoneSubInfoController com.android.internal.telephony.ProxyController$1 com.android.internal.telephony.ProxyController com.android.internal.telephony.RIL$RadioProxyDeathRecipient @@ -12320,6 +12367,7 @@ com.android.internal.telephony.euicc.EuiccController$9 com.android.internal.telephony.euicc.EuiccController$DownloadSubscriptionGetMetadataCommandCallback com.android.internal.telephony.euicc.EuiccController$GetDefaultListCommandCallback com.android.internal.telephony.euicc.EuiccController$GetMetadataCommandCallback +com.android.internal.telephony.euicc.EuiccController com.android.internal.telephony.euicc.EuiccOperation$1 com.android.internal.telephony.euicc.EuiccOperation$Action com.android.internal.telephony.euicc.EuiccOperation @@ -12498,6 +12546,7 @@ com.android.internal.telephony.imsphone.ImsPhoneCallTracker$HoldSwapState com.android.internal.telephony.imsphone.ImsPhoneCallTracker$MmTelFeatureListener com.android.internal.telephony.imsphone.ImsPhoneCallTracker$PhoneStateListener com.android.internal.telephony.imsphone.ImsPhoneCallTracker$SharedPreferenceProxy +com.android.internal.telephony.imsphone.ImsPhoneCallTracker$VtDataUsageProvider com.android.internal.telephony.imsphone.ImsPhoneCallTracker com.android.internal.telephony.imsphone.ImsPhoneCommandInterface com.android.internal.telephony.imsphone.ImsPhoneConnection$$ExternalSyntheticLambda0 @@ -12552,6 +12601,7 @@ com.android.internal.telephony.metrics.PersistAtomsStorage$$ExternalSyntheticLam com.android.internal.telephony.metrics.PersistAtomsStorage$$ExternalSyntheticLambda7 com.android.internal.telephony.metrics.PersistAtomsStorage$1 com.android.internal.telephony.metrics.PersistAtomsStorage +com.android.internal.telephony.metrics.SatelliteStats$CarrierRoamingSatelliteControllerStatsParams com.android.internal.telephony.metrics.ServiceStateStats$$ExternalSyntheticLambda0 com.android.internal.telephony.metrics.ServiceStateStats$TimestampedServiceState com.android.internal.telephony.metrics.ServiceStateStats @@ -12581,6 +12631,8 @@ com.android.internal.telephony.nano.CarrierIdProto$CarrierAttribute com.android.internal.telephony.nano.CarrierIdProto$CarrierId com.android.internal.telephony.nano.CarrierIdProto$CarrierList com.android.internal.telephony.nano.PersistAtomsProto$CarrierIdMismatch +com.android.internal.telephony.nano.PersistAtomsProto$CarrierRoamingSatelliteControllerStats +com.android.internal.telephony.nano.PersistAtomsProto$CarrierRoamingSatelliteSession com.android.internal.telephony.nano.PersistAtomsProto$CellularDataServiceSwitch com.android.internal.telephony.nano.PersistAtomsProto$CellularServiceState com.android.internal.telephony.nano.PersistAtomsProto$DataCallSession @@ -12602,7 +12654,10 @@ com.android.internal.telephony.nano.PersistAtomsProto$PersistAtoms com.android.internal.telephony.nano.PersistAtomsProto$PresenceNotifyEvent com.android.internal.telephony.nano.PersistAtomsProto$RcsAcsProvisioningStats com.android.internal.telephony.nano.PersistAtomsProto$RcsClientProvisioningStats +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteAccessController +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteConfigUpdater com.android.internal.telephony.nano.PersistAtomsProto$SatelliteController +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteEntitlement com.android.internal.telephony.nano.PersistAtomsProto$SatelliteIncomingDatagram com.android.internal.telephony.nano.PersistAtomsProto$SatelliteOutgoingDatagram com.android.internal.telephony.nano.PersistAtomsProto$SatelliteProvision @@ -13026,8 +13081,9 @@ com.android.internal.util.DumpUtils com.android.internal.util.EmergencyAffordanceManager com.android.internal.util.ExponentiallyBucketedHistogram com.android.internal.util.FastMath -com.android.internal.util.FastPrintWriter$DummyWriter-IA com.android.internal.util.FastPrintWriter$DummyWriter +com.android.internal.util.FastPrintWriter-IA +com.android.internal.util.FastPrintWriter com.android.internal.util.FastXmlSerializer com.android.internal.util.FileRotator$FileInfo com.android.internal.util.FileRotator$Reader @@ -13048,6 +13104,7 @@ com.android.internal.util.HeavyHitterSketch com.android.internal.util.HexDump com.android.internal.util.IState com.android.internal.util.ImageUtils +com.android.internal.util.IndentingPrintWriter com.android.internal.util.IntPair com.android.internal.util.JournaledFile com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda0 @@ -13055,10 +13112,10 @@ com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda1 com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda2 com.android.internal.util.LatencyTracker$Action com.android.internal.util.LatencyTracker$ActionProperties -com.android.internal.util.LatencyTracker$FrameworkStatsLogEvent-IA com.android.internal.util.LatencyTracker$FrameworkStatsLogEvent com.android.internal.util.LatencyTracker$Session$$ExternalSyntheticLambda0 com.android.internal.util.LatencyTracker$Session +com.android.internal.util.LatencyTracker-IA com.android.internal.util.LineBreakBufferedWriter com.android.internal.util.LocalLog com.android.internal.util.MemInfoReader @@ -13084,6 +13141,8 @@ com.android.internal.util.ProcFileReader com.android.internal.util.ProgressReporter com.android.internal.util.ProviderAccessStats$PerThreadData com.android.internal.util.ProviderAccessStats +com.android.internal.util.RateLimitingCache$ValueFetcher +com.android.internal.util.RateLimitingCache com.android.internal.util.RingBuffer$$ExternalSyntheticLambda0 com.android.internal.util.RingBuffer$$ExternalSyntheticLambda1 com.android.internal.util.RingBuffer @@ -13094,22 +13153,18 @@ com.android.internal.util.ScreenshotHelper com.android.internal.util.StatLogger com.android.internal.util.State com.android.internal.util.StateMachine$LogRec -com.android.internal.util.StateMachine$LogRecords-IA com.android.internal.util.StateMachine$LogRecords -com.android.internal.util.StateMachine$SmHandler$HaltingState-IA com.android.internal.util.StateMachine$SmHandler$HaltingState -com.android.internal.util.StateMachine$SmHandler$QuittingState-IA com.android.internal.util.StateMachine$SmHandler$QuittingState com.android.internal.util.StateMachine$SmHandler$StateInfo -com.android.internal.util.StateMachine$SmHandler-IA com.android.internal.util.StateMachine$SmHandler +com.android.internal.util.StateMachine-IA com.android.internal.util.StateMachine com.android.internal.util.StringPool com.android.internal.util.SyncResultReceiver$TimeoutException com.android.internal.util.SyncResultReceiver com.android.internal.util.ToBooleanFunction com.android.internal.util.TokenBucket -com.android.internal.util.TraceBuffer$ProtoOutputStreamProvider-IA com.android.internal.util.TraceBuffer$ProtoOutputStreamProvider com.android.internal.util.TraceBuffer$ProtoProvider com.android.internal.util.TraceBuffer @@ -13323,6 +13378,7 @@ com.android.net.module.util.NetworkCapabilitiesUtils com.android.net.module.util.NetworkIdentityUtils com.android.net.module.util.NetworkStackConstants com.android.net.module.util.ProxyUtils +com.android.nfc.x.android.nfc.Flags com.android.phone.ecc.nano.CodedInputByteBufferNano com.android.phone.ecc.nano.CodedOutputByteBufferNano$OutOfSpaceException com.android.phone.ecc.nano.CodedOutputByteBufferNano @@ -13348,9 +13404,9 @@ com.android.server.am.nano.Capabilities com.android.server.am.nano.Capability com.android.server.am.nano.FrameworkCapability com.android.server.am.nano.VMCapability +com.android.server.am.nano.VMInfo com.android.server.backup.AccountManagerBackupHelper com.android.server.backup.AccountSyncSettingsBackupHelper -com.android.server.backup.NotificationBackupHelper com.android.server.backup.PermissionBackupHelper com.android.server.backup.PreferredActivityBackupHelper com.android.server.backup.ShortcutBackupHelper @@ -13386,6 +13442,7 @@ com.android.server.criticalevents.nano.CriticalEventProto$Watchdog com.android.server.job.JobSchedulerInternal$JobStorePersistStats com.android.server.net.BaseNetdEventCallback com.android.server.net.BaseNetworkObserver +com.android.server.ondeviceintelligence.nano.InferenceInfo com.android.server.sip.SipHelper com.android.server.sip.SipService$ConnectivityReceiver$1 com.android.server.sip.SipService$ConnectivityReceiver @@ -13461,9 +13518,6 @@ com.android.telephony.Rlog com.android.text.flags.FeatureFlags com.android.text.flags.FeatureFlagsImpl com.android.text.flags.Flags -com.android.window.flags.FeatureFlags -com.android.window.flags.FeatureFlagsImpl -com.android.window.flags.Flags com.google.android.collect.Lists com.google.android.collect.Maps com.google.android.collect.Sets diff --git a/cmds/bootanimation/BootAnimation.cpp b/cmds/bootanimation/BootAnimation.cpp index fdf9abc49604..c2f6e3072507 100644 --- a/cmds/bootanimation/BootAnimation.cpp +++ b/cmds/bootanimation/BootAnimation.cpp @@ -70,8 +70,9 @@ namespace android { using ui::DisplayMode; static const char OEM_BOOTANIMATION_FILE[] = "/oem/media/bootanimation.zip"; -static const char PRODUCT_BOOTANIMATION_DARK_FILE[] = "/product/media/bootanimation-dark.zip"; -static const char PRODUCT_BOOTANIMATION_FILE[] = "/product/media/bootanimation.zip"; +static const char PRODUCT_BOOTANIMATION_DIR[] = "/product/media/"; +static const char PRODUCT_BOOTANIMATION_DARK_FILE[] = "bootanimation-dark.zip"; +static const char PRODUCT_BOOTANIMATION_FILE[] = "bootanimation.zip"; static const char SYSTEM_BOOTANIMATION_FILE[] = "/system/media/bootanimation.zip"; static const char APEX_BOOTANIMATION_FILE[] = "/apex/com.android.bootanimation/etc/bootanimation.zip"; static const char OEM_SHUTDOWNANIMATION_FILE[] = "/oem/media/shutdownanimation.zip"; @@ -749,8 +750,11 @@ bool BootAnimation::findBootAnimationFileInternal(const std::vector<std::string> void BootAnimation::findBootAnimationFile() { ATRACE_CALL(); const bool playDarkAnim = android::base::GetIntProperty("ro.boot.theme", 0) == 1; + const std::string productBootanimationFile = PRODUCT_BOOTANIMATION_DIR + + android::base::GetProperty("ro.product.bootanim.file", playDarkAnim ? + PRODUCT_BOOTANIMATION_DARK_FILE : PRODUCT_BOOTANIMATION_FILE); static const std::vector<std::string> bootFiles = { - APEX_BOOTANIMATION_FILE, playDarkAnim ? PRODUCT_BOOTANIMATION_DARK_FILE : PRODUCT_BOOTANIMATION_FILE, + APEX_BOOTANIMATION_FILE, productBootanimationFile, OEM_BOOTANIMATION_FILE, SYSTEM_BOOTANIMATION_FILE }; static const std::vector<std::string> shutdownFiles = { diff --git a/cmds/bootanimation/OWNERS b/cmds/bootanimation/OWNERS index b6fb007bea52..2eda44dabec3 100644 --- a/cmds/bootanimation/OWNERS +++ b/cmds/bootanimation/OWNERS @@ -1,3 +1,4 @@ dupin@google.com shanh@google.com jreck@google.com +rahulbanerjee@google.com
\ No newline at end of file diff --git a/cmds/hid/Android.bp b/cmds/hid/Android.bp index a6e27698e36c..b93227a60d99 100644 --- a/cmds/hid/Android.bp +++ b/cmds/hid/Android.bp @@ -22,5 +22,5 @@ java_binary { name: "hid", wrapper: "hid.sh", srcs: ["**/*.java"], - required: ["libhidcommand_jni"], + jni_libs: ["libhidcommand_jni"], } diff --git a/cmds/locksettings/TEST_MAPPING b/cmds/locksettings/TEST_MAPPING index af54a2decd89..0f502c9904e5 100644 --- a/cmds/locksettings/TEST_MAPPING +++ b/cmds/locksettings/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit-large": [ { - "name": "CtsDevicePolicyManagerTestCases", - "options": [ - { - "include-annotation": "com.android.cts.devicepolicy.annotations.LockSettingsTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.FlakyTest" - } - ] + "name": "CtsDevicePolicyManagerTestCases_LockSettingsTest" } ], "postsubmit": [ diff --git a/cmds/uiautomator/library/Android.bp b/cmds/uiautomator/library/Android.bp index cd1fb9a0f047..5c5b220d20e9 100644 --- a/cmds/uiautomator/library/Android.bp +++ b/cmds/uiautomator/library/Android.bp @@ -28,9 +28,9 @@ droidstubs { "testrunner-src/**/*.java", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", "junit", - "android.test.base", + "android.test.base.stubs.system", "unsupportedappusage", ], installable: false, @@ -56,9 +56,9 @@ droiddoc { ":uiautomator-stubs", ], libs: [ - "android.test.runner", + "android.test.runner.stubs", "junit", - "android.test.base", + "android.test.base.stubs", ], sdk_version: "current", installable: false, @@ -71,7 +71,7 @@ java_library_static { ":uiautomator-stubs", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", "junit", ], java_version: "1.8", @@ -84,8 +84,8 @@ java_library_static { "testrunner-src/**/*.java", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "junit", diff --git a/cmds/uinput/Android.bp b/cmds/uinput/Android.bp index da497dcf908e..cec8a0d88b99 100644 --- a/cmds/uinput/Android.bp +++ b/cmds/uinput/Android.bp @@ -25,7 +25,7 @@ java_binary { "src/**/*.java", ":uinputcommand_aidl", ], - required: ["libuinputcommand_jni"], + jni_libs: ["libuinputcommand_jni"], } filegroup { diff --git a/cmds/uinput/examples/test-touchpad.evemu b/cmds/uinput/examples/test-touchpad.evemu new file mode 100644 index 000000000000..34ee5721b630 --- /dev/null +++ b/cmds/uinput/examples/test-touchpad.evemu @@ -0,0 +1,44 @@ +# EVEMU 1.2 +# This is an evemu "recording" of an Apple Magic Trackpad (1st generation), but +# that doesn't actually make any movements. It just runs for a very long time, +# to make Android think a touchpad is connected. This is useful for testing +# things like the settings in System > Touchpad, which only appear when one is +# connected. +# +# It can be played by piping it to the uinput command over ADB: +# $ adb shell uinput - < test-touchpad.evemu +N: Fake touchpad +I: 0005 05ac 030e 0160 +P: 05 00 00 00 00 00 00 00 +B: 00 0b 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 01 00 00 00 00 00 +B: 01 20 e5 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 01 00 00 00 00 00 00 00 00 +B: 02 00 00 00 00 00 00 00 00 +B: 03 03 00 00 00 00 80 73 02 +B: 04 10 00 00 00 00 00 00 00 +B: 05 00 00 00 00 00 00 00 00 +B: 11 00 00 00 00 00 00 00 00 +B: 12 00 00 00 00 00 00 00 00 +A: 00 -2909 3167 4 0 46 +A: 01 -2456 2565 4 0 45 +A: 2f 0 15 0 0 0 +A: 30 0 1020 4 0 0 +A: 31 0 1020 4 0 0 +A: 34 -31 32 1 0 0 +A: 35 -2909 3167 4 0 46 +A: 36 -2456 2565 4 0 45 +A: 39 0 65535 0 0 0 +E: 0.000001 0004 0005 1234 +E: 0.000001 0000 0000 0000 +E: 1000000000.000000 0004 0005 1235 +E: 1000000000.000000 0000 0000 0000 diff --git a/config/README.md b/config/README.md index 450a5c695c82..f2c8930575a5 100644 --- a/config/README.md +++ b/config/README.md @@ -1,10 +1,5 @@ # Configuration files for ART compiling the framework -* boot-image-profile.txt: A list of methods from the boot classpath to be compiled by dex2oat. - The order in the file is not relevant. -* boot-profile.txt: An ordered list of methods from the boot classpath to be compiled by - the JIT in the order provided in the file. Used by JIT zygote, when on-device - signing failed. * dirty-image-objects: List of objects in the boot image which are known to become dirty. This helps binning objects in the image file. * preloaded-classes: classes that will be allocated in the boot image, and diff --git a/config/boot-image-profile.txt b/config/boot-image-profile.txt deleted file mode 100644 index c830a7b4f3d3..000000000000 --- a/config/boot-image-profile.txt +++ /dev/null @@ -1,50377 +0,0 @@ -# -# Copyright (C) 2017 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. -# -HSPLandroid/accessibilityservice/AccessibilityServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/accessibilityservice/AccessibilityServiceInfo; -HSPLandroid/accessibilityservice/AccessibilityServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/accessibilityservice/AccessibilityServiceInfo;->getId()Ljava/lang/String; -HSPLandroid/accessibilityservice/AccessibilityServiceInfo;->initFromParcel(Landroid/os/Parcel;)V -HSPLandroid/accounts/Account$1;->createFromParcel(Landroid/os/Parcel;)Landroid/accounts/Account; -HSPLandroid/accounts/Account$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/accounts/Account$1;->newArray(I)[Landroid/accounts/Account; -HSPLandroid/accounts/Account$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/accounts/Account;-><init>(Landroid/os/Parcel;)V -HSPLandroid/accounts/Account;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/Account;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/Account;->equals(Ljava/lang/Object;)Z -HSPLandroid/accounts/Account;->hashCode()I -HSPLandroid/accounts/Account;->toString()Ljava/lang/String; -HSPLandroid/accounts/Account;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/accounts/AccountManager$10;-><init>(Landroid/accounts/AccountManager;Landroid/app/Activity;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;Landroid/accounts/Account;Ljava/lang/String;ZLandroid/os/Bundle;)V -HSPLandroid/accounts/AccountManager$10;->doWork()V -HSPLandroid/accounts/AccountManager$18;->run()V -HSPLandroid/accounts/AccountManager$1;-><init>(Landroid/accounts/AccountManager;ILjava/lang/String;)V -HSPLandroid/accounts/AccountManager$1;->bypass(Landroid/content/pm/UserPackage;)Z -HSPLandroid/accounts/AccountManager$1;->bypass(Ljava/lang/Object;)Z -HSPLandroid/accounts/AccountManager$1;->recompute(Landroid/content/pm/UserPackage;)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$20;-><init>(Landroid/accounts/AccountManager;)V -HSPLandroid/accounts/AccountManager$2;-><init>(Landroid/accounts/AccountManager;ILjava/lang/String;)V -HSPLandroid/accounts/AccountManager$2;->recompute(Landroid/accounts/AccountManager$AccountKeyData;)Ljava/lang/String; -HSPLandroid/accounts/AccountManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$4;->bundleToResult(Landroid/os/Bundle;)Ljava/lang/Boolean; -HSPLandroid/accounts/AccountManager$4;->bundleToResult(Landroid/os/Bundle;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$4;->doWork()V -HSPLandroid/accounts/AccountManager$5;-><init>(Landroid/accounts/AccountManager;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/accounts/AccountManager$5;->bundleToResult(Landroid/os/Bundle;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$5;->bundleToResult(Landroid/os/Bundle;)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager$5;->doWork()V -HSPLandroid/accounts/AccountManager$AccountKeyData;-><init>(Landroid/accounts/Account;Ljava/lang/String;)V -HSPLandroid/accounts/AccountManager$AccountKeyData;->equals(Ljava/lang/Object;)Z -HSPLandroid/accounts/AccountManager$AccountKeyData;->hashCode()I -HSPLandroid/accounts/AccountManager$AmsTask$1;-><init>(Landroid/accounts/AccountManager;)V -HSPLandroid/accounts/AccountManager$AmsTask$Response;-><init>(Landroid/accounts/AccountManager$AmsTask;)V -HSPLandroid/accounts/AccountManager$AmsTask$Response;-><init>(Landroid/accounts/AccountManager$AmsTask;Landroid/accounts/AccountManager$AmsTask$Response-IA;)V -HSPLandroid/accounts/AccountManager$AmsTask$Response;->onResult(Landroid/os/Bundle;)V -HSPLandroid/accounts/AccountManager$AmsTask;-><init>(Landroid/accounts/AccountManager;Landroid/app/Activity;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;)V -HSPLandroid/accounts/AccountManager$AmsTask;->done()V -HSPLandroid/accounts/AccountManager$AmsTask;->getResult()Landroid/os/Bundle; -HSPLandroid/accounts/AccountManager$AmsTask;->getResult()Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$AmsTask;->getResult(JLjava/util/concurrent/TimeUnit;)Landroid/os/Bundle; -HSPLandroid/accounts/AccountManager$AmsTask;->getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$AmsTask;->internalGetResult(Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Landroid/os/Bundle; -HSPLandroid/accounts/AccountManager$AmsTask;->set(Landroid/os/Bundle;)V -HSPLandroid/accounts/AccountManager$AmsTask;->start()Landroid/accounts/AccountManagerFuture; -HSPLandroid/accounts/AccountManager$BaseFutureTask$1;-><init>(Landroid/accounts/AccountManager;)V -HSPLandroid/accounts/AccountManager$BaseFutureTask$Response;-><init>(Landroid/accounts/AccountManager$BaseFutureTask;)V -HSPLandroid/accounts/AccountManager$BaseFutureTask$Response;->onResult(Landroid/os/Bundle;)V -HSPLandroid/accounts/AccountManager$BaseFutureTask;-><init>(Landroid/accounts/AccountManager;Landroid/os/Handler;)V -HSPLandroid/accounts/AccountManager$BaseFutureTask;->startTask()V -HSPLandroid/accounts/AccountManager$Future2Task;-><init>(Landroid/accounts/AccountManager;Landroid/os/Handler;Landroid/accounts/AccountManagerCallback;)V -HSPLandroid/accounts/AccountManager$Future2Task;->done()V -HSPLandroid/accounts/AccountManager$Future2Task;->getResult()Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$Future2Task;->internalGetResult(Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLandroid/accounts/AccountManager$Future2Task;->start()Landroid/accounts/AccountManager$Future2Task; -HSPLandroid/accounts/AccountManager;->-$$Nest$fgetmService(Landroid/accounts/AccountManager;)Landroid/accounts/IAccountManager; -HSPLandroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V -HSPLandroid/accounts/AccountManager;->addOnAccountsUpdatedListener(Landroid/accounts/OnAccountsUpdateListener;Landroid/os/Handler;Z)V -HSPLandroid/accounts/AccountManager;->addOnAccountsUpdatedListener(Landroid/accounts/OnAccountsUpdateListener;Landroid/os/Handler;Z[Ljava/lang/String;)V -HSPLandroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String; -HSPLandroid/accounts/AccountManager;->ensureNotOnMainThread()V -HSPLandroid/accounts/AccountManager;->get(Landroid/content/Context;)Landroid/accounts/AccountManager; -HSPLandroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager;->getAccountsAsUser(I)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager;->getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; -HSPLandroid/accounts/AccountManager;->getAccountsByTypeAsUser(Ljava/lang/String;Landroid/os/UserHandle;)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager;->getAccountsByTypeForPackage(Ljava/lang/String;Ljava/lang/String;)[Landroid/accounts/Account; -HSPLandroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; -HSPLandroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; -HSPLandroid/accounts/AccountManager;->getAuthenticatorTypes()[Landroid/accounts/AuthenticatorDescription; -HSPLandroid/accounts/AccountManager;->getAuthenticatorTypesAsUser(I)[Landroid/accounts/AuthenticatorDescription; -HSPLandroid/accounts/AccountManager;->getUserData(Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/accounts/AccountManager;->hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture; -HSPLandroid/accounts/AccountManager;->invalidateAuthToken(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/AccountManager;->removeOnAccountsUpdatedListener(Landroid/accounts/OnAccountsUpdateListener;)V -HSPLandroid/accounts/AccountManager;->setUserData(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/AuthenticatorDescription$1;->createFromParcel(Landroid/os/Parcel;)Landroid/accounts/AuthenticatorDescription; -HSPLandroid/accounts/AuthenticatorDescription$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/accounts/AuthenticatorDescription$1;->newArray(I)[Landroid/accounts/AuthenticatorDescription; -HSPLandroid/accounts/AuthenticatorDescription$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/accounts/AuthenticatorDescription;-><init>(Landroid/os/Parcel;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getAccountsAsUser(Ljava/lang/String;ILjava/lang/String;)[Landroid/accounts/Account; -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getAccountsByFeatures(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getAccountsByTypeForPackage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Landroid/accounts/Account; -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getAuthToken(Landroid/accounts/IAccountManagerResponse;Landroid/accounts/Account;Ljava/lang/String;ZZLandroid/os/Bundle;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getAuthenticatorTypes(I)[Landroid/accounts/AuthenticatorDescription; -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->getUserData(Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->invalidateAuthToken(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->onAccountAccessed(Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->registerAccountListener([Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->setUserData(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub$Proxy;->unregisterAccountListener([Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/accounts/IAccountManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/accounts/IAccountManager; -HSPLandroid/accounts/IAccountManagerResponse$Stub;-><init>()V -HSPLandroid/accounts/IAccountManagerResponse$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/accounts/IAccountManagerResponse$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/accounts/IAccountManagerResponse$Stub;->getMaxTransactionId()I -HSPLandroid/accounts/IAccountManagerResponse$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/accounts/IAccountManagerResponse$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;-><init>(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;->doFrame(J)V -HSPLandroid/animation/AnimationHandler$1;-><init>(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/AnimationHandler$1;->doFrame(J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider;Landroid/animation/AnimationHandler$MyFrameCallbackProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;-><init>(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;->getFrameTime()J -HSPLandroid/animation/AnimationHandler$MyFrameCallbackProvider;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V -HSPLandroid/animation/AnimationHandler;-><init>()V -HSPLandroid/animation/AnimationHandler;->addAnimationFrameCallback(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider;Landroid/animation/AnimationHandler$MyFrameCallbackProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimationHandler;->autoCancelBasedOn(Landroid/animation/ObjectAnimator;)V -HSPLandroid/animation/AnimationHandler;->cleanUpList()V -HSPLandroid/animation/AnimationHandler;->doAnimationFrame(J)V+]Landroid/animation/AnimationHandler$AnimationFrameCallback;Landroid/animation/AnimatorSet;,Landroid/animation/ValueAnimator;,Lcom/android/internal/dynamicanimation/animation/SpringAnimation;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimationHandler;->getAnimationCount()I -HSPLandroid/animation/AnimationHandler;->getInstance()Landroid/animation/AnimationHandler; -HSPLandroid/animation/AnimationHandler;->getProvider()Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider; -HSPLandroid/animation/AnimationHandler;->isCallbackDue(Landroid/animation/AnimationHandler$AnimationFrameCallback;J)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/animation/AnimationHandler;->isPauseBgAnimationsEnabledInSystemProperties()Z -HSPLandroid/animation/AnimationHandler;->removeCallback(Landroid/animation/AnimationHandler$AnimationFrameCallback;)V -HSPLandroid/animation/AnimationHandler;->requestAnimatorsEnabled(ZLjava/lang/Object;)V -HSPLandroid/animation/AnimationHandler;->requestAnimatorsEnabledImpl(ZLjava/lang/Object;)V -HSPLandroid/animation/AnimationHandler;->resumeAnimators()V -HSPLandroid/animation/AnimationHandler;->setAnimatorPausingEnabled(Z)V -HSPLandroid/animation/AnimationHandler;->setProvider(Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider;)V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda0;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda0;->call(Ljava/lang/Object;Ljava/lang/Object;Z)V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda1;->call(Ljava/lang/Object;Ljava/lang/Object;Z)V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda2;->call(Ljava/lang/Object;Ljava/lang/Object;Z)V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda3;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda4;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda5;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda6;-><init>()V -HSPLandroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda6;->call(Ljava/lang/Object;Ljava/lang/Object;Z)V -HSPLandroid/animation/Animator$AnimatorCaller;-><clinit>()V -HSPLandroid/animation/Animator$AnimatorCaller;->lambda$static$0(Landroid/animation/Animator$AnimatorListener;Landroid/animation/Animator;Z)V -HSPLandroid/animation/Animator$AnimatorCaller;->lambda$static$4(Landroid/animation/ValueAnimator$AnimatorUpdateListener;Landroid/animation/ValueAnimator;Z)V -HSPLandroid/animation/Animator$AnimatorConstantState;-><init>(Landroid/animation/Animator;)V -HSPLandroid/animation/Animator$AnimatorConstantState;->getChangingConfigurations()I -HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Landroid/animation/Animator; -HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Ljava/lang/Object; -HSPLandroid/animation/Animator$AnimatorListener;->onAnimationEnd(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types -HSPLandroid/animation/Animator$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types -HSPLandroid/animation/Animator;-><init>()V -HSPLandroid/animation/Animator;->addListener(Landroid/animation/Animator$AnimatorListener;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/Animator;->addPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V -HSPLandroid/animation/Animator;->appendChangingConfigurations(I)V -HSPLandroid/animation/Animator;->callOnList(Ljava/util/ArrayList;Landroid/animation/Animator$AnimatorCaller;Ljava/lang/Object;Z)V+]Landroid/animation/Animator$AnimatorCaller;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; -HSPLandroid/animation/Animator;->clone()Landroid/animation/Animator; -HSPLandroid/animation/Animator;->createConstantState()Landroid/content/res/ConstantState; -HSPLandroid/animation/Animator;->getBackgroundPauseDelay()J -HSPLandroid/animation/Animator;->getChangingConfigurations()I -HSPLandroid/animation/Animator;->getListeners()Ljava/util/ArrayList; -HSPLandroid/animation/Animator;->getStartAndEndTimes(Landroid/util/LongArray;J)V -HSPLandroid/animation/Animator;->notifyEndListeners(Z)V -HSPLandroid/animation/Animator;->notifyListeners(Landroid/animation/Animator$AnimatorCaller;Z)V -HSPLandroid/animation/Animator;->notifyStartListeners(Z)V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/Animator;->pause()V -HSPLandroid/animation/Animator;->removeAllListeners()V -HSPLandroid/animation/Animator;->removeListener(Landroid/animation/Animator$AnimatorListener;)V -HSPLandroid/animation/Animator;->setAllowRunningAsynchronously(Z)V -HSPLandroid/animation/AnimatorInflater$PathDataEvaluator;->evaluate(FLandroid/util/PathParser$PathData;Landroid/util/PathParser$PathData;)Landroid/util/PathParser$PathData; -HSPLandroid/animation/AnimatorInflater$PathDataEvaluator;->evaluate(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/animation/AnimatorInflater;->createAnimatorFromXml(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;F)Landroid/animation/Animator; -HSPLandroid/animation/AnimatorInflater;->createAnimatorFromXml(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/animation/AnimatorSet;IF)Landroid/animation/Animator; -HSPLandroid/animation/AnimatorInflater;->createStateListAnimatorFromXml(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;)Landroid/animation/StateListAnimator; -HSPLandroid/animation/AnimatorInflater;->getChangingConfigs(Landroid/content/res/Resources;I)I -HSPLandroid/animation/AnimatorInflater;->getPVH(Landroid/content/res/TypedArray;IIILjava/lang/String;)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/AnimatorInflater;->inferValueTypeFromValues(Landroid/content/res/TypedArray;II)I -HSPLandroid/animation/AnimatorInflater;->loadAnimator(Landroid/content/Context;I)Landroid/animation/Animator; -HSPLandroid/animation/AnimatorInflater;->loadAnimator(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;IF)Landroid/animation/Animator; -HSPLandroid/animation/AnimatorInflater;->loadAnimator(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Landroid/animation/ValueAnimator;F)Landroid/animation/ValueAnimator; -HSPLandroid/animation/AnimatorInflater;->loadObjectAnimator(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;F)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/AnimatorInflater;->loadStateListAnimator(Landroid/content/Context;I)Landroid/animation/StateListAnimator; -HSPLandroid/animation/AnimatorInflater;->parseAnimatorFromTypeArray(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;F)V -HSPLandroid/animation/AnimatorInflater;->setupObjectAnimator(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;IF)V -HSPLandroid/animation/AnimatorListenerAdapter;-><init>()V -HSPLandroid/animation/AnimatorListenerAdapter;->onAnimationCancel(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorListenerAdapter;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorListenerAdapter;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet$1;-><init>(Landroid/animation/AnimatorSet;)V -HSPLandroid/animation/AnimatorSet$1;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet$2;-><init>(Landroid/animation/AnimatorSet;Landroid/animation/AnimatorSet;)V -HSPLandroid/animation/AnimatorSet$2;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet$3;-><init>(Landroid/animation/AnimatorSet;)V -HSPLandroid/animation/AnimatorSet$3;->compare(Landroid/animation/AnimatorSet$AnimationEvent;Landroid/animation/AnimatorSet$AnimationEvent;)I -HSPLandroid/animation/AnimatorSet$3;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/animation/AnimatorSet$AnimationEvent;-><init>(Landroid/animation/AnimatorSet$Node;I)V -HSPLandroid/animation/AnimatorSet$AnimationEvent;->getTime()J -HSPLandroid/animation/AnimatorSet$Builder;-><init>(Landroid/animation/AnimatorSet;Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet$Builder;->after(Landroid/animation/Animator;)Landroid/animation/AnimatorSet$Builder; -HSPLandroid/animation/AnimatorSet$Builder;->before(Landroid/animation/Animator;)Landroid/animation/AnimatorSet$Builder; -HSPLandroid/animation/AnimatorSet$Builder;->with(Landroid/animation/Animator;)Landroid/animation/AnimatorSet$Builder; -HSPLandroid/animation/AnimatorSet$Node;-><init>(Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet$Node;->addChild(Landroid/animation/AnimatorSet$Node;)V -HSPLandroid/animation/AnimatorSet$Node;->addParent(Landroid/animation/AnimatorSet$Node;)V -HSPLandroid/animation/AnimatorSet$Node;->addParents(Ljava/util/ArrayList;)V -HSPLandroid/animation/AnimatorSet$Node;->addSibling(Landroid/animation/AnimatorSet$Node;)V -HSPLandroid/animation/AnimatorSet$Node;->clone()Landroid/animation/AnimatorSet$Node;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/AnimatorSet$SeekState;-><init>(Landroid/animation/AnimatorSet;)V -HSPLandroid/animation/AnimatorSet$SeekState;->getPlayTimeNormalized()J -HSPLandroid/animation/AnimatorSet$SeekState;->isActive()Z -HSPLandroid/animation/AnimatorSet$SeekState;->reset()V -HSPLandroid/animation/AnimatorSet;-><init>()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->addAnimationCallback(J)V -HSPLandroid/animation/AnimatorSet;->addAnimationEndListener()V -HSPLandroid/animation/AnimatorSet;->cancel()V -HSPLandroid/animation/AnimatorSet;->clone()Landroid/animation/Animator; -HSPLandroid/animation/AnimatorSet;->clone()Landroid/animation/AnimatorSet;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator;]Landroid/animation/AnimatorSet$Node;Landroid/animation/AnimatorSet$Node;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/AnimatorSet;->createDependencyGraph()V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator;]Landroid/animation/AnimatorSet$AnimationEvent;Landroid/animation/AnimatorSet$AnimationEvent;]Landroid/animation/AnimatorSet$Node;Landroid/animation/AnimatorSet$Node;]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->doAnimationFrame(J)Z+]Landroid/animation/AnimatorSet$SeekState;Landroid/animation/AnimatorSet$SeekState;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->end()V -HSPLandroid/animation/AnimatorSet;->endAnimation()V -HSPLandroid/animation/AnimatorSet;->ensureChildStartAndEndTimes()[J -HSPLandroid/animation/AnimatorSet;->findLatestEventIdForTime(J)I -HSPLandroid/animation/AnimatorSet;->findNextIndex(J[J)I -HSPLandroid/animation/AnimatorSet;->findSiblings(Landroid/animation/AnimatorSet$Node;Ljava/util/ArrayList;)V -HSPLandroid/animation/AnimatorSet;->getChangingConfigurations()I -HSPLandroid/animation/AnimatorSet;->getChildAnimations()Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->getNodeForAnimation(Landroid/animation/Animator;)Landroid/animation/AnimatorSet$Node; -HSPLandroid/animation/AnimatorSet;->getStartAndEndTimes(Landroid/util/LongArray;J)V -HSPLandroid/animation/AnimatorSet;->getStartDelay()J -HSPLandroid/animation/AnimatorSet;->getTotalDuration()J -HSPLandroid/animation/AnimatorSet;->handleAnimationEvents(IIJ)V -HSPLandroid/animation/AnimatorSet;->initAnimation()V -HSPLandroid/animation/AnimatorSet;->initChildren()V -HSPLandroid/animation/AnimatorSet;->isEmptySet(Landroid/animation/AnimatorSet;)Z -HSPLandroid/animation/AnimatorSet;->isInitialized()Z -HSPLandroid/animation/AnimatorSet;->isRunning()Z -HSPLandroid/animation/AnimatorSet;->isStarted()Z -HSPLandroid/animation/AnimatorSet;->play(Landroid/animation/Animator;)Landroid/animation/AnimatorSet$Builder; -HSPLandroid/animation/AnimatorSet;->playSequentially([Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet;->playTogether(Ljava/util/Collection;)V -HSPLandroid/animation/AnimatorSet;->playTogether([Landroid/animation/Animator;)V -HSPLandroid/animation/AnimatorSet;->pulseAnimationFrame(J)Z -HSPLandroid/animation/AnimatorSet;->pulseFrame(Landroid/animation/AnimatorSet$Node;J)V -HSPLandroid/animation/AnimatorSet;->removeAnimationCallback()V -HSPLandroid/animation/AnimatorSet;->removeAnimationEndListener()V -HSPLandroid/animation/AnimatorSet;->setDuration(J)Landroid/animation/Animator; -HSPLandroid/animation/AnimatorSet;->setDuration(J)Landroid/animation/AnimatorSet; -HSPLandroid/animation/AnimatorSet;->setInterpolator(Landroid/animation/TimeInterpolator;)V -HSPLandroid/animation/AnimatorSet;->setStartDelay(J)V -HSPLandroid/animation/AnimatorSet;->setTarget(Ljava/lang/Object;)V -HSPLandroid/animation/AnimatorSet;->shouldPlayTogether()Z -HSPLandroid/animation/AnimatorSet;->skipToEndValue(Z)V -HSPLandroid/animation/AnimatorSet;->sortAnimationEvents()V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/AnimatorSet;->start()V -HSPLandroid/animation/AnimatorSet;->start(ZZ)V -HSPLandroid/animation/AnimatorSet;->startAnimation()V -HSPLandroid/animation/AnimatorSet;->startWithoutPulsing(Z)V -HSPLandroid/animation/AnimatorSet;->updateAnimatorsDuration()V -HSPLandroid/animation/AnimatorSet;->updatePlayTime(Landroid/animation/AnimatorSet$Node;Ljava/util/ArrayList;)V -HSPLandroid/animation/ArgbEvaluator;-><init>()V -HSPLandroid/animation/ArgbEvaluator;->evaluate(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLandroid/animation/ArgbEvaluator;->getInstance()Landroid/animation/ArgbEvaluator; -HSPLandroid/animation/FloatKeyframeSet;-><init>([Landroid/animation/Keyframe$FloatKeyframe;)V -HSPLandroid/animation/FloatKeyframeSet;->clone()Landroid/animation/FloatKeyframeSet; -HSPLandroid/animation/FloatKeyframeSet;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/FloatKeyframeSet;->getFloatValue(F)F+]Landroid/animation/Keyframe$FloatKeyframe;Landroid/animation/Keyframe$FloatKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/FloatKeyframeSet;->getValue(F)Ljava/lang/Object; -HSPLandroid/animation/IntKeyframeSet;-><init>([Landroid/animation/Keyframe$IntKeyframe;)V -HSPLandroid/animation/IntKeyframeSet;->clone()Landroid/animation/IntKeyframeSet;+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/IntKeyframeSet;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/IntKeyframeSet;->getIntValue(F)I+]Landroid/animation/Keyframe$IntKeyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/Keyframe$FloatKeyframe;-><init>(F)V -HSPLandroid/animation/Keyframe$FloatKeyframe;-><init>(FF)V -HSPLandroid/animation/Keyframe$FloatKeyframe;->clone()Landroid/animation/Keyframe$FloatKeyframe;+]Landroid/animation/Keyframe$FloatKeyframe;Landroid/animation/Keyframe$FloatKeyframe; -HSPLandroid/animation/Keyframe$FloatKeyframe;->clone()Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe$FloatKeyframe;->getFloatValue()F -HSPLandroid/animation/Keyframe$FloatKeyframe;->getValue()Ljava/lang/Object; -HSPLandroid/animation/Keyframe$FloatKeyframe;->setValue(Ljava/lang/Object;)V -HSPLandroid/animation/Keyframe$IntKeyframe;-><init>(FI)V -HSPLandroid/animation/Keyframe$IntKeyframe;->clone()Landroid/animation/Keyframe$IntKeyframe;+]Landroid/animation/Keyframe$IntKeyframe;Landroid/animation/Keyframe$IntKeyframe; -HSPLandroid/animation/Keyframe$IntKeyframe;->clone()Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe$IntKeyframe;->getIntValue()I -HSPLandroid/animation/Keyframe$IntKeyframe;->getValue()Ljava/lang/Object; -HSPLandroid/animation/Keyframe$IntKeyframe;->setValue(Ljava/lang/Object;)V+]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Object;Ljava/lang/Integer; -HSPLandroid/animation/Keyframe$ObjectKeyframe;-><init>(FLjava/lang/Object;)V -HSPLandroid/animation/Keyframe$ObjectKeyframe;->clone()Landroid/animation/Keyframe$ObjectKeyframe; -HSPLandroid/animation/Keyframe$ObjectKeyframe;->clone()Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe$ObjectKeyframe;->getValue()Ljava/lang/Object; -HSPLandroid/animation/Keyframe;-><init>()V -HSPLandroid/animation/Keyframe;->getFraction()F -HSPLandroid/animation/Keyframe;->getInterpolator()Landroid/animation/TimeInterpolator; -HSPLandroid/animation/Keyframe;->hasValue()Z -HSPLandroid/animation/Keyframe;->ofFloat(F)Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe;->ofFloat(FF)Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe;->ofInt(FI)Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe;->ofObject(FLjava/lang/Object;)Landroid/animation/Keyframe; -HSPLandroid/animation/Keyframe;->setInterpolator(Landroid/animation/TimeInterpolator;)V -HSPLandroid/animation/Keyframe;->setValueWasSetOnStart(Z)V -HSPLandroid/animation/Keyframe;->valueWasSetOnStart()Z -HSPLandroid/animation/KeyframeSet;-><init>([Landroid/animation/Keyframe;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$FloatKeyframe;,Landroid/animation/Keyframe$IntKeyframe;,Landroid/animation/Keyframe$ObjectKeyframe; -HSPLandroid/animation/KeyframeSet;->clone()Landroid/animation/KeyframeSet; -HSPLandroid/animation/KeyframeSet;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/KeyframeSet;->getKeyframes()Ljava/util/List; -HSPLandroid/animation/KeyframeSet;->getValue(F)Ljava/lang/Object;+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$ObjectKeyframe;]Landroid/animation/TypeEvaluator;Landroid/animation/ArgbEvaluator; -HSPLandroid/animation/KeyframeSet;->ofFloat([F)Landroid/animation/KeyframeSet; -HSPLandroid/animation/KeyframeSet;->ofInt([I)Landroid/animation/KeyframeSet; -HSPLandroid/animation/KeyframeSet;->ofObject([Ljava/lang/Object;)Landroid/animation/KeyframeSet; -HSPLandroid/animation/KeyframeSet;->setEvaluator(Landroid/animation/TypeEvaluator;)V -HSPLandroid/animation/LayoutTransition$1;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$2;->onLayoutChange(Landroid/view/View;IIIIIIII)V+]Landroid/animation/Animator;Landroid/animation/ObjectAnimator;]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/lang/Object;Ljava/lang/Integer;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap; -HSPLandroid/animation/LayoutTransition$3;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$3;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$4;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$5;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition$CleanupCallback;->cleanup()V -HSPLandroid/animation/LayoutTransition$CleanupCallback;->onPreDraw()Z -HSPLandroid/animation/LayoutTransition;-><init>()V -HSPLandroid/animation/LayoutTransition;->addChild(Landroid/view/ViewGroup;Landroid/view/View;)V -HSPLandroid/animation/LayoutTransition;->addChild(Landroid/view/ViewGroup;Landroid/view/View;Z)V -HSPLandroid/animation/LayoutTransition;->addTransitionListener(Landroid/animation/LayoutTransition$TransitionListener;)V -HSPLandroid/animation/LayoutTransition;->cancel()V -HSPLandroid/animation/LayoutTransition;->cancel(I)V -HSPLandroid/animation/LayoutTransition;->disableTransitionType(I)V -HSPLandroid/animation/LayoutTransition;->hideChild(Landroid/view/ViewGroup;Landroid/view/View;I)V -HSPLandroid/animation/LayoutTransition;->isChangingLayout()Z -HSPLandroid/animation/LayoutTransition;->layoutChange(Landroid/view/ViewGroup;)V -HSPLandroid/animation/LayoutTransition;->removeChild(Landroid/view/ViewGroup;Landroid/view/View;)V -HSPLandroid/animation/LayoutTransition;->removeChild(Landroid/view/ViewGroup;Landroid/view/View;Z)V -HSPLandroid/animation/LayoutTransition;->removeTransitionListener(Landroid/animation/LayoutTransition$TransitionListener;)V -HSPLandroid/animation/LayoutTransition;->runAppearingTransition(Landroid/view/ViewGroup;Landroid/view/View;)V -HSPLandroid/animation/LayoutTransition;->runChangeTransition(Landroid/view/ViewGroup;Landroid/view/View;I)V -HSPLandroid/animation/LayoutTransition;->runDisappearingTransition(Landroid/view/ViewGroup;Landroid/view/View;)V -HSPLandroid/animation/LayoutTransition;->setAnimateParentHierarchy(Z)V -HSPLandroid/animation/LayoutTransition;->setAnimator(ILandroid/animation/Animator;)V -HSPLandroid/animation/LayoutTransition;->setDuration(J)V -HSPLandroid/animation/LayoutTransition;->setInterpolator(ILandroid/animation/TimeInterpolator;)V -HSPLandroid/animation/LayoutTransition;->setStartDelay(IJ)V -HSPLandroid/animation/LayoutTransition;->setupChangeAnimation(Landroid/view/ViewGroup;ILandroid/animation/Animator;JLandroid/view/View;)V+]Landroid/animation/Animator;Landroid/animation/ObjectAnimator;]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/view/View;missing_types]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/LayoutTransition;->showChild(Landroid/view/ViewGroup;Landroid/view/View;I)V -HSPLandroid/animation/LayoutTransition;->startChangingAnimations()V -HSPLandroid/animation/ObjectAnimator;-><init>()V -HSPLandroid/animation/ObjectAnimator;-><init>(Ljava/lang/Object;Landroid/util/Property;)V -HSPLandroid/animation/ObjectAnimator;-><init>(Ljava/lang/Object;Ljava/lang/String;)V -HSPLandroid/animation/ObjectAnimator;->animateValue(F)V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/ObjectAnimator;->clone()Landroid/animation/Animator; -HSPLandroid/animation/ObjectAnimator;->clone()Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->getNameForTrace()Ljava/lang/String;+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/animation/ObjectAnimator;->getPropertyName()Ljava/lang/String;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/animation/ObjectAnimator;->getTarget()Ljava/lang/Object;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/animation/ObjectAnimator;->hasSameTargetAndProperties(Landroid/animation/Animator;)Z -HSPLandroid/animation/ObjectAnimator;->initAnimation()V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/ObjectAnimator;->isInitialized()Z -HSPLandroid/animation/ObjectAnimator;->ofFloat(Ljava/lang/Object;Landroid/util/Property;[F)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofFloat(Ljava/lang/Object;Ljava/lang/String;[F)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofInt(Ljava/lang/Object;Landroid/util/Property;[I)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofInt(Ljava/lang/Object;Ljava/lang/String;[I)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofObject(Ljava/lang/Object;Landroid/util/Property;Landroid/animation/TypeConverter;Landroid/graphics/Path;)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofObject(Ljava/lang/Object;Landroid/util/Property;Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->ofPropertyValuesHolder(Ljava/lang/Object;[Landroid/animation/PropertyValuesHolder;)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->setAutoCancel(Z)V -HSPLandroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/Animator; -HSPLandroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/ValueAnimator; -HSPLandroid/animation/ObjectAnimator;->setFloatValues([F)V -HSPLandroid/animation/ObjectAnimator;->setIntValues([I)V -HSPLandroid/animation/ObjectAnimator;->setObjectValues([Ljava/lang/Object;)V -HSPLandroid/animation/ObjectAnimator;->setProperty(Landroid/util/Property;)V -HSPLandroid/animation/ObjectAnimator;->setPropertyName(Ljava/lang/String;)V -HSPLandroid/animation/ObjectAnimator;->setTarget(Ljava/lang/Object;)V+]Landroid/animation/ObjectAnimator;Landroid/animation/ObjectAnimator; -HSPLandroid/animation/ObjectAnimator;->setupEndValues()V -HSPLandroid/animation/ObjectAnimator;->setupStartValues()V -HSPLandroid/animation/ObjectAnimator;->shouldAutoCancel(Landroid/animation/AnimationHandler$AnimationFrameCallback;)Z -HSPLandroid/animation/ObjectAnimator;->start()V -HSPLandroid/animation/PathKeyframes$1;->getFloatValue(F)F -HSPLandroid/animation/PathKeyframes$2;->getFloatValue(F)F -HSPLandroid/animation/PathKeyframes$FloatKeyframesBase;->getValue(F)Ljava/lang/Object; -HSPLandroid/animation/PathKeyframes$SimpleKeyframes;->clone()Landroid/animation/Keyframes; -HSPLandroid/animation/PathKeyframes;-><init>(Landroid/graphics/Path;F)V -HSPLandroid/animation/PathKeyframes;->getKeyframes()Ljava/util/ArrayList; -HSPLandroid/animation/PathKeyframes;->getKeyframes()Ljava/util/List; -HSPLandroid/animation/PathKeyframes;->getValue(F)Ljava/lang/Object; -HSPLandroid/animation/PathKeyframes;->interpolateInRange(FII)Landroid/graphics/PointF; -HSPLandroid/animation/PropertyValuesHolder$1;->getValueAtFraction(F)Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;-><init>(Landroid/util/Property;[F)V -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;-><init>(Ljava/lang/String;[F)V -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->calculateValue(F)V+]Landroid/animation/Keyframes$FloatKeyframes;Landroid/animation/FloatKeyframeSet; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V+]Landroid/util/FloatProperty;Landroid/view/View$12;,Landroid/view/View$13;]Landroid/util/Property;missing_types -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setFloatValues([F)V -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setProperty(Landroid/util/Property;)V -HSPLandroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;->setupSetter(Ljava/lang/Class;)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;-><init>(Ljava/lang/String;[I)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->calculateValue(F)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder;+]Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setIntValues([I)V -HSPLandroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;->setupSetter(Ljava/lang/Class;)V+]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/PropertyValuesHolder$PropertyValues;-><init>()V -HSPLandroid/animation/PropertyValuesHolder;-><init>(Landroid/util/Property;)V -HSPLandroid/animation/PropertyValuesHolder;-><init>(Ljava/lang/String;)V -HSPLandroid/animation/PropertyValuesHolder;-><init>(Ljava/lang/String;Landroid/animation/PropertyValuesHolder-IA;)V -HSPLandroid/animation/PropertyValuesHolder;->calculateValue(F)V -HSPLandroid/animation/PropertyValuesHolder;->clone()Landroid/animation/PropertyValuesHolder;+]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;,Landroid/animation/IntKeyframeSet;,Landroid/animation/KeyframeSet; -HSPLandroid/animation/PropertyValuesHolder;->convertBack(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder;->getAnimatedValue()Ljava/lang/Object; -HSPLandroid/animation/PropertyValuesHolder;->getMethodName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/animation/PropertyValuesHolder;->getPropertyFunction(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLandroid/animation/PropertyValuesHolder;->getPropertyName()Ljava/lang/String; -HSPLandroid/animation/PropertyValuesHolder;->getPropertyValues(Landroid/animation/PropertyValuesHolder$PropertyValues;)V+]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->getValueType()Ljava/lang/Class; -HSPLandroid/animation/PropertyValuesHolder;->init()V+]Landroid/animation/Keyframes;Landroid/animation/KeyframeSet; -HSPLandroid/animation/PropertyValuesHolder;->ofFloat(Landroid/util/Property;[F)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder;->ofInt(Ljava/lang/String;[I)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder;->ofKeyframes(Ljava/lang/String;Landroid/animation/Keyframes;)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder;->ofObject(Ljava/lang/String;Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/PropertyValuesHolder;->setAnimatedValue(Ljava/lang/Object;)V -HSPLandroid/animation/PropertyValuesHolder;->setEvaluator(Landroid/animation/TypeEvaluator;)V -HSPLandroid/animation/PropertyValuesHolder;->setFloatValues([F)V -HSPLandroid/animation/PropertyValuesHolder;->setIntValues([I)V -HSPLandroid/animation/PropertyValuesHolder;->setObjectValues([Ljava/lang/Object;)V -HSPLandroid/animation/PropertyValuesHolder;->setProperty(Landroid/util/Property;)V -HSPLandroid/animation/PropertyValuesHolder;->setPropertyName(Ljava/lang/String;)V -HSPLandroid/animation/PropertyValuesHolder;->setupEndValue(Ljava/lang/Object;)V+]Landroid/animation/Keyframes;Landroid/animation/IntKeyframeSet;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->setupGetter(Ljava/lang/Class;)V -HSPLandroid/animation/PropertyValuesHolder;->setupSetterAndGetter(Ljava/lang/Object;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$FloatKeyframe;,Landroid/animation/Keyframe$IntKeyframe;,Landroid/animation/Keyframe$ObjectKeyframe;]Landroid/animation/Keyframes;Landroid/animation/FloatKeyframeSet;,Landroid/animation/IntKeyframeSet;,Landroid/animation/KeyframeSet;]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;]Ljava/lang/Object;missing_types]Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->setupSetterOrGetter(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;+]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/PropertyValuesHolder;->setupStartValue(Ljava/lang/Object;)V+]Landroid/animation/Keyframes;Landroid/animation/IntKeyframeSet;]Ljava/util/List;Ljava/util/Arrays$ArrayList; -HSPLandroid/animation/PropertyValuesHolder;->setupValue(Ljava/lang/Object;Landroid/animation/Keyframe;)V+]Landroid/animation/Keyframe;Landroid/animation/Keyframe$IntKeyframe;]Ljava/lang/Object;missing_types]Ljava/lang/reflect/Method;Ljava/lang/reflect/Method; -HSPLandroid/animation/StateListAnimator$1;-><init>(Landroid/animation/StateListAnimator;)V -HSPLandroid/animation/StateListAnimator$1;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;-><init>(Landroid/animation/StateListAnimator;)V -HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;->newInstance()Landroid/animation/StateListAnimator; -HSPLandroid/animation/StateListAnimator$StateListAnimatorConstantState;->newInstance()Ljava/lang/Object; -HSPLandroid/animation/StateListAnimator$Tuple;-><init>([ILandroid/animation/Animator;)V -HSPLandroid/animation/StateListAnimator;-><init>()V -HSPLandroid/animation/StateListAnimator;->addState([ILandroid/animation/Animator;)V+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/StateListAnimator;->appendChangingConfigurations(I)V -HSPLandroid/animation/StateListAnimator;->clearTarget()V -HSPLandroid/animation/StateListAnimator;->clone()Landroid/animation/StateListAnimator;+]Landroid/animation/Animator;Landroid/animation/AnimatorSet;,Landroid/animation/ObjectAnimator;]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/animation/StateListAnimator;->createConstantState()Landroid/content/res/ConstantState; -HSPLandroid/animation/StateListAnimator;->getChangingConfigurations()I -HSPLandroid/animation/StateListAnimator;->getTarget()Landroid/view/View; -HSPLandroid/animation/StateListAnimator;->initAnimatorListener()V -HSPLandroid/animation/StateListAnimator;->jumpToCurrentState()V -HSPLandroid/animation/StateListAnimator;->setChangingConfigurations(I)V -HSPLandroid/animation/StateListAnimator;->setState([I)V -HSPLandroid/animation/StateListAnimator;->setTarget(Landroid/view/View;)V -HSPLandroid/animation/StateListAnimator;->start(Landroid/animation/StateListAnimator$Tuple;)V -HSPLandroid/animation/TimeAnimator;-><init>()V -HSPLandroid/animation/TimeAnimator;->setTimeListener(Landroid/animation/TimeAnimator$TimeListener;)V -HSPLandroid/animation/ValueAnimator;-><init>()V -HSPLandroid/animation/ValueAnimator;->addAnimationCallback(J)V -HSPLandroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V -HSPLandroid/animation/ValueAnimator;->animateBasedOnTime(J)Z+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->animateValue(F)V+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Landroid/animation/TimeInterpolator;missing_types]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->areAnimatorsEnabled()Z -HSPLandroid/animation/ValueAnimator;->cancel()V -HSPLandroid/animation/ValueAnimator;->clampFraction(F)F -HSPLandroid/animation/ValueAnimator;->clone()Landroid/animation/Animator; -HSPLandroid/animation/ValueAnimator;->clone()Landroid/animation/ValueAnimator;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/ValueAnimator;->doAnimationFrame(J)Z+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->end()V -HSPLandroid/animation/ValueAnimator;->endAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->getAnimatedFraction()F -HSPLandroid/animation/ValueAnimator;->getAnimatedValue()Ljava/lang/Object;+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/ValueAnimator;->getAnimationHandler()Landroid/animation/AnimationHandler; -HSPLandroid/animation/ValueAnimator;->getCurrentAnimationsCount()I -HSPLandroid/animation/ValueAnimator;->getCurrentIteration(F)I -HSPLandroid/animation/ValueAnimator;->getCurrentIterationFraction(FZ)F -HSPLandroid/animation/ValueAnimator;->getCurrentPlayTime()J -HSPLandroid/animation/ValueAnimator;->getDuration()J -HSPLandroid/animation/ValueAnimator;->getDurationScale()F -HSPLandroid/animation/ValueAnimator;->getInterpolator()Landroid/animation/TimeInterpolator; -HSPLandroid/animation/ValueAnimator;->getNameForTrace()Ljava/lang/String; -HSPLandroid/animation/ValueAnimator;->getRepeatCount()I -HSPLandroid/animation/ValueAnimator;->getRepeatMode()I -HSPLandroid/animation/ValueAnimator;->getScaledDuration()J -HSPLandroid/animation/ValueAnimator;->getStartDelay()J -HSPLandroid/animation/ValueAnimator;->getTotalDuration()J -HSPLandroid/animation/ValueAnimator;->getValues()[Landroid/animation/PropertyValuesHolder; -HSPLandroid/animation/ValueAnimator;->initAnimation()V -HSPLandroid/animation/ValueAnimator;->isInitialized()Z -HSPLandroid/animation/ValueAnimator;->isPulsingInternal()Z -HSPLandroid/animation/ValueAnimator;->isRunning()Z -HSPLandroid/animation/ValueAnimator;->isStarted()Z -HSPLandroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->ofInt([I)Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->ofObject(Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->pause()V -HSPLandroid/animation/ValueAnimator;->pulseAnimationFrame(J)Z -HSPLandroid/animation/ValueAnimator;->removeAllUpdateListeners()V -HSPLandroid/animation/ValueAnimator;->removeAnimationCallback()V -HSPLandroid/animation/ValueAnimator;->resolveDurationScale()F -HSPLandroid/animation/ValueAnimator;->setAllowRunningAsynchronously(Z)V -HSPLandroid/animation/ValueAnimator;->setAnimationHandler(Landroid/animation/AnimationHandler;)V -HSPLandroid/animation/ValueAnimator;->setCurrentFraction(F)V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->setCurrentPlayTime(J)V -HSPLandroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/Animator; -HSPLandroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->setDurationScale(F)V -HSPLandroid/animation/ValueAnimator;->setEvaluator(Landroid/animation/TypeEvaluator;)V -HSPLandroid/animation/ValueAnimator;->setFloatValues([F)V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->setIntValues([I)V -HSPLandroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V -HSPLandroid/animation/ValueAnimator;->setObjectValues([Ljava/lang/Object;)V -HSPLandroid/animation/ValueAnimator;->setRepeatCount(I)V -HSPLandroid/animation/ValueAnimator;->setRepeatMode(I)V -HSPLandroid/animation/ValueAnimator;->setStartDelay(J)V -HSPLandroid/animation/ValueAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V+]Landroid/animation/PropertyValuesHolder;Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;,Landroid/animation/PropertyValuesHolder;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/animation/ValueAnimator;->shouldPlayBackward(IZ)Z -HSPLandroid/animation/ValueAnimator;->skipToEndValue(Z)V -HSPLandroid/animation/ValueAnimator;->start()V -HSPLandroid/animation/ValueAnimator;->start(Z)V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->startAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ObjectAnimator;,Landroid/animation/ValueAnimator; -HSPLandroid/animation/ValueAnimator;->startWithoutPulsing(Z)V -HSPLandroid/app/Activity$1;-><init>(Landroid/app/Activity;)V -HSPLandroid/app/Activity$1;->isTaskRoot()Z -HSPLandroid/app/Activity$1;->updateNavigationBarColor(I)V -HSPLandroid/app/Activity$1;->updateStatusBarColor(I)V -HSPLandroid/app/Activity$HostCallbacks;-><init>(Landroid/app/Activity;)V -HSPLandroid/app/Activity$HostCallbacks;->onAttachFragment(Landroid/app/Fragment;)V -HSPLandroid/app/Activity$HostCallbacks;->onGetLayoutInflater()Landroid/view/LayoutInflater; -HSPLandroid/app/Activity$HostCallbacks;->onUseFragmentManagerInflaterFactory()Z -HSPLandroid/app/Activity;-><init>()V -HSPLandroid/app/Activity;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Landroid/app/Instrumentation;Landroid/os/IBinder;ILandroid/app/Application;Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Ljava/lang/CharSequence;Landroid/app/Activity;Ljava/lang/String;Landroid/app/Activity$NonConfigurationInstances;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;Landroid/os/IBinder;Landroid/os/IBinder;)V -HSPLandroid/app/Activity;->attachBaseContext(Landroid/content/Context;)V -HSPLandroid/app/Activity;->cancelInputsAndStartExitTransition(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->collectActivityLifecycleCallbacks()[Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/app/Activity;->dispatchActivityCreated(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->dispatchActivityPostCreated(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->dispatchActivityPostResumed()V -HSPLandroid/app/Activity;->dispatchActivityPostStarted()V -HSPLandroid/app/Activity;->dispatchActivityPreCreated(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->dispatchActivityPreResumed()V -HSPLandroid/app/Activity;->dispatchActivityPreStarted()V -HSPLandroid/app/Activity;->dispatchActivityResult(Ljava/lang/String;IILandroid/content/Intent;Ljava/lang/String;)V -HSPLandroid/app/Activity;->dispatchActivityResumed()V -HSPLandroid/app/Activity;->dispatchActivityStarted()V -HSPLandroid/app/Activity;->dispatchEnterAnimationComplete()V -HSPLandroid/app/Activity;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLandroid/app/Activity;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/app/Activity;->findViewById(I)Landroid/view/View; -HSPLandroid/app/Activity;->finish()V -HSPLandroid/app/Activity;->finish(I)V -HSPLandroid/app/Activity;->finishAfterTransition()V -HSPLandroid/app/Activity;->getActivityToken()Landroid/os/IBinder; -HSPLandroid/app/Activity;->getApplication()Landroid/app/Application; -HSPLandroid/app/Activity;->getAutofillClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/app/Activity;->getAutofillClientController()Landroid/view/autofill/AutofillClientController; -HSPLandroid/app/Activity;->getCallingActivity()Landroid/content/ComponentName; -HSPLandroid/app/Activity;->getComponentName()Landroid/content/ComponentName; -HSPLandroid/app/Activity;->getContentCaptureManager()Landroid/view/contentcapture/ContentCaptureManager; -HSPLandroid/app/Activity;->getContentCaptureTypeAsString(I)Ljava/lang/String; -HSPLandroid/app/Activity;->getCurrentFocus()Landroid/view/View; -HSPLandroid/app/Activity;->getFragmentManager()Landroid/app/FragmentManager; -HSPLandroid/app/Activity;->getIntent()Landroid/content/Intent; -HSPLandroid/app/Activity;->getLastNonConfigurationInstance()Ljava/lang/Object; -HSPLandroid/app/Activity;->getLayoutInflater()Landroid/view/LayoutInflater; -HSPLandroid/app/Activity;->getNextAutofillId()I -HSPLandroid/app/Activity;->getOnBackInvokedDispatcher()Landroid/window/OnBackInvokedDispatcher; -HSPLandroid/app/Activity;->getReferrer()Landroid/net/Uri; -HSPLandroid/app/Activity;->getRequestedOrientation()I -HSPLandroid/app/Activity;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/app/Activity;->getTaskId()I -HSPLandroid/app/Activity;->getTitle()Ljava/lang/CharSequence; -HSPLandroid/app/Activity;->getTitleColor()I -HSPLandroid/app/Activity;->getVolumeControlStream()I -HSPLandroid/app/Activity;->getWindow()Landroid/view/Window; -HSPLandroid/app/Activity;->getWindowManager()Landroid/view/WindowManager; -HSPLandroid/app/Activity;->initWindowDecorActionBar()V -HSPLandroid/app/Activity;->isChangingConfigurations()Z -HSPLandroid/app/Activity;->isChild()Z -HSPLandroid/app/Activity;->isDestroyed()Z -HSPLandroid/app/Activity;->isFinishing()Z -HSPLandroid/app/Activity;->isInMultiWindowMode()Z -HSPLandroid/app/Activity;->isResumed()Z -HSPLandroid/app/Activity;->isTaskRoot()Z -HSPLandroid/app/Activity;->makeVisible()V -HSPLandroid/app/Activity;->notifyContentCaptureManagerIfNeeded(I)V -HSPLandroid/app/Activity;->notifyVoiceInteractionManagerServiceActivityEvent(I)V -HSPLandroid/app/Activity;->onApplyThemeResource(Landroid/content/res/Resources$Theme;IZ)V -HSPLandroid/app/Activity;->onAttachFragment(Landroid/app/Fragment;)V -HSPLandroid/app/Activity;->onAttachedToWindow()V -HSPLandroid/app/Activity;->onBackPressed()V -HSPLandroid/app/Activity;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/Activity;->onContentChanged()V -HSPLandroid/app/Activity;->onCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->onCreateDescription()Ljava/lang/CharSequence; -HSPLandroid/app/Activity;->onCreateOptionsMenu(Landroid/view/Menu;)Z -HSPLandroid/app/Activity;->onCreatePanelMenu(ILandroid/view/Menu;)Z -HSPLandroid/app/Activity;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View;+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/app/Activity;->onCreateView(Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/app/Activity;->onDestroy()V -HSPLandroid/app/Activity;->onDetachedFromWindow()V -HSPLandroid/app/Activity;->onEnterAnimationComplete()V -HSPLandroid/app/Activity;->onKeyDown(ILandroid/view/KeyEvent;)Z -HSPLandroid/app/Activity;->onKeyUp(ILandroid/view/KeyEvent;)Z -HSPLandroid/app/Activity;->onLowMemory()V -HSPLandroid/app/Activity;->onMenuItemSelected(ILandroid/view/MenuItem;)Z -HSPLandroid/app/Activity;->onNewIntent(Landroid/content/Intent;)V -HSPLandroid/app/Activity;->onPause()V -HSPLandroid/app/Activity;->onPictureInPictureRequested()Z -HSPLandroid/app/Activity;->onPostCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->onPostResume()V -HSPLandroid/app/Activity;->onPrepareOptionsMenu(Landroid/view/Menu;)Z -HSPLandroid/app/Activity;->onPreparePanel(ILandroid/view/View;Landroid/view/Menu;)Z -HSPLandroid/app/Activity;->onProvideReferrer()Landroid/net/Uri; -HSPLandroid/app/Activity;->onRestart()V -HSPLandroid/app/Activity;->onRestoreInstanceState(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->onResume()V -HSPLandroid/app/Activity;->onRetainNonConfigurationChildInstances()Ljava/util/HashMap; -HSPLandroid/app/Activity;->onSaveInstanceState(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->onStart()V -HSPLandroid/app/Activity;->onStateNotSaved()V -HSPLandroid/app/Activity;->onStop()V -HSPLandroid/app/Activity;->onTitleChanged(Ljava/lang/CharSequence;I)V -HSPLandroid/app/Activity;->onTopResumedActivityChanged(Z)V -HSPLandroid/app/Activity;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/app/Activity;->onTrimMemory(I)V -HSPLandroid/app/Activity;->onUserInteraction()V -HSPLandroid/app/Activity;->onUserLeaveHint()V -HSPLandroid/app/Activity;->onWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/app/Activity;->onWindowFocusChanged(Z)V -HSPLandroid/app/Activity;->overridePendingTransition(II)V -HSPLandroid/app/Activity;->overridePendingTransition(III)V -HSPLandroid/app/Activity;->performCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->performCreate(Landroid/os/Bundle;Landroid/os/PersistableBundle;)V -HSPLandroid/app/Activity;->performDestroy()V -HSPLandroid/app/Activity;->performPause()V -HSPLandroid/app/Activity;->performResume(ZLjava/lang/String;)V -HSPLandroid/app/Activity;->performStart(Ljava/lang/String;)V -HSPLandroid/app/Activity;->performStop(ZLjava/lang/String;)V -HSPLandroid/app/Activity;->performTopResumedActivityChanged(ZLjava/lang/String;)V -HSPLandroid/app/Activity;->registerActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V -HSPLandroid/app/Activity;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/app/Activity;->reportFullyDrawn()V -HSPLandroid/app/Activity;->restoreHasCurrentPermissionRequest(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->restoreManagedDialogs(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->retainNonConfigurationInstances()Landroid/app/Activity$NonConfigurationInstances; -HSPLandroid/app/Activity;->runOnUiThread(Ljava/lang/Runnable;)V -HSPLandroid/app/Activity;->saveManagedDialogs(Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->setContentView(I)V -HSPLandroid/app/Activity;->setContentView(Landroid/view/View;)V -HSPLandroid/app/Activity;->setIntent(Landroid/content/Intent;)V -HSPLandroid/app/Activity;->setRequestedOrientation(I)V -HSPLandroid/app/Activity;->setResult(ILandroid/content/Intent;)V -HSPLandroid/app/Activity;->setTaskDescription(Landroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/Activity;->setTheme(I)V -HSPLandroid/app/Activity;->setTitle(Ljava/lang/CharSequence;)V -HSPLandroid/app/Activity;->setVolumeControlStream(I)V -HSPLandroid/app/Activity;->startActivity(Landroid/content/Intent;)V -HSPLandroid/app/Activity;->startActivity(Landroid/content/Intent;Landroid/os/Bundle;)V -HSPLandroid/app/Activity;->startActivityForResult(Landroid/content/Intent;I)V -HSPLandroid/app/Activity;->startActivityForResult(Landroid/content/Intent;ILandroid/os/Bundle;)V -HSPLandroid/app/Activity;->transferSpringboardActivityOptions(Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/app/Activity;->unregisterComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/app/ActivityClient$1;-><init>()V -HSPLandroid/app/ActivityClient$1;->create()Landroid/app/ActivityClient; -HSPLandroid/app/ActivityClient$1;->create()Ljava/lang/Object; -HSPLandroid/app/ActivityClient$ActivityClientControllerSingleton;-><init>()V -HSPLandroid/app/ActivityClient$ActivityClientControllerSingleton;->create()Landroid/app/IActivityClientController; -HSPLandroid/app/ActivityClient$ActivityClientControllerSingleton;->create()Ljava/lang/Object; -HSPLandroid/app/ActivityClient;-><clinit>()V -HSPLandroid/app/ActivityClient;-><init>()V -HSPLandroid/app/ActivityClient;->activityDestroyed(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityClient;->activityIdle(Landroid/os/IBinder;Landroid/content/res/Configuration;Z)V -HSPLandroid/app/ActivityClient;->activityPaused(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityClient;->activityResumed(Landroid/os/IBinder;Z)V -HSPLandroid/app/ActivityClient;->activityStopped(Landroid/os/IBinder;Landroid/os/Bundle;Landroid/os/PersistableBundle;Ljava/lang/CharSequence;)V -HSPLandroid/app/ActivityClient;->activityTopResumedStateLost()V -HSPLandroid/app/ActivityClient;->finishActivity(Landroid/os/IBinder;ILandroid/content/Intent;I)Z -HSPLandroid/app/ActivityClient;->getActivityClientController()Landroid/app/IActivityClientController;+]Landroid/app/ActivityClient$ActivityClientControllerSingleton;Landroid/app/ActivityClient$ActivityClientControllerSingleton; -HSPLandroid/app/ActivityClient;->getCallingActivity(Landroid/os/IBinder;)Landroid/content/ComponentName; -HSPLandroid/app/ActivityClient;->getDisplayId(Landroid/os/IBinder;)I -HSPLandroid/app/ActivityClient;->getInstance()Landroid/app/ActivityClient;+]Landroid/util/Singleton;Landroid/app/ActivityClient$1; -HSPLandroid/app/ActivityClient;->getTaskForActivity(Landroid/os/IBinder;Z)I -HSPLandroid/app/ActivityClient;->overridePendingTransition(Landroid/os/IBinder;Ljava/lang/String;III)V -HSPLandroid/app/ActivityClient;->reportActivityFullyDrawn(Landroid/os/IBinder;Z)V -HSPLandroid/app/ActivityClient;->reportSizeConfigurations(Landroid/os/IBinder;Landroid/window/SizeConfigurationBuckets;)V -HSPLandroid/app/ActivityClient;->setActivityClientController(Landroid/app/IActivityClientController;)Landroid/app/IActivityClientController; -HSPLandroid/app/ActivityClient;->setRequestedOrientation(Landroid/os/IBinder;I)V -HSPLandroid/app/ActivityClient;->setTaskDescription(Landroid/os/IBinder;Landroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/ActivityManager$3;->create()Landroid/app/IActivityManager; -HSPLandroid/app/ActivityManager$3;->create()Ljava/lang/Object; -HSPLandroid/app/ActivityManager$AppTask;->getTaskInfo()Landroid/app/ActivityManager$RecentTaskInfo; -HSPLandroid/app/ActivityManager$MemoryInfo;-><init>()V -HSPLandroid/app/ActivityManager$MemoryInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$PendingIntentInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$PendingIntentInfo; -HSPLandroid/app/ActivityManager$PendingIntentInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$PendingIntentInfo;-><init>(Ljava/lang/String;IZI)V -HSPLandroid/app/ActivityManager$RecentTaskInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$RecentTaskInfo; -HSPLandroid/app/ActivityManager$RecentTaskInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$RecentTaskInfo$PersistedTaskSnapshotData;-><init>()V -HSPLandroid/app/ActivityManager$RecentTaskInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$RunningAppProcessInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$RunningAppProcessInfo; -HSPLandroid/app/ActivityManager$RunningAppProcessInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>()V -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;-><init>(Landroid/os/Parcel;Landroid/app/ActivityManager$RunningAppProcessInfo-IA;)V -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->importanceToProcState(I)I -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->procStateToImportance(I)I -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->procStateToImportanceForClient(ILandroid/content/Context;)I -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->procStateToImportanceForTargetSdk(II)I -HSPLandroid/app/ActivityManager$RunningAppProcessInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$RunningServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$RunningServiceInfo; -HSPLandroid/app/ActivityManager$RunningServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$RunningServiceInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$RunningTaskInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$RunningTaskInfo; -HSPLandroid/app/ActivityManager$RunningTaskInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$TaskDescription$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ActivityManager$TaskDescription; -HSPLandroid/app/ActivityManager$TaskDescription$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ActivityManager$TaskDescription;-><init>()V -HSPLandroid/app/ActivityManager$TaskDescription;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$TaskDescription;-><init>(Ljava/lang/String;Landroid/graphics/Bitmap;I)V -HSPLandroid/app/ActivityManager$TaskDescription;->copyFromPreserveHiddenFields(Landroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/ActivityManager$TaskDescription;->getBackgroundColor()I -HSPLandroid/app/ActivityManager$TaskDescription;->getIcon()Landroid/graphics/Bitmap; -HSPLandroid/app/ActivityManager$TaskDescription;->getIconFilename()Ljava/lang/String; -HSPLandroid/app/ActivityManager$TaskDescription;->getInMemoryIcon()Landroid/graphics/Bitmap; -HSPLandroid/app/ActivityManager$TaskDescription;->getPrimaryColor()I -HSPLandroid/app/ActivityManager$TaskDescription;->loadTaskDescriptionIcon(Ljava/lang/String;I)Landroid/graphics/Bitmap; -HSPLandroid/app/ActivityManager$TaskDescription;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ActivityManager$TaskDescription;->setBackgroundColor(I)V -HSPLandroid/app/ActivityManager$TaskDescription;->setBackgroundColorFloating(I)V -HSPLandroid/app/ActivityManager$TaskDescription;->setEnsureNavigationBarContrastWhenTransparent(Z)V -HSPLandroid/app/ActivityManager$TaskDescription;->setEnsureStatusBarContrastWhenTransparent(Z)V -HSPLandroid/app/ActivityManager$TaskDescription;->setIcon(Landroid/graphics/drawable/Icon;)V -HSPLandroid/app/ActivityManager$TaskDescription;->setNavigationBarColor(I)V -HSPLandroid/app/ActivityManager$TaskDescription;->setPrimaryColor(I)V -HSPLandroid/app/ActivityManager$TaskDescription;->setStatusBarColor(I)V -HSPLandroid/app/ActivityManager$TaskDescription;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/ActivityManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/ActivityManager;->addOnUidImportanceListener(Landroid/app/ActivityManager$OnUidImportanceListener;I)V -HSPLandroid/app/ActivityManager;->checkComponentPermission(Ljava/lang/String;IIZ)I -HSPLandroid/app/ActivityManager;->getAppTasks()Ljava/util/List; -HSPLandroid/app/ActivityManager;->getCurrentUser()I -HSPLandroid/app/ActivityManager;->getDeviceConfigurationInfo()Landroid/content/pm/ConfigurationInfo; -HSPLandroid/app/ActivityManager;->getHistoricalProcessExitReasons(Ljava/lang/String;II)Ljava/util/List; -HSPLandroid/app/ActivityManager;->getLargeMemoryClass()I -HSPLandroid/app/ActivityManager;->getLauncherLargeIconSizeInner(Landroid/content/Context;)I -HSPLandroid/app/ActivityManager;->getMemoryClass()I -HSPLandroid/app/ActivityManager;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V -HSPLandroid/app/ActivityManager;->getMyMemoryState(Landroid/app/ActivityManager$RunningAppProcessInfo;)V -HSPLandroid/app/ActivityManager;->getPackageImportance(Ljava/lang/String;)I -HSPLandroid/app/ActivityManager;->getProcessMemoryInfo([I)[Landroid/os/Debug$MemoryInfo; -HSPLandroid/app/ActivityManager;->getRunningAppProcesses()Ljava/util/List; -HSPLandroid/app/ActivityManager;->getRunningServices(I)Ljava/util/List; -HSPLandroid/app/ActivityManager;->getService()Landroid/app/IActivityManager; -HSPLandroid/app/ActivityManager;->getTaskService()Landroid/app/IActivityTaskManager; -HSPLandroid/app/ActivityManager;->handleIncomingUser(IIIZZLjava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/ActivityManager;->isBackgroundRestricted()Z -HSPLandroid/app/ActivityManager;->isHighEndGfx()Z -HSPLandroid/app/ActivityManager;->isLowMemoryKillReportSupported()Z -HSPLandroid/app/ActivityManager;->isLowRamDevice()Z -HSPLandroid/app/ActivityManager;->isLowRamDeviceStatic()Z -HSPLandroid/app/ActivityManager;->isRunningInTestHarness()Z -HSPLandroid/app/ActivityManager;->isRunningInUserTestHarness()Z -HSPLandroid/app/ActivityManager;->isStartResultFatalError(I)Z -HSPLandroid/app/ActivityManager;->isUserAMonkey()Z -HSPLandroid/app/ActivityManager;->isUserRunning(I)Z -HSPLandroid/app/ActivityManager;->staticGetLargeMemoryClass()I -HSPLandroid/app/ActivityManager;->staticGetMemoryClass()I -HSPLandroid/app/ActivityOptions$SourceInfo;-><init>(IJ)V -HSPLandroid/app/ActivityOptions;-><init>()V -HSPLandroid/app/ActivityOptions;-><init>(Landroid/os/Bundle;)V -HSPLandroid/app/ActivityOptions;->fromBundle(Landroid/os/Bundle;)Landroid/app/ActivityOptions; -HSPLandroid/app/ActivityOptions;->getAnimationType()I -HSPLandroid/app/ActivityOptions;->makeBasic()Landroid/app/ActivityOptions; -HSPLandroid/app/ActivityOptions;->makeRemoteAnimation(Landroid/view/RemoteAnimationAdapter;)Landroid/app/ActivityOptions; -HSPLandroid/app/ActivityOptions;->setLaunchWindowingMode(I)V -HSPLandroid/app/ActivityOptions;->setSourceInfo(IJ)V -HSPLandroid/app/ActivityOptions;->toBundle()Landroid/os/Bundle; -HSPLandroid/app/ActivityTaskManager$1;->create()Landroid/app/ActivityTaskManager; -HSPLandroid/app/ActivityTaskManager$1;->create()Ljava/lang/Object; -HSPLandroid/app/ActivityTaskManager$2;->create()Landroid/app/IActivityTaskManager; -HSPLandroid/app/ActivityTaskManager$2;->create()Ljava/lang/Object; -HSPLandroid/app/ActivityTaskManager;-><init>()V -HSPLandroid/app/ActivityTaskManager;->getDefaultAppRecentsLimitStatic()I -HSPLandroid/app/ActivityTaskManager;->getInstance()Landroid/app/ActivityTaskManager; -HSPLandroid/app/ActivityTaskManager;->getService()Landroid/app/IActivityTaskManager; -HSPLandroid/app/ActivityTaskManager;->getTasks(IZ)Ljava/util/List; -HSPLandroid/app/ActivityTaskManager;->getTasks(IZZ)Ljava/util/List; -HSPLandroid/app/ActivityTaskManager;->supportsMultiWindow(Landroid/content/Context;)Z -HSPLandroid/app/ActivityThread$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/app/ActivityThread$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/ActivityThread$2;-><init>(Landroid/app/ActivityThread;Landroid/app/IActivityManager;)V -HSPLandroid/app/ActivityThread$3;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$3;->setContentCaptureOptions(Landroid/content/ContentCaptureOptions;)V -HSPLandroid/app/ActivityThread$4;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$4;->run()V -HSPLandroid/app/ActivityThread$ActivityClientRecord$1;-><init>(Landroid/app/ActivityThread$ActivityClientRecord;)V -HSPLandroid/app/ActivityThread$ActivityClientRecord;->-$$Nest$misPreHoneycomb(Landroid/app/ActivityThread$ActivityClientRecord;)Z -HSPLandroid/app/ActivityThread$ActivityClientRecord;->getLifecycleState()I -HSPLandroid/app/ActivityThread$ActivityClientRecord;->init()V -HSPLandroid/app/ActivityThread$ActivityClientRecord;->isPersistable()Z -HSPLandroid/app/ActivityThread$ActivityClientRecord;->isPreHoneycomb()Z -HSPLandroid/app/ActivityThread$ActivityClientRecord;->setState(I)V -HSPLandroid/app/ActivityThread$AndroidOs;-><init>(Llibcore/io/Os;)V -HSPLandroid/app/ActivityThread$AndroidOs;->access(Ljava/lang/String;I)Z -HSPLandroid/app/ActivityThread$AndroidOs;->install()V -HSPLandroid/app/ActivityThread$AndroidOs;->open(Ljava/lang/String;II)Ljava/io/FileDescriptor; -HSPLandroid/app/ActivityThread$AndroidOs;->remove(Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$AndroidOs;->rename(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$AndroidOs;->stat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLandroid/app/ActivityThread$AppBindData;-><init>()V -HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/app/ActivityThread$ApplicationThread;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$ApplicationThread;-><init>(Landroid/app/ActivityThread;Landroid/app/ActivityThread$ApplicationThread-IA;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->clearDnsCache()V -HSPLandroid/app/ActivityThread$ApplicationThread;->dispatchPackageBroadcast(I[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpCacheInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpDbInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpGfxInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpProvider(Landroid/os/ParcelFileDescriptor;Landroid/os/IBinder;[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpResources(Landroid/os/ParcelFileDescriptor;Landroid/os/RemoteCallback;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->dumpService(Landroid/os/ParcelFileDescriptor;Landroid/os/IBinder;[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->notifyContentProviderPublishStatus(Landroid/app/ContentProviderHolder;Ljava/lang/String;IZ)V -HSPLandroid/app/ActivityThread$ApplicationThread;->requestAssistContextExtras(Landroid/os/IBinder;Landroid/os/IBinder;III)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleApplicationInfoChanged(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleBindService(Landroid/os/IBinder;Landroid/content/Intent;ZIJ)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleCreateBackupAgent(Landroid/content/pm/ApplicationInfo;III)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleCreateService(Landroid/os/IBinder;Landroid/content/pm/ServiceInfo;Landroid/content/res/CompatibilityInfo;I)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleDestroyBackupAgent(Landroid/content/pm/ApplicationInfo;I)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleEnterAnimationComplete(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleInstallProvider(Landroid/content/pm/ProviderInfo;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleLowMemory()V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleReceiver(Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Landroid/content/res/CompatibilityInfo;ILjava/lang/String;Landroid/os/Bundle;ZZIIILjava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleReceiverList(Ljava/util/List;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleRegisteredReceiver(Landroid/content/IIntentReceiver;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIIILjava/lang/String;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleServiceArgs(Landroid/os/IBinder;Landroid/content/pm/ParceledListSlice;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleStopService(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleTransaction(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleTrimMemory(I)V -HSPLandroid/app/ActivityThread$ApplicationThread;->scheduleUnbindService(Landroid/os/IBinder;Landroid/content/Intent;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->setCoreSettings(Landroid/os/Bundle;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->setNetworkBlockSeq(J)V -HSPLandroid/app/ActivityThread$ApplicationThread;->setProcessState(I)V -HSPLandroid/app/ActivityThread$ApplicationThread;->unstableProviderDied(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread$ApplicationThread;->updateCompatOverrideScale(Landroid/content/res/CompatibilityInfo;)V -HSPLandroid/app/ActivityThread$BindServiceData;-><init>()V -HSPLandroid/app/ActivityThread$BindServiceData;->toString()Ljava/lang/String; -HSPLandroid/app/ActivityThread$ContextCleanupInfo;-><init>()V -HSPLandroid/app/ActivityThread$CreateBackupAgentData;-><init>()V -HSPLandroid/app/ActivityThread$CreateServiceData;-><init>()V -HSPLandroid/app/ActivityThread$CreateServiceData;->toString()Ljava/lang/String; -HSPLandroid/app/ActivityThread$DumpResourcesData;-><init>()V -HSPLandroid/app/ActivityThread$GcIdler;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$GcIdler;->queueIdle()Z -HSPLandroid/app/ActivityThread$H;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$H;->handleMessage(Landroid/os/Message;)V -HSPLandroid/app/ActivityThread$Idler;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$Idler;-><init>(Landroid/app/ActivityThread;Landroid/app/ActivityThread$Idler-IA;)V -HSPLandroid/app/ActivityThread$Idler;->queueIdle()Z -HSPLandroid/app/ActivityThread$Profiler;-><init>()V -HSPLandroid/app/ActivityThread$ProviderKey;-><init>(Ljava/lang/String;I)V -HSPLandroid/app/ActivityThread$ProviderKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/ActivityThread$ProviderKey;->hashCode()I -HSPLandroid/app/ActivityThread$ProviderRefCount;-><init>(Landroid/app/ContentProviderHolder;Landroid/app/ActivityThread$ProviderClientRecord;II)V -HSPLandroid/app/ActivityThread$PurgeIdler;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread$PurgeIdler;->queueIdle()Z -HSPLandroid/app/ActivityThread$ReceiverData;-><init>(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZLandroid/os/IBinder;IILjava/lang/String;)V -HSPLandroid/app/ActivityThread$RequestAssistContextExtras;-><init>()V -HSPLandroid/app/ActivityThread$ServiceArgsData;-><init>()V -HSPLandroid/app/ActivityThread$ServiceArgsData;->toString()Ljava/lang/String; -HSPLandroid/app/ActivityThread;->-$$Nest$fgetmTransactionExecutor(Landroid/app/ActivityThread;)Landroid/app/servertransaction/TransactionExecutor; -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleBindApplication(Landroid/app/ActivityThread;Landroid/app/ActivityThread$AppBindData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleBindService(Landroid/app/ActivityThread;Landroid/app/ActivityThread$BindServiceData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleCreateBackupAgent(Landroid/app/ActivityThread;Landroid/app/ActivityThread$CreateBackupAgentData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleCreateService(Landroid/app/ActivityThread;Landroid/app/ActivityThread$CreateServiceData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleDestroyBackupAgent(Landroid/app/ActivityThread;Landroid/app/ActivityThread$CreateBackupAgentData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleDumpGfxInfo(Landroid/app/ActivityThread;Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleDumpProvider(Landroid/app/ActivityThread;Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleDumpResources(Landroid/app/ActivityThread;Landroid/app/ActivityThread$DumpResourcesData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleDumpService(Landroid/app/ActivityThread;Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleEnterAnimationComplete(Landroid/app/ActivityThread;Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleReceiver(Landroid/app/ActivityThread;Landroid/app/ActivityThread$ReceiverData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleServiceArgs(Landroid/app/ActivityThread;Landroid/app/ActivityThread$ServiceArgsData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleSetContentCaptureOptionsCallback(Landroid/app/ActivityThread;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleSetCoreSettings(Landroid/app/ActivityThread;Landroid/os/Bundle;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleStopService(Landroid/app/ActivityThread;Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mhandleUnbindService(Landroid/app/ActivityThread;Landroid/app/ActivityThread$BindServiceData;)V -HSPLandroid/app/ActivityThread;->-$$Nest$mpurgePendingResources(Landroid/app/ActivityThread;)V -HSPLandroid/app/ActivityThread;->-$$Nest$msendMessage(Landroid/app/ActivityThread;ILjava/lang/Object;IIZ)V -HSPLandroid/app/ActivityThread;-><init>()V -HSPLandroid/app/ActivityThread;->acquireExistingProvider(Landroid/content/Context;Ljava/lang/String;IZ)Landroid/content/IContentProvider; -HSPLandroid/app/ActivityThread;->acquireProvider(Landroid/content/Context;Ljava/lang/String;IZ)Landroid/content/IContentProvider; -HSPLandroid/app/ActivityThread;->attach(ZJ)V -HSPLandroid/app/ActivityThread;->callActivityOnSaveInstanceState(Landroid/app/ActivityThread$ActivityClientRecord;)V -HSPLandroid/app/ActivityThread;->callActivityOnStop(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->checkAndBlockForNetworkAccess()V -HSPLandroid/app/ActivityThread;->cleanUpPendingRemoveWindows(Landroid/app/ActivityThread$ActivityClientRecord;Z)V -HSPLandroid/app/ActivityThread;->collectComponentCallbacks(Z)Ljava/util/ArrayList; -HSPLandroid/app/ActivityThread;->completeRemoveProvider(Landroid/app/ActivityThread$ProviderRefCount;)V -HSPLandroid/app/ActivityThread;->countLaunchingActivities(I)V -HSPLandroid/app/ActivityThread;->createBaseContextForActivity(Landroid/app/ActivityThread$ActivityClientRecord;)Landroid/app/ContextImpl; -HSPLandroid/app/ActivityThread;->currentActivityThread()Landroid/app/ActivityThread; -HSPLandroid/app/ActivityThread;->currentApplication()Landroid/app/Application; -HSPLandroid/app/ActivityThread;->currentAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/app/ActivityThread;->currentOpPackageName()Ljava/lang/String; -HSPLandroid/app/ActivityThread;->currentPackageName()Ljava/lang/String; -HSPLandroid/app/ActivityThread;->currentProcessName()Ljava/lang/String; -HSPLandroid/app/ActivityThread;->deliverNewIntents(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/util/List;)V -HSPLandroid/app/ActivityThread;->deliverResults(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/util/List;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->dumpMemoryInfo(Landroid/util/proto/ProtoOutputStream;JLjava/lang/String;IIIIIIZIII)V -HSPLandroid/app/ActivityThread;->getActivitiesToBeDestroyed()Ljava/util/Map; -HSPLandroid/app/ActivityThread;->getActivity(Landroid/os/IBinder;)Landroid/app/Activity;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/app/ActivityThread;->getActivityClient(Landroid/os/IBinder;)Landroid/app/ActivityThread$ActivityClientRecord;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/app/ActivityThread;->getApplication()Landroid/app/Application; -HSPLandroid/app/ActivityThread;->getApplicationThread()Landroid/app/ActivityThread$ApplicationThread; -HSPLandroid/app/ActivityThread;->getBackupAgentName(Landroid/app/ActivityThread$CreateBackupAgentData;)Ljava/lang/String; -HSPLandroid/app/ActivityThread;->getBackupAgentsForUser(I)Landroid/util/ArrayMap; -HSPLandroid/app/ActivityThread;->getExecutor()Ljava/util/concurrent/Executor; -HSPLandroid/app/ActivityThread;->getFloatCoreSetting(Ljava/lang/String;F)F -HSPLandroid/app/ActivityThread;->getGetProviderKey(Ljava/lang/String;I)Landroid/app/ActivityThread$ProviderKey; -HSPLandroid/app/ActivityThread;->getHandler()Landroid/os/Handler; -HSPLandroid/app/ActivityThread;->getInstrumentation()Landroid/app/Instrumentation; -HSPLandroid/app/ActivityThread;->getIntCoreSetting(Ljava/lang/String;I)I -HSPLandroid/app/ActivityThread;->getIntentBeingBroadcast()Landroid/content/Intent; -HSPLandroid/app/ActivityThread;->getLooper()Landroid/os/Looper; -HSPLandroid/app/ActivityThread;->getOperationTypeFromBackupMode(I)I -HSPLandroid/app/ActivityThread;->getPackageInfo(Landroid/content/pm/ApplicationInfo;Landroid/content/res/CompatibilityInfo;I)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageInfo(Landroid/content/pm/ApplicationInfo;Landroid/content/res/CompatibilityInfo;Ljava/lang/ClassLoader;ZZZ)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageInfo(Landroid/content/pm/ApplicationInfo;Landroid/content/res/CompatibilityInfo;Ljava/lang/ClassLoader;ZZZZ)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageInfo(Ljava/lang/String;Landroid/content/res/CompatibilityInfo;II)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageInfoNoCheck(Landroid/content/pm/ApplicationInfo;)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageInfoNoCheck(Landroid/content/pm/ApplicationInfo;Landroid/content/res/CompatibilityInfo;)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->getPackageManager()Landroid/content/pm/IPackageManager; -HSPLandroid/app/ActivityThread;->getPermissionManager()Landroid/permission/IPermissionManager; -HSPLandroid/app/ActivityThread;->getStringCoreSetting(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/ActivityThread;->getSystemContext()Landroid/app/ContextImpl; -HSPLandroid/app/ActivityThread;->getSystemUiContext()Landroid/app/ContextImpl; -HSPLandroid/app/ActivityThread;->getSystemUiContextNoCreate()Landroid/app/ContextImpl; -HSPLandroid/app/ActivityThread;->getTopLevelResources(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;Landroid/app/LoadedApk;Landroid/content/res/Configuration;)Landroid/content/res/Resources; -HSPLandroid/app/ActivityThread;->handleApplicationInfoChanged(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/app/ActivityThread;->handleBindApplication(Landroid/app/ActivityThread$AppBindData;)V -HSPLandroid/app/ActivityThread;->handleBindService(Landroid/app/ActivityThread$BindServiceData;)V -HSPLandroid/app/ActivityThread;->handleConfigurationChanged(Landroid/content/res/Configuration;I)V -HSPLandroid/app/ActivityThread;->handleCreateBackupAgent(Landroid/app/ActivityThread$CreateBackupAgentData;)V -HSPLandroid/app/ActivityThread;->handleCreateService(Landroid/app/ActivityThread$CreateServiceData;)V -HSPLandroid/app/ActivityThread;->handleDestroyBackupAgent(Landroid/app/ActivityThread$CreateBackupAgentData;)V -HSPLandroid/app/ActivityThread;->handleDispatchPackageBroadcast(I[Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->handleDumpGfxInfo(Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->handleDumpProvider(Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->handleDumpResources(Landroid/app/ActivityThread$DumpResourcesData;)V -HSPLandroid/app/ActivityThread;->handleDumpService(Landroid/app/ActivityThread$DumpComponentInfo;)V -HSPLandroid/app/ActivityThread;->handleEnterAnimationComplete(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread;->handleInstallProvider(Landroid/content/pm/ProviderInfo;)V -HSPLandroid/app/ActivityThread;->handleLaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;ILandroid/content/Intent;)Landroid/app/Activity; -HSPLandroid/app/ActivityThread;->handleLowMemory()V -HSPLandroid/app/ActivityThread;->handleNewIntent(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/util/List;)V -HSPLandroid/app/ActivityThread;->handleReceiver(Landroid/app/ActivityThread$ReceiverData;)V -HSPLandroid/app/ActivityThread;->handleRelaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/ActivityThread;->handleRequestAssistContextExtras(Landroid/app/ActivityThread$RequestAssistContextExtras;)V -HSPLandroid/app/ActivityThread;->handleResumeActivity(Landroid/app/ActivityThread$ActivityClientRecord;ZZZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->handleSendResult(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/util/List;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->handleServiceArgs(Landroid/app/ActivityThread$ServiceArgsData;)V -HSPLandroid/app/ActivityThread;->handleSetContentCaptureOptionsCallback(Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->handleSetCoreSettings(Landroid/os/Bundle;)V -HSPLandroid/app/ActivityThread;->handleStopService(Landroid/os/IBinder;)V -HSPLandroid/app/ActivityThread;->handleTopResumedActivityChanged(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->handleTrimMemory(I)V -HSPLandroid/app/ActivityThread;->handleUnbindService(Landroid/app/ActivityThread$BindServiceData;)V -HSPLandroid/app/ActivityThread;->handleUnstableProviderDied(Landroid/os/IBinder;Z)V -HSPLandroid/app/ActivityThread;->handleUnstableProviderDiedLocked(Landroid/os/IBinder;Z)V -HSPLandroid/app/ActivityThread;->incProviderRefLocked(Landroid/app/ActivityThread$ProviderRefCount;Z)V -HSPLandroid/app/ActivityThread;->initZipPathValidatorCallback()V -HSPLandroid/app/ActivityThread;->initializeMainlineModules()V -HSPLandroid/app/ActivityThread;->installContentProviders(Landroid/content/Context;Ljava/util/List;)V -HSPLandroid/app/ActivityThread;->installProvider(Landroid/content/Context;Landroid/app/ContentProviderHolder;Landroid/content/pm/ProviderInfo;ZZZ)Landroid/app/ContentProviderHolder; -HSPLandroid/app/ActivityThread;->installProviderAuthoritiesLocked(Landroid/content/IContentProvider;Landroid/content/ContentProvider;Landroid/app/ContentProviderHolder;)Landroid/app/ActivityThread$ProviderClientRecord; -HSPLandroid/app/ActivityThread;->isHandleSplashScreenExit(Landroid/os/IBinder;)Z -HSPLandroid/app/ActivityThread;->isInDensityCompatMode()Z -HSPLandroid/app/ActivityThread;->isLoadedApkResourceDirsUpToDate(Landroid/app/LoadedApk;Landroid/content/pm/ApplicationInfo;)Z -HSPLandroid/app/ActivityThread;->isProtectedBroadcast(Landroid/content/Intent;)Z -HSPLandroid/app/ActivityThread;->isProtectedComponent(Landroid/content/pm/ActivityInfo;)Z -HSPLandroid/app/ActivityThread;->isProtectedComponent(Landroid/content/pm/ComponentInfo;Ljava/lang/String;)Z -HSPLandroid/app/ActivityThread;->isProtectedComponent(Landroid/content/pm/ServiceInfo;)Z -HSPLandroid/app/ActivityThread;->isSystem()Z -HSPLandroid/app/ActivityThread;->main([Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->onCoreSettingsChange()V -HSPLandroid/app/ActivityThread;->peekPackageInfo(Ljava/lang/String;Z)Landroid/app/LoadedApk; -HSPLandroid/app/ActivityThread;->performLaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/content/Intent;)Landroid/app/Activity;+]Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/ActivityThread$ActivityClientRecord;]Landroid/app/ActivityThread;Landroid/app/ActivityThread;]Landroid/app/ConfigurationController;Landroid/app/ConfigurationController;]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/app/Instrumentation;Landroid/app/Instrumentation;]Landroid/app/LoadedApk;Landroid/app/LoadedApk;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/List;Ljava/util/Collections$EmptyList; -HSPLandroid/app/ActivityThread;->performPauseActivity(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;Landroid/app/servertransaction/PendingTransactionActions;)Landroid/os/Bundle; -HSPLandroid/app/ActivityThread;->performPauseActivityIfNeeded(Landroid/app/ActivityThread$ActivityClientRecord;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->performRestartActivity(Landroid/app/ActivityThread$ActivityClientRecord;Z)V -HSPLandroid/app/ActivityThread;->performResumeActivity(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;)Z -HSPLandroid/app/ActivityThread;->performStopActivityInner(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions$StopInfo;ZZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->performUserLeavingActivity(Landroid/app/ActivityThread$ActivityClientRecord;)V -HSPLandroid/app/ActivityThread;->printRow(Ljava/io/PrintWriter;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/app/ActivityThread;->purgePendingResources()V -HSPLandroid/app/ActivityThread;->relaunchAllActivities(ZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->releaseProvider(Landroid/content/IContentProvider;Z)Z -HSPLandroid/app/ActivityThread;->reportSizeConfigurations(Landroid/app/ActivityThread$ActivityClientRecord;)V -HSPLandroid/app/ActivityThread;->reportStop(Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/ActivityThread;->reportTopResumedActivityChanged(Landroid/app/ActivityThread$ActivityClientRecord;ZLjava/lang/String;)V -HSPLandroid/app/ActivityThread;->scheduleContextCleanup(Landroid/app/ContextImpl;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ActivityThread;->schedulePurgeIdler()V -HSPLandroid/app/ActivityThread;->sendMessage(ILjava/lang/Object;)V -HSPLandroid/app/ActivityThread;->sendMessage(ILjava/lang/Object;I)V -HSPLandroid/app/ActivityThread;->sendMessage(ILjava/lang/Object;IIZ)V -HSPLandroid/app/ActivityThread;->setupGraphicsSupport(Landroid/content/Context;)V -HSPLandroid/app/ActivityThread;->unscheduleGcIdler()V -HSPLandroid/app/ActivityThread;->updateDebugViewAttributeState()Z -HSPLandroid/app/ActivityThread;->updateDeviceIdForNonUIContexts(I)V -HSPLandroid/app/ActivityThread;->updatePendingConfiguration(Landroid/content/res/Configuration;)V -HSPLandroid/app/ActivityThread;->updateProcessState(IZ)V -HSPLandroid/app/ActivityThread;->updateVisibility(Landroid/app/ActivityThread$ActivityClientRecord;Z)V -HSPLandroid/app/ActivityThread;->updateVmProcessState(I)V -HSPLandroid/app/ActivityTransitionState;-><init>()V -HSPLandroid/app/ActivityTransitionState;->enterReady(Landroid/app/Activity;)V -HSPLandroid/app/ActivityTransitionState;->getPendingExitNames()Ljava/util/ArrayList; -HSPLandroid/app/ActivityTransitionState;->onResume(Landroid/app/Activity;)V -HSPLandroid/app/ActivityTransitionState;->onStop(Landroid/app/Activity;)V -HSPLandroid/app/ActivityTransitionState;->readState(Landroid/os/Bundle;)V -HSPLandroid/app/ActivityTransitionState;->restoreExitedViews()V -HSPLandroid/app/ActivityTransitionState;->restoreReenteringViews()V -HSPLandroid/app/ActivityTransitionState;->saveState(Landroid/os/Bundle;)V -HSPLandroid/app/ActivityTransitionState;->startExitBackTransition(Landroid/app/Activity;)Z -HSPLandroid/app/ActivityTransitionState;->startExitOutTransition(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/AlarmManager$AlarmClockInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/AlarmManager$AlarmClockInfo; -HSPLandroid/app/AlarmManager$AlarmClockInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/AlarmManager$AlarmClockInfo;->getTriggerTime()J -HSPLandroid/app/AlarmManager$ListenerWrapper;-><init>(Landroid/app/AlarmManager;Landroid/app/AlarmManager$OnAlarmListener;)V -HSPLandroid/app/AlarmManager$ListenerWrapper;->cancel()V -HSPLandroid/app/AlarmManager$ListenerWrapper;->doAlarm(Landroid/app/IAlarmCompleteListener;)V -HSPLandroid/app/AlarmManager$ListenerWrapper;->run()V -HSPLandroid/app/AlarmManager;-><init>(Landroid/app/IAlarmManager;Landroid/content/Context;)V -HSPLandroid/app/AlarmManager;->cancel(Landroid/app/AlarmManager$OnAlarmListener;)V -HSPLandroid/app/AlarmManager;->cancel(Landroid/app/PendingIntent;)V -HSPLandroid/app/AlarmManager;->getNextAlarmClock(I)Landroid/app/AlarmManager$AlarmClockInfo; -HSPLandroid/app/AlarmManager;->legacyExactLength()J -HSPLandroid/app/AlarmManager;->set(IJJJLandroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;Landroid/os/WorkSource;)V -HSPLandroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V -HSPLandroid/app/AlarmManager;->set(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V -HSPLandroid/app/AlarmManager;->setExact(IJLandroid/app/PendingIntent;)V -HSPLandroid/app/AlarmManager;->setExact(IJLjava/lang/String;Landroid/app/AlarmManager$OnAlarmListener;Landroid/os/Handler;)V -HSPLandroid/app/AlarmManager;->setExactAndAllowWhileIdle(IJLandroid/app/PendingIntent;)V -HSPLandroid/app/AlarmManager;->setImpl(IJJJILandroid/app/PendingIntent;Landroid/app/AlarmManager$OnAlarmListener;Ljava/lang/String;Landroid/os/Handler;Landroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;)V -HSPLandroid/app/AlarmManager;->setImpl(IJJJILandroid/app/PendingIntent;Landroid/app/AlarmManager$OnAlarmListener;Ljava/lang/String;Ljava/util/concurrent/Executor;Landroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;)V -HSPLandroid/app/AlarmManager;->setInexactRepeating(IJJLandroid/app/PendingIntent;)V -HSPLandroid/app/AlertDialog;-><init>(Landroid/content/Context;IZ)V -HSPLandroid/app/AlertDialog;->onCreate(Landroid/os/Bundle;)V -HSPLandroid/app/AlertDialog;->resolveDialogTheme(Landroid/content/Context;I)I -HSPLandroid/app/AppCompatCallbacks;->isChangeEnabled(J)Z -HSPLandroid/app/AppComponentFactory;-><init>()V -HSPLandroid/app/AppComponentFactory;->instantiateActivity(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Intent;)Landroid/app/Activity; -HSPLandroid/app/AppComponentFactory;->instantiateApplication(Ljava/lang/ClassLoader;Ljava/lang/String;)Landroid/app/Application; -HSPLandroid/app/AppComponentFactory;->instantiateClassLoader(Ljava/lang/ClassLoader;Landroid/content/pm/ApplicationInfo;)Ljava/lang/ClassLoader; -HSPLandroid/app/AppComponentFactory;->instantiateProvider(Ljava/lang/ClassLoader;Ljava/lang/String;)Landroid/content/ContentProvider; -HSPLandroid/app/AppComponentFactory;->instantiateReceiver(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Intent;)Landroid/content/BroadcastReceiver; -HSPLandroid/app/AppComponentFactory;->instantiateService(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Intent;)Landroid/app/Service; -HSPLandroid/app/AppGlobals;->getInitialApplication()Landroid/app/Application; -HSPLandroid/app/AppGlobals;->getIntCoreSetting(Ljava/lang/String;I)I -HSPLandroid/app/AppGlobals;->getPackageManager()Landroid/content/pm/IPackageManager; -HSPLandroid/app/AppOpsManager$1;->onNoted(Landroid/app/SyncNotedAppOp;)V -HSPLandroid/app/AppOpsManager$1;->onSelfNoted(Landroid/app/SyncNotedAppOp;)V -HSPLandroid/app/AppOpsManager$1;->reportStackTraceIfNeeded(Landroid/app/SyncNotedAppOp;)V -HSPLandroid/app/AppOpsManager$AttributedOpEntry;->getLastAccessEvent(III)Landroid/app/AppOpsManager$NoteOpEvent; -HSPLandroid/app/AppOpsManager$AttributedOpEntry;->getLastRejectEvent(III)Landroid/app/AppOpsManager$NoteOpEvent; -HSPLandroid/app/AppOpsManager$NoteOpEvent;->getDuration()J -HSPLandroid/app/AppOpsManager$NoteOpEvent;->getNoteTime()J -HSPLandroid/app/AppOpsManager$OnOpNotedCallback$1;-><init>(Landroid/app/AppOpsManager$OnOpNotedCallback;)V -HSPLandroid/app/AppOpsManager$OnOpNotedCallback$1;->opNoted(Landroid/app/AsyncNotedAppOp;)V -HSPLandroid/app/AppOpsManager$OnOpNotedCallback;-><init>()V -HSPLandroid/app/AppOpsManager$OnOpNotedCallback;->getAsyncNotedExecutor()Ljava/util/concurrent/Executor; -HSPLandroid/app/AppOpsManager$OpEntry$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/AppOpsManager$OpEntry; -HSPLandroid/app/AppOpsManager$OpEntry$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/AppOpsManager$OpEntry;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/AppOpsManager$PackageOps$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/AppOpsManager$PackageOps; -HSPLandroid/app/AppOpsManager$PackageOps$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/AppOpsManager$PackageOps;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/AppOpsManager$PackageOps;->getOps()Ljava/util/List; -HSPLandroid/app/AppOpsManager$PackageOps;->getPackageName()Ljava/lang/String; -HSPLandroid/app/AppOpsManager$PausedNotedAppOpsCollection;-><init>(ILandroid/util/ArrayMap;)V -HSPLandroid/app/AppOpsManager;-><init>(Landroid/content/Context;Lcom/android/internal/app/IAppOpsService;)V -HSPLandroid/app/AppOpsManager;->checkOp(IILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->checkOpNoThrow(IILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->checkOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->checkPackage(ILjava/lang/String;)V -HSPLandroid/app/AppOpsManager;->collectNoteOpCallsForValidation(I)V -HSPLandroid/app/AppOpsManager;->extractFlagsFromKey(J)I -HSPLandroid/app/AppOpsManager;->extractUidStateFromKey(J)I -HSPLandroid/app/AppOpsManager;->finishNotedAppOpsCollection()V -HSPLandroid/app/AppOpsManager;->finishOp(IILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/AppOpsManager;->getClientId()Landroid/os/IBinder; -HSPLandroid/app/AppOpsManager;->getFormattedStackTrace()Ljava/lang/String; -HSPLandroid/app/AppOpsManager;->getLastEvent(Landroid/util/LongSparseArray;III)Landroid/app/AppOpsManager$NoteOpEvent; -HSPLandroid/app/AppOpsManager;->getNotedOpCollectionMode(ILjava/lang/String;I)I -HSPLandroid/app/AppOpsManager;->getPackagesForOps([I)Ljava/util/List; -HSPLandroid/app/AppOpsManager;->getService()Lcom/android/internal/app/IAppOpsService; -HSPLandroid/app/AppOpsManager;->getToken(Lcom/android/internal/app/IAppOpsService;)Landroid/os/IBinder; -HSPLandroid/app/AppOpsManager;->isCollectingStackTraces()Z -HSPLandroid/app/AppOpsManager;->isListeningForOpNoted()Z -HSPLandroid/app/AppOpsManager;->lambda$new$0(Landroid/provider/DeviceConfig$Properties;)V -HSPLandroid/app/AppOpsManager;->leftCircularDistance(III)I -HSPLandroid/app/AppOpsManager;->makeKey(II)J -HSPLandroid/app/AppOpsManager;->noteOp(IILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteOp(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteOp(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteOpNoThrow(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteProxyOp(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->noteProxyOpNoThrow(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->opToDefaultMode(I)I -HSPLandroid/app/AppOpsManager;->opToPermission(I)Ljava/lang/String; -HSPLandroid/app/AppOpsManager;->opToPublicName(I)Ljava/lang/String; -HSPLandroid/app/AppOpsManager;->opToSwitch(I)I -HSPLandroid/app/AppOpsManager;->pauseNotedAppOpsCollection()Landroid/app/AppOpsManager$PausedNotedAppOpsCollection;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; -HSPLandroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/AppOpsManager;->permissionToOpCode(Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->prefixParcelWithAppOpsIfNeeded(Landroid/os/Parcel;)V -HSPLandroid/app/AppOpsManager;->readAndLogNotedAppops(Landroid/os/Parcel;)V -HSPLandroid/app/AppOpsManager;->resolveLastRestrictedUidState(I)I -HSPLandroid/app/AppOpsManager;->setOnOpNotedCallback(Ljava/util/concurrent/Executor;Landroid/app/AppOpsManager$OnOpNotedCallback;)V -HSPLandroid/app/AppOpsManager;->setUidMode(Ljava/lang/String;II)V -HSPLandroid/app/AppOpsManager;->startNotedAppOpsCollection(I)V -HSPLandroid/app/AppOpsManager;->startOpNoThrow(IILjava/lang/String;ZLjava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->startWatchingActive([Ljava/lang/String;Ljava/util/concurrent/Executor;Landroid/app/AppOpsManager$OnOpActiveChangedListener;)V -HSPLandroid/app/AppOpsManager;->startWatchingMode(ILjava/lang/String;ILandroid/app/AppOpsManager$OnOpChangedListener;)V -HSPLandroid/app/AppOpsManager;->startWatchingMode(ILjava/lang/String;Landroid/app/AppOpsManager$OnOpChangedListener;)V -HSPLandroid/app/AppOpsManager;->startWatchingMode(Ljava/lang/String;Ljava/lang/String;Landroid/app/AppOpsManager$OnOpChangedListener;)V -HSPLandroid/app/AppOpsManager;->stopWatchingMode(Landroid/app/AppOpsManager$OnOpChangedListener;)V -HSPLandroid/app/AppOpsManager;->strOpToOp(Ljava/lang/String;)I -HSPLandroid/app/AppOpsManager;->toReceiverId(Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/app/AppOpsManager;->unsafeCheckOp(Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->unsafeCheckOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->unsafeCheckOpRaw(Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(IILjava/lang/String;)I -HSPLandroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostCreated(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostDestroyed(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostPaused(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostResumed(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostSaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostStarted(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPostStopped(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreCreated(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreDestroyed(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPrePaused(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreResumed(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreSaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreStarted(Landroid/app/Activity;)V -HSPLandroid/app/Application$ActivityLifecycleCallbacks;->onActivityPreStopped(Landroid/app/Activity;)V -HSPLandroid/app/Application;-><init>()V -HSPLandroid/app/Application;->attach(Landroid/content/Context;)V -HSPLandroid/app/Application;->collectActivityLifecycleCallbacks()[Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/app/Application;->dispatchActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityDestroyed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPaused(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPostCreated(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityPostDestroyed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPostPaused(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPostResumed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPostSaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityPostStarted(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPostStopped(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPreCreated(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityPreDestroyed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPrePaused(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPreResumed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPreSaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityPreStarted(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityPreStopped(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityResumed(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivitySaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Application;->dispatchActivityStarted(Landroid/app/Activity;)V -HSPLandroid/app/Application;->dispatchActivityStopped(Landroid/app/Activity;)V -HSPLandroid/app/Application;->getAutofillClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/app/Application;->getProcessName()Ljava/lang/String; -HSPLandroid/app/Application;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/Application;->onCreate()V -HSPLandroid/app/Application;->onLowMemory()V -HSPLandroid/app/Application;->onTrimMemory(I)V -HSPLandroid/app/Application;->registerActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V -HSPLandroid/app/Application;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/app/Application;->unregisterActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V -HSPLandroid/app/Application;->unregisterComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/app/ApplicationErrorReport$CrashInfo;-><init>(Ljava/lang/Throwable;)V -HSPLandroid/app/ApplicationErrorReport$CrashInfo;->sanitizeString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/ApplicationErrorReport$CrashInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/ApplicationExitInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ApplicationExitInfo; -HSPLandroid/app/ApplicationExitInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ApplicationExitInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/ApplicationExitInfo;->getImportance()I -HSPLandroid/app/ApplicationExitInfo;->getProcessName()Ljava/lang/String; -HSPLandroid/app/ApplicationExitInfo;->getPss()J -HSPLandroid/app/ApplicationExitInfo;->getReason()I -HSPLandroid/app/ApplicationExitInfo;->getRss()J -HSPLandroid/app/ApplicationExitInfo;->getStatus()I -HSPLandroid/app/ApplicationExitInfo;->getTimestamp()J -HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>()V -HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>(Landroid/app/ApplicationLoaders$CachedClassLoader-IA;)V -HSPLandroid/app/ApplicationLoaders;->addNative(Ljava/lang/ClassLoader;Ljava/util/Collection;)V -HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoader(Landroid/content/pm/SharedLibraryInfo;)V -HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoaders(Ljava/util/List;)V -HSPLandroid/app/ApplicationLoaders;->getCachedNonBootclasspathSystemLib(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLandroid/app/ApplicationLoaders;->getClassLoader(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/ClassLoader; -HSPLandroid/app/ApplicationLoaders;->getClassLoader(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLandroid/app/ApplicationLoaders;->getClassLoaderWithSharedLibraries(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLandroid/app/ApplicationLoaders;->getDefault()Landroid/app/ApplicationLoaders; -HSPLandroid/app/ApplicationLoaders;->getSharedLibraryClassLoaderWithSharedLibraries(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLandroid/app/ApplicationLoaders;->sharedLibrariesEquals(Ljava/util/List;Ljava/util/List;)Z -HSPLandroid/app/ApplicationPackageManager$1;->recompute(Landroid/app/ApplicationPackageManager$HasSystemFeatureQuery;)Ljava/lang/Boolean; -HSPLandroid/app/ApplicationPackageManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/ApplicationPackageManager$2;-><init>(Landroid/app/ApplicationPackageManager;Landroid/content/pm/PackageManager$OnChecksumsReadyListener;)V -HSPLandroid/app/ApplicationPackageManager$2;->onChecksumsReady(Ljava/util/List;)V -HSPLandroid/app/ApplicationPackageManager$3;->recompute(Ljava/lang/Integer;)Landroid/app/ApplicationPackageManager$GetPackagesForUidResult; -HSPLandroid/app/ApplicationPackageManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/ApplicationPackageManager$GetPackagesForUidResult;-><init>([Ljava/lang/String;)V -HSPLandroid/app/ApplicationPackageManager$GetPackagesForUidResult;->value()[Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager$HasSystemFeatureQuery;-><init>(Ljava/lang/String;I)V -HSPLandroid/app/ApplicationPackageManager$HasSystemFeatureQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/ApplicationPackageManager$HasSystemFeatureQuery;->hashCode()I -HSPLandroid/app/ApplicationPackageManager$ResourceName;-><init>(Ljava/lang/String;I)V -HSPLandroid/app/ApplicationPackageManager$ResourceName;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/ApplicationPackageManager$ResourceName;->hashCode()I -HSPLandroid/app/ApplicationPackageManager;->addOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V -HSPLandroid/app/ApplicationPackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/ApplicationPackageManager;->checkSignatures(II)I -HSPLandroid/app/ApplicationPackageManager;->checkSignatures(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/app/ApplicationPackageManager;->configurationChanged()V -HSPLandroid/app/ApplicationPackageManager;->encodeCertificates(Ljava/util/List;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getActivityInfo(Landroid/content/ComponentName;I)Landroid/content/pm/ActivityInfo; -HSPLandroid/app/ApplicationPackageManager;->getActivityInfo(Landroid/content/ComponentName;Landroid/content/pm/PackageManager$ComponentInfoFlags;)Landroid/content/pm/ActivityInfo; -HSPLandroid/app/ApplicationPackageManager;->getApplicationEnabledSetting(Ljava/lang/String;)I -HSPLandroid/app/ApplicationPackageManager;->getApplicationIcon(Landroid/content/pm/ApplicationInfo;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/ApplicationPackageManager;->getApplicationInfo(Ljava/lang/String;Landroid/content/pm/PackageManager$ApplicationInfoFlags;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/ApplicationPackageManager;->getApplicationInfoAsUser(Ljava/lang/String;II)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/ApplicationPackageManager;->getApplicationInfoAsUser(Ljava/lang/String;Landroid/content/pm/PackageManager$ApplicationInfoFlags;I)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/ApplicationPackageManager;->getApplicationLabel(Landroid/content/pm/ApplicationInfo;)Ljava/lang/CharSequence; -HSPLandroid/app/ApplicationPackageManager;->getCachedIcon(Landroid/app/ApplicationPackageManager$ResourceName;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->getCachedString(Landroid/app/ApplicationPackageManager$ResourceName;)Ljava/lang/CharSequence; -HSPLandroid/app/ApplicationPackageManager;->getComponentEnabledSetting(Landroid/content/ComponentName;)I -HSPLandroid/app/ApplicationPackageManager;->getDefaultTextClassifierPackageName()Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getDrawable(Ljava/lang/String;ILandroid/content/pm/ApplicationInfo;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->getInstallSourceInfo(Ljava/lang/String;)Landroid/content/pm/InstallSourceInfo; -HSPLandroid/app/ApplicationPackageManager;->getInstalledApplications(I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledApplicationsAsUser(II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledApplicationsAsUser(Landroid/content/pm/PackageManager$ApplicationInfoFlags;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledPackages(I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledPackages(Landroid/content/pm/PackageManager$PackageInfoFlags;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledPackagesAsUser(II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstalledPackagesAsUser(Landroid/content/pm/PackageManager$PackageInfoFlags;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getInstallerPackageName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getLaunchIntentForPackage(Ljava/lang/String;)Landroid/content/Intent;+]Landroid/app/ApplicationPackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/app/ApplicationPackageManager;->getModuleInfo(Ljava/lang/String;I)Landroid/content/pm/ModuleInfo; -HSPLandroid/app/ApplicationPackageManager;->getNameForUid(I)Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo; -HSPLandroid/app/ApplicationPackageManager;->getPackageInfo(Ljava/lang/String;Landroid/content/pm/PackageManager$PackageInfoFlags;)Landroid/content/pm/PackageInfo; -HSPLandroid/app/ApplicationPackageManager;->getPackageInfoAsUser(Ljava/lang/String;II)Landroid/content/pm/PackageInfo; -HSPLandroid/app/ApplicationPackageManager;->getPackageInfoAsUser(Ljava/lang/String;Landroid/content/pm/PackageManager$PackageInfoFlags;I)Landroid/content/pm/PackageInfo; -HSPLandroid/app/ApplicationPackageManager;->getPackageInstaller()Landroid/content/pm/PackageInstaller; -HSPLandroid/app/ApplicationPackageManager;->getPackageUid(Ljava/lang/String;I)I -HSPLandroid/app/ApplicationPackageManager;->getPackageUid(Ljava/lang/String;Landroid/content/pm/PackageManager$PackageInfoFlags;)I -HSPLandroid/app/ApplicationPackageManager;->getPackageUidAsUser(Ljava/lang/String;I)I -HSPLandroid/app/ApplicationPackageManager;->getPackageUidAsUser(Ljava/lang/String;II)I -HSPLandroid/app/ApplicationPackageManager;->getPackageUidAsUser(Ljava/lang/String;Landroid/content/pm/PackageManager$PackageInfoFlags;I)I -HSPLandroid/app/ApplicationPackageManager;->getPackagesForUid(I)[Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getPackagesHoldingPermissions([Ljava/lang/String;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->getPermissionControllerPackageName()Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)I -HSPLandroid/app/ApplicationPackageManager;->getPermissionInfo(Ljava/lang/String;I)Landroid/content/pm/PermissionInfo; -HSPLandroid/app/ApplicationPackageManager;->getPermissionManager()Landroid/permission/PermissionManager; -HSPLandroid/app/ApplicationPackageManager;->getProviderInfo(Landroid/content/ComponentName;I)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->getProviderInfo(Landroid/content/ComponentName;Landroid/content/pm/PackageManager$ComponentInfoFlags;)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->getReceiverInfo(Landroid/content/ComponentName;I)Landroid/content/pm/ActivityInfo; -HSPLandroid/app/ApplicationPackageManager;->getReceiverInfo(Landroid/content/ComponentName;Landroid/content/pm/PackageManager$ComponentInfoFlags;)Landroid/content/pm/ActivityInfo; -HSPLandroid/app/ApplicationPackageManager;->getResourcesForApplication(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/Resources; -HSPLandroid/app/ApplicationPackageManager;->getResourcesForApplication(Landroid/content/pm/ApplicationInfo;Landroid/content/res/Configuration;)Landroid/content/res/Resources; -HSPLandroid/app/ApplicationPackageManager;->getResourcesForApplication(Ljava/lang/String;)Landroid/content/res/Resources; -HSPLandroid/app/ApplicationPackageManager;->getServiceInfo(Landroid/content/ComponentName;I)Landroid/content/pm/ServiceInfo; -HSPLandroid/app/ApplicationPackageManager;->getServiceInfo(Landroid/content/ComponentName;Landroid/content/pm/PackageManager$ComponentInfoFlags;)Landroid/content/pm/ServiceInfo; -HSPLandroid/app/ApplicationPackageManager;->getServicesSystemSharedLibraryPackageName()Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getSystemAvailableFeatures()[Landroid/content/pm/FeatureInfo; -HSPLandroid/app/ApplicationPackageManager;->getSystemSharedLibraryNames()[Ljava/lang/String; -HSPLandroid/app/ApplicationPackageManager;->getText(Ljava/lang/String;ILandroid/content/pm/ApplicationInfo;)Ljava/lang/CharSequence; -HSPLandroid/app/ApplicationPackageManager;->getUserBadgeColor(Landroid/os/UserHandle;Z)I -HSPLandroid/app/ApplicationPackageManager;->getUserBadgedIcon(Landroid/graphics/drawable/Drawable;Landroid/os/UserHandle;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->getUserId()I -HSPLandroid/app/ApplicationPackageManager;->getUserManager()Landroid/os/UserManager; -HSPLandroid/app/ApplicationPackageManager;->getXml(Ljava/lang/String;ILandroid/content/pm/ApplicationInfo;)Landroid/content/res/XmlResourceParser; -HSPLandroid/app/ApplicationPackageManager;->handlePackageBroadcast(I[Ljava/lang/String;Z)V -HSPLandroid/app/ApplicationPackageManager;->hasSystemFeature(Ljava/lang/String;)Z -HSPLandroid/app/ApplicationPackageManager;->hasSystemFeature(Ljava/lang/String;I)Z -HSPLandroid/app/ApplicationPackageManager;->hasUserBadge(I)Z -HSPLandroid/app/ApplicationPackageManager;->isInstantApp()Z -HSPLandroid/app/ApplicationPackageManager;->isInstantApp(Ljava/lang/String;)Z -HSPLandroid/app/ApplicationPackageManager;->isPackageSuspended(Ljava/lang/String;)Z -HSPLandroid/app/ApplicationPackageManager;->isPackageSuspendedForUser(Ljava/lang/String;I)Z -HSPLandroid/app/ApplicationPackageManager;->isSafeMode()Z -HSPLandroid/app/ApplicationPackageManager;->loadItemIcon(Landroid/content/pm/PackageItemInfo;Landroid/content/pm/ApplicationInfo;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->loadUnbadgedItemIcon(Landroid/content/pm/PackageItemInfo;Landroid/content/pm/ApplicationInfo;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/ApplicationPackageManager;->maybeAdjustApplicationInfo(Landroid/content/pm/ApplicationInfo;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/ApplicationPackageManager;->onImplicitDirectBoot(I)V -HSPLandroid/app/ApplicationPackageManager;->putCachedIcon(Landroid/app/ApplicationPackageManager$ResourceName;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/app/ApplicationPackageManager;->putCachedString(Landroid/app/ApplicationPackageManager$ResourceName;Ljava/lang/CharSequence;)V -HSPLandroid/app/ApplicationPackageManager;->queryBroadcastReceivers(Landroid/content/Intent;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryBroadcastReceivers(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryBroadcastReceiversAsUser(Landroid/content/Intent;II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryBroadcastReceiversAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentActivities(Landroid/content/Intent;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentActivities(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List;+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/content/pm/PackageManager$ResolveInfoFlags;Landroid/content/pm/PackageManager$ResolveInfoFlags;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProviders(Landroid/content/Intent;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProviders(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProvidersAsUser(Landroid/content/Intent;II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentContentProvidersAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentServices(Landroid/content/Intent;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentServices(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentServicesAsUser(Landroid/content/Intent;II)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->queryIntentServicesAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Ljava/util/List; -HSPLandroid/app/ApplicationPackageManager;->removeOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V -HSPLandroid/app/ApplicationPackageManager;->requestChecksums(Ljava/lang/String;ZILjava/util/List;Landroid/content/pm/PackageManager$OnChecksumsReadyListener;)V -HSPLandroid/app/ApplicationPackageManager;->resolveActivity(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveActivity(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveActivityAsUser(Landroid/content/Intent;II)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveActivityAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveContentProvider(Ljava/lang/String;I)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveContentProvider(Ljava/lang/String;Landroid/content/pm/PackageManager$ComponentInfoFlags;)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveContentProviderAsUser(Ljava/lang/String;II)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveContentProviderAsUser(Ljava/lang/String;Landroid/content/pm/PackageManager$ComponentInfoFlags;I)Landroid/content/pm/ProviderInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveService(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveService(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveServiceAsUser(Landroid/content/Intent;II)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->resolveServiceAsUser(Landroid/content/Intent;Landroid/content/pm/PackageManager$ResolveInfoFlags;I)Landroid/content/pm/ResolveInfo; -HSPLandroid/app/ApplicationPackageManager;->setComponentEnabledSetting(Landroid/content/ComponentName;II)V -HSPLandroid/app/ApplicationPackageManager;->setSystemAppState(Ljava/lang/String;I)V -HSPLandroid/app/ApplicationPackageManager;->updateFlagsForApplication(JI)J -HSPLandroid/app/ApplicationPackageManager;->updateFlagsForComponent(JILandroid/content/Intent;)J -HSPLandroid/app/ApplicationPackageManager;->updateFlagsForPackage(JI)J -HSPLandroid/app/ApplicationPackageManager;->updatePermissionFlags(Ljava/lang/String;Ljava/lang/String;IILandroid/os/UserHandle;)V -HSPLandroid/app/AsyncNotedAppOp$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/AsyncNotedAppOp; -HSPLandroid/app/AsyncNotedAppOp$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/AsyncNotedAppOp;-><init>(IILjava/lang/String;Ljava/lang/String;J)V -HSPLandroid/app/AsyncNotedAppOp;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/AsyncNotedAppOp;->getMessage()Ljava/lang/String; -HSPLandroid/app/AsyncNotedAppOp;->getOp()Ljava/lang/String; -HSPLandroid/app/AsyncNotedAppOp;->onConstructed()V -HSPLandroid/app/BackStackRecord$Op;-><init>(ILandroid/app/Fragment;)V -HSPLandroid/app/BackStackRecord;-><init>(Landroid/app/FragmentManagerImpl;)V -HSPLandroid/app/BackStackRecord;->add(Landroid/app/Fragment;Ljava/lang/String;)Landroid/app/FragmentTransaction; -HSPLandroid/app/BackStackRecord;->addOp(Landroid/app/BackStackRecord$Op;)V -HSPLandroid/app/BackStackRecord;->bumpBackStackNesting(I)V -HSPLandroid/app/BackStackRecord;->commit()I -HSPLandroid/app/BackStackRecord;->commitInternal(Z)I -HSPLandroid/app/BackStackRecord;->doAddOp(ILandroid/app/Fragment;Ljava/lang/String;I)V -HSPLandroid/app/BackStackRecord;->executeOps()V -HSPLandroid/app/BackStackRecord;->expandOps(Ljava/util/ArrayList;Landroid/app/Fragment;)Landroid/app/Fragment; -HSPLandroid/app/BackStackRecord;->generateOps(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z -HSPLandroid/app/BackStackRecord;->isFragmentPostponed(Landroid/app/BackStackRecord$Op;)Z -HSPLandroid/app/BackStackRecord;->isPostponed()Z -HSPLandroid/app/BackStackRecord;->runOnCommitRunnables()V -HSPLandroid/app/BroadcastOptions;-><init>()V -HSPLandroid/app/BroadcastOptions;->isTemporaryAppAllowlistSet()Z -HSPLandroid/app/BroadcastOptions;->makeBasic()Landroid/app/BroadcastOptions; -HSPLandroid/app/BroadcastOptions;->setTemporaryAppWhitelistDuration(J)V -HSPLandroid/app/BroadcastOptions;->toBundle()Landroid/os/Bundle; -HSPLandroid/app/ClientTransactionHandler;-><init>()V -HSPLandroid/app/ClientTransactionHandler;->scheduleTransaction(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/ConfigurationChangedListenerController;-><init>()V -HSPLandroid/app/ConfigurationController;-><init>(Landroid/app/ActivityThreadInternal;)V -HSPLandroid/app/ConfigurationController;->applyCompatConfiguration()Landroid/content/res/Configuration; -HSPLandroid/app/ConfigurationController;->createNewConfigAndUpdateIfNotNull(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Landroid/content/res/Configuration; -HSPLandroid/app/ConfigurationController;->getCompatConfiguration()Landroid/content/res/Configuration; -HSPLandroid/app/ConfigurationController;->getConfiguration()Landroid/content/res/Configuration; -HSPLandroid/app/ConfigurationController;->getCurDefaultDisplayDpi()I -HSPLandroid/app/ConfigurationController;->getPendingConfiguration(Z)Landroid/content/res/Configuration; -HSPLandroid/app/ConfigurationController;->handleConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/ConfigurationController;->handleConfigurationChanged(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V -HSPLandroid/app/ConfigurationController;->performConfigurationChanged(Landroid/content/ComponentCallbacks2;Landroid/content/res/Configuration;)V -HSPLandroid/app/ConfigurationController;->setCompatConfiguration(Landroid/content/res/Configuration;)V -HSPLandroid/app/ConfigurationController;->setConfiguration(Landroid/content/res/Configuration;)V -HSPLandroid/app/ConfigurationController;->updateDefaultDensity(I)V -HSPLandroid/app/ConfigurationController;->updateLocaleListFromAppContext(Landroid/content/Context;)V -HSPLandroid/app/ConfigurationController;->updatePendingConfiguration(Landroid/content/res/Configuration;)Landroid/content/res/Configuration; -HSPLandroid/app/ContentProviderHolder$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ContentProviderHolder; -HSPLandroid/app/ContentProviderHolder$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ContentProviderHolder;-><init>(Landroid/content/pm/ProviderInfo;)V -HSPLandroid/app/ContentProviderHolder;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/ContentProviderHolder;-><init>(Landroid/os/Parcel;Landroid/app/ContentProviderHolder-IA;)V -HSPLandroid/app/ContentProviderHolder;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/ContextImpl$1;-><init>(Ljava/lang/String;)V -HSPLandroid/app/ContextImpl$ApplicationContentResolver;-><init>(Landroid/content/Context;Landroid/app/ActivityThread;)V -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->acquireExistingProvider(Landroid/content/Context;Ljava/lang/String;)Landroid/content/IContentProvider; -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->acquireProvider(Landroid/content/Context;Ljava/lang/String;)Landroid/content/IContentProvider; -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->acquireUnstableProvider(Landroid/content/Context;Ljava/lang/String;)Landroid/content/IContentProvider; -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->resolveUserIdFromAuthority(Ljava/lang/String;)I -HSPLandroid/app/ContextImpl$ApplicationContentResolver;->unstableProviderDied(Landroid/content/IContentProvider;)V -HSPLandroid/app/ContextImpl;-><init>(Landroid/app/ContextImpl;Landroid/app/ActivityThread;Landroid/app/LoadedApk;Landroid/content/ContextParams;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;Landroid/os/IBinder;Landroid/os/UserHandle;ILjava/lang/ClassLoader;Ljava/lang/String;IZ)V+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/app/LoadedApk;Landroid/app/LoadedApk;]Landroid/content/ContextParams;Landroid/content/ContextParams; -HSPLandroid/app/ContextImpl;->bindIsolatedService(Landroid/content/Intent;ILjava/lang/String;Ljava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z -HSPLandroid/app/ContextImpl;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z -HSPLandroid/app/ContextImpl;->bindServiceAsUser(Landroid/content/Intent;Landroid/content/ServiceConnection;ILandroid/os/Handler;Landroid/os/UserHandle;)Z -HSPLandroid/app/ContextImpl;->bindServiceAsUser(Landroid/content/Intent;Landroid/content/ServiceConnection;ILandroid/os/UserHandle;)Z -HSPLandroid/app/ContextImpl;->bindServiceCommon(Landroid/content/Intent;Landroid/content/ServiceConnection;JLjava/lang/String;Landroid/os/Handler;Ljava/util/concurrent/Executor;Landroid/os/UserHandle;)Z -HSPLandroid/app/ContextImpl;->canLoadUnsafeResources()Z -HSPLandroid/app/ContextImpl;->checkCallingOrSelfPermission(Ljava/lang/String;)I -HSPLandroid/app/ContextImpl;->checkCallingPermission(Ljava/lang/String;)I -HSPLandroid/app/ContextImpl;->checkMode(I)V -HSPLandroid/app/ContextImpl;->checkPermission(Ljava/lang/String;II)I -HSPLandroid/app/ContextImpl;->checkPermission(Ljava/lang/String;IILandroid/os/IBinder;)I -HSPLandroid/app/ContextImpl;->checkSelfPermission(Ljava/lang/String;)I -HSPLandroid/app/ContextImpl;->checkUriPermission(Landroid/net/Uri;III)I -HSPLandroid/app/ContextImpl;->checkUriPermission(Landroid/net/Uri;IIILandroid/os/IBinder;)I -HSPLandroid/app/ContextImpl;->createActivityContext(Landroid/app/ActivityThread;Landroid/app/LoadedApk;Landroid/content/pm/ActivityInfo;Landroid/os/IBinder;ILandroid/content/res/Configuration;)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createAppContext(Landroid/app/ActivityThread;Landroid/app/LoadedApk;)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createAppContext(Landroid/app/ActivityThread;Landroid/app/LoadedApk;Ljava/lang/String;)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createApplicationContext(Landroid/content/pm/ApplicationInfo;I)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createAttributionContext(Ljava/lang/String;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createAttributionSource(Ljava/lang/String;Landroid/content/AttributionSource;Ljava/util/Set;ZI)Landroid/content/AttributionSource;+]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Landroid/permission/PermissionManager;Landroid/permission/PermissionManager;]Ljava/util/Set;missing_types -HSPLandroid/app/ContextImpl;->createConfigurationContext(Landroid/content/res/Configuration;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createContext(Landroid/content/ContextParams;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createContextAsUser(Landroid/os/UserHandle;I)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createCredentialProtectedStorageContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createDeviceProtectedStorageContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createDisplayContext(Landroid/view/Display;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createPackageContext(Ljava/lang/String;I)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createPackageContextAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createResources(Landroid/os/IBinder;Landroid/app/LoadedApk;Ljava/lang/String;Ljava/lang/Integer;Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Ljava/util/List;)Landroid/content/res/Resources; -HSPLandroid/app/ContextImpl;->createSystemContext(Landroid/app/ActivityThread;)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createSystemUiContext(Landroid/app/ContextImpl;I)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createWindowContext(ILandroid/os/Bundle;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createWindowContext(ILandroid/os/Bundle;)Landroid/window/WindowContext; -HSPLandroid/app/ContextImpl;->createWindowContext(Landroid/view/Display;ILandroid/os/Bundle;)Landroid/content/Context; -HSPLandroid/app/ContextImpl;->createWindowContext(Landroid/view/Display;ILandroid/os/Bundle;)Landroid/window/WindowContext; -HSPLandroid/app/ContextImpl;->createWindowContextBase(Landroid/os/IBinder;I)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->createWindowContextInternal(Landroid/view/Display;ILandroid/os/Bundle;)Landroid/window/WindowContext; -HSPLandroid/app/ContextImpl;->createWindowContextResources(Landroid/app/ContextImpl;)Landroid/content/res/Resources; -HSPLandroid/app/ContextImpl;->databaseList()[Ljava/lang/String; -HSPLandroid/app/ContextImpl;->deleteDatabase(Ljava/lang/String;)Z -HSPLandroid/app/ContextImpl;->deleteFile(Ljava/lang/String;)Z -HSPLandroid/app/ContextImpl;->deleteSharedPreferences(Ljava/lang/String;)Z -HSPLandroid/app/ContextImpl;->enforce(Ljava/lang/String;IZILjava/lang/String;)V -HSPLandroid/app/ContextImpl;->enforceCallingOrSelfPermission(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->enforcePermission(Ljava/lang/String;IILjava/lang/String;)V -HSPLandroid/app/ContextImpl;->ensureExternalDirsExistOrFilter([Ljava/io/File;Z)[Ljava/io/File; -HSPLandroid/app/ContextImpl;->ensurePrivateCacheDirExists(Ljava/io/File;Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->ensurePrivateDirExists(Ljava/io/File;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->ensurePrivateDirExists(Ljava/io/File;IILjava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->fileList()[Ljava/lang/String; -HSPLandroid/app/ContextImpl;->finalize()V -HSPLandroid/app/ContextImpl;->getActivityToken()Landroid/os/IBinder; -HSPLandroid/app/ContextImpl;->getApplicationContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;+]Landroid/app/LoadedApk;Landroid/app/LoadedApk; -HSPLandroid/app/ContextImpl;->getAssets()Landroid/content/res/AssetManager; -HSPLandroid/app/ContextImpl;->getAssociatedDisplayId()I -HSPLandroid/app/ContextImpl;->getAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/app/ContextImpl;->getAttributionTag()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getAutofillClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/app/ContextImpl;->getAutofillOptions()Landroid/content/AutofillOptions; -HSPLandroid/app/ContextImpl;->getBasePackageName()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getCacheDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getClassLoader()Ljava/lang/ClassLoader; -HSPLandroid/app/ContextImpl;->getCodeCacheDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getCodeCacheDirBeforeBind(Ljava/io/File;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getContentCaptureOptions()Landroid/content/ContentCaptureOptions; -HSPLandroid/app/ContextImpl;->getContentResolver()Landroid/content/ContentResolver; -HSPLandroid/app/ContextImpl;->getDataDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getDatabasePath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getDatabasesDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getDeviceId()I -HSPLandroid/app/ContextImpl;->getDir(Ljava/lang/String;I)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getDisplay()Landroid/view/Display; -HSPLandroid/app/ContextImpl;->getDisplayAdjustments(I)Landroid/view/DisplayAdjustments; -HSPLandroid/app/ContextImpl;->getDisplayId()I -HSPLandroid/app/ContextImpl;->getDisplayNoVerify()Landroid/view/Display; -HSPLandroid/app/ContextImpl;->getExternalCacheDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getExternalCacheDirs()[Ljava/io/File; -HSPLandroid/app/ContextImpl;->getExternalFilesDir(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getExternalFilesDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/app/ContextImpl;->getExternalMediaDirs()[Ljava/io/File; -HSPLandroid/app/ContextImpl;->getFileStreamPath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getFilesDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getImpl(Landroid/content/Context;)Landroid/app/ContextImpl; -HSPLandroid/app/ContextImpl;->getMainExecutor()Ljava/util/concurrent/Executor; -HSPLandroid/app/ContextImpl;->getMainLooper()Landroid/os/Looper; -HSPLandroid/app/ContextImpl;->getMainThreadHandler()Landroid/os/Handler; -HSPLandroid/app/ContextImpl;->getNoBackupFilesDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getOpPackageName()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getOuterContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->getPackageCodePath()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getPackageManager()Landroid/content/pm/PackageManager; -HSPLandroid/app/ContextImpl;->getPackageName()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getPackageResourcePath()Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getPreferencesDir()Ljava/io/File; -HSPLandroid/app/ContextImpl;->getReceiverRestrictedContext()Landroid/content/Context; -HSPLandroid/app/ContextImpl;->getResources()Landroid/content/res/Resources; -HSPLandroid/app/ContextImpl;->getSharedPreferences(Ljava/io/File;I)Landroid/content/SharedPreferences; -HSPLandroid/app/ContextImpl;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; -HSPLandroid/app/ContextImpl;->getSharedPreferencesCacheLocked()Landroid/util/ArrayMap; -HSPLandroid/app/ContextImpl;->getSharedPreferencesPath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/app/ContextImpl;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String; -HSPLandroid/app/ContextImpl;->getTheme()Landroid/content/res/Resources$Theme; -HSPLandroid/app/ContextImpl;->getThemeResId()I -HSPLandroid/app/ContextImpl;->getUser()Landroid/os/UserHandle; -HSPLandroid/app/ContextImpl;->getUserId()I -HSPLandroid/app/ContextImpl;->getWindowContextToken()Landroid/os/IBinder; -HSPLandroid/app/ContextImpl;->grantUriPermission(Ljava/lang/String;Landroid/net/Uri;I)V -HSPLandroid/app/ContextImpl;->initializeTheme()V -HSPLandroid/app/ContextImpl;->isAssociatedWithDisplay()Z -HSPLandroid/app/ContextImpl;->isCredentialProtectedStorage()Z -HSPLandroid/app/ContextImpl;->isDeviceProtectedStorage()Z -HSPLandroid/app/ContextImpl;->isRestricted()Z -HSPLandroid/app/ContextImpl;->isSystemOrSystemUI(Landroid/content/Context;)Z -HSPLandroid/app/ContextImpl;->isUiContext()Z -HSPLandroid/app/ContextImpl;->makeFilename(Ljava/io/File;Ljava/lang/String;)Ljava/io/File; -HSPLandroid/app/ContextImpl;->moveFiles(Ljava/io/File;Ljava/io/File;Ljava/lang/String;)I -HSPLandroid/app/ContextImpl;->moveSharedPreferencesFrom(Landroid/content/Context;Ljava/lang/String;)Z -HSPLandroid/app/ContextImpl;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream; -HSPLandroid/app/ContextImpl;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; -HSPLandroid/app/ContextImpl;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/app/ContextImpl;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/app/ContextImpl;->performFinalCleanup(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;I)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;I)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiverAsUser(Landroid/content/BroadcastReceiver;Landroid/os/UserHandle;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiverForAllUsers(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->registerReceiverInternal(Landroid/content/BroadcastReceiver;ILandroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;Landroid/content/Context;I)Landroid/content/Intent; -HSPLandroid/app/ContextImpl;->resolveUserId(Landroid/net/Uri;)I -HSPLandroid/app/ContextImpl;->revokeUriPermission(Landroid/net/Uri;I)V -HSPLandroid/app/ContextImpl;->scheduleFinalCleanup(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->sendBroadcast(Landroid/content/Intent;)V -HSPLandroid/app/ContextImpl;->sendBroadcast(Landroid/content/Intent;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V -HSPLandroid/app/ContextImpl;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;I)V -HSPLandroid/app/ContextImpl;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->sendOrderedBroadcast(Landroid/content/Intent;Ljava/lang/String;)V -HSPLandroid/app/ContextImpl;->sendOrderedBroadcast(Landroid/content/Intent;Ljava/lang/String;ILandroid/content/BroadcastReceiver;Landroid/os/Handler;ILjava/lang/String;Landroid/os/Bundle;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->sendOrderedBroadcast(Landroid/content/Intent;Ljava/lang/String;Landroid/content/BroadcastReceiver;Landroid/os/Handler;ILjava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->sendOrderedBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;ILandroid/os/Bundle;Landroid/content/BroadcastReceiver;Landroid/os/Handler;ILjava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->sendOrderedBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;Landroid/content/BroadcastReceiver;Landroid/os/Handler;ILjava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->sendStickyBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V -HSPLandroid/app/ContextImpl;->setAutofillClient(Landroid/view/autofill/AutofillManager$AutofillClient;)V -HSPLandroid/app/ContextImpl;->setAutofillOptions(Landroid/content/AutofillOptions;)V -HSPLandroid/app/ContextImpl;->setContentCaptureOptions(Landroid/content/ContentCaptureOptions;)V -HSPLandroid/app/ContextImpl;->setDisplay(Landroid/view/Display;)V -HSPLandroid/app/ContextImpl;->setFilePermissionsFromMode(Ljava/lang/String;II)V -HSPLandroid/app/ContextImpl;->setOuterContext(Landroid/content/Context;)V -HSPLandroid/app/ContextImpl;->setResources(Landroid/content/res/Resources;)V -HSPLandroid/app/ContextImpl;->setTheme(I)V -HSPLandroid/app/ContextImpl;->startActivity(Landroid/content/Intent;)V -HSPLandroid/app/ContextImpl;->startActivity(Landroid/content/Intent;Landroid/os/Bundle;)V -HSPLandroid/app/ContextImpl;->startForegroundService(Landroid/content/Intent;)Landroid/content/ComponentName; -HSPLandroid/app/ContextImpl;->startService(Landroid/content/Intent;)Landroid/content/ComponentName; -HSPLandroid/app/ContextImpl;->startServiceAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/ComponentName; -HSPLandroid/app/ContextImpl;->startServiceCommon(Landroid/content/Intent;ZLandroid/os/UserHandle;)Landroid/content/ComponentName; -HSPLandroid/app/ContextImpl;->stopService(Landroid/content/Intent;)Z -HSPLandroid/app/ContextImpl;->stopServiceCommon(Landroid/content/Intent;Landroid/os/UserHandle;)Z -HSPLandroid/app/ContextImpl;->unbindService(Landroid/content/ServiceConnection;)V -HSPLandroid/app/ContextImpl;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V -HSPLandroid/app/ContextImpl;->updateDeviceId(I)V -HSPLandroid/app/ContextImpl;->updateDeviceIdIfChanged(I)V -HSPLandroid/app/ContextImpl;->updateDisplay(I)V -HSPLandroid/app/ContextImpl;->validateServiceIntent(Landroid/content/Intent;)V -HSPLandroid/app/ContextImpl;->warnIfCallingFromSystemProcess()V -HSPLandroid/app/DexLoadReporter;->getInstance()Landroid/app/DexLoadReporter; -HSPLandroid/app/DexLoadReporter;->isSecondaryDexFile(Ljava/lang/String;[Ljava/lang/String;)Z -HSPLandroid/app/DexLoadReporter;->notifyPackageManager(Ljava/util/Map;)V -HSPLandroid/app/DexLoadReporter;->registerAppDataDir(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/DexLoadReporter;->registerSecondaryDexForProfiling(Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/app/DexLoadReporter;->registerSecondaryDexForProfiling(Ljava/util/Set;)V -HSPLandroid/app/DexLoadReporter;->report(Ljava/util/Map;)V -HSPLandroid/app/Dialog$ListenersHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/app/Dialog;-><init>(Landroid/content/Context;I)V -HSPLandroid/app/Dialog;-><init>(Landroid/content/Context;IZ)V -HSPLandroid/app/Dialog;->cancel()V -HSPLandroid/app/Dialog;->dismiss()V -HSPLandroid/app/Dialog;->dismissDialog()V -HSPLandroid/app/Dialog;->dispatchOnCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Dialog;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/app/Dialog;->findViewById(I)Landroid/view/View; -HSPLandroid/app/Dialog;->getContext()Landroid/content/Context; -HSPLandroid/app/Dialog;->getWindow()Landroid/view/Window; -HSPLandroid/app/Dialog;->hide()V -HSPLandroid/app/Dialog;->onAttachedToWindow()V -HSPLandroid/app/Dialog;->onContentChanged()V -HSPLandroid/app/Dialog;->onCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Dialog;->onDetachedFromWindow()V -HSPLandroid/app/Dialog;->onStart()V -HSPLandroid/app/Dialog;->onStop()V -HSPLandroid/app/Dialog;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/app/Dialog;->onWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/app/Dialog;->onWindowFocusChanged(Z)V -HSPLandroid/app/Dialog;->setCancelable(Z)V -HSPLandroid/app/Dialog;->setCanceledOnTouchOutside(Z)V -HSPLandroid/app/Dialog;->setContentView(Landroid/view/View;)V -HSPLandroid/app/Dialog;->setOnCancelListener(Landroid/content/DialogInterface$OnCancelListener;)V -HSPLandroid/app/Dialog;->setOnDismissListener(Landroid/content/DialogInterface$OnDismissListener;)V -HSPLandroid/app/Dialog;->setOnShowListener(Landroid/content/DialogInterface$OnShowListener;)V -HSPLandroid/app/Dialog;->setOwnerActivity(Landroid/app/Activity;)V -HSPLandroid/app/Dialog;->show()V -HSPLandroid/app/DownloadManager$CursorTranslator;-><init>(Landroid/database/Cursor;Landroid/net/Uri;Z)V -HSPLandroid/app/DownloadManager$Query;-><init>()V -HSPLandroid/app/DownloadManager$Query;->joinStrings(Ljava/lang/String;Ljava/lang/Iterable;)Ljava/lang/String; -HSPLandroid/app/DownloadManager$Query;->runQuery(Landroid/content/ContentResolver;[Ljava/lang/String;Landroid/net/Uri;)Landroid/database/Cursor; -HSPLandroid/app/DownloadManager;-><init>(Landroid/content/Context;)V -HSPLandroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor; -HSPLandroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;[Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/app/EventLogTags;->writeWmOnTopResumedGainedCalled(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/FeatureFlagsImpl;->notificationChannelVibrationEffectApi()Z -HSPLandroid/app/Fragment$1;-><init>(Landroid/app/Fragment;)V -HSPLandroid/app/Fragment;-><init>()V -HSPLandroid/app/Fragment;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/Fragment;->getActivity()Landroid/app/Activity; -HSPLandroid/app/Fragment;->getAnimatingAway()Landroid/animation/Animator; -HSPLandroid/app/Fragment;->getChildFragmentManager()Landroid/app/FragmentManager; -HSPLandroid/app/Fragment;->getContext()Landroid/content/Context; -HSPLandroid/app/Fragment;->getNextAnim()I -HSPLandroid/app/Fragment;->getNextTransition()I -HSPLandroid/app/Fragment;->getNextTransitionStyle()I -HSPLandroid/app/Fragment;->getView()Landroid/view/View; -HSPLandroid/app/Fragment;->initState()V -HSPLandroid/app/Fragment;->instantiate(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)Landroid/app/Fragment; -HSPLandroid/app/Fragment;->instantiateChildFragmentManager()V -HSPLandroid/app/Fragment;->noteStateNotSaved()V -HSPLandroid/app/Fragment;->onActivityCreated(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->onAttach(Landroid/app/Activity;)V -HSPLandroid/app/Fragment;->onAttach(Landroid/content/Context;)V -HSPLandroid/app/Fragment;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/Fragment;->onCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->onCreateAnimator(IZI)Landroid/animation/Animator; -HSPLandroid/app/Fragment;->onCreateView(Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; -HSPLandroid/app/Fragment;->onDestroy()V -HSPLandroid/app/Fragment;->onDestroyView()V -HSPLandroid/app/Fragment;->onDetach()V -HSPLandroid/app/Fragment;->onGetLayoutInflater(Landroid/os/Bundle;)Landroid/view/LayoutInflater; -HSPLandroid/app/Fragment;->onLowMemory()V -HSPLandroid/app/Fragment;->onPause()V -HSPLandroid/app/Fragment;->onResume()V -HSPLandroid/app/Fragment;->onSaveInstanceState(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->onStart()V -HSPLandroid/app/Fragment;->onStop()V -HSPLandroid/app/Fragment;->onTrimMemory(I)V -HSPLandroid/app/Fragment;->onViewCreated(Landroid/view/View;Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->onViewStateRestored(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->performActivityCreated(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->performConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/Fragment;->performCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->performCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z -HSPLandroid/app/Fragment;->performCreateView(Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; -HSPLandroid/app/Fragment;->performDestroy()V -HSPLandroid/app/Fragment;->performDestroyView()V -HSPLandroid/app/Fragment;->performDetach()V -HSPLandroid/app/Fragment;->performGetLayoutInflater(Landroid/os/Bundle;)Landroid/view/LayoutInflater; -HSPLandroid/app/Fragment;->performLowMemory()V -HSPLandroid/app/Fragment;->performPause()V -HSPLandroid/app/Fragment;->performPrepareOptionsMenu(Landroid/view/Menu;)Z -HSPLandroid/app/Fragment;->performResume()V -HSPLandroid/app/Fragment;->performSaveInstanceState(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->performStart()V -HSPLandroid/app/Fragment;->performStop()V -HSPLandroid/app/Fragment;->performTrimMemory(I)V -HSPLandroid/app/Fragment;->restoreChildFragmentState(Landroid/os/Bundle;Z)V -HSPLandroid/app/Fragment;->restoreViewState(Landroid/os/Bundle;)V -HSPLandroid/app/Fragment;->setIndex(ILandroid/app/Fragment;)V -HSPLandroid/app/Fragment;->setNextAnim(I)V -HSPLandroid/app/Fragment;->setNextTransition(II)V -HSPLandroid/app/FragmentContainer;-><init>()V -HSPLandroid/app/FragmentContainer;->instantiate(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)Landroid/app/Fragment; -HSPLandroid/app/FragmentController;-><init>(Landroid/app/FragmentHostCallback;)V -HSPLandroid/app/FragmentController;->attachHost(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentController;->createController(Landroid/app/FragmentHostCallback;)Landroid/app/FragmentController; -HSPLandroid/app/FragmentController;->dispatchActivityCreated()V -HSPLandroid/app/FragmentController;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/FragmentController;->dispatchCreate()V -HSPLandroid/app/FragmentController;->dispatchCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z -HSPLandroid/app/FragmentController;->dispatchDestroy()V -HSPLandroid/app/FragmentController;->dispatchLowMemory()V -HSPLandroid/app/FragmentController;->dispatchPause()V -HSPLandroid/app/FragmentController;->dispatchPrepareOptionsMenu(Landroid/view/Menu;)Z -HSPLandroid/app/FragmentController;->dispatchResume()V -HSPLandroid/app/FragmentController;->dispatchStart()V -HSPLandroid/app/FragmentController;->dispatchStop()V -HSPLandroid/app/FragmentController;->dispatchTrimMemory(I)V -HSPLandroid/app/FragmentController;->doLoaderDestroy()V -HSPLandroid/app/FragmentController;->doLoaderStart()V -HSPLandroid/app/FragmentController;->doLoaderStop(Z)V -HSPLandroid/app/FragmentController;->execPendingActions()Z -HSPLandroid/app/FragmentController;->getFragmentManager()Landroid/app/FragmentManager; -HSPLandroid/app/FragmentController;->noteStateNotSaved()V -HSPLandroid/app/FragmentController;->reportLoaderStart()V -HSPLandroid/app/FragmentController;->restoreAllState(Landroid/os/Parcelable;Landroid/app/FragmentManagerNonConfig;)V -HSPLandroid/app/FragmentController;->retainLoaderNonConfig()Landroid/util/ArrayMap; -HSPLandroid/app/FragmentController;->retainNestedNonConfig()Landroid/app/FragmentManagerNonConfig; -HSPLandroid/app/FragmentController;->saveAllState()Landroid/os/Parcelable; -HSPLandroid/app/FragmentHostCallback;-><init>(Landroid/app/Activity;)V -HSPLandroid/app/FragmentHostCallback;-><init>(Landroid/app/Activity;Landroid/content/Context;Landroid/os/Handler;I)V -HSPLandroid/app/FragmentHostCallback;->doLoaderDestroy()V -HSPLandroid/app/FragmentHostCallback;->doLoaderStart()V -HSPLandroid/app/FragmentHostCallback;->doLoaderStop(Z)V -HSPLandroid/app/FragmentHostCallback;->getActivity()Landroid/app/Activity; -HSPLandroid/app/FragmentHostCallback;->getContext()Landroid/content/Context; -HSPLandroid/app/FragmentHostCallback;->getFragmentManagerImpl()Landroid/app/FragmentManagerImpl; -HSPLandroid/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; -HSPLandroid/app/FragmentHostCallback;->getLoaderManager(Ljava/lang/String;ZZ)Landroid/app/LoaderManagerImpl; -HSPLandroid/app/FragmentHostCallback;->getRetainLoaders()Z -HSPLandroid/app/FragmentHostCallback;->inactivateFragment(Ljava/lang/String;)V -HSPLandroid/app/FragmentHostCallback;->reportLoaderStart()V -HSPLandroid/app/FragmentHostCallback;->retainLoaderNonConfig()Landroid/util/ArrayMap; -HSPLandroid/app/FragmentManager;-><init>()V -HSPLandroid/app/FragmentManagerImpl$1;-><init>(Landroid/app/FragmentManagerImpl;)V -HSPLandroid/app/FragmentManagerImpl;-><init>()V -HSPLandroid/app/FragmentManagerImpl;->addAddedFragments(Landroid/util/ArraySet;)V -HSPLandroid/app/FragmentManagerImpl;->addFragment(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->attachController(Landroid/app/FragmentHostCallback;Landroid/app/FragmentContainer;Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->beginTransaction()Landroid/app/FragmentTransaction; -HSPLandroid/app/FragmentManagerImpl;->burpActive()V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/app/FragmentManagerImpl;->checkStateLoss()V -HSPLandroid/app/FragmentManagerImpl;->cleanupExec()V -HSPLandroid/app/FragmentManagerImpl;->dispatchActivityCreated()V -HSPLandroid/app/FragmentManagerImpl;->dispatchCreate()V -HSPLandroid/app/FragmentManagerImpl;->dispatchCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z -HSPLandroid/app/FragmentManagerImpl;->dispatchMoveToState(I)V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl; -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentActivityCreated(Landroid/app/Fragment;Landroid/os/Bundle;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentAttached(Landroid/app/Fragment;Landroid/content/Context;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentCreated(Landroid/app/Fragment;Landroid/os/Bundle;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentDestroyed(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentDetached(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentPaused(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentPreAttached(Landroid/app/Fragment;Landroid/content/Context;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentPreCreated(Landroid/app/Fragment;Landroid/os/Bundle;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentResumed(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentSaveInstanceState(Landroid/app/Fragment;Landroid/os/Bundle;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentStarted(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentStopped(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentViewCreated(Landroid/app/Fragment;Landroid/view/View;Landroid/os/Bundle;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchOnFragmentViewDestroyed(Landroid/app/Fragment;Z)V -HSPLandroid/app/FragmentManagerImpl;->dispatchPause()V -HSPLandroid/app/FragmentManagerImpl;->dispatchPrepareOptionsMenu(Landroid/view/Menu;)Z -HSPLandroid/app/FragmentManagerImpl;->dispatchResume()V -HSPLandroid/app/FragmentManagerImpl;->dispatchStart()V -HSPLandroid/app/FragmentManagerImpl;->dispatchStop()V -HSPLandroid/app/FragmentManagerImpl;->doPendingDeferredStart()V -HSPLandroid/app/FragmentManagerImpl;->endAnimatingAwayFragments()V -HSPLandroid/app/FragmentManagerImpl;->enqueueAction(Landroid/app/FragmentManagerImpl$OpGenerator;Z)V -HSPLandroid/app/FragmentManagerImpl;->ensureExecReady(Z)V+]Landroid/app/FragmentHostCallback;Landroid/app/Activity$HostCallbacks;]Landroid/os/Handler;Landroid/os/Handler; -HSPLandroid/app/FragmentManagerImpl;->ensureInflatedFragmentView(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->execPendingActions()Z+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl; -HSPLandroid/app/FragmentManagerImpl;->executeOps(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V -HSPLandroid/app/FragmentManagerImpl;->executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V -HSPLandroid/app/FragmentManagerImpl;->executePendingTransactions()Z -HSPLandroid/app/FragmentManagerImpl;->executePostponedTransaction(Ljava/util/ArrayList;Ljava/util/ArrayList;)V -HSPLandroid/app/FragmentManagerImpl;->findFragmentByTag(Ljava/lang/String;)Landroid/app/Fragment; -HSPLandroid/app/FragmentManagerImpl;->findFragmentUnder(Landroid/app/Fragment;)Landroid/app/Fragment; -HSPLandroid/app/FragmentManagerImpl;->forcePostponedTransactions()V -HSPLandroid/app/FragmentManagerImpl;->generateOpsForPendingActions(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z -HSPLandroid/app/FragmentManagerImpl;->getLayoutInflaterFactory()Landroid/view/LayoutInflater$Factory2; -HSPLandroid/app/FragmentManagerImpl;->getPrimaryNavigationFragment()Landroid/app/Fragment; -HSPLandroid/app/FragmentManagerImpl;->getTargetSdk()I -HSPLandroid/app/FragmentManagerImpl;->isStateSaved()Z -HSPLandroid/app/FragmentManagerImpl;->loadAnimator(Landroid/app/Fragment;IZI)Landroid/animation/Animator; -HSPLandroid/app/FragmentManagerImpl;->makeActive(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->makeInactive(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->makeRemovedFragmentsInvisible(Landroid/util/ArraySet;)V -HSPLandroid/app/FragmentManagerImpl;->moveFragmentToExpectedState(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->moveToState(IZ)V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/app/FragmentManagerImpl;->moveToState(Landroid/app/Fragment;IIIZ)V -HSPLandroid/app/FragmentManagerImpl;->noteStateNotSaved()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/app/FragmentManagerImpl;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/app/FragmentManagerImpl;->performPendingDeferredStart(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentManagerImpl;->popBackStackImmediate()Z -HSPLandroid/app/FragmentManagerImpl;->popBackStackImmediate(Ljava/lang/String;II)Z -HSPLandroid/app/FragmentManagerImpl;->popBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;II)Z -HSPLandroid/app/FragmentManagerImpl;->postponePostponableTransactions(Ljava/util/ArrayList;Ljava/util/ArrayList;IILandroid/util/ArraySet;)I -HSPLandroid/app/FragmentManagerImpl;->removeRedundantOperationsAndExecute(Ljava/util/ArrayList;Ljava/util/ArrayList;)V -HSPLandroid/app/FragmentManagerImpl;->restoreAllState(Landroid/os/Parcelable;Landroid/app/FragmentManagerNonConfig;)V -HSPLandroid/app/FragmentManagerImpl;->saveAllState()Landroid/os/Parcelable; -HSPLandroid/app/FragmentManagerImpl;->saveFragmentBasicState(Landroid/app/Fragment;)Landroid/os/Bundle; -HSPLandroid/app/FragmentManagerImpl;->saveNonConfig()V -HSPLandroid/app/FragmentManagerImpl;->scheduleCommit()V -HSPLandroid/app/FragmentManagerImpl;->setRetaining(Landroid/app/FragmentManagerNonConfig;)V -HSPLandroid/app/FragmentManagerImpl;->startPendingDeferredFragments()V+]Landroid/app/FragmentManagerImpl;Landroid/app/FragmentManagerImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/app/FragmentManagerState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/FragmentManagerState; -HSPLandroid/app/FragmentManagerState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/FragmentManagerState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/FragmentManagerState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/FragmentState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/FragmentState; -HSPLandroid/app/FragmentState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/FragmentState$1;->newArray(I)[Landroid/app/FragmentState; -HSPLandroid/app/FragmentState$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/app/FragmentState;-><init>(Landroid/app/Fragment;)V -HSPLandroid/app/FragmentState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/FragmentState;->instantiate(Landroid/app/FragmentHostCallback;Landroid/app/FragmentContainer;Landroid/app/Fragment;Landroid/app/FragmentManagerNonConfig;)Landroid/app/Fragment; -HSPLandroid/app/FragmentState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/FragmentTransaction;-><init>()V -HSPLandroid/app/FragmentTransition;->addToFirstInLastOut(Landroid/app/BackStackRecord;Landroid/app/BackStackRecord$Op;Landroid/util/SparseArray;ZZ)V -HSPLandroid/app/FragmentTransition;->calculateFragments(Landroid/app/BackStackRecord;Landroid/util/SparseArray;Z)V -HSPLandroid/app/FragmentTransition;->startTransitions(Landroid/app/FragmentManagerImpl;Ljava/util/ArrayList;Ljava/util/ArrayList;IIZ)V -HSPLandroid/app/GameManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/GameManager;->isAngleEnabled(Ljava/lang/String;)Z -HSPLandroid/app/IActivityClientController$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityDestroyed(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityIdle(Landroid/os/IBinder;Landroid/content/res/Configuration;Z)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityPaused(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityResumed(Landroid/os/IBinder;Z)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityStopped(Landroid/os/IBinder;Landroid/os/Bundle;Landroid/os/PersistableBundle;Ljava/lang/CharSequence;)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->activityTopResumedStateLost()V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IActivityClientController$Stub$Proxy;->finishActivity(Landroid/os/IBinder;ILandroid/content/Intent;I)Z -HSPLandroid/app/IActivityClientController$Stub$Proxy;->getCallingActivity(Landroid/os/IBinder;)Landroid/content/ComponentName; -HSPLandroid/app/IActivityClientController$Stub$Proxy;->getDisplayId(Landroid/os/IBinder;)I -HSPLandroid/app/IActivityClientController$Stub$Proxy;->getTaskForActivity(Landroid/os/IBinder;Z)I -HSPLandroid/app/IActivityClientController$Stub$Proxy;->overridePendingTransition(Landroid/os/IBinder;Ljava/lang/String;III)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->reportActivityFullyDrawn(Landroid/os/IBinder;Z)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->reportSizeConfigurations(Landroid/os/IBinder;Landroid/window/SizeConfigurationBuckets;)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->setRequestedOrientation(Landroid/os/IBinder;I)V -HSPLandroid/app/IActivityClientController$Stub$Proxy;->setTaskDescription(Landroid/os/IBinder;Landroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/IActivityClientController$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IActivityClientController; -HSPLandroid/app/IActivityManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->addPackageDependency(Ljava/lang/String;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IActivityManager$Stub$Proxy;->attachApplication(Landroid/app/IApplicationThread;J)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->backupAgentCreated(Ljava/lang/String;Landroid/os/IBinder;I)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;Ljava/lang/String;I)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/IActivityManager$Stub$Proxy;->cancelIntentSender(Landroid/content/IIntentSender;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermission(Ljava/lang/String;II)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermissionForDevice(Ljava/lang/String;III)I+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/IActivityManager$Stub$Proxy;->checkUriPermission(Landroid/net/Uri;IIIILandroid/os/IBinder;)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getCurrentUser()Landroid/content/pm/UserInfo; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getCurrentUserId()I -HSPLandroid/app/IActivityManager$Stub$Proxy;->getHistoricalProcessExitReasons(Ljava/lang/String;III)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getInfoForIntentSender(Landroid/content/IIntentSender;)Landroid/app/ActivityManager$PendingIntentInfo; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getIntentSenderWithFeature(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;I)Landroid/content/IIntentSender; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->getMyMemoryState(Landroid/app/ActivityManager$RunningAppProcessInfo;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->getProcessMemoryInfo([I)[Landroid/os/Debug$MemoryInfo; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getRunningAppProcesses()Ljava/util/List; -HSPLandroid/app/IActivityManager$Stub$Proxy;->getServices(II)Ljava/util/List; -HSPLandroid/app/IActivityManager$Stub$Proxy;->grantUriPermission(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/net/Uri;II)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->handleApplicationWtf(Landroid/os/IBinder;Ljava/lang/String;ZLandroid/app/ApplicationErrorReport$ParcelableCrashInfo;I)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->isBackgroundRestricted(Ljava/lang/String;)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->isIntentSenderAnActivity(Landroid/content/IIntentSender;)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->isUserAMonkey()Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->publishContentProviders(Landroid/app/IApplicationThread;Ljava/util/List;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->publishService(Landroid/os/IBinder;Landroid/content/Intent;Landroid/os/IBinder;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->refContentProvider(Landroid/os/IBinder;II)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->registerReceiverWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent; -HSPLandroid/app/IActivityManager$Stub$Proxy;->registerStrictModeCallback(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->registerUidObserver(Landroid/app/IUidObserver;IILjava/lang/String;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->removeContentProvider(Landroid/os/IBinder;Z)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->revokeUriPermission(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/net/Uri;II)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/IActivityManager$Stub$Proxy;->setRenderThread(I)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->setServiceForeground(Landroid/content/ComponentName;Landroid/os/IBinder;ILandroid/app/Notification;II)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;I)Landroid/content/ComponentName; -HSPLandroid/app/IActivityManager$Stub$Proxy;->stopService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;I)I -HSPLandroid/app/IActivityManager$Stub$Proxy;->stopServiceToken(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->unbindFinished(Landroid/os/IBinder;Landroid/content/Intent;Z)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->unbindService(Landroid/app/IServiceConnection;)Z -HSPLandroid/app/IActivityManager$Stub$Proxy;->unregisterReceiver(Landroid/content/IIntentReceiver;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->unstableProviderDied(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityManager$Stub$Proxy;->waitForNetworkStateUpdate(J)V -HSPLandroid/app/IActivityManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IActivityManager; -HSPLandroid/app/IActivityManager$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->getActivityClientController()Landroid/app/IActivityClientController; -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->getAppTasks(Ljava/lang/String;)Ljava/util/List; -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->getDeviceConfigurationInfo()Landroid/content/pm/ConfigurationInfo; -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->getLockTaskModeState()I -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->getRecentTasks(III)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->reportAssistContextExtras(Landroid/os/IBinder;Landroid/os/Bundle;Landroid/app/assist/AssistStructure;Landroid/app/assist/AssistContent;Landroid/net/Uri;)V -HSPLandroid/app/IActivityTaskManager$Stub$Proxy;->startActivity(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IILandroid/app/ProfilerInfo;Landroid/os/Bundle;)I -HSPLandroid/app/IActivityTaskManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IActivityTaskManager; -HSPLandroid/app/IAlarmCompleteListener$Stub$Proxy;->alarmComplete(Landroid/os/IBinder;)V -HSPLandroid/app/IAlarmListener$Stub;-><init>()V -HSPLandroid/app/IAlarmListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IAlarmListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IAlarmManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IAlarmManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IAlarmManager$Stub$Proxy;->getNextAlarmClock(I)Landroid/app/AlarmManager$AlarmClockInfo; -HSPLandroid/app/IAlarmManager$Stub$Proxy;->remove(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)V -HSPLandroid/app/IAlarmManager$Stub$Proxy;->set(Ljava/lang/String;IJJJILandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;Landroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;)V -HSPLandroid/app/IAlarmManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IAlarmManager; -HSPLandroid/app/IAppTask$Stub$Proxy;->getTaskInfo()Landroid/app/ActivityManager$RecentTaskInfo; -HSPLandroid/app/IAppTraceRetriever$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IAppTraceRetriever$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IAppTraceRetriever; -HSPLandroid/app/IApplicationThread$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IApplicationThread$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IApplicationThread$Stub;-><init>()V -HSPLandroid/app/IApplicationThread$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IApplicationThread$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IApplicationThread; -HSPLandroid/app/IApplicationThread$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/app/IApplicationThread$Stub;->getMaxTransactionId()I -HSPLandroid/app/IApplicationThread$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/app/IApplicationThread$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IBackupAgent$Stub;-><init>()V -HSPLandroid/app/IBackupAgent$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IBackupAgent$Stub;->getMaxTransactionId()I -HSPLandroid/app/IBackupAgent$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IGameManagerService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IGameManagerService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IGameManagerService$Stub$Proxy;->isAngleEnabled(Ljava/lang/String;I)Z -HSPLandroid/app/IGameManagerService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IGameManagerService; -HSPLandroid/app/IInstrumentationWatcher$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IInstrumentationWatcher; -HSPLandroid/app/ILocalWallpaperColorConsumer$Stub;-><init>()V -HSPLandroid/app/INotificationManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->areNotificationsEnabled(Ljava/lang/String;)Z -HSPLandroid/app/INotificationManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/INotificationManager$Stub$Proxy;->cancelAllNotifications(Ljava/lang/String;I)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->cancelNotificationWithTag(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V+]Landroid/app/INotificationManager$Stub$Proxy;Landroid/app/INotificationManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/INotificationManager$Stub$Proxy;->createNotificationChannelGroups(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->createNotificationChannels(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->deleteNotificationChannel(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->enqueueNotificationWithTag(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILandroid/app/Notification;I)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->finishToken(Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/app/INotificationManager$Stub$Proxy;->getActiveNotificationsFromListener(Landroid/service/notification/INotificationListener;[Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getAppActiveNotifications(Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getNotificationChannel(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Landroid/app/NotificationChannel; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getNotificationChannelGroup(Ljava/lang/String;Ljava/lang/String;)Landroid/app/NotificationChannelGroup; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getNotificationChannelGroups(Ljava/lang/String;)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getNotificationChannels(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getNotificationPolicy(Ljava/lang/String;)Landroid/app/NotificationManager$Policy; -HSPLandroid/app/INotificationManager$Stub$Proxy;->getZenMode()I -HSPLandroid/app/INotificationManager$Stub$Proxy;->getZenRules()Ljava/util/List; -HSPLandroid/app/INotificationManager$Stub$Proxy;->isNotificationPolicyAccessGranted(Ljava/lang/String;)Z -HSPLandroid/app/INotificationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/INotificationManager; -HSPLandroid/app/IServiceConnection$Stub;-><init>()V -HSPLandroid/app/IServiceConnection$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IServiceConnection$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/app/IServiceConnection$Stub;->getMaxTransactionId()I -HSPLandroid/app/IServiceConnection$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/app/IServiceConnection$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/ITaskStackListener$Stub;-><init>()V -HSPLandroid/app/ITaskStackListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/ITaskStackListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IUiAutomationConnection$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IUiAutomationConnection; -HSPLandroid/app/IUiModeManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/IUiModeManager$Stub$Proxy;->addCallback(Landroid/app/IUiModeManagerCallback;)V -HSPLandroid/app/IUiModeManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IUiModeManager$Stub$Proxy;->getContrast()F -HSPLandroid/app/IUiModeManager$Stub$Proxy;->getCurrentModeType()I -HSPLandroid/app/IUiModeManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IUiModeManager; -HSPLandroid/app/IUiModeManagerCallback$Stub;-><init>()V -HSPLandroid/app/IUiModeManagerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IUidObserver$Stub;-><init>()V -HSPLandroid/app/IUidObserver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IUidObserver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/IUnsafeIntentStrictModeCallback$Stub;-><init>()V -HSPLandroid/app/IUriGrantsManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IUriGrantsManager$Stub$Proxy;->getUriPermissions(Ljava/lang/String;ZZ)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/IUserSwitchObserver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/IWallpaperManager$Stub$Proxy;->getWallpaperColors(III)Landroid/app/WallpaperColors; -HSPLandroid/app/IWallpaperManager$Stub$Proxy;->getWallpaperInfo(I)Landroid/app/WallpaperInfo; -HSPLandroid/app/IWallpaperManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/IWallpaperManager; -HSPLandroid/app/IWallpaperManagerCallback$Stub;-><init>()V -HSPLandroid/app/IWallpaperManagerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/Instrumentation;-><init>()V -HSPLandroid/app/Instrumentation;->basicInit(Landroid/app/ActivityThread;)V -HSPLandroid/app/Instrumentation;->callActivityOnCreate(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->callActivityOnDestroy(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnNewIntent(Landroid/app/Activity;Landroid/content/Intent;)V -HSPLandroid/app/Instrumentation;->callActivityOnNewIntent(Landroid/app/Activity;Lcom/android/internal/content/ReferrerIntent;)V -HSPLandroid/app/Instrumentation;->callActivityOnPause(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnPictureInPictureRequested(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnPostCreate(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->callActivityOnRestart(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnRestoreInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->callActivityOnResume(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnSaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->callActivityOnStart(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnStop(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callActivityOnUserLeaving(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->callApplicationOnCreate(Landroid/app/Application;)V -HSPLandroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V -HSPLandroid/app/Instrumentation;->execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult; -HSPLandroid/app/Instrumentation;->getFactory(Ljava/lang/String;)Landroid/app/AppComponentFactory; -HSPLandroid/app/Instrumentation;->isInstrumenting()Z -HSPLandroid/app/Instrumentation;->newActivity(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Intent;)Landroid/app/Activity; -HSPLandroid/app/Instrumentation;->newApplication(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Context;)Landroid/app/Application; -HSPLandroid/app/Instrumentation;->notifyStartActivityResult(ILandroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->onCreate(Landroid/os/Bundle;)V -HSPLandroid/app/Instrumentation;->onEnterAnimationComplete()V -HSPLandroid/app/Instrumentation;->postPerformCreate(Landroid/app/Activity;)V -HSPLandroid/app/Instrumentation;->prePerformCreate(Landroid/app/Activity;)V -HSPLandroid/app/IntentReceiverLeaked;-><init>(Ljava/lang/String;)V -HSPLandroid/app/IntentService$ServiceHandler;-><init>(Landroid/app/IntentService;Landroid/os/Looper;)V -HSPLandroid/app/IntentService$ServiceHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/app/IntentService;-><init>(Ljava/lang/String;)V -HSPLandroid/app/IntentService;->onCreate()V -HSPLandroid/app/IntentService;->onDestroy()V -HSPLandroid/app/IntentService;->onStart(Landroid/content/Intent;I)V -HSPLandroid/app/IntentService;->onStartCommand(Landroid/content/Intent;II)I -HSPLandroid/app/JobSchedulerImpl;-><init>(Landroid/content/Context;Landroid/app/job/IJobScheduler;)V -HSPLandroid/app/JobSchedulerImpl;-><init>(Landroid/content/Context;Landroid/app/job/IJobScheduler;Ljava/lang/String;)V -HSPLandroid/app/JobSchedulerImpl;->cancel(I)V -HSPLandroid/app/JobSchedulerImpl;->enqueue(Landroid/app/job/JobInfo;Landroid/app/job/JobWorkItem;)I -HSPLandroid/app/JobSchedulerImpl;->getAllPendingJobs()Ljava/util/List; -HSPLandroid/app/JobSchedulerImpl;->getPendingJob(I)Landroid/app/job/JobInfo; -HSPLandroid/app/JobSchedulerImpl;->schedule(Landroid/app/job/JobInfo;)I -HSPLandroid/app/JobSchedulerImpl;->scheduleAsPackage(Landroid/app/job/JobInfo;Ljava/lang/String;ILjava/lang/String;)I -HSPLandroid/app/KeyguardManager$1;-><init>(Landroid/app/KeyguardManager;)V -HSPLandroid/app/KeyguardManager;-><init>(Landroid/content/Context;)V -HSPLandroid/app/KeyguardManager;->inKeyguardRestrictedInputMode()Z -HSPLandroid/app/KeyguardManager;->isDeviceLocked()Z -HSPLandroid/app/KeyguardManager;->isDeviceLocked(I)Z -HSPLandroid/app/KeyguardManager;->isDeviceSecure()Z -HSPLandroid/app/KeyguardManager;->isDeviceSecure(I)Z -HSPLandroid/app/KeyguardManager;->isKeyguardLocked()Z -HSPLandroid/app/KeyguardManager;->isKeyguardSecure()Z -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0;-><init>(Landroid/app/LoadedApk$ReceiverDispatcher$Args;)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0;->run()V -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;-><init>(Landroid/app/LoadedApk$ReceiverDispatcher;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;->getRunnable()Ljava/lang/Runnable; -HSPLandroid/app/LoadedApk$ReceiverDispatcher$Args;->lambda$getRunnable$0()V+]Landroid/app/LoadedApk$ReceiverDispatcher$Args;Landroid/app/LoadedApk$ReceiverDispatcher$Args;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZI)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher;-><init>(Landroid/app/IApplicationThread;Landroid/content/BroadcastReceiver;Landroid/content/Context;Landroid/os/Handler;Landroid/app/Instrumentation;Z)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher;->getIIntentReceiver()Landroid/content/IIntentReceiver; -HSPLandroid/app/LoadedApk$ReceiverDispatcher;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIILjava/lang/String;)V -HSPLandroid/app/LoadedApk$ReceiverDispatcher;->validate(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo;-><init>()V -HSPLandroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo;-><init>(Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo-IA;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$DeathMonitor;-><init>(Landroid/app/LoadedApk$ServiceDispatcher;Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$DeathMonitor;->binderDied()V -HSPLandroid/app/LoadedApk$ServiceDispatcher$InnerConnection;-><init>(Landroid/app/LoadedApk$ServiceDispatcher;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$InnerConnection;->connected(Landroid/content/ComponentName;Landroid/os/IBinder;Z)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$RunConnection;-><init>(Landroid/app/LoadedApk$ServiceDispatcher;Landroid/content/ComponentName;Landroid/os/IBinder;IZ)V -HSPLandroid/app/LoadedApk$ServiceDispatcher$RunConnection;->run()V -HSPLandroid/app/LoadedApk$ServiceDispatcher;-><init>(Landroid/content/ServiceConnection;Landroid/content/Context;Landroid/os/Handler;J)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;-><init>(Landroid/content/ServiceConnection;Landroid/content/Context;Ljava/util/concurrent/Executor;J)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->connected(Landroid/content/ComponentName;Landroid/os/IBinder;Z)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->death(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->doConnected(Landroid/content/ComponentName;Landroid/os/IBinder;Z)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->doDeath(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->doForget()V -HSPLandroid/app/LoadedApk$ServiceDispatcher;->getFlags()J -HSPLandroid/app/LoadedApk$ServiceDispatcher;->getIServiceConnection()Landroid/app/IServiceConnection; -HSPLandroid/app/LoadedApk$ServiceDispatcher;->validate(Landroid/content/Context;Landroid/os/Handler;Ljava/util/concurrent/Executor;)V -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;-><init>(Landroid/app/LoadedApk;Landroid/util/SparseArray;)V -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->constructSplit(I[II)V -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->ensureSplitLoaded(Ljava/lang/String;)I -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->getClassLoaderForSplit(Ljava/lang/String;)Ljava/lang/ClassLoader; -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->getSplitPathsForSplit(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/app/LoadedApk$SplitDependencyLoaderImpl;->isSplitCached(I)Z -HSPLandroid/app/LoadedApk$WarningContextClassLoader;-><init>()V -HSPLandroid/app/LoadedApk$WarningContextClassLoader;-><init>(Landroid/app/LoadedApk$WarningContextClassLoader-IA;)V -HSPLandroid/app/LoadedApk;->-$$Nest$fgetmClassLoader(Landroid/app/LoadedApk;)Ljava/lang/ClassLoader; -HSPLandroid/app/LoadedApk;->-$$Nest$fgetmLock(Landroid/app/LoadedApk;)Ljava/lang/Object; -HSPLandroid/app/LoadedApk;->-$$Nest$fgetmSplitNames(Landroid/app/LoadedApk;)[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->-$$Nest$fgetmSplitResDirs(Landroid/app/LoadedApk;)[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->-$$Nest$mcreateOrUpdateClassLoaderLocked(Landroid/app/LoadedApk;Ljava/util/List;)V -HSPLandroid/app/LoadedApk;-><init>(Landroid/app/ActivityThread;)V -HSPLandroid/app/LoadedApk;-><init>(Landroid/app/ActivityThread;Landroid/content/pm/ApplicationInfo;Landroid/content/res/CompatibilityInfo;Ljava/lang/ClassLoader;ZZZ)V -HSPLandroid/app/LoadedApk;->adjustNativeLibraryPaths(Landroid/content/pm/ApplicationInfo;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/LoadedApk;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy; -HSPLandroid/app/LoadedApk;->allowVmViolations()Landroid/os/StrictMode$VmPolicy; -HSPLandroid/app/LoadedApk;->appendApkLibPathIfNeeded(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/util/List;)V -HSPLandroid/app/LoadedApk;->appendSharedLibrariesLibPathsIfNeeded(Ljava/util/List;Landroid/content/pm/ApplicationInfo;Ljava/util/Set;Ljava/util/List;)V -HSPLandroid/app/LoadedApk;->canAccessDataDir()Z -HSPLandroid/app/LoadedApk;->createAppFactory(Landroid/content/pm/ApplicationInfo;Ljava/lang/ClassLoader;)Landroid/app/AppComponentFactory; -HSPLandroid/app/LoadedApk;->createOrUpdateClassLoaderLocked(Ljava/util/List;)V -HSPLandroid/app/LoadedApk;->createSharedLibrariesLoaders(Ljava/util/List;ZLjava/lang/String;Ljava/lang/String;)Landroid/util/Pair; -HSPLandroid/app/LoadedApk;->createSharedLibraryLoader(Landroid/content/pm/SharedLibraryInfo;ZLjava/lang/String;Ljava/lang/String;)Ljava/lang/ClassLoader; -HSPLandroid/app/LoadedApk;->forgetReceiverDispatcher(Landroid/content/Context;Landroid/content/BroadcastReceiver;)Landroid/content/IIntentReceiver; -HSPLandroid/app/LoadedApk;->forgetServiceDispatcher(Landroid/content/Context;Landroid/content/ServiceConnection;)Landroid/app/IServiceConnection; -HSPLandroid/app/LoadedApk;->getAppDir()Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getAppFactory()Landroid/app/AppComponentFactory; -HSPLandroid/app/LoadedApk;->getApplication()Landroid/app/Application; -HSPLandroid/app/LoadedApk;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; -HSPLandroid/app/LoadedApk;->getAssets()Landroid/content/res/AssetManager; -HSPLandroid/app/LoadedApk;->getClassLoader()Ljava/lang/ClassLoader; -HSPLandroid/app/LoadedApk;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; -HSPLandroid/app/LoadedApk;->getCredentialProtectedDataDirFile()Ljava/io/File; -HSPLandroid/app/LoadedApk;->getDataDirFile()Ljava/io/File; -HSPLandroid/app/LoadedApk;->getDeviceProtectedDataDirFile()Ljava/io/File; -HSPLandroid/app/LoadedApk;->getOverlayDirs()[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getOverlayPaths()[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getPackageName()Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getReceiverDispatcher(Landroid/content/BroadcastReceiver;Landroid/content/Context;Landroid/os/Handler;Landroid/app/Instrumentation;Z)Landroid/content/IIntentReceiver; -HSPLandroid/app/LoadedApk;->getResDir()Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getResources()Landroid/content/res/Resources; -HSPLandroid/app/LoadedApk;->getServiceDispatcher(Landroid/content/ServiceConnection;Landroid/content/Context;Landroid/os/Handler;J)Landroid/app/IServiceConnection; -HSPLandroid/app/LoadedApk;->getServiceDispatcher(Landroid/content/ServiceConnection;Landroid/content/Context;Ljava/util/concurrent/Executor;J)Landroid/app/IServiceConnection; -HSPLandroid/app/LoadedApk;->getServiceDispatcherCommon(Landroid/content/ServiceConnection;Landroid/content/Context;Landroid/os/Handler;Ljava/util/concurrent/Executor;J)Landroid/app/IServiceConnection; -HSPLandroid/app/LoadedApk;->getSplitClassLoader(Ljava/lang/String;)Ljava/lang/ClassLoader; -HSPLandroid/app/LoadedApk;->getSplitPaths(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->getSplitResDirs()[Ljava/lang/String; -HSPLandroid/app/LoadedApk;->initializeJavaContextClassLoader()V -HSPLandroid/app/LoadedApk;->isSecurityViolation()Z -HSPLandroid/app/LoadedApk;->makeApplication(ZLandroid/app/Instrumentation;)Landroid/app/Application; -HSPLandroid/app/LoadedApk;->makeApplicationInner(ZLandroid/app/Instrumentation;)Landroid/app/Application; -HSPLandroid/app/LoadedApk;->makeApplicationInner(ZLandroid/app/Instrumentation;Z)Landroid/app/Application; -HSPLandroid/app/LoadedApk;->makePaths(Landroid/app/ActivityThread;Landroid/content/pm/ApplicationInfo;Ljava/util/List;)V -HSPLandroid/app/LoadedApk;->makePaths(Landroid/app/ActivityThread;ZLandroid/content/pm/ApplicationInfo;Ljava/util/List;Ljava/util/List;)V -HSPLandroid/app/LoadedApk;->registerAppInfoToArt()V -HSPLandroid/app/LoadedApk;->removeContextRegistrations(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/LoadedApk;->rewriteRValues(Ljava/lang/ClassLoader;Ljava/lang/String;I)V -HSPLandroid/app/LoadedApk;->setApplicationInfo(Landroid/content/pm/ApplicationInfo;)Z -HSPLandroid/app/LoadedApk;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V -HSPLandroid/app/LoadedApk;->setVmPolicy(Landroid/os/StrictMode$VmPolicy;)V -HSPLandroid/app/LoadedApk;->updateApplicationInfo(Landroid/content/pm/ApplicationInfo;Ljava/util/List;)V -HSPLandroid/app/Notification$$ExternalSyntheticLambda0;-><init>(Landroid/app/Notification;Landroid/os/Parcel;)V -HSPLandroid/app/Notification$$ExternalSyntheticLambda0;->onMarshaled(Landroid/app/PendingIntent;Landroid/os/Parcel;I)V -HSPLandroid/app/Notification$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/Notification; -HSPLandroid/app/Notification$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/Notification$Action$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/Notification$Action; -HSPLandroid/app/Notification$Action$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/Notification$Action$1;->newArray(I)[Landroid/app/Notification$Action; -HSPLandroid/app/Notification$Action$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/app/Notification$Action$Builder;-><init>(Landroid/graphics/drawable/Icon;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V -HSPLandroid/app/Notification$Action$Builder;-><init>(Landroid/graphics/drawable/Icon;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroid/app/RemoteInput;ZIZ)V -HSPLandroid/app/Notification$Action$Builder;->addExtras(Landroid/os/Bundle;)Landroid/app/Notification$Action$Builder; -HSPLandroid/app/Notification$Action$Builder;->build()Landroid/app/Notification$Action; -HSPLandroid/app/Notification$Action$Builder;->setAllowGeneratedReplies(Z)Landroid/app/Notification$Action$Builder; -HSPLandroid/app/Notification$Action$Builder;->setAuthenticationRequired(Z)Landroid/app/Notification$Action$Builder; -HSPLandroid/app/Notification$Action$Builder;->setContextual(Z)Landroid/app/Notification$Action$Builder; -HSPLandroid/app/Notification$Action$Builder;->setSemanticAction(I)Landroid/app/Notification$Action$Builder; -HSPLandroid/app/Notification$Action;-><init>(Landroid/graphics/drawable/Icon;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroid/app/RemoteInput;ZIZZ)V -HSPLandroid/app/Notification$Action;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/Notification$Action;->getAllowGeneratedReplies()Z -HSPLandroid/app/Notification$Action;->getIcon()Landroid/graphics/drawable/Icon; -HSPLandroid/app/Notification$Action;->getRemoteInputs()[Landroid/app/RemoteInput; -HSPLandroid/app/Notification$Action;->isContextual()Z -HSPLandroid/app/Notification$Action;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/Notification$BigPictureStyle;-><init>()V -HSPLandroid/app/Notification$BigPictureStyle;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$BigPictureStyle;->purgeResources()V -HSPLandroid/app/Notification$BigPictureStyle;->reduceImageSizes(Landroid/content/Context;)V -HSPLandroid/app/Notification$BigPictureStyle;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$BigTextStyle;-><init>()V -HSPLandroid/app/Notification$BigTextStyle;-><init>(Landroid/app/Notification$Builder;)V -HSPLandroid/app/Notification$BigTextStyle;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$BigTextStyle;->bigText(Ljava/lang/CharSequence;)Landroid/app/Notification$BigTextStyle; -HSPLandroid/app/Notification$BigTextStyle;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$BigTextStyle;->setBigContentTitle(Ljava/lang/CharSequence;)Landroid/app/Notification$BigTextStyle; -HSPLandroid/app/Notification$BubbleMetadata$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/Notification$BubbleMetadata; -HSPLandroid/app/Notification$BubbleMetadata$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/Notification$BubbleMetadata;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/Notification$Builder;-><init>(Landroid/content/Context;)V -HSPLandroid/app/Notification$Builder;-><init>(Landroid/content/Context;Landroid/app/Notification;)V -HSPLandroid/app/Notification$Builder;-><init>(Landroid/content/Context;Ljava/lang/String;)V -HSPLandroid/app/Notification$Builder;->addAction(Landroid/app/Notification$Action;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->addExtras(Landroid/os/Bundle;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->addPerson(Landroid/app/Person;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->addPerson(Ljava/lang/String;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->build()Landroid/app/Notification; -HSPLandroid/app/Notification$Builder;->buildUnstyled()Landroid/app/Notification; -HSPLandroid/app/Notification$Builder;->getStyle()Landroid/app/Notification$Style; -HSPLandroid/app/Notification$Builder;->maybeCloneStrippedForDelivery(Landroid/app/Notification;)Landroid/app/Notification; -HSPLandroid/app/Notification$Builder;->recoverBuilder(Landroid/content/Context;Landroid/app/Notification;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->sanitizeColor()V -HSPLandroid/app/Notification$Builder;->setAllowSystemGeneratedContextualActions(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setAutoCancel(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setBadgeIconType(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setBubbleMetadata(Landroid/app/Notification$BubbleMetadata;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setCategory(Ljava/lang/String;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setColor(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setContent(Landroid/widget/RemoteViews;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setContentInfo(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setContentIntent(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setContentText(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setContentTitle(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setCustomContentView(Landroid/widget/RemoteViews;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setDefaults(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setDeleteIntent(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setExtras(Landroid/os/Bundle;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setFlag(IZ)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setFullScreenIntent(Landroid/app/PendingIntent;Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setGroup(Ljava/lang/String;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setGroupAlertBehavior(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setGroupSummary(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setLargeIcon(Landroid/graphics/Bitmap;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setLargeIcon(Landroid/graphics/drawable/Icon;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setLights(III)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setLocalOnly(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setNumber(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setOngoing(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setOnlyAlertOnce(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setPriority(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setProgress(IIZ)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setPublicVersion(Landroid/app/Notification;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setRemoteInputHistory([Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSettingsText(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setShortcutId(Ljava/lang/String;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setShowWhen(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSmallIcon(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSmallIcon(II)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSmallIcon(Landroid/graphics/drawable/Icon;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSortKey(Ljava/lang/String;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSound(Landroid/net/Uri;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSound(Landroid/net/Uri;Landroid/media/AudioAttributes;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setStyle(Landroid/app/Notification$Style;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setSubText(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setTicker(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setTicker(Ljava/lang/CharSequence;Landroid/widget/RemoteViews;)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setTimeoutAfter(J)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setUsesChronometer(Z)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setVibrate([J)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setVisibility(I)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->setWhen(J)Landroid/app/Notification$Builder; -HSPLandroid/app/Notification$Builder;->usesStandardHeader()Z -HSPLandroid/app/Notification$Colors;-><init>()V -HSPLandroid/app/Notification$DecoratedCustomViewStyle;-><init>()V -HSPLandroid/app/Notification$InboxStyle;-><init>()V -HSPLandroid/app/Notification$InboxStyle;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$InboxStyle;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MediaStyle;-><init>()V -HSPLandroid/app/Notification$MediaStyle;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MediaStyle;->buildStyled(Landroid/app/Notification;)Landroid/app/Notification; -HSPLandroid/app/Notification$MediaStyle;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MessagingStyle$Message;-><init>(Ljava/lang/CharSequence;JLandroid/app/Person;)V -HSPLandroid/app/Notification$MessagingStyle$Message;-><init>(Ljava/lang/CharSequence;JLandroid/app/Person;Z)V -HSPLandroid/app/Notification$MessagingStyle$Message;->getDataUri()Landroid/net/Uri; -HSPLandroid/app/Notification$MessagingStyle$Message;->getMessageFromBundle(Landroid/os/Bundle;)Landroid/app/Notification$MessagingStyle$Message; -HSPLandroid/app/Notification$MessagingStyle$Message;->getMessagesFromBundleArray([Landroid/os/Parcelable;)Ljava/util/List; -HSPLandroid/app/Notification$MessagingStyle$Message;->getSenderPerson()Landroid/app/Person; -HSPLandroid/app/Notification$MessagingStyle$Message;->getText()Ljava/lang/CharSequence; -HSPLandroid/app/Notification$MessagingStyle$Message;->getTimestamp()J -HSPLandroid/app/Notification$MessagingStyle$Message;->toBundle()Landroid/os/Bundle; -HSPLandroid/app/Notification$MessagingStyle;-><init>()V -HSPLandroid/app/Notification$MessagingStyle;-><init>(Landroid/app/Person;)V -HSPLandroid/app/Notification$MessagingStyle;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MessagingStyle;->addMessage(Landroid/app/Notification$MessagingStyle$Message;)Landroid/app/Notification$MessagingStyle; -HSPLandroid/app/Notification$MessagingStyle;->findLatestIncomingMessage(Ljava/util/List;)Landroid/app/Notification$MessagingStyle$Message; -HSPLandroid/app/Notification$MessagingStyle;->fixTitleAndTextExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MessagingStyle;->getMessages()Ljava/util/List; -HSPLandroid/app/Notification$MessagingStyle;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$MessagingStyle;->setConversationTitle(Ljava/lang/CharSequence;)Landroid/app/Notification$MessagingStyle; -HSPLandroid/app/Notification$MessagingStyle;->setGroupConversation(Z)Landroid/app/Notification$MessagingStyle; -HSPLandroid/app/Notification$MessagingStyle;->validate(Landroid/content/Context;)V -HSPLandroid/app/Notification$StandardTemplateParams;-><init>()V -HSPLandroid/app/Notification$Style;-><init>()V -HSPLandroid/app/Notification$Style;->addExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$Style;->buildStyled(Landroid/app/Notification;)Landroid/app/Notification; -HSPLandroid/app/Notification$Style;->internalSetBigContentTitle(Ljava/lang/CharSequence;)V -HSPLandroid/app/Notification$Style;->purgeResources()V -HSPLandroid/app/Notification$Style;->reduceImageSizes(Landroid/content/Context;)V -HSPLandroid/app/Notification$Style;->restoreFromExtras(Landroid/os/Bundle;)V -HSPLandroid/app/Notification$Style;->setBuilder(Landroid/app/Notification$Builder;)V -HSPLandroid/app/Notification$Style;->validate(Landroid/content/Context;)V -HSPLandroid/app/Notification;-><init>()V -HSPLandroid/app/Notification;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/Notification;->addFieldsFromContext(Landroid/content/Context;Landroid/app/Notification;)V -HSPLandroid/app/Notification;->addFieldsFromContext(Landroid/content/pm/ApplicationInfo;Landroid/app/Notification;)V -HSPLandroid/app/Notification;->areStyledNotificationsVisiblyDifferent(Landroid/app/Notification$Builder;Landroid/app/Notification$Builder;)Z -HSPLandroid/app/Notification;->cloneInto(Landroid/app/Notification;Z)V -HSPLandroid/app/Notification;->findRemoteInputActionPair(Z)Landroid/util/Pair; -HSPLandroid/app/Notification;->fixDuplicateExtra(Landroid/os/Parcelable;Ljava/lang/String;)V -HSPLandroid/app/Notification;->fixDuplicateExtras()V -HSPLandroid/app/Notification;->getBubbleMetadata()Landroid/app/Notification$BubbleMetadata; -HSPLandroid/app/Notification;->getChannelId()Ljava/lang/String; -HSPLandroid/app/Notification;->getContextualActions()Ljava/util/List; -HSPLandroid/app/Notification;->getGroup()Ljava/lang/String; -HSPLandroid/app/Notification;->getGroupAlertBehavior()I -HSPLandroid/app/Notification;->getLargeIcon()Landroid/graphics/drawable/Icon; -HSPLandroid/app/Notification;->getNotificationStyle()Ljava/lang/Class; -HSPLandroid/app/Notification;->getNotificationStyleClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLandroid/app/Notification;->getParcelableArrayFromBundle(Landroid/os/Bundle;Ljava/lang/String;Ljava/lang/Class;)[Landroid/os/Parcelable; -HSPLandroid/app/Notification;->getShortcutId()Ljava/lang/String; -HSPLandroid/app/Notification;->getSmallIcon()Landroid/graphics/drawable/Icon; -HSPLandroid/app/Notification;->getSortKey()Ljava/lang/String; -HSPLandroid/app/Notification;->isColorized()Z -HSPLandroid/app/Notification;->isForegroundService()Z -HSPLandroid/app/Notification;->isGroupChild()Z -HSPLandroid/app/Notification;->isGroupSummary()Z -HSPLandroid/app/Notification;->isMediaNotification()Z -HSPLandroid/app/Notification;->readFromParcelImpl(Landroid/os/Parcel;)V -HSPLandroid/app/Notification;->reduceImageSizes(Landroid/content/Context;)V -HSPLandroid/app/Notification;->reduceImageSizesForRemoteView(Landroid/widget/RemoteViews;Landroid/content/Context;Z)V -HSPLandroid/app/Notification;->removeTextSizeSpans(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/app/Notification;->safeCharSequence(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/app/Notification;->setSmallIcon(Landroid/graphics/drawable/Icon;)V -HSPLandroid/app/Notification;->suppressAlertingDueToGrouping()Z -HSPLandroid/app/Notification;->toString()Ljava/lang/String; -HSPLandroid/app/Notification;->visibilityToString(I)Ljava/lang/String; -HSPLandroid/app/Notification;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/Notification;->writeToParcelImpl(Landroid/os/Parcel;I)V -HSPLandroid/app/NotificationChannel$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/NotificationChannel; -HSPLandroid/app/NotificationChannel$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/NotificationChannel;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/NotificationChannel;-><init>(Ljava/lang/String;Ljava/lang/CharSequence;I)V -HSPLandroid/app/NotificationChannel;->canBubble()Z -HSPLandroid/app/NotificationChannel;->canBypassDnd()Z -HSPLandroid/app/NotificationChannel;->canShowBadge()Z -HSPLandroid/app/NotificationChannel;->enableLights(Z)V -HSPLandroid/app/NotificationChannel;->enableVibration(Z)V -HSPLandroid/app/NotificationChannel;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/NotificationChannel;->getAudioAttributes()Landroid/media/AudioAttributes; -HSPLandroid/app/NotificationChannel;->getConversationId()Ljava/lang/String; -HSPLandroid/app/NotificationChannel;->getDescription()Ljava/lang/String; -HSPLandroid/app/NotificationChannel;->getGroup()Ljava/lang/String; -HSPLandroid/app/NotificationChannel;->getId()Ljava/lang/String; -HSPLandroid/app/NotificationChannel;->getImportance()I -HSPLandroid/app/NotificationChannel;->getLightColor()I -HSPLandroid/app/NotificationChannel;->getLockscreenVisibility()I -HSPLandroid/app/NotificationChannel;->getName()Ljava/lang/CharSequence; -HSPLandroid/app/NotificationChannel;->getOriginalImportance()I -HSPLandroid/app/NotificationChannel;->getSound()Landroid/net/Uri; -HSPLandroid/app/NotificationChannel;->getTrimmedString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/NotificationChannel;->getUserLockedFields()I -HSPLandroid/app/NotificationChannel;->getVibrationPattern()[J -HSPLandroid/app/NotificationChannel;->hasUserSetImportance()Z -HSPLandroid/app/NotificationChannel;->isBlockable()Z -HSPLandroid/app/NotificationChannel;->isDeleted()Z -HSPLandroid/app/NotificationChannel;->isImportantConversation()Z -HSPLandroid/app/NotificationChannel;->setBlockable(Z)V -HSPLandroid/app/NotificationChannel;->setBypassDnd(Z)V -HSPLandroid/app/NotificationChannel;->setDescription(Ljava/lang/String;)V -HSPLandroid/app/NotificationChannel;->setGroup(Ljava/lang/String;)V -HSPLandroid/app/NotificationChannel;->setLightColor(I)V -HSPLandroid/app/NotificationChannel;->setLockscreenVisibility(I)V -HSPLandroid/app/NotificationChannel;->setShowBadge(Z)V -HSPLandroid/app/NotificationChannel;->setSound(Landroid/net/Uri;Landroid/media/AudioAttributes;)V -HSPLandroid/app/NotificationChannel;->setVibrationPattern([J)V -HSPLandroid/app/NotificationChannel;->shouldShowLights()Z -HSPLandroid/app/NotificationChannel;->shouldVibrate()Z -HSPLandroid/app/NotificationChannel;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/NotificationChannel;->writeXml(Lorg/xmlpull/v1/XmlSerializer;)V -HSPLandroid/app/NotificationChannelGroup$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/NotificationChannelGroup; -HSPLandroid/app/NotificationChannelGroup$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/NotificationChannelGroup;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/NotificationChannelGroup;-><init>(Ljava/lang/String;Ljava/lang/CharSequence;)V -HSPLandroid/app/NotificationChannelGroup;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/NotificationChannelGroup;->getChannels()Ljava/util/List; -HSPLandroid/app/NotificationChannelGroup;->getDescription()Ljava/lang/String; -HSPLandroid/app/NotificationChannelGroup;->getId()Ljava/lang/String; -HSPLandroid/app/NotificationChannelGroup;->getName()Ljava/lang/CharSequence; -HSPLandroid/app/NotificationChannelGroup;->getTrimmedString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/NotificationChannelGroup;->isBlocked()Z -HSPLandroid/app/NotificationChannelGroup;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/NotificationManager$Policy$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/NotificationManager$Policy; -HSPLandroid/app/NotificationManager$Policy$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/NotificationManager$Policy;-><init>(IIIIII)V -HSPLandroid/app/NotificationManager$Policy;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/NotificationManager$Policy;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/NotificationManager$Policy;->suppressedVisualEffectsEqual(II)Z -HSPLandroid/app/NotificationManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/NotificationManager;->areNotificationsEnabled()Z -HSPLandroid/app/NotificationManager;->cancel(I)V -HSPLandroid/app/NotificationManager;->cancel(Ljava/lang/String;I)V -HSPLandroid/app/NotificationManager;->cancelAll()V -HSPLandroid/app/NotificationManager;->cancelAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)V+]Landroid/app/INotificationManager;Landroid/app/INotificationManager$Stub$Proxy;]Landroid/content/Context;Landroid/view/ContextThemeWrapper;]Landroid/os/UserHandle;Landroid/os/UserHandle; -HSPLandroid/app/NotificationManager;->createNotificationChannel(Landroid/app/NotificationChannel;)V -HSPLandroid/app/NotificationManager;->createNotificationChannelGroup(Landroid/app/NotificationChannelGroup;)V -HSPLandroid/app/NotificationManager;->createNotificationChannelGroups(Ljava/util/List;)V -HSPLandroid/app/NotificationManager;->createNotificationChannels(Ljava/util/List;)V -HSPLandroid/app/NotificationManager;->deleteNotificationChannel(Ljava/lang/String;)V -HSPLandroid/app/NotificationManager;->fixLegacySmallIcon(Landroid/app/Notification;Ljava/lang/String;)V -HSPLandroid/app/NotificationManager;->fixNotification(Landroid/app/Notification;)Landroid/app/Notification; -HSPLandroid/app/NotificationManager;->getActiveNotifications()[Landroid/service/notification/StatusBarNotification; -HSPLandroid/app/NotificationManager;->getAutomaticZenRules()Ljava/util/Map; -HSPLandroid/app/NotificationManager;->getConsolidatedNotificationPolicy()Landroid/app/NotificationManager$Policy; -HSPLandroid/app/NotificationManager;->getCurrentInterruptionFilter()I -HSPLandroid/app/NotificationManager;->getNotificationChannel(Ljava/lang/String;)Landroid/app/NotificationChannel; -HSPLandroid/app/NotificationManager;->getNotificationChannelGroup(Ljava/lang/String;)Landroid/app/NotificationChannelGroup; -HSPLandroid/app/NotificationManager;->getNotificationChannelGroups()Ljava/util/List; -HSPLandroid/app/NotificationManager;->getNotificationChannels()Ljava/util/List; -HSPLandroid/app/NotificationManager;->getNotificationPolicy()Landroid/app/NotificationManager$Policy; -HSPLandroid/app/NotificationManager;->getService()Landroid/app/INotificationManager; -HSPLandroid/app/NotificationManager;->isNotificationPolicyAccessGranted()Z -HSPLandroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V -HSPLandroid/app/NotificationManager;->notify(Ljava/lang/String;ILandroid/app/Notification;)V -HSPLandroid/app/NotificationManager;->notifyAsUser(Ljava/lang/String;ILandroid/app/Notification;Landroid/os/UserHandle;)V -HSPLandroid/app/NotificationManager;->zenModeToInterruptionFilter(I)I -HSPLandroid/app/PendingIntent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/PendingIntent$FinishedDispatcher;-><init>(Landroid/app/PendingIntent;Landroid/app/PendingIntent$OnFinished;Landroid/os/Handler;)V -HSPLandroid/app/PendingIntent$FinishedDispatcher;->performReceive(Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZI)V -HSPLandroid/app/PendingIntent$FinishedDispatcher;->run()V -HSPLandroid/app/PendingIntent;-><init>(Landroid/content/IIntentSender;)V -HSPLandroid/app/PendingIntent;-><init>(Landroid/os/IBinder;Ljava/lang/Object;)V -HSPLandroid/app/PendingIntent;->buildServicePendingIntent(Landroid/content/Context;ILandroid/content/Intent;II)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->cancel()V -HSPLandroid/app/PendingIntent;->checkPendingIntent(ILandroid/content/Intent;Landroid/content/Context;Z)V -HSPLandroid/app/PendingIntent;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/PendingIntent;->getActivities(Landroid/content/Context;I[Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getActivitiesAsUser(Landroid/content/Context;I[Landroid/content/Intent;ILandroid/os/Bundle;Landroid/os/UserHandle;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getActivityAsUser(Landroid/content/Context;ILandroid/content/Intent;ILandroid/os/Bundle;Landroid/os/UserHandle;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getBroadcast(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getBroadcastAsUser(Landroid/content/Context;ILandroid/content/Intent;ILandroid/os/UserHandle;)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->getCachedInfo()Landroid/app/ActivityManager$PendingIntentInfo; -HSPLandroid/app/PendingIntent;->getCreatorPackage()Ljava/lang/String; -HSPLandroid/app/PendingIntent;->getCreatorUid()I -HSPLandroid/app/PendingIntent;->getIntent()Landroid/content/Intent; -HSPLandroid/app/PendingIntent;->getIntentSender()Landroid/content/IntentSender; -HSPLandroid/app/PendingIntent;->getService(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; -HSPLandroid/app/PendingIntent;->hashCode()I -HSPLandroid/app/PendingIntent;->isActivity()Z -HSPLandroid/app/PendingIntent;->isNewMutableDisallowedImplicitPendingIntent(ILandroid/content/Intent;Z)Z -HSPLandroid/app/PendingIntent;->send()V -HSPLandroid/app/PendingIntent;->send(Landroid/content/Context;ILandroid/content/Intent;)V -HSPLandroid/app/PendingIntent;->send(Landroid/content/Context;ILandroid/content/Intent;Landroid/app/PendingIntent$OnFinished;Landroid/os/Handler;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/PendingIntent;->sendAndReturnResult(Landroid/content/Context;ILandroid/content/Intent;Landroid/app/PendingIntent$OnFinished;Landroid/os/Handler;Ljava/lang/String;Landroid/os/Bundle;)I -HSPLandroid/app/PendingIntent;->setOnMarshaledListener(Landroid/app/PendingIntent$OnMarshaledListener;)V -HSPLandroid/app/PendingIntent;->toString()Ljava/lang/String; -HSPLandroid/app/PendingIntent;->writePendingIntentOrNullToParcel(Landroid/app/PendingIntent;Landroid/os/Parcel;)V -HSPLandroid/app/PendingIntent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/Person$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/Person; -HSPLandroid/app/Person$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/Person$Builder;-><init>()V -HSPLandroid/app/Person$Builder;-><init>(Landroid/app/Person;)V -HSPLandroid/app/Person$Builder;->build()Landroid/app/Person; -HSPLandroid/app/Person$Builder;->setBot(Z)Landroid/app/Person$Builder; -HSPLandroid/app/Person$Builder;->setIcon(Landroid/graphics/drawable/Icon;)Landroid/app/Person$Builder; -HSPLandroid/app/Person$Builder;->setImportant(Z)Landroid/app/Person$Builder; -HSPLandroid/app/Person$Builder;->setKey(Ljava/lang/String;)Landroid/app/Person$Builder; -HSPLandroid/app/Person$Builder;->setName(Ljava/lang/CharSequence;)Landroid/app/Person$Builder; -HSPLandroid/app/Person$Builder;->setUri(Ljava/lang/String;)Landroid/app/Person$Builder; -HSPLandroid/app/Person;-><init>(Landroid/app/Person$Builder;)V -HSPLandroid/app/Person;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/Person;->getIcon()Landroid/graphics/drawable/Icon; -HSPLandroid/app/Person;->getKey()Ljava/lang/String; -HSPLandroid/app/Person;->getName()Ljava/lang/CharSequence; -HSPLandroid/app/Person;->getUri()Ljava/lang/String; -HSPLandroid/app/Person;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/PictureInPictureParams; -HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/PictureInPictureParams;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/PropertyInvalidatedCache$1;-><init>(Landroid/app/PropertyInvalidatedCache;IFZ)V -HSPLandroid/app/PropertyInvalidatedCache$1;->removeEldestEntry(Ljava/util/Map$Entry;)Z+]Landroid/app/PropertyInvalidatedCache$1;Landroid/app/PropertyInvalidatedCache$1; -HSPLandroid/app/PropertyInvalidatedCache$DefaultComputer;-><init>(Landroid/app/PropertyInvalidatedCache;)V -HSPLandroid/app/PropertyInvalidatedCache$NoPreloadHolder;-><clinit>()V -HSPLandroid/app/PropertyInvalidatedCache$NoPreloadHolder;->next()J -HSPLandroid/app/PropertyInvalidatedCache$QueryHandler;-><init>()V -HSPLandroid/app/PropertyInvalidatedCache$QueryHandler;->shouldBypassCache(Ljava/lang/Object;)Z -HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fgetmHighWaterMark(Landroid/app/PropertyInvalidatedCache;)J -HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fgetmMaxEntries(Landroid/app/PropertyInvalidatedCache;)I -HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fputmHighWaterMark(Landroid/app/PropertyInvalidatedCache;J)V -HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V -HSPLandroid/app/PropertyInvalidatedCache;->bypass(Ljava/lang/Object;)Z+]Landroid/app/PropertyInvalidatedCache$QueryHandler;Landroid/app/PropertyInvalidatedCache$DefaultComputer; -HSPLandroid/app/PropertyInvalidatedCache;->cacheName()Ljava/lang/String; -HSPLandroid/app/PropertyInvalidatedCache;->clear()V -HSPLandroid/app/PropertyInvalidatedCache;->createMap()Ljava/util/LinkedHashMap; -HSPLandroid/app/PropertyInvalidatedCache;->createPropertyName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/PropertyInvalidatedCache;->disableLocal()V -HSPLandroid/app/PropertyInvalidatedCache;->dumpCacheInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;->getActiveCaches()Ljava/util/ArrayList; -HSPLandroid/app/PropertyInvalidatedCache;->getActiveCorks()Ljava/util/ArrayList; -HSPLandroid/app/PropertyInvalidatedCache;->getCurrentNonce()J+]Landroid/os/SystemProperties$Handle;Landroid/os/SystemProperties$Handle; -HSPLandroid/app/PropertyInvalidatedCache;->invalidateCache(Ljava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;->invalidateCacheLocked(Ljava/lang/String;)V -HSPLandroid/app/PropertyInvalidatedCache;->isDisabled()Z -HSPLandroid/app/PropertyInvalidatedCache;->isReservedNonce(J)Z -HSPLandroid/app/PropertyInvalidatedCache;->maybeCheckConsistency(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/PropertyInvalidatedCache;->query(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/app/PropertyInvalidatedCache;megamorphic_types]Ljava/util/LinkedHashMap;Landroid/app/PropertyInvalidatedCache$1; -HSPLandroid/app/PropertyInvalidatedCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/PropertyInvalidatedCache;->refresh(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/PropertyInvalidatedCache;->registerCache()V -HSPLandroid/app/QueuedWork$QueuedWorkHandler;-><init>(Landroid/os/Looper;)V -HSPLandroid/app/QueuedWork$QueuedWorkHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/app/QueuedWork;->-$$Nest$smprocessPendingWork()V -HSPLandroid/app/QueuedWork;->addFinisher(Ljava/lang/Runnable;)V -HSPLandroid/app/QueuedWork;->getHandler()Landroid/os/Handler; -HSPLandroid/app/QueuedWork;->handlerRemoveMessages(I)V+]Landroid/os/Handler;Landroid/app/QueuedWork$QueuedWorkHandler; -HSPLandroid/app/QueuedWork;->hasPendingWork()Z -HSPLandroid/app/QueuedWork;->processPendingWork()V -HSPLandroid/app/QueuedWork;->queue(Ljava/lang/Runnable;Z)V -HSPLandroid/app/QueuedWork;->removeFinisher(Ljava/lang/Runnable;)V -HSPLandroid/app/QueuedWork;->waitToFinish()V -HSPLandroid/app/ReceiverInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ReceiverInfo; -HSPLandroid/app/ReceiverInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ReceiverInfo;-><init>()V -HSPLandroid/app/ReceiverInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/ReceiverRestrictedContext;-><init>(Landroid/content/Context;)V -HSPLandroid/app/RemoteAction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/RemoteAction; -HSPLandroid/app/RemoteAction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/RemoteAction;-><init>(Landroid/graphics/drawable/Icon;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V -HSPLandroid/app/RemoteAction;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/RemoteAction;->getActionIntent()Landroid/app/PendingIntent; -HSPLandroid/app/RemoteAction;->getIcon()Landroid/graphics/drawable/Icon; -HSPLandroid/app/RemoteAction;->getTitle()Ljava/lang/CharSequence; -HSPLandroid/app/RemoteAction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/RemoteInput$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/RemoteInput; -HSPLandroid/app/RemoteInput$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/RemoteInput$1;->newArray(I)[Landroid/app/RemoteInput; -HSPLandroid/app/RemoteInput$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/app/RemoteInput;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/RemoteInput;->getAllowFreeFormInput()Z -HSPLandroid/app/RemoteInput;->getChoices()[Ljava/lang/CharSequence; -HSPLandroid/app/RemoteInput;->getEditChoicesBeforeSending()I -HSPLandroid/app/RemoteInput;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/ResourcesManager$ActivityResource;-><init>()V -HSPLandroid/app/ResourcesManager$ActivityResource;-><init>(Landroid/app/ResourcesManager$ActivityResource-IA;)V -HSPLandroid/app/ResourcesManager$ActivityResources;-><init>()V -HSPLandroid/app/ResourcesManager$ActivityResources;-><init>(Landroid/app/ResourcesManager$ActivityResources-IA;)V -HSPLandroid/app/ResourcesManager$ApkAssetsSupplier;-><init>(Landroid/app/ResourcesManager;)V -HSPLandroid/app/ResourcesManager$ApkAssetsSupplier;->load(Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets; -HSPLandroid/app/ResourcesManager$ApkKey;-><init>(Ljava/lang/String;ZZ)V -HSPLandroid/app/ResourcesManager$ApkKey;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/app/ResourcesManager$ApkKey;->hashCode()I+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/app/ResourcesManager$UpdateHandler;-><init>(Landroid/app/ResourcesManager;)V -HSPLandroid/app/ResourcesManager$UpdateHandler;-><init>(Landroid/app/ResourcesManager;Landroid/app/ResourcesManager$UpdateHandler-IA;)V -HSPLandroid/app/ResourcesManager;->-$$Nest$mloadApkAssets(Landroid/app/ResourcesManager;Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets; -HSPLandroid/app/ResourcesManager;-><init>()V -HSPLandroid/app/ResourcesManager;->addApplicationPathsLocked(Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/app/ResourcesManager;->appendLibAssetsForMainAssetPath(Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/app/ResourcesManager;->appendPendingAppInfoUpdate([Ljava/lang/String;Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/app/ResourcesManager;->applyAllPendingAppInfoUpdates()V -HSPLandroid/app/ResourcesManager;->applyCompatConfiguration(ILandroid/content/res/Configuration;)Z -HSPLandroid/app/ResourcesManager;->applyConfigurationToResources(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)Z -HSPLandroid/app/ResourcesManager;->applyConfigurationToResourcesLocked(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;Landroid/content/res/ResourcesKey;Landroid/content/res/ResourcesImpl;)V -HSPLandroid/app/ResourcesManager;->applyDisplayMetricsToConfiguration(Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;)V -HSPLandroid/app/ResourcesManager;->applyNewResourceDirsLocked([Ljava/lang/String;Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/app/ResourcesManager;->cleanupReferences(Ljava/util/ArrayList;Ljava/lang/ref/ReferenceQueue;)V -HSPLandroid/app/ResourcesManager;->cleanupReferences(Ljava/util/ArrayList;Ljava/lang/ref/ReferenceQueue;Ljava/util/function/Function;)V -HSPLandroid/app/ResourcesManager;->combinedOverlayPaths([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/app/ResourcesManager;->createApkAssetsSupplierNotLocked(Landroid/content/res/ResourcesKey;)Landroid/app/ResourcesManager$ApkAssetsSupplier; -HSPLandroid/app/ResourcesManager;->createAssetManager(Landroid/content/res/ResourcesKey;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/AssetManager; -HSPLandroid/app/ResourcesManager;->createBaseTokenResources(Landroid/os/IBinder;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Ljava/lang/ClassLoader;Ljava/util/List;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->createResources(Landroid/content/res/ResourcesKey;Ljava/lang/ClassLoader;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->createResourcesForActivity(Landroid/os/IBinder;Landroid/content/res/ResourcesKey;Landroid/content/res/Configuration;Ljava/lang/Integer;Ljava/lang/ClassLoader;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->createResourcesForActivityLocked(Landroid/os/IBinder;Landroid/content/res/Configuration;Ljava/lang/Integer;Ljava/lang/ClassLoader;Landroid/content/res/ResourcesImpl;Landroid/content/res/CompatibilityInfo;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->createResourcesImpl(Landroid/content/res/ResourcesKey;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/ResourcesImpl; -HSPLandroid/app/ResourcesManager;->createResourcesLocked(Ljava/lang/ClassLoader;Landroid/content/res/ResourcesImpl;Landroid/content/res/CompatibilityInfo;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->extractApkKeys(Landroid/content/res/ResourcesKey;)Ljava/util/ArrayList;+]Ljava/lang/String;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/app/ResourcesManager;->findKeyForResourceImplLocked(Landroid/content/res/ResourcesImpl;)Landroid/content/res/ResourcesKey; -HSPLandroid/app/ResourcesManager;->findOrCreateResourcesImplForKeyLocked(Landroid/content/res/ResourcesKey;)Landroid/content/res/ResourcesImpl; -HSPLandroid/app/ResourcesManager;->findOrCreateResourcesImplForKeyLocked(Landroid/content/res/ResourcesKey;Landroid/app/ResourcesManager$ApkAssetsSupplier;)Landroid/content/res/ResourcesImpl; -HSPLandroid/app/ResourcesManager;->findResourcesForActivityLocked(Landroid/os/IBinder;Landroid/content/res/ResourcesKey;Ljava/lang/ClassLoader;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->findResourcesImplForKeyLocked(Landroid/content/res/ResourcesKey;)Landroid/content/res/ResourcesImpl; -HSPLandroid/app/ResourcesManager;->generateConfig(Landroid/content/res/ResourcesKey;)Landroid/content/res/Configuration; -HSPLandroid/app/ResourcesManager;->generateDisplayId(Landroid/content/res/ResourcesKey;)I -HSPLandroid/app/ResourcesManager;->getAdjustedDisplay(ILandroid/content/res/Resources;)Landroid/view/Display; -HSPLandroid/app/ResourcesManager;->getConfiguration()Landroid/content/res/Configuration; -HSPLandroid/app/ResourcesManager;->getDisplayMetrics()Landroid/util/DisplayMetrics; -HSPLandroid/app/ResourcesManager;->getDisplayMetrics(ILandroid/view/DisplayAdjustments;)Landroid/util/DisplayMetrics; -HSPLandroid/app/ResourcesManager;->getDisplayMetrics(Landroid/content/res/Configuration;)Landroid/util/DisplayMetrics; -HSPLandroid/app/ResourcesManager;->getInstance()Landroid/app/ResourcesManager; -HSPLandroid/app/ResourcesManager;->getLocaleConfig()Landroid/app/LocaleConfig; -HSPLandroid/app/ResourcesManager;->getOrCreateActivityResourcesStructLocked(Landroid/os/IBinder;)Landroid/app/ResourcesManager$ActivityResources; -HSPLandroid/app/ResourcesManager;->getResources(Landroid/os/IBinder;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/Integer;Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Ljava/lang/ClassLoader;Ljava/util/List;)Landroid/content/res/Resources; -HSPLandroid/app/ResourcesManager;->initializeApplicationPaths(Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/app/ResourcesManager;->isSameResourcesOverrideConfig(Landroid/os/IBinder;Landroid/content/res/Configuration;)Z -HSPLandroid/app/ResourcesManager;->lambda$cleanupReferences$1(Ljava/util/function/Function;Ljava/util/HashSet;Ljava/lang/Object;)Z -HSPLandroid/app/ResourcesManager;->lambda$createResourcesForActivityLocked$0(Landroid/app/ResourcesManager$ActivityResource;)Ljava/lang/ref/WeakReference; -HSPLandroid/app/ResourcesManager;->loadApkAssets(Landroid/app/ResourcesManager$ApkKey;)Landroid/content/res/ApkAssets;+]Landroid/content/res/ApkAssets;Landroid/content/res/ApkAssets;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/app/ResourcesManager;->overlayPathToIdmapPath(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/ResourcesManager;->rebaseActivityOverrideConfig(Landroid/app/ResourcesManager$ActivityResource;Landroid/content/res/Configuration;I)Landroid/content/res/ResourcesKey; -HSPLandroid/app/ResourcesManager;->rebaseKeyForActivity(Landroid/os/IBinder;Landroid/content/res/ResourcesKey;Z)V -HSPLandroid/app/ResourcesManager;->rebaseKeyForDisplay(Landroid/content/res/ResourcesKey;I)V -HSPLandroid/app/ResourcesManager;->redirectResourcesToNewImplLocked(Landroid/util/ArrayMap;)V -HSPLandroid/app/ResourcesManager;->updateResourcesForActivity(Landroid/os/IBinder;Landroid/content/res/Configuration;I)V -HSPLandroid/app/ResultInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ResultInfo; -HSPLandroid/app/ResultInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ResultInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/Service;-><init>()V -HSPLandroid/app/Service;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Ljava/lang/String;Landroid/os/IBinder;Landroid/app/Application;Ljava/lang/Object;)V -HSPLandroid/app/Service;->attachBaseContext(Landroid/content/Context;)V -HSPLandroid/app/Service;->clearStartForegroundServiceStackTrace()V -HSPLandroid/app/Service;->createServiceBaseContext(Landroid/app/ActivityThread;Landroid/app/LoadedApk;)Landroid/content/Context; -HSPLandroid/app/Service;->detachAndCleanUp()V -HSPLandroid/app/Service;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V -HSPLandroid/app/Service;->getApplication()Landroid/app/Application; -HSPLandroid/app/Service;->getClassName()Ljava/lang/String; -HSPLandroid/app/Service;->logForegroundServiceStopIfNecessary()V -HSPLandroid/app/Service;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/app/Service;->onCreate()V -HSPLandroid/app/Service;->onDestroy()V -HSPLandroid/app/Service;->onLowMemory()V -HSPLandroid/app/Service;->onStart(Landroid/content/Intent;I)V -HSPLandroid/app/Service;->onStartCommand(Landroid/content/Intent;II)I -HSPLandroid/app/Service;->onTrimMemory(I)V -HSPLandroid/app/Service;->onUnbind(Landroid/content/Intent;)Z -HSPLandroid/app/Service;->setStartForegroundServiceStackTrace(Ljava/lang/String;Landroid/app/StackTrace;)V -HSPLandroid/app/Service;->startForeground(ILandroid/app/Notification;)V -HSPLandroid/app/Service;->stopForeground(I)V -HSPLandroid/app/Service;->stopForeground(Z)V -HSPLandroid/app/Service;->stopSelf()V -HSPLandroid/app/Service;->stopSelf(I)V -HSPLandroid/app/Service;->stopSelfResult(I)Z -HSPLandroid/app/ServiceConnectionLeaked;-><init>(Ljava/lang/String;)V -HSPLandroid/app/ServiceStartArgs$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/ServiceStartArgs; -HSPLandroid/app/ServiceStartArgs$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/ServiceStartArgs;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/SharedPreferencesImpl$$ExternalSyntheticLambda0;-><init>(Landroid/app/SharedPreferencesImpl;)V -HSPLandroid/app/SharedPreferencesImpl$$ExternalSyntheticLambda0;->run()V -HSPLandroid/app/SharedPreferencesImpl$1;->run()V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0;-><init>(Landroid/app/SharedPreferencesImpl$EditorImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;)V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0;->run()V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$1;-><init>(Landroid/app/SharedPreferencesImpl$EditorImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;J)V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$1;->run()V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$2;-><init>(Landroid/app/SharedPreferencesImpl$EditorImpl;Ljava/lang/Runnable;)V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl$2;->run()V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;-><init>(Landroid/app/SharedPreferencesImpl;)V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->apply()V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->clear()Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->commit()Z -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->commitToMemory()Landroid/app/SharedPreferencesImpl$MemoryCommitResult; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->notifyListeners(Landroid/app/SharedPreferencesImpl$MemoryCommitResult;)V -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putBoolean(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putFloat(Ljava/lang/String;F)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putInt(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putLong(Ljava/lang/String;J)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->putStringSet(Ljava/lang/String;Ljava/util/Set;)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->remove(Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;-><init>(JZLjava/util/List;Ljava/util/Set;Ljava/util/Map;)V -HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;-><init>(JZLjava/util/List;Ljava/util/Set;Ljava/util/Map;Landroid/app/SharedPreferencesImpl$MemoryCommitResult-IA;)V -HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;->setDiskWriteResult(ZZ)V -HSPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmCurrentMemoryStateGeneration(Landroid/app/SharedPreferencesImpl;)J -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmDiskWritesInFlight(Landroid/app/SharedPreferencesImpl;)I -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmListeners(Landroid/app/SharedPreferencesImpl;)Ljava/util/WeakHashMap; -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmLock(Landroid/app/SharedPreferencesImpl;)Ljava/lang/Object; -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmMap(Landroid/app/SharedPreferencesImpl;)Ljava/util/Map; -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmWritingToDiskLock(Landroid/app/SharedPreferencesImpl;)Ljava/lang/Object; -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fputmCurrentMemoryStateGeneration(Landroid/app/SharedPreferencesImpl;J)V -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fputmDiskWritesInFlight(Landroid/app/SharedPreferencesImpl;I)V -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fputmMap(Landroid/app/SharedPreferencesImpl;Ljava/util/Map;)V -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$menqueueDiskWrite(Landroid/app/SharedPreferencesImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Ljava/lang/Runnable;)V -HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$mwriteToFile(Landroid/app/SharedPreferencesImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Z)V -HSPLandroid/app/SharedPreferencesImpl;-><init>(Ljava/io/File;I)V -HSPLandroid/app/SharedPreferencesImpl;->awaitLoadedLocked()V -HSPLandroid/app/SharedPreferencesImpl;->contains(Ljava/lang/String;)Z -HSPLandroid/app/SharedPreferencesImpl;->createFileOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; -HSPLandroid/app/SharedPreferencesImpl;->edit()Landroid/content/SharedPreferences$Editor; -HSPLandroid/app/SharedPreferencesImpl;->enqueueDiskWrite(Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Ljava/lang/Runnable;)V -HSPLandroid/app/SharedPreferencesImpl;->getAll()Ljava/util/Map; -HSPLandroid/app/SharedPreferencesImpl;->getBoolean(Ljava/lang/String;Z)Z -HSPLandroid/app/SharedPreferencesImpl;->getFloat(Ljava/lang/String;F)F -HSPLandroid/app/SharedPreferencesImpl;->getInt(Ljava/lang/String;I)I -HSPLandroid/app/SharedPreferencesImpl;->getLong(Ljava/lang/String;J)J -HSPLandroid/app/SharedPreferencesImpl;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/SharedPreferencesImpl;->getStringSet(Ljava/lang/String;Ljava/util/Set;)Ljava/util/Set; -HSPLandroid/app/SharedPreferencesImpl;->hasFileChangedUnexpectedly()Z -HSPLandroid/app/SharedPreferencesImpl;->lambda$startLoadFromDisk$0()V -HSPLandroid/app/SharedPreferencesImpl;->loadFromDisk()V -HSPLandroid/app/SharedPreferencesImpl;->makeBackupFile(Ljava/io/File;)Ljava/io/File; -HSPLandroid/app/SharedPreferencesImpl;->registerOnSharedPreferenceChangeListener(Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener;)V -HSPLandroid/app/SharedPreferencesImpl;->startLoadFromDisk()V -HSPLandroid/app/SharedPreferencesImpl;->startReloadIfChangedUnexpectedly()V -HSPLandroid/app/SharedPreferencesImpl;->unregisterOnSharedPreferenceChangeListener(Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener;)V -HSPLandroid/app/SharedPreferencesImpl;->writeToFile(Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Z)V -HSPLandroid/app/StackTrace;-><init>(Ljava/lang/String;)V -HSPLandroid/app/StatusBarManager;-><init>(Landroid/content/Context;)V -HSPLandroid/app/SyncNotedAppOp$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/SyncNotedAppOp; -HSPLandroid/app/SyncNotedAppOp$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/SyncNotedAppOp;-><init>(IILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/SyncNotedAppOp;-><init>(ILjava/lang/String;)V -HSPLandroid/app/SyncNotedAppOp;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/SyncNotedAppOp;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/SyncNotedAppOp;->getAttributionTag()Ljava/lang/String; -HSPLandroid/app/SyncNotedAppOp;->getOp()Ljava/lang/String; -HSPLandroid/app/SyncNotedAppOp;->getOpMode()I -HSPLandroid/app/SyncNotedAppOp;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/SystemServiceRegistry$100;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$103;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$104;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$105;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$106;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$107;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$108;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$109;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$10;->createService(Landroid/app/ContextImpl;)Landroid/media/MediaRouter; -HSPLandroid/app/SystemServiceRegistry$10;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$110;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$111;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$112;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$113;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$114;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$115;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$116;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$117;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$122;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$123;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$124;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$125;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$126;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$127;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$128;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$129;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$12;->createService(Landroid/app/ContextImpl;)Landroid/view/textclassifier/TextClassificationManager; -HSPLandroid/app/SystemServiceRegistry$12;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$130;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$131;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$138;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$139;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$13;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$14;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$15;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$18;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$1;->createService(Landroid/app/ContextImpl;)Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/app/SystemServiceRegistry$1;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$21;->createService(Landroid/app/ContextImpl;)Landroid/app/admin/DevicePolicyManager; -HSPLandroid/app/SystemServiceRegistry$21;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$22;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$23;->createService(Landroid/app/ContextImpl;)Landroid/os/BatteryManager; -HSPLandroid/app/SystemServiceRegistry$23;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$24;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$25;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$26;->createService(Landroid/app/ContextImpl;)Landroid/hardware/input/InputManager; -HSPLandroid/app/SystemServiceRegistry$26;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$27;->createService(Landroid/app/ContextImpl;)Landroid/hardware/display/DisplayManager; -HSPLandroid/app/SystemServiceRegistry$27;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$28;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$29;->getService(Landroid/app/ContextImpl;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/app/SystemServiceRegistry$29;->getService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$2;->createService(Landroid/app/ContextImpl;)Landroid/view/accessibility/CaptioningManager; -HSPLandroid/app/SystemServiceRegistry$2;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$31;->createService(Landroid/app/ContextImpl;)Landroid/app/KeyguardManager; -HSPLandroid/app/SystemServiceRegistry$31;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$32;->createService(Landroid/app/ContextImpl;)Landroid/view/LayoutInflater; -HSPLandroid/app/SystemServiceRegistry$32;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$33;->createService(Landroid/app/ContextImpl;)Landroid/location/LocationManager; -HSPLandroid/app/SystemServiceRegistry$33;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$34;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$35;->createService(Landroid/app/ContextImpl;)Landroid/app/NotificationManager; -HSPLandroid/app/SystemServiceRegistry$35;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$36;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$37;->createService(Landroid/app/ContextImpl;)Landroid/os/PowerManager; -HSPLandroid/app/SystemServiceRegistry$37;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$38;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$39;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$3;->createService(Landroid/app/ContextImpl;)Landroid/accounts/AccountManager; -HSPLandroid/app/SystemServiceRegistry$3;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$40;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$41;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$42;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$43;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$44;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$45;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$46;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$47;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$48;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$49;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$4;->createService(Landroid/app/ContextImpl;)Landroid/app/ActivityManager; -HSPLandroid/app/SystemServiceRegistry$4;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$50;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$51;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$52;->createService(Landroid/app/ContextImpl;)Landroid/app/UiModeManager; -HSPLandroid/app/SystemServiceRegistry$52;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$53;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$54;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$55;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$56;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$57;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$58;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$59;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$60;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$61;->createService(Landroid/app/ContextImpl;)Landroid/os/UserManager; -HSPLandroid/app/SystemServiceRegistry$61;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$62;->createService(Landroid/app/ContextImpl;)Landroid/app/AppOpsManager; -HSPLandroid/app/SystemServiceRegistry$62;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$63;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$64;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$65;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$66;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$67;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$68;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$71;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$74;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$75;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$77;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$78;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Landroid/app/AlarmManager; -HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$83;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$84;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$85;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$86;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$87;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$88;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$89;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$8;->createService(Landroid/app/ContextImpl;)Landroid/media/AudioManager; -HSPLandroid/app/SystemServiceRegistry$8;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$90;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$91;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$92;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$93;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$94;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$95;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$96;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$97;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$98;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$99;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$9;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$CachedServiceFetcher;->getService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry$StaticServiceFetcher;->getService(Landroid/app/ContextImpl;)Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry;->createServiceCache()[Ljava/lang/Object; -HSPLandroid/app/SystemServiceRegistry;->getSystemService(Landroid/app/ContextImpl;Ljava/lang/String;)Ljava/lang/Object;+]Landroid/app/SystemServiceRegistry$ServiceFetcher;megamorphic_types -HSPLandroid/app/SystemServiceRegistry;->getSystemServiceFetcher(Ljava/lang/String;)Landroid/app/SystemServiceRegistry$ServiceFetcher;+]Ljava/util/Map;Landroid/util/ArrayMap; -HSPLandroid/app/SystemServiceRegistry;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String; -HSPLandroid/app/TaskInfo;-><init>()V -HSPLandroid/app/TaskInfo;->getWindowingMode()I -HSPLandroid/app/TaskInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/app/TaskStackListener;-><init>()V -HSPLandroid/app/TaskStackListener;->onActivityRequestedOrientationChanged(II)V -HSPLandroid/app/TaskStackListener;->onActivityRestartAttempt(Landroid/app/ActivityManager$RunningTaskInfo;ZZZ)V -HSPLandroid/app/TaskStackListener;->onRecentTaskListUpdated()V -HSPLandroid/app/TaskStackListener;->onTaskCreated(ILandroid/content/ComponentName;)V -HSPLandroid/app/TaskStackListener;->onTaskDescriptionChanged(ILandroid/app/ActivityManager$TaskDescription;)V -HSPLandroid/app/TaskStackListener;->onTaskDescriptionChanged(Landroid/app/ActivityManager$RunningTaskInfo;)V -HSPLandroid/app/TaskStackListener;->onTaskFocusChanged(IZ)V -HSPLandroid/app/TaskStackListener;->onTaskMovedToFront(I)V -HSPLandroid/app/TaskStackListener;->onTaskMovedToFront(Landroid/app/ActivityManager$RunningTaskInfo;)V -HSPLandroid/app/TaskStackListener;->onTaskRemovalStarted(I)V -HSPLandroid/app/TaskStackListener;->onTaskRemovalStarted(Landroid/app/ActivityManager$RunningTaskInfo;)V -HSPLandroid/app/TaskStackListener;->onTaskRemoved(I)V -HSPLandroid/app/TaskStackListener;->onTaskRequestedOrientationChanged(II)V -HSPLandroid/app/UiModeManager$1;-><init>(Landroid/app/UiModeManager;)V -HSPLandroid/app/UiModeManager$Globals;->-$$Nest$fgetmService(Landroid/app/UiModeManager$Globals;)Landroid/app/IUiModeManager; -HSPLandroid/app/UiModeManager$Globals;-><init>(Landroid/app/IUiModeManager;)V -HSPLandroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager;-><init>()V -HSPLandroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager;-><init>(Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager-IA;)V -HSPLandroid/app/UiModeManager;-><init>(Landroid/content/Context;)V -HSPLandroid/app/UiModeManager;->getActiveProjectionTypes()I -HSPLandroid/app/UiModeManager;->getCurrentModeType()I -HSPLandroid/app/UriGrantsManager$1;->create()Landroid/app/IUriGrantsManager; -HSPLandroid/app/UriGrantsManager$1;->create()Ljava/lang/Object; -HSPLandroid/app/UriGrantsManager;->getService()Landroid/app/IUriGrantsManager; -HSPLandroid/app/WallpaperColors$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/WallpaperColors; -HSPLandroid/app/WallpaperColors$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/WallpaperColors;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/WallpaperColors;->getColorHints()I -HSPLandroid/app/WallpaperColors;->getMainColors()Ljava/util/List; -HSPLandroid/app/WallpaperManager$Globals$1;-><init>(Landroid/app/WallpaperManager$Globals;)V -HSPLandroid/app/WallpaperManager$Globals;-><init>(Landroid/app/IWallpaperManager;Landroid/os/Looper;)V -HSPLandroid/app/WallpaperManager$Globals;->forgetLoadedWallpaper()V -HSPLandroid/app/WallpaperManager$Globals;->getWallpaperColors(III)Landroid/app/WallpaperColors; -HSPLandroid/app/WallpaperManager;-><init>(Landroid/app/IWallpaperManager;Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/WallpaperManager;->getWallpaperColors(I)Landroid/app/WallpaperColors; -HSPLandroid/app/WallpaperManager;->getWallpaperColors(II)Landroid/app/WallpaperColors; -HSPLandroid/app/WallpaperManager;->getWallpaperInfo()Landroid/app/WallpaperInfo; -HSPLandroid/app/WallpaperManager;->getWallpaperInfo(I)Landroid/app/WallpaperInfo; -HSPLandroid/app/WallpaperManager;->initGlobals(Landroid/app/IWallpaperManager;Landroid/os/Looper;)V -HSPLandroid/app/WallpaperManager;->setWallpaperZoomOut(Landroid/os/IBinder;F)V -HSPLandroid/app/WindowConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/WindowConfiguration; -HSPLandroid/app/WindowConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/WindowConfiguration;-><init>()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; -HSPLandroid/app/WindowConfiguration;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/WindowConfiguration;->activityTypeToString(I)Ljava/lang/String; -HSPLandroid/app/WindowConfiguration;->canReceiveKeys()Z -HSPLandroid/app/WindowConfiguration;->compareTo(Landroid/app/WindowConfiguration;)I -HSPLandroid/app/WindowConfiguration;->diff(Landroid/app/WindowConfiguration;Z)J+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/WindowConfiguration;->getActivityType()I -HSPLandroid/app/WindowConfiguration;->getAppBounds()Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->getBounds()Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->getDisplayRotation()I -HSPLandroid/app/WindowConfiguration;->getMaxBounds()Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->getRotation()I -HSPLandroid/app/WindowConfiguration;->getWindowingMode()I -HSPLandroid/app/WindowConfiguration;->hasWindowShadow()Z -HSPLandroid/app/WindowConfiguration;->inMultiWindowMode(I)Z -HSPLandroid/app/WindowConfiguration;->isFloating(I)Z -HSPLandroid/app/WindowConfiguration;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/WindowConfiguration;->setActivityType(I)V -HSPLandroid/app/WindowConfiguration;->setAlwaysOnTop(I)V -HSPLandroid/app/WindowConfiguration;->setAppBounds(IIII)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->setAppBounds(Landroid/graphics/Rect;)V -HSPLandroid/app/WindowConfiguration;->setBounds(Landroid/graphics/Rect;)V -HSPLandroid/app/WindowConfiguration;->setDisplayRotation(I)V -HSPLandroid/app/WindowConfiguration;->setMaxBounds(Landroid/graphics/Rect;)V -HSPLandroid/app/WindowConfiguration;->setRotation(I)V -HSPLandroid/app/WindowConfiguration;->setTo(Landroid/app/WindowConfiguration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; -HSPLandroid/app/WindowConfiguration;->setTo(Landroid/app/WindowConfiguration;I)V -HSPLandroid/app/WindowConfiguration;->setToDefaults()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; -HSPLandroid/app/WindowConfiguration;->setWindowingMode(I)V -HSPLandroid/app/WindowConfiguration;->tasksAreFloating()Z -HSPLandroid/app/WindowConfiguration;->toString()Ljava/lang/String; -HSPLandroid/app/WindowConfiguration;->unset()V -HSPLandroid/app/WindowConfiguration;->updateFrom(Landroid/app/WindowConfiguration;)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/app/WindowConfiguration;->windowingModeToString(I)Ljava/lang/String; -HSPLandroid/app/WindowConfiguration;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda5;-><init>(Landroid/app/admin/DevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda5;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda6;-><init>(Landroid/app/admin/DevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda7;-><init>(Landroid/app/admin/DevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda8;-><init>(Landroid/app/admin/DevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyManager;-><init>(Landroid/content/Context;Landroid/app/admin/IDevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyManager;-><init>(Landroid/content/Context;Landroid/app/admin/IDevicePolicyManager;Z)V -HSPLandroid/app/admin/DevicePolicyManager;->getActiveAdmins()Ljava/util/List; -HSPLandroid/app/admin/DevicePolicyManager;->getActiveAdminsAsUser(I)Ljava/util/List; -HSPLandroid/app/admin/DevicePolicyManager;->getDeviceOwner()Ljava/lang/String; -HSPLandroid/app/admin/DevicePolicyManager;->getDeviceOwnerComponentInner(Z)Landroid/content/ComponentName; -HSPLandroid/app/admin/DevicePolicyManager;->getDeviceOwnerComponentOnAnyUser()Landroid/content/ComponentName; -HSPLandroid/app/admin/DevicePolicyManager;->getDeviceOwnerComponentOnCallingUser()Landroid/content/ComponentName; -HSPLandroid/app/admin/DevicePolicyManager;->getKeyguardDisabledFeatures(Landroid/content/ComponentName;I)I -HSPLandroid/app/admin/DevicePolicyManager;->getMaximumTimeToLock(Landroid/content/ComponentName;I)J -HSPLandroid/app/admin/DevicePolicyManager;->getPasswordQuality(Landroid/content/ComponentName;)I -HSPLandroid/app/admin/DevicePolicyManager;->getPasswordQuality(Landroid/content/ComponentName;I)I -HSPLandroid/app/admin/DevicePolicyManager;->getProfileOwner()Landroid/content/ComponentName; -HSPLandroid/app/admin/DevicePolicyManager;->getProfileOwnerAsUser(I)Landroid/content/ComponentName; -HSPLandroid/app/admin/DevicePolicyManager;->getResources()Landroid/app/admin/DevicePolicyResourcesManager; -HSPLandroid/app/admin/DevicePolicyManager;->getService()Landroid/app/admin/IDevicePolicyManager; -HSPLandroid/app/admin/DevicePolicyManager;->getStorageEncryptionStatus()I -HSPLandroid/app/admin/DevicePolicyManager;->getStorageEncryptionStatus(I)I -HSPLandroid/app/admin/DevicePolicyManager;->isAdminActive(Landroid/content/ComponentName;)Z -HSPLandroid/app/admin/DevicePolicyManager;->isAdminActiveAsUser(Landroid/content/ComponentName;I)Z -HSPLandroid/app/admin/DevicePolicyManager;->isCommonCriteriaModeEnabled(Landroid/content/ComponentName;)Z -HSPLandroid/app/admin/DevicePolicyManager;->isDeviceManaged()Z -HSPLandroid/app/admin/DevicePolicyManager;->isDeviceOwnerApp(Ljava/lang/String;)Z -HSPLandroid/app/admin/DevicePolicyManager;->isDeviceOwnerAppOnCallingUser(Ljava/lang/String;)Z -HSPLandroid/app/admin/DevicePolicyManager;->isOrganizationOwnedDeviceWithManagedProfile()Z -HSPLandroid/app/admin/DevicePolicyManager;->isParentInstance()Z -HSPLandroid/app/admin/DevicePolicyManager;->isProfileOwnerApp(Ljava/lang/String;)Z -HSPLandroid/app/admin/DevicePolicyManager;->myUserId()I -HSPLandroid/app/admin/DevicePolicyManager;->throwIfParentInstance(Ljava/lang/String;)V -HSPLandroid/app/admin/DevicePolicyResourcesManager;-><clinit>()V -HSPLandroid/app/admin/DevicePolicyResourcesManager;-><init>(Landroid/content/Context;Landroid/app/admin/IDevicePolicyManager;)V -HSPLandroid/app/admin/DevicePolicyResourcesManager;->getDrawable(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Supplier;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getActiveAdmins(I)Ljava/util/List; -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getDeviceOwnerComponent(Z)Landroid/content/ComponentName; -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getKeyguardDisabledFeatures(Landroid/content/ComponentName;IZ)I -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getPasswordQuality(Landroid/content/ComponentName;IZ)I -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getProfileOwnerAsUser(I)Landroid/content/ComponentName; -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->getStorageEncryptionStatus(Ljava/lang/String;I)I -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->hasDeviceOwner()Z -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->isAdminActive(Landroid/content/ComponentName;I)Z -HSPLandroid/app/admin/IDevicePolicyManager$Stub$Proxy;->isOrganizationOwnedDeviceWithManagedProfile()Z -HSPLandroid/app/admin/IDevicePolicyManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/admin/IDevicePolicyManager; -HSPLandroid/app/admin/ParcelableResource$1;-><init>()V -HSPLandroid/app/admin/ParcelableResource;-><clinit>()V -HSPLandroid/app/admin/ParcelableResource;->loadDefaultDrawable(Ljava/util/function/Supplier;)Landroid/graphics/drawable/Drawable; -HSPLandroid/app/assist/AssistContent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/assist/AssistContent;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/app/assist/AssistStructure$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/assist/AssistStructure; -HSPLandroid/app/assist/AssistStructure$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/assist/AssistStructure$ParcelTransferReader;->fetchData()V -HSPLandroid/app/assist/AssistStructure$ParcelTransferReader;->go()V -HSPLandroid/app/assist/AssistStructure$ParcelTransferReader;->readParcel(II)Landroid/os/Parcel; -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;-><init>(Landroid/app/assist/AssistStructure;Landroid/os/Parcel;)V -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;->pushViewStackEntry(Landroid/app/assist/AssistStructure$ViewNode;I)V -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;->writeNextEntryToParcel(Landroid/app/assist/AssistStructure;Landroid/os/Parcel;Landroid/os/PooledStringWriter;)Z -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;->writeToParcel(Landroid/app/assist/AssistStructure;Landroid/os/Parcel;)V -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;->writeToParcelInner(Landroid/app/assist/AssistStructure;Landroid/os/Parcel;)Z -HSPLandroid/app/assist/AssistStructure$ParcelTransferWriter;->writeView(Landroid/app/assist/AssistStructure$ViewNode;Landroid/os/Parcel;Landroid/os/PooledStringWriter;I)V -HSPLandroid/app/assist/AssistStructure$SendChannel;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/assist/AssistStructure$ViewNode;-><init>()V -HSPLandroid/app/assist/AssistStructure$ViewNode;-><init>(Landroid/app/assist/AssistStructure$ParcelTransferReader;I)V -HSPLandroid/app/assist/AssistStructure$ViewNode;->getAutofillId()Landroid/view/autofill/AutofillId; -HSPLandroid/app/assist/AssistStructure$ViewNode;->getChildCount()I -HSPLandroid/app/assist/AssistStructure$ViewNode;->writeSelfToParcel(Landroid/os/Parcel;Landroid/os/PooledStringWriter;Z[FZ)I -HSPLandroid/app/assist/AssistStructure$ViewNode;->writeString(Landroid/os/Parcel;Landroid/os/PooledStringWriter;Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->getChildCount()I -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->getNodeText()Landroid/app/assist/AssistStructure$ViewNodeText; -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->newChild(I)Landroid/view/ViewStructure; -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setAutofillHints([Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setAutofillId(Landroid/view/autofill/AutofillId;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setAutofillType(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setAutofillValue(Landroid/view/autofill/AutofillValue;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setChildCount(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setClassName(Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setClickable(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setContentDescription(Ljava/lang/CharSequence;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setDataIsSensitive(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setDimens(IIIIII)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setEnabled(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setFocusable(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setFocused(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setHint(Ljava/lang/CharSequence;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setHintIdEntry(Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setId(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setImportantForAutofill(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setInputType(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setLongClickable(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setMaxTextEms(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setMaxTextLength(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setMinTextEms(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setOpaque(Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setReceiveContentMimeTypes([Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setText(Ljava/lang/CharSequence;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setTextIdEntry(Ljava/lang/String;)V -HSPLandroid/app/assist/AssistStructure$ViewNodeBuilder;->setVisibility(I)V -HSPLandroid/app/assist/AssistStructure$ViewNodeParcelable$1;-><init>()V -HSPLandroid/app/assist/AssistStructure$ViewNodeParcelable;-><clinit>()V -HSPLandroid/app/assist/AssistStructure$ViewNodeText;-><init>(Landroid/os/Parcel;Z)V -HSPLandroid/app/assist/AssistStructure$ViewNodeText;->isSimple()Z -HSPLandroid/app/assist/AssistStructure$ViewNodeText;->writeToParcel(Landroid/os/Parcel;ZZ)V -HSPLandroid/app/assist/AssistStructure$WindowNode;-><init>(Landroid/app/assist/AssistStructure$ParcelTransferReader;)V -HSPLandroid/app/assist/AssistStructure$WindowNode;-><init>(Landroid/app/assist/AssistStructure;Landroid/view/ViewRootImpl;ZI)V -HSPLandroid/app/assist/AssistStructure$WindowNode;->resolveViewAutofillFlags(Landroid/content/Context;I)I -HSPLandroid/app/assist/AssistStructure$WindowNode;->writeSelfToParcel(Landroid/os/Parcel;Landroid/os/PooledStringWriter;[F)V -HSPLandroid/app/assist/AssistStructure;-><init>()V -HSPLandroid/app/assist/AssistStructure;-><init>(Landroid/app/Activity;ZI)V -HSPLandroid/app/assist/AssistStructure;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/assist/AssistStructure;->clearSendChannel()V -HSPLandroid/app/assist/AssistStructure;->ensureData()V -HSPLandroid/app/assist/AssistStructure;->waitForReady()Z -HSPLandroid/app/assist/AssistStructure;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/backup/BackupAgent$BackupServiceBinder;-><init>(Landroid/app/backup/BackupAgent;)V -HSPLandroid/app/backup/BackupAgent$BackupServiceBinder;->doBackup(Landroid/os/ParcelFileDescriptor;Landroid/os/ParcelFileDescriptor;Landroid/os/ParcelFileDescriptor;JLandroid/app/backup/IBackupCallback;I)V -HSPLandroid/app/backup/BackupAgent$SharedPrefsSynchronizer;-><init>(Landroid/app/backup/BackupAgent;)V -HSPLandroid/app/backup/BackupAgent$SharedPrefsSynchronizer;->run()V -HSPLandroid/app/backup/BackupAgent;-><init>()V -HSPLandroid/app/backup/BackupAgent;->attach(Landroid/content/Context;)V -HSPLandroid/app/backup/BackupAgent;->getHandler()Landroid/os/Handler; -HSPLandroid/app/backup/BackupAgent;->onBind()Landroid/os/IBinder; -HSPLandroid/app/backup/BackupAgent;->onCreate()V -HSPLandroid/app/backup/BackupAgent;->onCreate(Landroid/os/UserHandle;)V -HSPLandroid/app/backup/BackupAgent;->onCreate(Landroid/os/UserHandle;I)V -HSPLandroid/app/backup/BackupAgent;->onCreate(Landroid/os/UserHandle;II)V -HSPLandroid/app/backup/BackupAgent;->onDestroy()V -HSPLandroid/app/backup/BackupAgent;->waitForSharedPrefs()V -HSPLandroid/app/backup/BackupAgentHelper;-><init>()V -HSPLandroid/app/backup/BackupAgentHelper;->addHelper(Ljava/lang/String;Landroid/app/backup/BackupHelper;)V -HSPLandroid/app/backup/BackupAgentHelper;->onBackup(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/app/backup/BackupDataOutput;-><init>(Ljava/io/FileDescriptor;JI)V -HSPLandroid/app/backup/BackupDataOutput;->finalize()V -HSPLandroid/app/backup/BackupDataOutput;->setKeyPrefix(Ljava/lang/String;)V -HSPLandroid/app/backup/BackupDataOutput;->writeEntityData([BI)I -HSPLandroid/app/backup/BackupDataOutput;->writeEntityHeader(Ljava/lang/String;I)I -HSPLandroid/app/backup/BackupHelperDispatcher;-><init>()V -HSPLandroid/app/backup/BackupHelperDispatcher;->addHelper(Ljava/lang/String;Landroid/app/backup/BackupHelper;)V -HSPLandroid/app/backup/BackupHelperDispatcher;->doOneBackup(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupHelperDispatcher$Header;Landroid/app/backup/BackupHelper;)V -HSPLandroid/app/backup/BackupHelperDispatcher;->performBackup(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/app/backup/BackupManager;-><init>(Landroid/content/Context;)V -HSPLandroid/app/backup/BackupManager;->checkServiceBinder()V -HSPLandroid/app/backup/BackupManager;->dataChanged()V -HSPLandroid/app/backup/BackupManager;->dataChanged(Ljava/lang/String;)V -HSPLandroid/app/backup/BackupRestoreEventLogger;-><init>(I)V -HSPLandroid/app/backup/FileBackupHelper;-><init>(Landroid/content/Context;[Ljava/lang/String;)V -HSPLandroid/app/backup/FileBackupHelper;->performBackup(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/app/backup/FileBackupHelperBase;->finalize()V -HSPLandroid/app/backup/FileBackupHelperBase;->performBackup_checked(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/app/backup/IBackupCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/backup/IBackupCallback$Stub$Proxy;->operationComplete(J)V -HSPLandroid/app/backup/IBackupCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/backup/IBackupCallback; -HSPLandroid/app/backup/IBackupManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/backup/IBackupManager$Stub$Proxy;->dataChanged(Ljava/lang/String;)V -HSPLandroid/app/backup/IBackupManager$Stub$Proxy;->getCurrentTransport()Ljava/lang/String; -HSPLandroid/app/backup/IBackupManager$Stub$Proxy;->isBackupServiceActive(I)Z -HSPLandroid/app/backup/IBackupManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/backup/IBackupManager; -HSPLandroid/app/backup/SharedPreferencesBackupHelper;-><init>(Landroid/content/Context;[Ljava/lang/String;)V -HSPLandroid/app/backup/SharedPreferencesBackupHelper;->performBackup(Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/app/blob/BlobStoreManager;-><init>(Landroid/content/Context;Landroid/app/blob/IBlobStoreManager;)V -HSPLandroid/app/blob/BlobStoreManagerFrameworkInitializer$$ExternalSyntheticLambda0;->createService(Landroid/content/Context;Landroid/os/IBinder;)Ljava/lang/Object; -HSPLandroid/app/blob/BlobStoreManagerFrameworkInitializer;->lambda$initialize$0(Landroid/content/Context;Landroid/os/IBinder;)Landroid/app/blob/BlobStoreManager; -HSPLandroid/app/blob/IBlobStoreManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/blob/IBlobStoreManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/blob/IBlobStoreManager; -HSPLandroid/app/compat/ChangeIdStateCache;->getPlatformCompatService()Lcom/android/internal/compat/IPlatformCompat; -HSPLandroid/app/compat/ChangeIdStateCache;->recompute(Landroid/app/compat/ChangeIdStateQuery;)Ljava/lang/Boolean; -HSPLandroid/app/compat/ChangeIdStateCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/app/compat/ChangeIdStateQuery;-><init>(IJLjava/lang/String;II)V -HSPLandroid/app/compat/ChangeIdStateQuery;->byPackageName(JLjava/lang/String;I)Landroid/app/compat/ChangeIdStateQuery; -HSPLandroid/app/compat/ChangeIdStateQuery;->byUid(JI)Landroid/app/compat/ChangeIdStateQuery; -HSPLandroid/app/compat/ChangeIdStateQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/compat/ChangeIdStateQuery;->hashCode()I -HSPLandroid/app/compat/CompatChanges;->isChangeEnabled(J)Z -HSPLandroid/app/compat/CompatChanges;->isChangeEnabled(JI)Z -HSPLandroid/app/compat/CompatChanges;->isChangeEnabled(JLjava/lang/String;Landroid/os/UserHandle;)Z -HSPLandroid/app/contentsuggestions/ContentSelection;-><init>(Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/app/contentsuggestions/ISelectionsCallback$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/contentsuggestions/ISelectionsCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/contentsuggestions/ISelectionsCallback; -HSPLandroid/app/contentsuggestions/SelectionsRequest$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/contentsuggestions/SelectionsRequest; -HSPLandroid/app/contentsuggestions/SelectionsRequest$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/contentsuggestions/SelectionsRequest;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/job/IJobCallback$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->acknowledgeStartMessage(IZ)V -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->acknowledgeStopMessage(IZ)V -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->completeWork(II)Z -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->dequeueWork(I)Landroid/app/job/JobWorkItem; -HSPLandroid/app/job/IJobCallback$Stub$Proxy;->jobFinished(IZ)V -HSPLandroid/app/job/IJobCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/job/IJobCallback; -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->cancel(Ljava/lang/String;I)V -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->enqueue(Ljava/lang/String;Landroid/app/job/JobInfo;Landroid/app/job/JobWorkItem;)I -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->getAllPendingJobsInNamespace(Ljava/lang/String;)Landroid/content/pm/ParceledListSlice; -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->getPendingJob(Ljava/lang/String;I)Landroid/app/job/JobInfo; -HSPLandroid/app/job/IJobScheduler$Stub$Proxy;->schedule(Ljava/lang/String;Landroid/app/job/JobInfo;)I -HSPLandroid/app/job/IJobScheduler$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/job/IJobScheduler; -HSPLandroid/app/job/IJobService$Stub;-><init>()V -HSPLandroid/app/job/IJobService$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/job/IJobService$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/app/job/IJobService$Stub;->getMaxTransactionId()I -HSPLandroid/app/job/IJobService$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/app/job/IJobService$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/app/job/JobInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/job/JobInfo; -HSPLandroid/app/job/JobInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmBackoffPolicy(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmBias(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmClipData(Landroid/app/job/JobInfo$Builder;)Landroid/content/ClipData; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmClipGrantFlags(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmConstraintFlags(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmExtras(Landroid/app/job/JobInfo$Builder;)Landroid/os/PersistableBundle; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmFlags(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmFlexMillis(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmHasEarlyConstraint(Landroid/app/job/JobInfo$Builder;)Z -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmHasLateConstraint(Landroid/app/job/JobInfo$Builder;)Z -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmInitialBackoffMillis(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmIntervalMillis(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmIsPeriodic(Landroid/app/job/JobInfo$Builder;)Z -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmIsPersisted(Landroid/app/job/JobInfo$Builder;)Z -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmJobId(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmJobService(Landroid/app/job/JobInfo$Builder;)Landroid/content/ComponentName; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmMaxExecutionDelayMillis(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmMinLatencyMillis(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmMinimumNetworkChunkBytes(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmNetworkDownloadBytes(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmNetworkRequest(Landroid/app/job/JobInfo$Builder;)Landroid/net/NetworkRequest; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmNetworkUploadBytes(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmPriority(Landroid/app/job/JobInfo$Builder;)I -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmTransientExtras(Landroid/app/job/JobInfo$Builder;)Landroid/os/Bundle; -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmTriggerContentMaxDelay(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmTriggerContentUpdateDelay(Landroid/app/job/JobInfo$Builder;)J -HSPLandroid/app/job/JobInfo$Builder;->-$$Nest$fgetmTriggerContentUris(Landroid/app/job/JobInfo$Builder;)Ljava/util/ArrayList; -HSPLandroid/app/job/JobInfo$Builder;-><init>(ILandroid/content/ComponentName;)V -HSPLandroid/app/job/JobInfo$Builder;->addTriggerContentUri(Landroid/app/job/JobInfo$TriggerContentUri;)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->build()Landroid/app/job/JobInfo; -HSPLandroid/app/job/JobInfo$Builder;->setBackoffCriteria(JI)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setExtras(Landroid/os/PersistableBundle;)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setImportantWhileForeground(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setMinimumLatency(J)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setOverrideDeadline(J)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setPeriodic(J)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setPeriodic(JJ)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setPersisted(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setPrefetch(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiredNetwork(Landroid/net/NetworkRequest;)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiredNetworkType(I)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiresBatteryNotLow(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiresCharging(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiresDeviceIdle(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setRequiresStorageNotLow(Z)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setTransientExtras(Landroid/os/Bundle;)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setTriggerContentMaxDelay(J)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$Builder;->setTriggerContentUpdateDelay(J)Landroid/app/job/JobInfo$Builder; -HSPLandroid/app/job/JobInfo$TriggerContentUri$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/job/JobInfo$TriggerContentUri; -HSPLandroid/app/job/JobInfo$TriggerContentUri$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/job/JobInfo$TriggerContentUri$1;->newArray(I)[Landroid/app/job/JobInfo$TriggerContentUri; -HSPLandroid/app/job/JobInfo$TriggerContentUri$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/app/job/JobInfo$TriggerContentUri;-><init>(Landroid/net/Uri;I)V -HSPLandroid/app/job/JobInfo$TriggerContentUri;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/job/JobInfo;-><init>(Landroid/app/job/JobInfo$Builder;)V -HSPLandroid/app/job/JobInfo;-><init>(Landroid/app/job/JobInfo$Builder;Landroid/app/job/JobInfo-IA;)V -HSPLandroid/app/job/JobInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/job/JobInfo;->enforceValidity(ZZZZ)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/app/job/JobInfo;->getExtras()Landroid/os/PersistableBundle; -HSPLandroid/app/job/JobInfo;->getFlags()I -HSPLandroid/app/job/JobInfo;->getFlexMillis()J -HSPLandroid/app/job/JobInfo;->getId()I -HSPLandroid/app/job/JobInfo;->getIntervalMillis()J -HSPLandroid/app/job/JobInfo;->getMaxExecutionDelayMillis()J -HSPLandroid/app/job/JobInfo;->getMinBackoffMillis()J -HSPLandroid/app/job/JobInfo;->getMinFlexMillis()J -HSPLandroid/app/job/JobInfo;->getMinLatencyMillis()J -HSPLandroid/app/job/JobInfo;->getMinPeriodMillis()J -HSPLandroid/app/job/JobInfo;->getNetworkType()I -HSPLandroid/app/job/JobInfo;->getRequiredNetwork()Landroid/net/NetworkRequest; -HSPLandroid/app/job/JobInfo;->getService()Landroid/content/ComponentName; -HSPLandroid/app/job/JobInfo;->isPeriodic()Z -HSPLandroid/app/job/JobInfo;->isPersisted()Z -HSPLandroid/app/job/JobInfo;->isRequireCharging()Z -HSPLandroid/app/job/JobInfo;->isRequireDeviceIdle()Z -HSPLandroid/app/job/JobInfo;->validateTraceTag(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/app/job/JobInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/job/JobParameters$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/job/JobParameters; -HSPLandroid/app/job/JobParameters$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/job/JobParameters;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/job/JobParameters;->completeWork(Landroid/app/job/JobWorkItem;)V -HSPLandroid/app/job/JobParameters;->dequeueWork()Landroid/app/job/JobWorkItem; -HSPLandroid/app/job/JobParameters;->getCallback()Landroid/app/job/IJobCallback; -HSPLandroid/app/job/JobParameters;->getExtras()Landroid/os/PersistableBundle; -HSPLandroid/app/job/JobParameters;->getJobId()I -HSPLandroid/app/job/JobParameters;->getNetwork()Landroid/net/Network; -HSPLandroid/app/job/JobParameters;->getStopReason()I -HSPLandroid/app/job/JobParameters;->getTransientExtras()Landroid/os/Bundle; -HSPLandroid/app/job/JobParameters;->getTriggeredContentAuthorities()[Ljava/lang/String; -HSPLandroid/app/job/JobParameters;->getTriggeredContentUris()[Landroid/net/Uri; -HSPLandroid/app/job/JobParameters;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/job/JobScheduler;-><init>()V -HSPLandroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda0;->createService(Landroid/content/Context;Landroid/os/IBinder;)Ljava/lang/Object; -HSPLandroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda1;->createService(Landroid/content/Context;Landroid/os/IBinder;)Ljava/lang/Object; -HSPLandroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda2;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda3;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/app/job/JobSchedulerFrameworkInitializer;->lambda$registerServiceWrappers$0(Landroid/content/Context;Landroid/os/IBinder;)Landroid/app/job/JobScheduler; -HSPLandroid/app/job/JobSchedulerFrameworkInitializer;->lambda$registerServiceWrappers$1(Landroid/content/Context;Landroid/os/IBinder;)Landroid/os/DeviceIdleManager; -HSPLandroid/app/job/JobService$1;-><init>(Landroid/app/job/JobService;Landroid/app/Service;)V -HSPLandroid/app/job/JobService$1;->onStartJob(Landroid/app/job/JobParameters;)Z -HSPLandroid/app/job/JobService$1;->onStopJob(Landroid/app/job/JobParameters;)Z -HSPLandroid/app/job/JobService;-><init>()V -HSPLandroid/app/job/JobService;->jobFinished(Landroid/app/job/JobParameters;Z)V -HSPLandroid/app/job/JobService;->onBind(Landroid/content/Intent;)Landroid/os/IBinder; -HSPLandroid/app/job/JobServiceEngine$JobHandler;-><init>(Landroid/app/job/JobServiceEngine;Landroid/os/Looper;)V -HSPLandroid/app/job/JobServiceEngine$JobHandler;->ackStartMessage(Landroid/app/job/JobParameters;Z)V -HSPLandroid/app/job/JobServiceEngine$JobHandler;->ackStopMessage(Landroid/app/job/JobParameters;Z)V -HSPLandroid/app/job/JobServiceEngine$JobHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/app/job/JobServiceEngine$JobInterface;-><init>(Landroid/app/job/JobServiceEngine;)V -HSPLandroid/app/job/JobServiceEngine$JobInterface;->startJob(Landroid/app/job/JobParameters;)V -HSPLandroid/app/job/JobServiceEngine$JobInterface;->stopJob(Landroid/app/job/JobParameters;)V -HSPLandroid/app/job/JobServiceEngine;-><init>(Landroid/app/Service;)V -HSPLandroid/app/job/JobServiceEngine;->getBinder()Landroid/os/IBinder; -HSPLandroid/app/job/JobServiceEngine;->jobFinished(Landroid/app/job/JobParameters;Z)V -HSPLandroid/app/job/JobWorkItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/job/JobWorkItem; -HSPLandroid/app/job/JobWorkItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/job/JobWorkItem;-><init>(Landroid/content/Intent;)V -HSPLandroid/app/job/JobWorkItem;-><init>(Landroid/content/Intent;JJJ)V -HSPLandroid/app/job/JobWorkItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/job/JobWorkItem;->enforceValidity(Z)V -HSPLandroid/app/job/JobWorkItem;->getIntent()Landroid/content/Intent; -HSPLandroid/app/job/JobWorkItem;->getWorkId()I -HSPLandroid/app/job/JobWorkItem;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/AppPredictionContext$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/prediction/AppPredictionContext; -HSPLandroid/app/prediction/AppPredictionContext$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/prediction/AppPredictionContext;->getUiSurface()Ljava/lang/String; -HSPLandroid/app/prediction/AppPredictionContext;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/AppPredictionSessionId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/prediction/AppPredictionSessionId; -HSPLandroid/app/prediction/AppPredictionSessionId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/prediction/AppPredictionSessionId;->equals(Ljava/lang/Object;)Z -HSPLandroid/app/prediction/AppPredictionSessionId;->hashCode()I -HSPLandroid/app/prediction/AppPredictionSessionId;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/AppTarget$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/prediction/AppTarget; -HSPLandroid/app/prediction/AppTarget$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/prediction/AppTarget$Builder;-><init>(Landroid/app/prediction/AppTargetId;Ljava/lang/String;Landroid/os/UserHandle;)V -HSPLandroid/app/prediction/AppTarget$Builder;->build()Landroid/app/prediction/AppTarget; -HSPLandroid/app/prediction/AppTarget$Builder;->setClassName(Ljava/lang/String;)Landroid/app/prediction/AppTarget$Builder; -HSPLandroid/app/prediction/AppTarget;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/prediction/AppTarget;->getClassName()Ljava/lang/String; -HSPLandroid/app/prediction/AppTarget;->getPackageName()Ljava/lang/String; -HSPLandroid/app/prediction/AppTarget;->getShortcutInfo()Landroid/content/pm/ShortcutInfo; -HSPLandroid/app/prediction/AppTarget;->getUser()Landroid/os/UserHandle; -HSPLandroid/app/prediction/AppTarget;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/AppTargetEvent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/prediction/AppTargetEvent; -HSPLandroid/app/prediction/AppTargetEvent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/prediction/AppTargetEvent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/AppTargetId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/prediction/AppTargetId; -HSPLandroid/app/prediction/AppTargetId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/prediction/AppTargetId;-><init>(Ljava/lang/String;)V -HSPLandroid/app/prediction/AppTargetId;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/prediction/IPredictionCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/prediction/IPredictionCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/prediction/IPredictionCallback; -HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ActivityConfigurationChangeItem; -HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ActivityConfigurationChangeItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/ActivityLifecycleItem;-><init>()V -HSPLandroid/app/servertransaction/ActivityRelaunchItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/ActivityResultItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ActivityResultItem; -HSPLandroid/app/servertransaction/ActivityResultItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ActivityResultItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/ActivityResultItem;->getPostExecutionState()I -HSPLandroid/app/servertransaction/ActivityTransactionItem;-><init>()V -HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ClientTransaction; -HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;)V+]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/app/servertransaction/ClientTransaction;]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;Landroid/app/servertransaction/ClientTransaction-IA;)V -HSPLandroid/app/servertransaction/ClientTransaction;->getCallbacks()Ljava/util/List; -HSPLandroid/app/servertransaction/ClientTransaction;->getLifecycleStateRequest()Landroid/app/servertransaction/ActivityLifecycleItem; -HSPLandroid/app/servertransaction/ClientTransaction;->preExecute(Landroid/app/ClientTransactionHandler;)V+]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/app/servertransaction/ClientTransactionItem;-><init>()V -HSPLandroid/app/servertransaction/ClientTransactionItem;->getPostExecutionState()I -HSPLandroid/app/servertransaction/ClientTransactionItem;->shouldHaveDefinedPreExecutionState()Z -HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ConfigurationChangeItem; -HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ConfigurationChangeItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/servertransaction/ConfigurationChangeItem;-><init>(Landroid/os/Parcel;Landroid/app/servertransaction/ConfigurationChangeItem-IA;)V -HSPLandroid/app/servertransaction/DestroyActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/DestroyActivityItem; -HSPLandroid/app/servertransaction/DestroyActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/DestroyActivityItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/DestroyActivityItem;->getTargetState()I -HSPLandroid/app/servertransaction/LaunchActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/LaunchActivityItem; -HSPLandroid/app/servertransaction/LaunchActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/LaunchActivityItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/servertransaction/NewIntentItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/NewIntentItem; -HSPLandroid/app/servertransaction/NewIntentItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/NewIntentItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/NewIntentItem;->getPostExecutionState()I -HSPLandroid/app/servertransaction/PauseActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/PauseActivityItem; -HSPLandroid/app/servertransaction/PauseActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/PauseActivityItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/servertransaction/PauseActivityItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/PauseActivityItem;->getTargetState()I -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;-><init>()V -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;->run()V -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;->setActivity(Landroid/app/ActivityThread$ActivityClientRecord;)V -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;->setDescription(Ljava/lang/CharSequence;)V -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;->setPersistentState(Landroid/os/PersistableBundle;)V -HSPLandroid/app/servertransaction/PendingTransactionActions$StopInfo;->setState(Landroid/os/Bundle;)V -HSPLandroid/app/servertransaction/PendingTransactionActions;-><init>()V -HSPLandroid/app/servertransaction/PendingTransactionActions;->clear()V -HSPLandroid/app/servertransaction/PendingTransactionActions;->getOldState()Landroid/os/Bundle; -HSPLandroid/app/servertransaction/PendingTransactionActions;->getStopInfo()Landroid/app/servertransaction/PendingTransactionActions$StopInfo; -HSPLandroid/app/servertransaction/PendingTransactionActions;->setCallOnPostCreate(Z)V -HSPLandroid/app/servertransaction/PendingTransactionActions;->setOldState(Landroid/os/Bundle;)V -HSPLandroid/app/servertransaction/PendingTransactionActions;->setRestoreInstanceState(Z)V -HSPLandroid/app/servertransaction/PendingTransactionActions;->setStopInfo(Landroid/app/servertransaction/PendingTransactionActions$StopInfo;)V -HSPLandroid/app/servertransaction/PendingTransactionActions;->shouldCallOnPostCreate()Z -HSPLandroid/app/servertransaction/PendingTransactionActions;->shouldRestoreInstanceState()Z -HSPLandroid/app/servertransaction/ResumeActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ResumeActivityItem; -HSPLandroid/app/servertransaction/ResumeActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/ResumeActivityItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/servertransaction/ResumeActivityItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/ResumeActivityItem;->getTargetState()I -HSPLandroid/app/servertransaction/StartActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/StartActivityItem; -HSPLandroid/app/servertransaction/StartActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/StartActivityItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/StartActivityItem;->getTargetState()I -HSPLandroid/app/servertransaction/StopActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/StopActivityItem; -HSPLandroid/app/servertransaction/StopActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/StopActivityItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/StopActivityItem;->getTargetState()I -HSPLandroid/app/servertransaction/TopResumedActivityChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/TopResumedActivityChangeItem; -HSPLandroid/app/servertransaction/TopResumedActivityChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/servertransaction/TopResumedActivityChangeItem;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/servertransaction/TopResumedActivityChangeItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V -HSPLandroid/app/servertransaction/TransactionExecutor;-><init>(Landroid/app/ClientTransactionHandler;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->cycleToPath(Landroid/app/ActivityThread$ActivityClientRecord;ILandroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->cycleToPath(Landroid/app/ActivityThread$ActivityClientRecord;IZLandroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->execute(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->executeCallbacks(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->executeLifecycleState(Landroid/app/servertransaction/ClientTransaction;)V -HSPLandroid/app/servertransaction/TransactionExecutor;->performLifecycleSequence(Landroid/app/ActivityThread$ActivityClientRecord;Landroid/util/IntArray;Landroid/app/servertransaction/ClientTransaction;)V+]Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread;]Landroid/util/IntArray;Landroid/util/IntArray; -HSPLandroid/app/servertransaction/TransactionExecutorHelper;-><init>()V -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getClosestOfStates(Landroid/app/ActivityThread$ActivityClientRecord;[I)I -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getClosestPreExecutionState(Landroid/app/ActivityThread$ActivityClientRecord;I)I -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getLifecyclePath(IIZ)Landroid/util/IntArray;+]Landroid/util/IntArray;Landroid/util/IntArray; -HSPLandroid/app/servertransaction/TransactionExecutorHelper;->lastCallbackRequestingState(Landroid/app/servertransaction/ClientTransaction;)I -HSPLandroid/app/slice/ISliceManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/slice/ISliceManager$Stub$Proxy;->getPinnedSlices(Ljava/lang/String;)[Landroid/net/Uri; -HSPLandroid/app/slice/ISliceManager$Stub$Proxy;->grantSlicePermission(Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;)V -HSPLandroid/app/slice/ISliceManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/slice/ISliceManager; -HSPLandroid/app/slice/Slice;->getHints()Ljava/util/List; -HSPLandroid/app/slice/Slice;->getItems()Ljava/util/List; -HSPLandroid/app/slice/SliceItem;->getAction()Landroid/app/PendingIntent; -HSPLandroid/app/slice/SliceItem;->getFormat()Ljava/lang/String; -HSPLandroid/app/slice/SliceItem;->getHints()Ljava/util/List; -HSPLandroid/app/slice/SliceItem;->getText()Ljava/lang/CharSequence; -HSPLandroid/app/slice/SliceManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/app/slice/SliceManager;->bindSlice(Landroid/net/Uri;Ljava/util/Set;)Landroid/app/slice/Slice; -HSPLandroid/app/slice/SliceManager;->getPinnedSlices()Ljava/util/List; -HSPLandroid/app/slice/SliceManager;->grantSlicePermission(Ljava/lang/String;Landroid/net/Uri;)V -HSPLandroid/app/slice/SliceProvider;-><init>([Ljava/lang/String;)V -HSPLandroid/app/slice/SliceProvider;->attachInfo(Landroid/content/Context;Landroid/content/pm/ProviderInfo;)V -HSPLandroid/app/slice/SliceProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/app/slice/SliceProvider;->handleBindSlice(Landroid/net/Uri;Ljava/util/List;Ljava/lang/String;II)Landroid/app/slice/Slice; -HSPLandroid/app/slice/SliceProvider;->onBindSliceStrict(Landroid/net/Uri;Ljava/util/List;)Landroid/app/slice/Slice; -HSPLandroid/app/slice/SliceSpec$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/slice/SliceSpec; -HSPLandroid/app/slice/SliceSpec$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/slice/SliceSpec$1;->newArray(I)[Landroid/app/slice/SliceSpec; -HSPLandroid/app/slice/SliceSpec$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/app/slice/SliceSpec;-><init>(Ljava/lang/String;I)V -HSPLandroid/app/slice/SliceSpec;->getRevision()I -HSPLandroid/app/slice/SliceSpec;->getType()Ljava/lang/String; -HSPLandroid/app/slice/SliceSpec;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/smartspace/SmartspaceAction$1;-><init>()V -HSPLandroid/app/smartspace/SmartspaceAction;-><clinit>()V -HSPLandroid/app/smartspace/SmartspaceConfig$1;-><init>()V -HSPLandroid/app/smartspace/SmartspaceConfig;-><clinit>()V -HSPLandroid/app/smartspace/SmartspaceSessionId$1;-><init>()V -HSPLandroid/app/smartspace/SmartspaceSessionId;-><clinit>()V -HSPLandroid/app/smartspace/SmartspaceTarget$1;-><init>()V -HSPLandroid/app/smartspace/SmartspaceTarget;-><clinit>()V -HSPLandroid/app/smartspace/SmartspaceTargetEvent$1;-><init>()V -HSPLandroid/app/smartspace/SmartspaceTargetEvent;-><clinit>()V -HSPLandroid/app/time/TimeZoneCapabilities$Builder;-><init>(Landroid/os/UserHandle;)V -HSPLandroid/app/time/TimeZoneCapabilities$Builder;->build()Landroid/app/time/TimeZoneCapabilities; -HSPLandroid/app/time/TimeZoneCapabilities$Builder;->setConfigureAutoDetectionEnabledCapability(I)Landroid/app/time/TimeZoneCapabilities$Builder; -HSPLandroid/app/time/TimeZoneCapabilities$Builder;->setConfigureGeoDetectionEnabledCapability(I)Landroid/app/time/TimeZoneCapabilities$Builder; -HSPLandroid/app/time/TimeZoneCapabilities$Builder;->verifyCapabilitySet(ILjava/lang/String;)V -HSPLandroid/app/time/TimeZoneCapabilities;-><init>(Landroid/app/time/TimeZoneCapabilities$Builder;)V -HSPLandroid/app/time/TimeZoneConfiguration$Builder;-><init>()V -HSPLandroid/app/time/TimeZoneConfiguration$Builder;->build()Landroid/app/time/TimeZoneConfiguration; -HSPLandroid/app/time/TimeZoneConfiguration;-><init>(Landroid/app/time/TimeZoneConfiguration$Builder;)V -HSPLandroid/app/timedetector/ITimeDetectorService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/timedetector/ITimeDetectorService; -HSPLandroid/app/timedetector/TimeDetectorImpl;-><init>()V -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;-><init>(I)V -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;->build()Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion; -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;->setMatchType(I)Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder; -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;->setQuality(I)Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder; -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;->setZoneId(Ljava/lang/String;)Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder; -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;->validate()V -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion;-><init>(Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder;)V -HSPLandroid/app/timezonedetector/TelephonyTimeZoneSuggestion;->toString()Ljava/lang/String; -HSPLandroid/app/trust/ITrustManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/trust/ITrustManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/trust/ITrustManager$Stub$Proxy;->isDeviceLocked(II)Z -HSPLandroid/app/trust/ITrustManager$Stub$Proxy;->isDeviceSecure(II)Z -HSPLandroid/app/trust/ITrustManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/trust/ITrustManager; -HSPLandroid/app/trust/TrustManager;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/usage/AppStandbyInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/AppStandbyInfo; -HSPLandroid/app/usage/AppStandbyInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/usage/AppStandbyInfo;-><init>(Ljava/lang/String;I)V -HSPLandroid/app/usage/AppStandbyInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/app/usage/IStorageStatsManager$Stub$Proxy;->queryStatsForPackage(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Landroid/app/usage/StorageStats;+]Landroid/app/usage/IStorageStatsManager$Stub$Proxy;Landroid/app/usage/IStorageStatsManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/app/usage/IStorageStatsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/usage/IStorageStatsManager; -HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;->getAppStandbyBucket(Ljava/lang/String;Ljava/lang/String;I)I -HSPLandroid/app/usage/IUsageStatsManager$Stub$Proxy;->queryEvents(JJLjava/lang/String;)Landroid/app/usage/UsageEvents; -HSPLandroid/app/usage/IUsageStatsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/app/usage/IUsageStatsManager; -HSPLandroid/app/usage/StorageStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/StorageStats; -HSPLandroid/app/usage/StorageStats$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/usage/StorageStats;->getAppBytes()J -HSPLandroid/app/usage/StorageStats;->getCacheBytes()J -HSPLandroid/app/usage/StorageStats;->getDataBytes()J -HSPLandroid/app/usage/StorageStatsManager;-><init>(Landroid/content/Context;Landroid/app/usage/IStorageStatsManager;)V -HSPLandroid/app/usage/StorageStatsManager;->queryStatsForPackage(Ljava/util/UUID;Ljava/lang/String;Landroid/os/UserHandle;)Landroid/app/usage/StorageStats; -HSPLandroid/app/usage/UsageEvents$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/UsageEvents; -HSPLandroid/app/usage/UsageEvents$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/app/usage/UsageEvents$Event;-><init>()V -HSPLandroid/app/usage/UsageEvents$Event;->getClassName()Ljava/lang/String; -HSPLandroid/app/usage/UsageEvents$Event;->getEventType()I -HSPLandroid/app/usage/UsageEvents$Event;->getPackageName()Ljava/lang/String; -HSPLandroid/app/usage/UsageEvents$Event;->getTimeStamp()J -HSPLandroid/app/usage/UsageEvents;-><init>(Landroid/os/Parcel;)V -HSPLandroid/app/usage/UsageEvents;->getNextEvent(Landroid/app/usage/UsageEvents$Event;)Z -HSPLandroid/app/usage/UsageEvents;->hasNextEvent()Z -HSPLandroid/app/usage/UsageEvents;->readEventFromParcel(Landroid/os/Parcel;Landroid/app/usage/UsageEvents$Event;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/content/res/Configuration$1; -HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/usage/UsageStats;+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLandroid/app/usage/UsageStats$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/app/usage/UsageStats$1;Landroid/app/usage/UsageStats$1; -HSPLandroid/app/usage/UsageStats$1;->readBundleToEventMap(Landroid/os/Bundle;Landroid/util/ArrayMap;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLandroid/app/usage/UsageStats;-><init>()V -HSPLandroid/app/usage/UsageStats;->getPackageName()Ljava/lang/String; -HSPLandroid/app/usage/UsageStats;->update(Ljava/lang/String;JII)V -HSPLandroid/app/usage/UsageStatsManager;-><init>(Landroid/content/Context;Landroid/app/usage/IUsageStatsManager;)V -HSPLandroid/app/usage/UsageStatsManager;->queryEvents(JJ)Landroid/app/usage/UsageEvents; -HSPLandroid/app/usage/UsageStatsManager;->queryUsageStats(IJJ)Ljava/util/List; -HSPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda3;-><init>()V -HSPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda5;-><init>()V -HSPLandroid/appwidget/AppWidgetManager;-><init>(Landroid/content/Context;Lcom/android/internal/appwidget/IAppWidgetService;)V -HSPLandroid/appwidget/AppWidgetManager;->getAppWidgetIds(Landroid/content/ComponentName;)[I -HSPLandroid/appwidget/AppWidgetManager;->getInstalledProvidersForPackage(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/appwidget/AppWidgetManager;->getInstalledProvidersForProfile(ILandroid/os/UserHandle;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/appwidget/AppWidgetManager;->getInstance(Landroid/content/Context;)Landroid/appwidget/AppWidgetManager; -HSPLandroid/appwidget/AppWidgetManager;->isBoundWidgetPackage(Ljava/lang/String;I)Z -HSPLandroid/appwidget/AppWidgetManager;->lambda$new$0(Landroid/appwidget/AppWidgetProviderInfo;)Landroid/content/ComponentName; -HSPLandroid/appwidget/AppWidgetManager;->lambda$new$1(Landroid/content/ComponentName;)Z -HSPLandroid/appwidget/AppWidgetManager;->lambda$new$2(I)[Landroid/content/ComponentName; -HSPLandroid/appwidget/AppWidgetManager;->lambda$new$3()V -HSPLandroid/appwidget/AppWidgetProvider;-><init>()V -HSPLandroid/appwidget/AppWidgetProvider;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V -HSPLandroid/appwidget/AppWidgetProviderInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/appwidget/AppWidgetProviderInfo; -HSPLandroid/appwidget/AppWidgetProviderInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/appwidget/AppWidgetProviderInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/appwidget/AppWidgetProviderInfo;->getProfile()Landroid/os/UserHandle; -HSPLandroid/appwidget/AppWidgetProviderInfo;->updateDimensions(Landroid/util/DisplayMetrics;)V -HSPLandroid/appwidget/AppWidgetProviderInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/companion/ICompanionDeviceManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/companion/ICompanionDeviceManager; -HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy;->getDeviceIdForDisplayId(I)I -HSPLandroid/companion/virtual/IVirtualDeviceManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/companion/virtual/IVirtualDeviceManager; -HSPLandroid/companion/virtual/VirtualDeviceManager;-><init>(Landroid/companion/virtual/IVirtualDeviceManager;Landroid/content/Context;)V -HSPLandroid/companion/virtual/VirtualDeviceManager;->getDeviceIdForDisplayId(I)I -HSPLandroid/compat/Compatibility$BehaviorChangeDelegate;->isChangeEnabled(J)Z -HSPLandroid/compat/Compatibility;->isChangeEnabled(J)Z -HSPLandroid/compat/Compatibility;->setBehaviorChangeDelegate(Landroid/compat/Compatibility$BehaviorChangeDelegate;)V -HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->cancelSync(Landroid/content/ISyncContext;)V -HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->isCallerSystem()Z -HSPLandroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl;->startSync(Landroid/content/ISyncContext;Ljava/lang/String;Landroid/accounts/Account;Landroid/os/Bundle;)V -HSPLandroid/content/AbstractThreadedSyncAdapter$SyncThread;-><init>(Landroid/content/AbstractThreadedSyncAdapter;Ljava/lang/String;Landroid/content/SyncContext;Ljava/lang/String;Landroid/accounts/Account;Landroid/os/Bundle;)V -HSPLandroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z -HSPLandroid/content/AbstractThreadedSyncAdapter$SyncThread;->run()V -HSPLandroid/content/AbstractThreadedSyncAdapter;->-$$Nest$mtoSyncKey(Landroid/content/AbstractThreadedSyncAdapter;Landroid/accounts/Account;)Landroid/accounts/Account; -HSPLandroid/content/AbstractThreadedSyncAdapter;-><init>(Landroid/content/Context;Z)V -HSPLandroid/content/AbstractThreadedSyncAdapter;-><init>(Landroid/content/Context;ZZ)V -HSPLandroid/content/AbstractThreadedSyncAdapter;->getContext()Landroid/content/Context; -HSPLandroid/content/AbstractThreadedSyncAdapter;->getSyncAdapterBinder()Landroid/os/IBinder; -HSPLandroid/content/AbstractThreadedSyncAdapter;->onSyncCanceled()V -HSPLandroid/content/AbstractThreadedSyncAdapter;->toSyncKey(Landroid/accounts/Account;)Landroid/accounts/Account; -HSPLandroid/content/AsyncQueryHandler$WorkerHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/content/AsyncQueryHandler;-><init>(Landroid/content/ContentResolver;)V -HSPLandroid/content/AsyncQueryHandler;->createHandler(Landroid/os/Looper;)Landroid/os/Handler; -HSPLandroid/content/AsyncQueryHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/content/AsyncQueryHandler;->startQuery(ILjava/lang/Object;Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/AttributionSource$1;-><init>()V -HSPLandroid/content/AttributionSource$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/AttributionSource; -HSPLandroid/content/AttributionSource$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/AttributionSource$ScopedParcelState;-><init>(Landroid/content/AttributionSource;)V -HSPLandroid/content/AttributionSource$ScopedParcelState;->close()V -HSPLandroid/content/AttributionSource$ScopedParcelState;->getParcel()Landroid/os/Parcel; -HSPLandroid/content/AttributionSource;-><clinit>()V -HSPLandroid/content/AttributionSource;-><init>(IILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;[Ljava/lang/String;ILandroid/content/AttributionSource;)V -HSPLandroid/content/AttributionSource;-><init>(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;ILandroid/content/AttributionSource;)V -HSPLandroid/content/AttributionSource;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/AttributionSource;-><init>(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/content/AttributionSource;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/util/Set;Landroid/content/AttributionSource;)V -HSPLandroid/content/AttributionSource;-><init>(Landroid/content/AttributionSource;Landroid/content/AttributionSource;)V -HSPLandroid/content/AttributionSource;-><init>(Landroid/content/AttributionSourceState;)V -HSPLandroid/content/AttributionSource;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/AttributionSource;->asScopedParcelState()Landroid/content/AttributionSource$ScopedParcelState; -HSPLandroid/content/AttributionSource;->asState()Landroid/content/AttributionSourceState; -HSPLandroid/content/AttributionSource;->checkCallingPid()Z -HSPLandroid/content/AttributionSource;->checkCallingUid()Z -HSPLandroid/content/AttributionSource;->enforceCallingPid()V -HSPLandroid/content/AttributionSource;->enforceCallingUid()V -HSPLandroid/content/AttributionSource;->getAttributionTag()Ljava/lang/String; -HSPLandroid/content/AttributionSource;->getNext()Landroid/content/AttributionSource; -HSPLandroid/content/AttributionSource;->getPackageName()Ljava/lang/String; -HSPLandroid/content/AttributionSource;->getRenouncedPermissions()Ljava/util/Set; -HSPLandroid/content/AttributionSource;->getToken()Landroid/os/IBinder; -HSPLandroid/content/AttributionSource;->getUid()I -HSPLandroid/content/AttributionSource;->myAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/content/AttributionSource;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/AttributionSourceState$1;-><init>()V -HSPLandroid/content/AttributionSourceState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/AttributionSourceState; -HSPLandroid/content/AttributionSourceState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/AttributionSourceState$1;->newArray(I)[Landroid/content/AttributionSourceState; -HSPLandroid/content/AttributionSourceState$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/AttributionSourceState;-><clinit>()V -HSPLandroid/content/AttributionSourceState;-><init>()V -HSPLandroid/content/AttributionSourceState;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/content/AttributionSourceState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/AutofillOptions$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/AutofillOptions; -HSPLandroid/content/AutofillOptions$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/AutofillOptions;-><init>(IZ)V -HSPLandroid/content/AutofillOptions;->isAutofillDisabledLocked(Landroid/content/ComponentName;)Z -HSPLandroid/content/BroadcastReceiver$PendingResult$1;-><init>(Landroid/content/BroadcastReceiver$PendingResult;Landroid/app/IActivityManager;)V -HSPLandroid/content/BroadcastReceiver$PendingResult$1;->run()V -HSPLandroid/content/BroadcastReceiver$PendingResult;-><init>(ILjava/lang/String;Landroid/os/Bundle;IZZLandroid/os/IBinder;II)V -HSPLandroid/content/BroadcastReceiver$PendingResult;-><init>(ILjava/lang/String;Landroid/os/Bundle;IZZZLandroid/os/IBinder;IIILjava/lang/String;)V -HSPLandroid/content/BroadcastReceiver$PendingResult;->checkSynchronousHint()V -HSPLandroid/content/BroadcastReceiver$PendingResult;->finish()V -HSPLandroid/content/BroadcastReceiver$PendingResult;->sendFinished(Landroid/app/IActivityManager;)V -HSPLandroid/content/BroadcastReceiver$PendingResult;->setExtrasClassLoader(Ljava/lang/ClassLoader;)V -HSPLandroid/content/BroadcastReceiver$PendingResult;->setResultCode(I)V -HSPLandroid/content/BroadcastReceiver;-><init>()V -HSPLandroid/content/BroadcastReceiver;->checkSynchronousHint()V -HSPLandroid/content/BroadcastReceiver;->getDebugUnregister()Z -HSPLandroid/content/BroadcastReceiver;->getPendingResult()Landroid/content/BroadcastReceiver$PendingResult; -HSPLandroid/content/BroadcastReceiver;->getResultCode()I -HSPLandroid/content/BroadcastReceiver;->getResultExtras(Z)Landroid/os/Bundle; -HSPLandroid/content/BroadcastReceiver;->getSendingUserId()I -HSPLandroid/content/BroadcastReceiver;->goAsync()Landroid/content/BroadcastReceiver$PendingResult; -HSPLandroid/content/BroadcastReceiver;->isInitialStickyBroadcast()Z -HSPLandroid/content/BroadcastReceiver;->isOrderedBroadcast()Z -HSPLandroid/content/BroadcastReceiver;->setPendingResult(Landroid/content/BroadcastReceiver$PendingResult;)V -HSPLandroid/content/BroadcastReceiver;->setResultCode(I)V -HSPLandroid/content/ClipData$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ClipData; -HSPLandroid/content/ClipData$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/ClipData$Item;-><init>(Landroid/content/Intent;)V -HSPLandroid/content/ClipData$Item;->getText()Ljava/lang/CharSequence; -HSPLandroid/content/ClipData;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/ClipData;-><init>(Ljava/lang/CharSequence;[Ljava/lang/String;Landroid/content/ClipData$Item;)V -HSPLandroid/content/ClipData;->getDescription()Landroid/content/ClipDescription; -HSPLandroid/content/ClipData;->getItemAt(I)Landroid/content/ClipData$Item; -HSPLandroid/content/ClipData;->getItemCount()I -HSPLandroid/content/ClipData;->isStyledText()Z -HSPLandroid/content/ClipData;->newIntent(Ljava/lang/CharSequence;Landroid/content/Intent;)Landroid/content/ClipData; -HSPLandroid/content/ClipData;->prepareToLeaveProcess(ZI)V -HSPLandroid/content/ClipData;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/ClipDescription;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/ClipDescription;-><init>(Ljava/lang/CharSequence;[Ljava/lang/String;)V -HSPLandroid/content/ClipDescription;->compareMimeTypes(Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/content/ClipDescription;->confidencesToBundle()Landroid/os/Bundle; -HSPLandroid/content/ClipDescription;->readBundleToConfidences(Landroid/os/Bundle;)V -HSPLandroid/content/ClipDescription;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/ClipboardManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V -HSPLandroid/content/ClipboardManager;->addPrimaryClipChangedListener(Landroid/content/ClipboardManager$OnPrimaryClipChangedListener;)V -HSPLandroid/content/ClipboardManager;->getPrimaryClip()Landroid/content/ClipData; -HSPLandroid/content/ClipboardManager;->getPrimaryClipDescription()Landroid/content/ClipDescription; -HSPLandroid/content/ComponentCallbacksController$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V -HSPLandroid/content/ComponentCallbacksController$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V -HSPLandroid/content/ComponentCallbacksController$$ExternalSyntheticLambda2;-><init>(Landroid/content/res/Configuration;)V -HSPLandroid/content/ComponentCallbacksController$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V -HSPLandroid/content/ComponentCallbacksController;-><init>()V -HSPLandroid/content/ComponentCallbacksController;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/content/ComponentCallbacksController;->dispatchLowMemory()V -HSPLandroid/content/ComponentCallbacksController;->dispatchTrimMemory(I)V -HSPLandroid/content/ComponentCallbacksController;->forAllComponentCallbacks(Ljava/util/function/Consumer;)V -HSPLandroid/content/ComponentCallbacksController;->lambda$dispatchConfigurationChanged$0(Landroid/content/res/Configuration;Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ComponentCallbacksController;->lambda$dispatchTrimMemory$1(ILandroid/content/ComponentCallbacks;)V -HSPLandroid/content/ComponentCallbacksController;->registerCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ComponentCallbacksController;->unregisterCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ComponentName$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ComponentName; -HSPLandroid/content/ComponentName$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/ComponentName$1;->newArray(I)[Landroid/content/ComponentName; -HSPLandroid/content/ComponentName$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/Class;)V -HSPLandroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/String;)V -HSPLandroid/content/ComponentName;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/ComponentName;-><init>(Ljava/lang/String;Landroid/os/Parcel;)V -HSPLandroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ComponentName;->appendShortClassName(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ComponentName;->appendShortString(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ComponentName;->compareTo(Landroid/content/ComponentName;)I -HSPLandroid/content/ComponentName;->createRelative(Ljava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName; -HSPLandroid/content/ComponentName;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/ComponentName;->flattenToShortString()Ljava/lang/String; -HSPLandroid/content/ComponentName;->flattenToString()Ljava/lang/String; -HSPLandroid/content/ComponentName;->getClassName()Ljava/lang/String; -HSPLandroid/content/ComponentName;->getPackageName()Ljava/lang/String; -HSPLandroid/content/ComponentName;->getShortClassName()Ljava/lang/String; -HSPLandroid/content/ComponentName;->hashCode()I -HSPLandroid/content/ComponentName;->readFromParcel(Landroid/os/Parcel;)Landroid/content/ComponentName;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/ComponentName;->toShortString()Ljava/lang/String; -HSPLandroid/content/ComponentName;->toString()Ljava/lang/String; -HSPLandroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName; -HSPLandroid/content/ComponentName;->writeToParcel(Landroid/content/ComponentName;Landroid/os/Parcel;)V -HSPLandroid/content/ComponentName;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/ContentCaptureOptions$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions; -HSPLandroid/content/ContentCaptureOptions$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1;->apply(I)Ljava/lang/Object; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->-$$Nest$smcreateFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions$ContentProtectionOptions; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;-><init>(ZILjava/util/List;Ljava/util/List;I)V -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentCaptureOptions$ContentProtectionOptions; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->createGroupsFromParcel(Landroid/os/Parcel;)Ljava/util/List;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/stream/IntStream;Ljava/util/stream/IntPipeline$Head;]Ljava/util/stream/Stream;Ljava/util/stream/IntPipeline$4;,Ljava/util/stream/ReferencePipeline$11; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->lambda$createGroupsFromParcel$0(I)Ljava/util/ArrayList; -HSPLandroid/content/ContentCaptureOptions$ContentProtectionOptions;->writeToParcel(Landroid/os/Parcel;)V -HSPLandroid/content/ContentCaptureOptions;-><init>(IIIIILandroid/util/ArraySet;)V -HSPLandroid/content/ContentCaptureOptions;-><init>(ZIIIIIZZLandroid/content/ContentCaptureOptions$ContentProtectionOptions;Landroid/util/ArraySet;)V -HSPLandroid/content/ContentCaptureOptions;->isWhitelisted(Landroid/content/Context;)Z -HSPLandroid/content/ContentCaptureOptions;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/ContentProvider$Transport;-><init>(Landroid/content/ContentProvider;)V -HSPLandroid/content/ContentProvider$Transport;->call(Landroid/content/AttributionSource;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentProvider$Transport;->createCancellationSignal()Landroid/os/ICancellationSignal; -HSPLandroid/content/ContentProvider$Transport;->delete(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProvider$Transport;->enforceFilePermission(Landroid/content/AttributionSource;Landroid/net/Uri;Ljava/lang/String;)V -HSPLandroid/content/ContentProvider$Transport;->enforceReadPermission(Landroid/content/AttributionSource;Landroid/net/Uri;)I -HSPLandroid/content/ContentProvider$Transport;->enforceWritePermission(Landroid/content/AttributionSource;Landroid/net/Uri;)I -HSPLandroid/content/ContentProvider$Transport;->getContentProvider()Landroid/content/ContentProvider; -HSPLandroid/content/ContentProvider$Transport;->getProviderName()Ljava/lang/String; -HSPLandroid/content/ContentProvider$Transport;->insert(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)Landroid/net/Uri; -HSPLandroid/content/ContentProvider$Transport;->openTypedAssetFile(Landroid/content/AttributionSource;Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ICancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProvider$Transport;->query(Landroid/content/AttributionSource;Landroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ICancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProvider$Transport;->update(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProvider;->-$$Nest$fgetmTransport(Landroid/content/ContentProvider;)Landroid/content/ContentProvider$Transport; -HSPLandroid/content/ContentProvider;->-$$Nest$mmaybeGetUriWithoutUserId(Landroid/content/ContentProvider;Landroid/net/Uri;)Landroid/net/Uri; -HSPLandroid/content/ContentProvider;->-$$Nest$msetCallingAttributionSource(Landroid/content/ContentProvider;Landroid/content/AttributionSource;)Landroid/content/AttributionSource; -HSPLandroid/content/ContentProvider;->-$$Nest$mvalidateIncomingAuthority(Landroid/content/ContentProvider;Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->-$$Nest$smtraceBegin(JLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;-><init>()V -HSPLandroid/content/ContentProvider;->applyBatch(Ljava/lang/String;Ljava/util/ArrayList;)[Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProvider;->attachInfo(Landroid/content/Context;Landroid/content/pm/ProviderInfo;)V -HSPLandroid/content/ContentProvider;->attachInfo(Landroid/content/Context;Landroid/content/pm/ProviderInfo;Z)V -HSPLandroid/content/ContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentProvider;->checkPermission(Ljava/lang/String;Landroid/content/AttributionSource;)I -HSPLandroid/content/ContentProvider;->checkUser(IILandroid/content/Context;)Z -HSPLandroid/content/ContentProvider;->clearCallingIdentity()Landroid/content/ContentProvider$CallingIdentity; -HSPLandroid/content/ContentProvider;->coerceToLocalContentProvider(Landroid/content/IContentProvider;)Landroid/content/ContentProvider; -HSPLandroid/content/ContentProvider;->delete(Landroid/net/Uri;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProvider;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->enforceReadPermissionInner(Landroid/net/Uri;Landroid/content/AttributionSource;)I -HSPLandroid/content/ContentProvider;->enforceWritePermissionInner(Landroid/net/Uri;Landroid/content/AttributionSource;)I -HSPLandroid/content/ContentProvider;->getAuthorityWithoutUserId(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/ContentProvider;->getCallingAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/content/ContentProvider;->getCallingPackage()Ljava/lang/String; -HSPLandroid/content/ContentProvider;->getContext()Landroid/content/Context; -HSPLandroid/content/ContentProvider;->getIContentProvider()Landroid/content/IContentProvider; -HSPLandroid/content/ContentProvider;->getPathPermissions()[Landroid/content/pm/PathPermission; -HSPLandroid/content/ContentProvider;->getReadPermission()Ljava/lang/String; -HSPLandroid/content/ContentProvider;->getUriWithoutUserId(Landroid/net/Uri;)Landroid/net/Uri; -HSPLandroid/content/ContentProvider;->getUserIdFromAuthority(Ljava/lang/String;I)I -HSPLandroid/content/ContentProvider;->getUserIdFromUri(Landroid/net/Uri;)I -HSPLandroid/content/ContentProvider;->getUserIdFromUri(Landroid/net/Uri;I)I -HSPLandroid/content/ContentProvider;->getWritePermission()Ljava/lang/String; -HSPLandroid/content/ContentProvider;->insert(Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)Landroid/net/Uri; -HSPLandroid/content/ContentProvider;->matchesOurAuthorities(Ljava/lang/String;)Z -HSPLandroid/content/ContentProvider;->maybeAddUserId(Landroid/net/Uri;I)Landroid/net/Uri; -HSPLandroid/content/ContentProvider;->maybeGetUriWithoutUserId(Landroid/net/Uri;)Landroid/net/Uri; -HSPLandroid/content/ContentProvider;->onCallingPackageChanged()V -HSPLandroid/content/ContentProvider;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/content/ContentProvider;->onLowMemory()V -HSPLandroid/content/ContentProvider;->onTrimMemory(I)V -HSPLandroid/content/ContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProvider;->query(Landroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProvider;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProvider;->restoreCallingIdentity(Landroid/content/ContentProvider$CallingIdentity;)V -HSPLandroid/content/ContentProvider;->setAuthorities(Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->setCallingAttributionSource(Landroid/content/AttributionSource;)Landroid/content/AttributionSource; -HSPLandroid/content/ContentProvider;->setPathPermissions([Landroid/content/pm/PathPermission;)V -HSPLandroid/content/ContentProvider;->setReadPermission(Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->setTransportLoggingEnabled(Z)V -HSPLandroid/content/ContentProvider;->setWritePermission(Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->traceBegin(JLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->update(Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProvider;->uriHasUserId(Landroid/net/Uri;)Z -HSPLandroid/content/ContentProvider;->validateIncomingAuthority(Ljava/lang/String;)V -HSPLandroid/content/ContentProvider;->validateIncomingUri(Landroid/net/Uri;)Landroid/net/Uri; -HSPLandroid/content/ContentProviderClient$CursorWrapperInner;-><init>(Landroid/content/ContentProviderClient;Landroid/database/Cursor;)V -HSPLandroid/content/ContentProviderClient$CursorWrapperInner;->close()V -HSPLandroid/content/ContentProviderClient$CursorWrapperInner;->finalize()V -HSPLandroid/content/ContentProviderClient;-><init>(Landroid/content/ContentResolver;Landroid/content/IContentProvider;Ljava/lang/String;Z)V -HSPLandroid/content/ContentProviderClient;->afterRemote()V -HSPLandroid/content/ContentProviderClient;->applyBatch(Ljava/lang/String;Ljava/util/ArrayList;)[Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderClient;->applyBatch(Ljava/util/ArrayList;)[Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderClient;->beforeRemote()V -HSPLandroid/content/ContentProviderClient;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentProviderClient;->call(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentProviderClient;->close()V -HSPLandroid/content/ContentProviderClient;->closeInternal()Z -HSPLandroid/content/ContentProviderClient;->finalize()V -HSPLandroid/content/ContentProviderClient;->getLocalContentProvider()Landroid/content/ContentProvider; -HSPLandroid/content/ContentProviderClient;->query(Landroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProviderClient;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/content/ContentProviderClient;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProviderClient;->release()Z -HSPLandroid/content/ContentProviderClient;->setDetectNotResponding(J)V -HSPLandroid/content/ContentProviderNative;-><init>()V -HSPLandroid/content/ContentProviderNative;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/ContentProviderNative;->asInterface(Landroid/os/IBinder;)Landroid/content/IContentProvider; -HSPLandroid/content/ContentProviderNative;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/ContentProviderOperation$Builder;->assertSelectionAllowed()V -HSPLandroid/content/ContentProviderOperation$Builder;->assertValuesAllowed()V -HSPLandroid/content/ContentProviderOperation$Builder;->build()Landroid/content/ContentProviderOperation; -HSPLandroid/content/ContentProviderOperation$Builder;->ensureSelectionArgs()V -HSPLandroid/content/ContentProviderOperation$Builder;->setSelectionArg(ILjava/lang/Object;)V -HSPLandroid/content/ContentProviderOperation$Builder;->setValue(Ljava/lang/String;Ljava/lang/Object;)V -HSPLandroid/content/ContentProviderOperation$Builder;->withExpectedCount(I)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation$Builder;->withSelection(Ljava/lang/String;[Ljava/lang/String;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation$Builder;->withValues(Landroid/content/ContentValues;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation;-><init>(Landroid/content/ContentProviderOperation$Builder;)V -HSPLandroid/content/ContentProviderOperation;->apply(Landroid/content/ContentProvider;[Landroid/content/ContentProviderResult;I)Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderOperation;->applyInternal(Landroid/content/ContentProvider;[Landroid/content/ContentProviderResult;I)Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderOperation;->getUri()Landroid/net/Uri; -HSPLandroid/content/ContentProviderOperation;->isInsert()Z -HSPLandroid/content/ContentProviderOperation;->isReadOperation()Z -HSPLandroid/content/ContentProviderOperation;->isWriteOperation()Z -HSPLandroid/content/ContentProviderOperation;->isYieldAllowed()Z -HSPLandroid/content/ContentProviderOperation;->newAssertQuery(Landroid/net/Uri;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation;->newDelete(Landroid/net/Uri;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation;->newInsert(Landroid/net/Uri;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation;->newUpdate(Landroid/net/Uri;)Landroid/content/ContentProviderOperation$Builder; -HSPLandroid/content/ContentProviderOperation;->resolveExtrasBackReferences([Landroid/content/ContentProviderResult;I)Landroid/os/Bundle; -HSPLandroid/content/ContentProviderOperation;->resolveSelectionArgsBackReferences([Landroid/content/ContentProviderResult;I)[Ljava/lang/String; -HSPLandroid/content/ContentProviderOperation;->resolveValueBackReferences([Landroid/content/ContentProviderResult;I)Landroid/content/ContentValues; -HSPLandroid/content/ContentProviderOperation;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/ContentProviderProxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/ContentProviderProxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/ContentProviderProxy;->call(Landroid/content/AttributionSource;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentProviderProxy;->createCancellationSignal()Landroid/os/ICancellationSignal; -HSPLandroid/content/ContentProviderProxy;->delete(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProviderProxy;->insert(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)Landroid/net/Uri; -HSPLandroid/content/ContentProviderProxy;->openTypedAssetFile(Landroid/content/AttributionSource;Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ICancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentProviderProxy;->query(Landroid/content/AttributionSource;Landroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ICancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentProviderProxy;->update(Landroid/content/AttributionSource;Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)I -HSPLandroid/content/ContentProviderResult$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderResult$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/ContentProviderResult$1;->newArray(I)[Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentProviderResult$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/ContentProviderResult;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/ContentResolver$2;-><init>(Landroid/content/SyncStatusObserver;)V -HSPLandroid/content/ContentResolver$2;->onStatusChanged(I)V -HSPLandroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V -HSPLandroid/content/ContentResolver$CursorWrapperInner;->close()V -HSPLandroid/content/ContentResolver$CursorWrapperInner;->finalize()V -HSPLandroid/content/ContentResolver$ParcelFileDescriptorInner;-><init>(Landroid/content/ContentResolver;Landroid/os/ParcelFileDescriptor;Landroid/content/IContentProvider;)V -HSPLandroid/content/ContentResolver$ParcelFileDescriptorInner;->releaseResources()V -HSPLandroid/content/ContentResolver$ResultListener;-><init>()V -HSPLandroid/content/ContentResolver$ResultListener;->onResult(Landroid/os/Bundle;)V -HSPLandroid/content/ContentResolver$ResultListener;->waitForResult(J)V -HSPLandroid/content/ContentResolver$StringResultListener;->getResultFromBundle(Landroid/os/Bundle;)Ljava/lang/Object; -HSPLandroid/content/ContentResolver$StringResultListener;->getResultFromBundle(Landroid/os/Bundle;)Ljava/lang/String; -HSPLandroid/content/ContentResolver;-><init>(Landroid/content/Context;)V -HSPLandroid/content/ContentResolver;-><init>(Landroid/content/Context;Landroid/content/ContentInterface;)V -HSPLandroid/content/ContentResolver;->acquireContentProviderClient(Landroid/net/Uri;)Landroid/content/ContentProviderClient; -HSPLandroid/content/ContentResolver;->acquireContentProviderClient(Ljava/lang/String;)Landroid/content/ContentProviderClient; -HSPLandroid/content/ContentResolver;->acquireExistingProvider(Landroid/net/Uri;)Landroid/content/IContentProvider; -HSPLandroid/content/ContentResolver;->acquireProvider(Landroid/net/Uri;)Landroid/content/IContentProvider; -HSPLandroid/content/ContentResolver;->acquireProvider(Ljava/lang/String;)Landroid/content/IContentProvider; -HSPLandroid/content/ContentResolver;->acquireUnstableContentProviderClient(Landroid/net/Uri;)Landroid/content/ContentProviderClient; -HSPLandroid/content/ContentResolver;->acquireUnstableProvider(Landroid/net/Uri;)Landroid/content/IContentProvider; -HSPLandroid/content/ContentResolver;->addPeriodicSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;J)V -HSPLandroid/content/ContentResolver;->addStatusChangeListener(ILandroid/content/SyncStatusObserver;)Ljava/lang/Object; -HSPLandroid/content/ContentResolver;->applyBatch(Ljava/lang/String;Ljava/util/ArrayList;)[Landroid/content/ContentProviderResult; -HSPLandroid/content/ContentResolver;->bulkInsert(Landroid/net/Uri;[Landroid/content/ContentValues;)I -HSPLandroid/content/ContentResolver;->call(Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentResolver;->call(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/ContentResolver;->createSqlQueryBundle(Ljava/lang/String;[Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/content/ContentResolver;->createSqlQueryBundle(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/content/ContentResolver;->delete(Landroid/net/Uri;Landroid/os/Bundle;)I -HSPLandroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I -HSPLandroid/content/ContentResolver;->getAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/content/ContentResolver;->getAttributionTag()Ljava/lang/String; -HSPLandroid/content/ContentResolver;->getContentService()Landroid/content/IContentService; -HSPLandroid/content/ContentResolver;->getIsSyncable(Landroid/accounts/Account;Ljava/lang/String;)I -HSPLandroid/content/ContentResolver;->getMasterSyncAutomatically()Z -HSPLandroid/content/ContentResolver;->getOutgoingPersistedUriPermissions()Ljava/util/List; -HSPLandroid/content/ContentResolver;->getPackageName()Ljava/lang/String; -HSPLandroid/content/ContentResolver;->getPeriodicSyncs(Landroid/accounts/Account;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/content/ContentResolver;->getResourceId(Landroid/net/Uri;)Landroid/content/ContentResolver$OpenResourceIdResult; -HSPLandroid/content/ContentResolver;->getSyncAutomatically(Landroid/accounts/Account;Ljava/lang/String;)Z -HSPLandroid/content/ContentResolver;->getType(Landroid/net/Uri;)Ljava/lang/String; -HSPLandroid/content/ContentResolver;->getUserId()I -HSPLandroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri; -HSPLandroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)Landroid/net/Uri; -HSPLandroid/content/ContentResolver;->invalidPeriodicExtras(Landroid/os/Bundle;)Z -HSPLandroid/content/ContentResolver;->maybeLogQueryToEventLog(JLandroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContentResolver;->notifyChange(Landroid/net/Uri;Landroid/database/ContentObserver;)V -HSPLandroid/content/ContentResolver;->notifyChange(Landroid/net/Uri;Landroid/database/ContentObserver;I)V -HSPLandroid/content/ContentResolver;->notifyChange(Landroid/net/Uri;Landroid/database/ContentObserver;II)V -HSPLandroid/content/ContentResolver;->notifyChange(Landroid/net/Uri;Landroid/database/ContentObserver;Z)V -HSPLandroid/content/ContentResolver;->notifyChange(Landroid/net/Uri;Landroid/database/ContentObserver;ZI)V -HSPLandroid/content/ContentResolver;->notifyChange([Landroid/net/Uri;Landroid/database/ContentObserver;II)V -HSPLandroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentResolver;->openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/ContentResolver;->openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/ContentResolver;->openInputStream(Landroid/net/Uri;)Ljava/io/InputStream; -HSPLandroid/content/ContentResolver;->openTypedAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentResolver;->openTypedAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Landroid/os/Bundle;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V -HSPLandroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;I)V -HSPLandroid/content/ContentResolver;->removePeriodicSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/content/ContentResolver;->requestSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/content/ContentResolver;->requestSyncAsUser(Landroid/accounts/Account;Ljava/lang/String;ILandroid/os/Bundle;)V -HSPLandroid/content/ContentResolver;->resolveUserId(Landroid/net/Uri;)I -HSPLandroid/content/ContentResolver;->setIsSyncable(Landroid/accounts/Account;Ljava/lang/String;I)V -HSPLandroid/content/ContentResolver;->setSyncAutomatically(Landroid/accounts/Account;Ljava/lang/String;Z)V -HSPLandroid/content/ContentResolver;->setSyncAutomaticallyAsUser(Landroid/accounts/Account;Ljava/lang/String;ZI)V -HSPLandroid/content/ContentResolver;->unregisterContentObserver(Landroid/database/ContentObserver;)V -HSPLandroid/content/ContentResolver;->update(Landroid/net/Uri;Landroid/content/ContentValues;Landroid/os/Bundle;)I -HSPLandroid/content/ContentResolver;->update(Landroid/net/Uri;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I -HSPLandroid/content/ContentResolver;->validateSyncExtrasBundle(Landroid/os/Bundle;)V -HSPLandroid/content/ContentUris;->appendId(Landroid/net/Uri$Builder;J)Landroid/net/Uri$Builder; -HSPLandroid/content/ContentUris;->parseId(Landroid/net/Uri;)J -HSPLandroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri; -HSPLandroid/content/ContentValues$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/ContentValues; -HSPLandroid/content/ContentValues$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/ContentValues;-><init>()V -HSPLandroid/content/ContentValues;-><init>(I)V -HSPLandroid/content/ContentValues;-><init>(Landroid/content/ContentValues;)V -HSPLandroid/content/ContentValues;->clear()V -HSPLandroid/content/ContentValues;->containsKey(Ljava/lang/String;)Z -HSPLandroid/content/ContentValues;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/ContentValues;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/content/ContentValues;->getAsBoolean(Ljava/lang/String;)Ljava/lang/Boolean; -HSPLandroid/content/ContentValues;->getAsByteArray(Ljava/lang/String;)[B -HSPLandroid/content/ContentValues;->getAsInteger(Ljava/lang/String;)Ljava/lang/Integer; -HSPLandroid/content/ContentValues;->getAsLong(Ljava/lang/String;)Ljava/lang/Long; -HSPLandroid/content/ContentValues;->getAsString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/ContentValues;->getValues()Landroid/util/ArrayMap; -HSPLandroid/content/ContentValues;->isEmpty()Z -HSPLandroid/content/ContentValues;->isSupportedValue(Ljava/lang/Object;)Z -HSPLandroid/content/ContentValues;->keySet()Ljava/util/Set; -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Double;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Float;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContentValues;->put(Ljava/lang/String;[B)V -HSPLandroid/content/ContentValues;->putAll(Landroid/content/ContentValues;)V -HSPLandroid/content/ContentValues;->putNull(Ljava/lang/String;)V -HSPLandroid/content/ContentValues;->putObject(Ljava/lang/String;Ljava/lang/Object;)V -HSPLandroid/content/ContentValues;->remove(Ljava/lang/String;)V -HSPLandroid/content/ContentValues;->size()I -HSPLandroid/content/ContentValues;->toString()Ljava/lang/String;+]Landroid/content/ContentValues;Landroid/content/ContentValues;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLandroid/content/ContentValues;->valueSet()Ljava/util/Set; -HSPLandroid/content/ContentValues;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/Context;-><init>()V -HSPLandroid/content/Context;->getColor(I)I -HSPLandroid/content/Context;->getColorStateList(I)Landroid/content/res/ColorStateList; -HSPLandroid/content/Context;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/Context;->getNextAutofillId()I -HSPLandroid/content/Context;->getSharedPrefsFile(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/content/Context;->getString(I)Ljava/lang/String; -HSPLandroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/content/Context;->getText(I)Ljava/lang/CharSequence; -HSPLandroid/content/Context;->getToken(Landroid/content/Context;)Landroid/os/IBinder; -HSPLandroid/content/Context;->isAutofillCompatibilityEnabled()Z+]Landroid/content/Context;missing_types -HSPLandroid/content/Context;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->obtainStyledAttributes([I)Landroid/content/res/TypedArray;+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/Context;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/Context;->unregisterComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ContextParams$Builder;-><init>()V -HSPLandroid/content/ContextParams$Builder;-><init>(Landroid/content/ContextParams;)V -HSPLandroid/content/ContextParams$Builder;->build()Landroid/content/ContextParams; -HSPLandroid/content/ContextParams$Builder;->setAttributionTag(Ljava/lang/String;)Landroid/content/ContextParams$Builder; -HSPLandroid/content/ContextParams;->-$$Nest$fgetmAttributionTag(Landroid/content/ContextParams;)Ljava/lang/String; -HSPLandroid/content/ContextParams;->-$$Nest$fgetmNext(Landroid/content/ContextParams;)Landroid/content/AttributionSource; -HSPLandroid/content/ContextParams;->-$$Nest$fgetmRenouncedPermissions(Landroid/content/ContextParams;)Ljava/util/Set; -HSPLandroid/content/ContextParams;-><clinit>()V -HSPLandroid/content/ContextParams;->getAttributionTag()Ljava/lang/String; -HSPLandroid/content/ContextParams;->getNextAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/content/ContextParams;->getRenouncedPermissions()Ljava/util/Set; -HSPLandroid/content/ContextParams;->isRenouncedPermission(Ljava/lang/String;)Z -HSPLandroid/content/ContextParams;->shouldRegisterAttributionSource()Z -HSPLandroid/content/ContextWrapper;-><init>(Landroid/content/Context;)V -HSPLandroid/content/ContextWrapper;->attachBaseContext(Landroid/content/Context;)V -HSPLandroid/content/ContextWrapper;->bindIsolatedService(Landroid/content/Intent;ILjava/lang/String;Ljava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z -HSPLandroid/content/ContextWrapper;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z -HSPLandroid/content/ContextWrapper;->bindServiceAsUser(Landroid/content/Intent;Landroid/content/ServiceConnection;ILandroid/os/UserHandle;)Z -HSPLandroid/content/ContextWrapper;->canLoadUnsafeResources()Z -HSPLandroid/content/ContextWrapper;->checkCallingOrSelfPermission(Ljava/lang/String;)I -HSPLandroid/content/ContextWrapper;->checkCallingPermission(Ljava/lang/String;)I -HSPLandroid/content/ContextWrapper;->checkPermission(Ljava/lang/String;II)I -HSPLandroid/content/ContextWrapper;->checkPermission(Ljava/lang/String;IILandroid/os/IBinder;)I -HSPLandroid/content/ContextWrapper;->checkSelfPermission(Ljava/lang/String;)I -HSPLandroid/content/ContextWrapper;->checkUriPermission(Landroid/net/Uri;III)I -HSPLandroid/content/ContextWrapper;->checkUriPermission(Landroid/net/Uri;IIILandroid/os/IBinder;)I -HSPLandroid/content/ContextWrapper;->createApplicationContext(Landroid/content/pm/ApplicationInfo;I)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createAttributionContext(Ljava/lang/String;)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createConfigurationContext(Landroid/content/res/Configuration;)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createContextAsUser(Landroid/os/UserHandle;I)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createCredentialProtectedStorageContext()Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createDeviceProtectedStorageContext()Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createDisplayContext(Landroid/view/Display;)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createPackageContext(Ljava/lang/String;I)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createPackageContextAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->createWindowContext(Landroid/view/Display;ILandroid/os/Bundle;)Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->databaseList()[Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->deleteDatabase(Ljava/lang/String;)Z -HSPLandroid/content/ContextWrapper;->deleteFile(Ljava/lang/String;)Z -HSPLandroid/content/ContextWrapper;->enforceCallingOrSelfPermission(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContextWrapper;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/ContextWrapper;->enforcePermission(Ljava/lang/String;IILjava/lang/String;)V -HSPLandroid/content/ContextWrapper;->fileList()[Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getActivityToken()Landroid/os/IBinder; -HSPLandroid/content/ContextWrapper;->getApplicationContext()Landroid/content/Context;+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->getAssets()Landroid/content/res/AssetManager; -HSPLandroid/content/ContextWrapper;->getAttributionSource()Landroid/content/AttributionSource; -HSPLandroid/content/ContextWrapper;->getAttributionTag()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getAutofillClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/content/ContextWrapper;->getAutofillOptions()Landroid/content/AutofillOptions;+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context; -HSPLandroid/content/ContextWrapper;->getBasePackageName()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getCacheDir()Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getClassLoader()Ljava/lang/ClassLoader; -HSPLandroid/content/ContextWrapper;->getContentCaptureOptions()Landroid/content/ContentCaptureOptions; -HSPLandroid/content/ContextWrapper;->getContentResolver()Landroid/content/ContentResolver; -HSPLandroid/content/ContextWrapper;->getDataDir()Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getDatabasePath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getDeviceId()I -HSPLandroid/content/ContextWrapper;->getDir(Ljava/lang/String;I)Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getDisplay()Landroid/view/Display; -HSPLandroid/content/ContextWrapper;->getDisplayId()I -HSPLandroid/content/ContextWrapper;->getDisplayNoVerify()Landroid/view/Display; -HSPLandroid/content/ContextWrapper;->getExternalCacheDir()Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getExternalCacheDirs()[Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getExternalFilesDir(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getExternalFilesDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getExternalMediaDirs()[Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getFileStreamPath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getFilesDir()Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getMainExecutor()Ljava/util/concurrent/Executor; -HSPLandroid/content/ContextWrapper;->getMainLooper()Landroid/os/Looper; -HSPLandroid/content/ContextWrapper;->getMainThreadHandler()Landroid/os/Handler; -HSPLandroid/content/ContextWrapper;->getNextAutofillId()I -HSPLandroid/content/ContextWrapper;->getNoBackupFilesDir()Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getOpPackageName()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getPackageCodePath()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getPackageManager()Landroid/content/pm/PackageManager; -HSPLandroid/content/ContextWrapper;->getPackageName()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getPackageResourcePath()Ljava/lang/String; -HSPLandroid/content/ContextWrapper;->getResources()Landroid/content/res/Resources; -HSPLandroid/content/ContextWrapper;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; -HSPLandroid/content/ContextWrapper;->getSharedPreferencesPath(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/content/ContextWrapper;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/content/ContextWrapper;->getSystemServiceName(Ljava/lang/Class;)Ljava/lang/String;+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->getTheme()Landroid/content/res/Resources$Theme; -HSPLandroid/content/ContextWrapper;->getUser()Landroid/os/UserHandle; -HSPLandroid/content/ContextWrapper;->getUserId()I -HSPLandroid/content/ContextWrapper;->getWindowContextToken()Landroid/os/IBinder; -HSPLandroid/content/ContextWrapper;->grantUriPermission(Ljava/lang/String;Landroid/net/Uri;I)V -HSPLandroid/content/ContextWrapper;->isDeviceProtectedStorage()Z -HSPLandroid/content/ContextWrapper;->isRestricted()Z+]Landroid/content/Context;missing_types -HSPLandroid/content/ContextWrapper;->isUiContext()Z -HSPLandroid/content/ContextWrapper;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream; -HSPLandroid/content/ContextWrapper;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream; -HSPLandroid/content/ContextWrapper;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/content/ContextWrapper;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ContextWrapper;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;I)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;I)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->registerReceiverAsUser(Landroid/content/BroadcastReceiver;Landroid/os/UserHandle;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->registerReceiverForAllUsers(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent; -HSPLandroid/content/ContextWrapper;->revokeUriPermission(Landroid/net/Uri;I)V -HSPLandroid/content/ContextWrapper;->sendBroadcast(Landroid/content/Intent;)V -HSPLandroid/content/ContextWrapper;->sendBroadcast(Landroid/content/Intent;Ljava/lang/String;)V -HSPLandroid/content/ContextWrapper;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V -HSPLandroid/content/ContextWrapper;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;)V -HSPLandroid/content/ContextWrapper;->sendOrderedBroadcast(Landroid/content/Intent;Ljava/lang/String;)V -HSPLandroid/content/ContextWrapper;->sendOrderedBroadcast(Landroid/content/Intent;Ljava/lang/String;Landroid/content/BroadcastReceiver;Landroid/os/Handler;ILjava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/content/ContextWrapper;->sendStickyBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V -HSPLandroid/content/ContextWrapper;->setAutofillClient(Landroid/view/autofill/AutofillManager$AutofillClient;)V -HSPLandroid/content/ContextWrapper;->setAutofillOptions(Landroid/content/AutofillOptions;)V -HSPLandroid/content/ContextWrapper;->setContentCaptureOptions(Landroid/content/ContentCaptureOptions;)V -HSPLandroid/content/ContextWrapper;->setTheme(I)V -HSPLandroid/content/ContextWrapper;->startActivity(Landroid/content/Intent;)V -HSPLandroid/content/ContextWrapper;->startForegroundService(Landroid/content/Intent;)Landroid/content/ComponentName; -HSPLandroid/content/ContextWrapper;->startService(Landroid/content/Intent;)Landroid/content/ComponentName; -HSPLandroid/content/ContextWrapper;->stopService(Landroid/content/Intent;)Z -HSPLandroid/content/ContextWrapper;->unbindService(Landroid/content/ServiceConnection;)V -HSPLandroid/content/ContextWrapper;->unregisterComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/content/ContextWrapper;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V -HSPLandroid/content/ContextWrapper;->updateDeviceId(I)V -HSPLandroid/content/ContextWrapper;->updateDisplay(I)V -HSPLandroid/content/IClipboard$Stub$Proxy;->addPrimaryClipChangedListener(Landroid/content/IOnPrimaryClipChangedListener;Ljava/lang/String;Ljava/lang/String;II)V -HSPLandroid/content/IClipboard$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IContentService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/IContentService$Stub$Proxy;->addPeriodicSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;J)V -HSPLandroid/content/IContentService$Stub$Proxy;->addStatusChangeListener(ILandroid/content/ISyncStatusObserver;)V -HSPLandroid/content/IContentService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IContentService$Stub$Proxy;->getIsSyncable(Landroid/accounts/Account;Ljava/lang/String;)I -HSPLandroid/content/IContentService$Stub$Proxy;->getMasterSyncAutomatically()Z -HSPLandroid/content/IContentService$Stub$Proxy;->getPeriodicSyncs(Landroid/accounts/Account;Ljava/lang/String;Landroid/content/ComponentName;)Ljava/util/List; -HSPLandroid/content/IContentService$Stub$Proxy;->getSyncAdapterTypes()[Landroid/content/SyncAdapterType; -HSPLandroid/content/IContentService$Stub$Proxy;->getSyncAutomatically(Landroid/accounts/Account;Ljava/lang/String;)Z -HSPLandroid/content/IContentService$Stub$Proxy;->notifyChange([Landroid/net/Uri;Landroid/database/IContentObserver;ZIIILjava/lang/String;)V -HSPLandroid/content/IContentService$Stub$Proxy;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/IContentObserver;II)V -HSPLandroid/content/IContentService$Stub$Proxy;->removePeriodicSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/content/IContentService$Stub$Proxy;->setIsSyncable(Landroid/accounts/Account;Ljava/lang/String;I)V -HSPLandroid/content/IContentService$Stub$Proxy;->setSyncAutomaticallyAsUser(Landroid/accounts/Account;Ljava/lang/String;ZI)V -HSPLandroid/content/IContentService$Stub$Proxy;->syncAsUser(Landroid/content/SyncRequest;ILjava/lang/String;)V -HSPLandroid/content/IContentService$Stub$Proxy;->unregisterContentObserver(Landroid/database/IContentObserver;)V -HSPLandroid/content/IContentService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/IContentService; -HSPLandroid/content/IIntentReceiver$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IIntentReceiver$Stub;-><init>()V -HSPLandroid/content/IIntentReceiver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IIntentReceiver$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/IIntentReceiver; -HSPLandroid/content/IIntentReceiver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/IIntentSender$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/IIntentSender$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IIntentSender$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/IIntentSender; -HSPLandroid/content/IOnPrimaryClipChangedListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/IRestrictionsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/IRestrictionsManager$Stub$Proxy;->getApplicationRestrictions(Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/content/IRestrictionsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/IRestrictionsManager; -HSPLandroid/content/ISyncAdapter$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/ISyncAdapter$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/ISyncContext$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/ISyncContext$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/ISyncContext$Stub$Proxy;->onFinished(Landroid/content/SyncResult;)V -HSPLandroid/content/ISyncContext$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/ISyncContext; -HSPLandroid/content/ISyncStatusObserver$Stub;-><init>()V -HSPLandroid/content/ISyncStatusObserver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/ISyncStatusObserver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/Intent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/Intent; -HSPLandroid/content/Intent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/Intent$FilterComparison;-><init>(Landroid/content/Intent;)V -HSPLandroid/content/Intent$FilterComparison;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/Intent$FilterComparison;->hashCode()I -HSPLandroid/content/Intent;-><init>()V -HSPLandroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V -HSPLandroid/content/Intent;-><init>(Landroid/content/Intent;)V -HSPLandroid/content/Intent;-><init>(Landroid/content/Intent;I)V -HSPLandroid/content/Intent;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/Intent;-><init>(Ljava/lang/String;)V -HSPLandroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V -HSPLandroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;Landroid/content/Context;Ljava/lang/Class;)V -HSPLandroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/content/Intent;->addFlags(I)Landroid/content/Intent; -HSPLandroid/content/Intent;->cloneFilter()Landroid/content/Intent; -HSPLandroid/content/Intent;->filterEquals(Landroid/content/Intent;)Z -HSPLandroid/content/Intent;->filterHashCode()I -HSPLandroid/content/Intent;->getAction()Ljava/lang/String; -HSPLandroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z -HSPLandroid/content/Intent;->getBundleExtra(Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/content/Intent;->getByteArrayExtra(Ljava/lang/String;)[B -HSPLandroid/content/Intent;->getCategories()Ljava/util/Set; -HSPLandroid/content/Intent;->getClipData()Landroid/content/ClipData; -HSPLandroid/content/Intent;->getComponent()Landroid/content/ComponentName; -HSPLandroid/content/Intent;->getData()Landroid/net/Uri; -HSPLandroid/content/Intent;->getDataString()Ljava/lang/String; -HSPLandroid/content/Intent;->getExtras()Landroid/os/Bundle; -HSPLandroid/content/Intent;->getFlags()I -HSPLandroid/content/Intent;->getIdentifier()Ljava/lang/String; -HSPLandroid/content/Intent;->getIntArrayExtra(Ljava/lang/String;)[I -HSPLandroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I -HSPLandroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J -HSPLandroid/content/Intent;->getPackage()Ljava/lang/String; -HSPLandroid/content/Intent;->getParcelableArrayExtra(Ljava/lang/String;)[Landroid/os/Parcelable; -HSPLandroid/content/Intent;->getParcelableArrayListExtra(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/content/Intent;->getParcelableExtra(Ljava/lang/String;)Landroid/os/Parcelable; -HSPLandroid/content/Intent;->getParcelableExtra(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/content/Intent;->getScheme()Ljava/lang/String; -HSPLandroid/content/Intent;->getSelector()Landroid/content/Intent; -HSPLandroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable; -HSPLandroid/content/Intent;->getSourceBounds()Landroid/graphics/Rect; -HSPLandroid/content/Intent;->getStringArrayExtra(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/content/Intent;->getStringArrayListExtra(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/Intent;->getType()Ljava/lang/String; -HSPLandroid/content/Intent;->hasCategory(Ljava/lang/String;)Z -HSPLandroid/content/Intent;->hasExtra(Ljava/lang/String;)Z -HSPLandroid/content/Intent;->hasFileDescriptors()Z -HSPLandroid/content/Intent;->hasWebURI()Z -HSPLandroid/content/Intent;->isImageCaptureIntent()Z -HSPLandroid/content/Intent;->isWebIntent()Z -HSPLandroid/content/Intent;->makeMainActivity(Landroid/content/ComponentName;)Landroid/content/Intent; -HSPLandroid/content/Intent;->migrateExtraStreamToClipData(Landroid/content/Context;)Z -HSPLandroid/content/Intent;->parseIntent(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;)Landroid/content/Intent; -HSPLandroid/content/Intent;->parseUri(Ljava/lang/String;I)Landroid/content/Intent; -HSPLandroid/content/Intent;->parseUriInternal(Ljava/lang/String;I)Landroid/content/Intent; -HSPLandroid/content/Intent;->prepareToEnterProcess(ILandroid/content/AttributionSource;)V -HSPLandroid/content/Intent;->prepareToEnterProcess(ZLandroid/content/AttributionSource;)V -HSPLandroid/content/Intent;->prepareToLeaveProcess(Landroid/content/Context;)V -HSPLandroid/content/Intent;->prepareToLeaveProcess(Z)V -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/CharSequence;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;[B)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;[I)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;[J)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;[Landroid/os/Parcelable;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtra(Ljava/lang/String;[Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtras(Landroid/content/Intent;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putExtras(Landroid/os/Bundle;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putParcelableArrayListExtra(Ljava/lang/String;Ljava/util/ArrayList;)Landroid/content/Intent; -HSPLandroid/content/Intent;->putStringArrayListExtra(Ljava/lang/String;Ljava/util/ArrayList;)Landroid/content/Intent; -HSPLandroid/content/Intent;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/content/Intent;->removeCategory(Ljava/lang/String;)V -HSPLandroid/content/Intent;->removeExtra(Ljava/lang/String;)V -HSPLandroid/content/Intent;->replaceExtras(Landroid/os/Bundle;)Landroid/content/Intent; -HSPLandroid/content/Intent;->resolveActivity(Landroid/content/pm/PackageManager;)Landroid/content/ComponentName; -HSPLandroid/content/Intent;->resolveActivityInfo(Landroid/content/pm/PackageManager;I)Landroid/content/pm/ActivityInfo; -HSPLandroid/content/Intent;->resolveSystemService(Landroid/content/pm/PackageManager;I)Landroid/content/ComponentName; -HSPLandroid/content/Intent;->resolveType(Landroid/content/ContentResolver;)Ljava/lang/String; -HSPLandroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String; -HSPLandroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setAllowFds(Z)V -HSPLandroid/content/Intent;->setClass(Landroid/content/Context;Ljava/lang/Class;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setClassName(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setClipData(Landroid/content/ClipData;)V -HSPLandroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setDataAndType(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setDefusable(Z)V -HSPLandroid/content/Intent;->setExtrasClassLoader(Ljava/lang/ClassLoader;)V -HSPLandroid/content/Intent;->setFlags(I)Landroid/content/Intent; -HSPLandroid/content/Intent;->setIdentifier(Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->setSelector(Landroid/content/Intent;)V -HSPLandroid/content/Intent;->setSourceBounds(Landroid/graphics/Rect;)V -HSPLandroid/content/Intent;->setType(Ljava/lang/String;)Landroid/content/Intent; -HSPLandroid/content/Intent;->toShortString(Ljava/lang/StringBuilder;ZZZZ)V -HSPLandroid/content/Intent;->toString()Ljava/lang/String; -HSPLandroid/content/Intent;->toString(Ljava/lang/StringBuilder;)V -HSPLandroid/content/Intent;->toUri(I)Ljava/lang/String; -HSPLandroid/content/Intent;->toUriFragment(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/content/Intent;->toUriInner(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/content/Intent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/IntentFilter$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/content/IntentFilter$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/IntentFilter; -HSPLandroid/content/IntentFilter$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/IntentFilter$AuthorityEntry;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/IntentFilter$AuthorityEntry;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/IntentFilter$AuthorityEntry;->getHost()Ljava/lang/String; -HSPLandroid/content/IntentFilter$AuthorityEntry;->match(Landroid/net/Uri;Z)I -HSPLandroid/content/IntentFilter$AuthorityEntry;->writeToParcel(Landroid/os/Parcel;)V -HSPLandroid/content/IntentFilter;-><init>()V -HSPLandroid/content/IntentFilter;-><init>(Landroid/content/IntentFilter;)V -HSPLandroid/content/IntentFilter;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/IntentFilter;-><init>(Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->actionsIterator()Ljava/util/Iterator; -HSPLandroid/content/IntentFilter;->addAction(Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->addCategory(Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->addDataAuthority(Landroid/content/IntentFilter$AuthorityEntry;)V -HSPLandroid/content/IntentFilter;->addDataAuthority(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->addDataPath(Landroid/os/PatternMatcher;)V -HSPLandroid/content/IntentFilter;->addDataPath(Ljava/lang/String;I)V -HSPLandroid/content/IntentFilter;->addDataScheme(Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->addDataSchemeSpecificPart(Landroid/os/PatternMatcher;)V -HSPLandroid/content/IntentFilter;->addDataSchemeSpecificPart(Ljava/lang/String;I)V -HSPLandroid/content/IntentFilter;->addDataType(Ljava/lang/String;)V -HSPLandroid/content/IntentFilter;->authoritiesIterator()Ljava/util/Iterator; -HSPLandroid/content/IntentFilter;->categoriesIterator()Ljava/util/Iterator; -HSPLandroid/content/IntentFilter;->countActions()I -HSPLandroid/content/IntentFilter;->countCategories()I -HSPLandroid/content/IntentFilter;->countDataAuthorities()I -HSPLandroid/content/IntentFilter;->countDataPaths()I -HSPLandroid/content/IntentFilter;->countDataSchemes()I -HSPLandroid/content/IntentFilter;->countDataTypes()I -HSPLandroid/content/IntentFilter;->countMimeGroups()I -HSPLandroid/content/IntentFilter;->debugCheck()Z -HSPLandroid/content/IntentFilter;->getAction(I)Ljava/lang/String; -HSPLandroid/content/IntentFilter;->getAutoVerify()Z -HSPLandroid/content/IntentFilter;->getCategory(I)Ljava/lang/String; -HSPLandroid/content/IntentFilter;->getDataScheme(I)Ljava/lang/String; -HSPLandroid/content/IntentFilter;->getHosts()[Ljava/lang/String; -HSPLandroid/content/IntentFilter;->getHostsList()Ljava/util/ArrayList; -HSPLandroid/content/IntentFilter;->getOrder()I -HSPLandroid/content/IntentFilter;->getPriority()I -HSPLandroid/content/IntentFilter;->hasAction(Ljava/lang/String;)Z -HSPLandroid/content/IntentFilter;->hasCategory(Ljava/lang/String;)Z -HSPLandroid/content/IntentFilter;->isImplicitlyVisibleToInstantApp()Z -HSPLandroid/content/IntentFilter;->isVisibleToInstantApp()Z -HSPLandroid/content/IntentFilter;->lambda$addDataType$0(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLandroid/content/IntentFilter;->match(Landroid/content/ContentResolver;Landroid/content/Intent;ZLjava/lang/String;)I -HSPLandroid/content/IntentFilter;->match(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;Ljava/util/Set;Ljava/lang/String;)I -HSPLandroid/content/IntentFilter;->match(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;Ljava/util/Set;Ljava/lang/String;ZLjava/util/Collection;Landroid/os/Bundle;)I -HSPLandroid/content/IntentFilter;->matchAction(Ljava/lang/String;)Z -HSPLandroid/content/IntentFilter;->matchAction(Ljava/lang/String;ZLjava/util/Collection;)Z -HSPLandroid/content/IntentFilter;->matchCategories(Ljava/util/Set;)Ljava/lang/String; -HSPLandroid/content/IntentFilter;->matchData(Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;)I -HSPLandroid/content/IntentFilter;->matchData(Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;Z)I -HSPLandroid/content/IntentFilter;->matchDataAuthority(Landroid/net/Uri;Z)I -HSPLandroid/content/IntentFilter;->matchExtras(Landroid/os/Bundle;)Ljava/lang/String; -HSPLandroid/content/IntentFilter;->processMimeType(Ljava/lang/String;Ljava/util/function/BiConsumer;)V -HSPLandroid/content/IntentFilter;->schemesIterator()Ljava/util/Iterator; -HSPLandroid/content/IntentFilter;->setAutoVerify(Z)V -HSPLandroid/content/IntentFilter;->setOrder(I)V -HSPLandroid/content/IntentFilter;->setPriority(I)V -HSPLandroid/content/IntentFilter;->setVisibilityToInstantApp(I)V -HSPLandroid/content/IntentFilter;->typesIterator()Ljava/util/Iterator; -HSPLandroid/content/IntentFilter;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/IntentSender;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/LocusId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/LocusId; -HSPLandroid/content/LocusId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/LocusId;-><init>(Ljava/lang/String;)V -HSPLandroid/content/LocusId;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/PeriodicSync$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/PeriodicSync; -HSPLandroid/content/PeriodicSync$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/PeriodicSync;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/PermissionChecker;->checkPermissionForDataDeliveryCommon(Landroid/content/Context;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZ)I -HSPLandroid/content/PermissionChecker;->checkPermissionForDataDeliveryFromDataSource(Landroid/content/Context;Ljava/lang/String;ILandroid/content/AttributionSource;Ljava/lang/String;)I -HSPLandroid/content/RestrictionsManager;-><init>(Landroid/content/Context;Landroid/content/IRestrictionsManager;)V -HSPLandroid/content/RestrictionsManager;->getApplicationRestrictions()Landroid/os/Bundle; -HSPLandroid/content/SearchRecentSuggestionsProvider$DatabaseHelper;-><init>(Landroid/content/Context;I)V -HSPLandroid/content/SearchRecentSuggestionsProvider;-><init>()V -HSPLandroid/content/SearchRecentSuggestionsProvider;->onCreate()Z -HSPLandroid/content/SearchRecentSuggestionsProvider;->setupSuggestions(Ljava/lang/String;I)V -HSPLandroid/content/ServiceConnection;->onBindingDied(Landroid/content/ComponentName;)V -HSPLandroid/content/ServiceConnection;->onNullBinding(Landroid/content/ComponentName;)V -HSPLandroid/content/SyncAdapterType$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/SyncAdapterType; -HSPLandroid/content/SyncAdapterType$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/SyncAdapterType$1;->newArray(I)[Landroid/content/SyncAdapterType; -HSPLandroid/content/SyncAdapterType$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/SyncAdapterType;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/SyncAdapterType;-><init>(Ljava/lang/String;Ljava/lang/String;ZZZZLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/SyncAdapterType;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/SyncAdapterType;->supportsUploading()Z -HSPLandroid/content/SyncAdaptersCache;->getSyncAdapterPackagesForAuthority(Ljava/lang/String;I)[Ljava/lang/String; -HSPLandroid/content/SyncContext;-><init>(Landroid/content/ISyncContext;)V -HSPLandroid/content/SyncContext;->getSyncContextBinder()Landroid/os/IBinder; -HSPLandroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V -HSPLandroid/content/SyncRequest$Builder;->build()Landroid/content/SyncRequest; -HSPLandroid/content/SyncRequest$Builder;->setExtras(Landroid/os/Bundle;)Landroid/content/SyncRequest$Builder; -HSPLandroid/content/SyncRequest$Builder;->setSyncAdapter(Landroid/accounts/Account;Ljava/lang/String;)Landroid/content/SyncRequest$Builder; -HSPLandroid/content/SyncRequest$Builder;->syncOnce()Landroid/content/SyncRequest$Builder; -HSPLandroid/content/SyncRequest;-><init>(Landroid/content/SyncRequest$Builder;)V -HSPLandroid/content/SyncRequest;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/SyncResult;-><init>()V -HSPLandroid/content/SyncResult;->hasError()Z -HSPLandroid/content/SyncResult;->hasHardError()Z -HSPLandroid/content/SyncResult;->hasSoftError()Z -HSPLandroid/content/SyncResult;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/SyncStats;->toString()Ljava/lang/String; -HSPLandroid/content/SyncStats;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/UndoManager$UndoState;->addOperation(Landroid/content/UndoOperation;)V -HSPLandroid/content/UndoManager$UndoState;->destroy()V -HSPLandroid/content/UndoManager$UndoState;->getLastOperation(Ljava/lang/Class;Landroid/content/UndoOwner;)Landroid/content/UndoOperation; -HSPLandroid/content/UndoManager$UndoState;->hasMultipleOwners()Z -HSPLandroid/content/UndoManager$UndoState;->hasOperation(Landroid/content/UndoOwner;)Z -HSPLandroid/content/UndoManager$UndoState;->writeToParcel(Landroid/os/Parcel;)V -HSPLandroid/content/UndoManager;->addOperation(Landroid/content/UndoOperation;I)V -HSPLandroid/content/UndoManager;->beginUpdate(Ljava/lang/CharSequence;)V -HSPLandroid/content/UndoManager;->commitState(Landroid/content/UndoOwner;)I -HSPLandroid/content/UndoManager;->endUpdate()V -HSPLandroid/content/UndoManager;->findPrevState(Ljava/util/ArrayList;[Landroid/content/UndoOwner;I)I -HSPLandroid/content/UndoManager;->forgetRedos([Landroid/content/UndoOwner;I)I -HSPLandroid/content/UndoManager;->forgetUndos([Landroid/content/UndoOwner;I)I -HSPLandroid/content/UndoManager;->getLastOperation(Ljava/lang/Class;Landroid/content/UndoOwner;I)Landroid/content/UndoOperation; -HSPLandroid/content/UndoManager;->getOwner(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/UndoOwner; -HSPLandroid/content/UndoManager;->getTopUndo([Landroid/content/UndoOwner;)Landroid/content/UndoManager$UndoState; -HSPLandroid/content/UndoManager;->isInUndo()Z -HSPLandroid/content/UndoManager;->matchOwners(Landroid/content/UndoManager$UndoState;[Landroid/content/UndoOwner;)Z -HSPLandroid/content/UndoManager;->pushWorkingState()V -HSPLandroid/content/UndoManager;->removeOwner(Landroid/content/UndoOwner;)V -HSPLandroid/content/UndoManager;->restoreInstanceState(Landroid/os/Parcel;Ljava/lang/ClassLoader;)V -HSPLandroid/content/UndoManager;->saveInstanceState(Landroid/os/Parcel;)V -HSPLandroid/content/UndoManager;->saveOwner(Landroid/content/UndoOwner;Landroid/os/Parcel;)V -HSPLandroid/content/UndoOperation;->allowMerge()Z -HSPLandroid/content/UndoOperation;->getOwner()Landroid/content/UndoOwner; -HSPLandroid/content/UndoOperation;->hasData()Z -HSPLandroid/content/UndoOperation;->matchOwner(Landroid/content/UndoOwner;)Z -HSPLandroid/content/UndoOwner;-><init>(Ljava/lang/String;Landroid/content/UndoManager;)V -HSPLandroid/content/UriMatcher;-><init>(I)V -HSPLandroid/content/UriMatcher;-><init>(ILjava/lang/String;)V -HSPLandroid/content/UriMatcher;->addURI(Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/content/UriMatcher;->createChild(Ljava/lang/String;)Landroid/content/UriMatcher; -HSPLandroid/content/UriMatcher;->match(Landroid/net/Uri;)I -HSPLandroid/content/om/OverlayInfo;->ensureValidState()V -HSPLandroid/content/om/OverlayInfo;->isEnabled()Z -HSPLandroid/content/pm/ActivityInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/ActivityInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ActivityInfo$1;->newArray(I)[Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/ActivityInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/ActivityInfo$WindowLayout;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ActivityInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLandroid/content/pm/ActivityInfo;->activityInfoConfigNativeToJava(I)I -HSPLandroid/content/pm/ActivityInfo;->getRealConfigChanged()I -HSPLandroid/content/pm/ActivityInfo;->getThemeResource()I -HSPLandroid/content/pm/ActivityInfo;->hasOnBackInvokedCallbackEnabled()Z -HSPLandroid/content/pm/ActivityInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ApkChecksum$1;-><init>()V -HSPLandroid/content/pm/ApkChecksum$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ApkChecksum; -HSPLandroid/content/pm/ApkChecksum$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ApkChecksum;-><clinit>()V -HSPLandroid/content/pm/ApkChecksum;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ApkChecksum;->getType()I -HSPLandroid/content/pm/ApkChecksum;->getValue()[B -HSPLandroid/content/pm/ApplicationInfo$1$$ExternalSyntheticLambda0;-><init>()V -HSPLandroid/content/pm/ApplicationInfo$1$$ExternalSyntheticLambda0;->readRawParceled(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ApplicationInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/ApplicationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ApplicationInfo;-><init>()V -HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;Lcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;]Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;]Ljava/util/Set;Ljava/util/Collections$EmptySet; -HSPLandroid/content/pm/ApplicationInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/ApplicationInfo-IA;)V -HSPLandroid/content/pm/ApplicationInfo;->getAllApkPaths()[Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/ApplicationInfo;->getBaseCodePath()Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->getBaseResourcePath()Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->getCodePath()Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->getCustomApplicationClassNameForProcess(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->getResourcePath()Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->hasRequestedLegacyExternalStorage()Z -HSPLandroid/content/pm/ApplicationInfo;->hasRtlSupport()Z -HSPLandroid/content/pm/ApplicationInfo;->initForUser(I)V -HSPLandroid/content/pm/ApplicationInfo;->isDirectBootAware()Z -HSPLandroid/content/pm/ApplicationInfo;->isEncryptionAware()Z -HSPLandroid/content/pm/ApplicationInfo;->isExternal()Z -HSPLandroid/content/pm/ApplicationInfo;->isInstantApp()Z -HSPLandroid/content/pm/ApplicationInfo;->isOnBackInvokedCallbackEnabled()Z -HSPLandroid/content/pm/ApplicationInfo;->isPrivilegedApp()Z -HSPLandroid/content/pm/ApplicationInfo;->isProduct()Z -HSPLandroid/content/pm/ApplicationInfo;->isProfileable()Z -HSPLandroid/content/pm/ApplicationInfo;->isProfileableByShell()Z -HSPLandroid/content/pm/ApplicationInfo;->isSignedWithPlatformKey()Z -HSPLandroid/content/pm/ApplicationInfo;->isStaticSharedLibrary()Z -HSPLandroid/content/pm/ApplicationInfo;->isSystemApp()Z -HSPLandroid/content/pm/ApplicationInfo;->isSystemExt()Z -HSPLandroid/content/pm/ApplicationInfo;->isUpdatedSystemApp()Z -HSPLandroid/content/pm/ApplicationInfo;->isVendor()Z -HSPLandroid/content/pm/ApplicationInfo;->requestsIsolatedSplitLoading()Z -HSPLandroid/content/pm/ApplicationInfo;->setBaseCodePath(Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setBaseResourcePath(Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setCodePath(Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setGwpAsanMode(I)V -HSPLandroid/content/pm/ApplicationInfo;->setResourcePath(Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setSplitCodePaths([Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setSplitResourcePaths([Ljava/lang/String;)V -HSPLandroid/content/pm/ApplicationInfo;->setVersionCode(J)V -HSPLandroid/content/pm/ApplicationInfo;->toString()Ljava/lang/String; -HSPLandroid/content/pm/ApplicationInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/Attribution$1;-><init>()V -HSPLandroid/content/pm/Attribution;-><clinit>()V -HSPLandroid/content/pm/BaseParceledListSlice$1;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/pm/BaseParceledListSlice;-><init>(Landroid/os/Parcel;Ljava/lang/ClassLoader;)V -HSPLandroid/content/pm/BaseParceledListSlice;-><init>(Ljava/util/List;)V -HSPLandroid/content/pm/BaseParceledListSlice;->getList()Ljava/util/List; -HSPLandroid/content/pm/BaseParceledListSlice;->readCreator(Landroid/os/Parcelable$Creator;Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/content/pm/BaseParceledListSlice;->readVerifyAndAddElement(Landroid/os/Parcelable$Creator;Landroid/os/Parcel;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; -HSPLandroid/content/pm/BaseParceledListSlice;->verifySameType(Ljava/lang/Class;Ljava/lang/Class;)V+]Ljava/lang/Object;Ljava/lang/Class; -HSPLandroid/content/pm/BaseParceledListSlice;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/Checksum$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/Checksum; -HSPLandroid/content/pm/Checksum$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/Checksum;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/Checksum;->getType()I -HSPLandroid/content/pm/Checksum;->getValue()[B -HSPLandroid/content/pm/ComponentInfo;-><init>()V -HSPLandroid/content/pm/ComponentInfo;-><init>(Landroid/content/pm/ComponentInfo;)V -HSPLandroid/content/pm/ComponentInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ComponentInfo;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/ComponentInfo;->getComponentName()Landroid/content/ComponentName; -HSPLandroid/content/pm/ComponentInfo;->getIconResource()I -HSPLandroid/content/pm/ComponentInfo;->isEnabled()Z -HSPLandroid/content/pm/ComponentInfo;->loadUnsafeLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence; -HSPLandroid/content/pm/ComponentInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ConfigurationInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ConfigurationInfo; -HSPLandroid/content/pm/ConfigurationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ConfigurationInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/CrossProfileApps;-><init>(Landroid/content/Context;Landroid/content/pm/ICrossProfileApps;)V -HSPLandroid/content/pm/CrossProfileApps;->getTargetUserProfiles()Ljava/util/List; -HSPLandroid/content/pm/FallbackCategoryProvider;->getFallbackCategory(Ljava/lang/String;)I -HSPLandroid/content/pm/FallbackCategoryProvider;->loadFallbacks()V -HSPLandroid/content/pm/FeatureInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/FeatureInfo; -HSPLandroid/content/pm/FeatureInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/FeatureInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ICrossProfileApps$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/ICrossProfileApps$Stub$Proxy;->getTargetUserProfiles(Ljava/lang/String;)Ljava/util/List; -HSPLandroid/content/pm/ICrossProfileApps$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/ICrossProfileApps; -HSPLandroid/content/pm/ILauncherApps$Stub$Proxy;->addOnAppsChangedListener(Ljava/lang/String;Landroid/content/pm/IOnAppsChangedListener;)V -HSPLandroid/content/pm/ILauncherApps$Stub$Proxy;->getShortcutIconFd(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/pm/ILauncherApps$Stub$Proxy;->getShortcuts(Ljava/lang/String;Landroid/content/pm/ShortcutQueryWrapper;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/ILauncherApps$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/ILauncherApps; -HSPLandroid/content/pm/IOnAppsChangedListener$Stub;-><init>()V -HSPLandroid/content/pm/IOnAppsChangedListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/IOnAppsChangedListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/pm/IOnChecksumsReadyListener$Stub;-><init>()V -HSPLandroid/content/pm/IOnChecksumsReadyListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/IOnChecksumsReadyListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/pm/IPackageInstaller$Stub$Proxy;->getSessionInfo(I)Landroid/content/pm/PackageInstaller$SessionInfo; -HSPLandroid/content/pm/IPackageInstallerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy$$ExternalSyntheticLambda1;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->checkPermission(Ljava/lang/String;Ljava/lang/String;I)I -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getActivityInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationEnabledSetting(Ljava/lang/String;I)I+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getComponentEnabledSetting(Landroid/content/ComponentName;I)I -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getHomeActivities(Ljava/util/List;)Landroid/content/ComponentName; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstalledApplications(JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstalledPackages(JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getInstallerPackageName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getNameForUid(I)Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo;+]Landroid/content/pm/IPackageManager$Stub$Proxy;Landroid/content/pm/IPackageManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageInstaller()Landroid/content/pm/IPackageInstaller; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackageUid(Ljava/lang/String;JI)I -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPackagesForUid(I)[Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getPermissionControllerPackageName()Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getProviderInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ProviderInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getReceiverInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getServiceInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ServiceInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getSystemAvailableFeatures()Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->getSystemSharedLibraryNames()[Ljava/lang/String; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->hasSystemFeature(Ljava/lang/String;I)Z -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->isInstantApp(Ljava/lang/String;I)Z -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->isPackageSuspendedForUser(Ljava/lang/String;I)Z -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->isProtectedBroadcast(Ljava/lang/String;)Z -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->lambda$notifyDexLoad$1(Landroid/os/Parcel;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->notifyDexLoad(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->notifyPackageUse(Ljava/lang/String;I)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->notifyPackagesReplacedReceived([Ljava/lang/String;)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->queryIntentActivities(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->queryIntentContentProviders(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->queryIntentReceivers(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->queryIntentServices(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->requestPackageChecksums(Ljava/lang/String;ZIILjava/util/List;Landroid/content/pm/IOnChecksumsReadyListener;I)V -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->resolveContentProvider(Ljava/lang/String;JI)Landroid/content/pm/ProviderInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->resolveIntent(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ResolveInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->resolveService(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ResolveInfo; -HSPLandroid/content/pm/IPackageManager$Stub$Proxy;->setComponentEnabledSetting(Landroid/content/ComponentName;IIILjava/lang/String;)V -HSPLandroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager; -HSPLandroid/content/pm/IPackageManager$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/content/pm/IShortcutService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/content/pm/IShortcutService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/content/pm/IShortcutService$Stub$Proxy;->getMaxShortcutCountPerActivity(Ljava/lang/String;I)I -HSPLandroid/content/pm/IShortcutService$Stub$Proxy;->getShortcuts(Ljava/lang/String;II)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/IShortcutService$Stub$Proxy;->setDynamicShortcuts(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;I)Z -HSPLandroid/content/pm/IShortcutService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IShortcutService; -HSPLandroid/content/pm/IncrementalStatesInfo$1;-><init>()V -HSPLandroid/content/pm/IncrementalStatesInfo;-><clinit>()V -HSPLandroid/content/pm/InstallSourceInfo;->getInitiatingPackageName()Ljava/lang/String; -HSPLandroid/content/pm/InstallSourceInfo;->getInstallingPackageName()Ljava/lang/String; -HSPLandroid/content/pm/LauncherActivityInfoInternal$1;-><init>()V -HSPLandroid/content/pm/LauncherActivityInfoInternal;-><clinit>()V -HSPLandroid/content/pm/LauncherActivityInfoInternal;->getActivityInfo()Landroid/content/pm/ActivityInfo; -HSPLandroid/content/pm/LauncherApps$1;-><init>(Landroid/content/pm/LauncherApps;)V -HSPLandroid/content/pm/LauncherApps$1;->onPackageChanged(Landroid/os/UserHandle;Ljava/lang/String;)V -HSPLandroid/content/pm/LauncherApps$1;->onShortcutChanged(Landroid/os/UserHandle;Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V -HSPLandroid/content/pm/LauncherApps$Callback;-><init>()V -HSPLandroid/content/pm/LauncherApps$Callback;->onShortcutsChanged(Ljava/lang/String;Ljava/util/List;Landroid/os/UserHandle;)V -HSPLandroid/content/pm/LauncherApps$CallbackMessageHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/content/pm/LauncherApps$CallbackMessageHandler;->postOnPackageChanged(Ljava/lang/String;Landroid/os/UserHandle;)V -HSPLandroid/content/pm/LauncherApps$CallbackMessageHandler;->postOnShortcutChanged(Ljava/lang/String;Landroid/os/UserHandle;Ljava/util/List;)V -HSPLandroid/content/pm/LauncherApps$ShortcutQuery;-><init>()V -HSPLandroid/content/pm/LauncherApps$ShortcutQuery;->setPackage(Ljava/lang/String;)Landroid/content/pm/LauncherApps$ShortcutQuery; -HSPLandroid/content/pm/LauncherApps$ShortcutQuery;->setQueryFlags(I)Landroid/content/pm/LauncherApps$ShortcutQuery; -HSPLandroid/content/pm/LauncherApps;-><init>(Landroid/content/Context;)V -HSPLandroid/content/pm/LauncherApps;-><init>(Landroid/content/Context;Landroid/content/pm/ILauncherApps;)V -HSPLandroid/content/pm/LauncherApps;->findCallbackLocked(Landroid/content/pm/LauncherApps$Callback;)I -HSPLandroid/content/pm/LauncherApps;->getShortcutIconFd(Landroid/content/pm/ShortcutInfo;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/pm/LauncherApps;->getShortcutIconFd(Ljava/lang/String;Ljava/lang/String;I)Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/pm/LauncherApps;->getShortcuts(Landroid/content/pm/LauncherApps$ShortcutQuery;Landroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/content/pm/LauncherApps;->logErrorForInvalidProfileAccess(Landroid/os/UserHandle;)V -HSPLandroid/content/pm/LauncherApps;->maybeUpdateDisabledMessage(Ljava/util/List;)Ljava/util/List; -HSPLandroid/content/pm/LauncherApps;->registerCallback(Landroid/content/pm/LauncherApps$Callback;)V -HSPLandroid/content/pm/LauncherApps;->registerCallback(Landroid/content/pm/LauncherApps$Callback;Landroid/os/Handler;)V -HSPLandroid/content/pm/ModuleInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ModuleInfo; -HSPLandroid/content/pm/ModuleInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ModuleInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ModuleInfo;->getPackageName()Ljava/lang/String; -HSPLandroid/content/pm/PackageInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageInfo;-><init>()V -HSPLandroid/content/pm/PackageInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/content/pm/ApplicationInfo$1;,Landroid/content/pm/SigningInfo$1; -HSPLandroid/content/pm/PackageInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/PackageInfo-IA;)V -HSPLandroid/content/pm/PackageInfo;->composeLongVersionCode(II)J -HSPLandroid/content/pm/PackageInfo;->getLongVersionCode()J -HSPLandroid/content/pm/PackageInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/PackageInstaller$SessionCallback;-><init>()V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;-><init>(Landroid/content/pm/PackageInstaller$SessionCallback;Ljava/util/concurrent/Executor;)V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;->onSessionActiveChanged(IZ)V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;->onSessionBadgingChanged(I)V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;->onSessionCreated(I)V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;->onSessionFinished(IZ)V -HSPLandroid/content/pm/PackageInstaller$SessionCallbackDelegate;->onSessionProgressChanged(IF)V -HSPLandroid/content/pm/PackageInstaller$SessionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageInstaller$SessionInfo; -HSPLandroid/content/pm/PackageInstaller$SessionInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageInstaller$SessionInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageInstaller$SessionInfo;->getAppPackageName()Ljava/lang/String; -HSPLandroid/content/pm/PackageInstaller$SessionInfo;->getInstallerPackageName()Ljava/lang/String; -HSPLandroid/content/pm/PackageInstaller$SessionInfo;->getSessionId()I -HSPLandroid/content/pm/PackageInstaller$SessionParams;-><init>(I)V -HSPLandroid/content/pm/PackageInstaller;-><init>(Landroid/content/pm/IPackageInstaller;Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/content/pm/PackageInstaller;->getSessionInfo(I)Landroid/content/pm/PackageInstaller$SessionInfo; -HSPLandroid/content/pm/PackageInstaller;->registerSessionCallback(Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Handler;)V -HSPLandroid/content/pm/PackageItemInfo;-><init>()V -HSPLandroid/content/pm/PackageItemInfo;-><init>(Landroid/content/pm/PackageItemInfo;)V -HSPLandroid/content/pm/PackageItemInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageItemInfo;->forceSafeLabels()V -HSPLandroid/content/pm/PackageItemInfo;->loadIcon(Landroid/content/pm/PackageManager;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/pm/PackageItemInfo;->loadLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence; -HSPLandroid/content/pm/PackageItemInfo;->loadSafeLabel(Landroid/content/pm/PackageManager;FI)Ljava/lang/CharSequence; -HSPLandroid/content/pm/PackageItemInfo;->loadUnsafeLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence; -HSPLandroid/content/pm/PackageItemInfo;->loadXmlMetaData(Landroid/content/pm/PackageManager;Ljava/lang/String;)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/pm/PackageItemInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/PackageManager$2;->recompute(Landroid/content/pm/PackageManager$ApplicationInfoQuery;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/PackageManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageManager$3;->recompute(Landroid/content/pm/PackageManager$PackageInfoQuery;)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/content/pm/PackageManager$3;Landroid/content/pm/PackageManager$3; -HSPLandroid/content/pm/PackageManager$ApplicationInfoFlags;-><init>(J)V -HSPLandroid/content/pm/PackageManager$ApplicationInfoFlags;->of(J)Landroid/content/pm/PackageManager$ApplicationInfoFlags; -HSPLandroid/content/pm/PackageManager$ApplicationInfoQuery;-><init>(Ljava/lang/String;JI)V -HSPLandroid/content/pm/PackageManager$ApplicationInfoQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/pm/PackageManager$ApplicationInfoQuery;->hashCode()I -HSPLandroid/content/pm/PackageManager$ComponentInfoFlags;-><init>(J)V -HSPLandroid/content/pm/PackageManager$ComponentInfoFlags;->of(J)Landroid/content/pm/PackageManager$ComponentInfoFlags; -HSPLandroid/content/pm/PackageManager$Flags;-><init>(J)V -HSPLandroid/content/pm/PackageManager$Flags;->getValue()J -HSPLandroid/content/pm/PackageManager$NameNotFoundException;-><init>()V -HSPLandroid/content/pm/PackageManager$NameNotFoundException;-><init>(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageManager$PackageInfoFlags;-><init>(J)V -HSPLandroid/content/pm/PackageManager$PackageInfoFlags;->of(J)Landroid/content/pm/PackageManager$PackageInfoFlags; -HSPLandroid/content/pm/PackageManager$PackageInfoQuery;-><init>(Ljava/lang/String;JI)V -HSPLandroid/content/pm/PackageManager$PackageInfoQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/pm/PackageManager$PackageInfoQuery;->hashCode()I -HSPLandroid/content/pm/PackageManager$Property;-><init>(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/pm/PackageManager$Property;-><init>(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/content/pm/PackageManager$Property;->toBundle(Landroid/os/Bundle;)Landroid/os/Bundle; -HSPLandroid/content/pm/PackageManager$ResolveInfoFlags;-><init>(J)V -HSPLandroid/content/pm/PackageManager$ResolveInfoFlags;->of(J)Landroid/content/pm/PackageManager$ResolveInfoFlags; -HSPLandroid/content/pm/PackageManager;->-$$Nest$smgetApplicationInfoAsUserUncached(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/PackageManager;->-$$Nest$smgetPackageInfoAsUserUncached(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageManager;-><init>()V -HSPLandroid/content/pm/PackageManager;->getApplicationInfoAsUser(Ljava/lang/String;ILandroid/os/UserHandle;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/PackageManager;->getApplicationInfoAsUserCached(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/PackageManager;->getApplicationInfoAsUserUncached(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo; -HSPLandroid/content/pm/PackageManager;->getPackageInfoAsUserCached(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageManager;->getPackageInfoAsUserUncached(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo; -HSPLandroid/content/pm/PackageManager;->queryBroadcastReceiversAsUser(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/content/pm/PackageManager;->queryIntentActivitiesAsUser(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/content/pm/PackageManager;->queryIntentServicesAsUser(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/content/pm/PackageParser$Activity$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageParser$Activity; -HSPLandroid/content/pm/PackageParser$Activity$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageParser$Activity;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$ActivityIntentInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$ApkLite;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;ZIIIILjava/util/List;Landroid/content/pm/PackageParser$SigningDetails;ZZZZZZZZLjava/lang/String;ZIIII)V -HSPLandroid/content/pm/PackageParser$Component;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$Component;->createIntentsList(Landroid/os/Parcel;)Ljava/util/ArrayList; -HSPLandroid/content/pm/PackageParser$Component;->getComponentName()Landroid/content/ComponentName; -HSPLandroid/content/pm/PackageParser$IntentInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$Package;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$Package;->fixupOwner(Ljava/util/List;)V -HSPLandroid/content/pm/PackageParser$Package;->getChildPackageNames()Ljava/util/List; -HSPLandroid/content/pm/PackageParser$Package;->getLongVersionCode()J -HSPLandroid/content/pm/PackageParser$Package;->internStringArrayList(Ljava/util/List;)V -HSPLandroid/content/pm/PackageParser$Package;->isExternal()Z -HSPLandroid/content/pm/PackageParser$Package;->isMatch(I)Z -HSPLandroid/content/pm/PackageParser$Package;->isPrivileged()Z -HSPLandroid/content/pm/PackageParser$Package;->isProduct()Z -HSPLandroid/content/pm/PackageParser$Package;->isSystem()Z -HSPLandroid/content/pm/PackageParser$Package;->isUpdatedSystemApp()Z -HSPLandroid/content/pm/PackageParser$Package;->isVendor()Z -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoBaseCodePath(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoBaseResourcePath(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoCodePath(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoResourcePath(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoSplitCodePaths([Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationInfoSplitResourcePaths([Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Package;->setApplicationVolumeUuid(Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser$Permission$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageParser$Permission; -HSPLandroid/content/pm/PackageParser$Permission$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageParser$Permission;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$Provider$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageParser$Provider; -HSPLandroid/content/pm/PackageParser$Provider$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageParser$Provider;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$Service$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageParser$Service; -HSPLandroid/content/pm/PackageParser$Service$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageParser$Service;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$ServiceIntentInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PackageParser$SigningDetails; -HSPLandroid/content/pm/PackageParser$SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PackageParser$SigningDetails;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PackageParser$SigningDetails;->checkCapability(Landroid/content/pm/PackageParser$SigningDetails;I)Z -HSPLandroid/content/pm/PackageParser$SigningDetails;->hasAncestorOrSelf(Landroid/content/pm/PackageParser$SigningDetails;)Z -HSPLandroid/content/pm/PackageParser$SigningDetails;->hasCertificate(Landroid/content/pm/Signature;)Z -HSPLandroid/content/pm/PackageParser$SigningDetails;->hasCertificate(Landroid/content/pm/Signature;I)Z -HSPLandroid/content/pm/PackageParser$SigningDetails;->hasCertificateInternal(Landroid/content/pm/Signature;I)Z -HSPLandroid/content/pm/PackageParser$SigningDetails;->hasPastSigningCertificates()Z -HSPLandroid/content/pm/PackageParser;-><init>()V -HSPLandroid/content/pm/PackageParser;->checkRequiredSystemProperties(Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/content/pm/PackageParser;->generatePermissionInfo(Landroid/content/pm/PackageParser$Permission;I)Landroid/content/pm/PermissionInfo; -HSPLandroid/content/pm/PackageParser;->isApkFile(Ljava/io/File;)Z -HSPLandroid/content/pm/PackageParser;->isApkPath(Ljava/lang/String;)Z -HSPLandroid/content/pm/PackageParser;->parsePackage(Ljava/io/File;IZ)Landroid/content/pm/PackageParser$Package; -HSPLandroid/content/pm/PackageParser;->setCacheDir(Ljava/io/File;)V -HSPLandroid/content/pm/PackageParser;->setCallback(Landroid/content/pm/PackageParser$Callback;)V -HSPLandroid/content/pm/PackageParser;->setDisplayMetrics(Landroid/util/DisplayMetrics;)V -HSPLandroid/content/pm/PackageParser;->setOnlyCoreApps(Z)V -HSPLandroid/content/pm/PackageParser;->setSeparateProcesses([Ljava/lang/String;)V -HSPLandroid/content/pm/PackageParser;->toSigningKeys([Landroid/content/pm/Signature;)Landroid/util/ArraySet; -HSPLandroid/content/pm/PackageParser;->validateName(Ljava/lang/String;ZZ)Ljava/lang/String; -HSPLandroid/content/pm/PackageParserCacheHelper$ReadHelper;->readString(Landroid/os/Parcel;)Ljava/lang/String; -HSPLandroid/content/pm/PackageStats;-><init>(Ljava/lang/String;)V -HSPLandroid/content/pm/ParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/ParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Landroid/content/pm/ParceledListSlice; -HSPLandroid/content/pm/ParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/content/pm/ParceledListSlice;-><init>(Landroid/os/Parcel;Ljava/lang/ClassLoader;)V -HSPLandroid/content/pm/ParceledListSlice;-><init>(Landroid/os/Parcel;Ljava/lang/ClassLoader;Landroid/content/pm/ParceledListSlice-IA;)V -HSPLandroid/content/pm/ParceledListSlice;-><init>(Ljava/util/List;)V -HSPLandroid/content/pm/ParceledListSlice;->getList()Ljava/util/List; -HSPLandroid/content/pm/ParceledListSlice;->readParcelableCreator(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Landroid/os/Parcelable$Creator; -HSPLandroid/content/pm/ParceledListSlice;->setInlineCountLimit(I)V -HSPLandroid/content/pm/ParceledListSlice;->writeElement(Landroid/os/Parcelable;Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ParceledListSlice;->writeElement(Ljava/lang/Object;Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ParceledListSlice;->writeParcelableCreator(Landroid/os/Parcelable;Landroid/os/Parcel;)V -HSPLandroid/content/pm/ParceledListSlice;->writeParcelableCreator(Ljava/lang/Object;Landroid/os/Parcel;)V -HSPLandroid/content/pm/ParceledListSlice;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/PathPermission$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PathPermission; -HSPLandroid/content/pm/PathPermission$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PathPermission$1;->newArray(I)[Landroid/content/pm/PathPermission; -HSPLandroid/content/pm/PathPermission$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/PathPermission;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PathPermission;->getReadPermission()Ljava/lang/String; -HSPLandroid/content/pm/PathPermission;->getWritePermission()Ljava/lang/String; -HSPLandroid/content/pm/PathPermission;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/PermissionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/PermissionInfo; -HSPLandroid/content/pm/PermissionInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/PermissionInfo$1;->newArray(I)[Landroid/content/pm/PermissionInfo; -HSPLandroid/content/pm/PermissionInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/PermissionInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/PermissionInfo;->fixProtectionLevel(I)I -HSPLandroid/content/pm/PermissionInfo;->getProtection()I -HSPLandroid/content/pm/PermissionInfo;->getProtectionFlags()I -HSPLandroid/content/pm/PermissionInfo;->isAppOp()Z -HSPLandroid/content/pm/PermissionInfo;->isHardRestricted()Z -HSPLandroid/content/pm/PermissionInfo;->isRestricted()Z -HSPLandroid/content/pm/PermissionInfo;->isRuntime()Z -HSPLandroid/content/pm/PermissionInfo;->isSoftRestricted()Z -HSPLandroid/content/pm/ProviderInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ProviderInfo; -HSPLandroid/content/pm/ProviderInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ProviderInfo$1;->newArray(I)[Landroid/content/pm/ProviderInfo; -HSPLandroid/content/pm/ProviderInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/ProviderInfo;-><init>()V -HSPLandroid/content/pm/ProviderInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ProviderInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ProviderInfoList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ProviderInfoList; -HSPLandroid/content/pm/ProviderInfoList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ProviderInfoList;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ProviderInfoList;-><init>(Landroid/os/Parcel;Landroid/content/pm/ProviderInfoList-IA;)V -HSPLandroid/content/pm/ProviderInfoList;->getList()Ljava/util/List; -HSPLandroid/content/pm/RegisteredServicesCache;->containsType(Ljava/util/ArrayList;Ljava/lang/Object;)Z -HSPLandroid/content/pm/ResolveInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ResolveInfo; -HSPLandroid/content/pm/ResolveInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ResolveInfo;-><init>()V -HSPLandroid/content/pm/ResolveInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ResolveInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/ResolveInfo-IA;)V -HSPLandroid/content/pm/ResolveInfo;->getComponentInfo()Landroid/content/pm/ComponentInfo; -HSPLandroid/content/pm/ResolveInfo;->loadIcon(Landroid/content/pm/PackageManager;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/pm/ResolveInfo;->loadLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence; -HSPLandroid/content/pm/ResolveInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ServiceInfo; -HSPLandroid/content/pm/ServiceInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ServiceInfo$1;->newArray(I)[Landroid/content/pm/ServiceInfo; -HSPLandroid/content/pm/ServiceInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/ServiceInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ServiceInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/SharedLibraryInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SharedLibraryInfo; -HSPLandroid/content/pm/SharedLibraryInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; -HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Landroid/os/Parcel;Landroid/content/pm/SharedLibraryInfo-IA;)V -HSPLandroid/content/pm/SharedLibraryInfo;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;JILandroid/content/pm/VersionedPackage;Ljava/util/List;Ljava/util/List;Z)V -HSPLandroid/content/pm/SharedLibraryInfo;->addDependency(Landroid/content/pm/SharedLibraryInfo;)V -HSPLandroid/content/pm/SharedLibraryInfo;->getAllCodePaths()Ljava/util/List; -HSPLandroid/content/pm/SharedLibraryInfo;->getDependencies()Ljava/util/List; -HSPLandroid/content/pm/SharedLibraryInfo;->getName()Ljava/lang/String; -HSPLandroid/content/pm/SharedLibraryInfo;->getPath()Ljava/lang/String; -HSPLandroid/content/pm/SharedLibraryInfo;->isNative()Z -HSPLandroid/content/pm/SharedLibraryInfo;->isSdk()Z -HSPLandroid/content/pm/SharedLibraryInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ShortcutInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/ShortcutInfo; -HSPLandroid/content/pm/ShortcutInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/ShortcutInfo$Builder;-><init>(Landroid/content/Context;Ljava/lang/String;)V -HSPLandroid/content/pm/ShortcutInfo$Builder;->build()Landroid/content/pm/ShortcutInfo; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setCategories(Ljava/util/Set;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setIcon(Landroid/graphics/drawable/Icon;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setIntent(Landroid/content/Intent;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setIntents([Landroid/content/Intent;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setLongLabel(Ljava/lang/CharSequence;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setLongLived(Z)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setRank(I)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo$Builder;->setShortLabel(Ljava/lang/CharSequence;)Landroid/content/pm/ShortcutInfo$Builder; -HSPLandroid/content/pm/ShortcutInfo;-><init>(Landroid/content/pm/ShortcutInfo$Builder;)V -HSPLandroid/content/pm/ShortcutInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/ShortcutInfo;->addFlags(I)V -HSPLandroid/content/pm/ShortcutInfo;->cloneCapabilityBindings(Ljava/util/Map;)Ljava/util/Map; -HSPLandroid/content/pm/ShortcutInfo;->cloneCategories(Ljava/util/Set;)Landroid/util/ArraySet; -HSPLandroid/content/pm/ShortcutInfo;->cloneIntents([Landroid/content/Intent;)[Landroid/content/Intent; -HSPLandroid/content/pm/ShortcutInfo;->clonePersons([Landroid/app/Person;)[Landroid/app/Person; -HSPLandroid/content/pm/ShortcutInfo;->fixUpIntentExtras()V -HSPLandroid/content/pm/ShortcutInfo;->getActivity()Landroid/content/ComponentName; -HSPLandroid/content/pm/ShortcutInfo;->getCategories()Ljava/util/Set; -HSPLandroid/content/pm/ShortcutInfo;->getDisabledMessage()Ljava/lang/CharSequence; -HSPLandroid/content/pm/ShortcutInfo;->getDisabledReasonForRestoreIssue(Landroid/content/Context;I)Ljava/lang/String; -HSPLandroid/content/pm/ShortcutInfo;->getExtras()Landroid/os/PersistableBundle; -HSPLandroid/content/pm/ShortcutInfo;->getIconResourceId()I -HSPLandroid/content/pm/ShortcutInfo;->getId()Ljava/lang/String; -HSPLandroid/content/pm/ShortcutInfo;->getLastChangedTimestamp()J -HSPLandroid/content/pm/ShortcutInfo;->getLongLabel()Ljava/lang/CharSequence; -HSPLandroid/content/pm/ShortcutInfo;->getPackage()Ljava/lang/String; -HSPLandroid/content/pm/ShortcutInfo;->getPersons()[Landroid/app/Person; -HSPLandroid/content/pm/ShortcutInfo;->getRank()I -HSPLandroid/content/pm/ShortcutInfo;->getShortLabel()Ljava/lang/CharSequence; -HSPLandroid/content/pm/ShortcutInfo;->getUserHandle()Landroid/os/UserHandle; -HSPLandroid/content/pm/ShortcutInfo;->hasFlags(I)Z -HSPLandroid/content/pm/ShortcutInfo;->hasIconFile()Z -HSPLandroid/content/pm/ShortcutInfo;->hasIconResource()Z -HSPLandroid/content/pm/ShortcutInfo;->hasIconUri()Z -HSPLandroid/content/pm/ShortcutInfo;->hasKeyFieldsOnly()Z -HSPLandroid/content/pm/ShortcutInfo;->isCached()Z -HSPLandroid/content/pm/ShortcutInfo;->isDeclaredInManifest()Z -HSPLandroid/content/pm/ShortcutInfo;->isDynamic()Z -HSPLandroid/content/pm/ShortcutInfo;->isEnabled()Z -HSPLandroid/content/pm/ShortcutInfo;->isPinned()Z -HSPLandroid/content/pm/ShortcutInfo;->setIntentExtras(Landroid/content/Intent;Landroid/os/PersistableBundle;)Landroid/content/Intent; -HSPLandroid/content/pm/ShortcutInfo;->updateTimestamp()V -HSPLandroid/content/pm/ShortcutInfo;->validateIcon(Landroid/graphics/drawable/Icon;)Landroid/graphics/drawable/Icon; -HSPLandroid/content/pm/ShortcutInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/ShortcutManager;-><init>(Landroid/content/Context;Landroid/content/pm/IShortcutService;)V -HSPLandroid/content/pm/ShortcutManager;->addDynamicShortcuts(Ljava/util/List;)Z -HSPLandroid/content/pm/ShortcutManager;->getDynamicShortcuts()Ljava/util/List; -HSPLandroid/content/pm/ShortcutManager;->getFutureOrThrow(Lcom/android/internal/infra/AndroidFuture;)Ljava/lang/Object; -HSPLandroid/content/pm/ShortcutManager;->getManifestShortcuts()Ljava/util/List; -HSPLandroid/content/pm/ShortcutManager;->getMaxShortcutCountPerActivity()I -HSPLandroid/content/pm/ShortcutManager;->getPinnedShortcuts()Ljava/util/List; -HSPLandroid/content/pm/ShortcutManager;->injectMyUserId()I -HSPLandroid/content/pm/ShortcutManager;->setDynamicShortcuts(Ljava/util/List;)Z -HSPLandroid/content/pm/ShortcutManager;->updateShortcuts(Ljava/util/List;)Z -HSPLandroid/content/pm/ShortcutQueryWrapper;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/Signature$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/Signature; -HSPLandroid/content/pm/Signature$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/Signature$1;->newArray(I)[Landroid/content/pm/Signature; -HSPLandroid/content/pm/Signature$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/content/pm/Signature;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/Signature;-><init>(Landroid/os/Parcel;Landroid/content/pm/Signature-IA;)V -HSPLandroid/content/pm/Signature;-><init>(Ljava/lang/String;)V -HSPLandroid/content/pm/Signature;-><init>([B)V -HSPLandroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/pm/Signature;->hashCode()I -HSPLandroid/content/pm/Signature;->parseHexDigit(I)I -HSPLandroid/content/pm/Signature;->toByteArray()[B -HSPLandroid/content/pm/Signature;->toChars()[C -HSPLandroid/content/pm/Signature;->toChars([C[I)[C -HSPLandroid/content/pm/Signature;->toCharsString()Ljava/lang/String; -HSPLandroid/content/pm/SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SigningDetails; -HSPLandroid/content/pm/SigningDetails$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SigningDetails;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; -HSPLandroid/content/pm/SigningDetails;->getSignatures()[Landroid/content/pm/Signature; -HSPLandroid/content/pm/SigningInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/SigningInfo; -HSPLandroid/content/pm/SigningInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/SigningInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcelable$Creator;Landroid/content/pm/SigningDetails$1; -HSPLandroid/content/pm/SigningInfo;->getApkContentsSigners()[Landroid/content/pm/Signature; -HSPLandroid/content/pm/SigningInfo;->getSigningCertificateHistory()[Landroid/content/pm/Signature; -HSPLandroid/content/pm/SigningInfo;->hasMultipleSigners()Z -HSPLandroid/content/pm/SigningInfo;->hasPastSigningCertificates()Z -HSPLandroid/content/pm/StringParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/StringParceledListSlice; -HSPLandroid/content/pm/StringParceledListSlice$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/StringParceledListSlice;->getList()Ljava/util/List; -HSPLandroid/content/pm/UserInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/UserInfo; -HSPLandroid/content/pm/UserInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/UserInfo;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle; -HSPLandroid/content/pm/UserInfo;->isAdmin()Z -HSPLandroid/content/pm/UserInfo;->isEnabled()Z -HSPLandroid/content/pm/UserInfo;->isGuest()Z -HSPLandroid/content/pm/UserInfo;->isManagedProfile()Z -HSPLandroid/content/pm/UserInfo;->isPrimary()Z -HSPLandroid/content/pm/UserInfo;->isProfile()Z -HSPLandroid/content/pm/UserInfo;->isQuietModeEnabled()Z -HSPLandroid/content/pm/UserInfo;->isRestricted()Z -HSPLandroid/content/pm/UserInfo;->supportsSwitchTo()Z -HSPLandroid/content/pm/UserInfo;->supportsSwitchToByUser()Z -HSPLandroid/content/pm/UserPackage;-><clinit>()V -HSPLandroid/content/pm/UserPackage;-><init>(ILjava/lang/String;)V -HSPLandroid/content/pm/UserPackage;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/pm/UserPackage;->hashCode()I -HSPLandroid/content/pm/UserPackage;->of(ILjava/lang/String;)Landroid/content/pm/UserPackage; -HSPLandroid/content/pm/UserProperties;->isPresent(J)Z -HSPLandroid/content/pm/VersionedPackage$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/VersionedPackage; -HSPLandroid/content/pm/VersionedPackage$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/VersionedPackage;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/VersionedPackage;-><init>(Landroid/os/Parcel;Landroid/content/pm/VersionedPackage-IA;)V -HSPLandroid/content/pm/VersionedPackage;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/pm/dex/ArtManager;->getCurrentProfilePath(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String; -HSPLandroid/content/pm/dex/ArtManager;->getProfileName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/pm/dex/ArtManager;->getReferenceProfilePath(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String; -HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseApkLite(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;I)Landroid/content/pm/parsing/result/ParseResult; -HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseApkLiteInner(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;Ljava/io/FileDescriptor;Ljava/lang/String;I)Landroid/content/pm/parsing/result/ParseResult; -HSPLandroid/content/pm/parsing/ApkLiteParseUtils;->parseMonolithicPackageLite(Landroid/content/pm/parsing/result/ParseInput;Ljava/io/File;I)Landroid/content/pm/parsing/result/ParseResult; -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;-><init>(Landroid/content/pm/parsing/result/ParseInput$Callback;)V -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->enableDeferredError(Ljava/lang/String;I)Landroid/content/pm/parsing/result/ParseResult; -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->getResult()Ljava/lang/Object; -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->isError()Z -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->isSuccess()Z -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->reset()Landroid/content/pm/parsing/result/ParseInput; -HSPLandroid/content/pm/parsing/result/ParseTypeImpl;->success(Ljava/lang/Object;)Landroid/content/pm/parsing/result/ParseResult; -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/pm/permission/SplitPermissionInfoParcelable; -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;-><init>(Ljava/lang/String;Ljava/util/List;I)V -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;->getNewPermissions()Ljava/util/List; -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;->getSplitPermission()Ljava/lang/String; -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;->getTargetSdk()I -HSPLandroid/content/pm/permission/SplitPermissionInfoParcelable;->onConstructed()V -HSPLandroid/content/pm/split/SplitDependencyLoader;-><init>(Landroid/util/SparseArray;)V -HSPLandroid/content/pm/split/SplitDependencyLoader;->collectConfigSplitIndices(I)[I -HSPLandroid/content/pm/split/SplitDependencyLoader;->loadDependenciesForSplit(I)V -HSPLandroid/content/res/ApkAssets;-><init>(ILjava/lang/String;ILandroid/content/res/loader/AssetsProvider;)V -HSPLandroid/content/res/ApkAssets;->close()V -HSPLandroid/content/res/ApkAssets;->definesOverlayable()Z -HSPLandroid/content/res/ApkAssets;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V -HSPLandroid/content/res/ApkAssets;->finalize()V -HSPLandroid/content/res/ApkAssets;->getAssetPath()Ljava/lang/String; -HSPLandroid/content/res/ApkAssets;->getDebugName()Ljava/lang/String; -HSPLandroid/content/res/ApkAssets;->getStringFromPool(I)Ljava/lang/CharSequence;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; -HSPLandroid/content/res/ApkAssets;->isUpToDate()Z -HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;)Landroid/content/res/ApkAssets; -HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;I)Landroid/content/res/ApkAssets; -HSPLandroid/content/res/ApkAssets;->loadOverlayFromPath(Ljava/lang/String;I)Landroid/content/res/ApkAssets; -HSPLandroid/content/res/ApkAssets;->openXml(Ljava/lang/String;)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/AssetFileDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/AssetFileDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/res/AssetFileDescriptor$AutoCloseInputStream;->read([BII)I -HSPLandroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V -HSPLandroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJLandroid/os/Bundle;)V -HSPLandroid/content/res/AssetFileDescriptor;->close()V -HSPLandroid/content/res/AssetFileDescriptor;->createInputStream()Ljava/io/FileInputStream; -HSPLandroid/content/res/AssetFileDescriptor;->getDeclaredLength()J -HSPLandroid/content/res/AssetFileDescriptor;->getExtras()Landroid/os/Bundle; -HSPLandroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/content/res/AssetFileDescriptor;->getLength()J -HSPLandroid/content/res/AssetFileDescriptor;->getParcelFileDescriptor()Landroid/os/ParcelFileDescriptor; -HSPLandroid/content/res/AssetFileDescriptor;->getStartOffset()J -HSPLandroid/content/res/AssetFileDescriptor;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/res/AssetManager$AssetInputStream;-><init>(Landroid/content/res/AssetManager;J)V -HSPLandroid/content/res/AssetManager$AssetInputStream;-><init>(Landroid/content/res/AssetManager;JLandroid/content/res/AssetManager$AssetInputStream-IA;)V -HSPLandroid/content/res/AssetManager$AssetInputStream;->available()I -HSPLandroid/content/res/AssetManager$AssetInputStream;->close()V -HSPLandroid/content/res/AssetManager$AssetInputStream;->ensureOpen()V -HSPLandroid/content/res/AssetManager$AssetInputStream;->finalize()V -HSPLandroid/content/res/AssetManager$AssetInputStream;->getNativeAsset()J -HSPLandroid/content/res/AssetManager$AssetInputStream;->mark(I)V -HSPLandroid/content/res/AssetManager$AssetInputStream;->markSupported()Z -HSPLandroid/content/res/AssetManager$AssetInputStream;->read()I -HSPLandroid/content/res/AssetManager$AssetInputStream;->read([B)I -HSPLandroid/content/res/AssetManager$AssetInputStream;->read([BII)I -HSPLandroid/content/res/AssetManager$Builder;-><init>()V -HSPLandroid/content/res/AssetManager$Builder;->addApkAssets(Landroid/content/res/ApkAssets;)Landroid/content/res/AssetManager$Builder; -HSPLandroid/content/res/AssetManager$Builder;->build()Landroid/content/res/AssetManager;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/content/res/AssetManager;->-$$Nest$fgetmObject(Landroid/content/res/AssetManager;)J -HSPLandroid/content/res/AssetManager;->-$$Nest$fputmApkAssets(Landroid/content/res/AssetManager;[Landroid/content/res/ApkAssets;)V -HSPLandroid/content/res/AssetManager;->-$$Nest$fputmLoaders(Landroid/content/res/AssetManager;[Landroid/content/res/loader/ResourcesLoader;)V -HSPLandroid/content/res/AssetManager;->-$$Nest$mdecRefsLocked(Landroid/content/res/AssetManager;J)V -HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetDestroy(J)V -HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetGetLength(J)J -HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetGetRemainingLength(J)J -HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetRead(J[BII)I -HSPLandroid/content/res/AssetManager;-><init>()V -HSPLandroid/content/res/AssetManager;-><init>(Z)V -HSPLandroid/content/res/AssetManager;-><init>(ZLandroid/content/res/AssetManager-IA;)V -HSPLandroid/content/res/AssetManager;->addAssetPathInternal(Ljava/lang/String;ZZ)I -HSPLandroid/content/res/AssetManager;->applyStyle(JIILandroid/content/res/XmlBlock$Parser;[IJJ)V -HSPLandroid/content/res/AssetManager;->applyStyleToTheme(JIZ)V -HSPLandroid/content/res/AssetManager;->close()V -HSPLandroid/content/res/AssetManager;->containsAllocatedTable()Z -HSPLandroid/content/res/AssetManager;->createSystemAssetsInZygoteLocked(ZLjava/lang/String;)V -HSPLandroid/content/res/AssetManager;->createTheme()J -HSPLandroid/content/res/AssetManager;->decRefsLocked(J)V -HSPLandroid/content/res/AssetManager;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V -HSPLandroid/content/res/AssetManager;->ensureOpenLocked()V -HSPLandroid/content/res/AssetManager;->ensureValidLocked()V -HSPLandroid/content/res/AssetManager;->finalize()V -HSPLandroid/content/res/AssetManager;->findCookieForPath(Ljava/lang/String;)I -HSPLandroid/content/res/AssetManager;->getApkAssets()[Landroid/content/res/ApkAssets; -HSPLandroid/content/res/AssetManager;->getAssignedPackageIdentifiers()Landroid/util/SparseArray; -HSPLandroid/content/res/AssetManager;->getAssignedPackageIdentifiers(ZZ)Landroid/util/SparseArray; -HSPLandroid/content/res/AssetManager;->getLoaders()Ljava/util/List; -HSPLandroid/content/res/AssetManager;->getLocales()[Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getNonSystemLocales()[Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getParentThemeIdentifier(I)I -HSPLandroid/content/res/AssetManager;->getPooledStringForCookie(II)Ljava/lang/CharSequence;+]Landroid/content/res/ApkAssets;Landroid/content/res/ApkAssets;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->getResourceArray(I[I)I -HSPLandroid/content/res/AssetManager;->getResourceArraySize(I)I -HSPLandroid/content/res/AssetManager;->getResourceBagText(II)Ljava/lang/CharSequence; -HSPLandroid/content/res/AssetManager;->getResourceEntryName(I)Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourceIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/content/res/AssetManager;->getResourceIntArray(I)[I -HSPLandroid/content/res/AssetManager;->getResourceName(I)Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourcePackageName(I)Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourceStringArray(I)[Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourceText(I)Ljava/lang/CharSequence; -HSPLandroid/content/res/AssetManager;->getResourceTextArray(I)[Ljava/lang/CharSequence; -HSPLandroid/content/res/AssetManager;->getResourceTypeName(I)Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->getResourceValue(IILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->getSizeConfigurations()[Landroid/content/res/Configuration; -HSPLandroid/content/res/AssetManager;->getSystem()Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->getThemeValue(JILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->incRefsLocked(J)V -HSPLandroid/content/res/AssetManager;->isUpToDate()Z -HSPLandroid/content/res/AssetManager;->list(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/content/res/AssetManager;->open(Ljava/lang/String;)Ljava/io/InputStream; -HSPLandroid/content/res/AssetManager;->open(Ljava/lang/String;I)Ljava/io/InputStream; -HSPLandroid/content/res/AssetManager;->openFd(Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/AssetManager;->openNonAsset(ILjava/lang/String;I)Ljava/io/InputStream; -HSPLandroid/content/res/AssetManager;->openNonAssetFd(ILjava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/AssetManager;->openNonAssetFd(Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/AssetManager;->openXmlBlockAsset(ILjava/lang/String;)Landroid/content/res/XmlBlock;+]Ljava/lang/Object;Landroid/content/res/XmlBlock; -HSPLandroid/content/res/AssetManager;->openXmlResourceParser(ILjava/lang/String;)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/AssetManager;->rebaseTheme(JLandroid/content/res/AssetManager;[I[ZI)Landroid/content/res/AssetManager; -HSPLandroid/content/res/AssetManager;->releaseTheme(J)V -HSPLandroid/content/res/AssetManager;->resolveAttrs(JII[I[I[I[I)Z -HSPLandroid/content/res/AssetManager;->retrieveAttributes(Landroid/content/res/XmlBlock$Parser;[I[I[I)Z -HSPLandroid/content/res/AssetManager;->setApkAssets([Landroid/content/res/ApkAssets;Z)V -HSPLandroid/content/res/AssetManager;->setConfiguration(IILjava/lang/String;IIIIIIIIIIIIIIII)V -HSPLandroid/content/res/AssetManager;->setConfigurationInternal(IILjava/lang/String;[Ljava/lang/String;IIIIIIIIIIIIIIIIZ)V -HSPLandroid/content/res/AssetManager;->setThemeTo(JLandroid/content/res/AssetManager;J)V -HSPLandroid/content/res/AssetManager;->xmlBlockGone(I)V -HSPLandroid/content/res/ColorStateList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ColorStateList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;-><init>(Landroid/content/res/ColorStateList;)V -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;->getChangingConfigurations()I -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;->newInstance()Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;->newInstance()Ljava/lang/Object; -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;->newInstance(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ColorStateList$ColorStateListFactory;->newInstance(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Ljava/lang/Object; -HSPLandroid/content/res/ColorStateList;-><init>()V -HSPLandroid/content/res/ColorStateList;-><init>(Landroid/content/res/ColorStateList;)V -HSPLandroid/content/res/ColorStateList;-><init>([[I[I)V -HSPLandroid/content/res/ColorStateList;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/content/res/ColorStateList;->canApplyTheme()Z -HSPLandroid/content/res/ColorStateList;->createFromXmlInner(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ColorStateList;->getChangingConfigurations()I -HSPLandroid/content/res/ColorStateList;->getColorForState([II)I -HSPLandroid/content/res/ColorStateList;->getConstantState()Landroid/content/res/ConstantState; -HSPLandroid/content/res/ColorStateList;->getDefaultColor()I -HSPLandroid/content/res/ColorStateList;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/AttributeSet;Landroid/content/res/XmlBlock$Parser;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/ColorStateList;->isStateful()Z -HSPLandroid/content/res/ColorStateList;->modulateColor(IFF)I -HSPLandroid/content/res/ColorStateList;->obtainForTheme(Landroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ColorStateList;->obtainForTheme(Landroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/ColorStateList;->onColorsChanged()V -HSPLandroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/content/res/ColorStateList;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/res/CompatibilityInfo$2;->createFromParcel(Landroid/os/Parcel;)Landroid/content/res/CompatibilityInfo; -HSPLandroid/content/res/CompatibilityInfo$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/res/CompatibilityInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/res/CompatibilityInfo;-><init>(Landroid/os/Parcel;Landroid/content/res/CompatibilityInfo-IA;)V -HSPLandroid/content/res/CompatibilityInfo;->applyDisplayMetricsIfNeeded(Landroid/util/DisplayMetrics;Z)V -HSPLandroid/content/res/CompatibilityInfo;->applyOverrideScaleIfNeeded(Landroid/content/res/Configuration;)V -HSPLandroid/content/res/CompatibilityInfo;->applyOverrideScaleIfNeeded(Landroid/util/MergedConfiguration;)V -HSPLandroid/content/res/CompatibilityInfo;->applyToConfiguration(ILandroid/content/res/Configuration;)V -HSPLandroid/content/res/CompatibilityInfo;->applyToDisplayMetrics(Landroid/util/DisplayMetrics;)V -HSPLandroid/content/res/CompatibilityInfo;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/res/CompatibilityInfo;->getOverrideInvertedScale()F -HSPLandroid/content/res/CompatibilityInfo;->getTranslator()Landroid/content/res/CompatibilityInfo$Translator; -HSPLandroid/content/res/CompatibilityInfo;->hasOverrideScale()Z -HSPLandroid/content/res/CompatibilityInfo;->hasOverrideScaling()Z -HSPLandroid/content/res/CompatibilityInfo;->hashCode()I -HSPLandroid/content/res/CompatibilityInfo;->isScalingRequired()Z -HSPLandroid/content/res/CompatibilityInfo;->needsCompatResources()Z -HSPLandroid/content/res/CompatibilityInfo;->setOverrideInvertedScale(F)V -HSPLandroid/content/res/CompatibilityInfo;->supportsScreen()Z -HSPLandroid/content/res/ComplexColor;-><init>()V -HSPLandroid/content/res/ComplexColor;->getChangingConfigurations()I -HSPLandroid/content/res/ComplexColor;->setBaseChangingConfigurations(I)V -HSPLandroid/content/res/Configuration$1;->createFromParcel(Landroid/os/Parcel;)Landroid/content/res/Configuration; -HSPLandroid/content/res/Configuration$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/content/res/Configuration;-><init>()V -HSPLandroid/content/res/Configuration;-><init>(Landroid/content/res/Configuration;)V -HSPLandroid/content/res/Configuration;-><init>(Landroid/os/Parcel;)V -HSPLandroid/content/res/Configuration;-><init>(Landroid/os/Parcel;Landroid/content/res/Configuration-IA;)V -HSPLandroid/content/res/Configuration;->compareTo(Landroid/content/res/Configuration;)I -HSPLandroid/content/res/Configuration;->diff(Landroid/content/res/Configuration;)I -HSPLandroid/content/res/Configuration;->diff(Landroid/content/res/Configuration;ZZ)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/os/LocaleList;Landroid/os/LocaleList; -HSPLandroid/content/res/Configuration;->diffPublicOnly(Landroid/content/res/Configuration;)I -HSPLandroid/content/res/Configuration;->equals(Landroid/content/res/Configuration;)Z -HSPLandroid/content/res/Configuration;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/res/Configuration;->fixUpLocaleList()V+]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Object;Ljava/util/Locale; -HSPLandroid/content/res/Configuration;->generateDelta(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Landroid/content/res/Configuration; -HSPLandroid/content/res/Configuration;->getGrammaticalGender()I -HSPLandroid/content/res/Configuration;->getLayoutDirection()I -HSPLandroid/content/res/Configuration;->getLocales()Landroid/os/LocaleList; -HSPLandroid/content/res/Configuration;->getScreenLayoutNoDirection(I)I -HSPLandroid/content/res/Configuration;->hashCode()I+]Landroid/os/LocaleList;Landroid/os/LocaleList; -HSPLandroid/content/res/Configuration;->isLayoutSizeAtLeast(I)Z -HSPLandroid/content/res/Configuration;->isOtherSeqNewer(Landroid/content/res/Configuration;)Z -HSPLandroid/content/res/Configuration;->isScreenRound()Z -HSPLandroid/content/res/Configuration;->isScreenWideColorGamut()Z -HSPLandroid/content/res/Configuration;->needNewResources(II)Z -HSPLandroid/content/res/Configuration;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/content/res/Configuration;->readFromProto(Landroid/util/proto/ProtoInputStream;J)V -HSPLandroid/content/res/Configuration;->reduceScreenLayout(III)I -HSPLandroid/content/res/Configuration;->resetScreenLayout(I)I -HSPLandroid/content/res/Configuration;->setLayoutDirection(Ljava/util/Locale;)V -HSPLandroid/content/res/Configuration;->setLocale(Ljava/util/Locale;)V -HSPLandroid/content/res/Configuration;->setLocales(Landroid/os/LocaleList;)V -HSPLandroid/content/res/Configuration;->setTo(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/content/res/Configuration;->setTo(Landroid/content/res/Configuration;II)V -HSPLandroid/content/res/Configuration;->setToDefaults()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; -HSPLandroid/content/res/Configuration;->toString()Ljava/lang/String; -HSPLandroid/content/res/Configuration;->unset()V -HSPLandroid/content/res/Configuration;->updateFrom(Landroid/content/res/Configuration;)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/content/res/Configuration;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/content/res/ConfigurationBoundResourceCache;-><init>()V -HSPLandroid/content/res/ConfigurationBoundResourceCache;->get(JLandroid/content/res/Resources$Theme;)Ljava/lang/Object; -HSPLandroid/content/res/ConfigurationBoundResourceCache;->getGeneration()I -HSPLandroid/content/res/ConfigurationBoundResourceCache;->getInstance(JLandroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Ljava/lang/Object; -HSPLandroid/content/res/ConfigurationBoundResourceCache;->onConfigurationChange(I)V -HSPLandroid/content/res/ConfigurationBoundResourceCache;->put(JLandroid/content/res/Resources$Theme;Ljava/lang/Object;I)V -HSPLandroid/content/res/ConfigurationBoundResourceCache;->put(JLandroid/content/res/Resources$Theme;Ljava/lang/Object;IZ)V -HSPLandroid/content/res/ConfigurationBoundResourceCache;->shouldInvalidateEntry(Landroid/content/res/ConstantState;I)Z -HSPLandroid/content/res/ConfigurationBoundResourceCache;->shouldInvalidateEntry(Ljava/lang/Object;I)Z -HSPLandroid/content/res/ConstantState;-><init>()V -HSPLandroid/content/res/ConstantState;->newInstance(Landroid/content/res/Resources;)Ljava/lang/Object; -HSPLandroid/content/res/ConstantState;->newInstance(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Ljava/lang/Object; -HSPLandroid/content/res/DrawableCache;-><init>()V -HSPLandroid/content/res/DrawableCache;->getInstance(JLandroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/DrawableCache;->shouldInvalidateEntry(Landroid/graphics/drawable/Drawable$ConstantState;I)Z -HSPLandroid/content/res/DrawableCache;->shouldInvalidateEntry(Ljava/lang/Object;I)Z -HSPLandroid/content/res/FeatureFlagsImpl;->defaultLocale()Z -HSPLandroid/content/res/Flags;->defaultLocale()Z -HSPLandroid/content/res/FontResourcesParser;->parse(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry; -HSPLandroid/content/res/FontResourcesParser;->readFamilies(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry;+]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/FontResourcesParser;->readFamily(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/Resources;)Landroid/content/res/FontResourcesParser$FamilyResourceEntry;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/util/List;Ljava/util/ArrayList;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/FontScaleConverterFactory;->forScale(F)Landroid/content/res/FontScaleConverter; -HSPLandroid/content/res/FontScaleConverterFactory;->isNonLinearFontScalingActive(F)Z -HSPLandroid/content/res/GradientColor;-><init>()V -HSPLandroid/content/res/GradientColor;->canApplyTheme()Z -HSPLandroid/content/res/GradientColor;->createFromXmlInner(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)Landroid/content/res/GradientColor; -HSPLandroid/content/res/GradientColor;->getConstantState()Landroid/content/res/ConstantState; -HSPLandroid/content/res/GradientColor;->getDefaultColor()I -HSPLandroid/content/res/GradientColor;->getShader()Landroid/graphics/Shader; -HSPLandroid/content/res/GradientColor;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/content/res/GradientColor;->onColorsChange()V -HSPLandroid/content/res/GradientColor;->updateRootElementState(Landroid/content/res/TypedArray;)V -HSPLandroid/content/res/ResourceId;->isValid(I)Z -HSPLandroid/content/res/Resources$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z -HSPLandroid/content/res/Resources$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V -HSPLandroid/content/res/Resources$NotFoundException;-><init>(Ljava/lang/String;)V -HSPLandroid/content/res/Resources$Theme;-><init>(Landroid/content/res/Resources;)V -HSPLandroid/content/res/Resources$Theme;-><init>(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme-IA;)V -HSPLandroid/content/res/Resources$Theme;->applyStyle(IZ)V -HSPLandroid/content/res/Resources$Theme;->equals(Ljava/lang/Object;)Z+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Ljava/lang/Object;Landroid/content/res/Resources$Theme; -HSPLandroid/content/res/Resources$Theme;->getAppliedStyleResId()I -HSPLandroid/content/res/Resources$Theme;->getChangingConfigurations()I -HSPLandroid/content/res/Resources$Theme;->getKey()Landroid/content/res/Resources$ThemeKey;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/Resources$Theme;->getParentThemeIdentifier(I)I -HSPLandroid/content/res/Resources$Theme;->getResources()Landroid/content/res/Resources; -HSPLandroid/content/res/Resources$Theme;->getTheme()[Ljava/lang/String; -HSPLandroid/content/res/Resources$Theme;->hashCode()I -HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(I[I)Landroid/content/res/TypedArray;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/Resources$Theme;->obtainStyledAttributes([I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/Resources$Theme;->rebase()V -HSPLandroid/content/res/Resources$Theme;->rebase(Landroid/content/res/ResourcesImpl;)V -HSPLandroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z+]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/Resources$Theme;->resolveAttributes([I[I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/Resources$Theme;->setImpl(Landroid/content/res/ResourcesImpl$ThemeImpl;)V -HSPLandroid/content/res/Resources$Theme;->setTo(Landroid/content/res/Resources$Theme;)V -HSPLandroid/content/res/Resources$Theme;->toString()Ljava/lang/String;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/content/res/Resources$ThemeKey;-><init>()V -HSPLandroid/content/res/Resources$ThemeKey;->append(IZ)V -HSPLandroid/content/res/Resources$ThemeKey;->clone()Landroid/content/res/Resources$ThemeKey; -HSPLandroid/content/res/Resources$ThemeKey;->equals(Ljava/lang/Object;)Z+]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Ljava/lang/Object;Landroid/content/res/Resources$ThemeKey; -HSPLandroid/content/res/Resources$ThemeKey;->hashCode()I -HSPLandroid/content/res/Resources$ThemeKey;->moveToLast(I)V -HSPLandroid/content/res/Resources$ThemeKey;->setTo(Landroid/content/res/Resources$ThemeKey;)V+][I[I][Z[Z -HSPLandroid/content/res/Resources;-><init>(Landroid/content/res/AssetManager;Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;)V -HSPLandroid/content/res/Resources;-><init>(Ljava/lang/ClassLoader;)V+]Ljava/util/Set;Ljava/util/Collections$SynchronizedSet; -HSPLandroid/content/res/Resources;->addLoaders([Landroid/content/res/loader/ResourcesLoader;)V -HSPLandroid/content/res/Resources;->checkCallbacksRegistered()V -HSPLandroid/content/res/Resources;->cleanupThemeReferences()V -HSPLandroid/content/res/Resources;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V -HSPLandroid/content/res/Resources;->dumpHistory(Ljava/io/PrintWriter;Ljava/lang/String;)V -HSPLandroid/content/res/Resources;->finishPreloading()V -HSPLandroid/content/res/Resources;->getAnimation(I)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/Resources;->getAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/Resources;->getAssets()Landroid/content/res/AssetManager;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getAttributeSetSourceResId(Landroid/util/AttributeSet;)I -HSPLandroid/content/res/Resources;->getBoolean(I)Z -HSPLandroid/content/res/Resources;->getClassLoader()Ljava/lang/ClassLoader; -HSPLandroid/content/res/Resources;->getColor(I)I -HSPLandroid/content/res/Resources;->getColor(ILandroid/content/res/Resources$Theme;)I+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getColorStateList(I)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/Resources;->getColorStateList(ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/Resources;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; -HSPLandroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getDimension(I)F+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getDimensionPixelOffset(I)I -HSPLandroid/content/res/Resources;->getDimensionPixelSize(I)I -HSPLandroid/content/res/Resources;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; -HSPLandroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->getDrawable(ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->getDrawableForDensity(II)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->getDrawableForDensity(IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getDrawableInflater()Landroid/graphics/drawable/DrawableInflater; -HSPLandroid/content/res/Resources;->getFloat(I)F -HSPLandroid/content/res/Resources;->getFont(Landroid/util/TypedValue;I)Landroid/graphics/Typeface; -HSPLandroid/content/res/Resources;->getFraction(III)F -HSPLandroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/content/res/Resources;->getImpl()Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getIntArray(I)[I -HSPLandroid/content/res/Resources;->getInteger(I)I -HSPLandroid/content/res/Resources;->getLayout(I)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/Resources;->getLoaders()Ljava/util/List; -HSPLandroid/content/res/Resources;->getQuantityString(II)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getQuantityString(II[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getQuantityText(II)Ljava/lang/CharSequence; -HSPLandroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getResourceName(I)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getResourcePackageName(I)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getResourceTypeName(I)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getSizeConfigurations()[Landroid/content/res/Configuration; -HSPLandroid/content/res/Resources;->getStateListAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/Resources;->getString(I)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getString(I[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getSystem()Landroid/content/res/Resources; -HSPLandroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence; -HSPLandroid/content/res/Resources;->getTextArray(I)[Ljava/lang/CharSequence; -HSPLandroid/content/res/Resources;->getValue(ILandroid/util/TypedValue;Z)V+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->getValueForDensity(IILandroid/util/TypedValue;Z)V -HSPLandroid/content/res/Resources;->getXml(I)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/Resources;->hasOverrideDisplayAdjustments()Z -HSPLandroid/content/res/Resources;->loadColorStateList(Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->loadComplexColor(Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/Resources;->loadDrawable(Landroid/util/TypedValue;IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/Resources;->loadXmlResourceParser(ILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/content/res/Resources;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->newTheme()Landroid/content/res/Resources$Theme;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/content/res/Resources;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/Resources;->obtainAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->obtainTempTypedValue()Landroid/util/TypedValue; -HSPLandroid/content/res/Resources;->obtainTypedArray(I)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl; -HSPLandroid/content/res/Resources;->openRawResource(I)Ljava/io/InputStream; -HSPLandroid/content/res/Resources;->openRawResource(ILandroid/util/TypedValue;)Ljava/io/InputStream; -HSPLandroid/content/res/Resources;->openRawResourceFd(I)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/Resources;->parseBundleExtra(Ljava/lang/String;Landroid/util/AttributeSet;Landroid/os/Bundle;)V -HSPLandroid/content/res/Resources;->preloadColorStateLists(Landroid/content/res/Resources;Landroid/content/res/TypedArray;)I -HSPLandroid/content/res/Resources;->preloadDrawables(Landroid/content/res/Resources;Landroid/content/res/TypedArray;)I -HSPLandroid/content/res/Resources;->preloadFonts(I)V -HSPLandroid/content/res/Resources;->preloadResources()V -HSPLandroid/content/res/Resources;->releaseTempTypedValue(Landroid/util/TypedValue;)V -HSPLandroid/content/res/Resources;->resourceHasPackage(I)Z -HSPLandroid/content/res/Resources;->selectDefaultTheme(II)I -HSPLandroid/content/res/Resources;->selectSystemTheme(IIIIII)I -HSPLandroid/content/res/Resources;->setCallbacks(Landroid/content/res/Resources$UpdateCallbacks;)V -HSPLandroid/content/res/Resources;->setImpl(Landroid/content/res/ResourcesImpl;)V -HSPLandroid/content/res/Resources;->startPreloading()V -HSPLandroid/content/res/Resources;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;)V -HSPLandroid/content/res/Resources;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V -HSPLandroid/content/res/Resources;->updateSystemConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda0;-><init>()V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda0;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda1;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;->get()Ljava/lang/Object; -HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>()V -HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>(Landroid/content/res/ResourcesImpl$LookupStack-IA;)V -HSPLandroid/content/res/ResourcesImpl$LookupStack;->contains(I)Z -HSPLandroid/content/res/ResourcesImpl$LookupStack;->pop()V -HSPLandroid/content/res/ResourcesImpl$LookupStack;->push(I)V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;-><init>(Landroid/content/res/ResourcesImpl;)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->applyStyle(IZ)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->finalize()V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getAppliedStyleResId()I -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getChangingConfigurations()I -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getKey()Landroid/content/res/Resources$ThemeKey; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getParentThemeIdentifier(I)I -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->getTheme()[Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->obtainStyledAttributes(Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->rebase()V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->rebase(Landroid/content/res/AssetManager;)V -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->resolveAttribute(ILandroid/util/TypedValue;Z)Z+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->resolveAttributes(Landroid/content/res/Resources$Theme;[I[I)Landroid/content/res/TypedArray; -HSPLandroid/content/res/ResourcesImpl$ThemeImpl;->setTo(Landroid/content/res/ResourcesImpl$ThemeImpl;)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Landroid/content/res/ResourcesImpl$ThemeImpl;Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/ResourcesImpl;->-$$Nest$sfgetsThemeRegistry()Llibcore/util/NativeAllocationRegistry; -HSPLandroid/content/res/ResourcesImpl;-><init>(Landroid/content/res/AssetManager;Landroid/util/DisplayMetrics;Landroid/content/res/Configuration;Landroid/view/DisplayAdjustments;)V+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments; -HSPLandroid/content/res/ResourcesImpl;->adjustLanguageTag(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->attrForQuantityCode(Ljava/lang/String;)I -HSPLandroid/content/res/ResourcesImpl;->cacheDrawable(Landroid/util/TypedValue;ZLandroid/content/res/DrawableCache;Landroid/content/res/Resources$Theme;ZJLandroid/graphics/drawable/Drawable;I)V -HSPLandroid/content/res/ResourcesImpl;->calcConfigChanges(Landroid/content/res/Configuration;)I+]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments; -HSPLandroid/content/res/ResourcesImpl;->decodeImageDrawable(Landroid/content/res/AssetManager$AssetInputStream;Landroid/content/res/Resources;Landroid/util/TypedValue;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/ResourcesImpl;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V -HSPLandroid/content/res/ResourcesImpl;->finishPreloading()V -HSPLandroid/content/res/ResourcesImpl;->flushLayoutCache()V -HSPLandroid/content/res/ResourcesImpl;->getAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/ResourcesImpl;->getAssets()Landroid/content/res/AssetManager; -HSPLandroid/content/res/ResourcesImpl;->getAttributeSetSourceResId(Landroid/util/AttributeSet;)I -HSPLandroid/content/res/ResourcesImpl;->getColorStateListFromInt(Landroid/util/TypedValue;J)Landroid/content/res/ColorStateList;+]Landroid/content/res/ConstantState;Landroid/content/res/ColorStateList$ColorStateListFactory;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/content/res/ResourcesImpl;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; -HSPLandroid/content/res/ResourcesImpl;->getConfiguration()Landroid/content/res/Configuration; -HSPLandroid/content/res/ResourcesImpl;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; -HSPLandroid/content/res/ResourcesImpl;->getDisplayMetrics()Landroid/util/DisplayMetrics; -HSPLandroid/content/res/ResourcesImpl;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/content/res/ResourcesImpl;->getPluralRule()Landroid/icu/text/PluralRules; -HSPLandroid/content/res/ResourcesImpl;->getQuantityText(II)Ljava/lang/CharSequence; -HSPLandroid/content/res/ResourcesImpl;->getResourceEntryName(I)Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->getResourceName(I)Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->getResourcePackageName(I)Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->getResourceTypeName(I)Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->getSizeConfigurations()[Landroid/content/res/Configuration; -HSPLandroid/content/res/ResourcesImpl;->getStateListAnimatorCache()Landroid/content/res/ConfigurationBoundResourceCache; -HSPLandroid/content/res/ResourcesImpl;->getValue(ILandroid/util/TypedValue;Z)V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager; -HSPLandroid/content/res/ResourcesImpl;->getValueForDensity(IILandroid/util/TypedValue;Z)V -HSPLandroid/content/res/ResourcesImpl;->isIntLike(Ljava/lang/String;)Z -HSPLandroid/content/res/ResourcesImpl;->lambda$decodeImageDrawable$1(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/content/res/ResourcesImpl;->lambda$new$0()Landroid/content/res/ResourcesImpl$LookupStack; -HSPLandroid/content/res/ResourcesImpl;->loadColorStateList(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList; -HSPLandroid/content/res/ResourcesImpl;->loadComplexColor(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/ResourcesImpl;->loadComplexColorForCookie(Landroid/content/res/Resources;Landroid/util/TypedValue;ILandroid/content/res/Resources$Theme;)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/ResourcesImpl;->loadComplexColorFromName(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/TypedValue;I)Landroid/content/res/ComplexColor;+]Landroid/content/res/ComplexColor;Landroid/content/res/ColorStateList;,Landroid/content/res/GradientColor;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/ConstantState;Landroid/content/res/ColorStateList$ColorStateListFactory;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/content/res/ResourcesImpl;->loadDrawable(Landroid/content/res/Resources;Landroid/util/TypedValue;IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/graphics/drawable/Drawable$ConstantState;megamorphic_types]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/content/res/ResourcesImpl;->loadDrawableForCookie(Landroid/content/res/Resources;Landroid/util/TypedValue;II)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/ResourcesImpl$LookupStack;Landroid/content/res/ResourcesImpl$LookupStack;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/content/res/ResourcesImpl;->loadFont(Landroid/content/res/Resources;Landroid/util/TypedValue;I)Landroid/graphics/Typeface;+]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->loadXmlDrawable(Landroid/content/res/Resources;Landroid/util/TypedValue;IILjava/lang/String;)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/ResourcesImpl;->loadXmlResourceParser(Ljava/lang/String;IILjava/lang/String;)Landroid/content/res/XmlResourceParser;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/XmlBlock;Landroid/content/res/XmlBlock;]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/content/res/ResourcesImpl;->newThemeImpl()Landroid/content/res/ResourcesImpl$ThemeImpl; -HSPLandroid/content/res/ResourcesImpl;->openRawResource(ILandroid/util/TypedValue;)Ljava/io/InputStream; -HSPLandroid/content/res/ResourcesImpl;->openRawResourceFd(ILandroid/util/TypedValue;)Landroid/content/res/AssetFileDescriptor; -HSPLandroid/content/res/ResourcesImpl;->startPreloading()V -HSPLandroid/content/res/ResourcesImpl;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V+]Landroid/app/ResourcesManager;Landroid/app/ResourcesManager;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/content/res/ResourcesImpl;->updateConfigurationImpl(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Z)V+]Landroid/app/ResourcesManager;Landroid/app/ResourcesManager;]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/ConfigurationBoundResourceCache;Landroid/content/res/ConfigurationBoundResourceCache;]Landroid/content/res/DrawableCache;Landroid/content/res/DrawableCache;]Landroid/content/res/ResourcesImpl;Landroid/content/res/ResourcesImpl;]Landroid/os/LocaleList;Landroid/os/LocaleList;]Landroid/util/DisplayMetrics;Landroid/util/DisplayMetrics;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Ljava/lang/Object;Ljava/util/Locale;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/content/res/ResourcesImpl;->verifyPreloadConfig(IIILjava/lang/String;)Z -HSPLandroid/content/res/ResourcesKey;-><init>(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;[Landroid/content/res/loader/ResourcesLoader;)V -HSPLandroid/content/res/ResourcesKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/content/res/ResourcesKey;->hasOverrideConfiguration()Z -HSPLandroid/content/res/ResourcesKey;->hashCode()I -HSPLandroid/content/res/StringBlock;-><init>(JZ)V -HSPLandroid/content/res/StringBlock;->applyStyles(Ljava/lang/String;[ILandroid/content/res/StringBlock$StyleIDs;)Ljava/lang/CharSequence; -HSPLandroid/content/res/StringBlock;->close()V -HSPLandroid/content/res/StringBlock;->finalize()V -HSPLandroid/content/res/StringBlock;->get(I)Ljava/lang/CharSequence; -HSPLandroid/content/res/StringBlock;->getSequence(I)Ljava/lang/CharSequence;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/content/res/ThemedResourceCache;-><init>()V -HSPLandroid/content/res/ThemedResourceCache;->get(JLandroid/content/res/Resources$Theme;)Ljava/lang/Object;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/content/res/ThemedResourceCache;->getGeneration()I -HSPLandroid/content/res/ThemedResourceCache;->getThemedLocked(Landroid/content/res/Resources$Theme;Z)Landroid/util/LongSparseArray;+]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources$ThemeKey;Landroid/content/res/Resources$ThemeKey;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/content/res/ThemedResourceCache;->getUnthemedLocked(Z)Landroid/util/LongSparseArray; -HSPLandroid/content/res/ThemedResourceCache;->onConfigurationChange(I)V -HSPLandroid/content/res/ThemedResourceCache;->pruneEntriesLocked(Landroid/util/LongSparseArray;I)Z -HSPLandroid/content/res/ThemedResourceCache;->pruneLocked(I)Z -HSPLandroid/content/res/ThemedResourceCache;->put(JLandroid/content/res/Resources$Theme;Ljava/lang/Object;I)V -HSPLandroid/content/res/ThemedResourceCache;->put(JLandroid/content/res/Resources$Theme;Ljava/lang/Object;IZ)V -HSPLandroid/content/res/TypedArray;-><init>(Landroid/content/res/Resources;)V -HSPLandroid/content/res/TypedArray;->extractThemeAttrs()[I -HSPLandroid/content/res/TypedArray;->extractThemeAttrs([I)[I -HSPLandroid/content/res/TypedArray;->getBoolean(IZ)Z -HSPLandroid/content/res/TypedArray;->getChangingConfigurations()I+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; -HSPLandroid/content/res/TypedArray;->getColor(II)I+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList;+]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getComplexColor(I)Landroid/content/res/ComplexColor; -HSPLandroid/content/res/TypedArray;->getDimension(IF)F -HSPLandroid/content/res/TypedArray;->getDimensionPixelOffset(II)I -HSPLandroid/content/res/TypedArray;->getDimensionPixelSize(II)I -HSPLandroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/content/res/TypedArray;->getDrawableForDensity(II)Landroid/graphics/drawable/Drawable;+]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getFloat(IF)F -HSPLandroid/content/res/TypedArray;->getFont(I)Landroid/graphics/Typeface;+]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getFraction(IIIF)F -HSPLandroid/content/res/TypedArray;->getIndex(I)I -HSPLandroid/content/res/TypedArray;->getIndexCount()I -HSPLandroid/content/res/TypedArray;->getInt(II)I -HSPLandroid/content/res/TypedArray;->getInteger(II)I -HSPLandroid/content/res/TypedArray;->getLayoutDimension(II)I -HSPLandroid/content/res/TypedArray;->getLayoutDimension(ILjava/lang/String;)I+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/content/res/TypedArray;->getNonConfigurationString(II)Ljava/lang/String; -HSPLandroid/content/res/TypedArray;->getNonResourceString(I)Ljava/lang/String; -HSPLandroid/content/res/TypedArray;->getPositionDescription()Ljava/lang/String; -HSPLandroid/content/res/TypedArray;->getResourceId(II)I -HSPLandroid/content/res/TypedArray;->getResources()Landroid/content/res/Resources; -HSPLandroid/content/res/TypedArray;->getString(I)Ljava/lang/String;+]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/content/res/TypedArray;->getText(I)Ljava/lang/CharSequence; -HSPLandroid/content/res/TypedArray;->getTextArray(I)[Ljava/lang/CharSequence; -HSPLandroid/content/res/TypedArray;->getType(I)I -HSPLandroid/content/res/TypedArray;->getValue(ILandroid/util/TypedValue;)Z -HSPLandroid/content/res/TypedArray;->getValueAt(ILandroid/util/TypedValue;)Z -HSPLandroid/content/res/TypedArray;->hasValue(I)Z -HSPLandroid/content/res/TypedArray;->hasValueOrEmpty(I)Z -HSPLandroid/content/res/TypedArray;->length()I -HSPLandroid/content/res/TypedArray;->loadStringValueAt(I)Ljava/lang/CharSequence;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/TypedArray;->obtain(Landroid/content/res/Resources;I)Landroid/content/res/TypedArray;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue; -HSPLandroid/content/res/TypedArray;->recycle()V+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/content/res/TypedArray;->resize(I)V+]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/content/res/XmlBlock$Parser;-><init>(Landroid/content/res/XmlBlock;JLandroid/content/res/XmlBlock;)V -HSPLandroid/content/res/XmlBlock$Parser;->close()V -HSPLandroid/content/res/XmlBlock$Parser;->finalize()V -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeBooleanValue(IZ)Z -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeBooleanValue(Ljava/lang/String;Ljava/lang/String;Z)Z -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeCount()I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeIntValue(II)I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeIntValue(Ljava/lang/String;Ljava/lang/String;I)I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeName(I)Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeNameResource(I)I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeResourceValue(II)I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeResourceValue(Ljava/lang/String;Ljava/lang/String;I)I -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeValue(I)Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getClassAttribute()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getDepth()I -HSPLandroid/content/res/XmlBlock$Parser;->getEventType()I -HSPLandroid/content/res/XmlBlock$Parser;->getLineNumber()I -HSPLandroid/content/res/XmlBlock$Parser;->getName()Ljava/lang/String;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; -HSPLandroid/content/res/XmlBlock$Parser;->getPooledString(I)Ljava/lang/CharSequence;+]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock; -HSPLandroid/content/res/XmlBlock$Parser;->getPositionDescription()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getSequenceString(Ljava/lang/CharSequence;)Ljava/lang/String;+]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->getSourceResId()I -HSPLandroid/content/res/XmlBlock$Parser;->getText()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->isEmptyElementTag()Z -HSPLandroid/content/res/XmlBlock$Parser;->next()I+]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/content/res/XmlBlock$Parser;->nextTag()I -HSPLandroid/content/res/XmlBlock$Parser;->nextText()Ljava/lang/String; -HSPLandroid/content/res/XmlBlock$Parser;->require(ILjava/lang/String;Ljava/lang/String;)V+]Landroid/content/res/XmlBlock$Parser;Landroid/content/res/XmlBlock$Parser;]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/content/res/XmlBlock;->-$$Nest$fgetmOpenCount(Landroid/content/res/XmlBlock;)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$fputmOpenCount(Landroid/content/res/XmlBlock;I)V -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeCount(J)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeData(JI)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeDataType(JI)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeIndex(JLjava/lang/String;Ljava/lang/String;)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeName(JI)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetAttributeStringValue(JI)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetClassAttribute(J)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetLineNumber(J)I -HSPLandroid/content/res/XmlBlock;->-$$Nest$smnativeGetText(J)I -HSPLandroid/content/res/XmlBlock;-><init>(Landroid/content/res/AssetManager;J)V -HSPLandroid/content/res/XmlBlock;->close()V -HSPLandroid/content/res/XmlBlock;->decOpenCountLocked()V+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/content/res/StringBlock;Landroid/content/res/StringBlock;]Ljava/lang/Object;Landroid/content/res/XmlBlock; -HSPLandroid/content/res/XmlBlock;->finalize()V -HSPLandroid/content/res/XmlBlock;->newParser()Landroid/content/res/XmlResourceParser; -HSPLandroid/content/res/XmlBlock;->newParser(I)Landroid/content/res/XmlResourceParser; -HSPLandroid/content/type/DefaultMimeMapFactory$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/content/type/DefaultMimeMapFactory;->create()Llibcore/content/type/MimeMap; -HSPLandroid/content/type/DefaultMimeMapFactory;->lambda$create$0(Ljava/lang/Class;Ljava/lang/String;)Ljava/io/InputStream; -HSPLandroid/content/type/DefaultMimeMapFactory;->parseTypes(Llibcore/content/type/MimeMap$Builder;Ljava/util/function/Function;Ljava/lang/String;)V -HSPLandroid/database/AbstractCursor$SelfContentObserver;-><init>(Landroid/database/AbstractCursor;)V -HSPLandroid/database/AbstractCursor$SelfContentObserver;->onChange(Z)V -HSPLandroid/database/AbstractCursor;-><init>()V -HSPLandroid/database/AbstractCursor;->checkPosition()V+]Landroid/database/AbstractCursor;Landroid/database/BulkCursorToCursorAdaptor;,Landroid/database/sqlite/SQLiteCursor; -HSPLandroid/database/AbstractCursor;->close()V -HSPLandroid/database/AbstractCursor;->fillWindow(ILandroid/database/CursorWindow;)V -HSPLandroid/database/AbstractCursor;->finalize()V+]Ldalvik/system/CloseGuard;Ldalvik/system/CloseGuard; -HSPLandroid/database/AbstractCursor;->getColumnCount()I -HSPLandroid/database/AbstractCursor;->getColumnIndex(Ljava/lang/String;)I -HSPLandroid/database/AbstractCursor;->getColumnIndexOrThrow(Ljava/lang/String;)I -HSPLandroid/database/AbstractCursor;->getColumnName(I)Ljava/lang/String; -HSPLandroid/database/AbstractCursor;->getExtras()Landroid/os/Bundle; -HSPLandroid/database/AbstractCursor;->getPosition()I -HSPLandroid/database/AbstractCursor;->getWantsAllOnMoveCalls()Z -HSPLandroid/database/AbstractCursor;->getWindow()Landroid/database/CursorWindow; -HSPLandroid/database/AbstractCursor;->isAfterLast()Z -HSPLandroid/database/AbstractCursor;->isClosed()Z -HSPLandroid/database/AbstractCursor;->isLast()Z -HSPLandroid/database/AbstractCursor;->move(I)Z -HSPLandroid/database/AbstractCursor;->moveToFirst()Z -HSPLandroid/database/AbstractCursor;->moveToLast()Z -HSPLandroid/database/AbstractCursor;->moveToNext()Z -HSPLandroid/database/AbstractCursor;->moveToPosition(I)Z -HSPLandroid/database/AbstractCursor;->onChange(Z)V -HSPLandroid/database/AbstractCursor;->onDeactivateOrClose()V -HSPLandroid/database/AbstractCursor;->onMove(II)Z -HSPLandroid/database/AbstractCursor;->registerContentObserver(Landroid/database/ContentObserver;)V -HSPLandroid/database/AbstractCursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V -HSPLandroid/database/AbstractCursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V -HSPLandroid/database/AbstractCursor;->setNotificationUris(Landroid/content/ContentResolver;Ljava/util/List;)V -HSPLandroid/database/AbstractCursor;->setNotificationUris(Landroid/content/ContentResolver;Ljava/util/List;IZ)V -HSPLandroid/database/AbstractCursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V -HSPLandroid/database/AbstractWindowedCursor;-><init>()V -HSPLandroid/database/AbstractWindowedCursor;->checkPosition()V -HSPLandroid/database/AbstractWindowedCursor;->clearOrCreateWindow(Ljava/lang/String;)V -HSPLandroid/database/AbstractWindowedCursor;->closeWindow()V -HSPLandroid/database/AbstractWindowedCursor;->getBlob(I)[B -HSPLandroid/database/AbstractWindowedCursor;->getDouble(I)D -HSPLandroid/database/AbstractWindowedCursor;->getFloat(I)F -HSPLandroid/database/AbstractWindowedCursor;->getInt(I)I+]Landroid/database/AbstractWindowedCursor;Landroid/database/BulkCursorToCursorAdaptor;,Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->getLong(I)J+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->getString(I)Ljava/lang/String;+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->getType(I)I -HSPLandroid/database/AbstractWindowedCursor;->getWindow()Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->hasWindow()Z -HSPLandroid/database/AbstractWindowedCursor;->isNull(I)Z+]Landroid/database/AbstractWindowedCursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/AbstractWindowedCursor;->onDeactivateOrClose()V -HSPLandroid/database/AbstractWindowedCursor;->setWindow(Landroid/database/CursorWindow;)V -HSPLandroid/database/BulkCursorDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Landroid/database/BulkCursorDescriptor; -HSPLandroid/database/BulkCursorDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/database/BulkCursorDescriptor;-><init>()V -HSPLandroid/database/BulkCursorDescriptor;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/database/BulkCursorDescriptor;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/database/BulkCursorNative;-><init>()V -HSPLandroid/database/BulkCursorNative;->asBinder()Landroid/os/IBinder; -HSPLandroid/database/BulkCursorNative;->asInterface(Landroid/os/IBinder;)Landroid/database/IBulkCursor; -HSPLandroid/database/BulkCursorNative;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/database/BulkCursorProxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/database/BulkCursorProxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/database/BulkCursorProxy;->close()V -HSPLandroid/database/BulkCursorProxy;->getWindow(I)Landroid/database/CursorWindow; -HSPLandroid/database/BulkCursorToCursorAdaptor;-><init>()V -HSPLandroid/database/BulkCursorToCursorAdaptor;->close()V -HSPLandroid/database/BulkCursorToCursorAdaptor;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/BulkCursorToCursorAdaptor;->getCount()I -HSPLandroid/database/BulkCursorToCursorAdaptor;->getObserver()Landroid/database/IContentObserver; -HSPLandroid/database/BulkCursorToCursorAdaptor;->initialize(Landroid/database/BulkCursorDescriptor;)V -HSPLandroid/database/BulkCursorToCursorAdaptor;->onMove(II)Z -HSPLandroid/database/BulkCursorToCursorAdaptor;->throwIfCursorIsClosed()V -HSPLandroid/database/ContentObservable;-><init>()V -HSPLandroid/database/ContentObservable;->dispatchChange(ZLandroid/net/Uri;)V -HSPLandroid/database/ContentObservable;->registerObserver(Landroid/database/ContentObserver;)V -HSPLandroid/database/ContentObserver$$ExternalSyntheticLambda0;-><init>(Landroid/database/ContentObserver;ZLjava/util/Collection;II)V -HSPLandroid/database/ContentObserver$$ExternalSyntheticLambda0;->run()V -HSPLandroid/database/ContentObserver$Transport;-><init>(Landroid/database/ContentObserver;)V -HSPLandroid/database/ContentObserver$Transport;->onChangeEtc(Z[Landroid/net/Uri;II)V -HSPLandroid/database/ContentObserver$Transport;->releaseContentObserver()V -HSPLandroid/database/ContentObserver;-><init>(Landroid/os/Handler;)V -HSPLandroid/database/ContentObserver;->dispatchChange(ZLjava/util/Collection;II)V -HSPLandroid/database/ContentObserver;->getContentObserver()Landroid/database/IContentObserver; -HSPLandroid/database/ContentObserver;->onChange(Z)V -HSPLandroid/database/ContentObserver;->onChange(ZLandroid/net/Uri;)V -HSPLandroid/database/ContentObserver;->onChange(ZLandroid/net/Uri;I)V -HSPLandroid/database/ContentObserver;->onChange(ZLjava/util/Collection;I)V -HSPLandroid/database/ContentObserver;->onChange(ZLjava/util/Collection;II)V -HSPLandroid/database/ContentObserver;->releaseContentObserver()Landroid/database/IContentObserver; -HSPLandroid/database/CrossProcessCursorWrapper;-><init>(Landroid/database/Cursor;)V -HSPLandroid/database/CursorToBulkCursorAdaptor$ContentObserverProxy;-><init>(Landroid/database/IContentObserver;Landroid/os/IBinder$DeathRecipient;)V -HSPLandroid/database/CursorToBulkCursorAdaptor$ContentObserverProxy;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;)Z -HSPLandroid/database/CursorToBulkCursorAdaptor;-><init>(Landroid/database/Cursor;Landroid/database/IContentObserver;Ljava/lang/String;)V -HSPLandroid/database/CursorToBulkCursorAdaptor;->binderDied()V -HSPLandroid/database/CursorToBulkCursorAdaptor;->close()V -HSPLandroid/database/CursorToBulkCursorAdaptor;->closeFilledWindowLocked()V -HSPLandroid/database/CursorToBulkCursorAdaptor;->createAndRegisterObserverProxyLocked(Landroid/database/IContentObserver;)V -HSPLandroid/database/CursorToBulkCursorAdaptor;->disposeLocked()V -HSPLandroid/database/CursorToBulkCursorAdaptor;->getBulkCursorDescriptor()Landroid/database/BulkCursorDescriptor; -HSPLandroid/database/CursorToBulkCursorAdaptor;->getWindow(I)Landroid/database/CursorWindow; -HSPLandroid/database/CursorToBulkCursorAdaptor;->throwIfCursorIsClosed()V -HSPLandroid/database/CursorToBulkCursorAdaptor;->unregisterObserverProxyLocked()V -HSPLandroid/database/CursorWindow$1;->createFromParcel(Landroid/os/Parcel;)Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/database/CursorWindow$1;->newArray(I)[Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/database/CursorWindow;-><init>(Landroid/os/Parcel;)V -HSPLandroid/database/CursorWindow;-><init>(Landroid/os/Parcel;Landroid/database/CursorWindow-IA;)V -HSPLandroid/database/CursorWindow;-><init>(Ljava/lang/String;)V -HSPLandroid/database/CursorWindow;-><init>(Ljava/lang/String;J)V -HSPLandroid/database/CursorWindow;->allocRow()Z -HSPLandroid/database/CursorWindow;->clear()V -HSPLandroid/database/CursorWindow;->dispose()V -HSPLandroid/database/CursorWindow;->finalize()V -HSPLandroid/database/CursorWindow;->getBlob(II)[B+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->getCursorWindowSize()I -HSPLandroid/database/CursorWindow;->getDouble(II)D -HSPLandroid/database/CursorWindow;->getFloat(II)F -HSPLandroid/database/CursorWindow;->getInt(II)I -HSPLandroid/database/CursorWindow;->getLong(II)J+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->getNumRows()I -HSPLandroid/database/CursorWindow;->getStartPosition()I -HSPLandroid/database/CursorWindow;->getString(II)Ljava/lang/String;+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->getType(II)I+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->newFromParcel(Landroid/os/Parcel;)Landroid/database/CursorWindow; -HSPLandroid/database/CursorWindow;->onAllReferencesReleased()V -HSPLandroid/database/CursorWindow;->putLong(JII)Z -HSPLandroid/database/CursorWindow;->putNull(II)Z -HSPLandroid/database/CursorWindow;->putString(Ljava/lang/String;II)Z -HSPLandroid/database/CursorWindow;->setNumColumns(I)Z -HSPLandroid/database/CursorWindow;->setStartPosition(I)V -HSPLandroid/database/CursorWindow;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/database/CursorWrapper;-><init>(Landroid/database/Cursor;)V -HSPLandroid/database/CursorWrapper;->close()V -HSPLandroid/database/CursorWrapper;->getBlob(I)[B -HSPLandroid/database/CursorWrapper;->getColumnCount()I -HSPLandroid/database/CursorWrapper;->getColumnIndex(Ljava/lang/String;)I -HSPLandroid/database/CursorWrapper;->getColumnIndexOrThrow(Ljava/lang/String;)I -HSPLandroid/database/CursorWrapper;->getColumnName(I)Ljava/lang/String; -HSPLandroid/database/CursorWrapper;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/CursorWrapper;->getCount()I -HSPLandroid/database/CursorWrapper;->getExtras()Landroid/os/Bundle; -HSPLandroid/database/CursorWrapper;->getInt(I)I -HSPLandroid/database/CursorWrapper;->getLong(I)J -HSPLandroid/database/CursorWrapper;->getPosition()I -HSPLandroid/database/CursorWrapper;->getString(I)Ljava/lang/String; -HSPLandroid/database/CursorWrapper;->getType(I)I -HSPLandroid/database/CursorWrapper;->getWrappedCursor()Landroid/database/Cursor; -HSPLandroid/database/CursorWrapper;->isAfterLast()Z -HSPLandroid/database/CursorWrapper;->isClosed()Z -HSPLandroid/database/CursorWrapper;->isLast()Z -HSPLandroid/database/CursorWrapper;->isNull(I)Z -HSPLandroid/database/CursorWrapper;->moveToFirst()Z -HSPLandroid/database/CursorWrapper;->moveToLast()Z -HSPLandroid/database/CursorWrapper;->moveToNext()Z -HSPLandroid/database/CursorWrapper;->moveToPosition(I)Z -HSPLandroid/database/CursorWrapper;->registerContentObserver(Landroid/database/ContentObserver;)V -HSPLandroid/database/DataSetObservable;-><init>()V -HSPLandroid/database/DataSetObservable;->notifyChanged()V -HSPLandroid/database/DataSetObservable;->notifyInvalidated()V -HSPLandroid/database/DataSetObserver;-><init>()V -HSPLandroid/database/DatabaseUtils;->appendEscapedSQLString(Ljava/lang/StringBuilder;Ljava/lang/String;)V -HSPLandroid/database/DatabaseUtils;->categorizeStatement(Ljava/lang/String;Ljava/lang/String;)I+]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/database/DatabaseUtils;->cursorFillWindow(Landroid/database/Cursor;ILandroid/database/CursorWindow;)V -HSPLandroid/database/DatabaseUtils;->getSqlStatementPrefixSimple(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/database/DatabaseUtils;->getSqlStatementType(Ljava/lang/String;)I -HSPLandroid/database/DatabaseUtils;->getSqlStatementTypeExtended(Ljava/lang/String;)I -HSPLandroid/database/DatabaseUtils;->getTypeOfObject(Ljava/lang/Object;)I -HSPLandroid/database/DatabaseUtils;->longForQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;)J -HSPLandroid/database/DatabaseUtils;->longForQuery(Landroid/database/sqlite/SQLiteStatement;[Ljava/lang/String;)J -HSPLandroid/database/DatabaseUtils;->queryNumEntries(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)J -HSPLandroid/database/DatabaseUtils;->queryNumEntries(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)J -HSPLandroid/database/DatabaseUtils;->readExceptionFromParcel(Landroid/os/Parcel;)V -HSPLandroid/database/DatabaseUtils;->readExceptionFromParcel(Landroid/os/Parcel;Ljava/lang/String;I)V -HSPLandroid/database/DatabaseUtils;->readExceptionWithFileNotFoundExceptionFromParcel(Landroid/os/Parcel;)V -HSPLandroid/database/DatabaseUtils;->readExceptionWithOperationApplicationExceptionFromParcel(Landroid/os/Parcel;)V -HSPLandroid/database/DatabaseUtils;->sqlEscapeString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/DatabaseUtils;->stringForQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/DatabaseUtils;->stringForQuery(Landroid/database/sqlite/SQLiteStatement;[Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/DatabaseUtils;->writeExceptionToParcel(Landroid/os/Parcel;Ljava/lang/Exception;)V -HSPLandroid/database/DefaultDatabaseErrorHandler;-><init>()V -HSPLandroid/database/IContentObserver$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/database/IContentObserver$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/database/IContentObserver$Stub$Proxy;->onChangeEtc(Z[Landroid/net/Uri;II)V -HSPLandroid/database/IContentObserver$Stub;-><init>()V -HSPLandroid/database/IContentObserver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/database/IContentObserver$Stub;->asInterface(Landroid/os/IBinder;)Landroid/database/IContentObserver; -HSPLandroid/database/IContentObserver$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/database/IContentObserver$Stub;->getMaxTransactionId()I -HSPLandroid/database/IContentObserver$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/database/IContentObserver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/database/MatrixCursor$RowBuilder;->add(Ljava/lang/Object;)Landroid/database/MatrixCursor$RowBuilder; -HSPLandroid/database/MatrixCursor$RowBuilder;->add(Ljava/lang/String;Ljava/lang/Object;)Landroid/database/MatrixCursor$RowBuilder; -HSPLandroid/database/MatrixCursor;-><init>([Ljava/lang/String;)V -HSPLandroid/database/MatrixCursor;-><init>([Ljava/lang/String;I)V -HSPLandroid/database/MatrixCursor;->addRow([Ljava/lang/Object;)V -HSPLandroid/database/MatrixCursor;->ensureCapacity(I)V -HSPLandroid/database/MatrixCursor;->get(I)Ljava/lang/Object; -HSPLandroid/database/MatrixCursor;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/MatrixCursor;->getCount()I -HSPLandroid/database/MatrixCursor;->getDouble(I)D -HSPLandroid/database/MatrixCursor;->getInt(I)I -HSPLandroid/database/MatrixCursor;->getLong(I)J -HSPLandroid/database/MatrixCursor;->getString(I)Ljava/lang/String; -HSPLandroid/database/MatrixCursor;->getType(I)I -HSPLandroid/database/MatrixCursor;->newRow()Landroid/database/MatrixCursor$RowBuilder; -HSPLandroid/database/MergeCursor$1;-><init>(Landroid/database/MergeCursor;)V -HSPLandroid/database/MergeCursor$1;->onInvalidated()V -HSPLandroid/database/MergeCursor;-><init>([Landroid/database/Cursor;)V -HSPLandroid/database/MergeCursor;->close()V -HSPLandroid/database/MergeCursor;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/MergeCursor;->getCount()I -HSPLandroid/database/MergeCursor;->getString(I)Ljava/lang/String; -HSPLandroid/database/MergeCursor;->onMove(II)Z -HSPLandroid/database/Observable;-><init>()V -HSPLandroid/database/Observable;->registerObserver(Ljava/lang/Object;)V -HSPLandroid/database/Observable;->unregisterAll()V -HSPLandroid/database/Observable;->unregisterObserver(Ljava/lang/Object;)V -HSPLandroid/database/sqlite/FeatureFlagsImpl;-><init>()V -HSPLandroid/database/sqlite/FeatureFlagsImpl;->sqliteAllowTempTables()Z -HSPLandroid/database/sqlite/Flags;-><clinit>()V -HSPLandroid/database/sqlite/Flags;->sqliteAllowTempTables()Z -HSPLandroid/database/sqlite/SQLiteClosable;-><init>()V -HSPLandroid/database/sqlite/SQLiteClosable;->acquireReference()V -HSPLandroid/database/sqlite/SQLiteClosable;->close()V -HSPLandroid/database/sqlite/SQLiteClosable;->releaseReference()V+]Landroid/database/sqlite/SQLiteClosable;Landroid/database/CursorWindow;,Landroid/database/sqlite/SQLiteDatabase;,Landroid/database/sqlite/SQLiteQuery;,Landroid/database/sqlite/SQLiteStatement; -HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->getTruncateSize()J -HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->init(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->initIfNeeded()V -HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->isLegacyCompatibilityWalEnabled()Z -HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>()V -HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>(Landroid/database/sqlite/SQLiteConnection$Operation-IA;)V -HSPLandroid/database/sqlite/SQLiteConnection$Operation;->describe(Ljava/lang/StringBuilder;Z)V -HSPLandroid/database/sqlite/SQLiteConnection$Operation;->getTraceMethodName()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->beginOperation(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)I+]Landroid/database/sqlite/SQLiteConnectionPool;Landroid/database/sqlite/SQLiteConnectionPool;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->dump(Landroid/util/Printer;)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->endOperation(I)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->endOperationDeferLog(I)Z -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->endOperationDeferLogLocked(I)Z -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->failOperation(ILjava/lang/Exception;)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->getOperationLocked(I)Landroid/database/sqlite/SQLiteConnection$Operation; -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->newOperationCookieLocked(I)I -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->setResult(J)V -HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->setResult(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatement;-><init>()V -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;-><init>(Landroid/database/sqlite/SQLiteConnection;I)V -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->createStatement(Ljava/lang/String;)J -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->entryRemoved(ZLjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->entryRemoved(ZLjava/lang/String;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->getLastSeqNum()J -HSPLandroid/database/sqlite/SQLiteConnection$PreparedStatementCache;->getStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement;+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; -HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$fgetmConnectionPtr(Landroid/database/sqlite/SQLiteConnection;)J -HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$mfinalizePreparedStatement(Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->-$$Nest$smnativePrepareStatement(JLjava/lang/String;)J -HSPLandroid/database/sqlite/SQLiteConnection;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;Landroid/database/sqlite/SQLiteDatabaseConfiguration;IZ)V -HSPLandroid/database/sqlite/SQLiteConnection;->acquirePreparedStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement; -HSPLandroid/database/sqlite/SQLiteConnection;->acquirePreparedStatementLI(Ljava/lang/String;)Landroid/database/sqlite/SQLiteConnection$PreparedStatement;+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; -HSPLandroid/database/sqlite/SQLiteConnection;->applyBlockGuardPolicy(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->attachCancellationSignal(Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteConnection;->bindArguments(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;[Ljava/lang/Object;)V+]Ljava/lang/Number;Ljava/lang/Double;,Ljava/lang/Integer;,Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnection;->canonicalizeSyncMode(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnection;->checkDatabaseWiped()V -HSPLandroid/database/sqlite/SQLiteConnection;->close()V -HSPLandroid/database/sqlite/SQLiteConnection;->collectDbStats(Ljava/util/ArrayList;)V -HSPLandroid/database/sqlite/SQLiteConnection;->detachCancellationSignal(Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteConnection;->dispose(Z)V -HSPLandroid/database/sqlite/SQLiteConnection;->dumpUnsafe(Landroid/util/Printer;Z)V -HSPLandroid/database/sqlite/SQLiteConnection;->execute(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V+]Landroid/database/sqlite/SQLiteConnection$OperationLog;Landroid/database/sqlite/SQLiteConnection$OperationLog;]Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnection;->executeForChangedRowCount(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)I -HSPLandroid/database/sqlite/SQLiteConnection;->executeForCursorWindow(Ljava/lang/String;[Ljava/lang/Object;Landroid/database/CursorWindow;IIZLandroid/os/CancellationSignal;)I -HSPLandroid/database/sqlite/SQLiteConnection;->executeForLastInsertedRowId(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)J -HSPLandroid/database/sqlite/SQLiteConnection;->executeForLong(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)J+]Landroid/database/sqlite/SQLiteConnection$OperationLog;Landroid/database/sqlite/SQLiteConnection$OperationLog;]Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnection;->executeForString(Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnection;->executePerConnectionSqlFromConfiguration(I)V -HSPLandroid/database/sqlite/SQLiteConnection;->finalize()V -HSPLandroid/database/sqlite/SQLiteConnection;->finalizePreparedStatement(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->getConnectionId()I -HSPLandroid/database/sqlite/SQLiteConnection;->getMainDbStatsUnsafe(IJJ)Landroid/database/sqlite/SQLiteDebug$DbStats; -HSPLandroid/database/sqlite/SQLiteConnection;->isCacheable(I)Z -HSPLandroid/database/sqlite/SQLiteConnection;->isPreparedStatementInCache(Ljava/lang/String;)Z -HSPLandroid/database/sqlite/SQLiteConnection;->isPrimaryConnection()Z -HSPLandroid/database/sqlite/SQLiteConnection;->maybeTruncateWalFile()V -HSPLandroid/database/sqlite/SQLiteConnection;->obtainPreparedStatement(Ljava/lang/String;JIIZJ)Landroid/database/sqlite/SQLiteConnection$PreparedStatement; -HSPLandroid/database/sqlite/SQLiteConnection;->open()V -HSPLandroid/database/sqlite/SQLiteConnection;->open(Landroid/database/sqlite/SQLiteConnectionPool;Landroid/database/sqlite/SQLiteDatabaseConfiguration;IZ)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnection;->prepare(Ljava/lang/String;Landroid/database/sqlite/SQLiteStatementInfo;)V -HSPLandroid/database/sqlite/SQLiteConnection;->reconfigure(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V -HSPLandroid/database/sqlite/SQLiteConnection;->recyclePreparedStatement(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->releasePreparedStatement(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnection;->releasePreparedStatementLI(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V+]Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache;Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; -HSPLandroid/database/sqlite/SQLiteConnection;->setAutoCheckpointInterval()V -HSPLandroid/database/sqlite/SQLiteConnection;->setCustomFunctionsFromConfiguration()V -HSPLandroid/database/sqlite/SQLiteConnection;->setForeignKeyModeFromConfiguration()V -HSPLandroid/database/sqlite/SQLiteConnection;->setJournalFromConfiguration()V -HSPLandroid/database/sqlite/SQLiteConnection;->setJournalMode(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteConnection;->setJournalSizeLimit()V -HSPLandroid/database/sqlite/SQLiteConnection;->setLocaleFromConfiguration()V -HSPLandroid/database/sqlite/SQLiteConnection;->setOnlyAllowReadOnlyOperations(Z)V -HSPLandroid/database/sqlite/SQLiteConnection;->setPageSize()V -HSPLandroid/database/sqlite/SQLiteConnection;->setSyncMode(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteConnection;->setSyncModeFromConfiguration()V -HSPLandroid/database/sqlite/SQLiteConnection;->throwIfStatementForbidden(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>()V -HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>(Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter-IA;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionAcquired(Landroid/database/sqlite/SQLiteConnection;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionClosed(Landroid/database/sqlite/SQLiteConnection;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionReleased(Landroid/database/sqlite/SQLiteConnection;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->acquireConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->close()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableConnectionLocked(I)Z -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableConnectionsAndLogExceptionsLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableNonPrimaryConnectionsAndLogExceptions()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeAvailableNonPrimaryConnectionsAndLogExceptionsLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeConnectionAndLogExceptionsLocked(Landroid/database/sqlite/SQLiteConnection;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->closeExcessConnectionsAndLogExceptionsLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->collectDbStats(Ljava/util/ArrayList;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->disableIdleConnectionHandler()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->discardAcquiredConnectionsLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->dispose(Z)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->dump(Landroid/util/Printer;ZLandroid/util/ArraySet;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->finalize()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->finishAcquireConnectionLocked(Landroid/database/sqlite/SQLiteConnection;I)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->getPath()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->getPriority(I)I -HSPLandroid/database/sqlite/SQLiteConnectionPool;->isSessionBlockingImportantConnectionWaitersLocked(ZI)Z -HSPLandroid/database/sqlite/SQLiteConnectionPool;->markAcquiredConnectionsLocked(Landroid/database/sqlite/SQLiteConnectionPool$AcquiredConnectionStatus;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->obtainConnectionWaiterLocked(Ljava/lang/Thread;JIZLjava/lang/String;I)Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->onStatementExecuted(J)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->open()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->open(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)Landroid/database/sqlite/SQLiteConnectionPool; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->openConnectionLocked(Landroid/database/sqlite/SQLiteDatabaseConfiguration;Z)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->reconfigure(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->reconfigureAllConnectionsLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->recycleConnectionLocked(Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnectionPool$AcquiredConnectionStatus;)Z -HSPLandroid/database/sqlite/SQLiteConnectionPool;->recycleConnectionWaiterLocked(Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->releaseConnection(Landroid/database/sqlite/SQLiteConnection;)V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->setMaxConnectionPoolSizeLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->shouldYieldConnection(Landroid/database/sqlite/SQLiteConnection;I)Z -HSPLandroid/database/sqlite/SQLiteConnectionPool;->throwIfClosedLocked()V -HSPLandroid/database/sqlite/SQLiteConnectionPool;->tryAcquireNonPrimaryConnectionLocked(Ljava/lang/String;I)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->tryAcquirePrimaryConnectionLocked(I)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->waitForConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)Landroid/database/sqlite/SQLiteConnection; -HSPLandroid/database/sqlite/SQLiteConnectionPool;->wakeConnectionWaitersLocked()V -HSPLandroid/database/sqlite/SQLiteConstraintException;-><init>(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteCursor;-><init>(Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V -HSPLandroid/database/sqlite/SQLiteCursor;->close()V -HSPLandroid/database/sqlite/SQLiteCursor;->fillWindow(I)V -HSPLandroid/database/sqlite/SQLiteCursor;->finalize()V -HSPLandroid/database/sqlite/SQLiteCursor;->getColumnIndex(Ljava/lang/String;)I -HSPLandroid/database/sqlite/SQLiteCursor;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteCursor;->getCount()I -HSPLandroid/database/sqlite/SQLiteCursor;->getDatabase()Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteCursor;->onMove(II)Z+]Landroid/database/CursorWindow;Landroid/database/CursorWindow; -HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V -HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLandroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/database/sqlite/SQLiteDatabase$1;-><init>(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteDatabase$1;->accept(Ljava/io/File;)Z -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;-><init>()V -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;-><init>(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)V -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->addOpenFlags(I)Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->build()Landroid/database/sqlite/SQLiteDatabase$OpenParams; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->isWriteAheadLoggingEnabled()Z -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->removeOpenFlags(I)Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->setCursorFactory(Landroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->setErrorHandler(Landroid/database/DatabaseErrorHandler;)Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->setIdleConnectionTimeout(J)Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;->setWriteAheadLoggingEnabled(Z)V -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmCursorFactory(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Landroid/database/sqlite/SQLiteDatabase$CursorFactory; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmErrorHandler(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Landroid/database/DatabaseErrorHandler; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmIdleConnectionTimeout(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)J -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmJournalMode(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmLookasideSlotCount(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)I -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmLookasideSlotSize(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)I -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmOpenFlags(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)I -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;->-$$Nest$fgetmSyncMode(Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;-><init>(ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteDatabase$OpenParams;-><init>(ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$OpenParams-IA;)V -HSPLandroid/database/sqlite/SQLiteDatabase;-><init>(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;Landroid/database/DatabaseErrorHandler;IIJLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransaction()V -HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransaction(Landroid/database/sqlite/SQLiteTransactionListener;Z)V -HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransactionNonExclusive()V -HSPLandroid/database/sqlite/SQLiteDatabase;->beginTransactionWithListener(Landroid/database/sqlite/SQLiteTransactionListener;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->collectDbStats(Ljava/util/ArrayList;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->compileStatement(Ljava/lang/String;)Landroid/database/sqlite/SQLiteStatement;+]Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->createSession()Landroid/database/sqlite/SQLiteSession; -HSPLandroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I -HSPLandroid/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;)Z -HSPLandroid/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;Z)Z -HSPLandroid/database/sqlite/SQLiteDatabase;->disableWriteAheadLogging()V -HSPLandroid/database/sqlite/SQLiteDatabase;->dispose(Z)V -HSPLandroid/database/sqlite/SQLiteDatabase;->dumpAll(Landroid/util/Printer;ZZ)V -HSPLandroid/database/sqlite/SQLiteDatabase;->dumpDatabaseDirectory(Landroid/util/Printer;Ljava/io/File;Z)V -HSPLandroid/database/sqlite/SQLiteDatabase;->enableWriteAheadLogging()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->endTransaction()V -HSPLandroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->executeSql(Ljava/lang/String;[Ljava/lang/Object;)I -HSPLandroid/database/sqlite/SQLiteDatabase;->finalize()V -HSPLandroid/database/sqlite/SQLiteDatabase;->findEditTable(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabase;->getActiveDatabasePools()Ljava/util/ArrayList; -HSPLandroid/database/sqlite/SQLiteDatabase;->getActiveDatabases()Ljava/util/ArrayList; -HSPLandroid/database/sqlite/SQLiteDatabase;->getFileTimestamps(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabase;->getMaximumSize()J -HSPLandroid/database/sqlite/SQLiteDatabase;->getPageSize()J -HSPLandroid/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabase;->getThreadDefaultConnectionFlags(Z)I -HSPLandroid/database/sqlite/SQLiteDatabase;->getThreadSession()Landroid/database/sqlite/SQLiteSession; -HSPLandroid/database/sqlite/SQLiteDatabase;->getVersion()I -HSPLandroid/database/sqlite/SQLiteDatabase;->inTransaction()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J -HSPLandroid/database/sqlite/SQLiteDatabase;->insertOrThrow(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J -HSPLandroid/database/sqlite/SQLiteDatabase;->insertWithOnConflict(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;I)J+]Landroid/content/ContentValues;Landroid/content/ContentValues;]Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteDatabase;]Landroid/database/sqlite/SQLiteStatement;Landroid/database/sqlite/SQLiteStatement;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLandroid/database/sqlite/SQLiteDatabase;->isMainThread()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->isOpen()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->isReadOnlyLocked()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->isWriteAheadLoggingEnabled()Z -HSPLandroid/database/sqlite/SQLiteDatabase;->onAllReferencesReleased()V -HSPLandroid/database/sqlite/SQLiteDatabase;->open()V -HSPLandroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/io/File;Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;ILandroid/database/DatabaseErrorHandler;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$OpenParams;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->openInner()V -HSPLandroid/database/sqlite/SQLiteDatabase;->openOrCreateDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->query(ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->query(ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->queryWithFactory(Landroid/database/sqlite/SQLiteDatabase$CursorFactory;ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->rawQueryWithFactory(Landroid/database/sqlite/SQLiteDatabase$CursorFactory;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->rawQueryWithFactory(Landroid/database/sqlite/SQLiteDatabase$CursorFactory;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteDatabase;->releaseMemory()I -HSPLandroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J -HSPLandroid/database/sqlite/SQLiteDatabase;->replaceOrThrow(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J -HSPLandroid/database/sqlite/SQLiteDatabase;->setForeignKeyConstraintsEnabled(Z)V -HSPLandroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V -HSPLandroid/database/sqlite/SQLiteDatabase;->throwIfNotOpenLocked()V -HSPLandroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I -HSPLandroid/database/sqlite/SQLiteDatabase;->updateWithOnConflict(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;I)I -HSPLandroid/database/sqlite/SQLiteDatabase;->validateSql(Ljava/lang/String;Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteDatabase;->yieldIfContendedHelper(ZJ)Z -HSPLandroid/database/sqlite/SQLiteDatabase;->yieldIfContendedSafely(J)Z -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;-><init>(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;-><init>(Ljava/lang/String;I)V -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->isInMemoryDb()Z -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->isLegacyCompatibilityWalEnabled()Z -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->isReadOnlyDatabase()Z -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->isWalEnabledInternal()Z -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->resolveJournalMode()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->resolveSyncMode()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->stripPathForLogs(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteDatabaseConfiguration;->updateParametersFrom(Landroid/database/sqlite/SQLiteDatabaseConfiguration;)V -HSPLandroid/database/sqlite/SQLiteDebug$NoPreloadHolder;-><clinit>()V -HSPLandroid/database/sqlite/SQLiteDebug;->getDatabaseInfo()Landroid/database/sqlite/SQLiteDebug$PagerStats; -HSPLandroid/database/sqlite/SQLiteDebug;->shouldLogSlowQuery(J)Z -HSPLandroid/database/sqlite/SQLiteDirectCursorDriver;-><init>(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteDirectCursorDriver;->cursorClosed()V -HSPLandroid/database/sqlite/SQLiteDirectCursorDriver;->query(Landroid/database/sqlite/SQLiteDatabase$CursorFactory;[Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteGlobal;->checkDbWipe()Z -HSPLandroid/database/sqlite/SQLiteGlobal;->getDefaultJournalMode()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteGlobal;->getDefaultPageSize()I -HSPLandroid/database/sqlite/SQLiteGlobal;->getDefaultSyncMode()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteGlobal;->getJournalSizeLimit()I -HSPLandroid/database/sqlite/SQLiteGlobal;->getWALAutoCheckpoint()I -HSPLandroid/database/sqlite/SQLiteGlobal;->getWALConnectionPoolSize()I -HSPLandroid/database/sqlite/SQLiteGlobal;->getWALSyncMode()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteGlobal;->getWALTruncateSize()J -HSPLandroid/database/sqlite/SQLiteGlobal;->releaseMemory()I -HSPLandroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;IILandroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;IILandroid/database/DatabaseErrorHandler;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;ILandroid/database/DatabaseErrorHandler;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->close()V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->getDatabaseLocked(Z)Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteOpenHelper;->getDatabaseName()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteOpenHelper;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteOpenHelper;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteOpenHelper;->onConfigure(Landroid/database/sqlite/SQLiteDatabase;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->onOpen(Landroid/database/sqlite/SQLiteDatabase;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->setFilePermissionsForDb(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->setIdleConnectionTimeout(J)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->setOpenParamsBuilder(Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder;)V -HSPLandroid/database/sqlite/SQLiteOpenHelper;->setWriteAheadLoggingEnabled(Z)V -HSPLandroid/database/sqlite/SQLiteProgram;-><init>(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindAllArgsAsStrings([Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindBlob(I[B)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindDouble(ID)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindLong(IJ)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindNull(I)V -HSPLandroid/database/sqlite/SQLiteProgram;->bindString(ILjava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteProgram;->clearBindings()V -HSPLandroid/database/sqlite/SQLiteProgram;->getBindArgs()[Ljava/lang/Object; -HSPLandroid/database/sqlite/SQLiteProgram;->getColumnNames()[Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteProgram;->getConnectionFlags()I -HSPLandroid/database/sqlite/SQLiteProgram;->getDatabase()Landroid/database/sqlite/SQLiteDatabase; -HSPLandroid/database/sqlite/SQLiteProgram;->getSession()Landroid/database/sqlite/SQLiteSession; -HSPLandroid/database/sqlite/SQLiteProgram;->getSql()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteProgram;->onAllReferencesReleased()V -HSPLandroid/database/sqlite/SQLiteQuery;-><init>(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteQuery;->fillWindow(Landroid/database/CursorWindow;IIZ)I -HSPLandroid/database/sqlite/SQLiteQueryBuilder;-><init>()V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->appendWhere(Ljava/lang/CharSequence;)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->buildQuery([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->buildQueryString(ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->computeProjection([Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->computeSingleProjectionOrThrow(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->computeWhere(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->isStrict()Z -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->isStrictColumns()Z -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->isStrictGrammar()Z -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->query(Landroid/database/sqlite/SQLiteDatabase;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->query(Landroid/database/sqlite/SQLiteDatabase;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->query(Landroid/database/sqlite/SQLiteDatabase;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setDistinct(Z)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setProjectionMap(Ljava/util/Map;)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setStrict(Z)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->setTables(Ljava/lang/String;)V -HSPLandroid/database/sqlite/SQLiteQueryBuilder;->wrap(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteSession$Transaction;-><init>()V -HSPLandroid/database/sqlite/SQLiteSession$Transaction;-><init>(Landroid/database/sqlite/SQLiteSession$Transaction-IA;)V -HSPLandroid/database/sqlite/SQLiteSession;-><init>(Landroid/database/sqlite/SQLiteConnectionPool;)V -HSPLandroid/database/sqlite/SQLiteSession;->acquireConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->beginTransaction(ILandroid/database/sqlite/SQLiteTransactionListener;ILandroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->beginTransactionUnchecked(ILandroid/database/sqlite/SQLiteTransactionListener;ILandroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->closeOpenDependents()V+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLandroid/database/sqlite/SQLiteSession;->endTransaction(Landroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->endTransactionUnchecked(Landroid/os/CancellationSignal;Z)V -HSPLandroid/database/sqlite/SQLiteSession;->execute(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)V -HSPLandroid/database/sqlite/SQLiteSession;->executeForChangedRowCount(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)I -HSPLandroid/database/sqlite/SQLiteSession;->executeForCursorWindow(Ljava/lang/String;[Ljava/lang/Object;Landroid/database/CursorWindow;IIZILandroid/os/CancellationSignal;)I -HSPLandroid/database/sqlite/SQLiteSession;->executeForLastInsertedRowId(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)J -HSPLandroid/database/sqlite/SQLiteSession;->executeForLong(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)J -HSPLandroid/database/sqlite/SQLiteSession;->executeForString(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteSession;->executeSpecial(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)Z -HSPLandroid/database/sqlite/SQLiteSession;->hasNestedTransaction()Z -HSPLandroid/database/sqlite/SQLiteSession;->hasTransaction()Z -HSPLandroid/database/sqlite/SQLiteSession;->obtainTransaction(ILandroid/database/sqlite/SQLiteTransactionListener;)Landroid/database/sqlite/SQLiteSession$Transaction; -HSPLandroid/database/sqlite/SQLiteSession;->prepare(Ljava/lang/String;ILandroid/os/CancellationSignal;Landroid/database/sqlite/SQLiteStatementInfo;)V -HSPLandroid/database/sqlite/SQLiteSession;->recycleTransaction(Landroid/database/sqlite/SQLiteSession$Transaction;)V -HSPLandroid/database/sqlite/SQLiteSession;->releaseConnection()V -HSPLandroid/database/sqlite/SQLiteSession;->setTransactionSuccessful()V -HSPLandroid/database/sqlite/SQLiteSession;->throwIfNestedTransaction()V -HSPLandroid/database/sqlite/SQLiteSession;->throwIfNoTransaction()V -HSPLandroid/database/sqlite/SQLiteSession;->throwIfTransactionMarkedSuccessful()V -HSPLandroid/database/sqlite/SQLiteSession;->yieldTransaction(JZLandroid/os/CancellationSignal;)Z -HSPLandroid/database/sqlite/SQLiteSession;->yieldTransactionUnchecked(JLandroid/os/CancellationSignal;)Z -HSPLandroid/database/sqlite/SQLiteStatement;-><init>(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/database/sqlite/SQLiteStatement;->execute()V+]Landroid/database/sqlite/SQLiteSession;Landroid/database/sqlite/SQLiteSession;]Landroid/database/sqlite/SQLiteStatement;Landroid/database/sqlite/SQLiteStatement; -HSPLandroid/database/sqlite/SQLiteStatement;->executeInsert()J -HSPLandroid/database/sqlite/SQLiteStatement;->executeUpdateDelete()I -HSPLandroid/database/sqlite/SQLiteStatement;->simpleQueryForLong()J -HSPLandroid/database/sqlite/SQLiteStatement;->simpleQueryForString()Ljava/lang/String; -HSPLandroid/database/sqlite/SQLiteStatementInfo;-><init>()V -HSPLandroid/ddm/DdmHandle;->putString(Ljava/nio/ByteBuffer;Ljava/lang/String;)V -HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;Landroid/ddm/DdmHandleAppName$Names-IA;)V -HSPLandroid/ddm/DdmHandleAppName;->sendAPNM(Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;I)V -HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/ddm/DdmHandleHeap;->handleChunk(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLandroid/ddm/DdmHandleHello;->handleChunk(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLandroid/ddm/DdmHandleHello;->handleFEAT(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLandroid/ddm/DdmHandleHello;->handleHELO(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLandroid/ddm/DdmHandleProfiling;->handleChunk(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLandroid/graphics/BLASTBufferQueue;-><init>(Ljava/lang/String;Landroid/view/SurfaceControl;III)V -HSPLandroid/graphics/BLASTBufferQueue;-><init>(Ljava/lang/String;Z)V -HSPLandroid/graphics/BLASTBufferQueue;->createSurface()Landroid/view/Surface; -HSPLandroid/graphics/BLASTBufferQueue;->destroy()V -HSPLandroid/graphics/BLASTBufferQueue;->finalize()V -HSPLandroid/graphics/BLASTBufferQueue;->gatherPendingTransactions(J)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/graphics/BLASTBufferQueue;->isSameSurfaceControl(Landroid/view/SurfaceControl;)Z -HSPLandroid/graphics/BLASTBufferQueue;->mergeWithNextTransaction(Landroid/view/SurfaceControl$Transaction;J)V -HSPLandroid/graphics/BLASTBufferQueue;->setTransactionHangCallback(Landroid/graphics/BLASTBufferQueue$TransactionHangCallback;)V -HSPLandroid/graphics/BLASTBufferQueue;->update(Landroid/view/SurfaceControl;III)V -HSPLandroid/graphics/BaseCanvas;-><init>()V -HSPLandroid/graphics/BaseCanvas;->drawARGB(IIII)V -HSPLandroid/graphics/BaseCanvas;->drawArc(FFFFFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Matrix;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/RectF;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawColor(I)V -HSPLandroid/graphics/BaseCanvas;->drawLine(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/BaseCanvas;->drawText(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->drawTextRun(Ljava/lang/CharSequence;IIIIFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseCanvas;->throwIfCannotDraw(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/BaseCanvas;->throwIfHasHwFeaturesInSwMode(Landroid/graphics/Paint;)V+]Landroid/graphics/BaseCanvas;Landroid/graphics/Canvas; -HSPLandroid/graphics/BaseCanvas;->throwIfHasHwFeaturesInSwMode(Landroid/graphics/Shader;)V -HSPLandroid/graphics/BaseCanvas;->throwIfHwBitmapInSwMode(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/BaseRecordingCanvas;-><init>(J)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawCircle(FFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawColor(I)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawColor(ILandroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawLine(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawOval(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawOval(Landroid/graphics/RectF;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawPatch(Landroid/graphics/NinePatch;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V+]Landroid/graphics/Paint;missing_types]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(FFFFLandroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/Rect;Landroid/graphics/Paint;)V+]Landroid/graphics/BaseRecordingCanvas;Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(FFFFFFLandroid/graphics/Paint;)V+]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/BaseRecordingCanvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V+]Landroid/graphics/BaseRecordingCanvas;Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/BaseRecordingCanvas;->drawText(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawTextRun(Ljava/lang/CharSequence;IIIIFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/BaseRecordingCanvas;->drawTextRun([CIIIIFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/Bitmap$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/graphics/Bitmap$Config;->nativeToConfig(I)Landroid/graphics/Bitmap$Config; -HSPLandroid/graphics/Bitmap$Config;->values()[Landroid/graphics/Bitmap$Config; -HSPLandroid/graphics/Bitmap;-><init>(JIIIZ[BLandroid/graphics/NinePatch$InsetStruct;Z)V -HSPLandroid/graphics/Bitmap;->checkHardware(Ljava/lang/String;)V -HSPLandroid/graphics/Bitmap;->checkPixelAccess(II)V -HSPLandroid/graphics/Bitmap;->checkPixelsAccess(IIIIII[I)V -HSPLandroid/graphics/Bitmap;->checkRecycled(Ljava/lang/String;)V -HSPLandroid/graphics/Bitmap;->checkWidthHeight(II)V -HSPLandroid/graphics/Bitmap;->checkXYSign(II)V -HSPLandroid/graphics/Bitmap;->compress(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z -HSPLandroid/graphics/Bitmap;->copy(Landroid/graphics/Bitmap$Config;Z)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->copyPixelsToBuffer(Ljava/nio/Buffer;)V -HSPLandroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;Z)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createBitmap(Landroid/graphics/Bitmap;IIII)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createBitmap(Landroid/graphics/Bitmap;IIIILandroid/graphics/Matrix;Z)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createBitmap(Landroid/util/DisplayMetrics;IILandroid/graphics/Bitmap$Config;Z)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createBitmap(Landroid/util/DisplayMetrics;IILandroid/graphics/Bitmap$Config;ZLandroid/graphics/ColorSpace;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->createScaledBitmap(Landroid/graphics/Bitmap;IIZ)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->eraseColor(I)V -HSPLandroid/graphics/Bitmap;->extractAlpha(Landroid/graphics/Paint;[I)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->getAllocationByteCount()I -HSPLandroid/graphics/Bitmap;->getByteCount()I -HSPLandroid/graphics/Bitmap;->getColorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config; -HSPLandroid/graphics/Bitmap;->getDefaultDensity()I -HSPLandroid/graphics/Bitmap;->getDensity()I -HSPLandroid/graphics/Bitmap;->getHeight()I -HSPLandroid/graphics/Bitmap;->getNativeInstance()J -HSPLandroid/graphics/Bitmap;->getNinePatchChunk()[B -HSPLandroid/graphics/Bitmap;->getNinePatchInsets()Landroid/graphics/NinePatch$InsetStruct; -HSPLandroid/graphics/Bitmap;->getOpticalInsets(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Bitmap;->getPixel(II)I -HSPLandroid/graphics/Bitmap;->getPixels([IIIIIII)V -HSPLandroid/graphics/Bitmap;->getRowBytes()I -HSPLandroid/graphics/Bitmap;->getScaledHeight(I)I -HSPLandroid/graphics/Bitmap;->getScaledWidth(I)I -HSPLandroid/graphics/Bitmap;->getWidth()I -HSPLandroid/graphics/Bitmap;->hasAlpha()Z -HSPLandroid/graphics/Bitmap;->hasGainmap()Z -HSPLandroid/graphics/Bitmap;->hasMipMap()Z -HSPLandroid/graphics/Bitmap;->isMutable()Z -HSPLandroid/graphics/Bitmap;->isPremultiplied()Z -HSPLandroid/graphics/Bitmap;->isRecycled()Z -HSPLandroid/graphics/Bitmap;->noteHardwareBitmapSlowCall()V -HSPLandroid/graphics/Bitmap;->prepareToDraw()V -HSPLandroid/graphics/Bitmap;->reconfigure(IILandroid/graphics/Bitmap$Config;)V -HSPLandroid/graphics/Bitmap;->recycle()V -HSPLandroid/graphics/Bitmap;->reinit(IIZ)V -HSPLandroid/graphics/Bitmap;->scaleFromDensity(III)I -HSPLandroid/graphics/Bitmap;->setDefaultDensity(I)V -HSPLandroid/graphics/Bitmap;->setDensity(I)V -HSPLandroid/graphics/Bitmap;->setHasAlpha(Z)V -HSPLandroid/graphics/Bitmap;->setHasMipMap(Z)V -HSPLandroid/graphics/Bitmap;->setPremultiplied(Z)V -HSPLandroid/graphics/Bitmap;->wrapHardwareBuffer(Landroid/hardware/HardwareBuffer;Landroid/graphics/ColorSpace;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/Bitmap;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/graphics/BitmapFactory$Options;-><init>()V -HSPLandroid/graphics/BitmapFactory$Options;->nativeColorSpace(Landroid/graphics/BitmapFactory$Options;)J -HSPLandroid/graphics/BitmapFactory$Options;->nativeInBitmap(Landroid/graphics/BitmapFactory$Options;)J -HSPLandroid/graphics/BitmapFactory$Options;->validate(Landroid/graphics/BitmapFactory$Options;)V -HSPLandroid/graphics/BitmapFactory;->decodeByteArray([BII)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeByteArray([BIILandroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeFile(Ljava/lang/String;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeFileDescriptor(Ljava/io/FileDescriptor;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeFileDescriptor(Ljava/io/FileDescriptor;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeResource(Landroid/content/res/Resources;I)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeResource(Landroid/content/res/Resources;ILandroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeResourceStream(Landroid/content/res/Resources;Landroid/util/TypedValue;Ljava/io/InputStream;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeStream(Ljava/io/InputStream;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeStream(Ljava/io/InputStream;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->decodeStreamInternal(Ljava/io/InputStream;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/BitmapFactory;->setDensityFromOptions(Landroid/graphics/Bitmap;Landroid/graphics/BitmapFactory$Options;)V -HSPLandroid/graphics/BitmapShader;-><init>(Landroid/graphics/Bitmap;II)V -HSPLandroid/graphics/BitmapShader;-><init>(Landroid/graphics/Bitmap;Landroid/graphics/Shader$TileMode;Landroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/BitmapShader;->createNativeInstance(JZ)J -HSPLandroid/graphics/BitmapShader;->shouldDiscardNativeInstance(Z)Z -HSPLandroid/graphics/BlendMode;->blendModeToPorterDuffMode(Landroid/graphics/BlendMode;)Landroid/graphics/PorterDuff$Mode;+]Landroid/graphics/BlendMode;Landroid/graphics/BlendMode; -HSPLandroid/graphics/BlendMode;->fromValue(I)Landroid/graphics/BlendMode; -HSPLandroid/graphics/BlendMode;->getXfermode()Landroid/graphics/Xfermode; -HSPLandroid/graphics/BlendMode;->toValue(Landroid/graphics/BlendMode;)I -HSPLandroid/graphics/BlendModeColorFilter;-><init>(ILandroid/graphics/BlendMode;)V -HSPLandroid/graphics/BlendModeColorFilter;->createNativeInstance()J -HSPLandroid/graphics/BlendModeColorFilter;->getColor()I -HSPLandroid/graphics/BlendModeColorFilter;->getMode()Landroid/graphics/BlendMode; -HSPLandroid/graphics/BlurMaskFilter;-><init>(FLandroid/graphics/BlurMaskFilter$Blur;)V -HSPLandroid/graphics/Canvas;-><init>()V -HSPLandroid/graphics/Canvas;-><init>(J)V -HSPLandroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/Canvas;->checkValidClipOp(Landroid/graphics/Region$Op;)V -HSPLandroid/graphics/Canvas;->clipPath(Landroid/graphics/Path;)Z -HSPLandroid/graphics/Canvas;->clipPath(Landroid/graphics/Path;Landroid/graphics/Region$Op;)Z -HSPLandroid/graphics/Canvas;->clipRect(FFFF)Z -HSPLandroid/graphics/Canvas;->clipRect(IIII)Z -HSPLandroid/graphics/Canvas;->clipRect(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Canvas;->clipRect(Landroid/graphics/RectF;)Z -HSPLandroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V -HSPLandroid/graphics/Canvas;->disableZ()V -HSPLandroid/graphics/Canvas;->drawARGB(IIII)V -HSPLandroid/graphics/Canvas;->drawArc(FFFFFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Matrix;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/RectF;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawCircle(FFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawColor(I)V -HSPLandroid/graphics/Canvas;->drawColor(ILandroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawOval(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawOval(Landroid/graphics/RectF;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawRect(Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawRoundRect(FFFFFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawText(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->drawTextRun(Ljava/lang/CharSequence;IIIIFFZLandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->enableZ()V -HSPLandroid/graphics/Canvas;->freeCaches()V -HSPLandroid/graphics/Canvas;->freeTextLayoutCaches()V -HSPLandroid/graphics/Canvas;->getClipBounds()Landroid/graphics/Rect; -HSPLandroid/graphics/Canvas;->getClipBounds(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Canvas;->getDensity()I -HSPLandroid/graphics/Canvas;->getHeight()I -HSPLandroid/graphics/Canvas;->getNativeCanvasWrapper()J -HSPLandroid/graphics/Canvas;->getSaveCount()I -HSPLandroid/graphics/Canvas;->getWidth()I -HSPLandroid/graphics/Canvas;->isHardwareAccelerated()Z -HSPLandroid/graphics/Canvas;->isOpaque()Z -HSPLandroid/graphics/Canvas;->quickReject(FFFF)Z -HSPLandroid/graphics/Canvas;->restore()V -HSPLandroid/graphics/Canvas;->restoreToCount(I)V -HSPLandroid/graphics/Canvas;->restoreUnclippedLayer(ILandroid/graphics/Paint;)V -HSPLandroid/graphics/Canvas;->rotate(F)V -HSPLandroid/graphics/Canvas;->rotate(FFF)V -HSPLandroid/graphics/Canvas;->save()I -HSPLandroid/graphics/Canvas;->save(I)I -HSPLandroid/graphics/Canvas;->saveLayer(FFFFLandroid/graphics/Paint;I)I -HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;)I+]Landroid/graphics/Canvas;Landroid/graphics/Canvas;,Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/Canvas;->saveLayer(Landroid/graphics/RectF;Landroid/graphics/Paint;I)I+]Landroid/graphics/Canvas;Landroid/graphics/Canvas;,Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/Canvas;->saveLayerAlpha(FFFFI)I -HSPLandroid/graphics/Canvas;->saveLayerAlpha(FFFFII)I -HSPLandroid/graphics/Canvas;->saveUnclippedLayer(IIII)I -HSPLandroid/graphics/Canvas;->scale(FF)V -HSPLandroid/graphics/Canvas;->scale(FFFF)V -HSPLandroid/graphics/Canvas;->setBitmap(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/Canvas;->setCompatibilityVersion(I)V -HSPLandroid/graphics/Canvas;->setDensity(I)V -HSPLandroid/graphics/Canvas;->setDrawFilter(Landroid/graphics/DrawFilter;)V -HSPLandroid/graphics/Canvas;->setScreenDensity(I)V -HSPLandroid/graphics/Canvas;->translate(FF)V -HSPLandroid/graphics/CanvasProperty;-><init>(J)V -HSPLandroid/graphics/CanvasProperty;->createFloat(F)Landroid/graphics/CanvasProperty; -HSPLandroid/graphics/CanvasProperty;->createPaint(Landroid/graphics/Paint;)Landroid/graphics/CanvasProperty; -HSPLandroid/graphics/CanvasProperty;->getNativeContainer()J -HSPLandroid/graphics/Color;-><init>(FFFFLandroid/graphics/ColorSpace;)V -HSPLandroid/graphics/Color;->HSVToColor(I[F)I -HSPLandroid/graphics/Color;->RGBToHSV(III[F)V -HSPLandroid/graphics/Color;->alpha()F -HSPLandroid/graphics/Color;->alpha(I)I -HSPLandroid/graphics/Color;->alpha(J)F -HSPLandroid/graphics/Color;->argb(IIII)I -HSPLandroid/graphics/Color;->blue()F -HSPLandroid/graphics/Color;->blue(I)I -HSPLandroid/graphics/Color;->blue(J)F -HSPLandroid/graphics/Color;->colorSpace(J)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/Color;->colorToHSV(I[F)V -HSPLandroid/graphics/Color;->getComponents()[F -HSPLandroid/graphics/Color;->green()F -HSPLandroid/graphics/Color;->green(I)I -HSPLandroid/graphics/Color;->green(J)F -HSPLandroid/graphics/Color;->luminance()F -HSPLandroid/graphics/Color;->pack(FFFFLandroid/graphics/ColorSpace;)J+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb; -HSPLandroid/graphics/Color;->pack(I)J -HSPLandroid/graphics/Color;->parseColor(Ljava/lang/String;)I -HSPLandroid/graphics/Color;->red()F -HSPLandroid/graphics/Color;->red(I)I -HSPLandroid/graphics/Color;->red(J)F -HSPLandroid/graphics/Color;->rgb(III)I -HSPLandroid/graphics/Color;->toArgb()I -HSPLandroid/graphics/Color;->toArgb(J)I -HSPLandroid/graphics/Color;->valueOf(I)Landroid/graphics/Color; -HSPLandroid/graphics/ColorFilter;-><init>()V -HSPLandroid/graphics/ColorFilter;->getNativeInstance()J -HSPLandroid/graphics/ColorMatrixColorFilter;-><init>(Landroid/graphics/ColorMatrix;)V -HSPLandroid/graphics/ColorMatrixColorFilter;-><init>([F)V -HSPLandroid/graphics/ColorMatrixColorFilter;->createNativeInstance()J -HSPLandroid/graphics/ColorSpace$Named;->values()[Landroid/graphics/ColorSpace$Named; -HSPLandroid/graphics/ColorSpace$Rgb$TransferParameters;-><init>(DDDDDDD)V -HSPLandroid/graphics/ColorSpace$Rgb$TransferParameters;->hashCode()I -HSPLandroid/graphics/ColorSpace$Rgb;-><init>(Ljava/lang/String;[FLandroid/graphics/ColorSpace$Rgb$TransferParameters;)V -HSPLandroid/graphics/ColorSpace$Rgb;-><init>(Ljava/lang/String;[F[F[FLandroid/graphics/ColorSpace$Rgb$TransferParameters;I)V -HSPLandroid/graphics/ColorSpace$Rgb;-><init>(Ljava/lang/String;[F[F[FLjava/util/function/DoubleUnaryOperator;Ljava/util/function/DoubleUnaryOperator;FFLandroid/graphics/ColorSpace$Rgb$TransferParameters;I)V -HSPLandroid/graphics/ColorSpace$Rgb;->area([F)F -HSPLandroid/graphics/ColorSpace$Rgb;->computePrimaries([F)[F -HSPLandroid/graphics/ColorSpace$Rgb;->computeWhitePoint([F)[F -HSPLandroid/graphics/ColorSpace$Rgb;->computeXYZMatrix([F[F)[F -HSPLandroid/graphics/ColorSpace$Rgb;->contains([F[F)Z -HSPLandroid/graphics/ColorSpace$Rgb;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/ColorSpace$Rgb;->getNativeInstance()J -HSPLandroid/graphics/ColorSpace$Rgb;->getTransferParameters()Landroid/graphics/ColorSpace$Rgb$TransferParameters; -HSPLandroid/graphics/ColorSpace$Rgb;->getWhitePoint()[F -HSPLandroid/graphics/ColorSpace$Rgb;->hashCode()I -HSPLandroid/graphics/ColorSpace$Rgb;->isGray([F)Z -HSPLandroid/graphics/ColorSpace$Rgb;->isSrgb()Z -HSPLandroid/graphics/ColorSpace$Rgb;->isSrgb([F[FLjava/util/function/DoubleUnaryOperator;Ljava/util/function/DoubleUnaryOperator;FFI)Z -HSPLandroid/graphics/ColorSpace$Rgb;->isWideGamut([FFF)Z -HSPLandroid/graphics/ColorSpace$Rgb;->xyPrimaries([F)[F -HSPLandroid/graphics/ColorSpace$Rgb;->xyWhitePoint([F)[F -HSPLandroid/graphics/ColorSpace;->-$$Nest$smadaptToIlluminantD50([F[F)[F -HSPLandroid/graphics/ColorSpace;->-$$Nest$sminverse3x3([F)[F -HSPLandroid/graphics/ColorSpace;-><init>(Ljava/lang/String;Landroid/graphics/ColorSpace$Model;I)V -HSPLandroid/graphics/ColorSpace;->adapt(Landroid/graphics/ColorSpace;[FLandroid/graphics/ColorSpace$Adaptation;)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/ColorSpace;->adaptToIlluminantD50([F[F)[F -HSPLandroid/graphics/ColorSpace;->chromaticAdaptation([F[F[F)[F -HSPLandroid/graphics/ColorSpace;->compare(Landroid/graphics/ColorSpace$Rgb$TransferParameters;Landroid/graphics/ColorSpace$Rgb$TransferParameters;)Z -HSPLandroid/graphics/ColorSpace;->compare([F[F)Z -HSPLandroid/graphics/ColorSpace;->get(I)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/ColorSpace;->get(Landroid/graphics/ColorSpace$Named;)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/ColorSpace;->getDataSpace()I -HSPLandroid/graphics/ColorSpace;->getId()I -HSPLandroid/graphics/ColorSpace;->getModel()Landroid/graphics/ColorSpace$Model; -HSPLandroid/graphics/ColorSpace;->getName()Ljava/lang/String; -HSPLandroid/graphics/ColorSpace;->inverse3x3([F)[F -HSPLandroid/graphics/ColorSpace;->match([FLandroid/graphics/ColorSpace$Rgb$TransferParameters;)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/ColorSpace;->mul3x3([F[F)[F -HSPLandroid/graphics/ColorSpace;->mul3x3Diag([F[F)[F -HSPLandroid/graphics/ColorSpace;->mul3x3Float3([F[F)[F -HSPLandroid/graphics/Compatibility;-><clinit>()V -HSPLandroid/graphics/Compatibility;->getTargetSdkVersion()I -HSPLandroid/graphics/Compatibility;->setTargetSdkVersion(I)V -HSPLandroid/graphics/DrawFilter;-><init>()V -HSPLandroid/graphics/FrameInfo;-><init>()V -HSPLandroid/graphics/FrameInfo;->addFlags(J)V -HSPLandroid/graphics/FrameInfo;->markAnimationsStart()V -HSPLandroid/graphics/FrameInfo;->markInputHandlingStart()V -HSPLandroid/graphics/FrameInfo;->markPerformTraversalsStart()V -HSPLandroid/graphics/FrameInfo;->setVsync(JJJJJJ)V -HSPLandroid/graphics/HardwareRenderer$DestroyContextRunnable;-><init>(J)V -HSPLandroid/graphics/HardwareRenderer$DestroyContextRunnable;->run()V -HSPLandroid/graphics/HardwareRenderer$FrameDrawingCallback;->onFrameDraw(IJ)Landroid/graphics/HardwareRenderer$FrameCommitCallback; -HSPLandroid/graphics/HardwareRenderer$FrameRenderRequest;-><init>(Landroid/graphics/HardwareRenderer;)V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer$1;->onRotateGraphicsStatsBuffer()V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->init(J)V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->initDisplayInfo()V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->initGraphicsStats()V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->initSched(J)V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->initUsingContext()V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->requestBuffer()V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->setContext(Landroid/content/Context;)V -HSPLandroid/graphics/HardwareRenderer$ProcessInitializer;->setPackageName(Ljava/lang/String;)V -HSPLandroid/graphics/HardwareRenderer;-><init>()V -HSPLandroid/graphics/HardwareRenderer;->addObserver(Landroid/graphics/HardwareRendererObserver;)V -HSPLandroid/graphics/HardwareRenderer;->allocateBuffers()V -HSPLandroid/graphics/HardwareRenderer;->clearContent()V -HSPLandroid/graphics/HardwareRenderer;->destroy()V -HSPLandroid/graphics/HardwareRenderer;->detachSurfaceTexture(J)V -HSPLandroid/graphics/HardwareRenderer;->dumpGlobalProfileInfo(Ljava/io/FileDescriptor;I)V -HSPLandroid/graphics/HardwareRenderer;->isDrawingEnabled()Z -HSPLandroid/graphics/HardwareRenderer;->loadSystemProperties()Z -HSPLandroid/graphics/HardwareRenderer;->notifyFramePending()V -HSPLandroid/graphics/HardwareRenderer;->onLayerDestroyed(Landroid/graphics/TextureLayer;)V -HSPLandroid/graphics/HardwareRenderer;->pause()Z -HSPLandroid/graphics/HardwareRenderer;->pushLayerUpdate(Landroid/graphics/TextureLayer;)V -HSPLandroid/graphics/HardwareRenderer;->registerVectorDrawableAnimator(Landroid/view/NativeVectorDrawableAnimator;)V -HSPLandroid/graphics/HardwareRenderer;->removeObserver(Landroid/graphics/HardwareRendererObserver;)V -HSPLandroid/graphics/HardwareRenderer;->sendDeviceConfigurationForDebugging(Landroid/content/res/Configuration;)V -HSPLandroid/graphics/HardwareRenderer;->setASurfaceTransactionCallback(Landroid/graphics/HardwareRenderer$ASurfaceTransactionCallback;)V -HSPLandroid/graphics/HardwareRenderer;->setColorMode(I)F -HSPLandroid/graphics/HardwareRenderer;->setContextForInit(Landroid/content/Context;)V -HSPLandroid/graphics/HardwareRenderer;->setDebuggingEnabled(Z)V -HSPLandroid/graphics/HardwareRenderer;->setFPSDivisor(I)V -HSPLandroid/graphics/HardwareRenderer;->setFrameCallback(Landroid/graphics/HardwareRenderer$FrameDrawingCallback;)V -HSPLandroid/graphics/HardwareRenderer;->setFrameCompleteCallback(Landroid/graphics/HardwareRenderer$FrameCompleteCallback;)V -HSPLandroid/graphics/HardwareRenderer;->setHighContrastText(Z)V -HSPLandroid/graphics/HardwareRenderer;->setIsSystemOrPersistent()V -HSPLandroid/graphics/HardwareRenderer;->setLightSourceAlpha(FF)V -HSPLandroid/graphics/HardwareRenderer;->setLightSourceGeometry(FFFF)V -HSPLandroid/graphics/HardwareRenderer;->setName(Ljava/lang/String;)V -HSPLandroid/graphics/HardwareRenderer;->setOpaque(Z)V -HSPLandroid/graphics/HardwareRenderer;->setPackageName(Ljava/lang/String;)V -HSPLandroid/graphics/HardwareRenderer;->setPrepareSurfaceControlForWebviewCallback(Landroid/graphics/HardwareRenderer$PrepareSurfaceControlForWebviewCallback;)V -HSPLandroid/graphics/HardwareRenderer;->setRtAnimationsEnabled(Z)V -HSPLandroid/graphics/HardwareRenderer;->setStopped(Z)V -HSPLandroid/graphics/HardwareRenderer;->setSurface(Landroid/view/Surface;)V -HSPLandroid/graphics/HardwareRenderer;->setSurface(Landroid/view/Surface;Z)V -HSPLandroid/graphics/HardwareRenderer;->setSurfaceControl(Landroid/view/SurfaceControl;Landroid/graphics/BLASTBufferQueue;)V -HSPLandroid/graphics/HardwareRenderer;->setTargetHdrSdrRatio(F)V -HSPLandroid/graphics/HardwareRenderer;->setupDiskCache(Ljava/io/File;)V -HSPLandroid/graphics/HardwareRenderer;->syncAndDrawFrame(Landroid/graphics/FrameInfo;)I -HSPLandroid/graphics/HardwareRenderer;->trimMemory(I)V -HSPLandroid/graphics/HardwareRenderer;->validateAlpha(FLjava/lang/String;)V -HSPLandroid/graphics/HardwareRenderer;->validateFinite(FLjava/lang/String;)V -HSPLandroid/graphics/HardwareRenderer;->validatePositive(FLjava/lang/String;)V -HSPLandroid/graphics/HardwareRendererObserver$$ExternalSyntheticLambda0;-><init>(Landroid/graphics/HardwareRendererObserver;)V -HSPLandroid/graphics/HardwareRendererObserver$$ExternalSyntheticLambda0;->run()V -HSPLandroid/graphics/HardwareRendererObserver;-><init>(Landroid/graphics/HardwareRendererObserver$OnFrameMetricsAvailableListener;[JLandroid/os/Handler;Z)V -HSPLandroid/graphics/HardwareRendererObserver;->getNativeInstance()J -HSPLandroid/graphics/HardwareRendererObserver;->invokeDataAvailable(Ljava/lang/ref/WeakReference;)Z -HSPLandroid/graphics/HardwareRendererObserver;->notifyDataAvailable()V -HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;-><init>(Landroid/content/res/AssetManager$AssetInputStream;Landroid/content/res/Resources;Landroid/util/TypedValue;)V -HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;->createImageDecoder(Z)Landroid/graphics/ImageDecoder; -HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;->getDensity()I -HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;->getResources()Landroid/content/res/Resources; -HSPLandroid/graphics/ImageDecoder$AssetInputStreamSource;->toString()Ljava/lang/String; -HSPLandroid/graphics/ImageDecoder$ImageDecoderSourceTrace;-><init>(Landroid/graphics/ImageDecoder;)V -HSPLandroid/graphics/ImageDecoder$ImageDecoderSourceTrace;->close()V -HSPLandroid/graphics/ImageDecoder$ImageInfo;-><init>(Landroid/util/Size;ZLjava/lang/String;Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/ImageDecoder$ImageInfo;-><init>(Landroid/util/Size;ZLjava/lang/String;Landroid/graphics/ColorSpace;Landroid/graphics/ImageDecoder$ImageInfo-IA;)V -HSPLandroid/graphics/ImageDecoder$InputStreamSource;-><init>(Landroid/content/res/Resources;Ljava/io/InputStream;I)V -HSPLandroid/graphics/ImageDecoder$InputStreamSource;->createImageDecoder(Z)Landroid/graphics/ImageDecoder; -HSPLandroid/graphics/ImageDecoder$InputStreamSource;->getDensity()I -HSPLandroid/graphics/ImageDecoder$InputStreamSource;->getResources()Landroid/content/res/Resources; -HSPLandroid/graphics/ImageDecoder$Source;-><init>()V -HSPLandroid/graphics/ImageDecoder$Source;-><init>(Landroid/graphics/ImageDecoder$Source-IA;)V -HSPLandroid/graphics/ImageDecoder$Source;->computeDstDensity()I -HSPLandroid/graphics/ImageDecoder;->-$$Nest$smdescribeDecoderForTrace(Landroid/graphics/ImageDecoder;)Ljava/lang/String; -HSPLandroid/graphics/ImageDecoder;-><init>(JIIZZ)V -HSPLandroid/graphics/ImageDecoder;->callHeaderDecoded(Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/graphics/ImageDecoder;->checkForExtended()Z -HSPLandroid/graphics/ImageDecoder;->checkState(Z)V -HSPLandroid/graphics/ImageDecoder;->checkSubset(IILandroid/graphics/Rect;)V -HSPLandroid/graphics/ImageDecoder;->close()V -HSPLandroid/graphics/ImageDecoder;->computeDensity(Landroid/graphics/ImageDecoder$Source;)I -HSPLandroid/graphics/ImageDecoder;->createFromAsset(Landroid/content/res/AssetManager$AssetInputStream;ZLandroid/graphics/ImageDecoder$Source;)Landroid/graphics/ImageDecoder; -HSPLandroid/graphics/ImageDecoder;->createFromStream(Ljava/io/InputStream;ZZLandroid/graphics/ImageDecoder$Source;)Landroid/graphics/ImageDecoder; -HSPLandroid/graphics/ImageDecoder;->createSource(Landroid/content/res/Resources;Ljava/io/InputStream;I)Landroid/graphics/ImageDecoder$Source; -HSPLandroid/graphics/ImageDecoder;->decodeBitmap(Landroid/graphics/ImageDecoder$Source;Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/ImageDecoder;->decodeBitmapImpl(Landroid/graphics/ImageDecoder$Source;Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;)Landroid/graphics/Bitmap; -HSPLandroid/graphics/ImageDecoder;->decodeBitmapInternal()Landroid/graphics/Bitmap; -HSPLandroid/graphics/ImageDecoder;->decodeDrawable(Landroid/graphics/ImageDecoder$Source;Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/ImageDecoder;->decodeDrawableImpl(Landroid/graphics/ImageDecoder$Source;Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/ImageDecoder;->describeDecoderForTrace(Landroid/graphics/ImageDecoder;)Ljava/lang/String; -HSPLandroid/graphics/ImageDecoder;->finalize()V -HSPLandroid/graphics/ImageDecoder;->getColorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/graphics/ImageDecoder;->getColorSpacePtr()J -HSPLandroid/graphics/ImageDecoder;->getMimeType()Ljava/lang/String; -HSPLandroid/graphics/ImageDecoder;->requestedResize()Z -HSPLandroid/graphics/ImageDecoder;->setAllocator(I)V -HSPLandroid/graphics/ImageDecoder;->setTargetSize(II)V -HSPLandroid/graphics/Insets$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Insets; -HSPLandroid/graphics/Insets$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/graphics/Insets;-><init>(IIII)V -HSPLandroid/graphics/Insets;-><init>(IIIILandroid/graphics/Insets-IA;)V -HSPLandroid/graphics/Insets;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Insets; -HSPLandroid/graphics/Insets;->hashCode()I -HSPLandroid/graphics/Insets;->max(Landroid/graphics/Insets;Landroid/graphics/Insets;)Landroid/graphics/Insets; -HSPLandroid/graphics/Insets;->min(Landroid/graphics/Insets;Landroid/graphics/Insets;)Landroid/graphics/Insets; -HSPLandroid/graphics/Insets;->of(IIII)Landroid/graphics/Insets; -HSPLandroid/graphics/Insets;->of(Landroid/graphics/Rect;)Landroid/graphics/Insets; -HSPLandroid/graphics/Insets;->toRect()Landroid/graphics/Rect; -HSPLandroid/graphics/Insets;->toString()Ljava/lang/String; -HSPLandroid/graphics/Insets;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/graphics/Interpolator;-><init>(II)V -HSPLandroid/graphics/Interpolator;->finalize()V -HSPLandroid/graphics/Interpolator;->setKeyFrame(II[F)V -HSPLandroid/graphics/Interpolator;->setKeyFrame(II[F[F)V -HSPLandroid/graphics/Interpolator;->timeToValues(I[F)Landroid/graphics/Interpolator$Result; -HSPLandroid/graphics/Interpolator;->timeToValues([F)Landroid/graphics/Interpolator$Result; -HSPLandroid/graphics/LeakyTypefaceStorage;->readTypefaceFromParcel(Landroid/os/Parcel;)Landroid/graphics/Typeface; -HSPLandroid/graphics/LeakyTypefaceStorage;->writeTypefaceToParcel(Landroid/graphics/Typeface;Landroid/os/Parcel;)V -HSPLandroid/graphics/LinearGradient;-><init>(FFFFIILandroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/LinearGradient;-><init>(FFFFJJLandroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/LinearGradient;-><init>(FFFF[I[FLandroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/LinearGradient;-><init>(FFFF[J[FLandroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/LinearGradient;-><init>(FFFF[J[FLandroid/graphics/Shader$TileMode;Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/LinearGradient;->createNativeInstance(JZ)J+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb;]Landroid/graphics/LinearGradient;Landroid/graphics/LinearGradient; -HSPLandroid/graphics/MaskFilter;->finalize()V -HSPLandroid/graphics/Matrix;-><init>()V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Matrix;-><init>(Landroid/graphics/Matrix;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Matrix;->checkPointArrays([FI[FII)V -HSPLandroid/graphics/Matrix;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/Matrix;->getValues([F)V -HSPLandroid/graphics/Matrix;->invert(Landroid/graphics/Matrix;)Z -HSPLandroid/graphics/Matrix;->isIdentity()Z -HSPLandroid/graphics/Matrix;->mapPoints([F)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; -HSPLandroid/graphics/Matrix;->mapPoints([FI[FII)V -HSPLandroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; -HSPLandroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;Landroid/graphics/RectF;)Z -HSPLandroid/graphics/Matrix;->ni()J -HSPLandroid/graphics/Matrix;->postConcat(Landroid/graphics/Matrix;)Z -HSPLandroid/graphics/Matrix;->postRotate(F)Z -HSPLandroid/graphics/Matrix;->postRotate(FFF)Z -HSPLandroid/graphics/Matrix;->postScale(FF)Z -HSPLandroid/graphics/Matrix;->postScale(FFFF)Z -HSPLandroid/graphics/Matrix;->postTranslate(FF)Z -HSPLandroid/graphics/Matrix;->preConcat(Landroid/graphics/Matrix;)Z -HSPLandroid/graphics/Matrix;->preRotate(F)Z -HSPLandroid/graphics/Matrix;->preScale(FF)Z -HSPLandroid/graphics/Matrix;->preTranslate(FF)Z -HSPLandroid/graphics/Matrix;->rectStaysRect()Z -HSPLandroid/graphics/Matrix;->reset()V -HSPLandroid/graphics/Matrix;->set(Landroid/graphics/Matrix;)V -HSPLandroid/graphics/Matrix;->setRectToRect(Landroid/graphics/RectF;Landroid/graphics/RectF;Landroid/graphics/Matrix$ScaleToFit;)Z -HSPLandroid/graphics/Matrix;->setRotate(F)V -HSPLandroid/graphics/Matrix;->setRotate(FFF)V -HSPLandroid/graphics/Matrix;->setScale(FF)V -HSPLandroid/graphics/Matrix;->setScale(FFFF)V -HSPLandroid/graphics/Matrix;->setTranslate(FF)V -HSPLandroid/graphics/Matrix;->setValues([F)V -HSPLandroid/graphics/NinePatch$InsetStruct;-><init>(IIIIIIIIFIF)V -HSPLandroid/graphics/NinePatch$InsetStruct;->scaleInsets(IIIIF)Landroid/graphics/Rect; -HSPLandroid/graphics/NinePatch;-><init>(Landroid/graphics/Bitmap;[BLjava/lang/String;)V -HSPLandroid/graphics/NinePatch;->draw(Landroid/graphics/Canvas;Landroid/graphics/Rect;Landroid/graphics/Paint;)V -HSPLandroid/graphics/NinePatch;->finalize()V -HSPLandroid/graphics/NinePatch;->getBitmap()Landroid/graphics/Bitmap; -HSPLandroid/graphics/NinePatch;->getDensity()I -HSPLandroid/graphics/NinePatch;->getHeight()I -HSPLandroid/graphics/NinePatch;->getWidth()I -HSPLandroid/graphics/Outline;-><init>()V -HSPLandroid/graphics/Outline;->isEmpty()Z -HSPLandroid/graphics/Outline;->setAlpha(F)V -HSPLandroid/graphics/Outline;->setConvexPath(Landroid/graphics/Path;)V -HSPLandroid/graphics/Outline;->setEmpty()V+]Landroid/graphics/Path;Landroid/graphics/Path;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Outline;->setOval(IIII)V -HSPLandroid/graphics/Outline;->setOval(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Outline;->setPath(Landroid/graphics/Path;)V -HSPLandroid/graphics/Outline;->setRect(IIII)V -HSPLandroid/graphics/Outline;->setRect(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Outline;->setRoundRect(IIIIF)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Outline;->setRoundRect(Landroid/graphics/Rect;F)V+]Landroid/graphics/Outline;Landroid/graphics/Outline; -HSPLandroid/graphics/Paint$FontMetrics;-><init>()V -HSPLandroid/graphics/Paint$FontMetricsInt;-><init>()V -HSPLandroid/graphics/Paint;-><init>()V -HSPLandroid/graphics/Paint;-><init>(I)V+]Landroid/graphics/Paint;missing_types]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Paint;-><init>(Landroid/graphics/Paint;)V -HSPLandroid/graphics/Paint;->ascent()F -HSPLandroid/graphics/Paint;->descent()F -HSPLandroid/graphics/Paint;->getAlpha()I -HSPLandroid/graphics/Paint;->getColor()I -HSPLandroid/graphics/Paint;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/Paint;->getEndHyphenEdit()I -HSPLandroid/graphics/Paint;->getFlags()I -HSPLandroid/graphics/Paint;->getFontFeatureSettings()Ljava/lang/String; -HSPLandroid/graphics/Paint;->getFontMetrics()Landroid/graphics/Paint$FontMetrics; -HSPLandroid/graphics/Paint;->getFontMetrics(Landroid/graphics/Paint$FontMetrics;)F -HSPLandroid/graphics/Paint;->getFontMetricsInt()Landroid/graphics/Paint$FontMetricsInt; -HSPLandroid/graphics/Paint;->getFontMetricsInt(Landroid/graphics/Paint$FontMetricsInt;)I -HSPLandroid/graphics/Paint;->getFontMetricsInt(Ljava/lang/CharSequence;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V+]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/graphics/Paint;->getFontVariationSettings()Ljava/lang/String; -HSPLandroid/graphics/Paint;->getHinting()I -HSPLandroid/graphics/Paint;->getLetterSpacing()F -HSPLandroid/graphics/Paint;->getMaskFilter()Landroid/graphics/MaskFilter; -HSPLandroid/graphics/Paint;->getNativeInstance()J+]Landroid/graphics/ColorFilter;Landroid/graphics/BlendModeColorFilter;,Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Paint;missing_types]Landroid/graphics/Shader;Landroid/graphics/BitmapShader;,Landroid/graphics/LinearGradient;,Landroid/graphics/drawable/RippleShader; -HSPLandroid/graphics/Paint;->getRunAdvance(Ljava/lang/CharSequence;IIIIZI)F -HSPLandroid/graphics/Paint;->getRunAdvance([CIIIIZI)F -HSPLandroid/graphics/Paint;->getRunCharacterAdvance(Ljava/lang/CharSequence;IIIIZI[FI)F -HSPLandroid/graphics/Paint;->getRunCharacterAdvance([CIIIIZI[FI)F -HSPLandroid/graphics/Paint;->getShader()Landroid/graphics/Shader; -HSPLandroid/graphics/Paint;->getShadowLayerColor()I -HSPLandroid/graphics/Paint;->getShadowLayerDx()F -HSPLandroid/graphics/Paint;->getShadowLayerDy()F -HSPLandroid/graphics/Paint;->getShadowLayerRadius()F -HSPLandroid/graphics/Paint;->getStartHyphenEdit()I -HSPLandroid/graphics/Paint;->getStrokeCap()Landroid/graphics/Paint$Cap; -HSPLandroid/graphics/Paint;->getStrokeJoin()Landroid/graphics/Paint$Join; -HSPLandroid/graphics/Paint;->getStrokeMiter()F -HSPLandroid/graphics/Paint;->getStrokeWidth()F -HSPLandroid/graphics/Paint;->getStyle()Landroid/graphics/Paint$Style; -HSPLandroid/graphics/Paint;->getTextAlign()Landroid/graphics/Paint$Align; -HSPLandroid/graphics/Paint;->getTextBounds(Ljava/lang/CharSequence;IILandroid/graphics/Rect;)V -HSPLandroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V -HSPLandroid/graphics/Paint;->getTextBounds([CIILandroid/graphics/Rect;)V -HSPLandroid/graphics/Paint;->getTextLocale()Ljava/util/Locale; -HSPLandroid/graphics/Paint;->getTextLocales()Landroid/os/LocaleList; -HSPLandroid/graphics/Paint;->getTextRunAdvances([CIIIIZ[FI)F -HSPLandroid/graphics/Paint;->getTextRunCursor(Ljava/lang/CharSequence;IIZII)I -HSPLandroid/graphics/Paint;->getTextRunCursor(Ljava/lang/String;IIZII)I -HSPLandroid/graphics/Paint;->getTextRunCursor([CIIZII)I -HSPLandroid/graphics/Paint;->getTextScaleX()F -HSPLandroid/graphics/Paint;->getTextSize()F -HSPLandroid/graphics/Paint;->getTextSkewX()F -HSPLandroid/graphics/Paint;->getTypeface()Landroid/graphics/Typeface; -HSPLandroid/graphics/Paint;->getUnderlinePosition()F -HSPLandroid/graphics/Paint;->getWordSpacing()F -HSPLandroid/graphics/Paint;->getXfermode()Landroid/graphics/Xfermode; -HSPLandroid/graphics/Paint;->installXfermode(Landroid/graphics/Xfermode;)Landroid/graphics/Xfermode; -HSPLandroid/graphics/Paint;->isAntiAlias()Z -HSPLandroid/graphics/Paint;->isDither()Z -HSPLandroid/graphics/Paint;->isElegantTextHeight()Z -HSPLandroid/graphics/Paint;->isFilterBitmap()Z+]Landroid/graphics/Paint;missing_types -HSPLandroid/graphics/Paint;->measureText(Ljava/lang/CharSequence;II)F -HSPLandroid/graphics/Paint;->measureText(Ljava/lang/String;)F -HSPLandroid/graphics/Paint;->measureText(Ljava/lang/String;II)F -HSPLandroid/graphics/Paint;->reset()V -HSPLandroid/graphics/Paint;->resetElegantTextHeight()V -HSPLandroid/graphics/Paint;->set(Landroid/graphics/Paint;)V -HSPLandroid/graphics/Paint;->setAlpha(I)V -HSPLandroid/graphics/Paint;->setAntiAlias(Z)V -HSPLandroid/graphics/Paint;->setBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/Paint;->setClassVariablesFrom(Landroid/graphics/Paint;)V -HSPLandroid/graphics/Paint;->setColor(I)V -HSPLandroid/graphics/Paint;->setColorFilter(Landroid/graphics/ColorFilter;)Landroid/graphics/ColorFilter; -HSPLandroid/graphics/Paint;->setCompatibilityScaling(F)V -HSPLandroid/graphics/Paint;->setDither(Z)V -HSPLandroid/graphics/Paint;->setElegantTextHeight(Z)V -HSPLandroid/graphics/Paint;->setEndHyphenEdit(I)V -HSPLandroid/graphics/Paint;->setFakeBoldText(Z)V -HSPLandroid/graphics/Paint;->setFilterBitmap(Z)V -HSPLandroid/graphics/Paint;->setFlags(I)V -HSPLandroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V -HSPLandroid/graphics/Paint;->setLetterSpacing(F)V -HSPLandroid/graphics/Paint;->setMaskFilter(Landroid/graphics/MaskFilter;)Landroid/graphics/MaskFilter; -HSPLandroid/graphics/Paint;->setPathEffect(Landroid/graphics/PathEffect;)Landroid/graphics/PathEffect; -HSPLandroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; -HSPLandroid/graphics/Paint;->setShadowLayer(FFFI)V -HSPLandroid/graphics/Paint;->setShadowLayer(FFFJ)V+]Landroid/graphics/ColorSpace;Landroid/graphics/ColorSpace$Rgb; -HSPLandroid/graphics/Paint;->setStartHyphenEdit(I)V -HSPLandroid/graphics/Paint;->setStrokeCap(Landroid/graphics/Paint$Cap;)V -HSPLandroid/graphics/Paint;->setStrokeJoin(Landroid/graphics/Paint$Join;)V -HSPLandroid/graphics/Paint;->setStrokeMiter(F)V -HSPLandroid/graphics/Paint;->setStrokeWidth(F)V -HSPLandroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V -HSPLandroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V -HSPLandroid/graphics/Paint;->setTextLocales(Landroid/os/LocaleList;)V+]Landroid/os/LocaleList;Landroid/os/LocaleList; -HSPLandroid/graphics/Paint;->setTextScaleX(F)V -HSPLandroid/graphics/Paint;->setTextSize(F)V -HSPLandroid/graphics/Paint;->setTextSkewX(F)V -HSPLandroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface; -HSPLandroid/graphics/Paint;->setUnderlineText(Z)V -HSPLandroid/graphics/Paint;->setXfermode(Landroid/graphics/Xfermode;)Landroid/graphics/Xfermode; -HSPLandroid/graphics/Paint;->syncTextLocalesWithMinikin()V+]Landroid/os/LocaleList;Landroid/os/LocaleList;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/graphics/PaintFlagsDrawFilter;-><init>(II)V -HSPLandroid/graphics/Path;-><init>()V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Path;-><init>(Landroid/graphics/Path;)V -HSPLandroid/graphics/Path;->addArc(FFFFFF)V -HSPLandroid/graphics/Path;->addArc(Landroid/graphics/RectF;FF)V -HSPLandroid/graphics/Path;->addCircle(FFFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addOval(FFFFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addOval(Landroid/graphics/RectF;Landroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addPath(Landroid/graphics/Path;Landroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; -HSPLandroid/graphics/Path;->addRect(FFFFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addRect(Landroid/graphics/RectF;Landroid/graphics/Path$Direction;)V+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->addRoundRect(FFFFFFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addRoundRect(FFFF[FLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;[FLandroid/graphics/Path$Direction;)V -HSPLandroid/graphics/Path;->approximate(F)[F -HSPLandroid/graphics/Path;->arcTo(FFFFFFZ)V -HSPLandroid/graphics/Path;->arcTo(Landroid/graphics/RectF;FF)V -HSPLandroid/graphics/Path;->arcTo(Landroid/graphics/RectF;FFZ)V+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->close()V -HSPLandroid/graphics/Path;->computeBounds(Landroid/graphics/RectF;Z)V+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->cubicTo(FFFFFF)V -HSPLandroid/graphics/Path;->getFillType()Landroid/graphics/Path$FillType; -HSPLandroid/graphics/Path;->isConvex()Z -HSPLandroid/graphics/Path;->isEmpty()Z -HSPLandroid/graphics/Path;->lineTo(FF)V -HSPLandroid/graphics/Path;->moveTo(FF)V -HSPLandroid/graphics/Path;->offset(FF)V -HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->op(Landroid/graphics/Path;Landroid/graphics/Path;Landroid/graphics/Path$Op;)Z+]Landroid/graphics/Path$Op;Landroid/graphics/Path$Op; -HSPLandroid/graphics/Path;->rLineTo(FF)V -HSPLandroid/graphics/Path;->readOnlyNI()J -HSPLandroid/graphics/Path;->reset()V+]Landroid/graphics/Path;Landroid/graphics/Path; -HSPLandroid/graphics/Path;->rewind()V -HSPLandroid/graphics/Path;->set(Landroid/graphics/Path;)V -HSPLandroid/graphics/Path;->setFillType(Landroid/graphics/Path$FillType;)V -HSPLandroid/graphics/Path;->transform(Landroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; -HSPLandroid/graphics/Path;->transform(Landroid/graphics/Matrix;Landroid/graphics/Path;)V -HSPLandroid/graphics/PathMeasure;-><init>()V -HSPLandroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V -HSPLandroid/graphics/PathMeasure;->finalize()V -HSPLandroid/graphics/PathMeasure;->getLength()F -HSPLandroid/graphics/PathMeasure;->getPosTan(F[F[F)Z -HSPLandroid/graphics/PathMeasure;->setPath(Landroid/graphics/Path;Z)V -HSPLandroid/graphics/Picture;-><init>()V -HSPLandroid/graphics/Picture;->beginRecording(II)Landroid/graphics/Canvas; -HSPLandroid/graphics/Picture;->close()V -HSPLandroid/graphics/Picture;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/Picture;->endRecording()V -HSPLandroid/graphics/Picture;->finalize()V -HSPLandroid/graphics/Picture;->getHeight()I -HSPLandroid/graphics/Picture;->getWidth()I -HSPLandroid/graphics/PixelFormat;->formatHasAlpha(I)Z -HSPLandroid/graphics/Point$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Point; -HSPLandroid/graphics/Point$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/graphics/Point;-><init>()V -HSPLandroid/graphics/Point;-><init>(II)V -HSPLandroid/graphics/Point;-><init>(Landroid/graphics/Point;)V -HSPLandroid/graphics/Point;->equals(II)Z -HSPLandroid/graphics/Point;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Point; -HSPLandroid/graphics/Point;->hashCode()I -HSPLandroid/graphics/Point;->offset(II)V -HSPLandroid/graphics/Point;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/graphics/Point;->set(II)V -HSPLandroid/graphics/Point;->set(Landroid/graphics/Point;)V -HSPLandroid/graphics/Point;->toString()Ljava/lang/String; -HSPLandroid/graphics/PointF;-><init>()V -HSPLandroid/graphics/PointF;-><init>(FF)V -HSPLandroid/graphics/PointF;->equals(FF)Z -HSPLandroid/graphics/PointF;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/PointF; -HSPLandroid/graphics/PointF;->length()F -HSPLandroid/graphics/PointF;->length(FF)F -HSPLandroid/graphics/PointF;->set(FF)V -HSPLandroid/graphics/PointF;->set(Landroid/graphics/PointF;)V -HSPLandroid/graphics/PorterDuffColorFilter;-><init>(ILandroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/PorterDuffColorFilter;->createNativeInstance()J -HSPLandroid/graphics/PorterDuffColorFilter;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/PorterDuffColorFilter;->getColor()I -HSPLandroid/graphics/PorterDuffColorFilter;->getMode()Landroid/graphics/PorterDuff$Mode; -HSPLandroid/graphics/PorterDuffXfermode;-><init>(Landroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/RadialGradient;-><init>(FFFFFF[J[FLandroid/graphics/Shader$TileMode;Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/RadialGradient;-><init>(FFF[I[FLandroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/RadialGradient;->createNativeInstance(JZ)J -HSPLandroid/graphics/RecordingCanvas;-><init>(Landroid/graphics/RenderNode;II)V -HSPLandroid/graphics/RecordingCanvas;->disableZ()V -HSPLandroid/graphics/RecordingCanvas;->drawRenderNode(Landroid/graphics/RenderNode;)V -HSPLandroid/graphics/RecordingCanvas;->drawRipple(Landroid/graphics/CanvasProperty;Landroid/graphics/CanvasProperty;Landroid/graphics/CanvasProperty;Landroid/graphics/CanvasProperty;Landroid/graphics/CanvasProperty;Landroid/graphics/CanvasProperty;ILandroid/graphics/RuntimeShader;)V -HSPLandroid/graphics/RecordingCanvas;->drawWebViewFunctor(I)V -HSPLandroid/graphics/RecordingCanvas;->enableZ()V -HSPLandroid/graphics/RecordingCanvas;->finishRecording(Landroid/graphics/RenderNode;)V -HSPLandroid/graphics/RecordingCanvas;->getHeight()I -HSPLandroid/graphics/RecordingCanvas;->getWidth()I -HSPLandroid/graphics/RecordingCanvas;->isHardwareAccelerated()Z -HSPLandroid/graphics/RecordingCanvas;->obtain(Landroid/graphics/RenderNode;II)Landroid/graphics/RecordingCanvas;+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/graphics/RecordingCanvas;->recycle()V+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLandroid/graphics/RecordingCanvas;->throwIfCannotDraw(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Rect;+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Rect$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/graphics/Rect$1;Landroid/graphics/Rect$1; -HSPLandroid/graphics/Rect$1;->newArray(I)[Landroid/graphics/Rect; -HSPLandroid/graphics/Rect$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/graphics/Rect;-><init>()V -HSPLandroid/graphics/Rect;-><init>(IIII)V -HSPLandroid/graphics/Rect;-><init>(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Rect;->centerX()I -HSPLandroid/graphics/Rect;->centerY()I -HSPLandroid/graphics/Rect;->contains(II)Z -HSPLandroid/graphics/Rect;->contains(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Rect;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/graphics/Rect; -HSPLandroid/graphics/Rect;->exactCenterX()F -HSPLandroid/graphics/Rect;->exactCenterY()F -HSPLandroid/graphics/Rect;->hashCode()I -HSPLandroid/graphics/Rect;->height()I -HSPLandroid/graphics/Rect;->inset(II)V -HSPLandroid/graphics/Rect;->inset(IIII)V -HSPLandroid/graphics/Rect;->inset(Landroid/graphics/Insets;)V -HSPLandroid/graphics/Rect;->inset(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Rect;->intersect(IIII)Z -HSPLandroid/graphics/Rect;->intersect(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Rect;->intersectUnchecked(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Rect;->intersects(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Rect;->isEmpty()Z -HSPLandroid/graphics/Rect;->isValid()Z -HSPLandroid/graphics/Rect;->offset(II)V -HSPLandroid/graphics/Rect;->offsetTo(II)V -HSPLandroid/graphics/Rect;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/graphics/Rect;->scale(F)V -HSPLandroid/graphics/Rect;->set(IIII)V -HSPLandroid/graphics/Rect;->set(Landroid/graphics/Rect;)V -HSPLandroid/graphics/Rect;->setEmpty()V -HSPLandroid/graphics/Rect;->setIntersect(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Rect;->toShortString(Ljava/lang/StringBuilder;)Ljava/lang/String; -HSPLandroid/graphics/Rect;->toString()Ljava/lang/String; -HSPLandroid/graphics/Rect;->union(IIII)V -HSPLandroid/graphics/Rect;->union(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/Rect;->width()I -HSPLandroid/graphics/Rect;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/graphics/RectF;-><init>()V -HSPLandroid/graphics/RectF;-><init>(FFFF)V -HSPLandroid/graphics/RectF;-><init>(Landroid/graphics/Rect;)V -HSPLandroid/graphics/RectF;-><init>(Landroid/graphics/RectF;)V -HSPLandroid/graphics/RectF;->centerX()F -HSPLandroid/graphics/RectF;->centerY()F -HSPLandroid/graphics/RectF;->contains(FF)Z -HSPLandroid/graphics/RectF;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/RectF;->height()F -HSPLandroid/graphics/RectF;->inset(FF)V -HSPLandroid/graphics/RectF;->intersect(FFFF)Z -HSPLandroid/graphics/RectF;->intersect(Landroid/graphics/RectF;)Z+]Landroid/graphics/RectF;Landroid/graphics/RectF; -HSPLandroid/graphics/RectF;->isEmpty()Z -HSPLandroid/graphics/RectF;->offset(FF)V -HSPLandroid/graphics/RectF;->offsetTo(FF)V -HSPLandroid/graphics/RectF;->round(Landroid/graphics/Rect;)V -HSPLandroid/graphics/RectF;->roundOut(Landroid/graphics/Rect;)V -HSPLandroid/graphics/RectF;->set(FFFF)V -HSPLandroid/graphics/RectF;->set(Landroid/graphics/Rect;)V -HSPLandroid/graphics/RectF;->set(Landroid/graphics/RectF;)V -HSPLandroid/graphics/RectF;->setEmpty()V -HSPLandroid/graphics/RectF;->union(FFFF)V -HSPLandroid/graphics/RectF;->union(Landroid/graphics/RectF;)V+]Landroid/graphics/RectF;Landroid/graphics/RectF; -HSPLandroid/graphics/RectF;->width()F -HSPLandroid/graphics/Region$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/Region; -HSPLandroid/graphics/Region$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/graphics/Region;-><init>()V -HSPLandroid/graphics/Region;-><init>(J)V -HSPLandroid/graphics/Region;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/Region;->finalize()V -HSPLandroid/graphics/Region;->getBounds()Landroid/graphics/Rect; -HSPLandroid/graphics/Region;->op(IIIILandroid/graphics/Region$Op;)Z -HSPLandroid/graphics/Region;->op(Landroid/graphics/Rect;Landroid/graphics/Region$Op;)Z -HSPLandroid/graphics/Region;->op(Landroid/graphics/Region;Landroid/graphics/Region$Op;)Z -HSPLandroid/graphics/Region;->op(Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Region$Op;)Z -HSPLandroid/graphics/Region;->set(IIII)Z -HSPLandroid/graphics/Region;->set(Landroid/graphics/Region;)Z -HSPLandroid/graphics/Region;->setEmpty()V -HSPLandroid/graphics/Region;->setPath(Landroid/graphics/Path;Landroid/graphics/Region;)Z -HSPLandroid/graphics/Region;->union(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/Region;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/graphics/RegionIterator;-><init>(Landroid/graphics/Region;)V -HSPLandroid/graphics/RegionIterator;->finalize()V -HSPLandroid/graphics/RegionIterator;->next(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/RenderNode$CompositePositionUpdateListener;-><init>([Landroid/graphics/RenderNode$PositionUpdateListener;)V -HSPLandroid/graphics/RenderNode$CompositePositionUpdateListener;->positionChanged(JIIII)V -HSPLandroid/graphics/RenderNode$CompositePositionUpdateListener;->positionLost(J)V -HSPLandroid/graphics/RenderNode$CompositePositionUpdateListener;->without(Landroid/graphics/RenderNode$PositionUpdateListener;)Landroid/graphics/RenderNode$CompositePositionUpdateListener; -HSPLandroid/graphics/RenderNode$PositionUpdateListener;->callPositionChanged(Ljava/lang/ref/WeakReference;JIIII)Z -HSPLandroid/graphics/RenderNode$PositionUpdateListener;->callPositionLost(Ljava/lang/ref/WeakReference;J)Z -HSPLandroid/graphics/RenderNode;-><init>(J)V -HSPLandroid/graphics/RenderNode;-><init>(Ljava/lang/String;Landroid/graphics/RenderNode$AnimationHost;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/RenderNode;->addPositionUpdateListener(Landroid/graphics/RenderNode$PositionUpdateListener;)V -HSPLandroid/graphics/RenderNode;->adopt(J)Landroid/graphics/RenderNode; -HSPLandroid/graphics/RenderNode;->beginRecording(II)Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/RenderNode;->clearStretch()Z -HSPLandroid/graphics/RenderNode;->create(Ljava/lang/String;Landroid/graphics/RenderNode$AnimationHost;)Landroid/graphics/RenderNode; -HSPLandroid/graphics/RenderNode;->discardDisplayList()V -HSPLandroid/graphics/RenderNode;->endRecording()V+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas; -HSPLandroid/graphics/RenderNode;->getClipToOutline()Z -HSPLandroid/graphics/RenderNode;->getElevation()F -HSPLandroid/graphics/RenderNode;->getMatrix(Landroid/graphics/Matrix;)V -HSPLandroid/graphics/RenderNode;->getPivotY()F -HSPLandroid/graphics/RenderNode;->getRotationX()F -HSPLandroid/graphics/RenderNode;->getRotationY()F -HSPLandroid/graphics/RenderNode;->getRotationZ()F -HSPLandroid/graphics/RenderNode;->getScaleX()F -HSPLandroid/graphics/RenderNode;->getScaleY()F -HSPLandroid/graphics/RenderNode;->getTranslationX()F -HSPLandroid/graphics/RenderNode;->getTranslationY()F -HSPLandroid/graphics/RenderNode;->getTranslationZ()F -HSPLandroid/graphics/RenderNode;->hasDisplayList()Z -HSPLandroid/graphics/RenderNode;->hasIdentityMatrix()Z -HSPLandroid/graphics/RenderNode;->isAttached()Z -HSPLandroid/graphics/RenderNode;->offsetTopAndBottom(I)Z -HSPLandroid/graphics/RenderNode;->removePositionUpdateListener(Landroid/graphics/RenderNode$PositionUpdateListener;)V -HSPLandroid/graphics/RenderNode;->setAlpha(F)Z -HSPLandroid/graphics/RenderNode;->setAmbientShadowColor(I)Z -HSPLandroid/graphics/RenderNode;->setAnimationMatrix(Landroid/graphics/Matrix;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix; -HSPLandroid/graphics/RenderNode;->setClipToBounds(Z)Z -HSPLandroid/graphics/RenderNode;->setClipToOutline(Z)Z -HSPLandroid/graphics/RenderNode;->setElevation(F)Z -HSPLandroid/graphics/RenderNode;->setForceDarkAllowed(Z)Z -HSPLandroid/graphics/RenderNode;->setHasOverlappingRendering(Z)Z -HSPLandroid/graphics/RenderNode;->setLayerPaint(Landroid/graphics/Paint;)Z -HSPLandroid/graphics/RenderNode;->setLayerType(I)Z -HSPLandroid/graphics/RenderNode;->setLeftTopRightBottom(IIII)Z -HSPLandroid/graphics/RenderNode;->setOutline(Landroid/graphics/Outline;)Z -HSPLandroid/graphics/RenderNode;->setPivotX(F)Z -HSPLandroid/graphics/RenderNode;->setProjectBackwards(Z)Z -HSPLandroid/graphics/RenderNode;->setProjectionReceiver(Z)Z -HSPLandroid/graphics/RenderNode;->setRenderEffect(Landroid/graphics/RenderEffect;)Z -HSPLandroid/graphics/RenderNode;->setScaleX(F)Z -HSPLandroid/graphics/RenderNode;->setScaleY(F)Z -HSPLandroid/graphics/RenderNode;->setSpotShadowColor(I)Z -HSPLandroid/graphics/RenderNode;->setTranslationX(F)Z -HSPLandroid/graphics/RenderNode;->setTranslationY(F)Z -HSPLandroid/graphics/RenderNode;->setUsageHint(I)V -HSPLandroid/graphics/RenderNode;->stretch(FFFF)Z -HSPLandroid/graphics/RuntimeShader$NoImagePreloadHolder;-><clinit>()V -HSPLandroid/graphics/RuntimeShader;-><init>(Ljava/lang/String;)V -HSPLandroid/graphics/RuntimeShader;->createNativeInstance(JZ)J -HSPLandroid/graphics/RuntimeShader;->getNativeShaderBuilder()J -HSPLandroid/graphics/RuntimeShader;->setFloatUniform(Ljava/lang/String;FF)V -HSPLandroid/graphics/RuntimeShader;->setFloatUniform(Ljava/lang/String;FFFFI)V -HSPLandroid/graphics/RuntimeShader;->setInputShader(Ljava/lang/String;Landroid/graphics/Shader;)V -HSPLandroid/graphics/RuntimeShader;->setUniform(Ljava/lang/String;[FZ)V -HSPLandroid/graphics/Shader;-><init>()V -HSPLandroid/graphics/Shader;-><init>(Landroid/graphics/ColorSpace;)V -HSPLandroid/graphics/Shader;->colorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/graphics/Shader;->convertColors([I)[J -HSPLandroid/graphics/Shader;->detectColorSpace([J)Landroid/graphics/ColorSpace; -HSPLandroid/graphics/Shader;->discardNativeInstance()V -HSPLandroid/graphics/Shader;->discardNativeInstanceLocked()V -HSPLandroid/graphics/Shader;->getNativeInstance()J -HSPLandroid/graphics/Shader;->getNativeInstance(Z)J+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Shader;Landroid/graphics/BitmapShader;,Landroid/graphics/LinearGradient;,Landroid/graphics/drawable/RippleShader;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/graphics/Shader;->setLocalMatrix(Landroid/graphics/Matrix;)V -HSPLandroid/graphics/Shader;->shouldDiscardNativeInstance(Z)Z -HSPLandroid/graphics/SurfaceTexture$1;->handleMessage(Landroid/os/Message;)V -HSPLandroid/graphics/SurfaceTexture;-><init>(I)V -HSPLandroid/graphics/SurfaceTexture;->finalize()V -HSPLandroid/graphics/SurfaceTexture;->isSingleBuffered()Z -HSPLandroid/graphics/SurfaceTexture;->postEventFromNative(Ljava/lang/ref/WeakReference;)V -HSPLandroid/graphics/SurfaceTexture;->release()V -HSPLandroid/graphics/SurfaceTexture;->setDefaultBufferSize(II)V -HSPLandroid/graphics/SurfaceTexture;->setOnFrameAvailableListener(Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;)V -HSPLandroid/graphics/SurfaceTexture;->setOnFrameAvailableListener(Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;Landroid/os/Handler;)V -HSPLandroid/graphics/TemporaryBuffer;->obtain(I)[C -HSPLandroid/graphics/TemporaryBuffer;->recycle([C)V -HSPLandroid/graphics/TextureLayer;-><init>(Landroid/graphics/HardwareRenderer;J)V -HSPLandroid/graphics/TextureLayer;->close()V -HSPLandroid/graphics/TextureLayer;->detachSurfaceTexture()V -HSPLandroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface$Builder;->createAssetUid(Landroid/content/res/AssetManager;Ljava/lang/String;I[Landroid/graphics/fonts/FontVariationAxis;IILjava/lang/String;)Ljava/lang/String;+]Landroid/content/res/AssetManager;Landroid/content/res/AssetManager;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/graphics/Typeface$CustomFallbackBuilder;-><init>(Landroid/graphics/fonts/FontFamily;)V -HSPLandroid/graphics/Typeface$CustomFallbackBuilder;->build()Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface$CustomFallbackBuilder;->setStyle(Landroid/graphics/fonts/FontStyle;)Landroid/graphics/Typeface$CustomFallbackBuilder; -HSPLandroid/graphics/Typeface;-><init>(J)V -HSPLandroid/graphics/Typeface;-><init>(JLjava/lang/String;)V -HSPLandroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->create(Ljava/lang/String;I)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->createFromResources(Landroid/content/res/FontResourcesParser$FamilyResourceEntry;Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->createWeightStyle(Landroid/graphics/Typeface;IZ)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->defaultFromStyle(I)Landroid/graphics/Typeface; -HSPLandroid/graphics/Typeface;->deserializeFontMap(Ljava/nio/ByteBuffer;Ljava/util/Map;)[J -HSPLandroid/graphics/Typeface;->equals(Ljava/lang/Object;)Z -HSPLandroid/graphics/Typeface;->findFromCache(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;+]Landroid/util/LruCache;Landroid/util/LruCache; -HSPLandroid/graphics/Typeface;->getStyle()I -HSPLandroid/graphics/Typeface;->getSystemDefaultTypeface(Ljava/lang/String;)Landroid/graphics/Typeface;+]Ljava/util/Map;Landroid/util/ArrayMap; -HSPLandroid/graphics/Typeface;->getSystemFontFamilyName()Ljava/lang/String; -HSPLandroid/graphics/Typeface;->hasFontFamily(Ljava/lang/String;)Z -HSPLandroid/graphics/Typeface;->readString(Ljava/nio/ByteBuffer;)Ljava/lang/String; -HSPLandroid/graphics/Typeface;->registerGenericFamilyNative(Ljava/lang/String;Landroid/graphics/Typeface;)V -HSPLandroid/graphics/Typeface;->setDefault(Landroid/graphics/Typeface;)V -HSPLandroid/graphics/Typeface;->setSystemFontMap(Landroid/os/SharedMemory;)V -HSPLandroid/graphics/Typeface;->setSystemFontMap(Ljava/util/Map;)V -HSPLandroid/graphics/Xfermode;-><init>()V -HSPLandroid/graphics/animation/RenderNodeAnimator$$ExternalSyntheticLambda0;-><init>(Landroid/graphics/animation/RenderNodeAnimator;)V -HSPLandroid/graphics/animation/RenderNodeAnimator$$ExternalSyntheticLambda0;->run()V -HSPLandroid/graphics/animation/RenderNodeAnimator;-><init>(Landroid/graphics/CanvasProperty;F)V -HSPLandroid/graphics/animation/RenderNodeAnimator;-><init>(Landroid/graphics/CanvasProperty;IF)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->applyInterpolator()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->callOnFinished(Landroid/graphics/animation/RenderNodeAnimator;)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->cancel()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->checkMutable()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->cloneListeners()Ljava/util/ArrayList; -HSPLandroid/graphics/animation/RenderNodeAnimator;->doStart()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->end()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->getNativeAnimator()J -HSPLandroid/graphics/animation/RenderNodeAnimator;->init(J)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->isNativeInterpolator(Landroid/animation/TimeInterpolator;)Z -HSPLandroid/graphics/animation/RenderNodeAnimator;->isRunning()Z -HSPLandroid/graphics/animation/RenderNodeAnimator;->moveToRunningState()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->notifyStartListeners()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->onFinished()V -HSPLandroid/graphics/animation/RenderNodeAnimator;->setDuration(J)Landroid/animation/Animator; -HSPLandroid/graphics/animation/RenderNodeAnimator;->setDuration(J)Landroid/graphics/animation/RenderNodeAnimator; -HSPLandroid/graphics/animation/RenderNodeAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->setStartDelay(J)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->setTarget(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->setTarget(Landroid/graphics/RenderNode;)V -HSPLandroid/graphics/animation/RenderNodeAnimator;->start()V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;-><init>(I)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;-><init>(Landroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;Landroid/graphics/drawable/AdaptiveIconDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;-><init>(Landroid/graphics/drawable/AdaptiveIconDrawable$LayerState;Landroid/graphics/drawable/AdaptiveIconDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->invalidateCache()V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->isStateful()Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AdaptiveIconDrawable$LayerState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;-><init>(Landroid/graphics/drawable/AdaptiveIconDrawable$LayerState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->addLayer(ILandroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->createConstantState(Landroid/graphics/drawable/AdaptiveIconDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/AdaptiveIconDrawable$LayerState; -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getExtraInsetFraction()F -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->inflateLayers(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->invalidateSelf()V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->jumpToCurrentState()V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->updateLayerBounds(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->updateLayerBoundsInternal(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->updateLayerFromTypedArray(Landroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable;Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/AdaptiveIconDrawable;->updateMaskBoundsInternal(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/Animatable2$AnimationCallback;-><init>()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;-><init>(Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;Landroid/graphics/drawable/AnimatedStateListDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->addStateSet([ILandroid/graphics/drawable/Drawable;I)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->addTransition(IILandroid/graphics/drawable/Drawable;Z)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->generateTransitionKey(II)J -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->getKeyframeIdAt(I)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->indexOfKeyframe([I)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->indexOfTransition(II)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->isTransitionReversed(II)Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->mutate()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;->transitionHasReversibleFlag(II)Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedVectorDrawableTransition;->start()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable$AnimatedVectorDrawableTransition;->stop()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;-><init>()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;-><init>(Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;-><init>(Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState;Landroid/content/res/Resources;Landroid/graphics/drawable/AnimatedStateListDrawable-IA;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->cloneConstantState()Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState; -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->cloneConstantState()Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->init()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->jumpToCurrentState()V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->parseItem(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->parseTransition(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)I -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->selectTransition(I)Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->setConstantState(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;)V -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/AnimatedStateListDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$1;-><init>(Landroid/graphics/drawable/AnimatedVectorDrawable;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$1;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$2;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$2;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState$PendingAnimator;-><init>(IFLjava/lang/String;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState$PendingAnimator;->newInstance(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Landroid/animation/Animator; -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;-><init>(Landroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;Landroid/graphics/drawable/Drawable$Callback;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->addPendingAnimator(IFLjava/lang/String;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->addTargetAnimator(Ljava/lang/String;Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->inflatePendingAnimators(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->prepareLocalAnimator(I)Landroid/animation/Animator; -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;->prepareLocalAnimators(Landroid/animation/AnimatorSet;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT$$ExternalSyntheticLambda0;->run()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;-><init>(Landroid/graphics/drawable/AnimatedVectorDrawable;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->callOnFinished(Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;I)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->createNativeChildAnimator(JJLandroid/animation/ObjectAnimator;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->createRTAnimator(Landroid/animation/ObjectAnimator;J)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->createRTAnimatorForFullPath(Landroid/animation/ObjectAnimator;Landroid/graphics/drawable/VectorDrawable$VFullPath;J)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->createRTAnimatorForGroup([Landroid/animation/PropertyValuesHolder;Landroid/animation/ObjectAnimator;Landroid/graphics/drawable/VectorDrawable$VGroup;J)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->createRTAnimatorForPath(Landroid/animation/ObjectAnimator;Landroid/graphics/drawable/VectorDrawable$VPath;J)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->end()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->getAnimatorNativePtr()J -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->getFrameCount(J)I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->handlePendingAction(I)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->init(Landroid/animation/AnimatorSet;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->invalidateOwningView()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->isInfinite()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->isStarted()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->lambda$callOnFinished$0(Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;I)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->parseAnimatorSet(Landroid/animation/AnimatorSet;J)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->pause()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->recordLastSeenTarget(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->setListener(Landroid/animation/Animator$AnimatorListener;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->start()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->startAnimation()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT;->useLastSeenTarget()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->-$$Nest$smnCreateAnimatorSet()J -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->-$$Nest$smshouldIgnoreInvalidAnimation()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;-><init>()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;-><init>(Landroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;-><init>(Landroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState;Landroid/content/res/Resources;Landroid/graphics/drawable/AnimatedVectorDrawable-IA;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->containsSameValueType(Landroid/animation/PropertyValuesHolder;Landroid/util/Property;)Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->ensureAnimatorSet()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->registerAnimationCallback(Landroid/graphics/drawable/Animatable2$AnimationCallback;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->setHotspot(FF)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->shouldIgnoreInvalidAnimation()Z -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->start()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->stop()V -HSPLandroid/graphics/drawable/AnimatedVectorDrawable;->updateAnimatorProperty(Landroid/animation/Animator;Ljava/lang/String;Landroid/graphics/drawable/VectorDrawable;Z)V -HSPLandroid/graphics/drawable/AnimationDrawable$AnimationState;->addFrame(Landroid/graphics/drawable/Drawable;I)V -HSPLandroid/graphics/drawable/AnimationDrawable$AnimationState;->growArray(II)V -HSPLandroid/graphics/drawable/AnimationDrawable$AnimationState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimationDrawable;-><init>()V -HSPLandroid/graphics/drawable/AnimationDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/AnimationDrawable;->cloneConstantState()Landroid/graphics/drawable/AnimationDrawable$AnimationState; -HSPLandroid/graphics/drawable/AnimationDrawable;->cloneConstantState()Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; -HSPLandroid/graphics/drawable/AnimationDrawable;->getDuration(I)I -HSPLandroid/graphics/drawable/AnimationDrawable;->getNumberOfFrames()I -HSPLandroid/graphics/drawable/AnimationDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimationDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/AnimationDrawable;->isRunning()Z -HSPLandroid/graphics/drawable/AnimationDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/AnimationDrawable;->nextFrame(Z)V -HSPLandroid/graphics/drawable/AnimationDrawable;->run()V -HSPLandroid/graphics/drawable/AnimationDrawable;->setConstantState(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;)V -HSPLandroid/graphics/drawable/AnimationDrawable;->setFrame(IZZ)V -HSPLandroid/graphics/drawable/AnimationDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/AnimationDrawable;->start()V -HSPLandroid/graphics/drawable/AnimationDrawable;->stop()V -HSPLandroid/graphics/drawable/AnimationDrawable;->unscheduleSelf(Ljava/lang/Runnable;)V -HSPLandroid/graphics/drawable/BitmapDrawable$$ExternalSyntheticLambda2;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;-><init>(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;-><init>(Landroid/graphics/drawable/BitmapDrawable$BitmapState;)V -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/BitmapDrawable$BitmapState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/BitmapDrawable;-><init>()V -HSPLandroid/graphics/drawable/BitmapDrawable;-><init>(Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/drawable/BitmapDrawable;-><init>(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/drawable/BitmapDrawable;-><init>(Landroid/graphics/drawable/BitmapDrawable$BitmapState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/BitmapDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/BitmapDrawable;->computeBitmapSize()V -HSPLandroid/graphics/drawable/BitmapDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap; -HSPLandroid/graphics/drawable/BitmapDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/BitmapDrawable;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/drawable/BitmapDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/BitmapDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/BitmapDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/BitmapDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/BitmapDrawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->init(Landroid/graphics/drawable/BitmapDrawable$BitmapState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/BitmapDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/BitmapDrawable;->lambda$updateStateFromTypedArray$2(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/BitmapDrawable;->needMirroring()Z -HSPLandroid/graphics/drawable/BitmapDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/BitmapDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setBitmap(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setDither(Z)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setGravity(I)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setMipMap(Z)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setTileModeXY(Landroid/graphics/Shader$TileMode;Landroid/graphics/Shader$TileMode;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->updateDstRectAndInsetsIfDirty()V -HSPLandroid/graphics/drawable/BitmapDrawable;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/BitmapDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;I)V -HSPLandroid/graphics/drawable/BitmapDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ClipDrawable$ClipState;-><init>(Landroid/graphics/drawable/ClipDrawable$ClipState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ClipDrawable$ClipState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ClipDrawable;-><init>(Landroid/graphics/drawable/ClipDrawable$ClipState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ClipDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/ClipDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/ClipDrawable;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/ClipDrawable;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/ClipDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ClipDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;-><init>()V -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;-><init>(Landroid/graphics/drawable/ColorDrawable$ColorState;)V -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ColorDrawable$ColorState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ColorDrawable;-><init>()V -HSPLandroid/graphics/drawable/ColorDrawable;-><init>(I)V -HSPLandroid/graphics/drawable/ColorDrawable;-><init>(Landroid/graphics/drawable/ColorDrawable$ColorState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ColorDrawable;-><init>(Landroid/graphics/drawable/ColorDrawable$ColorState;Landroid/content/res/Resources;Landroid/graphics/drawable/ColorDrawable-IA;)V -HSPLandroid/graphics/drawable/ColorDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/ColorDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/ColorDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/drawable/ColorDrawable;Landroid/graphics/drawable/ColorDrawable; -HSPLandroid/graphics/drawable/ColorDrawable;->getAlpha()I -HSPLandroid/graphics/drawable/ColorDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/ColorDrawable;->getColor()I -HSPLandroid/graphics/drawable/ColorDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/ColorDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/ColorDrawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/ColorDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/ColorDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/ColorDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ColorDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/ColorDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/ColorDrawable;->setColor(I)V -HSPLandroid/graphics/drawable/ColorDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/ColorDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/ColorDrawable;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ColorDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/Drawable$ConstantState;-><init>()V -HSPLandroid/graphics/drawable/Drawable$ConstantState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/Drawable$ConstantState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable$ConstantState;->newDrawable(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;-><init>()V -HSPLandroid/graphics/drawable/Drawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/Drawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/Drawable;->clearColorFilter()V -HSPLandroid/graphics/drawable/Drawable;->clearMutated()V -HSPLandroid/graphics/drawable/Drawable;->copyBounds(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/graphics/drawable/Drawable;->createFromXmlForDensity(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;->createFromXmlInner(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;->createFromXmlInnerForDensity(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; -HSPLandroid/graphics/drawable/Drawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/graphics/drawable/Drawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/Drawable;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/drawable/Drawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/Drawable;->getCurrent()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;->getDirtyBounds()Landroid/graphics/Rect; -HSPLandroid/graphics/drawable/Drawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/Drawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/Drawable;->getLayoutDirection()I -HSPLandroid/graphics/drawable/Drawable;->getLevel()I -HSPLandroid/graphics/drawable/Drawable;->getMinimumHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->getMinimumWidth()I+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable; -HSPLandroid/graphics/drawable/Drawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/Drawable;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/Drawable;->getState()[I -HSPLandroid/graphics/drawable/Drawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/Drawable;->inflateWithAttributes(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/TypedArray;I)V -HSPLandroid/graphics/drawable/Drawable;->invalidateSelf()V+]Landroid/graphics/drawable/Drawable$Callback;missing_types]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->isProjected()Z -HSPLandroid/graphics/drawable/Drawable;->isStateful()Z -HSPLandroid/graphics/drawable/Drawable;->isVisible()Z -HSPLandroid/graphics/drawable/Drawable;->jumpToCurrentState()V -HSPLandroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Drawable;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; -HSPLandroid/graphics/drawable/Drawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/Drawable;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/Drawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/Drawable;->parseBlendMode(ILandroid/graphics/BlendMode;)Landroid/graphics/BlendMode; -HSPLandroid/graphics/drawable/Drawable;->resolveDensity(Landroid/content/res/Resources;I)I+]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/graphics/drawable/Drawable;->resolveOpacity(II)I -HSPLandroid/graphics/drawable/Drawable;->scaleFromDensity(FII)F -HSPLandroid/graphics/drawable/Drawable;->scaleFromDensity(IIIZ)I -HSPLandroid/graphics/drawable/Drawable;->scheduleSelf(Ljava/lang/Runnable;J)V -HSPLandroid/graphics/drawable/Drawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/Drawable;->setBounds(IIII)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->setBounds(Landroid/graphics/Rect;)V+]Landroid/graphics/drawable/Drawable;megamorphic_types -HSPLandroid/graphics/drawable/Drawable;->setCallback(Landroid/graphics/drawable/Drawable$Callback;)V -HSPLandroid/graphics/drawable/Drawable;->setChangingConfigurations(I)V -HSPLandroid/graphics/drawable/Drawable;->setColorFilter(ILandroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/drawable/Drawable;->setDither(Z)V -HSPLandroid/graphics/drawable/Drawable;->setHotspot(FF)V -HSPLandroid/graphics/drawable/Drawable;->setLayoutDirection(I)Z -HSPLandroid/graphics/drawable/Drawable;->setLevel(I)Z -HSPLandroid/graphics/drawable/Drawable;->setSrcDensityOverride(I)V -HSPLandroid/graphics/drawable/Drawable;->setState([I)Z+]Landroid/graphics/drawable/Drawable;megamorphic_types -HSPLandroid/graphics/drawable/Drawable;->setTint(I)V -HSPLandroid/graphics/drawable/Drawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/Drawable;->setTintMode(Landroid/graphics/PorterDuff$Mode;)V -HSPLandroid/graphics/drawable/Drawable;->setVisible(ZZ)Z+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/Drawable;->unscheduleSelf(Ljava/lang/Runnable;)V -HSPLandroid/graphics/drawable/Drawable;->updateBlendModeFilter(Landroid/graphics/BlendModeColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/BlendMode;)Landroid/graphics/BlendModeColorFilter;+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/BlendModeColorFilter;Landroid/graphics/BlendModeColorFilter;]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable;,Landroid/graphics/drawable/ShapeDrawable;,Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/Drawable;->updateTintFilter(Landroid/graphics/PorterDuffColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuffColorFilter; -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>()V -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>(Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback-IA;)V -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->unwrap()Landroid/graphics/drawable/Drawable$Callback; -HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->wrap(Landroid/graphics/drawable/Drawable$Callback;)Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;-><init>(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;Landroid/graphics/drawable/DrawableContainer;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->addChild(Landroid/graphics/drawable/Drawable;)I -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->canConstantState()Z -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->clearMutated()V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->computeConstantSize()V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->createAllFutures()V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getCapacity()I -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getChild(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getChildCount()I -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getChildren()[Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getConstantPadding()Landroid/graphics/Rect; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->getOpacity()I -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->invalidateCache()V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->isConstantSize()Z -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->isStateful()Z -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->mutate()V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->prepareDrawable(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->setConstantSize(Z)V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->setEnterFadeDuration(I)V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->setExitFadeDuration(I)V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->setVariablePadding(Z)V -HSPLandroid/graphics/drawable/DrawableContainer$DrawableContainerState;->updateDensity(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/DrawableContainer;-><init>()V -HSPLandroid/graphics/drawable/DrawableContainer;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableContainer;->canApplyTheme()Z -HSPLandroid/graphics/drawable/DrawableContainer;->clearMutated()V -HSPLandroid/graphics/drawable/DrawableContainer;->cloneConstantState()Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; -HSPLandroid/graphics/drawable/DrawableContainer;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/DrawableContainer;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/DrawableContainer;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/DrawableContainer;->getCurrent()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableContainer;->getCurrentIndex()I -HSPLandroid/graphics/drawable/DrawableContainer;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/DrawableContainer;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/DrawableContainer;->getMinimumHeight()I -HSPLandroid/graphics/drawable/DrawableContainer;->getMinimumWidth()I -HSPLandroid/graphics/drawable/DrawableContainer;->getOpacity()I -HSPLandroid/graphics/drawable/DrawableContainer;->getOpticalInsets()Landroid/graphics/Insets; -HSPLandroid/graphics/drawable/DrawableContainer;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/DrawableContainer;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/DrawableContainer;->initializeDrawableForDisplay(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;]Landroid/graphics/drawable/DrawableContainer;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/StateListDrawable;,Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable; -HSPLandroid/graphics/drawable/DrawableContainer;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/DrawableContainer;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/DrawableContainer;->isStateful()Z -HSPLandroid/graphics/drawable/DrawableContainer;->jumpToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/DrawableContainer;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableContainer;->needsMirroring()Z -HSPLandroid/graphics/drawable/DrawableContainer;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/DrawableContainer;->onStateChange([I)Z -HSPLandroid/graphics/drawable/DrawableContainer;->selectDrawable(I)Z -HSPLandroid/graphics/drawable/DrawableContainer;->setAlpha(I)V -HSPLandroid/graphics/drawable/DrawableContainer;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/DrawableContainer;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/DrawableContainer;->setConstantState(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;)V -HSPLandroid/graphics/drawable/DrawableContainer;->setDither(Z)V -HSPLandroid/graphics/drawable/DrawableContainer;->setHotspot(FF)V -HSPLandroid/graphics/drawable/DrawableContainer;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/DrawableContainer;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/DrawableContainer;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/DrawableContainer;->updateDensity(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/DrawableInflater;-><init>(Landroid/content/res/Resources;Ljava/lang/ClassLoader;)V -HSPLandroid/graphics/drawable/DrawableInflater;->inflateFromClass(Ljava/lang/String;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableInflater;->inflateFromTag(Ljava/lang/String;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableInflater;->inflateFromXmlForDensity(Ljava/lang/String;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->-$$Nest$fputmThemeAttrs(Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;[I)V -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;-><init>(Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->canConstantState()Z -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->onDensityChanged(II)V -HSPLandroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;->setDensity(I)V -HSPLandroid/graphics/drawable/DrawableWrapper;-><init>(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/DrawableWrapper;-><init>(Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->canApplyTheme()Z -HSPLandroid/graphics/drawable/DrawableWrapper;->clearMutated()V -HSPLandroid/graphics/drawable/DrawableWrapper;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->getChangingConfigurations()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState;Landroid/graphics/drawable/InsetDrawable$InsetState; -HSPLandroid/graphics/drawable/DrawableWrapper;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/drawable/DrawableWrapper;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/DrawableWrapper;->getDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableWrapper;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/DrawableWrapper;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/DrawableWrapper;->getOpacity()I -HSPLandroid/graphics/drawable/DrawableWrapper;->getPadding(Landroid/graphics/Rect;)Z+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/DrawableWrapper;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->inflateChildDrawable(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable$Callback;Landroid/graphics/drawable/RippleDrawable;]Landroid/graphics/drawable/DrawableWrapper;Landroid/graphics/drawable/InsetDrawable; -HSPLandroid/graphics/drawable/DrawableWrapper;->isStateful()Z -HSPLandroid/graphics/drawable/DrawableWrapper;->jumpToCurrentState()V -HSPLandroid/graphics/drawable/DrawableWrapper;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/DrawableWrapper;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/DrawableWrapper;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/DrawableWrapper;->onStateChange([I)Z+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper;missing_types -HSPLandroid/graphics/drawable/DrawableWrapper;->setAlpha(I)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/DrawableWrapper;missing_types -HSPLandroid/graphics/drawable/DrawableWrapper;->setHotspot(FF)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/DrawableWrapper;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/DrawableWrapper;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->-$$Nest$mcomputeOpacity(Landroid/graphics/drawable/GradientDrawable$GradientState;)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;-><init>(Landroid/graphics/drawable/GradientDrawable$GradientState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;-><init>(Landroid/graphics/drawable/GradientDrawable$Orientation;[I)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->computeOpacity()V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->hasCenterColor()Z -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setCornerRadii([F)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setCornerRadius(F)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setDensity(I)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setGradientColors([I)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setSolidColors(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/GradientDrawable$GradientState;->setStroke(ILandroid/content/res/ColorStateList;FF)V -HSPLandroid/graphics/drawable/GradientDrawable;-><init>()V -HSPLandroid/graphics/drawable/GradientDrawable;-><init>(Landroid/graphics/drawable/GradientDrawable$GradientState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/GradientDrawable;-><init>(Landroid/graphics/drawable/GradientDrawable$GradientState;Landroid/content/res/Resources;Landroid/graphics/drawable/GradientDrawable-IA;)V -HSPLandroid/graphics/drawable/GradientDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/GradientDrawable;->applyThemeChildElements(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/GradientDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/GradientDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Paint;Landroid/graphics/Paint; -HSPLandroid/graphics/drawable/GradientDrawable;->ensureValidRect()Z+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/graphics/drawable/GradientDrawable;Landroid/graphics/drawable/GradientDrawable; -HSPLandroid/graphics/drawable/GradientDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/GradientDrawable;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/drawable/GradientDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/GradientDrawable;->getFloatOrFraction(Landroid/content/res/TypedArray;IF)F -HSPLandroid/graphics/drawable/GradientDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/GradientDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/GradientDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/GradientDrawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/GradientDrawable;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/GradientDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/GradientDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/GradientDrawable;->isOpaque(I)Z -HSPLandroid/graphics/drawable/GradientDrawable;->isOpaqueForState()Z -HSPLandroid/graphics/drawable/GradientDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/GradientDrawable;->modulateAlpha(I)I -HSPLandroid/graphics/drawable/GradientDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/GradientDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/GradientDrawable;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/GradientDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/GradientDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/GradientDrawable;->setColor(I)V -HSPLandroid/graphics/drawable/GradientDrawable;->setColor(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/GradientDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/GradientDrawable;->setCornerRadii([F)V -HSPLandroid/graphics/drawable/GradientDrawable;->setCornerRadius(F)V -HSPLandroid/graphics/drawable/GradientDrawable;->setDither(Z)V -HSPLandroid/graphics/drawable/GradientDrawable;->setShape(I)V -HSPLandroid/graphics/drawable/GradientDrawable;->setStroke(II)V -HSPLandroid/graphics/drawable/GradientDrawable;->setStroke(IIFF)V -HSPLandroid/graphics/drawable/GradientDrawable;->setStroke(ILandroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/GradientDrawable;->setStroke(ILandroid/content/res/ColorStateList;FF)V -HSPLandroid/graphics/drawable/GradientDrawable;->setStrokeInternal(IIFF)V -HSPLandroid/graphics/drawable/GradientDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/GradientDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateDrawableCorners(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableGradient(Landroid/content/res/Resources;Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawablePadding(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableSize(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableSolid(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateGradientDrawableStroke(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/GradientDrawable;->updateLocalState(Landroid/content/res/Resources;)V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/drawable/GradientDrawable;Landroid/graphics/drawable/GradientDrawable; -HSPLandroid/graphics/drawable/GradientDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/Icon$1;->createFromParcel(Landroid/os/Parcel;)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/Icon;-><init>(I)V -HSPLandroid/graphics/drawable/Icon;-><init>(Landroid/os/Parcel;)V -HSPLandroid/graphics/drawable/Icon;->createWithAdaptiveBitmap(Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon;->createWithBitmap(Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon;->createWithResource(Landroid/content/Context;I)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon;->createWithResource(Ljava/lang/String;I)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon;->getBitmap()Landroid/graphics/Bitmap; -HSPLandroid/graphics/drawable/Icon;->getResId()I -HSPLandroid/graphics/drawable/Icon;->getResPackage()Ljava/lang/String; -HSPLandroid/graphics/drawable/Icon;->getResources()Landroid/content/res/Resources; -HSPLandroid/graphics/drawable/Icon;->getType()I -HSPLandroid/graphics/drawable/Icon;->getUriString()Ljava/lang/String; -HSPLandroid/graphics/drawable/Icon;->hasTint()Z -HSPLandroid/graphics/drawable/Icon;->loadDrawable(Landroid/content/Context;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Icon;->loadDrawableAsUser(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Icon;->loadDrawableInner(Landroid/content/Context;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/Icon;->scaleDownIfNecessary(Landroid/graphics/Bitmap;II)Landroid/graphics/Bitmap; -HSPLandroid/graphics/drawable/Icon;->setBitmap(Landroid/graphics/Bitmap;)V -HSPLandroid/graphics/drawable/Icon;->setTint(I)Landroid/graphics/drawable/Icon; -HSPLandroid/graphics/drawable/Icon;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->-$$Nest$fputmThemeAttrs(Landroid/graphics/drawable/InsetDrawable$InsetState;[I)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue; -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/InsetDrawable$InsetState;->onDensityChanged(II)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetValue;-><init>()V -HSPLandroid/graphics/drawable/InsetDrawable$InsetValue;-><init>(FI)V -HSPLandroid/graphics/drawable/InsetDrawable$InsetValue;->clone()Landroid/graphics/drawable/InsetDrawable$InsetValue; -HSPLandroid/graphics/drawable/InsetDrawable$InsetValue;->getDimension(I)I -HSPLandroid/graphics/drawable/InsetDrawable$InsetValue;->scaleFromDensity(II)V -HSPLandroid/graphics/drawable/InsetDrawable;-><init>()V -HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/Drawable;I)V -HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/Drawable;IIII)V -HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/InsetDrawable;-><init>(Landroid/graphics/drawable/InsetDrawable$InsetState;Landroid/content/res/Resources;Landroid/graphics/drawable/InsetDrawable-IA;)V -HSPLandroid/graphics/drawable/InsetDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/InsetDrawable;->getInset(Landroid/content/res/TypedArray;ILandroid/graphics/drawable/InsetDrawable$InsetValue;)Landroid/graphics/drawable/InsetDrawable$InsetValue; -HSPLandroid/graphics/drawable/InsetDrawable;->getInsets(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue;]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicHeight()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/InsetDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/InsetDrawable;missing_types -HSPLandroid/graphics/drawable/InsetDrawable;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/InsetDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/InsetDrawable;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/InsetDrawable;->onBoundsChange(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/InsetDrawable$InsetValue;Landroid/graphics/drawable/InsetDrawable$InsetValue; -HSPLandroid/graphics/drawable/InsetDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/InsetDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;-><init>(I)V -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;Landroid/graphics/drawable/LayerDrawable;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/Drawable$ConstantState;megamorphic_types]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/LayerDrawable$ChildDrawable;->setDensity(I)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->-$$Nest$fgetmPaddingMode(Landroid/graphics/drawable/LayerDrawable$LayerState;)I -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->-$$Nest$fputmPaddingMode(Landroid/graphics/drawable/LayerDrawable$LayerState;I)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->-$$Nest$fputmThemeAttrs(Landroid/graphics/drawable/LayerDrawable$LayerState;[I)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;-><init>(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/LayerDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->canConstantState()Z -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->getOpacity()I -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->invalidateCache()V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->isStateful()Z -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->onDensityChanged(II)V -HSPLandroid/graphics/drawable/LayerDrawable$LayerState;->setDensity(I)V -HSPLandroid/graphics/drawable/LayerDrawable;-><init>()V -HSPLandroid/graphics/drawable/LayerDrawable;-><init>(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/LayerDrawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/LayerDrawable$LayerState;)V -HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/Drawable;[IIIIII)Landroid/graphics/drawable/LayerDrawable$ChildDrawable;+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->addLayer(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;)I+]Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/RippleDrawable$RippleState; -HSPLandroid/graphics/drawable/LayerDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/LayerDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/LayerDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/LayerDrawable;->computeNestedPadding(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->computeStackedPadding(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->createConstantState(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/LayerDrawable$LayerState; -HSPLandroid/graphics/drawable/LayerDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/LayerDrawable;->ensurePadding()V -HSPLandroid/graphics/drawable/LayerDrawable;->findDrawableByLayerId(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable;->findIndexByLayerId(I)I -HSPLandroid/graphics/drawable/LayerDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/LayerDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/LayerDrawable;->getNumberOfLayers()I -HSPLandroid/graphics/drawable/LayerDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/LayerDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline; -HSPLandroid/graphics/drawable/LayerDrawable;->getPadding(Landroid/graphics/Rect;)Z+]Landroid/graphics/drawable/LayerDrawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/LayerDrawable;->inflateLayers(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/LayerDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/LayerDrawable$LayerState;,Landroid/graphics/drawable/RippleDrawable$RippleState;]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/LayerDrawable;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/LayerDrawable;->isProjected()Z -HSPLandroid/graphics/drawable/LayerDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/LayerDrawable;->jumpToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/LayerDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;Landroid/graphics/drawable/LayerDrawable;,Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/LayerDrawable;->refreshChildPadding(ILandroid/graphics/drawable/LayerDrawable$ChildDrawable;)Z+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->refreshPadding()V -HSPLandroid/graphics/drawable/LayerDrawable;->resolveGravity(IIIII)I -HSPLandroid/graphics/drawable/LayerDrawable;->resumeChildInvalidation()V -HSPLandroid/graphics/drawable/LayerDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/LayerDrawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/LayerDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/LayerDrawable;->setDither(Z)V -HSPLandroid/graphics/drawable/LayerDrawable;->setDrawable(ILandroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/LayerDrawable;->setDrawableByLayerId(ILandroid/graphics/drawable/Drawable;)Z -HSPLandroid/graphics/drawable/LayerDrawable;->setHotspot(FF)V -HSPLandroid/graphics/drawable/LayerDrawable;->setId(II)V -HSPLandroid/graphics/drawable/LayerDrawable;->setLayerInset(IIIII)V -HSPLandroid/graphics/drawable/LayerDrawable;->setPaddingMode(I)V -HSPLandroid/graphics/drawable/LayerDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/LayerDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/LayerDrawable;->setVisible(ZZ)Z+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->suspendChildInvalidation()V -HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerBounds(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerBoundsInternal(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/graphics/drawable/LayerDrawable;missing_types -HSPLandroid/graphics/drawable/LayerDrawable;->updateLayerFromTypedArray(Landroid/graphics/drawable/LayerDrawable$ChildDrawable;Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/LayerDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/NinePatchDrawable$$ExternalSyntheticLambda0;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;-><init>()V -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;-><init>(Landroid/graphics/NinePatch;Landroid/graphics/Rect;Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;-><init>(Landroid/graphics/NinePatch;Landroid/graphics/Rect;Landroid/graphics/Rect;ZZ)V -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;-><init>(Landroid/graphics/drawable/NinePatchDrawable$NinePatchState;)V -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/NinePatchDrawable$NinePatchState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/NinePatchDrawable;-><init>(Landroid/content/res/Resources;Landroid/graphics/Bitmap;[BLandroid/graphics/Rect;Landroid/graphics/Rect;Ljava/lang/String;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;-><init>(Landroid/graphics/drawable/NinePatchDrawable$NinePatchState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/NinePatchDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/NinePatchDrawable;->computeBitmapSize()V -HSPLandroid/graphics/drawable/NinePatchDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->getAlpha()I -HSPLandroid/graphics/drawable/NinePatchDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/NinePatchDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/NinePatchDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/NinePatchDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/NinePatchDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/NinePatchDrawable;->getOpticalInsets()Landroid/graphics/Insets; -HSPLandroid/graphics/drawable/NinePatchDrawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/NinePatchDrawable;->getPaint()Landroid/graphics/Paint; -HSPLandroid/graphics/drawable/NinePatchDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/NinePatchDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/NinePatchDrawable;->lambda$updateStateFromTypedArray$0(Landroid/graphics/Rect;Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/NinePatchDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/NinePatchDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->setDither(Z)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/NinePatchDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$2;-><init>(Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/animation/RenderNodeAnimator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$2;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$3;-><init>(Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$3;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;ILandroid/graphics/drawable/RippleShader;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getColor()I -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getMaxRadius()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getNoisePhase()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getPaint()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getProgress()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getShader()Landroid/graphics/drawable/RippleShader; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getX()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimationProperties;->getY()Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimatorListener;-><init>(Landroid/graphics/drawable/RippleAnimationSession;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimatorListener;->onAnimationCancel(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimatorListener;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$fgetmCurrentAnimation(Landroid/graphics/drawable/RippleAnimationSession;)Landroid/animation/Animator; -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$fgetmLoopAnimation(Landroid/graphics/drawable/RippleAnimationSession;)Landroid/animation/Animator; -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$fgetmOnSessionEnd(Landroid/graphics/drawable/RippleAnimationSession;)Ljava/util/function/Consumer; -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$fputmCurrentAnimation(Landroid/graphics/drawable/RippleAnimationSession;Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$fputmLoopAnimation(Landroid/graphics/drawable/RippleAnimationSession;Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->-$$Nest$monAnimationEnd(Landroid/graphics/drawable/RippleAnimationSession;Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;-><clinit>()V -HSPLandroid/graphics/drawable/RippleAnimationSession;-><init>(Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;Z)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->computeDelay()J -HSPLandroid/graphics/drawable/RippleAnimationSession;->end()V -HSPLandroid/graphics/drawable/RippleAnimationSession;->enter(Landroid/graphics/Canvas;)Landroid/graphics/drawable/RippleAnimationSession; -HSPLandroid/graphics/drawable/RippleAnimationSession;->enterHardware(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->exit(Landroid/graphics/Canvas;)Landroid/graphics/drawable/RippleAnimationSession; -HSPLandroid/graphics/drawable/RippleAnimationSession;->exitHardware(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->getCanvasProperties()Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties; -HSPLandroid/graphics/drawable/RippleAnimationSession;->getProperties()Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties; -HSPLandroid/graphics/drawable/RippleAnimationSession;->notifyUpdate()V -HSPLandroid/graphics/drawable/RippleAnimationSession;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->setForceSoftwareAnimation(Z)Landroid/graphics/drawable/RippleAnimationSession; -HSPLandroid/graphics/drawable/RippleAnimationSession;->setOnAnimationUpdated(Ljava/lang/Runnable;)Landroid/graphics/drawable/RippleAnimationSession; -HSPLandroid/graphics/drawable/RippleAnimationSession;->setOnSessionEnd(Ljava/util/function/Consumer;)Landroid/graphics/drawable/RippleAnimationSession; -HSPLandroid/graphics/drawable/RippleAnimationSession;->startAnimation(Landroid/animation/Animator;Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleAnimationSession;->useRTAnimations(Landroid/graphics/Canvas;)Z -HSPLandroid/graphics/drawable/RippleComponent;->onBoundsChange()V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda0;-><init>(Landroid/graphics/drawable/RippleDrawable;)V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda0;->onAnimationUpdate(Landroid/animation/ValueAnimator;)V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda1;-><init>(Landroid/graphics/drawable/RippleDrawable;)V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda1;->run()V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda2;-><init>(Landroid/graphics/drawable/RippleDrawable;)V -HSPLandroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;-><init>(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/graphics/drawable/RippleDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/RippleDrawable$RippleState;->onDensityChanged(II)V -HSPLandroid/graphics/drawable/RippleDrawable;-><init>()V -HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/content/res/ColorStateList;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/RippleDrawable;missing_types -HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/graphics/drawable/RippleDrawable$RippleState;Landroid/content/res/Resources;)V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;-><init>(Landroid/graphics/drawable/RippleDrawable$RippleState;Landroid/content/res/Resources;Landroid/graphics/drawable/RippleDrawable-IA;)V -HSPLandroid/graphics/drawable/RippleDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/RippleDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/RippleDrawable;->cancelExitingRipples()V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->clearHotspots()V -HSPLandroid/graphics/drawable/RippleDrawable;->computeRadius()F -HSPLandroid/graphics/drawable/RippleDrawable;->createAnimationProperties(FFFFFF)Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties; -HSPLandroid/graphics/drawable/RippleDrawable;->createConstantState(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/LayerDrawable$LayerState; -HSPLandroid/graphics/drawable/RippleDrawable;->createConstantState(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/RippleDrawable$RippleState; -HSPLandroid/graphics/drawable/RippleDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/RippleDrawable;->drawBackgroundAndRipples(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/RippleDrawable;->drawContent(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/RippleDrawable;->drawPatterned(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;]Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;]Landroid/graphics/drawable/RippleDrawable;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/RippleDrawable;->drawPatternedBackground(Landroid/graphics/Canvas;FF)V -HSPLandroid/graphics/drawable/RippleDrawable;->exitPatternedAnimation()V -HSPLandroid/graphics/drawable/RippleDrawable;->exitPatternedBackgroundAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Landroid/graphics/drawable/RippleDrawable;missing_types -HSPLandroid/graphics/drawable/RippleDrawable;->getComputedRadius()I -HSPLandroid/graphics/drawable/RippleDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/RippleDrawable;->getDirtyBounds()Landroid/graphics/Rect;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleDrawable;missing_types -HSPLandroid/graphics/drawable/RippleDrawable;->getMaskType()I -HSPLandroid/graphics/drawable/RippleDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/RippleDrawable;->getOutline(Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/InsetDrawable;,Landroid/graphics/drawable/StateListDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/RippleDrawable;->invalidateSelf()V+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->invalidateSelf(Z)V -HSPLandroid/graphics/drawable/RippleDrawable;->isBounded()Z+]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->isProjected()Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/graphics/drawable/RippleDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/RippleDrawable;->jumpToCurrentState()V -HSPLandroid/graphics/drawable/RippleDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/RippleDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/RippleDrawable;->onHotspotBoundsChanged()V -HSPLandroid/graphics/drawable/RippleDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/RippleDrawable;missing_types -HSPLandroid/graphics/drawable/RippleDrawable;->pruneRipples()V -HSPLandroid/graphics/drawable/RippleDrawable;->setBackgroundActive(ZZZZ)V -HSPLandroid/graphics/drawable/RippleDrawable;->setColor(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/RippleDrawable;->setHotspot(FF)V -HSPLandroid/graphics/drawable/RippleDrawable;->setHotspotBounds(IIII)V -HSPLandroid/graphics/drawable/RippleDrawable;->setPaddingMode(I)V -HSPLandroid/graphics/drawable/RippleDrawable;->setRippleActive(Z)V -HSPLandroid/graphics/drawable/RippleDrawable;->setVisible(ZZ)Z -HSPLandroid/graphics/drawable/RippleDrawable;->startBackgroundAnimation()V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator; -HSPLandroid/graphics/drawable/RippleDrawable;->tryRippleEnter()V -HSPLandroid/graphics/drawable/RippleDrawable;->updateLocalState()V -HSPLandroid/graphics/drawable/RippleDrawable;->updateMaskShaderIfNeeded()V -HSPLandroid/graphics/drawable/RippleDrawable;->updateRipplePaint()Landroid/graphics/Paint;+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/BitmapShader;Landroid/graphics/BitmapShader;]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/graphics/PorterDuffColorFilter;Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties;]Landroid/graphics/drawable/RippleAnimationSession;Landroid/graphics/drawable/RippleAnimationSession;]Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/drawable/RippleDrawable;]Landroid/graphics/drawable/RippleShader;Landroid/graphics/drawable/RippleShader;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/RippleDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/RippleDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/RippleForeground$1;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/graphics/drawable/RippleForeground$2;->get(Landroid/graphics/drawable/RippleForeground;)Ljava/lang/Float; -HSPLandroid/graphics/drawable/RippleForeground$2;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleForeground$2;->setValue(Landroid/graphics/drawable/RippleForeground;F)V -HSPLandroid/graphics/drawable/RippleForeground$2;->setValue(Ljava/lang/Object;F)V -HSPLandroid/graphics/drawable/RippleForeground$3;->get(Landroid/graphics/drawable/RippleForeground;)Ljava/lang/Float; -HSPLandroid/graphics/drawable/RippleForeground$3;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleForeground$3;->setValue(Landroid/graphics/drawable/RippleForeground;F)V -HSPLandroid/graphics/drawable/RippleForeground$3;->setValue(Ljava/lang/Object;F)V -HSPLandroid/graphics/drawable/RippleForeground$4;->get(Landroid/graphics/drawable/RippleForeground;)Ljava/lang/Float; -HSPLandroid/graphics/drawable/RippleForeground$4;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/RippleForeground$4;->setValue(Landroid/graphics/drawable/RippleForeground;F)V -HSPLandroid/graphics/drawable/RippleForeground$4;->setValue(Ljava/lang/Object;F)V -HSPLandroid/graphics/drawable/RippleForeground;-><init>(Landroid/graphics/drawable/RippleDrawable;Landroid/graphics/Rect;FFZ)V -HSPLandroid/graphics/drawable/RippleForeground;->clampStartingPosition()V -HSPLandroid/graphics/drawable/RippleForeground;->draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/RippleForeground;->drawSoftware(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/RippleForeground;->end()V -HSPLandroid/graphics/drawable/RippleForeground;->getBounds(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/RippleForeground;->hasFinishedExit()Z -HSPLandroid/graphics/drawable/RippleForeground;->move(FF)V -HSPLandroid/graphics/drawable/RippleForeground;->onTargetRadiusChanged(F)V -HSPLandroid/graphics/drawable/RippleForeground;->pruneHwFinished()V -HSPLandroid/graphics/drawable/RippleForeground;->pruneSwFinished()V -HSPLandroid/graphics/drawable/RippleForeground;->startHardwareEnter()V -HSPLandroid/graphics/drawable/RippleForeground;->startHardwareExit()V -HSPLandroid/graphics/drawable/RippleForeground;->startPending(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/graphics/drawable/RippleForeground;->startSoftwareEnter()V -HSPLandroid/graphics/drawable/RippleForeground;->startSoftwareExit()V -HSPLandroid/graphics/drawable/RippleForeground;->switchToUiThreadAnimation()V -HSPLandroid/graphics/drawable/RippleShader;-><init>()V -HSPLandroid/graphics/drawable/RippleShader;->setColor(II)V -HSPLandroid/graphics/drawable/RippleShader;->setNoisePhase(F)V -HSPLandroid/graphics/drawable/RippleShader;->setOrigin(FF)V -HSPLandroid/graphics/drawable/RippleShader;->setProgress(F)V -HSPLandroid/graphics/drawable/RippleShader;->setRadius(F)V -HSPLandroid/graphics/drawable/RippleShader;->setResolution(FF)V -HSPLandroid/graphics/drawable/RippleShader;->setShader(Landroid/graphics/Shader;)V -HSPLandroid/graphics/drawable/RippleShader;->setTouch(FF)V -HSPLandroid/graphics/drawable/RotateDrawable$RotateState;-><init>(Landroid/graphics/drawable/RotateDrawable$RotateState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/RotateDrawable$RotateState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/RotateDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/RotateDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/RotateDrawable;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/RotateDrawable;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/RotateDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/RotateDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ScaleDrawable$ScaleState;->-$$Nest$fputmThemeAttrs(Landroid/graphics/drawable/ScaleDrawable$ScaleState;[I)V -HSPLandroid/graphics/drawable/ScaleDrawable$ScaleState;-><init>(Landroid/graphics/drawable/ScaleDrawable$ScaleState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ScaleDrawable$ScaleState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ScaleDrawable;-><init>()V -HSPLandroid/graphics/drawable/ScaleDrawable;-><init>(Landroid/graphics/drawable/ScaleDrawable$ScaleState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->getPercent(Landroid/content/res/TypedArray;IF)F -HSPLandroid/graphics/drawable/ScaleDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->mutateConstantState()Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -HSPLandroid/graphics/drawable/ScaleDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->onLevelChange(I)Z -HSPLandroid/graphics/drawable/ScaleDrawable;->updateLocalState()V -HSPLandroid/graphics/drawable/ScaleDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ScaleDrawable;->verifyRequiredAttributes(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/ShapeDrawable$ShapeState;-><init>(Landroid/graphics/drawable/ShapeDrawable$ShapeState;)V -HSPLandroid/graphics/drawable/ShapeDrawable;-><init>()V -HSPLandroid/graphics/drawable/ShapeDrawable;-><init>(Landroid/graphics/drawable/ShapeDrawable$ShapeState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/ShapeDrawable;-><init>(Landroid/graphics/drawable/shapes/Shape;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->getAlpha()I -HSPLandroid/graphics/drawable/ShapeDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/ShapeDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/ShapeDrawable;->getIntrinsicWidth()I -HSPLandroid/graphics/drawable/ShapeDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/ShapeDrawable;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->getPadding(Landroid/graphics/Rect;)Z -HSPLandroid/graphics/drawable/ShapeDrawable;->getPaint()Landroid/graphics/Paint; -HSPLandroid/graphics/drawable/ShapeDrawable;->isStateful()Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList; -HSPLandroid/graphics/drawable/ShapeDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/ShapeDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->onDraw(Landroid/graphics/drawable/shapes/Shape;Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/ShapeDrawable;->setIntrinsicHeight(I)V -HSPLandroid/graphics/drawable/ShapeDrawable;->setIntrinsicWidth(I)V -HSPLandroid/graphics/drawable/ShapeDrawable;->setShape(Landroid/graphics/drawable/shapes/Shape;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->setTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/graphics/drawable/ShapeDrawable;->updateLocalState()V -HSPLandroid/graphics/drawable/ShapeDrawable;->updateShape()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/ShapeDrawable;Landroid/graphics/drawable/PaintDrawable;]Landroid/graphics/drawable/shapes/Shape;Landroid/graphics/drawable/shapes/OvalShape;,Landroid/graphics/drawable/shapes/RoundRectShape; -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;-><init>(Landroid/graphics/drawable/StateListDrawable$StateListState;Landroid/graphics/drawable/StateListDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->addStateSet([ILandroid/graphics/drawable/Drawable;)I -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->indexOfStateSet([I)I -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->mutate()V -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/StateListDrawable$StateListState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/StateListDrawable;-><init>()V -HSPLandroid/graphics/drawable/StateListDrawable;-><init>(Landroid/graphics/drawable/StateListDrawable$StateListState;)V -HSPLandroid/graphics/drawable/StateListDrawable;-><init>(Landroid/graphics/drawable/StateListDrawable$StateListState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/StateListDrawable;-><init>(Landroid/graphics/drawable/StateListDrawable$StateListState;Landroid/content/res/Resources;Landroid/graphics/drawable/StateListDrawable-IA;)V -HSPLandroid/graphics/drawable/StateListDrawable;->addState([ILandroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/StateListDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/StateListDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/StateListDrawable;->cloneConstantState()Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; -HSPLandroid/graphics/drawable/StateListDrawable;->cloneConstantState()Landroid/graphics/drawable/StateListDrawable$StateListState; -HSPLandroid/graphics/drawable/StateListDrawable;->extractStateSet(Landroid/util/AttributeSet;)[I -HSPLandroid/graphics/drawable/StateListDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/StateListDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/StateListDrawable;->isStateful()Z -HSPLandroid/graphics/drawable/StateListDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/StateListDrawable;->onStateChange([I)Z -HSPLandroid/graphics/drawable/StateListDrawable;->setConstantState(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;)V -HSPLandroid/graphics/drawable/StateListDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/TransitionDrawable$TransitionState;-><init>(Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/graphics/drawable/TransitionDrawable;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/TransitionDrawable$TransitionState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/TransitionDrawable;-><init>([Landroid/graphics/drawable/Drawable;)V -HSPLandroid/graphics/drawable/TransitionDrawable;->createConstantState(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/LayerDrawable$LayerState; -HSPLandroid/graphics/drawable/TransitionDrawable;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/graphics/drawable/TransitionDrawable;->setCrossFadeEnabled(Z)V -HSPLandroid/graphics/drawable/TransitionDrawable;->startTransition(I)V -HSPLandroid/graphics/drawable/VectorDrawable$VClipPath;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable$VClipPath;->getNativePtr()J -HSPLandroid/graphics/drawable/VectorDrawable$VClipPath;->getNativeSize()I -HSPLandroid/graphics/drawable/VectorDrawable$VClipPath;->isStateful()Z -HSPLandroid/graphics/drawable/VectorDrawable$VClipPath;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;-><init>(Landroid/graphics/drawable/VectorDrawable$VFullPath;)V -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->canComplexColorApplyTheme(Landroid/content/res/ComplexColor;)Z -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getFillColor()I -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getNativePtr()J -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getNativeSize()I -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getProperty(Ljava/lang/String;)Landroid/util/Property; -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->getPropertyIndex(Ljava/lang/String;)I -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->inflate(Landroid/content/res/Resources;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->isStateful()Z -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->onStateChange([I)Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/VectorDrawable$VFullPath;Landroid/graphics/drawable/VectorDrawable$VFullPath; -HSPLandroid/graphics/drawable/VectorDrawable$VFullPath;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V+]Landroid/content/res/ComplexColor;Landroid/content/res/ColorStateList;,Landroid/content/res/GradientColor;]Landroid/content/res/GradientColor;Landroid/content/res/GradientColor;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/Shader;Landroid/graphics/LinearGradient;]Ljava/lang/String;Ljava/lang/String;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->-$$Nest$fgetmChangingConfigurations(Landroid/graphics/drawable/VectorDrawable$VGroup;)I -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->-$$Nest$fgetmNativePtr(Landroid/graphics/drawable/VectorDrawable$VGroup;)J -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;-><init>(Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/util/ArrayMap;)V+]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->addChild(Landroid/graphics/drawable/VectorDrawable$VObject;)V+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getGroupName()Ljava/lang/String; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getNativePtr()J -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getNativeSize()I+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->getProperty(Ljava/lang/String;)Landroid/util/Property; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->inflate(Landroid/content/res/Resources;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->isStateful()Z -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->onStateChange([I)Z+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->setTree(Lcom/android/internal/util/VirtualRefBasePtr;)V+]Landroid/graphics/drawable/VectorDrawable$VObject;Landroid/graphics/drawable/VectorDrawable$VClipPath;,Landroid/graphics/drawable/VectorDrawable$VFullPath;,Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/graphics/drawable/VectorDrawable$VGroup;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V -HSPLandroid/graphics/drawable/VectorDrawable$VObject;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable$VObject;->isTreeValid()Z -HSPLandroid/graphics/drawable/VectorDrawable$VObject;->setTree(Lcom/android/internal/util/VirtualRefBasePtr;)V -HSPLandroid/graphics/drawable/VectorDrawable$VPath;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable$VPath;-><init>(Landroid/graphics/drawable/VectorDrawable$VPath;)V -HSPLandroid/graphics/drawable/VectorDrawable$VPath;->getPathName()Ljava/lang/String; -HSPLandroid/graphics/drawable/VectorDrawable$VPath;->getProperty(Ljava/lang/String;)Landroid/util/Property; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->-$$Nest$mcreateNativeTree(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VGroup;)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;-><init>(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;)V+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->applyDensityScaling(II)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->canReuseCache()Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->createNativeTree(Landroid/graphics/drawable/VectorDrawable$VGroup;)V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->createNativeTreeFromCopy(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VGroup;)V+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->finalize()V -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getAlpha()F+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->getNativeRenderer()J+]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->isStateful()Z+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->newDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->onStateChange([I)Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->onTreeConstructionFinished()V+]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setAlpha(F)Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setDensity(I)Z -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->setViewportSize(FF)V+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -HSPLandroid/graphics/drawable/VectorDrawable$VectorDrawableState;->updateCacheStates()V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnAddChild(JJ)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateFullPath()J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateFullPath(J)J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateGroup()J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateGroup(J)J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateTree(J)J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnCreateTreeFromCopy(JJ)J -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnGetFullPathProperties(J[BI)Z -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnGetGroupProperties(J[FI)Z -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnGetRootAlpha(J)F -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnSetName(JLjava/lang/String;)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnSetPathString(JLjava/lang/String;I)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnSetRendererViewportSize(JFF)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnSetRootAlpha(JF)Z -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnUpdateFullPathFillGradient(JJ)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnUpdateFullPathProperties(JFIFIFFFFFIII)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnUpdateFullPathStrokeGradient(JJ)V -HSPLandroid/graphics/drawable/VectorDrawable;->-$$Nest$smnUpdateGroupProperties(JFFFFFFF)V -HSPLandroid/graphics/drawable/VectorDrawable;-><init>()V -HSPLandroid/graphics/drawable/VectorDrawable;-><init>(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/VectorDrawable;-><init>(Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/content/res/Resources;Landroid/graphics/drawable/VectorDrawable-IA;)V -HSPLandroid/graphics/drawable/VectorDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLandroid/graphics/drawable/VectorDrawable;->canApplyTheme()Z -HSPLandroid/graphics/drawable/VectorDrawable;->clearMutated()V -HSPLandroid/graphics/drawable/VectorDrawable;->computeVectorSize()V -HSPLandroid/graphics/drawable/VectorDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/ColorFilter;Landroid/graphics/BlendModeColorFilter;,Landroid/graphics/PorterDuffColorFilter;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable;->getAlpha()I+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -HSPLandroid/graphics/drawable/VectorDrawable;->getChangingConfigurations()I -HSPLandroid/graphics/drawable/VectorDrawable;->getColorFilter()Landroid/graphics/ColorFilter; -HSPLandroid/graphics/drawable/VectorDrawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState; -HSPLandroid/graphics/drawable/VectorDrawable;->getIntrinsicHeight()I -HSPLandroid/graphics/drawable/VectorDrawable;->getIntrinsicWidth()I+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/VectorDrawable;->getNativeTree()J -HSPLandroid/graphics/drawable/VectorDrawable;->getOpacity()I -HSPLandroid/graphics/drawable/VectorDrawable;->getPixelSize()F -HSPLandroid/graphics/drawable/VectorDrawable;->getTargetByName(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/graphics/drawable/VectorDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Lcom/android/internal/util/VirtualRefBasePtr;Lcom/android/internal/util/VirtualRefBasePtr;]Ldalvik/system/VMRuntime;Ldalvik/system/VMRuntime; -HSPLandroid/graphics/drawable/VectorDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V+]Landroid/graphics/drawable/VectorDrawable$VClipPath;Landroid/graphics/drawable/VectorDrawable$VClipPath;]Landroid/graphics/drawable/VectorDrawable$VFullPath;Landroid/graphics/drawable/VectorDrawable$VFullPath;]Landroid/graphics/drawable/VectorDrawable$VGroup;Landroid/graphics/drawable/VectorDrawable$VGroup;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Stack;Ljava/util/Stack;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/graphics/drawable/VectorDrawable;->isAutoMirrored()Z -HSPLandroid/graphics/drawable/VectorDrawable;->isStateful()Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -HSPLandroid/graphics/drawable/VectorDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLandroid/graphics/drawable/VectorDrawable;->needMirroring()Z -HSPLandroid/graphics/drawable/VectorDrawable;->onStateChange([I)Z+]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/VectorDrawable;->setAllowCaching(Z)V -HSPLandroid/graphics/drawable/VectorDrawable;->setAlpha(I)V -HSPLandroid/graphics/drawable/VectorDrawable;->setAutoMirrored(Z)V -HSPLandroid/graphics/drawable/VectorDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/graphics/drawable/VectorDrawable;->setTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/graphics/drawable/VectorDrawable;->setTintList(Landroid/content/res/ColorStateList;)V+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/VectorDrawable;->updateColorFilters(Landroid/graphics/BlendMode;Landroid/content/res/ColorStateList;)V+]Landroid/graphics/drawable/VectorDrawable;Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/graphics/drawable/VectorDrawable;->updateLocalState(Landroid/content/res/Resources;)V -HSPLandroid/graphics/drawable/VectorDrawable;->updateStateFromTypedArray(Landroid/content/res/TypedArray;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/drawable/VectorDrawable$VectorDrawableState;Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -HSPLandroid/graphics/drawable/shapes/OvalShape;-><init>()V -HSPLandroid/graphics/drawable/shapes/OvalShape;->draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/shapes/OvalShape;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/shapes/PathShape;->draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/shapes/RectShape;-><init>()V -HSPLandroid/graphics/drawable/shapes/RectShape;->onResize(FF)V -HSPLandroid/graphics/drawable/shapes/RectShape;->rect()Landroid/graphics/RectF; -HSPLandroid/graphics/drawable/shapes/RoundRectShape;-><init>([FLandroid/graphics/RectF;[F)V -HSPLandroid/graphics/drawable/shapes/RoundRectShape;->draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V -HSPLandroid/graphics/drawable/shapes/RoundRectShape;->getOutline(Landroid/graphics/Outline;)V -HSPLandroid/graphics/drawable/shapes/RoundRectShape;->onResize(FF)V -HSPLandroid/graphics/drawable/shapes/Shape;-><init>()V -HSPLandroid/graphics/drawable/shapes/Shape;->resize(FF)V -HSPLandroid/graphics/fonts/Font$Builder;-><init>(Landroid/content/res/AssetManager;Ljava/lang/String;ZI)V -HSPLandroid/graphics/fonts/Font$Builder;-><init>(Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/graphics/fonts/Font$Builder;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V -HSPLandroid/graphics/fonts/Font$Builder;-><init>(Ljava/nio/ByteBuffer;)V -HSPLandroid/graphics/fonts/Font$Builder;-><init>(Ljava/nio/ByteBuffer;Ljava/io/File;Ljava/lang/String;)V -HSPLandroid/graphics/fonts/Font$Builder;->build()Landroid/graphics/fonts/Font; -HSPLandroid/graphics/fonts/Font$Builder;->createBuffer(Landroid/content/res/AssetManager;Ljava/lang/String;ZI)Ljava/nio/ByteBuffer; -HSPLandroid/graphics/fonts/Font$Builder;->setFontVariationSettings(Ljava/lang/String;)Landroid/graphics/fonts/Font$Builder; -HSPLandroid/graphics/fonts/Font$Builder;->setFontVariationSettings([Landroid/graphics/fonts/FontVariationAxis;)Landroid/graphics/fonts/Font$Builder; -HSPLandroid/graphics/fonts/Font$Builder;->setSlant(I)Landroid/graphics/fonts/Font$Builder; -HSPLandroid/graphics/fonts/Font$Builder;->setTtcIndex(I)Landroid/graphics/fonts/Font$Builder; -HSPLandroid/graphics/fonts/Font$Builder;->setWeight(I)Landroid/graphics/fonts/Font$Builder; -HSPLandroid/graphics/fonts/Font;-><init>(J)V -HSPLandroid/graphics/fonts/Font;->getAxes()[Landroid/graphics/fonts/FontVariationAxis; -HSPLandroid/graphics/fonts/Font;->getNativePtr()J -HSPLandroid/graphics/fonts/Font;->getStyle()Landroid/graphics/fonts/FontStyle; -HSPLandroid/graphics/fonts/FontFamily$Builder;-><init>(Landroid/graphics/fonts/Font;)V -HSPLandroid/graphics/fonts/FontFamily$Builder;->build()Landroid/graphics/fonts/FontFamily; -HSPLandroid/graphics/fonts/FontFamily$Builder;->makeStyleIdentifier(Landroid/graphics/fonts/Font;)I -HSPLandroid/graphics/fonts/FontFamily;-><init>(J)V -HSPLandroid/graphics/fonts/FontFamily;->getFont(I)Landroid/graphics/fonts/Font; -HSPLandroid/graphics/fonts/FontFamily;->getNativePtr()J -HSPLandroid/graphics/fonts/FontFamily;->getSize()I -HSPLandroid/graphics/fonts/FontFileUtil;->analyzeStyle(Ljava/nio/ByteBuffer;I[Landroid/graphics/fonts/FontVariationAxis;)I -HSPLandroid/graphics/fonts/FontStyle;-><init>(II)V -HSPLandroid/graphics/fonts/FontStyle;->getSlant()I -HSPLandroid/graphics/fonts/FontStyle;->getWeight()I -HSPLandroid/graphics/fonts/FontVariationAxis;-><init>(Ljava/lang/String;F)V -HSPLandroid/graphics/fonts/FontVariationAxis;->fromFontVariationSettings(Ljava/lang/String;)[Landroid/graphics/fonts/FontVariationAxis; -HSPLandroid/graphics/fonts/FontVariationAxis;->isValidTag(Ljava/lang/String;)Z -HSPLandroid/graphics/fonts/FontVariationAxis;->makeTag(Ljava/lang/String;)I -HSPLandroid/graphics/fonts/SystemFonts;->mmap(Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLandroid/graphics/text/LineBreakConfig$Builder;-><init>()V -HSPLandroid/graphics/text/LineBreakConfig$Builder;->build()Landroid/graphics/text/LineBreakConfig; -HSPLandroid/graphics/text/LineBreakConfig$Builder;->setLineBreakStyle(I)Landroid/graphics/text/LineBreakConfig$Builder; -HSPLandroid/graphics/text/LineBreakConfig$Builder;->setLineBreakWordStyle(I)Landroid/graphics/text/LineBreakConfig$Builder; -HSPLandroid/graphics/text/LineBreakConfig;-><clinit>()V -HSPLandroid/graphics/text/LineBreakConfig;->getLineBreakConfig(II)Landroid/graphics/text/LineBreakConfig; -HSPLandroid/graphics/text/LineBreakConfig;->getLineBreakStyle()I -HSPLandroid/graphics/text/LineBreakConfig;->getLineBreakWordStyle()I -HSPLandroid/graphics/text/LineBreaker$Builder;-><init>()V -HSPLandroid/graphics/text/LineBreaker$Builder;->build()Landroid/graphics/text/LineBreaker; -HSPLandroid/graphics/text/LineBreaker$Builder;->setBreakStrategy(I)Landroid/graphics/text/LineBreaker$Builder; -HSPLandroid/graphics/text/LineBreaker$Builder;->setHyphenationFrequency(I)Landroid/graphics/text/LineBreaker$Builder; -HSPLandroid/graphics/text/LineBreaker$Builder;->setIndents([I)Landroid/graphics/text/LineBreaker$Builder; -HSPLandroid/graphics/text/LineBreaker$Builder;->setJustificationMode(I)Landroid/graphics/text/LineBreaker$Builder; -HSPLandroid/graphics/text/LineBreaker$ParagraphConstraints;-><init>()V -HSPLandroid/graphics/text/LineBreaker$ParagraphConstraints;->setIndent(FI)V -HSPLandroid/graphics/text/LineBreaker$ParagraphConstraints;->setTabStops([FF)V -HSPLandroid/graphics/text/LineBreaker$ParagraphConstraints;->setWidth(F)V -HSPLandroid/graphics/text/LineBreaker$Result;-><init>(J)V -HSPLandroid/graphics/text/LineBreaker$Result;->getEndLineHyphenEdit(I)I -HSPLandroid/graphics/text/LineBreaker$Result;->getLineAscent(I)F -HSPLandroid/graphics/text/LineBreaker$Result;->getLineBreakOffset(I)I -HSPLandroid/graphics/text/LineBreaker$Result;->getLineCount()I -HSPLandroid/graphics/text/LineBreaker$Result;->getLineDescent(I)F -HSPLandroid/graphics/text/LineBreaker$Result;->getLineWidth(I)F -HSPLandroid/graphics/text/LineBreaker$Result;->getStartLineHyphenEdit(I)I -HSPLandroid/graphics/text/LineBreaker$Result;->hasLineTab(I)Z -HSPLandroid/graphics/text/LineBreaker;->computeLineBreaks(Landroid/graphics/text/MeasuredText;Landroid/graphics/text/LineBreaker$ParagraphConstraints;I)Landroid/graphics/text/LineBreaker$Result; -HSPLandroid/graphics/text/MeasuredText$Builder;-><init>([C)V -HSPLandroid/graphics/text/MeasuredText$Builder;->appendReplacementRun(Landroid/graphics/Paint;IF)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText$Builder;->appendStyleRun(Landroid/graphics/Paint;IZ)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText$Builder;->appendStyleRun(Landroid/graphics/Paint;Landroid/graphics/text/LineBreakConfig;IZ)Landroid/graphics/text/MeasuredText$Builder;+]Landroid/graphics/Paint;Landroid/text/TextPaint; -HSPLandroid/graphics/text/MeasuredText$Builder;->build()Landroid/graphics/text/MeasuredText; -HSPLandroid/graphics/text/MeasuredText$Builder;->ensureNativePtrNoReuse()V -HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeHyphenation(I)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeHyphenation(Z)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText$Builder;->setComputeLayout(Z)Landroid/graphics/text/MeasuredText$Builder; -HSPLandroid/graphics/text/MeasuredText;->getCharWidthAt(I)F+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/graphics/text/MeasuredText;->getChars()[C -HSPLandroid/graphics/text/MeasuredText;->getNativePtr()J -HSPLandroid/hardware/Camera$CameraInfo;-><init>()V -HSPLandroid/hardware/Camera;->getCameraInfo(ILandroid/hardware/Camera$CameraInfo;)V -HSPLandroid/hardware/CameraStatus$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/CameraStatus; -HSPLandroid/hardware/CameraStatus$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/CameraStatus$1;->newArray(I)[Landroid/hardware/CameraStatus; -HSPLandroid/hardware/CameraStatus$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/hardware/GeomagneticField$LegendreTable;-><init>(IF)V -HSPLandroid/hardware/GeomagneticField;-><init>(FFFJ)V -HSPLandroid/hardware/GeomagneticField;->computeGeocentricCoordinates(FFF)V -HSPLandroid/hardware/HardwareBuffer$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/HardwareBuffer; -HSPLandroid/hardware/HardwareBuffer$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/HardwareBuffer;-><init>(J)V -HSPLandroid/hardware/HardwareBuffer;->close()V -HSPLandroid/hardware/HardwareBuffer;->finalize()V -HSPLandroid/hardware/HardwareBuffer;->getFormat()I -HSPLandroid/hardware/HardwareBuffer;->getUsage()J -HSPLandroid/hardware/HardwareBuffer;->isClosed()Z -HSPLandroid/hardware/ICameraService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/hardware/ICameraService$Stub$Proxy;->addListener(Landroid/hardware/ICameraServiceListener;)[Landroid/hardware/CameraStatus; -HSPLandroid/hardware/ICameraService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/ICameraService$Stub$Proxy;->getConcurrentCameraIds()[Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination; -HSPLandroid/hardware/ICameraService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/ICameraService; -HSPLandroid/hardware/ICameraServiceListener$Stub;->getMaxTransactionId()I -HSPLandroid/hardware/ICameraServiceListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/OverlayProperties$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/OverlayProperties; -HSPLandroid/hardware/OverlayProperties$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/OverlayProperties;->-$$Nest$smnReadOverlayPropertiesFromParcel(Landroid/os/Parcel;)J -HSPLandroid/hardware/OverlayProperties;-><init>(J)V -HSPLandroid/hardware/Sensor;-><init>()V -HSPLandroid/hardware/Sensor;->getHandle()I -HSPLandroid/hardware/Sensor;->getMaxLengthValuesArray(Landroid/hardware/Sensor;I)I -HSPLandroid/hardware/Sensor;->getMaximumRange()F -HSPLandroid/hardware/Sensor;->getName()Ljava/lang/String; -HSPLandroid/hardware/Sensor;->getReportingMode()I -HSPLandroid/hardware/Sensor;->getStringType()Ljava/lang/String; -HSPLandroid/hardware/Sensor;->getType()I -HSPLandroid/hardware/Sensor;->getVendor()Ljava/lang/String; -HSPLandroid/hardware/Sensor;->isWakeUpSensor()Z -HSPLandroid/hardware/Sensor;->setId(I)V -HSPLandroid/hardware/Sensor;->setType(I)Z -HSPLandroid/hardware/Sensor;->setUuid(JJ)V -HSPLandroid/hardware/SensorEvent;-><init>(I)V -HSPLandroid/hardware/SensorManager;-><init>()V -HSPLandroid/hardware/SensorManager;->cancelTriggerSensor(Landroid/hardware/TriggerEventListener;Landroid/hardware/Sensor;)Z -HSPLandroid/hardware/SensorManager;->getDefaultSensor(I)Landroid/hardware/Sensor; -HSPLandroid/hardware/SensorManager;->getDelay(I)I -HSPLandroid/hardware/SensorManager;->getSensorList(I)Ljava/util/List; -HSPLandroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z -HSPLandroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;IILandroid/os/Handler;)Z -HSPLandroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;ILandroid/os/Handler;)Z -HSPLandroid/hardware/SensorManager;->requestTriggerSensor(Landroid/hardware/TriggerEventListener;Landroid/hardware/Sensor;)Z -HSPLandroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V -HSPLandroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;)V -HSPLandroid/hardware/SensorPrivacyManager;->isSensorPrivacyEnabled(II)Z -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;-><init>(Landroid/os/Looper;Landroid/hardware/SystemSensorManager;ILjava/lang/String;)V -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->addSensor(Landroid/hardware/Sensor;II)Z -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->disableSensor(Landroid/hardware/Sensor;)I -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->dispose()V -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->dispose(Z)V -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->enableSensor(Landroid/hardware/Sensor;II)I -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->finalize()V -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->hasSensors()Z -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->removeAllSensors()Z -HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->removeSensor(Landroid/hardware/Sensor;Z)Z -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;-><init>(Landroid/hardware/SensorEventListener;Landroid/os/Looper;Landroid/hardware/SystemSensorManager;Ljava/lang/String;)V -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->addSensorEvent(Landroid/hardware/Sensor;)V -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->dispatchAdditionalInfoEvent(III[F[I)V -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->dispatchSensorEvent(I[FIJ)V+]Landroid/hardware/Sensor;Landroid/hardware/Sensor;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/hardware/SystemSensorManager$SensorEventQueue;->removeSensorEvent(Landroid/hardware/Sensor;)V -HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->addSensorEvent(Landroid/hardware/Sensor;)V -HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->dispatchSensorEvent(I[FIJ)V -HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->removeSensorEvent(Landroid/hardware/Sensor;)V -HSPLandroid/hardware/SystemSensorManager;-><init>(Landroid/content/Context;Landroid/os/Looper;)V -HSPLandroid/hardware/SystemSensorManager;->cancelTriggerSensorImpl(Landroid/hardware/TriggerEventListener;Landroid/hardware/Sensor;Z)Z -HSPLandroid/hardware/SystemSensorManager;->getFullSensorList()Ljava/util/List; -HSPLandroid/hardware/SystemSensorManager;->getSensorList(I)Ljava/util/List; -HSPLandroid/hardware/SystemSensorManager;->isDeviceSensorPolicyDefault(I)Z -HSPLandroid/hardware/SystemSensorManager;->registerListenerImpl(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;ILandroid/os/Handler;II)Z -HSPLandroid/hardware/SystemSensorManager;->requestTriggerSensorImpl(Landroid/hardware/TriggerEventListener;Landroid/hardware/Sensor;)Z -HSPLandroid/hardware/SystemSensorManager;->unregisterListenerImpl(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;)V -HSPLandroid/hardware/TriggerEventListener;-><init>()V -HSPLandroid/hardware/biometrics/BiometricManager;-><init>(Landroid/content/Context;Landroid/hardware/biometrics/IAuthService;)V -HSPLandroid/hardware/biometrics/BiometricManager;->canAuthenticate()I -HSPLandroid/hardware/biometrics/BiometricManager;->canAuthenticate(I)I -HSPLandroid/hardware/biometrics/BiometricManager;->canAuthenticate(II)I -HSPLandroid/hardware/biometrics/BiometricSourceType;->values()[Landroid/hardware/biometrics/BiometricSourceType; -HSPLandroid/hardware/biometrics/BiometricSourceType;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/hardware/biometrics/IAuthService$Stub$Proxy;->canAuthenticate(Ljava/lang/String;II)I -HSPLandroid/hardware/biometrics/IAuthService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/biometrics/IAuthService; -HSPLandroid/hardware/biometrics/SensorPropertiesInternal$1;-><init>()V -HSPLandroid/hardware/biometrics/SensorPropertiesInternal;-><clinit>()V -HSPLandroid/hardware/camera2/CameraCharacteristics$1;->onDeviceStateChanged(Z)V -HSPLandroid/hardware/camera2/CameraCharacteristics$Key;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/camera2/CameraCharacteristics$Key;->getNativeKey()Landroid/hardware/camera2/impl/CameraMetadataNative$Key; -HSPLandroid/hardware/camera2/CameraCharacteristics;->-$$Nest$fgetmLock(Landroid/hardware/camera2/CameraCharacteristics;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/CameraCharacteristics;->-$$Nest$fputmFoldedDeviceState(Landroid/hardware/camera2/CameraCharacteristics;Z)V -HSPLandroid/hardware/camera2/CameraCharacteristics;->get(Landroid/hardware/camera2/CameraCharacteristics$Key;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/CameraCharacteristics;->getDeviceStateListener()Landroid/hardware/camera2/CameraManager$DeviceStateListener; -HSPLandroid/hardware/camera2/CameraCharacteristics;->overrideProperty(Landroid/hardware/camera2/CameraCharacteristics$Key;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/CameraManager$AvailabilityCallback;-><init>()V -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal$1;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->connectCameraServiceLocked()V -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->get()Landroid/hardware/camera2/CameraManager$CameraManagerGlobal; -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->getCameraService()Landroid/hardware/ICameraService; -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->onCameraAccessPrioritiesChanged()V -HSPLandroid/hardware/camera2/CameraManager$CameraManagerGlobal;->postSingleAccessPriorityChangeUpdate(Landroid/hardware/camera2/CameraManager$AvailabilityCallback;Ljava/util/concurrent/Executor;)V -HSPLandroid/hardware/camera2/CameraManager$FoldStateListener;->addDeviceStateListener(Landroid/hardware/camera2/CameraManager$DeviceStateListener;)V -HSPLandroid/hardware/camera2/CameraManager$FoldStateListener;->handleStateChange(I)V -HSPLandroid/hardware/camera2/CameraManager;-><init>(Landroid/content/Context;)V -HSPLandroid/hardware/camera2/CameraManager;->getCameraCharacteristics(Ljava/lang/String;)Landroid/hardware/camera2/CameraCharacteristics; -HSPLandroid/hardware/camera2/CameraManager;->getCameraIdList()[Ljava/lang/String; -HSPLandroid/hardware/camera2/CameraManager;->getDisplaySize()Landroid/util/Size; -HSPLandroid/hardware/camera2/CameraManager;->getPhysicalCameraMultiResolutionConfigs(Ljava/lang/String;Landroid/hardware/camera2/impl/CameraMetadataNative;Landroid/hardware/ICameraService;)Ljava/util/Map; -HSPLandroid/hardware/camera2/CameraManager;->registerDeviceStateListener(Landroid/hardware/camera2/CameraCharacteristics;)V -HSPLandroid/hardware/camera2/CameraMetadata;-><init>()V -HSPLandroid/hardware/camera2/CameraMetadata;->setNativeInstance(Landroid/hardware/camera2/impl/CameraMetadataNative;)V -HSPLandroid/hardware/camera2/impl/CameraDeviceImpl$CameraHandlerExecutor;->execute(Ljava/lang/Runnable;)V -HSPLandroid/hardware/camera2/impl/CameraDeviceImpl;->checkAndWrapHandler(Landroid/os/Handler;)Ljava/util/concurrent/Executor; -HSPLandroid/hardware/camera2/impl/CameraDeviceImpl;->checkHandler(Landroid/os/Handler;)Landroid/os/Handler; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/camera2/impl/CameraMetadataNative; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative$Key;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/camera2/impl/CameraMetadataNative$Key;->hashCode()I -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;-><init>()V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->finalize()V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->get(Landroid/hardware/camera2/CameraCharacteristics$Key;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->get(Landroid/hardware/camera2/impl/CameraMetadataNative$Key;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->getBase(Landroid/hardware/camera2/impl/CameraMetadataNative$Key;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->move(Landroid/hardware/camera2/impl/CameraMetadataNative;)Landroid/hardware/camera2/impl/CameraMetadataNative; -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->readValues(I)[B -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->setCameraId(I)V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->setDisplaySize(Landroid/util/Size;)V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->setHasMandatoryConcurrentStreams(Z)V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->setupGlobalVendorTagDescriptor()V -HSPLandroid/hardware/camera2/impl/CameraMetadataNative;->updateNativeAllocation()V -HSPLandroid/hardware/camera2/marshal/MarshalHelpers;->checkNativeType(I)I -HSPLandroid/hardware/camera2/marshal/MarshalHelpers;->wrapClassIfPrimitive(Ljava/lang/Class;)Ljava/lang/Class; -HSPLandroid/hardware/camera2/marshal/MarshalRegistry$MarshalToken;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/camera2/marshal/MarshalRegistry$MarshalToken;->hashCode()I -HSPLandroid/hardware/camera2/marshal/MarshalRegistry;->getMarshaler(Landroid/hardware/camera2/utils/TypeReference;I)Landroid/hardware/camera2/marshal/Marshaler; -HSPLandroid/hardware/camera2/marshal/Marshaler;-><init>(Landroid/hardware/camera2/marshal/MarshalQueryable;Landroid/hardware/camera2/utils/TypeReference;I)V -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableArray$MarshalerArray;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableArray;->createMarshaler(Landroid/hardware/camera2/utils/TypeReference;I)Landroid/hardware/camera2/marshal/Marshaler; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableArray;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean$MarshalerBoolean;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Boolean; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean$MarshalerBoolean;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean;->createMarshaler(Landroid/hardware/camera2/utils/TypeReference;I)Landroid/hardware/camera2/marshal/Marshaler; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableEnum;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger$MarshalerNativeByteToInteger;->getNativeSize()I -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger$MarshalerNativeByteToInteger;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Integer; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger$MarshalerNativeByteToInteger;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger;->createMarshaler(Landroid/hardware/camera2/utils/TypeReference;I)Landroid/hardware/camera2/marshal/Marshaler; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive$MarshalerPrimitive;->unmarshal(Ljava/nio/ByteBuffer;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive$MarshalerPrimitive;->unmarshalObject(Ljava/nio/ByteBuffer;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive;->createMarshaler(Landroid/hardware/camera2/utils/TypeReference;I)Landroid/hardware/camera2/marshal/Marshaler; -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableRange;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableRect;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableReprocessFormatsMap;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableSize;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableSizeF;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/marshal/impl/MarshalQueryableString;->isTypeMappingSupported(Landroid/hardware/camera2/utils/TypeReference;I)Z -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination; -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination$1;->newArray(I)[Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination; -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination;-><init>(Landroid/os/Parcel;Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination-IA;)V -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination;->getConcurrentCameraIdCombination()Ljava/util/Set; -HSPLandroid/hardware/camera2/utils/ConcurrentCameraIdCombination;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/hardware/camera2/utils/TypeReference;->containsTypeVariable(Ljava/lang/reflect/Type;)Z -HSPLandroid/hardware/camera2/utils/TypeReference;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/camera2/utils/TypeReference;->getComponentType()Landroid/hardware/camera2/utils/TypeReference; -HSPLandroid/hardware/camera2/utils/TypeReference;->getComponentType(Ljava/lang/reflect/Type;)Ljava/lang/reflect/Type; -HSPLandroid/hardware/camera2/utils/TypeReference;->getRawType()Ljava/lang/Class; -HSPLandroid/hardware/camera2/utils/TypeReference;->getRawType(Ljava/lang/reflect/Type;)Ljava/lang/Class; -HSPLandroid/hardware/camera2/utils/TypeReference;->getType()Ljava/lang/reflect/Type; -HSPLandroid/hardware/camera2/utils/TypeReference;->hashCode()I -HSPLandroid/hardware/devicestate/DeviceStateInfo$1;-><init>()V -HSPLandroid/hardware/devicestate/DeviceStateInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/devicestate/DeviceStateInfo; -HSPLandroid/hardware/devicestate/DeviceStateInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/devicestate/DeviceStateInfo;-><clinit>()V -HSPLandroid/hardware/devicestate/DeviceStateManager;-><init>()V -HSPLandroid/hardware/devicestate/DeviceStateManager;->registerCallback(Ljava/util/concurrent/Executor;Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda0;->run()V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1;->run()V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2;->run()V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper;-><init>(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback-IA;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;->onDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->-$$Nest$mhandleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateInfo;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;-><init>(Landroid/hardware/devicestate/IDeviceStateManager;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->findCallbackLocked(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;)I -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->getInstance()Landroid/hardware/devicestate/DeviceStateManagerGlobal; -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->handleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerCallbackIfNeededLocked()V -HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerDeviceStateCallback(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V -HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;->registerCallback(Landroid/hardware/devicestate/IDeviceStateManagerCallback;)V -HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/devicestate/IDeviceStateManager; -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;-><init>()V -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->getMaxTransactionId()I -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/hardware/devicestate/IDeviceStateManagerCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;-><init>(Landroid/content/Context;)V -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->accessibilityInversionEnabled(I)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->alwaysOnAvailable()Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->alwaysOnEnabled(I)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->ambientDisplayAvailable()Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->ambientDisplayComponent()Ljava/lang/String; -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->boolSetting(Ljava/lang/String;II)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->boolSettingDefaultOn(Ljava/lang/String;I)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->doubleTapSensorType()Ljava/lang/String; -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->dozePickupSensorAvailable()Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->enabled(I)Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->pulseOnNotificationAvailable()Z -HSPLandroid/hardware/display/AmbientDisplayConfiguration;->pulseOnNotificationEnabled(I)Z -HSPLandroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal;->getInstance()Landroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal; -HSPLandroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal;->isNightDisplayActivated()Z -HSPLandroid/hardware/display/ColorDisplayManager;-><init>()V -HSPLandroid/hardware/display/ColorDisplayManager;->isDisplayWhiteBalanceAvailable(Landroid/content/Context;)Z -HSPLandroid/hardware/display/ColorDisplayManager;->isNightDisplayActivated()Z -HSPLandroid/hardware/display/ColorDisplayManager;->isNightDisplayAvailable(Landroid/content/Context;)Z -HSPLandroid/hardware/display/DeviceProductInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/display/DeviceProductInfo; -HSPLandroid/hardware/display/DeviceProductInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/display/DeviceProductInfo$ManufactureDate$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/display/DeviceProductInfo$ManufactureDate; -HSPLandroid/hardware/display/DeviceProductInfo$ManufactureDate$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/display/DeviceProductInfo$ManufactureDate;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/display/DeviceProductInfo$ManufactureDate;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/display/DeviceProductInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/display/DeviceProductInfo;-><init>(Landroid/os/Parcel;Landroid/hardware/display/DeviceProductInfo-IA;)V -HSPLandroid/hardware/display/DeviceProductInfo;->equals(Ljava/lang/Object;)Z -HSPLandroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2;->test(Ljava/lang/Object;)Z -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;-><init>()V -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;-><init>(Landroid/hardware/display/DisplayManager$WeakDisplayCache-IA;)V -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->get(I)Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->put(Landroid/view/Display;)V -HSPLandroid/hardware/display/DisplayManager$WeakDisplayCache;->removeStaleEntries()V -HSPLandroid/hardware/display/DisplayManager;-><init>(Landroid/content/Context;)V -HSPLandroid/hardware/display/DisplayManager;->getDisplay(I)Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager;->getDisplays()[Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager;->getDisplays(Ljava/lang/String;)[Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager;->getDisplays([ILjava/util/function/Predicate;)[Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager;->getOrCreateDisplay(IZ)Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManager;->getStableDisplaySize()Landroid/graphics/Point; -HSPLandroid/hardware/display/DisplayManager;->getWifiDisplayStatus()Landroid/hardware/display/WifiDisplayStatus; -HSPLandroid/hardware/display/DisplayManager;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Landroid/os/Handler;)V -HSPLandroid/hardware/display/DisplayManager;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Landroid/os/Handler;J)V -HSPLandroid/hardware/display/DisplayManager;->unregisterDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;)V -HSPLandroid/hardware/display/DisplayManagerGlobal$1;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILjava/lang/String;)V -HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Integer;)Landroid/view/DisplayInfo; -HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0;->run()V -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;->clearEvents()V -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;)V -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback-IA;)V -HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;->onDisplayEvent(II)V -HSPLandroid/hardware/display/DisplayManagerGlobal;->-$$Nest$fgetmDm(Landroid/hardware/display/DisplayManagerGlobal;)Landroid/hardware/display/IDisplayManager; -HSPLandroid/hardware/display/DisplayManagerGlobal;-><init>(Landroid/hardware/display/IDisplayManager;)V -HSPLandroid/hardware/display/DisplayManagerGlobal;->calculateEventsMaskLocked()I -HSPLandroid/hardware/display/DisplayManagerGlobal;->extraLogging()Z -HSPLandroid/hardware/display/DisplayManagerGlobal;->findDisplayListenerLocked(Landroid/hardware/display/DisplayManager$DisplayListener;)I -HSPLandroid/hardware/display/DisplayManagerGlobal;->getCompatibleDisplay(ILandroid/content/res/Resources;)Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getCompatibleDisplay(ILandroid/view/DisplayAdjustments;)Landroid/view/Display; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayIds()[I -HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayIds(Z)[I -HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfo(I)Landroid/view/DisplayInfo; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfoLocked(I)Landroid/view/DisplayInfo;+]Landroid/app/PropertyInvalidatedCache;Landroid/hardware/display/DisplayManagerGlobal$1; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getInstance()Landroid/hardware/display/DisplayManagerGlobal; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getLooperForHandler(Landroid/os/Handler;)Landroid/os/Looper; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getPreferredWideGamutColorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getStableDisplaySize()Landroid/graphics/Point; -HSPLandroid/hardware/display/DisplayManagerGlobal;->getWifiDisplayStatus()Landroid/hardware/display/WifiDisplayStatus; -HSPLandroid/hardware/display/DisplayManagerGlobal;->initExtraLogging()Z -HSPLandroid/hardware/display/DisplayManagerGlobal;->registerCallbackIfNeededLocked()V -HSPLandroid/hardware/display/DisplayManagerGlobal;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Ljava/util/concurrent/Executor;JLjava/lang/String;)V+]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HSPLandroid/hardware/display/DisplayManagerGlobal;->registerNativeChoreographerForRefreshRateCallbacks()V -HSPLandroid/hardware/display/DisplayManagerGlobal;->unregisterDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;)V -HSPLandroid/hardware/display/DisplayManagerGlobal;->updateCallbackIfNeededLocked()V -HSPLandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;->equals(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;)Z -HSPLandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;->floatEquals(FF)Z -HSPLandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;->isBrightOrDim()Z -HSPLandroid/hardware/display/IColorDisplayManager$Stub$Proxy;->isNightDisplayActivated()Z -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getDisplayIds(Z)[I -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getDisplayInfo(I)Landroid/view/DisplayInfo; -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getOverlaySupport()Landroid/hardware/OverlayProperties; -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getPreferredWideGamutColorSpaceId()I -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getStableDisplaySize()Landroid/graphics/Point; -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->getWifiDisplayStatus()Landroid/hardware/display/WifiDisplayStatus; -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->registerCallback(Landroid/hardware/display/IDisplayManagerCallback;)V -HSPLandroid/hardware/display/IDisplayManager$Stub$Proxy;->registerCallbackWithEventMask(Landroid/hardware/display/IDisplayManagerCallback;J)V -HSPLandroid/hardware/display/IDisplayManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/display/IDisplayManager; -HSPLandroid/hardware/display/IDisplayManager$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;-><init>()V -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;->getMaxTransactionId()I -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/hardware/display/IDisplayManagerCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/display/WifiDisplay$1;->newArray(I)[Landroid/hardware/display/WifiDisplay; -HSPLandroid/hardware/display/WifiDisplay$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/hardware/display/WifiDisplaySessionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/display/WifiDisplaySessionInfo; -HSPLandroid/hardware/display/WifiDisplaySessionInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/display/WifiDisplaySessionInfo;-><init>(ZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/hardware/display/WifiDisplayStatus$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/display/WifiDisplayStatus; -HSPLandroid/hardware/display/WifiDisplayStatus$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/display/WifiDisplayStatus;-><init>(IIILandroid/hardware/display/WifiDisplay;[Landroid/hardware/display/WifiDisplay;Landroid/hardware/display/WifiDisplaySessionInfo;)V -HSPLandroid/hardware/display/WifiDisplayStatus;->getActiveDisplay()Landroid/hardware/display/WifiDisplay; -HSPLandroid/hardware/display/WifiDisplayStatus;->getFeatureState()I -HSPLandroid/hardware/face/FaceManager;->getSensorPropertiesInternal()Ljava/util/List; -HSPLandroid/hardware/fingerprint/FingerprintManager;-><init>(Landroid/content/Context;Landroid/hardware/fingerprint/IFingerprintService;)V -HSPLandroid/hardware/fingerprint/FingerprintManager;->hasEnrolledFingerprints(I)Z -HSPLandroid/hardware/fingerprint/FingerprintManager;->isHardwareDetected()Z -HSPLandroid/hardware/fingerprint/IFingerprintService$Stub$Proxy;->isHardwareDetectedDeprecated(Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/hardware/fingerprint/IFingerprintService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/fingerprint/IFingerprintService; -HSPLandroid/hardware/input/HostUsiVersion$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/input/HostUsiVersion; -HSPLandroid/hardware/input/HostUsiVersion$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/input/HostUsiVersion;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/input/IInputDevicesChangedListener$Stub;-><init>()V -HSPLandroid/hardware/input/IInputDevicesChangedListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/input/IInputDevicesChangedListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->getInputDevice(I)Landroid/view/InputDevice; -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->getInputDeviceIds()[I -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->getVelocityTrackerStrategy()Ljava/lang/String; -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->hasKeys(II[I[Z)Z -HSPLandroid/hardware/input/IInputManager$Stub$Proxy;->registerInputDevicesChangedListener(Landroid/hardware/input/IInputDevicesChangedListener;)V -HSPLandroid/hardware/input/IInputManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/input/IInputManager; -HSPLandroid/hardware/input/InputDeviceIdentifier;-><init>(Ljava/lang/String;II)V -HSPLandroid/hardware/input/InputManager;-><init>(Landroid/content/Context;)V -HSPLandroid/hardware/input/InputManager;->deviceHasKeys(I[I)[Z -HSPLandroid/hardware/input/InputManager;->getInputDevice(I)Landroid/view/InputDevice; -HSPLandroid/hardware/input/InputManager;->getInputDeviceIds()[I -HSPLandroid/hardware/input/InputManager;->getInstance()Landroid/hardware/input/InputManager; -HSPLandroid/hardware/input/InputManager;->registerInputDeviceListener(Landroid/hardware/input/InputManager$InputDeviceListener;Landroid/os/Handler;)V -HSPLandroid/hardware/input/InputManager;->unregisterInputDeviceListener(Landroid/hardware/input/InputManager$InputDeviceListener;)V -HSPLandroid/hardware/input/InputManagerGlobal$InputDeviceListenerDelegate;-><init>(Landroid/hardware/input/InputManager$InputDeviceListener;Landroid/os/Handler;)V -HSPLandroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener;-><init>(Landroid/hardware/input/InputManagerGlobal;)V -HSPLandroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener;-><init>(Landroid/hardware/input/InputManagerGlobal;Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener-IA;)V -HSPLandroid/hardware/input/InputManagerGlobal;-><init>(Landroid/hardware/input/IInputManager;)V -HSPLandroid/hardware/input/InputManagerGlobal;->getInputDevice(I)Landroid/view/InputDevice; -HSPLandroid/hardware/input/InputManagerGlobal;->getInputDeviceIds()[I -HSPLandroid/hardware/input/InputManagerGlobal;->getInputManagerService()Landroid/hardware/input/IInputManager; -HSPLandroid/hardware/input/InputManagerGlobal;->getInstance()Landroid/hardware/input/InputManagerGlobal; -HSPLandroid/hardware/input/InputManagerGlobal;->populateInputDevicesLocked()V -HSPLandroid/hardware/input/InputManagerGlobal;->registerInputDeviceListener(Landroid/hardware/input/InputManager$InputDeviceListener;Landroid/os/Handler;)V -HSPLandroid/hardware/input/InputSettings;->isStylusPointerIconEnabled(Landroid/content/Context;)Z -HSPLandroid/hardware/location/ContextHubClient;-><init>(Landroid/hardware/location/ContextHubInfo;Z)V -HSPLandroid/hardware/location/ContextHubClient;->sendMessageToNanoApp(Landroid/hardware/location/NanoAppMessage;)I -HSPLandroid/hardware/location/ContextHubClient;->setClientProxy(Landroid/hardware/location/IContextHubClient;)V -HSPLandroid/hardware/location/ContextHubClientCallback;-><init>()V -HSPLandroid/hardware/location/ContextHubInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/location/ContextHubInfo; -HSPLandroid/hardware/location/ContextHubInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/location/ContextHubInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/location/ContextHubInfo;->getId()I -HSPLandroid/hardware/location/ContextHubInfo;->getMaxPacketLengthBytes()I -HSPLandroid/hardware/location/ContextHubManager;->createClient(Landroid/hardware/location/ContextHubInfo;Landroid/hardware/location/ContextHubClientCallback;)Landroid/hardware/location/ContextHubClient; -HSPLandroid/hardware/location/ContextHubManager;->createQueryCallback(Landroid/hardware/location/ContextHubTransaction;)Landroid/hardware/location/IContextHubTransactionCallback; -HSPLandroid/hardware/location/ContextHubManager;->getContextHubs()Ljava/util/List; -HSPLandroid/hardware/location/ContextHubManager;->queryNanoApps(Landroid/hardware/location/ContextHubInfo;)Landroid/hardware/location/ContextHubTransaction; -HSPLandroid/hardware/location/ContextHubTransaction$Response;-><init>(ILjava/lang/Object;)V -HSPLandroid/hardware/location/ContextHubTransaction$Response;->getContents()Ljava/lang/Object; -HSPLandroid/hardware/location/ContextHubTransaction;-><init>(I)V -HSPLandroid/hardware/location/ContextHubTransaction;->setResponse(Landroid/hardware/location/ContextHubTransaction$Response;)V -HSPLandroid/hardware/location/ContextHubTransaction;->waitForResponse(JLjava/util/concurrent/TimeUnit;)Landroid/hardware/location/ContextHubTransaction$Response; -HSPLandroid/hardware/location/IContextHubCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/location/IContextHubClient$Stub$Proxy;->sendMessageToNanoApp(Landroid/hardware/location/NanoAppMessage;)I -HSPLandroid/hardware/location/IContextHubClient$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/location/IContextHubClient; -HSPLandroid/hardware/location/IContextHubClientCallback$Stub;-><init>()V -HSPLandroid/hardware/location/IContextHubClientCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/location/IContextHubClientCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/location/IContextHubService$Stub$Proxy;->getContextHubs()Ljava/util/List; -HSPLandroid/hardware/location/IContextHubService$Stub$Proxy;->queryNanoApps(ILandroid/hardware/location/IContextHubTransactionCallback;)V -HSPLandroid/hardware/location/IContextHubService$Stub$Proxy;->registerCallback(Landroid/hardware/location/IContextHubCallback;)I -HSPLandroid/hardware/location/IContextHubTransactionCallback$Stub;-><init>()V -HSPLandroid/hardware/location/IContextHubTransactionCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/location/IContextHubTransactionCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/hardware/location/IGeofenceHardware$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/location/IGeofenceHardware; -HSPLandroid/hardware/location/MemoryRegion$1;->newArray(I)[Landroid/hardware/location/MemoryRegion; -HSPLandroid/hardware/location/MemoryRegion$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/hardware/location/NanoAppMessage$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/location/NanoAppMessage; -HSPLandroid/hardware/location/NanoAppMessage$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/location/NanoAppMessage;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/location/NanoAppMessage;->createMessageToNanoApp(JI[B)Landroid/hardware/location/NanoAppMessage; -HSPLandroid/hardware/location/NanoAppMessage;->getMessageBody()[B -HSPLandroid/hardware/location/NanoAppMessage;->getMessageType()I -HSPLandroid/hardware/location/NanoAppMessage;->getNanoAppId()J -HSPLandroid/hardware/location/NanoAppMessage;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/hardware/location/NanoAppState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/location/NanoAppState; -HSPLandroid/hardware/location/NanoAppState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/location/NanoAppState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/location/NanoAppState;->getNanoAppId()J -HSPLandroid/hardware/security/keymint/KeyParameter$1;-><init>()V -HSPLandroid/hardware/security/keymint/KeyParameter$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/hardware/security/keymint/KeyParameter$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/security/keymint/KeyParameter$1;->newArray(I)[Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/hardware/security/keymint/KeyParameter$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/hardware/security/keymint/KeyParameter;-><clinit>()V -HSPLandroid/hardware/security/keymint/KeyParameter;-><init>()V -HSPLandroid/hardware/security/keymint/KeyParameter;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/hardware/security/keymint/KeyParameter;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/hardware/security/keymint/KeyParameterValue$1;-><init>()V -HSPLandroid/hardware/security/keymint/KeyParameterValue$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/hardware/security/keymint/KeyParameterValue;-><clinit>()V -HSPLandroid/hardware/security/keymint/KeyParameterValue;-><init>(ILjava/lang/Object;)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;-><init>(Landroid/os/Parcel;)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;-><init>(Landroid/os/Parcel;Landroid/hardware/security/keymint/KeyParameterValue-IA;)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;->_assertTag(I)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;->_set(ILjava/lang/Object;)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;->algorithm(I)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->blob([B)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->blockMode(I)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getAlgorithm()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getBlob()[B -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getBlockMode()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getDigest()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getInteger()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getKeyPurpose()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getPaddingMode()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->getTag()I -HSPLandroid/hardware/security/keymint/KeyParameterValue;->integer(I)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->keyPurpose(I)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->paddingMode(I)Landroid/hardware/security/keymint/KeyParameterValue; -HSPLandroid/hardware/security/keymint/KeyParameterValue;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/hardware/security/keymint/KeyParameterValue;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/hardware/soundtrigger/KeyphraseMetadata;-><init>(ILjava/lang/String;Ljava/util/Set;I)V -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;IIIIZIZIZI)V -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getAudioCapabilities()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getDescription()Ljava/lang/String; -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getId()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getImplementor()Ljava/lang/String; -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getMaxBufferMillis()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getMaxKeyphrases()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getMaxSoundModels()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getMaxUsers()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getPowerConsumptionMw()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getRecognitionModes()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getSupportedModelArch()Ljava/lang/String; -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getUuid()Ljava/util/UUID; -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->getVersion()I -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->isCaptureTransitionSupported()Z -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->isConcurrentCaptureSupported()Z -HSPLandroid/hardware/soundtrigger/SoundTrigger$ModuleProperties;->isTriggerReturnedInEvent()Z -HSPLandroid/hardware/soundtrigger/SoundTrigger$SoundModel;-><init>(Ljava/util/UUID;Ljava/util/UUID;I[BI)V -HSPLandroid/hardware/soundtrigger/SoundTrigger$SoundModel;->getData()[B -HSPLandroid/hardware/soundtrigger/SoundTrigger$SoundModel;->getUuid()Ljava/util/UUID; -HSPLandroid/hardware/soundtrigger/SoundTrigger$SoundModel;->getVendorUuid()Ljava/util/UUID; -HSPLandroid/hardware/soundtrigger/SoundTrigger$SoundModel;->getVersion()I -HSPLandroid/hardware/usb/IUsbManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/hardware/usb/IUsbManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/hardware/usb/IUsbManager$Stub$Proxy;->getDeviceList(Landroid/os/Bundle;)V -HSPLandroid/hardware/usb/IUsbManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/hardware/usb/IUsbManager; -HSPLandroid/hardware/usb/ParcelableUsbPort;->getUsbPort(Landroid/hardware/usb/UsbManager;)Landroid/hardware/usb/UsbPort; -HSPLandroid/hardware/usb/UsbManager;-><init>(Landroid/content/Context;Landroid/hardware/usb/IUsbManager;)V -HSPLandroid/hardware/usb/UsbManager;->getDeviceList()Ljava/util/HashMap; -HSPLandroid/hardware/usb/UsbPort;->getId()Ljava/lang/String; -HSPLandroid/hardware/usb/UsbPortStatus;-><init>(IIIIII)V -HSPLandroid/hardware/usb/UsbPortStatus;->isConnected()Z -HSPLandroid/icu/impl/BMPSet;-><init>([II)V -HSPLandroid/icu/impl/BMPSet;->contains(I)Z -HSPLandroid/icu/impl/BMPSet;->containsSlow(III)Z -HSPLandroid/icu/impl/BMPSet;->findCodePoint(III)I -HSPLandroid/icu/impl/BMPSet;->initBits()V -HSPLandroid/icu/impl/BMPSet;->set32x64Bits([III)V -HSPLandroid/icu/impl/CacheValue$NullValue;->isNull()Z -HSPLandroid/icu/impl/CacheValue$SoftValue;-><init>(Ljava/lang/Object;)V -HSPLandroid/icu/impl/CacheValue$SoftValue;->get()Ljava/lang/Object; -HSPLandroid/icu/impl/CacheValue$SoftValue;->resetIfCleared(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/CacheValue$StrongValue;->get()Ljava/lang/Object; -HSPLandroid/icu/impl/CacheValue;-><init>()V -HSPLandroid/icu/impl/CacheValue;->futureInstancesWillBeStrong()Z -HSPLandroid/icu/impl/CacheValue;->getInstance(Ljava/lang/Object;)Landroid/icu/impl/CacheValue; -HSPLandroid/icu/impl/CacheValue;->isNull()Z -HSPLandroid/icu/impl/CacheValue;->setStrength(Landroid/icu/impl/CacheValue$Strength;)V -HSPLandroid/icu/impl/CalType;->getId()Ljava/lang/String; -HSPLandroid/icu/impl/CalType;->values()[Landroid/icu/impl/CalType; -HSPLandroid/icu/impl/CalendarUtil$CalendarPreferences;->getCalendarTypeForRegion(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/CalendarUtil;->getCalendarType(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/impl/CaseMapImpl;->appendUnchanged(Ljava/lang/CharSequence;IILjava/lang/Appendable;ILandroid/icu/text/Edits;)V -HSPLandroid/icu/impl/CaseMapImpl;->applyEdits(Ljava/lang/CharSequence;Ljava/lang/StringBuilder;Landroid/icu/text/Edits;)Ljava/lang/String; -HSPLandroid/icu/impl/CaseMapImpl;->internalToUpper(IILjava/lang/CharSequence;Ljava/lang/Appendable;Landroid/icu/text/Edits;)V -HSPLandroid/icu/impl/CaseMapImpl;->toUpper(IILjava/lang/CharSequence;Ljava/lang/Appendable;Landroid/icu/text/Edits;)Ljava/lang/Appendable; -HSPLandroid/icu/impl/CharacterIteration;->nextTrail32(Ljava/text/CharacterIterator;I)I -HSPLandroid/icu/impl/CharacterIteration;->previous32(Ljava/text/CharacterIterator;)I -HSPLandroid/icu/impl/ClassLoaderUtil;->getClassLoader(Ljava/lang/Class;)Ljava/lang/ClassLoader; -HSPLandroid/icu/impl/CurrencyData$CurrencyDisplayInfo;-><init>()V -HSPLandroid/icu/impl/CurrencyData$CurrencySpacingInfo;-><init>()V -HSPLandroid/icu/impl/CurrencyData$CurrencySpacingInfo;->getAfterSymbols()[Ljava/lang/String; -HSPLandroid/icu/impl/CurrencyData$CurrencySpacingInfo;->getBeforeSymbols()[Ljava/lang/String; -HSPLandroid/icu/impl/CurrencyData$CurrencySpacingInfo;->setSymbolIfNull(Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingType;Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingPattern;Ljava/lang/String;)V -HSPLandroid/icu/impl/DateNumberFormat;-><init>(Landroid/icu/util/ULocale;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/DateNumberFormat;->getDigits()[C -HSPLandroid/icu/impl/DateNumberFormat;->initialize(Landroid/icu/util/ULocale;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/FormattedStringBuilder;-><init>()V -HSPLandroid/icu/impl/FormattedStringBuilder;-><init>(I)V -HSPLandroid/icu/impl/FormattedStringBuilder;-><init>(Landroid/icu/impl/FormattedStringBuilder;)V -HSPLandroid/icu/impl/FormattedStringBuilder;->charAt(I)C -HSPLandroid/icu/impl/FormattedStringBuilder;->clear()Landroid/icu/impl/FormattedStringBuilder; -HSPLandroid/icu/impl/FormattedStringBuilder;->copyFrom(Landroid/icu/impl/FormattedStringBuilder;)V -HSPLandroid/icu/impl/FormattedStringBuilder;->fieldAt(I)Ljava/lang/Object; -HSPLandroid/icu/impl/FormattedStringBuilder;->getCapacity()I -HSPLandroid/icu/impl/FormattedStringBuilder;->insert(ILjava/lang/CharSequence;IILjava/lang/Object;)I -HSPLandroid/icu/impl/FormattedStringBuilder;->insert(ILjava/lang/CharSequence;Ljava/lang/Object;)I -HSPLandroid/icu/impl/FormattedStringBuilder;->insert(I[C[Ljava/lang/Object;)I -HSPLandroid/icu/impl/FormattedStringBuilder;->insertCodePoint(IILjava/lang/Object;)I -HSPLandroid/icu/impl/FormattedStringBuilder;->length()I -HSPLandroid/icu/impl/FormattedStringBuilder;->prepareForInsert(II)I -HSPLandroid/icu/impl/FormattedStringBuilder;->subSequence(II)Ljava/lang/CharSequence; -HSPLandroid/icu/impl/FormattedStringBuilder;->toCharArray()[C -HSPLandroid/icu/impl/FormattedStringBuilder;->toFieldArray()[Ljava/lang/Object; -HSPLandroid/icu/impl/FormattedStringBuilder;->toString()Ljava/lang/String; -HSPLandroid/icu/impl/FormattedStringBuilder;->unwrapField(Ljava/lang/Object;)Ljava/text/Format$Field; -HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->isIntOrGroup(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->nextFieldPosition(Landroid/icu/impl/FormattedStringBuilder;Ljava/text/FieldPosition;)Z -HSPLandroid/icu/impl/FormattedValueStringBuilderImpl;->nextPosition(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/text/ConstrainedFieldPosition;Ljava/text/Format$Field;)Z+]Landroid/icu/text/ConstrainedFieldPosition;Landroid/icu/text/ConstrainedFieldPosition; -HSPLandroid/icu/impl/Grego;->dayOfWeek(J)I -HSPLandroid/icu/impl/Grego;->dayToFields(J[I)[I -HSPLandroid/icu/impl/Grego;->fieldsToDay(III)J -HSPLandroid/icu/impl/Grego;->floorDivide(JJ)J -HSPLandroid/icu/impl/Grego;->floorDivide(JJ[J)J -HSPLandroid/icu/impl/Grego;->isLeapYear(I)Z -HSPLandroid/icu/impl/Grego;->monthLength(II)I -HSPLandroid/icu/impl/Grego;->previousMonthLength(II)I -HSPLandroid/icu/impl/Grego;->timeToFields(J[I)[I -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->addBaseName(Ljava/nio/ByteBuffer;ILjava/lang/String;Ljava/lang/String;Ljava/lang/StringBuilder;Ljava/util/Set;)Z -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->addBaseNamesInFolder(Ljava/nio/ByteBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->binarySearch(Ljava/nio/ByteBuffer;Ljava/lang/CharSequence;)I -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->getData(Ljava/nio/ByteBuffer;Ljava/lang/CharSequence;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->getDataOffset(Ljava/nio/ByteBuffer;I)I -HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->getNameOffset(Ljava/nio/ByteBuffer;I)I -HSPLandroid/icu/impl/ICUBinary$PackageDataFile;->addBaseNamesInFolder(Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V -HSPLandroid/icu/impl/ICUBinary$PackageDataFile;->getData(Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary;->addBaseNamesInFileFolder(Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V -HSPLandroid/icu/impl/ICUBinary;->compareKeys(Ljava/lang/CharSequence;Ljava/nio/ByteBuffer;I)I -HSPLandroid/icu/impl/ICUBinary;->compareKeys(Ljava/lang/CharSequence;[BI)I -HSPLandroid/icu/impl/ICUBinary;->getBytes(Ljava/nio/ByteBuffer;II)[B -HSPLandroid/icu/impl/ICUBinary;->getChars(Ljava/nio/ByteBuffer;II)[C -HSPLandroid/icu/impl/ICUBinary;->getData(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary;->getData(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;Z)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary;->getData(Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary;->getDataFromFile(Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUBinary;->getInts(Ljava/nio/ByteBuffer;II)[I -HSPLandroid/icu/impl/ICUBinary;->getString(Ljava/nio/ByteBuffer;II)Ljava/lang/String; -HSPLandroid/icu/impl/ICUBinary;->readHeader(Ljava/nio/ByteBuffer;ILandroid/icu/impl/ICUBinary$Authenticate;)I -HSPLandroid/icu/impl/ICUBinary;->skipBytes(Ljava/nio/ByteBuffer;I)V -HSPLandroid/icu/impl/ICUBinary;->sliceWithOrder(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; -HSPLandroid/icu/impl/ICUConfig;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink;-><init>(ZLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink$EntrypointTable;)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink;->consumeCurrenciesEntry(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink;->consumeCurrencySpacingTable(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$FormattingData;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;-><init>(Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle;Z)V -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->fetchFormattingData(Ljava/lang/String;)Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$FormattingData; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->fetchSpacingInfo()Landroid/icu/impl/CurrencyData$CurrencySpacingInfo; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->getFormatInfo(Ljava/lang/String;)Landroid/icu/impl/CurrencyData$CurrencyFormatInfo; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->getSpacingInfo()Landroid/icu/impl/CurrencyData$CurrencySpacingInfo; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo;->getSymbol(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUCurrencyDisplayInfoProvider;->getInstance(Landroid/icu/util/ULocale;Z)Landroid/icu/impl/CurrencyData$CurrencyDisplayInfo; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;-><init>()V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;-><init>(Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector-IA;)V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->collect(Ljava/lang/String;Ljava/lang/String;JJIZ)V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->collects()I -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector;->getList()Ljava/util/List; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$UniqueList;->-$$Nest$smcreate()Landroid/icu/impl/ICUCurrencyMetaInfo$UniqueList; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$UniqueList;-><init>()V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$UniqueList;->add(Ljava/lang/Object;)V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$UniqueList;->create()Landroid/icu/impl/ICUCurrencyMetaInfo$UniqueList; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo$UniqueList;->list()Ljava/util/List; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo;->collect(Landroid/icu/impl/ICUCurrencyMetaInfo$Collector;Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter;)Ljava/util/List; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo;->collectRegion(Landroid/icu/impl/ICUCurrencyMetaInfo$Collector;Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter;ILandroid/icu/impl/ICUResourceBundle;)V -HSPLandroid/icu/impl/ICUCurrencyMetaInfo;->currencies(Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter;)Ljava/util/List; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo;->currencyDigits(Ljava/lang/String;Landroid/icu/util/Currency$CurrencyUsage;)Landroid/icu/text/CurrencyMetaInfo$CurrencyDigits; -HSPLandroid/icu/impl/ICUCurrencyMetaInfo;->getDate(Landroid/icu/impl/ICUResourceBundle;JZ)J -HSPLandroid/icu/impl/ICUData;->checkStreamForBinaryData(Ljava/io/InputStream;Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUData;->getStream(Ljava/lang/ClassLoader;Ljava/lang/String;Z)Ljava/io/InputStream; -HSPLandroid/icu/impl/ICULocaleService$ICUResourceBundleFactory;->getSupportedIDs()Ljava/util/Set; -HSPLandroid/icu/impl/ICULocaleService$ICUResourceBundleFactory;->loader()Ljava/lang/ClassLoader; -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->createWithCanonical(Landroid/icu/util/ULocale;Ljava/lang/String;I)Landroid/icu/impl/ICULocaleService$LocaleKey; -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->currentDescriptor()Ljava/lang/String; -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->currentID()Ljava/lang/String; -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->currentLocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->fallback()Z -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->kind()I -HSPLandroid/icu/impl/ICULocaleService$LocaleKey;->prefix()Ljava/lang/String; -HSPLandroid/icu/impl/ICULocaleService$LocaleKeyFactory;->create(Landroid/icu/impl/ICUService$Key;Landroid/icu/impl/ICUService;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICULocaleService$LocaleKeyFactory;->handlesKey(Landroid/icu/impl/ICUService$Key;)Z -HSPLandroid/icu/impl/ICULocaleService;->createKey(Landroid/icu/util/ULocale;I)Landroid/icu/impl/ICUService$Key; -HSPLandroid/icu/impl/ICULocaleService;->get(Landroid/icu/util/ULocale;I[Landroid/icu/util/ULocale;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICULocaleService;->get(Landroid/icu/util/ULocale;[Landroid/icu/util/ULocale;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICULocaleService;->validateFallbackLocale()Ljava/lang/String; -HSPLandroid/icu/impl/ICURWLock;->acquireRead()V -HSPLandroid/icu/impl/ICURWLock;->releaseRead()V -HSPLandroid/icu/impl/ICUResourceBundle$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundle$1;->createInstance(Ljava/lang/String;Landroid/icu/impl/ICUResourceBundle$Loader;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle$1AllChildrenSink;-><init>(Landroid/icu/impl/ICUResourceBundle;Landroid/icu/impl/UResource$Sink;)V -HSPLandroid/icu/impl/ICUResourceBundle$1AllChildrenSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/ICUResourceBundle$2$1;-><init>(Landroid/icu/impl/ICUResourceBundle$2;)V -HSPLandroid/icu/impl/ICUResourceBundle$2;-><init>(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/Set;)V -HSPLandroid/icu/impl/ICUResourceBundle$2;->run()Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundle$2;->run()Ljava/lang/Void; -HSPLandroid/icu/impl/ICUResourceBundle$3;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundle$3;->createInstance(Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundle$AvailEntry; -HSPLandroid/icu/impl/ICUResourceBundle$5;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundle$OpenType;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUResourceBundle$5;->load()Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle$AvailEntry;->getFullLocaleNameSet()Ljava/util/Set; -HSPLandroid/icu/impl/ICUResourceBundle$Loader;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundle$Loader;-><init>(Landroid/icu/impl/ICUResourceBundle$Loader-IA;)V -HSPLandroid/icu/impl/ICUResourceBundle$WholeBundle;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundleReader;)V -HSPLandroid/icu/impl/ICUResourceBundle;->-$$Nest$mgetNoFallback(Landroid/icu/impl/ICUResourceBundle;)Z -HSPLandroid/icu/impl/ICUResourceBundle;->-$$Nest$sfgetDEBUG()Z -HSPLandroid/icu/impl/ICUResourceBundle;->-$$Nest$sminstantiateBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundle$OpenType;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;-><init>(Landroid/icu/impl/ICUResourceBundle$WholeBundle;)V -HSPLandroid/icu/impl/ICUResourceBundle;-><init>(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUResourceBundle;->addBundleBaseNamesFromClassLoader(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/util/Set;)V -HSPLandroid/icu/impl/ICUResourceBundle;->at(I)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->at(Ljava/lang/String;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->countPathKeys(Ljava/lang/String;)I -HSPLandroid/icu/impl/ICUResourceBundle;->createBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->createFullLocaleNameSet(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Set; -HSPLandroid/icu/impl/ICUResourceBundle;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/ICUResourceBundle;->findResourceWithFallback(Ljava/lang/String;Landroid/icu/util/UResourceBundle;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->findResourceWithFallback([Ljava/lang/String;ILandroid/icu/impl/ICUResourceBundle;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->findStringWithFallback(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->findStringWithFallback(Ljava/lang/String;Landroid/icu/util/UResourceBundle;Landroid/icu/util/UResourceBundle;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->findTopLevel(Ljava/lang/String;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->findTopLevel(Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->findWithFallback(Ljava/lang/String;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->get(Ljava/lang/String;Ljava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getAliasedResource(Landroid/icu/impl/ICUResourceBundle;[Ljava/lang/String;ILjava/lang/String;ILjava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getAliasedResource(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;[Ljava/lang/String;I[Ljava/lang/String;Ljava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getAllChildrenWithFallback(Ljava/lang/String;Landroid/icu/impl/UResource$Sink;)V -HSPLandroid/icu/impl/ICUResourceBundle;->getAllItemsWithFallback(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/ICUResourceBundleReader$ReaderValue;Landroid/icu/impl/UResource$Sink;Landroid/icu/util/UResourceBundle;)V -HSPLandroid/icu/impl/ICUResourceBundle;->getAllItemsWithFallback(Ljava/lang/String;Landroid/icu/impl/UResource$Sink;)V -HSPLandroid/icu/impl/ICUResourceBundle;->getAllItemsWithFallbackNoFail(Ljava/lang/String;Landroid/icu/impl/UResource$Sink;)V -HSPLandroid/icu/impl/ICUResourceBundle;->getAvailEntry(Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundle$AvailEntry; -HSPLandroid/icu/impl/ICUResourceBundle;->getBaseName()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getBundle(Landroid/icu/impl/ICUResourceBundleReader;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getBundleInstance(Ljava/lang/String;Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle$OpenType;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getBundleInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundle$OpenType;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getBundleInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getDefaultScript(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getExplicitParent(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getFullLocaleNameSet(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Set; -HSPLandroid/icu/impl/ICUResourceBundle;->getKey()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getLocale()Ljava/util/Locale; -HSPLandroid/icu/impl/ICUResourceBundle;->getLocaleID()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getNoFallback()Z -HSPLandroid/icu/impl/ICUResourceBundle;->getParent()Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getParent()Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->getParentLocaleID(Ljava/lang/String;Ljava/lang/String;Landroid/icu/impl/ICUResourceBundle$OpenType;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getResDepth()I -HSPLandroid/icu/impl/ICUResourceBundle;->getResPathKeys(Ljava/lang/String;I[Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundle;->getResPathKeys([Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundle;->getStringWithFallback(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundle;->getULocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/impl/ICUResourceBundle;->getWithFallback(Ljava/lang/String;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->instantiateBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundle$OpenType;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundle;->setParent(Ljava/util/ResourceBundle;)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceArray;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceArray;->getStringArray()[Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceArray;->getType()I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceArray;->handleGet(ILjava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceArray;->handleGetStringArray()[Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceBinary;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceBinary;->getBinary([B)[B -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;-><init>(Landroid/icu/impl/ICUResourceBundle$WholeBundle;)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;->createBundleObject(ILjava/lang/String;Ljava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;->getContainerResource(I)I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;->getSize()I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceContainer;->getString(I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceInt;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceInt;->getInt()I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceIntVector;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceIntVector;->getIntVector()[I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceString;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceString;->getString()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceString;->getType()I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;-><init>(Landroid/icu/impl/ICUResourceBundle$WholeBundle;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;->findString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;->getType()I -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;->handleGet(ILjava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;->handleGet(Ljava/lang/String;Ljava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundleImpl$ResourceTable;->handleGetObject(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleImpl;-><init>(Landroid/icu/impl/ICUResourceBundle$WholeBundle;)V -HSPLandroid/icu/impl/ICUResourceBundleImpl;-><init>(Landroid/icu/impl/ICUResourceBundleImpl;Ljava/lang/String;I)V -HSPLandroid/icu/impl/ICUResourceBundleImpl;->createBundleObject(Ljava/lang/String;ILjava/util/HashMap;Landroid/icu/util/UResourceBundle;)Landroid/icu/impl/ICUResourceBundle; -HSPLandroid/icu/impl/ICUResourceBundleImpl;->getResource()I -HSPLandroid/icu/impl/ICUResourceBundleReader$Array16;-><init>(Landroid/icu/impl/ICUResourceBundleReader;I)V -HSPLandroid/icu/impl/ICUResourceBundleReader$Array16;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Array32;-><init>(Landroid/icu/impl/ICUResourceBundleReader;I)V -HSPLandroid/icu/impl/ICUResourceBundleReader$Array32;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Array;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundleReader$Array;->getValue(ILandroid/icu/impl/UResource$Value;)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainer16Resource(Landroid/icu/impl/ICUResourceBundleReader;I)I+]Ljava/nio/CharBuffer;Ljava/nio/ByteBufferAsCharBuffer; -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainer32Resource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Container;->getSize()I -HSPLandroid/icu/impl/ICUResourceBundleReader$IsAcceptable;->isDataVersionAcceptable([B)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderCache;->createInstance(Landroid/icu/impl/ICUResourceBundleReader$ReaderCacheKey;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundleReader; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderCache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderCacheKey;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderCacheKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderCacheKey;->hashCode()I -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getAliasString()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getArray()Landroid/icu/impl/UResource$Array; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getString()Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getStringArray()[Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getStringArray(Landroid/icu/impl/ICUResourceBundleReader$Array;)[Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getTable()Landroid/icu/impl/UResource$Table; -HSPLandroid/icu/impl/ICUResourceBundleReader$ReaderValue;->getType()I -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level;->get(I)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level;->putIfAbsent(ILjava/lang/Object;I)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;-><init>(I)V -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->findSimple(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->get(I)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->makeKey(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->putIfAbsent(ILjava/lang/Object;I)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->putIfCleared([Ljava/lang/Object;ILjava/lang/Object;I)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUResourceBundleReader$ResourceCache;->storeDirectly(I)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$Table1632;-><init>(Landroid/icu/impl/ICUResourceBundleReader;I)V -HSPLandroid/icu/impl/ICUResourceBundleReader$Table1632;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Table16;->getContainerResource(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;-><init>()V -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->findTableItem(Landroid/icu/impl/ICUResourceBundleReader;Ljava/lang/CharSequence;)I -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->findValue(Ljava/lang/CharSequence;Landroid/icu/impl/UResource$Value;)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->getKey(Landroid/icu/impl/ICUResourceBundleReader;I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->getKeyAndValue(ILandroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)Z -HSPLandroid/icu/impl/ICUResourceBundleReader$Table;->getResource(Landroid/icu/impl/ICUResourceBundleReader;Ljava/lang/String;)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$fgetb16BitUnits(Landroid/icu/impl/ICUResourceBundleReader;)Ljava/nio/CharBuffer; -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$fgetpoolStringIndex16Limit(Landroid/icu/impl/ICUResourceBundleReader;)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$fgetpoolStringIndexLimit(Landroid/icu/impl/ICUResourceBundleReader;)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$mcompareKeys(Landroid/icu/impl/ICUResourceBundleReader;Ljava/lang/CharSequence;C)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$mgetInt(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$mgetResourceByteOffset(Landroid/icu/impl/ICUResourceBundleReader;I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$mgetTableKeyOffsets(Landroid/icu/impl/ICUResourceBundleReader;I)[C -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$sfgetNULL_READER()Landroid/icu/impl/ICUResourceBundleReader; -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$sfgetPUBLIC_TYPES()[I -HSPLandroid/icu/impl/ICUResourceBundleReader;->-$$Nest$smRES_GET_OFFSET(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;-><init>(Ljava/nio/ByteBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLandroid/icu/impl/ICUResourceBundleReader;-><init>(Ljava/nio/ByteBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Landroid/icu/impl/ICUResourceBundleReader-IA;)V -HSPLandroid/icu/impl/ICUResourceBundleReader;->RES_GET_INT(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->RES_GET_OFFSET(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->RES_GET_TYPE(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->URES_IS_ARRAY(I)Z -HSPLandroid/icu/impl/ICUResourceBundleReader;->URES_IS_TABLE(I)Z -HSPLandroid/icu/impl/ICUResourceBundleReader;->compareKeys(Ljava/lang/CharSequence;C)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getAlias(I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getArray(I)Landroid/icu/impl/ICUResourceBundleReader$Array; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getBinary(I[B)[B -HSPLandroid/icu/impl/ICUResourceBundleReader;->getChars(II)[C -HSPLandroid/icu/impl/ICUResourceBundleReader;->getFullName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getIndexesInt(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getInt(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getIntVector(I)[I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getInts(II)[I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getKey16String(I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getNoFallback()Z -HSPLandroid/icu/impl/ICUResourceBundleReader;->getReader(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/impl/ICUResourceBundleReader; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getResourceByteOffset(I)I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getRootResource()I -HSPLandroid/icu/impl/ICUResourceBundleReader;->getString(I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getStringV2(I)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getTable(I)Landroid/icu/impl/ICUResourceBundleReader$Table; -HSPLandroid/icu/impl/ICUResourceBundleReader;->getTable16KeyOffsets(I)[C -HSPLandroid/icu/impl/ICUResourceBundleReader;->getTableKeyOffsets(I)[C -HSPLandroid/icu/impl/ICUResourceBundleReader;->init(Ljava/nio/ByteBuffer;)V -HSPLandroid/icu/impl/ICUResourceBundleReader;->makeKeyStringFromBytes([BI)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->makeStringFromBytes(II)Ljava/lang/String; -HSPLandroid/icu/impl/ICUResourceBundleReader;->setKeyFromKey16(ILandroid/icu/impl/UResource$Key;)V -HSPLandroid/icu/impl/ICUService$CacheEntry;-><init>(Ljava/lang/String;Ljava/lang/Object;)V -HSPLandroid/icu/impl/ICUService$Key;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/ICUService;->clearServiceCache()V -HSPLandroid/icu/impl/ICUService;->getKey(Landroid/icu/impl/ICUService$Key;[Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUService;->getKey(Landroid/icu/impl/ICUService$Key;[Ljava/lang/String;Landroid/icu/impl/ICUService$Factory;)Ljava/lang/Object; -HSPLandroid/icu/impl/ICUService;->isDefault()Z -HSPLandroid/icu/impl/IDNA2003;->convertIDNToASCII(Ljava/lang/String;I)Ljava/lang/StringBuffer; -HSPLandroid/icu/impl/IDNA2003;->convertToASCII(Landroid/icu/text/UCharacterIterator;I)Ljava/lang/StringBuffer; -HSPLandroid/icu/impl/IDNA2003;->getSeparatorIndex([CII)I -HSPLandroid/icu/impl/IDNA2003;->isLDHChar(I)Z -HSPLandroid/icu/impl/IDNA2003;->isLabelSeparator(I)Z -HSPLandroid/icu/impl/LocaleIDParser$1;-><init>(Landroid/icu/impl/LocaleIDParser;)V -HSPLandroid/icu/impl/LocaleIDParser$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/icu/impl/LocaleIDParser$1;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/icu/impl/LocaleIDParser;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/LocaleIDParser;-><init>(Ljava/lang/String;Z)V -HSPLandroid/icu/impl/LocaleIDParser;->addSeparator()V -HSPLandroid/icu/impl/LocaleIDParser;->append(C)V -HSPLandroid/icu/impl/LocaleIDParser;->append(Ljava/lang/String;)V -HSPLandroid/icu/impl/LocaleIDParser;->atTerminator()Z -HSPLandroid/icu/impl/LocaleIDParser;->getBaseName()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getCountry()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getKeyComparator()Ljava/util/Comparator; -HSPLandroid/icu/impl/LocaleIDParser;->getKeyword()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getKeywordMap()Ljava/util/Map; -HSPLandroid/icu/impl/LocaleIDParser;->getKeywordValue(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getKeywords()Ljava/util/Iterator; -HSPLandroid/icu/impl/LocaleIDParser;->getLanguage()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getName()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getScript()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getString(I)Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getValue()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->getVariant()Ljava/lang/String; -HSPLandroid/icu/impl/LocaleIDParser;->haveExperimentalLanguagePrefix()Z -HSPLandroid/icu/impl/LocaleIDParser;->haveKeywordAssign()Z -HSPLandroid/icu/impl/LocaleIDParser;->isDoneOrItemSeparator(C)Z -HSPLandroid/icu/impl/LocaleIDParser;->isDoneOrKeywordAssign(C)Z -HSPLandroid/icu/impl/LocaleIDParser;->isTerminator(C)Z -HSPLandroid/icu/impl/LocaleIDParser;->isTerminatorOrIDSeparator(C)Z -HSPLandroid/icu/impl/LocaleIDParser;->next()C -HSPLandroid/icu/impl/LocaleIDParser;->parseBaseName()V -HSPLandroid/icu/impl/LocaleIDParser;->parseCountry()I -HSPLandroid/icu/impl/LocaleIDParser;->parseKeywords()I -HSPLandroid/icu/impl/LocaleIDParser;->parseLanguage()I -HSPLandroid/icu/impl/LocaleIDParser;->parseScript()I -HSPLandroid/icu/impl/LocaleIDParser;->parseVariant()I -HSPLandroid/icu/impl/LocaleIDParser;->reset()V -HSPLandroid/icu/impl/LocaleIDParser;->setKeywordValue(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/LocaleIDParser;->setKeywordValue(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLandroid/icu/impl/LocaleIDParser;->setToKeywordStart()Z -HSPLandroid/icu/impl/LocaleIDParser;->skipCountry()V -HSPLandroid/icu/impl/LocaleIDParser;->skipLanguage()V -HSPLandroid/icu/impl/LocaleIDParser;->skipScript()V -HSPLandroid/icu/impl/LocaleIDParser;->skipUntilTerminatorOrIDSeparator()V -HSPLandroid/icu/impl/Norm2AllModes$ComposeNormalizer2;->spanQuickCheckYes(Ljava/lang/CharSequence;)I -HSPLandroid/icu/impl/Norm2AllModes$DecomposeNormalizer2;->normalizeAndAppend(Ljava/lang/CharSequence;ZLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;)V -HSPLandroid/icu/impl/Norm2AllModes$DecomposeNormalizer2;->spanQuickCheckYes(Ljava/lang/CharSequence;)I -HSPLandroid/icu/impl/Norm2AllModes$NFKCSingleton;->-$$Nest$sfgetINSTANCE()Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton; -HSPLandroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;->-$$Nest$fgetallModes(Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;)Landroid/icu/impl/Norm2AllModes; -HSPLandroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;->-$$Nest$fgetexception(Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;)Ljava/lang/RuntimeException; -HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalize(Ljava/lang/CharSequence;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder; -HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalizeSecondAndAppend(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; -HSPLandroid/icu/impl/Norm2AllModes$Normalizer2WithImpl;->normalizeSecondAndAppend(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder; -HSPLandroid/icu/impl/Norm2AllModes;->getFCDNormalizer2()Landroid/icu/text/Normalizer2; -HSPLandroid/icu/impl/Norm2AllModes;->getInstanceFromSingleton(Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton;)Landroid/icu/impl/Norm2AllModes; -HSPLandroid/icu/impl/Norm2AllModes;->getNFCInstance()Landroid/icu/impl/Norm2AllModes; -HSPLandroid/icu/impl/Norm2AllModes;->getNFKCInstance()Landroid/icu/impl/Norm2AllModes; -HSPLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;-><init>(Landroid/icu/impl/Normalizer2Impl;Ljava/lang/Appendable;I)V -HSPLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;->append(Ljava/lang/CharSequence;IIZII)V -HSPLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;->flushAndAppendZeroCC(Ljava/lang/CharSequence;II)Landroid/icu/impl/Normalizer2Impl$ReorderingBuffer; -HSPLandroid/icu/impl/Normalizer2Impl;->addToStartSet(Landroid/icu/util/MutableCodePointTrie;II)V -HSPLandroid/icu/impl/Normalizer2Impl;->composeQuickCheck(Ljava/lang/CharSequence;IIZZ)I -HSPLandroid/icu/impl/Normalizer2Impl;->decompose(IILandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;)V -HSPLandroid/icu/impl/Normalizer2Impl;->decompose(Ljava/lang/CharSequence;IILandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;)I -HSPLandroid/icu/impl/Normalizer2Impl;->decomposeAndAppend(Ljava/lang/CharSequence;ZLandroid/icu/impl/Normalizer2Impl$ReorderingBuffer;)V -HSPLandroid/icu/impl/Normalizer2Impl;->ensureCanonIterData()Landroid/icu/impl/Normalizer2Impl; -HSPLandroid/icu/impl/Normalizer2Impl;->getRawNorm16(I)I -HSPLandroid/icu/impl/Normalizer2Impl;->hangulLVT()I -HSPLandroid/icu/impl/Normalizer2Impl;->isDecompNoAlgorithmic(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->isDecompYes(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->isHangulLV(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->isHangulLVT(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->isInert(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->isMaybeOrNonZeroCC(I)Z -HSPLandroid/icu/impl/Normalizer2Impl;->mapAlgorithmic(II)I -HSPLandroid/icu/impl/OlsonTimeZone;-><init>(Landroid/icu/util/UResourceBundle;Landroid/icu/util/UResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/OlsonTimeZone;->clone()Ljava/lang/Object; -HSPLandroid/icu/impl/OlsonTimeZone;->cloneAsThawed()Landroid/icu/util/TimeZone; -HSPLandroid/icu/impl/OlsonTimeZone;->construct(Landroid/icu/util/UResourceBundle;Landroid/icu/util/UResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/OlsonTimeZone;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/OlsonTimeZone;->freeze()Landroid/icu/util/TimeZone; -HSPLandroid/icu/impl/OlsonTimeZone;->getCanonicalID()Ljava/lang/String; -HSPLandroid/icu/impl/OlsonTimeZone;->getHistoricalOffset(JZII[I)V -HSPLandroid/icu/impl/OlsonTimeZone;->getInt(B)I -HSPLandroid/icu/impl/OlsonTimeZone;->getNextTransition(JZ)Landroid/icu/util/TimeZoneTransition; -HSPLandroid/icu/impl/OlsonTimeZone;->getOffset(JZ[I)V -HSPLandroid/icu/impl/OlsonTimeZone;->getTimeZoneRules()[Landroid/icu/util/TimeZoneRule; -HSPLandroid/icu/impl/OlsonTimeZone;->hashCode()I -HSPLandroid/icu/impl/OlsonTimeZone;->initTransitionRules()V -HSPLandroid/icu/impl/OlsonTimeZone;->initialDstOffset()I -HSPLandroid/icu/impl/OlsonTimeZone;->initialRawOffset()I -HSPLandroid/icu/impl/OlsonTimeZone;->isFrozen()Z -HSPLandroid/icu/impl/OlsonTimeZone;->loadRule(Landroid/icu/util/UResourceBundle;Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/OlsonTimeZone;->toString()Ljava/lang/String; -HSPLandroid/icu/impl/PatternProps;->isWhiteSpace(I)Z -HSPLandroid/icu/impl/PatternProps;->skipWhiteSpace(Ljava/lang/CharSequence;I)I -HSPLandroid/icu/impl/PatternTokenizer;-><init>()V -HSPLandroid/icu/impl/PatternTokenizer;->next(Ljava/lang/StringBuffer;)I -HSPLandroid/icu/impl/PatternTokenizer;->quoteLiteral(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/PatternTokenizer;->setExtraQuotingCharacters(Landroid/icu/text/UnicodeSet;)Landroid/icu/impl/PatternTokenizer; -HSPLandroid/icu/impl/PatternTokenizer;->setPattern(Ljava/lang/String;)Landroid/icu/impl/PatternTokenizer; -HSPLandroid/icu/impl/PatternTokenizer;->setSyntaxCharacters(Landroid/icu/text/UnicodeSet;)Landroid/icu/impl/PatternTokenizer; -HSPLandroid/icu/impl/PatternTokenizer;->setUsingQuote(Z)Landroid/icu/impl/PatternTokenizer; -HSPLandroid/icu/impl/PluralRulesLoader;->checkBuildRulesIdMaps()V -HSPLandroid/icu/impl/PluralRulesLoader;->forLocale(Landroid/icu/util/ULocale;Landroid/icu/text/PluralRules$PluralType;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/impl/PluralRulesLoader;->getLocaleIdToRulesIdMap(Landroid/icu/text/PluralRules$PluralType;)Ljava/util/Map; -HSPLandroid/icu/impl/PluralRulesLoader;->getOrCreateRulesForLocale(Landroid/icu/util/ULocale;Landroid/icu/text/PluralRules$PluralType;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/impl/PluralRulesLoader;->getPluralBundle()Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/PluralRulesLoader;->getRulesIdForLocale(Landroid/icu/util/ULocale;Landroid/icu/text/PluralRules$PluralType;)Ljava/lang/String; -HSPLandroid/icu/impl/RBBIDataWrapper$IsAcceptable;->isDataVersionAcceptable([B)Z -HSPLandroid/icu/impl/RBBIDataWrapper$RBBIDataHeader;-><init>()V -HSPLandroid/icu/impl/RBBIDataWrapper$RBBIStateTable;-><init>()V -HSPLandroid/icu/impl/RBBIDataWrapper$RBBIStateTable;->get(Ljava/nio/ByteBuffer;I)Landroid/icu/impl/RBBIDataWrapper$RBBIStateTable; -HSPLandroid/icu/impl/RBBIDataWrapper;-><init>()V -HSPLandroid/icu/impl/RBBIDataWrapper;->get(Ljava/nio/ByteBuffer;)Landroid/icu/impl/RBBIDataWrapper; -HSPLandroid/icu/impl/ReplaceableUCharacterIterator;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/ReplaceableUCharacterIterator;->getLength()I -HSPLandroid/icu/impl/ReplaceableUCharacterIterator;->getText([CI)I -HSPLandroid/icu/impl/ReplaceableUCharacterIterator;->next()I -HSPLandroid/icu/impl/ReplaceableUCharacterIterator;->setIndex(I)V -HSPLandroid/icu/impl/RuleCharacterIterator;->_advance(I)V -HSPLandroid/icu/impl/RuleCharacterIterator;->_current()I -HSPLandroid/icu/impl/RuleCharacterIterator;->atEnd()Z -HSPLandroid/icu/impl/RuleCharacterIterator;->getPos(Landroid/icu/impl/RuleCharacterIterator$Position;)Landroid/icu/impl/RuleCharacterIterator$Position; -HSPLandroid/icu/impl/RuleCharacterIterator;->isEscaped()Z -HSPLandroid/icu/impl/RuleCharacterIterator;->next(I)I -HSPLandroid/icu/impl/RuleCharacterIterator;->setPos(Landroid/icu/impl/RuleCharacterIterator$Position;)V -HSPLandroid/icu/impl/RuleCharacterIterator;->skipIgnored(I)V -HSPLandroid/icu/impl/SimpleCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/SimpleCache;->put(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/icu/impl/SimpleFormatterImpl;->compileToStringMinMaxArguments(Ljava/lang/CharSequence;Ljava/lang/StringBuilder;II)Ljava/lang/String; -HSPLandroid/icu/impl/SimpleFormatterImpl;->format(Ljava/lang/String;[Ljava/lang/CharSequence;Ljava/lang/StringBuilder;Ljava/lang/String;Z[I)Ljava/lang/StringBuilder; -HSPLandroid/icu/impl/SimpleFormatterImpl;->formatPrefixSuffix(Ljava/lang/String;Ljava/text/Format$Field;IILandroid/icu/impl/FormattedStringBuilder;)I -HSPLandroid/icu/impl/SimpleFormatterImpl;->formatRawPattern(Ljava/lang/String;II[Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLandroid/icu/impl/SimpleFormatterImpl;->getArgumentLimit(Ljava/lang/String;)I -HSPLandroid/icu/impl/SoftCache;->getInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/StandardPlural;->fromString(Ljava/lang/CharSequence;)Landroid/icu/impl/StandardPlural; -HSPLandroid/icu/impl/StandardPlural;->orNullFromString(Ljava/lang/CharSequence;)Landroid/icu/impl/StandardPlural; -HSPLandroid/icu/impl/StandardPlural;->orOtherFromString(Ljava/lang/CharSequence;)Landroid/icu/impl/StandardPlural; -HSPLandroid/icu/impl/StandardPlural;->values()[Landroid/icu/impl/StandardPlural; -HSPLandroid/icu/impl/StaticUnicodeSets;->chooseFrom(Ljava/lang/String;Landroid/icu/impl/StaticUnicodeSets$Key;)Landroid/icu/impl/StaticUnicodeSets$Key; -HSPLandroid/icu/impl/StaticUnicodeSets;->chooseFrom(Ljava/lang/String;Landroid/icu/impl/StaticUnicodeSets$Key;Landroid/icu/impl/StaticUnicodeSets$Key;)Landroid/icu/impl/StaticUnicodeSets$Key; -HSPLandroid/icu/impl/StaticUnicodeSets;->get(Landroid/icu/impl/StaticUnicodeSets$Key;)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/impl/StringSegment;-><init>(Ljava/lang/String;Z)V -HSPLandroid/icu/impl/StringSegment;->adjustOffset(I)V -HSPLandroid/icu/impl/StringSegment;->charAt(I)C+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/icu/impl/StringSegment;->codePointsEqual(IIZ)Z -HSPLandroid/icu/impl/StringSegment;->getCodePoint()I+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/icu/impl/StringSegment;->getCommonPrefixLength(Ljava/lang/CharSequence;)I -HSPLandroid/icu/impl/StringSegment;->getOffset()I -HSPLandroid/icu/impl/StringSegment;->getPrefixLengthInternal(Ljava/lang/CharSequence;Z)I+]Landroid/icu/impl/StringSegment;Landroid/icu/impl/StringSegment;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/icu/impl/StringSegment;->length()I -HSPLandroid/icu/impl/StringSegment;->startsWith(Landroid/icu/text/UnicodeSet;)Z+]Landroid/icu/impl/StringSegment;Landroid/icu/impl/StringSegment;]Landroid/icu/text/UnicodeSet;Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/impl/StringSegment;->startsWith(Ljava/lang/CharSequence;)Z -HSPLandroid/icu/impl/TextTrieMap$Node;-><init>(Landroid/icu/impl/TextTrieMap;)V -HSPLandroid/icu/impl/TextTrieMap;-><init>(Z)V -HSPLandroid/icu/impl/TimeZoneNamesFactoryImpl;->getTimeZoneNames(Landroid/icu/util/ULocale;)Landroid/icu/text/TimeZoneNames; -HSPLandroid/icu/impl/TimeZoneNamesImpl$MZMapEntry;-><init>(Ljava/lang/String;JJ)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$MZMapEntry;->from()J -HSPLandroid/icu/impl/TimeZoneNamesImpl$MZMapEntry;->mzID()Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl$MZMapEntry;->to()J -HSPLandroid/icu/impl/TimeZoneNamesImpl$TZ2MZsCache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/TimeZoneNamesImpl$TZ2MZsCache;->createInstance(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/icu/impl/TimeZoneNamesImpl$TZ2MZsCache;->parseDate(Ljava/lang/String;)J -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;-><init>([Ljava/lang/String;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->createMetaZoneAndPutInCache(Ljava/util/Map;[Ljava/lang/String;Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->createTimeZoneAndPutInCache(Ljava/util/Map;[Ljava/lang/String;Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->getName(Landroid/icu/text/TimeZoneNames$NameType;)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNames;->getNameTypeIndex(Landroid/icu/text/TimeZoneNames$NameType;)I -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->-$$Nest$mgetNames(Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;)[Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;-><init>()V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;-><init>(Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader-IA;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->getNames()[Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->loadMetaZone(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->loadNames(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->loadTimeZone(Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->nameTypeIndexFromKey(Landroid/icu/impl/UResource$Key;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames$NameTypeIndex; -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader;->setNameIfEmpty(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl;-><init>(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl;->_getAvailableMetaZoneIDs(Ljava/lang/String;)Ljava/util/Set; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->_getMetaZoneID(Ljava/lang/String;J)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->getAvailableMetaZoneIDs(Ljava/lang/String;)Ljava/util/Set; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->getDefaultExemplarLocationName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->getMetaZoneDisplayName(Ljava/lang/String;Landroid/icu/text/TimeZoneNames$NameType;)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->getMetaZoneID(Ljava/lang/String;J)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->getTimeZoneDisplayName(Ljava/lang/String;Landroid/icu/text/TimeZoneNames$NameType;)Ljava/lang/String; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->initialize(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadMetaZoneNames(Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadStrings(Ljava/lang/String;)V -HSPLandroid/icu/impl/TimeZoneNamesImpl;->loadTimeZoneNames(Ljava/lang/String;)Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -HSPLandroid/icu/impl/Trie2;-><init>()V -HSPLandroid/icu/impl/Trie2;->createFromSerialized(Ljava/nio/ByteBuffer;)Landroid/icu/impl/Trie2; -HSPLandroid/icu/impl/Trie2Writable;-><init>(II)V -HSPLandroid/icu/impl/Trie2Writable;->allocDataBlock(I)I -HSPLandroid/icu/impl/Trie2Writable;->fillBlock(IIIIIZ)V -HSPLandroid/icu/impl/Trie2Writable;->getDataBlock(IZ)I -HSPLandroid/icu/impl/Trie2Writable;->getIndex2Block(IZ)I -HSPLandroid/icu/impl/Trie2Writable;->init(II)V -HSPLandroid/icu/impl/Trie2Writable;->isWritableBlock(I)Z -HSPLandroid/icu/impl/Trie2Writable;->set(II)Landroid/icu/impl/Trie2Writable; -HSPLandroid/icu/impl/Trie2Writable;->set(IZI)Landroid/icu/impl/Trie2Writable; -HSPLandroid/icu/impl/Trie2Writable;->setIndex2Entry(II)V -HSPLandroid/icu/impl/Trie2Writable;->setRange(IIIZ)Landroid/icu/impl/Trie2Writable; -HSPLandroid/icu/impl/Trie2Writable;->writeBlock(II)V -HSPLandroid/icu/impl/Trie2_16;->get(I)I -HSPLandroid/icu/impl/Trie2_32;->get(I)I -HSPLandroid/icu/impl/Trie2_32;->getFromU16SingleLead(C)I -HSPLandroid/icu/impl/UBiDiProps;->getClass(I)I -HSPLandroid/icu/impl/UBiDiProps;->getClassFromProps(I)I -HSPLandroid/icu/impl/UCaseProps;->fold(II)I+]Landroid/icu/impl/Trie2_16;Landroid/icu/impl/Trie2_16; -HSPLandroid/icu/impl/UCaseProps;->getCaseLocale(Ljava/lang/String;)I -HSPLandroid/icu/impl/UCaseProps;->getCaseLocale(Ljava/util/Locale;)I -HSPLandroid/icu/impl/UCaseProps;->getDelta(I)I -HSPLandroid/icu/impl/UCaseProps;->isUpperOrTitleFromProps(I)Z -HSPLandroid/icu/impl/UCaseProps;->propsHasException(I)Z -HSPLandroid/icu/impl/UCaseProps;->toUpperOrTitle(ILandroid/icu/impl/UCaseProps$ContextIterator;Ljava/lang/Appendable;IZ)I -HSPLandroid/icu/impl/UCharacterProperty$IntProperty;->getValue(I)I -HSPLandroid/icu/impl/UCharacterProperty;->digit(I)I -HSPLandroid/icu/impl/UCharacterProperty;->getIntPropertyValue(II)I -HSPLandroid/icu/impl/UCharacterProperty;->getNumericTypeValue(I)I -HSPLandroid/icu/impl/UCharacterProperty;->getProperty(I)I -HSPLandroid/icu/impl/UCharacterProperty;->getType(I)I -HSPLandroid/icu/impl/UPropertyAliases;->asciiToLowercase(I)I -HSPLandroid/icu/impl/UPropertyAliases;->containsName(Landroid/icu/util/BytesTrie;Ljava/lang/CharSequence;)Z -HSPLandroid/icu/impl/UPropertyAliases;->findProperty(I)I -HSPLandroid/icu/impl/UPropertyAliases;->getPropertyOrValueEnum(ILjava/lang/CharSequence;)I -HSPLandroid/icu/impl/UPropertyAliases;->getPropertyValueEnumNoThrow(ILjava/lang/CharSequence;)I -HSPLandroid/icu/impl/UResource$Key;-><init>()V -HSPLandroid/icu/impl/UResource$Key;->charAt(I)C -HSPLandroid/icu/impl/UResource$Key;->contentEquals(Ljava/lang/CharSequence;)Z -HSPLandroid/icu/impl/UResource$Key;->endsWith(Ljava/lang/CharSequence;)Z -HSPLandroid/icu/impl/UResource$Key;->internalSubString(II)Ljava/lang/String; -HSPLandroid/icu/impl/UResource$Key;->length()I -HSPLandroid/icu/impl/UResource$Key;->regionMatches(ILjava/lang/CharSequence;I)Z -HSPLandroid/icu/impl/UResource$Key;->setBytes([BI)Landroid/icu/impl/UResource$Key; -HSPLandroid/icu/impl/UResource$Key;->setString(Ljava/lang/String;)Landroid/icu/impl/UResource$Key; -HSPLandroid/icu/impl/UResource$Key;->toString()Ljava/lang/String; -HSPLandroid/icu/impl/UResource$Sink;-><init>()V -HSPLandroid/icu/impl/UResource$Value;-><init>()V -HSPLandroid/icu/impl/UResource$Value;->toString()Ljava/lang/String; -HSPLandroid/icu/impl/Utility;->addExact(II)I -HSPLandroid/icu/impl/Utility;->appendTo(Ljava/lang/CharSequence;Ljava/lang/Appendable;)Ljava/lang/Appendable; -HSPLandroid/icu/impl/Utility;->arrayEquals([BLjava/lang/Object;)Z -HSPLandroid/icu/impl/Utility;->arrayRegionMatches([BI[BII)Z -HSPLandroid/icu/impl/Utility;->sameObjects(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLandroid/icu/impl/Utility;->shouldAlwaysBeEscaped(I)Z -HSPLandroid/icu/impl/ZoneMeta$SystemTimeZoneCache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/ZoneMeta$SystemTimeZoneCache;->createInstance(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/impl/OlsonTimeZone; -HSPLandroid/icu/impl/ZoneMeta;->findCLDRCanonicalID(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ZoneMeta;->getCanonicalCLDRID(Landroid/icu/util/TimeZone;)Ljava/lang/String; -HSPLandroid/icu/impl/ZoneMeta;->getCanonicalCLDRID(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/ZoneMeta;->getSystemTimeZone(Ljava/lang/String;)Landroid/icu/impl/OlsonTimeZone; -HSPLandroid/icu/impl/ZoneMeta;->getZoneIDs()[Ljava/lang/String; -HSPLandroid/icu/impl/ZoneMeta;->getZoneIndex(Ljava/lang/String;)I -HSPLandroid/icu/impl/ZoneMeta;->openOlsonResource(Landroid/icu/util/UResourceBundle;Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/breakiter/DictionaryBreakEngine$DequeI;->clone()Ljava/lang/Object; -HSPLandroid/icu/impl/breakiter/DictionaryBreakEngine$DequeI;->removeAllElements()V -HSPLandroid/icu/impl/coll/Collation;-><clinit>()V -HSPLandroid/icu/impl/coll/Collation;->ceFromCE32(I)J -HSPLandroid/icu/impl/coll/Collation;->ceFromSimpleCE32(I)J -HSPLandroid/icu/impl/coll/Collation;->indexFromCE32(I)I -HSPLandroid/icu/impl/coll/Collation;->isSpecialCE32(I)Z -HSPLandroid/icu/impl/coll/Collation;->makeCE(J)J -HSPLandroid/icu/impl/coll/Collation;->makeCE32FromTagAndIndex(II)I -HSPLandroid/icu/impl/coll/Collation;->tagFromCE32(I)I -HSPLandroid/icu/impl/coll/CollationBuilder$BundleImporter;-><init>()V -HSPLandroid/icu/impl/coll/CollationBuilder;-><init>(Landroid/icu/impl/coll/CollationTailoring;)V -HSPLandroid/icu/impl/coll/CollationBuilder;->parseAndBuild(Ljava/lang/String;)Landroid/icu/impl/coll/CollationTailoring; -HSPLandroid/icu/impl/coll/CollationCompare;->compareUpToQuaternary(Landroid/icu/impl/coll/CollationIterator;Landroid/icu/impl/coll/CollationIterator;Landroid/icu/impl/coll/CollationSettings;)I -HSPLandroid/icu/impl/coll/CollationData;->getCE32(I)I -HSPLandroid/icu/impl/coll/CollationData;->getCE32FromContexts(I)I -HSPLandroid/icu/impl/coll/CollationData;->isUnsafeBackward(IZ)Z -HSPLandroid/icu/impl/coll/CollationDataBuilder;-><init>()V -HSPLandroid/icu/impl/coll/CollationDataBuilder;->hasMappings()Z -HSPLandroid/icu/impl/coll/CollationDataBuilder;->initForTailoring(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/impl/coll/CollationFCD;->hasTccc(I)Z -HSPLandroid/icu/impl/coll/CollationFastLatin;->compareUTF16([C[CILjava/lang/CharSequence;Ljava/lang/CharSequence;I)I -HSPLandroid/icu/impl/coll/CollationFastLatin;->getOptions(Landroid/icu/impl/coll/CollationData;Landroid/icu/impl/coll/CollationSettings;[C)I -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;-><init>()V -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->append(J)V -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->appendUnsafe(J)V -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->ensureAppendCapacity(I)V -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->get(I)J -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->incLength()V -HSPLandroid/icu/impl/coll/CollationIterator$CEBuffer;->set(IJ)J -HSPLandroid/icu/impl/coll/CollationIterator;-><clinit>()V -HSPLandroid/icu/impl/coll/CollationIterator;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/impl/coll/CollationIterator;->appendCEsFromCE32(Landroid/icu/impl/coll/CollationData;IIZ)V -HSPLandroid/icu/impl/coll/CollationIterator;->clearCEs()V -HSPLandroid/icu/impl/coll/CollationIterator;->clearCEsIfNoneRemaining()V -HSPLandroid/icu/impl/coll/CollationIterator;->makeCodePointAndCE32Pair(II)J -HSPLandroid/icu/impl/coll/CollationIterator;->nextCE()J -HSPLandroid/icu/impl/coll/CollationIterator;->nextCE32FromContraction(Landroid/icu/impl/coll/CollationData;ILjava/lang/CharSequence;III)I -HSPLandroid/icu/impl/coll/CollationIterator;->nextCEFromCE32(Landroid/icu/impl/coll/CollationData;II)J -HSPLandroid/icu/impl/coll/CollationIterator;->reset()V -HSPLandroid/icu/impl/coll/CollationIterator;->reset(Z)V -HSPLandroid/icu/impl/coll/CollationKeys$SortKeyByteSink;-><init>([B)V -HSPLandroid/icu/impl/coll/CollationKeys$SortKeyByteSink;->Append(I)V -HSPLandroid/icu/impl/coll/CollationKeys$SortKeyByteSink;->NumberOfBytesAppended()I -HSPLandroid/icu/impl/coll/CollationKeys;->getSortKeyLevel(II)Landroid/icu/impl/coll/CollationKeys$SortKeyLevel; -HSPLandroid/icu/impl/coll/CollationKeys;->writeSortKeyUpToQuaternary(Landroid/icu/impl/coll/CollationIterator;[ZLandroid/icu/impl/coll/CollationSettings;Landroid/icu/impl/coll/CollationKeys$SortKeyByteSink;ILandroid/icu/impl/coll/CollationKeys$LevelCallback;Z)V -HSPLandroid/icu/impl/coll/CollationLoader;->findWithFallback(Landroid/icu/util/UResourceBundle;Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/impl/coll/CollationLoader;->loadTailoring(Landroid/icu/util/ULocale;Landroid/icu/util/Output;)Landroid/icu/impl/coll/CollationTailoring; -HSPLandroid/icu/impl/coll/CollationRoot;->getRoot()Landroid/icu/impl/coll/CollationTailoring; -HSPLandroid/icu/impl/coll/CollationRootElements;-><init>([J)V -HSPLandroid/icu/impl/coll/CollationRuleParser$Sink;-><init>()V -HSPLandroid/icu/impl/coll/CollationRuleParser;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/impl/coll/CollationRuleParser;->getOnOffValue(Ljava/lang/String;)I -HSPLandroid/icu/impl/coll/CollationRuleParser;->isSyntaxChar(I)Z -HSPLandroid/icu/impl/coll/CollationRuleParser;->parse(Ljava/lang/String;)V -HSPLandroid/icu/impl/coll/CollationRuleParser;->parse(Ljava/lang/String;Landroid/icu/impl/coll/CollationSettings;)V -HSPLandroid/icu/impl/coll/CollationRuleParser;->parseSetting()V -HSPLandroid/icu/impl/coll/CollationRuleParser;->readWords(ILjava/lang/StringBuilder;)I -HSPLandroid/icu/impl/coll/CollationRuleParser;->setImporter(Landroid/icu/impl/coll/CollationRuleParser$Importer;)V -HSPLandroid/icu/impl/coll/CollationRuleParser;->setSink(Landroid/icu/impl/coll/CollationRuleParser$Sink;)V -HSPLandroid/icu/impl/coll/CollationRuleParser;->skipWhiteSpace(I)I -HSPLandroid/icu/impl/coll/CollationSettings;->clone()Landroid/icu/impl/coll/CollationSettings; -HSPLandroid/icu/impl/coll/CollationSettings;->clone()Landroid/icu/impl/coll/SharedObject; -HSPLandroid/icu/impl/coll/CollationSettings;->dontCheckFCD()Z -HSPLandroid/icu/impl/coll/CollationSettings;->getFlag(I)Z -HSPLandroid/icu/impl/coll/CollationSettings;->getStrength()I -HSPLandroid/icu/impl/coll/CollationSettings;->getStrength(I)I -HSPLandroid/icu/impl/coll/CollationSettings;->getTertiaryMask(I)I -HSPLandroid/icu/impl/coll/CollationSettings;->hasReordering()Z -HSPLandroid/icu/impl/coll/CollationSettings;->isNumeric()Z -HSPLandroid/icu/impl/coll/CollationSettings;->isTertiaryWithCaseBits(I)Z -HSPLandroid/icu/impl/coll/CollationSettings;->setFlag(IZ)V -HSPLandroid/icu/impl/coll/CollationSettings;->setStrength(I)V -HSPLandroid/icu/impl/coll/CollationTailoring;-><init>(Landroid/icu/impl/coll/SharedObject$Reference;)V -HSPLandroid/icu/impl/coll/CollationTailoring;->getRules()Ljava/lang/String; -HSPLandroid/icu/impl/coll/CollationTailoring;->setRules(Ljava/lang/String;)V -HSPLandroid/icu/impl/coll/CollationTailoring;->setVersion(II)V -HSPLandroid/icu/impl/coll/FCDUTF16CollationIterator;-><clinit>()V -HSPLandroid/icu/impl/coll/FCDUTF16CollationIterator;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/impl/coll/FCDUTF16CollationIterator;->handleNextCE32()J -HSPLandroid/icu/impl/coll/FCDUTF16CollationIterator;->setText(ZLjava/lang/CharSequence;I)V -HSPLandroid/icu/impl/coll/SharedObject$Reference;->clear()V -HSPLandroid/icu/impl/coll/SharedObject$Reference;->clone()Landroid/icu/impl/coll/SharedObject$Reference; -HSPLandroid/icu/impl/coll/SharedObject$Reference;->copyOnWrite()Landroid/icu/impl/coll/SharedObject; -HSPLandroid/icu/impl/coll/SharedObject$Reference;->finalize()V -HSPLandroid/icu/impl/coll/SharedObject$Reference;->readOnly()Landroid/icu/impl/coll/SharedObject; -HSPLandroid/icu/impl/coll/SharedObject;->addRef()V -HSPLandroid/icu/impl/coll/SharedObject;->clone()Landroid/icu/impl/coll/SharedObject; -HSPLandroid/icu/impl/coll/SharedObject;->getRefCount()I -HSPLandroid/icu/impl/coll/SharedObject;->removeRef()V -HSPLandroid/icu/impl/coll/UTF16CollationIterator;-><clinit>()V -HSPLandroid/icu/impl/coll/UTF16CollationIterator;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/impl/coll/UTF16CollationIterator;->handleNextCE32()J -HSPLandroid/icu/impl/coll/UTF16CollationIterator;->nextCodePoint()I -HSPLandroid/icu/impl/coll/UTF16CollationIterator;->setText(ZLjava/lang/CharSequence;I)V -HSPLandroid/icu/impl/coll/UVector32;-><init>()V -HSPLandroid/icu/impl/coll/UVector32;->addElement(I)V -HSPLandroid/icu/impl/coll/UVector32;->ensureAppendCapacity()V -HSPLandroid/icu/impl/coll/UVector64;-><init>()V -HSPLandroid/icu/impl/locale/AsciiUtil;->caseIgnoreMatch(Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/icu/impl/locale/AsciiUtil;->isAlpha(C)Z -HSPLandroid/icu/impl/locale/AsciiUtil;->isAlphaString(Ljava/lang/String;)Z -HSPLandroid/icu/impl/locale/AsciiUtil;->toLower(C)C -HSPLandroid/icu/impl/locale/AsciiUtil;->toLowerString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/AsciiUtil;->toTitleString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/AsciiUtil;->toUpper(C)C -HSPLandroid/icu/impl/locale/AsciiUtil;->toUpperString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale$Cache;->createObject(Landroid/icu/impl/locale/BaseLocale$Key;)Landroid/icu/impl/locale/BaseLocale; -HSPLandroid/icu/impl/locale/BaseLocale$Cache;->createObject(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/locale/BaseLocale$Cache;->normalizeKey(Landroid/icu/impl/locale/BaseLocale$Key;)Landroid/icu/impl/locale/BaseLocale$Key; -HSPLandroid/icu/impl/locale/BaseLocale$Cache;->normalizeKey(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/locale/BaseLocale$Key;->-$$Nest$fget_lang(Landroid/icu/impl/locale/BaseLocale$Key;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale$Key;->-$$Nest$fget_regn(Landroid/icu/impl/locale/BaseLocale$Key;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale$Key;->-$$Nest$fget_scrt(Landroid/icu/impl/locale/BaseLocale$Key;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale$Key;->-$$Nest$fget_vart(Landroid/icu/impl/locale/BaseLocale$Key;)Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale$Key;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/locale/BaseLocale$Key;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/locale/BaseLocale$Key;->hashCode()I -HSPLandroid/icu/impl/locale/BaseLocale$Key;->normalize(Landroid/icu/impl/locale/BaseLocale$Key;)Landroid/icu/impl/locale/BaseLocale$Key; -HSPLandroid/icu/impl/locale/BaseLocale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/impl/locale/BaseLocale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/icu/impl/locale/BaseLocale-IA;)V -HSPLandroid/icu/impl/locale/BaseLocale;->getInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/icu/impl/locale/BaseLocale; -HSPLandroid/icu/impl/locale/BaseLocale;->getLanguage()Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale;->getRegion()Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale;->getScript()Ljava/lang/String; -HSPLandroid/icu/impl/locale/BaseLocale;->getVariant()Ljava/lang/String; -HSPLandroid/icu/impl/locale/InternalLocaleBuilder;-><init>()V -HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->getBaseLocale()Landroid/icu/impl/locale/BaseLocale; -HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->getLocaleExtensions()Landroid/icu/impl/locale/LocaleExtensions; -HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->setLanguage(Ljava/lang/String;)Landroid/icu/impl/locale/InternalLocaleBuilder; -HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->setRegion(Ljava/lang/String;)Landroid/icu/impl/locale/InternalLocaleBuilder; -HSPLandroid/icu/impl/locale/LanguageTag;->isLanguage(Ljava/lang/String;)Z -HSPLandroid/icu/impl/locale/LanguageTag;->isRegion(Ljava/lang/String;)Z -HSPLandroid/icu/impl/locale/LocaleExtensions;->getKeys()Ljava/util/Set; -HSPLandroid/icu/impl/locale/LocaleObjectCache$CacheEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLandroid/icu/impl/locale/LocaleObjectCache$CacheEntry;->getKey()Ljava/lang/Object; -HSPLandroid/icu/impl/locale/LocaleObjectCache;->cleanStaleEntries()V -HSPLandroid/icu/impl/locale/LocaleObjectCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/impl/number/AdoptingModifierStore$1;-><clinit>()V -HSPLandroid/icu/impl/number/AdoptingModifierStore;-><init>(Landroid/icu/impl/number/Modifier;Landroid/icu/impl/number/Modifier;Landroid/icu/impl/number/Modifier;Landroid/icu/impl/number/Modifier;)V -HSPLandroid/icu/impl/number/AdoptingModifierStore;->getModifierWithoutPlural(Landroid/icu/impl/number/Modifier$Signum;)Landroid/icu/impl/number/Modifier; -HSPLandroid/icu/impl/number/AffixUtils;->containsType(Ljava/lang/CharSequence;I)Z -HSPLandroid/icu/impl/number/AffixUtils;->escape(Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLandroid/icu/impl/number/AffixUtils;->getFieldForType(I)Landroid/icu/text/NumberFormat$Field; -HSPLandroid/icu/impl/number/AffixUtils;->getOffset(J)I -HSPLandroid/icu/impl/number/AffixUtils;->getState(J)I -HSPLandroid/icu/impl/number/AffixUtils;->getType(J)I -HSPLandroid/icu/impl/number/AffixUtils;->getTypeOrCp(J)I -HSPLandroid/icu/impl/number/AffixUtils;->hasCurrencySymbols(Ljava/lang/CharSequence;)Z -HSPLandroid/icu/impl/number/AffixUtils;->hasNext(JLjava/lang/CharSequence;)Z -HSPLandroid/icu/impl/number/AffixUtils;->iterateWithConsumer(Ljava/lang/CharSequence;Landroid/icu/impl/number/AffixUtils$TokenConsumer;)V -HSPLandroid/icu/impl/number/AffixUtils;->makeTag(IIII)J -HSPLandroid/icu/impl/number/AffixUtils;->nextToken(JLjava/lang/CharSequence;)J -HSPLandroid/icu/impl/number/AffixUtils;->unescape(Ljava/lang/CharSequence;Landroid/icu/impl/FormattedStringBuilder;ILandroid/icu/impl/number/AffixUtils$SymbolProvider;Landroid/icu/text/NumberFormat$Field;)I -HSPLandroid/icu/impl/number/AffixUtils;->unescapedCount(Ljava/lang/CharSequence;ZLandroid/icu/impl/number/AffixUtils$SymbolProvider;)I -HSPLandroid/icu/impl/number/ConstantAffixModifier;->apply(Landroid/icu/impl/FormattedStringBuilder;II)I -HSPLandroid/icu/impl/number/ConstantMultiFieldModifier;-><init>(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/impl/FormattedStringBuilder;ZZ)V -HSPLandroid/icu/impl/number/ConstantMultiFieldModifier;-><init>(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/impl/FormattedStringBuilder;ZZLandroid/icu/impl/number/Modifier$Parameters;)V -HSPLandroid/icu/impl/number/ConstantMultiFieldModifier;->apply(Landroid/icu/impl/FormattedStringBuilder;II)I -HSPLandroid/icu/impl/number/ConstantMultiFieldModifier;->getPrefixLength()I -HSPLandroid/icu/impl/number/CurrencySpacingEnabledModifier;->applyCurrencySpacing(Landroid/icu/impl/FormattedStringBuilder;IIIILandroid/icu/text/DecimalFormatSymbols;)I -HSPLandroid/icu/impl/number/CurrencySpacingEnabledModifier;->applyCurrencySpacingAffix(Landroid/icu/impl/FormattedStringBuilder;IBLandroid/icu/text/DecimalFormatSymbols;)I -HSPLandroid/icu/impl/number/CustomSymbolCurrency;->resolve(Landroid/icu/util/Currency;Landroid/icu/util/ULocale;Landroid/icu/text/DecimalFormatSymbols;)Landroid/icu/util/Currency; -HSPLandroid/icu/impl/number/DecimalFormatProperties;-><init>()V -HSPLandroid/icu/impl/number/DecimalFormatProperties;->_clear()Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->_copyFrom(Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->clear()Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->clone()Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->copyFrom(Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getCompactStyle()Landroid/icu/text/CompactDecimalFormat$CompactStyle; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getCurrency()Landroid/icu/util/Currency; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getCurrencyAsDecimal()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getCurrencyPluralInfo()Landroid/icu/text/CurrencyPluralInfo; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getCurrencyUsage()Landroid/icu/util/Currency$CurrencyUsage; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getDecimalPatternMatchRequired()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getDecimalSeparatorAlwaysShown()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getExponentSignAlwaysShown()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getFormatWidth()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getGroupingSize()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getGroupingUsed()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMagnitudeMultiplier()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMathContext()Ljava/math/MathContext; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMaximumFractionDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMaximumIntegerDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMaximumSignificantDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMinimumExponentDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMinimumFractionDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMinimumGroupingDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMinimumIntegerDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMinimumSignificantDigits()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getMultiplier()Ljava/math/BigDecimal; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getNegativePrefix()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getNegativePrefixPattern()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getNegativeSuffix()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getNegativeSuffixPattern()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPadPosition()Landroid/icu/impl/number/Padder$PadPosition; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPadString()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getParseCaseSensitive()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getParseIntegerOnly()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getParseMode()Landroid/icu/impl/number/DecimalFormatProperties$ParseMode; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getParseNoExponent()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getParseToBigDecimal()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPluralRules()Landroid/icu/text/PluralRules; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPositivePrefix()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPositivePrefixPattern()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPositiveSuffix()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getPositiveSuffixPattern()Ljava/lang/String; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getRoundingIncrement()Ljava/math/BigDecimal; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getRoundingMode()Ljava/math/RoundingMode; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getSecondaryGroupingSize()I -HSPLandroid/icu/impl/number/DecimalFormatProperties;->getSignAlwaysShown()Z -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setCurrency(Landroid/icu/util/Currency;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setCurrencyAsDecimal(Z)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setDecimalSeparatorAlwaysShown(Z)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setExponentSignAlwaysShown(Z)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setFormatWidth(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setGroupingSize(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setGroupingUsed(Z)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMagnitudeMultiplier(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMathContext(Ljava/math/MathContext;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMaximumFractionDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMaximumIntegerDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMaximumSignificantDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMinimumExponentDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMinimumFractionDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMinimumIntegerDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setMinimumSignificantDigits(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setNegativePrefixPattern(Ljava/lang/String;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setNegativeSuffixPattern(Ljava/lang/String;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setPadPosition(Landroid/icu/impl/number/Padder$PadPosition;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setPadString(Ljava/lang/String;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setParseIntegerOnly(Z)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setParseMode(Landroid/icu/impl/number/DecimalFormatProperties$ParseMode;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setPositivePrefixPattern(Ljava/lang/String;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setPositiveSuffixPattern(Ljava/lang/String;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setRoundingIncrement(Ljava/math/BigDecimal;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setRoundingMode(Ljava/math/RoundingMode;)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalFormatProperties;->setSecondaryGroupingSize(I)Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;-><init>()V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToBigDecimal(Ljava/math/BigDecimal;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToBigInteger(Ljava/math/BigInteger;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToDoubleFast(D)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->_setToLong(J)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->adjustMagnitude(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->appendDigit(BIZ)V+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->applyMaxInteger(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->convertToAccurateDouble()V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->copyFrom(Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->fitsInLong()Z+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getDigit(I)B -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getLowerDisplayMagnitude()I -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getMagnitude()I -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getPluralOperand(Landroid/icu/text/PluralRules$Operand;)D -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getStandardPlural(Landroid/icu/text/PluralRules;)Landroid/icu/impl/StandardPlural; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->getUpperDisplayMagnitude()I -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->isInfinite()Z -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->isNaN()Z -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->isNegative()Z -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->isZeroish()Z -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->negate()V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->populateUFieldPosition(Ljava/text/FieldPosition;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->roundToMagnitude(ILjava/math/MathContext;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->roundToMagnitude(ILjava/math/MathContext;Z)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->safeSubtract(II)I -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setMinFraction(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setMinInteger(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToBigDecimal(Ljava/math/BigDecimal;)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToDouble(D)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToInt(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->setToLong(J)V -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->signum()Landroid/icu/impl/number/Modifier$Signum; -HSPLandroid/icu/impl/number/DecimalQuantity_AbstractBCD;->toLong(Z)J+]Landroid/icu/impl/number/DecimalQuantity_AbstractBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>()V+]Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(D)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(J)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(Ljava/lang/Number;)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;-><init>(Ljava/math/BigDecimal;)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->compact()V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->copyBcdFrom(Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->createCopy()Landroid/icu/impl/number/DecimalQuantity; -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->fromExponentString(Ljava/lang/String;)Landroid/icu/impl/number/DecimalQuantity; -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->getDigitPos(I)B -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->getVisibleFractionCount(Ljava/lang/String;)I -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->readIntToBcd(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->readLongToBcd(J)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->setBcdToZero()V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->setDigitPos(IB)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->shiftLeft(I)V -HSPLandroid/icu/impl/number/DecimalQuantity_DualStorageBCD;->shiftRight(I)V -HSPLandroid/icu/impl/number/Grouper;-><init>(SSS)V -HSPLandroid/icu/impl/number/Grouper;->forProperties(Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/impl/number/Grouper; -HSPLandroid/icu/impl/number/Grouper;->getInstance(SSS)Landroid/icu/impl/number/Grouper; -HSPLandroid/icu/impl/number/Grouper;->getMinGroupingForLocale(Landroid/icu/util/ULocale;)S -HSPLandroid/icu/impl/number/Grouper;->getPrimary()S -HSPLandroid/icu/impl/number/Grouper;->getSecondary()S -HSPLandroid/icu/impl/number/Grouper;->groupAtPosition(ILandroid/icu/impl/number/DecimalQuantity;)Z -HSPLandroid/icu/impl/number/Grouper;->withLocaleData(Landroid/icu/util/ULocale;Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;)Landroid/icu/impl/number/Grouper; -HSPLandroid/icu/impl/number/LongNameHandler$PluralTableSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/number/LongNameHandler;->processQuantity(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/impl/number/LongNameHandler;->simpleFormatsToModifiers([Ljava/lang/String;Landroid/icu/text/NumberFormat$Field;)V -HSPLandroid/icu/impl/number/MacroProps;-><init>()V -HSPLandroid/icu/impl/number/MacroProps;->fallback(Landroid/icu/impl/number/MacroProps;)V -HSPLandroid/icu/impl/number/MicroProps;-><init>(Z)V -HSPLandroid/icu/impl/number/MicroProps;->clone()Ljava/lang/Object; -HSPLandroid/icu/impl/number/MicroProps;->processQuantity(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/impl/number/Modifier$Signum;->values()[Landroid/icu/impl/number/Modifier$Signum; -HSPLandroid/icu/impl/number/MultiplierFormatHandler;-><init>(Landroid/icu/number/Scale;Landroid/icu/impl/number/MicroPropsGenerator;)V -HSPLandroid/icu/impl/number/MultiplierFormatHandler;->processQuantity(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier;-><init>(Landroid/icu/impl/number/AdoptingModifierStore;Landroid/icu/text/PluralRules;)V -HSPLandroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier;->addToChain(Landroid/icu/impl/number/MicroPropsGenerator;)Landroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier; -HSPLandroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier;->applyToMicros(Landroid/icu/impl/number/MicroProps;Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier;->processQuantity(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/impl/number/MutablePatternModifier;-><init>(Z)V -HSPLandroid/icu/impl/number/MutablePatternModifier;->addToChain(Landroid/icu/impl/number/MicroPropsGenerator;)Landroid/icu/impl/number/MicroPropsGenerator; -HSPLandroid/icu/impl/number/MutablePatternModifier;->apply(Landroid/icu/impl/FormattedStringBuilder;II)I -HSPLandroid/icu/impl/number/MutablePatternModifier;->createConstantModifier(Landroid/icu/impl/FormattedStringBuilder;Landroid/icu/impl/FormattedStringBuilder;)Landroid/icu/impl/number/ConstantMultiFieldModifier; -HSPLandroid/icu/impl/number/MutablePatternModifier;->createImmutable()Landroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier; -HSPLandroid/icu/impl/number/MutablePatternModifier;->getPrefixLength()I -HSPLandroid/icu/impl/number/MutablePatternModifier;->getSymbol(I)Ljava/lang/CharSequence; -HSPLandroid/icu/impl/number/MutablePatternModifier;->insertPrefix(Landroid/icu/impl/FormattedStringBuilder;I)I -HSPLandroid/icu/impl/number/MutablePatternModifier;->insertSuffix(Landroid/icu/impl/FormattedStringBuilder;I)I -HSPLandroid/icu/impl/number/MutablePatternModifier;->needsPlurals()Z -HSPLandroid/icu/impl/number/MutablePatternModifier;->prepareAffix(Z)V -HSPLandroid/icu/impl/number/MutablePatternModifier;->processQuantity(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/impl/number/MutablePatternModifier;->setNumberProperties(Landroid/icu/impl/number/Modifier$Signum;Landroid/icu/impl/StandardPlural;)V -HSPLandroid/icu/impl/number/MutablePatternModifier;->setPatternAttributes(Landroid/icu/number/NumberFormatter$SignDisplay;ZZ)V -HSPLandroid/icu/impl/number/MutablePatternModifier;->setPatternInfo(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/text/NumberFormat$Field;)V -HSPLandroid/icu/impl/number/MutablePatternModifier;->setSymbols(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/util/Currency;Landroid/icu/number/NumberFormatter$UnitWidth;Landroid/icu/text/PluralRules;)V -HSPLandroid/icu/impl/number/Padder;->isValid()Z -HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;-><init>(Ljava/lang/String;Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo-IA;)V -HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;->getEndpoints(I)J -HSPLandroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;->getString(I)Ljava/lang/String; -HSPLandroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;-><init>()V -HSPLandroid/icu/impl/number/PatternStringParser$ParserState;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/number/PatternStringParser$ParserState;->next()I -HSPLandroid/icu/impl/number/PatternStringParser$ParserState;->peek()I -HSPLandroid/icu/impl/number/PatternStringParser;->consumeAffix(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)J -HSPLandroid/icu/impl/number/PatternStringParser;->consumeExponent(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumeFormat(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumeFractionFormat(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumeIntegerFormat(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumeLiteral(Landroid/icu/impl/number/PatternStringParser$ParserState;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumePadding(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;Landroid/icu/impl/number/Padder$PadPosition;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumePattern(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->consumeSubpattern(Landroid/icu/impl/number/PatternStringParser$ParserState;Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo;)V -HSPLandroid/icu/impl/number/PatternStringParser;->parseToExistingProperties(Ljava/lang/String;Landroid/icu/impl/number/DecimalFormatProperties;I)V -HSPLandroid/icu/impl/number/PatternStringParser;->parseToExistingPropertiesImpl(Ljava/lang/String;Landroid/icu/impl/number/DecimalFormatProperties;I)V -HSPLandroid/icu/impl/number/PatternStringParser;->parseToPatternInfo(Ljava/lang/String;)Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo; -HSPLandroid/icu/impl/number/PatternStringParser;->patternInfoToProperties(Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo;I)V -HSPLandroid/icu/impl/number/PatternStringUtils$PatternSignType;-><clinit>()V -HSPLandroid/icu/impl/number/PatternStringUtils$PatternSignType;-><init>(Ljava/lang/String;I)V -HSPLandroid/icu/impl/number/PatternStringUtils$PatternSignType;->values()[Landroid/icu/impl/number/PatternStringUtils$PatternSignType; -HSPLandroid/icu/impl/number/PatternStringUtils;->patternInfoToStringBuilder(Landroid/icu/impl/number/AffixPatternProvider;ZLandroid/icu/impl/number/PatternStringUtils$PatternSignType;ZLandroid/icu/impl/StandardPlural;ZLjava/lang/StringBuilder;)V -HSPLandroid/icu/impl/number/PatternStringUtils;->propertiesToPatternString(Landroid/icu/impl/number/DecimalFormatProperties;)Ljava/lang/String; -HSPLandroid/icu/impl/number/PatternStringUtils;->resolveSignDisplay(Landroid/icu/number/NumberFormatter$SignDisplay;Landroid/icu/impl/number/Modifier$Signum;)Landroid/icu/impl/number/PatternStringUtils$PatternSignType; -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;-><init>(Landroid/icu/impl/number/DecimalFormatProperties;)V -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->charAt(II)C -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->containsSymbolType(I)Z -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->currencyAsDecimal()Z -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->forProperties(Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/impl/number/AffixPatternProvider; -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->getString(I)Ljava/lang/String; -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->hasBody()Z -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->hasCurrencySign()Z -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->hasNegativeSubpattern()Z -HSPLandroid/icu/impl/number/PropertiesAffixPatternProvider;->length(I)I -HSPLandroid/icu/impl/number/RoundingUtils;->getMathContextOr34Digits(Landroid/icu/impl/number/DecimalFormatProperties;)Ljava/math/MathContext; -HSPLandroid/icu/impl/number/RoundingUtils;->getMathContextOrUnlimited(Landroid/icu/impl/number/DecimalFormatProperties;)Ljava/math/MathContext; -HSPLandroid/icu/impl/number/RoundingUtils;->getRoundingDirection(ZZIILjava/lang/Object;)Z -HSPLandroid/icu/impl/number/RoundingUtils;->roundsAtMidpoint(I)Z -HSPLandroid/icu/impl/number/RoundingUtils;->scaleFromProperties(Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/number/Scale; -HSPLandroid/icu/impl/number/SimpleModifier;-><init>(Ljava/lang/String;Ljava/text/Format$Field;ZLandroid/icu/impl/number/Modifier$Parameters;)V -HSPLandroid/icu/impl/number/SimpleModifier;->apply(Landroid/icu/impl/FormattedStringBuilder;II)I -HSPLandroid/icu/impl/number/parse/AffixMatcher$1;->compare(Landroid/icu/impl/number/parse/AffixMatcher;Landroid/icu/impl/number/parse/AffixMatcher;)I -HSPLandroid/icu/impl/number/parse/AffixMatcher$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/icu/impl/number/parse/AffixMatcher;-><init>(Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher;I)V -HSPLandroid/icu/impl/number/parse/AffixMatcher;->createMatchers(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/parse/NumberParserImpl;Landroid/icu/impl/number/parse/AffixTokenMatcherFactory;Landroid/icu/impl/number/parse/IgnorablesMatcher;I)V+]Landroid/icu/impl/number/parse/NumberParserImpl;Landroid/icu/impl/number/parse/NumberParserImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/icu/impl/number/parse/AffixMatcher;->getInstance(Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher;I)Landroid/icu/impl/number/parse/AffixMatcher; -HSPLandroid/icu/impl/number/parse/AffixMatcher;->isInteresting(Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/parse/IgnorablesMatcher;I)Z -HSPLandroid/icu/impl/number/parse/AffixMatcher;->length(Landroid/icu/impl/number/parse/AffixPatternMatcher;)I -HSPLandroid/icu/impl/number/parse/AffixMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)Z -HSPLandroid/icu/impl/number/parse/AffixMatcher;->matched(Landroid/icu/impl/number/parse/AffixPatternMatcher;Ljava/lang/String;)Z -HSPLandroid/icu/impl/number/parse/AffixMatcher;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/AffixMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z+]Landroid/icu/impl/number/parse/AffixPatternMatcher;Landroid/icu/impl/number/parse/AffixPatternMatcher; -HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->consumeToken(I)V -HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->fromAffixPattern(Ljava/lang/String;Landroid/icu/impl/number/parse/AffixTokenMatcherFactory;I)Landroid/icu/impl/number/parse/AffixPatternMatcher; -HSPLandroid/icu/impl/number/parse/AffixPatternMatcher;->getPattern()Ljava/lang/String; -HSPLandroid/icu/impl/number/parse/AffixTokenMatcherFactory;-><init>()V -HSPLandroid/icu/impl/number/parse/AffixTokenMatcherFactory;->minusSign()Landroid/icu/impl/number/parse/MinusSignMatcher; -HSPLandroid/icu/impl/number/parse/DecimalMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;I)V+]Landroid/icu/impl/number/Grouper;Landroid/icu/impl/number/Grouper;]Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/text/DecimalFormatSymbols; -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;I)Landroid/icu/impl/number/parse/DecimalMatcher; -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)Z -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->match(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;I)Z -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z -HSPLandroid/icu/impl/number/parse/DecimalMatcher;->validateGroup(IIZ)Z -HSPLandroid/icu/impl/number/parse/IgnorablesMatcher;->getInstance(I)Landroid/icu/impl/number/parse/IgnorablesMatcher; -HSPLandroid/icu/impl/number/parse/InfinityMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;)Landroid/icu/impl/number/parse/InfinityMatcher; -HSPLandroid/icu/impl/number/parse/MinusSignMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;Z)Landroid/icu/impl/number/parse/MinusSignMatcher; -HSPLandroid/icu/impl/number/parse/NanMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;I)Landroid/icu/impl/number/parse/NanMatcher; -HSPLandroid/icu/impl/number/parse/NumberParserImpl;-><init>(I)V -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->addMatcher(Landroid/icu/impl/number/parse/NumberParseMatcher;)V -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->addMatchers(Ljava/util/Collection;)V -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->createParserFromProperties(Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/text/DecimalFormatSymbols;Z)Landroid/icu/impl/number/parse/NumberParserImpl; -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->freeze()V -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->getParseFlags()I -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->parse(Ljava/lang/String;IZLandroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/NumberParserImpl;->parseGreedy(Landroid/icu/impl/StringSegment;Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/ParsedNumber;-><init>()V -HSPLandroid/icu/impl/number/parse/ParsedNumber;->clear()V -HSPLandroid/icu/impl/number/parse/ParsedNumber;->getNumber(I)Ljava/lang/Number;+]Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD;Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -HSPLandroid/icu/impl/number/parse/ParsedNumber;->postProcess()V -HSPLandroid/icu/impl/number/parse/ParsedNumber;->seenNumber()Z -HSPLandroid/icu/impl/number/parse/ParsedNumber;->setCharsConsumed(Landroid/icu/impl/StringSegment;)V -HSPLandroid/icu/impl/number/parse/ParsedNumber;->success()Z -HSPLandroid/icu/impl/number/parse/RequireAffixValidator;-><init>()V -HSPLandroid/icu/impl/number/parse/RequireAffixValidator;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/RequireNumberValidator;-><init>()V -HSPLandroid/icu/impl/number/parse/RequireNumberValidator;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/ScientificMatcher;-><init>(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;)V+]Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/text/DecimalFormatSymbols;]Landroid/icu/text/UnicodeSet;Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/impl/number/parse/ScientificMatcher;->getInstance(Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/Grouper;)Landroid/icu/impl/number/parse/ScientificMatcher; -HSPLandroid/icu/impl/number/parse/ScientificMatcher;->minusSignSet()Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/impl/number/parse/ScientificMatcher;->plusSignSet()Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/impl/number/parse/ScientificMatcher;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/ScientificMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z -HSPLandroid/icu/impl/number/parse/SeriesMatcher;-><init>()V -HSPLandroid/icu/impl/number/parse/SeriesMatcher;->addMatcher(Landroid/icu/impl/number/parse/NumberParseMatcher;)V -HSPLandroid/icu/impl/number/parse/SeriesMatcher;->freeze()V -HSPLandroid/icu/impl/number/parse/SeriesMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z -HSPLandroid/icu/impl/number/parse/SymbolMatcher;->postProcess(Landroid/icu/impl/number/parse/ParsedNumber;)V -HSPLandroid/icu/impl/number/parse/SymbolMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z -HSPLandroid/icu/impl/number/parse/ValidationMatcher;-><init>()V -HSPLandroid/icu/impl/number/parse/ValidationMatcher;->smokeTest(Landroid/icu/impl/StringSegment;)Z -HSPLandroid/icu/impl/number/range/StandardPluralRanges$PluralRangeSetsDataSink;-><clinit>()V -HSPLandroid/icu/impl/number/range/StandardPluralRanges$PluralRangeSetsDataSink;-><init>(Ljava/util/Map;)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges$PluralRangeSetsDataSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges$PluralRangesDataSink;-><init>(Landroid/icu/impl/number/range/StandardPluralRanges;)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges$PluralRangesDataSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges;-><init>()V -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->addPluralRange(Landroid/icu/impl/StandardPlural;Landroid/icu/impl/StandardPlural;Landroid/icu/impl/StandardPlural;)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->forSet(Ljava/lang/String;)Landroid/icu/impl/number/range/StandardPluralRanges; -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getLanguageToSet()Ljava/util/Map; -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getPluralRangesData(Ljava/lang/String;Landroid/icu/impl/number/range/StandardPluralRanges;)V -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getSetForLocale(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/impl/number/range/StandardPluralRanges;->setCapacity(I)V -HSPLandroid/icu/lang/UCharacter;->codePointAt(Ljava/lang/CharSequence;I)I -HSPLandroid/icu/lang/UCharacter;->digit(I)I -HSPLandroid/icu/lang/UCharacter;->foldCase(II)I+]Landroid/icu/impl/UCaseProps;Landroid/icu/impl/UCaseProps; -HSPLandroid/icu/lang/UCharacter;->foldCase(IZ)I -HSPLandroid/icu/lang/UCharacter;->getPropertyValueEnumNoThrow(ILjava/lang/CharSequence;)I -HSPLandroid/icu/lang/UCharacter;->getType(I)I -HSPLandroid/icu/lang/UCharacter;->isDigit(I)Z -HSPLandroid/icu/lang/UCharacter;->isLowerCase(I)Z -HSPLandroid/icu/lang/UScript$ScriptMetadata;->getScriptProps(I)I -HSPLandroid/icu/lang/UScript;->getCodeFromName(Ljava/lang/String;)I -HSPLandroid/icu/lang/UScript;->isRightToLeft(I)Z -HSPLandroid/icu/number/CurrencyPrecision;->withCurrency(Landroid/icu/util/Currency;)Landroid/icu/number/Precision; -HSPLandroid/icu/number/FormattedNumber;->appendTo(Ljava/lang/Appendable;)Ljava/lang/Appendable; -HSPLandroid/icu/number/FractionPrecision;-><init>()V -HSPLandroid/icu/number/IntegerWidth;-><init>(II)V -HSPLandroid/icu/number/IntegerWidth;->truncateAt(I)Landroid/icu/number/IntegerWidth; -HSPLandroid/icu/number/IntegerWidth;->zeroFillTo(I)Landroid/icu/number/IntegerWidth; -HSPLandroid/icu/number/LocalizedNumberFormatter;-><init>(Landroid/icu/number/NumberFormatterSettings;ILjava/lang/Object;)V -HSPLandroid/icu/number/LocalizedNumberFormatter;->computeCompiled()Z -HSPLandroid/icu/number/LocalizedNumberFormatter;->create(ILjava/lang/Object;)Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/number/LocalizedNumberFormatter;->create(ILjava/lang/Object;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/LocalizedNumberFormatter;->format(D)Landroid/icu/number/FormattedNumber; -HSPLandroid/icu/number/LocalizedNumberFormatter;->format(J)Landroid/icu/number/FormattedNumber; -HSPLandroid/icu/number/LocalizedNumberFormatter;->format(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/number/FormattedNumber; -HSPLandroid/icu/number/LocalizedNumberFormatter;->formatImpl(Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/number/LocalizedNumberFormatter;->getAffixImpl(ZZ)Ljava/lang/String; -HSPLandroid/icu/number/NumberFormatter;->fromDecimalFormat(Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/number/UnlocalizedNumberFormatter; -HSPLandroid/icu/number/NumberFormatter;->with()Landroid/icu/number/UnlocalizedNumberFormatter; -HSPLandroid/icu/number/NumberFormatterImpl;-><init>(Landroid/icu/impl/number/MacroProps;)V -HSPLandroid/icu/number/NumberFormatterImpl;->format(Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/number/NumberFormatterImpl;->formatStatic(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffix(BLandroid/icu/impl/StandardPlural;Landroid/icu/impl/FormattedStringBuilder;)I -HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffixImpl(Landroid/icu/impl/number/MicroPropsGenerator;BLandroid/icu/impl/FormattedStringBuilder;)I -HSPLandroid/icu/number/NumberFormatterImpl;->getPrefixSuffixStatic(Landroid/icu/impl/number/MacroProps;BLandroid/icu/impl/StandardPlural;Landroid/icu/impl/FormattedStringBuilder;)I -HSPLandroid/icu/number/NumberFormatterImpl;->macrosToMicroGenerator(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/MicroProps;Z)Landroid/icu/impl/number/MicroPropsGenerator;+]Landroid/icu/impl/number/AffixPatternProvider;Landroid/icu/impl/number/PropertiesAffixPatternProvider;]Landroid/icu/impl/number/Grouper;Landroid/icu/impl/number/Grouper;]Landroid/icu/impl/number/MutablePatternModifier;Landroid/icu/impl/number/MutablePatternModifier;]Landroid/icu/number/Precision;Landroid/icu/number/Precision$FractionRounderImpl;]Landroid/icu/text/NumberingSystem;Landroid/icu/text/NumberingSystem; -HSPLandroid/icu/number/NumberFormatterImpl;->preProcess(Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/number/NumberFormatterImpl;->preProcessUnsafe(Landroid/icu/impl/number/MacroProps;Landroid/icu/impl/number/DecimalQuantity;)Landroid/icu/impl/number/MicroProps; -HSPLandroid/icu/number/NumberFormatterImpl;->unitIsBaseUnit(Landroid/icu/util/MeasureUnit;)Z -HSPLandroid/icu/number/NumberFormatterImpl;->unitIsCurrency(Landroid/icu/util/MeasureUnit;)Z -HSPLandroid/icu/number/NumberFormatterImpl;->unitIsPercent(Landroid/icu/util/MeasureUnit;)Z -HSPLandroid/icu/number/NumberFormatterImpl;->unitIsPermille(Landroid/icu/util/MeasureUnit;)Z -HSPLandroid/icu/number/NumberFormatterImpl;->writeAffixes(Landroid/icu/impl/number/MicroProps;Landroid/icu/impl/FormattedStringBuilder;II)I -HSPLandroid/icu/number/NumberFormatterImpl;->writeFractionDigits(Landroid/icu/impl/number/MicroProps;Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;I)I -HSPLandroid/icu/number/NumberFormatterImpl;->writeIntegerDigits(Landroid/icu/impl/number/MicroProps;Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;I)I -HSPLandroid/icu/number/NumberFormatterImpl;->writeNumber(Landroid/icu/impl/number/MicroProps;Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;I)I -HSPLandroid/icu/number/NumberFormatterSettings;-><init>(Landroid/icu/number/NumberFormatterSettings;ILjava/lang/Object;)V -HSPLandroid/icu/number/NumberFormatterSettings;->macros(Landroid/icu/impl/number/MacroProps;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/NumberFormatterSettings;->perUnit(Landroid/icu/util/MeasureUnit;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/NumberFormatterSettings;->resolve()Landroid/icu/impl/number/MacroProps; -HSPLandroid/icu/number/NumberFormatterSettings;->unit(Landroid/icu/util/MeasureUnit;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/NumberFormatterSettings;->unitWidth(Landroid/icu/number/NumberFormatter$UnitWidth;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/NumberPropertyMapper;->create(Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/number/UnlocalizedNumberFormatter; -HSPLandroid/icu/number/NumberPropertyMapper;->oldToNew(Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/text/DecimalFormatSymbols;Landroid/icu/impl/number/DecimalFormatProperties;)Landroid/icu/impl/number/MacroProps; -HSPLandroid/icu/number/Precision$FractionRounderImpl;-><init>(II)V -HSPLandroid/icu/number/Precision$FractionRounderImpl;->apply(Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/number/Precision$FractionRounderImpl;->createCopy()Landroid/icu/number/Precision$FractionRounderImpl; -HSPLandroid/icu/number/Precision$FractionRounderImpl;->createCopy()Landroid/icu/number/Precision; -HSPLandroid/icu/number/Precision;->-$$Nest$smgetDisplayMagnitudeFraction(I)I -HSPLandroid/icu/number/Precision;->-$$Nest$smgetRoundingMagnitudeFraction(I)I -HSPLandroid/icu/number/Precision;-><init>()V -HSPLandroid/icu/number/Precision;->constructCurrency(Landroid/icu/util/Currency$CurrencyUsage;)Landroid/icu/number/CurrencyPrecision; -HSPLandroid/icu/number/Precision;->constructFraction(II)Landroid/icu/number/FractionPrecision; -HSPLandroid/icu/number/Precision;->constructFromCurrency(Landroid/icu/number/CurrencyPrecision;Landroid/icu/util/Currency;)Landroid/icu/number/Precision; -HSPLandroid/icu/number/Precision;->getDisplayMagnitudeFraction(I)I -HSPLandroid/icu/number/Precision;->getRoundingMagnitudeFraction(I)I -HSPLandroid/icu/number/Precision;->setResolvedMinFraction(Landroid/icu/impl/number/DecimalQuantity;I)V -HSPLandroid/icu/number/Precision;->withLocaleData(Landroid/icu/util/Currency;)Landroid/icu/number/Precision; -HSPLandroid/icu/number/Precision;->withMode(Ljava/math/MathContext;)Landroid/icu/number/Precision; -HSPLandroid/icu/number/Scale;->applyTo(Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/number/Scale;->powerOfTen(I)Landroid/icu/number/Scale; -HSPLandroid/icu/number/Scale;->withMathContext(Ljava/math/MathContext;)Landroid/icu/number/Scale; -HSPLandroid/icu/number/UnlocalizedNumberFormatter;-><init>(Landroid/icu/number/NumberFormatterSettings;ILjava/lang/Object;)V -HSPLandroid/icu/number/UnlocalizedNumberFormatter;->create(ILjava/lang/Object;)Landroid/icu/number/NumberFormatterSettings; -HSPLandroid/icu/number/UnlocalizedNumberFormatter;->create(ILjava/lang/Object;)Landroid/icu/number/UnlocalizedNumberFormatter; -HSPLandroid/icu/number/UnlocalizedNumberFormatter;->locale(Landroid/icu/util/ULocale;)Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/platform/AndroidDataFiles;->generateIcuDataPath()Ljava/lang/String; -HSPLandroid/icu/platform/AndroidDataFiles;->getI18nModuleFile(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/platform/AndroidDataFiles;->getI18nModuleIcuFile(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/platform/AndroidDataFiles;->getTimeZoneModuleFile(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/platform/AndroidDataFiles;->getTimeZoneModuleIcuFile(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/text/Bidi;-><init>(II)V -HSPLandroid/icu/text/Bidi;->DirPropFlag(B)I -HSPLandroid/icu/text/Bidi;->GetParaLevelAt(I)B -HSPLandroid/icu/text/Bidi;->directionFromFlags()B -HSPLandroid/icu/text/Bidi;->getCustomizedClass(I)I -HSPLandroid/icu/text/Bidi;->getDirProps()V -HSPLandroid/icu/text/Bidi;->getDirPropsMemory(I)V -HSPLandroid/icu/text/Bidi;->getLevelsMemory(I)V -HSPLandroid/icu/text/Bidi;->getMemory(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Class;ZI)Ljava/lang/Object; -HSPLandroid/icu/text/Bidi;->resolveExplicitLevels()B -HSPLandroid/icu/text/Bidi;->setPara([CB[B)V -HSPLandroid/icu/text/Bidi;->verifyRange(III)V -HSPLandroid/icu/text/BreakIterator$BreakIteratorCache;-><init>(Landroid/icu/util/ULocale;Landroid/icu/text/BreakIterator;)V -HSPLandroid/icu/text/BreakIterator$BreakIteratorCache;->createBreakInstance()Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/BreakIterator$BreakIteratorCache;->getLocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/text/BreakIterator;-><init>()V -HSPLandroid/icu/text/BreakIterator;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/BreakIterator;->getBreakInstance(Landroid/icu/util/ULocale;I)Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/BreakIterator;->getSentenceInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/BreakIterator;->getShim()Landroid/icu/text/BreakIterator$BreakIteratorServiceShim; -HSPLandroid/icu/text/BreakIterator;->getWordInstance(Ljava/util/Locale;)Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/BreakIterator;->setLocale(Landroid/icu/util/ULocale;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/BreakIterator;->setText(Ljava/lang/String;)V -HSPLandroid/icu/text/BreakIteratorFactory;->createBreakInstance(Landroid/icu/util/ULocale;I)Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/BreakIteratorFactory;->createBreakIterator(Landroid/icu/util/ULocale;I)Landroid/icu/text/BreakIterator; -HSPLandroid/icu/text/CaseMap$Upper;->apply(Ljava/util/Locale;Ljava/lang/CharSequence;Ljava/lang/Appendable;Landroid/icu/text/Edits;)Ljava/lang/Appendable; -HSPLandroid/icu/text/CaseMap;->getCaseLocale(Ljava/util/Locale;)I -HSPLandroid/icu/text/CaseMap;->toUpper()Landroid/icu/text/CaseMap$Upper; -HSPLandroid/icu/text/CollationKey;-><init>(Ljava/lang/String;Landroid/icu/text/RawCollationKey;)V -HSPLandroid/icu/text/CollationKey;->getLength()I -HSPLandroid/icu/text/CollationKey;->toByteArray()[B -HSPLandroid/icu/text/Collator$ServiceShim;-><init>()V -HSPLandroid/icu/text/Collator;-><init>()V -HSPLandroid/icu/text/Collator;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/Collator;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/Collator; -HSPLandroid/icu/text/Collator;->getInstance(Ljava/util/Locale;)Landroid/icu/text/Collator; -HSPLandroid/icu/text/Collator;->getShim()Landroid/icu/text/Collator$ServiceShim; -HSPLandroid/icu/text/CollatorServiceShim$CService$1CollatorFactory;->handleCreate(Landroid/icu/util/ULocale;ILandroid/icu/impl/ICUService;)Ljava/lang/Object; -HSPLandroid/icu/text/CollatorServiceShim$CService;->validateFallbackLocale()Ljava/lang/String; -HSPLandroid/icu/text/CollatorServiceShim;-><init>()V -HSPLandroid/icu/text/CollatorServiceShim;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/Collator; -HSPLandroid/icu/text/CollatorServiceShim;->makeInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/Collator; -HSPLandroid/icu/text/ConstrainedFieldPosition;-><init>()V -HSPLandroid/icu/text/ConstrainedFieldPosition;->constrainField(Ljava/text/Format$Field;)V -HSPLandroid/icu/text/ConstrainedFieldPosition;->getField()Ljava/text/Format$Field; -HSPLandroid/icu/text/ConstrainedFieldPosition;->getFieldValue()Ljava/lang/Object; -HSPLandroid/icu/text/ConstrainedFieldPosition;->getLimit()I -HSPLandroid/icu/text/ConstrainedFieldPosition;->getStart()I -HSPLandroid/icu/text/ConstrainedFieldPosition;->matchesField(Ljava/text/Format$Field;Ljava/lang/Object;)Z -HSPLandroid/icu/text/ConstrainedFieldPosition;->reset()V -HSPLandroid/icu/text/ConstrainedFieldPosition;->setState(Ljava/text/Format$Field;Ljava/lang/Object;II)V -HSPLandroid/icu/text/CurrencyDisplayNames;-><init>()V -HSPLandroid/icu/text/CurrencyDisplayNames;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/CurrencyDisplayNames; -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyDigits;-><init>(II)V -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;-><init>(Ljava/lang/String;Ljava/lang/String;JJZ)V -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;->onDate(Ljava/util/Date;)Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;->onRegion(Ljava/lang/String;)Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;->withDate(Ljava/util/Date;)Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;->withRegion(Ljava/lang/String;)Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -HSPLandroid/icu/text/CurrencyMetaInfo$CurrencyFilter;->withTender()Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -HSPLandroid/icu/text/CurrencyMetaInfo;->getInstance()Landroid/icu/text/CurrencyMetaInfo; -HSPLandroid/icu/text/DateFormat;-><init>()V -HSPLandroid/icu/text/DateFormat;->format(Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String; -HSPLandroid/icu/text/DateFormat;->format(Ljava/util/Date;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DateFormat;->get(IILandroid/icu/util/ULocale;Landroid/icu/util/Calendar;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->getCalendar()Landroid/icu/util/Calendar; -HSPLandroid/icu/text/DateFormat;->getContext(Landroid/icu/text/DisplayContext$Type;)Landroid/icu/text/DisplayContext; -HSPLandroid/icu/text/DateFormat;->getDateInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->getInstanceForSkeleton(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->getInstanceForSkeleton(Ljava/lang/String;Ljava/util/Locale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->getPatternInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->getTimeInstance(ILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/text/DateFormat;->setCalendar(Landroid/icu/util/Calendar;)V -HSPLandroid/icu/text/DateFormat;->setContext(Landroid/icu/text/DisplayContext;)V -HSPLandroid/icu/text/DateFormat;->setTimeZone(Landroid/icu/util/TimeZone;)V -HSPLandroid/icu/text/DateFormatSymbols$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/text/DateFormatSymbols$1;->createInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols; -HSPLandroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols;->-$$Nest$fgetdfs(Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols;)Landroid/icu/text/DateFormatSymbols; -HSPLandroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols;-><init>(Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/text/DateFormatSymbols$CalendarDataSink;-><init>()V -HSPLandroid/icu/text/DateFormatSymbols$CalendarDataSink;->preEnumerate(Ljava/lang/String;)V -HSPLandroid/icu/text/DateFormatSymbols$CalendarDataSink;->processAliasFromValue(Ljava/lang/String;Landroid/icu/impl/UResource$Value;)Landroid/icu/text/DateFormatSymbols$CalendarDataSink$AliasType; -HSPLandroid/icu/text/DateFormatSymbols$CalendarDataSink;->processResource(Ljava/lang/String;Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/DateFormatSymbols$CalendarDataSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DateFormatSymbols$CapitalizationContextUsage;->values()[Landroid/icu/text/DateFormatSymbols$CapitalizationContextUsage; -HSPLandroid/icu/text/DateFormatSymbols;-><init>(Landroid/icu/util/Calendar;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateFormatSymbols;-><init>(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateFormatSymbols;-><init>(Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols;)V -HSPLandroid/icu/text/DateFormatSymbols;-><init>(Ljava/lang/Class;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateFormatSymbols;-><init>(Ljava/lang/Class;Ljava/util/Locale;)V -HSPLandroid/icu/text/DateFormatSymbols;->duplicate([Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/icu/text/DateFormatSymbols;->getAmPmStrings()[Ljava/lang/String; -HSPLandroid/icu/text/DateFormatSymbols;->getEras()[Ljava/lang/String; -HSPLandroid/icu/text/DateFormatSymbols;->getExtendedInstance(Landroid/icu/util/ULocale;Ljava/lang/String;)Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols; -HSPLandroid/icu/text/DateFormatSymbols;->getMonths(II)[Ljava/lang/String; -HSPLandroid/icu/text/DateFormatSymbols;->getWeekdays(II)[Ljava/lang/String; -HSPLandroid/icu/text/DateFormatSymbols;->initializeData(Landroid/icu/text/DateFormatSymbols;)V -HSPLandroid/icu/text/DateFormatSymbols;->initializeData(Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;)V -HSPLandroid/icu/text/DateFormatSymbols;->initializeData(Landroid/icu/util/ULocale;Landroid/icu/impl/ICUResourceBundle;Ljava/lang/String;Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols;)V -HSPLandroid/icu/text/DateFormatSymbols;->initializeData(Landroid/icu/util/ULocale;Ljava/lang/String;)V -HSPLandroid/icu/text/DateFormatSymbols;->setLocale(Landroid/icu/util/ULocale;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateFormatSymbols;->setTimeSeparatorString(Ljava/lang/String;)V -HSPLandroid/icu/text/DateIntervalFormat;-><init>(Ljava/lang/String;Landroid/icu/util/ULocale;Landroid/icu/text/SimpleDateFormat;)V -HSPLandroid/icu/text/DateIntervalFormat;->adjustFieldWidth(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IZ)Ljava/lang/String; -HSPLandroid/icu/text/DateIntervalFormat;->concatSingleDate2TimeInterval(Ljava/lang/String;Ljava/lang/String;ILjava/util/Map;)V -HSPLandroid/icu/text/DateIntervalFormat;->format(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DateIntervalFormat;->formatImpl(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Landroid/icu/text/DateIntervalFormat$FormatOutput;Ljava/util/List;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DateIntervalFormat;->genIntervalPattern(ILjava/lang/String;Ljava/lang/String;ILjava/util/Map;)Landroid/icu/text/DateIntervalFormat$SkeletonAndItsBestMatch; -HSPLandroid/icu/text/DateIntervalFormat;->genSeparateDateTimePtn(Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Landroid/icu/text/DateTimePatternGenerator;)Z -HSPLandroid/icu/text/DateIntervalFormat;->getConcatenationPattern(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/text/DateIntervalFormat;->getDateTimeSkeleton(Ljava/lang/String;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;)V -HSPLandroid/icu/text/DateIntervalFormat;->getInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateIntervalFormat; -HSPLandroid/icu/text/DateIntervalFormat;->initializeIntervalPattern(Ljava/lang/String;Landroid/icu/util/ULocale;)Ljava/util/Map; -HSPLandroid/icu/text/DateIntervalFormat;->initializePattern(Landroid/icu/impl/ICUCache;)V -HSPLandroid/icu/text/DateIntervalFormat;->normalizeHourMetacharacters(Ljava/lang/String;Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/text/DateIntervalFormat;->setTimeZone(Landroid/icu/util/TimeZone;)V -HSPLandroid/icu/text/DateIntervalInfo$DateIntervalSink;->processSkeletonTable(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/DateIntervalInfo$DateIntervalSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DateIntervalInfo$DateIntervalSink;->validateAndProcessPatternLetter(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/icu/text/DateIntervalInfo;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/DateIntervalInfo;->cloneUnfrozenDII()Ljava/lang/Object; -HSPLandroid/icu/text/DateIntervalInfo;->freeze()Landroid/icu/text/DateIntervalInfo; -HSPLandroid/icu/text/DateIntervalInfo;->getBestSkeleton(Ljava/lang/String;)Landroid/icu/text/DateIntervalFormat$BestMatchInfo; -HSPLandroid/icu/text/DateIntervalInfo;->getDefaultOrder()Z -HSPLandroid/icu/text/DateIntervalInfo;->getIntervalPattern(Ljava/lang/String;I)Landroid/icu/text/DateIntervalInfo$PatternInfo; -HSPLandroid/icu/text/DateIntervalInfo;->initializeData(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateIntervalInfo;->parseSkeleton(Ljava/lang/String;[I)V -HSPLandroid/icu/text/DateIntervalInfo;->setFallbackIntervalPattern(Ljava/lang/String;)V -HSPLandroid/icu/text/DateIntervalInfo;->setIntervalPatternInternally(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/icu/text/DateIntervalInfo$PatternInfo; -HSPLandroid/icu/text/DateIntervalInfo;->setup(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateIntervalInfo;->splitPatternInto2Part(Ljava/lang/String;)I -HSPLandroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink;-><init>(Landroid/icu/text/DateTimePatternGenerator;)V -HSPLandroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink;-><init>(Landroid/icu/text/DateTimePatternGenerator;)V -HSPLandroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$AvailableFormatsSink;-><init>(Landroid/icu/text/DateTimePatternGenerator;Landroid/icu/text/DateTimePatternGenerator$PatternInfo;)V -HSPLandroid/icu/text/DateTimePatternGenerator$AvailableFormatsSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->compareTo(Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;)I -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->compareTo(Ljava/lang/Object;)I -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->fieldIsNumeric(I)Z -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->getBasePattern()Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->getDistance(Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;ILandroid/icu/text/DateTimePatternGenerator$DistanceInfo;)I -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->getFieldMask()I -HSPLandroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;->set(Ljava/lang/String;Landroid/icu/text/DateTimePatternGenerator$FormatParser;Z)Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher; -HSPLandroid/icu/text/DateTimePatternGenerator$DisplayWidth;->cldrKey()Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator$DistanceInfo;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator$DistanceInfo;->addExtra(I)V -HSPLandroid/icu/text/DateTimePatternGenerator$DistanceInfo;->addMissing(I)V -HSPLandroid/icu/text/DateTimePatternGenerator$DistanceInfo;->clear()V -HSPLandroid/icu/text/DateTimePatternGenerator$DistanceInfo;->setTo(Landroid/icu/text/DateTimePatternGenerator$DistanceInfo;)V -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;->addVariable(Ljava/lang/StringBuffer;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;->getItems()Ljava/util/List; -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;->quoteLiteral(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;->set(Ljava/lang/String;)Landroid/icu/text/DateTimePatternGenerator$FormatParser; -HSPLandroid/icu/text/DateTimePatternGenerator$FormatParser;->set(Ljava/lang/String;Z)Landroid/icu/text/DateTimePatternGenerator$FormatParser; -HSPLandroid/icu/text/DateTimePatternGenerator$PatternInfo;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator$PatternWithMatcher;-><init>(Ljava/lang/String;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;)V -HSPLandroid/icu/text/DateTimePatternGenerator$PatternWithSkeletonFlag;-><init>(Ljava/lang/String;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->appendFieldTo(ILjava/lang/StringBuilder;Z)Ljava/lang/StringBuilder; -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->appendTo(Ljava/lang/StringBuilder;ZZ)Ljava/lang/StringBuilder; -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->clear()V -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->compareTo(Landroid/icu/text/DateTimePatternGenerator$SkeletonFields;)I -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->getFieldChar(I)C -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->getFieldLength(I)I -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->isFieldEmpty(I)Z -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->populate(ICI)V -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->populate(ILjava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator$SkeletonFields;->toString(Z)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator$VariableField;-><init>(Ljava/lang/String;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator$VariableField;->getCanonicalIndex()I -HSPLandroid/icu/text/DateTimePatternGenerator$VariableField;->getType()I -HSPLandroid/icu/text/DateTimePatternGenerator$VariableField;->isNumeric()Z -HSPLandroid/icu/text/DateTimePatternGenerator$VariableField;->toString()Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;-><init>()V -HSPLandroid/icu/text/DateTimePatternGenerator;->addCLDRData(Landroid/icu/text/DateTimePatternGenerator$PatternInfo;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->addCanonicalItems()V -HSPLandroid/icu/text/DateTimePatternGenerator;->addICUPatterns(Landroid/icu/text/DateTimePatternGenerator$PatternInfo;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->addPattern(Ljava/lang/String;ZLandroid/icu/text/DateTimePatternGenerator$PatternInfo;)Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->addPatternWithSkeleton(Ljava/lang/String;Ljava/lang/String;ZLandroid/icu/text/DateTimePatternGenerator$PatternInfo;)Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->adjustFieldTypes(Landroid/icu/text/DateTimePatternGenerator$PatternWithMatcher;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;Ljava/util/EnumSet;I)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->checkFrozen()V -HSPLandroid/icu/text/DateTimePatternGenerator;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/DateTimePatternGenerator;->cloneAsThawed()Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->consumeShortTimePattern(Ljava/lang/String;Landroid/icu/text/DateTimePatternGenerator$PatternInfo;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->fillInMissing()V -HSPLandroid/icu/text/DateTimePatternGenerator;->freeze()Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->getAllowedHourFormats(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->getAllowedHourFormatsLangCountry(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getAppendFormatNumber(Landroid/icu/impl/UResource$Key;)I -HSPLandroid/icu/text/DateTimePatternGenerator;->getAppendItemFormat(I)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestAppending(Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;ILandroid/icu/text/DateTimePatternGenerator$DistanceInfo;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;Ljava/util/EnumSet;I)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestPattern(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestPattern(Ljava/lang/String;IZ)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestPattern(Ljava/lang/String;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;I)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestPattern(Ljava/lang/String;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;IZ)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getBestRaw(Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;ILandroid/icu/text/DateTimePatternGenerator$DistanceInfo;Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher;)Landroid/icu/text/DateTimePatternGenerator$PatternWithMatcher; -HSPLandroid/icu/text/DateTimePatternGenerator;->getCLDRFieldAndWidthNumber(Landroid/icu/impl/UResource$Key;)I -HSPLandroid/icu/text/DateTimePatternGenerator;->getCalendarTypeToUse(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getCanonicalIndex(Ljava/lang/String;Z)I -HSPLandroid/icu/text/DateTimePatternGenerator;->getDateTimeFormat()Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getFieldDisplayName(ILandroid/icu/text/DateTimePatternGenerator$DisplayWidth;)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getFilteredPattern(Landroid/icu/text/DateTimePatternGenerator$FormatParser;Ljava/util/BitSet;)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->getFrozenInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->getInstance(Ljava/util/Locale;)Landroid/icu/text/DateTimePatternGenerator; -HSPLandroid/icu/text/DateTimePatternGenerator;->hackTimes(Landroid/icu/text/DateTimePatternGenerator$PatternInfo;Ljava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->initData(Landroid/icu/util/ULocale;Z)V -HSPLandroid/icu/text/DateTimePatternGenerator;->isAvailableFormatSet(Ljava/lang/String;)Z -HSPLandroid/icu/text/DateTimePatternGenerator;->isFrozen()Z -HSPLandroid/icu/text/DateTimePatternGenerator;->mapSkeletonMetacharacters(Ljava/lang/String;Ljava/util/EnumSet;)Ljava/lang/String; -HSPLandroid/icu/text/DateTimePatternGenerator;->setAppendItemFormat(ILjava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setAvailableFormat(Ljava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setDateTimeFormat(ILjava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setDateTimeFormat(Ljava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setDateTimeFromCalendar(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setDecimal(Ljava/lang/String;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setDecimalSymbols(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DateTimePatternGenerator;->setFieldDisplayName(ILandroid/icu/text/DateTimePatternGenerator$DisplayWidth;Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormat;-><init>(Ljava/lang/String;Landroid/icu/text/DecimalFormatSymbols;)V -HSPLandroid/icu/text/DecimalFormat;-><init>(Ljava/lang/String;Landroid/icu/text/DecimalFormatSymbols;I)V -HSPLandroid/icu/text/DecimalFormat;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/DecimalFormat;->fieldPositionHelper(Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/FormattedStringBuilder;Ljava/text/FieldPosition;I)V -HSPLandroid/icu/text/DecimalFormat;->format(DLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DecimalFormat;->format(JLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/DecimalFormat;->getDecimalFormatSymbols()Landroid/icu/text/DecimalFormatSymbols; -HSPLandroid/icu/text/DecimalFormat;->getMaximumFractionDigits()I -HSPLandroid/icu/text/DecimalFormat;->getMaximumIntegerDigits()I -HSPLandroid/icu/text/DecimalFormat;->getMinimumFractionDigits()I -HSPLandroid/icu/text/DecimalFormat;->getMinimumIntegerDigits()I -HSPLandroid/icu/text/DecimalFormat;->getNegativePrefix()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormat;->getNegativeSuffix()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormat;->getParser()Landroid/icu/impl/number/parse/NumberParserImpl; -HSPLandroid/icu/text/DecimalFormat;->getPositivePrefix()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormat;->getPositiveSuffix()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormat;->isParseBigDecimal()Z -HSPLandroid/icu/text/DecimalFormat;->isParseIntegerOnly()Z -HSPLandroid/icu/text/DecimalFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Number; -HSPLandroid/icu/text/DecimalFormat;->refreshFormatter()V -HSPLandroid/icu/text/DecimalFormat;->setCurrency(Landroid/icu/util/Currency;)V -HSPLandroid/icu/text/DecimalFormat;->setDecimalSeparatorAlwaysShown(Z)V -HSPLandroid/icu/text/DecimalFormat;->setGroupingUsed(Z)V -HSPLandroid/icu/text/DecimalFormat;->setMaximumFractionDigits(I)V -HSPLandroid/icu/text/DecimalFormat;->setMaximumIntegerDigits(I)V -HSPLandroid/icu/text/DecimalFormat;->setMinimumFractionDigits(I)V -HSPLandroid/icu/text/DecimalFormat;->setMinimumIntegerDigits(I)V -HSPLandroid/icu/text/DecimalFormat;->setParseIntegerOnly(Z)V -HSPLandroid/icu/text/DecimalFormat;->setParseStrictMode(Landroid/icu/impl/number/DecimalFormatProperties$ParseMode;)V -HSPLandroid/icu/text/DecimalFormat;->setPropertiesFromPattern(Ljava/lang/String;I)V -HSPLandroid/icu/text/DecimalFormat;->toNumberFormatter()Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/text/DecimalFormat;->toPattern()Ljava/lang/String;+]Landroid/icu/impl/number/DecimalFormatProperties;Landroid/icu/impl/number/DecimalFormatProperties; -HSPLandroid/icu/text/DecimalFormatSymbols$1;->createInstance(Landroid/icu/util/ULocale;Ljava/lang/Void;)Landroid/icu/text/DecimalFormatSymbols$CacheData; -HSPLandroid/icu/text/DecimalFormatSymbols$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/text/DecimalFormatSymbols$CacheData;-><init>(Landroid/icu/util/ULocale;[Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols$DecFmtDataSink;-><init>([Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols$DecFmtDataSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/DecimalFormatSymbols;->-$$Nest$sfgetSYMBOL_KEYS()[Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->-$$Nest$smloadData(Landroid/icu/util/ULocale;)Landroid/icu/text/DecimalFormatSymbols$CacheData; -HSPLandroid/icu/text/DecimalFormatSymbols;-><init>(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DecimalFormatSymbols;-><init>(Ljava/util/Locale;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/DecimalFormatSymbols;->getCachedLocaleData(Landroid/icu/util/ULocale;Landroid/icu/text/NumberingSystem;)Landroid/icu/text/DecimalFormatSymbols$CacheData; -HSPLandroid/icu/text/DecimalFormatSymbols;->getCodePointZero()I -HSPLandroid/icu/text/DecimalFormatSymbols;->getCurrency()Landroid/icu/util/Currency; -HSPLandroid/icu/text/DecimalFormatSymbols;->getCurrencyPattern()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getCurrencySymbol()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getDecimalSeparator()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getDecimalSeparatorString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getDigit()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getExponentSeparator()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getGroupingSeparator()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getGroupingSeparatorString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getInfinity()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getInstance(Ljava/util/Locale;)Landroid/icu/text/DecimalFormatSymbols; -HSPLandroid/icu/text/DecimalFormatSymbols;->getInternationalCurrencySymbol()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getLocale()Ljava/util/Locale; -HSPLandroid/icu/text/DecimalFormatSymbols;->getLocale(Landroid/icu/util/ULocale$Type;)Landroid/icu/util/ULocale; -HSPLandroid/icu/text/DecimalFormatSymbols;->getLocalizedPatternSeparator(Landroid/icu/util/ULocale;Landroid/icu/text/NumberingSystem;)Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getMinusSign()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getMinusSignString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getMonetaryDecimalSeparator()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getMonetaryGroupingSeparator()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getNaN()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getPatternSeparator()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getPerMill()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getPerMillString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getPercent()C -HSPLandroid/icu/text/DecimalFormatSymbols;->getPercentString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getPlusSignString()Ljava/lang/String; -HSPLandroid/icu/text/DecimalFormatSymbols;->getULocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/text/DecimalFormatSymbols;->getZeroDigit()C -HSPLandroid/icu/text/DecimalFormatSymbols;->initSpacingInfo(Landroid/icu/impl/CurrencyData$CurrencySpacingInfo;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->initialize(Landroid/icu/util/ULocale;Landroid/icu/text/NumberingSystem;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->loadData(Landroid/icu/util/ULocale;)Landroid/icu/text/DecimalFormatSymbols$CacheData; -HSPLandroid/icu/text/DecimalFormatSymbols;->setApproximatelySignString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setCurrency(Landroid/icu/util/Currency;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setCurrencyOrNull(Landroid/icu/util/Currency;Landroid/icu/impl/CurrencyData$CurrencyDisplayInfo;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setCurrencySymbol(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setDecimalSeparator(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setDecimalSeparatorString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setDigit(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setDigitStrings([Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setExponentMultiplicationSign(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setExponentSeparator(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setGroupingSeparator(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setGroupingSeparatorString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setInfinity(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setInternationalCurrencySymbol(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setLocale(Landroid/icu/util/ULocale;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMinusSign(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMinusSignString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMonetaryDecimalSeparator(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMonetaryDecimalSeparatorString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMonetaryGroupingSeparator(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setMonetaryGroupingSeparatorString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setNaN(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPatternForCurrencySpacing(IZLjava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPatternSeparator(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPerMill(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPerMillString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPercent(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPercentString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPlusSign(C)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setPlusSignString(Ljava/lang/String;)V -HSPLandroid/icu/text/DecimalFormatSymbols;->setZeroDigit(C)V -HSPLandroid/icu/text/DisplayContext;->type()Landroid/icu/text/DisplayContext$Type; -HSPLandroid/icu/text/Edits$Iterator;->next(Z)Z -HSPLandroid/icu/text/Edits;-><init>()V -HSPLandroid/icu/text/Edits;->addReplace(II)V -HSPLandroid/icu/text/Edits;->addUnchanged(I)V -HSPLandroid/icu/text/Edits;->append(I)V -HSPLandroid/icu/text/Edits;->hasChanges()Z -HSPLandroid/icu/text/Edits;->lastUnit()I -HSPLandroid/icu/text/Edits;->reset()V -HSPLandroid/icu/text/IDNA;->convertIDNToASCII(Ljava/lang/String;I)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/MeasureFormat;-><init>(Landroid/icu/util/ULocale;Landroid/icu/text/MeasureFormat$FormatWidth;Landroid/icu/text/NumberFormat;Landroid/icu/text/PluralRules;Landroid/icu/text/MeasureFormat$NumericFormatters;)V -HSPLandroid/icu/text/MeasureFormat;->getNumberFormatter()Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/text/MeasureFormat;->getUnitFormatterFromCache(ILandroid/icu/util/MeasureUnit;Landroid/icu/util/MeasureUnit;)Landroid/icu/number/LocalizedNumberFormatter; -HSPLandroid/icu/text/Normalizer$NFKDMode;->getNormalizer2(I)Landroid/icu/text/Normalizer2; -HSPLandroid/icu/text/Normalizer2;->getNFCInstance()Landroid/icu/text/Normalizer2; -HSPLandroid/icu/text/Normalizer2;->getNFDInstance()Landroid/icu/text/Normalizer2; -HSPLandroid/icu/text/Normalizer2;->getNFKDInstance()Landroid/icu/text/Normalizer2; -HSPLandroid/icu/text/Normalizer2;->normalize(Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLandroid/icu/text/Normalizer;->normalize(Ljava/lang/String;Landroid/icu/text/Normalizer$Mode;)Ljava/lang/String; -HSPLandroid/icu/text/NumberFormat;-><init>()V -HSPLandroid/icu/text/NumberFormat;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/NumberFormat;->createInstance(Landroid/icu/util/ULocale;I)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/NumberFormat;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/NumberFormat;->getInstance(Landroid/icu/util/ULocale;I)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/NumberFormat;->getInstance(Ljava/util/Locale;I)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/NumberFormat;->getPattern(Landroid/icu/util/ULocale;I)Ljava/lang/String; -HSPLandroid/icu/text/NumberFormat;->getPatternForStyle(Landroid/icu/util/ULocale;I)Ljava/lang/String; -HSPLandroid/icu/text/NumberFormat;->getPatternForStyleAndNumberingSystem(Landroid/icu/util/ULocale;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/icu/text/NumberFormat;->getShim()Landroid/icu/text/NumberFormat$NumberFormatShim; -HSPLandroid/icu/text/NumberFormatServiceShim$NFService$1RBNumberFormatFactory;->handleCreate(Landroid/icu/util/ULocale;ILandroid/icu/impl/ICUService;)Ljava/lang/Object; -HSPLandroid/icu/text/NumberFormatServiceShim;->createInstance(Landroid/icu/util/ULocale;I)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/NumberingSystem$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/text/NumberingSystem$1;->createInstance(Ljava/lang/String;Landroid/icu/text/NumberingSystem$LocaleLookupData;)Landroid/icu/text/NumberingSystem; -HSPLandroid/icu/text/NumberingSystem$LocaleLookupData;-><init>(Landroid/icu/util/ULocale;Ljava/lang/String;)V -HSPLandroid/icu/text/NumberingSystem;->getDescription()Ljava/lang/String; -HSPLandroid/icu/text/NumberingSystem;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/NumberingSystem; -HSPLandroid/icu/text/NumberingSystem;->getInstanceByName(Ljava/lang/String;)Landroid/icu/text/NumberingSystem; -HSPLandroid/icu/text/NumberingSystem;->getName()Ljava/lang/String; -HSPLandroid/icu/text/NumberingSystem;->getRadix()I -HSPLandroid/icu/text/NumberingSystem;->isAlgorithmic()Z -HSPLandroid/icu/text/NumberingSystem;->isValidDigitString(Ljava/lang/String;)Z -HSPLandroid/icu/text/NumberingSystem;->lookupInstanceByLocale(Landroid/icu/text/NumberingSystem$LocaleLookupData;)Landroid/icu/text/NumberingSystem; -HSPLandroid/icu/text/PluralRules$1;->isFulfilled(Landroid/icu/text/PluralRules$IFixedDecimal;)Z -HSPLandroid/icu/text/PluralRules$AndConstraint;-><init>(Landroid/icu/text/PluralRules$Constraint;Landroid/icu/text/PluralRules$Constraint;)V -HSPLandroid/icu/text/PluralRules$AndConstraint;->isFulfilled(Landroid/icu/text/PluralRules$IFixedDecimal;)Z -HSPLandroid/icu/text/PluralRules$BinaryConstraint;-><init>(Landroid/icu/text/PluralRules$Constraint;Landroid/icu/text/PluralRules$Constraint;)V -HSPLandroid/icu/text/PluralRules$DecimalQuantitySamples;-><init>(Landroid/icu/text/PluralRules$SampleType;Ljava/util/Set;Z)V -HSPLandroid/icu/text/PluralRules$DecimalQuantitySamples;->checkDecimal(Landroid/icu/text/PluralRules$SampleType;Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/text/PluralRules$DecimalQuantitySamples;->parse(Ljava/lang/String;)Landroid/icu/text/PluralRules$DecimalQuantitySamples; -HSPLandroid/icu/text/PluralRules$DecimalQuantitySamplesRange;-><init>(Landroid/icu/impl/number/DecimalQuantity;Landroid/icu/impl/number/DecimalQuantity;)V -HSPLandroid/icu/text/PluralRules$Factory;->getDefaultFactory()Landroid/icu/impl/PluralRulesLoader; -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(D)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(DI)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(DIJ)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(DIJI)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(DIJII)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;-><init>(Landroid/icu/text/PluralRules$FixedDecimal;)V -HSPLandroid/icu/text/PluralRules$FixedDecimal;->decimals(D)I -HSPLandroid/icu/text/PluralRules$FixedDecimal;->getFractionalDigits(DI)I -HSPLandroid/icu/text/PluralRules$FixedDecimal;->getOperand(Ljava/lang/String;)Landroid/icu/text/PluralRules$Operand; -HSPLandroid/icu/text/PluralRules$FixedDecimal;->getPluralOperand(Landroid/icu/text/PluralRules$Operand;)D -HSPLandroid/icu/text/PluralRules$FixedDecimal;->getVisibleDecimalDigitCount()I -HSPLandroid/icu/text/PluralRules$FixedDecimal;->intValue()I -HSPLandroid/icu/text/PluralRules$FixedDecimal;->isInfinite()Z -HSPLandroid/icu/text/PluralRules$FixedDecimal;->isNaN()Z -HSPLandroid/icu/text/PluralRules$FixedDecimal;->longValue()J -HSPLandroid/icu/text/PluralRules$Operand;->valueOf(Ljava/lang/String;)Landroid/icu/text/PluralRules$Operand; -HSPLandroid/icu/text/PluralRules$Operand;->values()[Landroid/icu/text/PluralRules$Operand; -HSPLandroid/icu/text/PluralRules$RangeConstraint;-><init>(IZLandroid/icu/text/PluralRules$Operand;ZDD[J)V -HSPLandroid/icu/text/PluralRules$RangeConstraint;->isFulfilled(Landroid/icu/text/PluralRules$IFixedDecimal;)Z -HSPLandroid/icu/text/PluralRules$Rule;->appliesTo(Landroid/icu/text/PluralRules$IFixedDecimal;)Z -HSPLandroid/icu/text/PluralRules$Rule;->getKeyword()Ljava/lang/String; -HSPLandroid/icu/text/PluralRules$RuleList;-><init>()V -HSPLandroid/icu/text/PluralRules$RuleList;->addRule(Landroid/icu/text/PluralRules$Rule;)Landroid/icu/text/PluralRules$RuleList; -HSPLandroid/icu/text/PluralRules$RuleList;->finish()Landroid/icu/text/PluralRules$RuleList; -HSPLandroid/icu/text/PluralRules$RuleList;->getKeywords()Ljava/util/Set; -HSPLandroid/icu/text/PluralRules$RuleList;->select(Landroid/icu/text/PluralRules$IFixedDecimal;)Ljava/lang/String; -HSPLandroid/icu/text/PluralRules$RuleList;->selectRule(Landroid/icu/text/PluralRules$IFixedDecimal;)Landroid/icu/text/PluralRules$Rule; -HSPLandroid/icu/text/PluralRules$SimpleTokenizer;->split(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/icu/text/PluralRules;-><init>(Landroid/icu/text/PluralRules$RuleList;Landroid/icu/impl/number/range/StandardPluralRanges;)V -HSPLandroid/icu/text/PluralRules;->forLocale(Landroid/icu/util/ULocale;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/text/PluralRules;->forLocale(Ljava/util/Locale;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/text/PluralRules;->isValidKeyword(Ljava/lang/String;)Z -HSPLandroid/icu/text/PluralRules;->newInternal(Ljava/lang/String;Landroid/icu/impl/number/range/StandardPluralRanges;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/text/PluralRules;->nextToken([Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/text/PluralRules;->parseConstraint(Ljava/lang/String;)Landroid/icu/text/PluralRules$Constraint; -HSPLandroid/icu/text/PluralRules;->parseDescription(Ljava/lang/String;)Landroid/icu/text/PluralRules; -HSPLandroid/icu/text/PluralRules;->parseRule(Ljava/lang/String;)Landroid/icu/text/PluralRules$Rule; -HSPLandroid/icu/text/PluralRules;->parseRuleChain(Ljava/lang/String;)Landroid/icu/text/PluralRules$RuleList; -HSPLandroid/icu/text/PluralRules;->select(D)Ljava/lang/String; -HSPLandroid/icu/text/PluralRules;->select(Landroid/icu/text/PluralRules$IFixedDecimal;)Ljava/lang/String; -HSPLandroid/icu/text/RawCollationKey;-><init>(I)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$AbsoluteUnit;->values()[Landroid/icu/text/RelativeDateTimeFormatter$AbsoluteUnit; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Cache$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Cache$1;->createInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeFormatterData; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Cache;->get(Landroid/icu/util/ULocale;)Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeFormatterData; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Direction;->values()[Landroid/icu/text/RelativeDateTimeFormatter$Direction; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Loader;->load()Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeFormatterData; -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink$DateTimeUnit;->orNullFromString(Ljava/lang/CharSequence;)Landroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink$DateTimeUnit; -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->consumeTableRelative(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->consumeTableRelativeTime(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->consumeTimeDetail(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->consumeTimeUnit(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->handleAlias(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->handlePlainDirection(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink;->put(Landroid/icu/impl/UResource$Key;Landroid/icu/impl/UResource$Value;Z)V -HSPLandroid/icu/text/RelativeDateTimeFormatter$RelativeUnit;->values()[Landroid/icu/text/RelativeDateTimeFormatter$RelativeUnit; -HSPLandroid/icu/text/RelativeDateTimeFormatter$Style;->values()[Landroid/icu/text/RelativeDateTimeFormatter$Style; -HSPLandroid/icu/text/RelativeDateTimeFormatter;-><init>(Ljava/util/EnumMap;Ljava/util/EnumMap;Ljava/lang/String;Landroid/icu/text/PluralRules;Landroid/icu/text/NumberFormat;Landroid/icu/text/RelativeDateTimeFormatter$Style;Landroid/icu/text/DisplayContext;Landroid/icu/text/BreakIterator;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/RelativeDateTimeFormatter;->adjustForContext(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/text/RelativeDateTimeFormatter;->getInstance(Landroid/icu/util/ULocale;Landroid/icu/text/NumberFormat;Landroid/icu/text/RelativeDateTimeFormatter$Style;Landroid/icu/text/DisplayContext;)Landroid/icu/text/RelativeDateTimeFormatter; -HSPLandroid/icu/text/RelativeDateTimeFormatter;->keyToDirection(Landroid/icu/impl/UResource$Key;)Landroid/icu/text/RelativeDateTimeFormatter$Direction; -HSPLandroid/icu/text/ReplaceableString;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/text/ReplaceableString;->charAt(I)C -HSPLandroid/icu/text/ReplaceableString;->getChars(II[CI)V -HSPLandroid/icu/text/ReplaceableString;->length()I -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;-><init>(Landroid/icu/text/RuleBasedBreakIterator;)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;-><init>(Landroid/icu/text/RuleBasedBreakIterator;Landroid/icu/text/RuleBasedBreakIterator$BreakCache;)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->addFollowing(IIZ)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->addPreceding(IIZ)Z -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->current()I -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->following(I)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->next()V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->populateFollowing()Z -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->populateNear(I)Z -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->populatePreceding()Z -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->preceding(I)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->previous()V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->reset()V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->reset(II)V -HSPLandroid/icu/text/RuleBasedBreakIterator$BreakCache;->seek(I)Z -HSPLandroid/icu/text/RuleBasedBreakIterator$DictionaryCache;-><init>(Landroid/icu/text/RuleBasedBreakIterator;)V -HSPLandroid/icu/text/RuleBasedBreakIterator$DictionaryCache;-><init>(Landroid/icu/text/RuleBasedBreakIterator;Landroid/icu/text/RuleBasedBreakIterator$DictionaryCache;)V -HSPLandroid/icu/text/RuleBasedBreakIterator$DictionaryCache;->following(I)Z -HSPLandroid/icu/text/RuleBasedBreakIterator$DictionaryCache;->preceding(I)Z -HSPLandroid/icu/text/RuleBasedBreakIterator$DictionaryCache;->reset()V -HSPLandroid/icu/text/RuleBasedBreakIterator;-><init>()V -HSPLandroid/icu/text/RuleBasedBreakIterator;->CISetIndex32(Ljava/text/CharacterIterator;I)I -HSPLandroid/icu/text/RuleBasedBreakIterator;->checkOffset(ILjava/text/CharacterIterator;)V -HSPLandroid/icu/text/RuleBasedBreakIterator;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/RuleBasedBreakIterator;->first()I -HSPLandroid/icu/text/RuleBasedBreakIterator;->following(I)I -HSPLandroid/icu/text/RuleBasedBreakIterator;->getInstanceFromCompiledRules(Ljava/nio/ByteBuffer;)Landroid/icu/text/RuleBasedBreakIterator; -HSPLandroid/icu/text/RuleBasedBreakIterator;->getText()Ljava/text/CharacterIterator; -HSPLandroid/icu/text/RuleBasedBreakIterator;->handleNext()I -HSPLandroid/icu/text/RuleBasedBreakIterator;->handleSafePrevious(I)I -HSPLandroid/icu/text/RuleBasedBreakIterator;->isBoundary(I)Z -HSPLandroid/icu/text/RuleBasedBreakIterator;->next()I -HSPLandroid/icu/text/RuleBasedBreakIterator;->preceding(I)I -HSPLandroid/icu/text/RuleBasedBreakIterator;->setText(Ljava/text/CharacterIterator;)V -HSPLandroid/icu/text/RuleBasedCollator$CollationBuffer;-><init>(Landroid/icu/impl/coll/CollationData;)V -HSPLandroid/icu/text/RuleBasedCollator$CollationBuffer;-><init>(Landroid/icu/impl/coll/CollationData;Landroid/icu/text/RuleBasedCollator$CollationBuffer-IA;)V -HSPLandroid/icu/text/RuleBasedCollator$CollationKeyByteSink;-><init>(Landroid/icu/text/RawCollationKey;)V -HSPLandroid/icu/text/RuleBasedCollator$FCDUTF16NFDIterator;-><init>()V -HSPLandroid/icu/text/RuleBasedCollator$NFDIterator;-><init>()V -HSPLandroid/icu/text/RuleBasedCollator$UTF16NFDIterator;-><init>()V -HSPLandroid/icu/text/RuleBasedCollator;-><init>(Landroid/icu/impl/coll/CollationTailoring;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/RuleBasedCollator;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/text/RuleBasedCollator;->adoptTailoring(Landroid/icu/impl/coll/CollationTailoring;)V -HSPLandroid/icu/text/RuleBasedCollator;->checkNotFrozen()V -HSPLandroid/icu/text/RuleBasedCollator;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/RuleBasedCollator;->cloneAsThawed()Landroid/icu/text/RuleBasedCollator; -HSPLandroid/icu/text/RuleBasedCollator;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/icu/text/RuleBasedCollator;->doCompare(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)I -HSPLandroid/icu/text/RuleBasedCollator;->freeze()Landroid/icu/text/Collator; -HSPLandroid/icu/text/RuleBasedCollator;->getCollationBuffer()Landroid/icu/text/RuleBasedCollator$CollationBuffer; -HSPLandroid/icu/text/RuleBasedCollator;->getCollationKey(Ljava/lang/String;)Landroid/icu/text/CollationKey; -HSPLandroid/icu/text/RuleBasedCollator;->getCollationKey(Ljava/lang/String;Landroid/icu/text/RuleBasedCollator$CollationBuffer;)Landroid/icu/text/CollationKey; -HSPLandroid/icu/text/RuleBasedCollator;->getOwnedSettings()Landroid/icu/impl/coll/CollationSettings; -HSPLandroid/icu/text/RuleBasedCollator;->getRawCollationKey(Ljava/lang/CharSequence;Landroid/icu/text/RawCollationKey;Landroid/icu/text/RuleBasedCollator$CollationBuffer;)Landroid/icu/text/RawCollationKey; -HSPLandroid/icu/text/RuleBasedCollator;->getRules()Ljava/lang/String; -HSPLandroid/icu/text/RuleBasedCollator;->getStrength()I -HSPLandroid/icu/text/RuleBasedCollator;->internalBuildTailoring(Ljava/lang/String;)V -HSPLandroid/icu/text/RuleBasedCollator;->isFrozen()Z -HSPLandroid/icu/text/RuleBasedCollator;->releaseCollationBuffer(Landroid/icu/text/RuleBasedCollator$CollationBuffer;)V -HSPLandroid/icu/text/RuleBasedCollator;->setDecomposition(I)V -HSPLandroid/icu/text/RuleBasedCollator;->setFastLatinOptions(Landroid/icu/impl/coll/CollationSettings;)V -HSPLandroid/icu/text/RuleBasedCollator;->setStrength(I)V -HSPLandroid/icu/text/RuleBasedCollator;->simpleKeyLengthEstimate(Ljava/lang/CharSequence;)I -HSPLandroid/icu/text/RuleBasedCollator;->writeSortKey(Ljava/lang/CharSequence;Landroid/icu/text/RuleBasedCollator$CollationKeyByteSink;Landroid/icu/text/RuleBasedCollator$CollationBuffer;)V -HSPLandroid/icu/text/SimpleDateFormat$PatternItem;-><init>(CI)V -HSPLandroid/icu/text/SimpleDateFormat;-><init>(Ljava/lang/String;Landroid/icu/text/DateFormatSymbols;Landroid/icu/util/Calendar;Landroid/icu/text/NumberFormat;Landroid/icu/util/ULocale;ZLjava/lang/String;)V -HSPLandroid/icu/text/SimpleDateFormat;-><init>(Ljava/lang/String;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/SimpleDateFormat;->fastZeroPaddingNumber(Ljava/lang/StringBuffer;III)V -HSPLandroid/icu/text/SimpleDateFormat;->format(Landroid/icu/util/Calendar;Landroid/icu/text/DisplayContext;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/SimpleDateFormat;->format(Landroid/icu/util/Calendar;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/SimpleDateFormat;->format(Landroid/icu/util/Calendar;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/SimpleDateFormat;->getIndexFromChar(C)I -HSPLandroid/icu/text/SimpleDateFormat;->getInstance(Landroid/icu/util/Calendar$FormatConfiguration;)Landroid/icu/text/SimpleDateFormat; -HSPLandroid/icu/text/SimpleDateFormat;->getLocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/text/SimpleDateFormat;->getNumberFormat(C)Landroid/icu/text/NumberFormat; -HSPLandroid/icu/text/SimpleDateFormat;->getPatternItems()[Ljava/lang/Object; -HSPLandroid/icu/text/SimpleDateFormat;->initLocalZeroPaddingNumberFormat()V -HSPLandroid/icu/text/SimpleDateFormat;->initialize()V -HSPLandroid/icu/text/SimpleDateFormat;->isFieldUnitIgnored(Ljava/lang/String;I)Z -HSPLandroid/icu/text/SimpleDateFormat;->isNumeric(CI)Z -HSPLandroid/icu/text/SimpleDateFormat;->isSyntaxChar(C)Z -HSPLandroid/icu/text/SimpleDateFormat;->parsePattern()V -HSPLandroid/icu/text/SimpleDateFormat;->safeAppend([Ljava/lang/String;ILjava/lang/StringBuffer;)V -HSPLandroid/icu/text/SimpleDateFormat;->safeAppendWithMonthPattern([Ljava/lang/String;ILjava/lang/StringBuffer;Ljava/lang/String;)V -HSPLandroid/icu/text/SimpleDateFormat;->setContext(Landroid/icu/text/DisplayContext;)V -HSPLandroid/icu/text/SimpleDateFormat;->subFormat(Ljava/lang/StringBuffer;CIIILandroid/icu/text/DisplayContext;Ljava/text/FieldPosition;CLandroid/icu/util/Calendar;)V -HSPLandroid/icu/text/SimpleDateFormat;->toPattern()Ljava/lang/String; -HSPLandroid/icu/text/SimpleDateFormat;->zeroPaddingNumber(Landroid/icu/text/NumberFormat;Ljava/lang/StringBuffer;III)V -HSPLandroid/icu/text/TimeZoneNames$Cache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/text/TimeZoneNames$Cache;->createInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/TimeZoneNames; -HSPLandroid/icu/text/TimeZoneNames;-><init>()V -HSPLandroid/icu/text/TimeZoneNames;->getDisplayName(Ljava/lang/String;Landroid/icu/text/TimeZoneNames$NameType;J)Ljava/lang/String; -HSPLandroid/icu/text/TimeZoneNames;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/text/TimeZoneNames; -HSPLandroid/icu/text/TimeZoneNames;->getInstance(Ljava/util/Locale;)Landroid/icu/text/TimeZoneNames; -HSPLandroid/icu/text/UCharacterIterator;-><init>()V -HSPLandroid/icu/text/UCharacterIterator;->getInstance(Ljava/lang/String;)Landroid/icu/text/UCharacterIterator; -HSPLandroid/icu/text/UCharacterIterator;->getText()Ljava/lang/String; -HSPLandroid/icu/text/UCharacterIterator;->getText([C)I -HSPLandroid/icu/text/UCharacterIterator;->setToStart()V -HSPLandroid/icu/text/UFormat;-><init>()V -HSPLandroid/icu/text/UFormat;->getLocale(Landroid/icu/util/ULocale$Type;)Landroid/icu/util/ULocale; -HSPLandroid/icu/text/UFormat;->setLocale(Landroid/icu/util/ULocale;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/text/UTF16;->append(Ljava/lang/StringBuffer;I)Ljava/lang/StringBuffer; -HSPLandroid/icu/text/UTF16;->charAt(Ljava/lang/String;I)I -HSPLandroid/icu/text/UTF16;->charAt([CIII)I -HSPLandroid/icu/text/UTF16;->getCharCount(I)I -HSPLandroid/icu/text/UnicodeFilter;-><init>()V -HSPLandroid/icu/text/UnicodeSet;-><init>()V -HSPLandroid/icu/text/UnicodeSet;-><init>(Landroid/icu/text/UnicodeSet;)V -HSPLandroid/icu/text/UnicodeSet;->_appendToPat(Ljava/lang/Appendable;IIZ)Ljava/lang/Appendable; -HSPLandroid/icu/text/UnicodeSet;->_appendToPat(Ljava/lang/Appendable;IZ)Ljava/lang/Appendable; -HSPLandroid/icu/text/UnicodeSet;->add(I)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->add(II)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->add([III)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->addAll(Landroid/icu/text/UnicodeSet;)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->add_unchecked(I)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->add_unchecked(II)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->appendCodePoint(Ljava/lang/Appendable;I)V -HSPLandroid/icu/text/UnicodeSet;->appendNewPattern(Ljava/lang/Appendable;ZZ)Ljava/lang/Appendable; -HSPLandroid/icu/text/UnicodeSet;->applyPattern(Landroid/icu/impl/RuleCharacterIterator;Landroid/icu/text/SymbolTable;Ljava/lang/Appendable;II)V -HSPLandroid/icu/text/UnicodeSet;->applyPattern(Ljava/lang/String;Ljava/text/ParsePosition;Landroid/icu/text/SymbolTable;I)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->checkFrozen()V -HSPLandroid/icu/text/UnicodeSet;->clear()Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->clone()Ljava/lang/Object; -HSPLandroid/icu/text/UnicodeSet;->compact()Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->contains(I)Z -HSPLandroid/icu/text/UnicodeSet;->contains(Ljava/lang/CharSequence;)Z -HSPLandroid/icu/text/UnicodeSet;->containsAll(Ljava/lang/String;)Z -HSPLandroid/icu/text/UnicodeSet;->findCodePoint(I)I -HSPLandroid/icu/text/UnicodeSet;->freeze()Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/text/UnicodeSet;->getRangeCount()I -HSPLandroid/icu/text/UnicodeSet;->getRangeEnd(I)I -HSPLandroid/icu/text/UnicodeSet;->getRangeStart(I)I -HSPLandroid/icu/text/UnicodeSet;->getSingleCP(Ljava/lang/CharSequence;)I -HSPLandroid/icu/text/UnicodeSet;->hasStrings()Z -HSPLandroid/icu/text/UnicodeSet;->isFrozen()Z -HSPLandroid/icu/text/UnicodeSet;->resemblesPropertyPattern(Landroid/icu/impl/RuleCharacterIterator;I)Z -HSPLandroid/icu/text/UnicodeSet;->set(Landroid/icu/text/UnicodeSet;)Landroid/icu/text/UnicodeSet; -HSPLandroid/icu/util/AnnualTimeZoneRule;-><init>(Ljava/lang/String;IILandroid/icu/util/DateTimeRule;II)V -HSPLandroid/icu/util/AnnualTimeZoneRule;->getEndYear()I -HSPLandroid/icu/util/AnnualTimeZoneRule;->getFirstStart(II)Ljava/util/Date; -HSPLandroid/icu/util/AnnualTimeZoneRule;->getNextStart(JIIZ)Ljava/util/Date; -HSPLandroid/icu/util/AnnualTimeZoneRule;->getRule()Landroid/icu/util/DateTimeRule; -HSPLandroid/icu/util/AnnualTimeZoneRule;->getStartInYear(III)Ljava/util/Date; -HSPLandroid/icu/util/AnnualTimeZoneRule;->getStartYear()I -HSPLandroid/icu/util/AnnualTimeZoneRule;->isEquivalentTo(Landroid/icu/util/TimeZoneRule;)Z -HSPLandroid/icu/util/BasicTimeZone;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/util/ByteArrayWrapper;-><init>()V -HSPLandroid/icu/util/ByteArrayWrapper;->releaseBytes()[B -HSPLandroid/icu/util/BytesTrie$Result;->hasNext()Z -HSPLandroid/icu/util/BytesTrie$Result;->hasValue()Z -HSPLandroid/icu/util/BytesTrie;-><init>([BI)V -HSPLandroid/icu/util/BytesTrie;->branchNext(III)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/BytesTrie;->getValue()I -HSPLandroid/icu/util/BytesTrie;->jumpByDelta([BI)I -HSPLandroid/icu/util/BytesTrie;->next(I)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/BytesTrie;->nextImpl(II)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/BytesTrie;->readValue([BII)I -HSPLandroid/icu/util/BytesTrie;->skipDelta([BI)I -HSPLandroid/icu/util/BytesTrie;->skipValue(II)I -HSPLandroid/icu/util/BytesTrie;->skipValue([BI)I -HSPLandroid/icu/util/Calendar$FormatConfiguration;-><init>()V -HSPLandroid/icu/util/Calendar$FormatConfiguration;->getCalendar()Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar$FormatConfiguration;->getDateFormatSymbols()Landroid/icu/text/DateFormatSymbols; -HSPLandroid/icu/util/Calendar$FormatConfiguration;->getLocale()Landroid/icu/util/ULocale; -HSPLandroid/icu/util/Calendar$FormatConfiguration;->getOverrideString()Ljava/lang/String; -HSPLandroid/icu/util/Calendar$FormatConfiguration;->getPatternString()Ljava/lang/String; -HSPLandroid/icu/util/Calendar$PatternData;->getDateTimePattern(I)Ljava/lang/String; -HSPLandroid/icu/util/Calendar$PatternData;->make(Landroid/icu/util/Calendar;Landroid/icu/util/ULocale;)Landroid/icu/util/Calendar$PatternData; -HSPLandroid/icu/util/Calendar$PatternData;->make(Landroid/icu/util/ULocale;Ljava/lang/String;)Landroid/icu/util/Calendar$PatternData; -HSPLandroid/icu/util/Calendar$WeekDataCache;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/util/Calendar$WeekDataCache;->createInstance(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/util/Calendar$WeekData; -HSPLandroid/icu/util/Calendar;-><init>(Landroid/icu/util/TimeZone;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/util/Calendar;->clone()Ljava/lang/Object; -HSPLandroid/icu/util/Calendar;->complete()V -HSPLandroid/icu/util/Calendar;->computeFields()V -HSPLandroid/icu/util/Calendar;->computeGregorianAndDOWFields(I)V -HSPLandroid/icu/util/Calendar;->computeGregorianFields(I)V -HSPLandroid/icu/util/Calendar;->computeWeekFields()V -HSPLandroid/icu/util/Calendar;->createInstance(Landroid/icu/util/ULocale;)Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar;->floorDivide(II[I)I -HSPLandroid/icu/util/Calendar;->floorDivide(JI[I)I -HSPLandroid/icu/util/Calendar;->floorDivide(JJ)J -HSPLandroid/icu/util/Calendar;->formatHelper(Landroid/icu/util/Calendar;Landroid/icu/util/ULocale;II)Landroid/icu/text/DateFormat; -HSPLandroid/icu/util/Calendar;->get(I)I -HSPLandroid/icu/util/Calendar;->getCalendarTypeForLocale(Landroid/icu/util/ULocale;)Landroid/icu/impl/CalType; -HSPLandroid/icu/util/Calendar;->getDateTimeFormat(IILandroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/util/Calendar;->getDateTimeFormatString(Landroid/icu/util/ULocale;Ljava/lang/String;II)Ljava/lang/String; -HSPLandroid/icu/util/Calendar;->getDateTimePattern(Landroid/icu/util/Calendar;Landroid/icu/util/ULocale;I)Ljava/lang/String; -HSPLandroid/icu/util/Calendar;->getFirstDayOfWeek()I -HSPLandroid/icu/util/Calendar;->getGregorianDayOfMonth()I -HSPLandroid/icu/util/Calendar;->getGregorianDayOfYear()I -HSPLandroid/icu/util/Calendar;->getGregorianMonth()I -HSPLandroid/icu/util/Calendar;->getGregorianYear()I -HSPLandroid/icu/util/Calendar;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar;->getInstance(Ljava/util/Locale;)Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar;->getInstanceInternal(Landroid/icu/util/TimeZone;Landroid/icu/util/ULocale;)Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar;->getKeywordValuesForLocale(Ljava/lang/String;Landroid/icu/util/ULocale;Z)[Ljava/lang/String; -HSPLandroid/icu/util/Calendar;->getLeastMaximum(I)I -HSPLandroid/icu/util/Calendar;->getLimit(II)I -HSPLandroid/icu/util/Calendar;->getLocale(Landroid/icu/util/ULocale$Type;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/Calendar;->getMinimalDaysInFirstWeek()I -HSPLandroid/icu/util/Calendar;->getPatternData(Landroid/icu/util/ULocale;Ljava/lang/String;)Landroid/icu/util/Calendar$PatternData; -HSPLandroid/icu/util/Calendar;->getRegionForCalendar(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/util/Calendar;->getRepeatedWallTimeOption()I -HSPLandroid/icu/util/Calendar;->getSkippedWallTimeOption()I -HSPLandroid/icu/util/Calendar;->getTimeInMillis()J -HSPLandroid/icu/util/Calendar;->getTimeZone()Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/Calendar;->getWeekDataForRegionInternal(Ljava/lang/String;)Landroid/icu/util/Calendar$WeekData; -HSPLandroid/icu/util/Calendar;->handleCreateFields()[I -HSPLandroid/icu/util/Calendar;->handleGetDateFormat(Ljava/lang/String;Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateFormat; -HSPLandroid/icu/util/Calendar;->initInternal()V -HSPLandroid/icu/util/Calendar;->internalSet(II)V -HSPLandroid/icu/util/Calendar;->isEquivalentTo(Landroid/icu/util/Calendar;)Z -HSPLandroid/icu/util/Calendar;->isLenient()Z -HSPLandroid/icu/util/Calendar;->julianDayToDayOfWeek(I)I -HSPLandroid/icu/util/Calendar;->setCalendarLocale(Landroid/icu/util/ULocale;)V -HSPLandroid/icu/util/Calendar;->setFirstDayOfWeek(I)V -HSPLandroid/icu/util/Calendar;->setLocale(Landroid/icu/util/ULocale;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/util/Calendar;->setMinimalDaysInFirstWeek(I)V -HSPLandroid/icu/util/Calendar;->setTime(Ljava/util/Date;)V -HSPLandroid/icu/util/Calendar;->setTimeInMillis(J)V -HSPLandroid/icu/util/Calendar;->setTimeZone(Landroid/icu/util/TimeZone;)V -HSPLandroid/icu/util/Calendar;->setWeekData(Landroid/icu/util/Calendar$WeekData;)Landroid/icu/util/Calendar; -HSPLandroid/icu/util/Calendar;->setWeekData(Ljava/lang/String;)V -HSPLandroid/icu/util/Calendar;->weekNumber(II)I -HSPLandroid/icu/util/Calendar;->weekNumber(III)I -HSPLandroid/icu/util/CharsTrie;-><init>(Ljava/lang/CharSequence;I)V -HSPLandroid/icu/util/CharsTrie;->branchNext(III)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/CharsTrie;->first(I)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/CharsTrie;->firstForCodePoint(I)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/CharsTrie;->getValue()I -HSPLandroid/icu/util/CharsTrie;->jumpByDelta(Ljava/lang/CharSequence;I)I -HSPLandroid/icu/util/CharsTrie;->next(I)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/CharsTrie;->nextImpl(II)Landroid/icu/util/BytesTrie$Result; -HSPLandroid/icu/util/CharsTrie;->readValue(Ljava/lang/CharSequence;II)I -HSPLandroid/icu/util/CharsTrie;->skipDelta(Ljava/lang/CharSequence;I)I -HSPLandroid/icu/util/CharsTrie;->skipValue(II)I -HSPLandroid/icu/util/CharsTrie;->skipValue(Ljava/lang/CharSequence;I)I -HSPLandroid/icu/util/CodePointMap$Range;->-$$Nest$fgetend(Landroid/icu/util/CodePointMap$Range;)I -HSPLandroid/icu/util/CodePointMap$Range;->-$$Nest$fgetvalue(Landroid/icu/util/CodePointMap$Range;)I -HSPLandroid/icu/util/CodePointMap$Range;->-$$Nest$fputstart(Landroid/icu/util/CodePointMap$Range;I)V -HSPLandroid/icu/util/CodePointMap$Range;-><init>()V -HSPLandroid/icu/util/CodePointMap$Range;->getEnd()I -HSPLandroid/icu/util/CodePointMap$Range;->getValue()I -HSPLandroid/icu/util/CodePointMap;-><init>()V -HSPLandroid/icu/util/CodePointMap;->getRange(ILandroid/icu/util/CodePointMap$RangeOption;ILandroid/icu/util/CodePointMap$ValueFilter;Landroid/icu/util/CodePointMap$Range;)Z -HSPLandroid/icu/util/CodePointTrie$Data16;->getFromIndex(I)I -HSPLandroid/icu/util/CodePointTrie$Data32;-><init>([I)V -HSPLandroid/icu/util/CodePointTrie$Data32;->getDataLength()I -HSPLandroid/icu/util/CodePointTrie$Data32;->getFromIndex(I)I -HSPLandroid/icu/util/CodePointTrie$Data8;-><init>([B)V -HSPLandroid/icu/util/CodePointTrie$Data8;->getDataLength()I -HSPLandroid/icu/util/CodePointTrie$Data8;->getFromIndex(I)I -HSPLandroid/icu/util/CodePointTrie$Data;-><init>()V -HSPLandroid/icu/util/CodePointTrie$Data;-><init>(Landroid/icu/util/CodePointTrie$Data-IA;)V -HSPLandroid/icu/util/CodePointTrie$Fast16;->bmpGet(I)I -HSPLandroid/icu/util/CodePointTrie$Fast16;->get(I)I -HSPLandroid/icu/util/CodePointTrie$Fast8;-><init>([C[BIII)V -HSPLandroid/icu/util/CodePointTrie$Fast8;->get(I)I -HSPLandroid/icu/util/CodePointTrie$Fast;-><init>([CLandroid/icu/util/CodePointTrie$Data;III)V -HSPLandroid/icu/util/CodePointTrie$Fast;->cpIndex(I)I -HSPLandroid/icu/util/CodePointTrie$Fast;->getType()Landroid/icu/util/CodePointTrie$Type; -HSPLandroid/icu/util/CodePointTrie$Small32;-><init>([C[IIII)V -HSPLandroid/icu/util/CodePointTrie$Small;-><init>([CLandroid/icu/util/CodePointTrie$Data;III)V -HSPLandroid/icu/util/CodePointTrie$Small;-><init>([CLandroid/icu/util/CodePointTrie$Data;IIILandroid/icu/util/CodePointTrie$Small-IA;)V -HSPLandroid/icu/util/CodePointTrie;-><init>([CLandroid/icu/util/CodePointTrie$Data;III)V -HSPLandroid/icu/util/CodePointTrie;-><init>([CLandroid/icu/util/CodePointTrie$Data;IIILandroid/icu/util/CodePointTrie-IA;)V -HSPLandroid/icu/util/CodePointTrie;->fastIndex(I)I -HSPLandroid/icu/util/CodePointTrie;->fromBinary(Landroid/icu/util/CodePointTrie$Type;Landroid/icu/util/CodePointTrie$ValueWidth;Ljava/nio/ByteBuffer;)Landroid/icu/util/CodePointTrie; -HSPLandroid/icu/util/CodePointTrie;->getRange(ILandroid/icu/util/CodePointMap$ValueFilter;Landroid/icu/util/CodePointMap$Range;)Z -HSPLandroid/icu/util/Currency$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/util/Currency$1;->createInstance(Ljava/lang/String;Ljava/lang/Void;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/Currency;->createCurrency(Landroid/icu/util/ULocale;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/Currency;->getAvailableCurrencyCodes(Landroid/icu/util/ULocale;Ljava/util/Date;)[Ljava/lang/String; -HSPLandroid/icu/util/Currency;->getCurrencyCode()Ljava/lang/String; -HSPLandroid/icu/util/Currency;->getDefaultFractionDigits(Landroid/icu/util/Currency$CurrencyUsage;)I -HSPLandroid/icu/util/Currency;->getInstance(Landroid/icu/util/ULocale;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/Currency;->getInstance(Ljava/lang/String;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/Currency;->getInstance(Ljava/util/Locale;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/Currency;->getName(Landroid/icu/util/ULocale;I[Z)Ljava/lang/String; -HSPLandroid/icu/util/Currency;->getRoundingIncrement(Landroid/icu/util/Currency$CurrencyUsage;)D -HSPLandroid/icu/util/Currency;->getSymbol(Landroid/icu/util/ULocale;)Ljava/lang/String; -HSPLandroid/icu/util/Currency;->getSymbol(Ljava/util/Locale;)Ljava/lang/String; -HSPLandroid/icu/util/Currency;->getTenderCurrencies(Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter;)Ljava/util/List; -HSPLandroid/icu/util/Currency;->isAlpha3Code(Ljava/lang/String;)Z -HSPLandroid/icu/util/Currency;->loadCurrency(Ljava/lang/String;)Landroid/icu/util/Currency; -HSPLandroid/icu/util/DateTimeRule;-><init>(IIIZII)V -HSPLandroid/icu/util/DateTimeRule;->getDateRuleType()I -HSPLandroid/icu/util/DateTimeRule;->getRuleDayOfMonth()I -HSPLandroid/icu/util/DateTimeRule;->getRuleDayOfWeek()I -HSPLandroid/icu/util/DateTimeRule;->getRuleMillisInDay()I -HSPLandroid/icu/util/DateTimeRule;->getRuleMonth()I -HSPLandroid/icu/util/DateTimeRule;->getTimeRuleType()I -HSPLandroid/icu/util/GregorianCalendar;-><init>(Landroid/icu/util/TimeZone;Landroid/icu/util/ULocale;)V -HSPLandroid/icu/util/GregorianCalendar;->getType()Ljava/lang/String; -HSPLandroid/icu/util/GregorianCalendar;->handleComputeFields(I)V -HSPLandroid/icu/util/GregorianCalendar;->handleGetYearLength(I)I -HSPLandroid/icu/util/GregorianCalendar;->isEquivalentTo(Landroid/icu/util/Calendar;)Z -HSPLandroid/icu/util/GregorianCalendar;->isLeapYear(I)Z -HSPLandroid/icu/util/InitialTimeZoneRule;-><init>(Ljava/lang/String;II)V -HSPLandroid/icu/util/Measure;-><init>(Ljava/lang/Number;Landroid/icu/util/MeasureUnit;)V -HSPLandroid/icu/util/Measure;->getNumber()Ljava/lang/Number; -HSPLandroid/icu/util/Measure;->getUnit()Landroid/icu/util/MeasureUnit; -HSPLandroid/icu/util/MeasureUnit$2;->create(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/util/MeasureUnit; -HSPLandroid/icu/util/MeasureUnit;->addUnit(Ljava/lang/String;Ljava/lang/String;Landroid/icu/util/MeasureUnit$Factory;)Landroid/icu/util/MeasureUnit; -HSPLandroid/icu/util/MeasureUnit;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/util/MeasureUnit;->getSubtype()Ljava/lang/String; -HSPLandroid/icu/util/MeasureUnit;->getType()Ljava/lang/String; -HSPLandroid/icu/util/MeasureUnit;->internalGetInstance(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/util/MeasureUnit; -HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;-><init>()V -HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;->findMostUsed()I -HSPLandroid/icu/util/MutableCodePointTrie$AllSameBlocks;->findOrAdd(III)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;-><init>()V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;-><init>(Landroid/icu/util/MutableCodePointTrie$MixedBlocks-IA;)V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->addEntry([I[CIII)V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->extend([CIII)V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->extend([IIII)V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findAllSameBlock([II)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findBlock([C[CI)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findBlock([C[II)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findBlock([I[II)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findEntry([III)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->findEntry([I[C[I[CII)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->init(II)V -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->makeHashCode(I)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->makeHashCode([CI)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->makeHashCode([II)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->modulo(II)I -HSPLandroid/icu/util/MutableCodePointTrie$MixedBlocks;->nextIndex(II)I -HSPLandroid/icu/util/MutableCodePointTrie;->-$$Nest$smallValuesSameAs([IIII)Z -HSPLandroid/icu/util/MutableCodePointTrie;->-$$Nest$smequalBlocks([II[III)Z -HSPLandroid/icu/util/MutableCodePointTrie;-><init>(II)V -HSPLandroid/icu/util/MutableCodePointTrie;->allValuesSameAs([IIII)Z -HSPLandroid/icu/util/MutableCodePointTrie;->allocDataBlock(I)I -HSPLandroid/icu/util/MutableCodePointTrie;->build(Landroid/icu/util/CodePointTrie$Type;Landroid/icu/util/CodePointTrie$ValueWidth;)Landroid/icu/util/CodePointTrie; -HSPLandroid/icu/util/MutableCodePointTrie;->buildImmutable(Landroid/icu/util/CodePointTrie$Type;Landroid/icu/util/CodePointTrie$ValueWidth;)Landroid/icu/util/CodePointTrie; -HSPLandroid/icu/util/MutableCodePointTrie;->clear()V -HSPLandroid/icu/util/MutableCodePointTrie;->compactData(I[IILandroid/icu/util/MutableCodePointTrie$MixedBlocks;)I -HSPLandroid/icu/util/MutableCodePointTrie;->compactIndex(ILandroid/icu/util/MutableCodePointTrie$MixedBlocks;)I -HSPLandroid/icu/util/MutableCodePointTrie;->compactTrie(I)I -HSPLandroid/icu/util/MutableCodePointTrie;->compactWholeDataBlocks(ILandroid/icu/util/MutableCodePointTrie$AllSameBlocks;)I -HSPLandroid/icu/util/MutableCodePointTrie;->ensureHighStart(I)V -HSPLandroid/icu/util/MutableCodePointTrie;->equalBlocks([CI[CII)Z -HSPLandroid/icu/util/MutableCodePointTrie;->equalBlocks([CI[III)Z -HSPLandroid/icu/util/MutableCodePointTrie;->equalBlocks([II[III)Z -HSPLandroid/icu/util/MutableCodePointTrie;->findHighStart()I -HSPLandroid/icu/util/MutableCodePointTrie;->findSameBlock([CII[CII)I -HSPLandroid/icu/util/MutableCodePointTrie;->get(I)I -HSPLandroid/icu/util/MutableCodePointTrie;->getAllSameOverlap([IIII)I -HSPLandroid/icu/util/MutableCodePointTrie;->getDataBlock(I)I -HSPLandroid/icu/util/MutableCodePointTrie;->getOverlap([CI[CII)I -HSPLandroid/icu/util/MutableCodePointTrie;->getOverlap([CI[III)I -HSPLandroid/icu/util/MutableCodePointTrie;->getOverlap([II[III)I -HSPLandroid/icu/util/MutableCodePointTrie;->set(II)V -HSPLandroid/icu/util/MutableCodePointTrie;->writeBlock(II)V -HSPLandroid/icu/util/Output;-><init>(Ljava/lang/Object;)V -HSPLandroid/icu/util/STZInfo;-><init>()V -HSPLandroid/icu/util/SimpleTimeZone;-><init>(ILjava/lang/String;IIIIIIIIIII)V -HSPLandroid/icu/util/SimpleTimeZone;->clone()Ljava/lang/Object; -HSPLandroid/icu/util/SimpleTimeZone;->cloneAsThawed()Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/SimpleTimeZone;->compareToRule(IIIIIIIIIIII)I -HSPLandroid/icu/util/SimpleTimeZone;->construct(IIIIIIIIIIII)V -HSPLandroid/icu/util/SimpleTimeZone;->decodeEndRule()V -HSPLandroid/icu/util/SimpleTimeZone;->decodeRules()V -HSPLandroid/icu/util/SimpleTimeZone;->decodeStartRule()V -HSPLandroid/icu/util/SimpleTimeZone;->getDSTSavings()I -HSPLandroid/icu/util/SimpleTimeZone;->getNextTransition(JZ)Landroid/icu/util/TimeZoneTransition; -HSPLandroid/icu/util/SimpleTimeZone;->getOffset(IIIIII)I -HSPLandroid/icu/util/SimpleTimeZone;->getOffset(IIIIIII)I -HSPLandroid/icu/util/SimpleTimeZone;->getOffset(IIIIIIII)I -HSPLandroid/icu/util/SimpleTimeZone;->getRawOffset()I -HSPLandroid/icu/util/SimpleTimeZone;->getSTZInfo()Landroid/icu/util/STZInfo; -HSPLandroid/icu/util/SimpleTimeZone;->getTimeZoneRules()[Landroid/icu/util/TimeZoneRule; -HSPLandroid/icu/util/SimpleTimeZone;->hashCode()I -HSPLandroid/icu/util/SimpleTimeZone;->initTransitionRules()V -HSPLandroid/icu/util/SimpleTimeZone;->isFrozen()Z -HSPLandroid/icu/util/SimpleTimeZone;->setStartYear(I)V -HSPLandroid/icu/util/SimpleTimeZone;->toString()Ljava/lang/String; -HSPLandroid/icu/util/SimpleTimeZone;->useDaylightTime()Z -HSPLandroid/icu/util/TimeArrayTimeZoneRule;-><init>(Ljava/lang/String;II[JI)V -HSPLandroid/icu/util/TimeArrayTimeZoneRule;->getStartTimes()[J -HSPLandroid/icu/util/TimeArrayTimeZoneRule;->getTimeType()I -HSPLandroid/icu/util/TimeZone;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/util/TimeZone;->cloneAsThawed()Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/util/TimeZone;->forULocaleOrDefault(Landroid/icu/util/ULocale;)Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->getCanonicalID(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/TimeZone;->getCanonicalID(Ljava/lang/String;[Z)Ljava/lang/String; -HSPLandroid/icu/util/TimeZone;->getDefault()Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->getFrozenICUTimeZone(Ljava/lang/String;Z)Landroid/icu/util/BasicTimeZone; -HSPLandroid/icu/util/TimeZone;->getFrozenTimeZone(Ljava/lang/String;)Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->getID()Ljava/lang/String; -HSPLandroid/icu/util/TimeZone;->getOffset(JZ[I)V -HSPLandroid/icu/util/TimeZone;->getTimeZone(Ljava/lang/String;)Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->getTimeZone(Ljava/lang/String;IZ)Landroid/icu/util/TimeZone; -HSPLandroid/icu/util/TimeZone;->hashCode()I -HSPLandroid/icu/util/TimeZone;->setICUDefault(Landroid/icu/util/TimeZone;)V -HSPLandroid/icu/util/TimeZoneRule;-><init>(Ljava/lang/String;II)V -HSPLandroid/icu/util/TimeZoneRule;->getDSTSavings()I -HSPLandroid/icu/util/TimeZoneRule;->getName()Ljava/lang/String; -HSPLandroid/icu/util/TimeZoneRule;->getRawOffset()I -HSPLandroid/icu/util/TimeZoneRule;->isEquivalentTo(Landroid/icu/util/TimeZoneRule;)Z -HSPLandroid/icu/util/TimeZoneTransition;-><init>(JLandroid/icu/util/TimeZoneRule;Landroid/icu/util/TimeZoneRule;)V -HSPLandroid/icu/util/TimeZoneTransition;->getFrom()Landroid/icu/util/TimeZoneRule; -HSPLandroid/icu/util/TimeZoneTransition;->getTime()J -HSPLandroid/icu/util/TimeZoneTransition;->getTo()Landroid/icu/util/TimeZoneRule; -HSPLandroid/icu/util/ULocale$1;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/util/ULocale$1;->createInstance(Ljava/lang/String;Ljava/lang/Void;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale$2;->createInstance(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/icu/util/ULocale$2;->createInstance(Ljava/util/Locale;Ljava/lang/Void;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale$AliasReplacer;-><clinit>()V -HSPLandroid/icu/util/ULocale$AliasReplacer;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/icu/util/ULocale$AliasReplacer;->generateKey(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale$AliasReplacer;->loadAliasData()V -HSPLandroid/icu/util/ULocale$AliasReplacer;->replace()Ljava/lang/String; -HSPLandroid/icu/util/ULocale$AliasReplacer;->replaceLanguage(ZZZ)Z -HSPLandroid/icu/util/ULocale$AliasReplacer;->replaceRegion()Z -HSPLandroid/icu/util/ULocale$AliasReplacer;->replaceScript()Z -HSPLandroid/icu/util/ULocale$AliasReplacer;->replaceVariant()Z -HSPLandroid/icu/util/ULocale$Builder;-><init>()V -HSPLandroid/icu/util/ULocale$Builder;->build()Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale$Builder;->setLanguage(Ljava/lang/String;)Landroid/icu/util/ULocale$Builder; -HSPLandroid/icu/util/ULocale$Builder;->setRegion(Ljava/lang/String;)Landroid/icu/util/ULocale$Builder; -HSPLandroid/icu/util/ULocale$JDKLocaleHelper;->getDefault(Landroid/icu/util/ULocale$Category;)Ljava/util/Locale; -HSPLandroid/icu/util/ULocale$JDKLocaleHelper;->toLocale(Landroid/icu/util/ULocale;)Ljava/util/Locale; -HSPLandroid/icu/util/ULocale$JDKLocaleHelper;->toULocale(Ljava/util/Locale;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->-$$Nest$smgetInstance(Landroid/icu/impl/locale/BaseLocale;Landroid/icu/impl/locale/LocaleExtensions;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;-><init>(Ljava/lang/String;)V -HSPLandroid/icu/util/ULocale;-><init>(Ljava/lang/String;Ljava/util/Locale;)V -HSPLandroid/icu/util/ULocale;-><init>(Ljava/lang/String;Ljava/util/Locale;Landroid/icu/util/ULocale-IA;)V -HSPLandroid/icu/util/ULocale;->addLikelySubtags(Landroid/icu/util/ULocale;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->appendTag(Ljava/lang/String;Ljava/lang/StringBuilder;)V -HSPLandroid/icu/util/ULocale;->base()Landroid/icu/impl/locale/BaseLocale; -HSPLandroid/icu/util/ULocale;->canonicalize(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->createCanonical(Ljava/lang/String;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->createTagString(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->equals(Ljava/lang/Object;)Z -HSPLandroid/icu/util/ULocale;->forLocale(Ljava/util/Locale;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->getBaseName()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getBaseName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getCountry()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getDefault()Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->getDefault(Landroid/icu/util/ULocale$Category;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->getInstance(Landroid/icu/impl/locale/BaseLocale;Landroid/icu/impl/locale/LocaleExtensions;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->getKeywordValue(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getKeywordValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getKeywords()Ljava/util/Iterator; -HSPLandroid/icu/util/ULocale;->getKeywords(Ljava/lang/String;)Ljava/util/Iterator; -HSPLandroid/icu/util/ULocale;->getLanguage()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getName()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getName(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getRegionForSupplementalData(Landroid/icu/util/ULocale;Z)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getScript()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getScript(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getShortestSubtagLength(Ljava/lang/String;)I -HSPLandroid/icu/util/ULocale;->getVariant()Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->getVariant(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->hashCode()I -HSPLandroid/icu/util/ULocale;->isEmptyString(Ljava/lang/String;)Z -HSPLandroid/icu/util/ULocale;->isKnownCanonicalizedLocale(Ljava/lang/String;)Z -HSPLandroid/icu/util/ULocale;->isRightToLeft()Z -HSPLandroid/icu/util/ULocale;->lscvToID(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->parseTagString(Ljava/lang/String;[Ljava/lang/String;)I -HSPLandroid/icu/util/ULocale;->setKeywordValue(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/util/ULocale; -HSPLandroid/icu/util/ULocale;->setKeywordValue(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->stripLeadingUnd(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/icu/util/ULocale;->toLocale()Ljava/util/Locale; -HSPLandroid/icu/util/ULocale;->toString()Ljava/lang/String; -HSPLandroid/icu/util/UResourceBundle;-><init>()V -HSPLandroid/icu/util/UResourceBundle;->findTopLevel(Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->get(I)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->get(Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->getBundleInstance(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->getBundleInstance(Ljava/lang/String;Ljava/lang/String;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->getBundleInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->getBundleInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->getIterator()Landroid/icu/util/UResourceBundleIterator; -HSPLandroid/icu/util/UResourceBundle;->getRootType(Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/icu/util/UResourceBundle$RootType; -HSPLandroid/icu/util/UResourceBundle;->handleGetObject(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/icu/util/UResourceBundle;->handleGetObjectImpl(Ljava/lang/String;Landroid/icu/util/UResourceBundle;)Ljava/lang/Object; -HSPLandroid/icu/util/UResourceBundle;->instantiateBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/UResourceBundle;->resolveObject(Ljava/lang/String;Landroid/icu/util/UResourceBundle;)Ljava/lang/Object; -HSPLandroid/icu/util/UResourceBundleIterator;-><init>(Landroid/icu/util/UResourceBundle;)V -HSPLandroid/icu/util/UResourceBundleIterator;->hasNext()Z -HSPLandroid/icu/util/UResourceBundleIterator;->next()Landroid/icu/util/UResourceBundle; -HSPLandroid/icu/util/VersionInfo;->getMajor()I -HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastPreReleaseCodename(Ljava/lang/String;)Z -HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastV()Z -HSPLandroid/location/Location$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLandroid/location/Location$1;->createFromParcel(Landroid/os/Parcel;)Landroid/location/Location; -HSPLandroid/location/Location$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/location/Location;-><init>(Landroid/location/Location;)V -HSPLandroid/location/Location;-><init>(Ljava/lang/String;)V -HSPLandroid/location/Location;->computeDistanceAndBearing(DDDDLandroid/location/Location$BearingDistanceCache;)V -HSPLandroid/location/Location;->distanceTo(Landroid/location/Location;)F -HSPLandroid/location/Location;->getAccuracy()F -HSPLandroid/location/Location;->getAltitude()D -HSPLandroid/location/Location;->getBearing()F -HSPLandroid/location/Location;->getElapsedRealtimeMillis()J -HSPLandroid/location/Location;->getElapsedRealtimeNanos()J -HSPLandroid/location/Location;->getExtras()Landroid/os/Bundle; -HSPLandroid/location/Location;->getLatitude()D -HSPLandroid/location/Location;->getLongitude()D -HSPLandroid/location/Location;->getProvider()Ljava/lang/String; -HSPLandroid/location/Location;->getSpeed()F -HSPLandroid/location/Location;->getTime()J -HSPLandroid/location/Location;->getVerticalAccuracyMeters()F -HSPLandroid/location/Location;->hasAccuracy()Z -HSPLandroid/location/Location;->hasAltitude()Z -HSPLandroid/location/Location;->hasBearing()Z -HSPLandroid/location/Location;->hasBearingAccuracy()Z -HSPLandroid/location/Location;->hasElapsedRealtimeUncertaintyNanos()Z -HSPLandroid/location/Location;->hasSpeed()Z -HSPLandroid/location/Location;->hasSpeedAccuracy()Z -HSPLandroid/location/Location;->hasVerticalAccuracy()Z -HSPLandroid/location/Location;->isFromMockProvider()Z -HSPLandroid/location/Location;->isMock()Z -HSPLandroid/location/Location;->set(Landroid/location/Location;)V -HSPLandroid/location/Location;->setAccuracy(F)V -HSPLandroid/location/Location;->setAltitude(D)V -HSPLandroid/location/Location;->setBearing(F)V -HSPLandroid/location/Location;->setBearingAccuracyDegrees(F)V -HSPLandroid/location/Location;->setElapsedRealtimeNanos(J)V -HSPLandroid/location/Location;->setExtras(Landroid/os/Bundle;)V -HSPLandroid/location/Location;->setLatitude(D)V -HSPLandroid/location/Location;->setLongitude(D)V -HSPLandroid/location/Location;->setSpeed(F)V -HSPLandroid/location/Location;->setSpeedAccuracyMetersPerSecond(F)V -HSPLandroid/location/Location;->setTime(J)V -HSPLandroid/location/Location;->setVerticalAccuracyMeters(F)V -HSPLandroid/location/Location;->toString()Ljava/lang/String; -HSPLandroid/location/Location;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/media/AudioAttributes$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/AudioAttributes; -HSPLandroid/media/AudioAttributes$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/AudioAttributes$Builder;-><init>()V -HSPLandroid/media/AudioAttributes$Builder;-><init>(Landroid/media/AudioAttributes;)V -HSPLandroid/media/AudioAttributes$Builder;->addTag(Ljava/lang/String;)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->build()Landroid/media/AudioAttributes; -HSPLandroid/media/AudioAttributes$Builder;->replaceFlags(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setAllowedCapturePolicy(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setCapturePreset(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setContentType(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setFlags(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setInternalCapturePreset(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setInternalContentType(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setInternalLegacyStreamType(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setLegacyStreamType(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setSystemUsage(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes$Builder;->setUsage(I)Landroid/media/AudioAttributes$Builder; -HSPLandroid/media/AudioAttributes;->-$$Nest$fgetmFlags(Landroid/media/AudioAttributes;)I -HSPLandroid/media/AudioAttributes;->-$$Nest$fgetmUsage(Landroid/media/AudioAttributes;)I -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmContentType(Landroid/media/AudioAttributes;I)V -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmFlags(Landroid/media/AudioAttributes;I)V -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmFormattedTags(Landroid/media/AudioAttributes;Ljava/lang/String;)V -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmSource(Landroid/media/AudioAttributes;I)V -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmTags(Landroid/media/AudioAttributes;Ljava/util/HashSet;)V -HSPLandroid/media/AudioAttributes;->-$$Nest$fputmUsage(Landroid/media/AudioAttributes;I)V -HSPLandroid/media/AudioAttributes;-><init>()V -HSPLandroid/media/AudioAttributes;-><init>(Landroid/media/AudioAttributes-IA;)V -HSPLandroid/media/AudioAttributes;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/AudioAttributes;->areHapticChannelsMuted()Z -HSPLandroid/media/AudioAttributes;->equals(Ljava/lang/Object;)Z -HSPLandroid/media/AudioAttributes;->getAllFlags()I -HSPLandroid/media/AudioAttributes;->getContentType()I -HSPLandroid/media/AudioAttributes;->getFlags()I -HSPLandroid/media/AudioAttributes;->getUsage()I -HSPLandroid/media/AudioAttributes;->hashCode()I -HSPLandroid/media/AudioAttributes;->isSystemUsage(I)Z -HSPLandroid/media/AudioAttributes;->toVolumeStreamType(ZLandroid/media/AudioAttributes;)I -HSPLandroid/media/AudioAttributes;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/media/AudioDeviceCallback;-><init>()V -HSPLandroid/media/AudioDeviceInfo;-><init>(Landroid/media/AudioDevicePort;)V -HSPLandroid/media/AudioDeviceInfo;->convertInternalDeviceToDeviceType(I)I -HSPLandroid/media/AudioDeviceInfo;->getId()I -HSPLandroid/media/AudioDeviceInfo;->getType()I -HSPLandroid/media/AudioDevicePort;-><init>(Landroid/media/AudioHandle;Ljava/lang/String;Ljava/util/List;[Landroid/media/AudioGain;ILjava/lang/String;[I[ILjava/util/List;)V -HSPLandroid/media/AudioDevicePort;-><init>(Landroid/media/AudioHandle;Ljava/lang/String;[I[I[I[I[Landroid/media/AudioGain;ILjava/lang/String;[I[I)V -HSPLandroid/media/AudioDevicePort;->buildConfig(IIILandroid/media/AudioGainConfig;)Landroid/media/AudioDevicePortConfig; -HSPLandroid/media/AudioDevicePort;->buildConfig(IIILandroid/media/AudioGainConfig;)Landroid/media/AudioPortConfig; -HSPLandroid/media/AudioDevicePort;->type()I -HSPLandroid/media/AudioDevicePortConfig;-><init>(Landroid/media/AudioDevicePort;IIILandroid/media/AudioGainConfig;)V -HSPLandroid/media/AudioFocusRequest$Builder;-><init>(I)V -HSPLandroid/media/AudioFocusRequest$Builder;->build()Landroid/media/AudioFocusRequest; -HSPLandroid/media/AudioFocusRequest$Builder;->setAudioAttributes(Landroid/media/AudioAttributes;)Landroid/media/AudioFocusRequest$Builder; -HSPLandroid/media/AudioFocusRequest$Builder;->setFocusGain(I)Landroid/media/AudioFocusRequest$Builder; -HSPLandroid/media/AudioFocusRequest;->getOnAudioFocusChangeListener()Landroid/media/AudioManager$OnAudioFocusChangeListener; -HSPLandroid/media/AudioFocusRequest;->isValidFocusGain(I)Z -HSPLandroid/media/AudioFormat$Builder;-><init>()V -HSPLandroid/media/AudioFormat$Builder;->build()Landroid/media/AudioFormat; -HSPLandroid/media/AudioFormat$Builder;->setChannelMask(I)Landroid/media/AudioFormat$Builder; -HSPLandroid/media/AudioFormat$Builder;->setEncoding(I)Landroid/media/AudioFormat$Builder; -HSPLandroid/media/AudioFormat$Builder;->setSampleRate(I)Landroid/media/AudioFormat$Builder; -HSPLandroid/media/AudioFormat;-><init>(IIIII)V -HSPLandroid/media/AudioFormat;->getBytesPerSample(I)I -HSPLandroid/media/AudioFormat;->getChannelCount()I -HSPLandroid/media/AudioFormat;->getChannelMask()I -HSPLandroid/media/AudioFormat;->getEncoding()I -HSPLandroid/media/AudioFormat;->getPropertySetMask()I -HSPLandroid/media/AudioFormat;->getSampleRate()I -HSPLandroid/media/AudioFormat;->isEncodingLinearFrames(I)Z -HSPLandroid/media/AudioFormat;->isEncodingLinearPcm(I)Z -HSPLandroid/media/AudioFormat;->isPublicEncoding(I)Z -HSPLandroid/media/AudioHandle;-><init>(I)V -HSPLandroid/media/AudioHandle;->equals(Ljava/lang/Object;)Z -HSPLandroid/media/AudioHandle;->id()I -HSPLandroid/media/AudioManager$1;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$2;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$3;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$4;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$AudioPlaybackCallback;-><init>()V -HSPLandroid/media/AudioManager$AudioPlaybackCallbackInfo;-><init>(Landroid/media/AudioManager$AudioPlaybackCallback;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager$AudioRecordingCallback;-><init>()V -HSPLandroid/media/AudioManager$DevRoleListeners;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$DevRoleListeners;-><init>(Landroid/media/AudioManager;Landroid/media/AudioManager$DevRoleListeners-IA;)V -HSPLandroid/media/AudioManager$NativeEventHandlerDelegate$1;-><init>(Landroid/media/AudioManager$NativeEventHandlerDelegate;Landroid/os/Looper;Landroid/media/AudioManager;Landroid/media/AudioDeviceCallback;)V -HSPLandroid/media/AudioManager$NativeEventHandlerDelegate$1;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/AudioManager$NativeEventHandlerDelegate;-><init>(Landroid/media/AudioManager;Landroid/media/AudioDeviceCallback;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager$NativeEventHandlerDelegate;->getHandler()Landroid/os/Handler; -HSPLandroid/media/AudioManager$OnAmPortUpdateListener;-><init>(Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$OnAmPortUpdateListener;->onAudioPatchListUpdate([Landroid/media/AudioPatch;)V -HSPLandroid/media/AudioManager$OnAmPortUpdateListener;->onAudioPortListUpdate([Landroid/media/AudioPort;)V -HSPLandroid/media/AudioManager$PlaybackConfigChangeCallbackData;-><init>(Landroid/media/AudioManager$AudioPlaybackCallback;Ljava/util/List;)V -HSPLandroid/media/AudioManager$ServiceEventHandlerDelegate$1;-><init>(Landroid/media/AudioManager$ServiceEventHandlerDelegate;Landroid/os/Looper;Landroid/media/AudioManager;)V -HSPLandroid/media/AudioManager$ServiceEventHandlerDelegate$1;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/AudioManager$ServiceEventHandlerDelegate;-><init>(Landroid/media/AudioManager;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager$ServiceEventHandlerDelegate;->getHandler()Landroid/os/Handler; -HSPLandroid/media/AudioManager;-><init>(Landroid/content/Context;)V -HSPLandroid/media/AudioManager;->abandonAudioFocus(Landroid/media/AudioManager$OnAudioFocusChangeListener;)I -HSPLandroid/media/AudioManager;->abandonAudioFocus(Landroid/media/AudioManager$OnAudioFocusChangeListener;Landroid/media/AudioAttributes;)I -HSPLandroid/media/AudioManager;->areNavigationRepeatSoundEffectsEnabled()Z -HSPLandroid/media/AudioManager;->broadcastDeviceListChange_sync(Landroid/os/Handler;)V -HSPLandroid/media/AudioManager;->calcListDeltas(Ljava/util/ArrayList;Ljava/util/ArrayList;I)[Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioManager;->checkFlags(Landroid/media/AudioDevicePort;I)Z -HSPLandroid/media/AudioManager;->checkTypes(Landroid/media/AudioDevicePort;)Z -HSPLandroid/media/AudioManager;->filterDevicePorts(Ljava/util/ArrayList;Ljava/util/ArrayList;)V -HSPLandroid/media/AudioManager;->generateAudioSessionId()I -HSPLandroid/media/AudioManager;->getActiveRecordingConfigurations()Ljava/util/List; -HSPLandroid/media/AudioManager;->getContext()Landroid/content/Context; -HSPLandroid/media/AudioManager;->getDeviceForPortId(II)Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioManager;->getDevices(I)[Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioManager;->getDevicesForStream(I)I -HSPLandroid/media/AudioManager;->getDevicesStatic(I)[Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioManager;->getIdForAudioFocusListener(Landroid/media/AudioManager$OnAudioFocusChangeListener;)Ljava/lang/String; -HSPLandroid/media/AudioManager;->getMode()I -HSPLandroid/media/AudioManager;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/media/AudioManager;->getRingerMode()I -HSPLandroid/media/AudioManager;->getRingerModeInternal()I -HSPLandroid/media/AudioManager;->getService()Landroid/media/IAudioService; -HSPLandroid/media/AudioManager;->getStreamMaxVolume(I)I -HSPLandroid/media/AudioManager;->getStreamMinVolume(I)I -HSPLandroid/media/AudioManager;->getStreamMinVolumeInt(I)I -HSPLandroid/media/AudioManager;->getStreamVolume(I)I -HSPLandroid/media/AudioManager;->hasPlaybackCallback_sync(Landroid/media/AudioManager$AudioPlaybackCallback;)Z -HSPLandroid/media/AudioManager;->hasRecordCallback_sync(Landroid/media/AudioManager$AudioRecordingCallback;)Z -HSPLandroid/media/AudioManager;->infoListFromPortList(Ljava/util/ArrayList;I)[Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioManager;->isBluetoothA2dpOn()Z -HSPLandroid/media/AudioManager;->isBluetoothScoOn()Z -HSPLandroid/media/AudioManager;->isInputDevice(I)Z -HSPLandroid/media/AudioManager;->isMusicActive()Z -HSPLandroid/media/AudioManager;->isPublicStreamType(I)Z -HSPLandroid/media/AudioManager;->isSpeakerphoneOn()Z -HSPLandroid/media/AudioManager;->isStreamMute(I)Z -HSPLandroid/media/AudioManager;->isVolumeFixed()Z -HSPLandroid/media/AudioManager;->isWiredHeadsetOn()Z -HSPLandroid/media/AudioManager;->listAudioDevicePorts(Ljava/util/ArrayList;)I -HSPLandroid/media/AudioManager;->playSoundEffect(I)V -HSPLandroid/media/AudioManager;->playSoundEffect(II)V -HSPLandroid/media/AudioManager;->preDispatchKeyEvent(Landroid/view/KeyEvent;I)V -HSPLandroid/media/AudioManager;->registerAudioDeviceCallback(Landroid/media/AudioDeviceCallback;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager;->registerAudioFocusRequest(Landroid/media/AudioFocusRequest;)V -HSPLandroid/media/AudioManager;->registerAudioPlaybackCallback(Landroid/media/AudioManager$AudioPlaybackCallback;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager;->registerAudioPortUpdateListener(Landroid/media/AudioManager$OnAudioPortUpdateListener;)V -HSPLandroid/media/AudioManager;->registerAudioRecordingCallback(Landroid/media/AudioManager$AudioRecordingCallback;Landroid/os/Handler;)V -HSPLandroid/media/AudioManager;->requestAudioFocus(Landroid/media/AudioFocusRequest;Landroid/media/audiopolicy/AudioPolicy;)I -HSPLandroid/media/AudioManager;->requestAudioFocus(Landroid/media/AudioManager$OnAudioFocusChangeListener;II)I -HSPLandroid/media/AudioManager;->requestAudioFocus(Landroid/media/AudioManager$OnAudioFocusChangeListener;Landroid/media/AudioAttributes;II)I -HSPLandroid/media/AudioManager;->requestAudioFocus(Landroid/media/AudioManager$OnAudioFocusChangeListener;Landroid/media/AudioAttributes;IILandroid/media/audiopolicy/AudioPolicy;)I -HSPLandroid/media/AudioManager;->resetAudioPortGeneration()I -HSPLandroid/media/AudioManager;->setContext(Landroid/content/Context;)V -HSPLandroid/media/AudioManager;->setParameters(Ljava/lang/String;)V -HSPLandroid/media/AudioManager;->unregisterAudioFocusRequest(Landroid/media/AudioManager$OnAudioFocusChangeListener;)V -HSPLandroid/media/AudioManager;->updateAudioPortCache(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/util/ArrayList;)I -HSPLandroid/media/AudioManager;->updatePortConfig(Landroid/media/AudioPortConfig;Ljava/util/ArrayList;)Landroid/media/AudioPortConfig; -HSPLandroid/media/AudioMixPort;-><init>(Landroid/media/AudioHandle;IILjava/lang/String;Ljava/util/List;[Landroid/media/AudioGain;)V -HSPLandroid/media/AudioMixPort;-><init>(Landroid/media/AudioHandle;IILjava/lang/String;[I[I[I[I[Landroid/media/AudioGain;)V -HSPLandroid/media/AudioMixPort;->buildConfig(IIILandroid/media/AudioGainConfig;)Landroid/media/AudioMixPortConfig; -HSPLandroid/media/AudioMixPort;->buildConfig(IIILandroid/media/AudioGainConfig;)Landroid/media/AudioPortConfig; -HSPLandroid/media/AudioMixPortConfig;-><init>(Landroid/media/AudioMixPort;IIILandroid/media/AudioGainConfig;)V -HSPLandroid/media/AudioPatch;-><init>(Landroid/media/AudioHandle;[Landroid/media/AudioPortConfig;[Landroid/media/AudioPortConfig;)V -HSPLandroid/media/AudioPatch;->sinks()[Landroid/media/AudioPortConfig; -HSPLandroid/media/AudioPatch;->sources()[Landroid/media/AudioPortConfig; -HSPLandroid/media/AudioPlaybackConfiguration$IPlayerShell;-><init>(Landroid/media/AudioPlaybackConfiguration;Landroid/media/IPlayer;)V -HSPLandroid/media/AudioPlaybackConfiguration;->getAudioAttributes()Landroid/media/AudioAttributes; -HSPLandroid/media/AudioPlaybackConfiguration;->isActive()Z -HSPLandroid/media/AudioPort$$ExternalSyntheticLambda0;->applyAsInt(Ljava/lang/Object;)I -HSPLandroid/media/AudioPort;-><init>(Landroid/media/AudioHandle;ILjava/lang/String;Ljava/util/List;[Landroid/media/AudioGain;Ljava/util/List;)V -HSPLandroid/media/AudioPort;-><init>(Landroid/media/AudioHandle;ILjava/lang/String;[I[I[I[I[Landroid/media/AudioGain;)V -HSPLandroid/media/AudioPort;->handle()Landroid/media/AudioHandle; -HSPLandroid/media/AudioPort;->id()I -HSPLandroid/media/AudioPort;->role()I -HSPLandroid/media/AudioPortConfig;-><init>(Landroid/media/AudioPort;IIILandroid/media/AudioGainConfig;)V -HSPLandroid/media/AudioPortConfig;->channelMask()I -HSPLandroid/media/AudioPortConfig;->format()I -HSPLandroid/media/AudioPortConfig;->gain()Landroid/media/AudioGainConfig; -HSPLandroid/media/AudioPortConfig;->port()Landroid/media/AudioPort; -HSPLandroid/media/AudioPortConfig;->samplingRate()I -HSPLandroid/media/AudioPortEventHandler$1;-><init>(Landroid/media/AudioPortEventHandler;Landroid/os/Looper;)V -HSPLandroid/media/AudioPortEventHandler$1;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/AudioPortEventHandler;->handler()Landroid/os/Handler; -HSPLandroid/media/AudioPortEventHandler;->init()V -HSPLandroid/media/AudioPortEventHandler;->postEventFromNative(Ljava/lang/Object;IIILjava/lang/Object;)V -HSPLandroid/media/AudioPortEventHandler;->registerListener(Landroid/media/AudioManager$OnAudioPortUpdateListener;)V -HSPLandroid/media/AudioProfile;-><init>(I[I[I[II)V -HSPLandroid/media/AudioProfile;->getChannelIndexMasks()[I -HSPLandroid/media/AudioProfile;->getChannelMasks()[I -HSPLandroid/media/AudioProfile;->getFormat()I -HSPLandroid/media/AudioProfile;->getSampleRates()[I -HSPLandroid/media/AudioRecord;-><init>(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;II)V -HSPLandroid/media/AudioRecord;->audioBuffSizeCheck(I)V -HSPLandroid/media/AudioRecord;->audioParamCheck(III)V -HSPLandroid/media/AudioRecord;->getChannelMaskFromLegacyConfig(IZ)I -HSPLandroid/media/AudioRecord;->getMinBufferSize(III)I -HSPLandroid/media/AudioRecord;->release()V -HSPLandroid/media/AudioRecord;->stop()V -HSPLandroid/media/AudioRoutesInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/AudioRoutesInfo; -HSPLandroid/media/AudioRoutesInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/AudioRoutesInfo;-><init>()V -HSPLandroid/media/AudioRoutesInfo;->toString()Ljava/lang/String; -HSPLandroid/media/AudioRoutesInfo;->typeToString(I)Ljava/lang/String; -HSPLandroid/media/AudioSystem;->getOutputDeviceName(I)Ljava/lang/String; -HSPLandroid/media/AudioSystem;->getPlatformType(Landroid/content/Context;)I -HSPLandroid/media/AudioSystem;->isSingleVolume(Landroid/content/Context;)Z -HSPLandroid/media/AudioSystem;->streamToString(I)Ljava/lang/String; -HSPLandroid/media/AudioTimestamp;-><init>()V -HSPLandroid/media/AudioTrack;-><init>(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;III)V -HSPLandroid/media/AudioTrack;->audioBuffSizeCheck(I)V -HSPLandroid/media/AudioTrack;->audioParamCheck(IIIII)V -HSPLandroid/media/AudioTrack;->blockUntilOffloadDrain(I)Z -HSPLandroid/media/AudioTrack;->broadcastRoutingChange()V -HSPLandroid/media/AudioTrack;->endStreamEventHandling()V -HSPLandroid/media/AudioTrack;->finalize()V -HSPLandroid/media/AudioTrack;->flush()V -HSPLandroid/media/AudioTrack;->getMinBufferSize(III)I -HSPLandroid/media/AudioTrack;->getPlayState()I -HSPLandroid/media/AudioTrack;->getRoutedDevice()Landroid/media/AudioDeviceInfo; -HSPLandroid/media/AudioTrack;->getSampleRate()I -HSPLandroid/media/AudioTrack;->getState()I -HSPLandroid/media/AudioTrack;->play()V -HSPLandroid/media/AudioTrack;->postEventFromNative(Ljava/lang/Object;IIILjava/lang/Object;)V -HSPLandroid/media/AudioTrack;->release()V -HSPLandroid/media/AudioTrack;->shouldEnablePowerSaving(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;II)Z -HSPLandroid/media/AudioTrack;->startImpl()V -HSPLandroid/media/AudioTrack;->stop()V -HSPLandroid/media/AudioTrack;->testDisableNativeRoutingCallbacksLocked()V -HSPLandroid/media/AudioTrack;->tryToDisableNativeRoutingCallback()V -HSPLandroid/media/CallbackUtil$LazyListenerManager;-><init>()V -HSPLandroid/media/IAudioFocusDispatcher$Stub;-><init>()V -HSPLandroid/media/IAudioFocusDispatcher$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IAudioRoutesObserver$Stub;-><init>()V -HSPLandroid/media/IAudioRoutesObserver$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IAudioRoutesObserver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/media/IAudioServerStateDispatcher$Stub;-><init>()V -HSPLandroid/media/IAudioService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/media/IAudioService$Stub$Proxy;->abandonAudioFocus(Landroid/media/IAudioFocusDispatcher;Ljava/lang/String;Landroid/media/AudioAttributes;Ljava/lang/String;)I -HSPLandroid/media/IAudioService$Stub$Proxy;->areNavigationRepeatSoundEffectsEnabled()Z -HSPLandroid/media/IAudioService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IAudioService$Stub$Proxy;->getActiveRecordingConfigurations()Ljava/util/List; -HSPLandroid/media/IAudioService$Stub$Proxy;->getMode()I -HSPLandroid/media/IAudioService$Stub$Proxy;->getRingerModeExternal()I -HSPLandroid/media/IAudioService$Stub$Proxy;->getStreamMaxVolume(I)I -HSPLandroid/media/IAudioService$Stub$Proxy;->getStreamMinVolume(I)I -HSPLandroid/media/IAudioService$Stub$Proxy;->getStreamVolume(I)I -HSPLandroid/media/IAudioService$Stub$Proxy;->isBluetoothA2dpOn()Z -HSPLandroid/media/IAudioService$Stub$Proxy;->isBluetoothScoOn()Z -HSPLandroid/media/IAudioService$Stub$Proxy;->isCameraSoundForced()Z -HSPLandroid/media/IAudioService$Stub$Proxy;->isMusicActive(Z)Z -HSPLandroid/media/IAudioService$Stub$Proxy;->isStreamMute(I)Z -HSPLandroid/media/IAudioService$Stub$Proxy;->isVolumeFixed()Z -HSPLandroid/media/IAudioService$Stub$Proxy;->playSoundEffect(II)V -HSPLandroid/media/IAudioService$Stub$Proxy;->playerAttributes(ILandroid/media/AudioAttributes;)V -HSPLandroid/media/IAudioService$Stub$Proxy;->playerEvent(III)V -HSPLandroid/media/IAudioService$Stub$Proxy;->registerRecordingCallback(Landroid/media/IRecordingConfigDispatcher;)V -HSPLandroid/media/IAudioService$Stub$Proxy;->releasePlayer(I)V -HSPLandroid/media/IAudioService$Stub$Proxy;->requestAudioFocus(Landroid/media/AudioAttributes;ILandroid/os/IBinder;Landroid/media/IAudioFocusDispatcher;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILandroid/media/audiopolicy/IAudioPolicyCallback;I)I -HSPLandroid/media/IAudioService$Stub$Proxy;->startWatchingRoutes(Landroid/media/IAudioRoutesObserver;)Landroid/media/AudioRoutesInfo; -HSPLandroid/media/IAudioService$Stub$Proxy;->trackPlayer(Landroid/media/PlayerBase$PlayerIdCard;)I -HSPLandroid/media/IAudioService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/IAudioService; -HSPLandroid/media/IMediaRouter2Manager$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IMediaRouter2Manager$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/media/IMediaRouterClient$Stub;-><init>()V -HSPLandroid/media/IMediaRouterClient$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IMediaRouterClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->getState(Landroid/media/IMediaRouterClient;)Landroid/media/MediaRouterClientState; -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->isPlaybackActive(Landroid/media/IMediaRouterClient;)Z -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->registerClientAsUser(Landroid/media/IMediaRouterClient;Ljava/lang/String;I)V -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->setDiscoveryRequest(Landroid/media/IMediaRouterClient;IZ)V -HSPLandroid/media/IMediaRouterService$Stub$Proxy;->setSelectedRoute(Landroid/media/IMediaRouterClient;Ljava/lang/String;Z)V -HSPLandroid/media/IMediaRouterService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/IMediaRouterService; -HSPLandroid/media/IPlaybackConfigDispatcher$Stub;-><init>()V -HSPLandroid/media/IPlaybackConfigDispatcher$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IPlayer$Stub;-><init>()V -HSPLandroid/media/IPlayer$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IPlayer$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/IPlayer; -HSPLandroid/media/IRecordingConfigDispatcher$Stub;-><init>()V -HSPLandroid/media/IRecordingConfigDispatcher$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/IRemoteSessionCallback$Stub;-><init>()V -HSPLandroid/media/IRemoteVolumeObserver$Stub;-><init>()V -HSPLandroid/media/MediaCodec$BufferInfo;-><init>()V -HSPLandroid/media/MediaCodec$BufferInfo;->set(IIJI)V -HSPLandroid/media/MediaCodec$BufferMap$CodecBuffer;->free()V -HSPLandroid/media/MediaCodec$BufferMap$CodecBuffer;->setByteBuffer(Ljava/nio/ByteBuffer;)V -HSPLandroid/media/MediaCodec$BufferMap;-><init>()V -HSPLandroid/media/MediaCodec$BufferMap;-><init>(Landroid/media/MediaCodec$BufferMap-IA;)V -HSPLandroid/media/MediaCodec$BufferMap;->clear()V -HSPLandroid/media/MediaCodec$BufferMap;->put(ILjava/nio/ByteBuffer;)V -HSPLandroid/media/MediaCodec$BufferMap;->remove(I)V -HSPLandroid/media/MediaCodec$CryptoInfo$Pattern;-><init>(II)V -HSPLandroid/media/MediaCodec$CryptoInfo$Pattern;->set(II)V -HSPLandroid/media/MediaCodec$CryptoInfo;-><init>()V -HSPLandroid/media/MediaCodec$EventHandler;-><init>(Landroid/media/MediaCodec;Landroid/media/MediaCodec;Landroid/os/Looper;)V -HSPLandroid/media/MediaCodec;-><clinit>()V -HSPLandroid/media/MediaCodec;-><init>(Ljava/lang/String;ZZ)V -HSPLandroid/media/MediaCodec;-><init>(Ljava/lang/String;ZZII)V -HSPLandroid/media/MediaCodec;->configure(Landroid/media/MediaFormat;Landroid/view/Surface;Landroid/media/MediaCrypto;I)V -HSPLandroid/media/MediaCodec;->configure(Landroid/media/MediaFormat;Landroid/view/Surface;Landroid/media/MediaCrypto;Landroid/os/IHwBinder;I)V -HSPLandroid/media/MediaCodec;->createByCodecName(Ljava/lang/String;)Landroid/media/MediaCodec; -HSPLandroid/media/MediaCodec;->dequeueInputBuffer(J)I -HSPLandroid/media/MediaCodec;->dequeueOutputBuffer(Landroid/media/MediaCodec$BufferInfo;J)I -HSPLandroid/media/MediaCodec;->finalize()V -HSPLandroid/media/MediaCodec;->freeAllTrackedBuffers()V -HSPLandroid/media/MediaCodec;->getInputBuffer(I)Ljava/nio/ByteBuffer; -HSPLandroid/media/MediaCodec;->getOutputBuffer(I)Ljava/nio/ByteBuffer; -HSPLandroid/media/MediaCodec;->getOutputFormat()Landroid/media/MediaFormat; -HSPLandroid/media/MediaCodec;->lockAndGetContext()J -HSPLandroid/media/MediaCodec;->queueInputBuffer(IIIJI)V -HSPLandroid/media/MediaCodec;->release()V -HSPLandroid/media/MediaCodec;->releaseOutputBuffer(IZ)V -HSPLandroid/media/MediaCodec;->releaseOutputBufferInternal(IZZJ)V -HSPLandroid/media/MediaCodec;->setAndUnlockContext(J)V -HSPLandroid/media/MediaCodec;->start()V -HSPLandroid/media/MediaCodec;->stop()V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->applyLevelLimits()V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->applyLimits([Landroid/util/Range;Landroid/util/Range;)V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->createDiscreteSampleRates()V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->getDefaultFormat(Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->getMaxInputChannelCount()I -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->initWithPlatformLimits()V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->isSampleRateSupported(I)Z -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->limitSampleRates([I)V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->limitSampleRates([Landroid/util/Range;)V -HSPLandroid/media/MediaCodecInfo$AudioCapabilities;->parseFromInfo(Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;-><init>([Landroid/media/MediaCodecInfo$CodecProfileLevel;[IZLandroid/media/MediaFormat;Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;-><init>([Landroid/media/MediaCodecInfo$CodecProfileLevel;[IZLjava/util/Map;Ljava/util/Map;)V -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->checkFeature(Ljava/lang/String;I)Z -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->dup()Landroid/media/MediaCodecInfo$CodecCapabilities; -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->getAudioCapabilities()Landroid/media/MediaCodecInfo$AudioCapabilities; -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->getMimeType()Ljava/lang/String; -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->getVideoCapabilities()Landroid/media/MediaCodecInfo$VideoCapabilities; -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->isFeatureRequired(Ljava/lang/String;)Z -HSPLandroid/media/MediaCodecInfo$CodecCapabilities;->isFeatureSupported(Ljava/lang/String;)Z -HSPLandroid/media/MediaCodecInfo$EncoderCapabilities;->applyLevelLimits()V -HSPLandroid/media/MediaCodecInfo$EncoderCapabilities;->getDefaultFormat(Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$EncoderCapabilities;->parseFromInfo(Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$LazyHolder;->-$$Nest$sfgetSIZE_RANGE()Landroid/util/Range; -HSPLandroid/media/MediaCodecInfo$LazyHolder;-><clinit>()V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;-><init>(IIIILandroid/util/Size;)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;-><init>(Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;Landroid/util/Size;)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;->covers(Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;)Z -HSPLandroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;->getCommonBlockSize(Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;)Landroid/util/Size; -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->applyAlignment(II)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->applyBlockLimits(IILandroid/util/Range;Landroid/util/Range;Landroid/util/Range;)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->applyLevelLimits()V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->applyMacroBlockLimits(IIIIIJIIII)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->applyMacroBlockLimits(IIIJIIII)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->getMeasuredFrameRates(Ljava/util/Map;)Ljava/util/Map; -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->getPerformancePoints(Ljava/util/Map;)Ljava/util/List; -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->initWithPlatformLimits()V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->lambda$getPerformancePoints$0(Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint;)I -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->parseFromInfo(Landroid/media/MediaFormat;)V -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->parseWidthHeightRanges(Ljava/lang/Object;)Landroid/util/Pair; -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->supports(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Number;)Z -HSPLandroid/media/MediaCodecInfo$VideoCapabilities;->updateLimits()V -HSPLandroid/media/MediaCodecInfo;-><init>(Ljava/lang/String;Ljava/lang/String;I[Landroid/media/MediaCodecInfo$CodecCapabilities;)V -HSPLandroid/media/MediaCodecInfo;->checkPowerOfTwo(ILjava/lang/String;)I -HSPLandroid/media/MediaCodecInfo;->getCapabilitiesForType(Ljava/lang/String;)Landroid/media/MediaCodecInfo$CodecCapabilities; -HSPLandroid/media/MediaCodecInfo;->getName()Ljava/lang/String; -HSPLandroid/media/MediaCodecInfo;->getSupportedTypes()[Ljava/lang/String; -HSPLandroid/media/MediaCodecInfo;->isEncoder()Z -HSPLandroid/media/MediaCodecInfo;->isHardwareAccelerated()Z -HSPLandroid/media/MediaCodecInfo;->isSoftwareOnly()Z -HSPLandroid/media/MediaCodecInfo;->isVendor()Z -HSPLandroid/media/MediaCodecInfo;->makeRegular()Landroid/media/MediaCodecInfo; -HSPLandroid/media/MediaCodecList;-><init>(I)V -HSPLandroid/media/MediaCodecList;->getCodecInfos()[Landroid/media/MediaCodecInfo; -HSPLandroid/media/MediaCodecList;->getGlobalSettings()Ljava/util/Map; -HSPLandroid/media/MediaCodecList;->getNewCodecInfoAt(I)Landroid/media/MediaCodecInfo; -HSPLandroid/media/MediaCodecList;->initCodecList()V -HSPLandroid/media/MediaDescription$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/MediaDescription; -HSPLandroid/media/MediaDescription$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/MediaDescription;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/MediaDescription;-><init>(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/graphics/Bitmap;Landroid/net/Uri;Landroid/os/Bundle;Landroid/net/Uri;)V -HSPLandroid/media/MediaDescription;->toString()Ljava/lang/String; -HSPLandroid/media/MediaFormat;-><init>()V -HSPLandroid/media/MediaFormat;-><init>(Ljava/util/Map;)V -HSPLandroid/media/MediaFormat;->containsKey(Ljava/lang/String;)Z -HSPLandroid/media/MediaFormat;->createVideoFormat(Ljava/lang/String;II)Landroid/media/MediaFormat; -HSPLandroid/media/MediaFormat;->getInteger(Ljava/lang/String;)I -HSPLandroid/media/MediaFormat;->getString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/media/MediaFormat;->setFloat(Ljava/lang/String;F)V -HSPLandroid/media/MediaFormat;->setInteger(Ljava/lang/String;I)V -HSPLandroid/media/MediaFormat;->setString(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/media/MediaFrameworkPlatformInitializer$$ExternalSyntheticLambda0;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/media/MediaFrameworkPlatformInitializer;->getMediaServiceManager()Landroid/media/MediaServiceManager; -HSPLandroid/media/MediaFrameworkPlatformInitializer;->lambda$registerServiceWrappers$0(Landroid/content/Context;)Landroid/media/session/MediaSessionManager; -HSPLandroid/media/MediaFrameworkPlatformInitializer;->setMediaServiceManager(Landroid/media/MediaServiceManager;)V -HSPLandroid/media/MediaMetadata$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/MediaMetadata; -HSPLandroid/media/MediaMetadata$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/MediaMetadata$Builder;-><init>(Landroid/media/MediaMetadata;)V -HSPLandroid/media/MediaMetadata$Builder;->build()Landroid/media/MediaMetadata; -HSPLandroid/media/MediaMetadata$Builder;->setBitmapDimensionLimit(I)Landroid/media/MediaMetadata$Builder; -HSPLandroid/media/MediaMetadata;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/MediaMetadata;->containsKey(Ljava/lang/String;)Z -HSPLandroid/media/MediaMetadata;->getBitmap(Ljava/lang/String;)Landroid/graphics/Bitmap; -HSPLandroid/media/MediaMetadata;->getDescription()Landroid/media/MediaDescription; -HSPLandroid/media/MediaMetadata;->getLong(Ljava/lang/String;)J -HSPLandroid/media/MediaMetadata;->getString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/media/MediaMetadata;->size()I -HSPLandroid/media/MediaMetadata;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/media/MediaMetadataRetriever;-><init>()V -HSPLandroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String; -HSPLandroid/media/MediaMetadataRetriever;->finalize()V -HSPLandroid/media/MediaMetadataRetriever;->setDataSource(Ljava/io/FileDescriptor;)V -HSPLandroid/media/MediaMetadataRetriever;->setDataSource(Ljava/io/FileDescriptor;JJ)V -HSPLandroid/media/MediaPlayer$2$1;->getSubtitleLooper()Landroid/os/Looper; -HSPLandroid/media/MediaPlayer$2$1;->setSubtitleWidget(Landroid/media/SubtitleTrack$RenderingWidget;)V -HSPLandroid/media/MediaPlayer$2;->run()V -HSPLandroid/media/MediaPlayer$3;-><init>(Landroid/media/MediaPlayer;)V -HSPLandroid/media/MediaPlayer$7;-><init>(Landroid/media/MediaPlayer;)V -HSPLandroid/media/MediaPlayer$7;->onCompletion(Landroid/media/MediaPlayer;)V -HSPLandroid/media/MediaPlayer$EventHandler;-><init>(Landroid/media/MediaPlayer;Landroid/media/MediaPlayer;Landroid/os/Looper;)V -HSPLandroid/media/MediaPlayer$EventHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/MediaPlayer$TimeProvider$EventHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/MediaPlayer$TimeProvider;-><init>(Landroid/media/MediaPlayer;)V -HSPLandroid/media/MediaPlayer$TimeProvider;->close()V -HSPLandroid/media/MediaPlayer$TimeProvider;->finalize()V -HSPLandroid/media/MediaPlayer$TimeProvider;->getCurrentTimeUs(ZZ)J -HSPLandroid/media/MediaPlayer$TimeProvider;->notifySeek()V -HSPLandroid/media/MediaPlayer$TimeProvider;->onPaused(Z)V -HSPLandroid/media/MediaPlayer$TimeProvider;->scheduleNotification(IJ)V -HSPLandroid/media/MediaPlayer$TrackInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/MediaPlayer$TrackInfo; -HSPLandroid/media/MediaPlayer$TrackInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/MediaPlayer$TrackInfo$1;->newArray(I)[Landroid/media/MediaPlayer$TrackInfo; -HSPLandroid/media/MediaPlayer$TrackInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/media/MediaPlayer$TrackInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/MediaPlayer$TrackInfo;->getTrackType()I -HSPLandroid/media/MediaPlayer;-><init>()V -HSPLandroid/media/MediaPlayer;->attemptDataSource(Landroid/content/ContentResolver;Landroid/net/Uri;)Z -HSPLandroid/media/MediaPlayer;->cleanDrmObj()V -HSPLandroid/media/MediaPlayer;->finalize()V -HSPLandroid/media/MediaPlayer;->getInbandTrackInfo()[Landroid/media/MediaPlayer$TrackInfo; -HSPLandroid/media/MediaPlayer;->getMediaTimeProvider()Landroid/media/MediaTimeProvider; -HSPLandroid/media/MediaPlayer;->invoke(Landroid/os/Parcel;Landroid/os/Parcel;)V -HSPLandroid/media/MediaPlayer;->playerSetVolume(ZFF)V -HSPLandroid/media/MediaPlayer;->populateInbandTracks()V -HSPLandroid/media/MediaPlayer;->postEventFromNative(Ljava/lang/Object;IIILjava/lang/Object;)V -HSPLandroid/media/MediaPlayer;->prepare()V -HSPLandroid/media/MediaPlayer;->release()V -HSPLandroid/media/MediaPlayer;->reset()V -HSPLandroid/media/MediaPlayer;->resetDrmState()V -HSPLandroid/media/MediaPlayer;->setAudioAttributes(Landroid/media/AudioAttributes;)V -HSPLandroid/media/MediaPlayer;->setDataSource(Landroid/content/Context;Landroid/net/Uri;)V -HSPLandroid/media/MediaPlayer;->setDataSource(Landroid/content/Context;Landroid/net/Uri;Ljava/util/Map;Ljava/util/List;)V -HSPLandroid/media/MediaPlayer;->setDataSource(Landroid/content/res/AssetFileDescriptor;)V -HSPLandroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V -HSPLandroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V -HSPLandroid/media/MediaPlayer;->setOnCompletionListener(Landroid/media/MediaPlayer$OnCompletionListener;)V -HSPLandroid/media/MediaPlayer;->setOnErrorListener(Landroid/media/MediaPlayer$OnErrorListener;)V -HSPLandroid/media/MediaPlayer;->setSubtitleAnchor()V -HSPLandroid/media/MediaPlayer;->setVolume(FF)V -HSPLandroid/media/MediaPlayer;->start()V -HSPLandroid/media/MediaPlayer;->stayAwake(Z)V -HSPLandroid/media/MediaPlayer;->tryToDisableNativeRoutingCallback()V -HSPLandroid/media/MediaPlayer;->tryToEnableNativeRoutingCallback()V -HSPLandroid/media/MediaRoute2Info$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/MediaRoute2Info; -HSPLandroid/media/MediaRoute2Info$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/MediaRoute2Info$Builder;-><init>(Ljava/lang/String;Ljava/lang/CharSequence;)V -HSPLandroid/media/MediaRoute2Info$Builder;->addFeature(Ljava/lang/String;)Landroid/media/MediaRoute2Info$Builder; -HSPLandroid/media/MediaRoute2Info$Builder;->build()Landroid/media/MediaRoute2Info; -HSPLandroid/media/MediaRoute2Info$Builder;->setConnectionState(I)Landroid/media/MediaRoute2Info$Builder; -HSPLandroid/media/MediaRoute2Info$Builder;->setVolume(I)Landroid/media/MediaRoute2Info$Builder; -HSPLandroid/media/MediaRoute2Info$Builder;->setVolumeHandling(I)Landroid/media/MediaRoute2Info$Builder; -HSPLandroid/media/MediaRoute2Info$Builder;->setVolumeMax(I)Landroid/media/MediaRoute2Info$Builder; -HSPLandroid/media/MediaRoute2Info;-><init>(Landroid/media/MediaRoute2Info$Builder;)V -HSPLandroid/media/MediaRoute2Info;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/MediaRoute2Info;->getId()Ljava/lang/String; -HSPLandroid/media/MediaRoute2Info;->getOriginalId()Ljava/lang/String; -HSPLandroid/media/MediaRoute2Info;->isSystemRoute()Z -HSPLandroid/media/MediaRoute2ProviderInfo$Builder;-><init>()V -HSPLandroid/media/MediaRoute2ProviderInfo$Builder;->addRoute(Landroid/media/MediaRoute2Info;)Landroid/media/MediaRoute2ProviderInfo$Builder; -HSPLandroid/media/MediaRoute2ProviderInfo$Builder;->build()Landroid/media/MediaRoute2ProviderInfo; -HSPLandroid/media/MediaRoute2ProviderInfo;-><init>(Landroid/media/MediaRoute2ProviderInfo$Builder;)V -HSPLandroid/media/MediaRouter$Callback;-><init>()V -HSPLandroid/media/MediaRouter$CallbackInfo;-><init>(Landroid/media/MediaRouter$Callback;IILandroid/media/MediaRouter;)V -HSPLandroid/media/MediaRouter$CallbackInfo;->filterRouteEvent(I)Z -HSPLandroid/media/MediaRouter$CallbackInfo;->filterRouteEvent(Landroid/media/MediaRouter$RouteInfo;)Z -HSPLandroid/media/MediaRouter$RouteCategory;-><init>(IIZ)V -HSPLandroid/media/MediaRouter$RouteCategory;-><init>(Ljava/lang/CharSequence;IZ)V -HSPLandroid/media/MediaRouter$RouteCategory;->getName()Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteCategory;->getName(Landroid/content/res/Resources;)Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteCategory;->isGroupable()Z -HSPLandroid/media/MediaRouter$RouteCategory;->toString()Ljava/lang/String; -HSPLandroid/media/MediaRouter$RouteInfo$1;-><init>(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter$RouteInfo;-><init>(Landroid/media/MediaRouter$RouteCategory;)V -HSPLandroid/media/MediaRouter$RouteInfo;->choosePresentationDisplay()Landroid/view/Display; -HSPLandroid/media/MediaRouter$RouteInfo;->getAllPresentationDisplays()[Landroid/view/Display; -HSPLandroid/media/MediaRouter$RouteInfo;->getCategory()Landroid/media/MediaRouter$RouteCategory; -HSPLandroid/media/MediaRouter$RouteInfo;->getDescription()Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteInfo;->getDeviceType()I -HSPLandroid/media/MediaRouter$RouteInfo;->getName()Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteInfo;->getName(Landroid/content/Context;)Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteInfo;->getName(Landroid/content/res/Resources;)Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteInfo;->getPlaybackStream()I -HSPLandroid/media/MediaRouter$RouteInfo;->getPlaybackType()I -HSPLandroid/media/MediaRouter$RouteInfo;->getPresentationDisplay()Landroid/view/Display; -HSPLandroid/media/MediaRouter$RouteInfo;->getStatus()Ljava/lang/CharSequence; -HSPLandroid/media/MediaRouter$RouteInfo;->getSupportedTypes()I -HSPLandroid/media/MediaRouter$RouteInfo;->getTag()Ljava/lang/Object; -HSPLandroid/media/MediaRouter$RouteInfo;->getVolume()I -HSPLandroid/media/MediaRouter$RouteInfo;->getVolumeHandling()I -HSPLandroid/media/MediaRouter$RouteInfo;->getVolumeMax()I -HSPLandroid/media/MediaRouter$RouteInfo;->isBluetooth()Z -HSPLandroid/media/MediaRouter$RouteInfo;->isConnecting()Z -HSPLandroid/media/MediaRouter$RouteInfo;->isDefault()Z -HSPLandroid/media/MediaRouter$RouteInfo;->isEnabled()Z -HSPLandroid/media/MediaRouter$RouteInfo;->isSelected()Z -HSPLandroid/media/MediaRouter$RouteInfo;->matchesTypes(I)Z -HSPLandroid/media/MediaRouter$RouteInfo;->resolveStatusCode()Z -HSPLandroid/media/MediaRouter$RouteInfo;->routeUpdated()V -HSPLandroid/media/MediaRouter$RouteInfo;->select()V -HSPLandroid/media/MediaRouter$RouteInfo;->setTag(Ljava/lang/Object;)V -HSPLandroid/media/MediaRouter$RouteInfo;->toString()Ljava/lang/String; -HSPLandroid/media/MediaRouter$RouteInfo;->updatePresentationDisplay()Z -HSPLandroid/media/MediaRouter$SimpleCallback;-><init>()V -HSPLandroid/media/MediaRouter$Static$1$1;->run()V -HSPLandroid/media/MediaRouter$Static$1;-><init>(Landroid/media/MediaRouter$Static;)V -HSPLandroid/media/MediaRouter$Static$1;->dispatchAudioRoutesChanged(Landroid/media/AudioRoutesInfo;)V -HSPLandroid/media/MediaRouter$Static$Client$1;-><init>(Landroid/media/MediaRouter$Static$Client;)V -HSPLandroid/media/MediaRouter$Static$Client$1;->run()V -HSPLandroid/media/MediaRouter$Static$Client;-><init>(Landroid/media/MediaRouter$Static;)V -HSPLandroid/media/MediaRouter$Static$Client;->onRestoreRoute()V -HSPLandroid/media/MediaRouter$Static$Client;->onStateChanged()V -HSPLandroid/media/MediaRouter$Static;-><init>(Landroid/content/Context;)V -HSPLandroid/media/MediaRouter$Static;->getAllPresentationDisplays()[Landroid/view/Display; -HSPLandroid/media/MediaRouter$Static;->getStreamVolume(I)I -HSPLandroid/media/MediaRouter$Static;->isBluetoothA2dpOn()Z -HSPLandroid/media/MediaRouter$Static;->isPlaybackActive()Z -HSPLandroid/media/MediaRouter$Static;->onDisplayChanged(I)V -HSPLandroid/media/MediaRouter$Static;->publishClientDiscoveryRequest()V -HSPLandroid/media/MediaRouter$Static;->publishClientSelectedRoute(Z)V -HSPLandroid/media/MediaRouter$Static;->rebindAsUser(I)V -HSPLandroid/media/MediaRouter$Static;->setSelectedRoute(Landroid/media/MediaRouter$RouteInfo;Z)V -HSPLandroid/media/MediaRouter$Static;->startMonitoringRoutes(Landroid/content/Context;)V -HSPLandroid/media/MediaRouter$Static;->updateAudioRoutes(Landroid/media/AudioRoutesInfo;)V -HSPLandroid/media/MediaRouter$Static;->updateClientState()V -HSPLandroid/media/MediaRouter$Static;->updateDiscoveryRequest()V -HSPLandroid/media/MediaRouter$Static;->updatePresentationDisplays(I)V -HSPLandroid/media/MediaRouter$UserRouteInfo;-><init>(Landroid/media/MediaRouter$RouteCategory;)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->configureSessionVolume()V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setDescription(Ljava/lang/CharSequence;)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setName(Ljava/lang/CharSequence;)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setPlaybackStream(I)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setPlaybackType(I)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setVolume(I)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setVolumeCallback(Landroid/media/MediaRouter$VolumeCallback;)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setVolumeHandling(I)V -HSPLandroid/media/MediaRouter$UserRouteInfo;->setVolumeMax(I)V -HSPLandroid/media/MediaRouter$VolumeCallback;-><init>()V -HSPLandroid/media/MediaRouter$VolumeCallbackInfo;-><init>(Landroid/media/MediaRouter$VolumeCallback;Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter$VolumeChangeReceiver;-><init>()V -HSPLandroid/media/MediaRouter$VolumeChangeReceiver;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V -HSPLandroid/media/MediaRouter$WifiDisplayStatusChangedReceiver;-><init>()V -HSPLandroid/media/MediaRouter2Manager;->getInstance(Landroid/content/Context;)Landroid/media/MediaRouter2Manager; -HSPLandroid/media/MediaRouter2Utils;->toUniqueId(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/media/MediaRouter;-><init>(Landroid/content/Context;)V -HSPLandroid/media/MediaRouter;->addCallback(ILandroid/media/MediaRouter$Callback;I)V -HSPLandroid/media/MediaRouter;->addRouteStatic(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->addUserRoute(Landroid/media/MediaRouter$UserRouteInfo;)V -HSPLandroid/media/MediaRouter;->createRouteCategory(Ljava/lang/CharSequence;Z)Landroid/media/MediaRouter$RouteCategory; -HSPLandroid/media/MediaRouter;->createUserRoute(Landroid/media/MediaRouter$RouteCategory;)Landroid/media/MediaRouter$UserRouteInfo; -HSPLandroid/media/MediaRouter;->dispatchRouteAdded(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->dispatchRouteChanged(Landroid/media/MediaRouter$RouteInfo;I)V -HSPLandroid/media/MediaRouter;->dispatchRouteRemoved(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->dispatchRouteSelected(ILandroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->dispatchRouteVolumeChanged(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->findCallbackInfo(Landroid/media/MediaRouter$Callback;)I -HSPLandroid/media/MediaRouter;->getDefaultRoute()Landroid/media/MediaRouter$RouteInfo; -HSPLandroid/media/MediaRouter;->getRouteAt(I)Landroid/media/MediaRouter$RouteInfo; -HSPLandroid/media/MediaRouter;->getRouteCount()I -HSPLandroid/media/MediaRouter;->getSelectedRoute(I)Landroid/media/MediaRouter$RouteInfo; -HSPLandroid/media/MediaRouter;->removeCallback(Landroid/media/MediaRouter$Callback;)V -HSPLandroid/media/MediaRouter;->removeRouteStatic(Landroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->removeUserRoute(Landroid/media/MediaRouter$UserRouteInfo;)V -HSPLandroid/media/MediaRouter;->selectDefaultRouteStatic()V -HSPLandroid/media/MediaRouter;->selectRoute(ILandroid/media/MediaRouter$RouteInfo;)V -HSPLandroid/media/MediaRouter;->selectRouteStatic(ILandroid/media/MediaRouter$RouteInfo;Z)V -HSPLandroid/media/MediaRouter;->systemVolumeChanged(I)V -HSPLandroid/media/MediaRouter;->typesToString(I)Ljava/lang/String; -HSPLandroid/media/MediaRouter;->updateWifiDisplayStatus(Landroid/hardware/display/WifiDisplayStatus;)V -HSPLandroid/media/MediaServiceManager$ServiceRegisterer;-><init>(Ljava/lang/String;)V -HSPLandroid/media/MediaServiceManager$ServiceRegisterer;->get()Landroid/os/IBinder; -HSPLandroid/media/MediaServiceManager;-><init>()V -HSPLandroid/media/MediaServiceManager;->getMediaCommunicationServiceRegisterer()Landroid/media/MediaServiceManager$ServiceRegisterer; -HSPLandroid/media/MediaServiceManager;->getMediaSessionServiceRegisterer()Landroid/media/MediaServiceManager$ServiceRegisterer; -HSPLandroid/media/PlayerBase$IPlayerWrapper;-><init>(Landroid/media/PlayerBase;)V -HSPLandroid/media/PlayerBase$PlayerIdCard;-><init>(ILandroid/media/AudioAttributes;Landroid/media/IPlayer;I)V -HSPLandroid/media/PlayerBase$PlayerIdCard;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/media/PlayerBase;-><init>(Landroid/media/AudioAttributes;I)V -HSPLandroid/media/PlayerBase;->basePause()V -HSPLandroid/media/PlayerBase;->baseRegisterPlayer(I)V -HSPLandroid/media/PlayerBase;->baseRelease()V -HSPLandroid/media/PlayerBase;->baseSetVolume(FF)V -HSPLandroid/media/PlayerBase;->baseStart(I)V -HSPLandroid/media/PlayerBase;->baseStop()V -HSPLandroid/media/PlayerBase;->baseUpdateAudioAttributes(Landroid/media/AudioAttributes;)V -HSPLandroid/media/PlayerBase;->baseUpdateDeviceId(Landroid/media/AudioDeviceInfo;)V -HSPLandroid/media/PlayerBase;->deprecateStreamTypeForPlayback(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/media/PlayerBase;->getCurrentOpPackageName()Ljava/lang/String; -HSPLandroid/media/PlayerBase;->getService()Landroid/media/IAudioService; -HSPLandroid/media/PlayerBase;->getStartDelayMs()I -HSPLandroid/media/PlayerBase;->resolvePlaybackSessionId(Landroid/content/Context;I)I -HSPLandroid/media/PlayerBase;->updatePlayerVolume()V -HSPLandroid/media/PlayerBase;->updateState(II)V -HSPLandroid/media/RoutingSessionInfo$Builder;->build()Landroid/media/RoutingSessionInfo; -HSPLandroid/media/RoutingSessionInfo;-><init>(Landroid/media/RoutingSessionInfo$Builder;)V -HSPLandroid/media/RoutingSessionInfo;->convertToUniqueRouteIds(Ljava/util/List;)Ljava/util/List; -HSPLandroid/media/SoundPool$Builder;-><init>()V -HSPLandroid/media/SoundPool$Builder;->build()Landroid/media/SoundPool; -HSPLandroid/media/SoundPool$Builder;->setAudioAttributes(Landroid/media/AudioAttributes;)Landroid/media/SoundPool$Builder; -HSPLandroid/media/SoundPool$Builder;->setMaxStreams(I)Landroid/media/SoundPool$Builder; -HSPLandroid/media/SoundPool$EventHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/SoundPool;-><init>(Landroid/content/Context;ILandroid/media/AudioAttributes;I)V -HSPLandroid/media/SoundPool;->postEventFromNative(IIILjava/lang/Object;)V -HSPLandroid/media/SoundPool;->setOnLoadCompleteListener(Landroid/media/SoundPool$OnLoadCompleteListener;)V -HSPLandroid/media/SubtitleController$1;->handleMessage(Landroid/os/Message;)Z -HSPLandroid/media/SubtitleController;-><init>(Landroid/content/Context;Landroid/media/MediaTimeProvider;Landroid/media/SubtitleController$Listener;)V -HSPLandroid/media/SubtitleController;->doSelectDefaultTrack()V -HSPLandroid/media/SubtitleController;->doSelectTrack(Landroid/media/SubtitleTrack;)V -HSPLandroid/media/SubtitleController;->finalize()V -HSPLandroid/media/SubtitleController;->getDefaultTrack()Landroid/media/SubtitleTrack; -HSPLandroid/media/SubtitleController;->hide()V -HSPLandroid/media/SubtitleController;->reset()V -HSPLandroid/media/SubtitleController;->selectDefaultTrack()V -HSPLandroid/media/SubtitleController;->selectTrack(Landroid/media/SubtitleTrack;)Z -HSPLandroid/media/SubtitleController;->setAnchor(Landroid/media/SubtitleController$Anchor;)V -HSPLandroid/media/Utils$1;-><init>()V -HSPLandroid/media/Utils$1;->compare(Landroid/util/Range;Landroid/util/Range;)I -HSPLandroid/media/Utils$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/media/Utils$2;->compare(Landroid/util/Range;Landroid/util/Range;)I -HSPLandroid/media/Utils$2;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/media/Utils$ListenerList;-><init>()V -HSPLandroid/media/Utils$ListenerList;-><init>(ZZZ)V -HSPLandroid/media/Utils;->alignRange(Landroid/util/Range;I)Landroid/util/Range; -HSPLandroid/media/Utils;->divUp(II)I -HSPLandroid/media/Utils;->divUp(JJ)J -HSPLandroid/media/Utils;->factorRange(Landroid/util/Range;I)Landroid/util/Range; -HSPLandroid/media/Utils;->factorRange(Landroid/util/Range;J)Landroid/util/Range; -HSPLandroid/media/Utils;->intersectSortedDistinctRanges([Landroid/util/Range;[Landroid/util/Range;)[Landroid/util/Range; -HSPLandroid/media/Utils;->parseIntRange(Ljava/lang/Object;Landroid/util/Range;)Landroid/util/Range; -HSPLandroid/media/Utils;->parseIntSafely(Ljava/lang/Object;I)I -HSPLandroid/media/Utils;->parseLongRange(Ljava/lang/Object;Landroid/util/Range;)Landroid/util/Range; -HSPLandroid/media/Utils;->parseRationalRange(Ljava/lang/Object;Landroid/util/Range;)Landroid/util/Range; -HSPLandroid/media/Utils;->parseSize(Ljava/lang/Object;Landroid/util/Size;)Landroid/util/Size; -HSPLandroid/media/Utils;->parseSizeRange(Ljava/lang/Object;)Landroid/util/Pair; -HSPLandroid/media/Utils;->sortDistinctRanges([Landroid/util/Range;)V -HSPLandroid/media/audiofx/AudioEffect$Descriptor;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/media/audiopolicy/AudioProductStrategy$AudioAttributesGroup;-><init>(II[Landroid/media/AudioAttributes;)V -HSPLandroid/media/audiopolicy/AudioProductStrategy;-><init>(Ljava/lang/String;I[Landroid/media/audiopolicy/AudioProductStrategy$AudioAttributesGroup;)V -HSPLandroid/media/audiopolicy/AudioProductStrategy;->attributesMatches(Landroid/media/AudioAttributes;Landroid/media/AudioAttributes;)Z -HSPLandroid/media/audiopolicy/AudioProductStrategy;->getAudioAttributesForStrategyWithLegacyStreamType(I)Landroid/media/AudioAttributes; -HSPLandroid/media/audiopolicy/AudioProductStrategy;->getAudioProductStrategies()Ljava/util/List; -HSPLandroid/media/audiopolicy/AudioProductStrategy;->getLegacyStreamTypeForStrategyWithAudioAttributes(Landroid/media/AudioAttributes;)I -HSPLandroid/media/audiopolicy/AudioProductStrategy;->initializeAudioProductStrategies()Ljava/util/List; -HSPLandroid/media/browse/MediaBrowser$1;->run()V -HSPLandroid/media/browse/MediaBrowser$2;->run()V -HSPLandroid/media/browse/MediaBrowser$6;->run()V -HSPLandroid/media/browse/MediaBrowser$ConnectionCallback;-><init>()V -HSPLandroid/media/browse/MediaBrowser$MediaServiceConnection$1;->run()V -HSPLandroid/media/browse/MediaBrowser$MediaServiceConnection;->isCurrent(Ljava/lang/String;)Z -HSPLandroid/media/browse/MediaBrowser$MediaServiceConnection;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/media/browse/MediaBrowser$MediaServiceConnection;->postOrRun(Ljava/lang/Runnable;)V -HSPLandroid/media/browse/MediaBrowser$ServiceCallbacks;->onConnect(Ljava/lang/String;Landroid/media/session/MediaSession$Token;Landroid/os/Bundle;)V -HSPLandroid/media/browse/MediaBrowser;-><init>(Landroid/content/Context;Landroid/content/ComponentName;Landroid/media/browse/MediaBrowser$ConnectionCallback;Landroid/os/Bundle;)V -HSPLandroid/media/browse/MediaBrowser;->connect()V -HSPLandroid/media/browse/MediaBrowser;->disconnect()V -HSPLandroid/media/browse/MediaBrowser;->forceCloseConnection()V -HSPLandroid/media/browse/MediaBrowser;->isCurrent(Landroid/service/media/IMediaBrowserServiceCallbacks;Ljava/lang/String;)Z -HSPLandroid/media/browse/MediaBrowserUtils;->areSameOptions(Landroid/os/Bundle;Landroid/os/Bundle;)Z -HSPLandroid/media/metrics/Event;-><init>()V -HSPLandroid/media/metrics/IMediaMetricsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/media/metrics/IMediaMetricsManager$Stub$Proxy;->getPlaybackSessionId(I)Ljava/lang/String; -HSPLandroid/media/metrics/IMediaMetricsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/metrics/IMediaMetricsManager; -HSPLandroid/media/metrics/LogSessionId;-><init>(Ljava/lang/String;)V -HSPLandroid/media/metrics/MediaMetricsManager;-><init>(Landroid/media/metrics/IMediaMetricsManager;I)V -HSPLandroid/media/metrics/MediaMetricsManager;->createPlaybackSession()Landroid/media/metrics/PlaybackSession; -HSPLandroid/media/metrics/NetworkEvent$1;-><init>()V -HSPLandroid/media/metrics/NetworkEvent;-><clinit>()V -HSPLandroid/media/metrics/PlaybackSession;-><init>(Ljava/lang/String;Landroid/media/metrics/MediaMetricsManager;)V -HSPLandroid/media/metrics/PlaybackSession;->getSessionId()Landroid/media/metrics/LogSessionId; -HSPLandroid/media/permission/ClearCallingIdentityContext;-><init>()V -HSPLandroid/media/permission/ClearCallingIdentityContext;->close()V -HSPLandroid/media/permission/ClearCallingIdentityContext;->create()Landroid/media/permission/SafeCloseable; -HSPLandroid/media/permission/Identity;-><init>()V -HSPLandroid/media/session/IActiveSessionsListener$Stub;-><init>()V -HSPLandroid/media/session/IActiveSessionsListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/session/IActiveSessionsListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/media/session/IOnMediaKeyEventDispatchedListener$Stub;-><init>()V -HSPLandroid/media/session/IOnMediaKeyEventSessionChangedListener$Stub;-><init>()V -HSPLandroid/media/session/ISession$Stub$Proxy;->destroySession()V -HSPLandroid/media/session/ISession$Stub$Proxy;->getController()Landroid/media/session/ISessionController; -HSPLandroid/media/session/ISession$Stub$Proxy;->setFlags(I)V -HSPLandroid/media/session/ISession$Stub$Proxy;->setMetadata(Landroid/media/MediaMetadata;JLjava/lang/String;)V -HSPLandroid/media/session/ISession$Stub$Proxy;->setPlaybackState(Landroid/media/session/PlaybackState;)V -HSPLandroid/media/session/ISessionCallback$Stub;-><init>()V -HSPLandroid/media/session/ISessionCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->getMetadata()Landroid/media/MediaMetadata; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->getPackageName()Ljava/lang/String; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->getPlaybackState()Landroid/media/session/PlaybackState; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->getVolumeAttributes()Landroid/media/session/MediaController$PlaybackInfo; -HSPLandroid/media/session/ISessionController$Stub$Proxy;->registerCallback(Ljava/lang/String;Landroid/media/session/ISessionControllerCallback;)V -HSPLandroid/media/session/ISessionController$Stub$Proxy;->unregisterCallback(Landroid/media/session/ISessionControllerCallback;)V -HSPLandroid/media/session/ISessionController$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/session/ISessionController; -HSPLandroid/media/session/ISessionControllerCallback$Stub;-><init>()V -HSPLandroid/media/session/ISessionControllerCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/session/ISessionControllerCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/media/session/ISessionManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/media/session/ISessionManager$Stub$Proxy;->addSessionsListener(Landroid/media/session/IActiveSessionsListener;Landroid/content/ComponentName;I)V -HSPLandroid/media/session/ISessionManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/media/session/ISessionManager$Stub$Proxy;->createSession(Ljava/lang/String;Landroid/media/session/ISessionCallback;Ljava/lang/String;Landroid/os/Bundle;I)Landroid/media/session/ISession; -HSPLandroid/media/session/ISessionManager$Stub$Proxy;->dispatchVolumeKeyEvent(Ljava/lang/String;Ljava/lang/String;ZLandroid/view/KeyEvent;IZ)V -HSPLandroid/media/session/ISessionManager$Stub$Proxy;->getSessions(Landroid/content/ComponentName;I)Ljava/util/List; -HSPLandroid/media/session/ISessionManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/media/session/ISessionManager; -HSPLandroid/media/session/MediaController$Callback;-><init>()V -HSPLandroid/media/session/MediaController$CallbackStub;-><init>(Landroid/media/session/MediaController;)V -HSPLandroid/media/session/MediaController$CallbackStub;->onMetadataChanged(Landroid/media/MediaMetadata;)V -HSPLandroid/media/session/MediaController$CallbackStub;->onPlaybackStateChanged(Landroid/media/session/PlaybackState;)V -HSPLandroid/media/session/MediaController$CallbackStub;->onSessionDestroyed()V -HSPLandroid/media/session/MediaController$MessageHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/media/session/MediaController$PlaybackInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/session/MediaController$PlaybackInfo; -HSPLandroid/media/session/MediaController$PlaybackInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/session/MediaController$PlaybackInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/session/MediaController$TransportControls;-><init>(Landroid/media/session/MediaController;)V -HSPLandroid/media/session/MediaController;-><init>(Landroid/content/Context;Landroid/media/session/MediaSession$Token;)V -HSPLandroid/media/session/MediaController;->addCallbackLocked(Landroid/media/session/MediaController$Callback;Landroid/os/Handler;)V -HSPLandroid/media/session/MediaController;->getHandlerForCallbackLocked(Landroid/media/session/MediaController$Callback;)Landroid/media/session/MediaController$MessageHandler; -HSPLandroid/media/session/MediaController;->getMetadata()Landroid/media/MediaMetadata; -HSPLandroid/media/session/MediaController;->getPackageName()Ljava/lang/String; -HSPLandroid/media/session/MediaController;->getPlaybackInfo()Landroid/media/session/MediaController$PlaybackInfo; -HSPLandroid/media/session/MediaController;->getPlaybackState()Landroid/media/session/PlaybackState; -HSPLandroid/media/session/MediaController;->getSessionToken()Landroid/media/session/MediaSession$Token; -HSPLandroid/media/session/MediaController;->postMessage(ILjava/lang/Object;Landroid/os/Bundle;)V -HSPLandroid/media/session/MediaController;->registerCallback(Landroid/media/session/MediaController$Callback;Landroid/os/Handler;)V -HSPLandroid/media/session/MediaController;->removeCallbackLocked(Landroid/media/session/MediaController$Callback;)Z -HSPLandroid/media/session/MediaController;->unregisterCallback(Landroid/media/session/MediaController$Callback;)V -HSPLandroid/media/session/MediaSession$Callback;-><init>()V -HSPLandroid/media/session/MediaSession$CallbackMessageHandler;-><init>(Landroid/media/session/MediaSession;Landroid/os/Looper;Landroid/media/session/MediaSession$Callback;)V -HSPLandroid/media/session/MediaSession$CallbackStub;-><init>(Landroid/media/session/MediaSession;)V -HSPLandroid/media/session/MediaSession$Token$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/session/MediaSession$Token; -HSPLandroid/media/session/MediaSession$Token$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/session/MediaSession$Token;-><init>(ILandroid/media/session/ISessionController;)V -HSPLandroid/media/session/MediaSession$Token;->equals(Ljava/lang/Object;)Z -HSPLandroid/media/session/MediaSession$Token;->getBinder()Landroid/media/session/ISessionController; -HSPLandroid/media/session/MediaSession$Token;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/media/session/MediaSession;-><init>(Landroid/content/Context;Ljava/lang/String;)V -HSPLandroid/media/session/MediaSession;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)V -HSPLandroid/media/session/MediaSession;->getSessionToken()Landroid/media/session/MediaSession$Token; -HSPLandroid/media/session/MediaSession;->hasCustomParcelable(Landroid/os/Bundle;)Z -HSPLandroid/media/session/MediaSession;->isActive()Z -HSPLandroid/media/session/MediaSession;->release()V -HSPLandroid/media/session/MediaSession;->setActive(Z)V -HSPLandroid/media/session/MediaSession;->setCallback(Landroid/media/session/MediaSession$Callback;)V -HSPLandroid/media/session/MediaSession;->setCallback(Landroid/media/session/MediaSession$Callback;Landroid/os/Handler;)V -HSPLandroid/media/session/MediaSession;->setFlags(I)V -HSPLandroid/media/session/MediaSession;->setMediaButtonReceiver(Landroid/app/PendingIntent;)V -HSPLandroid/media/session/MediaSession;->setMetadata(Landroid/media/MediaMetadata;)V -HSPLandroid/media/session/MediaSession;->setPlaybackState(Landroid/media/session/PlaybackState;)V -HSPLandroid/media/session/MediaSession;->setPlaybackToLocal(Landroid/media/AudioAttributes;)V -HSPLandroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListenerStub;-><init>(Landroid/media/session/MediaSessionManager;)V -HSPLandroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub;-><init>(Landroid/media/session/MediaSessionManager;)V -HSPLandroid/media/session/MediaSessionManager$RemoteSessionCallbackStub;-><init>(Landroid/media/session/MediaSessionManager;)V -HSPLandroid/media/session/MediaSessionManager$RemoteUserInfo;-><init>(Ljava/lang/String;II)V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0;->run()V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper$1;-><init>(Landroid/media/session/MediaSessionManager$SessionsChangedWrapper;)V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper$1;->onActiveSessionsChanged(Ljava/util/List;)V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper;->-$$Nest$fgetmStub(Landroid/media/session/MediaSessionManager$SessionsChangedWrapper;)Landroid/media/session/IActiveSessionsListener$Stub; -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper;->-$$Nest$mcallOnActiveSessionsChangedListener(Landroid/media/session/MediaSessionManager$SessionsChangedWrapper;Ljava/util/List;)V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper;-><init>(Landroid/content/Context;Landroid/media/session/MediaSessionManager$OnActiveSessionsChangedListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/media/session/MediaSessionManager$SessionsChangedWrapper;->callOnActiveSessionsChangedListener(Ljava/util/List;)V -HSPLandroid/media/session/MediaSessionManager;-><init>(Landroid/content/Context;)V -HSPLandroid/media/session/MediaSessionManager;->addOnActiveSessionsChangedListener(Landroid/media/session/MediaSessionManager$OnActiveSessionsChangedListener;Landroid/content/ComponentName;ILjava/util/concurrent/Executor;)V -HSPLandroid/media/session/MediaSessionManager;->addOnActiveSessionsChangedListener(Landroid/media/session/MediaSessionManager$OnActiveSessionsChangedListener;Landroid/content/ComponentName;Landroid/os/Handler;)V -HSPLandroid/media/session/MediaSessionManager;->createSession(Landroid/media/session/MediaSession$CallbackStub;Ljava/lang/String;Landroid/os/Bundle;)Landroid/media/session/ISession; -HSPLandroid/media/session/MediaSessionManager;->dispatchVolumeKeyEventInternal(Landroid/view/KeyEvent;IZZ)V -HSPLandroid/media/session/MediaSessionManager;->getActiveSessions(Landroid/content/ComponentName;)Ljava/util/List; -HSPLandroid/media/session/MediaSessionManager;->getActiveSessionsForUser(Landroid/content/ComponentName;I)Ljava/util/List; -HSPLandroid/media/session/PlaybackState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/session/PlaybackState; -HSPLandroid/media/session/PlaybackState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/session/PlaybackState$Builder;-><init>()V -HSPLandroid/media/session/PlaybackState$Builder;->build()Landroid/media/session/PlaybackState; -HSPLandroid/media/session/PlaybackState$Builder;->setActions(J)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$Builder;->setActiveQueueItemId(J)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$Builder;->setBufferedPosition(J)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$Builder;->setErrorMessage(Ljava/lang/CharSequence;)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$Builder;->setExtras(Landroid/os/Bundle;)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$Builder;->setState(IJFJ)Landroid/media/session/PlaybackState$Builder; -HSPLandroid/media/session/PlaybackState$CustomAction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/session/PlaybackState$CustomAction; -HSPLandroid/media/session/PlaybackState$CustomAction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/media/session/PlaybackState;-><init>(IJJFJJLjava/util/List;JLjava/lang/CharSequence;Landroid/os/Bundle;)V -HSPLandroid/media/session/PlaybackState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/media/session/PlaybackState;->getPosition()J -HSPLandroid/media/session/PlaybackState;->getState()I -HSPLandroid/media/session/PlaybackState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/metrics/LogMaker;-><init>(I)V -HSPLandroid/metrics/LogMaker;->addTaggedData(ILjava/lang/Object;)Landroid/metrics/LogMaker; -HSPLandroid/metrics/LogMaker;->getEntries()Landroid/util/SparseArray; -HSPLandroid/metrics/LogMaker;->getType()I -HSPLandroid/metrics/LogMaker;->isValidValue(Ljava/lang/Object;)Z -HSPLandroid/metrics/LogMaker;->serialize()[Ljava/lang/Object; -HSPLandroid/metrics/LogMaker;->setCategory(I)Landroid/metrics/LogMaker; -HSPLandroid/metrics/LogMaker;->setComponentName(Landroid/content/ComponentName;)Landroid/metrics/LogMaker; -HSPLandroid/metrics/LogMaker;->setSubtype(I)Landroid/metrics/LogMaker; -HSPLandroid/metrics/LogMaker;->setType(I)Landroid/metrics/LogMaker; -HSPLandroid/net/Credentials;-><init>(III)V -HSPLandroid/net/Credentials;->getPid()I -HSPLandroid/net/Credentials;->getUid()I -HSPLandroid/net/INetworkPolicyListener$Stub;-><init>()V -HSPLandroid/net/INetworkPolicyListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/net/INetworkPolicyListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/net/INetworkPolicyManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/net/INetworkPolicyManager$Stub$Proxy;->getRestrictBackground()Z -HSPLandroid/net/INetworkPolicyManager$Stub$Proxy;->getRestrictBackgroundByCaller()I -HSPLandroid/net/INetworkPolicyManager$Stub$Proxy;->registerListener(Landroid/net/INetworkPolicyListener;)V -HSPLandroid/net/INetworkPolicyManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/net/INetworkPolicyManager; -HSPLandroid/net/INetworkScoreCache$Stub;-><init>()V -HSPLandroid/net/INetworkScoreCache$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/net/INetworkScoreService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/net/INetworkScoreService; -HSPLandroid/net/LocalServerSocket;-><init>(Ljava/io/FileDescriptor;)V -HSPLandroid/net/LocalServerSocket;->accept()Landroid/net/LocalSocket; -HSPLandroid/net/LocalServerSocket;->close()V -HSPLandroid/net/LocalServerSocket;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/net/LocalSocket;-><init>(Landroid/net/LocalSocketImpl;I)V -HSPLandroid/net/LocalSocket;->checkConnected()V -HSPLandroid/net/LocalSocket;->close()V -HSPLandroid/net/LocalSocket;->createLocalSocketForAccept(Landroid/net/LocalSocketImpl;)Landroid/net/LocalSocket; -HSPLandroid/net/LocalSocket;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/net/LocalSocket;->getInputStream()Ljava/io/InputStream; -HSPLandroid/net/LocalSocket;->getOutputStream()Ljava/io/OutputStream; -HSPLandroid/net/LocalSocket;->getPeerCredentials()Landroid/net/Credentials; -HSPLandroid/net/LocalSocket;->implCreateIfNeeded()V -HSPLandroid/net/LocalSocket;->setSoTimeout(I)V -HSPLandroid/net/LocalSocketAddress$Namespace;->getId()I -HSPLandroid/net/LocalSocketAddress;-><init>(Ljava/lang/String;)V -HSPLandroid/net/LocalSocketAddress;-><init>(Ljava/lang/String;Landroid/net/LocalSocketAddress$Namespace;)V -HSPLandroid/net/LocalSocketAddress;->getName()Ljava/lang/String; -HSPLandroid/net/LocalSocketAddress;->getNamespace()Landroid/net/LocalSocketAddress$Namespace; -HSPLandroid/net/LocalSocketImpl$SocketInputStream;-><init>(Landroid/net/LocalSocketImpl;)V -HSPLandroid/net/LocalSocketImpl$SocketInputStream;->available()I -HSPLandroid/net/LocalSocketImpl$SocketInputStream;->read([BII)I -HSPLandroid/net/LocalSocketImpl$SocketOutputStream;-><init>(Landroid/net/LocalSocketImpl;)V -HSPLandroid/net/LocalSocketImpl$SocketOutputStream;->write(I)V -HSPLandroid/net/LocalSocketImpl$SocketOutputStream;->write([BII)V -HSPLandroid/net/LocalSocketImpl;->-$$Nest$fgetfd(Landroid/net/LocalSocketImpl;)Ljava/io/FileDescriptor; -HSPLandroid/net/LocalSocketImpl;->-$$Nest$fgetwriteMonitor(Landroid/net/LocalSocketImpl;)Ljava/lang/Object; -HSPLandroid/net/LocalSocketImpl;->-$$Nest$mwrite_native(Landroid/net/LocalSocketImpl;ILjava/io/FileDescriptor;)V -HSPLandroid/net/LocalSocketImpl;->-$$Nest$mwriteba_native(Landroid/net/LocalSocketImpl;[BIILjava/io/FileDescriptor;)V -HSPLandroid/net/LocalSocketImpl;-><init>()V -HSPLandroid/net/LocalSocketImpl;-><init>(Ljava/io/FileDescriptor;)V -HSPLandroid/net/LocalSocketImpl;->accept(Landroid/net/LocalSocketImpl;)V -HSPLandroid/net/LocalSocketImpl;->bind(Landroid/net/LocalSocketAddress;)V -HSPLandroid/net/LocalSocketImpl;->close()V -HSPLandroid/net/LocalSocketImpl;->create(I)V -HSPLandroid/net/LocalSocketImpl;->finalize()V -HSPLandroid/net/LocalSocketImpl;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/net/LocalSocketImpl;->getInputStream()Ljava/io/InputStream; -HSPLandroid/net/LocalSocketImpl;->getOutputStream()Ljava/io/OutputStream; -HSPLandroid/net/LocalSocketImpl;->getPeerCredentials()Landroid/net/Credentials; -HSPLandroid/net/LocalSocketImpl;->getSockAddress()Landroid/net/LocalSocketAddress; -HSPLandroid/net/LocalSocketImpl;->listen(I)V -HSPLandroid/net/LocalSocketImpl;->setOption(ILjava/lang/Object;)V -HSPLandroid/net/MatchAllNetworkSpecifier;-><init>()V -HSPLandroid/net/NetworkKey$1;->createFromParcel(Landroid/os/Parcel;)Landroid/net/NetworkKey; -HSPLandroid/net/NetworkKey$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/net/NetworkKey$1;->newArray(I)[Landroid/net/NetworkKey; -HSPLandroid/net/NetworkKey$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/net/NetworkKey;-><init>(Landroid/net/WifiKey;)V -HSPLandroid/net/NetworkKey;-><init>(Landroid/os/Parcel;)V -HSPLandroid/net/NetworkKey;->createFromWifiInfo(Landroid/net/wifi/WifiInfo;)Landroid/net/NetworkKey; -HSPLandroid/net/NetworkKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/net/NetworkKey;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/NetworkPolicyManager$Listener;-><init>()V -HSPLandroid/net/NetworkPolicyManager$Listener;->onMeteredIfacesChanged([Ljava/lang/String;)V -HSPLandroid/net/NetworkPolicyManager$Listener;->onSubscriptionPlansChanged(I[Landroid/telephony/SubscriptionPlan;)V -HSPLandroid/net/NetworkPolicyManager$Listener;->onUidRulesChanged(II)V -HSPLandroid/net/NetworkPolicyManager;-><init>(Landroid/content/Context;Landroid/net/INetworkPolicyManager;)V -HSPLandroid/net/NetworkPolicyManager;->getRestrictBackground()Z -HSPLandroid/net/NetworkPolicyManager;->registerListener(Landroid/net/INetworkPolicyListener;)V -HSPLandroid/net/NetworkScoreManager;-><init>(Landroid/content/Context;)V -HSPLandroid/net/NetworkScoreManager;->getActiveScorerPackage()Ljava/lang/String; -HSPLandroid/net/NetworkScoreManager;->registerNetworkScoreCache(ILandroid/net/INetworkScoreCache;I)V -HSPLandroid/net/NetworkSpecifier;-><init>()V -HSPLandroid/net/Proxy;->setHttpProxyConfiguration(Landroid/net/ProxyInfo;)V -HSPLandroid/net/Proxy;->setHttpProxyConfiguration(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/net/Uri;)V -HSPLandroid/net/Proxy;->setHttpProxySystemProperty(Landroid/net/ProxyInfo;)V -HSPLandroid/net/SSLCertificateSocketFactory;-><init>(ILandroid/net/SSLSessionCache;Z)V -HSPLandroid/net/TelephonyNetworkSpecifier$1;->createFromParcel(Landroid/os/Parcel;)Landroid/net/TelephonyNetworkSpecifier; -HSPLandroid/net/TelephonyNetworkSpecifier$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/net/TelephonyNetworkSpecifier$Builder;-><init>()V -HSPLandroid/net/TelephonyNetworkSpecifier$Builder;->build()Landroid/net/TelephonyNetworkSpecifier; -HSPLandroid/net/TelephonyNetworkSpecifier$Builder;->setSubscriptionId(I)Landroid/net/TelephonyNetworkSpecifier$Builder; -HSPLandroid/net/TelephonyNetworkSpecifier;-><init>(I)V -HSPLandroid/net/TelephonyNetworkSpecifier;->equals(Ljava/lang/Object;)Z -HSPLandroid/net/TelephonyNetworkSpecifier;->hashCode()I -HSPLandroid/net/TelephonyNetworkSpecifier;->toString()Ljava/lang/String; -HSPLandroid/net/TelephonyNetworkSpecifier;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/Uri$1;->createFromParcel(Landroid/os/Parcel;)Landroid/net/Uri; -HSPLandroid/net/Uri$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/net/Uri$1;->newArray(I)[Landroid/net/Uri; -HSPLandroid/net/Uri$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/net/Uri$AbstractHierarchicalUri;-><init>()V -HSPLandroid/net/Uri$AbstractHierarchicalUri;-><init>(Landroid/net/Uri$AbstractHierarchicalUri-IA;)V -HSPLandroid/net/Uri$AbstractHierarchicalUri;->findPortSeparator(Ljava/lang/String;)I -HSPLandroid/net/Uri$AbstractHierarchicalUri;->getHost()Ljava/lang/String; -HSPLandroid/net/Uri$AbstractHierarchicalUri;->getLastPathSegment()Ljava/lang/String; -HSPLandroid/net/Uri$AbstractHierarchicalUri;->getPort()I -HSPLandroid/net/Uri$AbstractHierarchicalUri;->getUserInfo()Ljava/lang/String; -HSPLandroid/net/Uri$AbstractHierarchicalUri;->getUserInfoPart()Landroid/net/Uri$Part; -HSPLandroid/net/Uri$AbstractHierarchicalUri;->parseHost()Ljava/lang/String; -HSPLandroid/net/Uri$AbstractHierarchicalUri;->parsePort()I -HSPLandroid/net/Uri$AbstractHierarchicalUri;->parseUserInfo()Ljava/lang/String; -HSPLandroid/net/Uri$AbstractPart;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/net/Uri$AbstractPart;->getDecoded()Ljava/lang/String; -HSPLandroid/net/Uri$Builder;-><init>()V -HSPLandroid/net/Uri$Builder;->appendEncodedPath(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->appendPath(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->appendQueryParameter(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->authority(Landroid/net/Uri$Part;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->authority(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->build()Landroid/net/Uri; -HSPLandroid/net/Uri$Builder;->clearQuery()Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->encodedAuthority(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->encodedFragment(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->encodedPath(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->encodedQuery(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->fragment(Landroid/net/Uri$Part;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->fragment(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->hasSchemeOrAuthority()Z -HSPLandroid/net/Uri$Builder;->path(Landroid/net/Uri$PathPart;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->path(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->query(Landroid/net/Uri$Part;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->scheme(Ljava/lang/String;)Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$Builder;->toString()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$PathPart;Landroid/net/Uri$Part;Landroid/net/Uri$Part;)V -HSPLandroid/net/Uri$HierarchicalUri;->appendSspTo(Ljava/lang/StringBuilder;)V -HSPLandroid/net/Uri$HierarchicalUri;->buildUpon()Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$HierarchicalUri;->generatePath(Landroid/net/Uri$PathPart;)Landroid/net/Uri$PathPart;+]Landroid/net/Uri$Part;Landroid/net/Uri$Part$EmptyPart;,Landroid/net/Uri$Part; -HSPLandroid/net/Uri$HierarchicalUri;->getAuthority()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getEncodedAuthority()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getEncodedFragment()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getEncodedPath()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getEncodedQuery()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getFragment()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getPath()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getPathSegments()Ljava/util/List; -HSPLandroid/net/Uri$HierarchicalUri;->getQuery()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getScheme()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->getSchemeSpecificPart()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->isHierarchical()Z -HSPLandroid/net/Uri$HierarchicalUri;->makeUriString()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->readFrom(Landroid/os/Parcel;)Landroid/net/Uri; -HSPLandroid/net/Uri$HierarchicalUri;->toString()Ljava/lang/String; -HSPLandroid/net/Uri$HierarchicalUri;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/Uri$OpaqueUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$Part;)V -HSPLandroid/net/Uri$OpaqueUri;-><init>(Ljava/lang/String;Landroid/net/Uri$Part;Landroid/net/Uri$Part;Landroid/net/Uri$OpaqueUri-IA;)V -HSPLandroid/net/Uri$OpaqueUri;->getEncodedSchemeSpecificPart()Ljava/lang/String; -HSPLandroid/net/Uri$OpaqueUri;->getScheme()Ljava/lang/String; -HSPLandroid/net/Uri$OpaqueUri;->getSchemeSpecificPart()Ljava/lang/String; -HSPLandroid/net/Uri$OpaqueUri;->toString()Ljava/lang/String; -HSPLandroid/net/Uri$OpaqueUri;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/Uri$Part$EmptyPart;->isEmpty()Z -HSPLandroid/net/Uri$Part;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/net/Uri$Part;->from(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri$Part; -HSPLandroid/net/Uri$Part;->fromDecoded(Ljava/lang/String;)Landroid/net/Uri$Part; -HSPLandroid/net/Uri$Part;->fromEncoded(Ljava/lang/String;)Landroid/net/Uri$Part; -HSPLandroid/net/Uri$Part;->getEncoded()Ljava/lang/String; -HSPLandroid/net/Uri$Part;->isEmpty()Z -HSPLandroid/net/Uri$Part;->nonNull(Landroid/net/Uri$Part;)Landroid/net/Uri$Part; -HSPLandroid/net/Uri$PathPart;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/net/Uri$PathPart;->appendDecodedSegment(Landroid/net/Uri$PathPart;Ljava/lang/String;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathPart;->appendEncodedSegment(Landroid/net/Uri$PathPart;Ljava/lang/String;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathPart;->from(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathPart;->fromDecoded(Ljava/lang/String;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathPart;->fromEncoded(Ljava/lang/String;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathPart;->getEncoded()Ljava/lang/String; -HSPLandroid/net/Uri$PathPart;->getPathSegments()Landroid/net/Uri$PathSegments; -HSPLandroid/net/Uri$PathPart;->makeAbsolute(Landroid/net/Uri$PathPart;)Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$PathSegments;-><init>([Ljava/lang/String;I)V -HSPLandroid/net/Uri$PathSegments;->get(I)Ljava/lang/Object; -HSPLandroid/net/Uri$PathSegments;->get(I)Ljava/lang/String; -HSPLandroid/net/Uri$PathSegments;->size()I -HSPLandroid/net/Uri$PathSegmentsBuilder;->add(Ljava/lang/String;)V -HSPLandroid/net/Uri$PathSegmentsBuilder;->build()Landroid/net/Uri$PathSegments; -HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;)V -HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;Landroid/net/Uri$StringUri-IA;)V -HSPLandroid/net/Uri$StringUri;->buildUpon()Landroid/net/Uri$Builder; -HSPLandroid/net/Uri$StringUri;->findFragmentSeparator()I -HSPLandroid/net/Uri$StringUri;->findSchemeSeparator()I -HSPLandroid/net/Uri$StringUri;->getAuthority()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getAuthorityPart()Landroid/net/Uri$Part; -HSPLandroid/net/Uri$StringUri;->getEncodedAuthority()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getEncodedFragment()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getEncodedPath()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getEncodedQuery()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getFragment()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getFragmentPart()Landroid/net/Uri$Part; -HSPLandroid/net/Uri$StringUri;->getPath()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getPathPart()Landroid/net/Uri$PathPart; -HSPLandroid/net/Uri$StringUri;->getPathSegments()Ljava/util/List; -HSPLandroid/net/Uri$StringUri;->getQuery()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getQueryPart()Landroid/net/Uri$Part; -HSPLandroid/net/Uri$StringUri;->getScheme()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->getSchemeSpecificPart()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->isHierarchical()Z -HSPLandroid/net/Uri$StringUri;->isRelative()Z -HSPLandroid/net/Uri$StringUri;->parseAuthority(Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parseFragment()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parsePath()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parsePath(Ljava/lang/String;I)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parseQuery()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->parseScheme()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->toString()Ljava/lang/String; -HSPLandroid/net/Uri$StringUri;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/Uri;-><init>()V -HSPLandroid/net/Uri;-><init>(Landroid/net/Uri-IA;)V -HSPLandroid/net/Uri;->checkContentUriWithoutPermission(Ljava/lang/String;I)V -HSPLandroid/net/Uri;->checkFileUriExposed(Ljava/lang/String;)V -HSPLandroid/net/Uri;->compareTo(Landroid/net/Uri;)I -HSPLandroid/net/Uri;->compareTo(Ljava/lang/Object;)I -HSPLandroid/net/Uri;->decode(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/net/Uri;->encode(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/net/Uri;->encode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/net/Uri;->equals(Ljava/lang/Object;)Z -HSPLandroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri; -HSPLandroid/net/Uri;->fromParts(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/net/Uri;->getBooleanQueryParameter(Ljava/lang/String;Z)Z -HSPLandroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String;+]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/net/Uri;->getQueryParameterNames()Ljava/util/Set;+]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/Set;Ljava/util/LinkedHashSet; -HSPLandroid/net/Uri;->hashCode()I -HSPLandroid/net/Uri;->isAbsolute()Z -HSPLandroid/net/Uri;->isAllowed(CLjava/lang/String;)Z+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/net/Uri;->isOpaque()Z -HSPLandroid/net/Uri;->normalizeScheme()Landroid/net/Uri; -HSPLandroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/net/Uri;->toSafeString()Ljava/lang/String; -HSPLandroid/net/Uri;->withAppendedPath(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/net/Uri;->writeToParcel(Landroid/os/Parcel;Landroid/net/Uri;)V -HSPLandroid/net/UriCodec;->appendDecoded(Ljava/lang/StringBuilder;Ljava/lang/String;ZLjava/nio/charset/Charset;Z)V+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer;]Ljava/nio/charset/Charset;Lcom/android/icu/charset/CharsetICU;]Ljava/nio/charset/CharsetDecoder;Lcom/android/icu/charset/CharsetDecoderICU; -HSPLandroid/net/UriCodec;->decode(Ljava/lang/String;ZLjava/nio/charset/Charset;Z)Ljava/lang/String; -HSPLandroid/net/UriCodec;->flushDecodingByteAccumulator(Ljava/lang/StringBuilder;Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Z)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer;]Ljava/nio/charset/CharsetDecoder;Lcom/android/icu/charset/CharsetDecoderICU; -HSPLandroid/net/UriCodec;->getNextCharacter(Ljava/lang/String;IILjava/lang/String;)C -HSPLandroid/net/UriCodec;->hexCharToValue(C)I -HSPLandroid/net/WebAddress;-><init>(Ljava/lang/String;)V -HSPLandroid/net/WebAddress;->toString()Ljava/lang/String; -HSPLandroid/net/WifiKey$1;->createFromParcel(Landroid/os/Parcel;)Landroid/net/WifiKey; -HSPLandroid/net/WifiKey$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/net/WifiKey;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/net/WifiKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/net/WifiKey;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/net/http/X509TrustManagerExtensions;-><init>(Ljavax/net/ssl/X509TrustManager;)V -HSPLandroid/net/http/X509TrustManagerExtensions;->checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/net/metrics/IpConnectivityLog;-><init>()V -HSPLandroid/net/vcn/VcnTransportInfo$1;-><init>()V -HSPLandroid/net/vcn/VcnTransportInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/net/vcn/VcnTransportInfo; -HSPLandroid/net/vcn/VcnTransportInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/net/vcn/VcnTransportInfo;-><clinit>()V -HSPLandroid/nfc/NfcServiceManager;-><init>()V -HSPLandroid/nfc/cardemulation/AidGroup$1;->createFromParcel(Landroid/os/Parcel;)Landroid/nfc/cardemulation/AidGroup; -HSPLandroid/nfc/cardemulation/AidGroup$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/nfc/cardemulation/AidGroup;-><init>(Ljava/util/List;Ljava/lang/String;)V -HSPLandroid/nfc/cardemulation/AidGroup;->isValidCategory(Ljava/lang/String;)Z -HSPLandroid/opengl/EGL14;->eglCreateWindowSurface(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLConfig;Ljava/lang/Object;[II)Landroid/opengl/EGLSurface; -HSPLandroid/opengl/EGLConfig;-><init>(J)V -HSPLandroid/opengl/EGLContext;-><init>(J)V -HSPLandroid/opengl/EGLDisplay;-><init>(J)V -HSPLandroid/opengl/EGLObjectHandle;->getNativeHandle()J -HSPLandroid/opengl/EGLSurface;-><init>(J)V -HSPLandroid/opengl/GLES20;->glVertexAttribPointer(IIIZILjava/nio/Buffer;)V -HSPLandroid/opengl/Matrix;->setIdentityM([FI)V -HSPLandroid/os/AsyncTask$1;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; -HSPLandroid/os/AsyncTask$3;-><init>(Landroid/os/AsyncTask;)V -HSPLandroid/os/AsyncTask$3;->call()Ljava/lang/Object; -HSPLandroid/os/AsyncTask$4;-><init>(Landroid/os/AsyncTask;Ljava/util/concurrent/Callable;)V -HSPLandroid/os/AsyncTask$4;->done()V -HSPLandroid/os/AsyncTask$AsyncTaskResult;-><init>(Landroid/os/AsyncTask;[Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask$InternalHandler;-><init>(Landroid/os/Looper;)V -HSPLandroid/os/AsyncTask$InternalHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/os/AsyncTask$SerialExecutor$1;-><init>(Landroid/os/AsyncTask$SerialExecutor;Ljava/lang/Runnable;)V -HSPLandroid/os/AsyncTask$SerialExecutor$1;->run()V -HSPLandroid/os/AsyncTask$SerialExecutor;->execute(Ljava/lang/Runnable;)V -HSPLandroid/os/AsyncTask$SerialExecutor;->scheduleNext()V -HSPLandroid/os/AsyncTask$WorkerRunnable;-><init>()V -HSPLandroid/os/AsyncTask$WorkerRunnable;-><init>(Landroid/os/AsyncTask$WorkerRunnable-IA;)V -HSPLandroid/os/AsyncTask;->-$$Nest$fgetmTaskInvoked(Landroid/os/AsyncTask;)Ljava/util/concurrent/atomic/AtomicBoolean; -HSPLandroid/os/AsyncTask;->-$$Nest$mfinish(Landroid/os/AsyncTask;Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask;->-$$Nest$mpostResult(Landroid/os/AsyncTask;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/AsyncTask;->-$$Nest$mpostResultIfNotInvoked(Landroid/os/AsyncTask;Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask;-><init>()V -HSPLandroid/os/AsyncTask;-><init>(Landroid/os/Looper;)V -HSPLandroid/os/AsyncTask;->cancel(Z)Z -HSPLandroid/os/AsyncTask;->execute(Ljava/lang/Runnable;)V -HSPLandroid/os/AsyncTask;->execute([Ljava/lang/Object;)Landroid/os/AsyncTask; -HSPLandroid/os/AsyncTask;->executeOnExecutor(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask; -HSPLandroid/os/AsyncTask;->finish(Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask;->getHandler()Landroid/os/Handler; -HSPLandroid/os/AsyncTask;->getMainHandler()Landroid/os/Handler; -HSPLandroid/os/AsyncTask;->getStatus()Landroid/os/AsyncTask$Status; -HSPLandroid/os/AsyncTask;->isCancelled()Z -HSPLandroid/os/AsyncTask;->onCancelled()V -HSPLandroid/os/AsyncTask;->onCancelled(Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask;->onPostExecute(Ljava/lang/Object;)V -HSPLandroid/os/AsyncTask;->onPreExecute()V -HSPLandroid/os/AsyncTask;->postResult(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/AsyncTask;->postResultIfNotInvoked(Ljava/lang/Object;)V -HSPLandroid/os/BaseBundle;-><init>()V -HSPLandroid/os/BaseBundle;-><init>(I)V -HSPLandroid/os/BaseBundle;-><init>(Landroid/os/BaseBundle;)V -HSPLandroid/os/BaseBundle;-><init>(Landroid/os/BaseBundle;Z)V -HSPLandroid/os/BaseBundle;-><init>(Landroid/os/Parcel;I)V -HSPLandroid/os/BaseBundle;-><init>(Ljava/lang/ClassLoader;I)V+]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/os/Bundle; -HSPLandroid/os/BaseBundle;->clear()V -HSPLandroid/os/BaseBundle;->containsKey(Ljava/lang/String;)Z -HSPLandroid/os/BaseBundle;->deepCopyValue(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->get(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->getArrayList(Ljava/lang/String;Ljava/lang/Class;)Ljava/util/ArrayList; -HSPLandroid/os/BaseBundle;->getBoolean(Ljava/lang/String;)Z -HSPLandroid/os/BaseBundle;->getBoolean(Ljava/lang/String;Z)Z -HSPLandroid/os/BaseBundle;->getBooleanArray(Ljava/lang/String;)[Z -HSPLandroid/os/BaseBundle;->getByteArray(Ljava/lang/String;)[B -HSPLandroid/os/BaseBundle;->getCharSequence(Ljava/lang/String;)Ljava/lang/CharSequence; -HSPLandroid/os/BaseBundle;->getCharSequenceArray(Ljava/lang/String;)[Ljava/lang/CharSequence; -HSPLandroid/os/BaseBundle;->getFloat(Ljava/lang/String;F)F -HSPLandroid/os/BaseBundle;->getInt(Ljava/lang/String;)I -HSPLandroid/os/BaseBundle;->getInt(Ljava/lang/String;I)I -HSPLandroid/os/BaseBundle;->getIntArray(Ljava/lang/String;)[I -HSPLandroid/os/BaseBundle;->getIntegerArrayList(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/os/BaseBundle;->getLong(Ljava/lang/String;)J -HSPLandroid/os/BaseBundle;->getLong(Ljava/lang/String;J)J -HSPLandroid/os/BaseBundle;->getLongArray(Ljava/lang/String;)[J -HSPLandroid/os/BaseBundle;->getSerializable(Ljava/lang/String;)Ljava/io/Serializable; -HSPLandroid/os/BaseBundle;->getSerializable(Ljava/lang/String;Ljava/lang/Class;)Ljava/io/Serializable; -HSPLandroid/os/BaseBundle;->getString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/BaseBundle;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/BaseBundle;->getStringArray(Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/os/BaseBundle;->getStringArrayList(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/os/BaseBundle;->getValue(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->getValue(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->getValue(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->getValueAt(ILjava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/BaseBundle;->initializeFromParcelLocked(Landroid/os/Parcel;ZZ)V -HSPLandroid/os/BaseBundle;->isEmpty()Z -HSPLandroid/os/BaseBundle;->isEmptyParcel()Z -HSPLandroid/os/BaseBundle;->isEmptyParcel(Landroid/os/Parcel;)Z -HSPLandroid/os/BaseBundle;->isParcelled()Z -HSPLandroid/os/BaseBundle;->keySet()Ljava/util/Set;+]Landroid/os/BaseBundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/os/BaseBundle;->putAll(Landroid/os/PersistableBundle;)V -HSPLandroid/os/BaseBundle;->putAll(Landroid/util/ArrayMap;)V -HSPLandroid/os/BaseBundle;->putBoolean(Ljava/lang/String;Z)V -HSPLandroid/os/BaseBundle;->putBooleanArray(Ljava/lang/String;[Z)V -HSPLandroid/os/BaseBundle;->putByteArray(Ljava/lang/String;[B)V -HSPLandroid/os/BaseBundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V -HSPLandroid/os/BaseBundle;->putCharSequenceArray(Ljava/lang/String;[Ljava/lang/CharSequence;)V -HSPLandroid/os/BaseBundle;->putDouble(Ljava/lang/String;D)V -HSPLandroid/os/BaseBundle;->putFloat(Ljava/lang/String;F)V -HSPLandroid/os/BaseBundle;->putInt(Ljava/lang/String;I)V -HSPLandroid/os/BaseBundle;->putIntArray(Ljava/lang/String;[I)V -HSPLandroid/os/BaseBundle;->putLong(Ljava/lang/String;J)V -HSPLandroid/os/BaseBundle;->putLongArray(Ljava/lang/String;[J)V -HSPLandroid/os/BaseBundle;->putSerializable(Ljava/lang/String;Ljava/io/Serializable;)V -HSPLandroid/os/BaseBundle;->putString(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/BaseBundle;->putStringArray(Ljava/lang/String;[Ljava/lang/String;)V -HSPLandroid/os/BaseBundle;->putStringArrayList(Ljava/lang/String;Ljava/util/ArrayList;)V -HSPLandroid/os/BaseBundle;->readFromParcelInner(Landroid/os/Parcel;)V -HSPLandroid/os/BaseBundle;->readFromParcelInner(Landroid/os/Parcel;I)V -HSPLandroid/os/BaseBundle;->recycleParcel(Landroid/os/Parcel;)V -HSPLandroid/os/BaseBundle;->remove(Ljava/lang/String;)V -HSPLandroid/os/BaseBundle;->setClassLoader(Ljava/lang/ClassLoader;)V -HSPLandroid/os/BaseBundle;->setShouldDefuse(Z)V -HSPLandroid/os/BaseBundle;->size()I -HSPLandroid/os/BaseBundle;->unparcel()V+]Landroid/os/BaseBundle;Landroid/os/Bundle; -HSPLandroid/os/BaseBundle;->unparcel(Z)V -HSPLandroid/os/BaseBundle;->unwrapLazyValueFromMapLocked(ILjava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/function/BiFunction;Landroid/os/Parcel$LazyValue; -HSPLandroid/os/BaseBundle;->writeToParcelInner(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/os/BatteryManager;-><init>(Landroid/content/Context;Lcom/android/internal/app/IBatteryStats;Landroid/os/IBatteryPropertiesRegistrar;)V -HSPLandroid/os/BatteryManager;->getIntProperty(I)I -HSPLandroid/os/BatteryManager;->getLongProperty(I)J -HSPLandroid/os/BatteryManager;->isCharging()Z -HSPLandroid/os/BatteryManager;->queryProperty(I)J -HSPLandroid/os/BatteryProperty;-><init>()V -HSPLandroid/os/BatteryProperty;->getLong()J -HSPLandroid/os/BatteryProperty;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/os/BatterySaverPolicyConfig;->getAdjustBrightnessFactor()F -HSPLandroid/os/BatterySaverPolicyConfig;->getAdvertiseIsEnabled()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDeferFullBackup()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDeferKeyValueBackup()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDeviceSpecificSettings()Ljava/util/Map; -HSPLandroid/os/BatterySaverPolicyConfig;->getDisableAnimation()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDisableAod()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDisableLaunchBoost()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDisableOptionalSensors()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getDisableVibration()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getEnableAdjustBrightness()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getEnableDataSaver()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getEnableFirewall()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getEnableQuickDoze()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getForceAllAppsStandby()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getForceBackgroundCheck()Z -HSPLandroid/os/BatterySaverPolicyConfig;->getLocationMode()I -HSPLandroid/os/BatteryStats$Counter;-><init>()V -HSPLandroid/os/BatteryStats$LongCounter;-><init>()V -HSPLandroid/os/BatteryStats$Timer;-><init>()V -HSPLandroid/os/BatteryStats$Uid$Pkg$Serv;-><init>()V -HSPLandroid/os/BatteryStats$Uid$Wakelock;-><init>()V -HSPLandroid/os/BatteryStatsManager;-><init>(Lcom/android/internal/app/IBatteryStats;)V -HSPLandroid/os/Binder$$ExternalSyntheticLambda1;->resolveWorkSourceUid(I)I -HSPLandroid/os/Binder$PropagateWorkSourceTransactListener;->onTransactEnded(Ljava/lang/Object;)V -HSPLandroid/os/Binder$PropagateWorkSourceTransactListener;->onTransactStarted(Landroid/os/IBinder;I)Ljava/lang/Object; -HSPLandroid/os/Binder$ProxyTransactListener;->onTransactStarted(Landroid/os/IBinder;II)Ljava/lang/Object;+]Landroid/os/Binder$ProxyTransactListener;Landroid/os/Binder$PropagateWorkSourceTransactListener; -HSPLandroid/os/Binder;-><init>()V -HSPLandroid/os/Binder;-><init>(Ljava/lang/String;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/os/Binder;->allowBlocking(Landroid/os/IBinder;)Landroid/os/IBinder; -HSPLandroid/os/Binder;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V -HSPLandroid/os/Binder;->checkParcel(Landroid/os/IBinder;ILandroid/os/Parcel;Ljava/lang/String;)V -HSPLandroid/os/Binder;->copyAllowBlocking(Landroid/os/IBinder;Landroid/os/IBinder;)V -HSPLandroid/os/Binder;->defaultBlocking(Landroid/os/IBinder;)Landroid/os/IBinder; -HSPLandroid/os/Binder;->doDump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V -HSPLandroid/os/Binder;->dump(Ljava/io/FileDescriptor;[Ljava/lang/String;)V -HSPLandroid/os/Binder;->execTransact(IJJI)Z+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Binder;->execTransactInternal(ILandroid/os/Parcel;Landroid/os/Parcel;II)Z+]Landroid/os/Binder;missing_types -HSPLandroid/os/Binder;->getCallingUserHandle()Landroid/os/UserHandle; -HSPLandroid/os/Binder;->getInterfaceDescriptor()Ljava/lang/String; -HSPLandroid/os/Binder;->getMaxTransactionId()I -HSPLandroid/os/Binder;->getSimpleDescriptor()Ljava/lang/String; -HSPLandroid/os/Binder;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/os/Binder;->getTransactionTraceName(I)Ljava/lang/String;+]Landroid/os/Binder;megamorphic_types]Ljava/lang/StringBuffer;Ljava/lang/StringBuffer;]Ljava/util/concurrent/atomic/AtomicReferenceArray;Ljava/util/concurrent/atomic/AtomicReferenceArray; -HSPLandroid/os/Binder;->isBinderAlive()Z -HSPLandroid/os/Binder;->isDirectlyHandlingTransaction()Z -HSPLandroid/os/Binder;->isProxy(Landroid/os/IInterface;)Z -HSPLandroid/os/Binder;->isStackTrackingEnabled()Z -HSPLandroid/os/Binder;->lambda$static$1(I)I -HSPLandroid/os/Binder;->linkToDeath(Landroid/os/IBinder$DeathRecipient;I)V -HSPLandroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/Binder;->pingBinder()Z -HSPLandroid/os/Binder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface; -HSPLandroid/os/Binder;->setProxyTransactListener(Landroid/os/Binder$ProxyTransactListener;)V -HSPLandroid/os/Binder;->setTransactionCallback(Landroid/os/IBinderCallback;)V -HSPLandroid/os/Binder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/Binder;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z -HSPLandroid/os/Binder;->withCleanCallingIdentity(Lcom/android/internal/util/FunctionalUtils$ThrowingRunnable;)V -HSPLandroid/os/BinderProxy$ProxyMap;->get(J)Landroid/os/BinderProxy;+]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/os/BinderProxy$ProxyMap;->hash(J)I -HSPLandroid/os/BinderProxy$ProxyMap;->remove(II)V -HSPLandroid/os/BinderProxy$ProxyMap;->set(JLandroid/os/BinderProxy;)V -HSPLandroid/os/BinderProxy;-><init>(J)V -HSPLandroid/os/BinderProxy;->getInstance(JJ)Landroid/os/BinderProxy;+]Landroid/os/BinderProxy$ProxyMap;Landroid/os/BinderProxy$ProxyMap;]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry; -HSPLandroid/os/BinderProxy;->linkToDeath(Landroid/os/IBinder$DeathRecipient;I)V+]Ljava/util/List;Ljava/util/Collections$SynchronizedRandomAccessList; -HSPLandroid/os/BinderProxy;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface; -HSPLandroid/os/BinderProxy;->sendDeathNotice(Landroid/os/IBinder$DeathRecipient;Landroid/os/IBinder;)V -HSPLandroid/os/BinderProxy;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/os/BinderProxy;Landroid/os/BinderProxy;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/BinderProxy;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z+]Ljava/util/List;Ljava/util/Collections$SynchronizedRandomAccessList; -HSPLandroid/os/BluetoothServiceManager$ServiceRegisterer;-><init>(Ljava/lang/String;)V -HSPLandroid/os/BluetoothServiceManager$ServiceRegisterer;->get()Landroid/os/IBinder; -HSPLandroid/os/BluetoothServiceManager;-><init>()V -HSPLandroid/os/BluetoothServiceManager;->getBluetoothManagerServiceRegisterer()Landroid/os/BluetoothServiceManager$ServiceRegisterer; -HSPLandroid/os/Build$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/Build;->getRadioVersion()Ljava/lang/String; -HSPLandroid/os/Build;->getSerial()Ljava/lang/String; -HSPLandroid/os/Build;->isDebuggable()Z -HSPLandroid/os/Build;->joinListOrElse(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/Build;->lambda$joinListOrElse$0(Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/os/Bundle$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/Bundle; -HSPLandroid/os/Bundle$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/Bundle$1;->newArray(I)[Landroid/os/Bundle; -HSPLandroid/os/Bundle$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/Bundle;-><init>()V -HSPLandroid/os/Bundle;-><init>(I)V -HSPLandroid/os/Bundle;-><init>(Landroid/os/Bundle;)V -HSPLandroid/os/Bundle;-><init>(Landroid/os/Bundle;Z)V -HSPLandroid/os/Bundle;-><init>(Landroid/os/Parcel;I)V -HSPLandroid/os/Bundle;-><init>(Landroid/os/PersistableBundle;)V -HSPLandroid/os/Bundle;->clear()V -HSPLandroid/os/Bundle;->clone()Ljava/lang/Object; -HSPLandroid/os/Bundle;->deepCopy()Landroid/os/Bundle; -HSPLandroid/os/Bundle;->forPair(Ljava/lang/String;Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/os/Bundle;->getBinder(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/os/Bundle;->getByteArray(Ljava/lang/String;)[B -HSPLandroid/os/Bundle;->getCharSequence(Ljava/lang/String;)Ljava/lang/CharSequence; -HSPLandroid/os/Bundle;->getFloat(Ljava/lang/String;)F -HSPLandroid/os/Bundle;->getFloat(Ljava/lang/String;F)F -HSPLandroid/os/Bundle;->getIntegerArrayList(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable; -HSPLandroid/os/Bundle;->getParcelable(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Bundle;->getParcelableArray(Ljava/lang/String;)[Landroid/os/Parcelable; -HSPLandroid/os/Bundle;->getParcelableArray(Ljava/lang/String;Ljava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/os/Bundle;->getParcelableArrayList(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/os/Bundle;->getSerializable(Ljava/lang/String;)Ljava/io/Serializable; -HSPLandroid/os/Bundle;->getSerializable(Ljava/lang/String;Ljava/lang/Class;)Ljava/io/Serializable; -HSPLandroid/os/Bundle;->getSparseParcelableArray(Ljava/lang/String;)Landroid/util/SparseArray; -HSPLandroid/os/Bundle;->getStringArrayList(Ljava/lang/String;)Ljava/util/ArrayList; -HSPLandroid/os/Bundle;->hasFileDescriptors()Z -HSPLandroid/os/Bundle;->maybePrefillHasFds()V -HSPLandroid/os/Bundle;->putAll(Landroid/os/Bundle;)V -HSPLandroid/os/Bundle;->putBinder(Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/os/Bundle;->putByteArray(Ljava/lang/String;[B)V -HSPLandroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V -HSPLandroid/os/Bundle;->putCharSequenceArray(Ljava/lang/String;[Ljava/lang/CharSequence;)V -HSPLandroid/os/Bundle;->putFloat(Ljava/lang/String;F)V -HSPLandroid/os/Bundle;->putIntegerArrayList(Ljava/lang/String;Ljava/util/ArrayList;)V -HSPLandroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V -HSPLandroid/os/Bundle;->putParcelableArray(Ljava/lang/String;[Landroid/os/Parcelable;)V -HSPLandroid/os/Bundle;->putParcelableArrayList(Ljava/lang/String;Ljava/util/ArrayList;)V -HSPLandroid/os/Bundle;->putParcelableList(Ljava/lang/String;Ljava/util/List;)V -HSPLandroid/os/Bundle;->putSerializable(Ljava/lang/String;Ljava/io/Serializable;)V -HSPLandroid/os/Bundle;->putSparseParcelableArray(Ljava/lang/String;Landroid/util/SparseArray;)V -HSPLandroid/os/Bundle;->putStringArrayList(Ljava/lang/String;Ljava/util/ArrayList;)V -HSPLandroid/os/Bundle;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/os/Bundle;->remove(Ljava/lang/String;)V -HSPLandroid/os/Bundle;->setAllowFds(Z)Z -HSPLandroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V -HSPLandroid/os/Bundle;->setDefusable(Landroid/os/Bundle;Z)Landroid/os/Bundle; -HSPLandroid/os/Bundle;->setDefusable(Z)V -HSPLandroid/os/Bundle;->toString()Ljava/lang/String; -HSPLandroid/os/Bundle;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/CancellationSignal$Transport;-><init>()V -HSPLandroid/os/CancellationSignal$Transport;->cancel()V -HSPLandroid/os/CancellationSignal;-><init>()V -HSPLandroid/os/CancellationSignal;->cancel()V -HSPLandroid/os/CancellationSignal;->createTransport()Landroid/os/ICancellationSignal; -HSPLandroid/os/CancellationSignal;->fromTransport(Landroid/os/ICancellationSignal;)Landroid/os/CancellationSignal; -HSPLandroid/os/CancellationSignal;->isCanceled()Z -HSPLandroid/os/CancellationSignal;->setOnCancelListener(Landroid/os/CancellationSignal$OnCancelListener;)V -HSPLandroid/os/CancellationSignal;->setRemote(Landroid/os/ICancellationSignal;)V -HSPLandroid/os/CancellationSignal;->throwIfCanceled()V -HSPLandroid/os/CancellationSignal;->waitForCancelFinishedLocked()V -HSPLandroid/os/CombinedVibration$Mono$1;-><init>()V -HSPLandroid/os/CombinedVibration$Mono;-><clinit>()V -HSPLandroid/os/CombinedVibration$Mono;-><init>(Landroid/os/VibrationEffect;)V -HSPLandroid/os/CombinedVibration$Mono;->validate()V -HSPLandroid/os/CombinedVibration;-><init>()V -HSPLandroid/os/ConditionVariable;-><init>()V -HSPLandroid/os/ConditionVariable;-><init>(Z)V -HSPLandroid/os/ConditionVariable;->block()V -HSPLandroid/os/ConditionVariable;->block(J)Z -HSPLandroid/os/ConditionVariable;->close()V -HSPLandroid/os/ConditionVariable;->open()V -HSPLandroid/os/DdmSyncStageUpdater;-><clinit>()V -HSPLandroid/os/DdmSyncStageUpdater;-><init>()V -HSPLandroid/os/DdmSyncStageUpdater;->next(Landroid/os/DdmSyncState$Stage;)V -HSPLandroid/os/DdmSyncState$Stage;->$values()[Landroid/os/DdmSyncState$Stage; -HSPLandroid/os/DdmSyncState$Stage;-><clinit>()V -HSPLandroid/os/DdmSyncState$Stage;-><init>(Ljava/lang/String;ILjava/lang/String;)V -HSPLandroid/os/DdmSyncState$Stage;->toInt()I -HSPLandroid/os/DdmSyncState$Stage;->values()[Landroid/os/DdmSyncState$Stage; -HSPLandroid/os/DdmSyncState;-><clinit>()V -HSPLandroid/os/DdmSyncState;->next(Landroid/os/DdmSyncState$Stage;)V -HSPLandroid/os/DeadObjectException;-><init>()V -HSPLandroid/os/DeadObjectException;-><init>(Ljava/lang/String;)V -HSPLandroid/os/Debug$MemoryInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/Debug$MemoryInfo; -HSPLandroid/os/Debug$MemoryInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/Debug$MemoryInfo$1;->newArray(I)[Landroid/os/Debug$MemoryInfo; -HSPLandroid/os/Debug$MemoryInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/Debug$MemoryInfo;-><init>()V -HSPLandroid/os/Debug$MemoryInfo;->getMemoryStat(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/Debug$MemoryInfo;->getMemoryStats()Ljava/util/Map; -HSPLandroid/os/Debug$MemoryInfo;->getOtherLabel(I)Ljava/lang/String; -HSPLandroid/os/Debug$MemoryInfo;->getOtherPrivate(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherPrivateClean(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherPrivateDirty(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherPss(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherRss(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherSharedClean(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherSharedDirty(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherSwappablePss(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherSwappedOut(I)I -HSPLandroid/os/Debug$MemoryInfo;->getOtherSwappedOutPss(I)I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryCode()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryCodeRss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryGraphics()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryGraphicsRss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryJavaHeap()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryJavaHeapRss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryNativeHeap()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryNativeHeapRss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryPrivateOther()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryStack()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryStackRss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummarySystem()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryTotalPss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryTotalSwap()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryTotalSwapPss()I -HSPLandroid/os/Debug$MemoryInfo;->getSummaryUnknownRss()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalPrivateClean()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalPrivateDirty()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalPss()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalRss()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalSharedClean()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalSharedDirty()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalSwappablePss()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalSwappedOut()I -HSPLandroid/os/Debug$MemoryInfo;->getTotalSwappedOutPss()I -HSPLandroid/os/Debug$MemoryInfo;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/os/Debug;->getCaller([Ljava/lang/StackTraceElement;I)Ljava/lang/String; -HSPLandroid/os/Debug;->getCallers(ILjava/lang/String;)Ljava/lang/String; -HSPLandroid/os/Debug;->isDebuggerConnected()Z -HSPLandroid/os/Debug;->threadCpuTimeNanos()J -HSPLandroid/os/Debug;->waitingForDebugger()Z -HSPLandroid/os/DeviceIdleManager;-><init>(Landroid/content/Context;Landroid/os/IDeviceIdleController;)V -HSPLandroid/os/DeviceIdleManager;->getService()Landroid/os/IDeviceIdleController; -HSPLandroid/os/DropBoxManager$Entry$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/DropBoxManager$Entry; -HSPLandroid/os/DropBoxManager$Entry$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/DropBoxManager$Entry;-><init>(Ljava/lang/String;JLandroid/os/ParcelFileDescriptor;I)V -HSPLandroid/os/DropBoxManager$Entry;-><init>(Ljava/lang/String;JLjava/io/File;I)V -HSPLandroid/os/DropBoxManager$Entry;->close()V -HSPLandroid/os/DropBoxManager$Entry;->getFlags()I -HSPLandroid/os/DropBoxManager$Entry;->getInputStream()Ljava/io/InputStream; -HSPLandroid/os/DropBoxManager$Entry;->getTag()Ljava/lang/String; -HSPLandroid/os/DropBoxManager$Entry;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/DropBoxManager;-><init>(Landroid/content/Context;Lcom/android/internal/os/IDropBoxManagerService;)V -HSPLandroid/os/DropBoxManager;->addFile(Ljava/lang/String;Ljava/io/File;I)V -HSPLandroid/os/DropBoxManager;->addText(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/Environment$UserEnvironment;-><init>(I)V -HSPLandroid/os/Environment$UserEnvironment;->buildExternalStorageAppCacheDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment$UserEnvironment;->buildExternalStorageAppFilesDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment$UserEnvironment;->buildExternalStorageAppMediaDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment$UserEnvironment;->buildExternalStoragePublicDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment$UserEnvironment;->getExternalDirs()[Ljava/io/File; -HSPLandroid/os/Environment;->buildExternalStorageAppFilesDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment;->buildExternalStorageAppMediaDirs(Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment;->buildPath(Ljava/io/File;[Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->buildPaths([Ljava/io/File;[Ljava/lang/String;)[Ljava/io/File; -HSPLandroid/os/Environment;->getDataDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getDataDirectory(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataDirectoryPath()Ljava/lang/String; -HSPLandroid/os/Environment;->getDataDirectoryPath(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/Environment;->getDataPreloadsDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getDataProfilesDeDirectory(I)Ljava/io/File; -HSPLandroid/os/Environment;->getDataProfilesDePackageDirectory(ILjava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataRefProfilesDePackageDirectory(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserCeDirectory(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserCeDirectory(Ljava/lang/String;I)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserCePackageDirectory(Ljava/lang/String;ILjava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserDeDirectory(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserDeDirectory(Ljava/lang/String;I)Ljava/io/File; -HSPLandroid/os/Environment;->getDataUserDePackageDirectory(Ljava/lang/String;ILjava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getDownloadCacheDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getExternalStorageDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getExternalStoragePublicDirectory(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/Environment;->getExternalStorageState()Ljava/lang/String; -HSPLandroid/os/Environment;->getExternalStorageState(Ljava/io/File;)Ljava/lang/String; -HSPLandroid/os/Environment;->getOemDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getProductDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getRootDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getSystemExtDirectory()Ljava/io/File; -HSPLandroid/os/Environment;->getUserConfigDirectory(I)Ljava/io/File; -HSPLandroid/os/Environment;->initForCurrentUser()V -HSPLandroid/os/Environment;->isExternalStorageEmulated()Z -HSPLandroid/os/Environment;->isExternalStorageEmulated(Ljava/io/File;)Z -HSPLandroid/os/Environment;->isExternalStorageRemovable(Ljava/io/File;)Z -HSPLandroid/os/Environment;->throwIfUserRequired()V -HSPLandroid/os/FactoryTest;->getMode()I -HSPLandroid/os/FileObserver$ObserverThread;-><init>()V -HSPLandroid/os/FileObserver$ObserverThread;->onEvent(IILjava/lang/String;)V -HSPLandroid/os/FileObserver$ObserverThread;->run()V -HSPLandroid/os/FileObserver$ObserverThread;->startWatching(Ljava/util/List;ILandroid/os/FileObserver;)[I -HSPLandroid/os/FileObserver;-><clinit>()V -HSPLandroid/os/FileObserver;-><init>(Ljava/io/File;I)V -HSPLandroid/os/FileObserver;-><init>(Ljava/lang/String;I)V -HSPLandroid/os/FileObserver;-><init>(Ljava/util/List;I)V -HSPLandroid/os/FileObserver;->startWatching()V -HSPLandroid/os/FileUtils;->buildValidExtFilename(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/FileUtils;->bytesToFile(Ljava/lang/String;[B)V -HSPLandroid/os/FileUtils;->closeQuietly(Ljava/lang/AutoCloseable;)V -HSPLandroid/os/FileUtils;->contains(Ljava/io/File;Ljava/io/File;)Z -HSPLandroid/os/FileUtils;->contains(Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/os/FileUtils;->convertToModernFd(Ljava/io/FileDescriptor;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/FileUtils;->copy(Ljava/io/InputStream;Ljava/io/OutputStream;)J -HSPLandroid/os/FileUtils;->copy(Ljava/io/InputStream;Ljava/io/OutputStream;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Landroid/os/FileUtils$ProgressListener;)J -HSPLandroid/os/FileUtils;->copyInternalUserspace(Ljava/io/InputStream;Ljava/io/OutputStream;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Landroid/os/FileUtils$ProgressListener;)J -HSPLandroid/os/FileUtils;->getMediaProviderAppId(Landroid/content/Context;)I -HSPLandroid/os/FileUtils;->isValidExtFilename(Ljava/lang/String;)Z -HSPLandroid/os/FileUtils;->listFilesOrEmpty(Ljava/io/File;Ljava/io/FilenameFilter;)[Ljava/io/File; -HSPLandroid/os/FileUtils;->listOrEmpty(Ljava/io/File;)[Ljava/lang/String; -HSPLandroid/os/FileUtils;->newFileOrNull(Ljava/lang/String;)Ljava/io/File; -HSPLandroid/os/FileUtils;->setPermissions(Ljava/lang/String;III)I -HSPLandroid/os/FileUtils;->sync(Ljava/io/FileOutputStream;)Z -HSPLandroid/os/FileUtils;->translateModePfdToPosix(I)I -HSPLandroid/os/FileUtils;->translateModePosixToPfd(I)I -HSPLandroid/os/FileUtils;->translateModeStringToPosix(Ljava/lang/String;)I -HSPLandroid/os/FileUtils;->trimFilename(Ljava/lang/StringBuilder;I)V -HSPLandroid/os/GraphicsEnvironment;->chooseDriver(Landroid/content/Context;Landroid/os/Bundle;Landroid/content/pm/PackageManager;Ljava/lang/String;Landroid/content/pm/ApplicationInfo;)Z -HSPLandroid/os/GraphicsEnvironment;->chooseDriverInternal(Landroid/os/Bundle;Landroid/content/pm/ApplicationInfo;)Ljava/lang/String; -HSPLandroid/os/GraphicsEnvironment;->debugLayerEnabled(Landroid/os/Bundle;Ljava/lang/String;Landroid/content/pm/ApplicationInfo;)Z -HSPLandroid/os/GraphicsEnvironment;->getAppInfoWithMetadata(Landroid/content/Context;Landroid/content/pm/PackageManager;Ljava/lang/String;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/os/GraphicsEnvironment;->getGlobalSettingsString(Landroid/content/ContentResolver;Landroid/os/Bundle;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/os/GraphicsEnvironment;->getInstance()Landroid/os/GraphicsEnvironment; -HSPLandroid/os/GraphicsEnvironment;->getPackageIndex(Ljava/lang/String;Ljava/util/List;)I -HSPLandroid/os/GraphicsEnvironment;->getVulkanVersion(Landroid/content/pm/PackageManager;)I -HSPLandroid/os/GraphicsEnvironment;->queryAngleChoiceInternal(Landroid/content/Context;Landroid/os/Bundle;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/GraphicsEnvironment;->setLayerPaths(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/GraphicsEnvironment;->setup(Landroid/content/Context;Landroid/os/Bundle;)V -HSPLandroid/os/GraphicsEnvironment;->setupAngle(Landroid/content/Context;Landroid/os/Bundle;Landroid/content/pm/PackageManager;Ljava/lang/String;)Z -HSPLandroid/os/GraphicsEnvironment;->setupGpuLayers(Landroid/content/Context;Landroid/os/Bundle;Landroid/content/pm/PackageManager;Ljava/lang/String;Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/os/GraphicsEnvironment;->shouldShowAngleInUseDialogBox(Landroid/content/Context;)Z -HSPLandroid/os/GraphicsEnvironment;->showAngleInUseDialogBox(Landroid/content/Context;)V -HSPLandroid/os/Handler$BlockingRunnable;-><init>(Ljava/lang/Runnable;)V -HSPLandroid/os/Handler$BlockingRunnable;->postAndWait(Landroid/os/Handler;J)Z -HSPLandroid/os/Handler$BlockingRunnable;->run()V -HSPLandroid/os/Handler$MessengerImpl;-><init>(Landroid/os/Handler;)V -HSPLandroid/os/Handler$MessengerImpl;-><init>(Landroid/os/Handler;Landroid/os/Handler$MessengerImpl-IA;)V -HSPLandroid/os/Handler$MessengerImpl;->send(Landroid/os/Message;)V -HSPLandroid/os/Handler;-><init>()V -HSPLandroid/os/Handler;-><init>(Landroid/os/Handler$Callback;)V -HSPLandroid/os/Handler;-><init>(Landroid/os/Handler$Callback;Z)V -HSPLandroid/os/Handler;-><init>(Landroid/os/Looper;)V -HSPLandroid/os/Handler;-><init>(Landroid/os/Looper;Landroid/os/Handler$Callback;)V -HSPLandroid/os/Handler;-><init>(Landroid/os/Looper;Landroid/os/Handler$Callback;Z)V -HSPLandroid/os/Handler;-><init>(Landroid/os/Looper;Landroid/os/Handler$Callback;ZZ)V -HSPLandroid/os/Handler;-><init>(Z)V -HSPLandroid/os/Handler;->createAsync(Landroid/os/Looper;)Landroid/os/Handler; -HSPLandroid/os/Handler;->disallowNullArgumentIfShared(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/Handler;->dispatchMessage(Landroid/os/Message;)V+]Landroid/os/Handler;missing_types -HSPLandroid/os/Handler;->enqueueMessage(Landroid/os/MessageQueue;Landroid/os/Message;J)Z+]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue;Landroid/os/MessageQueue; -HSPLandroid/os/Handler;->executeOrSendMessage(Landroid/os/Message;)Z -HSPLandroid/os/Handler;->getIMessenger()Landroid/os/IMessenger; -HSPLandroid/os/Handler;->getLooper()Landroid/os/Looper; -HSPLandroid/os/Handler;->getMain()Landroid/os/Handler; -HSPLandroid/os/Handler;->getPostMessage(Ljava/lang/Runnable;)Landroid/os/Message; -HSPLandroid/os/Handler;->getPostMessage(Ljava/lang/Runnable;Ljava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Handler;->getTraceName(Landroid/os/Message;)Ljava/lang/String; -HSPLandroid/os/Handler;->handleCallback(Landroid/os/Message;)V+]Ljava/lang/Runnable;missing_types -HSPLandroid/os/Handler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/os/Handler;->hasCallbacks(Ljava/lang/Runnable;)Z -HSPLandroid/os/Handler;->hasMessages(I)Z -HSPLandroid/os/Handler;->hasMessages(ILjava/lang/Object;)Z -HSPLandroid/os/Handler;->obtainMessage()Landroid/os/Message; -HSPLandroid/os/Handler;->obtainMessage(I)Landroid/os/Message; -HSPLandroid/os/Handler;->obtainMessage(III)Landroid/os/Message; -HSPLandroid/os/Handler;->obtainMessage(IIILjava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Handler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Handler;->post(Ljava/lang/Runnable;)Z+]Landroid/os/Handler;missing_types -HSPLandroid/os/Handler;->postAtFrontOfQueue(Ljava/lang/Runnable;)Z -HSPLandroid/os/Handler;->postAtTime(Ljava/lang/Runnable;J)Z -HSPLandroid/os/Handler;->postAtTime(Ljava/lang/Runnable;Ljava/lang/Object;J)Z -HSPLandroid/os/Handler;->postDelayed(Ljava/lang/Runnable;IJ)Z -HSPLandroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z -HSPLandroid/os/Handler;->postDelayed(Ljava/lang/Runnable;Ljava/lang/Object;J)Z -HSPLandroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V -HSPLandroid/os/Handler;->removeCallbacksAndMessages(Ljava/lang/Object;)V -HSPLandroid/os/Handler;->removeMessages(I)V -HSPLandroid/os/Handler;->removeMessages(ILjava/lang/Object;)V -HSPLandroid/os/Handler;->runWithScissors(Ljava/lang/Runnable;J)Z -HSPLandroid/os/Handler;->sendEmptyMessage(I)Z -HSPLandroid/os/Handler;->sendEmptyMessageAtTime(IJ)Z -HSPLandroid/os/Handler;->sendEmptyMessageDelayed(IJ)Z -HSPLandroid/os/Handler;->sendMessage(Landroid/os/Message;)Z -HSPLandroid/os/Handler;->sendMessageAtFrontOfQueue(Landroid/os/Message;)Z -HSPLandroid/os/Handler;->sendMessageAtTime(Landroid/os/Message;J)Z -HSPLandroid/os/Handler;->sendMessageDelayed(Landroid/os/Message;J)Z+]Landroid/os/Handler;missing_types -HSPLandroid/os/Handler;->toString()Ljava/lang/String; -HSPLandroid/os/HandlerExecutor;-><init>(Landroid/os/Handler;)V -HSPLandroid/os/HandlerExecutor;->execute(Ljava/lang/Runnable;)V -HSPLandroid/os/HandlerThread;-><init>(Ljava/lang/String;)V -HSPLandroid/os/HandlerThread;-><init>(Ljava/lang/String;I)V -HSPLandroid/os/HandlerThread;->getLooper()Landroid/os/Looper; -HSPLandroid/os/HandlerThread;->getThreadHandler()Landroid/os/Handler; -HSPLandroid/os/HandlerThread;->getThreadId()I -HSPLandroid/os/HandlerThread;->onCreated()V -HSPLandroid/os/HandlerThread;->onLooperPrepared()V -HSPLandroid/os/HandlerThread;->quit()Z -HSPLandroid/os/HandlerThread;->quitSafely()Z -HSPLandroid/os/HandlerThread;->run()V -HSPLandroid/os/HwBinder;-><init>()V -HSPLandroid/os/HwBinder;->getService(Ljava/lang/String;Ljava/lang/String;)Landroid/os/IHwBinder; -HSPLandroid/os/HwBlob;-><init>(I)V -HSPLandroid/os/HwBlob;->wrapArray([B)[Ljava/lang/Byte; -HSPLandroid/os/HwParcel;-><init>()V -HSPLandroid/os/HwParcel;-><init>(Z)V -HSPLandroid/os/HwParcel;->readInt8Vector()Ljava/util/ArrayList; -HSPLandroid/os/HwParcel;->readStringVector()Ljava/util/ArrayList; -HSPLandroid/os/HwParcel;->writeInt8Vector(Ljava/util/ArrayList;)V -HSPLandroid/os/HwParcel;->writeStringVector(Ljava/util/ArrayList;)V -HSPLandroid/os/HwRemoteBinder;-><init>()V -HSPLandroid/os/HwRemoteBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IHwInterface; -HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->getProperty(ILandroid/os/BatteryProperty;)I -HSPLandroid/os/IBatteryPropertiesRegistrar$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IBatteryPropertiesRegistrar; -HSPLandroid/os/IBinder$DeathRecipient;->binderDied(Landroid/os/IBinder;)V+]Landroid/os/IBinder$DeathRecipient;Landroid/os/RemoteCallbackList$Callback; -HSPLandroid/os/IBinder;->getSuggestedMaxIpcSizeBytes()I -HSPLandroid/os/ICancellationSignal$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/ICancellationSignal$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/ICancellationSignal$Stub$Proxy;->cancel()V -HSPLandroid/os/ICancellationSignal$Stub;-><init>()V -HSPLandroid/os/ICancellationSignal$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/ICancellationSignal$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/ICancellationSignal; -HSPLandroid/os/IDeviceIdentifiersPolicyService$Stub$Proxy;->getSerialForPackage(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/IDeviceIdentifiersPolicyService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IDeviceIdentifiersPolicyService; -HSPLandroid/os/IDeviceIdleController$Stub$Proxy;->isPowerSaveWhitelistApp(Ljava/lang/String;)Z -HSPLandroid/os/IDeviceIdleController$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IDeviceIdleController; -HSPLandroid/os/IHintManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IHintManager$Stub$Proxy;->getHintSessionPreferredRate()J -HSPLandroid/os/IHintManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IHintManager; -HSPLandroid/os/IHintSession$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IHintSession; -HSPLandroid/os/IMessenger$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IMessenger$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IMessenger$Stub$Proxy;->send(Landroid/os/Message;)V -HSPLandroid/os/IMessenger$Stub;-><init>()V -HSPLandroid/os/IMessenger$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IMessenger$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IMessenger; -HSPLandroid/os/IMessenger$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/os/IMessenger$Stub;->getMaxTransactionId()I -HSPLandroid/os/IMessenger$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/os/IMessenger$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/INetworkManagementService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/INetworkManagementService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/INetworkManagementService$Stub$Proxy;->setUidCleartextNetworkPolicy(II)V -HSPLandroid/os/INetworkManagementService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/INetworkManagementService; -HSPLandroid/os/IPowerManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IPowerManager$Stub$Proxy;->acquireWakeLock(Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;ILandroid/os/IWakeLockCallback;)V -HSPLandroid/os/IPowerManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IPowerManager$Stub$Proxy;->getPowerSaveState(I)Landroid/os/PowerSaveState; -HSPLandroid/os/IPowerManager$Stub$Proxy;->isDeviceIdleMode()Z -HSPLandroid/os/IPowerManager$Stub$Proxy;->isInteractive()Z -HSPLandroid/os/IPowerManager$Stub$Proxy;->isLightDeviceIdleMode()Z -HSPLandroid/os/IPowerManager$Stub$Proxy;->isPowerSaveMode()Z -HSPLandroid/os/IPowerManager$Stub$Proxy;->releaseWakeLock(Landroid/os/IBinder;I)V -HSPLandroid/os/IPowerManager$Stub$Proxy;->updateWakeLockWorkSource(Landroid/os/IBinder;Landroid/os/WorkSource;Ljava/lang/String;)V -HSPLandroid/os/IPowerManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IPowerManager; -HSPLandroid/os/IPowerManager$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/IRemoteCallback$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IRemoteCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IRemoteCallback$Stub$Proxy;->sendResult(Landroid/os/Bundle;)V -HSPLandroid/os/IRemoteCallback$Stub;-><init>()V -HSPLandroid/os/IRemoteCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IRemoteCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IRemoteCallback; -HSPLandroid/os/IRemoteCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/IServiceManager$Stub$Proxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V -HSPLandroid/os/IServiceManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IServiceManager$Stub$Proxy;->checkService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/IServiceManager$Stub$Proxy;->isDeclared(Ljava/lang/String;)Z -HSPLandroid/os/ISystemConfig$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/ISystemConfig; -HSPLandroid/os/IThermalEventListener$Stub;-><init>()V -HSPLandroid/os/IThermalEventListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IThermalService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IThermalService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IThermalService$Stub$Proxy;->getCurrentThermalStatus()I -HSPLandroid/os/IThermalService$Stub$Proxy;->registerThermalStatusListener(Landroid/os/IThermalStatusListener;)Z -HSPLandroid/os/IThermalService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IThermalService; -HSPLandroid/os/IThermalStatusListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IThermalStatusListener$Stub;->getMaxTransactionId()I -HSPLandroid/os/IThermalStatusListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IUserManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/IUserManager$Stub$Proxy;->getApplicationRestrictions(Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/os/IUserManager$Stub$Proxy;->getApplicationRestrictionsForUser(Ljava/lang/String;I)Landroid/os/Bundle; -HSPLandroid/os/IUserManager$Stub$Proxy;->getProfileIds(IZ)[I -HSPLandroid/os/IUserManager$Stub$Proxy;->getProfileParent(I)Landroid/content/pm/UserInfo; -HSPLandroid/os/IUserManager$Stub$Proxy;->getProfileType(I)Ljava/lang/String; -HSPLandroid/os/IUserManager$Stub$Proxy;->getProfiles(IZ)Ljava/util/List; -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserBadgeColorResId(I)I -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserHandle(I)I -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserInfo(I)Landroid/content/pm/UserInfo; -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserRestrictionSources(Ljava/lang/String;I)Ljava/util/List; -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserRestrictions(I)Landroid/os/Bundle; -HSPLandroid/os/IUserManager$Stub$Proxy;->getUserSerialNumber(I)I -HSPLandroid/os/IUserManager$Stub$Proxy;->getUsers(ZZZ)Ljava/util/List; -HSPLandroid/os/IUserManager$Stub$Proxy;->hasBadge(I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->hasBaseUserRestriction(Ljava/lang/String;I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->hasUserRestriction(Ljava/lang/String;I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->isDemoUser(I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->isQuietModeEnabled(I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->isUserRunning(I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->isUserUnlocked(I)Z -HSPLandroid/os/IUserManager$Stub$Proxy;->isUserUnlockingOrUnlocked(I)Z -HSPLandroid/os/IUserManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IUserManager; -HSPLandroid/os/IVibratorManagerService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/IVibratorManagerService$Stub$Proxy;->getVibratorIds()[I -HSPLandroid/os/IVibratorManagerService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IVibratorManagerService; -HSPLandroid/os/IpcDataCache$Config;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/IpcDataCache$Config;-><init>(Landroid/os/IpcDataCache$Config;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/IpcDataCache$Config;->api()Ljava/lang/String; -HSPLandroid/os/IpcDataCache$Config;->child(Ljava/lang/String;)Landroid/os/IpcDataCache$Config; -HSPLandroid/os/IpcDataCache$Config;->maxEntries()I -HSPLandroid/os/IpcDataCache$Config;->module()Ljava/lang/String; -HSPLandroid/os/IpcDataCache$Config;->name()Ljava/lang/String; -HSPLandroid/os/IpcDataCache$Config;->registerChild(Ljava/lang/String;)V -HSPLandroid/os/IpcDataCache$QueryHandler;-><init>()V -HSPLandroid/os/IpcDataCache$QueryHandler;->shouldBypassCache(Ljava/lang/Object;)Z -HSPLandroid/os/IpcDataCache$SystemServerCallHandler;-><init>(Landroid/os/IpcDataCache$RemoteCall;)V -HSPLandroid/os/IpcDataCache$SystemServerCallHandler;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/IpcDataCache;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/IpcDataCache$QueryHandler;)V -HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$QueryHandler;)V -HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$RemoteCall;)V -HSPLandroid/os/IpcDataCache;->query(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/LocaleList;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/os/LocaleList$1;Landroid/os/LocaleList$1; -HSPLandroid/os/LocaleList;-><init>([Ljava/util/Locale;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/Locale;Ljava/util/Locale; -HSPLandroid/os/LocaleList;->computeFirstMatch(Ljava/util/Collection;Z)Ljava/util/Locale; -HSPLandroid/os/LocaleList;->computeFirstMatchIndex(Ljava/util/Collection;Z)I -HSPLandroid/os/LocaleList;->equals(Ljava/lang/Object;)Z -HSPLandroid/os/LocaleList;->findFirstMatchIndex(Ljava/util/Locale;)I -HSPLandroid/os/LocaleList;->forLanguageTags(Ljava/lang/String;)Landroid/os/LocaleList;+]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/os/LocaleList;->get(I)Ljava/util/Locale; -HSPLandroid/os/LocaleList;->getAdjustedDefault()Landroid/os/LocaleList; -HSPLandroid/os/LocaleList;->getDefault()Landroid/os/LocaleList;+]Ljava/lang/Object;Ljava/util/Locale; -HSPLandroid/os/LocaleList;->getEmptyLocaleList()Landroid/os/LocaleList; -HSPLandroid/os/LocaleList;->getFirstMatchWithEnglishSupported([Ljava/lang/String;)Ljava/util/Locale; -HSPLandroid/os/LocaleList;->getLikelyScript(Ljava/util/Locale;)Ljava/lang/String; -HSPLandroid/os/LocaleList;->hashCode()I -HSPLandroid/os/LocaleList;->isEmpty()Z -HSPLandroid/os/LocaleList;->isPseudoLocale(Ljava/util/Locale;)Z -HSPLandroid/os/LocaleList;->isPseudoLocalesOnly([Ljava/lang/String;)Z -HSPLandroid/os/LocaleList;->matchesLanguageAndScript(Ljava/util/Locale;Ljava/util/Locale;)Z -HSPLandroid/os/LocaleList;->setDefault(Landroid/os/LocaleList;)V -HSPLandroid/os/LocaleList;->setDefault(Landroid/os/LocaleList;I)V -HSPLandroid/os/LocaleList;->size()I -HSPLandroid/os/LocaleList;->toLanguageTags()Ljava/lang/String; -HSPLandroid/os/LocaleList;->toString()Ljava/lang/String; -HSPLandroid/os/LocaleList;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/Looper;-><init>(Z)V -HSPLandroid/os/Looper;->getMainLooper()Landroid/os/Looper; -HSPLandroid/os/Looper;->getQueue()Landroid/os/MessageQueue; -HSPLandroid/os/Looper;->getThread()Ljava/lang/Thread; -HSPLandroid/os/Looper;->getThresholdOverride()I+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/lang/Thread;Landroid/os/HandlerThread; -HSPLandroid/os/Looper;->isCurrentThread()Z -HSPLandroid/os/Looper;->loop()V -HSPLandroid/os/Looper;->loopOnce(Landroid/os/Looper;JI)Z+]Landroid/os/Handler;missing_types]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue;Landroid/os/MessageQueue; -HSPLandroid/os/Looper;->myLooper()Landroid/os/Looper;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; -HSPLandroid/os/Looper;->myQueue()Landroid/os/MessageQueue; -HSPLandroid/os/Looper;->prepare()V -HSPLandroid/os/Looper;->prepare(Z)V -HSPLandroid/os/Looper;->prepareMainLooper()V -HSPLandroid/os/Looper;->quit()V -HSPLandroid/os/Looper;->quitSafely()V -HSPLandroid/os/Looper;->setSlowLogThresholdMs(JJ)V -HSPLandroid/os/Looper;->setTraceTag(J)V -HSPLandroid/os/Looper;->showSlowLog(JJJLjava/lang/String;Landroid/os/Message;)Z -HSPLandroid/os/Looper;->toString()Ljava/lang/String; -HSPLandroid/os/Message$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/Message; -HSPLandroid/os/Message$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/Message;-><init>()V -HSPLandroid/os/Message;->copyFrom(Landroid/os/Message;)V -HSPLandroid/os/Message;->getCallback()Ljava/lang/Runnable; -HSPLandroid/os/Message;->getData()Landroid/os/Bundle; -HSPLandroid/os/Message;->getTarget()Landroid/os/Handler; -HSPLandroid/os/Message;->getWhen()J -HSPLandroid/os/Message;->isInUse()Z -HSPLandroid/os/Message;->markInUse()V -HSPLandroid/os/Message;->obtain()Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;III)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Handler;Ljava/lang/Runnable;)Landroid/os/Message; -HSPLandroid/os/Message;->obtain(Landroid/os/Message;)Landroid/os/Message; -HSPLandroid/os/Message;->peekData()Landroid/os/Bundle; -HSPLandroid/os/Message;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/os/Message;->recycle()V -HSPLandroid/os/Message;->recycleUnchecked()V -HSPLandroid/os/Message;->sendToTarget()V -HSPLandroid/os/Message;->setAsynchronous(Z)V -HSPLandroid/os/Message;->setCallback(Ljava/lang/Runnable;)Landroid/os/Message; -HSPLandroid/os/Message;->setData(Landroid/os/Bundle;)V -HSPLandroid/os/Message;->setTarget(Landroid/os/Handler;)V -HSPLandroid/os/Message;->setWhat(I)Landroid/os/Message; -HSPLandroid/os/Message;->toString()Ljava/lang/String; -HSPLandroid/os/Message;->toString(J)Ljava/lang/String; -HSPLandroid/os/Message;->updateCheckRecycle(I)V -HSPLandroid/os/Message;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/MessageQueue;-><init>(Z)V -HSPLandroid/os/MessageQueue;->addIdleHandler(Landroid/os/MessageQueue$IdleHandler;)V -HSPLandroid/os/MessageQueue;->addOnFileDescriptorEventListener(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V -HSPLandroid/os/MessageQueue;->dispatchEvents(II)I -HSPLandroid/os/MessageQueue;->dispose()V -HSPLandroid/os/MessageQueue;->enqueueMessage(Landroid/os/Message;J)Z+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->finalize()V -HSPLandroid/os/MessageQueue;->hasMessages(Landroid/os/Handler;ILjava/lang/Object;)Z -HSPLandroid/os/MessageQueue;->hasMessages(Landroid/os/Handler;Ljava/lang/Runnable;Ljava/lang/Object;)Z -HSPLandroid/os/MessageQueue;->next()Landroid/os/Message;+]Landroid/os/Message;Landroid/os/Message;]Landroid/os/MessageQueue$IdleHandler;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/os/MessageQueue;->postSyncBarrier()I -HSPLandroid/os/MessageQueue;->postSyncBarrier(J)I+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->quit(Z)V -HSPLandroid/os/MessageQueue;->removeAllFutureMessagesLocked()V -HSPLandroid/os/MessageQueue;->removeAllMessagesLocked()V -HSPLandroid/os/MessageQueue;->removeCallbacksAndMessages(Landroid/os/Handler;Ljava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->removeIdleHandler(Landroid/os/MessageQueue$IdleHandler;)V -HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;ILjava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->removeMessages(Landroid/os/Handler;Ljava/lang/Runnable;Ljava/lang/Object;)V+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->removeOnFileDescriptorEventListener(Ljava/io/FileDescriptor;)V -HSPLandroid/os/MessageQueue;->removeSyncBarrier(I)V+]Landroid/os/Message;Landroid/os/Message; -HSPLandroid/os/MessageQueue;->updateOnFileDescriptorEventListenerLocked(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V -HSPLandroid/os/Messenger$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/Messenger; -HSPLandroid/os/Messenger$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/Messenger;-><init>(Landroid/os/Handler;)V -HSPLandroid/os/Messenger;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/Messenger;->getBinder()Landroid/os/IBinder; -HSPLandroid/os/Messenger;->hashCode()I -HSPLandroid/os/Messenger;->readMessengerOrNullFromParcel(Landroid/os/Parcel;)Landroid/os/Messenger; -HSPLandroid/os/Messenger;->send(Landroid/os/Message;)V -HSPLandroid/os/Messenger;->writeMessengerOrNullToParcel(Landroid/os/Messenger;Landroid/os/Parcel;)V -HSPLandroid/os/Messenger;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/Parcel$2;-><init>(Landroid/os/Parcel;Ljava/io/InputStream;Ljava/lang/ClassLoader;)V -HSPLandroid/os/Parcel$2;->resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;+]Ljava/io/ObjectStreamClass;Ljava/io/ObjectStreamClass; -HSPLandroid/os/Parcel$LazyValue;-><init>(Landroid/os/Parcel;IIILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/Parcel$LazyValue;->writeToParcel(Landroid/os/Parcel;)V -HSPLandroid/os/Parcel$ReadWriteHelper;->readString16(Landroid/os/Parcel;)Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$ReadWriteHelper;->readString8(Landroid/os/Parcel;)Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$ReadWriteHelper;->writeString16(Landroid/os/Parcel;Ljava/lang/String;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel$ReadWriteHelper;->writeString8(Landroid/os/Parcel;Ljava/lang/String;)V -HSPLandroid/os/Parcel;->-$$Nest$mreadValue(Landroid/os/Parcel;Ljava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Parcel;-><init>(J)V -HSPLandroid/os/Parcel;->adoptClassCookies(Landroid/os/Parcel;)V -HSPLandroid/os/Parcel;->appendFrom(Landroid/os/Parcel;II)V -HSPLandroid/os/Parcel;->checkArrayTypeToUnparcel(Ljava/lang/Class;Ljava/lang/Class;)V -HSPLandroid/os/Parcel;->checkTypeToUnparcel(Ljava/lang/Class;Ljava/lang/Class;)V -HSPLandroid/os/Parcel;->copyClassCookies()Ljava/util/Map; -HSPLandroid/os/Parcel;->createBinderArrayList()Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->createBooleanArray()[Z -HSPLandroid/os/Parcel;->createByteArray()[B -HSPLandroid/os/Parcel;->createException(ILjava/lang/String;)Ljava/lang/Exception; -HSPLandroid/os/Parcel;->createExceptionOrNull(ILjava/lang/String;)Ljava/lang/Exception; -HSPLandroid/os/Parcel;->createFloatArray()[F+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createIntArray()[I+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createLongArray()[J -HSPLandroid/os/Parcel;->createString16Array()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createString8Array()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->createStringArray()[Ljava/lang/String; -HSPLandroid/os/Parcel;->createStringArrayList()Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->createTypedArray(Landroid/os/Parcelable$Creator;)[Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;missing_types -HSPLandroid/os/Parcel;->createTypedArrayList(Landroid/os/Parcelable$Creator;)Ljava/util/ArrayList;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->dataAvail()I -HSPLandroid/os/Parcel;->dataPosition()I -HSPLandroid/os/Parcel;->dataSize()I -HSPLandroid/os/Parcel;->destroy()V -HSPLandroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->enforceNoDataAvail()V -HSPLandroid/os/Parcel;->ensureReadSquashableParcelables()V -HSPLandroid/os/Parcel;->ensureWithinMemoryLimit(II)V -HSPLandroid/os/Parcel;->finalize()V -HSPLandroid/os/Parcel;->freeBuffer()V -HSPLandroid/os/Parcel;->getClassCookie(Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->getExceptionCode(Ljava/lang/Throwable;)I -HSPLandroid/os/Parcel;->getValueType(Ljava/lang/Object;)I -HSPLandroid/os/Parcel;->hasFileDescriptors()Z -HSPLandroid/os/Parcel;->hasReadWriteHelper()Z -HSPLandroid/os/Parcel;->init(J)V -HSPLandroid/os/Parcel;->isLengthPrefixed(I)Z -HSPLandroid/os/Parcel;->markForBinder(Landroid/os/IBinder;)V -HSPLandroid/os/Parcel;->markSensitive()V -HSPLandroid/os/Parcel;->marshall()[B -HSPLandroid/os/Parcel;->maybeWriteSquashed(Landroid/os/Parcelable;)Z -HSPLandroid/os/Parcel;->obtain()Landroid/os/Parcel; -HSPLandroid/os/Parcel;->obtain(J)Landroid/os/Parcel; -HSPLandroid/os/Parcel;->obtain(Landroid/os/IBinder;)Landroid/os/Parcel; -HSPLandroid/os/Parcel;->pushAllowFds(Z)Z -HSPLandroid/os/Parcel;->readArrayList(Ljava/lang/ClassLoader;)Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->readArrayList(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->readArrayListInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;IZZLjava/lang/ClassLoader;)I -HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;Ljava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readArrayMapInternal(Landroid/util/ArrayMap;ILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readArraySet(Ljava/lang/ClassLoader;)Landroid/util/ArraySet;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLandroid/os/Parcel;->readBinderList(Ljava/util/List;)V -HSPLandroid/os/Parcel;->readBlob()[B -HSPLandroid/os/Parcel;->readBoolean()Z+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readBooleanArray([Z)V -HSPLandroid/os/Parcel;->readBundle()Landroid/os/Bundle; -HSPLandroid/os/Parcel;->readBundle(Ljava/lang/ClassLoader;)Landroid/os/Bundle; -HSPLandroid/os/Parcel;->readByte()B -HSPLandroid/os/Parcel;->readByteArray([B)V -HSPLandroid/os/Parcel;->readCallingWorkSourceUid()I -HSPLandroid/os/Parcel;->readCharSequence()Ljava/lang/CharSequence; -HSPLandroid/os/Parcel;->readCharSequenceArray()[Ljava/lang/CharSequence; -HSPLandroid/os/Parcel;->readDouble()D -HSPLandroid/os/Parcel;->readException()V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readException(ILjava/lang/String;)V -HSPLandroid/os/Parcel;->readExceptionCode()I+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readFloat()F -HSPLandroid/os/Parcel;->readFloatArray([F)V -HSPLandroid/os/Parcel;->readHashMap(Ljava/lang/ClassLoader;)Ljava/util/HashMap; -HSPLandroid/os/Parcel;->readHashMapInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/HashMap; -HSPLandroid/os/Parcel;->readInt()I -HSPLandroid/os/Parcel;->readIntArray([I)V -HSPLandroid/os/Parcel;->readLazyValue(Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readList(Ljava/util/List;Ljava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readList(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)V -HSPLandroid/os/Parcel;->readListInternal(Ljava/util/List;ILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readListInternal(Ljava/util/List;ILjava/lang/ClassLoader;Ljava/lang/Class;)V -HSPLandroid/os/Parcel;->readLong()J -HSPLandroid/os/Parcel;->readLongArray([J)V -HSPLandroid/os/Parcel;->readMap(Ljava/util/Map;Ljava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readMapInternal(Ljava/util/Map;ILjava/lang/ClassLoader;)V -HSPLandroid/os/Parcel;->readMapInternal(Ljava/util/Map;ILjava/lang/ClassLoader;Ljava/lang/Class;Ljava/lang/Class;)V -HSPLandroid/os/Parcel;->readParcelable(Ljava/lang/ClassLoader;)Landroid/os/Parcelable; -HSPLandroid/os/Parcel;->readParcelable(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readParcelableArray(Ljava/lang/ClassLoader;)[Landroid/os/Parcelable; -HSPLandroid/os/Parcel;->readParcelableArray(Ljava/lang/ClassLoader;Ljava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/os/Parcel;->readParcelableArrayInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/os/Parcel;->readParcelableCreator(Ljava/lang/ClassLoader;)Landroid/os/Parcelable$Creator; -HSPLandroid/os/Parcel;->readParcelableCreatorInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/os/Parcelable$Creator;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/reflect/Field;Ljava/lang/reflect/Field;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/os/Parcel;->readParcelableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcelable$Creator;megamorphic_types -HSPLandroid/os/Parcel;->readParcelableList(Ljava/util/List;Ljava/lang/ClassLoader;)Ljava/util/List; -HSPLandroid/os/Parcel;->readParcelableList(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/List; -HSPLandroid/os/Parcel;->readParcelableListInternal(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/List;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->readPersistableBundle()Landroid/os/PersistableBundle; -HSPLandroid/os/Parcel;->readPersistableBundle(Ljava/lang/ClassLoader;)Landroid/os/PersistableBundle; -HSPLandroid/os/Parcel;->readRawFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/os/Parcel;->readSerializable()Ljava/io/Serializable; -HSPLandroid/os/Parcel;->readSerializableInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/io/ObjectInputStream;Landroid/os/Parcel$2; -HSPLandroid/os/Parcel;->readSize()Landroid/util/Size; -HSPLandroid/os/Parcel;->readSparseArray(Ljava/lang/ClassLoader;)Landroid/util/SparseArray; -HSPLandroid/os/Parcel;->readSparseArray(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/util/SparseArray; -HSPLandroid/os/Parcel;->readSparseArrayInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Landroid/util/SparseArray; -HSPLandroid/os/Parcel;->readSparseIntArray()Landroid/util/SparseIntArray; -HSPLandroid/os/Parcel;->readSparseIntArrayInternal(Landroid/util/SparseIntArray;I)V -HSPLandroid/os/Parcel;->readSquashed(Landroid/os/Parcel$SquashReadHelper;)Landroid/os/Parcelable; -HSPLandroid/os/Parcel;->readString()Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readString16()Ljava/lang/String;+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; -HSPLandroid/os/Parcel;->readString16Array([Ljava/lang/String;)V -HSPLandroid/os/Parcel;->readString16NoHelper()Ljava/lang/String; -HSPLandroid/os/Parcel;->readString8()Ljava/lang/String;+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; -HSPLandroid/os/Parcel;->readString8NoHelper()Ljava/lang/String; -HSPLandroid/os/Parcel;->readStringArray()[Ljava/lang/String;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readStringArray([Ljava/lang/String;)V -HSPLandroid/os/Parcel;->readStringList(Ljava/util/List;)V -HSPLandroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder; -HSPLandroid/os/Parcel;->readTypedArray([Ljava/lang/Object;Landroid/os/Parcelable$Creator;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->readTypedList(Ljava/util/List;Landroid/os/Parcelable$Creator;)V -HSPLandroid/os/Parcel;->readTypedObject(Landroid/os/Parcelable$Creator;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;megamorphic_types -HSPLandroid/os/Parcel;->readValue(ILjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readValue(ILjava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class; -HSPLandroid/os/Parcel;->readValue(Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/os/Parcel;->readValue(Ljava/lang/ClassLoader;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->recycle()V -HSPLandroid/os/Parcel;->resetSqaushingState()V -HSPLandroid/os/Parcel;->restoreAllowFds(Z)V -HSPLandroid/os/Parcel;->setClassCookie(Ljava/lang/Class;Ljava/lang/Object;)V -HSPLandroid/os/Parcel;->setDataPosition(I)V -HSPLandroid/os/Parcel;->setDataSize(I)V -HSPLandroid/os/Parcel;->setReadWriteHelper(Landroid/os/Parcel$ReadWriteHelper;)V -HSPLandroid/os/Parcel;->unmarshall([BII)V -HSPLandroid/os/Parcel;->writeArrayMap(Landroid/util/ArrayMap;)V -HSPLandroid/os/Parcel;->writeArrayMapInternal(Landroid/util/ArrayMap;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/os/Parcel;->writeArraySet(Landroid/util/ArraySet;)V -HSPLandroid/os/Parcel;->writeBinderList(Ljava/util/List;)V -HSPLandroid/os/Parcel;->writeBlob([B)V -HSPLandroid/os/Parcel;->writeBoolean(Z)V -HSPLandroid/os/Parcel;->writeBooleanArray([Z)V -HSPLandroid/os/Parcel;->writeBundle(Landroid/os/Bundle;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->writeByte(B)V -HSPLandroid/os/Parcel;->writeByteArray([B)V -HSPLandroid/os/Parcel;->writeByteArray([BII)V -HSPLandroid/os/Parcel;->writeCharSequence(Ljava/lang/CharSequence;)V -HSPLandroid/os/Parcel;->writeDouble(D)V -HSPLandroid/os/Parcel;->writeException(Ljava/lang/Exception;)V -HSPLandroid/os/Parcel;->writeFileDescriptor(Ljava/io/FileDescriptor;)V -HSPLandroid/os/Parcel;->writeFloat(F)V -HSPLandroid/os/Parcel;->writeFloatArray([F)V -HSPLandroid/os/Parcel;->writeInt(I)V -HSPLandroid/os/Parcel;->writeIntArray([I)V -HSPLandroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeList(Ljava/util/List;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/os/Parcel;->writeLong(J)V -HSPLandroid/os/Parcel;->writeLongArray([J)V -HSPLandroid/os/Parcel;->writeMap(Ljava/util/Map;)V -HSPLandroid/os/Parcel;->writeMapInternal(Ljava/util/Map;)V -HSPLandroid/os/Parcel;->writeNoException()V -HSPLandroid/os/Parcel;->writeParcelable(Landroid/os/Parcelable;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable;missing_types -HSPLandroid/os/Parcel;->writeParcelableArray([Landroid/os/Parcelable;I)V -HSPLandroid/os/Parcel;->writeParcelableCreator(Landroid/os/Parcelable;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types -HSPLandroid/os/Parcel;->writeParcelableList(Ljava/util/List;I)V -HSPLandroid/os/Parcel;->writePersistableBundle(Landroid/os/PersistableBundle;)V -HSPLandroid/os/Parcel;->writeSerializable(Ljava/io/Serializable;)V -HSPLandroid/os/Parcel;->writeSparseArray(Landroid/util/SparseArray;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/os/Parcel;->writeSparseBooleanArray(Landroid/util/SparseBooleanArray;)V -HSPLandroid/os/Parcel;->writeSparseIntArray(Landroid/util/SparseIntArray;)V -HSPLandroid/os/Parcel;->writeString(Ljava/lang/String;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/Parcel;->writeString16(Ljava/lang/String;)V+]Landroid/os/Parcel$ReadWriteHelper;Landroid/os/Parcel$ReadWriteHelper; -HSPLandroid/os/Parcel;->writeString16Array([Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeString16NoHelper(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeString8(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeString8Array([Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeString8NoHelper(Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeStringArray([Ljava/lang/String;)V -HSPLandroid/os/Parcel;->writeStringList(Ljava/util/List;)V -HSPLandroid/os/Parcel;->writeStrongBinder(Landroid/os/IBinder;)V -HSPLandroid/os/Parcel;->writeStrongInterface(Landroid/os/IInterface;)V -HSPLandroid/os/Parcel;->writeTypedArray([Landroid/os/Parcelable;I)V -HSPLandroid/os/Parcel;->writeTypedArrayMap(Landroid/util/ArrayMap;I)V -HSPLandroid/os/Parcel;->writeTypedList(Ljava/util/List;)V -HSPLandroid/os/Parcel;->writeTypedList(Ljava/util/List;I)V -HSPLandroid/os/Parcel;->writeTypedObject(Landroid/os/Parcelable;I)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable;Landroid/app/FragmentState;,Landroid/content/Intent;,Landroid/os/Bundle;,Landroid/view/SurfaceControl$Transaction; -HSPLandroid/os/Parcel;->writeValue(ILjava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLandroid/os/Parcel;->writeValue(Ljava/lang/Object;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/os/ParcelFileDescriptor$2;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/ParcelFileDescriptor$AutoCloseInputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/os/ParcelFileDescriptor$AutoCloseInputStream;->close()V -HSPLandroid/os/ParcelFileDescriptor$AutoCloseInputStream;->read([B)I -HSPLandroid/os/ParcelFileDescriptor$AutoCloseInputStream;->read([BII)I -HSPLandroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/os/ParcelFileDescriptor$AutoCloseOutputStream;->close()V -HSPLandroid/os/ParcelFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;)V -HSPLandroid/os/ParcelFileDescriptor;-><init>(Ljava/io/FileDescriptor;)V -HSPLandroid/os/ParcelFileDescriptor;-><init>(Ljava/io/FileDescriptor;Ljava/io/FileDescriptor;)V -HSPLandroid/os/ParcelFileDescriptor;->adoptFd(I)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->canDetectErrors()Z -HSPLandroid/os/ParcelFileDescriptor;->close()V -HSPLandroid/os/ParcelFileDescriptor;->closeWithStatus(ILjava/lang/String;)V -HSPLandroid/os/ParcelFileDescriptor;->createPipe()[Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->detachFd()I -HSPLandroid/os/ParcelFileDescriptor;->dup()Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->dup(Ljava/io/FileDescriptor;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->finalize()V -HSPLandroid/os/ParcelFileDescriptor;->fromFd(I)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->fromSocket(Ljava/net/Socket;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->getFd()I -HSPLandroid/os/ParcelFileDescriptor;->getFile(Ljava/io/FileDescriptor;)Ljava/io/File; -HSPLandroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->getStatSize()J -HSPLandroid/os/ParcelFileDescriptor;->ifAtLeastQ(I)I -HSPLandroid/os/ParcelFileDescriptor;->isAtLeastQ()Z -HSPLandroid/os/ParcelFileDescriptor;->open(Ljava/io/File;I)Landroid/os/ParcelFileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->openInternal(Ljava/io/File;I)Ljava/io/FileDescriptor; -HSPLandroid/os/ParcelFileDescriptor;->parseMode(Ljava/lang/String;)I -HSPLandroid/os/ParcelFileDescriptor;->releaseResources()V -HSPLandroid/os/ParcelFileDescriptor;->writeCommStatusAndClose(ILjava/lang/String;)V -HSPLandroid/os/ParcelFileDescriptor;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/ParcelUuid$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ParcelUuid; -HSPLandroid/os/ParcelUuid$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/ParcelUuid$1;->newArray(I)[Landroid/os/ParcelUuid; -HSPLandroid/os/ParcelUuid$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/ParcelUuid;-><init>(Ljava/util/UUID;)V -HSPLandroid/os/ParcelUuid;->equals(Ljava/lang/Object;)Z -HSPLandroid/os/ParcelUuid;->fromString(Ljava/lang/String;)Landroid/os/ParcelUuid; -HSPLandroid/os/ParcelUuid;->getUuid()Ljava/util/UUID; -HSPLandroid/os/ParcelUuid;->hashCode()I -HSPLandroid/os/ParcelUuid;->toString()Ljava/lang/String; -HSPLandroid/os/ParcelUuid;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/ParcelableException;-><init>(Ljava/lang/Throwable;)V -HSPLandroid/os/ParcelableParcel$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ParcelableParcel; -HSPLandroid/os/ParcelableParcel$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/ParcelableParcel;-><init>(Landroid/os/Parcel;Ljava/lang/ClassLoader;)V -HSPLandroid/os/ParcelableParcel;->getClassLoader()Ljava/lang/ClassLoader; -HSPLandroid/os/ParcelableParcel;->getParcel()Landroid/os/Parcel; -HSPLandroid/os/ParcelableParcel;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/PatternMatcher$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/PatternMatcher; -HSPLandroid/os/PatternMatcher$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/PatternMatcher$1;->newArray(I)[Landroid/os/PatternMatcher; -HSPLandroid/os/PatternMatcher$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/PatternMatcher;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/PatternMatcher;-><init>(Ljava/lang/String;I)V -HSPLandroid/os/PatternMatcher;->match(Ljava/lang/String;)Z -HSPLandroid/os/PatternMatcher;->matchPattern(Ljava/lang/String;Ljava/lang/String;[II)Z -HSPLandroid/os/PatternMatcher;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/PerformanceHintManager;->createHintSession([IJ)Landroid/os/PerformanceHintManager$Session; -HSPLandroid/os/PersistableBundle$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/PersistableBundle; -HSPLandroid/os/PersistableBundle$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/PersistableBundle$MyReadMapCallback;-><init>()V -HSPLandroid/os/PersistableBundle;-><init>()V -HSPLandroid/os/PersistableBundle;-><init>(I)V -HSPLandroid/os/PersistableBundle;-><init>(Landroid/os/Parcel;I)V -HSPLandroid/os/PersistableBundle;-><init>(Landroid/os/PersistableBundle;)V -HSPLandroid/os/PersistableBundle;-><init>(Landroid/os/PersistableBundle;Z)V -HSPLandroid/os/PersistableBundle;-><init>(Landroid/util/ArrayMap;Z)V -HSPLandroid/os/PersistableBundle;->deepCopy()Landroid/os/PersistableBundle; -HSPLandroid/os/PersistableBundle;->getPersistableBundle(Ljava/lang/String;)Landroid/os/PersistableBundle; -HSPLandroid/os/PersistableBundle;->isValidType(Ljava/lang/Object;)Z -HSPLandroid/os/PersistableBundle;->putPersistableBundle(Ljava/lang/String;Landroid/os/PersistableBundle;)V -HSPLandroid/os/PersistableBundle;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/PooledStringReader;->readString()Ljava/lang/String; -HSPLandroid/os/PooledStringWriter;->writeString(Ljava/lang/String;)V -HSPLandroid/os/PowerExemptionManager;-><init>(Landroid/content/Context;)V -HSPLandroid/os/PowerManager$1;-><init>(Landroid/os/PowerManager;ILjava/lang/String;)V -HSPLandroid/os/PowerManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/PowerManager$1;->recompute(Ljava/lang/Void;)Ljava/lang/Boolean; -HSPLandroid/os/PowerManager$2;-><init>(Landroid/os/PowerManager;ILjava/lang/String;)V -HSPLandroid/os/PowerManager$2;->recompute(Ljava/lang/Integer;)Ljava/lang/Boolean; -HSPLandroid/os/PowerManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/PowerManager$3$$ExternalSyntheticLambda0;->run()V -HSPLandroid/os/PowerManager$3;->lambda$onStatusChange$0(Landroid/os/PowerManager$OnThermalStatusChangedListener;I)V -HSPLandroid/os/PowerManager$3;->onStatusChange(I)V -HSPLandroid/os/PowerManager$WakeLock$$ExternalSyntheticLambda0;-><init>(Landroid/os/PowerManager$WakeLock;)V -HSPLandroid/os/PowerManager$WakeLock$$ExternalSyntheticLambda0;->run()V -HSPLandroid/os/PowerManager$WakeLock;-><init>(Landroid/os/PowerManager;ILjava/lang/String;Ljava/lang/String;I)V -HSPLandroid/os/PowerManager$WakeLock;->acquire()V -HSPLandroid/os/PowerManager$WakeLock;->acquire(J)V -HSPLandroid/os/PowerManager$WakeLock;->acquireLocked()V -HSPLandroid/os/PowerManager$WakeLock;->finalize()V -HSPLandroid/os/PowerManager$WakeLock;->isHeld()Z -HSPLandroid/os/PowerManager$WakeLock;->release()V -HSPLandroid/os/PowerManager$WakeLock;->release(I)V -HSPLandroid/os/PowerManager$WakeLock;->setReferenceCounted(Z)V -HSPLandroid/os/PowerManager$WakeLock;->setWorkSource(Landroid/os/WorkSource;)V -HSPLandroid/os/PowerManager;-><init>(Landroid/content/Context;Landroid/os/IPowerManager;Landroid/os/IThermalService;Landroid/os/Handler;)V -HSPLandroid/os/PowerManager;->addThermalStatusListener(Landroid/os/PowerManager$OnThermalStatusChangedListener;)V -HSPLandroid/os/PowerManager;->addThermalStatusListener(Ljava/util/concurrent/Executor;Landroid/os/PowerManager$OnThermalStatusChangedListener;)V -HSPLandroid/os/PowerManager;->getBrightnessConstraint(I)F -HSPLandroid/os/PowerManager;->getCurrentThermalStatus()I -HSPLandroid/os/PowerManager;->getPowerSaveState(I)Landroid/os/PowerSaveState; -HSPLandroid/os/PowerManager;->isDeviceIdleMode()Z -HSPLandroid/os/PowerManager;->isDeviceLightIdleMode()Z -HSPLandroid/os/PowerManager;->isIgnoringBatteryOptimizations(Ljava/lang/String;)Z -HSPLandroid/os/PowerManager;->isInteractive()Z -HSPLandroid/os/PowerManager;->isLightDeviceIdleMode()Z -HSPLandroid/os/PowerManager;->isPowerSaveMode()Z -HSPLandroid/os/PowerManager;->isScreenOn()Z -HSPLandroid/os/PowerManager;->newWakeLock(ILjava/lang/String;)Landroid/os/PowerManager$WakeLock; -HSPLandroid/os/PowerManager;->userActivity(JII)V -HSPLandroid/os/PowerManager;->userActivity(JZ)V -HSPLandroid/os/PowerManager;->validateWakeLockParameters(ILjava/lang/String;)V -HSPLandroid/os/PowerManager;->wakeUp(JILjava/lang/String;)V -HSPLandroid/os/PowerSaveState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/PowerSaveState; -HSPLandroid/os/PowerSaveState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/PowerSaveState$Builder;-><init>()V -HSPLandroid/os/PowerSaveState$Builder;->build()Landroid/os/PowerSaveState; -HSPLandroid/os/PowerSaveState$Builder;->setBatterySaverEnabled(Z)Landroid/os/PowerSaveState$Builder; -HSPLandroid/os/PowerSaveState$Builder;->setBrightnessFactor(F)Landroid/os/PowerSaveState$Builder; -HSPLandroid/os/PowerSaveState$Builder;->setGlobalBatterySaverEnabled(Z)Landroid/os/PowerSaveState$Builder; -HSPLandroid/os/PowerSaveState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/PowerSaveState;-><init>(Landroid/os/PowerSaveState$Builder;)V -HSPLandroid/os/PowerWhitelistManager;-><init>(Landroid/content/Context;)V -HSPLandroid/os/PowerWhitelistManager;->isWhitelisted(Ljava/lang/String;Z)Z -HSPLandroid/os/Process;->getStartElapsedRealtime()J -HSPLandroid/os/Process;->getStartUptimeMillis()J -HSPLandroid/os/Process;->is64Bit()Z -HSPLandroid/os/Process;->isApplicationUid(I)Z -HSPLandroid/os/Process;->isIsolated()Z -HSPLandroid/os/Process;->isIsolated(I)Z -HSPLandroid/os/Process;->isSdkSandbox()Z -HSPLandroid/os/Process;->isSdkSandboxUid(I)Z -HSPLandroid/os/Process;->myPid()I -HSPLandroid/os/Process;->myProcessName()Ljava/lang/String; -HSPLandroid/os/Process;->myTid()I -HSPLandroid/os/Process;->myUid()I -HSPLandroid/os/Process;->myUserHandle()Landroid/os/UserHandle; -HSPLandroid/os/Process;->setArgV0(Ljava/lang/String;)V -HSPLandroid/os/Process;->setStartTimes(JJJJ)V -HSPLandroid/os/RemoteCallback$1;-><init>(Landroid/os/RemoteCallback;)V -HSPLandroid/os/RemoteCallback$1;->sendResult(Landroid/os/Bundle;)V -HSPLandroid/os/RemoteCallback$3;->createFromParcel(Landroid/os/Parcel;)Landroid/os/RemoteCallback; -HSPLandroid/os/RemoteCallback$3;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/RemoteCallback;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/RemoteCallback;-><init>(Landroid/os/RemoteCallback$OnResultListener;)V -HSPLandroid/os/RemoteCallback;-><init>(Landroid/os/RemoteCallback$OnResultListener;Landroid/os/Handler;)V -HSPLandroid/os/RemoteCallback;->sendResult(Landroid/os/Bundle;)V -HSPLandroid/os/RemoteCallback;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/RemoteCallbackList$Callback;-><init>(Landroid/os/RemoteCallbackList;Landroid/os/IInterface;Ljava/lang/Object;)V -HSPLandroid/os/RemoteCallbackList$Callback;->binderDied()V -HSPLandroid/os/RemoteCallbackList;-><init>()V -HSPLandroid/os/RemoteCallbackList;->beginBroadcast()I -HSPLandroid/os/RemoteCallbackList;->finishBroadcast()V -HSPLandroid/os/RemoteCallbackList;->getBroadcastCookie(I)Ljava/lang/Object; -HSPLandroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; -HSPLandroid/os/RemoteCallbackList;->kill()V -HSPLandroid/os/RemoteCallbackList;->logExcessiveCallbacks()V -HSPLandroid/os/RemoteCallbackList;->onCallbackDied(Landroid/os/IInterface;)V -HSPLandroid/os/RemoteCallbackList;->onCallbackDied(Landroid/os/IInterface;Ljava/lang/Object;)V -HSPLandroid/os/RemoteCallbackList;->register(Landroid/os/IInterface;)Z -HSPLandroid/os/RemoteCallbackList;->register(Landroid/os/IInterface;Ljava/lang/Object;)Z -HSPLandroid/os/RemoteCallbackList;->unregister(Landroid/os/IInterface;)Z -HSPLandroid/os/RemoteException;-><init>()V -HSPLandroid/os/RemoteException;-><init>(Ljava/lang/String;)V -HSPLandroid/os/RemoteException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;ZZ)V -HSPLandroid/os/ResultReceiver$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ResultReceiver; -HSPLandroid/os/ResultReceiver$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/ResultReceiver$MyResultReceiver;-><init>(Landroid/os/ResultReceiver;)V -HSPLandroid/os/ResultReceiver$MyResultReceiver;->send(ILandroid/os/Bundle;)V -HSPLandroid/os/ResultReceiver$MyRunnable;->run()V -HSPLandroid/os/ResultReceiver;-><init>(Landroid/os/Handler;)V -HSPLandroid/os/ResultReceiver;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/ResultReceiver;->send(ILandroid/os/Bundle;)V -HSPLandroid/os/ResultReceiver;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/ServiceManager$ServiceNotFoundException;-><init>(Ljava/lang/String;)V -HSPLandroid/os/ServiceManager;->addService(Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/os/ServiceManager;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V -HSPLandroid/os/ServiceManager;->checkService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManager;->getIServiceManager()Landroid/os/IServiceManager; -HSPLandroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManager;->getServiceOrThrow(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManager;->initServiceCache(Ljava/util/Map;)V -HSPLandroid/os/ServiceManager;->isDeclared(Ljava/lang/String;)Z -HSPLandroid/os/ServiceManager;->rawGetService(Ljava/lang/String;)Landroid/os/IBinder;+]Landroid/os/IServiceManager;Landroid/os/ServiceManagerProxy;]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger; -HSPLandroid/os/ServiceManager;->waitForDeclaredService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManagerProxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V -HSPLandroid/os/ServiceManagerProxy;->checkService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManagerProxy;->getService(Ljava/lang/String;)Landroid/os/IBinder; -HSPLandroid/os/ServiceManagerProxy;->isDeclared(Ljava/lang/String;)Z -HSPLandroid/os/ServiceSpecificException;-><init>(ILjava/lang/String;)V -HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/SharedMemory; -HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/SharedMemory$Closer;-><init>(ILandroid/os/SharedMemory$MemoryRegistration;)V -HSPLandroid/os/SharedMemory$Closer;-><init>(ILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory$Closer-IA;)V -HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(I)V -HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(ILandroid/os/SharedMemory$MemoryRegistration-IA;)V -HSPLandroid/os/SharedMemory$MemoryRegistration;->acquire()Landroid/os/SharedMemory$MemoryRegistration; -HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;)V -HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory$Unmapper-IA;)V -HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;)V -HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;Landroid/os/SharedMemory-IA;)V -HSPLandroid/os/SharedMemory;->checkOpen()V -HSPLandroid/os/SharedMemory;->map(III)Ljava/nio/ByteBuffer; -HSPLandroid/os/SharedMemory;->mapReadOnly()Ljava/nio/ByteBuffer; -HSPLandroid/os/SharedMemory;->validateProt(I)V -HSPLandroid/os/SimpleClock;-><init>(Ljava/time/ZoneId;)V -HSPLandroid/os/StatFs;-><init>(Ljava/lang/String;)V -HSPLandroid/os/StatFs;->doStat(Ljava/lang/String;)Landroid/system/StructStatVfs; -HSPLandroid/os/StatFs;->getAvailableBlocks()I -HSPLandroid/os/StatFs;->getAvailableBlocksLong()J -HSPLandroid/os/StatFs;->getAvailableBytes()J -HSPLandroid/os/StatFs;->getBlockCount()I -HSPLandroid/os/StatFs;->getBlockCountLong()J -HSPLandroid/os/StatFs;->getBlockSize()I -HSPLandroid/os/StatFs;->getBlockSizeLong()J -HSPLandroid/os/StatFs;->getTotalBytes()J -HSPLandroid/os/StatFs;->restat(Ljava/lang/String;)V -HSPLandroid/os/StatsServiceManager$ServiceRegisterer;-><init>(Ljava/lang/String;)V -HSPLandroid/os/StatsServiceManager$ServiceRegisterer;->get()Landroid/os/IBinder; -HSPLandroid/os/StatsServiceManager;-><init>()V -HSPLandroid/os/StatsServiceManager;->getStatsManagerServiceRegisterer()Landroid/os/StatsServiceManager$ServiceRegisterer; -HSPLandroid/os/StrictMode$$ExternalSyntheticLambda0;->run()V -HSPLandroid/os/StrictMode$$ExternalSyntheticLambda1;->log(Landroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode$1;->initialValue()Ljava/lang/Object; -HSPLandroid/os/StrictMode$1;->initialValue()Ljava/util/ArrayList; -HSPLandroid/os/StrictMode$2;->initialValue()Ljava/lang/Object; -HSPLandroid/os/StrictMode$2;->initialValue()Ljava/util/ArrayList; -HSPLandroid/os/StrictMode$3;->initialValue()Landroid/os/Handler; -HSPLandroid/os/StrictMode$3;->initialValue()Ljava/lang/Object; -HSPLandroid/os/StrictMode$4;->initialValue()Landroid/os/StrictMode$AndroidBlockGuardPolicy; -HSPLandroid/os/StrictMode$4;->initialValue()Ljava/lang/Object; -HSPLandroid/os/StrictMode$5;->onPathAccess(Ljava/lang/String;)V -HSPLandroid/os/StrictMode$8;->initialValue()Landroid/os/StrictMode$ThreadSpanState; -HSPLandroid/os/StrictMode$8;->initialValue()Ljava/lang/Object; -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0;->run()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1;->run()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;-><init>(I)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->getThreadPolicyMask()I -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->handleViolationWithTimingAttempt(Landroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->lambda$handleViolationWithTimingAttempt$0(Landroid/view/IWindowManager;Ljava/util/ArrayList;)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onCustomSlowCall(Ljava/lang/String;)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onNetwork()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onReadFromDisk()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onThreadPolicyViolation(Landroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onUnbufferedIO()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->onWriteToDisk()V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->setThreadPolicyMask(I)V -HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->startHandlingViolationException(Landroid/os/strictmode/Violation;)V -HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>()V -HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>(Landroid/os/StrictMode$AndroidCloseGuardReporter-IA;)V -HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;)V -HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLandroid/os/StrictMode$InstanceTracker;-><init>(Ljava/lang/Object;)V -HSPLandroid/os/StrictMode$InstanceTracker;->finalize()V -HSPLandroid/os/StrictMode$Span;->finish()V -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;-><init>()V -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;-><init>(Landroid/os/StrictMode$ThreadPolicy;)V -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->build()Landroid/os/StrictMode$ThreadPolicy; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectAll()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectCustomSlowCalls()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectDiskReads()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectDiskWrites()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectExplicitGc()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectNetwork()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectResourceMismatches()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->detectUnbufferedIo()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->disable(I)Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->enable(I)Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->penaltyDeath()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->penaltyDeathOnNetwork()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->penaltyDropBox()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->penaltyLog()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitAll()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitCustomSlowCalls()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitDiskReads()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitDiskWrites()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy$Builder;->permitUnbufferedIo()Landroid/os/StrictMode$ThreadPolicy$Builder; -HSPLandroid/os/StrictMode$ThreadPolicy;-><init>(ILandroid/os/StrictMode$OnThreadViolationListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/os/StrictMode$ThreadPolicy;-><init>(ILandroid/os/StrictMode$OnThreadViolationListener;Ljava/util/concurrent/Executor;Landroid/os/StrictMode$ThreadPolicy-IA;)V -HSPLandroid/os/StrictMode$ThreadSpanState;-><init>()V -HSPLandroid/os/StrictMode$ThreadSpanState;-><init>(Landroid/os/StrictMode$ThreadSpanState-IA;)V -HSPLandroid/os/StrictMode$UnsafeIntentStrictModeCallback;-><init>()V -HSPLandroid/os/StrictMode$UnsafeIntentStrictModeCallback;-><init>(Landroid/os/StrictMode$UnsafeIntentStrictModeCallback-IA;)V -HSPLandroid/os/StrictMode$ViolationInfo;->-$$Nest$fgetmViolation(Landroid/os/StrictMode$ViolationInfo;)Landroid/os/strictmode/Violation; -HSPLandroid/os/StrictMode$ViolationInfo;-><init>(Landroid/os/Parcel;Z)V -HSPLandroid/os/StrictMode$ViolationInfo;-><init>(Landroid/os/strictmode/Violation;I)V -HSPLandroid/os/StrictMode$ViolationInfo;->getStackTrace()Ljava/lang/String; -HSPLandroid/os/StrictMode$ViolationInfo;->hashCode()I -HSPLandroid/os/StrictMode$ViolationInfo;->penaltyEnabled(I)Z -HSPLandroid/os/StrictMode$ViolationInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/StrictMode$VmPolicy$Builder;-><init>()V -HSPLandroid/os/StrictMode$VmPolicy$Builder;-><init>(Landroid/os/StrictMode$VmPolicy;)V -HSPLandroid/os/StrictMode$VmPolicy$Builder;->build()Landroid/os/StrictMode$VmPolicy; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectActivityLeaks()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectAll()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectContentUriWithoutPermission()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectCredentialProtectedWhileLocked()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectFileUriExposure()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectIncorrectContextUse()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectLeakedClosableObjects()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectLeakedRegistrationObjects()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectLeakedSqlLiteObjects()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectUnsafeIntentLaunch()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->detectUntaggedSockets()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->disable(I)Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->enable(I)Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->penaltyDeathOnFileUriExposure()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->penaltyDropBox()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->penaltyLog()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitActivityLeaks()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitUnsafeIntentLaunch()Landroid/os/StrictMode$VmPolicy$Builder; -HSPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;Landroid/os/StrictMode$VmPolicy-IA;)V -HSPLandroid/os/StrictMode;->-$$Nest$sfgetEMPTY_CLASS_LIMIT_MAP()Ljava/util/HashMap; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOGCAT_LOGGER()Landroid/os/StrictMode$ViolationLogger; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOG_V()Z -HSPLandroid/os/StrictMode;->-$$Nest$sfgetsExpectedActivityInstanceCount()Ljava/util/HashMap; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetsLogger()Landroid/os/StrictMode$ViolationLogger; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetsThisThreadSpanState()Ljava/lang/ThreadLocal; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetsThreadViolationExecutor()Ljava/lang/ThreadLocal; -HSPLandroid/os/StrictMode;->-$$Nest$sfgetsThreadViolationListener()Ljava/lang/ThreadLocal; -HSPLandroid/os/StrictMode;->-$$Nest$smclampViolationTimeMap(Landroid/util/SparseLongArray;J)V -HSPLandroid/os/StrictMode;->-$$Nest$smtooManyViolationsThisLoop()Z -HSPLandroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy; -HSPLandroid/os/StrictMode;->allowThreadDiskReadsMask()I -HSPLandroid/os/StrictMode;->allowThreadDiskWrites()Landroid/os/StrictMode$ThreadPolicy; -HSPLandroid/os/StrictMode;->allowThreadDiskWritesMask()I -HSPLandroid/os/StrictMode;->allowVmViolations()Landroid/os/StrictMode$VmPolicy; -HSPLandroid/os/StrictMode;->assertConfigurationContext(Landroid/content/Context;Ljava/lang/String;)V -HSPLandroid/os/StrictMode;->clampViolationTimeMap(Landroid/util/SparseLongArray;J)V -HSPLandroid/os/StrictMode;->clearGatheredViolations()V+]Ljava/lang/ThreadLocal;Landroid/os/StrictMode$1; -HSPLandroid/os/StrictMode;->decrementExpectedActivityCount(Ljava/lang/Class;)V -HSPLandroid/os/StrictMode;->dropboxViolationAsync(ILandroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode;->enterCriticalSpan(Ljava/lang/String;)Landroid/os/StrictMode$Span; -HSPLandroid/os/StrictMode;->getThreadPolicy()Landroid/os/StrictMode$ThreadPolicy; -HSPLandroid/os/StrictMode;->getThreadPolicyMask()I -HSPLandroid/os/StrictMode;->getVmPolicy()Landroid/os/StrictMode$VmPolicy; -HSPLandroid/os/StrictMode;->handleApplicationStrictModeViolation(ILandroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode;->hasGatheredViolations()Z -HSPLandroid/os/StrictMode;->incrementExpectedActivityCount(Ljava/lang/Class;)V -HSPLandroid/os/StrictMode;->initThreadDefaults(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/os/StrictMode;->initVmDefaults(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/os/StrictMode;->isBundledSystemApp(Landroid/content/pm/ApplicationInfo;)Z -HSPLandroid/os/StrictMode;->lambda$dropboxViolationAsync$2(ILandroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode;->lambda$static$0(Landroid/os/StrictMode$ViolationInfo;)V -HSPLandroid/os/StrictMode;->noteSlowCall(Ljava/lang/String;)V -HSPLandroid/os/StrictMode;->noteUntaggedSocket()V -HSPLandroid/os/StrictMode;->onBinderStrictModePolicyChange(I)V -HSPLandroid/os/StrictMode;->onCredentialProtectedPathAccess(Ljava/lang/String;I)V -HSPLandroid/os/StrictMode;->onVmPolicyViolation(Landroid/os/strictmode/Violation;)V -HSPLandroid/os/StrictMode;->onVmPolicyViolation(Landroid/os/strictmode/Violation;Z)V -HSPLandroid/os/StrictMode;->readAndHandleBinderCallViolations(Landroid/os/Parcel;)V -HSPLandroid/os/StrictMode;->registerIntentMatchingRestrictionCallback()V -HSPLandroid/os/StrictMode;->setBlockGuardPolicy(I)V -HSPLandroid/os/StrictMode;->setBlockGuardVmPolicy(I)V -HSPLandroid/os/StrictMode;->setCloseGuardEnabled(Z)V -HSPLandroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V -HSPLandroid/os/StrictMode;->setThreadPolicyMask(I)V -HSPLandroid/os/StrictMode;->setVmPolicy(Landroid/os/StrictMode$VmPolicy;)V -HSPLandroid/os/StrictMode;->tooManyViolationsThisLoop()Z -HSPLandroid/os/StrictMode;->trackActivity(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/StrictMode;->vmClosableObjectLeaksEnabled()Z -HSPLandroid/os/StrictMode;->vmContentUriWithoutPermissionEnabled()Z -HSPLandroid/os/StrictMode;->vmFileUriExposureEnabled()Z -HSPLandroid/os/StrictMode;->vmImplicitDirectBootEnabled()Z -HSPLandroid/os/StrictMode;->vmIncorrectContextUseEnabled()Z -HSPLandroid/os/StrictMode;->vmRegistrationLeaksEnabled()Z -HSPLandroid/os/StrictMode;->vmSqliteObjectLeaksEnabled()Z -HSPLandroid/os/StrictMode;->vmUnsafeIntentLaunchEnabled()Z -HSPLandroid/os/StrictMode;->vmUntaggedSocketEnabled()Z -HSPLandroid/os/StrictMode;->writeGatheredViolationsToParcel(Landroid/os/Parcel;)V -HSPLandroid/os/SystemClock$2;->millis()J -HSPLandroid/os/SystemClock;->sleep(J)V -HSPLandroid/os/SystemConfigManager;-><init>()V -HSPLandroid/os/SystemConfigManager;->getDisabledUntilUsedPreinstalledCarrierApps()Ljava/util/Set; -HSPLandroid/os/SystemConfigManager;->getDisabledUntilUsedPreinstalledCarrierAssociatedAppEntries()Ljava/util/Map; -HSPLandroid/os/SystemProperties$Handle;-><init>(J)V -HSPLandroid/os/SystemProperties$Handle;-><init>(JLandroid/os/SystemProperties$Handle-IA;)V -HSPLandroid/os/SystemProperties$Handle;->getLong(J)J -HSPLandroid/os/SystemProperties;->-$$Nest$smnative_get_long(JJ)J -HSPLandroid/os/SystemProperties;->addChangeCallback(Ljava/lang/Runnable;)V -HSPLandroid/os/SystemProperties;->find(Ljava/lang/String;)Landroid/os/SystemProperties$Handle; -HSPLandroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/SystemProperties;->getBoolean(Ljava/lang/String;Z)Z -HSPLandroid/os/SystemProperties;->getInt(Ljava/lang/String;I)I -HSPLandroid/os/SystemProperties;->getLong(Ljava/lang/String;J)J -HSPLandroid/os/SystemProperties;->native_get(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/os/SystemProperties;->set(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/SystemVibrator;-><init>(Landroid/content/Context;)V -HSPLandroid/os/SystemVibrator;->hasVibrator()Z -HSPLandroid/os/SystemVibrator;->vibrate(ILjava/lang/String;Landroid/os/VibrationEffect;Ljava/lang/String;Landroid/os/VibrationAttributes;)V -HSPLandroid/os/SystemVibratorManager;-><init>(Landroid/content/Context;)V -HSPLandroid/os/SystemVibratorManager;->getVibratorIds()[I -HSPLandroid/os/SystemVibratorManager;->vibrate(ILjava/lang/String;Landroid/os/CombinedVibration;Ljava/lang/String;Landroid/os/VibrationAttributes;)V -HSPLandroid/os/TelephonyServiceManager$ServiceRegisterer;-><init>(Ljava/lang/String;)V -HSPLandroid/os/TelephonyServiceManager$ServiceRegisterer;->get()Landroid/os/IBinder; -HSPLandroid/os/TelephonyServiceManager;-><init>()V -HSPLandroid/os/TelephonyServiceManager;->getCarrierConfigServiceRegisterer()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/TelephonyServiceManager;->getEuiccControllerService()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/TelephonyServiceManager;->getPhoneSubServiceRegisterer()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/TelephonyServiceManager;->getSmsServiceRegisterer()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/TelephonyServiceManager;->getSubscriptionServiceRegisterer()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/TelephonyServiceManager;->getTelephonyServiceRegisterer()Landroid/os/TelephonyServiceManager$ServiceRegisterer; -HSPLandroid/os/Temperature;-><init>(FILjava/lang/String;I)V -HSPLandroid/os/Temperature;->getStatus()I -HSPLandroid/os/Temperature;->isValidStatus(I)Z -HSPLandroid/os/ThreadLocalWorkSource$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLandroid/os/ThreadLocalWorkSource;->getToken()J+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/ThreadLocalWorkSource;->getUid()I+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/ThreadLocalWorkSource;->lambda$static$0()[I -HSPLandroid/os/ThreadLocalWorkSource;->parseUidFromToken(J)I -HSPLandroid/os/ThreadLocalWorkSource;->restore(J)V+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/ThreadLocalWorkSource;->setUid(I)J+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/os/Trace;->asyncTraceBegin(JLjava/lang/String;I)V -HSPLandroid/os/Trace;->asyncTraceEnd(JLjava/lang/String;I)V -HSPLandroid/os/Trace;->asyncTraceForTrackBegin(JLjava/lang/String;Ljava/lang/String;I)V -HSPLandroid/os/Trace;->asyncTraceForTrackEnd(JLjava/lang/String;I)V -HSPLandroid/os/Trace;->beginAsyncSection(Ljava/lang/String;I)V -HSPLandroid/os/Trace;->beginSection(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/os/Trace;->endAsyncSection(Ljava/lang/String;I)V -HSPLandroid/os/Trace;->endSection()V -HSPLandroid/os/Trace;->instant(JLjava/lang/String;)V -HSPLandroid/os/Trace;->instantForTrack(JLjava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/Trace;->isEnabled()Z -HSPLandroid/os/Trace;->isTagEnabled(J)Z -HSPLandroid/os/Trace;->setAppTracingAllowed(Z)V -HSPLandroid/os/Trace;->setCounter(Ljava/lang/String;J)V -HSPLandroid/os/Trace;->traceBegin(JLjava/lang/String;)V -HSPLandroid/os/Trace;->traceCounter(JLjava/lang/String;I)V -HSPLandroid/os/Trace;->traceEnd(J)V -HSPLandroid/os/UserHandle$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/UserHandle; -HSPLandroid/os/UserHandle$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/UserHandle;-><init>(I)V -HSPLandroid/os/UserHandle;->equals(Ljava/lang/Object;)Z -HSPLandroid/os/UserHandle;->formatUid(I)Ljava/lang/String; -HSPLandroid/os/UserHandle;->formatUid(Ljava/lang/StringBuilder;I)V -HSPLandroid/os/UserHandle;->getAppId(I)I -HSPLandroid/os/UserHandle;->getCacheAppGid(I)I -HSPLandroid/os/UserHandle;->getCacheAppGid(II)I -HSPLandroid/os/UserHandle;->getCallingUserId()I -HSPLandroid/os/UserHandle;->getIdentifier()I -HSPLandroid/os/UserHandle;->getUid(II)I -HSPLandroid/os/UserHandle;->getUserHandleForUid(I)Landroid/os/UserHandle; -HSPLandroid/os/UserHandle;->getUserId(I)I -HSPLandroid/os/UserHandle;->hashCode()I -HSPLandroid/os/UserHandle;->isApp(I)Z -HSPLandroid/os/UserHandle;->isCore(I)Z -HSPLandroid/os/UserHandle;->isIsolated(I)Z -HSPLandroid/os/UserHandle;->isOwner()Z -HSPLandroid/os/UserHandle;->isSameApp(II)Z -HSPLandroid/os/UserHandle;->isSystem()Z -HSPLandroid/os/UserHandle;->myUserId()I -HSPLandroid/os/UserHandle;->of(I)Landroid/os/UserHandle; -HSPLandroid/os/UserHandle;->readFromParcel(Landroid/os/Parcel;)Landroid/os/UserHandle; -HSPLandroid/os/UserHandle;->toString()Ljava/lang/String; -HSPLandroid/os/UserHandle;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/UserHandle;->writeToParcel(Landroid/os/UserHandle;Landroid/os/Parcel;)V -HSPLandroid/os/UserManager$1;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Integer;)Z -HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$1;->recompute(Ljava/lang/Integer;)Ljava/lang/Boolean; -HSPLandroid/os/UserManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$2;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager$2;->bypass(Ljava/lang/Integer;)Z -HSPLandroid/os/UserManager$2;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$2;->recompute(Ljava/lang/Integer;)Ljava/lang/Boolean; -HSPLandroid/os/UserManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$3;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager$3;->bypass(Ljava/lang/Integer;)Z -HSPLandroid/os/UserManager$3;->bypass(Ljava/lang/Object;)Z -HSPLandroid/os/UserManager$3;->recompute(Ljava/lang/Integer;)Ljava/lang/String; -HSPLandroid/os/UserManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/os/UserManager$4;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V -HSPLandroid/os/UserManager;->-$$Nest$fgetmService(Landroid/os/UserManager;)Landroid/os/IUserManager; -HSPLandroid/os/UserManager;-><init>(Landroid/content/Context;Landroid/os/IUserManager;)V -HSPLandroid/os/UserManager;->convertUserIdsToUserHandles([I)Ljava/util/List; -HSPLandroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager; -HSPLandroid/os/UserManager;->getAliveUsers()Ljava/util/List; -HSPLandroid/os/UserManager;->getApplicationRestrictions(Ljava/lang/String;)Landroid/os/Bundle; -HSPLandroid/os/UserManager;->getContextUserIfAppropriate()I -HSPLandroid/os/UserManager;->getEnabledProfileIds(I)[I -HSPLandroid/os/UserManager;->getEnabledProfiles(I)Ljava/util/List; -HSPLandroid/os/UserManager;->getMaxSupportedUsers()I -HSPLandroid/os/UserManager;->getPrimaryUser()Landroid/content/pm/UserInfo; -HSPLandroid/os/UserManager;->getProfileIds(IZ)[I -HSPLandroid/os/UserManager;->getProfileIdsWithDisabled(I)[I -HSPLandroid/os/UserManager;->getProfileParent(I)Landroid/content/pm/UserInfo; -HSPLandroid/os/UserManager;->getProfileType(I)Ljava/lang/String; -HSPLandroid/os/UserManager;->getProfiles(I)Ljava/util/List; -HSPLandroid/os/UserManager;->getProfiles(Z)Ljava/util/List; -HSPLandroid/os/UserManager;->getSerialNumberForUser(Landroid/os/UserHandle;)J -HSPLandroid/os/UserManager;->getUserBadgeColor(I)I -HSPLandroid/os/UserManager;->getUserCount()I -HSPLandroid/os/UserManager;->getUserForSerialNumber(J)Landroid/os/UserHandle; -HSPLandroid/os/UserManager;->getUserHandle()I -HSPLandroid/os/UserManager;->getUserHandle(I)I -HSPLandroid/os/UserManager;->getUserHandles(Z)Ljava/util/List; -HSPLandroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo; -HSPLandroid/os/UserManager;->getUserProfiles()Ljava/util/List; -HSPLandroid/os/UserManager;->getUserRestrictionSources(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List; -HSPLandroid/os/UserManager;->getUserRestrictions()Landroid/os/Bundle; -HSPLandroid/os/UserManager;->getUserRestrictions(Landroid/os/UserHandle;)Landroid/os/Bundle; -HSPLandroid/os/UserManager;->getUserSerialNumber(I)I -HSPLandroid/os/UserManager;->getUsers()Ljava/util/List; -HSPLandroid/os/UserManager;->getUsers(ZZZ)Ljava/util/List; -HSPLandroid/os/UserManager;->hasBadge(I)Z -HSPLandroid/os/UserManager;->hasBaseUserRestriction(Ljava/lang/String;Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->hasUserRestriction(Ljava/lang/String;)Z -HSPLandroid/os/UserManager;->hasUserRestriction(Ljava/lang/String;Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->hasUserRestrictionForUser(Ljava/lang/String;I)Z -HSPLandroid/os/UserManager;->hasUserRestrictionForUser(Ljava/lang/String;Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->isDemoUser()Z -HSPLandroid/os/UserManager;->isDeviceInDemoMode(Landroid/content/Context;)Z -HSPLandroid/os/UserManager;->isHeadlessSystemUserMode()Z -HSPLandroid/os/UserManager;->isManagedProfile()Z -HSPLandroid/os/UserManager;->isManagedProfile(I)Z -HSPLandroid/os/UserManager;->isProfile(I)Z -HSPLandroid/os/UserManager;->isQuietModeEnabled(Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->isSystemUser()Z -HSPLandroid/os/UserManager;->isUserAdmin(I)Z -HSPLandroid/os/UserManager;->isUserRunning(I)Z -HSPLandroid/os/UserManager;->isUserRunning(Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->isUserSwitcherEnabled()Z -HSPLandroid/os/UserManager;->isUserSwitcherEnabled(Z)Z -HSPLandroid/os/UserManager;->isUserTypeManagedProfile(Ljava/lang/String;)Z -HSPLandroid/os/UserManager;->isUserTypeRestricted(Ljava/lang/String;)Z -HSPLandroid/os/UserManager;->isUserUnlocked()Z -HSPLandroid/os/UserManager;->isUserUnlocked(I)Z -HSPLandroid/os/UserManager;->isUserUnlocked(Landroid/os/UserHandle;)Z -HSPLandroid/os/UserManager;->isUserUnlockingOrUnlocked(I)Z -HSPLandroid/os/UserManager;->supportsMultipleUsers()Z -HSPLandroid/os/VibrationAttributes$Builder;-><init>()V -HSPLandroid/os/VibrationAttributes$Builder;->build()Landroid/os/VibrationAttributes; -HSPLandroid/os/VibrationAttributes$Builder;->setUsage(Landroid/media/AudioAttributes;)V -HSPLandroid/os/VibrationEffect$Composed;->validate()V -HSPLandroid/os/VibrationEffect;-><init>()V -HSPLandroid/os/VibrationEffect;->createOneShot(JI)Landroid/os/VibrationEffect; -HSPLandroid/os/VibrationEffect;->createWaveform([JI)Landroid/os/VibrationEffect; -HSPLandroid/os/VibrationEffect;->createWaveform([J[II)Landroid/os/VibrationEffect; -HSPLandroid/os/VibrationEffect;->get(IZ)Landroid/os/VibrationEffect; -HSPLandroid/os/Vibrator;-><init>(Landroid/content/Context;)V -HSPLandroid/os/Vibrator;->vibrate(Landroid/os/VibrationEffect;Landroid/media/AudioAttributes;)V -HSPLandroid/os/Vibrator;->vibrate(Landroid/os/VibrationEffect;Landroid/os/VibrationAttributes;)V -HSPLandroid/os/VibratorManager;-><init>(Landroid/content/Context;)V -HSPLandroid/os/WorkSource$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/WorkSource; -HSPLandroid/os/WorkSource$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/WorkSource;-><init>()V -HSPLandroid/os/WorkSource;-><init>(ILjava/lang/String;)V -HSPLandroid/os/WorkSource;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/WorkSource;-><init>(Landroid/os/WorkSource;)V -HSPLandroid/os/WorkSource;->add(ILjava/lang/String;)Z -HSPLandroid/os/WorkSource;->add(Landroid/os/WorkSource;)Z -HSPLandroid/os/WorkSource;->diff(Landroid/os/WorkSource;)Z -HSPLandroid/os/WorkSource;->equals(Ljava/lang/Object;)Z -HSPLandroid/os/WorkSource;->getPackageName(I)Ljava/lang/String; -HSPLandroid/os/WorkSource;->getUid(I)I -HSPLandroid/os/WorkSource;->getWorkChains()Ljava/util/List; -HSPLandroid/os/WorkSource;->insert(IILjava/lang/String;)V -HSPLandroid/os/WorkSource;->isEmpty()Z -HSPLandroid/os/WorkSource;->remove(Landroid/os/WorkSource;)Z -HSPLandroid/os/WorkSource;->removeUidsAndNames(Landroid/os/WorkSource;)Z -HSPLandroid/os/WorkSource;->set(Landroid/os/WorkSource;)V -HSPLandroid/os/WorkSource;->size()I -HSPLandroid/os/WorkSource;->toString()Ljava/lang/String; -HSPLandroid/os/WorkSource;->updateLocked(Landroid/os/WorkSource;ZZ)Z -HSPLandroid/os/WorkSource;->updateUidsAndNamesLocked(Landroid/os/WorkSource;ZZ)Z -HSPLandroid/os/WorkSource;->updateUidsLocked(Landroid/os/WorkSource;ZZ)Z -HSPLandroid/os/WorkSource;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/os/connectivity/CellularBatteryStats;-><init>(JJJJJJJJJLjava/lang/Long;[J[J[JJ)V -HSPLandroid/os/health/HealthStats;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/health/HealthStats;->getMeasurement(I)J -HSPLandroid/os/health/HealthStats;->getMeasurements(I)Ljava/util/Map; -HSPLandroid/os/health/HealthStats;->getStats(I)Ljava/util/Map; -HSPLandroid/os/health/HealthStats;->getTimer(I)Landroid/os/health/TimerStat; -HSPLandroid/os/health/HealthStats;->getTimers(I)Ljava/util/Map; -HSPLandroid/os/health/HealthStats;->hasMeasurement(I)Z -HSPLandroid/os/health/HealthStats;->hasMeasurements(I)Z -HSPLandroid/os/health/HealthStats;->hasStats(I)Z -HSPLandroid/os/health/HealthStats;->hasTimer(I)Z -HSPLandroid/os/health/HealthStats;->hasTimers(I)Z -HSPLandroid/os/health/HealthStatsParceler$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/health/HealthStatsParceler; -HSPLandroid/os/health/HealthStatsParceler$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/health/HealthStatsParceler;->getHealthStats()Landroid/os/health/HealthStats; -HSPLandroid/os/health/SystemHealthManager;->takeMyUidSnapshot()Landroid/os/health/HealthStats; -HSPLandroid/os/health/SystemHealthManager;->takeUidSnapshot(I)Landroid/os/health/HealthStats; -HSPLandroid/os/health/TimerStat$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/health/TimerStat; -HSPLandroid/os/health/TimerStat$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/health/TimerStat;->getCount()I -HSPLandroid/os/health/TimerStat;->getTime()J -HSPLandroid/os/storage/IObbActionListener$Stub;-><init>()V -HSPLandroid/os/storage/IStorageEventListener$Stub;-><init>()V -HSPLandroid/os/storage/IStorageEventListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;->allocateBytes(Ljava/lang/String;JILjava/lang/String;)V -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;->getAllocatableBytes(Ljava/lang/String;ILjava/lang/String;)J -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;->getVolumeList(ILjava/lang/String;I)[Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/IStorageManager$Stub$Proxy;->getVolumes(I)[Landroid/os/storage/VolumeInfo; -HSPLandroid/os/storage/IStorageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/storage/IStorageManager; -HSPLandroid/os/storage/StorageEventListener;-><init>()V -HSPLandroid/os/storage/StorageEventListener;->onStorageStateChanged(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/storage/StorageManager$ObbActionListener;-><init>(Landroid/os/storage/StorageManager;)V -HSPLandroid/os/storage/StorageManager$ObbActionListener;-><init>(Landroid/os/storage/StorageManager;Landroid/os/storage/StorageManager$ObbActionListener-IA;)V -HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;-><init>(Landroid/os/storage/StorageManager;Ljava/util/concurrent/Executor;Landroid/os/storage/StorageEventListener;Landroid/os/storage/StorageManager$StorageVolumeCallback;)V -HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;->onStorageStateChanged(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/os/storage/StorageManager$StorageEventListenerDelegate;->onVolumeStateChanged(Landroid/os/storage/VolumeInfo;II)V -HSPLandroid/os/storage/StorageManager$StorageVolumeCallback;-><init>()V -HSPLandroid/os/storage/StorageManager;-><init>(Landroid/content/Context;Landroid/os/Looper;)V -HSPLandroid/os/storage/StorageManager;->allocateBytes(Ljava/io/FileDescriptor;JI)V -HSPLandroid/os/storage/StorageManager;->allocateBytes(Ljava/util/UUID;JI)V -HSPLandroid/os/storage/StorageManager;->convert(Ljava/lang/String;)Ljava/util/UUID; -HSPLandroid/os/storage/StorageManager;->convert(Ljava/util/UUID;)Ljava/lang/String; -HSPLandroid/os/storage/StorageManager;->getAllocatableBytes(Ljava/util/UUID;I)J -HSPLandroid/os/storage/StorageManager;->getStorageVolume(Ljava/io/File;I)Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageManager;->getStorageVolume([Landroid/os/storage/StorageVolume;Ljava/io/File;)Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageManager;->getStorageVolumes()Ljava/util/List; -HSPLandroid/os/storage/StorageManager;->getUuidForPath(Ljava/io/File;)Ljava/util/UUID; -HSPLandroid/os/storage/StorageManager;->getVolumeList()[Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageManager;->getVolumeList(II)[Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageManager;->getVolumes()Ljava/util/List; -HSPLandroid/os/storage/StorageManager;->isEncrypted()Z -HSPLandroid/os/storage/StorageManager;->registerListener(Landroid/os/storage/StorageEventListener;)V -HSPLandroid/os/storage/StorageVolume$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageVolume$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/storage/StorageVolume$1;->newArray(I)[Landroid/os/storage/StorageVolume; -HSPLandroid/os/storage/StorageVolume$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/storage/StorageVolume;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/storage/StorageVolume;-><init>(Landroid/os/Parcel;Landroid/os/storage/StorageVolume-IA;)V -HSPLandroid/os/storage/StorageVolume;->getId()Ljava/lang/String; -HSPLandroid/os/storage/StorageVolume;->getOwner()Landroid/os/UserHandle; -HSPLandroid/os/storage/StorageVolume;->getPath()Ljava/lang/String; -HSPLandroid/os/storage/StorageVolume;->getPathFile()Ljava/io/File; -HSPLandroid/os/storage/StorageVolume;->getState()Ljava/lang/String; -HSPLandroid/os/storage/StorageVolume;->getUuid()Ljava/lang/String; -HSPLandroid/os/storage/StorageVolume;->isEmulated()Z -HSPLandroid/os/storage/StorageVolume;->isPrimary()Z -HSPLandroid/os/storage/StorageVolume;->isRemovable()Z -HSPLandroid/os/storage/VolumeInfo$2;->createFromParcel(Landroid/os/Parcel;)Landroid/os/storage/VolumeInfo; -HSPLandroid/os/storage/VolumeInfo$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/os/storage/VolumeInfo$2;->newArray(I)[Landroid/os/storage/VolumeInfo; -HSPLandroid/os/storage/VolumeInfo$2;->newArray(I)[Ljava/lang/Object; -HSPLandroid/os/storage/VolumeInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/os/storage/VolumeInfo;->getPathForUser(I)Ljava/io/File; -HSPLandroid/os/storage/VolumeInfo;->getType()I -HSPLandroid/os/strictmode/CredentialProtectedWhileLockedViolation;-><init>(Ljava/lang/String;)V -HSPLandroid/os/strictmode/DiskReadViolation;-><init>()V -HSPLandroid/os/strictmode/LeakedClosableViolation;-><init>(Ljava/lang/String;)V -HSPLandroid/os/strictmode/Violation;-><init>(Ljava/lang/String;)V -HSPLandroid/os/strictmode/Violation;->calcStackTraceHashCode([Ljava/lang/StackTraceElement;)I -HSPLandroid/os/strictmode/Violation;->fillInStackTrace()Ljava/lang/Throwable; -HSPLandroid/os/strictmode/Violation;->hashCode()I -HSPLandroid/os/strictmode/Violation;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable; -HSPLandroid/os/vibrator/PrebakedSegment;->getDuration()J -HSPLandroid/os/vibrator/PrebakedSegment;->isValidEffectStrength(I)Z -HSPLandroid/os/vibrator/PrebakedSegment;->validate()V -HSPLandroid/os/vibrator/StepSegment;->getDuration()J -HSPLandroid/os/vibrator/StepSegment;->validate()V -HSPLandroid/os/vibrator/VibrationEffectSegment;-><init>()V -HSPLandroid/os/vibrator/VibrationEffectSegment;->checkDurationArgument(JLjava/lang/String;)V -HSPLandroid/os/vibrator/VibrationEffectSegment;->checkFrequencyArgument(FLjava/lang/String;)V -HSPLandroid/permission/ILegacyPermissionManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/permission/ILegacyPermissionManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/permission/ILegacyPermissionManager; -HSPLandroid/permission/IOnPermissionsChangeListener$Stub;-><init>()V -HSPLandroid/permission/IOnPermissionsChangeListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/permission/IPermissionChecker$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/permission/IPermissionChecker$Stub$Proxy;->checkPermission(Ljava/lang/String;Landroid/content/AttributionSourceState;Ljava/lang/String;ZZZI)I -HSPLandroid/permission/IPermissionChecker$Stub;->asInterface(Landroid/os/IBinder;)Landroid/permission/IPermissionChecker; -HSPLandroid/permission/IPermissionManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/permission/IPermissionManager$Stub$Proxy;->addOnPermissionsChangeListener(Landroid/permission/IOnPermissionsChangeListener;)V -HSPLandroid/permission/IPermissionManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/permission/IPermissionManager$Stub$Proxy;->getPermissionInfo(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/PermissionInfo; -HSPLandroid/permission/IPermissionManager$Stub$Proxy;->getSplitPermissions()Ljava/util/List; -HSPLandroid/permission/IPermissionManager$Stub$Proxy;->removeOnPermissionsChangeListener(Landroid/permission/IOnPermissionsChangeListener;)V -HSPLandroid/permission/IPermissionManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/permission/IPermissionManager; -HSPLandroid/permission/LegacyPermissionManager;-><init>()V -HSPLandroid/permission/LegacyPermissionManager;-><init>(Landroid/permission/ILegacyPermissionManager;)V -HSPLandroid/permission/LegacyPermissionManager;->checkDeviceIdentifierAccess(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)I -HSPLandroid/permission/PermissionCheckerManager;-><init>(Landroid/content/Context;)V -HSPLandroid/permission/PermissionCheckerManager;->checkPermission(Ljava/lang/String;Landroid/content/AttributionSourceState;Ljava/lang/String;ZZZI)I -HSPLandroid/permission/PermissionManager$1;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/permission/PermissionManager$1;->recompute(Landroid/permission/PermissionManager$PermissionQuery;)Ljava/lang/Integer; -HSPLandroid/permission/PermissionManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/permission/PermissionManager$2;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/permission/PermissionManager$2;->bypass(Landroid/permission/PermissionManager$PackageNamePermissionQuery;)Z -HSPLandroid/permission/PermissionManager$2;->bypass(Ljava/lang/Object;)Z -HSPLandroid/permission/PermissionManager$2;->recompute(Landroid/permission/PermissionManager$PackageNamePermissionQuery;)Ljava/lang/Integer; -HSPLandroid/permission/PermissionManager$2;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/permission/PermissionManager$OnPermissionsChangeListenerDelegate;-><init>(Landroid/permission/PermissionManager;Landroid/content/pm/PackageManager$OnPermissionsChangedListener;Landroid/os/Looper;)V -HSPLandroid/permission/PermissionManager$OnPermissionsChangeListenerDelegate;->handleMessage(Landroid/os/Message;)Z -HSPLandroid/permission/PermissionManager$PackageNamePermissionQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/permission/PermissionManager$PackageNamePermissionQuery;->hashCode()I -HSPLandroid/permission/PermissionManager$PermissionQuery;->equals(Ljava/lang/Object;)Z -HSPLandroid/permission/PermissionManager$PermissionQuery;->hashCode()I -HSPLandroid/permission/PermissionManager$SplitPermissionInfo;-><init>(Landroid/content/pm/permission/SplitPermissionInfoParcelable;)V -HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getNewPermissions()Ljava/util/List; -HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getSplitPermission()Ljava/lang/String; -HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getTargetSdk()I -HSPLandroid/permission/PermissionManager;-><clinit>()V -HSPLandroid/permission/PermissionManager;-><init>(Landroid/content/Context;)V -HSPLandroid/permission/PermissionManager;->addOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V -HSPLandroid/permission/PermissionManager;->checkPermissionUncached(Ljava/lang/String;III)I+]Landroid/app/IActivityManager;Landroid/app/IActivityManager$Stub$Proxy; -HSPLandroid/permission/PermissionManager;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)I -HSPLandroid/permission/PermissionManager;->getPermissionInfo(Ljava/lang/String;I)Landroid/content/pm/PermissionInfo; -HSPLandroid/permission/PermissionManager;->getSplitPermissions()Ljava/util/List; -HSPLandroid/permission/PermissionManager;->removeOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V -HSPLandroid/permission/PermissionManager;->splitPermissionInfoListToNonParcelableList(Ljava/util/List;)Ljava/util/List; -HSPLandroid/permission/PermissionManager;->updatePermissionFlags(Ljava/lang/String;Ljava/lang/String;IILandroid/os/UserHandle;)V -HSPLandroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences; -HSPLandroid/preference/PreferenceManager;->getDefaultSharedPreferencesMode()I -HSPLandroid/preference/PreferenceManager;->getDefaultSharedPreferencesName(Landroid/content/Context;)Ljava/lang/String; -HSPLandroid/provider/CallLog$Calls;->shouldHaveSharedCallLogEntries(Landroid/content/Context;Landroid/os/UserManager;I)Z -HSPLandroid/provider/ContactsContract$CommonDataKinds$Email;->getTypeLabelResource(I)I -HSPLandroid/provider/ContactsContract$CommonDataKinds$Phone;->getTypeLabel(Landroid/content/res/Resources;ILjava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/provider/ContactsContract$CommonDataKinds$Phone;->getTypeLabelResource(I)I -HSPLandroid/provider/ContactsContract$Contacts;->getLookupUri(JLjava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/DeviceConfigInitializer;-><clinit>()V -HSPLandroid/provider/DeviceConfigInitializer;->setDeviceConfigServiceManager(Landroid/provider/DeviceConfigServiceManager;)V -HSPLandroid/provider/DeviceConfigServiceManager;-><init>()V -HSPLandroid/provider/FontRequest;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V -HSPLandroid/provider/FontsContract$1;->run()V -HSPLandroid/provider/FontsContract$FontFamilyResult;->getFonts()[Landroid/provider/FontsContract$FontInfo; -HSPLandroid/provider/FontsContract$FontFamilyResult;->getStatusCode()I -HSPLandroid/provider/FontsContract$FontInfo;->getAxes()[Landroid/graphics/fonts/FontVariationAxis; -HSPLandroid/provider/FontsContract$FontInfo;->getResultCode()I -HSPLandroid/provider/FontsContract$FontInfo;->getTtcIndex()I -HSPLandroid/provider/FontsContract$FontInfo;->getUri()Landroid/net/Uri; -HSPLandroid/provider/FontsContract$FontInfo;->getWeight()I -HSPLandroid/provider/FontsContract$FontInfo;->isItalic()Z -HSPLandroid/provider/FontsContract;->buildTypeface(Landroid/content/Context;Landroid/os/CancellationSignal;[Landroid/provider/FontsContract$FontInfo;)Landroid/graphics/Typeface; -HSPLandroid/provider/FontsContract;->fetchFonts(Landroid/content/Context;Landroid/os/CancellationSignal;Landroid/provider/FontRequest;)Landroid/provider/FontsContract$FontFamilyResult; -HSPLandroid/provider/FontsContract;->getFontFromProvider(Landroid/content/Context;Landroid/provider/FontRequest;Ljava/lang/String;Landroid/os/CancellationSignal;)[Landroid/provider/FontsContract$FontInfo; -HSPLandroid/provider/FontsContract;->getFontSync(Landroid/provider/FontRequest;)Landroid/graphics/Typeface; -HSPLandroid/provider/FontsContract;->getProvider(Landroid/content/pm/PackageManager;Landroid/provider/FontRequest;)Landroid/content/pm/ProviderInfo; -HSPLandroid/provider/FontsContract;->lambda$getFontSync$0(Landroid/provider/FontRequest;Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/locks/Lock;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/locks/Condition;)V -HSPLandroid/provider/FontsContract;->prepareFontData(Landroid/content/Context;[Landroid/provider/FontsContract$FontInfo;Landroid/os/CancellationSignal;)Ljava/util/Map; -HSPLandroid/provider/FontsContract;->setApplicationContextForResources(Landroid/content/Context;)V -HSPLandroid/provider/SearchIndexablesProvider;-><init>()V -HSPLandroid/provider/SearchIndexablesProvider;->attachInfo(Landroid/content/Context;Landroid/content/pm/ProviderInfo;)V -HSPLandroid/provider/SearchIndexablesProvider;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/provider/SearchIndexablesProvider;->queryDynamicRawData([Ljava/lang/String;)Landroid/database/Cursor; -HSPLandroid/provider/SearchIndexablesProvider;->querySiteMapPairs()Landroid/database/Cursor; -HSPLandroid/provider/SearchIndexablesProvider;->querySliceUriPairs()Landroid/database/Cursor; -HSPLandroid/provider/Settings$Config;->checkCallingOrSelfPermission(Ljava/lang/String;)I -HSPLandroid/provider/Settings$Config;->createCompositeName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/provider/Settings$Config;->createNamespaceUri(Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/Settings$Config;->createPrefix(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/provider/Settings$Config;->getContentResolver()Landroid/content/ContentResolver; -HSPLandroid/provider/Settings$Config;->getStrings(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/util/List;)Ljava/util/Map; -HSPLandroid/provider/Settings$Config;->getStrings(Ljava/lang/String;Ljava/util/List;)Ljava/util/Map; -HSPLandroid/provider/Settings$Config;->registerContentObserver(Ljava/lang/String;ZLandroid/database/ContentObserver;)V -HSPLandroid/provider/Settings$ContentProviderHolder;->-$$Nest$fgetmUri(Landroid/provider/Settings$ContentProviderHolder;)Landroid/net/Uri; -HSPLandroid/provider/Settings$ContentProviderHolder;->getProvider(Landroid/content/ContentResolver;)Landroid/content/IContentProvider; -HSPLandroid/provider/Settings$GenerationTracker;-><init>(Ljava/lang/String;Landroid/util/MemoryIntArray;IILjava/util/function/Consumer;)V -HSPLandroid/provider/Settings$GenerationTracker;->destroy()V -HSPLandroid/provider/Settings$GenerationTracker;->getCurrentGeneration()I -HSPLandroid/provider/Settings$GenerationTracker;->isGenerationChanged()Z -HSPLandroid/provider/Settings$GenerationTracker;->readCurrentGeneration()I -HSPLandroid/provider/Settings$Global;->getFloat(Landroid/content/ContentResolver;Ljava/lang/String;F)F -HSPLandroid/provider/Settings$Global;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I -HSPLandroid/provider/Settings$Global;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I -HSPLandroid/provider/Settings$Global;->getLong(Landroid/content/ContentResolver;Ljava/lang/String;J)J -HSPLandroid/provider/Settings$Global;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/provider/Settings$Global;->getStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/provider/Settings$Global;->getUriFor(Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/Settings$Global;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z -HSPLandroid/provider/Settings$Global;->putLong(Landroid/content/ContentResolver;Ljava/lang/String;J)Z -HSPLandroid/provider/Settings$Global;->putString(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;)Z -HSPLandroid/provider/Settings$Global;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIZ)Z -HSPLandroid/provider/Settings$NameValueCache$$ExternalSyntheticLambda0;-><init>(Landroid/provider/Settings$NameValueCache;)V -HSPLandroid/provider/Settings$NameValueCache;->getStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/provider/Settings$NameValueCache;->getStringsForPrefixStripPrefix(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/util/List;)Ljava/util/Map;+]Landroid/content/ContentResolver;Landroid/app/ContextImpl$ApplicationContentResolver;]Landroid/content/IContentProvider;Landroid/content/ContentProvider$Transport;,Landroid/content/ContentProviderProxy;]Landroid/net/Uri;Landroid/net/Uri$StringUri;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/provider/Settings$ContentProviderHolder;Landroid/provider/Settings$ContentProviderHolder;]Landroid/provider/Settings$GenerationTracker;Landroid/provider/Settings$GenerationTracker;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/Arrays$ArrayItr;,Ljava/util/HashMap$EntryIterator;]Ljava/util/List;Ljava/util/Arrays$ArrayList;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; -HSPLandroid/provider/Settings$NameValueCache;->isCallerExemptFromReadableRestriction()Z -HSPLandroid/provider/Settings$NameValueCache;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIZ)Z -HSPLandroid/provider/Settings$NameValueTable;->getUriFor(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/Settings$Secure;->getFloatForUser(Landroid/content/ContentResolver;Ljava/lang/String;FI)F -HSPLandroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I -HSPLandroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I -HSPLandroid/provider/Settings$Secure;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)I -HSPLandroid/provider/Settings$Secure;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)I -HSPLandroid/provider/Settings$Secure;->getLong(Landroid/content/ContentResolver;Ljava/lang/String;J)J -HSPLandroid/provider/Settings$Secure;->getLongForUser(Landroid/content/ContentResolver;Ljava/lang/String;JI)J -HSPLandroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/provider/Settings$Secure;->getStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/provider/Settings$Secure;->getUriFor(Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/Settings$Secure;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z -HSPLandroid/provider/Settings$Secure;->putIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)Z -HSPLandroid/provider/Settings$Secure;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;I)Z -HSPLandroid/provider/Settings$Secure;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIZ)Z -HSPLandroid/provider/Settings$SettingNotFoundException;-><init>(Ljava/lang/String;)V -HSPLandroid/provider/Settings$System;->getFloat(Landroid/content/ContentResolver;Ljava/lang/String;)F -HSPLandroid/provider/Settings$System;->getFloatForUser(Landroid/content/ContentResolver;Ljava/lang/String;FI)F -HSPLandroid/provider/Settings$System;->getFloatForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)F -HSPLandroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I -HSPLandroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I -HSPLandroid/provider/Settings$System;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)I -HSPLandroid/provider/Settings$System;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)I -HSPLandroid/provider/Settings$System;->getStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;I)Ljava/lang/String; -HSPLandroid/provider/Settings$System;->getUriFor(Ljava/lang/String;)Landroid/net/Uri; -HSPLandroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z -HSPLandroid/provider/Settings$System;->putIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)Z -HSPLandroid/provider/Settings$System;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;I)Z -HSPLandroid/provider/Settings$System;->putStringForUser(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;IZ)Z -HSPLandroid/provider/Settings;->-$$Nest$smparseIntSetting(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/provider/Settings;->-$$Nest$smparseIntSettingWithDefault(Ljava/lang/String;I)I -HSPLandroid/provider/Settings;->canDrawOverlays(Landroid/content/Context;)Z -HSPLandroid/provider/Settings;->isCallingPackageAllowedToDrawOverlays(Landroid/content/Context;ILjava/lang/String;Z)Z -HSPLandroid/provider/Settings;->isCallingPackageAllowedToPerformAppOpsProtectedOperation(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;ZI[Ljava/lang/String;Z)Z -HSPLandroid/provider/Settings;->isInSystemServer()Z -HSPLandroid/provider/Settings;->parseFloatSettingWithDefault(Ljava/lang/String;F)F -HSPLandroid/provider/Settings;->parseIntSetting(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/provider/Settings;->parseIntSettingWithDefault(Ljava/lang/String;I)I -HSPLandroid/provider/Settings;->parseLongSettingWithDefault(Ljava/lang/String;J)J -HSPLandroid/provider/Telephony$Sms;->getDefaultSmsPackage(Landroid/content/Context;)Ljava/lang/String; -HSPLandroid/renderscript/RenderScriptCacheDir;->setupDiskCache(Ljava/io/File;)V -HSPLandroid/se/omapi/SeServiceManager;-><init>()V -HSPLandroid/security/KeyChain$1;-><init>(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)V -HSPLandroid/security/KeyChain$1;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/security/KeyChain$KeyChainConnection;-><init>(Landroid/content/Context;Landroid/content/ServiceConnection;Landroid/security/IKeyChainService;)V -HSPLandroid/security/KeyChain$KeyChainConnection;->close()V -HSPLandroid/security/KeyChain$KeyChainConnection;->getService()Landroid/security/IKeyChainService; -HSPLandroid/security/KeyChain;->bindAsUser(Landroid/content/Context;Landroid/os/Handler;Landroid/os/UserHandle;)Landroid/security/KeyChain$KeyChainConnection; -HSPLandroid/security/KeyChain;->bindAsUser(Landroid/content/Context;Landroid/os/UserHandle;)Landroid/security/KeyChain$KeyChainConnection; -HSPLandroid/security/KeyChain;->ensureNotOnMainThread(Landroid/content/Context;)V -HSPLandroid/security/KeyStore2$$ExternalSyntheticLambda3;->execute(Landroid/system/keystore2/IKeystoreService;)Ljava/lang/Object; -HSPLandroid/security/KeyStore2$$ExternalSyntheticLambda4;->execute(Landroid/system/keystore2/IKeystoreService;)Ljava/lang/Object; -HSPLandroid/security/KeyStore2;-><init>()V -HSPLandroid/security/KeyStore2;->getInstance()Landroid/security/KeyStore2; -HSPLandroid/security/KeyStore2;->getKeyEntry(Landroid/system/keystore2/KeyDescriptor;)Landroid/system/keystore2/KeyEntryResponse; -HSPLandroid/security/KeyStore2;->getKeyStoreException(ILjava/lang/String;)Landroid/security/KeyStoreException; -HSPLandroid/security/KeyStore2;->getService(Z)Landroid/system/keystore2/IKeystoreService; -HSPLandroid/security/KeyStore2;->handleRemoteExceptionWithRetry(Landroid/security/KeyStore2$CheckedRemoteRequest;)Ljava/lang/Object; -HSPLandroid/security/KeyStoreException;-><init>(ILjava/lang/String;)V -HSPLandroid/security/KeyStoreException;-><init>(ILjava/lang/String;Ljava/lang/String;)V -HSPLandroid/security/KeyStoreException;->getErrorCode()I -HSPLandroid/security/KeyStoreException;->initializeRkpStatusForRegularErrors(I)I -HSPLandroid/security/KeyStoreOperation$$ExternalSyntheticLambda0;->execute()Ljava/lang/Object; -HSPLandroid/security/KeyStoreOperation$$ExternalSyntheticLambda1;->execute()Ljava/lang/Object; -HSPLandroid/security/KeyStoreOperation$$ExternalSyntheticLambda2;->execute()Ljava/lang/Object; -HSPLandroid/security/KeyStoreOperation$$ExternalSyntheticLambda3;->execute()Ljava/lang/Object; -HSPLandroid/security/KeyStoreOperation;-><init>(Landroid/system/keystore2/IKeystoreOperation;Ljava/lang/Long;[Landroid/hardware/security/keymint/KeyParameter;)V -HSPLandroid/security/KeyStoreOperation;->abort()V -HSPLandroid/security/KeyStoreOperation;->finish([B[B)[B -HSPLandroid/security/KeyStoreOperation;->getChallenge()Ljava/lang/Long; -HSPLandroid/security/KeyStoreOperation;->getParameters()[Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/security/KeyStoreOperation;->handleExceptions(Landroid/security/CheckedRemoteRequest;)Ljava/lang/Object; -HSPLandroid/security/KeyStoreOperation;->update([B)[B -HSPLandroid/security/KeyStoreSecurityLevel;-><init>(Landroid/system/keystore2/IKeystoreSecurityLevel;)V -HSPLandroid/security/KeyStoreSecurityLevel;->createOperation(Landroid/system/keystore2/KeyDescriptor;Ljava/util/Collection;)Landroid/security/KeyStoreOperation; -HSPLandroid/security/NetworkSecurityPolicy;->getInstance()Landroid/security/NetworkSecurityPolicy; -HSPLandroid/security/NetworkSecurityPolicy;->isCleartextTrafficPermitted(Ljava/lang/String;)Z -HSPLandroid/security/keymaster/ExportResult$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keymaster/ExportResult; -HSPLandroid/security/keymaster/ExportResult$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keymaster/ExportResult;-><init>(Landroid/os/Parcel;)V -HSPLandroid/security/keymaster/KeyCharacteristics$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keymaster/KeyCharacteristics; -HSPLandroid/security/keymaster/KeyCharacteristics$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keymaster/KeyCharacteristics;-><init>()V -HSPLandroid/security/keymaster/KeyCharacteristics;->getEnum(I)Ljava/lang/Integer; -HSPLandroid/security/keymaster/KeyCharacteristics;->getEnums(I)Ljava/util/List; -HSPLandroid/security/keymaster/KeyCharacteristics;->getUnsignedInt(IJ)J -HSPLandroid/security/keymaster/KeyCharacteristics;->shallowCopyFrom(Landroid/security/keymaster/KeyCharacteristics;)V -HSPLandroid/security/keymaster/KeymasterArgument$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keymaster/KeymasterArgument; -HSPLandroid/security/keymaster/KeymasterArgument$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keymaster/KeymasterArgument;-><init>(I)V -HSPLandroid/security/keymaster/KeymasterArgument;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/security/keymaster/KeymasterArguments$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keymaster/KeymasterArguments; -HSPLandroid/security/keymaster/KeymasterArguments$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keymaster/KeymasterArguments;-><init>()V -HSPLandroid/security/keymaster/KeymasterArguments;->addBoolean(I)V -HSPLandroid/security/keymaster/KeymasterArguments;->addBytes(I[B)V -HSPLandroid/security/keymaster/KeymasterArguments;->addDateIfNotNull(ILjava/util/Date;)V -HSPLandroid/security/keymaster/KeymasterArguments;->addEnum(II)V -HSPLandroid/security/keymaster/KeymasterArguments;->addEnums(I[I)V -HSPLandroid/security/keymaster/KeymasterArguments;->addLongTag(ILjava/math/BigInteger;)V -HSPLandroid/security/keymaster/KeymasterArguments;->addUnsignedInt(IJ)V -HSPLandroid/security/keymaster/KeymasterArguments;->addUnsignedLong(ILjava/math/BigInteger;)V -HSPLandroid/security/keymaster/KeymasterArguments;->containsTag(I)Z -HSPLandroid/security/keymaster/KeymasterArguments;->getArgumentByTag(I)Landroid/security/keymaster/KeymasterArgument; -HSPLandroid/security/keymaster/KeymasterArguments;->getBytes(I[B)[B -HSPLandroid/security/keymaster/KeymasterArguments;->getEnum(II)I -HSPLandroid/security/keymaster/KeymasterArguments;->getEnums(I)Ljava/util/List; -HSPLandroid/security/keymaster/KeymasterArguments;->getUnsignedInt(IJ)J -HSPLandroid/security/keymaster/KeymasterArguments;->toUint64(J)Ljava/math/BigInteger; -HSPLandroid/security/keymaster/KeymasterArguments;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/security/keymaster/KeymasterBlob;-><init>([B)V -HSPLandroid/security/keymaster/KeymasterBlob;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/security/keymaster/KeymasterBlobArgument;-><init>(I[B)V -HSPLandroid/security/keymaster/KeymasterBlobArgument;->writeValue(Landroid/os/Parcel;)V -HSPLandroid/security/keymaster/KeymasterBooleanArgument;-><init>(I)V -HSPLandroid/security/keymaster/KeymasterBooleanArgument;->writeValue(Landroid/os/Parcel;)V -HSPLandroid/security/keymaster/KeymasterDefs;->getErrorMessage(I)Ljava/lang/String; -HSPLandroid/security/keymaster/KeymasterDefs;->getTagType(I)I -HSPLandroid/security/keymaster/KeymasterIntArgument;-><init>(II)V -HSPLandroid/security/keymaster/KeymasterIntArgument;->writeValue(Landroid/os/Parcel;)V -HSPLandroid/security/keymaster/KeymasterLongArgument;-><init>(IJ)V -HSPLandroid/security/keymaster/KeymasterLongArgument;->writeValue(Landroid/os/Parcel;)V -HSPLandroid/security/keymaster/OperationResult$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keymaster/OperationResult; -HSPLandroid/security/keymaster/OperationResult$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keymaster/OperationResult;-><init>(Landroid/os/Parcel;)V -HSPLandroid/security/keystore/AndroidKeyStoreProvider;-><init>(Ljava/lang/String;)V -HSPLandroid/security/keystore/AndroidKeyStoreProvider;->getKeyStoreForUid(I)Ljava/security/KeyStore; -HSPLandroid/security/keystore/ArrayUtils;->cloneIfNotEmpty([B)[B -HSPLandroid/security/keystore/ArrayUtils;->cloneIfNotEmpty([Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/security/keystore/ArrayUtils;->concat([BII[BII)[B -HSPLandroid/security/keystore/ArrayUtils;->concat([B[B)[B -HSPLandroid/security/keystore/ArrayUtils;->nullToEmpty([Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/security/keystore/ArrayUtils;->subarray([BII)[B -HSPLandroid/security/keystore/DelegatingX509Certificate;-><init>(Ljava/security/cert/X509Certificate;)V -HSPLandroid/security/keystore/KeyGenParameterSpec$Builder;-><init>(Ljava/lang/String;I)V -HSPLandroid/security/keystore/KeyGenParameterSpec$Builder;->build()Landroid/security/keystore/KeyGenParameterSpec; -HSPLandroid/security/keystore/KeyGenParameterSpec$Builder;->setBlockModes([Ljava/lang/String;)Landroid/security/keystore/KeyGenParameterSpec$Builder; -HSPLandroid/security/keystore/KeyGenParameterSpec$Builder;->setEncryptionPaddings([Ljava/lang/String;)Landroid/security/keystore/KeyGenParameterSpec$Builder; -HSPLandroid/security/keystore/KeyGenParameterSpec$Builder;->setKeySize(I)Landroid/security/keystore/KeyGenParameterSpec$Builder; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getBlockModes()[Ljava/lang/String; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getEncryptionPaddings()[Ljava/lang/String; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getKeySize()I -HSPLandroid/security/keystore/KeyGenParameterSpec;->getKeyValidityForConsumptionEnd()Ljava/util/Date; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getKeyValidityForOriginationEnd()Ljava/util/Date; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getKeyValidityStart()Ljava/util/Date; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getKeystoreAlias()Ljava/lang/String; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getPurposes()I -HSPLandroid/security/keystore/KeyGenParameterSpec;->getSignaturePaddings()[Ljava/lang/String; -HSPLandroid/security/keystore/KeyGenParameterSpec;->getUid()I -HSPLandroid/security/keystore/KeyGenParameterSpec;->isCriticalToDeviceEncryption()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isDigestsSpecified()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isStrongBoxBacked()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isUnlockedDeviceRequired()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isUserAuthenticationRequired()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isUserConfirmationRequired()Z -HSPLandroid/security/keystore/KeyGenParameterSpec;->isUserPresenceRequired()Z -HSPLandroid/security/keystore/KeyProperties$BlockMode;->allToKeymaster([Ljava/lang/String;)[I -HSPLandroid/security/keystore/KeyProperties$Digest;->toKeymaster(Ljava/lang/String;)I -HSPLandroid/security/keystore/KeyProperties$EncryptionPadding;->allToKeymaster([Ljava/lang/String;)[I -HSPLandroid/security/keystore/KeyProperties$KeyAlgorithm;->fromKeymasterAsymmetricKeyAlgorithm(I)Ljava/lang/String; -HSPLandroid/security/keystore/KeyProperties$KeyAlgorithm;->fromKeymasterSecretKeyAlgorithm(II)Ljava/lang/String; -HSPLandroid/security/keystore/KeyProperties$Purpose;->allToKeymaster(I)[I -HSPLandroid/security/keystore/KeyProperties$Purpose;->toKeymaster(I)I -HSPLandroid/security/keystore/KeystoreResponse$1;->createFromParcel(Landroid/os/Parcel;)Landroid/security/keystore/KeystoreResponse; -HSPLandroid/security/keystore/KeystoreResponse$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/security/keystore/KeystoreResponse;->getErrorCode()I -HSPLandroid/security/keystore/Utils;->cloneIfNotNull(Ljava/util/Date;)Ljava/util/Date; -HSPLandroid/security/keystore/Utils;->cloneIfNotNull([B)[B -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;-><init>(Landroid/security/KeyStoreOperation;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;-><init>(Landroid/security/KeyStoreOperation;Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream;->finish([B[B)[B -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationStreamer;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationStreamer;Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer;->doFinal([BII[B)[B -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding;-><init>()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding;->finalize()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;-><init>(I)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->addAlgorithmSpecificParametersToBegin(Ljava/util/List;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->createAdditionalAuthenticationDataStreamer(Landroid/security/KeyStoreOperation;)Landroid/security/keystore2/KeyStoreCryptoOperationStreamer; -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->createMainDataStreamer(Landroid/security/KeyStoreOperation;)Landroid/security/keystore2/KeyStoreCryptoOperationStreamer; -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->initAlgorithmSpecificParameters()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->initAlgorithmSpecificParameters(Ljava/security/spec/AlgorithmParameterSpec;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->resetAll()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM;->resetWhilePreservingInitState()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;-><init>(II)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->addAlgorithmSpecificParametersToBegin(Ljava/util/List;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->engineGetIV()[B -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->initKey(ILjava/security/Key;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->loadAlgorithmSpecificParametersFromBeginResult([Landroid/hardware/security/keymint/KeyParameter;)V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->resetAll()V -HSPLandroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi;->setIv([B)V -HSPLandroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider;-><init>()V -HSPLandroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider;->putAsymmetricCipherImpl(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider;->putMacImpl(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider;->putSignatureImpl(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider;->putSymmetricCipherImpl(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;-><init>()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->abortOperation()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->engineDoFinal([BII)[B -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->engineDoFinal([BII[BI)I -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->engineInit(ILjava/security/Key;Ljava/security/SecureRandom;)V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->engineInit(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->finalize()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->flushAAD()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->init(ILjava/security/Key;Ljava/security/SecureRandom;)V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->isEncrypting()Z -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->resetAll()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->resetWhilePreservingInitState()V -HSPLandroid/security/keystore2/AndroidKeyStoreCipherSpiBase;->setKey(Landroid/security/keystore2/AndroidKeyStoreKey;)V -HSPLandroid/security/keystore2/AndroidKeyStoreKey;-><init>(Landroid/system/keystore2/KeyDescriptor;J[Landroid/system/keystore2/Authorization;Ljava/lang/String;Landroid/security/KeyStoreSecurityLevel;)V -HSPLandroid/security/keystore2/AndroidKeyStoreKey;->getAlgorithm()Ljava/lang/String; -HSPLandroid/security/keystore2/AndroidKeyStoreKey;->getFormat()Ljava/lang/String; -HSPLandroid/security/keystore2/AndroidKeyStoreKey;->getKeyIdDescriptor()Landroid/system/keystore2/KeyDescriptor; -HSPLandroid/security/keystore2/AndroidKeyStoreKey;->getSecurityLevel()Landroid/security/KeyStoreSecurityLevel; -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;-><init>()V -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->install()V -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->loadAndroidKeyStoreKeyFromKeystore(Landroid/security/KeyStore2;Landroid/system/keystore2/KeyDescriptor;)Landroid/security/keystore2/AndroidKeyStoreKey; -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->loadAndroidKeyStoreKeyFromKeystore(Landroid/security/KeyStore2;Ljava/lang/String;I)Landroid/security/keystore2/AndroidKeyStoreKey; -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->makeAndroidKeyStoreSecretKeyFromKeyEntryResponse(Landroid/system/keystore2/KeyDescriptor;Landroid/system/keystore2/KeyEntryResponse;II)Landroid/security/keystore2/AndroidKeyStoreSecretKey; -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->putKeyFactoryImpl(Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreProvider;->putSecretKeyFactoryImpl(Ljava/lang/String;)V -HSPLandroid/security/keystore2/AndroidKeyStoreSecretKey;-><init>(Landroid/system/keystore2/KeyDescriptor;Landroid/system/keystore2/KeyMetadata;Ljava/lang/String;Landroid/security/KeyStoreSecurityLevel;)V -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;-><init>()V -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->engineContainsAlias(Ljava/lang/String;)Z -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->engineGetKey(Ljava/lang/String;[C)Ljava/security/Key; -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->engineIsKeyEntry(Ljava/lang/String;)Z -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->engineLoad(Ljava/security/KeyStore$LoadStoreParameter;)V -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->getKeyMetadata(Ljava/lang/String;)Landroid/system/keystore2/KeyEntryResponse; -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->getTargetDomain()I -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->isKeyEntry(Ljava/lang/String;)Z -HSPLandroid/security/keystore2/AndroidKeyStoreSpi;->makeKeyDescriptor(Ljava/lang/String;)Landroid/system/keystore2/KeyDescriptor; -HSPLandroid/security/keystore2/KeyStore2ParameterUtils;->makeBytes(I[B)Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/security/keystore2/KeyStore2ParameterUtils;->makeEnum(II)Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/security/keystore2/KeyStore2ParameterUtils;->makeInt(II)Landroid/hardware/security/keymint/KeyParameter; -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$MainDataStream;-><init>(Landroid/security/KeyStoreOperation;)V -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$MainDataStream;->finish([B[B)[B -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$MainDataStream;->update([B)[B -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$Stream;I)V -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer;-><init>(Landroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$Stream;II)V -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer;->doFinal([BII[B)[B -HSPLandroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer;->update([BII)[B -HSPLandroid/security/keystore2/KeyStoreCryptoOperationUtils;->abortOperation(Landroid/security/KeyStoreOperation;)V -HSPLandroid/security/keystore2/KeyStoreCryptoOperationUtils;->getOrMakeOperationChallenge(Landroid/security/KeyStoreOperation;Landroid/security/keystore2/AndroidKeyStoreKey;)J -HSPLandroid/security/keystore2/KeyStoreCryptoOperationUtils;->getRandomBytesToMixIntoKeystoreRng(Ljava/security/SecureRandom;I)[B -HSPLandroid/security/net/config/ApplicationConfig;-><init>(Landroid/security/net/config/ConfigSource;)V -HSPLandroid/security/net/config/ApplicationConfig;->ensureInitialized()V -HSPLandroid/security/net/config/ApplicationConfig;->getConfigForHostname(Ljava/lang/String;)Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/ApplicationConfig;->getDefaultInstance()Landroid/security/net/config/ApplicationConfig; -HSPLandroid/security/net/config/ApplicationConfig;->getTrustManager()Ljavax/net/ssl/X509TrustManager; -HSPLandroid/security/net/config/ApplicationConfig;->hasPerDomainConfigs()Z -HSPLandroid/security/net/config/ApplicationConfig;->isCleartextTrafficPermitted()Z -HSPLandroid/security/net/config/ApplicationConfig;->isCleartextTrafficPermitted(Ljava/lang/String;)Z -HSPLandroid/security/net/config/ApplicationConfig;->setDefaultInstance(Landroid/security/net/config/ApplicationConfig;)V -HSPLandroid/security/net/config/CertificatesEntryRef;-><init>(Landroid/security/net/config/CertificateSource;Z)V -HSPLandroid/security/net/config/CertificatesEntryRef;->findAllCertificatesByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/CertificatesEntryRef;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Landroid/security/net/config/TrustAnchor; -HSPLandroid/security/net/config/ConfigNetworkSecurityPolicy;-><init>(Landroid/security/net/config/ApplicationConfig;)V -HSPLandroid/security/net/config/ConfigNetworkSecurityPolicy;->isCertificateTransparencyVerificationRequired(Ljava/lang/String;)Z -HSPLandroid/security/net/config/ConfigNetworkSecurityPolicy;->isCleartextTrafficPermitted(Ljava/lang/String;)Z -HSPLandroid/security/net/config/DirectoryCertificateSource$1;-><init>(Landroid/security/net/config/DirectoryCertificateSource;Ljava/security/cert/X509Certificate;)V -HSPLandroid/security/net/config/DirectoryCertificateSource$3;-><init>(Landroid/security/net/config/DirectoryCertificateSource;Ljava/security/cert/X509Certificate;)V -HSPLandroid/security/net/config/DirectoryCertificateSource$3;->match(Ljava/security/cert/X509Certificate;)Z -HSPLandroid/security/net/config/DirectoryCertificateSource;-><init>(Ljava/io/File;)V -HSPLandroid/security/net/config/DirectoryCertificateSource;->findAllByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/DirectoryCertificateSource;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/DirectoryCertificateSource;->findCert(Ljavax/security/auth/x500/X500Principal;Landroid/security/net/config/DirectoryCertificateSource$CertSelector;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/DirectoryCertificateSource;->findCerts(Ljavax/security/auth/x500/X500Principal;Landroid/security/net/config/DirectoryCertificateSource$CertSelector;)Ljava/util/Set; -HSPLandroid/security/net/config/DirectoryCertificateSource;->getHash(Ljavax/security/auth/x500/X500Principal;)Ljava/lang/String; -HSPLandroid/security/net/config/DirectoryCertificateSource;->hashName(Ljavax/security/auth/x500/X500Principal;)I -HSPLandroid/security/net/config/DirectoryCertificateSource;->intToHexString(II)Ljava/lang/String; -HSPLandroid/security/net/config/DirectoryCertificateSource;->readCertificate(Ljava/lang/String;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/Domain;->hashCode()I -HSPLandroid/security/net/config/KeyStoreCertificateSource;-><init>(Ljava/security/KeyStore;)V -HSPLandroid/security/net/config/KeyStoreCertificateSource;->ensureInitialized()V -HSPLandroid/security/net/config/KeyStoreCertificateSource;->findAllByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/KeyStoreCertificateSource;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/KeyStoreConfigSource;-><init>(Ljava/security/KeyStore;)V -HSPLandroid/security/net/config/KeyStoreConfigSource;->getDefaultConfig()Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/KeyStoreConfigSource;->getPerDomainConfigs()Ljava/util/Set; -HSPLandroid/security/net/config/ManifestConfigSource$DefaultConfigSource;-><init>(ZLandroid/content/pm/ApplicationInfo;)V -HSPLandroid/security/net/config/ManifestConfigSource$DefaultConfigSource;->getDefaultConfig()Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/ManifestConfigSource$DefaultConfigSource;->getPerDomainConfigs()Ljava/util/Set; -HSPLandroid/security/net/config/ManifestConfigSource;-><init>(Landroid/content/Context;)V -HSPLandroid/security/net/config/ManifestConfigSource;->getConfigSource()Landroid/security/net/config/ConfigSource; -HSPLandroid/security/net/config/ManifestConfigSource;->getDefaultConfig()Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/ManifestConfigSource;->getPerDomainConfigs()Ljava/util/Set; -HSPLandroid/security/net/config/NetworkSecurityConfig$1;-><init>(Landroid/security/net/config/NetworkSecurityConfig;)V -HSPLandroid/security/net/config/NetworkSecurityConfig$1;->compare(Landroid/security/net/config/CertificatesEntryRef;Landroid/security/net/config/CertificatesEntryRef;)I -HSPLandroid/security/net/config/NetworkSecurityConfig$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;-><init>()V -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->addCertificatesEntryRef(Landroid/security/net/config/CertificatesEntryRef;)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->addCertificatesEntryRefs(Ljava/util/Collection;)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->build()Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveCertificatesEntryRefs()Ljava/util/List; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveCleartextTrafficPermitted()Z -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveHstsEnforced()Z -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectivePinSet()Landroid/security/net/config/PinSet; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getParent()Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setCleartextTrafficPermitted(Z)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setHstsEnforced(Z)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setParent(Landroid/security/net/config/NetworkSecurityConfig$Builder;)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig;-><init>(ZZZLandroid/security/net/config/PinSet;Ljava/util/List;)V -HSPLandroid/security/net/config/NetworkSecurityConfig;->findAllCertificatesByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/NetworkSecurityConfig;->findTrustAnchorBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Landroid/security/net/config/TrustAnchor; -HSPLandroid/security/net/config/NetworkSecurityConfig;->getDefaultBuilder(Landroid/content/pm/ApplicationInfo;)Landroid/security/net/config/NetworkSecurityConfig$Builder; -HSPLandroid/security/net/config/NetworkSecurityConfig;->getPins()Landroid/security/net/config/PinSet; -HSPLandroid/security/net/config/NetworkSecurityConfig;->getTrustManager()Landroid/security/net/config/NetworkSecurityTrustManager; -HSPLandroid/security/net/config/NetworkSecurityConfig;->isCleartextTrafficPermitted()Z -HSPLandroid/security/net/config/NetworkSecurityConfigProvider;-><init>()V -HSPLandroid/security/net/config/NetworkSecurityConfigProvider;->handleNewApplication(Landroid/content/Context;)V -HSPLandroid/security/net/config/NetworkSecurityConfigProvider;->install(Landroid/content/Context;)V -HSPLandroid/security/net/config/NetworkSecurityTrustManager;-><init>(Landroid/security/net/config/NetworkSecurityConfig;)V -HSPLandroid/security/net/config/NetworkSecurityTrustManager;->checkPins(Ljava/util/List;)V -HSPLandroid/security/net/config/NetworkSecurityTrustManager;->checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/security/net/config/NetworkSecurityTrustManager;->checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/net/Socket;)V -HSPLandroid/security/net/config/RootTrustManager;-><init>(Landroid/security/net/config/ApplicationConfig;)V -HSPLandroid/security/net/config/RootTrustManager;->checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/security/net/config/RootTrustManager;->checkServerTrusted([Ljava/security/cert/X509Certificate;Ljava/lang/String;Ljava/net/Socket;)V -HSPLandroid/security/net/config/RootTrustManagerFactorySpi;-><init>()V -HSPLandroid/security/net/config/RootTrustManagerFactorySpi;->engineGetTrustManagers()[Ljavax/net/ssl/TrustManager; -HSPLandroid/security/net/config/RootTrustManagerFactorySpi;->engineInit(Ljava/security/KeyStore;)V -HSPLandroid/security/net/config/SystemCertificateSource$NoPreloadHolder;->-$$Nest$sfgetINSTANCE()Landroid/security/net/config/SystemCertificateSource; -HSPLandroid/security/net/config/SystemCertificateSource$NoPreloadHolder;-><clinit>()V -HSPLandroid/security/net/config/SystemCertificateSource;-><init>()V -HSPLandroid/security/net/config/SystemCertificateSource;-><init>(Landroid/security/net/config/SystemCertificateSource-IA;)V -HSPLandroid/security/net/config/SystemCertificateSource;->findAllByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/SystemCertificateSource;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/SystemCertificateSource;->getDirectory()Ljava/io/File; -HSPLandroid/security/net/config/SystemCertificateSource;->getInstance()Landroid/security/net/config/SystemCertificateSource; -HSPLandroid/security/net/config/SystemCertificateSource;->isCertMarkedAsRemoved(Ljava/lang/String;)Z -HSPLandroid/security/net/config/TrustedCertificateStoreAdapter;-><init>(Landroid/security/net/config/NetworkSecurityConfig;)V -HSPLandroid/security/net/config/TrustedCertificateStoreAdapter;->findAllIssuers(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/TrustedCertificateStoreAdapter;->getTrustAnchor(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/UserCertificateSource$NoPreloadHolder;-><clinit>()V -HSPLandroid/security/net/config/UserCertificateSource;->findAllByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set; -HSPLandroid/security/net/config/UserCertificateSource;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Ljava/security/cert/X509Certificate; -HSPLandroid/security/net/config/XmlConfigSource;-><init>(Landroid/content/Context;ILandroid/content/pm/ApplicationInfo;)V -HSPLandroid/security/net/config/XmlConfigSource;->addDebugAnchorsIfNeeded(Landroid/security/net/config/NetworkSecurityConfig$Builder;Landroid/security/net/config/NetworkSecurityConfig$Builder;)V -HSPLandroid/security/net/config/XmlConfigSource;->ensureInitialized()V -HSPLandroid/security/net/config/XmlConfigSource;->getDefaultConfig()Landroid/security/net/config/NetworkSecurityConfig; -HSPLandroid/security/net/config/XmlConfigSource;->getPerDomainConfigs()Ljava/util/Set; -HSPLandroid/security/net/config/XmlConfigSource;->parseCertificatesEntry(Landroid/content/res/XmlResourceParser;Z)Landroid/security/net/config/CertificatesEntryRef; -HSPLandroid/security/net/config/XmlConfigSource;->parseConfigEntry(Landroid/content/res/XmlResourceParser;Ljava/util/Set;Landroid/security/net/config/NetworkSecurityConfig$Builder;I)Ljava/util/List; -HSPLandroid/security/net/config/XmlConfigSource;->parseDomain(Landroid/content/res/XmlResourceParser;Ljava/util/Set;)Landroid/security/net/config/Domain; -HSPLandroid/security/net/config/XmlConfigSource;->parseNetworkSecurityConfig(Landroid/content/res/XmlResourceParser;)V -HSPLandroid/security/net/config/XmlConfigSource;->parseTrustAnchors(Landroid/content/res/XmlResourceParser;Z)Ljava/util/Collection; -HSPLandroid/server/FeatureFlagsImpl;->telemetryApisService()Z -HSPLandroid/service/appprediction/IPredictionService$Stub;-><init>()V -HSPLandroid/service/dreams/IDreamManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/service/dreams/IDreamManager; -HSPLandroid/service/media/IMediaBrowserService$Stub;-><init>()V -HSPLandroid/service/media/IMediaBrowserService$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/service/media/IMediaBrowserServiceCallbacks$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/service/media/IMediaBrowserServiceCallbacks$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/service/media/IMediaBrowserServiceCallbacks$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/service/media/IMediaBrowserServiceCallbacks$Stub;->asInterface(Landroid/os/IBinder;)Landroid/service/media/IMediaBrowserServiceCallbacks; -HSPLandroid/service/media/MediaBrowserService$ServiceBinder;->connect(Ljava/lang/String;Landroid/os/Bundle;Landroid/service/media/IMediaBrowserServiceCallbacks;)V -HSPLandroid/service/media/MediaBrowserService;->-$$Nest$fgetmHandler(Landroid/service/media/MediaBrowserService;)Landroid/os/Handler; -HSPLandroid/service/media/MediaBrowserService;-><init>()V -HSPLandroid/service/media/MediaBrowserService;->onBind(Landroid/content/Intent;)Landroid/os/IBinder; -HSPLandroid/service/media/MediaBrowserService;->onCreate()V -HSPLandroid/service/media/MediaBrowserService;->setSessionToken(Landroid/media/session/MediaSession$Token;)V -HSPLandroid/service/notification/Condition$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/Condition; -HSPLandroid/service/notification/Condition$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/service/notification/Condition;-><init>(Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V -HSPLandroid/service/notification/Condition;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/Condition;->equals(Ljava/lang/Object;)Z -HSPLandroid/service/notification/Condition;->isValidState(I)Z -HSPLandroid/service/notification/ConditionProviderService$H;-><init>(Landroid/service/notification/ConditionProviderService;)V -HSPLandroid/service/notification/ConditionProviderService$H;->handleMessage(Landroid/os/Message;)V -HSPLandroid/service/notification/ConditionProviderService$Provider;-><init>(Landroid/service/notification/ConditionProviderService;)V -HSPLandroid/service/notification/ConditionProviderService$Provider;->onConnected()V -HSPLandroid/service/notification/ConditionProviderService;-><init>()V -HSPLandroid/service/notification/ConditionProviderService;->getNotificationInterface()Landroid/app/INotificationManager; -HSPLandroid/service/notification/ConditionProviderService;->onBind(Landroid/content/Intent;)Landroid/os/IBinder; -HSPLandroid/service/notification/IConditionProvider$Stub;-><init>()V -HSPLandroid/service/notification/IConditionProvider$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/service/notification/INotificationListener$Stub;-><init>()V -HSPLandroid/service/notification/INotificationListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/service/notification/INotificationListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/service/notification/IStatusBarNotificationHolder$Stub$Proxy;->get()Landroid/service/notification/StatusBarNotification; -HSPLandroid/service/notification/NotificationListenerService$MyHandler;-><init>(Landroid/service/notification/NotificationListenerService;Landroid/os/Looper;)V -HSPLandroid/service/notification/NotificationListenerService$MyHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;-><init>(Landroid/service/notification/NotificationListenerService;)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onInterruptionFilterChanged(I)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onListenerConnected(Landroid/service/notification/NotificationRankingUpdate;)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onNotificationChannelGroupModification(Ljava/lang/String;Landroid/os/UserHandle;Landroid/app/NotificationChannelGroup;I)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onNotificationChannelModification(Ljava/lang/String;Landroid/os/UserHandle;Landroid/app/NotificationChannel;I)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onNotificationPosted(Landroid/service/notification/IStatusBarNotificationHolder;Landroid/service/notification/NotificationRankingUpdate;)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onNotificationRankingUpdate(Landroid/service/notification/NotificationRankingUpdate;)V -HSPLandroid/service/notification/NotificationListenerService$NotificationListenerWrapper;->onNotificationRemoved(Landroid/service/notification/IStatusBarNotificationHolder;Landroid/service/notification/NotificationRankingUpdate;Landroid/service/notification/NotificationStats;I)V -HSPLandroid/service/notification/NotificationListenerService$Ranking;-><init>()V -HSPLandroid/service/notification/NotificationListenerService$Ranking;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/NotificationListenerService$Ranking;->getChannel()Landroid/app/NotificationChannel; -HSPLandroid/service/notification/NotificationListenerService$Ranking;->getKey()Ljava/lang/String; -HSPLandroid/service/notification/NotificationListenerService$Ranking;->populate(Landroid/service/notification/NotificationListenerService$Ranking;)V -HSPLandroid/service/notification/NotificationListenerService$Ranking;->populate(Ljava/lang/String;IZIIILjava/lang/CharSequence;Ljava/lang/String;Landroid/app/NotificationChannel;Ljava/util/ArrayList;Ljava/util/ArrayList;ZIZJZLjava/util/ArrayList;Ljava/util/ArrayList;ZZZLandroid/content/pm/ShortcutInfo;IZIZ)V -HSPLandroid/service/notification/NotificationListenerService$RankingMap$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/NotificationListenerService$RankingMap; -HSPLandroid/service/notification/NotificationListenerService$RankingMap$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/service/notification/NotificationListenerService$RankingMap;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/NotificationListenerService$RankingMap;->getOrderedKeys()[Ljava/lang/String; -HSPLandroid/service/notification/NotificationListenerService$RankingMap;->getRanking(Ljava/lang/String;Landroid/service/notification/NotificationListenerService$Ranking;)Z -HSPLandroid/service/notification/NotificationListenerService;-><init>()V -HSPLandroid/service/notification/NotificationListenerService;->applyUpdateLocked(Landroid/service/notification/NotificationRankingUpdate;)V -HSPLandroid/service/notification/NotificationListenerService;->attachBaseContext(Landroid/content/Context;)V -HSPLandroid/service/notification/NotificationListenerService;->cleanUpNotificationList(Landroid/content/pm/ParceledListSlice;)[Landroid/service/notification/StatusBarNotification; -HSPLandroid/service/notification/NotificationListenerService;->createLegacyIconExtras(Landroid/app/Notification;)V -HSPLandroid/service/notification/NotificationListenerService;->getActiveNotifications()[Landroid/service/notification/StatusBarNotification; -HSPLandroid/service/notification/NotificationListenerService;->getActiveNotifications([Ljava/lang/String;I)[Landroid/service/notification/StatusBarNotification; -HSPLandroid/service/notification/NotificationListenerService;->getContext()Landroid/content/Context; -HSPLandroid/service/notification/NotificationListenerService;->getCurrentRanking()Landroid/service/notification/NotificationListenerService$RankingMap; -HSPLandroid/service/notification/NotificationListenerService;->getNotificationInterface()Landroid/app/INotificationManager; -HSPLandroid/service/notification/NotificationListenerService;->isBound()Z -HSPLandroid/service/notification/NotificationListenerService;->maybePopulatePeople(Landroid/app/Notification;)V -HSPLandroid/service/notification/NotificationListenerService;->maybePopulateRemoteViews(Landroid/app/Notification;)V -HSPLandroid/service/notification/NotificationListenerService;->onBind(Landroid/content/Intent;)Landroid/os/IBinder; -HSPLandroid/service/notification/NotificationListenerService;->onInterruptionFilterChanged(I)V -HSPLandroid/service/notification/NotificationListenerService;->onListenerConnected()V -HSPLandroid/service/notification/NotificationListenerService;->onNotificationChannelGroupModified(Ljava/lang/String;Landroid/os/UserHandle;Landroid/app/NotificationChannelGroup;I)V -HSPLandroid/service/notification/NotificationListenerService;->onNotificationPosted(Landroid/service/notification/StatusBarNotification;Landroid/service/notification/NotificationListenerService$RankingMap;)V -HSPLandroid/service/notification/NotificationListenerService;->onNotificationRankingUpdate(Landroid/service/notification/NotificationListenerService$RankingMap;)V -HSPLandroid/service/notification/NotificationListenerService;->onNotificationRemoved(Landroid/service/notification/StatusBarNotification;Landroid/service/notification/NotificationListenerService$RankingMap;Landroid/service/notification/NotificationStats;I)V -HSPLandroid/service/notification/NotificationRankingUpdate$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/NotificationRankingUpdate; -HSPLandroid/service/notification/NotificationRankingUpdate$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/service/notification/NotificationRankingUpdate;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/NotificationRankingUpdate;->getRankingMap()Landroid/service/notification/NotificationListenerService$RankingMap; -HSPLandroid/service/notification/StatusBarNotification$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/StatusBarNotification; -HSPLandroid/service/notification/StatusBarNotification$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/service/notification/StatusBarNotification;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/StatusBarNotification;->getGroupKey()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getId()I -HSPLandroid/service/notification/StatusBarNotification;->getInstanceId()Lcom/android/internal/logging/InstanceId; -HSPLandroid/service/notification/StatusBarNotification;->getKey()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getNotification()Landroid/app/Notification; -HSPLandroid/service/notification/StatusBarNotification;->getOpPkg()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getOverrideGroupKey()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getPackageContext(Landroid/content/Context;)Landroid/content/Context; -HSPLandroid/service/notification/StatusBarNotification;->getPackageName()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getPostTime()J -HSPLandroid/service/notification/StatusBarNotification;->getTag()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->getUid()I -HSPLandroid/service/notification/StatusBarNotification;->getUser()Landroid/os/UserHandle; -HSPLandroid/service/notification/StatusBarNotification;->getUserId()I -HSPLandroid/service/notification/StatusBarNotification;->groupKey()Ljava/lang/String; -HSPLandroid/service/notification/StatusBarNotification;->isAppGroup()Z -HSPLandroid/service/notification/StatusBarNotification;->isGroup()Z -HSPLandroid/service/notification/StatusBarNotification;->isOngoing()Z -HSPLandroid/service/notification/StatusBarNotification;->key()Ljava/lang/String; -HSPLandroid/service/notification/ZenModeConfig$ZenRule$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/ZenModeConfig$ZenRule; -HSPLandroid/service/notification/ZenModeConfig$ZenRule$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/service/notification/ZenModeConfig$ZenRule;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/ZenModeConfig$ZenRule;->equals(Ljava/lang/Object;)Z -HSPLandroid/service/notification/ZenModeConfig;-><init>(Landroid/os/Parcel;)V -HSPLandroid/service/notification/ZenModeConfig;->areAllPriorityOnlyRingerSoundsMuted(Landroid/app/NotificationManager$Policy;)Z -HSPLandroid/service/notification/ZenModeConfig;->equals(Ljava/lang/Object;)Z -HSPLandroid/service/textclassifier/ITextClassifierCallback$Stub$Proxy;->onSuccess(Landroid/os/Bundle;)V -HSPLandroid/service/textclassifier/ITextClassifierCallback$Stub;-><init>()V -HSPLandroid/service/textclassifier/ITextClassifierCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/service/textclassifier/ITextClassifierCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onClassifyText(Landroid/view/textclassifier/TextClassificationSessionId;Landroid/view/textclassifier/TextClassification$Request;Landroid/service/textclassifier/ITextClassifierCallback;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onCreateTextClassificationSession(Landroid/view/textclassifier/TextClassificationContext;Landroid/view/textclassifier/TextClassificationSessionId;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onDestroyTextClassificationSession(Landroid/view/textclassifier/TextClassificationSessionId;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onGenerateLinks(Landroid/view/textclassifier/TextClassificationSessionId;Landroid/view/textclassifier/TextLinks$Request;Landroid/service/textclassifier/ITextClassifierCallback;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onSelectionEvent(Landroid/view/textclassifier/TextClassificationSessionId;Landroid/view/textclassifier/SelectionEvent;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onSuggestConversationActions(Landroid/view/textclassifier/TextClassificationSessionId;Landroid/view/textclassifier/ConversationActions$Request;Landroid/service/textclassifier/ITextClassifierCallback;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub$Proxy;->onTextClassifierEvent(Landroid/view/textclassifier/TextClassificationSessionId;Landroid/view/textclassifier/TextClassifierEvent;)V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub;-><init>()V -HSPLandroid/service/textclassifier/ITextClassifierService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/service/textclassifier/ITextClassifierService; -HSPLandroid/service/textclassifier/ITextClassifierService$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/service/textclassifier/TextClassifierService;->getResponse(Landroid/os/Bundle;)Landroid/os/Parcelable; -HSPLandroid/service/voice/VoiceInteractionServiceInfo;-><init>(Landroid/content/pm/PackageManager;Landroid/content/pm/ServiceInfo;)V -HSPLandroid/service/voice/VoiceInteractionServiceInfo;->getParseError()Ljava/lang/String; -HSPLandroid/service/voice/VoiceInteractionServiceInfo;->getRecognitionService()Ljava/lang/String; -HSPLandroid/service/voice/VoiceInteractionServiceInfo;->getServiceInfo()Landroid/content/pm/ServiceInfo; -HSPLandroid/service/vr/IVrManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/service/vr/IVrManager; -HSPLandroid/service/vr/IVrStateCallbacks$Stub;-><init>()V -HSPLandroid/speech/tts/ITextToSpeechCallback$Stub;-><init>()V -HSPLandroid/speech/tts/ITextToSpeechCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/speech/tts/ITextToSpeechService$Stub$Proxy;->getClientDefaultLanguage()[Ljava/lang/String; -HSPLandroid/speech/tts/ITextToSpeechService$Stub$Proxy;->getDefaultVoiceNameFor(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/speech/tts/ITextToSpeechService$Stub$Proxy;->setCallback(Landroid/os/IBinder;Landroid/speech/tts/ITextToSpeechCallback;)V -HSPLandroid/speech/tts/TextToSpeech$Connection$1;-><init>(Landroid/speech/tts/TextToSpeech$Connection;)V -HSPLandroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask;->doInBackground([Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask;->doInBackground([Ljava/lang/Void;)Ljava/lang/Integer; -HSPLandroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask;->onPostExecute(Ljava/lang/Integer;)V -HSPLandroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask;->onPostExecute(Ljava/lang/Object;)V -HSPLandroid/speech/tts/TextToSpeech$Connection;-><init>(Landroid/speech/tts/TextToSpeech;)V -HSPLandroid/speech/tts/TextToSpeech$Connection;->getCallerIdentity()Landroid/os/IBinder; -HSPLandroid/speech/tts/TextToSpeech$Connection;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLandroid/speech/tts/TextToSpeech$EngineInfo;-><init>()V -HSPLandroid/speech/tts/TextToSpeech;-><init>(Landroid/content/Context;Landroid/speech/tts/TextToSpeech$OnInitListener;)V -HSPLandroid/speech/tts/TextToSpeech;-><init>(Landroid/content/Context;Landroid/speech/tts/TextToSpeech$OnInitListener;Ljava/lang/String;)V -HSPLandroid/speech/tts/TextToSpeech;-><init>(Landroid/content/Context;Landroid/speech/tts/TextToSpeech$OnInitListener;Ljava/lang/String;Ljava/lang/String;Z)V -HSPLandroid/speech/tts/TextToSpeech;->connectToEngine(Ljava/lang/String;)Z -HSPLandroid/speech/tts/TextToSpeech;->dispatchOnInit(I)V -HSPLandroid/speech/tts/TextToSpeech;->getDefaultEngine()Ljava/lang/String; -HSPLandroid/speech/tts/TextToSpeech;->initTts()I -HSPLandroid/speech/tts/TextToSpeech;->runAction(Landroid/speech/tts/TextToSpeech$Action;Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/speech/tts/TextToSpeech;->runAction(Landroid/speech/tts/TextToSpeech$Action;Ljava/lang/Object;Ljava/lang/String;ZZ)Ljava/lang/Object; -HSPLandroid/speech/tts/TtsEngines;-><init>(Landroid/content/Context;)V -HSPLandroid/speech/tts/TtsEngines;->getDefaultEngine()Ljava/lang/String; -HSPLandroid/speech/tts/TtsEngines;->getEngineInfo(Landroid/content/pm/ResolveInfo;Landroid/content/pm/PackageManager;)Landroid/speech/tts/TextToSpeech$EngineInfo; -HSPLandroid/speech/tts/TtsEngines;->getEngines()Ljava/util/List; -HSPLandroid/speech/tts/TtsEngines;->isEngineInstalled(Ljava/lang/String;)Z -HSPLandroid/speech/tts/TtsEngines;->isSystemEngine(Landroid/content/pm/ServiceInfo;)Z -HSPLandroid/sysprop/DisplayProperties;->debug_force_rtl()Ljava/util/Optional; -HSPLandroid/sysprop/DisplayProperties;->debug_layout()Ljava/util/Optional; -HSPLandroid/sysprop/DisplayProperties;->debug_vri_package()Ljava/util/Optional; -HSPLandroid/sysprop/DisplayProperties;->tryParseBoolean(Ljava/lang/String;)Ljava/lang/Boolean; -HSPLandroid/sysprop/DisplayProperties;->tryParseString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/InputProperties;->tryParseString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda10;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda4;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda5;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda6;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda7;-><init>()V -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda7;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda8;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda9;-><init>()V -HSPLandroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda9;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/sysprop/TelephonyProperties;->baseband_version()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->current_active_phone()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->icc_operator_alpha()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->icc_operator_iso_country()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->icc_operator_numeric()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->lambda$baseband_version$0(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->lambda$icc_operator_alpha$8(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->lambda$icc_operator_iso_country$9(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->lambda$icc_operator_numeric$7(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->lambda$operator_alpha$1(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->lambda$operator_is_roaming$3(Ljava/lang/String;)Ljava/lang/Boolean; -HSPLandroid/sysprop/TelephonyProperties;->lambda$operator_numeric$2(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/TelephonyProperties;->max_active_modems()Ljava/util/Optional; -HSPLandroid/sysprop/TelephonyProperties;->multi_sim_config()Ljava/util/Optional; -HSPLandroid/sysprop/TelephonyProperties;->operator_alpha()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->operator_is_roaming()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->operator_numeric()Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->tryParseBoolean(Ljava/lang/String;)Ljava/lang/Boolean; -HSPLandroid/sysprop/TelephonyProperties;->tryParseInteger(Ljava/lang/String;)Ljava/lang/Integer; -HSPLandroid/sysprop/TelephonyProperties;->tryParseList(Ljava/util/function/Function;Ljava/lang/String;)Ljava/util/List; -HSPLandroid/sysprop/TelephonyProperties;->tryParseString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/sysprop/VndkProperties;->product_vndk_version()Ljava/util/Optional; -HSPLandroid/sysprop/VndkProperties;->tryParseString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/system/ErrnoException;-><init>(Ljava/lang/String;I)V -HSPLandroid/system/ErrnoException;->getMessage()Ljava/lang/String; -HSPLandroid/system/ErrnoException;->rethrowAsIOException()Ljava/io/IOException; -HSPLandroid/system/GaiException;-><init>(Ljava/lang/String;I)V -HSPLandroid/system/GaiException;->getMessage()Ljava/lang/String; -HSPLandroid/system/GaiException;->rethrowAsUnknownHostException(Ljava/lang/String;)Ljava/net/UnknownHostException; -HSPLandroid/system/Int32Ref;-><init>(I)V -HSPLandroid/system/Os;->accept(Ljava/io/FileDescriptor;Ljava/net/InetSocketAddress;)Ljava/io/FileDescriptor; -HSPLandroid/system/Os;->accept(Ljava/io/FileDescriptor;Ljava/net/SocketAddress;)Ljava/io/FileDescriptor; -HSPLandroid/system/Os;->bind(Ljava/io/FileDescriptor;Ljava/net/SocketAddress;)V -HSPLandroid/system/Os;->capget(Landroid/system/StructCapUserHeader;)[Landroid/system/StructCapUserData; -HSPLandroid/system/Os;->chmod(Ljava/lang/String;I)V -HSPLandroid/system/Os;->close(Ljava/io/FileDescriptor;)V -HSPLandroid/system/Os;->fcntlInt(Ljava/io/FileDescriptor;II)I -HSPLandroid/system/Os;->fdatasync(Ljava/io/FileDescriptor;)V -HSPLandroid/system/Os;->fstat(Ljava/io/FileDescriptor;)Landroid/system/StructStat; -HSPLandroid/system/Os;->getpeername(Ljava/io/FileDescriptor;)Ljava/net/SocketAddress; -HSPLandroid/system/Os;->getpgid(I)I -HSPLandroid/system/Os;->getpid()I -HSPLandroid/system/Os;->gettid()I -HSPLandroid/system/Os;->getuid()I -HSPLandroid/system/Os;->getxattr(Ljava/lang/String;Ljava/lang/String;)[B -HSPLandroid/system/Os;->ioctlInt(Ljava/io/FileDescriptor;I)I -HSPLandroid/system/Os;->listen(Ljava/io/FileDescriptor;I)V -HSPLandroid/system/Os;->lseek(Ljava/io/FileDescriptor;JI)J -HSPLandroid/system/Os;->lstat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLandroid/system/Os;->mkdir(Ljava/lang/String;I)V -HSPLandroid/system/Os;->mmap(JJIILjava/io/FileDescriptor;J)J -HSPLandroid/system/Os;->open(Ljava/lang/String;II)Ljava/io/FileDescriptor; -HSPLandroid/system/Os;->poll([Landroid/system/StructPollfd;I)I -HSPLandroid/system/Os;->read(Ljava/io/FileDescriptor;[BII)I -HSPLandroid/system/Os;->rename(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/system/Os;->setenv(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLandroid/system/Os;->setpgid(II)V -HSPLandroid/system/Os;->setregid(II)V -HSPLandroid/system/Os;->setreuid(II)V -HSPLandroid/system/Os;->setsockoptInt(Ljava/io/FileDescriptor;III)V -HSPLandroid/system/Os;->setsockoptTimeval(Ljava/io/FileDescriptor;IILandroid/system/StructTimeval;)V -HSPLandroid/system/Os;->socket(III)Ljava/io/FileDescriptor; -HSPLandroid/system/Os;->socketpair(IIILjava/io/FileDescriptor;Ljava/io/FileDescriptor;)V -HSPLandroid/system/Os;->stat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLandroid/system/Os;->statvfs(Ljava/lang/String;)Landroid/system/StructStatVfs; -HSPLandroid/system/Os;->sysconf(I)J -HSPLandroid/system/Os;->write(Ljava/io/FileDescriptor;[BII)I -HSPLandroid/system/OsConstants;->S_ISDIR(I)Z -HSPLandroid/system/OsConstants;->errnoName(I)Ljava/lang/String; -HSPLandroid/system/OsConstants;->gaiName(I)Ljava/lang/String; -HSPLandroid/system/StructAddrinfo;-><init>()V -HSPLandroid/system/StructCapUserData;-><init>(III)V -HSPLandroid/system/StructCapUserHeader;-><init>(II)V -HSPLandroid/system/StructIfaddrs;-><init>(Ljava/lang/String;ILjava/net/InetAddress;Ljava/net/InetAddress;Ljava/net/InetAddress;[B)V -HSPLandroid/system/StructLinger;-><init>(II)V -HSPLandroid/system/StructLinger;->isOn()Z -HSPLandroid/system/StructPollfd;-><init>()V -HSPLandroid/system/StructStat;-><init>(JJIJIIJJLandroid/system/StructTimespec;Landroid/system/StructTimespec;Landroid/system/StructTimespec;JJ)V -HSPLandroid/system/StructStatVfs;-><init>(JJJJJJJJJJJ)V -HSPLandroid/system/StructTimespec;-><init>(JJ)V -HSPLandroid/system/StructTimespec;->equals(Ljava/lang/Object;)Z -HSPLandroid/system/StructTimeval;-><init>(JJ)V -HSPLandroid/system/StructTimeval;->fromMillis(J)Landroid/system/StructTimeval; -HSPLandroid/system/UnixSocketAddress;-><init>([B)V -HSPLandroid/system/keystore2/Authorization$1;-><init>()V -HSPLandroid/system/keystore2/Authorization$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/Authorization; -HSPLandroid/system/keystore2/Authorization$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/Authorization$1;->newArray(I)[Landroid/system/keystore2/Authorization; -HSPLandroid/system/keystore2/Authorization$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/system/keystore2/Authorization;-><clinit>()V -HSPLandroid/system/keystore2/Authorization;-><init>()V -HSPLandroid/system/keystore2/Authorization;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/CreateOperationResponse$1;-><init>()V -HSPLandroid/system/keystore2/CreateOperationResponse$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/CreateOperationResponse; -HSPLandroid/system/keystore2/CreateOperationResponse$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/CreateOperationResponse;-><clinit>()V -HSPLandroid/system/keystore2/CreateOperationResponse;-><init>()V -HSPLandroid/system/keystore2/CreateOperationResponse;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/IKeystoreOperation$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/system/keystore2/IKeystoreOperation$Stub$Proxy;->abort()V -HSPLandroid/system/keystore2/IKeystoreOperation$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/system/keystore2/IKeystoreOperation$Stub$Proxy;->finish([B[B)[B -HSPLandroid/system/keystore2/IKeystoreOperation$Stub$Proxy;->update([B)[B -HSPLandroid/system/keystore2/IKeystoreOperation$Stub;->asInterface(Landroid/os/IBinder;)Landroid/system/keystore2/IKeystoreOperation; -HSPLandroid/system/keystore2/IKeystoreOperation;-><clinit>()V -HSPLandroid/system/keystore2/IKeystoreSecurityLevel$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/system/keystore2/IKeystoreSecurityLevel$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/system/keystore2/IKeystoreSecurityLevel$Stub$Proxy;->createOperation(Landroid/system/keystore2/KeyDescriptor;[Landroid/hardware/security/keymint/KeyParameter;Z)Landroid/system/keystore2/CreateOperationResponse; -HSPLandroid/system/keystore2/IKeystoreSecurityLevel$Stub;->asInterface(Landroid/os/IBinder;)Landroid/system/keystore2/IKeystoreSecurityLevel; -HSPLandroid/system/keystore2/IKeystoreSecurityLevel;-><clinit>()V -HSPLandroid/system/keystore2/IKeystoreService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/system/keystore2/IKeystoreService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/system/keystore2/IKeystoreService$Stub$Proxy;->getKeyEntry(Landroid/system/keystore2/KeyDescriptor;)Landroid/system/keystore2/KeyEntryResponse; -HSPLandroid/system/keystore2/IKeystoreService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/system/keystore2/IKeystoreService; -HSPLandroid/system/keystore2/IKeystoreService;-><clinit>()V -HSPLandroid/system/keystore2/KeyDescriptor$1;-><init>()V -HSPLandroid/system/keystore2/KeyDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/KeyDescriptor; -HSPLandroid/system/keystore2/KeyDescriptor$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/KeyDescriptor;-><clinit>()V -HSPLandroid/system/keystore2/KeyDescriptor;-><init>()V -HSPLandroid/system/keystore2/KeyDescriptor;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/KeyDescriptor;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/system/keystore2/KeyEntryResponse$1;-><init>()V -HSPLandroid/system/keystore2/KeyEntryResponse$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/KeyEntryResponse; -HSPLandroid/system/keystore2/KeyEntryResponse$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/KeyEntryResponse;-><clinit>()V -HSPLandroid/system/keystore2/KeyEntryResponse;-><init>()V -HSPLandroid/system/keystore2/KeyEntryResponse;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/KeyMetadata$1;-><init>()V -HSPLandroid/system/keystore2/KeyMetadata$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/KeyMetadata; -HSPLandroid/system/keystore2/KeyMetadata$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/KeyMetadata;-><clinit>()V -HSPLandroid/system/keystore2/KeyMetadata;-><init>()V -HSPLandroid/system/keystore2/KeyMetadata;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/KeyParameters$1;-><init>()V -HSPLandroid/system/keystore2/KeyParameters$1;->createFromParcel(Landroid/os/Parcel;)Landroid/system/keystore2/KeyParameters; -HSPLandroid/system/keystore2/KeyParameters$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/system/keystore2/KeyParameters;-><clinit>()V -HSPLandroid/system/keystore2/KeyParameters;-><init>()V -HSPLandroid/system/keystore2/KeyParameters;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/system/keystore2/OperationChallenge$1;-><init>()V -HSPLandroid/system/keystore2/OperationChallenge;-><clinit>()V -HSPLandroid/telecom/AudioState;-><init>(Landroid/telecom/CallAudioState;)V -HSPLandroid/telecom/CallAudioState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telecom/CallAudioState; -HSPLandroid/telecom/CallAudioState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telecom/CallAudioState;-><init>(ZIILandroid/bluetooth/BluetoothDevice;Ljava/util/Collection;)V -HSPLandroid/telecom/CallAudioState;->audioRouteToString(I)Ljava/lang/String; -HSPLandroid/telecom/CallAudioState;->getRoute()I -HSPLandroid/telecom/CallAudioState;->getSupportedRouteMask()I -HSPLandroid/telecom/CallAudioState;->isMuted()Z -HSPLandroid/telecom/CallAudioState;->toString()Ljava/lang/String; -HSPLandroid/telecom/DisconnectCause$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telecom/DisconnectCause; -HSPLandroid/telecom/DisconnectCause$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telecom/DisconnectCause;->getCode()I -HSPLandroid/telecom/DisconnectCause;->getReason()Ljava/lang/String; -HSPLandroid/telecom/Log;->buildMessage(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/telecom/Log;->continueSession(Landroid/telecom/Logging/Session;Ljava/lang/String;)V -HSPLandroid/telecom/Log;->createSubsession()Landroid/telecom/Logging/Session; -HSPLandroid/telecom/Log;->d(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/telecom/Log;->d(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/telecom/Log;->endSession()V -HSPLandroid/telecom/Log;->getSessionId()Ljava/lang/String; -HSPLandroid/telecom/Log;->getSessionManager()Landroid/telecom/Logging/SessionManager; -HSPLandroid/telecom/Log;->i(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/telecom/Log;->obfuscatePhoneNumber(Ljava/lang/StringBuilder;Ljava/lang/String;)V -HSPLandroid/telecom/Log;->pii(Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/telecom/Log;->piiHandle(Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/telecom/Log;->v(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -HSPLandroid/telecom/Logging/Session;-><init>(Ljava/lang/String;Ljava/lang/String;JZLjava/lang/String;)V -HSPLandroid/telecom/Logging/Session;->addChild(Landroid/telecom/Logging/Session;)V -HSPLandroid/telecom/Logging/Session;->equals(Ljava/lang/Object;)Z -HSPLandroid/telecom/Logging/Session;->getChildSessions()Ljava/util/ArrayList; -HSPLandroid/telecom/Logging/Session;->getExecutionStartTimeMilliseconds()J -HSPLandroid/telecom/Logging/Session;->getFullMethodPath(Ljava/lang/StringBuilder;ZI)V -HSPLandroid/telecom/Logging/Session;->getFullMethodPath(Z)Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->getFullSessionId(I)Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->getLocalExecutionTime()J -HSPLandroid/telecom/Logging/Session;->getNextChildId()Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->getOwnerInfo()Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->getParentSession()Landroid/telecom/Logging/Session; -HSPLandroid/telecom/Logging/Session;->getShortMethodName()Ljava/lang/String; -HSPLandroid/telecom/Logging/Session;->isExternal()Z -HSPLandroid/telecom/Logging/Session;->isSessionCompleted()Z -HSPLandroid/telecom/Logging/Session;->isStartedFromActiveSession()Z -HSPLandroid/telecom/Logging/Session;->markSessionCompleted(J)V -HSPLandroid/telecom/Logging/Session;->removeChild(Landroid/telecom/Logging/Session;)V -HSPLandroid/telecom/Logging/Session;->setExecutionStartTimeMs(J)V -HSPLandroid/telecom/Logging/Session;->setParentSession(Landroid/telecom/Logging/Session;)V -HSPLandroid/telecom/Logging/Session;->setSessionId(Ljava/lang/String;)V -HSPLandroid/telecom/Logging/Session;->setShortMethodName(Ljava/lang/String;)V -HSPLandroid/telecom/Logging/Session;->toString()Ljava/lang/String; -HSPLandroid/telecom/Logging/SessionManager;-><init>()V -HSPLandroid/telecom/Logging/SessionManager;->cleanupStaleSessions(J)V -HSPLandroid/telecom/Logging/SessionManager;->continueSession(Landroid/telecom/Logging/Session;Ljava/lang/String;)V -HSPLandroid/telecom/Logging/SessionManager;->createSubsession()Landroid/telecom/Logging/Session; -HSPLandroid/telecom/Logging/SessionManager;->createSubsession(Z)Landroid/telecom/Logging/Session; -HSPLandroid/telecom/Logging/SessionManager;->endParentSessions(Landroid/telecom/Logging/Session;)V -HSPLandroid/telecom/Logging/SessionManager;->endSession()V -HSPLandroid/telecom/Logging/SessionManager;->getSessionId()Ljava/lang/String; -HSPLandroid/telecom/Logging/SessionManager;->resetStaleSessionTimer()V -HSPLandroid/telecom/PhoneAccount$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telecom/PhoneAccount; -HSPLandroid/telecom/PhoneAccount$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telecom/PhoneAccount$Builder;-><init>(Landroid/telecom/PhoneAccountHandle;Ljava/lang/CharSequence;)V -HSPLandroid/telecom/PhoneAccount$Builder;->addSupportedUriScheme(Ljava/lang/String;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->build()Landroid/telecom/PhoneAccount; -HSPLandroid/telecom/PhoneAccount$Builder;->setAddress(Landroid/net/Uri;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setCapabilities(I)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setExtras(Landroid/os/Bundle;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setHighlightColor(I)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setIcon(Landroid/graphics/drawable/Icon;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setShortDescription(Ljava/lang/CharSequence;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setSubscriptionAddress(Landroid/net/Uri;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount$Builder;->setSupportedUriSchemes(Ljava/util/List;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telecom/PhoneAccount;->audioRoutesToString()Ljava/lang/String; -HSPLandroid/telecom/PhoneAccount;->builder(Landroid/telecom/PhoneAccountHandle;Ljava/lang/CharSequence;)Landroid/telecom/PhoneAccount$Builder; -HSPLandroid/telecom/PhoneAccount;->capabilitiesToString()Ljava/lang/String; -HSPLandroid/telecom/PhoneAccount;->equals(Ljava/lang/Object;)Z -HSPLandroid/telecom/PhoneAccount;->getAccountHandle()Landroid/telecom/PhoneAccountHandle; -HSPLandroid/telecom/PhoneAccount;->hasAudioRoutes(I)Z -HSPLandroid/telecom/PhoneAccount;->hasCapabilities(I)Z -HSPLandroid/telecom/PhoneAccount;->toString()Ljava/lang/String; -HSPLandroid/telecom/PhoneAccount;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telecom/PhoneAccountHandle$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telecom/PhoneAccountHandle; -HSPLandroid/telecom/PhoneAccountHandle$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telecom/PhoneAccountHandle;-><init>(Landroid/content/ComponentName;Ljava/lang/String;)V -HSPLandroid/telecom/PhoneAccountHandle;-><init>(Landroid/content/ComponentName;Ljava/lang/String;Landroid/os/UserHandle;)V -HSPLandroid/telecom/PhoneAccountHandle;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telecom/PhoneAccountHandle;->checkParameters(Landroid/content/ComponentName;Landroid/os/UserHandle;)V -HSPLandroid/telecom/PhoneAccountHandle;->equals(Ljava/lang/Object;)Z -HSPLandroid/telecom/PhoneAccountHandle;->getComponentName()Landroid/content/ComponentName; -HSPLandroid/telecom/PhoneAccountHandle;->getId()Ljava/lang/String; -HSPLandroid/telecom/PhoneAccountHandle;->getUserHandle()Landroid/os/UserHandle; -HSPLandroid/telecom/PhoneAccountHandle;->hashCode()I -HSPLandroid/telecom/PhoneAccountHandle;->toString()Ljava/lang/String; -HSPLandroid/telecom/PhoneAccountHandle;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telecom/TelecomManager;-><init>(Landroid/content/Context;)V -HSPLandroid/telecom/TelecomManager;-><init>(Landroid/content/Context;Lcom/android/internal/telecom/ITelecomService;)V -HSPLandroid/telecom/TelecomManager;->getCallCapablePhoneAccounts()Ljava/util/List; -HSPLandroid/telecom/TelecomManager;->getCallCapablePhoneAccounts(Z)Ljava/util/List; -HSPLandroid/telecom/TelecomManager;->getCallState()I -HSPLandroid/telecom/TelecomManager;->getCurrentTtyMode()I -HSPLandroid/telecom/TelecomManager;->getDefaultDialerPackage()Ljava/lang/String; -HSPLandroid/telecom/TelecomManager;->getDefaultDialerPackage(Landroid/os/UserHandle;)Ljava/lang/String; -HSPLandroid/telecom/TelecomManager;->getPhoneAccount(Landroid/telecom/PhoneAccountHandle;)Landroid/telecom/PhoneAccount; -HSPLandroid/telecom/TelecomManager;->getSystemDialerPackage()Ljava/lang/String; -HSPLandroid/telecom/TelecomManager;->getTelecomService()Lcom/android/internal/telecom/ITelecomService; -HSPLandroid/telecom/TelecomManager;->isInCall()Z -HSPLandroid/telephony/AccessNetworkConstants;->transportTypeToString(I)Ljava/lang/String; -HSPLandroid/telephony/AccessNetworkUtils;->getDuplexModeForEutranBand(I)I -HSPLandroid/telephony/AccessNetworkUtils;->getOperatingBandForEarfcn(I)I -HSPLandroid/telephony/BinderCacheManager$BinderDeathTracker;-><init>(Landroid/telephony/BinderCacheManager;Landroid/os/IInterface;)V -HSPLandroid/telephony/BinderCacheManager$BinderDeathTracker;->getConnection()Landroid/os/IInterface; -HSPLandroid/telephony/BinderCacheManager$BinderDeathTracker;->isAlive()Z -HSPLandroid/telephony/BinderCacheManager;->getBinder()Landroid/os/IInterface; -HSPLandroid/telephony/BinderCacheManager;->getTracker()Landroid/telephony/BinderCacheManager$BinderDeathTracker; -HSPLandroid/telephony/CarrierConfigManager;-><init>(Landroid/content/Context;)V -HSPLandroid/telephony/CarrierConfigManager;->getConfig()Landroid/os/PersistableBundle; -HSPLandroid/telephony/CarrierConfigManager;->getConfigForSubId(I)Landroid/os/PersistableBundle; -HSPLandroid/telephony/CarrierConfigManager;->getDefaultCarrierServicePackageName()Ljava/lang/String; -HSPLandroid/telephony/CarrierConfigManager;->getDefaultConfig()Landroid/os/PersistableBundle; -HSPLandroid/telephony/CarrierConfigManager;->getICarrierConfigLoader()Lcom/android/internal/telephony/ICarrierConfigLoader; -HSPLandroid/telephony/CarrierConfigManager;->isConfigForIdentifiedCarrier(Landroid/os/PersistableBundle;)Z -HSPLandroid/telephony/CellConfigLte$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellConfigLte; -HSPLandroid/telephony/CellConfigLte$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellIdentity$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellIdentity; -HSPLandroid/telephony/CellIdentity$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellIdentity;-><init>(Ljava/lang/String;ILandroid/os/Parcel;)V -HSPLandroid/telephony/CellIdentity;-><init>(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/telephony/CellIdentity;->getPlmn()Ljava/lang/String; -HSPLandroid/telephony/CellIdentity;->isMcc(Ljava/lang/String;)Z -HSPLandroid/telephony/CellIdentity;->isMnc(Ljava/lang/String;)Z -HSPLandroid/telephony/CellIdentity;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellIdentityGsm;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellIdentityGsm;->updateGlobalCellId()V -HSPLandroid/telephony/CellIdentityLte$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellIdentityLte; -HSPLandroid/telephony/CellIdentityLte$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellIdentityLte;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellIdentityLte;->createFromParcelBody(Landroid/os/Parcel;)Landroid/telephony/CellIdentityLte; -HSPLandroid/telephony/CellIdentityLte;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellIdentityLte;->getCi()I -HSPLandroid/telephony/CellIdentityLte;->toString()Ljava/lang/String; -HSPLandroid/telephony/CellIdentityLte;->updateGlobalCellId()V -HSPLandroid/telephony/CellIdentityLte;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellIdentityWcdma$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellIdentityWcdma; -HSPLandroid/telephony/CellIdentityWcdma$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellIdentityWcdma;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellIdentityWcdma;->toString()Ljava/lang/String; -HSPLandroid/telephony/CellIdentityWcdma;->updateGlobalCellId()V -HSPLandroid/telephony/CellIdentityWcdma;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellInfo; -HSPLandroid/telephony/CellInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellInfo;->isRegistered()Z -HSPLandroid/telephony/CellInfoLte;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellInfoLte;->getCellIdentity()Landroid/telephony/CellIdentityLte; -HSPLandroid/telephony/CellSignalStrength;-><init>()V -HSPLandroid/telephony/CellSignalStrength;->getNumSignalStrengthLevels()I -HSPLandroid/telephony/CellSignalStrengthCdma$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthCdma; -HSPLandroid/telephony/CellSignalStrengthCdma$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthCdma;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthCdma;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthCdma;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellSignalStrengthGsm$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthGsm; -HSPLandroid/telephony/CellSignalStrengthGsm$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthGsm;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthGsm;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthGsm;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellSignalStrengthLte$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthLte; -HSPLandroid/telephony/CellSignalStrengthLte$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthLte;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthLte;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthLte;->getDbm()I -HSPLandroid/telephony/CellSignalStrengthLte;->getLevel()I -HSPLandroid/telephony/CellSignalStrengthLte;->isValid()Z -HSPLandroid/telephony/CellSignalStrengthLte;->toString()Ljava/lang/String; -HSPLandroid/telephony/CellSignalStrengthLte;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellSignalStrengthNr$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthNr; -HSPLandroid/telephony/CellSignalStrengthNr$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthNr;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthNr;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthNr;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellSignalStrengthTdscdma$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthTdscdma; -HSPLandroid/telephony/CellSignalStrengthTdscdma$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthTdscdma;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthTdscdma;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthTdscdma;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/CellSignalStrengthWcdma$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/CellSignalStrengthWcdma; -HSPLandroid/telephony/CellSignalStrengthWcdma$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/CellSignalStrengthWcdma;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/CellSignalStrengthWcdma;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/CellSignalStrengthWcdma;->getLevel()I -HSPLandroid/telephony/CellSignalStrengthWcdma;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/DataFailCause;->toString(I)Ljava/lang/String; -HSPLandroid/telephony/DataSpecificRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/DataSpecificRegistrationInfo; -HSPLandroid/telephony/DataSpecificRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/DataSpecificRegistrationInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/DataSpecificRegistrationInfo;-><init>(Landroid/telephony/DataSpecificRegistrationInfo;)V -HSPLandroid/telephony/DataSpecificRegistrationInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/DataSpecificRegistrationInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;-><init>()V -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->build()Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setCallingFeatureId(Ljava/lang/String;)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setCallingPackage(Ljava/lang/String;)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setCallingPid(I)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setCallingUid(I)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setLogAsInfo(Z)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setMethod(Ljava/lang/String;)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setMinSdkVersionForCoarse(I)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setMinSdkVersionForEnforcement(I)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder;->setMinSdkVersionForFine(I)Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -HSPLandroid/telephony/LocationAccessPolicy;->checkAppLocationPermissionHelper(Landroid/content/Context;Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery;Ljava/lang/String;)Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; -HSPLandroid/telephony/LocationAccessPolicy;->checkLocationPermission(Landroid/content/Context;Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery;)Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; -HSPLandroid/telephony/LocationAccessPolicy;->getAppOpsString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/LocationAccessPolicy;->isAppAtLeastSdkVersion(Landroid/content/Context;Ljava/lang/String;I)Z -HSPLandroid/telephony/LocationAccessPolicy;->isCurrentProfile(Landroid/content/Context;I)Z -HSPLandroid/telephony/LteVopsSupportInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/LteVopsSupportInfo; -HSPLandroid/telephony/LteVopsSupportInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/LteVopsSupportInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/LteVopsSupportInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/LteVopsSupportInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/ModemActivityInfo;-><init>(JII[II)V -HSPLandroid/telephony/ModemActivityInfo;-><init>(JJJ[IJ)V -HSPLandroid/telephony/ModemActivityInfo;->getIdleTimeMillis()J -HSPLandroid/telephony/ModemActivityInfo;->getNumTxPowerLevels()I -HSPLandroid/telephony/ModemActivityInfo;->getReceiveTimeMillis()J -HSPLandroid/telephony/ModemActivityInfo;->getSleepTimeMillis()J -HSPLandroid/telephony/ModemActivityInfo;->getTimestampMillis()J -HSPLandroid/telephony/ModemActivityInfo;->isEmpty()Z -HSPLandroid/telephony/ModemActivityInfo;->isValid()Z -HSPLandroid/telephony/ModemActivityInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/telephony/NetworkRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/NetworkRegistrationInfo; -HSPLandroid/telephony/NetworkRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/NetworkRegistrationInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/NetworkRegistrationInfo;-><init>(Landroid/telephony/NetworkRegistrationInfo;)V -HSPLandroid/telephony/NetworkRegistrationInfo;->domainToString(I)Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->getAccessNetworkTechnology()I -HSPLandroid/telephony/NetworkRegistrationInfo;->getDomain()I -HSPLandroid/telephony/NetworkRegistrationInfo;->getNrState()I -HSPLandroid/telephony/NetworkRegistrationInfo;->getRegistrationState()I -HSPLandroid/telephony/NetworkRegistrationInfo;->getRoamingType()I -HSPLandroid/telephony/NetworkRegistrationInfo;->getTransportType()I -HSPLandroid/telephony/NetworkRegistrationInfo;->isInService()Z -HSPLandroid/telephony/NetworkRegistrationInfo;->isUsingCarrierAggregation()Z -HSPLandroid/telephony/NetworkRegistrationInfo;->lambda$toString$0(Ljava/lang/Integer;)Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->nrStateToString(I)Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->registrationStateToString(I)Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->serviceTypeToString(I)Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/NetworkRegistrationInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/PhoneNumberUtils;->convertKeypadLettersToDigits(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/PhoneNumberUtils;->extractNetworkPortionAlt(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/PhoneNumberUtils;->formatNumberInternal(Ljava/lang/String;Ljava/lang/String;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;)Ljava/lang/String; -HSPLandroid/telephony/PhoneNumberUtils;->formatNumberToE164(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/PhoneNumberUtils;->getMinMatch()I -HSPLandroid/telephony/PhoneNumberUtils;->isDialable(C)Z -HSPLandroid/telephony/PhoneNumberUtils;->isNonSeparator(C)Z -HSPLandroid/telephony/PhoneNumberUtils;->normalizeNumber(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/PhoneNumberUtils;->stripSeparators(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda10;->runOrThrow()V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda19;->runOrThrow()V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda27;->run()V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda51;->run()V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;-><init>(Landroid/telephony/PhoneStateListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onActiveDataSubIdChanged$56(Landroid/telephony/PhoneStateListener;I)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onDataActivity$16(Landroid/telephony/PhoneStateListener;I)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onDataConnectionStateChanged$14(Landroid/telephony/PhoneStateListener;II)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onDisplayInfoChanged$38(Landroid/telephony/PhoneStateListener;Landroid/telephony/TelephonyDisplayInfo;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onDisplayInfoChanged$39(Landroid/telephony/PhoneStateListener;Landroid/telephony/TelephonyDisplayInfo;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onLegacyCallStateChanged$10(Landroid/telephony/PhoneStateListener;ILjava/lang/String;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onServiceStateChanged$0(Landroid/telephony/PhoneStateListener;Landroid/telephony/ServiceState;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->lambda$onSignalStrengthsChanged$18(Landroid/telephony/PhoneStateListener;Landroid/telephony/SignalStrength;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onActiveDataSubIdChanged(I)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onDataActivity(I)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onDataConnectionStateChanged(II)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onDisplayInfoChanged(Landroid/telephony/TelephonyDisplayInfo;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onLegacyCallStateChanged(ILjava/lang/String;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onServiceStateChanged(Landroid/telephony/ServiceState;)V -HSPLandroid/telephony/PhoneStateListener$IPhoneStateListenerStub;->onSignalStrengthsChanged(Landroid/telephony/SignalStrength;)V -HSPLandroid/telephony/PhoneStateListener;-><init>()V -HSPLandroid/telephony/PhoneStateListener;-><init>(Landroid/os/Looper;)V -HSPLandroid/telephony/PhoneStateListener;-><init>(Ljava/lang/Integer;Landroid/os/Looper;)V -HSPLandroid/telephony/PhoneStateListener;-><init>(Ljava/lang/Integer;Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/PhoneStateListener;-><init>(Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/PhoneStateListener;->onDataConnectionStateChanged(I)V -HSPLandroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/telephony/ServiceState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/ServiceState; -HSPLandroid/telephony/ServiceState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/ServiceState;-><init>()V -HSPLandroid/telephony/ServiceState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/ServiceState;-><init>(Landroid/telephony/ServiceState;)V -HSPLandroid/telephony/ServiceState;->copyFrom(Landroid/telephony/ServiceState;)V -HSPLandroid/telephony/ServiceState;->createLocationInfoSanitizedCopy(Z)Landroid/telephony/ServiceState; -HSPLandroid/telephony/ServiceState;->getCellBandwidths()[I -HSPLandroid/telephony/ServiceState;->getDataNetworkType()I -HSPLandroid/telephony/ServiceState;->getDataRegState()I -HSPLandroid/telephony/ServiceState;->getDataRegistrationState()I -HSPLandroid/telephony/ServiceState;->getDataRoaming()Z -HSPLandroid/telephony/ServiceState;->getDataRoamingFromRegistration()Z -HSPLandroid/telephony/ServiceState;->getDataRoamingType()I -HSPLandroid/telephony/ServiceState;->getDuplexMode()I -HSPLandroid/telephony/ServiceState;->getNetworkRegistrationInfo(II)Landroid/telephony/NetworkRegistrationInfo; -HSPLandroid/telephony/ServiceState;->getNetworkRegistrationInfoList()Ljava/util/List; -HSPLandroid/telephony/ServiceState;->getNrState()I -HSPLandroid/telephony/ServiceState;->getRilDataRadioTechnology()I -HSPLandroid/telephony/ServiceState;->getRilVoiceRadioTechnology()I -HSPLandroid/telephony/ServiceState;->getRoaming()Z -HSPLandroid/telephony/ServiceState;->getState()I -HSPLandroid/telephony/ServiceState;->getVoiceRegState()I -HSPLandroid/telephony/ServiceState;->getVoiceRoaming()Z -HSPLandroid/telephony/ServiceState;->getVoiceRoamingType()I -HSPLandroid/telephony/ServiceState;->isEmergencyOnly()Z -HSPLandroid/telephony/ServiceState;->isPsOnlyTech(I)Z -HSPLandroid/telephony/ServiceState;->isUsingCarrierAggregation()Z -HSPLandroid/telephony/ServiceState;->networkTypeToRilRadioTechnology(I)I -HSPLandroid/telephony/ServiceState;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/ServiceState; -HSPLandroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String; -HSPLandroid/telephony/ServiceState;->rilServiceStateToString(I)Ljava/lang/String; -HSPLandroid/telephony/ServiceState;->roamingTypeToString(I)Ljava/lang/String; -HSPLandroid/telephony/ServiceState;->toString()Ljava/lang/String; -HSPLandroid/telephony/ServiceState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/SignalStrength$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/SignalStrength; -HSPLandroid/telephony/SignalStrength$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/SignalStrength;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/SignalStrength;->getCellSignalStrengths()Ljava/util/List; -HSPLandroid/telephony/SignalStrength;->getCellSignalStrengths(Ljava/lang/Class;)Ljava/util/List; -HSPLandroid/telephony/SignalStrength;->getLevel()I -HSPLandroid/telephony/SignalStrength;->getPrimary()Landroid/telephony/CellSignalStrength; -HSPLandroid/telephony/SignalStrength;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/SubscriptionInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/SubscriptionInfo;+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/text/TextUtils$1;]Landroid/telephony/SubscriptionInfo$Builder;Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmAreUiccApplicationsEnabled(Landroid/telephony/SubscriptionInfo$Builder;)Z -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCardId(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCardString(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCarrierConfigAccessRules(Landroid/telephony/SubscriptionInfo$Builder;)[Landroid/telephony/UiccAccessRule; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCarrierId(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCarrierName(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/CharSequence; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmCountryIso(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmDataRoaming(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmDisplayName(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/CharSequence; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmDisplayNameSource(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmEhplmns(Landroid/telephony/SubscriptionInfo$Builder;)[Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmGroupOwner(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmGroupUuid(Landroid/telephony/SubscriptionInfo$Builder;)Landroid/os/ParcelUuid; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmHplmns(Landroid/telephony/SubscriptionInfo$Builder;)[Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIccId(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIconBitmap(Landroid/telephony/SubscriptionInfo$Builder;)Landroid/graphics/Bitmap; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIconTint(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmId(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIsEmbedded(Landroid/telephony/SubscriptionInfo$Builder;)Z -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIsGroupDisabled(Landroid/telephony/SubscriptionInfo$Builder;)Z -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmIsOpportunistic(Landroid/telephony/SubscriptionInfo$Builder;)Z -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmMcc(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmMnc(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmNativeAccessRules(Landroid/telephony/SubscriptionInfo$Builder;)[Landroid/telephony/UiccAccessRule; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmNumber(Landroid/telephony/SubscriptionInfo$Builder;)Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmPortIndex(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmProfileClass(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmSimSlotIndex(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmType(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;->-$$Nest$fgetmUsageSetting(Landroid/telephony/SubscriptionInfo$Builder;)I -HSPLandroid/telephony/SubscriptionInfo$Builder;-><init>()V -HSPLandroid/telephony/SubscriptionInfo$Builder;->build()Landroid/telephony/SubscriptionInfo; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCardId(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCardString(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCarrierConfigAccessRules([Landroid/telephony/UiccAccessRule;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCarrierId(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCarrierName(Ljava/lang/CharSequence;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setCountryIso(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setDataRoaming(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setDisplayName(Ljava/lang/CharSequence;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setDisplayNameSource(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setEhplmns([Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setEmbedded(Z)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setGroupDisabled(Z)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setGroupOwner(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setGroupUuid(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setHplmns([Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setIccId(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setIconTint(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setId(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setMcc(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setMnc(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setNativeAccessRules([Landroid/telephony/UiccAccessRule;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setNumber(Ljava/lang/String;)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setOpportunistic(Z)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setPortIndex(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setProfileClass(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setSimSlotIndex(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setType(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setUiccApplicationsEnabled(Z)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo$Builder;->setUsageSetting(I)Landroid/telephony/SubscriptionInfo$Builder; -HSPLandroid/telephony/SubscriptionInfo;-><init>(ILjava/lang/String;ILjava/lang/CharSequence;Ljava/lang/CharSequence;IILjava/lang/String;ILandroid/graphics/Bitmap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z[Landroid/telephony/UiccAccessRule;Ljava/lang/String;IZLjava/lang/String;ZIIILjava/lang/String;[Landroid/telephony/UiccAccessRule;Z)V -HSPLandroid/telephony/SubscriptionInfo;-><init>(ILjava/lang/String;ILjava/lang/CharSequence;Ljava/lang/CharSequence;IILjava/lang/String;ILandroid/graphics/Bitmap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z[Landroid/telephony/UiccAccessRule;Ljava/lang/String;IZLjava/lang/String;ZIIILjava/lang/String;[Landroid/telephony/UiccAccessRule;ZII)V -HSPLandroid/telephony/SubscriptionInfo;-><init>(Landroid/telephony/SubscriptionInfo$Builder;)V -HSPLandroid/telephony/SubscriptionInfo;-><init>(Landroid/telephony/SubscriptionInfo$Builder;Landroid/telephony/SubscriptionInfo-IA;)V -HSPLandroid/telephony/SubscriptionInfo;->getCarrierId()I -HSPLandroid/telephony/SubscriptionInfo;->getCarrierName()Ljava/lang/CharSequence; -HSPLandroid/telephony/SubscriptionInfo;->getCountryIso()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo;->getDisplayName()Ljava/lang/CharSequence; -HSPLandroid/telephony/SubscriptionInfo;->getGroupUuid()Landroid/os/ParcelUuid; -HSPLandroid/telephony/SubscriptionInfo;->getIccId()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo;->getMcc()I -HSPLandroid/telephony/SubscriptionInfo;->getMccString()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo;->getMnc()I -HSPLandroid/telephony/SubscriptionInfo;->getMncString()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo;->getNumber()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionInfo;->getSimSlotIndex()I -HSPLandroid/telephony/SubscriptionInfo;->getSubscriptionId()I -HSPLandroid/telephony/SubscriptionInfo;->isEmbedded()Z -HSPLandroid/telephony/SubscriptionInfo;->isOpportunistic()Z -HSPLandroid/telephony/SubscriptionInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda9;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->query(Ljava/lang/Integer;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->recompute(Ljava/lang/Integer;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;-><init>()V -HSPLandroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;-><init>(Landroid/os/Looper;)V -HSPLandroid/telephony/SubscriptionManager$VoidPropertyInvalidatedCache;->query(Ljava/lang/Void;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$VoidPropertyInvalidatedCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager$VoidPropertyInvalidatedCache;->recompute(Ljava/lang/Void;)Ljava/lang/Object; -HSPLandroid/telephony/SubscriptionManager;-><init>(Landroid/content/Context;)V -HSPLandroid/telephony/SubscriptionManager;->addOnSubscriptionsChangedListener(Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;)V -HSPLandroid/telephony/SubscriptionManager;->addOnSubscriptionsChangedListener(Ljava/util/concurrent/Executor;Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;)V -HSPLandroid/telephony/SubscriptionManager;->from(Landroid/content/Context;)Landroid/telephony/SubscriptionManager; -HSPLandroid/telephony/SubscriptionManager;->getActiveDataSubscriptionId()I -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionIdList()[I -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionIdList(Z)[I -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfo(I)Landroid/telephony/SubscriptionInfo; -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfoCount()I -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfoCountMax()I -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfoForSimSlotIndex(I)Landroid/telephony/SubscriptionInfo; -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfoList()Ljava/util/List; -HSPLandroid/telephony/SubscriptionManager;->getActiveSubscriptionInfoList(Z)Ljava/util/List; -HSPLandroid/telephony/SubscriptionManager;->getAvailableSubscriptionInfoList()Ljava/util/List; -HSPLandroid/telephony/SubscriptionManager;->getCompleteActiveSubscriptionIdList()[I -HSPLandroid/telephony/SubscriptionManager;->getCompleteActiveSubscriptionInfoList()Ljava/util/List; -HSPLandroid/telephony/SubscriptionManager;->getDefaultDataSubscriptionId()I -HSPLandroid/telephony/SubscriptionManager;->getDefaultSmsSubscriptionId()I -HSPLandroid/telephony/SubscriptionManager;->getDefaultSubscriptionId()I -HSPLandroid/telephony/SubscriptionManager;->getDefaultVoiceSubscriptionId()I -HSPLandroid/telephony/SubscriptionManager;->getPhoneId(I)I -HSPLandroid/telephony/SubscriptionManager;->getResourcesForSubId(Landroid/content/Context;I)Landroid/content/res/Resources; -HSPLandroid/telephony/SubscriptionManager;->getResourcesForSubId(Landroid/content/Context;IZ)Landroid/content/res/Resources; -HSPLandroid/telephony/SubscriptionManager;->getSlotIndex(I)I -HSPLandroid/telephony/SubscriptionManager;->getSubId(I)[I -HSPLandroid/telephony/SubscriptionManager;->getSubscriptionIds(I)[I -HSPLandroid/telephony/SubscriptionManager;->isSubscriptionVisible(Landroid/telephony/SubscriptionInfo;)Z -HSPLandroid/telephony/SubscriptionManager;->isUsableSubIdValue(I)Z -HSPLandroid/telephony/SubscriptionManager;->isValidSlotIndex(I)Z -HSPLandroid/telephony/SubscriptionManager;->isValidSubscriptionId(I)Z -HSPLandroid/telephony/SubscriptionPlan$1;->newArray(I)[Landroid/telephony/SubscriptionPlan; -HSPLandroid/telephony/SubscriptionPlan$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/telephony/TelephonyCallback$IPhoneStateListenerStub;-><init>(Landroid/telephony/TelephonyCallback;Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/TelephonyCallback;-><init>()V -HSPLandroid/telephony/TelephonyCallback;->init(Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/TelephonyDisplayInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/TelephonyDisplayInfo; -HSPLandroid/telephony/TelephonyDisplayInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/TelephonyDisplayInfo;-><init>(II)V -HSPLandroid/telephony/TelephonyDisplayInfo;->getNetworkType()I -HSPLandroid/telephony/TelephonyDisplayInfo;->getOverrideNetworkType()I -HSPLandroid/telephony/TelephonyDisplayInfo;->overrideNetworkTypeToString(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyDisplayInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/TelephonyDisplayInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda0;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda1;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda2;->createService(Landroid/content/Context;)Ljava/lang/Object; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->getTelephonyServiceManager()Landroid/os/TelephonyServiceManager; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->lambda$registerServiceWrappers$0(Landroid/content/Context;)Landroid/telephony/TelephonyManager; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->lambda$registerServiceWrappers$1(Landroid/content/Context;)Landroid/telephony/SubscriptionManager; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->lambda$registerServiceWrappers$2(Landroid/content/Context;)Landroid/telephony/CarrierConfigManager; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->lambda$registerServiceWrappers$3(Landroid/content/Context;)Landroid/telephony/euicc/EuiccManager; -HSPLandroid/telephony/TelephonyFrameworkInitializer;->setTelephonyServiceManager(Landroid/os/TelephonyServiceManager;)V -HSPLandroid/telephony/TelephonyManager$1;-><init>(Landroid/telephony/TelephonyManager;ILjava/lang/String;)V -HSPLandroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V -HSPLandroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;I)V -HSPLandroid/telephony/TelephonyManager;->checkCarrierPrivilegesForPackageAnyPhone(Ljava/lang/String;)I -HSPLandroid/telephony/TelephonyManager;->createForPhoneAccountHandle(Landroid/telecom/PhoneAccountHandle;)Landroid/telephony/TelephonyManager; -HSPLandroid/telephony/TelephonyManager;->createForSubscriptionId(I)Landroid/telephony/TelephonyManager; -HSPLandroid/telephony/TelephonyManager;->from(Landroid/content/Context;)Landroid/telephony/TelephonyManager; -HSPLandroid/telephony/TelephonyManager;->getActiveModemCount()I -HSPLandroid/telephony/TelephonyManager;->getAttributionTag()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getCallState()I -HSPLandroid/telephony/TelephonyManager;->getCardIdForDefaultEuicc()I -HSPLandroid/telephony/TelephonyManager;->getCarrierPrivilegeStatus(I)I -HSPLandroid/telephony/TelephonyManager;->getCurrentPhoneType()I -HSPLandroid/telephony/TelephonyManager;->getCurrentPhoneType(I)I -HSPLandroid/telephony/TelephonyManager;->getCurrentPhoneTypeForSlot(I)I -HSPLandroid/telephony/TelephonyManager;->getDataEnabled()Z -HSPLandroid/telephony/TelephonyManager;->getDataEnabled(I)Z -HSPLandroid/telephony/TelephonyManager;->getDataNetworkType()I -HSPLandroid/telephony/TelephonyManager;->getDataNetworkType(I)I -HSPLandroid/telephony/TelephonyManager;->getDefault()Landroid/telephony/TelephonyManager; -HSPLandroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getGroupIdLevel1()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getITelephony()Lcom/android/internal/telephony/ITelephony; -HSPLandroid/telephony/TelephonyManager;->getImei()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getImei(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getLine1Number(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getLocationData()I -HSPLandroid/telephony/TelephonyManager;->getMeid()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getMeid(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getMultiSimConfiguration()Landroid/telephony/TelephonyManager$MultiSimVariants; -HSPLandroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkCountryIso(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkOperatorForPhone(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkOperatorName(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getNetworkType()I -HSPLandroid/telephony/TelephonyManager;->getNetworkType(I)I -HSPLandroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getOpPackageName()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getPhoneCount()I -HSPLandroid/telephony/TelephonyManager;->getPhoneId()I -HSPLandroid/telephony/TelephonyManager;->getPhoneType()I -HSPLandroid/telephony/TelephonyManager;->getPhoneType(I)I -HSPLandroid/telephony/TelephonyManager;->getRenouncedPermissions()Ljava/util/Set; -HSPLandroid/telephony/TelephonyManager;->getServiceState()Landroid/telephony/ServiceState; -HSPLandroid/telephony/TelephonyManager;->getServiceState(I)Landroid/telephony/ServiceState; -HSPLandroid/telephony/TelephonyManager;->getServiceStateForSubscriber(I)Landroid/telephony/ServiceState; -HSPLandroid/telephony/TelephonyManager;->getSignalStrength()Landroid/telephony/SignalStrength; -HSPLandroid/telephony/TelephonyManager;->getSimCarrierId()I -HSPLandroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimCountryIsoForPhone(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperatorNameForPhone(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperatorNumeric()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperatorNumeric(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimOperatorNumericForPhone(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimSerialNumber(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSimSpecificCarrierId()I -HSPLandroid/telephony/TelephonyManager;->getSimState()I -HSPLandroid/telephony/TelephonyManager;->getSimState(I)I -HSPLandroid/telephony/TelephonyManager;->getSimStateForSlotIndex(I)I -HSPLandroid/telephony/TelephonyManager;->getSimStateIncludingLoaded()I -HSPLandroid/telephony/TelephonyManager;->getSlotIndex()I -HSPLandroid/telephony/TelephonyManager;->getSmsService()Lcom/android/internal/telephony/ISms; -HSPLandroid/telephony/TelephonyManager;->getSubId()I -HSPLandroid/telephony/TelephonyManager;->getSubId(I)I -HSPLandroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSubscriberId(I)Ljava/lang/String; -HSPLandroid/telephony/TelephonyManager;->getSubscriberInfoService()Lcom/android/internal/telephony/IPhoneSubInfo; -HSPLandroid/telephony/TelephonyManager;->getSubscriptionId(Landroid/telecom/PhoneAccountHandle;)I -HSPLandroid/telephony/TelephonyManager;->getSubscriptionService()Lcom/android/internal/telephony/ISub; -HSPLandroid/telephony/TelephonyManager;->getSupportedModemCount()I -HSPLandroid/telephony/TelephonyManager;->getTelephonyProperty(ILjava/util/List;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/telephony/TelephonyManager;->getVoiceNetworkType()I -HSPLandroid/telephony/TelephonyManager;->getVoiceNetworkType(I)I -HSPLandroid/telephony/TelephonyManager;->hasCarrierPrivileges(I)Z -HSPLandroid/telephony/TelephonyManager;->isDataCapable()Z -HSPLandroid/telephony/TelephonyManager;->isDataConnectionAllowed()Z -HSPLandroid/telephony/TelephonyManager;->isDataEnabled()Z -HSPLandroid/telephony/TelephonyManager;->isDataEnabledForReason(I)Z -HSPLandroid/telephony/TelephonyManager;->isDataEnabledForReason(II)Z -HSPLandroid/telephony/TelephonyManager;->isEmergencyNumber(Ljava/lang/String;)Z -HSPLandroid/telephony/TelephonyManager;->isNetworkRoaming()Z -HSPLandroid/telephony/TelephonyManager;->isNetworkRoaming(I)Z -HSPLandroid/telephony/TelephonyManager;->isSmsCapable()Z -HSPLandroid/telephony/TelephonyManager;->isVoiceCapable()Z -HSPLandroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V -HSPLandroid/telephony/TelephonyManager;->mergeAttributionAndRenouncedPermissions(Landroid/content/Context;Landroid/content/Context;)Landroid/content/Context; -HSPLandroid/telephony/TelephonyManager;->registerTelephonyCallback(ILjava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V -HSPLandroid/telephony/TelephonyManager;->registerTelephonyCallback(Ljava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V -HSPLandroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda0;-><init>()V -HSPLandroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda0;->applyAsInt(Ljava/lang/Object;)I -HSPLandroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda1;->applyAsInt(Ljava/lang/Object;)I -HSPLandroid/telephony/TelephonyRegistryManager$1$$ExternalSyntheticLambda0;-><init>(Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;)V -HSPLandroid/telephony/TelephonyRegistryManager$1$$ExternalSyntheticLambda0;->run()V -HSPLandroid/telephony/TelephonyRegistryManager$1;-><init>(Landroid/telephony/TelephonyRegistryManager;Ljava/util/concurrent/Executor;Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;)V -HSPLandroid/telephony/TelephonyRegistryManager$1;->lambda$onSubscriptionsChanged$0(Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;)V -HSPLandroid/telephony/TelephonyRegistryManager$1;->onSubscriptionsChanged()V -HSPLandroid/telephony/TelephonyRegistryManager;-><init>(Landroid/content/Context;)V -HSPLandroid/telephony/TelephonyRegistryManager;->addOnSubscriptionsChangedListener(Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener;Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/TelephonyRegistryManager;->getEventsFromBitmask(I)Ljava/util/Set; -HSPLandroid/telephony/TelephonyRegistryManager;->getEventsFromCallback(Landroid/telephony/TelephonyCallback;)Ljava/util/Set; -HSPLandroid/telephony/TelephonyRegistryManager;->lambda$listenFromListener$0(Ljava/lang/Integer;)I -HSPLandroid/telephony/TelephonyRegistryManager;->listenFromCallback(ZZILjava/lang/String;Ljava/lang/String;Landroid/telephony/TelephonyCallback;[IZ)V -HSPLandroid/telephony/TelephonyRegistryManager;->listenFromListener(IZZLjava/lang/String;Ljava/lang/String;Landroid/telephony/PhoneStateListener;IZ)V -HSPLandroid/telephony/TelephonyRegistryManager;->registerTelephonyCallback(ZZLjava/util/concurrent/Executor;ILjava/lang/String;Ljava/lang/String;Landroid/telephony/TelephonyCallback;Z)V -HSPLandroid/telephony/UiccAccessRule$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/UiccAccessRule; -HSPLandroid/telephony/UiccAccessRule$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/UiccAccessRule$1;->newArray(I)[Landroid/telephony/UiccAccessRule; -HSPLandroid/telephony/UiccAccessRule$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/telephony/VoiceSpecificRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/VoiceSpecificRegistrationInfo; -HSPLandroid/telephony/VoiceSpecificRegistrationInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/VoiceSpecificRegistrationInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/telephony/VoiceSpecificRegistrationInfo;-><init>(Landroid/telephony/VoiceSpecificRegistrationInfo;)V -HSPLandroid/telephony/VoiceSpecificRegistrationInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/VoiceSpecificRegistrationInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/telephony/data/ApnSetting$Builder;-><init>()V -HSPLandroid/telephony/data/ApnSetting$Builder;->buildWithoutCheck()Landroid/telephony/data/ApnSetting; -HSPLandroid/telephony/data/ApnSetting$Builder;->setAlwaysOn(Z)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setApnName(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setApnSetId(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setApnTypeBitmask(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setAuthType(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setCarrierEnabled(Z)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setCarrierId(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setEntryName(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setId(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setLingeringNetworkTypeBitmask(J)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMaxConns(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMaxConnsTime(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMmsProxyAddress(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMmsProxyPort(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMmsc(Landroid/net/Uri;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setModemCognitive(Z)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMtuV4(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMtuV6(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMvnoMatchData(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setMvnoType(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setNetworkTypeBitmask(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setOperatorNumeric(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setPassword(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setProfileId(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setProtocol(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setProxyAddress(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setProxyPort(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setRoamingProtocol(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setSkip464Xlat(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setUser(Ljava/lang/String;)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting$Builder;->setWaitTime(I)Landroid/telephony/data/ApnSetting$Builder; -HSPLandroid/telephony/data/ApnSetting;-><init>(Landroid/telephony/data/ApnSetting$Builder;)V -HSPLandroid/telephony/data/ApnSetting;->UriToString(Landroid/net/Uri;)Ljava/lang/String; -HSPLandroid/telephony/data/ApnSetting;->equals(Ljava/lang/Object;)Z -HSPLandroid/telephony/data/ApnSetting;->getApnName()Ljava/lang/String; -HSPLandroid/telephony/data/ApnSetting;->getApnTypeBitmask()I -HSPLandroid/telephony/data/ApnSetting;->getApnTypesStringFromBitmask(I)Ljava/lang/String; -HSPLandroid/telephony/data/ApnSetting;->portToString(I)Ljava/lang/String; -HSPLandroid/telephony/data/ApnSetting;->toString()Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Map;Landroid/util/ArrayMap; -HSPLandroid/telephony/euicc/EuiccManager;->getIEuiccController()Lcom/android/internal/telephony/euicc/IEuiccController; -HSPLandroid/telephony/euicc/EuiccManager;->isEnabled()Z -HSPLandroid/telephony/ims/ImsMmTelManager;->createForSubscriptionId(I)Landroid/telephony/ims/ImsMmTelManager; -HSPLandroid/telephony/ims/ImsMmTelManager;->getITelephony()Lcom/android/internal/telephony/ITelephony; -HSPLandroid/telephony/ims/ImsMmTelManager;->getITelephonyInterface()Lcom/android/internal/telephony/ITelephony; -HSPLandroid/telephony/ims/ImsMmTelManager;->isAvailable(II)Z -HSPLandroid/telephony/ims/ImsReasonInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/telephony/ims/ImsReasonInfo; -HSPLandroid/telephony/ims/ImsReasonInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/telephony/ims/ImsReasonInfo;->toString()Ljava/lang/String; -HSPLandroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder;-><init>(Landroid/telephony/ims/RegistrationManager$RegistrationCallback;)V -HSPLandroid/telephony/ims/RegistrationManager$RegistrationCallback;-><init>()V -HSPLandroid/telephony/ims/RegistrationManager$RegistrationCallback;->getBinder()Landroid/telephony/ims/aidl/IImsRegistrationCallback; -HSPLandroid/telephony/ims/RegistrationManager$RegistrationCallback;->setExecutor(Ljava/util/concurrent/Executor;)V -HSPLandroid/telephony/ims/aidl/IImsRegistrationCallback$Stub;-><init>()V -HSPLandroid/telephony/ims/aidl/IImsRegistrationCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/text/AndroidBidi;->bidi(I[C[B)I -HSPLandroid/text/AndroidBidi;->directions(I[BI[CII)Landroid/text/Layout$Directions; -HSPLandroid/text/AutoGrowArray$ByteArray;-><init>()V -HSPLandroid/text/AutoGrowArray$ByteArray;-><init>(I)V -HSPLandroid/text/AutoGrowArray$ByteArray;->clear()V -HSPLandroid/text/AutoGrowArray$ByteArray;->clearWithReleasingLargeArray()V -HSPLandroid/text/AutoGrowArray$ByteArray;->get(I)B -HSPLandroid/text/AutoGrowArray$ByteArray;->getRawArray()[B -HSPLandroid/text/AutoGrowArray$ByteArray;->resize(I)V -HSPLandroid/text/AutoGrowArray$FloatArray;-><init>()V -HSPLandroid/text/AutoGrowArray$FloatArray;-><init>(I)V -HSPLandroid/text/AutoGrowArray$FloatArray;->clear()V -HSPLandroid/text/AutoGrowArray$FloatArray;->clearWithReleasingLargeArray()V -HSPLandroid/text/AutoGrowArray$FloatArray;->ensureCapacity(I)V -HSPLandroid/text/AutoGrowArray$FloatArray;->getRawArray()[F -HSPLandroid/text/AutoGrowArray$FloatArray;->resize(I)V -HSPLandroid/text/AutoGrowArray$IntArray;-><init>(I)V -HSPLandroid/text/AutoGrowArray$IntArray;->append(I)V -HSPLandroid/text/AutoGrowArray$IntArray;->clear()V -HSPLandroid/text/AutoGrowArray$IntArray;->clearWithReleasingLargeArray()V -HSPLandroid/text/AutoGrowArray$IntArray;->ensureCapacity(I)V -HSPLandroid/text/AutoGrowArray$IntArray;->getRawArray()[I -HSPLandroid/text/AutoGrowArray;->computeNewCapacity(II)I -HSPLandroid/text/BidiFormatter$DirectionalityEstimator;->dirTypeBackward()B -HSPLandroid/text/BidiFormatter$DirectionalityEstimator;->dirTypeForward()B -HSPLandroid/text/BidiFormatter$DirectionalityEstimator;->getEntryDir()I -HSPLandroid/text/BidiFormatter$DirectionalityEstimator;->getExitDir()I -HSPLandroid/text/BidiFormatter;->getInstance()Landroid/text/BidiFormatter; -HSPLandroid/text/BidiFormatter;->markAfter(Ljava/lang/CharSequence;Landroid/text/TextDirectionHeuristic;)Ljava/lang/String; -HSPLandroid/text/BidiFormatter;->markBefore(Ljava/lang/CharSequence;Landroid/text/TextDirectionHeuristic;)Ljava/lang/String; -HSPLandroid/text/BidiFormatter;->unicodeWrap(Ljava/lang/CharSequence;Landroid/text/TextDirectionHeuristic;Z)Ljava/lang/CharSequence; -HSPLandroid/text/BoringLayout$Metrics;->-$$Nest$mreset(Landroid/text/BoringLayout$Metrics;)V -HSPLandroid/text/BoringLayout$Metrics;-><init>()V -HSPLandroid/text/BoringLayout$Metrics;->reset()V+]Landroid/graphics/RectF;Landroid/graphics/RectF; -HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)V -HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)V -HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;IZ)V -HSPLandroid/text/BoringLayout;->draw(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V -HSPLandroid/text/BoringLayout;->ellipsized(II)V -HSPLandroid/text/BoringLayout;->getEllipsisCount(I)I -HSPLandroid/text/BoringLayout;->getEllipsisStart(I)I -HSPLandroid/text/BoringLayout;->getEllipsizedWidth()I -HSPLandroid/text/BoringLayout;->getHeight()I -HSPLandroid/text/BoringLayout;->getLineContainsTab(I)Z -HSPLandroid/text/BoringLayout;->getLineCount()I -HSPLandroid/text/BoringLayout;->getLineDescent(I)I -HSPLandroid/text/BoringLayout;->getLineDirections(I)Landroid/text/Layout$Directions; -HSPLandroid/text/BoringLayout;->getLineMax(I)F -HSPLandroid/text/BoringLayout;->getLineStart(I)I+]Landroid/text/BoringLayout;Landroid/text/BoringLayout;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/text/BoringLayout;->getLineTop(I)I -HSPLandroid/text/BoringLayout;->getLineWidth(I)F -HSPLandroid/text/BoringLayout;->getParagraphDirection(I)I -HSPLandroid/text/BoringLayout;->hasAnyInterestingChars(Ljava/lang/CharSequence;I)Z -HSPLandroid/text/BoringLayout;->init(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/Layout$Alignment;Landroid/text/BoringLayout$Metrics;ZZZ)V+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;Landroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics; -HSPLandroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;ZLandroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics; -HSPLandroid/text/BoringLayout;->isFallbackLineSpacingEnabled()Z -HSPLandroid/text/BoringLayout;->make(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)Landroid/text/BoringLayout; -HSPLandroid/text/BoringLayout;->make(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)Landroid/text/BoringLayout; -HSPLandroid/text/BoringLayout;->replaceOrMake(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)Landroid/text/BoringLayout; -HSPLandroid/text/BoringLayout;->replaceOrMake(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)Landroid/text/BoringLayout; -HSPLandroid/text/BoringLayout;->replaceOrMake(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;IZ)Landroid/text/BoringLayout; -HSPLandroid/text/CharSequenceCharacterIterator;->current()C -HSPLandroid/text/CharSequenceCharacterIterator;->first()C -HSPLandroid/text/CharSequenceCharacterIterator;->getBeginIndex()I -HSPLandroid/text/CharSequenceCharacterIterator;->getEndIndex()I -HSPLandroid/text/CharSequenceCharacterIterator;->getIndex()I -HSPLandroid/text/CharSequenceCharacterIterator;->next()C -HSPLandroid/text/CharSequenceCharacterIterator;->setIndex(I)C -HSPLandroid/text/DynamicLayout$Builder;->obtain(Ljava/lang/CharSequence;Landroid/text/TextPaint;I)Landroid/text/DynamicLayout$Builder; -HSPLandroid/text/DynamicLayout$ChangeWatcher;->afterTextChanged(Landroid/text/Editable;)V -HSPLandroid/text/DynamicLayout$ChangeWatcher;->beforeTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/text/DynamicLayout$ChangeWatcher;->onSpanAdded(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/text/DynamicLayout$ChangeWatcher;->onSpanChanged(Landroid/text/Spannable;Ljava/lang/Object;IIII)V -HSPLandroid/text/DynamicLayout$ChangeWatcher;->onSpanRemoved(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/text/DynamicLayout$ChangeWatcher;->onTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/text/DynamicLayout;-><init>(Landroid/text/DynamicLayout$Builder;)V -HSPLandroid/text/DynamicLayout;->addBlockAtOffset(I)V -HSPLandroid/text/DynamicLayout;->contentMayProtrudeFromLineTopOrBottom(Ljava/lang/CharSequence;II)Z -HSPLandroid/text/DynamicLayout;->createBlocks()V -HSPLandroid/text/DynamicLayout;->generate(Landroid/text/DynamicLayout$Builder;)V -HSPLandroid/text/DynamicLayout;->getBlockEndLines()[I -HSPLandroid/text/DynamicLayout;->getBlockIndices()[I -HSPLandroid/text/DynamicLayout;->getBlocksAlwaysNeedToBeRedrawn()Landroid/util/ArraySet; -HSPLandroid/text/DynamicLayout;->getEllipsisCount(I)I -HSPLandroid/text/DynamicLayout;->getEllipsisStart(I)I -HSPLandroid/text/DynamicLayout;->getEllipsizedWidth()I -HSPLandroid/text/DynamicLayout;->getEndHyphenEdit(I)I -HSPLandroid/text/DynamicLayout;->getIndexFirstChangedBlock()I -HSPLandroid/text/DynamicLayout;->getLineContainsTab(I)Z -HSPLandroid/text/DynamicLayout;->getLineCount()I -HSPLandroid/text/DynamicLayout;->getLineDescent(I)I -HSPLandroid/text/DynamicLayout;->getLineDirections(I)Landroid/text/Layout$Directions; -HSPLandroid/text/DynamicLayout;->getLineExtra(I)I -HSPLandroid/text/DynamicLayout;->getLineStart(I)I -HSPLandroid/text/DynamicLayout;->getLineTop(I)I -HSPLandroid/text/DynamicLayout;->getNumberOfBlocks()I -HSPLandroid/text/DynamicLayout;->getParagraphDirection(I)I -HSPLandroid/text/DynamicLayout;->getStartHyphenEdit(I)I -HSPLandroid/text/DynamicLayout;->reflow(Ljava/lang/CharSequence;III)V -HSPLandroid/text/DynamicLayout;->setIndexFirstChangedBlock(I)V -HSPLandroid/text/DynamicLayout;->updateAlwaysNeedsToBeRedrawn(I)V -HSPLandroid/text/DynamicLayout;->updateBlocks(III)V -HSPLandroid/text/Editable$Factory;-><init>()V -HSPLandroid/text/Editable$Factory;->getInstance()Landroid/text/Editable$Factory; -HSPLandroid/text/Editable$Factory;->newEditable(Ljava/lang/CharSequence;)Landroid/text/Editable; -HSPLandroid/text/FontConfig$Font;->getAxes()[Landroid/graphics/fonts/FontVariationAxis; -HSPLandroid/text/FontConfig$Font;->getTtcIndex()I -HSPLandroid/text/FontConfig$Font;->getWeight()I -HSPLandroid/text/FontConfig$Font;->isItalic()Z -HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;)Landroid/text/Spanned; -HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;I)Landroid/text/Spanned; -HSPLandroid/text/Html;->fromHtml(Ljava/lang/String;ILandroid/text/Html$ImageGetter;Landroid/text/Html$TagHandler;)Landroid/text/Spanned; -HSPLandroid/text/HtmlToSpannedConverter;-><init>(Ljava/lang/String;Landroid/text/Html$ImageGetter;Landroid/text/Html$TagHandler;Lorg/ccil/cowan/tagsoup/Parser;I)V -HSPLandroid/text/HtmlToSpannedConverter;->characters([CII)V+]Landroid/text/SpannableStringBuilder;Landroid/text/SpannableStringBuilder;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/text/HtmlToSpannedConverter;->convert()Landroid/text/Spanned; -HSPLandroid/text/HtmlToSpannedConverter;->end(Landroid/text/Editable;Ljava/lang/Class;Ljava/lang/Object;)V -HSPLandroid/text/HtmlToSpannedConverter;->endA(Landroid/text/Editable;)V -HSPLandroid/text/HtmlToSpannedConverter;->endDocument()V -HSPLandroid/text/HtmlToSpannedConverter;->endElement(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/text/HtmlToSpannedConverter;->endPrefixMapping(Ljava/lang/String;)V -HSPLandroid/text/HtmlToSpannedConverter;->getLast(Landroid/text/Spanned;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/text/HtmlToSpannedConverter;->handleBr(Landroid/text/Editable;)V -HSPLandroid/text/HtmlToSpannedConverter;->handleEndTag(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/text/HtmlToSpannedConverter;->handleStartTag(Ljava/lang/String;Lorg/xml/sax/Attributes;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/text/HtmlToSpannedConverter;->setDocumentLocator(Lorg/xml/sax/Locator;)V -HSPLandroid/text/HtmlToSpannedConverter;->setSpanFromMark(Landroid/text/Spannable;Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLandroid/text/HtmlToSpannedConverter;->start(Landroid/text/Editable;Ljava/lang/Object;)V -HSPLandroid/text/HtmlToSpannedConverter;->startDocument()V -HSPLandroid/text/HtmlToSpannedConverter;->startElement(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/xml/sax/Attributes;)V -HSPLandroid/text/HtmlToSpannedConverter;->startPrefixMapping(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/text/Hyphenator;->init()V -HSPLandroid/text/InputFilter$LengthFilter;-><init>(I)V -HSPLandroid/text/InputFilter$LengthFilter;->filter(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; -HSPLandroid/text/InputFilter$LengthFilter;->getMax()I -HSPLandroid/text/Layout$Alignment;->values()[Landroid/text/Layout$Alignment; -HSPLandroid/text/Layout$Directions;->getRunCount()I -HSPLandroid/text/Layout$Directions;->getRunLength(I)I -HSPLandroid/text/Layout$Directions;->getRunStart(I)I -HSPLandroid/text/Layout$Directions;->isRunRtl(I)Z -HSPLandroid/text/Layout$Ellipsizer;-><init>(Ljava/lang/CharSequence;)V -HSPLandroid/text/Layout$Ellipsizer;->charAt(I)C -HSPLandroid/text/Layout$Ellipsizer;->getChars(II[CI)V+]Landroid/text/Layout;Landroid/text/StaticLayout; -HSPLandroid/text/Layout$Ellipsizer;->length()I -HSPLandroid/text/Layout$HorizontalMeasurementProvider;->init()V -HSPLandroid/text/Layout$SpannedEllipsizer;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/Layout$SpannedEllipsizer;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/Layout$SpannedEllipsizer;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/Layout$SpannedEllipsizer;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/Layout$SpannedEllipsizer;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/Layout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V -HSPLandroid/text/Layout;->addSelection(IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V -HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V -HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;I)V -HSPLandroid/text/Layout;->drawBackground(Landroid/graphics/Canvas;II)V -HSPLandroid/text/Layout;->drawText(Landroid/graphics/Canvas;II)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/Spanned;Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString;]Landroid/text/TextLine;Landroid/text/TextLine;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Ljava/lang/CharSequence;Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString; -HSPLandroid/text/Layout;->drawWithoutText(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;III)V -HSPLandroid/text/Layout;->ellipsize(III[CILandroid/text/TextUtils$TruncateAt;)V -HSPLandroid/text/Layout;->getCursorPath(ILandroid/graphics/Path;Ljava/lang/CharSequence;)V -HSPLandroid/text/Layout;->getDesiredWidth(Ljava/lang/CharSequence;IILandroid/text/TextPaint;)F -HSPLandroid/text/Layout;->getDesiredWidth(Ljava/lang/CharSequence;Landroid/text/TextPaint;)F -HSPLandroid/text/Layout;->getEndHyphenEdit(I)I -HSPLandroid/text/Layout;->getHeight()I -HSPLandroid/text/Layout;->getHeight(Z)I -HSPLandroid/text/Layout;->getHorizontal(IZ)F -HSPLandroid/text/Layout;->getHorizontal(IZIZ)F -HSPLandroid/text/Layout;->getIndentAdjust(ILandroid/text/Layout$Alignment;)I -HSPLandroid/text/Layout;->getLineBaseline(I)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout; -HSPLandroid/text/Layout;->getLineBottom(I)I -HSPLandroid/text/Layout;->getLineBottom(IZ)I -HSPLandroid/text/Layout;->getLineEnd(I)I -HSPLandroid/text/Layout;->getLineExtent(ILandroid/text/Layout$TabStops;Z)F+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/TextLine;Landroid/text/TextLine;]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/Layout;->getLineExtent(IZ)F -HSPLandroid/text/Layout;->getLineForOffset(I)I+]Landroid/text/Layout;Landroid/text/StaticLayout; -HSPLandroid/text/Layout;->getLineForVertical(I)I+]Landroid/text/Layout;Landroid/text/BoringLayout; -HSPLandroid/text/Layout;->getLineLeft(I)F -HSPLandroid/text/Layout;->getLineMax(I)F -HSPLandroid/text/Layout;->getLineRangeForDraw(Landroid/graphics/Canvas;)J+]Landroid/graphics/Canvas;missing_types]Landroid/text/Layout;Landroid/text/StaticLayout; -HSPLandroid/text/Layout;->getLineRight(I)F -HSPLandroid/text/Layout;->getLineStartPos(III)I -HSPLandroid/text/Layout;->getLineVisibleEnd(I)I -HSPLandroid/text/Layout;->getLineWidth(I)F -HSPLandroid/text/Layout;->getOffsetAtStartOf(I)I -HSPLandroid/text/Layout;->getOffsetForHorizontal(IF)I -HSPLandroid/text/Layout;->getOffsetForHorizontal(IFZ)I -HSPLandroid/text/Layout;->getPaint()Landroid/text/TextPaint; -HSPLandroid/text/Layout;->getParagraphAlignment(I)Landroid/text/Layout$Alignment; -HSPLandroid/text/Layout;->getParagraphLeadingMargin(I)I -HSPLandroid/text/Layout;->getParagraphLeft(I)I -HSPLandroid/text/Layout;->getParagraphRight(I)I -HSPLandroid/text/Layout;->getParagraphSpans(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/Layout;->getPrimaryHorizontal(I)F -HSPLandroid/text/Layout;->getPrimaryHorizontal(IZ)F -HSPLandroid/text/Layout;->getSelection(IILandroid/text/Layout$SelectionRectangleConsumer;)V -HSPLandroid/text/Layout;->getSelectionPath(IILandroid/graphics/Path;)V -HSPLandroid/text/Layout;->getSpacingAdd()F -HSPLandroid/text/Layout;->getSpacingMultiplier()F -HSPLandroid/text/Layout;->getStartHyphenEdit(I)I -HSPLandroid/text/Layout;->getText()Ljava/lang/CharSequence; -HSPLandroid/text/Layout;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic; -HSPLandroid/text/Layout;->getWidth()I -HSPLandroid/text/Layout;->increaseWidthTo(I)V -HSPLandroid/text/Layout;->isFallbackLineSpacingEnabled()Z -HSPLandroid/text/Layout;->isJustificationRequired(I)Z -HSPLandroid/text/Layout;->isRtlCharAt(I)Z -HSPLandroid/text/Layout;->primaryIsTrailingPrevious(I)Z -HSPLandroid/text/Layout;->replaceWith(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V -HSPLandroid/text/Layout;->shouldClampCursor(I)Z -HSPLandroid/text/MeasuredParagraph;-><init>()V -HSPLandroid/text/MeasuredParagraph;->applyMetricsAffectingSpan(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;[Landroid/text/style/MetricAffectingSpan;[Landroid/text/style/LineBreakConfigSpan;IILandroid/graphics/text/MeasuredText$Builder;Landroid/text/MeasuredParagraph$StyleRunCallback;)V+]Landroid/graphics/text/LineBreakConfig$Builder;Landroid/graphics/text/LineBreakConfig$Builder;]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/text/style/MetricAffectingSpan;missing_types -HSPLandroid/text/MeasuredParagraph;->breakText(IZF)I -HSPLandroid/text/MeasuredParagraph;->buildForBidi(Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph; -HSPLandroid/text/MeasuredParagraph;->buildForMeasurement(Landroid/text/TextPaint;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph; -HSPLandroid/text/MeasuredParagraph;->getCharWidthAt(I)F -HSPLandroid/text/MeasuredParagraph;->getChars()[C -HSPLandroid/text/MeasuredParagraph;->getDirections(II)Landroid/text/Layout$Directions; -HSPLandroid/text/MeasuredParagraph;->getFontMetrics()Landroid/text/AutoGrowArray$IntArray; -HSPLandroid/text/MeasuredParagraph;->getMeasuredText()Landroid/graphics/text/MeasuredText; -HSPLandroid/text/MeasuredParagraph;->getParagraphDir()I -HSPLandroid/text/MeasuredParagraph;->getSpanEndCache()Landroid/text/AutoGrowArray$IntArray; -HSPLandroid/text/MeasuredParagraph;->getWholeWidth()F -HSPLandroid/text/MeasuredParagraph;->obtain()Landroid/text/MeasuredParagraph; -HSPLandroid/text/MeasuredParagraph;->recycle()V -HSPLandroid/text/MeasuredParagraph;->release()V -HSPLandroid/text/MeasuredParagraph;->reset()V -HSPLandroid/text/MeasuredParagraph;->resetAndAnalyzeBidi(Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;)V -HSPLandroid/text/PackedIntVector;->adjustValuesBelow(III)V -HSPLandroid/text/PackedIntVector;->deleteAt(II)V -HSPLandroid/text/PackedIntVector;->getValue(II)I -HSPLandroid/text/PackedIntVector;->growBuffer()V -HSPLandroid/text/PackedIntVector;->insertAt(I[I)V -HSPLandroid/text/PackedIntVector;->moveRowGapTo(I)V -HSPLandroid/text/PackedIntVector;->moveValueGapTo(II)V -HSPLandroid/text/PackedIntVector;->size()I -HSPLandroid/text/PackedIntVector;->width()I -HSPLandroid/text/PackedObjectVector;->deleteAt(II)V -HSPLandroid/text/PackedObjectVector;->getValue(II)Ljava/lang/Object; -HSPLandroid/text/PackedObjectVector;->growBuffer()V -HSPLandroid/text/PackedObjectVector;->insertAt(I[Ljava/lang/Object;)V -HSPLandroid/text/PackedObjectVector;->moveRowGapTo(I)V -HSPLandroid/text/PackedObjectVector;->setValue(IILjava/lang/Object;)V -HSPLandroid/text/PackedObjectVector;->size()I -HSPLandroid/text/PrecomputedText$ParagraphInfo;-><init>(ILandroid/text/MeasuredParagraph;)V -HSPLandroid/text/PrecomputedText$Params;-><init>(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;Landroid/text/TextDirectionHeuristic;II)V -HSPLandroid/text/PrecomputedText$Params;->getBreakStrategy()I -HSPLandroid/text/PrecomputedText$Params;->getHyphenationFrequency()I -HSPLandroid/text/PrecomputedText$Params;->getTextDirection()Landroid/text/TextDirectionHeuristic; -HSPLandroid/text/PrecomputedText$Params;->getTextPaint()Landroid/text/TextPaint; -HSPLandroid/text/Selection;->getSelectionEnd(Ljava/lang/CharSequence;)I -HSPLandroid/text/Selection;->getSelectionStart(Ljava/lang/CharSequence;)I -HSPLandroid/text/Selection;->removeMemory(Landroid/text/Spannable;)V -HSPLandroid/text/Selection;->removeSelection(Landroid/text/Spannable;)V -HSPLandroid/text/Selection;->setSelection(Landroid/text/Spannable;I)V -HSPLandroid/text/Selection;->setSelection(Landroid/text/Spannable;II)V -HSPLandroid/text/Selection;->setSelection(Landroid/text/Spannable;III)V -HSPLandroid/text/Selection;->updateMemory(Landroid/text/Spannable;I)V -HSPLandroid/text/SpanSet;-><init>(Ljava/lang/Class;)V -HSPLandroid/text/SpanSet;->getNextTransition(II)I -HSPLandroid/text/SpanSet;->hasSpansIntersecting(II)Z -HSPLandroid/text/SpanSet;->init(Landroid/text/Spanned;II)V -HSPLandroid/text/SpanSet;->recycle()V -HSPLandroid/text/Spannable$Factory;->getInstance()Landroid/text/Spannable$Factory; -HSPLandroid/text/Spannable$Factory;->newSpannable(Ljava/lang/CharSequence;)Landroid/text/Spannable; -HSPLandroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;)V -HSPLandroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;Z)V -HSPLandroid/text/SpannableString;->equals(Ljava/lang/Object;)Z -HSPLandroid/text/SpannableString;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/SpannableString;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/SpannableString;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/SpannableString;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/SpannableString;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/SpannableString;->removeSpan(Ljava/lang/Object;)V -HSPLandroid/text/SpannableString;->removeSpan(Ljava/lang/Object;I)V -HSPLandroid/text/SpannableString;->setSpan(Ljava/lang/Object;III)V -HSPLandroid/text/SpannableString;->subSequence(II)Ljava/lang/CharSequence; -HSPLandroid/text/SpannableString;->valueOf(Ljava/lang/CharSequence;)Landroid/text/SpannableString; -HSPLandroid/text/SpannableStringBuilder;-><init>()V -HSPLandroid/text/SpannableStringBuilder;-><init>(Ljava/lang/CharSequence;)V -HSPLandroid/text/SpannableStringBuilder;-><init>(Ljava/lang/CharSequence;II)V -HSPLandroid/text/SpannableStringBuilder;->append(C)Landroid/text/Editable; -HSPLandroid/text/SpannableStringBuilder;->append(C)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->append(Ljava/lang/CharSequence;)Landroid/text/Editable; -HSPLandroid/text/SpannableStringBuilder;->append(Ljava/lang/CharSequence;)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->append(Ljava/lang/CharSequence;II)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->calcMax(I)I -HSPLandroid/text/SpannableStringBuilder;->change(IILjava/lang/CharSequence;II)V -HSPLandroid/text/SpannableStringBuilder;->charAt(I)C -HSPLandroid/text/SpannableStringBuilder;->checkRange(Ljava/lang/String;II)V -HSPLandroid/text/SpannableStringBuilder;->checkSortBuffer([II)[I -HSPLandroid/text/SpannableStringBuilder;->clear()V -HSPLandroid/text/SpannableStringBuilder;->compareSpans(II[I[I)I -HSPLandroid/text/SpannableStringBuilder;->countSpans(IILjava/lang/Class;I)I -HSPLandroid/text/SpannableStringBuilder;->delete(II)Landroid/text/Editable; -HSPLandroid/text/SpannableStringBuilder;->delete(II)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->drawTextRun(Landroid/graphics/BaseCanvas;IIIIFFZLandroid/graphics/Paint;)V -HSPLandroid/text/SpannableStringBuilder;->equals(Ljava/lang/Object;)Z -HSPLandroid/text/SpannableStringBuilder;->getChars(II[CI)V -HSPLandroid/text/SpannableStringBuilder;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringBuilder;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringBuilder;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringBuilder;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/SpannableStringBuilder;->getSpans(IILjava/lang/Class;Z)[Ljava/lang/Object; -HSPLandroid/text/SpannableStringBuilder;->getSpansRec(IILjava/lang/Class;I[Ljava/lang/Object;[I[IIZ)I -HSPLandroid/text/SpannableStringBuilder;->getTextWatcherDepth()I -HSPLandroid/text/SpannableStringBuilder;->hasNonExclusiveExclusiveSpanAt(Ljava/lang/CharSequence;I)Z -HSPLandroid/text/SpannableStringBuilder;->insert(ILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->invalidateIndex(I)V -HSPLandroid/text/SpannableStringBuilder;->isInvalidParagraph(II)Z -HSPLandroid/text/SpannableStringBuilder;->leftChild(I)I -HSPLandroid/text/SpannableStringBuilder;->length()I -HSPLandroid/text/SpannableStringBuilder;->moveGapTo(I)V -HSPLandroid/text/SpannableStringBuilder;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/SpannableStringBuilder;->nextSpanTransitionRec(IILjava/lang/Class;I)I -HSPLandroid/text/SpannableStringBuilder;->obtain(I)[I -HSPLandroid/text/SpannableStringBuilder;->recycle([I)V -HSPLandroid/text/SpannableStringBuilder;->removeSpan(II)V -HSPLandroid/text/SpannableStringBuilder;->removeSpan(Ljava/lang/Object;)V -HSPLandroid/text/SpannableStringBuilder;->removeSpan(Ljava/lang/Object;I)V -HSPLandroid/text/SpannableStringBuilder;->removeSpansForChange(IIZI)Z -HSPLandroid/text/SpannableStringBuilder;->replace(IILjava/lang/CharSequence;)Landroid/text/Editable; -HSPLandroid/text/SpannableStringBuilder;->replace(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->replace(IILjava/lang/CharSequence;II)Landroid/text/SpannableStringBuilder; -HSPLandroid/text/SpannableStringBuilder;->resizeFor(I)V -HSPLandroid/text/SpannableStringBuilder;->resolveGap(I)I -HSPLandroid/text/SpannableStringBuilder;->restoreInvariants()V -HSPLandroid/text/SpannableStringBuilder;->rightChild(I)I -HSPLandroid/text/SpannableStringBuilder;->sendAfterTextChanged([Landroid/text/TextWatcher;)V -HSPLandroid/text/SpannableStringBuilder;->sendBeforeTextChanged([Landroid/text/TextWatcher;III)V -HSPLandroid/text/SpannableStringBuilder;->sendSpanAdded(Ljava/lang/Object;II)V -HSPLandroid/text/SpannableStringBuilder;->sendSpanChanged(Ljava/lang/Object;IIII)V -HSPLandroid/text/SpannableStringBuilder;->sendSpanRemoved(Ljava/lang/Object;II)V -HSPLandroid/text/SpannableStringBuilder;->sendTextChanged([Landroid/text/TextWatcher;III)V -HSPLandroid/text/SpannableStringBuilder;->sendToSpanWatchers(III)V -HSPLandroid/text/SpannableStringBuilder;->setFilters([Landroid/text/InputFilter;)V -HSPLandroid/text/SpannableStringBuilder;->setSpan(Ljava/lang/Object;III)V -HSPLandroid/text/SpannableStringBuilder;->setSpan(ZLjava/lang/Object;IIIZ)V -HSPLandroid/text/SpannableStringBuilder;->siftDown(I[Ljava/lang/Object;I[I[I)V -HSPLandroid/text/SpannableStringBuilder;->sort([Ljava/lang/Object;[I[I)V -HSPLandroid/text/SpannableStringBuilder;->subSequence(II)Ljava/lang/CharSequence; -HSPLandroid/text/SpannableStringBuilder;->toString()Ljava/lang/String; -HSPLandroid/text/SpannableStringBuilder;->treeRoot()I -HSPLandroid/text/SpannableStringBuilder;->updatedIntervalBound(IIIIZZ)I -HSPLandroid/text/SpannableStringInternal;-><init>(Ljava/lang/CharSequence;IIZ)V -HSPLandroid/text/SpannableStringInternal;->charAt(I)C -HSPLandroid/text/SpannableStringInternal;->checkRange(Ljava/lang/String;II)V -HSPLandroid/text/SpannableStringInternal;->copySpansFromInternal(Landroid/text/SpannableStringInternal;IIZ)V -HSPLandroid/text/SpannableStringInternal;->copySpansFromSpanned(Landroid/text/Spanned;IIZ)V -HSPLandroid/text/SpannableStringInternal;->equals(Ljava/lang/Object;)Z -HSPLandroid/text/SpannableStringInternal;->getChars(II[CI)V -HSPLandroid/text/SpannableStringInternal;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringInternal;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringInternal;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/SpannableStringInternal;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/SpannableStringInternal;->length()I -HSPLandroid/text/SpannableStringInternal;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/SpannableStringInternal;->removeSpan(Ljava/lang/Object;I)V -HSPLandroid/text/SpannableStringInternal;->sendSpanAdded(Ljava/lang/Object;II)V -HSPLandroid/text/SpannableStringInternal;->sendSpanChanged(Ljava/lang/Object;IIII)V -HSPLandroid/text/SpannableStringInternal;->setSpan(Ljava/lang/Object;III)V -HSPLandroid/text/SpannableStringInternal;->setSpan(Ljava/lang/Object;IIIZ)V -HSPLandroid/text/SpannableStringInternal;->toString()Ljava/lang/String; -HSPLandroid/text/SpannedString;-><init>(Ljava/lang/CharSequence;)V -HSPLandroid/text/SpannedString;-><init>(Ljava/lang/CharSequence;Z)V -HSPLandroid/text/SpannedString;->equals(Ljava/lang/Object;)Z -HSPLandroid/text/SpannedString;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/SpannedString;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/SpannedString;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/SpannedString;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/SpannedString;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/SpannedString;->subSequence(II)Ljava/lang/CharSequence; -HSPLandroid/text/SpannedString;->valueOf(Ljava/lang/CharSequence;)Landroid/text/SpannedString; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmAddLastLineLineSpacing(Landroid/text/StaticLayout$Builder;)Z -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmBreakStrategy(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmEllipsize(Landroid/text/StaticLayout$Builder;)Landroid/text/TextUtils$TruncateAt; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmEllipsizedWidth(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmEnd(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmFallbackLineSpacing(Landroid/text/StaticLayout$Builder;)Z -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmFontMetricsInt(Landroid/text/StaticLayout$Builder;)Landroid/graphics/Paint$FontMetricsInt; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmHyphenationFrequency(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmIncludePad(Landroid/text/StaticLayout$Builder;)Z -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmJustificationMode(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmLineBreakConfig(Landroid/text/StaticLayout$Builder;)Landroid/graphics/text/LineBreakConfig; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmPaint(Landroid/text/StaticLayout$Builder;)Landroid/text/TextPaint; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmSpacingAdd(Landroid/text/StaticLayout$Builder;)F -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmSpacingMult(Landroid/text/StaticLayout$Builder;)F -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmStart(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmText(Landroid/text/StaticLayout$Builder;)Ljava/lang/CharSequence; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmTextDir(Landroid/text/StaticLayout$Builder;)Landroid/text/TextDirectionHeuristic; -HSPLandroid/text/StaticLayout$Builder;->-$$Nest$fgetmWidth(Landroid/text/StaticLayout$Builder;)I -HSPLandroid/text/StaticLayout$Builder;-><init>()V -HSPLandroid/text/StaticLayout$Builder;->build()Landroid/text/StaticLayout; -HSPLandroid/text/StaticLayout$Builder;->obtain(Ljava/lang/CharSequence;IILandroid/text/TextPaint;I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->recycle(Landroid/text/StaticLayout$Builder;)V -HSPLandroid/text/StaticLayout$Builder;->setAlignment(Landroid/text/Layout$Alignment;)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setBreakStrategy(I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setEllipsize(Landroid/text/TextUtils$TruncateAt;)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setEllipsizedWidth(I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setHyphenationFrequency(I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setIncludePad(Z)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setIndents([I[I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setJustificationMode(I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setLineSpacing(FF)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setMaxLines(I)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setTextDirection(Landroid/text/TextDirectionHeuristic;)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout$Builder;->setUseLineSpacingFromFallbacks(Z)Landroid/text/StaticLayout$Builder; -HSPLandroid/text/StaticLayout;->calculateEllipsis(IILandroid/text/MeasuredParagraph;IFLandroid/text/TextUtils$TruncateAt;IFLandroid/text/TextPaint;Z)V -HSPLandroid/text/StaticLayout;->generate(Landroid/text/StaticLayout$Builder;ZZ)V+]Landroid/graphics/text/LineBreaker$Builder;Landroid/graphics/text/LineBreaker$Builder;]Landroid/graphics/text/LineBreaker$ParagraphConstraints;Landroid/graphics/text/LineBreaker$ParagraphConstraints;]Landroid/graphics/text/LineBreaker$Result;Landroid/graphics/text/LineBreaker$Result;]Landroid/graphics/text/LineBreaker;Landroid/graphics/text/LineBreaker;]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/text/StaticLayout;->getBottomPadding()I -HSPLandroid/text/StaticLayout;->getEllipsisCount(I)I -HSPLandroid/text/StaticLayout;->getEllipsisStart(I)I -HSPLandroid/text/StaticLayout;->getEndHyphenEdit(I)I -HSPLandroid/text/StaticLayout;->getHeight(Z)I -HSPLandroid/text/StaticLayout;->getIndentAdjust(ILandroid/text/Layout$Alignment;)I -HSPLandroid/text/StaticLayout;->getLineContainsTab(I)Z -HSPLandroid/text/StaticLayout;->getLineCount()I -HSPLandroid/text/StaticLayout;->getLineDescent(I)I -HSPLandroid/text/StaticLayout;->getLineDirections(I)Landroid/text/Layout$Directions; -HSPLandroid/text/StaticLayout;->getLineExtra(I)I -HSPLandroid/text/StaticLayout;->getLineForVertical(I)I -HSPLandroid/text/StaticLayout;->getLineStart(I)I -HSPLandroid/text/StaticLayout;->getLineTop(I)I -HSPLandroid/text/StaticLayout;->getParagraphDirection(I)I -HSPLandroid/text/StaticLayout;->getStartHyphenEdit(I)I -HSPLandroid/text/StaticLayout;->getTopPadding()I -HSPLandroid/text/StaticLayout;->getTotalInsets(I)F -HSPLandroid/text/StaticLayout;->out(Ljava/lang/CharSequence;IIIIIIIFF[Landroid/text/style/LineHeightSpan;[ILandroid/graphics/Paint$FontMetricsInt;ZIZLandroid/text/MeasuredParagraph;IZZZ[CILandroid/text/TextUtils$TruncateAt;FFLandroid/text/TextPaint;Z)I -HSPLandroid/text/StaticLayout;->packHyphenEdit(II)I -HSPLandroid/text/StaticLayout;->unpackEndHyphenEdit(I)I -HSPLandroid/text/StaticLayout;->unpackStartHyphenEdit(I)I -HSPLandroid/text/TextDirectionHeuristics$FirstStrong;->checkRtl(Ljava/lang/CharSequence;II)I -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->doCheck(Ljava/lang/CharSequence;II)Z+]Landroid/text/TextDirectionHeuristics$TextDirectionAlgorithm;Landroid/text/TextDirectionHeuristics$FirstStrong;]Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal; -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->isRtl(Ljava/lang/CharSequence;II)Z -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl;->isRtl([CII)Z -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal;->defaultIsRtl()Z -HSPLandroid/text/TextDirectionHeuristics$TextDirectionHeuristicLocale;->defaultIsRtl()Z -HSPLandroid/text/TextDirectionHeuristics;->isRtlCodePoint(I)I -HSPLandroid/text/TextFlags;->getKeyForFlag(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/text/TextLine$DecorationInfo;-><init>()V -HSPLandroid/text/TextLine$DecorationInfo;->copyInfo()Landroid/text/TextLine$DecorationInfo; -HSPLandroid/text/TextLine$DecorationInfo;->hasDecoration()Z -HSPLandroid/text/TextLine;-><init>()V -HSPLandroid/text/TextLine;->adjustEndHyphenEdit(II)I -HSPLandroid/text/TextLine;->adjustStartHyphenEdit(II)I -HSPLandroid/text/TextLine;->draw(Landroid/graphics/Canvas;FIII)V -HSPLandroid/text/TextLine;->drawStroke(Landroid/text/TextPaint;Landroid/graphics/Canvas;IFFFFF)V -HSPLandroid/text/TextLine;->drawTextRun(Landroid/graphics/Canvas;Landroid/text/TextPaint;IIIIZFI)V -HSPLandroid/text/TextLine;->equalAttributes(Landroid/text/TextPaint;Landroid/text/TextPaint;)Z -HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/graphics/Paint$FontMetricsInt;Landroid/text/TextPaint;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/TextLine;->expandMetricsFromPaint(Landroid/text/TextPaint;IIIIZLandroid/graphics/Paint$FontMetricsInt;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/TextLine;->extractDecorationInfo(Landroid/text/TextPaint;Landroid/text/TextLine$DecorationInfo;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/text/TextLine;->getOffsetBeforeAfter(IIIZIZ)I -HSPLandroid/text/TextLine;->getOffsetToLeftRightOf(IZ)I -HSPLandroid/text/TextLine;->handleReplacement(Landroid/text/style/ReplacementSpan;Landroid/text/TextPaint;IIZLandroid/graphics/Canvas;FIIILandroid/graphics/Paint$FontMetricsInt;Z)F -HSPLandroid/text/TextLine;->isLineEndSpace(C)Z -HSPLandroid/text/TextLine;->obtain()Landroid/text/TextLine; -HSPLandroid/text/TextLine;->recycle(Landroid/text/TextLine;)Landroid/text/TextLine;+]Landroid/text/SpanSet;Landroid/text/SpanSet; -HSPLandroid/text/TextLine;->set(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;IIZ)V -HSPLandroid/text/TextLine;->updateMetrics(Landroid/graphics/Paint$FontMetricsInt;IIIII)V -HSPLandroid/text/TextPaint;-><init>()V -HSPLandroid/text/TextPaint;-><init>(I)V -HSPLandroid/text/TextPaint;-><init>(Landroid/graphics/Paint;)V -HSPLandroid/text/TextPaint;->getUnderlineThickness()F -HSPLandroid/text/TextPaint;->set(Landroid/text/TextPaint;)V -HSPLandroid/text/TextPaint;->setUnderlineText(IF)V -HSPLandroid/text/TextUtils$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/text/TextUtils$SimpleStringSplitter;-><init>(C)V -HSPLandroid/text/TextUtils$SimpleStringSplitter;->hasNext()Z -HSPLandroid/text/TextUtils$SimpleStringSplitter;->iterator()Ljava/util/Iterator; -HSPLandroid/text/TextUtils$SimpleStringSplitter;->next()Ljava/lang/Object; -HSPLandroid/text/TextUtils$SimpleStringSplitter;->next()Ljava/lang/String; -HSPLandroid/text/TextUtils$SimpleStringSplitter;->setString(Ljava/lang/String;)V -HSPLandroid/text/TextUtils$StringWithRemovedChars;->toString()Ljava/lang/String; -HSPLandroid/text/TextUtils;->concat([Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->copySpansFrom(Landroid/text/Spanned;IILjava/lang/Class;Landroid/text/Spannable;I)V -HSPLandroid/text/TextUtils;->couldAffectRtl(C)Z -HSPLandroid/text/TextUtils;->doesNotNeedBidi([CII)Z -HSPLandroid/text/TextUtils;->ellipsize(Ljava/lang/CharSequence;Landroid/text/TextPaint;FLandroid/text/TextUtils$TruncateAt;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->ellipsize(Ljava/lang/CharSequence;Landroid/text/TextPaint;FLandroid/text/TextUtils$TruncateAt;ZLandroid/text/TextUtils$EllipsizeCallback;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->ellipsize(Ljava/lang/CharSequence;Landroid/text/TextPaint;FLandroid/text/TextUtils$TruncateAt;ZLandroid/text/TextUtils$EllipsizeCallback;Landroid/text/TextDirectionHeuristic;Ljava/lang/String;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->emptyIfNull(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z -HSPLandroid/text/TextUtils;->expandTemplate(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->formatSimple(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/text/TextUtils;->getCapsMode(Ljava/lang/CharSequence;II)I -HSPLandroid/text/TextUtils;->getChars(Ljava/lang/CharSequence;II[CI)V+]Landroid/text/GetChars;Landroid/text/Layout$Ellipsizer;,Landroid/text/Layout$SpannedEllipsizer;,Landroid/text/SpannableString;]Ljava/lang/Object;megamorphic_types]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/text/TextUtils;->getEllipsisString(Landroid/text/TextUtils$TruncateAt;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->getLayoutDirectionFromLocale(Ljava/util/Locale;)I -HSPLandroid/text/TextUtils;->getTrimmedLength(Ljava/lang/CharSequence;)I -HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;C)I -HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;CI)I -HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;CII)I -HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)I -HSPLandroid/text/TextUtils;->indexOf(Ljava/lang/CharSequence;Ljava/lang/CharSequence;II)I -HSPLandroid/text/TextUtils;->isDigitsOnly(Ljava/lang/CharSequence;)Z -HSPLandroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z+]Ljava/lang/CharSequence;Landroid/text/SpannableStringBuilder;,Ljava/lang/String; -HSPLandroid/text/TextUtils;->isGraphic(Ljava/lang/CharSequence;)Z -HSPLandroid/text/TextUtils;->join(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->join(Ljava/lang/CharSequence;[Ljava/lang/Object;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->lastIndexOf(Ljava/lang/CharSequence;CI)I -HSPLandroid/text/TextUtils;->lastIndexOf(Ljava/lang/CharSequence;CII)I -HSPLandroid/text/TextUtils;->makeSafeForPresentation(Ljava/lang/String;IFI)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->nullIfEmpty(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->obtain(I)[C -HSPLandroid/text/TextUtils;->packRangeInLong(II)J -HSPLandroid/text/TextUtils;->recycle([C)V -HSPLandroid/text/TextUtils;->removeEmptySpans([Ljava/lang/Object;Landroid/text/Spanned;Ljava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/TextUtils;->safeIntern(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/text/TextUtils;->split(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String; -HSPLandroid/text/TextUtils;->stringOrSpannedString(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->substring(Ljava/lang/CharSequence;II)Ljava/lang/String; -HSPLandroid/text/TextUtils;->toUpperCase(Ljava/util/Locale;Ljava/lang/CharSequence;Z)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->trimNoCopySpans(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->trimToParcelableSize(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->trimToSize(Ljava/lang/CharSequence;I)Ljava/lang/CharSequence; -HSPLandroid/text/TextUtils;->unpackRangeEndFromLong(J)I -HSPLandroid/text/TextUtils;->unpackRangeStartFromLong(J)I -HSPLandroid/text/TextUtils;->writeToParcel(Ljava/lang/CharSequence;Landroid/os/Parcel;I)V -HSPLandroid/text/format/DateFormat;->format(Ljava/lang/CharSequence;J)Ljava/lang/CharSequence; -HSPLandroid/text/format/DateFormat;->format(Ljava/lang/CharSequence;Ljava/util/Calendar;)Ljava/lang/CharSequence; -HSPLandroid/text/format/DateFormat;->format(Ljava/lang/CharSequence;Ljava/util/Date;)Ljava/lang/CharSequence; -HSPLandroid/text/format/DateFormat;->getBestDateTimePattern(Ljava/util/Locale;Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/text/format/DateFormat;->getIcuDateFormatSymbols(Ljava/util/Locale;)Landroid/icu/text/DateFormatSymbols; -HSPLandroid/text/format/DateFormat;->getMonthString(Landroid/icu/text/DateFormatSymbols;III)Ljava/lang/String; -HSPLandroid/text/format/DateFormat;->getTimeFormat(Landroid/content/Context;)Ljava/text/DateFormat; -HSPLandroid/text/format/DateFormat;->getTimeFormatString(Landroid/content/Context;I)Ljava/lang/String; -HSPLandroid/text/format/DateFormat;->getYearString(II)Ljava/lang/String; -HSPLandroid/text/format/DateFormat;->hasDesignator(Ljava/lang/CharSequence;C)Z -HSPLandroid/text/format/DateFormat;->is24HourFormat(Landroid/content/Context;)Z -HSPLandroid/text/format/DateFormat;->is24HourFormat(Landroid/content/Context;I)Z -HSPLandroid/text/format/DateFormat;->is24HourLocale(Ljava/util/Locale;)Z -HSPLandroid/text/format/DateFormat;->zeroPad(II)Ljava/lang/String; -HSPLandroid/text/format/DateIntervalFormat;-><clinit>()V -HSPLandroid/text/format/DateIntervalFormat;->formatDateRange(JJILjava/lang/String;)Ljava/lang/String; -HSPLandroid/text/format/DateIntervalFormat;->formatDateRange(Landroid/icu/util/ULocale;Landroid/icu/util/TimeZone;JJI)Ljava/lang/String; -HSPLandroid/text/format/DateIntervalFormat;->getFormatter(Ljava/lang/String;Landroid/icu/util/ULocale;Landroid/icu/util/TimeZone;)Landroid/icu/text/DateIntervalFormat; -HSPLandroid/text/format/DateIntervalFormat;->isExactlyMidnight(Landroid/icu/util/Calendar;)Z -HSPLandroid/text/format/DateUtils;->formatDateRange(Landroid/content/Context;JJI)Ljava/lang/String; -HSPLandroid/text/format/DateUtils;->formatDateRange(Landroid/content/Context;Ljava/util/Formatter;JJILjava/lang/String;)Ljava/util/Formatter; -HSPLandroid/text/format/DateUtils;->formatDateTime(Landroid/content/Context;JI)Ljava/lang/String; -HSPLandroid/text/format/DateUtils;->formatElapsedTime(J)Ljava/lang/String; -HSPLandroid/text/format/DateUtils;->formatElapsedTime(Ljava/lang/StringBuilder;J)Ljava/lang/String; -HSPLandroid/text/format/DateUtils;->getRelativeTimeSpanString(JJJI)Ljava/lang/CharSequence; -HSPLandroid/text/format/DateUtils;->initFormatStrings()V -HSPLandroid/text/format/DateUtils;->initFormatStringsLocked()V -HSPLandroid/text/format/DateUtils;->isSameDate(JJ)Z -HSPLandroid/text/format/DateUtils;->isToday(J)Z -HSPLandroid/text/format/DateUtilsBridge;->createIcuCalendar(Landroid/icu/util/TimeZone;Landroid/icu/util/ULocale;J)Landroid/icu/util/Calendar; -HSPLandroid/text/format/DateUtilsBridge;->fallInSameMonth(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;)Z -HSPLandroid/text/format/DateUtilsBridge;->fallInSameYear(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;)Z -HSPLandroid/text/format/DateUtilsBridge;->fallOnDifferentDates(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;)Z -HSPLandroid/text/format/DateUtilsBridge;->icuTimeZone(Ljava/util/TimeZone;)Landroid/icu/util/TimeZone; -HSPLandroid/text/format/DateUtilsBridge;->isThisYear(Landroid/icu/util/Calendar;)Z -HSPLandroid/text/format/DateUtilsBridge;->toSkeleton(Landroid/icu/util/Calendar;Landroid/icu/util/Calendar;I)Ljava/lang/String; -HSPLandroid/text/format/Formatter;->formatBytes(Landroid/content/res/Resources;JI)Landroid/text/format/Formatter$BytesResult; -HSPLandroid/text/format/Formatter;->formatFileSize(Landroid/content/Context;J)Ljava/lang/String; -HSPLandroid/text/format/Formatter;->formatFileSize(Landroid/content/Context;JI)Ljava/lang/String; -HSPLandroid/text/format/RelativeDateTimeFormatter;->getFormatter(Landroid/icu/util/ULocale;Landroid/icu/text/RelativeDateTimeFormatter$Style;Landroid/icu/text/DisplayContext;)Landroid/icu/text/RelativeDateTimeFormatter; -HSPLandroid/text/format/RelativeDateTimeFormatter;->getRelativeTimeSpanString(Landroid/icu/util/ULocale;Landroid/icu/util/TimeZone;JJJILandroid/icu/text/DisplayContext;)Ljava/lang/String; -HSPLandroid/text/format/RelativeDateTimeFormatter;->getRelativeTimeSpanString(Ljava/util/Locale;Ljava/util/TimeZone;JJJILandroid/icu/text/DisplayContext;)Ljava/lang/String; -HSPLandroid/text/format/Time$TimeCalculator;->copyFieldsFromTime(Landroid/text/format/Time;)V -HSPLandroid/text/format/Time$TimeCalculator;->copyFieldsToTime(Landroid/text/format/Time;)V -HSPLandroid/text/format/Time$TimeCalculator;->lookupZoneInfoData(Ljava/lang/String;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLandroid/text/format/Time$TimeCalculator;->setTimeInMillis(J)V -HSPLandroid/text/format/Time$TimeCalculator;->updateZoneInfoFromTimeZone()V -HSPLandroid/text/format/Time;-><init>()V -HSPLandroid/text/format/Time;->getJulianDay(JJ)I -HSPLandroid/text/format/Time;->initialize(Ljava/lang/String;)V -HSPLandroid/text/format/Time;->set(J)V -HSPLandroid/text/method/AllCapsTransformationMethod;-><init>(Landroid/content/Context;)V -HSPLandroid/text/method/AllCapsTransformationMethod;->getTransformation(Ljava/lang/CharSequence;Landroid/view/View;)Ljava/lang/CharSequence; -HSPLandroid/text/method/AllCapsTransformationMethod;->setLengthChangesAllowed(Z)V -HSPLandroid/text/method/ArrowKeyMovementMethod;->canSelectArbitrarily()Z -HSPLandroid/text/method/ArrowKeyMovementMethod;->getInstance()Landroid/text/method/MovementMethod; -HSPLandroid/text/method/ArrowKeyMovementMethod;->handleMovementKey(Landroid/widget/TextView;Landroid/text/Spannable;IILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/ArrowKeyMovementMethod;->initialize(Landroid/widget/TextView;Landroid/text/Spannable;)V -HSPLandroid/text/method/ArrowKeyMovementMethod;->onTakeFocus(Landroid/widget/TextView;Landroid/text/Spannable;I)V -HSPLandroid/text/method/ArrowKeyMovementMethod;->onTouchEvent(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Z -HSPLandroid/text/method/BaseKeyListener;-><init>()V -HSPLandroid/text/method/BaseKeyListener;->makeTextContentType(Landroid/text/method/TextKeyListener$Capitalize;Z)I -HSPLandroid/text/method/BaseMovementMethod;-><init>()V -HSPLandroid/text/method/BaseMovementMethod;->getMovementMetaState(Landroid/text/Spannable;Landroid/view/KeyEvent;)I -HSPLandroid/text/method/BaseMovementMethod;->handleMovementKey(Landroid/widget/TextView;Landroid/text/Spannable;IILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/BaseMovementMethod;->onKeyDown(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/BaseMovementMethod;->onKeyUp(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/LinkMovementMethod;-><init>()V -HSPLandroid/text/method/LinkMovementMethod;->getInstance()Landroid/text/method/MovementMethod; -HSPLandroid/text/method/LinkMovementMethod;->initialize(Landroid/widget/TextView;Landroid/text/Spannable;)V -HSPLandroid/text/method/MetaKeyKeyListener;-><init>()V -HSPLandroid/text/method/MetaKeyKeyListener;->getMetaState(Ljava/lang/CharSequence;I)I -HSPLandroid/text/method/MetaKeyKeyListener;->isMetaTracker(Ljava/lang/CharSequence;Ljava/lang/Object;)Z -HSPLandroid/text/method/MetaKeyKeyListener;->onKeyDown(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/MetaKeyKeyListener;->onKeyUp(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/QwertyKeyListener;->onKeyDown(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/ReplacementTransformationMethod$ReplacementCharSequence;->charAt(I)C -HSPLandroid/text/method/ReplacementTransformationMethod$ReplacementCharSequence;->getChars(II[CI)V -HSPLandroid/text/method/ReplacementTransformationMethod$ReplacementCharSequence;->length()I -HSPLandroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;->getSpanEnd(Ljava/lang/Object;)I -HSPLandroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;->getSpanFlags(Ljava/lang/Object;)I -HSPLandroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;->getSpanStart(Ljava/lang/Object;)I -HSPLandroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -HSPLandroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence;->nextSpanTransition(IILjava/lang/Class;)I -HSPLandroid/text/method/ReplacementTransformationMethod;-><init>()V -HSPLandroid/text/method/ReplacementTransformationMethod;->getTransformation(Ljava/lang/CharSequence;Landroid/view/View;)Ljava/lang/CharSequence; -HSPLandroid/text/method/ReplacementTransformationMethod;->onFocusChanged(Landroid/view/View;Ljava/lang/CharSequence;ZILandroid/graphics/Rect;)V -HSPLandroid/text/method/ScrollingMovementMethod;-><init>()V -HSPLandroid/text/method/SingleLineTransformationMethod;-><init>()V -HSPLandroid/text/method/SingleLineTransformationMethod;->getInstance()Landroid/text/method/SingleLineTransformationMethod; -HSPLandroid/text/method/SingleLineTransformationMethod;->getOriginal()[C -HSPLandroid/text/method/SingleLineTransformationMethod;->getReplacement()[C -HSPLandroid/text/method/TextKeyListener$SettingsObserver;->onChange(Z)V -HSPLandroid/text/method/TextKeyListener;-><init>(Landroid/text/method/TextKeyListener$Capitalize;Z)V -HSPLandroid/text/method/TextKeyListener;->getInputType()I -HSPLandroid/text/method/TextKeyListener;->getInstance()Landroid/text/method/TextKeyListener; -HSPLandroid/text/method/TextKeyListener;->getInstance(ZLandroid/text/method/TextKeyListener$Capitalize;)Landroid/text/method/TextKeyListener; -HSPLandroid/text/method/TextKeyListener;->getKeyListener(Landroid/view/KeyEvent;)Landroid/text/method/KeyListener; -HSPLandroid/text/method/TextKeyListener;->getPrefs(Landroid/content/Context;)I -HSPLandroid/text/method/TextKeyListener;->initPrefs(Landroid/content/Context;)V -HSPLandroid/text/method/TextKeyListener;->onKeyDown(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/TextKeyListener;->onKeyUp(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z -HSPLandroid/text/method/TextKeyListener;->onSpanAdded(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/text/method/TextKeyListener;->onSpanChanged(Landroid/text/Spannable;Ljava/lang/Object;IIII)V -HSPLandroid/text/method/TextKeyListener;->onSpanRemoved(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/text/method/TextKeyListener;->updatePrefs(Landroid/content/ContentResolver;)V -HSPLandroid/text/method/Touch;->onTouchEvent(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/MotionEvent;)Z -HSPLandroid/text/method/WordIterator;-><init>(Ljava/util/Locale;)V -HSPLandroid/text/method/WordIterator;->checkOffsetIsValid(I)V -HSPLandroid/text/method/WordIterator;->following(I)I -HSPLandroid/text/method/WordIterator;->getBeginning(I)I -HSPLandroid/text/method/WordIterator;->getBeginning(IZ)I -HSPLandroid/text/method/WordIterator;->getEnd(I)I -HSPLandroid/text/method/WordIterator;->getEnd(IZ)I -HSPLandroid/text/method/WordIterator;->preceding(I)I -HSPLandroid/text/method/WordIterator;->setCharSequence(Ljava/lang/CharSequence;II)V -HSPLandroid/text/style/AbsoluteSizeSpan;-><init>(IZ)V -HSPLandroid/text/style/AbsoluteSizeSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/CharacterStyle;-><init>()V -HSPLandroid/text/style/CharacterStyle;->getUnderlying()Landroid/text/style/CharacterStyle; -HSPLandroid/text/style/ClickableSpan;-><init>()V -HSPLandroid/text/style/ClickableSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/DynamicDrawableSpan;-><init>(I)V -HSPLandroid/text/style/ForegroundColorSpan;-><init>(I)V -HSPLandroid/text/style/ForegroundColorSpan;->getSpanTypeIdInternal()I -HSPLandroid/text/style/ForegroundColorSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/ForegroundColorSpan;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/text/style/ImageSpan;-><init>(Landroid/graphics/drawable/Drawable;I)V -HSPLandroid/text/style/ImageSpan;->getDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/text/style/MetricAffectingSpan;-><init>()V -HSPLandroid/text/style/MetricAffectingSpan;->getUnderlying()Landroid/text/style/CharacterStyle; -HSPLandroid/text/style/MetricAffectingSpan;->getUnderlying()Landroid/text/style/MetricAffectingSpan; -HSPLandroid/text/style/RelativeSizeSpan;-><init>(F)V -HSPLandroid/text/style/ReplacementSpan;-><init>()V -HSPLandroid/text/style/SpellCheckSpan;->getSpanTypeIdInternal()I -HSPLandroid/text/style/SpellCheckSpan;->isSpellCheckInProgress()Z -HSPLandroid/text/style/SpellCheckSpan;->setSpellCheckInProgress(Z)V -HSPLandroid/text/style/SpellCheckSpan;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/text/style/StyleSpan;-><init>(I)V -HSPLandroid/text/style/StyleSpan;-><init>(II)V -HSPLandroid/text/style/StyleSpan;->apply(Landroid/graphics/Paint;II)V -HSPLandroid/text/style/StyleSpan;->getSpanTypeIdInternal()I -HSPLandroid/text/style/StyleSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/StyleSpan;->updateMeasureState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/StyleSpan;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/text/style/TextAppearanceSpan;-><init>(Landroid/content/Context;I)V -HSPLandroid/text/style/TextAppearanceSpan;-><init>(Landroid/content/Context;II)V -HSPLandroid/text/style/TextAppearanceSpan;-><init>(Landroid/os/Parcel;)V -HSPLandroid/text/style/TextAppearanceSpan;-><init>(Ljava/lang/String;IILandroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;)V -HSPLandroid/text/style/TextAppearanceSpan;->getFamily()Ljava/lang/String; -HSPLandroid/text/style/TextAppearanceSpan;->getLinkTextColor()Landroid/content/res/ColorStateList; -HSPLandroid/text/style/TextAppearanceSpan;->getSpanTypeIdInternal()I -HSPLandroid/text/style/TextAppearanceSpan;->getTextColor()Landroid/content/res/ColorStateList; -HSPLandroid/text/style/TextAppearanceSpan;->getTextStyle()I -HSPLandroid/text/style/TextAppearanceSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/TextAppearanceSpan;->updateMeasureState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/TextAppearanceSpan;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/text/style/TtsSpan$Builder;->build()Landroid/text/style/TtsSpan; -HSPLandroid/text/style/TtsSpan$Builder;->setStringArgument(Ljava/lang/String;Ljava/lang/String;)Landroid/text/style/TtsSpan$Builder; -HSPLandroid/text/style/TtsSpan$SemioticClassBuilder;-><init>(Ljava/lang/String;)V -HSPLandroid/text/style/TypefaceSpan;-><init>(Ljava/lang/String;)V -HSPLandroid/text/style/TypefaceSpan;-><init>(Ljava/lang/String;Landroid/graphics/Typeface;)V -HSPLandroid/text/style/URLSpan;-><init>(Ljava/lang/String;)V -HSPLandroid/text/style/URLSpan;->getURL()Ljava/lang/String; -HSPLandroid/text/style/UnderlineSpan;-><init>()V -HSPLandroid/text/style/UnderlineSpan;->getSpanTypeIdInternal()I -HSPLandroid/text/style/UnderlineSpan;->updateDrawState(Landroid/text/TextPaint;)V -HSPLandroid/text/style/UnderlineSpan;->writeToParcelInternal(Landroid/os/Parcel;I)V -HSPLandroid/text/util/Linkify$4;-><init>()V -HSPLandroid/text/util/Linkify;->addLinks(Landroid/text/Spannable;ILandroid/content/Context;Ljava/util/function/Function;)Z -HSPLandroid/text/util/Linkify;->containsUnsupportedCharacters(Ljava/lang/String;)Z -HSPLandroid/text/util/Linkify;->gatherLinks(Ljava/util/ArrayList;Landroid/text/Spannable;Ljava/util/regex/Pattern;[Ljava/lang/String;Landroid/text/util/Linkify$MatchFilter;Landroid/text/util/Linkify$TransformFilter;)V -HSPLandroid/text/util/Linkify;->pruneOverlaps(Ljava/util/ArrayList;)V -HSPLandroid/transition/ChangeBounds;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/ChangeBounds;->setResizeClip(Z)V -HSPLandroid/transition/ChangeClipBounds;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/ChangeImageTransform;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/ChangeTransform;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/Fade$1;->onTransitionEnd(Landroid/transition/Transition;)V -HSPLandroid/transition/Fade$FadeAnimatorListener;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/transition/Fade$FadeAnimatorListener;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/transition/Fade;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/Fade;->captureStartValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/Fade;->createAnimation(Landroid/view/View;FF)Landroid/animation/Animator; -HSPLandroid/transition/Fade;->onAppear(Landroid/view/ViewGroup;Landroid/view/View;Landroid/transition/TransitionValues;Landroid/transition/TransitionValues;)Landroid/animation/Animator; -HSPLandroid/transition/Fade;->onDisappear(Landroid/view/ViewGroup;Landroid/view/View;Landroid/transition/TransitionValues;Landroid/transition/TransitionValues;)Landroid/animation/Animator; -HSPLandroid/transition/Scene;->enter()V -HSPLandroid/transition/Transition$2;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/transition/Transition$2;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/transition/Transition$3;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/transition/Transition;-><init>()V -HSPLandroid/transition/Transition;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;megamorphic_types -HSPLandroid/transition/Transition;->addListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/Transition; -HSPLandroid/transition/Transition;->addTarget(Landroid/view/View;)Landroid/transition/Transition; -HSPLandroid/transition/Transition;->addUnmatched(Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V -HSPLandroid/transition/Transition;->addViewValues(Landroid/transition/TransitionValuesMaps;Landroid/view/View;Landroid/transition/TransitionValues;)V -HSPLandroid/transition/Transition;->animate(Landroid/animation/Animator;)V -HSPLandroid/transition/Transition;->captureHierarchy(Landroid/view/View;Z)V -HSPLandroid/transition/Transition;->capturePropagationValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/Transition;->captureValues(Landroid/view/ViewGroup;Z)V -HSPLandroid/transition/Transition;->clearValues(Z)V -HSPLandroid/transition/Transition;->clone()Landroid/transition/Transition; -HSPLandroid/transition/Transition;->createAnimators(Landroid/view/ViewGroup;Landroid/transition/TransitionValuesMaps;Landroid/transition/TransitionValuesMaps;Ljava/util/ArrayList;Ljava/util/ArrayList;)V -HSPLandroid/transition/Transition;->end()V -HSPLandroid/transition/Transition;->getDuration()J -HSPLandroid/transition/Transition;->getInterpolator()Landroid/animation/TimeInterpolator; -HSPLandroid/transition/Transition;->getName()Ljava/lang/String; -HSPLandroid/transition/Transition;->getStartDelay()J -HSPLandroid/transition/Transition;->isValidTarget(Landroid/view/View;)Z -HSPLandroid/transition/Transition;->matchIds(Landroid/util/ArrayMap;Landroid/util/ArrayMap;Landroid/util/SparseArray;Landroid/util/SparseArray;)V -HSPLandroid/transition/Transition;->matchInstances(Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V -HSPLandroid/transition/Transition;->matchItemIds(Landroid/util/ArrayMap;Landroid/util/ArrayMap;Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;)V -HSPLandroid/transition/Transition;->matchNames(Landroid/util/ArrayMap;Landroid/util/ArrayMap;Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V -HSPLandroid/transition/Transition;->matchStartAndEnd(Landroid/transition/TransitionValuesMaps;Landroid/transition/TransitionValuesMaps;)V -HSPLandroid/transition/Transition;->playTransition(Landroid/view/ViewGroup;)V -HSPLandroid/transition/Transition;->removeListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/Transition; -HSPLandroid/transition/Transition;->runAnimators()V -HSPLandroid/transition/Transition;->setDuration(J)Landroid/transition/Transition; -HSPLandroid/transition/Transition;->setEpicenterCallback(Landroid/transition/Transition$EpicenterCallback;)V -HSPLandroid/transition/Transition;->start()V -HSPLandroid/transition/TransitionInflater;-><init>(Landroid/content/Context;)V -HSPLandroid/transition/TransitionInflater;->createCustom(Landroid/util/AttributeSet;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/transition/TransitionInflater;->createTransitionFromXml(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/transition/Transition;)Landroid/transition/Transition;+]Landroid/transition/TransitionSet;Landroid/transition/TransitionSet;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/transition/TransitionInflater;->from(Landroid/content/Context;)Landroid/transition/TransitionInflater; -HSPLandroid/transition/TransitionInflater;->inflateTransition(I)Landroid/transition/Transition; -HSPLandroid/transition/TransitionListenerAdapter;-><init>()V -HSPLandroid/transition/TransitionListenerAdapter;->onTransitionStart(Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionManager$MultiListener$1;->onTransitionEnd(Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionManager$MultiListener;->onPreDraw()Z -HSPLandroid/transition/TransitionManager;-><init>()V -HSPLandroid/transition/TransitionManager;->beginDelayedTransition(Landroid/view/ViewGroup;Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionManager;->endTransitions(Landroid/view/ViewGroup;)V -HSPLandroid/transition/TransitionManager;->getRunningTransitions()Landroid/util/ArrayMap; -HSPLandroid/transition/TransitionManager;->sceneChangeSetup(Landroid/view/ViewGroup;Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionSet$TransitionSetListener;->onTransitionEnd(Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionSet$TransitionSetListener;->onTransitionStart(Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionSet;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/TransitionSet;->addListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/Transition; -HSPLandroid/transition/TransitionSet;->addListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->addTarget(Landroid/view/View;)Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->addTransition(Landroid/transition/Transition;)Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->addTransitionInternal(Landroid/transition/Transition;)V -HSPLandroid/transition/TransitionSet;->captureEndValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/TransitionSet;->capturePropagationValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/TransitionSet;->captureStartValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/TransitionSet;->clone()Landroid/transition/Transition; -HSPLandroid/transition/TransitionSet;->clone()Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->createAnimators(Landroid/view/ViewGroup;Landroid/transition/TransitionValuesMaps;Landroid/transition/TransitionValuesMaps;Ljava/util/ArrayList;Ljava/util/ArrayList;)V -HSPLandroid/transition/TransitionSet;->getTransitionCount()I -HSPLandroid/transition/TransitionSet;->removeListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/Transition; -HSPLandroid/transition/TransitionSet;->removeListener(Landroid/transition/Transition$TransitionListener;)Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->runAnimators()V -HSPLandroid/transition/TransitionSet;->setEpicenterCallback(Landroid/transition/Transition$EpicenterCallback;)V -HSPLandroid/transition/TransitionSet;->setOrdering(I)Landroid/transition/TransitionSet; -HSPLandroid/transition/TransitionSet;->setupStartEndListeners()V -HSPLandroid/transition/TransitionValuesMaps;-><init>()V -HSPLandroid/transition/Visibility$DisappearListener;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/transition/Visibility$DisappearListener;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/transition/Visibility$DisappearListener;->onTransitionEnd(Landroid/transition/Transition;)V -HSPLandroid/transition/Visibility;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/transition/Visibility;->captureEndValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/Visibility;->captureValues(Landroid/transition/TransitionValues;)V -HSPLandroid/transition/Visibility;->createAnimator(Landroid/view/ViewGroup;Landroid/transition/TransitionValues;Landroid/transition/TransitionValues;)Landroid/animation/Animator; -HSPLandroid/transition/Visibility;->getMode()I -HSPLandroid/transition/Visibility;->getTransitionProperties()[Ljava/lang/String; -HSPLandroid/transition/Visibility;->getVisibilityChangeInfo(Landroid/transition/TransitionValues;Landroid/transition/TransitionValues;)Landroid/transition/Visibility$VisibilityInfo; -HSPLandroid/transition/Visibility;->isTransitionRequired(Landroid/transition/TransitionValues;Landroid/transition/TransitionValues;)Z -HSPLandroid/transition/Visibility;->onAppear(Landroid/view/ViewGroup;Landroid/transition/TransitionValues;ILandroid/transition/TransitionValues;I)Landroid/animation/Animator; -HSPLandroid/transition/Visibility;->onDisappear(Landroid/view/ViewGroup;Landroid/transition/TransitionValues;ILandroid/transition/TransitionValues;I)Landroid/animation/Animator; -HSPLandroid/transition/Visibility;->setMode(I)V -HSPLandroid/util/AndroidException;-><init>()V -HSPLandroid/util/AndroidException;-><init>(Ljava/lang/String;)V -HSPLandroid/util/AndroidException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;ZZ)V -HSPLandroid/util/AndroidRuntimeException;-><init>(Ljava/lang/String;)V -HSPLandroid/util/ArrayMap$1;-><init>(Landroid/util/ArrayMap;)V -HSPLandroid/util/ArrayMap$1;->colGetEntry(II)Ljava/lang/Object; -HSPLandroid/util/ArrayMap$1;->colGetMap()Ljava/util/Map; -HSPLandroid/util/ArrayMap$1;->colGetSize()I -HSPLandroid/util/ArrayMap$1;->colIndexOfKey(Ljava/lang/Object;)I -HSPLandroid/util/ArrayMap$1;->colRemoveAt(I)V -HSPLandroid/util/ArrayMap;-><init>()V -HSPLandroid/util/ArrayMap;-><init>(I)V -HSPLandroid/util/ArrayMap;-><init>(IZ)V -HSPLandroid/util/ArrayMap;-><init>(Landroid/util/ArrayMap;)V -HSPLandroid/util/ArrayMap;->allocArrays(I)V -HSPLandroid/util/ArrayMap;->append(Ljava/lang/Object;Ljava/lang/Object;)V+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/util/ArrayMap;->binarySearchHashes([III)I -HSPLandroid/util/ArrayMap;->clear()V -HSPLandroid/util/ArrayMap;->containsKey(Ljava/lang/Object;)Z -HSPLandroid/util/ArrayMap;->containsValue(Ljava/lang/Object;)Z -HSPLandroid/util/ArrayMap;->ensureCapacity(I)V -HSPLandroid/util/ArrayMap;->entrySet()Ljava/util/Set; -HSPLandroid/util/ArrayMap;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/ArrayMap;->freeArrays([I[Ljava/lang/Object;I)V -HSPLandroid/util/ArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/util/ArrayMap;->getCollection()Landroid/util/MapCollections; -HSPLandroid/util/ArrayMap;->hashCode()I -HSPLandroid/util/ArrayMap;->indexOf(Ljava/lang/Object;I)I+]Ljava/lang/Object;megamorphic_types -HSPLandroid/util/ArrayMap;->indexOfKey(Ljava/lang/Object;)I+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Object;megamorphic_types -HSPLandroid/util/ArrayMap;->indexOfNull()I -HSPLandroid/util/ArrayMap;->indexOfValue(Ljava/lang/Object;)I -HSPLandroid/util/ArrayMap;->isEmpty()Z -HSPLandroid/util/ArrayMap;->keyAt(I)Ljava/lang/Object; -HSPLandroid/util/ArrayMap;->keySet()Ljava/util/Set; -HSPLandroid/util/ArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Object;megamorphic_types -HSPLandroid/util/ArrayMap;->putAll(Landroid/util/ArrayMap;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLandroid/util/ArrayMap;->putAll(Ljava/util/Map;)V -HSPLandroid/util/ArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/ArrayMap;->removeAt(I)Ljava/lang/Object; -HSPLandroid/util/ArrayMap;->retainAll(Ljava/util/Collection;)Z -HSPLandroid/util/ArrayMap;->setValueAt(ILjava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/ArrayMap;->size()I -HSPLandroid/util/ArrayMap;->toString()Ljava/lang/String; -HSPLandroid/util/ArrayMap;->validate()V -HSPLandroid/util/ArrayMap;->valueAt(I)Ljava/lang/Object; -HSPLandroid/util/ArrayMap;->values()Ljava/util/Collection; -HSPLandroid/util/ArraySet$1;-><init>(Landroid/util/ArraySet;)V -HSPLandroid/util/ArraySet$1;->colGetEntry(II)Ljava/lang/Object; -HSPLandroid/util/ArraySet$1;->colGetSize()I -HSPLandroid/util/ArraySet$1;->colRemoveAt(I)V -HSPLandroid/util/ArraySet;-><init>()V -HSPLandroid/util/ArraySet;-><init>(I)V -HSPLandroid/util/ArraySet;-><init>(IZ)V -HSPLandroid/util/ArraySet;-><init>(Landroid/util/ArraySet;)V -HSPLandroid/util/ArraySet;-><init>(Ljava/util/Collection;)V -HSPLandroid/util/ArraySet;-><init>([Ljava/lang/Object;)V -HSPLandroid/util/ArraySet;->add(Ljava/lang/Object;)Z -HSPLandroid/util/ArraySet;->addAll(Landroid/util/ArraySet;)V -HSPLandroid/util/ArraySet;->addAll(Ljava/util/Collection;)Z -HSPLandroid/util/ArraySet;->allocArrays(I)V -HSPLandroid/util/ArraySet;->append(Ljava/lang/Object;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/Object;Landroid/app/PendingIntent;,Lcom/android/org/conscrypt/OpenSSLRSAPublicKey; -HSPLandroid/util/ArraySet;->binarySearch([II)I -HSPLandroid/util/ArraySet;->clear()V -HSPLandroid/util/ArraySet;->contains(Ljava/lang/Object;)Z -HSPLandroid/util/ArraySet;->ensureCapacity(I)V -HSPLandroid/util/ArraySet;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/ArraySet;->forEach(Ljava/util/function/Consumer;)V -HSPLandroid/util/ArraySet;->freeArrays([I[Ljava/lang/Object;I)V -HSPLandroid/util/ArraySet;->getCollection()Landroid/util/MapCollections; -HSPLandroid/util/ArraySet;->hashCode()I -HSPLandroid/util/ArraySet;->indexOf(Ljava/lang/Object;)I -HSPLandroid/util/ArraySet;->indexOf(Ljava/lang/Object;I)I -HSPLandroid/util/ArraySet;->indexOfNull()I -HSPLandroid/util/ArraySet;->isEmpty()Z -HSPLandroid/util/ArraySet;->iterator()Ljava/util/Iterator; -HSPLandroid/util/ArraySet;->remove(Ljava/lang/Object;)Z -HSPLandroid/util/ArraySet;->removeAll(Ljava/util/Collection;)Z -HSPLandroid/util/ArraySet;->removeAt(I)Ljava/lang/Object; -HSPLandroid/util/ArraySet;->shouldShrink()Z -HSPLandroid/util/ArraySet;->size()I -HSPLandroid/util/ArraySet;->toArray()[Ljava/lang/Object; -HSPLandroid/util/ArraySet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLandroid/util/ArraySet;->toString()Ljava/lang/String; -HSPLandroid/util/ArraySet;->valueAt(I)Ljava/lang/Object; -HSPLandroid/util/ArraySet;->valueAtUnchecked(I)Ljava/lang/Object; -HSPLandroid/util/AtomicFile;-><init>(Ljava/io/File;)V -HSPLandroid/util/AtomicFile;-><init>(Ljava/io/File;Landroid/util/SystemConfigFileCommitEventLogger;)V -HSPLandroid/util/AtomicFile;-><init>(Ljava/io/File;Ljava/lang/String;)V -HSPLandroid/util/AtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V -HSPLandroid/util/AtomicFile;->openRead()Ljava/io/FileInputStream; -HSPLandroid/util/AtomicFile;->rename(Ljava/io/File;Ljava/io/File;)V -HSPLandroid/util/AtomicFile;->startWrite()Ljava/io/FileOutputStream; -HSPLandroid/util/AtomicFile;->startWrite(J)Ljava/io/FileOutputStream; -HSPLandroid/util/Base64$Coder;-><init>()V -HSPLandroid/util/Base64$Decoder;-><init>(I[B)V -HSPLandroid/util/Base64$Decoder;->process([BIIZ)Z -HSPLandroid/util/Base64$Encoder;-><init>(I[B)V -HSPLandroid/util/Base64$Encoder;->process([BIIZ)Z -HSPLandroid/util/Base64;->decode(Ljava/lang/String;I)[B+]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/util/Base64;->decode([BI)[B -HSPLandroid/util/Base64;->decode([BIII)[B+]Landroid/util/Base64$Decoder;Landroid/util/Base64$Decoder; -HSPLandroid/util/Base64;->encode([BI)[B -HSPLandroid/util/Base64;->encode([BIII)[B+]Landroid/util/Base64$Encoder;Landroid/util/Base64$Encoder; -HSPLandroid/util/Base64;->encodeToString([BI)Ljava/lang/String; -HSPLandroid/util/Base64;->encodeToString([BIII)Ljava/lang/String; -HSPLandroid/util/CloseGuard;-><init>()V -HSPLandroid/util/CloseGuard;->close()V -HSPLandroid/util/CloseGuard;->open(Ljava/lang/String;)V -HSPLandroid/util/ContainerHelpers;->binarySearch([III)I -HSPLandroid/util/ContainerHelpers;->binarySearch([JIJ)I -HSPLandroid/util/DebugUtils;->constNameWithoutPrefix(Ljava/lang/String;Ljava/lang/reflect/Field;)Ljava/lang/String; -HSPLandroid/util/DebugUtils;->flagsToString(Ljava/lang/Class;Ljava/lang/String;J)Ljava/lang/String; -HSPLandroid/util/DebugUtils;->getFieldValue(Ljava/lang/reflect/Field;)J -HSPLandroid/util/DisplayMetrics;-><init>()V -HSPLandroid/util/DisplayMetrics;->setTo(Landroid/util/DisplayMetrics;)V -HSPLandroid/util/DisplayMetrics;->setToDefaults()V -HSPLandroid/util/DisplayUtils;->getDisplayUniqueIdConfigIndex(Landroid/content/res/Resources;Ljava/lang/String;)I -HSPLandroid/util/EventLog$Event;-><init>([B)V -HSPLandroid/util/EventLog$Event;->decodeObject()Ljava/lang/Object; -HSPLandroid/util/EventLog$Event;->getData()Ljava/lang/Object; -HSPLandroid/util/EventLog$Event;->getHeaderSize()I -HSPLandroid/util/EventLog$Event;->getUid()I -HSPLandroid/util/EventLog;->getTagCode(Ljava/lang/String;)I -HSPLandroid/util/EventLog;->readTagsFile()V -HSPLandroid/util/ExceptionUtils;->appendCause(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable; -HSPLandroid/util/ExceptionUtils;->getRootCause(Ljava/lang/Throwable;)Ljava/lang/Throwable; -HSPLandroid/util/FastImmutableArraySet$FastIterator;->hasNext()Z -HSPLandroid/util/FastImmutableArraySet$FastIterator;->next()Ljava/lang/Object; -HSPLandroid/util/FastImmutableArraySet;->iterator()Ljava/util/Iterator; -HSPLandroid/util/FeatureFlagUtils;->getAllFeatureFlags()Ljava/util/Map; -HSPLandroid/util/FeatureFlagUtils;->getSystemPropertyPrefix(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/util/FeatureFlagUtils;->isEnabled(Landroid/content/Context;Ljava/lang/String;)Z -HSPLandroid/util/FloatProperty;-><init>(Ljava/lang/String;)V -HSPLandroid/util/FloatProperty;->set(Ljava/lang/Object;Ljava/lang/Float;)V -HSPLandroid/util/IndentingPrintWriter;-><init>(Ljava/io/Writer;Ljava/lang/String;I)V -HSPLandroid/util/IndentingPrintWriter;-><init>(Ljava/io/Writer;Ljava/lang/String;Ljava/lang/String;I)V -HSPLandroid/util/IndentingPrintWriter;->decreaseIndent()Landroid/util/IndentingPrintWriter; -HSPLandroid/util/IndentingPrintWriter;->increaseIndent()Landroid/util/IndentingPrintWriter; -HSPLandroid/util/IndentingPrintWriter;->maybeWriteIndent()V -HSPLandroid/util/IndentingPrintWriter;->print(Ljava/lang/String;Ljava/lang/Object;)Landroid/util/IndentingPrintWriter; -HSPLandroid/util/IndentingPrintWriter;->println()V -HSPLandroid/util/IndentingPrintWriter;->write(I)V -HSPLandroid/util/IndentingPrintWriter;->write(Ljava/lang/String;II)V -HSPLandroid/util/IndentingPrintWriter;->write([CII)V -HSPLandroid/util/IntArray;-><init>()V -HSPLandroid/util/IntArray;-><init>(I)V -HSPLandroid/util/IntArray;->add(I)V+]Landroid/util/IntArray;Landroid/util/IntArray; -HSPLandroid/util/IntArray;->add(II)V -HSPLandroid/util/IntArray;->addAll(Landroid/util/IntArray;)V -HSPLandroid/util/IntArray;->binarySearch(I)I -HSPLandroid/util/IntArray;->clear()V -HSPLandroid/util/IntArray;->ensureCapacity(I)V -HSPLandroid/util/IntArray;->get(I)I -HSPLandroid/util/IntArray;->indexOf(I)I -HSPLandroid/util/IntArray;->remove(I)V -HSPLandroid/util/IntArray;->size()I -HSPLandroid/util/IntArray;->toArray()[I -HSPLandroid/util/IntProperty;-><init>(Ljava/lang/String;)V -HSPLandroid/util/JsonReader;-><init>(Ljava/io/Reader;)V -HSPLandroid/util/JsonReader;->advance()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->beginArray()V -HSPLandroid/util/JsonReader;->beginObject()V -HSPLandroid/util/JsonReader;->close()V -HSPLandroid/util/JsonReader;->decodeLiteral()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->decodeNumber([CII)Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->endArray()V -HSPLandroid/util/JsonReader;->endObject()V -HSPLandroid/util/JsonReader;->expect(Landroid/util/JsonToken;)V -HSPLandroid/util/JsonReader;->fillBuffer(I)Z -HSPLandroid/util/JsonReader;->hasNext()Z -HSPLandroid/util/JsonReader;->nextBoolean()Z -HSPLandroid/util/JsonReader;->nextDouble()D -HSPLandroid/util/JsonReader;->nextInArray(Z)Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->nextInObject(Z)Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->nextLiteral(Z)Ljava/lang/String; -HSPLandroid/util/JsonReader;->nextName()Ljava/lang/String; -HSPLandroid/util/JsonReader;->nextNonWhitespace()I -HSPLandroid/util/JsonReader;->nextString()Ljava/lang/String; -HSPLandroid/util/JsonReader;->nextString(C)Ljava/lang/String; -HSPLandroid/util/JsonReader;->nextValue()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->objectValue()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->peek()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->peekStack()Landroid/util/JsonScope; -HSPLandroid/util/JsonReader;->pop()Landroid/util/JsonScope; -HSPLandroid/util/JsonReader;->push(Landroid/util/JsonScope;)V -HSPLandroid/util/JsonReader;->readEscapeCharacter()C -HSPLandroid/util/JsonReader;->readLiteral()Landroid/util/JsonToken; -HSPLandroid/util/JsonReader;->replaceTop(Landroid/util/JsonScope;)V -HSPLandroid/util/JsonReader;->skipValue()V -HSPLandroid/util/JsonToken;->values()[Landroid/util/JsonToken; -HSPLandroid/util/JsonWriter;-><init>(Ljava/io/Writer;)V -HSPLandroid/util/JsonWriter;->beforeName()V -HSPLandroid/util/JsonWriter;->beforeValue(Z)V -HSPLandroid/util/JsonWriter;->beginArray()Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->beginObject()Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->close()V -HSPLandroid/util/JsonWriter;->close(Landroid/util/JsonScope;Landroid/util/JsonScope;Ljava/lang/String;)Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->endArray()Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->endObject()Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->flush()V -HSPLandroid/util/JsonWriter;->name(Ljava/lang/String;)Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->newline()V -HSPLandroid/util/JsonWriter;->open(Landroid/util/JsonScope;Ljava/lang/String;)Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->peek()Landroid/util/JsonScope; -HSPLandroid/util/JsonWriter;->replaceTop(Landroid/util/JsonScope;)V -HSPLandroid/util/JsonWriter;->string(Ljava/lang/String;)V -HSPLandroid/util/JsonWriter;->value(J)Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->value(Ljava/lang/String;)Landroid/util/JsonWriter; -HSPLandroid/util/JsonWriter;->value(Z)Landroid/util/JsonWriter; -HSPLandroid/util/KeyValueListParser$IntValue;->getValue()I -HSPLandroid/util/KeyValueListParser;-><init>(C)V -HSPLandroid/util/KeyValueListParser;->getBoolean(Ljava/lang/String;Z)Z -HSPLandroid/util/KeyValueListParser;->getInt(Ljava/lang/String;I)I -HSPLandroid/util/KeyValueListParser;->getLong(Ljava/lang/String;J)J -HSPLandroid/util/KeyValueListParser;->setString(Ljava/lang/String;)V -HSPLandroid/util/LocalLog;-><init>(I)V -HSPLandroid/util/LocalLog;-><init>(IZ)V -HSPLandroid/util/LocalLog;->append(Ljava/lang/String;)V -HSPLandroid/util/LocalLog;->log(Ljava/lang/String;)V -HSPLandroid/util/Log$1;->onTerribleFailure(Ljava/lang/String;Landroid/util/Log$TerribleFailure;Z)V -HSPLandroid/util/Log$ImmediateLogWriter;-><init>(IILjava/lang/String;)V -HSPLandroid/util/Log$ImmediateLogWriter;->flush()V -HSPLandroid/util/Log$ImmediateLogWriter;->getWritten()I -HSPLandroid/util/Log$ImmediateLogWriter;->write([CII)V -HSPLandroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->getStackTraceString(Ljava/lang/Throwable;)Ljava/lang/String; -HSPLandroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->logToRadioBuffer(ILjava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->println(ILjava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->printlns(IILjava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I -HSPLandroid/util/Log;->wtf(ILjava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;ZZ)I -HSPLandroid/util/LogPrinter;-><init>(ILjava/lang/String;)V -HSPLandroid/util/LongArray;-><init>()V -HSPLandroid/util/LongArray;-><init>(I)V -HSPLandroid/util/LongArray;->add(IJ)V -HSPLandroid/util/LongArray;->add(J)V -HSPLandroid/util/LongArray;->ensureCapacity(I)V -HSPLandroid/util/LongArray;->get(I)J -HSPLandroid/util/LongArray;->indexOf(J)I -HSPLandroid/util/LongArray;->size()I -HSPLandroid/util/LongArray;->toArray()[J -HSPLandroid/util/LongSparseArray;-><init>()V -HSPLandroid/util/LongSparseArray;-><init>(I)V -HSPLandroid/util/LongSparseArray;->append(JLjava/lang/Object;)V -HSPLandroid/util/LongSparseArray;->clear()V -HSPLandroid/util/LongSparseArray;->delete(J)V -HSPLandroid/util/LongSparseArray;->gc()V -HSPLandroid/util/LongSparseArray;->get(J)Ljava/lang/Object;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLandroid/util/LongSparseArray;->get(JLjava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/LongSparseArray;->indexOfKey(J)I -HSPLandroid/util/LongSparseArray;->keyAt(I)J -HSPLandroid/util/LongSparseArray;->put(JLjava/lang/Object;)V -HSPLandroid/util/LongSparseArray;->remove(J)V -HSPLandroid/util/LongSparseArray;->removeAt(I)V -HSPLandroid/util/LongSparseArray;->size()I -HSPLandroid/util/LongSparseArray;->valueAt(I)Ljava/lang/Object; -HSPLandroid/util/LongSparseLongArray;-><init>()V -HSPLandroid/util/LongSparseLongArray;-><init>(I)V -HSPLandroid/util/LongSparseLongArray;->append(JJ)V -HSPLandroid/util/LongSparseLongArray;->clear()V -HSPLandroid/util/LongSparseLongArray;->clone()Landroid/util/LongSparseLongArray; -HSPLandroid/util/LongSparseLongArray;->get(JJ)J -HSPLandroid/util/LongSparseLongArray;->indexOfKey(J)I -HSPLandroid/util/LongSparseLongArray;->put(JJ)V -HSPLandroid/util/LongSparseLongArray;->size()I -HSPLandroid/util/LongSparseLongArray;->valueAt(I)J -HSPLandroid/util/LruCache;-><init>(I)V -HSPLandroid/util/LruCache;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/LruCache;->entryRemoved(ZLjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/util/LruCache;->evictAll()V -HSPLandroid/util/LruCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/LruCache;->hitCount()I -HSPLandroid/util/LruCache;->maxSize()I -HSPLandroid/util/LruCache;->missCount()I -HSPLandroid/util/LruCache;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/LruCache;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/LruCache;->resize(I)V -HSPLandroid/util/LruCache;->safeSizeOf(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/util/LruCache;->size()I -HSPLandroid/util/LruCache;->sizeOf(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/util/LruCache;->snapshot()Ljava/util/Map; -HSPLandroid/util/LruCache;->trimToSize(I)V -HSPLandroid/util/MapCollections$ArrayIterator;-><init>(Landroid/util/MapCollections;I)V -HSPLandroid/util/MapCollections$ArrayIterator;->hasNext()Z -HSPLandroid/util/MapCollections$ArrayIterator;->next()Ljava/lang/Object; -HSPLandroid/util/MapCollections$ArrayIterator;->remove()V -HSPLandroid/util/MapCollections$EntrySet;-><init>(Landroid/util/MapCollections;)V -HSPLandroid/util/MapCollections$EntrySet;->iterator()Ljava/util/Iterator; -HSPLandroid/util/MapCollections$EntrySet;->size()I -HSPLandroid/util/MapCollections$KeySet;-><init>(Landroid/util/MapCollections;)V -HSPLandroid/util/MapCollections$KeySet;->contains(Ljava/lang/Object;)Z -HSPLandroid/util/MapCollections$KeySet;->containsAll(Ljava/util/Collection;)Z -HSPLandroid/util/MapCollections$KeySet;->iterator()Ljava/util/Iterator; -HSPLandroid/util/MapCollections$KeySet;->size()I -HSPLandroid/util/MapCollections$KeySet;->toArray()[Ljava/lang/Object; -HSPLandroid/util/MapCollections$KeySet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLandroid/util/MapCollections$MapIterator;-><init>(Landroid/util/MapCollections;)V -HSPLandroid/util/MapCollections$MapIterator;->getKey()Ljava/lang/Object; -HSPLandroid/util/MapCollections$MapIterator;->getValue()Ljava/lang/Object; -HSPLandroid/util/MapCollections$MapIterator;->hasNext()Z -HSPLandroid/util/MapCollections$MapIterator;->next()Ljava/lang/Object; -HSPLandroid/util/MapCollections$MapIterator;->next()Ljava/util/Map$Entry; -HSPLandroid/util/MapCollections$ValuesCollection;->iterator()Ljava/util/Iterator; -HSPLandroid/util/MapCollections$ValuesCollection;->size()I -HSPLandroid/util/MapCollections$ValuesCollection;->toArray()[Ljava/lang/Object; -HSPLandroid/util/MapCollections;-><init>()V -HSPLandroid/util/MapCollections;->getEntrySet()Ljava/util/Set; -HSPLandroid/util/MapCollections;->getKeySet()Ljava/util/Set; -HSPLandroid/util/MapCollections;->getValues()Ljava/util/Collection; -HSPLandroid/util/MapCollections;->retainAllHelper(Ljava/util/Map;Ljava/util/Collection;)Z -HSPLandroid/util/MapCollections;->toArrayHelper(I)[Ljava/lang/Object; -HSPLandroid/util/MapCollections;->toArrayHelper([Ljava/lang/Object;I)[Ljava/lang/Object; -HSPLandroid/util/MathUtils;->addOrThrow(II)I -HSPLandroid/util/MathUtils;->constrain(FFF)F -HSPLandroid/util/MathUtils;->constrain(III)I -HSPLandroid/util/MathUtils;->constrainedMap(FFFFF)F -HSPLandroid/util/MathUtils;->lerp(FFF)F -HSPLandroid/util/MathUtils;->lerpInv(FFF)F -HSPLandroid/util/MathUtils;->lerpInvSat(FFF)F -HSPLandroid/util/MathUtils;->saturate(F)F -HSPLandroid/util/MemoryIntArray$1;->createFromParcel(Landroid/os/Parcel;)Landroid/util/MemoryIntArray; -HSPLandroid/util/MemoryIntArray$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/util/MemoryIntArray;-><init>(Landroid/os/Parcel;)V -HSPLandroid/util/MemoryIntArray;-><init>(Landroid/os/Parcel;Landroid/util/MemoryIntArray-IA;)V -HSPLandroid/util/MemoryIntArray;->close()V -HSPLandroid/util/MemoryIntArray;->enforceNotClosed()V -HSPLandroid/util/MemoryIntArray;->enforceValidIndex(I)V -HSPLandroid/util/MemoryIntArray;->finalize()V -HSPLandroid/util/MemoryIntArray;->get(I)I -HSPLandroid/util/MemoryIntArray;->isClosed()Z -HSPLandroid/util/MemoryIntArray;->size()I -HSPLandroid/util/MergedConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Landroid/util/MergedConfiguration; -HSPLandroid/util/MergedConfiguration$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/util/MergedConfiguration;-><init>()V -HSPLandroid/util/MergedConfiguration;-><init>(Landroid/os/Parcel;)V -HSPLandroid/util/MergedConfiguration;-><init>(Landroid/util/MergedConfiguration;)V -HSPLandroid/util/MergedConfiguration;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/MergedConfiguration;->getGlobalConfiguration()Landroid/content/res/Configuration; -HSPLandroid/util/MergedConfiguration;->getMergedConfiguration()Landroid/content/res/Configuration; -HSPLandroid/util/MergedConfiguration;->getOverrideConfiguration()Landroid/content/res/Configuration; -HSPLandroid/util/MergedConfiguration;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/util/MergedConfiguration;->setConfiguration(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)V -HSPLandroid/util/MergedConfiguration;->updateMergedConfig()V -HSPLandroid/util/MutableBoolean;-><init>(Z)V -HSPLandroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/util/Pair;->create(Ljava/lang/Object;Ljava/lang/Object;)Landroid/util/Pair; -HSPLandroid/util/Pair;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/Pair;->hashCode()I -HSPLandroid/util/Pair;->toString()Ljava/lang/String; -HSPLandroid/util/PathParser$PathData;-><init>(Landroid/util/PathParser$PathData;)V -HSPLandroid/util/PathParser$PathData;-><init>(Ljava/lang/String;)V -HSPLandroid/util/PathParser$PathData;->finalize()V -HSPLandroid/util/PathParser$PathData;->getNativePtr()J -HSPLandroid/util/PathParser;->-$$Nest$smnCreateEmptyPathData()J -HSPLandroid/util/PathParser;->-$$Nest$smnCreatePathData(J)J -HSPLandroid/util/PathParser;->-$$Nest$smnCreatePathDataFromString(Ljava/lang/String;I)J -HSPLandroid/util/PathParser;->-$$Nest$smnFinalize(J)V -HSPLandroid/util/PathParser;->createPathFromPathData(Ljava/lang/String;)Landroid/graphics/Path; -HSPLandroid/util/Pools$SimplePool;-><init>(I)V -HSPLandroid/util/Pools$SimplePool;->acquire()Ljava/lang/Object; -HSPLandroid/util/Pools$SimplePool;->isInPool(Ljava/lang/Object;)Z -HSPLandroid/util/Pools$SimplePool;->release(Ljava/lang/Object;)Z -HSPLandroid/util/Pools$SynchronizedPool;-><init>(I)V -HSPLandroid/util/Pools$SynchronizedPool;-><init>(ILjava/lang/Object;)V -HSPLandroid/util/Pools$SynchronizedPool;->acquire()Ljava/lang/Object; -HSPLandroid/util/Pools$SynchronizedPool;->release(Ljava/lang/Object;)Z -HSPLandroid/util/PrefixPrinter;->println(Ljava/lang/String;)V -HSPLandroid/util/PrintWriterPrinter;->println(Ljava/lang/String;)V -HSPLandroid/util/Property;-><init>(Ljava/lang/Class;Ljava/lang/String;)V -HSPLandroid/util/Property;->getName()Ljava/lang/String; -HSPLandroid/util/Property;->getType()Ljava/lang/Class; -HSPLandroid/util/Range;-><init>(Ljava/lang/Comparable;Ljava/lang/Comparable;)V -HSPLandroid/util/Range;->clamp(Ljava/lang/Comparable;)Ljava/lang/Comparable; -HSPLandroid/util/Range;->contains(Landroid/util/Range;)Z -HSPLandroid/util/Range;->contains(Ljava/lang/Comparable;)Z -HSPLandroid/util/Range;->create(Ljava/lang/Comparable;Ljava/lang/Comparable;)Landroid/util/Range; -HSPLandroid/util/Range;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/Range;->extend(Landroid/util/Range;)Landroid/util/Range; -HSPLandroid/util/Range;->getLower()Ljava/lang/Comparable; -HSPLandroid/util/Range;->getUpper()Ljava/lang/Comparable; -HSPLandroid/util/Range;->hashCode()I -HSPLandroid/util/Range;->intersect(Landroid/util/Range;)Landroid/util/Range; -HSPLandroid/util/Range;->intersect(Ljava/lang/Comparable;Ljava/lang/Comparable;)Landroid/util/Range; -HSPLandroid/util/Rational;-><init>(II)V -HSPLandroid/util/Rational;->compareTo(Landroid/util/Rational;)I -HSPLandroid/util/Rational;->compareTo(Ljava/lang/Object;)I -HSPLandroid/util/Singleton;-><init>()V -HSPLandroid/util/Singleton;->get()Ljava/lang/Object; -HSPLandroid/util/Size;-><init>(II)V -HSPLandroid/util/Size;->equals(Ljava/lang/Object;)Z -HSPLandroid/util/Size;->getHeight()I -HSPLandroid/util/Size;->getWidth()I -HSPLandroid/util/Size;->hashCode()I -HSPLandroid/util/Size;->parseSize(Ljava/lang/String;)Landroid/util/Size; -HSPLandroid/util/Size;->toString()Ljava/lang/String; -HSPLandroid/util/Slog;->d(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Slog;->v(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I -HSPLandroid/util/SparseArray;-><init>()V -HSPLandroid/util/SparseArray;-><init>(I)V -HSPLandroid/util/SparseArray;->append(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/util/SparseArray;->clear()V -HSPLandroid/util/SparseArray;->clone()Landroid/util/SparseArray; -HSPLandroid/util/SparseArray;->contains(I)Z -HSPLandroid/util/SparseArray;->contentEquals(Landroid/util/SparseArray;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/util/SparseArray;->delete(I)V -HSPLandroid/util/SparseArray;->gc()V -HSPLandroid/util/SparseArray;->get(I)Ljava/lang/Object;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/util/SparseArray;->get(ILjava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/SparseArray;->indexOfKey(I)I -HSPLandroid/util/SparseArray;->indexOfValue(Ljava/lang/Object;)I -HSPLandroid/util/SparseArray;->keyAt(I)I -HSPLandroid/util/SparseArray;->put(ILjava/lang/Object;)V -HSPLandroid/util/SparseArray;->remove(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/util/SparseArray;->removeAt(I)V -HSPLandroid/util/SparseArray;->removeReturnOld(I)Ljava/lang/Object; -HSPLandroid/util/SparseArray;->setValueAt(ILjava/lang/Object;)V -HSPLandroid/util/SparseArray;->size()I -HSPLandroid/util/SparseArray;->toString()Ljava/lang/String; -HSPLandroid/util/SparseArray;->valueAt(I)Ljava/lang/Object; -HSPLandroid/util/SparseArrayMap;-><init>()V -HSPLandroid/util/SparseArrayMap;->add(ILjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/SparseArrayMap;->get(ILjava/lang/Object;)Ljava/lang/Object; -HSPLandroid/util/SparseBooleanArray;-><init>()V -HSPLandroid/util/SparseBooleanArray;-><init>(I)V -HSPLandroid/util/SparseBooleanArray;->append(IZ)V -HSPLandroid/util/SparseBooleanArray;->clear()V -HSPLandroid/util/SparseBooleanArray;->clone()Landroid/util/SparseBooleanArray; -HSPLandroid/util/SparseBooleanArray;->delete(I)V -HSPLandroid/util/SparseBooleanArray;->get(I)Z -HSPLandroid/util/SparseBooleanArray;->get(IZ)Z -HSPLandroid/util/SparseBooleanArray;->indexOfKey(I)I -HSPLandroid/util/SparseBooleanArray;->indexOfValue(Z)I -HSPLandroid/util/SparseBooleanArray;->keyAt(I)I -HSPLandroid/util/SparseBooleanArray;->put(IZ)V -HSPLandroid/util/SparseBooleanArray;->size()I -HSPLandroid/util/SparseBooleanArray;->valueAt(I)Z -HSPLandroid/util/SparseIntArray;-><init>()V -HSPLandroid/util/SparseIntArray;-><init>(I)V -HSPLandroid/util/SparseIntArray;->append(II)V -HSPLandroid/util/SparseIntArray;->clear()V -HSPLandroid/util/SparseIntArray;->clone()Landroid/util/SparseIntArray; -HSPLandroid/util/SparseIntArray;->copyKeys()[I -HSPLandroid/util/SparseIntArray;->delete(I)V -HSPLandroid/util/SparseIntArray;->get(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLandroid/util/SparseIntArray;->get(II)I -HSPLandroid/util/SparseIntArray;->indexOfKey(I)I -HSPLandroid/util/SparseIntArray;->indexOfValue(I)I -HSPLandroid/util/SparseIntArray;->keyAt(I)I -HSPLandroid/util/SparseIntArray;->put(II)V -HSPLandroid/util/SparseIntArray;->removeAt(I)V -HSPLandroid/util/SparseIntArray;->size()I -HSPLandroid/util/SparseIntArray;->valueAt(I)I -HSPLandroid/util/SparseLongArray;-><init>()V -HSPLandroid/util/SparseLongArray;-><init>(I)V -HSPLandroid/util/SparseLongArray;->clear()V -HSPLandroid/util/SparseLongArray;->delete(I)V -HSPLandroid/util/SparseLongArray;->get(I)J -HSPLandroid/util/SparseLongArray;->get(IJ)J -HSPLandroid/util/SparseLongArray;->indexOfKey(I)I -HSPLandroid/util/SparseLongArray;->keyAt(I)I -HSPLandroid/util/SparseLongArray;->put(IJ)V -HSPLandroid/util/SparseLongArray;->removeAt(I)V -HSPLandroid/util/SparseLongArray;->size()I -HSPLandroid/util/SparseLongArray;->valueAt(I)J -HSPLandroid/util/SparseSetArray;-><init>()V -HSPLandroid/util/SparseSetArray;->add(ILjava/lang/Object;)Z -HSPLandroid/util/SparseSetArray;->get(I)Landroid/util/ArraySet; -HSPLandroid/util/Spline$MonotoneCubicSpline;-><init>([F[F)V -HSPLandroid/util/Spline$MonotoneCubicSpline;->interpolate(F)F -HSPLandroid/util/StateSet;->get(I)[I -HSPLandroid/util/StateSet;->stateSetMatches([I[I)Z -HSPLandroid/util/StateSet;->trimStateSet([II)[I -HSPLandroid/util/SystemConfigFileCommitEventLogger;-><init>(Ljava/lang/String;)V -HSPLandroid/util/TimeUtils;->formatDuration(J)Ljava/lang/String; -HSPLandroid/util/TimeUtils;->formatDuration(JLjava/lang/StringBuilder;)V -HSPLandroid/util/TimeUtils;->formatDurationLocked(JI)I -HSPLandroid/util/TimeUtils;->printFieldLocked([CICIZI)I -HSPLandroid/util/TimingLogger;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/util/TimingLogger;->addSplit(Ljava/lang/String;)V -HSPLandroid/util/TimingLogger;->dumpToLog()V -HSPLandroid/util/TimingLogger;->reset()V -HSPLandroid/util/TimingLogger;->reset(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/util/TimingsTraceLog;-><init>(Ljava/lang/String;J)V -HSPLandroid/util/TimingsTraceLog;-><init>(Ljava/lang/String;JI)V -HSPLandroid/util/TimingsTraceLog;->assertSameThread()V -HSPLandroid/util/TimingsTraceLog;->logDuration(Ljava/lang/String;J)V -HSPLandroid/util/TimingsTraceLog;->traceBegin(Ljava/lang/String;)V -HSPLandroid/util/TimingsTraceLog;->traceEnd()V -HSPLandroid/util/TypedValue;-><init>()V -HSPLandroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F -HSPLandroid/util/TypedValue;->coerceToString()Ljava/lang/CharSequence; -HSPLandroid/util/TypedValue;->coerceToString(II)Ljava/lang/String; -HSPLandroid/util/TypedValue;->complexToDimension(ILandroid/util/DisplayMetrics;)F -HSPLandroid/util/TypedValue;->complexToDimensionPixelOffset(ILandroid/util/DisplayMetrics;)I -HSPLandroid/util/TypedValue;->complexToDimensionPixelSize(ILandroid/util/DisplayMetrics;)I -HSPLandroid/util/TypedValue;->complexToFloat(I)F -HSPLandroid/util/TypedValue;->complexToFraction(IFF)F -HSPLandroid/util/TypedValue;->getComplexUnit()I -HSPLandroid/util/TypedValue;->getDimension(Landroid/util/DisplayMetrics;)F -HSPLandroid/util/TypedValue;->getFloat()F -HSPLandroid/util/TypedValue;->getFraction(FF)F -HSPLandroid/util/TypedValue;->toString()Ljava/lang/String; -HSPLandroid/util/UtilConfig;->setThrowExceptionForUpperArrayOutOfBounds(Z)V -HSPLandroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet; -HSPLandroid/util/Xml;->newFastPullParser()Lcom/android/modules/utils/TypedXmlPullParser; -HSPLandroid/util/Xml;->newFastSerializer()Lcom/android/modules/utils/TypedXmlSerializer; -HSPLandroid/util/Xml;->newPullParser()Lorg/xmlpull/v1/XmlPullParser; -HSPLandroid/util/Xml;->newSerializer()Lorg/xmlpull/v1/XmlSerializer; -HSPLandroid/util/proto/EncodedBuffer;-><init>(I)V -HSPLandroid/util/proto/EncodedBuffer;->editRawFixed32(II)V -HSPLandroid/util/proto/EncodedBuffer;->getBytes(I)[B -HSPLandroid/util/proto/EncodedBuffer;->getRawFixed32At(I)I -HSPLandroid/util/proto/EncodedBuffer;->getRawVarint32Size(I)I -HSPLandroid/util/proto/EncodedBuffer;->getReadPos()I -HSPLandroid/util/proto/EncodedBuffer;->getReadableSize()I -HSPLandroid/util/proto/EncodedBuffer;->getWritePos()I -HSPLandroid/util/proto/EncodedBuffer;->readRawByte()B -HSPLandroid/util/proto/EncodedBuffer;->readRawFixed32()I -HSPLandroid/util/proto/EncodedBuffer;->readRawUnsigned()J -HSPLandroid/util/proto/EncodedBuffer;->rewindWriteTo(I)V -HSPLandroid/util/proto/EncodedBuffer;->skipRead(I)V -HSPLandroid/util/proto/EncodedBuffer;->startEditing()V -HSPLandroid/util/proto/EncodedBuffer;->writeFromThisBuffer(II)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawBuffer([B)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawBuffer([BII)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawByte(B)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawFixed32(I)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawVarint32(I)V -HSPLandroid/util/proto/EncodedBuffer;->writeRawVarint64(J)V -HSPLandroid/util/proto/ProtoInputStream;->assertFieldNumber(J)V -HSPLandroid/util/proto/ProtoInputStream;->assertFreshData()V -HSPLandroid/util/proto/ProtoInputStream;->assertWireType(I)V -HSPLandroid/util/proto/ProtoInputStream;->checkPacked(J)V -HSPLandroid/util/proto/ProtoInputStream;->end(J)V -HSPLandroid/util/proto/ProtoInputStream;->fillBuffer()V -HSPLandroid/util/proto/ProtoInputStream;->getFieldNumber()I -HSPLandroid/util/proto/ProtoInputStream;->getOffset()I -HSPLandroid/util/proto/ProtoInputStream;->incOffset(I)V -HSPLandroid/util/proto/ProtoInputStream;->nextField()I -HSPLandroid/util/proto/ProtoInputStream;->nextField(J)Z -HSPLandroid/util/proto/ProtoInputStream;->readInt(J)I -HSPLandroid/util/proto/ProtoInputStream;->readLong(J)J -HSPLandroid/util/proto/ProtoInputStream;->readRawString(I)Ljava/lang/String; -HSPLandroid/util/proto/ProtoInputStream;->readString(J)Ljava/lang/String; -HSPLandroid/util/proto/ProtoInputStream;->readTag()V -HSPLandroid/util/proto/ProtoInputStream;->readVarint()J -HSPLandroid/util/proto/ProtoInputStream;->start(J)J -HSPLandroid/util/proto/ProtoOutputStream;-><init>()V -HSPLandroid/util/proto/ProtoOutputStream;-><init>(I)V -HSPLandroid/util/proto/ProtoOutputStream;->assertNotCompacted()V -HSPLandroid/util/proto/ProtoOutputStream;->compactIfNecessary()V -HSPLandroid/util/proto/ProtoOutputStream;->compactSizes(I)V -HSPLandroid/util/proto/ProtoOutputStream;->editEncodedSize(I)I -HSPLandroid/util/proto/ProtoOutputStream;->end(J)V -HSPLandroid/util/proto/ProtoOutputStream;->endObjectImpl(JZ)V -HSPLandroid/util/proto/ProtoOutputStream;->flush()V -HSPLandroid/util/proto/ProtoOutputStream;->getTagSize(I)I -HSPLandroid/util/proto/ProtoOutputStream;->readRawTag()I -HSPLandroid/util/proto/ProtoOutputStream;->start(J)J -HSPLandroid/util/proto/ProtoOutputStream;->startObjectImpl(IZ)J -HSPLandroid/util/proto/ProtoOutputStream;->write(JI)V -HSPLandroid/util/proto/ProtoOutputStream;->write(JJ)V -HSPLandroid/util/proto/ProtoOutputStream;->write(JLjava/lang/String;)V -HSPLandroid/util/proto/ProtoOutputStream;->writeInt32Impl(II)V -HSPLandroid/util/proto/ProtoOutputStream;->writeKnownLengthHeader(II)V -HSPLandroid/util/proto/ProtoOutputStream;->writeStringImpl(ILjava/lang/String;)V -HSPLandroid/util/proto/ProtoOutputStream;->writeTag(II)V -HSPLandroid/util/proto/ProtoOutputStream;->writeUnsignedVarintFromSignedInt(I)V -HSPLandroid/util/proto/ProtoOutputStream;->writeUtf8String(ILjava/lang/String;)V -HSPLandroid/util/proto/ProtoStream;-><init>()V -HSPLandroid/util/proto/ProtoStream;->getDepthFromToken(J)I -HSPLandroid/util/proto/ProtoStream;->getOffsetFromToken(J)I -HSPLandroid/util/proto/ProtoStream;->getRepeatedFromToken(J)Z -HSPLandroid/util/proto/ProtoStream;->makeToken(IZIII)J -HSPLandroid/view/AbsSavedState$2;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Landroid/view/AbsSavedState; -HSPLandroid/view/AbsSavedState$2;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/view/AbsSavedState;-><init>(Landroid/os/Parcelable;)V -HSPLandroid/view/AbsSavedState;->getSuperState()Landroid/os/Parcelable; -HSPLandroid/view/AbsSavedState;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/view/Choreographer$1;->initialValue()Landroid/view/Choreographer; -HSPLandroid/view/Choreographer$1;->initialValue()Ljava/lang/Object; -HSPLandroid/view/Choreographer$2;->initialValue()Landroid/view/Choreographer; -HSPLandroid/view/Choreographer$2;->initialValue()Ljava/lang/Object; -HSPLandroid/view/Choreographer$CallbackQueue;-><init>(Landroid/view/Choreographer;)V -HSPLandroid/view/Choreographer$CallbackQueue;-><init>(Landroid/view/Choreographer;Landroid/view/Choreographer$CallbackQueue-IA;)V -HSPLandroid/view/Choreographer$CallbackQueue;->addCallbackLocked(JLjava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/view/Choreographer$CallbackQueue;->extractDueCallbacksLocked(J)Landroid/view/Choreographer$CallbackRecord; -HSPLandroid/view/Choreographer$CallbackQueue;->removeCallbacksLocked(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLandroid/view/Choreographer$CallbackRecord;-><init>()V -HSPLandroid/view/Choreographer$CallbackRecord;-><init>(Landroid/view/Choreographer$CallbackRecord-IA;)V -HSPLandroid/view/Choreographer$CallbackRecord;->run(J)V+]Landroid/view/Choreographer$FrameCallback;missing_types]Ljava/lang/Runnable;Landroid/view/ViewPropertyAnimator$1;,Landroid/view/ViewRootImpl$ConsumeBatchedInputRunnable;,Landroid/view/ViewRootImpl$TraversalRunnable;,Lcom/android/internal/util/function/pooled/PooledLambdaImpl; -HSPLandroid/view/Choreographer$CallbackRecord;->run(Landroid/view/Choreographer$FrameData;)V+]Landroid/view/Choreographer$CallbackRecord;Landroid/view/Choreographer$CallbackRecord;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData; -HSPLandroid/view/Choreographer$FrameData;->-$$Nest$fgetmFrameTimeNanos(Landroid/view/Choreographer$FrameData;)J -HSPLandroid/view/Choreographer$FrameData;-><init>()V -HSPLandroid/view/Choreographer$FrameData;->allocateFrameTimelines(I)V -HSPLandroid/view/Choreographer$FrameData;->checkInCallback()V -HSPLandroid/view/Choreographer$FrameData;->getFrameTimeNanos()J -HSPLandroid/view/Choreographer$FrameData;->getFrameTimelines()[Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameData;->getPreferredFrameTimeline()Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameData;->setInCallback(Z)V+]Landroid/view/Choreographer$FrameTimeline;Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameData;->update(JI)V -HSPLandroid/view/Choreographer$FrameData;->update(JLandroid/view/DisplayEventReceiver$VsyncEventData;)Landroid/view/Choreographer$FrameTimeline;+]Landroid/view/Choreographer$FrameTimeline;Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameData;->update(JLandroid/view/DisplayEventReceiver;J)Landroid/view/Choreographer$FrameTimeline; -HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;-><init>(Landroid/view/Choreographer;Landroid/os/Looper;IJ)V -HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->onVsync(JJILandroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler;]Landroid/view/DisplayEventReceiver$VsyncEventData;Landroid/view/DisplayEventReceiver$VsyncEventData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/Choreographer$FrameDisplayEventReceiver;->run()V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/Choreographer$FrameHandler;-><init>(Landroid/view/Choreographer;Landroid/os/Looper;)V -HSPLandroid/view/Choreographer$FrameHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/Choreographer$FrameTimeline;->-$$Nest$fgetmDeadlineNanos(Landroid/view/Choreographer$FrameTimeline;)J -HSPLandroid/view/Choreographer$FrameTimeline;->-$$Nest$fgetmExpectedPresentationTimeNanos(Landroid/view/Choreographer$FrameTimeline;)J -HSPLandroid/view/Choreographer$FrameTimeline;->-$$Nest$fgetmVsyncId(Landroid/view/Choreographer$FrameTimeline;)J -HSPLandroid/view/Choreographer$FrameTimeline;-><init>()V -HSPLandroid/view/Choreographer$FrameTimeline;->getDeadlineNanos()J -HSPLandroid/view/Choreographer$FrameTimeline;->setInCallback(Z)V -HSPLandroid/view/Choreographer$FrameTimeline;->update(JJJ)V -HSPLandroid/view/Choreographer;->-$$Nest$fgetmHandler(Landroid/view/Choreographer;)Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->-$$Nest$mobtainCallbackLocked(Landroid/view/Choreographer;JLjava/lang/Object;Ljava/lang/Object;)Landroid/view/Choreographer$CallbackRecord; -HSPLandroid/view/Choreographer;->-$$Nest$sfgetVSYNC_CALLBACK_TOKEN()Ljava/lang/Object; -HSPLandroid/view/Choreographer;->-$$Nest$sfputmMainInstance(Landroid/view/Choreographer;)V -HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;I)V -HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;IJ)V -HSPLandroid/view/Choreographer;-><init>(Landroid/os/Looper;ILandroid/view/Choreographer-IA;)V -HSPLandroid/view/Choreographer;->doCallbacks(IJ)V+]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$CallbackRecord;Landroid/view/Choreographer$CallbackRecord;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData; -HSPLandroid/view/Choreographer;->doFrame(JILandroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/graphics/FrameInfo;Landroid/graphics/FrameInfo;]Landroid/view/Choreographer$FrameData;Landroid/view/Choreographer$FrameData;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/DisplayEventReceiver$VsyncEventData;Landroid/view/DisplayEventReceiver$VsyncEventData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/Choreographer;->doScheduleCallback(I)V -HSPLandroid/view/Choreographer;->doScheduleVsync()V -HSPLandroid/view/Choreographer;->getFrameIntervalNanos()J -HSPLandroid/view/Choreographer;->getFrameTime()J -HSPLandroid/view/Choreographer;->getFrameTimeNanos()J -HSPLandroid/view/Choreographer;->getInstance()Landroid/view/Choreographer;+]Ljava/lang/ThreadLocal;Landroid/view/Choreographer$1; -HSPLandroid/view/Choreographer;->getMainThreadInstance()Landroid/view/Choreographer; -HSPLandroid/view/Choreographer;->getRefreshRate()F -HSPLandroid/view/Choreographer;->getSfInstance()Landroid/view/Choreographer; -HSPLandroid/view/Choreographer;->getVsyncId()J -HSPLandroid/view/Choreographer;->isRunningOnLooperThreadLocked()Z -HSPLandroid/view/Choreographer;->obtainCallbackLocked(JLjava/lang/Object;Ljava/lang/Object;)Landroid/view/Choreographer$CallbackRecord; -HSPLandroid/view/Choreographer;->postCallback(ILjava/lang/Runnable;Ljava/lang/Object;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/Choreographer;->postCallbackDelayed(ILjava/lang/Runnable;Ljava/lang/Object;J)V -HSPLandroid/view/Choreographer;->postCallbackDelayedInternal(ILjava/lang/Object;Ljava/lang/Object;J)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/Choreographer;->postFrameCallbackDelayed(Landroid/view/Choreographer$FrameCallback;J)V -HSPLandroid/view/Choreographer;->recycleCallbackLocked(Landroid/view/Choreographer$CallbackRecord;)V -HSPLandroid/view/Choreographer;->removeCallbacks(ILjava/lang/Runnable;Ljava/lang/Object;)V -HSPLandroid/view/Choreographer;->removeCallbacksInternal(ILjava/lang/Object;Ljava/lang/Object;)V+]Landroid/view/Choreographer$CallbackQueue;Landroid/view/Choreographer$CallbackQueue;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->removeFrameCallback(Landroid/view/Choreographer$FrameCallback;)V -HSPLandroid/view/Choreographer;->scheduleFrameLocked(J)V+]Landroid/os/Message;Landroid/os/Message;]Landroid/view/Choreographer$FrameHandler;Landroid/view/Choreographer$FrameHandler; -HSPLandroid/view/Choreographer;->scheduleVsyncLocked()V+]Landroid/view/Choreographer$FrameDisplayEventReceiver;Landroid/view/Choreographer$FrameDisplayEventReceiver; -HSPLandroid/view/Choreographer;->setFPSDivisor(I)V -HSPLandroid/view/ContextThemeWrapper;-><init>()V -HSPLandroid/view/ContextThemeWrapper;-><init>(Landroid/content/Context;I)V -HSPLandroid/view/ContextThemeWrapper;-><init>(Landroid/content/Context;Landroid/content/res/Resources$Theme;)V -HSPLandroid/view/ContextThemeWrapper;->attachBaseContext(Landroid/content/Context;)V -HSPLandroid/view/ContextThemeWrapper;->getAssets()Landroid/content/res/AssetManager; -HSPLandroid/view/ContextThemeWrapper;->getOverrideConfiguration()Landroid/content/res/Configuration; -HSPLandroid/view/ContextThemeWrapper;->getResources()Landroid/content/res/Resources; -HSPLandroid/view/ContextThemeWrapper;->getResourcesInternal()Landroid/content/res/Resources; -HSPLandroid/view/ContextThemeWrapper;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/view/ContextThemeWrapper;->getTheme()Landroid/content/res/Resources$Theme;+]Landroid/view/ContextThemeWrapper;Landroid/view/ContextThemeWrapper; -HSPLandroid/view/ContextThemeWrapper;->initializeTheme()V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ContextThemeWrapper;Landroid/view/ContextThemeWrapper; -HSPLandroid/view/ContextThemeWrapper;->onApplyThemeResource(Landroid/content/res/Resources$Theme;IZ)V -HSPLandroid/view/ContextThemeWrapper;->setTheme(I)V -HSPLandroid/view/CrossWindowBlurListeners;-><clinit>()V -HSPLandroid/view/Display$HdrCapabilities$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/Display$HdrCapabilities; -HSPLandroid/view/Display$HdrCapabilities$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/Display$HdrCapabilities;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/Display$HdrCapabilities;-><init>(Landroid/os/Parcel;Landroid/view/Display$HdrCapabilities-IA;)V -HSPLandroid/view/Display$HdrCapabilities;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/Display$HdrCapabilities;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/view/Display$HdrCapabilities;->toString()Ljava/lang/String; -HSPLandroid/view/Display$HdrCapabilities;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/Display$Mode$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/Display$Mode; -HSPLandroid/view/Display$Mode$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/Display$Mode;-><init>(IIIF)V -HSPLandroid/view/Display$Mode;-><init>(IIIFF[F[I)V -HSPLandroid/view/Display$Mode;-><init>(IIIF[F[I)V -HSPLandroid/view/Display$Mode;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/Display$Mode;-><init>(Landroid/os/Parcel;Landroid/view/Display$Mode-IA;)V -HSPLandroid/view/Display$Mode;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/Display$Mode;->getModeId()I -HSPLandroid/view/Display$Mode;->getPhysicalHeight()I -HSPLandroid/view/Display$Mode;->getPhysicalWidth()I -HSPLandroid/view/Display$Mode;->getRefreshRate()F -HSPLandroid/view/Display$Mode;->matches(IIF)Z -HSPLandroid/view/Display$Mode;->toString()Ljava/lang/String; -HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/content/res/Resources;)V -HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/view/DisplayAdjustments;)V -HSPLandroid/view/Display;-><init>(Landroid/hardware/display/DisplayManagerGlobal;ILandroid/view/DisplayInfo;Landroid/view/DisplayAdjustments;Landroid/content/res/Resources;)V+]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/view/Display;->getAppVsyncOffsetNanos()J -HSPLandroid/view/Display;->getCutout()Landroid/view/DisplayCutout; -HSPLandroid/view/Display;->getDisplayAdjustments()Landroid/view/DisplayAdjustments; -HSPLandroid/view/Display;->getDisplayId()I -HSPLandroid/view/Display;->getDisplayInfo(Landroid/view/DisplayInfo;)Z -HSPLandroid/view/Display;->getFlags()I -HSPLandroid/view/Display;->getHdrSdrRatio()F -HSPLandroid/view/Display;->getHeight()I -HSPLandroid/view/Display;->getInstallOrientation()I -HSPLandroid/view/Display;->getLocalRotation()I -HSPLandroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V -HSPLandroid/view/Display;->getMode()Landroid/view/Display$Mode; -HSPLandroid/view/Display;->getName()Ljava/lang/String; -HSPLandroid/view/Display;->getPreferredWideGamutColorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/view/Display;->getPresentationDeadlineNanos()J -HSPLandroid/view/Display;->getRealMetrics(Landroid/util/DisplayMetrics;)V -HSPLandroid/view/Display;->getRealSize(Landroid/graphics/Point;)V -HSPLandroid/view/Display;->getRefreshRate()F -HSPLandroid/view/Display;->getRotation()I -HSPLandroid/view/Display;->getSize(Landroid/graphics/Point;)V -HSPLandroid/view/Display;->getState()I -HSPLandroid/view/Display;->getSupportedColorModes()[I -HSPLandroid/view/Display;->getSupportedModes()[Landroid/view/Display$Mode; -HSPLandroid/view/Display;->getSupportedWideColorGamut()[Landroid/graphics/ColorSpace; -HSPLandroid/view/Display;->getWidth()I -HSPLandroid/view/Display;->hasAccess(IIII)Z -HSPLandroid/view/Display;->isValid()Z -HSPLandroid/view/Display;->isWideColorGamut()Z -HSPLandroid/view/Display;->shouldReportMaxBounds()Z -HSPLandroid/view/Display;->stateToString(I)Ljava/lang/String; -HSPLandroid/view/Display;->updateCachedAppSizeIfNeededLocked()V -HSPLandroid/view/Display;->updateDisplayInfoLocked()V+]Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal; -HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayAddress$Physical; -HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/DisplayAddress$Physical;-><init>(J)V -HSPLandroid/view/DisplayAddress$Physical;-><init>(JLandroid/view/DisplayAddress$Physical-IA;)V -HSPLandroid/view/DisplayAddress$Physical;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/DisplayAddress$Physical;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/DisplayAddress;-><init>()V -HSPLandroid/view/DisplayAdjustments;-><init>()V -HSPLandroid/view/DisplayAdjustments;-><init>(Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayAdjustments;-><init>(Landroid/view/DisplayAdjustments;)V -HSPLandroid/view/DisplayAdjustments;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/DisplayAdjustments;->getCompatibilityInfo()Landroid/content/res/CompatibilityInfo; -HSPLandroid/view/DisplayAdjustments;->getConfiguration()Landroid/content/res/Configuration; -HSPLandroid/view/DisplayAdjustments;->hashCode()I -HSPLandroid/view/DisplayAdjustments;->setCompatibilityInfo(Landroid/content/res/CompatibilityInfo;)V -HSPLandroid/view/DisplayAdjustments;->setConfiguration(Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayCutout$Bounds;->-$$Nest$mgetRects(Landroid/view/DisplayCutout$Bounds;)[Landroid/graphics/Rect; -HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;Z)V -HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;ZLandroid/view/DisplayCutout$Bounds-IA;)V -HSPLandroid/view/DisplayCutout$Bounds;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/DisplayCutout$Bounds;->getRects()[Landroid/graphics/Rect; -HSPLandroid/view/DisplayCutout$Bounds;->isEmpty()Z -HSPLandroid/view/DisplayCutout$CutoutPathParserInfo;-><init>(IIIIFLjava/lang/String;IFF)V -HSPLandroid/view/DisplayCutout$CutoutPathParserInfo;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/view/DisplayCutout$ParcelableWrapper$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayCutout$ParcelableWrapper; -HSPLandroid/view/DisplayCutout$ParcelableWrapper$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/DisplayCutout$ParcelableWrapper;-><init>()V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;-><init>(Landroid/view/DisplayCutout;)V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->get()Landroid/view/DisplayCutout; -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->readCutoutFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayCutout; -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->set(Landroid/view/DisplayCutout$ParcelableWrapper;)V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->set(Landroid/view/DisplayCutout;)V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->writeCutoutToParcel(Landroid/view/DisplayCutout;Landroid/os/Parcel;I)V -HSPLandroid/view/DisplayCutout$ParcelableWrapper;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/DisplayCutout;-><init>(Landroid/graphics/Rect;Landroid/graphics/Insets;Landroid/view/DisplayCutout$Bounds;Landroid/view/DisplayCutout$CutoutPathParserInfo;[I)V -HSPLandroid/view/DisplayCutout;-><init>(Landroid/graphics/Rect;Landroid/graphics/Insets;Landroid/view/DisplayCutout$Bounds;Landroid/view/DisplayCutout$CutoutPathParserInfo;[ILandroid/view/DisplayCutout-IA;)V -HSPLandroid/view/DisplayCutout;-><init>(Landroid/graphics/Rect;Landroid/graphics/Insets;[Landroid/graphics/Rect;Landroid/view/DisplayCutout$CutoutPathParserInfo;Z)V -HSPLandroid/view/DisplayCutout;->atLeastZero(I)I -HSPLandroid/view/DisplayCutout;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/DisplayCutout;->getBoundingRects()Ljava/util/List; -HSPLandroid/view/DisplayCutout;->getBoundingRectsAll()[Landroid/graphics/Rect; -HSPLandroid/view/DisplayCutout;->getCopyOrRef(Landroid/graphics/Rect;Z)Landroid/graphics/Rect; -HSPLandroid/view/DisplayCutout;->getSafeInsetBottom()I -HSPLandroid/view/DisplayCutout;->getSafeInsetLeft()I -HSPLandroid/view/DisplayCutout;->getSafeInsetRight()I -HSPLandroid/view/DisplayCutout;->getSafeInsetTop()I -HSPLandroid/view/DisplayCutout;->inset(IIII)Landroid/view/DisplayCutout; -HSPLandroid/view/DisplayCutout;->insetInsets(IIIILandroid/graphics/Rect;)Landroid/graphics/Rect; -HSPLandroid/view/DisplayCutout;->isBoundsEmpty()Z -HSPLandroid/view/DisplayCutout;->isEmpty()Z -HSPLandroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;-><init>()V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;-><init>(JJJ)V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;->copyFrom(Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;)V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData;-><init>()V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData;-><init>([Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;IIJ)V -HSPLandroid/view/DisplayEventReceiver$VsyncEventData;->copyFrom(Landroid/view/DisplayEventReceiver$VsyncEventData;)V+]Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline;Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; -HSPLandroid/view/DisplayEventReceiver$VsyncEventData;->preferredFrameTimeline()Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; -HSPLandroid/view/DisplayEventReceiver;-><init>(Landroid/os/Looper;II)V -HSPLandroid/view/DisplayEventReceiver;-><init>(Landroid/os/Looper;IIJ)V -HSPLandroid/view/DisplayEventReceiver;->dispatchVsync(JJI)V+]Landroid/view/DisplayEventReceiver;Landroid/view/Choreographer$FrameDisplayEventReceiver; -HSPLandroid/view/DisplayEventReceiver;->getLatestVsyncEventData()Landroid/view/DisplayEventReceiver$VsyncEventData; -HSPLandroid/view/DisplayEventReceiver;->scheduleVsync()V -HSPLandroid/view/DisplayInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayInfo; -HSPLandroid/view/DisplayInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/DisplayInfo;-><init>()V -HSPLandroid/view/DisplayInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/DisplayInfo;-><init>(Landroid/os/Parcel;Landroid/view/DisplayInfo-IA;)V -HSPLandroid/view/DisplayInfo;->copyFrom(Landroid/view/DisplayInfo;)V -HSPLandroid/view/DisplayInfo;->equals(Landroid/view/DisplayInfo;)Z -HSPLandroid/view/DisplayInfo;->findMode(I)Landroid/view/Display$Mode; -HSPLandroid/view/DisplayInfo;->flagsToString(I)Ljava/lang/String; -HSPLandroid/view/DisplayInfo;->getAppMetrics(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayInfo;->getAppMetrics(Landroid/util/DisplayMetrics;Landroid/view/DisplayAdjustments;)V -HSPLandroid/view/DisplayInfo;->getLogicalMetrics(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayInfo;->getMaxBoundsMetrics(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;)V -HSPLandroid/view/DisplayInfo;->getMetricsWithSize(Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Landroid/content/res/Configuration;II)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/view/DisplayInfo;->getMode()Landroid/view/Display$Mode; -HSPLandroid/view/DisplayInfo;->getRefreshRate()F -HSPLandroid/view/DisplayInfo;->hasAccess(I)Z -HSPLandroid/view/DisplayInfo;->isWideColorGamut()Z -HSPLandroid/view/DisplayInfo;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/view/Display$Mode$1; -HSPLandroid/view/DisplayInfo;->toString()Ljava/lang/String; -HSPLandroid/view/DisplayInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/DisplayShape$1;-><init>()V -HSPLandroid/view/DisplayShape$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayShape; -HSPLandroid/view/DisplayShape$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/DisplayShape;-><clinit>()V -HSPLandroid/view/DisplayShape;-><init>(Ljava/lang/String;IIFI)V -HSPLandroid/view/DisplayShape;-><init>(Ljava/lang/String;IIFIIIF)V -HSPLandroid/view/DisplayShape;-><init>(Ljava/lang/String;IIFIIIFLandroid/view/DisplayShape-IA;)V -HSPLandroid/view/DisplayShape;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/FocusFinder$1;->initialValue()Landroid/view/FocusFinder; -HSPLandroid/view/FocusFinder$1;->initialValue()Ljava/lang/Object; -HSPLandroid/view/FocusFinder$FocusSorter$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/view/FocusFinder$FocusSorter$$ExternalSyntheticLambda1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLandroid/view/FocusFinder$FocusSorter;->sort([Landroid/view/View;IILandroid/view/ViewGroup;Z)V -HSPLandroid/view/FocusFinder$UserSpecifiedFocusComparator;-><init>(Landroid/view/FocusFinder$UserSpecifiedFocusComparator$NextFocusGetter;)V -HSPLandroid/view/FocusFinder;-><init>()V -HSPLandroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; -HSPLandroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;Landroid/graphics/Rect;I)Landroid/view/View; -HSPLandroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;Landroid/graphics/Rect;ILjava/util/ArrayList;)Landroid/view/View; -HSPLandroid/view/FocusFinder;->findNextFocusInAbsoluteDirection(Ljava/util/ArrayList;Landroid/view/ViewGroup;Landroid/view/View;Landroid/graphics/Rect;I)Landroid/view/View; -HSPLandroid/view/FocusFinder;->findNextUserSpecifiedFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; -HSPLandroid/view/FocusFinder;->getEffectiveRoot(Landroid/view/ViewGroup;Landroid/view/View;)Landroid/view/ViewGroup; -HSPLandroid/view/FocusFinder;->getInstance()Landroid/view/FocusFinder; -HSPLandroid/view/FocusFinder;->isBetterCandidate(ILandroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/view/FocusFinder;->isCandidate(Landroid/graphics/Rect;Landroid/graphics/Rect;I)Z -HSPLandroid/view/FrameMetrics;-><init>()V -HSPLandroid/view/FrameMetrics;->getMetric(I)J -HSPLandroid/view/FrameMetricsObserver;-><init>(Landroid/view/Window;Landroid/os/Handler;Landroid/view/Window$OnFrameMetricsAvailableListener;)V -HSPLandroid/view/FrameMetricsObserver;->getRendererObserver()Landroid/graphics/HardwareRendererObserver; -HSPLandroid/view/FrameMetricsObserver;->onFrameMetricsAvailable(I)V+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLandroid/view/GestureDetector$GestureHandler;-><init>(Landroid/view/GestureDetector;)V -HSPLandroid/view/GestureDetector$GestureHandler;-><init>(Landroid/view/GestureDetector;Landroid/os/Handler;)V -HSPLandroid/view/GestureDetector$GestureHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;-><init>()V -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onDoubleTapEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onDown(Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onFling(Landroid/view/MotionEvent;Landroid/view/MotionEvent;FF)Z -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onLongPress(Landroid/view/MotionEvent;)V -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onScroll(Landroid/view/MotionEvent;Landroid/view/MotionEvent;FF)Z -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onShowPress(Landroid/view/MotionEvent;)V -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onSingleTapConfirmed(Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector$SimpleOnGestureListener;->onSingleTapUp(Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector;-><init>(Landroid/content/Context;Landroid/view/GestureDetector$OnGestureListener;)V -HSPLandroid/view/GestureDetector;-><init>(Landroid/content/Context;Landroid/view/GestureDetector$OnGestureListener;Landroid/os/Handler;)V -HSPLandroid/view/GestureDetector;->cancel()V -HSPLandroid/view/GestureDetector;->cancelTaps()V -HSPLandroid/view/GestureDetector;->init(Landroid/content/Context;)V -HSPLandroid/view/GestureDetector;->isConsideredDoubleTap(Landroid/view/MotionEvent;Landroid/view/MotionEvent;Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/GestureDetector;->recordGestureClassification(I)V -HSPLandroid/view/GestureDetector;->setContextClickListener(Landroid/view/GestureDetector$OnContextClickListener;)V -HSPLandroid/view/GestureDetector;->setIsLongpressEnabled(Z)V -HSPLandroid/view/GestureDetector;->setOnDoubleTapListener(Landroid/view/GestureDetector$OnDoubleTapListener;)V -HSPLandroid/view/Gravity;->apply(IIILandroid/graphics/Rect;IILandroid/graphics/Rect;)V -HSPLandroid/view/Gravity;->apply(IIILandroid/graphics/Rect;Landroid/graphics/Rect;)V -HSPLandroid/view/Gravity;->apply(IIILandroid/graphics/Rect;Landroid/graphics/Rect;I)V -HSPLandroid/view/Gravity;->applyDisplay(ILandroid/graphics/Rect;Landroid/graphics/Rect;)V -HSPLandroid/view/Gravity;->getAbsoluteGravity(II)I -HSPLandroid/view/Gravity;->isHorizontal(I)Z -HSPLandroid/view/Gravity;->isVertical(I)Z -HSPLandroid/view/HandlerActionQueue$HandlerAction;-><init>(Ljava/lang/Runnable;J)V -HSPLandroid/view/HandlerActionQueue$HandlerAction;->matches(Ljava/lang/Runnable;)Z -HSPLandroid/view/HandlerActionQueue;-><init>()V -HSPLandroid/view/HandlerActionQueue;->executeActions(Landroid/os/Handler;)V+]Landroid/os/Handler;Landroid/view/ViewRootImpl$ViewRootHandler; -HSPLandroid/view/HandlerActionQueue;->post(Ljava/lang/Runnable;)V -HSPLandroid/view/HandlerActionQueue;->postDelayed(Ljava/lang/Runnable;J)V -HSPLandroid/view/HandlerActionQueue;->removeCallbacks(Ljava/lang/Runnable;)V -HSPLandroid/view/HandwritingInitiator$HandwritableViewInfo;-><init>(Landroid/view/View;)V -HSPLandroid/view/HandwritingInitiator$HandwritableViewInfo;->getView()Landroid/view/View; -HSPLandroid/view/HandwritingInitiator$HandwritingAreaTracker;-><init>()V -HSPLandroid/view/HandwritingInitiator$HandwritingAreaTracker;->updateHandwritingAreaForView(Landroid/view/View;)V -HSPLandroid/view/HandwritingInitiator$State;->-$$Nest$fgetmShouldInitHandwriting(Landroid/view/HandwritingInitiator$State;)Z -HSPLandroid/view/HandwritingInitiator$State;->-$$Nest$fgetmStylusPointerId(Landroid/view/HandwritingInitiator$State;)I -HSPLandroid/view/HandwritingInitiator;->-$$Nest$smisViewActive(Landroid/view/View;)Z -HSPLandroid/view/HandwritingInitiator;-><init>(Landroid/view/ViewConfiguration;Landroid/view/inputmethod/InputMethodManager;)V -HSPLandroid/view/HandwritingInitiator;->clearConnectedView()V -HSPLandroid/view/HandwritingInitiator;->getConnectedView()Landroid/view/View; -HSPLandroid/view/HandwritingInitiator;->isViewActive(Landroid/view/View;)Z -HSPLandroid/view/HandwritingInitiator;->onInputConnectionClosed(Landroid/view/View;)V -HSPLandroid/view/HandwritingInitiator;->onInputConnectionCreated(Landroid/view/View;)V -HSPLandroid/view/HandwritingInitiator;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/HandwritingInitiator;->updateHandwritingAreasForView(Landroid/view/View;)V -HSPLandroid/view/IGraphicsStats$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/IGraphicsStats$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/IGraphicsStats$Stub$Proxy;->requestBufferForProcess(Ljava/lang/String;Landroid/view/IGraphicsStatsCallback;)Landroid/os/ParcelFileDescriptor; -HSPLandroid/view/IGraphicsStats$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/IGraphicsStats; -HSPLandroid/view/IGraphicsStatsCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/IGraphicsStatsCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/IRemoteAnimationRunner$Stub;-><init>()V -HSPLandroid/view/IRemoteAnimationRunner$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/ISystemGestureExclusionListener$Stub;-><init>()V -HSPLandroid/view/IWindow$Stub;-><init>()V -HSPLandroid/view/IWindow$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/IWindow$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/view/IWindow$Stub;->getMaxTransactionId()I -HSPLandroid/view/IWindow$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/view/IWindow$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/IWindowManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/IWindowManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/IWindowManager$Stub$Proxy;->getCurrentAnimatorScale()F -HSPLandroid/view/IWindowManager$Stub$Proxy;->getWindowInsets(ILandroid/os/IBinder;Landroid/view/InsetsState;)Z -HSPLandroid/view/IWindowManager$Stub$Proxy;->hasNavigationBar(I)Z -HSPLandroid/view/IWindowManager$Stub$Proxy;->isInTouchMode(I)Z -HSPLandroid/view/IWindowManager$Stub$Proxy;->isKeyguardLocked()Z -HSPLandroid/view/IWindowManager$Stub$Proxy;->isKeyguardSecure(I)Z -HSPLandroid/view/IWindowManager$Stub$Proxy;->openSession(Landroid/view/IWindowSessionCallback;)Landroid/view/IWindowSession; -HSPLandroid/view/IWindowManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/IWindowManager; -HSPLandroid/view/IWindowSession$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->addToDisplayAsUser(Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIILandroid/view/InputChannel;Landroid/view/InsetsState;Landroid/view/InsetsSourceControl$Array;Landroid/graphics/Rect;[F)I -HSPLandroid/view/IWindowSession$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/IWindowSession$Stub$Proxy;->finishDrawing(Landroid/view/IWindow;Landroid/view/SurfaceControl$Transaction;I)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->getWindowId(Landroid/os/IBinder;)Landroid/view/IWindowId; -HSPLandroid/view/IWindowSession$Stub$Proxy;->onRectangleOnScreenRequested(Landroid/os/IBinder;Landroid/graphics/Rect;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->pokeDrawLock(Landroid/os/IBinder;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->relayoutAsync(Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIIII)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->reportSystemGestureExclusionChanged(Landroid/view/IWindow;Ljava/util/List;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->setInsets(Landroid/view/IWindow;ILandroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Region;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->setOnBackInvokedCallbackInfo(Landroid/view/IWindow;Landroid/window/OnBackInvokedCallbackInfo;)V -HSPLandroid/view/IWindowSession$Stub$Proxy;->setWallpaperZoomOut(Landroid/os/IBinder;F)V -HSPLandroid/view/IWindowSession$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/IWindowSession; -HSPLandroid/view/IWindowSessionCallback$Stub;-><init>()V -HSPLandroid/view/IWindowSessionCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/ImeFocusController;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ImeFocusController;->getImmDelegate()Landroid/view/ImeFocusController$InputMethodManagerDelegate; -HSPLandroid/view/ImeFocusController;->hasImeFocus()Z -HSPLandroid/view/ImeFocusController;->isInLocalFocusMode(Landroid/view/WindowManager$LayoutParams;)Z -HSPLandroid/view/ImeFocusController;->onPostWindowFocus(Landroid/view/View;ZLandroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ImeFocusController;->onPreWindowFocus(ZLandroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ImeFocusController;->onProcessImeInputStage(Ljava/lang/Object;Landroid/view/InputEvent;Landroid/view/WindowManager$LayoutParams;Landroid/view/inputmethod/InputMethodManager$FinishedInputEventCallback;)I -HSPLandroid/view/ImeFocusController;->onTraversal(ZLandroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ImeFocusController;->onViewDetachedFromWindow(Landroid/view/View;)V+]Landroid/view/ImeFocusController$InputMethodManagerDelegate;Landroid/view/inputmethod/InputMethodManager$DelegateImpl; -HSPLandroid/view/ImeFocusController;->onViewFocusChanged(Landroid/view/View;Z)V -HSPLandroid/view/ImeFocusController;->onWindowDismissed()V -HSPLandroid/view/ImeInsetsSourceConsumer;-><init>(ILandroid/view/InsetsState;Ljava/util/function/Supplier;Landroid/view/InsetsController;)V -HSPLandroid/view/ImeInsetsSourceConsumer;->applyLocalVisibilityOverride()Z -HSPLandroid/view/ImeInsetsSourceConsumer;->getImm()Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/ImeInsetsSourceConsumer;->isRequestedVisibleAwaitingControl()Z -HSPLandroid/view/ImeInsetsSourceConsumer;->onPerceptible(Z)V -HSPLandroid/view/ImeInsetsSourceConsumer;->onShowRequested()V -HSPLandroid/view/ImeInsetsSourceConsumer;->onWindowFocusGained(Z)V -HSPLandroid/view/ImeInsetsSourceConsumer;->onWindowFocusLost()V -HSPLandroid/view/ImeInsetsSourceConsumer;->removeSurface()V -HSPLandroid/view/ImeInsetsSourceConsumer;->setControl(Landroid/view/InsetsSourceControl;[I[I)Z -HSPLandroid/view/InputChannel$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InputChannel; -HSPLandroid/view/InputChannel$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/InputChannel;-><init>()V -HSPLandroid/view/InputChannel;->dispose()V -HSPLandroid/view/InputChannel;->getToken()Landroid/os/IBinder; -HSPLandroid/view/InputChannel;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/view/InputChannel;->setNativeInputChannel(J)V -HSPLandroid/view/InputDevice$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InputDevice; -HSPLandroid/view/InputDevice$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/InputDevice$MotionRange;-><init>(IIFFFFF)V -HSPLandroid/view/InputDevice;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/InputDevice;->addMotionRange(IIFFFFF)V -HSPLandroid/view/InputDevice;->getDevice(I)Landroid/view/InputDevice; -HSPLandroid/view/InputDevice;->getDeviceIds()[I -HSPLandroid/view/InputDevice;->getGeneration()I -HSPLandroid/view/InputDevice;->getSources()I -HSPLandroid/view/InputDevice;->isVirtual()Z -HSPLandroid/view/InputEvent;-><init>()V -HSPLandroid/view/InputEvent;->getSequenceNumber()I -HSPLandroid/view/InputEvent;->isFromSource(I)Z -HSPLandroid/view/InputEvent;->prepareForReuse()V -HSPLandroid/view/InputEvent;->recycle()V -HSPLandroid/view/InputEvent;->recycleIfNeededAfterDispatch()V -HSPLandroid/view/InputEventAssigner;-><init>()V -HSPLandroid/view/InputEventAssigner;->notifyFrameProcessed()V -HSPLandroid/view/InputEventAssigner;->processEvent(Landroid/view/InputEvent;)I -HSPLandroid/view/InputEventCompatProcessor;-><init>(Landroid/content/Context;)V -HSPLandroid/view/InputEventCompatProcessor;->processInputEventForCompatibility(Landroid/view/InputEvent;)Ljava/util/List; -HSPLandroid/view/InputEventConsistencyVerifier;->isInstrumentationEnabled()Z -HSPLandroid/view/InputEventReceiver;-><init>(Landroid/view/InputChannel;Landroid/os/Looper;)V -HSPLandroid/view/InputEventReceiver;->consumeBatchedInputEvents(J)Z -HSPLandroid/view/InputEventReceiver;->dispatchInputEvent(ILandroid/view/InputEvent;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Landroid/view/InputEventReceiver;Landroid/view/ViewRootImpl$WindowInputEventReceiver;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/InputEventReceiver;->dispose()V -HSPLandroid/view/InputEventReceiver;->dispose(Z)V -HSPLandroid/view/InputEventReceiver;->finalize()V -HSPLandroid/view/InputEventReceiver;->finishInputEvent(Landroid/view/InputEvent;Z)V -HSPLandroid/view/InputEventReceiver;->onBatchedInputEventPending(I)V -HSPLandroid/view/InputEventReceiver;->reportTimeline(IJJ)V -HSPLandroid/view/InputEventSender;-><init>(Landroid/view/InputChannel;Landroid/os/Looper;)V -HSPLandroid/view/InputEventSender;->dispatchInputEventFinished(IZ)V -HSPLandroid/view/InputEventSender;->dispose()V -HSPLandroid/view/InputEventSender;->dispose(Z)V -HSPLandroid/view/InputEventSender;->finalize()V -HSPLandroid/view/InputEventSender;->sendInputEvent(ILandroid/view/InputEvent;)Z -HSPLandroid/view/InputMonitor$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InputMonitor; -HSPLandroid/view/InputMonitor$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/InputMonitor;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/InputMonitor;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/InsetsAnimationControlImpl$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V -HSPLandroid/view/InsetsAnimationControlImpl;-><init>(Landroid/util/SparseArray;Landroid/graphics/Rect;Landroid/view/InsetsState;Landroid/view/WindowInsetsAnimationControlListener;ILandroid/view/InsetsAnimationControlCallbacks;JLandroid/view/animation/Interpolator;IILandroid/content/res/CompatibilityInfo$Translator;Landroid/view/inputmethod/ImeTracker$Token;)V -HSPLandroid/view/InsetsAnimationControlImpl;->addTranslationToMatrix(IILandroid/graphics/Matrix;Landroid/graphics/Rect;)V -HSPLandroid/view/InsetsAnimationControlImpl;->applyChangeInsets(Landroid/view/InsetsState;)Z -HSPLandroid/view/InsetsAnimationControlImpl;->buildSideControlsMap(Landroid/util/SparseSetArray;Landroid/util/SparseArray;)V -HSPLandroid/view/InsetsAnimationControlImpl;->calculateInsets(Landroid/view/InsetsState;Landroid/graphics/Rect;Landroid/util/SparseArray;ZLandroid/util/SparseIntArray;)Landroid/graphics/Insets; -HSPLandroid/view/InsetsAnimationControlImpl;->calculateInsets(Landroid/view/InsetsState;Landroid/util/SparseArray;Z)Landroid/graphics/Insets; -HSPLandroid/view/InsetsAnimationControlImpl;->calculatePerceptible(Landroid/graphics/Insets;F)Z -HSPLandroid/view/InsetsAnimationControlImpl;->cancel()V -HSPLandroid/view/InsetsAnimationControlImpl;->finish(Z)V -HSPLandroid/view/InsetsAnimationControlImpl;->getAnimation()Landroid/view/WindowInsetsAnimation; -HSPLandroid/view/InsetsAnimationControlImpl;->getAnimationType()I -HSPLandroid/view/InsetsAnimationControlImpl;->getControllingTypes()I -HSPLandroid/view/InsetsAnimationControlImpl;->getControls()Landroid/util/SparseArray; -HSPLandroid/view/InsetsAnimationControlImpl;->getCurrentAlpha()F -HSPLandroid/view/InsetsAnimationControlImpl;->getHiddenStateInsets()Landroid/graphics/Insets; -HSPLandroid/view/InsetsAnimationControlImpl;->getInsetsFromState(Landroid/view/InsetsState;Landroid/graphics/Rect;Landroid/util/SparseIntArray;)Landroid/graphics/Insets; -HSPLandroid/view/InsetsAnimationControlImpl;->getShownStateInsets()Landroid/graphics/Insets; -HSPLandroid/view/InsetsAnimationControlImpl;->getTypes()I -HSPLandroid/view/InsetsAnimationControlImpl;->hasZeroInsetsIme()Z -HSPLandroid/view/InsetsAnimationControlImpl;->isCancelled()Z -HSPLandroid/view/InsetsAnimationControlImpl;->notifyControlRevoked(I)V -HSPLandroid/view/InsetsAnimationControlImpl;->releaseLeashes()V -HSPLandroid/view/InsetsAnimationControlImpl;->setInsetsAndAlpha(Landroid/graphics/Insets;FF)V -HSPLandroid/view/InsetsAnimationControlImpl;->setInsetsAndAlpha(Landroid/graphics/Insets;FFZ)V -HSPLandroid/view/InsetsAnimationControlImpl;->updateSurfacePosition(Landroid/util/SparseArray;)V -HSPLandroid/view/InsetsAnimationThread;->ensureThreadLocked()V -HSPLandroid/view/InsetsAnimationThread;->getHandler()Landroid/os/Handler; -HSPLandroid/view/InsetsAnimationThread;->release()V -HSPLandroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1;->run()V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0;->run()V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1;->run()V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;-><init>(Landroid/view/InsetsAnimationThreadControlRunner;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->applySurfaceParams([Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->notifyFinished(Landroid/view/InsetsAnimationControlRunner;Z)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->releaseSurfaceControlFromRt(Landroid/view/SurfaceControl;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->reportPerceptible(IZ)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->scheduleApplyChangeInsets(Landroid/view/InsetsAnimationControlRunner;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner$1;->startAnimation(Landroid/view/InsetsAnimationControlRunner;Landroid/view/WindowInsetsAnimationControlListener;ILandroid/view/WindowInsetsAnimation;Landroid/view/WindowInsetsAnimation$Bounds;)V -HSPLandroid/view/InsetsAnimationThreadControlRunner;->-$$Nest$fgetmOuterCallbacks(Landroid/view/InsetsAnimationThreadControlRunner;)Landroid/view/InsetsAnimationControlCallbacks; -HSPLandroid/view/InsetsAnimationThreadControlRunner;->cancel()V -HSPLandroid/view/InsetsAnimationThreadControlRunner;->getAnimation()Landroid/view/WindowInsetsAnimation; -HSPLandroid/view/InsetsAnimationThreadControlRunner;->getAnimationType()I -HSPLandroid/view/InsetsAnimationThreadControlRunner;->getControllingTypes()I -HSPLandroid/view/InsetsAnimationThreadControlRunner;->getTypes()I -HSPLandroid/view/InsetsAnimationThreadControlRunner;->notifyControlRevoked(I)V -HSPLandroid/view/InsetsAnimationThreadControlRunner;->updateSurfacePosition(Landroid/util/SparseArray;)V -HSPLandroid/view/InsetsController$$ExternalSyntheticLambda10;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$$ExternalSyntheticLambda7;-><init>()V -HSPLandroid/view/InsetsController$$ExternalSyntheticLambda9;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$1;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$2;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$2;->onFinish(Landroid/view/InsetsState;Landroid/view/InsetsState;)V -HSPLandroid/view/InsetsController$3;-><init>(Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsController$3;->onFinish(Landroid/view/InsetsState;Landroid/view/InsetsState;)V -HSPLandroid/view/InsetsController$3;->onStart(Landroid/view/InsetsState;Landroid/view/InsetsState;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda0;->onAnimationUpdate(Landroid/animation/ValueAnimator;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda3;->getInterpolation(F)F -HSPLandroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda4;->getInterpolation(F)F -HSPLandroid/view/InsetsController$InternalAnimationControlListener;-><init>(ZZIIZILandroid/view/WindowInsetsAnimationControlListener;Landroid/view/inputmethod/ImeTracker$InputMethodJankContext;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->calculateDurationMs()J -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getAlphaInterpolator()Landroid/view/animation/Interpolator; -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getDurationMs()J -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->getInsetsInterpolator()Landroid/view/animation/Interpolator; -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$2(F)F -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$3(F)F -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->lambda$getAlphaInterpolator$4(F)F -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->onAnimationFinish()V -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->onCancelled(Landroid/view/WindowInsetsAnimationController;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->onFinished(Landroid/view/WindowInsetsAnimationController;)V -HSPLandroid/view/InsetsController$InternalAnimationControlListener;->onReady(Landroid/view/WindowInsetsAnimationController;I)V -HSPLandroid/view/InsetsController$RunningAnimation;-><init>(Landroid/view/InsetsAnimationControlRunner;I)V -HSPLandroid/view/InsetsController;->-$$Nest$sfgetsEvaluator()Landroid/animation/TypeEvaluator; -HSPLandroid/view/InsetsController;-><init>(Landroid/view/InsetsController$Host;)V -HSPLandroid/view/InsetsController;-><init>(Landroid/view/InsetsController$Host;Lcom/android/internal/util/function/TriFunction;Landroid/os/Handler;)V -HSPLandroid/view/InsetsController;->abortPendingImeControlRequest()V -HSPLandroid/view/InsetsController;->applyAnimation(IZZLandroid/view/inputmethod/ImeTracker$Token;)V -HSPLandroid/view/InsetsController;->applyAnimation(IZZZLandroid/view/inputmethod/ImeTracker$Token;)V -HSPLandroid/view/InsetsController;->applyLocalVisibilityOverride()V -HSPLandroid/view/InsetsController;->calculateControllableTypes()I -HSPLandroid/view/InsetsController;->calculateInsets(ZIIIII)Landroid/view/WindowInsets; -HSPLandroid/view/InsetsController;->calculateVisibleInsets(IIII)Landroid/graphics/Insets; -HSPLandroid/view/InsetsController;->cancelAnimation(Landroid/view/InsetsAnimationControlRunner;Z)V -HSPLandroid/view/InsetsController;->cancelExistingAnimations()V -HSPLandroid/view/InsetsController;->cancelExistingControllers(I)V -HSPLandroid/view/InsetsController;->collectSourceControls(ZILandroid/util/SparseArray;ILandroid/view/inputmethod/ImeTracker$Token;)Landroid/util/Pair; -HSPLandroid/view/InsetsController;->controlAnimationUncheckedInner(ILandroid/os/CancellationSignal;Landroid/view/WindowInsetsAnimationControlListener;Landroid/graphics/Rect;ZJLandroid/view/animation/Interpolator;IIZLandroid/view/inputmethod/ImeTracker$Token;)V -HSPLandroid/view/InsetsController;->dispatchAnimationEnd(Landroid/view/WindowInsetsAnimation;)V -HSPLandroid/view/InsetsController;->getAnimationType(I)I -HSPLandroid/view/InsetsController;->getHost()Landroid/view/InsetsController$Host; -HSPLandroid/view/InsetsController;->getLastDispatchedState()Landroid/view/InsetsState; -HSPLandroid/view/InsetsController;->getRequestedVisibleTypes()I -HSPLandroid/view/InsetsController;->getSourceConsumer(II)Landroid/view/InsetsSourceConsumer; -HSPLandroid/view/InsetsController;->getState()Landroid/view/InsetsState; -HSPLandroid/view/InsetsController;->getSystemBarsAppearance()I -HSPLandroid/view/InsetsController;->hide(I)V -HSPLandroid/view/InsetsController;->invokeControllableInsetsChangedListeners()I -HSPLandroid/view/InsetsController;->lambda$new$2(Landroid/view/InsetsController;Ljava/lang/Integer;Ljava/lang/Integer;)Landroid/view/InsetsSourceConsumer; -HSPLandroid/view/InsetsController;->lambda$static$1(FLandroid/graphics/Insets;Landroid/graphics/Insets;)Landroid/graphics/Insets; -HSPLandroid/view/InsetsController;->notifyControlRevoked(Landroid/view/InsetsSourceConsumer;)V -HSPLandroid/view/InsetsController;->notifyFinished(Landroid/view/InsetsAnimationControlRunner;Z)V -HSPLandroid/view/InsetsController;->notifyVisibilityChanged()V -HSPLandroid/view/InsetsController;->onControlsChanged([Landroid/view/InsetsSourceControl;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceConsumer;Landroid/view/ImeInsetsSourceConsumer;,Landroid/view/InsetsSourceConsumer;]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/InsetsController;->onFrameChanged(Landroid/graphics/Rect;)V -HSPLandroid/view/InsetsController;->onStateChanged(Landroid/view/InsetsState;)Z -HSPLandroid/view/InsetsController;->onWindowFocusGained(Z)V -HSPLandroid/view/InsetsController;->onWindowFocusLost()V -HSPLandroid/view/InsetsController;->reportPerceptible(IZ)V -HSPLandroid/view/InsetsController;->reportRequestedVisibleTypes()V -HSPLandroid/view/InsetsController;->setRequestedVisibleTypes(II)V -HSPLandroid/view/InsetsController;->show(I)V -HSPLandroid/view/InsetsController;->show(IZLandroid/view/inputmethod/ImeTracker$Token;)V -HSPLandroid/view/InsetsController;->updateCompatSysUiVisibility()V -HSPLandroid/view/InsetsController;->updateState(Landroid/view/InsetsState;)V -HSPLandroid/view/InsetsFlags;-><init>()V -HSPLandroid/view/InsetsSource$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/view/InsetsSource$1;Landroid/view/InsetsSource$1; -HSPLandroid/view/InsetsSource;-><init>(II)V -HSPLandroid/view/InsetsSource;-><init>(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/os/Parcelable$Creator;Landroid/graphics/Rect$1; -HSPLandroid/view/InsetsSource;-><init>(Landroid/view/InsetsSource;)V -HSPLandroid/view/InsetsSource;->calculateInsets(Landroid/graphics/Rect;Landroid/graphics/Rect;Z)Landroid/graphics/Insets;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource;->calculateInsets(Landroid/graphics/Rect;Z)Landroid/graphics/Insets; -HSPLandroid/view/InsetsSource;->calculateVisibleInsets(Landroid/graphics/Rect;)Landroid/graphics/Insets; -HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;)Z+]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource;->equals(Ljava/lang/Object;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Ljava/lang/Object;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource;->getFlags()I -HSPLandroid/view/InsetsSource;->getFrame()Landroid/graphics/Rect; -HSPLandroid/view/InsetsSource;->getId()I -HSPLandroid/view/InsetsSource;->getIntersection(Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/view/InsetsSource;->getType()I -HSPLandroid/view/InsetsSource;->getVisibleFrame()Landroid/graphics/Rect; -HSPLandroid/view/InsetsSource;->hasFlags(I)Z -HSPLandroid/view/InsetsSource;->isVisible()Z -HSPLandroid/view/InsetsSource;->setVisible(Z)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsSource;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/InsetsSourceConsumer;-><init>(IILandroid/view/InsetsState;Ljava/util/function/Supplier;Landroid/view/InsetsController;)V -HSPLandroid/view/InsetsSourceConsumer;->applyLocalVisibilityOverride()Z -HSPLandroid/view/InsetsSourceConsumer;->applyRequestedVisibilityToControl()V -HSPLandroid/view/InsetsSourceConsumer;->getControl()Landroid/view/InsetsSourceControl; -HSPLandroid/view/InsetsSourceConsumer;->getId()I -HSPLandroid/view/InsetsSourceConsumer;->getType()I -HSPLandroid/view/InsetsSourceConsumer;->isRequestedVisibleAwaitingControl()Z -HSPLandroid/view/InsetsSourceConsumer;->onPerceptible(Z)V -HSPLandroid/view/InsetsSourceConsumer;->onWindowFocusGained(Z)V -HSPLandroid/view/InsetsSourceConsumer;->onWindowFocusLost()V -HSPLandroid/view/InsetsSourceConsumer;->removeSurface()V -HSPLandroid/view/InsetsSourceConsumer;->setControl(Landroid/view/InsetsSourceControl;[I[I)Z -HSPLandroid/view/InsetsSourceConsumer;->updateSource(Landroid/view/InsetsSource;I)V -HSPLandroid/view/InsetsSourceControl$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsSourceControl; -HSPLandroid/view/InsetsSourceControl$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/InsetsSourceControl$1;->newArray(I)[Landroid/view/InsetsSourceControl; -HSPLandroid/view/InsetsSourceControl$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/view/InsetsSourceControl$Array$1;-><init>()V -HSPLandroid/view/InsetsSourceControl$Array;-><clinit>()V -HSPLandroid/view/InsetsSourceControl$Array;-><init>()V -HSPLandroid/view/InsetsSourceControl$Array;->get()[Landroid/view/InsetsSourceControl; -HSPLandroid/view/InsetsSourceControl$Array;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/view/InsetsSourceControl;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/InsetsSourceControl;-><init>(Landroid/view/InsetsSourceControl;)V -HSPLandroid/view/InsetsSourceControl;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/InsetsSourceControl;->getAndClearSkipAnimationOnce()Z -HSPLandroid/view/InsetsSourceControl;->getId()I -HSPLandroid/view/InsetsSourceControl;->getInsetsHint()Landroid/graphics/Insets; -HSPLandroid/view/InsetsSourceControl;->getLeash()Landroid/view/SurfaceControl; -HSPLandroid/view/InsetsSourceControl;->getSurfacePosition()Landroid/graphics/Point; -HSPLandroid/view/InsetsSourceControl;->getType()I -HSPLandroid/view/InsetsSourceControl;->hashCode()I -HSPLandroid/view/InsetsSourceControl;->isInitiallyVisible()Z -HSPLandroid/view/InsetsSourceControl;->release(Ljava/util/function/Consumer;)V -HSPLandroid/view/InsetsSourceControl;->setSurfacePosition(II)Z -HSPLandroid/view/InsetsState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsState; -HSPLandroid/view/InsetsState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/InsetsState$OnTraverseCallbacks;->onIdMatch(Landroid/view/InsetsSource;Landroid/view/InsetsSource;)V -HSPLandroid/view/InsetsState$OnTraverseCallbacks;->onStart(Landroid/view/InsetsState;Landroid/view/InsetsState;)V -HSPLandroid/view/InsetsState;-><init>()V -HSPLandroid/view/InsetsState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/InsetsState;-><init>(Landroid/view/InsetsState;Z)V -HSPLandroid/view/InsetsState;->addSource(Landroid/view/InsetsSource;)V -HSPLandroid/view/InsetsState;->calculateInsets(Landroid/graphics/Rect;II)Landroid/graphics/Insets; -HSPLandroid/view/InsetsState;->calculateInsets(Landroid/graphics/Rect;IZ)Landroid/graphics/Insets; -HSPLandroid/view/InsetsState;->calculateInsets(Landroid/graphics/Rect;Landroid/view/InsetsState;ZIIIIILandroid/util/SparseIntArray;)Landroid/view/WindowInsets; -HSPLandroid/view/InsetsState;->calculateRelativeCutout(Landroid/graphics/Rect;)Landroid/view/DisplayCutout; -HSPLandroid/view/InsetsState;->calculateRelativeDisplayShape(Landroid/graphics/Rect;)Landroid/view/DisplayShape; -HSPLandroid/view/InsetsState;->calculateRelativePrivacyIndicatorBounds(Landroid/graphics/Rect;)Landroid/view/PrivacyIndicatorBounds; -HSPLandroid/view/InsetsState;->calculateRelativeRoundedCorners(Landroid/graphics/Rect;)Landroid/view/RoundedCorners; -HSPLandroid/view/InsetsState;->calculateUncontrollableInsetsFromFrame(Landroid/graphics/Rect;)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->calculateVisibleInsets(Landroid/graphics/Rect;IIII)Landroid/graphics/Insets; -HSPLandroid/view/InsetsState;->canControlSource(Landroid/graphics/Rect;Landroid/view/InsetsSource;)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->clearsCompatInsets(IIII)Z -HSPLandroid/view/InsetsState;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/InsetsState;->equals(Ljava/lang/Object;ZZ)Z -HSPLandroid/view/InsetsState;->getDisplayCutout()Landroid/view/DisplayCutout; -HSPLandroid/view/InsetsState;->getDisplayCutoutSafe(Landroid/graphics/Rect;)V -HSPLandroid/view/InsetsState;->getDisplayFrame()Landroid/graphics/Rect; -HSPLandroid/view/InsetsState;->getDisplayShape()Landroid/view/DisplayShape; -HSPLandroid/view/InsetsState;->getPrivacyIndicatorBounds()Landroid/view/PrivacyIndicatorBounds; -HSPLandroid/view/InsetsState;->getRoundedCorners()Landroid/view/RoundedCorners; -HSPLandroid/view/InsetsState;->isSourceOrDefaultVisible(II)Z -HSPLandroid/view/InsetsState;->peekSource(I)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->readFromParcel(Landroid/os/Parcel;)Landroid/util/SparseArray;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayCutout$ParcelableWrapper;Landroid/view/DisplayCutout$ParcelableWrapper;]Landroid/view/InsetsSource;Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->set(Landroid/view/InsetsState;I)V -HSPLandroid/view/InsetsState;->set(Landroid/view/InsetsState;Z)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayCutout$ParcelableWrapper;Landroid/view/DisplayCutout$ParcelableWrapper;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState; -HSPLandroid/view/InsetsState;->setDisplayCutout(Landroid/view/DisplayCutout;)V -HSPLandroid/view/InsetsState;->setDisplayFrame(Landroid/graphics/Rect;)V -HSPLandroid/view/InsetsState;->setPrivacyIndicatorBounds(Landroid/view/PrivacyIndicatorBounds;)V -HSPLandroid/view/InsetsState;->setRoundedCorners(Landroid/view/RoundedCorners;)V -HSPLandroid/view/InsetsState;->sourceAt(I)Landroid/view/InsetsSource; -HSPLandroid/view/InsetsState;->sourceIdAt(I)I -HSPLandroid/view/InsetsState;->sourceSize()I -HSPLandroid/view/InsetsState;->traverse(Landroid/view/InsetsState;Landroid/view/InsetsState;Landroid/view/InsetsState$OnTraverseCallbacks;)V -HSPLandroid/view/InsetsState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/KeyCharacterMap$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/KeyCharacterMap; -HSPLandroid/view/KeyCharacterMap$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/KeyCharacterMap;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/KeyCharacterMap;->finalize()V -HSPLandroid/view/KeyCharacterMap;->get(II)I -HSPLandroid/view/KeyCharacterMap;->getKeyboardType()I -HSPLandroid/view/KeyCharacterMap;->getModifierBehavior()I -HSPLandroid/view/KeyCharacterMap;->load(I)Landroid/view/KeyCharacterMap; -HSPLandroid/view/KeyEvent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/KeyEvent; -HSPLandroid/view/KeyEvent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/KeyEvent$DispatcherState;-><init>()V -HSPLandroid/view/KeyEvent$DispatcherState;->handleUpEvent(Landroid/view/KeyEvent;)V -HSPLandroid/view/KeyEvent$DispatcherState;->isTracking(Landroid/view/KeyEvent;)Z -HSPLandroid/view/KeyEvent$DispatcherState;->reset()V -HSPLandroid/view/KeyEvent$DispatcherState;->reset(Ljava/lang/Object;)V -HSPLandroid/view/KeyEvent$DispatcherState;->startTracking(Landroid/view/KeyEvent;Ljava/lang/Object;)V -HSPLandroid/view/KeyEvent;-><init>(JJIIIIIIII)V -HSPLandroid/view/KeyEvent;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/KeyEvent;->actionToString(I)Ljava/lang/String; -HSPLandroid/view/KeyEvent;->dispatch(Landroid/view/KeyEvent$Callback;Landroid/view/KeyEvent$DispatcherState;Ljava/lang/Object;)Z -HSPLandroid/view/KeyEvent;->getAction()I -HSPLandroid/view/KeyEvent;->getDeviceId()I -HSPLandroid/view/KeyEvent;->getEventTime()J -HSPLandroid/view/KeyEvent;->getFlags()I -HSPLandroid/view/KeyEvent;->getId()I -HSPLandroid/view/KeyEvent;->getKeyCharacterMap()Landroid/view/KeyCharacterMap; -HSPLandroid/view/KeyEvent;->getKeyCode()I -HSPLandroid/view/KeyEvent;->getMetaState()I -HSPLandroid/view/KeyEvent;->getRepeatCount()I -HSPLandroid/view/KeyEvent;->getSource()I -HSPLandroid/view/KeyEvent;->getUnicodeChar()I -HSPLandroid/view/KeyEvent;->getUnicodeChar(I)I -HSPLandroid/view/KeyEvent;->isCanceled()Z -HSPLandroid/view/KeyEvent;->isModifierKey(I)Z -HSPLandroid/view/KeyEvent;->isTracking()Z -HSPLandroid/view/KeyEvent;->metaStateToString(I)Ljava/lang/String; -HSPLandroid/view/KeyEvent;->normalizeMetaState(I)I -HSPLandroid/view/KeyEvent;->obtain()Landroid/view/KeyEvent; -HSPLandroid/view/KeyEvent;->obtain(IJJIIIIIIIII[BLjava/lang/String;)Landroid/view/KeyEvent; -HSPLandroid/view/KeyEvent;->recycleIfNeededAfterDispatch()V -HSPLandroid/view/KeyEvent;->startTracking()V -HSPLandroid/view/KeyEvent;->toString()Ljava/lang/String; -HSPLandroid/view/KeyEvent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/LayoutInflater$FactoryMerger;-><init>(Landroid/view/LayoutInflater$Factory;Landroid/view/LayoutInflater$Factory2;Landroid/view/LayoutInflater$Factory;Landroid/view/LayoutInflater$Factory2;)V -HSPLandroid/view/LayoutInflater$FactoryMerger;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;-><init>(Landroid/content/Context;)V -HSPLandroid/view/LayoutInflater;-><init>(Landroid/view/LayoutInflater;Landroid/content/Context;)V -HSPLandroid/view/LayoutInflater;->advanceToRootNode(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLandroid/view/LayoutInflater;->consumeChildElements(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLandroid/view/LayoutInflater;->createView(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View;+]Landroid/content/Context;missing_types]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/ViewStub;Landroid/view/ViewStub;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/lang/reflect/Constructor;Ljava/lang/reflect/Constructor;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/view/LayoutInflater;->createView(Ljava/lang/String;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->createViewFromTag(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->createViewFromTag(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;Z)Landroid/view/View;+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/AttributeSet;Landroid/content/res/XmlBlock$Parser;]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; -HSPLandroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater; -HSPLandroid/view/LayoutInflater;->getContext()Landroid/content/Context; -HSPLandroid/view/LayoutInflater;->getFactory()Landroid/view/LayoutInflater$Factory; -HSPLandroid/view/LayoutInflater;->getFactory2()Landroid/view/LayoutInflater$Factory2; -HSPLandroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;Z)Landroid/view/View;+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/view/LayoutInflater;->onCreateView(Landroid/content/Context;Landroid/view/View;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->onCreateView(Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLandroid/view/LayoutInflater;->parseInclude(Lorg/xmlpull/v1/XmlPullParser;Landroid/content/Context;Landroid/view/View;Landroid/util/AttributeSet;)V -HSPLandroid/view/LayoutInflater;->rInflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/content/Context;Landroid/util/AttributeSet;Z)V+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/view/LayoutInflater;->rInflateChildren(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/View;Landroid/util/AttributeSet;Z)V+]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/View;missing_types -HSPLandroid/view/LayoutInflater;->setFactory2(Landroid/view/LayoutInflater$Factory2;)V -HSPLandroid/view/LayoutInflater;->setFilter(Landroid/view/LayoutInflater$Filter;)V -HSPLandroid/view/LayoutInflater;->setPrivateFactory(Landroid/view/LayoutInflater$Factory2;)V -HSPLandroid/view/LayoutInflater;->tryCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View;+]Landroid/view/LayoutInflater$Factory2;missing_types]Ljava/lang/Object;Ljava/lang/String; -HSPLandroid/view/LayoutInflater;->verifyClassLoader(Ljava/lang/reflect/Constructor;)Z+]Landroid/content/Context;missing_types]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/reflect/Constructor;Ljava/lang/reflect/Constructor; -HSPLandroid/view/MenuInflater;-><init>(Landroid/content/Context;)V -HSPLandroid/view/MotionEvent$PointerCoords;-><init>()V -HSPLandroid/view/MotionEvent$PointerProperties;-><init>()V -HSPLandroid/view/MotionEvent;-><init>()V -HSPLandroid/view/MotionEvent;->ensureSharedTempPointerCapacity(I)V -HSPLandroid/view/MotionEvent;->finalize()V -HSPLandroid/view/MotionEvent;->findPointerIndex(I)I -HSPLandroid/view/MotionEvent;->getAction()I -HSPLandroid/view/MotionEvent;->getActionIndex()I -HSPLandroid/view/MotionEvent;->getActionMasked()I -HSPLandroid/view/MotionEvent;->getAxisValue(I)F -HSPLandroid/view/MotionEvent;->getButtonState()I -HSPLandroid/view/MotionEvent;->getClassification()I -HSPLandroid/view/MotionEvent;->getDeviceId()I -HSPLandroid/view/MotionEvent;->getDownTime()J -HSPLandroid/view/MotionEvent;->getEdgeFlags()I -HSPLandroid/view/MotionEvent;->getEventTime()J -HSPLandroid/view/MotionEvent;->getFlags()I -HSPLandroid/view/MotionEvent;->getHistoricalEventTime(I)J -HSPLandroid/view/MotionEvent;->getHistoricalX(II)F -HSPLandroid/view/MotionEvent;->getHistoricalY(II)F -HSPLandroid/view/MotionEvent;->getHistorySize()I -HSPLandroid/view/MotionEvent;->getId()I -HSPLandroid/view/MotionEvent;->getMetaState()I -HSPLandroid/view/MotionEvent;->getOrientation()F -HSPLandroid/view/MotionEvent;->getPointerCount()I -HSPLandroid/view/MotionEvent;->getPointerId(I)I -HSPLandroid/view/MotionEvent;->getPointerIdBits()I -HSPLandroid/view/MotionEvent;->getPressure(I)F -HSPLandroid/view/MotionEvent;->getRawX()F -HSPLandroid/view/MotionEvent;->getRawY()F -HSPLandroid/view/MotionEvent;->getSource()I -HSPLandroid/view/MotionEvent;->getToolType(I)I -HSPLandroid/view/MotionEvent;->getTouchMajor()F -HSPLandroid/view/MotionEvent;->getTouchMinor()F -HSPLandroid/view/MotionEvent;->getX()F -HSPLandroid/view/MotionEvent;->getX(I)F -HSPLandroid/view/MotionEvent;->getY()F -HSPLandroid/view/MotionEvent;->getY(I)F -HSPLandroid/view/MotionEvent;->initialize(IIIIIIIIIFFFFJJI[Landroid/view/MotionEvent$PointerProperties;[Landroid/view/MotionEvent$PointerCoords;)Z -HSPLandroid/view/MotionEvent;->isTargetAccessibilityFocus()Z -HSPLandroid/view/MotionEvent;->isTouchEvent()Z -HSPLandroid/view/MotionEvent;->obtain()Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->obtain(JJIFFFFIFFII)Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->obtain(JJIFFFFIFFIIII)Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->obtain(Landroid/view/MotionEvent;)Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->offsetLocation(FF)V -HSPLandroid/view/MotionEvent;->recycle()V -HSPLandroid/view/MotionEvent;->setAction(I)V -HSPLandroid/view/MotionEvent;->setLocation(FF)V -HSPLandroid/view/MotionEvent;->setTargetAccessibilityFocus(Z)V -HSPLandroid/view/MotionEvent;->split(I)Landroid/view/MotionEvent; -HSPLandroid/view/MotionEvent;->transform(Landroid/graphics/Matrix;)V -HSPLandroid/view/MotionEvent;->updateCursorPosition()V -HSPLandroid/view/OrientationEventListener$SensorEventListenerImpl;->onAccuracyChanged(Landroid/hardware/Sensor;I)V -HSPLandroid/view/OrientationEventListener$SensorEventListenerImpl;->onSensorChanged(Landroid/hardware/SensorEvent;)V -HSPLandroid/view/OrientationEventListener;-><init>(Landroid/content/Context;)V -HSPLandroid/view/OrientationEventListener;-><init>(Landroid/content/Context;I)V -HSPLandroid/view/OrientationEventListener;->disable()V -HSPLandroid/view/OrientationEventListener;->enable()V -HSPLandroid/view/PendingInsetsController;-><init>()V -HSPLandroid/view/PendingInsetsController;->detach()V -HSPLandroid/view/PendingInsetsController;->getRequestedVisibleTypes()I -HSPLandroid/view/PendingInsetsController;->getSystemBarsAppearance()I -HSPLandroid/view/PendingInsetsController;->replayAndAttach(Landroid/view/InsetsController;)V -HSPLandroid/view/PointerIcon;->getSystemIcon(Landroid/content/Context;I)Landroid/view/PointerIcon; -HSPLandroid/view/PointerIcon;->getSystemIconTypeIndex(I)I -HSPLandroid/view/PrivacyIndicatorBounds$1;-><init>()V -HSPLandroid/view/PrivacyIndicatorBounds$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/PrivacyIndicatorBounds; -HSPLandroid/view/PrivacyIndicatorBounds$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/PrivacyIndicatorBounds;-><clinit>()V -HSPLandroid/view/PrivacyIndicatorBounds;-><init>()V -HSPLandroid/view/PrivacyIndicatorBounds;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/PrivacyIndicatorBounds;-><init>([Landroid/graphics/Rect;I)V -HSPLandroid/view/PrivacyIndicatorBounds;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/PrivacyIndicatorBounds;->inset(IIII)Landroid/view/PrivacyIndicatorBounds; -HSPLandroid/view/PrivacyIndicatorBounds;->insetRect(Landroid/graphics/Rect;IIII)Landroid/graphics/Rect; -HSPLandroid/view/PrivacyIndicatorBounds;->updateStaticBounds([Landroid/graphics/Rect;)Landroid/view/PrivacyIndicatorBounds; -HSPLandroid/view/PrivacyIndicatorBounds;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/RemoteAccessibilityController;-><init>(Landroid/view/View;)V -HSPLandroid/view/RemoteAccessibilityController;->connected()Z -HSPLandroid/view/RemoteAccessibilityController;->disassosciateHierarchy()V -HSPLandroid/view/RemoteAccessibilityController;->setRemoteAccessibilityEmbeddedConnection(Landroid/view/accessibility/IAccessibilityEmbeddedConnection;Landroid/os/IBinder;)V -HSPLandroid/view/RemoteAnimationAdapter;-><init>(Landroid/view/IRemoteAnimationRunner;JJ)V -HSPLandroid/view/RemoteAnimationAdapter;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/RoundedCorner$1;-><init>()V -HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/RoundedCorner;+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/view/RoundedCorner$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/view/RoundedCorner$1;Landroid/view/RoundedCorner$1; -HSPLandroid/view/RoundedCorner;-><clinit>()V -HSPLandroid/view/RoundedCorner;-><init>(I)V -HSPLandroid/view/RoundedCorner;-><init>(IIII)V -HSPLandroid/view/RoundedCorner;->equals(Ljava/lang/Object;)Z+]Landroid/graphics/Point;Landroid/graphics/Point; -HSPLandroid/view/RoundedCorner;->getCenter()Landroid/graphics/Point; -HSPLandroid/view/RoundedCorner;->getRadius()I -HSPLandroid/view/RoundedCorner;->isEmpty()Z -HSPLandroid/view/RoundedCorners$1;-><init>()V -HSPLandroid/view/RoundedCorners$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/RoundedCorners; -HSPLandroid/view/RoundedCorners$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/RoundedCorners;-><clinit>()V -HSPLandroid/view/RoundedCorners;-><init>(Landroid/view/RoundedCorner;Landroid/view/RoundedCorner;Landroid/view/RoundedCorner;Landroid/view/RoundedCorner;)V -HSPLandroid/view/RoundedCorners;-><init>([Landroid/view/RoundedCorner;)V -HSPLandroid/view/RoundedCorners;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/RoundedCorners;->getRoundedCornerBottomRadius(Landroid/content/res/Resources;Ljava/lang/String;)I -HSPLandroid/view/RoundedCorners;->getRoundedCornerRadius(Landroid/content/res/Resources;Ljava/lang/String;)I -HSPLandroid/view/RoundedCorners;->getRoundedCornerTopRadius(Landroid/content/res/Resources;Ljava/lang/String;)I -HSPLandroid/view/RoundedCorners;->inset(IIII)Landroid/view/RoundedCorners; -HSPLandroid/view/RoundedCorners;->insetRoundedCorner(IIIIIIII)Landroid/view/RoundedCorner; -HSPLandroid/view/RoundedCorners;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/ScaleGestureDetector;-><init>(Landroid/content/Context;Landroid/view/ScaleGestureDetector$OnScaleGestureListener;)V -HSPLandroid/view/ScaleGestureDetector;-><init>(Landroid/content/Context;Landroid/view/ScaleGestureDetector$OnScaleGestureListener;Landroid/os/Handler;)V -HSPLandroid/view/ScaleGestureDetector;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/ScaleGestureDetector;->setQuickScaleEnabled(Z)V -HSPLandroid/view/ScaleGestureDetector;->setStylusScaleEnabled(Z)V -HSPLandroid/view/Surface$CompatibleCanvas;-><init>(Landroid/view/Surface;)V -HSPLandroid/view/Surface;-><init>()V -HSPLandroid/view/Surface;-><init>(J)V -HSPLandroid/view/Surface;-><init>(Landroid/graphics/SurfaceTexture;)V -HSPLandroid/view/Surface;->checkNotReleasedLocked()V -HSPLandroid/view/Surface;->copyFrom(Landroid/graphics/BLASTBufferQueue;)V -HSPLandroid/view/Surface;->copyFrom(Landroid/view/SurfaceControl;)V -HSPLandroid/view/Surface;->destroy()V -HSPLandroid/view/Surface;->finalize()V -HSPLandroid/view/Surface;->forceScopedDisconnect()V -HSPLandroid/view/Surface;->getGenerationId()I -HSPLandroid/view/Surface;->getNextFrameNumber()J -HSPLandroid/view/Surface;->isValid()Z -HSPLandroid/view/Surface;->lockCanvas(Landroid/graphics/Rect;)Landroid/graphics/Canvas; -HSPLandroid/view/Surface;->release()V -HSPLandroid/view/Surface;->rotationToString(I)Ljava/lang/String; -HSPLandroid/view/Surface;->setNativeObjectLocked(J)V -HSPLandroid/view/Surface;->transferFrom(Landroid/view/Surface;)V -HSPLandroid/view/Surface;->unlockCanvasAndPost(Landroid/graphics/Canvas;)V -HSPLandroid/view/Surface;->unlockSwCanvasAndPost(Landroid/graphics/Canvas;)V -HSPLandroid/view/Surface;->updateNativeObject(J)V -HSPLandroid/view/Surface;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/SurfaceControl$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/SurfaceControl; -HSPLandroid/view/SurfaceControl$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/SurfaceControl$Builder;-><init>(Landroid/view/SurfaceSession;)V -HSPLandroid/view/SurfaceControl$Builder;->build()Landroid/view/SurfaceControl; -HSPLandroid/view/SurfaceControl$Builder;->setBLASTLayer()Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setBufferSize(II)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setCallsite(Ljava/lang/String;)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setColorLayer()Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setContainerLayer()Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setFlags(I)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setFlags(II)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setFormat(I)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setHidden(Z)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setLocalOwnerView(Landroid/view/View;)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setName(Ljava/lang/String;)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setOpaque(Z)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->setParent(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Builder; -HSPLandroid/view/SurfaceControl$Builder;->unsetBufferSize()V -HSPLandroid/view/SurfaceControl$Transaction;-><init>()V -HSPLandroid/view/SurfaceControl$Transaction;-><init>(J)V -HSPLandroid/view/SurfaceControl$Transaction;->apply()V -HSPLandroid/view/SurfaceControl$Transaction;->apply(Z)V -HSPLandroid/view/SurfaceControl$Transaction;->applyResizedSurfaces()V -HSPLandroid/view/SurfaceControl$Transaction;->checkPreconditions(Landroid/view/SurfaceControl;)V -HSPLandroid/view/SurfaceControl$Transaction;->clear()V -HSPLandroid/view/SurfaceControl$Transaction;->close()V -HSPLandroid/view/SurfaceControl$Transaction;->hide(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->merge(Landroid/view/SurfaceControl$Transaction;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->notifyReparentedSurfaces()V -HSPLandroid/view/SurfaceControl$Transaction;->remove(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->reparent(Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->sanitize(II)V -HSPLandroid/view/SurfaceControl$Transaction;->setAlpha(Landroid/view/SurfaceControl;F)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setBufferSize(Landroid/view/SurfaceControl;II)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setColor(Landroid/view/SurfaceControl;[F)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setCornerRadius(Landroid/view/SurfaceControl;F)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setDesintationFrame(Landroid/view/SurfaceControl;II)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setExtendedRangeBrightness(Landroid/view/SurfaceControl;FF)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setFrameTimelineVsync(J)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setLayer(Landroid/view/SurfaceControl;I)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setMatrix(Landroid/view/SurfaceControl;FFFF)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setMatrix(Landroid/view/SurfaceControl;Landroid/graphics/Matrix;[F)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setOpaque(Landroid/view/SurfaceControl;Z)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setPosition(Landroid/view/SurfaceControl;FF)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setRelativeLayer(Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;I)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setWindowCrop(Landroid/view/SurfaceControl;II)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->setWindowCrop(Landroid/view/SurfaceControl;Landroid/graphics/Rect;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->show(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceControl$Transaction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeCreateTransaction()J -HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSanitize(JII)V -HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetDestinationFrame(JJIIII)V -HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetExtendedRangeBrightness(JJFF)V -HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFlags(JJII)V -HSPLandroid/view/SurfaceControl;-><init>()V -HSPLandroid/view/SurfaceControl;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/SurfaceControl;-><init>(Landroid/view/SurfaceControl;Ljava/lang/String;)V -HSPLandroid/view/SurfaceControl;-><init>(Landroid/view/SurfaceSession;Ljava/lang/String;IIIILandroid/view/SurfaceControl;Landroid/util/SparseIntArray;Ljava/lang/ref/WeakReference;Ljava/lang/String;)V -HSPLandroid/view/SurfaceControl;->assignNativeObject(JLjava/lang/String;)V -HSPLandroid/view/SurfaceControl;->checkNotReleased()V -HSPLandroid/view/SurfaceControl;->copyFrom(Landroid/view/SurfaceControl;Ljava/lang/String;)V -HSPLandroid/view/SurfaceControl;->finalize()V -HSPLandroid/view/SurfaceControl;->getTransformHint()I -HSPLandroid/view/SurfaceControl;->isSameSurface(Landroid/view/SurfaceControl;)Z -HSPLandroid/view/SurfaceControl;->isValid()Z -HSPLandroid/view/SurfaceControl;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/view/SurfaceControl;->release()V -HSPLandroid/view/SurfaceControl;->rotationToBufferTransform(I)I -HSPLandroid/view/SurfaceControl;->setTransformHint(I)V -HSPLandroid/view/SurfaceControlRegistry$DefaultReporter;-><init>()V -HSPLandroid/view/SurfaceControlRegistry$DefaultReporter;-><init>(Landroid/view/SurfaceControlRegistry$DefaultReporter-IA;)V -HSPLandroid/view/SurfaceControlRegistry;-><clinit>()V -HSPLandroid/view/SurfaceControlRegistry;->getProcessInstance()Landroid/view/SurfaceControlRegistry; -HSPLandroid/view/SurfaceSession;-><init>()V -HSPLandroid/view/SurfaceSession;->finalize()V -HSPLandroid/view/SurfaceSession;->kill()V -HSPLandroid/view/SurfaceView$$ExternalSyntheticLambda1;-><init>(Landroid/view/SurfaceView;)V -HSPLandroid/view/SurfaceView$1;-><init>(Landroid/view/SurfaceView;)V -HSPLandroid/view/SurfaceView$SurfaceViewPositionUpdateListener;-><init>(Landroid/view/SurfaceView;II)V -HSPLandroid/view/SurfaceView$SurfaceViewPositionUpdateListener;->positionChanged(JIIII)V -HSPLandroid/view/SurfaceView$SurfaceViewPositionUpdateListener;->positionLost(J)V -HSPLandroid/view/SurfaceView;->-$$Nest$fgetmRTLastReportedPosition(Landroid/view/SurfaceView;)Landroid/graphics/Rect; -HSPLandroid/view/SurfaceView;->-$$Nest$fgetmRtTransaction(Landroid/view/SurfaceView;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceView;->-$$Nest$mapplyOrMergeTransaction(Landroid/view/SurfaceView;Landroid/view/SurfaceControl$Transaction;J)V -HSPLandroid/view/SurfaceView;-><init>(Landroid/content/Context;)V -HSPLandroid/view/SurfaceView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/SurfaceView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/view/SurfaceView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IIZ)V -HSPLandroid/view/SurfaceView;->applyOrMergeTransaction(Landroid/view/SurfaceControl$Transaction;J)V -HSPLandroid/view/SurfaceView;->applyTransactionOnVriDraw(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SurfaceView;->clearSurfaceViewPort(Landroid/graphics/Canvas;)V -HSPLandroid/view/SurfaceView;->copySurface(ZZ)V -HSPLandroid/view/SurfaceView;->createBlastSurfaceControls(Landroid/view/ViewRootImpl;Ljava/lang/String;Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SurfaceView;->dispatchDraw(Landroid/graphics/Canvas;)V -HSPLandroid/view/SurfaceView;->gatherTransparentRegion(Landroid/graphics/Region;)Z -HSPLandroid/view/SurfaceView;->getHolder()Landroid/view/SurfaceHolder; -HSPLandroid/view/SurfaceView;->getSurfaceCallbacks()[Landroid/view/SurfaceHolder$Callback; -HSPLandroid/view/SurfaceView;->notifySurfaceDestroyed()V -HSPLandroid/view/SurfaceView;->onAttachedToWindow()V -HSPLandroid/view/SurfaceView;->onDetachedFromWindow()V -HSPLandroid/view/SurfaceView;->onDrawFinished()V -HSPLandroid/view/SurfaceView;->onMeasure(II)V -HSPLandroid/view/SurfaceView;->onSetSurfacePositionAndScale(Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl;IIFF)V -HSPLandroid/view/SurfaceView;->onWindowVisibilityChanged(I)V -HSPLandroid/view/SurfaceView;->performDrawFinished()V -HSPLandroid/view/SurfaceView;->releaseSurfaces(Z)V -HSPLandroid/view/SurfaceView;->replacePositionUpdateListener(II)V -HSPLandroid/view/SurfaceView;->requiresSurfaceControlCreation(ZZ)Z -HSPLandroid/view/SurfaceView;->setFrame(IIII)Z -HSPLandroid/view/SurfaceView;->setVisibility(I)V -HSPLandroid/view/SurfaceView;->setZOrderOnTop(Z)V -HSPLandroid/view/SurfaceView;->setZOrderedOnTop(ZZ)Z -HSPLandroid/view/SurfaceView;->surfaceCreated(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SurfaceView;->surfaceDestroyed()V -HSPLandroid/view/SurfaceView;->updateBackgroundColor(Landroid/view/SurfaceControl$Transaction;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/view/SurfaceView;->updateBackgroundVisibility(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SurfaceView;->updateEmbeddedAccessibilityMatrix(Z)V -HSPLandroid/view/SurfaceView;->updateRelativeZ(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SurfaceView;->updateSurface()V -HSPLandroid/view/SurfaceView;->vriDrawStarted(Z)V -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder;-><init>(Landroid/view/SurfaceControl;)V -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder;->build()Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams; -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder;->withAlpha(F)Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder; -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder;->withMatrix(Landroid/graphics/Matrix;)Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder; -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder;->withVisibility(Z)Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder; -HSPLandroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;-><init>(Landroid/view/SurfaceControl;IFLandroid/graphics/Matrix;Landroid/graphics/Rect;IFIZLandroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/SyncRtSurfaceTransactionApplier;->applyParams(Landroid/view/SurfaceControl$Transaction;Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;[F)V -HSPLandroid/view/TextureView;-><init>(Landroid/content/Context;)V -HSPLandroid/view/TextureView;->applyUpdate()V -HSPLandroid/view/TextureView;->destroyHardwareLayer()V -HSPLandroid/view/TextureView;->destroyHardwareResources()V -HSPLandroid/view/TextureView;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/view/TextureView;->getLayerType()I -HSPLandroid/view/TextureView;->getTextureLayer()Landroid/graphics/TextureLayer; -HSPLandroid/view/TextureView;->isOpaque()Z -HSPLandroid/view/TextureView;->onAttachedToWindow()V -HSPLandroid/view/TextureView;->onDetachedFromWindowInternal()V -HSPLandroid/view/TextureView;->onSizeChanged(IIII)V -HSPLandroid/view/TextureView;->onVisibilityChanged(Landroid/view/View;I)V -HSPLandroid/view/TextureView;->releaseSurfaceTexture()V -HSPLandroid/view/TextureView;->setSurfaceTextureListener(Landroid/view/TextureView$SurfaceTextureListener;)V -HSPLandroid/view/TextureView;->updateLayer()V -HSPLandroid/view/ThreadedRenderer$1$$ExternalSyntheticLambda0;-><init>(Ljava/util/ArrayList;)V -HSPLandroid/view/ThreadedRenderer$1$$ExternalSyntheticLambda0;->onFrameCommit(Z)V -HSPLandroid/view/ThreadedRenderer$1;-><init>(Landroid/view/ThreadedRenderer;Ljava/util/ArrayList;)V -HSPLandroid/view/ThreadedRenderer$1;->lambda$onFrameDraw$0(Ljava/util/ArrayList;Z)V -HSPLandroid/view/ThreadedRenderer$1;->onFrameDraw(IJ)Landroid/graphics/HardwareRenderer$FrameCommitCallback; -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->-$$Nest$fgetmSurfaceControl(Landroid/view/ThreadedRenderer$WebViewOverlayProvider;)Landroid/view/SurfaceControl; -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><clinit>()V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><init>()V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;-><init>(Landroid/view/ThreadedRenderer$WebViewOverlayProvider-IA;)V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setBLASTBufferQueue(Landroid/graphics/BLASTBufferQueue;)V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setSurfaceControl(Landroid/view/SurfaceControl;)V -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->setSurfaceControlOpaque(Z)Z -HSPLandroid/view/ThreadedRenderer$WebViewOverlayProvider;->shouldEnableOverlaySupport()Z -HSPLandroid/view/ThreadedRenderer;-><init>(Landroid/content/Context;ZLjava/lang/String;)V -HSPLandroid/view/ThreadedRenderer;->access$000()Z -HSPLandroid/view/ThreadedRenderer;->create(Landroid/content/Context;ZLjava/lang/String;)Landroid/view/ThreadedRenderer; -HSPLandroid/view/ThreadedRenderer;->destroy()V -HSPLandroid/view/ThreadedRenderer;->destroyHardwareResources(Landroid/view/View;)V -HSPLandroid/view/ThreadedRenderer;->destroyResources(Landroid/view/View;)V -HSPLandroid/view/ThreadedRenderer;->draw(Landroid/view/View;Landroid/view/View$AttachInfo;Landroid/view/ThreadedRenderer$DrawCallbacks;)V -HSPLandroid/view/ThreadedRenderer;->dumpArgsToFlags([Ljava/lang/String;)I -HSPLandroid/view/ThreadedRenderer;->getHeight()I -HSPLandroid/view/ThreadedRenderer;->getWidth()I -HSPLandroid/view/ThreadedRenderer;->handleDumpGfxInfo(Ljava/io/FileDescriptor;[Ljava/lang/String;)V -HSPLandroid/view/ThreadedRenderer;->initialize(Landroid/view/Surface;)Z -HSPLandroid/view/ThreadedRenderer;->initializeIfNeeded(IILandroid/view/View$AttachInfo;Landroid/view/Surface;Landroid/graphics/Rect;)Z -HSPLandroid/view/ThreadedRenderer;->invalidateRoot()V -HSPLandroid/view/ThreadedRenderer;->isEnabled()Z -HSPLandroid/view/ThreadedRenderer;->isRequested()Z -HSPLandroid/view/ThreadedRenderer;->loadSystemProperties()Z -HSPLandroid/view/ThreadedRenderer;->registerRtFrameCallback(Landroid/graphics/HardwareRenderer$FrameDrawingCallback;)V -HSPLandroid/view/ThreadedRenderer;->rendererOwnsSurfaceControlOpacity()Z -HSPLandroid/view/ThreadedRenderer;->setEnabled(Z)V -HSPLandroid/view/ThreadedRenderer;->setLightCenter(Landroid/view/View$AttachInfo;)V -HSPLandroid/view/ThreadedRenderer;->setRequested(Z)V -HSPLandroid/view/ThreadedRenderer;->setSurface(Landroid/view/Surface;)V -HSPLandroid/view/ThreadedRenderer;->setSurfaceControl(Landroid/view/SurfaceControl;Landroid/graphics/BLASTBufferQueue;)V -HSPLandroid/view/ThreadedRenderer;->setSurfaceControlOpaque(Z)Z -HSPLandroid/view/ThreadedRenderer;->setup(IILandroid/view/View$AttachInfo;Landroid/graphics/Rect;)V -HSPLandroid/view/ThreadedRenderer;->updateEnabledState(Landroid/view/Surface;)V -HSPLandroid/view/ThreadedRenderer;->updateRootDisplayList(Landroid/view/View;Landroid/view/ThreadedRenderer$DrawCallbacks;)V -HSPLandroid/view/ThreadedRenderer;->updateSurface(Landroid/view/Surface;)V -HSPLandroid/view/ThreadedRenderer;->updateViewTreeDisplayList(Landroid/view/View;)V -HSPLandroid/view/ThreadedRenderer;->updateWebViewOverlayCallbacks()V -HSPLandroid/view/TouchDelegate;-><init>(Landroid/graphics/Rect;Landroid/view/View;)V -HSPLandroid/view/VelocityTracker;-><init>(I)V -HSPLandroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V -HSPLandroid/view/VelocityTracker;->clear()V -HSPLandroid/view/VelocityTracker;->computeCurrentVelocity(I)V -HSPLandroid/view/VelocityTracker;->computeCurrentVelocity(IF)V -HSPLandroid/view/VelocityTracker;->finalize()V -HSPLandroid/view/VelocityTracker;->getXVelocity()F -HSPLandroid/view/VelocityTracker;->getXVelocity(I)F -HSPLandroid/view/VelocityTracker;->getYVelocity()F -HSPLandroid/view/VelocityTracker;->getYVelocity(I)F -HSPLandroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker; -HSPLandroid/view/VelocityTracker;->recycle()V -HSPLandroid/view/View$$ExternalSyntheticLambda4;-><init>(Landroid/view/View;)V -HSPLandroid/view/View$$ExternalSyntheticLambda4;->run()V -HSPLandroid/view/View$$ExternalSyntheticLambda5;->run()V -HSPLandroid/view/View$$ExternalSyntheticLambda7;-><init>(Landroid/view/View;)V -HSPLandroid/view/View$$ExternalSyntheticLambda7;->run()V -HSPLandroid/view/View$12;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$12;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$12;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$12;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$13;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$13;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$13;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$13;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$1;-><init>(Landroid/view/View;Landroid/view/View$ListenerInfo;)V -HSPLandroid/view/View$1;->positionChanged(JIIII)V -HSPLandroid/view/View$1;->positionLost(J)V -HSPLandroid/view/View$2;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$2;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$2;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$2;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$3;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$3;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$3;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$3;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$4;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$4;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$4;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$4;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$5;->get(Landroid/view/View;)Ljava/lang/Float; -HSPLandroid/view/View$5;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/View$5;->setValue(Landroid/view/View;F)V -HSPLandroid/view/View$5;->setValue(Ljava/lang/Object;F)V -HSPLandroid/view/View$AccessibilityDelegate;-><init>()V -HSPLandroid/view/View$AccessibilityDelegate;->getAccessibilityNodeProvider(Landroid/view/View;)Landroid/view/accessibility/AccessibilityNodeProvider; -HSPLandroid/view/View$AccessibilityDelegate;->sendAccessibilityEvent(Landroid/view/View;I)V -HSPLandroid/view/View$AttachInfo;-><init>(Landroid/view/IWindowSession;Landroid/view/IWindow;Landroid/view/Display;Landroid/view/ViewRootImpl;Landroid/os/Handler;Landroid/view/View$AttachInfo$Callbacks;Landroid/content/Context;)V -HSPLandroid/view/View$AttachInfo;->delayNotifyContentCaptureInsetsEvent(Landroid/graphics/Insets;)V -HSPLandroid/view/View$AttachInfo;->ensureEvents(Landroid/view/contentcapture/ContentCaptureSession;)Ljava/util/ArrayList; -HSPLandroid/view/View$BaseSavedState$1;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Landroid/view/View$BaseSavedState; -HSPLandroid/view/View$BaseSavedState$1;->createFromParcel(Landroid/os/Parcel;Ljava/lang/ClassLoader;)Ljava/lang/Object; -HSPLandroid/view/View$BaseSavedState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/View$BaseSavedState;-><init>(Landroid/os/Parcel;Ljava/lang/ClassLoader;)V -HSPLandroid/view/View$BaseSavedState;-><init>(Landroid/os/Parcelable;)V -HSPLandroid/view/View$BaseSavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/View$CheckForLongPress;->run()V -HSPLandroid/view/View$CheckForTap;->run()V -HSPLandroid/view/View$ForegroundInfo;->-$$Nest$fgetmInsidePadding(Landroid/view/View$ForegroundInfo;)Z -HSPLandroid/view/View$ForegroundInfo;->-$$Nest$fputmInsidePadding(Landroid/view/View$ForegroundInfo;Z)V -HSPLandroid/view/View$ForegroundInfo;-><init>()V -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fgetmHandwritingArea(Landroid/view/View$ListenerInfo;)Landroid/graphics/Rect; -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fgetmKeepClearRects(Landroid/view/View$ListenerInfo;)Ljava/util/List; -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fgetmPreferKeepClear(Landroid/view/View$ListenerInfo;)Z -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fgetmUnrestrictedKeepClearRects(Landroid/view/View$ListenerInfo;)Ljava/util/List; -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fputmHandwritingArea(Landroid/view/View$ListenerInfo;Landroid/graphics/Rect;)V -HSPLandroid/view/View$ListenerInfo;->-$$Nest$fputmPositionChangedUpdate(Landroid/view/View$ListenerInfo;Ljava/lang/Runnable;)V -HSPLandroid/view/View$ListenerInfo;-><init>()V -HSPLandroid/view/View$MeasureSpec;->getMode(I)I -HSPLandroid/view/View$MeasureSpec;->getSize(I)I -HSPLandroid/view/View$MeasureSpec;->makeMeasureSpec(II)I -HSPLandroid/view/View$MeasureSpec;->makeSafeMeasureSpec(II)I -HSPLandroid/view/View$PerformClick;->run()V -HSPLandroid/view/View$ScrollabilityCache;-><init>(Landroid/view/ViewConfiguration;Landroid/view/View;)V -HSPLandroid/view/View$ScrollabilityCache;->run()V -HSPLandroid/view/View$TintInfo;-><init>()V -HSPLandroid/view/View$TransformationInfo;-><init>()V -HSPLandroid/view/View$UnsetPressedState;->run()V -HSPLandroid/view/View$VisibilityChangeForAutofillHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/View;-><init>(Landroid/content/Context;)V+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types]Landroid/view/ViewConfiguration;Landroid/view/ViewConfiguration;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types -HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types -HSPLandroid/view/View;->addFocusables(Ljava/util/ArrayList;I)V -HSPLandroid/view/View;->addFocusables(Ljava/util/ArrayList;II)V -HSPLandroid/view/View;->addFrameMetricsListener(Landroid/view/Window;Landroid/view/Window$OnFrameMetricsAvailableListener;Landroid/os/Handler;)V -HSPLandroid/view/View;->addOnAttachStateChangeListener(Landroid/view/View$OnAttachStateChangeListener;)V -HSPLandroid/view/View;->addOnLayoutChangeListener(Landroid/view/View$OnLayoutChangeListener;)V+]Landroid/view/View;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/View;->animate()Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/View;->announceForAccessibility(Ljava/lang/CharSequence;)V -HSPLandroid/view/View;->appendId(Ljava/lang/StringBuilder;)V -HSPLandroid/view/View;->applyBackgroundTint()V -HSPLandroid/view/View;->applyForegroundTint()V -HSPLandroid/view/View;->applyInsets(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->applyLegacyAnimation(Landroid/view/ViewGroup;JLandroid/view/animation/Animation;Z)Z+]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/View;missing_types]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; -HSPLandroid/view/View;->areDrawablesResolved()Z -HSPLandroid/view/View;->assignParent(Landroid/view/ViewParent;)V -HSPLandroid/view/View;->awakenScrollBars()Z -HSPLandroid/view/View;->awakenScrollBars(IZ)Z+]Landroid/os/Handler;Landroid/view/ViewRootImpl$ViewRootHandler;]Landroid/view/View;missing_types -HSPLandroid/view/View;->bringToFront()V -HSPLandroid/view/View;->buildDrawingCache(Z)V -HSPLandroid/view/View;->buildDrawingCacheImpl(Z)V -HSPLandroid/view/View;->buildLayer()V -HSPLandroid/view/View;->calculateAccessibilityDataSensitive()V -HSPLandroid/view/View;->calculateIsImportantForContentCapture()Z -HSPLandroid/view/View;->canHaveDisplayList()Z -HSPLandroid/view/View;->canNotifyAutofillEnterExitEvent()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->canReceivePointerEvents()Z -HSPLandroid/view/View;->canResolveLayoutDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->canResolveTextDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->canScrollHorizontally(I)Z -HSPLandroid/view/View;->canScrollVertically(I)Z -HSPLandroid/view/View;->canTakeFocus()Z -HSPLandroid/view/View;->cancel(Landroid/view/View$SendAccessibilityEventThrottle;)V -HSPLandroid/view/View;->cancelLongPress()V -HSPLandroid/view/View;->cancelPendingInputEvents()V -HSPLandroid/view/View;->checkForLongClick(JFFI)V -HSPLandroid/view/View;->checkInputConnectionProxy(Landroid/view/View;)Z -HSPLandroid/view/View;->cleanupDraw()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->clearAccessibilityFocus()V+]Landroid/view/View;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->clearAccessibilityFocusNoCallbacks(I)V -HSPLandroid/view/View;->clearAccessibilityThrottles()V -HSPLandroid/view/View;->clearAnimation()V -HSPLandroid/view/View;->clearFocus()V -HSPLandroid/view/View;->clearFocusInternal(Landroid/view/View;ZZ)V -HSPLandroid/view/View;->clearParentsWantFocus()V -HSPLandroid/view/View;->clearTranslationState()V -HSPLandroid/view/View;->clearViewTranslationResponse()V -HSPLandroid/view/View;->collectPreferKeepClearRects()Ljava/util/List;+]Landroid/view/View;missing_types -HSPLandroid/view/View;->collectUnrestrictedPreferKeepClearRects()Ljava/util/List; -HSPLandroid/view/View;->combineMeasuredStates(II)I -HSPLandroid/view/View;->combineVisibility(II)I -HSPLandroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->computeHorizontalScrollExtent()I -HSPLandroid/view/View;->computeHorizontalScrollOffset()I -HSPLandroid/view/View;->computeHorizontalScrollRange()I -HSPLandroid/view/View;->computeOpaqueFlags()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->computeScroll()V -HSPLandroid/view/View;->computeSystemWindowInsets(Landroid/view/WindowInsets;Landroid/graphics/Rect;)Landroid/view/WindowInsets; -HSPLandroid/view/View;->computeVerticalScrollExtent()I -HSPLandroid/view/View;->computeVerticalScrollOffset()I -HSPLandroid/view/View;->computeVerticalScrollRange()I -HSPLandroid/view/View;->damageInParent()V+]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->destroyDrawingCache()V -HSPLandroid/view/View;->destroyHardwareResources()V -HSPLandroid/view/View;->dispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets;+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V+]Landroid/view/HandlerActionQueue;Landroid/view/HandlerActionQueue;]Landroid/view/View;missing_types]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HSPLandroid/view/View;->dispatchCancelPendingInputEvents()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/view/View;->dispatchDetachedFromWindow()V+]Landroid/view/ImeFocusController;Landroid/view/ImeFocusController;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;Landroid/view/ViewOverlay$OverlayViewGroup;]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/List;Ljava/util/Collections$EmptyList;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HSPLandroid/view/View;->dispatchDraw(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->dispatchDrawableHotspotChanged(FF)V -HSPLandroid/view/View;->dispatchFinishTemporaryDetach()V -HSPLandroid/view/View;->dispatchInitialProvideContentCaptureStructure()V -HSPLandroid/view/View;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLandroid/view/View;->dispatchKeyEventPreIme(Landroid/view/KeyEvent;)Z -HSPLandroid/view/View;->dispatchNestedFling(FFZ)Z -HSPLandroid/view/View;->dispatchNestedPreFling(FF)Z -HSPLandroid/view/View;->dispatchNestedPreScroll(II[I[I)Z -HSPLandroid/view/View;->dispatchNestedScroll(IIII[I)Z -HSPLandroid/view/View;->dispatchPointerEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V -HSPLandroid/view/View;->dispatchProvideContentCaptureStructure()V -HSPLandroid/view/View;->dispatchProvideStructure(Landroid/view/ViewStructure;II)V -HSPLandroid/view/View;->dispatchRestoreInstanceState(Landroid/util/SparseArray;)V -HSPLandroid/view/View;->dispatchSaveInstanceState(Landroid/util/SparseArray;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/View;->dispatchScreenStateChanged(I)V -HSPLandroid/view/View;->dispatchSetActivated(Z)V -HSPLandroid/view/View;->dispatchSetPressed(Z)V -HSPLandroid/view/View;->dispatchSetSelected(Z)V -HSPLandroid/view/View;->dispatchStartTemporaryDetach()V -HSPLandroid/view/View;->dispatchSystemUiVisibilityChanged(I)V -HSPLandroid/view/View;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->dispatchVisibilityAggregated(Z)Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchVisibilityChanged(Landroid/view/View;I)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->dispatchWindowFocusChanged(Z)V -HSPLandroid/view/View;->dispatchWindowInsetsAnimationEnd(Landroid/view/WindowInsetsAnimation;)V -HSPLandroid/view/View;->dispatchWindowSystemUiVisiblityChanged(I)V -HSPLandroid/view/View;->dispatchWindowVisibilityChanged(I)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->draw(Landroid/graphics/Canvas;Landroid/view/ViewGroup;J)Z+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/AnimationSet;,Landroid/view/animation/RotateAnimation;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; -HSPLandroid/view/View;->drawAutofilledHighlight(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->drawBackground(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types -HSPLandroid/view/View;->drawDefaultFocusHighlight(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->drawableHotspotChanged(FF)V -HSPLandroid/view/View;->drawableStateChanged()V+]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->drawsWithRenderNode(Landroid/graphics/Canvas;)Z+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas; -HSPLandroid/view/View;->ensureTransformationInfo()V -HSPLandroid/view/View;->findAccessibilityFocusHost(Z)Landroid/view/View; -HSPLandroid/view/View;->findFocus()Landroid/view/View; -HSPLandroid/view/View;->findFrameMetricsObserver(Landroid/view/Window$OnFrameMetricsAvailableListener;)Landroid/view/FrameMetricsObserver; -HSPLandroid/view/View;->findKeyboardNavigationCluster()Landroid/view/View; -HSPLandroid/view/View;->findOnBackInvokedDispatcher()Landroid/window/OnBackInvokedDispatcher; -HSPLandroid/view/View;->findUserSetNextFocus(Landroid/view/View;I)Landroid/view/View; -HSPLandroid/view/View;->findViewByAutofillIdTraversal(I)Landroid/view/View; -HSPLandroid/view/View;->findViewById(I)Landroid/view/View;+]Landroid/view/View;missing_types -HSPLandroid/view/View;->findViewTraversal(I)Landroid/view/View; -HSPLandroid/view/View;->findViewWithTag(Ljava/lang/Object;)Landroid/view/View; -HSPLandroid/view/View;->findViewWithTagTraversal(Ljava/lang/Object;)Landroid/view/View; -HSPLandroid/view/View;->fitSystemWindows(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->fitSystemWindowsInt(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->focusSearch(I)Landroid/view/View; -HSPLandroid/view/View;->forceLayout()V -HSPLandroid/view/View;->gatherTransparentRegion(Landroid/graphics/Region;)Z -HSPLandroid/view/View;->generateViewId()I -HSPLandroid/view/View;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/view/View;->getAccessibilityDelegate()Landroid/view/View$AccessibilityDelegate; -HSPLandroid/view/View;->getAccessibilityLiveRegion()I -HSPLandroid/view/View;->getAccessibilityNodeProvider()Landroid/view/accessibility/AccessibilityNodeProvider; -HSPLandroid/view/View;->getAccessibilityViewId()I -HSPLandroid/view/View;->getAlpha()F -HSPLandroid/view/View;->getAndCacheContentCaptureSession()Landroid/view/contentcapture/ContentCaptureSession; -HSPLandroid/view/View;->getAnimation()Landroid/view/animation/Animation; -HSPLandroid/view/View;->getApplicationWindowToken()Landroid/os/IBinder; -HSPLandroid/view/View;->getAutofillHints()[Ljava/lang/String; -HSPLandroid/view/View;->getAutofillId()Landroid/view/autofill/AutofillId; -HSPLandroid/view/View;->getAutofillType()I -HSPLandroid/view/View;->getAutofillViewId()I -HSPLandroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable; -HSPLandroid/view/View;->getBaseline()I -HSPLandroid/view/View;->getBottom()I -HSPLandroid/view/View;->getBoundsOnScreen(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->getBoundsOnScreen(Landroid/graphics/Rect;Z)V -HSPLandroid/view/View;->getClipBounds()Landroid/graphics/Rect; -HSPLandroid/view/View;->getClipToOutline()Z -HSPLandroid/view/View;->getContentCaptureSession()Landroid/view/contentcapture/ContentCaptureSession; -HSPLandroid/view/View;->getContentDescription()Ljava/lang/CharSequence; -HSPLandroid/view/View;->getContext()Landroid/content/Context; -HSPLandroid/view/View;->getDefaultSize(II)I -HSPLandroid/view/View;->getDisplay()Landroid/view/Display; -HSPLandroid/view/View;->getDrawableRenderNode(Landroid/graphics/drawable/Drawable;Landroid/graphics/RenderNode;)Landroid/graphics/RenderNode;+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/graphics/drawable/Drawable;missing_types]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;missing_types -HSPLandroid/view/View;->getDrawableState()[I+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getDrawingCache(Z)Landroid/graphics/Bitmap; -HSPLandroid/view/View;->getDrawingRect(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->getDrawingTime()J -HSPLandroid/view/View;->getElevation()F -HSPLandroid/view/View;->getFilterTouchesWhenObscured()Z -HSPLandroid/view/View;->getFinalAlpha()F -HSPLandroid/view/View;->getFitsSystemWindows()Z -HSPLandroid/view/View;->getFocusable()I -HSPLandroid/view/View;->getFocusableAttribute(Landroid/content/res/TypedArray;)I -HSPLandroid/view/View;->getFocusedRect(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->getForeground()Landroid/graphics/drawable/Drawable; -HSPLandroid/view/View;->getForegroundGravity()I -HSPLandroid/view/View;->getGlobalVisibleRect(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->getGlobalVisibleRect(Landroid/graphics/Rect;Landroid/graphics/Point;)Z -HSPLandroid/view/View;->getHandler()Landroid/os/Handler; -HSPLandroid/view/View;->getHasOverlappingRendering()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getHeight()I -HSPLandroid/view/View;->getHitRect(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->getHorizontalFadingEdgeLength()I -HSPLandroid/view/View;->getHorizontalScrollBarBounds(Landroid/graphics/Rect;Landroid/graphics/Rect;)V -HSPLandroid/view/View;->getHorizontalScrollbarHeight()I -HSPLandroid/view/View;->getId()I -HSPLandroid/view/View;->getImportantForAccessibility()I -HSPLandroid/view/View;->getImportantForAutofill()I -HSPLandroid/view/View;->getImportantForContentCapture()I -HSPLandroid/view/View;->getInverseMatrix()Landroid/graphics/Matrix; -HSPLandroid/view/View;->getKeyDispatcherState()Landroid/view/KeyEvent$DispatcherState; -HSPLandroid/view/View;->getLayerType()I -HSPLandroid/view/View;->getLayoutDirection()I+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/view/View;->getLeft()I -HSPLandroid/view/View;->getListenerInfo()Landroid/view/View$ListenerInfo; -HSPLandroid/view/View;->getLocalVisibleRect(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->getLocationInSurface([I)V -HSPLandroid/view/View;->getLocationInWindow([I)V -HSPLandroid/view/View;->getLocationOnScreen()[I -HSPLandroid/view/View;->getLocationOnScreen([I)V -HSPLandroid/view/View;->getMatrix()Landroid/graphics/Matrix; -HSPLandroid/view/View;->getMeasuredHeight()I -HSPLandroid/view/View;->getMeasuredState()I -HSPLandroid/view/View;->getMeasuredWidth()I -HSPLandroid/view/View;->getMeasuredWidthAndState()I -HSPLandroid/view/View;->getMinimumHeight()I -HSPLandroid/view/View;->getMinimumWidth()I -HSPLandroid/view/View;->getNotifiedContentCaptureAppeared()Z -HSPLandroid/view/View;->getOutlineProvider()Landroid/view/ViewOutlineProvider; -HSPLandroid/view/View;->getOverScrollMode()I -HSPLandroid/view/View;->getPaddingBottom()I -HSPLandroid/view/View;->getPaddingEnd()I -HSPLandroid/view/View;->getPaddingLeft()I+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getPaddingRight()I -HSPLandroid/view/View;->getPaddingStart()I+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getPaddingTop()I -HSPLandroid/view/View;->getParent()Landroid/view/ViewParent; -HSPLandroid/view/View;->getPivotX()F -HSPLandroid/view/View;->getPivotY()F -HSPLandroid/view/View;->getProjectionReceiver()Landroid/view/View; -HSPLandroid/view/View;->getRawLayoutDirection()I -HSPLandroid/view/View;->getRawTextAlignment()I -HSPLandroid/view/View;->getRawTextDirection()I -HSPLandroid/view/View;->getReceiveContentMimeTypes()[Ljava/lang/String; -HSPLandroid/view/View;->getResources()Landroid/content/res/Resources; -HSPLandroid/view/View;->getRight()I -HSPLandroid/view/View;->getRootView()Landroid/view/View; -HSPLandroid/view/View;->getRootWindowInsets()Landroid/view/WindowInsets; -HSPLandroid/view/View;->getRotation()F -HSPLandroid/view/View;->getRotationX()F -HSPLandroid/view/View;->getRotationY()F -HSPLandroid/view/View;->getRunQueue()Landroid/view/HandlerActionQueue; -HSPLandroid/view/View;->getScaleX()F -HSPLandroid/view/View;->getScaleY()F -HSPLandroid/view/View;->getScrollX()I -HSPLandroid/view/View;->getScrollY()I -HSPLandroid/view/View;->getSolidColor()I -HSPLandroid/view/View;->getStateListAnimator()Landroid/animation/StateListAnimator; -HSPLandroid/view/View;->getStraightVerticalScrollBarBounds(Landroid/graphics/Rect;Landroid/graphics/Rect;)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->getSuggestedMinimumHeight()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->getSuggestedMinimumWidth()I+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->getSystemGestureExclusionRects()Ljava/util/List; -HSPLandroid/view/View;->getSystemUiVisibility()I -HSPLandroid/view/View;->getTag()Ljava/lang/Object; -HSPLandroid/view/View;->getTag(I)Ljava/lang/Object; -HSPLandroid/view/View;->getTextAlignment()I -HSPLandroid/view/View;->getTextDirection()I -HSPLandroid/view/View;->getThreadedRenderer()Landroid/view/ThreadedRenderer; -HSPLandroid/view/View;->getTop()I -HSPLandroid/view/View;->getTransitionAlpha()F -HSPLandroid/view/View;->getTransitionName()Ljava/lang/String; -HSPLandroid/view/View;->getTranslationX()F -HSPLandroid/view/View;->getTranslationY()F -HSPLandroid/view/View;->getTranslationZ()F -HSPLandroid/view/View;->getVerticalFadingEdgeLength()I -HSPLandroid/view/View;->getVerticalScrollbarWidth()I+]Landroid/widget/ScrollBarDrawable;Landroid/widget/ScrollBarDrawable; -HSPLandroid/view/View;->getViewRootImpl()Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->getViewTranslationCallback()Landroid/view/translation/ViewTranslationCallback; -HSPLandroid/view/View;->getViewTreeObserver()Landroid/view/ViewTreeObserver; -HSPLandroid/view/View;->getVisibility()I -HSPLandroid/view/View;->getWidth()I -HSPLandroid/view/View;->getWindowAttachCount()I -HSPLandroid/view/View;->getWindowId()Landroid/view/WindowId; -HSPLandroid/view/View;->getWindowInsetsController()Landroid/view/WindowInsetsController; -HSPLandroid/view/View;->getWindowSystemUiVisibility()I -HSPLandroid/view/View;->getWindowToken()Landroid/os/IBinder; -HSPLandroid/view/View;->getWindowVisibility()I -HSPLandroid/view/View;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->getX()F -HSPLandroid/view/View;->getY()F -HSPLandroid/view/View;->getZ()F -HSPLandroid/view/View;->handleFocusGainInternal(ILandroid/graphics/Rect;)V -HSPLandroid/view/View;->handleScrollBarDragging(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->hasAncestorThatBlocksDescendantFocus()Z -HSPLandroid/view/View;->hasDefaultFocus()Z -HSPLandroid/view/View;->hasExplicitFocusable()Z -HSPLandroid/view/View;->hasFocus()Z -HSPLandroid/view/View;->hasFocusable()Z -HSPLandroid/view/View;->hasFocusable(ZZ)Z -HSPLandroid/view/View;->hasIdentityMatrix()Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->hasImeFocus()Z -HSPLandroid/view/View;->hasListenersForAccessibility()Z -HSPLandroid/view/View;->hasNestedScrollingParent()Z -HSPLandroid/view/View;->hasOnClickListeners()Z -HSPLandroid/view/View;->hasOverlappingRendering()Z -HSPLandroid/view/View;->hasRtlSupport()Z+]Landroid/content/Context;missing_types]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo; -HSPLandroid/view/View;->hasSize()Z -HSPLandroid/view/View;->hasTransientState()Z -HSPLandroid/view/View;->hasTranslationTransientState()Z -HSPLandroid/view/View;->hasUnhandledKeyListener()Z -HSPLandroid/view/View;->hasWindowFocus()Z -HSPLandroid/view/View;->hasWindowInsetsAnimationCallback()Z -HSPLandroid/view/View;->hideAutofillHighlight()Z -HSPLandroid/view/View;->hideTooltip()V -HSPLandroid/view/View;->includeForAccessibility()Z -HSPLandroid/view/View;->includeForAccessibility(Z)Z -HSPLandroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View; -HSPLandroid/view/View;->initScrollCache()V -HSPLandroid/view/View;->initialAwakenScrollBars()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->initializeFadingEdgeInternal(Landroid/content/res/TypedArray;)V -HSPLandroid/view/View;->initializeScrollIndicatorsInternal()V -HSPLandroid/view/View;->initializeScrollbarsInternal(Landroid/content/res/TypedArray;)V -HSPLandroid/view/View;->internalSetPadding(IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidate()V -HSPLandroid/view/View;->invalidate(IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidate(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->invalidate(Z)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidateInternal(IIIIZZ)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->invalidateOutline()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->invalidateParentCaches()V -HSPLandroid/view/View;->invalidateParentIfNeeded()V -HSPLandroid/view/View;->invalidateParentIfNeededAndWasQuickRejected()V -HSPLandroid/view/View;->invalidateViewProperty(ZZ)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types -HSPLandroid/view/View;->isAccessibilityFocused()Z -HSPLandroid/view/View;->isAccessibilityFocusedViewOrHost()Z -HSPLandroid/view/View;->isAccessibilityPane()Z -HSPLandroid/view/View;->isActionableForAccessibility()Z -HSPLandroid/view/View;->isActivated()Z -HSPLandroid/view/View;->isAggregatedVisible()Z -HSPLandroid/view/View;->isAttachedToWindow()Z -HSPLandroid/view/View;->isAutoHandwritingEnabled()Z -HSPLandroid/view/View;->isAutofillable()Z+]Landroid/view/View;missing_types]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; -HSPLandroid/view/View;->isAutofilled()Z -HSPLandroid/view/View;->isClickable()Z -HSPLandroid/view/View;->isContextClickable()Z -HSPLandroid/view/View;->isCredential()Z -HSPLandroid/view/View;->isDefaultFocusHighlightNeeded(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/view/View;->isEnabled()Z -HSPLandroid/view/View;->isFocusable()Z -HSPLandroid/view/View;->isFocusableInTouchMode()Z -HSPLandroid/view/View;->isFocused()Z -HSPLandroid/view/View;->isFocusedByDefault()Z -HSPLandroid/view/View;->isForegroundInsidePadding()Z -HSPLandroid/view/View;->isFrameworkOptionalFitsSystemWindows()Z -HSPLandroid/view/View;->isHapticFeedbackEnabled()Z -HSPLandroid/view/View;->isHardwareAccelerated()Z -HSPLandroid/view/View;->isHorizontalFadingEdgeEnabled()Z -HSPLandroid/view/View;->isHorizontalScrollBarEnabled()Z -HSPLandroid/view/View;->isImportantForAccessibility()Z -HSPLandroid/view/View;->isImportantForAutofill()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->isImportantForContentCapture()Z -HSPLandroid/view/View;->isInEditMode()Z -HSPLandroid/view/View;->isInLayout()Z -HSPLandroid/view/View;->isInScrollingContainer()Z -HSPLandroid/view/View;->isInTouchMode()Z -HSPLandroid/view/View;->isKeyboardNavigationCluster()Z -HSPLandroid/view/View;->isLaidOut()Z -HSPLandroid/view/View;->isLayoutDirectionInherited()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->isLayoutDirectionResolved()Z -HSPLandroid/view/View;->isLayoutModeOptical(Ljava/lang/Object;)Z+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/View;->isLayoutRequested()Z -HSPLandroid/view/View;->isLayoutRtl()Z -HSPLandroid/view/View;->isLayoutValid()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->isLongClickable()Z -HSPLandroid/view/View;->isNestedScrollingEnabled()Z -HSPLandroid/view/View;->isOpaque()Z -HSPLandroid/view/View;->isPaddingResolved()Z -HSPLandroid/view/View;->isPressed()Z -HSPLandroid/view/View;->isProjectionReceiver()Z -HSPLandroid/view/View;->isRootNamespace()Z -HSPLandroid/view/View;->isRtlCompatibilityMode()Z+]Landroid/content/Context;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->isSelected()Z -HSPLandroid/view/View;->isShowingLayoutBounds()Z -HSPLandroid/view/View;->isShown()Z -HSPLandroid/view/View;->isSoundEffectsEnabled()Z -HSPLandroid/view/View;->isTemporarilyDetached()Z -HSPLandroid/view/View;->isTextAlignmentInherited()Z -HSPLandroid/view/View;->isTextAlignmentResolved()Z -HSPLandroid/view/View;->isTextDirectionInherited()Z -HSPLandroid/view/View;->isTextDirectionResolved()Z -HSPLandroid/view/View;->isVerticalFadingEdgeEnabled()Z -HSPLandroid/view/View;->isVerticalScrollBarEnabled()Z -HSPLandroid/view/View;->isVerticalScrollBarHidden()Z -HSPLandroid/view/View;->isViewIdGenerated(I)Z -HSPLandroid/view/View;->isVisibleToUser()Z -HSPLandroid/view/View;->isVisibleToUser(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->jumpDrawablesToCurrentState()V+]Landroid/animation/StateListAnimator;Landroid/animation/StateListAnimator;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->layout(IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->makeFrameworkOptionalFitsSystemWindows()V -HSPLandroid/view/View;->makeOptionalFitsSystemWindows()V -HSPLandroid/view/View;->mapRectFromViewToScreenCoords(Landroid/graphics/RectF;Z)V -HSPLandroid/view/View;->mapRectFromViewToWindowCoords(Landroid/graphics/RectF;Z)V -HSPLandroid/view/View;->measure(II)V+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Landroid/view/View;missing_types -HSPLandroid/view/View;->mergeDrawableStates([I[I)[I -HSPLandroid/view/View;->needGlobalAttributesUpdate(Z)V -HSPLandroid/view/View;->needRtlPropertiesResolution()Z -HSPLandroid/view/View;->notifyAppearedOrDisappearedForContentCaptureIfNeeded(Z)V -HSPLandroid/view/View;->notifyAutofillManagerOnClick()V -HSPLandroid/view/View;->notifyEnterOrExitForAutoFillIfNeeded(Z)V+]Landroid/view/View;missing_types]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; -HSPLandroid/view/View;->notifyGlobalFocusCleared(Landroid/view/View;)V -HSPLandroid/view/View;->notifySubtreeAccessibilityStateChangedByParentIfNeeded()V -HSPLandroid/view/View;->notifySubtreeAccessibilityStateChangedIfNeeded()V+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/View;->notifyViewAccessibilityStateChangedIfNeeded(I)V+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/View;->offsetLeftAndRight(I)V -HSPLandroid/view/View;->offsetTopAndBottom(I)V -HSPLandroid/view/View;->onAnimationEnd()V -HSPLandroid/view/View;->onAnimationStart()V -HSPLandroid/view/View;->onApplyFrameworkOptionalFitSystemWindows(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/View;->onApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/View;->onAttachedToWindow()V+]Landroid/view/View;missing_types]Landroid/view/accessibility/AccessibilityNodeIdManager;Landroid/view/accessibility/AccessibilityNodeIdManager; -HSPLandroid/view/View;->onCancelPendingInputEvents()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->onCheckIsTextEditor()Z -HSPLandroid/view/View;->onCloseSystemDialogs(Ljava/lang/String;)V -HSPLandroid/view/View;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/view/View;->onCreateDrawableState(I)[I+]Landroid/view/View;missing_types -HSPLandroid/view/View;->onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; -HSPLandroid/view/View;->onDetachedFromWindow()V -HSPLandroid/view/View;->onDetachedFromWindowInternal()V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/accessibility/AccessibilityNodeIdManager;Landroid/view/accessibility/AccessibilityNodeIdManager; -HSPLandroid/view/View;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->onDrawForeground(Landroid/graphics/Canvas;)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->onDrawHorizontalScrollBar(Landroid/graphics/Canvas;Landroid/graphics/drawable/Drawable;IIII)V -HSPLandroid/view/View;->onDrawScrollBars(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->onDrawScrollIndicators(Landroid/graphics/Canvas;)V -HSPLandroid/view/View;->onDrawVerticalScrollBar(Landroid/graphics/Canvas;Landroid/graphics/drawable/Drawable;IIII)V -HSPLandroid/view/View;->onFilterTouchEventForSecurity(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->onFinishInflate()V -HSPLandroid/view/View;->onFinishTemporaryDetach()V -HSPLandroid/view/View;->onFocusChanged(ZILandroid/graphics/Rect;)V -HSPLandroid/view/View;->onFocusLost()V -HSPLandroid/view/View;->onKeyDown(ILandroid/view/KeyEvent;)Z -HSPLandroid/view/View;->onKeyPreIme(ILandroid/view/KeyEvent;)Z -HSPLandroid/view/View;->onKeyUp(ILandroid/view/KeyEvent;)Z -HSPLandroid/view/View;->onLayout(ZIIII)V -HSPLandroid/view/View;->onMeasure(II)V+]Landroid/view/View;Landroid/view/View; -HSPLandroid/view/View;->onProvideAutofillStructure(Landroid/view/ViewStructure;I)V -HSPLandroid/view/View;->onProvideAutofillVirtualStructure(Landroid/view/ViewStructure;I)V -HSPLandroid/view/View;->onProvideContentCaptureStructure(Landroid/view/ViewStructure;I)V -HSPLandroid/view/View;->onProvideStructure(Landroid/view/ViewStructure;II)V -HSPLandroid/view/View;->onResolveDrawables(I)V -HSPLandroid/view/View;->onRestoreInstanceState(Landroid/os/Parcelable;)V -HSPLandroid/view/View;->onRtlPropertiesChanged(I)V -HSPLandroid/view/View;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/view/View;->onScreenStateChanged(I)V -HSPLandroid/view/View;->onScrollChanged(IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->onSetAlpha(I)Z -HSPLandroid/view/View;->onSizeChanged(IIII)V -HSPLandroid/view/View;->onStartTemporaryDetach()V -HSPLandroid/view/View;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->onVisibilityAggregated(Z)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/util/List;Ljava/util/Collections$EmptyList; -HSPLandroid/view/View;->onVisibilityChanged(Landroid/view/View;I)V -HSPLandroid/view/View;->onWindowFocusChanged(Z)V+]Landroid/view/View;megamorphic_types -HSPLandroid/view/View;->onWindowSystemUiVisibilityChanged(I)V -HSPLandroid/view/View;->onWindowVisibilityChanged(I)V -HSPLandroid/view/View;->overScrollBy(IIIIIIIIZ)Z -HSPLandroid/view/View;->performButtonActionOnTouchDown(Landroid/view/MotionEvent;)Z -HSPLandroid/view/View;->performClick()Z -HSPLandroid/view/View;->performCollectViewAttributes(Landroid/view/View$AttachInfo;I)V -HSPLandroid/view/View;->performHapticFeedback(I)Z -HSPLandroid/view/View;->performHapticFeedback(II)Z -HSPLandroid/view/View;->performLongClick()Z -HSPLandroid/view/View;->performLongClick(FF)Z -HSPLandroid/view/View;->performLongClickInternal(FF)Z -HSPLandroid/view/View;->playSoundEffect(I)V -HSPLandroid/view/View;->pointInView(FF)Z -HSPLandroid/view/View;->pointInView(FFF)Z -HSPLandroid/view/View;->post(Ljava/lang/Runnable;)Z -HSPLandroid/view/View;->postDelayed(Ljava/lang/Runnable;J)Z -HSPLandroid/view/View;->postInvalidate()V -HSPLandroid/view/View;->postInvalidateDelayed(J)V -HSPLandroid/view/View;->postInvalidateOnAnimation()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->postOnAnimation(Ljava/lang/Runnable;)V -HSPLandroid/view/View;->postOnAnimationDelayed(Ljava/lang/Runnable;J)V -HSPLandroid/view/View;->postSendViewScrolledAccessibilityEventCallback(II)V -HSPLandroid/view/View;->postUpdate(Ljava/lang/Runnable;)V -HSPLandroid/view/View;->rebuildOutline()V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/ViewOutlineProvider;missing_types -HSPLandroid/view/View;->recomputePadding()V -HSPLandroid/view/View;->refreshDrawableState()V+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->registerPendingFrameMetricsObservers()V -HSPLandroid/view/View;->removeCallbacks(Ljava/lang/Runnable;)Z -HSPLandroid/view/View;->removeFrameMetricsListener(Landroid/view/Window$OnFrameMetricsAvailableListener;)V -HSPLandroid/view/View;->removeLongPressCallback()V -HSPLandroid/view/View;->removeOnAttachStateChangeListener(Landroid/view/View$OnAttachStateChangeListener;)V -HSPLandroid/view/View;->removeOnLayoutChangeListener(Landroid/view/View$OnLayoutChangeListener;)V -HSPLandroid/view/View;->removePerformClickCallback()V -HSPLandroid/view/View;->removeTapCallback()V -HSPLandroid/view/View;->removeUnsetPressCallback()V -HSPLandroid/view/View;->requestApplyInsets()V -HSPLandroid/view/View;->requestFitSystemWindows()V -HSPLandroid/view/View;->requestFocus()Z -HSPLandroid/view/View;->requestFocus(I)Z -HSPLandroid/view/View;->requestFocus(ILandroid/graphics/Rect;)Z -HSPLandroid/view/View;->requestFocusNoSearch(ILandroid/graphics/Rect;)Z -HSPLandroid/view/View;->requestLayout()V+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/View;->requestRectangleOnScreen(Landroid/graphics/Rect;)Z -HSPLandroid/view/View;->requestRectangleOnScreen(Landroid/graphics/Rect;Z)Z -HSPLandroid/view/View;->requireViewById(I)Landroid/view/View; -HSPLandroid/view/View;->resetDisplayList()V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->resetPressedState()V -HSPLandroid/view/View;->resetResolvedDrawables()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resetResolvedDrawablesInternal()V -HSPLandroid/view/View;->resetResolvedLayoutDirection()V -HSPLandroid/view/View;->resetResolvedPadding()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resetResolvedPaddingInternal()V -HSPLandroid/view/View;->resetResolvedTextAlignment()V -HSPLandroid/view/View;->resetResolvedTextDirection()V -HSPLandroid/view/View;->resetRtlProperties()V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resetSubtreeAccessibilityStateChanged()V -HSPLandroid/view/View;->resolveDrawables()V+]Landroid/graphics/drawable/Drawable;megamorphic_types]Landroid/view/View;missing_types -HSPLandroid/view/View;->resolveLayoutDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->resolveLayoutParams()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup$LayoutParams;missing_types -HSPLandroid/view/View;->resolvePadding()V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/view/View;->resolveRtlPropertiesIfNeeded()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resolveSize(II)I -HSPLandroid/view/View;->resolveSizeAndState(III)I -HSPLandroid/view/View;->resolveTextAlignment()Z+]Landroid/view/View;missing_types -HSPLandroid/view/View;->resolveTextDirection()Z+]Landroid/view/View;missing_types]Landroid/view/ViewParent;missing_types -HSPLandroid/view/View;->restoreHierarchyState(Landroid/util/SparseArray;)V -HSPLandroid/view/View;->retrieveExplicitStyle(Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;)V -HSPLandroid/view/View;->rootViewRequestFocus()Z -HSPLandroid/view/View;->sanitizeFloatPropertyValue(FLjava/lang/String;)F -HSPLandroid/view/View;->sanitizeFloatPropertyValue(FLjava/lang/String;FF)F -HSPLandroid/view/View;->saveAttributeDataForStyleable(Landroid/content/Context;[ILandroid/util/AttributeSet;Landroid/content/res/TypedArray;II)V -HSPLandroid/view/View;->saveHierarchyState(Landroid/util/SparseArray;)V -HSPLandroid/view/View;->scheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;J)V -HSPLandroid/view/View;->scrollBy(II)V -HSPLandroid/view/View;->scrollTo(II)V -HSPLandroid/view/View;->sendAccessibilityEvent(I)V -HSPLandroid/view/View;->sendAccessibilityEventInternal(I)V -HSPLandroid/view/View;->setAccessibilityDelegate(Landroid/view/View$AccessibilityDelegate;)V -HSPLandroid/view/View;->setAccessibilityHeading(Z)V -HSPLandroid/view/View;->setAccessibilityLiveRegion(I)V -HSPLandroid/view/View;->setAccessibilityPaneTitle(Ljava/lang/CharSequence;)V -HSPLandroid/view/View;->setAccessibilityTraversalAfter(I)V -HSPLandroid/view/View;->setAccessibilityTraversalBefore(I)V -HSPLandroid/view/View;->setActivated(Z)V -HSPLandroid/view/View;->setAlpha(F)V -HSPLandroid/view/View;->setAlphaInternal(F)V -HSPLandroid/view/View;->setAlphaNoInvalidation(F)Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->setAnimation(Landroid/view/animation/Animation;)V -HSPLandroid/view/View;->setAutoHandwritingEnabled(Z)V -HSPLandroid/view/View;->setAutofilled(ZZ)V -HSPLandroid/view/View;->setBackground(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/view/View;->setBackgroundBounds()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/view/View;->setBackgroundColor(I)V -HSPLandroid/view/View;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal; -HSPLandroid/view/View;->setBackgroundRenderNodeProperties(Landroid/graphics/RenderNode;)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->setBackgroundResource(I)V -HSPLandroid/view/View;->setBackgroundTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/view/View;->setBottom(I)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types -HSPLandroid/view/View;->setClickable(Z)V -HSPLandroid/view/View;->setClipBounds(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->setClipToOutline(Z)V -HSPLandroid/view/View;->setContentDescription(Ljava/lang/CharSequence;)V -HSPLandroid/view/View;->setDefaultFocusHighlightEnabled(Z)V -HSPLandroid/view/View;->setDetached(Z)V -HSPLandroid/view/View;->setDisplayListProperties(Landroid/graphics/RenderNode;)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->setDrawingCacheEnabled(Z)V -HSPLandroid/view/View;->setElevation(F)V -HSPLandroid/view/View;->setEnabled(Z)V -HSPLandroid/view/View;->setFitsSystemWindows(Z)V -HSPLandroid/view/View;->setFlags(II)V+]Landroid/view/View;megamorphic_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewParent;missing_types]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/View;->setFocusable(I)V -HSPLandroid/view/View;->setFocusable(Z)V -HSPLandroid/view/View;->setFocusableInTouchMode(Z)V -HSPLandroid/view/View;->setForeground(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/view/View;->setForegroundGravity(I)V -HSPLandroid/view/View;->setFrame(IIII)Z+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->setHandwritingArea(Landroid/graphics/Rect;)V -HSPLandroid/view/View;->setHapticFeedbackEnabled(Z)V -HSPLandroid/view/View;->setHasTransientState(Z)V -HSPLandroid/view/View;->setHorizontalFadingEdgeEnabled(Z)V -HSPLandroid/view/View;->setHorizontalScrollBarEnabled(Z)V -HSPLandroid/view/View;->setId(I)V -HSPLandroid/view/View;->setImportantForAccessibility(I)V+]Landroid/view/View;megamorphic_types -HSPLandroid/view/View;->setImportantForAutofill(I)V -HSPLandroid/view/View;->setImportantForContentCapture(I)V -HSPLandroid/view/View;->setIsRootNamespace(Z)V -HSPLandroid/view/View;->setKeepScreenOn(Z)V -HSPLandroid/view/View;->setKeyboardNavigationCluster(Z)V -HSPLandroid/view/View;->setKeyedTag(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/View;->setLayerPaint(Landroid/graphics/Paint;)V -HSPLandroid/view/View;->setLayerType(ILandroid/graphics/Paint;)V -HSPLandroid/view/View;->setLayoutDirection(I)V -HSPLandroid/view/View;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/View;->setLeft(I)V -HSPLandroid/view/View;->setLeftTopRightBottom(IIII)V -HSPLandroid/view/View;->setLongClickable(Z)V -HSPLandroid/view/View;->setMeasuredDimension(II)V -HSPLandroid/view/View;->setMeasuredDimensionRaw(II)V -HSPLandroid/view/View;->setMinimumHeight(I)V -HSPLandroid/view/View;->setMinimumWidth(I)V -HSPLandroid/view/View;->setNotifiedContentCaptureAppeared()V -HSPLandroid/view/View;->setOnApplyWindowInsetsListener(Landroid/view/View$OnApplyWindowInsetsListener;)V -HSPLandroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V -HSPLandroid/view/View;->setOnCreateContextMenuListener(Landroid/view/View$OnCreateContextMenuListener;)V -HSPLandroid/view/View;->setOnDragListener(Landroid/view/View$OnDragListener;)V -HSPLandroid/view/View;->setOnFocusChangeListener(Landroid/view/View$OnFocusChangeListener;)V -HSPLandroid/view/View;->setOnHoverListener(Landroid/view/View$OnHoverListener;)V -HSPLandroid/view/View;->setOnKeyListener(Landroid/view/View$OnKeyListener;)V -HSPLandroid/view/View;->setOnLongClickListener(Landroid/view/View$OnLongClickListener;)V -HSPLandroid/view/View;->setOnScrollChangeListener(Landroid/view/View$OnScrollChangeListener;)V -HSPLandroid/view/View;->setOnSystemUiVisibilityChangeListener(Landroid/view/View$OnSystemUiVisibilityChangeListener;)V -HSPLandroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V -HSPLandroid/view/View;->setOutlineAmbientShadowColor(I)V -HSPLandroid/view/View;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V -HSPLandroid/view/View;->setOutlineProviderFromAttribute(I)V -HSPLandroid/view/View;->setOutlineSpotShadowColor(I)V -HSPLandroid/view/View;->setOverScrollMode(I)V -HSPLandroid/view/View;->setPadding(IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->setPaddingRelative(IIII)V -HSPLandroid/view/View;->setPivotX(F)V -HSPLandroid/view/View;->setPivotY(F)V -HSPLandroid/view/View;->setPointerIcon(Landroid/view/PointerIcon;)V -HSPLandroid/view/View;->setPressed(Z)V -HSPLandroid/view/View;->setRenderEffect(Landroid/graphics/RenderEffect;)V -HSPLandroid/view/View;->setRight(I)V+]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/view/View;->setRotation(F)V -HSPLandroid/view/View;->setRotationX(F)V -HSPLandroid/view/View;->setRotationY(F)V -HSPLandroid/view/View;->setSaveEnabled(Z)V -HSPLandroid/view/View;->setSaveFromParentEnabled(Z)V -HSPLandroid/view/View;->setScaleX(F)V -HSPLandroid/view/View;->setScaleY(F)V -HSPLandroid/view/View;->setScrollContainer(Z)V -HSPLandroid/view/View;->setScrollIndicators(II)V -HSPLandroid/view/View;->setScrollX(I)V -HSPLandroid/view/View;->setScrollY(I)V -HSPLandroid/view/View;->setSelected(Z)V -HSPLandroid/view/View;->setStateDescription(Ljava/lang/CharSequence;)V -HSPLandroid/view/View;->setStateListAnimator(Landroid/animation/StateListAnimator;)V -HSPLandroid/view/View;->setSystemGestureExclusionRects(Ljava/util/List;)V -HSPLandroid/view/View;->setSystemUiVisibility(I)V -HSPLandroid/view/View;->setTag(ILjava/lang/Object;)V -HSPLandroid/view/View;->setTag(Ljava/lang/Object;)V -HSPLandroid/view/View;->setTagInternal(ILjava/lang/Object;)V -HSPLandroid/view/View;->setTextAlignment(I)V -HSPLandroid/view/View;->setTextDirection(I)V -HSPLandroid/view/View;->setTooltipText(Ljava/lang/CharSequence;)V -HSPLandroid/view/View;->setTop(I)V -HSPLandroid/view/View;->setTouchDelegate(Landroid/view/TouchDelegate;)V -HSPLandroid/view/View;->setTransitionAlpha(F)V -HSPLandroid/view/View;->setTransitionName(Ljava/lang/String;)V -HSPLandroid/view/View;->setTransitionVisibility(I)V -HSPLandroid/view/View;->setTranslationX(F)V -HSPLandroid/view/View;->setTranslationY(F)V -HSPLandroid/view/View;->setTranslationZ(F)V -HSPLandroid/view/View;->setVerticalScrollBarEnabled(Z)V -HSPLandroid/view/View;->setVisibility(I)V+]Landroid/view/View;missing_types -HSPLandroid/view/View;->setWillNotDraw(Z)V -HSPLandroid/view/View;->setX(F)V -HSPLandroid/view/View;->setY(F)V -HSPLandroid/view/View;->shouldDrawRoundScrollbar()Z+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/view/View;->sizeChange(IIII)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; -HSPLandroid/view/View;->skipInvalidate()Z+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V -HSPLandroid/view/View;->startNestedScroll(I)Z -HSPLandroid/view/View;->stopNestedScroll()V -HSPLandroid/view/View;->switchDefaultFocusHighlight()V -HSPLandroid/view/View;->toString()Ljava/lang/String; -HSPLandroid/view/View;->transformFromViewToWindowSpace([I)V -HSPLandroid/view/View;->unFocus(Landroid/view/View;)V -HSPLandroid/view/View;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/View;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;)V -HSPLandroid/view/View;->updateDisplayListIfDirty()Landroid/graphics/RenderNode;+]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;Landroid/view/ViewOverlay$OverlayViewGroup;]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; -HSPLandroid/view/View;->updateFocusedInCluster(Landroid/view/View;I)V -HSPLandroid/view/View;->updateHandwritingArea()V -HSPLandroid/view/View;->updateKeepClearRects()V -HSPLandroid/view/View;->updateLocalSystemUiVisibility(II)Z -HSPLandroid/view/View;->updatePflags3AndNotifyA11yIfChanged(IZ)V -HSPLandroid/view/View;->updatePositionUpdateListener()V+]Landroid/view/View;missing_types]Ljava/util/List;Ljava/util/Collections$EmptyList; -HSPLandroid/view/View;->updatePreferKeepClearForFocus()V -HSPLandroid/view/View;->updateSystemGestureExclusionRects()V -HSPLandroid/view/View;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/view/View;->willNotDraw()Z -HSPLandroid/view/ViewAnimationHostBridge;-><init>(Landroid/view/View;)V -HSPLandroid/view/ViewAnimationHostBridge;->isAttached()Z -HSPLandroid/view/ViewAnimationHostBridge;->registerVectorDrawableAnimator(Landroid/view/NativeVectorDrawableAnimator;)V -HSPLandroid/view/ViewConfiguration;-><init>(Landroid/content/Context;)V -HSPLandroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/ViewConfiguration;->getDoubleTapTimeout()I -HSPLandroid/view/ViewConfiguration;->getLongPressTimeout()I -HSPLandroid/view/ViewConfiguration;->getPressedStateDuration()I -HSPLandroid/view/ViewConfiguration;->getScaledAmbiguousGestureMultiplier()F -HSPLandroid/view/ViewConfiguration;->getScaledDoubleTapSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledDoubleTapTouchSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledFadingEdgeLength()I -HSPLandroid/view/ViewConfiguration;->getScaledHandwritingSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledHorizontalScrollFactor()F -HSPLandroid/view/ViewConfiguration;->getScaledHoverSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledMaximumDrawingCacheSize()I -HSPLandroid/view/ViewConfiguration;->getScaledMaximumFlingVelocity()I -HSPLandroid/view/ViewConfiguration;->getScaledMinScrollbarTouchTarget()I -HSPLandroid/view/ViewConfiguration;->getScaledMinimumFlingVelocity()I -HSPLandroid/view/ViewConfiguration;->getScaledMinimumScalingSpan()I -HSPLandroid/view/ViewConfiguration;->getScaledOverflingDistance()I -HSPLandroid/view/ViewConfiguration;->getScaledOverscrollDistance()I -HSPLandroid/view/ViewConfiguration;->getScaledPagingTouchSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledScrollBarSize()I -HSPLandroid/view/ViewConfiguration;->getScaledTouchSlop()I -HSPLandroid/view/ViewConfiguration;->getScaledVerticalScrollFactor()F -HSPLandroid/view/ViewConfiguration;->getScaledWindowTouchSlop()I -HSPLandroid/view/ViewConfiguration;->getScrollBarFadeDuration()I -HSPLandroid/view/ViewConfiguration;->getScrollDefaultDelay()I -HSPLandroid/view/ViewConfiguration;->getScrollFriction()F -HSPLandroid/view/ViewConfiguration;->getTapTimeout()I -HSPLandroid/view/ViewConfiguration;->isFadingMarqueeEnabled()Z -HSPLandroid/view/ViewConfiguration;->isPreferKeepClearForFocusEnabled()Z -HSPLandroid/view/ViewDebug;->getViewInstanceCount()J -HSPLandroid/view/ViewDebug;->getViewRootImplCount()J -HSPLandroid/view/ViewFrameInfo;-><init>()V -HSPLandroid/view/ViewFrameInfo;->markDrawStart()V -HSPLandroid/view/ViewFrameInfo;->populateFrameInfo(Landroid/graphics/FrameInfo;)V -HSPLandroid/view/ViewFrameInfo;->reset()V -HSPLandroid/view/ViewFrameInfo;->setInputEvent(I)V -HSPLandroid/view/ViewGroup$4;-><init>(Landroid/view/ViewGroup;)V -HSPLandroid/view/ViewGroup$4;->endTransition(Landroid/animation/LayoutTransition;Landroid/view/ViewGroup;Landroid/view/View;I)V -HSPLandroid/view/ViewGroup$4;->startTransition(Landroid/animation/LayoutTransition;Landroid/view/ViewGroup;Landroid/view/View;I)V -HSPLandroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;-><init>()V -HSPLandroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;->obtain()Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; -HSPLandroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;->recycle()V -HSPLandroid/view/ViewGroup$LayoutParams;-><init>()V -HSPLandroid/view/ViewGroup$LayoutParams;-><init>(II)V -HSPLandroid/view/ViewGroup$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/ViewGroup$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/ViewGroup$LayoutParams;->resolveLayoutDirection(I)V -HSPLandroid/view/ViewGroup$LayoutParams;->setBaseAttributes(Landroid/content/res/TypedArray;II)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; -HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(II)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/ViewGroup$MarginLayoutParams;missing_types -HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$MarginLayoutParams;)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;->doResolveMargins()V -HSPLandroid/view/ViewGroup$MarginLayoutParams;->getLayoutDirection()I -HSPLandroid/view/ViewGroup$MarginLayoutParams;->getMarginEnd()I -HSPLandroid/view/ViewGroup$MarginLayoutParams;->getMarginStart()I -HSPLandroid/view/ViewGroup$MarginLayoutParams;->isMarginRelative()Z -HSPLandroid/view/ViewGroup$MarginLayoutParams;->resolveLayoutDirection(I)V+]Landroid/view/ViewGroup$MarginLayoutParams;missing_types -HSPLandroid/view/ViewGroup$MarginLayoutParams;->setLayoutDirection(I)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;->setMarginEnd(I)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;->setMarginStart(I)V -HSPLandroid/view/ViewGroup$MarginLayoutParams;->setMargins(IIII)V -HSPLandroid/view/ViewGroup$TouchTarget;-><init>()V -HSPLandroid/view/ViewGroup$TouchTarget;->obtain(Landroid/view/View;I)Landroid/view/ViewGroup$TouchTarget; -HSPLandroid/view/ViewGroup$TouchTarget;->recycle()V -HSPLandroid/view/ViewGroup;-><init>(Landroid/content/Context;)V -HSPLandroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/view/ViewGroup;->addFocusables(Ljava/util/ArrayList;II)V -HSPLandroid/view/ViewGroup;->addInArray(Landroid/view/View;I)V -HSPLandroid/view/ViewGroup;->addTouchTarget(Landroid/view/View;I)Landroid/view/ViewGroup$TouchTarget; -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;I)V -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;II)V -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/ViewGroup;->addViewInLayout(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/view/ViewGroup;->addViewInLayout(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)Z -HSPLandroid/view/ViewGroup;->addViewInner(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V+]Landroid/animation/LayoutTransition;Landroid/animation/LayoutTransition;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->bringChildToFront(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->buildOrderedChildList()Ljava/util/ArrayList; -HSPLandroid/view/ViewGroup;->buildTouchDispatchChildList()Ljava/util/ArrayList; -HSPLandroid/view/ViewGroup;->cancelAndClearTouchTargets(Landroid/view/MotionEvent;)V -HSPLandroid/view/ViewGroup;->cancelHoverTarget(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->cancelTouchTarget(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/view/ViewGroup;->childDrawableStateChanged(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->childHasTransientStateChanged(Landroid/view/View;Z)V -HSPLandroid/view/ViewGroup;->cleanupLayoutState(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->clearCachedLayoutMode()V -HSPLandroid/view/ViewGroup;->clearChildFocus(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->clearDisappearingChildren()V -HSPLandroid/view/ViewGroup;->clearFocus()V -HSPLandroid/view/ViewGroup;->clearFocusedInCluster()V -HSPLandroid/view/ViewGroup;->clearTouchTargets()V -HSPLandroid/view/ViewGroup;->destroyHardwareResources()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->detachAllViewsFromParent()V -HSPLandroid/view/ViewGroup;->detachViewFromParent(I)V -HSPLandroid/view/ViewGroup;->dispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/ViewGroup;->dispatchAttachedToWindow(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->dispatchCancelPendingInputEvents()V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchCollectViewAttributes(Landroid/view/View$AttachInfo;I)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/view/ViewGroup;->dispatchDetachedFromWindow()V -HSPLandroid/view/ViewGroup;->dispatchDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/animation/LayoutAnimationController;Landroid/view/animation/LayoutAnimationController; -HSPLandroid/view/ViewGroup;->dispatchDrawableHotspotChanged(FF)V -HSPLandroid/view/ViewGroup;->dispatchFinishTemporaryDetach()V -HSPLandroid/view/ViewGroup;->dispatchFreezeSelfOnly(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchGetDisplayList()V+]Landroid/view/View;missing_types]Landroid/view/ViewOverlay;Landroid/view/ViewGroupOverlay; -HSPLandroid/view/ViewGroup;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewGroup;->dispatchKeyEventPreIme(Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewGroup;->dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V -HSPLandroid/view/ViewGroup;->dispatchProvideContentCaptureStructure()V -HSPLandroid/view/ViewGroup;->dispatchRestoreInstanceState(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchSaveInstanceState(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchScreenStateChanged(I)V -HSPLandroid/view/ViewGroup;->dispatchSetActivated(Z)V -HSPLandroid/view/ViewGroup;->dispatchSetPressed(Z)V -HSPLandroid/view/ViewGroup;->dispatchSetSelected(Z)V -HSPLandroid/view/ViewGroup;->dispatchStartTemporaryDetach()V -HSPLandroid/view/ViewGroup;->dispatchSystemUiVisibilityChanged(I)V -HSPLandroid/view/ViewGroup;->dispatchThawSelfOnly(Landroid/util/SparseArray;)V -HSPLandroid/view/ViewGroup;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewGroup;->dispatchTransformedTouchEvent(Landroid/view/MotionEvent;ZLandroid/view/View;I)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchUnhandledKeyEvent(Landroid/view/KeyEvent;)Landroid/view/View; -HSPLandroid/view/ViewGroup;->dispatchViewAdded(Landroid/view/View;)V+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->dispatchViewRemoved(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->dispatchVisibilityAggregated(Z)Z+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchVisibilityChanged(Landroid/view/View;I)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchWindowFocusChanged(Z)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->dispatchWindowInsetsAnimationEnd(Landroid/view/WindowInsetsAnimation;)V -HSPLandroid/view/ViewGroup;->dispatchWindowSystemUiVisiblityChanged(I)V -HSPLandroid/view/ViewGroup;->dispatchWindowVisibilityChanged(I)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->drawableStateChanged()V -HSPLandroid/view/ViewGroup;->endViewTransition(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->exitHoverTargets()V -HSPLandroid/view/ViewGroup;->exitTooltipHoverTargets()V -HSPLandroid/view/ViewGroup;->findFocus()Landroid/view/View; -HSPLandroid/view/ViewGroup;->findOnBackInvokedDispatcherForChild(Landroid/view/View;Landroid/view/View;)Landroid/window/OnBackInvokedDispatcher; -HSPLandroid/view/ViewGroup;->findViewByAutofillIdTraversal(I)Landroid/view/View; -HSPLandroid/view/ViewGroup;->findViewByPredicateTraversal(Ljava/util/function/Predicate;Landroid/view/View;)Landroid/view/View; -HSPLandroid/view/ViewGroup;->findViewTraversal(I)Landroid/view/View;+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->findViewWithTagTraversal(Ljava/lang/Object;)Landroid/view/View; -HSPLandroid/view/ViewGroup;->finishAnimatingView(Landroid/view/View;Landroid/view/animation/Animation;)V -HSPLandroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View; -HSPLandroid/view/ViewGroup;->focusableViewAvailable(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->gatherTransparentRegion(Landroid/graphics/Region;)Z -HSPLandroid/view/ViewGroup;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/view/ViewGroup;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/view/ViewGroup;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/view/ViewGroup;->getAndVerifyPreorderedIndex(IIZ)I -HSPLandroid/view/ViewGroup;->getAndVerifyPreorderedView(Ljava/util/ArrayList;[Landroid/view/View;I)Landroid/view/View;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; -HSPLandroid/view/ViewGroup;->getChildCount()I -HSPLandroid/view/ViewGroup;->getChildMeasureSpec(III)I -HSPLandroid/view/ViewGroup;->getChildTransformation()Landroid/view/animation/Transformation; -HSPLandroid/view/ViewGroup;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;)Z -HSPLandroid/view/ViewGroup;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types]Landroid/view/ViewParent;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewGroup;->getChildrenForAutofill(I)Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; -HSPLandroid/view/ViewGroup;->getChildrenForContentCapture()Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; -HSPLandroid/view/ViewGroup;->getClipChildren()Z -HSPLandroid/view/ViewGroup;->getClipToPadding()Z -HSPLandroid/view/ViewGroup;->getDescendantFocusability()I -HSPLandroid/view/ViewGroup;->getFocusedChild()Landroid/view/View; -HSPLandroid/view/ViewGroup;->getLayoutMode()I -HSPLandroid/view/ViewGroup;->getLayoutTransition()Landroid/animation/LayoutTransition; -HSPLandroid/view/ViewGroup;->getNestedScrollAxes()I -HSPLandroid/view/ViewGroup;->getOverlay()Landroid/view/ViewGroupOverlay; -HSPLandroid/view/ViewGroup;->getScrollIndicatorBounds(Landroid/graphics/Rect;)V -HSPLandroid/view/ViewGroup;->getTempLocationF()[F -HSPLandroid/view/ViewGroup;->getTouchTarget(Landroid/view/View;)Landroid/view/ViewGroup$TouchTarget; -HSPLandroid/view/ViewGroup;->getTouchscreenBlocksFocus()Z -HSPLandroid/view/ViewGroup;->handleFocusGainInternal(ILandroid/graphics/Rect;)V -HSPLandroid/view/ViewGroup;->hasBooleanFlag(I)Z -HSPLandroid/view/ViewGroup;->hasChildWithZ()Z -HSPLandroid/view/ViewGroup;->hasDefaultFocus()Z -HSPLandroid/view/ViewGroup;->hasFocus()Z -HSPLandroid/view/ViewGroup;->hasFocusable(ZZ)Z -HSPLandroid/view/ViewGroup;->hasFocusableChild(Z)Z -HSPLandroid/view/ViewGroup;->hasTransientState()Z -HSPLandroid/view/ViewGroup;->hasUnhandledKeyListener()Z -HSPLandroid/view/ViewGroup;->hasWindowInsetsAnimationCallback()Z -HSPLandroid/view/ViewGroup;->indexOfChild(Landroid/view/View;)I -HSPLandroid/view/ViewGroup;->initFromAttributes(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->initViewGroup()V+]Landroid/content/Context;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->internalSetPadding(IIII)V -HSPLandroid/view/ViewGroup;->invalidateChild(Landroid/view/View;Landroid/graphics/Rect;)V+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->invalidateChildInParent([ILandroid/graphics/Rect;)Landroid/view/ViewParent; -HSPLandroid/view/ViewGroup;->isChildrenDrawingOrderEnabled()Z -HSPLandroid/view/ViewGroup;->isLayoutModeOptical()Z -HSPLandroid/view/ViewGroup;->isLayoutSuppressed()Z -HSPLandroid/view/ViewGroup;->isTransformedTouchPointInView(FFLandroid/view/View;Landroid/graphics/PointF;)Z -HSPLandroid/view/ViewGroup;->isViewTransitioning(Landroid/view/View;)Z -HSPLandroid/view/ViewGroup;->jumpDrawablesToCurrentState()V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->layout(IIII)V -HSPLandroid/view/ViewGroup;->makeFrameworkOptionalFitsSystemWindows()V -HSPLandroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V -HSPLandroid/view/ViewGroup;->measureChild(Landroid/view/View;II)V -HSPLandroid/view/ViewGroup;->measureChildWithMargins(Landroid/view/View;IIII)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->measureChildren(II)V -HSPLandroid/view/ViewGroup;->newDispatchApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLandroid/view/ViewGroup;->notifySubtreeAccessibilityStateChangedIfNeeded()V -HSPLandroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V -HSPLandroid/view/ViewGroup;->offsetRectBetweenParentAndChild(Landroid/view/View;Landroid/graphics/Rect;ZZ)V -HSPLandroid/view/ViewGroup;->onAttachedToWindow()V -HSPLandroid/view/ViewGroup;->onChildVisibilityChanged(Landroid/view/View;II)V -HSPLandroid/view/ViewGroup;->onCreateDrawableState(I)[I -HSPLandroid/view/ViewGroup;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V+]Landroid/view/ViewParent;missing_types -HSPLandroid/view/ViewGroup;->onDescendantUnbufferedRequested()V -HSPLandroid/view/ViewGroup;->onDetachedFromWindow()V -HSPLandroid/view/ViewGroup;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/view/ViewGroup;->onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z -HSPLandroid/view/ViewGroup;->onSetLayoutParams(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V+]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->onStartNestedScroll(Landroid/view/View;Landroid/view/View;I)Z -HSPLandroid/view/ViewGroup;->onViewAdded(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->onViewRemoved(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->populateChildrenForAutofill(Ljava/util/ArrayList;I)V -HSPLandroid/view/ViewGroup;->populateChildrenForContentCapture(Ljava/util/ArrayList;)V -HSPLandroid/view/ViewGroup;->recomputeViewAttributes(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->recreateChildDisplayList(Landroid/view/View;)V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->removeAllViews()V -HSPLandroid/view/ViewGroup;->removeAllViewsInLayout()V -HSPLandroid/view/ViewGroup;->removeDetachedView(Landroid/view/View;Z)V -HSPLandroid/view/ViewGroup;->removeFromArray(I)V -HSPLandroid/view/ViewGroup;->removeFromArray(II)V -HSPLandroid/view/ViewGroup;->removePointersFromTouchTargets(I)V -HSPLandroid/view/ViewGroup;->removeView(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->removeViewAt(I)V -HSPLandroid/view/ViewGroup;->removeViewInLayout(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->removeViewInternal(ILandroid/view/View;)V -HSPLandroid/view/ViewGroup;->removeViewInternal(Landroid/view/View;)Z -HSPLandroid/view/ViewGroup;->requestChildFocus(Landroid/view/View;Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z -HSPLandroid/view/ViewGroup;->requestDisallowInterceptTouchEvent(Z)V -HSPLandroid/view/ViewGroup;->requestFocus(ILandroid/graphics/Rect;)Z -HSPLandroid/view/ViewGroup;->requestTransitionStart(Landroid/animation/LayoutTransition;)V -HSPLandroid/view/ViewGroup;->requestTransparentRegion(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->resetCancelNextUpFlag(Landroid/view/View;)Z -HSPLandroid/view/ViewGroup;->resetResolvedDrawables()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedLayoutDirection()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedPadding()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedTextAlignment()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetResolvedTextDirection()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resetSubtreeAccessibilityStateChanged()V+]Landroid/view/View;missing_types -HSPLandroid/view/ViewGroup;->resetTouchState()V -HSPLandroid/view/ViewGroup;->resolveDrawables()V -HSPLandroid/view/ViewGroup;->resolveLayoutDirection()Z -HSPLandroid/view/ViewGroup;->resolveLayoutParams()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resolvePadding()V+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resolveRtlPropertiesIfNeeded()Z+]Landroid/view/View;missing_types]Landroid/view/ViewGroup;missing_types -HSPLandroid/view/ViewGroup;->resolveTextAlignment()Z -HSPLandroid/view/ViewGroup;->resolveTextDirection()Z -HSPLandroid/view/ViewGroup;->restoreDefaultFocus()Z -HSPLandroid/view/ViewGroup;->setAddStatesFromChildren(Z)V -HSPLandroid/view/ViewGroup;->setAlwaysDrawnWithCacheEnabled(Z)V -HSPLandroid/view/ViewGroup;->setBooleanFlag(IZ)V -HSPLandroid/view/ViewGroup;->setChildrenDrawingCacheEnabled(Z)V -HSPLandroid/view/ViewGroup;->setChildrenDrawingOrderEnabled(Z)V -HSPLandroid/view/ViewGroup;->setClipChildren(Z)V -HSPLandroid/view/ViewGroup;->setClipToPadding(Z)V -HSPLandroid/view/ViewGroup;->setDescendantFocusability(I)V -HSPLandroid/view/ViewGroup;->setLayoutTransition(Landroid/animation/LayoutTransition;)V -HSPLandroid/view/ViewGroup;->setMotionEventSplittingEnabled(Z)V -HSPLandroid/view/ViewGroup;->setOnHierarchyChangeListener(Landroid/view/ViewGroup$OnHierarchyChangeListener;)V -HSPLandroid/view/ViewGroup;->setTouchscreenBlocksFocus(Z)V -HSPLandroid/view/ViewGroup;->shouldBlockFocusForTouchscreen()Z -HSPLandroid/view/ViewGroup;->shouldDelayChildPressedState()Z -HSPLandroid/view/ViewGroup;->startViewTransition(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->suppressLayout(Z)V -HSPLandroid/view/ViewGroup;->touchAccessibilityNodeProviderIfNeeded(Landroid/view/View;)V+]Landroid/content/Context;missing_types -HSPLandroid/view/ViewGroup;->transformPointToViewLocal([FLandroid/view/View;)V -HSPLandroid/view/ViewGroup;->unFocus(Landroid/view/View;)V -HSPLandroid/view/ViewGroup;->updateLocalSystemUiVisibility(II)Z -HSPLandroid/view/ViewGroupOverlay;->add(Landroid/view/View;)V -HSPLandroid/view/ViewGroupOverlay;->remove(Landroid/view/View;)V -HSPLandroid/view/ViewOutlineProvider$1;->getOutline(Landroid/view/View;Landroid/graphics/Outline;)V+]Landroid/graphics/Outline;Landroid/graphics/Outline;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/view/View;missing_types -HSPLandroid/view/ViewOutlineProvider$2;->getOutline(Landroid/view/View;Landroid/graphics/Outline;)V -HSPLandroid/view/ViewOutlineProvider;-><init>()V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;-><init>(Landroid/content/Context;Landroid/view/View;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->add(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->add(Landroid/view/View;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->dispatchDraw(Landroid/graphics/Canvas;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->invalidate(IIII)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->invalidate(Landroid/graphics/Rect;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->invalidate(Z)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->invalidateParentIfNeeded()V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->isEmpty()Z -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V -HSPLandroid/view/ViewOverlay$OverlayViewGroup;->remove(Landroid/view/View;)V -HSPLandroid/view/ViewOverlay;-><init>(Landroid/content/Context;Landroid/view/View;)V -HSPLandroid/view/ViewOverlay;->add(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/view/ViewOverlay;->getOverlayView()Landroid/view/ViewGroup; -HSPLandroid/view/ViewOverlay;->isEmpty()Z -HSPLandroid/view/ViewPropertyAnimator$1;-><init>(Landroid/view/ViewPropertyAnimator;)V -HSPLandroid/view/ViewPropertyAnimator$1;->run()V -HSPLandroid/view/ViewPropertyAnimator$2;->run()V -HSPLandroid/view/ViewPropertyAnimator$3;->run()V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;-><init>(Landroid/view/ViewPropertyAnimator;)V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationCancel(Landroid/animation/Animator;)V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationEnd(Landroid/animation/Animator;)V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationStart(Landroid/animation/Animator;)V -HSPLandroid/view/ViewPropertyAnimator$AnimatorEventListener;->onAnimationUpdate(Landroid/animation/ValueAnimator;)V+]Landroid/animation/ValueAnimator;Landroid/animation/ValueAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLandroid/view/ViewPropertyAnimator$NameValuesHolder;-><init>(IFF)V -HSPLandroid/view/ViewPropertyAnimator$PropertyBundle;-><init>(ILjava/util/ArrayList;)V -HSPLandroid/view/ViewPropertyAnimator$PropertyBundle;->cancel(I)Z -HSPLandroid/view/ViewPropertyAnimator;-><init>(Landroid/view/View;)V -HSPLandroid/view/ViewPropertyAnimator;->alpha(F)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->animateProperty(IF)V -HSPLandroid/view/ViewPropertyAnimator;->animatePropertyBy(IFF)V -HSPLandroid/view/ViewPropertyAnimator;->cancel()V -HSPLandroid/view/ViewPropertyAnimator;->getValue(I)F -HSPLandroid/view/ViewPropertyAnimator;->scaleX(F)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->scaleY(F)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->setDuration(J)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->setListener(Landroid/animation/Animator$AnimatorListener;)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->setStartDelay(J)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->setValue(IF)V -HSPLandroid/view/ViewPropertyAnimator;->start()V -HSPLandroid/view/ViewPropertyAnimator;->startAnimation()V -HSPLandroid/view/ViewPropertyAnimator;->translationX(F)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->translationY(F)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->withEndAction(Ljava/lang/Runnable;)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->withLayer()Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewPropertyAnimator;->withStartAction(Ljava/lang/Runnable;)Landroid/view/ViewPropertyAnimator; -HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda17;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda3;->run()V -HSPLandroid/view/ViewRootImpl$AccessibilityInteractionConnectionManager;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$AccessibilityInteractionConnectionManager;->ensureNoConnection()V -HSPLandroid/view/ViewRootImpl$AsyncInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl$AsyncInputStage;->apply(Landroid/view/ViewRootImpl$QueuedInputEvent;I)V -HSPLandroid/view/ViewRootImpl$AsyncInputStage;->defer(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$AsyncInputStage;->dequeue(Landroid/view/ViewRootImpl$QueuedInputEvent;Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$AsyncInputStage;->forward(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$ConsumeBatchedInputImmediatelyRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$ConsumeBatchedInputRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$ConsumeBatchedInputRunnable;->run()V -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;)V -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processKeyEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processMotionEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$EarlyPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; -HSPLandroid/view/ViewRootImpl$HighContrastTextManager;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$ImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl$ImeInputStage;->onFinishedInputEvent(Ljava/lang/Object;Z)V -HSPLandroid/view/ViewRootImpl$ImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$InputMetricsListener;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$InputMetricsListener;->onFrameMetricsAvailable(I)V -HSPLandroid/view/ViewRootImpl$InputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;)V -HSPLandroid/view/ViewRootImpl$InputStage;->apply(Landroid/view/ViewRootImpl$QueuedInputEvent;I)V -HSPLandroid/view/ViewRootImpl$InputStage;->deliver(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$InputStage;->finish(Landroid/view/ViewRootImpl$QueuedInputEvent;Z)V -HSPLandroid/view/ViewRootImpl$InputStage;->forward(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$InputStage;->onDeliverToNext(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$InputStage;->onDetachedFromWindow()V -HSPLandroid/view/ViewRootImpl$InputStage;->onWindowFocusChanged(Z)V -HSPLandroid/view/ViewRootImpl$InputStage;->shouldDropInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)Z+]Landroid/view/InputEvent;Landroid/view/MotionEvent; -HSPLandroid/view/ViewRootImpl$InputStage;->traceEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;J)V+]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;Landroid/view/ViewRootImpl$EarlyPostImeInputStage;,Landroid/view/ViewRootImpl$NativePostImeInputStage;,Landroid/view/ViewRootImpl$SyntheticInputStage;,Landroid/view/ViewRootImpl$ViewPostImeInputStage;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->addView(Landroid/view/View;)V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->postIfNeededLocked()V+]Landroid/view/Choreographer;Landroid/view/Choreographer; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->removeView(Landroid/view/View;)V+]Landroid/view/Choreographer;Landroid/view/Choreographer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;->run()V+]Landroid/view/View;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl$NativePostImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl$NativePostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$NativePreImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl$NativePreImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$QueuedInputEvent;-><init>()V -HSPLandroid/view/ViewRootImpl$QueuedInputEvent;->shouldSendToSynthesizer()Z -HSPLandroid/view/ViewRootImpl$QueuedInputEvent;->shouldSkipIme()Z -HSPLandroid/view/ViewRootImpl$SyntheticInputStage;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$SyntheticInputStage;->onDeliverToNext(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$SyntheticInputStage;->onDetachedFromWindow()V -HSPLandroid/view/ViewRootImpl$SyntheticInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$SyntheticInputStage;->onWindowFocusChanged(Z)V -HSPLandroid/view/ViewRootImpl$SyntheticJoystickHandler$JoystickAxesState;-><init>(Landroid/view/ViewRootImpl$SyntheticJoystickHandler;)V -HSPLandroid/view/ViewRootImpl$SyntheticJoystickHandler$JoystickAxesState;->resetState()V -HSPLandroid/view/ViewRootImpl$SyntheticJoystickHandler;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$SyntheticJoystickHandler;->cancel()V -HSPLandroid/view/ViewRootImpl$SyntheticKeyboardHandler;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$SyntheticTouchNavigationHandler;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$SyntheticTrackballHandler;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$SystemUiVisibilityInfo;-><init>()V -HSPLandroid/view/ViewRootImpl$TrackballAxis;-><init>()V -HSPLandroid/view/ViewRootImpl$TraversalRunnable;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$TraversalRunnable;->run()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;-><init>()V -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;-><init>(Landroid/view/ViewRootImpl$UnhandledKeyManager-IA;)V -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->dispatch(Landroid/view/View;Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->preDispatch(Landroid/view/KeyEvent;)V -HSPLandroid/view/ViewRootImpl$UnhandledKeyManager;->preViewDispatch(Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;)V -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->maybeUpdatePointerIcon(Landroid/view/MotionEvent;)V -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->onDeliverToNext(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->processKeyEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$ViewPostImeInputStage;->processPointerEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)I+]Landroid/view/HandwritingInitiator;Landroid/view/HandwritingInitiator;]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl$ViewPreImeInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;)V -HSPLandroid/view/ViewRootImpl$ViewPreImeInputStage;->onProcess(Landroid/view/ViewRootImpl$QueuedInputEvent;)I -HSPLandroid/view/ViewRootImpl$ViewRootHandler;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$ViewRootHandler;->getMessageName(Landroid/os/Message;)Ljava/lang/String; -HSPLandroid/view/ViewRootImpl$ViewRootHandler;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/ViewRootImpl$ViewRootHandler;->handleMessageImpl(Landroid/os/Message;)V -HSPLandroid/view/ViewRootImpl$ViewRootHandler;->sendMessageAtTime(Landroid/os/Message;J)Z -HSPLandroid/view/ViewRootImpl$W;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootImpl$W;->closeSystemDialogs(Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl$W;->dispatchAppVisibility(Z)V -HSPLandroid/view/ViewRootImpl$W;->dispatchWindowShown()V -HSPLandroid/view/ViewRootImpl$W;->moved(II)V -HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;-><init>(Landroid/view/ViewRootImpl;Landroid/view/InputChannel;Landroid/os/Looper;)V -HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->dispose()V -HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onBatchedInputEventPending(I)V -HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onFocusEvent(Z)V -HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onInputEvent(Landroid/view/InputEvent;)V -HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmBlastBufferQueue(Landroid/view/ViewRootImpl;)Landroid/graphics/BLASTBufferQueue; -HSPLandroid/view/ViewRootImpl;->-$$Nest$fputmProfileRendering(Landroid/view/ViewRootImpl;Z)V -HSPLandroid/view/ViewRootImpl;->-$$Nest$mprofileRendering(Landroid/view/ViewRootImpl;Z)V -HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;)V -HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;Landroid/view/IWindowSession;Landroid/view/WindowLayout;)V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowLeaked;Landroid/view/WindowLeaked;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/Optional;Ljava/util/Optional; -HSPLandroid/view/ViewRootImpl;->addConfigCallback(Landroid/view/ViewRootImpl$ConfigChangedCallback;)V -HSPLandroid/view/ViewRootImpl;->addFrameCommitCallbackIfNeeded()V -HSPLandroid/view/ViewRootImpl;->addSurfaceChangedCallback(Landroid/view/ViewRootImpl$SurfaceChangedCallback;)V -HSPLandroid/view/ViewRootImpl;->addWindowCallbacks(Landroid/view/WindowCallbacks;)V -HSPLandroid/view/ViewRootImpl;->applyKeepScreenOnFlag(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ViewRootImpl;->applyTransactionOnDraw(Landroid/view/SurfaceControl$Transaction;)Z -HSPLandroid/view/ViewRootImpl;->canResolveTextDirection()Z -HSPLandroid/view/ViewRootImpl;->cancelInvalidate(Landroid/view/View;)V+]Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler; -HSPLandroid/view/ViewRootImpl;->checkForLeavingTouchModeAndConsume(Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewRootImpl;->checkThread()V -HSPLandroid/view/ViewRootImpl;->childDrawableStateChanged(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->childHasTransientStateChanged(Landroid/view/View;Z)V -HSPLandroid/view/ViewRootImpl;->clearChildFocus(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->clearLowProfileModeIfNeeded(IZ)V -HSPLandroid/view/ViewRootImpl;->collectViewAttributes()Z+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl;->controlInsetsForCompatibility(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ViewRootImpl;->createSyncIfNeeded()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/window/SurfaceSyncGroup;Landroid/window/SurfaceSyncGroup;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->deliverInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)V+]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Landroid/view/ViewRootImpl$InputStage;Landroid/view/ViewRootImpl$EarlyPostImeInputStage;]Landroid/view/ViewRootImpl$QueuedInputEvent;Landroid/view/ViewRootImpl$QueuedInputEvent;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->destroyHardwareRenderer()V -HSPLandroid/view/ViewRootImpl;->destroyHardwareResources()V -HSPLandroid/view/ViewRootImpl;->destroySurface()V -HSPLandroid/view/ViewRootImpl;->die(Z)Z -HSPLandroid/view/ViewRootImpl;->dipToPx(I)I -HSPLandroid/view/ViewRootImpl;->dispatchAppVisibility(Z)V -HSPLandroid/view/ViewRootImpl;->dispatchApplyInsets(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->dispatchCheckFocus()V -HSPLandroid/view/ViewRootImpl;->dispatchDetachedFromWindow()V -HSPLandroid/view/ViewRootImpl;->dispatchDispatchSystemUiVisibilityChanged()V -HSPLandroid/view/ViewRootImpl;->dispatchFocusEvent(ZZ)V -HSPLandroid/view/ViewRootImpl;->dispatchInvalidateDelayed(Landroid/view/View;J)V -HSPLandroid/view/ViewRootImpl;->dispatchInvalidateOnAnimation(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->dispatchMoved(II)V -HSPLandroid/view/ViewRootImpl;->doConsumeBatchedInput(J)Z -HSPLandroid/view/ViewRootImpl;->doDie()V -HSPLandroid/view/ViewRootImpl;->doProcessInputEvents()V+]Landroid/view/InputEventAssigner;Landroid/view/InputEventAssigner;]Landroid/view/ViewFrameInfo;Landroid/view/ViewFrameInfo; -HSPLandroid/view/ViewRootImpl;->doTraversal()V+]Landroid/os/Looper;Landroid/os/Looper;]Landroid/os/MessageQueue;Landroid/os/MessageQueue;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler; -HSPLandroid/view/ViewRootImpl;->draw(ZLandroid/window/SurfaceSyncGroup;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/HdrRenderState;Landroid/view/HdrRenderState;]Landroid/view/Surface;Landroid/view/Surface;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver; -HSPLandroid/view/ViewRootImpl;->drawAccessibilityFocusedDrawableIfNeeded(Landroid/graphics/Canvas;)V -HSPLandroid/view/ViewRootImpl;->drawSoftware(Landroid/view/Surface;Landroid/view/View$AttachInfo;IIZLandroid/graphics/Rect;Landroid/graphics/Rect;)Z -HSPLandroid/view/ViewRootImpl;->enableHardwareAcceleration(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/ViewRootImpl;->endDragResizing()V -HSPLandroid/view/ViewRootImpl;->enqueueInputEvent(Landroid/view/InputEvent;)V -HSPLandroid/view/ViewRootImpl;->enqueueInputEvent(Landroid/view/InputEvent;Landroid/view/InputEventReceiver;IZ)V -HSPLandroid/view/ViewRootImpl;->ensureTouchMode(Z)Z -HSPLandroid/view/ViewRootImpl;->ensureTouchModeLocally(Z)Z -HSPLandroid/view/ViewRootImpl;->enterTouchMode()Z -HSPLandroid/view/ViewRootImpl;->findOnBackInvokedDispatcherForChild(Landroid/view/View;Landroid/view/View;)Landroid/window/OnBackInvokedDispatcher; -HSPLandroid/view/ViewRootImpl;->finishInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl;->fireAccessibilityFocusEventIfHasFocusedNode()V -HSPLandroid/view/ViewRootImpl;->focusableViewAvailable(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->forceLayout(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->getAccessibilityFocusedHost()Landroid/view/View; -HSPLandroid/view/ViewRootImpl;->getAccessibilityFocusedRect(Landroid/graphics/Rect;)Z -HSPLandroid/view/ViewRootImpl;->getAudioManager()Landroid/media/AudioManager; -HSPLandroid/view/ViewRootImpl;->getAutofillManager()Landroid/view/autofill/AutofillManager; -HSPLandroid/view/ViewRootImpl;->getBufferTransformHint()I -HSPLandroid/view/ViewRootImpl;->getChildVisibleRect(Landroid/view/View;Landroid/graphics/Rect;Landroid/graphics/Point;)Z -HSPLandroid/view/ViewRootImpl;->getCompatWindowConfiguration()Landroid/app/WindowConfiguration; -HSPLandroid/view/ViewRootImpl;->getConfiguration()Landroid/content/res/Configuration;+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLandroid/view/ViewRootImpl;->getDisplayId()I -HSPLandroid/view/ViewRootImpl;->getHandwritingInitiator()Landroid/view/HandwritingInitiator; -HSPLandroid/view/ViewRootImpl;->getHostVisibility()I+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl;->getImeFocusController()Landroid/view/ImeFocusController; -HSPLandroid/view/ViewRootImpl;->getImpliedSystemUiVisibility(Landroid/view/WindowManager$LayoutParams;)I -HSPLandroid/view/ViewRootImpl;->getInsetsController()Landroid/view/InsetsController; -HSPLandroid/view/ViewRootImpl;->getNightMode()I -HSPLandroid/view/ViewRootImpl;->getOnBackInvokedDispatcher()Landroid/window/WindowOnBackInvokedDispatcher; -HSPLandroid/view/ViewRootImpl;->getOrCreateSurfaceSyncGroup()Landroid/window/SurfaceSyncGroup; -HSPLandroid/view/ViewRootImpl;->getParent()Landroid/view/ViewParent; -HSPLandroid/view/ViewRootImpl;->getRootMeasureSpec(III)I -HSPLandroid/view/ViewRootImpl;->getRunQueue()Landroid/view/HandlerActionQueue;+]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal; -HSPLandroid/view/ViewRootImpl;->getSurfaceControl()Landroid/view/SurfaceControl; -HSPLandroid/view/ViewRootImpl;->getSurfaceSequenceId()I -HSPLandroid/view/ViewRootImpl;->getTextDirection()I -HSPLandroid/view/ViewRootImpl;->getTitle()Ljava/lang/CharSequence; -HSPLandroid/view/ViewRootImpl;->getUpdatedFrameInfo()Landroid/graphics/FrameInfo; -HSPLandroid/view/ViewRootImpl;->getValidLayoutRequesters(Ljava/util/ArrayList;Z)Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->getView()Landroid/view/View; -HSPLandroid/view/ViewRootImpl;->getViewBoundsSandboxingEnabled()Z -HSPLandroid/view/ViewRootImpl;->getWindowBoundsInsetSystemBars()Landroid/graphics/Rect; -HSPLandroid/view/ViewRootImpl;->getWindowFlags()I -HSPLandroid/view/ViewRootImpl;->getWindowInsets(Z)Landroid/view/WindowInsets;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/graphics/Insets;Landroid/graphics/Insets;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/WindowInsets;Landroid/view/WindowInsets; -HSPLandroid/view/ViewRootImpl;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->handleAppVisibility(Z)V -HSPLandroid/view/ViewRootImpl;->handleContentCaptureFlush()V -HSPLandroid/view/ViewRootImpl;->handleDispatchSystemUiVisibilityChanged()V -HSPLandroid/view/ViewRootImpl;->handleWindowFocusChanged()V -HSPLandroid/view/ViewRootImpl;->invalidate()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->invalidateChild(Landroid/view/View;Landroid/graphics/Rect;)V -HSPLandroid/view/ViewRootImpl;->invalidateChildInParent([ILandroid/graphics/Rect;)Landroid/view/ViewParent; -HSPLandroid/view/ViewRootImpl;->invalidateRectOnScreen(Landroid/graphics/Rect;)V -HSPLandroid/view/ViewRootImpl;->isContentCaptureEnabled()Z -HSPLandroid/view/ViewRootImpl;->isContentCaptureReallyEnabled()Z -HSPLandroid/view/ViewRootImpl;->isHardwareEnabled()Z+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; -HSPLandroid/view/ViewRootImpl;->isInLayout()Z -HSPLandroid/view/ViewRootImpl;->isInTouchMode()Z -HSPLandroid/view/ViewRootImpl;->isInWMSRequestedSync()Z -HSPLandroid/view/ViewRootImpl;->isLayoutRequested()Z -HSPLandroid/view/ViewRootImpl;->isNavigationKey(Landroid/view/KeyEvent;)Z -HSPLandroid/view/ViewRootImpl;->isTextDirectionResolved()Z -HSPLandroid/view/ViewRootImpl;->keepClearRectsChanged(Z)V -HSPLandroid/view/ViewRootImpl;->lambda$createSyncIfNeeded$4(ILandroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/ViewRootImpl;->lambda$getOrCreateSurfaceSyncGroup$14()V -HSPLandroid/view/ViewRootImpl;->lambda$new$0(Landroid/view/View;)Ljava/util/List; -HSPLandroid/view/ViewRootImpl;->lambda$new$1(Landroid/view/View;)Ljava/util/List; -HSPLandroid/view/ViewRootImpl;->lambda$new$2(Landroid/view/View;)Ljava/util/List; -HSPLandroid/view/ViewRootImpl;->loadSystemProperties()V -HSPLandroid/view/ViewRootImpl;->maybeFireAccessibilityWindowStateChangedEvent()V -HSPLandroid/view/ViewRootImpl;->maybeHandleWindowMove(Landroid/graphics/Rect;)V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; -HSPLandroid/view/ViewRootImpl;->maybeUpdateTooltip(Landroid/view/MotionEvent;)V -HSPLandroid/view/ViewRootImpl;->measureHierarchy(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/content/res/Resources;IIZ)Z+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl;->mergeWithNextTransaction(Landroid/view/SurfaceControl$Transaction;J)V -HSPLandroid/view/ViewRootImpl;->notifyContentCaptureEvents()V -HSPLandroid/view/ViewRootImpl;->notifyDrawStarted(Z)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->notifyInsetsChanged()V -HSPLandroid/view/ViewRootImpl;->notifyRendererOfFramePending()V+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; -HSPLandroid/view/ViewRootImpl;->notifySurfaceCreated(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/ViewRootImpl;->notifySurfaceDestroyed()V -HSPLandroid/view/ViewRootImpl;->obtainQueuedInputEvent(Landroid/view/InputEvent;Landroid/view/InputEventReceiver;I)Landroid/view/ViewRootImpl$QueuedInputEvent; -HSPLandroid/view/ViewRootImpl;->onDescendantInvalidated(Landroid/view/View;Landroid/view/View;)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->onDescendantUnbufferedRequested()V -HSPLandroid/view/ViewRootImpl;->onMovedToDisplay(ILandroid/content/res/Configuration;)V -HSPLandroid/view/ViewRootImpl;->onPostDraw(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/view/ViewRootImpl;->onPreDraw(Landroid/graphics/RecordingCanvas;)V -HSPLandroid/view/ViewRootImpl;->onStartNestedScroll(Landroid/view/View;Landroid/view/View;I)Z -HSPLandroid/view/ViewRootImpl;->performContentCaptureInitialReport()V -HSPLandroid/view/ViewRootImpl;->performDraw(Landroid/window/SurfaceSyncGroup;)Z+]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->performLayout(Landroid/view/WindowManager$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->performMeasure(II)V+]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView; -HSPLandroid/view/ViewRootImpl;->performTraversals()V+]Landroid/content/Context;missing_types]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Landroid/view/HandlerActionQueue;Landroid/view/HandlerActionQueue;]Landroid/view/ImeFocusController;Landroid/view/ImeFocusController;]Landroid/view/Surface;Landroid/view/Surface;]Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/ViewTreeObserver;Landroid/view/ViewTreeObserver;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Landroid/window/SurfaceSyncGroup;Landroid/window/SurfaceSyncGroup;]Landroid/window/WindowOnBackInvokedDispatcher;Landroid/window/WindowOnBackInvokedDispatcher;]Lcom/android/internal/view/RootViewSurfaceTaker;Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->playSoundEffect(I)V -HSPLandroid/view/ViewRootImpl;->pokeDrawLockIfNeeded()V -HSPLandroid/view/ViewRootImpl;->prepareSurfaces()V -HSPLandroid/view/ViewRootImpl;->profileRendering(Z)V -HSPLandroid/view/ViewRootImpl;->recomputeViewAttributes(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->recycleQueuedInputEvent(Landroid/view/ViewRootImpl$QueuedInputEvent;)V -HSPLandroid/view/ViewRootImpl;->registerAnimatingRenderNode(Landroid/graphics/RenderNode;)V -HSPLandroid/view/ViewRootImpl;->registerBackCallbackOnWindow()V -HSPLandroid/view/ViewRootImpl;->registerCallbackForPendingTransactions()V -HSPLandroid/view/ViewRootImpl;->registerCallbacksForSync(ZLandroid/window/SurfaceSyncGroup;)V -HSPLandroid/view/ViewRootImpl;->registerCompatOnBackInvokedCallback()V -HSPLandroid/view/ViewRootImpl;->registerListeners()V -HSPLandroid/view/ViewRootImpl;->registerRtFrameCallback(Landroid/graphics/HardwareRenderer$FrameDrawingCallback;)V -HSPLandroid/view/ViewRootImpl;->relayoutWindow(Landroid/view/WindowManager$LayoutParams;IZ)I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Landroid/view/Display;Landroid/view/Display;]Landroid/view/HdrRenderState;Landroid/view/HdrRenderState;]Landroid/view/IWindowSession;Landroid/view/IWindowSession$Stub$Proxy;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->removeSendWindowContentChangedCallback()V -HSPLandroid/view/ViewRootImpl;->removeSurfaceChangedCallback(Landroid/view/ViewRootImpl$SurfaceChangedCallback;)V -HSPLandroid/view/ViewRootImpl;->removeWindowCallbacks(Landroid/view/WindowCallbacks;)V -HSPLandroid/view/ViewRootImpl;->reportDrawFinished(Landroid/view/SurfaceControl$Transaction;I)V -HSPLandroid/view/ViewRootImpl;->reportNextDraw(Ljava/lang/String;)V -HSPLandroid/view/ViewRootImpl;->requestChildFocus(Landroid/view/View;Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z -HSPLandroid/view/ViewRootImpl;->requestDisallowInterceptTouchEvent(Z)V -HSPLandroid/view/ViewRootImpl;->requestFitSystemWindows()V -HSPLandroid/view/ViewRootImpl;->requestLayout()V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->requestLayoutDuringLayout(Landroid/view/View;)Z -HSPLandroid/view/ViewRootImpl;->requestTransparentRegion(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->scheduleConsumeBatchedInput()V+]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer; -HSPLandroid/view/ViewRootImpl;->scheduleTraversals()V+]Landroid/os/Looper;Landroid/os/Looper;]Landroid/os/MessageQueue;Landroid/os/MessageQueue;]Landroid/view/Choreographer;Landroid/view/Choreographer;]Landroid/view/ViewRootImpl$ViewRootHandler;Landroid/view/ViewRootImpl$ViewRootHandler;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl; -HSPLandroid/view/ViewRootImpl;->scrollToRectOrFocus(Landroid/graphics/Rect;Z)Z -HSPLandroid/view/ViewRootImpl;->sendBackKeyEvent(I)V -HSPLandroid/view/ViewRootImpl;->setAccessibilityFocus(Landroid/view/View;Landroid/view/accessibility/AccessibilityNodeInfo;)V -HSPLandroid/view/ViewRootImpl;->setAccessibilityWindowAttributesIfNeeded()V -HSPLandroid/view/ViewRootImpl;->setActivityConfigCallback(Landroid/view/ViewRootImpl$ActivityConfigCallback;)V -HSPLandroid/view/ViewRootImpl;->setBoundsLayerCrop(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/view/ViewRootImpl;->setFrame(Landroid/graphics/Rect;Z)V -HSPLandroid/view/ViewRootImpl;->setLayoutParams(Landroid/view/WindowManager$LayoutParams;Z)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; -HSPLandroid/view/ViewRootImpl;->setOnContentApplyWindowInsetsListener(Landroid/view/Window$OnContentApplyWindowInsetsListener;)V -HSPLandroid/view/ViewRootImpl;->setTag()V -HSPLandroid/view/ViewRootImpl;->setView(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/view/View;I)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/CompatibilityInfo;Landroid/content/res/CompatibilityInfo$1;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/Display;Landroid/view/Display;]Landroid/view/DisplayAdjustments;Landroid/view/DisplayAdjustments;]Landroid/view/FallbackEventHandler;Lcom/android/internal/policy/PhoneFallbackEventHandler;]Landroid/view/IWindowSession;Landroid/view/IWindowSession$Stub$Proxy;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/PendingInsetsController;Landroid/view/PendingInsetsController;]Landroid/view/ThreadedRenderer;Landroid/view/ThreadedRenderer;]Landroid/view/View;Landroid/widget/FrameLayout;,Lcom/android/internal/policy/DecorView;]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowLayout;Landroid/view/WindowLayout;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Lcom/android/internal/view/RootViewSurfaceTaker;Lcom/android/internal/policy/DecorView;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLandroid/view/ViewRootImpl;->setWindowStopped(Z)V -HSPLandroid/view/ViewRootImpl;->shouldDispatchCutout()Z -HSPLandroid/view/ViewRootImpl;->shouldOptimizeMeasure(Landroid/view/WindowManager$LayoutParams;)Z -HSPLandroid/view/ViewRootImpl;->shouldUseDisplaySize(Landroid/view/WindowManager$LayoutParams;)Z -HSPLandroid/view/ViewRootImpl;->systemGestureExclusionChanged()V -HSPLandroid/view/ViewRootImpl;->unscheduleConsumeBatchedInput()V -HSPLandroid/view/ViewRootImpl;->unscheduleTraversals()V -HSPLandroid/view/ViewRootImpl;->updateBlastSurfaceIfNeeded()V -HSPLandroid/view/ViewRootImpl;->updateBoundsLayer(Landroid/view/SurfaceControl$Transaction;)Z -HSPLandroid/view/ViewRootImpl;->updateCompatSysUiVisibility(III)V -HSPLandroid/view/ViewRootImpl;->updateCompatSystemUiVisibilityInfo(IIII)V -HSPLandroid/view/ViewRootImpl;->updateConfiguration(I)V -HSPLandroid/view/ViewRootImpl;->updateContentDrawBounds()Z+]Landroid/view/WindowCallbacks;Lcom/android/internal/policy/DecorView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/ViewRootImpl;->updateForceDarkMode()V -HSPLandroid/view/ViewRootImpl;->updateInternalDisplay(ILandroid/content/res/Resources;)V -HSPLandroid/view/ViewRootImpl;->updateKeepClearForAccessibilityFocusRect()V -HSPLandroid/view/ViewRootImpl;->updateKeepClearRectsForView(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->updateOpacity(Landroid/view/WindowManager$LayoutParams;ZZ)V -HSPLandroid/view/ViewRootImpl;->updateSyncInProgressCount(Landroid/window/SurfaceSyncGroup;)V -HSPLandroid/view/ViewRootImpl;->updateSystemGestureExclusionRectsForView(Landroid/view/View;)V -HSPLandroid/view/ViewRootImpl;->windowFocusChanged(Z)V -HSPLandroid/view/ViewRootInsetsControllerHost;-><init>(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/ViewRootInsetsControllerHost;->dipToPx(I)I -HSPLandroid/view/ViewRootInsetsControllerHost;->dispatchWindowInsetsAnimationEnd(Landroid/view/WindowInsetsAnimation;)V -HSPLandroid/view/ViewRootInsetsControllerHost;->getHandler()Landroid/os/Handler; -HSPLandroid/view/ViewRootInsetsControllerHost;->getInputMethodManager()Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/ViewRootInsetsControllerHost;->getSystemBarsAppearance()I -HSPLandroid/view/ViewRootInsetsControllerHost;->getSystemBarsBehavior()I -HSPLandroid/view/ViewRootInsetsControllerHost;->getTranslator()Landroid/content/res/CompatibilityInfo$Translator; -HSPLandroid/view/ViewRootInsetsControllerHost;->getWindowToken()Landroid/os/IBinder; -HSPLandroid/view/ViewRootInsetsControllerHost;->hasAnimationCallbacks()Z -HSPLandroid/view/ViewRootInsetsControllerHost;->notifyInsetsChanged()V -HSPLandroid/view/ViewRootInsetsControllerHost;->updateCompatSysUiVisibility(III)V -HSPLandroid/view/ViewRootRectTracker$ViewInfo;-><init>(Landroid/view/ViewRootRectTracker;Landroid/view/View;)V -HSPLandroid/view/ViewRootRectTracker$ViewInfo;->getView()Landroid/view/View; -HSPLandroid/view/ViewRootRectTracker$ViewInfo;->update()I -HSPLandroid/view/ViewRootRectTracker;->-$$Nest$mgetTrackedRectsForView(Landroid/view/ViewRootRectTracker;Landroid/view/View;)Ljava/util/List; -HSPLandroid/view/ViewRootRectTracker;-><init>(Ljava/util/function/Function;)V -HSPLandroid/view/ViewRootRectTracker;->computeChangedRects()Ljava/util/List; -HSPLandroid/view/ViewRootRectTracker;->computeChanges()Z -HSPLandroid/view/ViewRootRectTracker;->getTrackedRectsForView(Landroid/view/View;)Ljava/util/List; -HSPLandroid/view/ViewRootRectTracker;->updateRectsForView(Landroid/view/View;)V -HSPLandroid/view/ViewStructure;-><init>()V -HSPLandroid/view/ViewStructure;->setImportantForAutofill(I)V -HSPLandroid/view/ViewStub;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/ViewStub;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/view/ViewStub;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/view/ViewStub;->inflate()Landroid/view/View; -HSPLandroid/view/ViewStub;->setLayoutInflater(Landroid/view/LayoutInflater;)V -HSPLandroid/view/ViewStub;->setLayoutResource(I)V -HSPLandroid/view/ViewStub;->setOnInflateListener(Landroid/view/ViewStub$OnInflateListener;)V -HSPLandroid/view/ViewStub;->setVisibility(I)V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray$Access;-><init>()V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray$Access;->get(I)Ljava/lang/Object; -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray$Access;->size()I -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;-><init>()V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->add(Ljava/lang/Object;)V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->addAll(Landroid/view/ViewTreeObserver$CopyOnWriteArray;)V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->end()V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->getArray()Ljava/util/ArrayList; -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->remove(Ljava/lang/Object;)V -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->size()I -HSPLandroid/view/ViewTreeObserver$CopyOnWriteArray;->start()Landroid/view/ViewTreeObserver$CopyOnWriteArray$Access; -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;-><init>()V -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;->isEmpty()Z -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;->reset()V -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;->set(Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V -HSPLandroid/view/ViewTreeObserver$InternalInsetsInfo;->setTouchableInsets(I)V -HSPLandroid/view/ViewTreeObserver;-><init>(Landroid/content/Context;)V -HSPLandroid/view/ViewTreeObserver;->addOnComputeInternalInsetsListener(Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;)V -HSPLandroid/view/ViewTreeObserver;->addOnDrawListener(Landroid/view/ViewTreeObserver$OnDrawListener;)V -HSPLandroid/view/ViewTreeObserver;->addOnGlobalLayoutListener(Landroid/view/ViewTreeObserver$OnGlobalLayoutListener;)V -HSPLandroid/view/ViewTreeObserver;->addOnPreDrawListener(Landroid/view/ViewTreeObserver$OnPreDrawListener;)V -HSPLandroid/view/ViewTreeObserver;->addOnScrollChangedListener(Landroid/view/ViewTreeObserver$OnScrollChangedListener;)V -HSPLandroid/view/ViewTreeObserver;->captureFrameCommitCallbacks()Ljava/util/ArrayList; -HSPLandroid/view/ViewTreeObserver;->checkIsAlive()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnComputeInternalInsets(Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V -HSPLandroid/view/ViewTreeObserver;->dispatchOnDraw()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnEnterAnimationComplete()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnGlobalLayout()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnPreDraw()Z -HSPLandroid/view/ViewTreeObserver;->dispatchOnScrollChanged()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnSystemGestureExclusionRectsChanged(Ljava/util/List;)V -HSPLandroid/view/ViewTreeObserver;->dispatchOnTouchModeChanged(Z)V -HSPLandroid/view/ViewTreeObserver;->dispatchOnWindowAttachedChange(Z)V -HSPLandroid/view/ViewTreeObserver;->dispatchOnWindowFocusChange(Z)V -HSPLandroid/view/ViewTreeObserver;->dispatchOnWindowShown()V -HSPLandroid/view/ViewTreeObserver;->dispatchOnWindowVisibilityChange(I)V -HSPLandroid/view/ViewTreeObserver;->hasComputeInternalInsetsListeners()Z -HSPLandroid/view/ViewTreeObserver;->isAlive()Z -HSPLandroid/view/ViewTreeObserver;->kill()V -HSPLandroid/view/ViewTreeObserver;->merge(Landroid/view/ViewTreeObserver;)V -HSPLandroid/view/ViewTreeObserver;->removeGlobalOnLayoutListener(Landroid/view/ViewTreeObserver$OnGlobalLayoutListener;)V -HSPLandroid/view/ViewTreeObserver;->removeOnComputeInternalInsetsListener(Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;)V -HSPLandroid/view/ViewTreeObserver;->removeOnDrawListener(Landroid/view/ViewTreeObserver$OnDrawListener;)V -HSPLandroid/view/ViewTreeObserver;->removeOnGlobalLayoutListener(Landroid/view/ViewTreeObserver$OnGlobalLayoutListener;)V -HSPLandroid/view/ViewTreeObserver;->removeOnPreDrawListener(Landroid/view/ViewTreeObserver$OnPreDrawListener;)V -HSPLandroid/view/ViewTreeObserver;->removeOnScrollChangedListener(Landroid/view/ViewTreeObserver$OnScrollChangedListener;)V -HSPLandroid/view/Window;-><init>(Landroid/content/Context;)V -HSPLandroid/view/Window;->addFlags(I)V -HSPLandroid/view/Window;->addOnFrameMetricsAvailableListener(Landroid/view/Window$OnFrameMetricsAvailableListener;Landroid/os/Handler;)V -HSPLandroid/view/Window;->adjustLayoutParamsForSubWindow(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/Window;->clearFlags(I)V -HSPLandroid/view/Window;->dispatchWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/Window;->findViewById(I)Landroid/view/View; -HSPLandroid/view/Window;->getAttributes()Landroid/view/WindowManager$LayoutParams; -HSPLandroid/view/Window;->getCallback()Landroid/view/Window$Callback; -HSPLandroid/view/Window;->getColorMode()I -HSPLandroid/view/Window;->getContainer()Landroid/view/Window; -HSPLandroid/view/Window;->getContext()Landroid/content/Context; -HSPLandroid/view/Window;->getDefaultFeatures(Landroid/content/Context;)I -HSPLandroid/view/Window;->getFeatures()I -HSPLandroid/view/Window;->getForcedWindowFlags()I -HSPLandroid/view/Window;->getLocalFeatures()I -HSPLandroid/view/Window;->getWindowControllerCallback()Landroid/view/Window$WindowControllerCallback; -HSPLandroid/view/Window;->getWindowManager()Landroid/view/WindowManager; -HSPLandroid/view/Window;->getWindowStyle()Landroid/content/res/TypedArray; -HSPLandroid/view/Window;->hasFeature(I)Z -HSPLandroid/view/Window;->hasSoftInputMode()Z -HSPLandroid/view/Window;->haveDimAmount()Z -HSPLandroid/view/Window;->isDestroyed()Z -HSPLandroid/view/Window;->isOutOfBounds(Landroid/content/Context;Landroid/view/MotionEvent;)Z -HSPLandroid/view/Window;->isOverlayWithDecorCaptionEnabled()Z -HSPLandroid/view/Window;->isWideColorGamut()Z -HSPLandroid/view/Window;->makeActive()V -HSPLandroid/view/Window;->onDrawLegacyNavigationBarBackgroundChanged(Z)Z -HSPLandroid/view/Window;->removeOnFrameMetricsAvailableListener(Landroid/view/Window$OnFrameMetricsAvailableListener;)V -HSPLandroid/view/Window;->requestFeature(I)Z -HSPLandroid/view/Window;->setAttributes(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/Window;->setBackgroundBlurRadius(I)V -HSPLandroid/view/Window;->setCallback(Landroid/view/Window$Callback;)V -HSPLandroid/view/Window;->setCloseOnTouchOutside(Z)V -HSPLandroid/view/Window;->setCloseOnTouchOutsideIfNotSet(Z)V -HSPLandroid/view/Window;->setColorMode(I)V -HSPLandroid/view/Window;->setDefaultWindowFormat(I)V -HSPLandroid/view/Window;->setFlags(II)V -HSPLandroid/view/Window;->setGravity(I)V -HSPLandroid/view/Window;->setLayout(II)V -HSPLandroid/view/Window;->setOnWindowDismissedCallback(Landroid/view/Window$OnWindowDismissedCallback;)V -HSPLandroid/view/Window;->setPreferMinimalPostProcessing(Z)V -HSPLandroid/view/Window;->setSoftInputMode(I)V -HSPLandroid/view/Window;->setType(I)V -HSPLandroid/view/Window;->setWindowAnimations(I)V -HSPLandroid/view/Window;->setWindowControllerCallback(Landroid/view/Window$WindowControllerCallback;)V -HSPLandroid/view/Window;->setWindowManager(Landroid/view/WindowManager;Landroid/os/IBinder;Ljava/lang/String;Z)V -HSPLandroid/view/Window;->shouldCloseOnTouch(Landroid/content/Context;Landroid/view/MotionEvent;)Z -HSPLandroid/view/WindowInsets$Builder;-><init>()V -HSPLandroid/view/WindowInsets$Builder;-><init>(Landroid/view/WindowInsets;)V -HSPLandroid/view/WindowInsets$Builder;->build()Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets$Builder;->setSystemWindowInsets(Landroid/graphics/Insets;)Landroid/view/WindowInsets$Builder; -HSPLandroid/view/WindowInsets$Side;->all()I -HSPLandroid/view/WindowInsets$Type;->all()I -HSPLandroid/view/WindowInsets$Type;->captionBar()I -HSPLandroid/view/WindowInsets$Type;->defaultVisible()I -HSPLandroid/view/WindowInsets$Type;->displayCutout()I -HSPLandroid/view/WindowInsets$Type;->hasCompatSystemBars(I)Z -HSPLandroid/view/WindowInsets$Type;->ime()I -HSPLandroid/view/WindowInsets$Type;->indexOf(I)I -HSPLandroid/view/WindowInsets$Type;->navigationBars()I -HSPLandroid/view/WindowInsets$Type;->statusBars()I -HSPLandroid/view/WindowInsets$Type;->systemBars()I -HSPLandroid/view/WindowInsets$Type;->systemGestures()I -HSPLandroid/view/WindowInsets$Type;->toString(I)Ljava/lang/String; -HSPLandroid/view/WindowInsets;->assignCompatInsets([Landroid/graphics/Insets;Landroid/graphics/Rect;)V -HSPLandroid/view/WindowInsets;->consumeDisplayCutout()Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->consumeStableInsets()Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->consumeSystemWindowInsets()Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->displayCutoutCopyConstructorArgument(Landroid/view/WindowInsets;)Landroid/view/DisplayCutout; -HSPLandroid/view/WindowInsets;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/WindowInsets;->getDisplayCutout()Landroid/view/DisplayCutout; -HSPLandroid/view/WindowInsets;->getInsets(I)Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getInsets([Landroid/graphics/Insets;I)Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getInsetsIgnoringVisibility(I)Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getMandatorySystemGestureInsets()Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getStableInsetBottom()I -HSPLandroid/view/WindowInsets;->getStableInsetLeft()I -HSPLandroid/view/WindowInsets;->getStableInsetRight()I -HSPLandroid/view/WindowInsets;->getStableInsetTop()I -HSPLandroid/view/WindowInsets;->getStableInsets()Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getSystemGestureInsets()Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->getSystemWindowInsetBottom()I -HSPLandroid/view/WindowInsets;->getSystemWindowInsetLeft()I -HSPLandroid/view/WindowInsets;->getSystemWindowInsetRight()I -HSPLandroid/view/WindowInsets;->getSystemWindowInsetTop()I -HSPLandroid/view/WindowInsets;->getSystemWindowInsets()Landroid/graphics/Insets;+]Landroid/view/WindowInsets;Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->getSystemWindowInsetsAsRect()Landroid/graphics/Rect; -HSPLandroid/view/WindowInsets;->inset(IIII)Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->inset(Landroid/graphics/Insets;)Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsets;->insetInsets(Landroid/graphics/Insets;IIII)Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->insetInsets([Landroid/graphics/Insets;IIII)[Landroid/graphics/Insets; -HSPLandroid/view/WindowInsets;->insetUnchecked(IIII)Landroid/view/WindowInsets;+]Landroid/view/PrivacyIndicatorBounds;Landroid/view/PrivacyIndicatorBounds;]Landroid/view/RoundedCorners;Landroid/view/RoundedCorners; -HSPLandroid/view/WindowInsets;->isConsumed()Z -HSPLandroid/view/WindowInsets;->isRound()Z -HSPLandroid/view/WindowInsets;->replaceSystemWindowInsets(IIII)Landroid/view/WindowInsets; -HSPLandroid/view/WindowInsetsAnimation$Bounds;-><init>(Landroid/graphics/Insets;Landroid/graphics/Insets;)V -HSPLandroid/view/WindowInsetsAnimation$Callback;-><init>(I)V -HSPLandroid/view/WindowInsetsAnimation;-><init>(ILandroid/view/animation/Interpolator;J)V -HSPLandroid/view/WindowInsetsAnimation;->getTypeMask()I -HSPLandroid/view/WindowInsetsAnimation;->setAlpha(F)V -HSPLandroid/view/WindowLayout;-><clinit>()V -HSPLandroid/view/WindowLayout;-><init>()V -HSPLandroid/view/WindowLayout;->computeFrames(Landroid/view/WindowManager$LayoutParams;Landroid/view/InsetsState;Landroid/graphics/Rect;Landroid/graphics/Rect;IIIIFLandroid/window/ClientWindowFrames;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/DisplayCutout;Landroid/view/DisplayCutout;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; -HSPLandroid/view/WindowLayout;->computeSurfaceSize(Landroid/view/WindowManager$LayoutParams;Landroid/graphics/Rect;IILandroid/graphics/Rect;ZLandroid/graphics/Point;)V -HSPLandroid/view/WindowLeaked;-><init>(Ljava/lang/String;)V -HSPLandroid/view/WindowManager$LayoutParams$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/WindowManager$LayoutParams; -HSPLandroid/view/WindowManager$LayoutParams$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/WindowManager$LayoutParams;-><init>()V -HSPLandroid/view/WindowManager$LayoutParams;-><init>(IIIII)V -HSPLandroid/view/WindowManager$LayoutParams;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/WindowManager$LayoutParams;->copyFrom(Landroid/view/WindowManager$LayoutParams;)I+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/view/WindowManager$LayoutParams;->forRotation(I)Landroid/view/WindowManager$LayoutParams; -HSPLandroid/view/WindowManager$LayoutParams;->getColorMode()I -HSPLandroid/view/WindowManager$LayoutParams;->getFitInsetsSides()I -HSPLandroid/view/WindowManager$LayoutParams;->getFitInsetsTypes()I -HSPLandroid/view/WindowManager$LayoutParams;->getTitle()Ljava/lang/CharSequence; -HSPLandroid/view/WindowManager$LayoutParams;->isFitInsetsIgnoringVisibility()Z -HSPLandroid/view/WindowManager$LayoutParams;->isFullscreen()Z -HSPLandroid/view/WindowManager$LayoutParams;->mayUseInputMethod(I)Z -HSPLandroid/view/WindowManager$LayoutParams;->setColorMode(I)V -HSPLandroid/view/WindowManager$LayoutParams;->setFitInsetsIgnoringVisibility(Z)V -HSPLandroid/view/WindowManager$LayoutParams;->setFitInsetsSides(I)V -HSPLandroid/view/WindowManager$LayoutParams;->setFitInsetsTypes(I)V -HSPLandroid/view/WindowManager$LayoutParams;->setSurfaceInsets(Landroid/view/View;ZZ)V -HSPLandroid/view/WindowManager$LayoutParams;->setTitle(Ljava/lang/CharSequence;)V -HSPLandroid/view/WindowManager$LayoutParams;->writeToParcel(Landroid/os/Parcel;I)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/view/WindowManager;->hasWindowExtensionsEnabled()Z -HSPLandroid/view/WindowManagerGlobal$1;-><init>()V -HSPLandroid/view/WindowManagerGlobal$2;-><init>(Landroid/view/WindowManagerGlobal;)V -HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><clinit>()V -HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><init>(Landroid/view/WindowManagerGlobal;)V -HSPLandroid/view/WindowManagerGlobal$TrustedPresentationListener;-><init>(Landroid/view/WindowManagerGlobal;Landroid/view/WindowManagerGlobal$TrustedPresentationListener-IA;)V -HSPLandroid/view/WindowManagerGlobal;-><init>()V -HSPLandroid/view/WindowManagerGlobal;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;Landroid/view/Display;Landroid/view/Window;I)V -HSPLandroid/view/WindowManagerGlobal;->closeAll(Landroid/os/IBinder;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/view/WindowManagerGlobal;->closeAllExceptView(Landroid/os/IBinder;Landroid/view/View;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/view/WindowManagerGlobal;->doRemoveView(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/WindowManagerGlobal;->dumpGfxInfo(Ljava/io/FileDescriptor;[Ljava/lang/String;)V -HSPLandroid/view/WindowManagerGlobal;->findViewLocked(Landroid/view/View;Z)I -HSPLandroid/view/WindowManagerGlobal;->getInstance()Landroid/view/WindowManagerGlobal; -HSPLandroid/view/WindowManagerGlobal;->getRootViews(Landroid/os/IBinder;)Ljava/util/ArrayList; -HSPLandroid/view/WindowManagerGlobal;->getWindowManagerService()Landroid/view/IWindowManager; -HSPLandroid/view/WindowManagerGlobal;->getWindowSession()Landroid/view/IWindowSession; -HSPLandroid/view/WindowManagerGlobal;->getWindowView(Landroid/os/IBinder;)Landroid/view/View; -HSPLandroid/view/WindowManagerGlobal;->initialize()V -HSPLandroid/view/WindowManagerGlobal;->peekWindowSession()Landroid/view/IWindowSession; -HSPLandroid/view/WindowManagerGlobal;->removeView(Landroid/view/View;Z)V -HSPLandroid/view/WindowManagerGlobal;->removeViewLocked(IZ)V -HSPLandroid/view/WindowManagerGlobal;->setStoppedState(Landroid/os/IBinder;Z)V+]Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;]Landroid/view/WindowManagerGlobal;Landroid/view/WindowManagerGlobal;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/view/WindowManagerGlobal;->trimMemory(I)V -HSPLandroid/view/WindowManagerGlobal;->updateViewLayout(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/WindowManagerImpl;-><init>(Landroid/content/Context;)V -HSPLandroid/view/WindowManagerImpl;-><init>(Landroid/content/Context;Landroid/view/Window;Landroid/os/IBinder;)V -HSPLandroid/view/WindowManagerImpl;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/WindowManagerImpl;->applyTokens(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/WindowManagerImpl;->assertWindowContextTypeMatches(I)V -HSPLandroid/view/WindowManagerImpl;->createLocalWindowManager(Landroid/view/Window;)Landroid/view/WindowManagerImpl; -HSPLandroid/view/WindowManagerImpl;->createWindowContextWindowManager(Landroid/content/Context;)Landroid/view/WindowManager; -HSPLandroid/view/WindowManagerImpl;->getCurrentWindowMetrics()Landroid/view/WindowMetrics; -HSPLandroid/view/WindowManagerImpl;->getDefaultDisplay()Landroid/view/Display; -HSPLandroid/view/WindowManagerImpl;->getMaximumWindowMetrics()Landroid/view/WindowMetrics; -HSPLandroid/view/WindowManagerImpl;->removeView(Landroid/view/View;)V -HSPLandroid/view/WindowManagerImpl;->removeViewImmediate(Landroid/view/View;)V -HSPLandroid/view/WindowManagerImpl;->updateViewLayout(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/view/WindowMetrics;-><init>(Landroid/graphics/Rect;Landroid/view/WindowInsets;)V -HSPLandroid/view/WindowMetrics;-><init>(Landroid/graphics/Rect;Ljava/util/function/Supplier;F)V -HSPLandroid/view/WindowMetrics;->getBounds()Landroid/graphics/Rect; -HSPLandroid/view/WindowMetrics;->getWindowInsets()Landroid/view/WindowInsets; -HSPLandroid/view/accessibility/AccessibilityInteractionClient;->hasAnyDirectConnection()Z -HSPLandroid/view/accessibility/AccessibilityManager$1;-><init>(Landroid/view/accessibility/AccessibilityManager;)V -HSPLandroid/view/accessibility/AccessibilityManager$1;->notifyServicesStateChanged(J)V -HSPLandroid/view/accessibility/AccessibilityManager$1;->setFocusAppearance(II)V -HSPLandroid/view/accessibility/AccessibilityManager$1;->setState(I)V -HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;-><init>(Landroid/view/accessibility/AccessibilityManager;)V -HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;-><init>(Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager$MyCallback-IA;)V -HSPLandroid/view/accessibility/AccessibilityManager$MyCallback;->handleMessage(Landroid/os/Message;)Z -HSPLandroid/view/accessibility/AccessibilityManager;-><init>(Landroid/content/Context;Landroid/view/accessibility/IAccessibilityManager;I)V -HSPLandroid/view/accessibility/AccessibilityManager;->addAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;)Z -HSPLandroid/view/accessibility/AccessibilityManager;->addAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;Landroid/os/Handler;)V -HSPLandroid/view/accessibility/AccessibilityManager;->addHighTextContrastStateChangeListener(Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener;Landroid/os/Handler;)V -HSPLandroid/view/accessibility/AccessibilityManager;->addTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;)Z -HSPLandroid/view/accessibility/AccessibilityManager;->addTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;Landroid/os/Handler;)V -HSPLandroid/view/accessibility/AccessibilityManager;->getEnabledAccessibilityServiceList(I)Ljava/util/List; -HSPLandroid/view/accessibility/AccessibilityManager;->getInstalledAccessibilityServiceList()Ljava/util/List; -HSPLandroid/view/accessibility/AccessibilityManager;->getInstance(Landroid/content/Context;)Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/accessibility/AccessibilityManager;->getRecommendedTimeoutMillis(II)I -HSPLandroid/view/accessibility/AccessibilityManager;->getServiceLocked()Landroid/view/accessibility/IAccessibilityManager; -HSPLandroid/view/accessibility/AccessibilityManager;->hasAnyDirectConnection()Z -HSPLandroid/view/accessibility/AccessibilityManager;->initialFocusAppearanceLocked(Landroid/content/res/Resources;)V -HSPLandroid/view/accessibility/AccessibilityManager;->isEnabled()Z+]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager; -HSPLandroid/view/accessibility/AccessibilityManager;->isHighTextContrastEnabled()Z -HSPLandroid/view/accessibility/AccessibilityManager;->isTouchExplorationEnabled()Z -HSPLandroid/view/accessibility/AccessibilityManager;->notifyAccessibilityStateChanged()V -HSPLandroid/view/accessibility/AccessibilityManager;->registerSystemAction(Landroid/app/RemoteAction;I)V -HSPLandroid/view/accessibility/AccessibilityManager;->removeAccessibilityStateChangeListener(Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;)Z -HSPLandroid/view/accessibility/AccessibilityManager;->removeHighTextContrastStateChangeListener(Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener;)V -HSPLandroid/view/accessibility/AccessibilityManager;->removeTouchExplorationStateChangeListener(Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener;)Z -HSPLandroid/view/accessibility/AccessibilityManager;->setStateLocked(I)V -HSPLandroid/view/accessibility/AccessibilityManager;->tryConnectToServiceLocked(Landroid/view/accessibility/IAccessibilityManager;)V -HSPLandroid/view/accessibility/AccessibilityManager;->unregisterSystemAction(I)V -HSPLandroid/view/accessibility/AccessibilityManager;->updateAccessibilityTracingState(I)V -HSPLandroid/view/accessibility/AccessibilityManager;->updateFocusAppearanceLocked(II)V -HSPLandroid/view/accessibility/AccessibilityManager;->updateUiTimeout(J)V -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;-><init>()V -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->getInstance()Landroid/view/accessibility/AccessibilityNodeIdManager; -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->registerViewWithId(Landroid/view/View;I)V+]Landroid/view/accessibility/WeakSparseArray;Landroid/view/accessibility/WeakSparseArray; -HSPLandroid/view/accessibility/AccessibilityNodeIdManager;->unregisterViewWithId(I)V+]Landroid/view/accessibility/WeakSparseArray;Landroid/view/accessibility/WeakSparseArray; -HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;-><init>(ILjava/lang/CharSequence;)V -HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;->getId()I -HSPLandroid/view/accessibility/AccessibilityNodeProvider;-><init>()V -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->getTypeface()Landroid/graphics/Typeface; -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->hasBackgroundColor()Z -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->hasEdgeColor()Z -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->hasEdgeType()Z -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->hasForegroundColor()Z -HSPLandroid/view/accessibility/CaptioningManager$CaptionStyle;->hasWindowColor()Z -HSPLandroid/view/accessibility/CaptioningManager$CaptioningChangeListener;-><init>()V -HSPLandroid/view/accessibility/CaptioningManager;-><init>(Landroid/content/Context;)V -HSPLandroid/view/accessibility/CaptioningManager;->addCaptioningChangeListener(Landroid/view/accessibility/CaptioningManager$CaptioningChangeListener;)V -HSPLandroid/view/accessibility/CaptioningManager;->getFontScale()F -HSPLandroid/view/accessibility/CaptioningManager;->getLocale()Ljava/util/Locale; -HSPLandroid/view/accessibility/CaptioningManager;->getRawUserStyle()I -HSPLandroid/view/accessibility/CaptioningManager;->getUserStyle()Landroid/view/accessibility/CaptioningManager$CaptionStyle; -HSPLandroid/view/accessibility/CaptioningManager;->isEnabled()Z -HSPLandroid/view/accessibility/CaptioningManager;->registerObserver(Ljava/lang/String;)V -HSPLandroid/view/accessibility/CaptioningManager;->removeCaptioningChangeListener(Landroid/view/accessibility/CaptioningManager$CaptioningChangeListener;)V -HSPLandroid/view/accessibility/IAccessibilityInteractionConnection$Stub;-><init>()V -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->addClient(Landroid/view/accessibility/IAccessibilityManagerClient;I)J -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->getEnabledAccessibilityServiceList(II)Ljava/util/List; -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->getFocusColor()I -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->getFocusStrokeWidth()I -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->getRecommendedTimeoutMillis()J -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->registerSystemAction(Landroid/app/RemoteAction;I)V -HSPLandroid/view/accessibility/IAccessibilityManager$Stub$Proxy;->unregisterSystemAction(I)V -HSPLandroid/view/accessibility/IAccessibilityManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/accessibility/IAccessibilityManager; -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;-><init>()V -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->getMaxTransactionId()I -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/view/accessibility/IAccessibilityManagerClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/accessibility/WeakSparseArray$WeakReferenceWithId;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;I)V -HSPLandroid/view/accessibility/WeakSparseArray;-><init>()V -HSPLandroid/view/accessibility/WeakSparseArray;->append(ILjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/accessibility/WeakSparseArray;->remove(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLandroid/view/accessibility/WeakSparseArray;->removeUnreachableValues()V+]Ljava/lang/ref/ReferenceQueue;Ljava/lang/ref/ReferenceQueue; -HSPLandroid/view/animation/AccelerateDecelerateInterpolator;-><init>()V -HSPLandroid/view/animation/AccelerateDecelerateInterpolator;->createNativeInterpolator()J -HSPLandroid/view/animation/AccelerateDecelerateInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/AccelerateInterpolator;-><init>()V -HSPLandroid/view/animation/AccelerateInterpolator;-><init>(F)V -HSPLandroid/view/animation/AccelerateInterpolator;-><init>(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/AccelerateInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/AlphaAnimation;-><init>(FF)V -HSPLandroid/view/animation/AlphaAnimation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/AlphaAnimation;->applyTransformation(FLandroid/view/animation/Transformation;)V+]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; -HSPLandroid/view/animation/AlphaAnimation;->hasAlpha()Z -HSPLandroid/view/animation/AlphaAnimation;->willChangeBounds()Z -HSPLandroid/view/animation/AlphaAnimation;->willChangeTransformationMatrix()Z -HSPLandroid/view/animation/Animation$1;->run()V -HSPLandroid/view/animation/Animation$3;->run()V -HSPLandroid/view/animation/Animation$Description;-><init>()V -HSPLandroid/view/animation/Animation$Description;->parseValue(Landroid/util/TypedValue;Landroid/content/Context;)Landroid/view/animation/Animation$Description; -HSPLandroid/view/animation/Animation;-><init>()V -HSPLandroid/view/animation/Animation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; -HSPLandroid/view/animation/Animation;->cancel()V -HSPLandroid/view/animation/Animation;->detach()V -HSPLandroid/view/animation/Animation;->dispatchAnimationEnd()V -HSPLandroid/view/animation/Animation;->dispatchAnimationStart()V -HSPLandroid/view/animation/Animation;->ensureInterpolator()V -HSPLandroid/view/animation/Animation;->finalize()V -HSPLandroid/view/animation/Animation;->getDuration()J -HSPLandroid/view/animation/Animation;->getFillAfter()Z -HSPLandroid/view/animation/Animation;->getInvalidateRegion(IIIILandroid/graphics/RectF;Landroid/view/animation/Transformation;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; -HSPLandroid/view/animation/Animation;->getScaleFactor()F -HSPLandroid/view/animation/Animation;->getStartOffset()J -HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;)Z+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation;]Ldalvik/system/CloseGuard;Ldalvik/system/CloseGuard; -HSPLandroid/view/animation/Animation;->getTransformation(JLandroid/view/animation/Transformation;F)Z+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation; -HSPLandroid/view/animation/Animation;->getTransformationAt(FLandroid/view/animation/Transformation;)V+]Landroid/view/animation/Animation;Landroid/view/animation/AlphaAnimation;,Landroid/view/animation/RotateAnimation;]Landroid/view/animation/Interpolator;Landroid/view/animation/AccelerateDecelerateInterpolator;,Landroid/view/animation/LinearInterpolator; -HSPLandroid/view/animation/Animation;->hasAlpha()Z -HSPLandroid/view/animation/Animation;->hasEnded()Z -HSPLandroid/view/animation/Animation;->hasStarted()Z -HSPLandroid/view/animation/Animation;->initialize(IIII)V -HSPLandroid/view/animation/Animation;->initializeInvalidateRegion(IIII)V -HSPLandroid/view/animation/Animation;->isFillEnabled()Z -HSPLandroid/view/animation/Animation;->isInitialized()Z -HSPLandroid/view/animation/Animation;->reset()V -HSPLandroid/view/animation/Animation;->resolveSize(IFII)F -HSPLandroid/view/animation/Animation;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V -HSPLandroid/view/animation/Animation;->setBackdropColor(I)V -HSPLandroid/view/animation/Animation;->setBackgroundColor(I)V -HSPLandroid/view/animation/Animation;->setDetachWallpaper(Z)V -HSPLandroid/view/animation/Animation;->setDuration(J)V -HSPLandroid/view/animation/Animation;->setFillAfter(Z)V -HSPLandroid/view/animation/Animation;->setFillBefore(Z)V -HSPLandroid/view/animation/Animation;->setFillEnabled(Z)V -HSPLandroid/view/animation/Animation;->setHasRoundedCorners(Z)V -HSPLandroid/view/animation/Animation;->setInterpolator(Landroid/content/Context;I)V -HSPLandroid/view/animation/Animation;->setInterpolator(Landroid/view/animation/Interpolator;)V -HSPLandroid/view/animation/Animation;->setListenerHandler(Landroid/os/Handler;)V -HSPLandroid/view/animation/Animation;->setRepeatCount(I)V -HSPLandroid/view/animation/Animation;->setRepeatMode(I)V -HSPLandroid/view/animation/Animation;->setShowBackdrop(Z)V -HSPLandroid/view/animation/Animation;->setShowWallpaper(Z)V -HSPLandroid/view/animation/Animation;->setStartOffset(J)V -HSPLandroid/view/animation/Animation;->setStartTime(J)V -HSPLandroid/view/animation/Animation;->setZAdjustment(I)V -HSPLandroid/view/animation/Animation;->willChangeBounds()Z -HSPLandroid/view/animation/Animation;->willChangeTransformationMatrix()Z -HSPLandroid/view/animation/AnimationSet;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/AnimationSet;-><init>(Z)V -HSPLandroid/view/animation/AnimationSet;->addAnimation(Landroid/view/animation/Animation;)V -HSPLandroid/view/animation/AnimationSet;->getDuration()J -HSPLandroid/view/animation/AnimationSet;->getTransformation(JLandroid/view/animation/Transformation;)Z -HSPLandroid/view/animation/AnimationSet;->hasAlpha()Z -HSPLandroid/view/animation/AnimationSet;->init()V -HSPLandroid/view/animation/AnimationSet;->initialize(IIII)V -HSPLandroid/view/animation/AnimationSet;->initializeInvalidateRegion(IIII)V -HSPLandroid/view/animation/AnimationSet;->reset()V -HSPLandroid/view/animation/AnimationSet;->restoreChildrenStartOffset()V -HSPLandroid/view/animation/AnimationSet;->setDuration(J)V -HSPLandroid/view/animation/AnimationSet;->setFillAfter(Z)V -HSPLandroid/view/animation/AnimationSet;->setFillBefore(Z)V -HSPLandroid/view/animation/AnimationSet;->setFlag(IZ)V -HSPLandroid/view/animation/AnimationSet;->setRepeatMode(I)V -HSPLandroid/view/animation/AnimationSet;->setStartOffset(J)V -HSPLandroid/view/animation/AnimationSet;->setStartTime(J)V -HSPLandroid/view/animation/AnimationSet;->willChangeBounds()Z -HSPLandroid/view/animation/AnimationSet;->willChangeTransformationMatrix()Z -HSPLandroid/view/animation/AnimationUtils$1;->initialValue()Landroid/view/animation/AnimationUtils$AnimationState; -HSPLandroid/view/animation/AnimationUtils$1;->initialValue()Ljava/lang/Object; -HSPLandroid/view/animation/AnimationUtils$AnimationState;-><init>()V -HSPLandroid/view/animation/AnimationUtils$AnimationState;-><init>(Landroid/view/animation/AnimationUtils$AnimationState-IA;)V -HSPLandroid/view/animation/AnimationUtils;->createAnimationFromXml(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;)Landroid/view/animation/Animation; -HSPLandroid/view/animation/AnimationUtils;->createAnimationFromXml(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;Landroid/view/animation/AnimationSet;Landroid/util/AttributeSet;)Landroid/view/animation/Animation; -HSPLandroid/view/animation/AnimationUtils;->createInterpolatorFromXml(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;)Landroid/view/animation/Interpolator;+]Ljava/lang/Object;Ljava/lang/String;]Lorg/xmlpull/v1/XmlPullParser;Landroid/content/res/XmlBlock$Parser; -HSPLandroid/view/animation/AnimationUtils;->currentAnimationTimeMillis()J -HSPLandroid/view/animation/AnimationUtils;->loadAnimation(Landroid/content/Context;I)Landroid/view/animation/Animation; -HSPLandroid/view/animation/AnimationUtils;->loadInterpolator(Landroid/content/Context;I)Landroid/view/animation/Interpolator; -HSPLandroid/view/animation/AnimationUtils;->loadInterpolator(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;I)Landroid/view/animation/Interpolator; -HSPLandroid/view/animation/AnimationUtils;->lockAnimationClock(J)V -HSPLandroid/view/animation/AnimationUtils;->lockAnimationClock(JJ)V+]Ljava/lang/ThreadLocal;Landroid/view/animation/AnimationUtils$1; -HSPLandroid/view/animation/AnimationUtils;->unlockAnimationClock()V+]Ljava/lang/ThreadLocal;Landroid/view/animation/AnimationUtils$1; -HSPLandroid/view/animation/BaseInterpolator;-><init>()V -HSPLandroid/view/animation/BaseInterpolator;->getChangingConfiguration()I -HSPLandroid/view/animation/BaseInterpolator;->setChangingConfiguration(I)V -HSPLandroid/view/animation/DecelerateInterpolator;-><init>()V -HSPLandroid/view/animation/DecelerateInterpolator;-><init>(F)V -HSPLandroid/view/animation/DecelerateInterpolator;-><init>(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/DecelerateInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/LinearInterpolator;-><init>()V -HSPLandroid/view/animation/LinearInterpolator;->createNativeInterpolator()J -HSPLandroid/view/animation/LinearInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/OvershootInterpolator;-><init>()V -HSPLandroid/view/animation/OvershootInterpolator;-><init>(F)V -HSPLandroid/view/animation/OvershootInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/PathInterpolator;-><init>(FFFF)V -HSPLandroid/view/animation/PathInterpolator;-><init>(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/PathInterpolator;->createNativeInterpolator()J -HSPLandroid/view/animation/PathInterpolator;->getInterpolation(F)F -HSPLandroid/view/animation/PathInterpolator;->initCubic(FFFF)V -HSPLandroid/view/animation/PathInterpolator;->initPath(Landroid/graphics/Path;)V -HSPLandroid/view/animation/PathInterpolator;->parseInterpolatorFromTypeArray(Landroid/content/res/TypedArray;)V -HSPLandroid/view/animation/ScaleAnimation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/ScaleAnimation;->applyTransformation(FLandroid/view/animation/Transformation;)V -HSPLandroid/view/animation/ScaleAnimation;->initialize(IIII)V -HSPLandroid/view/animation/ScaleAnimation;->initializePivotPoint()V -HSPLandroid/view/animation/ScaleAnimation;->resolveScale(FIIII)F -HSPLandroid/view/animation/Transformation;-><init>()V -HSPLandroid/view/animation/Transformation;->clear()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/view/animation/Transformation;->compose(Landroid/view/animation/Transformation;)V -HSPLandroid/view/animation/Transformation;->getAlpha()F -HSPLandroid/view/animation/Transformation;->getInsets()Landroid/graphics/Insets; -HSPLandroid/view/animation/Transformation;->getMatrix()Landroid/graphics/Matrix; -HSPLandroid/view/animation/Transformation;->getTransformationType()I -HSPLandroid/view/animation/Transformation;->set(Landroid/view/animation/Transformation;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/animation/Transformation;Landroid/view/animation/Transformation; -HSPLandroid/view/animation/Transformation;->setAlpha(F)V -HSPLandroid/view/animation/Transformation;->setInsets(Landroid/graphics/Insets;)V -HSPLandroid/view/animation/TranslateAnimation;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/view/animation/TranslateAnimation;->applyTransformation(FLandroid/view/animation/Transformation;)V -HSPLandroid/view/animation/TranslateAnimation;->initialize(IIII)V -HSPLandroid/view/autofill/AutofillClientController;-><clinit>()V -HSPLandroid/view/autofill/AutofillClientController;-><init>(Landroid/app/Activity;)V -HSPLandroid/view/autofill/AutofillClientController;->autofillClientGetActivityToken()Landroid/os/IBinder; -HSPLandroid/view/autofill/AutofillClientController;->autofillClientGetComponentName()Landroid/content/ComponentName; -HSPLandroid/view/autofill/AutofillClientController;->autofillClientIsFillUiShowing()Z -HSPLandroid/view/autofill/AutofillClientController;->autofillClientRequestHideFillUi()Z -HSPLandroid/view/autofill/AutofillClientController;->autofillClientResetableStateAvailable()V -HSPLandroid/view/autofill/AutofillClientController;->autofillClientRunOnUiThread(Ljava/lang/Runnable;)V -HSPLandroid/view/autofill/AutofillClientController;->enableAutofillCompatibilityIfNeeded()V -HSPLandroid/view/autofill/AutofillClientController;->getAutofillManager()Landroid/view/autofill/AutofillManager; -HSPLandroid/view/autofill/AutofillClientController;->getNextAutofillId()I -HSPLandroid/view/autofill/AutofillClientController;->isDisablingEnterExitEventForAutofill()Z -HSPLandroid/view/autofill/AutofillClientController;->onActivityAttached(Landroid/app/Application;)V -HSPLandroid/view/autofill/AutofillClientController;->onActivityCreated(Landroid/os/Bundle;)V -HSPLandroid/view/autofill/AutofillClientController;->onActivityDestroyed()V -HSPLandroid/view/autofill/AutofillClientController;->onActivityFinish(Landroid/content/Intent;)V -HSPLandroid/view/autofill/AutofillClientController;->onActivityPaused()V -HSPLandroid/view/autofill/AutofillClientController;->onActivityPerformResume(Z)V -HSPLandroid/view/autofill/AutofillClientController;->onActivityResumed()V -HSPLandroid/view/autofill/AutofillClientController;->onActivityStarted()V -HSPLandroid/view/autofill/AutofillClientController;->onActivityStopped(Landroid/content/Intent;Z)V -HSPLandroid/view/autofill/AutofillClientController;->onSaveInstanceState(Landroid/os/Bundle;)V -HSPLandroid/view/autofill/AutofillClientController;->onStartActivity(Landroid/content/Intent;Landroid/content/Intent;)V -HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda0;-><init>()V -HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda1;->test(Ljava/lang/Object;)Z -HSPLandroid/view/autofill/AutofillFeatureFlags;->getDenylistStringFromFlag()Ljava/lang/String; -HSPLandroid/view/autofill/AutofillFeatureFlags;->getFillDialogEnabledHints()[Ljava/lang/String; -HSPLandroid/view/autofill/AutofillFeatureFlags;->getNonAutofillableImeActionIdSetFromFlag()Ljava/util/Set; -HSPLandroid/view/autofill/AutofillFeatureFlags;->isFillDialogEnabled()Z -HSPLandroid/view/autofill/AutofillFeatureFlags;->isTriggerFillRequestOnUnimportantViewEnabled()Z -HSPLandroid/view/autofill/AutofillFeatureFlags;->lambda$getFillDialogEnabledHints$1(Ljava/lang/String;)Z -HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeAllChildrenViewInAssistStructure()Z -HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeAllViewsAutofillTypeNotNoneInAssistStructrue()Z -HSPLandroid/view/autofill/AutofillId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/autofill/AutofillId; -HSPLandroid/view/autofill/AutofillId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/autofill/AutofillId;-><init>(I)V -HSPLandroid/view/autofill/AutofillId;-><init>(IIJI)V -HSPLandroid/view/autofill/AutofillId;->equals(Ljava/lang/Object;)Z -HSPLandroid/view/autofill/AutofillId;->getViewId()I -HSPLandroid/view/autofill/AutofillId;->hasSession()Z -HSPLandroid/view/autofill/AutofillId;->hashCode()I -HSPLandroid/view/autofill/AutofillId;->isVirtualInt()Z -HSPLandroid/view/autofill/AutofillId;->isVirtualLong()Z -HSPLandroid/view/autofill/AutofillId;->resetSessionId()V -HSPLandroid/view/autofill/AutofillId;->toString()Ljava/lang/String; -HSPLandroid/view/autofill/AutofillId;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient;-><init>(Landroid/view/autofill/AutofillManager;)V -HSPLandroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient;->getView(Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillId;)Landroid/view/View; -HSPLandroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient;->getViewCoordinates(Landroid/view/autofill/AutofillId;)Landroid/graphics/Rect; -HSPLandroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient;->getViewNodeParcelable(Landroid/view/autofill/AutofillId;)Landroid/app/assist/AssistStructure$ViewNodeParcelable; -HSPLandroid/view/autofill/AutofillManager$AutofillCallback;-><init>()V -HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->getAugmentedAutofillClient(Lcom/android/internal/os/IResultReceiver;)V -HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->lambda$setState$0(Landroid/view/autofill/AutofillManager;I)V -HSPLandroid/view/autofill/AutofillManager$AutofillManagerClient;->setState(I)V -HSPLandroid/view/autofill/AutofillManager;->-$$Nest$mpost(Landroid/view/autofill/AutofillManager;Ljava/lang/Runnable;)V -HSPLandroid/view/autofill/AutofillManager;-><init>(Landroid/content/Context;Landroid/view/autofill/IAutoFillManager;)V -HSPLandroid/view/autofill/AutofillManager;->cancelLocked()V -HSPLandroid/view/autofill/AutofillManager;->cancelSessionLocked()V -HSPLandroid/view/autofill/AutofillManager;->getAugmentedAutofillClient(Lcom/android/internal/os/IResultReceiver;)V -HSPLandroid/view/autofill/AutofillManager;->getAutofillServiceComponentName()Landroid/content/ComponentName; -HSPLandroid/view/autofill/AutofillManager;->getClient()Landroid/view/autofill/AutofillManager$AutofillClient; -HSPLandroid/view/autofill/AutofillManager;->hasAutofillFeature()Z -HSPLandroid/view/autofill/AutofillManager;->hasFillDialogUiFeature()Z -HSPLandroid/view/autofill/AutofillManager;->isActiveLocked()Z -HSPLandroid/view/autofill/AutofillManager;->isDisabledByServiceLocked()Z -HSPLandroid/view/autofill/AutofillManager;->isEnabled()Z -HSPLandroid/view/autofill/AutofillManager;->notifyValueChanged(Landroid/view/View;)V+]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager; -HSPLandroid/view/autofill/AutofillManager;->notifyViewEntered(Landroid/view/View;I)V -HSPLandroid/view/autofill/AutofillManager;->notifyViewEnteredForAugmentedAutofill(Landroid/view/View;)V -HSPLandroid/view/autofill/AutofillManager;->notifyViewEnteredForFillDialog(Landroid/view/View;)V -HSPLandroid/view/autofill/AutofillManager;->notifyViewExited(Landroid/view/View;)V -HSPLandroid/view/autofill/AutofillManager;->notifyViewExitedLocked(Landroid/view/View;)V -HSPLandroid/view/autofill/AutofillManager;->notifyViewVisibilityChangedInternal(Landroid/view/View;IZZ)V -HSPLandroid/view/autofill/AutofillManager;->onActivityFinishing()V -HSPLandroid/view/autofill/AutofillManager;->onInvisibleForAutofill(Z)V -HSPLandroid/view/autofill/AutofillManager;->onSaveInstanceState(Landroid/os/Bundle;)V -HSPLandroid/view/autofill/AutofillManager;->post(Ljava/lang/Runnable;)V -HSPLandroid/view/autofill/AutofillManager;->registerCallback(Landroid/view/autofill/AutofillManager$AutofillCallback;)V -HSPLandroid/view/autofill/AutofillManager;->requestHideFillUi()V -HSPLandroid/view/autofill/AutofillManager;->requestHideFillUi(Landroid/view/autofill/AutofillId;Z)V -HSPLandroid/view/autofill/AutofillManager;->resetSessionLocked(Z)V -HSPLandroid/view/autofill/AutofillManager;->setSessionFinished(ILjava/util/List;)V -HSPLandroid/view/autofill/AutofillManager;->setState(I)V -HSPLandroid/view/autofill/AutofillManager;->shouldIgnoreViewEnteredLocked(Landroid/view/autofill/AutofillId;I)Z -HSPLandroid/view/autofill/AutofillManager;->startAutofillIfNeededLocked(Landroid/view/View;)Z -HSPLandroid/view/autofill/AutofillManager;->startSessionLocked(Landroid/view/autofill/AutofillId;Landroid/graphics/Rect;Landroid/view/autofill/AutofillValue;I)V -HSPLandroid/view/autofill/AutofillManager;->tryAddServiceClientIfNeededLocked()Z -HSPLandroid/view/autofill/AutofillManager;->updateSessionLocked(Landroid/view/autofill/AutofillId;Landroid/graphics/Rect;Landroid/view/autofill/AutofillValue;II)V -HSPLandroid/view/autofill/AutofillValue$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/autofill/AutofillValue; -HSPLandroid/view/autofill/AutofillValue$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/autofill/AutofillValue;-><init>(ILjava/lang/Object;)V -HSPLandroid/view/autofill/AutofillValue;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/autofill/AutofillValue;->forText(Ljava/lang/CharSequence;)Landroid/view/autofill/AutofillValue; -HSPLandroid/view/autofill/AutofillValue;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/autofill/IAugmentedAutofillManagerClient$Stub;-><init>()V -HSPLandroid/view/autofill/IAugmentedAutofillManagerClient$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/autofill/IAugmentedAutofillManagerClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->cancelSession(II)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->getAutofillServiceComponentName(Lcom/android/internal/os/IResultReceiver;)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->removeClient(Landroid/view/autofill/IAutoFillManagerClient;I)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->setHasCallback(IIZ)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->startSession(Landroid/os/IBinder;Landroid/os/IBinder;Landroid/view/autofill/AutofillId;Landroid/graphics/Rect;Landroid/view/autofill/AutofillValue;IZILandroid/content/ComponentName;ZLcom/android/internal/os/IResultReceiver;)V -HSPLandroid/view/autofill/IAutoFillManager$Stub$Proxy;->updateSession(ILandroid/view/autofill/AutofillId;Landroid/graphics/Rect;Landroid/view/autofill/AutofillValue;III)V -HSPLandroid/view/autofill/IAutoFillManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/autofill/IAutoFillManager; -HSPLandroid/view/autofill/IAutoFillManagerClient$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/autofill/IAutoFillManagerClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/contentcapture/ContentCaptureEvent;-><init>(II)V -HSPLandroid/view/contentcapture/ContentCaptureEvent;-><init>(IIJ)V -HSPLandroid/view/contentcapture/ContentCaptureEvent;->addAutofillId(Landroid/view/autofill/AutofillId;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->getId()Landroid/view/autofill/AutofillId; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->getIds()Ljava/util/List; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->getSessionId()I -HSPLandroid/view/contentcapture/ContentCaptureEvent;->getText()Ljava/lang/CharSequence; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->getType()I -HSPLandroid/view/contentcapture/ContentCaptureEvent;->mergeEvent(Landroid/view/contentcapture/ContentCaptureEvent;)V -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setAutofillId(Landroid/view/autofill/AutofillId;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setBounds(Landroid/graphics/Rect;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setComposingIndex(II)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setInsets(Landroid/graphics/Insets;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setSelectionIndex(II)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setText(Ljava/lang/CharSequence;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->setViewNode(Landroid/view/contentcapture/ViewNode;)Landroid/view/contentcapture/ContentCaptureEvent; -HSPLandroid/view/contentcapture/ContentCaptureEvent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/contentcapture/ContentCaptureHelper;->getLoggingLevelAsString(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/ContentCaptureHelper;->setLoggingLevel(I)V -HSPLandroid/view/contentcapture/ContentCaptureManager$LocalDataShareAdapterResourceManager;-><init>()V -HSPLandroid/view/contentcapture/ContentCaptureManager$StrippedContext;-><init>(Landroid/content/Context;)V -HSPLandroid/view/contentcapture/ContentCaptureManager;-><init>(Landroid/content/Context;Landroid/view/contentcapture/IContentCaptureManager;Landroid/content/ContentCaptureOptions;)V -HSPLandroid/view/contentcapture/ContentCaptureManager;->isContentCaptureEnabled()Z -HSPLandroid/view/contentcapture/ContentCaptureManager;->onActivityCreated(Landroid/os/IBinder;Landroid/os/IBinder;Landroid/content/ComponentName;)V -HSPLandroid/view/contentcapture/ContentCaptureManager;->setFlushViewTreeAppearingEventDisabled(Z)V -HSPLandroid/view/contentcapture/ContentCaptureManager;->updateWindowAttributes(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/contentcapture/ContentCaptureSession;-><init>()V -HSPLandroid/view/contentcapture/ContentCaptureSession;-><init>(I)V -HSPLandroid/view/contentcapture/ContentCaptureSession;->destroy()V -HSPLandroid/view/contentcapture/ContentCaptureSession;->getFlushReasonAsString(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/ContentCaptureSession;->getId()I -HSPLandroid/view/contentcapture/ContentCaptureSession;->getRandomSessionId()I -HSPLandroid/view/contentcapture/ContentCaptureSession;->getStateAsString(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/ContentCaptureSession;->isContentCaptureEnabled()Z -HSPLandroid/view/contentcapture/ContentCaptureSession;->newViewStructure(Landroid/view/View;)Landroid/view/ViewStructure; -HSPLandroid/view/contentcapture/ContentCaptureSession;->notifyViewAppeared(Landroid/view/ViewStructure;)V -HSPLandroid/view/contentcapture/ContentCaptureSession;->notifyViewTextChanged(Landroid/view/autofill/AutofillId;Ljava/lang/CharSequence;)V -HSPLandroid/view/contentcapture/IContentCaptureDirectManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/contentcapture/IContentCaptureDirectManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/contentcapture/IContentCaptureDirectManager$Stub$Proxy;->sendEvents(Landroid/content/pm/ParceledListSlice;ILandroid/content/ContentCaptureOptions;)V -HSPLandroid/view/contentcapture/IContentCaptureDirectManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/contentcapture/IContentCaptureDirectManager; -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub$Proxy;->finishSession(I)V -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub$Proxy;->registerContentCaptureOptionsCallback(Ljava/lang/String;Landroid/view/contentcapture/IContentCaptureOptionsCallback;)V -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub$Proxy;->startSession(Landroid/os/IBinder;Landroid/os/IBinder;Landroid/content/ComponentName;IILcom/android/internal/os/IResultReceiver;)V -HSPLandroid/view/contentcapture/IContentCaptureManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/contentcapture/IContentCaptureManager; -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;-><init>()V -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->getMaxTransactionId()I -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/IContentCaptureOptionsCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda0;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda10;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda11;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda12;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda1;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda2;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda3;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda4;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda8;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1;->run()V -HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;-><init>(Landroid/view/contentcapture/MainContentCaptureSession;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;->lambda$send$1(Landroid/view/contentcapture/MainContentCaptureSession;ILandroid/os/IBinder;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver;->send(ILandroid/os/Bundle;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;-><init>(Landroid/view/contentcapture/ContentCaptureManager$StrippedContext;Landroid/view/contentcapture/ContentCaptureManager;Landroid/os/Handler;Landroid/view/contentcapture/IContentCaptureManager;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->clearEvents()Landroid/content/pm/ParceledListSlice; -HSPLandroid/view/contentcapture/MainContentCaptureSession;->destroySession()V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->flush(I)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->flushIfNeeded(I)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->getActivityName()Ljava/lang/String; -HSPLandroid/view/contentcapture/MainContentCaptureSession;->getDebugState()Ljava/lang/String; -HSPLandroid/view/contentcapture/MainContentCaptureSession;->getDebugState(I)Ljava/lang/String; -HSPLandroid/view/contentcapture/MainContentCaptureSession;->hasStarted()Z -HSPLandroid/view/contentcapture/MainContentCaptureSession;->isContentCaptureEnabled()Z -HSPLandroid/view/contentcapture/MainContentCaptureSession;->isDisabled()Z -HSPLandroid/view/contentcapture/MainContentCaptureSession;->notifyWindowBoundsChanged(ILandroid/graphics/Rect;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->onDestroy()V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->onSessionStarted(ILandroid/os/IBinder;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->scheduleFlush(IZ)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->sendEvent(Landroid/view/contentcapture/ContentCaptureEvent;)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->sendEvent(Landroid/view/contentcapture/ContentCaptureEvent;Z)V -HSPLandroid/view/contentcapture/MainContentCaptureSession;->start(Landroid/os/IBinder;Landroid/os/IBinder;Landroid/content/ComponentName;I)V -HSPLandroid/view/contentcapture/ViewNode$ViewNodeText;-><init>()V -HSPLandroid/view/contentcapture/ViewNode$ViewNodeText;->isSimple()Z -HSPLandroid/view/contentcapture/ViewNode$ViewNodeText;->writeToParcel(Landroid/os/Parcel;Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;-><init>(Landroid/view/View;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->getNodeText()Landroid/view/contentcapture/ViewNode$ViewNodeText; -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setAutofillHints([Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setAutofillType(I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setAutofillValue(Landroid/view/autofill/AutofillValue;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setCheckable(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setClassName(Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setClickable(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setContentDescription(Ljava/lang/CharSequence;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setDimens(IIIIII)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setEnabled(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setFocusable(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setFocused(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setHint(Ljava/lang/CharSequence;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setHintIdEntry(Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setId(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setInputType(I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setLongClickable(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setMaxTextEms(I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setMaxTextLength(I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setMinTextEms(I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setOpaque(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setReceiveContentMimeTypes([Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setSelected(Z)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setText(Ljava/lang/CharSequence;II)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setTextIdEntry(Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setTextLines([I[I)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setTextStyle(FIII)V -HSPLandroid/view/contentcapture/ViewNode$ViewStructureImpl;->setVisibility(I)V -HSPLandroid/view/contentcapture/ViewNode;->-$$Nest$fputmReceiveContentMimeTypes(Landroid/view/contentcapture/ViewNode;[Ljava/lang/String;)V -HSPLandroid/view/contentcapture/ViewNode;-><init>()V -HSPLandroid/view/contentcapture/ViewNode;->writeSelfToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/contentcapture/ViewNode;->writeToParcel(Landroid/os/Parcel;Landroid/view/contentcapture/ViewNode;I)V -HSPLandroid/view/inputmethod/BaseInputConnection;-><init>(Landroid/view/View;Z)V -HSPLandroid/view/inputmethod/BaseInputConnection;-><init>(Landroid/view/inputmethod/InputMethodManager;Z)V -HSPLandroid/view/inputmethod/BaseInputConnection;->beginBatchEdit()Z -HSPLandroid/view/inputmethod/BaseInputConnection;->closeConnection()V -HSPLandroid/view/inputmethod/BaseInputConnection;->commitText(Ljava/lang/CharSequence;I)Z -HSPLandroid/view/inputmethod/BaseInputConnection;->deleteSurroundingText(II)Z -HSPLandroid/view/inputmethod/BaseInputConnection;->endBatchEdit()Z -HSPLandroid/view/inputmethod/BaseInputConnection;->endComposingRegionEditInternal()V -HSPLandroid/view/inputmethod/BaseInputConnection;->ensureDefaultComposingSpans()V -HSPLandroid/view/inputmethod/BaseInputConnection;->finishComposingText()Z -HSPLandroid/view/inputmethod/BaseInputConnection;->getEditable()Landroid/text/Editable; -HSPLandroid/view/inputmethod/BaseInputConnection;->getHandler()Landroid/os/Handler; -HSPLandroid/view/inputmethod/BaseInputConnection;->getSelectedText(I)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/BaseInputConnection;->getTextAfterCursor(II)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/BaseInputConnection;->getTextBeforeCursor(II)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/BaseInputConnection;->removeComposingSpans(Landroid/text/Spannable;)V -HSPLandroid/view/inputmethod/BaseInputConnection;->replaceText(Ljava/lang/CharSequence;IZ)V -HSPLandroid/view/inputmethod/BaseInputConnection;->reportFullscreenMode(Z)Z -HSPLandroid/view/inputmethod/BaseInputConnection;->sendCurrentText()V -HSPLandroid/view/inputmethod/BaseInputConnection;->sendKeyEvent(Landroid/view/KeyEvent;)Z -HSPLandroid/view/inputmethod/BaseInputConnection;->setComposingRegion(II)Z -HSPLandroid/view/inputmethod/BaseInputConnection;->setComposingSpans(Landroid/text/Spannable;II)V -HSPLandroid/view/inputmethod/BaseInputConnection;->setComposingText(Ljava/lang/CharSequence;I)Z -HSPLandroid/view/inputmethod/CursorAnchorInfo$Builder;-><init>()V -HSPLandroid/view/inputmethod/EditorInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/inputmethod/EditorInfo; -HSPLandroid/view/inputmethod/EditorInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/EditorInfo;-><init>()V -HSPLandroid/view/inputmethod/EditorInfo;->createCopyInternal()Landroid/view/inputmethod/EditorInfo; -HSPLandroid/view/inputmethod/EditorInfo;->setInitialSurroundingSubText(Ljava/lang/CharSequence;I)V -HSPLandroid/view/inputmethod/EditorInfo;->setInitialSurroundingText(Ljava/lang/CharSequence;)V -HSPLandroid/view/inputmethod/EditorInfo;->setInitialToolType(I)V -HSPLandroid/view/inputmethod/EditorInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/inputmethod/ExtractedTextRequest;-><init>()V -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;-><clinit>()V -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->addClient(Lcom/android/internal/inputmethod/IInputMethodClient;Lcom/android/internal/inputmethod/IRemoteInputConnection;I)V -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->getImeTrackerService()Lcom/android/internal/inputmethod/IImeTracker; -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->getService()Lcom/android/internal/view/IInputMethodManager; -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->isAvailable()Z -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->isImeTraceEnabled()Z -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->removeImeSurfaceFromWindowAsync(Landroid/os/IBinder;)V -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->reportPerceptibleAsync(Landroid/os/IBinder;Z)V -HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;->startInputOrWindowGainedFocus(ILcom/android/internal/inputmethod/IInputMethodClient;Landroid/os/IBinder;IIILandroid/view/inputmethod/EditorInfo;Lcom/android/internal/inputmethod/IRemoteInputConnection;Lcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection;IILandroid/window/ImeOnBackInvokedDispatcher;)Lcom/android/internal/inputmethod/InputBindResult; -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;-><clinit>()V -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;-><init>(Lcom/android/internal/inputmethod/IInputMethodSession;Landroid/os/Handler;)V -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;->createOrNull(Lcom/android/internal/inputmethod/IInputMethodSession;)Landroid/view/inputmethod/IInputMethodSessionInvoker; -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;->finishInput()V -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;->finishInputInternal()V -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;->updateSelection(IIIIII)V -HSPLandroid/view/inputmethod/IInputMethodSessionInvoker;->updateSelectionInternal(IIIIII)V -HSPLandroid/view/inputmethod/ImeTracker$1$$ExternalSyntheticLambda0;-><init>(Landroid/view/inputmethod/ImeTracker$1;)V -HSPLandroid/view/inputmethod/ImeTracker$1;-><init>()V -HSPLandroid/view/inputmethod/ImeTracker$1;->onProgress(Landroid/view/inputmethod/ImeTracker$Token;I)V -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda0;-><init>(Ljava/lang/String;)V -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda1;-><init>()V -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda2;-><init>()V -HSPLandroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda2;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/ImeTracker$Debug;-><clinit>()V -HSPLandroid/view/inputmethod/ImeTracker$Debug;->getFieldMapping(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Map; -HSPLandroid/view/inputmethod/ImeTracker$Debug;->getFieldValue(Ljava/lang/reflect/Field;)I -HSPLandroid/view/inputmethod/ImeTracker$Debug;->lambda$getFieldMapping$0(Ljava/lang/String;Ljava/lang/reflect/Field;)Z -HSPLandroid/view/inputmethod/ImeTracker$Debug;->originToString(I)Ljava/lang/String; -HSPLandroid/view/inputmethod/ImeTracker$Debug;->phaseToString(I)Ljava/lang/String; -HSPLandroid/view/inputmethod/ImeTracker$Token$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/inputmethod/ImeTracker$Token; -HSPLandroid/view/inputmethod/ImeTracker$Token$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/ImeTracker$Token;->-$$Nest$fgetmTag(Landroid/view/inputmethod/ImeTracker$Token;)Ljava/lang/String; -HSPLandroid/view/inputmethod/ImeTracker$Token;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/inputmethod/ImeTracker$Token;-><init>(Landroid/os/Parcel;Landroid/view/inputmethod/ImeTracker$Token-IA;)V -HSPLandroid/view/inputmethod/ImeTracker$Token;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/inputmethod/ImeTracker;-><clinit>()V -HSPLandroid/view/inputmethod/ImeTracker;->forLogging()Landroid/view/inputmethod/ImeTracker; -HSPLandroid/view/inputmethod/InlineSuggestionsRequest$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/inputmethod/InlineSuggestionsRequest; -HSPLandroid/view/inputmethod/InlineSuggestionsRequest$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/InlineSuggestionsRequest;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/inputmethod/InlineSuggestionsRequest;->onConstructed()V -HSPLandroid/view/inputmethod/InlineSuggestionsRequest;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/inputmethod/InputConnectionWrapper;-><init>(Landroid/view/inputmethod/InputConnection;Z)V -HSPLandroid/view/inputmethod/InputConnectionWrapper;->beginBatchEdit()Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->closeConnection()V -HSPLandroid/view/inputmethod/InputConnectionWrapper;->commitText(Ljava/lang/CharSequence;I)Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->deleteSurroundingText(II)Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->endBatchEdit()Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->finishComposingText()Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->getHandler()Landroid/os/Handler; -HSPLandroid/view/inputmethod/InputConnectionWrapper;->getSelectedText(I)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/InputConnectionWrapper;->getTextAfterCursor(II)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/InputConnectionWrapper;->getTextBeforeCursor(II)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/InputConnectionWrapper;->reportFullscreenMode(Z)Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->setComposingRegion(II)Z -HSPLandroid/view/inputmethod/InputConnectionWrapper;->setComposingText(Ljava/lang/CharSequence;I)Z -HSPLandroid/view/inputmethod/InputMethodInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/inputmethod/InputMethodInfo; -HSPLandroid/view/inputmethod/InputMethodInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/InputMethodInfo;-><init>(Landroid/content/Context;Landroid/content/pm/ResolveInfo;Ljava/util/List;)V -HSPLandroid/view/inputmethod/InputMethodInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/inputmethod/InputMethodInfo;->getId()Ljava/lang/String; -HSPLandroid/view/inputmethod/InputMethodInfo;->getPackageName()Ljava/lang/String; -HSPLandroid/view/inputmethod/InputMethodInfo;->getServiceInfo()Landroid/content/pm/ServiceInfo; -HSPLandroid/view/inputmethod/InputMethodInfo;->getSubtypeAt(I)Landroid/view/inputmethod/InputMethodSubtype; -HSPLandroid/view/inputmethod/InputMethodManager$1;->getReceivingDispatcher()Landroid/window/WindowOnBackInvokedDispatcher; -HSPLandroid/view/inputmethod/InputMethodManager$2;-><init>(Landroid/view/inputmethod/InputMethodManager;)V -HSPLandroid/view/inputmethod/InputMethodManager$2;->onBindMethod(Lcom/android/internal/inputmethod/InputBindResult;)V -HSPLandroid/view/inputmethod/InputMethodManager$2;->onUnbindMethod(II)V -HSPLandroid/view/inputmethod/InputMethodManager$2;->reportFullscreenMode(Z)V -HSPLandroid/view/inputmethod/InputMethodManager$2;->setActive(ZZ)V -HSPLandroid/view/inputmethod/InputMethodManager$BindState;-><init>(Lcom/android/internal/inputmethod/InputBindResult;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;-><init>(Landroid/view/inputmethod/InputMethodManager;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onPostWindowGainedFocus(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onPreWindowGainedFocus(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onScheduledCheckFocus(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onViewDetachedFromWindow(Landroid/view/View;Landroid/view/ViewRootImpl;)V+]Landroid/view/View;missing_types -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->onWindowDismissed(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/inputmethod/InputMethodManager$DelegateImpl;->setCurrentRootViewLocked(Landroid/view/ViewRootImpl;)V -HSPLandroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda0;->run()V -HSPLandroid/view/inputmethod/InputMethodManager$H;-><init>(Landroid/view/inputmethod/InputMethodManager;Landroid/os/Looper;)V -HSPLandroid/view/inputmethod/InputMethodManager$H;->handleMessage(Landroid/os/Message;)V -HSPLandroid/view/inputmethod/InputMethodManager$ImeInputEventSender;->onInputEventFinished(IZ)V -HSPLandroid/view/inputmethod/InputMethodManager$PendingEvent;->run()V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmFullscreenMode(Landroid/view/inputmethod/InputMethodManager;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmImeDispatcher(Landroid/view/inputmethod/InputMethodManager;)Landroid/window/ImeOnBackInvokedDispatcher; -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmImeInsetsConsumer(Landroid/view/inputmethod/InputMethodManager;)Landroid/view/ImeInsetsSourceConsumer; -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmNextServedView(Landroid/view/inputmethod/InputMethodManager;)Landroid/view/View; -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmRestartOnNextWindowFocus(Landroid/view/inputmethod/InputMethodManager;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fgetmServedView(Landroid/view/inputmethod/InputMethodManager;)Landroid/view/View; -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fputmActive(Landroid/view/inputmethod/InputMethodManager;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fputmFullscreenMode(Landroid/view/inputmethod/InputMethodManager;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$fputmRestartOnNextWindowFocus(Landroid/view/inputmethod/InputMethodManager;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$mcheckFocusInternalLocked(Landroid/view/inputmethod/InputMethodManager;ZLandroid/view/ViewRootImpl;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$mforAccessibilitySessionsLocked(Landroid/view/inputmethod/InputMethodManager;Ljava/util/function/Consumer;)V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$mgetServedViewLocked(Landroid/view/inputmethod/InputMethodManager;)Landroid/view/View; -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$mgetStartInputFlags(Landroid/view/inputmethod/InputMethodManager;Landroid/view/View;I)I -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$monViewFocusChangedInternal(Landroid/view/inputmethod/InputMethodManager;Landroid/view/View;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->-$$Nest$mstartInputOnWindowFocusGainInternal(Landroid/view/inputmethod/InputMethodManager;ILandroid/view/View;III)Z -HSPLandroid/view/inputmethod/InputMethodManager;-><init>(Lcom/android/internal/view/IInputMethodManager;ILandroid/os/Looper;)V -HSPLandroid/view/inputmethod/InputMethodManager;->areSameInputChannel(Landroid/view/InputChannel;Landroid/view/InputChannel;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->canStartInput(Landroid/view/View;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->checkFocus()V -HSPLandroid/view/inputmethod/InputMethodManager;->checkFocusInternalLocked(ZLandroid/view/ViewRootImpl;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->clearConnectionLocked()V -HSPLandroid/view/inputmethod/InputMethodManager;->closeCurrentInput()V -HSPLandroid/view/inputmethod/InputMethodManager;->createInputConnection(Landroid/view/View;)Landroid/util/Pair; -HSPLandroid/view/inputmethod/InputMethodManager;->createInstance(ILandroid/os/Looper;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/inputmethod/InputMethodManager;->createRealInstance(ILandroid/os/Looper;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/inputmethod/InputMethodManager;->dispatchInputEvent(Landroid/view/InputEvent;Ljava/lang/Object;Landroid/view/inputmethod/InputMethodManager$FinishedInputEventCallback;Landroid/os/Handler;)I -HSPLandroid/view/inputmethod/InputMethodManager;->dispatchKeyEventFromInputMethod(Landroid/view/View;Landroid/view/KeyEvent;)V -HSPLandroid/view/inputmethod/InputMethodManager;->ensureDefaultInstanceForDefaultDisplayIfNecessary()V -HSPLandroid/view/inputmethod/InputMethodManager;->finishInputLocked()V -HSPLandroid/view/inputmethod/InputMethodManager;->finishedInputEvent(IZZ)V -HSPLandroid/view/inputmethod/InputMethodManager;->flushPendingEventsLocked()V -HSPLandroid/view/inputmethod/InputMethodManager;->forAccessibilitySessionsLocked(Ljava/util/function/Consumer;)V -HSPLandroid/view/inputmethod/InputMethodManager;->forContext(Landroid/content/Context;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/inputmethod/InputMethodManager;->forContextInternal(ILandroid/os/Looper;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/inputmethod/InputMethodManager;->getDelegate()Landroid/view/inputmethod/InputMethodManager$DelegateImpl; -HSPLandroid/view/inputmethod/InputMethodManager;->getEnabledInputMethodList()Ljava/util/List; -HSPLandroid/view/inputmethod/InputMethodManager;->getEnabledInputMethodSubtypeList(Landroid/view/inputmethod/InputMethodInfo;Z)Ljava/util/List; -HSPLandroid/view/inputmethod/InputMethodManager;->getFallbackInputMethodManagerIfNecessary(Landroid/view/View;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/view/inputmethod/InputMethodManager;->getServedViewLocked()Landroid/view/View; -HSPLandroid/view/inputmethod/InputMethodManager;->getStartInputFlags(Landroid/view/View;I)I -HSPLandroid/view/inputmethod/InputMethodManager;->hasServedByInputMethodLocked(Landroid/view/View;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->hideSoftInputFromWindow(Landroid/os/IBinder;I)Z -HSPLandroid/view/inputmethod/InputMethodManager;->hideSoftInputFromWindow(Landroid/os/IBinder;ILandroid/os/ResultReceiver;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->hideSoftInputFromWindow(Landroid/os/IBinder;ILandroid/os/ResultReceiver;I)Z -HSPLandroid/view/inputmethod/InputMethodManager;->invalidateInput(Landroid/view/View;)V -HSPLandroid/view/inputmethod/InputMethodManager;->isActive()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isActive(Landroid/view/View;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->isCursorAnchorInfoEnabled()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isFullscreenMode()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isImeSessionAvailableLocked()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isInEditMode()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isInEditModeInternal()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isInputMethodSuppressingSpellChecker()Z -HSPLandroid/view/inputmethod/InputMethodManager;->isSwitchingBetweenEquivalentNonEditableViews(Landroid/view/inputmethod/ViewFocusParameterInfo;IIII)Z -HSPLandroid/view/inputmethod/InputMethodManager;->onViewFocusChangedInternal(Landroid/view/View;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->registerImeConsumer(Landroid/view/ImeInsetsSourceConsumer;)V -HSPLandroid/view/inputmethod/InputMethodManager;->removeImeSurface(Landroid/os/IBinder;)V -HSPLandroid/view/inputmethod/InputMethodManager;->reportInputConnectionOpened(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Landroid/os/Handler;Landroid/view/View;)V -HSPLandroid/view/inputmethod/InputMethodManager;->reportPerceptible(Landroid/os/IBinder;Z)V -HSPLandroid/view/inputmethod/InputMethodManager;->restartInput(Landroid/view/View;)V -HSPLandroid/view/inputmethod/InputMethodManager;->sendInputEventOnMainLooperLocked(Landroid/view/inputmethod/InputMethodManager$PendingEvent;)I -HSPLandroid/view/inputmethod/InputMethodManager;->showSoftInput(Landroid/view/View;I)Z -HSPLandroid/view/inputmethod/InputMethodManager;->showSoftInput(Landroid/view/View;ILandroid/os/ResultReceiver;)Z -HSPLandroid/view/inputmethod/InputMethodManager;->startInputInner(ILandroid/os/IBinder;III)Z -HSPLandroid/view/inputmethod/InputMethodManager;->startInputOnWindowFocusGainInternal(ILandroid/view/View;III)Z -HSPLandroid/view/inputmethod/InputMethodManager;->unregisterImeConsumer(Landroid/view/ImeInsetsSourceConsumer;)V -HSPLandroid/view/inputmethod/InputMethodManager;->updateInputChannelLocked(Landroid/view/InputChannel;)V -HSPLandroid/view/inputmethod/InputMethodManager;->updateSelection(Landroid/view/View;IIII)V -HSPLandroid/view/inputmethod/InputMethodManager;->viewClicked(Landroid/view/View;)V -HSPLandroid/view/inputmethod/InputMethodManagerGlobal;->isImeTraceAvailable()Z -HSPLandroid/view/inputmethod/InputMethodManagerGlobal;->isImeTraceEnabled()Z -HSPLandroid/view/inputmethod/InputMethodSubtype$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/inputmethod/InputMethodSubtype; -HSPLandroid/view/inputmethod/InputMethodSubtype$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/inputmethod/InputMethodSubtype;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/inputmethod/InputMethodSubtype;->getLocale()Ljava/lang/String; -HSPLandroid/view/inputmethod/InputMethodSubtype;->getMode()Ljava/lang/String; -HSPLandroid/view/inputmethod/InputMethodSubtype;->hashCode()I -HSPLandroid/view/inputmethod/InputMethodSubtypeArray;->get(I)Landroid/view/inputmethod/InputMethodSubtype; -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl$1;-><init>(Landroid/view/inputmethod/RemoteInputConnectionImpl;)V -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;-><init>(Landroid/os/Looper;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/InputMethodManager;Landroid/view/View;)V -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;->dispatch(Ljava/lang/Runnable;)V -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;->dispatchWithTracing(Ljava/lang/String;Ljava/lang/Runnable;)V -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;->finishComposingTextFromImm()V -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;->getInputConnection()Landroid/view/inputmethod/InputConnection; -HSPLandroid/view/inputmethod/RemoteInputConnectionImpl;->isFinished()Z -HSPLandroid/view/inputmethod/SurroundingText$1;-><init>()V -HSPLandroid/view/inputmethod/SurroundingText;-><clinit>()V -HSPLandroid/view/inputmethod/SurroundingText;-><init>(Ljava/lang/CharSequence;III)V -HSPLandroid/view/inputmethod/SurroundingText;->copyWithParcelableSpans(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/view/inputmethod/SurroundingText;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/inputmethod/ViewFocusParameterInfo;-><init>(Landroid/view/inputmethod/EditorInfo;IIII)V -HSPLandroid/view/inputmethod/ViewFocusParameterInfo;->sameAs(Landroid/view/inputmethod/EditorInfo;IIII)Z -HSPLandroid/view/textclassifier/ConversationAction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/ConversationAction; -HSPLandroid/view/textclassifier/ConversationAction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/ConversationAction;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/ConversationAction;->getAction()Landroid/app/RemoteAction; -HSPLandroid/view/textclassifier/ConversationAction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/ConversationActions$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/ConversationActions; -HSPLandroid/view/textclassifier/ConversationActions$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/ConversationActions$Message$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/ConversationActions$Message; -HSPLandroid/view/textclassifier/ConversationActions$Message$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/ConversationActions$Message;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/ConversationActions$Message;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/ConversationActions$Request$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/ConversationActions$Request; -HSPLandroid/view/textclassifier/ConversationActions$Request$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/ConversationActions$Request;-><init>(Ljava/util/List;Landroid/view/textclassifier/TextClassifier$EntityConfig;ILjava/util/List;Landroid/os/Bundle;)V -HSPLandroid/view/textclassifier/ConversationActions$Request;->readFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/ConversationActions$Request; -HSPLandroid/view/textclassifier/ConversationActions$Request;->setSystemTextClassifierMetadata(Landroid/view/textclassifier/SystemTextClassifierMetadata;)V -HSPLandroid/view/textclassifier/ConversationActions;-><init>(Ljava/util/List;Ljava/lang/String;)V -HSPLandroid/view/textclassifier/ConversationActions;->getConversationActions()Ljava/util/List; -HSPLandroid/view/textclassifier/ConversationActions;->getId()Ljava/lang/String; -HSPLandroid/view/textclassifier/ConversationActions;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/EntityConfidence$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/EntityConfidence; -HSPLandroid/view/textclassifier/EntityConfidence$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/EntityConfidence;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/EntityConfidence;->getEntities()Ljava/util/List; -HSPLandroid/view/textclassifier/EntityConfidence;->resetSortedEntitiesFromMap()V -HSPLandroid/view/textclassifier/SelectionEvent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/SystemTextClassifier$BlockingCallback;-><init>(Ljava/lang/String;Landroid/view/textclassifier/TextClassificationConstants;)V -HSPLandroid/view/textclassifier/SystemTextClassifier$BlockingCallback;->get()Landroid/os/Parcelable; -HSPLandroid/view/textclassifier/SystemTextClassifier$BlockingCallback;->onSuccess(Landroid/os/Bundle;)V -HSPLandroid/view/textclassifier/SystemTextClassifier$ResponseReceiver;-><init>(Ljava/lang/String;Landroid/view/textclassifier/TextClassificationConstants;)V -HSPLandroid/view/textclassifier/SystemTextClassifier$ResponseReceiver;->get()Ljava/lang/Object; -HSPLandroid/view/textclassifier/SystemTextClassifier$ResponseReceiver;->onSuccess(Ljava/lang/Object;)V -HSPLandroid/view/textclassifier/SystemTextClassifier;-><init>(Landroid/content/Context;Landroid/view/textclassifier/TextClassificationConstants;Z)V -HSPLandroid/view/textclassifier/SystemTextClassifier;->initializeRemoteSession(Landroid/view/textclassifier/TextClassificationContext;Landroid/view/textclassifier/TextClassificationSessionId;)V -HSPLandroid/view/textclassifier/SystemTextClassifierMetadata$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/SystemTextClassifierMetadata; -HSPLandroid/view/textclassifier/SystemTextClassifierMetadata$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/SystemTextClassifierMetadata;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/TextClassification$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/TextClassification; -HSPLandroid/view/textclassifier/TextClassification$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassification$Request;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/TextClassification;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/TextClassificationConstants;-><init>()V -HSPLandroid/view/textclassifier/TextClassificationConstants;->getSystemTextClassifierApiTimeoutInSecond()J -HSPLandroid/view/textclassifier/TextClassificationConstants;->isSmartSelectionAnimationEnabled()Z -HSPLandroid/view/textclassifier/TextClassificationContext$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/TextClassificationContext; -HSPLandroid/view/textclassifier/TextClassificationContext$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassificationContext$Builder;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/view/textclassifier/TextClassificationContext$Builder;->build()Landroid/view/textclassifier/TextClassificationContext; -HSPLandroid/view/textclassifier/TextClassificationContext;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/view/textclassifier/TextClassificationContext;->getPackageName()Ljava/lang/String; -HSPLandroid/view/textclassifier/TextClassificationContext;->getWidgetType()Ljava/lang/String; -HSPLandroid/view/textclassifier/TextClassificationContext;->setSystemTextClassifierMetadata(Landroid/view/textclassifier/SystemTextClassifierMetadata;)V -HSPLandroid/view/textclassifier/TextClassificationManager$$ExternalSyntheticLambda0;-><init>(Landroid/view/textclassifier/TextClassificationManager;)V -HSPLandroid/view/textclassifier/TextClassificationManager;-><init>(Landroid/content/Context;)V -HSPLandroid/view/textclassifier/TextClassificationManager;->createTextClassificationSession(Landroid/view/textclassifier/TextClassificationContext;)Landroid/view/textclassifier/TextClassifier; -HSPLandroid/view/textclassifier/TextClassificationManager;->getSettings()Landroid/view/textclassifier/TextClassificationConstants; -HSPLandroid/view/textclassifier/TextClassificationManager;->getSettings(Landroid/content/Context;)Landroid/view/textclassifier/TextClassificationConstants; -HSPLandroid/view/textclassifier/TextClassificationManager;->getSystemTextClassifier(I)Landroid/view/textclassifier/TextClassifier; -HSPLandroid/view/textclassifier/TextClassificationManager;->getTextClassifier()Landroid/view/textclassifier/TextClassifier; -HSPLandroid/view/textclassifier/TextClassificationSession;-><init>(Landroid/view/textclassifier/TextClassificationContext;Landroid/view/textclassifier/TextClassifier;)V -HSPLandroid/view/textclassifier/TextClassificationSession;->checkDestroyedAndRun(Ljava/util/function/Supplier;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassificationSession;->isDestroyed()Z -HSPLandroid/view/textclassifier/TextClassificationSessionId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/TextClassificationSessionId; -HSPLandroid/view/textclassifier/TextClassificationSessionId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassificationSessionId;-><init>(Ljava/lang/String;Landroid/os/IBinder;)V -HSPLandroid/view/textclassifier/TextClassifier$EntityConfig$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/TextClassifier$EntityConfig; -HSPLandroid/view/textclassifier/TextClassifier$EntityConfig$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassifier$EntityConfig;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/TextClassifier$Utils;->checkMainThread()V -HSPLandroid/view/textclassifier/TextClassifierEvent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textclassifier/TextClassifierEvent; -HSPLandroid/view/textclassifier/TextClassifierEvent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textclassifier/TextClassifierEvent;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textclassifier/TextClassifierEvent;->getEventContext()Landroid/view/textclassifier/TextClassificationContext; -HSPLandroid/view/textclassifier/TextClassifierEvent;->getParcelToken()I -HSPLandroid/view/textclassifier/TextClassifierEvent;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/TextLinks$Request;-><init>(Ljava/lang/CharSequence;Landroid/os/LocaleList;Landroid/view/textclassifier/TextClassifier$EntityConfig;ZLjava/time/ZonedDateTime;Landroid/os/Bundle;)V -HSPLandroid/view/textclassifier/TextLinks$Request;->getText()Ljava/lang/CharSequence; -HSPLandroid/view/textclassifier/TextLinks$Request;->setSystemTextClassifierMetadata(Landroid/view/textclassifier/SystemTextClassifierMetadata;)V -HSPLandroid/view/textclassifier/TextLinks$Request;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/view/textclassifier/TextLinks;->getLinks()Ljava/util/Collection; -HSPLandroid/view/textservice/SentenceSuggestionsInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textservice/SentenceSuggestionsInfo; -HSPLandroid/view/textservice/SentenceSuggestionsInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textservice/SentenceSuggestionsInfo$1;->newArray(I)[Landroid/view/textservice/SentenceSuggestionsInfo; -HSPLandroid/view/textservice/SentenceSuggestionsInfo$1;->newArray(I)[Ljava/lang/Object; -HSPLandroid/view/textservice/SentenceSuggestionsInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textservice/SpellCheckerInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textservice/SpellCheckerInfo; -HSPLandroid/view/textservice/SpellCheckerInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textservice/SpellCheckerInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textservice/SpellCheckerInfo;->getId()Ljava/lang/String; -HSPLandroid/view/textservice/SpellCheckerInfo;->getSubtypeAt(I)Landroid/view/textservice/SpellCheckerSubtype; -HSPLandroid/view/textservice/SpellCheckerInfo;->getSubtypeCount()I -HSPLandroid/view/textservice/SpellCheckerSession$InternalListener;->onServiceConnected(Lcom/android/internal/textservice/ISpellCheckerSession;)V -HSPLandroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl;->onGetSentenceSuggestions([Landroid/view/textservice/SentenceSuggestionsInfo;)V -HSPLandroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl;->onServiceConnected(Lcom/android/internal/textservice/ISpellCheckerSession;)V -HSPLandroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl;->processCloseLocked()V -HSPLandroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl;->processOrEnqueueTask(Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams;)V -HSPLandroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl;->processTask(Lcom/android/internal/textservice/ISpellCheckerSession;Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams;Z)V -HSPLandroid/view/textservice/SpellCheckerSession;->close()V -HSPLandroid/view/textservice/SpellCheckerSession;->finalize()V -HSPLandroid/view/textservice/SpellCheckerSession;->getSentenceSuggestions([Landroid/view/textservice/TextInfo;I)V -HSPLandroid/view/textservice/SpellCheckerSession;->getSpellCheckerSessionListener()Lcom/android/internal/textservice/ISpellCheckerSessionListener; -HSPLandroid/view/textservice/SpellCheckerSession;->getTextServicesSessionListener()Lcom/android/internal/textservice/ITextServicesSessionListener; -HSPLandroid/view/textservice/SpellCheckerSubtype$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textservice/SpellCheckerSubtype; -HSPLandroid/view/textservice/SpellCheckerSubtype$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textservice/SpellCheckerSubtype;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textservice/SpellCheckerSubtype;->getLocale()Ljava/lang/String; -HSPLandroid/view/textservice/SuggestionsInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/textservice/SuggestionsInfo; -HSPLandroid/view/textservice/SuggestionsInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/view/textservice/SuggestionsInfo;-><init>(Landroid/os/Parcel;)V -HSPLandroid/view/textservice/TextInfo;-><init>(Ljava/lang/CharSequence;IIII)V -HSPLandroid/view/textservice/TextServicesManager;->createInstance(Landroid/content/Context;)Landroid/view/textservice/TextServicesManager; -HSPLandroid/view/textservice/TextServicesManager;->finishSpellCheckerService(Lcom/android/internal/textservice/ISpellCheckerSessionListener;)V -HSPLandroid/view/textservice/TextServicesManager;->getCurrentSpellCheckerSubtype(Z)Landroid/view/textservice/SpellCheckerSubtype; -HSPLandroid/view/textservice/TextServicesManager;->isSpellCheckerEnabled()Z -HSPLandroid/view/textservice/TextServicesManager;->newSpellCheckerSession(Landroid/os/Bundle;Ljava/util/Locale;Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListener;Z)Landroid/view/textservice/SpellCheckerSession; -HSPLandroid/view/textservice/TextServicesManager;->parseLanguageFromLocaleString(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/webkit/ConsoleMessage;->message()Ljava/lang/String; -HSPLandroid/webkit/CookieManager;-><init>()V -HSPLandroid/webkit/CookieManager;->getInstance()Landroid/webkit/CookieManager; -HSPLandroid/webkit/CookieSyncManager;->setGetInstanceIsAllowed()V -HSPLandroid/webkit/GeolocationPermissions;-><init>()V -HSPLandroid/webkit/IWebViewUpdateService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/webkit/IWebViewUpdateService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/webkit/IWebViewUpdateService$Stub$Proxy;->getCurrentWebViewPackage()Landroid/content/pm/PackageInfo; -HSPLandroid/webkit/IWebViewUpdateService$Stub$Proxy;->isMultiProcessEnabled()Z -HSPLandroid/webkit/IWebViewUpdateService$Stub$Proxy;->waitForAndGetProvider()Landroid/webkit/WebViewProviderResponse; -HSPLandroid/webkit/IWebViewUpdateService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/webkit/IWebViewUpdateService; -HSPLandroid/webkit/MimeTypeMap;->getMimeTypeFromExtension(Ljava/lang/String;)Ljava/lang/String; -HSPLandroid/webkit/MimeTypeMap;->getSingleton()Landroid/webkit/MimeTypeMap; -HSPLandroid/webkit/URLUtil;->isFileUrl(Ljava/lang/String;)Z -HSPLandroid/webkit/URLUtil;->isHttpUrl(Ljava/lang/String;)Z -HSPLandroid/webkit/URLUtil;->isHttpsUrl(Ljava/lang/String;)Z -HSPLandroid/webkit/URLUtil;->isValidUrl(Ljava/lang/String;)Z -HSPLandroid/webkit/WebChromeClient;-><init>()V -HSPLandroid/webkit/WebChromeClient;->getVisitedHistory(Landroid/webkit/ValueCallback;)V -HSPLandroid/webkit/WebChromeClient;->onProgressChanged(Landroid/webkit/WebView;I)V -HSPLandroid/webkit/WebChromeClient;->onReceivedIcon(Landroid/webkit/WebView;Landroid/graphics/Bitmap;)V -HSPLandroid/webkit/WebChromeClient;->onReceivedTitle(Landroid/webkit/WebView;Ljava/lang/String;)V -HSPLandroid/webkit/WebSettings;-><init>()V -HSPLandroid/webkit/WebSettings;->getDefaultUserAgent(Landroid/content/Context;)Ljava/lang/String; -HSPLandroid/webkit/WebStorage;-><init>()V -HSPLandroid/webkit/WebView$HitTestResult;-><init>()V -HSPLandroid/webkit/WebView$PrivateAccess;->overScrollBy(IIIIIIIIZ)V -HSPLandroid/webkit/WebView$PrivateAccess;->setMeasuredDimension(II)V -HSPLandroid/webkit/WebView$PrivateAccess;->super_getScrollBarStyle()I -HSPLandroid/webkit/WebView$PrivateAccess;->super_scrollTo(II)V -HSPLandroid/webkit/WebView$PrivateAccess;->super_setFrame(IIII)Z -HSPLandroid/webkit/WebView$PrivateAccess;->super_setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/webkit/WebView;-><init>(Landroid/content/Context;)V -HSPLandroid/webkit/WebView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/webkit/WebView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/webkit/WebView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IILjava/util/Map;Z)V -HSPLandroid/webkit/WebView;->addJavascriptInterface(Ljava/lang/Object;Ljava/lang/String;)V -HSPLandroid/webkit/WebView;->checkThread()V -HSPLandroid/webkit/WebView;->computeHorizontalScrollOffset()I -HSPLandroid/webkit/WebView;->computeHorizontalScrollRange()I -HSPLandroid/webkit/WebView;->computeScroll()V -HSPLandroid/webkit/WebView;->computeVerticalScrollExtent()I -HSPLandroid/webkit/WebView;->computeVerticalScrollOffset()I -HSPLandroid/webkit/WebView;->computeVerticalScrollRange()I -HSPLandroid/webkit/WebView;->destroy()V -HSPLandroid/webkit/WebView;->dispatchDraw(Landroid/graphics/Canvas;)V -HSPLandroid/webkit/WebView;->ensureProviderCreated()V -HSPLandroid/webkit/WebView;->evaluateJavascript(Ljava/lang/String;Landroid/webkit/ValueCallback;)V -HSPLandroid/webkit/WebView;->getCurrentWebViewPackage()Landroid/content/pm/PackageInfo; -HSPLandroid/webkit/WebView;->getFavicon()Landroid/graphics/Bitmap; -HSPLandroid/webkit/WebView;->getHandler()Landroid/os/Handler; -HSPLandroid/webkit/WebView;->getSettings()Landroid/webkit/WebSettings; -HSPLandroid/webkit/WebView;->loadDataWithBaseURL(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLandroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V -HSPLandroid/webkit/WebView;->onAttachedToWindow()V -HSPLandroid/webkit/WebView;->onDetachedFromWindowInternal()V -HSPLandroid/webkit/WebView;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/webkit/WebView;->onMeasure(II)V -HSPLandroid/webkit/WebView;->onOverScrolled(IIZZ)V -HSPLandroid/webkit/WebView;->onSizeChanged(IIII)V -HSPLandroid/webkit/WebView;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/webkit/WebView;->onVisibilityChanged(Landroid/view/View;I)V -HSPLandroid/webkit/WebView;->onWindowFocusChanged(Z)V -HSPLandroid/webkit/WebView;->onWindowVisibilityChanged(I)V -HSPLandroid/webkit/WebView;->setBackgroundColor(I)V -HSPLandroid/webkit/WebView;->setDataDirectorySuffix(Ljava/lang/String;)V -HSPLandroid/webkit/WebView;->setFrame(IIII)Z -HSPLandroid/webkit/WebView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/webkit/WebView;->setOverScrollMode(I)V -HSPLandroid/webkit/WebView;->setWebChromeClient(Landroid/webkit/WebChromeClient;)V -HSPLandroid/webkit/WebView;->setWebViewClient(Landroid/webkit/WebViewClient;)V -HSPLandroid/webkit/WebViewClient;-><init>()V -HSPLandroid/webkit/WebViewClient;->doUpdateVisitedHistory(Landroid/webkit/WebView;Ljava/lang/String;Z)V -HSPLandroid/webkit/WebViewClient;->onLoadResource(Landroid/webkit/WebView;Ljava/lang/String;)V -HSPLandroid/webkit/WebViewClient;->onPageCommitVisible(Landroid/webkit/WebView;Ljava/lang/String;)V -HSPLandroid/webkit/WebViewClient;->onPageFinished(Landroid/webkit/WebView;Ljava/lang/String;)V -HSPLandroid/webkit/WebViewClient;->onPageStarted(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V -HSPLandroid/webkit/WebViewClient;->onScaleChanged(Landroid/webkit/WebView;FF)V -HSPLandroid/webkit/WebViewClient;->shouldInterceptRequest(Landroid/webkit/WebView;Landroid/webkit/WebResourceRequest;)Landroid/webkit/WebResourceResponse; -HSPLandroid/webkit/WebViewClient;->shouldInterceptRequest(Landroid/webkit/WebView;Ljava/lang/String;)Landroid/webkit/WebResourceResponse; -HSPLandroid/webkit/WebViewDelegate;->addWebViewAssetPath(Landroid/content/Context;)V -HSPLandroid/webkit/WebViewDelegate;->drawWebViewFunctor(Landroid/graphics/Canvas;I)V -HSPLandroid/webkit/WebViewDelegate;->getApplication()Landroid/app/Application; -HSPLandroid/webkit/WebViewDelegate;->getDataDirectorySuffix()Ljava/lang/String; -HSPLandroid/webkit/WebViewDelegate;->getPackageId(Landroid/content/res/Resources;Ljava/lang/String;)I -HSPLandroid/webkit/WebViewDelegate;->getStartupTimestamps()Landroid/webkit/WebViewFactory$StartupTimestamps; -HSPLandroid/webkit/WebViewDelegate;->isMultiProcessEnabled()Z -HSPLandroid/webkit/WebViewFactory$StartupTimestamps;->getWebViewLoadStart()J -HSPLandroid/webkit/WebViewFactory;->getDataDirectorySuffix()Ljava/lang/String; -HSPLandroid/webkit/WebViewFactory;->getLoadedPackageInfo()Landroid/content/pm/PackageInfo; -HSPLandroid/webkit/WebViewFactory;->getProvider()Landroid/webkit/WebViewFactoryProvider; -HSPLandroid/webkit/WebViewFactory;->getProviderClass()Ljava/lang/Class; -HSPLandroid/webkit/WebViewFactory;->getStartupTimestamps()Landroid/webkit/WebViewFactory$StartupTimestamps; -HSPLandroid/webkit/WebViewFactory;->getUpdateService()Landroid/webkit/IWebViewUpdateService; -HSPLandroid/webkit/WebViewFactory;->getUpdateServiceUnchecked()Landroid/webkit/IWebViewUpdateService; -HSPLandroid/webkit/WebViewFactory;->getWebViewContextAndSetProvider()Landroid/content/Context; -HSPLandroid/webkit/WebViewFactory;->getWebViewLibrary(Landroid/content/pm/ApplicationInfo;)Ljava/lang/String; -HSPLandroid/webkit/WebViewFactory;->isWebViewSupported()Z -HSPLandroid/webkit/WebViewFactory;->prepareWebViewInZygote()V -HSPLandroid/webkit/WebViewFactory;->setDataDirectorySuffix(Ljava/lang/String;)V -HSPLandroid/webkit/WebViewFactory;->signaturesEquals([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)Z -HSPLandroid/webkit/WebViewFactory;->verifyPackageInfo(Landroid/content/pm/PackageInfo;Landroid/content/pm/PackageInfo;)V -HSPLandroid/webkit/WebViewLibraryLoader;->loadNativeLibrary(Ljava/lang/ClassLoader;Ljava/lang/String;)I -HSPLandroid/webkit/WebViewLibraryLoader;->reserveAddressSpaceInZygote()V -HSPLandroid/webkit/WebViewProviderResponse$1;->createFromParcel(Landroid/os/Parcel;)Landroid/webkit/WebViewProviderResponse; -HSPLandroid/webkit/WebViewProviderResponse$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/AbsListView$3;->run()V -HSPLandroid/widget/AbsListView$AdapterDataSetObserver;->onChanged()V -HSPLandroid/widget/AbsListView$DeviceConfigChangeListener;-><init>()V -HSPLandroid/widget/AbsListView$DeviceConfigChangeListener;-><init>(Landroid/widget/AbsListView$DeviceConfigChangeListener-IA;)V -HSPLandroid/widget/AbsListView$PerformClick;->run()V -HSPLandroid/widget/AbsListView$RecycleBin;->addScrapView(Landroid/view/View;I)V+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin;]Landroid/widget/AbsListView;Landroid/widget/ListView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/AbsListView$RecycleBin;->clear()V -HSPLandroid/widget/AbsListView$RecycleBin;->clearTransientStateViews()V -HSPLandroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V -HSPLandroid/widget/AbsListView$RecycleBin;->getActiveView(I)Landroid/view/View; -HSPLandroid/widget/AbsListView$RecycleBin;->getScrapView(I)Landroid/view/View;+]Landroid/widget/ListAdapter;missing_types -HSPLandroid/widget/AbsListView$RecycleBin;->getTransientStateView(I)Landroid/view/View; -HSPLandroid/widget/AbsListView$RecycleBin;->markChildrenDirty()V -HSPLandroid/widget/AbsListView$RecycleBin;->pruneScrapViews()V -HSPLandroid/widget/AbsListView$RecycleBin;->removeSkippedScrap()V -HSPLandroid/widget/AbsListView$RecycleBin;->retrieveFromScrap(Ljava/util/ArrayList;I)Landroid/view/View;+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/ListAdapter;Landroid/preference/PreferenceGroupAdapter;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V -HSPLandroid/widget/AbsListView$RecycleBin;->setViewTypeCount(I)V -HSPLandroid/widget/AbsListView$RecycleBin;->shouldRecycleViewType(I)Z -HSPLandroid/widget/AbsListView$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/AbsListView$WindowRunnnable;->rememberWindowAttachCount()V -HSPLandroid/widget/AbsListView$WindowRunnnable;->sameWindow()Z -HSPLandroid/widget/AbsListView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/AbsListView;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/widget/AbsListView;->clearChoices()V -HSPLandroid/widget/AbsListView;->computeVerticalScrollExtent()I+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types -HSPLandroid/widget/AbsListView;->computeVerticalScrollOffset()I+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types -HSPLandroid/widget/AbsListView;->computeVerticalScrollRange()I -HSPLandroid/widget/AbsListView;->dispatchDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/AbsListView;->dispatchSetPressed(Z)V -HSPLandroid/widget/AbsListView;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/widget/AbsListView;missing_types]Landroid/widget/EdgeEffect;Landroid/widget/EdgeEffect; -HSPLandroid/widget/AbsListView;->drawableStateChanged()V -HSPLandroid/widget/AbsListView;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/AbsListView;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/AbsListView;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/widget/AbsListView$LayoutParams; -HSPLandroid/widget/AbsListView;->getDrawableStateForSelector()[I -HSPLandroid/widget/AbsListView;->getVerticalScrollbarWidth()I -HSPLandroid/widget/AbsListView;->handleBoundsChange()V -HSPLandroid/widget/AbsListView;->handleDataChanged()V -HSPLandroid/widget/AbsListView;->handleScrollBarDragging(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/AbsListView;->hideSelector()V -HSPLandroid/widget/AbsListView;->initAbsListView()V -HSPLandroid/widget/AbsListView;->internalSetPadding(IIII)V -HSPLandroid/widget/AbsListView;->invokeOnItemScrollListener()V -HSPLandroid/widget/AbsListView;->isFastScrollEnabled()Z -HSPLandroid/widget/AbsListView;->isInFilterMode()Z -HSPLandroid/widget/AbsListView;->isVerticalScrollBarHidden()Z -HSPLandroid/widget/AbsListView;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/AbsListView;->obtainView(I[Z)Landroid/view/View;+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin;]Landroid/widget/ListAdapter;missing_types -HSPLandroid/widget/AbsListView;->onAttachedToWindow()V -HSPLandroid/widget/AbsListView;->onCancelPendingInputEvents()V -HSPLandroid/widget/AbsListView;->onDetachedFromWindow()V -HSPLandroid/widget/AbsListView;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/AbsListView;->onLayout(ZIIII)V -HSPLandroid/widget/AbsListView;->onMeasure(II)V -HSPLandroid/widget/AbsListView;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/AbsListView;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/AbsListView;->onTouchDown(Landroid/view/MotionEvent;)V -HSPLandroid/widget/AbsListView;->onTouchEvent(Landroid/view/MotionEvent;)Z+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/VelocityTracker;Landroid/view/VelocityTracker;]Landroid/widget/AbsListView;Landroid/widget/ListView; -HSPLandroid/widget/AbsListView;->onTouchModeChanged(Z)V -HSPLandroid/widget/AbsListView;->onTouchMove(Landroid/view/MotionEvent;Landroid/view/MotionEvent;)V+]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;Landroid/widget/ListView; -HSPLandroid/widget/AbsListView;->onTouchUp(Landroid/view/MotionEvent;)V -HSPLandroid/widget/AbsListView;->onWindowFocusChanged(Z)V -HSPLandroid/widget/AbsListView;->performItemClick(Landroid/view/View;IJ)Z -HSPLandroid/widget/AbsListView;->pointToPosition(II)I -HSPLandroid/widget/AbsListView;->positionSelector(ILandroid/view/View;)V -HSPLandroid/widget/AbsListView;->positionSelector(ILandroid/view/View;ZFF)V -HSPLandroid/widget/AbsListView;->reportScrollStateChange(I)V -HSPLandroid/widget/AbsListView;->requestLayout()V -HSPLandroid/widget/AbsListView;->resetList()V -HSPLandroid/widget/AbsListView;->setChoiceMode(I)V -HSPLandroid/widget/AbsListView;->setFastScrollAlwaysVisible(Z)V -HSPLandroid/widget/AbsListView;->setFastScrollEnabled(Z)V -HSPLandroid/widget/AbsListView;->setFastScrollStyle(I)V -HSPLandroid/widget/AbsListView;->setFrame(IIII)Z -HSPLandroid/widget/AbsListView;->setItemViewLayoutParams(Landroid/view/View;I)V+]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/AbsListView;missing_types]Landroid/widget/ListAdapter;missing_types -HSPLandroid/widget/AbsListView;->setOnScrollListener(Landroid/widget/AbsListView$OnScrollListener;)V -HSPLandroid/widget/AbsListView;->setScrollingCacheEnabled(Z)V -HSPLandroid/widget/AbsListView;->setSelectionFromTop(II)V -HSPLandroid/widget/AbsListView;->setSelector(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/AbsListView;->setSmoothScrollbarEnabled(Z)V -HSPLandroid/widget/AbsListView;->setStackFromBottom(Z)V -HSPLandroid/widget/AbsListView;->setTextFilterEnabled(Z)V -HSPLandroid/widget/AbsListView;->setTranscriptMode(I)V -HSPLandroid/widget/AbsListView;->setVisibleRangeHint(II)V -HSPLandroid/widget/AbsListView;->setupDeviceConfigProperties()V -HSPLandroid/widget/AbsListView;->shouldShowSelector()Z -HSPLandroid/widget/AbsListView;->startScrollIfNeeded(IILandroid/view/MotionEvent;)Z -HSPLandroid/widget/AbsListView;->touchModeDrawsInPressedState()Z -HSPLandroid/widget/AbsListView;->updateScrollIndicators()V -HSPLandroid/widget/AbsListView;->updateSelectorState()V -HSPLandroid/widget/AbsListView;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/AbsSeekBar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/AbsSeekBar;->applyThumbTint()V -HSPLandroid/widget/AbsSeekBar;->applyTickMarkTint()V -HSPLandroid/widget/AbsSeekBar;->drawThumb(Landroid/graphics/Canvas;)V -HSPLandroid/widget/AbsSeekBar;->drawTickMarks(Landroid/graphics/Canvas;)V -HSPLandroid/widget/AbsSeekBar;->drawTrack(Landroid/graphics/Canvas;)V -HSPLandroid/widget/AbsSeekBar;->drawableStateChanged()V -HSPLandroid/widget/AbsSeekBar;->getThumbOffset()I -HSPLandroid/widget/AbsSeekBar;->growRectTo(Landroid/graphics/Rect;I)V -HSPLandroid/widget/AbsSeekBar;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/AbsSeekBar;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/AbsSeekBar;->onMeasure(II)V -HSPLandroid/widget/AbsSeekBar;->onResolveDrawables(I)V -HSPLandroid/widget/AbsSeekBar;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/AbsSeekBar;->onSizeChanged(IIII)V -HSPLandroid/widget/AbsSeekBar;->onVisualProgressChanged(IF)V -HSPLandroid/widget/AbsSeekBar;->setKeyProgressIncrement(I)V -HSPLandroid/widget/AbsSeekBar;->setMax(I)V -HSPLandroid/widget/AbsSeekBar;->setMin(I)V -HSPLandroid/widget/AbsSeekBar;->setThumb(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/AbsSeekBar;->setThumbOffset(I)V -HSPLandroid/widget/AbsSeekBar;->setThumbPos(ILandroid/graphics/drawable/Drawable;FI)V -HSPLandroid/widget/AbsSeekBar;->setTickMark(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/AbsSeekBar;->updateGestureExclusionRects()V -HSPLandroid/widget/AbsSeekBar;->updateThumbAndTrackPos(II)V -HSPLandroid/widget/AbsSeekBar;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/AbsSpinner;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/AbsSpinner;->getAdapter()Landroid/widget/Adapter; -HSPLandroid/widget/AbsSpinner;->getAdapter()Landroid/widget/SpinnerAdapter; -HSPLandroid/widget/AbsSpinner;->getAutofillType()I -HSPLandroid/widget/AbsSpinner;->requestLayout()V -HSPLandroid/widget/AbsoluteLayout;->onLayout(ZIIII)V -HSPLandroid/widget/AbsoluteLayout;->onMeasure(II)V -HSPLandroid/widget/ActionMenuView;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/ActionMenuView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ActionMenuView;->onMeasure(II)V -HSPLandroid/widget/ActionMenuView;->peekMenu()Lcom/android/internal/view/menu/MenuBuilder; -HSPLandroid/widget/AdapterView$AdapterDataSetObserver;-><init>(Landroid/widget/AdapterView;)V -HSPLandroid/widget/AdapterView$AdapterDataSetObserver;->onChanged()V -HSPLandroid/widget/AdapterView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/AdapterView;->checkFocus()V -HSPLandroid/widget/AdapterView;->checkSelectionChanged()V -HSPLandroid/widget/AdapterView;->dispatchSaveInstanceState(Landroid/util/SparseArray;)V -HSPLandroid/widget/AdapterView;->getCount()I -HSPLandroid/widget/AdapterView;->getItemIdAtPosition(I)J -HSPLandroid/widget/AdapterView;->getSelectedItemId()J -HSPLandroid/widget/AdapterView;->isInFilterMode()Z -HSPLandroid/widget/AdapterView;->onProvideStructure(Landroid/view/ViewStructure;II)V -HSPLandroid/widget/AdapterView;->rememberSyncState()V -HSPLandroid/widget/AdapterView;->setEmptyView(Landroid/view/View;)V -HSPLandroid/widget/AdapterView;->setFocusable(I)V -HSPLandroid/widget/AdapterView;->setFocusableInTouchMode(Z)V -HSPLandroid/widget/AdapterView;->setNextSelectedPositionInt(I)V -HSPLandroid/widget/AdapterView;->setOnItemClickListener(Landroid/widget/AdapterView$OnItemClickListener;)V -HSPLandroid/widget/AdapterView;->setOnItemSelectedListener(Landroid/widget/AdapterView$OnItemSelectedListener;)V -HSPLandroid/widget/AdapterView;->setSelectedPositionInt(I)V -HSPLandroid/widget/AdapterView;->updateEmptyStatus(Z)V -HSPLandroid/widget/ArrayAdapter;-><init>(Landroid/content/Context;I)V -HSPLandroid/widget/ArrayAdapter;-><init>(Landroid/content/Context;IILjava/util/List;)V -HSPLandroid/widget/ArrayAdapter;-><init>(Landroid/content/Context;IILjava/util/List;Z)V -HSPLandroid/widget/ArrayAdapter;->clear()V -HSPLandroid/widget/ArrayAdapter;->getCount()I -HSPLandroid/widget/ArrayAdapter;->getItem(I)Ljava/lang/Object; -HSPLandroid/widget/ArrayAdapter;->getItemId(I)J -HSPLandroid/widget/ArrayAdapter;->notifyDataSetChanged()V -HSPLandroid/widget/AutoCompleteTextView$DropDownItemClickListener;-><init>(Landroid/widget/AutoCompleteTextView;)V -HSPLandroid/widget/AutoCompleteTextView$MyWatcher;-><init>(Landroid/widget/AutoCompleteTextView;)V -HSPLandroid/widget/AutoCompleteTextView$PassThroughClickListener;-><init>(Landroid/widget/AutoCompleteTextView;)V -HSPLandroid/widget/AutoCompleteTextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/AutoCompleteTextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IILandroid/content/res/Resources$Theme;)V -HSPLandroid/widget/AutoCompleteTextView;->setCompletionHint(Ljava/lang/CharSequence;)V -HSPLandroid/widget/BaseAdapter;-><init>()V -HSPLandroid/widget/BaseAdapter;->areAllItemsEnabled()Z -HSPLandroid/widget/BaseAdapter;->getItemViewType(I)I -HSPLandroid/widget/BaseAdapter;->getViewTypeCount()I -HSPLandroid/widget/BaseAdapter;->hasStableIds()Z -HSPLandroid/widget/BaseAdapter;->isEmpty()Z -HSPLandroid/widget/BaseAdapter;->isEnabled(I)Z -HSPLandroid/widget/BaseAdapter;->notifyDataSetChanged()V -HSPLandroid/widget/BaseAdapter;->registerDataSetObserver(Landroid/database/DataSetObserver;)V -HSPLandroid/widget/BaseAdapter;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V -HSPLandroid/widget/Button;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/Button;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/Button;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/Button;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/CheckBox;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/CompoundButton$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/CompoundButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/CompoundButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/CompoundButton;->applyButtonTint()V -HSPLandroid/widget/CompoundButton;->drawableHotspotChanged(FF)V -HSPLandroid/widget/CompoundButton;->drawableStateChanged()V -HSPLandroid/widget/CompoundButton;->getAutofillType()I -HSPLandroid/widget/CompoundButton;->getAutofillValue()Landroid/view/autofill/AutofillValue; -HSPLandroid/widget/CompoundButton;->getButtonDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/CompoundButton;->getButtonStateDescription()Ljava/lang/CharSequence; -HSPLandroid/widget/CompoundButton;->getCompoundPaddingLeft()I -HSPLandroid/widget/CompoundButton;->getCompoundPaddingRight()I -HSPLandroid/widget/CompoundButton;->getHorizontalOffsetForDrawables()I -HSPLandroid/widget/CompoundButton;->isChecked()Z -HSPLandroid/widget/CompoundButton;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/CompoundButton;->onCreateDrawableState(I)[I -HSPLandroid/widget/CompoundButton;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/CompoundButton;->onProvideStructure(Landroid/view/ViewStructure;II)V -HSPLandroid/widget/CompoundButton;->onResolveDrawables(I)V -HSPLandroid/widget/CompoundButton;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/CompoundButton;->setButtonDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/CompoundButton;->setChecked(Z)V -HSPLandroid/widget/CompoundButton;->setDefaultStateDescription()V -HSPLandroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V -HSPLandroid/widget/CompoundButton;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/EdgeEffect;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/EdgeEffect;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/EdgeEffect;->calculateDistanceFromGlowValues(FF)F -HSPLandroid/widget/EdgeEffect;->dampStretchVector(F)F -HSPLandroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RecordingCanvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/RenderNode;Landroid/graphics/RenderNode; -HSPLandroid/widget/EdgeEffect;->finish()V -HSPLandroid/widget/EdgeEffect;->getCurrentEdgeEffectBehavior()I -HSPLandroid/widget/EdgeEffect;->getDistance()F -HSPLandroid/widget/EdgeEffect;->isAtEquilibrium()Z -HSPLandroid/widget/EdgeEffect;->isFinished()Z -HSPLandroid/widget/EdgeEffect;->onAbsorb(I)V -HSPLandroid/widget/EdgeEffect;->onPull(FF)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; -HSPLandroid/widget/EdgeEffect;->onPullDistance(FF)F+]Landroid/widget/EdgeEffect;Landroid/widget/EdgeEffect; -HSPLandroid/widget/EdgeEffect;->onRelease()V -HSPLandroid/widget/EdgeEffect;->setSize(II)V -HSPLandroid/widget/EdgeEffect;->update()V -HSPLandroid/widget/EdgeEffect;->updateSpring()V -HSPLandroid/widget/EditText;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/EditText;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/EditText;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/EditText;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/EditText;->getDefaultEditable()Z -HSPLandroid/widget/EditText;->getDefaultMovementMethod()Landroid/text/method/MovementMethod; -HSPLandroid/widget/EditText;->getFreezesText()Z -HSPLandroid/widget/EditText;->getText()Landroid/text/Editable; -HSPLandroid/widget/EditText;->getText()Ljava/lang/CharSequence; -HSPLandroid/widget/EditText;->setEllipsize(Landroid/text/TextUtils$TruncateAt;)V -HSPLandroid/widget/EditText;->setSelection(I)V -HSPLandroid/widget/EditText;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;)V -HSPLandroid/widget/EditText;->supportsAutoSizeText()Z -HSPLandroid/widget/Editor$$ExternalSyntheticLambda2;-><init>(Landroid/widget/Editor;)V -HSPLandroid/widget/Editor$2;->onDraw()V -HSPLandroid/widget/Editor$AccessibilitySmartActions;-><init>(Landroid/widget/TextView;)V -HSPLandroid/widget/Editor$AccessibilitySmartActions;-><init>(Landroid/widget/TextView;Landroid/widget/Editor$AccessibilitySmartActions-IA;)V -HSPLandroid/widget/Editor$Blink;->cancel()V -HSPLandroid/widget/Editor$Blink;->run()V -HSPLandroid/widget/Editor$Blink;->uncancel()V -HSPLandroid/widget/Editor$CursorAnchorInfoNotifier;->updatePosition(IIZZ)V -HSPLandroid/widget/Editor$EditOperation;-><init>(Landroid/widget/Editor;Ljava/lang/String;ILjava/lang/String;Z)V -HSPLandroid/widget/Editor$EditOperation;->commit()V -HSPLandroid/widget/Editor$EditOperation;->forceMergeWith(Landroid/widget/Editor$EditOperation;)V -HSPLandroid/widget/Editor$EditOperation;->mergeDeleteWith(Landroid/widget/Editor$EditOperation;)Z -HSPLandroid/widget/Editor$EditOperation;->mergeInsertWith(Landroid/widget/Editor$EditOperation;)Z -HSPLandroid/widget/Editor$EditOperation;->mergeReplaceWith(Landroid/widget/Editor$EditOperation;)Z -HSPLandroid/widget/Editor$EditOperation;->mergeWith(Landroid/widget/Editor$EditOperation;)Z -HSPLandroid/widget/Editor$EditOperation;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/Editor$HandleView;-><init>(Landroid/widget/Editor;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;I)V -HSPLandroid/widget/Editor$HandleView;->getHorizontal(Landroid/text/Layout;I)F -HSPLandroid/widget/Editor$HandleView;->hide()V -HSPLandroid/widget/Editor$HandleView;->invalidate()V -HSPLandroid/widget/Editor$HandleView;->isAtRtlRun(Landroid/text/Layout;I)Z -HSPLandroid/widget/Editor$HandleView;->isDragging()Z -HSPLandroid/widget/Editor$HandleView;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/Editor$HandleView;->onSizeChanged(IIII)V -HSPLandroid/widget/Editor$HandleView;->positionAtCursorOffset(IZZ)V -HSPLandroid/widget/Editor$HandleView;->setDrawables(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/Editor$HandleView;->shouldShow()Z -HSPLandroid/widget/Editor$HandleView;->updateDrawable(Z)V -HSPLandroid/widget/Editor$HandleView;->updatePosition(IIZZ)V -HSPLandroid/widget/Editor$InsertionHandleView;-><init>(Landroid/widget/Editor;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/Editor$InsertionHandleView;->dismiss()V -HSPLandroid/widget/Editor$InsertionHandleView;->getCurrentCursorOffset()I -HSPLandroid/widget/Editor$InsertionHandleView;->getCursorHorizontalPosition(Landroid/text/Layout;I)I -HSPLandroid/widget/Editor$InsertionHandleView;->getCursorOffset()I -HSPLandroid/widget/Editor$InsertionHandleView;->getHorizontalGravity(Z)I -HSPLandroid/widget/Editor$InsertionHandleView;->getHotspotX(Landroid/graphics/drawable/Drawable;Z)I -HSPLandroid/widget/Editor$InsertionHandleView;->isShowing()Z -HSPLandroid/widget/Editor$InsertionHandleView;->onDetached()V -HSPLandroid/widget/Editor$InsertionHandleView;->onMeasure(II)V -HSPLandroid/widget/Editor$InsertionHandleView;->show()V -HSPLandroid/widget/Editor$InsertionHandleView;->updateDrawable(Z)V -HSPLandroid/widget/Editor$InsertionHandleView;->updateSelection(I)V -HSPLandroid/widget/Editor$InsertionPointCursorController;->getHandle()Landroid/widget/Editor$InsertionHandleView; -HSPLandroid/widget/Editor$InsertionPointCursorController;->hide()V -HSPLandroid/widget/Editor$InsertionPointCursorController;->invalidateHandle()V -HSPLandroid/widget/Editor$InsertionPointCursorController;->isActive()Z -HSPLandroid/widget/Editor$InsertionPointCursorController;->isCursorBeingModified()Z -HSPLandroid/widget/Editor$InsertionPointCursorController;->onDetached()V -HSPLandroid/widget/Editor$InsertionPointCursorController;->onTouchEvent(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor$InsertionPointCursorController;->show()V -HSPLandroid/widget/Editor$PositionListener;->addSubscriber(Landroid/widget/Editor$TextViewPositionListener;Z)V -HSPLandroid/widget/Editor$PositionListener;->onPreDraw()Z -HSPLandroid/widget/Editor$PositionListener;->onScrollChanged()V -HSPLandroid/widget/Editor$PositionListener;->removeSubscriber(Landroid/widget/Editor$TextViewPositionListener;)V -HSPLandroid/widget/Editor$PositionListener;->updatePosition()V -HSPLandroid/widget/Editor$ProcessTextIntentActionsHandler;-><init>(Landroid/widget/Editor;)V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->getMinTouchOffset()I -HSPLandroid/widget/Editor$SelectionModifierCursorController;->hide()V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->invalidateHandles()V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->isCursorBeingModified()Z -HSPLandroid/widget/Editor$SelectionModifierCursorController;->isDragAcceleratorActive()Z -HSPLandroid/widget/Editor$SelectionModifierCursorController;->isSelectionStartDragged()Z -HSPLandroid/widget/Editor$SelectionModifierCursorController;->onDetached()V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->onTouchEvent(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->resetDragAcceleratorState()V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->resetTouchOffsets()V -HSPLandroid/widget/Editor$SelectionModifierCursorController;->updateSelection(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor$SpanController;->hide()V -HSPLandroid/widget/Editor$SpanController;->onSpanAdded(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/widget/Editor$SpanController;->onSpanChanged(Landroid/text/Spannable;Ljava/lang/Object;IIII)V -HSPLandroid/widget/Editor$SpanController;->onSpanRemoved(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/widget/Editor$TextRenderNode;->needsRecord()Z -HSPLandroid/widget/Editor$UndoInputFilter;->beginBatchEdit()V -HSPLandroid/widget/Editor$UndoInputFilter;->canUndoEdit(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Z -HSPLandroid/widget/Editor$UndoInputFilter;->endBatchEdit()V -HSPLandroid/widget/Editor$UndoInputFilter;->filter(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; -HSPLandroid/widget/Editor$UndoInputFilter;->handleEdit(Ljava/lang/CharSequence;IILandroid/text/Spanned;IIZ)V -HSPLandroid/widget/Editor$UndoInputFilter;->recordEdit(Landroid/widget/Editor$EditOperation;I)V -HSPLandroid/widget/Editor$UndoInputFilter;->restoreInstanceState(Landroid/os/Parcel;)V -HSPLandroid/widget/Editor$UndoInputFilter;->saveInstanceState(Landroid/os/Parcel;)V -HSPLandroid/widget/Editor;->-$$Nest$fgetmTextView(Landroid/widget/Editor;)Landroid/widget/TextView; -HSPLandroid/widget/Editor;->-$$Nest$mgetInputMethodManager(Landroid/widget/Editor;)Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/widget/Editor;-><init>(Landroid/widget/TextView;)V -HSPLandroid/widget/Editor;->addSpanWatchers(Landroid/text/Spannable;)V -HSPLandroid/widget/Editor;->adjustInputType(ZZZZ)V -HSPLandroid/widget/Editor;->beforeSetText()V -HSPLandroid/widget/Editor;->beginBatchEdit()V -HSPLandroid/widget/Editor;->clampHorizontalPosition(Landroid/graphics/drawable/Drawable;F)I -HSPLandroid/widget/Editor;->createInputContentTypeIfNeeded()V -HSPLandroid/widget/Editor;->createInputMethodStateIfNeeded()V -HSPLandroid/widget/Editor;->discardTextDisplayLists()V -HSPLandroid/widget/Editor;->downgradeEasyCorrectionSpans()V -HSPLandroid/widget/Editor;->drawHardwareAcceleratedInner(Landroid/graphics/Canvas;Landroid/text/Layout;Landroid/graphics/Path;Landroid/graphics/Paint;I[I[IIII)I -HSPLandroid/widget/Editor;->endBatchEdit()V -HSPLandroid/widget/Editor;->ensureEndedBatchEdit()V -HSPLandroid/widget/Editor;->ensureNoSelectionIfNonSelectable()V -HSPLandroid/widget/Editor;->extractedTextModeWillBeStarted()Z -HSPLandroid/widget/Editor;->finishBatchEdit(Landroid/widget/Editor$InputMethodState;)V -HSPLandroid/widget/Editor;->forgetUndoRedo()V -HSPLandroid/widget/Editor;->getAvailableDisplayListIndex([III)I -HSPLandroid/widget/Editor;->getDefaultOnReceiveContentListener()Landroid/widget/TextViewOnReceiveContentListener; -HSPLandroid/widget/Editor;->getInputMethodManager()Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/widget/Editor;->getInsertionController()Landroid/widget/Editor$InsertionPointCursorController; -HSPLandroid/widget/Editor;->getLastTapPosition()I -HSPLandroid/widget/Editor;->getPositionListener()Landroid/widget/Editor$PositionListener; -HSPLandroid/widget/Editor;->getSelectionActionModeHelper()Landroid/widget/SelectionActionModeHelper; -HSPLandroid/widget/Editor;->getSelectionController()Landroid/widget/Editor$SelectionModifierCursorController; -HSPLandroid/widget/Editor;->getTextActionMode()Landroid/view/ActionMode; -HSPLandroid/widget/Editor;->getTextView()Landroid/widget/TextView; -HSPLandroid/widget/Editor;->hasInsertionController()Z -HSPLandroid/widget/Editor;->hasSelectionController()Z -HSPLandroid/widget/Editor;->hideCursorAndSpanControllers()V -HSPLandroid/widget/Editor;->hideInsertionPointCursorController()V -HSPLandroid/widget/Editor;->invalidateHandlesAndActionMode()V -HSPLandroid/widget/Editor;->invalidateTextDisplayList()V -HSPLandroid/widget/Editor;->invalidateTextDisplayList(Landroid/text/Layout;II)V -HSPLandroid/widget/Editor;->isCursorInsideEasyCorrectionSpan()Z -HSPLandroid/widget/Editor;->loadCursorDrawable()V -HSPLandroid/widget/Editor;->loadHandleDrawables(Z)V -HSPLandroid/widget/Editor;->makeBlink()V -HSPLandroid/widget/Editor;->maybeFireScheduledRestartInputForSetText()V -HSPLandroid/widget/Editor;->onAttachedToWindow()V -HSPLandroid/widget/Editor;->onDetachedFromWindow()V -HSPLandroid/widget/Editor;->onDraw(Landroid/graphics/Canvas;Landroid/text/Layout;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;I)V -HSPLandroid/widget/Editor;->onFocusChanged(ZI)V -HSPLandroid/widget/Editor;->onLocaleChanged()V -HSPLandroid/widget/Editor;->onScreenStateChanged(I)V -HSPLandroid/widget/Editor;->onScrollChanged()V -HSPLandroid/widget/Editor;->onTouchEvent(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor;->onTouchUpEvent(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor;->onWindowFocusChanged(Z)V -HSPLandroid/widget/Editor;->prepareCursorControllers()V -HSPLandroid/widget/Editor;->refreshTextActionMode()V -HSPLandroid/widget/Editor;->reportExtractedText()Z -HSPLandroid/widget/Editor;->restoreInstanceState(Landroid/os/ParcelableParcel;)V -HSPLandroid/widget/Editor;->resumeBlink()V -HSPLandroid/widget/Editor;->saveInstanceState()Landroid/os/ParcelableParcel; -HSPLandroid/widget/Editor;->scheduleRestartInputForSetText()V -HSPLandroid/widget/Editor;->sendOnTextChanged(III)V -HSPLandroid/widget/Editor;->sendUpdateSelection()V -HSPLandroid/widget/Editor;->setFrame()V -HSPLandroid/widget/Editor;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V -HSPLandroid/widget/Editor;->shouldBlink()Z -HSPLandroid/widget/Editor;->shouldFilterOutTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/Editor;->shouldRenderCursor()Z -HSPLandroid/widget/Editor;->stopTextActionMode()V -HSPLandroid/widget/Editor;->unregisterOnBackInvokedCallback()V -HSPLandroid/widget/Editor;->updateCursorPosition()V -HSPLandroid/widget/Editor;->updateCursorPosition(IIF)V -HSPLandroid/widget/Editor;->updateFloatingToolbarVisibility(Landroid/view/MotionEvent;)V -HSPLandroid/widget/Editor;->updateSpellCheckSpans(IIZ)V -HSPLandroid/widget/EditorTouchState;->getLastDownX()F -HSPLandroid/widget/EditorTouchState;->getLastDownY()F -HSPLandroid/widget/EditorTouchState;->isMovedEnoughForDrag()Z -HSPLandroid/widget/EditorTouchState;->isMultiTap()Z -HSPLandroid/widget/EditorTouchState;->isMultiTapInSameArea()Z -HSPLandroid/widget/EditorTouchState;->update(Landroid/view/MotionEvent;Landroid/view/ViewConfiguration;)V -HSPLandroid/widget/Filter;-><init>()V -HSPLandroid/widget/ForwardingListener;-><init>(Landroid/view/View;)V -HSPLandroid/widget/ForwardingListener;->onViewAttachedToWindow(Landroid/view/View;)V -HSPLandroid/widget/ForwardingListener;->onViewDetachedFromWindow(Landroid/view/View;)V -HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(II)V -HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(III)V -HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; -HSPLandroid/widget/FrameLayout$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/FrameLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/widget/FrameLayout;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/FrameLayout;->generateDefaultLayoutParams()Landroid/widget/FrameLayout$LayoutParams; -HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/widget/FrameLayout$LayoutParams; -HSPLandroid/widget/FrameLayout;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/FrameLayout;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/FrameLayout;->getPaddingBottomWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingLeftWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingRightWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->getPaddingTopWithForeground()I+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->layoutChildren(IIIIZ)V+]Landroid/view/View;missing_types]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->onLayout(ZIIII)V+]Landroid/widget/FrameLayout;missing_types -HSPLandroid/widget/FrameLayout;->onMeasure(II)V+]Landroid/view/View;missing_types]Landroid/widget/FrameLayout;missing_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/FrameLayout;->setForegroundGravity(I)V -HSPLandroid/widget/FrameLayout;->setMeasureAllChildren(Z)V -HSPLandroid/widget/FrameLayout;->shouldDelayChildPressedState()Z -HSPLandroid/widget/GridLayout$7$1;->getOffset(Landroid/widget/GridLayout;Landroid/view/View;Landroid/widget/GridLayout$Alignment;IZ)I -HSPLandroid/widget/GridLayout$7$1;->include(II)V -HSPLandroid/widget/GridLayout$7$1;->reset()V -HSPLandroid/widget/GridLayout$7$1;->size(Z)I -HSPLandroid/widget/GridLayout$7;->getAlignmentValue(Landroid/view/View;II)I -HSPLandroid/widget/GridLayout$7;->getGravityOffset(Landroid/view/View;I)I -HSPLandroid/widget/GridLayout$Alignment;->getSizeInCell(Landroid/view/View;II)I -HSPLandroid/widget/GridLayout$Assoc;->pack()Landroid/widget/GridLayout$PackedMap; -HSPLandroid/widget/GridLayout$Axis$1;-><init>(Landroid/widget/GridLayout$Axis;[Landroid/widget/GridLayout$Arc;)V -HSPLandroid/widget/GridLayout$Axis$1;->walk(I)V -HSPLandroid/widget/GridLayout$Axis;-><init>(Landroid/widget/GridLayout;Z)V -HSPLandroid/widget/GridLayout$Axis;->calculateMaxIndex()I -HSPLandroid/widget/GridLayout$Axis;->computeGroupBounds()V -HSPLandroid/widget/GridLayout$Axis;->computeHasWeights()Z -HSPLandroid/widget/GridLayout$Axis;->computeLinks(Landroid/widget/GridLayout$PackedMap;Z)V -HSPLandroid/widget/GridLayout$Axis;->computeLocations([I)V -HSPLandroid/widget/GridLayout$Axis;->createArcs()[Landroid/widget/GridLayout$Arc; -HSPLandroid/widget/GridLayout$Axis;->createGroupBounds()Landroid/widget/GridLayout$PackedMap; -HSPLandroid/widget/GridLayout$Axis;->createLinks(Z)Landroid/widget/GridLayout$PackedMap; -HSPLandroid/widget/GridLayout$Axis;->getGroupBounds()Landroid/widget/GridLayout$PackedMap; -HSPLandroid/widget/GridLayout$Axis;->getLocations()[I -HSPLandroid/widget/GridLayout$Axis;->getMeasure(I)I -HSPLandroid/widget/GridLayout$Axis;->groupArcsByFirstVertex([Landroid/widget/GridLayout$Arc;)[[Landroid/widget/GridLayout$Arc; -HSPLandroid/widget/GridLayout$Axis;->include(Ljava/util/List;Landroid/widget/GridLayout$Interval;Landroid/widget/GridLayout$MutableInt;Z)V -HSPLandroid/widget/GridLayout$Axis;->layout(I)V -HSPLandroid/widget/GridLayout$Axis;->setCount(I)V -HSPLandroid/widget/GridLayout$Axis;->solve([Landroid/widget/GridLayout$Arc;[IZ)Z -HSPLandroid/widget/GridLayout$Bounds;->getOffset(Landroid/widget/GridLayout;Landroid/view/View;Landroid/widget/GridLayout$Alignment;IZ)I -HSPLandroid/widget/GridLayout$Bounds;->include(II)V -HSPLandroid/widget/GridLayout$Bounds;->reset()V -HSPLandroid/widget/GridLayout$Bounds;->size(Z)I -HSPLandroid/widget/GridLayout$Interval;->equals(Ljava/lang/Object;)Z -HSPLandroid/widget/GridLayout$LayoutParams;->hashCode()I -HSPLandroid/widget/GridLayout$PackedMap;->compact([Ljava/lang/Object;[I)[Ljava/lang/Object; -HSPLandroid/widget/GridLayout$PackedMap;->createIndex([Ljava/lang/Object;)[I -HSPLandroid/widget/GridLayout$PackedMap;->getValue(I)Ljava/lang/Object; -HSPLandroid/widget/GridLayout$Spec;->hashCode()I -HSPLandroid/widget/GridLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/GridLayout;->computeLayoutParamsHashCode()I -HSPLandroid/widget/GridLayout;->consistencyCheck()V -HSPLandroid/widget/GridLayout;->getDefaultMargin(Landroid/view/View;Landroid/widget/GridLayout$LayoutParams;ZZ)I -HSPLandroid/widget/GridLayout;->getLayoutParams(Landroid/view/View;)Landroid/widget/GridLayout$LayoutParams; -HSPLandroid/widget/GridLayout;->getMargin(Landroid/view/View;ZZ)I -HSPLandroid/widget/GridLayout;->getMargin1(Landroid/view/View;ZZ)I -HSPLandroid/widget/GridLayout;->getMeasurement(Landroid/view/View;Z)I -HSPLandroid/widget/GridLayout;->measureChildrenWithMargins(IIZ)V -HSPLandroid/widget/GridLayout;->onLayout(ZIIII)V -HSPLandroid/widget/GridLayout;->onMeasure(II)V -HSPLandroid/widget/GridLayout;->requestLayout()V -HSPLandroid/widget/GridLayout;->setAlignmentMode(I)V -HSPLandroid/widget/GridLayout;->setColumnCount(I)V -HSPLandroid/widget/GridLayout;->setColumnOrderPreserved(Z)V -HSPLandroid/widget/GridLayout;->setOrientation(I)V -HSPLandroid/widget/GridLayout;->setRowCount(I)V -HSPLandroid/widget/GridLayout;->setRowOrderPreserved(Z)V -HSPLandroid/widget/GridLayout;->setUseDefaultMargins(Z)V -HSPLandroid/widget/GridLayout;->validateLayoutParams()V -HSPLandroid/widget/HorizontalScrollView$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/HorizontalScrollView$SavedState; -HSPLandroid/widget/HorizontalScrollView$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/HorizontalScrollView$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/HorizontalScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/HorizontalScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/HorizontalScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/HorizontalScrollView;->addView(Landroid/view/View;)V -HSPLandroid/widget/HorizontalScrollView;->addView(Landroid/view/View;I)V -HSPLandroid/widget/HorizontalScrollView;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/HorizontalScrollView;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/HorizontalScrollView;->computeScroll()V -HSPLandroid/widget/HorizontalScrollView;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/HorizontalScrollView;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/HorizontalScrollView;->getScrollRange()I -HSPLandroid/widget/HorizontalScrollView;->inChild(II)Z -HSPLandroid/widget/HorizontalScrollView;->initScrollView()V -HSPLandroid/widget/HorizontalScrollView;->measureChildWithMargins(Landroid/view/View;IIII)V -HSPLandroid/widget/HorizontalScrollView;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/HorizontalScrollView;->onLayout(ZIIII)V -HSPLandroid/widget/HorizontalScrollView;->onMeasure(II)V -HSPLandroid/widget/HorizontalScrollView;->onRestoreInstanceState(Landroid/os/Parcelable;)V -HSPLandroid/widget/HorizontalScrollView;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/HorizontalScrollView;->onSizeChanged(IIII)V -HSPLandroid/widget/HorizontalScrollView;->requestLayout()V -HSPLandroid/widget/HorizontalScrollView;->scrollTo(II)V -HSPLandroid/widget/HorizontalScrollView;->setFillViewport(Z)V -HSPLandroid/widget/HorizontalScrollView;->shouldDelayChildPressedState()Z -HSPLandroid/widget/ImageButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ImageButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ImageButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/ImageButton;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/ImageButton;->onSetAlpha(I)Z -HSPLandroid/widget/ImageView$ScaleType;->values()[Landroid/widget/ImageView$ScaleType; -HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->applyAlpha()V -HSPLandroid/widget/ImageView;->applyColorFilter()V -HSPLandroid/widget/ImageView;->applyImageTint()V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/VectorDrawable; -HSPLandroid/widget/ImageView;->applyXfermode()V -HSPLandroid/widget/ImageView;->clearColorFilter()V -HSPLandroid/widget/ImageView;->configureBounds()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/RectF;Landroid/graphics/RectF;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->drawableHotspotChanged(FF)V -HSPLandroid/widget/ImageView;->drawableStateChanged()V -HSPLandroid/widget/ImageView;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/ImageView;->getBaseline()I -HSPLandroid/widget/ImageView;->getDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/ImageView;->getImageMatrix()Landroid/graphics/Matrix; -HSPLandroid/widget/ImageView;->getScaleType()Landroid/widget/ImageView$ScaleType; -HSPLandroid/widget/ImageView;->hasOverlappingRendering()Z -HSPLandroid/widget/ImageView;->initImageView()V+]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->isFilledByImage()Z -HSPLandroid/widget/ImageView;->isOpaque()Z+]Landroid/graphics/drawable/Drawable;megamorphic_types -HSPLandroid/widget/ImageView;->jumpDrawablesToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/widget/ImageView;->onAttachedToWindow()V -HSPLandroid/widget/ImageView;->onCreateDrawableState(I)[I -HSPLandroid/widget/ImageView;->onDetachedFromWindow()V -HSPLandroid/widget/ImageView;->onDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/widget/ImageView;->onMeasure(II)V+]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/ImageView;->onVisibilityAggregated(Z)V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/widget/ImageView;->resizeFromDrawable()V -HSPLandroid/widget/ImageView;->resolveAdjustedSize(III)I -HSPLandroid/widget/ImageView;->resolveUri()V+]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->scaleTypeToScaleToFit(Landroid/widget/ImageView$ScaleType;)Landroid/graphics/Matrix$ScaleToFit; -HSPLandroid/widget/ImageView;->setAdjustViewBounds(Z)V -HSPLandroid/widget/ImageView;->setAlpha(I)V -HSPLandroid/widget/ImageView;->setColorFilter(I)V -HSPLandroid/widget/ImageView;->setColorFilter(ILandroid/graphics/PorterDuff$Mode;)V -HSPLandroid/widget/ImageView;->setColorFilter(Landroid/graphics/ColorFilter;)V -HSPLandroid/widget/ImageView;->setCropToPadding(Z)V -HSPLandroid/widget/ImageView;->setFrame(IIII)Z -HSPLandroid/widget/ImageView;->setImageAlpha(I)V -HSPLandroid/widget/ImageView;->setImageBitmap(Landroid/graphics/Bitmap;)V -HSPLandroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->setImageMatrix(Landroid/graphics/Matrix;)V -HSPLandroid/widget/ImageView;->setImageResource(I)V+]Landroid/widget/ImageView;Landroid/widget/ImageView; -HSPLandroid/widget/ImageView;->setImageTintBlendMode(Landroid/graphics/BlendMode;)V -HSPLandroid/widget/ImageView;->setImageTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/ImageView;->setMaxHeight(I)V -HSPLandroid/widget/ImageView;->setMaxWidth(I)V -HSPLandroid/widget/ImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V -HSPLandroid/widget/ImageView;->setSelected(Z)V -HSPLandroid/widget/ImageView;->setVisibility(I)V -HSPLandroid/widget/ImageView;->updateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/ImageView;missing_types -HSPLandroid/widget/ImageView;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(II)V -HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(IIF)V -HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray; -HSPLandroid/widget/LinearLayout$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->allViewsAreGoneBefore(I)Z -HSPLandroid/widget/LinearLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/widget/LinearLayout;->forceUniformHeight(II)V -HSPLandroid/widget/LinearLayout;->forceUniformWidth(II)V -HSPLandroid/widget/LinearLayout;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/LinearLayout;->generateDefaultLayoutParams()Landroid/widget/LinearLayout$LayoutParams; -HSPLandroid/widget/LinearLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/LinearLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/widget/LinearLayout$LayoutParams; -HSPLandroid/widget/LinearLayout;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/LinearLayout;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/widget/LinearLayout$LayoutParams; -HSPLandroid/widget/LinearLayout;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/LinearLayout;->getBaseline()I -HSPLandroid/widget/LinearLayout;->getChildrenSkipCount(Landroid/view/View;I)I -HSPLandroid/widget/LinearLayout;->getDividerDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/LinearLayout;->getGravity()I -HSPLandroid/widget/LinearLayout;->getLocationOffset(Landroid/view/View;)I -HSPLandroid/widget/LinearLayout;->getNextLocationOffset(Landroid/view/View;)I -HSPLandroid/widget/LinearLayout;->getOrientation()I -HSPLandroid/widget/LinearLayout;->getVirtualChildAt(I)Landroid/view/View;+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->getVirtualChildCount()I+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->hasDividerBeforeChildAt(I)Z -HSPLandroid/widget/LinearLayout;->layoutHorizontal(IIII)V+]Landroid/view/View;missing_types]Landroid/widget/LinearLayout;Landroid/widget/LinearLayout; -HSPLandroid/widget/LinearLayout;->layoutVertical(IIII)V+]Landroid/view/View;megamorphic_types]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->measureChildBeforeLayout(Landroid/view/View;IIIII)V+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->measureHorizontal(II)V+]Landroid/view/View;missing_types]Landroid/widget/LinearLayout;Landroid/widget/LinearLayout; -HSPLandroid/widget/LinearLayout;->measureVertical(II)V+]Landroid/view/View;megamorphic_types]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/LinearLayout;->onLayout(ZIIII)V+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->onMeasure(II)V+]Landroid/widget/LinearLayout;missing_types -HSPLandroid/widget/LinearLayout;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/LinearLayout;->setBaselineAligned(Z)V -HSPLandroid/widget/LinearLayout;->setChildFrame(Landroid/view/View;IIII)V+]Landroid/view/View;missing_types -HSPLandroid/widget/LinearLayout;->setDividerDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/LinearLayout;->setGravity(I)V -HSPLandroid/widget/LinearLayout;->setOrientation(I)V -HSPLandroid/widget/LinearLayout;->shouldDelayChildPressedState()Z -HSPLandroid/widget/ListPopupWindow;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/ListPopupWindow;->isShowing()Z -HSPLandroid/widget/ListPopupWindow;->setAdapter(Landroid/widget/ListAdapter;)V -HSPLandroid/widget/ListPopupWindow;->setAnchorView(Landroid/view/View;)V -HSPLandroid/widget/ListPopupWindow;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ListPopupWindow;->setHeight(I)V -HSPLandroid/widget/ListPopupWindow;->setListSelector(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ListPopupWindow;->setModal(Z)V -HSPLandroid/widget/ListPopupWindow;->setOnItemClickListener(Landroid/widget/AdapterView$OnItemClickListener;)V -HSPLandroid/widget/ListPopupWindow;->setPromptPosition(I)V -HSPLandroid/widget/ListPopupWindow;->setPromptView(Landroid/view/View;)V -HSPLandroid/widget/ListPopupWindow;->setSoftInputMode(I)V -HSPLandroid/widget/ListPopupWindow;->setWidth(I)V -HSPLandroid/widget/ListView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ListView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ListView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/ListView;->adjustViewsUpOrDown()V -HSPLandroid/widget/ListView;->clearRecycledState(Ljava/util/ArrayList;)V -HSPLandroid/widget/ListView;->correctTooHigh(I)V -HSPLandroid/widget/ListView;->dispatchDraw(Landroid/graphics/Canvas;)V+]Landroid/view/View;Landroid/widget/LinearLayout;]Landroid/widget/ListAdapter;Landroid/preference/PreferenceGroupAdapter;]Landroid/widget/ListView;Landroid/widget/ListView;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/ListView;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z -HSPLandroid/widget/ListView;->fillDown(II)Landroid/view/View; -HSPLandroid/widget/ListView;->fillFromTop(I)Landroid/view/View; -HSPLandroid/widget/ListView;->fillSpecific(II)Landroid/view/View; -HSPLandroid/widget/ListView;->fillUp(II)Landroid/view/View; -HSPLandroid/widget/ListView;->findMotionRow(I)I -HSPLandroid/widget/ListView;->findViewInHeadersOrFooters(Ljava/util/ArrayList;I)Landroid/view/View; -HSPLandroid/widget/ListView;->findViewTraversal(I)Landroid/view/View; -HSPLandroid/widget/ListView;->getAdapter()Landroid/widget/Adapter; -HSPLandroid/widget/ListView;->getAdapter()Landroid/widget/ListAdapter; -HSPLandroid/widget/ListView;->getHeaderViewsCount()I -HSPLandroid/widget/ListView;->isOpaque()Z -HSPLandroid/widget/ListView;->layoutChildren()V -HSPLandroid/widget/ListView;->lookForSelectablePosition(IZ)I -HSPLandroid/widget/ListView;->makeAndAddView(IIZIZ)Landroid/view/View; -HSPLandroid/widget/ListView;->measureHeightOfChildren(IIIII)I+]Landroid/view/View;Landroid/widget/CheckedTextView;]Landroid/widget/AbsListView$RecycleBin;Landroid/widget/AbsListView$RecycleBin; -HSPLandroid/widget/ListView;->measureScrapChild(Landroid/view/View;III)V+]Landroid/view/View;Landroid/widget/CheckedTextView; -HSPLandroid/widget/ListView;->onDetachedFromWindow()V -HSPLandroid/widget/ListView;->onFinishInflate()V -HSPLandroid/widget/ListView;->onMeasure(II)V -HSPLandroid/widget/ListView;->onSizeChanged(IIII)V -HSPLandroid/widget/ListView;->recycleOnMeasure()Z -HSPLandroid/widget/ListView;->removeUnusedFixedViews(Ljava/util/List;)V -HSPLandroid/widget/ListView;->resetList()V -HSPLandroid/widget/ListView;->setAdapter(Landroid/widget/ListAdapter;)V -HSPLandroid/widget/ListView;->setCacheColorHint(I)V -HSPLandroid/widget/ListView;->setDivider(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ListView;->setSelection(I)V -HSPLandroid/widget/ListView;->setupChild(Landroid/view/View;IIZIZZ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/view/View;Landroid/widget/CheckedTextView;,Landroid/widget/LinearLayout;]Landroid/widget/Checkable;Landroid/widget/CheckedTextView;]Landroid/widget/ListAdapter;missing_types]Landroid/widget/ListView;missing_types -HSPLandroid/widget/OverScroller$SplineOverScroller;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/OverScroller$SplineOverScroller;->adjustDuration(III)V -HSPLandroid/widget/OverScroller$SplineOverScroller;->continueWhenFinished()Z -HSPLandroid/widget/OverScroller$SplineOverScroller;->finish()V -HSPLandroid/widget/OverScroller$SplineOverScroller;->fling(IIIII)V -HSPLandroid/widget/OverScroller$SplineOverScroller;->getSplineDeceleration(I)D -HSPLandroid/widget/OverScroller$SplineOverScroller;->getSplineFlingDistance(I)D -HSPLandroid/widget/OverScroller$SplineOverScroller;->onEdgeReached()V -HSPLandroid/widget/OverScroller$SplineOverScroller;->springback(III)Z -HSPLandroid/widget/OverScroller$SplineOverScroller;->startScroll(III)V -HSPLandroid/widget/OverScroller$SplineOverScroller;->startSpringback(III)V -HSPLandroid/widget/OverScroller$SplineOverScroller;->update()Z -HSPLandroid/widget/OverScroller;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/OverScroller;-><init>(Landroid/content/Context;Landroid/view/animation/Interpolator;)V -HSPLandroid/widget/OverScroller;-><init>(Landroid/content/Context;Landroid/view/animation/Interpolator;Z)V -HSPLandroid/widget/OverScroller;->abortAnimation()V -HSPLandroid/widget/OverScroller;->computeScrollOffset()Z -HSPLandroid/widget/OverScroller;->fling(IIIIIIII)V -HSPLandroid/widget/OverScroller;->fling(IIIIIIIIII)V -HSPLandroid/widget/OverScroller;->forceFinished(Z)V -HSPLandroid/widget/OverScroller;->getCurrVelocity()F -HSPLandroid/widget/OverScroller;->getCurrX()I -HSPLandroid/widget/OverScroller;->getCurrY()I -HSPLandroid/widget/OverScroller;->getFinalX()I -HSPLandroid/widget/OverScroller;->getFinalY()I -HSPLandroid/widget/OverScroller;->isFinished()Z -HSPLandroid/widget/OverScroller;->springBack(IIIIII)Z -HSPLandroid/widget/OverScroller;->startScroll(IIIII)V -HSPLandroid/widget/PopupWindow$PopupBackgroundView;->onCreateDrawableState(I)[I -HSPLandroid/widget/PopupWindow$PopupDecorView;->cancelTransitions()V -HSPLandroid/widget/PopupWindow$PopupDecorView;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/PopupWindow$PopupDecorView;->onAttachedToWindow()V -HSPLandroid/widget/PopupWindow$PopupDecorView;->onDetachedFromWindow()V -HSPLandroid/widget/PopupWindow;->-$$Nest$munregisterBackCallback(Landroid/widget/PopupWindow;Landroid/window/OnBackInvokedDispatcher;)V -HSPLandroid/widget/PopupWindow;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/PopupWindow;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/PopupWindow;-><init>(Landroid/view/View;II)V -HSPLandroid/widget/PopupWindow;-><init>(Landroid/view/View;IIZ)V -HSPLandroid/widget/PopupWindow;->attachToAnchor(Landroid/view/View;III)V -HSPLandroid/widget/PopupWindow;->computeFlags(I)I -HSPLandroid/widget/PopupWindow;->createBackgroundView(Landroid/view/View;)Landroid/widget/PopupWindow$PopupBackgroundView; -HSPLandroid/widget/PopupWindow;->createDecorView(Landroid/view/View;)Landroid/widget/PopupWindow$PopupDecorView; -HSPLandroid/widget/PopupWindow;->createPopupLayoutParams(Landroid/os/IBinder;)Landroid/view/WindowManager$LayoutParams; -HSPLandroid/widget/PopupWindow;->detachFromAnchor()V -HSPLandroid/widget/PopupWindow;->dismiss()V -HSPLandroid/widget/PopupWindow;->findDropDownPosition(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;IIIIIZ)Z -HSPLandroid/widget/PopupWindow;->getAnchor()Landroid/view/View; -HSPLandroid/widget/PopupWindow;->getAppRootView(Landroid/view/View;)Landroid/view/View; -HSPLandroid/widget/PopupWindow;->getBackground()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/PopupWindow;->getContentView()Landroid/view/View; -HSPLandroid/widget/PopupWindow;->getDecorViewLayoutParams()Landroid/view/WindowManager$LayoutParams; -HSPLandroid/widget/PopupWindow;->getHeight()I -HSPLandroid/widget/PopupWindow;->getTransition(I)Landroid/transition/Transition; -HSPLandroid/widget/PopupWindow;->getWidth()I -HSPLandroid/widget/PopupWindow;->hasContentView()Z -HSPLandroid/widget/PopupWindow;->invokePopup(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/widget/PopupWindow;->isShowing()Z -HSPLandroid/widget/PopupWindow;->isSplitTouchEnabled()Z -HSPLandroid/widget/PopupWindow;->preparePopup(Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/widget/PopupWindow;->setAttachedInDecor(Z)V -HSPLandroid/widget/PopupWindow;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/PopupWindow;->setContentView(Landroid/view/View;)V -HSPLandroid/widget/PopupWindow;->setEnterTransition(Landroid/transition/Transition;)V -HSPLandroid/widget/PopupWindow;->setExitTransition(Landroid/transition/Transition;)V -HSPLandroid/widget/PopupWindow;->setFocusable(Z)V -HSPLandroid/widget/PopupWindow;->setHeight(I)V -HSPLandroid/widget/PopupWindow;->setInputMethodMode(I)V -HSPLandroid/widget/PopupWindow;->setOnDismissListener(Landroid/widget/PopupWindow$OnDismissListener;)V -HSPLandroid/widget/PopupWindow;->setOutsideTouchable(Z)V -HSPLandroid/widget/PopupWindow;->setSoftInputMode(I)V -HSPLandroid/widget/PopupWindow;->setTouchInterceptor(Landroid/view/View$OnTouchListener;)V -HSPLandroid/widget/PopupWindow;->setWidth(I)V -HSPLandroid/widget/PopupWindow;->setWindowLayoutType(I)V -HSPLandroid/widget/PopupWindow;->showAsDropDown(Landroid/view/View;III)V -HSPLandroid/widget/PopupWindow;->showAtLocation(Landroid/os/IBinder;III)V -HSPLandroid/widget/PopupWindow;->showAtLocation(Landroid/view/View;III)V -HSPLandroid/widget/PopupWindow;->tryFitHorizontal(Landroid/view/WindowManager$LayoutParams;IIIIIIIZ)Z -HSPLandroid/widget/PopupWindow;->tryFitVertical(Landroid/view/WindowManager$LayoutParams;IIIIIIIZ)Z -HSPLandroid/widget/PopupWindow;->unregisterBackCallback(Landroid/window/OnBackInvokedDispatcher;)V -HSPLandroid/widget/PopupWindow;->update(IIII)V -HSPLandroid/widget/PopupWindow;->update(IIIIZ)V -HSPLandroid/widget/PopupWindow;->update(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;)V -HSPLandroid/widget/PopupWindow;->updateAboveAnchor(Z)V -HSPLandroid/widget/ProgressBar$2;-><init>(Landroid/widget/ProgressBar;Ljava/lang/String;)V -HSPLandroid/widget/ProgressBar$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/ProgressBar$SavedState; -HSPLandroid/widget/ProgressBar$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/ProgressBar$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/ProgressBar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ProgressBar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ProgressBar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/ProgressBar;->applyIndeterminateTint()V -HSPLandroid/widget/ProgressBar;->applyPrimaryProgressTint()V -HSPLandroid/widget/ProgressBar;->applyProgressBackgroundTint()V -HSPLandroid/widget/ProgressBar;->applyProgressTints()V -HSPLandroid/widget/ProgressBar;->doRefreshProgress(IIZZZ)V -HSPLandroid/widget/ProgressBar;->drawTrack(Landroid/graphics/Canvas;)V -HSPLandroid/widget/ProgressBar;->drawableHotspotChanged(FF)V -HSPLandroid/widget/ProgressBar;->drawableStateChanged()V -HSPLandroid/widget/ProgressBar;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/ProgressBar;->getCurrentDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/ProgressBar;->getIndeterminateDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/ProgressBar;->getMax()I -HSPLandroid/widget/ProgressBar;->getMin()I -HSPLandroid/widget/ProgressBar;->getProgress()I -HSPLandroid/widget/ProgressBar;->getProgressDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/ProgressBar;->initProgressBar()V -HSPLandroid/widget/ProgressBar;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ProgressBar;->isIndeterminate()Z -HSPLandroid/widget/ProgressBar;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/ProgressBar;->needsTileify(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/ProgressBar;->onAttachedToWindow()V -HSPLandroid/widget/ProgressBar;->onDetachedFromWindow()V -HSPLandroid/widget/ProgressBar;->onDraw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/ProgressBar;->onMeasure(II)V -HSPLandroid/widget/ProgressBar;->onProgressRefresh(FZI)V -HSPLandroid/widget/ProgressBar;->onResolveDrawables(I)V -HSPLandroid/widget/ProgressBar;->onRestoreInstanceState(Landroid/os/Parcelable;)V -HSPLandroid/widget/ProgressBar;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/ProgressBar;->onSizeChanged(IIII)V -HSPLandroid/widget/ProgressBar;->onVisibilityAggregated(Z)V -HSPLandroid/widget/ProgressBar;->onVisualProgressChanged(IF)V -HSPLandroid/widget/ProgressBar;->postInvalidate()V -HSPLandroid/widget/ProgressBar;->refreshProgress(IIZZ)V -HSPLandroid/widget/ProgressBar;->setIndeterminate(Z)V -HSPLandroid/widget/ProgressBar;->setIndeterminateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ProgressBar;->setInterpolator(Landroid/content/Context;I)V -HSPLandroid/widget/ProgressBar;->setInterpolator(Landroid/view/animation/Interpolator;)V -HSPLandroid/widget/ProgressBar;->setMax(I)V -HSPLandroid/widget/ProgressBar;->setMin(I)V -HSPLandroid/widget/ProgressBar;->setProgress(I)V -HSPLandroid/widget/ProgressBar;->setProgressDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ProgressBar;->setProgressInternal(IZZ)Z -HSPLandroid/widget/ProgressBar;->setSecondaryProgress(I)V -HSPLandroid/widget/ProgressBar;->setVisualProgress(IF)V -HSPLandroid/widget/ProgressBar;->startAnimation()V -HSPLandroid/widget/ProgressBar;->stopAnimation()V -HSPLandroid/widget/ProgressBar;->swapCurrentDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ProgressBar;->updateDrawableBounds(II)V -HSPLandroid/widget/ProgressBar;->updateDrawableState()V -HSPLandroid/widget/ProgressBar;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/RelativeLayout$DependencyGraph$Node;-><init>()V -HSPLandroid/widget/RelativeLayout$DependencyGraph$Node;->acquire(Landroid/view/View;)Landroid/widget/RelativeLayout$DependencyGraph$Node; -HSPLandroid/widget/RelativeLayout$DependencyGraph$Node;->release()V -HSPLandroid/widget/RelativeLayout$DependencyGraph;-><init>()V -HSPLandroid/widget/RelativeLayout$DependencyGraph;->add(Landroid/view/View;)V -HSPLandroid/widget/RelativeLayout$DependencyGraph;->clear()V -HSPLandroid/widget/RelativeLayout$DependencyGraph;->findRoots([I)Ljava/util/ArrayDeque;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLandroid/widget/RelativeLayout$DependencyGraph;->getSortedViews([Landroid/view/View;[I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmBottom(Landroid/widget/RelativeLayout$LayoutParams;)I -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmLeft(Landroid/widget/RelativeLayout$LayoutParams;)I -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmRight(Landroid/widget/RelativeLayout$LayoutParams;)I -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fgetmTop(Landroid/widget/RelativeLayout$LayoutParams;)I -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fputmBottom(Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->-$$Nest$fputmTop(Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;-><init>(II)V -HSPLandroid/widget/RelativeLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->addRule(I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->addRule(II)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->getRules()[I -HSPLandroid/widget/RelativeLayout$LayoutParams;->getRules(I)[I -HSPLandroid/widget/RelativeLayout$LayoutParams;->hasRelativeRules()Z -HSPLandroid/widget/RelativeLayout$LayoutParams;->removeRule(I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->resolveLayoutDirection(I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->resolveRules(I)V -HSPLandroid/widget/RelativeLayout$LayoutParams;->shouldResolveLayoutDirection(I)Z -HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/RelativeLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/RelativeLayout;->applyHorizontalSizeRules(Landroid/widget/RelativeLayout$LayoutParams;I[I)V -HSPLandroid/widget/RelativeLayout;->applyVerticalSizeRules(Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams; -HSPLandroid/widget/RelativeLayout;->centerHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout;->centerVertical(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/widget/RelativeLayout;->compareLayoutPosition(Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams;)I -HSPLandroid/widget/RelativeLayout;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/RelativeLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/RelativeLayout;->generateLayoutParams(Landroid/util/AttributeSet;)Landroid/widget/RelativeLayout$LayoutParams; -HSPLandroid/widget/RelativeLayout;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; -HSPLandroid/widget/RelativeLayout;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/RelativeLayout;->getBaseline()I -HSPLandroid/widget/RelativeLayout;->getChildMeasureSpec(IIIIIIII)I -HSPLandroid/widget/RelativeLayout;->getRelatedView([II)Landroid/view/View;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/View;Landroid/widget/TextView; -HSPLandroid/widget/RelativeLayout;->getRelatedViewBaselineOffset([I)I -HSPLandroid/widget/RelativeLayout;->getRelatedViewParams([II)Landroid/widget/RelativeLayout$LayoutParams; -HSPLandroid/widget/RelativeLayout;->initFromAttributes(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/RelativeLayout;->measureChild(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/TextView; -HSPLandroid/widget/RelativeLayout;->measureChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;II)V+]Landroid/view/View;Landroid/widget/TextView; -HSPLandroid/widget/RelativeLayout;->onLayout(ZIIII)V -HSPLandroid/widget/RelativeLayout;->onMeasure(II)V+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; -HSPLandroid/widget/RelativeLayout;->positionAtEdge(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;I)V -HSPLandroid/widget/RelativeLayout;->positionChildHorizontal(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; -HSPLandroid/widget/RelativeLayout;->positionChildVertical(Landroid/view/View;Landroid/widget/RelativeLayout$LayoutParams;IZ)Z+]Landroid/view/View;Landroid/widget/TextView;]Landroid/widget/RelativeLayout$LayoutParams;Landroid/widget/RelativeLayout$LayoutParams; -HSPLandroid/widget/RelativeLayout;->queryCompatibilityModes(Landroid/content/Context;)V -HSPLandroid/widget/RelativeLayout;->requestLayout()V -HSPLandroid/widget/RelativeLayout;->shouldDelayChildPressedState()Z -HSPLandroid/widget/RelativeLayout;->sortChildren()V+]Landroid/widget/RelativeLayout$DependencyGraph;Landroid/widget/RelativeLayout$DependencyGraph;]Landroid/widget/RelativeLayout;Landroid/widget/RelativeLayout; -HSPLandroid/widget/RemoteViews$2;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/RemoteViews; -HSPLandroid/widget/RemoteViews$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/RemoteViews$Action;-><init>()V -HSPLandroid/widget/RemoteViews$Action;-><init>(Landroid/widget/RemoteViews$Action-IA;)V -HSPLandroid/widget/RemoteViews$Action;->setHierarchyRootData(Landroid/widget/RemoteViews$HierarchyRootData;)V -HSPLandroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0;-><init>(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLandroid/widget/RemoteViews$ApplicationInfoCache;-><init>()V -HSPLandroid/widget/RemoteViews$ApplicationInfoCache;->getOrPut(Landroid/content/pm/ApplicationInfo;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/widget/RemoteViews$ApplicationInfoCache;->lambda$getOrPut$0(Landroid/content/pm/ApplicationInfo;Landroid/util/Pair;)Landroid/content/pm/ApplicationInfo; -HSPLandroid/widget/RemoteViews$ApplicationInfoCache;->put(Landroid/content/pm/ApplicationInfo;)V -HSPLandroid/widget/RemoteViews$BitmapCache;-><init>()V -HSPLandroid/widget/RemoteViews$BitmapCache;-><init>(Landroid/os/Parcel;)V -HSPLandroid/widget/RemoteViews$BitmapCache;->getBitmapForId(I)Landroid/graphics/Bitmap; -HSPLandroid/widget/RemoteViews$BitmapCache;->getBitmapId(Landroid/graphics/Bitmap;)I -HSPLandroid/widget/RemoteViews$BitmapCache;->writeBitmapsToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews$BitmapReflectionAction;-><init>(Landroid/widget/RemoteViews;Landroid/os/Parcel;)V -HSPLandroid/widget/RemoteViews$BitmapReflectionAction;->getActionTag()I -HSPLandroid/widget/RemoteViews$BitmapReflectionAction;->setHierarchyRootData(Landroid/widget/RemoteViews$HierarchyRootData;)V -HSPLandroid/widget/RemoteViews$BitmapReflectionAction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews$MethodKey;->equals(Ljava/lang/Object;)Z -HSPLandroid/widget/RemoteViews$MethodKey;->hashCode()I -HSPLandroid/widget/RemoteViews$MethodKey;->set(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)V -HSPLandroid/widget/RemoteViews$ReflectionAction;->getActionTag()I -HSPLandroid/widget/RemoteViews$ReflectionAction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews$RemoteResponse;-><init>()V -HSPLandroid/widget/RemoteViews$RemoteResponse;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/widget/RemoteViews$RemoteResponse;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews$RemoteViewsContextWrapper;->getResources()Landroid/content/res/Resources; -HSPLandroid/widget/RemoteViews$RemoteViewsContextWrapper;->getTheme()Landroid/content/res/Resources$Theme; -HSPLandroid/widget/RemoteViews$SetOnClickResponse;->getActionTag()I -HSPLandroid/widget/RemoteViews$SetOnClickResponse;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews$TextViewSizeAction;->getActionTag()I -HSPLandroid/widget/RemoteViews$TextViewSizeAction;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews;->-$$Nest$smgetPackageUserKey(Landroid/content/pm/ApplicationInfo;)Landroid/util/Pair; -HSPLandroid/widget/RemoteViews;-><init>(Landroid/content/pm/ApplicationInfo;I)V -HSPLandroid/widget/RemoteViews;-><init>(Landroid/os/Parcel;Landroid/widget/RemoteViews$HierarchyRootData;Landroid/content/pm/ApplicationInfo;I)V -HSPLandroid/widget/RemoteViews;-><init>(Ljava/lang/String;I)V -HSPLandroid/widget/RemoteViews;->addAction(Landroid/widget/RemoteViews$Action;)V -HSPLandroid/widget/RemoteViews;->apply(Landroid/content/Context;Landroid/view/ViewGroup;)Landroid/view/View; -HSPLandroid/widget/RemoteViews;->configureAsChild(Landroid/widget/RemoteViews$HierarchyRootData;)V -HSPLandroid/widget/RemoteViews;->configureDescendantsAsChildren()V -HSPLandroid/widget/RemoteViews;->getActionFromParcel(Landroid/os/Parcel;I)Landroid/widget/RemoteViews$Action; -HSPLandroid/widget/RemoteViews;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo; -HSPLandroid/widget/RemoteViews;->getHierarchyRootData()Landroid/widget/RemoteViews$HierarchyRootData; -HSPLandroid/widget/RemoteViews;->getLayoutId()I -HSPLandroid/widget/RemoteViews;->getMethod(Landroid/view/View;Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/invoke/MethodHandle; -HSPLandroid/widget/RemoteViews;->getPackage()Ljava/lang/String; -HSPLandroid/widget/RemoteViews;->getPackageUserKey(Landroid/content/pm/ApplicationInfo;)Landroid/util/Pair; -HSPLandroid/widget/RemoteViews;->getRemoteViewsToApply(Landroid/content/Context;)Landroid/widget/RemoteViews; -HSPLandroid/widget/RemoteViews;->hasFlags(I)Z -HSPLandroid/widget/RemoteViews;->hasLandscapeAndPortraitLayouts()Z -HSPLandroid/widget/RemoteViews;->hasSizedRemoteViews()Z -HSPLandroid/widget/RemoteViews;->readActionsFromParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews;->setBitmap(ILjava/lang/String;Landroid/graphics/Bitmap;)V -HSPLandroid/widget/RemoteViews;->setBoolean(ILjava/lang/String;Z)V -HSPLandroid/widget/RemoteViews;->setCharSequence(ILjava/lang/String;Ljava/lang/CharSequence;)V -HSPLandroid/widget/RemoteViews;->setContentDescription(ILjava/lang/CharSequence;)V -HSPLandroid/widget/RemoteViews;->setImageViewBitmap(ILandroid/graphics/Bitmap;)V -HSPLandroid/widget/RemoteViews;->setInt(ILjava/lang/String;I)V -HSPLandroid/widget/RemoteViews;->setOnClickPendingIntent(ILandroid/app/PendingIntent;)V -HSPLandroid/widget/RemoteViews;->setOnClickResponse(ILandroid/widget/RemoteViews$RemoteResponse;)V -HSPLandroid/widget/RemoteViews;->setTextColor(II)V -HSPLandroid/widget/RemoteViews;->setTextViewText(ILjava/lang/CharSequence;)V -HSPLandroid/widget/RemoteViews;->setViewPadding(IIIII)V -HSPLandroid/widget/RemoteViews;->setViewVisibility(II)V -HSPLandroid/widget/RemoteViews;->shouldUseStaticFilter()Z -HSPLandroid/widget/RemoteViews;->writeActionsToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RemoteViews;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/RtlSpacingHelper;->getEnd()I -HSPLandroid/widget/RtlSpacingHelper;->getStart()I -HSPLandroid/widget/RtlSpacingHelper;->setAbsolute(II)V -HSPLandroid/widget/RtlSpacingHelper;->setDirection(Z)V -HSPLandroid/widget/RtlSpacingHelper;->setRelative(II)V -HSPLandroid/widget/ScrollBarDrawable;-><init>()V -HSPLandroid/widget/ScrollBarDrawable;->draw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/widget/ScrollBarDrawable;Landroid/widget/ScrollBarDrawable; -HSPLandroid/widget/ScrollBarDrawable;->drawThumb(Landroid/graphics/Canvas;Landroid/graphics/Rect;IIZ)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable; -HSPLandroid/widget/ScrollBarDrawable;->getSize(Z)I -HSPLandroid/widget/ScrollBarDrawable;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->isStateful()Z -HSPLandroid/widget/ScrollBarDrawable;->mutate()Landroid/widget/ScrollBarDrawable; -HSPLandroid/widget/ScrollBarDrawable;->onBoundsChange(Landroid/graphics/Rect;)V -HSPLandroid/widget/ScrollBarDrawable;->onStateChange([I)Z -HSPLandroid/widget/ScrollBarDrawable;->propagateCurrentState(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->setAlpha(I)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/GradientDrawable; -HSPLandroid/widget/ScrollBarDrawable;->setAlwaysDrawVerticalTrack(Z)V -HSPLandroid/widget/ScrollBarDrawable;->setHorizontalThumbDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->setHorizontalTrackDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->setParameters(IIIZ)V -HSPLandroid/widget/ScrollBarDrawable;->setVerticalThumbDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollBarDrawable;->setVerticalTrackDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/ScrollView$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/ScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/ScrollView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/ScrollView;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/ScrollView;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/ScrollView;->computeScroll()V -HSPLandroid/widget/ScrollView;->computeVerticalScrollOffset()I -HSPLandroid/widget/ScrollView;->computeVerticalScrollRange()I -HSPLandroid/widget/ScrollView;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/ScrollView;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/ScrollView;->initScrollView()V -HSPLandroid/widget/ScrollView;->measureChildWithMargins(Landroid/view/View;IIII)V -HSPLandroid/widget/ScrollView;->onDetachedFromWindow()V -HSPLandroid/widget/ScrollView;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/ScrollView;->onLayout(ZIIII)V -HSPLandroid/widget/ScrollView;->onMeasure(II)V -HSPLandroid/widget/ScrollView;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/ScrollView;->onSizeChanged(IIII)V -HSPLandroid/widget/ScrollView;->requestLayout()V -HSPLandroid/widget/ScrollView;->scrollTo(II)V -HSPLandroid/widget/ScrollView;->setFillViewport(Z)V -HSPLandroid/widget/ScrollView;->shouldDelayChildPressedState()Z -HSPLandroid/widget/ScrollView;->shouldDisplayEdgeEffects()Z -HSPLandroid/widget/Scroller$ViscousFluidInterpolator;-><init>()V -HSPLandroid/widget/Scroller$ViscousFluidInterpolator;->getInterpolation(F)F -HSPLandroid/widget/Scroller$ViscousFluidInterpolator;->viscousFluid(F)F -HSPLandroid/widget/Scroller;-><init>(Landroid/content/Context;Landroid/view/animation/Interpolator;)V -HSPLandroid/widget/Scroller;-><init>(Landroid/content/Context;Landroid/view/animation/Interpolator;Z)V -HSPLandroid/widget/Scroller;->abortAnimation()V -HSPLandroid/widget/Scroller;->computeDeceleration(F)F -HSPLandroid/widget/Scroller;->computeScrollOffset()Z -HSPLandroid/widget/Scroller;->getCurrX()I -HSPLandroid/widget/Scroller;->getCurrY()I -HSPLandroid/widget/Scroller;->isFinished()Z -HSPLandroid/widget/Scroller;->startScroll(IIIII)V -HSPLandroid/widget/SeekBar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/SeekBar;->onProgressRefresh(FZI)V -HSPLandroid/widget/SeekBar;->setOnSeekBarChangeListener(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V -HSPLandroid/widget/SelectionActionModeHelper$SelectionTracker;->isSelectionStarted()Z -HSPLandroid/widget/SelectionActionModeHelper$SelectionTracker;->onTextChanged(IILandroid/view/textclassifier/TextClassification;)V -HSPLandroid/widget/SelectionActionModeHelper$SelectionTracker;->resetSelection(ILandroid/widget/Editor;)Z -HSPLandroid/widget/SelectionActionModeHelper$TextClassificationHelper;->init(Ljava/util/function/Supplier;Ljava/lang/CharSequence;IILandroid/os/LocaleList;)V -HSPLandroid/widget/SelectionActionModeHelper;-><init>(Landroid/widget/Editor;)V -HSPLandroid/widget/SelectionActionModeHelper;->getText(Landroid/widget/TextView;)Ljava/lang/CharSequence; -HSPLandroid/widget/SelectionActionModeHelper;->getTextClassificationSettings()Landroid/view/textclassifier/TextClassificationConstants; -HSPLandroid/widget/SelectionActionModeHelper;->onTextChanged(II)V -HSPLandroid/widget/SelectionActionModeHelper;->sortSelectionIndices(II)[I -HSPLandroid/widget/SmartSelectSprite;-><init>(Landroid/content/Context;ILjava/lang/Runnable;)V -HSPLandroid/widget/Space;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/Space;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/Space;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/Space;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/Space;->draw(Landroid/graphics/Canvas;)V -HSPLandroid/widget/Space;->getDefaultSize2(II)I -HSPLandroid/widget/Space;->onMeasure(II)V -HSPLandroid/widget/SpellChecker$1;->run()V -HSPLandroid/widget/SpellChecker$SpellParser;->isFinished()Z -HSPLandroid/widget/SpellChecker$SpellParser;->parse()V -HSPLandroid/widget/SpellChecker$SpellParser;->stop()V -HSPLandroid/widget/SpellChecker;-><init>(Landroid/widget/TextView;)V -HSPLandroid/widget/SpellChecker;->closeSession()V -HSPLandroid/widget/SpellChecker;->isSessionActive()Z -HSPLandroid/widget/SpellChecker;->nextSpellCheckSpanIndex()I -HSPLandroid/widget/SpellChecker;->onGetSentenceSuggestions([Landroid/view/textservice/SentenceSuggestionsInfo;)V -HSPLandroid/widget/SpellChecker;->onGetSuggestionsInternal(Landroid/view/textservice/SuggestionsInfo;II)Landroid/text/style/SpellCheckSpan; -HSPLandroid/widget/SpellChecker;->onSpellCheckSpanRemoved(Landroid/text/style/SpellCheckSpan;)V -HSPLandroid/widget/SpellChecker;->resetSession()V -HSPLandroid/widget/SpellChecker;->setLocale(Ljava/util/Locale;)V -HSPLandroid/widget/SpellChecker;->spellCheck()V -HSPLandroid/widget/SpellChecker;->spellCheck(II)V -HSPLandroid/widget/SpellChecker;->spellCheck(IIZ)V -HSPLandroid/widget/Spinner;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/Spinner;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IIILandroid/content/res/Resources$Theme;)V -HSPLandroid/widget/Spinner;->onDetachedFromWindow()V -HSPLandroid/widget/Switch;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/Switch;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/Switch;->drawableStateChanged()V -HSPLandroid/widget/Switch;->getButtonStateDescription()Ljava/lang/CharSequence; -HSPLandroid/widget/Switch;->jumpDrawablesToCurrentState()V -HSPLandroid/widget/Switch;->onCreateDrawableState(I)[I -HSPLandroid/widget/Switch;->setChecked(Z)V -HSPLandroid/widget/Switch;->setSwitchTextAppearance(Landroid/content/Context;I)V -HSPLandroid/widget/Switch;->setSwitchTypeface(Landroid/graphics/Typeface;)V -HSPLandroid/widget/Switch;->setSwitchTypeface(Landroid/graphics/Typeface;I)V -HSPLandroid/widget/Switch;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/TextView$3;->run()V -HSPLandroid/widget/TextView$ChangeWatcher;-><init>(Landroid/widget/TextView;)V -HSPLandroid/widget/TextView$ChangeWatcher;->afterTextChanged(Landroid/text/Editable;)V -HSPLandroid/widget/TextView$ChangeWatcher;->beforeTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView$ChangeWatcher;->onSpanAdded(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/widget/TextView$ChangeWatcher;->onSpanChanged(Landroid/text/Spannable;Ljava/lang/Object;IIII)V -HSPLandroid/widget/TextView$ChangeWatcher;->onSpanRemoved(Landroid/text/Spannable;Ljava/lang/Object;II)V -HSPLandroid/widget/TextView$ChangeWatcher;->onTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView$Drawables;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/TextView$Drawables;->applyErrorDrawableIfNeeded(I)V -HSPLandroid/widget/TextView$Drawables;->hasMetadata()Z -HSPLandroid/widget/TextView$Drawables;->resolveWithLayoutDirection(I)Z -HSPLandroid/widget/TextView$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/TextView$SavedState; -HSPLandroid/widget/TextView$SavedState$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/TextView$SavedState;-><init>(Landroid/os/Parcel;)V -HSPLandroid/widget/TextView$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/widget/TextView$TextAppearanceAttributes;-><init>()V -HSPLandroid/widget/TextView$TextAppearanceAttributes;-><init>(Landroid/widget/TextView$TextAppearanceAttributes-IA;)V -HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;)V -HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V -HSPLandroid/widget/TextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources$Theme;Landroid/content/res/Resources$Theme;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/graphics/Paint;Landroid/graphics/Paint;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Landroid/view/ViewConfiguration;Landroid/view/ViewConfiguration;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->addSearchHighlightPaths()V -HSPLandroid/widget/TextView;->addTextChangedListener(Landroid/text/TextWatcher;)V -HSPLandroid/widget/TextView;->applyCompoundDrawableTint()V -HSPLandroid/widget/TextView;->applySingleLine(ZZZZ)V -HSPLandroid/widget/TextView;->applyTextAppearance(Landroid/widget/TextView$TextAppearanceAttributes;)V+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->assumeLayout()V -HSPLandroid/widget/TextView;->autoSizeText()V -HSPLandroid/widget/TextView;->beginBatchEdit()V -HSPLandroid/widget/TextView;->bringPointIntoView(I)Z -HSPLandroid/widget/TextView;->bringPointIntoView(IZ)Z -HSPLandroid/widget/TextView;->bringTextIntoView()Z+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->canMarquee()Z -HSPLandroid/widget/TextView;->cancelLongPress()V -HSPLandroid/widget/TextView;->checkForRelayout()V+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->checkForResize()V -HSPLandroid/widget/TextView;->cleanupAutoSizePresetSizes([I)[I -HSPLandroid/widget/TextView;->compressText(F)Z+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;Landroid/widget/CheckedTextView;,Landroid/widget/TextView; -HSPLandroid/widget/TextView;->computeHorizontalScrollRange()I -HSPLandroid/widget/TextView;->computeScroll()V -HSPLandroid/widget/TextView;->computeVerticalScrollExtent()I -HSPLandroid/widget/TextView;->computeVerticalScrollRange()I -HSPLandroid/widget/TextView;->convertToLocalHorizontalCoordinate(F)F -HSPLandroid/widget/TextView;->createEditorIfNeeded()V -HSPLandroid/widget/TextView;->didTouchFocusSelect()Z -HSPLandroid/widget/TextView;->doKeyDown(ILandroid/view/KeyEvent;Landroid/view/KeyEvent;)I -HSPLandroid/widget/TextView;->drawableHotspotChanged(FF)V -HSPLandroid/widget/TextView;->drawableStateChanged()V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->endBatchEdit()V -HSPLandroid/widget/TextView;->findLargestTextSizeWhichFits(Landroid/graphics/RectF;)I -HSPLandroid/widget/TextView;->fixFocusableAndClickableSettings()V -HSPLandroid/widget/TextView;->getAccessibilityClassName()Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->getAutoSizeStepGranularity()I -HSPLandroid/widget/TextView;->getAutofillHints()[Ljava/lang/String; -HSPLandroid/widget/TextView;->getAutofillType()I -HSPLandroid/widget/TextView;->getAutofillValue()Landroid/view/autofill/AutofillValue; -HSPLandroid/widget/TextView;->getBaseline()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getBaselineOffset()I+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getBottomVerticalOffset(Z)I -HSPLandroid/widget/TextView;->getBoxHeight(Landroid/text/Layout;)I+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getBreakStrategy()I -HSPLandroid/widget/TextView;->getCompoundDrawablePadding()I -HSPLandroid/widget/TextView;->getCompoundDrawables()[Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getCompoundDrawablesRelative()[Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getCompoundPaddingBottom()I -HSPLandroid/widget/TextView;->getCompoundPaddingLeft()I -HSPLandroid/widget/TextView;->getCompoundPaddingRight()I -HSPLandroid/widget/TextView;->getCompoundPaddingTop()I -HSPLandroid/widget/TextView;->getCurrentTextColor()I -HSPLandroid/widget/TextView;->getDefaultEditable()Z -HSPLandroid/widget/TextView;->getDefaultMovementMethod()Landroid/text/method/MovementMethod; -HSPLandroid/widget/TextView;->getDesiredHeight()I -HSPLandroid/widget/TextView;->getDesiredHeight(Landroid/text/Layout;Z)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getEditableText()Landroid/text/Editable; -HSPLandroid/widget/TextView;->getEllipsize()Landroid/text/TextUtils$TruncateAt; -HSPLandroid/widget/TextView;->getError()Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->getExtendedPaddingBottom()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getExtendedPaddingTop()I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getFilters()[Landroid/text/InputFilter; -HSPLandroid/widget/TextView;->getFocusedRect(Landroid/graphics/Rect;)V -HSPLandroid/widget/TextView;->getFreezesText()Z -HSPLandroid/widget/TextView;->getGravity()I -HSPLandroid/widget/TextView;->getHint()Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->getHorizontalOffsetForDrawables()I -HSPLandroid/widget/TextView;->getHorizontallyScrolling()Z -HSPLandroid/widget/TextView;->getHyphenationFrequency()I -HSPLandroid/widget/TextView;->getIncludeFontPadding()Z -HSPLandroid/widget/TextView;->getInputMethodManager()Landroid/view/inputmethod/InputMethodManager; -HSPLandroid/widget/TextView;->getInputType()I -HSPLandroid/widget/TextView;->getInterestingRect(Landroid/graphics/Rect;I)V -HSPLandroid/widget/TextView;->getJustificationMode()I -HSPLandroid/widget/TextView;->getKeyListener()Landroid/text/method/KeyListener; -HSPLandroid/widget/TextView;->getLayout()Landroid/text/Layout; -HSPLandroid/widget/TextView;->getLayoutAlignment()Landroid/text/Layout$Alignment;+]Landroid/widget/TextView;Landroid/widget/TextView; -HSPLandroid/widget/TextView;->getLineAtCoordinate(F)I -HSPLandroid/widget/TextView;->getLineAtCoordinateUnclamped(F)I -HSPLandroid/widget/TextView;->getLineCount()I -HSPLandroid/widget/TextView;->getLineHeight()I -HSPLandroid/widget/TextView;->getLineSpacingExtra()F -HSPLandroid/widget/TextView;->getLineSpacingMultiplier()F -HSPLandroid/widget/TextView;->getMaxEms()I -HSPLandroid/widget/TextView;->getMaxLines()I -HSPLandroid/widget/TextView;->getMinEms()I -HSPLandroid/widget/TextView;->getMinWidth()I -HSPLandroid/widget/TextView;->getOffsetAtCoordinate(IF)I -HSPLandroid/widget/TextView;->getOffsetForPosition(FF)I -HSPLandroid/widget/TextView;->getPaint()Landroid/text/TextPaint; -HSPLandroid/widget/TextView;->getSelectionEnd()I -HSPLandroid/widget/TextView;->getSelectionEndTransformed()I -HSPLandroid/widget/TextView;->getSelectionStart()I -HSPLandroid/widget/TextView;->getSelectionStartTransformed()I -HSPLandroid/widget/TextView;->getServiceManagerForUser(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; -HSPLandroid/widget/TextView;->getSpellCheckerLocale()Ljava/util/Locale; -HSPLandroid/widget/TextView;->getText()Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->getTextColors()Landroid/content/res/ColorStateList; -HSPLandroid/widget/TextView;->getTextCursorDrawable()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getTextDirectionHeuristic()Landroid/text/TextDirectionHeuristic;+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getTextLocale()Ljava/util/Locale; -HSPLandroid/widget/TextView;->getTextLocales()Landroid/os/LocaleList; -HSPLandroid/widget/TextView;->getTextSelectHandle()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getTextSelectHandleLeft()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getTextSelectHandleRight()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/TextView;->getTextSize()F -HSPLandroid/widget/TextView;->getTotalPaddingBottom()I -HSPLandroid/widget/TextView;->getTotalPaddingLeft()I -HSPLandroid/widget/TextView;->getTotalPaddingRight()I -HSPLandroid/widget/TextView;->getTotalPaddingTop()I -HSPLandroid/widget/TextView;->getTransformationMethod()Landroid/text/method/TransformationMethod; -HSPLandroid/widget/TextView;->getTypeface()Landroid/graphics/Typeface; -HSPLandroid/widget/TextView;->getTypefaceStyle()I -HSPLandroid/widget/TextView;->getUpdatedHighlightPath()Landroid/graphics/Path;+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->getVerticalOffset(Z)I+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/widget/TextView;->handleBackInTextActionModeIfNeeded(Landroid/view/KeyEvent;)Z -HSPLandroid/widget/TextView;->handleTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView;->hasGesturePreviewHighlight()Z -HSPLandroid/widget/TextView;->hasOverlappingRendering()Z+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/RippleDrawable; -HSPLandroid/widget/TextView;->hasPasswordTransformationMethod()Z -HSPLandroid/widget/TextView;->hasSelection()Z -HSPLandroid/widget/TextView;->hideErrorIfUnchanged()V -HSPLandroid/widget/TextView;->invalidateCursor()V -HSPLandroid/widget/TextView;->invalidateCursorPath()V -HSPLandroid/widget/TextView;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/AnimatedStateListDrawable;,Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable;,Landroid/graphics/drawable/RippleDrawable;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->invalidateRegion(IIZ)V -HSPLandroid/widget/TextView;->isAnyPasswordInputType()Z -HSPLandroid/widget/TextView;->isAutoSizeEnabled()Z -HSPLandroid/widget/TextView;->isAutofillable()Z -HSPLandroid/widget/TextView;->isFallbackLineSpacingForStaticLayout()Z -HSPLandroid/widget/TextView;->isFromPrimePointer(Landroid/view/MotionEvent;Z)Z -HSPLandroid/widget/TextView;->isInBatchEditMode()Z -HSPLandroid/widget/TextView;->isInExtractedMode()Z -HSPLandroid/widget/TextView;->isInputMethodTarget()Z -HSPLandroid/widget/TextView;->isMarqueeFadeEnabled()Z -HSPLandroid/widget/TextView;->isMultilineInputType(I)Z -HSPLandroid/widget/TextView;->isPasswordInputType(I)Z -HSPLandroid/widget/TextView;->isPositionVisible(FF)Z -HSPLandroid/widget/TextView;->isShowingHint()Z -HSPLandroid/widget/TextView;->isSuggestionsEnabled()Z -HSPLandroid/widget/TextView;->isTextAutofillable()Z -HSPLandroid/widget/TextView;->isTextEditable()Z -HSPLandroid/widget/TextView;->isTextSelectable()Z -HSPLandroid/widget/TextView;->isVisibleToAccessibility()Z -HSPLandroid/widget/TextView;->jumpDrawablesToCurrentState()V+]Landroid/graphics/drawable/Drawable;missing_types -HSPLandroid/widget/TextView;->length()I -HSPLandroid/widget/TextView;->makeNewLayout(IILandroid/text/BoringLayout$Metrics;Landroid/text/BoringLayout$Metrics;IZ)V+]Landroid/text/Layout;Landroid/text/BoringLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->makeSingleLayout(ILandroid/text/BoringLayout$Metrics;ILandroid/text/Layout$Alignment;ZLandroid/text/TextUtils$TruncateAt;Z)Landroid/text/Layout;+]Landroid/text/BoringLayout;Landroid/text/BoringLayout;]Landroid/text/StaticLayout$Builder;Landroid/text/StaticLayout$Builder;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/widget/TextView;->maybeUpdateHighlightPaths()V+]Landroid/widget/TextView;missing_types]Ljava/util/List;Ljava/util/ArrayList; -HSPLandroid/widget/TextView;->notifyContentCaptureTextChanged()V -HSPLandroid/widget/TextView;->notifyListeningManagersAfterTextChanged()V+]Landroid/view/autofill/AutofillManager;Landroid/view/autofill/AutofillManager;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->nullLayouts()V -HSPLandroid/widget/TextView;->onAttachedToWindow()V -HSPLandroid/widget/TextView;->onBeginBatchEdit()V -HSPLandroid/widget/TextView;->onCheckIsTextEditor()Z -HSPLandroid/widget/TextView;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/widget/TextView;->onCreateDrawableState(I)[I+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; -HSPLandroid/widget/TextView;->onDetachedFromWindowInternal()V -HSPLandroid/widget/TextView;->onDraw(Landroid/graphics/Canvas;)V+]Landroid/graphics/Canvas;Landroid/graphics/RecordingCanvas;]Landroid/graphics/drawable/Drawable;missing_types]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/StaticLayout;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->onEditorAction(I)V -HSPLandroid/widget/TextView;->onEndBatchEdit()V -HSPLandroid/widget/TextView;->onFocusChanged(ZILandroid/graphics/Rect;)V -HSPLandroid/widget/TextView;->onInputConnectionClosedInternal()V -HSPLandroid/widget/TextView;->onInputConnectionOpenedInternal(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Landroid/os/Handler;)V -HSPLandroid/widget/TextView;->onKeyDown(ILandroid/view/KeyEvent;)Z -HSPLandroid/widget/TextView;->onKeyPreIme(ILandroid/view/KeyEvent;)Z -HSPLandroid/widget/TextView;->onKeyUp(ILandroid/view/KeyEvent;)Z -HSPLandroid/widget/TextView;->onLayout(ZIIII)V -HSPLandroid/widget/TextView;->onLocaleChanged()V -HSPLandroid/widget/TextView;->onMeasure(II)V+]Landroid/text/Layout;Landroid/text/BoringLayout;,Landroid/text/DynamicLayout;,Landroid/text/StaticLayout;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->onPreDraw()Z -HSPLandroid/widget/TextView;->onProvideStructure(Landroid/view/ViewStructure;II)V -HSPLandroid/widget/TextView;->onResolveDrawables(I)V -HSPLandroid/widget/TextView;->onRestoreInstanceState(Landroid/os/Parcelable;)V -HSPLandroid/widget/TextView;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/TextView;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLandroid/widget/TextView;->onScreenStateChanged(I)V -HSPLandroid/widget/TextView;->onScrollChanged(IIII)V -HSPLandroid/widget/TextView;->onSelectionChanged(II)V -HSPLandroid/widget/TextView;->onTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLandroid/widget/TextView;->onVisibilityAggregated(Z)V -HSPLandroid/widget/TextView;->onVisibilityChanged(Landroid/view/View;I)V -HSPLandroid/widget/TextView;->onWindowFocusChanged(Z)V -HSPLandroid/widget/TextView;->originalToTransformed(II)I -HSPLandroid/widget/TextView;->preloadFontCache()V -HSPLandroid/widget/TextView;->readTextAppearance(Landroid/content/Context;Landroid/content/res/TypedArray;Landroid/widget/TextView$TextAppearanceAttributes;Z)V+]Landroid/content/Context;missing_types]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/TypedValue;Landroid/util/TypedValue; -HSPLandroid/widget/TextView;->registerForPreDraw()V -HSPLandroid/widget/TextView;->removeAdjacentSuggestionSpans(I)V -HSPLandroid/widget/TextView;->removeIntersectingNonAdjacentSpans(IILjava/lang/Class;)V -HSPLandroid/widget/TextView;->removeMisspelledSpans(Landroid/text/Spannable;)V -HSPLandroid/widget/TextView;->removeSuggestionSpans(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLandroid/widget/TextView;->removeTextChangedListener(Landroid/text/TextWatcher;)V -HSPLandroid/widget/TextView;->resetErrorChangedFlag()V -HSPLandroid/widget/TextView;->resetResolvedDrawables()V -HSPLandroid/widget/TextView;->resolveStyleAndSetTypeface(Landroid/graphics/Typeface;II)V -HSPLandroid/widget/TextView;->restartMarqueeIfNeeded()V -HSPLandroid/widget/TextView;->sendAccessibilityEventInternal(I)V -HSPLandroid/widget/TextView;->sendAfterTextChanged(Landroid/text/Editable;)V -HSPLandroid/widget/TextView;->sendBeforeTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView;->sendOnTextChanged(Ljava/lang/CharSequence;III)V -HSPLandroid/widget/TextView;->setAllCaps(Z)V -HSPLandroid/widget/TextView;->setAutoSizeTextTypeUniformWithPresetSizes([II)V -HSPLandroid/widget/TextView;->setBreakStrategy(I)V -HSPLandroid/widget/TextView;->setCompoundDrawablePadding(I)V -HSPLandroid/widget/TextView;->setCompoundDrawableTintList(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/TextView;->setCompoundDrawables(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->setCompoundDrawablesRelative(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/TextView;->setCompoundDrawablesRelativeWithIntrinsicBounds(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/TextView;->setCompoundDrawablesWithIntrinsicBounds(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/TextView;->setCursorVisible(Z)V -HSPLandroid/widget/TextView;->setEditableFactory(Landroid/text/Editable$Factory;)V -HSPLandroid/widget/TextView;->setEllipsize(Landroid/text/TextUtils$TruncateAt;)V -HSPLandroid/widget/TextView;->setEnabled(Z)V -HSPLandroid/widget/TextView;->setFilters(Landroid/text/Editable;[Landroid/text/InputFilter;)V -HSPLandroid/widget/TextView;->setFilters([Landroid/text/InputFilter;)V -HSPLandroid/widget/TextView;->setFontFeatureSettings(Ljava/lang/String;)V -HSPLandroid/widget/TextView;->setFrame(IIII)Z -HSPLandroid/widget/TextView;->setGravity(I)V -HSPLandroid/widget/TextView;->setHeight(I)V -HSPLandroid/widget/TextView;->setHighlightColor(I)V -HSPLandroid/widget/TextView;->setHint(I)V -HSPLandroid/widget/TextView;->setHint(Ljava/lang/CharSequence;)V -HSPLandroid/widget/TextView;->setHintInternal(Ljava/lang/CharSequence;)V -HSPLandroid/widget/TextView;->setHintTextColor(I)V -HSPLandroid/widget/TextView;->setHintTextColor(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/TextView;->setHorizontallyScrolling(Z)V -HSPLandroid/widget/TextView;->setImeConsumesInput(Z)V -HSPLandroid/widget/TextView;->setImeOptions(I)V -HSPLandroid/widget/TextView;->setIncludeFontPadding(Z)V -HSPLandroid/widget/TextView;->setInputType(I)V -HSPLandroid/widget/TextView;->setInputType(IZ)V -HSPLandroid/widget/TextView;->setInputTypeFromEditor()V -HSPLandroid/widget/TextView;->setInputTypeSingleLine(Z)V -HSPLandroid/widget/TextView;->setKeyListener(Landroid/text/method/KeyListener;)V -HSPLandroid/widget/TextView;->setKeyListenerOnly(Landroid/text/method/KeyListener;)V -HSPLandroid/widget/TextView;->setLetterSpacing(F)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/widget/TextView;->setLineHeight(I)V -HSPLandroid/widget/TextView;->setLineSpacing(FF)V -HSPLandroid/widget/TextView;->setLines(I)V -HSPLandroid/widget/TextView;->setLinkTextColor(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/TextView;->setMarqueeRepeatLimit(I)V -HSPLandroid/widget/TextView;->setMaxLines(I)V -HSPLandroid/widget/TextView;->setMaxWidth(I)V -HSPLandroid/widget/TextView;->setMinHeight(I)V -HSPLandroid/widget/TextView;->setMinLines(I)V -HSPLandroid/widget/TextView;->setMinWidth(I)V -HSPLandroid/widget/TextView;->setMovementMethod(Landroid/text/method/MovementMethod;)V -HSPLandroid/widget/TextView;->setOnEditorActionListener(Landroid/widget/TextView$OnEditorActionListener;)V -HSPLandroid/widget/TextView;->setPadding(IIII)V -HSPLandroid/widget/TextView;->setPaddingRelative(IIII)V -HSPLandroid/widget/TextView;->setPrivateImeOptions(Ljava/lang/String;)V -HSPLandroid/widget/TextView;->setRawInputType(I)V -HSPLandroid/widget/TextView;->setRawTextSize(FZ)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/widget/TextView;->setRelativeDrawablesIfNeeded(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/TextView;->setSelected(Z)V -HSPLandroid/widget/TextView;->setShadowLayer(FFFI)V -HSPLandroid/widget/TextView;->setSingleLine()V -HSPLandroid/widget/TextView;->setSingleLine(Z)V -HSPLandroid/widget/TextView;->setText(I)V -HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V -HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;)V -HSPLandroid/widget/TextView;->setText(Ljava/lang/CharSequence;Landroid/widget/TextView$BufferType;ZI)V+]Landroid/text/Editable$Factory;Landroid/text/Editable$Factory;]Landroid/text/InputFilter;Landroid/text/InputFilter$LengthFilter;]Landroid/text/Spannable$Factory;Landroid/text/Spannable$Factory;]Landroid/text/Spannable;Landroid/text/SpannableString;,Landroid/text/SpannableStringBuilder;]Landroid/text/Spanned;Landroid/text/SpannableStringBuilder;,Landroid/text/SpannedString;]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/text/method/MovementMethod;Landroid/text/method/ArrowKeyMovementMethod;,Landroid/text/method/LinkMovementMethod;]Landroid/text/method/TransformationMethod;Landroid/text/method/AllCapsTransformationMethod;,Landroid/text/method/SingleLineTransformationMethod;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Landroid/text/SpannableStringBuilder;,Landroid/text/SpannedString;,Ljava/lang/String; -HSPLandroid/widget/TextView;->setTextAppearance(I)V -HSPLandroid/widget/TextView;->setTextAppearance(Landroid/content/Context;I)V -HSPLandroid/widget/TextView;->setTextColor(I)V -HSPLandroid/widget/TextView;->setTextColor(Landroid/content/res/ColorStateList;)V -HSPLandroid/widget/TextView;->setTextInternal(Ljava/lang/CharSequence;)V -HSPLandroid/widget/TextView;->setTextIsSelectable(Z)V -HSPLandroid/widget/TextView;->setTextSize(F)V -HSPLandroid/widget/TextView;->setTextSize(IF)V -HSPLandroid/widget/TextView;->setTextSizeInternal(IFZ)V -HSPLandroid/widget/TextView;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V -HSPLandroid/widget/TextView;->setTransformationMethodInternal(Landroid/text/method/TransformationMethod;Z)V -HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V+]Landroid/text/TextPaint;Landroid/text/TextPaint; -HSPLandroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;I)V+]Landroid/text/TextPaint;Landroid/text/TextPaint;]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->setTypefaceFromAttrs(Landroid/graphics/Typeface;Ljava/lang/String;III)V -HSPLandroid/widget/TextView;->setupAutoSizeText()Z -HSPLandroid/widget/TextView;->setupAutoSizeUniformPresetSizesConfiguration()Z -HSPLandroid/widget/TextView;->shouldAdvanceFocusOnEnter()Z -HSPLandroid/widget/TextView;->spanChange(Landroid/text/Spanned;Ljava/lang/Object;IIII)V -HSPLandroid/widget/TextView;->startMarquee()V+]Landroid/widget/TextView;Landroid/widget/CheckedTextView;,Landroid/widget/TextView; -HSPLandroid/widget/TextView;->startStopMarquee(Z)V -HSPLandroid/widget/TextView;->stopMarquee()V -HSPLandroid/widget/TextView;->stopTextActionMode()V -HSPLandroid/widget/TextView;->suggestedSizeFitsInSpace(ILandroid/graphics/RectF;)Z -HSPLandroid/widget/TextView;->supportsAutoSizeText()Z -HSPLandroid/widget/TextView;->textCanBeSelected()Z -HSPLandroid/widget/TextView;->unregisterForPreDraw()V -HSPLandroid/widget/TextView;->updateAfterEdit()V -HSPLandroid/widget/TextView;->updateCursorVisibleInternal()V -HSPLandroid/widget/TextView;->updateTextColors()V+]Landroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;]Landroid/widget/Editor;Landroid/widget/Editor;]Landroid/widget/TextView;missing_types]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLandroid/widget/TextView;->useDynamicLayout()Z+]Landroid/widget/TextView;missing_types -HSPLandroid/widget/TextView;->validateAndSetAutoSizeTextTypeUniformConfiguration(FFF)V -HSPLandroid/widget/TextView;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z -HSPLandroid/widget/TextView;->viewClicked(Landroid/view/inputmethod/InputMethodManager;)V -HSPLandroid/widget/TextView;->viewportToContentHorizontalOffset()I -HSPLandroid/widget/TextView;->viewportToContentVerticalOffset()I -HSPLandroid/widget/TextViewOnReceiveContentListener;-><init>()V -HSPLandroid/widget/TextViewOnReceiveContentListener;->clearInputConnectionInfo()V -HSPLandroid/widget/TextViewOnReceiveContentListener;->getFallbackMimeTypesForAutofill(Landroid/widget/TextView;)[Ljava/lang/String; -HSPLandroid/widget/TextViewOnReceiveContentListener;->isUsageOfImeCommitContentEnabled(Landroid/view/View;)Z -HSPLandroid/widget/TextViewOnReceiveContentListener;->setInputConnectionInfo(Landroid/widget/TextView;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)V -HSPLandroid/widget/Toast$CallbackBinder;->getCallbacks()Ljava/util/List; -HSPLandroid/widget/Toast$CallbackBinder;->onToastHidden()V -HSPLandroid/widget/Toast$CallbackBinder;->onToastShown()V -HSPLandroid/widget/Toast$TN;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/os/Binder;Ljava/util/List;Landroid/os/Looper;)V -HSPLandroid/widget/Toast;-><init>(Landroid/content/Context;Landroid/os/Looper;)V -HSPLandroid/widget/Toast;->makeText(Landroid/content/Context;Landroid/os/Looper;Ljava/lang/CharSequence;I)Landroid/widget/Toast; -HSPLandroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; -HSPLandroid/widget/Toast;->show()V -HSPLandroid/widget/ToastPresenter;-><init>(Landroid/content/Context;Landroid/view/accessibility/IAccessibilityManager;Landroid/app/INotificationManager;Ljava/lang/String;)V -HSPLandroid/widget/ToastPresenter;->adjustLayoutParams(Landroid/view/WindowManager$LayoutParams;Landroid/os/IBinder;IIIIFFZ)V -HSPLandroid/widget/ToastPresenter;->createLayoutParams()Landroid/view/WindowManager$LayoutParams; -HSPLandroid/widget/ToastPresenter;->hide(Landroid/app/ITransientNotificationCallback;)V -HSPLandroid/widget/ToastPresenter;->show(Landroid/view/View;Landroid/os/IBinder;Landroid/os/IBinder;IIIIFFLandroid/app/ITransientNotificationCallback;Z)V -HSPLandroid/widget/ToastPresenter;->trySendAccessibilityEvent(Landroid/view/View;Ljava/lang/String;)V -HSPLandroid/widget/Toolbar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/Toolbar;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V -HSPLandroid/widget/Toolbar;->addSystemView(Landroid/view/View;Z)V -HSPLandroid/widget/Toolbar;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z -HSPLandroid/widget/Toolbar;->ensureNavButtonView()V -HSPLandroid/widget/Toolbar;->generateDefaultLayoutParams()Landroid/widget/Toolbar$LayoutParams; -HSPLandroid/widget/Toolbar;->getContentInsetEnd()I -HSPLandroid/widget/Toolbar;->getContentInsetStart()I -HSPLandroid/widget/Toolbar;->getCurrentContentInsetEnd()I -HSPLandroid/widget/Toolbar;->getCurrentContentInsetStart()I -HSPLandroid/widget/Toolbar;->getNavigationIcon()Landroid/graphics/drawable/Drawable; -HSPLandroid/widget/Toolbar;->measureChildCollapseMargins(Landroid/view/View;IIII[I)I -HSPLandroid/widget/Toolbar;->measureChildConstrained(Landroid/view/View;IIIII)V -HSPLandroid/widget/Toolbar;->onAttachedToWindow()V -HSPLandroid/widget/Toolbar;->onMeasure(II)V -HSPLandroid/widget/Toolbar;->onRtlPropertiesChanged(I)V -HSPLandroid/widget/Toolbar;->setNavigationContentDescription(Ljava/lang/CharSequence;)V -HSPLandroid/widget/Toolbar;->setNavigationIcon(Landroid/graphics/drawable/Drawable;)V -HSPLandroid/widget/Toolbar;->setNavigationOnClickListener(Landroid/view/View$OnClickListener;)V -HSPLandroid/widget/Toolbar;->setPopupTheme(I)V -HSPLandroid/widget/Toolbar;->setTitle(Ljava/lang/CharSequence;)V -HSPLandroid/widget/Toolbar;->shouldCollapse()Z -HSPLandroid/widget/ViewAnimator;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ViewAnimator;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/ViewAnimator;->initViewAnimator(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLandroid/widget/ViewAnimator;->setAnimateFirstView(Z)V -HSPLandroid/widget/ViewAnimator;->setDisplayedChild(I)V -HSPLandroid/widget/ViewAnimator;->showOnly(I)V -HSPLandroid/widget/ViewAnimator;->showOnly(IZ)V -HSPLandroid/widget/ViewSwitcher;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V -HSPLandroid/widget/inline/InlinePresentationSpec$1;-><init>()V -HSPLandroid/widget/inline/InlinePresentationSpec$1;->createFromParcel(Landroid/os/Parcel;)Landroid/widget/inline/InlinePresentationSpec; -HSPLandroid/widget/inline/InlinePresentationSpec$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/widget/inline/InlinePresentationSpec;-><clinit>()V -HSPLandroid/widget/inline/InlinePresentationSpec;-><init>(Landroid/os/Parcel;)V -HSPLandroid/widget/inline/InlinePresentationSpec;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/window/ClientWindowFrames$1;-><init>()V -HSPLandroid/window/ClientWindowFrames$1;->createFromParcel(Landroid/os/Parcel;)Landroid/window/ClientWindowFrames; -HSPLandroid/window/ClientWindowFrames$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/window/ClientWindowFrames;-><clinit>()V -HSPLandroid/window/ClientWindowFrames;-><init>()V -HSPLandroid/window/ClientWindowFrames;-><init>(Landroid/os/Parcel;)V -HSPLandroid/window/ClientWindowFrames;->readFromParcel(Landroid/os/Parcel;)V -HSPLandroid/window/ConfigurationHelper;->freeTextLayoutCachesIfNeeded(I)V -HSPLandroid/window/ConfigurationHelper;->isDifferentDisplay(II)Z -HSPLandroid/window/ConfigurationHelper;->isDisplayRotationChanged(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Z -HSPLandroid/window/ConfigurationHelper;->shouldUpdateResources(Landroid/os/IBinder;Landroid/content/res/Configuration;Landroid/content/res/Configuration;Landroid/content/res/Configuration;ZLjava/lang/Boolean;)Z -HSPLandroid/window/ConfigurationHelper;->shouldUpdateWindowMetricsBounds(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Z -HSPLandroid/window/IOnBackInvokedCallback$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/window/IOnBackInvokedCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLandroid/window/IOnBackInvokedCallback$Stub;-><init>()V -HSPLandroid/window/IOnBackInvokedCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/window/IOnBackInvokedCallback$Stub;->asInterface(Landroid/os/IBinder;)Landroid/window/IOnBackInvokedCallback; -HSPLandroid/window/IOnBackInvokedCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLandroid/window/IRemoteTransition$Stub;->asInterface(Landroid/os/IBinder;)Landroid/window/IRemoteTransition; -HSPLandroid/window/ISurfaceSyncGroup$Stub;-><init>()V -HSPLandroid/window/ISurfaceSyncGroup$Stub;->asBinder()Landroid/os/IBinder; -HSPLandroid/window/ITransactionReadyCallback$Stub;-><init>()V -HSPLandroid/window/ITrustedPresentationListener$Stub;-><init>()V -HSPLandroid/window/IWindowContainerToken$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLandroid/window/IWindowContainerToken$Stub;->asInterface(Landroid/os/IBinder;)Landroid/window/IWindowContainerToken; -HSPLandroid/window/ImeOnBackInvokedDispatcher$1;-><init>(Landroid/window/ImeOnBackInvokedDispatcher;Landroid/os/Handler;)V -HSPLandroid/window/ImeOnBackInvokedDispatcher$1;->onReceiveResult(ILandroid/os/Bundle;)V -HSPLandroid/window/ImeOnBackInvokedDispatcher$ImeOnBackInvokedCallback;->-$$Nest$mgetId(Landroid/window/ImeOnBackInvokedDispatcher$ImeOnBackInvokedCallback;)I -HSPLandroid/window/ImeOnBackInvokedDispatcher$ImeOnBackInvokedCallback;-><init>(Landroid/window/IOnBackInvokedCallback;II)V -HSPLandroid/window/ImeOnBackInvokedDispatcher$ImeOnBackInvokedCallback;->getId()I -HSPLandroid/window/ImeOnBackInvokedDispatcher;->clear()V -HSPLandroid/window/ImeOnBackInvokedDispatcher;->switchRootView(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl;)V -HSPLandroid/window/ImeOnBackInvokedDispatcher;->unregisterReceivedCallback(ILandroid/window/OnBackInvokedDispatcher;)V -HSPLandroid/window/ImeOnBackInvokedDispatcher;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/window/OnBackInvokedCallbackInfo$1;-><init>()V -HSPLandroid/window/OnBackInvokedCallbackInfo;-><clinit>()V -HSPLandroid/window/OnBackInvokedCallbackInfo;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/window/ProxyOnBackInvokedDispatcher$$ExternalSyntheticLambda0;-><init>(Landroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/ProxyOnBackInvokedDispatcher;->clearCallbacksOnDispatcher()V -HSPLandroid/window/ProxyOnBackInvokedDispatcher;->registerOnBackInvokedCallback(ILandroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/ProxyOnBackInvokedDispatcher;->setActualDispatcher(Landroid/window/OnBackInvokedDispatcher;)V -HSPLandroid/window/ProxyOnBackInvokedDispatcher;->transferCallbacksToDispatcher()V -HSPLandroid/window/ProxyOnBackInvokedDispatcher;->unregisterOnBackInvokedCallback(Landroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/SizeConfigurationBuckets$1;-><init>()V -HSPLandroid/window/SizeConfigurationBuckets;-><clinit>()V -HSPLandroid/window/SizeConfigurationBuckets;-><init>([Landroid/content/res/Configuration;)V -HSPLandroid/window/SizeConfigurationBuckets;->writeToParcel(Landroid/os/Parcel;I)V -HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V -HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda3;->accept(Ljava/lang/Object;)V -HSPLandroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda5;->accept(Ljava/lang/Object;)V -HSPLandroid/window/SurfaceSyncGroup$2;-><init>(Landroid/window/SurfaceSyncGroup;Z)V -HSPLandroid/window/SurfaceSyncGroup$2;->onTransactionReady(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl;->getSurfaceSyncGroup()Landroid/window/SurfaceSyncGroup; -HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmLock(Landroid/window/SurfaceSyncGroup;)Ljava/lang/Object; -HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmPendingSyncs(Landroid/window/SurfaceSyncGroup;)Landroid/util/ArraySet; -HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmTransaction(Landroid/window/SurfaceSyncGroup;)Landroid/view/SurfaceControl$Transaction; -HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$mcheckIfSyncIsComplete(Landroid/window/SurfaceSyncGroup;)V -HSPLandroid/window/SurfaceSyncGroup;-><clinit>()V -HSPLandroid/window/SurfaceSyncGroup;-><init>(Ljava/lang/String;)V -HSPLandroid/window/SurfaceSyncGroup;-><init>(Ljava/lang/String;Ljava/util/function/Consumer;)V -HSPLandroid/window/SurfaceSyncGroup;->add(Landroid/window/ISurfaceSyncGroup;ZLjava/lang/Runnable;)Z -HSPLandroid/window/SurfaceSyncGroup;->addLocalSync(Landroid/window/ISurfaceSyncGroup;Z)Z -HSPLandroid/window/SurfaceSyncGroup;->addSyncCompleteCallback(Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V -HSPLandroid/window/SurfaceSyncGroup;->addTimeout()V -HSPLandroid/window/SurfaceSyncGroup;->checkIfSyncIsComplete()V -HSPLandroid/window/SurfaceSyncGroup;->createTransactionReadyCallback(Z)Landroid/window/ITransactionReadyCallback; -HSPLandroid/window/SurfaceSyncGroup;->getSurfaceSyncGroup(Landroid/window/ISurfaceSyncGroup;)Landroid/window/SurfaceSyncGroup; -HSPLandroid/window/SurfaceSyncGroup;->invokeSyncCompleteCallbacks()V -HSPLandroid/window/SurfaceSyncGroup;->isLocalBinder(Landroid/os/IBinder;)Z -HSPLandroid/window/SurfaceSyncGroup;->lambda$invokeSyncCompleteCallbacks$2(Landroid/util/Pair;)V -HSPLandroid/window/SurfaceSyncGroup;->lambda$new$0(Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/window/SurfaceSyncGroup;->lambda$new$1(Ljava/util/function/Consumer;Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/window/SurfaceSyncGroup;->lambda$setTransactionCallbackFromParent$5(Landroid/window/ITransactionReadyCallback;Ljava/util/function/Consumer;Landroid/view/SurfaceControl$Transaction;)V -HSPLandroid/window/SurfaceSyncGroup;->markSyncReady()V -HSPLandroid/window/SurfaceSyncGroup;->setTransactionCallbackFromParent(Landroid/window/ISurfaceSyncGroup;Landroid/window/ITransactionReadyCallback;)V -HSPLandroid/window/TaskAppearedInfo;-><init>(Landroid/app/ActivityManager$RunningTaskInfo;Landroid/view/SurfaceControl;)V -HSPLandroid/window/TaskSnapshot;->getAppearance()I -HSPLandroid/window/TaskSnapshot;->getColorSpace()Landroid/graphics/ColorSpace; -HSPLandroid/window/TaskSnapshot;->getContentInsets()Landroid/graphics/Rect; -HSPLandroid/window/TaskSnapshot;->getHardwareBuffer()Landroid/hardware/HardwareBuffer; -HSPLandroid/window/TaskSnapshot;->getId()J -HSPLandroid/window/TaskSnapshot;->getOrientation()I -HSPLandroid/window/TaskSnapshot;->getRotation()I -HSPLandroid/window/TaskSnapshot;->getTaskSize()Landroid/graphics/Point; -HSPLandroid/window/TaskSnapshot;->getWindowingMode()I -HSPLandroid/window/TaskSnapshot;->isRealSnapshot()Z -HSPLandroid/window/TaskSnapshot;->isTranslucent()Z -HSPLandroid/window/WindowContainerToken$1;->createFromParcel(Landroid/os/Parcel;)Landroid/window/WindowContainerToken; -HSPLandroid/window/WindowContainerToken$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLandroid/window/WindowContainerToken;-><init>(Landroid/os/Parcel;)V -HSPLandroid/window/WindowContainerToken;->asBinder()Landroid/os/IBinder; -HSPLandroid/window/WindowContext;-><init>(Landroid/content/Context;ILandroid/os/Bundle;)V -HSPLandroid/window/WindowContext;->attachToDisplayArea()V -HSPLandroid/window/WindowContext;->dispatchConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLandroid/window/WindowContext;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLandroid/window/WindowContext;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V -HSPLandroid/window/WindowContextController;-><init>(Landroid/window/WindowTokenClient;)V -HSPLandroid/window/WindowContextController;->attachToDisplayArea(IILandroid/os/Bundle;)V -HSPLandroid/window/WindowMetricsController$$ExternalSyntheticLambda0;-><init>(Landroid/window/WindowMetricsController;Landroid/os/IBinder;Landroid/graphics/Rect;ZI)V -HSPLandroid/window/WindowMetricsController$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLandroid/window/WindowMetricsController;-><init>(Landroid/content/Context;)V -HSPLandroid/window/WindowMetricsController;->getWindowInsetsFromServerForDisplay(ILandroid/os/IBinder;Landroid/graphics/Rect;ZI)Landroid/view/WindowInsets; -HSPLandroid/window/WindowMetricsController;->getWindowMetricsInternal(Z)Landroid/view/WindowMetrics; -HSPLandroid/window/WindowMetricsController;->lambda$getWindowMetricsInternal$0(Landroid/os/IBinder;Landroid/graphics/Rect;ZI)Landroid/view/WindowInsets; -HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->-$$Nest$mgetContext(Landroid/window/WindowOnBackInvokedDispatcher$Checker;)Landroid/content/Context; -HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;-><init>(Landroid/content/Context;)V -HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->checkApplicationCallbackRegistration(ILandroid/window/OnBackInvokedCallback;)Z -HSPLandroid/window/WindowOnBackInvokedDispatcher$Checker;->getContext()Landroid/content/Context; -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0;-><init>(Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;)V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0;->run()V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2;->run()V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3;->run()V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef;-><init>(Landroid/window/OnBackInvokedCallback;Z)V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->getBackAnimationCallback()Landroid/window/OnBackAnimationCallback; -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->onBackCancelled()V -HSPLandroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper;->onBackInvoked()V -HSPLandroid/window/WindowOnBackInvokedDispatcher;-><clinit>()V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->clear()V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->detachFromWindow()V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->getTopCallback()Landroid/window/OnBackInvokedCallback; -HSPLandroid/window/WindowOnBackInvokedDispatcher;->hasImeOnBackInvokedDispatcher()Z -HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled()Z -HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled(Landroid/content/Context;)Z -HSPLandroid/window/WindowOnBackInvokedDispatcher;->registerOnBackInvokedCallback(ILandroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->registerOnBackInvokedCallbackUnchecked(Landroid/window/OnBackInvokedCallback;I)V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->setTopOnBackInvokedCallback(Landroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->unregisterOnBackInvokedCallback(Landroid/window/OnBackInvokedCallback;)V -HSPLandroid/window/WindowOnBackInvokedDispatcher;->updateContext(Landroid/content/Context;)V -HSPLandroid/window/WindowOrganizer;-><init>()V -HSPLandroid/window/WindowTokenClient;-><clinit>()V -HSPLandroid/window/WindowTokenClient;-><init>()V -HSPLandroid/window/WindowTokenClient;->attachContext(Landroid/content/Context;)V -HSPLandroid/window/WindowTokenClient;->onConfigurationChanged(Landroid/content/res/Configuration;I)V -HSPLandroid/window/WindowTokenClient;->onConfigurationChanged(Landroid/content/res/Configuration;IZ)V -HSPLcom/android/i18n/phonenumbers/CountryCodeToRegionCodeMap;->getCountryCodeToRegionCodeMap()Ljava/util/Map; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->buildNationalNumberForParsing(Ljava/lang/String;Ljava/lang/StringBuilder;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->checkRegionForParsing(Ljava/lang/CharSequence;Ljava/lang/String;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->chooseFormattingPatternForNumber(Ljava/util/List;Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->createInstance(Lcom/android/i18n/phonenumbers/MetadataLoader;)Lcom/android/i18n/phonenumbers/PhoneNumberUtil; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->extractCountryCode(Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;)I -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->extractPossibleNumber(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->format(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->format(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;Ljava/lang/StringBuilder;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->formatInOriginalFormat(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->formatNsn(Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->formatNsnUsingPattern(Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getCountryCodeForValidRegion(Ljava/lang/String;)I -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getInstance()Lcom/android/i18n/phonenumbers/PhoneNumberUtil; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getMetadataForRegion(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getMetadataForRegionOrCallingCode(ILjava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getNationalSignificantNumber(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getNumberDescByType(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberType;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getNumberTypeHelper(Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;)Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberType; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getRegionCodeForCountryCode(I)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getRegionCodeForNumber(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->getRegionCodeForNumberFromRegionList(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Ljava/util/List;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->hasFormattingPatternForNumber(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->isNumberMatchingDesc(Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->isValidNumber(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->isValidNumberForRegion(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Ljava/lang/String;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->isValidRegionCode(Ljava/lang/String;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->isViablePhoneNumber(Ljava/lang/CharSequence;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->maybeAppendFormattedExtension(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;Ljava/lang/StringBuilder;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->maybeExtractCountryCode(Ljava/lang/CharSequence;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Ljava/lang/StringBuilder;ZLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)I -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->maybeStripExtension(Ljava/lang/StringBuilder;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->maybeStripInternationalPrefixAndNormalize(Ljava/lang/StringBuilder;Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->maybeStripNationalPrefixAndCarrierCode(Ljava/lang/StringBuilder;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Ljava/lang/StringBuilder;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->normalize(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->normalizeDiallableCharsOnly(Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->normalizeDigits(Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->normalizeDigitsOnly(Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->normalizeHelper(Ljava/lang/CharSequence;Ljava/util/Map;Z)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parse(Ljava/lang/CharSequence;Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parse(Ljava/lang/CharSequence;Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parseAndKeepRawInput(Ljava/lang/CharSequence;Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parseAndKeepRawInput(Ljava/lang/CharSequence;Ljava/lang/String;Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parseHelper(Ljava/lang/CharSequence;Ljava/lang/String;ZZLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->parsePrefixAsIdd(Ljava/util/regex/Pattern;Ljava/lang/StringBuilder;)Z -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->prefixNumberWithCountryCallingCode(ILcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat;Ljava/lang/StringBuilder;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->setInstance(Lcom/android/i18n/phonenumbers/PhoneNumberUtil;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->setItalianLeadingZerosForPhoneNumber(Ljava/lang/CharSequence;Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;)V -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->testNumberLength(Ljava/lang/CharSequence;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;)Lcom/android/i18n/phonenumbers/PhoneNumberUtil$ValidationResult; -HSPLcom/android/i18n/phonenumbers/PhoneNumberUtil;->testNumberLength(Ljava/lang/CharSequence;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberType;)Lcom/android/i18n/phonenumbers/PhoneNumberUtil$ValidationResult; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;-><init>()V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->getFormat()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->getLeadingDigitsPattern(I)Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->getLeadingDigitsPatternCount()I -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->getNationalPrefixFormattingRule()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->getPattern()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->readExternal(Ljava/io/ObjectInput;)V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->setFormat(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->setNationalPrefixFormattingRule(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->setNationalPrefixOptionalWhenFormatting(Z)Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat;->setPattern(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;-><init>()V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getCountryCode()I -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getFixedLine()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getGeneralDesc()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getInternationalPrefix()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getIntlNumberFormatList()Ljava/util/List; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getLeadingDigits()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getMobile()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getNationalPrefixForParsing()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getNationalPrefixTransformRule()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getNumberFormatList()Ljava/util/List; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getPager()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getPersonalNumber()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getPremiumRate()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getSameMobileAndFixedLinePattern()Z -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getSharedCost()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getTollFree()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getUan()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getVoicemail()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->getVoip()Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->hasLeadingDigits()Z -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->readExternal(Ljava/io/ObjectInput;)V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setCountryCode(I)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setFixedLine(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setGeneralDesc(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setId(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setInternationalPrefix(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setLeadingDigits(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setMainCountryForCode(Z)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setMobile(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setMobileNumberPortableRegion(Z)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setNationalPrefix(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setNationalPrefixForParsing(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setNationalPrefixTransformRule(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setNoInternationalDialling(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setPager(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setPersonalNumber(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setPreferredExtnPrefix(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setPremiumRate(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setSameMobileAndFixedLinePattern(Z)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setSharedCost(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setTollFree(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setUan(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setVoicemail(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata;->setVoip(Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadataCollection;-><init>()V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadataCollection;->getMetadataList()Ljava/util/List; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadataCollection;->readExternal(Ljava/io/ObjectInput;)V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;-><init>()V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->getNationalNumberPattern()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->getPossibleLengthList()Ljava/util/List; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->getPossibleLengthLocalOnlyList()Ljava/util/List; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->readExternal(Ljava/io/ObjectInput;)V -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->setExampleNumber(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;->setNationalNumberPattern(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;-><init>()V -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->getCountryCode()I -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->getCountryCodeSource()Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->getNationalNumber()J -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->getRawInput()Ljava/lang/String; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->hasCountryCodeSource()Z -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->hasExtension()Z -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->hasRawInput()Z -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->isItalianLeadingZero()Z -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->setCountryCode(I)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->setCountryCodeSource(Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource;)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->setNationalNumber(J)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber;->setRawInput(Ljava/lang/String;)Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -HSPLcom/android/i18n/phonenumbers/internal/RegexBasedMatcher;->match(Ljava/lang/CharSequence;Ljava/util/regex/Pattern;Z)Z -HSPLcom/android/i18n/phonenumbers/internal/RegexBasedMatcher;->matchNationalNumber(Ljava/lang/CharSequence;Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc;Z)Z -HSPLcom/android/i18n/phonenumbers/internal/RegexCache$LRUCache$1;->removeEldestEntry(Ljava/util/Map$Entry;)Z -HSPLcom/android/i18n/phonenumbers/internal/RegexCache$LRUCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/i18n/phonenumbers/internal/RegexCache$LRUCache;->put(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLcom/android/i18n/phonenumbers/internal/RegexCache;-><init>(I)V -HSPLcom/android/i18n/phonenumbers/internal/RegexCache;->getPatternForRegex(Ljava/lang/String;)Ljava/util/regex/Pattern; -HSPLcom/android/i18n/system/AppSpecializationHooks;->handleCompatChangesBeforeBindingApplication()V -HSPLcom/android/i18n/system/ZygoteHooks;->handleCompatChangesBeforeBindingApplication()V -HSPLcom/android/i18n/system/ZygoteHooks;->onEndPreload()V -HSPLcom/android/i18n/timezone/WallTime;->checked32BitAdd(JI)I -HSPLcom/android/i18n/timezone/WallTime;->copyFieldsFromCalendar()V -HSPLcom/android/i18n/timezone/WallTime;->getGmtOffset()I -HSPLcom/android/i18n/timezone/WallTime;->getHour()I -HSPLcom/android/i18n/timezone/WallTime;->getIsDst()I -HSPLcom/android/i18n/timezone/WallTime;->getMinute()I -HSPLcom/android/i18n/timezone/WallTime;->getMonth()I -HSPLcom/android/i18n/timezone/WallTime;->getMonthDay()I -HSPLcom/android/i18n/timezone/WallTime;->getSecond()I -HSPLcom/android/i18n/timezone/WallTime;->getWeekDay()I -HSPLcom/android/i18n/timezone/WallTime;->getYear()I -HSPLcom/android/i18n/timezone/WallTime;->getYearDay()I -HSPLcom/android/i18n/timezone/WallTime;->localtime(ILcom/android/i18n/timezone/ZoneInfoData;)V -HSPLcom/android/i18n/timezone/WallTime;->setGmtOffset(I)V -HSPLcom/android/i18n/timezone/WallTime;->setHour(I)V -HSPLcom/android/i18n/timezone/WallTime;->setIsDst(I)V -HSPLcom/android/i18n/timezone/WallTime;->setMinute(I)V -HSPLcom/android/i18n/timezone/WallTime;->setMonth(I)V -HSPLcom/android/i18n/timezone/WallTime;->setMonthDay(I)V -HSPLcom/android/i18n/timezone/WallTime;->setSecond(I)V -HSPLcom/android/i18n/timezone/WallTime;->setWeekDay(I)V -HSPLcom/android/i18n/timezone/WallTime;->setYear(I)V -HSPLcom/android/i18n/timezone/WallTime;->setYearDay(I)V -HSPLcom/android/i18n/timezone/ZoneInfoData;-><init>(Lcom/android/i18n/timezone/ZoneInfoData;)V -HSPLcom/android/i18n/timezone/ZoneInfoData;-><init>(Lcom/android/i18n/timezone/ZoneInfoData;I)V -HSPLcom/android/i18n/timezone/ZoneInfoData;-><init>(Ljava/lang/String;[J[B[I[B)V -HSPLcom/android/i18n/timezone/ZoneInfoData;->checkTzifVersionAcceptable(Ljava/lang/String;B)V -HSPLcom/android/i18n/timezone/ZoneInfoData;->findOffsetIndexForTimeInMilliseconds(J)I -HSPLcom/android/i18n/timezone/ZoneInfoData;->findOffsetIndexForTimeInSeconds(J)I -HSPLcom/android/i18n/timezone/ZoneInfoData;->findTransitionIndex(J)I -HSPLcom/android/i18n/timezone/ZoneInfoData;->getID()Ljava/lang/String; -HSPLcom/android/i18n/timezone/ZoneInfoData;->getLatestDstSavingsMillis(J)Ljava/lang/Integer; -HSPLcom/android/i18n/timezone/ZoneInfoData;->getOffset(J)I -HSPLcom/android/i18n/timezone/ZoneInfoData;->getOffsetsByUtcTime(J[I)I+]Lcom/android/i18n/timezone/ZoneInfoData;Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/ZoneInfoData;->getRawOffset()I -HSPLcom/android/i18n/timezone/ZoneInfoData;->getTransitions()[J -HSPLcom/android/i18n/timezone/ZoneInfoData;->hashCode()I -HSPLcom/android/i18n/timezone/ZoneInfoData;->isInDaylightTime(J)Z -HSPLcom/android/i18n/timezone/ZoneInfoData;->read64BitData(Ljava/lang/String;Lcom/android/i18n/timezone/internal/BufferIterator;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/ZoneInfoData;->readTimeZone(Ljava/lang/String;Lcom/android/i18n/timezone/internal/BufferIterator;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/ZoneInfoData;->roundDownMillisToSeconds(J)J -HSPLcom/android/i18n/timezone/ZoneInfoData;->roundUpMillisToSeconds(J)J -HSPLcom/android/i18n/timezone/ZoneInfoData;->skipOver32BitData(Ljava/lang/String;Lcom/android/i18n/timezone/internal/BufferIterator;)V -HSPLcom/android/i18n/timezone/ZoneInfoDb$1;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/i18n/timezone/ZoneInfoDb$1;->create(Ljava/lang/String;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/ZoneInfoDb;->checkNotClosed()V -HSPLcom/android/i18n/timezone/ZoneInfoDb;->close()V -HSPLcom/android/i18n/timezone/ZoneInfoDb;->finalize()V -HSPLcom/android/i18n/timezone/ZoneInfoDb;->getAvailableIDs()[Ljava/lang/String; -HSPLcom/android/i18n/timezone/ZoneInfoDb;->getBufferIterator(Ljava/lang/String;)Lcom/android/i18n/timezone/internal/BufferIterator; -HSPLcom/android/i18n/timezone/ZoneInfoDb;->getInstance()Lcom/android/i18n/timezone/ZoneInfoDb; -HSPLcom/android/i18n/timezone/ZoneInfoDb;->makeZoneInfoData(Ljava/lang/String;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/ZoneInfoDb;->makeZoneInfoDataUncached(Ljava/lang/String;)Lcom/android/i18n/timezone/ZoneInfoData; -HSPLcom/android/i18n/timezone/internal/BasicLruCache$CacheMap;->removeEldestEntry(Ljava/util/Map$Entry;)Z -HSPLcom/android/i18n/timezone/internal/BasicLruCache;->evictAll()V -HSPLcom/android/i18n/timezone/internal/BasicLruCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/i18n/timezone/internal/BufferIterator;-><init>()V -HSPLcom/android/i18n/timezone/internal/Memory;->peekInt(JZ)I -HSPLcom/android/i18n/timezone/internal/MemoryMappedFile;->bigEndianIterator()Lcom/android/i18n/timezone/internal/BufferIterator; -HSPLcom/android/i18n/timezone/internal/MemoryMappedFile;->checkNotClosed()V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;-><init>(Lcom/android/i18n/timezone/internal/MemoryMappedFile;JIZ)V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->checkArrayBounds(III)V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->checkReadBounds(III)V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readByte()B -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readByteArray([BII)V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readInt()I -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readLongArray([JII)V -HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->skip(I)V -HSPLcom/android/icu/charset/CharsetDecoderICU;-><init>(Ljava/nio/charset/Charset;FJ)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->decodeLoop(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult; -HSPLcom/android/icu/charset/CharsetDecoderICU;->getArray(Ljava/nio/ByteBuffer;)I -HSPLcom/android/icu/charset/CharsetDecoderICU;->getArray(Ljava/nio/CharBuffer;)I -HSPLcom/android/icu/charset/CharsetDecoderICU;->implFlush(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult; -HSPLcom/android/icu/charset/CharsetDecoderICU;->implOnMalformedInput(Ljava/nio/charset/CodingErrorAction;)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->implOnUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->implReplaceWith(Ljava/lang/String;)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->implReset()V -HSPLcom/android/icu/charset/CharsetDecoderICU;->newInstance(Ljava/nio/charset/Charset;Ljava/lang/String;)Lcom/android/icu/charset/CharsetDecoderICU; -HSPLcom/android/icu/charset/CharsetDecoderICU;->setPosition(Ljava/nio/ByteBuffer;)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->setPosition(Ljava/nio/CharBuffer;)V -HSPLcom/android/icu/charset/CharsetDecoderICU;->updateCallback()V -HSPLcom/android/icu/charset/CharsetEncoderICU;-><init>(Ljava/nio/charset/Charset;FF[BJ)V -HSPLcom/android/icu/charset/CharsetEncoderICU;->encodeLoop(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult; -HSPLcom/android/icu/charset/CharsetEncoderICU;->getArray(Ljava/nio/ByteBuffer;)I -HSPLcom/android/icu/charset/CharsetEncoderICU;->getArray(Ljava/nio/CharBuffer;)I -HSPLcom/android/icu/charset/CharsetEncoderICU;->implFlush(Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult; -HSPLcom/android/icu/charset/CharsetEncoderICU;->implOnMalformedInput(Ljava/nio/charset/CodingErrorAction;)V -HSPLcom/android/icu/charset/CharsetEncoderICU;->implOnUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)V -HSPLcom/android/icu/charset/CharsetEncoderICU;->implReset()V -HSPLcom/android/icu/charset/CharsetEncoderICU;->makeReplacement(Ljava/lang/String;J)[B -HSPLcom/android/icu/charset/CharsetEncoderICU;->newInstance(Ljava/nio/charset/Charset;Ljava/lang/String;)Lcom/android/icu/charset/CharsetEncoderICU; -HSPLcom/android/icu/charset/CharsetEncoderICU;->setPosition(Ljava/nio/ByteBuffer;)V -HSPLcom/android/icu/charset/CharsetEncoderICU;->setPosition(Ljava/nio/CharBuffer;)V -HSPLcom/android/icu/charset/CharsetEncoderICU;->updateCallback()V -HSPLcom/android/icu/charset/CharsetFactory;->create(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLcom/android/icu/charset/CharsetICU;-><init>(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V -HSPLcom/android/icu/charset/CharsetICU;->newDecoder()Ljava/nio/charset/CharsetDecoder; -HSPLcom/android/icu/charset/CharsetICU;->newEncoder()Ljava/nio/charset/CharsetEncoder; -HSPLcom/android/icu/charset/NativeConverter;->U_FAILURE(I)Z -HSPLcom/android/icu/charset/NativeConverter;->registerConverter(Ljava/lang/Object;J)V -HSPLcom/android/icu/charset/NativeConverter;->setCallbackDecode(JLjava/nio/charset/CharsetDecoder;)V -HSPLcom/android/icu/charset/NativeConverter;->setCallbackEncode(JLjava/nio/charset/CharsetEncoder;)V -HSPLcom/android/icu/charset/NativeConverter;->translateCodingErrorAction(Ljava/nio/charset/CodingErrorAction;)I -HSPLcom/android/icu/text/CompatibleDecimalFormatFactory;->create(Ljava/lang/String;Landroid/icu/text/DecimalFormatSymbols;)Landroid/icu/text/DecimalFormat; -HSPLcom/android/icu/text/ExtendedDecimalFormatSymbols;-><init>(Landroid/icu/util/ULocale;Landroid/icu/text/NumberingSystem;)V -HSPLcom/android/icu/text/ExtendedDecimalFormatSymbols;->getInstance(Landroid/icu/util/ULocale;Landroid/icu/text/NumberingSystem;)Lcom/android/icu/text/ExtendedDecimalFormatSymbols; -HSPLcom/android/icu/text/ExtendedDecimalFormatSymbols;->getLocalizedPatternSeparator()Ljava/lang/String; -HSPLcom/android/icu/text/ExtendedIDNA;->convertIDNToASCII(Ljava/lang/String;I)Ljava/lang/StringBuffer; -HSPLcom/android/icu/text/ExtendedTimeZoneNames;-><clinit>()V -HSPLcom/android/icu/text/ExtendedTimeZoneNames;-><init>(Landroid/icu/util/ULocale;)V -HSPLcom/android/icu/text/ExtendedTimeZoneNames;->getInstance(Landroid/icu/util/ULocale;)Lcom/android/icu/text/ExtendedTimeZoneNames; -HSPLcom/android/icu/text/ExtendedTimeZoneNames;->getTimeZoneNames()Landroid/icu/text/TimeZoneNames; -HSPLcom/android/icu/util/CaseMapperNative;->toLowerCase(Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/String; -HSPLcom/android/icu/util/ExtendedCalendar;-><init>(Landroid/icu/util/ULocale;)V -HSPLcom/android/icu/util/ExtendedCalendar;->getDateTimePattern(II)Ljava/lang/String; -HSPLcom/android/icu/util/ExtendedCalendar;->getInstance(Landroid/icu/util/ULocale;)Lcom/android/icu/util/ExtendedCalendar; -HSPLcom/android/icu/util/ExtendedTimeZone;-><init>(Ljava/lang/String;)V -HSPLcom/android/icu/util/ExtendedTimeZone;->clearDefaultTimeZone()V -HSPLcom/android/icu/util/ExtendedTimeZone;->createZoneOffsetTransitionRule(Landroid/icu/util/AnnualTimeZoneRule;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)Ljava/time/zone/ZoneOffsetTransitionRule; -HSPLcom/android/icu/util/ExtendedTimeZone;->createZoneRules()Ljava/time/zone/ZoneRules; -HSPLcom/android/icu/util/ExtendedTimeZone;->dayOfWeek(Landroid/icu/util/DateTimeRule;)Ljava/time/DayOfWeek; -HSPLcom/android/icu/util/ExtendedTimeZone;->fullOffset(Landroid/icu/util/TimeZoneRule;)Ljava/time/ZoneOffset; -HSPLcom/android/icu/util/ExtendedTimeZone;->getInstance(Ljava/lang/String;)Lcom/android/icu/util/ExtendedTimeZone; -HSPLcom/android/icu/util/ExtendedTimeZone;->localDateTime(JLjava/time/ZoneOffset;)Ljava/time/LocalDateTime; -HSPLcom/android/icu/util/ExtendedTimeZone;->standardOffset(Landroid/icu/util/TimeZoneRule;)Ljava/time/ZoneOffset; -HSPLcom/android/icu/util/ExtendedTimeZone;->timeDefinition(Landroid/icu/util/AnnualTimeZoneRule;)Ljava/time/zone/ZoneOffsetTransitionRule$TimeDefinition; -HSPLcom/android/icu/util/ExtendedTimeZone;->toOffset(I)Ljava/time/ZoneOffset; -HSPLcom/android/icu/util/ExtendedTimeZone;->utcStartTime(JLandroid/icu/util/TimeArrayTimeZoneRule;)J -HSPLcom/android/icu/util/LocaleNative;->getDisplayCountry(Ljava/util/Locale;Ljava/util/Locale;)Ljava/lang/String; -HSPLcom/android/icu/util/LocaleNative;->getDisplayLanguage(Ljava/util/Locale;Ljava/util/Locale;)Ljava/lang/String; -HSPLcom/android/icu/util/LocaleNative;->setDefault(Ljava/lang/String;)V -HSPLcom/android/icu/util/regex/MatcherNative;-><init>(Lcom/android/icu/util/regex/PatternNative;)V -HSPLcom/android/icu/util/regex/MatcherNative;->create(Lcom/android/icu/util/regex/PatternNative;)Lcom/android/icu/util/regex/MatcherNative; -HSPLcom/android/icu/util/regex/MatcherNative;->find(I[I)Z -HSPLcom/android/icu/util/regex/MatcherNative;->findNext([I)Z -HSPLcom/android/icu/util/regex/MatcherNative;->groupCount()I -HSPLcom/android/icu/util/regex/MatcherNative;->hitEnd()Z -HSPLcom/android/icu/util/regex/MatcherNative;->lookingAt([I)Z -HSPLcom/android/icu/util/regex/MatcherNative;->matches([I)Z -HSPLcom/android/icu/util/regex/MatcherNative;->requireEnd()Z -HSPLcom/android/icu/util/regex/MatcherNative;->setInput(Ljava/lang/String;II)V -HSPLcom/android/icu/util/regex/MatcherNative;->useAnchoringBounds(Z)V -HSPLcom/android/icu/util/regex/MatcherNative;->useTransparentBounds(Z)V -HSPLcom/android/icu/util/regex/PatternNative;-><init>(Ljava/lang/String;I)V -HSPLcom/android/icu/util/regex/PatternNative;->create(Ljava/lang/String;I)Lcom/android/icu/util/regex/PatternNative; -HSPLcom/android/icu/util/regex/PatternNative;->openMatcher()J -HSPLcom/android/internal/app/AlertController;-><init>(Landroid/content/Context;Landroid/content/DialogInterface;Landroid/view/Window;)V -HSPLcom/android/internal/app/AlertController;->create(Landroid/content/Context;Landroid/content/DialogInterface;Landroid/view/Window;)Lcom/android/internal/app/AlertController; -HSPLcom/android/internal/app/AlertController;->installContent()V -HSPLcom/android/internal/app/AlertController;->resolvePanel(Landroid/view/View;Landroid/view/View;)Landroid/view/ViewGroup; -HSPLcom/android/internal/app/AlertController;->setBackground(Landroid/content/res/TypedArray;Landroid/view/View;Landroid/view/View;Landroid/view/View;Landroid/view/View;ZZZ)V -HSPLcom/android/internal/app/AlertController;->setupButtons(Landroid/view/ViewGroup;)V -HSPLcom/android/internal/app/AlertController;->setupContent(Landroid/view/ViewGroup;)V -HSPLcom/android/internal/app/AlertController;->setupCustomContent(Landroid/view/ViewGroup;)V -HSPLcom/android/internal/app/AlertController;->setupTitle(Landroid/view/ViewGroup;)V -HSPLcom/android/internal/app/AlertController;->setupView()V -HSPLcom/android/internal/app/AssistUtils;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/app/AssistUtils;->getAssistComponentForUser(I)Landroid/content/ComponentName; -HSPLcom/android/internal/app/IAppOpsActiveCallback$Stub;-><init>()V -HSPLcom/android/internal/app/IAppOpsActiveCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IAppOpsAsyncNotedCallback$Stub;-><init>()V -HSPLcom/android/internal/app/IAppOpsAsyncNotedCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IAppOpsAsyncNotedCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/app/IAppOpsCallback$Stub;-><init>()V -HSPLcom/android/internal/app/IAppOpsCallback$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->checkOperation(IILjava/lang/String;)I -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->checkPackage(ILjava/lang/String;)I -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->extractAsyncOps(Ljava/lang/String;)Ljava/util/List; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->getPackagesForOps([I)Ljava/util/List; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->noteOperation(IILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->reportRuntimeAppOpAccessMessageAndGetConfig(Ljava/lang/String;Landroid/app/SyncNotedAppOp;Ljava/lang/String;)Lcom/android/internal/app/MessageSamplingConfig; -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->shouldCollectNotes(I)Z -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->startWatchingActive([ILcom/android/internal/app/IAppOpsActiveCallback;)V -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->startWatchingAsyncNoted(Ljava/lang/String;Lcom/android/internal/app/IAppOpsAsyncNotedCallback;)V -HSPLcom/android/internal/app/IAppOpsService$Stub$Proxy;->startWatchingModeWithFlags(ILjava/lang/String;ILcom/android/internal/app/IAppOpsCallback;)V -HSPLcom/android/internal/app/IAppOpsService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/app/IAppOpsService; -HSPLcom/android/internal/app/IBatteryStats$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/app/IBatteryStats$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IBatteryStats$Stub$Proxy;->isCharging()Z -HSPLcom/android/internal/app/IBatteryStats$Stub$Proxy;->takeUidSnapshot(I)Landroid/os/health/HealthStatsParceler; -HSPLcom/android/internal/app/IBatteryStats$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/app/IBatteryStats; -HSPLcom/android/internal/app/IVoiceInteractionManagerService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/app/IVoiceInteractionManagerService$Stub$Proxy;->notifyActivityEventChanged(Landroid/os/IBinder;I)V -HSPLcom/android/internal/app/IVoiceInteractionManagerService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/app/IVoiceInteractionManagerService; -HSPLcom/android/internal/app/IVoiceInteractor$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/app/IVoiceInteractor; -HSPLcom/android/internal/app/MessageSamplingConfig$1;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/app/MessageSamplingConfig; -HSPLcom/android/internal/app/MessageSamplingConfig$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/app/MessageSamplingConfig;-><init>(Landroid/os/Parcel;)V -HSPLcom/android/internal/app/MessageSamplingConfig;->getAcceptableLeftDistance()I -HSPLcom/android/internal/app/MessageSamplingConfig;->getExpirationTimeSinceBootMillis()J -HSPLcom/android/internal/app/MessageSamplingConfig;->getSampledOpCode()I -HSPLcom/android/internal/app/ProcessMap;->get(Ljava/lang/String;I)Ljava/lang/Object; -HSPLcom/android/internal/app/procstats/AssociationState$SourceState;->getAssociationState()Lcom/android/internal/app/procstats/AssociationState; -HSPLcom/android/internal/app/procstats/AssociationState$SourceState;->startActive(J)V -HSPLcom/android/internal/app/procstats/AssociationState$SourceState;->trackProcState(IIJ)V -HSPLcom/android/internal/app/procstats/AssociationState;->getProcess()Lcom/android/internal/app/procstats/ProcessState; -HSPLcom/android/internal/app/procstats/ProcessState;->getCombinedState()I -HSPLcom/android/internal/app/procstats/ProcessStats;->splitAndParseNumbers(Ljava/lang/String;)[I -HSPLcom/android/internal/app/procstats/ProcessStats;->updateTrackingAssociationsLocked(IJ)V -HSPLcom/android/internal/app/procstats/SparseMappingTable$Table;->assertConsistency()V -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;->getAppWidgetIds(Landroid/content/ComponentName;)[I -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;->getInstalledProvidersForProfile(IILjava/lang/String;)Landroid/content/pm/ParceledListSlice; -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;->notifyProviderInheritance([Landroid/content/ComponentName;)V -HSPLcom/android/internal/appwidget/IAppWidgetService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/appwidget/IAppWidgetService; -HSPLcom/android/internal/colorextraction/ColorExtractor$GradientColors;->getMainColor()I -HSPLcom/android/internal/colorextraction/ColorExtractor$GradientColors;->supportsDarkText()Z -HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;-><init>(JI)V -HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Lcom/android/internal/compat/ChangeReporter$ChangeReport; -HSPLcom/android/internal/compat/ChangeReporter$ChangeReport;->hashCode()I -HSPLcom/android/internal/compat/ChangeReporter;-><init>(I)V -HSPLcom/android/internal/compat/ChangeReporter;->debugLog(IJI)V -HSPLcom/android/internal/compat/ChangeReporter;->isAlreadyReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)Z+]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashSet; -HSPLcom/android/internal/compat/ChangeReporter;->markAsReported(ILcom/android/internal/compat/ChangeReporter$ChangeReport;)V+]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashSet; -HSPLcom/android/internal/compat/ChangeReporter;->reportChange(IJI)V+]Lcom/android/internal/compat/ChangeReporter;Lcom/android/internal/compat/ChangeReporter; -HSPLcom/android/internal/compat/ChangeReporter;->shouldWriteToDebug(IJI)Z -HSPLcom/android/internal/compat/ChangeReporter;->shouldWriteToStatsLog(IJI)Z -HSPLcom/android/internal/compat/ChangeReporter;->stateToString(I)Ljava/lang/String; -HSPLcom/android/internal/compat/IPlatformCompat$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/compat/IPlatformCompat; -HSPLcom/android/internal/content/PackageMonitor;-><init>()V -HSPLcom/android/internal/content/ReferrerIntent$1;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/content/ReferrerIntent; -HSPLcom/android/internal/content/ReferrerIntent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/display/BrightnessSynchronizer;-><clinit>()V -HSPLcom/android/internal/display/BrightnessSynchronizer;->floatEquals(FF)Z -HSPLcom/android/internal/graphics/ColorUtils;->HSLToColor([F)I -HSPLcom/android/internal/graphics/ColorUtils;->RGBToHSL(III[F)V -HSPLcom/android/internal/graphics/ColorUtils;->colorToHSL(I[F)V -HSPLcom/android/internal/graphics/SfVsyncFrameCallbackProvider;-><init>()V -HSPLcom/android/internal/graphics/SfVsyncFrameCallbackProvider;->getFrameTime()J -HSPLcom/android/internal/graphics/SfVsyncFrameCallbackProvider;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V -HSPLcom/android/internal/graphics/cam/Cam;-><init>(FFFFFFFFF)V -HSPLcom/android/internal/graphics/cam/Cam;->fromInt(I)Lcom/android/internal/graphics/cam/Cam; -HSPLcom/android/internal/graphics/cam/Cam;->fromIntInFrame(ILcom/android/internal/graphics/cam/Frame;)Lcom/android/internal/graphics/cam/Cam; -HSPLcom/android/internal/graphics/cam/Cam;->getChroma()F -HSPLcom/android/internal/graphics/cam/Cam;->getHue()F -HSPLcom/android/internal/graphics/cam/CamUtils;-><clinit>()V -HSPLcom/android/internal/graphics/cam/CamUtils;->linearized(I)F -HSPLcom/android/internal/graphics/cam/CamUtils;->xyzFromInt(I)[F -HSPLcom/android/internal/graphics/cam/Frame;-><clinit>()V -HSPLcom/android/internal/graphics/cam/Frame;-><init>(FFFFFF[FFFF)V -HSPLcom/android/internal/graphics/cam/Frame;->getAw()F -HSPLcom/android/internal/graphics/cam/Frame;->getC()F -HSPLcom/android/internal/graphics/cam/Frame;->getFl()F -HSPLcom/android/internal/graphics/cam/Frame;->getFlRoot()F -HSPLcom/android/internal/graphics/cam/Frame;->getN()F -HSPLcom/android/internal/graphics/cam/Frame;->getNbb()F -HSPLcom/android/internal/graphics/cam/Frame;->getNc()F -HSPLcom/android/internal/graphics/cam/Frame;->getNcb()F -HSPLcom/android/internal/graphics/cam/Frame;->getRgbD()[F -HSPLcom/android/internal/graphics/cam/Frame;->getZ()F -HSPLcom/android/internal/graphics/cam/Frame;->make([FFFFZ)Lcom/android/internal/graphics/cam/Frame; -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;-><init>(Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable;Landroid/content/res/Resources;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;->addDrawable(Landroid/graphics/drawable/Drawable;)I -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;->canApplyTheme()Z -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;->getCurrentDrawableIndexBasedOnScale()I -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;->mutate()V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;->newDrawable(Landroid/content/res/Resources;)Landroid/graphics/drawable/Drawable; -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;-><init>()V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;-><init>(Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;Landroid/content/res/Resources;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;-><init>(Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState;Landroid/content/res/Resources;Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable-IA;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->applyTheme(Landroid/content/res/Resources$Theme;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->clearMutated()V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->inflate(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->inflateChildElements(Landroid/content/res/Resources;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/content/res/Resources$Theme;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->mutate()Landroid/graphics/drawable/Drawable; -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->onStateChange([I)Z -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->setConstantState(Landroid/graphics/drawable/DrawableContainer$DrawableContainerState;)V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->start()V -HSPLcom/android/internal/graphics/drawable/AnimationScaleListDrawable;->stop()V -HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;-><init>(Landroid/view/ViewRootImpl;)V -HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;->hasRegions()Z -HSPLcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator;->hasUpdates()Z -HSPLcom/android/internal/infra/AndroidFuture$1;->complete(Lcom/android/internal/infra/AndroidFuture;)V -HSPLcom/android/internal/infra/AndroidFuture$2;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/infra/AndroidFuture; -HSPLcom/android/internal/infra/AndroidFuture$2;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/infra/AndroidFuture;-><init>()V -HSPLcom/android/internal/infra/AndroidFuture;-><init>(Landroid/os/Parcel;)V -HSPLcom/android/internal/infra/AndroidFuture;->cancelTimeout()Lcom/android/internal/infra/AndroidFuture; -HSPLcom/android/internal/infra/AndroidFuture;->complete(Ljava/lang/Object;)Z -HSPLcom/android/internal/infra/AndroidFuture;->getMainHandler()Landroid/os/Handler; -HSPLcom/android/internal/infra/AndroidFuture;->onCompleted(Ljava/lang/Object;Ljava/lang/Throwable;)V -HSPLcom/android/internal/infra/AndroidFuture;->writeToParcel(Landroid/os/Parcel;I)V -HSPLcom/android/internal/infra/IAndroidFuture$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/infra/IAndroidFuture$Stub$Proxy;->complete(Lcom/android/internal/infra/AndroidFuture;)V -HSPLcom/android/internal/infra/IAndroidFuture$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/inputmethod/EditableInputConnection;-><init>(Landroid/widget/TextView;)V -HSPLcom/android/internal/inputmethod/EditableInputConnection;->beginBatchEdit()Z -HSPLcom/android/internal/inputmethod/EditableInputConnection;->closeConnection()V -HSPLcom/android/internal/inputmethod/EditableInputConnection;->commitText(Ljava/lang/CharSequence;I)Z -HSPLcom/android/internal/inputmethod/EditableInputConnection;->endBatchEdit()Z -HSPLcom/android/internal/inputmethod/EditableInputConnection;->endComposingRegionEditInternal()V -HSPLcom/android/internal/inputmethod/EditableInputConnection;->getEditable()Landroid/text/Editable; -HSPLcom/android/internal/inputmethod/EditableInputConnection;->setImeConsumesInput(Z)Z -HSPLcom/android/internal/inputmethod/IImeTracker$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/inputmethod/IImeTracker$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/inputmethod/IImeTracker$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/inputmethod/IImeTracker; -HSPLcom/android/internal/inputmethod/IInputMethodClient$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/inputmethod/IInputMethodClient$Stub;->getMaxTransactionId()I -HSPLcom/android/internal/inputmethod/IInputMethodClient$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;->finishInput()V -HSPLcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;->updateSelection(IIIIII)V -HSPLcom/android/internal/inputmethod/IInputMethodSession$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/inputmethod/IInputMethodSession; -HSPLcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection$Stub;-><init>()V -HSPLcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/inputmethod/IRemoteInputConnection$Stub;-><init>()V -HSPLcom/android/internal/inputmethod/IRemoteInputConnection$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/inputmethod/IRemoteInputConnection$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/inputmethod/ImeTracing;-><clinit>()V -HSPLcom/android/internal/inputmethod/ImeTracing;-><init>()V -HSPLcom/android/internal/inputmethod/ImeTracing;->getInstance()Lcom/android/internal/inputmethod/ImeTracing; -HSPLcom/android/internal/inputmethod/ImeTracing;->isEnabled()Z -HSPLcom/android/internal/inputmethod/ImeTracing;->isSystemProcess()Z -HSPLcom/android/internal/inputmethod/ImeTracingClientImpl;-><init>()V -HSPLcom/android/internal/inputmethod/ImeTracingClientImpl;->triggerClientDump(Ljava/lang/String;Landroid/view/inputmethod/InputMethodManager;[B)V -HSPLcom/android/internal/inputmethod/InputBindResult$1;-><init>()V -HSPLcom/android/internal/inputmethod/InputBindResult$1;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/inputmethod/InputBindResult; -HSPLcom/android/internal/inputmethod/InputBindResult$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/inputmethod/InputBindResult;-><clinit>()V -HSPLcom/android/internal/inputmethod/InputBindResult;-><init>(Landroid/os/Parcel;)V -HSPLcom/android/internal/inputmethod/InputBindResult;-><init>(Landroid/os/Parcel;Lcom/android/internal/inputmethod/InputBindResult-IA;)V -HSPLcom/android/internal/inputmethod/InputBindResult;->error(I)Lcom/android/internal/inputmethod/InputBindResult; -HSPLcom/android/internal/inputmethod/InputConnectionCommandHeader$1;-><init>()V -HSPLcom/android/internal/inputmethod/InputConnectionCommandHeader$1;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/inputmethod/InputConnectionCommandHeader; -HSPLcom/android/internal/inputmethod/InputConnectionCommandHeader$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/inputmethod/InputConnectionCommandHeader;-><clinit>()V -HSPLcom/android/internal/inputmethod/InputConnectionCommandHeader;-><init>(I)V -HSPLcom/android/internal/inputmethod/InputMethodDebug;->softInputDisplayReasonToString(I)Ljava/lang/String; -HSPLcom/android/internal/inputmethod/SubtypeLocaleUtils;->constructLocaleFromString(Ljava/lang/String;)Ljava/util/Locale; -HSPLcom/android/internal/jank/FrameTracker$FrameMetricsWrapper;-><init>()V -HSPLcom/android/internal/jank/FrameTracker$FrameMetricsWrapper;->getMetric(I)J -HSPLcom/android/internal/jank/FrameTracker$FrameMetricsWrapper;->getTiming()[J -HSPLcom/android/internal/jank/FrameTracker$ThreadedRendererWrapper;-><init>(Landroid/view/ThreadedRenderer;)V -HSPLcom/android/internal/jank/FrameTracker$ThreadedRendererWrapper;->addObserver(Landroid/graphics/HardwareRendererObserver;)V -HSPLcom/android/internal/jank/FrameTracker$ThreadedRendererWrapper;->removeObserver(Landroid/graphics/HardwareRendererObserver;)V -HSPLcom/android/internal/jank/FrameTracker;->begin()V -HSPLcom/android/internal/jank/FrameTracker;->onFrameMetricsAvailable(I)V -HSPLcom/android/internal/jank/InteractionJankMonitor$InstanceHolder;-><clinit>()V -HSPLcom/android/internal/jank/InteractionJankMonitor;->-$$Nest$sfgetDEFAULT_WORKER_NAME()Ljava/lang/String; -HSPLcom/android/internal/jank/InteractionJankMonitor;-><clinit>()V -HSPLcom/android/internal/jank/InteractionJankMonitor;-><init>(Landroid/os/HandlerThread;)V -HSPLcom/android/internal/jank/InteractionJankMonitor;->cancel(I)Z -HSPLcom/android/internal/jank/InteractionJankMonitor;->end(I)Z -HSPLcom/android/internal/jank/InteractionJankMonitor;->getInstance()Lcom/android/internal/jank/InteractionJankMonitor; -HSPLcom/android/internal/jank/InteractionJankMonitor;->postEventLogToWorkerThread(Lcom/android/internal/jank/InteractionJankMonitor$TimeFunction;)V -HSPLcom/android/internal/listeners/ListenerExecutor$$ExternalSyntheticLambda0;-><init>(Ljava/lang/Object;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V -HSPLcom/android/internal/listeners/ListenerExecutor$$ExternalSyntheticLambda0;->run()V -HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onComplete(Z)V -HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onPostExecute(Z)V -HSPLcom/android/internal/listeners/ListenerExecutor$ListenerOperation;->onPreExecute()V -HSPLcom/android/internal/listeners/ListenerExecutor;->executeSafely(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;)V -HSPLcom/android/internal/listeners/ListenerExecutor;->executeSafely(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V+]Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda2;,Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda3;]Ljava/util/concurrent/Executor;Landroid/net/connectivity/com/android/modules/utils/HandlerExecutor;,Landroid/os/HandlerExecutor;,Lcom/android/wifi/x/com/android/modules/utils/HandlerExecutor;]Ljava/util/function/Supplier;Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda1; -HSPLcom/android/internal/listeners/ListenerExecutor;->lambda$executeSafely$0(Ljava/lang/Object;Ljava/util/function/Supplier;Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;Lcom/android/internal/listeners/ListenerExecutor$FailureCallback;)V -HSPLcom/android/internal/logging/AndroidConfig;-><init>()V -HSPLcom/android/internal/logging/AndroidHandler$1;->format(Ljava/util/logging/LogRecord;)Ljava/lang/String; -HSPLcom/android/internal/logging/AndroidHandler;-><init>()V -HSPLcom/android/internal/logging/AndroidHandler;->getAndroidLevel(Ljava/util/logging/Level;)I -HSPLcom/android/internal/logging/AndroidHandler;->loggerNameToTag(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/logging/AndroidHandler;->publish(Ljava/util/logging/LogRecord;)V -HSPLcom/android/internal/logging/EventLogTags;->writeSysuiMultiAction([Ljava/lang/Object;)V -HSPLcom/android/internal/logging/InstanceId$1;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/logging/InstanceId; -HSPLcom/android/internal/logging/InstanceId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; -HSPLcom/android/internal/logging/InstanceId;-><init>(I)V -HSPLcom/android/internal/logging/InstanceId;->getId()I -HSPLcom/android/internal/logging/InstanceIdSequence;-><init>(I)V -HSPLcom/android/internal/logging/InstanceIdSequence;->newInstanceId()Lcom/android/internal/logging/InstanceId; -HSPLcom/android/internal/logging/InstanceIdSequence;->newInstanceIdInternal(I)Lcom/android/internal/logging/InstanceId; -HSPLcom/android/internal/logging/MetricsLogger;-><init>()V -HSPLcom/android/internal/logging/MetricsLogger;->action(II)V -HSPLcom/android/internal/logging/MetricsLogger;->action(Landroid/content/Context;II)V -HSPLcom/android/internal/logging/MetricsLogger;->action(Landroid/metrics/LogMaker;)V -HSPLcom/android/internal/logging/MetricsLogger;->count(Landroid/content/Context;Ljava/lang/String;I)V -HSPLcom/android/internal/logging/MetricsLogger;->count(Ljava/lang/String;I)V -HSPLcom/android/internal/logging/MetricsLogger;->getLogger()Lcom/android/internal/logging/MetricsLogger; -HSPLcom/android/internal/logging/MetricsLogger;->hidden(I)V -HSPLcom/android/internal/logging/MetricsLogger;->histogram(Ljava/lang/String;I)V -HSPLcom/android/internal/logging/MetricsLogger;->saveLog(Landroid/metrics/LogMaker;)V -HSPLcom/android/internal/logging/MetricsLogger;->visible(I)V -HSPLcom/android/internal/logging/MetricsLogger;->write(Landroid/metrics/LogMaker;)V -HSPLcom/android/internal/logging/UiEventLoggerImpl;-><init>()V -HSPLcom/android/internal/logging/UiEventLoggerImpl;->log(Lcom/android/internal/logging/UiEventLogger$UiEventEnum;)V -HSPLcom/android/internal/logging/UiEventLoggerImpl;->log(Lcom/android/internal/logging/UiEventLogger$UiEventEnum;ILjava/lang/String;)V -HSPLcom/android/internal/logging/UiEventLoggerImpl;->logWithInstanceId(Lcom/android/internal/logging/UiEventLogger$UiEventEnum;ILjava/lang/String;Lcom/android/internal/logging/InstanceId;)V -HSPLcom/android/internal/net/NetworkUtilsInternal;-><clinit>()V -HSPLcom/android/internal/os/AndroidPrintStream;-><init>(ILjava/lang/String;)V -HSPLcom/android/internal/os/AndroidPrintStream;->log(Ljava/lang/String;)V -HSPLcom/android/internal/os/BackgroundThread;-><init>()V -HSPLcom/android/internal/os/BackgroundThread;->ensureThreadLocked()V -HSPLcom/android/internal/os/BackgroundThread;->getExecutor()Ljava/util/concurrent/Executor; -HSPLcom/android/internal/os/BackgroundThread;->getHandler()Landroid/os/Handler; -HSPLcom/android/internal/os/BinderCallsStats$SettingsObserver;-><init>(Landroid/content/Context;Lcom/android/internal/os/BinderCallsStats;)V -HSPLcom/android/internal/os/BinderCallsStats$SettingsObserver;->configureLatencyObserver(Landroid/util/KeyValueListParser;Lcom/android/internal/os/BinderLatencyObserver;)V -HSPLcom/android/internal/os/BinderCallsStats$SettingsObserver;->onChange()V -HSPLcom/android/internal/os/BinderCallsStats;->callEnded(Lcom/android/internal/os/BinderInternal$CallSession;III)V -HSPLcom/android/internal/os/BinderCallsStats;->callStarted(Landroid/os/Binder;II)Lcom/android/internal/os/BinderInternal$CallSession; -HSPLcom/android/internal/os/BinderCallsStats;->canCollect()Z -HSPLcom/android/internal/os/BinderCallsStats;->getElapsedRealtimeMicro()J -HSPLcom/android/internal/os/BinderCallsStats;->getNativeTid()I -HSPLcom/android/internal/os/BinderCallsStats;->noteBinderThreadNativeIds()V -HSPLcom/android/internal/os/BinderCallsStats;->noteNativeThreadId()V -HSPLcom/android/internal/os/BinderCallsStats;->processCallEnded(Lcom/android/internal/os/BinderInternal$CallSession;III)V -HSPLcom/android/internal/os/BinderCallsStats;->shouldRecordDetailedData()Z -HSPLcom/android/internal/os/BinderDeathDispatcher;->linkToDeath(Landroid/os/IInterface;Landroid/os/IBinder$DeathRecipient;)I -HSPLcom/android/internal/os/BinderInternal$GcWatcher;-><init>()V -HSPLcom/android/internal/os/BinderInternal$GcWatcher;->finalize()V -HSPLcom/android/internal/os/BinderInternal;->addGcWatcher(Ljava/lang/Runnable;)V -HSPLcom/android/internal/os/BinderInternal;->forceBinderGc()V -HSPLcom/android/internal/os/BinderInternal;->forceGc(Ljava/lang/String;)V -HSPLcom/android/internal/os/BinderLatencyBuckets;-><init>(IIF)V -HSPLcom/android/internal/os/BinderLatencyBuckets;->sampleToBucket(I)I -HSPLcom/android/internal/os/BinderLatencyObserver$1;-><init>(Lcom/android/internal/os/BinderLatencyObserver;)V -HSPLcom/android/internal/os/BinderLatencyObserver$Injector;-><init>()V -HSPLcom/android/internal/os/BinderLatencyObserver$Injector;->getHandler()Landroid/os/Handler; -HSPLcom/android/internal/os/BinderLatencyObserver$Injector;->getRandomGenerator()Ljava/util/Random; -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;-><init>(Ljava/lang/Class;I)V -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;->create(Ljava/lang/Class;I)Lcom/android/internal/os/BinderLatencyObserver$LatencyDims; -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;->equals(Ljava/lang/Object;)Z -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;->getBinderClass()Ljava/lang/Class; -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;->getTransactionCode()I -HSPLcom/android/internal/os/BinderLatencyObserver$LatencyDims;->hashCode()I -HSPLcom/android/internal/os/BinderLatencyObserver;-><init>(Lcom/android/internal/os/BinderLatencyObserver$Injector;I)V -HSPLcom/android/internal/os/BinderLatencyObserver;->callEnded(Lcom/android/internal/os/BinderInternal$CallSession;)V -HSPLcom/android/internal/os/BinderLatencyObserver;->getElapsedRealtimeMicro()J -HSPLcom/android/internal/os/BinderLatencyObserver;->noteLatencyDelayed()V -HSPLcom/android/internal/os/BinderLatencyObserver;->reset()V -HSPLcom/android/internal/os/BinderLatencyObserver;->setHistogramBucketsParams(IIF)V -HSPLcom/android/internal/os/BinderLatencyObserver;->setPushInterval(I)V -HSPLcom/android/internal/os/BinderLatencyObserver;->setSamplingInterval(I)V -HSPLcom/android/internal/os/BinderLatencyObserver;->setShardingModulo(I)V -HSPLcom/android/internal/os/BinderLatencyObserver;->shouldCollect(Lcom/android/internal/os/BinderLatencyObserver$LatencyDims;)Z -HSPLcom/android/internal/os/BinderLatencyObserver;->shouldKeepSample()Z -HSPLcom/android/internal/os/CachedDeviceState$Readonly;->isCharging()Z -HSPLcom/android/internal/os/ClassLoaderFactory;->createClassLoader(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLcom/android/internal/os/ClassLoaderFactory;->createClassLoader(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;IZLjava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader; -HSPLcom/android/internal/os/ClassLoaderFactory;->isPathClassLoaderName(Ljava/lang/String;)Z -HSPLcom/android/internal/os/HandlerCaller$MyHandler;-><init>(Lcom/android/internal/os/HandlerCaller;Landroid/os/Looper;Z)V -HSPLcom/android/internal/os/HandlerCaller$MyHandler;->handleMessage(Landroid/os/Message;)V -HSPLcom/android/internal/os/HandlerCaller;-><init>(Landroid/content/Context;Landroid/os/Looper;Lcom/android/internal/os/HandlerCaller$Callback;Z)V -HSPLcom/android/internal/os/HandlerCaller;->obtainMessage(I)Landroid/os/Message; -HSPLcom/android/internal/os/HandlerCaller;->obtainMessageI(II)Landroid/os/Message; -HSPLcom/android/internal/os/HandlerCaller;->obtainMessageIO(IILjava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/os/HandlerCaller;->obtainMessageIOO(IILjava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/os/HandlerCaller;->obtainMessageO(ILjava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/os/HandlerCaller;->obtainMessageOO(ILjava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/os/IDropBoxManagerService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/os/IDropBoxManagerService; -HSPLcom/android/internal/os/IResultReceiver$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/os/IResultReceiver$Stub$Proxy;->send(ILandroid/os/Bundle;)V -HSPLcom/android/internal/os/IResultReceiver$Stub;-><init>()V -HSPLcom/android/internal/os/IResultReceiver$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/os/IResultReceiver$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/os/IResultReceiver; -HSPLcom/android/internal/os/IResultReceiver$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLcom/android/internal/os/IResultReceiver$Stub;->getMaxTransactionId()I -HSPLcom/android/internal/os/IResultReceiver$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLcom/android/internal/os/IResultReceiver$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/os/KernelCpuProcStringReader$ProcFileIterator;->nextLine()Ljava/nio/CharBuffer; -HSPLcom/android/internal/os/KernelCpuProcStringReader;->asLongs(Ljava/nio/CharBuffer;[J)I -HSPLcom/android/internal/os/KernelCpuProcStringReader;->isNumber(C)Z -HSPLcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;->copyToCurTimes()V -HSPLcom/android/internal/os/LoggingPrintStream$1;-><init>()V -HSPLcom/android/internal/os/LoggingPrintStream;-><init>()V -HSPLcom/android/internal/os/LoggingPrintStream;->flush(Z)V -HSPLcom/android/internal/os/LoggingPrintStream;->println(Ljava/lang/Object;)V -HSPLcom/android/internal/os/LoggingPrintStream;->println(Ljava/lang/String;)V -HSPLcom/android/internal/os/LooperStats;->deviceStateAllowsCollection()Z -HSPLcom/android/internal/os/LooperStats;->messageDispatchStarting()Ljava/lang/Object; -HSPLcom/android/internal/os/LooperStats;->messageDispatched(Ljava/lang/Object;Landroid/os/Message;)V -HSPLcom/android/internal/os/ProcStatsUtil;->readTerminatedProcFile(Ljava/lang/String;B)Ljava/lang/String; -HSPLcom/android/internal/os/ProcTimeInStateReader;->initializeTimeInStateFormat(Ljava/nio/file/Path;)V -HSPLcom/android/internal/os/ProcessCpuTracker$Stats;-><init>(IIZ)V -HSPLcom/android/internal/os/ProcessCpuTracker$Stats;->getUid(Ljava/lang/String;)I -HSPLcom/android/internal/os/ProcessCpuTracker;->collectStats(Ljava/lang/String;IZ[ILjava/util/ArrayList;)[I -HSPLcom/android/internal/os/ProcessCpuTracker;->getName(Lcom/android/internal/os/ProcessCpuTracker$Stats;Ljava/lang/String;)V -HSPLcom/android/internal/os/ProcessCpuTracker;->onMeasureProcessName(Ljava/lang/String;)I -HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1;-><init>()V -HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1;->get()Ljava/lang/Object; -HSPLcom/android/internal/os/RuntimeInit$Arguments;-><init>([Ljava/lang/String;)V -HSPLcom/android/internal/os/RuntimeInit$Arguments;->parseArgs([Ljava/lang/String;)V -HSPLcom/android/internal/os/RuntimeInit$KillApplicationHandler;-><init>(Lcom/android/internal/os/RuntimeInit$LoggingHandler;)V -HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>()V -HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>(Lcom/android/internal/os/RuntimeInit$LoggingHandler-IA;)V -HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;-><init>(Ljava/lang/reflect/Method;[Ljava/lang/String;)V -HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;->run()V -HSPLcom/android/internal/os/RuntimeInit;->applicationInit(I[J[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/RuntimeInit;->commonInit()V -HSPLcom/android/internal/os/RuntimeInit;->findStaticMain(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/RuntimeInit;->getApplicationObject()Landroid/os/IBinder; -HSPLcom/android/internal/os/RuntimeInit;->getDefaultUserAgent()Ljava/lang/String; -HSPLcom/android/internal/os/RuntimeInit;->lambda$commonInit$0()Ljava/lang/String; -HSPLcom/android/internal/os/RuntimeInit;->redirectLogStreams()V -HSPLcom/android/internal/os/RuntimeInit;->setApplicationObject(Landroid/os/IBinder;)V -HSPLcom/android/internal/os/RuntimeInit;->wtf(Ljava/lang/String;Ljava/lang/Throwable;Z)V -HSPLcom/android/internal/os/SafeZipPathValidatorCallback;-><init>()V -HSPLcom/android/internal/os/SafeZipPathValidatorCallback;->onZipEntryAccess(Ljava/lang/String;)V -HSPLcom/android/internal/os/SomeArgs;-><init>()V -HSPLcom/android/internal/os/SomeArgs;->clear()V -HSPLcom/android/internal/os/SomeArgs;->obtain()Lcom/android/internal/os/SomeArgs; -HSPLcom/android/internal/os/SomeArgs;->recycle()V -HSPLcom/android/internal/os/StatsdHiddenApiUsageLogger;->getInstance()Lcom/android/internal/os/StatsdHiddenApiUsageLogger; -HSPLcom/android/internal/os/StatsdHiddenApiUsageLogger;->hiddenApiUsed(ILjava/lang/String;Ljava/lang/String;IZ)V -HSPLcom/android/internal/os/StatsdHiddenApiUsageLogger;->newLogUsage(Ljava/lang/String;IZ)V -HSPLcom/android/internal/os/StatsdHiddenApiUsageLogger;->setHiddenApiAccessLogSampleRates(II)V -HSPLcom/android/internal/os/Zygote;->applyDebuggerSystemProperty(Lcom/android/internal/os/ZygoteArguments;)V -HSPLcom/android/internal/os/Zygote;->applyInvokeWithSecurityPolicy(Lcom/android/internal/os/ZygoteArguments;Landroid/net/Credentials;)V -HSPLcom/android/internal/os/Zygote;->applyInvokeWithSystemProperty(Lcom/android/internal/os/ZygoteArguments;)V -HSPLcom/android/internal/os/Zygote;->applyUidSecurityPolicy(Lcom/android/internal/os/ZygoteArguments;Landroid/net/Credentials;)V -HSPLcom/android/internal/os/Zygote;->callPostForkChildHooks(IZZLjava/lang/String;)V -HSPLcom/android/internal/os/Zygote;->containsInetGid([I)Z -HSPLcom/android/internal/os/Zygote;->createManagedSocketFromInitSocket(Ljava/lang/String;)Landroid/net/LocalServerSocket; -HSPLcom/android/internal/os/Zygote;->forkAndSpecialize(II[II[[IILjava/lang/String;Ljava/lang/String;[I[IZLjava/lang/String;Ljava/lang/String;Z[Ljava/lang/String;[Ljava/lang/String;ZZZ)I -HSPLcom/android/internal/os/Zygote;->forkSystemServer(II[II[[IJJ)I -HSPLcom/android/internal/os/Zygote;->getConfigurationProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/os/Zygote;->getUsapPoolEventFD()Ljava/io/FileDescriptor; -HSPLcom/android/internal/os/Zygote;->getWrapProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/os/Zygote;->initNativeState(Z)V -HSPLcom/android/internal/os/Zygote;->minChildUid(Landroid/net/Credentials;)I -HSPLcom/android/internal/os/Zygote;->setAppProcessName(Lcom/android/internal/os/ZygoteArguments;Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteArguments;-><init>(Lcom/android/internal/os/ZygoteCommandBuffer;I)V -HSPLcom/android/internal/os/ZygoteArguments;->getAssignmentList(Ljava/lang/String;)[Ljava/lang/String; -HSPLcom/android/internal/os/ZygoteArguments;->getAssignmentValue(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/os/ZygoteArguments;->getInstance(Lcom/android/internal/os/ZygoteCommandBuffer;)Lcom/android/internal/os/ZygoteArguments; -HSPLcom/android/internal/os/ZygoteArguments;->parseArgs(Lcom/android/internal/os/ZygoteCommandBuffer;I)V -HSPLcom/android/internal/os/ZygoteCommandBuffer;-><init>(Landroid/net/LocalSocket;)V -HSPLcom/android/internal/os/ZygoteCommandBuffer;-><init>([Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteCommandBuffer;->close()V -HSPLcom/android/internal/os/ZygoteCommandBuffer;->getCount()I -HSPLcom/android/internal/os/ZygoteCommandBuffer;->nextArg()Ljava/lang/String; -HSPLcom/android/internal/os/ZygoteCommandBuffer;->setCommand([Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteConfig;->getDeviceConfig(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/os/ZygoteConfig;->getInt(Ljava/lang/String;I)I -HSPLcom/android/internal/os/ZygoteConnection$$ExternalSyntheticLambda0;-><init>(II)V -HSPLcom/android/internal/os/ZygoteConnection$$ExternalSyntheticLambda0;->run()V -HSPLcom/android/internal/os/ZygoteConnection$$ExternalSyntheticLambda1;->run()V -HSPLcom/android/internal/os/ZygoteConnection;-><init>(Landroid/net/LocalSocket;Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteConnection;->canPreloadApp()Z -HSPLcom/android/internal/os/ZygoteConnection;->closeSocket()V -HSPLcom/android/internal/os/ZygoteConnection;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLcom/android/internal/os/ZygoteConnection;->handleAbiListQuery()V -HSPLcom/android/internal/os/ZygoteConnection;->handleApiDenylistExemptions(Lcom/android/internal/os/ZygoteServer;[Ljava/lang/String;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteConnection;->handleBootCompleted()V -HSPLcom/android/internal/os/ZygoteConnection;->handleChildProc(Lcom/android/internal/os/ZygoteArguments;Ljava/io/FileDescriptor;Z)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteConnection;->handleHiddenApiAccessLogSampleRate(Lcom/android/internal/os/ZygoteServer;II)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteConnection;->handleParentProc(ILjava/io/FileDescriptor;)V -HSPLcom/android/internal/os/ZygoteConnection;->isClosedByPeer()Z -HSPLcom/android/internal/os/ZygoteConnection;->lambda$handleApiDenylistExemptions$0([Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteConnection;->lambda$handleHiddenApiAccessLogSampleRate$1(II)V -HSPLcom/android/internal/os/ZygoteConnection;->processCommand(Lcom/android/internal/os/ZygoteServer;Z)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteConnection;->setChildPgid(I)V -HSPLcom/android/internal/os/ZygoteConnection;->stateChangeWithUsapPoolReset(Lcom/android/internal/os/ZygoteServer;Ljava/lang/Runnable;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteInit;->cacheNonBootClasspathClassLoaders()V -HSPLcom/android/internal/os/ZygoteInit;->endPreload()V -HSPLcom/android/internal/os/ZygoteInit;->forkSystemServer(Ljava/lang/String;Ljava/lang/String;Lcom/android/internal/os/ZygoteServer;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteInit;->gcAndFinalize()V -HSPLcom/android/internal/os/ZygoteInit;->isExperimentEnabled(Ljava/lang/String;)Z -HSPLcom/android/internal/os/ZygoteInit;->main([Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteInit;->maybePreloadGraphicsDriver()V -HSPLcom/android/internal/os/ZygoteInit;->posixCapabilitiesAsBits([I)J -HSPLcom/android/internal/os/ZygoteInit;->preload(Landroid/util/TimingsTraceLog;)V -HSPLcom/android/internal/os/ZygoteInit;->preloadClasses()V -HSPLcom/android/internal/os/ZygoteInit;->preloadSharedLibraries()V -HSPLcom/android/internal/os/ZygoteInit;->preloadTextResources()V -HSPLcom/android/internal/os/ZygoteInit;->setApiDenylistExemptions([Ljava/lang/String;)V -HSPLcom/android/internal/os/ZygoteInit;->setHiddenApiAccessLogSampleRate(I)V -HSPLcom/android/internal/os/ZygoteInit;->setHiddenApiUsageLogger(Ldalvik/system/VMRuntime$HiddenApiUsageLogger;)V -HSPLcom/android/internal/os/ZygoteInit;->shouldProfileSystemServer()Z -HSPLcom/android/internal/os/ZygoteInit;->warmUpJcaProviders()V -HSPLcom/android/internal/os/ZygoteInit;->zygoteInit(I[J[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteServer;-><init>(Z)V -HSPLcom/android/internal/os/ZygoteServer;->acceptCommandPeer(Ljava/lang/String;)Lcom/android/internal/os/ZygoteConnection; -HSPLcom/android/internal/os/ZygoteServer;->closeServerSocket()V -HSPLcom/android/internal/os/ZygoteServer;->createNewConnection(Landroid/net/LocalSocket;Ljava/lang/String;)Lcom/android/internal/os/ZygoteConnection; -HSPLcom/android/internal/os/ZygoteServer;->fetchUsapPoolPolicyProps()V -HSPLcom/android/internal/os/ZygoteServer;->fetchUsapPoolPolicyPropsWithMinInterval()V -HSPLcom/android/internal/os/ZygoteServer;->getZygoteSocketFileDescriptor()Ljava/io/FileDescriptor; -HSPLcom/android/internal/os/ZygoteServer;->isUsapPoolEnabled()Z -HSPLcom/android/internal/os/ZygoteServer;->runSelectLoop(Ljava/lang/String;)Ljava/lang/Runnable; -HSPLcom/android/internal/os/ZygoteServer;->setForkChild()V -HSPLcom/android/internal/policy/DecorContext;-><init>(Landroid/content/Context;Lcom/android/internal/policy/PhoneWindow;)V -HSPLcom/android/internal/policy/DecorContext;->getAutofillOptions()Landroid/content/AutofillOptions; -HSPLcom/android/internal/policy/DecorContext;->getContentCaptureOptions()Landroid/content/ContentCaptureOptions; -HSPLcom/android/internal/policy/DecorContext;->getResources()Landroid/content/res/Resources;+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLcom/android/internal/policy/DecorContext;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; -HSPLcom/android/internal/policy/DecorContext;->isUiContext()Z -HSPLcom/android/internal/policy/DecorContext;->setPhoneWindow(Lcom/android/internal/policy/PhoneWindow;)V -HSPLcom/android/internal/policy/DecorView$$ExternalSyntheticLambda0;-><init>(Lcom/android/internal/policy/DecorView;)V -HSPLcom/android/internal/policy/DecorView$2;->getPadding(Landroid/graphics/Rect;)Z -HSPLcom/android/internal/policy/DecorView$3;-><init>(Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView$ColorViewState;)V -HSPLcom/android/internal/policy/DecorView$3;->run()V -HSPLcom/android/internal/policy/DecorView$ColorViewAttributes;->isPresent(ZIZ)Z -HSPLcom/android/internal/policy/DecorView$ColorViewAttributes;->isVisible(ZIIZ)Z -HSPLcom/android/internal/policy/DecorView$ColorViewState;-><init>(Lcom/android/internal/policy/DecorView$ColorViewAttributes;)V -HSPLcom/android/internal/policy/DecorView;-><init>(Landroid/content/Context;ILcom/android/internal/policy/PhoneWindow;Landroid/view/WindowManager$LayoutParams;)V -HSPLcom/android/internal/policy/DecorView;->calculateNavigationBarColor(I)I -HSPLcom/android/internal/policy/DecorView;->calculateStatusBarColor(I)I -HSPLcom/android/internal/policy/DecorView;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/DecorView;->dispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/DecorView;->draw(Landroid/graphics/Canvas;)V -HSPLcom/android/internal/policy/DecorView;->drawLegacyNavigationBarBackground(Landroid/graphics/RecordingCanvas;)V -HSPLcom/android/internal/policy/DecorView;->drawableChanged()V -HSPLcom/android/internal/policy/DecorView;->finishChanging()V -HSPLcom/android/internal/policy/DecorView;->getAccessibilityViewId()I -HSPLcom/android/internal/policy/DecorView;->getBackground()Landroid/graphics/drawable/Drawable; -HSPLcom/android/internal/policy/DecorView;->getNavBarSize(III)I -HSPLcom/android/internal/policy/DecorView;->getResources()Landroid/content/res/Resources;+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/DecorView;->getTitleSuffix(Landroid/view/WindowManager$LayoutParams;)Ljava/lang/String; -HSPLcom/android/internal/policy/DecorView;->getWindowInsetsController()Landroid/view/WindowInsetsController; -HSPLcom/android/internal/policy/DecorView;->initializeElevation()V -HSPLcom/android/internal/policy/DecorView;->isNavBarToLeftEdge(II)Z -HSPLcom/android/internal/policy/DecorView;->isNavBarToRightEdge(II)Z -HSPLcom/android/internal/policy/DecorView;->onApplyWindowInsets(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLcom/android/internal/policy/DecorView;->onAttachedToWindow()V -HSPLcom/android/internal/policy/DecorView;->onCloseSystemDialogs(Ljava/lang/String;)V -HSPLcom/android/internal/policy/DecorView;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLcom/android/internal/policy/DecorView;->onContentDrawn(IIII)Z -HSPLcom/android/internal/policy/DecorView;->onDetachedFromWindow()V -HSPLcom/android/internal/policy/DecorView;->onDraw(Landroid/graphics/Canvas;)V -HSPLcom/android/internal/policy/DecorView;->onInterceptTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/DecorView;->onLayout(ZIIII)V+]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/DecorView;->onMeasure(II)V+]Landroid/content/Context;Lcom/android/internal/policy/DecorContext;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/util/TypedValue;Landroid/util/TypedValue;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; -HSPLcom/android/internal/policy/DecorView;->onPostDraw(Landroid/graphics/RecordingCanvas;)V -HSPLcom/android/internal/policy/DecorView;->onResourcesLoaded(Landroid/view/LayoutInflater;I)V -HSPLcom/android/internal/policy/DecorView;->onRootViewScrollYChanged(I)V -HSPLcom/android/internal/policy/DecorView;->onSystemBarAppearanceChanged(I)V -HSPLcom/android/internal/policy/DecorView;->onTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/DecorView;->onWindowFocusChanged(Z)V -HSPLcom/android/internal/policy/DecorView;->onWindowSystemUiVisibilityChanged(I)V -HSPLcom/android/internal/policy/DecorView;->providePendingInsetsController()Landroid/view/PendingInsetsController; -HSPLcom/android/internal/policy/DecorView;->removeBackgroundBlurDrawable()V -HSPLcom/android/internal/policy/DecorView;->sendAccessibilityEvent(I)V -HSPLcom/android/internal/policy/DecorView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/policy/DecorView;->setBackgroundFallback(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/policy/DecorView;->setColor(Landroid/view/View;IIZZ)V -HSPLcom/android/internal/policy/DecorView;->setFrame(IIII)Z+]Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/ColorDrawable;,Landroid/graphics/drawable/GradientDrawable;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/DecorView;->setWindow(Lcom/android/internal/policy/PhoneWindow;)V -HSPLcom/android/internal/policy/DecorView;->setWindowBackground(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/policy/DecorView;->setWindowFrame(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/policy/DecorView;->startChanging()V -HSPLcom/android/internal/policy/DecorView;->superDispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/DecorView;->superDispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/DecorView;->updateBackgroundBlurRadius()V -HSPLcom/android/internal/policy/DecorView;->updateBackgroundDrawable()V -HSPLcom/android/internal/policy/DecorView;->updateColorViewInt(Lcom/android/internal/policy/DecorView$ColorViewState;IIIZZIZZI)V+]Landroid/view/View;Landroid/view/View;]Landroid/view/ViewPropertyAnimator;Landroid/view/ViewPropertyAnimator;]Lcom/android/internal/policy/DecorView$ColorViewAttributes;Lcom/android/internal/policy/DecorView$ColorViewAttributes;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; -HSPLcom/android/internal/policy/DecorView;->updateColorViewTranslations()V -HSPLcom/android/internal/policy/DecorView;->updateColorViews(Landroid/view/WindowInsets;Z)Landroid/view/WindowInsets;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/ViewGroup;Landroid/widget/LinearLayout;]Landroid/view/WindowInsets;Landroid/view/WindowInsets;]Landroid/view/WindowInsetsController;Landroid/view/InsetsController;,Landroid/view/PendingInsetsController;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow; -HSPLcom/android/internal/policy/DecorView;->updateElevation()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/DecorView;->updateLogTag(Landroid/view/WindowManager$LayoutParams;)V -HSPLcom/android/internal/policy/DecorView;->updateStatusGuard(Landroid/view/WindowInsets;)Landroid/view/WindowInsets; -HSPLcom/android/internal/policy/DecorView;->willYouTakeTheInputQueue()Landroid/view/InputQueue$Callback; -HSPLcom/android/internal/policy/DecorView;->willYouTakeTheSurface()Landroid/view/SurfaceHolder$Callback2; -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver$1;-><init>(Lcom/android/internal/policy/GestureNavigationSettingsObserver;)V -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;-><init>(Landroid/os/Handler;Landroid/content/Context;Ljava/lang/Runnable;)V -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->areNavigationButtonForcedVisible()Z -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->getLeftSensitivity(Landroid/content/res/Resources;)I -HSPLcom/android/internal/policy/GestureNavigationSettingsObserver;->getRightSensitivity(Landroid/content/res/Resources;)I -HSPLcom/android/internal/policy/IKeyguardLockedStateListener$Stub;-><init>()V -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->getAudioManager()Landroid/media/AudioManager; -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->onKeyDown(ILandroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->onKeyUp(ILandroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->preDispatchKeyEvent(Landroid/view/KeyEvent;)V -HSPLcom/android/internal/policy/PhoneFallbackEventHandler;->setView(Landroid/view/View;)V -HSPLcom/android/internal/policy/PhoneLayoutInflater;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/policy/PhoneLayoutInflater;-><init>(Landroid/view/LayoutInflater;Landroid/content/Context;)V -HSPLcom/android/internal/policy/PhoneLayoutInflater;->cloneInContext(Landroid/content/Context;)Landroid/view/LayoutInflater; -HSPLcom/android/internal/policy/PhoneLayoutInflater;->onCreateView(Ljava/lang/String;Landroid/util/AttributeSet;)Landroid/view/View; -HSPLcom/android/internal/policy/PhoneWindow$1;-><init>(Lcom/android/internal/policy/PhoneWindow;)V -HSPLcom/android/internal/policy/PhoneWindow$1;->run()V -HSPLcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState;->writeToParcel(Landroid/os/Parcel;I)V -HSPLcom/android/internal/policy/PhoneWindow$PanelFeatureState;-><init>(I)V -HSPLcom/android/internal/policy/PhoneWindow$PanelFeatureState;->onSaveInstanceState()Landroid/os/Parcelable; -HSPLcom/android/internal/policy/PhoneWindow$PhoneWindowMenuCallback;-><init>(Lcom/android/internal/policy/PhoneWindow;)V -HSPLcom/android/internal/policy/PhoneWindow;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/policy/PhoneWindow;-><init>(Landroid/content/Context;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;)V -HSPLcom/android/internal/policy/PhoneWindow;->alwaysReadCloseOnTouchAttr()V -HSPLcom/android/internal/policy/PhoneWindow;->applyDecorFitsSystemWindows()V -HSPLcom/android/internal/policy/PhoneWindow;->closeAllPanels()V -HSPLcom/android/internal/policy/PhoneWindow;->closeContextMenu()V -HSPLcom/android/internal/policy/PhoneWindow;->closePanel(Lcom/android/internal/policy/PhoneWindow$PanelFeatureState;Z)V -HSPLcom/android/internal/policy/PhoneWindow;->dispatchWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V -HSPLcom/android/internal/policy/PhoneWindow;->doInvalidatePanelMenu(I)V -HSPLcom/android/internal/policy/PhoneWindow;->generateDecor(I)Lcom/android/internal/policy/DecorView; -HSPLcom/android/internal/policy/PhoneWindow;->generateLayout(Lcom/android/internal/policy/DecorView;)Landroid/view/ViewGroup;+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Lcom/android/internal/policy/DecorView;Lcom/android/internal/policy/DecorView;]Lcom/android/internal/policy/PhoneWindow;Lcom/android/internal/policy/PhoneWindow;]Ljava/lang/Boolean;Ljava/lang/Boolean; -HSPLcom/android/internal/policy/PhoneWindow;->getCurrentFocus()Landroid/view/View; -HSPLcom/android/internal/policy/PhoneWindow;->getDecorView()Landroid/view/View; -HSPLcom/android/internal/policy/PhoneWindow;->getLayoutInflater()Landroid/view/LayoutInflater; -HSPLcom/android/internal/policy/PhoneWindow;->getNavigationBarColor()I -HSPLcom/android/internal/policy/PhoneWindow;->getOnBackInvokedDispatcher()Landroid/window/OnBackInvokedDispatcher; -HSPLcom/android/internal/policy/PhoneWindow;->getPanelState(IZ)Lcom/android/internal/policy/PhoneWindow$PanelFeatureState; -HSPLcom/android/internal/policy/PhoneWindow;->getPanelState(IZLcom/android/internal/policy/PhoneWindow$PanelFeatureState;)Lcom/android/internal/policy/PhoneWindow$PanelFeatureState; -HSPLcom/android/internal/policy/PhoneWindow;->getTransition(Landroid/transition/Transition;Landroid/transition/Transition;I)Landroid/transition/Transition; -HSPLcom/android/internal/policy/PhoneWindow;->getViewRootImplOrNull()Landroid/view/ViewRootImpl; -HSPLcom/android/internal/policy/PhoneWindow;->getVolumeControlStream()I -HSPLcom/android/internal/policy/PhoneWindow;->installDecor()V -HSPLcom/android/internal/policy/PhoneWindow;->invalidatePanelMenu(I)V -HSPLcom/android/internal/policy/PhoneWindow;->isFloating()Z -HSPLcom/android/internal/policy/PhoneWindow;->isShowingWallpaper()Z -HSPLcom/android/internal/policy/PhoneWindow;->isTranslucent()Z -HSPLcom/android/internal/policy/PhoneWindow;->lambda$static$0(Landroid/view/View;Landroid/view/WindowInsets;)Landroid/util/Pair; -HSPLcom/android/internal/policy/PhoneWindow;->onActive()V -HSPLcom/android/internal/policy/PhoneWindow;->onConfigurationChanged(Landroid/content/res/Configuration;)V -HSPLcom/android/internal/policy/PhoneWindow;->onDestroy()V -HSPLcom/android/internal/policy/PhoneWindow;->onKeyDown(IILandroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneWindow;->onKeyUp(IILandroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneWindow;->onViewRootImplSet(Landroid/view/ViewRootImpl;)V -HSPLcom/android/internal/policy/PhoneWindow;->openPanelsAfterRestore()V -HSPLcom/android/internal/policy/PhoneWindow;->peekDecorView()Landroid/view/View; -HSPLcom/android/internal/policy/PhoneWindow;->requestFeature(I)Z -HSPLcom/android/internal/policy/PhoneWindow;->restoreHierarchyState(Landroid/os/Bundle;)V -HSPLcom/android/internal/policy/PhoneWindow;->saveHierarchyState()Landroid/os/Bundle; -HSPLcom/android/internal/policy/PhoneWindow;->setAttributes(Landroid/view/WindowManager$LayoutParams;)V -HSPLcom/android/internal/policy/PhoneWindow;->setBackgroundBlurRadius(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/policy/PhoneWindow;->setContentView(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setContentView(Landroid/view/View;)V -HSPLcom/android/internal/policy/PhoneWindow;->setContentView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V -HSPLcom/android/internal/policy/PhoneWindow;->setDecorFitsSystemWindows(Z)V -HSPLcom/android/internal/policy/PhoneWindow;->setDefaultWindowFormat(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setNavigationBarColor(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setNavigationBarContrastEnforced(Z)V -HSPLcom/android/internal/policy/PhoneWindow;->setNavigationBarDividerColor(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setStatusBarColor(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setTheme(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setTitle(Ljava/lang/CharSequence;)V -HSPLcom/android/internal/policy/PhoneWindow;->setTitle(Ljava/lang/CharSequence;Z)V -HSPLcom/android/internal/policy/PhoneWindow;->setTitleColor(I)V -HSPLcom/android/internal/policy/PhoneWindow;->setVolumeControlStream(I)V -HSPLcom/android/internal/policy/PhoneWindow;->superDispatchKeyEvent(Landroid/view/KeyEvent;)Z -HSPLcom/android/internal/policy/PhoneWindow;->superDispatchTouchEvent(Landroid/view/MotionEvent;)Z -HSPLcom/android/internal/policy/ScreenDecorationsUtils;->supportsRoundedCornersOnWindows(Landroid/content/res/Resources;)Z -HSPLcom/android/internal/statusbar/IStatusBarService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBarService; -HSPLcom/android/internal/statusbar/NotificationVisibility;->recycle()V -HSPLcom/android/internal/telecom/ClientTransactionalServiceRepository;-><clinit>()V -HSPLcom/android/internal/telecom/ClientTransactionalServiceRepository;-><init>()V -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;->getCallState()I -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;->getCallStateUsingPackage(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;->getCurrentTtyMode(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/android/internal/telecom/ITelecomService$Stub$Proxy;->isInCall(Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telecom/ITelecomService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telecom/ITelecomService; -HSPLcom/android/internal/telecom/IVideoProvider$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telecom/IVideoProvider; -HSPLcom/android/internal/telephony/CarrierAppUtils$AssociatedAppInfo;-><init>(Landroid/content/pm/ApplicationInfo;I)V -HSPLcom/android/internal/telephony/CarrierAppUtils;->disableCarrierAppsUntilPrivileged(Ljava/lang/String;Landroid/telephony/TelephonyManager;Landroid/content/ContentResolver;ILjava/util/Set;Ljava/util/Map;Landroid/content/Context;)V -HSPLcom/android/internal/telephony/CarrierAppUtils;->getApplicationInfoIfSystemApp(ILjava/lang/String;Landroid/content/Context;)Landroid/content/pm/ApplicationInfo; -HSPLcom/android/internal/telephony/CarrierAppUtils;->getContentResolverForUser(Landroid/content/Context;I)Landroid/content/ContentResolver; -HSPLcom/android/internal/telephony/CarrierAppUtils;->getDefaultCarrierAppCandidatesHelper(ILjava/util/Set;Landroid/content/Context;)Ljava/util/List; -HSPLcom/android/internal/telephony/CarrierAppUtils;->getDefaultCarrierAssociatedAppsHelper(ILjava/util/Map;Landroid/content/Context;)Ljava/util/Map; -HSPLcom/android/internal/telephony/CarrierAppUtils;->isUpdatedSystemApp(Landroid/content/pm/ApplicationInfo;)Z -HSPLcom/android/internal/telephony/CellBroadcastUtils;->getDefaultCellBroadcastReceiverPackageName(Landroid/content/Context;)Ljava/lang/String; -HSPLcom/android/internal/telephony/ICarrierConfigLoader$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telephony/ICarrierConfigLoader$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/ICarrierConfigLoader$Stub$Proxy;->getConfigForSubIdWithFeature(ILjava/lang/String;Ljava/lang/String;)Landroid/os/PersistableBundle; -HSPLcom/android/internal/telephony/ICarrierConfigLoader$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/ICarrierConfigLoader; -HSPLcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub;-><init>()V -HSPLcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub;->getMaxTransactionId()I -HSPLcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;-><init>()V -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;->getDefaultTransactionName(I)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;->getMaxTransactionId()I -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;->getTransactionName(I)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneStateListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;->getGroupIdLevel1ForSubscriber(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;->getIccSerialNumberForSubscriber(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;->getLine1NumberForSubscriber(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy;->getSubscriberIdForSubscriber(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/IPhoneSubInfo$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/IPhoneSubInfo; -HSPLcom/android/internal/telephony/ISms$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getActiveDataSubscriptionId()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getActiveSubIdList(Z)[I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getActiveSubInfoCountMax()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getActiveSubscriptionInfo(ILjava/lang/String;Ljava/lang/String;)Landroid/telephony/SubscriptionInfo; -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getActiveSubscriptionInfoForSimSlotIndex(ILjava/lang/String;Ljava/lang/String;)Landroid/telephony/SubscriptionInfo; -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getAvailableSubscriptionInfoList(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultDataSubId()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultSmsSubId()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultSubId()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getDefaultVoiceSubId()I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getPhoneId(I)I -HSPLcom/android/internal/telephony/ISub$Stub$Proxy;->getSlotIndex(I)I -HSPLcom/android/internal/telephony/ISub$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/ISub; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->checkCarrierPrivilegesForPackageAnyPhone(Ljava/lang/String;)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getActivePhoneTypeForSlot(I)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getCardIdForDefaultEuicc(ILjava/lang/String;)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getCarrierPrivilegeStatus(I)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getDataNetworkTypeForSubscriber(ILjava/lang/String;Ljava/lang/String;)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getDeviceIdWithFeature(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getImeiForSlot(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getLine1NumberForDisplay(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getMeidForSlot(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getNetworkCountryIsoForPhone(I)Ljava/lang/String; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getNetworkTypeForSubscriber(ILjava/lang/String;Ljava/lang/String;)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getSignalStrength(I)Landroid/telephony/SignalStrength; -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getSimStateForSlotIndex(I)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getSubscriptionCarrierId(I)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getSubscriptionSpecificCarrierId(I)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->getVoiceNetworkTypeForSubscriber(ILjava/lang/String;Ljava/lang/String;)I -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->isDataEnabledForReason(II)Z -HSPLcom/android/internal/telephony/ITelephony$Stub$Proxy;->isEmergencyNumber(Ljava/lang/String;Z)Z -HSPLcom/android/internal/telephony/ITelephony$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/ITelephony; -HSPLcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy;->addOnSubscriptionsChangedListener(Ljava/lang/String;Ljava/lang/String;Lcom/android/internal/telephony/IOnSubscriptionsChangedListener;)V -HSPLcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy;->listenWithEventList(ZZILjava/lang/String;Ljava/lang/String;Lcom/android/internal/telephony/IPhoneStateListener;[IZ)V -HSPLcom/android/internal/telephony/ITelephonyRegistry$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/ITelephonyRegistry; -HSPLcom/android/internal/telephony/SmsApplication$SmsApplicationData;->-$$Nest$fgetmSmsReceiverClass(Lcom/android/internal/telephony/SmsApplication$SmsApplicationData;)Ljava/lang/String; -HSPLcom/android/internal/telephony/SmsApplication$SmsApplicationData;-><init>(Ljava/lang/String;I)V -HSPLcom/android/internal/telephony/SmsApplication$SmsApplicationData;->isComplete()Z -HSPLcom/android/internal/telephony/SmsApplication;->getApplication(Landroid/content/Context;ZI)Lcom/android/internal/telephony/SmsApplication$SmsApplicationData; -HSPLcom/android/internal/telephony/SmsApplication;->getApplicationCollectionInternal(Landroid/content/Context;I)Ljava/util/Collection; -HSPLcom/android/internal/telephony/SmsApplication;->getApplicationForPackage(Ljava/util/Collection;Ljava/lang/String;)Lcom/android/internal/telephony/SmsApplication$SmsApplicationData; -HSPLcom/android/internal/telephony/SmsApplication;->getDefaultSmsApplication(Landroid/content/Context;Z)Landroid/content/ComponentName; -HSPLcom/android/internal/telephony/SmsApplication;->getDefaultSmsApplicationAsUser(Landroid/content/Context;ZLandroid/os/UserHandle;)Landroid/content/ComponentName; -HSPLcom/android/internal/telephony/SmsApplication;->getDefaultSmsPackage(Landroid/content/Context;I)Ljava/lang/String; -HSPLcom/android/internal/telephony/SmsApplication;->tryFixExclusiveSmsAppops(Landroid/content/Context;Lcom/android/internal/telephony/SmsApplication$SmsApplicationData;Z)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->checkCallingOrSelfReadDeviceIdentifiers(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->checkCallingOrSelfReadPhoneState(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->checkCallingOrSelfUseIccAuthWithDeviceIdentifier(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->checkCarrierPrivilegeForSubId(Landroid/content/Context;I)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->checkReadPhoneState(Landroid/content/Context;IIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telephony/TelephonyPermissions;->getCarrierPrivilegeStatus(Landroid/content/Context;II)I -HSPLcom/android/internal/telephony/TelephonyPermissions;->reportAccessDeniedToReadIdentifiers(Landroid/content/Context;IIILjava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/internal/telephony/uicc/IccUtils;->bytesToHexString([B)Ljava/lang/String; -HSPLcom/android/internal/telephony/util/HandlerExecutor;-><init>(Landroid/os/Handler;)V -HSPLcom/android/internal/telephony/util/HandlerExecutor;->execute(Ljava/lang/Runnable;)V -HSPLcom/android/internal/textservice/ISpellCheckerSession$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/textservice/ISpellCheckerSession$Stub$Proxy;->onClose()V -HSPLcom/android/internal/textservice/ISpellCheckerSession$Stub$Proxy;->onGetSentenceSuggestionsMultiple([Landroid/view/textservice/TextInfo;I)V -HSPLcom/android/internal/textservice/ISpellCheckerSessionListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/textservice/ISpellCheckerSessionListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/textservice/ITextServicesManager$Stub$Proxy;->finishSpellCheckerService(ILcom/android/internal/textservice/ISpellCheckerSessionListener;)V -HSPLcom/android/internal/textservice/ITextServicesManager$Stub$Proxy;->getCurrentSpellChecker(ILjava/lang/String;)Landroid/view/textservice/SpellCheckerInfo; -HSPLcom/android/internal/textservice/ITextServicesManager$Stub$Proxy;->getCurrentSpellCheckerSubtype(IZ)Landroid/view/textservice/SpellCheckerSubtype; -HSPLcom/android/internal/textservice/ITextServicesManager$Stub$Proxy;->getSpellCheckerService(ILjava/lang/String;Ljava/lang/String;Lcom/android/internal/textservice/ITextServicesSessionListener;Lcom/android/internal/textservice/ISpellCheckerSessionListener;Landroid/os/Bundle;I)V -HSPLcom/android/internal/textservice/ITextServicesManager$Stub$Proxy;->isSpellCheckerEnabled(I)Z -HSPLcom/android/internal/textservice/ITextServicesSessionListener$Stub;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/textservice/ITextServicesSessionListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/internal/transition/EpicenterTranslateClipReveal;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Landroid/annotation/IntRange;ILjava/lang/String;J)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Landroid/annotation/IntRange;ILjava/lang/String;JLjava/lang/String;J)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Landroid/annotation/IntRange;JLjava/lang/String;J)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Landroid/annotation/NonNull;Ljava/lang/Object;)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Ljava/lang/annotation/Annotation;I)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Ljava/lang/annotation/Annotation;J)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Ljava/lang/annotation/Annotation;Ljava/lang/Object;)V -HSPLcom/android/internal/util/AnnotationValidations;->validate(Ljava/lang/Class;Ljava/lang/annotation/Annotation;Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLcom/android/internal/util/ArrayUtils;->appendElement(Ljava/lang/Class;[Ljava/lang/Object;Ljava/lang/Object;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->appendElement(Ljava/lang/Class;[Ljava/lang/Object;Ljava/lang/Object;Z)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->appendInt([IIZ)[I -HSPLcom/android/internal/util/ArrayUtils;->checkBounds(II)V -HSPLcom/android/internal/util/ArrayUtils;->cloneOrNull([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->contains(Ljava/util/Collection;Ljava/lang/Object;)Z -HSPLcom/android/internal/util/ArrayUtils;->contains([II)Z -HSPLcom/android/internal/util/ArrayUtils;->contains([Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLcom/android/internal/util/ArrayUtils;->containsAll([Ljava/lang/Object;[Ljava/lang/Object;)Z -HSPLcom/android/internal/util/ArrayUtils;->containsAny([Ljava/lang/Object;[Ljava/lang/Object;)Z -HSPLcom/android/internal/util/ArrayUtils;->convertToIntArray(Ljava/util/List;)[I -HSPLcom/android/internal/util/ArrayUtils;->deepToString(Ljava/lang/Object;)Ljava/lang/String; -HSPLcom/android/internal/util/ArrayUtils;->defeatNullable([Ljava/io/File;)[Ljava/io/File; -HSPLcom/android/internal/util/ArrayUtils;->defeatNullable([Ljava/lang/String;)[Ljava/lang/String; -HSPLcom/android/internal/util/ArrayUtils;->emptyArray(Ljava/lang/Class;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->emptyIfNull([Ljava/lang/Object;Ljava/lang/Class;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->filter([Ljava/lang/Object;Ljava/util/function/IntFunction;Ljava/util/function/Predicate;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->getOrNull([Ljava/lang/Object;I)Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->indexOf([Ljava/lang/Object;Ljava/lang/Object;)I -HSPLcom/android/internal/util/ArrayUtils;->isEmpty(Ljava/util/Collection;)Z -HSPLcom/android/internal/util/ArrayUtils;->isEmpty([I)Z -HSPLcom/android/internal/util/ArrayUtils;->isEmpty([Ljava/lang/Object;)Z -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedArray(Ljava/lang/Class;I)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedBooleanArray(I)[Z -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedByteArray(I)[B -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedCharArray(I)[C -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedFloatArray(I)[F -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedIntArray(I)[I -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedLongArray(I)[J -HSPLcom/android/internal/util/ArrayUtils;->newUnpaddedObjectArray(I)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->remove(Ljava/util/ArrayList;Ljava/lang/Object;)Ljava/util/ArrayList; -HSPLcom/android/internal/util/ArrayUtils;->removeElement(Ljava/lang/Class;[Ljava/lang/Object;Ljava/lang/Object;)[Ljava/lang/Object; -HSPLcom/android/internal/util/ArrayUtils;->size([Ljava/lang/Object;)I -HSPLcom/android/internal/util/ArrayUtils;->throwsIfOutOfBounds(III)V -HSPLcom/android/internal/util/ArrayUtils;->unstableRemoveIf(Ljava/util/ArrayList;Ljava/util/function/Predicate;)I -HSPLcom/android/internal/util/AsyncChannel;-><init>()V -HSPLcom/android/internal/util/AsyncChannel;->connected(Landroid/content/Context;Landroid/os/Handler;Landroid/os/Messenger;)V -HSPLcom/android/internal/util/AsyncChannel;->sendMessage(Landroid/os/Message;)V -HSPLcom/android/internal/util/BitUtils;->packBits([I)J -HSPLcom/android/internal/util/BitUtils;->unpackBits(J)[I -HSPLcom/android/internal/util/CollectionUtils;->add(Ljava/util/List;Ljava/lang/Object;)Ljava/util/List; -HSPLcom/android/internal/util/CollectionUtils;->emptyIfNull(Ljava/util/Set;)Ljava/util/Set; -HSPLcom/android/internal/util/CollectionUtils;->firstOrNull(Ljava/util/List;)Ljava/lang/Object; -HSPLcom/android/internal/util/CollectionUtils;->isEmpty(Ljava/util/Collection;)Z -HSPLcom/android/internal/util/CollectionUtils;->size(Ljava/util/Collection;)I -HSPLcom/android/internal/util/CollectionUtils;->size(Ljava/util/Map;)I -HSPLcom/android/internal/util/ConcurrentUtils$DirectExecutor;->execute(Ljava/lang/Runnable;)V -HSPLcom/android/internal/util/ExponentiallyBucketedHistogram;-><init>(I)V -HSPLcom/android/internal/util/ExponentiallyBucketedHistogram;->add(I)V -HSPLcom/android/internal/util/ExponentiallyBucketedHistogram;->log(Ljava/lang/String;Ljava/lang/CharSequence;)V -HSPLcom/android/internal/util/FastMath;->round(F)I -HSPLcom/android/internal/util/FastPrintWriter$DummyWriter;-><init>()V -HSPLcom/android/internal/util/FastPrintWriter$DummyWriter;-><init>(Lcom/android/internal/util/FastPrintWriter$DummyWriter-IA;)V -HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/OutputStream;)V -HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/OutputStream;ZI)V -HSPLcom/android/internal/util/FastPrintWriter;-><init>(Ljava/io/Writer;ZI)V -HSPLcom/android/internal/util/FastPrintWriter;->appendLocked(C)V -HSPLcom/android/internal/util/FastPrintWriter;->appendLocked(Ljava/lang/String;II)V -HSPLcom/android/internal/util/FastPrintWriter;->appendLocked([CII)V -HSPLcom/android/internal/util/FastPrintWriter;->close()V -HSPLcom/android/internal/util/FastPrintWriter;->flush()V -HSPLcom/android/internal/util/FastPrintWriter;->flushBytesLocked()V -HSPLcom/android/internal/util/FastPrintWriter;->flushLocked()V -HSPLcom/android/internal/util/FastPrintWriter;->initDefaultEncoder()V -HSPLcom/android/internal/util/FastPrintWriter;->print(C)V -HSPLcom/android/internal/util/FastPrintWriter;->print(I)V -HSPLcom/android/internal/util/FastPrintWriter;->print(J)V -HSPLcom/android/internal/util/FastPrintWriter;->print(Ljava/lang/String;)V -HSPLcom/android/internal/util/FastPrintWriter;->println()V -HSPLcom/android/internal/util/FastPrintWriter;->write(I)V -HSPLcom/android/internal/util/FastPrintWriter;->write(Ljava/lang/String;)V -HSPLcom/android/internal/util/FastPrintWriter;->write([CII)V -HSPLcom/android/internal/util/FastXmlSerializer;-><init>()V -HSPLcom/android/internal/util/FastXmlSerializer;-><init>(I)V -HSPLcom/android/internal/util/FastXmlSerializer;->append(C)V -HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->append(Ljava/lang/String;II)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->appendIndent(I)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/FastXmlSerializer;->endDocument()V -HSPLcom/android/internal/util/FastXmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/FastXmlSerializer;->escapeAndAppendString(Ljava/lang/String;)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/FastXmlSerializer;->flush()V -HSPLcom/android/internal/util/FastXmlSerializer;->flushBytes()V -HSPLcom/android/internal/util/FastXmlSerializer;->setFeature(Ljava/lang/String;Z)V -HSPLcom/android/internal/util/FastXmlSerializer;->setOutput(Ljava/io/OutputStream;Ljava/lang/String;)V -HSPLcom/android/internal/util/FastXmlSerializer;->startDocument(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLcom/android/internal/util/FastXmlSerializer;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/FastXmlSerializer;->text(Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/FrameworkStatsLog;->write(III)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIII)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIILjava/lang/String;I)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIJII)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(IILjava/lang/String;IZ)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(ILjava/lang/String;I)V -HSPLcom/android/internal/util/FrameworkStatsLog;->write(ILjava/lang/String;IIF)V -HSPLcom/android/internal/util/GrowingArrayUtils;->append([III)[I -HSPLcom/android/internal/util/GrowingArrayUtils;->append([JIJ)[J -HSPLcom/android/internal/util/GrowingArrayUtils;->append([Ljava/lang/Object;ILjava/lang/Object;)[Ljava/lang/Object; -HSPLcom/android/internal/util/GrowingArrayUtils;->append([ZIZ)[Z -HSPLcom/android/internal/util/GrowingArrayUtils;->growSize(I)I -HSPLcom/android/internal/util/GrowingArrayUtils;->insert([IIII)[I -HSPLcom/android/internal/util/GrowingArrayUtils;->insert([JIIJ)[J -HSPLcom/android/internal/util/GrowingArrayUtils;->insert([Ljava/lang/Object;IILjava/lang/Object;)[Ljava/lang/Object;+]Ljava/lang/Class;Ljava/lang/Class;]Ljava/lang/Object;[Ljava/lang/Object; -HSPLcom/android/internal/util/GrowingArrayUtils;->insert([ZIIZ)[Z -HSPLcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter; -HSPLcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter; -HSPLcom/android/internal/util/IndentingPrintWriter;->printPair(Ljava/lang/String;Ljava/lang/Object;)Lcom/android/internal/util/IndentingPrintWriter; -HSPLcom/android/internal/util/IntPair;->first(J)I -HSPLcom/android/internal/util/IntPair;->of(II)J -HSPLcom/android/internal/util/IntPair;->second(J)I -HSPLcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda0;-><init>(Lcom/android/internal/util/LatencyTracker;I)V -HSPLcom/android/internal/util/LatencyTracker$Session;-><init>(ILjava/lang/String;)V -HSPLcom/android/internal/util/LatencyTracker$Session;->begin(Ljava/lang/Runnable;)V -HSPLcom/android/internal/util/LatencyTracker$Session;->traceName()Ljava/lang/String; -HSPLcom/android/internal/util/LatencyTracker;->-$$Nest$smgetTraceNameOfAction(ILjava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/util/LatencyTracker;-><init>()V -HSPLcom/android/internal/util/LatencyTracker;->getInstance(Landroid/content/Context;)Lcom/android/internal/util/LatencyTracker; -HSPLcom/android/internal/util/LatencyTracker;->getNameOfAction(I)Ljava/lang/String; -HSPLcom/android/internal/util/LatencyTracker;->getTraceNameOfAction(ILjava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/util/LatencyTracker;->isEnabled()Z -HSPLcom/android/internal/util/LatencyTracker;->logAction(II)V -HSPLcom/android/internal/util/LatencyTracker;->onActionEnd(I)V -HSPLcom/android/internal/util/LatencyTracker;->onActionStart(ILjava/lang/String;)V -HSPLcom/android/internal/util/LatencyTracker;->updateProperties(Landroid/provider/DeviceConfig$Properties;)V -HSPLcom/android/internal/util/LineBreakBufferedWriter;-><init>(Ljava/io/Writer;I)V -HSPLcom/android/internal/util/LineBreakBufferedWriter;-><init>(Ljava/io/Writer;II)V -HSPLcom/android/internal/util/LineBreakBufferedWriter;->ensureCapacity(I)V -HSPLcom/android/internal/util/LineBreakBufferedWriter;->flush()V -HSPLcom/android/internal/util/LineBreakBufferedWriter;->println()V -HSPLcom/android/internal/util/LineBreakBufferedWriter;->write(Ljava/lang/String;II)V+]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/internal/util/LineBreakBufferedWriter;->writeBuffer(I)V -HSPLcom/android/internal/util/MemInfoReader;-><init>()V -HSPLcom/android/internal/util/MemInfoReader;->getTotalSize()J -HSPLcom/android/internal/util/MemInfoReader;->readMemInfo()V -HSPLcom/android/internal/util/MessageUtils;->findMessageNames([Ljava/lang/Class;[Ljava/lang/String;)Landroid/util/SparseArray; -HSPLcom/android/internal/util/NotificationMessagingUtil;->isImportantMessaging(Landroid/service/notification/StatusBarNotification;I)Z -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;->parcel(Ljava/lang/Boolean;Landroid/os/Parcel;I)V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForBoolean;->unparcel(Landroid/os/Parcel;)Ljava/lang/Boolean; -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForInternedString;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringArray;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringList;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringValueMap;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;-><init>()V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;->parcel(Ljava/util/Set;Landroid/os/Parcel;I)V -HSPLcom/android/internal/util/Parcelling$BuiltIn$ForStringSet;->unparcel(Landroid/os/Parcel;)Ljava/util/Set; -HSPLcom/android/internal/util/Parcelling$Cache;->get(Ljava/lang/Class;)Lcom/android/internal/util/Parcelling; -HSPLcom/android/internal/util/Parcelling$Cache;->getOrCreate(Ljava/lang/Class;)Lcom/android/internal/util/Parcelling; -HSPLcom/android/internal/util/Parcelling$Cache;->put(Lcom/android/internal/util/Parcelling;)Lcom/android/internal/util/Parcelling; -HSPLcom/android/internal/util/Preconditions;->checkArgument(Z)V -HSPLcom/android/internal/util/Preconditions;->checkArgument(ZLjava/lang/Object;)V -HSPLcom/android/internal/util/Preconditions;->checkArgument(ZLjava/lang/String;[Ljava/lang/Object;)V -HSPLcom/android/internal/util/Preconditions;->checkArgumentInRange(FFFLjava/lang/String;)F -HSPLcom/android/internal/util/Preconditions;->checkArgumentInRange(IIILjava/lang/String;)I -HSPLcom/android/internal/util/Preconditions;->checkArgumentInRange(JJJLjava/lang/String;)J -HSPLcom/android/internal/util/Preconditions;->checkArgumentNonnegative(I)I -HSPLcom/android/internal/util/Preconditions;->checkArgumentNonnegative(ILjava/lang/String;)I -HSPLcom/android/internal/util/Preconditions;->checkArgumentNonnegative(J)J -HSPLcom/android/internal/util/Preconditions;->checkArgumentNonnegative(JLjava/lang/String;)J -HSPLcom/android/internal/util/Preconditions;->checkArgumentPositive(ILjava/lang/String;)I -HSPLcom/android/internal/util/Preconditions;->checkArrayElementsNotNull([Ljava/lang/Object;Ljava/lang/String;)[Ljava/lang/Object; -HSPLcom/android/internal/util/Preconditions;->checkCollectionElementsNotNull(Ljava/util/Collection;Ljava/lang/String;)Ljava/util/Collection; -HSPLcom/android/internal/util/Preconditions;->checkFlagsArgument(II)I -HSPLcom/android/internal/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/internal/util/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/internal/util/Preconditions;->checkState(Z)V -HSPLcom/android/internal/util/Preconditions;->checkState(ZLjava/lang/String;)V -HSPLcom/android/internal/util/Preconditions;->checkStringNotEmpty(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; -HSPLcom/android/internal/util/Preconditions;->checkStringNotEmpty(Ljava/lang/CharSequence;Ljava/lang/Object;)Ljava/lang/CharSequence; -HSPLcom/android/internal/util/ProcFileReader;->finishLine()V -HSPLcom/android/internal/util/ScreenshotHelper;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/util/StatLogger;->getTime()J -HSPLcom/android/internal/util/StatLogger;->logDurationStat(IJ)J+]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger; -HSPLcom/android/internal/util/State;-><init>()V -HSPLcom/android/internal/util/State;->enter()V -HSPLcom/android/internal/util/StateMachine$LogRecords;->add(Lcom/android/internal/util/StateMachine;Landroid/os/Message;Ljava/lang/String;Lcom/android/internal/util/IState;Lcom/android/internal/util/IState;Lcom/android/internal/util/IState;)V -HSPLcom/android/internal/util/StateMachine$LogRecords;->logOnlyTransitions()Z -HSPLcom/android/internal/util/StateMachine$SmHandler;-><init>(Landroid/os/Looper;Lcom/android/internal/util/StateMachine;)V -HSPLcom/android/internal/util/StateMachine$SmHandler;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)Lcom/android/internal/util/StateMachine$SmHandler$StateInfo; -HSPLcom/android/internal/util/StateMachine$SmHandler;->completeConstruction()V -HSPLcom/android/internal/util/StateMachine$SmHandler;->handleMessage(Landroid/os/Message;)V -HSPLcom/android/internal/util/StateMachine$SmHandler;->invokeEnterMethods(I)V -HSPLcom/android/internal/util/StateMachine$SmHandler;->moveTempStateStackToStateStack()I -HSPLcom/android/internal/util/StateMachine$SmHandler;->performTransitions(Lcom/android/internal/util/State;Landroid/os/Message;)V -HSPLcom/android/internal/util/StateMachine$SmHandler;->processMsg(Landroid/os/Message;)Lcom/android/internal/util/State; -HSPLcom/android/internal/util/StateMachine$SmHandler;->setInitialState(Lcom/android/internal/util/State;)V -HSPLcom/android/internal/util/StateMachine$SmHandler;->setupInitialStateStack()V -HSPLcom/android/internal/util/StateMachine;->addState(Lcom/android/internal/util/State;)V -HSPLcom/android/internal/util/StateMachine;->getLogRecString(Landroid/os/Message;)Ljava/lang/String; -HSPLcom/android/internal/util/StateMachine;->initStateMachine(Ljava/lang/String;Landroid/os/Looper;)V -HSPLcom/android/internal/util/StateMachine;->recordLogRec(Landroid/os/Message;)Z -HSPLcom/android/internal/util/StateMachine;->setInitialState(Lcom/android/internal/util/State;)V -HSPLcom/android/internal/util/StateMachine;->start()V -HSPLcom/android/internal/util/StringPool;-><init>()V -HSPLcom/android/internal/util/StringPool;->get([CII)Ljava/lang/String; -HSPLcom/android/internal/util/SyncResultReceiver;-><init>(I)V -HSPLcom/android/internal/util/SyncResultReceiver;->getIntResult()I -HSPLcom/android/internal/util/SyncResultReceiver;->getParcelableResult()Landroid/os/Parcelable; -HSPLcom/android/internal/util/SyncResultReceiver;->send(ILandroid/os/Bundle;)V -HSPLcom/android/internal/util/SyncResultReceiver;->waitResult()V -HSPLcom/android/internal/util/TraceBuffer$ProtoOutputStreamProvider;-><init>()V -HSPLcom/android/internal/util/TraceBuffer;-><init>(ILcom/android/internal/util/TraceBuffer$ProtoProvider;Ljava/util/function/Consumer;)V -HSPLcom/android/internal/util/TraceBuffer;->resetBuffer()V -HSPLcom/android/internal/util/VirtualRefBasePtr;-><init>(J)V -HSPLcom/android/internal/util/VirtualRefBasePtr;->finalize()V -HSPLcom/android/internal/util/VirtualRefBasePtr;->get()J -HSPLcom/android/internal/util/VirtualRefBasePtr;->release()V -HSPLcom/android/internal/util/XmlPullParserWrapper;-><init>(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLcom/android/internal/util/XmlPullParserWrapper;->getAttributeCount()I -HSPLcom/android/internal/util/XmlPullParserWrapper;->getAttributeName(I)Ljava/lang/String; -HSPLcom/android/internal/util/XmlPullParserWrapper;->getAttributeValue(I)Ljava/lang/String; -HSPLcom/android/internal/util/XmlPullParserWrapper;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/util/XmlPullParserWrapper;->getEventType()I -HSPLcom/android/internal/util/XmlPullParserWrapper;->getName()Ljava/lang/String; -HSPLcom/android/internal/util/XmlPullParserWrapper;->getText()Ljava/lang/String; -HSPLcom/android/internal/util/XmlPullParserWrapper;->next()I -HSPLcom/android/internal/util/XmlPullParserWrapper;->setInput(Ljava/io/InputStream;Ljava/lang/String;)V -HSPLcom/android/internal/util/XmlSerializerWrapper;-><init>(Lorg/xmlpull/v1/XmlSerializer;)V -HSPLcom/android/internal/util/XmlSerializerWrapper;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlSerializerWrapper;->endDocument()V -HSPLcom/android/internal/util/XmlSerializerWrapper;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlSerializerWrapper;->setFeature(Ljava/lang/String;Z)V -HSPLcom/android/internal/util/XmlSerializerWrapper;->setOutput(Ljava/io/OutputStream;Ljava/lang/String;)V -HSPLcom/android/internal/util/XmlSerializerWrapper;->startDocument(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLcom/android/internal/util/XmlSerializerWrapper;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;+]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/FastXmlSerializer; -HSPLcom/android/internal/util/XmlSerializerWrapper;->text(Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;-><init>(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;->getAttributeBoolean(I)Z -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;->getAttributeFloat(I)F -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;->getAttributeInt(I)I -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;->getAttributeLong(I)J -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;-><init>(Lorg/xmlpull/v1/XmlSerializer;)V -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;->attributeBoolean(Ljava/lang/String;Ljava/lang/String;Z)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;->attributeFloat(Ljava/lang/String;Ljava/lang/String;F)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;->attributeInt(Ljava/lang/String;Ljava/lang/String;I)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;->attributeLong(Ljava/lang/String;Ljava/lang/String;J)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/internal/util/XmlUtils;->beginDocument(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;)V -HSPLcom/android/internal/util/XmlUtils;->makeTyped(Lorg/xmlpull/v1/XmlPullParser;)Lcom/android/modules/utils/TypedXmlPullParser; -HSPLcom/android/internal/util/XmlUtils;->makeTyped(Lorg/xmlpull/v1/XmlSerializer;)Lcom/android/modules/utils/TypedXmlSerializer; -HSPLcom/android/internal/util/XmlUtils;->nextElement(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLcom/android/internal/util/XmlUtils;->nextElementWithin(Lorg/xmlpull/v1/XmlPullParser;I)Z -HSPLcom/android/internal/util/XmlUtils;->readBooleanAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;Z)Z -HSPLcom/android/internal/util/XmlUtils;->readIntAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)I -HSPLcom/android/internal/util/XmlUtils;->readLongAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;)J -HSPLcom/android/internal/util/XmlUtils;->readLongAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;J)J -HSPLcom/android/internal/util/XmlUtils;->readMapXml(Ljava/io/InputStream;)Ljava/util/HashMap; -HSPLcom/android/internal/util/XmlUtils;->readStringAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/internal/util/XmlUtils;->readThisMapXml(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;[Ljava/lang/String;Lcom/android/internal/util/XmlUtils$ReadMapCallback;)Ljava/util/HashMap; -HSPLcom/android/internal/util/XmlUtils;->readThisPrimitiveValueXml(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;)Ljava/lang/Object; -HSPLcom/android/internal/util/XmlUtils;->readThisSetXml(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;[Ljava/lang/String;Lcom/android/internal/util/XmlUtils$ReadMapCallback;Z)Ljava/util/HashSet; -HSPLcom/android/internal/util/XmlUtils;->readThisValueXml(Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;Lcom/android/internal/util/XmlUtils$ReadMapCallback;Z)Ljava/lang/Object; -HSPLcom/android/internal/util/XmlUtils;->readValueXml(Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;)Ljava/lang/Object; -HSPLcom/android/internal/util/XmlUtils;->skipCurrentTag(Lorg/xmlpull/v1/XmlPullParser;)V -HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V+]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; -HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/io/OutputStream;)V -HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V -HSPLcom/android/internal/util/XmlUtils;->writeMapXml(Ljava/util/Map;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V -HSPLcom/android/internal/util/XmlUtils;->writeSetXml(Ljava/util/Set;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V -HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V -HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/internal/util/function/pooled/OmniFunction;->run()V -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/HexConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/QuadConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/QuintConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/TriConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Ljava/util/function/BiConsumer;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Ljava/util/function/Consumer;Ljava/lang/Object;)Landroid/os/Message; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainRunnable(Lcom/android/internal/util/function/TriConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/android/internal/util/function/pooled/PooledRunnable; -HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainRunnable(Ljava/util/function/BiConsumer;Ljava/lang/Object;Ljava/lang/Object;)Lcom/android/internal/util/function/pooled/PooledRunnable; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->decodeArgCount(I)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->decodeReturnType(I)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->encode(II)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->-$$Nest$smunmask(II)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->acquire(Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;)Lcom/android/internal/util/function/pooled/PooledLambdaImpl; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->acquire(Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;Ljava/lang/Object;IIILjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/android/internal/util/function/pooled/PooledLambda; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->checkNotRecycled()V -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->doInvoke()Ljava/lang/Object; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->doRecycle()V -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->fillInArg(Ljava/lang/Object;)Z -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->getFlags(I)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->invoke(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->isInvocationArgAtIndex(I)Z -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->isRecycleOnUse()Z -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->isRecycled()Z -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->mask(II)I -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->popArg(I)Ljava/lang/Object; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->recycleOnUse()Lcom/android/internal/util/function/pooled/OmniFunction; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->recycleOnUse()Lcom/android/internal/util/function/pooled/PooledRunnable; -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->setFlags(II)V -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->setIfInBounds([Ljava/lang/Object;ILjava/lang/Object;)V -HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->unmask(II)I -HSPLcom/android/internal/view/AppearanceRegion;->equals(Ljava/lang/Object;)Z -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->addClient(Lcom/android/internal/inputmethod/IInputMethodClient;Lcom/android/internal/inputmethod/IRemoteInputConnection;I)V -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->asBinder()Landroid/os/IBinder; -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->getImeTrackerService()Lcom/android/internal/inputmethod/IImeTracker; -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->isImeTraceEnabled()Z -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->removeImeSurfaceFromWindowAsync(Landroid/os/IBinder;)V -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->reportPerceptibleAsync(Landroid/os/IBinder;Z)V -HSPLcom/android/internal/view/IInputMethodManager$Stub$Proxy;->startInputOrWindowGainedFocus(ILcom/android/internal/inputmethod/IInputMethodClient;Landroid/os/IBinder;IIILandroid/view/inputmethod/EditorInfo;Lcom/android/internal/inputmethod/IRemoteInputConnection;Lcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection;IILandroid/window/ImeOnBackInvokedDispatcher;)Lcom/android/internal/inputmethod/InputBindResult; -HSPLcom/android/internal/view/IInputMethodManager$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/view/IInputMethodManager; -HSPLcom/android/internal/view/RotationPolicy;->isRotationLockToggleVisible(Landroid/content/Context;)Z -HSPLcom/android/internal/view/RotationPolicy;->isRotationSupported(Landroid/content/Context;)Z -HSPLcom/android/internal/view/SurfaceCallbackHelper$1;-><init>(Lcom/android/internal/view/SurfaceCallbackHelper;)V -HSPLcom/android/internal/view/SurfaceCallbackHelper$1;->run()V -HSPLcom/android/internal/view/SurfaceCallbackHelper;-><init>(Ljava/lang/Runnable;)V -HSPLcom/android/internal/view/SurfaceCallbackHelper;->dispatchSurfaceRedrawNeededAsync(Landroid/view/SurfaceHolder;[Landroid/view/SurfaceHolder$Callback;)V -HSPLcom/android/internal/view/menu/MenuBuilder;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/view/menu/MenuBuilder;->add(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; -HSPLcom/android/internal/view/menu/MenuBuilder;->addInternal(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; -HSPLcom/android/internal/view/menu/MenuBuilder;->close(Z)V -HSPLcom/android/internal/view/menu/MenuBuilder;->dispatchPresenterUpdate(Z)V -HSPLcom/android/internal/view/menu/MenuBuilder;->findItem(I)Landroid/view/MenuItem; -HSPLcom/android/internal/view/menu/MenuBuilder;->getVisibleItems()Ljava/util/ArrayList; -HSPLcom/android/internal/view/menu/MenuBuilder;->hasVisibleItems()Z -HSPLcom/android/internal/view/menu/MenuBuilder;->onItemActionRequestChanged(Lcom/android/internal/view/menu/MenuItemImpl;)V -HSPLcom/android/internal/view/menu/MenuBuilder;->onItemsChanged(Z)V -HSPLcom/android/internal/view/menu/MenuBuilder;->setCallback(Lcom/android/internal/view/menu/MenuBuilder$Callback;)V -HSPLcom/android/internal/view/menu/MenuBuilder;->size()I -HSPLcom/android/internal/view/menu/MenuItemImpl;-><init>(Lcom/android/internal/view/menu/MenuBuilder;IIIILjava/lang/CharSequence;I)V -HSPLcom/android/internal/view/menu/MenuItemImpl;->getContentDescription()Ljava/lang/CharSequence; -HSPLcom/android/internal/view/menu/MenuItemImpl;->getIcon()Landroid/graphics/drawable/Drawable; -HSPLcom/android/internal/view/menu/MenuItemImpl;->getItemId()I -HSPLcom/android/internal/view/menu/MenuItemImpl;->getTitle()Ljava/lang/CharSequence; -HSPLcom/android/internal/view/menu/MenuItemImpl;->hasSubMenu()Z -HSPLcom/android/internal/view/menu/MenuItemImpl;->isEnabled()Z -HSPLcom/android/internal/view/menu/MenuItemImpl;->isVisible()Z -HSPLcom/android/internal/view/menu/MenuItemImpl;->requiresActionButton()Z -HSPLcom/android/internal/view/menu/MenuItemImpl;->setCheckable(Z)Landroid/view/MenuItem; -HSPLcom/android/internal/view/menu/MenuItemImpl;->setChecked(Z)Landroid/view/MenuItem; -HSPLcom/android/internal/view/menu/MenuItemImpl;->setShowAsAction(I)V -HSPLcom/android/internal/view/menu/MenuItemImpl;->setVisible(Z)Landroid/view/MenuItem; -HSPLcom/android/internal/widget/AlertDialogLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLcom/android/internal/widget/AlertDialogLayout;->forceUniformWidth(II)V -HSPLcom/android/internal/widget/AlertDialogLayout;->onLayout(ZIIII)V -HSPLcom/android/internal/widget/AlertDialogLayout;->onMeasure(II)V -HSPLcom/android/internal/widget/AlertDialogLayout;->setChildFrame(Landroid/view/View;IIII)V -HSPLcom/android/internal/widget/AlertDialogLayout;->tryOnMeasure(II)Z -HSPLcom/android/internal/widget/BackgroundFallback;-><init>()V -HSPLcom/android/internal/widget/BackgroundFallback;->draw(Landroid/view/ViewGroup;Landroid/view/ViewGroup;Landroid/graphics/Canvas;Landroid/view/View;Landroid/view/View;Landroid/view/View;)V -HSPLcom/android/internal/widget/BackgroundFallback;->hasFallback()Z -HSPLcom/android/internal/widget/BackgroundFallback;->setDrawable(Landroid/graphics/drawable/Drawable;)V -HSPLcom/android/internal/widget/ButtonBarLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLcom/android/internal/widget/DialogTitle;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V -HSPLcom/android/internal/widget/ILockSettings$Stub$Proxy;->getBoolean(Ljava/lang/String;ZI)Z -HSPLcom/android/internal/widget/ILockSettings$Stub$Proxy;->getCredentialType(I)I -HSPLcom/android/internal/widget/ILockSettings$Stub$Proxy;->getString(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String; -HSPLcom/android/internal/widget/ILockSettings$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/widget/ILockSettings; -HSPLcom/android/internal/widget/LockPatternUtils$1;-><init>(Lcom/android/internal/widget/LockPatternUtils;)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker$1;->onIsNonStrongBiometricAllowedChanged(ZI)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker$1;->onStrongAuthRequiredChanged(II)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker$H;->handleMessage(Landroid/os/Message;)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->getStrongAuthForUser(I)I -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->handleIsNonStrongBiometricAllowedChanged(ZI)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->handleStrongAuthRequiredChanged(II)V -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->isNonStrongBiometricAllowedAfterIdleTimeout(I)Z -HSPLcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;->onIsNonStrongBiometricAllowedChanged(I)V -HSPLcom/android/internal/widget/LockPatternUtils;-><init>(Landroid/content/Context;)V -HSPLcom/android/internal/widget/LockPatternUtils;->credentialTypeToPasswordQuality(I)I -HSPLcom/android/internal/widget/LockPatternUtils;->getBoolean(Ljava/lang/String;ZI)Z -HSPLcom/android/internal/widget/LockPatternUtils;->getCredentialTypeForUser(I)I -HSPLcom/android/internal/widget/LockPatternUtils;->getDevicePolicyManager()Landroid/app/admin/DevicePolicyManager; -HSPLcom/android/internal/widget/LockPatternUtils;->getEnabledTrustAgents(I)Ljava/util/List; -HSPLcom/android/internal/widget/LockPatternUtils;->getKeyguardStoredPasswordQuality(I)I -HSPLcom/android/internal/widget/LockPatternUtils;->getLockSettings()Lcom/android/internal/widget/ILockSettings; -HSPLcom/android/internal/widget/LockPatternUtils;->getPowerButtonInstantlyLocks(I)Z -HSPLcom/android/internal/widget/LockPatternUtils;->getString(Ljava/lang/String;I)Ljava/lang/String; -HSPLcom/android/internal/widget/LockPatternUtils;->hasSeparateChallenge(I)Z -HSPLcom/android/internal/widget/LockPatternUtils;->isManagedProfile(I)Z -HSPLcom/android/internal/widget/LockPatternUtils;->isOwnerInfoEnabled(I)Z -HSPLcom/android/internal/widget/LockPatternUtils;->isSecure(I)Z -HSPLcom/android/internal/widget/LockPatternUtils;->isSeparateProfileChallengeEnabled(I)Z -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeBoolean(Ljava/lang/String;Ljava/lang/String;)Z+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeFloat(Ljava/lang/String;Ljava/lang/String;)F+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndex(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndexOrThrow(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeInt(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeLong(Ljava/lang/String;Ljava/lang/String;)J+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalAddresses(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z -HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalDnses(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z -HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalHttpProxy(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z -HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalInterfaceName(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z -HSPLcom/android/net/module/util/LinkPropertiesUtils;->isIdenticalRoutes(Landroid/net/LinkProperties;Landroid/net/LinkProperties;)Z -HSPLcom/android/net/module/util/MacAddressUtils;->isMacAddress([B)Z -HSPLcom/android/net/module/util/MacAddressUtils;->longAddrFromByteAddr([B)J -HSPLcom/android/net/module/util/NetUtils;->maskRawAddress([BI)V -HSPLcom/android/net/module/util/NetworkCapabilitiesUtils;-><clinit>()V -HSPLcom/android/okhttp/Address;-><init>(Ljava/lang/String;ILcom/android/okhttp/Dns;Ljavax/net/SocketFactory;Ljavax/net/ssl/SSLSocketFactory;Ljavax/net/ssl/HostnameVerifier;Lcom/android/okhttp/CertificatePinner;Lcom/android/okhttp/Authenticator;Ljava/net/Proxy;Ljava/util/List;Ljava/util/List;Ljava/net/ProxySelector;)V -HSPLcom/android/okhttp/Address;->equals(Ljava/lang/Object;)Z -HSPLcom/android/okhttp/Address;->getCertificatePinner()Lcom/android/okhttp/CertificatePinner; -HSPLcom/android/okhttp/Address;->getConnectionSpecs()Ljava/util/List; -HSPLcom/android/okhttp/Address;->getDns()Lcom/android/okhttp/Dns; -HSPLcom/android/okhttp/Address;->getHostnameVerifier()Ljavax/net/ssl/HostnameVerifier; -HSPLcom/android/okhttp/Address;->getProtocols()Ljava/util/List; -HSPLcom/android/okhttp/Address;->getProxy()Ljava/net/Proxy; -HSPLcom/android/okhttp/Address;->getProxySelector()Ljava/net/ProxySelector; -HSPLcom/android/okhttp/Address;->getSocketFactory()Ljavax/net/SocketFactory; -HSPLcom/android/okhttp/Address;->getSslSocketFactory()Ljavax/net/ssl/SSLSocketFactory; -HSPLcom/android/okhttp/Address;->getUriHost()Ljava/lang/String; -HSPLcom/android/okhttp/Address;->getUriPort()I -HSPLcom/android/okhttp/Address;->hashCode()I -HSPLcom/android/okhttp/Address;->url()Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/CacheControl;-><init>(ZZIIZZZIIZZLjava/lang/String;)V -HSPLcom/android/okhttp/CacheControl;->onlyIfCached()Z -HSPLcom/android/okhttp/CacheControl;->parse(Lcom/android/okhttp/Headers;)Lcom/android/okhttp/CacheControl; -HSPLcom/android/okhttp/ConfigAwareConnectionPool$1;-><init>(Lcom/android/okhttp/ConfigAwareConnectionPool;)V -HSPLcom/android/okhttp/ConfigAwareConnectionPool$1;->onNetworkConfigurationChanged()V -HSPLcom/android/okhttp/ConfigAwareConnectionPool;->access$002(Lcom/android/okhttp/ConfigAwareConnectionPool;Lcom/android/okhttp/ConnectionPool;)Lcom/android/okhttp/ConnectionPool; -HSPLcom/android/okhttp/ConfigAwareConnectionPool;->get()Lcom/android/okhttp/ConnectionPool; -HSPLcom/android/okhttp/ConfigAwareConnectionPool;->getInstance()Lcom/android/okhttp/ConfigAwareConnectionPool; -HSPLcom/android/okhttp/ConnectionPool$1;-><init>(Lcom/android/okhttp/ConnectionPool;)V -HSPLcom/android/okhttp/ConnectionPool$1;->run()V -HSPLcom/android/okhttp/ConnectionPool;-><init>(IJ)V -HSPLcom/android/okhttp/ConnectionPool;-><init>(IJLjava/util/concurrent/TimeUnit;)V -HSPLcom/android/okhttp/ConnectionPool;->cleanup(J)J -HSPLcom/android/okhttp/ConnectionPool;->connectionBecameIdle(Lcom/android/okhttp/internal/io/RealConnection;)Z -HSPLcom/android/okhttp/ConnectionPool;->get(Lcom/android/okhttp/Address;Lcom/android/okhttp/internal/http/StreamAllocation;)Lcom/android/okhttp/internal/io/RealConnection; -HSPLcom/android/okhttp/ConnectionPool;->pruneAndGetAllocationCount(Lcom/android/okhttp/internal/io/RealConnection;J)I -HSPLcom/android/okhttp/ConnectionPool;->put(Lcom/android/okhttp/internal/io/RealConnection;)V -HSPLcom/android/okhttp/ConnectionSpec$Builder;-><init>(Lcom/android/okhttp/ConnectionSpec;)V -HSPLcom/android/okhttp/ConnectionSpec$Builder;->access$000(Lcom/android/okhttp/ConnectionSpec$Builder;)Z -HSPLcom/android/okhttp/ConnectionSpec$Builder;->access$100(Lcom/android/okhttp/ConnectionSpec$Builder;)[Ljava/lang/String; -HSPLcom/android/okhttp/ConnectionSpec$Builder;->access$200(Lcom/android/okhttp/ConnectionSpec$Builder;)[Ljava/lang/String; -HSPLcom/android/okhttp/ConnectionSpec$Builder;->access$300(Lcom/android/okhttp/ConnectionSpec$Builder;)Z -HSPLcom/android/okhttp/ConnectionSpec$Builder;->build()Lcom/android/okhttp/ConnectionSpec; -HSPLcom/android/okhttp/ConnectionSpec$Builder;->cipherSuites([Ljava/lang/String;)Lcom/android/okhttp/ConnectionSpec$Builder; -HSPLcom/android/okhttp/ConnectionSpec$Builder;->tlsVersions([Ljava/lang/String;)Lcom/android/okhttp/ConnectionSpec$Builder; -HSPLcom/android/okhttp/ConnectionSpec;-><init>(Lcom/android/okhttp/ConnectionSpec$Builder;)V -HSPLcom/android/okhttp/ConnectionSpec;-><init>(Lcom/android/okhttp/ConnectionSpec$Builder;Lcom/android/okhttp/ConnectionSpec$1;)V -HSPLcom/android/okhttp/ConnectionSpec;->access$400(Lcom/android/okhttp/ConnectionSpec;)Z -HSPLcom/android/okhttp/ConnectionSpec;->access$500(Lcom/android/okhttp/ConnectionSpec;)[Ljava/lang/String; -HSPLcom/android/okhttp/ConnectionSpec;->access$600(Lcom/android/okhttp/ConnectionSpec;)[Ljava/lang/String; -HSPLcom/android/okhttp/ConnectionSpec;->access$700(Lcom/android/okhttp/ConnectionSpec;)Z -HSPLcom/android/okhttp/ConnectionSpec;->apply(Ljavax/net/ssl/SSLSocket;Z)V -HSPLcom/android/okhttp/ConnectionSpec;->equals(Ljava/lang/Object;)Z -HSPLcom/android/okhttp/ConnectionSpec;->hashCode()I -HSPLcom/android/okhttp/ConnectionSpec;->isCompatible(Ljavax/net/ssl/SSLSocket;)Z -HSPLcom/android/okhttp/ConnectionSpec;->supportedSpec(Ljavax/net/ssl/SSLSocket;Z)Lcom/android/okhttp/ConnectionSpec; -HSPLcom/android/okhttp/ConnectionSpec;->supportsTlsExtensions()Z -HSPLcom/android/okhttp/Dispatcher;-><init>()V -HSPLcom/android/okhttp/Dns$1;->lookup(Ljava/lang/String;)Ljava/util/List; -HSPLcom/android/okhttp/Handshake;-><init>(Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V -HSPLcom/android/okhttp/Handshake;->get(Ljavax/net/ssl/SSLSession;)Lcom/android/okhttp/Handshake; -HSPLcom/android/okhttp/Headers$Builder;-><init>()V -HSPLcom/android/okhttp/Headers$Builder;->access$000(Lcom/android/okhttp/Headers$Builder;)Ljava/util/List; -HSPLcom/android/okhttp/Headers$Builder;->add(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers$Builder;->addLenient(Ljava/lang/String;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers$Builder;->addLenient(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers$Builder;->build()Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/Headers$Builder;->checkNameAndValue(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/Headers$Builder;->get(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Headers$Builder;->removeAll(Ljava/lang/String;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers$Builder;->set(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers;-><init>(Lcom/android/okhttp/Headers$Builder;)V -HSPLcom/android/okhttp/Headers;-><init>(Lcom/android/okhttp/Headers$Builder;Lcom/android/okhttp/Headers$1;)V -HSPLcom/android/okhttp/Headers;->get(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Headers;->get([Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Headers;->name(I)Ljava/lang/String; -HSPLcom/android/okhttp/Headers;->newBuilder()Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Headers;->size()I -HSPLcom/android/okhttp/Headers;->value(I)Ljava/lang/String; -HSPLcom/android/okhttp/HttpHandler$CleartextURLFilter;->checkURLPermitted(Ljava/net/URL;)V -HSPLcom/android/okhttp/HttpHandler;-><init>()V -HSPLcom/android/okhttp/HttpHandler;->createHttpOkUrlFactory(Ljava/net/Proxy;)Lcom/android/okhttp/OkUrlFactory; -HSPLcom/android/okhttp/HttpHandler;->newOkUrlFactory(Ljava/net/Proxy;)Lcom/android/okhttp/OkUrlFactory; -HSPLcom/android/okhttp/HttpHandler;->openConnection(Ljava/net/URL;)Ljava/net/URLConnection; -HSPLcom/android/okhttp/HttpUrl$Builder;-><init>()V -HSPLcom/android/okhttp/HttpUrl$Builder;->build()Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/HttpUrl$Builder;->canonicalizeHost(Ljava/lang/String;II)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl$Builder;->containsInvalidHostnameAsciiCodes(Ljava/lang/String;)Z -HSPLcom/android/okhttp/HttpUrl$Builder;->domainToAscii(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl$Builder;->effectivePort()I -HSPLcom/android/okhttp/HttpUrl$Builder;->encodedQuery(Ljava/lang/String;)Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl$Builder;->host(Ljava/lang/String;)Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl$Builder;->isDot(Ljava/lang/String;)Z -HSPLcom/android/okhttp/HttpUrl$Builder;->isDotDot(Ljava/lang/String;)Z -HSPLcom/android/okhttp/HttpUrl$Builder;->parse(Lcom/android/okhttp/HttpUrl;Ljava/lang/String;)Lcom/android/okhttp/HttpUrl$Builder$ParseResult; -HSPLcom/android/okhttp/HttpUrl$Builder;->parsePort(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->port(I)Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl$Builder;->portColonOffset(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->push(Ljava/lang/String;IIZZ)V -HSPLcom/android/okhttp/HttpUrl$Builder;->reencodeForUri()Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl$Builder;->resolvePath(Ljava/lang/String;II)V -HSPLcom/android/okhttp/HttpUrl$Builder;->scheme(Ljava/lang/String;)Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl$Builder;->schemeDelimiterOffset(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->skipLeadingAsciiWhitespace(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->skipTrailingAsciiWhitespace(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->slashCount(Ljava/lang/String;II)I -HSPLcom/android/okhttp/HttpUrl$Builder;->toString()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;-><init>(Lcom/android/okhttp/HttpUrl$Builder;)V -HSPLcom/android/okhttp/HttpUrl;-><init>(Lcom/android/okhttp/HttpUrl$Builder;Lcom/android/okhttp/HttpUrl$1;)V -HSPLcom/android/okhttp/HttpUrl;->access$200(Ljava/lang/String;IILjava/lang/String;)I -HSPLcom/android/okhttp/HttpUrl;->canonicalize(Ljava/lang/String;IILjava/lang/String;ZZZZ)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->canonicalize(Ljava/lang/String;Ljava/lang/String;ZZZZ)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->decodeHexDigit(C)I -HSPLcom/android/okhttp/HttpUrl;->defaultPort(Ljava/lang/String;)I -HSPLcom/android/okhttp/HttpUrl;->delimiterOffset(Ljava/lang/String;IILjava/lang/String;)I -HSPLcom/android/okhttp/HttpUrl;->encodedFragment()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->encodedPassword()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->encodedPath()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->encodedPathSegments()Ljava/util/List; -HSPLcom/android/okhttp/HttpUrl;->encodedQuery()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->encodedUsername()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->equals(Ljava/lang/Object;)Z -HSPLcom/android/okhttp/HttpUrl;->getChecked(Ljava/lang/String;)Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/HttpUrl;->hashCode()I -HSPLcom/android/okhttp/HttpUrl;->host()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->isHttps()Z -HSPLcom/android/okhttp/HttpUrl;->namesAndValuesToQueryString(Ljava/lang/StringBuilder;Ljava/util/List;)V -HSPLcom/android/okhttp/HttpUrl;->newBuilder()Lcom/android/okhttp/HttpUrl$Builder; -HSPLcom/android/okhttp/HttpUrl;->pathSegmentsToString(Ljava/lang/StringBuilder;Ljava/util/List;)V -HSPLcom/android/okhttp/HttpUrl;->percentDecode(Lcom/android/okhttp/okio/Buffer;Ljava/lang/String;IIZ)V -HSPLcom/android/okhttp/HttpUrl;->percentDecode(Ljava/lang/String;IIZ)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->percentDecode(Ljava/lang/String;Z)Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->percentDecode(Ljava/util/List;Z)Ljava/util/List; -HSPLcom/android/okhttp/HttpUrl;->port()I -HSPLcom/android/okhttp/HttpUrl;->queryStringToNamesAndValues(Ljava/lang/String;)Ljava/util/List; -HSPLcom/android/okhttp/HttpUrl;->scheme()Ljava/lang/String; -HSPLcom/android/okhttp/HttpUrl;->uri()Ljava/net/URI; -HSPLcom/android/okhttp/HttpUrl;->url()Ljava/net/URL; -HSPLcom/android/okhttp/HttpsHandler;-><init>()V -HSPLcom/android/okhttp/HttpsHandler;->createHttpsOkUrlFactory(Ljava/net/Proxy;)Lcom/android/okhttp/OkUrlFactory; -HSPLcom/android/okhttp/HttpsHandler;->newOkUrlFactory(Ljava/net/Proxy;)Lcom/android/okhttp/OkUrlFactory; -HSPLcom/android/okhttp/OkHttpClient$1;->addLenient(Lcom/android/okhttp/Headers$Builder;Ljava/lang/String;)V -HSPLcom/android/okhttp/OkHttpClient$1;->apply(Lcom/android/okhttp/ConnectionSpec;Ljavax/net/ssl/SSLSocket;Z)V -HSPLcom/android/okhttp/OkHttpClient$1;->connectionBecameIdle(Lcom/android/okhttp/ConnectionPool;Lcom/android/okhttp/internal/io/RealConnection;)Z -HSPLcom/android/okhttp/OkHttpClient$1;->get(Lcom/android/okhttp/ConnectionPool;Lcom/android/okhttp/Address;Lcom/android/okhttp/internal/http/StreamAllocation;)Lcom/android/okhttp/internal/io/RealConnection; -HSPLcom/android/okhttp/OkHttpClient$1;->getHttpUrlChecked(Ljava/lang/String;)Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/OkHttpClient$1;->internalCache(Lcom/android/okhttp/OkHttpClient;)Lcom/android/okhttp/internal/InternalCache; -HSPLcom/android/okhttp/OkHttpClient$1;->put(Lcom/android/okhttp/ConnectionPool;Lcom/android/okhttp/internal/io/RealConnection;)V -HSPLcom/android/okhttp/OkHttpClient$1;->routeDatabase(Lcom/android/okhttp/ConnectionPool;)Lcom/android/okhttp/internal/RouteDatabase; -HSPLcom/android/okhttp/OkHttpClient;-><init>()V -HSPLcom/android/okhttp/OkHttpClient;-><init>(Lcom/android/okhttp/OkHttpClient;)V -HSPLcom/android/okhttp/OkHttpClient;->copyWithDefaults()Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->getAuthenticator()Lcom/android/okhttp/Authenticator; -HSPLcom/android/okhttp/OkHttpClient;->getCertificatePinner()Lcom/android/okhttp/CertificatePinner; -HSPLcom/android/okhttp/OkHttpClient;->getConnectTimeout()I -HSPLcom/android/okhttp/OkHttpClient;->getConnectionPool()Lcom/android/okhttp/ConnectionPool; -HSPLcom/android/okhttp/OkHttpClient;->getConnectionSpecs()Ljava/util/List; -HSPLcom/android/okhttp/OkHttpClient;->getCookieHandler()Ljava/net/CookieHandler; -HSPLcom/android/okhttp/OkHttpClient;->getDefaultSSLSocketFactory()Ljavax/net/ssl/SSLSocketFactory; -HSPLcom/android/okhttp/OkHttpClient;->getDns()Lcom/android/okhttp/Dns; -HSPLcom/android/okhttp/OkHttpClient;->getFollowRedirects()Z -HSPLcom/android/okhttp/OkHttpClient;->getHostnameVerifier()Ljavax/net/ssl/HostnameVerifier; -HSPLcom/android/okhttp/OkHttpClient;->getProtocols()Ljava/util/List; -HSPLcom/android/okhttp/OkHttpClient;->getProxy()Ljava/net/Proxy; -HSPLcom/android/okhttp/OkHttpClient;->getProxySelector()Ljava/net/ProxySelector; -HSPLcom/android/okhttp/OkHttpClient;->getReadTimeout()I -HSPLcom/android/okhttp/OkHttpClient;->getRetryOnConnectionFailure()Z -HSPLcom/android/okhttp/OkHttpClient;->getSocketFactory()Ljavax/net/SocketFactory; -HSPLcom/android/okhttp/OkHttpClient;->getSslSocketFactory()Ljavax/net/ssl/SSLSocketFactory; -HSPLcom/android/okhttp/OkHttpClient;->getWriteTimeout()I -HSPLcom/android/okhttp/OkHttpClient;->internalCache()Lcom/android/okhttp/internal/InternalCache; -HSPLcom/android/okhttp/OkHttpClient;->setCertificatePinner(Lcom/android/okhttp/CertificatePinner;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setConnectTimeout(JLjava/util/concurrent/TimeUnit;)V -HSPLcom/android/okhttp/OkHttpClient;->setConnectionPool(Lcom/android/okhttp/ConnectionPool;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setConnectionSpecs(Ljava/util/List;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setDns(Lcom/android/okhttp/Dns;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setFollowRedirects(Z)V -HSPLcom/android/okhttp/OkHttpClient;->setFollowSslRedirects(Z)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setHostnameVerifier(Ljavax/net/ssl/HostnameVerifier;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setProtocols(Ljava/util/List;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setProxy(Ljava/net/Proxy;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setReadTimeout(JLjava/util/concurrent/TimeUnit;)V -HSPLcom/android/okhttp/OkHttpClient;->setSocketFactory(Ljavax/net/SocketFactory;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setSslSocketFactory(Ljavax/net/ssl/SSLSocketFactory;)Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkHttpClient;->setWriteTimeout(JLjava/util/concurrent/TimeUnit;)V -HSPLcom/android/okhttp/OkUrlFactories;->open(Lcom/android/okhttp/OkUrlFactory;Ljava/net/URL;Ljava/net/Proxy;)Ljava/net/HttpURLConnection; -HSPLcom/android/okhttp/OkUrlFactories;->setUrlFilter(Lcom/android/okhttp/OkUrlFactory;Lcom/android/okhttp/internal/URLFilter;)V -HSPLcom/android/okhttp/OkUrlFactory;-><init>(Lcom/android/okhttp/OkHttpClient;)V -HSPLcom/android/okhttp/OkUrlFactory;->client()Lcom/android/okhttp/OkHttpClient; -HSPLcom/android/okhttp/OkUrlFactory;->open(Ljava/net/URL;)Ljava/net/HttpURLConnection; -HSPLcom/android/okhttp/OkUrlFactory;->open(Ljava/net/URL;Ljava/net/Proxy;)Ljava/net/HttpURLConnection; -HSPLcom/android/okhttp/OkUrlFactory;->setUrlFilter(Lcom/android/okhttp/internal/URLFilter;)V -HSPLcom/android/okhttp/Protocol;->get(Ljava/lang/String;)Lcom/android/okhttp/Protocol; -HSPLcom/android/okhttp/Protocol;->toString()Ljava/lang/String; -HSPLcom/android/okhttp/Request$Builder;-><init>()V -HSPLcom/android/okhttp/Request$Builder;-><init>(Lcom/android/okhttp/Request;)V -HSPLcom/android/okhttp/Request$Builder;-><init>(Lcom/android/okhttp/Request;Lcom/android/okhttp/Request$1;)V -HSPLcom/android/okhttp/Request$Builder;->access$000(Lcom/android/okhttp/Request$Builder;)Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/Request$Builder;->access$100(Lcom/android/okhttp/Request$Builder;)Ljava/lang/String; -HSPLcom/android/okhttp/Request$Builder;->access$200(Lcom/android/okhttp/Request$Builder;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Request$Builder;->access$300(Lcom/android/okhttp/Request$Builder;)Lcom/android/okhttp/RequestBody; -HSPLcom/android/okhttp/Request$Builder;->access$400(Lcom/android/okhttp/Request$Builder;)Ljava/lang/Object; -HSPLcom/android/okhttp/Request$Builder;->addHeader(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Request$Builder; -HSPLcom/android/okhttp/Request$Builder;->build()Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/Request$Builder;->header(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Request$Builder; -HSPLcom/android/okhttp/Request$Builder;->method(Ljava/lang/String;Lcom/android/okhttp/RequestBody;)Lcom/android/okhttp/Request$Builder; -HSPLcom/android/okhttp/Request$Builder;->url(Lcom/android/okhttp/HttpUrl;)Lcom/android/okhttp/Request$Builder; -HSPLcom/android/okhttp/Request;-><init>(Lcom/android/okhttp/Request$Builder;)V -HSPLcom/android/okhttp/Request;-><init>(Lcom/android/okhttp/Request$Builder;Lcom/android/okhttp/Request$1;)V -HSPLcom/android/okhttp/Request;->access$1000(Lcom/android/okhttp/Request;)Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/Request;->access$600(Lcom/android/okhttp/Request;)Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/Request;->access$700(Lcom/android/okhttp/Request;)Ljava/lang/String; -HSPLcom/android/okhttp/Request;->access$800(Lcom/android/okhttp/Request;)Lcom/android/okhttp/RequestBody; -HSPLcom/android/okhttp/Request;->access$900(Lcom/android/okhttp/Request;)Ljava/lang/Object; -HSPLcom/android/okhttp/Request;->cacheControl()Lcom/android/okhttp/CacheControl; -HSPLcom/android/okhttp/Request;->header(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Request;->headers()Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/Request;->httpUrl()Lcom/android/okhttp/HttpUrl; -HSPLcom/android/okhttp/Request;->isHttps()Z -HSPLcom/android/okhttp/Request;->method()Ljava/lang/String; -HSPLcom/android/okhttp/Request;->newBuilder()Lcom/android/okhttp/Request$Builder; -HSPLcom/android/okhttp/Request;->url()Ljava/net/URL; -HSPLcom/android/okhttp/Response$Builder;-><init>()V -HSPLcom/android/okhttp/Response$Builder;-><init>(Lcom/android/okhttp/Response;)V -HSPLcom/android/okhttp/Response$Builder;-><init>(Lcom/android/okhttp/Response;Lcom/android/okhttp/Response$1;)V -HSPLcom/android/okhttp/Response$Builder;->access$000(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/Response$Builder;->access$100(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Protocol; -HSPLcom/android/okhttp/Response$Builder;->access$200(Lcom/android/okhttp/Response$Builder;)I -HSPLcom/android/okhttp/Response$Builder;->access$300(Lcom/android/okhttp/Response$Builder;)Ljava/lang/String; -HSPLcom/android/okhttp/Response$Builder;->access$400(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Handshake; -HSPLcom/android/okhttp/Response$Builder;->access$500(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Headers$Builder; -HSPLcom/android/okhttp/Response$Builder;->access$600(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/ResponseBody; -HSPLcom/android/okhttp/Response$Builder;->access$700(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response$Builder;->access$800(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response$Builder;->access$900(Lcom/android/okhttp/Response$Builder;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response$Builder;->body(Lcom/android/okhttp/ResponseBody;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->build()Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response$Builder;->cacheResponse(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->checkSupportResponse(Ljava/lang/String;Lcom/android/okhttp/Response;)V -HSPLcom/android/okhttp/Response$Builder;->code(I)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->handshake(Lcom/android/okhttp/Handshake;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->header(Ljava/lang/String;Ljava/lang/String;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->headers(Lcom/android/okhttp/Headers;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->message(Ljava/lang/String;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->networkResponse(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->priorResponse(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->protocol(Lcom/android/okhttp/Protocol;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response$Builder;->request(Lcom/android/okhttp/Request;)Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response;-><init>(Lcom/android/okhttp/Response$Builder;)V -HSPLcom/android/okhttp/Response;-><init>(Lcom/android/okhttp/Response$Builder;Lcom/android/okhttp/Response$1;)V -HSPLcom/android/okhttp/Response;->access$1100(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/Response;->access$1200(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Protocol; -HSPLcom/android/okhttp/Response;->access$1300(Lcom/android/okhttp/Response;)I -HSPLcom/android/okhttp/Response;->access$1400(Lcom/android/okhttp/Response;)Ljava/lang/String; -HSPLcom/android/okhttp/Response;->access$1500(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Handshake; -HSPLcom/android/okhttp/Response;->access$1600(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/Response;->access$1700(Lcom/android/okhttp/Response;)Lcom/android/okhttp/ResponseBody; -HSPLcom/android/okhttp/Response;->access$1800(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response;->access$1900(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response;->access$2000(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response;->body()Lcom/android/okhttp/ResponseBody; -HSPLcom/android/okhttp/Response;->cacheResponse()Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response;->code()I -HSPLcom/android/okhttp/Response;->header(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Response;->header(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/Response;->headers()Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/Response;->message()Ljava/lang/String; -HSPLcom/android/okhttp/Response;->networkResponse()Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/Response;->newBuilder()Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/Response;->protocol()Lcom/android/okhttp/Protocol; -HSPLcom/android/okhttp/Response;->request()Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/ResponseBody;-><init>()V -HSPLcom/android/okhttp/ResponseBody;->byteStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/Route;-><init>(Lcom/android/okhttp/Address;Ljava/net/Proxy;Ljava/net/InetSocketAddress;)V -HSPLcom/android/okhttp/Route;->equals(Ljava/lang/Object;)Z -HSPLcom/android/okhttp/Route;->getAddress()Lcom/android/okhttp/Address; -HSPLcom/android/okhttp/Route;->getProxy()Ljava/net/Proxy; -HSPLcom/android/okhttp/Route;->getSocketAddress()Ljava/net/InetSocketAddress; -HSPLcom/android/okhttp/Route;->hashCode()I -HSPLcom/android/okhttp/Route;->requiresTunnel()Z -HSPLcom/android/okhttp/internal/ConnectionSpecSelector;-><init>(Ljava/util/List;)V -HSPLcom/android/okhttp/internal/ConnectionSpecSelector;->configureSecureSocket(Ljavax/net/ssl/SSLSocket;)Lcom/android/okhttp/ConnectionSpec; -HSPLcom/android/okhttp/internal/ConnectionSpecSelector;->connectionFailed(Ljava/io/IOException;)Z -HSPLcom/android/okhttp/internal/ConnectionSpecSelector;->isFallbackPossible(Ljavax/net/ssl/SSLSocket;)Z -HSPLcom/android/okhttp/internal/OptionalMethod;->getMethod(Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLcom/android/okhttp/internal/OptionalMethod;->getPublicMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLcom/android/okhttp/internal/OptionalMethod;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/okhttp/internal/OptionalMethod;->invokeOptional(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/okhttp/internal/OptionalMethod;->invokeOptionalWithoutCheckedException(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/okhttp/internal/OptionalMethod;->invokeWithoutCheckedException(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/okhttp/internal/OptionalMethod;->isSupported(Ljava/lang/Object;)Z -HSPLcom/android/okhttp/internal/Platform;->afterHandshake(Ljavax/net/ssl/SSLSocket;)V -HSPLcom/android/okhttp/internal/Platform;->concatLengthPrefixed(Ljava/util/List;)[B -HSPLcom/android/okhttp/internal/Platform;->configureTlsExtensions(Ljavax/net/ssl/SSLSocket;Ljava/lang/String;Ljava/util/List;)V -HSPLcom/android/okhttp/internal/Platform;->connectSocket(Ljava/net/Socket;Ljava/net/InetSocketAddress;I)V -HSPLcom/android/okhttp/internal/Platform;->get()Lcom/android/okhttp/internal/Platform; -HSPLcom/android/okhttp/internal/Platform;->getProtocolIds(Ljava/util/List;)[Ljava/lang/String; -HSPLcom/android/okhttp/internal/Platform;->getSelectedProtocol(Ljavax/net/ssl/SSLSocket;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/Platform;->isPlatformSocket(Ljavax/net/ssl/SSLSocket;)Z -HSPLcom/android/okhttp/internal/RouteDatabase;-><init>()V -HSPLcom/android/okhttp/internal/RouteDatabase;->connected(Lcom/android/okhttp/Route;)V -HSPLcom/android/okhttp/internal/RouteDatabase;->failed(Lcom/android/okhttp/Route;)V -HSPLcom/android/okhttp/internal/RouteDatabase;->shouldPostpone(Lcom/android/okhttp/Route;)Z -HSPLcom/android/okhttp/internal/Util$1;-><init>(Ljava/lang/String;Z)V -HSPLcom/android/okhttp/internal/Util$1;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; -HSPLcom/android/okhttp/internal/Util;->checkOffsetAndCount(JJJ)V -HSPLcom/android/okhttp/internal/Util;->closeQuietly(Ljava/io/Closeable;)V -HSPLcom/android/okhttp/internal/Util;->closeQuietly(Ljava/net/Socket;)V -HSPLcom/android/okhttp/internal/Util;->discard(Lcom/android/okhttp/okio/Source;ILjava/util/concurrent/TimeUnit;)Z -HSPLcom/android/okhttp/internal/Util;->equal(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLcom/android/okhttp/internal/Util;->hostHeader(Lcom/android/okhttp/HttpUrl;Z)Ljava/lang/String; -HSPLcom/android/okhttp/internal/Util;->immutableList(Ljava/util/List;)Ljava/util/List; -HSPLcom/android/okhttp/internal/Util;->immutableList([Ljava/lang/Object;)Ljava/util/List; -HSPLcom/android/okhttp/internal/Util;->skipAll(Lcom/android/okhttp/okio/Source;ILjava/util/concurrent/TimeUnit;)Z -HSPLcom/android/okhttp/internal/Util;->threadFactory(Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory; -HSPLcom/android/okhttp/internal/Util;->toHumanReadableAscii(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/http/CacheStrategy$Factory;-><init>(JLcom/android/okhttp/Request;Lcom/android/okhttp/Response;)V -HSPLcom/android/okhttp/internal/http/CacheStrategy$Factory;->get()Lcom/android/okhttp/internal/http/CacheStrategy; -HSPLcom/android/okhttp/internal/http/CacheStrategy$Factory;->getCandidate()Lcom/android/okhttp/internal/http/CacheStrategy; -HSPLcom/android/okhttp/internal/http/CacheStrategy;-><init>(Lcom/android/okhttp/Request;Lcom/android/okhttp/Response;)V -HSPLcom/android/okhttp/internal/http/CacheStrategy;-><init>(Lcom/android/okhttp/Request;Lcom/android/okhttp/Response;Lcom/android/okhttp/internal/http/CacheStrategy$1;)V -HSPLcom/android/okhttp/internal/http/HeaderParser;->skipUntil(Ljava/lang/String;ILjava/lang/String;)I -HSPLcom/android/okhttp/internal/http/HeaderParser;->skipWhitespace(Ljava/lang/String;I)I -HSPLcom/android/okhttp/internal/http/Http1xStream$AbstractSource;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$AbstractSource;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;Lcom/android/okhttp/internal/http/Http1xStream$1;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$AbstractSource;->endOfInput()V -HSPLcom/android/okhttp/internal/http/Http1xStream$AbstractSource;->timeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/internal/http/Http1xStream$AbstractSource;->unexpectedEndOfInput()V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSink;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSink;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;Lcom/android/okhttp/internal/http/Http1xStream$1;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSink;->close()V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSink;->flush()V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSink;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSource;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;Lcom/android/okhttp/internal/http/HttpEngine;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSource;->close()V -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSource;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/internal/http/Http1xStream$ChunkedSource;->readChunkSize()V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;J)V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;JLcom/android/okhttp/internal/http/Http1xStream$1;)V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink;->close()V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink;->flush()V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSource;-><init>(Lcom/android/okhttp/internal/http/Http1xStream;J)V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSource;->close()V -HSPLcom/android/okhttp/internal/http/Http1xStream$FixedLengthSource;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/internal/http/Http1xStream;-><init>(Lcom/android/okhttp/internal/http/StreamAllocation;Lcom/android/okhttp/okio/BufferedSource;Lcom/android/okhttp/okio/BufferedSink;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$300(Lcom/android/okhttp/internal/http/Http1xStream;)Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$400(Lcom/android/okhttp/internal/http/Http1xStream;Lcom/android/okhttp/okio/ForwardingTimeout;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$500(Lcom/android/okhttp/internal/http/Http1xStream;)I -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$502(Lcom/android/okhttp/internal/http/Http1xStream;I)I -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$600(Lcom/android/okhttp/internal/http/Http1xStream;)Lcom/android/okhttp/okio/BufferedSource; -HSPLcom/android/okhttp/internal/http/Http1xStream;->access$700(Lcom/android/okhttp/internal/http/Http1xStream;)Lcom/android/okhttp/internal/http/StreamAllocation; -HSPLcom/android/okhttp/internal/http/Http1xStream;->cancel()V -HSPLcom/android/okhttp/internal/http/Http1xStream;->createRequestBody(Lcom/android/okhttp/Request;J)Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/internal/http/Http1xStream;->detachTimeout(Lcom/android/okhttp/okio/ForwardingTimeout;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->finishRequest()V -HSPLcom/android/okhttp/internal/http/Http1xStream;->getTransferStream(Lcom/android/okhttp/Response;)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/internal/http/Http1xStream;->newChunkedSink()Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/internal/http/Http1xStream;->newChunkedSource(Lcom/android/okhttp/internal/http/HttpEngine;)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/internal/http/Http1xStream;->newFixedLengthSink(J)Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/internal/http/Http1xStream;->newFixedLengthSource(J)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/internal/http/Http1xStream;->openResponseBody(Lcom/android/okhttp/Response;)Lcom/android/okhttp/ResponseBody; -HSPLcom/android/okhttp/internal/http/Http1xStream;->readHeaders()Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/internal/http/Http1xStream;->readResponse()Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/internal/http/Http1xStream;->readResponseHeaders()Lcom/android/okhttp/Response$Builder; -HSPLcom/android/okhttp/internal/http/Http1xStream;->setHttpEngine(Lcom/android/okhttp/internal/http/HttpEngine;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->writeRequest(Lcom/android/okhttp/Headers;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->writeRequestBody(Lcom/android/okhttp/internal/http/RetryableSink;)V -HSPLcom/android/okhttp/internal/http/Http1xStream;->writeRequestHeaders(Lcom/android/okhttp/Request;)V -HSPLcom/android/okhttp/internal/http/HttpEngine;-><init>(Lcom/android/okhttp/OkHttpClient;Lcom/android/okhttp/Request;ZZZLcom/android/okhttp/internal/http/StreamAllocation;Lcom/android/okhttp/internal/http/RetryableSink;Lcom/android/okhttp/Response;)V -HSPLcom/android/okhttp/internal/http/HttpEngine;->cacheWritingResponse(Lcom/android/okhttp/internal/http/CacheRequest;Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/internal/http/HttpEngine;->cancel()V -HSPLcom/android/okhttp/internal/http/HttpEngine;->close()Lcom/android/okhttp/internal/http/StreamAllocation; -HSPLcom/android/okhttp/internal/http/HttpEngine;->connect()Lcom/android/okhttp/internal/http/HttpStream; -HSPLcom/android/okhttp/internal/http/HttpEngine;->createAddress(Lcom/android/okhttp/OkHttpClient;Lcom/android/okhttp/Request;)Lcom/android/okhttp/Address; -HSPLcom/android/okhttp/internal/http/HttpEngine;->followUpRequest()Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/internal/http/HttpEngine;->getBufferedRequestBody()Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/internal/http/HttpEngine;->getConnection()Lcom/android/okhttp/Connection; -HSPLcom/android/okhttp/internal/http/HttpEngine;->getRequest()Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/internal/http/HttpEngine;->getRequestBody()Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/internal/http/HttpEngine;->getResponse()Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/internal/http/HttpEngine;->hasBody(Lcom/android/okhttp/Response;)Z -HSPLcom/android/okhttp/internal/http/HttpEngine;->hasResponse()Z -HSPLcom/android/okhttp/internal/http/HttpEngine;->maybeCache()V -HSPLcom/android/okhttp/internal/http/HttpEngine;->networkRequest(Lcom/android/okhttp/Request;)Lcom/android/okhttp/Request; -HSPLcom/android/okhttp/internal/http/HttpEngine;->permitsRequestBody(Lcom/android/okhttp/Request;)Z -HSPLcom/android/okhttp/internal/http/HttpEngine;->readNetworkResponse()Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/internal/http/HttpEngine;->readResponse()V -HSPLcom/android/okhttp/internal/http/HttpEngine;->receiveHeaders(Lcom/android/okhttp/Headers;)V -HSPLcom/android/okhttp/internal/http/HttpEngine;->recover(Lcom/android/okhttp/internal/http/RouteException;)Lcom/android/okhttp/internal/http/HttpEngine; -HSPLcom/android/okhttp/internal/http/HttpEngine;->recover(Ljava/io/IOException;)Lcom/android/okhttp/internal/http/HttpEngine; -HSPLcom/android/okhttp/internal/http/HttpEngine;->recover(Ljava/io/IOException;Lcom/android/okhttp/okio/Sink;)Lcom/android/okhttp/internal/http/HttpEngine; -HSPLcom/android/okhttp/internal/http/HttpEngine;->releaseStreamAllocation()V -HSPLcom/android/okhttp/internal/http/HttpEngine;->sendRequest()V -HSPLcom/android/okhttp/internal/http/HttpEngine;->stripBody(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/internal/http/HttpEngine;->unzip(Lcom/android/okhttp/Response;)Lcom/android/okhttp/Response; -HSPLcom/android/okhttp/internal/http/HttpEngine;->writingRequestHeaders()V -HSPLcom/android/okhttp/internal/http/HttpMethod;->permitsRequestBody(Ljava/lang/String;)Z -HSPLcom/android/okhttp/internal/http/HttpMethod;->requiresRequestBody(Ljava/lang/String;)Z -HSPLcom/android/okhttp/internal/http/OkHeaders$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLcom/android/okhttp/internal/http/OkHeaders$1;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/android/okhttp/internal/http/OkHeaders;->contentLength(Lcom/android/okhttp/Headers;)J -HSPLcom/android/okhttp/internal/http/OkHeaders;->contentLength(Lcom/android/okhttp/Request;)J -HSPLcom/android/okhttp/internal/http/OkHeaders;->contentLength(Lcom/android/okhttp/Response;)J -HSPLcom/android/okhttp/internal/http/OkHeaders;->stringToLong(Ljava/lang/String;)J -HSPLcom/android/okhttp/internal/http/OkHeaders;->toMultimap(Lcom/android/okhttp/Headers;Ljava/lang/String;)Ljava/util/Map; -HSPLcom/android/okhttp/internal/http/RealResponseBody;-><init>(Lcom/android/okhttp/Headers;Lcom/android/okhttp/okio/BufferedSource;)V -HSPLcom/android/okhttp/internal/http/RealResponseBody;->source()Lcom/android/okhttp/okio/BufferedSource; -HSPLcom/android/okhttp/internal/http/RequestLine;->get(Lcom/android/okhttp/Request;Ljava/net/Proxy$Type;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/http/RequestLine;->includeAuthorityInRequestLine(Lcom/android/okhttp/Request;Ljava/net/Proxy$Type;)Z -HSPLcom/android/okhttp/internal/http/RequestLine;->requestPath(Lcom/android/okhttp/HttpUrl;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/http/RetryableSink;-><init>()V -HSPLcom/android/okhttp/internal/http/RetryableSink;-><init>(I)V -HSPLcom/android/okhttp/internal/http/RetryableSink;->close()V -HSPLcom/android/okhttp/internal/http/RetryableSink;->contentLength()J -HSPLcom/android/okhttp/internal/http/RetryableSink;->flush()V -HSPLcom/android/okhttp/internal/http/RetryableSink;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/internal/http/RetryableSink;->writeToSocket(Lcom/android/okhttp/okio/Sink;)V -HSPLcom/android/okhttp/internal/http/RouteException;-><init>(Ljava/io/IOException;)V -HSPLcom/android/okhttp/internal/http/RouteException;->getLastConnectException()Ljava/io/IOException; -HSPLcom/android/okhttp/internal/http/RouteSelector;-><init>(Lcom/android/okhttp/Address;Lcom/android/okhttp/internal/RouteDatabase;)V -HSPLcom/android/okhttp/internal/http/RouteSelector;->connectFailed(Lcom/android/okhttp/Route;Ljava/io/IOException;)V -HSPLcom/android/okhttp/internal/http/RouteSelector;->hasNext()Z -HSPLcom/android/okhttp/internal/http/RouteSelector;->hasNextInetSocketAddress()Z -HSPLcom/android/okhttp/internal/http/RouteSelector;->hasNextPostponed()Z -HSPLcom/android/okhttp/internal/http/RouteSelector;->hasNextProxy()Z -HSPLcom/android/okhttp/internal/http/RouteSelector;->next()Lcom/android/okhttp/Route; -HSPLcom/android/okhttp/internal/http/RouteSelector;->nextInetSocketAddress()Ljava/net/InetSocketAddress; -HSPLcom/android/okhttp/internal/http/RouteSelector;->nextPostponed()Lcom/android/okhttp/Route; -HSPLcom/android/okhttp/internal/http/RouteSelector;->nextProxy()Ljava/net/Proxy; -HSPLcom/android/okhttp/internal/http/RouteSelector;->resetNextInetSocketAddress(Ljava/net/Proxy;)V -HSPLcom/android/okhttp/internal/http/RouteSelector;->resetNextProxy(Lcom/android/okhttp/HttpUrl;Ljava/net/Proxy;)V -HSPLcom/android/okhttp/internal/http/StatusLine;-><init>(Lcom/android/okhttp/Protocol;ILjava/lang/String;)V -HSPLcom/android/okhttp/internal/http/StatusLine;->get(Lcom/android/okhttp/Response;)Lcom/android/okhttp/internal/http/StatusLine; -HSPLcom/android/okhttp/internal/http/StatusLine;->parse(Ljava/lang/String;)Lcom/android/okhttp/internal/http/StatusLine; -HSPLcom/android/okhttp/internal/http/StatusLine;->toString()Ljava/lang/String; -HSPLcom/android/okhttp/internal/http/StreamAllocation;-><init>(Lcom/android/okhttp/ConnectionPool;Lcom/android/okhttp/Address;)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->acquire(Lcom/android/okhttp/internal/io/RealConnection;)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->cancel()V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->connection()Lcom/android/okhttp/internal/io/RealConnection; -HSPLcom/android/okhttp/internal/http/StreamAllocation;->connectionFailed()V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->connectionFailed(Ljava/io/IOException;)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->deallocate(ZZZ)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->findConnection(IIIZ)Lcom/android/okhttp/internal/io/RealConnection; -HSPLcom/android/okhttp/internal/http/StreamAllocation;->findHealthyConnection(IIIZZ)Lcom/android/okhttp/internal/io/RealConnection; -HSPLcom/android/okhttp/internal/http/StreamAllocation;->isRecoverable(Lcom/android/okhttp/internal/http/RouteException;)Z -HSPLcom/android/okhttp/internal/http/StreamAllocation;->isRecoverable(Ljava/io/IOException;)Z -HSPLcom/android/okhttp/internal/http/StreamAllocation;->newStream(IIIZZ)Lcom/android/okhttp/internal/http/HttpStream; -HSPLcom/android/okhttp/internal/http/StreamAllocation;->noNewStreams()V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->recover(Lcom/android/okhttp/internal/http/RouteException;)Z -HSPLcom/android/okhttp/internal/http/StreamAllocation;->recover(Ljava/io/IOException;Lcom/android/okhttp/okio/Sink;)Z -HSPLcom/android/okhttp/internal/http/StreamAllocation;->release()V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->release(Lcom/android/okhttp/internal/io/RealConnection;)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->routeDatabase()Lcom/android/okhttp/internal/RouteDatabase; -HSPLcom/android/okhttp/internal/http/StreamAllocation;->streamFinished(Lcom/android/okhttp/internal/http/HttpStream;)V -HSPLcom/android/okhttp/internal/http/StreamAllocation;->toString()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;-><init>(Ljava/net/HttpURLConnection;)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->addRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->connect()V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->disconnect()V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getContentEncoding()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getContentLength()I -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getContentType()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getErrorStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getHeaderField(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getHeaderFields()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getInputStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getOutputStream()Ljava/io/OutputStream; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getRequestMethod()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getRequestProperties()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getRequestProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getResponseCode()I -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getResponseMessage()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->getURL()Ljava/net/URL; -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setChunkedStreamingMode(I)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setConnectTimeout(I)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setDefaultUseCaches(Z)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setDoInput(Z)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setDoOutput(Z)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setFixedLengthStreamingMode(I)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setInstanceFollowRedirects(Z)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setReadTimeout(I)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setRequestMethod(Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection;->setUseCaches(Z)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;-><init>(Ljava/net/URL;Lcom/android/okhttp/OkHttpClient;)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;-><init>(Ljava/net/URL;Lcom/android/okhttp/OkHttpClient;Lcom/android/okhttp/internal/URLFilter;)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->addRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->connect()V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->defaultUserAgent()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->disconnect()V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->execute(Z)Z -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getErrorStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getHeaderField(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getHeaderFields()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getHeaders()Lcom/android/okhttp/Headers; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getInputStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getOutputStream()Ljava/io/OutputStream; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getRequestProperties()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getRequestProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getResponse()Lcom/android/okhttp/internal/http/HttpEngine; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getResponseCode()I -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->getResponseMessage()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->initHttpEngine()V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->newHttpEngine(Ljava/lang/String;Lcom/android/okhttp/internal/http/StreamAllocation;Lcom/android/okhttp/internal/http/RetryableSink;Lcom/android/okhttp/Response;)Lcom/android/okhttp/internal/http/HttpEngine; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->responseSourceHeader(Lcom/android/okhttp/Response;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setConnectTimeout(I)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setFixedLengthStreamingMode(I)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setFixedLengthStreamingMode(J)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setInstanceFollowRedirects(Z)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setReadTimeout(I)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setRequestMethod(Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpURLConnectionImpl;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;-><init>(Lcom/android/okhttp/internal/huc/HttpURLConnectionImpl;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;-><init>(Ljava/net/URL;Lcom/android/okhttp/OkHttpClient;Lcom/android/okhttp/internal/URLFilter;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->addRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->connect()V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->disconnect()V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getContentEncoding()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getContentLength()I -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getContentType()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getErrorStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getHeaderField(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getHeaderFields()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getInputStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getOutputStream()Ljava/io/OutputStream; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getRequestMethod()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getRequestProperties()Ljava/util/Map; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getRequestProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getResponseCode()I -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getResponseMessage()Ljava/lang/String; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->getURL()Ljava/net/URL; -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setChunkedStreamingMode(I)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setConnectTimeout(I)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setDefaultUseCaches(Z)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setDoInput(Z)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setDoOutput(Z)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setFixedLengthStreamingMode(I)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setInstanceFollowRedirects(Z)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setReadTimeout(I)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setRequestMethod(Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setSSLSocketFactory(Ljavax/net/ssl/SSLSocketFactory;)V -HSPLcom/android/okhttp/internal/huc/HttpsURLConnectionImpl;->setUseCaches(Z)V -HSPLcom/android/okhttp/internal/io/RealConnection;-><init>(Lcom/android/okhttp/Route;)V -HSPLcom/android/okhttp/internal/io/RealConnection;->allocationLimit()I -HSPLcom/android/okhttp/internal/io/RealConnection;->cancel()V -HSPLcom/android/okhttp/internal/io/RealConnection;->connect(IIILjava/util/List;Z)V -HSPLcom/android/okhttp/internal/io/RealConnection;->connectSocket(IIILcom/android/okhttp/internal/ConnectionSpecSelector;)V -HSPLcom/android/okhttp/internal/io/RealConnection;->connectTls(IILcom/android/okhttp/internal/ConnectionSpecSelector;)V -HSPLcom/android/okhttp/internal/io/RealConnection;->getHandshake()Lcom/android/okhttp/Handshake; -HSPLcom/android/okhttp/internal/io/RealConnection;->getRoute()Lcom/android/okhttp/Route; -HSPLcom/android/okhttp/internal/io/RealConnection;->getSocket()Ljava/net/Socket; -HSPLcom/android/okhttp/internal/io/RealConnection;->isHealthy(Z)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->getSubjectAltNames(Ljava/security/cert/X509Certificate;I)Ljava/util/List; -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->isPrintableAscii(Ljava/lang/String;)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->verify(Ljava/lang/String;Ljava/security/cert/X509Certificate;)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->verify(Ljava/lang/String;Ljavax/net/ssl/SSLSession;)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->verifyAsIpAddress(Ljava/lang/String;)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->verifyHostName(Ljava/lang/String;Ljava/lang/String;)Z -HSPLcom/android/okhttp/internal/tls/OkHostnameVerifier;->verifyHostName(Ljava/lang/String;Ljava/security/cert/X509Certificate;)Z -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory$DnsAdapter;-><init>(Lcom/android/okhttp/internalandroidapi/Dns;)V -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory$DnsAdapter;->hashCode()I -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory$DnsAdapter;->lookup(Ljava/lang/String;)Ljava/util/List; -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory;-><init>()V -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory;->internalOpenConnection(Ljava/net/URL;Ljavax/net/SocketFactory;Ljava/net/Proxy;)Ljava/net/URLConnection; -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory;->openConnection(Ljava/net/URL;Ljavax/net/SocketFactory;Ljava/net/Proxy;)Ljava/net/URLConnection; -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory;->setDns(Lcom/android/okhttp/internalandroidapi/Dns;)V -HSPLcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory;->setNewConnectionPool(IJLjava/util/concurrent/TimeUnit;)V -HSPLcom/android/okhttp/okio/AsyncTimeout$1;-><init>(Lcom/android/okhttp/okio/AsyncTimeout;Lcom/android/okhttp/okio/Sink;)V -HSPLcom/android/okhttp/okio/AsyncTimeout$1;->flush()V -HSPLcom/android/okhttp/okio/AsyncTimeout$1;->timeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/AsyncTimeout$1;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/okio/AsyncTimeout$2;-><init>(Lcom/android/okhttp/okio/AsyncTimeout;Lcom/android/okhttp/okio/Source;)V -HSPLcom/android/okhttp/okio/AsyncTimeout$2;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/AsyncTimeout$2;->timeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/AsyncTimeout$Watchdog;-><init>()V -HSPLcom/android/okhttp/okio/AsyncTimeout$Watchdog;->run()V -HSPLcom/android/okhttp/okio/AsyncTimeout;-><init>()V -HSPLcom/android/okhttp/okio/AsyncTimeout;->access$000()Lcom/android/okhttp/okio/AsyncTimeout; -HSPLcom/android/okhttp/okio/AsyncTimeout;->awaitTimeout()Lcom/android/okhttp/okio/AsyncTimeout; -HSPLcom/android/okhttp/okio/AsyncTimeout;->cancelScheduledTimeout(Lcom/android/okhttp/okio/AsyncTimeout;)Z -HSPLcom/android/okhttp/okio/AsyncTimeout;->enter()V -HSPLcom/android/okhttp/okio/AsyncTimeout;->exit()Z -HSPLcom/android/okhttp/okio/AsyncTimeout;->exit(Ljava/io/IOException;)Ljava/io/IOException; -HSPLcom/android/okhttp/okio/AsyncTimeout;->exit(Z)V -HSPLcom/android/okhttp/okio/AsyncTimeout;->remainingNanos(J)J -HSPLcom/android/okhttp/okio/AsyncTimeout;->scheduleTimeout(Lcom/android/okhttp/okio/AsyncTimeout;JZ)V -HSPLcom/android/okhttp/okio/AsyncTimeout;->sink(Lcom/android/okhttp/okio/Sink;)Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/okio/AsyncTimeout;->source(Lcom/android/okhttp/okio/Source;)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/okio/Buffer;-><init>()V -HSPLcom/android/okhttp/okio/Buffer;->clear()V -HSPLcom/android/okhttp/okio/Buffer;->completeSegmentByteCount()J -HSPLcom/android/okhttp/okio/Buffer;->copyTo(Lcom/android/okhttp/okio/Buffer;JJ)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->exhausted()Z -HSPLcom/android/okhttp/okio/Buffer;->getByte(J)B -HSPLcom/android/okhttp/okio/Buffer;->indexOf(BJ)J -HSPLcom/android/okhttp/okio/Buffer;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/Buffer;->read([BII)I -HSPLcom/android/okhttp/okio/Buffer;->readByte()B -HSPLcom/android/okhttp/okio/Buffer;->readByteArray()[B -HSPLcom/android/okhttp/okio/Buffer;->readByteArray(J)[B -HSPLcom/android/okhttp/okio/Buffer;->readByteString()Lcom/android/okhttp/okio/ByteString; -HSPLcom/android/okhttp/okio/Buffer;->readFully([B)V -HSPLcom/android/okhttp/okio/Buffer;->readHexadecimalUnsignedLong()J -HSPLcom/android/okhttp/okio/Buffer;->readInt()I -HSPLcom/android/okhttp/okio/Buffer;->readIntLe()I -HSPLcom/android/okhttp/okio/Buffer;->readShort()S -HSPLcom/android/okhttp/okio/Buffer;->readString(JLjava/nio/charset/Charset;)Ljava/lang/String; -HSPLcom/android/okhttp/okio/Buffer;->readUtf8()Ljava/lang/String; -HSPLcom/android/okhttp/okio/Buffer;->readUtf8(J)Ljava/lang/String; -HSPLcom/android/okhttp/okio/Buffer;->readUtf8Line(J)Ljava/lang/String; -HSPLcom/android/okhttp/okio/Buffer;->size()J -HSPLcom/android/okhttp/okio/Buffer;->skip(J)V -HSPLcom/android/okhttp/okio/Buffer;->writableSegment(I)Lcom/android/okhttp/okio/Segment; -HSPLcom/android/okhttp/okio/Buffer;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/okio/Buffer;->write([BII)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->writeByte(I)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->writeHexadecimalUnsignedLong(J)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->writeUtf8(Ljava/lang/String;)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->writeUtf8(Ljava/lang/String;II)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/Buffer;->writeUtf8CodePoint(I)Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/ByteString;-><init>([B)V -HSPLcom/android/okhttp/okio/ByteString;->hex()Ljava/lang/String; -HSPLcom/android/okhttp/okio/ForwardingTimeout;-><init>(Lcom/android/okhttp/okio/Timeout;)V -HSPLcom/android/okhttp/okio/ForwardingTimeout;->clearDeadline()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/ForwardingTimeout;->deadlineNanoTime(J)Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/ForwardingTimeout;->delegate()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/ForwardingTimeout;->hasDeadline()Z -HSPLcom/android/okhttp/okio/ForwardingTimeout;->setDelegate(Lcom/android/okhttp/okio/Timeout;)Lcom/android/okhttp/okio/ForwardingTimeout; -HSPLcom/android/okhttp/okio/GzipSource;-><init>(Lcom/android/okhttp/okio/Source;)V -HSPLcom/android/okhttp/okio/GzipSource;->checkEqual(Ljava/lang/String;II)V -HSPLcom/android/okhttp/okio/GzipSource;->close()V -HSPLcom/android/okhttp/okio/GzipSource;->consumeHeader()V -HSPLcom/android/okhttp/okio/GzipSource;->consumeTrailer()V -HSPLcom/android/okhttp/okio/GzipSource;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/GzipSource;->updateCrc(Lcom/android/okhttp/okio/Buffer;JJ)V -HSPLcom/android/okhttp/okio/InflaterSource;-><init>(Lcom/android/okhttp/okio/BufferedSource;Ljava/util/zip/Inflater;)V -HSPLcom/android/okhttp/okio/InflaterSource;->close()V -HSPLcom/android/okhttp/okio/InflaterSource;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/InflaterSource;->refill()Z -HSPLcom/android/okhttp/okio/InflaterSource;->releaseInflatedBytes()V -HSPLcom/android/okhttp/okio/Okio$1;-><init>(Lcom/android/okhttp/okio/Timeout;Ljava/io/OutputStream;)V -HSPLcom/android/okhttp/okio/Okio$1;->flush()V -HSPLcom/android/okhttp/okio/Okio$1;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/okio/Okio$2;-><init>(Lcom/android/okhttp/okio/Timeout;Ljava/io/InputStream;)V -HSPLcom/android/okhttp/okio/Okio$2;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/Okio$3;-><init>(Ljava/net/Socket;)V -HSPLcom/android/okhttp/okio/Okio$3;->newTimeoutException(Ljava/io/IOException;)Ljava/io/IOException; -HSPLcom/android/okhttp/okio/Okio$3;->timedOut()V -HSPLcom/android/okhttp/okio/Okio;->buffer(Lcom/android/okhttp/okio/Sink;)Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/okio/Okio;->buffer(Lcom/android/okhttp/okio/Source;)Lcom/android/okhttp/okio/BufferedSource; -HSPLcom/android/okhttp/okio/Okio;->sink(Ljava/io/OutputStream;Lcom/android/okhttp/okio/Timeout;)Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/okio/Okio;->sink(Ljava/net/Socket;)Lcom/android/okhttp/okio/Sink; -HSPLcom/android/okhttp/okio/Okio;->source(Ljava/io/InputStream;Lcom/android/okhttp/okio/Timeout;)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/okio/Okio;->source(Ljava/net/Socket;)Lcom/android/okhttp/okio/Source; -HSPLcom/android/okhttp/okio/Okio;->timeout(Ljava/net/Socket;)Lcom/android/okhttp/okio/AsyncTimeout; -HSPLcom/android/okhttp/okio/RealBufferedSink$1;-><init>(Lcom/android/okhttp/okio/RealBufferedSink;)V -HSPLcom/android/okhttp/okio/RealBufferedSink$1;->close()V -HSPLcom/android/okhttp/okio/RealBufferedSink$1;->flush()V -HSPLcom/android/okhttp/okio/RealBufferedSink$1;->write([BII)V -HSPLcom/android/okhttp/okio/RealBufferedSink;-><init>(Lcom/android/okhttp/okio/Sink;)V -HSPLcom/android/okhttp/okio/RealBufferedSink;-><init>(Lcom/android/okhttp/okio/Sink;Lcom/android/okhttp/okio/Buffer;)V -HSPLcom/android/okhttp/okio/RealBufferedSink;->access$000(Lcom/android/okhttp/okio/RealBufferedSink;)Z -HSPLcom/android/okhttp/okio/RealBufferedSink;->buffer()Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/RealBufferedSink;->close()V -HSPLcom/android/okhttp/okio/RealBufferedSink;->emit()Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/okio/RealBufferedSink;->emitCompleteSegments()Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/okio/RealBufferedSink;->flush()V -HSPLcom/android/okhttp/okio/RealBufferedSink;->outputStream()Ljava/io/OutputStream; -HSPLcom/android/okhttp/okio/RealBufferedSink;->timeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/RealBufferedSink;->write(Lcom/android/okhttp/okio/Buffer;J)V -HSPLcom/android/okhttp/okio/RealBufferedSink;->writeHexadecimalUnsignedLong(J)Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/okio/RealBufferedSink;->writeUtf8(Ljava/lang/String;)Lcom/android/okhttp/okio/BufferedSink; -HSPLcom/android/okhttp/okio/RealBufferedSource$1;-><init>(Lcom/android/okhttp/okio/RealBufferedSource;)V -HSPLcom/android/okhttp/okio/RealBufferedSource$1;->available()I -HSPLcom/android/okhttp/okio/RealBufferedSource$1;->close()V -HSPLcom/android/okhttp/okio/RealBufferedSource$1;->read()I -HSPLcom/android/okhttp/okio/RealBufferedSource$1;->read([BII)I -HSPLcom/android/okhttp/okio/RealBufferedSource;-><init>(Lcom/android/okhttp/okio/Source;)V -HSPLcom/android/okhttp/okio/RealBufferedSource;-><init>(Lcom/android/okhttp/okio/Source;Lcom/android/okhttp/okio/Buffer;)V -HSPLcom/android/okhttp/okio/RealBufferedSource;->access$000(Lcom/android/okhttp/okio/RealBufferedSource;)Z -HSPLcom/android/okhttp/okio/RealBufferedSource;->buffer()Lcom/android/okhttp/okio/Buffer; -HSPLcom/android/okhttp/okio/RealBufferedSource;->close()V -HSPLcom/android/okhttp/okio/RealBufferedSource;->exhausted()Z -HSPLcom/android/okhttp/okio/RealBufferedSource;->indexOf(B)J -HSPLcom/android/okhttp/okio/RealBufferedSource;->indexOf(BJ)J -HSPLcom/android/okhttp/okio/RealBufferedSource;->inputStream()Ljava/io/InputStream; -HSPLcom/android/okhttp/okio/RealBufferedSource;->read(Lcom/android/okhttp/okio/Buffer;J)J -HSPLcom/android/okhttp/okio/RealBufferedSource;->readHexadecimalUnsignedLong()J -HSPLcom/android/okhttp/okio/RealBufferedSource;->readIntLe()I -HSPLcom/android/okhttp/okio/RealBufferedSource;->readShort()S -HSPLcom/android/okhttp/okio/RealBufferedSource;->readUtf8LineStrict()Ljava/lang/String; -HSPLcom/android/okhttp/okio/RealBufferedSource;->request(J)Z -HSPLcom/android/okhttp/okio/RealBufferedSource;->require(J)V -HSPLcom/android/okhttp/okio/RealBufferedSource;->skip(J)V -HSPLcom/android/okhttp/okio/RealBufferedSource;->timeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/Segment;-><init>()V -HSPLcom/android/okhttp/okio/Segment;-><init>(Lcom/android/okhttp/okio/Segment;)V -HSPLcom/android/okhttp/okio/Segment;-><init>([BII)V -HSPLcom/android/okhttp/okio/Segment;->compact()V -HSPLcom/android/okhttp/okio/Segment;->pop()Lcom/android/okhttp/okio/Segment; -HSPLcom/android/okhttp/okio/Segment;->push(Lcom/android/okhttp/okio/Segment;)Lcom/android/okhttp/okio/Segment; -HSPLcom/android/okhttp/okio/Segment;->split(I)Lcom/android/okhttp/okio/Segment; -HSPLcom/android/okhttp/okio/Segment;->writeTo(Lcom/android/okhttp/okio/Segment;I)V -HSPLcom/android/okhttp/okio/SegmentPool;->recycle(Lcom/android/okhttp/okio/Segment;)V -HSPLcom/android/okhttp/okio/SegmentPool;->take()Lcom/android/okhttp/okio/Segment; -HSPLcom/android/okhttp/okio/Timeout;-><init>()V -HSPLcom/android/okhttp/okio/Timeout;->clearDeadline()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/Timeout;->clearTimeout()Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/Timeout;->deadlineNanoTime()J -HSPLcom/android/okhttp/okio/Timeout;->deadlineNanoTime(J)Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/Timeout;->hasDeadline()Z -HSPLcom/android/okhttp/okio/Timeout;->throwIfReached()V -HSPLcom/android/okhttp/okio/Timeout;->timeout(JLjava/util/concurrent/TimeUnit;)Lcom/android/okhttp/okio/Timeout; -HSPLcom/android/okhttp/okio/Timeout;->timeoutNanos()J -HSPLcom/android/okhttp/okio/Util;->checkOffsetAndCount(JJJ)V -HSPLcom/android/okhttp/okio/Util;->reverseBytesInt(I)I -HSPLcom/android/org/bouncycastle/asn1/ASN1BitString;-><init>([BI)V -HSPLcom/android/org/bouncycastle/asn1/ASN1EncodableVector;-><init>()V -HSPLcom/android/org/bouncycastle/asn1/ASN1EncodableVector;-><init>(I)V -HSPLcom/android/org/bouncycastle/asn1/ASN1EncodableVector;->add(Lcom/android/org/bouncycastle/asn1/ASN1Encodable;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1EncodableVector;->get(I)Lcom/android/org/bouncycastle/asn1/ASN1Encodable; -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;-><init>(Ljava/io/InputStream;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;-><init>(Ljava/io/InputStream;IZ)V -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;-><init>([B)V -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->buildObject(III)Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->createPrimitiveDERObject(ILcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;[[B)Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->getBuffer(Lcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;[[B)[B -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->readLength(Ljava/io/InputStream;IZ)I -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->readObject()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1InputStream;->readVector(Lcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;)Lcom/android/org/bouncycastle/asn1/ASN1EncodableVector; -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;-><init>(Ljava/math/BigInteger;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;->encode(Lcom/android/org/bouncycastle/asn1/ASN1OutputStream;Z)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;->encodedLength()I -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/ASN1Integer; -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;->getValue()Ljava/math/BigInteger; -HSPLcom/android/org/bouncycastle/asn1/ASN1Integer;->isMalformed([B)Z -HSPLcom/android/org/bouncycastle/asn1/ASN1Object;->getEncoded()[B -HSPLcom/android/org/bouncycastle/asn1/ASN1Object;->getEncoded(Ljava/lang/String;)[B -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier$OidHandle;-><init>([B)V -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier$OidHandle;->equals(Ljava/lang/Object;)Z -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier$OidHandle;->hashCode()I -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;-><init>([B)V -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->asn1Equals(Lcom/android/org/bouncycastle/asn1/ASN1Primitive;)Z -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->doOutput(Ljava/io/ByteArrayOutputStream;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->encode(Lcom/android/org/bouncycastle/asn1/ASN1OutputStream;Z)V -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->encodedLength()I -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->getBody()[B -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->hashCode()I -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->toString()Ljava/lang/String; -HSPLcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;->writeField(Ljava/io/ByteArrayOutputStream;J)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;->write(I)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;->write([BII)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;->writeEncoded(ZI[B)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;->writeLength(I)V -HSPLcom/android/org/bouncycastle/asn1/ASN1OutputStream;->writeObject(Lcom/android/org/bouncycastle/asn1/ASN1Encodable;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Primitive;->equals(Lcom/android/org/bouncycastle/asn1/ASN1Primitive;)Z -HSPLcom/android/org/bouncycastle/asn1/ASN1Primitive;->fromByteArray([B)Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1Primitive;->toASN1Primitive()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1Primitive;->toDERObject()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence$1;-><init>(Lcom/android/org/bouncycastle/asn1/ASN1Sequence;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence$1;->nextElement()Ljava/lang/Object; -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;-><init>()V -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;-><init>(Lcom/android/org/bouncycastle/asn1/ASN1EncodableVector;)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/ASN1Sequence; -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;->getObjectAt(I)Lcom/android/org/bouncycastle/asn1/ASN1Encodable; -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;->getObjects()Ljava/util/Enumeration; -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;->size()I -HSPLcom/android/org/bouncycastle/asn1/ASN1Sequence;->toDERObject()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/ASN1Set;-><init>()V -HSPLcom/android/org/bouncycastle/asn1/ASN1Set;-><init>(Lcom/android/org/bouncycastle/asn1/ASN1EncodableVector;Z)V -HSPLcom/android/org/bouncycastle/asn1/ASN1Set;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/ASN1Set; -HSPLcom/android/org/bouncycastle/asn1/DERBitString;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/DERBitString; -HSPLcom/android/org/bouncycastle/asn1/DERNull;->encodedLength()I -HSPLcom/android/org/bouncycastle/asn1/DEROutputStream;->getDERSubStream()Lcom/android/org/bouncycastle/asn1/DEROutputStream; -HSPLcom/android/org/bouncycastle/asn1/DERSequence;->encode(Lcom/android/org/bouncycastle/asn1/ASN1OutputStream;Z)V -HSPLcom/android/org/bouncycastle/asn1/DERSequence;->encodedLength()I -HSPLcom/android/org/bouncycastle/asn1/DERSequence;->getBodyLength()I -HSPLcom/android/org/bouncycastle/asn1/DERSequence;->toDERObject()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/DLFactory;-><clinit>()V -HSPLcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;->read()I -HSPLcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;->read([BII)I -HSPLcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream;->toByteArray()[B -HSPLcom/android/org/bouncycastle/asn1/StreamUtil;->calculateBodyLength(I)I -HSPLcom/android/org/bouncycastle/asn1/StreamUtil;->findLimit(Ljava/io/InputStream;)I -HSPLcom/android/org/bouncycastle/asn1/x509/AlgorithmIdentifier;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/x509/AlgorithmIdentifier; -HSPLcom/android/org/bouncycastle/asn1/x509/AlgorithmIdentifier;->toASN1Primitive()Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -HSPLcom/android/org/bouncycastle/asn1/x509/SubjectPublicKeyInfo;->getInstance(Ljava/lang/Object;)Lcom/android/org/bouncycastle/asn1/x509/SubjectPublicKeyInfo; -HSPLcom/android/org/bouncycastle/crypto/BufferedBlockCipher;->reset()V -HSPLcom/android/org/bouncycastle/crypto/CryptoServicesRegistrar;->getSecureRandom()Ljava/security/SecureRandom; -HSPLcom/android/org/bouncycastle/crypto/PBEParametersGenerator;->PKCS12PasswordToBytes([C)[B -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA1;-><init>()V -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;-><init>(Ljava/lang/String;I)V -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;->doFinal([BI)I -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;->getByteLength()I -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;->getDigestSize()I -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;->reset()V -HSPLcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest;->update([BII)V -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;-><init>()V -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->getAlgorithmName()Ljava/lang/String; -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->getBlockSize()I -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->init(ZLcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->packBlock([BI)V -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->reset()V -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->shift(II)I -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->subWord(I)I -HSPLcom/android/org/bouncycastle/crypto/engines/AESEngine;->unpackBlock([BI)V -HSPLcom/android/org/bouncycastle/crypto/engines/DESEngine;-><clinit>()V -HSPLcom/android/org/bouncycastle/crypto/engines/DESEngine;-><init>()V -HSPLcom/android/org/bouncycastle/crypto/engines/DESEngine;->generateWorkingKey(Z[B)[I -HSPLcom/android/org/bouncycastle/crypto/generators/PKCS12ParametersGenerator;->generateDerivedKey(II)[B -HSPLcom/android/org/bouncycastle/crypto/macs/HMac;-><clinit>()V -HSPLcom/android/org/bouncycastle/crypto/macs/HMac;->getMacSize()I -HSPLcom/android/org/bouncycastle/crypto/macs/HMac;->init(Lcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/crypto/macs/HMac;->update([BII)V -HSPLcom/android/org/bouncycastle/crypto/modes/CBCBlockCipher;-><init>(Lcom/android/org/bouncycastle/crypto/BlockCipher;)V -HSPLcom/android/org/bouncycastle/crypto/modes/CBCBlockCipher;->getBlockSize()I -HSPLcom/android/org/bouncycastle/crypto/modes/CBCBlockCipher;->init(ZLcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/crypto/modes/CBCBlockCipher;->reset()V -HSPLcom/android/org/bouncycastle/crypto/paddings/PKCS7Padding;->init(Ljava/security/SecureRandom;)V -HSPLcom/android/org/bouncycastle/crypto/paddings/PKCS7Padding;->padCount([B)I -HSPLcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher;-><init>(Lcom/android/org/bouncycastle/crypto/BlockCipher;Lcom/android/org/bouncycastle/crypto/paddings/BlockCipherPadding;)V -HSPLcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher;->doFinal([BI)I -HSPLcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher;->getOutputSize(I)I -HSPLcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher;->getUpdateOutputSize(I)I -HSPLcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher;->init(ZLcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/crypto/params/AsymmetricKeyParameter;-><init>(Z)V -HSPLcom/android/org/bouncycastle/crypto/params/DSAKeyParameters;-><init>(ZLcom/android/org/bouncycastle/crypto/params/DSAParameters;)V -HSPLcom/android/org/bouncycastle/crypto/params/DSAParameters;-><init>(Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/BigInteger;)V -HSPLcom/android/org/bouncycastle/crypto/params/DSAPublicKeyParameters;-><init>(Ljava/math/BigInteger;Lcom/android/org/bouncycastle/crypto/params/DSAParameters;)V -HSPLcom/android/org/bouncycastle/crypto/params/KeyParameter;-><init>([B)V -HSPLcom/android/org/bouncycastle/crypto/params/ParametersWithIV;-><init>(Lcom/android/org/bouncycastle/crypto/CipherParameters;[BII)V -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/DSA$Mappings;->configure(Lcom/android/org/bouncycastle/jcajce/provider/config/ConfigurableProvider;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;->getParams()Ljava/security/interfaces/DSAParams; -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;->getY()Ljava/math/BigInteger; -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;->hashCode()I -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;->readObject(Ljava/io/ObjectInputStream;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/DSAUtil;->toDSAParameters(Ljava/security/interfaces/DSAParams;)Lcom/android/org/bouncycastle/crypto/params/DSAParameters; -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi$Std;-><init>()V -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi$StoreEntry;-><init>(Lcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;Ljava/lang/String;Ljava/security/cert/Certificate;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;-><init>(I)V -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;->engineAliases()Ljava/util/Enumeration; -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;->engineGetCertificate(Ljava/lang/String;)Ljava/security/cert/Certificate; -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;->engineLoad(Ljava/io/InputStream;[C)V -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;->engineSetCertificateEntry(Ljava/lang/String;Ljava/security/cert/Certificate;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi;->engineSize()I -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/AES$ECB;-><init>()V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/PBES2AlgorithmParameters$Mappings;->configure(Lcom/android/org/bouncycastle/jcajce/provider/config/ConfigurableProvider;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BCPBEKey;-><init>(Ljava/lang/String;Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;IIIILjavax/crypto/spec/PBEKeySpec;Lcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BCPBEKey;->getEncoded()[B -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BCPBEKey;->isDestroyed()Z -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$BufferedGenericBlockCipher;-><init>(Lcom/android/org/bouncycastle/crypto/BlockCipher;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$BufferedGenericBlockCipher;->doFinal([BI)I -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$BufferedGenericBlockCipher;->getOutputSize(I)I -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$BufferedGenericBlockCipher;->init(ZLcom/android/org/bouncycastle/crypto/CipherParameters;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher;->engineDoFinal([BII)[B -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher;->engineGetOutputSize(I)I -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher;->engineInit(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseWrapCipher;-><init>()V -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/PBE$Util;->convertPassword(ILjavax/crypto/spec/PBEKeySpec;)[B -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/PBE$Util;->makePBEGenerator(II)Lcom/android/org/bouncycastle/crypto/PBEParametersGenerator; -HSPLcom/android/org/bouncycastle/jcajce/provider/symmetric/util/PBE$Util;->makePBEMacParameters(Ljavax/crypto/spec/PBEKeySpec;III)Lcom/android/org/bouncycastle/crypto/CipherParameters; -HSPLcom/android/org/bouncycastle/jcajce/util/BCJcaJceHelper;-><init>()V -HSPLcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider;->addAlgorithm(Ljava/lang/String;Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;Ljava/lang/String;)V -HSPLcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider;->addAlgorithm(Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider;->addAttributes(Ljava/lang/String;Ljava/util/Map;)V -HSPLcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider;->loadAlgorithms([Ljava/lang/String;Ljava/lang/String;)V -HSPLcom/android/org/bouncycastle/jce/provider/CertStoreCollectionSpi;-><init>(Ljava/security/cert/CertStoreParameters;)V -HSPLcom/android/org/bouncycastle/util/Arrays;->areEqual([B[B)Z -HSPLcom/android/org/bouncycastle/util/Arrays;->clone([B)[B -HSPLcom/android/org/bouncycastle/util/Arrays;->constantTimeAreEqual([B[B)Z -HSPLcom/android/org/bouncycastle/util/Arrays;->fill([BB)V -HSPLcom/android/org/bouncycastle/util/Arrays;->hashCode([B)I -HSPLcom/android/org/bouncycastle/util/BigIntegers;-><clinit>()V -HSPLcom/android/org/bouncycastle/util/Integers;->valueOf(I)Ljava/lang/Integer; -HSPLcom/android/org/bouncycastle/util/Pack;->littleEndianToInt([BI)I -HSPLcom/android/org/bouncycastle/util/Properties$1;->run()Ljava/lang/Object; -HSPLcom/android/org/bouncycastle/util/Properties;->isOverrideSet(Ljava/lang/String;)Z -HSPLcom/android/org/bouncycastle/util/Strings;->toUpperCase(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;-><init>()V -HSPLcom/android/org/kxml2/io/KXmlParser;->adjustNsp()Z -HSPLcom/android/org/kxml2/io/KXmlParser;->close()V -HSPLcom/android/org/kxml2/io/KXmlParser;->ensureCapacity([Ljava/lang/String;I)[Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->fillBuffer(I)Z -HSPLcom/android/org/kxml2/io/KXmlParser;->getAttributeCount()I -HSPLcom/android/org/kxml2/io/KXmlParser;->getAttributeName(I)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getAttributeValue(I)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getColumnNumber()I -HSPLcom/android/org/kxml2/io/KXmlParser;->getDepth()I -HSPLcom/android/org/kxml2/io/KXmlParser;->getEventType()I -HSPLcom/android/org/kxml2/io/KXmlParser;->getLineNumber()I -HSPLcom/android/org/kxml2/io/KXmlParser;->getName()Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getNamespace()Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getNamespace(Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->getNamespaceCount(I)I -HSPLcom/android/org/kxml2/io/KXmlParser;->getText()Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->keepNamespaceAttributes()V -HSPLcom/android/org/kxml2/io/KXmlParser;->next()I -HSPLcom/android/org/kxml2/io/KXmlParser;->next(Z)I -HSPLcom/android/org/kxml2/io/KXmlParser;->nextTag()I -HSPLcom/android/org/kxml2/io/KXmlParser;->nextToken()I -HSPLcom/android/org/kxml2/io/KXmlParser;->parseStartTag(ZZ)V -HSPLcom/android/org/kxml2/io/KXmlParser;->peekCharacter()I -HSPLcom/android/org/kxml2/io/KXmlParser;->peekType(Z)I -HSPLcom/android/org/kxml2/io/KXmlParser;->read(C)V -HSPLcom/android/org/kxml2/io/KXmlParser;->read([C)V -HSPLcom/android/org/kxml2/io/KXmlParser;->readComment(Z)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->readEndTag()V -HSPLcom/android/org/kxml2/io/KXmlParser;->readEntity(Ljava/lang/StringBuilder;ZZLcom/android/org/kxml2/io/KXmlParser$ValueContext;)V -HSPLcom/android/org/kxml2/io/KXmlParser;->readName()Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->readUntil([CZ)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->readValue(CZZLcom/android/org/kxml2/io/KXmlParser$ValueContext;)Ljava/lang/String; -HSPLcom/android/org/kxml2/io/KXmlParser;->readXmlDeclaration()V -HSPLcom/android/org/kxml2/io/KXmlParser;->require(ILjava/lang/String;Ljava/lang/String;)V -HSPLcom/android/org/kxml2/io/KXmlParser;->setFeature(Ljava/lang/String;Z)V -HSPLcom/android/org/kxml2/io/KXmlParser;->setInput(Ljava/io/InputStream;Ljava/lang/String;)V -HSPLcom/android/org/kxml2/io/KXmlParser;->setInput(Ljava/io/Reader;)V -HSPLcom/android/org/kxml2/io/KXmlParser;->skip()V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->append(C)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->append(Ljava/lang/String;)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->append(Ljava/lang/String;II)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/org/kxml2/io/KXmlSerializer;->check(Z)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->endDocument()V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/org/kxml2/io/KXmlSerializer;->flush()V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->flushBuffer()V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->setOutput(Ljava/io/OutputStream;Ljava/lang/String;)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->setOutput(Ljava/io/Writer;)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->startDocument(Ljava/lang/String;Ljava/lang/Boolean;)V -HSPLcom/android/org/kxml2/io/KXmlSerializer;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; -HSPLcom/android/org/kxml2/io/KXmlSerializer;->writeEscaped(Ljava/lang/String;I)V -HSPLcom/android/server/LocalServices;->getService(Ljava/lang/Class;)Ljava/lang/Object; -HSPLcom/android/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/android/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/android/telephony/Rlog;->log(ILjava/lang/String;Ljava/lang/String;)I -HSPLcom/android/telephony/Rlog;->pii(ZLjava/lang/Object;)Ljava/lang/String; -HSPLcom/android/telephony/Rlog;->w(Ljava/lang/String;Ljava/lang/String;)I -HSPLcom/google/android/collect/Lists;->newArrayList()Ljava/util/ArrayList; -HSPLcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList; -HSPLcom/google/android/collect/Maps;->newHashMap()Ljava/util/HashMap; -HSPLcom/google/android/collect/Sets;->newHashSet()Ljava/util/HashSet; -HSPLcom/google/android/collect/Sets;->newHashSet([Ljava/lang/Object;)Ljava/util/HashSet; -HSPLcom/google/android/gles_jni/EGLConfigImpl;-><init>(J)V -HSPLcom/google/android/gles_jni/EGLContextImpl;->equals(Ljava/lang/Object;)Z -HSPLcom/google/android/gles_jni/EGLDisplayImpl;->equals(Ljava/lang/Object;)Z -HSPLcom/google/android/gles_jni/EGLImpl;->eglCreateContext(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;Ljavax/microedition/khronos/egl/EGLContext;[I)Ljavax/microedition/khronos/egl/EGLContext; -HSPLcom/google/android/gles_jni/EGLImpl;->eglCreatePbufferSurface(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;[I)Ljavax/microedition/khronos/egl/EGLSurface; -HSPLcom/google/android/gles_jni/EGLImpl;->eglGetCurrentContext()Ljavax/microedition/khronos/egl/EGLContext; -HSPLcom/google/android/gles_jni/EGLImpl;->eglGetDisplay(Ljava/lang/Object;)Ljavax/microedition/khronos/egl/EGLDisplay; -HSPLcom/google/android/gles_jni/EGLSurfaceImpl;-><init>(J)V -HSPLdalvik/system/AppSpecializationHooks;->handleCompatChangesBeforeBindingApplication()V -HSPLdalvik/system/BaseDexClassLoader;-><init>(Ljava/lang/String;Ljava/io/File;Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLdalvik/system/BaseDexClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;)V -HSPLdalvik/system/BaseDexClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;)V -HSPLdalvik/system/BaseDexClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;Z)V -HSPLdalvik/system/BaseDexClassLoader;->addNativePath(Ljava/util/Collection;)V -HSPLdalvik/system/BaseDexClassLoader;->findClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLdalvik/system/BaseDexClassLoader;->findLibrary(Ljava/lang/String;)Ljava/lang/String; -HSPLdalvik/system/BaseDexClassLoader;->findResource(Ljava/lang/String;)Ljava/net/URL; -HSPLdalvik/system/BaseDexClassLoader;->findResources(Ljava/lang/String;)Ljava/util/Enumeration; -HSPLdalvik/system/BaseDexClassLoader;->getLdLibraryPath()Ljava/lang/String; -HSPLdalvik/system/BaseDexClassLoader;->getPackage(Ljava/lang/String;)Ljava/lang/Package; -HSPLdalvik/system/BaseDexClassLoader;->reportClassLoaderChain()V -HSPLdalvik/system/BaseDexClassLoader;->setReporter(Ldalvik/system/BaseDexClassLoader$Reporter;)V -HSPLdalvik/system/BaseDexClassLoader;->toString()Ljava/lang/String; -HSPLdalvik/system/BlockGuard$1;->onExplicitGc()V -HSPLdalvik/system/BlockGuard$1;->onNetwork()V -HSPLdalvik/system/BlockGuard$1;->onReadFromDisk()V -HSPLdalvik/system/BlockGuard$1;->onUnbufferedIO()V -HSPLdalvik/system/BlockGuard$1;->onWriteToDisk()V -HSPLdalvik/system/BlockGuard$2;->onPathAccess(Ljava/lang/String;)V -HSPLdalvik/system/BlockGuard$3;->initialValue()Ldalvik/system/BlockGuard$Policy; -HSPLdalvik/system/BlockGuard$3;->initialValue()Ljava/lang/Object; -HSPLdalvik/system/BlockGuard;->getThreadPolicy()Ldalvik/system/BlockGuard$Policy; -HSPLdalvik/system/BlockGuard;->getVmPolicy()Ldalvik/system/BlockGuard$VmPolicy; -HSPLdalvik/system/BlockGuard;->setThreadPolicy(Ldalvik/system/BlockGuard$Policy;)V -HSPLdalvik/system/BlockGuard;->setVmPolicy(Ldalvik/system/BlockGuard$VmPolicy;)V -HSPLdalvik/system/CloseGuard;-><init>()V -HSPLdalvik/system/CloseGuard;->close()V -HSPLdalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; -HSPLdalvik/system/CloseGuard;->getReporter()Ldalvik/system/CloseGuard$Reporter; -HSPLdalvik/system/CloseGuard;->open(Ljava/lang/String;)V -HSPLdalvik/system/CloseGuard;->openWithCallSite(Ljava/lang/String;Ljava/lang/String;)V -HSPLdalvik/system/CloseGuard;->setEnabled(Z)V -HSPLdalvik/system/CloseGuard;->setReporter(Ldalvik/system/CloseGuard$Reporter;)V -HSPLdalvik/system/CloseGuard;->warnIfOpen()V -HSPLdalvik/system/DelegateLastClassLoader;-><init>(Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLdalvik/system/DelegateLastClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Z)V -HSPLdalvik/system/DelegateLastClassLoader;->loadClass(Ljava/lang/String;Z)Ljava/lang/Class; -HSPLdalvik/system/DexClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLdalvik/system/DexFile;-><init>(Ljava/io/File;Ljava/lang/ClassLoader;[Ldalvik/system/DexPathList$Element;)V -HSPLdalvik/system/DexFile;-><init>(Ljava/lang/String;Ljava/lang/ClassLoader;[Ldalvik/system/DexPathList$Element;)V -HSPLdalvik/system/DexFile;->defineClass(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/Object;Ldalvik/system/DexFile;Ljava/util/List;)Ljava/lang/Class; -HSPLdalvik/system/DexFile;->finalize()V -HSPLdalvik/system/DexFile;->isBackedByOatFile()Z -HSPLdalvik/system/DexFile;->loadClassBinaryName(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/util/List;)Ljava/lang/Class; -HSPLdalvik/system/DexFile;->openDexFile(Ljava/lang/String;Ljava/lang/String;ILjava/lang/ClassLoader;[Ldalvik/system/DexPathList$Element;)Ljava/lang/Object; -HSPLdalvik/system/DexFile;->verifyInBackground(Ljava/lang/ClassLoader;)V -HSPLdalvik/system/DexPathList$Element;->-$$Nest$fgetdexFile(Ldalvik/system/DexPathList$Element;)Ldalvik/system/DexFile; -HSPLdalvik/system/DexPathList$Element;-><init>(Ldalvik/system/DexFile;Ljava/io/File;)V -HSPLdalvik/system/DexPathList$Element;-><init>(Ljava/io/File;)V -HSPLdalvik/system/DexPathList$Element;->findClass(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/util/List;)Ljava/lang/Class; -HSPLdalvik/system/DexPathList$Element;->findResource(Ljava/lang/String;)Ljava/net/URL; -HSPLdalvik/system/DexPathList$Element;->maybeInit()V -HSPLdalvik/system/DexPathList$Element;->toString()Ljava/lang/String; -HSPLdalvik/system/DexPathList$NativeLibraryElement;-><init>(Ljava/io/File;)V -HSPLdalvik/system/DexPathList$NativeLibraryElement;-><init>(Ljava/io/File;Ljava/lang/String;)V -HSPLdalvik/system/DexPathList$NativeLibraryElement;->equals(Ljava/lang/Object;)Z -HSPLdalvik/system/DexPathList$NativeLibraryElement;->findNativeLibrary(Ljava/lang/String;)Ljava/lang/String; -HSPLdalvik/system/DexPathList$NativeLibraryElement;->maybeInit()V -HSPLdalvik/system/DexPathList;-><init>(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;Z)V -HSPLdalvik/system/DexPathList;->addNativePath(Ljava/util/Collection;)V -HSPLdalvik/system/DexPathList;->findClass(Ljava/lang/String;Ljava/util/List;)Ljava/lang/Class; -HSPLdalvik/system/DexPathList;->findLibrary(Ljava/lang/String;)Ljava/lang/String; -HSPLdalvik/system/DexPathList;->findResource(Ljava/lang/String;)Ljava/net/URL; -HSPLdalvik/system/DexPathList;->findResources(Ljava/lang/String;)Ljava/util/Enumeration; -HSPLdalvik/system/DexPathList;->getAllNativeLibraryDirectories()Ljava/util/List; -HSPLdalvik/system/DexPathList;->getNativeLibraryDirectories()Ljava/util/List; -HSPLdalvik/system/DexPathList;->loadDexFile(Ljava/io/File;Ljava/io/File;Ljava/lang/ClassLoader;[Ldalvik/system/DexPathList$Element;)Ldalvik/system/DexFile; -HSPLdalvik/system/DexPathList;->makeDexElements(Ljava/util/List;Ljava/io/File;Ljava/util/List;Ljava/lang/ClassLoader;Z)[Ldalvik/system/DexPathList$Element; -HSPLdalvik/system/DexPathList;->makePathElements(Ljava/util/List;)[Ldalvik/system/DexPathList$NativeLibraryElement; -HSPLdalvik/system/DexPathList;->maybeRunBackgroundVerification(Ljava/lang/ClassLoader;)V -HSPLdalvik/system/DexPathList;->splitDexPath(Ljava/lang/String;)Ljava/util/List; -HSPLdalvik/system/DexPathList;->splitPaths(Ljava/lang/String;Z)Ljava/util/List; -HSPLdalvik/system/DexPathList;->toString()Ljava/lang/String; -HSPLdalvik/system/PathClassLoader;-><init>(Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLdalvik/system/PathClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLdalvik/system/PathClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;)V -HSPLdalvik/system/PathClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;[Ljava/lang/ClassLoader;)V -HSPLdalvik/system/RuntimeHooks;->getTimeZoneIdSupplier()Ljava/util/function/Supplier; -HSPLdalvik/system/RuntimeHooks;->setTimeZoneIdSupplier(Ljava/util/function/Supplier;)V -HSPLdalvik/system/RuntimeHooks;->setUncaughtExceptionPreHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V -HSPLdalvik/system/SocketTagger;-><init>()V -HSPLdalvik/system/SocketTagger;->get()Ldalvik/system/SocketTagger; -HSPLdalvik/system/SocketTagger;->set(Ldalvik/system/SocketTagger;)V -HSPLdalvik/system/SocketTagger;->tag(Ljava/net/Socket;)V -HSPLdalvik/system/SocketTagger;->untag(Ljava/net/Socket;)V -HSPLdalvik/system/VMRuntime$SdkVersionContainer;->-$$Nest$sfgetsdkVersion()I -HSPLdalvik/system/VMRuntime;->getInstructionSet(Ljava/lang/String;)Ljava/lang/String; -HSPLdalvik/system/VMRuntime;->getRuntime()Ldalvik/system/VMRuntime; -HSPLdalvik/system/VMRuntime;->getSdkVersion()I -HSPLdalvik/system/VMRuntime;->getTargetSdkVersion()I -HSPLdalvik/system/VMRuntime;->hiddenApiUsed(ILjava/lang/String;Ljava/lang/String;IZ)V -HSPLdalvik/system/VMRuntime;->notifyNativeAllocation()V -HSPLdalvik/system/VMRuntime;->registerNativeAllocation(I)V -HSPLdalvik/system/VMRuntime;->registerNativeFree(I)V -HSPLdalvik/system/VMRuntime;->runFinalization(J)V -HSPLdalvik/system/VMRuntime;->runFinalizationSync()V -HSPLdalvik/system/VMRuntime;->setDisabledCompatChanges([J)V -HSPLdalvik/system/VMRuntime;->setHiddenApiUsageLogger(Ldalvik/system/VMRuntime$HiddenApiUsageLogger;)V -HSPLdalvik/system/VMRuntime;->setNonSdkApiUsageConsumer(Ljava/util/function/Consumer;)V -HSPLdalvik/system/VMRuntime;->setTargetSdkVersion(I)V -HSPLdalvik/system/ZipPathValidator$Callback;->onZipEntryAccess(Ljava/lang/String;)V -HSPLdalvik/system/ZipPathValidator;->clearCallback()V -HSPLdalvik/system/ZipPathValidator;->getInstance()Ldalvik/system/ZipPathValidator$Callback; -HSPLdalvik/system/ZipPathValidator;->isClear()Z -HSPLdalvik/system/ZipPathValidator;->setCallback(Ldalvik/system/ZipPathValidator$Callback;)V -HSPLdalvik/system/ZygoteHooks;->cleanLocaleCaches()V -HSPLdalvik/system/ZygoteHooks;->gcAndFinalize()V -HSPLdalvik/system/ZygoteHooks;->isIndefiniteThreadSuspensionSafe()Z -HSPLdalvik/system/ZygoteHooks;->onEndPreload()V -HSPLdalvik/system/ZygoteHooks;->postForkChild(IZZLjava/lang/String;)V -HSPLdalvik/system/ZygoteHooks;->postForkCommon()V -HSPLdalvik/system/ZygoteHooks;->preFork()V -HSPLjava/io/Bits;->getBoolean([BI)Z -HSPLjava/io/Bits;->getDouble([BI)D -HSPLjava/io/Bits;->getFloat([BI)F -HSPLjava/io/Bits;->getInt([BI)I -HSPLjava/io/Bits;->getLong([BI)J -HSPLjava/io/Bits;->getShort([BI)S -HSPLjava/io/Bits;->putBoolean([BIZ)V -HSPLjava/io/Bits;->putDouble([BID)V -HSPLjava/io/Bits;->putFloat([BIF)V -HSPLjava/io/Bits;->putInt([BII)V -HSPLjava/io/Bits;->putLong([BIJ)V -HSPLjava/io/Bits;->putShort([BIS)V -HSPLjava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V -HSPLjava/io/BufferedInputStream;->available()I -HSPLjava/io/BufferedInputStream;->close()V -HSPLjava/io/BufferedInputStream;->fill()V -HSPLjava/io/BufferedInputStream;->getBufIfOpen()[B -HSPLjava/io/BufferedInputStream;->getInIfOpen()Ljava/io/InputStream; -HSPLjava/io/BufferedInputStream;->mark(I)V -HSPLjava/io/BufferedInputStream;->markSupported()Z -HSPLjava/io/BufferedInputStream;->read()I -HSPLjava/io/BufferedInputStream;->read([BII)I -HSPLjava/io/BufferedInputStream;->read1([BII)I -HSPLjava/io/BufferedInputStream;->reset()V -HSPLjava/io/BufferedInputStream;->skip(J)J -HSPLjava/io/BufferedOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/BufferedOutputStream;-><init>(Ljava/io/OutputStream;I)V -HSPLjava/io/BufferedOutputStream;->flush()V -HSPLjava/io/BufferedOutputStream;->flushBuffer()V -HSPLjava/io/BufferedOutputStream;->write(I)V -HSPLjava/io/BufferedOutputStream;->write([BII)V -HSPLjava/io/BufferedReader;-><init>(Ljava/io/Reader;)V -HSPLjava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V -HSPLjava/io/BufferedReader;->close()V -HSPLjava/io/BufferedReader;->ensureOpen()V -HSPLjava/io/BufferedReader;->fill()V -HSPLjava/io/BufferedReader;->read()I -HSPLjava/io/BufferedReader;->read([CII)I -HSPLjava/io/BufferedReader;->read1([CII)I -HSPLjava/io/BufferedReader;->readLine()Ljava/lang/String; -HSPLjava/io/BufferedReader;->readLine(Z)Ljava/lang/String; -HSPLjava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V -HSPLjava/io/BufferedWriter;-><init>(Ljava/io/Writer;I)V -HSPLjava/io/BufferedWriter;->close()V -HSPLjava/io/BufferedWriter;->ensureOpen()V -HSPLjava/io/BufferedWriter;->flush()V -HSPLjava/io/BufferedWriter;->flushBuffer()V -HSPLjava/io/BufferedWriter;->min(II)I -HSPLjava/io/BufferedWriter;->newLine()V -HSPLjava/io/BufferedWriter;->write(I)V -HSPLjava/io/BufferedWriter;->write(Ljava/lang/String;II)V -HSPLjava/io/BufferedWriter;->write([CII)V -HSPLjava/io/ByteArrayInputStream;-><init>([B)V -HSPLjava/io/ByteArrayInputStream;-><init>([BII)V -HSPLjava/io/ByteArrayInputStream;->available()I -HSPLjava/io/ByteArrayInputStream;->close()V -HSPLjava/io/ByteArrayInputStream;->mark(I)V -HSPLjava/io/ByteArrayInputStream;->markSupported()Z -HSPLjava/io/ByteArrayInputStream;->read()I -HSPLjava/io/ByteArrayInputStream;->read([BII)I -HSPLjava/io/ByteArrayInputStream;->reset()V -HSPLjava/io/ByteArrayInputStream;->skip(J)J -HSPLjava/io/ByteArrayOutputStream;-><init>()V -HSPLjava/io/ByteArrayOutputStream;-><init>(I)V -HSPLjava/io/ByteArrayOutputStream;->close()V -HSPLjava/io/ByteArrayOutputStream;->ensureCapacity(I)V -HSPLjava/io/ByteArrayOutputStream;->grow(I)V -HSPLjava/io/ByteArrayOutputStream;->reset()V -HSPLjava/io/ByteArrayOutputStream;->size()I -HSPLjava/io/ByteArrayOutputStream;->toByteArray()[B -HSPLjava/io/ByteArrayOutputStream;->toString()Ljava/lang/String; -HSPLjava/io/ByteArrayOutputStream;->toString(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/io/ByteArrayOutputStream;->write(I)V -HSPLjava/io/ByteArrayOutputStream;->write([BII)V -HSPLjava/io/ByteArrayOutputStream;->writeTo(Ljava/io/OutputStream;)V -HSPLjava/io/CharArrayWriter;-><init>()V -HSPLjava/io/CharArrayWriter;-><init>(I)V -HSPLjava/io/CharArrayWriter;->flush()V -HSPLjava/io/CharArrayWriter;->reset()V -HSPLjava/io/CharArrayWriter;->toCharArray()[C -HSPLjava/io/CharArrayWriter;->toString()Ljava/lang/String; -HSPLjava/io/CharArrayWriter;->write(I)V -HSPLjava/io/CharArrayWriter;->write([CII)V -HSPLjava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/DataInputStream;->read([B)I -HSPLjava/io/DataInputStream;->read([BII)I -HSPLjava/io/DataInputStream;->readBoolean()Z -HSPLjava/io/DataInputStream;->readByte()B -HSPLjava/io/DataInputStream;->readFully([B)V -HSPLjava/io/DataInputStream;->readFully([BII)V -HSPLjava/io/DataInputStream;->readInt()I -HSPLjava/io/DataInputStream;->readLong()J -HSPLjava/io/DataInputStream;->readShort()S -HSPLjava/io/DataInputStream;->readUTF()Ljava/lang/String; -HSPLjava/io/DataInputStream;->readUTF(Ljava/io/DataInput;)Ljava/lang/String; -HSPLjava/io/DataInputStream;->readUnsignedByte()I -HSPLjava/io/DataInputStream;->readUnsignedShort()I -HSPLjava/io/DataInputStream;->skipBytes(I)I -HSPLjava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/DataOutputStream;->flush()V -HSPLjava/io/DataOutputStream;->incCount(I)V -HSPLjava/io/DataOutputStream;->write(I)V -HSPLjava/io/DataOutputStream;->write([BII)V -HSPLjava/io/DataOutputStream;->writeBoolean(Z)V -HSPLjava/io/DataOutputStream;->writeByte(I)V -HSPLjava/io/DataOutputStream;->writeInt(I)V -HSPLjava/io/DataOutputStream;->writeLong(J)V -HSPLjava/io/DataOutputStream;->writeShort(I)V -HSPLjava/io/DataOutputStream;->writeUTF(Ljava/lang/String;)V -HSPLjava/io/DataOutputStream;->writeUTF(Ljava/lang/String;Ljava/io/DataOutput;)I -HSPLjava/io/EOFException;-><init>()V -HSPLjava/io/EOFException;-><init>(Ljava/lang/String;)V -HSPLjava/io/ExpiringCache;->clear()V -HSPLjava/io/File$TempDirectory;->generateFile(Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Ljava/io/File; -HSPLjava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V -HSPLjava/io/File;-><init>(Ljava/lang/String;)V -HSPLjava/io/File;-><init>(Ljava/lang/String;I)V -HSPLjava/io/File;-><init>(Ljava/lang/String;Ljava/io/File;)V -HSPLjava/io/File;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/io/File;->canExecute()Z -HSPLjava/io/File;->canRead()Z -HSPLjava/io/File;->canWrite()Z -HSPLjava/io/File;->compareTo(Ljava/io/File;)I -HSPLjava/io/File;->compareTo(Ljava/lang/Object;)I -HSPLjava/io/File;->createNewFile()Z -HSPLjava/io/File;->createTempFile(Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Ljava/io/File; -HSPLjava/io/File;->delete()Z -HSPLjava/io/File;->equals(Ljava/lang/Object;)Z -HSPLjava/io/File;->exists()Z -HSPLjava/io/File;->getAbsoluteFile()Ljava/io/File; -HSPLjava/io/File;->getAbsolutePath()Ljava/lang/String; -HSPLjava/io/File;->getCanonicalFile()Ljava/io/File; -HSPLjava/io/File;->getCanonicalPath()Ljava/lang/String; -HSPLjava/io/File;->getFreeSpace()J -HSPLjava/io/File;->getName()Ljava/lang/String; -HSPLjava/io/File;->getParent()Ljava/lang/String; -HSPLjava/io/File;->getParentFile()Ljava/io/File; -HSPLjava/io/File;->getPath()Ljava/lang/String; -HSPLjava/io/File;->getPrefixLength()I -HSPLjava/io/File;->getTotalSpace()J -HSPLjava/io/File;->getUsableSpace()J -HSPLjava/io/File;->hashCode()I -HSPLjava/io/File;->isAbsolute()Z -HSPLjava/io/File;->isDirectory()Z -HSPLjava/io/File;->isFile()Z -HSPLjava/io/File;->isInvalid()Z -HSPLjava/io/File;->lastModified()J -HSPLjava/io/File;->length()J -HSPLjava/io/File;->list()[Ljava/lang/String; -HSPLjava/io/File;->list(Ljava/io/FilenameFilter;)[Ljava/lang/String; -HSPLjava/io/File;->listFiles()[Ljava/io/File; -HSPLjava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File; -HSPLjava/io/File;->listFiles(Ljava/io/FilenameFilter;)[Ljava/io/File; -HSPLjava/io/File;->mkdir()Z -HSPLjava/io/File;->mkdirs()Z -HSPLjava/io/File;->renameTo(Ljava/io/File;)Z -HSPLjava/io/File;->setExecutable(Z)Z -HSPLjava/io/File;->setExecutable(ZZ)Z -HSPLjava/io/File;->setLastModified(J)Z -HSPLjava/io/File;->setReadable(Z)Z -HSPLjava/io/File;->setReadable(ZZ)Z -HSPLjava/io/File;->setWritable(Z)Z -HSPLjava/io/File;->setWritable(ZZ)Z -HSPLjava/io/File;->slashify(Ljava/lang/String;Z)Ljava/lang/String; -HSPLjava/io/File;->toPath()Ljava/nio/file/Path; -HSPLjava/io/File;->toString()Ljava/lang/String; -HSPLjava/io/File;->toURI()Ljava/net/URI; -HSPLjava/io/FileDescriptor$1;->set(Ljava/io/FileDescriptor;I)V -HSPLjava/io/FileDescriptor;-><init>()V -HSPLjava/io/FileDescriptor;->cloneForFork()V -HSPLjava/io/FileDescriptor;->getInt$()I -HSPLjava/io/FileDescriptor;->getOwnerId$()J -HSPLjava/io/FileDescriptor;->isSocket$()Z -HSPLjava/io/FileDescriptor;->release$()Ljava/io/FileDescriptor; -HSPLjava/io/FileDescriptor;->setInt$(I)V -HSPLjava/io/FileDescriptor;->setOwnerId$(J)V -HSPLjava/io/FileDescriptor;->valid()Z -HSPLjava/io/FileInputStream;-><init>(Ljava/io/File;)V -HSPLjava/io/FileInputStream;-><init>(Ljava/io/FileDescriptor;)V -HSPLjava/io/FileInputStream;-><init>(Ljava/io/FileDescriptor;Z)V -HSPLjava/io/FileInputStream;-><init>(Ljava/lang/String;)V -HSPLjava/io/FileInputStream;->available()I -HSPLjava/io/FileInputStream;->close()V -HSPLjava/io/FileInputStream;->finalize()V -HSPLjava/io/FileInputStream;->getChannel()Ljava/nio/channels/FileChannel; -HSPLjava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor; -HSPLjava/io/FileInputStream;->read()I -HSPLjava/io/FileInputStream;->read([B)I -HSPLjava/io/FileInputStream;->read([BII)I -HSPLjava/io/FileInputStream;->skip(J)J -HSPLjava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/io/File;)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/io/FileDescriptor;)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/io/FileDescriptor;Z)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/lang/String;)V -HSPLjava/io/FileOutputStream;-><init>(Ljava/lang/String;Z)V -HSPLjava/io/FileOutputStream;->close()V -HSPLjava/io/FileOutputStream;->finalize()V -HSPLjava/io/FileOutputStream;->getChannel()Ljava/nio/channels/FileChannel; -HSPLjava/io/FileOutputStream;->getFD()Ljava/io/FileDescriptor; -HSPLjava/io/FileOutputStream;->write(I)V -HSPLjava/io/FileOutputStream;->write([B)V -HSPLjava/io/FileOutputStream;->write([BII)V -HSPLjava/io/FileReader;-><init>(Ljava/io/File;)V -HSPLjava/io/FileReader;-><init>(Ljava/lang/String;)V -HSPLjava/io/FileWriter;-><init>(Ljava/io/File;)V -HSPLjava/io/FileWriter;-><init>(Ljava/io/File;Z)V -HSPLjava/io/FilterInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/FilterInputStream;->available()I -HSPLjava/io/FilterInputStream;->close()V -HSPLjava/io/FilterInputStream;->mark(I)V -HSPLjava/io/FilterInputStream;->markSupported()Z -HSPLjava/io/FilterInputStream;->read()I -HSPLjava/io/FilterInputStream;->read([B)I -HSPLjava/io/FilterInputStream;->read([BII)I -HSPLjava/io/FilterInputStream;->reset()V -HSPLjava/io/FilterInputStream;->skip(J)J -HSPLjava/io/FilterOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/FilterOutputStream;->close()V -HSPLjava/io/FilterOutputStream;->flush()V -HSPLjava/io/FilterOutputStream;->write([B)V -HSPLjava/io/FilterReader;-><init>(Ljava/io/Reader;)V -HSPLjava/io/FilterReader;->read()I -HSPLjava/io/IOException;-><init>()V -HSPLjava/io/IOException;-><init>(Ljava/lang/String;)V -HSPLjava/io/IOException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/io/IOException;-><init>(Ljava/lang/Throwable;)V -HSPLjava/io/InputStream;-><init>()V -HSPLjava/io/InputStream;->available()I -HSPLjava/io/InputStream;->close()V -HSPLjava/io/InputStream;->markSupported()Z -HSPLjava/io/InputStream;->read([B)I -HSPLjava/io/InputStream;->read([BII)I -HSPLjava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V -HSPLjava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V -HSPLjava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/CharsetDecoder;)V -HSPLjava/io/InputStreamReader;->close()V -HSPLjava/io/InputStreamReader;->read()I -HSPLjava/io/InputStreamReader;->read([CII)I -HSPLjava/io/InputStreamReader;->ready()Z -HSPLjava/io/InterruptedIOException;-><init>()V -HSPLjava/io/InterruptedIOException;-><init>(Ljava/lang/String;)V -HSPLjava/io/ObjectInputStream$BlockDataInputStream;-><init>(Ljava/io/ObjectInputStream;Ljava/io/InputStream;)V -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->close()V -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->currentBlockRemaining()I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->getBlockDataMode()Z -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->peek()I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->peekByte()B -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->read()I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->read([BII)I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->read([BIIZ)I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readBlockHeader(Z)I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readBoolean()Z -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readByte()B -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readFloat()F -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readFully([BIIZ)V -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readInt()I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readLong()J -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readShort()S -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readUTF()Ljava/lang/String; -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readUTFBody(J)Ljava/lang/String; -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readUTFChar(Ljava/lang/StringBuilder;J)I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readUTFSpan(Ljava/lang/StringBuilder;J)J -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->readUnsignedShort()I -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->refill()V -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->setBlockDataMode(Z)Z -HSPLjava/io/ObjectInputStream$BlockDataInputStream;->skipBlockData()V -HSPLjava/io/ObjectInputStream$GetField;-><init>()V -HSPLjava/io/ObjectInputStream$GetFieldImpl;-><init>(Ljava/io/ObjectInputStream;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectInputStream$GetFieldImpl;->get(Ljava/lang/String;D)D -HSPLjava/io/ObjectInputStream$GetFieldImpl;->get(Ljava/lang/String;I)I -HSPLjava/io/ObjectInputStream$GetFieldImpl;->get(Ljava/lang/String;J)J -HSPLjava/io/ObjectInputStream$GetFieldImpl;->get(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream$GetFieldImpl;->get(Ljava/lang/String;Z)Z -HSPLjava/io/ObjectInputStream$GetFieldImpl;->getFieldOffset(Ljava/lang/String;Ljava/lang/Class;)I -HSPLjava/io/ObjectInputStream$GetFieldImpl;->readFields()V -HSPLjava/io/ObjectInputStream$HandleTable$HandleList;-><init>()V -HSPLjava/io/ObjectInputStream$HandleTable$HandleList;->add(I)V -HSPLjava/io/ObjectInputStream$HandleTable;-><init>(I)V -HSPLjava/io/ObjectInputStream$HandleTable;->assign(Ljava/lang/Object;)I -HSPLjava/io/ObjectInputStream$HandleTable;->clear()V -HSPLjava/io/ObjectInputStream$HandleTable;->finish(I)V -HSPLjava/io/ObjectInputStream$HandleTable;->grow()V -HSPLjava/io/ObjectInputStream$HandleTable;->lookupException(I)Ljava/lang/ClassNotFoundException; -HSPLjava/io/ObjectInputStream$HandleTable;->lookupObject(I)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream$HandleTable;->markDependency(II)V -HSPLjava/io/ObjectInputStream$HandleTable;->setObject(ILjava/lang/Object;)V -HSPLjava/io/ObjectInputStream$HandleTable;->size()I -HSPLjava/io/ObjectInputStream$PeekInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/ObjectInputStream$PeekInputStream;->close()V -HSPLjava/io/ObjectInputStream$PeekInputStream;->peek()I -HSPLjava/io/ObjectInputStream$PeekInputStream;->read()I -HSPLjava/io/ObjectInputStream$PeekInputStream;->read([BII)I -HSPLjava/io/ObjectInputStream$PeekInputStream;->readFully([BII)V -HSPLjava/io/ObjectInputStream$ValidationList;-><init>()V -HSPLjava/io/ObjectInputStream$ValidationList;->clear()V -HSPLjava/io/ObjectInputStream$ValidationList;->doCallbacks()V -HSPLjava/io/ObjectInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/io/ObjectInputStream;->checkResolve(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->clear()V -HSPLjava/io/ObjectInputStream;->close()V -HSPLjava/io/ObjectInputStream;->defaultReadFields(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectInputStream;->defaultReadObject()V -HSPLjava/io/ObjectInputStream;->isCustomSubclass()Z -HSPLjava/io/ObjectInputStream;->latestUserDefinedLoader()Ljava/lang/ClassLoader; -HSPLjava/io/ObjectInputStream;->readArray(Z)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readBoolean()Z -HSPLjava/io/ObjectInputStream;->readByte()B -HSPLjava/io/ObjectInputStream;->readClassDesc(Z)Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectInputStream;->readClassDescriptor()Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectInputStream;->readEnum(Z)Ljava/lang/Enum; -HSPLjava/io/ObjectInputStream;->readFields()Ljava/io/ObjectInputStream$GetField; -HSPLjava/io/ObjectInputStream;->readFloat()F -HSPLjava/io/ObjectInputStream;->readHandle(Z)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readInt()I -HSPLjava/io/ObjectInputStream;->readLong()J -HSPLjava/io/ObjectInputStream;->readNonProxyDesc(Z)Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectInputStream;->readNull()Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readObject()Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readObject0(Z)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readOrdinaryObject(Z)Ljava/lang/Object; -HSPLjava/io/ObjectInputStream;->readSerialData(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectInputStream;->readShort()S -HSPLjava/io/ObjectInputStream;->readStreamHeader()V -HSPLjava/io/ObjectInputStream;->readString(Z)Ljava/lang/String; -HSPLjava/io/ObjectInputStream;->readTypeString()Ljava/lang/String; -HSPLjava/io/ObjectInputStream;->readUTF()Ljava/lang/String; -HSPLjava/io/ObjectInputStream;->resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class; -HSPLjava/io/ObjectInputStream;->skipCustomData()V -HSPLjava/io/ObjectInputStream;->verifySubclass()V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->close()V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->drain()V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->flush()V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->getUTFLength(Ljava/lang/String;)J -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->setBlockDataMode(Z)Z -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->warnIfClosed()V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->write([BIIZ)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeBlockHeader(I)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeByte(I)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeBytes(Ljava/lang/String;)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeFloat(F)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeInt(I)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeLong(J)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeShort(I)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeUTF(Ljava/lang/String;)V -HSPLjava/io/ObjectOutputStream$BlockDataOutputStream;->writeUTF(Ljava/lang/String;J)V -HSPLjava/io/ObjectOutputStream$HandleTable;-><init>(IF)V -HSPLjava/io/ObjectOutputStream$HandleTable;->assign(Ljava/lang/Object;)I -HSPLjava/io/ObjectOutputStream$HandleTable;->clear()V -HSPLjava/io/ObjectOutputStream$HandleTable;->growEntries()V -HSPLjava/io/ObjectOutputStream$HandleTable;->growSpine()V -HSPLjava/io/ObjectOutputStream$HandleTable;->hash(Ljava/lang/Object;)I -HSPLjava/io/ObjectOutputStream$HandleTable;->insert(Ljava/lang/Object;I)V -HSPLjava/io/ObjectOutputStream$HandleTable;->lookup(Ljava/lang/Object;)I -HSPLjava/io/ObjectOutputStream$PutField;-><init>()V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;-><init>(Ljava/io/ObjectOutputStream;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->getFieldOffset(Ljava/lang/String;Ljava/lang/Class;)I -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->put(Ljava/lang/String;D)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->put(Ljava/lang/String;I)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->put(Ljava/lang/String;J)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->put(Ljava/lang/String;Ljava/lang/Object;)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->put(Ljava/lang/String;Z)V -HSPLjava/io/ObjectOutputStream$PutFieldImpl;->writeFields()V -HSPLjava/io/ObjectOutputStream$ReplaceTable;-><init>(IF)V -HSPLjava/io/ObjectOutputStream$ReplaceTable;->assign(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/io/ObjectOutputStream$ReplaceTable;->lookup(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/io/ObjectOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/ObjectOutputStream;->annotateClass(Ljava/lang/Class;)V -HSPLjava/io/ObjectOutputStream;->close()V -HSPLjava/io/ObjectOutputStream;->defaultWriteFields(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectOutputStream;->defaultWriteObject()V -HSPLjava/io/ObjectOutputStream;->flush()V -HSPLjava/io/ObjectOutputStream;->isCustomSubclass()Z -HSPLjava/io/ObjectOutputStream;->putFields()Ljava/io/ObjectOutputStream$PutField; -HSPLjava/io/ObjectOutputStream;->verifySubclass()V -HSPLjava/io/ObjectOutputStream;->writeArray(Ljava/lang/Object;Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectOutputStream;->writeByte(I)V -HSPLjava/io/ObjectOutputStream;->writeClassDesc(Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectOutputStream;->writeClassDescriptor(Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectOutputStream;->writeEnum(Ljava/lang/Enum;Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectOutputStream;->writeFields()V -HSPLjava/io/ObjectOutputStream;->writeFloat(F)V -HSPLjava/io/ObjectOutputStream;->writeHandle(I)V -HSPLjava/io/ObjectOutputStream;->writeInt(I)V -HSPLjava/io/ObjectOutputStream;->writeLong(J)V -HSPLjava/io/ObjectOutputStream;->writeNonProxyDesc(Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectOutputStream;->writeNull()V -HSPLjava/io/ObjectOutputStream;->writeObject(Ljava/lang/Object;)V -HSPLjava/io/ObjectOutputStream;->writeObject0(Ljava/lang/Object;Z)V -HSPLjava/io/ObjectOutputStream;->writeOrdinaryObject(Ljava/lang/Object;Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectOutputStream;->writeSerialData(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectOutputStream;->writeShort(I)V -HSPLjava/io/ObjectOutputStream;->writeStreamHeader()V -HSPLjava/io/ObjectOutputStream;->writeString(Ljava/lang/String;Z)V -HSPLjava/io/ObjectOutputStream;->writeTypeString(Ljava/lang/String;)V -HSPLjava/io/ObjectOutputStream;->writeUTF(Ljava/lang/String;)V -HSPLjava/io/ObjectStreamClass$1;-><init>(Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectStreamClass$1;->run()Ljava/lang/Long; -HSPLjava/io/ObjectStreamClass$1;->run()Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass$2;-><init>(Ljava/io/ObjectStreamClass;Ljava/lang/Class;)V -HSPLjava/io/ObjectStreamClass$2;->run()Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass$2;->run()Ljava/lang/Void; -HSPLjava/io/ObjectStreamClass$3;-><init>()V -HSPLjava/io/ObjectStreamClass$3;->compare(Ljava/io/ObjectStreamClass$MemberSignature;Ljava/io/ObjectStreamClass$MemberSignature;)I -HSPLjava/io/ObjectStreamClass$3;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/io/ObjectStreamClass$4;-><init>()V -HSPLjava/io/ObjectStreamClass$4;->compare(Ljava/io/ObjectStreamClass$MemberSignature;Ljava/io/ObjectStreamClass$MemberSignature;)I -HSPLjava/io/ObjectStreamClass$4;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/io/ObjectStreamClass$5;-><init>()V -HSPLjava/io/ObjectStreamClass$5;->compare(Ljava/io/ObjectStreamClass$MemberSignature;Ljava/io/ObjectStreamClass$MemberSignature;)I -HSPLjava/io/ObjectStreamClass$5;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/io/ObjectStreamClass$Caches;->-$$Nest$sfgetlocalDescsQueue()Ljava/lang/ref/ReferenceQueue; -HSPLjava/io/ObjectStreamClass$Caches;->-$$Nest$sfgetreflectorsQueue()Ljava/lang/ref/ReferenceQueue; -HSPLjava/io/ObjectStreamClass$ClassDataSlot;-><init>(Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectStreamClass$EntryFuture;-><init>()V -HSPLjava/io/ObjectStreamClass$EntryFuture;-><init>(Ljava/io/ObjectStreamClass$EntryFuture-IA;)V -HSPLjava/io/ObjectStreamClass$EntryFuture;->get()Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass$EntryFuture;->getOwner()Ljava/lang/Thread; -HSPLjava/io/ObjectStreamClass$EntryFuture;->set(Ljava/lang/Object;)Z -HSPLjava/io/ObjectStreamClass$ExceptionInfo;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/io/ObjectStreamClass$FieldReflector;-><init>([Ljava/io/ObjectStreamField;)V -HSPLjava/io/ObjectStreamClass$FieldReflector;->getFields()[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass$FieldReflector;->getObjFieldValues(Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLjava/io/ObjectStreamClass$FieldReflector;->getPrimFieldValues(Ljava/lang/Object;[B)V -HSPLjava/io/ObjectStreamClass$FieldReflector;->setObjFieldValues(Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLjava/io/ObjectStreamClass$FieldReflector;->setPrimFieldValues(Ljava/lang/Object;[B)V -HSPLjava/io/ObjectStreamClass$FieldReflectorKey;-><init>(Ljava/lang/Class;[Ljava/io/ObjectStreamField;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/io/ObjectStreamClass$FieldReflectorKey;->equals(Ljava/lang/Object;)Z -HSPLjava/io/ObjectStreamClass$FieldReflectorKey;->hashCode()I -HSPLjava/io/ObjectStreamClass$MemberSignature;-><init>(Ljava/lang/reflect/Constructor;)V -HSPLjava/io/ObjectStreamClass$MemberSignature;-><init>(Ljava/lang/reflect/Field;)V -HSPLjava/io/ObjectStreamClass$MemberSignature;-><init>(Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass$WeakClassKey;-><init>(Ljava/lang/Class;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/io/ObjectStreamClass$WeakClassKey;->equals(Ljava/lang/Object;)Z -HSPLjava/io/ObjectStreamClass$WeakClassKey;->hashCode()I -HSPLjava/io/ObjectStreamClass;->-$$Nest$fgetexternalizable(Ljava/io/ObjectStreamClass;)Z -HSPLjava/io/ObjectStreamClass;->-$$Nest$fgetisEnum(Ljava/io/ObjectStreamClass;)Z -HSPLjava/io/ObjectStreamClass;->-$$Nest$fgetwriteObjectMethod(Ljava/io/ObjectStreamClass;)Ljava/lang/reflect/Method; -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputcons(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Constructor;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputfields(Ljava/io/ObjectStreamClass;[Ljava/io/ObjectStreamField;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputhasWriteObjectData(Ljava/io/ObjectStreamClass;Z)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputreadObjectMethod(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputreadObjectNoDataMethod(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputreadResolveMethod(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputsuid(Ljava/io/ObjectStreamClass;Ljava/lang/Long;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputwriteObjectMethod(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$fputwriteReplaceMethod(Ljava/io/ObjectStreamClass;Ljava/lang/reflect/Method;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$mcomputeFieldOffsets(Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectStreamClass;->-$$Nest$smgetDeclaredSUID(Ljava/lang/Class;)Ljava/lang/Long; -HSPLjava/io/ObjectStreamClass;->-$$Nest$smgetInheritableMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/io/ObjectStreamClass;->-$$Nest$smgetPrivateMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/io/ObjectStreamClass;->-$$Nest$smgetSerialFields(Ljava/lang/Class;)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->-$$Nest$smgetSerializableConstructor(Ljava/lang/Class;)Ljava/lang/reflect/Constructor; -HSPLjava/io/ObjectStreamClass;-><init>()V -HSPLjava/io/ObjectStreamClass;-><init>(Ljava/lang/Class;)V -HSPLjava/io/ObjectStreamClass;->checkDefaultSerialize()V -HSPLjava/io/ObjectStreamClass;->checkDeserialize()V -HSPLjava/io/ObjectStreamClass;->checkSerialize()V -HSPLjava/io/ObjectStreamClass;->classNamesEqual(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/io/ObjectStreamClass;->computeDefaultSUID(Ljava/lang/Class;)J -HSPLjava/io/ObjectStreamClass;->computeFieldOffsets()V -HSPLjava/io/ObjectStreamClass;->forClass()Ljava/lang/Class; -HSPLjava/io/ObjectStreamClass;->getClassDataLayout()[Ljava/io/ObjectStreamClass$ClassDataSlot; -HSPLjava/io/ObjectStreamClass;->getClassDataLayout0()[Ljava/io/ObjectStreamClass$ClassDataSlot; -HSPLjava/io/ObjectStreamClass;->getClassSignature(Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/io/ObjectStreamClass;->getDeclaredSUID(Ljava/lang/Class;)Ljava/lang/Long; -HSPLjava/io/ObjectStreamClass;->getDeclaredSerialFields(Ljava/lang/Class;)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->getDefaultSerialFields(Ljava/lang/Class;)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->getField(Ljava/lang/String;Ljava/lang/Class;)Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->getFields(Z)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->getInheritableMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/io/ObjectStreamClass;->getMethodSignature([Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/io/ObjectStreamClass;->getName()Ljava/lang/String; -HSPLjava/io/ObjectStreamClass;->getNumObjFields()I -HSPLjava/io/ObjectStreamClass;->getObjFieldValues(Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLjava/io/ObjectStreamClass;->getPackageName(Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/io/ObjectStreamClass;->getPrimDataSize()I -HSPLjava/io/ObjectStreamClass;->getPrimFieldValues(Ljava/lang/Object;[B)V -HSPLjava/io/ObjectStreamClass;->getPrivateMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/io/ObjectStreamClass;->getReflector([Ljava/io/ObjectStreamField;Ljava/io/ObjectStreamClass;)Ljava/io/ObjectStreamClass$FieldReflector; -HSPLjava/io/ObjectStreamClass;->getResolveException()Ljava/lang/ClassNotFoundException; -HSPLjava/io/ObjectStreamClass;->getSerialFields(Ljava/lang/Class;)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->getSerialVersionUID()J -HSPLjava/io/ObjectStreamClass;->getSerializableConstructor(Ljava/lang/Class;)Ljava/lang/reflect/Constructor; -HSPLjava/io/ObjectStreamClass;->getSuperDesc()Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectStreamClass;->getVariantFor(Ljava/lang/Class;)Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectStreamClass;->hasReadObjectMethod()Z -HSPLjava/io/ObjectStreamClass;->hasReadResolveMethod()Z -HSPLjava/io/ObjectStreamClass;->hasWriteObjectData()Z -HSPLjava/io/ObjectStreamClass;->hasWriteObjectMethod()Z -HSPLjava/io/ObjectStreamClass;->hasWriteReplaceMethod()Z -HSPLjava/io/ObjectStreamClass;->initNonProxy(Ljava/io/ObjectStreamClass;Ljava/lang/Class;Ljava/lang/ClassNotFoundException;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/ObjectStreamClass;->invokeReadObject(Ljava/lang/Object;Ljava/io/ObjectInputStream;)V -HSPLjava/io/ObjectStreamClass;->invokeReadResolve(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass;->invokeWriteObject(Ljava/lang/Object;Ljava/io/ObjectOutputStream;)V -HSPLjava/io/ObjectStreamClass;->invokeWriteReplace(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass;->isEnum()Z -HSPLjava/io/ObjectStreamClass;->isExternalizable()Z -HSPLjava/io/ObjectStreamClass;->isInstantiable()Z -HSPLjava/io/ObjectStreamClass;->isProxy()Z -HSPLjava/io/ObjectStreamClass;->isRecord()Z -HSPLjava/io/ObjectStreamClass;->lookup(Ljava/lang/Class;Z)Ljava/io/ObjectStreamClass; -HSPLjava/io/ObjectStreamClass;->matchFields([Ljava/io/ObjectStreamField;Ljava/io/ObjectStreamClass;)[Ljava/io/ObjectStreamField; -HSPLjava/io/ObjectStreamClass;->newInstance()Ljava/lang/Object; -HSPLjava/io/ObjectStreamClass;->packageEquals(Ljava/lang/Class;Ljava/lang/Class;)Z -HSPLjava/io/ObjectStreamClass;->processQueue(Ljava/lang/ref/ReferenceQueue;Ljava/util/concurrent/ConcurrentMap;)V -HSPLjava/io/ObjectStreamClass;->readNonProxy(Ljava/io/ObjectInputStream;)V -HSPLjava/io/ObjectStreamClass;->requireInitialized()V -HSPLjava/io/ObjectStreamClass;->setObjFieldValues(Ljava/lang/Object;[Ljava/lang/Object;)V -HSPLjava/io/ObjectStreamClass;->setPrimFieldValues(Ljava/lang/Object;[B)V -HSPLjava/io/ObjectStreamClass;->writeNonProxy(Ljava/io/ObjectOutputStream;)V -HSPLjava/io/ObjectStreamField;-><init>(Ljava/lang/String;Ljava/lang/Class;)V -HSPLjava/io/ObjectStreamField;-><init>(Ljava/lang/String;Ljava/lang/Class;Z)V -HSPLjava/io/ObjectStreamField;-><init>(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLjava/io/ObjectStreamField;-><init>(Ljava/lang/reflect/Field;ZZ)V -HSPLjava/io/ObjectStreamField;->appendClassSignature(Ljava/lang/StringBuilder;Ljava/lang/Class;)Ljava/lang/StringBuilder; -HSPLjava/io/ObjectStreamField;->compareTo(Ljava/lang/Object;)I -HSPLjava/io/ObjectStreamField;->getClassSignature(Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/io/ObjectStreamField;->getField()Ljava/lang/reflect/Field; -HSPLjava/io/ObjectStreamField;->getName()Ljava/lang/String; -HSPLjava/io/ObjectStreamField;->getOffset()I -HSPLjava/io/ObjectStreamField;->getPrimitiveSignature(Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/io/ObjectStreamField;->getSignature()Ljava/lang/String; -HSPLjava/io/ObjectStreamField;->getType()Ljava/lang/Class; -HSPLjava/io/ObjectStreamField;->getTypeCode()C -HSPLjava/io/ObjectStreamField;->getTypeString()Ljava/lang/String; -HSPLjava/io/ObjectStreamField;->isPrimitive()Z -HSPLjava/io/ObjectStreamField;->isUnshared()Z -HSPLjava/io/ObjectStreamField;->setOffset(I)V -HSPLjava/io/OutputStream;-><init>()V -HSPLjava/io/OutputStream;->close()V -HSPLjava/io/OutputStream;->flush()V -HSPLjava/io/OutputStream;->write([B)V -HSPLjava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;Ljava/lang/String;)V -HSPLjava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V -HSPLjava/io/OutputStreamWriter;->close()V -HSPLjava/io/OutputStreamWriter;->flush()V -HSPLjava/io/OutputStreamWriter;->write(I)V -HSPLjava/io/OutputStreamWriter;->write(Ljava/lang/String;II)V -HSPLjava/io/OutputStreamWriter;->write([CII)V -HSPLjava/io/PrintStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/PrintStream;-><init>(Ljava/io/OutputStream;Z)V -HSPLjava/io/PrintStream;-><init>(ZLjava/io/OutputStream;)V -HSPLjava/io/PrintStream;->close()V -HSPLjava/io/PrintStream;->ensureOpen()V -HSPLjava/io/PrintStream;->flush()V -HSPLjava/io/PrintStream;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; -HSPLjava/io/PrintWriter;-><init>(Ljava/io/OutputStream;)V -HSPLjava/io/PrintWriter;-><init>(Ljava/io/OutputStream;Z)V -HSPLjava/io/PrintWriter;-><init>(Ljava/io/Writer;)V -HSPLjava/io/PrintWriter;-><init>(Ljava/io/Writer;Z)V -HSPLjava/io/PrintWriter;->append(C)Ljava/io/PrintWriter; -HSPLjava/io/PrintWriter;->append(Ljava/lang/CharSequence;)Ljava/io/PrintWriter; -HSPLjava/io/PrintWriter;->append(Ljava/lang/CharSequence;)Ljava/lang/Appendable; -HSPLjava/io/PrintWriter;->close()V -HSPLjava/io/PrintWriter;->ensureOpen()V -HSPLjava/io/PrintWriter;->flush()V -HSPLjava/io/PrintWriter;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter; -HSPLjava/io/PrintWriter;->newLine()V -HSPLjava/io/PrintWriter;->print(C)V -HSPLjava/io/PrintWriter;->print(I)V -HSPLjava/io/PrintWriter;->print(J)V -HSPLjava/io/PrintWriter;->print(Ljava/lang/String;)V -HSPLjava/io/PrintWriter;->print(Z)V -HSPLjava/io/PrintWriter;->printf(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter; -HSPLjava/io/PrintWriter;->println()V -HSPLjava/io/PrintWriter;->println(I)V -HSPLjava/io/PrintWriter;->println(Ljava/lang/Object;)V -HSPLjava/io/PrintWriter;->println(Ljava/lang/String;)V -HSPLjava/io/PrintWriter;->write(I)V -HSPLjava/io/PrintWriter;->write(Ljava/lang/String;)V -HSPLjava/io/PrintWriter;->write(Ljava/lang/String;II)V -HSPLjava/io/PrintWriter;->write([CII)V -HSPLjava/io/PushbackInputStream;-><init>(Ljava/io/InputStream;I)V -HSPLjava/io/PushbackInputStream;->close()V -HSPLjava/io/PushbackInputStream;->ensureOpen()V -HSPLjava/io/PushbackInputStream;->markSupported()Z -HSPLjava/io/PushbackInputStream;->read()I -HSPLjava/io/PushbackInputStream;->read([BII)I -HSPLjava/io/PushbackInputStream;->unread([BII)V -HSPLjava/io/PushbackReader;-><init>(Ljava/io/Reader;I)V -HSPLjava/io/PushbackReader;->ensureOpen()V -HSPLjava/io/PushbackReader;->read()I -HSPLjava/io/PushbackReader;->unread(I)V -HSPLjava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;)V -HSPLjava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;Z)V -HSPLjava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/io/RandomAccessFile;->close()V -HSPLjava/io/RandomAccessFile;->finalize()V -HSPLjava/io/RandomAccessFile;->getChannel()Ljava/nio/channels/FileChannel; -HSPLjava/io/RandomAccessFile;->getFD()Ljava/io/FileDescriptor; -HSPLjava/io/RandomAccessFile;->getFilePointer()J -HSPLjava/io/RandomAccessFile;->length()J -HSPLjava/io/RandomAccessFile;->maybeSync()V -HSPLjava/io/RandomAccessFile;->read()I -HSPLjava/io/RandomAccessFile;->read([B)I -HSPLjava/io/RandomAccessFile;->read([BII)I -HSPLjava/io/RandomAccessFile;->readByte()B -HSPLjava/io/RandomAccessFile;->readBytes([BII)I -HSPLjava/io/RandomAccessFile;->readFully([B)V -HSPLjava/io/RandomAccessFile;->readFully([BII)V -HSPLjava/io/RandomAccessFile;->readInt()I -HSPLjava/io/RandomAccessFile;->readLine()Ljava/lang/String; -HSPLjava/io/RandomAccessFile;->seek(J)V -HSPLjava/io/RandomAccessFile;->setLength(J)V -HSPLjava/io/RandomAccessFile;->write(I)V -HSPLjava/io/RandomAccessFile;->write([B)V -HSPLjava/io/RandomAccessFile;->write([BII)V -HSPLjava/io/RandomAccessFile;->writeBytes([BII)V -HSPLjava/io/RandomAccessFile;->writeInt(I)V -HSPLjava/io/RandomAccessFile;->writeUTF(Ljava/lang/String;)V -HSPLjava/io/Reader;-><init>()V -HSPLjava/io/Reader;-><init>(Ljava/lang/Object;)V -HSPLjava/io/Reader;->read(Ljava/nio/CharBuffer;)I -HSPLjava/io/Reader;->read([C)I -HSPLjava/io/SequenceInputStream;-><init>(Ljava/io/InputStream;Ljava/io/InputStream;)V -HSPLjava/io/SequenceInputStream;->close()V -HSPLjava/io/SequenceInputStream;->nextStream()V -HSPLjava/io/SequenceInputStream;->read()I -HSPLjava/io/SequenceInputStream;->read([BII)I -HSPLjava/io/SerialCallbackContext;-><init>(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V -HSPLjava/io/SerialCallbackContext;->check()V -HSPLjava/io/SerialCallbackContext;->checkAndSetUsed()V -HSPLjava/io/SerialCallbackContext;->getDesc()Ljava/io/ObjectStreamClass; -HSPLjava/io/SerialCallbackContext;->getObj()Ljava/lang/Object; -HSPLjava/io/SerialCallbackContext;->setUsed()V -HSPLjava/io/StringReader;-><init>(Ljava/lang/String;)V -HSPLjava/io/StringReader;->close()V -HSPLjava/io/StringReader;->ensureOpen()V -HSPLjava/io/StringReader;->read()I -HSPLjava/io/StringReader;->read([CII)I -HSPLjava/io/StringWriter;-><init>()V -HSPLjava/io/StringWriter;-><init>(I)V -HSPLjava/io/StringWriter;->append(C)Ljava/io/StringWriter; -HSPLjava/io/StringWriter;->append(C)Ljava/io/Writer; -HSPLjava/io/StringWriter;->append(Ljava/lang/CharSequence;)Ljava/io/StringWriter; -HSPLjava/io/StringWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer; -HSPLjava/io/StringWriter;->close()V -HSPLjava/io/StringWriter;->flush()V -HSPLjava/io/StringWriter;->getBuffer()Ljava/lang/StringBuffer; -HSPLjava/io/StringWriter;->toString()Ljava/lang/String; -HSPLjava/io/StringWriter;->write(I)V -HSPLjava/io/StringWriter;->write(Ljava/lang/String;)V -HSPLjava/io/StringWriter;->write(Ljava/lang/String;II)V -HSPLjava/io/StringWriter;->write([CII)V -HSPLjava/io/UnixFileSystem;->canonicalize(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->checkAccess(Ljava/io/File;I)Z -HSPLjava/io/UnixFileSystem;->compare(Ljava/io/File;Ljava/io/File;)I -HSPLjava/io/UnixFileSystem;->createDirectory(Ljava/io/File;)Z -HSPLjava/io/UnixFileSystem;->createFileExclusively(Ljava/lang/String;)Z -HSPLjava/io/UnixFileSystem;->delete(Ljava/io/File;)Z -HSPLjava/io/UnixFileSystem;->getBooleanAttributes(Ljava/io/File;)I -HSPLjava/io/UnixFileSystem;->getDefaultParent()Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->getLastModifiedTime(Ljava/io/File;)J -HSPLjava/io/UnixFileSystem;->getLength(Ljava/io/File;)J -HSPLjava/io/UnixFileSystem;->getSpace(Ljava/io/File;I)J -HSPLjava/io/UnixFileSystem;->hashCode(Ljava/io/File;)I -HSPLjava/io/UnixFileSystem;->isAbsolute(Ljava/io/File;)Z -HSPLjava/io/UnixFileSystem;->list(Ljava/io/File;)[Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->normalize(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->prefixLength(Ljava/lang/String;)I -HSPLjava/io/UnixFileSystem;->rename(Ljava/io/File;Ljava/io/File;)Z -HSPLjava/io/UnixFileSystem;->resolve(Ljava/io/File;)Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->resolve(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/io/UnixFileSystem;->setLastModifiedTime(Ljava/io/File;J)Z -HSPLjava/io/UnixFileSystem;->setPermission(Ljava/io/File;IZZ)Z -HSPLjava/io/Writer;-><init>()V -HSPLjava/io/Writer;-><init>(Ljava/lang/Object;)V -HSPLjava/io/Writer;->append(C)Ljava/io/Writer; -HSPLjava/io/Writer;->append(Ljava/lang/CharSequence;)Ljava/io/Writer; -HSPLjava/io/Writer;->write(Ljava/lang/String;)V -HSPLjava/lang/AbstractStringBuilder;-><init>(I)V -HSPLjava/lang/AbstractStringBuilder;->append(C)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(D)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(F)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(I)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(J)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Ljava/lang/AbstractStringBuilder;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Ljava/lang/StringBuffer;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append(Z)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->append([CII)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->appendChars(Ljava/lang/CharSequence;II)V -HSPLjava/lang/AbstractStringBuilder;->appendChars([CII)V -HSPLjava/lang/AbstractStringBuilder;->appendCodePoint(I)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->appendNull()Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->charAt(I)C -HSPLjava/lang/AbstractStringBuilder;->checkRange(III)V -HSPLjava/lang/AbstractStringBuilder;->checkRangeSIOOBE(III)V -HSPLjava/lang/AbstractStringBuilder;->codePointAt(I)I -HSPLjava/lang/AbstractStringBuilder;->delete(II)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->deleteCharAt(I)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->ensureCapacity(I)V -HSPLjava/lang/AbstractStringBuilder;->ensureCapacityInternal(I)V -HSPLjava/lang/AbstractStringBuilder;->getBytes([BIB)V -HSPLjava/lang/AbstractStringBuilder;->getChars(II[CI)V -HSPLjava/lang/AbstractStringBuilder;->getCoder()B -HSPLjava/lang/AbstractStringBuilder;->indexOf(Ljava/lang/String;)I -HSPLjava/lang/AbstractStringBuilder;->indexOf(Ljava/lang/String;I)I -HSPLjava/lang/AbstractStringBuilder;->inflate()V -HSPLjava/lang/AbstractStringBuilder;->insert(IC)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->insert(II)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->insert(ILjava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->isLatin1()Z -HSPLjava/lang/AbstractStringBuilder;->lastIndexOf(Ljava/lang/String;I)I -HSPLjava/lang/AbstractStringBuilder;->length()I -HSPLjava/lang/AbstractStringBuilder;->newCapacity(I)I -HSPLjava/lang/AbstractStringBuilder;->putStringAt(ILjava/lang/String;)V -HSPLjava/lang/AbstractStringBuilder;->replace(IILjava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->reverse()Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/AbstractStringBuilder;->setCharAt(IC)V -HSPLjava/lang/AbstractStringBuilder;->setLength(I)V -HSPLjava/lang/AbstractStringBuilder;->shift(II)V -HSPLjava/lang/AbstractStringBuilder;->subSequence(II)Ljava/lang/CharSequence; -HSPLjava/lang/AbstractStringBuilder;->substring(I)Ljava/lang/String; -HSPLjava/lang/AbstractStringBuilder;->substring(II)Ljava/lang/String; -HSPLjava/lang/ArrayIndexOutOfBoundsException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Boolean;-><init>(Z)V -HSPLjava/lang/Boolean;->booleanValue()Z -HSPLjava/lang/Boolean;->compare(ZZ)I -HSPLjava/lang/Boolean;->compareTo(Ljava/lang/Boolean;)I -HSPLjava/lang/Boolean;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Boolean;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Boolean;->getBoolean(Ljava/lang/String;)Z -HSPLjava/lang/Boolean;->hashCode()I -HSPLjava/lang/Boolean;->hashCode(Z)I -HSPLjava/lang/Boolean;->parseBoolean(Ljava/lang/String;)Z -HSPLjava/lang/Boolean;->toString()Ljava/lang/String; -HSPLjava/lang/Boolean;->toString(Z)Ljava/lang/String; -HSPLjava/lang/Boolean;->valueOf(Ljava/lang/String;)Ljava/lang/Boolean; -HSPLjava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; -HSPLjava/lang/BootClassLoader;->findClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/lang/BootClassLoader;->findResource(Ljava/lang/String;)Ljava/net/URL; -HSPLjava/lang/BootClassLoader;->findResources(Ljava/lang/String;)Ljava/util/Enumeration; -HSPLjava/lang/BootClassLoader;->getInstance()Ljava/lang/BootClassLoader; -HSPLjava/lang/BootClassLoader;->getResource(Ljava/lang/String;)Ljava/net/URL; -HSPLjava/lang/BootClassLoader;->getResources(Ljava/lang/String;)Ljava/util/Enumeration; -HSPLjava/lang/BootClassLoader;->loadClass(Ljava/lang/String;Z)Ljava/lang/Class; -HSPLjava/lang/Byte;-><init>(B)V -HSPLjava/lang/Byte;->byteValue()B -HSPLjava/lang/Byte;->compare(BB)I -HSPLjava/lang/Byte;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Byte;->hashCode()I -HSPLjava/lang/Byte;->hashCode(B)I -HSPLjava/lang/Byte;->parseByte(Ljava/lang/String;I)B -HSPLjava/lang/Byte;->toString()Ljava/lang/String; -HSPLjava/lang/Byte;->toString(B)Ljava/lang/String; -HSPLjava/lang/Byte;->toUnsignedInt(B)I -HSPLjava/lang/Byte;->valueOf(B)Ljava/lang/Byte; -HSPLjava/lang/CaseMapper;->toLowerCase(Ljava/util/Locale;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/CaseMapper;->toUpperCase(Ljava/util/Locale;Ljava/lang/String;I)Ljava/lang/String; -HSPLjava/lang/CaseMapper;->upperIndex(I)I -HSPLjava/lang/Character$Subset;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Character$Subset;->hashCode()I -HSPLjava/lang/Character$UnicodeBlock;->of(I)Ljava/lang/Character$UnicodeBlock; -HSPLjava/lang/Character;-><init>(C)V -HSPLjava/lang/Character;->charCount(I)I -HSPLjava/lang/Character;->charValue()C -HSPLjava/lang/Character;->codePointAt(Ljava/lang/CharSequence;I)I -HSPLjava/lang/Character;->codePointAtImpl([CII)I -HSPLjava/lang/Character;->codePointBefore(Ljava/lang/CharSequence;I)I -HSPLjava/lang/Character;->codePointCount(Ljava/lang/CharSequence;II)I -HSPLjava/lang/Character;->digit(CI)I -HSPLjava/lang/Character;->digit(II)I -HSPLjava/lang/Character;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Character;->forDigit(II)C -HSPLjava/lang/Character;->getDirectionality(C)B -HSPLjava/lang/Character;->getDirectionality(I)B -HSPLjava/lang/Character;->getNumericValue(C)I -HSPLjava/lang/Character;->getNumericValue(I)I -HSPLjava/lang/Character;->getType(I)I -HSPLjava/lang/Character;->hashCode()I -HSPLjava/lang/Character;->hashCode(C)I -HSPLjava/lang/Character;->highSurrogate(I)C -HSPLjava/lang/Character;->isBmpCodePoint(I)Z -HSPLjava/lang/Character;->isDigit(C)Z -HSPLjava/lang/Character;->isDigit(I)Z -HSPLjava/lang/Character;->isHighSurrogate(C)Z -HSPLjava/lang/Character;->isISOControl(I)Z -HSPLjava/lang/Character;->isJavaIdentifierPart(C)Z -HSPLjava/lang/Character;->isJavaIdentifierPart(I)Z -HSPLjava/lang/Character;->isJavaIdentifierStart(I)Z -HSPLjava/lang/Character;->isLetter(C)Z -HSPLjava/lang/Character;->isLetter(I)Z -HSPLjava/lang/Character;->isLetterOrDigit(C)Z -HSPLjava/lang/Character;->isLetterOrDigit(I)Z -HSPLjava/lang/Character;->isLowSurrogate(C)Z -HSPLjava/lang/Character;->isLowerCase(C)Z -HSPLjava/lang/Character;->isLowerCase(I)Z -HSPLjava/lang/Character;->isSpaceChar(C)Z -HSPLjava/lang/Character;->isSpaceChar(I)Z -HSPLjava/lang/Character;->isSupplementaryCodePoint(I)Z -HSPLjava/lang/Character;->isSurrogate(C)Z -HSPLjava/lang/Character;->isSurrogatePair(CC)Z -HSPLjava/lang/Character;->isUpperCase(C)Z -HSPLjava/lang/Character;->isUpperCase(I)Z -HSPLjava/lang/Character;->isValidCodePoint(I)Z -HSPLjava/lang/Character;->isWhitespace(C)Z -HSPLjava/lang/Character;->isWhitespace(I)Z -HSPLjava/lang/Character;->lowSurrogate(I)C -HSPLjava/lang/Character;->toChars(I)[C -HSPLjava/lang/Character;->toChars(I[CI)I -HSPLjava/lang/Character;->toCodePoint(CC)I -HSPLjava/lang/Character;->toLowerCase(C)C -HSPLjava/lang/Character;->toLowerCase(I)I -HSPLjava/lang/Character;->toString()Ljava/lang/String; -HSPLjava/lang/Character;->toString(C)Ljava/lang/String; -HSPLjava/lang/Character;->toSurrogates(I[CI)V -HSPLjava/lang/Character;->toUpperCase(C)C -HSPLjava/lang/Character;->toUpperCase(I)I -HSPLjava/lang/Character;->valueOf(C)Ljava/lang/Character; -HSPLjava/lang/Class;->asSubclass(Ljava/lang/Class;)Ljava/lang/Class; -HSPLjava/lang/Class;->cast(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/Class;->classNameImpliesTopLevel()Z -HSPLjava/lang/Class;->desiredAssertionStatus()Z -HSPLjava/lang/Class;->findInterfaceMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class; -HSPLjava/lang/Class;->getAccessFlags()I -HSPLjava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; -HSPLjava/lang/Class;->getCanonicalName()Ljava/lang/String; -HSPLjava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader; -HSPLjava/lang/Class;->getComponentType()Ljava/lang/Class; -HSPLjava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getConstructor0([Ljava/lang/Class;I)Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getConstructors()[Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getDeclaredConstructors()[Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getDeclaredMethods()[Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getEnclosingConstructor()Ljava/lang/reflect/Constructor; -HSPLjava/lang/Class;->getEnclosingMethod()Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getEnumConstants()[Ljava/lang/Object; -HSPLjava/lang/Class;->getEnumConstantsShared()[Ljava/lang/Object; -HSPLjava/lang/Class;->getField(Ljava/lang/String;)Ljava/lang/reflect/Field; -HSPLjava/lang/Class;->getFields()[Ljava/lang/reflect/Field; -HSPLjava/lang/Class;->getGenericInterfaces()[Ljava/lang/reflect/Type; -HSPLjava/lang/Class;->getGenericSuperclass()Ljava/lang/reflect/Type; -HSPLjava/lang/Class;->getInterfaces()[Ljava/lang/Class; -HSPLjava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;Z)Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getMethods()[Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getModifiers()I -HSPLjava/lang/Class;->getName()Ljava/lang/String; -HSPLjava/lang/Class;->getPackage()Ljava/lang/Package; -HSPLjava/lang/Class;->getPackageName()Ljava/lang/String; -HSPLjava/lang/Class;->getProtectionDomain()Ljava/security/ProtectionDomain; -HSPLjava/lang/Class;->getPublicFieldsRecursive(Ljava/util/List;)V -HSPLjava/lang/Class;->getPublicMethodRecursive(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; -HSPLjava/lang/Class;->getPublicMethodsInternal(Ljava/util/List;)V -HSPLjava/lang/Class;->getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream; -HSPLjava/lang/Class;->getSignatureAttribute()Ljava/lang/String; -HSPLjava/lang/Class;->getSimpleName()Ljava/lang/String; -HSPLjava/lang/Class;->getSuperclass()Ljava/lang/Class; -HSPLjava/lang/Class;->getTypeName()Ljava/lang/String; -HSPLjava/lang/Class;->getTypeParameters()[Ljava/lang/reflect/TypeVariable; -HSPLjava/lang/Class;->isAnnotation()Z -HSPLjava/lang/Class;->isAnnotationPresent(Ljava/lang/Class;)Z -HSPLjava/lang/Class;->isArray()Z -HSPLjava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z -HSPLjava/lang/Class;->isEnum()Z -HSPLjava/lang/Class;->isInstance(Ljava/lang/Object;)Z -HSPLjava/lang/Class;->isInterface()Z -HSPLjava/lang/Class;->isLocalClass()Z -HSPLjava/lang/Class;->isLocalOrAnonymousClass()Z -HSPLjava/lang/Class;->isMemberClass()Z -HSPLjava/lang/Class;->isPrimitive()Z -HSPLjava/lang/Class;->isProxy()Z -HSPLjava/lang/Class;->resolveName(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/Class;->toString()Ljava/lang/String; -HSPLjava/lang/ClassCastException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/ClassLoader;-><init>()V -HSPLjava/lang/ClassLoader;-><init>(Ljava/lang/ClassLoader;)V -HSPLjava/lang/ClassLoader;-><init>(Ljava/lang/Void;Ljava/lang/String;Ljava/lang/ClassLoader;)V -HSPLjava/lang/ClassLoader;->checkCreateClassLoader()Ljava/lang/Void; -HSPLjava/lang/ClassLoader;->checkCreateClassLoader(Ljava/lang/String;)Ljava/lang/Void; -HSPLjava/lang/ClassLoader;->definePackage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;)Ljava/lang/Package; -HSPLjava/lang/ClassLoader;->findLoadedClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/lang/ClassLoader;->getClassLoader(Ljava/lang/Class;)Ljava/lang/ClassLoader; -HSPLjava/lang/ClassLoader;->getPackage(Ljava/lang/String;)Ljava/lang/Package; -HSPLjava/lang/ClassLoader;->getParent()Ljava/lang/ClassLoader; -HSPLjava/lang/ClassLoader;->getResource(Ljava/lang/String;)Ljava/net/URL; -HSPLjava/lang/ClassLoader;->getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream; -HSPLjava/lang/ClassLoader;->getResources(Ljava/lang/String;)Ljava/util/Enumeration; -HSPLjava/lang/ClassLoader;->getSystemClassLoader()Ljava/lang/ClassLoader; -HSPLjava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/lang/ClassLoader;->loadClass(Ljava/lang/String;Z)Ljava/lang/Class; -HSPLjava/lang/ClassNotFoundException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/ClassNotFoundException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/Daemons$Daemon;->interrupt(Ljava/lang/Thread;)V -HSPLjava/lang/Daemons$Daemon;->isRunning()Z -HSPLjava/lang/Daemons$Daemon;->run()V -HSPLjava/lang/Daemons$Daemon;->start()V -HSPLjava/lang/Daemons$Daemon;->startInternal()V -HSPLjava/lang/Daemons$Daemon;->stop()V -HSPLjava/lang/Daemons$FinalizerDaemon;->-$$Nest$fgetprogressCounter(Ljava/lang/Daemons$FinalizerDaemon;)Ljava/util/concurrent/atomic/AtomicInteger; -HSPLjava/lang/Daemons$FinalizerDaemon;->-$$Nest$sfgetINSTANCE()Ljava/lang/Daemons$FinalizerDaemon; -HSPLjava/lang/Daemons$FinalizerDaemon;->doFinalize(Ljava/lang/ref/FinalizerReference;)V -HSPLjava/lang/Daemons$FinalizerDaemon;->processReference(Ljava/lang/Object;)V -HSPLjava/lang/Daemons$FinalizerDaemon;->runInternal()V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->-$$Nest$mmonitoringNeeded(Ljava/lang/Daemons$FinalizerWatchdogDaemon;I)V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->-$$Nest$mmonitoringNotNeeded(Ljava/lang/Daemons$FinalizerWatchdogDaemon;I)V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->-$$Nest$sfgetINSTANCE()Ljava/lang/Daemons$FinalizerWatchdogDaemon; -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->isActive(I)Z -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->monitoringNeeded(I)V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->monitoringNotNeeded(I)V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->resetTimeouts()V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->runInternal()V -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->sleepForNanos(J)Z -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->sleepUntilNeeded()Z -HSPLjava/lang/Daemons$FinalizerWatchdogDaemon;->waitForProgress()Ljava/util/concurrent/TimeoutException; -HSPLjava/lang/Daemons$HeapTaskDaemon;->interrupt(Ljava/lang/Thread;)V -HSPLjava/lang/Daemons$HeapTaskDaemon;->runInternal()V -HSPLjava/lang/Daemons$ReferenceQueueDaemon;->-$$Nest$fgetprogressCounter(Ljava/lang/Daemons$ReferenceQueueDaemon;)Ljava/util/concurrent/atomic/AtomicInteger; -HSPLjava/lang/Daemons$ReferenceQueueDaemon;->-$$Nest$sfgetINSTANCE()Ljava/lang/Daemons$ReferenceQueueDaemon; -HSPLjava/lang/Daemons$ReferenceQueueDaemon;->runInternal()V -HSPLjava/lang/Daemons;->-$$Nest$sfgetpostZygoteFork()Z -HSPLjava/lang/Daemons;->-$$Nest$sfgetzygoteStartLatch()Ljava/util/concurrent/CountDownLatch; -HSPLjava/lang/Daemons;->start()V -HSPLjava/lang/Daemons;->startPostZygoteFork()V -HSPLjava/lang/Daemons;->stop()V -HSPLjava/lang/Double;-><init>(D)V -HSPLjava/lang/Double;->compare(DD)I -HSPLjava/lang/Double;->compareTo(Ljava/lang/Double;)I -HSPLjava/lang/Double;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Double;->doubleToLongBits(D)J -HSPLjava/lang/Double;->doubleValue()D -HSPLjava/lang/Double;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Double;->floatValue()F -HSPLjava/lang/Double;->hashCode()I -HSPLjava/lang/Double;->hashCode(D)I -HSPLjava/lang/Double;->intValue()I -HSPLjava/lang/Double;->isInfinite(D)Z -HSPLjava/lang/Double;->isNaN()Z -HSPLjava/lang/Double;->isNaN(D)Z -HSPLjava/lang/Double;->longValue()J -HSPLjava/lang/Double;->parseDouble(Ljava/lang/String;)D -HSPLjava/lang/Double;->toString()Ljava/lang/String; -HSPLjava/lang/Double;->toString(D)Ljava/lang/String; -HSPLjava/lang/Double;->valueOf(D)Ljava/lang/Double; -HSPLjava/lang/Double;->valueOf(Ljava/lang/String;)Ljava/lang/Double; -HSPLjava/lang/Enum$1;->create(Ljava/lang/Class;)[Ljava/lang/Object; -HSPLjava/lang/Enum$1;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/Enum;->-$$Nest$smenumValues(Ljava/lang/Class;)[Ljava/lang/Object; -HSPLjava/lang/Enum;-><init>(Ljava/lang/String;I)V -HSPLjava/lang/Enum;->compareTo(Ljava/lang/Enum;)I -HSPLjava/lang/Enum;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Enum;->enumValues(Ljava/lang/Class;)[Ljava/lang/Object; -HSPLjava/lang/Enum;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Enum;->getDeclaringClass()Ljava/lang/Class; -HSPLjava/lang/Enum;->getSharedConstants(Ljava/lang/Class;)[Ljava/lang/Enum; -HSPLjava/lang/Enum;->hashCode()I -HSPLjava/lang/Enum;->name()Ljava/lang/String; -HSPLjava/lang/Enum;->ordinal()I -HSPLjava/lang/Enum;->toString()Ljava/lang/String; -HSPLjava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum; -HSPLjava/lang/Error;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Exception;-><init>()V -HSPLjava/lang/Exception;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;ZZ)V -HSPLjava/lang/Exception;-><init>(Ljava/lang/Throwable;)V -HSPLjava/lang/Float;-><init>(F)V -HSPLjava/lang/Float;->compare(FF)I -HSPLjava/lang/Float;->compareTo(Ljava/lang/Float;)I -HSPLjava/lang/Float;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Float;->doubleValue()D -HSPLjava/lang/Float;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Float;->floatToIntBits(F)I -HSPLjava/lang/Float;->floatValue()F -HSPLjava/lang/Float;->hashCode()I -HSPLjava/lang/Float;->hashCode(F)I -HSPLjava/lang/Float;->intValue()I -HSPLjava/lang/Float;->isFinite(F)Z -HSPLjava/lang/Float;->isInfinite(F)Z -HSPLjava/lang/Float;->isNaN(F)Z -HSPLjava/lang/Float;->parseFloat(Ljava/lang/String;)F -HSPLjava/lang/Float;->toString()Ljava/lang/String; -HSPLjava/lang/Float;->toString(F)Ljava/lang/String; -HSPLjava/lang/Float;->valueOf(F)Ljava/lang/Float; -HSPLjava/lang/Float;->valueOf(Ljava/lang/String;)Ljava/lang/Float; -HSPLjava/lang/IllegalAccessException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/IllegalArgumentException;-><init>()V -HSPLjava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/IllegalStateException;-><init>()V -HSPLjava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/IncompatibleClassChangeError;-><init>(Ljava/lang/String;)V -HSPLjava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/InheritableThreadLocal;->childValue(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/InheritableThreadLocal;->createMap(Ljava/lang/Thread;Ljava/lang/Object;)V -HSPLjava/lang/InheritableThreadLocal;->getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap; -HSPLjava/lang/InstantiationException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Integer;-><init>(I)V -HSPLjava/lang/Integer;->bitCount(I)I -HSPLjava/lang/Integer;->byteValue()B -HSPLjava/lang/Integer;->compare(II)I -HSPLjava/lang/Integer;->compareTo(Ljava/lang/Integer;)I -HSPLjava/lang/Integer;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Integer;->decode(Ljava/lang/String;)Ljava/lang/Integer; -HSPLjava/lang/Integer;->divideUnsigned(II)I -HSPLjava/lang/Integer;->doubleValue()D -HSPLjava/lang/Integer;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Integer;->floatValue()F -HSPLjava/lang/Integer;->formatUnsignedInt(II[BII)V -HSPLjava/lang/Integer;->getChars(II[B)I -HSPLjava/lang/Integer;->getChars(II[C)I -HSPLjava/lang/Integer;->getInteger(Ljava/lang/String;)Ljava/lang/Integer; -HSPLjava/lang/Integer;->getInteger(Ljava/lang/String;I)Ljava/lang/Integer; -HSPLjava/lang/Integer;->getInteger(Ljava/lang/String;Ljava/lang/Integer;)Ljava/lang/Integer; -HSPLjava/lang/Integer;->hashCode()I -HSPLjava/lang/Integer;->hashCode(I)I -HSPLjava/lang/Integer;->highestOneBit(I)I -HSPLjava/lang/Integer;->intValue()I -HSPLjava/lang/Integer;->longValue()J -HSPLjava/lang/Integer;->lowestOneBit(I)I -HSPLjava/lang/Integer;->max(II)I -HSPLjava/lang/Integer;->min(II)I -HSPLjava/lang/Integer;->numberOfLeadingZeros(I)I -HSPLjava/lang/Integer;->numberOfTrailingZeros(I)I -HSPLjava/lang/Integer;->parseInt(Ljava/lang/String;)I -HSPLjava/lang/Integer;->parseInt(Ljava/lang/String;I)I -HSPLjava/lang/Integer;->reverse(I)I -HSPLjava/lang/Integer;->reverseBytes(I)I -HSPLjava/lang/Integer;->rotateLeft(II)I -HSPLjava/lang/Integer;->rotateRight(II)I -HSPLjava/lang/Integer;->shortValue()S -HSPLjava/lang/Integer;->signum(I)I -HSPLjava/lang/Integer;->stringSize(I)I -HSPLjava/lang/Integer;->sum(II)I -HSPLjava/lang/Integer;->toBinaryString(I)Ljava/lang/String; -HSPLjava/lang/Integer;->toHexString(I)Ljava/lang/String; -HSPLjava/lang/Integer;->toString()Ljava/lang/String; -HSPLjava/lang/Integer;->toString(I)Ljava/lang/String; -HSPLjava/lang/Integer;->toString(II)Ljava/lang/String; -HSPLjava/lang/Integer;->toUnsignedLong(I)J -HSPLjava/lang/Integer;->toUnsignedString0(II)Ljava/lang/String; -HSPLjava/lang/Integer;->valueOf(I)Ljava/lang/Integer; -HSPLjava/lang/Integer;->valueOf(Ljava/lang/String;)Ljava/lang/Integer; -HSPLjava/lang/Integer;->valueOf(Ljava/lang/String;I)Ljava/lang/Integer; -HSPLjava/lang/InterruptedException;-><init>()V -HSPLjava/lang/Iterable;->forEach(Ljava/util/function/Consumer;)V+]Ljava/lang/Iterable;megamorphic_types]Ljava/util/Iterator;megamorphic_types]Ljava/util/function/Consumer;missing_types -HSPLjava/lang/LinkageError;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Long;-><init>(J)V -HSPLjava/lang/Long;->bitCount(J)I -HSPLjava/lang/Long;->compare(JJ)I -HSPLjava/lang/Long;->compareTo(Ljava/lang/Long;)I -HSPLjava/lang/Long;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/Long;->compareUnsigned(JJ)I -HSPLjava/lang/Long;->decode(Ljava/lang/String;)Ljava/lang/Long; -HSPLjava/lang/Long;->divideUnsigned(JJ)J -HSPLjava/lang/Long;->doubleValue()D -HSPLjava/lang/Long;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Long;->formatUnsignedLong0(JI[BII)V -HSPLjava/lang/Long;->getChars(JI[B)I -HSPLjava/lang/Long;->getChars(JI[C)I -HSPLjava/lang/Long;->getLong(Ljava/lang/String;J)Ljava/lang/Long; -HSPLjava/lang/Long;->getLong(Ljava/lang/String;Ljava/lang/Long;)Ljava/lang/Long; -HSPLjava/lang/Long;->hashCode()I -HSPLjava/lang/Long;->hashCode(J)I -HSPLjava/lang/Long;->highestOneBit(J)J -HSPLjava/lang/Long;->intValue()I -HSPLjava/lang/Long;->longValue()J -HSPLjava/lang/Long;->lowestOneBit(J)J -HSPLjava/lang/Long;->numberOfLeadingZeros(J)I -HSPLjava/lang/Long;->numberOfTrailingZeros(J)I -HSPLjava/lang/Long;->parseLong(Ljava/lang/CharSequence;III)J -HSPLjava/lang/Long;->parseLong(Ljava/lang/String;)J -HSPLjava/lang/Long;->parseLong(Ljava/lang/String;I)J -HSPLjava/lang/Long;->reverse(J)J -HSPLjava/lang/Long;->reverseBytes(J)J -HSPLjava/lang/Long;->rotateLeft(JI)J -HSPLjava/lang/Long;->rotateRight(JI)J -HSPLjava/lang/Long;->signum(J)I -HSPLjava/lang/Long;->stringSize(J)I -HSPLjava/lang/Long;->sum(JJ)J -HSPLjava/lang/Long;->toHexString(J)Ljava/lang/String; -HSPLjava/lang/Long;->toString()Ljava/lang/String; -HSPLjava/lang/Long;->toString(J)Ljava/lang/String; -HSPLjava/lang/Long;->toString(JI)Ljava/lang/String; -HSPLjava/lang/Long;->toUnsignedString0(JI)Ljava/lang/String; -HSPLjava/lang/Long;->valueOf(J)Ljava/lang/Long; -HSPLjava/lang/Long;->valueOf(Ljava/lang/String;)Ljava/lang/Long; -HSPLjava/lang/Long;->valueOf(Ljava/lang/String;I)Ljava/lang/Long; -HSPLjava/lang/Math;->abs(D)D -HSPLjava/lang/Math;->abs(F)F -HSPLjava/lang/Math;->abs(I)I -HSPLjava/lang/Math;->abs(J)J -HSPLjava/lang/Math;->addExact(JJ)J -HSPLjava/lang/Math;->copySign(DD)D -HSPLjava/lang/Math;->copySign(FF)F -HSPLjava/lang/Math;->floorDiv(II)I -HSPLjava/lang/Math;->floorDiv(JI)J -HSPLjava/lang/Math;->floorDiv(JJ)J -HSPLjava/lang/Math;->floorMod(II)I -HSPLjava/lang/Math;->floorMod(JI)I -HSPLjava/lang/Math;->floorMod(JJ)J -HSPLjava/lang/Math;->fma(DDD)D -HSPLjava/lang/Math;->fma(FFF)F -HSPLjava/lang/Math;->getExponent(D)I -HSPLjava/lang/Math;->getExponent(F)I -HSPLjava/lang/Math;->max(DD)D -HSPLjava/lang/Math;->max(FF)F -HSPLjava/lang/Math;->max(II)I -HSPLjava/lang/Math;->max(JJ)J -HSPLjava/lang/Math;->min(DD)D -HSPLjava/lang/Math;->min(FF)F -HSPLjava/lang/Math;->min(II)I -HSPLjava/lang/Math;->min(JJ)J -HSPLjava/lang/Math;->multiplyExact(II)I -HSPLjava/lang/Math;->multiplyExact(JI)J -HSPLjava/lang/Math;->multiplyExact(JJ)J -HSPLjava/lang/Math;->multiplyHigh(JJ)J -HSPLjava/lang/Math;->nextAfter(DD)D -HSPLjava/lang/Math;->powerOfTwoD(I)D -HSPLjava/lang/Math;->powerOfTwoF(I)F -HSPLjava/lang/Math;->random()D -HSPLjava/lang/Math;->randomLongInternal()J -HSPLjava/lang/Math;->round(D)J -HSPLjava/lang/Math;->round(F)I -HSPLjava/lang/Math;->scalb(FI)F -HSPLjava/lang/Math;->setRandomSeedInternal(J)V -HSPLjava/lang/Math;->signum(F)F -HSPLjava/lang/Math;->subtractExact(JJ)J -HSPLjava/lang/Math;->toDegrees(D)D -HSPLjava/lang/Math;->toIntExact(J)I -HSPLjava/lang/Math;->toRadians(D)D -HSPLjava/lang/Math;->ulp(F)F -HSPLjava/lang/NoClassDefFoundError;-><init>(Ljava/lang/String;)V -HSPLjava/lang/NoSuchFieldException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/NoSuchMethodError;-><init>(Ljava/lang/String;)V -HSPLjava/lang/NoSuchMethodException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/NullPointerException;-><init>()V -HSPLjava/lang/NullPointerException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Number;-><init>()V -HSPLjava/lang/NumberFormatException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/NumberFormatException;->forInputString(Ljava/lang/String;I)Ljava/lang/NumberFormatException; -HSPLjava/lang/Object;-><init>()V -HSPLjava/lang/Object;->clone()Ljava/lang/Object; -HSPLjava/lang/Object;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/Object;->finalize()V -HSPLjava/lang/Object;->getClass()Ljava/lang/Class; -HSPLjava/lang/Object;->hashCode()I -HSPLjava/lang/Object;->identityHashCode(Ljava/lang/Object;)I -HSPLjava/lang/Object;->toString()Ljava/lang/String; -HSPLjava/lang/Object;->wait()V -HSPLjava/lang/Object;->wait(J)V -HSPLjava/lang/Package;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;Ljava/lang/ClassLoader;)V -HSPLjava/lang/Package;->getName()Ljava/lang/String; -HSPLjava/lang/Process;-><init>()V -HSPLjava/lang/ProcessBuilder$NullInputStream;->available()I -HSPLjava/lang/ProcessBuilder$NullInputStream;->read()I -HSPLjava/lang/ProcessBuilder;-><init>([Ljava/lang/String;)V -HSPLjava/lang/ProcessBuilder;->directory(Ljava/io/File;)Ljava/lang/ProcessBuilder; -HSPLjava/lang/ProcessBuilder;->environment([Ljava/lang/String;)Ljava/lang/ProcessBuilder; -HSPLjava/lang/ProcessBuilder;->start()Ljava/lang/Process; -HSPLjava/lang/ProcessEnvironment;->toEnvironmentBlock(Ljava/util/Map;[I)[B -HSPLjava/lang/ProcessImpl;->start([Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;[Ljava/lang/ProcessBuilder$Redirect;Z)Ljava/lang/Process; -HSPLjava/lang/ProcessImpl;->toCString(Ljava/lang/String;)[B -HSPLjava/lang/ReflectiveOperationException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/ReflectiveOperationException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/ReflectiveOperationException;-><init>(Ljava/lang/Throwable;)V -HSPLjava/lang/Runtime;->addShutdownHook(Ljava/lang/Thread;)V -HSPLjava/lang/Runtime;->availableProcessors()I -HSPLjava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; -HSPLjava/lang/Runtime;->exec(Ljava/lang/String;[Ljava/lang/String;Ljava/io/File;)Ljava/lang/Process; -HSPLjava/lang/Runtime;->exec([Ljava/lang/String;)Ljava/lang/Process; -HSPLjava/lang/Runtime;->exec([Ljava/lang/String;[Ljava/lang/String;Ljava/io/File;)Ljava/lang/Process; -HSPLjava/lang/Runtime;->gc()V -HSPLjava/lang/Runtime;->getLibPaths()[Ljava/lang/String; -HSPLjava/lang/Runtime;->getRuntime()Ljava/lang/Runtime; -HSPLjava/lang/Runtime;->load0(Ljava/lang/Class;Ljava/lang/String;)V -HSPLjava/lang/Runtime;->loadLibrary0(Ljava/lang/Class;Ljava/lang/String;)V -HSPLjava/lang/Runtime;->loadLibrary0(Ljava/lang/ClassLoader;Ljava/lang/Class;Ljava/lang/String;)V -HSPLjava/lang/Runtime;->nativeLoad(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/String; -HSPLjava/lang/Runtime;->runFinalization()V -HSPLjava/lang/RuntimeException;-><init>()V -HSPLjava/lang/RuntimeException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V -HSPLjava/lang/SecurityException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Short;-><init>(S)V -HSPLjava/lang/Short;->hashCode()I -HSPLjava/lang/Short;->hashCode(S)I -HSPLjava/lang/Short;->parseShort(Ljava/lang/String;I)S -HSPLjava/lang/Short;->reverseBytes(S)S -HSPLjava/lang/Short;->shortValue()S -HSPLjava/lang/Short;->toUnsignedInt(S)I -HSPLjava/lang/Short;->valueOf(Ljava/lang/String;)Ljava/lang/Short; -HSPLjava/lang/Short;->valueOf(Ljava/lang/String;I)Ljava/lang/Short; -HSPLjava/lang/Short;->valueOf(S)Ljava/lang/Short; -HSPLjava/lang/StackTraceElement;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V -HSPLjava/lang/StackTraceElement;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/StackTraceElement;->getClassName()Ljava/lang/String; -HSPLjava/lang/StackTraceElement;->getFileName()Ljava/lang/String; -HSPLjava/lang/StackTraceElement;->getLineNumber()I -HSPLjava/lang/StackTraceElement;->getMethodName()Ljava/lang/String; -HSPLjava/lang/StackTraceElement;->hashCode()I -HSPLjava/lang/StackTraceElement;->isNativeMethod()Z -HSPLjava/lang/StackTraceElement;->toString()Ljava/lang/String; -HSPLjava/lang/String$CaseInsensitiveComparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/lang/String$CaseInsensitiveComparator;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLjava/lang/String;->checkBoundsBeginEnd(III)V -HSPLjava/lang/String;->checkBoundsOffCount(III)V -HSPLjava/lang/String;->checkIndex(II)V -HSPLjava/lang/String;->checkOffset(II)V -HSPLjava/lang/String;->codePointAt(I)I -HSPLjava/lang/String;->codePointCount(II)I -HSPLjava/lang/String;->coder()B -HSPLjava/lang/String;->compareTo(Ljava/lang/Object;)I -HSPLjava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I -HSPLjava/lang/String;->contains(Ljava/lang/CharSequence;)Z -HSPLjava/lang/String;->contentEquals(Ljava/lang/CharSequence;)Z -HSPLjava/lang/String;->copyValueOf([C)Ljava/lang/String; -HSPLjava/lang/String;->endsWith(Ljava/lang/String;)Z -HSPLjava/lang/String;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z -HSPLjava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/lang/String;->getBytes()[B -HSPLjava/lang/String;->getBytes(Ljava/lang/String;)[B -HSPLjava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B -HSPLjava/lang/String;->getBytes([BIB)V -HSPLjava/lang/String;->getChars(II[CI)V -HSPLjava/lang/String;->getChars([CI)V -HSPLjava/lang/String;->hashCode()I -HSPLjava/lang/String;->indexOf(I)I -HSPLjava/lang/String;->indexOf(II)I -HSPLjava/lang/String;->indexOf(Ljava/lang/String;)I -HSPLjava/lang/String;->indexOf(Ljava/lang/String;I)I -HSPLjava/lang/String;->indexOf(Ljava/lang/String;Ljava/lang/String;I)I -HSPLjava/lang/String;->indexOf([BBILjava/lang/String;I)I -HSPLjava/lang/String;->isEmpty()Z -HSPLjava/lang/String;->join(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String; -HSPLjava/lang/String;->join(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLjava/lang/String;->lastIndexOf(I)I -HSPLjava/lang/String;->lastIndexOf(II)I -HSPLjava/lang/String;->lastIndexOf(Ljava/lang/String;)I -HSPLjava/lang/String;->lastIndexOf(Ljava/lang/String;I)I -HSPLjava/lang/String;->lastIndexOf(Ljava/lang/String;Ljava/lang/String;I)I -HSPLjava/lang/String;->lastIndexOf([BBILjava/lang/String;I)I -HSPLjava/lang/String;->lastIndexOf([CII[CIII)I -HSPLjava/lang/String;->length()I -HSPLjava/lang/String;->matches(Ljava/lang/String;)Z -HSPLjava/lang/String;->regionMatches(ILjava/lang/String;II)Z -HSPLjava/lang/String;->regionMatches(ZILjava/lang/String;II)Z -HSPLjava/lang/String;->replace(CC)Ljava/lang/String; -HSPLjava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; -HSPLjava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/String;->replaceFirst(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; -HSPLjava/lang/String;->split(Ljava/lang/String;I)[Ljava/lang/String; -HSPLjava/lang/String;->startsWith(Ljava/lang/String;)Z -HSPLjava/lang/String;->startsWith(Ljava/lang/String;I)Z -HSPLjava/lang/String;->subSequence(II)Ljava/lang/CharSequence; -HSPLjava/lang/String;->substring(I)Ljava/lang/String; -HSPLjava/lang/String;->substring(II)Ljava/lang/String; -HSPLjava/lang/String;->toLowerCase()Ljava/lang/String; -HSPLjava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/lang/String;->toString()Ljava/lang/String; -HSPLjava/lang/String;->toUpperCase()Ljava/lang/String; -HSPLjava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/lang/String;->trim()Ljava/lang/String; -HSPLjava/lang/String;->valueOf(C)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(D)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(F)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(I)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(J)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/lang/String;->valueOf(Z)Ljava/lang/String; -HSPLjava/lang/String;->valueOf([C)Ljava/lang/String; -HSPLjava/lang/StringBuffer;-><init>()V -HSPLjava/lang/StringBuffer;-><init>(I)V -HSPLjava/lang/StringBuffer;-><init>(Ljava/lang/String;)V -HSPLjava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(I)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(J)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/AbstractStringBuilder;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/AbstractStringBuilder;)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/CharSequence;)Ljava/lang/Appendable; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/CharSequence;II)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/Object;)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append(Z)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->append([CII)Ljava/lang/StringBuffer; -HSPLjava/lang/StringBuffer;->charAt(I)C -HSPLjava/lang/StringBuffer;->codePointAt(I)I -HSPLjava/lang/StringBuffer;->getBytes([BIB)V -HSPLjava/lang/StringBuffer;->getChars(II[CI)V -HSPLjava/lang/StringBuffer;->length()I -HSPLjava/lang/StringBuffer;->setLength(I)V -HSPLjava/lang/StringBuffer;->toString()Ljava/lang/String; -HSPLjava/lang/StringBuilder;-><init>()V -HSPLjava/lang/StringBuilder;-><init>(I)V -HSPLjava/lang/StringBuilder;-><init>(Ljava/lang/CharSequence;)V -HSPLjava/lang/StringBuilder;-><init>(Ljava/lang/String;)V -HSPLjava/lang/StringBuilder;->append(C)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuilder;->append(C)Ljava/lang/Appendable; -HSPLjava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/Appendable; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/Appendable; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->appendCodePoint(I)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->charAt(I)C -HSPLjava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->deleteCharAt(I)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->ensureCapacity(I)V -HSPLjava/lang/StringBuilder;->getChars(II[CI)V -HSPLjava/lang/StringBuilder;->indexOf(Ljava/lang/String;)I -HSPLjava/lang/StringBuilder;->indexOf(Ljava/lang/String;I)I -HSPLjava/lang/StringBuilder;->insert(IC)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->insert(II)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->insert(ILjava/lang/String;)Ljava/lang/AbstractStringBuilder; -HSPLjava/lang/StringBuilder;->insert(ILjava/lang/String;)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->lastIndexOf(Ljava/lang/String;I)I -HSPLjava/lang/StringBuilder;->length()I -HSPLjava/lang/StringBuilder;->replace(IILjava/lang/String;)Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->reverse()Ljava/lang/StringBuilder; -HSPLjava/lang/StringBuilder;->setCharAt(IC)V -HSPLjava/lang/StringBuilder;->setLength(I)V -HSPLjava/lang/StringBuilder;->subSequence(II)Ljava/lang/CharSequence; -HSPLjava/lang/StringBuilder;->substring(I)Ljava/lang/String; -HSPLjava/lang/StringBuilder;->substring(II)Ljava/lang/String; -HSPLjava/lang/StringBuilder;->toString()Ljava/lang/String; -HSPLjava/lang/StringFactory;->newEmptyString()Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([B)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BI)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BII)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BIILjava/lang/String;)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BIILjava/nio/charset/Charset;)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BLjava/lang/String;)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromBytes([BLjava/nio/charset/Charset;)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromChars([C)Ljava/lang/String; -HSPLjava/lang/StringFactory;->newStringFromChars([CII)Ljava/lang/String; -HSPLjava/lang/StringLatin1;->canEncode(I)Z -HSPLjava/lang/StringLatin1;->indexOf([BILjava/lang/String;II)I -HSPLjava/lang/StringLatin1;->inflate([BI[BII)V -HSPLjava/lang/StringLatin1;->lastIndexOf([BILjava/lang/String;II)I -HSPLjava/lang/StringLatin1;->newString([BII)Ljava/lang/String; -HSPLjava/lang/StringUTF16;->checkBoundsBeginEnd(II[B)V -HSPLjava/lang/StringUTF16;->checkBoundsOffCount(II[B)V -HSPLjava/lang/StringUTF16;->checkIndex(I[B)V -HSPLjava/lang/StringUTF16;->getChar([BI)C -HSPLjava/lang/StringUTF16;->getChars(II[B)I -HSPLjava/lang/StringUTF16;->getChars([BII[CI)V -HSPLjava/lang/StringUTF16;->inflate([BI[BII)V -HSPLjava/lang/StringUTF16;->length([B)I -HSPLjava/lang/StringUTF16;->newBytesFor(I)[B -HSPLjava/lang/StringUTF16;->newString([BII)Ljava/lang/String; -HSPLjava/lang/StringUTF16;->putChar([BII)V -HSPLjava/lang/StringUTF16;->putCharSB([BII)V -HSPLjava/lang/System$PropertiesWithNonOverrideableDefaults;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/System$PropertiesWithNonOverrideableDefaults;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/System;->arraycopy([BI[BII)V -HSPLjava/lang/System;->arraycopy([CI[CII)V -HSPLjava/lang/System;->arraycopy([DI[DII)V -HSPLjava/lang/System;->arraycopy([FI[FII)V -HSPLjava/lang/System;->arraycopy([II[III)V -HSPLjava/lang/System;->arraycopy([JI[JII)V -HSPLjava/lang/System;->arraycopy([ZI[ZII)V -HSPLjava/lang/System;->checkKey(Ljava/lang/String;)V -HSPLjava/lang/System;->clearProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/System;->gc()V -HSPLjava/lang/System;->getProperties()Ljava/util/Properties; -HSPLjava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/System;->getProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/System;->getSecurityManager()Ljava/lang/SecurityManager; -HSPLjava/lang/System;->getenv(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/System;->identityHashCode(Ljava/lang/Object;)I -HSPLjava/lang/System;->lineSeparator()Ljava/lang/String; -HSPLjava/lang/System;->load(Ljava/lang/String;)V -HSPLjava/lang/System;->loadLibrary(Ljava/lang/String;)V -HSPLjava/lang/System;->logE(Ljava/lang/String;)V -HSPLjava/lang/System;->logW(Ljava/lang/String;)V -HSPLjava/lang/System;->runFinalization()V -HSPLjava/lang/System;->setErr(Ljava/io/PrintStream;)V -HSPLjava/lang/System;->setOut(Ljava/io/PrintStream;)V -HSPLjava/lang/System;->setProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/lang/Thread$State;->values()[Ljava/lang/Thread$State; -HSPLjava/lang/Thread;-><init>()V -HSPLjava/lang/Thread;-><init>(Ljava/lang/Runnable;)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;J)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JLjava/security/AccessControlContext;Z)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/String;)V -HSPLjava/lang/Thread;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/String;IZ)V -HSPLjava/lang/Thread;->activeCount()I -HSPLjava/lang/Thread;->blockedOn(Lsun/nio/ch/Interruptible;)V -HSPLjava/lang/Thread;->checkAccess()V -HSPLjava/lang/Thread;->getContextClassLoader()Ljava/lang/ClassLoader; -HSPLjava/lang/Thread;->getDefaultUncaughtExceptionHandler()Ljava/lang/Thread$UncaughtExceptionHandler; -HSPLjava/lang/Thread;->getId()J -HSPLjava/lang/Thread;->getName()Ljava/lang/String; -HSPLjava/lang/Thread;->getPriority()I -HSPLjava/lang/Thread;->getStackTrace()[Ljava/lang/StackTraceElement; -HSPLjava/lang/Thread;->getState()Ljava/lang/Thread$State; -HSPLjava/lang/Thread;->getThreadGroup()Ljava/lang/ThreadGroup; -HSPLjava/lang/Thread;->getUncaughtExceptionHandler()Ljava/lang/Thread$UncaughtExceptionHandler; -HSPLjava/lang/Thread;->init2(Ljava/lang/Thread;Z)V -HSPLjava/lang/Thread;->interrupt()V -HSPLjava/lang/Thread;->isAlive()Z -HSPLjava/lang/Thread;->isDaemon()Z -HSPLjava/lang/Thread;->join()V -HSPLjava/lang/Thread;->join(J)V -HSPLjava/lang/Thread;->nextThreadID()J -HSPLjava/lang/Thread;->nextThreadNum()I -HSPLjava/lang/Thread;->onSpinWait()V -HSPLjava/lang/Thread;->run()V -HSPLjava/lang/Thread;->setContextClassLoader(Ljava/lang/ClassLoader;)V -HSPLjava/lang/Thread;->setDaemon(Z)V -HSPLjava/lang/Thread;->setDefaultUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V -HSPLjava/lang/Thread;->setName(Ljava/lang/String;)V -HSPLjava/lang/Thread;->setPriority(I)V -HSPLjava/lang/Thread;->setSystemDaemon(Z)V -HSPLjava/lang/Thread;->setUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V -HSPLjava/lang/Thread;->setUncaughtExceptionPreHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V -HSPLjava/lang/Thread;->sleep(J)V -HSPLjava/lang/Thread;->sleep(JI)V -HSPLjava/lang/Thread;->start()V -HSPLjava/lang/Thread;->toString()Ljava/lang/String; -HSPLjava/lang/ThreadGroup;-><init>(Ljava/lang/ThreadGroup;Ljava/lang/String;)V -HSPLjava/lang/ThreadGroup;-><init>(Ljava/lang/Void;Ljava/lang/ThreadGroup;Ljava/lang/String;)V -HSPLjava/lang/ThreadGroup;->activeCount()I -HSPLjava/lang/ThreadGroup;->activeGroupCount()I -HSPLjava/lang/ThreadGroup;->add(Ljava/lang/Thread;)V -HSPLjava/lang/ThreadGroup;->add(Ljava/lang/ThreadGroup;)V -HSPLjava/lang/ThreadGroup;->addUnstarted()V -HSPLjava/lang/ThreadGroup;->checkAccess()V -HSPLjava/lang/ThreadGroup;->checkParentAccess(Ljava/lang/ThreadGroup;)Ljava/lang/Void; -HSPLjava/lang/ThreadGroup;->enumerate([Ljava/lang/Thread;)I -HSPLjava/lang/ThreadGroup;->enumerate([Ljava/lang/Thread;IZ)I -HSPLjava/lang/ThreadGroup;->enumerate([Ljava/lang/ThreadGroup;)I -HSPLjava/lang/ThreadGroup;->enumerate([Ljava/lang/ThreadGroup;IZ)I -HSPLjava/lang/ThreadGroup;->getMaxPriority()I -HSPLjava/lang/ThreadGroup;->getName()Ljava/lang/String; -HSPLjava/lang/ThreadGroup;->remove(Ljava/lang/Thread;)V -HSPLjava/lang/ThreadGroup;->threadTerminated(Ljava/lang/Thread;)V -HSPLjava/lang/ThreadLocal$SuppliedThreadLocal;-><init>(Ljava/util/function/Supplier;)V -HSPLjava/lang/ThreadLocal$SuppliedThreadLocal;->initialValue()Ljava/lang/Object; -HSPLjava/lang/ThreadLocal$ThreadLocalMap$Entry;-><init>(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->-$$Nest$mgetEntry(Ljava/lang/ThreadLocal$ThreadLocalMap;Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry; -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->-$$Nest$mremove(Ljava/lang/ThreadLocal$ThreadLocalMap;Ljava/lang/ThreadLocal;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->-$$Nest$mset(Ljava/lang/ThreadLocal$ThreadLocalMap;Ljava/lang/ThreadLocal;Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;-><init>(Ljava/lang/ThreadLocal$ThreadLocalMap;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;-><init>(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->cleanSomeSlots(II)Z -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->expungeStaleEntries()V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->expungeStaleEntry(I)I -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry; -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->getEntryAfterMiss(Ljava/lang/ThreadLocal;ILjava/lang/ThreadLocal$ThreadLocalMap$Entry;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry; -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->nextIndex(II)I -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->prevIndex(II)I -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->rehash()V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->remove(Ljava/lang/ThreadLocal;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->replaceStaleEntry(Ljava/lang/ThreadLocal;Ljava/lang/Object;I)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->resize()V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->set(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal$ThreadLocalMap;->setThreshold(I)V -HSPLjava/lang/ThreadLocal;->-$$Nest$fgetthreadLocalHashCode(Ljava/lang/ThreadLocal;)I -HSPLjava/lang/ThreadLocal;-><init>()V -HSPLjava/lang/ThreadLocal;->createInheritedMap(Ljava/lang/ThreadLocal$ThreadLocalMap;)Ljava/lang/ThreadLocal$ThreadLocalMap; -HSPLjava/lang/ThreadLocal;->createMap(Ljava/lang/Thread;Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal;->get()Ljava/lang/Object; -HSPLjava/lang/ThreadLocal;->getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap; -HSPLjava/lang/ThreadLocal;->initialValue()Ljava/lang/Object; -HSPLjava/lang/ThreadLocal;->nextHashCode()I -HSPLjava/lang/ThreadLocal;->remove()V -HSPLjava/lang/ThreadLocal;->set(Ljava/lang/Object;)V -HSPLjava/lang/ThreadLocal;->setInitialValue()Ljava/lang/Object; -HSPLjava/lang/ThreadLocal;->withInitial(Ljava/util/function/Supplier;)Ljava/lang/ThreadLocal; -HSPLjava/lang/Throwable$PrintStreamOrWriter;-><init>()V -HSPLjava/lang/Throwable$PrintStreamOrWriter;-><init>(Ljava/lang/Throwable$PrintStreamOrWriter-IA;)V -HSPLjava/lang/Throwable$WrappedPrintStream;-><init>(Ljava/io/PrintStream;)V -HSPLjava/lang/Throwable$WrappedPrintStream;->lock()Ljava/lang/Object; -HSPLjava/lang/Throwable$WrappedPrintStream;->println(Ljava/lang/Object;)V -HSPLjava/lang/Throwable$WrappedPrintWriter;-><init>(Ljava/io/PrintWriter;)V -HSPLjava/lang/Throwable$WrappedPrintWriter;->lock()Ljava/lang/Object; -HSPLjava/lang/Throwable$WrappedPrintWriter;->println(Ljava/lang/Object;)V -HSPLjava/lang/Throwable;-><init>()V -HSPLjava/lang/Throwable;-><init>(Ljava/lang/String;)V -HSPLjava/lang/Throwable;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/lang/Throwable;-><init>(Ljava/lang/String;Ljava/lang/Throwable;ZZ)V -HSPLjava/lang/Throwable;-><init>(Ljava/lang/Throwable;)V -HSPLjava/lang/Throwable;->addSuppressed(Ljava/lang/Throwable;)V -HSPLjava/lang/Throwable;->fillInStackTrace()Ljava/lang/Throwable; -HSPLjava/lang/Throwable;->getCause()Ljava/lang/Throwable; -HSPLjava/lang/Throwable;->getLocalizedMessage()Ljava/lang/String; -HSPLjava/lang/Throwable;->getMessage()Ljava/lang/String; -HSPLjava/lang/Throwable;->getOurStackTrace()[Ljava/lang/StackTraceElement; -HSPLjava/lang/Throwable;->getStackTrace()[Ljava/lang/StackTraceElement; -HSPLjava/lang/Throwable;->getSuppressed()[Ljava/lang/Throwable; -HSPLjava/lang/Throwable;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable; -HSPLjava/lang/Throwable;->printEnclosedStackTrace(Ljava/lang/Throwable$PrintStreamOrWriter;[Ljava/lang/StackTraceElement;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V -HSPLjava/lang/Throwable;->printStackTrace()V -HSPLjava/lang/Throwable;->printStackTrace(Ljava/io/PrintStream;)V -HSPLjava/lang/Throwable;->printStackTrace(Ljava/io/PrintWriter;)V -HSPLjava/lang/Throwable;->printStackTrace(Ljava/lang/Throwable$PrintStreamOrWriter;)V -HSPLjava/lang/Throwable;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/lang/Throwable;->setStackTrace([Ljava/lang/StackTraceElement;)V -HSPLjava/lang/Throwable;->toString()Ljava/lang/String; -HSPLjava/lang/Throwable;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/lang/UNIXProcess$2;-><init>(Ljava/lang/UNIXProcess;[I)V -HSPLjava/lang/UNIXProcess$2;->run()Ljava/lang/Object; -HSPLjava/lang/UNIXProcess$2;->run()Ljava/lang/Void; -HSPLjava/lang/UNIXProcess$3;-><init>(Ljava/lang/UNIXProcess;)V -HSPLjava/lang/UNIXProcess$3;->run()V -HSPLjava/lang/UNIXProcess$ProcessPipeInputStream;-><init>(I)V -HSPLjava/lang/UNIXProcess$ProcessPipeInputStream;->drainInputStream(Ljava/io/InputStream;)[B -HSPLjava/lang/UNIXProcess$ProcessPipeInputStream;->processExited()V -HSPLjava/lang/UNIXProcess$ProcessPipeOutputStream;-><init>(I)V -HSPLjava/lang/UNIXProcess$ProcessPipeOutputStream;->processExited()V -HSPLjava/lang/UNIXProcess$ProcessReaperThreadFactory;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; -HSPLjava/lang/UNIXProcess;-><init>([B[BI[BI[B[IZ)V -HSPLjava/lang/UNIXProcess;->destroy()V -HSPLjava/lang/UNIXProcess;->exitValue()I -HSPLjava/lang/UNIXProcess;->getErrorStream()Ljava/io/InputStream; -HSPLjava/lang/UNIXProcess;->getInputStream()Ljava/io/InputStream; -HSPLjava/lang/UNIXProcess;->initStreams([I)V -HSPLjava/lang/UNIXProcess;->newFileDescriptor(I)Ljava/io/FileDescriptor; -HSPLjava/lang/UNIXProcess;->processExited(I)V -HSPLjava/lang/UNIXProcess;->waitFor()I -HSPLjava/lang/UnsatisfiedLinkError;-><init>(Ljava/lang/String;)V -HSPLjava/lang/UnsupportedOperationException;-><init>()V -HSPLjava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V -HSPLjava/lang/VMClassLoader;->createBootClassPathUrlHandlers()[Llibcore/io/ClassPathURLStreamHandler; -HSPLjava/lang/VMClassLoader;->getResource(Ljava/lang/String;)Ljava/net/URL; -HSPLjava/lang/VMClassLoader;->getResources(Ljava/lang/String;)Ljava/util/List; -HSPLjava/lang/invoke/FieldVarHandle;-><init>(Ljava/lang/reflect/Field;Ljava/lang/Class;)V -HSPLjava/lang/invoke/FieldVarHandle;->create(Ljava/lang/reflect/Field;)Ljava/lang/invoke/FieldVarHandle; -HSPLjava/lang/invoke/MethodHandle;-><init>(JILjava/lang/invoke/MethodType;)V -HSPLjava/lang/invoke/MethodHandleImpl;-><init>(JILjava/lang/invoke/MethodType;)V -HSPLjava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;)V -HSPLjava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V -HSPLjava/lang/invoke/MethodHandles$Lookup;->checkAccess(Ljava/lang/Class;Ljava/lang/Class;ILjava/lang/String;)V -HSPLjava/lang/invoke/MethodHandles$Lookup;->checkUnprivilegedlookupClass(Ljava/lang/Class;I)V -HSPLjava/lang/invoke/MethodHandles$Lookup;->commonFieldChecks(Ljava/lang/reflect/Field;Ljava/lang/Class;Ljava/lang/Class;ZZ)V -HSPLjava/lang/invoke/MethodHandles$Lookup;->createMethodHandle(Ljava/lang/reflect/Method;ILjava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; -HSPLjava/lang/invoke/MethodHandles$Lookup;->findFieldOfType(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Field; -HSPLjava/lang/invoke/MethodHandles$Lookup;->findVarHandle(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle; -HSPLjava/lang/invoke/MethodHandles$Lookup;->unreflect(Ljava/lang/reflect/Method;)Ljava/lang/invoke/MethodHandle; -HSPLjava/lang/invoke/MethodHandles;->lookup()Ljava/lang/invoke/MethodHandles$Lookup; -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry;-><init>(Ljava/lang/Object;)V -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry;->hashCode()I -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet;->add(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet;->expungeStaleElements()V -HSPLjava/lang/invoke/MethodType$ConcurrentWeakInternSet;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/invoke/MethodType;-><init>(Ljava/lang/Class;[Ljava/lang/Class;Z)V -HSPLjava/lang/invoke/MethodType;-><init>([Ljava/lang/Class;Ljava/lang/Class;)V -HSPLjava/lang/invoke/MethodType;->checkPtype(Ljava/lang/Class;)V -HSPLjava/lang/invoke/MethodType;->checkPtypes([Ljava/lang/Class;)I -HSPLjava/lang/invoke/MethodType;->checkRtype(Ljava/lang/Class;)V -HSPLjava/lang/invoke/MethodType;->checkSlotCount(I)V -HSPLjava/lang/invoke/MethodType;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/invoke/MethodType;->equals(Ljava/lang/invoke/MethodType;)Z -HSPLjava/lang/invoke/MethodType;->form()Ljava/lang/invoke/MethodTypeForm; -HSPLjava/lang/invoke/MethodType;->genericMethodType(I)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodType;->genericMethodType(IZ)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodType;->hashCode()I -HSPLjava/lang/invoke/MethodType;->insertParameterTypes(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodType;->makeImpl(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodType;->methodType(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodType;->parameterSlotCount()I -HSPLjava/lang/invoke/MethodType;->ptypes()[Ljava/lang/Class; -HSPLjava/lang/invoke/MethodType;->returnType()Ljava/lang/Class; -HSPLjava/lang/invoke/MethodTypeForm;-><init>(Ljava/lang/invoke/MethodType;)V -HSPLjava/lang/invoke/MethodTypeForm;->canonicalize(Ljava/lang/Class;I)Ljava/lang/Class; -HSPLjava/lang/invoke/MethodTypeForm;->canonicalize(Ljava/lang/invoke/MethodType;II)Ljava/lang/invoke/MethodType; -HSPLjava/lang/invoke/MethodTypeForm;->canonicalizeAll([Ljava/lang/Class;I)[Ljava/lang/Class; -HSPLjava/lang/invoke/MethodTypeForm;->findForm(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodTypeForm; -HSPLjava/lang/invoke/MethodTypeForm;->pack(IIII)J -HSPLjava/lang/invoke/MethodTypeForm;->parameterSlotCount()I -HSPLjava/lang/invoke/MethodTypeForm;->unpack(JI)C -HSPLjava/lang/invoke/VarHandle;-><init>(Ljava/lang/Class;ZLjava/lang/Class;)V -HSPLjava/lang/invoke/VarHandle;->acquireFence()V -HSPLjava/lang/invoke/VarHandle;->alignedAccessModesBitMask(Ljava/lang/Class;Z)I -HSPLjava/lang/invoke/VarHandle;->fullFence()V -HSPLjava/lang/invoke/VarHandle;->loadLoadFence()V -HSPLjava/lang/invoke/VarHandle;->releaseFence()V -HSPLjava/lang/invoke/VarHandle;->storeStoreFence()V -HSPLjava/lang/ref/Cleaner$1;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/ref/Cleaner$1;->apply(Ljava/lang/ref/Cleaner;)Ljdk/internal/ref/CleanerImpl; -HSPLjava/lang/ref/Cleaner;->register(Ljava/lang/Object;Ljava/lang/Runnable;)Ljava/lang/ref/Cleaner$Cleanable; -HSPLjava/lang/ref/FinalizerReference$Sentinel;-><init>()V -HSPLjava/lang/ref/FinalizerReference$Sentinel;-><init>(Ljava/lang/ref/FinalizerReference$Sentinel-IA;)V -HSPLjava/lang/ref/FinalizerReference$Sentinel;->awaitFinalization(J)V -HSPLjava/lang/ref/FinalizerReference$Sentinel;->finalize()V -HSPLjava/lang/ref/FinalizerReference;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/ref/FinalizerReference;->add(Ljava/lang/Object;)V -HSPLjava/lang/ref/FinalizerReference;->clear()V -HSPLjava/lang/ref/FinalizerReference;->enqueueSentinelReference(Ljava/lang/ref/FinalizerReference$Sentinel;)Z -HSPLjava/lang/ref/FinalizerReference;->finalizeAllEnqueued(J)V -HSPLjava/lang/ref/FinalizerReference;->get()Ljava/lang/Object; -HSPLjava/lang/ref/FinalizerReference;->remove(Ljava/lang/ref/FinalizerReference;)V -HSPLjava/lang/ref/PhantomReference;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/ref/Reference$SinkHolder;->-$$Nest$sfgetfinalize_count()I -HSPLjava/lang/ref/Reference;-><init>(Ljava/lang/Object;)V -HSPLjava/lang/ref/Reference;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/ref/Reference;->clear()V -HSPLjava/lang/ref/Reference;->get()Ljava/lang/Object; -HSPLjava/lang/ref/Reference;->reachabilityFence(Ljava/lang/Object;)V -HSPLjava/lang/ref/Reference;->refersTo(Ljava/lang/Object;)Z -HSPLjava/lang/ref/ReferenceQueue;-><init>()V -HSPLjava/lang/ref/ReferenceQueue;->add(Ljava/lang/ref/Reference;)V -HSPLjava/lang/ref/ReferenceQueue;->enqueueLocked(Ljava/lang/ref/Reference;)Z -HSPLjava/lang/ref/ReferenceQueue;->enqueuePending(Ljava/lang/ref/Reference;Ljava/util/concurrent/atomic/AtomicInteger;)V -HSPLjava/lang/ref/ReferenceQueue;->poll()Ljava/lang/ref/Reference; -HSPLjava/lang/ref/ReferenceQueue;->reallyPollLocked()Ljava/lang/ref/Reference; -HSPLjava/lang/ref/ReferenceQueue;->remove()Ljava/lang/ref/Reference; -HSPLjava/lang/ref/ReferenceQueue;->remove(J)Ljava/lang/ref/Reference; -HSPLjava/lang/ref/SoftReference;-><init>(Ljava/lang/Object;)V -HSPLjava/lang/ref/SoftReference;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/ref/SoftReference;->get()Ljava/lang/Object; -HSPLjava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V -HSPLjava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/reflect/AccessibleObject;-><init>()V -HSPLjava/lang/reflect/AccessibleObject;->getAnnotations()[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/AccessibleObject;->isAccessible()Z -HSPLjava/lang/reflect/AccessibleObject;->setAccessible(Z)V -HSPLjava/lang/reflect/AccessibleObject;->setAccessible0(Ljava/lang/reflect/AccessibleObject;Z)V -HSPLjava/lang/reflect/Array;->get(Ljava/lang/Object;I)Ljava/lang/Object; -HSPLjava/lang/reflect/Array;->getLength(Ljava/lang/Object;)I -HSPLjava/lang/reflect/Array;->newArray(Ljava/lang/Class;I)Ljava/lang/Object; -HSPLjava/lang/reflect/Array;->newInstance(Ljava/lang/Class;I)Ljava/lang/Object; -HSPLjava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object; -HSPLjava/lang/reflect/Array;->set(Ljava/lang/Object;ILjava/lang/Object;)V -HSPLjava/lang/reflect/Array;->setInt(Ljava/lang/Object;II)V -HSPLjava/lang/reflect/Constructor;-><init>(Ljava/lang/Class;Ljava/lang/Class;)V -HSPLjava/lang/reflect/Constructor;->getDeclaredAnnotations()[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Constructor;->getDeclaringClass()Ljava/lang/Class; -HSPLjava/lang/reflect/Constructor;->getGenericParameterTypes()[Ljava/lang/reflect/Type; -HSPLjava/lang/reflect/Constructor;->getModifiers()I -HSPLjava/lang/reflect/Constructor;->getName()Ljava/lang/String; -HSPLjava/lang/reflect/Constructor;->getParameterAnnotations()[[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Constructor;->getParameterTypes()[Ljava/lang/Class; -HSPLjava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/reflect/Constructor;->serializationCopy(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Constructor; -HSPLjava/lang/reflect/Executable$GenericInfo;-><init>(Llibcore/reflect/ListOfTypes;Llibcore/reflect/ListOfTypes;Ljava/lang/reflect/Type;[Ljava/lang/reflect/TypeVariable;)V -HSPLjava/lang/reflect/Executable;-><init>()V -HSPLjava/lang/reflect/Executable;->equalNameAndParametersInternal(Ljava/lang/reflect/Method;)Z -HSPLjava/lang/reflect/Executable;->equalParamTypes([Ljava/lang/Class;[Ljava/lang/Class;)Z -HSPLjava/lang/reflect/Executable;->fixMethodFlags(I)I -HSPLjava/lang/reflect/Executable;->getAccessFlags()I -HSPLjava/lang/reflect/Executable;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Executable;->getArtMethod()J -HSPLjava/lang/reflect/Executable;->getDeclaredAnnotations()[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Executable;->getDeclaringClassInternal()Ljava/lang/Class; -HSPLjava/lang/reflect/Executable;->getGenericParameterTypes()[Ljava/lang/reflect/Type; -HSPLjava/lang/reflect/Executable;->getMethodOrConstructorGenericInfoInternal()Ljava/lang/reflect/Executable$GenericInfo; -HSPLjava/lang/reflect/Executable;->getModifiersInternal()I -HSPLjava/lang/reflect/Executable;->getParameterAnnotationsInternal()[[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Executable;->getSignatureAttribute()Ljava/lang/String; -HSPLjava/lang/reflect/Executable;->isAnnotationPresent(Ljava/lang/Class;)Z -HSPLjava/lang/reflect/Executable;->isBridgeMethodInternal()Z -HSPLjava/lang/reflect/Executable;->isDefaultMethodInternal()Z -HSPLjava/lang/reflect/Executable;->isSynthetic()Z -HSPLjava/lang/reflect/Executable;->isVarArgs()Z -HSPLjava/lang/reflect/Executable;->printModifiersIfNonzero(Ljava/lang/StringBuilder;IZ)V -HSPLjava/lang/reflect/Executable;->separateWithCommas([Ljava/lang/Class;Ljava/lang/StringBuilder;)V -HSPLjava/lang/reflect/Executable;->sharedToString(IZ[Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/String; -HSPLjava/lang/reflect/Field;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class; -HSPLjava/lang/reflect/Field;->getGenericType()Ljava/lang/reflect/Type; -HSPLjava/lang/reflect/Field;->getModifiers()I -HSPLjava/lang/reflect/Field;->getName()Ljava/lang/String; -HSPLjava/lang/reflect/Field;->getOffset()I -HSPLjava/lang/reflect/Field;->getSignatureAttribute()Ljava/lang/String; -HSPLjava/lang/reflect/Field;->getType()Ljava/lang/Class; -HSPLjava/lang/reflect/Field;->hashCode()I -HSPLjava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z -HSPLjava/lang/reflect/Field;->isEnumConstant()Z -HSPLjava/lang/reflect/Field;->isSynthetic()Z -HSPLjava/lang/reflect/InvocationTargetException;-><init>(Ljava/lang/Throwable;)V -HSPLjava/lang/reflect/InvocationTargetException;->getCause()Ljava/lang/Throwable; -HSPLjava/lang/reflect/Method$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/lang/reflect/Method$1;->compare(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)I -HSPLjava/lang/reflect/Method;->equalNameAndParameters(Ljava/lang/reflect/Method;)Z -HSPLjava/lang/reflect/Method;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/reflect/Method;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Method;->getDeclaredAnnotations()[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Method;->getDeclaringClass()Ljava/lang/Class; -HSPLjava/lang/reflect/Method;->getGenericParameterTypes()[Ljava/lang/reflect/Type; -HSPLjava/lang/reflect/Method;->getGenericReturnType()Ljava/lang/reflect/Type; -HSPLjava/lang/reflect/Method;->getModifiers()I -HSPLjava/lang/reflect/Method;->getName()Ljava/lang/String; -HSPLjava/lang/reflect/Method;->getParameterAnnotations()[[Ljava/lang/annotation/Annotation; -HSPLjava/lang/reflect/Method;->getParameterTypes()[Ljava/lang/Class; -HSPLjava/lang/reflect/Method;->getReturnType()Ljava/lang/Class; -HSPLjava/lang/reflect/Method;->hashCode()I -HSPLjava/lang/reflect/Method;->isBridge()Z -HSPLjava/lang/reflect/Method;->isDefault()Z -HSPLjava/lang/reflect/Method;->isSynthetic()Z -HSPLjava/lang/reflect/Method;->isVarArgs()Z -HSPLjava/lang/reflect/Method;->specificToStringHeader(Ljava/lang/StringBuilder;)V -HSPLjava/lang/reflect/Method;->toString()Ljava/lang/String; -HSPLjava/lang/reflect/Modifier;->isAbstract(I)Z -HSPLjava/lang/reflect/Modifier;->isFinal(I)Z -HSPLjava/lang/reflect/Modifier;->isInterface(I)Z -HSPLjava/lang/reflect/Modifier;->isPrivate(I)Z -HSPLjava/lang/reflect/Modifier;->isProtected(I)Z -HSPLjava/lang/reflect/Modifier;->isPublic(I)Z -HSPLjava/lang/reflect/Modifier;->isStatic(I)Z -HSPLjava/lang/reflect/Modifier;->isSynthetic(I)Z -HSPLjava/lang/reflect/Modifier;->isTransient(I)Z -HSPLjava/lang/reflect/Modifier;->isVolatile(I)Z -HSPLjava/lang/reflect/Modifier;->methodModifiers()I -HSPLjava/lang/reflect/Modifier;->toString(I)Ljava/lang/String; -HSPLjava/lang/reflect/Proxy$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/lang/reflect/Proxy$1;->compare(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)I -HSPLjava/lang/reflect/Proxy$Key1;-><init>(Ljava/lang/Class;)V -HSPLjava/lang/reflect/Proxy$Key1;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/reflect/Proxy$Key1;->hashCode()I -HSPLjava/lang/reflect/Proxy$KeyFactory;->apply(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Object; -HSPLjava/lang/reflect/Proxy$KeyFactory;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/reflect/Proxy$ProxyClassFactory;->apply(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Class; -HSPLjava/lang/reflect/Proxy$ProxyClassFactory;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/reflect/Proxy;->-$$Nest$sfgetORDER_BY_SIGNATURE_AND_SUBTYPE()Ljava/util/Comparator; -HSPLjava/lang/reflect/Proxy;->-$$Nest$smdeduplicateAndGetExceptions(Ljava/util/List;)Ljava/util/List; -HSPLjava/lang/reflect/Proxy;->-$$Nest$smgenerateProxy(Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/ClassLoader;[Ljava/lang/reflect/Method;[[Ljava/lang/Class;)Ljava/lang/Class; -HSPLjava/lang/reflect/Proxy;->-$$Nest$smgetMethods([Ljava/lang/Class;)Ljava/util/List; -HSPLjava/lang/reflect/Proxy;->-$$Nest$smvalidateReturnTypes(Ljava/util/List;)V -HSPLjava/lang/reflect/Proxy;->deduplicateAndGetExceptions(Ljava/util/List;)Ljava/util/List; -HSPLjava/lang/reflect/Proxy;->getMethods([Ljava/lang/Class;)Ljava/util/List; -HSPLjava/lang/reflect/Proxy;->getMethodsRecursive([Ljava/lang/Class;Ljava/util/List;)V -HSPLjava/lang/reflect/Proxy;->getProxyClass0(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Class; -HSPLjava/lang/reflect/Proxy;->intersectExceptions([Ljava/lang/Class;[Ljava/lang/Class;)[Ljava/lang/Class; -HSPLjava/lang/reflect/Proxy;->invoke(Ljava/lang/reflect/Proxy;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/lang/reflect/Proxy;->isProxyClass(Ljava/lang/Class;)Z -HSPLjava/lang/reflect/Proxy;->newProxyInstance(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object; -HSPLjava/lang/reflect/Proxy;->validateReturnTypes(Ljava/util/List;)V -HSPLjava/lang/reflect/WeakCache$CacheKey;-><init>(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLjava/lang/reflect/WeakCache$CacheKey;->equals(Ljava/lang/Object;)Z -HSPLjava/lang/reflect/WeakCache$CacheKey;->hashCode()I -HSPLjava/lang/reflect/WeakCache$CacheKey;->valueOf(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)Ljava/lang/Object; -HSPLjava/lang/reflect/WeakCache$CacheValue;-><init>(Ljava/lang/Object;)V -HSPLjava/lang/reflect/WeakCache$CacheValue;->hashCode()I -HSPLjava/lang/reflect/WeakCache$Factory;-><init>(Ljava/lang/reflect/WeakCache;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentMap;)V -HSPLjava/lang/reflect/WeakCache$Factory;->get()Ljava/lang/Object; -HSPLjava/lang/reflect/WeakCache;->-$$Nest$fgetreverseMap(Ljava/lang/reflect/WeakCache;)Ljava/util/concurrent/ConcurrentMap; -HSPLjava/lang/reflect/WeakCache;->-$$Nest$fgetvalueFactory(Ljava/lang/reflect/WeakCache;)Ljava/util/function/BiFunction; -HSPLjava/lang/reflect/WeakCache;->expungeStaleEntries()V -HSPLjava/lang/reflect/WeakCache;->get(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/math/BigDecimal;-><init>(I)V -HSPLjava/math/BigDecimal;-><init>(J)V -HSPLjava/math/BigDecimal;-><init>(Ljava/lang/String;)V -HSPLjava/math/BigDecimal;-><init>(Ljava/math/BigInteger;)V -HSPLjava/math/BigDecimal;-><init>(Ljava/math/BigInteger;JII)V -HSPLjava/math/BigDecimal;-><init>([CII)V -HSPLjava/math/BigDecimal;-><init>([CIILjava/math/MathContext;)V -HSPLjava/math/BigDecimal;->add(JIJI)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->add(JJ)J -HSPLjava/math/BigDecimal;->add(JJI)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->add(Ljava/math/BigDecimal;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->checkScale(J)I -HSPLjava/math/BigDecimal;->checkScale(JJ)I -HSPLjava/math/BigDecimal;->commonNeedIncrement(IIIZ)Z -HSPLjava/math/BigDecimal;->compactValFor(Ljava/math/BigInteger;)J -HSPLjava/math/BigDecimal;->compareTo(Ljava/math/BigDecimal;)I -HSPLjava/math/BigDecimal;->createAndStripZerosToMatchScale(JIJ)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->divide(JIJIII)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->divide(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->divide(Ljava/math/BigDecimal;ILjava/math/RoundingMode;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->divide(Ljava/math/BigDecimal;Ljava/math/RoundingMode;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->divideAndRound(JJIII)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->getValueString(ILjava/lang/String;I)Ljava/lang/String; -HSPLjava/math/BigDecimal;->inflated()Ljava/math/BigInteger; -HSPLjava/math/BigDecimal;->layoutChars(Z)Ljava/lang/String; -HSPLjava/math/BigDecimal;->longCompareMagnitude(JJ)I -HSPLjava/math/BigDecimal;->longMultiplyPowerTen(JI)J -HSPLjava/math/BigDecimal;->longValueExact()J -HSPLjava/math/BigDecimal;->movePointLeft(I)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->movePointRight(I)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->multiply(JJ)J -HSPLjava/math/BigDecimal;->multiply(JJI)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->multiply(Ljava/math/BigDecimal;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->needIncrement(JIIJJ)Z -HSPLjava/math/BigDecimal;->scale()I -HSPLjava/math/BigDecimal;->scaleByPowerOfTen(I)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->setScale(ILjava/math/RoundingMode;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->signum()I -HSPLjava/math/BigDecimal;->stripTrailingZeros()Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->subtract(Ljava/math/BigDecimal;)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->toBigInteger()Ljava/math/BigInteger; -HSPLjava/math/BigDecimal;->toBigIntegerExact()Ljava/math/BigInteger; -HSPLjava/math/BigDecimal;->toPlainString()Ljava/lang/String; -HSPLjava/math/BigDecimal;->toString()Ljava/lang/String; -HSPLjava/math/BigDecimal;->valueOf(J)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->valueOf(JI)Ljava/math/BigDecimal; -HSPLjava/math/BigDecimal;->zeroValueOf(I)Ljava/math/BigDecimal; -HSPLjava/math/BigInteger$UnsafeHolder;-><clinit>()V -HSPLjava/math/BigInteger;-><init>(I[B)V -HSPLjava/math/BigInteger;-><init>(I[BII)V -HSPLjava/math/BigInteger;-><init>(I[I)V -HSPLjava/math/BigInteger;-><init>(J)V -HSPLjava/math/BigInteger;-><init>(Ljava/lang/String;)V -HSPLjava/math/BigInteger;-><init>(Ljava/lang/String;I)V -HSPLjava/math/BigInteger;-><init>([B)V -HSPLjava/math/BigInteger;-><init>([BII)V -HSPLjava/math/BigInteger;-><init>([II)V -HSPLjava/math/BigInteger;->abs()Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->add(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->add([I[I)[I -HSPLjava/math/BigInteger;->bigEndInts2NewBN([IZ)J -HSPLjava/math/BigInteger;->bitLength()I -HSPLjava/math/BigInteger;->bitLengthForInt(I)I -HSPLjava/math/BigInteger;->bn2BigEndInts(J)[I -HSPLjava/math/BigInteger;->compareMagnitude(Ljava/math/BigInteger;)I -HSPLjava/math/BigInteger;->compareTo(Ljava/math/BigInteger;)I -HSPLjava/math/BigInteger;->destructiveMulAdd([III)V -HSPLjava/math/BigInteger;->divideAndRemainder(Ljava/math/BigInteger;)[Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->divideAndRemainderKnuth(Ljava/math/BigInteger;)[Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->equals(Ljava/lang/Object;)Z -HSPLjava/math/BigInteger;->firstNonzeroIntNum()I -HSPLjava/math/BigInteger;->getInt(I)I -HSPLjava/math/BigInteger;->getLowestSetBit()I -HSPLjava/math/BigInteger;->hashCode()I -HSPLjava/math/BigInteger;->implMultiplyToLen([II[II[I)[I -HSPLjava/math/BigInteger;->intValue()I -HSPLjava/math/BigInteger;->longValue()J -HSPLjava/math/BigInteger;->mod(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->modPow(Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->multiply(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->multiply(Ljava/math/BigInteger;Z)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->multiplyByInt([III)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->multiplyToLen([II[II[I)[I -HSPLjava/math/BigInteger;->padWithZeros(Ljava/lang/StringBuilder;I)V -HSPLjava/math/BigInteger;->pow(I)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/math/BigInteger;->remainder(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->remainderKnuth(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->reverse([I)[I -HSPLjava/math/BigInteger;->shiftLeft(I)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->shiftLeft([II)[I -HSPLjava/math/BigInteger;->shiftRight(I)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->shiftRightImpl(I)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->signInt()I -HSPLjava/math/BigInteger;->signum()I -HSPLjava/math/BigInteger;->smallToString(ILjava/lang/StringBuilder;I)V -HSPLjava/math/BigInteger;->stripLeadingZeroBytes([BII)[I -HSPLjava/math/BigInteger;->stripLeadingZeroInts([I)[I -HSPLjava/math/BigInteger;->subtract(Ljava/math/BigInteger;)Ljava/math/BigInteger; -HSPLjava/math/BigInteger;->subtract([I[I)[I -HSPLjava/math/BigInteger;->testBit(I)Z -HSPLjava/math/BigInteger;->toByteArray()[B -HSPLjava/math/BigInteger;->toString()Ljava/lang/String; -HSPLjava/math/BigInteger;->toString(I)Ljava/lang/String; -HSPLjava/math/BigInteger;->toString(Ljava/math/BigInteger;Ljava/lang/StringBuilder;II)V -HSPLjava/math/BigInteger;->trustedStripLeadingZeroInts([I)[I -HSPLjava/math/BigInteger;->valueOf(J)Ljava/math/BigInteger; -HSPLjava/math/MathContext;->equals(Ljava/lang/Object;)Z -HSPLjava/math/MathContext;->getPrecision()I -HSPLjava/math/MathContext;->getRoundingMode()Ljava/math/RoundingMode; -HSPLjava/math/MutableBigInteger;-><clinit>()V -HSPLjava/math/MutableBigInteger;-><init>()V -HSPLjava/math/MutableBigInteger;-><init>(I)V -HSPLjava/math/MutableBigInteger;-><init>(Ljava/math/MutableBigInteger;)V -HSPLjava/math/MutableBigInteger;-><init>([I)V -HSPLjava/math/MutableBigInteger;->clear()V -HSPLjava/math/MutableBigInteger;->compare(Ljava/math/MutableBigInteger;)I -HSPLjava/math/MutableBigInteger;->copyAndShift([III[III)V -HSPLjava/math/MutableBigInteger;->divWord(JI)J -HSPLjava/math/MutableBigInteger;->divide(Ljava/math/MutableBigInteger;Ljava/math/MutableBigInteger;)Ljava/math/MutableBigInteger; -HSPLjava/math/MutableBigInteger;->divide(Ljava/math/MutableBigInteger;Ljava/math/MutableBigInteger;Z)Ljava/math/MutableBigInteger; -HSPLjava/math/MutableBigInteger;->divideKnuth(Ljava/math/MutableBigInteger;Ljava/math/MutableBigInteger;)Ljava/math/MutableBigInteger; -HSPLjava/math/MutableBigInteger;->divideKnuth(Ljava/math/MutableBigInteger;Ljava/math/MutableBigInteger;Z)Ljava/math/MutableBigInteger; -HSPLjava/math/MutableBigInteger;->divideMagnitude(Ljava/math/MutableBigInteger;Ljava/math/MutableBigInteger;Z)Ljava/math/MutableBigInteger; -HSPLjava/math/MutableBigInteger;->divideOneWord(ILjava/math/MutableBigInteger;)I -HSPLjava/math/MutableBigInteger;->getLowestSetBit()I -HSPLjava/math/MutableBigInteger;->getMagnitudeArray()[I -HSPLjava/math/MutableBigInteger;->mulsub([I[IIII)I -HSPLjava/math/MutableBigInteger;->normalize()V -HSPLjava/math/MutableBigInteger;->primitiveLeftShift(I)V -HSPLjava/math/MutableBigInteger;->rightShift(I)V -HSPLjava/math/MutableBigInteger;->toBigInteger(I)Ljava/math/BigInteger; -HSPLjava/math/MutableBigInteger;->unsignedLongCompare(JJ)Z -HSPLjava/math/RoundingMode;->valueOf(I)Ljava/math/RoundingMode; -HSPLjava/math/RoundingMode;->values()[Ljava/math/RoundingMode; -HSPLjava/net/AbstractPlainDatagramSocketImpl;-><init>()V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->bind(ILjava/net/InetAddress;)V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->close()V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->create()V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->finalize()V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->isClosed()Z -HSPLjava/net/AbstractPlainDatagramSocketImpl;->receive(Ljava/net/DatagramPacket;)V -HSPLjava/net/AbstractPlainDatagramSocketImpl;->setOption(ILjava/lang/Object;)V -HSPLjava/net/AbstractPlainSocketImpl;-><init>()V -HSPLjava/net/AbstractPlainSocketImpl;->accept(Ljava/net/SocketImpl;)V -HSPLjava/net/AbstractPlainSocketImpl;->acquireFD()Ljava/io/FileDescriptor; -HSPLjava/net/AbstractPlainSocketImpl;->bind(Ljava/net/InetAddress;I)V -HSPLjava/net/AbstractPlainSocketImpl;->close()V -HSPLjava/net/AbstractPlainSocketImpl;->connect(Ljava/net/SocketAddress;I)V -HSPLjava/net/AbstractPlainSocketImpl;->connectToAddress(Ljava/net/InetAddress;II)V -HSPLjava/net/AbstractPlainSocketImpl;->create(Z)V -HSPLjava/net/AbstractPlainSocketImpl;->doConnect(Ljava/net/InetAddress;II)V -HSPLjava/net/AbstractPlainSocketImpl;->finalize()V -HSPLjava/net/AbstractPlainSocketImpl;->getInputStream()Ljava/io/InputStream; -HSPLjava/net/AbstractPlainSocketImpl;->getOption(I)Ljava/lang/Object; -HSPLjava/net/AbstractPlainSocketImpl;->getOutputStream()Ljava/io/OutputStream; -HSPLjava/net/AbstractPlainSocketImpl;->getTimeout()I -HSPLjava/net/AbstractPlainSocketImpl;->isClosedOrPending()Z -HSPLjava/net/AbstractPlainSocketImpl;->isConnectionReset()Z -HSPLjava/net/AbstractPlainSocketImpl;->isConnectionResetPending()Z -HSPLjava/net/AbstractPlainSocketImpl;->listen(I)V -HSPLjava/net/AbstractPlainSocketImpl;->releaseFD()V -HSPLjava/net/AbstractPlainSocketImpl;->setOption(ILjava/lang/Object;)V -HSPLjava/net/AbstractPlainSocketImpl;->socketClose()V -HSPLjava/net/AbstractPlainSocketImpl;->socketPreClose()V -HSPLjava/net/AddressCache$AddressCacheEntry;-><init>(Ljava/lang/Object;)V -HSPLjava/net/AddressCache$AddressCacheKey;-><init>(Ljava/lang/String;I)V -HSPLjava/net/AddressCache$AddressCacheKey;->equals(Ljava/lang/Object;)Z -HSPLjava/net/AddressCache$AddressCacheKey;->hashCode()I -HSPLjava/net/AddressCache;->clear()V -HSPLjava/net/AddressCache;->get(Ljava/lang/String;I)Ljava/lang/Object; -HSPLjava/net/AddressCache;->put(Ljava/lang/String;I[Ljava/net/InetAddress;)V -HSPLjava/net/AddressCache;->putUnknownHost(Ljava/lang/String;ILjava/lang/String;)V -HSPLjava/net/ConnectException;-><init>(Ljava/lang/String;)V -HSPLjava/net/ConnectException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/net/CookieHandler;-><init>()V -HSPLjava/net/CookieHandler;->getDefault()Ljava/net/CookieHandler; -HSPLjava/net/CookieManager$CookiePathComparator;-><init>()V -HSPLjava/net/CookieManager;-><init>()V -HSPLjava/net/CookieManager;-><init>(Ljava/net/CookieStore;Ljava/net/CookiePolicy;)V -HSPLjava/net/CookieManager;->get(Ljava/net/URI;Ljava/util/Map;)Ljava/util/Map; -HSPLjava/net/CookieManager;->getCookieStore()Ljava/net/CookieStore; -HSPLjava/net/CookieManager;->normalizePath(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/CookieManager;->pathMatches(Ljava/net/URI;Ljava/net/HttpCookie;)Z -HSPLjava/net/CookieManager;->put(Ljava/net/URI;Ljava/util/Map;)V -HSPLjava/net/CookieManager;->shouldAcceptInternal(Ljava/net/URI;Ljava/net/HttpCookie;)Z -HSPLjava/net/CookieManager;->sortByPath(Ljava/util/List;)Ljava/util/List; -HSPLjava/net/CookiePolicy$3;->shouldAccept(Ljava/net/URI;Ljava/net/HttpCookie;)Z -HSPLjava/net/DatagramPacket;-><init>([BI)V -HSPLjava/net/DatagramPacket;-><init>([BII)V -HSPLjava/net/DatagramPacket;-><init>([BIILjava/net/InetAddress;I)V -HSPLjava/net/DatagramPacket;-><init>([BILjava/net/InetAddress;I)V -HSPLjava/net/DatagramPacket;->getAddress()Ljava/net/InetAddress; -HSPLjava/net/DatagramPacket;->getData()[B -HSPLjava/net/DatagramPacket;->getLength()I -HSPLjava/net/DatagramPacket;->getOffset()I -HSPLjava/net/DatagramPacket;->getPort()I -HSPLjava/net/DatagramPacket;->setAddress(Ljava/net/InetAddress;)V -HSPLjava/net/DatagramPacket;->setData([BII)V -HSPLjava/net/DatagramPacket;->setPort(I)V -HSPLjava/net/DatagramPacket;->setReceivedLength(I)V -HSPLjava/net/DatagramSocket$1;-><init>(Ljava/net/DatagramSocket;)V -HSPLjava/net/DatagramSocket$1;->run()Ljava/lang/Object; -HSPLjava/net/DatagramSocket$1;->run()Ljava/lang/Void; -HSPLjava/net/DatagramSocket;-><init>()V -HSPLjava/net/DatagramSocket;-><init>(Ljava/net/SocketAddress;)V -HSPLjava/net/DatagramSocket;->bind(Ljava/net/SocketAddress;)V -HSPLjava/net/DatagramSocket;->checkAddress(Ljava/net/InetAddress;Ljava/lang/String;)V -HSPLjava/net/DatagramSocket;->checkOldImpl()V -HSPLjava/net/DatagramSocket;->close()V -HSPLjava/net/DatagramSocket;->createImpl()V -HSPLjava/net/DatagramSocket;->getImpl()Ljava/net/DatagramSocketImpl; -HSPLjava/net/DatagramSocket;->isBound()Z -HSPLjava/net/DatagramSocket;->isClosed()Z -HSPLjava/net/DatagramSocket;->receive(Ljava/net/DatagramPacket;)V -HSPLjava/net/DatagramSocket;->send(Ljava/net/DatagramPacket;)V -HSPLjava/net/DatagramSocket;->setReuseAddress(Z)V -HSPLjava/net/DatagramSocket;->setSoTimeout(I)V -HSPLjava/net/DatagramSocketImpl;-><init>()V -HSPLjava/net/DatagramSocketImpl;->setDatagramSocket(Ljava/net/DatagramSocket;)V -HSPLjava/net/DefaultDatagramSocketImplFactory;->createDatagramSocketImpl(Z)Ljava/net/DatagramSocketImpl; -HSPLjava/net/HttpCookie$11;->assign(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie$4;->assign(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie$6;->assign(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie$8;->assign(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie$9;->assign(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie;->assignAttribute(Ljava/net/HttpCookie;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/HttpCookie;->domainMatches(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/HttpCookie;->equals(Ljava/lang/Object;)Z -HSPLjava/net/HttpCookie;->equalsIgnoreCase(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/HttpCookie;->getDomain()Ljava/lang/String; -HSPLjava/net/HttpCookie;->getMaxAge()J -HSPLjava/net/HttpCookie;->getName()Ljava/lang/String; -HSPLjava/net/HttpCookie;->getPath()Ljava/lang/String; -HSPLjava/net/HttpCookie;->getPortlist()Ljava/lang/String; -HSPLjava/net/HttpCookie;->getValue()Ljava/lang/String; -HSPLjava/net/HttpCookie;->getVersion()I -HSPLjava/net/HttpCookie;->guessCookieVersion(Ljava/lang/String;)I -HSPLjava/net/HttpCookie;->hasExpired()Z -HSPLjava/net/HttpCookie;->isFullyQualifiedDomainName(Ljava/lang/String;I)Z -HSPLjava/net/HttpCookie;->isToken(Ljava/lang/String;)Z -HSPLjava/net/HttpCookie;->parse(Ljava/lang/String;)Ljava/util/List; -HSPLjava/net/HttpCookie;->parse(Ljava/lang/String;Z)Ljava/util/List; -HSPLjava/net/HttpCookie;->parseInternal(Ljava/lang/String;Z)Ljava/net/HttpCookie; -HSPLjava/net/HttpCookie;->setDomain(Ljava/lang/String;)V -HSPLjava/net/HttpCookie;->setHttpOnly(Z)V -HSPLjava/net/HttpCookie;->setMaxAge(J)V -HSPLjava/net/HttpCookie;->setPath(Ljava/lang/String;)V -HSPLjava/net/HttpCookie;->setSecure(Z)V -HSPLjava/net/HttpCookie;->setVersion(I)V -HSPLjava/net/HttpCookie;->startsWithIgnoreCase(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/HttpCookie;->stripOffSurroundingQuote(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/HttpCookie;->toNetscapeHeaderString()Ljava/lang/String; -HSPLjava/net/HttpCookie;->toString()Ljava/lang/String; -HSPLjava/net/HttpURLConnection;-><init>(Ljava/net/URL;)V -HSPLjava/net/HttpURLConnection;->getFollowRedirects()Z -HSPLjava/net/HttpURLConnection;->getRequestMethod()Ljava/lang/String; -HSPLjava/net/HttpURLConnection;->setChunkedStreamingMode(I)V -HSPLjava/net/HttpURLConnection;->setInstanceFollowRedirects(Z)V -HSPLjava/net/HttpURLConnection;->setRequestMethod(Ljava/lang/String;)V -HSPLjava/net/IDN;->toASCII(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/IDN;->toASCII(Ljava/lang/String;I)Ljava/lang/String; -HSPLjava/net/InMemoryCookieStore;-><init>()V -HSPLjava/net/InMemoryCookieStore;-><init>(I)V -HSPLjava/net/InMemoryCookieStore;->add(Ljava/net/URI;Ljava/net/HttpCookie;)V -HSPLjava/net/InMemoryCookieStore;->addIndex(Ljava/util/Map;Ljava/lang/Object;Ljava/net/HttpCookie;)V -HSPLjava/net/InMemoryCookieStore;->get(Ljava/net/URI;)Ljava/util/List; -HSPLjava/net/InMemoryCookieStore;->getEffectiveURI(Ljava/net/URI;)Ljava/net/URI; -HSPLjava/net/InMemoryCookieStore;->getInternal1(Ljava/util/List;Ljava/util/Map;Ljava/lang/String;)V -HSPLjava/net/InMemoryCookieStore;->getInternal2(Ljava/util/List;Ljava/util/Map;Ljava/lang/Comparable;)V -HSPLjava/net/InMemoryCookieStore;->netscapeDomainMatches(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/Inet4Address;-><init>()V -HSPLjava/net/Inet4Address;-><init>(Ljava/lang/String;[B)V -HSPLjava/net/Inet4Address;->equals(Ljava/lang/Object;)Z -HSPLjava/net/Inet4Address;->getAddress()[B -HSPLjava/net/Inet4Address;->getHostAddress()Ljava/lang/String; -HSPLjava/net/Inet4Address;->hashCode()I -HSPLjava/net/Inet4Address;->isAnyLocalAddress()Z -HSPLjava/net/Inet4Address;->isLinkLocalAddress()Z -HSPLjava/net/Inet4Address;->isLoopbackAddress()Z -HSPLjava/net/Inet4Address;->isMulticastAddress()Z -HSPLjava/net/Inet4Address;->numericToTextFormat([B)Ljava/lang/String; -HSPLjava/net/Inet6Address$Inet6AddressHolder;-><init>(Ljava/net/Inet6Address;)V -HSPLjava/net/Inet6Address$Inet6AddressHolder;-><init>(Ljava/net/Inet6Address;Ljava/net/Inet6Address$Inet6AddressHolder-IA;)V -HSPLjava/net/Inet6Address$Inet6AddressHolder;->equals(Ljava/lang/Object;)Z -HSPLjava/net/Inet6Address$Inet6AddressHolder;->hashCode()I -HSPLjava/net/Inet6Address$Inet6AddressHolder;->init([BI)V -HSPLjava/net/Inet6Address$Inet6AddressHolder;->isAnyLocalAddress()Z -HSPLjava/net/Inet6Address$Inet6AddressHolder;->isLinkLocalAddress()Z -HSPLjava/net/Inet6Address$Inet6AddressHolder;->isLoopbackAddress()Z -HSPLjava/net/Inet6Address$Inet6AddressHolder;->isMulticastAddress()Z -HSPLjava/net/Inet6Address$Inet6AddressHolder;->setAddr([B)V -HSPLjava/net/Inet6Address;-><init>(Ljava/lang/String;[BI)V -HSPLjava/net/Inet6Address;->equals(Ljava/lang/Object;)Z -HSPLjava/net/Inet6Address;->getAddress()[B -HSPLjava/net/Inet6Address;->getByAddress(Ljava/lang/String;[BI)Ljava/net/Inet6Address; -HSPLjava/net/Inet6Address;->getHostAddress()Ljava/lang/String; -HSPLjava/net/Inet6Address;->getScopeId()I -HSPLjava/net/Inet6Address;->hashCode()I -HSPLjava/net/Inet6Address;->isAnyLocalAddress()Z -HSPLjava/net/Inet6Address;->isLinkLocalAddress()Z -HSPLjava/net/Inet6Address;->isLoopbackAddress()Z -HSPLjava/net/Inet6Address;->isMulticastAddress()Z -HSPLjava/net/Inet6AddressImpl;->clearAddressCache()V -HSPLjava/net/Inet6AddressImpl;->lookupAllHostAddr(Ljava/lang/String;I)[Ljava/net/InetAddress; -HSPLjava/net/Inet6AddressImpl;->lookupHostByName(Ljava/lang/String;I)[Ljava/net/InetAddress; -HSPLjava/net/InetAddress$InetAddressHolder;-><init>()V -HSPLjava/net/InetAddress$InetAddressHolder;->getAddress()I -HSPLjava/net/InetAddress$InetAddressHolder;->getHostName()Ljava/lang/String; -HSPLjava/net/InetAddress$InetAddressHolder;->init(Ljava/lang/String;I)V -HSPLjava/net/InetAddress;-><init>()V -HSPLjava/net/InetAddress;->clearDnsCache()V -HSPLjava/net/InetAddress;->getAllByName(Ljava/lang/String;)[Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getAllByNameOnNet(Ljava/lang/String;I)[Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getByAddress(Ljava/lang/String;[B)Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getByAddress(Ljava/lang/String;[BI)Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getByAddress([B)Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; -HSPLjava/net/InetAddress;->getHostName()Ljava/lang/String; -HSPLjava/net/InetAddress;->holder()Ljava/net/InetAddress$InetAddressHolder; -HSPLjava/net/InetAddress;->toString()Ljava/lang/String; -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;-><init>(Ljava/lang/String;Ljava/net/InetAddress;I)V -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->equals(Ljava/lang/Object;)Z -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->getAddress()Ljava/net/InetAddress; -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->getHostName()Ljava/lang/String; -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->getHostString()Ljava/lang/String; -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->getPort()I -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->hashCode()I -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->isUnresolved()Z -HSPLjava/net/InetSocketAddress$InetSocketAddressHolder;->toString()Ljava/lang/String; -HSPLjava/net/InetSocketAddress;-><init>()V -HSPLjava/net/InetSocketAddress;-><init>(I)V -HSPLjava/net/InetSocketAddress;-><init>(ILjava/lang/String;)V -HSPLjava/net/InetSocketAddress;-><init>(Ljava/lang/String;I)V -HSPLjava/net/InetSocketAddress;-><init>(Ljava/net/InetAddress;I)V -HSPLjava/net/InetSocketAddress;->checkHost(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/InetSocketAddress;->checkPort(I)I -HSPLjava/net/InetSocketAddress;->createUnresolved(Ljava/lang/String;I)Ljava/net/InetSocketAddress; -HSPLjava/net/InetSocketAddress;->equals(Ljava/lang/Object;)Z -HSPLjava/net/InetSocketAddress;->getAddress()Ljava/net/InetAddress; -HSPLjava/net/InetSocketAddress;->getHostName()Ljava/lang/String; -HSPLjava/net/InetSocketAddress;->getHostString()Ljava/lang/String; -HSPLjava/net/InetSocketAddress;->getPort()I -HSPLjava/net/InetSocketAddress;->hashCode()I -HSPLjava/net/InetSocketAddress;->isUnresolved()Z -HSPLjava/net/InetSocketAddress;->toString()Ljava/lang/String; -HSPLjava/net/InterfaceAddress;-><init>(Ljava/net/InetAddress;Ljava/net/Inet4Address;Ljava/net/InetAddress;)V -HSPLjava/net/InterfaceAddress;->countPrefixLength(Ljava/net/InetAddress;)S -HSPLjava/net/JarURLConnection;-><init>(Ljava/net/URL;)V -HSPLjava/net/JarURLConnection;->getEntryName()Ljava/lang/String; -HSPLjava/net/JarURLConnection;->parseSpecs(Ljava/net/URL;)V -HSPLjava/net/MulticastSocket;-><init>(Ljava/net/SocketAddress;)V -HSPLjava/net/NetworkInterface$1checkedAddresses;-><init>(Ljava/net/NetworkInterface;)V -HSPLjava/net/NetworkInterface$1checkedAddresses;->hasMoreElements()Z -HSPLjava/net/NetworkInterface$1checkedAddresses;->nextElement()Ljava/lang/Object; -HSPLjava/net/NetworkInterface$1checkedAddresses;->nextElement()Ljava/net/InetAddress; -HSPLjava/net/NetworkInterface;-><init>(Ljava/lang/String;I[Ljava/net/InetAddress;)V -HSPLjava/net/NetworkInterface;->getAll()[Ljava/net/NetworkInterface; -HSPLjava/net/NetworkInterface;->getByName(Ljava/lang/String;)Ljava/net/NetworkInterface; -HSPLjava/net/NetworkInterface;->getFlags()I -HSPLjava/net/NetworkInterface;->getHardwareAddress()[B -HSPLjava/net/NetworkInterface;->getIndex()I -HSPLjava/net/NetworkInterface;->getInetAddresses()Ljava/util/Enumeration; -HSPLjava/net/NetworkInterface;->getName()Ljava/lang/String; -HSPLjava/net/NetworkInterface;->getNetworkInterfaces()Ljava/util/Enumeration; -HSPLjava/net/NetworkInterface;->isLoopback()Z -HSPLjava/net/NetworkInterface;->isUp()Z -HSPLjava/net/Parts;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/Parts;->getPath()Ljava/lang/String; -HSPLjava/net/Parts;->getQuery()Ljava/lang/String; -HSPLjava/net/Parts;->getRef()Ljava/lang/String; -HSPLjava/net/PlainDatagramSocketImpl;-><init>()V -HSPLjava/net/PlainDatagramSocketImpl;->bind0(ILjava/net/InetAddress;)V -HSPLjava/net/PlainDatagramSocketImpl;->datagramSocketClose()V -HSPLjava/net/PlainDatagramSocketImpl;->datagramSocketCreate()V -HSPLjava/net/PlainDatagramSocketImpl;->doRecv(Ljava/net/DatagramPacket;I)V -HSPLjava/net/PlainDatagramSocketImpl;->receive0(Ljava/net/DatagramPacket;)V -HSPLjava/net/PlainDatagramSocketImpl;->send(Ljava/net/DatagramPacket;)V -HSPLjava/net/PlainDatagramSocketImpl;->socketSetOption(ILjava/lang/Object;)V -HSPLjava/net/PlainDatagramSocketImpl;->socketSetOption0(ILjava/lang/Object;)V -HSPLjava/net/PlainSocketImpl;-><init>()V -HSPLjava/net/PlainSocketImpl;->getMarkerFD()Ljava/io/FileDescriptor; -HSPLjava/net/PlainSocketImpl;->socketAccept(Ljava/net/SocketImpl;)V -HSPLjava/net/PlainSocketImpl;->socketBind(Ljava/net/InetAddress;I)V -HSPLjava/net/PlainSocketImpl;->socketClose0(Z)V -HSPLjava/net/PlainSocketImpl;->socketConnect(Ljava/net/InetAddress;II)V -HSPLjava/net/PlainSocketImpl;->socketCreate(Z)V -HSPLjava/net/PlainSocketImpl;->socketGetOption(I)Ljava/lang/Object; -HSPLjava/net/PlainSocketImpl;->socketListen(I)V -HSPLjava/net/PlainSocketImpl;->socketSetOption(ILjava/lang/Object;)V -HSPLjava/net/PlainSocketImpl;->socketSetOption0(ILjava/lang/Object;)V -HSPLjava/net/Proxy$Type;->values()[Ljava/net/Proxy$Type; -HSPLjava/net/Proxy;->address()Ljava/net/SocketAddress; -HSPLjava/net/Proxy;->equals(Ljava/lang/Object;)Z -HSPLjava/net/Proxy;->hashCode()I -HSPLjava/net/Proxy;->type()Ljava/net/Proxy$Type; -HSPLjava/net/ProxySelector;->getDefault()Ljava/net/ProxySelector; -HSPLjava/net/ProxySelector;->setDefault(Ljava/net/ProxySelector;)V -HSPLjava/net/ResponseCache;->getDefault()Ljava/net/ResponseCache; -HSPLjava/net/ServerSocket;-><init>()V -HSPLjava/net/ServerSocket;->accept()Ljava/net/Socket; -HSPLjava/net/ServerSocket;->bind(Ljava/net/SocketAddress;)V -HSPLjava/net/ServerSocket;->bind(Ljava/net/SocketAddress;I)V -HSPLjava/net/ServerSocket;->createImpl()V -HSPLjava/net/ServerSocket;->getImpl()Ljava/net/SocketImpl; -HSPLjava/net/ServerSocket;->implAccept(Ljava/net/Socket;)V -HSPLjava/net/ServerSocket;->isBound()Z -HSPLjava/net/ServerSocket;->isClosed()Z -HSPLjava/net/ServerSocket;->setBound()V -HSPLjava/net/ServerSocket;->setCreated()V -HSPLjava/net/ServerSocket;->setImpl()V -HSPLjava/net/Socket$1;-><init>(Ljava/net/Socket;)V -HSPLjava/net/Socket$1;->run()Ljava/lang/Boolean; -HSPLjava/net/Socket$1;->run()Ljava/lang/Object; -HSPLjava/net/Socket$2;-><init>(Ljava/net/Socket;)V -HSPLjava/net/Socket$2;->run()Ljava/io/InputStream; -HSPLjava/net/Socket$2;->run()Ljava/lang/Object; -HSPLjava/net/Socket$3;-><init>(Ljava/net/Socket;)V -HSPLjava/net/Socket$3;->run()Ljava/io/OutputStream; -HSPLjava/net/Socket$3;->run()Ljava/lang/Object; -HSPLjava/net/Socket;-><init>()V -HSPLjava/net/Socket;-><init>(Ljava/net/InetAddress;I)V -HSPLjava/net/Socket;-><init>(Ljava/net/SocketImpl;)V -HSPLjava/net/Socket;-><init>([Ljava/net/InetAddress;ILjava/net/SocketAddress;Z)V -HSPLjava/net/Socket;->checkAddress(Ljava/net/InetAddress;Ljava/lang/String;)V -HSPLjava/net/Socket;->checkOldImpl()V -HSPLjava/net/Socket;->close()V -HSPLjava/net/Socket;->connect(Ljava/net/SocketAddress;)V -HSPLjava/net/Socket;->connect(Ljava/net/SocketAddress;I)V -HSPLjava/net/Socket;->createImpl(Z)V -HSPLjava/net/Socket;->getFileDescriptor$()Ljava/io/FileDescriptor; -HSPLjava/net/Socket;->getImpl()Ljava/net/SocketImpl; -HSPLjava/net/Socket;->getInetAddress()Ljava/net/InetAddress; -HSPLjava/net/Socket;->getInputStream()Ljava/io/InputStream; -HSPLjava/net/Socket;->getLocalAddress()Ljava/net/InetAddress; -HSPLjava/net/Socket;->getLocalPort()I -HSPLjava/net/Socket;->getLocalSocketAddress()Ljava/net/SocketAddress; -HSPLjava/net/Socket;->getOutputStream()Ljava/io/OutputStream; -HSPLjava/net/Socket;->getPort()I -HSPLjava/net/Socket;->getRemoteSocketAddress()Ljava/net/SocketAddress; -HSPLjava/net/Socket;->getReuseAddress()Z -HSPLjava/net/Socket;->getSoTimeout()I -HSPLjava/net/Socket;->isBound()Z -HSPLjava/net/Socket;->isClosed()Z -HSPLjava/net/Socket;->isConnected()Z -HSPLjava/net/Socket;->isInputShutdown()Z -HSPLjava/net/Socket;->isOutputShutdown()Z -HSPLjava/net/Socket;->nonNullAddress(Ljava/net/InetAddress;)[Ljava/net/InetAddress; -HSPLjava/net/Socket;->setBound()V -HSPLjava/net/Socket;->setConnected()V -HSPLjava/net/Socket;->setCreated()V -HSPLjava/net/Socket;->setImpl()V -HSPLjava/net/Socket;->setSoTimeout(I)V -HSPLjava/net/Socket;->setTcpNoDelay(Z)V -HSPLjava/net/SocketAddress;-><init>()V -HSPLjava/net/SocketException;-><init>(Ljava/lang/String;)V -HSPLjava/net/SocketException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/net/SocketImpl;-><init>()V -HSPLjava/net/SocketImpl;->getFileDescriptor()Ljava/io/FileDescriptor; -HSPLjava/net/SocketImpl;->getInetAddress()Ljava/net/InetAddress; -HSPLjava/net/SocketImpl;->getLocalPort()I -HSPLjava/net/SocketImpl;->getPort()I -HSPLjava/net/SocketImpl;->getSocket()Ljava/net/Socket; -HSPLjava/net/SocketImpl;->setServerSocket(Ljava/net/ServerSocket;)V -HSPLjava/net/SocketImpl;->setSocket(Ljava/net/Socket;)V -HSPLjava/net/SocketInputStream;-><init>(Ljava/net/AbstractPlainSocketImpl;)V -HSPLjava/net/SocketInputStream;->finalize()V -HSPLjava/net/SocketInputStream;->read([BII)I -HSPLjava/net/SocketInputStream;->read([BIII)I -HSPLjava/net/SocketInputStream;->socketRead(Ljava/io/FileDescriptor;[BIII)I -HSPLjava/net/SocketOutputStream;-><init>(Ljava/net/AbstractPlainSocketImpl;)V -HSPLjava/net/SocketOutputStream;->finalize()V -HSPLjava/net/SocketOutputStream;->socketWrite([BII)V -HSPLjava/net/SocketOutputStream;->write([BII)V -HSPLjava/net/SocketTimeoutException;-><init>(Ljava/lang/String;)V -HSPLjava/net/SocksSocketImpl;-><init>()V -HSPLjava/net/SocksSocketImpl;->close()V -HSPLjava/net/SocksSocketImpl;->connect(Ljava/net/SocketAddress;I)V -HSPLjava/net/SocksSocketImpl;->getInetAddress()Ljava/net/InetAddress; -HSPLjava/net/SocksSocketImpl;->getLocalPort()I -HSPLjava/net/SocksSocketImpl;->getPort()I -HSPLjava/net/SocksSocketImpl;->remainingMillis(J)I -HSPLjava/net/URI$Parser;-><init>(Ljava/net/URI;Ljava/lang/String;)V -HSPLjava/net/URI$Parser;->at(IIC)Z -HSPLjava/net/URI$Parser;->charAt(I)C -HSPLjava/net/URI$Parser;->checkChar(IJJLjava/lang/String;)V -HSPLjava/net/URI$Parser;->checkChars(IIJJLjava/lang/String;)V -HSPLjava/net/URI$Parser;->parse(Z)V -HSPLjava/net/URI$Parser;->parseAuthority(II)I -HSPLjava/net/URI$Parser;->parseHierarchical(II)I -HSPLjava/net/URI$Parser;->parseHostname(II)I -HSPLjava/net/URI$Parser;->parseIPv4Address(II)I -HSPLjava/net/URI$Parser;->parseServer(II)I -HSPLjava/net/URI$Parser;->scan(IIC)I -HSPLjava/net/URI$Parser;->scan(IIJJ)I -HSPLjava/net/URI$Parser;->scan(IILjava/lang/String;Ljava/lang/String;)I -HSPLjava/net/URI$Parser;->scanByte(II)I -HSPLjava/net/URI$Parser;->scanEscape(IIC)I -HSPLjava/net/URI$Parser;->scanIPv4Address(IIZ)I -HSPLjava/net/URI$Parser;->substring(II)Ljava/lang/String; -HSPLjava/net/URI;->-$$Nest$fputpath(Ljava/net/URI;Ljava/lang/String;)V -HSPLjava/net/URI;->-$$Nest$fputscheme(Ljava/net/URI;Ljava/lang/String;)V -HSPLjava/net/URI;->-$$Nest$fputschemeSpecificPart(Ljava/net/URI;Ljava/lang/String;)V -HSPLjava/net/URI;->-$$Nest$fputstring(Ljava/net/URI;Ljava/lang/String;)V -HSPLjava/net/URI;->-$$Nest$sfgetH_ALPHA()J -HSPLjava/net/URI;->-$$Nest$sfgetH_PATH()J -HSPLjava/net/URI;->-$$Nest$sfgetH_SCHEME()J -HSPLjava/net/URI;->-$$Nest$sfgetL_PATH()J -HSPLjava/net/URI;->-$$Nest$sfgetL_SCHEME()J -HSPLjava/net/URI;->-$$Nest$smmatch(CJJ)Z -HSPLjava/net/URI;-><init>(Ljava/lang/String;)V -HSPLjava/net/URI;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URI;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URI;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URI;->appendAuthority(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V -HSPLjava/net/URI;->appendEscape(Ljava/lang/StringBuffer;B)V -HSPLjava/net/URI;->appendFragment(Ljava/lang/StringBuffer;Ljava/lang/String;)V -HSPLjava/net/URI;->appendSchemeSpecificPart(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URI;->checkPath(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URI;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLjava/net/URI;->compareIgnoringCase(Ljava/lang/String;Ljava/lang/String;)I -HSPLjava/net/URI;->compareTo(Ljava/lang/Object;)I -HSPLjava/net/URI;->compareTo(Ljava/net/URI;)I -HSPLjava/net/URI;->create(Ljava/lang/String;)Ljava/net/URI; -HSPLjava/net/URI;->decode(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/URI;->defineString()V -HSPLjava/net/URI;->encode(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/URI;->equal(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/URI;->equalIgnoringCase(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/net/URI;->equals(Ljava/lang/Object;)Z -HSPLjava/net/URI;->getAuthority()Ljava/lang/String; -HSPLjava/net/URI;->getFragment()Ljava/lang/String; -HSPLjava/net/URI;->getHost()Ljava/lang/String; -HSPLjava/net/URI;->getPath()Ljava/lang/String; -HSPLjava/net/URI;->getPort()I -HSPLjava/net/URI;->getQuery()Ljava/lang/String; -HSPLjava/net/URI;->getRawFragment()Ljava/lang/String; -HSPLjava/net/URI;->getRawPath()Ljava/lang/String; -HSPLjava/net/URI;->getRawQuery()Ljava/lang/String; -HSPLjava/net/URI;->getScheme()Ljava/lang/String; -HSPLjava/net/URI;->getUserInfo()Ljava/lang/String; -HSPLjava/net/URI;->hash(ILjava/lang/String;)I -HSPLjava/net/URI;->hashCode()I -HSPLjava/net/URI;->hashIgnoringCase(ILjava/lang/String;)I -HSPLjava/net/URI;->isAbsolute()Z -HSPLjava/net/URI;->isOpaque()Z -HSPLjava/net/URI;->match(CJJ)Z -HSPLjava/net/URI;->quote(Ljava/lang/String;JJ)Ljava/lang/String; -HSPLjava/net/URI;->toASCIIString()Ljava/lang/String; -HSPLjava/net/URI;->toLower(C)I -HSPLjava/net/URI;->toString()Ljava/lang/String; -HSPLjava/net/URI;->toString(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/URI;->toURL()Ljava/net/URL; -HSPLjava/net/URL;-><init>(Ljava/lang/String;)V -HSPLjava/net/URL;-><init>(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V -HSPLjava/net/URL;-><init>(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/net/URLStreamHandler;)V -HSPLjava/net/URL;-><init>(Ljava/net/URL;Ljava/lang/String;)V -HSPLjava/net/URL;-><init>(Ljava/net/URL;Ljava/lang/String;Ljava/net/URLStreamHandler;)V -HSPLjava/net/URL;->createBuiltinHandler(Ljava/lang/String;)Ljava/net/URLStreamHandler; -HSPLjava/net/URL;->getAuthority()Ljava/lang/String; -HSPLjava/net/URL;->getFile()Ljava/lang/String; -HSPLjava/net/URL;->getHost()Ljava/lang/String; -HSPLjava/net/URL;->getPath()Ljava/lang/String; -HSPLjava/net/URL;->getPort()I -HSPLjava/net/URL;->getProtocol()Ljava/lang/String; -HSPLjava/net/URL;->getQuery()Ljava/lang/String; -HSPLjava/net/URL;->getRef()Ljava/lang/String; -HSPLjava/net/URL;->getURLStreamHandler(Ljava/lang/String;)Ljava/net/URLStreamHandler; -HSPLjava/net/URL;->getUserInfo()Ljava/lang/String; -HSPLjava/net/URL;->isValidProtocol(Ljava/lang/String;)Z -HSPLjava/net/URL;->openConnection()Ljava/net/URLConnection; -HSPLjava/net/URL;->openStream()Ljava/io/InputStream; -HSPLjava/net/URL;->set(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URL;->toExternalForm()Ljava/lang/String; -HSPLjava/net/URL;->toString()Ljava/lang/String; -HSPLjava/net/URLConnection;-><init>(Ljava/net/URL;)V -HSPLjava/net/URLConnection;->getContentEncoding()Ljava/lang/String; -HSPLjava/net/URLConnection;->getContentLength()I -HSPLjava/net/URLConnection;->getContentLengthLong()J -HSPLjava/net/URLConnection;->getContentType()Ljava/lang/String; -HSPLjava/net/URLConnection;->getHeaderFieldInt(Ljava/lang/String;I)I -HSPLjava/net/URLConnection;->getHeaderFieldLong(Ljava/lang/String;J)J -HSPLjava/net/URLConnection;->getReadTimeout()I -HSPLjava/net/URLConnection;->getURL()Ljava/net/URL; -HSPLjava/net/URLConnection;->getUseCaches()Z -HSPLjava/net/URLConnection;->setDefaultUseCaches(Z)V -HSPLjava/net/URLConnection;->setDoInput(Z)V -HSPLjava/net/URLConnection;->setDoOutput(Z)V -HSPLjava/net/URLConnection;->setReadTimeout(I)V -HSPLjava/net/URLConnection;->setUseCaches(Z)V -HSPLjava/net/URLDecoder;->decode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/URLDecoder;->decode(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String; -HSPLjava/net/URLDecoder;->isValidHexChar(C)Z -HSPLjava/net/URLEncoder;->encode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/net/URLEncoder;->encode(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String; -HSPLjava/net/URLStreamHandler;-><init>()V -HSPLjava/net/URLStreamHandler;->parseURL(Ljava/net/URL;Ljava/lang/String;II)V -HSPLjava/net/URLStreamHandler;->setURL(Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/net/URLStreamHandler;->toExternalForm(Ljava/net/URL;)Ljava/lang/String; -HSPLjava/net/UnknownHostException;-><init>(Ljava/lang/String;)V -HSPLjava/nio/Bits;->char0(C)B -HSPLjava/nio/Bits;->char1(C)B -HSPLjava/nio/Bits;->getFloat(Ljava/nio/ByteBuffer;IZ)F -HSPLjava/nio/Bits;->getFloatL(Ljava/nio/ByteBuffer;I)F -HSPLjava/nio/Bits;->getInt(Ljava/nio/ByteBuffer;IZ)I -HSPLjava/nio/Bits;->getIntB(Ljava/nio/ByteBuffer;I)I -HSPLjava/nio/Bits;->getIntL(Ljava/nio/ByteBuffer;I)I -HSPLjava/nio/Bits;->getLong(Ljava/nio/ByteBuffer;IZ)J -HSPLjava/nio/Bits;->getLongB(Ljava/nio/ByteBuffer;I)J -HSPLjava/nio/Bits;->getLongL(Ljava/nio/ByteBuffer;I)J -HSPLjava/nio/Bits;->getShort(Ljava/nio/ByteBuffer;IZ)S -HSPLjava/nio/Bits;->getShortB(Ljava/nio/ByteBuffer;I)S -HSPLjava/nio/Bits;->getShortL(Ljava/nio/ByteBuffer;I)S -HSPLjava/nio/Bits;->int0(I)B -HSPLjava/nio/Bits;->int1(I)B -HSPLjava/nio/Bits;->int2(I)B -HSPLjava/nio/Bits;->int3(I)B -HSPLjava/nio/Bits;->long0(J)B -HSPLjava/nio/Bits;->long1(J)B -HSPLjava/nio/Bits;->long2(J)B -HSPLjava/nio/Bits;->long3(J)B -HSPLjava/nio/Bits;->long4(J)B -HSPLjava/nio/Bits;->long5(J)B -HSPLjava/nio/Bits;->long6(J)B -HSPLjava/nio/Bits;->long7(J)B -HSPLjava/nio/Bits;->makeInt(BBBB)I -HSPLjava/nio/Bits;->makeLong(BBBBBBBB)J -HSPLjava/nio/Bits;->makeShort(BB)S -HSPLjava/nio/Bits;->pageSize()I -HSPLjava/nio/Bits;->putChar(Ljava/nio/ByteBuffer;ICZ)V -HSPLjava/nio/Bits;->putCharB(Ljava/nio/ByteBuffer;IC)V -HSPLjava/nio/Bits;->putCharL(Ljava/nio/ByteBuffer;IC)V -HSPLjava/nio/Bits;->putFloat(Ljava/nio/ByteBuffer;IFZ)V -HSPLjava/nio/Bits;->putInt(Ljava/nio/ByteBuffer;IIZ)V -HSPLjava/nio/Bits;->putIntB(Ljava/nio/ByteBuffer;II)V -HSPLjava/nio/Bits;->putIntL(Ljava/nio/ByteBuffer;II)V -HSPLjava/nio/Bits;->putLong(Ljava/nio/ByteBuffer;IJZ)V -HSPLjava/nio/Bits;->putLongB(Ljava/nio/ByteBuffer;IJ)V -HSPLjava/nio/Bits;->putLongL(Ljava/nio/ByteBuffer;IJ)V -HSPLjava/nio/Bits;->putShort(Ljava/nio/ByteBuffer;ISZ)V -HSPLjava/nio/Bits;->putShortB(Ljava/nio/ByteBuffer;IS)V -HSPLjava/nio/Bits;->putShortL(Ljava/nio/ByteBuffer;IS)V -HSPLjava/nio/Bits;->short0(S)B -HSPLjava/nio/Bits;->short1(S)B -HSPLjava/nio/Buffer;-><init>(IIIII)V -HSPLjava/nio/Buffer;->capacity()I -HSPLjava/nio/Buffer;->checkBounds(III)V -HSPLjava/nio/Buffer;->checkIndex(I)I -HSPLjava/nio/Buffer;->checkIndex(II)I -HSPLjava/nio/Buffer;->checkScope()V -HSPLjava/nio/Buffer;->clear()Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->discardMark()V -HSPLjava/nio/Buffer;->flip()Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->hasRemaining()Z -HSPLjava/nio/Buffer;->limit()I -HSPLjava/nio/Buffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->mark()Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->markValue()I -HSPLjava/nio/Buffer;->nextGetIndex()I -HSPLjava/nio/Buffer;->nextGetIndex(I)I -HSPLjava/nio/Buffer;->nextPutIndex()I -HSPLjava/nio/Buffer;->nextPutIndex(I)I -HSPLjava/nio/Buffer;->position()I -HSPLjava/nio/Buffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->remaining()I -HSPLjava/nio/Buffer;->reset()Ljava/nio/Buffer; -HSPLjava/nio/Buffer;->rewind()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;-><init>(IIII)V -HSPLjava/nio/ByteBuffer;-><init>(IIII[BI)V -HSPLjava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->allocateDirect(I)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->array()Ljava/lang/Object; -HSPLjava/nio/ByteBuffer;->array()[B -HSPLjava/nio/ByteBuffer;->arrayOffset()I -HSPLjava/nio/ByteBuffer;->clear()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->compare(BB)I -HSPLjava/nio/ByteBuffer;->compareTo(Ljava/lang/Object;)I -HSPLjava/nio/ByteBuffer;->compareTo(Ljava/nio/ByteBuffer;)I -HSPLjava/nio/ByteBuffer;->equals(Ljava/lang/Object;)Z -HSPLjava/nio/ByteBuffer;->flip()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->get([B)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->hasArray()Z -HSPLjava/nio/ByteBuffer;->hashCode()I -HSPLjava/nio/ByteBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->mark()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->order()Ljava/nio/ByteOrder; -HSPLjava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->put(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->put([B)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->putBuffer(ILjava/nio/ByteBuffer;II)V -HSPLjava/nio/ByteBuffer;->reset()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->rewind()Ljava/nio/Buffer; -HSPLjava/nio/ByteBuffer;->wrap([B)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBuffer;->wrap([BII)Ljava/nio/ByteBuffer; -HSPLjava/nio/ByteBufferAsCharBuffer;-><init>(Ljava/nio/ByteBuffer;IIIIILjava/nio/ByteOrder;)V -HSPLjava/nio/ByteBufferAsCharBuffer;->duplicate()Ljava/nio/CharBuffer; -HSPLjava/nio/ByteBufferAsCharBuffer;->get(I)C -HSPLjava/nio/ByteBufferAsCharBuffer;->get([CII)Ljava/nio/CharBuffer; -HSPLjava/nio/ByteBufferAsCharBuffer;->isDirect()Z -HSPLjava/nio/ByteBufferAsCharBuffer;->ix(I)I -HSPLjava/nio/ByteBufferAsCharBuffer;->subSequence(II)Ljava/lang/CharSequence; -HSPLjava/nio/ByteBufferAsCharBuffer;->subSequence(II)Ljava/nio/CharBuffer; -HSPLjava/nio/ByteBufferAsCharBuffer;->toString(II)Ljava/lang/String; -HSPLjava/nio/ByteBufferAsFloatBuffer;-><init>(Ljava/nio/ByteBuffer;IIIIILjava/nio/ByteOrder;)V -HSPLjava/nio/ByteBufferAsFloatBuffer;->ix(I)I -HSPLjava/nio/ByteBufferAsFloatBuffer;->put(IF)Ljava/nio/FloatBuffer; -HSPLjava/nio/ByteBufferAsFloatBuffer;->put([FII)Ljava/nio/FloatBuffer; -HSPLjava/nio/ByteBufferAsIntBuffer;-><init>(Ljava/nio/ByteBuffer;IIIIILjava/nio/ByteOrder;)V -HSPLjava/nio/ByteBufferAsIntBuffer;->get([III)Ljava/nio/IntBuffer; -HSPLjava/nio/ByteBufferAsIntBuffer;->ix(I)I -HSPLjava/nio/ByteBufferAsIntBuffer;->put(I)Ljava/nio/IntBuffer; -HSPLjava/nio/ByteBufferAsIntBuffer;->put(II)Ljava/nio/IntBuffer; -HSPLjava/nio/ByteBufferAsIntBuffer;->put([III)Ljava/nio/IntBuffer; -HSPLjava/nio/ByteBufferAsLongBuffer;-><init>(Ljava/nio/ByteBuffer;IIIIILjava/nio/ByteOrder;)V -HSPLjava/nio/ByteBufferAsLongBuffer;->get([JII)Ljava/nio/LongBuffer; -HSPLjava/nio/ByteBufferAsLongBuffer;->ix(I)I -HSPLjava/nio/ByteBufferAsShortBuffer;-><init>(Ljava/nio/ByteBuffer;IIIIILjava/nio/ByteOrder;)V -HSPLjava/nio/ByteBufferAsShortBuffer;->get([SII)Ljava/nio/ShortBuffer; -HSPLjava/nio/ByteBufferAsShortBuffer;->ix(I)I -HSPLjava/nio/ByteBufferAsShortBuffer;->put([SII)Ljava/nio/ShortBuffer; -HSPLjava/nio/ByteOrder;->nativeOrder()Ljava/nio/ByteOrder; -HSPLjava/nio/CharBuffer;-><init>(IIII)V -HSPLjava/nio/CharBuffer;-><init>(IIII[CI)V -HSPLjava/nio/CharBuffer;->allocate(I)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->array()[C -HSPLjava/nio/CharBuffer;->arrayOffset()I -HSPLjava/nio/CharBuffer;->charAt(I)C -HSPLjava/nio/CharBuffer;->clear()Ljava/nio/Buffer; -HSPLjava/nio/CharBuffer;->flip()Ljava/nio/Buffer; -HSPLjava/nio/CharBuffer;->get([C)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->get([CII)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->hasArray()Z -HSPLjava/nio/CharBuffer;->length()I -HSPLjava/nio/CharBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/CharBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/CharBuffer;->toString()Ljava/lang/String; -HSPLjava/nio/CharBuffer;->wrap(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->wrap(Ljava/lang/CharSequence;II)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->wrap([C)Ljava/nio/CharBuffer; -HSPLjava/nio/CharBuffer;->wrap([CII)Ljava/nio/CharBuffer; -HSPLjava/nio/DirectByteBuffer$MemoryRef;-><init>(I)V -HSPLjava/nio/DirectByteBuffer$MemoryRef;-><init>(JLjava/lang/Object;)V -HSPLjava/nio/DirectByteBuffer$MemoryRef;->free()V -HSPLjava/nio/DirectByteBuffer;-><init>(IJLjava/io/FileDescriptor;Ljava/lang/Runnable;Z)V -HSPLjava/nio/DirectByteBuffer;-><init>(ILjava/nio/DirectByteBuffer$MemoryRef;)V -HSPLjava/nio/DirectByteBuffer;-><init>(JI)V -HSPLjava/nio/DirectByteBuffer;-><init>(Ljava/nio/DirectByteBuffer$MemoryRef;IIIIIZ)V -HSPLjava/nio/DirectByteBuffer;->address()J -HSPLjava/nio/DirectByteBuffer;->asCharBuffer()Ljava/nio/CharBuffer; -HSPLjava/nio/DirectByteBuffer;->asFloatBuffer()Ljava/nio/FloatBuffer; -HSPLjava/nio/DirectByteBuffer;->asIntBuffer()Ljava/nio/IntBuffer; -HSPLjava/nio/DirectByteBuffer;->asReadOnlyBuffer()Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->asShortBuffer()Ljava/nio/ShortBuffer; -HSPLjava/nio/DirectByteBuffer;->cleaner()Lsun/misc/Cleaner; -HSPLjava/nio/DirectByteBuffer;->duplicate()Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->duplicate()Ljava/nio/MappedByteBuffer; -HSPLjava/nio/DirectByteBuffer;->get()B -HSPLjava/nio/DirectByteBuffer;->get(I)B -HSPLjava/nio/DirectByteBuffer;->get(J)B -HSPLjava/nio/DirectByteBuffer;->get([BII)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->getChar()C -HSPLjava/nio/DirectByteBuffer;->getChar(I)C -HSPLjava/nio/DirectByteBuffer;->getCharUnchecked(I)C -HSPLjava/nio/DirectByteBuffer;->getInt()I -HSPLjava/nio/DirectByteBuffer;->getInt(I)I -HSPLjava/nio/DirectByteBuffer;->getInt(J)I -HSPLjava/nio/DirectByteBuffer;->getLong(I)J -HSPLjava/nio/DirectByteBuffer;->getLong(J)J -HSPLjava/nio/DirectByteBuffer;->getShort()S -HSPLjava/nio/DirectByteBuffer;->getShort(I)S -HSPLjava/nio/DirectByteBuffer;->getShort(J)S -HSPLjava/nio/DirectByteBuffer;->getUnchecked(I[CII)V -HSPLjava/nio/DirectByteBuffer;->getUnchecked(I[III)V -HSPLjava/nio/DirectByteBuffer;->getUnchecked(I[SII)V -HSPLjava/nio/DirectByteBuffer;->isDirect()Z -HSPLjava/nio/DirectByteBuffer;->isReadOnly()Z -HSPLjava/nio/DirectByteBuffer;->ix(I)J -HSPLjava/nio/DirectByteBuffer;->put(B)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->put(IB)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->put(JB)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->put(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->put([BII)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putDouble(JD)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putFloat(JF)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putFloatUnchecked(IF)V -HSPLjava/nio/DirectByteBuffer;->putInt(I)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putInt(II)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putInt(JI)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putLong(IJ)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putLong(J)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putLong(JJ)Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->putUnchecked(I[FII)V -HSPLjava/nio/DirectByteBuffer;->setAccessible(Z)V -HSPLjava/nio/DirectByteBuffer;->slice()Ljava/nio/ByteBuffer; -HSPLjava/nio/DirectByteBuffer;->slice()Ljava/nio/MappedByteBuffer; -HSPLjava/nio/FloatBuffer;-><init>(IIII)V -HSPLjava/nio/FloatBuffer;-><init>(IIII[FI)V -HSPLjava/nio/FloatBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/FloatBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/FloatBuffer;->put([F)Ljava/nio/FloatBuffer; -HSPLjava/nio/HeapByteBuffer;-><init>(II)V -HSPLjava/nio/HeapByteBuffer;-><init>(IIZ)V -HSPLjava/nio/HeapByteBuffer;-><init>([BII)V -HSPLjava/nio/HeapByteBuffer;-><init>([BIIIIIZ)V -HSPLjava/nio/HeapByteBuffer;-><init>([BIIZ)V -HSPLjava/nio/HeapByteBuffer;->_get(I)B -HSPLjava/nio/HeapByteBuffer;->_put(IB)V -HSPLjava/nio/HeapByteBuffer;->asIntBuffer()Ljava/nio/IntBuffer; -HSPLjava/nio/HeapByteBuffer;->asLongBuffer()Ljava/nio/LongBuffer; -HSPLjava/nio/HeapByteBuffer;->asReadOnlyBuffer()Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->asShortBuffer()Ljava/nio/ShortBuffer; -HSPLjava/nio/HeapByteBuffer;->compact()Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->duplicate()Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->get()B -HSPLjava/nio/HeapByteBuffer;->get(I)B -HSPLjava/nio/HeapByteBuffer;->get([BII)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->getFloat()F -HSPLjava/nio/HeapByteBuffer;->getFloat(I)F -HSPLjava/nio/HeapByteBuffer;->getInt()I -HSPLjava/nio/HeapByteBuffer;->getInt(I)I -HSPLjava/nio/HeapByteBuffer;->getLong()J -HSPLjava/nio/HeapByteBuffer;->getLong(I)J -HSPLjava/nio/HeapByteBuffer;->getShort()S -HSPLjava/nio/HeapByteBuffer;->getShort(I)S -HSPLjava/nio/HeapByteBuffer;->getUnchecked(I[III)V -HSPLjava/nio/HeapByteBuffer;->getUnchecked(I[SII)V -HSPLjava/nio/HeapByteBuffer;->isDirect()Z -HSPLjava/nio/HeapByteBuffer;->isReadOnly()Z -HSPLjava/nio/HeapByteBuffer;->ix(I)I -HSPLjava/nio/HeapByteBuffer;->put(B)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->put(IB)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->put(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->put([BII)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putChar(C)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putFloat(F)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putInt(I)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putInt(II)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putLong(IJ)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putLong(J)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putShort(IS)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->putShort(S)Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->slice()Ljava/nio/ByteBuffer; -HSPLjava/nio/HeapByteBuffer;->throwIfReadOnly()V -HSPLjava/nio/HeapCharBuffer;-><init>(II)V -HSPLjava/nio/HeapCharBuffer;-><init>(IIZ)V -HSPLjava/nio/HeapCharBuffer;-><init>([CII)V -HSPLjava/nio/HeapCharBuffer;-><init>([CIIIIIZ)V -HSPLjava/nio/HeapCharBuffer;-><init>([CIIZ)V -HSPLjava/nio/HeapCharBuffer;->get(I)C -HSPLjava/nio/HeapCharBuffer;->ix(I)I -HSPLjava/nio/HeapCharBuffer;->put(Ljava/nio/CharBuffer;)Ljava/nio/CharBuffer; -HSPLjava/nio/HeapCharBuffer;->put([CII)Ljava/nio/CharBuffer; -HSPLjava/nio/HeapCharBuffer;->slice()Ljava/nio/CharBuffer; -HSPLjava/nio/HeapCharBuffer;->throwIfReadOnly()V -HSPLjava/nio/HeapCharBuffer;->toString(II)Ljava/lang/String; -HSPLjava/nio/IntBuffer;-><init>(IIII)V -HSPLjava/nio/IntBuffer;-><init>(IIII[II)V -HSPLjava/nio/IntBuffer;->allocate(I)Ljava/nio/IntBuffer; -HSPLjava/nio/IntBuffer;->array()Ljava/lang/Object; -HSPLjava/nio/IntBuffer;->array()[I -HSPLjava/nio/IntBuffer;->arrayOffset()I -HSPLjava/nio/IntBuffer;->get([I)Ljava/nio/IntBuffer; -HSPLjava/nio/IntBuffer;->hasArray()Z -HSPLjava/nio/IntBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/IntBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/LongBuffer;-><init>(IIII)V -HSPLjava/nio/LongBuffer;-><init>(IIII[JI)V -HSPLjava/nio/LongBuffer;->get([J)Ljava/nio/LongBuffer; -HSPLjava/nio/LongBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/LongBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/MappedByteBuffer;-><init>(IIII)V -HSPLjava/nio/MappedByteBuffer;-><init>(IIIILjava/io/FileDescriptor;Z)V -HSPLjava/nio/MappedByteBuffer;-><init>(IIII[BI)V -HSPLjava/nio/MappedByteBuffer;->checkMapped()V -HSPLjava/nio/MappedByteBuffer;->clear()Ljava/nio/Buffer; -HSPLjava/nio/MappedByteBuffer;->flip()Ljava/nio/Buffer; -HSPLjava/nio/MappedByteBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/MappedByteBuffer;->load()Ljava/nio/MappedByteBuffer; -HSPLjava/nio/MappedByteBuffer;->mappingAddress(J)J -HSPLjava/nio/MappedByteBuffer;->mappingLength(J)J -HSPLjava/nio/MappedByteBuffer;->mappingOffset()J -HSPLjava/nio/MappedByteBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/MappedByteBuffer;->rewind()Ljava/nio/Buffer; -HSPLjava/nio/NIOAccess;->getBaseArray(Ljava/nio/Buffer;)Ljava/lang/Object; -HSPLjava/nio/NIOAccess;->getBaseArrayOffset(Ljava/nio/Buffer;)I -HSPLjava/nio/NioUtils;->freeDirectBuffer(Ljava/nio/ByteBuffer;)V -HSPLjava/nio/ShortBuffer;-><init>(IIII)V -HSPLjava/nio/ShortBuffer;-><init>(IIII[SI)V -HSPLjava/nio/ShortBuffer;->get([S)Ljava/nio/ShortBuffer; -HSPLjava/nio/ShortBuffer;->limit(I)Ljava/nio/Buffer; -HSPLjava/nio/ShortBuffer;->position(I)Ljava/nio/Buffer; -HSPLjava/nio/StringCharBuffer;-><init>(Ljava/lang/CharSequence;II)V -HSPLjava/nio/StringCharBuffer;->get()C -HSPLjava/nio/channels/Channels$1;-><init>(Ljava/nio/channels/WritableByteChannel;)V -HSPLjava/nio/channels/Channels$1;->write([BII)V -HSPLjava/nio/channels/Channels$WritableByteChannelImpl;-><init>(Ljava/io/OutputStream;)V -HSPLjava/nio/channels/Channels$WritableByteChannelImpl;->write(Ljava/nio/ByteBuffer;)I -HSPLjava/nio/channels/Channels;->newChannel(Ljava/io/OutputStream;)Ljava/nio/channels/WritableByteChannel; -HSPLjava/nio/channels/Channels;->newInputStream(Ljava/nio/channels/ReadableByteChannel;)Ljava/io/InputStream; -HSPLjava/nio/channels/Channels;->newOutputStream(Ljava/nio/channels/WritableByteChannel;)Ljava/io/OutputStream; -HSPLjava/nio/channels/Channels;->writeFully(Ljava/nio/channels/WritableByteChannel;Ljava/nio/ByteBuffer;)V -HSPLjava/nio/channels/Channels;->writeFullyImpl(Ljava/nio/channels/WritableByteChannel;Ljava/nio/ByteBuffer;)V -HSPLjava/nio/channels/FileChannel;-><init>()V -HSPLjava/nio/channels/FileChannel;->lock()Ljava/nio/channels/FileLock; -HSPLjava/nio/channels/FileChannel;->open(Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/FileChannel; -HSPLjava/nio/channels/FileChannel;->open(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/nio/channels/FileChannel; -HSPLjava/nio/channels/FileChannel;->tryLock()Ljava/nio/channels/FileLock; -HSPLjava/nio/channels/FileLock;-><init>(Ljava/nio/channels/FileChannel;JJZ)V -HSPLjava/nio/channels/FileLock;->acquiredBy()Ljava/nio/channels/Channel; -HSPLjava/nio/channels/FileLock;->position()J -HSPLjava/nio/channels/FileLock;->size()J -HSPLjava/nio/channels/SelectableChannel;-><init>()V -HSPLjava/nio/channels/SelectableChannel;->register(Ljava/nio/channels/Selector;I)Ljava/nio/channels/SelectionKey; -HSPLjava/nio/channels/SelectionKey;-><init>()V -HSPLjava/nio/channels/SelectionKey;->attach(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/nio/channels/Selector;-><init>()V -HSPLjava/nio/channels/Selector;->open()Ljava/nio/channels/Selector; -HSPLjava/nio/channels/SocketChannel;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLjava/nio/channels/SocketChannel;->open()Ljava/nio/channels/SocketChannel; -HSPLjava/nio/channels/SocketChannel;->validOps()I -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel$1;-><init>(Ljava/nio/channels/spi/AbstractInterruptibleChannel;)V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;-><init>()V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;->begin()V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;->blockedOn(Lsun/nio/ch/Interruptible;)V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;->close()V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;->end(Z)V -HSPLjava/nio/channels/spi/AbstractInterruptibleChannel;->isOpen()Z -HSPLjava/nio/channels/spi/AbstractSelectableChannel;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->addKey(Ljava/nio/channels/SelectionKey;)V -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->blockingLock()Ljava/lang/Object; -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->configureBlocking(Z)Ljava/nio/channels/SelectableChannel; -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->findKey(Ljava/nio/channels/Selector;)Ljava/nio/channels/SelectionKey; -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->implCloseChannel()V -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->isBlocking()Z -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->isRegistered()Z -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->register(Ljava/nio/channels/Selector;ILjava/lang/Object;)Ljava/nio/channels/SelectionKey; -HSPLjava/nio/channels/spi/AbstractSelectableChannel;->removeKey(Ljava/nio/channels/SelectionKey;)V -HSPLjava/nio/channels/spi/AbstractSelectionKey;-><init>()V -HSPLjava/nio/channels/spi/AbstractSelectionKey;->invalidate()V -HSPLjava/nio/channels/spi/AbstractSelectionKey;->isValid()Z -HSPLjava/nio/channels/spi/AbstractSelector$1;-><init>(Ljava/nio/channels/spi/AbstractSelector;)V -HSPLjava/nio/channels/spi/AbstractSelector;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLjava/nio/channels/spi/AbstractSelector;->begin()V -HSPLjava/nio/channels/spi/AbstractSelector;->cancelledKeys()Ljava/util/Set; -HSPLjava/nio/channels/spi/AbstractSelector;->close()V -HSPLjava/nio/channels/spi/AbstractSelector;->deregister(Ljava/nio/channels/spi/AbstractSelectionKey;)V -HSPLjava/nio/channels/spi/AbstractSelector;->end()V -HSPLjava/nio/channels/spi/AbstractSelector;->isOpen()Z -HSPLjava/nio/channels/spi/SelectorProvider$1;-><init>()V -HSPLjava/nio/channels/spi/SelectorProvider$1;->run()Ljava/lang/Object; -HSPLjava/nio/channels/spi/SelectorProvider$1;->run()Ljava/nio/channels/spi/SelectorProvider; -HSPLjava/nio/channels/spi/SelectorProvider;-><init>()V -HSPLjava/nio/channels/spi/SelectorProvider;->loadProviderAsService()Z -HSPLjava/nio/channels/spi/SelectorProvider;->loadProviderFromProperty()Z -HSPLjava/nio/channels/spi/SelectorProvider;->provider()Ljava/nio/channels/spi/SelectorProvider; -HSPLjava/nio/charset/Charset;-><init>(Ljava/lang/String;[Ljava/lang/String;)V -HSPLjava/nio/charset/Charset;->aliases()Ljava/util/Set; -HSPLjava/nio/charset/Charset;->cache(Ljava/lang/String;Ljava/nio/charset/Charset;)V -HSPLjava/nio/charset/Charset;->checkName(Ljava/lang/String;)V -HSPLjava/nio/charset/Charset;->decode(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer; -HSPLjava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset; -HSPLjava/nio/charset/Charset;->displayName()Ljava/lang/String; -HSPLjava/nio/charset/Charset;->encode(Ljava/lang/String;)Ljava/nio/ByteBuffer; -HSPLjava/nio/charset/Charset;->encode(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer; -HSPLjava/nio/charset/Charset;->equals(Ljava/lang/Object;)Z -HSPLjava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLjava/nio/charset/Charset;->forNameUEE(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLjava/nio/charset/Charset;->isSupported(Ljava/lang/String;)Z -HSPLjava/nio/charset/Charset;->lookup(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLjava/nio/charset/Charset;->lookup2(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLjava/nio/charset/Charset;->name()Ljava/lang/String; -HSPLjava/nio/charset/CharsetDecoder;-><init>(Ljava/nio/charset/Charset;FF)V -HSPLjava/nio/charset/CharsetDecoder;-><init>(Ljava/nio/charset/Charset;FFLjava/lang/String;)V -HSPLjava/nio/charset/CharsetDecoder;->averageCharsPerByte()F -HSPLjava/nio/charset/CharsetDecoder;->charset()Ljava/nio/charset/Charset; -HSPLjava/nio/charset/CharsetDecoder;->decode(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer; -HSPLjava/nio/charset/CharsetDecoder;->decode(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetDecoder;->flush(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetDecoder;->implFlush(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetDecoder;->implOnMalformedInput(Ljava/nio/charset/CodingErrorAction;)V -HSPLjava/nio/charset/CharsetDecoder;->implOnUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)V -HSPLjava/nio/charset/CharsetDecoder;->implReset()V -HSPLjava/nio/charset/CharsetDecoder;->malformedInputAction()Ljava/nio/charset/CodingErrorAction; -HSPLjava/nio/charset/CharsetDecoder;->maxCharsPerByte()F -HSPLjava/nio/charset/CharsetDecoder;->onMalformedInput(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder; -HSPLjava/nio/charset/CharsetDecoder;->onUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder; -HSPLjava/nio/charset/CharsetDecoder;->replaceWith(Ljava/lang/String;)Ljava/nio/charset/CharsetDecoder; -HSPLjava/nio/charset/CharsetDecoder;->replacement()Ljava/lang/String; -HSPLjava/nio/charset/CharsetDecoder;->reset()Ljava/nio/charset/CharsetDecoder; -HSPLjava/nio/charset/CharsetDecoder;->unmappableCharacterAction()Ljava/nio/charset/CodingErrorAction; -HSPLjava/nio/charset/CharsetEncoder;-><init>(Ljava/nio/charset/Charset;FF)V -HSPLjava/nio/charset/CharsetEncoder;-><init>(Ljava/nio/charset/Charset;FF[B)V -HSPLjava/nio/charset/CharsetEncoder;-><init>(Ljava/nio/charset/Charset;FF[BZ)V -HSPLjava/nio/charset/CharsetEncoder;->averageBytesPerChar()F -HSPLjava/nio/charset/CharsetEncoder;->canEncode(Ljava/lang/CharSequence;)Z -HSPLjava/nio/charset/CharsetEncoder;->canEncode(Ljava/nio/CharBuffer;)Z -HSPLjava/nio/charset/CharsetEncoder;->charset()Ljava/nio/charset/Charset; -HSPLjava/nio/charset/CharsetEncoder;->encode(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer; -HSPLjava/nio/charset/CharsetEncoder;->encode(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;Z)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetEncoder;->flush(Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetEncoder;->implFlush(Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult; -HSPLjava/nio/charset/CharsetEncoder;->implOnMalformedInput(Ljava/nio/charset/CodingErrorAction;)V -HSPLjava/nio/charset/CharsetEncoder;->implOnUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)V -HSPLjava/nio/charset/CharsetEncoder;->implReplaceWith([B)V -HSPLjava/nio/charset/CharsetEncoder;->malformedInputAction()Ljava/nio/charset/CodingErrorAction; -HSPLjava/nio/charset/CharsetEncoder;->maxBytesPerChar()F -HSPLjava/nio/charset/CharsetEncoder;->onMalformedInput(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetEncoder; -HSPLjava/nio/charset/CharsetEncoder;->onUnmappableCharacter(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetEncoder; -HSPLjava/nio/charset/CharsetEncoder;->replaceWith([B)Ljava/nio/charset/CharsetEncoder; -HSPLjava/nio/charset/CharsetEncoder;->replacement()[B -HSPLjava/nio/charset/CharsetEncoder;->reset()Ljava/nio/charset/CharsetEncoder; -HSPLjava/nio/charset/CharsetEncoder;->unmappableCharacterAction()Ljava/nio/charset/CodingErrorAction; -HSPLjava/nio/charset/CoderResult;->isError()Z -HSPLjava/nio/charset/CoderResult;->isOverflow()Z -HSPLjava/nio/charset/CoderResult;->isUnderflow()Z -HSPLjava/nio/file/AccessMode;->values()[Ljava/nio/file/AccessMode; -HSPLjava/nio/file/FileAlreadyExistsException;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/nio/file/FileSystemException;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/nio/file/FileSystems;->getDefault()Ljava/nio/file/FileSystem; -HSPLjava/nio/file/Files$AcceptAllFilter;->accept(Ljava/lang/Object;)Z -HSPLjava/nio/file/Files$AcceptAllFilter;->accept(Ljava/nio/file/Path;)Z -HSPLjava/nio/file/Files;->exists(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z -HSPLjava/nio/file/Files;->followLinks([Ljava/nio/file/LinkOption;)Z -HSPLjava/nio/file/Files;->isAccessible(Ljava/nio/file/Path;[Ljava/nio/file/AccessMode;)Z -HSPLjava/nio/file/Files;->isRegularFile(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z -HSPLjava/nio/file/Files;->isWritable(Ljava/nio/file/Path;)Z -HSPLjava/nio/file/Files;->newBufferedReader(Ljava/nio/file/Path;Ljava/nio/charset/Charset;)Ljava/io/BufferedReader; -HSPLjava/nio/file/Files;->newByteChannel(Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/SeekableByteChannel; -HSPLjava/nio/file/Files;->newByteChannel(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/nio/channels/SeekableByteChannel; -HSPLjava/nio/file/Files;->newDirectoryStream(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream; -HSPLjava/nio/file/Files;->newInputStream(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream; -HSPLjava/nio/file/Files;->provider(Ljava/nio/file/Path;)Ljava/nio/file/spi/FileSystemProvider; -HSPLjava/nio/file/Files;->read(Ljava/io/InputStream;I)[B -HSPLjava/nio/file/Files;->readAllBytes(Ljava/nio/file/Path;)[B -HSPLjava/nio/file/Files;->readAttributes(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes; -HSPLjava/nio/file/NoSuchFileException;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/nio/file/Paths;->get(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path; -HSPLjava/nio/file/StandardOpenOption;->values()[Ljava/nio/file/StandardOpenOption; -HSPLjava/nio/file/attribute/FileTime;-><init>(JLjava/util/concurrent/TimeUnit;Ljava/time/Instant;)V -HSPLjava/nio/file/attribute/FileTime;->append(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder; -HSPLjava/nio/file/attribute/FileTime;->compareTo(Ljava/nio/file/attribute/FileTime;)I -HSPLjava/nio/file/attribute/FileTime;->equals(Ljava/lang/Object;)Z -HSPLjava/nio/file/attribute/FileTime;->from(JLjava/util/concurrent/TimeUnit;)Ljava/nio/file/attribute/FileTime; -HSPLjava/nio/file/attribute/FileTime;->toMillis()J -HSPLjava/nio/file/attribute/FileTime;->toString()Ljava/lang/String; -HSPLjava/nio/file/spi/FileSystemProvider;->newInputStream(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream; -HSPLjava/security/AccessControlContext;-><init>([Ljava/security/ProtectionDomain;)V -HSPLjava/security/AccessController;->doPrivileged(Ljava/security/PrivilegedAction;)Ljava/lang/Object; -HSPLjava/security/AccessController;->doPrivileged(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object; -HSPLjava/security/AccessController;->getContext()Ljava/security/AccessControlContext; -HSPLjava/security/AlgorithmParameters;->getInstance(Ljava/lang/String;)Ljava/security/AlgorithmParameters; -HSPLjava/security/AlgorithmParametersSpi;-><init>()V -HSPLjava/security/CodeSigner;-><init>(Ljava/security/cert/CertPath;Ljava/security/Timestamp;)V -HSPLjava/security/CodeSigner;->getSignerCertPath()Ljava/security/cert/CertPath; -HSPLjava/security/DigestInputStream;-><init>(Ljava/io/InputStream;Ljava/security/MessageDigest;)V -HSPLjava/security/DigestInputStream;->read([BII)I -HSPLjava/security/DigestInputStream;->setMessageDigest(Ljava/security/MessageDigest;)V -HSPLjava/security/GeneralSecurityException;-><init>(Ljava/lang/String;)V -HSPLjava/security/KeyFactory;-><init>(Ljava/lang/String;)V -HSPLjava/security/KeyFactory;-><init>(Ljava/security/KeyFactorySpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjava/security/KeyFactory;->generatePrivate(Ljava/security/spec/KeySpec;)Ljava/security/PrivateKey; -HSPLjava/security/KeyFactory;->generatePublic(Ljava/security/spec/KeySpec;)Ljava/security/PublicKey; -HSPLjava/security/KeyFactory;->getInstance(Ljava/lang/String;)Ljava/security/KeyFactory; -HSPLjava/security/KeyFactory;->nextSpi(Ljava/security/KeyFactorySpi;)Ljava/security/KeyFactorySpi; -HSPLjava/security/KeyFactorySpi;-><init>()V -HSPLjava/security/KeyPair;-><init>(Ljava/security/PublicKey;Ljava/security/PrivateKey;)V -HSPLjava/security/KeyPair;->getPrivate()Ljava/security/PrivateKey; -HSPLjava/security/KeyPair;->getPublic()Ljava/security/PublicKey; -HSPLjava/security/KeyPairGenerator;-><init>(Ljava/lang/String;)V -HSPLjava/security/KeyPairGenerator;->getInstance(Lsun/security/jca/GetInstance$Instance;Ljava/lang/String;)Ljava/security/KeyPairGenerator; -HSPLjava/security/KeyPairGeneratorSpi;-><init>()V -HSPLjava/security/KeyStore$1;-><init>()V -HSPLjava/security/KeyStore$1;->run()Ljava/lang/Object; -HSPLjava/security/KeyStore$1;->run()Ljava/lang/String; -HSPLjava/security/KeyStore$SecretKeyEntry;-><init>(Ljavax/crypto/SecretKey;)V -HSPLjava/security/KeyStore$SecretKeyEntry;->getSecretKey()Ljavax/crypto/SecretKey; -HSPLjava/security/KeyStore;-><init>(Ljava/security/KeyStoreSpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjava/security/KeyStore;->aliases()Ljava/util/Enumeration; -HSPLjava/security/KeyStore;->containsAlias(Ljava/lang/String;)Z -HSPLjava/security/KeyStore;->getCertificate(Ljava/lang/String;)Ljava/security/cert/Certificate; -HSPLjava/security/KeyStore;->getDefaultType()Ljava/lang/String; -HSPLjava/security/KeyStore;->getEntry(Ljava/lang/String;Ljava/security/KeyStore$ProtectionParameter;)Ljava/security/KeyStore$Entry; -HSPLjava/security/KeyStore;->getInstance(Ljava/lang/String;)Ljava/security/KeyStore; -HSPLjava/security/KeyStore;->getKey(Ljava/lang/String;[C)Ljava/security/Key; -HSPLjava/security/KeyStore;->getType()Ljava/lang/String; -HSPLjava/security/KeyStore;->load(Ljava/io/InputStream;[C)V -HSPLjava/security/KeyStore;->load(Ljava/security/KeyStore$LoadStoreParameter;)V -HSPLjava/security/KeyStore;->setCertificateEntry(Ljava/lang/String;Ljava/security/cert/Certificate;)V -HSPLjava/security/KeyStore;->size()I -HSPLjava/security/KeyStoreSpi;-><init>()V -HSPLjava/security/KeyStoreSpi;->engineGetEntry(Ljava/lang/String;Ljava/security/KeyStore$ProtectionParameter;)Ljava/security/KeyStore$Entry; -HSPLjava/security/KeyStoreSpi;->engineLoad(Ljava/io/InputStream;Ljava/security/KeyStore$LoadStoreParameter;)V -HSPLjava/security/KeyStoreSpi;->engineLoad(Ljava/security/KeyStore$LoadStoreParameter;)V -HSPLjava/security/MessageDigest$Delegate;-><init>(Ljava/security/MessageDigestSpi;Ljava/lang/String;)V -HSPLjava/security/MessageDigest$Delegate;->clone()Ljava/lang/Object; -HSPLjava/security/MessageDigest$Delegate;->engineDigest()[B -HSPLjava/security/MessageDigest$Delegate;->engineDigest([BII)I -HSPLjava/security/MessageDigest$Delegate;->engineGetDigestLength()I -HSPLjava/security/MessageDigest$Delegate;->engineReset()V -HSPLjava/security/MessageDigest$Delegate;->engineUpdate(B)V -HSPLjava/security/MessageDigest$Delegate;->engineUpdate(Ljava/nio/ByteBuffer;)V -HSPLjava/security/MessageDigest$Delegate;->engineUpdate([BII)V -HSPLjava/security/MessageDigest;-><init>(Ljava/lang/String;)V -HSPLjava/security/MessageDigest;->digest()[B -HSPLjava/security/MessageDigest;->digest([B)[B -HSPLjava/security/MessageDigest;->digest([BII)I -HSPLjava/security/MessageDigest;->getDigestLength()I -HSPLjava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest; -HSPLjava/security/MessageDigest;->getInstance(Ljava/lang/String;Ljava/lang/String;)Ljava/security/MessageDigest; -HSPLjava/security/MessageDigest;->getInstance(Ljava/lang/String;Ljava/security/Provider;)Ljava/security/MessageDigest; -HSPLjava/security/MessageDigest;->isEqual([B[B)Z -HSPLjava/security/MessageDigest;->reset()V -HSPLjava/security/MessageDigest;->update(B)V -HSPLjava/security/MessageDigest;->update(Ljava/nio/ByteBuffer;)V -HSPLjava/security/MessageDigest;->update([B)V -HSPLjava/security/MessageDigest;->update([BII)V -HSPLjava/security/MessageDigestSpi;-><init>()V -HSPLjava/security/MessageDigestSpi;->engineDigest([BII)I -HSPLjava/security/MessageDigestSpi;->engineUpdate(Ljava/nio/ByteBuffer;)V -HSPLjava/security/NoSuchAlgorithmException;-><init>(Ljava/lang/String;)V -HSPLjava/security/Provider$EngineDescription;->getConstructorParameterClass()Ljava/lang/Class; -HSPLjava/security/Provider$Service;->-$$Nest$fputalgorithm(Ljava/security/Provider$Service;Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->-$$Nest$fputclassName(Ljava/security/Provider$Service;Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->-$$Nest$fputtype(Ljava/security/Provider$Service;Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->-$$Nest$maddAlias(Ljava/security/Provider$Service;Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->-$$Nest$misValid(Ljava/security/Provider$Service;)Z -HSPLjava/security/Provider$Service;-><init>(Ljava/security/Provider;)V -HSPLjava/security/Provider$Service;-><init>(Ljava/security/Provider;Ljava/security/Provider$Service-IA;)V -HSPLjava/security/Provider$Service;->addAlias(Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->addAttribute(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/security/Provider$Service;->getAlgorithm()Ljava/lang/String; -HSPLjava/security/Provider$Service;->getAttribute(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/security/Provider$Service;->getClassName()Ljava/lang/String; -HSPLjava/security/Provider$Service;->getDefaultConstructor()Ljava/lang/reflect/Constructor; -HSPLjava/security/Provider$Service;->getImplClass()Ljava/lang/Class; -HSPLjava/security/Provider$Service;->getKeyClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/security/Provider$Service;->getProvider()Ljava/security/Provider; -HSPLjava/security/Provider$Service;->getType()Ljava/lang/String; -HSPLjava/security/Provider$Service;->hasKeyAttributes()Z -HSPLjava/security/Provider$Service;->isValid()Z -HSPLjava/security/Provider$Service;->newInstance(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/security/Provider$Service;->newInstanceOf()Ljava/lang/Object; -HSPLjava/security/Provider$Service;->newInstanceUtil(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/security/Provider$Service;->supportsKeyClass(Ljava/security/Key;)Z -HSPLjava/security/Provider$Service;->supportsKeyFormat(Ljava/security/Key;)Z -HSPLjava/security/Provider$Service;->supportsParameter(Ljava/lang/Object;)Z -HSPLjava/security/Provider$ServiceKey;-><init>(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLjava/security/Provider$ServiceKey;-><init>(Ljava/lang/String;Ljava/lang/String;ZLjava/security/Provider$ServiceKey-IA;)V -HSPLjava/security/Provider$ServiceKey;->equals(Ljava/lang/Object;)Z -HSPLjava/security/Provider$ServiceKey;->hashCode()I -HSPLjava/security/Provider$ServiceKey;->matches(Ljava/lang/String;Ljava/lang/String;)Z -HSPLjava/security/Provider$UString;-><init>(Ljava/lang/String;)V -HSPLjava/security/Provider$UString;->equals(Ljava/lang/Object;)Z -HSPLjava/security/Provider$UString;->hashCode()I -HSPLjava/security/Provider;->-$$Nest$sfgetEMPTY()[Ljava/lang/Object; -HSPLjava/security/Provider;->-$$Nest$sfgetknownEngines()Ljava/util/Map; -HSPLjava/security/Provider;-><init>(Ljava/lang/String;DLjava/lang/String;)V -HSPLjava/security/Provider;->check(Ljava/lang/String;)V -HSPLjava/security/Provider;->checkInitialized()V -HSPLjava/security/Provider;->checkLegacy(Ljava/lang/Object;)Z -HSPLjava/security/Provider;->ensureLegacyParsed()V -HSPLjava/security/Provider;->getEngineName(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/security/Provider;->getName()Ljava/lang/String; -HSPLjava/security/Provider;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/security/Provider;->getService(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service; -HSPLjava/security/Provider;->getServices()Ljava/util/Set; -HSPLjava/security/Provider;->getTypeAndAlgorithm(Ljava/lang/String;)[Ljava/lang/String; -HSPLjava/security/Provider;->implPut(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/security/Provider;->parseLegacyPut(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/security/Provider;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/security/Provider;->putId()V -HSPLjava/security/Provider;->removeInvalidServices(Ljava/util/Map;)V -HSPLjava/security/Provider;->warmUpServiceProvision()V -HSPLjava/security/SecureRandom;-><init>()V -HSPLjava/security/SecureRandom;-><init>(Ljava/security/SecureRandomSpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjava/security/SecureRandom;->getDefaultPRNG(Z[B)V -HSPLjava/security/SecureRandom;->getInstance(Ljava/lang/String;)Ljava/security/SecureRandom; -HSPLjava/security/SecureRandom;->getPrngAlgorithm()Ljava/lang/String; -HSPLjava/security/SecureRandom;->getProvider()Ljava/security/Provider; -HSPLjava/security/SecureRandom;->getThreadSafe()Z -HSPLjava/security/SecureRandom;->next(I)I -HSPLjava/security/SecureRandom;->nextBytes([B)V -HSPLjava/security/SecureRandom;->setSeed(J)V -HSPLjava/security/SecureRandomSpi;-><init>()V -HSPLjava/security/Security;->addProvider(Ljava/security/Provider;)I -HSPLjava/security/Security;->getImpl(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/Object; -HSPLjava/security/Security;->getImpl(Ljava/lang/String;Ljava/lang/String;Ljava/security/Provider;)[Ljava/lang/Object; -HSPLjava/security/Security;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/security/Security;->getProvider(Ljava/lang/String;)Ljava/security/Provider; -HSPLjava/security/Security;->getProviders()[Ljava/security/Provider; -HSPLjava/security/Security;->getSpiClass(Ljava/lang/String;)Ljava/lang/Class; -HSPLjava/security/Security;->getVersion()I -HSPLjava/security/Security;->increaseVersion()V -HSPLjava/security/Security;->insertProviderAt(Ljava/security/Provider;I)I -HSPLjava/security/Security;->invalidateSMCache(Ljava/lang/String;)V -HSPLjava/security/Security;->setProperty(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/security/Signature$Delegate;-><init>(Ljava/lang/String;)V -HSPLjava/security/Signature$Delegate;->chooseFirstProvider()V -HSPLjava/security/Signature$Delegate;->chooseProvider(ILjava/security/Key;Ljava/security/SecureRandom;)V -HSPLjava/security/Signature$Delegate;->engineInitSign(Ljava/security/PrivateKey;)V -HSPLjava/security/Signature$Delegate;->engineInitVerify(Ljava/security/PublicKey;)V -HSPLjava/security/Signature$Delegate;->engineSign()[B -HSPLjava/security/Signature$Delegate;->engineUpdate(Ljava/nio/ByteBuffer;)V -HSPLjava/security/Signature$Delegate;->engineUpdate([BII)V -HSPLjava/security/Signature$Delegate;->engineVerify([B)Z -HSPLjava/security/Signature$Delegate;->init(Ljava/security/SignatureSpi;ILjava/security/Key;Ljava/security/SecureRandom;)V -HSPLjava/security/Signature$Delegate;->newInstance(Ljava/security/Provider$Service;)Ljava/security/SignatureSpi; -HSPLjava/security/Signature;-><init>(Ljava/lang/String;)V -HSPLjava/security/Signature;->getInstance(Ljava/lang/String;)Ljava/security/Signature; -HSPLjava/security/Signature;->initSign(Ljava/security/PrivateKey;)V -HSPLjava/security/Signature;->initVerify(Ljava/security/PublicKey;)V -HSPLjava/security/Signature;->isSpi(Ljava/security/Provider$Service;)Z -HSPLjava/security/Signature;->sign()[B -HSPLjava/security/Signature;->update(Ljava/nio/ByteBuffer;)V -HSPLjava/security/Signature;->update([B)V -HSPLjava/security/Signature;->update([BII)V -HSPLjava/security/Signature;->verify([B)Z -HSPLjava/security/SignatureSpi;-><init>()V -HSPLjava/security/SignatureSpi;->engineUpdate(Ljava/nio/ByteBuffer;)V -HSPLjava/security/cert/CertPath;-><init>(Ljava/lang/String;)V -HSPLjava/security/cert/CertPath;->getType()Ljava/lang/String; -HSPLjava/security/cert/CertPathValidator;-><init>(Ljava/security/cert/CertPathValidatorSpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjava/security/cert/CertPathValidator;->getInstance(Ljava/lang/String;)Ljava/security/cert/CertPathValidator; -HSPLjava/security/cert/CertPathValidator;->getRevocationChecker()Ljava/security/cert/CertPathChecker; -HSPLjava/security/cert/CertPathValidator;->validate(Ljava/security/cert/CertPath;Ljava/security/cert/CertPathParameters;)Ljava/security/cert/CertPathValidatorResult; -HSPLjava/security/cert/CertPathValidatorSpi;-><init>()V -HSPLjava/security/cert/CertStore;-><init>(Ljava/security/cert/CertStoreSpi;Ljava/security/Provider;Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)V -HSPLjava/security/cert/CertStore;->getInstance(Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)Ljava/security/cert/CertStore; -HSPLjava/security/cert/CertStoreSpi;-><init>(Ljava/security/cert/CertStoreParameters;)V -HSPLjava/security/cert/Certificate;-><init>(Ljava/lang/String;)V -HSPLjava/security/cert/Certificate;->equals(Ljava/lang/Object;)Z -HSPLjava/security/cert/Certificate;->getType()Ljava/lang/String; -HSPLjava/security/cert/Certificate;->hashCode()I -HSPLjava/security/cert/CertificateFactory;-><init>(Ljava/security/cert/CertificateFactorySpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjava/security/cert/CertificateFactory;->generateCertPath(Ljava/util/List;)Ljava/security/cert/CertPath; -HSPLjava/security/cert/CertificateFactory;->generateCertificate(Ljava/io/InputStream;)Ljava/security/cert/Certificate; -HSPLjava/security/cert/CertificateFactory;->generateCertificates(Ljava/io/InputStream;)Ljava/util/Collection; -HSPLjava/security/cert/CertificateFactory;->getInstance(Ljava/lang/String;)Ljava/security/cert/CertificateFactory; -HSPLjava/security/cert/CertificateFactorySpi;-><init>()V -HSPLjava/security/cert/CollectionCertStoreParameters;-><init>(Ljava/util/Collection;)V -HSPLjava/security/cert/CollectionCertStoreParameters;->clone()Ljava/lang/Object; -HSPLjava/security/cert/PKIXCertPathChecker;-><init>()V -HSPLjava/security/cert/PKIXCertPathChecker;->clone()Ljava/lang/Object; -HSPLjava/security/cert/PKIXCertPathValidatorResult;-><init>(Ljava/security/cert/TrustAnchor;Ljava/security/cert/PolicyNode;Ljava/security/PublicKey;)V -HSPLjava/security/cert/PKIXParameters;-><init>(Ljava/util/Set;)V -HSPLjava/security/cert/PKIXParameters;->addCertPathChecker(Ljava/security/cert/PKIXCertPathChecker;)V -HSPLjava/security/cert/PKIXParameters;->getCertPathCheckers()Ljava/util/List; -HSPLjava/security/cert/PKIXParameters;->getCertStores()Ljava/util/List; -HSPLjava/security/cert/PKIXParameters;->getDate()Ljava/util/Date; -HSPLjava/security/cert/PKIXParameters;->getInitialPolicies()Ljava/util/Set; -HSPLjava/security/cert/PKIXParameters;->getPolicyQualifiersRejected()Z -HSPLjava/security/cert/PKIXParameters;->getSigProvider()Ljava/lang/String; -HSPLjava/security/cert/PKIXParameters;->getTargetCertConstraints()Ljava/security/cert/CertSelector; -HSPLjava/security/cert/PKIXParameters;->getTrustAnchors()Ljava/util/Set; -HSPLjava/security/cert/PKIXParameters;->isAnyPolicyInhibited()Z -HSPLjava/security/cert/PKIXParameters;->isExplicitPolicyRequired()Z -HSPLjava/security/cert/PKIXParameters;->isPolicyMappingInhibited()Z -HSPLjava/security/cert/PKIXParameters;->isRevocationEnabled()Z -HSPLjava/security/cert/PKIXParameters;->setCertPathCheckers(Ljava/util/List;)V -HSPLjava/security/cert/PKIXParameters;->setRevocationEnabled(Z)V -HSPLjava/security/cert/PKIXParameters;->setTrustAnchors(Ljava/util/Set;)V -HSPLjava/security/cert/PKIXRevocationChecker;-><init>()V -HSPLjava/security/cert/PKIXRevocationChecker;->clone()Ljava/security/cert/PKIXRevocationChecker; -HSPLjava/security/cert/PKIXRevocationChecker;->getOcspExtensions()Ljava/util/List; -HSPLjava/security/cert/PKIXRevocationChecker;->getOcspResponder()Ljava/net/URI; -HSPLjava/security/cert/PKIXRevocationChecker;->getOcspResponderCert()Ljava/security/cert/X509Certificate; -HSPLjava/security/cert/PKIXRevocationChecker;->getOcspResponses()Ljava/util/Map; -HSPLjava/security/cert/PKIXRevocationChecker;->getOptions()Ljava/util/Set; -HSPLjava/security/cert/PKIXRevocationChecker;->setOcspResponses(Ljava/util/Map;)V -HSPLjava/security/cert/PKIXRevocationChecker;->setOptions(Ljava/util/Set;)V -HSPLjava/security/cert/PolicyQualifierInfo;-><init>([B)V -HSPLjava/security/cert/TrustAnchor;-><init>(Ljava/security/cert/X509Certificate;[B)V -HSPLjava/security/cert/TrustAnchor;->getNameConstraints()[B -HSPLjava/security/cert/TrustAnchor;->getTrustedCert()Ljava/security/cert/X509Certificate; -HSPLjava/security/cert/TrustAnchor;->setNameConstraints([B)V -HSPLjava/security/cert/X509CertSelector;-><init>()V -HSPLjava/security/cert/X509CertSelector;->match(Ljava/security/cert/Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchAuthorityKeyID(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchBasicConstraints(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchExtendedKeyUsage(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchKeyUsage(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchNameConstraints(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchPathToNames(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchPolicy(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchPrivateKeyValid(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchSubjectAlternativeNames(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchSubjectKeyID(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->matchSubjectPublicKeyAlgID(Ljava/security/cert/X509Certificate;)Z -HSPLjava/security/cert/X509CertSelector;->setSubject(Ljavax/security/auth/x500/X500Principal;)V -HSPLjava/security/cert/X509Certificate;-><init>()V -HSPLjava/security/spec/DSAParameterSpec;-><init>(Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/BigInteger;)V -HSPLjava/security/spec/DSAParameterSpec;->getG()Ljava/math/BigInteger; -HSPLjava/security/spec/DSAParameterSpec;->getP()Ljava/math/BigInteger; -HSPLjava/security/spec/DSAParameterSpec;->getQ()Ljava/math/BigInteger; -HSPLjava/security/spec/ECFieldFp;-><init>(Ljava/math/BigInteger;)V -HSPLjava/security/spec/ECFieldFp;->getFieldSize()I -HSPLjava/security/spec/ECFieldFp;->getP()Ljava/math/BigInteger; -HSPLjava/security/spec/ECParameterSpec;-><init>(Ljava/security/spec/EllipticCurve;Ljava/security/spec/ECPoint;Ljava/math/BigInteger;I)V -HSPLjava/security/spec/ECParameterSpec;->getCurve()Ljava/security/spec/EllipticCurve; -HSPLjava/security/spec/ECParameterSpec;->getOrder()Ljava/math/BigInteger; -HSPLjava/security/spec/ECParameterSpec;->setCurveName(Ljava/lang/String;)V -HSPLjava/security/spec/ECPoint;-><init>(Ljava/math/BigInteger;Ljava/math/BigInteger;)V -HSPLjava/security/spec/ECPoint;->getAffineX()Ljava/math/BigInteger; -HSPLjava/security/spec/ECPoint;->getAffineY()Ljava/math/BigInteger; -HSPLjava/security/spec/EllipticCurve;-><init>(Ljava/security/spec/ECField;Ljava/math/BigInteger;Ljava/math/BigInteger;)V -HSPLjava/security/spec/EllipticCurve;-><init>(Ljava/security/spec/ECField;Ljava/math/BigInteger;Ljava/math/BigInteger;[B)V -HSPLjava/security/spec/EllipticCurve;->checkValidity(Ljava/security/spec/ECField;Ljava/math/BigInteger;Ljava/lang/String;)V -HSPLjava/security/spec/EllipticCurve;->getField()Ljava/security/spec/ECField; -HSPLjava/security/spec/EncodedKeySpec;-><init>([B)V -HSPLjava/security/spec/EncodedKeySpec;->getEncoded()[B -HSPLjava/security/spec/PKCS8EncodedKeySpec;-><init>([B)V -HSPLjava/security/spec/PKCS8EncodedKeySpec;->getEncoded()[B -HSPLjava/security/spec/X509EncodedKeySpec;-><init>([B)V -HSPLjava/security/spec/X509EncodedKeySpec;->getEncoded()[B -HSPLjava/text/AttributedCharacterIterator$Attribute;->equals(Ljava/lang/Object;)Z -HSPLjava/text/BreakIterator;-><init>()V -HSPLjava/text/BreakIterator;->getWordInstance(Ljava/util/Locale;)Ljava/text/BreakIterator; -HSPLjava/text/CalendarBuilder;-><init>()V -HSPLjava/text/CalendarBuilder;->establish(Ljava/util/Calendar;)Ljava/util/Calendar; -HSPLjava/text/CalendarBuilder;->isSet(I)Z -HSPLjava/text/CalendarBuilder;->set(II)Ljava/text/CalendarBuilder; -HSPLjava/text/CollationKey;-><init>(Ljava/lang/String;)V -HSPLjava/text/Collator;-><init>()V -HSPLjava/text/Collator;-><init>(Landroid/icu/text/Collator;)V -HSPLjava/text/Collator;->decompositionMode_Java_ICU(I)I -HSPLjava/text/Collator;->getInstance()Ljava/text/Collator; -HSPLjava/text/Collator;->getInstance(Ljava/util/Locale;)Ljava/text/Collator; -HSPLjava/text/Collator;->setDecomposition(I)V -HSPLjava/text/Collator;->setStrength(I)V -HSPLjava/text/DateFormat;-><init>()V -HSPLjava/text/DateFormat;->format(Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String; -HSPLjava/text/DateFormat;->get(IIILjava/util/Locale;)Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getDateInstance(ILjava/util/Locale;)Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getDateTimeInstance()Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getDateTimeInstance(IILjava/util/Locale;)Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getTimeInstance(ILjava/util/Locale;)Ljava/text/DateFormat; -HSPLjava/text/DateFormat;->getTimeZone()Ljava/util/TimeZone; -HSPLjava/text/DateFormat;->parse(Ljava/lang/String;)Ljava/util/Date; -HSPLjava/text/DateFormat;->set24HourTimePref(Ljava/lang/Boolean;)V -HSPLjava/text/DateFormat;->setCalendar(Ljava/util/Calendar;)V -HSPLjava/text/DateFormat;->setLenient(Z)V -HSPLjava/text/DateFormat;->setTimeZone(Ljava/util/TimeZone;)V -HSPLjava/text/DateFormatSymbols;-><init>(Ljava/util/Locale;)V -HSPLjava/text/DateFormatSymbols;->clone()Ljava/lang/Object; -HSPLjava/text/DateFormatSymbols;->copyMembers(Ljava/text/DateFormatSymbols;Ljava/text/DateFormatSymbols;)V -HSPLjava/text/DateFormatSymbols;->getAmPmStrings()[Ljava/lang/String; -HSPLjava/text/DateFormatSymbols;->getCachedInstance(Ljava/util/Locale;)Ljava/text/DateFormatSymbols; -HSPLjava/text/DateFormatSymbols;->getInstance(Ljava/util/Locale;)Ljava/text/DateFormatSymbols; -HSPLjava/text/DateFormatSymbols;->getInstanceRef(Ljava/util/Locale;)Ljava/text/DateFormatSymbols; -HSPLjava/text/DateFormatSymbols;->getMonths()[Ljava/lang/String; -HSPLjava/text/DateFormatSymbols;->getShortMonths()[Ljava/lang/String; -HSPLjava/text/DateFormatSymbols;->getShortWeekdays()[Ljava/lang/String; -HSPLjava/text/DateFormatSymbols;->getWeekdays()[Ljava/lang/String; -HSPLjava/text/DateFormatSymbols;->initializeData(Ljava/util/Locale;)V -HSPLjava/text/DateFormatSymbols;->initializeSupplementaryData(Llibcore/icu/LocaleData;)V -HSPLjava/text/DecimalFormat;-><init>(Ljava/lang/String;)V -HSPLjava/text/DecimalFormat;-><init>(Ljava/lang/String;Ljava/text/DecimalFormatSymbols;)V -HSPLjava/text/DecimalFormat;->clone()Ljava/lang/Object; -HSPLjava/text/DecimalFormat;->equals(Ljava/lang/Object;)Z -HSPLjava/text/DecimalFormat;->format(DLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/DecimalFormat;->format(JLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/DecimalFormat;->format(Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/DecimalFormat;->getDecimalFormatSymbols()Ljava/text/DecimalFormatSymbols; -HSPLjava/text/DecimalFormat;->getIcuFieldPosition(Ljava/text/FieldPosition;)Ljava/text/FieldPosition; -HSPLjava/text/DecimalFormat;->getMaximumFractionDigits()I -HSPLjava/text/DecimalFormat;->getMaximumIntegerDigits()I -HSPLjava/text/DecimalFormat;->getMinimumFractionDigits()I -HSPLjava/text/DecimalFormat;->getMinimumIntegerDigits()I -HSPLjava/text/DecimalFormat;->getNegativePrefix()Ljava/lang/String; -HSPLjava/text/DecimalFormat;->getNegativeSuffix()Ljava/lang/String; -HSPLjava/text/DecimalFormat;->getPositivePrefix()Ljava/lang/String; -HSPLjava/text/DecimalFormat;->getPositiveSuffix()Ljava/lang/String; -HSPLjava/text/DecimalFormat;->initPattern(Ljava/lang/String;)V -HSPLjava/text/DecimalFormat;->isParseBigDecimal()Z -HSPLjava/text/DecimalFormat;->isParseIntegerOnly()Z -HSPLjava/text/DecimalFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Number; -HSPLjava/text/DecimalFormat;->setDecimalSeparatorAlwaysShown(Z)V -HSPLjava/text/DecimalFormat;->setGroupingUsed(Z)V -HSPLjava/text/DecimalFormat;->setMaximumFractionDigits(I)V -HSPLjava/text/DecimalFormat;->setMaximumIntegerDigits(I)V -HSPLjava/text/DecimalFormat;->setMinimumFractionDigits(I)V -HSPLjava/text/DecimalFormat;->setMinimumIntegerDigits(I)V -HSPLjava/text/DecimalFormat;->setParseIntegerOnly(Z)V -HSPLjava/text/DecimalFormat;->toPattern()Ljava/lang/String; -HSPLjava/text/DecimalFormat;->updateFieldsFromIcu()V -HSPLjava/text/DecimalFormatSymbols;-><init>(Ljava/util/Locale;)V -HSPLjava/text/DecimalFormatSymbols;->clone()Ljava/lang/Object; -HSPLjava/text/DecimalFormatSymbols;->findNonFormatChar(Ljava/lang/String;C)C -HSPLjava/text/DecimalFormatSymbols;->fromIcuInstance(Landroid/icu/text/DecimalFormatSymbols;)Ljava/text/DecimalFormatSymbols; -HSPLjava/text/DecimalFormatSymbols;->getCurrency()Ljava/util/Currency; -HSPLjava/text/DecimalFormatSymbols;->getDecimalSeparator()C -HSPLjava/text/DecimalFormatSymbols;->getGroupingSeparator()C -HSPLjava/text/DecimalFormatSymbols;->getIcuDecimalFormatSymbols()Landroid/icu/text/DecimalFormatSymbols; -HSPLjava/text/DecimalFormatSymbols;->getInfinity()Ljava/lang/String; -HSPLjava/text/DecimalFormatSymbols;->getInstance(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols; -HSPLjava/text/DecimalFormatSymbols;->getNaN()Ljava/lang/String; -HSPLjava/text/DecimalFormatSymbols;->getZeroDigit()C -HSPLjava/text/DecimalFormatSymbols;->initialize(Ljava/util/Locale;)V -HSPLjava/text/DecimalFormatSymbols;->initializeCurrency(Ljava/util/Locale;)V -HSPLjava/text/DecimalFormatSymbols;->maybeStripMarkers(Ljava/lang/String;C)C -HSPLjava/text/DecimalFormatSymbols;->setCurrency(Ljava/util/Currency;)V -HSPLjava/text/DecimalFormatSymbols;->setCurrencySymbol(Ljava/lang/String;)V -HSPLjava/text/DecimalFormatSymbols;->setDecimalSeparator(C)V -HSPLjava/text/DecimalFormatSymbols;->setDigit(C)V -HSPLjava/text/DecimalFormatSymbols;->setExponentSeparator(Ljava/lang/String;)V -HSPLjava/text/DecimalFormatSymbols;->setGroupingSeparator(C)V -HSPLjava/text/DecimalFormatSymbols;->setInfinity(Ljava/lang/String;)V -HSPLjava/text/DecimalFormatSymbols;->setInternationalCurrencySymbol(Ljava/lang/String;)V -HSPLjava/text/DecimalFormatSymbols;->setMinusSign(C)V -HSPLjava/text/DecimalFormatSymbols;->setMonetaryDecimalSeparator(C)V -HSPLjava/text/DecimalFormatSymbols;->setMonetaryGroupingSeparator(C)V -HSPLjava/text/DecimalFormatSymbols;->setNaN(Ljava/lang/String;)V -HSPLjava/text/DecimalFormatSymbols;->setPatternSeparator(C)V -HSPLjava/text/DecimalFormatSymbols;->setPerMill(C)V -HSPLjava/text/DecimalFormatSymbols;->setPercent(C)V -HSPLjava/text/DecimalFormatSymbols;->setZeroDigit(C)V -HSPLjava/text/DontCareFieldPosition$1;->formatted(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V -HSPLjava/text/DontCareFieldPosition;->getFieldDelegate()Ljava/text/Format$FieldDelegate; -HSPLjava/text/FieldPosition$Delegate;-><init>(Ljava/text/FieldPosition;)V -HSPLjava/text/FieldPosition$Delegate;->formatted(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V -HSPLjava/text/FieldPosition;-><init>(I)V -HSPLjava/text/FieldPosition;->getBeginIndex()I -HSPLjava/text/FieldPosition;->getEndIndex()I -HSPLjava/text/FieldPosition;->getField()I -HSPLjava/text/FieldPosition;->getFieldAttribute()Ljava/text/Format$Field; -HSPLjava/text/FieldPosition;->getFieldDelegate()Ljava/text/Format$FieldDelegate; -HSPLjava/text/FieldPosition;->matchesField(Ljava/text/Format$Field;I)Z -HSPLjava/text/FieldPosition;->setBeginIndex(I)V -HSPLjava/text/FieldPosition;->setEndIndex(I)V -HSPLjava/text/Format;-><init>()V -HSPLjava/text/Format;->clone()Ljava/lang/Object; -HSPLjava/text/Format;->format(Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/text/IcuIteratorWrapper;-><init>(Landroid/icu/text/BreakIterator;)V -HSPLjava/text/IcuIteratorWrapper;->checkOffset(ILjava/text/CharacterIterator;)V -HSPLjava/text/IcuIteratorWrapper;->following(I)I -HSPLjava/text/IcuIteratorWrapper;->getText()Ljava/text/CharacterIterator; -HSPLjava/text/IcuIteratorWrapper;->isBoundary(I)Z -HSPLjava/text/IcuIteratorWrapper;->next()I -HSPLjava/text/IcuIteratorWrapper;->preceding(I)I -HSPLjava/text/IcuIteratorWrapper;->setText(Ljava/lang/String;)V -HSPLjava/text/MessageFormat;-><init>(Ljava/lang/String;)V -HSPLjava/text/MessageFormat;->applyPattern(Ljava/lang/String;)V -HSPLjava/text/MessageFormat;->format(Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/MessageFormat;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/text/MessageFormat;->makeFormat(II[Ljava/lang/StringBuilder;)V -HSPLjava/text/MessageFormat;->subformat([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer; -HSPLjava/text/Normalizer$Form$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLjava/text/Normalizer$Form$$ExternalSyntheticLambda2;->get()Ljava/lang/Object; -HSPLjava/text/Normalizer$Form$$ExternalSyntheticLambda3;->get()Ljava/lang/Object; -HSPLjava/text/Normalizer;->normalize(Ljava/lang/CharSequence;Ljava/text/Normalizer$Form;)Ljava/lang/String; -HSPLjava/text/NumberFormat;-><init>()V -HSPLjava/text/NumberFormat;->clone()Ljava/lang/Object; -HSPLjava/text/NumberFormat;->format(D)Ljava/lang/String; -HSPLjava/text/NumberFormat;->format(J)Ljava/lang/String; -HSPLjava/text/NumberFormat;->getInstance()Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getInstance(Ljava/util/Locale;)Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getInstance(Ljava/util/Locale;Ljava/text/NumberFormat$Style;I)Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getIntegerInstance()Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getIntegerInstance(Ljava/util/Locale;)Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getNumberInstance(Ljava/util/Locale;)Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->getPercentInstance()Ljava/text/NumberFormat; -HSPLjava/text/NumberFormat;->setMaximumFractionDigits(I)V -HSPLjava/text/NumberFormat;->setMaximumIntegerDigits(I)V -HSPLjava/text/NumberFormat;->setMinimumFractionDigits(I)V -HSPLjava/text/NumberFormat;->setMinimumIntegerDigits(I)V -HSPLjava/text/NumberFormat;->setParseIntegerOnly(Z)V -HSPLjava/text/ParseException;-><init>(Ljava/lang/String;I)V -HSPLjava/text/ParsePosition;-><init>(I)V -HSPLjava/text/ParsePosition;->getErrorIndex()I -HSPLjava/text/ParsePosition;->getIndex()I -HSPLjava/text/ParsePosition;->setIndex(I)V -HSPLjava/text/RuleBasedCollator;-><init>(Landroid/icu/text/RuleBasedCollator;)V -HSPLjava/text/RuleBasedCollator;-><init>(Ljava/lang/String;)V -HSPLjava/text/RuleBasedCollator;->collAsICU()Landroid/icu/text/RuleBasedCollator; -HSPLjava/text/RuleBasedCollator;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLjava/text/RuleBasedCollator;->getCollationKey(Ljava/lang/String;)Ljava/text/CollationKey; -HSPLjava/text/RuleBasedCollator;->getRules()Ljava/lang/String; -HSPLjava/text/SimpleDateFormat;-><init>()V -HSPLjava/text/SimpleDateFormat;-><init>(IILjava/util/Locale;)V -HSPLjava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V -HSPLjava/text/SimpleDateFormat;-><init>(Ljava/lang/String;Ljava/util/Locale;)V -HSPLjava/text/SimpleDateFormat;->checkNegativeNumberExpression()V -HSPLjava/text/SimpleDateFormat;->compile(Ljava/lang/String;)[C -HSPLjava/text/SimpleDateFormat;->encode(IILjava/lang/StringBuilder;)V -HSPLjava/text/SimpleDateFormat;->format(Ljava/util/Date;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer; -HSPLjava/text/SimpleDateFormat;->format(Ljava/util/Date;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer; -HSPLjava/text/SimpleDateFormat;->formatMonth(IIILjava/lang/StringBuffer;ZZII)Ljava/lang/String; -HSPLjava/text/SimpleDateFormat;->formatWeekday(IIZZ)Ljava/lang/String; -HSPLjava/text/SimpleDateFormat;->getDateTimeFormat(IILjava/util/Locale;)Ljava/lang/String; -HSPLjava/text/SimpleDateFormat;->getExtendedTimeZoneNames()Lcom/android/icu/text/ExtendedTimeZoneNames; -HSPLjava/text/SimpleDateFormat;->getTimeZoneNames()Landroid/icu/text/TimeZoneNames; -HSPLjava/text/SimpleDateFormat;->initialize(Ljava/util/Locale;)V -HSPLjava/text/SimpleDateFormat;->initializeCalendar(Ljava/util/Locale;)V -HSPLjava/text/SimpleDateFormat;->initializeDefaultCentury()V -HSPLjava/text/SimpleDateFormat;->isDigit(C)Z -HSPLjava/text/SimpleDateFormat;->matchString(Ljava/lang/String;II[Ljava/lang/String;Ljava/text/CalendarBuilder;)I -HSPLjava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date; -HSPLjava/text/SimpleDateFormat;->parseAmbiguousDatesAsAfter(Ljava/util/Date;)V -HSPLjava/text/SimpleDateFormat;->parseInternal(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date; -HSPLjava/text/SimpleDateFormat;->parseMonth(Ljava/lang/String;IIIILjava/text/ParsePosition;ZZLjava/text/CalendarBuilder;)I -HSPLjava/text/SimpleDateFormat;->parseWeekday(Ljava/lang/String;IIZZLjava/text/CalendarBuilder;)I -HSPLjava/text/SimpleDateFormat;->shouldObeyCount(II)Z -HSPLjava/text/SimpleDateFormat;->subFormat(IILjava/text/Format$FieldDelegate;Ljava/lang/StringBuffer;Z)V -HSPLjava/text/SimpleDateFormat;->subParse(Ljava/lang/String;IIIZ[ZLjava/text/ParsePosition;ZLjava/text/CalendarBuilder;)I -HSPLjava/text/SimpleDateFormat;->subParseNumericZone(Ljava/lang/String;IIIZLjava/text/CalendarBuilder;)I -HSPLjava/text/SimpleDateFormat;->toPattern()Ljava/lang/String; -HSPLjava/text/SimpleDateFormat;->useDateFormatSymbols()Z -HSPLjava/text/SimpleDateFormat;->zeroPaddingNumber(IIILjava/lang/StringBuffer;)V -HSPLjava/text/StringCharacterIterator;-><init>(Ljava/lang/String;)V -HSPLjava/text/StringCharacterIterator;-><init>(Ljava/lang/String;I)V -HSPLjava/text/StringCharacterIterator;-><init>(Ljava/lang/String;III)V -HSPLjava/text/StringCharacterIterator;->clone()Ljava/lang/Object; -HSPLjava/text/StringCharacterIterator;->current()C -HSPLjava/text/StringCharacterIterator;->first()C -HSPLjava/text/StringCharacterIterator;->getBeginIndex()I -HSPLjava/text/StringCharacterIterator;->getEndIndex()I -HSPLjava/text/StringCharacterIterator;->getIndex()I -HSPLjava/text/StringCharacterIterator;->next()C -HSPLjava/text/StringCharacterIterator;->previous()C -HSPLjava/text/StringCharacterIterator;->setIndex(I)C -HSPLjava/time/Clock$SystemClock;-><init>(Ljava/time/ZoneId;)V -HSPLjava/time/Clock$SystemClock;->getZone()Ljava/time/ZoneId; -HSPLjava/time/Clock$SystemClock;->instant()Ljava/time/Instant; -HSPLjava/time/Clock$SystemClock;->millis()J -HSPLjava/time/Clock;-><init>()V -HSPLjava/time/Clock;->currentInstant()Ljava/time/Instant; -HSPLjava/time/Clock;->systemDefaultZone()Ljava/time/Clock; -HSPLjava/time/Clock;->systemUTC()Ljava/time/Clock; -HSPLjava/time/DayOfWeek;->getValue()I -HSPLjava/time/DayOfWeek;->of(I)Ljava/time/DayOfWeek; -HSPLjava/time/DayOfWeek;->plus(J)Ljava/time/DayOfWeek; -HSPLjava/time/Duration;-><init>(JI)V -HSPLjava/time/Duration;->between(Ljava/time/temporal/Temporal;Ljava/time/temporal/Temporal;)Ljava/time/Duration; -HSPLjava/time/Duration;->compareTo(Ljava/time/Duration;)I -HSPLjava/time/Duration;->create(JI)Ljava/time/Duration; -HSPLjava/time/Duration;->getSeconds()J -HSPLjava/time/Duration;->isNegative()Z -HSPLjava/time/Duration;->ofDays(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofHours(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofMillis(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofMinutes(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofNanos(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofSeconds(J)Ljava/time/Duration; -HSPLjava/time/Duration;->ofSeconds(JJ)Ljava/time/Duration; -HSPLjava/time/Duration;->toMillis()J -HSPLjava/time/Duration;->toNanos()J -HSPLjava/time/Instant;-><init>(JI)V -HSPLjava/time/Instant;->atOffset(Ljava/time/ZoneOffset;)Ljava/time/OffsetDateTime; -HSPLjava/time/Instant;->atZone(Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; -HSPLjava/time/Instant;->compareTo(Ljava/time/Instant;)I -HSPLjava/time/Instant;->create(JI)Ljava/time/Instant; -HSPLjava/time/Instant;->from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/Instant; -HSPLjava/time/Instant;->getEpochSecond()J -HSPLjava/time/Instant;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/Instant;->getNano()I -HSPLjava/time/Instant;->isAfter(Ljava/time/Instant;)Z -HSPLjava/time/Instant;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/Instant;->minus(JLjava/time/temporal/TemporalUnit;)Ljava/time/Instant; -HSPLjava/time/Instant;->minusMillis(J)Ljava/time/Instant; -HSPLjava/time/Instant;->nanosUntil(Ljava/time/Instant;)J -HSPLjava/time/Instant;->now()Ljava/time/Instant; -HSPLjava/time/Instant;->ofEpochMilli(J)Ljava/time/Instant; -HSPLjava/time/Instant;->ofEpochSecond(JJ)Ljava/time/Instant; -HSPLjava/time/Instant;->plus(JJ)Ljava/time/Instant; -HSPLjava/time/Instant;->plus(JLjava/time/temporal/TemporalUnit;)Ljava/time/Instant; -HSPLjava/time/Instant;->plusMillis(J)Ljava/time/Instant; -HSPLjava/time/Instant;->plusSeconds(J)Ljava/time/Instant; -HSPLjava/time/Instant;->toEpochMilli()J -HSPLjava/time/Instant;->toString()Ljava/lang/String; -HSPLjava/time/Instant;->until(Ljava/time/temporal/Temporal;Ljava/time/temporal/TemporalUnit;)J -HSPLjava/time/LocalDate;-><init>(III)V -HSPLjava/time/LocalDate;->atTime(Ljava/time/LocalTime;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDate;->atTime(Ljava/time/LocalTime;)Ljava/time/chrono/ChronoLocalDateTime; -HSPLjava/time/LocalDate;->compareTo0(Ljava/time/LocalDate;)I -HSPLjava/time/LocalDate;->create(III)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->get(Ljava/time/temporal/TemporalField;)I -HSPLjava/time/LocalDate;->get0(Ljava/time/temporal/TemporalField;)I -HSPLjava/time/LocalDate;->getChronology()Ljava/time/chrono/Chronology; -HSPLjava/time/LocalDate;->getChronology()Ljava/time/chrono/IsoChronology; -HSPLjava/time/LocalDate;->getDayOfMonth()I -HSPLjava/time/LocalDate;->getDayOfWeek()Ljava/time/DayOfWeek; -HSPLjava/time/LocalDate;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/LocalDate;->getMonthValue()I -HSPLjava/time/LocalDate;->getYear()I -HSPLjava/time/LocalDate;->isLeapYear()Z -HSPLjava/time/LocalDate;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/LocalDate;->lengthOfMonth()I -HSPLjava/time/LocalDate;->minus(JLjava/time/temporal/TemporalUnit;)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->minus(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal; -HSPLjava/time/LocalDate;->of(III)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->of(ILjava/time/Month;I)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->ofEpochDay(J)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->plus(JLjava/time/temporal/TemporalUnit;)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->plus(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal; -HSPLjava/time/LocalDate;->plusDays(J)Ljava/time/LocalDate; -HSPLjava/time/LocalDate;->toEpochDay()J -HSPLjava/time/LocalDate;->toString()Ljava/lang/String; -HSPLjava/time/LocalDate;->with(Ljava/time/temporal/TemporalAdjuster;)Ljava/time/LocalDate; -HSPLjava/time/LocalDateTime;-><init>(Ljava/time/LocalDate;Ljava/time/LocalTime;)V -HSPLjava/time/LocalDateTime;->atOffset(Ljava/time/ZoneOffset;)Ljava/time/OffsetDateTime; -HSPLjava/time/LocalDateTime;->atZone(Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; -HSPLjava/time/LocalDateTime;->atZone(Ljava/time/ZoneId;)Ljava/time/chrono/ChronoZonedDateTime; -HSPLjava/time/LocalDateTime;->compareTo0(Ljava/time/LocalDateTime;)I -HSPLjava/time/LocalDateTime;->format(Ljava/time/format/DateTimeFormatter;)Ljava/lang/String; -HSPLjava/time/LocalDateTime;->getDayOfMonth()I -HSPLjava/time/LocalDateTime;->getHour()I -HSPLjava/time/LocalDateTime;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/LocalDateTime;->getMinute()I -HSPLjava/time/LocalDateTime;->getMonthValue()I -HSPLjava/time/LocalDateTime;->getNano()I -HSPLjava/time/LocalDateTime;->getSecond()I -HSPLjava/time/LocalDateTime;->getYear()I -HSPLjava/time/LocalDateTime;->isAfter(Ljava/time/chrono/ChronoLocalDateTime;)Z -HSPLjava/time/LocalDateTime;->isBefore(Ljava/time/chrono/ChronoLocalDateTime;)Z -HSPLjava/time/LocalDateTime;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/LocalDateTime;->now()Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->now(Ljava/time/Clock;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->of(Ljava/time/LocalDate;Ljava/time/LocalTime;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->ofEpochSecond(JILjava/time/ZoneOffset;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->ofInstant(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->plusSeconds(J)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->plusWithOverflow(Ljava/time/LocalDate;JJJJI)Ljava/time/LocalDateTime; -HSPLjava/time/LocalDateTime;->query(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/LocalDateTime;->toLocalDate()Ljava/time/LocalDate; -HSPLjava/time/LocalDateTime;->toLocalDate()Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/LocalDateTime;->toLocalTime()Ljava/time/LocalTime; -HSPLjava/time/LocalDateTime;->toString()Ljava/lang/String; -HSPLjava/time/LocalDateTime;->with(Ljava/time/LocalDate;Ljava/time/LocalTime;)Ljava/time/LocalDateTime; -HSPLjava/time/LocalTime$1;-><clinit>()V -HSPLjava/time/LocalTime;-><init>(IIII)V -HSPLjava/time/LocalTime;->create(IIII)Ljava/time/LocalTime; -HSPLjava/time/LocalTime;->get0(Ljava/time/temporal/TemporalField;)I -HSPLjava/time/LocalTime;->getHour()I -HSPLjava/time/LocalTime;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/LocalTime;->getMinute()I -HSPLjava/time/LocalTime;->getNano()I -HSPLjava/time/LocalTime;->getSecond()I -HSPLjava/time/LocalTime;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/LocalTime;->of(IIII)Ljava/time/LocalTime; -HSPLjava/time/LocalTime;->ofNanoOfDay(J)Ljava/time/LocalTime; -HSPLjava/time/LocalTime;->ofSecondOfDay(J)Ljava/time/LocalTime; -HSPLjava/time/LocalTime;->toNanoOfDay()J -HSPLjava/time/LocalTime;->toSecondOfDay()I -HSPLjava/time/LocalTime;->toString()Ljava/lang/String; -HSPLjava/time/Month;->getValue()I -HSPLjava/time/Month;->length(Z)I -HSPLjava/time/Month;->maxLength()I -HSPLjava/time/Month;->of(I)Ljava/time/Month; -HSPLjava/time/Month;->plus(J)Ljava/time/Month; -HSPLjava/time/Month;->values()[Ljava/time/Month; -HSPLjava/time/OffsetDateTime;-><clinit>()V -HSPLjava/time/OffsetDateTime;-><init>(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;)V -HSPLjava/time/OffsetDateTime;->getYear()I -HSPLjava/time/OffsetDateTime;->of(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;)Ljava/time/OffsetDateTime; -HSPLjava/time/OffsetDateTime;->ofInstant(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime; -HSPLjava/time/OffsetDateTime;->toLocalDateTime()Ljava/time/LocalDateTime; -HSPLjava/time/Period;->isZero()Z -HSPLjava/time/ZoneId;-><init>()V -HSPLjava/time/ZoneId;->equals(Ljava/lang/Object;)Z -HSPLjava/time/ZoneId;->from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZoneId; -HSPLjava/time/ZoneId;->of(Ljava/lang/String;)Ljava/time/ZoneId; -HSPLjava/time/ZoneId;->of(Ljava/lang/String;Ljava/util/Map;)Ljava/time/ZoneId; -HSPLjava/time/ZoneId;->of(Ljava/lang/String;Z)Ljava/time/ZoneId; -HSPLjava/time/ZoneId;->systemDefault()Ljava/time/ZoneId; -HSPLjava/time/ZoneId;->toString()Ljava/lang/String; -HSPLjava/time/ZoneOffset;-><init>(I)V -HSPLjava/time/ZoneOffset;->buildId(I)Ljava/lang/String; -HSPLjava/time/ZoneOffset;->equals(Ljava/lang/Object;)Z -HSPLjava/time/ZoneOffset;->getId()Ljava/lang/String; -HSPLjava/time/ZoneOffset;->getRules()Ljava/time/zone/ZoneRules; -HSPLjava/time/ZoneOffset;->getTotalSeconds()I -HSPLjava/time/ZoneOffset;->ofTotalSeconds(I)Ljava/time/ZoneOffset; -HSPLjava/time/ZoneRegion;-><init>(Ljava/lang/String;Ljava/time/zone/ZoneRules;)V -HSPLjava/time/ZoneRegion;->checkName(Ljava/lang/String;)V -HSPLjava/time/ZoneRegion;->getId()Ljava/lang/String; -HSPLjava/time/ZoneRegion;->getRules()Ljava/time/zone/ZoneRules; -HSPLjava/time/ZoneRegion;->ofId(Ljava/lang/String;Z)Ljava/time/ZoneRegion; -HSPLjava/time/ZonedDateTime$1;-><clinit>()V -HSPLjava/time/ZonedDateTime;-><init>(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;Ljava/time/ZoneId;)V -HSPLjava/time/ZonedDateTime;->create(JILjava/time/ZoneId;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/ZonedDateTime;->getOffset()Ljava/time/ZoneOffset; -HSPLjava/time/ZonedDateTime;->getZone()Ljava/time/ZoneId; -HSPLjava/time/ZonedDateTime;->now(Ljava/time/Clock;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->of(Ljava/time/LocalDateTime;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->ofInstant(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->ofLocal(Ljava/time/LocalDateTime;Ljava/time/ZoneId;Ljava/time/ZoneOffset;)Ljava/time/ZonedDateTime; -HSPLjava/time/ZonedDateTime;->query(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/ZonedDateTime;->toLocalDate()Ljava/time/LocalDate; -HSPLjava/time/ZonedDateTime;->toLocalDate()Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/ZonedDateTime;->toLocalTime()Ljava/time/LocalTime; -HSPLjava/time/chrono/AbstractChronology;->equals(Ljava/lang/Object;)Z -HSPLjava/time/chrono/AbstractChronology;->resolveDate(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/chrono/ChronoLocalDate;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/chrono/ChronoLocalDateTime;->getChronology()Ljava/time/chrono/Chronology;+]Ljava/time/chrono/ChronoLocalDate;Ljava/time/LocalDate;]Ljava/time/chrono/ChronoLocalDateTime;Ljava/time/LocalDateTime; -HSPLjava/time/chrono/ChronoLocalDateTime;->query(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/chrono/ChronoLocalDateTime;->toEpochSecond(Ljava/time/ZoneOffset;)J+]Ljava/time/chrono/ChronoLocalDate;Ljava/time/LocalDate;]Ljava/time/chrono/ChronoLocalDateTime;Ljava/time/LocalDateTime; -HSPLjava/time/chrono/ChronoZonedDateTime;->getChronology()Ljava/time/chrono/Chronology;+]Ljava/time/chrono/ChronoLocalDate;Ljava/time/LocalDate;]Ljava/time/chrono/ChronoZonedDateTime;Ljava/time/ZonedDateTime; -HSPLjava/time/chrono/ChronoZonedDateTime;->query(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/chrono/ChronoZonedDateTime;->toEpochSecond()J+]Ljava/time/chrono/ChronoLocalDate;Ljava/time/LocalDate;]Ljava/time/chrono/ChronoZonedDateTime;Ljava/time/ZonedDateTime; -HSPLjava/time/chrono/ChronoZonedDateTime;->toInstant()Ljava/time/Instant;+]Ljava/time/chrono/ChronoZonedDateTime;Ljava/time/ZonedDateTime; -HSPLjava/time/chrono/IsoChronology;->isLeapYear(J)Z -HSPLjava/time/chrono/IsoChronology;->resolveDate(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/LocalDate; -HSPLjava/time/chrono/IsoChronology;->resolveDate(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/chrono/IsoChronology;->resolveProlepticMonth(Ljava/util/Map;Ljava/time/format/ResolverStyle;)V -HSPLjava/time/chrono/IsoChronology;->resolveYMD(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/LocalDate; -HSPLjava/time/chrono/IsoChronology;->resolveYMD(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/chrono/IsoChronology;->resolveYearOfEra(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/LocalDate; -HSPLjava/time/chrono/IsoChronology;->resolveYearOfEra(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate; -HSPLjava/time/format/DateTimeFormatter;-><init>(Ljava/time/format/DateTimeFormatterBuilder$CompositePrinterParser;Ljava/util/Locale;Ljava/time/format/DecimalStyle;Ljava/time/format/ResolverStyle;Ljava/util/Set;Ljava/time/chrono/Chronology;Ljava/time/ZoneId;)V -HSPLjava/time/format/DateTimeFormatter;->format(Ljava/time/temporal/TemporalAccessor;)Ljava/lang/String; -HSPLjava/time/format/DateTimeFormatter;->formatTo(Ljava/time/temporal/TemporalAccessor;Ljava/lang/Appendable;)V -HSPLjava/time/format/DateTimeFormatter;->getChronology()Ljava/time/chrono/Chronology; -HSPLjava/time/format/DateTimeFormatter;->getDecimalStyle()Ljava/time/format/DecimalStyle; -HSPLjava/time/format/DateTimeFormatter;->getZone()Ljava/time/ZoneId; -HSPLjava/time/format/DateTimeFormatter;->parse(Ljava/lang/CharSequence;Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/format/DateTimeFormatter;->parseResolved0(Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/time/temporal/TemporalAccessor; -HSPLjava/time/format/DateTimeFormatter;->parseUnresolved0(Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/time/format/DateTimeParseContext; -HSPLjava/time/format/DateTimeFormatterBuilder$CharLiteralPrinterParser;-><init>(C)V -HSPLjava/time/format/DateTimeFormatterBuilder$CharLiteralPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$CharLiteralPrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$CompositePrinterParser;-><init>(Ljava/util/List;Z)V -HSPLjava/time/format/DateTimeFormatterBuilder$CompositePrinterParser;-><init>([Ljava/time/format/DateTimeFormatterBuilder$DateTimePrinterParser;Z)V -HSPLjava/time/format/DateTimeFormatterBuilder$CompositePrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$CompositePrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$FractionPrinterParser;-><init>(Ljava/time/temporal/TemporalField;IIZ)V -HSPLjava/time/format/DateTimeFormatterBuilder$FractionPrinterParser;->convertFromFraction(Ljava/math/BigDecimal;)J -HSPLjava/time/format/DateTimeFormatterBuilder$FractionPrinterParser;->convertToFraction(J)Ljava/math/BigDecimal; -HSPLjava/time/format/DateTimeFormatterBuilder$FractionPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$FractionPrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$InstantPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;-><init>(Ljava/time/temporal/TemporalField;IILjava/time/format/SignStyle;)V -HSPLjava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;->getValue(Ljava/time/format/DateTimePrintContext;J)J -HSPLjava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;->setValue(Ljava/time/format/DateTimeParseContext;JII)I -HSPLjava/time/format/DateTimeFormatterBuilder$OffsetIdPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$OffsetIdPrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$SettingsParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$SettingsParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder$ZoneIdPrinterParser;->format(Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z -HSPLjava/time/format/DateTimeFormatterBuilder$ZoneIdPrinterParser;->getTree(Ljava/time/format/DateTimeParseContext;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree; -HSPLjava/time/format/DateTimeFormatterBuilder$ZoneIdPrinterParser;->parse(Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I -HSPLjava/time/format/DateTimeFormatterBuilder;-><init>()V -HSPLjava/time/format/DateTimeFormatterBuilder;->appendFraction(Ljava/time/temporal/TemporalField;IIZ)Ljava/time/format/DateTimeFormatterBuilder; -HSPLjava/time/format/DateTimeFormatterBuilder;->appendInternal(Ljava/time/format/DateTimeFormatterBuilder$DateTimePrinterParser;)I -HSPLjava/time/format/DateTimeFormatterBuilder;->appendLiteral(C)Ljava/time/format/DateTimeFormatterBuilder; -HSPLjava/time/format/DateTimeFormatterBuilder;->appendValue(Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;)Ljava/time/format/DateTimeFormatterBuilder; -HSPLjava/time/format/DateTimeFormatterBuilder;->appendValue(Ljava/time/temporal/TemporalField;I)Ljava/time/format/DateTimeFormatterBuilder; -HSPLjava/time/format/DateTimeFormatterBuilder;->optionalEnd()Ljava/time/format/DateTimeFormatterBuilder; -HSPLjava/time/format/DateTimeFormatterBuilder;->toFormatter()Ljava/time/format/DateTimeFormatter; -HSPLjava/time/format/DateTimeFormatterBuilder;->toFormatter(Ljava/util/Locale;)Ljava/time/format/DateTimeFormatter; -HSPLjava/time/format/DateTimeFormatterBuilder;->toFormatter(Ljava/util/Locale;Ljava/time/format/ResolverStyle;Ljava/time/chrono/Chronology;)Ljava/time/format/DateTimeFormatter; -HSPLjava/time/format/DateTimeParseContext;-><init>(Ljava/time/format/DateTimeFormatter;)V -HSPLjava/time/format/DateTimeParseContext;->charEquals(CC)Z -HSPLjava/time/format/DateTimeParseContext;->currentParsed()Ljava/time/format/Parsed; -HSPLjava/time/format/DateTimeParseContext;->endOptional(Z)V -HSPLjava/time/format/DateTimeParseContext;->getDecimalStyle()Ljava/time/format/DecimalStyle; -HSPLjava/time/format/DateTimeParseContext;->getEffectiveChronology()Ljava/time/chrono/Chronology; -HSPLjava/time/format/DateTimeParseContext;->isCaseSensitive()Z -HSPLjava/time/format/DateTimeParseContext;->isStrict()Z -HSPLjava/time/format/DateTimeParseContext;->setCaseSensitive(Z)V -HSPLjava/time/format/DateTimeParseContext;->setParsed(Ljava/time/ZoneId;)V -HSPLjava/time/format/DateTimeParseContext;->setParsedField(Ljava/time/temporal/TemporalField;JII)I -HSPLjava/time/format/DateTimeParseContext;->startOptional()V -HSPLjava/time/format/DateTimeParseContext;->subSequenceEquals(Ljava/lang/CharSequence;ILjava/lang/CharSequence;II)Z -HSPLjava/time/format/DateTimeParseContext;->toResolved(Ljava/time/format/ResolverStyle;Ljava/util/Set;)Ljava/time/temporal/TemporalAccessor; -HSPLjava/time/format/DateTimePrintContext;-><init>(Ljava/time/temporal/TemporalAccessor;Ljava/time/format/DateTimeFormatter;)V -HSPLjava/time/format/DateTimePrintContext;->adjust(Ljava/time/temporal/TemporalAccessor;Ljava/time/format/DateTimeFormatter;)Ljava/time/temporal/TemporalAccessor; -HSPLjava/time/format/DateTimePrintContext;->getDecimalStyle()Ljava/time/format/DecimalStyle; -HSPLjava/time/format/DateTimePrintContext;->getValue(Ljava/time/temporal/TemporalField;)Ljava/lang/Long; -HSPLjava/time/format/DateTimeTextProvider$LocaleStore;-><init>(Ljava/util/Map;)V -HSPLjava/time/format/DecimalStyle;->convertNumberToI18N(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/time/format/DecimalStyle;->convertToDigit(C)I -HSPLjava/time/format/DecimalStyle;->getDecimalSeparator()C -HSPLjava/time/format/DecimalStyle;->getNegativeSign()C -HSPLjava/time/format/DecimalStyle;->getPositiveSign()C -HSPLjava/time/format/DecimalStyle;->getZeroDigit()C -HSPLjava/time/format/Parsed;-><init>()V -HSPLjava/time/format/Parsed;->copy()Ljava/time/format/Parsed; -HSPLjava/time/format/Parsed;->crossCheck()V -HSPLjava/time/format/Parsed;->crossCheck(Ljava/time/temporal/TemporalAccessor;)V -HSPLjava/time/format/Parsed;->getLong(Ljava/time/temporal/TemporalField;)J -HSPLjava/time/format/Parsed;->isSupported(Ljava/time/temporal/TemporalField;)Z -HSPLjava/time/format/Parsed;->query(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object; -HSPLjava/time/format/Parsed;->resolve(Ljava/time/format/ResolverStyle;Ljava/util/Set;)Ljava/time/temporal/TemporalAccessor; -HSPLjava/time/format/Parsed;->resolveDateFields()V -HSPLjava/time/format/Parsed;->resolveFields()V -HSPLjava/time/format/Parsed;->resolveFractional()V -HSPLjava/time/format/Parsed;->resolveInstant()V -HSPLjava/time/format/Parsed;->resolveInstantFields()V -HSPLjava/time/format/Parsed;->resolvePeriod()V -HSPLjava/time/format/Parsed;->resolveTime(JJJJ)V -HSPLjava/time/format/Parsed;->resolveTimeFields()V -HSPLjava/time/format/Parsed;->resolveTimeLenient()V -HSPLjava/time/format/Parsed;->updateCheckConflict(Ljava/time/LocalTime;Ljava/time/Period;)V -HSPLjava/time/format/Parsed;->updateCheckConflict(Ljava/time/chrono/ChronoLocalDate;)V -HSPLjava/time/format/SignStyle;->values()[Ljava/time/format/SignStyle; -HSPLjava/time/temporal/ChronoField;->checkValidIntValue(J)I -HSPLjava/time/temporal/ChronoField;->checkValidValue(J)J -HSPLjava/time/temporal/ChronoField;->isDateBased()Z -HSPLjava/time/temporal/ChronoField;->isTimeBased()Z -HSPLjava/time/temporal/ChronoField;->range()Ljava/time/temporal/ValueRange; -HSPLjava/time/temporal/ChronoField;->values()[Ljava/time/temporal/ChronoField; -HSPLjava/time/temporal/ChronoUnit;->getDuration()Ljava/time/Duration; -HSPLjava/time/temporal/ChronoUnit;->values()[Ljava/time/temporal/ChronoUnit; -HSPLjava/time/temporal/TemporalAccessor;->get(Ljava/time/temporal/TemporalField;)I+]Ljava/time/temporal/TemporalAccessor;Ljava/time/format/Parsed; -HSPLjava/time/temporal/TemporalAccessor;->range(Ljava/time/temporal/TemporalField;)Ljava/time/temporal/ValueRange;+]Ljava/time/temporal/TemporalAccessor;Ljava/time/format/Parsed; -HSPLjava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda11;-><init>(I)V -HSPLjava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda11;->adjustInto(Ljava/time/temporal/Temporal;)Ljava/time/temporal/Temporal; -HSPLjava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda1;->adjustInto(Ljava/time/temporal/Temporal;)Ljava/time/temporal/Temporal; -HSPLjava/time/temporal/TemporalAdjusters;->lambda$nextOrSame$10(ILjava/time/temporal/Temporal;)Ljava/time/temporal/Temporal; -HSPLjava/time/temporal/TemporalAdjusters;->lambda$previousOrSame$12(ILjava/time/temporal/Temporal;)Ljava/time/temporal/Temporal; -HSPLjava/time/temporal/TemporalAdjusters;->nextOrSame(Ljava/time/DayOfWeek;)Ljava/time/temporal/TemporalAdjuster; -HSPLjava/time/temporal/TemporalAdjusters;->previousOrSame(Ljava/time/DayOfWeek;)Ljava/time/temporal/TemporalAdjuster; -HSPLjava/time/temporal/TemporalField;->resolve(Ljava/util/Map;Ljava/time/temporal/TemporalAccessor;Ljava/time/format/ResolverStyle;)Ljava/time/temporal/TemporalAccessor; -HSPLjava/time/temporal/TemporalQueries;->chronology()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->localDate()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->localTime()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->offset()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->precision()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->zone()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/TemporalQueries;->zoneId()Ljava/time/temporal/TemporalQuery; -HSPLjava/time/temporal/ValueRange;->checkValidIntValue(JLjava/time/temporal/TemporalField;)I -HSPLjava/time/temporal/ValueRange;->checkValidValue(JLjava/time/temporal/TemporalField;)J -HSPLjava/time/temporal/ValueRange;->getMaximum()J -HSPLjava/time/temporal/ValueRange;->getMinimum()J -HSPLjava/time/temporal/ValueRange;->isFixed()Z -HSPLjava/time/temporal/ValueRange;->isIntValue()Z -HSPLjava/time/temporal/ValueRange;->isValidIntValue(J)Z -HSPLjava/time/temporal/ValueRange;->isValidValue(J)Z -HSPLjava/time/zone/IcuZoneRulesProvider$ZoneRulesCache;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/time/zone/IcuZoneRulesProvider$ZoneRulesCache;->create(Ljava/lang/String;)Ljava/time/zone/ZoneRules; -HSPLjava/time/zone/IcuZoneRulesProvider;->generateZoneRules(Ljava/lang/String;)Ljava/time/zone/ZoneRules; -HSPLjava/time/zone/IcuZoneRulesProvider;->provideRules(Ljava/lang/String;Z)Ljava/time/zone/ZoneRules; -HSPLjava/time/zone/ZoneOffsetTransition;-><init>(JLjava/time/ZoneOffset;Ljava/time/ZoneOffset;)V -HSPLjava/time/zone/ZoneOffsetTransition;-><init>(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)V -HSPLjava/time/zone/ZoneOffsetTransition;->getDateTimeAfter()Ljava/time/LocalDateTime; -HSPLjava/time/zone/ZoneOffsetTransition;->getDateTimeBefore()Ljava/time/LocalDateTime; -HSPLjava/time/zone/ZoneOffsetTransition;->getDurationSeconds()I -HSPLjava/time/zone/ZoneOffsetTransition;->getOffsetAfter()Ljava/time/ZoneOffset; -HSPLjava/time/zone/ZoneOffsetTransition;->getOffsetBefore()Ljava/time/ZoneOffset; -HSPLjava/time/zone/ZoneOffsetTransition;->isGap()Z -HSPLjava/time/zone/ZoneOffsetTransition;->of(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)Ljava/time/zone/ZoneOffsetTransition; -HSPLjava/time/zone/ZoneOffsetTransition;->toEpochSecond()J -HSPLjava/time/zone/ZoneOffsetTransitionRule$TimeDefinition;->createDateTime(Ljava/time/LocalDateTime;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)Ljava/time/LocalDateTime; -HSPLjava/time/zone/ZoneOffsetTransitionRule;-><init>(Ljava/time/Month;ILjava/time/DayOfWeek;Ljava/time/LocalTime;ZLjava/time/zone/ZoneOffsetTransitionRule$TimeDefinition;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)V -HSPLjava/time/zone/ZoneOffsetTransitionRule;->createTransition(I)Ljava/time/zone/ZoneOffsetTransition; -HSPLjava/time/zone/ZoneOffsetTransitionRule;->getOffsetAfter()Ljava/time/ZoneOffset; -HSPLjava/time/zone/ZoneOffsetTransitionRule;->of(Ljava/time/Month;ILjava/time/DayOfWeek;Ljava/time/LocalTime;ZLjava/time/zone/ZoneOffsetTransitionRule$TimeDefinition;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;)Ljava/time/zone/ZoneOffsetTransitionRule; -HSPLjava/time/zone/ZoneRules;-><init>(Ljava/time/ZoneOffset;)V -HSPLjava/time/zone/ZoneRules;-><init>(Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V -HSPLjava/time/zone/ZoneRules;->findOffsetInfo(Ljava/time/LocalDateTime;Ljava/time/zone/ZoneOffsetTransition;)Ljava/lang/Object; -HSPLjava/time/zone/ZoneRules;->findTransitionArray(I)[Ljava/time/zone/ZoneOffsetTransition; -HSPLjava/time/zone/ZoneRules;->findYear(JLjava/time/ZoneOffset;)I -HSPLjava/time/zone/ZoneRules;->getOffset(Ljava/time/Instant;)Ljava/time/ZoneOffset; -HSPLjava/time/zone/ZoneRules;->getOffsetInfo(Ljava/time/LocalDateTime;)Ljava/lang/Object; -HSPLjava/time/zone/ZoneRules;->getValidOffsets(Ljava/time/LocalDateTime;)Ljava/util/List; -HSPLjava/time/zone/ZoneRules;->of(Ljava/time/ZoneOffset;)Ljava/time/zone/ZoneRules; -HSPLjava/time/zone/ZoneRules;->of(Ljava/time/ZoneOffset;Ljava/time/ZoneOffset;Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/time/zone/ZoneRules; -HSPLjava/time/zone/ZoneRulesProvider;->getAvailableZoneIds()Ljava/util/Set; -HSPLjava/time/zone/ZoneRulesProvider;->getProvider(Ljava/lang/String;)Ljava/time/zone/ZoneRulesProvider; -HSPLjava/time/zone/ZoneRulesProvider;->getRules(Ljava/lang/String;Z)Ljava/time/zone/ZoneRules; -HSPLjava/util/AbstractCollection;-><init>()V -HSPLjava/util/AbstractCollection;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/AbstractCollection;->clear()V -HSPLjava/util/AbstractCollection;->contains(Ljava/lang/Object;)Z -HSPLjava/util/AbstractCollection;->containsAll(Ljava/util/Collection;)Z -HSPLjava/util/AbstractCollection;->isEmpty()Z -HSPLjava/util/AbstractCollection;->remove(Ljava/lang/Object;)Z -HSPLjava/util/AbstractCollection;->removeAll(Ljava/util/Collection;)Z -HSPLjava/util/AbstractCollection;->retainAll(Ljava/util/Collection;)Z -HSPLjava/util/AbstractCollection;->toArray()[Ljava/lang/Object; -HSPLjava/util/AbstractCollection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/AbstractCollection;->toString()Ljava/lang/String; -HSPLjava/util/AbstractList$Itr;-><init>(Ljava/util/AbstractList;)V -HSPLjava/util/AbstractList$Itr;-><init>(Ljava/util/AbstractList;Ljava/util/AbstractList$Itr-IA;)V -HSPLjava/util/AbstractList$Itr;->checkForComodification()V -HSPLjava/util/AbstractList$Itr;->hasNext()Z -HSPLjava/util/AbstractList$Itr;->next()Ljava/lang/Object; -HSPLjava/util/AbstractList$ListItr;-><init>(Ljava/util/AbstractList;I)V -HSPLjava/util/AbstractList$ListItr;->hasPrevious()Z -HSPLjava/util/AbstractList$ListItr;->nextIndex()I -HSPLjava/util/AbstractList$ListItr;->previous()Ljava/lang/Object; -HSPLjava/util/AbstractList$ListItr;->previousIndex()I -HSPLjava/util/AbstractList$RandomAccessSpliterator;-><init>(Ljava/util/List;)V -HSPLjava/util/AbstractList$RandomAccessSpliterator;->characteristics()I -HSPLjava/util/AbstractList$RandomAccessSpliterator;->checkAbstractListModCount(Ljava/util/AbstractList;I)V -HSPLjava/util/AbstractList$RandomAccessSpliterator;->estimateSize()J -HSPLjava/util/AbstractList$RandomAccessSpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/AbstractList$RandomAccessSpliterator;->get(Ljava/util/List;I)Ljava/lang/Object; -HSPLjava/util/AbstractList$RandomAccessSpliterator;->getFence()I -HSPLjava/util/AbstractList$RandomAccessSpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/AbstractList$RandomAccessSubList;-><init>(Ljava/util/AbstractList;II)V -HSPLjava/util/AbstractList$SubList$1;-><init>(Ljava/util/AbstractList$SubList;I)V -HSPLjava/util/AbstractList$SubList$1;->hasNext()Z -HSPLjava/util/AbstractList$SubList$1;->next()Ljava/lang/Object; -HSPLjava/util/AbstractList$SubList$1;->nextIndex()I -HSPLjava/util/AbstractList$SubList;-><init>(Ljava/util/AbstractList;II)V -HSPLjava/util/AbstractList$SubList;->checkForComodification()V -HSPLjava/util/AbstractList$SubList;->get(I)Ljava/lang/Object; -HSPLjava/util/AbstractList$SubList;->iterator()Ljava/util/Iterator; -HSPLjava/util/AbstractList$SubList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/AbstractList$SubList;->rangeCheckForAdd(I)V -HSPLjava/util/AbstractList$SubList;->size()I -HSPLjava/util/AbstractList;-><init>()V -HSPLjava/util/AbstractList;->add(Ljava/lang/Object;)Z -HSPLjava/util/AbstractList;->clear()V -HSPLjava/util/AbstractList;->equals(Ljava/lang/Object;)Z -HSPLjava/util/AbstractList;->hashCode()I -HSPLjava/util/AbstractList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/AbstractList;->iterator()Ljava/util/Iterator; -HSPLjava/util/AbstractList;->listIterator()Ljava/util/ListIterator; -HSPLjava/util/AbstractList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/AbstractList;->rangeCheckForAdd(I)V -HSPLjava/util/AbstractList;->subList(II)Ljava/util/List; -HSPLjava/util/AbstractList;->subListRangeCheck(III)V -HSPLjava/util/AbstractMap$2$1;-><init>(Ljava/util/AbstractMap$2;)V -HSPLjava/util/AbstractMap$2$1;->hasNext()Z -HSPLjava/util/AbstractMap$2$1;->next()Ljava/lang/Object; -HSPLjava/util/AbstractMap$2;-><init>(Ljava/util/AbstractMap;)V -HSPLjava/util/AbstractMap$2;->iterator()Ljava/util/Iterator; -HSPLjava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/AbstractMap$SimpleEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/AbstractMap$SimpleEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/AbstractMap$SimpleImmutableEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/AbstractMap$SimpleImmutableEntry;-><init>(Ljava/util/Map$Entry;)V -HSPLjava/util/AbstractMap$SimpleImmutableEntry;->equals(Ljava/lang/Object;)Z -HSPLjava/util/AbstractMap$SimpleImmutableEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/AbstractMap$SimpleImmutableEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/AbstractMap$SimpleImmutableEntry;->hashCode()I -HSPLjava/util/AbstractMap;-><init>()V -HSPLjava/util/AbstractMap;->clear()V -HSPLjava/util/AbstractMap;->clone()Ljava/lang/Object; -HSPLjava/util/AbstractMap;->eq(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/AbstractMap;->equals(Ljava/lang/Object;)Z -HSPLjava/util/AbstractMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/AbstractMap;->hashCode()I -HSPLjava/util/AbstractMap;->isEmpty()Z -HSPLjava/util/AbstractMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/AbstractMap;->size()I -HSPLjava/util/AbstractMap;->toString()Ljava/lang/String; -HSPLjava/util/AbstractMap;->values()Ljava/util/Collection; -HSPLjava/util/AbstractQueue;-><init>()V -HSPLjava/util/AbstractQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/AbstractQueue;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/AbstractQueue;->clear()V -HSPLjava/util/AbstractQueue;->remove()Ljava/lang/Object; -HSPLjava/util/AbstractSequentialList;-><init>()V -HSPLjava/util/AbstractSequentialList;->iterator()Ljava/util/Iterator; -HSPLjava/util/AbstractSet;-><init>()V -HSPLjava/util/AbstractSet;->equals(Ljava/lang/Object;)Z -HSPLjava/util/AbstractSet;->hashCode()I -HSPLjava/util/AbstractSet;->removeAll(Ljava/util/Collection;)Z -HSPLjava/util/ArrayDeque$$ExternalSyntheticLambda1;-><init>(Ljava/util/ArrayDeque;)V -HSPLjava/util/ArrayDeque$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V -HSPLjava/util/ArrayDeque$DeqIterator;-><init>(Ljava/util/ArrayDeque;)V -HSPLjava/util/ArrayDeque$DeqIterator;->hasNext()Z -HSPLjava/util/ArrayDeque$DeqIterator;->next()Ljava/lang/Object; -HSPLjava/util/ArrayDeque$DeqIterator;->postDelete(Z)V -HSPLjava/util/ArrayDeque$DeqIterator;->remove()V -HSPLjava/util/ArrayDeque$DescendingIterator;-><init>(Ljava/util/ArrayDeque;)V -HSPLjava/util/ArrayDeque$DescendingIterator;->next()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;-><init>()V -HSPLjava/util/ArrayDeque;-><init>(I)V -HSPLjava/util/ArrayDeque;-><init>(Ljava/util/Collection;)V -HSPLjava/util/ArrayDeque;->add(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/ArrayDeque;->addFirst(Ljava/lang/Object;)V -HSPLjava/util/ArrayDeque;->addLast(Ljava/lang/Object;)V -HSPLjava/util/ArrayDeque;->checkInvariants()V -HSPLjava/util/ArrayDeque;->circularClear([Ljava/lang/Object;II)V -HSPLjava/util/ArrayDeque;->clear()V -HSPLjava/util/ArrayDeque;->contains(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->copyElements(Ljava/util/Collection;)V -HSPLjava/util/ArrayDeque;->dec(II)I -HSPLjava/util/ArrayDeque;->delete(I)Z -HSPLjava/util/ArrayDeque;->descendingIterator()Ljava/util/Iterator; -HSPLjava/util/ArrayDeque;->elementAt([Ljava/lang/Object;I)Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/ArrayDeque;->getFirst()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->getLast()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->grow(I)V -HSPLjava/util/ArrayDeque;->inc(II)I -HSPLjava/util/ArrayDeque;->isEmpty()Z -HSPLjava/util/ArrayDeque;->iterator()Ljava/util/Iterator; -HSPLjava/util/ArrayDeque;->offer(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->offerLast(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->peek()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->peekFirst()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->peekLast()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->poll()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->pollFirst()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->pollLast()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->pop()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->push(Ljava/lang/Object;)V -HSPLjava/util/ArrayDeque;->remove()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->remove(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->removeFirst()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->removeFirstOccurrence(Ljava/lang/Object;)Z -HSPLjava/util/ArrayDeque;->removeLast()Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->size()I -HSPLjava/util/ArrayDeque;->sub(III)I -HSPLjava/util/ArrayDeque;->toArray()[Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->toArray(Ljava/lang/Class;)[Ljava/lang/Object; -HSPLjava/util/ArrayDeque;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/ArrayList$ArrayListSpliterator;-><init>(Ljava/util/ArrayList;III)V -HSPLjava/util/ArrayList$ArrayListSpliterator;->characteristics()I -HSPLjava/util/ArrayList$ArrayListSpliterator;->estimateSize()J -HSPLjava/util/ArrayList$ArrayListSpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/ArrayList$ArrayListSpliterator;->getFence()I -HSPLjava/util/ArrayList$ArrayListSpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/ArrayList$Itr;-><init>(Ljava/util/ArrayList;)V -HSPLjava/util/ArrayList$Itr;->checkForComodification()V -HSPLjava/util/ArrayList$Itr;->hasNext()Z -HSPLjava/util/ArrayList$Itr;->next()Ljava/lang/Object; -HSPLjava/util/ArrayList$Itr;->remove()V -HSPLjava/util/ArrayList$ListItr;-><init>(Ljava/util/ArrayList;I)V -HSPLjava/util/ArrayList$ListItr;->hasPrevious()Z -HSPLjava/util/ArrayList$ListItr;->nextIndex()I -HSPLjava/util/ArrayList$ListItr;->previous()Ljava/lang/Object; -HSPLjava/util/ArrayList$ListItr;->set(Ljava/lang/Object;)V -HSPLjava/util/ArrayList$SubList$1;-><init>(Ljava/util/ArrayList$SubList;I)V -HSPLjava/util/ArrayList$SubList$1;->checkForComodification()V -HSPLjava/util/ArrayList$SubList$1;->hasNext()Z -HSPLjava/util/ArrayList$SubList$1;->next()Ljava/lang/Object; -HSPLjava/util/ArrayList$SubList;->-$$Nest$fgetoffset(Ljava/util/ArrayList$SubList;)I -HSPLjava/util/ArrayList$SubList;->-$$Nest$fgetroot(Ljava/util/ArrayList$SubList;)Ljava/util/ArrayList; -HSPLjava/util/ArrayList$SubList;->-$$Nest$fgetsize(Ljava/util/ArrayList$SubList;)I -HSPLjava/util/ArrayList$SubList;-><init>(Ljava/util/ArrayList;II)V -HSPLjava/util/ArrayList$SubList;->checkForComodification()V -HSPLjava/util/ArrayList$SubList;->get(I)Ljava/lang/Object; -HSPLjava/util/ArrayList$SubList;->iterator()Ljava/util/Iterator; -HSPLjava/util/ArrayList$SubList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/ArrayList$SubList;->rangeCheckForAdd(I)V -HSPLjava/util/ArrayList$SubList;->removeRange(II)V -HSPLjava/util/ArrayList$SubList;->size()I -HSPLjava/util/ArrayList$SubList;->subList(II)Ljava/util/List; -HSPLjava/util/ArrayList$SubList;->toArray()[Ljava/lang/Object; -HSPLjava/util/ArrayList$SubList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/ArrayList;->-$$Nest$fgetsize(Ljava/util/ArrayList;)I -HSPLjava/util/ArrayList;-><init>()V -HSPLjava/util/ArrayList;-><init>(I)V -HSPLjava/util/ArrayList;-><init>(Ljava/util/Collection;)V -HSPLjava/util/ArrayList;->add(ILjava/lang/Object;)V -HSPLjava/util/ArrayList;->add(Ljava/lang/Object;)Z -HSPLjava/util/ArrayList;->add(Ljava/lang/Object;[Ljava/lang/Object;I)V -HSPLjava/util/ArrayList;->addAll(ILjava/util/Collection;)Z -HSPLjava/util/ArrayList;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/ArrayList;->batchRemove(Ljava/util/Collection;ZII)Z -HSPLjava/util/ArrayList;->checkForComodification(I)V -HSPLjava/util/ArrayList;->clear()V -HSPLjava/util/ArrayList;->clone()Ljava/lang/Object; -HSPLjava/util/ArrayList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/ArrayList;->elementAt([Ljava/lang/Object;I)Ljava/lang/Object; -HSPLjava/util/ArrayList;->elementData(I)Ljava/lang/Object; -HSPLjava/util/ArrayList;->ensureCapacity(I)V -HSPLjava/util/ArrayList;->equals(Ljava/lang/Object;)Z -HSPLjava/util/ArrayList;->equalsArrayList(Ljava/util/ArrayList;)Z -HSPLjava/util/ArrayList;->equalsRange(Ljava/util/List;II)Z -HSPLjava/util/ArrayList;->fastRemove([Ljava/lang/Object;I)V -HSPLjava/util/ArrayList;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/ArrayList;->get(I)Ljava/lang/Object; -HSPLjava/util/ArrayList;->grow()[Ljava/lang/Object; -HSPLjava/util/ArrayList;->grow(I)[Ljava/lang/Object; -HSPLjava/util/ArrayList;->hashCode()I -HSPLjava/util/ArrayList;->hashCodeRange(II)I -HSPLjava/util/ArrayList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/ArrayList;->indexOfRange(Ljava/lang/Object;II)I -HSPLjava/util/ArrayList;->isEmpty()Z -HSPLjava/util/ArrayList;->iterator()Ljava/util/Iterator; -HSPLjava/util/ArrayList;->lastIndexOf(Ljava/lang/Object;)I -HSPLjava/util/ArrayList;->listIterator()Ljava/util/ListIterator; -HSPLjava/util/ArrayList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/ArrayList;->rangeCheckForAdd(I)V -HSPLjava/util/ArrayList;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/util/ArrayList;->remove(I)Ljava/lang/Object; -HSPLjava/util/ArrayList;->remove(Ljava/lang/Object;)Z -HSPLjava/util/ArrayList;->removeAll(Ljava/util/Collection;)Z -HSPLjava/util/ArrayList;->removeIf(Ljava/util/function/Predicate;)Z -HSPLjava/util/ArrayList;->removeIf(Ljava/util/function/Predicate;II)Z -HSPLjava/util/ArrayList;->removeRange(II)V -HSPLjava/util/ArrayList;->retainAll(Ljava/util/Collection;)Z -HSPLjava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/ArrayList;->shiftTailOverGap([Ljava/lang/Object;II)V -HSPLjava/util/ArrayList;->size()I -HSPLjava/util/ArrayList;->sort(Ljava/util/Comparator;)V -HSPLjava/util/ArrayList;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/ArrayList;->subList(II)Ljava/util/List; -HSPLjava/util/ArrayList;->toArray()[Ljava/lang/Object; -HSPLjava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/ArrayList;->trimToSize()V -HSPLjava/util/ArrayList;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/Arrays$ArrayItr;-><init>([Ljava/lang/Object;)V -HSPLjava/util/Arrays$ArrayItr;->hasNext()Z -HSPLjava/util/Arrays$ArrayItr;->next()Ljava/lang/Object; -HSPLjava/util/Arrays$ArrayList;-><init>([Ljava/lang/Object;)V -HSPLjava/util/Arrays$ArrayList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Arrays$ArrayList;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/Arrays$ArrayList;->get(I)Ljava/lang/Object; -HSPLjava/util/Arrays$ArrayList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/Arrays$ArrayList;->iterator()Ljava/util/Iterator; -HSPLjava/util/Arrays$ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Arrays$ArrayList;->size()I -HSPLjava/util/Arrays$ArrayList;->sort(Ljava/util/Comparator;)V -HSPLjava/util/Arrays$ArrayList;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/Arrays$ArrayList;->toArray()[Ljava/lang/Object; -HSPLjava/util/Arrays$ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Arrays$ArrayList;->toArrayPreserveComponentType()[Ljava/lang/Object; -HSPLjava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/Arrays;->binarySearch([CC)I -HSPLjava/util/Arrays;->binarySearch([II)I -HSPLjava/util/Arrays;->binarySearch([IIII)I -HSPLjava/util/Arrays;->binarySearch([JIIJ)I -HSPLjava/util/Arrays;->binarySearch([JJ)I -HSPLjava/util/Arrays;->binarySearch([Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Arrays;->binarySearch([Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Comparator;)I -HSPLjava/util/Arrays;->binarySearch0([CIIC)I -HSPLjava/util/Arrays;->binarySearch0([IIII)I -HSPLjava/util/Arrays;->binarySearch0([JIIJ)I -HSPLjava/util/Arrays;->binarySearch0([Ljava/lang/Object;IILjava/lang/Object;)I -HSPLjava/util/Arrays;->binarySearch0([Ljava/lang/Object;IILjava/lang/Object;Ljava/util/Comparator;)I -HSPLjava/util/Arrays;->copyOf([BI)[B -HSPLjava/util/Arrays;->copyOf([CI)[C -HSPLjava/util/Arrays;->copyOf([DI)[D -HSPLjava/util/Arrays;->copyOf([FI)[F -HSPLjava/util/Arrays;->copyOf([II)[I -HSPLjava/util/Arrays;->copyOf([JI)[J -HSPLjava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object; -HSPLjava/util/Arrays;->copyOf([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object; -HSPLjava/util/Arrays;->copyOf([ZI)[Z -HSPLjava/util/Arrays;->copyOfRange([BII)[B -HSPLjava/util/Arrays;->copyOfRange([CII)[C -HSPLjava/util/Arrays;->copyOfRange([III)[I -HSPLjava/util/Arrays;->copyOfRange([JII)[J -HSPLjava/util/Arrays;->copyOfRange([Ljava/lang/Object;II)[Ljava/lang/Object; -HSPLjava/util/Arrays;->copyOfRange([Ljava/lang/Object;IILjava/lang/Class;)[Ljava/lang/Object; -HSPLjava/util/Arrays;->deepEquals([Ljava/lang/Object;[Ljava/lang/Object;)Z -HSPLjava/util/Arrays;->deepEquals0(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/Arrays;->deepHashCode([Ljava/lang/Object;)I -HSPLjava/util/Arrays;->deepToString([Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/util/Arrays;->deepToString([Ljava/lang/Object;Ljava/lang/StringBuilder;Ljava/util/Set;)V -HSPLjava/util/Arrays;->equals([B[B)Z -HSPLjava/util/Arrays;->equals([F[F)Z -HSPLjava/util/Arrays;->equals([I[I)Z -HSPLjava/util/Arrays;->equals([J[J)Z -HSPLjava/util/Arrays;->equals([Ljava/lang/Object;[Ljava/lang/Object;)Z -HSPLjava/util/Arrays;->fill([BB)V -HSPLjava/util/Arrays;->fill([BIIB)V -HSPLjava/util/Arrays;->fill([CC)V -HSPLjava/util/Arrays;->fill([CIIC)V -HSPLjava/util/Arrays;->fill([DD)V -HSPLjava/util/Arrays;->fill([FF)V -HSPLjava/util/Arrays;->fill([II)V -HSPLjava/util/Arrays;->fill([IIII)V -HSPLjava/util/Arrays;->fill([JIIJ)V -HSPLjava/util/Arrays;->fill([JJ)V -HSPLjava/util/Arrays;->fill([Ljava/lang/Object;IILjava/lang/Object;)V -HSPLjava/util/Arrays;->fill([Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/Arrays;->fill([SS)V -HSPLjava/util/Arrays;->fill([ZZ)V -HSPLjava/util/Arrays;->hashCode([B)I -HSPLjava/util/Arrays;->hashCode([F)I -HSPLjava/util/Arrays;->hashCode([I)I -HSPLjava/util/Arrays;->hashCode([J)I -HSPLjava/util/Arrays;->hashCode([Ljava/lang/Object;)I -HSPLjava/util/Arrays;->rangeCheck(III)V -HSPLjava/util/Arrays;->sort([C)V -HSPLjava/util/Arrays;->sort([F)V -HSPLjava/util/Arrays;->sort([I)V -HSPLjava/util/Arrays;->sort([III)V -HSPLjava/util/Arrays;->sort([J)V -HSPLjava/util/Arrays;->sort([Ljava/lang/Object;)V -HSPLjava/util/Arrays;->sort([Ljava/lang/Object;II)V -HSPLjava/util/Arrays;->sort([Ljava/lang/Object;IILjava/util/Comparator;)V -HSPLjava/util/Arrays;->sort([Ljava/lang/Object;Ljava/util/Comparator;)V -HSPLjava/util/Arrays;->spliterator([III)Ljava/util/Spliterator$OfInt; -HSPLjava/util/Arrays;->spliterator([Ljava/lang/Object;II)Ljava/util/Spliterator; -HSPLjava/util/Arrays;->stream([I)Ljava/util/stream/IntStream; -HSPLjava/util/Arrays;->stream([III)Ljava/util/stream/IntStream; -HSPLjava/util/Arrays;->stream([Ljava/lang/Object;)Ljava/util/stream/Stream; -HSPLjava/util/Arrays;->stream([Ljava/lang/Object;II)Ljava/util/stream/Stream; -HSPLjava/util/Arrays;->toString([B)Ljava/lang/String; -HSPLjava/util/Arrays;->toString([F)Ljava/lang/String; -HSPLjava/util/Arrays;->toString([I)Ljava/lang/String; -HSPLjava/util/Arrays;->toString([J)Ljava/lang/String; -HSPLjava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/util/Base64$Decoder;->decode(Ljava/lang/String;)[B -HSPLjava/util/Base64$Decoder;->decode([B)[B -HSPLjava/util/Base64$Decoder;->decode0([BII[B)I -HSPLjava/util/Base64;->getDecoder()Ljava/util/Base64$Decoder; -HSPLjava/util/Base64;->getEncoder()Ljava/util/Base64$Encoder; -HSPLjava/util/Base64;->getMimeDecoder()Ljava/util/Base64$Decoder; -HSPLjava/util/BitSet;-><init>()V -HSPLjava/util/BitSet;-><init>(I)V -HSPLjava/util/BitSet;-><init>([J)V -HSPLjava/util/BitSet;->andNot(Ljava/util/BitSet;)V -HSPLjava/util/BitSet;->cardinality()I -HSPLjava/util/BitSet;->checkInvariants()V -HSPLjava/util/BitSet;->checkRange(II)V -HSPLjava/util/BitSet;->clear()V -HSPLjava/util/BitSet;->clear(I)V -HSPLjava/util/BitSet;->clone()Ljava/lang/Object; -HSPLjava/util/BitSet;->ensureCapacity(I)V -HSPLjava/util/BitSet;->equals(Ljava/lang/Object;)Z -HSPLjava/util/BitSet;->expandTo(I)V -HSPLjava/util/BitSet;->flip(II)V -HSPLjava/util/BitSet;->get(I)Z -HSPLjava/util/BitSet;->initWords(I)V -HSPLjava/util/BitSet;->isEmpty()Z -HSPLjava/util/BitSet;->length()I -HSPLjava/util/BitSet;->nextClearBit(I)I -HSPLjava/util/BitSet;->nextSetBit(I)I -HSPLjava/util/BitSet;->or(Ljava/util/BitSet;)V -HSPLjava/util/BitSet;->recalculateWordsInUse()V -HSPLjava/util/BitSet;->set(I)V -HSPLjava/util/BitSet;->set(II)V -HSPLjava/util/BitSet;->set(IIZ)V -HSPLjava/util/BitSet;->set(IZ)V -HSPLjava/util/BitSet;->size()I -HSPLjava/util/BitSet;->toString()Ljava/lang/String; -HSPLjava/util/BitSet;->trimToSize()V -HSPLjava/util/BitSet;->valueOf(Ljava/nio/ByteBuffer;)Ljava/util/BitSet; -HSPLjava/util/BitSet;->valueOf([J)Ljava/util/BitSet; -HSPLjava/util/BitSet;->wordIndex(I)I -HSPLjava/util/Calendar;-><init>()V -HSPLjava/util/Calendar;-><init>(Ljava/util/TimeZone;Ljava/util/Locale;)V -HSPLjava/util/Calendar;->aggregateStamp(II)I -HSPLjava/util/Calendar;->before(Ljava/lang/Object;)Z -HSPLjava/util/Calendar;->clear()V -HSPLjava/util/Calendar;->clone()Ljava/lang/Object; -HSPLjava/util/Calendar;->compareTo(J)I -HSPLjava/util/Calendar;->compareTo(Ljava/util/Calendar;)I -HSPLjava/util/Calendar;->complete()V -HSPLjava/util/Calendar;->createCalendar(Ljava/util/TimeZone;Ljava/util/Locale;)Ljava/util/Calendar; -HSPLjava/util/Calendar;->defaultTimeZone(Ljava/util/Locale;)Ljava/util/TimeZone; -HSPLjava/util/Calendar;->get(I)I -HSPLjava/util/Calendar;->getFirstDayOfWeek()I -HSPLjava/util/Calendar;->getInstance()Ljava/util/Calendar; -HSPLjava/util/Calendar;->getInstance(Ljava/util/Locale;)Ljava/util/Calendar; -HSPLjava/util/Calendar;->getInstance(Ljava/util/TimeZone;)Ljava/util/Calendar; -HSPLjava/util/Calendar;->getInstance(Ljava/util/TimeZone;Ljava/util/Locale;)Ljava/util/Calendar; -HSPLjava/util/Calendar;->getMillisOf(Ljava/util/Calendar;)J -HSPLjava/util/Calendar;->getMinimalDaysInFirstWeek()I -HSPLjava/util/Calendar;->getSetStateFields()I -HSPLjava/util/Calendar;->getTime()Ljava/util/Date; -HSPLjava/util/Calendar;->getTimeInMillis()J -HSPLjava/util/Calendar;->getTimeZone()Ljava/util/TimeZone; -HSPLjava/util/Calendar;->getZone()Ljava/util/TimeZone; -HSPLjava/util/Calendar;->internalGet(I)I -HSPLjava/util/Calendar;->internalSet(II)V -HSPLjava/util/Calendar;->isExternallySet(I)Z -HSPLjava/util/Calendar;->isFieldSet(II)Z -HSPLjava/util/Calendar;->isFullyNormalized()Z -HSPLjava/util/Calendar;->isLenient()Z -HSPLjava/util/Calendar;->isPartiallyNormalized()Z -HSPLjava/util/Calendar;->isSet(I)Z -HSPLjava/util/Calendar;->selectFields()I -HSPLjava/util/Calendar;->set(II)V -HSPLjava/util/Calendar;->set(III)V -HSPLjava/util/Calendar;->set(IIIIII)V -HSPLjava/util/Calendar;->setFieldsComputed(I)V -HSPLjava/util/Calendar;->setFieldsNormalized(I)V -HSPLjava/util/Calendar;->setLenient(Z)V -HSPLjava/util/Calendar;->setTime(Ljava/util/Date;)V -HSPLjava/util/Calendar;->setTimeInMillis(J)V -HSPLjava/util/Calendar;->setTimeZone(Ljava/util/TimeZone;)V -HSPLjava/util/Calendar;->setWeekCountData(Ljava/util/Locale;)V -HSPLjava/util/Calendar;->setZoneShared(Z)V -HSPLjava/util/Calendar;->updateTime()V -HSPLjava/util/Collection;->removeIf(Ljava/util/function/Predicate;)Z+]Ljava/util/Collection;megamorphic_types]Ljava/util/Iterator;megamorphic_types]Ljava/util/function/Predicate;Lcom/android/internal/telephony/data/DataNetworkController$$ExternalSyntheticLambda32;,Lcom/android/internal/telephony/data/DataNetworkController$$ExternalSyntheticLambda43; -HSPLjava/util/Collection;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/Collection;->stream()Ljava/util/stream/Stream;+]Ljava/util/Collection;megamorphic_types -HSPLjava/util/Collections$1;-><init>(Ljava/lang/Object;)V -HSPLjava/util/Collections$1;->hasNext()Z -HSPLjava/util/Collections$1;->next()Ljava/lang/Object; -HSPLjava/util/Collections$3;-><init>(Ljava/util/Collection;)V -HSPLjava/util/Collections$3;->hasMoreElements()Z -HSPLjava/util/Collections$3;->nextElement()Ljava/lang/Object; -HSPLjava/util/Collections$CopiesList;-><init>(ILjava/lang/Object;)V -HSPLjava/util/Collections$CopiesList;->get(I)Ljava/lang/Object; -HSPLjava/util/Collections$CopiesList;->size()I -HSPLjava/util/Collections$CopiesList;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$EmptyEnumeration;->hasMoreElements()Z -HSPLjava/util/Collections$EmptyIterator;->hasNext()Z -HSPLjava/util/Collections$EmptyList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$EmptyList;->containsAll(Ljava/util/Collection;)Z -HSPLjava/util/Collections$EmptyList;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$EmptyList;->isEmpty()Z -HSPLjava/util/Collections$EmptyList;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$EmptyList;->listIterator()Ljava/util/ListIterator; -HSPLjava/util/Collections$EmptyList;->readResolve()Ljava/lang/Object; -HSPLjava/util/Collections$EmptyList;->size()I -HSPLjava/util/Collections$EmptyList;->sort(Ljava/util/Comparator;)V -HSPLjava/util/Collections$EmptyList;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/Collections$EmptyList;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$EmptyList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Collections$EmptyMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Collections$EmptyMap;->entrySet()Ljava/util/Set; -HSPLjava/util/Collections$EmptyMap;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$EmptyMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$EmptyMap;->isEmpty()Z -HSPLjava/util/Collections$EmptyMap;->keySet()Ljava/util/Set; -HSPLjava/util/Collections$EmptyMap;->size()I -HSPLjava/util/Collections$EmptyMap;->values()Ljava/util/Collection; -HSPLjava/util/Collections$EmptySet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$EmptySet;->containsAll(Ljava/util/Collection;)Z -HSPLjava/util/Collections$EmptySet;->isEmpty()Z -HSPLjava/util/Collections$EmptySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$EmptySet;->size()I -HSPLjava/util/Collections$EmptySet;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$EmptySet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Collections$ReverseComparator2;-><init>(Ljava/util/Comparator;)V -HSPLjava/util/Collections$ReverseComparator2;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Collections$ReverseComparator;->compare(Ljava/lang/Comparable;Ljava/lang/Comparable;)I -HSPLjava/util/Collections$ReverseComparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Collections$SetFromMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/Collections$SetFromMap;->add(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SetFromMap;->clear()V -HSPLjava/util/Collections$SetFromMap;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SetFromMap;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/Collections$SetFromMap;->isEmpty()Z -HSPLjava/util/Collections$SetFromMap;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$SetFromMap;->remove(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SetFromMap;->size()I -HSPLjava/util/Collections$SetFromMap;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$SetFromMap;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Collections$SingletonList;-><init>(Ljava/lang/Object;)V -HSPLjava/util/Collections$SingletonList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SingletonList;->get(I)Ljava/lang/Object; -HSPLjava/util/Collections$SingletonList;->hashCode()I -HSPLjava/util/Collections$SingletonList;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$SingletonList;->size()I -HSPLjava/util/Collections$SingletonMap;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/Collections$SingletonMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SingletonMap;->entrySet()Ljava/util/Set; -HSPLjava/util/Collections$SingletonMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SingletonMap;->isEmpty()Z -HSPLjava/util/Collections$SingletonMap;->keySet()Ljava/util/Set; -HSPLjava/util/Collections$SingletonMap;->size()I -HSPLjava/util/Collections$SingletonMap;->values()Ljava/util/Collection; -HSPLjava/util/Collections$SingletonSet;-><init>(Ljava/lang/Object;)V -HSPLjava/util/Collections$SingletonSet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SingletonSet;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$SingletonSet;->size()I -HSPLjava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;)V -HSPLjava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;Ljava/lang/Object;)V -HSPLjava/util/Collections$SynchronizedCollection;->add(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SynchronizedCollection;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/Collections$SynchronizedCollection;->clear()V -HSPLjava/util/Collections$SynchronizedCollection;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SynchronizedCollection;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/Collections$SynchronizedCollection;->isEmpty()Z -HSPLjava/util/Collections$SynchronizedCollection;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$SynchronizedCollection;->remove(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SynchronizedCollection;->size()I -HSPLjava/util/Collections$SynchronizedCollection;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedCollection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedCollection;->toString()Ljava/lang/String; -HSPLjava/util/Collections$SynchronizedList;-><init>(Ljava/util/List;)V -HSPLjava/util/Collections$SynchronizedList;->get(I)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/Collections$SynchronizedMap;->clear()V -HSPLjava/util/Collections$SynchronizedMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Collections$SynchronizedMap;->entrySet()Ljava/util/Set; -HSPLjava/util/Collections$SynchronizedMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;->getOrDefault(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;->isEmpty()Z -HSPLjava/util/Collections$SynchronizedMap;->keySet()Ljava/util/Set; -HSPLjava/util/Collections$SynchronizedMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/Collections$SynchronizedMap;->putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$SynchronizedMap;->size()I -HSPLjava/util/Collections$SynchronizedMap;->values()Ljava/util/Collection; -HSPLjava/util/Collections$SynchronizedRandomAccessList;-><init>(Ljava/util/List;)V -HSPLjava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;)V -HSPLjava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;Ljava/lang/Object;)V -HSPLjava/util/Collections$SynchronizedSet;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableCollection$1;-><init>(Ljava/util/Collections$UnmodifiableCollection;)V -HSPLjava/util/Collections$UnmodifiableCollection$1;->hasNext()Z -HSPLjava/util/Collections$UnmodifiableCollection$1;->next()Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableCollection;-><init>(Ljava/util/Collection;)V -HSPLjava/util/Collections$UnmodifiableCollection;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableCollection;->containsAll(Ljava/util/Collection;)Z -HSPLjava/util/Collections$UnmodifiableCollection;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/Collections$UnmodifiableCollection;->isEmpty()Z -HSPLjava/util/Collections$UnmodifiableCollection;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$UnmodifiableCollection;->size()I -HSPLjava/util/Collections$UnmodifiableCollection;->stream()Ljava/util/stream/Stream; -HSPLjava/util/Collections$UnmodifiableCollection;->toArray()[Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableCollection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableCollection;->toString()Ljava/lang/String; -HSPLjava/util/Collections$UnmodifiableList$1;-><init>(Ljava/util/Collections$UnmodifiableList;I)V -HSPLjava/util/Collections$UnmodifiableList$1;->hasNext()Z -HSPLjava/util/Collections$UnmodifiableList$1;->next()Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableList$1;->nextIndex()I -HSPLjava/util/Collections$UnmodifiableList;-><init>(Ljava/util/List;)V -HSPLjava/util/Collections$UnmodifiableList;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableList;->get(I)Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableList;->hashCode()I -HSPLjava/util/Collections$UnmodifiableList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/Collections$UnmodifiableList;->listIterator()Ljava/util/ListIterator; -HSPLjava/util/Collections$UnmodifiableList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;-><init>(Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;)V -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;->hasNext()Z -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;->next()Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;->next()Ljava/util/Map$Entry; -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;-><init>(Ljava/util/Map$Entry;)V -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;-><init>(Ljava/util/Set;)V -HSPLjava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/Collections$UnmodifiableMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/Collections$UnmodifiableMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableMap;->entrySet()Ljava/util/Set; -HSPLjava/util/Collections$UnmodifiableMap;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableMap;->forEach(Ljava/util/function/BiConsumer;)V -HSPLjava/util/Collections$UnmodifiableMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Collections$UnmodifiableMap;->hashCode()I -HSPLjava/util/Collections$UnmodifiableMap;->isEmpty()Z -HSPLjava/util/Collections$UnmodifiableMap;->keySet()Ljava/util/Set; -HSPLjava/util/Collections$UnmodifiableMap;->size()I -HSPLjava/util/Collections$UnmodifiableMap;->toString()Ljava/lang/String; -HSPLjava/util/Collections$UnmodifiableMap;->values()Ljava/util/Collection; -HSPLjava/util/Collections$UnmodifiableRandomAccessList;-><init>(Ljava/util/List;)V -HSPLjava/util/Collections$UnmodifiableRandomAccessList;->subList(II)Ljava/util/List; -HSPLjava/util/Collections$UnmodifiableSet;-><init>(Ljava/util/Set;)V -HSPLjava/util/Collections$UnmodifiableSet;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Collections$UnmodifiableSortedMap;-><init>(Ljava/util/SortedMap;)V -HSPLjava/util/Collections$UnmodifiableSortedSet;-><init>(Ljava/util/SortedSet;)V -HSPLjava/util/Collections;->addAll(Ljava/util/Collection;[Ljava/lang/Object;)Z -HSPLjava/util/Collections;->binarySearch(Ljava/util/List;Ljava/lang/Object;)I -HSPLjava/util/Collections;->binarySearch(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I -HSPLjava/util/Collections;->disjoint(Ljava/util/Collection;Ljava/util/Collection;)Z -HSPLjava/util/Collections;->emptyEnumeration()Ljava/util/Enumeration; -HSPLjava/util/Collections;->emptyIterator()Ljava/util/Iterator; -HSPLjava/util/Collections;->emptyList()Ljava/util/List; -HSPLjava/util/Collections;->emptyListIterator()Ljava/util/ListIterator; -HSPLjava/util/Collections;->emptyMap()Ljava/util/Map; -HSPLjava/util/Collections;->emptySet()Ljava/util/Set; -HSPLjava/util/Collections;->enumeration(Ljava/util/Collection;)Ljava/util/Enumeration; -HSPLjava/util/Collections;->eq(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/Collections;->indexedBinarySearch(Ljava/util/List;Ljava/lang/Object;)I -HSPLjava/util/Collections;->indexedBinarySearch(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I -HSPLjava/util/Collections;->list(Ljava/util/Enumeration;)Ljava/util/ArrayList; -HSPLjava/util/Collections;->max(Ljava/util/Collection;)Ljava/lang/Object; -HSPLjava/util/Collections;->max(Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object; -HSPLjava/util/Collections;->min(Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object; -HSPLjava/util/Collections;->nCopies(ILjava/lang/Object;)Ljava/util/List; -HSPLjava/util/Collections;->newSetFromMap(Ljava/util/Map;)Ljava/util/Set; -HSPLjava/util/Collections;->reverse(Ljava/util/List;)V -HSPLjava/util/Collections;->reverseOrder()Ljava/util/Comparator; -HSPLjava/util/Collections;->reverseOrder(Ljava/util/Comparator;)Ljava/util/Comparator; -HSPLjava/util/Collections;->rotate(Ljava/util/List;I)V -HSPLjava/util/Collections;->rotate1(Ljava/util/List;I)V -HSPLjava/util/Collections;->shuffle(Ljava/util/List;)V -HSPLjava/util/Collections;->shuffle(Ljava/util/List;Ljava/util/Random;)V -HSPLjava/util/Collections;->shuffle(Ljava/util/List;Ljava/util/random/RandomGenerator;)V -HSPLjava/util/Collections;->singleton(Ljava/lang/Object;)Ljava/util/Set; -HSPLjava/util/Collections;->singletonIterator(Ljava/lang/Object;)Ljava/util/Iterator; -HSPLjava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/Collections;->singletonMap(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map; -HSPLjava/util/Collections;->sort(Ljava/util/List;)V -HSPLjava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V -HSPLjava/util/Collections;->swap(Ljava/util/List;II)V -HSPLjava/util/Collections;->synchronizedCollection(Ljava/util/Collection;)Ljava/util/Collection; -HSPLjava/util/Collections;->synchronizedCollection(Ljava/util/Collection;Ljava/lang/Object;)Ljava/util/Collection; -HSPLjava/util/Collections;->synchronizedList(Ljava/util/List;)Ljava/util/List; -HSPLjava/util/Collections;->synchronizedMap(Ljava/util/Map;)Ljava/util/Map; -HSPLjava/util/Collections;->synchronizedSet(Ljava/util/Set;)Ljava/util/Set; -HSPLjava/util/Collections;->synchronizedSet(Ljava/util/Set;Ljava/lang/Object;)Ljava/util/Set; -HSPLjava/util/Collections;->unmodifiableCollection(Ljava/util/Collection;)Ljava/util/Collection; -HSPLjava/util/Collections;->unmodifiableList(Ljava/util/List;)Ljava/util/List; -HSPLjava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map; -HSPLjava/util/Collections;->unmodifiableSet(Ljava/util/Set;)Ljava/util/Set; -HSPLjava/util/Collections;->unmodifiableSortedMap(Ljava/util/SortedMap;)Ljava/util/SortedMap; -HSPLjava/util/Collections;->unmodifiableSortedSet(Ljava/util/SortedSet;)Ljava/util/SortedSet; -HSPLjava/util/ComparableTimSort;-><init>([Ljava/lang/Object;[Ljava/lang/Object;II)V -HSPLjava/util/ComparableTimSort;->binarySort([Ljava/lang/Object;III)V -HSPLjava/util/ComparableTimSort;->countRunAndMakeAscending([Ljava/lang/Object;II)I -HSPLjava/util/ComparableTimSort;->ensureCapacity(I)[Ljava/lang/Object; -HSPLjava/util/ComparableTimSort;->gallopLeft(Ljava/lang/Comparable;[Ljava/lang/Object;III)I -HSPLjava/util/ComparableTimSort;->gallopRight(Ljava/lang/Comparable;[Ljava/lang/Object;III)I -HSPLjava/util/ComparableTimSort;->mergeAt(I)V -HSPLjava/util/ComparableTimSort;->mergeCollapse()V -HSPLjava/util/ComparableTimSort;->mergeForceCollapse()V -HSPLjava/util/ComparableTimSort;->mergeHi(IIII)V -HSPLjava/util/ComparableTimSort;->mergeLo(IIII)V -HSPLjava/util/ComparableTimSort;->minRunLength(I)I -HSPLjava/util/ComparableTimSort;->pushRun(II)V -HSPLjava/util/ComparableTimSort;->reverseRange([Ljava/lang/Object;II)V -HSPLjava/util/ComparableTimSort;->sort([Ljava/lang/Object;II[Ljava/lang/Object;II)V -HSPLjava/util/Comparator$$ExternalSyntheticLambda1;-><init>(Ljava/util/Comparator;Ljava/util/Comparator;)V -HSPLjava/util/Comparator$$ExternalSyntheticLambda1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparator$$ExternalSyntheticLambda3;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparator$$ExternalSyntheticLambda4;-><init>(Ljava/util/function/ToLongFunction;)V -HSPLjava/util/Comparator$$ExternalSyntheticLambda5;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparator;->comparing(Ljava/util/function/Function;)Ljava/util/Comparator; -HSPLjava/util/Comparator;->comparingInt(Ljava/util/function/ToIntFunction;)Ljava/util/Comparator; -HSPLjava/util/Comparator;->comparingLong(Ljava/util/function/ToLongFunction;)Ljava/util/Comparator; -HSPLjava/util/Comparator;->lambda$comparing$77a9974f$1(Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparator;->lambda$comparingInt$7b0bb60$1(Ljava/util/function/ToIntFunction;Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparator;->naturalOrder()Ljava/util/Comparator; -HSPLjava/util/Comparator;->nullsFirst(Ljava/util/Comparator;)Ljava/util/Comparator; -HSPLjava/util/Comparator;->reversed()Ljava/util/Comparator; -HSPLjava/util/Comparator;->thenComparing(Ljava/util/Comparator;)Ljava/util/Comparator; -HSPLjava/util/Comparator;->thenComparing(Ljava/util/function/Function;)Ljava/util/Comparator;+]Ljava/util/Comparator;Ljava/util/Comparator$$ExternalSyntheticLambda3; -HSPLjava/util/Comparators$NaturalOrderComparator;->compare(Ljava/lang/Comparable;Ljava/lang/Comparable;)I -HSPLjava/util/Comparators$NaturalOrderComparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Comparators$NullComparator;-><init>(ZLjava/util/Comparator;)V -HSPLjava/util/Comparators$NullComparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/Currency;-><init>(Landroid/icu/util/Currency;)V -HSPLjava/util/Currency;->getCurrencyCode()Ljava/lang/String; -HSPLjava/util/Currency;->getInstance(Ljava/lang/String;)Ljava/util/Currency; -HSPLjava/util/Currency;->getInstance(Ljava/util/Locale;)Ljava/util/Currency; -HSPLjava/util/Currency;->getSymbol(Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/util/Date;-><init>()V -HSPLjava/util/Date;-><init>(J)V -HSPLjava/util/Date;->after(Ljava/util/Date;)Z -HSPLjava/util/Date;->before(Ljava/util/Date;)Z -HSPLjava/util/Date;->clone()Ljava/lang/Object; -HSPLjava/util/Date;->compareTo(Ljava/util/Date;)I -HSPLjava/util/Date;->convertToAbbr(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/lang/StringBuilder; -HSPLjava/util/Date;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Date;->getCalendarSystem(J)Lsun/util/calendar/BaseCalendar; -HSPLjava/util/Date;->getDate()I -HSPLjava/util/Date;->getHours()I -HSPLjava/util/Date;->getMillisOf(Ljava/util/Date;)J -HSPLjava/util/Date;->getMinutes()I -HSPLjava/util/Date;->getMonth()I -HSPLjava/util/Date;->getSeconds()I -HSPLjava/util/Date;->getTime()J -HSPLjava/util/Date;->getTimeImpl()J -HSPLjava/util/Date;->getYear()I -HSPLjava/util/Date;->normalize()Lsun/util/calendar/BaseCalendar$Date; -HSPLjava/util/Date;->setTime(J)V -HSPLjava/util/Date;->toInstant()Ljava/time/Instant; -HSPLjava/util/Date;->toString()Ljava/lang/String; -HSPLjava/util/Dictionary;-><init>()V -HSPLjava/util/DualPivotQuicksort;->insertionSort([CII)V -HSPLjava/util/DualPivotQuicksort;->insertionSort([FII)V -HSPLjava/util/DualPivotQuicksort;->insertionSort([III)V -HSPLjava/util/DualPivotQuicksort;->insertionSort([JII)V -HSPLjava/util/DualPivotQuicksort;->sort(Ljava/util/DualPivotQuicksort$Sorter;[FIII)V -HSPLjava/util/DualPivotQuicksort;->sort(Ljava/util/DualPivotQuicksort$Sorter;[IIII)V -HSPLjava/util/DualPivotQuicksort;->sort(Ljava/util/DualPivotQuicksort$Sorter;[JIII)V -HSPLjava/util/DualPivotQuicksort;->sort([CIII)V -HSPLjava/util/DualPivotQuicksort;->sort([FIII)V -HSPLjava/util/DualPivotQuicksort;->sort([IIII)V -HSPLjava/util/DualPivotQuicksort;->sort([JIII)V -HSPLjava/util/DualPivotQuicksort;->tryMergeRuns(Ljava/util/DualPivotQuicksort$Sorter;[III)Z -HSPLjava/util/DualPivotQuicksort;->tryMergeRuns(Ljava/util/DualPivotQuicksort$Sorter;[JII)Z -HSPLjava/util/EnumMap$EntryIterator$Entry;-><init>(Ljava/util/EnumMap$EntryIterator;I)V -HSPLjava/util/EnumMap$EntryIterator$Entry;->checkIndexForEntryUse()V -HSPLjava/util/EnumMap$EntryIterator$Entry;->getKey()Ljava/lang/Enum; -HSPLjava/util/EnumMap$EntryIterator$Entry;->getKey()Ljava/lang/Object; -HSPLjava/util/EnumMap$EntryIterator$Entry;->getValue()Ljava/lang/Object; -HSPLjava/util/EnumMap$EntryIterator;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/EnumMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/EnumMap$EntrySet;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/EnumMap$EntrySet;->size()I -HSPLjava/util/EnumMap$EnumMapIterator;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$EnumMapIterator;->hasNext()Z -HSPLjava/util/EnumMap$KeyIterator;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$KeyIterator;->next()Ljava/lang/Enum; -HSPLjava/util/EnumMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/EnumMap$KeySet;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/EnumMap$KeySet;->size()I -HSPLjava/util/EnumMap$ValueIterator;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/EnumMap$Values;-><init>(Ljava/util/EnumMap;)V -HSPLjava/util/EnumMap$Values;->iterator()Ljava/util/Iterator; -HSPLjava/util/EnumMap$Values;->size()I -HSPLjava/util/EnumMap;->-$$Nest$fgetsize(Ljava/util/EnumMap;)I -HSPLjava/util/EnumMap;-><init>(Ljava/lang/Class;)V -HSPLjava/util/EnumMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/EnumMap;->clear()V -HSPLjava/util/EnumMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/EnumMap;->entrySet()Ljava/util/Set; -HSPLjava/util/EnumMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->getKeyUniverse(Ljava/lang/Class;)[Ljava/lang/Enum; -HSPLjava/util/EnumMap;->isValidKey(Ljava/lang/Object;)Z -HSPLjava/util/EnumMap;->keySet()Ljava/util/Set; -HSPLjava/util/EnumMap;->maskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/EnumMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->size()I -HSPLjava/util/EnumMap;->typeCheck(Ljava/lang/Enum;)V -HSPLjava/util/EnumMap;->unmaskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/EnumMap;->values()Ljava/util/Collection; -HSPLjava/util/EnumSet;-><init>(Ljava/lang/Class;[Ljava/lang/Enum;)V -HSPLjava/util/EnumSet;->allOf(Ljava/lang/Class;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->clone()Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->complementOf(Ljava/util/EnumSet;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->copyOf(Ljava/util/Collection;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->copyOf(Ljava/util/EnumSet;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->getUniverse(Ljava/lang/Class;)[Ljava/lang/Enum; -HSPLjava/util/EnumSet;->noneOf(Ljava/lang/Class;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->of(Ljava/lang/Enum;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->of(Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->of(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->of(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->of(Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet; -HSPLjava/util/EnumSet;->typeCheck(Ljava/lang/Enum;)V -HSPLjava/util/Formatter$Conversion;->isCharacter(C)Z -HSPLjava/util/Formatter$Conversion;->isFloat(C)Z -HSPLjava/util/Formatter$Conversion;->isGeneral(C)Z -HSPLjava/util/Formatter$Conversion;->isInteger(C)Z -HSPLjava/util/Formatter$Conversion;->isText(C)Z -HSPLjava/util/Formatter$Conversion;->isValid(C)Z -HSPLjava/util/Formatter$DateTime;->isValid(C)Z -HSPLjava/util/Formatter$FixedString;-><init>(Ljava/util/Formatter;Ljava/lang/String;II)V -HSPLjava/util/Formatter$FixedString;->index()I -HSPLjava/util/Formatter$FixedString;->print(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$Flags;->-$$Nest$madd(Ljava/util/Formatter$Flags;Ljava/util/Formatter$Flags;)Ljava/util/Formatter$Flags; -HSPLjava/util/Formatter$Flags;-><init>(I)V -HSPLjava/util/Formatter$Flags;->add(Ljava/util/Formatter$Flags;)Ljava/util/Formatter$Flags; -HSPLjava/util/Formatter$Flags;->contains(Ljava/util/Formatter$Flags;)Z -HSPLjava/util/Formatter$Flags;->parse(C)Ljava/util/Formatter$Flags; -HSPLjava/util/Formatter$Flags;->parse(Ljava/lang/String;II)Ljava/util/Formatter$Flags; -HSPLjava/util/Formatter$Flags;->valueOf()I -HSPLjava/util/Formatter$FormatSpecifier;-><init>(Ljava/util/Formatter;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/Formatter$FormatSpecifier;->addZeros(Ljava/lang/StringBuilder;I)V -HSPLjava/util/Formatter$FormatSpecifier;->adjustWidth(ILjava/util/Formatter$Flags;Z)I -HSPLjava/util/Formatter$FormatSpecifier;->appendJustified(Ljava/lang/Appendable;Ljava/lang/CharSequence;)V -HSPLjava/util/Formatter$FormatSpecifier;->checkBadFlags([Ljava/util/Formatter$Flags;)V -HSPLjava/util/Formatter$FormatSpecifier;->checkCharacter()V -HSPLjava/util/Formatter$FormatSpecifier;->checkDateTime()V -HSPLjava/util/Formatter$FormatSpecifier;->checkFloat()V -HSPLjava/util/Formatter$FormatSpecifier;->checkGeneral()V -HSPLjava/util/Formatter$FormatSpecifier;->checkInteger()V -HSPLjava/util/Formatter$FormatSpecifier;->checkNumeric()V -HSPLjava/util/Formatter$FormatSpecifier;->checkText()V -HSPLjava/util/Formatter$FormatSpecifier;->conversion(C)V -HSPLjava/util/Formatter$FormatSpecifier;->getZero(Ljava/util/Locale;)C -HSPLjava/util/Formatter$FormatSpecifier;->index()I -HSPLjava/util/Formatter$FormatSpecifier;->index(Ljava/lang/String;)V -HSPLjava/util/Formatter$FormatSpecifier;->leadingSign(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder; -HSPLjava/util/Formatter$FormatSpecifier;->localizedMagnitude(Ljava/lang/StringBuilder;JLjava/util/Formatter$Flags;ILjava/util/Locale;)Ljava/lang/StringBuilder; -HSPLjava/util/Formatter$FormatSpecifier;->localizedMagnitude(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;ILjava/util/Formatter$Flags;ILjava/util/Locale;)Ljava/lang/StringBuilder; -HSPLjava/util/Formatter$FormatSpecifier;->precision(Ljava/lang/String;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(BLjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(DLjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(FLjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(ILjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(JLjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/lang/String;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/lang/StringBuilder;DLjava/util/Locale;Ljava/util/Formatter$Flags;CIZ)V -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/lang/StringBuilder;Ljava/util/Calendar;CLjava/util/Locale;)Ljava/lang/Appendable; -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/math/BigInteger;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->print(Ljava/util/Calendar;CLjava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printBoolean(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printCharacter(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printDateTime(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printFloat(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printInteger(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->printString(Ljava/lang/Object;Ljava/util/Locale;)V -HSPLjava/util/Formatter$FormatSpecifier;->trailingSign(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder; -HSPLjava/util/Formatter$FormatSpecifier;->trailingZeros(Ljava/lang/StringBuilder;I)V -HSPLjava/util/Formatter$FormatSpecifier;->width(Ljava/lang/String;)V -HSPLjava/util/Formatter$FormatSpecifierParser;-><init>(Ljava/util/Formatter;Ljava/lang/String;I)V -HSPLjava/util/Formatter$FormatSpecifierParser;->advance()C -HSPLjava/util/Formatter$FormatSpecifierParser;->back(I)V -HSPLjava/util/Formatter$FormatSpecifierParser;->getEndIdx()I -HSPLjava/util/Formatter$FormatSpecifierParser;->getFormatSpecifier()Ljava/util/Formatter$FormatSpecifier; -HSPLjava/util/Formatter$FormatSpecifierParser;->isEnd()Z -HSPLjava/util/Formatter$FormatSpecifierParser;->nextInt()Ljava/lang/String; -HSPLjava/util/Formatter$FormatSpecifierParser;->nextIsInt()Z -HSPLjava/util/Formatter$FormatSpecifierParser;->peek()C -HSPLjava/util/Formatter;->-$$Nest$fgeta(Ljava/util/Formatter;)Ljava/lang/Appendable; -HSPLjava/util/Formatter;->-$$Nest$smisStrictValidationEnabled()Z -HSPLjava/util/Formatter;-><init>()V -HSPLjava/util/Formatter;-><init>(Ljava/lang/Appendable;)V -HSPLjava/util/Formatter;-><init>(Ljava/lang/Appendable;Ljava/util/Locale;)V -HSPLjava/util/Formatter;-><init>(Ljava/util/Locale;)V -HSPLjava/util/Formatter;-><init>(Ljava/util/Locale;Ljava/lang/Appendable;)V -HSPLjava/util/Formatter;->close()V -HSPLjava/util/Formatter;->ensureOpen()V -HSPLjava/util/Formatter;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter; -HSPLjava/util/Formatter;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter; -HSPLjava/util/Formatter;->isStrictValidationEnabled()Z -HSPLjava/util/Formatter;->locale()Ljava/util/Locale; -HSPLjava/util/Formatter;->nonNullAppendable(Ljava/lang/Appendable;)Ljava/lang/Appendable; -HSPLjava/util/Formatter;->out()Ljava/lang/Appendable; -HSPLjava/util/Formatter;->parse(Ljava/lang/String;)Ljava/util/List; -HSPLjava/util/Formatter;->toString()Ljava/lang/String; -HSPLjava/util/Formatter;->zero()C -HSPLjava/util/GregorianCalendar;-><init>()V -HSPLjava/util/GregorianCalendar;-><init>(IIIIII)V -HSPLjava/util/GregorianCalendar;-><init>(IIIIIII)V -HSPLjava/util/GregorianCalendar;-><init>(Ljava/util/TimeZone;)V -HSPLjava/util/GregorianCalendar;-><init>(Ljava/util/TimeZone;Ljava/util/Locale;)V -HSPLjava/util/GregorianCalendar;->add(II)V -HSPLjava/util/GregorianCalendar;->adjustDstOffsetForInvalidWallClock(JLjava/util/TimeZone;I)I -HSPLjava/util/GregorianCalendar;->adjustForZoneAndDaylightSavingsTime(IJLjava/util/TimeZone;)J -HSPLjava/util/GregorianCalendar;->clone()Ljava/lang/Object; -HSPLjava/util/GregorianCalendar;->computeFields()V -HSPLjava/util/GregorianCalendar;->computeFields(II)I -HSPLjava/util/GregorianCalendar;->computeTime()V -HSPLjava/util/GregorianCalendar;->getActualMaximum(I)I -HSPLjava/util/GregorianCalendar;->getCalendarDate(J)Lsun/util/calendar/BaseCalendar$Date; -HSPLjava/util/GregorianCalendar;->getCurrentFixedDate()J -HSPLjava/util/GregorianCalendar;->getFixedDate(Lsun/util/calendar/BaseCalendar;II)J -HSPLjava/util/GregorianCalendar;->getGregorianCutoverDate()Lsun/util/calendar/BaseCalendar$Date; -HSPLjava/util/GregorianCalendar;->getJulianCalendarSystem()Lsun/util/calendar/BaseCalendar; -HSPLjava/util/GregorianCalendar;->getLeastMaximum(I)I -HSPLjava/util/GregorianCalendar;->getMaximum(I)I -HSPLjava/util/GregorianCalendar;->getMinimum(I)I -HSPLjava/util/GregorianCalendar;->getNormalizedCalendar()Ljava/util/GregorianCalendar; -HSPLjava/util/GregorianCalendar;->getTimeZone()Ljava/util/TimeZone; -HSPLjava/util/GregorianCalendar;->getWeekNumber(JJ)I -HSPLjava/util/GregorianCalendar;->internalGetEra()I -HSPLjava/util/GregorianCalendar;->isCutoverYear(I)Z -HSPLjava/util/GregorianCalendar;->isLeapYear(I)Z -HSPLjava/util/GregorianCalendar;->monthLength(I)I -HSPLjava/util/GregorianCalendar;->monthLength(II)I -HSPLjava/util/GregorianCalendar;->pinDayOfMonth()V -HSPLjava/util/GregorianCalendar;->setGregorianChange(J)V -HSPLjava/util/GregorianCalendar;->setGregorianChange(Ljava/util/Date;)V -HSPLjava/util/GregorianCalendar;->setTimeZone(Ljava/util/TimeZone;)V -HSPLjava/util/HashMap$EntryIterator;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/HashMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/HashMap$EntrySet;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/HashMap$EntrySet;->size()I -HSPLjava/util/HashMap$EntrySet;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/HashMap$EntrySpliterator;-><init>(Ljava/util/HashMap;IIII)V -HSPLjava/util/HashMap$EntrySpliterator;->characteristics()I -HSPLjava/util/HashMap$HashIterator;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$HashIterator;->hasNext()Z -HSPLjava/util/HashMap$HashIterator;->nextNode()Ljava/util/HashMap$Node; -HSPLjava/util/HashMap$HashIterator;->remove()V -HSPLjava/util/HashMap$HashMapSpliterator;-><init>(Ljava/util/HashMap;IIII)V -HSPLjava/util/HashMap$HashMapSpliterator;->estimateSize()J -HSPLjava/util/HashMap$HashMapSpliterator;->getFence()I -HSPLjava/util/HashMap$KeyIterator;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/HashMap$KeySet;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$KeySet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/HashMap$KeySet;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/HashMap$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/HashMap$KeySet;->remove(Ljava/lang/Object;)Z -HSPLjava/util/HashMap$KeySet;->size()I -HSPLjava/util/HashMap$KeySet;->toArray()[Ljava/lang/Object; -HSPLjava/util/HashMap$KeySet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashMap$KeySpliterator;-><init>(Ljava/util/HashMap;IIII)V -HSPLjava/util/HashMap$KeySpliterator;->characteristics()I -HSPLjava/util/HashMap$KeySpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/HashMap$KeySpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/HashMap$Node;-><init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V -HSPLjava/util/HashMap$Node;->getKey()Ljava/lang/Object; -HSPLjava/util/HashMap$Node;->getValue()Ljava/lang/Object; -HSPLjava/util/HashMap$Node;->hashCode()I -HSPLjava/util/HashMap$Node;->setValue(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap$TreeNode;-><init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V -HSPLjava/util/HashMap$TreeNode;->balanceInsertion(Ljava/util/HashMap$TreeNode;Ljava/util/HashMap$TreeNode;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->find(ILjava/lang/Object;Ljava/lang/Class;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->getTreeNode(ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->moveRootToFront([Ljava/util/HashMap$Node;Ljava/util/HashMap$TreeNode;)V -HSPLjava/util/HashMap$TreeNode;->putTreeVal(Ljava/util/HashMap;[Ljava/util/HashMap$Node;ILjava/lang/Object;Ljava/lang/Object;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->rotateLeft(Ljava/util/HashMap$TreeNode;Ljava/util/HashMap$TreeNode;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->rotateRight(Ljava/util/HashMap$TreeNode;Ljava/util/HashMap$TreeNode;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap$TreeNode;->split(Ljava/util/HashMap;[Ljava/util/HashMap$Node;II)V -HSPLjava/util/HashMap$TreeNode;->treeify([Ljava/util/HashMap$Node;)V -HSPLjava/util/HashMap$TreeNode;->untreeify(Ljava/util/HashMap;)Ljava/util/HashMap$Node; -HSPLjava/util/HashMap$ValueIterator;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/HashMap$ValueSpliterator;-><init>(Ljava/util/HashMap;IIII)V -HSPLjava/util/HashMap$ValueSpliterator;->characteristics()I -HSPLjava/util/HashMap$ValueSpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/HashMap$ValueSpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/HashMap$Values;-><init>(Ljava/util/HashMap;)V -HSPLjava/util/HashMap$Values;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/HashMap$Values;->iterator()Ljava/util/Iterator; -HSPLjava/util/HashMap$Values;->size()I -HSPLjava/util/HashMap$Values;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/HashMap$Values;->toArray()[Ljava/lang/Object; -HSPLjava/util/HashMap$Values;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashMap;-><init>()V -HSPLjava/util/HashMap;-><init>(I)V -HSPLjava/util/HashMap;-><init>(IF)V -HSPLjava/util/HashMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/HashMap;->afterNodeAccess(Ljava/util/HashMap$Node;)V -HSPLjava/util/HashMap;->afterNodeInsertion(Z)V -HSPLjava/util/HashMap;->afterNodeRemoval(Ljava/util/HashMap$Node;)V -HSPLjava/util/HashMap;->calculateHashMapCapacity(I)I -HSPLjava/util/HashMap;->capacity()I -HSPLjava/util/HashMap;->clear()V -HSPLjava/util/HashMap;->clone()Ljava/lang/Object; -HSPLjava/util/HashMap;->computeIfAbsent(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; -HSPLjava/util/HashMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/HashMap;->containsValue(Ljava/lang/Object;)Z -HSPLjava/util/HashMap;->entrySet()Ljava/util/Set; -HSPLjava/util/HashMap;->forEach(Ljava/util/function/BiConsumer;)V -HSPLjava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap;->getNode(Ljava/lang/Object;)Ljava/util/HashMap$Node; -HSPLjava/util/HashMap;->getOrDefault(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap;->hash(Ljava/lang/Object;)I -HSPLjava/util/HashMap;->internalWriteEntries(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/HashMap;->isEmpty()Z -HSPLjava/util/HashMap;->keySet()Ljava/util/Set; -HSPLjava/util/HashMap;->keysToArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashMap;->loadFactor()F -HSPLjava/util/HashMap;->merge(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; -HSPLjava/util/HashMap;->newHashMap(I)Ljava/util/HashMap; -HSPLjava/util/HashMap;->newNode(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; -HSPLjava/util/HashMap;->newTreeNode(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap;->prepareArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/HashMap;->putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap;->putMapEntries(Ljava/util/Map;Z)V -HSPLjava/util/HashMap;->putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; -HSPLjava/util/HashMap;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/util/HashMap;->reinitialize()V -HSPLjava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/HashMap;->removeNode(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/util/HashMap$Node; -HSPLjava/util/HashMap;->replacementNode(Ljava/util/HashMap$Node;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; -HSPLjava/util/HashMap;->replacementTreeNode(Ljava/util/HashMap$Node;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/HashMap;->resize()[Ljava/util/HashMap$Node; -HSPLjava/util/HashMap;->size()I -HSPLjava/util/HashMap;->tableSizeFor(I)I -HSPLjava/util/HashMap;->treeifyBin([Ljava/util/HashMap$Node;I)V -HSPLjava/util/HashMap;->values()Ljava/util/Collection; -HSPLjava/util/HashMap;->valuesToArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashMap;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/HashSet;-><init>()V -HSPLjava/util/HashSet;-><init>(I)V -HSPLjava/util/HashSet;-><init>(IF)V -HSPLjava/util/HashSet;-><init>(IFZ)V -HSPLjava/util/HashSet;-><init>(Ljava/util/Collection;)V -HSPLjava/util/HashSet;->add(Ljava/lang/Object;)Z -HSPLjava/util/HashSet;->clear()V -HSPLjava/util/HashSet;->clone()Ljava/lang/Object; -HSPLjava/util/HashSet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/HashSet;->isEmpty()Z -HSPLjava/util/HashSet;->iterator()Ljava/util/Iterator; -HSPLjava/util/HashSet;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/util/HashSet;->remove(Ljava/lang/Object;)Z -HSPLjava/util/HashSet;->size()I -HSPLjava/util/HashSet;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/HashSet;->toArray()[Ljava/lang/Object; -HSPLjava/util/HashSet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/HashSet;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/Hashtable$EntrySet;-><init>(Ljava/util/Hashtable;)V -HSPLjava/util/Hashtable$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/Hashtable$Enumerator;-><init>(Ljava/util/Hashtable;IZ)V -HSPLjava/util/Hashtable$Enumerator;->hasMoreElements()Z -HSPLjava/util/Hashtable$Enumerator;->hasNext()Z -HSPLjava/util/Hashtable$Enumerator;->next()Ljava/lang/Object; -HSPLjava/util/Hashtable$Enumerator;->nextElement()Ljava/lang/Object; -HSPLjava/util/Hashtable$HashtableEntry;-><init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/Hashtable$HashtableEntry;)V -HSPLjava/util/Hashtable$HashtableEntry;->clone()Ljava/lang/Object; -HSPLjava/util/Hashtable$HashtableEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/Hashtable$HashtableEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/Hashtable$KeySet;-><init>(Ljava/util/Hashtable;)V -HSPLjava/util/Hashtable$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/Hashtable$KeySet;->size()I -HSPLjava/util/Hashtable$ValueCollection;-><init>(Ljava/util/Hashtable;)V -HSPLjava/util/Hashtable$ValueCollection;->iterator()Ljava/util/Iterator; -HSPLjava/util/Hashtable$ValueCollection;->size()I -HSPLjava/util/Hashtable;->-$$Nest$fgetmodCount(Ljava/util/Hashtable;)I -HSPLjava/util/Hashtable;->-$$Nest$fgettable(Ljava/util/Hashtable;)[Ljava/util/Hashtable$HashtableEntry; -HSPLjava/util/Hashtable;-><init>()V -HSPLjava/util/Hashtable;-><init>(I)V -HSPLjava/util/Hashtable;-><init>(IF)V -HSPLjava/util/Hashtable;-><init>(Ljava/lang/Void;)V -HSPLjava/util/Hashtable;->addEntry(ILjava/lang/Object;Ljava/lang/Object;I)V -HSPLjava/util/Hashtable;->clear()V -HSPLjava/util/Hashtable;->clone()Ljava/lang/Object; -HSPLjava/util/Hashtable;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Hashtable;->entrySet()Ljava/util/Set; -HSPLjava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Hashtable;->getEnumeration(I)Ljava/util/Enumeration; -HSPLjava/util/Hashtable;->getIterator(I)Ljava/util/Iterator; -HSPLjava/util/Hashtable;->isEmpty()Z -HSPLjava/util/Hashtable;->keySet()Ljava/util/Set; -HSPLjava/util/Hashtable;->keys()Ljava/util/Enumeration; -HSPLjava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Hashtable;->rehash()V -HSPLjava/util/Hashtable;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Hashtable;->remove(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/Hashtable;->size()I -HSPLjava/util/Hashtable;->values()Ljava/util/Collection; -HSPLjava/util/IdentityHashMap$EntryIterator$Entry;-><init>(Ljava/util/IdentityHashMap$EntryIterator;I)V -HSPLjava/util/IdentityHashMap$EntryIterator$Entry;->checkIndexForEntryUse()V -HSPLjava/util/IdentityHashMap$EntryIterator$Entry;->getKey()Ljava/lang/Object; -HSPLjava/util/IdentityHashMap$EntryIterator$Entry;->getValue()Ljava/lang/Object; -HSPLjava/util/IdentityHashMap$EntryIterator;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/IdentityHashMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/IdentityHashMap$EntrySet;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/IdentityHashMap$EntrySet;->size()I -HSPLjava/util/IdentityHashMap$IdentityHashMapIterator;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$IdentityHashMapIterator;->hasNext()Z -HSPLjava/util/IdentityHashMap$IdentityHashMapIterator;->nextIndex()I -HSPLjava/util/IdentityHashMap$KeyIterator;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/IdentityHashMap$KeySet;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$KeySet;-><init>(Ljava/util/IdentityHashMap;Ljava/util/IdentityHashMap$KeySet-IA;)V -HSPLjava/util/IdentityHashMap$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/IdentityHashMap$KeySet;->size()I -HSPLjava/util/IdentityHashMap$ValueIterator;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/IdentityHashMap$Values;-><init>(Ljava/util/IdentityHashMap;)V -HSPLjava/util/IdentityHashMap$Values;->iterator()Ljava/util/Iterator; -HSPLjava/util/IdentityHashMap;-><init>()V -HSPLjava/util/IdentityHashMap;-><init>(I)V -HSPLjava/util/IdentityHashMap;->capacity(I)I -HSPLjava/util/IdentityHashMap;->clear()V -HSPLjava/util/IdentityHashMap;->closeDeletion(I)V -HSPLjava/util/IdentityHashMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/IdentityHashMap;->entrySet()Ljava/util/Set; -HSPLjava/util/IdentityHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/IdentityHashMap;->hash(Ljava/lang/Object;I)I -HSPLjava/util/IdentityHashMap;->init(I)V -HSPLjava/util/IdentityHashMap;->isEmpty()Z -HSPLjava/util/IdentityHashMap;->keySet()Ljava/util/Set; -HSPLjava/util/IdentityHashMap;->maskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/IdentityHashMap;->nextKeyIndex(II)I -HSPLjava/util/IdentityHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/IdentityHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/IdentityHashMap;->resize(I)Z -HSPLjava/util/IdentityHashMap;->size()I -HSPLjava/util/IdentityHashMap;->unmaskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/IdentityHashMap;->values()Ljava/util/Collection; -HSPLjava/util/ImmutableCollections$AbstractImmutableCollection;-><init>()V -HSPLjava/util/ImmutableCollections$AbstractImmutableList;-><init>()V -HSPLjava/util/ImmutableCollections$AbstractImmutableList;->iterator()Ljava/util/Iterator; -HSPLjava/util/ImmutableCollections$AbstractImmutableMap;-><init>()V -HSPLjava/util/ImmutableCollections$AbstractImmutableSet;-><init>()V -HSPLjava/util/ImmutableCollections$Access$1;-><init>()V -HSPLjava/util/ImmutableCollections$Access$1;->listFromTrustedArray([Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/ImmutableCollections$Access;-><clinit>()V -HSPLjava/util/ImmutableCollections$List12;-><init>(Ljava/lang/Object;)V -HSPLjava/util/ImmutableCollections$List12;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/ImmutableCollections$List12;->get(I)Ljava/lang/Object; -HSPLjava/util/ImmutableCollections$List12;->size()I -HSPLjava/util/ImmutableCollections$ListItr;-><init>(Ljava/util/List;I)V -HSPLjava/util/ImmutableCollections$ListItr;->hasNext()Z -HSPLjava/util/ImmutableCollections$ListItr;->next()Ljava/lang/Object; -HSPLjava/util/ImmutableCollections$ListN;-><init>([Ljava/lang/Object;Z)V -HSPLjava/util/ImmutableCollections$ListN;-><init>([Ljava/lang/Object;ZLjava/util/ImmutableCollections$ListN-IA;)V -HSPLjava/util/ImmutableCollections$ListN;->get(I)Ljava/lang/Object; -HSPLjava/util/ImmutableCollections$ListN;->size()I -HSPLjava/util/ImmutableCollections$Map1;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/ImmutableCollections$Map1;->entrySet()Ljava/util/Set; -HSPLjava/util/ImmutableCollections$MapN;-><init>([Ljava/lang/Object;)V -HSPLjava/util/ImmutableCollections$MapN;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/ImmutableCollections$MapN;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/ImmutableCollections$MapN;->probe(Ljava/lang/Object;)I -HSPLjava/util/ImmutableCollections$Set12;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V+]Ljava/lang/Object;missing_types -HSPLjava/util/ImmutableCollections$SetN;-><init>([Ljava/lang/Object;)V -HSPLjava/util/ImmutableCollections$SetN;->contains(Ljava/lang/Object;)Z -HSPLjava/util/ImmutableCollections$SetN;->probe(Ljava/lang/Object;)I -HSPLjava/util/ImmutableCollections;-><clinit>()V -HSPLjava/util/ImmutableCollections;->listCopy(Ljava/util/Collection;)Ljava/util/List; -HSPLjava/util/ImmutableCollections;->listFromTrustedArray([Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/Iterator;->forEachRemaining(Ljava/util/function/Consumer;)V+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Landroid/util/MapCollections$MapIterator;,Ljava/util/AbstractList$Itr;,Ljava/util/AbstractMap$2$1;]Ljava/util/function/Consumer;megamorphic_types -HSPLjava/util/JumboEnumSet$EnumSetIterator;-><init>(Ljava/util/JumboEnumSet;)V -HSPLjava/util/JumboEnumSet$EnumSetIterator;->hasNext()Z -HSPLjava/util/JumboEnumSet$EnumSetIterator;->next()Ljava/lang/Enum; -HSPLjava/util/JumboEnumSet$EnumSetIterator;->next()Ljava/lang/Object; -HSPLjava/util/JumboEnumSet;-><init>(Ljava/lang/Class;[Ljava/lang/Enum;)V -HSPLjava/util/JumboEnumSet;->add(Ljava/lang/Enum;)Z -HSPLjava/util/JumboEnumSet;->add(Ljava/lang/Object;)Z -HSPLjava/util/JumboEnumSet;->addAll()V -HSPLjava/util/JumboEnumSet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/JumboEnumSet;->iterator()Ljava/util/Iterator; -HSPLjava/util/JumboEnumSet;->size()I -HSPLjava/util/KeyValueHolder;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/KeyValueHolder;->getKey()Ljava/lang/Object; -HSPLjava/util/KeyValueHolder;->getValue()Ljava/lang/Object; -HSPLjava/util/LinkedHashMap$Entry;-><init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V -HSPLjava/util/LinkedHashMap$LinkedEntryIterator;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedEntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/LinkedHashMap$LinkedEntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/LinkedHashMap$LinkedEntrySet;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedEntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/LinkedHashMap$LinkedEntrySet;->size()I -HSPLjava/util/LinkedHashMap$LinkedHashIterator;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedHashIterator;->hasNext()Z -HSPLjava/util/LinkedHashMap$LinkedHashIterator;->nextNode()Ljava/util/LinkedHashMap$Entry; -HSPLjava/util/LinkedHashMap$LinkedHashIterator;->remove()V -HSPLjava/util/LinkedHashMap$LinkedKeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/LinkedHashMap$LinkedKeySet;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedKeySet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/LinkedHashMap$LinkedKeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/LinkedHashMap$LinkedKeySet;->size()I -HSPLjava/util/LinkedHashMap$LinkedKeySet;->toArray()[Ljava/lang/Object; -HSPLjava/util/LinkedHashMap$LinkedValueIterator;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/LinkedHashMap$LinkedValues;-><init>(Ljava/util/LinkedHashMap;Z)V -HSPLjava/util/LinkedHashMap$LinkedValues;->iterator()Ljava/util/Iterator; -HSPLjava/util/LinkedHashMap$LinkedValues;->size()I -HSPLjava/util/LinkedHashMap$LinkedValues;->toArray()[Ljava/lang/Object; -HSPLjava/util/LinkedHashMap;-><init>()V -HSPLjava/util/LinkedHashMap;-><init>(I)V -HSPLjava/util/LinkedHashMap;-><init>(IF)V -HSPLjava/util/LinkedHashMap;-><init>(IFZ)V -HSPLjava/util/LinkedHashMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/LinkedHashMap;->afterNodeAccess(Ljava/util/HashMap$Node;)V -HSPLjava/util/LinkedHashMap;->afterNodeInsertion(Z)V -HSPLjava/util/LinkedHashMap;->afterNodeRemoval(Ljava/util/HashMap$Node;)V -HSPLjava/util/LinkedHashMap;->clear()V -HSPLjava/util/LinkedHashMap;->eldest()Ljava/util/Map$Entry; -HSPLjava/util/LinkedHashMap;->entrySet()Ljava/util/Set; -HSPLjava/util/LinkedHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/LinkedHashMap;->keySet()Ljava/util/Set; -HSPLjava/util/LinkedHashMap;->keysToArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/LinkedHashMap;->keysToArray([Ljava/lang/Object;Z)[Ljava/lang/Object; -HSPLjava/util/LinkedHashMap;->linkNodeAtEnd(Ljava/util/LinkedHashMap$Entry;)V -HSPLjava/util/LinkedHashMap;->newNode(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; -HSPLjava/util/LinkedHashMap;->newTreeNode(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/LinkedHashMap;->reinitialize()V -HSPLjava/util/LinkedHashMap;->removeEldestEntry(Ljava/util/Map$Entry;)Z -HSPLjava/util/LinkedHashMap;->replacementTreeNode(Ljava/util/HashMap$Node;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; -HSPLjava/util/LinkedHashMap;->sequencedEntrySet()Ljava/util/SequencedSet; -HSPLjava/util/LinkedHashMap;->sequencedKeySet()Ljava/util/SequencedSet; -HSPLjava/util/LinkedHashMap;->sequencedValues()Ljava/util/SequencedCollection; -HSPLjava/util/LinkedHashMap;->values()Ljava/util/Collection; -HSPLjava/util/LinkedHashMap;->valuesToArray([Ljava/lang/Object;Z)[Ljava/lang/Object; -HSPLjava/util/LinkedHashSet;-><init>()V -HSPLjava/util/LinkedHashSet;-><init>(I)V -HSPLjava/util/LinkedHashSet;-><init>(Ljava/util/Collection;)V -HSPLjava/util/LinkedList$ListItr;-><init>(Ljava/util/LinkedList;I)V -HSPLjava/util/LinkedList$ListItr;->add(Ljava/lang/Object;)V -HSPLjava/util/LinkedList$ListItr;->checkForComodification()V -HSPLjava/util/LinkedList$ListItr;->hasNext()Z -HSPLjava/util/LinkedList$ListItr;->hasPrevious()Z -HSPLjava/util/LinkedList$ListItr;->next()Ljava/lang/Object; -HSPLjava/util/LinkedList$ListItr;->previous()Ljava/lang/Object; -HSPLjava/util/LinkedList$ListItr;->remove()V -HSPLjava/util/LinkedList$ListItr;->set(Ljava/lang/Object;)V -HSPLjava/util/LinkedList$Node;-><init>(Ljava/util/LinkedList$Node;Ljava/lang/Object;Ljava/util/LinkedList$Node;)V -HSPLjava/util/LinkedList;-><init>()V -HSPLjava/util/LinkedList;-><init>(Ljava/util/Collection;)V -HSPLjava/util/LinkedList;->add(ILjava/lang/Object;)V -HSPLjava/util/LinkedList;->add(Ljava/lang/Object;)Z -HSPLjava/util/LinkedList;->addAll(ILjava/util/Collection;)Z -HSPLjava/util/LinkedList;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/LinkedList;->addFirst(Ljava/lang/Object;)V -HSPLjava/util/LinkedList;->addLast(Ljava/lang/Object;)V -HSPLjava/util/LinkedList;->checkElementIndex(I)V -HSPLjava/util/LinkedList;->checkPositionIndex(I)V -HSPLjava/util/LinkedList;->clear()V -HSPLjava/util/LinkedList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/LinkedList;->descendingIterator()Ljava/util/Iterator; -HSPLjava/util/LinkedList;->get(I)Ljava/lang/Object; -HSPLjava/util/LinkedList;->getFirst()Ljava/lang/Object; -HSPLjava/util/LinkedList;->getLast()Ljava/lang/Object; -HSPLjava/util/LinkedList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/LinkedList;->isElementIndex(I)Z -HSPLjava/util/LinkedList;->isPositionIndex(I)Z -HSPLjava/util/LinkedList;->linkBefore(Ljava/lang/Object;Ljava/util/LinkedList$Node;)V -HSPLjava/util/LinkedList;->linkFirst(Ljava/lang/Object;)V -HSPLjava/util/LinkedList;->linkLast(Ljava/lang/Object;)V -HSPLjava/util/LinkedList;->listIterator(I)Ljava/util/ListIterator; -HSPLjava/util/LinkedList;->node(I)Ljava/util/LinkedList$Node; -HSPLjava/util/LinkedList;->offer(Ljava/lang/Object;)Z -HSPLjava/util/LinkedList;->peek()Ljava/lang/Object; -HSPLjava/util/LinkedList;->peekFirst()Ljava/lang/Object; -HSPLjava/util/LinkedList;->peekLast()Ljava/lang/Object; -HSPLjava/util/LinkedList;->poll()Ljava/lang/Object; -HSPLjava/util/LinkedList;->pollFirst()Ljava/lang/Object; -HSPLjava/util/LinkedList;->pollLast()Ljava/lang/Object; -HSPLjava/util/LinkedList;->pop()Ljava/lang/Object; -HSPLjava/util/LinkedList;->push(Ljava/lang/Object;)V -HSPLjava/util/LinkedList;->remove()Ljava/lang/Object; -HSPLjava/util/LinkedList;->remove(I)Ljava/lang/Object; -HSPLjava/util/LinkedList;->remove(Ljava/lang/Object;)Z -HSPLjava/util/LinkedList;->removeFirst()Ljava/lang/Object; -HSPLjava/util/LinkedList;->removeLast()Ljava/lang/Object; -HSPLjava/util/LinkedList;->set(ILjava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/LinkedList;->size()I -HSPLjava/util/LinkedList;->toArray()[Ljava/lang/Object; -HSPLjava/util/LinkedList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/LinkedList;->unlink(Ljava/util/LinkedList$Node;)Ljava/lang/Object; -HSPLjava/util/LinkedList;->unlinkFirst(Ljava/util/LinkedList$Node;)Ljava/lang/Object; -HSPLjava/util/LinkedList;->unlinkLast(Ljava/util/LinkedList$Node;)Ljava/lang/Object; -HSPLjava/util/List;->copyOf(Ljava/util/Collection;)Ljava/util/List; -HSPLjava/util/List;->of()Ljava/util/List; -HSPLjava/util/List;->of(Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/List;->of(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/List;->of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/List;->of([Ljava/lang/Object;)Ljava/util/List; -HSPLjava/util/List;->sort(Ljava/util/Comparator;)V+]Ljava/util/List;Ljava/util/ArrayList$SubList;,Ljava/util/LinkedList;]Ljava/util/ListIterator;Ljava/util/ArrayList$SubList$1;,Ljava/util/LinkedList$ListItr; -HSPLjava/util/List;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/Locale$Builder;-><init>()V -HSPLjava/util/Locale$Builder;->build()Ljava/util/Locale; -HSPLjava/util/Locale$Builder;->setLanguage(Ljava/lang/String;)Ljava/util/Locale$Builder; -HSPLjava/util/Locale$Builder;->setRegion(Ljava/lang/String;)Ljava/util/Locale$Builder; -HSPLjava/util/Locale$Builder;->setScript(Ljava/lang/String;)Ljava/util/Locale$Builder; -HSPLjava/util/Locale$Builder;->setVariant(Ljava/lang/String;)Ljava/util/Locale$Builder; -HSPLjava/util/Locale$Cache;->-$$Nest$sfgetLOCALECACHE()Ljava/util/Locale$Cache; -HSPLjava/util/Locale$Cache;->createObject(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Locale$Cache;->createObject(Ljava/lang/Object;)Ljava/util/Locale; -HSPLjava/util/Locale$LocaleKey;->-$$Nest$fgetbase(Ljava/util/Locale$LocaleKey;)Lsun/util/locale/BaseLocale; -HSPLjava/util/Locale$LocaleKey;->-$$Nest$fgetexts(Ljava/util/Locale$LocaleKey;)Lsun/util/locale/LocaleExtensions; -HSPLjava/util/Locale$LocaleKey;-><init>(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;)V -HSPLjava/util/Locale$LocaleKey;-><init>(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;Ljava/util/Locale$LocaleKey-IA;)V -HSPLjava/util/Locale$LocaleKey;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Locale$LocaleKey;->hashCode()I -HSPLjava/util/Locale;-><init>(Ljava/lang/String;)V -HSPLjava/util/Locale;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/Locale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/Locale;-><init>(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;)V -HSPLjava/util/Locale;-><init>(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;Ljava/util/Locale-IA;)V -HSPLjava/util/Locale;->cleanCache()V -HSPLjava/util/Locale;->clone()Ljava/lang/Object; -HSPLjava/util/Locale;->convertOldISOCodes(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/Locale;->equals(Ljava/lang/Object;)Z -HSPLjava/util/Locale;->forLanguageTag(Ljava/lang/String;)Ljava/util/Locale; -HSPLjava/util/Locale;->getAvailableLocales()[Ljava/util/Locale; -HSPLjava/util/Locale;->getBaseLocale()Lsun/util/locale/BaseLocale; -HSPLjava/util/Locale;->getCompatibilityExtensions(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lsun/util/locale/LocaleExtensions; -HSPLjava/util/Locale;->getCountry()Ljava/lang/String; -HSPLjava/util/Locale;->getDefault()Ljava/util/Locale; -HSPLjava/util/Locale;->getDefault(Ljava/util/Locale$Category;)Ljava/util/Locale; -HSPLjava/util/Locale;->getDisplayCountry(Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/util/Locale;->getDisplayLanguage()Ljava/lang/String; -HSPLjava/util/Locale;->getDisplayLanguage(Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/util/Locale;->getExtensionKeys()Ljava/util/Set; -HSPLjava/util/Locale;->getISO3Country()Ljava/lang/String; -HSPLjava/util/Locale;->getISO3Language()Ljava/lang/String; -HSPLjava/util/Locale;->getISOLanguages()[Ljava/lang/String; -HSPLjava/util/Locale;->getInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/util/locale/LocaleExtensions;)Ljava/util/Locale; -HSPLjava/util/Locale;->getInstance(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;)Ljava/util/Locale; -HSPLjava/util/Locale;->getLanguage()Ljava/lang/String; -HSPLjava/util/Locale;->getScript()Ljava/lang/String; -HSPLjava/util/Locale;->getUnicodeLocaleType(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/Locale;->getVariant()Ljava/lang/String; -HSPLjava/util/Locale;->hasExtensions()Z -HSPLjava/util/Locale;->hashCode()I -HSPLjava/util/Locale;->isUnicodeExtensionKey(Ljava/lang/String;)Z -HSPLjava/util/Locale;->isValidBcp47Alpha(Ljava/lang/String;II)Z -HSPLjava/util/Locale;->normalizeAndValidateLanguage(Ljava/lang/String;Z)Ljava/lang/String; -HSPLjava/util/Locale;->normalizeAndValidateRegion(Ljava/lang/String;Z)Ljava/lang/String; -HSPLjava/util/Locale;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/util/Locale;->readResolve()Ljava/lang/Object; -HSPLjava/util/Locale;->setDefault(Ljava/util/Locale$Category;Ljava/util/Locale;)V -HSPLjava/util/Locale;->setDefault(Ljava/util/Locale;)V -HSPLjava/util/Locale;->toLanguageTag()Ljava/lang/String; -HSPLjava/util/Locale;->toString()Ljava/lang/String; -HSPLjava/util/Locale;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/Map;->computeIfAbsent(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/function/Function;missing_types -HSPLjava/util/Map;->entry(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map$Entry; -HSPLjava/util/Map;->forEach(Ljava/util/function/BiConsumer;)V -HSPLjava/util/Map;->getOrDefault(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/util/Map;Landroid/util/ArrayMap; -HSPLjava/util/Map;->of(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map; -HSPLjava/util/Map;->ofEntries([Ljava/util/Map$Entry;)Ljava/util/Map; -HSPLjava/util/MissingResourceException;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/NoSuchElementException;-><init>()V -HSPLjava/util/NoSuchElementException;-><init>(Ljava/lang/String;)V -HSPLjava/util/Objects;->checkFromIndexSize(III)I -HSPLjava/util/Objects;->checkFromToIndex(III)I -HSPLjava/util/Objects;->checkIndex(II)I -HSPLjava/util/Objects;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/Objects;->hash([Ljava/lang/Object;)I -HSPLjava/util/Objects;->hashCode(Ljava/lang/Object;)I -HSPLjava/util/Objects;->nonNull(Ljava/lang/Object;)Z -HSPLjava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; -HSPLjava/util/Objects;->requireNonNullElse(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Objects;->toString(Ljava/lang/Object;)Ljava/lang/String; -HSPLjava/util/Objects;->toString(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/Observable;-><init>()V -HSPLjava/util/Observable;->addObserver(Ljava/util/Observer;)V -HSPLjava/util/Observable;->clearChanged()V -HSPLjava/util/Observable;->deleteObserver(Ljava/util/Observer;)V -HSPLjava/util/Observable;->hasChanged()Z -HSPLjava/util/Observable;->notifyObservers()V -HSPLjava/util/Observable;->notifyObservers(Ljava/lang/Object;)V -HSPLjava/util/Observable;->setChanged()V -HSPLjava/util/Optional;-><init>(Ljava/lang/Object;)V -HSPLjava/util/Optional;->empty()Ljava/util/Optional; -HSPLjava/util/Optional;->flatMap(Ljava/util/function/Function;)Ljava/util/Optional; -HSPLjava/util/Optional;->get()Ljava/lang/Object; -HSPLjava/util/Optional;->ifPresent(Ljava/util/function/Consumer;)V -HSPLjava/util/Optional;->isPresent()Z -HSPLjava/util/Optional;->map(Ljava/util/function/Function;)Ljava/util/Optional; -HSPLjava/util/Optional;->of(Ljava/lang/Object;)Ljava/util/Optional; -HSPLjava/util/Optional;->ofNullable(Ljava/lang/Object;)Ljava/util/Optional; -HSPLjava/util/Optional;->orElse(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Optional;->orElseGet(Ljava/util/function/Supplier;)Ljava/lang/Object; -HSPLjava/util/OptionalDouble;-><clinit>()V -HSPLjava/util/OptionalDouble;-><init>()V -HSPLjava/util/OptionalDouble;-><init>(D)V -HSPLjava/util/OptionalDouble;->of(D)Ljava/util/OptionalDouble; -HSPLjava/util/OptionalDouble;->orElseGet(Ljava/util/function/DoubleSupplier;)D -HSPLjava/util/OptionalInt;-><init>(I)V -HSPLjava/util/OptionalInt;->empty()Ljava/util/OptionalInt; -HSPLjava/util/OptionalInt;->isPresent()Z -HSPLjava/util/OptionalInt;->of(I)Ljava/util/OptionalInt; -HSPLjava/util/PriorityQueue$Itr;-><init>(Ljava/util/PriorityQueue;)V -HSPLjava/util/PriorityQueue$Itr;->hasNext()Z -HSPLjava/util/PriorityQueue$Itr;->next()Ljava/lang/Object; -HSPLjava/util/PriorityQueue$Itr;->remove()V -HSPLjava/util/PriorityQueue;-><init>()V -HSPLjava/util/PriorityQueue;-><init>(ILjava/util/Comparator;)V -HSPLjava/util/PriorityQueue;-><init>(Ljava/util/Comparator;)V -HSPLjava/util/PriorityQueue;-><init>(Ljava/util/PriorityQueue;)V -HSPLjava/util/PriorityQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/PriorityQueue;->clear()V -HSPLjava/util/PriorityQueue;->comparator()Ljava/util/Comparator; -HSPLjava/util/PriorityQueue;->contains(Ljava/lang/Object;)Z -HSPLjava/util/PriorityQueue;->grow(I)V -HSPLjava/util/PriorityQueue;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/PriorityQueue;->initFromPriorityQueue(Ljava/util/PriorityQueue;)V -HSPLjava/util/PriorityQueue;->iterator()Ljava/util/Iterator; -HSPLjava/util/PriorityQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/PriorityQueue;->peek()Ljava/lang/Object; -HSPLjava/util/PriorityQueue;->poll()Ljava/lang/Object; -HSPLjava/util/PriorityQueue;->remove(Ljava/lang/Object;)Z -HSPLjava/util/PriorityQueue;->removeAt(I)Ljava/lang/Object; -HSPLjava/util/PriorityQueue;->siftDown(ILjava/lang/Object;)V -HSPLjava/util/PriorityQueue;->siftDownComparable(ILjava/lang/Object;[Ljava/lang/Object;I)V -HSPLjava/util/PriorityQueue;->siftDownUsingComparator(ILjava/lang/Object;[Ljava/lang/Object;ILjava/util/Comparator;)V -HSPLjava/util/PriorityQueue;->siftUp(ILjava/lang/Object;)V -HSPLjava/util/PriorityQueue;->size()I -HSPLjava/util/PriorityQueue;->toArray()[Ljava/lang/Object; -HSPLjava/util/PriorityQueue;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/Properties$LineReader;->readLine()I -HSPLjava/util/Properties;-><init>()V -HSPLjava/util/Properties;-><init>(Ljava/util/Properties;)V -HSPLjava/util/Properties;-><init>(Ljava/util/Properties;I)V -HSPLjava/util/Properties;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/Properties;->getProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/Properties;->load(Ljava/io/InputStream;)V -HSPLjava/util/Properties;->load(Ljava/io/Reader;)V -HSPLjava/util/Properties;->load0(Ljava/util/Properties$LineReader;)V -HSPLjava/util/Properties;->loadConvert([CIILjava/lang/StringBuilder;)Ljava/lang/String; -HSPLjava/util/Properties;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/Properties;->saveConvert(Ljava/lang/String;ZZ)Ljava/lang/String; -HSPLjava/util/Properties;->setProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object; -HSPLjava/util/Properties;->store(Ljava/io/OutputStream;Ljava/lang/String;)V -HSPLjava/util/Properties;->store0(Ljava/io/BufferedWriter;Ljava/lang/String;Z)V -HSPLjava/util/Properties;->writeComments(Ljava/io/BufferedWriter;Ljava/lang/String;)V -HSPLjava/util/PropertyResourceBundle;-><init>(Ljava/io/Reader;)V -HSPLjava/util/Random;-><init>()V -HSPLjava/util/Random;-><init>(J)V -HSPLjava/util/Random;->initialScramble(J)J -HSPLjava/util/Random;->next(I)I -HSPLjava/util/Random;->nextBoolean()Z -HSPLjava/util/Random;->nextBytes([B)V -HSPLjava/util/Random;->nextDouble()D -HSPLjava/util/Random;->nextFloat()F -HSPLjava/util/Random;->nextGaussian()D -HSPLjava/util/Random;->nextInt()I -HSPLjava/util/Random;->nextInt(I)I -HSPLjava/util/Random;->nextLong()J -HSPLjava/util/Random;->readObject(Ljava/io/ObjectInputStream;)V -HSPLjava/util/Random;->resetSeed(J)V -HSPLjava/util/Random;->seedUniquifier()J -HSPLjava/util/Random;->setSeed(J)V -HSPLjava/util/Random;->writeObject(Ljava/io/ObjectOutputStream;)V -HSPLjava/util/RegularEnumSet$EnumSetIterator;-><init>(Ljava/util/RegularEnumSet;)V -HSPLjava/util/RegularEnumSet$EnumSetIterator;->hasNext()Z -HSPLjava/util/RegularEnumSet$EnumSetIterator;->next()Ljava/lang/Enum; -HSPLjava/util/RegularEnumSet$EnumSetIterator;->next()Ljava/lang/Object; -HSPLjava/util/RegularEnumSet;-><init>(Ljava/lang/Class;[Ljava/lang/Enum;)V -HSPLjava/util/RegularEnumSet;->add(Ljava/lang/Enum;)Z -HSPLjava/util/RegularEnumSet;->add(Ljava/lang/Object;)Z -HSPLjava/util/RegularEnumSet;->addAll()V -HSPLjava/util/RegularEnumSet;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/RegularEnumSet;->clear()V -HSPLjava/util/RegularEnumSet;->complement()V -HSPLjava/util/RegularEnumSet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/RegularEnumSet;->containsAll(Ljava/util/Collection;)Z -HSPLjava/util/RegularEnumSet;->equals(Ljava/lang/Object;)Z -HSPLjava/util/RegularEnumSet;->isEmpty()Z -HSPLjava/util/RegularEnumSet;->iterator()Ljava/util/Iterator; -HSPLjava/util/RegularEnumSet;->remove(Ljava/lang/Object;)Z -HSPLjava/util/RegularEnumSet;->size()I -HSPLjava/util/ResourceBundle$BundleReference;-><init>(Ljava/util/ResourceBundle;Ljava/lang/ref/ReferenceQueue;Ljava/util/ResourceBundle$CacheKey;)V -HSPLjava/util/ResourceBundle$BundleReference;->getCacheKey()Ljava/util/ResourceBundle$CacheKey; -HSPLjava/util/ResourceBundle$CacheKey;-><init>(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;)V -HSPLjava/util/ResourceBundle$CacheKey;->equals(Ljava/lang/Object;)Z -HSPLjava/util/ResourceBundle$CacheKey;->getCause()Ljava/lang/Throwable; -HSPLjava/util/ResourceBundle$CacheKey;->getLoader()Ljava/lang/ClassLoader; -HSPLjava/util/ResourceBundle$CacheKey;->getLocale()Ljava/util/Locale; -HSPLjava/util/ResourceBundle$CacheKey;->getName()Ljava/lang/String; -HSPLjava/util/ResourceBundle$CacheKey;->hashCode()I -HSPLjava/util/ResourceBundle$CacheKey;->setFormat(Ljava/lang/String;)V -HSPLjava/util/ResourceBundle$CacheKey;->setLocale(Ljava/util/Locale;)Ljava/util/ResourceBundle$CacheKey; -HSPLjava/util/ResourceBundle$Control$1;->run()Ljava/io/InputStream; -HSPLjava/util/ResourceBundle$Control$1;->run()Ljava/lang/Object; -HSPLjava/util/ResourceBundle$Control$CandidateListCache;->createObject(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/ResourceBundle$Control$CandidateListCache;->createObject(Lsun/util/locale/BaseLocale;)Ljava/util/List; -HSPLjava/util/ResourceBundle$Control$CandidateListCache;->getDefaultList(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLjava/util/ResourceBundle$Control;->getCandidateLocales(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/List; -HSPLjava/util/ResourceBundle$Control;->getFallbackLocale(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/Locale; -HSPLjava/util/ResourceBundle$Control;->getFormats(Ljava/lang/String;)Ljava/util/List; -HSPLjava/util/ResourceBundle$Control;->getTimeToLive(Ljava/lang/String;Ljava/util/Locale;)J -HSPLjava/util/ResourceBundle$Control;->newBundle(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle$Control;->toBundleName(Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/String; -HSPLjava/util/ResourceBundle$Control;->toResourceName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/ResourceBundle$Control;->toResourceName0(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/ResourceBundle;-><init>()V -HSPLjava/util/ResourceBundle;->findBundle(Ljava/util/ResourceBundle$CacheKey;Ljava/util/List;Ljava/util/List;ILjava/util/ResourceBundle$Control;Ljava/util/ResourceBundle;)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->findBundleInCache(Ljava/util/ResourceBundle$CacheKey;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->getBundle(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->getBundleImpl(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->getDefaultControl(Ljava/lang/String;)Ljava/util/ResourceBundle$Control; -HSPLjava/util/ResourceBundle;->getObject(Ljava/lang/String;)Ljava/lang/Object; -HSPLjava/util/ResourceBundle;->getString(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/ResourceBundle;->isValidBundle(Ljava/util/ResourceBundle;)Z -HSPLjava/util/ResourceBundle;->loadBundle(Ljava/util/ResourceBundle$CacheKey;Ljava/util/List;Ljava/util/ResourceBundle$Control;Z)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->putBundleInCache(Ljava/util/ResourceBundle$CacheKey;Ljava/util/ResourceBundle;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle; -HSPLjava/util/ResourceBundle;->setExpirationTime(Ljava/util/ResourceBundle$CacheKey;Ljava/util/ResourceBundle$Control;)V -HSPLjava/util/ResourceBundle;->setParent(Ljava/util/ResourceBundle;)V -HSPLjava/util/Scanner;-><init>(Ljava/io/InputStream;)V -HSPLjava/util/Scanner;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V -HSPLjava/util/Scanner;-><init>(Ljava/lang/Readable;Ljava/util/regex/Pattern;)V -HSPLjava/util/Scanner;-><init>(Ljava/lang/String;)V -HSPLjava/util/Scanner;->clearCaches()V -HSPLjava/util/Scanner;->close()V -HSPLjava/util/Scanner;->ensureOpen()V -HSPLjava/util/Scanner;->getCompleteTokenInBuffer(Ljava/util/regex/Pattern;)Ljava/lang/String; -HSPLjava/util/Scanner;->hasNext()Z -HSPLjava/util/Scanner;->hasTokenInBuffer()Z -HSPLjava/util/Scanner;->makeReadable(Ljava/io/InputStream;Ljava/nio/charset/Charset;)Ljava/lang/Readable; -HSPLjava/util/Scanner;->makeSpace()Z -HSPLjava/util/Scanner;->next()Ljava/lang/String; -HSPLjava/util/Scanner;->readInput()V -HSPLjava/util/Scanner;->revertState(Z)Z -HSPLjava/util/Scanner;->saveState()V -HSPLjava/util/Scanner;->toCharset(Ljava/lang/String;)Ljava/nio/charset/Charset; -HSPLjava/util/Scanner;->translateSavedIndexes(I)V -HSPLjava/util/Scanner;->useDelimiter(Ljava/lang/String;)Ljava/util/Scanner; -HSPLjava/util/Scanner;->useLocale(Ljava/util/Locale;)Ljava/util/Scanner; -HSPLjava/util/ServiceLoader;->iterator()Ljava/util/Iterator; -HSPLjava/util/ServiceLoader;->load(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader; -HSPLjava/util/ServiceLoader;->reload()V -HSPLjava/util/Set;->of(Ljava/lang/Object;)Ljava/util/Set; -HSPLjava/util/Set;->of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set; -HSPLjava/util/Set;->of([Ljava/lang/Object;)Ljava/util/Set; -HSPLjava/util/Set;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/SimpleTimeZone;-><init>(ILjava/lang/String;)V -HSPLjava/util/SimpleTimeZone;->clone()Ljava/lang/Object; -HSPLjava/util/SimpleTimeZone;->getOffset(J)I -HSPLjava/util/SimpleTimeZone;->getOffsets(J[I)I -HSPLjava/util/SimpleTimeZone;->getRawOffset()I -HSPLjava/util/SimpleTimeZone;->hasSameRules(Ljava/util/TimeZone;)Z -HSPLjava/util/Spliterator$OfInt;->forEachRemaining(Ljava/util/function/Consumer;)V+]Ljava/util/Spliterator$OfInt;Ljava/lang/StringUTF16$CodePointsSpliteratorForString;,Ljava/util/Spliterators$EmptySpliterator$OfInt;,Ljava/util/Spliterators$IntArraySpliterator;,Ljava/util/stream/Streams$RangeIntSpliterator; -HSPLjava/util/Spliterator;->getExactSizeIfKnown()J+]Ljava/util/Spliterator;megamorphic_types -HSPLjava/util/Spliterators$ArraySpliterator;-><init>([Ljava/lang/Object;I)V -HSPLjava/util/Spliterators$ArraySpliterator;-><init>([Ljava/lang/Object;III)V -HSPLjava/util/Spliterators$ArraySpliterator;->characteristics()I -HSPLjava/util/Spliterators$ArraySpliterator;->estimateSize()J -HSPLjava/util/Spliterators$ArraySpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/Spliterators$ArraySpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/Spliterators$EmptySpliterator$OfInt;->forEachRemaining(Ljava/util/function/IntConsumer;)V -HSPLjava/util/Spliterators$EmptySpliterator$OfRef;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/Spliterators$EmptySpliterator$OfRef;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/Spliterators$EmptySpliterator;->characteristics()I -HSPLjava/util/Spliterators$EmptySpliterator;->estimateSize()J -HSPLjava/util/Spliterators$EmptySpliterator;->forEachRemaining(Ljava/lang/Object;)V -HSPLjava/util/Spliterators$EmptySpliterator;->tryAdvance(Ljava/lang/Object;)Z -HSPLjava/util/Spliterators$IntArraySpliterator;-><init>([IIII)V -HSPLjava/util/Spliterators$IntArraySpliterator;->characteristics()I -HSPLjava/util/Spliterators$IntArraySpliterator;->estimateSize()J -HSPLjava/util/Spliterators$IntArraySpliterator;->forEachRemaining(Ljava/util/function/IntConsumer;)V -HSPLjava/util/Spliterators$IntArraySpliterator;->tryAdvance(Ljava/util/function/IntConsumer;)Z -HSPLjava/util/Spliterators$IteratorSpliterator;-><init>(Ljava/util/Collection;I)V -HSPLjava/util/Spliterators$IteratorSpliterator;->characteristics()I -HSPLjava/util/Spliterators$IteratorSpliterator;->estimateSize()J -HSPLjava/util/Spliterators$IteratorSpliterator;->forEachRemaining(Ljava/util/function/Consumer;)V -HSPLjava/util/Spliterators$IteratorSpliterator;->tryAdvance(Ljava/util/function/Consumer;)Z -HSPLjava/util/Spliterators;->checkFromToBounds(III)V -HSPLjava/util/Spliterators;->emptyIntSpliterator()Ljava/util/Spliterator$OfInt; -HSPLjava/util/Spliterators;->emptySpliterator()Ljava/util/Spliterator; -HSPLjava/util/Spliterators;->spliterator(Ljava/util/Collection;I)Ljava/util/Spliterator; -HSPLjava/util/Spliterators;->spliterator([IIII)Ljava/util/Spliterator$OfInt; -HSPLjava/util/Spliterators;->spliterator([Ljava/lang/Object;I)Ljava/util/Spliterator; -HSPLjava/util/Spliterators;->spliterator([Ljava/lang/Object;III)Ljava/util/Spliterator; -HSPLjava/util/Stack;-><init>()V -HSPLjava/util/Stack;->empty()Z -HSPLjava/util/Stack;->peek()Ljava/lang/Object; -HSPLjava/util/Stack;->pop()Ljava/lang/Object; -HSPLjava/util/Stack;->push(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/StringJoiner;-><init>(Ljava/lang/CharSequence;)V -HSPLjava/util/StringJoiner;-><init>(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V -HSPLjava/util/StringJoiner;->add(Ljava/lang/CharSequence;)Ljava/util/StringJoiner; -HSPLjava/util/StringJoiner;->compactElts()V -HSPLjava/util/StringJoiner;->getChars(Ljava/lang/String;[CI)I -HSPLjava/util/StringJoiner;->toString()Ljava/lang/String; -HSPLjava/util/StringTokenizer;-><init>(Ljava/lang/String;)V -HSPLjava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLjava/util/StringTokenizer;->countTokens()I -HSPLjava/util/StringTokenizer;->hasMoreElements()Z -HSPLjava/util/StringTokenizer;->hasMoreTokens()Z -HSPLjava/util/StringTokenizer;->nextToken()Ljava/lang/String; -HSPLjava/util/StringTokenizer;->scanToken(I)I -HSPLjava/util/StringTokenizer;->setMaxDelimCodePoint()V -HSPLjava/util/StringTokenizer;->skipDelimiters(I)I -HSPLjava/util/TaskQueue;-><init>()V -HSPLjava/util/TaskQueue;->add(Ljava/util/TimerTask;)V -HSPLjava/util/TaskQueue;->clear()V -HSPLjava/util/TaskQueue;->fixDown(I)V -HSPLjava/util/TaskQueue;->fixUp(I)V -HSPLjava/util/TaskQueue;->getMin()Ljava/util/TimerTask; -HSPLjava/util/TaskQueue;->isEmpty()Z -HSPLjava/util/TaskQueue;->removeMin()V -HSPLjava/util/TaskQueue;->rescheduleMin(J)V -HSPLjava/util/TimSort;-><init>([Ljava/lang/Object;Ljava/util/Comparator;[Ljava/lang/Object;II)V -HSPLjava/util/TimSort;->binarySort([Ljava/lang/Object;IIILjava/util/Comparator;)V -HSPLjava/util/TimSort;->countRunAndMakeAscending([Ljava/lang/Object;IILjava/util/Comparator;)I -HSPLjava/util/TimSort;->ensureCapacity(I)[Ljava/lang/Object; -HSPLjava/util/TimSort;->gallopLeft(Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)I -HSPLjava/util/TimSort;->gallopRight(Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)I -HSPLjava/util/TimSort;->mergeAt(I)V -HSPLjava/util/TimSort;->mergeCollapse()V -HSPLjava/util/TimSort;->mergeForceCollapse()V -HSPLjava/util/TimSort;->mergeHi(IIII)V -HSPLjava/util/TimSort;->mergeLo(IIII)V -HSPLjava/util/TimSort;->minRunLength(I)I -HSPLjava/util/TimSort;->pushRun(II)V -HSPLjava/util/TimSort;->reverseRange([Ljava/lang/Object;II)V -HSPLjava/util/TimSort;->sort([Ljava/lang/Object;IILjava/util/Comparator;[Ljava/lang/Object;II)V -HSPLjava/util/TimeZone;-><init>()V -HSPLjava/util/TimeZone;->appendNumber(Ljava/lang/StringBuilder;II)V -HSPLjava/util/TimeZone;->clone()Ljava/lang/Object; -HSPLjava/util/TimeZone;->createGmtOffsetString(ZZI)Ljava/lang/String; -HSPLjava/util/TimeZone;->getAvailableIDs()[Ljava/lang/String; -HSPLjava/util/TimeZone;->getDefault()Ljava/util/TimeZone; -HSPLjava/util/TimeZone;->getDefaultRef()Ljava/util/TimeZone; -HSPLjava/util/TimeZone;->getDisplayName(ZI)Ljava/lang/String; -HSPLjava/util/TimeZone;->getDisplayName(ZILjava/util/Locale;)Ljava/lang/String; -HSPLjava/util/TimeZone;->getID()Ljava/lang/String; -HSPLjava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone; -HSPLjava/util/TimeZone;->setDefault(Ljava/util/TimeZone;)V -HSPLjava/util/TimeZone;->setID(Ljava/lang/String;)V -HSPLjava/util/TimeZone;->toZoneId()Ljava/time/ZoneId; -HSPLjava/util/Timer;-><init>()V -HSPLjava/util/Timer;-><init>(Ljava/lang/String;)V -HSPLjava/util/Timer;-><init>(Ljava/lang/String;Z)V -HSPLjava/util/Timer;->cancel()V -HSPLjava/util/Timer;->sched(Ljava/util/TimerTask;JJ)V -HSPLjava/util/Timer;->schedule(Ljava/util/TimerTask;J)V -HSPLjava/util/Timer;->schedule(Ljava/util/TimerTask;JJ)V -HSPLjava/util/Timer;->scheduleAtFixedRate(Ljava/util/TimerTask;JJ)V -HSPLjava/util/Timer;->serialNumber()I -HSPLjava/util/TimerTask;-><init>()V -HSPLjava/util/TimerTask;->cancel()Z -HSPLjava/util/TimerThread;-><init>(Ljava/util/TaskQueue;)V -HSPLjava/util/TimerThread;->mainLoop()V -HSPLjava/util/TimerThread;->run()V -HSPLjava/util/TreeMap$AscendingSubMap$AscendingEntrySetView;-><init>(Ljava/util/TreeMap$AscendingSubMap;)V -HSPLjava/util/TreeMap$AscendingSubMap$AscendingEntrySetView;->iterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$AscendingSubMap;-><init>(Ljava/util/TreeMap;ZLjava/lang/Object;ZZLjava/lang/Object;Z)V -HSPLjava/util/TreeMap$AscendingSubMap;->entrySet()Ljava/util/Set; -HSPLjava/util/TreeMap$AscendingSubMap;->keyIterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$DescendingSubMap;-><init>(Ljava/util/TreeMap;ZLjava/lang/Object;ZZLjava/lang/Object;Z)V -HSPLjava/util/TreeMap$DescendingSubMap;->keyIterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$DescendingSubMap;->subLowest()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$EntryIterator;-><init>(Ljava/util/TreeMap;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/TreeMap$EntrySet;-><init>(Ljava/util/TreeMap;)V -HSPLjava/util/TreeMap$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$EntrySet;->size()I -HSPLjava/util/TreeMap$KeyIterator;-><init>(Ljava/util/TreeMap;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$KeySet;-><init>(Ljava/util/NavigableMap;)V -HSPLjava/util/TreeMap$KeySet;->isEmpty()Z -HSPLjava/util/TreeMap$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$KeySet;->size()I -HSPLjava/util/TreeMap$NavigableSubMap$DescendingSubMapKeyIterator;-><init>(Ljava/util/TreeMap$NavigableSubMap;Ljava/util/TreeMap$TreeMapEntry;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$NavigableSubMap$DescendingSubMapKeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$NavigableSubMap$EntrySetView;-><init>(Ljava/util/TreeMap$NavigableSubMap;)V -HSPLjava/util/TreeMap$NavigableSubMap$EntrySetView;->isEmpty()Z -HSPLjava/util/TreeMap$NavigableSubMap$EntrySetView;->size()I -HSPLjava/util/TreeMap$NavigableSubMap$SubMapEntryIterator;-><init>(Ljava/util/TreeMap$NavigableSubMap;Ljava/util/TreeMap$TreeMapEntry;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$NavigableSubMap$SubMapEntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$NavigableSubMap$SubMapEntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/TreeMap$NavigableSubMap$SubMapEntryIterator;->remove()V -HSPLjava/util/TreeMap$NavigableSubMap$SubMapIterator;-><init>(Ljava/util/TreeMap$NavigableSubMap;Ljava/util/TreeMap$TreeMapEntry;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$NavigableSubMap$SubMapIterator;->hasNext()Z -HSPLjava/util/TreeMap$NavigableSubMap$SubMapIterator;->nextEntry()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap$SubMapIterator;->prevEntry()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap$SubMapIterator;->removeAscending()V -HSPLjava/util/TreeMap$NavigableSubMap$SubMapKeyIterator;-><init>(Ljava/util/TreeMap$NavigableSubMap;Ljava/util/TreeMap$TreeMapEntry;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$NavigableSubMap$SubMapKeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$NavigableSubMap;-><init>(Ljava/util/TreeMap;ZLjava/lang/Object;ZZLjava/lang/Object;Z)V -HSPLjava/util/TreeMap$NavigableSubMap;->absHighFence()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap;->absHighest()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap;->absLowFence()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap;->absLowest()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$NavigableSubMap;->firstKey()Ljava/lang/Object; -HSPLjava/util/TreeMap$NavigableSubMap;->inRange(Ljava/lang/Object;)Z -HSPLjava/util/TreeMap$NavigableSubMap;->isEmpty()Z -HSPLjava/util/TreeMap$NavigableSubMap;->navigableKeySet()Ljava/util/NavigableSet; -HSPLjava/util/TreeMap$NavigableSubMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap$NavigableSubMap;->size()I -HSPLjava/util/TreeMap$NavigableSubMap;->tooHigh(Ljava/lang/Object;)Z -HSPLjava/util/TreeMap$NavigableSubMap;->tooLow(Ljava/lang/Object;)Z -HSPLjava/util/TreeMap$PrivateEntryIterator;-><init>(Ljava/util/TreeMap;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$PrivateEntryIterator;->hasNext()Z -HSPLjava/util/TreeMap$PrivateEntryIterator;->nextEntry()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap$PrivateEntryIterator;->remove()V -HSPLjava/util/TreeMap$TreeMapEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$TreeMapEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/TreeMap$TreeMapEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/TreeMap$TreeMapEntry;->setValue(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap$ValueIterator;-><init>(Ljava/util/TreeMap;Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/TreeMap$Values;-><init>(Ljava/util/TreeMap;)V -HSPLjava/util/TreeMap$Values;->iterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap$Values;->size()I -HSPLjava/util/TreeMap;->-$$Nest$fgetmodCount(Ljava/util/TreeMap;)I -HSPLjava/util/TreeMap;-><init>()V -HSPLjava/util/TreeMap;-><init>(Ljava/util/Comparator;)V -HSPLjava/util/TreeMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/TreeMap;->addAllForTreeSet(Ljava/util/SortedSet;Ljava/lang/Object;)V -HSPLjava/util/TreeMap;->addEntry(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/TreeMap$TreeMapEntry;Z)V -HSPLjava/util/TreeMap;->addEntryToEmptyMap(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/TreeMap;->buildFromSorted(IIIILjava/util/Iterator;Ljava/io/ObjectInputStream;Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->buildFromSorted(ILjava/util/Iterator;Ljava/io/ObjectInputStream;Ljava/lang/Object;)V -HSPLjava/util/TreeMap;->ceilingEntry(Ljava/lang/Object;)Ljava/util/Map$Entry; -HSPLjava/util/TreeMap;->ceilingKey(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->clear()V -HSPLjava/util/TreeMap;->clone()Ljava/lang/Object; -HSPLjava/util/TreeMap;->colorOf(Ljava/util/TreeMap$TreeMapEntry;)Z -HSPLjava/util/TreeMap;->comparator()Ljava/util/Comparator; -HSPLjava/util/TreeMap;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/TreeMap;->computeRedLevel(I)I -HSPLjava/util/TreeMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/TreeMap;->deleteEntry(Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap;->descendingKeySet()Ljava/util/NavigableSet; -HSPLjava/util/TreeMap;->descendingMap()Ljava/util/NavigableMap; -HSPLjava/util/TreeMap;->entrySet()Ljava/util/Set; -HSPLjava/util/TreeMap;->exportEntry(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/Map$Entry; -HSPLjava/util/TreeMap;->firstKey()Ljava/lang/Object; -HSPLjava/util/TreeMap;->fixAfterDeletion(Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap;->fixAfterInsertion(Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap;->floorEntry(Ljava/lang/Object;)Ljava/util/Map$Entry; -HSPLjava/util/TreeMap;->floorKey(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->getCeilingEntry(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getEntry(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getEntryUsingComparator(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getFirstEntry()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getFloorEntry(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getHigherEntry(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getLastEntry()Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->getLowerEntry(Ljava/lang/Object;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->headMap(Ljava/lang/Object;Z)Ljava/util/NavigableMap; -HSPLjava/util/TreeMap;->key(Ljava/util/TreeMap$TreeMapEntry;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->keyIterator()Ljava/util/Iterator; -HSPLjava/util/TreeMap;->keyOrNull(Ljava/util/TreeMap$TreeMapEntry;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->keySet()Ljava/util/Set; -HSPLjava/util/TreeMap;->lastKey()Ljava/lang/Object; -HSPLjava/util/TreeMap;->leftOf(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->lowerEntry(Ljava/lang/Object;)Ljava/util/Map$Entry; -HSPLjava/util/TreeMap;->navigableKeySet()Ljava/util/NavigableSet; -HSPLjava/util/TreeMap;->parentOf(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->pollFirstEntry()Ljava/util/Map$Entry; -HSPLjava/util/TreeMap;->predecessor(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->put(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; -HSPLjava/util/TreeMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/TreeMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeMap;->rightOf(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->rotateLeft(Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap;->rotateRight(Ljava/util/TreeMap$TreeMapEntry;)V -HSPLjava/util/TreeMap;->setColor(Ljava/util/TreeMap$TreeMapEntry;Z)V -HSPLjava/util/TreeMap;->size()I -HSPLjava/util/TreeMap;->subMap(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/SortedMap; -HSPLjava/util/TreeMap;->subMap(Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/NavigableMap; -HSPLjava/util/TreeMap;->successor(Ljava/util/TreeMap$TreeMapEntry;)Ljava/util/TreeMap$TreeMapEntry; -HSPLjava/util/TreeMap;->tailMap(Ljava/lang/Object;Z)Ljava/util/NavigableMap; -HSPLjava/util/TreeMap;->values()Ljava/util/Collection; -HSPLjava/util/TreeSet;-><init>()V -HSPLjava/util/TreeSet;-><init>(Ljava/util/Collection;)V -HSPLjava/util/TreeSet;-><init>(Ljava/util/Comparator;)V -HSPLjava/util/TreeSet;-><init>(Ljava/util/NavigableMap;)V -HSPLjava/util/TreeSet;-><init>(Ljava/util/SortedSet;)V -HSPLjava/util/TreeSet;->add(Ljava/lang/Object;)Z -HSPLjava/util/TreeSet;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/TreeSet;->ceiling(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeSet;->clear()V -HSPLjava/util/TreeSet;->comparator()Ljava/util/Comparator; -HSPLjava/util/TreeSet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/TreeSet;->descendingSet()Ljava/util/NavigableSet; -HSPLjava/util/TreeSet;->first()Ljava/lang/Object; -HSPLjava/util/TreeSet;->floor(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/TreeSet;->isEmpty()Z -HSPLjava/util/TreeSet;->iterator()Ljava/util/Iterator; -HSPLjava/util/TreeSet;->last()Ljava/lang/Object; -HSPLjava/util/TreeSet;->remove(Ljava/lang/Object;)Z -HSPLjava/util/TreeSet;->size()I -HSPLjava/util/TreeSet;->subSet(Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/NavigableSet; -HSPLjava/util/TreeSet;->tailSet(Ljava/lang/Object;Z)Ljava/util/NavigableSet; -HSPLjava/util/UUID;-><init>(JJ)V -HSPLjava/util/UUID;-><init>([B)V -HSPLjava/util/UUID;->digits(JI)Ljava/lang/String; -HSPLjava/util/UUID;->equals(Ljava/lang/Object;)Z -HSPLjava/util/UUID;->fromString(Ljava/lang/String;)Ljava/util/UUID; -HSPLjava/util/UUID;->fromStringCurrentJava(Ljava/lang/String;)Ljava/util/UUID; -HSPLjava/util/UUID;->fromStringJava8(Ljava/lang/String;)Ljava/util/UUID; -HSPLjava/util/UUID;->getLeastSignificantBits()J -HSPLjava/util/UUID;->getMostSignificantBits()J -HSPLjava/util/UUID;->hashCode()I -HSPLjava/util/UUID;->nameUUIDFromBytes([B)Ljava/util/UUID; -HSPLjava/util/UUID;->parse4Nibbles(Ljava/lang/String;I)J -HSPLjava/util/UUID;->randomUUID()Ljava/util/UUID; -HSPLjava/util/UUID;->toString()Ljava/lang/String; -HSPLjava/util/Vector$1;-><init>(Ljava/util/Vector;)V -HSPLjava/util/Vector$1;->hasMoreElements()Z -HSPLjava/util/Vector$1;->nextElement()Ljava/lang/Object; -HSPLjava/util/Vector$Itr;-><init>(Ljava/util/Vector;)V -HSPLjava/util/Vector$Itr;->checkForComodification()V -HSPLjava/util/Vector$Itr;->hasNext()Z -HSPLjava/util/Vector$Itr;->next()Ljava/lang/Object; -HSPLjava/util/Vector;-><init>()V -HSPLjava/util/Vector;-><init>(I)V -HSPLjava/util/Vector;-><init>(II)V -HSPLjava/util/Vector;->add(Ljava/lang/Object;)Z -HSPLjava/util/Vector;->add(Ljava/lang/Object;[Ljava/lang/Object;I)V -HSPLjava/util/Vector;->addElement(Ljava/lang/Object;)V -HSPLjava/util/Vector;->clear()V -HSPLjava/util/Vector;->contains(Ljava/lang/Object;)Z -HSPLjava/util/Vector;->copyInto([Ljava/lang/Object;)V -HSPLjava/util/Vector;->elementAt(I)Ljava/lang/Object; -HSPLjava/util/Vector;->elementData(I)Ljava/lang/Object; -HSPLjava/util/Vector;->elements()Ljava/util/Enumeration; -HSPLjava/util/Vector;->get(I)Ljava/lang/Object; -HSPLjava/util/Vector;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/Vector;->indexOf(Ljava/lang/Object;I)I -HSPLjava/util/Vector;->isEmpty()Z -HSPLjava/util/Vector;->iterator()Ljava/util/Iterator; -HSPLjava/util/Vector;->removeAllElements()V -HSPLjava/util/Vector;->removeElement(Ljava/lang/Object;)Z -HSPLjava/util/Vector;->removeElementAt(I)V -HSPLjava/util/Vector;->size()I -HSPLjava/util/Vector;->sort(Ljava/util/Comparator;)V -HSPLjava/util/Vector;->toArray()[Ljava/lang/Object; -HSPLjava/util/Vector;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/WeakHashMap$Entry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;ILjava/util/WeakHashMap$Entry;)V -HSPLjava/util/WeakHashMap$Entry;->getKey()Ljava/lang/Object; -HSPLjava/util/WeakHashMap$Entry;->getValue()Ljava/lang/Object; -HSPLjava/util/WeakHashMap$EntryIterator;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/WeakHashMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/WeakHashMap$EntrySet;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$EntrySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/WeakHashMap$HashIterator;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$HashIterator;->hasNext()Z -HSPLjava/util/WeakHashMap$HashIterator;->nextEntry()Ljava/util/WeakHashMap$Entry; -HSPLjava/util/WeakHashMap$KeyIterator;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$KeyIterator;-><init>(Ljava/util/WeakHashMap;Ljava/util/WeakHashMap$KeyIterator-IA;)V -HSPLjava/util/WeakHashMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/WeakHashMap$KeySet;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$KeySet;-><init>(Ljava/util/WeakHashMap;Ljava/util/WeakHashMap$KeySet-IA;)V -HSPLjava/util/WeakHashMap$KeySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/WeakHashMap$KeySet;->size()I -HSPLjava/util/WeakHashMap$ValueIterator;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/WeakHashMap$Values;-><init>(Ljava/util/WeakHashMap;)V -HSPLjava/util/WeakHashMap$Values;->iterator()Ljava/util/Iterator; -HSPLjava/util/WeakHashMap;-><init>()V -HSPLjava/util/WeakHashMap;-><init>(I)V -HSPLjava/util/WeakHashMap;-><init>(IF)V -HSPLjava/util/WeakHashMap;->clear()V -HSPLjava/util/WeakHashMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/WeakHashMap;->entrySet()Ljava/util/Set; -HSPLjava/util/WeakHashMap;->expungeStaleEntries()V -HSPLjava/util/WeakHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/WeakHashMap;->getEntry(Ljava/lang/Object;)Ljava/util/WeakHashMap$Entry; -HSPLjava/util/WeakHashMap;->getTable()[Ljava/util/WeakHashMap$Entry; -HSPLjava/util/WeakHashMap;->hash(Ljava/lang/Object;)I -HSPLjava/util/WeakHashMap;->indexFor(II)I -HSPLjava/util/WeakHashMap;->isEmpty()Z -HSPLjava/util/WeakHashMap;->keySet()Ljava/util/Set; -HSPLjava/util/WeakHashMap;->maskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/WeakHashMap;->matchesKey(Ljava/util/WeakHashMap$Entry;Ljava/lang/Object;)Z -HSPLjava/util/WeakHashMap;->newTable(I)[Ljava/util/WeakHashMap$Entry; -HSPLjava/util/WeakHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/WeakHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/WeakHashMap;->resize(I)V -HSPLjava/util/WeakHashMap;->size()I -HSPLjava/util/WeakHashMap;->transfer([Ljava/util/WeakHashMap$Entry;[Ljava/util/WeakHashMap$Entry;)V -HSPLjava/util/WeakHashMap;->unmaskNull(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/WeakHashMap;->values()Ljava/util/Collection; -HSPLjava/util/concurrent/AbstractExecutorService;-><init>()V -HSPLjava/util/concurrent/AbstractExecutorService;->invokeAll(Ljava/util/Collection;JLjava/util/concurrent/TimeUnit;)Ljava/util/List; -HSPLjava/util/concurrent/AbstractExecutorService;->newTaskFor(Ljava/lang/Runnable;Ljava/lang/Object;)Ljava/util/concurrent/RunnableFuture; -HSPLjava/util/concurrent/AbstractExecutorService;->newTaskFor(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/RunnableFuture; -HSPLjava/util/concurrent/AbstractExecutorService;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/AbstractExecutorService;->submit(Ljava/lang/Runnable;Ljava/lang/Object;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/AbstractExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/ArrayBlockingQueue;-><init>(I)V -HSPLjava/util/concurrent/ArrayBlockingQueue;-><init>(IZ)V -HSPLjava/util/concurrent/ArrayBlockingQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ArrayBlockingQueue;->dequeue()Ljava/lang/Object; -HSPLjava/util/concurrent/ArrayBlockingQueue;->drainTo(Ljava/util/Collection;)I -HSPLjava/util/concurrent/ArrayBlockingQueue;->drainTo(Ljava/util/Collection;I)I -HSPLjava/util/concurrent/ArrayBlockingQueue;->enqueue(Ljava/lang/Object;)V -HSPLjava/util/concurrent/ArrayBlockingQueue;->itemAt(I)Ljava/lang/Object; -HSPLjava/util/concurrent/ArrayBlockingQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ArrayBlockingQueue;->peek()Ljava/lang/Object; -HSPLjava/util/concurrent/ArrayBlockingQueue;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/ArrayBlockingQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/ArrayBlockingQueue;->put(Ljava/lang/Object;)V -HSPLjava/util/concurrent/ArrayBlockingQueue;->size()I -HSPLjava/util/concurrent/ArrayBlockingQueue;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/CancellationException;-><init>()V -HSPLjava/util/concurrent/CancellationException;-><init>(Ljava/lang/String;)V -HSPLjava/util/concurrent/CompletableFuture$AsyncRun;-><init>(Ljava/util/concurrent/CompletableFuture;Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/CompletableFuture$AsyncRun;->run()V -HSPLjava/util/concurrent/CompletableFuture$AsyncSupply;-><init>(Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Supplier;)V -HSPLjava/util/concurrent/CompletableFuture$AsyncSupply;->run()V -HSPLjava/util/concurrent/CompletableFuture$Completion;-><init>()V -HSPLjava/util/concurrent/CompletableFuture$Signaller;-><init>(ZJJ)V -HSPLjava/util/concurrent/CompletableFuture$Signaller;->block()Z -HSPLjava/util/concurrent/CompletableFuture$Signaller;->isReleasable()Z -HSPLjava/util/concurrent/CompletableFuture$Signaller;->tryFire(I)Ljava/util/concurrent/CompletableFuture; -HSPLjava/util/concurrent/CompletableFuture;-><init>()V -HSPLjava/util/concurrent/CompletableFuture;->asyncRunStage(Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; -HSPLjava/util/concurrent/CompletableFuture;->asyncSupplyStage(Ljava/util/concurrent/Executor;Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; -HSPLjava/util/concurrent/CompletableFuture;->complete(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CompletableFuture;->completeNull()Z -HSPLjava/util/concurrent/CompletableFuture;->completeValue(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CompletableFuture;->get()Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->internalComplete(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CompletableFuture;->isDone()Z -HSPLjava/util/concurrent/CompletableFuture;->join()Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->postComplete()V -HSPLjava/util/concurrent/CompletableFuture;->reportGet(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->reportJoin(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->runAsync(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; -HSPLjava/util/concurrent/CompletableFuture;->screenExecutor(Ljava/util/concurrent/Executor;)Ljava/util/concurrent/Executor; -HSPLjava/util/concurrent/CompletableFuture;->supplyAsync(Ljava/util/function/Supplier;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; -HSPLjava/util/concurrent/CompletableFuture;->timedGet(J)Ljava/lang/Object; -HSPLjava/util/concurrent/CompletableFuture;->tryPushStack(Ljava/util/concurrent/CompletableFuture$Completion;)Z -HSPLjava/util/concurrent/CompletableFuture;->waitingGet(Z)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$BaseIterator;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;IIILjava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$BaseIterator;->hasNext()Z -HSPLjava/util/concurrent/ConcurrentHashMap$BaseIterator;->remove()V -HSPLjava/util/concurrent/ConcurrentHashMap$CollectionView;-><init>(Ljava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$CollectionView;->size()I -HSPLjava/util/concurrent/ConcurrentHashMap$CollectionView;->toArray()[Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$CounterCell;-><init>(J)V -HSPLjava/util/concurrent/ConcurrentHashMap$EntryIterator;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;IIILjava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$EntryIterator;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$EntryIterator;->next()Ljava/util/Map$Entry; -HSPLjava/util/concurrent/ConcurrentHashMap$EntrySetView;-><init>(Ljava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$EntrySetView;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/ConcurrentHashMap$ForwardingNode;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;)V -HSPLjava/util/concurrent/ConcurrentHashMap$ForwardingNode;->find(ILjava/lang/Object;)Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap$KeyIterator;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;IIILjava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$KeyIterator;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$KeySetView;-><init>(Ljava/util/concurrent/ConcurrentHashMap;Ljava/lang/Object;)V -HSPLjava/util/concurrent/ConcurrentHashMap$KeySetView;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/ConcurrentHashMap$KeySetView;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/concurrent/ConcurrentHashMap$MapEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$MapEntry;->getKey()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$MapEntry;->getValue()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$Node;-><init>(ILjava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/concurrent/ConcurrentHashMap$Node;-><init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentHashMap$Node;)V -HSPLjava/util/concurrent/ConcurrentHashMap$ReservationNode;-><init>()V -HSPLjava/util/concurrent/ConcurrentHashMap$Traverser;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;III)V -HSPLjava/util/concurrent/ConcurrentHashMap$Traverser;->advance()Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap$TreeBin;->find(ILjava/lang/Object;)Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap$TreeNode;->findTreeNode(ILjava/lang/Object;Ljava/lang/Class;)Ljava/util/concurrent/ConcurrentHashMap$TreeNode; -HSPLjava/util/concurrent/ConcurrentHashMap$ValueIterator;-><init>([Ljava/util/concurrent/ConcurrentHashMap$Node;IIILjava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$ValueIterator;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap$ValuesView;-><init>(Ljava/util/concurrent/ConcurrentHashMap;)V -HSPLjava/util/concurrent/ConcurrentHashMap$ValuesView;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/ConcurrentHashMap;-><init>()V -HSPLjava/util/concurrent/ConcurrentHashMap;-><init>(I)V -HSPLjava/util/concurrent/ConcurrentHashMap;-><init>(IFI)V -HSPLjava/util/concurrent/ConcurrentHashMap;-><init>(Ljava/util/Map;)V -HSPLjava/util/concurrent/ConcurrentHashMap;->addCount(JI)V -HSPLjava/util/concurrent/ConcurrentHashMap;->casTabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;ILjava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$Node;)Z -HSPLjava/util/concurrent/ConcurrentHashMap;->clear()V -HSPLjava/util/concurrent/ConcurrentHashMap;->computeIfAbsent(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->containsKey(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentHashMap;->entrySet()Ljava/util/Set; -HSPLjava/util/concurrent/ConcurrentHashMap;->forEach(Ljava/util/function/BiConsumer;)V -HSPLjava/util/concurrent/ConcurrentHashMap;->fullAddCount(JZ)V -HSPLjava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->getOrDefault(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->helpTransfer([Ljava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$Node;)[Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap;->initTable()[Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap;->isEmpty()Z -HSPLjava/util/concurrent/ConcurrentHashMap;->keySet()Ljava/util/Set; -HSPLjava/util/concurrent/ConcurrentHashMap;->mappingCount()J -HSPLjava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->putAll(Ljava/util/Map;)V -HSPLjava/util/concurrent/ConcurrentHashMap;->putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->putVal(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentHashMap;->replace(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentHashMap;->replaceNode(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentHashMap;->resizeStamp(I)I -HSPLjava/util/concurrent/ConcurrentHashMap;->setTabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;ILjava/util/concurrent/ConcurrentHashMap$Node;)V -HSPLjava/util/concurrent/ConcurrentHashMap;->size()I -HSPLjava/util/concurrent/ConcurrentHashMap;->spread(I)I -HSPLjava/util/concurrent/ConcurrentHashMap;->sumCount()J -HSPLjava/util/concurrent/ConcurrentHashMap;->tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node; -HSPLjava/util/concurrent/ConcurrentHashMap;->tableSizeFor(I)I -HSPLjava/util/concurrent/ConcurrentHashMap;->transfer([Ljava/util/concurrent/ConcurrentHashMap$Node;[Ljava/util/concurrent/ConcurrentHashMap$Node;)V -HSPLjava/util/concurrent/ConcurrentHashMap;->treeifyBin([Ljava/util/concurrent/ConcurrentHashMap$Node;I)V -HSPLjava/util/concurrent/ConcurrentHashMap;->tryPresize(I)V -HSPLjava/util/concurrent/ConcurrentHashMap;->values()Ljava/util/Collection; -HSPLjava/util/concurrent/ConcurrentLinkedDeque$Node;-><init>()V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;-><init>()V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->first()Ljava/util/concurrent/ConcurrentLinkedDeque$Node; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->isEmpty()Z -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->linkLast(Ljava/lang/Object;)V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->nextTerminator()Ljava/util/concurrent/ConcurrentLinkedDeque$Node; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->offerLast(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->peekFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->pollFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->prevTerminator()Ljava/util/concurrent/ConcurrentLinkedDeque$Node; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->size()I -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->skipDeletedPredecessors(Ljava/util/concurrent/ConcurrentLinkedDeque$Node;)V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->skipDeletedSuccessors(Ljava/util/concurrent/ConcurrentLinkedDeque$Node;)V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->succ(Ljava/util/concurrent/ConcurrentLinkedDeque$Node;)Ljava/util/concurrent/ConcurrentLinkedDeque$Node; -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->unlink(Ljava/util/concurrent/ConcurrentLinkedDeque$Node;)V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->unlinkLast(Ljava/util/concurrent/ConcurrentLinkedDeque$Node;Ljava/util/concurrent/ConcurrentLinkedDeque$Node;)V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->updateHead()V -HSPLjava/util/concurrent/ConcurrentLinkedDeque;->updateTail()V -HSPLjava/util/concurrent/ConcurrentLinkedQueue$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Itr;-><init>(Ljava/util/concurrent/ConcurrentLinkedQueue;)V -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Itr;->hasNext()Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Itr;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Node;-><init>()V -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Node;-><init>(Ljava/lang/Object;)V -HSPLjava/util/concurrent/ConcurrentLinkedQueue$Node;->casItem(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;-><init>()V -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->bulkRemove(Ljava/util/function/Predicate;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->clear()V -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->contains(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->first()Ljava/util/concurrent/ConcurrentLinkedQueue$Node; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->isEmpty()Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->lambda$clear$2(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->peek()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->remove(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->size()I -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->succ(Ljava/util/concurrent/ConcurrentLinkedQueue$Node;)Ljava/util/concurrent/ConcurrentLinkedQueue$Node; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->toArray()[Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->toArrayInternal([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentLinkedQueue;->updateHead(Ljava/util/concurrent/ConcurrentLinkedQueue$Node;Ljava/util/concurrent/ConcurrentLinkedQueue$Node;)V -HSPLjava/util/concurrent/ConcurrentSkipListMap$Index;-><init>(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V -HSPLjava/util/concurrent/ConcurrentSkipListMap$Iter;-><init>(Ljava/util/concurrent/ConcurrentSkipListMap;)V -HSPLjava/util/concurrent/ConcurrentSkipListMap$Iter;->hasNext()Z -HSPLjava/util/concurrent/ConcurrentSkipListMap$Node;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V -HSPLjava/util/concurrent/ConcurrentSkipListMap;-><init>()V -HSPLjava/util/concurrent/ConcurrentSkipListMap;->addIndices(Ljava/util/concurrent/ConcurrentSkipListMap$Index;ILjava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/Comparator;)Z -HSPLjava/util/concurrent/ConcurrentSkipListMap;->cpr(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I -HSPLjava/util/concurrent/ConcurrentSkipListMap;->doGet(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->doPut(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->doRemove(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->findFirst()Ljava/util/concurrent/ConcurrentSkipListMap$Node; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->findPredecessor(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/ConcurrentSkipListMap;->tryReduceLevel()V -HSPLjava/util/concurrent/ConcurrentSkipListMap;->unlinkNode(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V -HSPLjava/util/concurrent/ConcurrentSkipListSet;-><init>()V -HSPLjava/util/concurrent/ConcurrentSkipListSet;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList$$ExternalSyntheticLambda2;-><init>(Ljava/util/Collection;)V -HSPLjava/util/concurrent/CopyOnWriteArrayList$$ExternalSyntheticLambda2;->test(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList$COWIterator;-><init>([Ljava/lang/Object;I)V -HSPLjava/util/concurrent/CopyOnWriteArrayList$COWIterator;->hasNext()Z -HSPLjava/util/concurrent/CopyOnWriteArrayList$COWIterator;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;-><init>()V -HSPLjava/util/concurrent/CopyOnWriteArrayList;-><init>(Ljava/util/Collection;)V -HSPLjava/util/concurrent/CopyOnWriteArrayList;-><init>([Ljava/lang/Object;)V -HSPLjava/util/concurrent/CopyOnWriteArrayList;->add(ILjava/lang/Object;)V -HSPLjava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->addAllAbsent(Ljava/util/Collection;)I -HSPLjava/util/concurrent/CopyOnWriteArrayList;->addIfAbsent(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->addIfAbsent(Ljava/lang/Object;[Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->bulkRemove(Ljava/util/function/Predicate;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->bulkRemove(Ljava/util/function/Predicate;II)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->clear()V -HSPLjava/util/concurrent/CopyOnWriteArrayList;->contains(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->elementAt([Ljava/lang/Object;I)Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->get(I)Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->getArray()[Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/concurrent/CopyOnWriteArrayList;->indexOfRange(Ljava/lang/Object;[Ljava/lang/Object;II)I -HSPLjava/util/concurrent/CopyOnWriteArrayList;->isEmpty()Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->lambda$removeAll$0(Ljava/util/Collection;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->remove(I)Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->remove(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->remove(Ljava/lang/Object;[Ljava/lang/Object;I)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->removeAll(Ljava/util/Collection;)Z -HSPLjava/util/concurrent/CopyOnWriteArrayList;->setArray([Ljava/lang/Object;)V -HSPLjava/util/concurrent/CopyOnWriteArrayList;->size()I -HSPLjava/util/concurrent/CopyOnWriteArrayList;->toArray()[Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; -HSPLjava/util/concurrent/CopyOnWriteArrayList;->toString()Ljava/lang/String; -HSPLjava/util/concurrent/CopyOnWriteArraySet;-><init>()V -HSPLjava/util/concurrent/CopyOnWriteArraySet;-><init>(Ljava/util/Collection;)V -HSPLjava/util/concurrent/CopyOnWriteArraySet;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArraySet;->addAll(Ljava/util/Collection;)Z -HSPLjava/util/concurrent/CopyOnWriteArraySet;->clear()V -HSPLjava/util/concurrent/CopyOnWriteArraySet;->contains(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArraySet;->isEmpty()Z -HSPLjava/util/concurrent/CopyOnWriteArraySet;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/CopyOnWriteArraySet;->remove(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/CopyOnWriteArraySet;->size()I -HSPLjava/util/concurrent/CountDownLatch$Sync;-><init>(I)V -HSPLjava/util/concurrent/CountDownLatch$Sync;->getCount()I -HSPLjava/util/concurrent/CountDownLatch$Sync;->tryAcquireShared(I)I -HSPLjava/util/concurrent/CountDownLatch$Sync;->tryReleaseShared(I)Z -HSPLjava/util/concurrent/CountDownLatch;-><init>(I)V -HSPLjava/util/concurrent/CountDownLatch;->await()V -HSPLjava/util/concurrent/CountDownLatch;->await(JLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/CountDownLatch;->countDown()V -HSPLjava/util/concurrent/CountDownLatch;->getCount()J -HSPLjava/util/concurrent/DelayQueue;-><init>()V -HSPLjava/util/concurrent/DelayQueue;->add(Ljava/util/concurrent/Delayed;)Z -HSPLjava/util/concurrent/DelayQueue;->offer(Ljava/util/concurrent/Delayed;)Z -HSPLjava/util/concurrent/ExecutionException;-><init>(Ljava/lang/Throwable;)V -HSPLjava/util/concurrent/Executors$DefaultThreadFactory;-><init>()V -HSPLjava/util/concurrent/Executors$DefaultThreadFactory;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread; -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;-><init>(Ljava/util/concurrent/ExecutorService;)V -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->awaitTermination(JLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->execute(Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->isShutdown()Z -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->shutdown()V -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->shutdownNow()Ljava/util/List; -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/Executors$DelegatedExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/Executors$DelegatedScheduledExecutorService;-><init>(Ljava/util/concurrent/ScheduledExecutorService;)V -HSPLjava/util/concurrent/Executors$DelegatedScheduledExecutorService;->schedule(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/Executors$DelegatedScheduledExecutorService;->schedule(Ljava/util/concurrent/Callable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/Executors$DelegatedScheduledExecutorService;->scheduleAtFixedRate(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/Executors$DelegatedScheduledExecutorService;->scheduleWithFixedDelay(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/Executors$FinalizableDelegatedExecutorService;-><init>(Ljava/util/concurrent/ExecutorService;)V -HSPLjava/util/concurrent/Executors$FinalizableDelegatedExecutorService;->finalize()V -HSPLjava/util/concurrent/Executors$RunnableAdapter;-><init>(Ljava/lang/Runnable;Ljava/lang/Object;)V -HSPLjava/util/concurrent/Executors$RunnableAdapter;->call()Ljava/lang/Object; -HSPLjava/util/concurrent/Executors;->callable(Ljava/lang/Runnable;)Ljava/util/concurrent/Callable; -HSPLjava/util/concurrent/Executors;->callable(Ljava/lang/Runnable;Ljava/lang/Object;)Ljava/util/concurrent/Callable; -HSPLjava/util/concurrent/Executors;->defaultThreadFactory()Ljava/util/concurrent/ThreadFactory; -HSPLjava/util/concurrent/Executors;->newCachedThreadPool()Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newCachedThreadPool(Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newFixedThreadPool(I)Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newFixedThreadPool(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newScheduledThreadPool(I)Ljava/util/concurrent/ScheduledExecutorService; -HSPLjava/util/concurrent/Executors;->newScheduledThreadPool(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService; -HSPLjava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newSingleThreadExecutor(Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->newSingleThreadScheduledExecutor()Ljava/util/concurrent/ScheduledExecutorService; -HSPLjava/util/concurrent/Executors;->newSingleThreadScheduledExecutor(Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService; -HSPLjava/util/concurrent/Executors;->unconfigurableExecutorService(Ljava/util/concurrent/ExecutorService;)Ljava/util/concurrent/ExecutorService; -HSPLjava/util/concurrent/Executors;->unconfigurableScheduledExecutorService(Ljava/util/concurrent/ScheduledExecutorService;)Ljava/util/concurrent/ScheduledExecutorService; -HSPLjava/util/concurrent/ForkJoinPool;->managedBlock(Ljava/util/concurrent/ForkJoinPool$ManagedBlocker;)V -HSPLjava/util/concurrent/ForkJoinPool;->unmanagedBlock(Ljava/util/concurrent/ForkJoinPool$ManagedBlocker;)V -HSPLjava/util/concurrent/ForkJoinTask;-><init>()V -HSPLjava/util/concurrent/FutureTask$WaitNode;-><init>()V -HSPLjava/util/concurrent/FutureTask;-><init>(Ljava/lang/Runnable;Ljava/lang/Object;)V -HSPLjava/util/concurrent/FutureTask;-><init>(Ljava/util/concurrent/Callable;)V -HSPLjava/util/concurrent/FutureTask;->awaitDone(ZJ)I -HSPLjava/util/concurrent/FutureTask;->cancel(Z)Z -HSPLjava/util/concurrent/FutureTask;->done()V -HSPLjava/util/concurrent/FutureTask;->finishCompletion()V -HSPLjava/util/concurrent/FutureTask;->get()Ljava/lang/Object; -HSPLjava/util/concurrent/FutureTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/FutureTask;->handlePossibleCancellationInterrupt(I)V -HSPLjava/util/concurrent/FutureTask;->isCancelled()Z -HSPLjava/util/concurrent/FutureTask;->isDone()Z -HSPLjava/util/concurrent/FutureTask;->removeWaiter(Ljava/util/concurrent/FutureTask$WaitNode;)V -HSPLjava/util/concurrent/FutureTask;->report(I)Ljava/lang/Object; -HSPLjava/util/concurrent/FutureTask;->run()V -HSPLjava/util/concurrent/FutureTask;->runAndReset()Z -HSPLjava/util/concurrent/FutureTask;->set(Ljava/lang/Object;)V -HSPLjava/util/concurrent/FutureTask;->setException(Ljava/lang/Throwable;)V -HSPLjava/util/concurrent/LinkedBlockingDeque$Node;-><init>(Ljava/lang/Object;)V -HSPLjava/util/concurrent/LinkedBlockingDeque;-><init>()V -HSPLjava/util/concurrent/LinkedBlockingDeque;-><init>(I)V -HSPLjava/util/concurrent/LinkedBlockingDeque;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->addFirst(Ljava/lang/Object;)V -HSPLjava/util/concurrent/LinkedBlockingDeque;->addLast(Ljava/lang/Object;)V -HSPLjava/util/concurrent/LinkedBlockingDeque;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/LinkedBlockingDeque;->linkFirst(Ljava/util/concurrent/LinkedBlockingDeque$Node;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->linkLast(Ljava/util/concurrent/LinkedBlockingDeque$Node;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->offerFirst(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->offerLast(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/LinkedBlockingDeque;->peekFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->pollFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->pollFirst(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->size()I -HSPLjava/util/concurrent/LinkedBlockingDeque;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->takeFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingDeque;->unlinkFirst()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingQueue$Node;-><init>(Ljava/lang/Object;)V -HSPLjava/util/concurrent/LinkedBlockingQueue;-><init>()V -HSPLjava/util/concurrent/LinkedBlockingQueue;-><init>(I)V -HSPLjava/util/concurrent/LinkedBlockingQueue;->clear()V -HSPLjava/util/concurrent/LinkedBlockingQueue;->dequeue()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingQueue;->drainTo(Ljava/util/Collection;)I -HSPLjava/util/concurrent/LinkedBlockingQueue;->drainTo(Ljava/util/Collection;I)I -HSPLjava/util/concurrent/LinkedBlockingQueue;->enqueue(Ljava/util/concurrent/LinkedBlockingQueue$Node;)V -HSPLjava/util/concurrent/LinkedBlockingQueue;->fullyLock()V -HSPLjava/util/concurrent/LinkedBlockingQueue;->fullyUnlock()V -HSPLjava/util/concurrent/LinkedBlockingQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/LinkedBlockingQueue;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/LinkedBlockingQueue;->put(Ljava/lang/Object;)V -HSPLjava/util/concurrent/LinkedBlockingQueue;->signalNotEmpty()V -HSPLjava/util/concurrent/LinkedBlockingQueue;->signalNotFull()V -HSPLjava/util/concurrent/LinkedBlockingQueue;->size()I -HSPLjava/util/concurrent/LinkedBlockingQueue;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/PriorityBlockingQueue;-><init>()V -HSPLjava/util/concurrent/PriorityBlockingQueue;-><init>(ILjava/util/Comparator;)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/PriorityBlockingQueue;->dequeue()Ljava/lang/Object; -HSPLjava/util/concurrent/PriorityBlockingQueue;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/concurrent/PriorityBlockingQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/PriorityBlockingQueue;->peek()Ljava/lang/Object; -HSPLjava/util/concurrent/PriorityBlockingQueue;->poll()Ljava/lang/Object; -HSPLjava/util/concurrent/PriorityBlockingQueue;->put(Ljava/lang/Object;)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->remove(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/PriorityBlockingQueue;->removeAt(I)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->siftDownComparable(ILjava/lang/Object;[Ljava/lang/Object;I)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->siftDownUsingComparator(ILjava/lang/Object;[Ljava/lang/Object;ILjava/util/Comparator;)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->siftUpComparable(ILjava/lang/Object;[Ljava/lang/Object;)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->siftUpUsingComparator(ILjava/lang/Object;[Ljava/lang/Object;Ljava/util/Comparator;)V -HSPLjava/util/concurrent/PriorityBlockingQueue;->size()I -HSPLjava/util/concurrent/PriorityBlockingQueue;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/PriorityBlockingQueue;->tryGrow([Ljava/lang/Object;I)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr;-><init>(Ljava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;[Ljava/util/concurrent/RunnableScheduledFuture;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr;->hasNext()Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr;->next()Ljava/lang/Object; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr;->next()Ljava/lang/Runnable; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr;->remove()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;-><init>()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->add(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->add(Ljava/lang/Runnable;)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->drainTo(Ljava/util/Collection;)I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->drainTo(Ljava/util/Collection;I)I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->finishPoll(Ljava/util/concurrent/RunnableScheduledFuture;)Ljava/util/concurrent/RunnableScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->grow()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->indexOf(Ljava/lang/Object;)I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->isEmpty()Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->iterator()Ljava/util/Iterator; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->offer(Ljava/lang/Runnable;)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/RunnableScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->remove(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->setIndex(Ljava/util/concurrent/RunnableScheduledFuture;I)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->siftDown(ILjava/util/concurrent/RunnableScheduledFuture;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->siftUp(ILjava/util/concurrent/RunnableScheduledFuture;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->size()I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->take()Ljava/util/concurrent/RunnableScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue;->toArray()[Ljava/lang/Object; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;-><init>(Ljava/util/concurrent/ScheduledThreadPoolExecutor;Ljava/lang/Runnable;Ljava/lang/Object;JJ)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;-><init>(Ljava/util/concurrent/ScheduledThreadPoolExecutor;Ljava/lang/Runnable;Ljava/lang/Object;JJJ)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;-><init>(Ljava/util/concurrent/ScheduledThreadPoolExecutor;Ljava/util/concurrent/Callable;JJ)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->cancel(Z)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->compareTo(Ljava/lang/Object;)I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->compareTo(Ljava/util/concurrent/Delayed;)I -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->getDelay(Ljava/util/concurrent/TimeUnit;)J -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->isPeriodic()Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->run()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;->setNextRunTime()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;-><init>(I)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;-><init>(ILjava/util/concurrent/ThreadFactory;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;-><init>(ILjava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->canRunInCurrentRunState(Ljava/util/concurrent/RunnableScheduledFuture;)Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->decorateTask(Ljava/lang/Runnable;Ljava/util/concurrent/RunnableScheduledFuture;)Ljava/util/concurrent/RunnableScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->decorateTask(Ljava/util/concurrent/Callable;Ljava/util/concurrent/RunnableScheduledFuture;)Ljava/util/concurrent/RunnableScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->delayedExecute(Ljava/util/concurrent/RunnableScheduledFuture;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->execute(Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->getContinueExistingPeriodicTasksAfterShutdownPolicy()Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->getExecuteExistingDelayedTasksAfterShutdownPolicy()Z -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->onShutdown()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->reExecutePeriodic(Ljava/util/concurrent/RunnableScheduledFuture;)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->schedule(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->schedule(Ljava/util/concurrent/Callable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->scheduleAtFixedRate(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->scheduleWithFixedDelay(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->setRemoveOnCancelPolicy(Z)V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->shutdown()V -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->shutdownNow()Ljava/util/List; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->triggerTime(J)J -HSPLjava/util/concurrent/ScheduledThreadPoolExecutor;->triggerTime(JLjava/util/concurrent/TimeUnit;)J -HSPLjava/util/concurrent/Semaphore$FairSync;-><init>(I)V -HSPLjava/util/concurrent/Semaphore$FairSync;->tryAcquireShared(I)I -HSPLjava/util/concurrent/Semaphore$NonfairSync;-><init>(I)V -HSPLjava/util/concurrent/Semaphore$NonfairSync;->tryAcquireShared(I)I -HSPLjava/util/concurrent/Semaphore$Sync;-><init>(I)V -HSPLjava/util/concurrent/Semaphore$Sync;->getPermits()I -HSPLjava/util/concurrent/Semaphore$Sync;->nonfairTryAcquireShared(I)I -HSPLjava/util/concurrent/Semaphore$Sync;->tryReleaseShared(I)Z -HSPLjava/util/concurrent/Semaphore;-><init>(I)V -HSPLjava/util/concurrent/Semaphore;-><init>(IZ)V -HSPLjava/util/concurrent/Semaphore;->acquire()V -HSPLjava/util/concurrent/Semaphore;->acquireUninterruptibly()V -HSPLjava/util/concurrent/Semaphore;->availablePermits()I -HSPLjava/util/concurrent/Semaphore;->release()V -HSPLjava/util/concurrent/Semaphore;->release(I)V -HSPLjava/util/concurrent/Semaphore;->tryAcquire()Z -HSPLjava/util/concurrent/Semaphore;->tryAcquire(IJLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/Semaphore;->tryAcquire(JLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;-><init>(Ljava/lang/Object;)V -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->block()Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->casNext(Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;)Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->forgetWaiter()V -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->isCancelled()Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->isReleasable()Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack$SNode;->tryMatch(Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;)Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;-><init>()V -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;->casHead(Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;)Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;->clean(Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;)V -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;->isFulfilling(I)Z -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;->snode(Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;Ljava/lang/Object;Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode;I)Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode; -HSPLjava/util/concurrent/SynchronousQueue$TransferStack;->transfer(Ljava/lang/Object;ZJ)Ljava/lang/Object; -HSPLjava/util/concurrent/SynchronousQueue$Transferer;-><init>()V -HSPLjava/util/concurrent/SynchronousQueue;-><init>()V -HSPLjava/util/concurrent/SynchronousQueue;-><init>(Z)V -HSPLjava/util/concurrent/SynchronousQueue;->isEmpty()Z -HSPLjava/util/concurrent/SynchronousQueue;->offer(Ljava/lang/Object;)Z -HSPLjava/util/concurrent/SynchronousQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; -HSPLjava/util/concurrent/SynchronousQueue;->size()I -HSPLjava/util/concurrent/SynchronousQueue;->take()Ljava/lang/Object; -HSPLjava/util/concurrent/ThreadLocalRandom;-><clinit>()V -HSPLjava/util/concurrent/ThreadLocalRandom;-><init>()V -HSPLjava/util/concurrent/ThreadLocalRandom;->current()Ljava/util/concurrent/ThreadLocalRandom; -HSPLjava/util/concurrent/ThreadLocalRandom;->getProbe()I -HSPLjava/util/concurrent/ThreadLocalRandom;->localInit()V -HSPLjava/util/concurrent/ThreadLocalRandom;->mix32(J)I -HSPLjava/util/concurrent/ThreadLocalRandom;->nextInt()I -HSPLjava/util/concurrent/ThreadLocalRandom;->nextSecondarySeed()I -HSPLjava/util/concurrent/ThreadLocalRandom;->nextSeed()J -HSPLjava/util/concurrent/ThreadLocalRandom;->setSeed(J)V -HSPLjava/util/concurrent/ThreadPoolExecutor$DiscardPolicy;-><init>()V -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;-><init>(Ljava/util/concurrent/ThreadPoolExecutor;Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->interruptIfStarted()V -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->isHeldExclusively()Z -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->isLocked()Z -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->lock()V -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->run()V -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->tryAcquire(I)Z -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->tryLock()Z -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->tryRelease(I)Z -HSPLjava/util/concurrent/ThreadPoolExecutor$Worker;->unlock()V -HSPLjava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/RejectedExecutionHandler;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->addWorker(Ljava/lang/Runnable;Z)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->advanceRunState(I)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->afterExecute(Ljava/lang/Runnable;Ljava/lang/Throwable;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->allowCoreThreadTimeOut(Z)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->awaitTermination(JLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->beforeExecute(Ljava/lang/Thread;Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->checkShutdownAccess()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->compareAndDecrementWorkerCount(I)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->compareAndIncrementWorkerCount(I)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->ctlOf(II)I -HSPLjava/util/concurrent/ThreadPoolExecutor;->decrementWorkerCount()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->drainQueue()Ljava/util/List; -HSPLjava/util/concurrent/ThreadPoolExecutor;->ensurePrestart()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->execute(Ljava/lang/Runnable;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->finalize()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->getCorePoolSize()I -HSPLjava/util/concurrent/ThreadPoolExecutor;->getMaximumPoolSize()I -HSPLjava/util/concurrent/ThreadPoolExecutor;->getQueue()Ljava/util/concurrent/BlockingQueue; -HSPLjava/util/concurrent/ThreadPoolExecutor;->getRejectedExecutionHandler()Ljava/util/concurrent/RejectedExecutionHandler; -HSPLjava/util/concurrent/ThreadPoolExecutor;->getTask()Ljava/lang/Runnable; -HSPLjava/util/concurrent/ThreadPoolExecutor;->getThreadFactory()Ljava/util/concurrent/ThreadFactory; -HSPLjava/util/concurrent/ThreadPoolExecutor;->interruptIdleWorkers()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->interruptIdleWorkers(Z)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->interruptWorkers()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->isRunning(I)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->isShutdown()Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->isTerminated()Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->onShutdown()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->prestartAllCoreThreads()I -HSPLjava/util/concurrent/ThreadPoolExecutor;->prestartCoreThread()Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->processWorkerExit(Ljava/util/concurrent/ThreadPoolExecutor$Worker;Z)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->purge()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->remove(Ljava/lang/Runnable;)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->runStateAtLeast(II)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->runStateLessThan(II)Z -HSPLjava/util/concurrent/ThreadPoolExecutor;->runStateOf(I)I -HSPLjava/util/concurrent/ThreadPoolExecutor;->runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->setCorePoolSize(I)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->setKeepAliveTime(JLjava/util/concurrent/TimeUnit;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->setMaximumPoolSize(I)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->setRejectedExecutionHandler(Ljava/util/concurrent/RejectedExecutionHandler;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->setThreadFactory(Ljava/util/concurrent/ThreadFactory;)V -HSPLjava/util/concurrent/ThreadPoolExecutor;->shutdown()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->shutdownNow()Ljava/util/List; -HSPLjava/util/concurrent/ThreadPoolExecutor;->terminated()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->toString()Ljava/lang/String; -HSPLjava/util/concurrent/ThreadPoolExecutor;->tryTerminate()V -HSPLjava/util/concurrent/ThreadPoolExecutor;->workerCountOf(I)I -HSPLjava/util/concurrent/TimeUnit;->convert(JLjava/util/concurrent/TimeUnit;)J -HSPLjava/util/concurrent/TimeUnit;->cvt(JJJ)J -HSPLjava/util/concurrent/TimeUnit;->sleep(J)V -HSPLjava/util/concurrent/TimeUnit;->toDays(J)J -HSPLjava/util/concurrent/TimeUnit;->toHours(J)J -HSPLjava/util/concurrent/TimeUnit;->toMicros(J)J -HSPLjava/util/concurrent/TimeUnit;->toMillis(J)J -HSPLjava/util/concurrent/TimeUnit;->toMinutes(J)J -HSPLjava/util/concurrent/TimeUnit;->toNanos(J)J -HSPLjava/util/concurrent/TimeUnit;->toSeconds(J)J -HSPLjava/util/concurrent/TimeUnit;->values()[Ljava/util/concurrent/TimeUnit; -HSPLjava/util/concurrent/TimeoutException;-><init>()V -HSPLjava/util/concurrent/TimeoutException;-><init>(Ljava/lang/String;)V -HSPLjava/util/concurrent/atomic/AtomicBoolean;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V -HSPLjava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z -HSPLjava/util/concurrent/atomic/AtomicBoolean;->get()Z -HSPLjava/util/concurrent/atomic/AtomicBoolean;->getAndSet(Z)Z -HSPLjava/util/concurrent/atomic/AtomicBoolean;->lazySet(Z)V -HSPLjava/util/concurrent/atomic/AtomicBoolean;->set(Z)V -HSPLjava/util/concurrent/atomic/AtomicBoolean;->toString()Ljava/lang/String; -HSPLjava/util/concurrent/atomic/AtomicInteger;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicInteger;-><init>(I)V -HSPLjava/util/concurrent/atomic/AtomicInteger;->addAndGet(I)I -HSPLjava/util/concurrent/atomic/AtomicInteger;->compareAndSet(II)Z -HSPLjava/util/concurrent/atomic/AtomicInteger;->decrementAndGet()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->get()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->getAndAdd(I)I -HSPLjava/util/concurrent/atomic/AtomicInteger;->getAndDecrement()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->getAndIncrement()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->getAndSet(I)I -HSPLjava/util/concurrent/atomic/AtomicInteger;->incrementAndGet()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->intValue()I -HSPLjava/util/concurrent/atomic/AtomicInteger;->lazySet(I)V -HSPLjava/util/concurrent/atomic/AtomicInteger;->set(I)V -HSPLjava/util/concurrent/atomic/AtomicInteger;->weakCompareAndSetVolatile(II)Z -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;-><init>(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)V -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->accessCheck(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->compareAndSet(Ljava/lang/Object;II)Z -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->decrementAndGet(Ljava/lang/Object;)I -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->getAndAdd(Ljava/lang/Object;I)I -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->getAndIncrement(Ljava/lang/Object;)I -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->incrementAndGet(Ljava/lang/Object;)I -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl;->set(Ljava/lang/Object;I)V -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater; -HSPLjava/util/concurrent/atomic/AtomicLong;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicLong;-><init>(J)V -HSPLjava/util/concurrent/atomic/AtomicLong;->addAndGet(J)J -HSPLjava/util/concurrent/atomic/AtomicLong;->compareAndSet(JJ)Z -HSPLjava/util/concurrent/atomic/AtomicLong;->decrementAndGet()J -HSPLjava/util/concurrent/atomic/AtomicLong;->get()J -HSPLjava/util/concurrent/atomic/AtomicLong;->getAndAdd(J)J -HSPLjava/util/concurrent/atomic/AtomicLong;->getAndIncrement()J -HSPLjava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J -HSPLjava/util/concurrent/atomic/AtomicLong;->incrementAndGet()J -HSPLjava/util/concurrent/atomic/AtomicLong;->lazySet(J)V -HSPLjava/util/concurrent/atomic/AtomicLong;->set(J)V -HSPLjava/util/concurrent/atomic/AtomicLong;->toString()Ljava/lang/String; -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;-><init>(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)V -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->accessCheck(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->addAndGet(Ljava/lang/Object;J)J -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->getAndAdd(Ljava/lang/Object;J)J -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->getAndIncrement(Ljava/lang/Object;)J -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;->incrementAndGet(Ljava/lang/Object;)J -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicLongFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicLongFieldUpdater; -HSPLjava/util/concurrent/atomic/AtomicReference;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicReference;-><init>(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReference;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReference;->getAndSet(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReference;->lazySet(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReference;->toString()Ljava/lang/String; -HSPLjava/util/concurrent/atomic/AtomicReference;->updateAndGet(Ljava/util/function/UnaryOperator;)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReference;->weakCompareAndSetVolatile(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;-><init>(I)V -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->compareAndSet(ILjava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->getAcquire(I)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->getAndSet(ILjava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->lazySet(ILjava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->length()I -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceArray;->setRelease(ILjava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;-><init>(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->accessCheck(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->getAndSet(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl;->valueCheck(Ljava/lang/Object;)V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater;-><init>()V -HSPLjava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater; -HSPLjava/util/concurrent/atomic/LongAdder;-><init>()V -HSPLjava/util/concurrent/atomic/LongAdder;->add(J)V -HSPLjava/util/concurrent/atomic/Striped64$Cell;-><clinit>()V -HSPLjava/util/concurrent/atomic/Striped64$Cell;-><init>(J)V -HSPLjava/util/concurrent/atomic/Striped64$Cell;->cas(JJ)Z -HSPLjava/util/concurrent/atomic/Striped64;-><init>()V -HSPLjava/util/concurrent/atomic/Striped64;->casBase(JJ)Z -HSPLjava/util/concurrent/atomic/Striped64;->casCellsBusy()Z -HSPLjava/util/concurrent/atomic/Striped64;->getProbe()I -HSPLjava/util/concurrent/locks/AbstractOwnableSynchronizer;-><init>()V -HSPLjava/util/concurrent/locks/AbstractOwnableSynchronizer;->getExclusiveOwnerThread()Ljava/lang/Thread; -HSPLjava/util/concurrent/locks/AbstractOwnableSynchronizer;->setExclusiveOwnerThread(Ljava/lang/Thread;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;-><init>()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;->block()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;->isReleasable()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;-><init>(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->await()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->awaitNanos(J)J -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->canReacquire(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->doSignal(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;Z)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->enableWait(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;)I -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->hasWaiters()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->isOwnedBy(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->signal()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->signalAll()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;->unlinkCancelledWaiters(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$ExclusiveNode;-><init>()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;-><init>()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;->clearStatus()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;->getAndUnsetStatus(I)I -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;->setPrevRelaxed(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;->setStatusRelaxed(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer$SharedNode;-><init>()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->-$$Nest$sfgetU()Ljdk/internal/misc/Unsafe; -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;-><init>()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->acquire(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->acquire(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;IZZZJ)I -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->acquireInterruptibly(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->acquireShared(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->acquireSharedInterruptibly(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->apparentlyFirstQueuedIsExclusive()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->casTail(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->cleanQueue()V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->compareAndSetState(II)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->enqueue(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->getFirstQueuedThread()Ljava/lang/Thread; -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->getState()I -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->hasQueuedPredecessors()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->hasQueuedThreads()Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->hasWaiters(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->isEnqueued(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->owns(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->release(I)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->releaseShared(I)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->setState(I)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->signalNext(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->signalNextIfShared(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->tryAcquireNanos(IJ)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->tryAcquireSharedNanos(IJ)Z -HSPLjava/util/concurrent/locks/AbstractQueuedSynchronizer;->tryInitializeHead()V -HSPLjava/util/concurrent/locks/LockSupport;->park()V -HSPLjava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V -HSPLjava/util/concurrent/locks/LockSupport;->parkNanos(J)V -HSPLjava/util/concurrent/locks/LockSupport;->parkNanos(Ljava/lang/Object;J)V -HSPLjava/util/concurrent/locks/LockSupport;->setBlocker(Ljava/lang/Thread;Ljava/lang/Object;)V -HSPLjava/util/concurrent/locks/LockSupport;->setCurrentBlocker(Ljava/lang/Object;)V -HSPLjava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V -HSPLjava/util/concurrent/locks/ReentrantLock$FairSync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantLock$FairSync;->initialTryLock()Z -HSPLjava/util/concurrent/locks/ReentrantLock$FairSync;->tryAcquire(I)Z -HSPLjava/util/concurrent/locks/ReentrantLock$NonfairSync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantLock$NonfairSync;->initialTryLock()Z -HSPLjava/util/concurrent/locks/ReentrantLock$NonfairSync;->tryAcquire(I)Z -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->isHeldExclusively()Z -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->lock()V -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->lockInterruptibly()V -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->newCondition()Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject; -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->tryLock()Z -HSPLjava/util/concurrent/locks/ReentrantLock$Sync;->tryRelease(I)Z -HSPLjava/util/concurrent/locks/ReentrantLock;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantLock;-><init>(Z)V -HSPLjava/util/concurrent/locks/ReentrantLock;->hasWaiters(Ljava/util/concurrent/locks/Condition;)Z -HSPLjava/util/concurrent/locks/ReentrantLock;->isHeldByCurrentThread()Z -HSPLjava/util/concurrent/locks/ReentrantLock;->lock()V -HSPLjava/util/concurrent/locks/ReentrantLock;->lockInterruptibly()V -HSPLjava/util/concurrent/locks/ReentrantLock;->newCondition()Ljava/util/concurrent/locks/Condition; -HSPLjava/util/concurrent/locks/ReentrantLock;->tryLock()Z -HSPLjava/util/concurrent/locks/ReentrantLock;->tryLock(JLjava/util/concurrent/TimeUnit;)Z -HSPLjava/util/concurrent/locks/ReentrantLock;->unlock()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$FairSync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$FairSync;->readerShouldBlock()Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$FairSync;->writerShouldBlock()Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync;->readerShouldBlock()Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync;->writerShouldBlock()Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;-><init>(Ljava/util/concurrent/locks/ReentrantReadWriteLock;)V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter;->initialValue()Ljava/lang/Object; -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter;->initialValue()Ljava/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter; -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->exclusiveCount(I)I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->fullTryAcquireShared(Ljava/lang/Thread;)I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->getReadHoldCount()I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->getReadLockCount()I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->isHeldExclusively()Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->sharedCount(I)I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->tryAcquire(I)Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->tryAcquireShared(I)I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->tryRelease(I)Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$Sync;->tryReleaseShared(I)Z -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;-><init>(Ljava/util/concurrent/locks/ReentrantReadWriteLock;)V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;-><init>()V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;-><init>(Z)V -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;->getReadHoldCount()I -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/Lock; -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/Lock; -HSPLjava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; -HSPLjava/util/function/BinaryOperator$$ExternalSyntheticLambda0;-><init>(Ljava/util/Comparator;)V -HSPLjava/util/function/BinaryOperator;->maxBy(Ljava/util/Comparator;)Ljava/util/function/BinaryOperator; -HSPLjava/util/function/DoubleUnaryOperator$$ExternalSyntheticLambda1;->applyAsDouble(D)D -HSPLjava/util/function/DoubleUnaryOperator;->andThen(Ljava/util/function/DoubleUnaryOperator;)Ljava/util/function/DoubleUnaryOperator; -HSPLjava/util/function/Function$$ExternalSyntheticLambda0;-><init>()V -HSPLjava/util/function/Function$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/function/Function$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/function/Function$$ExternalSyntheticLambda2;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/function/Function;->identity()Ljava/util/function/Function; -HSPLjava/util/function/Function;->lambda$identity$2(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/jar/Attributes$Name;-><init>(Ljava/lang/String;)V -HSPLjava/util/jar/Attributes$Name;->equals(Ljava/lang/Object;)Z -HSPLjava/util/jar/Attributes$Name;->hash(Ljava/lang/String;)I -HSPLjava/util/jar/Attributes$Name;->hashCode()I -HSPLjava/util/jar/Attributes$Name;->toString()Ljava/lang/String; -HSPLjava/util/jar/Attributes;-><init>()V -HSPLjava/util/jar/Attributes;-><init>(I)V -HSPLjava/util/jar/Attributes;->entrySet()Ljava/util/Set; -HSPLjava/util/jar/Attributes;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/jar/Attributes;->getValue(Ljava/util/jar/Attributes$Name;)Ljava/lang/String; -HSPLjava/util/jar/Attributes;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/jar/Attributes;->putValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/jar/Attributes;->read(Ljava/util/jar/Manifest$FastInputStream;[B)V -HSPLjava/util/jar/Attributes;->read(Ljava/util/jar/Manifest$FastInputStream;[BLjava/lang/String;I)I -HSPLjava/util/jar/Attributes;->size()I -HSPLjava/util/jar/JarEntry;-><init>(Ljava/lang/String;)V -HSPLjava/util/jar/JarEntry;-><init>(Ljava/util/zip/ZipEntry;)V -HSPLjava/util/jar/JarFile$JarFileEntry;-><init>(Ljava/util/jar/JarFile;Ljava/lang/String;)V -HSPLjava/util/jar/JarFile$JarFileEntry;-><init>(Ljava/util/jar/JarFile;Ljava/util/zip/ZipEntry;)V -HSPLjava/util/jar/JarFile;-><init>(Ljava/io/File;ZI)V -HSPLjava/util/jar/JarFile;-><init>(Ljava/io/File;ZZI)V -HSPLjava/util/jar/JarFile;-><init>(Ljava/lang/String;)V -HSPLjava/util/jar/JarFile;-><init>(Ljava/lang/String;ZZ)V -HSPLjava/util/jar/JarFile;->entryFor(Ljava/lang/String;)Ljava/util/jar/JarEntry; -HSPLjava/util/jar/JarFile;->getBytes(Ljava/util/zip/ZipEntry;)[B -HSPLjava/util/jar/JarFile;->getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry; -HSPLjava/util/jar/JarFile;->getInputStream(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream; -HSPLjava/util/jar/JarFile;->getJarEntry(Ljava/lang/String;)Ljava/util/jar/JarEntry; -HSPLjava/util/jar/JarFile;->getManEntry()Ljava/util/jar/JarEntry; -HSPLjava/util/jar/JarFile;->getManifest()Ljava/util/jar/Manifest; -HSPLjava/util/jar/JarFile;->getManifestFromReference()Ljava/util/jar/Manifest; -HSPLjava/util/jar/JarFile;->initializeVerifier()V -HSPLjava/util/jar/JarFile;->maybeInstantiateVerifier()V -HSPLjava/util/jar/JarVerifier$3;-><init>(Ljava/util/jar/JarVerifier;)V -HSPLjava/util/jar/JarVerifier$VerifierStream;-><init>(Ljava/util/jar/Manifest;Ljava/util/jar/JarEntry;Ljava/io/InputStream;Ljava/util/jar/JarVerifier;)V -HSPLjava/util/jar/JarVerifier$VerifierStream;->available()I -HSPLjava/util/jar/JarVerifier$VerifierStream;->close()V -HSPLjava/util/jar/JarVerifier$VerifierStream;->read()I -HSPLjava/util/jar/JarVerifier$VerifierStream;->read([BII)I -HSPLjava/util/jar/JarVerifier;->beginEntry(Ljava/util/jar/JarEntry;Lsun/security/util/ManifestEntryVerifier;)V -HSPLjava/util/jar/JarVerifier;->doneWithMeta()V -HSPLjava/util/jar/JarVerifier;->mapSignersToCertArray([Ljava/security/CodeSigner;)[Ljava/security/cert/Certificate; -HSPLjava/util/jar/JarVerifier;->nothingToVerify()Z -HSPLjava/util/jar/JarVerifier;->processEntry(Lsun/security/util/ManifestEntryVerifier;)V -HSPLjava/util/jar/JarVerifier;->update(ILsun/security/util/ManifestEntryVerifier;)V -HSPLjava/util/jar/JarVerifier;->update(I[BIILsun/security/util/ManifestEntryVerifier;)V -HSPLjava/util/jar/Manifest$FastInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/util/jar/Manifest$FastInputStream;-><init>(Ljava/io/InputStream;I)V -HSPLjava/util/jar/Manifest$FastInputStream;->fill()V -HSPLjava/util/jar/Manifest$FastInputStream;->peek()B -HSPLjava/util/jar/Manifest$FastInputStream;->readLine([B)I -HSPLjava/util/jar/Manifest$FastInputStream;->readLine([BII)I -HSPLjava/util/jar/Manifest;-><init>()V -HSPLjava/util/jar/Manifest;-><init>(Ljava/io/InputStream;)V -HSPLjava/util/jar/Manifest;->getAttributes(Ljava/lang/String;)Ljava/util/jar/Attributes; -HSPLjava/util/jar/Manifest;->getEntries()Ljava/util/Map; -HSPLjava/util/jar/Manifest;->getMainAttributes()Ljava/util/jar/Attributes; -HSPLjava/util/jar/Manifest;->parseName([BI)Ljava/lang/String; -HSPLjava/util/jar/Manifest;->read(Ljava/io/InputStream;)V -HSPLjava/util/jar/Manifest;->toLower(I)I -HSPLjava/util/logging/ConsoleHandler;->close()V -HSPLjava/util/logging/ErrorManager;-><init>()V -HSPLjava/util/logging/FileHandler$1;-><init>(Ljava/util/logging/FileHandler;)V -HSPLjava/util/logging/FileHandler$1;->run()Ljava/lang/Object; -HSPLjava/util/logging/FileHandler$InitializationErrorManager;-><init>()V -HSPLjava/util/logging/FileHandler$InitializationErrorManager;-><init>(Ljava/util/logging/FileHandler$InitializationErrorManager-IA;)V -HSPLjava/util/logging/FileHandler$MeteredStream;-><init>(Ljava/util/logging/FileHandler;Ljava/io/OutputStream;I)V -HSPLjava/util/logging/FileHandler$MeteredStream;->close()V -HSPLjava/util/logging/FileHandler$MeteredStream;->flush()V -HSPLjava/util/logging/FileHandler$MeteredStream;->write([BII)V -HSPLjava/util/logging/FileHandler;->-$$Nest$mrotate(Ljava/util/logging/FileHandler;)V -HSPLjava/util/logging/FileHandler;-><clinit>()V -HSPLjava/util/logging/FileHandler;-><init>(Ljava/lang/String;IIZ)V -HSPLjava/util/logging/FileHandler;->configure()V -HSPLjava/util/logging/FileHandler;->generate(Ljava/lang/String;II)Ljava/io/File; -HSPLjava/util/logging/FileHandler;->isParentWritable(Ljava/nio/file/Path;)Z -HSPLjava/util/logging/FileHandler;->open(Ljava/io/File;Z)V -HSPLjava/util/logging/FileHandler;->openFiles()V -HSPLjava/util/logging/FileHandler;->publish(Ljava/util/logging/LogRecord;)V -HSPLjava/util/logging/FileHandler;->rotate()V -HSPLjava/util/logging/Formatter;-><init>()V -HSPLjava/util/logging/Formatter;->getHead(Ljava/util/logging/Handler;)Ljava/lang/String; -HSPLjava/util/logging/Formatter;->getTail(Ljava/util/logging/Handler;)Ljava/lang/String; -HSPLjava/util/logging/Handler;-><init>()V -HSPLjava/util/logging/Handler;->checkPermission()V -HSPLjava/util/logging/Handler;->getEncoding()Ljava/lang/String; -HSPLjava/util/logging/Handler;->getFilter()Ljava/util/logging/Filter; -HSPLjava/util/logging/Handler;->getFormatter()Ljava/util/logging/Formatter; -HSPLjava/util/logging/Handler;->getLevel()Ljava/util/logging/Level; -HSPLjava/util/logging/Handler;->isLoggable(Ljava/util/logging/LogRecord;)Z -HSPLjava/util/logging/Handler;->setEncoding(Ljava/lang/String;)V -HSPLjava/util/logging/Handler;->setErrorManager(Ljava/util/logging/ErrorManager;)V -HSPLjava/util/logging/Handler;->setFilter(Ljava/util/logging/Filter;)V -HSPLjava/util/logging/Handler;->setFormatter(Ljava/util/logging/Formatter;)V -HSPLjava/util/logging/Handler;->setLevel(Ljava/util/logging/Level;)V -HSPLjava/util/logging/Level;->equals(Ljava/lang/Object;)Z -HSPLjava/util/logging/Level;->intValue()I -HSPLjava/util/logging/LogManager$5;-><init>(Ljava/util/logging/LogManager;Ljava/lang/String;Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager$5;->run()Ljava/lang/Object; -HSPLjava/util/logging/LogManager$LogNode;-><init>(Ljava/util/logging/LogManager$LogNode;Ljava/util/logging/LogManager$LoggerContext;)V -HSPLjava/util/logging/LogManager$LogNode;->walkAndSetParent(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager$LoggerContext$1;-><init>(Ljava/util/logging/LogManager$LoggerContext;Ljava/util/logging/Logger;Ljava/util/logging/LogManager;Ljava/lang/String;)V -HSPLjava/util/logging/LogManager$LoggerContext$1;->run()Ljava/lang/Object; -HSPLjava/util/logging/LogManager$LoggerContext$1;->run()Ljava/lang/Void; -HSPLjava/util/logging/LogManager$LoggerContext;->addLocalLogger(Ljava/util/logging/Logger;)Z -HSPLjava/util/logging/LogManager$LoggerContext;->addLocalLogger(Ljava/util/logging/Logger;Z)Z -HSPLjava/util/logging/LogManager$LoggerContext;->ensureAllDefaultLoggers(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager$LoggerContext;->ensureDefaultLogger(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager$LoggerContext;->ensureInitialized()V -HSPLjava/util/logging/LogManager$LoggerContext;->findLogger(Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager$LoggerContext;->getGlobalLogger()Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager$LoggerContext;->getLoggerNames()Ljava/util/Enumeration; -HSPLjava/util/logging/LogManager$LoggerContext;->getNode(Ljava/lang/String;)Ljava/util/logging/LogManager$LogNode; -HSPLjava/util/logging/LogManager$LoggerContext;->getOwner()Ljava/util/logging/LogManager; -HSPLjava/util/logging/LogManager$LoggerContext;->getRootLogger()Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager$LoggerContext;->processParentHandlers(Ljava/util/logging/Logger;Ljava/lang/String;)V -HSPLjava/util/logging/LogManager$LoggerContext;->removeLoggerRef(Ljava/lang/String;Ljava/util/logging/LogManager$LoggerWeakRef;)V -HSPLjava/util/logging/LogManager$LoggerContext;->requiresDefaultLoggers()Z -HSPLjava/util/logging/LogManager$LoggerWeakRef;-><init>(Ljava/util/logging/LogManager;Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager$LoggerWeakRef;->dispose()V -HSPLjava/util/logging/LogManager$LoggerWeakRef;->setNode(Ljava/util/logging/LogManager$LogNode;)V -HSPLjava/util/logging/LogManager$LoggerWeakRef;->setParentRef(Ljava/lang/ref/WeakReference;)V -HSPLjava/util/logging/LogManager$RootLogger;->accessCheckedHandlers()[Ljava/util/logging/Handler; -HSPLjava/util/logging/LogManager$RootLogger;->addHandler(Ljava/util/logging/Handler;)V -HSPLjava/util/logging/LogManager$RootLogger;->removeHandler(Ljava/util/logging/Handler;)V -HSPLjava/util/logging/LogManager$SystemLoggerContext;->demandLogger(Ljava/lang/String;Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager;->-$$Nest$fgetloggerRefQueue(Ljava/util/logging/LogManager;)Ljava/lang/ref/ReferenceQueue; -HSPLjava/util/logging/LogManager;->-$$Nest$fgetrootLogger(Ljava/util/logging/LogManager;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager;->-$$Nest$minitializeGlobalHandlers(Ljava/util/logging/LogManager;)V -HSPLjava/util/logging/LogManager;->-$$Nest$mparseClassNames(Ljava/util/logging/LogManager;Ljava/lang/String;)[Ljava/lang/String; -HSPLjava/util/logging/LogManager;->-$$Nest$sfgetmanager()Ljava/util/logging/LogManager; -HSPLjava/util/logging/LogManager;->-$$Nest$smdoSetParent(Ljava/util/logging/Logger;Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager;->addLogger(Ljava/util/logging/Logger;)Z -HSPLjava/util/logging/LogManager;->checkPermission()V -HSPLjava/util/logging/LogManager;->contexts()Ljava/util/List; -HSPLjava/util/logging/LogManager;->demandLogger(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager;->demandSystemLogger(Ljava/lang/String;Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager;->doSetParent(Ljava/util/logging/Logger;Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogManager;->drainLoggerRefQueueBounded()V -HSPLjava/util/logging/LogManager;->ensureLogManagerInitialized()V -HSPLjava/util/logging/LogManager;->getBooleanProperty(Ljava/lang/String;Z)Z -HSPLjava/util/logging/LogManager;->getFilterProperty(Ljava/lang/String;Ljava/util/logging/Filter;)Ljava/util/logging/Filter; -HSPLjava/util/logging/LogManager;->getFormatterProperty(Ljava/lang/String;Ljava/util/logging/Formatter;)Ljava/util/logging/Formatter; -HSPLjava/util/logging/LogManager;->getIntProperty(Ljava/lang/String;I)I -HSPLjava/util/logging/LogManager;->getLevelProperty(Ljava/lang/String;Ljava/util/logging/Level;)Ljava/util/logging/Level; -HSPLjava/util/logging/LogManager;->getLogManager()Ljava/util/logging/LogManager; -HSPLjava/util/logging/LogManager;->getLogger(Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/LogManager;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/logging/LogManager;->getStringProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/logging/LogManager;->getSystemContext()Ljava/util/logging/LogManager$LoggerContext; -HSPLjava/util/logging/LogManager;->getUserContext()Ljava/util/logging/LogManager$LoggerContext; -HSPLjava/util/logging/LogManager;->initializeGlobalHandlers()V -HSPLjava/util/logging/LogManager;->loadLoggerHandlers(Ljava/util/logging/Logger;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/logging/LogManager;->parseClassNames(Ljava/lang/String;)[Ljava/lang/String; -HSPLjava/util/logging/LogManager;->reset()V -HSPLjava/util/logging/LogManager;->resetLogger(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/LogRecord;-><init>(Ljava/util/logging/Level;Ljava/lang/String;)V -HSPLjava/util/logging/LogRecord;->defaultThreadID()I -HSPLjava/util/logging/LogRecord;->getLevel()Ljava/util/logging/Level; -HSPLjava/util/logging/LogRecord;->getLoggerName()Ljava/lang/String; -HSPLjava/util/logging/LogRecord;->getMessage()Ljava/lang/String; -HSPLjava/util/logging/LogRecord;->getThrown()Ljava/lang/Throwable; -HSPLjava/util/logging/LogRecord;->setLoggerName(Ljava/lang/String;)V -HSPLjava/util/logging/LogRecord;->setParameters([Ljava/lang/Object;)V -HSPLjava/util/logging/LogRecord;->setSourceClassName(Ljava/lang/String;)V -HSPLjava/util/logging/LogRecord;->setSourceMethodName(Ljava/lang/String;)V -HSPLjava/util/logging/LogRecord;->setThrown(Ljava/lang/Throwable;)V -HSPLjava/util/logging/Logger$1;-><init>(Ljava/util/Locale;)V -HSPLjava/util/logging/Logger$1;->run()Ljava/lang/Object; -HSPLjava/util/logging/Logger$1;->run()Ljava/util/ResourceBundle; -HSPLjava/util/logging/Logger$LoggerBundle;->get(Ljava/lang/String;Ljava/util/ResourceBundle;)Ljava/util/logging/Logger$LoggerBundle; -HSPLjava/util/logging/Logger$LoggerBundle;->isSystemBundle()Z -HSPLjava/util/logging/Logger;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;Ljava/util/logging/LogManager;Z)V -HSPLjava/util/logging/Logger;->accessCheckedHandlers()[Ljava/util/logging/Handler; -HSPLjava/util/logging/Logger;->addHandler(Ljava/util/logging/Handler;)V -HSPLjava/util/logging/Logger;->checkPermission()V -HSPLjava/util/logging/Logger;->demandLogger(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)Ljava/util/logging/Logger; -HSPLjava/util/logging/Logger;->doLog(Ljava/util/logging/LogRecord;)V -HSPLjava/util/logging/Logger;->doSetParent(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/Logger;->findResourceBundle(Ljava/lang/String;Z)Ljava/util/ResourceBundle; -HSPLjava/util/logging/Logger;->findSystemResourceBundle(Ljava/util/Locale;)Ljava/util/ResourceBundle; -HSPLjava/util/logging/Logger;->getCallersClassLoader()Ljava/lang/ClassLoader; -HSPLjava/util/logging/Logger;->getEffectiveLoggerBundle()Ljava/util/logging/Logger$LoggerBundle; -HSPLjava/util/logging/Logger;->getHandlers()[Ljava/util/logging/Handler; -HSPLjava/util/logging/Logger;->getLogger(Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/Logger;->getName()Ljava/lang/String; -HSPLjava/util/logging/Logger;->getParent()Ljava/util/logging/Logger; -HSPLjava/util/logging/Logger;->getPlatformLogger(Ljava/lang/String;)Ljava/util/logging/Logger; -HSPLjava/util/logging/Logger;->getResourceBundle()Ljava/util/ResourceBundle; -HSPLjava/util/logging/Logger;->getResourceBundleName()Ljava/lang/String; -HSPLjava/util/logging/Logger;->getUseParentHandlers()Z -HSPLjava/util/logging/Logger;->info(Ljava/lang/String;)V -HSPLjava/util/logging/Logger;->isLoggable(Ljava/util/logging/Level;)Z -HSPLjava/util/logging/Logger;->log(Ljava/util/logging/Level;Ljava/lang/String;)V -HSPLjava/util/logging/Logger;->log(Ljava/util/logging/LogRecord;)V -HSPLjava/util/logging/Logger;->logp(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLjava/util/logging/Logger;->logp(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -HSPLjava/util/logging/Logger;->logp(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V -HSPLjava/util/logging/Logger;->removeChildLogger(Ljava/util/logging/LogManager$LoggerWeakRef;)V -HSPLjava/util/logging/Logger;->removeHandler(Ljava/util/logging/Handler;)V -HSPLjava/util/logging/Logger;->setCallersClassLoaderRef(Ljava/lang/Class;)V -HSPLjava/util/logging/Logger;->setLevel(Ljava/util/logging/Level;)V -HSPLjava/util/logging/Logger;->setLogManager(Ljava/util/logging/LogManager;)V -HSPLjava/util/logging/Logger;->setParent(Ljava/util/logging/Logger;)V -HSPLjava/util/logging/Logger;->setUseParentHandlers(Z)V -HSPLjava/util/logging/Logger;->setupResourceInfo(Ljava/lang/String;Ljava/lang/Class;)V -HSPLjava/util/logging/Logger;->updateEffectiveLevel()V -HSPLjava/util/logging/LoggingProxyImpl;->getLogger(Ljava/lang/String;)Ljava/lang/Object; -HSPLjava/util/logging/LoggingProxyImpl;->getProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/logging/SimpleFormatter;-><clinit>()V -HSPLjava/util/logging/SimpleFormatter;-><init>()V -HSPLjava/util/logging/StreamHandler;-><init>()V -HSPLjava/util/logging/StreamHandler;->close()V -HSPLjava/util/logging/StreamHandler;->configure()V -HSPLjava/util/logging/StreamHandler;->flush()V -HSPLjava/util/logging/StreamHandler;->flushAndClose()V -HSPLjava/util/logging/StreamHandler;->isLoggable(Ljava/util/logging/LogRecord;)Z -HSPLjava/util/logging/StreamHandler;->publish(Ljava/util/logging/LogRecord;)V -HSPLjava/util/logging/StreamHandler;->setEncoding(Ljava/lang/String;)V -HSPLjava/util/logging/StreamHandler;->setOutputStream(Ljava/io/OutputStream;)V -HSPLjava/util/logging/XMLFormatter;-><init>()V -HSPLjava/util/regex/Matcher;-><init>(Ljava/util/regex/Pattern;Ljava/lang/CharSequence;)V -HSPLjava/util/regex/Matcher;->appendEvaluated(Ljava/lang/StringBuilder;Ljava/lang/String;)V -HSPLjava/util/regex/Matcher;->appendExpandedReplacement(Ljava/lang/String;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder; -HSPLjava/util/regex/Matcher;->appendReplacement(Ljava/lang/StringBuffer;Ljava/lang/String;)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->appendReplacement(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->appendReplacementInternal(Ljava/lang/StringBuilder;Ljava/lang/String;)V -HSPLjava/util/regex/Matcher;->appendTail(Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer; -HSPLjava/util/regex/Matcher;->appendTail(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder; -HSPLjava/util/regex/Matcher;->end()I -HSPLjava/util/regex/Matcher;->end(I)I -HSPLjava/util/regex/Matcher;->ensureMatch()V -HSPLjava/util/regex/Matcher;->find()Z -HSPLjava/util/regex/Matcher;->find(I)Z -HSPLjava/util/regex/Matcher;->getSubSequence(II)Ljava/lang/CharSequence; -HSPLjava/util/regex/Matcher;->getTextLength()I -HSPLjava/util/regex/Matcher;->group()Ljava/lang/String; -HSPLjava/util/regex/Matcher;->group(I)Ljava/lang/String; -HSPLjava/util/regex/Matcher;->groupCount()I -HSPLjava/util/regex/Matcher;->hitEnd()Z -HSPLjava/util/regex/Matcher;->lookingAt()Z -HSPLjava/util/regex/Matcher;->matches()Z -HSPLjava/util/regex/Matcher;->pattern()Ljava/util/regex/Pattern; -HSPLjava/util/regex/Matcher;->region(II)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->replaceAll(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/regex/Matcher;->replaceFirst(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/regex/Matcher;->reset()Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->reset(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->reset(Ljava/lang/CharSequence;II)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->resetForInput()V -HSPLjava/util/regex/Matcher;->start()I -HSPLjava/util/regex/Matcher;->start(I)I -HSPLjava/util/regex/Matcher;->useAnchoringBounds(Z)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->usePattern(Ljava/util/regex/Pattern;)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Matcher;->useTransparentBounds(Z)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Pattern;-><init>(Ljava/lang/String;I)V -HSPLjava/util/regex/Pattern;->compile()V -HSPLjava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; -HSPLjava/util/regex/Pattern;->compile(Ljava/lang/String;I)Ljava/util/regex/Pattern; -HSPLjava/util/regex/Pattern;->fastSplit(Ljava/lang/String;Ljava/lang/String;I)[Ljava/lang/String; -HSPLjava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; -HSPLjava/util/regex/Pattern;->matches(Ljava/lang/String;Ljava/lang/CharSequence;)Z -HSPLjava/util/regex/Pattern;->pattern()Ljava/lang/String; -HSPLjava/util/regex/Pattern;->quote(Ljava/lang/String;)Ljava/lang/String; -HSPLjava/util/regex/Pattern;->split(Ljava/lang/CharSequence;)[Ljava/lang/String; -HSPLjava/util/regex/Pattern;->split(Ljava/lang/CharSequence;I)[Ljava/lang/String; -HSPLjava/util/regex/Pattern;->toString()Ljava/lang/String; -HSPLjava/util/stream/AbstractPipeline;-><init>(Ljava/util/Spliterator;IZ)V -HSPLjava/util/stream/AbstractPipeline;-><init>(Ljava/util/stream/AbstractPipeline;I)V -HSPLjava/util/stream/AbstractPipeline;->close()V -HSPLjava/util/stream/AbstractPipeline;->copyInto(Ljava/util/stream/Sink;Ljava/util/Spliterator;)V -HSPLjava/util/stream/AbstractPipeline;->evaluate(Ljava/util/Spliterator;ZLjava/util/function/IntFunction;)Ljava/util/stream/Node; -HSPLjava/util/stream/AbstractPipeline;->evaluate(Ljava/util/stream/TerminalOp;)Ljava/lang/Object; -HSPLjava/util/stream/AbstractPipeline;->evaluateToArrayNode(Ljava/util/function/IntFunction;)Ljava/util/stream/Node; -HSPLjava/util/stream/AbstractPipeline;->exactOutputSizeIfKnown(Ljava/util/Spliterator;)J -HSPLjava/util/stream/AbstractPipeline;->getStreamAndOpFlags()I -HSPLjava/util/stream/AbstractPipeline;->isParallel()Z -HSPLjava/util/stream/AbstractPipeline;->onClose(Ljava/lang/Runnable;)Ljava/util/stream/BaseStream; -HSPLjava/util/stream/AbstractPipeline;->sequential()Ljava/util/stream/BaseStream; -HSPLjava/util/stream/AbstractPipeline;->sourceSpliterator(I)Ljava/util/Spliterator; -HSPLjava/util/stream/AbstractPipeline;->sourceStageSpliterator()Ljava/util/Spliterator; -HSPLjava/util/stream/AbstractPipeline;->spliterator()Ljava/util/Spliterator; -HSPLjava/util/stream/AbstractPipeline;->wrapAndCopyInto(Ljava/util/stream/Sink;Ljava/util/Spliterator;)Ljava/util/stream/Sink; -HSPLjava/util/stream/AbstractPipeline;->wrapSink(Ljava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/AbstractSpinedBuffer;-><init>()V -HSPLjava/util/stream/AbstractSpinedBuffer;->count()J -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda0;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda20;->accept(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda25;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda25;->get()Ljava/lang/Object; -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda26;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda26;->accept(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda27;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda28;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda28;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda42;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda65;->get()Ljava/lang/Object; -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda72;->get()Ljava/lang/Object; -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda74;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda75;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda75;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda76;-><init>()V -HSPLjava/util/stream/Collectors$$ExternalSyntheticLambda87;-><init>()V -HSPLjava/util/stream/Collectors$CollectorImpl;-><init>(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BinaryOperator;Ljava/util/Set;)V -HSPLjava/util/stream/Collectors$CollectorImpl;-><init>(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BinaryOperator;Ljava/util/function/Function;Ljava/util/Set;)V -HSPLjava/util/stream/Collectors$CollectorImpl;->accumulator()Ljava/util/function/BiConsumer; -HSPLjava/util/stream/Collectors$CollectorImpl;->characteristics()Ljava/util/Set; -HSPLjava/util/stream/Collectors$CollectorImpl;->combiner()Ljava/util/function/BinaryOperator; -HSPLjava/util/stream/Collectors$CollectorImpl;->finisher()Ljava/util/function/Function; -HSPLjava/util/stream/Collectors$CollectorImpl;->supplier()Ljava/util/function/Supplier; -HSPLjava/util/stream/Collectors;->-$$Nest$smcastingIdentity()Ljava/util/function/Function; -HSPLjava/util/stream/Collectors;->castingIdentity()Ljava/util/function/Function; -HSPLjava/util/stream/Collectors;->groupingBy(Ljava/util/function/Function;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->groupingBy(Ljava/util/function/Function;Ljava/util/function/Supplier;Ljava/util/stream/Collector;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->groupingBy(Ljava/util/function/Function;Ljava/util/stream/Collector;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->joining(Ljava/lang/CharSequence;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->joining(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->lambda$joining$11(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/util/StringJoiner; -HSPLjava/util/stream/Collectors;->lambda$toUnmodifiableList$6(Ljava/util/ArrayList;)Ljava/util/List; -HSPLjava/util/stream/Collectors;->lambda$uniqKeysMapAccumulator$1(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/Map;Ljava/lang/Object;)V -HSPLjava/util/stream/Collectors;->mapMerger(Ljava/util/function/BinaryOperator;)Ljava/util/function/BinaryOperator; -HSPLjava/util/stream/Collectors;->toCollection(Ljava/util/function/Supplier;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->toList()Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->toMap(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->toMap(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Ljava/util/function/Supplier;)Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->toSet()Ljava/util/stream/Collector; -HSPLjava/util/stream/Collectors;->toUnmodifiableList()Ljava/util/stream/Collector; -HSPLjava/util/stream/DistinctOps$1$2;-><init>(Ljava/util/stream/DistinctOps$1;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/DistinctOps$1$2;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/DistinctOps$1$2;->begin(J)V -HSPLjava/util/stream/DistinctOps$1$2;->end()V -HSPLjava/util/stream/DistinctOps$1;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/DistinctOps$1;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/DistinctOps;->makeRef(Ljava/util/stream/AbstractPipeline;)Ljava/util/stream/ReferencePipeline; -HSPLjava/util/stream/DoublePipeline$StatelessOp;-><clinit>()V -HSPLjava/util/stream/DoublePipeline$StatelessOp;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/DoublePipeline$StatelessOp;->opIsStateful()Z -HSPLjava/util/stream/DoublePipeline;-><init>(Ljava/util/stream/AbstractPipeline;I)V -HSPLjava/util/stream/DoublePipeline;->max()Ljava/util/OptionalDouble; -HSPLjava/util/stream/DoublePipeline;->reduce(Ljava/util/function/DoubleBinaryOperator;)Ljava/util/OptionalDouble; -HSPLjava/util/stream/FindOps$FindOp;-><init>(ZLjava/util/stream/StreamShape;Ljava/lang/Object;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V -HSPLjava/util/stream/FindOps$FindOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Object; -HSPLjava/util/stream/FindOps$FindOp;->getOpFlags()I -HSPLjava/util/stream/FindOps$FindSink$OfRef;-><init>()V -HSPLjava/util/stream/FindOps$FindSink$OfRef;->get()Ljava/lang/Object; -HSPLjava/util/stream/FindOps$FindSink$OfRef;->get()Ljava/util/Optional; -HSPLjava/util/stream/FindOps$FindSink;-><init>()V -HSPLjava/util/stream/FindOps$FindSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/FindOps$FindSink;->cancellationRequested()Z -HSPLjava/util/stream/FindOps;->makeRef(Z)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ForEachOps$ForEachOp$OfRef;-><init>(Ljava/util/function/Consumer;Z)V -HSPLjava/util/stream/ForEachOps$ForEachOp$OfRef;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ForEachOps$ForEachOp;-><init>(Z)V -HSPLjava/util/stream/ForEachOps$ForEachOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Object; -HSPLjava/util/stream/ForEachOps$ForEachOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Void; -HSPLjava/util/stream/ForEachOps$ForEachOp;->get()Ljava/lang/Void; -HSPLjava/util/stream/ForEachOps$ForEachOp;->getOpFlags()I -HSPLjava/util/stream/ForEachOps;->makeRef(Ljava/util/function/Consumer;Z)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/IntPipeline$$ExternalSyntheticLambda12;->apply(I)Ljava/lang/Object; -HSPLjava/util/stream/IntPipeline$$ExternalSyntheticLambda7;-><init>()V -HSPLjava/util/stream/IntPipeline$$ExternalSyntheticLambda8;-><init>()V -HSPLjava/util/stream/IntPipeline$1$1;-><init>(Ljava/util/stream/IntPipeline$1;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/IntPipeline$1$1;->accept(I)V -HSPLjava/util/stream/IntPipeline$1;-><init>(Ljava/util/stream/IntPipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/IntFunction;)V -HSPLjava/util/stream/IntPipeline$1;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/IntPipeline$4$1;-><init>(Ljava/util/stream/IntPipeline$4;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/IntPipeline$4$1;->accept(I)V -HSPLjava/util/stream/IntPipeline$4;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/IntPipeline$9;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/IntPipeline$Head;-><init>(Ljava/util/Spliterator;IZ)V -HSPLjava/util/stream/IntPipeline$Head;->forEach(Ljava/util/function/IntConsumer;)V -HSPLjava/util/stream/IntPipeline$StatelessOp;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/IntPipeline$StatelessOp;->opIsStateful()Z -HSPLjava/util/stream/IntPipeline;->-$$Nest$smadapt(Ljava/util/Spliterator;)Ljava/util/Spliterator$OfInt; -HSPLjava/util/stream/IntPipeline;-><init>(Ljava/util/Spliterator;IZ)V -HSPLjava/util/stream/IntPipeline;-><init>(Ljava/util/stream/AbstractPipeline;I)V -HSPLjava/util/stream/IntPipeline;->adapt(Ljava/util/Spliterator;)Ljava/util/Spliterator$OfInt; -HSPLjava/util/stream/IntPipeline;->adapt(Ljava/util/stream/Sink;)Ljava/util/function/IntConsumer; -HSPLjava/util/stream/IntPipeline;->allMatch(Ljava/util/function/IntPredicate;)Z -HSPLjava/util/stream/IntPipeline;->boxed()Ljava/util/stream/Stream; -HSPLjava/util/stream/IntPipeline;->distinct()Ljava/util/stream/IntStream; -HSPLjava/util/stream/IntPipeline;->filter(Ljava/util/function/IntPredicate;)Ljava/util/stream/IntStream; -HSPLjava/util/stream/IntPipeline;->makeNodeBuilder(JLjava/util/function/IntFunction;)Ljava/util/stream/Node$Builder; -HSPLjava/util/stream/IntPipeline;->mapToObj(Ljava/util/function/IntFunction;)Ljava/util/stream/Stream; -HSPLjava/util/stream/IntPipeline;->mapToObj(Ljava/util/function/IntFunction;I)Ljava/util/stream/Stream; -HSPLjava/util/stream/IntPipeline;->reduce(ILjava/util/function/IntBinaryOperator;)I -HSPLjava/util/stream/IntPipeline;->sum()I -HSPLjava/util/stream/IntPipeline;->toArray()[I -HSPLjava/util/stream/IntStream;->empty()Ljava/util/stream/IntStream; -HSPLjava/util/stream/IntStream;->of([I)Ljava/util/stream/IntStream; -HSPLjava/util/stream/IntStream;->range(II)Ljava/util/stream/IntStream; -HSPLjava/util/stream/IntStream;->rangeClosed(II)Ljava/util/stream/IntStream; -HSPLjava/util/stream/LongPipeline$$ExternalSyntheticLambda4;-><init>()V -HSPLjava/util/stream/LongPipeline$StatelessOp;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/LongPipeline$StatelessOp;->opIsStateful()Z -HSPLjava/util/stream/LongPipeline;-><init>(Ljava/util/stream/AbstractPipeline;I)V -HSPLjava/util/stream/LongPipeline;->reduce(JLjava/util/function/LongBinaryOperator;)J -HSPLjava/util/stream/LongPipeline;->sum()J -HSPLjava/util/stream/MatchOps$$ExternalSyntheticLambda0;->get()Ljava/lang/Object; -HSPLjava/util/stream/MatchOps$$ExternalSyntheticLambda1;->get()Ljava/lang/Object; -HSPLjava/util/stream/MatchOps$$ExternalSyntheticLambda3;->get()Ljava/lang/Object; -HSPLjava/util/stream/MatchOps$1MatchSink;-><init>(Ljava/util/stream/MatchOps$MatchKind;Ljava/util/function/Predicate;)V -HSPLjava/util/stream/MatchOps$1MatchSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/MatchOps$2MatchSink;-><init>(Ljava/util/stream/MatchOps$MatchKind;Ljava/util/function/IntPredicate;)V -HSPLjava/util/stream/MatchOps$2MatchSink;->accept(I)V -HSPLjava/util/stream/MatchOps$BooleanTerminalSink;-><init>(Ljava/util/stream/MatchOps$MatchKind;)V -HSPLjava/util/stream/MatchOps$BooleanTerminalSink;->cancellationRequested()Z -HSPLjava/util/stream/MatchOps$BooleanTerminalSink;->getAndClearState()Z -HSPLjava/util/stream/MatchOps$MatchKind;->-$$Nest$fgetshortCircuitResult(Ljava/util/stream/MatchOps$MatchKind;)Z -HSPLjava/util/stream/MatchOps$MatchKind;->-$$Nest$fgetstopOnPredicateMatches(Ljava/util/stream/MatchOps$MatchKind;)Z -HSPLjava/util/stream/MatchOps$MatchOp;-><init>(Ljava/util/stream/StreamShape;Ljava/util/stream/MatchOps$MatchKind;Ljava/util/function/Supplier;)V -HSPLjava/util/stream/MatchOps$MatchOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Boolean; -HSPLjava/util/stream/MatchOps$MatchOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Object; -HSPLjava/util/stream/MatchOps$MatchOp;->getOpFlags()I -HSPLjava/util/stream/MatchOps;->lambda$makeInt$1(Ljava/util/stream/MatchOps$MatchKind;Ljava/util/function/IntPredicate;)Ljava/util/stream/MatchOps$BooleanTerminalSink; -HSPLjava/util/stream/MatchOps;->lambda$makeRef$0(Ljava/util/stream/MatchOps$MatchKind;Ljava/util/function/Predicate;)Ljava/util/stream/MatchOps$BooleanTerminalSink; -HSPLjava/util/stream/MatchOps;->makeInt(Ljava/util/function/IntPredicate;Ljava/util/stream/MatchOps$MatchKind;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/MatchOps;->makeRef(Ljava/util/function/Predicate;Ljava/util/stream/MatchOps$MatchKind;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/Node;->getChildCount()I -HSPLjava/util/stream/Nodes$ArrayNode;-><init>(JLjava/util/function/IntFunction;)V -HSPLjava/util/stream/Nodes$ArrayNode;->asArray(Ljava/util/function/IntFunction;)[Ljava/lang/Object; -HSPLjava/util/stream/Nodes$FixedNodeBuilder;-><init>(JLjava/util/function/IntFunction;)V -HSPLjava/util/stream/Nodes$FixedNodeBuilder;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/Nodes$FixedNodeBuilder;->begin(J)V -HSPLjava/util/stream/Nodes$FixedNodeBuilder;->build()Ljava/util/stream/Node; -HSPLjava/util/stream/Nodes$FixedNodeBuilder;->end()V -HSPLjava/util/stream/Nodes$IntArrayNode;-><init>(J)V -HSPLjava/util/stream/Nodes$IntArrayNode;->asPrimitiveArray()Ljava/lang/Object; -HSPLjava/util/stream/Nodes$IntArrayNode;->asPrimitiveArray()[I -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;-><init>(J)V -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;->accept(I)V -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;->begin(J)V -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;->build()Ljava/util/stream/Node$OfInt; -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;->build()Ljava/util/stream/Node; -HSPLjava/util/stream/Nodes$IntFixedNodeBuilder;->end()V -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;-><clinit>()V -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;-><init>()V -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;->asArray(Ljava/util/function/IntFunction;)[Ljava/lang/Object; -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;->begin(J)V -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;->build()Ljava/util/stream/Node; -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;->copyInto([Ljava/lang/Object;I)V -HSPLjava/util/stream/Nodes$SpinedNodeBuilder;->end()V -HSPLjava/util/stream/Nodes;->builder()Ljava/util/stream/Node$Builder; -HSPLjava/util/stream/Nodes;->builder(JLjava/util/function/IntFunction;)Ljava/util/stream/Node$Builder; -HSPLjava/util/stream/Nodes;->flatten(Ljava/util/stream/Node;Ljava/util/function/IntFunction;)Ljava/util/stream/Node; -HSPLjava/util/stream/Nodes;->flattenInt(Ljava/util/stream/Node$OfInt;)Ljava/util/stream/Node$OfInt; -HSPLjava/util/stream/Nodes;->intBuilder(J)Ljava/util/stream/Node$Builder$OfInt; -HSPLjava/util/stream/PipelineHelper;-><init>()V -HSPLjava/util/stream/ReduceOps$12;->makeSink()Ljava/util/stream/ReduceOps$AccumulatingSink; -HSPLjava/util/stream/ReduceOps$12ReducingSink;-><init>(Ljava/util/function/DoubleBinaryOperator;)V -HSPLjava/util/stream/ReduceOps$12ReducingSink;->accept(D)V -HSPLjava/util/stream/ReduceOps$12ReducingSink;->begin(J)V -HSPLjava/util/stream/ReduceOps$12ReducingSink;->get()Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps$12ReducingSink;->get()Ljava/util/OptionalDouble; -HSPLjava/util/stream/ReduceOps$2;-><init>(Ljava/util/stream/StreamShape;Ljava/util/function/BinaryOperator;)V -HSPLjava/util/stream/ReduceOps$2;->makeSink()Ljava/util/stream/ReduceOps$2ReducingSink; -HSPLjava/util/stream/ReduceOps$2;->makeSink()Ljava/util/stream/ReduceOps$AccumulatingSink; -HSPLjava/util/stream/ReduceOps$2ReducingSink;-><init>(Ljava/util/function/BinaryOperator;)V -HSPLjava/util/stream/ReduceOps$2ReducingSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReduceOps$2ReducingSink;->begin(J)V -HSPLjava/util/stream/ReduceOps$2ReducingSink;->get()Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps$2ReducingSink;->get()Ljava/util/Optional; -HSPLjava/util/stream/ReduceOps$3;-><init>(Ljava/util/stream/StreamShape;Ljava/util/function/BinaryOperator;Ljava/util/function/BiConsumer;Ljava/util/function/Supplier;Ljava/util/stream/Collector;)V -HSPLjava/util/stream/ReduceOps$3;->getOpFlags()I -HSPLjava/util/stream/ReduceOps$3;->makeSink()Ljava/util/stream/ReduceOps$3ReducingSink; -HSPLjava/util/stream/ReduceOps$3;->makeSink()Ljava/util/stream/ReduceOps$AccumulatingSink; -HSPLjava/util/stream/ReduceOps$3ReducingSink;-><init>(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BinaryOperator;)V -HSPLjava/util/stream/ReduceOps$3ReducingSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReduceOps$3ReducingSink;->begin(J)V -HSPLjava/util/stream/ReduceOps$5;->makeSink()Ljava/util/stream/ReduceOps$AccumulatingSink; -HSPLjava/util/stream/ReduceOps$5ReducingSink;-><init>(ILjava/util/function/IntBinaryOperator;)V -HSPLjava/util/stream/ReduceOps$5ReducingSink;->accept(I)V -HSPLjava/util/stream/ReduceOps$5ReducingSink;->begin(J)V -HSPLjava/util/stream/ReduceOps$5ReducingSink;->get()Ljava/lang/Integer; -HSPLjava/util/stream/ReduceOps$5ReducingSink;->get()Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps$8;->makeSink()Ljava/util/stream/ReduceOps$AccumulatingSink; -HSPLjava/util/stream/ReduceOps$8ReducingSink;-><init>(JLjava/util/function/LongBinaryOperator;)V -HSPLjava/util/stream/ReduceOps$8ReducingSink;->accept(J)V -HSPLjava/util/stream/ReduceOps$8ReducingSink;->begin(J)V -HSPLjava/util/stream/ReduceOps$8ReducingSink;->get()Ljava/lang/Long; -HSPLjava/util/stream/ReduceOps$8ReducingSink;->get()Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps$Box;-><init>()V -HSPLjava/util/stream/ReduceOps$Box;->get()Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps$ReduceOp;-><init>(Ljava/util/stream/StreamShape;)V -HSPLjava/util/stream/ReduceOps$ReduceOp;->evaluateSequential(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/lang/Object; -HSPLjava/util/stream/ReduceOps;->makeDouble(Ljava/util/function/DoubleBinaryOperator;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ReduceOps;->makeInt(ILjava/util/function/IntBinaryOperator;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ReduceOps;->makeLong(JLjava/util/function/LongBinaryOperator;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ReduceOps;->makeRef(Ljava/util/function/BinaryOperator;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ReduceOps;->makeRef(Ljava/util/stream/Collector;)Ljava/util/stream/TerminalOp; -HSPLjava/util/stream/ReferencePipeline$15$1;-><init>(Ljava/util/stream/ReferencePipeline$15;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$15$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$15;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Consumer;)V -HSPLjava/util/stream/ReferencePipeline$15;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$2$1;-><init>(Ljava/util/stream/ReferencePipeline$2;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$2$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$2$1;->begin(J)V -HSPLjava/util/stream/ReferencePipeline$2;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Predicate;)V -HSPLjava/util/stream/ReferencePipeline$2;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$3$1;-><init>(Ljava/util/stream/ReferencePipeline$3;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$3$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$3;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Function;)V -HSPLjava/util/stream/ReferencePipeline$3;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$4$1;-><init>(Ljava/util/stream/ReferencePipeline$4;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$4$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$4;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/ToIntFunction;)V -HSPLjava/util/stream/ReferencePipeline$4;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$5$1;-><init>(Ljava/util/stream/ReferencePipeline$5;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$5$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$5;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/ToLongFunction;)V -HSPLjava/util/stream/ReferencePipeline$5;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$6$1;-><init>(Ljava/util/stream/ReferencePipeline$6;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$6$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$6;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/ToDoubleFunction;)V -HSPLjava/util/stream/ReferencePipeline$6;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$7$1;-><init>(Ljava/util/stream/ReferencePipeline$7;Ljava/util/stream/Sink;)V -HSPLjava/util/stream/ReferencePipeline$7$1;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/ReferencePipeline$7$1;->begin(J)V -HSPLjava/util/stream/ReferencePipeline$7;-><init>(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Function;)V -HSPLjava/util/stream/ReferencePipeline$7;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/ReferencePipeline$Head;-><init>(Ljava/util/Spliterator;IZ)V -HSPLjava/util/stream/ReferencePipeline$Head;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/stream/ReferencePipeline$StatefulOp;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/ReferencePipeline$StatefulOp;->opIsStateful()Z -HSPLjava/util/stream/ReferencePipeline$StatelessOp;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V -HSPLjava/util/stream/ReferencePipeline$StatelessOp;->opIsStateful()Z -HSPLjava/util/stream/ReferencePipeline;-><init>(Ljava/util/Spliterator;IZ)V -HSPLjava/util/stream/ReferencePipeline;-><init>(Ljava/util/stream/AbstractPipeline;I)V -HSPLjava/util/stream/ReferencePipeline;->allMatch(Ljava/util/function/Predicate;)Z -HSPLjava/util/stream/ReferencePipeline;->anyMatch(Ljava/util/function/Predicate;)Z -HSPLjava/util/stream/ReferencePipeline;->collect(Ljava/util/stream/Collector;)Ljava/lang/Object; -HSPLjava/util/stream/ReferencePipeline;->count()J -HSPLjava/util/stream/ReferencePipeline;->distinct()Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->filter(Ljava/util/function/Predicate;)Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->findAny()Ljava/util/Optional; -HSPLjava/util/stream/ReferencePipeline;->findFirst()Ljava/util/Optional; -HSPLjava/util/stream/ReferencePipeline;->flatMap(Ljava/util/function/Function;)Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->forEach(Ljava/util/function/Consumer;)V -HSPLjava/util/stream/ReferencePipeline;->forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z -HSPLjava/util/stream/ReferencePipeline;->makeNodeBuilder(JLjava/util/function/IntFunction;)Ljava/util/stream/Node$Builder; -HSPLjava/util/stream/ReferencePipeline;->map(Ljava/util/function/Function;)Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->mapToDouble(Ljava/util/function/ToDoubleFunction;)Ljava/util/stream/DoubleStream; -HSPLjava/util/stream/ReferencePipeline;->mapToInt(Ljava/util/function/ToIntFunction;)Ljava/util/stream/IntStream; -HSPLjava/util/stream/ReferencePipeline;->mapToLong(Ljava/util/function/ToLongFunction;)Ljava/util/stream/LongStream; -HSPLjava/util/stream/ReferencePipeline;->max(Ljava/util/Comparator;)Ljava/util/Optional; -HSPLjava/util/stream/ReferencePipeline;->noneMatch(Ljava/util/function/Predicate;)Z -HSPLjava/util/stream/ReferencePipeline;->peek(Ljava/util/function/Consumer;)Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->reduce(Ljava/util/function/BinaryOperator;)Ljava/util/Optional; -HSPLjava/util/stream/ReferencePipeline;->sorted()Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->sorted(Ljava/util/Comparator;)Ljava/util/stream/Stream; -HSPLjava/util/stream/ReferencePipeline;->toArray(Ljava/util/function/IntFunction;)[Ljava/lang/Object; -HSPLjava/util/stream/ReferencePipeline;->wrap(Ljava/util/stream/PipelineHelper;Ljava/util/function/Supplier;Z)Ljava/util/Spliterator; -HSPLjava/util/stream/Sink$ChainedInt;-><init>(Ljava/util/stream/Sink;)V -HSPLjava/util/stream/Sink$ChainedInt;->begin(J)V -HSPLjava/util/stream/Sink$ChainedInt;->end()V -HSPLjava/util/stream/Sink$ChainedReference;-><init>(Ljava/util/stream/Sink;)V -HSPLjava/util/stream/Sink$ChainedReference;->begin(J)V -HSPLjava/util/stream/Sink$ChainedReference;->cancellationRequested()Z -HSPLjava/util/stream/Sink$ChainedReference;->end()V -HSPLjava/util/stream/Sink;->begin(J)V -HSPLjava/util/stream/Sink;->end()V -HSPLjava/util/stream/SortedOps$AbstractRefSortingSink;-><init>(Ljava/util/stream/Sink;Ljava/util/Comparator;)V -HSPLjava/util/stream/SortedOps$OfRef;-><init>(Ljava/util/stream/AbstractPipeline;Ljava/util/Comparator;)V -HSPLjava/util/stream/SortedOps$OfRef;->opWrapSink(ILjava/util/stream/Sink;)Ljava/util/stream/Sink; -HSPLjava/util/stream/SortedOps$RefSortingSink$$ExternalSyntheticLambda0;-><init>(Ljava/util/stream/Sink;)V -HSPLjava/util/stream/SortedOps$RefSortingSink$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/SortedOps$RefSortingSink;-><init>(Ljava/util/stream/Sink;Ljava/util/Comparator;)V -HSPLjava/util/stream/SortedOps$RefSortingSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/SortedOps$RefSortingSink;->begin(J)V -HSPLjava/util/stream/SortedOps$RefSortingSink;->end()V -HSPLjava/util/stream/SortedOps$SizedRefSortingSink;-><init>(Ljava/util/stream/Sink;Ljava/util/Comparator;)V -HSPLjava/util/stream/SortedOps$SizedRefSortingSink;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/SortedOps$SizedRefSortingSink;->begin(J)V -HSPLjava/util/stream/SortedOps$SizedRefSortingSink;->end()V -HSPLjava/util/stream/SortedOps;->makeRef(Ljava/util/stream/AbstractPipeline;Ljava/util/Comparator;)Ljava/util/stream/Stream; -HSPLjava/util/stream/SpinedBuffer;-><init>()V -HSPLjava/util/stream/SpinedBuffer;->accept(Ljava/lang/Object;)V -HSPLjava/util/stream/SpinedBuffer;->asArray(Ljava/util/function/IntFunction;)[Ljava/lang/Object; -HSPLjava/util/stream/SpinedBuffer;->capacity()J -HSPLjava/util/stream/SpinedBuffer;->clear()V -HSPLjava/util/stream/SpinedBuffer;->copyInto([Ljava/lang/Object;I)V -HSPLjava/util/stream/SpinedBuffer;->count()J -HSPLjava/util/stream/SpinedBuffer;->ensureCapacity(J)V -HSPLjava/util/stream/Stream;->builder()Ljava/util/stream/Stream$Builder; -HSPLjava/util/stream/Stream;->concat(Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream; -HSPLjava/util/stream/Stream;->of([Ljava/lang/Object;)Ljava/util/stream/Stream; -HSPLjava/util/stream/StreamOpFlag;->combineOpFlags(II)I -HSPLjava/util/stream/StreamOpFlag;->fromCharacteristics(Ljava/util/Spliterator;)I -HSPLjava/util/stream/StreamOpFlag;->getMask(I)I -HSPLjava/util/stream/StreamOpFlag;->isKnown(I)Z -HSPLjava/util/stream/StreamSupport;->intStream(Ljava/util/Spliterator$OfInt;Z)Ljava/util/stream/IntStream; -HSPLjava/util/stream/StreamSupport;->stream(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream; -HSPLjava/util/stream/Streams$2;-><init>(Ljava/util/stream/BaseStream;Ljava/util/stream/BaseStream;)V -HSPLjava/util/stream/Streams$ConcatSpliterator$OfRef;-><init>(Ljava/util/Spliterator;Ljava/util/Spliterator;)V -HSPLjava/util/stream/Streams$ConcatSpliterator;-><init>(Ljava/util/Spliterator;Ljava/util/Spliterator;)V -HSPLjava/util/stream/Streams$ConcatSpliterator;->characteristics()I -HSPLjava/util/stream/Streams$RangeIntSpliterator;-><init>(III)V -HSPLjava/util/stream/Streams$RangeIntSpliterator;-><init>(IIZ)V -HSPLjava/util/stream/Streams$RangeIntSpliterator;->characteristics()I -HSPLjava/util/stream/Streams$RangeIntSpliterator;->estimateSize()J -HSPLjava/util/stream/Streams$RangeIntSpliterator;->forEachRemaining(Ljava/util/function/IntConsumer;)V -HSPLjava/util/stream/Streams$RangeIntSpliterator;->getComparator()Ljava/util/Comparator; -HSPLjava/util/stream/Streams;->composedClose(Ljava/util/stream/BaseStream;Ljava/util/stream/BaseStream;)Ljava/lang/Runnable; -HSPLjava/util/stream/TerminalOp;->getOpFlags()I -HSPLjava/util/zip/Adler32;-><init>()V -HSPLjava/util/zip/Adler32;->getValue()J -HSPLjava/util/zip/Adler32;->update([B)V -HSPLjava/util/zip/Adler32;->update([BII)V -HSPLjava/util/zip/CRC32;-><init>()V -HSPLjava/util/zip/CRC32;->getValue()J -HSPLjava/util/zip/CRC32;->reset()V -HSPLjava/util/zip/CRC32;->update(I)V -HSPLjava/util/zip/CRC32;->update([B)V -HSPLjava/util/zip/CRC32;->update([BII)V -HSPLjava/util/zip/CRC32;->updateByteBuffer(IJII)I -HSPLjava/util/zip/CRC32;->updateBytes(I[BII)I -HSPLjava/util/zip/CheckedInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Checksum;)V -HSPLjava/util/zip/CheckedInputStream;->read()I -HSPLjava/util/zip/CheckedInputStream;->read([BII)I -HSPLjava/util/zip/Deflater$DeflaterZStreamRef;-><init>(Ljava/util/zip/Deflater;J)V -HSPLjava/util/zip/Deflater$DeflaterZStreamRef;-><init>(Ljava/util/zip/Deflater;JLjava/util/zip/Deflater$DeflaterZStreamRef-IA;)V -HSPLjava/util/zip/Deflater$DeflaterZStreamRef;->address()J -HSPLjava/util/zip/Deflater$DeflaterZStreamRef;->clean()V -HSPLjava/util/zip/Deflater$DeflaterZStreamRef;->run()V -HSPLjava/util/zip/Deflater;->-$$Nest$smend(J)V -HSPLjava/util/zip/Deflater;-><init>()V -HSPLjava/util/zip/Deflater;-><init>(IZ)V -HSPLjava/util/zip/Deflater;->deflate([BII)I -HSPLjava/util/zip/Deflater;->deflate([BIII)I -HSPLjava/util/zip/Deflater;->end()V -HSPLjava/util/zip/Deflater;->ensureOpen()V -HSPLjava/util/zip/Deflater;->finish()V -HSPLjava/util/zip/Deflater;->finished()Z -HSPLjava/util/zip/Deflater;->getBytesRead()J -HSPLjava/util/zip/Deflater;->getTotalIn()I -HSPLjava/util/zip/Deflater;->needsInput()Z -HSPLjava/util/zip/Deflater;->reset()V -HSPLjava/util/zip/Deflater;->setInput([BII)V -HSPLjava/util/zip/Deflater;->setLevel(I)V -HSPLjava/util/zip/DeflaterOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/util/zip/DeflaterOutputStream;-><init>(Ljava/io/OutputStream;Ljava/util/zip/Deflater;)V -HSPLjava/util/zip/DeflaterOutputStream;-><init>(Ljava/io/OutputStream;Ljava/util/zip/Deflater;IZ)V -HSPLjava/util/zip/DeflaterOutputStream;-><init>(Ljava/io/OutputStream;Z)V -HSPLjava/util/zip/DeflaterOutputStream;->close()V -HSPLjava/util/zip/DeflaterOutputStream;->deflate()V -HSPLjava/util/zip/DeflaterOutputStream;->finish()V -HSPLjava/util/zip/DeflaterOutputStream;->flush()V -HSPLjava/util/zip/DeflaterOutputStream;->write([BII)V -HSPLjava/util/zip/GZIPInputStream$1;-><init>(Ljava/util/zip/GZIPInputStream;Ljava/io/InputStream;)V -HSPLjava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;I)V -HSPLjava/util/zip/GZIPInputStream;->close()V -HSPLjava/util/zip/GZIPInputStream;->ensureOpen()V -HSPLjava/util/zip/GZIPInputStream;->read([BII)I -HSPLjava/util/zip/GZIPInputStream;->readHeader(Ljava/io/InputStream;)I -HSPLjava/util/zip/GZIPInputStream;->readTrailer()Z -HSPLjava/util/zip/GZIPInputStream;->readUByte(Ljava/io/InputStream;)I -HSPLjava/util/zip/GZIPInputStream;->readUInt(Ljava/io/InputStream;)J -HSPLjava/util/zip/GZIPInputStream;->readUShort(Ljava/io/InputStream;)I -HSPLjava/util/zip/GZIPInputStream;->skipBytes(Ljava/io/InputStream;I)V -HSPLjava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;)V -HSPLjava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;IZ)V -HSPLjava/util/zip/GZIPOutputStream;->finish()V -HSPLjava/util/zip/GZIPOutputStream;->write([BII)V -HSPLjava/util/zip/GZIPOutputStream;->writeHeader()V -HSPLjava/util/zip/GZIPOutputStream;->writeInt(I[BI)V -HSPLjava/util/zip/GZIPOutputStream;->writeShort(I[BI)V -HSPLjava/util/zip/GZIPOutputStream;->writeTrailer([BI)V -HSPLjava/util/zip/Inflater$InflaterZStreamRef;->address()J -HSPLjava/util/zip/Inflater$InflaterZStreamRef;->clean()V -HSPLjava/util/zip/Inflater$InflaterZStreamRef;->run()V -HSPLjava/util/zip/Inflater;->-$$Nest$smend(J)V -HSPLjava/util/zip/Inflater;-><init>()V -HSPLjava/util/zip/Inflater;-><init>(Z)V -HSPLjava/util/zip/Inflater;->end()V -HSPLjava/util/zip/Inflater;->ensureOpen()V -HSPLjava/util/zip/Inflater;->finished()Z -HSPLjava/util/zip/Inflater;->getBytesRead()J -HSPLjava/util/zip/Inflater;->getBytesWritten()J -HSPLjava/util/zip/Inflater;->getRemaining()I -HSPLjava/util/zip/Inflater;->getTotalOut()I -HSPLjava/util/zip/Inflater;->inflate([BII)I -HSPLjava/util/zip/Inflater;->needsDictionary()Z -HSPLjava/util/zip/Inflater;->needsInput()Z -HSPLjava/util/zip/Inflater;->reset()V -HSPLjava/util/zip/Inflater;->setInput([BII)V -HSPLjava/util/zip/InflaterInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Inflater;)V -HSPLjava/util/zip/InflaterInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Inflater;I)V -HSPLjava/util/zip/InflaterInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Inflater;IZ)V -HSPLjava/util/zip/InflaterInputStream;->available()I -HSPLjava/util/zip/InflaterInputStream;->close()V -HSPLjava/util/zip/InflaterInputStream;->ensureOpen()V -HSPLjava/util/zip/InflaterInputStream;->fill()V -HSPLjava/util/zip/InflaterInputStream;->read()I -HSPLjava/util/zip/InflaterInputStream;->read([BII)I -HSPLjava/util/zip/ZipCoder$UTF8ZipCoder;->checkedHash([BII)I -HSPLjava/util/zip/ZipCoder$UTF8ZipCoder;->hasTrailingSlash([BI)Z -HSPLjava/util/zip/ZipCoder$UTF8ZipCoder;->isUTF8()Z -HSPLjava/util/zip/ZipCoder$UTF8ZipCoder;->toString([BII)Ljava/lang/String; -HSPLjava/util/zip/ZipCoder;-><init>(Ljava/nio/charset/Charset;)V -HSPLjava/util/zip/ZipCoder;->decoder()Ljava/nio/charset/CharsetDecoder; -HSPLjava/util/zip/ZipCoder;->encoder()Ljava/nio/charset/CharsetEncoder; -HSPLjava/util/zip/ZipCoder;->get(Ljava/nio/charset/Charset;)Ljava/util/zip/ZipCoder; -HSPLjava/util/zip/ZipCoder;->getBytes(Ljava/lang/String;)[B -HSPLjava/util/zip/ZipCoder;->isUTF8()Z -HSPLjava/util/zip/ZipCoder;->toString([BI)Ljava/lang/String; -HSPLjava/util/zip/ZipEntry;-><init>()V -HSPLjava/util/zip/ZipEntry;-><init>(Ljava/lang/String;)V -HSPLjava/util/zip/ZipEntry;-><init>(Ljava/util/zip/ZipEntry;)V -HSPLjava/util/zip/ZipEntry;->getCompressedSize()J -HSPLjava/util/zip/ZipEntry;->getCrc()J -HSPLjava/util/zip/ZipEntry;->getMethod()I -HSPLjava/util/zip/ZipEntry;->getName()Ljava/lang/String; -HSPLjava/util/zip/ZipEntry;->getSize()J -HSPLjava/util/zip/ZipEntry;->isDirectory()Z -HSPLjava/util/zip/ZipEntry;->setExtra0([BZZ)V -HSPLjava/util/zip/ZipFile$CleanableResource;-><init>(Ljava/util/zip/ZipFile;Ljava/util/zip/ZipCoder;Ljava/io/File;IZ)V -HSPLjava/util/zip/ZipFile$CleanableResource;->clean()V -HSPLjava/util/zip/ZipFile$CleanableResource;->getInflater()Ljava/util/zip/Inflater; -HSPLjava/util/zip/ZipFile$CleanableResource;->releaseInflater(Ljava/util/zip/Inflater;)V -HSPLjava/util/zip/ZipFile$CleanableResource;->run()V -HSPLjava/util/zip/ZipFile$InflaterCleanupAction;->run()V -HSPLjava/util/zip/ZipFile$Source$End;-><init>()V -HSPLjava/util/zip/ZipFile$Source$End;-><init>(Ljava/util/zip/ZipFile$Source$End-IA;)V -HSPLjava/util/zip/ZipFile$Source$Key;-><init>(Ljava/io/File;Ljava/nio/file/attribute/BasicFileAttributes;Ljava/util/zip/ZipCoder;Z)V -HSPLjava/util/zip/ZipFile$Source$Key;->equals(Ljava/lang/Object;)Z -HSPLjava/util/zip/ZipFile$Source$Key;->hashCode()I -HSPLjava/util/zip/ZipFile$Source;->-$$Nest$fgetlocpos(Ljava/util/zip/ZipFile$Source;)J -HSPLjava/util/zip/ZipFile$Source;->-$$Nest$mgetEntryPos(Ljava/util/zip/ZipFile$Source;Ljava/lang/String;Z)I -HSPLjava/util/zip/ZipFile$Source;->-$$Nest$mreadAt(Ljava/util/zip/ZipFile$Source;[BIIJ)I -HSPLjava/util/zip/ZipFile$Source;->-$$Nest$mreadFullyAt(Ljava/util/zip/ZipFile$Source;[BIIJ)I -HSPLjava/util/zip/ZipFile$Source;-><init>(Ljava/util/zip/ZipFile$Source$Key;ZLjava/util/zip/ZipCoder;)V -HSPLjava/util/zip/ZipFile$Source;->checkAndAddEntry(II)I -HSPLjava/util/zip/ZipFile$Source;->close()V -HSPLjava/util/zip/ZipFile$Source;->findEND()Ljava/util/zip/ZipFile$Source$End; -HSPLjava/util/zip/ZipFile$Source;->get(Ljava/io/File;ZLjava/util/zip/ZipCoder;Z)Ljava/util/zip/ZipFile$Source; -HSPLjava/util/zip/ZipFile$Source;->getEntryPos(Ljava/lang/String;Z)I -HSPLjava/util/zip/ZipFile$Source;->getMetaVersion(II)I -HSPLjava/util/zip/ZipFile$Source;->initCEN(I)V -HSPLjava/util/zip/ZipFile$Source;->isManifestName(II)Z -HSPLjava/util/zip/ZipFile$Source;->isMetaName([BII)Z -HSPLjava/util/zip/ZipFile$Source;->isSignatureRelated(II)Z -HSPLjava/util/zip/ZipFile$Source;->nextEntryPos(III)I -HSPLjava/util/zip/ZipFile$Source;->readAt([BIIJ)I -HSPLjava/util/zip/ZipFile$Source;->readFullyAt([BIIJ)I -HSPLjava/util/zip/ZipFile$Source;->release(Ljava/util/zip/ZipFile$Source;)V -HSPLjava/util/zip/ZipFile$Source;->zipCoderForPos(I)Ljava/util/zip/ZipCoder; -HSPLjava/util/zip/ZipFile$ZipEntryIterator;->hasMoreElements()Z -HSPLjava/util/zip/ZipFile$ZipEntryIterator;->hasNext()Z -HSPLjava/util/zip/ZipFile$ZipEntryIterator;->next()Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipFile$ZipEntryIterator;->nextElement()Ljava/lang/Object; -HSPLjava/util/zip/ZipFile$ZipEntryIterator;->nextElement()Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipFile$ZipFileInflaterInputStream;->available()I -HSPLjava/util/zip/ZipFile$ZipFileInflaterInputStream;->close()V -HSPLjava/util/zip/ZipFile$ZipFileInflaterInputStream;->fill()V -HSPLjava/util/zip/ZipFile$ZipFileInputStream;-><init>(Ljava/util/zip/ZipFile;[BI)V -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->available()I -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->close()V -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->initDataOffset()J -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->read()I -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->read([BII)I -HSPLjava/util/zip/ZipFile$ZipFileInputStream;->size()J -HSPLjava/util/zip/ZipFile;->-$$Nest$fgetres(Ljava/util/zip/ZipFile;)Ljava/util/zip/ZipFile$CleanableResource; -HSPLjava/util/zip/ZipFile;->-$$Nest$mensureOpen(Ljava/util/zip/ZipFile;)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/io/File;)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/io/File;I)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/io/File;ILjava/nio/charset/Charset;)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/io/File;ILjava/nio/charset/Charset;Z)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/io/File;IZ)V -HSPLjava/util/zip/ZipFile;-><init>(Ljava/lang/String;)V -HSPLjava/util/zip/ZipFile;->close()V -HSPLjava/util/zip/ZipFile;->ensureOpen()V -HSPLjava/util/zip/ZipFile;->ensureOpenOrZipException()V -HSPLjava/util/zip/ZipFile;->entries()Ljava/util/Enumeration; -HSPLjava/util/zip/ZipFile;->getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipFile;->getInputStream(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream; -HSPLjava/util/zip/ZipFile;->getZipEntry(Ljava/lang/String;I)Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipInputStream;-><init>(Ljava/io/InputStream;)V -HSPLjava/util/zip/ZipInputStream;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V -HSPLjava/util/zip/ZipInputStream;->close()V -HSPLjava/util/zip/ZipInputStream;->closeEntry()V -HSPLjava/util/zip/ZipInputStream;->createZipEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipInputStream;->ensureOpen()V -HSPLjava/util/zip/ZipInputStream;->getNextEntry()Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipInputStream;->read([BII)I -HSPLjava/util/zip/ZipInputStream;->readEnd(Ljava/util/zip/ZipEntry;)V -HSPLjava/util/zip/ZipInputStream;->readFully([BII)V -HSPLjava/util/zip/ZipInputStream;->readLOC()Ljava/util/zip/ZipEntry; -HSPLjava/util/zip/ZipUtils;->CENFLG([BI)I -HSPLjava/util/zip/ZipUtils;->CENLEN([BI)J -HSPLjava/util/zip/ZipUtils;->CENOFF([BI)J -HSPLjava/util/zip/ZipUtils;->CENSIZ([BI)J -HSPLjava/util/zip/ZipUtils;->ENDCOM([B)I -HSPLjava/util/zip/ZipUtils;->ENDOFF([B)J -HSPLjava/util/zip/ZipUtils;->ENDSIZ([B)J -HSPLjava/util/zip/ZipUtils;->ENDTOT([B)I -HSPLjava/util/zip/ZipUtils;->GETSIG([B)J -HSPLjava/util/zip/ZipUtils;->LG([BI)J -HSPLjava/util/zip/ZipUtils;->LOCEXT([B)I -HSPLjava/util/zip/ZipUtils;->LOCNAM([B)I -HSPLjava/util/zip/ZipUtils;->LOCSIG([B)J -HSPLjava/util/zip/ZipUtils;->SH([BI)I -HSPLjava/util/zip/ZipUtils;->get16([BI)I -HSPLjava/util/zip/ZipUtils;->get32([BI)J -HSPLjava/util/zip/ZipUtils;->unixTimeToFileTime(J)Ljava/nio/file/attribute/FileTime; -HSPLjavax/crypto/Cipher$CipherSpiAndProvider;-><init>(Ljavax/crypto/CipherSpi;Ljava/security/Provider;)V -HSPLjavax/crypto/Cipher$InitParams;-><init>(Ljavax/crypto/Cipher$InitType;ILjava/security/Key;Ljava/security/SecureRandom;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/AlgorithmParameters;)V -HSPLjavax/crypto/Cipher$SpiAndProviderUpdater;-><init>(Ljavax/crypto/Cipher;Ljava/security/Provider;Ljavax/crypto/CipherSpi;)V -HSPLjavax/crypto/Cipher$SpiAndProviderUpdater;->setCipherSpiImplAndProvider(Ljavax/crypto/CipherSpi;Ljava/security/Provider;)V -HSPLjavax/crypto/Cipher$SpiAndProviderUpdater;->updateAndGetSpiAndProvider(Ljavax/crypto/Cipher$InitParams;Ljavax/crypto/CipherSpi;Ljava/security/Provider;)Ljavax/crypto/Cipher$CipherSpiAndProvider; -HSPLjavax/crypto/Cipher$Transform;-><init>(Ljava/lang/String;Ljavax/crypto/Cipher$NeedToSet;)V -HSPLjavax/crypto/Cipher;-><init>(Ljavax/crypto/CipherSpi;Ljava/security/Provider;Ljava/lang/String;[Ljava/lang/String;)V -HSPLjavax/crypto/Cipher;->checkCipherState()V -HSPLjavax/crypto/Cipher;->checkOpmode(I)V -HSPLjavax/crypto/Cipher;->chooseProvider(Ljavax/crypto/Cipher$InitType;ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/AlgorithmParameters;Ljava/security/SecureRandom;)V -HSPLjavax/crypto/Cipher;->createCipher(Ljava/lang/String;Ljava/security/Provider;)Ljavax/crypto/Cipher; -HSPLjavax/crypto/Cipher;->doFinal()[B -HSPLjavax/crypto/Cipher;->doFinal(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I -HSPLjavax/crypto/Cipher;->doFinal([B)[B -HSPLjavax/crypto/Cipher;->doFinal([BI)I -HSPLjavax/crypto/Cipher;->doFinal([BII)[B -HSPLjavax/crypto/Cipher;->doFinal([BII[BI)I -HSPLjavax/crypto/Cipher;->getBlockSize()I -HSPLjavax/crypto/Cipher;->getIV()[B -HSPLjavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher; -HSPLjavax/crypto/Cipher;->getInstance(Ljava/lang/String;Ljava/security/Provider;)Ljavax/crypto/Cipher; -HSPLjavax/crypto/Cipher;->getOutputSize(I)I -HSPLjavax/crypto/Cipher;->init(ILjava/security/Key;)V -HSPLjavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/SecureRandom;)V -HSPLjavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V -HSPLjavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V -HSPLjavax/crypto/Cipher;->matchAttribute(Ljava/security/Provider$Service;Ljava/lang/String;Ljava/lang/String;)Z -HSPLjavax/crypto/Cipher;->tokenizeTransformation(Ljava/lang/String;)[Ljava/lang/String; -HSPLjavax/crypto/Cipher;->tryCombinations(Ljavax/crypto/Cipher$InitParams;Ljava/security/Provider;[Ljava/lang/String;)Ljavax/crypto/Cipher$CipherSpiAndProvider; -HSPLjavax/crypto/Cipher;->tryTransformWithProvider(Ljavax/crypto/Cipher$InitParams;[Ljava/lang/String;Ljavax/crypto/Cipher$NeedToSet;Ljava/security/Provider$Service;)Ljavax/crypto/Cipher$CipherSpiAndProvider; -HSPLjavax/crypto/Cipher;->unwrap([BLjava/lang/String;I)Ljava/security/Key; -HSPLjavax/crypto/Cipher;->update([BII[BI)I -HSPLjavax/crypto/Cipher;->updateAAD([B)V -HSPLjavax/crypto/Cipher;->updateAAD([BII)V -HSPLjavax/crypto/Cipher;->updateProviderIfNeeded()V -HSPLjavax/crypto/CipherSpi;-><init>()V -HSPLjavax/crypto/CipherSpi;->bufferCrypt(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Z)I -HSPLjavax/crypto/CipherSpi;->engineDoFinal(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I -HSPLjavax/crypto/JarVerifier;-><init>(Ljava/net/URL;Z)V -HSPLjavax/crypto/JarVerifier;->verify()V -HSPLjavax/crypto/JceSecurity$1;-><init>(Ljava/lang/Class;)V -HSPLjavax/crypto/JceSecurity$1;->run()Ljava/lang/Object; -HSPLjavax/crypto/JceSecurity$1;->run()Ljava/net/URL; -HSPLjavax/crypto/JceSecurity;->canUseProvider(Ljava/security/Provider;)Z -HSPLjavax/crypto/JceSecurity;->getCodeBase(Ljava/lang/Class;)Ljava/net/URL; -HSPLjavax/crypto/JceSecurity;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance; -HSPLjavax/crypto/JceSecurity;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance; -HSPLjavax/crypto/JceSecurity;->getVerificationResult(Ljava/security/Provider;)Ljava/lang/Exception; -HSPLjavax/crypto/JceSecurity;->verifyProviderJar(Ljava/net/URL;)V -HSPLjavax/crypto/KeyGenerator;-><init>(Ljava/lang/String;)V -HSPLjavax/crypto/KeyGenerator;->generateKey()Ljavax/crypto/SecretKey; -HSPLjavax/crypto/KeyGenerator;->getInstance(Ljava/lang/String;)Ljavax/crypto/KeyGenerator; -HSPLjavax/crypto/KeyGenerator;->init(ILjava/security/SecureRandom;)V -HSPLjavax/crypto/KeyGenerator;->nextSpi(Ljavax/crypto/KeyGeneratorSpi;Z)Ljavax/crypto/KeyGeneratorSpi; -HSPLjavax/crypto/KeyGeneratorSpi;-><init>()V -HSPLjavax/crypto/Mac;-><init>(Ljava/lang/String;)V -HSPLjavax/crypto/Mac;-><init>(Ljavax/crypto/MacSpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjavax/crypto/Mac;->chooseFirstProvider()V -HSPLjavax/crypto/Mac;->chooseProvider(Ljava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V -HSPLjavax/crypto/Mac;->doFinal()[B -HSPLjavax/crypto/Mac;->doFinal([B)[B -HSPLjavax/crypto/Mac;->doFinal([BI)V -HSPLjavax/crypto/Mac;->getAlgorithm()Ljava/lang/String; -HSPLjavax/crypto/Mac;->getInstance(Ljava/lang/String;)Ljavax/crypto/Mac; -HSPLjavax/crypto/Mac;->getInstance(Ljava/lang/String;Ljava/security/Provider;)Ljavax/crypto/Mac; -HSPLjavax/crypto/Mac;->getMacLength()I -HSPLjavax/crypto/Mac;->init(Ljava/security/Key;)V -HSPLjavax/crypto/Mac;->update(B)V -HSPLjavax/crypto/Mac;->update([B)V -HSPLjavax/crypto/Mac;->update([BII)V -HSPLjavax/crypto/MacSpi;-><init>()V -HSPLjavax/crypto/SecretKeyFactory;-><init>(Ljava/lang/String;)V -HSPLjavax/crypto/SecretKeyFactory;->generateSecret(Ljava/security/spec/KeySpec;)Ljavax/crypto/SecretKey; -HSPLjavax/crypto/SecretKeyFactory;->getInstance(Ljava/lang/String;)Ljavax/crypto/SecretKeyFactory; -HSPLjavax/crypto/SecretKeyFactory;->nextSpi(Ljavax/crypto/SecretKeyFactorySpi;)Ljavax/crypto/SecretKeyFactorySpi; -HSPLjavax/crypto/SecretKeyFactorySpi;-><init>()V -HSPLjavax/crypto/spec/GCMParameterSpec;-><init>(I[B)V -HSPLjavax/crypto/spec/GCMParameterSpec;-><init>(I[BII)V -HSPLjavax/crypto/spec/GCMParameterSpec;->getIV()[B -HSPLjavax/crypto/spec/GCMParameterSpec;->getTLen()I -HSPLjavax/crypto/spec/GCMParameterSpec;->init(I[BII)V -HSPLjavax/crypto/spec/IvParameterSpec;-><init>([B)V -HSPLjavax/crypto/spec/IvParameterSpec;-><init>([BII)V -HSPLjavax/crypto/spec/IvParameterSpec;->getIV()[B -HSPLjavax/crypto/spec/PBEKeySpec;-><init>([C[BII)V -HSPLjavax/crypto/spec/PBEKeySpec;->getIterationCount()I -HSPLjavax/crypto/spec/PBEKeySpec;->getKeyLength()I -HSPLjavax/crypto/spec/PBEKeySpec;->getPassword()[C -HSPLjavax/crypto/spec/PBEKeySpec;->getSalt()[B -HSPLjavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V -HSPLjavax/crypto/spec/SecretKeySpec;->getAlgorithm()Ljava/lang/String; -HSPLjavax/crypto/spec/SecretKeySpec;->getEncoded()[B -HSPLjavax/crypto/spec/SecretKeySpec;->getFormat()Ljava/lang/String; -HSPLjavax/microedition/khronos/egl/EGLContext;->getEGL()Ljavax/microedition/khronos/egl/EGL; -HSPLjavax/microedition/khronos/egl/EGLSurface;-><init>()V -HSPLjavax/net/DefaultSocketFactory;-><init>()V -HSPLjavax/net/DefaultSocketFactory;->createSocket()Ljava/net/Socket; -HSPLjavax/net/DefaultSocketFactory;->createSocket(Ljava/net/InetAddress;I)Ljava/net/Socket; -HSPLjavax/net/ServerSocketFactory;-><init>()V -HSPLjavax/net/SocketFactory;-><init>()V -HSPLjavax/net/SocketFactory;->getDefault()Ljavax/net/SocketFactory; -HSPLjavax/net/ssl/ExtendedSSLSession;-><init>()V -HSPLjavax/net/ssl/HttpsURLConnection$NoPreloadHolder;-><clinit>()V -HSPLjavax/net/ssl/HttpsURLConnection;-><init>(Ljava/net/URL;)V -HSPLjavax/net/ssl/HttpsURLConnection;->getDefaultHostnameVerifier()Ljavax/net/ssl/HostnameVerifier; -HSPLjavax/net/ssl/HttpsURLConnection;->getDefaultSSLSocketFactory()Ljavax/net/ssl/SSLSocketFactory; -HSPLjavax/net/ssl/HttpsURLConnection;->setDefaultHostnameVerifier(Ljavax/net/ssl/HostnameVerifier;)V -HSPLjavax/net/ssl/HttpsURLConnection;->setDefaultSSLSocketFactory(Ljavax/net/ssl/SSLSocketFactory;)V -HSPLjavax/net/ssl/KeyManagerFactory$1;-><init>()V -HSPLjavax/net/ssl/KeyManagerFactory$1;->run()Ljava/lang/Object; -HSPLjavax/net/ssl/KeyManagerFactory$1;->run()Ljava/lang/String; -HSPLjavax/net/ssl/KeyManagerFactory;-><init>(Ljavax/net/ssl/KeyManagerFactorySpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjavax/net/ssl/KeyManagerFactory;->getDefaultAlgorithm()Ljava/lang/String; -HSPLjavax/net/ssl/KeyManagerFactory;->getInstance(Ljava/lang/String;)Ljavax/net/ssl/KeyManagerFactory; -HSPLjavax/net/ssl/KeyManagerFactory;->getKeyManagers()[Ljavax/net/ssl/KeyManager; -HSPLjavax/net/ssl/KeyManagerFactory;->init(Ljava/security/KeyStore;[C)V -HSPLjavax/net/ssl/KeyManagerFactorySpi;-><init>()V -HSPLjavax/net/ssl/SNIHostName;-><init>(Ljava/lang/String;)V -HSPLjavax/net/ssl/SNIHostName;->checkHostName()V -HSPLjavax/net/ssl/SNIHostName;->getAsciiName()Ljava/lang/String; -HSPLjavax/net/ssl/SNIServerName;-><init>(I[B)V -HSPLjavax/net/ssl/SNIServerName;->getType()I -HSPLjavax/net/ssl/SSLContext;-><init>(Ljavax/net/ssl/SSLContextSpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLContext;->getClientSessionContext()Ljavax/net/ssl/SSLSessionContext; -HSPLjavax/net/ssl/SSLContext;->getDefault()Ljavax/net/ssl/SSLContext; -HSPLjavax/net/ssl/SSLContext;->getInstance(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; -HSPLjavax/net/ssl/SSLContext;->getInstance(Ljava/lang/String;Ljava/security/Provider;)Ljavax/net/ssl/SSLContext; -HSPLjavax/net/ssl/SSLContext;->getServerSocketFactory()Ljavax/net/ssl/SSLServerSocketFactory; -HSPLjavax/net/ssl/SSLContext;->getSocketFactory()Ljavax/net/ssl/SSLSocketFactory; -HSPLjavax/net/ssl/SSLContext;->init([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V -HSPLjavax/net/ssl/SSLContext;->setDefault(Ljavax/net/ssl/SSLContext;)V -HSPLjavax/net/ssl/SSLContextSpi;-><init>()V -HSPLjavax/net/ssl/SSLEngine;-><init>()V -HSPLjavax/net/ssl/SSLEngine;->getSSLParameters()Ljavax/net/ssl/SSLParameters; -HSPLjavax/net/ssl/SSLEngine;->setSSLParameters(Ljavax/net/ssl/SSLParameters;)V -HSPLjavax/net/ssl/SSLEngine;->wrap([Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult; -HSPLjavax/net/ssl/SSLEngineResult$HandshakeStatus;->values()[Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; -HSPLjavax/net/ssl/SSLEngineResult$Status;->values()[Ljavax/net/ssl/SSLEngineResult$Status; -HSPLjavax/net/ssl/SSLEngineResult;-><init>(Ljavax/net/ssl/SSLEngineResult$Status;Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;II)V -HSPLjavax/net/ssl/SSLEngineResult;->bytesConsumed()I -HSPLjavax/net/ssl/SSLEngineResult;->bytesProduced()I -HSPLjavax/net/ssl/SSLEngineResult;->getHandshakeStatus()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; -HSPLjavax/net/ssl/SSLEngineResult;->getStatus()Ljavax/net/ssl/SSLEngineResult$Status; -HSPLjavax/net/ssl/SSLException;-><init>(Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLParameters;-><init>()V -HSPLjavax/net/ssl/SSLParameters;->clone([Ljava/lang/String;)[Ljava/lang/String; -HSPLjavax/net/ssl/SSLParameters;->getApplicationProtocols()[Ljava/lang/String; -HSPLjavax/net/ssl/SSLParameters;->getCipherSuites()[Ljava/lang/String; -HSPLjavax/net/ssl/SSLParameters;->getEndpointIdentificationAlgorithm()Ljava/lang/String; -HSPLjavax/net/ssl/SSLParameters;->getNeedClientAuth()Z -HSPLjavax/net/ssl/SSLParameters;->getProtocols()[Ljava/lang/String; -HSPLjavax/net/ssl/SSLParameters;->getServerNames()Ljava/util/List; -HSPLjavax/net/ssl/SSLParameters;->getUseCipherSuitesOrder()Z -HSPLjavax/net/ssl/SSLParameters;->getWantClientAuth()Z -HSPLjavax/net/ssl/SSLParameters;->setApplicationProtocols([Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLParameters;->setCipherSuites([Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLParameters;->setEndpointIdentificationAlgorithm(Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLParameters;->setProtocols([Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLParameters;->setServerNames(Ljava/util/List;)V -HSPLjavax/net/ssl/SSLParameters;->setUseCipherSuitesOrder(Z)V -HSPLjavax/net/ssl/SSLServerSocketFactory;-><init>()V -HSPLjavax/net/ssl/SSLServerSocketFactory;->getDefault()Ljavax/net/ServerSocketFactory; -HSPLjavax/net/ssl/SSLServerSocketFactory;->log(Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLSocket;-><init>()V -HSPLjavax/net/ssl/SSLSocket;->getSSLParameters()Ljavax/net/ssl/SSLParameters; -HSPLjavax/net/ssl/SSLSocket;->setSSLParameters(Ljavax/net/ssl/SSLParameters;)V -HSPLjavax/net/ssl/SSLSocketFactory$1;-><init>(Ljava/lang/String;)V -HSPLjavax/net/ssl/SSLSocketFactory$1;->run()Ljava/lang/Object; -HSPLjavax/net/ssl/SSLSocketFactory$1;->run()Ljava/lang/String; -HSPLjavax/net/ssl/SSLSocketFactory;-><init>()V -HSPLjavax/net/ssl/SSLSocketFactory;->getDefault()Ljavax/net/SocketFactory; -HSPLjavax/net/ssl/SSLSocketFactory;->getSecurityProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjavax/net/ssl/SSLSocketFactory;->log(Ljava/lang/String;)V -HSPLjavax/net/ssl/TrustManagerFactory$1;-><init>()V -HSPLjavax/net/ssl/TrustManagerFactory$1;->run()Ljava/lang/Object; -HSPLjavax/net/ssl/TrustManagerFactory$1;->run()Ljava/lang/String; -HSPLjavax/net/ssl/TrustManagerFactory;-><init>(Ljavax/net/ssl/TrustManagerFactorySpi;Ljava/security/Provider;Ljava/lang/String;)V -HSPLjavax/net/ssl/TrustManagerFactory;->getDefaultAlgorithm()Ljava/lang/String; -HSPLjavax/net/ssl/TrustManagerFactory;->getInstance(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory; -HSPLjavax/net/ssl/TrustManagerFactory;->getTrustManagers()[Ljavax/net/ssl/TrustManager; -HSPLjavax/net/ssl/TrustManagerFactory;->init(Ljava/security/KeyStore;)V -HSPLjavax/net/ssl/TrustManagerFactorySpi;-><init>()V -HSPLjavax/net/ssl/X509ExtendedKeyManager;-><init>()V -HSPLjavax/net/ssl/X509ExtendedTrustManager;-><init>()V -HSPLjavax/security/auth/x500/X500Principal;-><init>(Ljava/lang/String;)V -HSPLjavax/security/auth/x500/X500Principal;-><init>(Ljava/lang/String;Ljava/util/Map;)V -HSPLjavax/security/auth/x500/X500Principal;-><init>(Lsun/security/x509/X500Name;)V -HSPLjavax/security/auth/x500/X500Principal;-><init>([B)V -HSPLjavax/security/auth/x500/X500Principal;->equals(Ljava/lang/Object;)Z -HSPLjavax/security/auth/x500/X500Principal;->getEncoded()[B -HSPLjavax/security/auth/x500/X500Principal;->getName()Ljava/lang/String; -HSPLjavax/security/auth/x500/X500Principal;->getName(Ljava/lang/String;)Ljava/lang/String; -HSPLjavax/security/auth/x500/X500Principal;->hashCode()I -HSPLjavax/xml/parsers/DocumentBuilder;-><init>()V -HSPLjavax/xml/parsers/DocumentBuilder;->parse(Ljava/io/InputStream;)Lorg/w3c/dom/Document; -HSPLjavax/xml/parsers/DocumentBuilderFactory;-><init>()V -HSPLjavax/xml/parsers/DocumentBuilderFactory;->isCoalescing()Z -HSPLjavax/xml/parsers/DocumentBuilderFactory;->isIgnoringComments()Z -HSPLjavax/xml/parsers/DocumentBuilderFactory;->isIgnoringElementContentWhitespace()Z -HSPLjavax/xml/parsers/DocumentBuilderFactory;->isNamespaceAware()Z -HSPLjavax/xml/parsers/DocumentBuilderFactory;->isValidating()Z -HSPLjavax/xml/parsers/DocumentBuilderFactory;->newInstance()Ljavax/xml/parsers/DocumentBuilderFactory; -HSPLjavax/xml/parsers/SAXParserFactory;-><init>()V -HSPLjavax/xml/parsers/SAXParserFactory;->newInstance()Ljavax/xml/parsers/SAXParserFactory; -HSPLjdk/internal/access/SharedSecrets;->getJavaUtilCollectionAccess()Ljdk/internal/access/JavaUtilCollectionAccess; -HSPLjdk/internal/access/SharedSecrets;->setJavaUtilCollectionAccess(Ljdk/internal/access/JavaUtilCollectionAccess;)V -HSPLjdk/internal/math/FDBigInteger;-><init>(J[CII)V -HSPLjdk/internal/math/FDBigInteger;-><init>([II)V -HSPLjdk/internal/math/FDBigInteger;->add(Ljdk/internal/math/FDBigInteger;)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->addAndCmp(Ljdk/internal/math/FDBigInteger;Ljdk/internal/math/FDBigInteger;)I -HSPLjdk/internal/math/FDBigInteger;->big5pow(I)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->checkZeroTail([II)I -HSPLjdk/internal/math/FDBigInteger;->cmp(Ljdk/internal/math/FDBigInteger;)I -HSPLjdk/internal/math/FDBigInteger;->cmpPow52(II)I -HSPLjdk/internal/math/FDBigInteger;->getNormalizationBias()I -HSPLjdk/internal/math/FDBigInteger;->leftInplaceSub(Ljdk/internal/math/FDBigInteger;)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->leftShift(I)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->leftShift([II[IIII)V -HSPLjdk/internal/math/FDBigInteger;->makeImmutable()V -HSPLjdk/internal/math/FDBigInteger;->mult([IIII[I)V -HSPLjdk/internal/math/FDBigInteger;->mult([III[I)V -HSPLjdk/internal/math/FDBigInteger;->multAddMe(II)V -HSPLjdk/internal/math/FDBigInteger;->multAndCarryBy10([II[I)I -HSPLjdk/internal/math/FDBigInteger;->multBy10()Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->multByPow52(II)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->multDiffMe(JLjdk/internal/math/FDBigInteger;)J -HSPLjdk/internal/math/FDBigInteger;->quoRemIteration(Ljdk/internal/math/FDBigInteger;)I -HSPLjdk/internal/math/FDBigInteger;->rightInplaceSub(Ljdk/internal/math/FDBigInteger;)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->size()I -HSPLjdk/internal/math/FDBigInteger;->trimLeadingZeros()V -HSPLjdk/internal/math/FDBigInteger;->valueOfMulPow52(JII)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->valueOfPow2(I)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FDBigInteger;->valueOfPow52(II)Ljdk/internal/math/FDBigInteger; -HSPLjdk/internal/math/FloatingDecimal$1;->initialValue()Ljava/lang/Object; -HSPLjdk/internal/math/FloatingDecimal$1;->initialValue()Ljdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer; -HSPLjdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer;-><init>(ZI[CI)V -HSPLjdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer;->doubleValue()D -HSPLjdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer;->floatValue()F -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->-$$Nest$mdtoa(Ljdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;IJIZ)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->-$$Nest$msetSign(Ljdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;Z)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;-><init>()V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->appendTo(Ljava/lang/Appendable;)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->developLongDigits(IJI)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->dtoa(IJIZ)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->estimateDecExp(JI)I -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->getChars([C)I -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->getDecimalExponent()I -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->getDigits([C)I -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->isExceptional()Z -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->isNegative()Z -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->roundup()V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->setSign(Z)V -HSPLjdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer;->toJavaFormatString()Ljava/lang/String; -HSPLjdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer;->doubleValue()D -HSPLjdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer;->floatValue()F -HSPLjdk/internal/math/FloatingDecimal;->appendTo(FLjava/lang/Appendable;)V -HSPLjdk/internal/math/FloatingDecimal;->getBinaryToASCIIBuffer()Ljdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer; -HSPLjdk/internal/math/FloatingDecimal;->getBinaryToASCIIConverter(D)Ljdk/internal/math/FloatingDecimal$BinaryToASCIIConverter; -HSPLjdk/internal/math/FloatingDecimal;->getBinaryToASCIIConverter(DZ)Ljdk/internal/math/FloatingDecimal$BinaryToASCIIConverter; -HSPLjdk/internal/math/FloatingDecimal;->getBinaryToASCIIConverter(F)Ljdk/internal/math/FloatingDecimal$BinaryToASCIIConverter; -HSPLjdk/internal/math/FloatingDecimal;->parseDouble(Ljava/lang/String;)D -HSPLjdk/internal/math/FloatingDecimal;->parseFloat(Ljava/lang/String;)F -HSPLjdk/internal/math/FloatingDecimal;->readJavaFormatString(Ljava/lang/String;)Ljdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter; -HSPLjdk/internal/math/FloatingDecimal;->toJavaFormatString(D)Ljava/lang/String; -HSPLjdk/internal/math/FloatingDecimal;->toJavaFormatString(F)Ljava/lang/String; -HSPLjdk/internal/math/FormattedFloatingDecimal$1;-><init>()V -HSPLjdk/internal/math/FormattedFloatingDecimal$1;->initialValue()Ljava/lang/Object; -HSPLjdk/internal/math/FormattedFloatingDecimal$Form;-><clinit>()V -HSPLjdk/internal/math/FormattedFloatingDecimal$Form;-><init>(Ljava/lang/String;I)V -HSPLjdk/internal/math/FormattedFloatingDecimal$Form;->values()[Ljdk/internal/math/FormattedFloatingDecimal$Form; -HSPLjdk/internal/math/FormattedFloatingDecimal;-><clinit>()V -HSPLjdk/internal/math/FormattedFloatingDecimal;-><init>(ILjdk/internal/math/FormattedFloatingDecimal$Form;Ljdk/internal/math/FloatingDecimal$BinaryToASCIIConverter;)V -HSPLjdk/internal/math/FormattedFloatingDecimal;->applyPrecision(I[CII)I -HSPLjdk/internal/math/FormattedFloatingDecimal;->create(ZI)[C -HSPLjdk/internal/math/FormattedFloatingDecimal;->fillDecimal(I[CIIZ)V -HSPLjdk/internal/math/FormattedFloatingDecimal;->getBuffer()[C -HSPLjdk/internal/math/FormattedFloatingDecimal;->getExponent()[C -HSPLjdk/internal/math/FormattedFloatingDecimal;->getExponentRounded()I -HSPLjdk/internal/math/FormattedFloatingDecimal;->getMantissa()[C -HSPLjdk/internal/math/FormattedFloatingDecimal;->valueOf(DILjdk/internal/math/FormattedFloatingDecimal$Form;)Ljdk/internal/math/FormattedFloatingDecimal; -HSPLjdk/internal/misc/Unsafe;->compareAndSetObject(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z -HSPLjdk/internal/misc/Unsafe;->getAndAddInt(Ljava/lang/Object;JI)I -HSPLjdk/internal/misc/Unsafe;->getAndAddLong(Ljava/lang/Object;JJ)J -HSPLjdk/internal/misc/Unsafe;->getAndBitwiseAndInt(Ljava/lang/Object;JI)I -HSPLjdk/internal/misc/Unsafe;->getAndSetInt(Ljava/lang/Object;JI)I -HSPLjdk/internal/misc/Unsafe;->getAndSetLong(Ljava/lang/Object;JJ)J -HSPLjdk/internal/misc/Unsafe;->getAndSetObject(Ljava/lang/Object;JLjava/lang/Object;)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getAndSetReference(Ljava/lang/Object;JLjava/lang/Object;)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getIntAcquire(Ljava/lang/Object;J)I -HSPLjdk/internal/misc/Unsafe;->getIntUnaligned(Ljava/lang/Object;J)I -HSPLjdk/internal/misc/Unsafe;->getLongAcquire(Ljava/lang/Object;J)J -HSPLjdk/internal/misc/Unsafe;->getLongUnaligned(Ljava/lang/Object;J)J -HSPLjdk/internal/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getObjectAcquire(Ljava/lang/Object;J)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getObjectVolatile(Ljava/lang/Object;J)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getReferenceAcquire(Ljava/lang/Object;J)Ljava/lang/Object; -HSPLjdk/internal/misc/Unsafe;->getUnsafe()Ljdk/internal/misc/Unsafe; -HSPLjdk/internal/misc/Unsafe;->makeLong(II)J -HSPLjdk/internal/misc/Unsafe;->objectFieldOffset(Ljava/lang/Class;Ljava/lang/String;)J -HSPLjdk/internal/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J -HSPLjdk/internal/misc/Unsafe;->pickPos(II)I -HSPLjdk/internal/misc/Unsafe;->putIntOpaque(Ljava/lang/Object;JI)V -HSPLjdk/internal/misc/Unsafe;->putIntRelease(Ljava/lang/Object;JI)V -HSPLjdk/internal/misc/Unsafe;->putLongRelease(Ljava/lang/Object;JJ)V -HSPLjdk/internal/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V -HSPLjdk/internal/misc/Unsafe;->putObjectRelease(Ljava/lang/Object;JLjava/lang/Object;)V -HSPLjdk/internal/misc/Unsafe;->putObjectVolatile(Ljava/lang/Object;JLjava/lang/Object;)V -HSPLjdk/internal/misc/Unsafe;->putReferenceOpaque(Ljava/lang/Object;JLjava/lang/Object;)V -HSPLjdk/internal/misc/Unsafe;->putReferenceRelease(Ljava/lang/Object;JLjava/lang/Object;)V -HSPLjdk/internal/misc/Unsafe;->toUnsignedLong(I)J -HSPLjdk/internal/misc/Unsafe;->weakCompareAndSetInt(Ljava/lang/Object;JII)Z -HSPLjdk/internal/misc/Unsafe;->weakCompareAndSetReference(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z -HSPLjdk/internal/misc/VM;->getSavedProperty(Ljava/lang/String;)Ljava/lang/String; -HSPLjdk/internal/ref/CleanerFactory;->cleaner()Ljava/lang/ref/Cleaner; -HSPLjdk/internal/ref/CleanerImpl$PhantomCleanableRef;-><init>(Ljava/lang/Object;Ljava/lang/ref/Cleaner;Ljava/lang/Runnable;)V -HSPLjdk/internal/ref/CleanerImpl$PhantomCleanableRef;->performCleanup()V -HSPLjdk/internal/ref/CleanerImpl;->getCleanerImpl(Ljava/lang/ref/Cleaner;)Ljdk/internal/ref/CleanerImpl; -HSPLjdk/internal/ref/PhantomCleanable;-><init>(Ljava/lang/Object;Ljava/lang/ref/Cleaner;)V -HSPLjdk/internal/ref/PhantomCleanable;->clean()V -HSPLjdk/internal/ref/PhantomCleanable;->insert()V -HSPLjdk/internal/ref/PhantomCleanable;->remove()Z -HSPLjdk/internal/reflect/Reflection;->getCallerClass()Ljava/lang/Class; -HSPLjdk/internal/util/ArraysSupport;->mismatch([B[BI)I -HSPLjdk/internal/util/ArraysSupport;->mismatch([FI[FII)I -HSPLjdk/internal/util/ArraysSupport;->mismatch([I[II)I -HSPLjdk/internal/util/ArraysSupport;->mismatch([J[JI)I -HSPLjdk/internal/util/ArraysSupport;->mismatch([Z[ZI)I -HSPLjdk/internal/util/ArraysSupport;->newLength(III)I -HSPLjdk/internal/util/ArraysSupport;->vectorizedMismatch(Ljava/lang/Object;JLjava/lang/Object;JII)I -HSPLjdk/internal/util/Preconditions;->checkFromIndexSize(IIILjava/util/function/BiFunction;)I -HSPLjdk/internal/util/Preconditions;->checkIndex(IILjava/util/function/BiFunction;)I -HSPLjdk/internal/util/random/RandomSupport;-><clinit>()V -HSPLjdk/internal/util/random/RandomSupport;->mixMurmur64(J)J -HSPLjdk/internal/util/random/RandomSupport;->secureRandomSeedRequested()Z -HSPLlibcore/content/type/MimeMap$Builder$Element;-><init>(Ljava/lang/String;Z)V -HSPLlibcore/content/type/MimeMap$Builder$Element;->ofExtensionSpec(Ljava/lang/String;)Llibcore/content/type/MimeMap$Builder$Element; -HSPLlibcore/content/type/MimeMap$Builder$Element;->ofMimeSpec(Ljava/lang/String;)Llibcore/content/type/MimeMap$Builder$Element; -HSPLlibcore/content/type/MimeMap$Builder;->addMimeMapping(Ljava/lang/String;Ljava/util/List;)Llibcore/content/type/MimeMap$Builder; -HSPLlibcore/content/type/MimeMap$Builder;->maybePut(Ljava/util/Map;Llibcore/content/type/MimeMap$Builder$Element;Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/content/type/MimeMap$MemoizingSupplier;->get()Ljava/lang/Object; -HSPLlibcore/content/type/MimeMap;-><init>(Ljava/util/Map;Ljava/util/Map;)V -HSPLlibcore/content/type/MimeMap;->checkValidExtension(Ljava/lang/String;)V -HSPLlibcore/content/type/MimeMap;->checkValidMimeType(Ljava/lang/String;)V -HSPLlibcore/content/type/MimeMap;->getDefault()Llibcore/content/type/MimeMap; -HSPLlibcore/content/type/MimeMap;->guessMimeTypeFromExtension(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/content/type/MimeMap;->isValidMimeTypeOrExtension(Ljava/lang/String;)Z -HSPLlibcore/content/type/MimeMap;->toLowerCase(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/icu/CollationKeyICU;-><init>(Ljava/lang/String;Landroid/icu/text/CollationKey;)V -HSPLlibcore/icu/CollationKeyICU;->toByteArray()[B -HSPLlibcore/icu/DecimalFormatData;-><init>(Ljava/util/Locale;)V -HSPLlibcore/icu/DecimalFormatData;->getCurrencyPattern()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getDecimalSeparator()C -HSPLlibcore/icu/DecimalFormatData;->getExponentSeparator()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getGroupingSeparator()C -HSPLlibcore/icu/DecimalFormatData;->getInfinity()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getInstance(Ljava/util/Locale;)Llibcore/icu/DecimalFormatData; -HSPLlibcore/icu/DecimalFormatData;->getMinusSign()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getMonetaryDecimalSeparator()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getMonetaryGroupSeparator()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getNaN()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getNumberPattern()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getPatternSeparator()C -HSPLlibcore/icu/DecimalFormatData;->getPerMill()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getPercent()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getPercentPattern()Ljava/lang/String; -HSPLlibcore/icu/DecimalFormatData;->getZeroDigit()C -HSPLlibcore/icu/DecimalFormatData;->loadPatternSeparator(Ljava/util/Locale;)C -HSPLlibcore/icu/ICU;->getAvailableLocales()[Ljava/util/Locale; -HSPLlibcore/icu/ICU;->getBestDateTimePattern(Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/String; -HSPLlibcore/icu/ICU;->getCurrencyCode(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/icu/ICU;->getExtendedCalendar(Ljava/util/Locale;Ljava/lang/String;)Lcom/android/icu/util/ExtendedCalendar; -HSPLlibcore/icu/ICU;->getISOLanguages()[Ljava/lang/String; -HSPLlibcore/icu/ICU;->isIsoCountry(Ljava/lang/String;)Z -HSPLlibcore/icu/ICU;->localeFromIcuLocaleId(Ljava/lang/String;)Ljava/util/Locale; -HSPLlibcore/icu/ICU;->localesFromStrings([Ljava/lang/String;)[Ljava/util/Locale; -HSPLlibcore/icu/ICU;->parseLangScriptRegionAndVariants(Ljava/lang/String;[Ljava/lang/String;)V -HSPLlibcore/icu/ICU;->setDefaultLocale(Ljava/lang/String;)V -HSPLlibcore/icu/ICU;->transformIcuDateTimePattern_forJavaText(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/icu/LocaleData;->get(Ljava/util/Locale;)Llibcore/icu/LocaleData; -HSPLlibcore/icu/LocaleData;->getCompatibleLocaleForBug159514442(Ljava/util/Locale;)Ljava/util/Locale; -HSPLlibcore/icu/LocaleData;->initLocaleData(Ljava/util/Locale;)Llibcore/icu/LocaleData; -HSPLlibcore/icu/LocaleData;->initializeCalendarData(Ljava/util/Locale;)V -HSPLlibcore/icu/LocaleData;->initializeDateFormatData(Ljava/util/Locale;)V -HSPLlibcore/icu/LocaleData;->mapInvalidAndNullLocales(Ljava/util/Locale;)Ljava/util/Locale; -HSPLlibcore/icu/SimpleDateFormatData;->getDateFormat(I)Ljava/lang/String; -HSPLlibcore/icu/SimpleDateFormatData;->getInstance(Ljava/util/Locale;)Llibcore/icu/SimpleDateFormatData; -HSPLlibcore/icu/SimpleDateFormatData;->getTimeFormat(I)Ljava/lang/String; -HSPLlibcore/internal/StringPool;-><init>()V -HSPLlibcore/internal/StringPool;->contentEquals(Ljava/lang/String;[CII)Z -HSPLlibcore/internal/StringPool;->get([CII)Ljava/lang/String; -HSPLlibcore/io/BlockGuardOs;->accept(Ljava/io/FileDescriptor;Ljava/net/SocketAddress;)Ljava/io/FileDescriptor; -HSPLlibcore/io/BlockGuardOs;->access(Ljava/lang/String;I)Z -HSPLlibcore/io/BlockGuardOs;->android_getaddrinfo(Ljava/lang/String;Landroid/system/StructAddrinfo;I)[Ljava/net/InetAddress; -HSPLlibcore/io/BlockGuardOs;->chmod(Ljava/lang/String;I)V -HSPLlibcore/io/BlockGuardOs;->close(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/BlockGuardOs;->connect(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLlibcore/io/BlockGuardOs;->fdatasync(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/BlockGuardOs;->fstat(Ljava/io/FileDescriptor;)Landroid/system/StructStat; -HSPLlibcore/io/BlockGuardOs;->ftruncate(Ljava/io/FileDescriptor;J)V -HSPLlibcore/io/BlockGuardOs;->getxattr(Ljava/lang/String;Ljava/lang/String;)[B -HSPLlibcore/io/BlockGuardOs;->isInetDomain(I)Z -HSPLlibcore/io/BlockGuardOs;->isInetSocket(Ljava/io/FileDescriptor;)Z -HSPLlibcore/io/BlockGuardOs;->isLingerSocket(Ljava/io/FileDescriptor;)Z -HSPLlibcore/io/BlockGuardOs;->isNonBlockingFile(Ljava/io/FileDescriptor;)Z -HSPLlibcore/io/BlockGuardOs;->isUdpSocket(Ljava/io/FileDescriptor;)Z -HSPLlibcore/io/BlockGuardOs;->isUnixDomain(I)Z -HSPLlibcore/io/BlockGuardOs;->isUnixSocket(Ljava/io/FileDescriptor;)Z -HSPLlibcore/io/BlockGuardOs;->lseek(Ljava/io/FileDescriptor;JI)J -HSPLlibcore/io/BlockGuardOs;->lstat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLlibcore/io/BlockGuardOs;->mkdir(Ljava/lang/String;I)V -HSPLlibcore/io/BlockGuardOs;->open(Ljava/lang/String;II)Ljava/io/FileDescriptor; -HSPLlibcore/io/BlockGuardOs;->poll([Landroid/system/StructPollfd;I)I -HSPLlibcore/io/BlockGuardOs;->posix_fallocate(Ljava/io/FileDescriptor;JJ)V -HSPLlibcore/io/BlockGuardOs;->pread(Ljava/io/FileDescriptor;[BIIJ)I -HSPLlibcore/io/BlockGuardOs;->read(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/BlockGuardOs;->readlink(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/io/BlockGuardOs;->recvfrom(Ljava/io/FileDescriptor;[BIIILjava/net/InetSocketAddress;)I -HSPLlibcore/io/BlockGuardOs;->remove(Ljava/lang/String;)V -HSPLlibcore/io/BlockGuardOs;->rename(Ljava/lang/String;Ljava/lang/String;)V -HSPLlibcore/io/BlockGuardOs;->sendto(Ljava/io/FileDescriptor;[BIIILjava/net/InetAddress;I)I -HSPLlibcore/io/BlockGuardOs;->socket(III)Ljava/io/FileDescriptor; -HSPLlibcore/io/BlockGuardOs;->socketpair(IIILjava/io/FileDescriptor;Ljava/io/FileDescriptor;)V -HSPLlibcore/io/BlockGuardOs;->stat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLlibcore/io/BlockGuardOs;->statvfs(Ljava/lang/String;)Landroid/system/StructStatVfs; -HSPLlibcore/io/BlockGuardOs;->tagSocket(Ljava/io/FileDescriptor;)Ljava/io/FileDescriptor; -HSPLlibcore/io/BlockGuardOs;->write(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection$1;-><init>(Llibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection;Ljava/io/InputStream;)V -HSPLlibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection$1;->close()V -HSPLlibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection;-><init>(Llibcore/io/ClassPathURLStreamHandler;Ljava/net/URL;)V -HSPLlibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection;->connect()V -HSPLlibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection;->getInputStream()Ljava/io/InputStream; -HSPLlibcore/io/ClassPathURLStreamHandler;-><init>(Ljava/lang/String;)V -HSPLlibcore/io/ClassPathURLStreamHandler;-><init>(Ljava/lang/String;Z)V -HSPLlibcore/io/ClassPathURLStreamHandler;->getEntryUrlOrNull(Ljava/lang/String;)Ljava/net/URL; -HSPLlibcore/io/ClassPathURLStreamHandler;->isEntryStored(Ljava/lang/String;)Z -HSPLlibcore/io/ClassPathURLStreamHandler;->openConnection(Ljava/net/URL;)Ljava/net/URLConnection; -HSPLlibcore/io/ForwardingOs;-><init>(Llibcore/io/Os;)V -HSPLlibcore/io/ForwardingOs;->accept(Ljava/io/FileDescriptor;Ljava/net/SocketAddress;)Ljava/io/FileDescriptor; -HSPLlibcore/io/ForwardingOs;->access(Ljava/lang/String;I)Z -HSPLlibcore/io/ForwardingOs;->android_fdsan_exchange_owner_tag(Ljava/io/FileDescriptor;JJ)V -HSPLlibcore/io/ForwardingOs;->android_getaddrinfo(Ljava/lang/String;Landroid/system/StructAddrinfo;I)[Ljava/net/InetAddress; -HSPLlibcore/io/ForwardingOs;->bind(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLlibcore/io/ForwardingOs;->bind(Ljava/io/FileDescriptor;Ljava/net/SocketAddress;)V -HSPLlibcore/io/ForwardingOs;->capget(Landroid/system/StructCapUserHeader;)[Landroid/system/StructCapUserData; -HSPLlibcore/io/ForwardingOs;->chmod(Ljava/lang/String;I)V -HSPLlibcore/io/ForwardingOs;->close(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/ForwardingOs;->connect(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLlibcore/io/ForwardingOs;->dup2(Ljava/io/FileDescriptor;I)Ljava/io/FileDescriptor; -HSPLlibcore/io/ForwardingOs;->fcntlInt(Ljava/io/FileDescriptor;II)I -HSPLlibcore/io/ForwardingOs;->fcntlVoid(Ljava/io/FileDescriptor;I)I -HSPLlibcore/io/ForwardingOs;->fdatasync(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/ForwardingOs;->fstat(Ljava/io/FileDescriptor;)Landroid/system/StructStat; -HSPLlibcore/io/ForwardingOs;->ftruncate(Ljava/io/FileDescriptor;J)V -HSPLlibcore/io/ForwardingOs;->gai_strerror(I)Ljava/lang/String; -HSPLlibcore/io/ForwardingOs;->getenv(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/io/ForwardingOs;->getifaddrs()[Landroid/system/StructIfaddrs; -HSPLlibcore/io/ForwardingOs;->getnameinfo(Ljava/net/InetAddress;I)Ljava/lang/String; -HSPLlibcore/io/ForwardingOs;->getpeername(Ljava/io/FileDescriptor;)Ljava/net/SocketAddress; -HSPLlibcore/io/ForwardingOs;->getpgid(I)I -HSPLlibcore/io/ForwardingOs;->getpid()I -HSPLlibcore/io/ForwardingOs;->getsockname(Ljava/io/FileDescriptor;)Ljava/net/SocketAddress; -HSPLlibcore/io/ForwardingOs;->getsockoptInt(Ljava/io/FileDescriptor;II)I -HSPLlibcore/io/ForwardingOs;->getsockoptLinger(Ljava/io/FileDescriptor;II)Landroid/system/StructLinger; -HSPLlibcore/io/ForwardingOs;->gettid()I -HSPLlibcore/io/ForwardingOs;->getuid()I -HSPLlibcore/io/ForwardingOs;->getxattr(Ljava/lang/String;Ljava/lang/String;)[B -HSPLlibcore/io/ForwardingOs;->if_nametoindex(Ljava/lang/String;)I -HSPLlibcore/io/ForwardingOs;->ioctlInt(Ljava/io/FileDescriptor;I)I -HSPLlibcore/io/ForwardingOs;->listen(Ljava/io/FileDescriptor;I)V -HSPLlibcore/io/ForwardingOs;->lseek(Ljava/io/FileDescriptor;JI)J -HSPLlibcore/io/ForwardingOs;->lstat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLlibcore/io/ForwardingOs;->mkdir(Ljava/lang/String;I)V -HSPLlibcore/io/ForwardingOs;->mmap(JJIILjava/io/FileDescriptor;J)J -HSPLlibcore/io/ForwardingOs;->open(Ljava/lang/String;II)Ljava/io/FileDescriptor; -HSPLlibcore/io/ForwardingOs;->pipe2(I)[Ljava/io/FileDescriptor; -HSPLlibcore/io/ForwardingOs;->poll([Landroid/system/StructPollfd;I)I -HSPLlibcore/io/ForwardingOs;->posix_fallocate(Ljava/io/FileDescriptor;JJ)V -HSPLlibcore/io/ForwardingOs;->pread(Ljava/io/FileDescriptor;[BIIJ)I -HSPLlibcore/io/ForwardingOs;->read(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/ForwardingOs;->readlink(Ljava/lang/String;)Ljava/lang/String; -HSPLlibcore/io/ForwardingOs;->recvfrom(Ljava/io/FileDescriptor;[BIIILjava/net/InetSocketAddress;)I -HSPLlibcore/io/ForwardingOs;->remove(Ljava/lang/String;)V -HSPLlibcore/io/ForwardingOs;->rename(Ljava/lang/String;Ljava/lang/String;)V -HSPLlibcore/io/ForwardingOs;->sendto(Ljava/io/FileDescriptor;[BIIILjava/net/InetAddress;I)I -HSPLlibcore/io/ForwardingOs;->setenv(Ljava/lang/String;Ljava/lang/String;Z)V -HSPLlibcore/io/ForwardingOs;->setpgid(II)V -HSPLlibcore/io/ForwardingOs;->setregid(II)V -HSPLlibcore/io/ForwardingOs;->setreuid(II)V -HSPLlibcore/io/ForwardingOs;->setsockoptInt(Ljava/io/FileDescriptor;III)V -HSPLlibcore/io/ForwardingOs;->setsockoptTimeval(Ljava/io/FileDescriptor;IILandroid/system/StructTimeval;)V -HSPLlibcore/io/ForwardingOs;->shutdown(Ljava/io/FileDescriptor;I)V -HSPLlibcore/io/ForwardingOs;->socket(III)Ljava/io/FileDescriptor; -HSPLlibcore/io/ForwardingOs;->socketpair(IIILjava/io/FileDescriptor;Ljava/io/FileDescriptor;)V -HSPLlibcore/io/ForwardingOs;->stat(Ljava/lang/String;)Landroid/system/StructStat; -HSPLlibcore/io/ForwardingOs;->statvfs(Ljava/lang/String;)Landroid/system/StructStatVfs; -HSPLlibcore/io/ForwardingOs;->strerror(I)Ljava/lang/String; -HSPLlibcore/io/ForwardingOs;->sysconf(I)J -HSPLlibcore/io/ForwardingOs;->write(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/IoBridge;->bind(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLlibcore/io/IoBridge;->booleanFromInt(I)Z -HSPLlibcore/io/IoBridge;->booleanToInt(Z)I -HSPLlibcore/io/IoBridge;->closeAndSignalBlockedThreads(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/IoBridge;->connect(Ljava/io/FileDescriptor;Ljava/net/InetAddress;II)V -HSPLlibcore/io/IoBridge;->connectErrno(Ljava/io/FileDescriptor;Ljava/net/InetAddress;II)V -HSPLlibcore/io/IoBridge;->createMessageForException(Ljava/io/FileDescriptor;Ljava/net/InetAddress;IILjava/lang/Exception;)Ljava/lang/String; -HSPLlibcore/io/IoBridge;->getLocalInetSocketAddress(Ljava/io/FileDescriptor;)Ljava/net/InetSocketAddress; -HSPLlibcore/io/IoBridge;->getSocketOption(Ljava/io/FileDescriptor;I)Ljava/lang/Object; -HSPLlibcore/io/IoBridge;->getSocketOptionErrno(Ljava/io/FileDescriptor;I)Ljava/lang/Object; -HSPLlibcore/io/IoBridge;->isConnected(Ljava/io/FileDescriptor;Ljava/net/InetAddress;III)Z -HSPLlibcore/io/IoBridge;->open(Ljava/lang/String;I)Ljava/io/FileDescriptor; -HSPLlibcore/io/IoBridge;->poll(Ljava/io/FileDescriptor;II)V -HSPLlibcore/io/IoBridge;->postRecvfrom(ZLjava/net/DatagramPacket;Ljava/net/InetSocketAddress;I)I -HSPLlibcore/io/IoBridge;->read(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/IoBridge;->recvfrom(ZLjava/io/FileDescriptor;[BIIILjava/net/DatagramPacket;Z)I -HSPLlibcore/io/IoBridge;->sendto(Ljava/io/FileDescriptor;[BIIILjava/net/InetAddress;I)I -HSPLlibcore/io/IoBridge;->setSocketOption(Ljava/io/FileDescriptor;ILjava/lang/Object;)V -HSPLlibcore/io/IoBridge;->setSocketOptionErrno(Ljava/io/FileDescriptor;ILjava/lang/Object;)V -HSPLlibcore/io/IoBridge;->socket(III)Ljava/io/FileDescriptor; -HSPLlibcore/io/IoBridge;->write(Ljava/io/FileDescriptor;[BII)V -HSPLlibcore/io/IoTracker;-><init>()V -HSPLlibcore/io/IoTracker;->reset()V -HSPLlibcore/io/IoTracker;->trackIo(I)V -HSPLlibcore/io/IoTracker;->trackIo(ILlibcore/io/IoTracker$Mode;)V -HSPLlibcore/io/IoUtils;->acquireRawFd(Ljava/io/FileDescriptor;)I -HSPLlibcore/io/IoUtils;->canOpenReadOnly(Ljava/lang/String;)Z -HSPLlibcore/io/IoUtils;->close(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/IoUtils;->closeQuietly(Ljava/io/FileDescriptor;)V -HSPLlibcore/io/IoUtils;->closeQuietly(Ljava/lang/AutoCloseable;)V -HSPLlibcore/io/IoUtils;->generateFdOwnerId(Ljava/lang/Object;)J -HSPLlibcore/io/IoUtils;->isParcelFileDescriptor(Ljava/lang/Object;)Z -HSPLlibcore/io/IoUtils;->setBlocking(Ljava/io/FileDescriptor;Z)V -HSPLlibcore/io/IoUtils;->setFdOwner(Ljava/io/FileDescriptor;Ljava/lang/Object;)V -HSPLlibcore/io/Libcore;->compareAndSetOs(Llibcore/io/Os;Llibcore/io/Os;)Z -HSPLlibcore/io/Libcore;->getOs()Llibcore/io/Os; -HSPLlibcore/io/Linux;->pread(Ljava/io/FileDescriptor;[BIIJ)I -HSPLlibcore/io/Linux;->read(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/Linux;->recvfrom(Ljava/io/FileDescriptor;[BIIILjava/net/InetSocketAddress;)I -HSPLlibcore/io/Linux;->sendto(Ljava/io/FileDescriptor;[BIIILjava/net/InetAddress;I)I -HSPLlibcore/io/Linux;->write(Ljava/io/FileDescriptor;[BII)I -HSPLlibcore/io/Memory;->peekInt(JZ)I -HSPLlibcore/io/Memory;->peekInt([BILjava/nio/ByteOrder;)I -HSPLlibcore/io/Memory;->peekLong(JZ)J -HSPLlibcore/io/Memory;->peekShort(JZ)S -HSPLlibcore/io/Memory;->peekShort([BILjava/nio/ByteOrder;)S -HSPLlibcore/io/Memory;->pokeInt(JIZ)V -HSPLlibcore/io/Memory;->pokeInt([BIILjava/nio/ByteOrder;)V -HSPLlibcore/io/Memory;->pokeLong(JJZ)V -HSPLlibcore/io/Memory;->pokeShort(JSZ)V -HSPLlibcore/io/Os;->compareAndSetDefault(Llibcore/io/Os;Llibcore/io/Os;)Z -HSPLlibcore/io/Os;->getDefault()Llibcore/io/Os; -HSPLlibcore/net/InetAddressUtils;->parseNumericAddress(Ljava/lang/String;)Ljava/net/InetAddress; -HSPLlibcore/net/InetAddressUtils;->parseNumericAddressNoThrow(Ljava/lang/String;)Ljava/net/InetAddress; -HSPLlibcore/net/InetAddressUtils;->parseNumericAddressNoThrowStripOptionalBrackets(Ljava/lang/String;)Ljava/net/InetAddress; -HSPLlibcore/net/NetworkSecurityPolicy;-><init>()V -HSPLlibcore/net/NetworkSecurityPolicy;->getInstance()Llibcore/net/NetworkSecurityPolicy; -HSPLlibcore/net/NetworkSecurityPolicy;->setInstance(Llibcore/net/NetworkSecurityPolicy;)V -HSPLlibcore/net/event/NetworkEventDispatcher;->addListener(Llibcore/net/event/NetworkEventListener;)V -HSPLlibcore/net/event/NetworkEventDispatcher;->dispatchNetworkConfigurationChange()V -HSPLlibcore/net/event/NetworkEventDispatcher;->getInstance()Llibcore/net/event/NetworkEventDispatcher; -HSPLlibcore/net/event/NetworkEventListener;-><init>()V -HSPLlibcore/net/http/HttpDate$1;->initialValue()Ljava/lang/Object; -HSPLlibcore/net/http/HttpDate$1;->initialValue()Ljava/text/DateFormat; -HSPLlibcore/net/http/HttpDate;->parse(Ljava/lang/String;)Ljava/util/Date; -HSPLlibcore/net/http/HttpURLConnectionFactory;-><init>()V -HSPLlibcore/net/http/HttpURLConnectionFactory;->createInstance()Llibcore/net/http/HttpURLConnectionFactory; -HSPLlibcore/net/http/HttpURLConnectionFactory;->openConnection(Ljava/net/URL;Ljavax/net/SocketFactory;Ljava/net/Proxy;)Ljava/net/URLConnection; -HSPLlibcore/net/http/HttpURLConnectionFactory;->setDns(Llibcore/net/http/Dns;)V -HSPLlibcore/net/http/HttpURLConnectionFactory;->setNewConnectionPool(IJLjava/util/concurrent/TimeUnit;)V -HSPLlibcore/reflect/AnnotationFactory;-><init>(Ljava/lang/Class;[Llibcore/reflect/AnnotationMember;)V -HSPLlibcore/reflect/AnnotationFactory;->createAnnotation(Ljava/lang/Class;[Llibcore/reflect/AnnotationMember;)Ljava/lang/annotation/Annotation; -HSPLlibcore/reflect/AnnotationFactory;->getElementsDescription(Ljava/lang/Class;)[Llibcore/reflect/AnnotationMember; -HSPLlibcore/reflect/AnnotationFactory;->invoke(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object; -HSPLlibcore/reflect/AnnotationMember;-><init>(Ljava/lang/String;Ljava/lang/Object;)V -HSPLlibcore/reflect/AnnotationMember;-><init>(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/reflect/Method;)V -HSPLlibcore/reflect/AnnotationMember;->copyValue()Ljava/lang/Object; -HSPLlibcore/reflect/AnnotationMember;->setDefinition(Llibcore/reflect/AnnotationMember;)Llibcore/reflect/AnnotationMember; -HSPLlibcore/reflect/AnnotationMember;->validateValue()Ljava/lang/Object; -HSPLlibcore/reflect/GenericArrayTypeImpl;->getGenericComponentType()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;-><init>(Ljava/lang/ClassLoader;)V -HSPLlibcore/reflect/GenericSignatureParser;->expect(C)V -HSPLlibcore/reflect/GenericSignatureParser;->isStopSymbol(C)Z -HSPLlibcore/reflect/GenericSignatureParser;->parseClassSignature()V -HSPLlibcore/reflect/GenericSignatureParser;->parseClassTypeSignature()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;->parseFieldTypeSignature()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;->parseForClass(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;)V -HSPLlibcore/reflect/GenericSignatureParser;->parseForConstructor(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;[Ljava/lang/Class;)V -HSPLlibcore/reflect/GenericSignatureParser;->parseForField(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;)V -HSPLlibcore/reflect/GenericSignatureParser;->parseForMethod(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;[Ljava/lang/Class;)V -HSPLlibcore/reflect/GenericSignatureParser;->parseFormalTypeParameter()Llibcore/reflect/TypeVariableImpl; -HSPLlibcore/reflect/GenericSignatureParser;->parseMethodTypeSignature([Ljava/lang/Class;)V -HSPLlibcore/reflect/GenericSignatureParser;->parseOptFormalTypeParameters()V -HSPLlibcore/reflect/GenericSignatureParser;->parseOptTypeArguments()Llibcore/reflect/ListOfTypes; -HSPLlibcore/reflect/GenericSignatureParser;->parseReturnType()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;->parseTypeArgument()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;->parseTypeSignature()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/GenericSignatureParser;->parseTypeVariableSignature()Llibcore/reflect/TypeVariableImpl; -HSPLlibcore/reflect/GenericSignatureParser;->scanIdentifier()V -HSPLlibcore/reflect/GenericSignatureParser;->scanSymbol()V -HSPLlibcore/reflect/GenericSignatureParser;->setInput(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;)V -HSPLlibcore/reflect/ListOfTypes;-><init>(I)V -HSPLlibcore/reflect/ListOfTypes;-><init>([Ljava/lang/reflect/Type;)V -HSPLlibcore/reflect/ListOfTypes;->add(Ljava/lang/reflect/Type;)V -HSPLlibcore/reflect/ListOfTypes;->getResolvedTypes()[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/ListOfTypes;->length()I -HSPLlibcore/reflect/ListOfTypes;->resolveTypes(Ljava/util/List;)[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/ListOfVariables;-><init>()V -HSPLlibcore/reflect/ListOfVariables;->add(Ljava/lang/reflect/TypeVariable;)V -HSPLlibcore/reflect/ListOfVariables;->getArray()[Ljava/lang/reflect/TypeVariable; -HSPLlibcore/reflect/ParameterizedTypeImpl;-><init>(Llibcore/reflect/ParameterizedTypeImpl;Ljava/lang/String;Llibcore/reflect/ListOfTypes;Ljava/lang/ClassLoader;)V -HSPLlibcore/reflect/ParameterizedTypeImpl;->equals(Ljava/lang/Object;)Z -HSPLlibcore/reflect/ParameterizedTypeImpl;->getActualTypeArguments()[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/ParameterizedTypeImpl;->getOwnerType()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/ParameterizedTypeImpl;->getRawType()Ljava/lang/Class; -HSPLlibcore/reflect/ParameterizedTypeImpl;->getRawType()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/ParameterizedTypeImpl;->getResolvedType()Ljava/lang/reflect/Type; -HSPLlibcore/reflect/TypeVariableImpl;-><init>(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;)V -HSPLlibcore/reflect/TypeVariableImpl;-><init>(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;Llibcore/reflect/ListOfTypes;)V -HSPLlibcore/reflect/TypeVariableImpl;->equals(Ljava/lang/Object;)Z -HSPLlibcore/reflect/TypeVariableImpl;->findFormalVar(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;)Ljava/lang/reflect/TypeVariable; -HSPLlibcore/reflect/TypeVariableImpl;->getBounds()[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/TypeVariableImpl;->getGenericDeclaration()Ljava/lang/reflect/GenericDeclaration; -HSPLlibcore/reflect/TypeVariableImpl;->getName()Ljava/lang/String; -HSPLlibcore/reflect/TypeVariableImpl;->hashCode()I -HSPLlibcore/reflect/TypeVariableImpl;->resolve()V -HSPLlibcore/reflect/Types;->getType(Ljava/lang/reflect/Type;)Ljava/lang/reflect/Type; -HSPLlibcore/reflect/Types;->getTypeArray(Llibcore/reflect/ListOfTypes;Z)[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/WildcardTypeImpl;-><init>(Llibcore/reflect/ListOfTypes;Llibcore/reflect/ListOfTypes;)V -HSPLlibcore/reflect/WildcardTypeImpl;->getLowerBounds()[Ljava/lang/reflect/Type; -HSPLlibcore/reflect/WildcardTypeImpl;->getUpperBounds()[Ljava/lang/reflect/Type; -HSPLlibcore/util/ArrayUtils;->throwsIfOutOfBounds(III)V -HSPLlibcore/util/BasicLruCache;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLlibcore/util/BasicLruCache;->entryEvicted(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLlibcore/util/BasicLruCache;->evictAll()V -HSPLlibcore/util/BasicLruCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLlibcore/util/BasicLruCache;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLlibcore/util/BasicLruCache;->trimToSize(I)V -HSPLlibcore/util/CollectionUtils;->removeDuplicates(Ljava/util/List;Ljava/util/Comparator;)V -HSPLlibcore/util/FP16;->ceil(S)S -HSPLlibcore/util/FP16;->compare(SS)I -HSPLlibcore/util/FP16;->floor(S)S -HSPLlibcore/util/FP16;->greater(SS)Z -HSPLlibcore/util/FP16;->greaterEquals(SS)Z -HSPLlibcore/util/FP16;->less(SS)Z -HSPLlibcore/util/FP16;->lessEquals(SS)Z -HSPLlibcore/util/FP16;->max(SS)S -HSPLlibcore/util/FP16;->min(SS)S -HSPLlibcore/util/FP16;->rint(S)S -HSPLlibcore/util/FP16;->toFloat(S)F -HSPLlibcore/util/FP16;->toHalf(F)S -HSPLlibcore/util/NativeAllocationRegistry$CleanerRunner;-><init>(Lsun/misc/Cleaner;)V -HSPLlibcore/util/NativeAllocationRegistry$CleanerRunner;->run()V -HSPLlibcore/util/NativeAllocationRegistry$CleanerThunk;-><init>(Llibcore/util/NativeAllocationRegistry;)V -HSPLlibcore/util/NativeAllocationRegistry$CleanerThunk;->run()V -HSPLlibcore/util/NativeAllocationRegistry$CleanerThunk;->setNativePtr(J)V -HSPLlibcore/util/NativeAllocationRegistry;->-$$Nest$fgetfreeFunction(Llibcore/util/NativeAllocationRegistry;)J -HSPLlibcore/util/NativeAllocationRegistry;->-$$Nest$fgetsize(Llibcore/util/NativeAllocationRegistry;)J -HSPLlibcore/util/NativeAllocationRegistry;->-$$Nest$smregisterNativeFree(J)V -HSPLlibcore/util/NativeAllocationRegistry;-><init>(Ljava/lang/ClassLoader;JJZ)V -HSPLlibcore/util/NativeAllocationRegistry;->createMalloced(Ljava/lang/ClassLoader;J)Llibcore/util/NativeAllocationRegistry; -HSPLlibcore/util/NativeAllocationRegistry;->createMalloced(Ljava/lang/ClassLoader;JJ)Llibcore/util/NativeAllocationRegistry; -HSPLlibcore/util/NativeAllocationRegistry;->createNonmalloced(Ljava/lang/ClassLoader;JJ)Llibcore/util/NativeAllocationRegistry; -HSPLlibcore/util/NativeAllocationRegistry;->registerNativeAllocation(J)V -HSPLlibcore/util/NativeAllocationRegistry;->registerNativeAllocation(Ljava/lang/Object;J)Ljava/lang/Runnable; -HSPLlibcore/util/NativeAllocationRegistry;->registerNativeFree(J)V -HSPLlibcore/util/SneakyThrow;->sneakyThrow(Ljava/lang/Throwable;)V -HSPLlibcore/util/SneakyThrow;->sneakyThrow_(Ljava/lang/Throwable;)V -HSPLlibcore/util/XmlObjectFactory;->newXmlPullParser()Lorg/xmlpull/v1/XmlPullParser; -HSPLlibcore/util/ZoneInfo;-><clinit>()V -HSPLlibcore/util/ZoneInfo;-><init>(Lcom/android/i18n/timezone/ZoneInfoData;IZ)V -HSPLlibcore/util/ZoneInfo;->clone()Ljava/lang/Object; -HSPLlibcore/util/ZoneInfo;->createZoneInfo(Lcom/android/i18n/timezone/ZoneInfoData;)Llibcore/util/ZoneInfo; -HSPLlibcore/util/ZoneInfo;->createZoneInfo(Lcom/android/i18n/timezone/ZoneInfoData;J)Llibcore/util/ZoneInfo; -HSPLlibcore/util/ZoneInfo;->getDSTSavings()I -HSPLlibcore/util/ZoneInfo;->getOffset(J)I -HSPLlibcore/util/ZoneInfo;->getOffsetsByUtcTime(J[I)I -HSPLlibcore/util/ZoneInfo;->getRawOffset()I -HSPLlibcore/util/ZoneInfo;->hasSameRules(Ljava/util/TimeZone;)Z -HSPLlibcore/util/ZoneInfo;->hashCode()I -HSPLlibcore/util/ZoneInfo;->inDaylightTime(Ljava/util/Date;)Z -HSPLorg/apache/harmony/dalvik/ddmc/Chunk;-><init>(ILjava/nio/ByteBuffer;)V -HSPLorg/apache/harmony/dalvik/ddmc/Chunk;-><init>(I[BII)V -HSPLorg/apache/harmony/dalvik/ddmc/ChunkHandler;->type(Ljava/lang/String;)I -HSPLorg/apache/harmony/dalvik/ddmc/DdmServer;->broadcast(I)V -HSPLorg/apache/harmony/dalvik/ddmc/DdmServer;->dispatch(I[BII)Lorg/apache/harmony/dalvik/ddmc/Chunk; -HSPLorg/apache/harmony/dalvik/ddmc/DdmServer;->sendChunk(Lorg/apache/harmony/dalvik/ddmc/Chunk;)V -HSPLorg/apache/harmony/xml/ExpatAttributes;-><init>()V -HSPLorg/apache/harmony/xml/ExpatParser$CurrentAttributes;-><init>(Lorg/apache/harmony/xml/ExpatParser;)V -HSPLorg/apache/harmony/xml/ExpatParser$CurrentAttributes;-><init>(Lorg/apache/harmony/xml/ExpatParser;Lorg/apache/harmony/xml/ExpatParser$CurrentAttributes-IA;)V -HSPLorg/apache/harmony/xml/ExpatParser$ExpatLocator;-><init>(Lorg/apache/harmony/xml/ExpatParser;)V -HSPLorg/apache/harmony/xml/ExpatParser$ExpatLocator;-><init>(Lorg/apache/harmony/xml/ExpatParser;Lorg/apache/harmony/xml/ExpatParser$ExpatLocator-IA;)V -HSPLorg/apache/harmony/xml/ExpatParser;-><init>(Ljava/lang/String;Lorg/apache/harmony/xml/ExpatReader;ZLjava/lang/String;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/ExpatParser;->endDocument()V -HSPLorg/apache/harmony/xml/ExpatParser;->endElement(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/ExpatParser;->finalize()V -HSPLorg/apache/harmony/xml/ExpatParser;->finish()V -HSPLorg/apache/harmony/xml/ExpatParser;->startDocument()V -HSPLorg/apache/harmony/xml/ExpatParser;->startElement(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;JI)V -HSPLorg/apache/harmony/xml/ExpatReader;-><init>()V -HSPLorg/apache/harmony/xml/ExpatReader;->parse(Lorg/xml/sax/InputSource;)V -HSPLorg/apache/harmony/xml/ExpatReader;->setContentHandler(Lorg/xml/sax/ContentHandler;)V -HSPLorg/apache/harmony/xml/dom/AttrImpl;->getNodeType()S -HSPLorg/apache/harmony/xml/dom/AttrImpl;->getOwnerElement()Lorg/w3c/dom/Element; -HSPLorg/apache/harmony/xml/dom/AttrImpl;->setValue(Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/CharacterDataImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/CharacterDataImpl;->getData()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/CharacterDataImpl;->getNodeValue()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/CharacterDataImpl;->setData(Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/DOMImplementationImpl;-><init>()V -HSPLorg/apache/harmony/xml/dom/DOMImplementationImpl;->getInstance()Lorg/apache/harmony/xml/dom/DOMImplementationImpl; -HSPLorg/apache/harmony/xml/dom/DocumentImpl;-><init>(Lorg/apache/harmony/xml/dom/DOMImplementationImpl;Ljava/lang/String;Ljava/lang/String;Lorg/w3c/dom/DocumentType;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->createElement(Ljava/lang/String;)Lorg/apache/harmony/xml/dom/ElementImpl; -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->getDocumentElement()Lorg/w3c/dom/Element; -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->insertChildAt(Lorg/w3c/dom/Node;I)Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->isXMLIdentifier(Ljava/lang/String;)Z -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->isXMLIdentifierPart(C)Z -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->isXMLIdentifierStart(C)Z -HSPLorg/apache/harmony/xml/dom/DocumentImpl;->setDocumentURI(Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/ElementImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/ElementImpl;->getNodeName()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/ElementImpl;->getNodeType()S -HSPLorg/apache/harmony/xml/dom/ElementImpl;->getTagName()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;)V -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->appendChild(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->getChildNodes()Lorg/w3c/dom/NodeList; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->getFirstChild()Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->getLastChild()Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->getTextContent()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->hasTextContent(Lorg/w3c/dom/Node;)Z -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->insertChildAt(Lorg/w3c/dom/Node;I)Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->isParentOf(Lorg/w3c/dom/Node;)Z -HSPLorg/apache/harmony/xml/dom/InnerNodeImpl;->refreshIndices(I)V -HSPLorg/apache/harmony/xml/dom/LeafNodeImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;)V -HSPLorg/apache/harmony/xml/dom/LeafNodeImpl;->getNextSibling()Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/LeafNodeImpl;->isParentOf(Lorg/w3c/dom/Node;)Z -HSPLorg/apache/harmony/xml/dom/NodeImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;)V -HSPLorg/apache/harmony/xml/dom/NodeImpl;->getTextContent()Ljava/lang/String; -HSPLorg/apache/harmony/xml/dom/NodeImpl;->setName(Lorg/apache/harmony/xml/dom/NodeImpl;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/NodeListImpl;-><init>()V -HSPLorg/apache/harmony/xml/dom/NodeListImpl;->add(Lorg/apache/harmony/xml/dom/NodeImpl;)V -HSPLorg/apache/harmony/xml/dom/NodeListImpl;->getLength()I -HSPLorg/apache/harmony/xml/dom/NodeListImpl;->item(I)Lorg/w3c/dom/Node; -HSPLorg/apache/harmony/xml/dom/TextImpl;-><init>(Lorg/apache/harmony/xml/dom/DocumentImpl;Ljava/lang/String;)V -HSPLorg/apache/harmony/xml/dom/TextImpl;->getNodeType()S -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderFactoryImpl;-><init>()V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderFactoryImpl;->newDocumentBuilder()Ljavax/xml/parsers/DocumentBuilder; -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;-><clinit>()V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;-><init>()V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->appendText(Lorg/apache/harmony/xml/dom/DocumentImpl;Lorg/w3c/dom/Node;ILjava/lang/String;)V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->parse(Lcom/android/org/kxml2/io/KXmlParser;Lorg/apache/harmony/xml/dom/DocumentImpl;Lorg/w3c/dom/Node;I)V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->parse(Lorg/xml/sax/InputSource;)Lorg/w3c/dom/Document; -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->setCoalescing(Z)V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->setIgnoreComments(Z)V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->setIgnoreElementContentWhitespace(Z)V -HSPLorg/apache/harmony/xml/parsers/DocumentBuilderImpl;->setNamespaceAware(Z)V -HSPLorg/apache/harmony/xml/parsers/SAXParserFactoryImpl;-><init>()V -HSPLorg/apache/http/conn/ssl/SSLSocketFactory;-><init>(Ljavax/net/ssl/SSLSocketFactory;)V -HSPLorg/apache/http/params/HttpConnectionParams;->setConnectionTimeout(Lorg/apache/http/params/HttpParams;I)V -HSPLorg/apache/http/params/HttpConnectionParams;->setSoTimeout(Lorg/apache/http/params/HttpParams;I)V -HSPLorg/apache/http/params/HttpConnectionParams;->setSocketBufferSize(Lorg/apache/http/params/HttpParams;I)V -HSPLorg/apache/http/params/HttpConnectionParams;->setStaleCheckingEnabled(Lorg/apache/http/params/HttpParams;Z)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;-><init>(Lorg/xml/sax/Attributes;)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->addAttribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->clear()V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->ensureCapacity(I)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getIndex(Ljava/lang/String;)I -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getLength()I -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getLocalName(I)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getQName(I)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getType(I)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getURI(I)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getValue(I)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->removeAttribute(I)V -HSPLorg/ccil/cowan/tagsoup/AttributesImpl;->setAttributes(Lorg/xml/sax/Attributes;)V+]Lorg/ccil/cowan/tagsoup/AttributesImpl;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl; -HSPLorg/ccil/cowan/tagsoup/Element;-><init>(Lorg/ccil/cowan/tagsoup/ElementType;Z)V+]Lorg/ccil/cowan/tagsoup/ElementType;Lorg/ccil/cowan/tagsoup/ElementType; -HSPLorg/ccil/cowan/tagsoup/Element;->atts()Lorg/ccil/cowan/tagsoup/AttributesImpl; -HSPLorg/ccil/cowan/tagsoup/Element;->canContain(Lorg/ccil/cowan/tagsoup/Element;)Z -HSPLorg/ccil/cowan/tagsoup/Element;->clean()V -HSPLorg/ccil/cowan/tagsoup/Element;->flags()I -HSPLorg/ccil/cowan/tagsoup/Element;->isPreclosed()Z -HSPLorg/ccil/cowan/tagsoup/Element;->localName()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Element;->model()I -HSPLorg/ccil/cowan/tagsoup/Element;->name()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Element;->namespace()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Element;->next()Lorg/ccil/cowan/tagsoup/Element; -HSPLorg/ccil/cowan/tagsoup/Element;->parent()Lorg/ccil/cowan/tagsoup/ElementType; -HSPLorg/ccil/cowan/tagsoup/Element;->setAttribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLorg/ccil/cowan/tagsoup/Element;->setNext(Lorg/ccil/cowan/tagsoup/Element;)V -HSPLorg/ccil/cowan/tagsoup/ElementType;->atts()Lorg/ccil/cowan/tagsoup/AttributesImpl; -HSPLorg/ccil/cowan/tagsoup/ElementType;->canContain(Lorg/ccil/cowan/tagsoup/ElementType;)Z -HSPLorg/ccil/cowan/tagsoup/ElementType;->flags()I -HSPLorg/ccil/cowan/tagsoup/ElementType;->localName()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/ElementType;->localName(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/ElementType;->model()I -HSPLorg/ccil/cowan/tagsoup/ElementType;->name()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/ElementType;->namespace()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/ElementType;->namespace(Ljava/lang/String;Z)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/ElementType;->parent()Lorg/ccil/cowan/tagsoup/ElementType; -HSPLorg/ccil/cowan/tagsoup/ElementType;->setAttribute(Lorg/ccil/cowan/tagsoup/AttributesImpl;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;-><init>()V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->mark()V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->resetDocumentLocator(Ljava/lang/String;Ljava/lang/String;)V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->save(ILorg/ccil/cowan/tagsoup/ScanHandler;)V -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->scan(Ljava/io/Reader;Lorg/ccil/cowan/tagsoup/ScanHandler;)V+]Ljava/io/PushbackReader;Ljava/io/PushbackReader;]Lorg/ccil/cowan/tagsoup/ScanHandler;Lorg/ccil/cowan/tagsoup/Parser; -HSPLorg/ccil/cowan/tagsoup/HTMLScanner;->unread(Ljava/io/PushbackReader;I)V -HSPLorg/ccil/cowan/tagsoup/Parser$1;-><init>(Lorg/ccil/cowan/tagsoup/Parser;)V -HSPLorg/ccil/cowan/tagsoup/Parser;-><init>()V+]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLorg/ccil/cowan/tagsoup/Parser;->aname([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->aval([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->entity([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->eof([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->etag([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->etag_basic([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->etag_cdata([CII)Z -HSPLorg/ccil/cowan/tagsoup/Parser;->expandEntities(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Parser;->foreign(Ljava/lang/String;Ljava/lang/String;)Z -HSPLorg/ccil/cowan/tagsoup/Parser;->getEntity()I -HSPLorg/ccil/cowan/tagsoup/Parser;->getReader(Lorg/xml/sax/InputSource;)Ljava/io/Reader; -HSPLorg/ccil/cowan/tagsoup/Parser;->gi([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->lookupEntity([CII)I -HSPLorg/ccil/cowan/tagsoup/Parser;->makeName([CII)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Parser;->parse(Lorg/xml/sax/InputSource;)V+]Ljava/lang/Object;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Scanner;Lorg/ccil/cowan/tagsoup/HTMLScanner;]Lorg/ccil/cowan/tagsoup/Schema;Lorg/ccil/cowan/tagsoup/HTMLSchema;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter;]Lorg/xml/sax/InputSource;Lorg/xml/sax/InputSource; -HSPLorg/ccil/cowan/tagsoup/Parser;->pcdata([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->pop()V+]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter; -HSPLorg/ccil/cowan/tagsoup/Parser;->prefixOf(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Parser;->push(Lorg/ccil/cowan/tagsoup/Element;)V+]Ljava/lang/String;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element;]Lorg/xml/sax/Attributes;Lorg/ccil/cowan/tagsoup/AttributesImpl;]Lorg/xml/sax/ContentHandler;Landroid/text/HtmlToSpannedConverter; -HSPLorg/ccil/cowan/tagsoup/Parser;->rectify(Lorg/ccil/cowan/tagsoup/Element;)V+]Ljava/lang/Object;Ljava/lang/String;]Lorg/ccil/cowan/tagsoup/Element;Lorg/ccil/cowan/tagsoup/Element; -HSPLorg/ccil/cowan/tagsoup/Parser;->restart(Lorg/ccil/cowan/tagsoup/Element;)V -HSPLorg/ccil/cowan/tagsoup/Parser;->setContentHandler(Lorg/xml/sax/ContentHandler;)V -HSPLorg/ccil/cowan/tagsoup/Parser;->setProperty(Ljava/lang/String;Ljava/lang/Object;)V -HSPLorg/ccil/cowan/tagsoup/Parser;->setup()V+]Lorg/ccil/cowan/tagsoup/Schema;Lorg/ccil/cowan/tagsoup/HTMLSchema; -HSPLorg/ccil/cowan/tagsoup/Parser;->stagc([CII)V -HSPLorg/ccil/cowan/tagsoup/Parser;->truthValue(Z)Ljava/lang/Boolean; -HSPLorg/ccil/cowan/tagsoup/Schema;->getElementType(Ljava/lang/String;)Lorg/ccil/cowan/tagsoup/ElementType; -HSPLorg/ccil/cowan/tagsoup/Schema;->getEntity(Ljava/lang/String;)I -HSPLorg/ccil/cowan/tagsoup/Schema;->getPrefix()Ljava/lang/String; -HSPLorg/ccil/cowan/tagsoup/Schema;->getURI()Ljava/lang/String; -HSPLorg/json/JSON;->checkDouble(D)D -HSPLorg/json/JSON;->toBoolean(Ljava/lang/Object;)Ljava/lang/Boolean; -HSPLorg/json/JSON;->toDouble(Ljava/lang/Object;)Ljava/lang/Double; -HSPLorg/json/JSON;->toInteger(Ljava/lang/Object;)Ljava/lang/Integer; -HSPLorg/json/JSON;->toLong(Ljava/lang/Object;)Ljava/lang/Long; -HSPLorg/json/JSON;->toString(Ljava/lang/Object;)Ljava/lang/String; -HSPLorg/json/JSON;->typeMismatch(Ljava/lang/Object;Ljava/lang/String;)Lorg/json/JSONException; -HSPLorg/json/JSONArray;-><init>()V -HSPLorg/json/JSONArray;-><init>(Ljava/lang/String;)V -HSPLorg/json/JSONArray;-><init>(Ljava/util/Collection;)V -HSPLorg/json/JSONArray;-><init>(Lorg/json/JSONTokener;)V -HSPLorg/json/JSONArray;->get(I)Ljava/lang/Object; -HSPLorg/json/JSONArray;->getInt(I)I -HSPLorg/json/JSONArray;->getJSONArray(I)Lorg/json/JSONArray; -HSPLorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject; -HSPLorg/json/JSONArray;->getString(I)Ljava/lang/String; -HSPLorg/json/JSONArray;->length()I -HSPLorg/json/JSONArray;->opt(I)Ljava/lang/Object; -HSPLorg/json/JSONArray;->optJSONObject(I)Lorg/json/JSONObject; -HSPLorg/json/JSONArray;->optString(I)Ljava/lang/String; -HSPLorg/json/JSONArray;->optString(ILjava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONArray;->put(I)Lorg/json/JSONArray; -HSPLorg/json/JSONArray;->put(J)Lorg/json/JSONArray; -HSPLorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; -HSPLorg/json/JSONArray;->toString()Ljava/lang/String; -HSPLorg/json/JSONArray;->writeTo(Lorg/json/JSONStringer;)V -HSPLorg/json/JSONException;-><init>(Ljava/lang/String;)V -HSPLorg/json/JSONObject$1;->toString()Ljava/lang/String; -HSPLorg/json/JSONObject;-><init>()V -HSPLorg/json/JSONObject;-><init>(Ljava/lang/String;)V -HSPLorg/json/JSONObject;-><init>(Ljava/util/Map;)V -HSPLorg/json/JSONObject;-><init>(Lorg/json/JSONTokener;)V -HSPLorg/json/JSONObject;->checkName(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLorg/json/JSONObject;->getBoolean(Ljava/lang/String;)Z -HSPLorg/json/JSONObject;->getDouble(Ljava/lang/String;)D -HSPLorg/json/JSONObject;->getInt(Ljava/lang/String;)I -HSPLorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray; -HSPLorg/json/JSONObject;->getJSONObject(Ljava/lang/String;)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->getLong(Ljava/lang/String;)J -HSPLorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONObject;->has(Ljava/lang/String;)Z -HSPLorg/json/JSONObject;->isNull(Ljava/lang/String;)Z -HSPLorg/json/JSONObject;->keys()Ljava/util/Iterator; -HSPLorg/json/JSONObject;->length()I -HSPLorg/json/JSONObject;->numberToString(Ljava/lang/Number;)Ljava/lang/String; -HSPLorg/json/JSONObject;->opt(Ljava/lang/String;)Ljava/lang/Object; -HSPLorg/json/JSONObject;->optBoolean(Ljava/lang/String;)Z -HSPLorg/json/JSONObject;->optBoolean(Ljava/lang/String;Z)Z -HSPLorg/json/JSONObject;->optDouble(Ljava/lang/String;D)D -HSPLorg/json/JSONObject;->optInt(Ljava/lang/String;)I -HSPLorg/json/JSONObject;->optInt(Ljava/lang/String;I)I -HSPLorg/json/JSONObject;->optJSONArray(Ljava/lang/String;)Lorg/json/JSONArray; -HSPLorg/json/JSONObject;->optJSONObject(Ljava/lang/String;)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->optLong(Ljava/lang/String;)J -HSPLorg/json/JSONObject;->optLong(Ljava/lang/String;J)J -HSPLorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONObject;->put(Ljava/lang/String;D)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->put(Ljava/lang/String;Z)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; -HSPLorg/json/JSONObject;->remove(Ljava/lang/String;)Ljava/lang/Object; -HSPLorg/json/JSONObject;->toString()Ljava/lang/String; -HSPLorg/json/JSONObject;->toString(I)Ljava/lang/String; -HSPLorg/json/JSONObject;->wrap(Ljava/lang/Object;)Ljava/lang/Object; -HSPLorg/json/JSONObject;->writeTo(Lorg/json/JSONStringer;)V -HSPLorg/json/JSONStringer;-><init>()V -HSPLorg/json/JSONStringer;-><init>(I)V -HSPLorg/json/JSONStringer;->array()Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->beforeKey()V -HSPLorg/json/JSONStringer;->beforeValue()V -HSPLorg/json/JSONStringer;->close(Lorg/json/JSONStringer$Scope;Lorg/json/JSONStringer$Scope;Ljava/lang/String;)Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->endArray()Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->endObject()Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->key(Ljava/lang/String;)Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->newline()V -HSPLorg/json/JSONStringer;->object()Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->open(Lorg/json/JSONStringer$Scope;Ljava/lang/String;)Lorg/json/JSONStringer; -HSPLorg/json/JSONStringer;->peek()Lorg/json/JSONStringer$Scope; -HSPLorg/json/JSONStringer;->replaceTop(Lorg/json/JSONStringer$Scope;)V -HSPLorg/json/JSONStringer;->string(Ljava/lang/String;)V -HSPLorg/json/JSONStringer;->toString()Ljava/lang/String; -HSPLorg/json/JSONStringer;->value(Ljava/lang/Object;)Lorg/json/JSONStringer; -HSPLorg/json/JSONTokener;-><init>(Ljava/lang/String;)V -HSPLorg/json/JSONTokener;->nextCleanInternal()I -HSPLorg/json/JSONTokener;->nextString(C)Ljava/lang/String; -HSPLorg/json/JSONTokener;->nextToInternal(Ljava/lang/String;)Ljava/lang/String; -HSPLorg/json/JSONTokener;->nextValue()Ljava/lang/Object; -HSPLorg/json/JSONTokener;->readArray()Lorg/json/JSONArray; -HSPLorg/json/JSONTokener;->readEscapeCharacter()C -HSPLorg/json/JSONTokener;->readLiteral()Ljava/lang/Object; -HSPLorg/json/JSONTokener;->readObject()Lorg/json/JSONObject; -HSPLorg/json/JSONTokener;->syntaxError(Ljava/lang/String;)Lorg/json/JSONException; -HSPLorg/json/JSONTokener;->toString()Ljava/lang/String; -HSPLorg/xml/sax/InputSource;-><init>(Ljava/io/InputStream;)V -HSPLorg/xml/sax/InputSource;-><init>(Ljava/io/Reader;)V -HSPLorg/xml/sax/InputSource;->getByteStream()Ljava/io/InputStream; -HSPLorg/xml/sax/InputSource;->getCharacterStream()Ljava/io/Reader; -HSPLorg/xml/sax/InputSource;->getEncoding()Ljava/lang/String; -HSPLorg/xml/sax/InputSource;->getPublicId()Ljava/lang/String; -HSPLorg/xml/sax/InputSource;->getSystemId()Ljava/lang/String; -HSPLorg/xml/sax/InputSource;->setByteStream(Ljava/io/InputStream;)V -HSPLorg/xml/sax/InputSource;->setCharacterStream(Ljava/io/Reader;)V -HSPLorg/xml/sax/helpers/DefaultHandler;-><init>()V -HSPLorg/xml/sax/helpers/DefaultHandler;->setDocumentLocator(Lorg/xml/sax/Locator;)V -HSPLorg/xmlpull/v1/XmlPullParserFactory;-><init>()V -HSPLorg/xmlpull/v1/XmlPullParserFactory;->getParserInstance()Lorg/xmlpull/v1/XmlPullParser; -HSPLorg/xmlpull/v1/XmlPullParserFactory;->newInstance()Lorg/xmlpull/v1/XmlPullParserFactory; -HSPLorg/xmlpull/v1/XmlPullParserFactory;->newPullParser()Lorg/xmlpull/v1/XmlPullParser; -HSPLorg/xmlpull/v1/XmlPullParserFactory;->setNamespaceAware(Z)V -HSPLsun/invoke/util/VerifyAccess;->isClassAccessible(Ljava/lang/Class;Ljava/lang/Class;I)Z -HSPLsun/invoke/util/VerifyAccess;->isMemberAccessible(Ljava/lang/Class;Ljava/lang/Class;ILjava/lang/Class;I)Z -HSPLsun/invoke/util/VerifyAccess;->isSamePackage(Ljava/lang/Class;Ljava/lang/Class;)Z -HSPLsun/invoke/util/Wrapper;->findPrimitiveType(Ljava/lang/Class;)Lsun/invoke/util/Wrapper; -HSPLsun/invoke/util/Wrapper;->forPrimitiveType(Ljava/lang/Class;)Lsun/invoke/util/Wrapper; -HSPLsun/invoke/util/Wrapper;->hashPrim(Ljava/lang/Class;)I -HSPLsun/invoke/util/Wrapper;->isDoubleWord()Z -HSPLsun/invoke/util/Wrapper;->isIntegral()Z -HSPLsun/invoke/util/Wrapper;->isNumeric()Z -HSPLsun/invoke/util/Wrapper;->isSingleWord()Z -HSPLsun/invoke/util/Wrapper;->isSubwordOrInt()Z -HSPLsun/misc/ASCIICaseInsensitiveComparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLsun/misc/ASCIICaseInsensitiveComparator;->compare(Ljava/lang/String;Ljava/lang/String;)I -HSPLsun/misc/ASCIICaseInsensitiveComparator;->isUpper(I)Z -HSPLsun/misc/ASCIICaseInsensitiveComparator;->lowerCaseHashCode(Ljava/lang/String;)I -HSPLsun/misc/ASCIICaseInsensitiveComparator;->toLower(I)I -HSPLsun/misc/Cleaner;-><init>(Ljava/lang/Object;Ljava/lang/Runnable;)V -HSPLsun/misc/Cleaner;->add(Lsun/misc/Cleaner;)Lsun/misc/Cleaner; -HSPLsun/misc/Cleaner;->checkCleanerQueueEmpty()V -HSPLsun/misc/Cleaner;->clean()V -HSPLsun/misc/Cleaner;->create(Ljava/lang/Object;Ljava/lang/Runnable;)Lsun/misc/Cleaner; -HSPLsun/misc/Cleaner;->isCleanerQueue(Ljava/lang/ref/ReferenceQueue;)Z -HSPLsun/misc/Cleaner;->remove(Lsun/misc/Cleaner;)Z -HSPLsun/misc/CompoundEnumeration;-><init>([Ljava/util/Enumeration;)V -HSPLsun/misc/CompoundEnumeration;->hasMoreElements()Z -HSPLsun/misc/CompoundEnumeration;->next()Z -HSPLsun/misc/CompoundEnumeration;->nextElement()Ljava/lang/Object; -HSPLsun/misc/IOUtils;->readFully(Ljava/io/InputStream;IZ)[B -HSPLsun/misc/LRUCache;-><init>(I)V -HSPLsun/misc/LRUCache;->forName(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/misc/LRUCache;->moveToFront([Ljava/lang/Object;I)V -HSPLsun/misc/Unsafe;->arrayBaseOffset(Ljava/lang/Class;)I -HSPLsun/misc/Unsafe;->arrayIndexScale(Ljava/lang/Class;)I -HSPLsun/misc/Unsafe;->getAndAddInt(Ljava/lang/Object;JI)I -HSPLsun/misc/Unsafe;->getAndAddLong(Ljava/lang/Object;JJ)J -HSPLsun/misc/Unsafe;->getAndSetInt(Ljava/lang/Object;JI)I -HSPLsun/misc/Unsafe;->getAndSetLong(Ljava/lang/Object;JJ)J -HSPLsun/misc/Unsafe;->getAndSetObject(Ljava/lang/Object;JLjava/lang/Object;)Ljava/lang/Object; -HSPLsun/misc/Unsafe;->getUnsafe()Lsun/misc/Unsafe; -HSPLsun/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J -HSPLsun/misc/VM;->isBooted()Z -HSPLsun/net/NetHooks;->beforeTcpBind(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLsun/net/NetHooks;->beforeTcpConnect(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V -HSPLsun/net/NetProperties;->get(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/net/ResourceManager;->beforeUdpCreate()V -HSPLsun/net/spi/DefaultProxySelector$1;-><init>(Lsun/net/spi/DefaultProxySelector;Ljava/lang/String;Lsun/net/spi/DefaultProxySelector$NonProxyInfo;Ljava/lang/String;)V -HSPLsun/net/spi/DefaultProxySelector$1;->run()Ljava/lang/Object; -HSPLsun/net/spi/DefaultProxySelector$1;->run()Ljava/net/Proxy; -HSPLsun/net/spi/DefaultProxySelector;->select(Ljava/net/URI;)Ljava/util/List; -HSPLsun/net/util/IPAddressUtil;->convertFromIPv4MappedAddress([B)[B -HSPLsun/net/util/IPAddressUtil;->isIPv4MappedAddress([B)Z -HSPLsun/net/www/ParseUtil;->decode(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/net/www/ParseUtil;->encodePath(Ljava/lang/String;Z)Ljava/lang/String; -HSPLsun/net/www/protocol/file/Handler;->parseURL(Ljava/net/URL;Ljava/lang/String;II)V -HSPLsun/net/www/protocol/jar/Handler;-><init>()V -HSPLsun/nio/ch/AbstractPollArrayWrapper;-><init>()V -HSPLsun/nio/ch/AbstractPollArrayWrapper;->getReventOps(I)I -HSPLsun/nio/ch/AbstractPollArrayWrapper;->putDescriptor(II)V -HSPLsun/nio/ch/AbstractPollArrayWrapper;->putEventOps(II)V -HSPLsun/nio/ch/AbstractPollArrayWrapper;->putReventOps(II)V -HSPLsun/nio/ch/AbstractPollSelectorImpl;-><init>(Ljava/nio/channels/spi/SelectorProvider;II)V -HSPLsun/nio/ch/AbstractPollSelectorImpl;->implClose()V -HSPLsun/nio/ch/AbstractPollSelectorImpl;->implRegister(Lsun/nio/ch/SelectionKeyImpl;)V -HSPLsun/nio/ch/AbstractPollSelectorImpl;->putEventOps(Lsun/nio/ch/SelectionKeyImpl;I)V -HSPLsun/nio/ch/AbstractPollSelectorImpl;->updateSelectedKeys()I -HSPLsun/nio/ch/AllocatedNativeObject;-><init>(IZ)V -HSPLsun/nio/ch/AllocatedNativeObject;->free()V -HSPLsun/nio/ch/ChannelInputStream;-><init>(Ljava/nio/channels/ReadableByteChannel;)V -HSPLsun/nio/ch/ChannelInputStream;->available()I -HSPLsun/nio/ch/ChannelInputStream;->close()V -HSPLsun/nio/ch/ChannelInputStream;->read()I -HSPLsun/nio/ch/ChannelInputStream;->read(Ljava/nio/ByteBuffer;)I -HSPLsun/nio/ch/ChannelInputStream;->read(Ljava/nio/channels/ReadableByteChannel;Ljava/nio/ByteBuffer;Z)I -HSPLsun/nio/ch/ChannelInputStream;->read([BII)I -HSPLsun/nio/ch/DefaultSelectorProvider;->create()Ljava/nio/channels/spi/SelectorProvider; -HSPLsun/nio/ch/FileChannelImpl$Unmapper;-><init>(JJILjava/io/FileDescriptor;)V -HSPLsun/nio/ch/FileChannelImpl$Unmapper;-><init>(JJILjava/io/FileDescriptor;Lsun/nio/ch/FileChannelImpl$Unmapper-IA;)V -HSPLsun/nio/ch/FileChannelImpl$Unmapper;->run()V -HSPLsun/nio/ch/FileChannelImpl;-><init>(Ljava/io/FileDescriptor;Ljava/lang/String;ZZLjava/lang/Object;)V -HSPLsun/nio/ch/FileChannelImpl;->ensureOpen()V -HSPLsun/nio/ch/FileChannelImpl;->fileLockTable()Lsun/nio/ch/FileLockTable; -HSPLsun/nio/ch/FileChannelImpl;->finalize()V -HSPLsun/nio/ch/FileChannelImpl;->force(Z)V -HSPLsun/nio/ch/FileChannelImpl;->implCloseChannel()V -HSPLsun/nio/ch/FileChannelImpl;->isSharedFileLockTable()Z -HSPLsun/nio/ch/FileChannelImpl;->lock(JJZ)Ljava/nio/channels/FileLock; -HSPLsun/nio/ch/FileChannelImpl;->map(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer; -HSPLsun/nio/ch/FileChannelImpl;->open(Ljava/io/FileDescriptor;Ljava/lang/String;ZZLjava/lang/Object;)Ljava/nio/channels/FileChannel; -HSPLsun/nio/ch/FileChannelImpl;->position()J -HSPLsun/nio/ch/FileChannelImpl;->position(J)Ljava/nio/channels/FileChannel; -HSPLsun/nio/ch/FileChannelImpl;->read(Ljava/nio/ByteBuffer;)I -HSPLsun/nio/ch/FileChannelImpl;->release(Lsun/nio/ch/FileLockImpl;)V -HSPLsun/nio/ch/FileChannelImpl;->size()J -HSPLsun/nio/ch/FileChannelImpl;->tryLock(JJZ)Ljava/nio/channels/FileLock; -HSPLsun/nio/ch/FileChannelImpl;->write(Ljava/nio/ByteBuffer;)I -HSPLsun/nio/ch/FileDescriptorHolderSocketImpl;-><init>(Ljava/io/FileDescriptor;)V -HSPLsun/nio/ch/FileDispatcher;-><init>()V -HSPLsun/nio/ch/FileDispatcherImpl;-><init>()V -HSPLsun/nio/ch/FileDispatcherImpl;->close(Ljava/io/FileDescriptor;)V -HSPLsun/nio/ch/FileDispatcherImpl;->duplicateForMapping(Ljava/io/FileDescriptor;)Ljava/io/FileDescriptor; -HSPLsun/nio/ch/FileDispatcherImpl;->force(Ljava/io/FileDescriptor;Z)I -HSPLsun/nio/ch/FileDispatcherImpl;->lock(Ljava/io/FileDescriptor;ZJJZ)I -HSPLsun/nio/ch/FileDispatcherImpl;->read(Ljava/io/FileDescriptor;JI)I -HSPLsun/nio/ch/FileDispatcherImpl;->release(Ljava/io/FileDescriptor;JJ)V -HSPLsun/nio/ch/FileDispatcherImpl;->size(Ljava/io/FileDescriptor;)J -HSPLsun/nio/ch/FileDispatcherImpl;->truncate(Ljava/io/FileDescriptor;J)I -HSPLsun/nio/ch/FileDispatcherImpl;->write(Ljava/io/FileDescriptor;JI)I -HSPLsun/nio/ch/FileKey;-><init>()V -HSPLsun/nio/ch/FileKey;->create(Ljava/io/FileDescriptor;)Lsun/nio/ch/FileKey; -HSPLsun/nio/ch/FileKey;->hashCode()I -HSPLsun/nio/ch/FileLockImpl;-><init>(Ljava/nio/channels/FileChannel;JJZ)V -HSPLsun/nio/ch/FileLockImpl;->invalidate()V -HSPLsun/nio/ch/FileLockImpl;->isValid()Z -HSPLsun/nio/ch/FileLockImpl;->release()V -HSPLsun/nio/ch/FileLockTable;-><init>()V -HSPLsun/nio/ch/FileLockTable;->newSharedFileLockTable(Ljava/nio/channels/Channel;Ljava/io/FileDescriptor;)Lsun/nio/ch/FileLockTable; -HSPLsun/nio/ch/IOStatus;->checkAll(J)Z -HSPLsun/nio/ch/IOStatus;->normalize(I)I -HSPLsun/nio/ch/IOStatus;->normalize(J)J -HSPLsun/nio/ch/IOUtil;->newFD(I)Ljava/io/FileDescriptor; -HSPLsun/nio/ch/IOUtil;->read(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I -HSPLsun/nio/ch/IOUtil;->readIntoNativeBuffer(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I -HSPLsun/nio/ch/IOUtil;->write(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I -HSPLsun/nio/ch/IOUtil;->writeFromNativeBuffer(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I -HSPLsun/nio/ch/NativeDispatcher;-><init>()V -HSPLsun/nio/ch/NativeDispatcher;->needsPositionLock()Z -HSPLsun/nio/ch/NativeObject;-><init>(IZ)V -HSPLsun/nio/ch/NativeObject;->address()J -HSPLsun/nio/ch/NativeObject;->getShort(I)S -HSPLsun/nio/ch/NativeObject;->putInt(II)V -HSPLsun/nio/ch/NativeObject;->putShort(IS)V -HSPLsun/nio/ch/NativeThreadSet;-><init>(I)V -HSPLsun/nio/ch/NativeThreadSet;->add()I -HSPLsun/nio/ch/NativeThreadSet;->remove(I)V -HSPLsun/nio/ch/NativeThreadSet;->signalAndWait()V -HSPLsun/nio/ch/Net;->checkAddress(Ljava/net/SocketAddress;)Ljava/net/InetSocketAddress; -HSPLsun/nio/ch/Net;->connect(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)I -HSPLsun/nio/ch/Net;->connect(Ljava/net/ProtocolFamily;Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)I -HSPLsun/nio/ch/Net;->isIPv6Available()Z -HSPLsun/nio/ch/Net;->localAddress(Ljava/io/FileDescriptor;)Ljava/net/InetSocketAddress; -HSPLsun/nio/ch/Net;->socket(Ljava/net/ProtocolFamily;Z)Ljava/io/FileDescriptor; -HSPLsun/nio/ch/Net;->socket(Z)Ljava/io/FileDescriptor; -HSPLsun/nio/ch/PollArrayWrapper;-><init>(I)V -HSPLsun/nio/ch/PollArrayWrapper;->addEntry(Lsun/nio/ch/SelChImpl;)V -HSPLsun/nio/ch/PollArrayWrapper;->free()V -HSPLsun/nio/ch/PollArrayWrapper;->initInterrupt(II)V -HSPLsun/nio/ch/PollArrayWrapper;->interrupt()V -HSPLsun/nio/ch/PollArrayWrapper;->poll(IIJ)I -HSPLsun/nio/ch/PollArrayWrapper;->release(I)V -HSPLsun/nio/ch/PollSelectorImpl;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLsun/nio/ch/PollSelectorImpl;->doSelect(J)I -HSPLsun/nio/ch/PollSelectorImpl;->implCloseInterrupt()V -HSPLsun/nio/ch/PollSelectorImpl;->wakeup()Ljava/nio/channels/Selector; -HSPLsun/nio/ch/PollSelectorProvider;-><init>()V -HSPLsun/nio/ch/PollSelectorProvider;->openSelector()Ljava/nio/channels/spi/AbstractSelector; -HSPLsun/nio/ch/SelectionKeyImpl;-><init>(Lsun/nio/ch/SelChImpl;Lsun/nio/ch/SelectorImpl;)V -HSPLsun/nio/ch/SelectionKeyImpl;->channel()Ljava/nio/channels/SelectableChannel; -HSPLsun/nio/ch/SelectionKeyImpl;->ensureValid()V -HSPLsun/nio/ch/SelectionKeyImpl;->getIndex()I -HSPLsun/nio/ch/SelectionKeyImpl;->interestOps(I)Ljava/nio/channels/SelectionKey; -HSPLsun/nio/ch/SelectionKeyImpl;->nioInterestOps()I -HSPLsun/nio/ch/SelectionKeyImpl;->nioInterestOps(I)Ljava/nio/channels/SelectionKey; -HSPLsun/nio/ch/SelectionKeyImpl;->nioReadyOps()I -HSPLsun/nio/ch/SelectionKeyImpl;->nioReadyOps(I)V -HSPLsun/nio/ch/SelectionKeyImpl;->setIndex(I)V -HSPLsun/nio/ch/SelectorImpl;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLsun/nio/ch/SelectorImpl;->implCloseSelector()V -HSPLsun/nio/ch/SelectorImpl;->lockAndDoSelect(J)I -HSPLsun/nio/ch/SelectorImpl;->processDeregisterQueue()V -HSPLsun/nio/ch/SelectorImpl;->register(Ljava/nio/channels/spi/AbstractSelectableChannel;ILjava/lang/Object;)Ljava/nio/channels/SelectionKey; -HSPLsun/nio/ch/SelectorImpl;->select(J)I -HSPLsun/nio/ch/SelectorProviderImpl;-><init>()V -HSPLsun/nio/ch/SelectorProviderImpl;->openSocketChannel()Ljava/nio/channels/SocketChannel; -HSPLsun/nio/ch/SharedFileLockTable$FileLockReference;-><init>(Ljava/nio/channels/FileLock;Ljava/lang/ref/ReferenceQueue;Lsun/nio/ch/FileKey;)V -HSPLsun/nio/ch/SharedFileLockTable$FileLockReference;->fileKey()Lsun/nio/ch/FileKey; -HSPLsun/nio/ch/SharedFileLockTable;-><init>(Ljava/nio/channels/Channel;Ljava/io/FileDescriptor;)V -HSPLsun/nio/ch/SharedFileLockTable;->add(Ljava/nio/channels/FileLock;)V -HSPLsun/nio/ch/SharedFileLockTable;->checkList(Ljava/util/List;JJ)V -HSPLsun/nio/ch/SharedFileLockTable;->remove(Ljava/nio/channels/FileLock;)V -HSPLsun/nio/ch/SharedFileLockTable;->removeAll()Ljava/util/List; -HSPLsun/nio/ch/SharedFileLockTable;->removeKeyIfEmpty(Lsun/nio/ch/FileKey;Ljava/util/List;)V -HSPLsun/nio/ch/SharedFileLockTable;->removeStaleEntries()V -HSPLsun/nio/ch/SocketAdaptor;-><init>(Lsun/nio/ch/SocketChannelImpl;)V -HSPLsun/nio/ch/SocketAdaptor;->create(Lsun/nio/ch/SocketChannelImpl;)Ljava/net/Socket; -HSPLsun/nio/ch/SocketAdaptor;->getInetAddress()Ljava/net/InetAddress; -HSPLsun/nio/ch/SocketAdaptor;->isClosed()Z -HSPLsun/nio/ch/SocketAdaptor;->isConnected()Z -HSPLsun/nio/ch/SocketChannelImpl;-><init>(Ljava/nio/channels/spi/SelectorProvider;)V -HSPLsun/nio/ch/SocketChannelImpl;->connect(Ljava/net/SocketAddress;)Z -HSPLsun/nio/ch/SocketChannelImpl;->ensureOpenAndUnconnected()V -HSPLsun/nio/ch/SocketChannelImpl;->finishConnect()Z -HSPLsun/nio/ch/SocketChannelImpl;->getFD()Ljava/io/FileDescriptor; -HSPLsun/nio/ch/SocketChannelImpl;->implCloseSelectableChannel()V -HSPLsun/nio/ch/SocketChannelImpl;->implConfigureBlocking(Z)V -HSPLsun/nio/ch/SocketChannelImpl;->isConnected()Z -HSPLsun/nio/ch/SocketChannelImpl;->kill()V -HSPLsun/nio/ch/SocketChannelImpl;->readerCleanup()V -HSPLsun/nio/ch/SocketChannelImpl;->remoteAddress()Ljava/net/SocketAddress; -HSPLsun/nio/ch/SocketChannelImpl;->socket()Ljava/net/Socket; -HSPLsun/nio/ch/SocketChannelImpl;->translateAndSetInterestOps(ILsun/nio/ch/SelectionKeyImpl;)V -HSPLsun/nio/ch/SocketChannelImpl;->translateAndSetReadyOps(ILsun/nio/ch/SelectionKeyImpl;)Z -HSPLsun/nio/ch/SocketChannelImpl;->translateReadyOps(IILsun/nio/ch/SelectionKeyImpl;)Z -HSPLsun/nio/ch/SocketDispatcher;->close(Ljava/io/FileDescriptor;)V -HSPLsun/nio/ch/SocketDispatcher;->preClose(Ljava/io/FileDescriptor;)V -HSPLsun/nio/ch/Util$1;->initialValue()Ljava/lang/Object; -HSPLsun/nio/ch/Util$1;->initialValue()Lsun/nio/ch/Util$BufferCache; -HSPLsun/nio/ch/Util$3;-><init>(Ljava/util/Set;)V -HSPLsun/nio/ch/Util$BufferCache;-><init>()V -HSPLsun/nio/ch/Util$BufferCache;->get(I)Ljava/nio/ByteBuffer; -HSPLsun/nio/ch/Util$BufferCache;->isEmpty()Z -HSPLsun/nio/ch/Util$BufferCache;->next(I)I -HSPLsun/nio/ch/Util$BufferCache;->offerFirst(Ljava/nio/ByteBuffer;)Z -HSPLsun/nio/ch/Util$BufferCache;->removeFirst()Ljava/nio/ByteBuffer; -HSPLsun/nio/ch/Util;->atBugLevel(Ljava/lang/String;)Z -HSPLsun/nio/ch/Util;->free(Ljava/nio/ByteBuffer;)V -HSPLsun/nio/ch/Util;->getTemporaryDirectBuffer(I)Ljava/nio/ByteBuffer; -HSPLsun/nio/ch/Util;->isBufferTooLarge(I)Z -HSPLsun/nio/ch/Util;->isBufferTooLarge(Ljava/nio/ByteBuffer;)Z -HSPLsun/nio/ch/Util;->offerFirstTemporaryDirectBuffer(Ljava/nio/ByteBuffer;)V -HSPLsun/nio/ch/Util;->ungrowableSet(Ljava/util/Set;)Ljava/util/Set; -HSPLsun/nio/cs/StreamDecoder;-><init>(Ljava/io/InputStream;Ljava/lang/Object;Ljava/nio/charset/Charset;)V -HSPLsun/nio/cs/StreamDecoder;-><init>(Ljava/io/InputStream;Ljava/lang/Object;Ljava/nio/charset/CharsetDecoder;)V -HSPLsun/nio/cs/StreamDecoder;->close()V -HSPLsun/nio/cs/StreamDecoder;->ensureOpen()V -HSPLsun/nio/cs/StreamDecoder;->forInputStreamReader(Ljava/io/InputStream;Ljava/lang/Object;Ljava/lang/String;)Lsun/nio/cs/StreamDecoder; -HSPLsun/nio/cs/StreamDecoder;->forInputStreamReader(Ljava/io/InputStream;Ljava/lang/Object;Ljava/nio/charset/Charset;)Lsun/nio/cs/StreamDecoder; -HSPLsun/nio/cs/StreamDecoder;->forInputStreamReader(Ljava/io/InputStream;Ljava/lang/Object;Ljava/nio/charset/CharsetDecoder;)Lsun/nio/cs/StreamDecoder; -HSPLsun/nio/cs/StreamDecoder;->implClose()V -HSPLsun/nio/cs/StreamDecoder;->implRead([CII)I -HSPLsun/nio/cs/StreamDecoder;->implReady()Z -HSPLsun/nio/cs/StreamDecoder;->inReady()Z -HSPLsun/nio/cs/StreamDecoder;->read()I -HSPLsun/nio/cs/StreamDecoder;->read([CII)I -HSPLsun/nio/cs/StreamDecoder;->read0()I -HSPLsun/nio/cs/StreamDecoder;->readBytes()I -HSPLsun/nio/cs/StreamDecoder;->ready()Z -HSPLsun/nio/cs/StreamEncoder;-><init>(Ljava/io/OutputStream;Ljava/lang/Object;Ljava/nio/charset/Charset;)V -HSPLsun/nio/cs/StreamEncoder;-><init>(Ljava/io/OutputStream;Ljava/lang/Object;Ljava/nio/charset/CharsetEncoder;)V -HSPLsun/nio/cs/StreamEncoder;->close()V -HSPLsun/nio/cs/StreamEncoder;->ensureOpen()V -HSPLsun/nio/cs/StreamEncoder;->flush()V -HSPLsun/nio/cs/StreamEncoder;->flushLeftoverChar(Ljava/nio/CharBuffer;Z)V -HSPLsun/nio/cs/StreamEncoder;->forOutputStreamWriter(Ljava/io/OutputStream;Ljava/lang/Object;Ljava/lang/String;)Lsun/nio/cs/StreamEncoder; -HSPLsun/nio/cs/StreamEncoder;->forOutputStreamWriter(Ljava/io/OutputStream;Ljava/lang/Object;Ljava/nio/charset/Charset;)Lsun/nio/cs/StreamEncoder; -HSPLsun/nio/cs/StreamEncoder;->implClose()V -HSPLsun/nio/cs/StreamEncoder;->implFlush()V -HSPLsun/nio/cs/StreamEncoder;->implFlushBuffer()V -HSPLsun/nio/cs/StreamEncoder;->implWrite(Ljava/nio/CharBuffer;)V -HSPLsun/nio/cs/StreamEncoder;->implWrite([CII)V -HSPLsun/nio/cs/StreamEncoder;->write(I)V -HSPLsun/nio/cs/StreamEncoder;->write(Ljava/lang/String;II)V -HSPLsun/nio/cs/StreamEncoder;->write([CII)V -HSPLsun/nio/cs/StreamEncoder;->writeBytes()V -HSPLsun/nio/cs/ThreadLocalCoders$1;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/nio/cs/ThreadLocalCoders$1;->hasName(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLsun/nio/cs/ThreadLocalCoders$2;->create(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/nio/cs/ThreadLocalCoders$2;->hasName(Ljava/lang/Object;Ljava/lang/Object;)Z -HSPLsun/nio/cs/ThreadLocalCoders$Cache;->forName(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/nio/cs/ThreadLocalCoders$Cache;->moveToFront([Ljava/lang/Object;I)V -HSPLsun/nio/cs/ThreadLocalCoders;->decoderFor(Ljava/lang/Object;)Ljava/nio/charset/CharsetDecoder; -HSPLsun/nio/cs/ThreadLocalCoders;->encoderFor(Ljava/lang/Object;)Ljava/nio/charset/CharsetEncoder; -HSPLsun/nio/fs/AbstractBasicFileAttributeView;-><init>()V -HSPLsun/nio/fs/AbstractPath;-><init>()V -HSPLsun/nio/fs/AbstractPath;->resolve(Ljava/lang/String;)Ljava/nio/file/Path; -HSPLsun/nio/fs/AbstractPath;->toFile()Ljava/io/File; -HSPLsun/nio/fs/LinuxFileSystemProvider;->getFileAttributeView(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileAttributeView; -HSPLsun/nio/fs/LinuxFileSystemProvider;->readAttributes(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes; -HSPLsun/nio/fs/NativeBuffer$Deallocator;-><init>(J)V -HSPLsun/nio/fs/NativeBuffer$Deallocator;->run()V -HSPLsun/nio/fs/NativeBuffer;-><init>(I)V -HSPLsun/nio/fs/NativeBuffer;->address()J -HSPLsun/nio/fs/NativeBuffer;->owner()Ljava/lang/Object; -HSPLsun/nio/fs/NativeBuffer;->release()V -HSPLsun/nio/fs/NativeBuffer;->setOwner(Ljava/lang/Object;)V -HSPLsun/nio/fs/NativeBuffer;->size()I -HSPLsun/nio/fs/NativeBuffers;->allocNativeBuffer(I)Lsun/nio/fs/NativeBuffer; -HSPLsun/nio/fs/NativeBuffers;->copyCStringToNativeBuffer([BLsun/nio/fs/NativeBuffer;)V -HSPLsun/nio/fs/NativeBuffers;->getNativeBufferFromCache(I)Lsun/nio/fs/NativeBuffer; -HSPLsun/nio/fs/NativeBuffers;->releaseNativeBuffer(Lsun/nio/fs/NativeBuffer;)V -HSPLsun/nio/fs/UnixChannelFactory$1;-><clinit>()V -HSPLsun/nio/fs/UnixChannelFactory$Flags;-><init>()V -HSPLsun/nio/fs/UnixChannelFactory$Flags;->toFlags(Ljava/util/Set;)Lsun/nio/fs/UnixChannelFactory$Flags; -HSPLsun/nio/fs/UnixChannelFactory;->newFileChannel(ILsun/nio/fs/UnixPath;Ljava/lang/String;Ljava/util/Set;I)Ljava/nio/channels/FileChannel; -HSPLsun/nio/fs/UnixChannelFactory;->newFileChannel(Lsun/nio/fs/UnixPath;Ljava/util/Set;I)Ljava/nio/channels/FileChannel; -HSPLsun/nio/fs/UnixChannelFactory;->open(ILsun/nio/fs/UnixPath;Ljava/lang/String;Lsun/nio/fs/UnixChannelFactory$Flags;I)Ljava/io/FileDescriptor; -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;-><clinit>()V -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;-><init>(Lsun/nio/fs/UnixDirectoryStream;Ljava/nio/file/DirectoryStream;)V -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;->hasNext()Z -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;->isSelfOrParent([B)Z -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;->next()Ljava/lang/Object; -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;->next()Ljava/nio/file/Path; -HSPLsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator;->readNextEntry()Ljava/nio/file/Path; -HSPLsun/nio/fs/UnixDirectoryStream;->-$$Nest$fgetdp(Lsun/nio/fs/UnixDirectoryStream;)J -HSPLsun/nio/fs/UnixDirectoryStream;-><init>(Lsun/nio/fs/UnixPath;JLjava/nio/file/DirectoryStream$Filter;)V -HSPLsun/nio/fs/UnixDirectoryStream;->close()V -HSPLsun/nio/fs/UnixDirectoryStream;->closeImpl()Z -HSPLsun/nio/fs/UnixDirectoryStream;->finalize()V -HSPLsun/nio/fs/UnixDirectoryStream;->isOpen()Z -HSPLsun/nio/fs/UnixDirectoryStream;->iterator(Ljava/nio/file/DirectoryStream;)Ljava/util/Iterator; -HSPLsun/nio/fs/UnixDirectoryStream;->readLock()Ljava/util/concurrent/locks/Lock; -HSPLsun/nio/fs/UnixDirectoryStream;->writeLock()Ljava/util/concurrent/locks/Lock; -HSPLsun/nio/fs/UnixException;-><init>(I)V -HSPLsun/nio/fs/UnixException;->errno()I -HSPLsun/nio/fs/UnixException;->fillInStackTrace()Ljava/lang/Throwable; -HSPLsun/nio/fs/UnixException;->rethrowAsIOException(Lsun/nio/fs/UnixPath;)V -HSPLsun/nio/fs/UnixException;->rethrowAsIOException(Lsun/nio/fs/UnixPath;Lsun/nio/fs/UnixPath;)V -HSPLsun/nio/fs/UnixException;->translateToIOException(Ljava/lang/String;Ljava/lang/String;)Ljava/io/IOException; -HSPLsun/nio/fs/UnixFileAttributeViews$Basic;-><init>(Lsun/nio/fs/UnixPath;Z)V -HSPLsun/nio/fs/UnixFileAttributeViews$Basic;->readAttributes()Ljava/nio/file/attribute/BasicFileAttributes; -HSPLsun/nio/fs/UnixFileAttributeViews;->createBasicView(Lsun/nio/fs/UnixPath;Z)Lsun/nio/fs/UnixFileAttributeViews$Basic; -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;-><init>(Lsun/nio/fs/UnixFileAttributes;)V -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->creationTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->fileKey()Ljava/lang/Object; -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->isDirectory()Z -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->isRegularFile()Z -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->isSymbolicLink()Z -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->lastAccessTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->lastModifiedTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->size()J -HSPLsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes;->wrap(Lsun/nio/fs/UnixFileAttributes;)Lsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes; -HSPLsun/nio/fs/UnixFileAttributes;-><init>()V -HSPLsun/nio/fs/UnixFileAttributes;->asBasicFileAttributes()Ljava/nio/file/attribute/BasicFileAttributes; -HSPLsun/nio/fs/UnixFileAttributes;->creationTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes;->fileKey()Lsun/nio/fs/UnixFileKey; -HSPLsun/nio/fs/UnixFileAttributes;->get(Lsun/nio/fs/UnixPath;Z)Lsun/nio/fs/UnixFileAttributes; -HSPLsun/nio/fs/UnixFileAttributes;->isDirectory()Z -HSPLsun/nio/fs/UnixFileAttributes;->isRegularFile()Z -HSPLsun/nio/fs/UnixFileAttributes;->isSymbolicLink()Z -HSPLsun/nio/fs/UnixFileAttributes;->lastAccessTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes;->lastModifiedTime()Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileAttributes;->size()J -HSPLsun/nio/fs/UnixFileAttributes;->toFileTime(JJ)Ljava/nio/file/attribute/FileTime; -HSPLsun/nio/fs/UnixFileKey;-><init>(JJ)V -HSPLsun/nio/fs/UnixFileKey;->equals(Ljava/lang/Object;)Z -HSPLsun/nio/fs/UnixFileModeAttribute;->toUnixMode(I[Ljava/nio/file/attribute/FileAttribute;)I -HSPLsun/nio/fs/UnixFileSystem;->getPath(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path; -HSPLsun/nio/fs/UnixFileSystem;->needToResolveAgainstDefaultDirectory()Z -HSPLsun/nio/fs/UnixFileSystem;->normalizeJavaPath(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/nio/fs/UnixFileSystem;->normalizeNativePath([C)[C -HSPLsun/nio/fs/UnixFileSystem;->provider()Ljava/nio/file/spi/FileSystemProvider; -HSPLsun/nio/fs/UnixFileSystemProvider$3;-><clinit>()V -HSPLsun/nio/fs/UnixFileSystemProvider;->checkAccess(Ljava/nio/file/Path;[Ljava/nio/file/AccessMode;)V -HSPLsun/nio/fs/UnixFileSystemProvider;->checkPath(Ljava/nio/file/Path;)Lsun/nio/fs/UnixPath; -HSPLsun/nio/fs/UnixFileSystemProvider;->getFileAttributeView(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileAttributeView; -HSPLsun/nio/fs/UnixFileSystemProvider;->newByteChannel(Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/SeekableByteChannel; -HSPLsun/nio/fs/UnixFileSystemProvider;->newDirectoryStream(Ljava/nio/file/Path;Ljava/nio/file/DirectoryStream$Filter;)Ljava/nio/file/DirectoryStream; -HSPLsun/nio/fs/UnixFileSystemProvider;->newFileChannel(Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/FileChannel; -HSPLsun/nio/fs/UnixFileSystemProvider;->readAttributes(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes; -HSPLsun/nio/fs/UnixNativeDispatcher;->access(Lsun/nio/fs/UnixPath;I)V -HSPLsun/nio/fs/UnixNativeDispatcher;->copyToNativeBuffer(Lsun/nio/fs/UnixPath;)Lsun/nio/fs/NativeBuffer; -HSPLsun/nio/fs/UnixNativeDispatcher;->lstat(Lsun/nio/fs/UnixPath;Lsun/nio/fs/UnixFileAttributes;)V -HSPLsun/nio/fs/UnixNativeDispatcher;->open(Lsun/nio/fs/UnixPath;II)I -HSPLsun/nio/fs/UnixNativeDispatcher;->openatSupported()Z -HSPLsun/nio/fs/UnixNativeDispatcher;->stat(Lsun/nio/fs/UnixPath;Lsun/nio/fs/UnixFileAttributes;)V -HSPLsun/nio/fs/UnixPath;-><init>(Lsun/nio/fs/UnixFileSystem;Ljava/lang/String;)V -HSPLsun/nio/fs/UnixPath;-><init>(Lsun/nio/fs/UnixFileSystem;[B)V -HSPLsun/nio/fs/UnixPath;->asByteArray()[B -HSPLsun/nio/fs/UnixPath;->checkNotNul(Ljava/lang/String;C)V -HSPLsun/nio/fs/UnixPath;->checkRead()V -HSPLsun/nio/fs/UnixPath;->checkWrite()V -HSPLsun/nio/fs/UnixPath;->encode(Lsun/nio/fs/UnixFileSystem;Ljava/lang/String;)[B -HSPLsun/nio/fs/UnixPath;->getByteArrayForSysCalls()[B -HSPLsun/nio/fs/UnixPath;->getFileSystem()Ljava/nio/file/FileSystem; -HSPLsun/nio/fs/UnixPath;->getFileSystem()Lsun/nio/fs/UnixFileSystem; -HSPLsun/nio/fs/UnixPath;->getParent()Ljava/nio/file/Path; -HSPLsun/nio/fs/UnixPath;->getParent()Lsun/nio/fs/UnixPath; -HSPLsun/nio/fs/UnixPath;->getPathForExceptionMessage()Ljava/lang/String; -HSPLsun/nio/fs/UnixPath;->initOffsets()V -HSPLsun/nio/fs/UnixPath;->isEmpty()Z -HSPLsun/nio/fs/UnixPath;->normalize(Ljava/lang/String;II)Ljava/lang/String; -HSPLsun/nio/fs/UnixPath;->normalizeAndCheck(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/nio/fs/UnixPath;->resolve(Ljava/nio/file/Path;)Ljava/nio/file/Path; -HSPLsun/nio/fs/UnixPath;->resolve(Ljava/nio/file/Path;)Lsun/nio/fs/UnixPath; -HSPLsun/nio/fs/UnixPath;->resolve([B)Lsun/nio/fs/UnixPath; -HSPLsun/nio/fs/UnixPath;->resolve([B[B)[B -HSPLsun/nio/fs/UnixPath;->toString()Ljava/lang/String; -HSPLsun/nio/fs/UnixPath;->toUnixPath(Ljava/nio/file/Path;)Lsun/nio/fs/UnixPath; -HSPLsun/nio/fs/UnixSecureDirectoryStream;-><init>(Lsun/nio/fs/UnixPath;JILjava/nio/file/DirectoryStream$Filter;)V -HSPLsun/nio/fs/UnixSecureDirectoryStream;->close()V -HSPLsun/nio/fs/UnixSecureDirectoryStream;->finalize()V -HSPLsun/nio/fs/UnixSecureDirectoryStream;->iterator()Ljava/util/Iterator; -HSPLsun/nio/fs/Util;->followLinks([Ljava/nio/file/LinkOption;)Z -HSPLsun/nio/fs/Util;->jnuEncoding()Ljava/nio/charset/Charset; -HSPLsun/nio/fs/Util;->toString([B)Ljava/lang/String; -HSPLsun/reflect/Reflection;->ensureMemberAccess(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Object;I)V -HSPLsun/reflect/Reflection;->getCallerClass()Ljava/lang/Class; -HSPLsun/reflect/Reflection;->isSameClassPackage(Ljava/lang/Class;Ljava/lang/Class;)Z -HSPLsun/reflect/Reflection;->isSameClassPackage(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;)Z -HSPLsun/reflect/Reflection;->verifyMemberAccess(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Object;I)Z -HSPLsun/reflect/misc/ReflectUtil;->ensureMemberAccess(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Object;I)V -HSPLsun/security/action/GetPropertyAction;-><init>(Ljava/lang/String;)V -HSPLsun/security/action/GetPropertyAction;->run()Ljava/lang/Object; -HSPLsun/security/action/GetPropertyAction;->run()Ljava/lang/String; -HSPLsun/security/jca/GetInstance$Instance;-><init>(Ljava/security/Provider;Ljava/lang/Object;)V -HSPLsun/security/jca/GetInstance$Instance;-><init>(Ljava/security/Provider;Ljava/lang/Object;Lsun/security/jca/GetInstance$Instance-IA;)V -HSPLsun/security/jca/GetInstance$Instance;->toArray()[Ljava/lang/Object; -HSPLsun/security/jca/GetInstance;->checkSuperClass(Ljava/security/Provider$Service;Ljava/lang/Class;Ljava/lang/Class;)V -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/security/Provider$Service;Ljava/lang/Class;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getInstance(Ljava/security/Provider$Service;Ljava/lang/Class;Ljava/lang/Object;)Lsun/security/jca/GetInstance$Instance; -HSPLsun/security/jca/GetInstance;->getService(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service; -HSPLsun/security/jca/GetInstance;->getService(Ljava/lang/String;Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Provider$Service; -HSPLsun/security/jca/GetInstance;->getServices(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLsun/security/jca/JCAUtil;->getSecureRandom()Ljava/security/SecureRandom; -HSPLsun/security/jca/ProviderConfig;-><init>(Ljava/lang/String;)V -HSPLsun/security/jca/ProviderConfig;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/security/jca/ProviderConfig;-><init>(Ljava/security/Provider;)V -HSPLsun/security/jca/ProviderConfig;->equals(Ljava/lang/Object;)Z -HSPLsun/security/jca/ProviderConfig;->expand(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/security/jca/ProviderConfig;->getProvider()Ljava/security/Provider; -HSPLsun/security/jca/ProviderList$3;-><init>(Lsun/security/jca/ProviderList;)V -HSPLsun/security/jca/ProviderList$3;->get(I)Ljava/lang/Object; -HSPLsun/security/jca/ProviderList$3;->get(I)Ljava/security/Provider; -HSPLsun/security/jca/ProviderList$3;->size()I -HSPLsun/security/jca/ProviderList$ServiceList$1;-><init>(Lsun/security/jca/ProviderList$ServiceList;)V -HSPLsun/security/jca/ProviderList$ServiceList$1;->hasNext()Z -HSPLsun/security/jca/ProviderList$ServiceList$1;->next()Ljava/lang/Object; -HSPLsun/security/jca/ProviderList$ServiceList$1;->next()Ljava/security/Provider$Service; -HSPLsun/security/jca/ProviderList$ServiceList;->-$$Nest$mtryGet(Lsun/security/jca/ProviderList$ServiceList;I)Ljava/security/Provider$Service; -HSPLsun/security/jca/ProviderList$ServiceList;-><init>(Lsun/security/jca/ProviderList;Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/security/jca/ProviderList$ServiceList;->addService(Ljava/security/Provider$Service;)V -HSPLsun/security/jca/ProviderList$ServiceList;->iterator()Ljava/util/Iterator; -HSPLsun/security/jca/ProviderList$ServiceList;->tryGet(I)Ljava/security/Provider$Service; -HSPLsun/security/jca/ProviderList;->-$$Nest$fgetconfigs(Lsun/security/jca/ProviderList;)[Lsun/security/jca/ProviderConfig; -HSPLsun/security/jca/ProviderList;-><init>([Lsun/security/jca/ProviderConfig;Z)V -HSPLsun/security/jca/ProviderList;->getIndex(Ljava/lang/String;)I -HSPLsun/security/jca/ProviderList;->getJarList([Ljava/lang/String;)Lsun/security/jca/ProviderList; -HSPLsun/security/jca/ProviderList;->getProvider(I)Ljava/security/Provider; -HSPLsun/security/jca/ProviderList;->getProvider(Ljava/lang/String;)Ljava/security/Provider; -HSPLsun/security/jca/ProviderList;->getProviderConfig(Ljava/lang/String;)Lsun/security/jca/ProviderConfig; -HSPLsun/security/jca/ProviderList;->getService(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service; -HSPLsun/security/jca/ProviderList;->getServices(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; -HSPLsun/security/jca/ProviderList;->insertAt(Lsun/security/jca/ProviderList;Ljava/security/Provider;I)Lsun/security/jca/ProviderList; -HSPLsun/security/jca/ProviderList;->loadAll()I -HSPLsun/security/jca/ProviderList;->providers()Ljava/util/List; -HSPLsun/security/jca/ProviderList;->removeInvalid()Lsun/security/jca/ProviderList; -HSPLsun/security/jca/ProviderList;->toArray()[Ljava/security/Provider; -HSPLsun/security/jca/Providers;->beginThreadProviderList(Lsun/security/jca/ProviderList;)Lsun/security/jca/ProviderList; -HSPLsun/security/jca/Providers;->checkBouncyCastleDeprecation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/security/jca/Providers;->checkBouncyCastleDeprecation(Ljava/security/Provider;Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/security/jca/Providers;->endThreadProviderList(Lsun/security/jca/ProviderList;)V -HSPLsun/security/jca/Providers;->getFullProviderList()Lsun/security/jca/ProviderList; -HSPLsun/security/jca/Providers;->getProviderList()Lsun/security/jca/ProviderList; -HSPLsun/security/jca/Providers;->getSystemProviderList()Lsun/security/jca/ProviderList; -HSPLsun/security/jca/Providers;->getThreadProviderList()Lsun/security/jca/ProviderList; -HSPLsun/security/jca/Providers;->setProviderList(Lsun/security/jca/ProviderList;)V -HSPLsun/security/jca/Providers;->setSystemProviderList(Lsun/security/jca/ProviderList;)V -HSPLsun/security/jca/Providers;->startJarVerification()Ljava/lang/Object; -HSPLsun/security/jca/Providers;->stopJarVerification(Ljava/lang/Object;)V -HSPLsun/security/pkcs/ContentInfo;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/pkcs/ContentInfo;-><init>(Lsun/security/util/DerInputStream;Z)V -HSPLsun/security/pkcs/ContentInfo;->getContent()Lsun/security/util/DerValue; -HSPLsun/security/pkcs/ContentInfo;->getData()[B -HSPLsun/security/pkcs/PKCS7$VerbatimX509Certificate;-><init>(Ljava/security/cert/X509Certificate;[B)V -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;-><init>(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getIssuerDN()Ljava/security/Principal; -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getKeyUsage()[Z -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getPublicKey()Ljava/security/PublicKey; -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getSerialNumber()Ljava/math/BigInteger; -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getSubjectDN()Ljava/security/Principal; -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->getTBSCertificate()[B -HSPLsun/security/pkcs/PKCS7$WrappedX509Certificate;->hasUnsupportedCriticalExtension()Z -HSPLsun/security/pkcs/PKCS7;-><init>([B)V -HSPLsun/security/pkcs/PKCS7;->getCertificate(Ljava/math/BigInteger;Lsun/security/x509/X500Name;)Ljava/security/cert/X509Certificate; -HSPLsun/security/pkcs/PKCS7;->getCertificates()[Ljava/security/cert/X509Certificate; -HSPLsun/security/pkcs/PKCS7;->getContentInfo()Lsun/security/pkcs/ContentInfo; -HSPLsun/security/pkcs/PKCS7;->parse(Lsun/security/util/DerInputStream;)V -HSPLsun/security/pkcs/PKCS7;->parse(Lsun/security/util/DerInputStream;Z)V -HSPLsun/security/pkcs/PKCS7;->parseSignedData(Lsun/security/util/DerValue;)V -HSPLsun/security/pkcs/PKCS7;->populateCertIssuerNames()V -HSPLsun/security/pkcs/PKCS7;->verify(Lsun/security/pkcs/SignerInfo;[B)Lsun/security/pkcs/SignerInfo; -HSPLsun/security/pkcs/PKCS7;->verify([B)[Lsun/security/pkcs/SignerInfo; -HSPLsun/security/pkcs/SignerInfo;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/pkcs/SignerInfo;-><init>(Lsun/security/util/DerInputStream;Z)V -HSPLsun/security/pkcs/SignerInfo;->getCertificate(Lsun/security/pkcs/PKCS7;)Ljava/security/cert/X509Certificate; -HSPLsun/security/pkcs/SignerInfo;->getCertificateChain(Lsun/security/pkcs/PKCS7;)Ljava/util/ArrayList; -HSPLsun/security/pkcs/SignerInfo;->getDigestAlgorithmId()Lsun/security/x509/AlgorithmId; -HSPLsun/security/pkcs/SignerInfo;->getDigestEncryptionAlgorithmId()Lsun/security/x509/AlgorithmId; -HSPLsun/security/pkcs/SignerInfo;->getTimestamp()Ljava/security/Timestamp; -HSPLsun/security/pkcs/SignerInfo;->getTsToken()Lsun/security/pkcs/PKCS7; -HSPLsun/security/pkcs/SignerInfo;->verify(Lsun/security/pkcs/PKCS7;Ljava/io/InputStream;)Lsun/security/pkcs/SignerInfo; -HSPLsun/security/pkcs/SignerInfo;->verify(Lsun/security/pkcs/PKCS7;[B)Lsun/security/pkcs/SignerInfo; -HSPLsun/security/provider/X509Factory;->addToCache(Lsun/security/util/Cache;[BLjava/lang/Object;)V -HSPLsun/security/provider/X509Factory;->getFromCache(Lsun/security/util/Cache;[B)Ljava/lang/Object; -HSPLsun/security/provider/X509Factory;->intern(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl; -HSPLsun/security/provider/certpath/AdaptableX509CertSelector;-><init>()V -HSPLsun/security/provider/certpath/AdaptableX509CertSelector;->match(Ljava/security/cert/Certificate;)Z -HSPLsun/security/provider/certpath/AdaptableX509CertSelector;->matchSubjectKeyID(Ljava/security/cert/X509Certificate;)Z -HSPLsun/security/provider/certpath/AdaptableX509CertSelector;->setSkiAndSerialNumber(Lsun/security/x509/AuthorityKeyIdentifierExtension;)V -HSPLsun/security/provider/certpath/AlgorithmChecker;-><init>(Ljava/security/cert/TrustAnchor;)V -HSPLsun/security/provider/certpath/AlgorithmChecker;-><init>(Ljava/security/cert/TrustAnchor;Ljava/security/AlgorithmConstraints;)V -HSPLsun/security/provider/certpath/AlgorithmChecker;->check(Ljava/security/PublicKey;Lsun/security/x509/AlgorithmId;)V -HSPLsun/security/provider/certpath/AlgorithmChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/AlgorithmChecker;->checkFingerprint(Ljava/security/cert/X509Certificate;)Z -HSPLsun/security/provider/certpath/AlgorithmChecker;->init(Z)V -HSPLsun/security/provider/certpath/BasicChecker;-><init>(Ljava/security/cert/TrustAnchor;Ljava/util/Date;Ljava/lang/String;Z)V -HSPLsun/security/provider/certpath/BasicChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/BasicChecker;->getPublicKey()Ljava/security/PublicKey; -HSPLsun/security/provider/certpath/BasicChecker;->init(Z)V -HSPLsun/security/provider/certpath/BasicChecker;->updateState(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/BasicChecker;->verifyNameChaining(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/BasicChecker;->verifySignature(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/BasicChecker;->verifyTimestamp(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/CertId;-><init>(Ljava/security/cert/X509Certificate;Lsun/security/x509/SerialNumber;)V -HSPLsun/security/provider/certpath/CertId;-><init>(Ljavax/security/auth/x500/X500Principal;Ljava/security/PublicKey;Lsun/security/x509/SerialNumber;)V -HSPLsun/security/provider/certpath/CertId;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/provider/certpath/CertId;->equals(Ljava/lang/Object;)Z -HSPLsun/security/provider/certpath/CertId;->getHashAlgorithm()Lsun/security/x509/AlgorithmId; -HSPLsun/security/provider/certpath/CertId;->getIssuerKeyHash()[B -HSPLsun/security/provider/certpath/CertId;->getIssuerNameHash()[B -HSPLsun/security/provider/certpath/CertId;->getSerialNumber()Ljava/math/BigInteger; -HSPLsun/security/provider/certpath/CertId;->hashCode()I -HSPLsun/security/provider/certpath/ConstraintsChecker;-><init>(I)V -HSPLsun/security/provider/certpath/ConstraintsChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/ConstraintsChecker;->checkBasicConstraints(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/ConstraintsChecker;->init(Z)V -HSPLsun/security/provider/certpath/ConstraintsChecker;->mergeNameConstraints(Ljava/security/cert/X509Certificate;Lsun/security/x509/NameConstraintsExtension;)Lsun/security/x509/NameConstraintsExtension; -HSPLsun/security/provider/certpath/ConstraintsChecker;->verifyNameConstraints(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/KeyChecker;-><init>(ILjava/security/cert/CertSelector;)V -HSPLsun/security/provider/certpath/KeyChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/KeyChecker;->init(Z)V -HSPLsun/security/provider/certpath/KeyChecker;->verifyCAKeyUsage(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/OCSPResponse$SingleResponse;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/provider/certpath/OCSPResponse$SingleResponse;->getCertId()Lsun/security/provider/certpath/CertId; -HSPLsun/security/provider/certpath/OCSPResponse$SingleResponse;->getCertStatus()Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus; -HSPLsun/security/provider/certpath/OCSPResponse;-><init>([B)V -HSPLsun/security/provider/certpath/OCSPResponse;->getSingleResponse(Lsun/security/provider/certpath/CertId;)Lsun/security/provider/certpath/OCSPResponse$SingleResponse; -HSPLsun/security/provider/certpath/OCSPResponse;->verify(Ljava/util/List;Ljava/security/cert/X509Certificate;Ljava/security/cert/X509Certificate;Ljava/util/Date;[B)V -HSPLsun/security/provider/certpath/OCSPResponse;->verifySignature(Ljava/security/cert/X509Certificate;)Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;-><init>(Ljava/security/cert/CertPath;Ljava/security/cert/PKIXParameters;)V -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;-><init>(Ljava/security/cert/PKIXParameters;)V -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->anyPolicyInhibited()Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->certPath()Ljava/security/cert/CertPath; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->certPathCheckers()Ljava/util/List; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->certStores()Ljava/util/List; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->certificates()Ljava/util/List; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->date()Ljava/util/Date; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->explicitPolicyRequired()Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->initialPolicies()Ljava/util/Set; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->policyMappingInhibited()Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->policyQualifiersRejected()Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->revocationEnabled()Z -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->sigProvider()Ljava/lang/String; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->targetCertConstraints()Ljava/security/cert/CertSelector; -HSPLsun/security/provider/certpath/PKIX$ValidatorParams;->trustAnchors()Ljava/util/Set; -HSPLsun/security/provider/certpath/PKIX;->checkParams(Ljava/security/cert/CertPath;Ljava/security/cert/CertPathParameters;)Lsun/security/provider/certpath/PKIX$ValidatorParams; -HSPLsun/security/provider/certpath/PKIX;->isDSAPublicKeyWithoutParams(Ljava/security/PublicKey;)Z -HSPLsun/security/provider/certpath/PKIXCertPathValidator;-><init>()V -HSPLsun/security/provider/certpath/PKIXCertPathValidator;->engineGetRevocationChecker()Ljava/security/cert/CertPathChecker; -HSPLsun/security/provider/certpath/PKIXCertPathValidator;->engineValidate(Ljava/security/cert/CertPath;Ljava/security/cert/CertPathParameters;)Ljava/security/cert/CertPathValidatorResult; -HSPLsun/security/provider/certpath/PKIXCertPathValidator;->validate(Ljava/security/cert/TrustAnchor;Lsun/security/provider/certpath/PKIX$ValidatorParams;)Ljava/security/cert/PKIXCertPathValidatorResult; -HSPLsun/security/provider/certpath/PKIXCertPathValidator;->validate(Lsun/security/provider/certpath/PKIX$ValidatorParams;)Ljava/security/cert/PKIXCertPathValidatorResult; -HSPLsun/security/provider/certpath/PKIXMasterCertPathValidator;->validate(Ljava/security/cert/CertPath;Ljava/util/List;Ljava/util/List;)V -HSPLsun/security/provider/certpath/PolicyChecker;-><init>(Ljava/util/Set;IZZZZLsun/security/provider/certpath/PolicyNodeImpl;)V -HSPLsun/security/provider/certpath/PolicyChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/PolicyChecker;->checkPolicy(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/provider/certpath/PolicyChecker;->getPolicyTree()Ljava/security/cert/PolicyNode; -HSPLsun/security/provider/certpath/PolicyChecker;->init(Z)V -HSPLsun/security/provider/certpath/PolicyChecker;->mergeExplicitPolicy(ILsun/security/x509/X509CertImpl;Z)I -HSPLsun/security/provider/certpath/PolicyChecker;->mergeInhibitAnyPolicy(ILsun/security/x509/X509CertImpl;)I -HSPLsun/security/provider/certpath/PolicyChecker;->mergePolicyMapping(ILsun/security/x509/X509CertImpl;)I -HSPLsun/security/provider/certpath/PolicyChecker;->processParents(IZZLsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;Z)Z -HSPLsun/security/provider/certpath/PolicyChecker;->processPolicies(ILjava/util/Set;IIIZLsun/security/provider/certpath/PolicyNodeImpl;Lsun/security/x509/X509CertImpl;Z)Lsun/security/provider/certpath/PolicyNodeImpl; -HSPLsun/security/provider/certpath/PolicyChecker;->processPolicyMappings(Lsun/security/x509/X509CertImpl;IILsun/security/provider/certpath/PolicyNodeImpl;ZLjava/util/Set;)Lsun/security/provider/certpath/PolicyNodeImpl; -HSPLsun/security/provider/certpath/PolicyNodeImpl;-><init>(Lsun/security/provider/certpath/PolicyNodeImpl;Ljava/lang/String;Ljava/util/Set;ZLjava/util/Set;Z)V -HSPLsun/security/provider/certpath/PolicyNodeImpl;-><init>(Lsun/security/provider/certpath/PolicyNodeImpl;Lsun/security/provider/certpath/PolicyNodeImpl;)V -HSPLsun/security/provider/certpath/PolicyNodeImpl;->addChild(Lsun/security/provider/certpath/PolicyNodeImpl;)V -HSPLsun/security/provider/certpath/PolicyNodeImpl;->copyTree()Lsun/security/provider/certpath/PolicyNodeImpl; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->copyTree(Lsun/security/provider/certpath/PolicyNodeImpl;)Lsun/security/provider/certpath/PolicyNodeImpl; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getChildren()Ljava/util/Iterator; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getDepth()I -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getExpectedPolicies()Ljava/util/Set; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getPolicyNodes(I)Ljava/util/Set; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getPolicyNodes(ILjava/util/Set;)V -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getPolicyNodesExpected(ILjava/lang/String;Z)Ljava/util/Set; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getPolicyNodesExpectedHelper(ILjava/lang/String;Z)Ljava/util/Set; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->getValidPolicy()Ljava/lang/String; -HSPLsun/security/provider/certpath/PolicyNodeImpl;->prune(I)V -HSPLsun/security/provider/certpath/PolicyNodeImpl;->setImmutable()V -HSPLsun/security/provider/certpath/RevocationChecker$1;-><init>()V -HSPLsun/security/provider/certpath/RevocationChecker$1;->run()Ljava/lang/Object; -HSPLsun/security/provider/certpath/RevocationChecker$1;->run()Lsun/security/provider/certpath/RevocationChecker$RevocationProperties; -HSPLsun/security/provider/certpath/RevocationChecker$RevocationProperties;-><init>()V -HSPLsun/security/provider/certpath/RevocationChecker;-><init>()V -HSPLsun/security/provider/certpath/RevocationChecker;->certCanSignCrl(Ljava/security/cert/X509Certificate;)Z -HSPLsun/security/provider/certpath/RevocationChecker;->check(Ljava/security/cert/Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/RevocationChecker;->check(Ljava/security/cert/X509Certificate;Ljava/util/Collection;Ljava/security/PublicKey;Z)V -HSPLsun/security/provider/certpath/RevocationChecker;->checkOCSP(Ljava/security/cert/X509Certificate;Ljava/util/Collection;)V -HSPLsun/security/provider/certpath/RevocationChecker;->clone()Ljava/lang/Object; -HSPLsun/security/provider/certpath/RevocationChecker;->clone()Lsun/security/provider/certpath/RevocationChecker; -HSPLsun/security/provider/certpath/RevocationChecker;->getResponderCert(Lsun/security/provider/certpath/RevocationChecker$RevocationProperties;Ljava/util/Set;Ljava/util/List;)Ljava/security/cert/X509Certificate; -HSPLsun/security/provider/certpath/RevocationChecker;->getRevocationProperties()Lsun/security/provider/certpath/RevocationChecker$RevocationProperties; -HSPLsun/security/provider/certpath/RevocationChecker;->init(Ljava/security/cert/TrustAnchor;Lsun/security/provider/certpath/PKIX$ValidatorParams;)V -HSPLsun/security/provider/certpath/RevocationChecker;->init(Z)V -HSPLsun/security/provider/certpath/RevocationChecker;->toURI(Ljava/lang/String;)Ljava/net/URI; -HSPLsun/security/provider/certpath/RevocationChecker;->updateState(Ljava/security/cert/X509Certificate;)V -HSPLsun/security/util/AbstractAlgorithmConstraints;->checkAlgorithm([Ljava/lang/String;Ljava/lang/String;Lsun/security/util/AlgorithmDecomposer;)Z -HSPLsun/security/util/AlgorithmDecomposer;->decompose(Ljava/lang/String;)Ljava/util/Set; -HSPLsun/security/util/AlgorithmDecomposer;->decomposeImpl(Ljava/lang/String;)Ljava/util/Set; -HSPLsun/security/util/AlgorithmDecomposer;->decomposeOneHash(Ljava/lang/String;)Ljava/util/Set; -HSPLsun/security/util/AlgorithmDecomposer;->hasLoop(Ljava/util/Set;Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/security/util/BitArray;-><init>(I[B)V -HSPLsun/security/util/BitArray;-><init>(I[BI)V -HSPLsun/security/util/BitArray;->get(I)Z -HSPLsun/security/util/BitArray;->length()I -HSPLsun/security/util/BitArray;->position(I)I -HSPLsun/security/util/BitArray;->subscript(I)I -HSPLsun/security/util/BitArray;->toBooleanArray()[Z -HSPLsun/security/util/BitArray;->toByteArray()[B -HSPLsun/security/util/Cache$EqualByteArray;-><init>([B)V -HSPLsun/security/util/Cache$EqualByteArray;->equals(Ljava/lang/Object;)Z -HSPLsun/security/util/Cache$EqualByteArray;->hashCode()I -HSPLsun/security/util/CertConstraintParameters;-><init>(Ljava/security/cert/X509Certificate;Z)V -HSPLsun/security/util/CertConstraintParameters;->getCertificate()Ljava/security/cert/X509Certificate; -HSPLsun/security/util/DerIndefLenConverter;->isIndefinite(I)Z -HSPLsun/security/util/DerIndefLenConverter;->isLongForm(I)Z -HSPLsun/security/util/DerInputBuffer;-><init>([B)V -HSPLsun/security/util/DerInputBuffer;-><init>([BII)V -HSPLsun/security/util/DerInputBuffer;->dup()Lsun/security/util/DerInputBuffer; -HSPLsun/security/util/DerInputBuffer;->getBigInteger(IZ)Ljava/math/BigInteger; -HSPLsun/security/util/DerInputBuffer;->getBitString()[B -HSPLsun/security/util/DerInputBuffer;->getBitString(I)[B -HSPLsun/security/util/DerInputBuffer;->getGeneralizedTime(I)Ljava/util/Date; -HSPLsun/security/util/DerInputBuffer;->getInteger(I)I -HSPLsun/security/util/DerInputBuffer;->getPos()I -HSPLsun/security/util/DerInputBuffer;->getSlice(II)[B -HSPLsun/security/util/DerInputBuffer;->getTime(IZ)Ljava/util/Date; -HSPLsun/security/util/DerInputBuffer;->getUTCTime(I)Ljava/util/Date; -HSPLsun/security/util/DerInputBuffer;->getUnalignedBitString()Lsun/security/util/BitArray; -HSPLsun/security/util/DerInputBuffer;->peek()I -HSPLsun/security/util/DerInputBuffer;->toByteArray()[B -HSPLsun/security/util/DerInputBuffer;->truncate(I)V -HSPLsun/security/util/DerInputStream;-><init>(Lsun/security/util/DerInputBuffer;)V -HSPLsun/security/util/DerInputStream;-><init>([B)V -HSPLsun/security/util/DerInputStream;->available()I -HSPLsun/security/util/DerInputStream;->getBigInteger()Ljava/math/BigInteger; -HSPLsun/security/util/DerInputStream;->getByte()I -HSPLsun/security/util/DerInputStream;->getBytes([B)V -HSPLsun/security/util/DerInputStream;->getDerValue()Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getEnumerated()I -HSPLsun/security/util/DerInputStream;->getGeneralizedTime()Ljava/util/Date; -HSPLsun/security/util/DerInputStream;->getLength()I -HSPLsun/security/util/DerInputStream;->getLength(ILjava/io/InputStream;)I -HSPLsun/security/util/DerInputStream;->getLength(Ljava/io/InputStream;)I -HSPLsun/security/util/DerInputStream;->getOID()Lsun/security/util/ObjectIdentifier; -HSPLsun/security/util/DerInputStream;->getOctetString()[B -HSPLsun/security/util/DerInputStream;->getSequence(I)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getSequence(IZ)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getSet(I)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getSet(IZ)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getSet(IZZ)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->getUTCTime()Ljava/util/Date; -HSPLsun/security/util/DerInputStream;->getUnalignedBitString()Lsun/security/util/BitArray; -HSPLsun/security/util/DerInputStream;->init([BIIZ)V -HSPLsun/security/util/DerInputStream;->mark(I)V -HSPLsun/security/util/DerInputStream;->peekByte()I -HSPLsun/security/util/DerInputStream;->readVector(I)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->readVector(IZ)[Lsun/security/util/DerValue; -HSPLsun/security/util/DerInputStream;->reset()V -HSPLsun/security/util/DerInputStream;->subStream(IZ)Lsun/security/util/DerInputStream; -HSPLsun/security/util/DerInputStream;->toByteArray()[B -HSPLsun/security/util/DerOutputStream;-><init>()V -HSPLsun/security/util/DerOutputStream;->putDerValue(Lsun/security/util/DerValue;)V -HSPLsun/security/util/DerOutputStream;->putLength(I)V -HSPLsun/security/util/DerOutputStream;->putNull()V -HSPLsun/security/util/DerOutputStream;->putOID(Lsun/security/util/ObjectIdentifier;)V -HSPLsun/security/util/DerOutputStream;->putOctetString([B)V -HSPLsun/security/util/DerOutputStream;->putOrderedSet(B[Lsun/security/util/DerEncoder;Ljava/util/Comparator;)V -HSPLsun/security/util/DerOutputStream;->putOrderedSetOf(B[Lsun/security/util/DerEncoder;)V -HSPLsun/security/util/DerOutputStream;->putUnalignedBitString(Lsun/security/util/BitArray;)V -HSPLsun/security/util/DerOutputStream;->write(BLsun/security/util/DerOutputStream;)V -HSPLsun/security/util/DerOutputStream;->write(B[B)V -HSPLsun/security/util/DerValue;-><init>(B[B)V -HSPLsun/security/util/DerValue;-><init>(Ljava/io/InputStream;)V -HSPLsun/security/util/DerValue;-><init>(Ljava/lang/String;)V -HSPLsun/security/util/DerValue;-><init>(Lsun/security/util/DerInputBuffer;Z)V -HSPLsun/security/util/DerValue;-><init>([B)V -HSPLsun/security/util/DerValue;->encode(Lsun/security/util/DerOutputStream;)V -HSPLsun/security/util/DerValue;->getBigInteger()Ljava/math/BigInteger; -HSPLsun/security/util/DerValue;->getBitString()[B -HSPLsun/security/util/DerValue;->getBoolean()Z -HSPLsun/security/util/DerValue;->getData()Lsun/security/util/DerInputStream; -HSPLsun/security/util/DerValue;->getDataBytes()[B -HSPLsun/security/util/DerValue;->getIA5String()Ljava/lang/String; -HSPLsun/security/util/DerValue;->getInteger()I -HSPLsun/security/util/DerValue;->getOID()Lsun/security/util/ObjectIdentifier; -HSPLsun/security/util/DerValue;->getOctetString()[B -HSPLsun/security/util/DerValue;->getOriginalEncodedForm()[B -HSPLsun/security/util/DerValue;->getTag()B -HSPLsun/security/util/DerValue;->getUnalignedBitString()Lsun/security/util/BitArray; -HSPLsun/security/util/DerValue;->init(BLjava/lang/String;)Lsun/security/util/DerInputStream; -HSPLsun/security/util/DerValue;->init(ZLjava/io/InputStream;)Lsun/security/util/DerInputStream; -HSPLsun/security/util/DerValue;->isConstructed()Z -HSPLsun/security/util/DerValue;->isContextSpecific()Z -HSPLsun/security/util/DerValue;->isContextSpecific(B)Z -HSPLsun/security/util/DerValue;->isPrintableStringChar(C)Z -HSPLsun/security/util/DerValue;->length()I -HSPLsun/security/util/DerValue;->resetTag(B)V -HSPLsun/security/util/DerValue;->toByteArray()[B -HSPLsun/security/util/DerValue;->toDerInputStream()Lsun/security/util/DerInputStream; -HSPLsun/security/util/DisabledAlgorithmConstraints$Constraints;-><init>([Ljava/lang/String;)V -HSPLsun/security/util/DisabledAlgorithmConstraints$Constraints;->getConstraints(Ljava/lang/String;)Ljava/util/Set; -HSPLsun/security/util/DisabledAlgorithmConstraints$Constraints;->permits(Ljava/security/Key;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints$Constraints;->permits(Lsun/security/util/CertConstraintParameters;)V -HSPLsun/security/util/DisabledAlgorithmConstraints$KeySizeConstraint;->permits(Ljava/security/Key;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints$KeySizeConstraint;->permits(Lsun/security/util/CertConstraintParameters;)V -HSPLsun/security/util/DisabledAlgorithmConstraints$KeySizeConstraint;->permitsImpl(Ljava/security/Key;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints;->checkConstraints(Ljava/util/Set;Ljava/lang/String;Ljava/security/Key;Ljava/security/AlgorithmParameters;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints;->checkConstraints(Ljava/util/Set;Lsun/security/util/CertConstraintParameters;)V -HSPLsun/security/util/DisabledAlgorithmConstraints;->permits(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints;->permits(Ljava/util/Set;Ljava/lang/String;Ljava/security/Key;Ljava/security/AlgorithmParameters;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints;->permits(Ljava/util/Set;Ljava/security/Key;)Z -HSPLsun/security/util/DisabledAlgorithmConstraints;->permits(Ljava/util/Set;Lsun/security/util/CertConstraintParameters;)V -HSPLsun/security/util/KeyUtil;->getKeySize(Ljava/security/Key;)I -HSPLsun/security/util/ManifestDigester$Entry;-><init>(III[B)V -HSPLsun/security/util/ManifestDigester$Position;-><init>()V -HSPLsun/security/util/ManifestDigester;-><init>([B)V -HSPLsun/security/util/ManifestDigester;->findSection(ILsun/security/util/ManifestDigester$Position;)Z -HSPLsun/security/util/ManifestDigester;->isNameAttr([BI)Z -HSPLsun/security/util/ManifestDigester;->manifestDigest(Ljava/security/MessageDigest;)[B -HSPLsun/security/util/ManifestEntryVerifier;-><init>(Ljava/util/jar/Manifest;)V -HSPLsun/security/util/ManifestEntryVerifier;->getEntry()Ljava/util/jar/JarEntry; -HSPLsun/security/util/ManifestEntryVerifier;->setEntry(Ljava/lang/String;Ljava/util/jar/JarEntry;)V -HSPLsun/security/util/ManifestEntryVerifier;->update(B)V -HSPLsun/security/util/ManifestEntryVerifier;->update([BII)V -HSPLsun/security/util/ManifestEntryVerifier;->verify(Ljava/util/Hashtable;Ljava/util/Hashtable;)[Ljava/security/CodeSigner; -HSPLsun/security/util/MemoryCache$SoftCacheEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;JLjava/lang/ref/ReferenceQueue;)V -HSPLsun/security/util/MemoryCache$SoftCacheEntry;->getValue()Ljava/lang/Object; -HSPLsun/security/util/MemoryCache$SoftCacheEntry;->isValid(J)Z -HSPLsun/security/util/MemoryCache;->emptyQueue()V -HSPLsun/security/util/MemoryCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/security/util/MemoryCache;->newEntry(Ljava/lang/Object;Ljava/lang/Object;JLjava/lang/ref/ReferenceQueue;)Lsun/security/util/MemoryCache$CacheEntry; -HSPLsun/security/util/MemoryCache;->put(Ljava/lang/Object;Ljava/lang/Object;)V -HSPLsun/security/util/ObjectIdentifier;-><init>(Lsun/security/util/DerInputBuffer;)V -HSPLsun/security/util/ObjectIdentifier;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/util/ObjectIdentifier;->check([B)V -HSPLsun/security/util/ObjectIdentifier;->encode(Lsun/security/util/DerOutputStream;)V -HSPLsun/security/util/ObjectIdentifier;->equals(Ljava/lang/Object;)Z -HSPLsun/security/util/ObjectIdentifier;->hashCode()I -HSPLsun/security/util/ObjectIdentifier;->toString()Ljava/lang/String; -HSPLsun/security/util/SignatureFileVerifier;-><init>(Ljava/util/ArrayList;Lsun/security/util/ManifestDigester;Ljava/lang/String;[B)V -HSPLsun/security/util/SignatureFileVerifier;->getDigest(Ljava/lang/String;)Ljava/security/MessageDigest; -HSPLsun/security/util/SignatureFileVerifier;->getSigners([Lsun/security/pkcs/SignerInfo;Lsun/security/pkcs/PKCS7;)[Ljava/security/CodeSigner; -HSPLsun/security/util/SignatureFileVerifier;->isBlockOrSF(Ljava/lang/String;)Z -HSPLsun/security/util/SignatureFileVerifier;->matches([Ljava/security/CodeSigner;[Ljava/security/CodeSigner;[Ljava/security/CodeSigner;)Z -HSPLsun/security/util/SignatureFileVerifier;->needSignatureFileBytes()Z -HSPLsun/security/util/SignatureFileVerifier;->process(Ljava/util/Hashtable;Ljava/util/List;)V -HSPLsun/security/util/SignatureFileVerifier;->processImpl(Ljava/util/Hashtable;Ljava/util/List;)V -HSPLsun/security/util/SignatureFileVerifier;->setSignatureFile([B)V -HSPLsun/security/util/SignatureFileVerifier;->updateSigners([Ljava/security/CodeSigner;Ljava/util/Hashtable;Ljava/lang/String;)V -HSPLsun/security/util/SignatureFileVerifier;->verifyManifestHash(Ljava/util/jar/Manifest;Lsun/security/util/ManifestDigester;Ljava/util/List;)Z -HSPLsun/security/x509/AVA;-><init>(Ljava/io/Reader;ILjava/util/Map;)V -HSPLsun/security/x509/AVA;-><init>(Ljava/io/Reader;Ljava/util/Map;)V -HSPLsun/security/x509/AVA;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/AVA;->derEncode(Ljava/io/OutputStream;)V -HSPLsun/security/x509/AVA;->isDerString(Lsun/security/util/DerValue;Z)Z -HSPLsun/security/x509/AVA;->isTerminator(II)Z -HSPLsun/security/x509/AVA;->parseString(Ljava/io/Reader;IILjava/lang/StringBuilder;)Lsun/security/util/DerValue; -HSPLsun/security/x509/AVA;->readChar(Ljava/io/Reader;Ljava/lang/String;)I -HSPLsun/security/x509/AVA;->toKeyword(ILjava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/AVA;->toRFC2253CanonicalString()Ljava/lang/String; -HSPLsun/security/x509/AVA;->toRFC2253String(Ljava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/AVAKeyword;->getKeyword(Lsun/security/util/ObjectIdentifier;ILjava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/AVAKeyword;->getOID(Ljava/lang/String;ILjava/util/Map;)Lsun/security/util/ObjectIdentifier; -HSPLsun/security/x509/AVAKeyword;->isCompliant(I)Z -HSPLsun/security/x509/AccessDescription;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/AlgorithmId;-><init>(Lsun/security/util/ObjectIdentifier;Lsun/security/util/DerValue;)V -HSPLsun/security/x509/AlgorithmId;->decodeParams()V -HSPLsun/security/x509/AlgorithmId;->derEncode(Ljava/io/OutputStream;)V -HSPLsun/security/x509/AlgorithmId;->encode(Lsun/security/util/DerOutputStream;)V -HSPLsun/security/x509/AlgorithmId;->equals(Lsun/security/x509/AlgorithmId;)Z -HSPLsun/security/x509/AlgorithmId;->getEncAlgFromSigAlg(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/security/x509/AlgorithmId;->getName()Ljava/lang/String; -HSPLsun/security/x509/AlgorithmId;->getParameters()Ljava/security/AlgorithmParameters; -HSPLsun/security/x509/AlgorithmId;->hashCode()I -HSPLsun/security/x509/AlgorithmId;->makeSigAlg(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLsun/security/x509/AlgorithmId;->paramsToString()Ljava/lang/String; -HSPLsun/security/x509/AlgorithmId;->parse(Lsun/security/util/DerValue;)Lsun/security/x509/AlgorithmId; -HSPLsun/security/x509/AuthorityInfoAccessExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/AuthorityInfoAccessExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/AuthorityKeyIdentifierExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/AuthorityKeyIdentifierExtension;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLsun/security/x509/AuthorityKeyIdentifierExtension;->getEncodedKeyIdentifier()[B -HSPLsun/security/x509/AuthorityKeyIdentifierExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/BasicConstraintsExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/BasicConstraintsExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/CRLDistributionPointsExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/CRLDistributionPointsExtension;-><init>(Lsun/security/util/ObjectIdentifier;Ljava/lang/Boolean;Ljava/lang/Object;Ljava/lang/String;)V -HSPLsun/security/x509/CRLDistributionPointsExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/CertificateAlgorithmId;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/CertificateAlgorithmId;->get(Ljava/lang/String;)Lsun/security/x509/AlgorithmId; -HSPLsun/security/x509/CertificateExtensions;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/CertificateExtensions;->get(Ljava/lang/String;)Lsun/security/x509/Extension; -HSPLsun/security/x509/CertificateExtensions;->getAllExtensions()Ljava/util/Collection; -HSPLsun/security/x509/CertificateExtensions;->getExtension(Ljava/lang/String;)Lsun/security/x509/Extension; -HSPLsun/security/x509/CertificateExtensions;->init(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/CertificateExtensions;->parseExtension(Lsun/security/x509/Extension;)V -HSPLsun/security/x509/CertificatePoliciesExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/CertificatePoliciesExtension;->get(Ljava/lang/String;)Ljava/util/List; -HSPLsun/security/x509/CertificatePoliciesExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/CertificatePolicyId;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/CertificatePolicyId;->getIdentifier()Lsun/security/util/ObjectIdentifier; -HSPLsun/security/x509/CertificateSerialNumber;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/CertificateSerialNumber;->get(Ljava/lang/String;)Lsun/security/x509/SerialNumber; -HSPLsun/security/x509/CertificateValidity;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/CertificateValidity;->construct(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/CertificateValidity;->valid(Ljava/util/Date;)V -HSPLsun/security/x509/CertificateVersion;-><init>()V -HSPLsun/security/x509/CertificateVersion;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/CertificateVersion;->compare(I)I -HSPLsun/security/x509/CertificateVersion;->construct(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/CertificateX509Key;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/CertificateX509Key;->get(Ljava/lang/String;)Ljava/security/PublicKey; -HSPLsun/security/x509/DNSName;-><init>(Ljava/lang/String;)V -HSPLsun/security/x509/DNSName;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/DistributionPoint;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/ExtendedKeyUsageExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/ExtendedKeyUsageExtension;->getExtendedKeyUsage()Ljava/util/List; -HSPLsun/security/x509/ExtendedKeyUsageExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/Extension;-><init>()V -HSPLsun/security/x509/Extension;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/Extension;->getExtensionId()Lsun/security/util/ObjectIdentifier; -HSPLsun/security/x509/Extension;->getExtensionValue()[B -HSPLsun/security/x509/Extension;->isCritical()Z -HSPLsun/security/x509/GeneralName;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/GeneralName;-><init>(Lsun/security/util/DerValue;Z)V -HSPLsun/security/x509/GeneralNames;-><init>()V -HSPLsun/security/x509/GeneralNames;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/GeneralNames;->add(Lsun/security/x509/GeneralName;)Lsun/security/x509/GeneralNames; -HSPLsun/security/x509/KeyIdentifier;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/KeyIdentifier;-><init>([B)V -HSPLsun/security/x509/KeyIdentifier;->encode(Lsun/security/util/DerOutputStream;)V -HSPLsun/security/x509/KeyIdentifier;->equals(Ljava/lang/Object;)Z -HSPLsun/security/x509/KeyUsageExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/KeyUsageExtension;->getBits()[Z -HSPLsun/security/x509/KeyUsageExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/OCSPNoCheckExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/OCSPNoCheckExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/OIDMap$OIDInfo;->getClazz()Ljava/lang/Class; -HSPLsun/security/x509/OIDMap;->getClass(Lsun/security/util/ObjectIdentifier;)Ljava/lang/Class; -HSPLsun/security/x509/OIDMap;->getName(Lsun/security/util/ObjectIdentifier;)Ljava/lang/String; -HSPLsun/security/x509/PolicyInformation;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/PolicyInformation;->getPolicyIdentifier()Lsun/security/x509/CertificatePolicyId; -HSPLsun/security/x509/PolicyInformation;->getPolicyQualifiers()Ljava/util/Set; -HSPLsun/security/x509/RDN;-><init>(Ljava/lang/String;Ljava/util/Map;)V -HSPLsun/security/x509/RDN;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/RDN;->encode(Lsun/security/util/DerOutputStream;)V -HSPLsun/security/x509/RDN;->toRFC2253String(Ljava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/RDN;->toRFC2253String(Z)Ljava/lang/String; -HSPLsun/security/x509/RDN;->toRFC2253StringInternal(ZLjava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/SerialNumber;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/SerialNumber;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/SerialNumber;->construct(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/SerialNumber;->getNumber()Ljava/math/BigInteger; -HSPLsun/security/x509/SubjectAlternativeNameExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/SubjectAlternativeNameExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/SubjectKeyIdentifierExtension;-><init>(Ljava/lang/Boolean;Ljava/lang/Object;)V -HSPLsun/security/x509/SubjectKeyIdentifierExtension;->get(Ljava/lang/String;)Lsun/security/x509/KeyIdentifier; -HSPLsun/security/x509/SubjectKeyIdentifierExtension;->getName()Ljava/lang/String; -HSPLsun/security/x509/URIName;-><init>(Ljava/lang/String;)V -HSPLsun/security/x509/URIName;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/X500Name;-><init>(Ljava/lang/String;Ljava/util/Map;)V -HSPLsun/security/x509/X500Name;-><init>(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/X500Name;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/X500Name;-><init>([B)V -HSPLsun/security/x509/X500Name;->asX500Name(Ljavax/security/auth/x500/X500Principal;)Lsun/security/x509/X500Name; -HSPLsun/security/x509/X500Name;->asX500Principal()Ljavax/security/auth/x500/X500Principal; -HSPLsun/security/x509/X500Name;->checkNoNewLinesNorTabsAtBeginningOfDN(Ljava/lang/String;)V -HSPLsun/security/x509/X500Name;->countQuotes(Ljava/lang/String;II)I -HSPLsun/security/x509/X500Name;->equals(Ljava/lang/Object;)Z -HSPLsun/security/x509/X500Name;->escaped(IILjava/lang/String;)Z -HSPLsun/security/x509/X500Name;->generateRFC2253DN(Ljava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/X500Name;->getEncoded()[B -HSPLsun/security/x509/X500Name;->getEncodedInternal()[B -HSPLsun/security/x509/X500Name;->getRFC2253CanonicalName()Ljava/lang/String; -HSPLsun/security/x509/X500Name;->getRFC2253Name()Ljava/lang/String; -HSPLsun/security/x509/X500Name;->getRFC2253Name(Ljava/util/Map;)Ljava/lang/String; -HSPLsun/security/x509/X500Name;->hashCode()I -HSPLsun/security/x509/X500Name;->intern(Lsun/security/util/ObjectIdentifier;)Lsun/security/util/ObjectIdentifier; -HSPLsun/security/x509/X500Name;->isEmpty()Z -HSPLsun/security/x509/X500Name;->parseDER(Lsun/security/util/DerInputStream;)V -HSPLsun/security/x509/X500Name;->parseDN(Ljava/lang/String;Ljava/util/Map;)V -HSPLsun/security/x509/X509AttributeName;-><init>(Ljava/lang/String;)V -HSPLsun/security/x509/X509AttributeName;->getPrefix()Ljava/lang/String; -HSPLsun/security/x509/X509AttributeName;->getSuffix()Ljava/lang/String; -HSPLsun/security/x509/X509CertImpl;-><init>([B)V -HSPLsun/security/x509/X509CertImpl;->checkValidity(Ljava/util/Date;)V -HSPLsun/security/x509/X509CertImpl;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLsun/security/x509/X509CertImpl;->getAuthorityKeyIdentifierExtension()Lsun/security/x509/AuthorityKeyIdentifierExtension; -HSPLsun/security/x509/X509CertImpl;->getCertificatePoliciesExtension()Lsun/security/x509/CertificatePoliciesExtension; -HSPLsun/security/x509/X509CertImpl;->getEncodedInternal()[B -HSPLsun/security/x509/X509CertImpl;->getEncodedInternal(Ljava/security/cert/Certificate;)[B -HSPLsun/security/x509/X509CertImpl;->getExtendedKeyUsage()Ljava/util/List; -HSPLsun/security/x509/X509CertImpl;->getExtendedKeyUsageExtension()Lsun/security/x509/ExtendedKeyUsageExtension; -HSPLsun/security/x509/X509CertImpl;->getExtension(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension; -HSPLsun/security/x509/X509CertImpl;->getIssuerX500Principal()Ljavax/security/auth/x500/X500Principal; -HSPLsun/security/x509/X509CertImpl;->getKeyUsage()[Z -HSPLsun/security/x509/X509CertImpl;->getNameConstraintsExtension()Lsun/security/x509/NameConstraintsExtension; -HSPLsun/security/x509/X509CertImpl;->getPolicyConstraintsExtension()Lsun/security/x509/PolicyConstraintsExtension; -HSPLsun/security/x509/X509CertImpl;->getPolicyMappingsExtension()Lsun/security/x509/PolicyMappingsExtension; -HSPLsun/security/x509/X509CertImpl;->getPublicKey()Ljava/security/PublicKey; -HSPLsun/security/x509/X509CertImpl;->getSerialNumberObject()Lsun/security/x509/SerialNumber; -HSPLsun/security/x509/X509CertImpl;->getSigAlgName()Ljava/lang/String; -HSPLsun/security/x509/X509CertImpl;->getSubjectKeyId()Lsun/security/x509/KeyIdentifier; -HSPLsun/security/x509/X509CertImpl;->getSubjectKeyIdentifierExtension()Lsun/security/x509/SubjectKeyIdentifierExtension; -HSPLsun/security/x509/X509CertImpl;->getSubjectX500Principal()Ljavax/security/auth/x500/X500Principal; -HSPLsun/security/x509/X509CertImpl;->isSelfIssued(Ljava/security/cert/X509Certificate;)Z -HSPLsun/security/x509/X509CertImpl;->parse(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/X509CertImpl;->parse(Lsun/security/util/DerValue;[B)V -HSPLsun/security/x509/X509CertImpl;->toImpl(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl; -HSPLsun/security/x509/X509CertImpl;->verify(Ljava/security/PublicKey;)V -HSPLsun/security/x509/X509CertImpl;->verify(Ljava/security/PublicKey;Ljava/lang/String;)V -HSPLsun/security/x509/X509CertInfo;-><init>(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/X509CertInfo;-><init>([B)V -HSPLsun/security/x509/X509CertInfo;->attributeMap(Ljava/lang/String;)I -HSPLsun/security/x509/X509CertInfo;->get(Ljava/lang/String;)Ljava/lang/Object; -HSPLsun/security/x509/X509CertInfo;->getEncodedInfo()[B -HSPLsun/security/x509/X509CertInfo;->getX500Name(Ljava/lang/String;Z)Ljava/lang/Object; -HSPLsun/security/x509/X509CertInfo;->parse(Lsun/security/util/DerValue;)V -HSPLsun/security/x509/X509CertInfo;->verifyCert(Lsun/security/x509/X500Name;Lsun/security/x509/CertificateExtensions;)V -HSPLsun/security/x509/X509Key;->buildX509Key(Lsun/security/x509/AlgorithmId;Lsun/security/util/BitArray;)Ljava/security/PublicKey; -HSPLsun/security/x509/X509Key;->encode(Lsun/security/util/DerOutputStream;Lsun/security/x509/AlgorithmId;Lsun/security/util/BitArray;)V -HSPLsun/security/x509/X509Key;->parse(Lsun/security/util/DerValue;)Ljava/security/PublicKey; -HSPLsun/util/calendar/AbstractCalendar;-><init>()V -HSPLsun/util/calendar/AbstractCalendar;->getCalendarDate(JLsun/util/calendar/CalendarDate;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/AbstractCalendar;->getDayOfWeekDateOnOrBefore(JI)J -HSPLsun/util/calendar/AbstractCalendar;->getEras()[Lsun/util/calendar/Era; -HSPLsun/util/calendar/AbstractCalendar;->getTime(Lsun/util/calendar/CalendarDate;)J -HSPLsun/util/calendar/AbstractCalendar;->getTimeOfDay(Lsun/util/calendar/CalendarDate;)J -HSPLsun/util/calendar/AbstractCalendar;->getTimeOfDayValue(Lsun/util/calendar/CalendarDate;)J -HSPLsun/util/calendar/AbstractCalendar;->setEras([Lsun/util/calendar/Era;)V -HSPLsun/util/calendar/AbstractCalendar;->setTimeOfDay(Lsun/util/calendar/CalendarDate;I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/BaseCalendar$Date;-><init>(Ljava/util/TimeZone;)V -HSPLsun/util/calendar/BaseCalendar$Date;->getCachedJan1()J -HSPLsun/util/calendar/BaseCalendar$Date;->getCachedYear()I -HSPLsun/util/calendar/BaseCalendar$Date;->hit(I)Z -HSPLsun/util/calendar/BaseCalendar$Date;->hit(J)Z -HSPLsun/util/calendar/BaseCalendar$Date;->setCache(IJI)V -HSPLsun/util/calendar/BaseCalendar;-><init>()V -HSPLsun/util/calendar/BaseCalendar;->getCalendarDateFromFixedDate(Lsun/util/calendar/CalendarDate;J)V -HSPLsun/util/calendar/BaseCalendar;->getDayOfWeekFromFixedDate(J)I -HSPLsun/util/calendar/BaseCalendar;->getDayOfYear(III)J -HSPLsun/util/calendar/BaseCalendar;->getFixedDate(IIILsun/util/calendar/BaseCalendar$Date;)J -HSPLsun/util/calendar/BaseCalendar;->getFixedDate(Lsun/util/calendar/CalendarDate;)J -HSPLsun/util/calendar/BaseCalendar;->getGregorianYearFromFixedDate(J)I -HSPLsun/util/calendar/BaseCalendar;->isLeapYear(I)Z -HSPLsun/util/calendar/BaseCalendar;->isLeapYear(Lsun/util/calendar/CalendarDate;)Z -HSPLsun/util/calendar/BaseCalendar;->normalizeMonth(Lsun/util/calendar/CalendarDate;)V -HSPLsun/util/calendar/CalendarDate;-><init>(Ljava/util/TimeZone;)V -HSPLsun/util/calendar/CalendarDate;->clone()Ljava/lang/Object; -HSPLsun/util/calendar/CalendarDate;->getDayOfMonth()I -HSPLsun/util/calendar/CalendarDate;->getDayOfWeek()I -HSPLsun/util/calendar/CalendarDate;->getEra()Lsun/util/calendar/Era; -HSPLsun/util/calendar/CalendarDate;->getHours()I -HSPLsun/util/calendar/CalendarDate;->getMillis()I -HSPLsun/util/calendar/CalendarDate;->getMinutes()I -HSPLsun/util/calendar/CalendarDate;->getMonth()I -HSPLsun/util/calendar/CalendarDate;->getSeconds()I -HSPLsun/util/calendar/CalendarDate;->getTimeOfDay()J -HSPLsun/util/calendar/CalendarDate;->getYear()I -HSPLsun/util/calendar/CalendarDate;->getZone()Ljava/util/TimeZone; -HSPLsun/util/calendar/CalendarDate;->isDaylightTime()Z -HSPLsun/util/calendar/CalendarDate;->isLeapYear()Z -HSPLsun/util/calendar/CalendarDate;->isNormalized()Z -HSPLsun/util/calendar/CalendarDate;->isStandardTime()Z -HSPLsun/util/calendar/CalendarDate;->setDate(III)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setDayOfMonth(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setDayOfWeek(I)V -HSPLsun/util/calendar/CalendarDate;->setDaylightSaving(I)V -HSPLsun/util/calendar/CalendarDate;->setEra(Lsun/util/calendar/Era;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setHours(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setLeapYear(Z)V -HSPLsun/util/calendar/CalendarDate;->setMillis(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setMinutes(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setMonth(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setNormalized(Z)V -HSPLsun/util/calendar/CalendarDate;->setSeconds(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setTimeOfDay(IIII)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setTimeOfDay(J)V -HSPLsun/util/calendar/CalendarDate;->setYear(I)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setZone(Ljava/util/TimeZone;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/CalendarDate;->setZoneOffset(I)V -HSPLsun/util/calendar/CalendarSystem;-><init>()V -HSPLsun/util/calendar/CalendarSystem;->forName(Ljava/lang/String;)Lsun/util/calendar/CalendarSystem; -HSPLsun/util/calendar/CalendarSystem;->getGregorianCalendar()Lsun/util/calendar/Gregorian; -HSPLsun/util/calendar/CalendarUtils;->floorDivide(II)I -HSPLsun/util/calendar/CalendarUtils;->floorDivide(JJ)J -HSPLsun/util/calendar/CalendarUtils;->isGregorianLeapYear(I)Z -HSPLsun/util/calendar/CalendarUtils;->isJulianLeapYear(I)Z -HSPLsun/util/calendar/CalendarUtils;->mod(II)I -HSPLsun/util/calendar/CalendarUtils;->mod(JJ)J -HSPLsun/util/calendar/CalendarUtils;->sprintf0d(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder; -HSPLsun/util/calendar/Gregorian$Date;-><init>(Ljava/util/TimeZone;)V -HSPLsun/util/calendar/Gregorian$Date;->getNormalizedYear()I -HSPLsun/util/calendar/Gregorian$Date;->setNormalizedYear(I)V -HSPLsun/util/calendar/Gregorian;->getCalendarDate(JLjava/util/TimeZone;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/Gregorian;->getCalendarDate(JLjava/util/TimeZone;)Lsun/util/calendar/Gregorian$Date; -HSPLsun/util/calendar/Gregorian;->getCalendarDate(JLsun/util/calendar/CalendarDate;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/Gregorian;->getCalendarDate(JLsun/util/calendar/CalendarDate;)Lsun/util/calendar/Gregorian$Date; -HSPLsun/util/calendar/Gregorian;->newCalendarDate(Ljava/util/TimeZone;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/Gregorian;->newCalendarDate(Ljava/util/TimeZone;)Lsun/util/calendar/Gregorian$Date; -HSPLsun/util/calendar/JulianCalendar$Date;-><init>(Ljava/util/TimeZone;)V -HSPLsun/util/calendar/JulianCalendar$Date;->getNormalizedYear()I -HSPLsun/util/calendar/JulianCalendar$Date;->setKnownEra(Lsun/util/calendar/Era;)V -HSPLsun/util/calendar/JulianCalendar$Date;->setNormalizedYear(I)V -HSPLsun/util/calendar/JulianCalendar;-><init>()V -HSPLsun/util/calendar/JulianCalendar;->getCalendarDateFromFixedDate(Lsun/util/calendar/CalendarDate;J)V -HSPLsun/util/calendar/JulianCalendar;->getFixedDate(IIILsun/util/calendar/BaseCalendar$Date;)J -HSPLsun/util/calendar/JulianCalendar;->isLeapYear(I)Z -HSPLsun/util/calendar/JulianCalendar;->newCalendarDate(Ljava/util/TimeZone;)Lsun/util/calendar/CalendarDate; -HSPLsun/util/calendar/JulianCalendar;->newCalendarDate(Ljava/util/TimeZone;)Lsun/util/calendar/JulianCalendar$Date; -HSPLsun/util/locale/BaseLocale$Cache;->-$$Nest$sfgetCACHE()Lsun/util/locale/BaseLocale$Cache; -HSPLsun/util/locale/BaseLocale$Cache;->createObject(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/util/locale/BaseLocale$Cache;->createObject(Lsun/util/locale/BaseLocale$Key;)Lsun/util/locale/BaseLocale; -HSPLsun/util/locale/BaseLocale$Cache;->normalizeKey(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/util/locale/BaseLocale$Cache;->normalizeKey(Lsun/util/locale/BaseLocale$Key;)Lsun/util/locale/BaseLocale$Key; -HSPLsun/util/locale/BaseLocale$Key;->-$$Nest$mgetBaseLocale(Lsun/util/locale/BaseLocale$Key;)Lsun/util/locale/BaseLocale; -HSPLsun/util/locale/BaseLocale$Key;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V -HSPLsun/util/locale/BaseLocale$Key;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLsun/util/locale/BaseLocale$Key-IA;)V -HSPLsun/util/locale/BaseLocale$Key;->equals(Ljava/lang/Object;)Z -HSPLsun/util/locale/BaseLocale$Key;->getBaseLocale()Lsun/util/locale/BaseLocale; -HSPLsun/util/locale/BaseLocale$Key;->hashCode()I -HSPLsun/util/locale/BaseLocale$Key;->hashCode(Lsun/util/locale/BaseLocale;)I -HSPLsun/util/locale/BaseLocale$Key;->normalize(Lsun/util/locale/BaseLocale$Key;)Lsun/util/locale/BaseLocale$Key; -HSPLsun/util/locale/BaseLocale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V -HSPLsun/util/locale/BaseLocale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLsun/util/locale/BaseLocale-IA;)V -HSPLsun/util/locale/BaseLocale;->cleanCache()V -HSPLsun/util/locale/BaseLocale;->convertOldISOCodes(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/BaseLocale;->equals(Ljava/lang/Object;)Z -HSPLsun/util/locale/BaseLocale;->getInstance(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lsun/util/locale/BaseLocale; -HSPLsun/util/locale/BaseLocale;->getLanguage()Ljava/lang/String; -HSPLsun/util/locale/BaseLocale;->getRegion()Ljava/lang/String; -HSPLsun/util/locale/BaseLocale;->getScript()Ljava/lang/String; -HSPLsun/util/locale/BaseLocale;->getVariant()Ljava/lang/String; -HSPLsun/util/locale/BaseLocale;->hashCode()I -HSPLsun/util/locale/InternalLocaleBuilder;-><init>()V -HSPLsun/util/locale/InternalLocaleBuilder;->checkVariants(Ljava/lang/String;Ljava/lang/String;)I -HSPLsun/util/locale/InternalLocaleBuilder;->clear()Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->clearExtensions()Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->getBaseLocale()Lsun/util/locale/BaseLocale; -HSPLsun/util/locale/InternalLocaleBuilder;->getLocaleExtensions()Lsun/util/locale/LocaleExtensions; -HSPLsun/util/locale/InternalLocaleBuilder;->setExtensions(Ljava/util/List;Ljava/lang/String;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->setLanguage(Ljava/lang/String;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->setLanguageTag(Lsun/util/locale/LanguageTag;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->setRegion(Ljava/lang/String;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->setScript(Ljava/lang/String;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/InternalLocaleBuilder;->setVariant(Ljava/lang/String;)Lsun/util/locale/InternalLocaleBuilder; -HSPLsun/util/locale/LanguageTag;-><init>()V -HSPLsun/util/locale/LanguageTag;->canonicalizeLanguage(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->canonicalizeRegion(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->canonicalizeScript(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->getExtensions()Ljava/util/List; -HSPLsun/util/locale/LanguageTag;->getExtlangs()Ljava/util/List; -HSPLsun/util/locale/LanguageTag;->getLanguage()Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->getPrivateuse()Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->getRegion()Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->getScript()Ljava/lang/String; -HSPLsun/util/locale/LanguageTag;->getVariants()Ljava/util/List; -HSPLsun/util/locale/LanguageTag;->isExtlang(Ljava/lang/String;)Z -HSPLsun/util/locale/LanguageTag;->isLanguage(Ljava/lang/String;)Z -HSPLsun/util/locale/LanguageTag;->isRegion(Ljava/lang/String;)Z -HSPLsun/util/locale/LanguageTag;->isScript(Ljava/lang/String;)Z -HSPLsun/util/locale/LanguageTag;->isVariant(Ljava/lang/String;)Z -HSPLsun/util/locale/LanguageTag;->parse(Ljava/lang/String;Lsun/util/locale/ParseStatus;)Lsun/util/locale/LanguageTag; -HSPLsun/util/locale/LanguageTag;->parseExtensions(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseExtlangs(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseLanguage(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseLocale(Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;)Lsun/util/locale/LanguageTag; -HSPLsun/util/locale/LanguageTag;->parsePrivateuse(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseRegion(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseScript(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LanguageTag;->parseVariants(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z -HSPLsun/util/locale/LocaleObjectCache$CacheEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V -HSPLsun/util/locale/LocaleObjectCache$CacheEntry;->getKey()Ljava/lang/Object; -HSPLsun/util/locale/LocaleObjectCache;->cleanStaleEntries()V -HSPLsun/util/locale/LocaleObjectCache;->get(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/util/locale/LocaleObjectCache;->normalizeKey(Ljava/lang/Object;)Ljava/lang/Object; -HSPLsun/util/locale/LocaleUtils;->caseIgnoreMatch(Ljava/lang/String;Ljava/lang/String;)Z -HSPLsun/util/locale/LocaleUtils;->isAlpha(C)Z -HSPLsun/util/locale/LocaleUtils;->isAlphaNumeric(C)Z -HSPLsun/util/locale/LocaleUtils;->isAlphaNumericString(Ljava/lang/String;)Z -HSPLsun/util/locale/LocaleUtils;->isAlphaString(Ljava/lang/String;)Z -HSPLsun/util/locale/LocaleUtils;->isEmpty(Ljava/lang/String;)Z -HSPLsun/util/locale/LocaleUtils;->isEmpty(Ljava/util/List;)Z -HSPLsun/util/locale/LocaleUtils;->isEmpty(Ljava/util/Map;)Z -HSPLsun/util/locale/LocaleUtils;->isEmpty(Ljava/util/Set;)Z -HSPLsun/util/locale/LocaleUtils;->isLower(C)Z -HSPLsun/util/locale/LocaleUtils;->isNumeric(C)Z -HSPLsun/util/locale/LocaleUtils;->isNumericString(Ljava/lang/String;)Z -HSPLsun/util/locale/LocaleUtils;->isUpper(C)Z -HSPLsun/util/locale/LocaleUtils;->toLower(C)C -HSPLsun/util/locale/LocaleUtils;->toLowerString(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/LocaleUtils;->toTitleString(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/LocaleUtils;->toUpperString(Ljava/lang/String;)Ljava/lang/String; -HSPLsun/util/locale/ParseStatus;-><init>()V -HSPLsun/util/locale/ParseStatus;->isError()Z -HSPLsun/util/locale/ParseStatus;->reset()V -HSPLsun/util/locale/StringTokenIterator;-><init>(Ljava/lang/String;Ljava/lang/String;)V -HSPLsun/util/locale/StringTokenIterator;->current()Ljava/lang/String; -HSPLsun/util/locale/StringTokenIterator;->currentEnd()I -HSPLsun/util/locale/StringTokenIterator;->hasNext()Z -HSPLsun/util/locale/StringTokenIterator;->isDone()Z -HSPLsun/util/locale/StringTokenIterator;->next()Ljava/lang/String; -HSPLsun/util/locale/StringTokenIterator;->nextDelimiter(I)I -HSPLsun/util/locale/StringTokenIterator;->setStart(I)Lsun/util/locale/StringTokenIterator; -HSPLsun/util/locale/provider/CalendarDataUtility;->retrieveFirstDayOfWeek(Ljava/util/Locale;I)I -HSPLsun/util/logging/LoggingSupport$2;-><init>()V -HSPLsun/util/logging/LoggingSupport$2;->run()Ljava/lang/Object; -HSPLsun/util/logging/LoggingSupport$2;->run()Ljava/lang/String; -HSPLsun/util/logging/LoggingSupport;->getSimpleFormat()Ljava/lang/String; -HSPLsun/util/logging/LoggingSupport;->getSimpleFormat(Z)Ljava/lang/String; -HSPLsun/util/logging/PlatformLogger$JavaLoggerProxy;-><init>(Ljava/lang/String;)V -HSPLsun/util/logging/PlatformLogger$JavaLoggerProxy;-><init>(Ljava/lang/String;Lsun/util/logging/PlatformLogger$Level;)V -HSPLsun/util/logging/PlatformLogger$LoggerProxy;-><init>(Ljava/lang/String;)V -HSPLsun/util/logging/PlatformLogger;-><init>(Ljava/lang/String;)V -HSPLsun/util/logging/PlatformLogger;->getLogger(Ljava/lang/String;)Lsun/util/logging/PlatformLogger; -Landroid/R$attr; -Landroid/R$id; -Landroid/R$styleable; -Landroid/accessibilityservice/AccessibilityServiceInfo$1; -Landroid/accessibilityservice/AccessibilityServiceInfo$DynamicPropertyDefaults; -Landroid/accessibilityservice/AccessibilityServiceInfo; -Landroid/accessibilityservice/AccessibilityShortcutInfo; -Landroid/accessibilityservice/GestureDescription$MotionEventGenerator; -Landroid/accessibilityservice/IAccessibilityServiceClient$Stub$Proxy; -Landroid/accessibilityservice/IAccessibilityServiceClient$Stub; -Landroid/accessibilityservice/IAccessibilityServiceClient; -Landroid/accessibilityservice/IAccessibilityServiceConnection$Default; -Landroid/accessibilityservice/IAccessibilityServiceConnection; -Landroid/accounts/AbstractAccountAuthenticator$Transport; -Landroid/accounts/AbstractAccountAuthenticator; -Landroid/accounts/Account$1; -Landroid/accounts/Account; -Landroid/accounts/AccountAndUser; -Landroid/accounts/AccountAuthenticatorResponse$1; -Landroid/accounts/AccountAuthenticatorResponse; -Landroid/accounts/AccountManager$10; -Landroid/accounts/AccountManager$11; -Landroid/accounts/AccountManager$15; -Landroid/accounts/AccountManager$16; -Landroid/accounts/AccountManager$17; -Landroid/accounts/AccountManager$18; -Landroid/accounts/AccountManager$1; -Landroid/accounts/AccountManager$20; -Landroid/accounts/AccountManager$2; -Landroid/accounts/AccountManager$3; -Landroid/accounts/AccountManager$4; -Landroid/accounts/AccountManager$5; -Landroid/accounts/AccountManager$8; -Landroid/accounts/AccountManager$AccountKeyData; -Landroid/accounts/AccountManager$AmsTask$1; -Landroid/accounts/AccountManager$AmsTask$Response-IA; -Landroid/accounts/AccountManager$AmsTask$Response; -Landroid/accounts/AccountManager$AmsTask; -Landroid/accounts/AccountManager$BaseFutureTask$1; -Landroid/accounts/AccountManager$BaseFutureTask$Response; -Landroid/accounts/AccountManager$BaseFutureTask; -Landroid/accounts/AccountManager$Future2Task$1; -Landroid/accounts/AccountManager$Future2Task; -Landroid/accounts/AccountManager; -Landroid/accounts/AccountManagerCallback; -Landroid/accounts/AccountManagerFuture; -Landroid/accounts/AccountManagerInternal$OnAppPermissionChangeListener; -Landroid/accounts/AccountManagerInternal; -Landroid/accounts/AccountsException; -Landroid/accounts/AuthenticatorDescription$1; -Landroid/accounts/AuthenticatorDescription-IA; -Landroid/accounts/AuthenticatorDescription; -Landroid/accounts/AuthenticatorException; -Landroid/accounts/IAccountAuthenticator$Stub; -Landroid/accounts/IAccountAuthenticator; -Landroid/accounts/IAccountAuthenticatorResponse$Stub$Proxy; -Landroid/accounts/IAccountAuthenticatorResponse$Stub; -Landroid/accounts/IAccountAuthenticatorResponse; -Landroid/accounts/IAccountManager$Stub$Proxy; -Landroid/accounts/IAccountManager$Stub; -Landroid/accounts/IAccountManager; -Landroid/accounts/IAccountManagerResponse$Stub; -Landroid/accounts/IAccountManagerResponse; -Landroid/accounts/NetworkErrorException; -Landroid/accounts/OnAccountsUpdateListener; -Landroid/accounts/OperationCanceledException; -Landroid/animation/AnimationHandler$$ExternalSyntheticLambda0; -Landroid/animation/AnimationHandler$1; -Landroid/animation/AnimationHandler$2; -Landroid/animation/AnimationHandler$AnimationFrameCallback; -Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider; -Landroid/animation/AnimationHandler$MyFrameCallbackProvider-IA; -Landroid/animation/AnimationHandler$MyFrameCallbackProvider; -Landroid/animation/AnimationHandler; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda0; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda1; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda2; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda3; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda4; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda5; -Landroid/animation/Animator$AnimatorCaller$$ExternalSyntheticLambda6; -Landroid/animation/Animator$AnimatorCaller; -Landroid/animation/Animator$AnimatorConstantState; -Landroid/animation/Animator$AnimatorListener; -Landroid/animation/Animator$AnimatorPauseListener; -Landroid/animation/Animator; -Landroid/animation/AnimatorInflater$PathDataEvaluator-IA; -Landroid/animation/AnimatorInflater$PathDataEvaluator; -Landroid/animation/AnimatorInflater; -Landroid/animation/AnimatorListenerAdapter; -Landroid/animation/AnimatorSet$$ExternalSyntheticLambda0; -Landroid/animation/AnimatorSet$$ExternalSyntheticLambda2; -Landroid/animation/AnimatorSet$1; -Landroid/animation/AnimatorSet$2; -Landroid/animation/AnimatorSet$3; -Landroid/animation/AnimatorSet$AnimationEvent; -Landroid/animation/AnimatorSet$Builder; -Landroid/animation/AnimatorSet$Node; -Landroid/animation/AnimatorSet$SeekState-IA; -Landroid/animation/AnimatorSet$SeekState; -Landroid/animation/AnimatorSet; -Landroid/animation/ArgbEvaluator; -Landroid/animation/BidirectionalTypeConverter; -Landroid/animation/FloatEvaluator; -Landroid/animation/FloatKeyframeSet; -Landroid/animation/IntEvaluator; -Landroid/animation/IntKeyframeSet; -Landroid/animation/Keyframe$FloatKeyframe; -Landroid/animation/Keyframe$IntKeyframe; -Landroid/animation/Keyframe$ObjectKeyframe; -Landroid/animation/Keyframe; -Landroid/animation/KeyframeSet; -Landroid/animation/Keyframes$FloatKeyframes; -Landroid/animation/Keyframes$IntKeyframes; -Landroid/animation/Keyframes; -Landroid/animation/LayoutTransition$1; -Landroid/animation/LayoutTransition$2; -Landroid/animation/LayoutTransition$3; -Landroid/animation/LayoutTransition$4; -Landroid/animation/LayoutTransition$5; -Landroid/animation/LayoutTransition$CleanupCallback; -Landroid/animation/LayoutTransition$TransitionListener; -Landroid/animation/LayoutTransition; -Landroid/animation/ObjectAnimator; -Landroid/animation/PathKeyframes$1; -Landroid/animation/PathKeyframes$2; -Landroid/animation/PathKeyframes$3; -Landroid/animation/PathKeyframes$4; -Landroid/animation/PathKeyframes$FloatKeyframesBase; -Landroid/animation/PathKeyframes$IntKeyframesBase; -Landroid/animation/PathKeyframes$SimpleKeyframes-IA; -Landroid/animation/PathKeyframes$SimpleKeyframes; -Landroid/animation/PathKeyframes; -Landroid/animation/PropertyValuesHolder$1; -Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder; -Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder; -Landroid/animation/PropertyValuesHolder$PropertyValues$DataSource; -Landroid/animation/PropertyValuesHolder$PropertyValues; -Landroid/animation/PropertyValuesHolder-IA; -Landroid/animation/PropertyValuesHolder; -Landroid/animation/RectEvaluator; -Landroid/animation/RevealAnimator; -Landroid/animation/StateListAnimator$1; -Landroid/animation/StateListAnimator$StateListAnimatorConstantState; -Landroid/animation/StateListAnimator$Tuple-IA; -Landroid/animation/StateListAnimator$Tuple; -Landroid/animation/StateListAnimator; -Landroid/animation/TimeAnimator$TimeListener; -Landroid/animation/TimeAnimator; -Landroid/animation/TimeInterpolator; -Landroid/animation/TypeConverter; -Landroid/animation/TypeEvaluator; -Landroid/animation/ValueAnimator$AnimatorUpdateListener; -Landroid/animation/ValueAnimator$DurationScaleChangeListener; -Landroid/animation/ValueAnimator; -Landroid/annotation/ColorInt; -Landroid/annotation/CurrentTimeMillisLong; -Landroid/annotation/FloatRange; -Landroid/annotation/IdRes; -Landroid/annotation/IntRange; -Landroid/annotation/NonNull; -Landroid/annotation/RequiresPermission; -Landroid/annotation/Size; -Landroid/annotation/StringRes; -Landroid/annotation/SystemApi; -Landroid/apex/ApexInfo$1; -Landroid/apex/ApexInfo; -Landroid/apex/ApexSessionInfo$1; -Landroid/apex/ApexSessionInfo; -Landroid/apex/IApexService$Stub$Proxy; -Landroid/apex/IApexService$Stub; -Landroid/apex/IApexService; -Landroid/app/ActionBar$LayoutParams; -Landroid/app/ActionBar; -Landroid/app/Activity$$ExternalSyntheticLambda0; -Landroid/app/Activity$1; -Landroid/app/Activity$HostCallbacks; -Landroid/app/Activity$ManagedCursor; -Landroid/app/Activity$ManagedDialog-IA; -Landroid/app/Activity$ManagedDialog; -Landroid/app/Activity$NonConfigurationInstances; -Landroid/app/Activity$RequestFinishCallback; -Landroid/app/Activity$TranslucentConversionListener; -Landroid/app/Activity; -Landroid/app/ActivityClient$1; -Landroid/app/ActivityClient$ActivityClientControllerSingleton-IA; -Landroid/app/ActivityClient$ActivityClientControllerSingleton; -Landroid/app/ActivityClient-IA; -Landroid/app/ActivityClient; -Landroid/app/ActivityManager$2; -Landroid/app/ActivityManager$3; -Landroid/app/ActivityManager$AppTask; -Landroid/app/ActivityManager$MemoryInfo$1; -Landroid/app/ActivityManager$MemoryInfo; -Landroid/app/ActivityManager$MyUidObserver; -Landroid/app/ActivityManager$OnUidImportanceListener; -Landroid/app/ActivityManager$PendingIntentInfo$1; -Landroid/app/ActivityManager$PendingIntentInfo; -Landroid/app/ActivityManager$ProcessErrorStateInfo$1; -Landroid/app/ActivityManager$ProcessErrorStateInfo; -Landroid/app/ActivityManager$RecentTaskInfo$1; -Landroid/app/ActivityManager$RecentTaskInfo$PersistedTaskSnapshotData; -Landroid/app/ActivityManager$RecentTaskInfo-IA; -Landroid/app/ActivityManager$RecentTaskInfo; -Landroid/app/ActivityManager$RunningAppProcessInfo$1; -Landroid/app/ActivityManager$RunningAppProcessInfo-IA; -Landroid/app/ActivityManager$RunningAppProcessInfo; -Landroid/app/ActivityManager$RunningServiceInfo$1; -Landroid/app/ActivityManager$RunningServiceInfo-IA; -Landroid/app/ActivityManager$RunningServiceInfo; -Landroid/app/ActivityManager$RunningTaskInfo$1; -Landroid/app/ActivityManager$RunningTaskInfo-IA; -Landroid/app/ActivityManager$RunningTaskInfo; -Landroid/app/ActivityManager$TaskDescription$1; -Landroid/app/ActivityManager$TaskDescription-IA; -Landroid/app/ActivityManager$TaskDescription; -Landroid/app/ActivityManager; -Landroid/app/ActivityManagerInternal; -Landroid/app/ActivityOptions$1; -Landroid/app/ActivityOptions$2; -Landroid/app/ActivityOptions$OnAnimationStartedListener; -Landroid/app/ActivityOptions$SceneTransitionInfo$1; -Landroid/app/ActivityOptions$SceneTransitionInfo; -Landroid/app/ActivityOptions$SourceInfo$1; -Landroid/app/ActivityOptions$SourceInfo; -Landroid/app/ActivityOptions; -Landroid/app/ActivityTaskManager$1; -Landroid/app/ActivityTaskManager$2; -Landroid/app/ActivityTaskManager$RootTaskInfo$1; -Landroid/app/ActivityTaskManager$RootTaskInfo; -Landroid/app/ActivityTaskManager-IA; -Landroid/app/ActivityTaskManager; -Landroid/app/ActivityThread$$ExternalSyntheticLambda0; -Landroid/app/ActivityThread$$ExternalSyntheticLambda1; -Landroid/app/ActivityThread$$ExternalSyntheticLambda2; -Landroid/app/ActivityThread$$ExternalSyntheticLambda3; -Landroid/app/ActivityThread$$ExternalSyntheticLambda4; -Landroid/app/ActivityThread$$ExternalSyntheticLambda5; -Landroid/app/ActivityThread$1$$ExternalSyntheticLambda0; -Landroid/app/ActivityThread$1; -Landroid/app/ActivityThread$2; -Landroid/app/ActivityThread$3; -Landroid/app/ActivityThread$4; -Landroid/app/ActivityThread$ActivityClientRecord$1; -Landroid/app/ActivityThread$ActivityClientRecord; -Landroid/app/ActivityThread$AppBindData; -Landroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2; -Landroid/app/ActivityThread$ApplicationThread$1; -Landroid/app/ActivityThread$ApplicationThread-IA; -Landroid/app/ActivityThread$BindServiceData; -Landroid/app/ActivityThread$ContextCleanupInfo; -Landroid/app/ActivityThread$CreateBackupAgentData; -Landroid/app/ActivityThread$CreateServiceData; -Landroid/app/ActivityThread$DumpComponentInfo; -Landroid/app/ActivityThread$DumpHeapData; -Landroid/app/ActivityThread$DumpResourcesData; -Landroid/app/ActivityThread$GcIdler; -Landroid/app/ActivityThread$H; -Landroid/app/ActivityThread$Idler-IA; -Landroid/app/ActivityThread$Idler; -Landroid/app/ActivityThread$Profiler; -Landroid/app/ActivityThread$ProviderClientRecord; -Landroid/app/ActivityThread$ProviderKey; -Landroid/app/ActivityThread$ProviderRefCount; -Landroid/app/ActivityThread$PurgeIdler; -Landroid/app/ActivityThread$ReceiverData; -Landroid/app/ActivityThread$RequestAssistContextExtras; -Landroid/app/ActivityThread$SafeCancellationTransport; -Landroid/app/ActivityThread$ServiceArgsData; -Landroid/app/ActivityThread$UpdateCompatibilityData; -Landroid/app/ActivityThread; -Landroid/app/ActivityThreadInternal; -Landroid/app/ActivityTransitionCoordinator; -Landroid/app/ActivityTransitionState$$ExternalSyntheticLambda0; -Landroid/app/ActivityTransitionState$1; -Landroid/app/ActivityTransitionState; -Landroid/app/AlarmManager$AlarmClockInfo$1; -Landroid/app/AlarmManager$AlarmClockInfo; -Landroid/app/AlarmManager$OnAlarmListener; -Landroid/app/AlarmManager; -Landroid/app/AlertDialog$Builder; -Landroid/app/AlertDialog; -Landroid/app/AppCompatCallbacks; -Landroid/app/AppCompatTaskInfo$1; -Landroid/app/AppCompatTaskInfo; -Landroid/app/AppComponentFactory; -Landroid/app/AppDetailsActivity; -Landroid/app/AppGlobals; -Landroid/app/AppOpInfo$Builder; -Landroid/app/AppOpInfo; -Landroid/app/AppOpsManager$$ExternalSyntheticLambda2; -Landroid/app/AppOpsManager$$ExternalSyntheticLambda3; -Landroid/app/AppOpsManager$$ExternalSyntheticLambda4; -Landroid/app/AppOpsManager$$ExternalSyntheticLambda5; -Landroid/app/AppOpsManager$$ExternalSyntheticLambda6; -Landroid/app/AppOpsManager$1; -Landroid/app/AppOpsManager$3; -Landroid/app/AppOpsManager$4; -Landroid/app/AppOpsManager$AppOpsCollector; -Landroid/app/AppOpsManager$AttributedHistoricalOps$1; -Landroid/app/AppOpsManager$AttributedHistoricalOps; -Landroid/app/AppOpsManager$AttributedOpEntry$1; -Landroid/app/AppOpsManager$AttributedOpEntry$LongSparseArrayParceling; -Landroid/app/AppOpsManager$AttributedOpEntry; -Landroid/app/AppOpsManager$HistoricalOp$1; -Landroid/app/AppOpsManager$HistoricalOp; -Landroid/app/AppOpsManager$HistoricalOps$1; -Landroid/app/AppOpsManager$HistoricalOps; -Landroid/app/AppOpsManager$HistoricalOpsRequest$Builder; -Landroid/app/AppOpsManager$HistoricalOpsRequest; -Landroid/app/AppOpsManager$HistoricalPackageOps$1; -Landroid/app/AppOpsManager$HistoricalPackageOps; -Landroid/app/AppOpsManager$HistoricalUidOps$1; -Landroid/app/AppOpsManager$HistoricalUidOps; -Landroid/app/AppOpsManager$Mode; -Landroid/app/AppOpsManager$NoteOpEvent$1; -Landroid/app/AppOpsManager$NoteOpEvent; -Landroid/app/AppOpsManager$OnOpActiveChangedInternalListener; -Landroid/app/AppOpsManager$OnOpActiveChangedListener; -Landroid/app/AppOpsManager$OnOpChangedInternalListener; -Landroid/app/AppOpsManager$OnOpChangedListener; -Landroid/app/AppOpsManager$OnOpNotedCallback$1$$ExternalSyntheticLambda0; -Landroid/app/AppOpsManager$OnOpNotedCallback$1; -Landroid/app/AppOpsManager$OnOpNotedCallback; -Landroid/app/AppOpsManager$OnOpNotedInternalListener; -Landroid/app/AppOpsManager$OnOpNotedListener; -Landroid/app/AppOpsManager$OnOpStartedListener; -Landroid/app/AppOpsManager$OpEntry$1; -Landroid/app/AppOpsManager$OpEntry; -Landroid/app/AppOpsManager$OpEventProxyInfo$1; -Landroid/app/AppOpsManager$OpEventProxyInfo; -Landroid/app/AppOpsManager$PackageOps$1; -Landroid/app/AppOpsManager$PackageOps; -Landroid/app/AppOpsManager$PausedNotedAppOpsCollection; -Landroid/app/AppOpsManager$RestrictionBypass; -Landroid/app/AppOpsManager$SamplingStrategy; -Landroid/app/AppOpsManager; -Landroid/app/AppOpsManagerInternal; -Landroid/app/Application$ActivityLifecycleCallbacks; -Landroid/app/Application$OnProvideAssistDataListener; -Landroid/app/Application; -Landroid/app/ApplicationErrorReport$1; -Landroid/app/ApplicationErrorReport$AnrInfo; -Landroid/app/ApplicationErrorReport$BatteryInfo; -Landroid/app/ApplicationErrorReport$CrashInfo; -Landroid/app/ApplicationErrorReport$ParcelableCrashInfo$1; -Landroid/app/ApplicationErrorReport$ParcelableCrashInfo; -Landroid/app/ApplicationErrorReport$RunningServiceInfo; -Landroid/app/ApplicationErrorReport; -Landroid/app/ApplicationExitInfo$1; -Landroid/app/ApplicationExitInfo-IA; -Landroid/app/ApplicationExitInfo; -Landroid/app/ApplicationLoaders$CachedClassLoader-IA; -Landroid/app/ApplicationLoaders$CachedClassLoader; -Landroid/app/ApplicationLoaders; -Landroid/app/ApplicationPackageManager$$ExternalSyntheticLambda1; -Landroid/app/ApplicationPackageManager$$ExternalSyntheticLambda2; -Landroid/app/ApplicationPackageManager$1; -Landroid/app/ApplicationPackageManager$2; -Landroid/app/ApplicationPackageManager$3; -Landroid/app/ApplicationPackageManager$GetPackagesForUidResult; -Landroid/app/ApplicationPackageManager$HasSystemFeatureQuery; -Landroid/app/ApplicationPackageManager$MoveCallbackDelegate; -Landroid/app/ApplicationPackageManager$ResourceName; -Landroid/app/AsyncNotedAppOp$1; -Landroid/app/AsyncNotedAppOp; -Landroid/app/AutomaticZenRule$1; -Landroid/app/AutomaticZenRule; -Landroid/app/BackStackRecord$Op; -Landroid/app/BackStackRecord; -Landroid/app/BackStackState$1; -Landroid/app/BackStackState; -Landroid/app/BackgroundInstallControlManager; -Landroid/app/BackgroundServiceStartNotAllowedException$1; -Landroid/app/BackgroundServiceStartNotAllowedException; -Landroid/app/BroadcastOptions; -Landroid/app/CameraCompatTaskInfo; -Landroid/app/ClientTransactionHandler; -Landroid/app/ComponentCaller; -Landroid/app/ComponentOptions; -Landroid/app/ConfigurationChangedListenerController; -Landroid/app/ConfigurationController; -Landroid/app/ContentProviderHolder$1; -Landroid/app/ContentProviderHolder-IA; -Landroid/app/ContentProviderHolder; -Landroid/app/ContextImpl$1; -Landroid/app/ContextImpl$ApplicationContentResolver; -Landroid/app/DexLoadReporter; -Landroid/app/Dialog$$ExternalSyntheticLambda0; -Landroid/app/Dialog$$ExternalSyntheticLambda1; -Landroid/app/Dialog$$ExternalSyntheticLambda2; -Landroid/app/Dialog$ListenersHandler; -Landroid/app/Dialog; -Landroid/app/DialogFragment; -Landroid/app/DirectAction$1; -Landroid/app/DirectAction; -Landroid/app/DisabledWallpaperManager; -Landroid/app/DownloadManager$CursorTranslator; -Landroid/app/DownloadManager$Query; -Landroid/app/DownloadManager$Request; -Landroid/app/DownloadManager; -Landroid/app/DreamManager; -Landroid/app/EnterTransitionCoordinator; -Landroid/app/EventLogTags; -Landroid/app/ExitTransitionCoordinator$ActivityExitTransitionCallbacks; -Landroid/app/ExitTransitionCoordinator$ExitTransitionCallbacks; -Landroid/app/ExitTransitionCoordinator; -Landroid/app/FeatureFlags; -Landroid/app/FeatureFlagsImpl; -Landroid/app/Flags; -Landroid/app/ForegroundServiceStartNotAllowedException$1; -Landroid/app/ForegroundServiceStartNotAllowedException; -Landroid/app/ForegroundServiceTypePolicy$ForegroundServiceTypePolicyInfo; -Landroid/app/Fragment$1; -Landroid/app/Fragment$AnimationInfo; -Landroid/app/Fragment$InstantiationException; -Landroid/app/Fragment$OnStartEnterTransitionListener; -Landroid/app/Fragment; -Landroid/app/FragmentContainer; -Landroid/app/FragmentController; -Landroid/app/FragmentHostCallback; -Landroid/app/FragmentManager$BackStackEntry; -Landroid/app/FragmentManager$FragmentLifecycleCallbacks; -Landroid/app/FragmentManager$OnBackStackChangedListener; -Landroid/app/FragmentManager; -Landroid/app/FragmentManagerImpl$1; -Landroid/app/FragmentManagerImpl$2; -Landroid/app/FragmentManagerImpl$AnimateOnHWLayerIfNeededListener; -Landroid/app/FragmentManagerImpl$OpGenerator; -Landroid/app/FragmentManagerImpl$StartEnterTransitionListener; -Landroid/app/FragmentManagerImpl; -Landroid/app/FragmentManagerNonConfig; -Landroid/app/FragmentManagerState$1; -Landroid/app/FragmentManagerState; -Landroid/app/FragmentState$1; -Landroid/app/FragmentState; -Landroid/app/FragmentTransaction; -Landroid/app/FragmentTransition$2; -Landroid/app/FragmentTransition$5; -Landroid/app/FragmentTransition$FragmentContainerTransition; -Landroid/app/FragmentTransition; -Landroid/app/GameManager; -Landroid/app/GrammaticalInflectionManager; -Landroid/app/IActivityClientController$Stub$Proxy; -Landroid/app/IActivityClientController$Stub; -Landroid/app/IActivityClientController; -Landroid/app/IActivityController$Stub$Proxy; -Landroid/app/IActivityController$Stub; -Landroid/app/IActivityController; -Landroid/app/IActivityManager$Stub$Proxy; -Landroid/app/IActivityManager$Stub; -Landroid/app/IActivityManager; -Landroid/app/IActivityTaskManager$Stub$Proxy; -Landroid/app/IActivityTaskManager$Stub; -Landroid/app/IActivityTaskManager; -Landroid/app/IAlarmCompleteListener$Stub$Proxy; -Landroid/app/IAlarmCompleteListener$Stub; -Landroid/app/IAlarmCompleteListener; -Landroid/app/IAlarmListener$Stub; -Landroid/app/IAlarmListener; -Landroid/app/IAlarmManager$Stub$Proxy; -Landroid/app/IAlarmManager$Stub; -Landroid/app/IAlarmManager; -Landroid/app/IAppTask$Stub$Proxy; -Landroid/app/IAppTask$Stub; -Landroid/app/IAppTask; -Landroid/app/IAppTraceRetriever$Stub$Proxy; -Landroid/app/IAppTraceRetriever$Stub; -Landroid/app/IAppTraceRetriever; -Landroid/app/IApplicationStartInfoCompleteListener$Stub$Proxy; -Landroid/app/IApplicationStartInfoCompleteListener$Stub; -Landroid/app/IApplicationStartInfoCompleteListener; -Landroid/app/IApplicationThread$Stub; -Landroid/app/IApplicationThread; -Landroid/app/IAssistDataReceiver$Stub$Proxy; -Landroid/app/IAssistDataReceiver$Stub; -Landroid/app/IAssistDataReceiver; -Landroid/app/IBackupAgent$Stub$Proxy; -Landroid/app/IBackupAgent$Stub; -Landroid/app/IBackupAgent; -Landroid/app/ICompatCameraControlCallback; -Landroid/app/IForegroundServiceObserver$Stub$Proxy; -Landroid/app/IForegroundServiceObserver$Stub; -Landroid/app/IForegroundServiceObserver; -Landroid/app/IGameManagerService$Stub$Proxy; -Landroid/app/IGameManagerService$Stub; -Landroid/app/IGameManagerService; -Landroid/app/IInstantAppResolver$Stub$Proxy; -Landroid/app/IInstantAppResolver$Stub; -Landroid/app/IInstantAppResolver; -Landroid/app/IInstrumentationWatcher$Stub$Proxy; -Landroid/app/IInstrumentationWatcher$Stub; -Landroid/app/IInstrumentationWatcher; -Landroid/app/ILocalWallpaperColorConsumer$Stub; -Landroid/app/ILocalWallpaperColorConsumer; -Landroid/app/ILocaleManager$Stub$Proxy; -Landroid/app/ILocaleManager$Stub; -Landroid/app/ILocaleManager; -Landroid/app/INotificationManager$Stub$Proxy; -Landroid/app/INotificationManager$Stub; -Landroid/app/INotificationManager; -Landroid/app/IOnProjectionStateChangedListener$Stub; -Landroid/app/IOnProjectionStateChangedListener; -Landroid/app/IParcelFileDescriptorRetriever$Stub$Proxy; -Landroid/app/IParcelFileDescriptorRetriever$Stub; -Landroid/app/IParcelFileDescriptorRetriever; -Landroid/app/IProcessObserver$Stub$Proxy; -Landroid/app/IProcessObserver$Stub; -Landroid/app/IProcessObserver; -Landroid/app/IRequestFinishCallback$Stub$Proxy; -Landroid/app/IRequestFinishCallback$Stub; -Landroid/app/IRequestFinishCallback; -Landroid/app/IScreenCaptureObserver; -Landroid/app/ISearchManager$Stub$Proxy; -Landroid/app/ISearchManager$Stub; -Landroid/app/ISearchManager; -Landroid/app/IServiceConnection$Stub; -Landroid/app/IServiceConnection; -Landroid/app/IStopUserCallback$Stub$Proxy; -Landroid/app/IStopUserCallback$Stub; -Landroid/app/IStopUserCallback; -Landroid/app/ITaskStackListener$Stub; -Landroid/app/ITaskStackListener; -Landroid/app/ITransientNotification$Stub$Proxy; -Landroid/app/ITransientNotification$Stub; -Landroid/app/ITransientNotification; -Landroid/app/ITransientNotificationCallback$Stub$Proxy; -Landroid/app/ITransientNotificationCallback$Stub; -Landroid/app/ITransientNotificationCallback; -Landroid/app/IUiAutomationConnection$Stub$Proxy; -Landroid/app/IUiAutomationConnection$Stub; -Landroid/app/IUiAutomationConnection; -Landroid/app/IUiModeManager$Stub$Proxy; -Landroid/app/IUiModeManager$Stub; -Landroid/app/IUiModeManager; -Landroid/app/IUiModeManagerCallback$Stub; -Landroid/app/IUiModeManagerCallback; -Landroid/app/IUidFrozenStateChangedCallback$Stub$Proxy; -Landroid/app/IUidFrozenStateChangedCallback$Stub; -Landroid/app/IUidFrozenStateChangedCallback; -Landroid/app/IUidObserver$Stub; -Landroid/app/IUidObserver; -Landroid/app/IUnsafeIntentStrictModeCallback$Stub; -Landroid/app/IUnsafeIntentStrictModeCallback; -Landroid/app/IUriGrantsManager$Stub$Proxy; -Landroid/app/IUriGrantsManager$Stub; -Landroid/app/IUriGrantsManager; -Landroid/app/IUserSwitchObserver$Stub$Proxy; -Landroid/app/IUserSwitchObserver$Stub; -Landroid/app/IUserSwitchObserver; -Landroid/app/IWallpaperManager$Stub$Proxy; -Landroid/app/IWallpaperManager$Stub; -Landroid/app/IWallpaperManager; -Landroid/app/IWallpaperManagerCallback$Stub$Proxy; -Landroid/app/IWallpaperManagerCallback$Stub; -Landroid/app/IWallpaperManagerCallback; -Landroid/app/InstantAppResolverService$1; -Landroid/app/InstantAppResolverService$InstantAppResolutionCallback; -Landroid/app/InstantAppResolverService$ServiceHandler; -Landroid/app/InstantAppResolverService; -Landroid/app/Instrumentation$ActivityGoing; -Landroid/app/Instrumentation$ActivityMonitor; -Landroid/app/Instrumentation$ActivityResult; -Landroid/app/Instrumentation$ActivityWaiter; -Landroid/app/Instrumentation; -Landroid/app/IntentReceiverLeaked; -Landroid/app/IntentService$ServiceHandler; -Landroid/app/IntentService; -Landroid/app/KeyguardManager$1; -Landroid/app/KeyguardManager$KeyguardDismissCallback; -Landroid/app/KeyguardManager; -Landroid/app/ListActivity; -Landroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0; -Landroid/app/LoadedApk$ReceiverDispatcher$Args; -Landroid/app/LoadedApk$ReceiverDispatcher; -Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo-IA; -Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo; -Landroid/app/LoadedApk$ServiceDispatcher$DeathMonitor; -Landroid/app/LoadedApk$ServiceDispatcher$RunConnection; -Landroid/app/LoadedApk$ServiceDispatcher; -Landroid/app/LoadedApk$SplitDependencyLoaderImpl; -Landroid/app/LoadedApk$WarningContextClassLoader-IA; -Landroid/app/LoadedApk$WarningContextClassLoader; -Landroid/app/LoadedApk; -Landroid/app/LoaderManager$LoaderCallbacks; -Landroid/app/LoaderManager; -Landroid/app/LoaderManagerImpl$LoaderInfo; -Landroid/app/LoaderManagerImpl; -Landroid/app/LocaleConfig$1; -Landroid/app/LocaleConfig; -Landroid/app/LocaleManager; -Landroid/app/NativeActivity; -Landroid/app/Notification$$ExternalSyntheticLambda0; -Landroid/app/Notification$1; -Landroid/app/Notification$Action$1; -Landroid/app/Notification$Action$Builder; -Landroid/app/Notification$Action-IA; -Landroid/app/Notification$Action; -Landroid/app/Notification$BigPictureStyle; -Landroid/app/Notification$BigTextStyle; -Landroid/app/Notification$BubbleMetadata$1; -Landroid/app/Notification$BubbleMetadata$Builder; -Landroid/app/Notification$BubbleMetadata-IA; -Landroid/app/Notification$BubbleMetadata; -Landroid/app/Notification$Builder; -Landroid/app/Notification$BuilderRemoteViews; -Landroid/app/Notification$CallStyle; -Landroid/app/Notification$Colors; -Landroid/app/Notification$DecoratedCustomViewStyle; -Landroid/app/Notification$DecoratedMediaCustomViewStyle; -Landroid/app/Notification$Extender; -Landroid/app/Notification$InboxStyle; -Landroid/app/Notification$MediaStyle; -Landroid/app/Notification$MessagingStyle$Message; -Landroid/app/Notification$MessagingStyle; -Landroid/app/Notification$StandardTemplateParams-IA; -Landroid/app/Notification$StandardTemplateParams; -Landroid/app/Notification$Style; -Landroid/app/Notification$TemplateBindResult$MarginSet; -Landroid/app/Notification$TemplateBindResult; -Landroid/app/Notification$TvExtender; -Landroid/app/Notification; -Landroid/app/NotificationChannel$1; -Landroid/app/NotificationChannel; -Landroid/app/NotificationChannelGroup$1; -Landroid/app/NotificationChannelGroup; -Landroid/app/NotificationHistory$1; -Landroid/app/NotificationHistory$HistoricalNotification$Builder; -Landroid/app/NotificationHistory$HistoricalNotification; -Landroid/app/NotificationHistory; -Landroid/app/NotificationManager$Policy$1; -Landroid/app/NotificationManager$Policy; -Landroid/app/NotificationManager; -Landroid/app/OnActivityPausedListener; -Landroid/app/PackageInstallObserver$1; -Landroid/app/PackageInstallObserver; -Landroid/app/PendingIntent$$ExternalSyntheticLambda0; -Landroid/app/PendingIntent$$ExternalSyntheticLambda1; -Landroid/app/PendingIntent$$ExternalSyntheticLambda2; -Landroid/app/PendingIntent$$ExternalSyntheticLambda3; -Landroid/app/PendingIntent$1; -Landroid/app/PendingIntent$CancelListener; -Landroid/app/PendingIntent$CanceledException; -Landroid/app/PendingIntent$OnFinished; -Landroid/app/PendingIntent$OnMarshaledListener; -Landroid/app/PendingIntent; -Landroid/app/Person$1; -Landroid/app/Person$Builder-IA; -Landroid/app/Person$Builder; -Landroid/app/Person-IA; -Landroid/app/Person; -Landroid/app/PictureInPictureParams$1; -Landroid/app/PictureInPictureParams$Builder; -Landroid/app/PictureInPictureParams; -Landroid/app/PictureInPictureUiState$1; -Landroid/app/PictureInPictureUiState; -Landroid/app/Presentation; -Landroid/app/ProcessMemoryState$1; -Landroid/app/ProcessMemoryState; -Landroid/app/ProfilerInfo$1; -Landroid/app/ProfilerInfo; -Landroid/app/ProgressDialog$1; -Landroid/app/ProgressDialog; -Landroid/app/PropertyInvalidatedCache$1; -Landroid/app/PropertyInvalidatedCache$AutoCorker$1; -Landroid/app/PropertyInvalidatedCache$AutoCorker; -Landroid/app/PropertyInvalidatedCache$DefaultComputer; -Landroid/app/PropertyInvalidatedCache$NoPreloadHolder; -Landroid/app/PropertyInvalidatedCache$QueryHandler; -Landroid/app/PropertyInvalidatedCache; -Landroid/app/QueuedWork$QueuedWorkHandler; -Landroid/app/QueuedWork; -Landroid/app/ReceiverInfo$1; -Landroid/app/ReceiverInfo; -Landroid/app/ReceiverRestrictedContext; -Landroid/app/RemoteAction$1; -Landroid/app/RemoteAction; -Landroid/app/RemoteInput$1; -Landroid/app/RemoteInput$Builder; -Landroid/app/RemoteInput-IA; -Landroid/app/RemoteInput; -Landroid/app/RemoteInputHistoryItem$1; -Landroid/app/RemoteInputHistoryItem; -Landroid/app/RemoteServiceException; -Landroid/app/ResourcesManager$$ExternalSyntheticLambda0; -Landroid/app/ResourcesManager$$ExternalSyntheticLambda1; -Landroid/app/ResourcesManager$ActivityResource-IA; -Landroid/app/ResourcesManager$ActivityResource; -Landroid/app/ResourcesManager$ActivityResources-IA; -Landroid/app/ResourcesManager$ActivityResources; -Landroid/app/ResourcesManager$ApkAssetsSupplier; -Landroid/app/ResourcesManager$ApkKey; -Landroid/app/ResourcesManager$SharedLibraryAssets; -Landroid/app/ResourcesManager$UpdateHandler-IA; -Landroid/app/ResourcesManager$UpdateHandler; -Landroid/app/ResourcesManager; -Landroid/app/ResultInfo$1; -Landroid/app/ResultInfo; -Landroid/app/RuntimeAppOpAccessMessage$1; -Landroid/app/RuntimeAppOpAccessMessage; -Landroid/app/SearchDialog; -Landroid/app/SearchManager$OnCancelListener; -Landroid/app/SearchManager$OnDismissListener; -Landroid/app/SearchManager; -Landroid/app/SearchableInfo$1; -Landroid/app/SearchableInfo$ActionKeyInfo$1; -Landroid/app/SearchableInfo$ActionKeyInfo; -Landroid/app/SearchableInfo; -Landroid/app/Service; -Landroid/app/ServiceConnectionLeaked; -Landroid/app/ServiceStartArgs$1; -Landroid/app/ServiceStartArgs; -Landroid/app/ServiceStartNotAllowedException; -Landroid/app/SharedElementCallback$1; -Landroid/app/SharedElementCallback; -Landroid/app/SharedPreferencesImpl$$ExternalSyntheticLambda0; -Landroid/app/SharedPreferencesImpl$1; -Landroid/app/SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0; -Landroid/app/SharedPreferencesImpl$EditorImpl$1; -Landroid/app/SharedPreferencesImpl$EditorImpl$2; -Landroid/app/SharedPreferencesImpl$EditorImpl; -Landroid/app/SharedPreferencesImpl$MemoryCommitResult-IA; -Landroid/app/SharedPreferencesImpl$MemoryCommitResult; -Landroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory; -Landroid/app/StackTrace; -Landroid/app/StatusBarManager; -Landroid/app/SyncNotedAppOp$1; -Landroid/app/SyncNotedAppOp; -Landroid/app/SynchronousUserSwitchObserver; -Landroid/app/SystemServiceRegistry$100; -Landroid/app/SystemServiceRegistry$101; -Landroid/app/SystemServiceRegistry$102; -Landroid/app/SystemServiceRegistry$103; -Landroid/app/SystemServiceRegistry$104; -Landroid/app/SystemServiceRegistry$105; -Landroid/app/SystemServiceRegistry$106; -Landroid/app/SystemServiceRegistry$107; -Landroid/app/SystemServiceRegistry$108; -Landroid/app/SystemServiceRegistry$109; -Landroid/app/SystemServiceRegistry$10; -Landroid/app/SystemServiceRegistry$110; -Landroid/app/SystemServiceRegistry$111; -Landroid/app/SystemServiceRegistry$112; -Landroid/app/SystemServiceRegistry$113; -Landroid/app/SystemServiceRegistry$114; -Landroid/app/SystemServiceRegistry$115; -Landroid/app/SystemServiceRegistry$116; -Landroid/app/SystemServiceRegistry$117; -Landroid/app/SystemServiceRegistry$118; -Landroid/app/SystemServiceRegistry$119; -Landroid/app/SystemServiceRegistry$11; -Landroid/app/SystemServiceRegistry$120; -Landroid/app/SystemServiceRegistry$121; -Landroid/app/SystemServiceRegistry$122; -Landroid/app/SystemServiceRegistry$123; -Landroid/app/SystemServiceRegistry$124; -Landroid/app/SystemServiceRegistry$125; -Landroid/app/SystemServiceRegistry$126; -Landroid/app/SystemServiceRegistry$127; -Landroid/app/SystemServiceRegistry$128; -Landroid/app/SystemServiceRegistry$129; -Landroid/app/SystemServiceRegistry$12; -Landroid/app/SystemServiceRegistry$130; -Landroid/app/SystemServiceRegistry$131; -Landroid/app/SystemServiceRegistry$132; -Landroid/app/SystemServiceRegistry$133; -Landroid/app/SystemServiceRegistry$134; -Landroid/app/SystemServiceRegistry$135; -Landroid/app/SystemServiceRegistry$136; -Landroid/app/SystemServiceRegistry$137; -Landroid/app/SystemServiceRegistry$138; -Landroid/app/SystemServiceRegistry$139; -Landroid/app/SystemServiceRegistry$13; -Landroid/app/SystemServiceRegistry$140; -Landroid/app/SystemServiceRegistry$141; -Landroid/app/SystemServiceRegistry$142; -Landroid/app/SystemServiceRegistry$143; -Landroid/app/SystemServiceRegistry$144; -Landroid/app/SystemServiceRegistry$145; -Landroid/app/SystemServiceRegistry$146; -Landroid/app/SystemServiceRegistry$14; -Landroid/app/SystemServiceRegistry$15; -Landroid/app/SystemServiceRegistry$16; -Landroid/app/SystemServiceRegistry$17; -Landroid/app/SystemServiceRegistry$18; -Landroid/app/SystemServiceRegistry$19; -Landroid/app/SystemServiceRegistry$1; -Landroid/app/SystemServiceRegistry$20; -Landroid/app/SystemServiceRegistry$21; -Landroid/app/SystemServiceRegistry$22; -Landroid/app/SystemServiceRegistry$23; -Landroid/app/SystemServiceRegistry$24; -Landroid/app/SystemServiceRegistry$25; -Landroid/app/SystemServiceRegistry$26; -Landroid/app/SystemServiceRegistry$27; -Landroid/app/SystemServiceRegistry$28; -Landroid/app/SystemServiceRegistry$29; -Landroid/app/SystemServiceRegistry$2; -Landroid/app/SystemServiceRegistry$30; -Landroid/app/SystemServiceRegistry$31; -Landroid/app/SystemServiceRegistry$32; -Landroid/app/SystemServiceRegistry$33; -Landroid/app/SystemServiceRegistry$34; -Landroid/app/SystemServiceRegistry$35; -Landroid/app/SystemServiceRegistry$36; -Landroid/app/SystemServiceRegistry$37; -Landroid/app/SystemServiceRegistry$38; -Landroid/app/SystemServiceRegistry$39; -Landroid/app/SystemServiceRegistry$3; -Landroid/app/SystemServiceRegistry$40; -Landroid/app/SystemServiceRegistry$41; -Landroid/app/SystemServiceRegistry$42; -Landroid/app/SystemServiceRegistry$43; -Landroid/app/SystemServiceRegistry$44; -Landroid/app/SystemServiceRegistry$45; -Landroid/app/SystemServiceRegistry$46; -Landroid/app/SystemServiceRegistry$47; -Landroid/app/SystemServiceRegistry$48; -Landroid/app/SystemServiceRegistry$49; -Landroid/app/SystemServiceRegistry$4; -Landroid/app/SystemServiceRegistry$50; -Landroid/app/SystemServiceRegistry$51; -Landroid/app/SystemServiceRegistry$52; -Landroid/app/SystemServiceRegistry$53; -Landroid/app/SystemServiceRegistry$54; -Landroid/app/SystemServiceRegistry$55; -Landroid/app/SystemServiceRegistry$56; -Landroid/app/SystemServiceRegistry$57; -Landroid/app/SystemServiceRegistry$58; -Landroid/app/SystemServiceRegistry$59; -Landroid/app/SystemServiceRegistry$5; -Landroid/app/SystemServiceRegistry$60; -Landroid/app/SystemServiceRegistry$61; -Landroid/app/SystemServiceRegistry$62; -Landroid/app/SystemServiceRegistry$63; -Landroid/app/SystemServiceRegistry$64; -Landroid/app/SystemServiceRegistry$65; -Landroid/app/SystemServiceRegistry$66; -Landroid/app/SystemServiceRegistry$67; -Landroid/app/SystemServiceRegistry$68; -Landroid/app/SystemServiceRegistry$69; -Landroid/app/SystemServiceRegistry$6; -Landroid/app/SystemServiceRegistry$70; -Landroid/app/SystemServiceRegistry$71; -Landroid/app/SystemServiceRegistry$72; -Landroid/app/SystemServiceRegistry$73; -Landroid/app/SystemServiceRegistry$74; -Landroid/app/SystemServiceRegistry$75; -Landroid/app/SystemServiceRegistry$76; -Landroid/app/SystemServiceRegistry$77; -Landroid/app/SystemServiceRegistry$78; -Landroid/app/SystemServiceRegistry$79; -Landroid/app/SystemServiceRegistry$7; -Landroid/app/SystemServiceRegistry$80; -Landroid/app/SystemServiceRegistry$81; -Landroid/app/SystemServiceRegistry$82; -Landroid/app/SystemServiceRegistry$83; -Landroid/app/SystemServiceRegistry$84; -Landroid/app/SystemServiceRegistry$85; -Landroid/app/SystemServiceRegistry$86; -Landroid/app/SystemServiceRegistry$87; -Landroid/app/SystemServiceRegistry$88; -Landroid/app/SystemServiceRegistry$89; -Landroid/app/SystemServiceRegistry$8; -Landroid/app/SystemServiceRegistry$90; -Landroid/app/SystemServiceRegistry$91; -Landroid/app/SystemServiceRegistry$92; -Landroid/app/SystemServiceRegistry$93; -Landroid/app/SystemServiceRegistry$94; -Landroid/app/SystemServiceRegistry$95; -Landroid/app/SystemServiceRegistry$96; -Landroid/app/SystemServiceRegistry$97; -Landroid/app/SystemServiceRegistry$98; -Landroid/app/SystemServiceRegistry$99; -Landroid/app/SystemServiceRegistry$9; -Landroid/app/SystemServiceRegistry$CachedServiceFetcher; -Landroid/app/SystemServiceRegistry$ContextAwareServiceProducerWithBinder; -Landroid/app/SystemServiceRegistry$ContextAwareServiceProducerWithoutBinder; -Landroid/app/SystemServiceRegistry$ServiceFetcher; -Landroid/app/SystemServiceRegistry$StaticServiceFetcher; -Landroid/app/SystemServiceRegistry$StaticServiceProducerWithBinder; -Landroid/app/SystemServiceRegistry$StaticServiceProducerWithoutBinder; -Landroid/app/SystemServiceRegistry; -Landroid/app/TaskInfo; -Landroid/app/TaskStackListener; -Landroid/app/UiModeManager$1; -Landroid/app/UiModeManager$Globals; -Landroid/app/UiModeManager$InnerListener; -Landroid/app/UiModeManager$OnProjectionStateChangedListener; -Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager-IA; -Landroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager; -Landroid/app/UiModeManager; -Landroid/app/UidObserver; -Landroid/app/UriGrantsManager$1; -Landroid/app/UriGrantsManager; -Landroid/app/UserSwitchObserver; -Landroid/app/VoiceInteractor$Request; -Landroid/app/VoiceInteractor; -Landroid/app/Vr2dDisplayProperties$1; -Landroid/app/Vr2dDisplayProperties; -Landroid/app/VrManager; -Landroid/app/WaitResult$1; -Landroid/app/WaitResult; -Landroid/app/WallpaperColors$1; -Landroid/app/WallpaperColors; -Landroid/app/WallpaperInfo$1; -Landroid/app/WallpaperInfo; -Landroid/app/WallpaperManager$CachedWallpaper; -Landroid/app/WallpaperManager$ColorManagementProxy; -Landroid/app/WallpaperManager$Globals$$ExternalSyntheticLambda1; -Landroid/app/WallpaperManager$Globals$1; -Landroid/app/WallpaperManager$Globals; -Landroid/app/WallpaperManager$OnColorsChangedListener; -Landroid/app/WallpaperManager; -Landroid/app/WindowConfiguration$1; -Landroid/app/WindowConfiguration-IA; -Landroid/app/WindowConfiguration; -Landroid/app/admin/DeviceAdminInfo$1; -Landroid/app/admin/DeviceAdminInfo$PolicyInfo; -Landroid/app/admin/DeviceAdminInfo; -Landroid/app/admin/DevicePolicyCache$EmptyDevicePolicyCache; -Landroid/app/admin/DevicePolicyCache; -Landroid/app/admin/DevicePolicyEventLogger; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda10; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda11; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda2; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda3; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda4; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda5; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda6; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda7; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda8; -Landroid/app/admin/DevicePolicyManager$$ExternalSyntheticLambda9; -Landroid/app/admin/DevicePolicyManager$1; -Landroid/app/admin/DevicePolicyManager$2; -Landroid/app/admin/DevicePolicyManager$InstallSystemUpdateCallback; -Landroid/app/admin/DevicePolicyManager$OnClearApplicationUserDataListener; -Landroid/app/admin/DevicePolicyManager; -Landroid/app/admin/DevicePolicyManagerInternal$OnCrossProfileWidgetProvidersChangeListener; -Landroid/app/admin/DevicePolicyManagerInternal; -Landroid/app/admin/DevicePolicyResourcesManager; -Landroid/app/admin/DeviceStateCache; -Landroid/app/admin/FactoryResetProtectionPolicy$1; -Landroid/app/admin/FactoryResetProtectionPolicy; -Landroid/app/admin/IAuditLogEventsCallback$Stub; -Landroid/app/admin/IAuditLogEventsCallback; -Landroid/app/admin/IDeviceAdminService$Stub$Proxy; -Landroid/app/admin/IDeviceAdminService$Stub; -Landroid/app/admin/IDeviceAdminService; -Landroid/app/admin/IDevicePolicyManager$Stub$Proxy; -Landroid/app/admin/IDevicePolicyManager$Stub; -Landroid/app/admin/IDevicePolicyManager; -Landroid/app/admin/IKeyguardCallback$Stub; -Landroid/app/admin/IKeyguardCallback; -Landroid/app/admin/NetworkEvent$1; -Landroid/app/admin/NetworkEvent; -Landroid/app/admin/ParcelableResource$1; -Landroid/app/admin/ParcelableResource; -Landroid/app/admin/PasswordMetrics$1; -Landroid/app/admin/PasswordMetrics$ComplexityBucket$1; -Landroid/app/admin/PasswordMetrics$ComplexityBucket$2; -Landroid/app/admin/PasswordMetrics$ComplexityBucket$3; -Landroid/app/admin/PasswordMetrics$ComplexityBucket$4; -Landroid/app/admin/PasswordMetrics$ComplexityBucket; -Landroid/app/admin/PasswordMetrics; -Landroid/app/admin/PasswordPolicy; -Landroid/app/admin/SecurityLog$SecurityEvent$1; -Landroid/app/admin/SecurityLog$SecurityEvent; -Landroid/app/admin/SecurityLog; -Landroid/app/admin/StartInstallingUpdateCallback$Stub$Proxy; -Landroid/app/admin/StartInstallingUpdateCallback$Stub; -Landroid/app/admin/StartInstallingUpdateCallback; -Landroid/app/admin/SystemUpdateInfo$1; -Landroid/app/admin/SystemUpdateInfo; -Landroid/app/admin/SystemUpdatePolicy$1; -Landroid/app/admin/SystemUpdatePolicy; -Landroid/app/admin/WifiSsidPolicy$1; -Landroid/app/admin/WifiSsidPolicy; -Landroid/app/ambientcontext/AmbientContextManager; -Landroid/app/ambientcontext/IAmbientContextManager$Stub$Proxy; -Landroid/app/ambientcontext/IAmbientContextManager$Stub; -Landroid/app/ambientcontext/IAmbientContextManager; -Landroid/app/assist/ActivityId$1; -Landroid/app/assist/ActivityId; -Landroid/app/assist/AssistContent$1; -Landroid/app/assist/AssistContent; -Landroid/app/assist/AssistStructure$1; -Landroid/app/assist/AssistStructure$AutofillOverlay; -Landroid/app/assist/AssistStructure$HtmlInfoNode$1; -Landroid/app/assist/AssistStructure$HtmlInfoNode; -Landroid/app/assist/AssistStructure$HtmlInfoNodeBuilder; -Landroid/app/assist/AssistStructure$ParcelTransferReader; -Landroid/app/assist/AssistStructure$ParcelTransferWriter; -Landroid/app/assist/AssistStructure$SendChannel; -Landroid/app/assist/AssistStructure$ViewNode; -Landroid/app/assist/AssistStructure$ViewNodeBuilder; -Landroid/app/assist/AssistStructure$ViewNodeParcelable$1; -Landroid/app/assist/AssistStructure$ViewNodeParcelable; -Landroid/app/assist/AssistStructure$ViewNodeText; -Landroid/app/assist/AssistStructure$ViewStackEntry; -Landroid/app/assist/AssistStructure$WindowNode; -Landroid/app/assist/AssistStructure; -Landroid/app/backup/BackupAgent$BackupServiceBinder-IA; -Landroid/app/backup/BackupAgent$BackupServiceBinder; -Landroid/app/backup/BackupAgent$SharedPrefsSynchronizer; -Landroid/app/backup/BackupAgent; -Landroid/app/backup/BackupAgentHelper; -Landroid/app/backup/BackupDataInput$EntityHeader; -Landroid/app/backup/BackupDataInput; -Landroid/app/backup/BackupDataOutput; -Landroid/app/backup/BackupHelper; -Landroid/app/backup/BackupHelperDispatcher$Header-IA; -Landroid/app/backup/BackupHelperDispatcher$Header; -Landroid/app/backup/BackupHelperDispatcher; -Landroid/app/backup/BackupHelperWithLogger; -Landroid/app/backup/BackupManager$BackupObserverWrapper$1; -Landroid/app/backup/BackupManager$BackupObserverWrapper; -Landroid/app/backup/BackupManager; -Landroid/app/backup/BackupManagerMonitor; -Landroid/app/backup/BackupObserver; -Landroid/app/backup/BackupProgress$1; -Landroid/app/backup/BackupProgress; -Landroid/app/backup/BackupRestoreEventLogger; -Landroid/app/backup/BackupTransport$TransportImpl; -Landroid/app/backup/BackupTransport; -Landroid/app/backup/BlobBackupHelper; -Landroid/app/backup/FileBackupHelper; -Landroid/app/backup/FileBackupHelperBase; -Landroid/app/backup/FullBackup; -Landroid/app/backup/FullBackupDataOutput; -Landroid/app/backup/IBackupCallback$Stub$Proxy; -Landroid/app/backup/IBackupCallback$Stub; -Landroid/app/backup/IBackupCallback; -Landroid/app/backup/IBackupManager$Stub$Proxy; -Landroid/app/backup/IBackupManager$Stub; -Landroid/app/backup/IBackupManager; -Landroid/app/backup/IBackupManagerMonitor$Stub$Proxy; -Landroid/app/backup/IBackupManagerMonitor$Stub; -Landroid/app/backup/IBackupManagerMonitor; -Landroid/app/backup/IBackupObserver$Stub$Proxy; -Landroid/app/backup/IBackupObserver$Stub; -Landroid/app/backup/IBackupObserver; -Landroid/app/backup/IFullBackupRestoreObserver$Stub$Proxy; -Landroid/app/backup/IFullBackupRestoreObserver$Stub; -Landroid/app/backup/IFullBackupRestoreObserver; -Landroid/app/backup/IRestoreSession; -Landroid/app/backup/ISelectBackupTransportCallback$Stub$Proxy; -Landroid/app/backup/ISelectBackupTransportCallback$Stub; -Landroid/app/backup/ISelectBackupTransportCallback; -Landroid/app/backup/RestoreDescription$1; -Landroid/app/backup/RestoreDescription; -Landroid/app/backup/SharedPreferencesBackupHelper; -Landroid/app/blob/BlobHandle$1; -Landroid/app/blob/BlobHandle; -Landroid/app/blob/BlobStoreManager; -Landroid/app/blob/BlobStoreManagerFrameworkInitializer$$ExternalSyntheticLambda0; -Landroid/app/blob/BlobStoreManagerFrameworkInitializer; -Landroid/app/blob/IBlobStoreManager$Stub$Proxy; -Landroid/app/blob/IBlobStoreManager$Stub; -Landroid/app/blob/IBlobStoreManager; -Landroid/app/blob/IBlobStoreSession; -Landroid/app/blob/LeaseInfo$1; -Landroid/app/blob/LeaseInfo; -Landroid/app/cloudsearch/CloudSearchManager; -Landroid/app/compat/ChangeIdStateCache; -Landroid/app/compat/ChangeIdStateQuery; -Landroid/app/compat/CompatChanges; -Landroid/app/contentsuggestions/ClassificationsRequest$1; -Landroid/app/contentsuggestions/ClassificationsRequest; -Landroid/app/contentsuggestions/ContentSelection$1; -Landroid/app/contentsuggestions/ContentSelection; -Landroid/app/contentsuggestions/ContentSuggestionsManager$SelectionsCallback; -Landroid/app/contentsuggestions/ContentSuggestionsManager$SelectionsCallbackWrapper; -Landroid/app/contentsuggestions/ContentSuggestionsManager; -Landroid/app/contentsuggestions/IClassificationsCallback$Stub$Proxy; -Landroid/app/contentsuggestions/IClassificationsCallback$Stub; -Landroid/app/contentsuggestions/IClassificationsCallback; -Landroid/app/contentsuggestions/IContentSuggestionsManager$Stub$Proxy; -Landroid/app/contentsuggestions/IContentSuggestionsManager$Stub; -Landroid/app/contentsuggestions/IContentSuggestionsManager; -Landroid/app/contentsuggestions/ISelectionsCallback$Stub$Proxy; -Landroid/app/contentsuggestions/ISelectionsCallback$Stub; -Landroid/app/contentsuggestions/ISelectionsCallback; -Landroid/app/contentsuggestions/SelectionsRequest$1; -Landroid/app/contentsuggestions/SelectionsRequest$Builder; -Landroid/app/contentsuggestions/SelectionsRequest-IA; -Landroid/app/contentsuggestions/SelectionsRequest; -Landroid/app/contextualsearch/ContextualSearchManager; -Landroid/app/job/IJobCallback$Stub$Proxy; -Landroid/app/job/IJobCallback$Stub; -Landroid/app/job/IJobCallback; -Landroid/app/job/IJobScheduler$Stub$Proxy; -Landroid/app/job/IJobScheduler$Stub; -Landroid/app/job/IJobScheduler; -Landroid/app/job/IJobService$Stub; -Landroid/app/job/IJobService; -Landroid/app/job/IUserVisibleJobObserver; -Landroid/app/job/JobInfo$1; -Landroid/app/job/JobInfo$Builder; -Landroid/app/job/JobInfo$TriggerContentUri$1; -Landroid/app/job/JobInfo$TriggerContentUri-IA; -Landroid/app/job/JobInfo$TriggerContentUri; -Landroid/app/job/JobInfo-IA; -Landroid/app/job/JobInfo; -Landroid/app/job/JobParameters$1; -Landroid/app/job/JobParameters-IA; -Landroid/app/job/JobParameters; -Landroid/app/job/JobScheduler; -Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda0; -Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda1; -Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda2; -Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda3; -Landroid/app/job/JobSchedulerFrameworkInitializer; -Landroid/app/job/JobService$1; -Landroid/app/job/JobService; -Landroid/app/job/JobServiceEngine$JobHandler; -Landroid/app/job/JobServiceEngine; -Landroid/app/job/JobWorkItem$1; -Landroid/app/job/JobWorkItem; -Landroid/app/ondeviceintelligence/OnDeviceIntelligenceManager; -Landroid/app/people/IPeopleManager$Stub$Proxy; -Landroid/app/people/IPeopleManager$Stub; -Landroid/app/people/IPeopleManager; -Landroid/app/people/PeopleManager; -Landroid/app/prediction/AppPredictionContext$1; -Landroid/app/prediction/AppPredictionContext-IA; -Landroid/app/prediction/AppPredictionContext; -Landroid/app/prediction/AppPredictionManager; -Landroid/app/prediction/AppPredictionSessionId$1; -Landroid/app/prediction/AppPredictionSessionId-IA; -Landroid/app/prediction/AppPredictionSessionId; -Landroid/app/prediction/AppPredictor$CallbackWrapper; -Landroid/app/prediction/AppPredictor; -Landroid/app/prediction/AppTarget$1; -Landroid/app/prediction/AppTarget$Builder; -Landroid/app/prediction/AppTarget-IA; -Landroid/app/prediction/AppTarget; -Landroid/app/prediction/AppTargetEvent$1; -Landroid/app/prediction/AppTargetEvent-IA; -Landroid/app/prediction/AppTargetEvent; -Landroid/app/prediction/AppTargetId$1; -Landroid/app/prediction/AppTargetId-IA; -Landroid/app/prediction/AppTargetId; -Landroid/app/prediction/IPredictionCallback$Stub$Proxy; -Landroid/app/prediction/IPredictionCallback$Stub; -Landroid/app/prediction/IPredictionCallback; -Landroid/app/prediction/IPredictionManager$Stub$Proxy; -Landroid/app/prediction/IPredictionManager$Stub; -Landroid/app/prediction/IPredictionManager; -Landroid/app/search/SearchUiManager; -Landroid/app/servertransaction/ActivityConfigurationChangeItem$1; -Landroid/app/servertransaction/ActivityConfigurationChangeItem-IA; -Landroid/app/servertransaction/ActivityConfigurationChangeItem; -Landroid/app/servertransaction/ActivityLifecycleItem; -Landroid/app/servertransaction/ActivityRelaunchItem$1; -Landroid/app/servertransaction/ActivityRelaunchItem; -Landroid/app/servertransaction/ActivityResultItem$1; -Landroid/app/servertransaction/ActivityResultItem-IA; -Landroid/app/servertransaction/ActivityResultItem; -Landroid/app/servertransaction/ActivityTransactionItem; -Landroid/app/servertransaction/BaseClientRequest; -Landroid/app/servertransaction/ClientTransaction$1; -Landroid/app/servertransaction/ClientTransaction-IA; -Landroid/app/servertransaction/ClientTransaction; -Landroid/app/servertransaction/ClientTransactionItem; -Landroid/app/servertransaction/ClientTransactionListenerController; -Landroid/app/servertransaction/ConfigurationChangeItem$1; -Landroid/app/servertransaction/ConfigurationChangeItem-IA; -Landroid/app/servertransaction/ConfigurationChangeItem; -Landroid/app/servertransaction/DestroyActivityItem$1; -Landroid/app/servertransaction/DestroyActivityItem-IA; -Landroid/app/servertransaction/DestroyActivityItem; -Landroid/app/servertransaction/LaunchActivityItem$1; -Landroid/app/servertransaction/LaunchActivityItem-IA; -Landroid/app/servertransaction/LaunchActivityItem; -Landroid/app/servertransaction/NewIntentItem$1; -Landroid/app/servertransaction/NewIntentItem-IA; -Landroid/app/servertransaction/NewIntentItem; -Landroid/app/servertransaction/ObjectPool; -Landroid/app/servertransaction/ObjectPoolItem; -Landroid/app/servertransaction/PauseActivityItem$1; -Landroid/app/servertransaction/PauseActivityItem-IA; -Landroid/app/servertransaction/PauseActivityItem; -Landroid/app/servertransaction/PendingTransactionActions$StopInfo; -Landroid/app/servertransaction/PendingTransactionActions; -Landroid/app/servertransaction/ResumeActivityItem$1; -Landroid/app/servertransaction/ResumeActivityItem-IA; -Landroid/app/servertransaction/ResumeActivityItem; -Landroid/app/servertransaction/StartActivityItem$1; -Landroid/app/servertransaction/StartActivityItem-IA; -Landroid/app/servertransaction/StartActivityItem; -Landroid/app/servertransaction/StopActivityItem$1; -Landroid/app/servertransaction/StopActivityItem-IA; -Landroid/app/servertransaction/StopActivityItem; -Landroid/app/servertransaction/TopResumedActivityChangeItem$1; -Landroid/app/servertransaction/TopResumedActivityChangeItem-IA; -Landroid/app/servertransaction/TopResumedActivityChangeItem; -Landroid/app/servertransaction/TransactionExecutor; -Landroid/app/servertransaction/TransactionExecutorHelper; -Landroid/app/slice/ISliceManager$Stub$Proxy; -Landroid/app/slice/ISliceManager$Stub; -Landroid/app/slice/ISliceManager; -Landroid/app/slice/Slice$1; -Landroid/app/slice/Slice$Builder; -Landroid/app/slice/Slice; -Landroid/app/slice/SliceItem$1; -Landroid/app/slice/SliceItem; -Landroid/app/slice/SliceManager; -Landroid/app/slice/SliceProvider$$ExternalSyntheticLambda0; -Landroid/app/slice/SliceProvider; -Landroid/app/slice/SliceSpec$1; -Landroid/app/slice/SliceSpec; -Landroid/app/smartspace/ISmartspaceCallback$Stub; -Landroid/app/smartspace/ISmartspaceCallback; -Landroid/app/smartspace/ISmartspaceManager$Stub$Proxy; -Landroid/app/smartspace/ISmartspaceManager$Stub; -Landroid/app/smartspace/ISmartspaceManager; -Landroid/app/smartspace/SmartspaceAction$1; -Landroid/app/smartspace/SmartspaceAction$Builder; -Landroid/app/smartspace/SmartspaceAction; -Landroid/app/smartspace/SmartspaceConfig$1; -Landroid/app/smartspace/SmartspaceConfig$Builder; -Landroid/app/smartspace/SmartspaceConfig; -Landroid/app/smartspace/SmartspaceManager; -Landroid/app/smartspace/SmartspaceSession$$ExternalSyntheticLambda0; -Landroid/app/smartspace/SmartspaceSession$CallbackWrapper$$ExternalSyntheticLambda0; -Landroid/app/smartspace/SmartspaceSession$CallbackWrapper; -Landroid/app/smartspace/SmartspaceSession$OnTargetsAvailableListener; -Landroid/app/smartspace/SmartspaceSession$Token; -Landroid/app/smartspace/SmartspaceSession; -Landroid/app/smartspace/SmartspaceSessionId$1; -Landroid/app/smartspace/SmartspaceSessionId; -Landroid/app/smartspace/SmartspaceTarget$1; -Landroid/app/smartspace/SmartspaceTarget$Builder; -Landroid/app/smartspace/SmartspaceTarget; -Landroid/app/smartspace/SmartspaceTargetEvent$1; -Landroid/app/smartspace/SmartspaceTargetEvent$Builder; -Landroid/app/smartspace/SmartspaceTargetEvent; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData$1; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData$SubItemInfo$1; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData$SubItemInfo; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData$SubItemLoggingInfo$1; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData$SubItemLoggingInfo; -Landroid/app/smartspace/uitemplatedata/BaseTemplateData; -Landroid/app/smartspace/uitemplatedata/Icon$1; -Landroid/app/smartspace/uitemplatedata/Icon; -Landroid/app/smartspace/uitemplatedata/TapAction$1; -Landroid/app/smartspace/uitemplatedata/TapAction; -Landroid/app/smartspace/uitemplatedata/Text$1; -Landroid/app/smartspace/uitemplatedata/Text; -Landroid/app/time/ITimeZoneDetectorListener$Stub$Proxy; -Landroid/app/time/ITimeZoneDetectorListener$Stub; -Landroid/app/time/ITimeZoneDetectorListener; -Landroid/app/time/TimeManager; -Landroid/app/time/TimeZoneCapabilities$1; -Landroid/app/time/TimeZoneCapabilities$Builder; -Landroid/app/time/TimeZoneCapabilities-IA; -Landroid/app/time/TimeZoneCapabilities; -Landroid/app/time/TimeZoneCapabilitiesAndConfig$1; -Landroid/app/time/TimeZoneCapabilitiesAndConfig; -Landroid/app/time/TimeZoneConfiguration$1; -Landroid/app/time/TimeZoneConfiguration$Builder; -Landroid/app/time/TimeZoneConfiguration-IA; -Landroid/app/time/TimeZoneConfiguration; -Landroid/app/timedetector/ITimeDetectorService$Stub$Proxy; -Landroid/app/timedetector/ITimeDetectorService$Stub; -Landroid/app/timedetector/ITimeDetectorService; -Landroid/app/timedetector/ManualTimeSuggestion$1; -Landroid/app/timedetector/ManualTimeSuggestion; -Landroid/app/timedetector/TelephonyTimeSuggestion$1; -Landroid/app/timedetector/TelephonyTimeSuggestion$Builder; -Landroid/app/timedetector/TelephonyTimeSuggestion; -Landroid/app/timedetector/TimeDetector; -Landroid/app/timedetector/TimeDetectorImpl; -Landroid/app/timezonedetector/ITimeZoneDetectorService$Stub$Proxy; -Landroid/app/timezonedetector/ITimeZoneDetectorService$Stub; -Landroid/app/timezonedetector/ITimeZoneDetectorService; -Landroid/app/timezonedetector/ManualTimeZoneSuggestion$1; -Landroid/app/timezonedetector/ManualTimeZoneSuggestion; -Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$1; -Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion$Builder; -Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion-IA; -Landroid/app/timezonedetector/TelephonyTimeZoneSuggestion; -Landroid/app/timezonedetector/TimeZoneDetector; -Landroid/app/trust/IStrongAuthTracker$Stub$Proxy; -Landroid/app/trust/IStrongAuthTracker$Stub; -Landroid/app/trust/IStrongAuthTracker; -Landroid/app/trust/ITrustListener$Stub$Proxy; -Landroid/app/trust/ITrustListener$Stub; -Landroid/app/trust/ITrustListener; -Landroid/app/trust/ITrustManager$Stub$Proxy; -Landroid/app/trust/ITrustManager$Stub; -Landroid/app/trust/ITrustManager; -Landroid/app/trust/TrustManager$1; -Landroid/app/trust/TrustManager$2; -Landroid/app/trust/TrustManager$TrustListener; -Landroid/app/trust/TrustManager; -Landroid/app/usage/AppStandbyInfo$1; -Landroid/app/usage/AppStandbyInfo-IA; -Landroid/app/usage/AppStandbyInfo; -Landroid/app/usage/CacheQuotaHint$1; -Landroid/app/usage/CacheQuotaHint$Builder; -Landroid/app/usage/CacheQuotaHint; -Landroid/app/usage/CacheQuotaService$CacheQuotaServiceWrapper; -Landroid/app/usage/CacheQuotaService$ServiceHandler; -Landroid/app/usage/CacheQuotaService; -Landroid/app/usage/ConfigurationStats$1; -Landroid/app/usage/ConfigurationStats; -Landroid/app/usage/EventList; -Landroid/app/usage/ExternalStorageStats$1; -Landroid/app/usage/ExternalStorageStats; -Landroid/app/usage/FeatureFlags; -Landroid/app/usage/FeatureFlagsImpl; -Landroid/app/usage/Flags; -Landroid/app/usage/ICacheQuotaService$Stub$Proxy; -Landroid/app/usage/ICacheQuotaService$Stub; -Landroid/app/usage/ICacheQuotaService; -Landroid/app/usage/IStorageStatsManager$Stub$Proxy; -Landroid/app/usage/IStorageStatsManager$Stub; -Landroid/app/usage/IStorageStatsManager; -Landroid/app/usage/IUsageStatsManager$Stub$Proxy; -Landroid/app/usage/IUsageStatsManager$Stub; -Landroid/app/usage/IUsageStatsManager; -Landroid/app/usage/StorageStats$1; -Landroid/app/usage/StorageStats; -Landroid/app/usage/StorageStatsManager; -Landroid/app/usage/UsageEvents$1; -Landroid/app/usage/UsageEvents$Event$UserInteractionEventExtrasToken; -Landroid/app/usage/UsageEvents$Event; -Landroid/app/usage/UsageEvents; -Landroid/app/usage/UsageStats$1; -Landroid/app/usage/UsageStats; -Landroid/app/usage/UsageStatsManager; -Landroid/app/wallpapereffectsgeneration/WallpaperEffectsGenerationManager; -Landroid/app/wearable/WearableSensingManager; -Landroid/apphibernation/AppHibernationManager; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda0; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda10; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda1; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda2; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda3; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda4; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda5; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda6; -Landroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda7; -Landroid/appwidget/AppWidgetManager; -Landroid/appwidget/AppWidgetManagerInternal; -Landroid/appwidget/AppWidgetProvider; -Landroid/appwidget/AppWidgetProviderInfo$1; -Landroid/appwidget/AppWidgetProviderInfo; -Landroid/appwidget/PendingHostUpdate$1; -Landroid/appwidget/PendingHostUpdate; -Landroid/appwidget/flags/FeatureFlags; -Landroid/appwidget/flags/FeatureFlagsImpl; -Landroid/appwidget/flags/Flags; -Landroid/attention/AttentionManagerInternal$AttentionCallbackInternal; -Landroid/attention/AttentionManagerInternal; -Landroid/audio/policy/configuration/V7_0/AudioUsage; -Landroid/companion/AssociationInfo$1; -Landroid/companion/AssociationInfo; -Landroid/companion/AssociationRequest$1; -Landroid/companion/AssociationRequest; -Landroid/companion/CompanionDeviceManager; -Landroid/companion/ICompanionDeviceManager$Stub$Proxy; -Landroid/companion/ICompanionDeviceManager$Stub; -Landroid/companion/ICompanionDeviceManager; -Landroid/companion/virtual/IVirtualDevice$Stub$Proxy; -Landroid/companion/virtual/IVirtualDevice$Stub; -Landroid/companion/virtual/IVirtualDevice; -Landroid/companion/virtual/IVirtualDeviceManager$Stub$Proxy; -Landroid/companion/virtual/IVirtualDeviceManager$Stub; -Landroid/companion/virtual/IVirtualDeviceManager; -Landroid/companion/virtual/VirtualDevice; -Landroid/companion/virtual/VirtualDeviceManager; -Landroid/companion/virtual/flags/FeatureFlags; -Landroid/companion/virtual/flags/FeatureFlagsImpl; -Landroid/companion/virtual/flags/Flags; -Landroid/compat/Compatibility$1; -Landroid/compat/Compatibility$BehaviorChangeDelegate; -Landroid/compat/Compatibility$ChangeConfig; -Landroid/compat/Compatibility; -Landroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl-IA; -Landroid/content/AbstractThreadedSyncAdapter$ISyncAdapterImpl; -Landroid/content/AbstractThreadedSyncAdapter$SyncThread-IA; -Landroid/content/AbstractThreadedSyncAdapter$SyncThread; -Landroid/content/AbstractThreadedSyncAdapter; -Landroid/content/ActivityNotFoundException; -Landroid/content/ApexEnvironment; -Landroid/content/AsyncQueryHandler$WorkerArgs; -Landroid/content/AsyncQueryHandler$WorkerHandler; -Landroid/content/AsyncQueryHandler; -Landroid/content/AsyncTaskLoader$LoadTask; -Landroid/content/AsyncTaskLoader; -Landroid/content/Attributable; -Landroid/content/AttributionSource$1; -Landroid/content/AttributionSource$Builder; -Landroid/content/AttributionSource$ScopedParcelState; -Landroid/content/AttributionSource; -Landroid/content/AttributionSourceState$1; -Landroid/content/AttributionSourceState; -Landroid/content/AutofillOptions$1; -Landroid/content/AutofillOptions; -Landroid/content/BroadcastReceiver$PendingResult$1; -Landroid/content/BroadcastReceiver$PendingResult; -Landroid/content/BroadcastReceiver; -Landroid/content/ClipData$1; -Landroid/content/ClipData$Item-IA; -Landroid/content/ClipData$Item; -Landroid/content/ClipData; -Landroid/content/ClipDescription$1; -Landroid/content/ClipDescription; -Landroid/content/ClipboardManager$1; -Landroid/content/ClipboardManager$OnPrimaryClipChangedListener; -Landroid/content/ClipboardManager; -Landroid/content/ComponentCallbacks2; -Landroid/content/ComponentCallbacks; -Landroid/content/ComponentCallbacksController$$ExternalSyntheticLambda0; -Landroid/content/ComponentCallbacksController$$ExternalSyntheticLambda1; -Landroid/content/ComponentCallbacksController$$ExternalSyntheticLambda2; -Landroid/content/ComponentCallbacksController; -Landroid/content/ComponentName$1; -Landroid/content/ComponentName$WithComponentName; -Landroid/content/ComponentName; -Landroid/content/ContentCaptureOptions$1; -Landroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1; -Landroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2; -Landroid/content/ContentCaptureOptions$ContentProtectionOptions; -Landroid/content/ContentCaptureOptions; -Landroid/content/ContentInterface; -Landroid/content/ContentProvider$1; -Landroid/content/ContentProvider$CallingIdentity; -Landroid/content/ContentProvider$PipeDataWriter; -Landroid/content/ContentProvider$Transport; -Landroid/content/ContentProvider; -Landroid/content/ContentProviderClient$CursorWrapperInner; -Landroid/content/ContentProviderClient$NotRespondingRunnable-IA; -Landroid/content/ContentProviderClient$NotRespondingRunnable; -Landroid/content/ContentProviderClient; -Landroid/content/ContentProviderNative; -Landroid/content/ContentProviderOperation$1; -Landroid/content/ContentProviderOperation$BackReference$1; -Landroid/content/ContentProviderOperation$BackReference; -Landroid/content/ContentProviderOperation$Builder-IA; -Landroid/content/ContentProviderOperation$Builder; -Landroid/content/ContentProviderOperation-IA; -Landroid/content/ContentProviderOperation; -Landroid/content/ContentProviderResult$1; -Landroid/content/ContentProviderResult; -Landroid/content/ContentResolver$1; -Landroid/content/ContentResolver$2; -Landroid/content/ContentResolver$OpenResourceIdResult; -Landroid/content/ContentResolver$ParcelFileDescriptorInner; -Landroid/content/ContentResolver$ResultListener-IA; -Landroid/content/ContentResolver$ResultListener; -Landroid/content/ContentResolver$StringResultListener-IA; -Landroid/content/ContentResolver$StringResultListener; -Landroid/content/ContentResolver$UriResultListener; -Landroid/content/ContentResolver; -Landroid/content/ContentUris; -Landroid/content/ContentValues$1; -Landroid/content/ContentValues-IA; -Landroid/content/ContentValues; -Landroid/content/Context; -Landroid/content/ContextParams$Builder; -Landroid/content/ContextParams-IA; -Landroid/content/ContextParams; -Landroid/content/ContextWrapper; -Landroid/content/CursorLoader; -Landroid/content/DialogInterface$OnCancelListener; -Landroid/content/DialogInterface$OnClickListener; -Landroid/content/DialogInterface$OnDismissListener; -Landroid/content/DialogInterface$OnKeyListener; -Landroid/content/DialogInterface$OnShowListener; -Landroid/content/DialogInterface; -Landroid/content/IClipboard$Stub$Proxy; -Landroid/content/IClipboard$Stub; -Landroid/content/IClipboard; -Landroid/content/IContentProvider; -Landroid/content/IContentService$Stub$Proxy; -Landroid/content/IContentService$Stub; -Landroid/content/IContentService; -Landroid/content/IIntentReceiver$Stub; -Landroid/content/IIntentReceiver; -Landroid/content/IIntentSender$Stub$Proxy; -Landroid/content/IIntentSender$Stub; -Landroid/content/IIntentSender; -Landroid/content/IOnPrimaryClipChangedListener$Stub$Proxy; -Landroid/content/IOnPrimaryClipChangedListener$Stub; -Landroid/content/IOnPrimaryClipChangedListener; -Landroid/content/IRestrictionsManager$Stub$Proxy; -Landroid/content/IRestrictionsManager$Stub; -Landroid/content/IRestrictionsManager; -Landroid/content/ISyncAdapter$Stub$Proxy; -Landroid/content/ISyncAdapter$Stub; -Landroid/content/ISyncAdapter; -Landroid/content/ISyncAdapterUnsyncableAccountCallback$Stub$Proxy; -Landroid/content/ISyncAdapterUnsyncableAccountCallback$Stub; -Landroid/content/ISyncAdapterUnsyncableAccountCallback; -Landroid/content/ISyncContext$Stub$Proxy; -Landroid/content/ISyncContext$Stub; -Landroid/content/ISyncContext; -Landroid/content/ISyncStatusObserver$Stub; -Landroid/content/ISyncStatusObserver; -Landroid/content/Intent$1; -Landroid/content/Intent$CommandOptionHandler; -Landroid/content/Intent$FilterComparison; -Landroid/content/Intent; -Landroid/content/IntentFilter$$ExternalSyntheticLambda0; -Landroid/content/IntentFilter$$ExternalSyntheticLambda2; -Landroid/content/IntentFilter$1; -Landroid/content/IntentFilter$AuthorityEntry; -Landroid/content/IntentFilter$MalformedMimeTypeException; -Landroid/content/IntentFilter; -Landroid/content/IntentSender$1; -Landroid/content/IntentSender$FinishedDispatcher; -Landroid/content/IntentSender$OnFinished; -Landroid/content/IntentSender$SendIntentException; -Landroid/content/IntentSender; -Landroid/content/Loader$ForceLoadContentObserver; -Landroid/content/Loader$OnLoadCanceledListener; -Landroid/content/Loader$OnLoadCompleteListener; -Landroid/content/Loader; -Landroid/content/LocusId$1; -Landroid/content/LocusId; -Landroid/content/LoggingContentInterface; -Landroid/content/MutableContextWrapper; -Landroid/content/OperationApplicationException; -Landroid/content/PeriodicSync$1; -Landroid/content/PeriodicSync-IA; -Landroid/content/PeriodicSync; -Landroid/content/PermissionChecker; -Landroid/content/ReceiverCallNotAllowedException; -Landroid/content/RestrictionEntry$1; -Landroid/content/RestrictionEntry; -Landroid/content/RestrictionsManager; -Landroid/content/SearchRecentSuggestionsProvider$DatabaseHelper; -Landroid/content/SearchRecentSuggestionsProvider; -Landroid/content/ServiceConnection; -Landroid/content/SharedPreferences$Editor; -Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener; -Landroid/content/SharedPreferences; -Landroid/content/SyncAdapterType$1; -Landroid/content/SyncAdapterType; -Landroid/content/SyncAdaptersCache$MySerializer; -Landroid/content/SyncAdaptersCache; -Landroid/content/SyncContext; -Landroid/content/SyncInfo$1; -Landroid/content/SyncInfo; -Landroid/content/SyncRequest$1; -Landroid/content/SyncRequest$Builder; -Landroid/content/SyncRequest; -Landroid/content/SyncResult$1; -Landroid/content/SyncResult; -Landroid/content/SyncStats$1; -Landroid/content/SyncStats; -Landroid/content/SyncStatusInfo$1; -Landroid/content/SyncStatusInfo$Stats; -Landroid/content/SyncStatusInfo; -Landroid/content/SyncStatusObserver; -Landroid/content/UndoManager$UndoState; -Landroid/content/UndoManager; -Landroid/content/UndoOperation; -Landroid/content/UndoOwner; -Landroid/content/UriMatcher; -Landroid/content/UriPermission$1; -Landroid/content/UriPermission; -Landroid/content/UriRelativeFilterGroup; -Landroid/content/integrity/AppIntegrityManager; -Landroid/content/integrity/AtomicFormula$StringAtomicFormula$1; -Landroid/content/integrity/AtomicFormula$StringAtomicFormula; -Landroid/content/integrity/AtomicFormula; -Landroid/content/integrity/CompoundFormula$1; -Landroid/content/integrity/CompoundFormula; -Landroid/content/integrity/IAppIntegrityManager$Stub; -Landroid/content/integrity/IAppIntegrityManager; -Landroid/content/integrity/InstallerAllowedByManifestFormula$1; -Landroid/content/integrity/InstallerAllowedByManifestFormula; -Landroid/content/integrity/IntegrityFormula; -Landroid/content/integrity/IntegrityUtils; -Landroid/content/integrity/Rule$1; -Landroid/content/integrity/Rule; -Landroid/content/om/CriticalOverlayInfo; -Landroid/content/om/IOverlayManager$Stub$Proxy; -Landroid/content/om/IOverlayManager$Stub; -Landroid/content/om/IOverlayManager; -Landroid/content/om/OverlayIdentifier$1; -Landroid/content/om/OverlayIdentifier; -Landroid/content/om/OverlayInfo$1; -Landroid/content/om/OverlayInfo; -Landroid/content/om/OverlayManager; -Landroid/content/om/OverlayableInfo; -Landroid/content/pm/ActivityInfo$1; -Landroid/content/pm/ActivityInfo$WindowLayout; -Landroid/content/pm/ActivityInfo-IA; -Landroid/content/pm/ActivityInfo; -Landroid/content/pm/ActivityPresentationInfo; -Landroid/content/pm/AndroidTestBaseUpdater; -Landroid/content/pm/ApkChecksum$1; -Landroid/content/pm/ApkChecksum; -Landroid/content/pm/ApplicationInfo$1$$ExternalSyntheticLambda0; -Landroid/content/pm/ApplicationInfo$1; -Landroid/content/pm/ApplicationInfo-IA; -Landroid/content/pm/ApplicationInfo; -Landroid/content/pm/ArchivedPackageParcel$1; -Landroid/content/pm/ArchivedPackageParcel; -Landroid/content/pm/Attribution$1; -Landroid/content/pm/Attribution; -Landroid/content/pm/AuxiliaryResolveInfo$AuxiliaryFilter; -Landroid/content/pm/AuxiliaryResolveInfo; -Landroid/content/pm/BaseParceledListSlice$1; -Landroid/content/pm/BaseParceledListSlice; -Landroid/content/pm/ChangedPackages$1; -Landroid/content/pm/ChangedPackages; -Landroid/content/pm/Checksum$1; -Landroid/content/pm/Checksum$Type; -Landroid/content/pm/Checksum; -Landroid/content/pm/ComponentInfo; -Landroid/content/pm/ConfigurationInfo$1; -Landroid/content/pm/ConfigurationInfo-IA; -Landroid/content/pm/ConfigurationInfo; -Landroid/content/pm/CrossProfileApps; -Landroid/content/pm/CrossProfileAppsInternal; -Landroid/content/pm/DataLoaderManager; -Landroid/content/pm/DataLoaderParams; -Landroid/content/pm/DataLoaderParamsParcel$1; -Landroid/content/pm/DataLoaderParamsParcel; -Landroid/content/pm/FallbackCategoryProvider; -Landroid/content/pm/FeatureGroupInfo$1; -Landroid/content/pm/FeatureGroupInfo; -Landroid/content/pm/FeatureInfo$1; -Landroid/content/pm/FeatureInfo-IA; -Landroid/content/pm/FeatureInfo; -Landroid/content/pm/FileSystemControlParcel$1; -Landroid/content/pm/FileSystemControlParcel; -Landroid/content/pm/ICrossProfileApps$Stub$Proxy; -Landroid/content/pm/ICrossProfileApps$Stub; -Landroid/content/pm/ICrossProfileApps; -Landroid/content/pm/IDataLoader; -Landroid/content/pm/IDataLoaderManager$Stub$Proxy; -Landroid/content/pm/IDataLoaderManager$Stub; -Landroid/content/pm/IDataLoaderManager; -Landroid/content/pm/IDataLoaderStatusListener$Stub$Proxy; -Landroid/content/pm/IDataLoaderStatusListener$Stub; -Landroid/content/pm/IDataLoaderStatusListener; -Landroid/content/pm/IDexModuleRegisterCallback$Stub$Proxy; -Landroid/content/pm/IDexModuleRegisterCallback$Stub; -Landroid/content/pm/IDexModuleRegisterCallback; -Landroid/content/pm/ILauncherApps$Stub$Proxy; -Landroid/content/pm/ILauncherApps$Stub; -Landroid/content/pm/ILauncherApps; -Landroid/content/pm/IOnAppsChangedListener$Stub; -Landroid/content/pm/IOnAppsChangedListener; -Landroid/content/pm/IOnChecksumsReadyListener$Stub$Proxy; -Landroid/content/pm/IOnChecksumsReadyListener$Stub; -Landroid/content/pm/IOnChecksumsReadyListener; -Landroid/content/pm/IOtaDexopt$Stub; -Landroid/content/pm/IOtaDexopt; -Landroid/content/pm/IPackageDataObserver$Stub$Proxy; -Landroid/content/pm/IPackageDataObserver$Stub; -Landroid/content/pm/IPackageDataObserver; -Landroid/content/pm/IPackageDeleteObserver$Stub$Proxy; -Landroid/content/pm/IPackageDeleteObserver$Stub; -Landroid/content/pm/IPackageDeleteObserver2$Stub$Proxy; -Landroid/content/pm/IPackageDeleteObserver2$Stub; -Landroid/content/pm/IPackageDeleteObserver2; -Landroid/content/pm/IPackageDeleteObserver; -Landroid/content/pm/IPackageInstallObserver2$Stub; -Landroid/content/pm/IPackageInstallObserver2; -Landroid/content/pm/IPackageInstaller$Stub$Proxy; -Landroid/content/pm/IPackageInstaller$Stub; -Landroid/content/pm/IPackageInstaller; -Landroid/content/pm/IPackageInstallerCallback$Stub$Proxy; -Landroid/content/pm/IPackageInstallerCallback$Stub; -Landroid/content/pm/IPackageInstallerCallback; -Landroid/content/pm/IPackageInstallerSession$Stub$Proxy; -Landroid/content/pm/IPackageInstallerSession$Stub; -Landroid/content/pm/IPackageInstallerSession; -Landroid/content/pm/IPackageManager$Stub$$ExternalSyntheticLambda0; -Landroid/content/pm/IPackageManager$Stub$$ExternalSyntheticLambda1; -Landroid/content/pm/IPackageManager$Stub$Proxy$$ExternalSyntheticLambda0; -Landroid/content/pm/IPackageManager$Stub$Proxy$$ExternalSyntheticLambda1; -Landroid/content/pm/IPackageManager$Stub$Proxy; -Landroid/content/pm/IPackageManager$Stub; -Landroid/content/pm/IPackageManager; -Landroid/content/pm/IPackageManagerNative$Stub; -Landroid/content/pm/IPackageManagerNative; -Landroid/content/pm/IPackageMoveObserver$Stub$Proxy; -Landroid/content/pm/IPackageMoveObserver$Stub; -Landroid/content/pm/IPackageMoveObserver; -Landroid/content/pm/IPackageStatsObserver$Stub$Proxy; -Landroid/content/pm/IPackageStatsObserver$Stub; -Landroid/content/pm/IPackageStatsObserver; -Landroid/content/pm/IShortcutChangeCallback$Stub$Proxy; -Landroid/content/pm/IShortcutChangeCallback$Stub; -Landroid/content/pm/IShortcutChangeCallback; -Landroid/content/pm/IShortcutService$Stub$Proxy; -Landroid/content/pm/IShortcutService$Stub; -Landroid/content/pm/IShortcutService; -Landroid/content/pm/IncrementalStatesInfo$1; -Landroid/content/pm/IncrementalStatesInfo; -Landroid/content/pm/InstallSourceInfo$1; -Landroid/content/pm/InstallSourceInfo; -Landroid/content/pm/InstantAppIntentFilter$1; -Landroid/content/pm/InstantAppIntentFilter; -Landroid/content/pm/InstantAppRequest; -Landroid/content/pm/InstantAppRequestInfo$1; -Landroid/content/pm/InstantAppRequestInfo; -Landroid/content/pm/InstantAppResolveInfo$1; -Landroid/content/pm/InstantAppResolveInfo$InstantAppDigest$1; -Landroid/content/pm/InstantAppResolveInfo$InstantAppDigest; -Landroid/content/pm/InstantAppResolveInfo; -Landroid/content/pm/InstrumentationInfo$1; -Landroid/content/pm/InstrumentationInfo; -Landroid/content/pm/IntentFilterVerificationInfo$1; -Landroid/content/pm/IntentFilterVerificationInfo; -Landroid/content/pm/KeySet$1; -Landroid/content/pm/KeySet; -Landroid/content/pm/LauncherActivityInfo; -Landroid/content/pm/LauncherActivityInfoInternal$1; -Landroid/content/pm/LauncherActivityInfoInternal; -Landroid/content/pm/LauncherApps$1; -Landroid/content/pm/LauncherApps$AppUsageLimit$1; -Landroid/content/pm/LauncherApps$AppUsageLimit; -Landroid/content/pm/LauncherApps$Callback; -Landroid/content/pm/LauncherApps$CallbackMessageHandler$CallbackInfo-IA; -Landroid/content/pm/LauncherApps$CallbackMessageHandler$CallbackInfo; -Landroid/content/pm/LauncherApps$CallbackMessageHandler; -Landroid/content/pm/LauncherApps$ShortcutQuery$QueryFlags; -Landroid/content/pm/LauncherApps$ShortcutQuery; -Landroid/content/pm/LauncherApps; -Landroid/content/pm/ModuleInfo$1; -Landroid/content/pm/ModuleInfo-IA; -Landroid/content/pm/ModuleInfo; -Landroid/content/pm/PackageInfo$1; -Landroid/content/pm/PackageInfo-IA; -Landroid/content/pm/PackageInfo; -Landroid/content/pm/PackageInfoLite$1; -Landroid/content/pm/PackageInfoLite; -Landroid/content/pm/PackageInstaller$Session; -Landroid/content/pm/PackageInstaller$SessionCallback; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate$$ExternalSyntheticLambda0; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate$$ExternalSyntheticLambda1; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate$$ExternalSyntheticLambda2; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate$$ExternalSyntheticLambda3; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate$$ExternalSyntheticLambda4; -Landroid/content/pm/PackageInstaller$SessionCallbackDelegate; -Landroid/content/pm/PackageInstaller$SessionInfo$1; -Landroid/content/pm/PackageInstaller$SessionInfo; -Landroid/content/pm/PackageInstaller$SessionParams$1; -Landroid/content/pm/PackageInstaller$SessionParams; -Landroid/content/pm/PackageInstaller; -Landroid/content/pm/PackageItemInfo; -Landroid/content/pm/PackageManager$1; -Landroid/content/pm/PackageManager$2; -Landroid/content/pm/PackageManager$3; -Landroid/content/pm/PackageManager$ApplicationInfoFlags; -Landroid/content/pm/PackageManager$ApplicationInfoQuery; -Landroid/content/pm/PackageManager$ComponentEnabledSetting$1; -Landroid/content/pm/PackageManager$ComponentEnabledSetting; -Landroid/content/pm/PackageManager$ComponentInfoFlags; -Landroid/content/pm/PackageManager$Flags; -Landroid/content/pm/PackageManager$MoveCallback; -Landroid/content/pm/PackageManager$NameNotFoundException; -Landroid/content/pm/PackageManager$OnChecksumsReadyListener; -Landroid/content/pm/PackageManager$OnPermissionsChangedListener; -Landroid/content/pm/PackageManager$PackageInfoFlags; -Landroid/content/pm/PackageManager$PackageInfoQuery; -Landroid/content/pm/PackageManager$Property$1; -Landroid/content/pm/PackageManager$Property; -Landroid/content/pm/PackageManager$ResolveInfoFlags; -Landroid/content/pm/PackageManager; -Landroid/content/pm/PackageParser$Activity$1; -Landroid/content/pm/PackageParser$Activity-IA; -Landroid/content/pm/PackageParser$Activity; -Landroid/content/pm/PackageParser$ActivityIntentInfo; -Landroid/content/pm/PackageParser$ApkLite; -Landroid/content/pm/PackageParser$CachedComponentArgs; -Landroid/content/pm/PackageParser$Callback; -Landroid/content/pm/PackageParser$CallbackImpl; -Landroid/content/pm/PackageParser$Component; -Landroid/content/pm/PackageParser$DefaultSplitAssetLoader; -Landroid/content/pm/PackageParser$Instrumentation$1; -Landroid/content/pm/PackageParser$Instrumentation; -Landroid/content/pm/PackageParser$IntentInfo; -Landroid/content/pm/PackageParser$NewPermissionInfo; -Landroid/content/pm/PackageParser$Package$1; -Landroid/content/pm/PackageParser$Package; -Landroid/content/pm/PackageParser$PackageLite; -Landroid/content/pm/PackageParser$PackageParserException; -Landroid/content/pm/PackageParser$ParseComponentArgs; -Landroid/content/pm/PackageParser$ParsePackageItemArgs; -Landroid/content/pm/PackageParser$Permission$1; -Landroid/content/pm/PackageParser$Permission-IA; -Landroid/content/pm/PackageParser$Permission; -Landroid/content/pm/PackageParser$PermissionGroup$1; -Landroid/content/pm/PackageParser$PermissionGroup; -Landroid/content/pm/PackageParser$Provider$1; -Landroid/content/pm/PackageParser$Provider-IA; -Landroid/content/pm/PackageParser$Provider; -Landroid/content/pm/PackageParser$ProviderIntentInfo; -Landroid/content/pm/PackageParser$Service$1; -Landroid/content/pm/PackageParser$Service-IA; -Landroid/content/pm/PackageParser$Service; -Landroid/content/pm/PackageParser$ServiceIntentInfo; -Landroid/content/pm/PackageParser$SigningDetails$1; -Landroid/content/pm/PackageParser$SigningDetails$Builder; -Landroid/content/pm/PackageParser$SigningDetails; -Landroid/content/pm/PackageParser$SplitAssetLoader; -Landroid/content/pm/PackageParser$SplitDependencyLoader$IllegalDependencyException; -Landroid/content/pm/PackageParser$SplitNameComparator; -Landroid/content/pm/PackageParser; -Landroid/content/pm/PackageParserCacheHelper$ReadHelper; -Landroid/content/pm/PackageParserCacheHelper$WriteHelper; -Landroid/content/pm/PackagePartitions$DeferredCanonicalFile; -Landroid/content/pm/PackagePartitions$SystemPartition; -Landroid/content/pm/PackagePartitions; -Landroid/content/pm/PackageStats$1; -Landroid/content/pm/PackageStats; -Landroid/content/pm/ParceledListSlice$1; -Landroid/content/pm/ParceledListSlice-IA; -Landroid/content/pm/ParceledListSlice; -Landroid/content/pm/PathPermission$1; -Landroid/content/pm/PathPermission; -Landroid/content/pm/PermissionGroupInfo$1; -Landroid/content/pm/PermissionGroupInfo; -Landroid/content/pm/PermissionInfo$1; -Landroid/content/pm/PermissionInfo-IA; -Landroid/content/pm/PermissionInfo; -Landroid/content/pm/ProviderInfo$1; -Landroid/content/pm/ProviderInfo-IA; -Landroid/content/pm/ProviderInfo; -Landroid/content/pm/ProviderInfoList$1; -Landroid/content/pm/ProviderInfoList-IA; -Landroid/content/pm/ProviderInfoList; -Landroid/content/pm/RegisteredServicesCache$1; -Landroid/content/pm/RegisteredServicesCache$2; -Landroid/content/pm/RegisteredServicesCache$3; -Landroid/content/pm/RegisteredServicesCache$ServiceInfo; -Landroid/content/pm/RegisteredServicesCache$UserServices; -Landroid/content/pm/RegisteredServicesCache; -Landroid/content/pm/RegisteredServicesCacheListener; -Landroid/content/pm/ResolveInfo$1; -Landroid/content/pm/ResolveInfo-IA; -Landroid/content/pm/ResolveInfo; -Landroid/content/pm/ServiceInfo$1; -Landroid/content/pm/ServiceInfo-IA; -Landroid/content/pm/ServiceInfo; -Landroid/content/pm/SharedLibraryInfo$1; -Landroid/content/pm/SharedLibraryInfo-IA; -Landroid/content/pm/SharedLibraryInfo; -Landroid/content/pm/ShortcutInfo$$ExternalSyntheticLambda0; -Landroid/content/pm/ShortcutInfo$$ExternalSyntheticLambda1; -Landroid/content/pm/ShortcutInfo$1; -Landroid/content/pm/ShortcutInfo$Builder; -Landroid/content/pm/ShortcutInfo-IA; -Landroid/content/pm/ShortcutInfo; -Landroid/content/pm/ShortcutManager$ShareShortcutInfo$1; -Landroid/content/pm/ShortcutManager$ShareShortcutInfo; -Landroid/content/pm/ShortcutManager; -Landroid/content/pm/ShortcutQueryWrapper$1; -Landroid/content/pm/ShortcutQueryWrapper; -Landroid/content/pm/ShortcutServiceInternal$ShortcutChangeListener; -Landroid/content/pm/ShortcutServiceInternal; -Landroid/content/pm/Signature$1; -Landroid/content/pm/Signature-IA; -Landroid/content/pm/Signature; -Landroid/content/pm/SigningDetails$1; -Landroid/content/pm/SigningDetails; -Landroid/content/pm/SigningInfo$1; -Landroid/content/pm/SigningInfo-IA; -Landroid/content/pm/SigningInfo; -Landroid/content/pm/StringParceledListSlice$1; -Landroid/content/pm/StringParceledListSlice-IA; -Landroid/content/pm/StringParceledListSlice; -Landroid/content/pm/SuspendDialogInfo$1; -Landroid/content/pm/SuspendDialogInfo$Builder; -Landroid/content/pm/SuspendDialogInfo; -Landroid/content/pm/UserInfo$1; -Landroid/content/pm/UserInfo-IA; -Landroid/content/pm/UserInfo; -Landroid/content/pm/UserPackage; -Landroid/content/pm/UserProperties$1; -Landroid/content/pm/UserProperties; -Landroid/content/pm/VerifierDeviceIdentity$1; -Landroid/content/pm/VerifierDeviceIdentity; -Landroid/content/pm/VerifierInfo$1; -Landroid/content/pm/VerifierInfo; -Landroid/content/pm/VersionedPackage$1; -Landroid/content/pm/VersionedPackage-IA; -Landroid/content/pm/VersionedPackage; -Landroid/content/pm/XmlSerializerAndParser; -Landroid/content/pm/dex/ArtManager$SnapshotRuntimeProfileCallbackDelegate; -Landroid/content/pm/dex/ArtManager; -Landroid/content/pm/dex/ArtManagerInternal; -Landroid/content/pm/dex/DexMetadataHelper; -Landroid/content/pm/dex/IArtManager$Stub$Proxy; -Landroid/content/pm/dex/IArtManager$Stub; -Landroid/content/pm/dex/IArtManager; -Landroid/content/pm/dex/ISnapshotRuntimeProfileCallback$Stub$Proxy; -Landroid/content/pm/dex/ISnapshotRuntimeProfileCallback$Stub; -Landroid/content/pm/dex/ISnapshotRuntimeProfileCallback; -Landroid/content/pm/dex/PackageOptimizationInfo; -Landroid/content/pm/overlay/OverlayPaths; -Landroid/content/pm/parsing/ApkLite; -Landroid/content/pm/parsing/ApkLiteParseUtils$SplitNameComparator; -Landroid/content/pm/parsing/ApkLiteParseUtils; -Landroid/content/pm/parsing/FrameworkParsingPackageUtils; -Landroid/content/pm/parsing/PackageLite; -Landroid/content/pm/parsing/result/ParseInput$Callback; -Landroid/content/pm/parsing/result/ParseInput; -Landroid/content/pm/parsing/result/ParseResult; -Landroid/content/pm/parsing/result/ParseTypeImpl$$ExternalSyntheticLambda0; -Landroid/content/pm/parsing/result/ParseTypeImpl$$ExternalSyntheticLambda1; -Landroid/content/pm/parsing/result/ParseTypeImpl; -Landroid/content/pm/permission/SplitPermissionInfoParcelable$1; -Landroid/content/pm/permission/SplitPermissionInfoParcelable; -Landroid/content/pm/pkg/FrameworkPackageUserState; -Landroid/content/pm/pkg/FrameworkPackageUserStateDefault; -Landroid/content/pm/split/SplitDependencyLoader$IllegalDependencyException; -Landroid/content/pm/split/SplitDependencyLoader; -Landroid/content/pm/verify/domain/DomainSet$1; -Landroid/content/pm/verify/domain/DomainSet; -Landroid/content/pm/verify/domain/DomainVerificationInfo$1; -Landroid/content/pm/verify/domain/DomainVerificationInfo; -Landroid/content/pm/verify/domain/DomainVerificationManager; -Landroid/content/pm/verify/domain/DomainVerificationUserState$1; -Landroid/content/pm/verify/domain/DomainVerificationUserState; -Landroid/content/pm/verify/domain/DomainVerificationUtils; -Landroid/content/pm/verify/domain/IDomainVerificationManager$Stub; -Landroid/content/pm/verify/domain/IDomainVerificationManager; -Landroid/content/res/ApkAssets; -Landroid/content/res/AssetFileDescriptor$1; -Landroid/content/res/AssetFileDescriptor$AutoCloseInputStream; -Landroid/content/res/AssetFileDescriptor; -Landroid/content/res/AssetManager$AssetInputStream-IA; -Landroid/content/res/AssetManager$AssetInputStream; -Landroid/content/res/AssetManager$Builder; -Landroid/content/res/AssetManager-IA; -Landroid/content/res/AssetManager; -Landroid/content/res/ColorStateList$1; -Landroid/content/res/ColorStateList$ColorStateListFactory; -Landroid/content/res/ColorStateList; -Landroid/content/res/CompatResources; -Landroid/content/res/CompatibilityInfo$1; -Landroid/content/res/CompatibilityInfo$2; -Landroid/content/res/CompatibilityInfo$Translator; -Landroid/content/res/CompatibilityInfo-IA; -Landroid/content/res/CompatibilityInfo; -Landroid/content/res/ComplexColor; -Landroid/content/res/Configuration$1; -Landroid/content/res/Configuration-IA; -Landroid/content/res/Configuration; -Landroid/content/res/ConfigurationBoundResourceCache; -Landroid/content/res/ConstantState; -Landroid/content/res/DrawableCache; -Landroid/content/res/FeatureFlags; -Landroid/content/res/FeatureFlagsImpl; -Landroid/content/res/Flags; -Landroid/content/res/FontResourcesParser$FamilyResourceEntry; -Landroid/content/res/FontResourcesParser$FontFamilyFilesResourceEntry; -Landroid/content/res/FontResourcesParser$FontFileResourceEntry; -Landroid/content/res/FontResourcesParser$ProviderResourceEntry; -Landroid/content/res/FontResourcesParser; -Landroid/content/res/FontScaleConverter; -Landroid/content/res/FontScaleConverterFactory; -Landroid/content/res/FontScaleConverterImpl; -Landroid/content/res/GradientColor$GradientColorFactory; -Landroid/content/res/GradientColor; -Landroid/content/res/ObbInfo$1; -Landroid/content/res/ObbInfo; -Landroid/content/res/ObbScanner; -Landroid/content/res/ResourceId; -Landroid/content/res/ResourceTimer$Config; -Landroid/content/res/ResourceTimer$Timer; -Landroid/content/res/ResourceTimer; -Landroid/content/res/Resources$$ExternalSyntheticLambda0; -Landroid/content/res/Resources$$ExternalSyntheticLambda1; -Landroid/content/res/Resources$AssetManagerUpdateHandler; -Landroid/content/res/Resources$NotFoundException; -Landroid/content/res/Resources$Theme-IA; -Landroid/content/res/Resources$Theme; -Landroid/content/res/Resources$ThemeKey; -Landroid/content/res/Resources$UpdateCallbacks; -Landroid/content/res/Resources; -Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda0; -Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda1; -Landroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2; -Landroid/content/res/ResourcesImpl$LookupStack-IA; -Landroid/content/res/ResourcesImpl$LookupStack; -Landroid/content/res/ResourcesImpl$ThemeImpl; -Landroid/content/res/ResourcesImpl; -Landroid/content/res/ResourcesKey; -Landroid/content/res/StringBlock$Height; -Landroid/content/res/StringBlock$StyleIDs; -Landroid/content/res/StringBlock; -Landroid/content/res/ThemedResourceCache; -Landroid/content/res/TypedArray; -Landroid/content/res/Validator; -Landroid/content/res/XmlBlock; -Landroid/content/res/XmlResourceParser; -Landroid/content/res/loader/AssetsProvider; -Landroid/content/res/loader/ResourcesLoader$UpdateCallbacks; -Landroid/content/res/loader/ResourcesLoader; -Landroid/content/res/loader/ResourcesProvider; -Landroid/content/rollback/IRollbackManager$Stub$Proxy; -Landroid/content/rollback/IRollbackManager$Stub; -Landroid/content/rollback/IRollbackManager; -Landroid/content/rollback/PackageRollbackInfo$1; -Landroid/content/rollback/PackageRollbackInfo; -Landroid/content/rollback/RollbackInfo$1; -Landroid/content/rollback/RollbackInfo; -Landroid/content/rollback/RollbackManager; -Landroid/content/rollback/RollbackManagerFrameworkInitializer$$ExternalSyntheticLambda0; -Landroid/content/rollback/RollbackManagerFrameworkInitializer; -Landroid/content/type/DefaultMimeMapFactory$$ExternalSyntheticLambda0; -Landroid/content/type/DefaultMimeMapFactory; -Landroid/credentials/CredentialManager; -Landroid/credentials/GetCredentialResponse$1; -Landroid/credentials/GetCredentialResponse; -Landroid/database/AbstractCursor$SelfContentObserver; -Landroid/database/AbstractCursor; -Landroid/database/AbstractWindowedCursor; -Landroid/database/BulkCursorDescriptor$1; -Landroid/database/BulkCursorDescriptor; -Landroid/database/BulkCursorNative; -Landroid/database/BulkCursorProxy; -Landroid/database/BulkCursorToCursorAdaptor; -Landroid/database/CharArrayBuffer; -Landroid/database/ContentObservable; -Landroid/database/ContentObserver$$ExternalSyntheticLambda0; -Landroid/database/ContentObserver$$ExternalSyntheticLambda1; -Landroid/database/ContentObserver; -Landroid/database/CrossProcessCursor; -Landroid/database/CrossProcessCursorWrapper; -Landroid/database/Cursor; -Landroid/database/CursorIndexOutOfBoundsException; -Landroid/database/CursorToBulkCursorAdaptor$ContentObserverProxy; -Landroid/database/CursorToBulkCursorAdaptor; -Landroid/database/CursorWindow$1; -Landroid/database/CursorWindow-IA; -Landroid/database/CursorWindow; -Landroid/database/CursorWrapper; -Landroid/database/DataSetObservable; -Landroid/database/DataSetObserver; -Landroid/database/DatabaseErrorHandler; -Landroid/database/DatabaseUtils$InsertHelper; -Landroid/database/DatabaseUtils; -Landroid/database/DefaultDatabaseErrorHandler; -Landroid/database/IBulkCursor; -Landroid/database/IContentObserver$Stub; -Landroid/database/IContentObserver; -Landroid/database/MatrixCursor$RowBuilder; -Landroid/database/MatrixCursor; -Landroid/database/MergeCursor$1; -Landroid/database/MergeCursor; -Landroid/database/Observable; -Landroid/database/SQLException; -Landroid/database/StaleDataException; -Landroid/database/sqlite/DatabaseObjectNotClosedException; -Landroid/database/sqlite/FeatureFlags; -Landroid/database/sqlite/FeatureFlagsImpl; -Landroid/database/sqlite/Flags; -Landroid/database/sqlite/SQLiteAbortException; -Landroid/database/sqlite/SQLiteAccessPermException; -Landroid/database/sqlite/SQLiteBindOrColumnIndexOutOfRangeException; -Landroid/database/sqlite/SQLiteBlobTooBigException; -Landroid/database/sqlite/SQLiteCantOpenDatabaseException; -Landroid/database/sqlite/SQLiteClosable; -Landroid/database/sqlite/SQLiteCompatibilityWalFlags; -Landroid/database/sqlite/SQLiteConnection$Operation-IA; -Landroid/database/sqlite/SQLiteConnection$Operation; -Landroid/database/sqlite/SQLiteConnection$OperationLog; -Landroid/database/sqlite/SQLiteConnection$PreparedStatement; -Landroid/database/sqlite/SQLiteConnection$PreparedStatementCache; -Landroid/database/sqlite/SQLiteConnection; -Landroid/database/sqlite/SQLiteConnectionPool$1; -Landroid/database/sqlite/SQLiteConnectionPool$AcquiredConnectionStatus; -Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter-IA; -Landroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter; -Landroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler; -Landroid/database/sqlite/SQLiteConnectionPool; -Landroid/database/sqlite/SQLiteConstraintException; -Landroid/database/sqlite/SQLiteCursorDriver; -Landroid/database/sqlite/SQLiteCustomFunction; -Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0; -Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda1; -Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda2; -Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda3; -Landroid/database/sqlite/SQLiteDatabase$1; -Landroid/database/sqlite/SQLiteDatabase$CursorFactory; -Landroid/database/sqlite/SQLiteDatabase$OpenParams$Builder; -Landroid/database/sqlite/SQLiteDatabase$OpenParams-IA; -Landroid/database/sqlite/SQLiteDatabase$OpenParams; -Landroid/database/sqlite/SQLiteDatabase; -Landroid/database/sqlite/SQLiteDatabaseConfiguration; -Landroid/database/sqlite/SQLiteDatabaseCorruptException; -Landroid/database/sqlite/SQLiteDatabaseLockedException; -Landroid/database/sqlite/SQLiteDatatypeMismatchException; -Landroid/database/sqlite/SQLiteDebug$DbStats; -Landroid/database/sqlite/SQLiteDebug$NoPreloadHolder; -Landroid/database/sqlite/SQLiteDebug$PagerStats; -Landroid/database/sqlite/SQLiteDebug; -Landroid/database/sqlite/SQLiteDirectCursorDriver; -Landroid/database/sqlite/SQLiteDiskIOException; -Landroid/database/sqlite/SQLiteDoneException; -Landroid/database/sqlite/SQLiteException; -Landroid/database/sqlite/SQLiteFullException; -Landroid/database/sqlite/SQLiteGlobal; -Landroid/database/sqlite/SQLiteMisuseException; -Landroid/database/sqlite/SQLiteOpenHelper; -Landroid/database/sqlite/SQLiteOutOfMemoryException; -Landroid/database/sqlite/SQLiteProgram; -Landroid/database/sqlite/SQLiteQuery; -Landroid/database/sqlite/SQLiteQueryBuilder; -Landroid/database/sqlite/SQLiteRawStatement; -Landroid/database/sqlite/SQLiteReadOnlyDatabaseException; -Landroid/database/sqlite/SQLiteSession$Transaction-IA; -Landroid/database/sqlite/SQLiteSession$Transaction; -Landroid/database/sqlite/SQLiteSession; -Landroid/database/sqlite/SQLiteStatement; -Landroid/database/sqlite/SQLiteStatementInfo; -Landroid/database/sqlite/SQLiteTableLockedException; -Landroid/database/sqlite/SQLiteTokenizer; -Landroid/database/sqlite/SQLiteTransactionListener; -Landroid/database/sqlite/SqliteWrapper; -Landroid/ddm/DdmHandle; -Landroid/ddm/DdmHandleAppName$Names-IA; -Landroid/ddm/DdmHandleAppName$Names; -Landroid/ddm/DdmHandleAppName; -Landroid/ddm/DdmHandleExit; -Landroid/ddm/DdmHandleHeap; -Landroid/ddm/DdmHandleHello; -Landroid/ddm/DdmHandleNativeHeap; -Landroid/ddm/DdmHandleProfiling; -Landroid/ddm/DdmHandleViewDebug; -Landroid/ddm/DdmRegister; -Landroid/debug/AdbManager; -Landroid/debug/AdbManagerInternal; -Landroid/debug/IAdbManager$Stub$Proxy; -Landroid/debug/IAdbManager$Stub; -Landroid/debug/IAdbManager; -Landroid/debug/IAdbTransport$Stub; -Landroid/debug/IAdbTransport; -Landroid/graphics/BLASTBufferQueue$TransactionHangCallback; -Landroid/graphics/BLASTBufferQueue; -Landroid/graphics/BaseCanvas; -Landroid/graphics/BaseRecordingCanvas; -Landroid/graphics/Bitmap$1; -Landroid/graphics/Bitmap$CompressFormat; -Landroid/graphics/Bitmap$Config; -Landroid/graphics/Bitmap; -Landroid/graphics/BitmapFactory$Options; -Landroid/graphics/BitmapFactory; -Landroid/graphics/BitmapRegionDecoder; -Landroid/graphics/BitmapShader; -Landroid/graphics/BlendMode; -Landroid/graphics/BlendModeColorFilter; -Landroid/graphics/BlurMaskFilter$Blur; -Landroid/graphics/BlurMaskFilter; -Landroid/graphics/Camera; -Landroid/graphics/Canvas$EdgeType; -Landroid/graphics/Canvas$NoImagePreloadHolder; -Landroid/graphics/Canvas; -Landroid/graphics/CanvasProperty; -Landroid/graphics/Color; -Landroid/graphics/ColorFilter$NoImagePreloadHolder; -Landroid/graphics/ColorFilter; -Landroid/graphics/ColorMatrix; -Landroid/graphics/ColorMatrixColorFilter; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda0; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda1; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda2; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda3; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda4; -Landroid/graphics/ColorSpace$$ExternalSyntheticLambda5; -Landroid/graphics/ColorSpace$Adaptation; -Landroid/graphics/ColorSpace$Connector; -Landroid/graphics/ColorSpace$Lab; -Landroid/graphics/ColorSpace$Model; -Landroid/graphics/ColorSpace$Named; -Landroid/graphics/ColorSpace$RenderIntent; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda0; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda1; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda2; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda3; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda4; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda5; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda6; -Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda9; -Landroid/graphics/ColorSpace$Rgb$NoImagePreloadHolder; -Landroid/graphics/ColorSpace$Rgb$TransferParameters; -Landroid/graphics/ColorSpace$Rgb-IA; -Landroid/graphics/ColorSpace$Rgb; -Landroid/graphics/ColorSpace$Xyz; -Landroid/graphics/ColorSpace; -Landroid/graphics/Compatibility; -Landroid/graphics/ComposePathEffect; -Landroid/graphics/ComposeShader; -Landroid/graphics/CornerPathEffect; -Landroid/graphics/DashPathEffect; -Landroid/graphics/DiscretePathEffect; -Landroid/graphics/DrawFilter; -Landroid/graphics/EmbossMaskFilter; -Landroid/graphics/FontFamily; -Landroid/graphics/FontListParser; -Landroid/graphics/FrameInfo; -Landroid/graphics/Gainmap$1; -Landroid/graphics/Gainmap; -Landroid/graphics/GraphicBuffer$1; -Landroid/graphics/GraphicBuffer; -Landroid/graphics/GraphicsProtos; -Landroid/graphics/GraphicsStatsService$1; -Landroid/graphics/GraphicsStatsService$ActiveBuffer; -Landroid/graphics/GraphicsStatsService$BufferInfo; -Landroid/graphics/GraphicsStatsService$HistoricalBuffer; -Landroid/graphics/GraphicsStatsService; -Landroid/graphics/HardwareBufferRenderer; -Landroid/graphics/HardwareRenderer$ASurfaceTransactionCallback; -Landroid/graphics/HardwareRenderer$CopyRequest; -Landroid/graphics/HardwareRenderer$DestroyContextRunnable; -Landroid/graphics/HardwareRenderer$FrameCommitCallback; -Landroid/graphics/HardwareRenderer$FrameCompleteCallback; -Landroid/graphics/HardwareRenderer$FrameDrawingCallback; -Landroid/graphics/HardwareRenderer$FrameRenderRequest-IA; -Landroid/graphics/HardwareRenderer$FrameRenderRequest; -Landroid/graphics/HardwareRenderer$PrepareSurfaceControlForWebviewCallback; -Landroid/graphics/HardwareRenderer$ProcessInitializer$1; -Landroid/graphics/HardwareRenderer$ProcessInitializer; -Landroid/graphics/HardwareRenderer; -Landroid/graphics/HardwareRendererObserver$$ExternalSyntheticLambda0; -Landroid/graphics/HardwareRendererObserver$OnFrameMetricsAvailableListener; -Landroid/graphics/HardwareRendererObserver; -Landroid/graphics/ImageDecoder$AssetInputStreamSource; -Landroid/graphics/ImageDecoder$ByteArraySource; -Landroid/graphics/ImageDecoder$DecodeException; -Landroid/graphics/ImageDecoder$ImageDecoderSourceTrace; -Landroid/graphics/ImageDecoder$ImageInfo-IA; -Landroid/graphics/ImageDecoder$ImageInfo; -Landroid/graphics/ImageDecoder$InputStreamSource; -Landroid/graphics/ImageDecoder$OnHeaderDecodedListener; -Landroid/graphics/ImageDecoder$Source-IA; -Landroid/graphics/ImageDecoder$Source; -Landroid/graphics/ImageDecoder; -Landroid/graphics/ImageFormat; -Landroid/graphics/Insets$1; -Landroid/graphics/Insets-IA; -Landroid/graphics/Insets; -Landroid/graphics/Interpolator$Result; -Landroid/graphics/Interpolator; -Landroid/graphics/LeakyTypefaceStorage; -Landroid/graphics/LightingColorFilter; -Landroid/graphics/LinearGradient; -Landroid/graphics/MaskFilter; -Landroid/graphics/Matrix$1; -Landroid/graphics/Matrix$ExtraNatives; -Landroid/graphics/Matrix$NoImagePreloadHolder; -Landroid/graphics/Matrix$ScaleToFit; -Landroid/graphics/Matrix; -Landroid/graphics/Mesh; -Landroid/graphics/MeshSpecification$Attribute; -Landroid/graphics/MeshSpecification$Varying; -Landroid/graphics/MeshSpecification; -Landroid/graphics/Movie; -Landroid/graphics/NinePatch$InsetStruct; -Landroid/graphics/NinePatch; -Landroid/graphics/Outline; -Landroid/graphics/Paint$Align; -Landroid/graphics/Paint$Cap; -Landroid/graphics/Paint$FontMetrics; -Landroid/graphics/Paint$FontMetricsInt; -Landroid/graphics/Paint$Join; -Landroid/graphics/Paint$NoImagePreloadHolder; -Landroid/graphics/Paint$RunInfo; -Landroid/graphics/Paint$Style; -Landroid/graphics/Paint; -Landroid/graphics/PaintFlagsDrawFilter; -Landroid/graphics/Path$Direction; -Landroid/graphics/Path$FillType; -Landroid/graphics/Path$NoImagePreloadHolder; -Landroid/graphics/Path$Op; -Landroid/graphics/Path; -Landroid/graphics/PathDashPathEffect; -Landroid/graphics/PathEffect; -Landroid/graphics/PathIterator; -Landroid/graphics/PathMeasure; -Landroid/graphics/Picture$PictureCanvas; -Landroid/graphics/Picture; -Landroid/graphics/PixelFormat; -Landroid/graphics/Point$1; -Landroid/graphics/Point; -Landroid/graphics/PointF$1; -Landroid/graphics/PointF; -Landroid/graphics/PorterDuff$Mode; -Landroid/graphics/PorterDuff; -Landroid/graphics/PorterDuffColorFilter; -Landroid/graphics/PorterDuffXfermode; -Landroid/graphics/PostProcessor; -Landroid/graphics/RadialGradient; -Landroid/graphics/RecordingCanvas; -Landroid/graphics/Rect$1; -Landroid/graphics/Rect$UnflattenHelper; -Landroid/graphics/Rect; -Landroid/graphics/RectF$1; -Landroid/graphics/RectF; -Landroid/graphics/Region$1; -Landroid/graphics/Region$Op; -Landroid/graphics/Region; -Landroid/graphics/RegionIterator; -Landroid/graphics/RenderEffect$RenderEffectHolder; -Landroid/graphics/RenderEffect; -Landroid/graphics/RenderNode$AnimationHost; -Landroid/graphics/RenderNode$CompositePositionUpdateListener; -Landroid/graphics/RenderNode$NoImagePreloadHolder; -Landroid/graphics/RenderNode$PositionUpdateListener; -Landroid/graphics/RenderNode; -Landroid/graphics/RuntimeShader$NoImagePreloadHolder; -Landroid/graphics/RuntimeShader; -Landroid/graphics/Shader$NoImagePreloadHolder; -Landroid/graphics/Shader$TileMode; -Landroid/graphics/Shader; -Landroid/graphics/SumPathEffect; -Landroid/graphics/SurfaceTexture$1; -Landroid/graphics/SurfaceTexture$OnFrameAvailableListener; -Landroid/graphics/SurfaceTexture$OnSetFrameRateListener; -Landroid/graphics/SurfaceTexture; -Landroid/graphics/SweepGradient; -Landroid/graphics/TableMaskFilter; -Landroid/graphics/TemporaryBuffer; -Landroid/graphics/TextureLayer; -Landroid/graphics/Typeface$Builder; -Landroid/graphics/Typeface$CustomFallbackBuilder; -Landroid/graphics/Typeface-IA; -Landroid/graphics/Typeface; -Landroid/graphics/Xfermode; -Landroid/graphics/YuvImage; -Landroid/graphics/animation/FallbackLUTInterpolator; -Landroid/graphics/animation/HasNativeInterpolator; -Landroid/graphics/animation/NativeInterpolator; -Landroid/graphics/animation/NativeInterpolatorFactory; -Landroid/graphics/animation/RenderNodeAnimator$$ExternalSyntheticLambda0; -Landroid/graphics/animation/RenderNodeAnimator$DelayedAnimationHelper; -Landroid/graphics/animation/RenderNodeAnimator$ViewListener; -Landroid/graphics/animation/RenderNodeAnimator; -Landroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable; -Landroid/graphics/drawable/AdaptiveIconDrawable$LayerState; -Landroid/graphics/drawable/AdaptiveIconDrawable; -Landroid/graphics/drawable/Animatable2$AnimationCallback; -Landroid/graphics/drawable/Animatable2; -Landroid/graphics/drawable/Animatable; -Landroid/graphics/drawable/AnimatedImageDrawable$State; -Landroid/graphics/drawable/AnimatedImageDrawable; -Landroid/graphics/drawable/AnimatedRotateDrawable$1; -Landroid/graphics/drawable/AnimatedRotateDrawable$AnimatedRotateState; -Landroid/graphics/drawable/AnimatedRotateDrawable; -Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatableTransition; -Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedStateListState; -Landroid/graphics/drawable/AnimatedStateListDrawable$AnimatedVectorDrawableTransition; -Landroid/graphics/drawable/AnimatedStateListDrawable$AnimationDrawableTransition; -Landroid/graphics/drawable/AnimatedStateListDrawable$FrameInterpolator; -Landroid/graphics/drawable/AnimatedStateListDrawable$Transition-IA; -Landroid/graphics/drawable/AnimatedStateListDrawable$Transition; -Landroid/graphics/drawable/AnimatedStateListDrawable-IA; -Landroid/graphics/drawable/AnimatedStateListDrawable; -Landroid/graphics/drawable/AnimatedVectorDrawable$1; -Landroid/graphics/drawable/AnimatedVectorDrawable$2; -Landroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState$PendingAnimator; -Landroid/graphics/drawable/AnimatedVectorDrawable$AnimatedVectorDrawableState; -Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimator; -Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT$$ExternalSyntheticLambda0; -Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorRT; -Landroid/graphics/drawable/AnimatedVectorDrawable$VectorDrawableAnimatorUI; -Landroid/graphics/drawable/AnimatedVectorDrawable-IA; -Landroid/graphics/drawable/AnimatedVectorDrawable; -Landroid/graphics/drawable/AnimationDrawable$AnimationState; -Landroid/graphics/drawable/AnimationDrawable-IA; -Landroid/graphics/drawable/AnimationDrawable; -Landroid/graphics/drawable/BitmapDrawable$$ExternalSyntheticLambda1; -Landroid/graphics/drawable/BitmapDrawable$$ExternalSyntheticLambda2; -Landroid/graphics/drawable/BitmapDrawable$BitmapState; -Landroid/graphics/drawable/BitmapDrawable-IA; -Landroid/graphics/drawable/BitmapDrawable; -Landroid/graphics/drawable/ClipDrawable$ClipState; -Landroid/graphics/drawable/ClipDrawable-IA; -Landroid/graphics/drawable/ClipDrawable; -Landroid/graphics/drawable/ColorDrawable$ColorState; -Landroid/graphics/drawable/ColorDrawable-IA; -Landroid/graphics/drawable/ColorDrawable; -Landroid/graphics/drawable/ColorStateListDrawable$ColorStateListDrawableState; -Landroid/graphics/drawable/ColorStateListDrawable; -Landroid/graphics/drawable/Drawable$Callback; -Landroid/graphics/drawable/Drawable$ConstantState; -Landroid/graphics/drawable/Drawable; -Landroid/graphics/drawable/DrawableContainer$1; -Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback-IA; -Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback; -Landroid/graphics/drawable/DrawableContainer$DrawableContainerState; -Landroid/graphics/drawable/DrawableContainer; -Landroid/graphics/drawable/DrawableInflater; -Landroid/graphics/drawable/DrawableWrapper$DrawableWrapperState; -Landroid/graphics/drawable/DrawableWrapper; -Landroid/graphics/drawable/GradientDrawable$GradientState; -Landroid/graphics/drawable/GradientDrawable$Orientation; -Landroid/graphics/drawable/GradientDrawable-IA; -Landroid/graphics/drawable/GradientDrawable; -Landroid/graphics/drawable/Icon$1; -Landroid/graphics/drawable/Icon$LoadDrawableTask; -Landroid/graphics/drawable/Icon-IA; -Landroid/graphics/drawable/Icon; -Landroid/graphics/drawable/InsetDrawable$InsetState; -Landroid/graphics/drawable/InsetDrawable$InsetValue; -Landroid/graphics/drawable/InsetDrawable-IA; -Landroid/graphics/drawable/InsetDrawable; -Landroid/graphics/drawable/LayerDrawable$ChildDrawable; -Landroid/graphics/drawable/LayerDrawable$LayerState; -Landroid/graphics/drawable/LayerDrawable; -Landroid/graphics/drawable/LevelListDrawable$LevelListState; -Landroid/graphics/drawable/LevelListDrawable; -Landroid/graphics/drawable/NinePatchDrawable$$ExternalSyntheticLambda0; -Landroid/graphics/drawable/NinePatchDrawable$NinePatchState; -Landroid/graphics/drawable/NinePatchDrawable-IA; -Landroid/graphics/drawable/NinePatchDrawable; -Landroid/graphics/drawable/PaintDrawable; -Landroid/graphics/drawable/PictureDrawable; -Landroid/graphics/drawable/RippleAnimationSession$2; -Landroid/graphics/drawable/RippleAnimationSession$3; -Landroid/graphics/drawable/RippleAnimationSession$AnimationProperties; -Landroid/graphics/drawable/RippleAnimationSession$AnimatorListener; -Landroid/graphics/drawable/RippleAnimationSession; -Landroid/graphics/drawable/RippleBackground$1; -Landroid/graphics/drawable/RippleBackground$BackgroundProperty; -Landroid/graphics/drawable/RippleBackground; -Landroid/graphics/drawable/RippleComponent; -Landroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda0; -Landroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda1; -Landroid/graphics/drawable/RippleDrawable$$ExternalSyntheticLambda2; -Landroid/graphics/drawable/RippleDrawable$RippleState; -Landroid/graphics/drawable/RippleDrawable-IA; -Landroid/graphics/drawable/RippleDrawable; -Landroid/graphics/drawable/RippleForeground$1; -Landroid/graphics/drawable/RippleForeground$2; -Landroid/graphics/drawable/RippleForeground$3; -Landroid/graphics/drawable/RippleForeground$4; -Landroid/graphics/drawable/RippleForeground; -Landroid/graphics/drawable/RippleShader; -Landroid/graphics/drawable/RotateDrawable$RotateState; -Landroid/graphics/drawable/RotateDrawable-IA; -Landroid/graphics/drawable/RotateDrawable; -Landroid/graphics/drawable/ScaleDrawable$ScaleState; -Landroid/graphics/drawable/ScaleDrawable-IA; -Landroid/graphics/drawable/ScaleDrawable; -Landroid/graphics/drawable/ShapeDrawable$ShaderFactory; -Landroid/graphics/drawable/ShapeDrawable$ShapeState; -Landroid/graphics/drawable/ShapeDrawable; -Landroid/graphics/drawable/StateListDrawable$StateListState; -Landroid/graphics/drawable/StateListDrawable-IA; -Landroid/graphics/drawable/StateListDrawable; -Landroid/graphics/drawable/TransitionDrawable$TransitionState; -Landroid/graphics/drawable/TransitionDrawable; -Landroid/graphics/drawable/VectorDrawable$VClipPath; -Landroid/graphics/drawable/VectorDrawable$VFullPath$1; -Landroid/graphics/drawable/VectorDrawable$VFullPath$2; -Landroid/graphics/drawable/VectorDrawable$VFullPath$3; -Landroid/graphics/drawable/VectorDrawable$VFullPath$4; -Landroid/graphics/drawable/VectorDrawable$VFullPath$5; -Landroid/graphics/drawable/VectorDrawable$VFullPath$6; -Landroid/graphics/drawable/VectorDrawable$VFullPath$7; -Landroid/graphics/drawable/VectorDrawable$VFullPath$8; -Landroid/graphics/drawable/VectorDrawable$VFullPath; -Landroid/graphics/drawable/VectorDrawable$VGroup$1; -Landroid/graphics/drawable/VectorDrawable$VGroup$2; -Landroid/graphics/drawable/VectorDrawable$VGroup$3; -Landroid/graphics/drawable/VectorDrawable$VGroup$4; -Landroid/graphics/drawable/VectorDrawable$VGroup$5; -Landroid/graphics/drawable/VectorDrawable$VGroup$6; -Landroid/graphics/drawable/VectorDrawable$VGroup$7; -Landroid/graphics/drawable/VectorDrawable$VGroup; -Landroid/graphics/drawable/VectorDrawable$VObject; -Landroid/graphics/drawable/VectorDrawable$VPath$1; -Landroid/graphics/drawable/VectorDrawable$VPath; -Landroid/graphics/drawable/VectorDrawable$VectorDrawableState$1; -Landroid/graphics/drawable/VectorDrawable$VectorDrawableState; -Landroid/graphics/drawable/VectorDrawable-IA; -Landroid/graphics/drawable/VectorDrawable; -Landroid/graphics/drawable/shapes/OvalShape; -Landroid/graphics/drawable/shapes/PathShape; -Landroid/graphics/drawable/shapes/RectShape; -Landroid/graphics/drawable/shapes/RoundRectShape; -Landroid/graphics/drawable/shapes/Shape; -Landroid/graphics/fonts/Font$Builder; -Landroid/graphics/fonts/Font$NoImagePreloadHolder; -Landroid/graphics/fonts/Font; -Landroid/graphics/fonts/FontCustomizationParser$Result; -Landroid/graphics/fonts/FontCustomizationParser; -Landroid/graphics/fonts/FontFamily$Builder; -Landroid/graphics/fonts/FontFamily; -Landroid/graphics/fonts/FontFileUtil; -Landroid/graphics/fonts/FontManager; -Landroid/graphics/fonts/FontStyle; -Landroid/graphics/fonts/FontVariationAxis; -Landroid/graphics/fonts/SystemFonts; -Landroid/graphics/pdf/PdfDocument; -Landroid/graphics/pdf/PdfEditor; -Landroid/graphics/text/GraphemeBreak; -Landroid/graphics/text/LineBreakConfig$1; -Landroid/graphics/text/LineBreakConfig$Builder; -Landroid/graphics/text/LineBreakConfig; -Landroid/graphics/text/LineBreaker$Builder; -Landroid/graphics/text/LineBreaker$ParagraphConstraints; -Landroid/graphics/text/LineBreaker$Result-IA; -Landroid/graphics/text/LineBreaker$Result; -Landroid/graphics/text/LineBreaker-IA; -Landroid/graphics/text/LineBreaker; -Landroid/graphics/text/MeasuredText$Builder; -Landroid/graphics/text/MeasuredText-IA; -Landroid/graphics/text/MeasuredText; -Landroid/graphics/text/PositionedGlyphs; -Landroid/graphics/text/TextRunShaper; -Landroid/gsi/AvbPublicKey$1; -Landroid/gsi/AvbPublicKey; -Landroid/gsi/GsiProgress$1; -Landroid/gsi/GsiProgress; -Landroid/gsi/IGsiService$Stub$Proxy; -Landroid/gsi/IGsiService$Stub; -Landroid/gsi/IGsiService; -Landroid/gui/StalledTransactionInfo$1; -Landroid/gui/StalledTransactionInfo; -Landroid/hardware/Camera$CameraInfo; -Landroid/hardware/Camera$Face; -Landroid/hardware/Camera; -Landroid/hardware/CameraSessionStats$1; -Landroid/hardware/CameraSessionStats; -Landroid/hardware/CameraStatus$1; -Landroid/hardware/CameraStatus; -Landroid/hardware/ConsumerIrManager; -Landroid/hardware/DataSpace; -Landroid/hardware/GeomagneticField$LegendreTable; -Landroid/hardware/GeomagneticField; -Landroid/hardware/HardwareBuffer$1; -Landroid/hardware/HardwareBuffer-IA; -Landroid/hardware/HardwareBuffer; -Landroid/hardware/ICameraService$Stub$Proxy; -Landroid/hardware/ICameraService$Stub; -Landroid/hardware/ICameraService; -Landroid/hardware/ICameraServiceListener$Stub; -Landroid/hardware/ICameraServiceListener; -Landroid/hardware/ICameraServiceProxy$Stub; -Landroid/hardware/ICameraServiceProxy; -Landroid/hardware/IConsumerIrService$Stub; -Landroid/hardware/IConsumerIrService; -Landroid/hardware/ISensorPrivacyListener$Stub$Proxy; -Landroid/hardware/ISensorPrivacyListener$Stub; -Landroid/hardware/ISensorPrivacyListener; -Landroid/hardware/ISensorPrivacyManager$Stub$Proxy; -Landroid/hardware/ISensorPrivacyManager$Stub; -Landroid/hardware/ISensorPrivacyManager; -Landroid/hardware/ISerialManager$Stub; -Landroid/hardware/ISerialManager; -Landroid/hardware/OverlayProperties$1; -Landroid/hardware/OverlayProperties-IA; -Landroid/hardware/OverlayProperties; -Landroid/hardware/Sensor; -Landroid/hardware/SensorAdditionalInfo; -Landroid/hardware/SensorDirectChannel; -Landroid/hardware/SensorEvent; -Landroid/hardware/SensorEventCallback; -Landroid/hardware/SensorEventListener2; -Landroid/hardware/SensorEventListener; -Landroid/hardware/SensorListener; -Landroid/hardware/SensorManager$DynamicSensorCallback; -Landroid/hardware/SensorManager; -Landroid/hardware/SensorPrivacyManager$1; -Landroid/hardware/SensorPrivacyManager$2; -Landroid/hardware/SensorPrivacyManager$OnSensorPrivacyChangedListener$SensorPrivacyChangedParams; -Landroid/hardware/SensorPrivacyManager$OnSensorPrivacyChangedListener; -Landroid/hardware/SensorPrivacyManager; -Landroid/hardware/SerialManager; -Landroid/hardware/SerialPort; -Landroid/hardware/SyncFence$1; -Landroid/hardware/SyncFence; -Landroid/hardware/SystemSensorManager$BaseEventQueue; -Landroid/hardware/SystemSensorManager$SensorEventQueue; -Landroid/hardware/SystemSensorManager$TriggerEventQueue; -Landroid/hardware/TriggerEvent; -Landroid/hardware/TriggerEventListener; -Landroid/hardware/biometrics/BiometricAuthenticator$AuthenticationCallback; -Landroid/hardware/biometrics/BiometricAuthenticator$Identifier; -Landroid/hardware/biometrics/BiometricAuthenticator; -Landroid/hardware/biometrics/BiometricFaceConstants; -Landroid/hardware/biometrics/BiometricFingerprintConstants; -Landroid/hardware/biometrics/BiometricManager; -Landroid/hardware/biometrics/BiometricSourceType$1; -Landroid/hardware/biometrics/BiometricSourceType; -Landroid/hardware/biometrics/ComponentInfoInternal$1; -Landroid/hardware/biometrics/ComponentInfoInternal; -Landroid/hardware/biometrics/CryptoObject; -Landroid/hardware/biometrics/IAuthService$Stub$Proxy; -Landroid/hardware/biometrics/IAuthService$Stub; -Landroid/hardware/biometrics/IAuthService; -Landroid/hardware/biometrics/IBiometricAuthenticator$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricAuthenticator$Stub; -Landroid/hardware/biometrics/IBiometricAuthenticator; -Landroid/hardware/biometrics/IBiometricContextListener$Stub; -Landroid/hardware/biometrics/IBiometricContextListener; -Landroid/hardware/biometrics/IBiometricEnabledOnKeyguardCallback$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricEnabledOnKeyguardCallback$Stub; -Landroid/hardware/biometrics/IBiometricEnabledOnKeyguardCallback; -Landroid/hardware/biometrics/IBiometricSensorReceiver$Stub; -Landroid/hardware/biometrics/IBiometricSensorReceiver; -Landroid/hardware/biometrics/IBiometricService$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricService$Stub; -Landroid/hardware/biometrics/IBiometricService; -Landroid/hardware/biometrics/IBiometricServiceLockoutResetCallback$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricServiceLockoutResetCallback$Stub; -Landroid/hardware/biometrics/IBiometricServiceLockoutResetCallback; -Landroid/hardware/biometrics/IBiometricServiceReceiver$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricServiceReceiver$Stub; -Landroid/hardware/biometrics/IBiometricServiceReceiver; -Landroid/hardware/biometrics/IBiometricStateListener; -Landroid/hardware/biometrics/IBiometricSysuiReceiver$Stub$Proxy; -Landroid/hardware/biometrics/IBiometricSysuiReceiver$Stub; -Landroid/hardware/biometrics/IBiometricSysuiReceiver; -Landroid/hardware/biometrics/IInvalidationCallback$Stub; -Landroid/hardware/biometrics/IInvalidationCallback; -Landroid/hardware/biometrics/ITestSession; -Landroid/hardware/biometrics/PromptInfo$1; -Landroid/hardware/biometrics/PromptInfo; -Landroid/hardware/biometrics/SensorLocationInternal$1; -Landroid/hardware/biometrics/SensorLocationInternal; -Landroid/hardware/biometrics/SensorPropertiesInternal$1; -Landroid/hardware/biometrics/SensorPropertiesInternal; -Landroid/hardware/biometrics/common/AuthenticateReason$Fingerprint; -Landroid/hardware/camera2/CameraAccessException; -Landroid/hardware/camera2/CameraCaptureSession$CaptureCallback; -Landroid/hardware/camera2/CameraCaptureSession$StateCallback; -Landroid/hardware/camera2/CameraCharacteristics$1; -Landroid/hardware/camera2/CameraCharacteristics$2; -Landroid/hardware/camera2/CameraCharacteristics$3; -Landroid/hardware/camera2/CameraCharacteristics$4; -Landroid/hardware/camera2/CameraCharacteristics$5; -Landroid/hardware/camera2/CameraCharacteristics$6; -Landroid/hardware/camera2/CameraCharacteristics$7; -Landroid/hardware/camera2/CameraCharacteristics$8; -Landroid/hardware/camera2/CameraCharacteristics$9; -Landroid/hardware/camera2/CameraCharacteristics$Key; -Landroid/hardware/camera2/CameraCharacteristics; -Landroid/hardware/camera2/CameraDevice$StateCallback; -Landroid/hardware/camera2/CameraDevice; -Landroid/hardware/camera2/CameraManager$AvailabilityCallback; -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal$$ExternalSyntheticLambda0; -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal$$ExternalSyntheticLambda2; -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal$1; -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal$DeviceCameraInfo; -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal; -Landroid/hardware/camera2/CameraManager$DeviceStateListener; -Landroid/hardware/camera2/CameraManager$FoldStateListener$$ExternalSyntheticLambda0; -Landroid/hardware/camera2/CameraManager$FoldStateListener; -Landroid/hardware/camera2/CameraManager$TorchCallback; -Landroid/hardware/camera2/CameraManager; -Landroid/hardware/camera2/CameraMetadata; -Landroid/hardware/camera2/CameraOfflineSession$CameraOfflineSessionCallback; -Landroid/hardware/camera2/CaptureRequest$1; -Landroid/hardware/camera2/CaptureRequest$2; -Landroid/hardware/camera2/CaptureRequest$3; -Landroid/hardware/camera2/CaptureRequest$Key; -Landroid/hardware/camera2/CaptureRequest; -Landroid/hardware/camera2/CaptureResult$1; -Landroid/hardware/camera2/CaptureResult$2; -Landroid/hardware/camera2/CaptureResult$3; -Landroid/hardware/camera2/CaptureResult$4; -Landroid/hardware/camera2/CaptureResult$Key; -Landroid/hardware/camera2/CaptureResult; -Landroid/hardware/camera2/DngCreator; -Landroid/hardware/camera2/TotalCaptureResult; -Landroid/hardware/camera2/extension/ICaptureProcessorImpl; -Landroid/hardware/camera2/impl/CameraDeviceImpl$CameraHandlerExecutor; -Landroid/hardware/camera2/impl/CameraDeviceImpl; -Landroid/hardware/camera2/impl/CameraExtensionJpegProcessor; -Landroid/hardware/camera2/impl/CameraMetadataNative$10; -Landroid/hardware/camera2/impl/CameraMetadataNative$11; -Landroid/hardware/camera2/impl/CameraMetadataNative$12; -Landroid/hardware/camera2/impl/CameraMetadataNative$13; -Landroid/hardware/camera2/impl/CameraMetadataNative$14; -Landroid/hardware/camera2/impl/CameraMetadataNative$15; -Landroid/hardware/camera2/impl/CameraMetadataNative$16; -Landroid/hardware/camera2/impl/CameraMetadataNative$17; -Landroid/hardware/camera2/impl/CameraMetadataNative$18; -Landroid/hardware/camera2/impl/CameraMetadataNative$19; -Landroid/hardware/camera2/impl/CameraMetadataNative$1; -Landroid/hardware/camera2/impl/CameraMetadataNative$20; -Landroid/hardware/camera2/impl/CameraMetadataNative$21; -Landroid/hardware/camera2/impl/CameraMetadataNative$22; -Landroid/hardware/camera2/impl/CameraMetadataNative$23; -Landroid/hardware/camera2/impl/CameraMetadataNative$24; -Landroid/hardware/camera2/impl/CameraMetadataNative$25; -Landroid/hardware/camera2/impl/CameraMetadataNative$26; -Landroid/hardware/camera2/impl/CameraMetadataNative$27; -Landroid/hardware/camera2/impl/CameraMetadataNative$28; -Landroid/hardware/camera2/impl/CameraMetadataNative$29; -Landroid/hardware/camera2/impl/CameraMetadataNative$2; -Landroid/hardware/camera2/impl/CameraMetadataNative$30; -Landroid/hardware/camera2/impl/CameraMetadataNative$31; -Landroid/hardware/camera2/impl/CameraMetadataNative$32; -Landroid/hardware/camera2/impl/CameraMetadataNative$33; -Landroid/hardware/camera2/impl/CameraMetadataNative$34; -Landroid/hardware/camera2/impl/CameraMetadataNative$35; -Landroid/hardware/camera2/impl/CameraMetadataNative$36; -Landroid/hardware/camera2/impl/CameraMetadataNative$37; -Landroid/hardware/camera2/impl/CameraMetadataNative$38; -Landroid/hardware/camera2/impl/CameraMetadataNative$39; -Landroid/hardware/camera2/impl/CameraMetadataNative$3; -Landroid/hardware/camera2/impl/CameraMetadataNative$4; -Landroid/hardware/camera2/impl/CameraMetadataNative$5; -Landroid/hardware/camera2/impl/CameraMetadataNative$6; -Landroid/hardware/camera2/impl/CameraMetadataNative$7; -Landroid/hardware/camera2/impl/CameraMetadataNative$8; -Landroid/hardware/camera2/impl/CameraMetadataNative$9; -Landroid/hardware/camera2/impl/CameraMetadataNative$Key; -Landroid/hardware/camera2/impl/CameraMetadataNative; -Landroid/hardware/camera2/impl/GetCommand; -Landroid/hardware/camera2/impl/SetCommand; -Landroid/hardware/camera2/marshal/MarshalHelpers; -Landroid/hardware/camera2/marshal/MarshalQueryable; -Landroid/hardware/camera2/marshal/MarshalRegistry$MarshalToken; -Landroid/hardware/camera2/marshal/MarshalRegistry; -Landroid/hardware/camera2/marshal/Marshaler; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableArray$MarshalerArray; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableArray$PrimitiveArrayFiller$5; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableArray$PrimitiveArrayFiller; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableArray; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableBlackLevelPattern; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean$MarshalerBoolean; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableBoolean; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableColorSpaceTransform; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableEnum; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableHighSpeedVideoConfiguration$MarshalerHighSpeedVideoConfiguration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableHighSpeedVideoConfiguration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableMeteringRectangle; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger$MarshalerNativeByteToInteger; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableNativeByteToInteger; -Landroid/hardware/camera2/marshal/impl/MarshalQueryablePair; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableParcelable; -Landroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive$MarshalerPrimitive; -Landroid/hardware/camera2/marshal/impl/MarshalQueryablePrimitive; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRange$MarshalerRange; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRange; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRecommendedStreamConfiguration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRect$MarshalerRect; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRect; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableReprocessFormatsMap$MarshalerReprocessFormatsMap; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableReprocessFormatsMap; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableRggbChannelVector; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableSize$MarshalerSize; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableSize; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableSizeF; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableStreamConfiguration$MarshalerStreamConfiguration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableStreamConfiguration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableStreamConfigurationDuration$MarshalerStreamConfigurationDuration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableStreamConfigurationDuration; -Landroid/hardware/camera2/marshal/impl/MarshalQueryableString; -Landroid/hardware/camera2/params/BlackLevelPattern; -Landroid/hardware/camera2/params/Capability; -Landroid/hardware/camera2/params/ColorSpaceProfiles; -Landroid/hardware/camera2/params/ColorSpaceTransform; -Landroid/hardware/camera2/params/DeviceStateSensorOrientationMap; -Landroid/hardware/camera2/params/DynamicRangeProfiles; -Landroid/hardware/camera2/params/Face; -Landroid/hardware/camera2/params/HighSpeedVideoConfiguration; -Landroid/hardware/camera2/params/LensIntrinsicsSample; -Landroid/hardware/camera2/params/LensShadingMap; -Landroid/hardware/camera2/params/MandatoryStreamCombination$ReprocessType; -Landroid/hardware/camera2/params/MandatoryStreamCombination$SizeThreshold; -Landroid/hardware/camera2/params/MandatoryStreamCombination$StreamCombinationTemplate; -Landroid/hardware/camera2/params/MandatoryStreamCombination$StreamTemplate; -Landroid/hardware/camera2/params/MandatoryStreamCombination; -Landroid/hardware/camera2/params/MeteringRectangle; -Landroid/hardware/camera2/params/MultiResolutionStreamConfigurationMap; -Landroid/hardware/camera2/params/OisSample; -Landroid/hardware/camera2/params/RecommendedStreamConfiguration; -Landroid/hardware/camera2/params/ReprocessFormatsMap; -Landroid/hardware/camera2/params/RggbChannelVector; -Landroid/hardware/camera2/params/StreamConfiguration; -Landroid/hardware/camera2/params/StreamConfigurationDuration; -Landroid/hardware/camera2/params/StreamConfigurationMap; -Landroid/hardware/camera2/params/TonemapCurve; -Landroid/hardware/camera2/utils/ArrayUtils; -Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination$1; -Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination-IA; -Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination; -Landroid/hardware/camera2/utils/ExceptionUtils; -Landroid/hardware/camera2/utils/HashCodeHelpers; -Landroid/hardware/camera2/utils/SurfaceUtils; -Landroid/hardware/camera2/utils/TypeReference$SpecializedBaseTypeReference; -Landroid/hardware/camera2/utils/TypeReference$SpecializedTypeReference; -Landroid/hardware/camera2/utils/TypeReference-IA; -Landroid/hardware/camera2/utils/TypeReference; -Landroid/hardware/common/fmq/SynchronizedReadWrite; -Landroid/hardware/common/fmq/UnsynchronizedWrite; -Landroid/hardware/contexthub/V1_0/ContextHub; -Landroid/hardware/contexthub/V1_0/ContextHubMsg; -Landroid/hardware/contexthub/V1_0/HubAppInfo; -Landroid/hardware/contexthub/V1_0/IContexthub$Proxy; -Landroid/hardware/contexthub/V1_0/IContexthub; -Landroid/hardware/contexthub/V1_0/IContexthubCallback$Stub; -Landroid/hardware/contexthub/V1_0/IContexthubCallback; -Landroid/hardware/contexthub/V1_0/MemRange; -Landroid/hardware/contexthub/V1_0/NanoAppBinary; -Landroid/hardware/contexthub/V1_0/PhysicalSensor; -Landroid/hardware/contexthub/V1_1/Setting; -Landroid/hardware/devicestate/DeviceState$Configuration; -Landroid/hardware/devicestate/DeviceState; -Landroid/hardware/devicestate/DeviceStateInfo$1; -Landroid/hardware/devicestate/DeviceStateInfo; -Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback; -Landroid/hardware/devicestate/DeviceStateManager$FoldStateListener; -Landroid/hardware/devicestate/DeviceStateManager; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda0; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback-IA; -Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback; -Landroid/hardware/devicestate/DeviceStateManagerGlobal; -Landroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy; -Landroid/hardware/devicestate/IDeviceStateManager$Stub; -Landroid/hardware/devicestate/IDeviceStateManager; -Landroid/hardware/devicestate/IDeviceStateManagerCallback$Stub; -Landroid/hardware/devicestate/IDeviceStateManagerCallback; -Landroid/hardware/display/AmbientBrightnessDayStats$1; -Landroid/hardware/display/AmbientBrightnessDayStats; -Landroid/hardware/display/AmbientDisplayConfiguration; -Landroid/hardware/display/BrightnessChangeEvent$1; -Landroid/hardware/display/BrightnessChangeEvent$Builder; -Landroid/hardware/display/BrightnessChangeEvent; -Landroid/hardware/display/BrightnessConfiguration$1; -Landroid/hardware/display/BrightnessConfiguration$Builder; -Landroid/hardware/display/BrightnessConfiguration; -Landroid/hardware/display/BrightnessCorrection$1; -Landroid/hardware/display/BrightnessCorrection$BrightnessCorrectionImplementation; -Landroid/hardware/display/BrightnessCorrection$ScaleAndTranslateLog; -Landroid/hardware/display/BrightnessCorrection; -Landroid/hardware/display/BrightnessInfo$1; -Landroid/hardware/display/BrightnessInfo; -Landroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal; -Landroid/hardware/display/ColorDisplayManager; -Landroid/hardware/display/Curve$1; -Landroid/hardware/display/Curve; -Landroid/hardware/display/DeviceProductInfo$1; -Landroid/hardware/display/DeviceProductInfo$ManufactureDate$1; -Landroid/hardware/display/DeviceProductInfo$ManufactureDate; -Landroid/hardware/display/DeviceProductInfo-IA; -Landroid/hardware/display/DeviceProductInfo; -Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda0; -Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda1; -Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2; -Landroid/hardware/display/DisplayManager$DisplayListener; -Landroid/hardware/display/DisplayManager$WeakDisplayCache-IA; -Landroid/hardware/display/DisplayManager$WeakDisplayCache; -Landroid/hardware/display/DisplayManager; -Landroid/hardware/display/DisplayManagerGlobal$1; -Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0; -Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate; -Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback-IA; -Landroid/hardware/display/DisplayManagerGlobal; -Landroid/hardware/display/DisplayManagerInternal$DisplayPowerCallbacks; -Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest; -Landroid/hardware/display/DisplayManagerInternal; -Landroid/hardware/display/DisplayViewport; -Landroid/hardware/display/DisplayedContentSample; -Landroid/hardware/display/DisplayedContentSamplingAttributes; -Landroid/hardware/display/HdrConversionMode$1; -Landroid/hardware/display/HdrConversionMode; -Landroid/hardware/display/IColorDisplayManager$Stub$Proxy; -Landroid/hardware/display/IColorDisplayManager$Stub; -Landroid/hardware/display/IColorDisplayManager; -Landroid/hardware/display/IDisplayManager$Stub$Proxy; -Landroid/hardware/display/IDisplayManager$Stub; -Landroid/hardware/display/IDisplayManager; -Landroid/hardware/display/IDisplayManagerCallback$Stub; -Landroid/hardware/display/IDisplayManagerCallback; -Landroid/hardware/display/IVirtualDisplayCallback$Stub$Proxy; -Landroid/hardware/display/IVirtualDisplayCallback$Stub; -Landroid/hardware/display/IVirtualDisplayCallback; -Landroid/hardware/display/NightDisplayListener$1; -Landroid/hardware/display/NightDisplayListener$Callback; -Landroid/hardware/display/NightDisplayListener; -Landroid/hardware/display/Time$1; -Landroid/hardware/display/Time; -Landroid/hardware/display/VirtualDisplayConfig$1; -Landroid/hardware/display/VirtualDisplayConfig; -Landroid/hardware/display/WifiDisplay$1; -Landroid/hardware/display/WifiDisplay; -Landroid/hardware/display/WifiDisplaySessionInfo$1; -Landroid/hardware/display/WifiDisplaySessionInfo; -Landroid/hardware/display/WifiDisplayStatus$1; -Landroid/hardware/display/WifiDisplayStatus; -Landroid/hardware/face/Face$1; -Landroid/hardware/face/Face; -Landroid/hardware/face/FaceManager$1; -Landroid/hardware/face/FaceManager$AuthenticationCallback; -Landroid/hardware/face/FaceManager$AuthenticationResult; -Landroid/hardware/face/FaceManager$EnrollmentCallback; -Landroid/hardware/face/FaceManager$FaceDetectionCallback; -Landroid/hardware/face/FaceManager$GenerateChallengeCallback; -Landroid/hardware/face/FaceManager$GetFeatureCallback; -Landroid/hardware/face/FaceManager$LockoutResetCallback; -Landroid/hardware/face/FaceManager$OnAuthenticationCancelListener; -Landroid/hardware/face/FaceManager$RemovalCallback; -Landroid/hardware/face/FaceManager$SetFeatureCallback; -Landroid/hardware/face/FaceManager; -Landroid/hardware/face/FaceSensorPropertiesInternal$1; -Landroid/hardware/face/FaceSensorPropertiesInternal; -Landroid/hardware/face/IFaceAuthenticatorsRegisteredCallback$Stub; -Landroid/hardware/face/IFaceAuthenticatorsRegisteredCallback; -Landroid/hardware/face/IFaceService$Stub$Proxy; -Landroid/hardware/face/IFaceService$Stub; -Landroid/hardware/face/IFaceService; -Landroid/hardware/face/IFaceServiceReceiver$Stub$Proxy; -Landroid/hardware/face/IFaceServiceReceiver$Stub; -Landroid/hardware/face/IFaceServiceReceiver; -Landroid/hardware/fingerprint/Fingerprint$1; -Landroid/hardware/fingerprint/Fingerprint; -Landroid/hardware/fingerprint/FingerprintManager$1; -Landroid/hardware/fingerprint/FingerprintManager$2; -Landroid/hardware/fingerprint/FingerprintManager$AuthenticationCallback; -Landroid/hardware/fingerprint/FingerprintManager$AuthenticationResult; -Landroid/hardware/fingerprint/FingerprintManager$LockoutResetCallback; -Landroid/hardware/fingerprint/FingerprintManager; -Landroid/hardware/fingerprint/FingerprintSensorPropertiesInternal$1; -Landroid/hardware/fingerprint/FingerprintSensorPropertiesInternal; -Landroid/hardware/fingerprint/IFingerprintAuthenticatorsRegisteredCallback$Stub; -Landroid/hardware/fingerprint/IFingerprintAuthenticatorsRegisteredCallback; -Landroid/hardware/fingerprint/IFingerprintClientActiveCallback$Stub$Proxy; -Landroid/hardware/fingerprint/IFingerprintClientActiveCallback$Stub; -Landroid/hardware/fingerprint/IFingerprintClientActiveCallback; -Landroid/hardware/fingerprint/IFingerprintService$Stub$Proxy; -Landroid/hardware/fingerprint/IFingerprintService$Stub; -Landroid/hardware/fingerprint/IFingerprintService; -Landroid/hardware/fingerprint/IFingerprintServiceReceiver$Stub$Proxy; -Landroid/hardware/fingerprint/IFingerprintServiceReceiver$Stub; -Landroid/hardware/fingerprint/IFingerprintServiceReceiver; -Landroid/hardware/fingerprint/IUdfpsOverlayController; -Landroid/hardware/fingerprint/IUdfpsRefreshRateRequestCallback$Stub; -Landroid/hardware/fingerprint/IUdfpsRefreshRateRequestCallback; -Landroid/hardware/graphics/common/DisplayDecorationSupport$1; -Landroid/hardware/graphics/common/DisplayDecorationSupport; -Landroid/hardware/hdmi/HdmiControlManager; -Landroid/hardware/hdmi/HdmiPlaybackClient$DisplayStatusCallback; -Landroid/hardware/hdmi/HdmiRecordSources$OwnSource; -Landroid/hardware/hdmi/HdmiRecordSources$RecordSource; -Landroid/hardware/input/HostUsiVersion$1; -Landroid/hardware/input/HostUsiVersion; -Landroid/hardware/input/IInputDevicesChangedListener$Stub$Proxy; -Landroid/hardware/input/IInputDevicesChangedListener$Stub; -Landroid/hardware/input/IInputDevicesChangedListener; -Landroid/hardware/input/IInputManager$Stub$Proxy; -Landroid/hardware/input/IInputManager$Stub; -Landroid/hardware/input/IInputManager; -Landroid/hardware/input/IInputSensorEventListener$Stub; -Landroid/hardware/input/IInputSensorEventListener; -Landroid/hardware/input/ITabletModeChangedListener$Stub$Proxy; -Landroid/hardware/input/ITabletModeChangedListener$Stub; -Landroid/hardware/input/ITabletModeChangedListener; -Landroid/hardware/input/InputDeviceIdentifier$1; -Landroid/hardware/input/InputDeviceIdentifier; -Landroid/hardware/input/InputManager$InputDeviceListener; -Landroid/hardware/input/InputManager; -Landroid/hardware/input/InputManagerGlobal$InputDeviceListenerDelegate; -Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener-IA; -Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener; -Landroid/hardware/input/InputManagerGlobal$OnTabletModeChangedListenerDelegate; -Landroid/hardware/input/InputManagerGlobal; -Landroid/hardware/input/InputSettings; -Landroid/hardware/input/KeyboardLayout$1; -Landroid/hardware/input/KeyboardLayout; -Landroid/hardware/input/TouchCalibration$1; -Landroid/hardware/input/TouchCalibration; -Landroid/hardware/iris/IrisManager; -Landroid/hardware/lights/ILightsManager$Stub; -Landroid/hardware/lights/ILightsManager; -Landroid/hardware/lights/LightsManager; -Landroid/hardware/location/ActivityRecognitionHardware; -Landroid/hardware/location/ContextHubClient; -Landroid/hardware/location/ContextHubClientCallback; -Landroid/hardware/location/ContextHubInfo$1; -Landroid/hardware/location/ContextHubInfo-IA; -Landroid/hardware/location/ContextHubInfo; -Landroid/hardware/location/ContextHubManager$1; -Landroid/hardware/location/ContextHubManager$2; -Landroid/hardware/location/ContextHubManager$3; -Landroid/hardware/location/ContextHubManager$Callback; -Landroid/hardware/location/ContextHubManager$ICallback; -Landroid/hardware/location/ContextHubManager; -Landroid/hardware/location/ContextHubMessage$1; -Landroid/hardware/location/ContextHubMessage; -Landroid/hardware/location/ContextHubTransaction$$ExternalSyntheticLambda0; -Landroid/hardware/location/ContextHubTransaction$$ExternalSyntheticLambda1; -Landroid/hardware/location/ContextHubTransaction$OnCompleteListener; -Landroid/hardware/location/ContextHubTransaction$Response; -Landroid/hardware/location/ContextHubTransaction; -Landroid/hardware/location/GeofenceHardware$GeofenceHardwareMonitorCallbackWrapper; -Landroid/hardware/location/GeofenceHardware; -Landroid/hardware/location/GeofenceHardwareCallback; -Landroid/hardware/location/GeofenceHardwareImpl$1; -Landroid/hardware/location/GeofenceHardwareImpl$2; -Landroid/hardware/location/GeofenceHardwareImpl$3; -Landroid/hardware/location/GeofenceHardwareImpl$GeofenceTransition; -Landroid/hardware/location/GeofenceHardwareImpl$Reaper; -Landroid/hardware/location/GeofenceHardwareImpl; -Landroid/hardware/location/GeofenceHardwareMonitorCallback; -Landroid/hardware/location/GeofenceHardwareMonitorEvent$1; -Landroid/hardware/location/GeofenceHardwareMonitorEvent; -Landroid/hardware/location/GeofenceHardwareRequest; -Landroid/hardware/location/GeofenceHardwareRequestParcelable$1; -Landroid/hardware/location/GeofenceHardwareRequestParcelable; -Landroid/hardware/location/GeofenceHardwareService$1; -Landroid/hardware/location/GeofenceHardwareService; -Landroid/hardware/location/IActivityRecognitionHardware$Stub$Proxy; -Landroid/hardware/location/IActivityRecognitionHardware$Stub; -Landroid/hardware/location/IActivityRecognitionHardware; -Landroid/hardware/location/IActivityRecognitionHardwareClient$Stub$Proxy; -Landroid/hardware/location/IActivityRecognitionHardwareClient$Stub; -Landroid/hardware/location/IActivityRecognitionHardwareClient; -Landroid/hardware/location/IContextHubCallback$Stub$Proxy; -Landroid/hardware/location/IContextHubCallback$Stub; -Landroid/hardware/location/IContextHubCallback; -Landroid/hardware/location/IContextHubClient$Stub$Proxy; -Landroid/hardware/location/IContextHubClient$Stub; -Landroid/hardware/location/IContextHubClient; -Landroid/hardware/location/IContextHubClientCallback$Stub$Proxy; -Landroid/hardware/location/IContextHubClientCallback$Stub; -Landroid/hardware/location/IContextHubClientCallback; -Landroid/hardware/location/IContextHubService$Stub$Proxy; -Landroid/hardware/location/IContextHubService$Stub; -Landroid/hardware/location/IContextHubService; -Landroid/hardware/location/IContextHubTransactionCallback$Stub$Proxy; -Landroid/hardware/location/IContextHubTransactionCallback$Stub; -Landroid/hardware/location/IContextHubTransactionCallback; -Landroid/hardware/location/IGeofenceHardware$Stub$Proxy; -Landroid/hardware/location/IGeofenceHardware$Stub; -Landroid/hardware/location/IGeofenceHardware; -Landroid/hardware/location/IGeofenceHardwareCallback$Stub$Proxy; -Landroid/hardware/location/IGeofenceHardwareCallback$Stub; -Landroid/hardware/location/IGeofenceHardwareCallback; -Landroid/hardware/location/IGeofenceHardwareMonitorCallback$Stub$Proxy; -Landroid/hardware/location/IGeofenceHardwareMonitorCallback$Stub; -Landroid/hardware/location/IGeofenceHardwareMonitorCallback; -Landroid/hardware/location/MemoryRegion$1; -Landroid/hardware/location/MemoryRegion; -Landroid/hardware/location/NanoApp$1; -Landroid/hardware/location/NanoApp; -Landroid/hardware/location/NanoAppBinary$1; -Landroid/hardware/location/NanoAppBinary; -Landroid/hardware/location/NanoAppFilter$1; -Landroid/hardware/location/NanoAppFilter; -Landroid/hardware/location/NanoAppInstanceInfo$1; -Landroid/hardware/location/NanoAppInstanceInfo; -Landroid/hardware/location/NanoAppMessage$1; -Landroid/hardware/location/NanoAppMessage-IA; -Landroid/hardware/location/NanoAppMessage; -Landroid/hardware/location/NanoAppRpcService$1; -Landroid/hardware/location/NanoAppRpcService; -Landroid/hardware/location/NanoAppState$1; -Landroid/hardware/location/NanoAppState-IA; -Landroid/hardware/location/NanoAppState; -Landroid/hardware/power/SessionMode; -Landroid/hardware/radio/ITuner$Stub; -Landroid/hardware/radio/ITuner; -Landroid/hardware/radio/ITunerCallback; -Landroid/hardware/radio/ProgramSelector$1; -Landroid/hardware/radio/ProgramSelector$Identifier$1; -Landroid/hardware/radio/ProgramSelector$Identifier; -Landroid/hardware/radio/ProgramSelector; -Landroid/hardware/radio/RadioManager$AmBandConfig$1; -Landroid/hardware/radio/RadioManager$AmBandConfig; -Landroid/hardware/radio/RadioManager$AmBandDescriptor$1; -Landroid/hardware/radio/RadioManager$AmBandDescriptor; -Landroid/hardware/radio/RadioManager$BandConfig$1; -Landroid/hardware/radio/RadioManager$BandConfig; -Landroid/hardware/radio/RadioManager$BandDescriptor$1; -Landroid/hardware/radio/RadioManager$BandDescriptor; -Landroid/hardware/radio/RadioManager$FmBandConfig$1; -Landroid/hardware/radio/RadioManager$FmBandConfig; -Landroid/hardware/radio/RadioManager$FmBandDescriptor$1; -Landroid/hardware/radio/RadioManager$FmBandDescriptor; -Landroid/hardware/radio/RadioManager$ModuleProperties$1; -Landroid/hardware/radio/RadioManager$ModuleProperties; -Landroid/hardware/radio/RadioManager$ProgramInfo$1; -Landroid/hardware/radio/RadioManager$ProgramInfo; -Landroid/hardware/radio/RadioManager; -Landroid/hardware/radio/RadioMetadata$1; -Landroid/hardware/radio/RadioMetadata; -Landroid/hardware/radio/V1_0/ActivityStatsInfo; -Landroid/hardware/radio/V1_0/AppStatus; -Landroid/hardware/radio/V1_0/Call; -Landroid/hardware/radio/V1_0/CallForwardInfo; -Landroid/hardware/radio/V1_0/CardState; -Landroid/hardware/radio/V1_0/CardStatus; -Landroid/hardware/radio/V1_0/Carrier; -Landroid/hardware/radio/V1_0/CarrierRestrictions; -Landroid/hardware/radio/V1_0/CdmaBroadcastSmsConfigInfo; -Landroid/hardware/radio/V1_0/CdmaCallWaiting; -Landroid/hardware/radio/V1_0/CdmaDisplayInfoRecord; -Landroid/hardware/radio/V1_0/CdmaInformationRecord; -Landroid/hardware/radio/V1_0/CdmaInformationRecords; -Landroid/hardware/radio/V1_0/CdmaLineControlInfoRecord; -Landroid/hardware/radio/V1_0/CdmaNumberInfoRecord; -Landroid/hardware/radio/V1_0/CdmaRedirectingNumberInfoRecord; -Landroid/hardware/radio/V1_0/CdmaSignalInfoRecord; -Landroid/hardware/radio/V1_0/CdmaSignalStrength; -Landroid/hardware/radio/V1_0/CdmaSmsAck; -Landroid/hardware/radio/V1_0/CdmaSmsAddress; -Landroid/hardware/radio/V1_0/CdmaSmsMessage; -Landroid/hardware/radio/V1_0/CdmaSmsSubaddress; -Landroid/hardware/radio/V1_0/CdmaSmsWriteArgs; -Landroid/hardware/radio/V1_0/CdmaT53AudioControlInfoRecord; -Landroid/hardware/radio/V1_0/CdmaT53ClirInfoRecord; -Landroid/hardware/radio/V1_0/CellIdentity; -Landroid/hardware/radio/V1_0/CellIdentityCdma; -Landroid/hardware/radio/V1_0/CellIdentityGsm; -Landroid/hardware/radio/V1_0/CellIdentityLte; -Landroid/hardware/radio/V1_0/CellIdentityTdscdma; -Landroid/hardware/radio/V1_0/CellIdentityWcdma; -Landroid/hardware/radio/V1_0/CellInfo; -Landroid/hardware/radio/V1_0/CellInfoCdma; -Landroid/hardware/radio/V1_0/CellInfoGsm; -Landroid/hardware/radio/V1_0/CellInfoLte; -Landroid/hardware/radio/V1_0/CellInfoTdscdma; -Landroid/hardware/radio/V1_0/CellInfoType; -Landroid/hardware/radio/V1_0/CellInfoWcdma; -Landroid/hardware/radio/V1_0/CfData; -Landroid/hardware/radio/V1_0/DataCallFailCause; -Landroid/hardware/radio/V1_0/DataProfileInfo; -Landroid/hardware/radio/V1_0/DataRegStateResult; -Landroid/hardware/radio/V1_0/Dial; -Landroid/hardware/radio/V1_0/EvdoSignalStrength; -Landroid/hardware/radio/V1_0/GsmBroadcastSmsConfigInfo; -Landroid/hardware/radio/V1_0/GsmSignalStrength; -Landroid/hardware/radio/V1_0/GsmSmsMessage; -Landroid/hardware/radio/V1_0/HardwareConfig; -Landroid/hardware/radio/V1_0/HardwareConfigModem; -Landroid/hardware/radio/V1_0/HardwareConfigSim; -Landroid/hardware/radio/V1_0/IRadio; -Landroid/hardware/radio/V1_0/IRadioIndication; -Landroid/hardware/radio/V1_0/IRadioResponse; -Landroid/hardware/radio/V1_0/IccIo; -Landroid/hardware/radio/V1_0/IccIoResult; -Landroid/hardware/radio/V1_0/ImsSmsMessage; -Landroid/hardware/radio/V1_0/LastCallFailCauseInfo; -Landroid/hardware/radio/V1_0/LceDataInfo; -Landroid/hardware/radio/V1_0/LceStatusInfo; -Landroid/hardware/radio/V1_0/LteSignalStrength; -Landroid/hardware/radio/V1_0/NeighboringCell; -Landroid/hardware/radio/V1_0/NvWriteItem; -Landroid/hardware/radio/V1_0/OperatorInfo; -Landroid/hardware/radio/V1_0/PcoDataInfo; -Landroid/hardware/radio/V1_0/RadioCapability; -Landroid/hardware/radio/V1_0/RadioResponseInfo; -Landroid/hardware/radio/V1_0/RegState; -Landroid/hardware/radio/V1_0/SelectUiccSub; -Landroid/hardware/radio/V1_0/SendSmsResult; -Landroid/hardware/radio/V1_0/SetupDataCallResult; -Landroid/hardware/radio/V1_0/SignalStrength; -Landroid/hardware/radio/V1_0/SimApdu; -Landroid/hardware/radio/V1_0/SimRefreshResult; -Landroid/hardware/radio/V1_0/SmsWriteArgs; -Landroid/hardware/radio/V1_0/SsInfoData; -Landroid/hardware/radio/V1_0/StkCcUnsolSsResult; -Landroid/hardware/radio/V1_0/SuppSvcNotification; -Landroid/hardware/radio/V1_0/TdScdmaSignalStrength; -Landroid/hardware/radio/V1_0/UusInfo; -Landroid/hardware/radio/V1_0/VoiceRegStateResult; -Landroid/hardware/radio/V1_0/WcdmaSignalStrength; -Landroid/hardware/radio/V1_1/IRadio$Proxy; -Landroid/hardware/radio/V1_1/IRadio; -Landroid/hardware/radio/V1_1/IRadioIndication; -Landroid/hardware/radio/V1_1/IRadioResponse; -Landroid/hardware/radio/V1_1/ImsiEncryptionInfo; -Landroid/hardware/radio/V1_1/KeepaliveRequest; -Landroid/hardware/radio/V1_1/KeepaliveStatus; -Landroid/hardware/radio/V1_1/NetworkScanRequest; -Landroid/hardware/radio/V1_1/NetworkScanResult; -Landroid/hardware/radio/V1_1/RadioAccessSpecifier; -Landroid/hardware/radio/V1_2/Call; -Landroid/hardware/radio/V1_2/CardStatus; -Landroid/hardware/radio/V1_2/CellIdentity; -Landroid/hardware/radio/V1_2/CellIdentityCdma; -Landroid/hardware/radio/V1_2/CellIdentityGsm; -Landroid/hardware/radio/V1_2/CellIdentityLte; -Landroid/hardware/radio/V1_2/CellIdentityOperatorNames; -Landroid/hardware/radio/V1_2/CellIdentityTdscdma; -Landroid/hardware/radio/V1_2/CellIdentityWcdma; -Landroid/hardware/radio/V1_2/CellInfo; -Landroid/hardware/radio/V1_2/CellInfoCdma; -Landroid/hardware/radio/V1_2/CellInfoGsm; -Landroid/hardware/radio/V1_2/CellInfoLte; -Landroid/hardware/radio/V1_2/CellInfoTdscdma; -Landroid/hardware/radio/V1_2/CellInfoWcdma; -Landroid/hardware/radio/V1_2/DataRegStateResult; -Landroid/hardware/radio/V1_2/IRadio; -Landroid/hardware/radio/V1_2/IRadioIndication; -Landroid/hardware/radio/V1_2/IRadioResponse; -Landroid/hardware/radio/V1_2/LinkCapacityEstimate; -Landroid/hardware/radio/V1_2/NetworkScanRequest; -Landroid/hardware/radio/V1_2/NetworkScanResult; -Landroid/hardware/radio/V1_2/PhysicalChannelConfig; -Landroid/hardware/radio/V1_2/SignalStrength; -Landroid/hardware/radio/V1_2/TdscdmaSignalStrength; -Landroid/hardware/radio/V1_2/VoiceRegStateResult; -Landroid/hardware/radio/V1_2/WcdmaSignalStrength; -Landroid/hardware/radio/V1_3/IRadio$Proxy; -Landroid/hardware/radio/V1_3/IRadio; -Landroid/hardware/radio/V1_3/IRadioIndication; -Landroid/hardware/radio/V1_3/IRadioResponse; -Landroid/hardware/radio/V1_4/CardStatus; -Landroid/hardware/radio/V1_4/CarrierRestrictionsWithPriority; -Landroid/hardware/radio/V1_4/CellConfigLte; -Landroid/hardware/radio/V1_4/CellIdentityNr; -Landroid/hardware/radio/V1_4/CellInfo$Info; -Landroid/hardware/radio/V1_4/CellInfo; -Landroid/hardware/radio/V1_4/CellInfoLte; -Landroid/hardware/radio/V1_4/CellInfoNr; -Landroid/hardware/radio/V1_4/DataProfileInfo; -Landroid/hardware/radio/V1_4/DataRegStateResult$VopsInfo$hidl_discriminator; -Landroid/hardware/radio/V1_4/DataRegStateResult$VopsInfo; -Landroid/hardware/radio/V1_4/DataRegStateResult; -Landroid/hardware/radio/V1_4/EmergencyNumber; -Landroid/hardware/radio/V1_4/IRadio$Proxy; -Landroid/hardware/radio/V1_4/IRadio; -Landroid/hardware/radio/V1_4/IRadioIndication$Stub; -Landroid/hardware/radio/V1_4/IRadioIndication; -Landroid/hardware/radio/V1_4/IRadioResponse$Stub; -Landroid/hardware/radio/V1_4/IRadioResponse; -Landroid/hardware/radio/V1_4/LteVopsInfo; -Landroid/hardware/radio/V1_4/NetworkScanResult; -Landroid/hardware/radio/V1_4/NrIndicators; -Landroid/hardware/radio/V1_4/NrSignalStrength; -Landroid/hardware/radio/V1_4/PhysicalChannelConfig; -Landroid/hardware/radio/V1_4/RadioFrequencyInfo; -Landroid/hardware/radio/V1_4/SetupDataCallResult; -Landroid/hardware/radio/V1_4/SignalStrength; -Landroid/hardware/radio/V1_5/AppStatus; -Landroid/hardware/radio/V1_5/CardStatus; -Landroid/hardware/radio/V1_5/CellIdentity; -Landroid/hardware/radio/V1_5/CellIdentityGsm; -Landroid/hardware/radio/V1_5/CellIdentityLte; -Landroid/hardware/radio/V1_5/CellIdentityNr; -Landroid/hardware/radio/V1_5/CellIdentityTdscdma; -Landroid/hardware/radio/V1_5/CellIdentityWcdma; -Landroid/hardware/radio/V1_5/CellInfo; -Landroid/hardware/radio/V1_5/ClosedSubscriberGroupInfo; -Landroid/hardware/radio/V1_5/DataProfileInfo; -Landroid/hardware/radio/V1_5/IRadio; -Landroid/hardware/radio/V1_5/IRadioIndication$Stub; -Landroid/hardware/radio/V1_5/IRadioIndication; -Landroid/hardware/radio/V1_5/IRadioResponse$Stub; -Landroid/hardware/radio/V1_5/IRadioResponse; -Landroid/hardware/radio/V1_5/LinkAddress; -Landroid/hardware/radio/V1_5/NetworkScanRequest; -Landroid/hardware/radio/V1_5/NetworkScanResult; -Landroid/hardware/radio/V1_5/OptionalCsgInfo; -Landroid/hardware/radio/V1_5/RadioAccessSpecifier$Bands; -Landroid/hardware/radio/V1_5/RadioAccessSpecifier; -Landroid/hardware/radio/V1_5/RegStateResult$AccessTechnologySpecificInfo$Cdma2000RegistrationInfo; -Landroid/hardware/radio/V1_5/RegStateResult$AccessTechnologySpecificInfo$EutranRegistrationInfo; -Landroid/hardware/radio/V1_5/RegStateResult$AccessTechnologySpecificInfo; -Landroid/hardware/radio/V1_5/RegStateResult; -Landroid/hardware/radio/V1_5/SetupDataCallResult; -Landroid/hardware/radio/V1_5/SignalThresholdInfo; -Landroid/hardware/radio/V1_6/Call; -Landroid/hardware/radio/V1_6/CellInfo; -Landroid/hardware/radio/V1_6/IRadio; -Landroid/hardware/radio/V1_6/IRadioIndication$Stub; -Landroid/hardware/radio/V1_6/IRadioIndication; -Landroid/hardware/radio/V1_6/IRadioResponse$Stub; -Landroid/hardware/radio/V1_6/IRadioResponse; -Landroid/hardware/radio/V1_6/ImsiEncryptionInfo; -Landroid/hardware/radio/V1_6/LinkCapacityEstimate; -Landroid/hardware/radio/V1_6/NetworkScanResult; -Landroid/hardware/radio/V1_6/NrVopsInfo; -Landroid/hardware/radio/V1_6/OptionalDnn; -Landroid/hardware/radio/V1_6/OptionalOsAppId; -Landroid/hardware/radio/V1_6/OptionalSliceInfo; -Landroid/hardware/radio/V1_6/OptionalTrafficDescriptor; -Landroid/hardware/radio/V1_6/OsAppId; -Landroid/hardware/radio/V1_6/PhonebookCapacity; -Landroid/hardware/radio/V1_6/PhonebookRecordInfo; -Landroid/hardware/radio/V1_6/PhysicalChannelConfig$Band; -Landroid/hardware/radio/V1_6/PhysicalChannelConfig; -Landroid/hardware/radio/V1_6/Qos; -Landroid/hardware/radio/V1_6/QosSession; -Landroid/hardware/radio/V1_6/RadioResponseInfo; -Landroid/hardware/radio/V1_6/RegStateResult$AccessTechnologySpecificInfo; -Landroid/hardware/radio/V1_6/RegStateResult; -Landroid/hardware/radio/V1_6/SetupDataCallResult; -Landroid/hardware/radio/V1_6/SignalStrength; -Landroid/hardware/radio/V1_6/SliceInfo; -Landroid/hardware/radio/V1_6/SlicingConfig; -Landroid/hardware/radio/V1_6/TrafficDescriptor; -Landroid/hardware/radio/config/V1_0/IRadioConfig; -Landroid/hardware/radio/config/V1_0/IRadioConfigIndication; -Landroid/hardware/radio/config/V1_0/IRadioConfigResponse; -Landroid/hardware/radio/config/V1_0/SimSlotStatus; -Landroid/hardware/radio/config/V1_0/SlotState; -Landroid/hardware/radio/config/V1_1/IRadioConfig$Proxy; -Landroid/hardware/radio/config/V1_1/IRadioConfig; -Landroid/hardware/radio/config/V1_1/IRadioConfigResponse; -Landroid/hardware/radio/config/V1_1/ModemInfo; -Landroid/hardware/radio/config/V1_1/ModemsConfig; -Landroid/hardware/radio/config/V1_1/PhoneCapability; -Landroid/hardware/radio/config/V1_2/IRadioConfigIndication$Stub; -Landroid/hardware/radio/config/V1_2/IRadioConfigIndication; -Landroid/hardware/radio/config/V1_2/IRadioConfigResponse; -Landroid/hardware/radio/config/V1_2/SimSlotStatus; -Landroid/hardware/radio/config/V1_3/IRadioConfig$Proxy; -Landroid/hardware/radio/config/V1_3/IRadioConfig; -Landroid/hardware/radio/config/V1_3/IRadioConfigResponse$Stub; -Landroid/hardware/radio/config/V1_3/IRadioConfigResponse; -Landroid/hardware/security/keymint/KeyParameter$1; -Landroid/hardware/security/keymint/KeyParameter; -Landroid/hardware/security/keymint/KeyParameterValue$1; -Landroid/hardware/security/keymint/KeyParameterValue-IA; -Landroid/hardware/security/keymint/KeyParameterValue; -Landroid/hardware/sidekick/SidekickInternal; -Landroid/hardware/soundtrigger/ConversionUtil; -Landroid/hardware/soundtrigger/IRecognitionStatusCallback$Stub$Proxy; -Landroid/hardware/soundtrigger/IRecognitionStatusCallback$Stub; -Landroid/hardware/soundtrigger/IRecognitionStatusCallback; -Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo; -Landroid/hardware/soundtrigger/KeyphraseMetadata$1; -Landroid/hardware/soundtrigger/KeyphraseMetadata; -Landroid/hardware/soundtrigger/SoundTrigger$ConfidenceLevel$1; -Landroid/hardware/soundtrigger/SoundTrigger$ConfidenceLevel; -Landroid/hardware/soundtrigger/SoundTrigger$GenericRecognitionEvent$1; -Landroid/hardware/soundtrigger/SoundTrigger$GenericRecognitionEvent; -Landroid/hardware/soundtrigger/SoundTrigger$GenericSoundModel$1; -Landroid/hardware/soundtrigger/SoundTrigger$GenericSoundModel; -Landroid/hardware/soundtrigger/SoundTrigger$Keyphrase$1; -Landroid/hardware/soundtrigger/SoundTrigger$Keyphrase; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionEvent$1; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionEvent; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionExtra$1; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionExtra; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseSoundModel$1; -Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseSoundModel; -Landroid/hardware/soundtrigger/SoundTrigger$ModelParamRange$1; -Landroid/hardware/soundtrigger/SoundTrigger$ModelParamRange; -Landroid/hardware/soundtrigger/SoundTrigger$ModuleProperties$1; -Landroid/hardware/soundtrigger/SoundTrigger$ModuleProperties; -Landroid/hardware/soundtrigger/SoundTrigger$RecognitionConfig$1; -Landroid/hardware/soundtrigger/SoundTrigger$RecognitionConfig; -Landroid/hardware/soundtrigger/SoundTrigger$RecognitionEvent$1; -Landroid/hardware/soundtrigger/SoundTrigger$RecognitionEvent; -Landroid/hardware/soundtrigger/SoundTrigger$SoundModel; -Landroid/hardware/soundtrigger/SoundTrigger$StatusListener; -Landroid/hardware/soundtrigger/SoundTrigger; -Landroid/hardware/soundtrigger/SoundTriggerModule$EventHandlerDelegate$1; -Landroid/hardware/soundtrigger/SoundTriggerModule$EventHandlerDelegate; -Landroid/hardware/soundtrigger/SoundTriggerModule; -Landroid/hardware/thermal/V1_0/CoolingType; -Landroid/hardware/thermal/V1_0/IThermal; -Landroid/hardware/thermal/V1_0/ThermalStatus; -Landroid/hardware/thermal/V2_0/CoolingDevice; -Landroid/hardware/thermal/V2_0/IThermal$Proxy; -Landroid/hardware/thermal/V2_0/IThermal$getCurrentCoolingDevicesCallback; -Landroid/hardware/thermal/V2_0/IThermal$getCurrentTemperaturesCallback; -Landroid/hardware/thermal/V2_0/IThermal$getTemperatureThresholdsCallback; -Landroid/hardware/thermal/V2_0/IThermal; -Landroid/hardware/thermal/V2_0/IThermalChangedCallback$Stub; -Landroid/hardware/thermal/V2_0/IThermalChangedCallback; -Landroid/hardware/thermal/V2_0/Temperature; -Landroid/hardware/thermal/V2_0/TemperatureThreshold; -Landroid/hardware/usb/AccessoryFilter; -Landroid/hardware/usb/DeviceFilter; -Landroid/hardware/usb/IUsbManager$Stub$Proxy; -Landroid/hardware/usb/IUsbManager$Stub; -Landroid/hardware/usb/IUsbManager; -Landroid/hardware/usb/IUsbSerialReader$Stub; -Landroid/hardware/usb/IUsbSerialReader; -Landroid/hardware/usb/ParcelableUsbPort$1; -Landroid/hardware/usb/ParcelableUsbPort; -Landroid/hardware/usb/UsbAccessory$2; -Landroid/hardware/usb/UsbAccessory; -Landroid/hardware/usb/UsbConfiguration$1; -Landroid/hardware/usb/UsbConfiguration; -Landroid/hardware/usb/UsbDevice$1; -Landroid/hardware/usb/UsbDevice$Builder; -Landroid/hardware/usb/UsbDevice; -Landroid/hardware/usb/UsbDeviceConnection; -Landroid/hardware/usb/UsbInterface$1; -Landroid/hardware/usb/UsbInterface; -Landroid/hardware/usb/UsbManager; -Landroid/hardware/usb/UsbPort; -Landroid/hardware/usb/UsbPortStatus$1; -Landroid/hardware/usb/UsbPortStatus; -Landroid/hardware/usb/UsbRequest; -Landroid/hardware/usb/gadget/V1_0/IUsbGadget$Proxy; -Landroid/hardware/usb/gadget/V1_0/IUsbGadget; -Landroid/hardware/usb/gadget/V1_0/IUsbGadgetCallback$Stub; -Landroid/hardware/usb/gadget/V1_0/IUsbGadgetCallback; -Landroid/icu/impl/Assert; -Landroid/icu/impl/BMPSet; -Landroid/icu/impl/CSCharacterIterator; -Landroid/icu/impl/CacheBase; -Landroid/icu/impl/CacheValue$NullValue; -Landroid/icu/impl/CacheValue$SoftValue; -Landroid/icu/impl/CacheValue$Strength; -Landroid/icu/impl/CacheValue$StrongValue; -Landroid/icu/impl/CacheValue; -Landroid/icu/impl/CalType; -Landroid/icu/impl/CalendarAstronomer$1; -Landroid/icu/impl/CalendarAstronomer$2; -Landroid/icu/impl/CalendarAstronomer$AngleFunc; -Landroid/icu/impl/CalendarAstronomer$Ecliptic; -Landroid/icu/impl/CalendarAstronomer$Equatorial; -Landroid/icu/impl/CalendarAstronomer$MoonAge; -Landroid/icu/impl/CalendarAstronomer$SolarLongitude; -Landroid/icu/impl/CalendarAstronomer; -Landroid/icu/impl/CalendarCache; -Landroid/icu/impl/CalendarUtil$CalendarPreferences; -Landroid/icu/impl/CalendarUtil; -Landroid/icu/impl/CaseMapImpl$GreekUpper; -Landroid/icu/impl/CaseMapImpl$StringContextIterator; -Landroid/icu/impl/CaseMapImpl$WholeStringBreakIterator; -Landroid/icu/impl/CaseMapImpl; -Landroid/icu/impl/CharTrie; -Landroid/icu/impl/CharacterIteration; -Landroid/icu/impl/CharacterIteratorWrapper; -Landroid/icu/impl/CharacterPropertiesImpl; -Landroid/icu/impl/ClassLoaderUtil$1; -Landroid/icu/impl/ClassLoaderUtil$BootstrapClassLoader; -Landroid/icu/impl/ClassLoaderUtil; -Landroid/icu/impl/CollectionSet; -Landroid/icu/impl/CurrencyData$1; -Landroid/icu/impl/CurrencyData$CurrencyDisplayInfo; -Landroid/icu/impl/CurrencyData$CurrencyDisplayInfoProvider; -Landroid/icu/impl/CurrencyData$CurrencyFormatInfo; -Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingPattern; -Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingType; -Landroid/icu/impl/CurrencyData$CurrencySpacingInfo; -Landroid/icu/impl/CurrencyData$DefaultInfo; -Landroid/icu/impl/CurrencyData; -Landroid/icu/impl/DateNumberFormat; -Landroid/icu/impl/DayPeriodRules$CutoffType; -Landroid/icu/impl/DayPeriodRules$DayPeriod; -Landroid/icu/impl/DayPeriodRules$DayPeriodRulesCountSink; -Landroid/icu/impl/DayPeriodRules$DayPeriodRulesData; -Landroid/icu/impl/DayPeriodRules$DayPeriodRulesDataSink; -Landroid/icu/impl/DayPeriodRules-IA; -Landroid/icu/impl/DayPeriodRules; -Landroid/icu/impl/DontCareFieldPosition; -Landroid/icu/impl/EmojiProps$IsAcceptable; -Landroid/icu/impl/EmojiProps; -Landroid/icu/impl/EraRules; -Landroid/icu/impl/FormattedStringBuilder$FieldWrapper; -Landroid/icu/impl/FormattedStringBuilder; -Landroid/icu/impl/FormattedValueFieldPositionIteratorImpl$FieldWithValue; -Landroid/icu/impl/FormattedValueFieldPositionIteratorImpl; -Landroid/icu/impl/FormattedValueStringBuilderImpl$NullField; -Landroid/icu/impl/FormattedValueStringBuilderImpl$SpanFieldPlaceholder; -Landroid/icu/impl/FormattedValueStringBuilderImpl; -Landroid/icu/impl/Grego; -Landroid/icu/impl/ICUBinary$Authenticate; -Landroid/icu/impl/ICUBinary$DatPackageReader$IsAcceptable; -Landroid/icu/impl/ICUBinary$DatPackageReader; -Landroid/icu/impl/ICUBinary$DataFile; -Landroid/icu/impl/ICUBinary$PackageDataFile; -Landroid/icu/impl/ICUBinary$SingleDataFile; -Landroid/icu/impl/ICUBinary; -Landroid/icu/impl/ICUCache; -Landroid/icu/impl/ICUConfig$1; -Landroid/icu/impl/ICUConfig; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink$EntrypointTable; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$FormattingData; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$ParsingData; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$VariantSymbol; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo; -Landroid/icu/impl/ICUCurrencyDisplayInfoProvider; -Landroid/icu/impl/ICUCurrencyMetaInfo$Collector; -Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector-IA; -Landroid/icu/impl/ICUCurrencyMetaInfo$CurrencyCollector; -Landroid/icu/impl/ICUCurrencyMetaInfo$InfoCollector; -Landroid/icu/impl/ICUCurrencyMetaInfo$RegionCollector; -Landroid/icu/impl/ICUCurrencyMetaInfo$UniqueList; -Landroid/icu/impl/ICUCurrencyMetaInfo; -Landroid/icu/impl/ICUData$1; -Landroid/icu/impl/ICUData$2; -Landroid/icu/impl/ICUData$3; -Landroid/icu/impl/ICUData; -Landroid/icu/impl/ICUDataVersion; -Landroid/icu/impl/ICUDebug; -Landroid/icu/impl/ICULangDataTables; -Landroid/icu/impl/ICULocaleService$ICUResourceBundleFactory; -Landroid/icu/impl/ICULocaleService$LocaleKey; -Landroid/icu/impl/ICULocaleService$LocaleKeyFactory; -Landroid/icu/impl/ICULocaleService$SimpleLocaleKeyFactory; -Landroid/icu/impl/ICULocaleService; -Landroid/icu/impl/ICUNotifier$NotifyThread; -Landroid/icu/impl/ICUNotifier; -Landroid/icu/impl/ICURWLock$Stats; -Landroid/icu/impl/ICURWLock; -Landroid/icu/impl/ICURegionDataTables; -Landroid/icu/impl/ICUResourceBundle$1; -Landroid/icu/impl/ICUResourceBundle$1AllChildrenSink; -Landroid/icu/impl/ICUResourceBundle$2$1; -Landroid/icu/impl/ICUResourceBundle$2; -Landroid/icu/impl/ICUResourceBundle$3; -Landroid/icu/impl/ICUResourceBundle$4; -Landroid/icu/impl/ICUResourceBundle$5; -Landroid/icu/impl/ICUResourceBundle$AvailEntry; -Landroid/icu/impl/ICUResourceBundle$AvailableLocalesSink; -Landroid/icu/impl/ICUResourceBundle$Loader-IA; -Landroid/icu/impl/ICUResourceBundle$Loader; -Landroid/icu/impl/ICUResourceBundle$OpenType; -Landroid/icu/impl/ICUResourceBundle$WholeBundle; -Landroid/icu/impl/ICUResourceBundle; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceArray; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceBinary; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceContainer; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceInt; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceIntVector; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceString; -Landroid/icu/impl/ICUResourceBundleImpl$ResourceTable; -Landroid/icu/impl/ICUResourceBundleImpl; -Landroid/icu/impl/ICUResourceBundleReader$Array16; -Landroid/icu/impl/ICUResourceBundleReader$Array32; -Landroid/icu/impl/ICUResourceBundleReader$Array; -Landroid/icu/impl/ICUResourceBundleReader$Container; -Landroid/icu/impl/ICUResourceBundleReader$IsAcceptable; -Landroid/icu/impl/ICUResourceBundleReader$ReaderCache; -Landroid/icu/impl/ICUResourceBundleReader$ReaderCacheKey; -Landroid/icu/impl/ICUResourceBundleReader$ReaderValue; -Landroid/icu/impl/ICUResourceBundleReader$ResourceCache$Level; -Landroid/icu/impl/ICUResourceBundleReader$ResourceCache; -Landroid/icu/impl/ICUResourceBundleReader$Table1632; -Landroid/icu/impl/ICUResourceBundleReader$Table16; -Landroid/icu/impl/ICUResourceBundleReader$Table32; -Landroid/icu/impl/ICUResourceBundleReader$Table; -Landroid/icu/impl/ICUResourceBundleReader-IA; -Landroid/icu/impl/ICUResourceBundleReader; -Landroid/icu/impl/ICUResourceTableAccess; -Landroid/icu/impl/ICUService$CacheEntry; -Landroid/icu/impl/ICUService$Factory; -Landroid/icu/impl/ICUService$Key; -Landroid/icu/impl/ICUService$LocaleRef; -Landroid/icu/impl/ICUService$ServiceListener; -Landroid/icu/impl/ICUService$SimpleFactory; -Landroid/icu/impl/ICUService; -Landroid/icu/impl/IDNA2003; -Landroid/icu/impl/IllegalIcuArgumentException; -Landroid/icu/impl/IntTrie; -Landroid/icu/impl/IntTrieBuilder; -Landroid/icu/impl/InvalidFormatException; -Landroid/icu/impl/IterableComparator; -Landroid/icu/impl/JavaTimeZone; -Landroid/icu/impl/LocaleDisplayNamesImpl$1; -Landroid/icu/impl/LocaleDisplayNamesImpl$Cache; -Landroid/icu/impl/LocaleDisplayNamesImpl$CapitalizationContextSink; -Landroid/icu/impl/LocaleDisplayNamesImpl$CapitalizationContextUsage; -Landroid/icu/impl/LocaleDisplayNamesImpl$DataTable; -Landroid/icu/impl/LocaleDisplayNamesImpl$DataTableType; -Landroid/icu/impl/LocaleDisplayNamesImpl$DataTables$1; -Landroid/icu/impl/LocaleDisplayNamesImpl$DataTables; -Landroid/icu/impl/LocaleDisplayNamesImpl$ICUDataTable; -Landroid/icu/impl/LocaleDisplayNamesImpl$ICUDataTables; -Landroid/icu/impl/LocaleDisplayNamesImpl$LangDataTables; -Landroid/icu/impl/LocaleDisplayNamesImpl$RegionDataTables; -Landroid/icu/impl/LocaleDisplayNamesImpl; -Landroid/icu/impl/LocaleFallbackData; -Landroid/icu/impl/LocaleIDParser$1; -Landroid/icu/impl/LocaleIDParser; -Landroid/icu/impl/LocaleIDs; -Landroid/icu/impl/LocaleUtility; -Landroid/icu/impl/Norm2AllModes$1; -Landroid/icu/impl/Norm2AllModes$ComposeNormalizer2; -Landroid/icu/impl/Norm2AllModes$DecomposeNormalizer2; -Landroid/icu/impl/Norm2AllModes$FCDNormalizer2; -Landroid/icu/impl/Norm2AllModes$NFCSingleton; -Landroid/icu/impl/Norm2AllModes$NFKCSingleton; -Landroid/icu/impl/Norm2AllModes$NFKC_CFSingleton; -Landroid/icu/impl/Norm2AllModes$NoopNormalizer2; -Landroid/icu/impl/Norm2AllModes$Norm2AllModesSingleton; -Landroid/icu/impl/Norm2AllModes$Normalizer2WithImpl; -Landroid/icu/impl/Norm2AllModes; -Landroid/icu/impl/Normalizer2Impl$1; -Landroid/icu/impl/Normalizer2Impl$Hangul; -Landroid/icu/impl/Normalizer2Impl$IsAcceptable; -Landroid/icu/impl/Normalizer2Impl$ReorderingBuffer; -Landroid/icu/impl/Normalizer2Impl$UTF16Plus; -Landroid/icu/impl/Normalizer2Impl; -Landroid/icu/impl/OlsonTimeZone; -Landroid/icu/impl/PVecToTrieCompactHandler; -Landroid/icu/impl/Pair; -Landroid/icu/impl/PatternProps; -Landroid/icu/impl/PatternTokenizer; -Landroid/icu/impl/PluralRulesLoader; -Landroid/icu/impl/PropsVectors$1; -Landroid/icu/impl/PropsVectors$CompactHandler; -Landroid/icu/impl/PropsVectors$DefaultGetFoldedValue; -Landroid/icu/impl/PropsVectors$DefaultGetFoldingOffset; -Landroid/icu/impl/PropsVectors; -Landroid/icu/impl/Punycode; -Landroid/icu/impl/RBBIDataWrapper$IsAcceptable; -Landroid/icu/impl/RBBIDataWrapper$RBBIDataHeader; -Landroid/icu/impl/RBBIDataWrapper$RBBIStateTable; -Landroid/icu/impl/RBBIDataWrapper; -Landroid/icu/impl/Relation$SimpleEntry; -Landroid/icu/impl/Relation; -Landroid/icu/impl/RelativeDateFormat$RelDateFmtDataSink; -Landroid/icu/impl/RelativeDateFormat$URelativeString; -Landroid/icu/impl/RelativeDateFormat; -Landroid/icu/impl/ReplaceableUCharacterIterator; -Landroid/icu/impl/ResourceBundleWrapper$1; -Landroid/icu/impl/ResourceBundleWrapper$2$1; -Landroid/icu/impl/ResourceBundleWrapper$2; -Landroid/icu/impl/ResourceBundleWrapper$Loader; -Landroid/icu/impl/ResourceBundleWrapper; -Landroid/icu/impl/Row$R2; -Landroid/icu/impl/Row$R3; -Landroid/icu/impl/Row$R4; -Landroid/icu/impl/Row$R5; -Landroid/icu/impl/Row; -Landroid/icu/impl/RuleCharacterIterator$Position; -Landroid/icu/impl/RuleCharacterIterator; -Landroid/icu/impl/SimpleCache; -Landroid/icu/impl/SimpleFilteredSentenceBreakIterator$Builder; -Landroid/icu/impl/SimpleFilteredSentenceBreakIterator; -Landroid/icu/impl/SimpleFormatterImpl$IterInternal; -Landroid/icu/impl/SimpleFormatterImpl; -Landroid/icu/impl/SoftCache; -Landroid/icu/impl/SortedSetRelation; -Landroid/icu/impl/StandardPlural; -Landroid/icu/impl/StaticUnicodeSets$Key; -Landroid/icu/impl/StaticUnicodeSets$ParseDataSink; -Landroid/icu/impl/StaticUnicodeSets; -Landroid/icu/impl/StringPrepDataReader; -Landroid/icu/impl/StringRange$1; -Landroid/icu/impl/StringRange$Adder; -Landroid/icu/impl/StringRange$Range; -Landroid/icu/impl/StringRange$Ranges; -Landroid/icu/impl/StringRange; -Landroid/icu/impl/StringSegment; -Landroid/icu/impl/TZDBTimeZoneNames$1; -Landroid/icu/impl/TZDBTimeZoneNames$TZDBNameInfo; -Landroid/icu/impl/TZDBTimeZoneNames$TZDBNameSearchHandler; -Landroid/icu/impl/TZDBTimeZoneNames$TZDBNames; -Landroid/icu/impl/TZDBTimeZoneNames; -Landroid/icu/impl/TextTrieMap$CharIterator; -Landroid/icu/impl/TextTrieMap$LongestMatchHandler; -Landroid/icu/impl/TextTrieMap$Node-IA; -Landroid/icu/impl/TextTrieMap$Node; -Landroid/icu/impl/TextTrieMap$Output; -Landroid/icu/impl/TextTrieMap$ResultHandler; -Landroid/icu/impl/TextTrieMap; -Landroid/icu/impl/TimeZoneAdapter; -Landroid/icu/impl/TimeZoneGenericNames$1; -Landroid/icu/impl/TimeZoneGenericNames$Cache; -Landroid/icu/impl/TimeZoneGenericNames$GenericMatchInfo; -Landroid/icu/impl/TimeZoneGenericNames$GenericNameSearchHandler; -Landroid/icu/impl/TimeZoneGenericNames$GenericNameType; -Landroid/icu/impl/TimeZoneGenericNames$NameInfo; -Landroid/icu/impl/TimeZoneGenericNames$Pattern; -Landroid/icu/impl/TimeZoneGenericNames; -Landroid/icu/impl/TimeZoneNamesFactoryImpl; -Landroid/icu/impl/TimeZoneNamesImpl$1; -Landroid/icu/impl/TimeZoneNamesImpl$MZ2TZsCache; -Landroid/icu/impl/TimeZoneNamesImpl$MZMapEntry; -Landroid/icu/impl/TimeZoneNamesImpl$NameInfo; -Landroid/icu/impl/TimeZoneNamesImpl$NameSearchHandler; -Landroid/icu/impl/TimeZoneNamesImpl$TZ2MZsCache; -Landroid/icu/impl/TimeZoneNamesImpl$ZNames$NameTypeIndex; -Landroid/icu/impl/TimeZoneNamesImpl$ZNames; -Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader-IA; -Landroid/icu/impl/TimeZoneNamesImpl$ZNamesLoader; -Landroid/icu/impl/TimeZoneNamesImpl$ZoneStringsLoader; -Landroid/icu/impl/TimeZoneNamesImpl; -Landroid/icu/impl/Trie$DataManipulate; -Landroid/icu/impl/Trie$DefaultGetFoldingOffset; -Landroid/icu/impl/Trie2$1; -Landroid/icu/impl/Trie2$CharSequenceIterator; -Landroid/icu/impl/Trie2$CharSequenceValues; -Landroid/icu/impl/Trie2$Range; -Landroid/icu/impl/Trie2$Trie2Iterator; -Landroid/icu/impl/Trie2$UTrie2Header; -Landroid/icu/impl/Trie2$ValueMapper; -Landroid/icu/impl/Trie2$ValueWidth; -Landroid/icu/impl/Trie2; -Landroid/icu/impl/Trie2Writable$1; -Landroid/icu/impl/Trie2Writable; -Landroid/icu/impl/Trie2_16; -Landroid/icu/impl/Trie2_32; -Landroid/icu/impl/Trie; -Landroid/icu/impl/TrieBuilder$DataManipulate; -Landroid/icu/impl/TrieBuilder; -Landroid/icu/impl/TrieIterator; -Landroid/icu/impl/UBiDiProps$IsAcceptable; -Landroid/icu/impl/UBiDiProps; -Landroid/icu/impl/UCaseProps$ContextIterator; -Landroid/icu/impl/UCaseProps$IsAcceptable; -Landroid/icu/impl/UCaseProps$LatinCase; -Landroid/icu/impl/UCaseProps; -Landroid/icu/impl/UCharArrayIterator; -Landroid/icu/impl/UCharacterIteratorWrapper; -Landroid/icu/impl/UCharacterName$AlgorithmName; -Landroid/icu/impl/UCharacterName; -Landroid/icu/impl/UCharacterNameChoice; -Landroid/icu/impl/UCharacterNameReader; -Landroid/icu/impl/UCharacterProperty$10; -Landroid/icu/impl/UCharacterProperty$11; -Landroid/icu/impl/UCharacterProperty$12; -Landroid/icu/impl/UCharacterProperty$13; -Landroid/icu/impl/UCharacterProperty$14; -Landroid/icu/impl/UCharacterProperty$15; -Landroid/icu/impl/UCharacterProperty$16; -Landroid/icu/impl/UCharacterProperty$17; -Landroid/icu/impl/UCharacterProperty$18; -Landroid/icu/impl/UCharacterProperty$19; -Landroid/icu/impl/UCharacterProperty$1; -Landroid/icu/impl/UCharacterProperty$20; -Landroid/icu/impl/UCharacterProperty$21; -Landroid/icu/impl/UCharacterProperty$22; -Landroid/icu/impl/UCharacterProperty$23; -Landroid/icu/impl/UCharacterProperty$24; -Landroid/icu/impl/UCharacterProperty$25; -Landroid/icu/impl/UCharacterProperty$26; -Landroid/icu/impl/UCharacterProperty$27; -Landroid/icu/impl/UCharacterProperty$28; -Landroid/icu/impl/UCharacterProperty$29; -Landroid/icu/impl/UCharacterProperty$2; -Landroid/icu/impl/UCharacterProperty$3; -Landroid/icu/impl/UCharacterProperty$4; -Landroid/icu/impl/UCharacterProperty$5; -Landroid/icu/impl/UCharacterProperty$6; -Landroid/icu/impl/UCharacterProperty$7; -Landroid/icu/impl/UCharacterProperty$8; -Landroid/icu/impl/UCharacterProperty$9; -Landroid/icu/impl/UCharacterProperty$BiDiIntProperty; -Landroid/icu/impl/UCharacterProperty$BinaryProperty; -Landroid/icu/impl/UCharacterProperty$CaseBinaryProperty; -Landroid/icu/impl/UCharacterProperty$CombiningClassIntProperty; -Landroid/icu/impl/UCharacterProperty$EmojiBinaryProperty; -Landroid/icu/impl/UCharacterProperty$IntProperty; -Landroid/icu/impl/UCharacterProperty$IsAcceptable; -Landroid/icu/impl/UCharacterProperty$LayoutProps$IsAcceptable; -Landroid/icu/impl/UCharacterProperty$LayoutProps; -Landroid/icu/impl/UCharacterProperty$MathCompatBinaryProperty; -Landroid/icu/impl/UCharacterProperty$NormInertBinaryProperty; -Landroid/icu/impl/UCharacterProperty$NormQuickCheckIntProperty; -Landroid/icu/impl/UCharacterProperty; -Landroid/icu/impl/UCharacterUtility; -Landroid/icu/impl/UPropertyAliases$IsAcceptable; -Landroid/icu/impl/UPropertyAliases; -Landroid/icu/impl/URLHandler$FileURLHandler; -Landroid/icu/impl/URLHandler$JarURLHandler; -Landroid/icu/impl/URLHandler$URLVisitor; -Landroid/icu/impl/URLHandler; -Landroid/icu/impl/UResource$Array; -Landroid/icu/impl/UResource$Key; -Landroid/icu/impl/UResource$Sink; -Landroid/icu/impl/UResource$Table; -Landroid/icu/impl/UResource$Value; -Landroid/icu/impl/UResource; -Landroid/icu/impl/USerializedSet; -Landroid/icu/impl/UTS46; -Landroid/icu/impl/UnicodeRegex$1; -Landroid/icu/impl/UnicodeRegex; -Landroid/icu/impl/UnicodeSetStringSpan$OffsetList; -Landroid/icu/impl/UnicodeSetStringSpan; -Landroid/icu/impl/Utility; -Landroid/icu/impl/UtilityExtensions; -Landroid/icu/impl/ValidIdentifiers$Datasubtype; -Landroid/icu/impl/ValidIdentifiers$Datatype; -Landroid/icu/impl/ValidIdentifiers$ValidityData; -Landroid/icu/impl/ValidIdentifiers$ValiditySet; -Landroid/icu/impl/ValidIdentifiers; -Landroid/icu/impl/ZoneMeta$1; -Landroid/icu/impl/ZoneMeta$CustomTimeZoneCache; -Landroid/icu/impl/ZoneMeta$SystemTimeZoneCache; -Landroid/icu/impl/ZoneMeta; -Landroid/icu/impl/breakiter/DictionaryBreakEngine$DequeI; -Landroid/icu/impl/breakiter/DictionaryBreakEngine; -Landroid/icu/impl/breakiter/LanguageBreakEngine; -Landroid/icu/impl/breakiter/UnhandledBreakEngine; -Landroid/icu/impl/coll/BOCSU; -Landroid/icu/impl/coll/Collation; -Landroid/icu/impl/coll/CollationBuilder$1; -Landroid/icu/impl/coll/CollationBuilder$BundleImporter; -Landroid/icu/impl/coll/CollationBuilder$CEFinalizer; -Landroid/icu/impl/coll/CollationBuilder; -Landroid/icu/impl/coll/CollationCompare; -Landroid/icu/impl/coll/CollationData; -Landroid/icu/impl/coll/CollationDataBuilder$CEModifier; -Landroid/icu/impl/coll/CollationDataBuilder$ConditionalCE32; -Landroid/icu/impl/coll/CollationDataBuilder$CopyHelper; -Landroid/icu/impl/coll/CollationDataBuilder$DataBuilderCollationIterator; -Landroid/icu/impl/coll/CollationDataBuilder; -Landroid/icu/impl/coll/CollationDataReader$IsAcceptable; -Landroid/icu/impl/coll/CollationDataReader; -Landroid/icu/impl/coll/CollationFCD; -Landroid/icu/impl/coll/CollationFastLatin; -Landroid/icu/impl/coll/CollationFastLatinBuilder; -Landroid/icu/impl/coll/CollationIterator$CEBuffer; -Landroid/icu/impl/coll/CollationIterator$SkippedState; -Landroid/icu/impl/coll/CollationIterator; -Landroid/icu/impl/coll/CollationKeys$LevelCallback; -Landroid/icu/impl/coll/CollationKeys$SortKeyByteSink; -Landroid/icu/impl/coll/CollationKeys$SortKeyLevel; -Landroid/icu/impl/coll/CollationKeys; -Landroid/icu/impl/coll/CollationLoader$ASCII; -Landroid/icu/impl/coll/CollationLoader; -Landroid/icu/impl/coll/CollationRoot; -Landroid/icu/impl/coll/CollationRootElements; -Landroid/icu/impl/coll/CollationRuleParser$Importer; -Landroid/icu/impl/coll/CollationRuleParser$Position; -Landroid/icu/impl/coll/CollationRuleParser$Sink; -Landroid/icu/impl/coll/CollationRuleParser; -Landroid/icu/impl/coll/CollationSettings; -Landroid/icu/impl/coll/CollationTailoring; -Landroid/icu/impl/coll/CollationWeights$WeightRange; -Landroid/icu/impl/coll/CollationWeights; -Landroid/icu/impl/coll/ContractionsAndExpansions$CESink; -Landroid/icu/impl/coll/ContractionsAndExpansions; -Landroid/icu/impl/coll/FCDIterCollationIterator$State; -Landroid/icu/impl/coll/FCDIterCollationIterator; -Landroid/icu/impl/coll/FCDUTF16CollationIterator; -Landroid/icu/impl/coll/IterCollationIterator; -Landroid/icu/impl/coll/SharedObject$Reference; -Landroid/icu/impl/coll/SharedObject; -Landroid/icu/impl/coll/TailoredSet; -Landroid/icu/impl/coll/UTF16CollationIterator; -Landroid/icu/impl/coll/UVector32; -Landroid/icu/impl/coll/UVector64; -Landroid/icu/impl/data/HolidayBundle; -Landroid/icu/impl/data/HolidayBundle_da; -Landroid/icu/impl/data/HolidayBundle_da_DK; -Landroid/icu/impl/data/HolidayBundle_de; -Landroid/icu/impl/data/HolidayBundle_de_AT; -Landroid/icu/impl/data/HolidayBundle_de_DE; -Landroid/icu/impl/data/HolidayBundle_el; -Landroid/icu/impl/data/HolidayBundle_el_GR; -Landroid/icu/impl/data/HolidayBundle_en; -Landroid/icu/impl/data/HolidayBundle_en_CA; -Landroid/icu/impl/data/HolidayBundle_en_GB; -Landroid/icu/impl/data/HolidayBundle_en_US; -Landroid/icu/impl/data/HolidayBundle_es; -Landroid/icu/impl/data/HolidayBundle_es_MX; -Landroid/icu/impl/data/HolidayBundle_fr; -Landroid/icu/impl/data/HolidayBundle_fr_CA; -Landroid/icu/impl/data/HolidayBundle_fr_FR; -Landroid/icu/impl/data/HolidayBundle_it; -Landroid/icu/impl/data/HolidayBundle_it_IT; -Landroid/icu/impl/data/HolidayBundle_iw; -Landroid/icu/impl/data/HolidayBundle_iw_IL; -Landroid/icu/impl/data/HolidayBundle_ja_JP; -Landroid/icu/impl/data/ResourceReader; -Landroid/icu/impl/data/TokenIterator; -Landroid/icu/impl/duration/BasicDurationFormat; -Landroid/icu/impl/duration/BasicDurationFormatter; -Landroid/icu/impl/duration/BasicDurationFormatterFactory; -Landroid/icu/impl/duration/BasicPeriodBuilderFactory$Settings; -Landroid/icu/impl/duration/BasicPeriodBuilderFactory; -Landroid/icu/impl/duration/BasicPeriodFormatter; -Landroid/icu/impl/duration/BasicPeriodFormatterFactory$Customizations; -Landroid/icu/impl/duration/BasicPeriodFormatterFactory; -Landroid/icu/impl/duration/BasicPeriodFormatterService; -Landroid/icu/impl/duration/DateFormatter; -Landroid/icu/impl/duration/DurationFormatter; -Landroid/icu/impl/duration/DurationFormatterFactory; -Landroid/icu/impl/duration/FixedUnitBuilder; -Landroid/icu/impl/duration/MultiUnitBuilder; -Landroid/icu/impl/duration/OneOrTwoUnitBuilder; -Landroid/icu/impl/duration/Period; -Landroid/icu/impl/duration/PeriodBuilder; -Landroid/icu/impl/duration/PeriodBuilderFactory; -Landroid/icu/impl/duration/PeriodBuilderImpl; -Landroid/icu/impl/duration/PeriodFormatter; -Landroid/icu/impl/duration/PeriodFormatterFactory; -Landroid/icu/impl/duration/PeriodFormatterService; -Landroid/icu/impl/duration/SingleUnitBuilder; -Landroid/icu/impl/duration/TimeUnit; -Landroid/icu/impl/duration/TimeUnitConstants; -Landroid/icu/impl/duration/impl/DataRecord$ECountVariant; -Landroid/icu/impl/duration/impl/DataRecord$EDecimalHandling; -Landroid/icu/impl/duration/impl/DataRecord$EFractionHandling; -Landroid/icu/impl/duration/impl/DataRecord$EGender; -Landroid/icu/impl/duration/impl/DataRecord$EHalfPlacement; -Landroid/icu/impl/duration/impl/DataRecord$EHalfSupport; -Landroid/icu/impl/duration/impl/DataRecord$EMilliSupport; -Landroid/icu/impl/duration/impl/DataRecord$ENumberSystem; -Landroid/icu/impl/duration/impl/DataRecord$EPluralization; -Landroid/icu/impl/duration/impl/DataRecord$ESeparatorVariant; -Landroid/icu/impl/duration/impl/DataRecord$ETimeDirection; -Landroid/icu/impl/duration/impl/DataRecord$ETimeLimit; -Landroid/icu/impl/duration/impl/DataRecord$EUnitVariant; -Landroid/icu/impl/duration/impl/DataRecord$EZeroHandling; -Landroid/icu/impl/duration/impl/DataRecord$ScopeData; -Landroid/icu/impl/duration/impl/DataRecord; -Landroid/icu/impl/duration/impl/PeriodFormatterData; -Landroid/icu/impl/duration/impl/PeriodFormatterDataService; -Landroid/icu/impl/duration/impl/RecordReader; -Landroid/icu/impl/duration/impl/RecordWriter; -Landroid/icu/impl/duration/impl/ResourceBasedPeriodFormatterDataService; -Landroid/icu/impl/duration/impl/Utils$ChineseDigits; -Landroid/icu/impl/duration/impl/Utils; -Landroid/icu/impl/duration/impl/XMLRecordReader; -Landroid/icu/impl/duration/impl/XMLRecordWriter; -Landroid/icu/impl/locale/AsciiUtil$CaseInsensitiveKey; -Landroid/icu/impl/locale/AsciiUtil; -Landroid/icu/impl/locale/BaseLocale$Cache; -Landroid/icu/impl/locale/BaseLocale$Key; -Landroid/icu/impl/locale/BaseLocale-IA; -Landroid/icu/impl/locale/BaseLocale; -Landroid/icu/impl/locale/Extension; -Landroid/icu/impl/locale/InternalLocaleBuilder$CaseInsensitiveChar; -Landroid/icu/impl/locale/InternalLocaleBuilder$CaseInsensitiveString; -Landroid/icu/impl/locale/InternalLocaleBuilder; -Landroid/icu/impl/locale/KeyTypeData$CodepointsTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$KeyData; -Landroid/icu/impl/locale/KeyTypeData$KeyInfoType; -Landroid/icu/impl/locale/KeyTypeData$PrivateUseKeyValueTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$ReorderCodeTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$RgKeyValueTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$ScriptCodeTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$SpecialType; -Landroid/icu/impl/locale/KeyTypeData$SpecialTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$SubdivisionKeyValueTypeHandler; -Landroid/icu/impl/locale/KeyTypeData$Type; -Landroid/icu/impl/locale/KeyTypeData$TypeInfoType; -Landroid/icu/impl/locale/KeyTypeData$ValueType; -Landroid/icu/impl/locale/KeyTypeData; -Landroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda0; -Landroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda1; -Landroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda2; -Landroid/icu/impl/locale/LSR$CachedDecoder; -Landroid/icu/impl/locale/LSR; -Landroid/icu/impl/locale/LanguageTag; -Landroid/icu/impl/locale/LikelySubtags$1; -Landroid/icu/impl/locale/LikelySubtags$Data; -Landroid/icu/impl/locale/LikelySubtags; -Landroid/icu/impl/locale/LocaleDistance$Data; -Landroid/icu/impl/locale/LocaleDistance; -Landroid/icu/impl/locale/LocaleExtensions; -Landroid/icu/impl/locale/LocaleObjectCache$CacheEntry; -Landroid/icu/impl/locale/LocaleObjectCache; -Landroid/icu/impl/locale/LocaleSyntaxException; -Landroid/icu/impl/locale/LocaleValidityChecker$1; -Landroid/icu/impl/locale/LocaleValidityChecker$SpecialCase; -Landroid/icu/impl/locale/LocaleValidityChecker$Where; -Landroid/icu/impl/locale/LocaleValidityChecker; -Landroid/icu/impl/locale/ParseStatus; -Landroid/icu/impl/locale/StringTokenIterator; -Landroid/icu/impl/locale/UnicodeLocaleExtension; -Landroid/icu/impl/locale/XCldrStub$CollectionUtilities; -Landroid/icu/impl/locale/XCldrStub$FileUtilities; -Landroid/icu/impl/locale/XCldrStub$HashMultimap; -Landroid/icu/impl/locale/XCldrStub$ImmutableMap; -Landroid/icu/impl/locale/XCldrStub$ImmutableMultimap; -Landroid/icu/impl/locale/XCldrStub$ImmutableSet; -Landroid/icu/impl/locale/XCldrStub$Joiner; -Landroid/icu/impl/locale/XCldrStub$LinkedHashMultimap; -Landroid/icu/impl/locale/XCldrStub$Multimap; -Landroid/icu/impl/locale/XCldrStub$MultimapIterator; -Landroid/icu/impl/locale/XCldrStub$Multimaps; -Landroid/icu/impl/locale/XCldrStub$Predicate; -Landroid/icu/impl/locale/XCldrStub$RegexUtilities; -Landroid/icu/impl/locale/XCldrStub$ReusableEntry; -Landroid/icu/impl/locale/XCldrStub$Splitter; -Landroid/icu/impl/locale/XCldrStub$TreeMultimap; -Landroid/icu/impl/locale/XCldrStub; -Landroid/icu/impl/number/AdoptingModifierStore$1; -Landroid/icu/impl/number/AdoptingModifierStore; -Landroid/icu/impl/number/AffixPatternProvider$Flags; -Landroid/icu/impl/number/AffixPatternProvider; -Landroid/icu/impl/number/AffixUtils$SymbolProvider; -Landroid/icu/impl/number/AffixUtils$TokenConsumer; -Landroid/icu/impl/number/AffixUtils; -Landroid/icu/impl/number/CompactData$CompactDataSink; -Landroid/icu/impl/number/CompactData$CompactType; -Landroid/icu/impl/number/CompactData; -Landroid/icu/impl/number/ConstantAffixModifier; -Landroid/icu/impl/number/ConstantMultiFieldModifier; -Landroid/icu/impl/number/CurrencyPluralInfoAffixProvider; -Landroid/icu/impl/number/CurrencySpacingEnabledModifier; -Landroid/icu/impl/number/CustomSymbolCurrency; -Landroid/icu/impl/number/DecimalFormatProperties$ParseMode; -Landroid/icu/impl/number/DecimalFormatProperties; -Landroid/icu/impl/number/DecimalQuantity; -Landroid/icu/impl/number/DecimalQuantity_AbstractBCD$1; -Landroid/icu/impl/number/DecimalQuantity_AbstractBCD; -Landroid/icu/impl/number/DecimalQuantity_DualStorageBCD; -Landroid/icu/impl/number/Grouper$1; -Landroid/icu/impl/number/Grouper; -Landroid/icu/impl/number/LocalizedNumberFormatterAsFormat$Proxy; -Landroid/icu/impl/number/LocalizedNumberFormatterAsFormat; -Landroid/icu/impl/number/LongNameHandler$AliasSink; -Landroid/icu/impl/number/LongNameHandler$PluralTableSink; -Landroid/icu/impl/number/LongNameHandler; -Landroid/icu/impl/number/LongNameMultiplexer$ParentlessMicroPropsGenerator; -Landroid/icu/impl/number/LongNameMultiplexer; -Landroid/icu/impl/number/MacroProps; -Landroid/icu/impl/number/MicroProps; -Landroid/icu/impl/number/MicroPropsGenerator; -Landroid/icu/impl/number/MicroPropsMutator; -Landroid/icu/impl/number/MixedUnitLongNameHandler; -Landroid/icu/impl/number/Modifier$Parameters; -Landroid/icu/impl/number/Modifier$Signum; -Landroid/icu/impl/number/Modifier; -Landroid/icu/impl/number/ModifierStore; -Landroid/icu/impl/number/MultiplierFormatHandler; -Landroid/icu/impl/number/MultiplierProducer; -Landroid/icu/impl/number/MutablePatternModifier$1; -Landroid/icu/impl/number/MutablePatternModifier$ImmutablePatternModifier; -Landroid/icu/impl/number/MutablePatternModifier; -Landroid/icu/impl/number/Padder$PadPosition; -Landroid/icu/impl/number/Padder; -Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo-IA; -Landroid/icu/impl/number/PatternStringParser$ParsedPatternInfo; -Landroid/icu/impl/number/PatternStringParser$ParsedSubpatternInfo; -Landroid/icu/impl/number/PatternStringParser$ParserState; -Landroid/icu/impl/number/PatternStringParser; -Landroid/icu/impl/number/PatternStringUtils$1; -Landroid/icu/impl/number/PatternStringUtils$PatternSignType; -Landroid/icu/impl/number/PatternStringUtils; -Landroid/icu/impl/number/Properties; -Landroid/icu/impl/number/PropertiesAffixPatternProvider; -Landroid/icu/impl/number/RoundingUtils; -Landroid/icu/impl/number/SimpleModifier; -Landroid/icu/impl/number/UnitConversionHandler; -Landroid/icu/impl/number/UsagePrefsHandler; -Landroid/icu/impl/number/parse/AffixMatcher$1; -Landroid/icu/impl/number/parse/AffixMatcher; -Landroid/icu/impl/number/parse/AffixPatternMatcher; -Landroid/icu/impl/number/parse/AffixTokenMatcherFactory; -Landroid/icu/impl/number/parse/CodePointMatcher; -Landroid/icu/impl/number/parse/CombinedCurrencyMatcher; -Landroid/icu/impl/number/parse/DecimalMatcher; -Landroid/icu/impl/number/parse/IgnorablesMatcher; -Landroid/icu/impl/number/parse/InfinityMatcher; -Landroid/icu/impl/number/parse/MinusSignMatcher; -Landroid/icu/impl/number/parse/MultiplierParseHandler; -Landroid/icu/impl/number/parse/NanMatcher; -Landroid/icu/impl/number/parse/NumberParseMatcher$Flexible; -Landroid/icu/impl/number/parse/NumberParseMatcher; -Landroid/icu/impl/number/parse/NumberParserImpl; -Landroid/icu/impl/number/parse/PaddingMatcher; -Landroid/icu/impl/number/parse/ParsedNumber$1; -Landroid/icu/impl/number/parse/ParsedNumber; -Landroid/icu/impl/number/parse/ParsingUtils; -Landroid/icu/impl/number/parse/PercentMatcher; -Landroid/icu/impl/number/parse/PermilleMatcher; -Landroid/icu/impl/number/parse/PlusSignMatcher; -Landroid/icu/impl/number/parse/RequireAffixValidator; -Landroid/icu/impl/number/parse/RequireCurrencyValidator; -Landroid/icu/impl/number/parse/RequireDecimalSeparatorValidator; -Landroid/icu/impl/number/parse/RequireNumberValidator; -Landroid/icu/impl/number/parse/ScientificMatcher; -Landroid/icu/impl/number/parse/SeriesMatcher; -Landroid/icu/impl/number/parse/SymbolMatcher; -Landroid/icu/impl/number/parse/ValidationMatcher; -Landroid/icu/impl/number/range/PrefixInfixSuffixLengthHelper; -Landroid/icu/impl/number/range/RangeMacroProps; -Landroid/icu/impl/number/range/StandardPluralRanges$PluralRangeSetsDataSink; -Landroid/icu/impl/number/range/StandardPluralRanges$PluralRangesDataSink; -Landroid/icu/impl/number/range/StandardPluralRanges; -Landroid/icu/impl/text/RbnfScannerProviderImpl$RbnfLenientScannerImpl; -Landroid/icu/impl/text/RbnfScannerProviderImpl; -Landroid/icu/impl/units/ComplexUnitsConverter; -Landroid/icu/impl/units/ConversionRates$ConversionRateInfo; -Landroid/icu/impl/units/ConversionRates$ConversionRatesSink; -Landroid/icu/impl/units/ConversionRates; -Landroid/icu/impl/units/MeasureUnitImpl$CompoundPart; -Landroid/icu/impl/units/MeasureUnitImpl$InitialCompoundPart; -Landroid/icu/impl/units/MeasureUnitImpl$MeasureUnitImplComparator; -Landroid/icu/impl/units/MeasureUnitImpl$PowerPart; -Landroid/icu/impl/units/MeasureUnitImpl$SingleUnitComparator; -Landroid/icu/impl/units/MeasureUnitImpl$UnitsParser$Token$Type; -Landroid/icu/impl/units/MeasureUnitImpl$UnitsParser$Token; -Landroid/icu/impl/units/MeasureUnitImpl$UnitsParser; -Landroid/icu/impl/units/MeasureUnitImpl; -Landroid/icu/impl/units/SingleUnitImpl; -Landroid/icu/impl/units/UnitPreferences$UnitPreference; -Landroid/icu/impl/units/UnitPreferences$UnitPreferencesSink; -Landroid/icu/impl/units/UnitPreferences; -Landroid/icu/impl/units/UnitsData$Categories; -Landroid/icu/impl/units/UnitsData$CategoriesSink; -Landroid/icu/impl/units/UnitsData$Constants; -Landroid/icu/impl/units/UnitsData$SimpleUnitIdentifiersSink; -Landroid/icu/impl/units/UnitsData; -Landroid/icu/impl/units/UnitsRouter$ConverterPreference; -Landroid/icu/impl/units/UnitsRouter$RouteResult; -Landroid/icu/impl/units/UnitsRouter; -Landroid/icu/lang/CharSequences; -Landroid/icu/lang/CharacterProperties; -Landroid/icu/lang/UCharacter$BidiPairedBracketType; -Landroid/icu/lang/UCharacter$DecompositionType; -Landroid/icu/lang/UCharacter$DummyValueIterator; -Landroid/icu/lang/UCharacter$EastAsianWidth; -Landroid/icu/lang/UCharacter$GraphemeClusterBreak; -Landroid/icu/lang/UCharacter$HangulSyllableType; -Landroid/icu/lang/UCharacter$IdentifierType; -Landroid/icu/lang/UCharacter$IndicPositionalCategory; -Landroid/icu/lang/UCharacter$IndicSyllabicCategory; -Landroid/icu/lang/UCharacter$JoiningGroup; -Landroid/icu/lang/UCharacter$JoiningType; -Landroid/icu/lang/UCharacter$LineBreak; -Landroid/icu/lang/UCharacter$NumericType; -Landroid/icu/lang/UCharacter$SentenceBreak; -Landroid/icu/lang/UCharacter$UCharacterTypeIterator$MaskType; -Landroid/icu/lang/UCharacter$UCharacterTypeIterator; -Landroid/icu/lang/UCharacter$UnicodeBlock; -Landroid/icu/lang/UCharacter$VerticalOrientation; -Landroid/icu/lang/UCharacter$WordBreak; -Landroid/icu/lang/UCharacter; -Landroid/icu/lang/UCharacterCategory; -Landroid/icu/lang/UCharacterDirection; -Landroid/icu/lang/UCharacterEnums$ECharacterCategory; -Landroid/icu/lang/UCharacterEnums$ECharacterDirection; -Landroid/icu/lang/UCharacterEnums; -Landroid/icu/lang/UCharacterNameIterator; -Landroid/icu/lang/UProperty$NameChoice; -Landroid/icu/lang/UProperty; -Landroid/icu/lang/UScript$ScriptMetadata; -Landroid/icu/lang/UScript$ScriptUsage; -Landroid/icu/lang/UScript; -Landroid/icu/lang/UScriptRun$ParenStackEntry; -Landroid/icu/lang/UScriptRun; -Landroid/icu/math/BigDecimal; -Landroid/icu/math/MathContext; -Landroid/icu/number/CompactNotation$CompactHandler; -Landroid/icu/number/CompactNotation; -Landroid/icu/number/CurrencyPrecision; -Landroid/icu/number/FormattedNumber; -Landroid/icu/number/FormattedNumberRange; -Landroid/icu/number/FractionPrecision; -Landroid/icu/number/IntegerWidth; -Landroid/icu/number/LocalizedNumberFormatter; -Landroid/icu/number/LocalizedNumberRangeFormatter; -Landroid/icu/number/Notation; -Landroid/icu/number/NumberFormatter$DecimalSeparatorDisplay; -Landroid/icu/number/NumberFormatter$GroupingStrategy; -Landroid/icu/number/NumberFormatter$RoundingPriority; -Landroid/icu/number/NumberFormatter$SignDisplay; -Landroid/icu/number/NumberFormatter$TrailingZeroDisplay; -Landroid/icu/number/NumberFormatter$UnitWidth; -Landroid/icu/number/NumberFormatter; -Landroid/icu/number/NumberFormatterImpl; -Landroid/icu/number/NumberFormatterSettings; -Landroid/icu/number/NumberPropertyMapper; -Landroid/icu/number/NumberRangeFormatter$RangeCollapse; -Landroid/icu/number/NumberRangeFormatter$RangeIdentityFallback; -Landroid/icu/number/NumberRangeFormatter$RangeIdentityResult; -Landroid/icu/number/NumberRangeFormatter; -Landroid/icu/number/NumberRangeFormatterImpl$1; -Landroid/icu/number/NumberRangeFormatterImpl$NumberRangeDataSink; -Landroid/icu/number/NumberRangeFormatterImpl; -Landroid/icu/number/NumberRangeFormatterSettings; -Landroid/icu/number/NumberSkeletonImpl$1; -Landroid/icu/number/NumberSkeletonImpl$2; -Landroid/icu/number/NumberSkeletonImpl$BlueprintHelpers; -Landroid/icu/number/NumberSkeletonImpl$EnumToStemString; -Landroid/icu/number/NumberSkeletonImpl$GeneratorHelpers; -Landroid/icu/number/NumberSkeletonImpl$ParseState; -Landroid/icu/number/NumberSkeletonImpl$StemEnum; -Landroid/icu/number/NumberSkeletonImpl$StemToObject; -Landroid/icu/number/NumberSkeletonImpl; -Landroid/icu/number/Precision$BogusRounder; -Landroid/icu/number/Precision$CurrencyRounderImpl; -Landroid/icu/number/Precision$FracSigRounderImpl; -Landroid/icu/number/Precision$FractionRounderImpl; -Landroid/icu/number/Precision$IncrementFiveRounderImpl; -Landroid/icu/number/Precision$IncrementOneRounderImpl; -Landroid/icu/number/Precision$IncrementRounderImpl; -Landroid/icu/number/Precision$InfiniteRounderImpl; -Landroid/icu/number/Precision$SignificantRounderImpl; -Landroid/icu/number/Precision; -Landroid/icu/number/Scale; -Landroid/icu/number/ScientificNotation$ScientificHandler; -Landroid/icu/number/ScientificNotation$ScientificModifier; -Landroid/icu/number/ScientificNotation; -Landroid/icu/number/SimpleNotation; -Landroid/icu/number/SkeletonSyntaxException; -Landroid/icu/number/UnlocalizedNumberFormatter; -Landroid/icu/number/UnlocalizedNumberRangeFormatter; -Landroid/icu/platform/AndroidDataFiles; -Landroid/icu/text/AbsoluteValueSubstitution; -Landroid/icu/text/AlphabeticIndex$1; -Landroid/icu/text/AlphabeticIndex$Bucket$LabelType; -Landroid/icu/text/AlphabeticIndex$Bucket; -Landroid/icu/text/AlphabeticIndex$BucketList; -Landroid/icu/text/AlphabeticIndex$ImmutableIndex; -Landroid/icu/text/AlphabeticIndex$Record; -Landroid/icu/text/AlphabeticIndex; -Landroid/icu/text/AnyTransliterator$ScriptRunIterator; -Landroid/icu/text/AnyTransliterator; -Landroid/icu/text/ArabicShaping; -Landroid/icu/text/ArabicShapingException; -Landroid/icu/text/Bidi$BracketData; -Landroid/icu/text/Bidi$ImpTabPair; -Landroid/icu/text/Bidi$InsertPoints; -Landroid/icu/text/Bidi$IsoRun; -Landroid/icu/text/Bidi$Isolate; -Landroid/icu/text/Bidi$LevState; -Landroid/icu/text/Bidi$Opening; -Landroid/icu/text/Bidi$Point; -Landroid/icu/text/Bidi; -Landroid/icu/text/BidiClassifier; -Landroid/icu/text/BidiLine; -Landroid/icu/text/BidiRun; -Landroid/icu/text/BidiTransform$Mirroring; -Landroid/icu/text/BidiTransform$Order; -Landroid/icu/text/BidiTransform$ReorderingScheme$10; -Landroid/icu/text/BidiTransform$ReorderingScheme$11; -Landroid/icu/text/BidiTransform$ReorderingScheme$12; -Landroid/icu/text/BidiTransform$ReorderingScheme$13; -Landroid/icu/text/BidiTransform$ReorderingScheme$14; -Landroid/icu/text/BidiTransform$ReorderingScheme$15; -Landroid/icu/text/BidiTransform$ReorderingScheme$16; -Landroid/icu/text/BidiTransform$ReorderingScheme$1; -Landroid/icu/text/BidiTransform$ReorderingScheme$2; -Landroid/icu/text/BidiTransform$ReorderingScheme$3; -Landroid/icu/text/BidiTransform$ReorderingScheme$4; -Landroid/icu/text/BidiTransform$ReorderingScheme$5; -Landroid/icu/text/BidiTransform$ReorderingScheme$6; -Landroid/icu/text/BidiTransform$ReorderingScheme$7; -Landroid/icu/text/BidiTransform$ReorderingScheme$8; -Landroid/icu/text/BidiTransform$ReorderingScheme$9; -Landroid/icu/text/BidiTransform$ReorderingScheme; -Landroid/icu/text/BidiTransform; -Landroid/icu/text/BidiWriter; -Landroid/icu/text/BreakIterator$BreakIteratorCache; -Landroid/icu/text/BreakIterator$BreakIteratorServiceShim; -Landroid/icu/text/BreakIterator; -Landroid/icu/text/BreakIteratorFactory$BFService$1RBBreakIteratorFactory; -Landroid/icu/text/BreakIteratorFactory$BFService; -Landroid/icu/text/BreakIteratorFactory; -Landroid/icu/text/BreakTransliterator$ReplaceableCharacterIterator; -Landroid/icu/text/BreakTransliterator; -Landroid/icu/text/CanonicalIterator; -Landroid/icu/text/CaseFoldTransliterator$1; -Landroid/icu/text/CaseFoldTransliterator$2; -Landroid/icu/text/CaseFoldTransliterator; -Landroid/icu/text/CaseMap$Fold; -Landroid/icu/text/CaseMap$Lower; -Landroid/icu/text/CaseMap$Title; -Landroid/icu/text/CaseMap$Upper; -Landroid/icu/text/CaseMap; -Landroid/icu/text/CharsetDetector$CSRecognizerInfo; -Landroid/icu/text/CharsetDetector; -Landroid/icu/text/CharsetMatch; -Landroid/icu/text/CharsetRecog_2022$CharsetRecog_2022CN; -Landroid/icu/text/CharsetRecog_2022$CharsetRecog_2022JP; -Landroid/icu/text/CharsetRecog_2022$CharsetRecog_2022KR; -Landroid/icu/text/CharsetRecog_2022; -Landroid/icu/text/CharsetRecog_UTF8; -Landroid/icu/text/CharsetRecog_Unicode$CharsetRecog_UTF_16_BE; -Landroid/icu/text/CharsetRecog_Unicode$CharsetRecog_UTF_16_LE; -Landroid/icu/text/CharsetRecog_Unicode$CharsetRecog_UTF_32; -Landroid/icu/text/CharsetRecog_Unicode$CharsetRecog_UTF_32_BE; -Landroid/icu/text/CharsetRecog_Unicode$CharsetRecog_UTF_32_LE; -Landroid/icu/text/CharsetRecog_Unicode; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_big5; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_euc$CharsetRecog_euc_jp; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_euc$CharsetRecog_euc_kr; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_euc; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_gb_18030; -Landroid/icu/text/CharsetRecog_mbcs$CharsetRecog_sjis; -Landroid/icu/text/CharsetRecog_mbcs$iteratedChar; -Landroid/icu/text/CharsetRecog_mbcs; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_1; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_2; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_5; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_5_ru; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_6; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_6_ar; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_7; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_7_el; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_8; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_8_I_he; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_8_he; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_9; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_8859_9_tr; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM420_ar; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM420_ar_ltr; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM420_ar_rtl; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM424_he; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM424_he_ltr; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_IBM424_he_rtl; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_KOI8_R; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_windows_1251; -Landroid/icu/text/CharsetRecog_sbcs$CharsetRecog_windows_1256; -Landroid/icu/text/CharsetRecog_sbcs$NGramParser; -Landroid/icu/text/CharsetRecog_sbcs$NGramParser_IBM420; -Landroid/icu/text/CharsetRecog_sbcs$NGramsPlusLang; -Landroid/icu/text/CharsetRecog_sbcs; -Landroid/icu/text/CharsetRecognizer; -Landroid/icu/text/ChineseDateFormat$Field; -Landroid/icu/text/ChineseDateFormat; -Landroid/icu/text/ChineseDateFormatSymbols; -Landroid/icu/text/CollationElementIterator$MaxExpSink; -Landroid/icu/text/CollationElementIterator; -Landroid/icu/text/CollationKey$BoundMode; -Landroid/icu/text/CollationKey; -Landroid/icu/text/Collator$ASCII; -Landroid/icu/text/Collator$CollatorFactory; -Landroid/icu/text/Collator$KeywordsSink; -Landroid/icu/text/Collator$ReorderCodes; -Landroid/icu/text/Collator$ServiceShim; -Landroid/icu/text/Collator; -Landroid/icu/text/CollatorServiceShim$1CFactory; -Landroid/icu/text/CollatorServiceShim$CService$1CollatorFactory; -Landroid/icu/text/CollatorServiceShim$CService; -Landroid/icu/text/CollatorServiceShim; -Landroid/icu/text/CompactDecimalFormat$CompactStyle; -Landroid/icu/text/CompactDecimalFormat; -Landroid/icu/text/ComposedCharIter; -Landroid/icu/text/CompoundTransliterator; -Landroid/icu/text/ConstrainedFieldPosition$ConstraintType; -Landroid/icu/text/ConstrainedFieldPosition; -Landroid/icu/text/CurrencyDisplayNames; -Landroid/icu/text/CurrencyFormat; -Landroid/icu/text/CurrencyMetaInfo$CurrencyDigits; -Landroid/icu/text/CurrencyMetaInfo$CurrencyFilter; -Landroid/icu/text/CurrencyMetaInfo$CurrencyInfo; -Landroid/icu/text/CurrencyMetaInfo; -Landroid/icu/text/CurrencyPluralInfo; -Landroid/icu/text/DateFormat$BooleanAttribute; -Landroid/icu/text/DateFormat$Field; -Landroid/icu/text/DateFormat$HourCycle; -Landroid/icu/text/DateFormat; -Landroid/icu/text/DateFormatSymbols$1; -Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols-IA; -Landroid/icu/text/DateFormatSymbols$AospExtendedDateFormatSymbols; -Landroid/icu/text/DateFormatSymbols$CalendarDataSink$AliasType; -Landroid/icu/text/DateFormatSymbols$CalendarDataSink; -Landroid/icu/text/DateFormatSymbols$CapitalizationContextUsage; -Landroid/icu/text/DateFormatSymbols-IA; -Landroid/icu/text/DateFormatSymbols; -Landroid/icu/text/DateIntervalFormat$BestMatchInfo; -Landroid/icu/text/DateIntervalFormat$FormatOutput; -Landroid/icu/text/DateIntervalFormat$FormattedDateInterval; -Landroid/icu/text/DateIntervalFormat$SkeletonAndItsBestMatch; -Landroid/icu/text/DateIntervalFormat$SpanField; -Landroid/icu/text/DateIntervalFormat; -Landroid/icu/text/DateIntervalInfo$DateIntervalSink; -Landroid/icu/text/DateIntervalInfo$PatternInfo; -Landroid/icu/text/DateIntervalInfo; -Landroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink-IA; -Landroid/icu/text/DateTimePatternGenerator$AppendItemFormatsSink; -Landroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink-IA; -Landroid/icu/text/DateTimePatternGenerator$AppendItemNamesSink; -Landroid/icu/text/DateTimePatternGenerator$AvailableFormatsSink; -Landroid/icu/text/DateTimePatternGenerator$DTPGflags; -Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher-IA; -Landroid/icu/text/DateTimePatternGenerator$DateTimeMatcher; -Landroid/icu/text/DateTimePatternGenerator$DayPeriodAllowedHoursSink; -Landroid/icu/text/DateTimePatternGenerator$DisplayWidth; -Landroid/icu/text/DateTimePatternGenerator$DistanceInfo-IA; -Landroid/icu/text/DateTimePatternGenerator$DistanceInfo; -Landroid/icu/text/DateTimePatternGenerator$FormatParser; -Landroid/icu/text/DateTimePatternGenerator$PatternInfo; -Landroid/icu/text/DateTimePatternGenerator$PatternWithMatcher; -Landroid/icu/text/DateTimePatternGenerator$PatternWithSkeletonFlag; -Landroid/icu/text/DateTimePatternGenerator$SkeletonFields-IA; -Landroid/icu/text/DateTimePatternGenerator$SkeletonFields; -Landroid/icu/text/DateTimePatternGenerator$VariableField; -Landroid/icu/text/DateTimePatternGenerator; -Landroid/icu/text/DecimalFormat$PropertySetter; -Landroid/icu/text/DecimalFormat; -Landroid/icu/text/DecimalFormatSymbols$1; -Landroid/icu/text/DecimalFormatSymbols$CacheData; -Landroid/icu/text/DecimalFormatSymbols$DecFmtDataSink; -Landroid/icu/text/DecimalFormatSymbols; -Landroid/icu/text/DisplayContext$Type; -Landroid/icu/text/DisplayContext; -Landroid/icu/text/DurationFormat; -Landroid/icu/text/Edits$Iterator-IA; -Landroid/icu/text/Edits$Iterator; -Landroid/icu/text/Edits; -Landroid/icu/text/EscapeTransliterator$1; -Landroid/icu/text/EscapeTransliterator$2; -Landroid/icu/text/EscapeTransliterator$3; -Landroid/icu/text/EscapeTransliterator$4; -Landroid/icu/text/EscapeTransliterator$5; -Landroid/icu/text/EscapeTransliterator$6; -Landroid/icu/text/EscapeTransliterator$7; -Landroid/icu/text/EscapeTransliterator$8; -Landroid/icu/text/EscapeTransliterator; -Landroid/icu/text/FilteredBreakIteratorBuilder; -Landroid/icu/text/FilteredNormalizer2; -Landroid/icu/text/FormattedValue; -Landroid/icu/text/FractionalPartSubstitution; -Landroid/icu/text/FunctionReplacer; -Landroid/icu/text/IDNA$Error; -Landroid/icu/text/IDNA$Info; -Landroid/icu/text/IDNA; -Landroid/icu/text/IntegralPartSubstitution; -Landroid/icu/text/ListFormatter$Cache; -Landroid/icu/text/ListFormatter$ContextualHandler; -Landroid/icu/text/ListFormatter$Field; -Landroid/icu/text/ListFormatter$FormattedList; -Landroid/icu/text/ListFormatter$FormattedListBuilder; -Landroid/icu/text/ListFormatter$PatternHandler; -Landroid/icu/text/ListFormatter$SpanField; -Landroid/icu/text/ListFormatter$StaticHandler; -Landroid/icu/text/ListFormatter$Type; -Landroid/icu/text/ListFormatter$Width; -Landroid/icu/text/ListFormatter; -Landroid/icu/text/LocaleDisplayNames$DialectHandling; -Landroid/icu/text/LocaleDisplayNames$LastResortLocaleDisplayNames; -Landroid/icu/text/LocaleDisplayNames$UiListItem$UiListItemComparator; -Landroid/icu/text/LocaleDisplayNames$UiListItem; -Landroid/icu/text/LocaleDisplayNames; -Landroid/icu/text/LowercaseTransliterator$1; -Landroid/icu/text/LowercaseTransliterator$2; -Landroid/icu/text/LowercaseTransliterator; -Landroid/icu/text/MeasureFormat$FormatWidth; -Landroid/icu/text/MeasureFormat$MeasureProxy; -Landroid/icu/text/MeasureFormat$NumberFormatterCacheEntry; -Landroid/icu/text/MeasureFormat$NumericFormatters; -Landroid/icu/text/MeasureFormat; -Landroid/icu/text/MessageFormat$AppendableWrapper; -Landroid/icu/text/MessageFormat$AttributeAndPosition; -Landroid/icu/text/MessageFormat$Field; -Landroid/icu/text/MessageFormat$PluralSelectorContext; -Landroid/icu/text/MessageFormat$PluralSelectorProvider; -Landroid/icu/text/MessageFormat; -Landroid/icu/text/MessagePattern$ApostropheMode; -Landroid/icu/text/MessagePattern$ArgType; -Landroid/icu/text/MessagePattern$Part$Type; -Landroid/icu/text/MessagePattern$Part; -Landroid/icu/text/MessagePattern; -Landroid/icu/text/MessagePatternUtil$1; -Landroid/icu/text/MessagePatternUtil$ArgNode; -Landroid/icu/text/MessagePatternUtil$ComplexArgStyleNode; -Landroid/icu/text/MessagePatternUtil$MessageContentsNode$Type; -Landroid/icu/text/MessagePatternUtil$MessageContentsNode; -Landroid/icu/text/MessagePatternUtil$MessageNode; -Landroid/icu/text/MessagePatternUtil$Node; -Landroid/icu/text/MessagePatternUtil$TextNode; -Landroid/icu/text/MessagePatternUtil$VariantNode; -Landroid/icu/text/MessagePatternUtil; -Landroid/icu/text/ModulusSubstitution; -Landroid/icu/text/MultiplierSubstitution; -Landroid/icu/text/NFRule; -Landroid/icu/text/NFRuleSet; -Landroid/icu/text/NFSubstitution; -Landroid/icu/text/NameUnicodeTransliterator$1; -Landroid/icu/text/NameUnicodeTransliterator; -Landroid/icu/text/NormalizationTransliterator$1; -Landroid/icu/text/NormalizationTransliterator$2; -Landroid/icu/text/NormalizationTransliterator$3; -Landroid/icu/text/NormalizationTransliterator$4; -Landroid/icu/text/NormalizationTransliterator$5; -Landroid/icu/text/NormalizationTransliterator$6; -Landroid/icu/text/NormalizationTransliterator$NormalizingTransform; -Landroid/icu/text/NormalizationTransliterator; -Landroid/icu/text/Normalizer$CharsAppendable; -Landroid/icu/text/Normalizer$CmpEquivLevel; -Landroid/icu/text/Normalizer$FCD32ModeImpl; -Landroid/icu/text/Normalizer$FCDMode; -Landroid/icu/text/Normalizer$FCDModeImpl; -Landroid/icu/text/Normalizer$Mode; -Landroid/icu/text/Normalizer$ModeImpl; -Landroid/icu/text/Normalizer$NFC32ModeImpl; -Landroid/icu/text/Normalizer$NFCMode; -Landroid/icu/text/Normalizer$NFCModeImpl; -Landroid/icu/text/Normalizer$NFD32ModeImpl; -Landroid/icu/text/Normalizer$NFDMode; -Landroid/icu/text/Normalizer$NFDModeImpl; -Landroid/icu/text/Normalizer$NFKC32ModeImpl; -Landroid/icu/text/Normalizer$NFKCMode; -Landroid/icu/text/Normalizer$NFKCModeImpl; -Landroid/icu/text/Normalizer$NFKD32ModeImpl; -Landroid/icu/text/Normalizer$NFKDMode; -Landroid/icu/text/Normalizer$NFKDModeImpl; -Landroid/icu/text/Normalizer$NONEMode; -Landroid/icu/text/Normalizer$QuickCheckResult; -Landroid/icu/text/Normalizer$Unicode32; -Landroid/icu/text/Normalizer2$Mode; -Landroid/icu/text/Normalizer2; -Landroid/icu/text/Normalizer; -Landroid/icu/text/NullTransliterator; -Landroid/icu/text/NumberFormat$Field; -Landroid/icu/text/NumberFormat$NumberFormatFactory; -Landroid/icu/text/NumberFormat$NumberFormatShim; -Landroid/icu/text/NumberFormat$SimpleNumberFormatFactory; -Landroid/icu/text/NumberFormat; -Landroid/icu/text/NumberFormatServiceShim$NFFactory; -Landroid/icu/text/NumberFormatServiceShim$NFService$1RBNumberFormatFactory; -Landroid/icu/text/NumberFormatServiceShim$NFService; -Landroid/icu/text/NumberFormatServiceShim; -Landroid/icu/text/NumberingSystem$1; -Landroid/icu/text/NumberingSystem$2; -Landroid/icu/text/NumberingSystem$LocaleLookupData; -Landroid/icu/text/NumberingSystem; -Landroid/icu/text/NumeratorSubstitution; -Landroid/icu/text/PluralFormat$PluralSelector; -Landroid/icu/text/PluralFormat$PluralSelectorAdapter; -Landroid/icu/text/PluralFormat; -Landroid/icu/text/PluralRules$1; -Landroid/icu/text/PluralRules$AndConstraint; -Landroid/icu/text/PluralRules$BinaryConstraint; -Landroid/icu/text/PluralRules$Constraint; -Landroid/icu/text/PluralRules$DecimalQuantitySamples; -Landroid/icu/text/PluralRules$DecimalQuantitySamplesRange; -Landroid/icu/text/PluralRules$Factory; -Landroid/icu/text/PluralRules$FixedDecimal; -Landroid/icu/text/PluralRules$IFixedDecimal; -Landroid/icu/text/PluralRules$KeywordStatus; -Landroid/icu/text/PluralRules$Operand; -Landroid/icu/text/PluralRules$OrConstraint; -Landroid/icu/text/PluralRules$PluralType; -Landroid/icu/text/PluralRules$RangeConstraint; -Landroid/icu/text/PluralRules$Rule; -Landroid/icu/text/PluralRules$RuleList-IA; -Landroid/icu/text/PluralRules$RuleList; -Landroid/icu/text/PluralRules$SampleType; -Landroid/icu/text/PluralRules$SimpleTokenizer; -Landroid/icu/text/PluralRules; -Landroid/icu/text/PluralRulesSerialProxy; -Landroid/icu/text/Quantifier; -Landroid/icu/text/QuantityFormatter; -Landroid/icu/text/RBBINode; -Landroid/icu/text/RBBIRuleBuilder$IntPair; -Landroid/icu/text/RBBIRuleBuilder; -Landroid/icu/text/RBBIRuleParseTable$RBBIRuleTableElement; -Landroid/icu/text/RBBIRuleParseTable; -Landroid/icu/text/RBBIRuleScanner$RBBIRuleChar; -Landroid/icu/text/RBBIRuleScanner$RBBISetTableEl; -Landroid/icu/text/RBBIRuleScanner; -Landroid/icu/text/RBBISetBuilder$RangeDescriptor; -Landroid/icu/text/RBBISetBuilder; -Landroid/icu/text/RBBISymbolTable$RBBISymbolTableEntry; -Landroid/icu/text/RBBISymbolTable; -Landroid/icu/text/RBBITableBuilder$RBBIStateDescriptor; -Landroid/icu/text/RBBITableBuilder; -Landroid/icu/text/RBNFChinesePostProcessor; -Landroid/icu/text/RBNFPostProcessor; -Landroid/icu/text/RawCollationKey; -Landroid/icu/text/RbnfLenientScanner; -Landroid/icu/text/RbnfLenientScannerProvider; -Landroid/icu/text/RelativeDateTimeFormatter$AbsoluteUnit; -Landroid/icu/text/RelativeDateTimeFormatter$Cache$1; -Landroid/icu/text/RelativeDateTimeFormatter$Cache; -Landroid/icu/text/RelativeDateTimeFormatter$Direction; -Landroid/icu/text/RelativeDateTimeFormatter$Field; -Landroid/icu/text/RelativeDateTimeFormatter$FormattedRelativeDateTime; -Landroid/icu/text/RelativeDateTimeFormatter$Loader; -Landroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink$DateTimeUnit; -Landroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink; -Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeFormatterData; -Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeUnit; -Landroid/icu/text/RelativeDateTimeFormatter$RelativeUnit; -Landroid/icu/text/RelativeDateTimeFormatter$Style; -Landroid/icu/text/RelativeDateTimeFormatter; -Landroid/icu/text/RemoveTransliterator$1; -Landroid/icu/text/RemoveTransliterator; -Landroid/icu/text/Replaceable; -Landroid/icu/text/ReplaceableContextIterator; -Landroid/icu/text/ReplaceableString; -Landroid/icu/text/RuleBasedBreakIterator$BreakCache; -Landroid/icu/text/RuleBasedBreakIterator$DictionaryCache; -Landroid/icu/text/RuleBasedBreakIterator; -Landroid/icu/text/RuleBasedCollator$CollationBuffer-IA; -Landroid/icu/text/RuleBasedCollator$CollationBuffer; -Landroid/icu/text/RuleBasedCollator$CollationKeyByteSink; -Landroid/icu/text/RuleBasedCollator$FCDUTF16NFDIterator; -Landroid/icu/text/RuleBasedCollator$NFDIterator; -Landroid/icu/text/RuleBasedCollator$UTF16NFDIterator; -Landroid/icu/text/RuleBasedCollator; -Landroid/icu/text/RuleBasedNumberFormat; -Landroid/icu/text/RuleBasedTransliterator$Data; -Landroid/icu/text/RuleBasedTransliterator; -Landroid/icu/text/SCSU; -Landroid/icu/text/SameValueSubstitution; -Landroid/icu/text/ScientificNumberFormatter$MarkupStyle; -Landroid/icu/text/ScientificNumberFormatter$Style; -Landroid/icu/text/ScientificNumberFormatter$SuperscriptStyle; -Landroid/icu/text/ScientificNumberFormatter; -Landroid/icu/text/SearchIterator$ElementComparisonType; -Landroid/icu/text/SearchIterator$Search; -Landroid/icu/text/SearchIterator; -Landroid/icu/text/SelectFormat; -Landroid/icu/text/SimpleDateFormat$1; -Landroid/icu/text/SimpleDateFormat$ContextValue; -Landroid/icu/text/SimpleDateFormat$PatternItem; -Landroid/icu/text/SimpleDateFormat; -Landroid/icu/text/SimpleFormatter; -Landroid/icu/text/SourceTargetUtility; -Landroid/icu/text/SpoofChecker$Builder$ConfusabledataBuilder$SPUString; -Landroid/icu/text/SpoofChecker$Builder$ConfusabledataBuilder$SPUStringComparator; -Landroid/icu/text/SpoofChecker$Builder$ConfusabledataBuilder$SPUStringPool; -Landroid/icu/text/SpoofChecker$Builder$ConfusabledataBuilder; -Landroid/icu/text/SpoofChecker$Builder; -Landroid/icu/text/SpoofChecker$CheckResult; -Landroid/icu/text/SpoofChecker$ConfusableDataUtils; -Landroid/icu/text/SpoofChecker$RestrictionLevel; -Landroid/icu/text/SpoofChecker$ScriptSet; -Landroid/icu/text/SpoofChecker$SpoofData$DefaultData; -Landroid/icu/text/SpoofChecker$SpoofData$IsAcceptable; -Landroid/icu/text/SpoofChecker$SpoofData; -Landroid/icu/text/SpoofChecker; -Landroid/icu/text/StringCharacterIterator; -Landroid/icu/text/StringMatcher; -Landroid/icu/text/StringPrep$Values; -Landroid/icu/text/StringPrep; -Landroid/icu/text/StringPrepParseException; -Landroid/icu/text/StringReplacer; -Landroid/icu/text/StringSearch$CEBuffer; -Landroid/icu/text/StringSearch$CEI; -Landroid/icu/text/StringSearch$CollationPCE$PCEBuffer; -Landroid/icu/text/StringSearch$CollationPCE$PCEI; -Landroid/icu/text/StringSearch$CollationPCE$RCEBuffer; -Landroid/icu/text/StringSearch$CollationPCE$RCEI; -Landroid/icu/text/StringSearch$CollationPCE$Range; -Landroid/icu/text/StringSearch$CollationPCE; -Landroid/icu/text/StringSearch$Match; -Landroid/icu/text/StringSearch$Pattern; -Landroid/icu/text/StringSearch; -Landroid/icu/text/StringTransform; -Landroid/icu/text/SymbolTable; -Landroid/icu/text/TimeUnitFormat$TimeUnitFormatSetupSink; -Landroid/icu/text/TimeUnitFormat; -Landroid/icu/text/TimeZoneFormat$1; -Landroid/icu/text/TimeZoneFormat$GMTOffsetField; -Landroid/icu/text/TimeZoneFormat$GMTOffsetPatternType; -Landroid/icu/text/TimeZoneFormat$OffsetFields; -Landroid/icu/text/TimeZoneFormat$ParseOption; -Landroid/icu/text/TimeZoneFormat$Style; -Landroid/icu/text/TimeZoneFormat$TimeType; -Landroid/icu/text/TimeZoneFormat$TimeZoneFormatCache; -Landroid/icu/text/TimeZoneFormat; -Landroid/icu/text/TimeZoneNames$Cache; -Landroid/icu/text/TimeZoneNames$DefaultTimeZoneNames$FactoryImpl; -Landroid/icu/text/TimeZoneNames$DefaultTimeZoneNames; -Landroid/icu/text/TimeZoneNames$Factory; -Landroid/icu/text/TimeZoneNames$MatchInfo; -Landroid/icu/text/TimeZoneNames$NameType; -Landroid/icu/text/TimeZoneNames; -Landroid/icu/text/TitlecaseTransliterator$1; -Landroid/icu/text/TitlecaseTransliterator$2; -Landroid/icu/text/TitlecaseTransliterator; -Landroid/icu/text/Transform; -Landroid/icu/text/TransliterationRule; -Landroid/icu/text/TransliterationRuleSet; -Landroid/icu/text/Transliterator$$ExternalSyntheticLambda0; -Landroid/icu/text/Transliterator$Factory; -Landroid/icu/text/Transliterator$Position; -Landroid/icu/text/Transliterator; -Landroid/icu/text/TransliteratorIDParser$SingleID; -Landroid/icu/text/TransliteratorIDParser$Specs; -Landroid/icu/text/TransliteratorIDParser; -Landroid/icu/text/TransliteratorParser$ParseData; -Landroid/icu/text/TransliteratorParser$RuleArray; -Landroid/icu/text/TransliteratorParser$RuleBody; -Landroid/icu/text/TransliteratorParser$RuleHalf; -Landroid/icu/text/TransliteratorParser; -Landroid/icu/text/TransliteratorRegistry$AliasEntry; -Landroid/icu/text/TransliteratorRegistry$CompoundRBTEntry; -Landroid/icu/text/TransliteratorRegistry$IDEnumeration; -Landroid/icu/text/TransliteratorRegistry$LocaleEntry; -Landroid/icu/text/TransliteratorRegistry$ResourceEntry; -Landroid/icu/text/TransliteratorRegistry$Spec; -Landroid/icu/text/TransliteratorRegistry; -Landroid/icu/text/UCharacterIterator; -Landroid/icu/text/UFieldPosition; -Landroid/icu/text/UFormat$SpanField; -Landroid/icu/text/UFormat; -Landroid/icu/text/UForwardCharacterIterator; -Landroid/icu/text/UTF16$StringComparator; -Landroid/icu/text/UTF16; -Landroid/icu/text/UnescapeTransliterator$1; -Landroid/icu/text/UnescapeTransliterator$2; -Landroid/icu/text/UnescapeTransliterator$3; -Landroid/icu/text/UnescapeTransliterator$4; -Landroid/icu/text/UnescapeTransliterator$5; -Landroid/icu/text/UnescapeTransliterator$6; -Landroid/icu/text/UnescapeTransliterator$7; -Landroid/icu/text/UnescapeTransliterator; -Landroid/icu/text/UnicodeCompressor; -Landroid/icu/text/UnicodeDecompressor; -Landroid/icu/text/UnicodeFilter; -Landroid/icu/text/UnicodeMatcher; -Landroid/icu/text/UnicodeNameTransliterator$1; -Landroid/icu/text/UnicodeNameTransliterator; -Landroid/icu/text/UnicodeReplacer; -Landroid/icu/text/UnicodeSet$ComparisonStyle; -Landroid/icu/text/UnicodeSet$EntryRange; -Landroid/icu/text/UnicodeSet$EntryRangeIterable; -Landroid/icu/text/UnicodeSet$EntryRangeIterator; -Landroid/icu/text/UnicodeSet$Filter; -Landroid/icu/text/UnicodeSet$GeneralCategoryMaskFilter; -Landroid/icu/text/UnicodeSet$IdentifierTypeFilter; -Landroid/icu/text/UnicodeSet$IntPropertyFilter; -Landroid/icu/text/UnicodeSet$NumericValueFilter; -Landroid/icu/text/UnicodeSet$ScriptExtensionsFilter; -Landroid/icu/text/UnicodeSet$SpanCondition; -Landroid/icu/text/UnicodeSet$UnicodeSetIterator2; -Landroid/icu/text/UnicodeSet$VersionFilter; -Landroid/icu/text/UnicodeSet$XSymbolTable; -Landroid/icu/text/UnicodeSet; -Landroid/icu/text/UnicodeSetIterator; -Landroid/icu/text/UnicodeSetSpanner$CountMethod; -Landroid/icu/text/UnicodeSetSpanner$TrimOption; -Landroid/icu/text/UnicodeSetSpanner; -Landroid/icu/text/UppercaseTransliterator$1; -Landroid/icu/text/UppercaseTransliterator$2; -Landroid/icu/text/UppercaseTransliterator; -Landroid/icu/util/AnnualTimeZoneRule; -Landroid/icu/util/BasicTimeZone$LocalOption; -Landroid/icu/util/BasicTimeZone; -Landroid/icu/util/BuddhistCalendar; -Landroid/icu/util/ByteArrayWrapper; -Landroid/icu/util/BytesTrie$Entry; -Landroid/icu/util/BytesTrie$Iterator; -Landroid/icu/util/BytesTrie$Result; -Landroid/icu/util/BytesTrie$State; -Landroid/icu/util/BytesTrie; -Landroid/icu/util/BytesTrieBuilder$BytesAsCharSequence; -Landroid/icu/util/BytesTrieBuilder; -Landroid/icu/util/CECalendar; -Landroid/icu/util/Calendar$1; -Landroid/icu/util/Calendar$FormatConfiguration-IA; -Landroid/icu/util/Calendar$FormatConfiguration; -Landroid/icu/util/Calendar$PatternData; -Landroid/icu/util/Calendar$WeekData; -Landroid/icu/util/Calendar$WeekDataCache; -Landroid/icu/util/Calendar; -Landroid/icu/util/CaseInsensitiveString; -Landroid/icu/util/CharsTrie$Entry; -Landroid/icu/util/CharsTrie$Iterator; -Landroid/icu/util/CharsTrie$State; -Landroid/icu/util/CharsTrie; -Landroid/icu/util/CharsTrieBuilder; -Landroid/icu/util/ChineseCalendar; -Landroid/icu/util/CodePointMap$Range; -Landroid/icu/util/CodePointMap$RangeIterator; -Landroid/icu/util/CodePointMap$RangeOption; -Landroid/icu/util/CodePointMap$StringIterator; -Landroid/icu/util/CodePointMap$ValueFilter; -Landroid/icu/util/CodePointMap; -Landroid/icu/util/CodePointTrie$Data-IA; -Landroid/icu/util/CodePointTrie$Data16; -Landroid/icu/util/CodePointTrie$Data32; -Landroid/icu/util/CodePointTrie$Data8; -Landroid/icu/util/CodePointTrie$Data; -Landroid/icu/util/CodePointTrie$Fast$FastStringIterator; -Landroid/icu/util/CodePointTrie$Fast-IA; -Landroid/icu/util/CodePointTrie$Fast16; -Landroid/icu/util/CodePointTrie$Fast32; -Landroid/icu/util/CodePointTrie$Fast8; -Landroid/icu/util/CodePointTrie$Fast; -Landroid/icu/util/CodePointTrie$Small$SmallStringIterator; -Landroid/icu/util/CodePointTrie$Small-IA; -Landroid/icu/util/CodePointTrie$Small16; -Landroid/icu/util/CodePointTrie$Small32; -Landroid/icu/util/CodePointTrie$Small8; -Landroid/icu/util/CodePointTrie$Small; -Landroid/icu/util/CodePointTrie$Type; -Landroid/icu/util/CodePointTrie$ValueWidth; -Landroid/icu/util/CodePointTrie-IA; -Landroid/icu/util/CodePointTrie; -Landroid/icu/util/CompactByteArray; -Landroid/icu/util/CompactCharArray; -Landroid/icu/util/CopticCalendar; -Landroid/icu/util/Currency$1; -Landroid/icu/util/Currency$CurrencyNameResultHandler; -Landroid/icu/util/Currency$CurrencyStringInfo; -Landroid/icu/util/Currency$CurrencyUsage; -Landroid/icu/util/Currency$ServiceShim; -Landroid/icu/util/Currency; -Landroid/icu/util/CurrencyAmount; -Landroid/icu/util/CurrencyServiceShim$CFService$1CurrencyFactory; -Landroid/icu/util/CurrencyServiceShim$CFService; -Landroid/icu/util/CurrencyServiceShim; -Landroid/icu/util/DangiCalendar; -Landroid/icu/util/DateInterval; -Landroid/icu/util/DateRule; -Landroid/icu/util/DateTimeRule; -Landroid/icu/util/EasterHoliday; -Landroid/icu/util/EasterRule; -Landroid/icu/util/EthiopicCalendar; -Landroid/icu/util/Freezable; -Landroid/icu/util/GenderInfo$Cache; -Landroid/icu/util/GenderInfo$Gender; -Landroid/icu/util/GenderInfo$ListGenderStyle; -Landroid/icu/util/GenderInfo; -Landroid/icu/util/GlobalizationPreferences; -Landroid/icu/util/GregorianCalendar; -Landroid/icu/util/HebrewCalendar; -Landroid/icu/util/HebrewHoliday; -Landroid/icu/util/Holiday; -Landroid/icu/util/ICUCloneNotSupportedException; -Landroid/icu/util/ICUException; -Landroid/icu/util/ICUInputTooLongException; -Landroid/icu/util/ICUUncheckedIOException; -Landroid/icu/util/IllformedLocaleException; -Landroid/icu/util/IndianCalendar; -Landroid/icu/util/InitialTimeZoneRule; -Landroid/icu/util/IslamicCalendar$Algorithm; -Landroid/icu/util/IslamicCalendar$CalculationType; -Landroid/icu/util/IslamicCalendar$CivilAlgorithm; -Landroid/icu/util/IslamicCalendar$IslamicAlgorithm; -Landroid/icu/util/IslamicCalendar$TBLAAlgorithm; -Landroid/icu/util/IslamicCalendar$UmalquraAlgorithm; -Landroid/icu/util/IslamicCalendar; -Landroid/icu/util/JapaneseCalendar; -Landroid/icu/util/LocaleData$MeasurementSystem; -Landroid/icu/util/LocaleData$PaperSize; -Landroid/icu/util/LocaleData; -Landroid/icu/util/LocaleMatcher$Builder; -Landroid/icu/util/LocaleMatcher$Demotion; -Landroid/icu/util/LocaleMatcher$Direction; -Landroid/icu/util/LocaleMatcher$FavorSubtag; -Landroid/icu/util/LocaleMatcher$LocaleLsrIterator; -Landroid/icu/util/LocaleMatcher$LsrIterator; -Landroid/icu/util/LocaleMatcher$Result; -Landroid/icu/util/LocaleMatcher$ULocaleLsrIterator; -Landroid/icu/util/LocaleMatcher; -Landroid/icu/util/LocalePriorityList$1; -Landroid/icu/util/LocalePriorityList$Builder; -Landroid/icu/util/LocalePriorityList; -Landroid/icu/util/Measure; -Landroid/icu/util/MeasureUnit$1; -Landroid/icu/util/MeasureUnit$2; -Landroid/icu/util/MeasureUnit$3; -Landroid/icu/util/MeasureUnit$Complexity; -Landroid/icu/util/MeasureUnit$CurrencyNumericCodeSink; -Landroid/icu/util/MeasureUnit$Factory; -Landroid/icu/util/MeasureUnit$MeasurePrefix; -Landroid/icu/util/MeasureUnit$MeasureUnitProxy; -Landroid/icu/util/MeasureUnit$MeasureUnitSink; -Landroid/icu/util/MeasureUnit; -Landroid/icu/util/MutableCodePointTrie$1; -Landroid/icu/util/MutableCodePointTrie$AllSameBlocks; -Landroid/icu/util/MutableCodePointTrie$MixedBlocks-IA; -Landroid/icu/util/MutableCodePointTrie$MixedBlocks; -Landroid/icu/util/MutableCodePointTrie; -Landroid/icu/util/NoUnit; -Landroid/icu/util/Output; -Landroid/icu/util/OutputInt; -Landroid/icu/util/PersianCalendar; -Landroid/icu/util/Range; -Landroid/icu/util/RangeDateRule; -Landroid/icu/util/RangeValueIterator$Element; -Landroid/icu/util/RangeValueIterator; -Landroid/icu/util/Region$RegionType; -Landroid/icu/util/Region; -Landroid/icu/util/RuleBasedTimeZone; -Landroid/icu/util/STZInfo; -Landroid/icu/util/SimpleDateRule; -Landroid/icu/util/SimpleHoliday; -Landroid/icu/util/SimpleTimeZone; -Landroid/icu/util/StringTokenizer; -Landroid/icu/util/StringTrieBuilder$BranchHeadNode; -Landroid/icu/util/StringTrieBuilder$BranchNode; -Landroid/icu/util/StringTrieBuilder$DynamicBranchNode; -Landroid/icu/util/StringTrieBuilder$IntermediateValueNode; -Landroid/icu/util/StringTrieBuilder$LinearMatchNode; -Landroid/icu/util/StringTrieBuilder$ListBranchNode; -Landroid/icu/util/StringTrieBuilder$Node; -Landroid/icu/util/StringTrieBuilder$Option; -Landroid/icu/util/StringTrieBuilder$SplitBranchNode; -Landroid/icu/util/StringTrieBuilder$State; -Landroid/icu/util/StringTrieBuilder$ValueNode; -Landroid/icu/util/StringTrieBuilder; -Landroid/icu/util/TaiwanCalendar; -Landroid/icu/util/TimeArrayTimeZoneRule; -Landroid/icu/util/TimeUnit; -Landroid/icu/util/TimeUnitAmount; -Landroid/icu/util/TimeZone$ConstantZone; -Landroid/icu/util/TimeZone$SystemTimeZoneType; -Landroid/icu/util/TimeZone; -Landroid/icu/util/TimeZoneRule; -Landroid/icu/util/TimeZoneTransition; -Landroid/icu/util/ULocale$1; -Landroid/icu/util/ULocale$2; -Landroid/icu/util/ULocale$AliasReplacer; -Landroid/icu/util/ULocale$AvailableType; -Landroid/icu/util/ULocale$Builder; -Landroid/icu/util/ULocale$Category; -Landroid/icu/util/ULocale$JDKLocaleHelper; -Landroid/icu/util/ULocale$Minimize; -Landroid/icu/util/ULocale$Type; -Landroid/icu/util/ULocale-IA; -Landroid/icu/util/ULocale; -Landroid/icu/util/UResourceBundle$RootType; -Landroid/icu/util/UResourceBundle; -Landroid/icu/util/UResourceBundleIterator; -Landroid/icu/util/UResourceTypeMismatchException; -Landroid/icu/util/UniversalTimeScale$TimeScaleData; -Landroid/icu/util/UniversalTimeScale; -Landroid/icu/util/VTimeZone; -Landroid/icu/util/ValueIterator$Element; -Landroid/icu/util/ValueIterator; -Landroid/icu/util/VersionInfo; -Landroid/inputmethodservice/AbstractInputMethodService$AbstractInputMethodImpl; -Landroid/inputmethodservice/AbstractInputMethodService$AbstractInputMethodSessionImpl; -Landroid/inputmethodservice/AbstractInputMethodService; -Landroid/inputmethodservice/ExtractEditText; -Landroid/inputmethodservice/IInputMethodSessionWrapper$ImeInputEventReceiver; -Landroid/inputmethodservice/IInputMethodSessionWrapper; -Landroid/inputmethodservice/IInputMethodWrapper$InputMethodSessionCallbackWrapper; -Landroid/inputmethodservice/IInputMethodWrapper; -Landroid/inputmethodservice/InputMethodService$InputMethodImpl; -Landroid/inputmethodservice/InputMethodService$InputMethodSessionImpl; -Landroid/inputmethodservice/InputMethodService$Insets; -Landroid/inputmethodservice/InputMethodService$SettingsObserver; -Landroid/inputmethodservice/InputMethodService; -Landroid/inputmethodservice/SoftInputWindow; -Landroid/internal/hidl/base/V1_0/DebugInfo; -Landroid/internal/hidl/base/V1_0/IBase; -Landroid/internal/hidl/manager/V1_0/IServiceManager; -Landroid/internal/hidl/manager/V1_1/IServiceManager; -Landroid/internal/hidl/manager/V1_2/IServiceManager$Stub; -Landroid/internal/hidl/manager/V1_2/IServiceManager; -Landroid/internal/hidl/safe_union/V1_0/Monostate; -Landroid/internal/modules/utils/build/SdkLevel; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda0; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda10; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda11; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda12; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda13; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda14; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda1; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda2; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda3; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda4; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda5; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda6; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda7; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda8; -Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda9; -Landroid/internal/telephony/sysprop/TelephonyProperties; -Landroid/location/Geofence$1; -Landroid/location/Geofence; -Landroid/location/IFusedGeofenceHardware$Stub$Proxy; -Landroid/location/IFusedGeofenceHardware$Stub; -Landroid/location/IFusedGeofenceHardware; -Landroid/location/IGpsGeofenceHardware$Stub$Proxy; -Landroid/location/IGpsGeofenceHardware$Stub; -Landroid/location/IGpsGeofenceHardware; -Landroid/location/Location$$ExternalSyntheticLambda0; -Landroid/location/Location$1; -Landroid/location/Location$BearingDistanceCache-IA; -Landroid/location/Location$BearingDistanceCache; -Landroid/location/Location; -Landroid/location/LocationTime$1; -Landroid/location/LocationTime; -Landroid/media/AudioAttributes$1; -Landroid/media/AudioAttributes$Builder; -Landroid/media/AudioAttributes-IA; -Landroid/media/AudioAttributes; -Landroid/media/AudioDescriptor$1; -Landroid/media/AudioDescriptor; -Landroid/media/AudioDeviceAttributes$1; -Landroid/media/AudioDeviceAttributes; -Landroid/media/AudioDeviceCallback; -Landroid/media/AudioDeviceInfo; -Landroid/media/AudioDevicePort; -Landroid/media/AudioDevicePortConfig; -Landroid/media/AudioDeviceVolumeManager; -Landroid/media/AudioFocusInfo$1; -Landroid/media/AudioFocusInfo; -Landroid/media/AudioFocusRequest$Builder; -Landroid/media/AudioFocusRequest-IA; -Landroid/media/AudioFocusRequest; -Landroid/media/AudioFormat$1; -Landroid/media/AudioFormat$Builder; -Landroid/media/AudioFormat-IA; -Landroid/media/AudioFormat; -Landroid/media/AudioGain; -Landroid/media/AudioGainConfig; -Landroid/media/AudioHandle; -Landroid/media/AudioManager$1; -Landroid/media/AudioManager$2; -Landroid/media/AudioManager$3; -Landroid/media/AudioManager$4; -Landroid/media/AudioManager$AudioPlaybackCallback; -Landroid/media/AudioManager$AudioPlaybackCallbackInfo; -Landroid/media/AudioManager$AudioRecordingCallback; -Landroid/media/AudioManager$AudioRecordingCallbackInfo; -Landroid/media/AudioManager$BlockingFocusResultReceiver; -Landroid/media/AudioManager$DevRoleListeners-IA; -Landroid/media/AudioManager$DevRoleListeners; -Landroid/media/AudioManager$FocusRequestInfo; -Landroid/media/AudioManager$NativeEventHandlerDelegate$1; -Landroid/media/AudioManager$NativeEventHandlerDelegate; -Landroid/media/AudioManager$OnAmPortUpdateListener-IA; -Landroid/media/AudioManager$OnAmPortUpdateListener; -Landroid/media/AudioManager$OnAudioFocusChangeListener; -Landroid/media/AudioManager$OnAudioPortUpdateListener; -Landroid/media/AudioManager$OnModeChangedListener; -Landroid/media/AudioManager$PlaybackConfigChangeCallbackData; -Landroid/media/AudioManager$RecordConfigChangeCallbackData; -Landroid/media/AudioManager$SafeWaitObject-IA; -Landroid/media/AudioManager$SafeWaitObject; -Landroid/media/AudioManager$ServiceEventHandlerDelegate$1; -Landroid/media/AudioManager$ServiceEventHandlerDelegate; -Landroid/media/AudioManager; -Landroid/media/AudioManagerInternal$RingerModeDelegate; -Landroid/media/AudioManagerInternal; -Landroid/media/AudioMetadata$2; -Landroid/media/AudioMetadata$3; -Landroid/media/AudioMetadata$4; -Landroid/media/AudioMetadata$5; -Landroid/media/AudioMetadata$6; -Landroid/media/AudioMetadata$BaseMap; -Landroid/media/AudioMetadata$BaseMapPackage; -Landroid/media/AudioMetadata$DataPackage; -Landroid/media/AudioMetadata$ObjectPackage; -Landroid/media/AudioMetadata; -Landroid/media/AudioMetadataMap; -Landroid/media/AudioMetadataReadMap; -Landroid/media/AudioMixCallbackFlag; -Landroid/media/AudioMixPort; -Landroid/media/AudioMixPortConfig; -Landroid/media/AudioMixerAttributes$1; -Landroid/media/AudioMixerAttributes; -Landroid/media/AudioPatch; -Landroid/media/AudioPlaybackConfiguration$1; -Landroid/media/AudioPlaybackConfiguration$IPlayerShell; -Landroid/media/AudioPlaybackConfiguration$PlayerDeathMonitor; -Landroid/media/AudioPlaybackConfiguration; -Landroid/media/AudioPort$$ExternalSyntheticLambda0; -Landroid/media/AudioPort; -Landroid/media/AudioPortConfig; -Landroid/media/AudioPortEventHandler$1; -Landroid/media/AudioPortEventHandler; -Landroid/media/AudioPresentation$1; -Landroid/media/AudioPresentation; -Landroid/media/AudioProfile$1; -Landroid/media/AudioProfile; -Landroid/media/AudioRecord$NativeEventHandler; -Landroid/media/AudioRecord$OnRecordPositionUpdateListener; -Landroid/media/AudioRecord; -Landroid/media/AudioRecordRoutingProxy; -Landroid/media/AudioRecordingConfiguration$1; -Landroid/media/AudioRecordingConfiguration; -Landroid/media/AudioRecordingMonitor; -Landroid/media/AudioRecordingMonitorClient; -Landroid/media/AudioRecordingMonitorImpl$1; -Landroid/media/AudioRecordingMonitorImpl; -Landroid/media/AudioRoutesInfo$1; -Landroid/media/AudioRoutesInfo; -Landroid/media/AudioRouting; -Landroid/media/AudioSystem$AudioRecordingCallback; -Landroid/media/AudioSystem$DynamicPolicyCallback; -Landroid/media/AudioSystem$ErrorCallback; -Landroid/media/AudioSystem; -Landroid/media/AudioTimestamp$1; -Landroid/media/AudioTimestamp; -Landroid/media/AudioTrack$1; -Landroid/media/AudioTrack$NativePositionEventHandlerDelegate; -Landroid/media/AudioTrack$TunerConfiguration; -Landroid/media/AudioTrack; -Landroid/media/AudioTrackRoutingProxy; -Landroid/media/CallbackUtil$DispatcherStub; -Landroid/media/CallbackUtil$LazyListenerManager$$ExternalSyntheticLambda0; -Landroid/media/CallbackUtil$LazyListenerManager; -Landroid/media/CallbackUtil$ListenerInfo; -Landroid/media/CallbackUtil; -Landroid/media/CamcorderProfile; -Landroid/media/CameraProfile; -Landroid/media/DecoderCapabilities; -Landroid/media/DeniedByServerException; -Landroid/media/DrmInitData$SchemeInitData; -Landroid/media/DrmInitData; -Landroid/media/EncoderCapabilities; -Landroid/media/ExifInterface$ByteOrderedDataInputStream; -Landroid/media/ExifInterface$ByteOrderedDataOutputStream; -Landroid/media/ExifInterface$ExifAttribute; -Landroid/media/ExifInterface$ExifTag; -Landroid/media/ExifInterface$Rational; -Landroid/media/ExifInterface; -Landroid/media/ExifInterfaceUtils; -Landroid/media/ExternalRingtonesCursorWrapper; -Landroid/media/IAudioFocusDispatcher$Stub$Proxy; -Landroid/media/IAudioFocusDispatcher$Stub; -Landroid/media/IAudioFocusDispatcher; -Landroid/media/IAudioModeDispatcher; -Landroid/media/IAudioRoutesObserver$Stub$Proxy; -Landroid/media/IAudioRoutesObserver$Stub; -Landroid/media/IAudioRoutesObserver; -Landroid/media/IAudioServerStateDispatcher$Stub$Proxy; -Landroid/media/IAudioServerStateDispatcher$Stub; -Landroid/media/IAudioServerStateDispatcher; -Landroid/media/IAudioService$Stub$Proxy; -Landroid/media/IAudioService$Stub; -Landroid/media/IAudioService; -Landroid/media/ICapturePresetDevicesRoleDispatcher$Stub$Proxy; -Landroid/media/ICapturePresetDevicesRoleDispatcher$Stub; -Landroid/media/ICapturePresetDevicesRoleDispatcher; -Landroid/media/ICommunicationDeviceDispatcher$Stub; -Landroid/media/ICommunicationDeviceDispatcher; -Landroid/media/IMediaHTTPConnection$Stub; -Landroid/media/IMediaHTTPConnection; -Landroid/media/IMediaHTTPService$Stub; -Landroid/media/IMediaHTTPService; -Landroid/media/IMediaResourceMonitor$Stub; -Landroid/media/IMediaResourceMonitor; -Landroid/media/IMediaRoute2ProviderService$Stub$Proxy; -Landroid/media/IMediaRoute2ProviderService$Stub; -Landroid/media/IMediaRoute2ProviderService; -Landroid/media/IMediaRoute2ProviderServiceCallback$Stub; -Landroid/media/IMediaRoute2ProviderServiceCallback; -Landroid/media/IMediaRouter2$Stub$Proxy; -Landroid/media/IMediaRouter2$Stub; -Landroid/media/IMediaRouter2; -Landroid/media/IMediaRouter2Manager$Stub$Proxy; -Landroid/media/IMediaRouter2Manager$Stub; -Landroid/media/IMediaRouter2Manager; -Landroid/media/IMediaRouterClient$Stub$Proxy; -Landroid/media/IMediaRouterClient$Stub; -Landroid/media/IMediaRouterClient; -Landroid/media/IMediaRouterService$Stub$Proxy; -Landroid/media/IMediaRouterService$Stub; -Landroid/media/IMediaRouterService; -Landroid/media/INearbyMediaDevicesProvider; -Landroid/media/IPlaybackConfigDispatcher$Stub$Proxy; -Landroid/media/IPlaybackConfigDispatcher$Stub; -Landroid/media/IPlaybackConfigDispatcher; -Landroid/media/IPlayer$Stub$Proxy; -Landroid/media/IPlayer$Stub; -Landroid/media/IPlayer; -Landroid/media/IRecordingConfigDispatcher$Stub$Proxy; -Landroid/media/IRecordingConfigDispatcher$Stub; -Landroid/media/IRecordingConfigDispatcher; -Landroid/media/IRemoteSessionCallback$Stub; -Landroid/media/IRemoteSessionCallback; -Landroid/media/IRemoteVolumeObserver$Stub; -Landroid/media/IRemoteVolumeObserver; -Landroid/media/IRingtonePlayer$Stub$Proxy; -Landroid/media/IRingtonePlayer$Stub; -Landroid/media/IRingtonePlayer; -Landroid/media/IStrategyPreferredDevicesDispatcher$Stub$Proxy; -Landroid/media/IStrategyPreferredDevicesDispatcher$Stub; -Landroid/media/IStrategyPreferredDevicesDispatcher; -Landroid/media/IVolumeController$Stub$Proxy; -Landroid/media/IVolumeController$Stub; -Landroid/media/IVolumeController; -Landroid/media/Image$Plane; -Landroid/media/Image; -Landroid/media/ImageReader$ImagePlane; -Landroid/media/ImageReader$ListenerHandler; -Landroid/media/ImageReader$OnImageAvailableListener; -Landroid/media/ImageReader$SurfaceImage$SurfacePlane; -Landroid/media/ImageReader$SurfaceImage; -Landroid/media/ImageReader; -Landroid/media/ImageUtils; -Landroid/media/ImageWriter$WriterSurfaceImage$SurfacePlane; -Landroid/media/ImageWriter$WriterSurfaceImage; -Landroid/media/ImageWriter; -Landroid/media/JetPlayer; -Landroid/media/MediaCodec$$ExternalSyntheticLambda6; -Landroid/media/MediaCodec$$ExternalSyntheticLambda7; -Landroid/media/MediaCodec$BufferInfo; -Landroid/media/MediaCodec$BufferMap$CodecBuffer-IA; -Landroid/media/MediaCodec$BufferMap$CodecBuffer; -Landroid/media/MediaCodec$BufferMap-IA; -Landroid/media/MediaCodec$BufferMap; -Landroid/media/MediaCodec$Callback; -Landroid/media/MediaCodec$CodecException; -Landroid/media/MediaCodec$CryptoException; -Landroid/media/MediaCodec$CryptoInfo$Pattern; -Landroid/media/MediaCodec$CryptoInfo; -Landroid/media/MediaCodec$EventHandler; -Landroid/media/MediaCodec$IncompatibleWithBlockModelException; -Landroid/media/MediaCodec$InvalidBufferFlagsException; -Landroid/media/MediaCodec$LinearBlock; -Landroid/media/MediaCodec$OnFrameRenderedListener; -Landroid/media/MediaCodec$OutputFrame; -Landroid/media/MediaCodec$ParameterDescriptor; -Landroid/media/MediaCodec$PersistentSurface; -Landroid/media/MediaCodec$QueueRequest; -Landroid/media/MediaCodec; -Landroid/media/MediaCodecInfo$AudioCapabilities; -Landroid/media/MediaCodecInfo$CodecCapabilities$FeatureList; -Landroid/media/MediaCodecInfo$CodecCapabilities; -Landroid/media/MediaCodecInfo$CodecProfileLevel; -Landroid/media/MediaCodecInfo$EncoderCapabilities; -Landroid/media/MediaCodecInfo$Feature; -Landroid/media/MediaCodecInfo$LazyHolder; -Landroid/media/MediaCodecInfo$VideoCapabilities$$ExternalSyntheticLambda0; -Landroid/media/MediaCodecInfo$VideoCapabilities$PerformancePoint; -Landroid/media/MediaCodecInfo$VideoCapabilities; -Landroid/media/MediaCodecInfo; -Landroid/media/MediaCodecList; -Landroid/media/MediaCrypto; -Landroid/media/MediaCryptoException; -Landroid/media/MediaDataSource; -Landroid/media/MediaDescrambler; -Landroid/media/MediaDescription$1; -Landroid/media/MediaDescription$Builder; -Landroid/media/MediaDescription-IA; -Landroid/media/MediaDescription; -Landroid/media/MediaDrm$Certificate; -Landroid/media/MediaDrm$CryptoSession; -Landroid/media/MediaDrm$KeyRequest; -Landroid/media/MediaDrm$KeyStatus; -Landroid/media/MediaDrm$ListenerWithExecutor; -Landroid/media/MediaDrm$LogMessage; -Landroid/media/MediaDrm$MediaDrmStateException; -Landroid/media/MediaDrm$OnEventListener; -Landroid/media/MediaDrm$ProvisionRequest; -Landroid/media/MediaDrm$SessionException; -Landroid/media/MediaDrm; -Landroid/media/MediaDrmException; -Landroid/media/MediaDrmThrowable; -Landroid/media/MediaExtractor; -Landroid/media/MediaFile; -Landroid/media/MediaFormat; -Landroid/media/MediaFrameworkPlatformInitializer$$ExternalSyntheticLambda0; -Landroid/media/MediaFrameworkPlatformInitializer; -Landroid/media/MediaHTTPConnection; -Landroid/media/MediaHTTPService; -Landroid/media/MediaMetadata$1; -Landroid/media/MediaMetadata$Builder; -Landroid/media/MediaMetadata-IA; -Landroid/media/MediaMetadata; -Landroid/media/MediaMetadataRetriever$BitmapParams; -Landroid/media/MediaMetadataRetriever; -Landroid/media/MediaMetrics$1; -Landroid/media/MediaMetrics$Item; -Landroid/media/MediaMetrics$Key; -Landroid/media/MediaMetrics$Property; -Landroid/media/MediaMetrics; -Landroid/media/MediaMuxer; -Landroid/media/MediaPlayer$1; -Landroid/media/MediaPlayer$2$1; -Landroid/media/MediaPlayer$2; -Landroid/media/MediaPlayer$3; -Landroid/media/MediaPlayer$6; -Landroid/media/MediaPlayer$7; -Landroid/media/MediaPlayer$DrmInfo-IA; -Landroid/media/MediaPlayer$DrmInfo; -Landroid/media/MediaPlayer$EventHandler$$ExternalSyntheticLambda0; -Landroid/media/MediaPlayer$EventHandler$1; -Landroid/media/MediaPlayer$EventHandler$2; -Landroid/media/MediaPlayer$EventHandler; -Landroid/media/MediaPlayer$OnBufferingUpdateListener; -Landroid/media/MediaPlayer$OnCompletionListener; -Landroid/media/MediaPlayer$OnDrmConfigHelper; -Landroid/media/MediaPlayer$OnDrmInfoHandlerDelegate; -Landroid/media/MediaPlayer$OnDrmPreparedHandlerDelegate; -Landroid/media/MediaPlayer$OnErrorListener; -Landroid/media/MediaPlayer$OnInfoListener; -Landroid/media/MediaPlayer$OnMediaTimeDiscontinuityListener; -Landroid/media/MediaPlayer$OnPreparedListener; -Landroid/media/MediaPlayer$OnRtpRxNoticeListener; -Landroid/media/MediaPlayer$OnSeekCompleteListener; -Landroid/media/MediaPlayer$OnSubtitleDataListener; -Landroid/media/MediaPlayer$OnTimedMetaDataAvailableListener; -Landroid/media/MediaPlayer$OnTimedTextListener; -Landroid/media/MediaPlayer$OnVideoSizeChangedListener; -Landroid/media/MediaPlayer$ProvisioningThread; -Landroid/media/MediaPlayer$TimeProvider$EventHandler; -Landroid/media/MediaPlayer$TimeProvider; -Landroid/media/MediaPlayer$TrackInfo$1; -Landroid/media/MediaPlayer$TrackInfo; -Landroid/media/MediaPlayer; -Landroid/media/MediaRecorder; -Landroid/media/MediaRoute2Info$1; -Landroid/media/MediaRoute2Info$Builder; -Landroid/media/MediaRoute2Info; -Landroid/media/MediaRoute2ProviderInfo$1; -Landroid/media/MediaRoute2ProviderInfo$Builder; -Landroid/media/MediaRoute2ProviderInfo; -Landroid/media/MediaRouter$Callback; -Landroid/media/MediaRouter$CallbackInfo; -Landroid/media/MediaRouter$RouteCategory; -Landroid/media/MediaRouter$RouteGroup; -Landroid/media/MediaRouter$RouteInfo$1; -Landroid/media/MediaRouter$RouteInfo; -Landroid/media/MediaRouter$SimpleCallback; -Landroid/media/MediaRouter$Static$1$1; -Landroid/media/MediaRouter$Static$1; -Landroid/media/MediaRouter$Static$Client$$ExternalSyntheticLambda0; -Landroid/media/MediaRouter$Static$Client$$ExternalSyntheticLambda1; -Landroid/media/MediaRouter$Static$Client$1; -Landroid/media/MediaRouter$Static$Client; -Landroid/media/MediaRouter$Static; -Landroid/media/MediaRouter$UserRouteInfo$SessionVolumeProvider; -Landroid/media/MediaRouter$UserRouteInfo; -Landroid/media/MediaRouter$VolumeCallback; -Landroid/media/MediaRouter$VolumeCallbackInfo; -Landroid/media/MediaRouter$VolumeChangeReceiver; -Landroid/media/MediaRouter$WifiDisplayStatusChangedReceiver; -Landroid/media/MediaRouter2$$ExternalSyntheticLambda7; -Landroid/media/MediaRouter2$$ExternalSyntheticLambda8; -Landroid/media/MediaRouter2Manager$Callback; -Landroid/media/MediaRouter2Manager$CallbackRecord; -Landroid/media/MediaRouter2Manager$Client$$ExternalSyntheticLambda5; -Landroid/media/MediaRouter2Manager$Client; -Landroid/media/MediaRouter2Manager$TransferRequest; -Landroid/media/MediaRouter2Manager; -Landroid/media/MediaRouter2Utils; -Landroid/media/MediaRouter; -Landroid/media/MediaRouterClientState$1; -Landroid/media/MediaRouterClientState$RouteInfo$1; -Landroid/media/MediaRouterClientState$RouteInfo; -Landroid/media/MediaRouterClientState; -Landroid/media/MediaScanner; -Landroid/media/MediaScannerConnection$MediaScannerConnectionClient; -Landroid/media/MediaScannerConnection$OnScanCompletedListener; -Landroid/media/MediaServiceManager$ServiceRegisterer; -Landroid/media/MediaServiceManager; -Landroid/media/MediaSync; -Landroid/media/MediaTimeProvider$OnMediaTimeListener; -Landroid/media/MediaTimeProvider; -Landroid/media/MediaTimestamp; -Landroid/media/MicrophoneDirection; -Landroid/media/MicrophoneInfo$Coordinate3F; -Landroid/media/MicrophoneInfo; -Landroid/media/NativeRoutingEventHandlerDelegate; -Landroid/media/NotProvisionedException; -Landroid/media/PlaybackParams$1; -Landroid/media/PlaybackParams; -Landroid/media/PlayerBase$IPlayerWrapper; -Landroid/media/PlayerBase$PlayerIdCard$1; -Landroid/media/PlayerBase$PlayerIdCard; -Landroid/media/PlayerBase; -Landroid/media/PublicFormatUtils; -Landroid/media/Rating$1; -Landroid/media/Rating; -Landroid/media/RemoteControlClient; -Landroid/media/RemoteDisplay; -Landroid/media/ResampleInputStream; -Landroid/media/ResourceBusyException; -Landroid/media/Ringtone; -Landroid/media/RingtoneManager; -Landroid/media/RouteDiscoveryPreference$1; -Landroid/media/RouteDiscoveryPreference$Builder$$ExternalSyntheticLambda0; -Landroid/media/RouteDiscoveryPreference$Builder; -Landroid/media/RouteDiscoveryPreference; -Landroid/media/RouteListingPreference$1; -Landroid/media/RouteListingPreference; -Landroid/media/RoutingSessionInfo$1; -Landroid/media/RoutingSessionInfo$Builder; -Landroid/media/RoutingSessionInfo; -Landroid/media/SoundPool$Builder; -Landroid/media/SoundPool$EventHandler; -Landroid/media/SoundPool$OnLoadCompleteListener; -Landroid/media/SoundPool-IA; -Landroid/media/SoundPool; -Landroid/media/Spatializer; -Landroid/media/SubtitleController$1; -Landroid/media/SubtitleController$2; -Landroid/media/SubtitleController$Anchor; -Landroid/media/SubtitleController$Listener; -Landroid/media/SubtitleController; -Landroid/media/SubtitleData; -Landroid/media/SubtitleTrack$RenderingWidget; -Landroid/media/SubtitleTrack; -Landroid/media/SyncParams; -Landroid/media/ThumbnailUtils$Resizer; -Landroid/media/ThumbnailUtils$SizedThumbnailBitmap; -Landroid/media/ThumbnailUtils; -Landroid/media/TimedMetaData; -Landroid/media/TimedText; -Landroid/media/ToneGenerator; -Landroid/media/UnsupportedSchemeException; -Landroid/media/Utils$1; -Landroid/media/Utils$2; -Landroid/media/Utils$ListenerList; -Landroid/media/Utils; -Landroid/media/VolumeAutomation; -Landroid/media/VolumePolicy$1; -Landroid/media/VolumePolicy; -Landroid/media/VolumeProvider$Callback; -Landroid/media/VolumeProvider; -Landroid/media/VolumeShaper$Configuration$1; -Landroid/media/VolumeShaper$Configuration$Builder; -Landroid/media/VolumeShaper$Configuration; -Landroid/media/VolumeShaper$Operation$1; -Landroid/media/VolumeShaper$Operation$Builder; -Landroid/media/VolumeShaper$Operation; -Landroid/media/VolumeShaper$State$1; -Landroid/media/VolumeShaper$State; -Landroid/media/VolumeShaper; -Landroid/media/audio/FeatureFlags; -Landroid/media/audio/FeatureFlagsImpl; -Landroid/media/audio/Flags; -Landroid/media/audio/common/AidlConversion; -Landroid/media/audio/common/HeadTracking$SensorData$Tag; -Landroid/media/audiofx/AudioEffect$Descriptor; -Landroid/media/audiofx/AudioEffect; -Landroid/media/audiofx/DefaultEffect; -Landroid/media/audiofx/SourceDefaultEffect; -Landroid/media/audiofx/StreamDefaultEffect; -Landroid/media/audiofx/Visualizer$MeasurementPeakRms; -Landroid/media/audiofx/Visualizer; -Landroid/media/audiopolicy/AudioMix$1; -Landroid/media/audiopolicy/AudioMix$Builder; -Landroid/media/audiopolicy/AudioMix; -Landroid/media/audiopolicy/AudioMixingRule$1; -Landroid/media/audiopolicy/AudioMixingRule$AudioMixMatchCriterion$1; -Landroid/media/audiopolicy/AudioMixingRule$AudioMixMatchCriterion; -Landroid/media/audiopolicy/AudioMixingRule$Builder; -Landroid/media/audiopolicy/AudioMixingRule; -Landroid/media/audiopolicy/AudioPolicy$1; -Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener; -Landroid/media/audiopolicy/AudioPolicy$EventHandler; -Landroid/media/audiopolicy/AudioPolicy; -Landroid/media/audiopolicy/AudioPolicyConfig$1; -Landroid/media/audiopolicy/AudioPolicyConfig; -Landroid/media/audiopolicy/AudioProductStrategy$1; -Landroid/media/audiopolicy/AudioProductStrategy$AudioAttributesGroup$1; -Landroid/media/audiopolicy/AudioProductStrategy$AudioAttributesGroup; -Landroid/media/audiopolicy/AudioProductStrategy; -Landroid/media/audiopolicy/AudioVolumeGroup$1; -Landroid/media/audiopolicy/AudioVolumeGroup; -Landroid/media/audiopolicy/AudioVolumeGroupChangeHandler; -Landroid/media/audiopolicy/IAudioPolicyCallback$Stub$Proxy; -Landroid/media/audiopolicy/IAudioPolicyCallback$Stub; -Landroid/media/audiopolicy/IAudioPolicyCallback; -Landroid/media/browse/MediaBrowser$1; -Landroid/media/browse/MediaBrowser$2; -Landroid/media/browse/MediaBrowser$6; -Landroid/media/browse/MediaBrowser$7; -Landroid/media/browse/MediaBrowser$8; -Landroid/media/browse/MediaBrowser$ConnectionCallback; -Landroid/media/browse/MediaBrowser$MediaItem$1; -Landroid/media/browse/MediaBrowser$MediaItem; -Landroid/media/browse/MediaBrowser$MediaServiceConnection$1; -Landroid/media/browse/MediaBrowser$MediaServiceConnection-IA; -Landroid/media/browse/MediaBrowser$MediaServiceConnection; -Landroid/media/browse/MediaBrowser$ServiceCallbacks; -Landroid/media/browse/MediaBrowser$Subscription; -Landroid/media/browse/MediaBrowser$SubscriptionCallback; -Landroid/media/browse/MediaBrowser; -Landroid/media/browse/MediaBrowserUtils; -Landroid/media/metrics/Event; -Landroid/media/metrics/IMediaMetricsManager$Stub$Proxy; -Landroid/media/metrics/IMediaMetricsManager$Stub; -Landroid/media/metrics/IMediaMetricsManager; -Landroid/media/metrics/LogSessionId; -Landroid/media/metrics/MediaMetricsManager; -Landroid/media/metrics/NetworkEvent$1; -Landroid/media/metrics/NetworkEvent; -Landroid/media/metrics/PlaybackSession; -Landroid/media/midi/IMidiDeviceListener$Stub$Proxy; -Landroid/media/midi/IMidiDeviceListener$Stub; -Landroid/media/midi/IMidiDeviceListener; -Landroid/media/midi/IMidiDeviceOpenCallback$Stub$Proxy; -Landroid/media/midi/IMidiDeviceOpenCallback$Stub; -Landroid/media/midi/IMidiDeviceOpenCallback; -Landroid/media/midi/IMidiDeviceServer$Stub$Proxy; -Landroid/media/midi/IMidiDeviceServer$Stub; -Landroid/media/midi/IMidiDeviceServer; -Landroid/media/midi/IMidiManager$Stub; -Landroid/media/midi/IMidiManager; -Landroid/media/midi/MidiDevice; -Landroid/media/midi/MidiDeviceInfo$1; -Landroid/media/midi/MidiDeviceInfo; -Landroid/media/midi/MidiDeviceStatus$1; -Landroid/media/midi/MidiDeviceStatus; -Landroid/media/midi/MidiManager; -Landroid/media/musicrecognition/IMusicRecognitionManager$Stub; -Landroid/media/musicrecognition/IMusicRecognitionManager; -Landroid/media/musicrecognition/IMusicRecognitionServiceCallback$Stub; -Landroid/media/musicrecognition/IMusicRecognitionServiceCallback; -Landroid/media/musicrecognition/MusicRecognitionManager; -Landroid/media/permission/ClearCallingIdentityContext; -Landroid/media/permission/CompositeSafeCloseable; -Landroid/media/permission/Identity$1; -Landroid/media/permission/Identity; -Landroid/media/permission/IdentityContext; -Landroid/media/permission/PermissionUtil; -Landroid/media/permission/SafeCloseable; -Landroid/media/projection/IMediaProjection$Stub$Proxy; -Landroid/media/projection/IMediaProjection$Stub; -Landroid/media/projection/IMediaProjection; -Landroid/media/projection/IMediaProjectionManager$Stub$Proxy; -Landroid/media/projection/IMediaProjectionManager$Stub; -Landroid/media/projection/IMediaProjectionManager; -Landroid/media/projection/IMediaProjectionWatcherCallback$Stub$Proxy; -Landroid/media/projection/IMediaProjectionWatcherCallback$Stub; -Landroid/media/projection/IMediaProjectionWatcherCallback; -Landroid/media/projection/MediaProjection; -Landroid/media/projection/MediaProjectionInfo$1; -Landroid/media/projection/MediaProjectionInfo; -Landroid/media/projection/MediaProjectionManager$Callback; -Landroid/media/projection/MediaProjectionManager$CallbackDelegate; -Landroid/media/projection/MediaProjectionManager; -Landroid/media/session/IActiveSessionsListener$Stub$Proxy; -Landroid/media/session/IActiveSessionsListener$Stub; -Landroid/media/session/IActiveSessionsListener; -Landroid/media/session/IOnMediaKeyEventDispatchedListener$Stub$Proxy; -Landroid/media/session/IOnMediaKeyEventDispatchedListener$Stub; -Landroid/media/session/IOnMediaKeyEventDispatchedListener; -Landroid/media/session/IOnMediaKeyEventSessionChangedListener$Stub$Proxy; -Landroid/media/session/IOnMediaKeyEventSessionChangedListener$Stub; -Landroid/media/session/IOnMediaKeyEventSessionChangedListener; -Landroid/media/session/IOnMediaKeyListener$Stub$Proxy; -Landroid/media/session/IOnMediaKeyListener$Stub; -Landroid/media/session/IOnMediaKeyListener; -Landroid/media/session/IOnVolumeKeyLongPressListener$Stub$Proxy; -Landroid/media/session/IOnVolumeKeyLongPressListener$Stub; -Landroid/media/session/IOnVolumeKeyLongPressListener; -Landroid/media/session/ISession$Stub$Proxy; -Landroid/media/session/ISession$Stub; -Landroid/media/session/ISession2TokensListener$Stub$Proxy; -Landroid/media/session/ISession2TokensListener$Stub; -Landroid/media/session/ISession2TokensListener; -Landroid/media/session/ISession; -Landroid/media/session/ISessionCallback$Stub$Proxy; -Landroid/media/session/ISessionCallback$Stub; -Landroid/media/session/ISessionCallback; -Landroid/media/session/ISessionController$Stub$Proxy; -Landroid/media/session/ISessionController$Stub; -Landroid/media/session/ISessionController; -Landroid/media/session/ISessionControllerCallback$Stub$Proxy; -Landroid/media/session/ISessionControllerCallback$Stub; -Landroid/media/session/ISessionControllerCallback; -Landroid/media/session/ISessionManager$Stub$Proxy; -Landroid/media/session/ISessionManager$Stub; -Landroid/media/session/ISessionManager; -Landroid/media/session/MediaController$Callback; -Landroid/media/session/MediaController$CallbackStub; -Landroid/media/session/MediaController$MessageHandler; -Landroid/media/session/MediaController$PlaybackInfo$1; -Landroid/media/session/MediaController$PlaybackInfo; -Landroid/media/session/MediaController$TransportControls-IA; -Landroid/media/session/MediaController$TransportControls; -Landroid/media/session/MediaController; -Landroid/media/session/MediaSession$Callback; -Landroid/media/session/MediaSession$CallbackMessageHandler; -Landroid/media/session/MediaSession$CallbackStub; -Landroid/media/session/MediaSession$QueueItem$1; -Landroid/media/session/MediaSession$QueueItem; -Landroid/media/session/MediaSession$Token$1; -Landroid/media/session/MediaSession$Token; -Landroid/media/session/MediaSession; -Landroid/media/session/MediaSessionLegacyHelper; -Landroid/media/session/MediaSessionManager$OnActiveSessionsChangedListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListenerStub-IA; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventDispatchedListenerStub; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub-IA; -Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub; -Landroid/media/session/MediaSessionManager$OnMediaKeyListener; -Landroid/media/session/MediaSessionManager$OnMediaKeyListenerImpl; -Landroid/media/session/MediaSessionManager$OnSession2TokensChangedListener; -Landroid/media/session/MediaSessionManager$OnVolumeKeyLongPressListener; -Landroid/media/session/MediaSessionManager$OnVolumeKeyLongPressListenerImpl; -Landroid/media/session/MediaSessionManager$RemoteSessionCallbackStub-IA; -Landroid/media/session/MediaSessionManager$RemoteSessionCallbackStub; -Landroid/media/session/MediaSessionManager$RemoteUserInfo; -Landroid/media/session/MediaSessionManager$Session2TokensChangedWrapper; -Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0; -Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1; -Landroid/media/session/MediaSessionManager$SessionsChangedWrapper; -Landroid/media/session/MediaSessionManager; -Landroid/media/session/ParcelableListBinder; -Landroid/media/session/PlaybackState$1; -Landroid/media/session/PlaybackState$Builder; -Landroid/media/session/PlaybackState$CustomAction$1; -Landroid/media/session/PlaybackState$CustomAction-IA; -Landroid/media/session/PlaybackState$CustomAction; -Landroid/media/session/PlaybackState-IA; -Landroid/media/session/PlaybackState; -Landroid/media/soundtrigger/ISoundTriggerDetectionServiceClient$Stub; -Landroid/media/soundtrigger/ISoundTriggerDetectionServiceClient; -Landroid/media/soundtrigger/SoundTriggerManager; -Landroid/media/soundtrigger_middleware/ISoundTriggerCallback$Stub$Proxy; -Landroid/media/soundtrigger_middleware/ISoundTriggerCallback$Stub; -Landroid/media/soundtrigger_middleware/ISoundTriggerCallback; -Landroid/media/soundtrigger_middleware/ISoundTriggerMiddlewareService$Stub$Proxy; -Landroid/media/soundtrigger_middleware/ISoundTriggerMiddlewareService$Stub; -Landroid/media/soundtrigger_middleware/ISoundTriggerMiddlewareService; -Landroid/media/soundtrigger_middleware/ISoundTriggerModule$Stub; -Landroid/media/soundtrigger_middleware/ISoundTriggerModule; -Landroid/media/soundtrigger_middleware/SoundTriggerModuleDescriptor$1; -Landroid/media/soundtrigger_middleware/SoundTriggerModuleDescriptor; -Landroid/media/tv/TvInputHardwareInfo$Builder; -Landroid/media/tv/TvInputManager; -Landroid/media/tv/TvStreamConfig$1; -Landroid/media/tv/TvStreamConfig$Builder; -Landroid/media/tv/TvStreamConfig; -Landroid/media/tv/ad/TvAdManager; -Landroid/media/tv/interactive/TvInteractiveAppManager; -Landroid/media/tv/tuner/filter/FilterEvent; -Landroid/media/tv/tuner/filter/RestartEvent; -Landroid/media/tv/tunerresourcemanager/TunerResourceManager; -Landroid/metrics/LogMaker; -Landroid/metrics/MetricsReader$Event; -Landroid/metrics/MetricsReader$LogReader; -Landroid/metrics/MetricsReader; -Landroid/mtp/MtpDatabase$1; -Landroid/mtp/MtpDatabase$2; -Landroid/mtp/MtpDatabase; -Landroid/mtp/MtpDevice; -Landroid/mtp/MtpDeviceInfo; -Landroid/mtp/MtpEvent; -Landroid/mtp/MtpObjectInfo; -Landroid/mtp/MtpPropertyGroup; -Landroid/mtp/MtpPropertyList; -Landroid/mtp/MtpServer; -Landroid/mtp/MtpStorage; -Landroid/mtp/MtpStorageInfo; -Landroid/mtp/MtpStorageManager$MtpNotifier; -Landroid/mtp/MtpStorageManager$MtpObject; -Landroid/mtp/MtpStorageManager; -Landroid/multiuser/FeatureFlags; -Landroid/multiuser/FeatureFlagsImpl; -Landroid/multiuser/Flags; -Landroid/net/ConnectivityMetricsEvent$1; -Landroid/net/ConnectivityMetricsEvent; -Landroid/net/Credentials; -Landroid/net/EventLogTags; -Landroid/net/IIpConnectivityMetrics$Stub$Proxy; -Landroid/net/IIpConnectivityMetrics$Stub; -Landroid/net/IIpConnectivityMetrics; -Landroid/net/INetdEventCallback$Stub$Proxy; -Landroid/net/INetdEventCallback$Stub; -Landroid/net/INetdEventCallback; -Landroid/net/INetworkManagementEventObserver$Stub$Proxy; -Landroid/net/INetworkManagementEventObserver$Stub; -Landroid/net/INetworkManagementEventObserver; -Landroid/net/INetworkPolicyListener$Stub; -Landroid/net/INetworkPolicyListener; -Landroid/net/INetworkPolicyManager$Stub$Proxy; -Landroid/net/INetworkPolicyManager$Stub; -Landroid/net/INetworkPolicyManager; -Landroid/net/INetworkRecommendationProvider$Stub$Proxy; -Landroid/net/INetworkRecommendationProvider$Stub; -Landroid/net/INetworkRecommendationProvider; -Landroid/net/INetworkScoreCache$Stub$Proxy; -Landroid/net/INetworkScoreCache$Stub; -Landroid/net/INetworkScoreCache; -Landroid/net/INetworkScoreService$Stub$Proxy; -Landroid/net/INetworkScoreService$Stub; -Landroid/net/INetworkScoreService; -Landroid/net/IVpnManager$Stub$Proxy; -Landroid/net/IVpnManager$Stub; -Landroid/net/IVpnManager; -Landroid/net/InterfaceConfiguration$1; -Landroid/net/InterfaceConfiguration; -Landroid/net/LocalServerSocket; -Landroid/net/LocalSocket; -Landroid/net/LocalSocketAddress$Namespace; -Landroid/net/LocalSocketAddress; -Landroid/net/LocalSocketImpl$SocketInputStream; -Landroid/net/LocalSocketImpl; -Landroid/net/MatchAllNetworkSpecifier$1; -Landroid/net/MatchAllNetworkSpecifier; -Landroid/net/NetworkKey$1; -Landroid/net/NetworkKey-IA; -Landroid/net/NetworkKey; -Landroid/net/NetworkPolicy$1; -Landroid/net/NetworkPolicy; -Landroid/net/NetworkPolicyManager$1; -Landroid/net/NetworkPolicyManager$Listener; -Landroid/net/NetworkPolicyManager$SubscriptionCallback; -Landroid/net/NetworkPolicyManager$SubscriptionCallbackProxy; -Landroid/net/NetworkPolicyManager; -Landroid/net/NetworkQuotaInfo$1; -Landroid/net/NetworkQuotaInfo; -Landroid/net/NetworkRecommendationProvider$ServiceWrapper$1; -Landroid/net/NetworkRecommendationProvider$ServiceWrapper; -Landroid/net/NetworkRecommendationProvider; -Landroid/net/NetworkScoreManager$NetworkScoreCallback; -Landroid/net/NetworkScoreManager$NetworkScoreCallbackProxy; -Landroid/net/NetworkScoreManager; -Landroid/net/NetworkScorerAppData$1; -Landroid/net/NetworkScorerAppData; -Landroid/net/NetworkSpecifier; -Landroid/net/NetworkStack; -Landroid/net/NetworkWatchlistManager; -Landroid/net/PacProxyManager; -Landroid/net/PacProxySelector; -Landroid/net/PrivateDnsConnectivityChecker; -Landroid/net/Proxy; -Landroid/net/RssiCurve$1; -Landroid/net/RssiCurve; -Landroid/net/SSLCertificateSocketFactory$1; -Landroid/net/SSLCertificateSocketFactory; -Landroid/net/SSLSessionCache; -Landroid/net/ScoredNetwork$1; -Landroid/net/ScoredNetwork; -Landroid/net/SntpClient$InvalidServerReplyException; -Landroid/net/SntpClient; -Landroid/net/StringNetworkSpecifier$1; -Landroid/net/StringNetworkSpecifier; -Landroid/net/TelephonyNetworkSpecifier$1; -Landroid/net/TelephonyNetworkSpecifier$Builder; -Landroid/net/TelephonyNetworkSpecifier; -Landroid/net/Uri$1; -Landroid/net/Uri$AbstractHierarchicalUri-IA; -Landroid/net/Uri$AbstractHierarchicalUri; -Landroid/net/Uri$AbstractPart; -Landroid/net/Uri$Builder; -Landroid/net/Uri$HierarchicalUri-IA; -Landroid/net/Uri$NotCachedHolder; -Landroid/net/Uri$OpaqueUri-IA; -Landroid/net/Uri$Part$EmptyPart; -Landroid/net/Uri$Part; -Landroid/net/Uri$PathPart; -Landroid/net/Uri$PathSegmentsBuilder; -Landroid/net/Uri$StringUri-IA; -Landroid/net/Uri-IA; -Landroid/net/Uri; -Landroid/net/UriCodec; -Landroid/net/VpnManager; -Landroid/net/WebAddress; -Landroid/net/WifiKey$1; -Landroid/net/WifiKey-IA; -Landroid/net/WifiKey; -Landroid/net/http/HttpResponseCache; -Landroid/net/http/SslCertificate; -Landroid/net/http/X509TrustManagerExtensions; -Landroid/net/metrics/ApfProgramEvent$1; -Landroid/net/metrics/ApfProgramEvent$Decoder; -Landroid/net/metrics/ApfProgramEvent; -Landroid/net/metrics/ApfStats$1; -Landroid/net/metrics/ApfStats; -Landroid/net/metrics/ConnectStats; -Landroid/net/metrics/DefaultNetworkEvent; -Landroid/net/metrics/DhcpClientEvent$1; -Landroid/net/metrics/DhcpClientEvent; -Landroid/net/metrics/DhcpErrorEvent$1; -Landroid/net/metrics/DhcpErrorEvent$Decoder; -Landroid/net/metrics/DhcpErrorEvent; -Landroid/net/metrics/DnsEvent; -Landroid/net/metrics/IpConnectivityLog$Event; -Landroid/net/metrics/IpConnectivityLog; -Landroid/net/metrics/IpManagerEvent$1; -Landroid/net/metrics/IpManagerEvent$Decoder; -Landroid/net/metrics/IpManagerEvent; -Landroid/net/metrics/IpReachabilityEvent$1; -Landroid/net/metrics/IpReachabilityEvent$Decoder; -Landroid/net/metrics/IpReachabilityEvent; -Landroid/net/metrics/NetworkEvent$1; -Landroid/net/metrics/NetworkEvent$Decoder; -Landroid/net/metrics/NetworkEvent; -Landroid/net/metrics/NetworkMetrics$Metrics; -Landroid/net/metrics/NetworkMetrics$Summary; -Landroid/net/metrics/NetworkMetrics; -Landroid/net/metrics/RaEvent$1; -Landroid/net/metrics/RaEvent; -Landroid/net/metrics/ValidationProbeEvent$1; -Landroid/net/metrics/ValidationProbeEvent$Decoder; -Landroid/net/metrics/ValidationProbeEvent; -Landroid/net/metrics/WakeupEvent; -Landroid/net/metrics/WakeupStats; -Landroid/net/rtp/AudioCodec; -Landroid/net/rtp/AudioGroup; -Landroid/net/rtp/AudioStream; -Landroid/net/rtp/RtpStream; -Landroid/net/sip/ISipService$Default; -Landroid/net/sip/ISipService$Stub$Proxy; -Landroid/net/sip/ISipService$Stub; -Landroid/net/sip/ISipService; -Landroid/net/sip/ISipSession$Default; -Landroid/net/sip/ISipSession$Stub$Proxy; -Landroid/net/sip/ISipSession$Stub; -Landroid/net/sip/ISipSession; -Landroid/net/sip/ISipSessionListener$Default; -Landroid/net/sip/ISipSessionListener$Stub$Proxy; -Landroid/net/sip/ISipSessionListener$Stub; -Landroid/net/sip/ISipSessionListener; -Landroid/net/sip/SimpleSessionDescription$Fields; -Landroid/net/sip/SimpleSessionDescription$Media; -Landroid/net/sip/SimpleSessionDescription; -Landroid/net/sip/SipAudioCall$1; -Landroid/net/sip/SipAudioCall$Listener; -Landroid/net/sip/SipAudioCall; -Landroid/net/sip/SipErrorCode; -Landroid/net/sip/SipException; -Landroid/net/sip/SipManager$ListenerRelay; -Landroid/net/sip/SipManager; -Landroid/net/sip/SipProfile$1; -Landroid/net/sip/SipProfile$Builder; -Landroid/net/sip/SipProfile; -Landroid/net/sip/SipRegistrationListener; -Landroid/net/sip/SipSession$1; -Landroid/net/sip/SipSession$Listener; -Landroid/net/sip/SipSession$State; -Landroid/net/sip/SipSession; -Landroid/net/sip/SipSessionAdapter; -Landroid/net/util/SocketUtils; -Landroid/net/vcn/VcnManager$VcnNetworkPolicyChangeListener; -Landroid/net/vcn/VcnManager$VcnUnderlyingNetworkPolicyListener; -Landroid/net/vcn/VcnManager; -Landroid/net/vcn/VcnNetworkPolicyResult$1; -Landroid/net/vcn/VcnNetworkPolicyResult; -Landroid/net/vcn/VcnTransportInfo$1; -Landroid/net/vcn/VcnTransportInfo-IA; -Landroid/net/vcn/VcnTransportInfo; -Landroid/net/vcn/VcnUnderlyingNetworkPolicy$1; -Landroid/net/vcn/VcnUnderlyingNetworkPolicy; -Landroid/net/wifi/SoftApConfToXmlMigrationUtil; -Landroid/net/wifi/WifiMigration$1; -Landroid/net/wifi/WifiMigration; -Landroid/net/wifi/WifiNetworkScoreCache$CacheListener$1; -Landroid/net/wifi/WifiNetworkScoreCache$CacheListener; -Landroid/net/wifi/WifiNetworkScoreCache; -Landroid/net/wifi/nl80211/ChannelSettings$1; -Landroid/net/wifi/nl80211/ChannelSettings; -Landroid/net/wifi/nl80211/DeviceWiphyCapabilities$1; -Landroid/net/wifi/nl80211/DeviceWiphyCapabilities; -Landroid/net/wifi/nl80211/HiddenNetwork$1; -Landroid/net/wifi/nl80211/HiddenNetwork; -Landroid/net/wifi/nl80211/IClientInterface$Stub$Proxy; -Landroid/net/wifi/nl80211/IClientInterface$Stub; -Landroid/net/wifi/nl80211/IClientInterface; -Landroid/net/wifi/nl80211/IPnoScanEvent$Stub; -Landroid/net/wifi/nl80211/IPnoScanEvent; -Landroid/net/wifi/nl80211/IScanEvent$Stub; -Landroid/net/wifi/nl80211/IScanEvent; -Landroid/net/wifi/nl80211/IWifiScannerImpl$Stub$Proxy; -Landroid/net/wifi/nl80211/IWifiScannerImpl$Stub; -Landroid/net/wifi/nl80211/IWifiScannerImpl; -Landroid/net/wifi/nl80211/IWificond$Stub$Proxy; -Landroid/net/wifi/nl80211/IWificond$Stub; -Landroid/net/wifi/nl80211/IWificond; -Landroid/net/wifi/nl80211/NativeScanResult$1; -Landroid/net/wifi/nl80211/NativeScanResult; -Landroid/net/wifi/nl80211/RadioChainInfo$1; -Landroid/net/wifi/nl80211/RadioChainInfo; -Landroid/net/wifi/nl80211/SingleScanSettings$1; -Landroid/net/wifi/nl80211/SingleScanSettings; -Landroid/net/wifi/nl80211/WifiNl80211Manager$PnoScanEventHandler; -Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventCallback; -Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventHandler; -Landroid/net/wifi/nl80211/WifiNl80211Manager$SignalPollResult; -Landroid/net/wifi/nl80211/WifiNl80211Manager; -Landroid/net/wifi/sharedconnectivity/app/SharedConnectivityManager; -Landroid/nfc/NfcAdapter; -Landroid/nfc/NfcFrameworkInitializer$$ExternalSyntheticLambda0; -Landroid/nfc/NfcFrameworkInitializer; -Landroid/nfc/NfcManager; -Landroid/nfc/NfcServiceManager$ServiceRegisterer; -Landroid/nfc/NfcServiceManager; -Landroid/nfc/cardemulation/AidGroup$1; -Landroid/nfc/cardemulation/AidGroup; -Landroid/nfc/cardemulation/ApduServiceInfo$1; -Landroid/nfc/cardemulation/ApduServiceInfo; -Landroid/opengl/EGL14; -Landroid/opengl/EGL15; -Landroid/opengl/EGLConfig; -Landroid/opengl/EGLContext; -Landroid/opengl/EGLDisplay; -Landroid/opengl/EGLExt; -Landroid/opengl/EGLImage; -Landroid/opengl/EGLLogWrapper; -Landroid/opengl/EGLObjectHandle; -Landroid/opengl/EGLSurface; -Landroid/opengl/EGLSync; -Landroid/opengl/ETC1; -Landroid/opengl/GLES10; -Landroid/opengl/GLES10Ext; -Landroid/opengl/GLES11; -Landroid/opengl/GLES11Ext; -Landroid/opengl/GLES20; -Landroid/opengl/GLES30; -Landroid/opengl/GLES31; -Landroid/opengl/GLES31Ext; -Landroid/opengl/GLES32; -Landroid/opengl/GLException; -Landroid/opengl/GLSurfaceView$BaseConfigChooser; -Landroid/opengl/GLSurfaceView$ComponentSizeChooser; -Landroid/opengl/GLSurfaceView$DefaultContextFactory; -Landroid/opengl/GLSurfaceView$DefaultWindowSurfaceFactory; -Landroid/opengl/GLSurfaceView$EGLConfigChooser; -Landroid/opengl/GLSurfaceView$EGLContextFactory; -Landroid/opengl/GLSurfaceView$EGLWindowSurfaceFactory; -Landroid/opengl/GLSurfaceView$EglHelper; -Landroid/opengl/GLSurfaceView$GLThread; -Landroid/opengl/GLSurfaceView$GLThreadManager; -Landroid/opengl/GLSurfaceView$Renderer; -Landroid/opengl/GLSurfaceView$SimpleEGLConfigChooser; -Landroid/opengl/GLSurfaceView; -Landroid/opengl/GLUtils; -Landroid/opengl/Matrix$1; -Landroid/opengl/Matrix; -Landroid/opengl/Visibility; -Landroid/os/AppZygote; -Landroid/os/AsyncResult; -Landroid/os/AsyncTask$1; -Landroid/os/AsyncTask$2; -Landroid/os/AsyncTask$3; -Landroid/os/AsyncTask$4; -Landroid/os/AsyncTask$AsyncTaskResult; -Landroid/os/AsyncTask$InternalHandler; -Landroid/os/AsyncTask$SerialExecutor$1; -Landroid/os/AsyncTask$SerialExecutor; -Landroid/os/AsyncTask$Status; -Landroid/os/AsyncTask$WorkerRunnable-IA; -Landroid/os/AsyncTask$WorkerRunnable; -Landroid/os/AsyncTask; -Landroid/os/BadParcelableException; -Landroid/os/BadTypeParcelableException; -Landroid/os/BaseBundle$NoImagePreloadHolder; -Landroid/os/BaseBundle; -Landroid/os/BatteryConsumer$Dimensions; -Landroid/os/BatteryConsumer$Key; -Landroid/os/BatteryConsumer; -Landroid/os/BatteryManager; -Landroid/os/BatteryManagerInternal; -Landroid/os/BatteryProperty$1; -Landroid/os/BatteryProperty; -Landroid/os/BatterySaverPolicyConfig$1; -Landroid/os/BatterySaverPolicyConfig; -Landroid/os/BatteryStats$$ExternalSyntheticLambda0; -Landroid/os/BatteryStats$$ExternalSyntheticLambda1; -Landroid/os/BatteryStats$1; -Landroid/os/BatteryStats$BitDescription; -Landroid/os/BatteryStats$ControllerActivityCounter; -Landroid/os/BatteryStats$Counter; -Landroid/os/BatteryStats$DailyItem; -Landroid/os/BatteryStats$HistoryEventTracker; -Landroid/os/BatteryStats$HistoryItem; -Landroid/os/BatteryStats$HistoryPrinter; -Landroid/os/BatteryStats$HistoryStepDetails; -Landroid/os/BatteryStats$HistoryTag; -Landroid/os/BatteryStats$IntToString; -Landroid/os/BatteryStats$LevelStepTracker; -Landroid/os/BatteryStats$LongCounter; -Landroid/os/BatteryStats$LongCounterArray; -Landroid/os/BatteryStats$PackageChange; -Landroid/os/BatteryStats$Timer; -Landroid/os/BatteryStats$TimerEntry; -Landroid/os/BatteryStats$Uid$Pid; -Landroid/os/BatteryStats$Uid$Pkg$Serv; -Landroid/os/BatteryStats$Uid$Pkg; -Landroid/os/BatteryStats$Uid$Proc$ExcessivePower; -Landroid/os/BatteryStats$Uid$Proc; -Landroid/os/BatteryStats$Uid$Sensor; -Landroid/os/BatteryStats$Uid$Wakelock; -Landroid/os/BatteryStats$Uid; -Landroid/os/BatteryStats; -Landroid/os/BatteryStatsManager; -Landroid/os/BatteryUsageStats$1; -Landroid/os/BatteryUsageStats; -Landroid/os/BatteryUsageStatsQuery$1; -Landroid/os/BatteryUsageStatsQuery$Builder; -Landroid/os/BatteryUsageStatsQuery; -Landroid/os/BestClock; -Landroid/os/Binder$$ExternalSyntheticLambda0; -Landroid/os/Binder$$ExternalSyntheticLambda1; -Landroid/os/Binder$NoImagePreloadHolder; -Landroid/os/Binder$PropagateWorkSourceTransactListener; -Landroid/os/Binder$ProxyTransactListener; -Landroid/os/Binder; -Landroid/os/BinderProxy$BinderProxyMapSizeException; -Landroid/os/BinderProxy$NoImagePreloadHolder; -Landroid/os/BinderProxy$ProxyMap; -Landroid/os/BluetoothServiceManager$ServiceRegisterer; -Landroid/os/BluetoothServiceManager; -Landroid/os/BugreportManager; -Landroid/os/Build$$ExternalSyntheticLambda0; -Landroid/os/Build$VERSION; -Landroid/os/Build; -Landroid/os/Bundle$1; -Landroid/os/Bundle; -Landroid/os/CancellationSignal$OnCancelListener; -Landroid/os/CancellationSignal$Transport-IA; -Landroid/os/CancellationSignal$Transport; -Landroid/os/CancellationSignal; -Landroid/os/CarrierAssociatedAppEntry$1; -Landroid/os/CarrierAssociatedAppEntry; -Landroid/os/ChildZygoteProcess; -Landroid/os/CombinedVibration$1; -Landroid/os/CombinedVibration$Mono$1; -Landroid/os/CombinedVibration$Mono; -Landroid/os/CombinedVibration; -Landroid/os/ConditionVariable; -Landroid/os/CoolingDevice$1; -Landroid/os/CoolingDevice; -Landroid/os/CountDownTimer$1; -Landroid/os/CountDownTimer; -Landroid/os/CpuUsageInfo$1; -Landroid/os/CpuUsageInfo; -Landroid/os/CreateAppDataArgs$1; -Landroid/os/CreateAppDataArgs; -Landroid/os/CreateAppDataResult$1; -Landroid/os/CreateAppDataResult; -Landroid/os/DdmSyncStageUpdater; -Landroid/os/DdmSyncState$Stage; -Landroid/os/DdmSyncState; -Landroid/os/DeadObjectException; -Landroid/os/DeadSystemException; -Landroid/os/Debug$MemoryInfo$1; -Landroid/os/Debug$MemoryInfo-IA; -Landroid/os/Debug$MemoryInfo; -Landroid/os/Debug; -Landroid/os/DeviceIdleManager; -Landroid/os/DropBoxManager$Entry$1; -Landroid/os/DropBoxManager$Entry; -Landroid/os/DropBoxManager; -Landroid/os/Environment$UserEnvironment; -Landroid/os/Environment; -Landroid/os/EventLogTags; -Landroid/os/ExternalVibration$1; -Landroid/os/ExternalVibration; -Landroid/os/FabricatedOverlayInfo$1; -Landroid/os/FabricatedOverlayInfo; -Landroid/os/FabricatedOverlayInternal$1; -Landroid/os/FabricatedOverlayInternal; -Landroid/os/FabricatedOverlayInternalEntry$1; -Landroid/os/FabricatedOverlayInternalEntry; -Landroid/os/FactoryTest; -Landroid/os/FileBridge$FileBridgeOutputStream; -Landroid/os/FileBridge; -Landroid/os/FileObserver$ObserverThread; -Landroid/os/FileObserver; -Landroid/os/FileUtils$$ExternalSyntheticLambda0; -Landroid/os/FileUtils$$ExternalSyntheticLambda1; -Landroid/os/FileUtils$$ExternalSyntheticLambda2; -Landroid/os/FileUtils$$ExternalSyntheticLambda3; -Landroid/os/FileUtils$$ExternalSyntheticLambda4; -Landroid/os/FileUtils$$ExternalSyntheticLambda5; -Landroid/os/FileUtils$1; -Landroid/os/FileUtils$ProgressListener; -Landroid/os/FileUtils; -Landroid/os/GraphicsEnvironment$1; -Landroid/os/GraphicsEnvironment; -Landroid/os/Handler$BlockingRunnable; -Landroid/os/Handler$Callback; -Landroid/os/Handler$MessengerImpl-IA; -Landroid/os/Handler$MessengerImpl; -Landroid/os/Handler; -Landroid/os/HandlerExecutor; -Landroid/os/HandlerThread; -Landroid/os/HardwarePropertiesManager; -Landroid/os/HidlMemory; -Landroid/os/HidlMemoryUtil; -Landroid/os/HidlSupport$Mutable; -Landroid/os/HidlSupport; -Landroid/os/HwBinder; -Landroid/os/HwBlob; -Landroid/os/HwNoService; -Landroid/os/HwParcel; -Landroid/os/HwRemoteBinder; -Landroid/os/IBatteryPropertiesRegistrar$Stub$Proxy; -Landroid/os/IBatteryPropertiesRegistrar$Stub; -Landroid/os/IBatteryPropertiesRegistrar; -Landroid/os/IBinder$DeathRecipient; -Landroid/os/IBinder; -Landroid/os/IBinderCallback; -Landroid/os/ICancellationSignal$Stub$Proxy; -Landroid/os/ICancellationSignal$Stub; -Landroid/os/ICancellationSignal; -Landroid/os/IDeviceIdentifiersPolicyService$Stub$Proxy; -Landroid/os/IDeviceIdentifiersPolicyService$Stub; -Landroid/os/IDeviceIdentifiersPolicyService; -Landroid/os/IDeviceIdleController$Stub$Proxy; -Landroid/os/IDeviceIdleController$Stub; -Landroid/os/IDeviceIdleController; -Landroid/os/IDumpstate$Stub$Proxy; -Landroid/os/IDumpstate$Stub; -Landroid/os/IDumpstate; -Landroid/os/IDumpstateListener$Stub$Proxy; -Landroid/os/IDumpstateListener$Stub; -Landroid/os/IDumpstateListener; -Landroid/os/IExternalVibratorService$Stub; -Landroid/os/IExternalVibratorService; -Landroid/os/IHardwarePropertiesManager$Stub$Proxy; -Landroid/os/IHardwarePropertiesManager$Stub; -Landroid/os/IHardwarePropertiesManager; -Landroid/os/IHintManager$Stub$Proxy; -Landroid/os/IHintManager$Stub; -Landroid/os/IHintManager; -Landroid/os/IHintSession$Stub$Proxy; -Landroid/os/IHintSession$Stub; -Landroid/os/IHintSession; -Landroid/os/IHwBinder$DeathRecipient; -Landroid/os/IHwBinder; -Landroid/os/IHwInterface; -Landroid/os/IIncidentAuthListener$Stub$Proxy; -Landroid/os/IIncidentAuthListener$Stub; -Landroid/os/IIncidentAuthListener; -Landroid/os/IIncidentCompanion$Stub$Proxy; -Landroid/os/IIncidentCompanion$Stub; -Landroid/os/IIncidentCompanion; -Landroid/os/IIncidentManager$Stub$Proxy; -Landroid/os/IIncidentManager$Stub; -Landroid/os/IIncidentManager; -Landroid/os/IInstalld$Stub; -Landroid/os/IInstalld; -Landroid/os/IInterface; -Landroid/os/IMessenger$Stub$Proxy; -Landroid/os/IMessenger$Stub; -Landroid/os/IMessenger; -Landroid/os/INetworkManagementService$Stub$Proxy; -Landroid/os/INetworkManagementService$Stub; -Landroid/os/INetworkManagementService; -Landroid/os/IPermissionController$Stub; -Landroid/os/IPermissionController; -Landroid/os/IPowerManager$LowPowerStandbyPolicy$1; -Landroid/os/IPowerManager$LowPowerStandbyPolicy; -Landroid/os/IPowerManager$LowPowerStandbyPortDescription$1; -Landroid/os/IPowerManager$LowPowerStandbyPortDescription; -Landroid/os/IPowerManager$Stub$Proxy; -Landroid/os/IPowerManager$Stub; -Landroid/os/IPowerManager; -Landroid/os/IProcessInfoService$Stub; -Landroid/os/IProcessInfoService; -Landroid/os/IProgressListener$Stub$Proxy; -Landroid/os/IProgressListener$Stub; -Landroid/os/IProgressListener; -Landroid/os/IRecoverySystem$Stub; -Landroid/os/IRecoverySystem; -Landroid/os/IRecoverySystemProgressListener$Stub$Proxy; -Landroid/os/IRecoverySystemProgressListener$Stub; -Landroid/os/IRecoverySystemProgressListener; -Landroid/os/IRemoteCallback$Stub$Proxy; -Landroid/os/IRemoteCallback$Stub; -Landroid/os/IRemoteCallback; -Landroid/os/ISchedulingPolicyService$Stub; -Landroid/os/ISchedulingPolicyService; -Landroid/os/IServiceManager$Stub$Proxy; -Landroid/os/IServiceManager$Stub; -Landroid/os/IServiceManager; -Landroid/os/IStoraged$Stub$Proxy; -Landroid/os/IStoraged$Stub; -Landroid/os/IStoraged; -Landroid/os/ISystemConfig$Stub$Proxy; -Landroid/os/ISystemConfig$Stub; -Landroid/os/ISystemConfig; -Landroid/os/ISystemUpdateManager$Stub$Proxy; -Landroid/os/ISystemUpdateManager$Stub; -Landroid/os/ISystemUpdateManager; -Landroid/os/IThermalEventListener$Stub$Proxy; -Landroid/os/IThermalEventListener$Stub; -Landroid/os/IThermalEventListener; -Landroid/os/IThermalService$Stub$Proxy; -Landroid/os/IThermalService$Stub; -Landroid/os/IThermalService; -Landroid/os/IThermalStatusListener$Stub$Proxy; -Landroid/os/IThermalStatusListener$Stub; -Landroid/os/IThermalStatusListener; -Landroid/os/IUpdateEngine$Stub$Proxy; -Landroid/os/IUpdateEngine$Stub; -Landroid/os/IUpdateEngine; -Landroid/os/IUpdateEngineCallback$Stub; -Landroid/os/IUpdateEngineCallback; -Landroid/os/IUpdateLock$Stub; -Landroid/os/IUpdateLock; -Landroid/os/IUserManager$Stub$Proxy; -Landroid/os/IUserManager$Stub; -Landroid/os/IUserManager; -Landroid/os/IUserRestrictionsListener$Stub$Proxy; -Landroid/os/IUserRestrictionsListener$Stub; -Landroid/os/IUserRestrictionsListener; -Landroid/os/IVibratorManagerService$Stub$Proxy; -Landroid/os/IVibratorManagerService$Stub; -Landroid/os/IVibratorManagerService; -Landroid/os/IVibratorStateListener$Stub$Proxy; -Landroid/os/IVibratorStateListener$Stub; -Landroid/os/IVibratorStateListener; -Landroid/os/IVold$Stub$Proxy; -Landroid/os/IVold$Stub; -Landroid/os/IVold; -Landroid/os/IVoldListener$Stub; -Landroid/os/IVoldListener; -Landroid/os/IVoldMountCallback$Stub; -Landroid/os/IVoldMountCallback; -Landroid/os/IVoldTaskListener$Stub$Proxy; -Landroid/os/IVoldTaskListener$Stub; -Landroid/os/IVoldTaskListener; -Landroid/os/IWakeLockCallback$Stub$Proxy; -Landroid/os/IWakeLockCallback$Stub; -Landroid/os/IWakeLockCallback; -Landroid/os/IncidentManager$IncidentReport$1; -Landroid/os/IncidentManager$IncidentReport; -Landroid/os/IncidentManager; -Landroid/os/IpcDataCache$Config; -Landroid/os/IpcDataCache$QueryHandler; -Landroid/os/IpcDataCache$RemoteCall; -Landroid/os/IpcDataCache$SystemServerCallHandler; -Landroid/os/IpcDataCache; -Landroid/os/LimitExceededException; -Landroid/os/LocaleList$1; -Landroid/os/LocaleList; -Landroid/os/Looper$Observer; -Landroid/os/Looper; -Landroid/os/MemoryFile; -Landroid/os/Message$1; -Landroid/os/Message; -Landroid/os/MessageQueue$FileDescriptorRecord; -Landroid/os/MessageQueue$IdleHandler; -Landroid/os/MessageQueue$OnFileDescriptorEventListener; -Landroid/os/MessageQueue; -Landroid/os/Messenger$1; -Landroid/os/Messenger; -Landroid/os/NativeHandle; -Landroid/os/NetworkOnMainThreadException; -Landroid/os/NullVibrator; -Landroid/os/OperationCanceledException; -Landroid/os/OutcomeReceiver; -Landroid/os/PackageTagsList$1; -Landroid/os/PackageTagsList; -Landroid/os/Parcel$1; -Landroid/os/Parcel$LazyValue; -Landroid/os/Parcel$ReadWriteHelper; -Landroid/os/Parcel$SquashReadHelper; -Landroid/os/Parcel; -Landroid/os/ParcelDuration$1; -Landroid/os/ParcelDuration; -Landroid/os/ParcelFileDescriptor$1; -Landroid/os/ParcelFileDescriptor$2; -Landroid/os/ParcelFileDescriptor$AutoCloseInputStream; -Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream; -Landroid/os/ParcelFileDescriptor$OnCloseListener; -Landroid/os/ParcelFileDescriptor$Status; -Landroid/os/ParcelFileDescriptor; -Landroid/os/ParcelFormatException; -Landroid/os/ParcelUuid$1; -Landroid/os/ParcelUuid; -Landroid/os/Parcelable$ClassLoaderCreator; -Landroid/os/Parcelable$Creator; -Landroid/os/Parcelable; -Landroid/os/ParcelableException$1; -Landroid/os/ParcelableException; -Landroid/os/ParcelableParcel$1; -Landroid/os/ParcelableParcel; -Landroid/os/PatternMatcher$1; -Landroid/os/PatternMatcher; -Landroid/os/PerformanceHintManager$Session; -Landroid/os/PerformanceHintManager; -Landroid/os/PermissionEnforcer; -Landroid/os/PersistableBundle$1; -Landroid/os/PersistableBundle$MyReadMapCallback; -Landroid/os/PersistableBundle; -Landroid/os/PooledStringReader; -Landroid/os/PooledStringWriter; -Landroid/os/PowerExemptionManager; -Landroid/os/PowerManager$1; -Landroid/os/PowerManager$2; -Landroid/os/PowerManager$3$$ExternalSyntheticLambda0; -Landroid/os/PowerManager$3; -Landroid/os/PowerManager$OnThermalStatusChangedListener; -Landroid/os/PowerManager$WakeData; -Landroid/os/PowerManager$WakeLock$$ExternalSyntheticLambda0; -Landroid/os/PowerManager$WakeLock; -Landroid/os/PowerManager; -Landroid/os/PowerManagerInternal$1; -Landroid/os/PowerManagerInternal$LowPowerModeListener; -Landroid/os/PowerManagerInternal; -Landroid/os/PowerSaveState$1; -Landroid/os/PowerSaveState$Builder; -Landroid/os/PowerSaveState; -Landroid/os/PowerWhitelistManager; -Landroid/os/Process$ProcessStartResult; -Landroid/os/Process; -Landroid/os/ProfilingServiceManager; -Landroid/os/ProxyFileDescriptorCallback; -Landroid/os/RecoverySystem$1; -Landroid/os/RecoverySystem$2; -Landroid/os/RecoverySystem$3; -Landroid/os/RecoverySystem$4; -Landroid/os/RecoverySystem$5; -Landroid/os/RecoverySystem$ProgressListener; -Landroid/os/RecoverySystem; -Landroid/os/Registrant; -Landroid/os/RegistrantList; -Landroid/os/RemoteCallback$1; -Landroid/os/RemoteCallback$2; -Landroid/os/RemoteCallback$3; -Landroid/os/RemoteCallback$OnResultListener; -Landroid/os/RemoteCallback; -Landroid/os/RemoteCallbackList$Callback; -Landroid/os/RemoteCallbackList; -Landroid/os/RemoteException; -Landroid/os/ResultReceiver$1; -Landroid/os/ResultReceiver$MyResultReceiver; -Landroid/os/ResultReceiver$MyRunnable; -Landroid/os/ResultReceiver; -Landroid/os/SELinux; -Landroid/os/SecurityStateManager; -Landroid/os/ServiceManager$ServiceNotFoundException; -Landroid/os/ServiceManager; -Landroid/os/ServiceManagerNative; -Landroid/os/ServiceManagerProxy; -Landroid/os/ServiceSpecificException; -Landroid/os/SharedMemory$1; -Landroid/os/SharedMemory$Closer-IA; -Landroid/os/SharedMemory$Closer; -Landroid/os/SharedMemory$MemoryRegistration-IA; -Landroid/os/SharedMemory$MemoryRegistration; -Landroid/os/SharedMemory$Unmapper-IA; -Landroid/os/SharedMemory$Unmapper; -Landroid/os/SharedMemory-IA; -Landroid/os/SharedMemory; -Landroid/os/ShellCallback$1; -Landroid/os/ShellCallback; -Landroid/os/ShellCommand; -Landroid/os/SimpleClock; -Landroid/os/StatFs; -Landroid/os/StatsServiceManager$ServiceRegisterer; -Landroid/os/StatsServiceManager; -Landroid/os/StrictMode$$ExternalSyntheticLambda0; -Landroid/os/StrictMode$$ExternalSyntheticLambda1; -Landroid/os/StrictMode$$ExternalSyntheticLambda2; -Landroid/os/StrictMode$$ExternalSyntheticLambda3; -Landroid/os/StrictMode$1; -Landroid/os/StrictMode$2; -Landroid/os/StrictMode$3; -Landroid/os/StrictMode$4; -Landroid/os/StrictMode$6; -Landroid/os/StrictMode$7; -Landroid/os/StrictMode$8; -Landroid/os/StrictMode$9; -Landroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0; -Landroid/os/StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1; -Landroid/os/StrictMode$AndroidBlockGuardPolicy; -Landroid/os/StrictMode$AndroidCloseGuardReporter-IA; -Landroid/os/StrictMode$AndroidCloseGuardReporter; -Landroid/os/StrictMode$InstanceTracker; -Landroid/os/StrictMode$OnThreadViolationListener; -Landroid/os/StrictMode$OnVmViolationListener; -Landroid/os/StrictMode$Span; -Landroid/os/StrictMode$ThreadPolicy$Builder; -Landroid/os/StrictMode$ThreadPolicy-IA; -Landroid/os/StrictMode$ThreadPolicy; -Landroid/os/StrictMode$ThreadSpanState-IA; -Landroid/os/StrictMode$ThreadSpanState; -Landroid/os/StrictMode$UnsafeIntentStrictModeCallback-IA; -Landroid/os/StrictMode$UnsafeIntentStrictModeCallback; -Landroid/os/StrictMode$ViolationInfo$1; -Landroid/os/StrictMode$ViolationInfo; -Landroid/os/StrictMode$ViolationLogger; -Landroid/os/StrictMode$VmPolicy$Builder; -Landroid/os/StrictMode$VmPolicy-IA; -Landroid/os/StrictMode$VmPolicy; -Landroid/os/StrictMode; -Landroid/os/SynchronousResultReceiver$Result; -Landroid/os/SynchronousResultReceiver; -Landroid/os/SystemClock$2; -Landroid/os/SystemClock; -Landroid/os/SystemConfigManager; -Landroid/os/SystemProperties$Handle-IA; -Landroid/os/SystemProperties$Handle; -Landroid/os/SystemProperties; -Landroid/os/SystemService$1; -Landroid/os/SystemService$State; -Landroid/os/SystemService; -Landroid/os/SystemUpdateManager; -Landroid/os/SystemVibrator; -Landroid/os/SystemVibratorManager$SingleVibrator; -Landroid/os/SystemVibratorManager; -Landroid/os/TelephonyServiceManager$ServiceRegisterer; -Landroid/os/TelephonyServiceManager; -Landroid/os/Temperature$1; -Landroid/os/Temperature; -Landroid/os/ThreadLocalWorkSource$$ExternalSyntheticLambda0; -Landroid/os/ThreadLocalWorkSource; -Landroid/os/TimestampedValue$1; -Landroid/os/TimestampedValue; -Landroid/os/TokenWatcher$1; -Landroid/os/TokenWatcher$Death; -Landroid/os/TokenWatcher; -Landroid/os/Trace; -Landroid/os/TraceNameSupplier; -Landroid/os/TransactionTooLargeException; -Landroid/os/TransactionTracker; -Landroid/os/UEventObserver$UEvent; -Landroid/os/UEventObserver$UEventThread; -Landroid/os/UEventObserver; -Landroid/os/UidBatteryConsumer; -Landroid/os/UpdateEngine$1$1; -Landroid/os/UpdateEngine$1; -Landroid/os/UpdateEngine; -Landroid/os/UpdateEngineCallback; -Landroid/os/UpdateLock; -Landroid/os/UserHandle$1; -Landroid/os/UserHandle; -Landroid/os/UserManager$1; -Landroid/os/UserManager$2; -Landroid/os/UserManager$3; -Landroid/os/UserManager$4; -Landroid/os/UserManager$EnforcingUser$1; -Landroid/os/UserManager$EnforcingUser; -Landroid/os/UserManager$UserOperationException; -Landroid/os/UserManager; -Landroid/os/VibrationAttributes$1; -Landroid/os/VibrationAttributes$Builder; -Landroid/os/VibrationAttributes-IA; -Landroid/os/VibrationAttributes; -Landroid/os/VibrationEffect$1; -Landroid/os/VibrationEffect$Composed$1; -Landroid/os/VibrationEffect$Composed; -Landroid/os/VibrationEffect$Composition; -Landroid/os/VibrationEffect; -Landroid/os/Vibrator; -Landroid/os/VibratorInfo$1; -Landroid/os/VibratorInfo$FrequencyProfile$1; -Landroid/os/VibratorInfo$FrequencyProfile; -Landroid/os/VibratorInfo; -Landroid/os/VibratorManager; -Landroid/os/VintfObject; -Landroid/os/VintfRuntimeInfo; -Landroid/os/WorkSource$1; -Landroid/os/WorkSource$WorkChain$1; -Landroid/os/WorkSource$WorkChain; -Landroid/os/WorkSource; -Landroid/os/ZygoteProcess$ZygoteState; -Landroid/os/ZygoteProcess; -Landroid/os/ZygoteStartFailedEx; -Landroid/os/connectivity/CellularBatteryStats$1; -Landroid/os/connectivity/CellularBatteryStats; -Landroid/os/connectivity/GpsBatteryStats$1; -Landroid/os/connectivity/GpsBatteryStats; -Landroid/os/connectivity/WifiActivityEnergyInfo$1; -Landroid/os/connectivity/WifiActivityEnergyInfo; -Landroid/os/connectivity/WifiBatteryStats$1; -Landroid/os/connectivity/WifiBatteryStats; -Landroid/os/health/HealthKeys$Constant; -Landroid/os/health/HealthKeys$Constants; -Landroid/os/health/HealthKeys$SortedIntArray; -Landroid/os/health/HealthStats; -Landroid/os/health/HealthStatsParceler$1; -Landroid/os/health/HealthStatsParceler; -Landroid/os/health/HealthStatsWriter; -Landroid/os/health/PackageHealthStats; -Landroid/os/health/PidHealthStats; -Landroid/os/health/ProcessHealthStats; -Landroid/os/health/ServiceHealthStats; -Landroid/os/health/SystemHealthManager$$ExternalSyntheticLambda1; -Landroid/os/health/SystemHealthManager; -Landroid/os/health/TimerStat$1; -Landroid/os/health/TimerStat; -Landroid/os/health/UidHealthStats; -Landroid/os/image/DynamicSystemClient; -Landroid/os/image/DynamicSystemManager; -Landroid/os/image/IDynamicSystemService$Stub; -Landroid/os/image/IDynamicSystemService; -Landroid/os/incremental/IncrementalManager; -Landroid/os/incremental/V4Signature$HashingInfo; -Landroid/os/incremental/V4Signature$SigningInfo; -Landroid/os/incremental/V4Signature; -Landroid/os/storage/DiskInfo$1; -Landroid/os/storage/DiskInfo; -Landroid/os/storage/IObbActionListener$Stub$Proxy; -Landroid/os/storage/IObbActionListener$Stub; -Landroid/os/storage/IObbActionListener; -Landroid/os/storage/IStorageEventListener$Stub$Proxy; -Landroid/os/storage/IStorageEventListener$Stub; -Landroid/os/storage/IStorageEventListener; -Landroid/os/storage/IStorageManager$Stub$Proxy; -Landroid/os/storage/IStorageManager$Stub; -Landroid/os/storage/IStorageManager; -Landroid/os/storage/IStorageShutdownObserver$Stub$Proxy; -Landroid/os/storage/IStorageShutdownObserver$Stub; -Landroid/os/storage/IStorageShutdownObserver; -Landroid/os/storage/OnObbStateChangeListener; -Landroid/os/storage/StorageEventListener; -Landroid/os/storage/StorageManager$1; -Landroid/os/storage/StorageManager$ObbActionListener-IA; -Landroid/os/storage/StorageManager$ObbActionListener; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda2; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda3; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda4; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda5; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda6; -Landroid/os/storage/StorageManager$StorageEventListenerDelegate; -Landroid/os/storage/StorageManager$StorageVolumeCallback; -Landroid/os/storage/StorageManager; -Landroid/os/storage/StorageManagerInternal; -Landroid/os/storage/StorageVolume$1; -Landroid/os/storage/StorageVolume-IA; -Landroid/os/storage/StorageVolume; -Landroid/os/storage/VolumeInfo$1; -Landroid/os/storage/VolumeInfo$2; -Landroid/os/storage/VolumeInfo; -Landroid/os/storage/VolumeRecord$1; -Landroid/os/storage/VolumeRecord; -Landroid/os/strictmode/ContentUriWithoutPermissionViolation; -Landroid/os/strictmode/CredentialProtectedWhileLockedViolation; -Landroid/os/strictmode/CustomViolation; -Landroid/os/strictmode/DiskReadViolation; -Landroid/os/strictmode/DiskWriteViolation; -Landroid/os/strictmode/ExplicitGcViolation; -Landroid/os/strictmode/ImplicitDirectBootViolation; -Landroid/os/strictmode/IncorrectContextUseViolation; -Landroid/os/strictmode/InstanceCountViolation; -Landroid/os/strictmode/IntentReceiverLeakedViolation; -Landroid/os/strictmode/LeakedClosableViolation; -Landroid/os/strictmode/NetworkViolation; -Landroid/os/strictmode/ResourceMismatchViolation; -Landroid/os/strictmode/ServiceConnectionLeakedViolation; -Landroid/os/strictmode/SqliteObjectLeakedViolation; -Landroid/os/strictmode/UnbufferedIoViolation; -Landroid/os/strictmode/UnsafeIntentLaunchViolation; -Landroid/os/strictmode/UntaggedSocketViolation; -Landroid/os/strictmode/Violation; -Landroid/os/strictmode/WebViewMethodCalledOnWrongThreadViolation; -Landroid/os/vibrator/FeatureFlags; -Landroid/os/vibrator/FeatureFlagsImpl; -Landroid/os/vibrator/Flags; -Landroid/os/vibrator/PrebakedSegment$1; -Landroid/os/vibrator/PrebakedSegment; -Landroid/os/vibrator/PrimitiveSegment$1; -Landroid/os/vibrator/PrimitiveSegment; -Landroid/os/vibrator/StepSegment$1; -Landroid/os/vibrator/StepSegment; -Landroid/os/vibrator/VibrationEffectSegment$1; -Landroid/os/vibrator/VibrationEffectSegment; -Landroid/ota/nano/OtaPackageMetadata$ApexInfo; -Landroid/ota/nano/OtaPackageMetadata$ApexMetadata; -Landroid/ota/nano/OtaPackageMetadata$DeviceState; -Landroid/ota/nano/OtaPackageMetadata$PartitionState; -Landroid/permission/ILegacyPermissionManager$Stub$Proxy; -Landroid/permission/ILegacyPermissionManager$Stub; -Landroid/permission/ILegacyPermissionManager; -Landroid/permission/IOnPermissionsChangeListener$Stub; -Landroid/permission/IOnPermissionsChangeListener; -Landroid/permission/IPermissionChecker$Stub$Proxy; -Landroid/permission/IPermissionChecker$Stub; -Landroid/permission/IPermissionChecker; -Landroid/permission/IPermissionController$Stub$Proxy; -Landroid/permission/IPermissionController$Stub; -Landroid/permission/IPermissionController; -Landroid/permission/IPermissionManager$Stub$Proxy; -Landroid/permission/IPermissionManager$Stub; -Landroid/permission/IPermissionManager; -Landroid/permission/LegacyPermissionManager; -Landroid/permission/PermissionCheckerManager; -Landroid/permission/PermissionControllerManager$1; -Landroid/permission/PermissionControllerManager; -Landroid/permission/PermissionManager$1; -Landroid/permission/PermissionManager$2; -Landroid/permission/PermissionManager$OnPermissionsChangeListenerDelegate; -Landroid/permission/PermissionManager$PackageNamePermissionQuery; -Landroid/permission/PermissionManager$PermissionQuery; -Landroid/permission/PermissionManager$SplitPermissionInfo-IA; -Landroid/permission/PermissionManager$SplitPermissionInfo; -Landroid/permission/PermissionManager; -Landroid/permission/PermissionManagerInternal; -Landroid/preference/DialogPreference; -Landroid/preference/GenericInflater$Parent; -Landroid/preference/GenericInflater; -Landroid/preference/ListPreference; -Landroid/preference/Preference$OnPreferenceChangeListener; -Landroid/preference/Preference; -Landroid/preference/PreferenceActivity; -Landroid/preference/PreferenceFragment$OnPreferenceStartFragmentCallback; -Landroid/preference/PreferenceFragment; -Landroid/preference/PreferenceGroup; -Landroid/preference/PreferenceInflater; -Landroid/preference/PreferenceManager$OnActivityDestroyListener; -Landroid/preference/PreferenceManager$OnPreferenceTreeClickListener; -Landroid/preference/PreferenceManager; -Landroid/preference/PreferenceScreen; -Landroid/preference/TwoStatePreference; -Landroid/print/IPrintDocumentAdapter$Stub$Proxy; -Landroid/print/IPrintDocumentAdapter$Stub; -Landroid/print/IPrintDocumentAdapter; -Landroid/print/IPrintJobStateChangeListener$Stub$Proxy; -Landroid/print/IPrintJobStateChangeListener$Stub; -Landroid/print/IPrintJobStateChangeListener; -Landroid/print/IPrintManager$Stub$Proxy; -Landroid/print/IPrintManager$Stub; -Landroid/print/IPrintManager; -Landroid/print/IPrintServicesChangeListener$Stub$Proxy; -Landroid/print/IPrintServicesChangeListener$Stub; -Landroid/print/IPrintServicesChangeListener; -Landroid/print/IPrintSpooler$Stub$Proxy; -Landroid/print/IPrintSpooler$Stub; -Landroid/print/IPrintSpooler; -Landroid/print/IPrintSpoolerCallbacks$Stub; -Landroid/print/IPrintSpoolerCallbacks; -Landroid/print/IPrintSpoolerClient$Stub; -Landroid/print/IPrintSpoolerClient; -Landroid/print/IPrinterDiscoveryObserver$Stub$Proxy; -Landroid/print/IPrinterDiscoveryObserver$Stub; -Landroid/print/IPrinterDiscoveryObserver; -Landroid/print/PrintAttributes$1; -Landroid/print/PrintAttributes; -Landroid/print/PrintDocumentAdapter; -Landroid/print/PrintJobId$1; -Landroid/print/PrintJobId; -Landroid/print/PrintJobInfo$1; -Landroid/print/PrintJobInfo; -Landroid/print/PrintManager$1; -Landroid/print/PrintManager; -Landroid/print/PrinterId$1; -Landroid/print/PrinterId; -Landroid/printservice/IPrintServiceClient$Stub; -Landroid/printservice/IPrintServiceClient; -Landroid/printservice/PrintServiceInfo$1; -Landroid/printservice/PrintServiceInfo; -Landroid/printservice/recommendation/IRecommendationsChangeListener$Stub$Proxy; -Landroid/printservice/recommendation/IRecommendationsChangeListener$Stub; -Landroid/printservice/recommendation/IRecommendationsChangeListener; -Landroid/privacy/DifferentialPrivacyConfig; -Landroid/privacy/DifferentialPrivacyEncoder; -Landroid/privacy/internal/longitudinalreporting/LongitudinalReportingConfig; -Landroid/privacy/internal/longitudinalreporting/LongitudinalReportingEncoder; -Landroid/privacy/internal/rappor/RapporConfig; -Landroid/privacy/internal/rappor/RapporEncoder; -Landroid/provider/BaseColumns; -Landroid/provider/BlockedNumberContract$BlockedNumbers; -Landroid/provider/BlockedNumberContract$SystemContract; -Landroid/provider/BlockedNumberContract; -Landroid/provider/CalendarContract$Attendees; -Landroid/provider/CalendarContract$AttendeesColumns; -Landroid/provider/CalendarContract$CalendarColumns; -Landroid/provider/CalendarContract$CalendarSyncColumns; -Landroid/provider/CalendarContract$Calendars; -Landroid/provider/CalendarContract$Events; -Landroid/provider/CalendarContract$EventsColumns; -Landroid/provider/CalendarContract$Instances; -Landroid/provider/CalendarContract$SyncColumns; -Landroid/provider/CalendarContract; -Landroid/provider/CallLog$CallComposerLoggingException; -Landroid/provider/CallLog$Calls; -Landroid/provider/CallLog; -Landroid/provider/ContactsContract$BaseSyncColumns; -Landroid/provider/ContactsContract$CommonDataKinds$BaseTypes; -Landroid/provider/ContactsContract$CommonDataKinds$Callable; -Landroid/provider/ContactsContract$CommonDataKinds$CommonColumns; -Landroid/provider/ContactsContract$CommonDataKinds$Email; -Landroid/provider/ContactsContract$CommonDataKinds$Event; -Landroid/provider/ContactsContract$CommonDataKinds$Im; -Landroid/provider/ContactsContract$CommonDataKinds$Phone; -Landroid/provider/ContactsContract$CommonDataKinds$Relation; -Landroid/provider/ContactsContract$CommonDataKinds$StructuredPostal; -Landroid/provider/ContactsContract$ContactCounts; -Landroid/provider/ContactsContract$ContactNameColumns; -Landroid/provider/ContactsContract$ContactOptionsColumns; -Landroid/provider/ContactsContract$ContactStatusColumns; -Landroid/provider/ContactsContract$Contacts; -Landroid/provider/ContactsContract$ContactsColumns; -Landroid/provider/ContactsContract$Data; -Landroid/provider/ContactsContract$DataColumns; -Landroid/provider/ContactsContract$DataColumnsWithJoins; -Landroid/provider/ContactsContract$DataUsageFeedback; -Landroid/provider/ContactsContract$DataUsageStatColumns; -Landroid/provider/ContactsContract$DeletedContacts; -Landroid/provider/ContactsContract$DeletedContactsColumns; -Landroid/provider/ContactsContract$Directory; -Landroid/provider/ContactsContract$DisplayPhoto; -Landroid/provider/ContactsContract$Groups; -Landroid/provider/ContactsContract$GroupsColumns; -Landroid/provider/ContactsContract$MetadataSync; -Landroid/provider/ContactsContract$MetadataSyncColumns; -Landroid/provider/ContactsContract$PhoneLookup; -Landroid/provider/ContactsContract$PhoneLookupColumns; -Landroid/provider/ContactsContract$Profile; -Landroid/provider/ContactsContract$ProviderStatus; -Landroid/provider/ContactsContract$RawContacts; -Landroid/provider/ContactsContract$RawContactsColumns; -Landroid/provider/ContactsContract$RawContactsEntity; -Landroid/provider/ContactsContract$Settings; -Landroid/provider/ContactsContract$SettingsColumns; -Landroid/provider/ContactsContract$StatusColumns; -Landroid/provider/ContactsContract$SyncColumns; -Landroid/provider/ContactsContract$SyncState; -Landroid/provider/ContactsContract; -Landroid/provider/DeviceConfigInitializer; -Landroid/provider/DeviceConfigServiceManager$ServiceRegisterer; -Landroid/provider/DeviceConfigServiceManager; -Landroid/provider/DocumentsContract$Path$1; -Landroid/provider/DocumentsContract$Path; -Landroid/provider/DocumentsContract; -Landroid/provider/DocumentsProvider; -Landroid/provider/Downloads$Impl; -Landroid/provider/Downloads; -Landroid/provider/E2eeContactKeysManager; -Landroid/provider/FontRequest; -Landroid/provider/FontsContract$$ExternalSyntheticLambda0; -Landroid/provider/FontsContract$$ExternalSyntheticLambda12; -Landroid/provider/FontsContract$$ExternalSyntheticLambda13; -Landroid/provider/FontsContract$$ExternalSyntheticLambda1; -Landroid/provider/FontsContract$1; -Landroid/provider/FontsContract$FontFamilyResult; -Landroid/provider/FontsContract$FontInfo; -Landroid/provider/FontsContract; -Landroid/provider/OpenableColumns; -Landroid/provider/SearchIndexableData; -Landroid/provider/SearchIndexableResource; -Landroid/provider/SearchIndexablesContract; -Landroid/provider/SearchIndexablesProvider; -Landroid/provider/SearchRecentSuggestions; -Landroid/provider/Settings$Config; -Landroid/provider/Settings$ContentProviderHolder; -Landroid/provider/Settings$GenerationTracker; -Landroid/provider/Settings$Global; -Landroid/provider/Settings$NameValueCache$$ExternalSyntheticLambda0; -Landroid/provider/Settings$NameValueCache; -Landroid/provider/Settings$NameValueTable; -Landroid/provider/Settings$Readable; -Landroid/provider/Settings$Secure; -Landroid/provider/Settings$SettingNotFoundException; -Landroid/provider/Settings$System; -Landroid/provider/Settings; -Landroid/provider/SyncStateContract$Columns; -Landroid/provider/Telephony$BaseMmsColumns; -Landroid/provider/Telephony$CarrierColumns; -Landroid/provider/Telephony$CarrierId$All; -Landroid/provider/Telephony$CarrierId; -Landroid/provider/Telephony$Carriers; -Landroid/provider/Telephony$Mms$Inbox; -Landroid/provider/Telephony$Mms$Sent; -Landroid/provider/Telephony$Mms; -Landroid/provider/Telephony$MmsSms; -Landroid/provider/Telephony$ServiceStateTable; -Landroid/provider/Telephony$SimInfo; -Landroid/provider/Telephony$Sms$Intents; -Landroid/provider/Telephony$Sms$Sent; -Landroid/provider/Telephony$Sms; -Landroid/provider/Telephony$TextBasedSmsColumns; -Landroid/provider/Telephony$Threads; -Landroid/provider/Telephony$ThreadsColumns; -Landroid/provider/UserDictionary$Words; -Landroid/provider/VoicemailContract$Status; -Landroid/provider/VoicemailContract$Voicemails; -Landroid/renderscript/Allocation; -Landroid/renderscript/BaseObj; -Landroid/renderscript/Element$DataKind; -Landroid/renderscript/Element$DataType; -Landroid/renderscript/Element; -Landroid/renderscript/RSDriverException; -Landroid/renderscript/RSIllegalArgumentException; -Landroid/renderscript/RSInvalidStateException; -Landroid/renderscript/RSRuntimeException; -Landroid/renderscript/RenderScript$ContextType; -Landroid/renderscript/RenderScript$MessageThread; -Landroid/renderscript/RenderScript$RSErrorHandler; -Landroid/renderscript/RenderScript$RSMessageHandler; -Landroid/renderscript/RenderScript; -Landroid/renderscript/RenderScriptCacheDir; -Landroid/renderscript/Script; -Landroid/renderscript/ScriptIntrinsic; -Landroid/renderscript/ScriptIntrinsicBlur; -Landroid/se/omapi/SeFrameworkInitializer; -Landroid/se/omapi/SeServiceManager; -Landroid/security/AttestedKeyPair; -Landroid/security/CheckedRemoteRequest; -Landroid/security/Credentials; -Landroid/security/FeatureFlags; -Landroid/security/FeatureFlagsImpl; -Landroid/security/FileIntegrityManager; -Landroid/security/Flags; -Landroid/security/GateKeeper; -Landroid/security/IFileIntegrityService$Stub; -Landroid/security/IFileIntegrityService; -Landroid/security/IKeyChainAliasCallback$Stub; -Landroid/security/IKeyChainAliasCallback; -Landroid/security/IKeyChainService$Stub$Proxy; -Landroid/security/IKeyChainService$Stub; -Landroid/security/IKeyChainService; -Landroid/security/KeyChain$1; -Landroid/security/KeyChain$AliasResponse; -Landroid/security/KeyChain$KeyChainConnection; -Landroid/security/KeyChain; -Landroid/security/KeyChainAliasCallback; -Landroid/security/KeyChainException; -Landroid/security/KeyPairGeneratorSpec; -Landroid/security/KeyStore2$$ExternalSyntheticLambda0; -Landroid/security/KeyStore2$$ExternalSyntheticLambda1; -Landroid/security/KeyStore2$$ExternalSyntheticLambda3; -Landroid/security/KeyStore2$$ExternalSyntheticLambda4; -Landroid/security/KeyStore2$$ExternalSyntheticLambda8; -Landroid/security/KeyStore2$CheckedRemoteRequest; -Landroid/security/KeyStore2; -Landroid/security/KeyStoreException$PublicErrorInformation; -Landroid/security/KeyStoreException; -Landroid/security/KeyStoreOperation$$ExternalSyntheticLambda0; -Landroid/security/KeyStoreOperation$$ExternalSyntheticLambda1; -Landroid/security/KeyStoreOperation$$ExternalSyntheticLambda2; -Landroid/security/KeyStoreOperation$$ExternalSyntheticLambda3; -Landroid/security/KeyStoreOperation; -Landroid/security/KeyStoreSecurityLevel$$ExternalSyntheticLambda1; -Landroid/security/KeyStoreSecurityLevel; -Landroid/security/NetworkSecurityPolicy; -Landroid/security/Scrypt; -Landroid/security/attestationverification/AttestationVerificationManager; -Landroid/security/keymaster/ExportResult$1; -Landroid/security/keymaster/ExportResult; -Landroid/security/keymaster/KeyCharacteristics$1; -Landroid/security/keymaster/KeyCharacteristics; -Landroid/security/keymaster/KeymasterArgument$1; -Landroid/security/keymaster/KeymasterArgument; -Landroid/security/keymaster/KeymasterArguments$1; -Landroid/security/keymaster/KeymasterArguments-IA; -Landroid/security/keymaster/KeymasterArguments; -Landroid/security/keymaster/KeymasterBlob$1; -Landroid/security/keymaster/KeymasterBlob; -Landroid/security/keymaster/KeymasterBlobArgument; -Landroid/security/keymaster/KeymasterBooleanArgument; -Landroid/security/keymaster/KeymasterCertificateChain$1; -Landroid/security/keymaster/KeymasterCertificateChain; -Landroid/security/keymaster/KeymasterDateArgument; -Landroid/security/keymaster/KeymasterDefs; -Landroid/security/keymaster/KeymasterIntArgument; -Landroid/security/keymaster/KeymasterLongArgument; -Landroid/security/keymaster/OperationResult$1; -Landroid/security/keymaster/OperationResult; -Landroid/security/keystore/AndroidKeyStoreProvider; -Landroid/security/keystore/ArrayUtils; -Landroid/security/keystore/AttestationUtils; -Landroid/security/keystore/BackendBusyException; -Landroid/security/keystore/DelegatingX509Certificate; -Landroid/security/keystore/DeviceIdAttestationException; -Landroid/security/keystore/KeyAttestationException; -Landroid/security/keystore/KeyExpiredException; -Landroid/security/keystore/KeyGenParameterSpec$Builder; -Landroid/security/keystore/KeyGenParameterSpec; -Landroid/security/keystore/KeyInfo; -Landroid/security/keystore/KeyNotYetValidException; -Landroid/security/keystore/KeyPermanentlyInvalidatedException; -Landroid/security/keystore/KeyProperties$BlockMode; -Landroid/security/keystore/KeyProperties$Digest; -Landroid/security/keystore/KeyProperties$EncryptionPadding; -Landroid/security/keystore/KeyProperties$KeyAlgorithm; -Landroid/security/keystore/KeyProperties$Origin; -Landroid/security/keystore/KeyProperties$Purpose; -Landroid/security/keystore/KeyProperties$SignaturePadding; -Landroid/security/keystore/KeyProperties; -Landroid/security/keystore/KeyProtection$Builder; -Landroid/security/keystore/KeyProtection; -Landroid/security/keystore/KeyStoreConnectException; -Landroid/security/keystore/KeyStoreCryptoOperation; -Landroid/security/keystore/KeystoreResponse$1; -Landroid/security/keystore/KeystoreResponse; -Landroid/security/keystore/ParcelableKeyGenParameterSpec$1; -Landroid/security/keystore/ParcelableKeyGenParameterSpec; -Landroid/security/keystore/SecureKeyImportUnavailableException; -Landroid/security/keystore/StrongBoxUnavailableException; -Landroid/security/keystore/UserAuthArgs; -Landroid/security/keystore/UserNotAuthenticatedException; -Landroid/security/keystore/Utils; -Landroid/security/keystore/WrappedKeyEntry; -Landroid/security/keystore/recovery/InternalRecoveryServiceException; -Landroid/security/keystore/recovery/KeyChainProtectionParams$1; -Landroid/security/keystore/recovery/KeyChainProtectionParams$Builder; -Landroid/security/keystore/recovery/KeyChainProtectionParams; -Landroid/security/keystore/recovery/KeyChainSnapshot$1; -Landroid/security/keystore/recovery/KeyChainSnapshot$Builder; -Landroid/security/keystore/recovery/KeyChainSnapshot; -Landroid/security/keystore/recovery/KeyDerivationParams$1; -Landroid/security/keystore/recovery/KeyDerivationParams; -Landroid/security/keystore/recovery/LockScreenRequiredException; -Landroid/security/keystore/recovery/RecoveryCertPath$1; -Landroid/security/keystore/recovery/RecoveryCertPath; -Landroid/security/keystore/recovery/RecoveryController; -Landroid/security/keystore/recovery/TrustedRootCertificates; -Landroid/security/keystore/recovery/WrappedApplicationKey$1; -Landroid/security/keystore/recovery/WrappedApplicationKey$Builder; -Landroid/security/keystore/recovery/WrappedApplicationKey; -Landroid/security/keystore/recovery/X509CertificateParsingUtils; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi$GCM; -Landroid/security/keystore2/AndroidKeyStoreAuthenticatedAESCipherSpi; -Landroid/security/keystore2/AndroidKeyStoreBCWorkaroundProvider; -Landroid/security/keystore2/AndroidKeyStoreCipherSpiBase; -Landroid/security/keystore2/AndroidKeyStoreECDSASignatureSpi$SHA256; -Landroid/security/keystore2/AndroidKeyStoreECDSASignatureSpi; -Landroid/security/keystore2/AndroidKeyStoreECPrivateKey; -Landroid/security/keystore2/AndroidKeyStoreECPublicKey; -Landroid/security/keystore2/AndroidKeyStoreKey; -Landroid/security/keystore2/AndroidKeyStoreKeyFactorySpi; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$$ExternalSyntheticLambda2; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$$ExternalSyntheticLambda3; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$$ExternalSyntheticLambda4; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$$ExternalSyntheticLambda5; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$$ExternalSyntheticLambda6; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi$EC; -Landroid/security/keystore2/AndroidKeyStoreKeyPairGeneratorSpi; -Landroid/security/keystore2/AndroidKeyStoreLoadStoreParameter; -Landroid/security/keystore2/AndroidKeyStorePrivateKey; -Landroid/security/keystore2/AndroidKeyStoreProvider; -Landroid/security/keystore2/AndroidKeyStorePublicKey; -Landroid/security/keystore2/AndroidKeyStoreRSAPrivateKey; -Landroid/security/keystore2/AndroidKeyStoreRSAPublicKey; -Landroid/security/keystore2/AndroidKeyStoreSecretKey; -Landroid/security/keystore2/AndroidKeyStoreSignatureSpiBase; -Landroid/security/keystore2/AndroidKeyStoreSpi; -Landroid/security/keystore2/KeyStore2ParameterUtils; -Landroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$MainDataStream; -Landroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer$Stream; -Landroid/security/keystore2/KeyStoreCryptoOperationChunkedStreamer; -Landroid/security/keystore2/KeyStoreCryptoOperationStreamer; -Landroid/security/keystore2/KeyStoreCryptoOperationUtils; -Landroid/security/keystore2/KeymasterUtils; -Landroid/security/net/config/ApplicationConfig; -Landroid/security/net/config/CertificateSource; -Landroid/security/net/config/CertificatesEntryRef; -Landroid/security/net/config/ConfigNetworkSecurityPolicy; -Landroid/security/net/config/ConfigSource; -Landroid/security/net/config/DirectoryCertificateSource$1; -Landroid/security/net/config/DirectoryCertificateSource$3; -Landroid/security/net/config/DirectoryCertificateSource$CertSelector; -Landroid/security/net/config/DirectoryCertificateSource; -Landroid/security/net/config/Domain; -Landroid/security/net/config/KeyStoreCertificateSource; -Landroid/security/net/config/KeyStoreConfigSource; -Landroid/security/net/config/ManifestConfigSource$DefaultConfigSource; -Landroid/security/net/config/ManifestConfigSource; -Landroid/security/net/config/NetworkSecurityConfig$1; -Landroid/security/net/config/NetworkSecurityConfig$Builder; -Landroid/security/net/config/NetworkSecurityConfig-IA; -Landroid/security/net/config/NetworkSecurityConfig; -Landroid/security/net/config/NetworkSecurityConfigProvider; -Landroid/security/net/config/NetworkSecurityTrustManager; -Landroid/security/net/config/Pin; -Landroid/security/net/config/PinSet; -Landroid/security/net/config/ResourceCertificateSource; -Landroid/security/net/config/RootTrustManager; -Landroid/security/net/config/RootTrustManagerFactorySpi; -Landroid/security/net/config/SystemCertificateSource$NoPreloadHolder; -Landroid/security/net/config/SystemCertificateSource-IA; -Landroid/security/net/config/SystemCertificateSource; -Landroid/security/net/config/TrustAnchor; -Landroid/security/net/config/TrustedCertificateStoreAdapter; -Landroid/security/net/config/UserCertificateSource$NoPreloadHolder; -Landroid/security/net/config/UserCertificateSource-IA; -Landroid/security/net/config/UserCertificateSource; -Landroid/security/net/config/WfaCertificateSource$NoPreloadHolder; -Landroid/security/net/config/WfaCertificateSource; -Landroid/security/net/config/XmlConfigSource$ParserException; -Landroid/security/net/config/XmlConfigSource; -Landroid/server/FeatureFlags; -Landroid/server/FeatureFlagsImpl; -Landroid/server/Flags; -Landroid/service/appprediction/IPredictionService$Stub$Proxy; -Landroid/service/appprediction/IPredictionService$Stub; -Landroid/service/appprediction/IPredictionService; -Landroid/service/autofill/AutofillServiceInfo; -Landroid/service/autofill/Dataset$1; -Landroid/service/autofill/Dataset; -Landroid/service/autofill/FeatureFlags; -Landroid/service/autofill/FeatureFlagsImpl; -Landroid/service/autofill/FieldClassificationUserData; -Landroid/service/autofill/FillContext$1; -Landroid/service/autofill/FillContext; -Landroid/service/autofill/FillEventHistory$1; -Landroid/service/autofill/FillEventHistory; -Landroid/service/autofill/FillRequest$1; -Landroid/service/autofill/FillRequest; -Landroid/service/autofill/FillResponse$1; -Landroid/service/autofill/FillResponse; -Landroid/service/autofill/Flags; -Landroid/service/autofill/IAutoFillService$Stub$Proxy; -Landroid/service/autofill/IAutoFillService$Stub; -Landroid/service/autofill/IAutoFillService; -Landroid/service/autofill/IFillCallback$Stub$Proxy; -Landroid/service/autofill/IFillCallback$Stub; -Landroid/service/autofill/IFillCallback; -Landroid/service/autofill/IInlineSuggestionRenderService$Stub$Proxy; -Landroid/service/autofill/IInlineSuggestionRenderService$Stub; -Landroid/service/autofill/IInlineSuggestionRenderService; -Landroid/service/autofill/ISaveCallback$Stub; -Landroid/service/autofill/ISaveCallback; -Landroid/service/autofill/SaveRequest$1; -Landroid/service/autofill/SaveRequest; -Landroid/service/autofill/UserData$1; -Landroid/service/autofill/UserData$Builder; -Landroid/service/autofill/UserData; -Landroid/service/autofill/augmented/Helper; -Landroid/service/autofill/augmented/IAugmentedAutofillService$Stub$Proxy; -Landroid/service/autofill/augmented/IAugmentedAutofillService$Stub; -Landroid/service/autofill/augmented/IAugmentedAutofillService; -Landroid/service/autofill/augmented/IFillCallback$Stub$Proxy; -Landroid/service/autofill/augmented/IFillCallback$Stub; -Landroid/service/autofill/augmented/IFillCallback; -Landroid/service/carrier/CarrierIdentifier$1; -Landroid/service/carrier/CarrierIdentifier; -Landroid/service/carrier/CarrierMessagingServiceWrapper$CarrierMessagingCallback; -Landroid/service/carrier/CarrierMessagingServiceWrapper; -Landroid/service/carrier/ICarrierService$Stub$Proxy; -Landroid/service/carrier/ICarrierService$Stub; -Landroid/service/carrier/ICarrierService; -Landroid/service/carrier/MessagePdu$1; -Landroid/service/carrier/MessagePdu; -Landroid/service/contentcapture/ActivityEvent$1; -Landroid/service/contentcapture/ActivityEvent; -Landroid/service/contentcapture/ContentCaptureService; -Landroid/service/contentcapture/ContentCaptureServiceInfo; -Landroid/service/contentcapture/FlushMetrics$1; -Landroid/service/contentcapture/FlushMetrics; -Landroid/service/contentcapture/IContentCaptureService$Stub$Proxy; -Landroid/service/contentcapture/IContentCaptureService$Stub; -Landroid/service/contentcapture/IContentCaptureService; -Landroid/service/contentcapture/IContentCaptureServiceCallback$Stub$Proxy; -Landroid/service/contentcapture/IContentCaptureServiceCallback$Stub; -Landroid/service/contentcapture/IContentCaptureServiceCallback; -Landroid/service/contentcapture/IDataShareCallback$Stub; -Landroid/service/contentcapture/IDataShareCallback; -Landroid/service/contentcapture/SnapshotData$1; -Landroid/service/contentcapture/SnapshotData; -Landroid/service/contentsuggestions/IContentSuggestionsService$Stub$Proxy; -Landroid/service/contentsuggestions/IContentSuggestionsService$Stub; -Landroid/service/contentsuggestions/IContentSuggestionsService; -Landroid/service/dataloader/DataLoaderService; -Landroid/service/dreams/DreamActivity; -Landroid/service/dreams/DreamManagerInternal; -Landroid/service/dreams/DreamService$DreamServiceWrapper; -Landroid/service/dreams/DreamService; -Landroid/service/dreams/IDreamManager$Stub$Proxy; -Landroid/service/dreams/IDreamManager$Stub; -Landroid/service/dreams/IDreamManager; -Landroid/service/dreams/IDreamService$Stub$Proxy; -Landroid/service/dreams/IDreamService$Stub; -Landroid/service/dreams/IDreamService; -Landroid/service/euicc/DownloadSubscriptionResult$1; -Landroid/service/euicc/DownloadSubscriptionResult; -Landroid/service/euicc/EuiccProfileInfo$1; -Landroid/service/euicc/EuiccProfileInfo$Builder; -Landroid/service/euicc/EuiccProfileInfo; -Landroid/service/euicc/GetDefaultDownloadableSubscriptionListResult$1; -Landroid/service/euicc/GetDefaultDownloadableSubscriptionListResult; -Landroid/service/euicc/GetDownloadableSubscriptionMetadataResult$1; -Landroid/service/euicc/GetDownloadableSubscriptionMetadataResult; -Landroid/service/euicc/GetEuiccProfileInfoListResult$1; -Landroid/service/euicc/GetEuiccProfileInfoListResult; -Landroid/service/euicc/IDeleteSubscriptionCallback$Stub; -Landroid/service/euicc/IDeleteSubscriptionCallback; -Landroid/service/euicc/IDownloadSubscriptionCallback$Stub; -Landroid/service/euicc/IDownloadSubscriptionCallback; -Landroid/service/euicc/IEraseSubscriptionsCallback$Stub; -Landroid/service/euicc/IEraseSubscriptionsCallback; -Landroid/service/euicc/IEuiccService$Stub$Proxy; -Landroid/service/euicc/IEuiccService$Stub; -Landroid/service/euicc/IEuiccService; -Landroid/service/euicc/IEuiccServiceDumpResultCallback$Stub; -Landroid/service/euicc/IEuiccServiceDumpResultCallback; -Landroid/service/euicc/IGetAvailableMemoryInBytesCallback$Stub; -Landroid/service/euicc/IGetAvailableMemoryInBytesCallback; -Landroid/service/euicc/IGetDefaultDownloadableSubscriptionListCallback$Stub; -Landroid/service/euicc/IGetDefaultDownloadableSubscriptionListCallback; -Landroid/service/euicc/IGetDownloadableSubscriptionMetadataCallback$Stub; -Landroid/service/euicc/IGetDownloadableSubscriptionMetadataCallback; -Landroid/service/euicc/IGetEidCallback$Stub; -Landroid/service/euicc/IGetEidCallback; -Landroid/service/euicc/IGetEuiccInfoCallback$Stub; -Landroid/service/euicc/IGetEuiccInfoCallback; -Landroid/service/euicc/IGetEuiccProfileInfoListCallback$Stub$Proxy; -Landroid/service/euicc/IGetEuiccProfileInfoListCallback$Stub; -Landroid/service/euicc/IGetEuiccProfileInfoListCallback; -Landroid/service/euicc/IGetOtaStatusCallback$Stub; -Landroid/service/euicc/IGetOtaStatusCallback; -Landroid/service/euicc/IOtaStatusChangedCallback$Stub; -Landroid/service/euicc/IOtaStatusChangedCallback; -Landroid/service/euicc/IRetainSubscriptionsForFactoryResetCallback$Stub; -Landroid/service/euicc/IRetainSubscriptionsForFactoryResetCallback; -Landroid/service/euicc/ISwitchToSubscriptionCallback$Stub; -Landroid/service/euicc/ISwitchToSubscriptionCallback; -Landroid/service/euicc/IUpdateSubscriptionNicknameCallback$Stub; -Landroid/service/euicc/IUpdateSubscriptionNicknameCallback; -Landroid/service/games/GameSession$ScreenshotCallback; -Landroid/service/gatekeeper/GateKeeperResponse$1; -Landroid/service/gatekeeper/GateKeeperResponse; -Landroid/service/gatekeeper/IGateKeeperService$Stub$Proxy; -Landroid/service/gatekeeper/IGateKeeperService$Stub; -Landroid/service/gatekeeper/IGateKeeperService; -Landroid/service/media/IMediaBrowserService$Stub$Proxy; -Landroid/service/media/IMediaBrowserService$Stub; -Landroid/service/media/IMediaBrowserService; -Landroid/service/media/IMediaBrowserServiceCallbacks$Stub$Proxy; -Landroid/service/media/IMediaBrowserServiceCallbacks$Stub; -Landroid/service/media/IMediaBrowserServiceCallbacks; -Landroid/service/media/MediaBrowserService$$ExternalSyntheticLambda0; -Landroid/service/media/MediaBrowserService$BrowserRoot; -Landroid/service/media/MediaBrowserService$ConnectionRecord; -Landroid/service/media/MediaBrowserService$Result; -Landroid/service/media/MediaBrowserService$ServiceBinder$$ExternalSyntheticLambda1; -Landroid/service/media/MediaBrowserService$ServiceBinder-IA; -Landroid/service/media/MediaBrowserService$ServiceBinder; -Landroid/service/media/MediaBrowserService$ServiceState-IA; -Landroid/service/media/MediaBrowserService$ServiceState; -Landroid/service/media/MediaBrowserService; -Landroid/service/notification/Adjustment$1; -Landroid/service/notification/Adjustment; -Landroid/service/notification/Condition$1; -Landroid/service/notification/Condition; -Landroid/service/notification/ConditionProviderService$H-IA; -Landroid/service/notification/ConditionProviderService$H; -Landroid/service/notification/ConditionProviderService$Provider-IA; -Landroid/service/notification/ConditionProviderService; -Landroid/service/notification/IConditionProvider$Stub; -Landroid/service/notification/IConditionProvider; -Landroid/service/notification/INotificationListener$Stub; -Landroid/service/notification/INotificationListener; -Landroid/service/notification/IStatusBarNotificationHolder$Stub$Proxy; -Landroid/service/notification/IStatusBarNotificationHolder$Stub; -Landroid/service/notification/IStatusBarNotificationHolder; -Landroid/service/notification/NotificationAssistantService$MyHandler; -Landroid/service/notification/NotificationAssistantService$NotificationAssistantServiceWrapper; -Landroid/service/notification/NotificationAssistantService; -Landroid/service/notification/NotificationListenerFilter$1; -Landroid/service/notification/NotificationListenerFilter; -Landroid/service/notification/NotificationListenerService$MyHandler; -Landroid/service/notification/NotificationListenerService$Ranking; -Landroid/service/notification/NotificationListenerService$RankingMap$1; -Landroid/service/notification/NotificationListenerService$RankingMap-IA; -Landroid/service/notification/NotificationListenerService$RankingMap; -Landroid/service/notification/NotificationListenerService; -Landroid/service/notification/NotificationRankingUpdate$1; -Landroid/service/notification/NotificationRankingUpdate; -Landroid/service/notification/NotificationStats$1; -Landroid/service/notification/NotificationStats; -Landroid/service/notification/NotifyingApp$1; -Landroid/service/notification/ScheduleCalendar; -Landroid/service/notification/SnoozeCriterion$1; -Landroid/service/notification/SnoozeCriterion; -Landroid/service/notification/StatusBarNotification$1; -Landroid/service/notification/StatusBarNotification; -Landroid/service/notification/ZenDeviceEffects$1; -Landroid/service/notification/ZenDeviceEffects; -Landroid/service/notification/ZenModeConfig$1; -Landroid/service/notification/ZenModeConfig$EventInfo; -Landroid/service/notification/ZenModeConfig$ScheduleInfo; -Landroid/service/notification/ZenModeConfig$ZenRule$1; -Landroid/service/notification/ZenModeConfig$ZenRule; -Landroid/service/notification/ZenModeConfig; -Landroid/service/notification/ZenPolicy$1; -Landroid/service/notification/ZenPolicy$Builder; -Landroid/service/notification/ZenPolicy; -Landroid/service/oemlock/IOemLockService$Stub$Proxy; -Landroid/service/oemlock/IOemLockService$Stub; -Landroid/service/oemlock/IOemLockService; -Landroid/service/oemlock/OemLockManager; -Landroid/service/persistentdata/IPersistentDataBlockService$Stub$Proxy; -Landroid/service/persistentdata/IPersistentDataBlockService$Stub; -Landroid/service/persistentdata/IPersistentDataBlockService; -Landroid/service/persistentdata/PersistentDataBlockManager; -Landroid/service/quickaccesswallet/GetWalletCardsRequest$1; -Landroid/service/quickaccesswallet/GetWalletCardsRequest; -Landroid/service/quickaccesswallet/QuickAccessWalletClient; -Landroid/service/quickaccesswallet/QuickAccessWalletClientImpl; -Landroid/service/quickaccesswallet/QuickAccessWalletServiceInfo$ServiceMetadata; -Landroid/service/quickaccesswallet/QuickAccessWalletServiceInfo$TileServiceMetadata; -Landroid/service/quickaccesswallet/QuickAccessWalletServiceInfo; -Landroid/service/quicksettings/IQSService$Stub$Proxy; -Landroid/service/quicksettings/IQSService$Stub; -Landroid/service/quicksettings/IQSService; -Landroid/service/quicksettings/IQSTileService$Stub; -Landroid/service/quicksettings/IQSTileService; -Landroid/service/quicksettings/Tile$1; -Landroid/service/quicksettings/Tile; -Landroid/service/quicksettings/TileService$2; -Landroid/service/quicksettings/TileService$H; -Landroid/service/quicksettings/TileService; -Landroid/service/storage/IExternalStorageService$Stub$Proxy; -Landroid/service/storage/IExternalStorageService$Stub; -Landroid/service/storage/IExternalStorageService; -Landroid/service/textclassifier/ITextClassifierCallback$Stub$Proxy; -Landroid/service/textclassifier/ITextClassifierCallback$Stub; -Landroid/service/textclassifier/ITextClassifierCallback; -Landroid/service/textclassifier/ITextClassifierService$Stub$Proxy; -Landroid/service/textclassifier/ITextClassifierService$Stub; -Landroid/service/textclassifier/ITextClassifierService; -Landroid/service/textclassifier/TextClassifierService$1; -Landroid/service/textclassifier/TextClassifierService; -Landroid/service/timezone/TimeZoneProviderStatus$1; -Landroid/service/timezone/TimeZoneProviderStatus; -Landroid/service/trust/ITrustAgentService$Stub$Proxy; -Landroid/service/trust/ITrustAgentService$Stub; -Landroid/service/trust/ITrustAgentService; -Landroid/service/trust/ITrustAgentServiceCallback$Stub$Proxy; -Landroid/service/trust/ITrustAgentServiceCallback$Stub; -Landroid/service/trust/ITrustAgentServiceCallback; -Landroid/service/trust/TrustAgentService$1; -Landroid/service/trust/TrustAgentService$ConfigurationData; -Landroid/service/trust/TrustAgentService$TrustAgentServiceWrapper; -Landroid/service/trust/TrustAgentService; -Landroid/service/voice/IVoiceInteractionService$Stub$Proxy; -Landroid/service/voice/IVoiceInteractionService$Stub; -Landroid/service/voice/IVoiceInteractionService; -Landroid/service/voice/IVoiceInteractionSession$Stub$Proxy; -Landroid/service/voice/IVoiceInteractionSession$Stub; -Landroid/service/voice/IVoiceInteractionSession; -Landroid/service/voice/IVoiceInteractionSessionService$Stub$Proxy; -Landroid/service/voice/IVoiceInteractionSessionService$Stub; -Landroid/service/voice/IVoiceInteractionSessionService; -Landroid/service/voice/VoiceInteractionManagerInternal; -Landroid/service/voice/VoiceInteractionServiceInfo; -Landroid/service/vr/IPersistentVrStateCallbacks$Stub$Proxy; -Landroid/service/vr/IPersistentVrStateCallbacks$Stub; -Landroid/service/vr/IPersistentVrStateCallbacks; -Landroid/service/vr/IVrManager$Stub$Proxy; -Landroid/service/vr/IVrManager$Stub; -Landroid/service/vr/IVrManager; -Landroid/service/vr/IVrStateCallbacks$Stub$Proxy; -Landroid/service/vr/IVrStateCallbacks$Stub; -Landroid/service/vr/IVrStateCallbacks; -Landroid/service/wallpaper/EngineWindowPage; -Landroid/service/wallpaper/IWallpaperConnection$Stub$Proxy; -Landroid/service/wallpaper/IWallpaperConnection$Stub; -Landroid/service/wallpaper/IWallpaperConnection; -Landroid/service/wallpaper/IWallpaperEngine$Stub$Proxy; -Landroid/service/wallpaper/IWallpaperEngine$Stub; -Landroid/service/wallpaper/IWallpaperEngine; -Landroid/service/wallpaper/IWallpaperService$Stub$Proxy; -Landroid/service/wallpaper/IWallpaperService$Stub; -Landroid/service/wallpaper/IWallpaperService; -Landroid/service/wallpaper/WallpaperService$Engine$$ExternalSyntheticLambda1; -Landroid/service/wallpaper/WallpaperService$Engine$$ExternalSyntheticLambda2; -Landroid/service/wallpaper/WallpaperService$Engine$1; -Landroid/service/wallpaper/WallpaperService$Engine$2; -Landroid/service/wallpaper/WallpaperService$Engine$3; -Landroid/service/wallpaper/WallpaperService$Engine$4; -Landroid/service/wallpaper/WallpaperService$Engine$WallpaperInputEventReceiver; -Landroid/service/wallpaper/WallpaperService$Engine; -Landroid/service/wallpaper/WallpaperService$IWallpaperEngineWrapper; -Landroid/service/wallpaper/WallpaperService$IWallpaperServiceWrapper; -Landroid/service/wallpaper/WallpaperService$WallpaperCommand; -Landroid/service/wallpaper/WallpaperService; -Landroid/service/watchdog/ExplicitHealthCheckService$PackageConfig$1; -Landroid/service/watchdog/ExplicitHealthCheckService$PackageConfig; -Landroid/service/watchdog/IExplicitHealthCheckService$Stub$Proxy; -Landroid/service/watchdog/IExplicitHealthCheckService$Stub; -Landroid/service/watchdog/IExplicitHealthCheckService; -Landroid/speech/RecognitionListener; -Landroid/speech/SpeechRecognizer; -Landroid/speech/tts/ITextToSpeechCallback$Stub; -Landroid/speech/tts/ITextToSpeechCallback; -Landroid/speech/tts/ITextToSpeechService$Stub$Proxy; -Landroid/speech/tts/ITextToSpeechService$Stub; -Landroid/speech/tts/ITextToSpeechService; -Landroid/speech/tts/TextToSpeech$$ExternalSyntheticLambda13; -Landroid/speech/tts/TextToSpeech$$ExternalSyntheticLambda17; -Landroid/speech/tts/TextToSpeech$$ExternalSyntheticLambda1; -Landroid/speech/tts/TextToSpeech$Action; -Landroid/speech/tts/TextToSpeech$Connection$1; -Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask-IA; -Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask; -Landroid/speech/tts/TextToSpeech$Connection-IA; -Landroid/speech/tts/TextToSpeech$Connection; -Landroid/speech/tts/TextToSpeech$DirectConnection-IA; -Landroid/speech/tts/TextToSpeech$DirectConnection; -Landroid/speech/tts/TextToSpeech$EngineInfo; -Landroid/speech/tts/TextToSpeech$OnInitListener; -Landroid/speech/tts/TextToSpeech$SystemConnection-IA; -Landroid/speech/tts/TextToSpeech$SystemConnection; -Landroid/speech/tts/TextToSpeech; -Landroid/speech/tts/TtsEngines$EngineInfoComparator; -Landroid/speech/tts/TtsEngines; -Landroid/speech/tts/UtteranceProgressListener; -Landroid/stats/devicepolicy/nano/StringList; -Landroid/sysprop/AdbProperties; -Landroid/sysprop/ContactsProperties; -Landroid/sysprop/CryptoProperties$state_values; -Landroid/sysprop/CryptoProperties$type_values; -Landroid/sysprop/CryptoProperties; -Landroid/sysprop/DeviceProperties; -Landroid/sysprop/DisplayProperties; -Landroid/sysprop/HdmiProperties; -Landroid/sysprop/InitProperties; -Landroid/sysprop/InputProperties; -Landroid/sysprop/MediaProperties; -Landroid/sysprop/PowerProperties; -Landroid/sysprop/SocProperties; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda0; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda10; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda11; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda13; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda14; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda1; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda2; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda3; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda4; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda5; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda6; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda7; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda8; -Landroid/sysprop/TelephonyProperties$$ExternalSyntheticLambda9; -Landroid/sysprop/TelephonyProperties; -Landroid/sysprop/VndkProperties; -Landroid/system/ErrnoException; -Landroid/system/GaiException; -Landroid/system/Int32Ref; -Landroid/system/Int64Ref; -Landroid/system/NetlinkSocketAddress; -Landroid/system/Os; -Landroid/system/OsConstants; -Landroid/system/PacketSocketAddress; -Landroid/system/StructAddrinfo; -Landroid/system/StructCapUserData; -Landroid/system/StructCapUserHeader; -Landroid/system/StructCmsghdr; -Landroid/system/StructGroupReq; -Landroid/system/StructIfaddrs; -Landroid/system/StructLinger; -Landroid/system/StructMsghdr; -Landroid/system/StructPasswd; -Landroid/system/StructPollfd; -Landroid/system/StructRlimit; -Landroid/system/StructStat; -Landroid/system/StructStatVfs; -Landroid/system/StructTimespec; -Landroid/system/StructTimeval; -Landroid/system/StructUcred; -Landroid/system/StructUtsname; -Landroid/system/UnixSocketAddress; -Landroid/system/VmSocketAddress; -Landroid/system/keystore2/Authorization$1; -Landroid/system/keystore2/Authorization; -Landroid/system/keystore2/CreateOperationResponse$1; -Landroid/system/keystore2/CreateOperationResponse; -Landroid/system/keystore2/IKeystoreOperation$Stub$Proxy; -Landroid/system/keystore2/IKeystoreOperation$Stub; -Landroid/system/keystore2/IKeystoreOperation; -Landroid/system/keystore2/IKeystoreSecurityLevel$Stub$Proxy; -Landroid/system/keystore2/IKeystoreSecurityLevel$Stub; -Landroid/system/keystore2/IKeystoreSecurityLevel; -Landroid/system/keystore2/IKeystoreService$Stub$Proxy; -Landroid/system/keystore2/IKeystoreService$Stub; -Landroid/system/keystore2/IKeystoreService; -Landroid/system/keystore2/KeyDescriptor$1; -Landroid/system/keystore2/KeyDescriptor; -Landroid/system/keystore2/KeyEntryResponse$1; -Landroid/system/keystore2/KeyEntryResponse; -Landroid/system/keystore2/KeyMetadata$1; -Landroid/system/keystore2/KeyMetadata; -Landroid/system/keystore2/KeyParameters$1; -Landroid/system/keystore2/KeyParameters; -Landroid/system/keystore2/OperationChallenge$1; -Landroid/system/keystore2/OperationChallenge; -Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub$Proxy; -Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub; -Landroid/system/suspend/internal/ISuspendControlServiceInternal; -Landroid/system/suspend/internal/WakeLockInfo$1; -Landroid/system/suspend/internal/WakeLockInfo; -Landroid/telecom/AudioState$1; -Landroid/telecom/AudioState; -Landroid/telecom/Call$Callback; -Landroid/telecom/CallAudioState$$ExternalSyntheticLambda0; -Landroid/telecom/CallAudioState$1; -Landroid/telecom/CallAudioState; -Landroid/telecom/CallerInfo; -Landroid/telecom/CallerInfoAsyncQuery; -Landroid/telecom/Conference$Listener; -Landroid/telecom/Conference; -Landroid/telecom/Conferenceable; -Landroid/telecom/Connection$FailureSignalingConnection; -Landroid/telecom/Connection$Listener; -Landroid/telecom/Connection$RttTextStream; -Landroid/telecom/Connection$VideoProvider; -Landroid/telecom/Connection; -Landroid/telecom/ConnectionRequest$1; -Landroid/telecom/ConnectionRequest$Builder; -Landroid/telecom/ConnectionRequest; -Landroid/telecom/ConnectionService$1; -Landroid/telecom/ConnectionService$2; -Landroid/telecom/ConnectionService$3; -Landroid/telecom/ConnectionService$4; -Landroid/telecom/ConnectionService$5; -Landroid/telecom/ConnectionService; -Landroid/telecom/ConnectionServiceAdapter; -Landroid/telecom/DefaultDialerManager; -Landroid/telecom/DisconnectCause$1; -Landroid/telecom/DisconnectCause; -Landroid/telecom/GatewayInfo$1; -Landroid/telecom/GatewayInfo; -Landroid/telecom/InCallService; -Landroid/telecom/Log; -Landroid/telecom/Logging/EventManager$Event; -Landroid/telecom/Logging/EventManager$EventListener; -Landroid/telecom/Logging/EventManager$EventRecord; -Landroid/telecom/Logging/EventManager$Loggable; -Landroid/telecom/Logging/EventManager$TimedEventPair; -Landroid/telecom/Logging/EventManager; -Landroid/telecom/Logging/Runnable$1; -Landroid/telecom/Logging/Runnable; -Landroid/telecom/Logging/Session$Info$1; -Landroid/telecom/Logging/Session$Info; -Landroid/telecom/Logging/Session; -Landroid/telecom/Logging/SessionManager$$ExternalSyntheticLambda0; -Landroid/telecom/Logging/SessionManager$$ExternalSyntheticLambda1; -Landroid/telecom/Logging/SessionManager$$ExternalSyntheticLambda2; -Landroid/telecom/Logging/SessionManager$ICurrentThreadId; -Landroid/telecom/Logging/SessionManager$ISessionCleanupTimeoutMs; -Landroid/telecom/Logging/SessionManager$ISessionIdQueryHandler; -Landroid/telecom/Logging/SessionManager$ISessionListener; -Landroid/telecom/Logging/SessionManager; -Landroid/telecom/ParcelableCall$1; -Landroid/telecom/ParcelableCall$ParcelableCallBuilder; -Landroid/telecom/ParcelableCall; -Landroid/telecom/ParcelableConference$1; -Landroid/telecom/ParcelableConference; -Landroid/telecom/ParcelableConnection$1; -Landroid/telecom/ParcelableConnection; -Landroid/telecom/ParcelableRttCall$1; -Landroid/telecom/ParcelableRttCall; -Landroid/telecom/PhoneAccount$1; -Landroid/telecom/PhoneAccount$Builder; -Landroid/telecom/PhoneAccount-IA; -Landroid/telecom/PhoneAccount; -Landroid/telecom/PhoneAccountHandle$1; -Landroid/telecom/PhoneAccountHandle-IA; -Landroid/telecom/PhoneAccountHandle; -Landroid/telecom/RemoteConnectionManager; -Landroid/telecom/StatusHints$1; -Landroid/telecom/StatusHints; -Landroid/telecom/TelecomAnalytics$1; -Landroid/telecom/TelecomAnalytics$SessionTiming$1; -Landroid/telecom/TelecomAnalytics; -Landroid/telecom/TelecomManager$DeathRecipient; -Landroid/telecom/TelecomManager; -Landroid/telecom/TimedEvent; -Landroid/telecom/VideoProfile$1; -Landroid/telecom/VideoProfile$CameraCapabilities$1; -Landroid/telecom/VideoProfile$CameraCapabilities; -Landroid/telecom/VideoProfile; -Landroid/telephony/AccessNetworkConstants$AccessNetworkType; -Landroid/telephony/AccessNetworkConstants$TransportType; -Landroid/telephony/AccessNetworkConstants; -Landroid/telephony/AccessNetworkUtils; -Landroid/telephony/ActivityStatsTechSpecificInfo$$ExternalSyntheticLambda0; -Landroid/telephony/ActivityStatsTechSpecificInfo$$ExternalSyntheticLambda1; -Landroid/telephony/ActivityStatsTechSpecificInfo$1; -Landroid/telephony/ActivityStatsTechSpecificInfo; -Landroid/telephony/AnomalyReporter; -Landroid/telephony/AvailableNetworkInfo$1; -Landroid/telephony/AvailableNetworkInfo; -Landroid/telephony/BarringInfo$1; -Landroid/telephony/BarringInfo$BarringServiceInfo$1; -Landroid/telephony/BarringInfo$BarringServiceInfo; -Landroid/telephony/BarringInfo; -Landroid/telephony/BinderCacheManager$$ExternalSyntheticLambda0; -Landroid/telephony/BinderCacheManager$BinderDeathTracker; -Landroid/telephony/BinderCacheManager$BinderInterfaceFactory; -Landroid/telephony/BinderCacheManager; -Landroid/telephony/CallAttributes$1; -Landroid/telephony/CallAttributes; -Landroid/telephony/CallForwardingInfo$1; -Landroid/telephony/CallForwardingInfo; -Landroid/telephony/CallQuality$1; -Landroid/telephony/CallQuality; -Landroid/telephony/CallState$1; -Landroid/telephony/CallState; -Landroid/telephony/CarrierConfigManager$Apn; -Landroid/telephony/CarrierConfigManager$Bsf; -Landroid/telephony/CarrierConfigManager$CarrierConfigChangeListener; -Landroid/telephony/CarrierConfigManager$Gps; -Landroid/telephony/CarrierConfigManager$Ims; -Landroid/telephony/CarrierConfigManager$ImsEmergency; -Landroid/telephony/CarrierConfigManager$ImsRtt; -Landroid/telephony/CarrierConfigManager$ImsServiceEntitlement; -Landroid/telephony/CarrierConfigManager$ImsSms; -Landroid/telephony/CarrierConfigManager$ImsSs; -Landroid/telephony/CarrierConfigManager$ImsVoice; -Landroid/telephony/CarrierConfigManager$ImsVt; -Landroid/telephony/CarrierConfigManager$ImsWfc; -Landroid/telephony/CarrierConfigManager$Iwlan; -Landroid/telephony/CarrierConfigManager$OpportunisticNetwork; -Landroid/telephony/CarrierConfigManager$Wifi; -Landroid/telephony/CarrierConfigManager; -Landroid/telephony/CarrierRestrictionRules$1; -Landroid/telephony/CarrierRestrictionRules$Builder; -Landroid/telephony/CarrierRestrictionRules; -Landroid/telephony/CellConfigLte$1; -Landroid/telephony/CellConfigLte-IA; -Landroid/telephony/CellConfigLte; -Landroid/telephony/CellIdentity$1; -Landroid/telephony/CellIdentity; -Landroid/telephony/CellIdentityCdma$1; -Landroid/telephony/CellIdentityCdma; -Landroid/telephony/CellIdentityGsm$1; -Landroid/telephony/CellIdentityGsm; -Landroid/telephony/CellIdentityLte$1; -Landroid/telephony/CellIdentityLte; -Landroid/telephony/CellIdentityNr$1; -Landroid/telephony/CellIdentityNr; -Landroid/telephony/CellIdentityTdscdma$1; -Landroid/telephony/CellIdentityTdscdma; -Landroid/telephony/CellIdentityWcdma$1; -Landroid/telephony/CellIdentityWcdma; -Landroid/telephony/CellInfo$1; -Landroid/telephony/CellInfo; -Landroid/telephony/CellInfoCdma$1; -Landroid/telephony/CellInfoCdma; -Landroid/telephony/CellInfoGsm$1; -Landroid/telephony/CellInfoGsm; -Landroid/telephony/CellInfoLte$1; -Landroid/telephony/CellInfoLte; -Landroid/telephony/CellInfoNr$1; -Landroid/telephony/CellInfoNr; -Landroid/telephony/CellInfoTdscdma$1; -Landroid/telephony/CellInfoTdscdma; -Landroid/telephony/CellInfoWcdma$1; -Landroid/telephony/CellInfoWcdma; -Landroid/telephony/CellLocation; -Landroid/telephony/CellSignalStrength; -Landroid/telephony/CellSignalStrengthCdma$1; -Landroid/telephony/CellSignalStrengthCdma-IA; -Landroid/telephony/CellSignalStrengthCdma; -Landroid/telephony/CellSignalStrengthGsm$1; -Landroid/telephony/CellSignalStrengthGsm-IA; -Landroid/telephony/CellSignalStrengthGsm; -Landroid/telephony/CellSignalStrengthLte$1; -Landroid/telephony/CellSignalStrengthLte-IA; -Landroid/telephony/CellSignalStrengthLte; -Landroid/telephony/CellSignalStrengthNr$1; -Landroid/telephony/CellSignalStrengthNr-IA; -Landroid/telephony/CellSignalStrengthNr; -Landroid/telephony/CellSignalStrengthTdscdma$1; -Landroid/telephony/CellSignalStrengthTdscdma-IA; -Landroid/telephony/CellSignalStrengthTdscdma; -Landroid/telephony/CellSignalStrengthWcdma$1; -Landroid/telephony/CellSignalStrengthWcdma-IA; -Landroid/telephony/CellSignalStrengthWcdma; -Landroid/telephony/ClientRequestStats$1; -Landroid/telephony/ClientRequestStats; -Landroid/telephony/ClosedSubscriberGroupInfo$1; -Landroid/telephony/ClosedSubscriberGroupInfo; -Landroid/telephony/DataConnectionRealTimeInfo$1; -Landroid/telephony/DataConnectionRealTimeInfo; -Landroid/telephony/DataFailCause; -Landroid/telephony/DataSpecificRegistrationInfo$1; -Landroid/telephony/DataSpecificRegistrationInfo-IA; -Landroid/telephony/DataSpecificRegistrationInfo; -Landroid/telephony/DisconnectCause; -Landroid/telephony/IBootstrapAuthenticationCallback$Stub; -Landroid/telephony/IBootstrapAuthenticationCallback; -Landroid/telephony/ICellBroadcastService$Stub; -Landroid/telephony/ICellBroadcastService; -Landroid/telephony/ICellInfoCallback$Stub$Proxy; -Landroid/telephony/ICellInfoCallback$Stub; -Landroid/telephony/ICellInfoCallback; -Landroid/telephony/INetworkService$Stub; -Landroid/telephony/INetworkService; -Landroid/telephony/INetworkServiceCallback$Stub$Proxy; -Landroid/telephony/INetworkServiceCallback$Stub; -Landroid/telephony/INetworkServiceCallback; -Landroid/telephony/IccOpenLogicalChannelResponse$1; -Landroid/telephony/IccOpenLogicalChannelResponse; -Landroid/telephony/ImsiEncryptionInfo$1; -Landroid/telephony/ImsiEncryptionInfo; -Landroid/telephony/JapanesePhoneNumberFormatter; -Landroid/telephony/LinkCapacityEstimate$1; -Landroid/telephony/LinkCapacityEstimate; -Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery$Builder; -Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery-IA; -Landroid/telephony/LocationAccessPolicy$LocationPermissionQuery; -Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; -Landroid/telephony/LocationAccessPolicy; -Landroid/telephony/LteVopsSupportInfo$1; -Landroid/telephony/LteVopsSupportInfo-IA; -Landroid/telephony/LteVopsSupportInfo; -Landroid/telephony/MmsManager; -Landroid/telephony/ModemActivityInfo$1; -Landroid/telephony/ModemActivityInfo; -Landroid/telephony/ModemInfo$1; -Landroid/telephony/ModemInfo; -Landroid/telephony/NeighboringCellInfo$1; -Landroid/telephony/NeighboringCellInfo; -Landroid/telephony/NetworkRegistrationInfo$$ExternalSyntheticLambda0; -Landroid/telephony/NetworkRegistrationInfo$1; -Landroid/telephony/NetworkRegistrationInfo$Builder; -Landroid/telephony/NetworkRegistrationInfo-IA; -Landroid/telephony/NetworkRegistrationInfo; -Landroid/telephony/NetworkScan; -Landroid/telephony/NetworkScanRequest$1; -Landroid/telephony/NetworkScanRequest; -Landroid/telephony/NetworkService$NetworkServiceHandler; -Landroid/telephony/NetworkService$NetworkServiceProvider; -Landroid/telephony/NetworkService; -Landroid/telephony/NetworkServiceCallback; -Landroid/telephony/NrVopsSupportInfo$1; -Landroid/telephony/NrVopsSupportInfo; -Landroid/telephony/NumberVerificationCallback; -Landroid/telephony/PcoData$1; -Landroid/telephony/PcoData; -Landroid/telephony/PhoneCapability$1; -Landroid/telephony/PhoneCapability; -Landroid/telephony/PhoneNumberRange$1; -Landroid/telephony/PhoneNumberRange; -Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex; -Landroid/telephony/PhoneNumberUtils; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda0; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda10; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda13; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda15; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda19; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda1; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda20; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda21; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda23; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda24; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda27; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda28; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda2; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda31; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda32; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda34; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda37; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda38; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda39; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda3; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda41; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda42; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda47; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda51; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda52; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda53; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda55; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda56; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda57; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda58; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda59; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda5; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda62; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda6; -Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda9; -Landroid/telephony/PhoneStateListener; -Landroid/telephony/PhysicalChannelConfig$1; -Landroid/telephony/PhysicalChannelConfig$Builder; -Landroid/telephony/PhysicalChannelConfig; -Landroid/telephony/PinResult$1; -Landroid/telephony/PinResult; -Landroid/telephony/PreciseCallState$1; -Landroid/telephony/PreciseCallState; -Landroid/telephony/PreciseDataConnectionState$1; -Landroid/telephony/PreciseDataConnectionState$Builder; -Landroid/telephony/PreciseDataConnectionState; -Landroid/telephony/RadioAccessFamily$1; -Landroid/telephony/RadioAccessFamily; -Landroid/telephony/RadioAccessSpecifier$1; -Landroid/telephony/RadioAccessSpecifier; -Landroid/telephony/Rlog; -Landroid/telephony/ServiceState$$ExternalSyntheticLambda0; -Landroid/telephony/ServiceState$1; -Landroid/telephony/ServiceState; -Landroid/telephony/SignalStrength$1; -Landroid/telephony/SignalStrength; -Landroid/telephony/SignalStrengthUpdateRequest$1; -Landroid/telephony/SignalStrengthUpdateRequest; -Landroid/telephony/SignalThresholdInfo$1; -Landroid/telephony/SignalThresholdInfo$Builder; -Landroid/telephony/SignalThresholdInfo; -Landroid/telephony/SmsCbCmasInfo$1; -Landroid/telephony/SmsCbCmasInfo; -Landroid/telephony/SmsCbEtwsInfo$1; -Landroid/telephony/SmsCbEtwsInfo; -Landroid/telephony/SmsCbLocation$1; -Landroid/telephony/SmsCbLocation; -Landroid/telephony/SmsCbMessage$1; -Landroid/telephony/SmsCbMessage; -Landroid/telephony/SmsManager$1; -Landroid/telephony/SmsManager$2; -Landroid/telephony/SmsManager$3; -Landroid/telephony/SmsManager$4; -Landroid/telephony/SmsManager$5; -Landroid/telephony/SmsManager$6; -Landroid/telephony/SmsManager$FinancialSmsCallback; -Landroid/telephony/SmsManager$SubscriptionResolverResult; -Landroid/telephony/SmsManager; -Landroid/telephony/SmsMessage$1; -Landroid/telephony/SmsMessage$MessageClass; -Landroid/telephony/SmsMessage$NoEmsSupportConfig; -Landroid/telephony/SmsMessage; -Landroid/telephony/SubscriptionInfo$1; -Landroid/telephony/SubscriptionInfo$Builder; -Landroid/telephony/SubscriptionInfo-IA; -Landroid/telephony/SubscriptionInfo; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda0; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda10; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda11; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda12; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda13; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda14; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda15; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda16; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda17; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda18; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda2; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda3; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda4; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda5; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda6; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda7; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda8; -Landroid/telephony/SubscriptionManager$$ExternalSyntheticLambda9; -Landroid/telephony/SubscriptionManager$1; -Landroid/telephony/SubscriptionManager$CallISubMethodHelper; -Landroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache; -Landroid/telephony/SubscriptionManager$OnOpportunisticSubscriptionsChangedListener; -Landroid/telephony/SubscriptionManager$OnSubscriptionsChangedListener; -Landroid/telephony/SubscriptionManager$VoidPropertyInvalidatedCache; -Landroid/telephony/SubscriptionManager; -Landroid/telephony/SubscriptionPlan$1; -Landroid/telephony/SubscriptionPlan; -Landroid/telephony/TelephonyCallback$ActiveDataSubscriptionIdListener; -Landroid/telephony/TelephonyCallback$AllowedNetworkTypesListener; -Landroid/telephony/TelephonyCallback$BarringInfoListener; -Landroid/telephony/TelephonyCallback$CallAttributesListener; -Landroid/telephony/TelephonyCallback$CallDisconnectCauseListener; -Landroid/telephony/TelephonyCallback$CallForwardingIndicatorListener; -Landroid/telephony/TelephonyCallback$CallStateListener; -Landroid/telephony/TelephonyCallback$CarrierNetworkListener; -Landroid/telephony/TelephonyCallback$CarrierRoamingNtnModeListener; -Landroid/telephony/TelephonyCallback$CellInfoListener; -Landroid/telephony/TelephonyCallback$CellLocationListener; -Landroid/telephony/TelephonyCallback$DataActivationStateListener; -Landroid/telephony/TelephonyCallback$DataActivityListener; -Landroid/telephony/TelephonyCallback$DataConnectionStateListener; -Landroid/telephony/TelephonyCallback$DataEnabledListener; -Landroid/telephony/TelephonyCallback$DisplayInfoListener; -Landroid/telephony/TelephonyCallback$EmergencyCallbackModeListener; -Landroid/telephony/TelephonyCallback$EmergencyNumberListListener; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda26; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda35; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda36; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda39; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda47; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda52; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda63; -Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda65; -Landroid/telephony/TelephonyCallback$ImsCallDisconnectCauseListener; -Landroid/telephony/TelephonyCallback$LinkCapacityEstimateChangedListener; -Landroid/telephony/TelephonyCallback$MediaQualityStatusChangedListener; -Landroid/telephony/TelephonyCallback$MessageWaitingIndicatorListener; -Landroid/telephony/TelephonyCallback$OutgoingEmergencyCallListener; -Landroid/telephony/TelephonyCallback$OutgoingEmergencySmsListener; -Landroid/telephony/TelephonyCallback$PhoneCapabilityListener; -Landroid/telephony/TelephonyCallback$PhysicalChannelConfigListener; -Landroid/telephony/TelephonyCallback$PreciseCallStateListener; -Landroid/telephony/TelephonyCallback$PreciseDataConnectionStateListener; -Landroid/telephony/TelephonyCallback$RadioPowerStateListener; -Landroid/telephony/TelephonyCallback$RegistrationFailedListener; -Landroid/telephony/TelephonyCallback$ServiceStateListener; -Landroid/telephony/TelephonyCallback$SignalStrengthsListener; -Landroid/telephony/TelephonyCallback$SimultaneousCellularCallingSupportListener; -Landroid/telephony/TelephonyCallback$SrvccStateListener; -Landroid/telephony/TelephonyCallback$UserMobileDataStateListener; -Landroid/telephony/TelephonyCallback$VoiceActivationStateListener; -Landroid/telephony/TelephonyCallback; -Landroid/telephony/TelephonyDisplayInfo$1; -Landroid/telephony/TelephonyDisplayInfo; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda0; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda1; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda2; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda3; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda4; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda5; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda6; -Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda7; -Landroid/telephony/TelephonyFrameworkInitializer; -Landroid/telephony/TelephonyHistogram$1; -Landroid/telephony/TelephonyHistogram; -Landroid/telephony/TelephonyLocalConnection; -Landroid/telephony/TelephonyManager$12; -Landroid/telephony/TelephonyManager$13; -Landroid/telephony/TelephonyManager$15; -Landroid/telephony/TelephonyManager$17; -Landroid/telephony/TelephonyManager$18; -Landroid/telephony/TelephonyManager$19; -Landroid/telephony/TelephonyManager$1; -Landroid/telephony/TelephonyManager$20; -Landroid/telephony/TelephonyManager$21; -Landroid/telephony/TelephonyManager$2; -Landroid/telephony/TelephonyManager$3; -Landroid/telephony/TelephonyManager$4; -Landroid/telephony/TelephonyManager$5; -Landroid/telephony/TelephonyManager$6; -Landroid/telephony/TelephonyManager$7; -Landroid/telephony/TelephonyManager$8; -Landroid/telephony/TelephonyManager$CarrierPrivilegesCallback; -Landroid/telephony/TelephonyManager$CellInfoCallback; -Landroid/telephony/TelephonyManager$DeathRecipient; -Landroid/telephony/TelephonyManager$ModemActivityInfoException; -Landroid/telephony/TelephonyManager$MultiSimVariants; -Landroid/telephony/TelephonyManager$UssdResponseCallback; -Landroid/telephony/TelephonyManager; -Landroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda0; -Landroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda1; -Landroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda2; -Landroid/telephony/TelephonyRegistryManager$1$$ExternalSyntheticLambda0; -Landroid/telephony/TelephonyRegistryManager$1; -Landroid/telephony/TelephonyRegistryManager$2; -Landroid/telephony/TelephonyRegistryManager$3; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda1; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda2; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda3; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda4; -Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper; -Landroid/telephony/TelephonyRegistryManager; -Landroid/telephony/TelephonyScanManager$NetworkScanCallback; -Landroid/telephony/TelephonyScanManager; -Landroid/telephony/UiccAccessRule$1; -Landroid/telephony/UiccAccessRule; -Landroid/telephony/UiccCardInfo$1; -Landroid/telephony/UiccCardInfo; -Landroid/telephony/UiccSlotInfo$1; -Landroid/telephony/UiccSlotInfo; -Landroid/telephony/UssdResponse$1; -Landroid/telephony/UssdResponse; -Landroid/telephony/VisualVoicemailSms$1; -Landroid/telephony/VisualVoicemailSms$Builder; -Landroid/telephony/VisualVoicemailSms; -Landroid/telephony/VisualVoicemailSmsFilterSettings$1; -Landroid/telephony/VisualVoicemailSmsFilterSettings$Builder; -Landroid/telephony/VisualVoicemailSmsFilterSettings; -Landroid/telephony/VoiceSpecificRegistrationInfo$1; -Landroid/telephony/VoiceSpecificRegistrationInfo-IA; -Landroid/telephony/VoiceSpecificRegistrationInfo; -Landroid/telephony/VopsSupportInfo$1; -Landroid/telephony/VopsSupportInfo; -Landroid/telephony/cdma/CdmaCellLocation; -Landroid/telephony/data/ApnSetting$1; -Landroid/telephony/data/ApnSetting$Builder; -Landroid/telephony/data/ApnSetting-IA; -Landroid/telephony/data/ApnSetting; -Landroid/telephony/data/DataCallResponse$1; -Landroid/telephony/data/DataCallResponse$Builder; -Landroid/telephony/data/DataCallResponse; -Landroid/telephony/data/DataProfile$1; -Landroid/telephony/data/DataProfile$Builder; -Landroid/telephony/data/DataProfile; -Landroid/telephony/data/DataService$DataCallListChangedIndication; -Landroid/telephony/data/DataService$DataServiceHandler; -Landroid/telephony/data/DataService$DataServiceProvider; -Landroid/telephony/data/DataService$DeactivateDataCallRequest; -Landroid/telephony/data/DataService$IDataServiceWrapper; -Landroid/telephony/data/DataService$SetDataProfileRequest; -Landroid/telephony/data/DataService$SetInitialAttachApnRequest; -Landroid/telephony/data/DataService$SetupDataCallRequest; -Landroid/telephony/data/DataService; -Landroid/telephony/data/DataServiceCallback; -Landroid/telephony/data/EpsBearerQosSessionAttributes$1; -Landroid/telephony/data/EpsBearerQosSessionAttributes; -Landroid/telephony/data/EpsQos$1; -Landroid/telephony/data/EpsQos; -Landroid/telephony/data/IDataService$Stub$Proxy; -Landroid/telephony/data/IDataService$Stub; -Landroid/telephony/data/IDataService; -Landroid/telephony/data/IDataServiceCallback$Stub$Proxy; -Landroid/telephony/data/IDataServiceCallback$Stub; -Landroid/telephony/data/IDataServiceCallback; -Landroid/telephony/data/IQualifiedNetworksService$Stub$Proxy; -Landroid/telephony/data/IQualifiedNetworksService$Stub; -Landroid/telephony/data/IQualifiedNetworksService; -Landroid/telephony/data/IQualifiedNetworksServiceCallback$Stub$Proxy; -Landroid/telephony/data/IQualifiedNetworksServiceCallback$Stub; -Landroid/telephony/data/IQualifiedNetworksServiceCallback; -Landroid/telephony/data/NetworkSliceInfo$1; -Landroid/telephony/data/NetworkSliceInfo$Builder; -Landroid/telephony/data/NetworkSliceInfo; -Landroid/telephony/data/NetworkSlicingConfig$1; -Landroid/telephony/data/NetworkSlicingConfig; -Landroid/telephony/data/NrQos$1; -Landroid/telephony/data/NrQos; -Landroid/telephony/data/NrQosSessionAttributes$1; -Landroid/telephony/data/NrQosSessionAttributes; -Landroid/telephony/data/Qos$QosBandwidth$1; -Landroid/telephony/data/Qos$QosBandwidth; -Landroid/telephony/data/Qos; -Landroid/telephony/data/QosBearerFilter$1; -Landroid/telephony/data/QosBearerFilter$PortRange$1; -Landroid/telephony/data/QosBearerFilter$PortRange; -Landroid/telephony/data/QosBearerFilter; -Landroid/telephony/data/QosBearerSession$1; -Landroid/telephony/data/QosBearerSession; -Landroid/telephony/data/ThrottleStatus$1; -Landroid/telephony/data/ThrottleStatus$Builder; -Landroid/telephony/data/ThrottleStatus; -Landroid/telephony/data/TrafficDescriptor$1; -Landroid/telephony/data/TrafficDescriptor$Builder; -Landroid/telephony/data/TrafficDescriptor; -Landroid/telephony/emergency/EmergencyNumber$1; -Landroid/telephony/emergency/EmergencyNumber; -Landroid/telephony/euicc/DownloadableSubscription$1; -Landroid/telephony/euicc/DownloadableSubscription; -Landroid/telephony/euicc/EuiccCardManager$10; -Landroid/telephony/euicc/EuiccCardManager$11; -Landroid/telephony/euicc/EuiccCardManager$12; -Landroid/telephony/euicc/EuiccCardManager$13; -Landroid/telephony/euicc/EuiccCardManager$14; -Landroid/telephony/euicc/EuiccCardManager$15; -Landroid/telephony/euicc/EuiccCardManager$16; -Landroid/telephony/euicc/EuiccCardManager$17; -Landroid/telephony/euicc/EuiccCardManager$18; -Landroid/telephony/euicc/EuiccCardManager$19; -Landroid/telephony/euicc/EuiccCardManager$1; -Landroid/telephony/euicc/EuiccCardManager$20; -Landroid/telephony/euicc/EuiccCardManager$21; -Landroid/telephony/euicc/EuiccCardManager$22; -Landroid/telephony/euicc/EuiccCardManager$2; -Landroid/telephony/euicc/EuiccCardManager$3; -Landroid/telephony/euicc/EuiccCardManager$4; -Landroid/telephony/euicc/EuiccCardManager$5; -Landroid/telephony/euicc/EuiccCardManager$6; -Landroid/telephony/euicc/EuiccCardManager$7; -Landroid/telephony/euicc/EuiccCardManager$8; -Landroid/telephony/euicc/EuiccCardManager$9; -Landroid/telephony/euicc/EuiccCardManager$ResultCallback; -Landroid/telephony/euicc/EuiccCardManager; -Landroid/telephony/euicc/EuiccInfo$1; -Landroid/telephony/euicc/EuiccInfo; -Landroid/telephony/euicc/EuiccManager; -Landroid/telephony/euicc/EuiccNotification$1; -Landroid/telephony/euicc/EuiccNotification; -Landroid/telephony/euicc/EuiccRulesAuthTable$1; -Landroid/telephony/euicc/EuiccRulesAuthTable$Builder; -Landroid/telephony/euicc/EuiccRulesAuthTable; -Landroid/telephony/gba/GbaAuthRequest$1; -Landroid/telephony/gba/GbaAuthRequest; -Landroid/telephony/gba/IGbaService$Stub; -Landroid/telephony/gba/IGbaService; -Landroid/telephony/gba/UaSecurityProtocolIdentifier$1; -Landroid/telephony/gba/UaSecurityProtocolIdentifier; -Landroid/telephony/gsm/GsmCellLocation; -Landroid/telephony/gsm/SmsManager; -Landroid/telephony/gsm/SmsMessage$MessageClass; -Landroid/telephony/gsm/SmsMessage$SubmitPdu; -Landroid/telephony/gsm/SmsMessage; -Landroid/telephony/ims/AudioCodecAttributes$1; -Landroid/telephony/ims/AudioCodecAttributes; -Landroid/telephony/ims/ImsCallForwardInfo$1; -Landroid/telephony/ims/ImsCallForwardInfo; -Landroid/telephony/ims/ImsCallProfile$1; -Landroid/telephony/ims/ImsCallProfile; -Landroid/telephony/ims/ImsCallSession$Listener; -Landroid/telephony/ims/ImsCallSession; -Landroid/telephony/ims/ImsConferenceState$1; -Landroid/telephony/ims/ImsConferenceState; -Landroid/telephony/ims/ImsException; -Landroid/telephony/ims/ImsExternalCallState$1; -Landroid/telephony/ims/ImsExternalCallState; -Landroid/telephony/ims/ImsManager$$ExternalSyntheticLambda0; -Landroid/telephony/ims/ImsManager$$ExternalSyntheticLambda1; -Landroid/telephony/ims/ImsManager; -Landroid/telephony/ims/ImsMmTelManager$$ExternalSyntheticLambda0; -Landroid/telephony/ims/ImsMmTelManager$$ExternalSyntheticLambda1; -Landroid/telephony/ims/ImsMmTelManager$$ExternalSyntheticLambda3; -Landroid/telephony/ims/ImsMmTelManager$1; -Landroid/telephony/ims/ImsMmTelManager$2; -Landroid/telephony/ims/ImsMmTelManager$3; -Landroid/telephony/ims/ImsMmTelManager$4; -Landroid/telephony/ims/ImsMmTelManager$CapabilityCallback$CapabilityBinder; -Landroid/telephony/ims/ImsMmTelManager$CapabilityCallback; -Landroid/telephony/ims/ImsMmTelManager$RegistrationCallback; -Landroid/telephony/ims/ImsMmTelManager; -Landroid/telephony/ims/ImsRcsManager; -Landroid/telephony/ims/ImsReasonInfo$1; -Landroid/telephony/ims/ImsReasonInfo-IA; -Landroid/telephony/ims/ImsReasonInfo; -Landroid/telephony/ims/ImsRegistrationAttributes$1; -Landroid/telephony/ims/ImsRegistrationAttributes; -Landroid/telephony/ims/ImsService$1; -Landroid/telephony/ims/ImsService$Listener; -Landroid/telephony/ims/ImsService; -Landroid/telephony/ims/ImsSsData$1; -Landroid/telephony/ims/ImsSsData; -Landroid/telephony/ims/ImsSsInfo$1; -Landroid/telephony/ims/ImsSsInfo$Builder; -Landroid/telephony/ims/ImsSsInfo; -Landroid/telephony/ims/ImsStreamMediaProfile$1; -Landroid/telephony/ims/ImsStreamMediaProfile; -Landroid/telephony/ims/ImsSuppServiceNotification$1; -Landroid/telephony/ims/ImsSuppServiceNotification; -Landroid/telephony/ims/ImsUtListener; -Landroid/telephony/ims/MediaQualityStatus$1; -Landroid/telephony/ims/MediaQualityStatus; -Landroid/telephony/ims/ProvisioningManager$Callback$CallbackBinder; -Landroid/telephony/ims/ProvisioningManager$Callback; -Landroid/telephony/ims/ProvisioningManager; -Landroid/telephony/ims/RcsContactPresenceTuple$1; -Landroid/telephony/ims/RcsContactPresenceTuple$Builder; -Landroid/telephony/ims/RcsContactPresenceTuple$ServiceCapabilities$1; -Landroid/telephony/ims/RcsContactPresenceTuple$ServiceCapabilities$Builder; -Landroid/telephony/ims/RcsContactPresenceTuple$ServiceCapabilities; -Landroid/telephony/ims/RcsContactPresenceTuple; -Landroid/telephony/ims/RcsContactTerminatedReason$1; -Landroid/telephony/ims/RcsContactTerminatedReason; -Landroid/telephony/ims/RcsContactUceCapability$1; -Landroid/telephony/ims/RcsContactUceCapability$OptionsBuilder; -Landroid/telephony/ims/RcsContactUceCapability$PresenceBuilder; -Landroid/telephony/ims/RcsContactUceCapability; -Landroid/telephony/ims/RcsUceAdapter; -Landroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder$$ExternalSyntheticLambda1; -Landroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder$$ExternalSyntheticLambda3; -Landroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder; -Landroid/telephony/ims/RegistrationManager$RegistrationCallback; -Landroid/telephony/ims/RegistrationManager; -Landroid/telephony/ims/RtpHeaderExtension$1; -Landroid/telephony/ims/RtpHeaderExtension; -Landroid/telephony/ims/RtpHeaderExtensionType$1; -Landroid/telephony/ims/RtpHeaderExtensionType; -Landroid/telephony/ims/aidl/ICapabilityExchangeEventListener$Stub; -Landroid/telephony/ims/aidl/ICapabilityExchangeEventListener; -Landroid/telephony/ims/aidl/IImsCapabilityCallback$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsCapabilityCallback$Stub; -Landroid/telephony/ims/aidl/IImsCapabilityCallback; -Landroid/telephony/ims/aidl/IImsConfig$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsConfig$Stub; -Landroid/telephony/ims/aidl/IImsConfig; -Landroid/telephony/ims/aidl/IImsConfigCallback$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsConfigCallback$Stub; -Landroid/telephony/ims/aidl/IImsConfigCallback; -Landroid/telephony/ims/aidl/IImsMmTelFeature$Stub; -Landroid/telephony/ims/aidl/IImsMmTelFeature; -Landroid/telephony/ims/aidl/IImsMmTelListener$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsMmTelListener$Stub; -Landroid/telephony/ims/aidl/IImsMmTelListener; -Landroid/telephony/ims/aidl/IImsRcsController$Stub; -Landroid/telephony/ims/aidl/IImsRcsController; -Landroid/telephony/ims/aidl/IImsRcsFeature$Stub; -Landroid/telephony/ims/aidl/IImsRcsFeature; -Landroid/telephony/ims/aidl/IImsRegistration$Stub; -Landroid/telephony/ims/aidl/IImsRegistration; -Landroid/telephony/ims/aidl/IImsRegistrationCallback$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsRegistrationCallback$Stub; -Landroid/telephony/ims/aidl/IImsRegistrationCallback; -Landroid/telephony/ims/aidl/IImsServiceController$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsServiceController$Stub; -Landroid/telephony/ims/aidl/IImsServiceController; -Landroid/telephony/ims/aidl/IImsServiceControllerListener$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsServiceControllerListener$Stub; -Landroid/telephony/ims/aidl/IImsServiceControllerListener; -Landroid/telephony/ims/aidl/IImsSmsListener$Stub$Proxy; -Landroid/telephony/ims/aidl/IImsSmsListener$Stub; -Landroid/telephony/ims/aidl/IImsSmsListener; -Landroid/telephony/ims/aidl/IOptionsRequestCallback; -Landroid/telephony/ims/aidl/IOptionsResponseCallback$Stub; -Landroid/telephony/ims/aidl/IOptionsResponseCallback; -Landroid/telephony/ims/aidl/IPublishResponseCallback$Stub; -Landroid/telephony/ims/aidl/IPublishResponseCallback; -Landroid/telephony/ims/aidl/IRcsConfigCallback; -Landroid/telephony/ims/aidl/IRcsUceControllerCallback; -Landroid/telephony/ims/aidl/IRcsUcePublishStateCallback; -Landroid/telephony/ims/aidl/ISipTransport; -Landroid/telephony/ims/aidl/ISubscribeResponseCallback$Stub; -Landroid/telephony/ims/aidl/ISubscribeResponseCallback; -Landroid/telephony/ims/feature/CapabilityChangeRequest$1; -Landroid/telephony/ims/feature/CapabilityChangeRequest$CapabilityPair; -Landroid/telephony/ims/feature/CapabilityChangeRequest; -Landroid/telephony/ims/feature/ImsFeature$Capabilities; -Landroid/telephony/ims/feature/ImsFeature$CapabilityCallbackProxy; -Landroid/telephony/ims/feature/ImsFeature; -Landroid/telephony/ims/feature/MmTelFeature$1; -Landroid/telephony/ims/feature/MmTelFeature$Listener; -Landroid/telephony/ims/feature/MmTelFeature$MmTelCapabilities; -Landroid/telephony/ims/feature/MmTelFeature; -Landroid/telephony/ims/feature/RcsFeature$RcsImsCapabilities; -Landroid/telephony/ims/feature/RcsFeature; -Landroid/telephony/ims/stub/ImsCallSessionImplBase; -Landroid/telephony/ims/stub/ImsConfigImplBase$ImsConfigStub; -Landroid/telephony/ims/stub/ImsConfigImplBase; -Landroid/telephony/ims/stub/ImsEcbmImplBase$1; -Landroid/telephony/ims/stub/ImsEcbmImplBase; -Landroid/telephony/ims/stub/ImsFeatureConfiguration$1; -Landroid/telephony/ims/stub/ImsFeatureConfiguration$FeatureSlotPair; -Landroid/telephony/ims/stub/ImsFeatureConfiguration; -Landroid/telephony/ims/stub/ImsMultiEndpointImplBase$1; -Landroid/telephony/ims/stub/ImsMultiEndpointImplBase; -Landroid/telephony/ims/stub/ImsRegistrationImplBase$1; -Landroid/telephony/ims/stub/ImsRegistrationImplBase; -Landroid/telephony/ims/stub/ImsSmsImplBase; -Landroid/telephony/ims/stub/ImsUtImplBase$1; -Landroid/telephony/ims/stub/ImsUtImplBase; -Landroid/telephony/satellite/SatelliteManager; -Landroid/text/AndroidBidi; -Landroid/text/AndroidCharacter; -Landroid/text/Annotation; -Landroid/text/AutoGrowArray$ByteArray; -Landroid/text/AutoGrowArray$FloatArray; -Landroid/text/AutoGrowArray$IntArray; -Landroid/text/AutoGrowArray; -Landroid/text/BidiFormatter$DirectionalityEstimator; -Landroid/text/BidiFormatter; -Landroid/text/BoringLayout$Metrics; -Landroid/text/BoringLayout; -Landroid/text/CharSequenceCharacterIterator; -Landroid/text/ClientFlags; -Landroid/text/ClipboardManager; -Landroid/text/DynamicLayout$Builder; -Landroid/text/DynamicLayout$ChangeWatcher; -Landroid/text/DynamicLayout-IA; -Landroid/text/DynamicLayout; -Landroid/text/Editable$Factory; -Landroid/text/Editable; -Landroid/text/Emoji; -Landroid/text/FontConfig$1; -Landroid/text/FontConfig$Alias$1; -Landroid/text/FontConfig$Alias; -Landroid/text/FontConfig$Font$1; -Landroid/text/FontConfig$Font; -Landroid/text/FontConfig$FontFamily$1; -Landroid/text/FontConfig$FontFamily; -Landroid/text/FontConfig$NamedFamilyList$1; -Landroid/text/FontConfig$NamedFamilyList; -Landroid/text/FontConfig; -Landroid/text/GetChars; -Landroid/text/GraphicsOperations; -Landroid/text/Highlights; -Landroid/text/Html$HtmlParser; -Landroid/text/Html$ImageGetter; -Landroid/text/Html$TagHandler; -Landroid/text/Html; -Landroid/text/HtmlToSpannedConverter$Alignment; -Landroid/text/HtmlToSpannedConverter$Background; -Landroid/text/HtmlToSpannedConverter$Big-IA; -Landroid/text/HtmlToSpannedConverter$Big; -Landroid/text/HtmlToSpannedConverter$Blockquote-IA; -Landroid/text/HtmlToSpannedConverter$Blockquote; -Landroid/text/HtmlToSpannedConverter$Bold-IA; -Landroid/text/HtmlToSpannedConverter$Bold; -Landroid/text/HtmlToSpannedConverter$Bullet-IA; -Landroid/text/HtmlToSpannedConverter$Bullet; -Landroid/text/HtmlToSpannedConverter$Font; -Landroid/text/HtmlToSpannedConverter$Foreground; -Landroid/text/HtmlToSpannedConverter$Heading; -Landroid/text/HtmlToSpannedConverter$Href; -Landroid/text/HtmlToSpannedConverter$Italic-IA; -Landroid/text/HtmlToSpannedConverter$Italic; -Landroid/text/HtmlToSpannedConverter$Monospace-IA; -Landroid/text/HtmlToSpannedConverter$Monospace; -Landroid/text/HtmlToSpannedConverter$Newline; -Landroid/text/HtmlToSpannedConverter$Small-IA; -Landroid/text/HtmlToSpannedConverter$Small; -Landroid/text/HtmlToSpannedConverter$Strikethrough-IA; -Landroid/text/HtmlToSpannedConverter$Strikethrough; -Landroid/text/HtmlToSpannedConverter$Sub-IA; -Landroid/text/HtmlToSpannedConverter$Sub; -Landroid/text/HtmlToSpannedConverter$Super-IA; -Landroid/text/HtmlToSpannedConverter$Super; -Landroid/text/HtmlToSpannedConverter$Underline-IA; -Landroid/text/HtmlToSpannedConverter$Underline; -Landroid/text/HtmlToSpannedConverter; -Landroid/text/Hyphenator; -Landroid/text/InputFilter$LengthFilter; -Landroid/text/InputFilter; -Landroid/text/InputType; -Landroid/text/Layout$$ExternalSyntheticLambda0; -Landroid/text/Layout$$ExternalSyntheticLambda1; -Landroid/text/Layout$$ExternalSyntheticLambda2; -Landroid/text/Layout$$ExternalSyntheticLambda3; -Landroid/text/Layout$Alignment; -Landroid/text/Layout$Directions; -Landroid/text/Layout$Ellipsizer; -Landroid/text/Layout$HorizontalMeasurementProvider; -Landroid/text/Layout$SelectionRectangleConsumer; -Landroid/text/Layout$SpannedEllipsizer; -Landroid/text/Layout$TabStops; -Landroid/text/Layout$TextInclusionStrategy; -Landroid/text/Layout; -Landroid/text/MeasuredParagraph$StyleRunCallback; -Landroid/text/MeasuredParagraph; -Landroid/text/NoCopySpan$Concrete; -Landroid/text/NoCopySpan; -Landroid/text/PackedIntVector; -Landroid/text/PackedObjectVector; -Landroid/text/ParcelableSpan; -Landroid/text/PrecomputedText$ParagraphInfo; -Landroid/text/PrecomputedText$Params$Builder; -Landroid/text/PrecomputedText$Params; -Landroid/text/PrecomputedText; -Landroid/text/Selection$END; -Landroid/text/Selection$MEMORY; -Landroid/text/Selection$MemoryTextWatcher; -Landroid/text/Selection$PositionIterator; -Landroid/text/Selection$START; -Landroid/text/Selection; -Landroid/text/SpanSet; -Landroid/text/SpanWatcher; -Landroid/text/Spannable$Factory; -Landroid/text/Spannable; -Landroid/text/SpannableString; -Landroid/text/SpannableStringBuilder; -Landroid/text/SpannableStringInternal; -Landroid/text/Spanned; -Landroid/text/SpannedString; -Landroid/text/StaticLayout$Builder; -Landroid/text/StaticLayout$LineBreaks; -Landroid/text/StaticLayout-IA; -Landroid/text/StaticLayout; -Landroid/text/TextDirectionHeuristic; -Landroid/text/TextDirectionHeuristics$AnyStrong; -Landroid/text/TextDirectionHeuristics$FirstStrong; -Landroid/text/TextDirectionHeuristics$TextDirectionAlgorithm; -Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicImpl; -Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicInternal; -Landroid/text/TextDirectionHeuristics$TextDirectionHeuristicLocale; -Landroid/text/TextDirectionHeuristics; -Landroid/text/TextFlags; -Landroid/text/TextLine$DecorationInfo-IA; -Landroid/text/TextLine$DecorationInfo; -Landroid/text/TextLine$LineInfo; -Landroid/text/TextLine; -Landroid/text/TextPaint; -Landroid/text/TextShaper$GlyphsConsumer; -Landroid/text/TextUtils$1; -Landroid/text/TextUtils$EllipsizeCallback; -Landroid/text/TextUtils$SimpleStringSplitter; -Landroid/text/TextUtils$StringSplitter; -Landroid/text/TextUtils$StringWithRemovedChars; -Landroid/text/TextUtils$TruncateAt; -Landroid/text/TextUtils; -Landroid/text/TextWatcher; -Landroid/text/format/DateFormat; -Landroid/text/format/DateIntervalFormat; -Landroid/text/format/DateTimeFormat$FormatterCache; -Landroid/text/format/DateTimeFormat; -Landroid/text/format/DateUtils; -Landroid/text/format/DateUtilsBridge; -Landroid/text/format/Formatter$BytesResult; -Landroid/text/format/Formatter$RoundedBytesResult; -Landroid/text/format/Formatter; -Landroid/text/format/RelativeDateTimeFormatter$FormatterCache; -Landroid/text/format/RelativeDateTimeFormatter; -Landroid/text/format/Time$TimeCalculator; -Landroid/text/format/Time; -Landroid/text/format/TimeFormatter; -Landroid/text/format/TimeMigrationUtils; -Landroid/text/method/AllCapsTransformationMethod; -Landroid/text/method/ArrowKeyMovementMethod; -Landroid/text/method/BaseKeyListener$1; -Landroid/text/method/BaseKeyListener; -Landroid/text/method/BaseMovementMethod; -Landroid/text/method/DateKeyListener; -Landroid/text/method/DateTimeKeyListener; -Landroid/text/method/DialerKeyListener; -Landroid/text/method/DigitsKeyListener; -Landroid/text/method/KeyListener; -Landroid/text/method/LinkMovementMethod; -Landroid/text/method/MetaKeyKeyListener; -Landroid/text/method/MovementMethod; -Landroid/text/method/MultiTapKeyListener; -Landroid/text/method/NumberKeyListener; -Landroid/text/method/OffsetMapping$TextUpdate; -Landroid/text/method/OffsetMapping; -Landroid/text/method/PasswordTransformationMethod; -Landroid/text/method/QwertyKeyListener$Replaced; -Landroid/text/method/QwertyKeyListener; -Landroid/text/method/ReplacementTransformationMethod$ReplacementCharSequence; -Landroid/text/method/ReplacementTransformationMethod$SpannedReplacementCharSequence; -Landroid/text/method/ReplacementTransformationMethod; -Landroid/text/method/ScrollingMovementMethod; -Landroid/text/method/SingleLineTransformationMethod; -Landroid/text/method/TextKeyListener$Capitalize; -Landroid/text/method/TextKeyListener$NullKeyListener; -Landroid/text/method/TextKeyListener$SettingsObserver; -Landroid/text/method/TextKeyListener; -Landroid/text/method/TimeKeyListener; -Landroid/text/method/Touch$DragState; -Landroid/text/method/Touch; -Landroid/text/method/TransformationMethod2; -Landroid/text/method/TransformationMethod; -Landroid/text/method/WordIterator; -Landroid/text/style/AbsoluteSizeSpan; -Landroid/text/style/AccessibilityClickableSpan$1; -Landroid/text/style/AccessibilityClickableSpan; -Landroid/text/style/AccessibilityReplacementSpan$1; -Landroid/text/style/AccessibilityReplacementSpan; -Landroid/text/style/AccessibilityURLSpan; -Landroid/text/style/AlignmentSpan$Standard; -Landroid/text/style/AlignmentSpan; -Landroid/text/style/BackgroundColorSpan; -Landroid/text/style/BulletSpan; -Landroid/text/style/CharacterStyle$Passthrough; -Landroid/text/style/CharacterStyle; -Landroid/text/style/ClickableSpan; -Landroid/text/style/DrawableMarginSpan; -Landroid/text/style/DynamicDrawableSpan; -Landroid/text/style/EasyEditSpan; -Landroid/text/style/ForegroundColorSpan; -Landroid/text/style/ImageSpan; -Landroid/text/style/LeadingMarginSpan$LeadingMarginSpan2; -Landroid/text/style/LeadingMarginSpan$Standard; -Landroid/text/style/LeadingMarginSpan; -Landroid/text/style/LineBackgroundSpan$Standard; -Landroid/text/style/LineBackgroundSpan; -Landroid/text/style/LineBreakConfigSpan$1; -Landroid/text/style/LineBreakConfigSpan; -Landroid/text/style/LineHeightSpan$Standard; -Landroid/text/style/LineHeightSpan$WithDensity; -Landroid/text/style/LineHeightSpan; -Landroid/text/style/LocaleSpan; -Landroid/text/style/MetricAffectingSpan$Passthrough; -Landroid/text/style/MetricAffectingSpan; -Landroid/text/style/ParagraphStyle; -Landroid/text/style/QuoteSpan; -Landroid/text/style/RelativeSizeSpan; -Landroid/text/style/ReplacementSpan; -Landroid/text/style/ScaleXSpan; -Landroid/text/style/SpellCheckSpan; -Landroid/text/style/StrikethroughSpan; -Landroid/text/style/StyleSpan; -Landroid/text/style/SubscriptSpan; -Landroid/text/style/SuggestionRangeSpan$1; -Landroid/text/style/SuggestionRangeSpan; -Landroid/text/style/SuggestionSpan$1; -Landroid/text/style/SuggestionSpan; -Landroid/text/style/SuperscriptSpan; -Landroid/text/style/TabStopSpan; -Landroid/text/style/TextAppearanceSpan; -Landroid/text/style/TtsSpan$Builder; -Landroid/text/style/TtsSpan$MeasureBuilder; -Landroid/text/style/TtsSpan$SemioticClassBuilder; -Landroid/text/style/TtsSpan$TelephoneBuilder; -Landroid/text/style/TtsSpan$VerbatimBuilder; -Landroid/text/style/TtsSpan; -Landroid/text/style/TypefaceSpan; -Landroid/text/style/URLSpan; -Landroid/text/style/UnderlineSpan; -Landroid/text/style/UpdateAppearance; -Landroid/text/style/UpdateLayout; -Landroid/text/style/WrapTogetherSpan; -Landroid/text/util/LinkSpec; -Landroid/text/util/Linkify$$ExternalSyntheticLambda0; -Landroid/text/util/Linkify$1; -Landroid/text/util/Linkify$2; -Landroid/text/util/Linkify$3; -Landroid/text/util/Linkify$4; -Landroid/text/util/Linkify$MatchFilter; -Landroid/text/util/Linkify$TransformFilter; -Landroid/text/util/Linkify; -Landroid/text/util/Rfc822Token; -Landroid/text/util/Rfc822Tokenizer; -Landroid/timezone/CountryTimeZones$OffsetResult; -Landroid/timezone/CountryTimeZones$TimeZoneMapping; -Landroid/timezone/CountryTimeZones; -Landroid/timezone/TelephonyLookup; -Landroid/timezone/TelephonyNetwork; -Landroid/timezone/TelephonyNetworkFinder; -Landroid/timezone/TimeZoneFinder; -Landroid/tracing/Flags; -Landroid/tracing/perfetto/CreateIncrementalStateArgs; -Landroid/tracing/perfetto/CreateTlsStateArgs; -Landroid/tracing/perfetto/DataSource; -Landroid/tracing/perfetto/FlushCallbackArguments; -Landroid/tracing/perfetto/Producer; -Landroid/tracing/perfetto/StartCallbackArguments; -Landroid/tracing/perfetto/StopCallbackArguments; -Landroid/tracing/perfetto/TracingContext; -Landroid/transition/ArcMotion; -Landroid/transition/AutoTransition; -Landroid/transition/ChangeBounds$10; -Landroid/transition/ChangeBounds$1; -Landroid/transition/ChangeBounds$2; -Landroid/transition/ChangeBounds$3; -Landroid/transition/ChangeBounds$4; -Landroid/transition/ChangeBounds$5; -Landroid/transition/ChangeBounds$6; -Landroid/transition/ChangeBounds$7; -Landroid/transition/ChangeBounds$8; -Landroid/transition/ChangeBounds$9; -Landroid/transition/ChangeBounds$ViewBounds; -Landroid/transition/ChangeBounds; -Landroid/transition/ChangeClipBounds; -Landroid/transition/ChangeImageTransform$1; -Landroid/transition/ChangeImageTransform$2; -Landroid/transition/ChangeImageTransform; -Landroid/transition/ChangeScroll; -Landroid/transition/ChangeTransform$1; -Landroid/transition/ChangeTransform$2; -Landroid/transition/ChangeTransform; -Landroid/transition/CircularPropagation; -Landroid/transition/Explode; -Landroid/transition/Fade$1; -Landroid/transition/Fade$FadeAnimatorListener; -Landroid/transition/Fade; -Landroid/transition/PathMotion; -Landroid/transition/PatternPathMotion; -Landroid/transition/Recolor; -Landroid/transition/Scene; -Landroid/transition/Slide$1; -Landroid/transition/Slide$2; -Landroid/transition/Slide$3; -Landroid/transition/Slide$4; -Landroid/transition/Slide$5; -Landroid/transition/Slide$6; -Landroid/transition/Slide$CalculateSlide; -Landroid/transition/Slide$CalculateSlideHorizontal; -Landroid/transition/Slide$CalculateSlideVertical; -Landroid/transition/Slide; -Landroid/transition/Transition$1; -Landroid/transition/Transition$2; -Landroid/transition/Transition$3; -Landroid/transition/Transition$AnimationInfo; -Landroid/transition/Transition$EpicenterCallback; -Landroid/transition/Transition$TransitionListener; -Landroid/transition/Transition; -Landroid/transition/TransitionInflater; -Landroid/transition/TransitionListenerAdapter; -Landroid/transition/TransitionManager$MultiListener$1; -Landroid/transition/TransitionManager$MultiListener; -Landroid/transition/TransitionManager; -Landroid/transition/TransitionPropagation; -Landroid/transition/TransitionSet$1; -Landroid/transition/TransitionSet$TransitionSetListener; -Landroid/transition/TransitionSet; -Landroid/transition/TransitionUtils; -Landroid/transition/TransitionValues; -Landroid/transition/TransitionValuesMaps; -Landroid/transition/Visibility$1; -Landroid/transition/Visibility$DisappearListener; -Landroid/transition/Visibility$VisibilityInfo-IA; -Landroid/transition/Visibility$VisibilityInfo; -Landroid/transition/Visibility; -Landroid/transition/VisibilityPropagation; -Landroid/transparency/BinaryTransparencyManager; -Landroid/updatabledriver/UpdatableDriverProto$1; -Landroid/updatabledriver/UpdatableDriverProto$Denylist; -Landroid/updatabledriver/UpdatableDriverProto$DenylistOrBuilder; -Landroid/updatabledriver/UpdatableDriverProto$Denylists$Builder; -Landroid/updatabledriver/UpdatableDriverProto$Denylists; -Landroid/updatabledriver/UpdatableDriverProto$DenylistsOrBuilder; -Landroid/util/AndroidException; -Landroid/util/AndroidRuntimeException; -Landroid/util/ArrayMap$1; -Landroid/util/ArraySet$1; -Landroid/util/ArraySet; -Landroid/util/AtomicFile; -Landroid/util/AttributeSet; -Landroid/util/BackupUtils$BadVersionException; -Landroid/util/BackupUtils; -Landroid/util/Base64$Coder; -Landroid/util/Base64$Decoder; -Landroid/util/Base64$Encoder; -Landroid/util/Base64; -Landroid/util/Base64OutputStream; -Landroid/util/CharsetUtils; -Landroid/util/CloseGuard; -Landroid/util/ContainerHelpers; -Landroid/util/DataUnit$1; -Landroid/util/DataUnit$2; -Landroid/util/DataUnit$3; -Landroid/util/DataUnit$4; -Landroid/util/DataUnit$5; -Landroid/util/DataUnit$6; -Landroid/util/DataUnit$7; -Landroid/util/DataUnit$8; -Landroid/util/DataUnit; -Landroid/util/DebugUtils; -Landroid/util/DisplayMetrics; -Landroid/util/DisplayUtils; -Landroid/util/Dumpable; -Landroid/util/EmptyArray; -Landroid/util/EventLog$Event; -Landroid/util/EventLog; -Landroid/util/ExceptionUtils; -Landroid/util/FastImmutableArraySet$FastIterator; -Landroid/util/FastImmutableArraySet; -Landroid/util/FeatureFlagUtils; -Landroid/util/FloatProperty; -Landroid/util/Half; -Landroid/util/IconDrawableFactory; -Landroid/util/IndentingPrintWriter; -Landroid/util/IntArray; -Landroid/util/IntProperty; -Landroid/util/JsonReader$1; -Landroid/util/JsonReader; -Landroid/util/JsonScope; -Landroid/util/JsonToken; -Landroid/util/JsonWriter$1; -Landroid/util/JsonWriter; -Landroid/util/KeyValueListParser$IntValue; -Landroid/util/KeyValueListParser; -Landroid/util/KeyValueSettingObserver$SettingObserver; -Landroid/util/KeyValueSettingObserver; -Landroid/util/LauncherIcons; -Landroid/util/LocalLog$ReadOnlyLocalLog; -Landroid/util/LocalLog; -Landroid/util/Log$1; -Landroid/util/Log$ImmediateLogWriter; -Landroid/util/Log$PreloadHolder; -Landroid/util/Log$TerribleFailure; -Landroid/util/Log$TerribleFailureHandler; -Landroid/util/Log; -Landroid/util/LogPrinter; -Landroid/util/LogWriter; -Landroid/util/LongArray; -Landroid/util/LongArrayQueue; -Landroid/util/LongSparseArray$StringParcelling; -Landroid/util/LongSparseArray; -Landroid/util/LongSparseLongArray$Parcelling; -Landroid/util/LongSparseLongArray; -Landroid/util/LruCache; -Landroid/util/MalformedJsonException; -Landroid/util/MapCollections; -Landroid/util/MathUtils; -Landroid/util/MemoryIntArray$1; -Landroid/util/MemoryIntArray-IA; -Landroid/util/MemoryIntArray; -Landroid/util/MergedConfiguration$1; -Landroid/util/MergedConfiguration-IA; -Landroid/util/MergedConfiguration; -Landroid/util/MutableBoolean; -Landroid/util/MutableInt; -Landroid/util/MutableLong; -Landroid/util/NtpTrustedTime$TimeResult; -Landroid/util/NtpTrustedTime; -Landroid/util/PackageUtils; -Landroid/util/Pair; -Landroid/util/PathParser$PathData; -Landroid/util/PathParser; -Landroid/util/Patterns; -Landroid/util/Pools$Pool; -Landroid/util/Pools$SimplePool; -Landroid/util/Pools$SynchronizedPool; -Landroid/util/PrefixPrinter; -Landroid/util/PrintWriterPrinter; -Landroid/util/Printer; -Landroid/util/Property; -Landroid/util/Range; -Landroid/util/Rational; -Landroid/util/RecurrenceRule$1; -Landroid/util/RecurrenceRule$NonrecurringIterator; -Landroid/util/RecurrenceRule$RecurringIterator; -Landroid/util/RecurrenceRule; -Landroid/util/ReflectiveProperty; -Landroid/util/RotationUtils; -Landroid/util/Singleton; -Landroid/util/Size; -Landroid/util/SizeF$1; -Landroid/util/SizeF; -Landroid/util/Slog; -Landroid/util/SparseArray; -Landroid/util/SparseArrayMap; -Landroid/util/SparseBooleanArray; -Landroid/util/SparseDoubleArray; -Landroid/util/SparseIntArray; -Landroid/util/SparseLongArray; -Landroid/util/SparseSetArray; -Landroid/util/Spline$LinearSpline; -Landroid/util/Spline; -Landroid/util/StateSet; -Landroid/util/StringBuilderPrinter; -Landroid/util/SuperNotCalledException; -Landroid/util/SystemConfigFileCommitEventLogger; -Landroid/util/TimeFormatException; -Landroid/util/TimeUtils; -Landroid/util/TimedRemoteCaller; -Landroid/util/TimingLogger; -Landroid/util/TimingsTraceLog; -Landroid/util/TrustedTime; -Landroid/util/TypedValue; -Landroid/util/UtilConfig; -Landroid/util/Xml$Encoding; -Landroid/util/Xml; -Landroid/util/XmlPullAttributes; -Landroid/util/apk/ApkSignatureSchemeV2Verifier$VerifiedSigner; -Landroid/util/apk/ApkSignatureSchemeV2Verifier; -Landroid/util/apk/ApkSignatureSchemeV3Verifier$PlatformNotSupportedException; -Landroid/util/apk/ApkSignatureSchemeV3Verifier$VerifiedSigner; -Landroid/util/apk/ApkSignatureSchemeV3Verifier; -Landroid/util/apk/ApkSignatureSchemeV4Verifier$VerifiedSigner; -Landroid/util/apk/ApkSignatureSchemeV4Verifier; -Landroid/util/apk/ApkSignatureVerifier$SigningDetailsWithDigests; -Landroid/util/apk/ApkSignatureVerifier; -Landroid/util/apk/ApkSigningBlockUtils$1; -Landroid/util/apk/ApkSigningBlockUtils$MultipleDigestDataDigester; -Landroid/util/apk/ApkSigningBlockUtils$VerifiedProofOfRotation; -Landroid/util/apk/ApkSigningBlockUtils; -Landroid/util/apk/ByteBufferDataSource; -Landroid/util/apk/ByteBufferFactory; -Landroid/util/apk/DataDigester; -Landroid/util/apk/DataSource; -Landroid/util/apk/MemoryMappedFileDataSource; -Landroid/util/apk/SignatureInfo; -Landroid/util/apk/SignatureNotFoundException; -Landroid/util/apk/VerbatimX509Certificate; -Landroid/util/apk/VerityBuilder$BufferedDigester; -Landroid/util/apk/VerityBuilder$VerityResult; -Landroid/util/apk/VerityBuilder; -Landroid/util/apk/WrappedX509Certificate; -Landroid/util/apk/ZipUtils; -Landroid/util/jar/StrictJarFile$EntryIterator; -Landroid/util/jar/StrictJarFile$FDStream; -Landroid/util/jar/StrictJarFile$JarFileInputStream; -Landroid/util/jar/StrictJarFile$ZipInflaterInputStream; -Landroid/util/jar/StrictJarFile; -Landroid/util/jar/StrictJarManifest$Chunk; -Landroid/util/jar/StrictJarManifest; -Landroid/util/jar/StrictJarManifestReader; -Landroid/util/jar/StrictJarVerifier$VerifierEntry; -Landroid/util/jar/StrictJarVerifier; -Landroid/util/proto/EncodedBuffer; -Landroid/util/proto/ProtoInputStream; -Landroid/util/proto/ProtoOutputStream; -Landroid/util/proto/ProtoParseException; -Landroid/util/proto/ProtoStream; -Landroid/util/proto/ProtoUtils; -Landroid/util/proto/WireTypeMismatchException; -Landroid/view/AbsSavedState$1; -Landroid/view/AbsSavedState$2; -Landroid/view/AbsSavedState; -Landroid/view/AccessibilityInteractionController$AccessibilityNodePrefetcher; -Landroid/view/AccessibilityInteractionController$MessageHolder; -Landroid/view/AccessibilityInteractionController$PrivateHandler; -Landroid/view/AccessibilityInteractionController; -Landroid/view/AccessibilityIterators$AbstractTextSegmentIterator; -Landroid/view/AccessibilityIterators$CharacterTextSegmentIterator; -Landroid/view/AccessibilityIterators$ParagraphTextSegmentIterator; -Landroid/view/AccessibilityIterators$TextSegmentIterator; -Landroid/view/AccessibilityIterators$WordTextSegmentIterator; -Landroid/view/ActionMode$Callback2; -Landroid/view/ActionMode$Callback; -Landroid/view/ActionMode; -Landroid/view/ActionProvider$SubUiVisibilityListener; -Landroid/view/ActionProvider; -Landroid/view/AppTransitionAnimationSpec$1; -Landroid/view/AppTransitionAnimationSpec; -Landroid/view/AttachedSurfaceControl$OnBufferTransformHintChangedListener; -Landroid/view/AttachedSurfaceControl; -Landroid/view/BatchedInputEventReceiver$1; -Landroid/view/BatchedInputEventReceiver$BatchedInputRunnable; -Landroid/view/BatchedInputEventReceiver; -Landroid/view/Choreographer$1; -Landroid/view/Choreographer$2; -Landroid/view/Choreographer$3; -Landroid/view/Choreographer$4; -Landroid/view/Choreographer$CallbackQueue-IA; -Landroid/view/Choreographer$CallbackQueue; -Landroid/view/Choreographer$CallbackRecord-IA; -Landroid/view/Choreographer$CallbackRecord; -Landroid/view/Choreographer$FrameCallback; -Landroid/view/Choreographer$FrameData; -Landroid/view/Choreographer$FrameDisplayEventReceiver; -Landroid/view/Choreographer$FrameHandler; -Landroid/view/Choreographer$FrameTimeline; -Landroid/view/Choreographer$VsyncCallback; -Landroid/view/Choreographer-IA; -Landroid/view/Choreographer; -Landroid/view/CompositionSamplingListener; -Landroid/view/ContextMenu$ContextMenuInfo; -Landroid/view/ContextMenu; -Landroid/view/ContextThemeWrapper; -Landroid/view/CrossWindowBlurListeners$BlurEnabledListenerInternal; -Landroid/view/CrossWindowBlurListeners; -Landroid/view/CutoutSpecification$Parser; -Landroid/view/CutoutSpecification; -Landroid/view/Display$HdrCapabilities$1; -Landroid/view/Display$HdrCapabilities-IA; -Landroid/view/Display$HdrCapabilities; -Landroid/view/Display$HdrSdrRatioListenerWrapper; -Landroid/view/Display$Mode$1; -Landroid/view/Display$Mode-IA; -Landroid/view/Display$Mode; -Landroid/view/Display; -Landroid/view/DisplayAddress$Network$1; -Landroid/view/DisplayAddress$Network; -Landroid/view/DisplayAddress$Physical$1; -Landroid/view/DisplayAddress$Physical-IA; -Landroid/view/DisplayAddress$Physical; -Landroid/view/DisplayAddress; -Landroid/view/DisplayAdjustments; -Landroid/view/DisplayCutout$Bounds-IA; -Landroid/view/DisplayCutout$Bounds; -Landroid/view/DisplayCutout$CutoutPathParserInfo; -Landroid/view/DisplayCutout$ParcelableWrapper$1; -Landroid/view/DisplayCutout$ParcelableWrapper; -Landroid/view/DisplayCutout-IA; -Landroid/view/DisplayCutout; -Landroid/view/DisplayEventReceiver$FrameRateOverride; -Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; -Landroid/view/DisplayEventReceiver$VsyncEventData; -Landroid/view/DisplayEventReceiver; -Landroid/view/DisplayInfo$1; -Landroid/view/DisplayInfo-IA; -Landroid/view/DisplayInfo; -Landroid/view/DisplayShape$1; -Landroid/view/DisplayShape-IA; -Landroid/view/DisplayShape; -Landroid/view/DragEvent$1; -Landroid/view/DragEvent; -Landroid/view/FallbackEventHandler; -Landroid/view/FocusFinder$$ExternalSyntheticLambda0; -Landroid/view/FocusFinder$$ExternalSyntheticLambda1; -Landroid/view/FocusFinder$1; -Landroid/view/FocusFinder$FocusSorter$$ExternalSyntheticLambda0; -Landroid/view/FocusFinder$FocusSorter$$ExternalSyntheticLambda1; -Landroid/view/FocusFinder$FocusSorter; -Landroid/view/FocusFinder$UserSpecifiedFocusComparator$NextFocusGetter; -Landroid/view/FocusFinder$UserSpecifiedFocusComparator; -Landroid/view/FocusFinder-IA; -Landroid/view/FocusFinder; -Landroid/view/FrameMetrics; -Landroid/view/FrameMetricsObserver; -Landroid/view/FrameStats; -Landroid/view/GestureDetector$GestureHandler; -Landroid/view/GestureDetector$OnContextClickListener; -Landroid/view/GestureDetector$OnDoubleTapListener; -Landroid/view/GestureDetector$OnGestureListener; -Landroid/view/GestureDetector$SimpleOnGestureListener; -Landroid/view/GestureDetector; -Landroid/view/GhostView; -Landroid/view/Gravity; -Landroid/view/HandlerActionQueue$HandlerAction; -Landroid/view/HandlerActionQueue; -Landroid/view/HandwritingInitiator$HandwritableViewInfo; -Landroid/view/HandwritingInitiator$HandwritingAreaTracker; -Landroid/view/HandwritingInitiator$State-IA; -Landroid/view/HandwritingInitiator$State; -Landroid/view/HandwritingInitiator; -Landroid/view/HapticScrollFeedbackProvider; -Landroid/view/HdrRenderState; -Landroid/view/IAppTransitionAnimationSpecsFuture$Stub$Proxy; -Landroid/view/IAppTransitionAnimationSpecsFuture$Stub; -Landroid/view/IAppTransitionAnimationSpecsFuture; -Landroid/view/ICrossWindowBlurEnabledListener$Stub; -Landroid/view/ICrossWindowBlurEnabledListener; -Landroid/view/IDisplayChangeWindowController$Stub; -Landroid/view/IDisplayChangeWindowController; -Landroid/view/IDisplayFoldListener$Stub$Proxy; -Landroid/view/IDisplayFoldListener$Stub; -Landroid/view/IDisplayFoldListener; -Landroid/view/IDisplayWindowInsetsController$Stub$Proxy; -Landroid/view/IDisplayWindowInsetsController$Stub; -Landroid/view/IDisplayWindowInsetsController; -Landroid/view/IDisplayWindowListener$Stub$Proxy; -Landroid/view/IDisplayWindowListener$Stub; -Landroid/view/IDisplayWindowListener; -Landroid/view/IDockedStackListener$Stub$Proxy; -Landroid/view/IDockedStackListener$Stub; -Landroid/view/IDockedStackListener; -Landroid/view/IGraphicsStats$Stub$Proxy; -Landroid/view/IGraphicsStats$Stub; -Landroid/view/IGraphicsStats; -Landroid/view/IGraphicsStatsCallback$Stub$Proxy; -Landroid/view/IGraphicsStatsCallback$Stub; -Landroid/view/IGraphicsStatsCallback; -Landroid/view/IInputMonitorHost$Stub$Proxy; -Landroid/view/IInputMonitorHost$Stub; -Landroid/view/IInputMonitorHost; -Landroid/view/IOnKeyguardExitResult$Stub$Proxy; -Landroid/view/IOnKeyguardExitResult$Stub; -Landroid/view/IOnKeyguardExitResult; -Landroid/view/IPinnedTaskListener$Stub; -Landroid/view/IPinnedTaskListener; -Landroid/view/IRecentsAnimationController$Stub$Proxy; -Landroid/view/IRecentsAnimationController$Stub; -Landroid/view/IRecentsAnimationController; -Landroid/view/IRecentsAnimationRunner$Stub$Proxy; -Landroid/view/IRecentsAnimationRunner$Stub; -Landroid/view/IRecentsAnimationRunner; -Landroid/view/IRemoteAnimationFinishedCallback$Stub$Proxy; -Landroid/view/IRemoteAnimationFinishedCallback$Stub; -Landroid/view/IRemoteAnimationFinishedCallback; -Landroid/view/IRemoteAnimationRunner$Stub$Proxy; -Landroid/view/IRemoteAnimationRunner$Stub; -Landroid/view/IRemoteAnimationRunner; -Landroid/view/IRotationWatcher$Stub$Proxy; -Landroid/view/IRotationWatcher$Stub; -Landroid/view/IRotationWatcher; -Landroid/view/IScrollCaptureCallbacks$Stub$Proxy; -Landroid/view/IScrollCaptureCallbacks$Stub; -Landroid/view/IScrollCaptureCallbacks; -Landroid/view/IScrollCaptureResponseListener$Stub$Proxy; -Landroid/view/IScrollCaptureResponseListener$Stub; -Landroid/view/IScrollCaptureResponseListener; -Landroid/view/ISensitiveContentProtectionManager$Stub$Proxy; -Landroid/view/ISensitiveContentProtectionManager$Stub; -Landroid/view/ISensitiveContentProtectionManager; -Landroid/view/ISurfaceControlViewHost; -Landroid/view/ISurfaceControlViewHostParent$Stub; -Landroid/view/ISurfaceControlViewHostParent; -Landroid/view/ISystemGestureExclusionListener$Stub; -Landroid/view/ISystemGestureExclusionListener; -Landroid/view/IWallpaperVisibilityListener$Stub$Proxy; -Landroid/view/IWallpaperVisibilityListener$Stub; -Landroid/view/IWallpaperVisibilityListener; -Landroid/view/IWindow$Stub; -Landroid/view/IWindow; -Landroid/view/IWindowFocusObserver$Stub; -Landroid/view/IWindowFocusObserver; -Landroid/view/IWindowId$Stub$Proxy; -Landroid/view/IWindowId$Stub; -Landroid/view/IWindowId; -Landroid/view/IWindowManager$Stub$Proxy; -Landroid/view/IWindowManager$Stub; -Landroid/view/IWindowManager; -Landroid/view/IWindowSession$Stub$Proxy; -Landroid/view/IWindowSession$Stub; -Landroid/view/IWindowSession; -Landroid/view/IWindowSessionCallback$Stub$Proxy; -Landroid/view/IWindowSessionCallback$Stub; -Landroid/view/IWindowSessionCallback; -Landroid/view/ImeBackAnimationController; -Landroid/view/ImeFocusController$InputMethodManagerDelegate; -Landroid/view/ImeFocusController; -Landroid/view/ImeInsetsSourceConsumer; -Landroid/view/InflateException; -Landroid/view/InputApplicationHandle; -Landroid/view/InputChannel$1; -Landroid/view/InputChannel; -Landroid/view/InputDevice$1; -Landroid/view/InputDevice$MotionRange-IA; -Landroid/view/InputDevice$MotionRange; -Landroid/view/InputDevice$ViewBehavior; -Landroid/view/InputDevice-IA; -Landroid/view/InputDevice; -Landroid/view/InputEvent$1; -Landroid/view/InputEvent; -Landroid/view/InputEventAssigner; -Landroid/view/InputEventCompatProcessor; -Landroid/view/InputEventConsistencyVerifier; -Landroid/view/InputEventReceiver; -Landroid/view/InputEventSender$1; -Landroid/view/InputEventSender; -Landroid/view/InputMonitor$1; -Landroid/view/InputMonitor; -Landroid/view/InputQueue$Callback; -Landroid/view/InputQueue$FinishedInputEventCallback; -Landroid/view/InputQueue; -Landroid/view/InputWindowHandle; -Landroid/view/InsetsAnimationControlCallbacks; -Landroid/view/InsetsAnimationControlImpl$$ExternalSyntheticLambda0; -Landroid/view/InsetsAnimationControlImpl; -Landroid/view/InsetsAnimationControlRunner; -Landroid/view/InsetsAnimationThread; -Landroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda0; -Landroid/view/InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1; -Landroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0; -Landroid/view/InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1; -Landroid/view/InsetsAnimationThreadControlRunner$1; -Landroid/view/InsetsAnimationThreadControlRunner; -Landroid/view/InsetsController$$ExternalSyntheticLambda0; -Landroid/view/InsetsController$$ExternalSyntheticLambda10; -Landroid/view/InsetsController$$ExternalSyntheticLambda11; -Landroid/view/InsetsController$$ExternalSyntheticLambda12; -Landroid/view/InsetsController$$ExternalSyntheticLambda1; -Landroid/view/InsetsController$$ExternalSyntheticLambda2; -Landroid/view/InsetsController$$ExternalSyntheticLambda3; -Landroid/view/InsetsController$$ExternalSyntheticLambda4; -Landroid/view/InsetsController$$ExternalSyntheticLambda5; -Landroid/view/InsetsController$$ExternalSyntheticLambda6; -Landroid/view/InsetsController$$ExternalSyntheticLambda7; -Landroid/view/InsetsController$$ExternalSyntheticLambda8; -Landroid/view/InsetsController$$ExternalSyntheticLambda9; -Landroid/view/InsetsController$1; -Landroid/view/InsetsController$2; -Landroid/view/InsetsController$3; -Landroid/view/InsetsController$Host; -Landroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda0; -Landroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda1; -Landroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda2; -Landroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda3; -Landroid/view/InsetsController$InternalAnimationControlListener$$ExternalSyntheticLambda4; -Landroid/view/InsetsController$InternalAnimationControlListener$1; -Landroid/view/InsetsController$InternalAnimationControlListener; -Landroid/view/InsetsController$PendingControlRequest; -Landroid/view/InsetsController$RunningAnimation; -Landroid/view/InsetsController; -Landroid/view/InsetsFlags; -Landroid/view/InsetsFrameProvider$1; -Landroid/view/InsetsFrameProvider; -Landroid/view/InsetsResizeAnimationRunner; -Landroid/view/InsetsSource$1; -Landroid/view/InsetsSource; -Landroid/view/InsetsSourceConsumer; -Landroid/view/InsetsSourceControl$1; -Landroid/view/InsetsSourceControl$Array$1; -Landroid/view/InsetsSourceControl$Array; -Landroid/view/InsetsSourceControl; -Landroid/view/InsetsState$1; -Landroid/view/InsetsState$OnTraverseCallbacks; -Landroid/view/InsetsState; -Landroid/view/InternalInsetsAnimationController; -Landroid/view/KeyCharacterMap$1; -Landroid/view/KeyCharacterMap$FallbackAction; -Landroid/view/KeyCharacterMap$UnavailableException; -Landroid/view/KeyCharacterMap-IA; -Landroid/view/KeyCharacterMap; -Landroid/view/KeyEvent$1; -Landroid/view/KeyEvent$Callback; -Landroid/view/KeyEvent$DispatcherState; -Landroid/view/KeyEvent; -Landroid/view/LayoutInflater$BlinkLayout$1; -Landroid/view/LayoutInflater$BlinkLayout; -Landroid/view/LayoutInflater$Factory2; -Landroid/view/LayoutInflater$Factory; -Landroid/view/LayoutInflater$FactoryMerger; -Landroid/view/LayoutInflater$Filter; -Landroid/view/LayoutInflater; -Landroid/view/MagnificationSpec$1; -Landroid/view/MagnificationSpec; -Landroid/view/Menu; -Landroid/view/MenuInflater$InflatedOnMenuItemClickListener; -Landroid/view/MenuInflater$MenuState; -Landroid/view/MenuInflater; -Landroid/view/MenuItem$OnActionExpandListener; -Landroid/view/MenuItem$OnMenuItemClickListener; -Landroid/view/MenuItem; -Landroid/view/MotionEvent$1; -Landroid/view/MotionEvent$PointerCoords; -Landroid/view/MotionEvent$PointerProperties; -Landroid/view/MotionEvent; -Landroid/view/MotionPredictor; -Landroid/view/NativeVectorDrawableAnimator; -Landroid/view/NotificationHeaderView$1; -Landroid/view/NotificationHeaderView$HeaderTouchListener; -Landroid/view/NotificationHeaderView; -Landroid/view/NotificationTopLineView; -Landroid/view/OnReceiveContentListener; -Landroid/view/OrientationEventListener$SensorEventListenerImpl; -Landroid/view/OrientationEventListener; -Landroid/view/OrientationListener; -Landroid/view/PendingInsetsController$PendingRequest; -Landroid/view/PendingInsetsController; -Landroid/view/PixelCopy$1; -Landroid/view/PixelCopy$OnPixelCopyFinishedListener; -Landroid/view/PixelCopy; -Landroid/view/PointerIcon$1; -Landroid/view/PointerIcon; -Landroid/view/PrivacyIndicatorBounds$1; -Landroid/view/PrivacyIndicatorBounds; -Landroid/view/RemotableViewMethod; -Landroid/view/RemoteAccessibilityController$RemoteAccessibilityEmbeddedConnection; -Landroid/view/RemoteAccessibilityController; -Landroid/view/RemoteAnimationAdapter$1; -Landroid/view/RemoteAnimationAdapter; -Landroid/view/RemoteAnimationDefinition$1; -Landroid/view/RemoteAnimationDefinition$RemoteAnimationAdapterEntry$1; -Landroid/view/RemoteAnimationDefinition$RemoteAnimationAdapterEntry; -Landroid/view/RemoteAnimationDefinition; -Landroid/view/RemoteAnimationTarget$1; -Landroid/view/RemoteAnimationTarget; -Landroid/view/RenderNodeAnimator; -Landroid/view/RoundScrollbarRenderer; -Landroid/view/RoundedCorner$1; -Landroid/view/RoundedCorner; -Landroid/view/RoundedCorners$1; -Landroid/view/RoundedCorners; -Landroid/view/ScaleGestureDetector$1; -Landroid/view/ScaleGestureDetector$OnScaleGestureListener; -Landroid/view/ScaleGestureDetector$SimpleOnScaleGestureListener; -Landroid/view/ScaleGestureDetector; -Landroid/view/ScrollCaptureSearchResults$$ExternalSyntheticLambda0; -Landroid/view/ScrollCaptureSearchResults; -Landroid/view/ScrollFeedbackProvider; -Landroid/view/SearchEvent; -Landroid/view/SoundEffectConstants; -Landroid/view/SubMenu; -Landroid/view/Surface$1; -Landroid/view/Surface$CompatibleCanvas-IA; -Landroid/view/Surface$CompatibleCanvas; -Landroid/view/Surface$HwuiContext; -Landroid/view/Surface$OutOfResourcesException; -Landroid/view/Surface; -Landroid/view/SurfaceControl$1; -Landroid/view/SurfaceControl$Builder; -Landroid/view/SurfaceControl$CieXyz; -Landroid/view/SurfaceControl$DesiredDisplayModeSpecs; -Landroid/view/SurfaceControl$DisplayMode; -Landroid/view/SurfaceControl$DisplayPrimaries; -Landroid/view/SurfaceControl$DynamicDisplayInfo; -Landroid/view/SurfaceControl$IdleScreenRefreshRateConfig; -Landroid/view/SurfaceControl$JankData; -Landroid/view/SurfaceControl$OnJankDataListener; -Landroid/view/SurfaceControl$OnReparentListener; -Landroid/view/SurfaceControl$RefreshRateRange$1; -Landroid/view/SurfaceControl$RefreshRateRange; -Landroid/view/SurfaceControl$RefreshRateRanges; -Landroid/view/SurfaceControl$StaticDisplayInfo; -Landroid/view/SurfaceControl$Transaction$1; -Landroid/view/SurfaceControl$Transaction$2; -Landroid/view/SurfaceControl$Transaction; -Landroid/view/SurfaceControl$TransactionCommittedListener; -Landroid/view/SurfaceControl$TransactionStats; -Landroid/view/SurfaceControl$TrustedPresentationCallback; -Landroid/view/SurfaceControl$TrustedPresentationThresholds; -Landroid/view/SurfaceControl-IA; -Landroid/view/SurfaceControl; -Landroid/view/SurfaceControlHdrLayerInfoListener; -Landroid/view/SurfaceControlRegistry$DefaultReporter-IA; -Landroid/view/SurfaceControlRegistry$DefaultReporter; -Landroid/view/SurfaceControlRegistry$NoOpRegistry-IA; -Landroid/view/SurfaceControlRegistry$NoOpRegistry; -Landroid/view/SurfaceControlRegistry$Reporter; -Landroid/view/SurfaceControlRegistry-IA; -Landroid/view/SurfaceControlRegistry; -Landroid/view/SurfaceControlViewHost$SurfacePackage$1; -Landroid/view/SurfaceControlViewHost$SurfacePackage; -Landroid/view/SurfaceHolder$Callback2; -Landroid/view/SurfaceHolder$Callback; -Landroid/view/SurfaceHolder; -Landroid/view/SurfaceSession; -Landroid/view/SurfaceView$$ExternalSyntheticLambda0; -Landroid/view/SurfaceView$$ExternalSyntheticLambda1; -Landroid/view/SurfaceView$$ExternalSyntheticLambda2; -Landroid/view/SurfaceView$$ExternalSyntheticLambda3; -Landroid/view/SurfaceView$$ExternalSyntheticLambda4; -Landroid/view/SurfaceView$$ExternalSyntheticLambda5; -Landroid/view/SurfaceView$1; -Landroid/view/SurfaceView$2; -Landroid/view/SurfaceView$SurfaceViewPositionUpdateListener; -Landroid/view/SurfaceView$SyncBufferTransactionCallback-IA; -Landroid/view/SurfaceView$SyncBufferTransactionCallback; -Landroid/view/SurfaceView; -Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams$Builder; -Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams-IA; -Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams; -Landroid/view/SyncRtSurfaceTransactionApplier; -Landroid/view/TextureView$$ExternalSyntheticLambda0; -Landroid/view/TextureView$$ExternalSyntheticLambda1; -Landroid/view/TextureView$SurfaceTextureListener; -Landroid/view/TextureView; -Landroid/view/ThreadedRenderer$1$$ExternalSyntheticLambda0; -Landroid/view/ThreadedRenderer$1; -Landroid/view/ThreadedRenderer$DrawCallbacks; -Landroid/view/ThreadedRenderer$WebViewOverlayProvider-IA; -Landroid/view/ThreadedRenderer$WebViewOverlayProvider; -Landroid/view/ThreadedRenderer; -Landroid/view/TouchDelegate; -Landroid/view/TunnelModeEnabledListener; -Landroid/view/VelocityTracker; -Landroid/view/VerifiedInputEvent$1; -Landroid/view/VerifiedInputEvent; -Landroid/view/VerifiedKeyEvent$1; -Landroid/view/VerifiedKeyEvent; -Landroid/view/VerifiedMotionEvent$1; -Landroid/view/VerifiedMotionEvent; -Landroid/view/View$$ExternalSyntheticLambda0; -Landroid/view/View$$ExternalSyntheticLambda10; -Landroid/view/View$$ExternalSyntheticLambda11; -Landroid/view/View$$ExternalSyntheticLambda12; -Landroid/view/View$$ExternalSyntheticLambda13; -Landroid/view/View$$ExternalSyntheticLambda1; -Landroid/view/View$$ExternalSyntheticLambda2; -Landroid/view/View$$ExternalSyntheticLambda3; -Landroid/view/View$$ExternalSyntheticLambda4; -Landroid/view/View$$ExternalSyntheticLambda5; -Landroid/view/View$$ExternalSyntheticLambda7; -Landroid/view/View$$ExternalSyntheticLambda8; -Landroid/view/View$$ExternalSyntheticLambda9; -Landroid/view/View$10; -Landroid/view/View$11; -Landroid/view/View$12; -Landroid/view/View$13; -Landroid/view/View$1; -Landroid/view/View$2; -Landroid/view/View$3; -Landroid/view/View$4; -Landroid/view/View$5; -Landroid/view/View$6; -Landroid/view/View$7; -Landroid/view/View$8; -Landroid/view/View$9; -Landroid/view/View$AccessibilityDelegate; -Landroid/view/View$AttachInfo$Callbacks; -Landroid/view/View$AttachInfo$InvalidateInfo; -Landroid/view/View$AttachInfo; -Landroid/view/View$BaseSavedState$1; -Landroid/view/View$BaseSavedState; -Landroid/view/View$CheckForLongPress-IA; -Landroid/view/View$CheckForLongPress; -Landroid/view/View$CheckForTap-IA; -Landroid/view/View$CheckForTap; -Landroid/view/View$DeclaredOnClickListener; -Landroid/view/View$DragShadowBuilder; -Landroid/view/View$ForegroundInfo-IA; -Landroid/view/View$ForegroundInfo; -Landroid/view/View$ListenerInfo; -Landroid/view/View$MatchIdPredicate; -Landroid/view/View$MatchLabelForPredicate; -Landroid/view/View$MeasureSpec; -Landroid/view/View$OnApplyWindowInsetsListener; -Landroid/view/View$OnAttachStateChangeListener; -Landroid/view/View$OnClickListener; -Landroid/view/View$OnCreateContextMenuListener; -Landroid/view/View$OnDragListener; -Landroid/view/View$OnFocusChangeListener; -Landroid/view/View$OnGenericMotionListener; -Landroid/view/View$OnHoverListener; -Landroid/view/View$OnKeyListener; -Landroid/view/View$OnLayoutChangeListener; -Landroid/view/View$OnLongClickListener; -Landroid/view/View$OnScrollChangeListener; -Landroid/view/View$OnSystemUiVisibilityChangeListener; -Landroid/view/View$OnTouchListener; -Landroid/view/View$PerformClick-IA; -Landroid/view/View$PerformClick; -Landroid/view/View$ScrollabilityCache; -Landroid/view/View$SendAccessibilityEventThrottle; -Landroid/view/View$SendViewScrolledAccessibilityEvent; -Landroid/view/View$TintInfo; -Landroid/view/View$TooltipInfo-IA; -Landroid/view/View$TooltipInfo; -Landroid/view/View$TransformationInfo; -Landroid/view/View$UnsetPressedState-IA; -Landroid/view/View$UnsetPressedState; -Landroid/view/View$VisibilityChangeForAutofillHandler-IA; -Landroid/view/View$VisibilityChangeForAutofillHandler; -Landroid/view/View; -Landroid/view/ViewAnimationHostBridge; -Landroid/view/ViewAnimationUtils; -Landroid/view/ViewConfiguration; -Landroid/view/ViewCredentialHandler; -Landroid/view/ViewDebug$ExportedProperty; -Landroid/view/ViewDebug$FlagToString; -Landroid/view/ViewDebug$HierarchyHandler; -Landroid/view/ViewDebug$IntToString; -Landroid/view/ViewDebug$ViewMethodInvocationSerializationException; -Landroid/view/ViewDebug; -Landroid/view/ViewFrameInfo; -Landroid/view/ViewGroup$1; -Landroid/view/ViewGroup$2; -Landroid/view/ViewGroup$4; -Landroid/view/ViewGroup$ChildListForAccessibility; -Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture; -Landroid/view/ViewGroup$HoverTarget; -Landroid/view/ViewGroup$LayoutParams; -Landroid/view/ViewGroup$MarginLayoutParams; -Landroid/view/ViewGroup$OnHierarchyChangeListener; -Landroid/view/ViewGroup$TouchTarget; -Landroid/view/ViewGroup$ViewLocationHolder; -Landroid/view/ViewGroup; -Landroid/view/ViewGroupOverlay; -Landroid/view/ViewHierarchyEncoder; -Landroid/view/ViewManager; -Landroid/view/ViewOutlineProvider$1; -Landroid/view/ViewOutlineProvider$2; -Landroid/view/ViewOutlineProvider$3; -Landroid/view/ViewOutlineProvider; -Landroid/view/ViewOverlay$OverlayViewGroup; -Landroid/view/ViewOverlay; -Landroid/view/ViewParent; -Landroid/view/ViewPropertyAnimator$1; -Landroid/view/ViewPropertyAnimator$2; -Landroid/view/ViewPropertyAnimator$3; -Landroid/view/ViewPropertyAnimator$AnimatorEventListener-IA; -Landroid/view/ViewPropertyAnimator$AnimatorEventListener; -Landroid/view/ViewPropertyAnimator$NameValuesHolder; -Landroid/view/ViewPropertyAnimator$PropertyBundle; -Landroid/view/ViewPropertyAnimator; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda0; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda10; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda11; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda12; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda13; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda14; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda15; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda16; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda17; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda18; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda1; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda2; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda3; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda4; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda5; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda6; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda7; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda8; -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda9; -Landroid/view/ViewRootImpl$1; -Landroid/view/ViewRootImpl$2; -Landroid/view/ViewRootImpl$3; -Landroid/view/ViewRootImpl$4; -Landroid/view/ViewRootImpl$5; -Landroid/view/ViewRootImpl$6; -Landroid/view/ViewRootImpl$7; -Landroid/view/ViewRootImpl$8; -Landroid/view/ViewRootImpl$9; -Landroid/view/ViewRootImpl$AccessibilityInteractionConnection; -Landroid/view/ViewRootImpl$AccessibilityInteractionConnectionManager; -Landroid/view/ViewRootImpl$ActivityConfigCallback; -Landroid/view/ViewRootImpl$AsyncInputStage; -Landroid/view/ViewRootImpl$CalledFromWrongThreadException; -Landroid/view/ViewRootImpl$ConfigChangedCallback; -Landroid/view/ViewRootImpl$ConsumeBatchedInputImmediatelyRunnable; -Landroid/view/ViewRootImpl$ConsumeBatchedInputRunnable; -Landroid/view/ViewRootImpl$EarlyPostImeInputStage; -Landroid/view/ViewRootImpl$GfxInfo; -Landroid/view/ViewRootImpl$HighContrastTextManager; -Landroid/view/ViewRootImpl$ImeInputStage; -Landroid/view/ViewRootImpl$InputMetricsListener; -Landroid/view/ViewRootImpl$InputStage; -Landroid/view/ViewRootImpl$InvalidateOnAnimationRunnable; -Landroid/view/ViewRootImpl$NativePostImeInputStage; -Landroid/view/ViewRootImpl$NativePreImeInputStage; -Landroid/view/ViewRootImpl$QueuedInputEvent-IA; -Landroid/view/ViewRootImpl$QueuedInputEvent; -Landroid/view/ViewRootImpl$SendWindowContentChangedAccessibilityEvent; -Landroid/view/ViewRootImpl$SurfaceChangedCallback; -Landroid/view/ViewRootImpl$SyntheticInputStage; -Landroid/view/ViewRootImpl$SyntheticJoystickHandler$JoystickAxesState; -Landroid/view/ViewRootImpl$SyntheticJoystickHandler; -Landroid/view/ViewRootImpl$SyntheticKeyboardHandler; -Landroid/view/ViewRootImpl$SyntheticTouchNavigationHandler$1; -Landroid/view/ViewRootImpl$SyntheticTouchNavigationHandler; -Landroid/view/ViewRootImpl$SyntheticTrackballHandler; -Landroid/view/ViewRootImpl$SystemUiVisibilityInfo; -Landroid/view/ViewRootImpl$TakenSurfaceHolder; -Landroid/view/ViewRootImpl$TrackballAxis; -Landroid/view/ViewRootImpl$TraversalRunnable; -Landroid/view/ViewRootImpl$UnhandledKeyManager-IA; -Landroid/view/ViewRootImpl$UnhandledKeyManager; -Landroid/view/ViewRootImpl$ViewPostImeInputStage; -Landroid/view/ViewRootImpl$ViewPreImeInputStage; -Landroid/view/ViewRootImpl$ViewRootHandler; -Landroid/view/ViewRootImpl$W; -Landroid/view/ViewRootImpl$WindowInputEventReceiver; -Landroid/view/ViewRootImpl; -Landroid/view/ViewRootInsetsControllerHost; -Landroid/view/ViewRootRectTracker$ViewInfo; -Landroid/view/ViewRootRectTracker; -Landroid/view/ViewStructure$HtmlInfo$Builder; -Landroid/view/ViewStructure$HtmlInfo; -Landroid/view/ViewStructure; -Landroid/view/ViewStub$OnInflateListener; -Landroid/view/ViewStub$ViewReplaceRunnable; -Landroid/view/ViewStub; -Landroid/view/ViewTraversalTracingStrings; -Landroid/view/ViewTreeObserver$CopyOnWriteArray$Access; -Landroid/view/ViewTreeObserver$CopyOnWriteArray; -Landroid/view/ViewTreeObserver$InternalInsetsInfo; -Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener; -Landroid/view/ViewTreeObserver$OnDrawListener; -Landroid/view/ViewTreeObserver$OnEnterAnimationCompleteListener; -Landroid/view/ViewTreeObserver$OnGlobalFocusChangeListener; -Landroid/view/ViewTreeObserver$OnGlobalLayoutListener; -Landroid/view/ViewTreeObserver$OnPreDrawListener; -Landroid/view/ViewTreeObserver$OnScrollChangedListener; -Landroid/view/ViewTreeObserver$OnTouchModeChangeListener; -Landroid/view/ViewTreeObserver$OnWindowAttachListener; -Landroid/view/ViewTreeObserver$OnWindowFocusChangeListener; -Landroid/view/ViewTreeObserver$OnWindowShownListener; -Landroid/view/ViewTreeObserver$OnWindowVisibilityChangeListener; -Landroid/view/ViewTreeObserver; -Landroid/view/Window$Callback; -Landroid/view/Window$DecorCallback; -Landroid/view/Window$OnContentApplyWindowInsetsListener; -Landroid/view/Window$OnFrameMetricsAvailableListener; -Landroid/view/Window$OnWindowDismissedCallback; -Landroid/view/Window$OnWindowSwipeDismissedCallback; -Landroid/view/Window$WindowControllerCallback; -Landroid/view/Window; -Landroid/view/WindowAnimationFrameStats$1; -Landroid/view/WindowAnimationFrameStats; -Landroid/view/WindowCallbacks; -Landroid/view/WindowContentFrameStats$1; -Landroid/view/WindowContentFrameStats; -Landroid/view/WindowId$1; -Landroid/view/WindowId; -Landroid/view/WindowInsets$Builder; -Landroid/view/WindowInsets$Side; -Landroid/view/WindowInsets$Type; -Landroid/view/WindowInsets; -Landroid/view/WindowInsetsAnimation$Bounds; -Landroid/view/WindowInsetsAnimation$Callback; -Landroid/view/WindowInsetsAnimation; -Landroid/view/WindowInsetsAnimationControlListener; -Landroid/view/WindowInsetsAnimationController; -Landroid/view/WindowInsetsController$OnControllableInsetsChangedListener; -Landroid/view/WindowInsetsController; -Landroid/view/WindowLayout; -Landroid/view/WindowLeaked; -Landroid/view/WindowManager$BadTokenException; -Landroid/view/WindowManager$InvalidDisplayException; -Landroid/view/WindowManager$LayoutParams$1; -Landroid/view/WindowManager$LayoutParams; -Landroid/view/WindowManager; -Landroid/view/WindowManagerGlobal$$ExternalSyntheticLambda0; -Landroid/view/WindowManagerGlobal$1; -Landroid/view/WindowManagerGlobal$2; -Landroid/view/WindowManagerGlobal$TrustedPresentationListener-IA; -Landroid/view/WindowManagerGlobal$TrustedPresentationListener; -Landroid/view/WindowManagerGlobal; -Landroid/view/WindowManagerImpl; -Landroid/view/WindowManagerPolicyConstants$PointerEventListener; -Landroid/view/WindowManagerPolicyConstants; -Landroid/view/WindowMetrics; -Landroid/view/WindowRelayoutResult; -Landroid/view/WindowlessWindowLayout; -Landroid/view/WindowlessWindowManager; -Landroid/view/accessibility/AccessibilityCache$AccessibilityNodeRefresher; -Landroid/view/accessibility/AccessibilityCache; -Landroid/view/accessibility/AccessibilityEvent$1; -Landroid/view/accessibility/AccessibilityEvent; -Landroid/view/accessibility/AccessibilityEventSource; -Landroid/view/accessibility/AccessibilityInteractionClient; -Landroid/view/accessibility/AccessibilityManager$$ExternalSyntheticLambda0; -Landroid/view/accessibility/AccessibilityManager$$ExternalSyntheticLambda1; -Landroid/view/accessibility/AccessibilityManager$$ExternalSyntheticLambda3; -Landroid/view/accessibility/AccessibilityManager$1$$ExternalSyntheticLambda0; -Landroid/view/accessibility/AccessibilityManager$1; -Landroid/view/accessibility/AccessibilityManager$AccessibilityPolicy; -Landroid/view/accessibility/AccessibilityManager$AccessibilityServicesStateChangeListener; -Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener; -Landroid/view/accessibility/AccessibilityManager$HighTextContrastChangeListener; -Landroid/view/accessibility/AccessibilityManager$MyCallback-IA; -Landroid/view/accessibility/AccessibilityManager$MyCallback; -Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener; -Landroid/view/accessibility/AccessibilityManager; -Landroid/view/accessibility/AccessibilityNodeIdManager; -Landroid/view/accessibility/AccessibilityNodeInfo$1; -Landroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction$1; -Landroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction; -Landroid/view/accessibility/AccessibilityNodeInfo$CollectionInfo; -Landroid/view/accessibility/AccessibilityNodeInfo$CollectionItemInfo; -Landroid/view/accessibility/AccessibilityNodeInfo$ExtraRenderingInfo; -Landroid/view/accessibility/AccessibilityNodeInfo$RangeInfo; -Landroid/view/accessibility/AccessibilityNodeInfo$TouchDelegateInfo$1; -Landroid/view/accessibility/AccessibilityNodeInfo$TouchDelegateInfo; -Landroid/view/accessibility/AccessibilityNodeInfo; -Landroid/view/accessibility/AccessibilityNodeProvider; -Landroid/view/accessibility/AccessibilityRecord; -Landroid/view/accessibility/AccessibilityRequestPreparer; -Landroid/view/accessibility/AccessibilityWindowAttributes$1; -Landroid/view/accessibility/AccessibilityWindowAttributes; -Landroid/view/accessibility/CaptioningManager$1; -Landroid/view/accessibility/CaptioningManager$CaptionStyle; -Landroid/view/accessibility/CaptioningManager$CaptioningChangeListener; -Landroid/view/accessibility/CaptioningManager$MyContentObserver; -Landroid/view/accessibility/CaptioningManager; -Landroid/view/accessibility/DirectAccessibilityConnection; -Landroid/view/accessibility/FeatureFlags; -Landroid/view/accessibility/FeatureFlagsImpl; -Landroid/view/accessibility/Flags; -Landroid/view/accessibility/IAccessibilityEmbeddedConnection; -Landroid/view/accessibility/IAccessibilityInteractionConnection$Stub$Proxy; -Landroid/view/accessibility/IAccessibilityInteractionConnection$Stub; -Landroid/view/accessibility/IAccessibilityInteractionConnection; -Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback$Stub$Proxy; -Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback$Stub; -Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback; -Landroid/view/accessibility/IAccessibilityManager$Stub$Proxy; -Landroid/view/accessibility/IAccessibilityManager$Stub; -Landroid/view/accessibility/IAccessibilityManager; -Landroid/view/accessibility/IAccessibilityManagerClient$Stub$Proxy; -Landroid/view/accessibility/IAccessibilityManagerClient$Stub; -Landroid/view/accessibility/IAccessibilityManagerClient; -Landroid/view/accessibility/WeakSparseArray$WeakReferenceWithId; -Landroid/view/accessibility/WeakSparseArray; -Landroid/view/animation/AccelerateDecelerateInterpolator; -Landroid/view/animation/AccelerateInterpolator; -Landroid/view/animation/AlphaAnimation; -Landroid/view/animation/Animation$1; -Landroid/view/animation/Animation$2; -Landroid/view/animation/Animation$3; -Landroid/view/animation/Animation$AnimationListener; -Landroid/view/animation/Animation$Description; -Landroid/view/animation/Animation$NoImagePreloadHolder; -Landroid/view/animation/Animation; -Landroid/view/animation/AnimationSet; -Landroid/view/animation/AnimationUtils$1; -Landroid/view/animation/AnimationUtils$AnimationState-IA; -Landroid/view/animation/AnimationUtils$AnimationState; -Landroid/view/animation/AnimationUtils; -Landroid/view/animation/AnticipateInterpolator; -Landroid/view/animation/AnticipateOvershootInterpolator; -Landroid/view/animation/BaseInterpolator; -Landroid/view/animation/BounceInterpolator; -Landroid/view/animation/ClipRectAnimation; -Landroid/view/animation/CycleInterpolator; -Landroid/view/animation/DecelerateInterpolator; -Landroid/view/animation/ExtendAnimation; -Landroid/view/animation/GridLayoutAnimationController; -Landroid/view/animation/Interpolator; -Landroid/view/animation/LayoutAnimationController; -Landroid/view/animation/LinearInterpolator; -Landroid/view/animation/OvershootInterpolator; -Landroid/view/animation/PathInterpolator; -Landroid/view/animation/RotateAnimation; -Landroid/view/animation/ScaleAnimation; -Landroid/view/animation/Transformation; -Landroid/view/animation/TranslateAnimation; -Landroid/view/autofill/AutofillClientController; -Landroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda0; -Landroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda1; -Landroid/view/autofill/AutofillFeatureFlags; -Landroid/view/autofill/AutofillId$1; -Landroid/view/autofill/AutofillId-IA; -Landroid/view/autofill/AutofillId; -Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda0; -Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda1; -Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda2; -Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda3; -Landroid/view/autofill/AutofillManager$$ExternalSyntheticLambda4; -Landroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient-IA; -Landroid/view/autofill/AutofillManager$AugmentedAutofillManagerClient; -Landroid/view/autofill/AutofillManager$AutofillCallback; -Landroid/view/autofill/AutofillManager$AutofillClient; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda10; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda11; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda13; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda14; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda16; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda18; -Landroid/view/autofill/AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda8; -Landroid/view/autofill/AutofillManager$AutofillManagerClient-IA; -Landroid/view/autofill/AutofillManager$AutofillManagerClient; -Landroid/view/autofill/AutofillManager$CompatibilityBridge; -Landroid/view/autofill/AutofillManager$TrackedViews; -Landroid/view/autofill/AutofillManager; -Landroid/view/autofill/AutofillManagerInternal; -Landroid/view/autofill/AutofillPopupWindow; -Landroid/view/autofill/AutofillValue$1; -Landroid/view/autofill/AutofillValue-IA; -Landroid/view/autofill/AutofillValue; -Landroid/view/autofill/Helper; -Landroid/view/autofill/IAugmentedAutofillManagerClient$Stub; -Landroid/view/autofill/IAugmentedAutofillManagerClient; -Landroid/view/autofill/IAutoFillManager$Stub$Proxy; -Landroid/view/autofill/IAutoFillManager$Stub; -Landroid/view/autofill/IAutoFillManager; -Landroid/view/autofill/IAutoFillManagerClient$Stub$Proxy; -Landroid/view/autofill/IAutoFillManagerClient$Stub; -Landroid/view/autofill/IAutoFillManagerClient; -Landroid/view/autofill/IAutofillWindowPresenter$Stub$Proxy; -Landroid/view/autofill/IAutofillWindowPresenter$Stub; -Landroid/view/autofill/IAutofillWindowPresenter; -Landroid/view/autofill/ParcelableMap$1; -Landroid/view/autofill/ParcelableMap; -Landroid/view/contentcapture/ContentCaptureCondition$1; -Landroid/view/contentcapture/ContentCaptureCondition; -Landroid/view/contentcapture/ContentCaptureContext$1; -Landroid/view/contentcapture/ContentCaptureContext$Builder; -Landroid/view/contentcapture/ContentCaptureContext; -Landroid/view/contentcapture/ContentCaptureEvent$1; -Landroid/view/contentcapture/ContentCaptureEvent; -Landroid/view/contentcapture/ContentCaptureHelper; -Landroid/view/contentcapture/ContentCaptureManager$ContentCaptureClient; -Landroid/view/contentcapture/ContentCaptureManager$LocalDataShareAdapterResourceManager-IA; -Landroid/view/contentcapture/ContentCaptureManager$LocalDataShareAdapterResourceManager; -Landroid/view/contentcapture/ContentCaptureManager$StrippedContext; -Landroid/view/contentcapture/ContentCaptureManager; -Landroid/view/contentcapture/ContentCaptureSession; -Landroid/view/contentcapture/ContentCaptureSessionId$1; -Landroid/view/contentcapture/ContentCaptureSessionId; -Landroid/view/contentcapture/DataRemovalRequest$1; -Landroid/view/contentcapture/DataRemovalRequest$LocusIdRequest; -Landroid/view/contentcapture/DataRemovalRequest; -Landroid/view/contentcapture/DataShareRequest$1; -Landroid/view/contentcapture/DataShareRequest; -Landroid/view/contentcapture/IContentCaptureDirectManager$Stub$Proxy; -Landroid/view/contentcapture/IContentCaptureDirectManager$Stub; -Landroid/view/contentcapture/IContentCaptureDirectManager; -Landroid/view/contentcapture/IContentCaptureManager$Stub$Proxy; -Landroid/view/contentcapture/IContentCaptureManager$Stub; -Landroid/view/contentcapture/IContentCaptureManager; -Landroid/view/contentcapture/IContentCaptureOptionsCallback$Stub; -Landroid/view/contentcapture/IContentCaptureOptionsCallback; -Landroid/view/contentcapture/IDataShareWriteAdapter$Stub; -Landroid/view/contentcapture/IDataShareWriteAdapter; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda0; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda10; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda11; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda12; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda13; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda1; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda2; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda3; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda4; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda5; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda6; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda8; -Landroid/view/contentcapture/MainContentCaptureSession$$ExternalSyntheticLambda9; -Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda0; -Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1; -Landroid/view/contentcapture/MainContentCaptureSession$SessionStateReceiver; -Landroid/view/contentcapture/MainContentCaptureSession; -Landroid/view/contentcapture/ViewNode$ViewNodeText; -Landroid/view/contentcapture/ViewNode$ViewStructureImpl; -Landroid/view/contentcapture/ViewNode; -Landroid/view/contentprotection/ContentProtectionEventProcessor; -Landroid/view/displayhash/DisplayHash$1; -Landroid/view/displayhash/DisplayHash; -Landroid/view/displayhash/DisplayHashManager; -Landroid/view/displayhash/DisplayHashResultCallback; -Landroid/view/flags/FeatureFlags; -Landroid/view/flags/FeatureFlagsImpl; -Landroid/view/flags/Flags; -Landroid/view/inputmethod/BaseInputConnection; -Landroid/view/inputmethod/CancellableHandwritingGesture; -Landroid/view/inputmethod/CompletionInfo$1; -Landroid/view/inputmethod/CompletionInfo; -Landroid/view/inputmethod/ComposingText; -Landroid/view/inputmethod/CorrectionInfo$1; -Landroid/view/inputmethod/CorrectionInfo; -Landroid/view/inputmethod/CursorAnchorInfo$1; -Landroid/view/inputmethod/CursorAnchorInfo$Builder; -Landroid/view/inputmethod/CursorAnchorInfo; -Landroid/view/inputmethod/DeleteGesture$1; -Landroid/view/inputmethod/DeleteGesture; -Landroid/view/inputmethod/DeleteRangeGesture$1; -Landroid/view/inputmethod/DeleteRangeGesture; -Landroid/view/inputmethod/DumpableInputConnection; -Landroid/view/inputmethod/EditorBoundsInfo$1; -Landroid/view/inputmethod/EditorBoundsInfo$Builder; -Landroid/view/inputmethod/EditorBoundsInfo; -Landroid/view/inputmethod/EditorInfo$1; -Landroid/view/inputmethod/EditorInfo; -Landroid/view/inputmethod/ExtractedText$1; -Landroid/view/inputmethod/ExtractedText; -Landroid/view/inputmethod/ExtractedTextRequest$1; -Landroid/view/inputmethod/ExtractedTextRequest; -Landroid/view/inputmethod/FeatureFlags; -Landroid/view/inputmethod/FeatureFlagsImpl; -Landroid/view/inputmethod/Flags; -Landroid/view/inputmethod/HandwritingGesture; -Landroid/view/inputmethod/IAccessibilityInputMethodSessionInvoker$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/IAccessibilityInputMethodSessionInvoker$$ExternalSyntheticLambda1; -Landroid/view/inputmethod/IAccessibilityInputMethodSessionInvoker; -Landroid/view/inputmethod/IInputMethodManagerGlobalInvoker; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda3; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda4; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda5; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda6; -Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda8; -Landroid/view/inputmethod/IInputMethodSessionInvoker; -Landroid/view/inputmethod/ImeTracker$1$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/ImeTracker$1; -Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda1; -Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda2; -Landroid/view/inputmethod/ImeTracker$Debug; -Landroid/view/inputmethod/ImeTracker$ImeJankTracker-IA; -Landroid/view/inputmethod/ImeTracker$ImeJankTracker; -Landroid/view/inputmethod/ImeTracker$ImeLatencyTracker-IA; -Landroid/view/inputmethod/ImeTracker$ImeLatencyTracker; -Landroid/view/inputmethod/ImeTracker$InputMethodJankContext; -Landroid/view/inputmethod/ImeTracker$InputMethodLatencyContext; -Landroid/view/inputmethod/ImeTracker$Token$1; -Landroid/view/inputmethod/ImeTracker$Token-IA; -Landroid/view/inputmethod/ImeTracker$Token; -Landroid/view/inputmethod/ImeTracker; -Landroid/view/inputmethod/InlineSuggestionsRequest$1; -Landroid/view/inputmethod/InlineSuggestionsRequest; -Landroid/view/inputmethod/InlineSuggestionsResponse$1; -Landroid/view/inputmethod/InlineSuggestionsResponse; -Landroid/view/inputmethod/InputBinding$1; -Landroid/view/inputmethod/InputBinding; -Landroid/view/inputmethod/InputConnection; -Landroid/view/inputmethod/InputConnectionWrapper; -Landroid/view/inputmethod/InputContentInfo$1; -Landroid/view/inputmethod/InputContentInfo; -Landroid/view/inputmethod/InputMethod$SessionCallback; -Landroid/view/inputmethod/InputMethod; -Landroid/view/inputmethod/InputMethodInfo$1; -Landroid/view/inputmethod/InputMethodInfo; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda1; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda2; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda3; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda4; -Landroid/view/inputmethod/InputMethodManager$$ExternalSyntheticLambda5; -Landroid/view/inputmethod/InputMethodManager$1; -Landroid/view/inputmethod/InputMethodManager$2; -Landroid/view/inputmethod/InputMethodManager$6; -Landroid/view/inputmethod/InputMethodManager$BindState; -Landroid/view/inputmethod/InputMethodManager$DelegateImpl-IA; -Landroid/view/inputmethod/InputMethodManager$DelegateImpl; -Landroid/view/inputmethod/InputMethodManager$FinishedInputEventCallback; -Landroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda0; -Landroid/view/inputmethod/InputMethodManager$H$$ExternalSyntheticLambda1; -Landroid/view/inputmethod/InputMethodManager$H; -Landroid/view/inputmethod/InputMethodManager$ImeInputEventSender; -Landroid/view/inputmethod/InputMethodManager$PendingEvent-IA; -Landroid/view/inputmethod/InputMethodManager$PendingEvent; -Landroid/view/inputmethod/InputMethodManager$ReportInputConnectionOpenedRunner; -Landroid/view/inputmethod/InputMethodManager; -Landroid/view/inputmethod/InputMethodManagerGlobal; -Landroid/view/inputmethod/InputMethodSession$EventCallback; -Landroid/view/inputmethod/InputMethodSession; -Landroid/view/inputmethod/InputMethodSubtype$1; -Landroid/view/inputmethod/InputMethodSubtype$InputMethodSubtypeBuilder; -Landroid/view/inputmethod/InputMethodSubtype; -Landroid/view/inputmethod/InputMethodSubtypeArray; -Landroid/view/inputmethod/InsertGesture$1; -Landroid/view/inputmethod/InsertGesture; -Landroid/view/inputmethod/InsertModeGesture$1; -Landroid/view/inputmethod/InsertModeGesture; -Landroid/view/inputmethod/JoinOrSplitGesture$1; -Landroid/view/inputmethod/JoinOrSplitGesture; -Landroid/view/inputmethod/ParcelableHandwritingGesture$1; -Landroid/view/inputmethod/ParcelableHandwritingGesture; -Landroid/view/inputmethod/PreviewableHandwritingGesture; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda11; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda12; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda16; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda1; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda24; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda25; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda27; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda28; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda36; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda37; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda39; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda40; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda42; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda50; -Landroid/view/inputmethod/RemoteInputConnectionImpl$$ExternalSyntheticLambda8; -Landroid/view/inputmethod/RemoteInputConnectionImpl$1; -Landroid/view/inputmethod/RemoteInputConnectionImpl$KnownAlwaysTrueEndBatchEditCache; -Landroid/view/inputmethod/RemoteInputConnectionImpl; -Landroid/view/inputmethod/RemoveSpaceGesture$1; -Landroid/view/inputmethod/RemoveSpaceGesture; -Landroid/view/inputmethod/SelectGesture$1; -Landroid/view/inputmethod/SelectGesture; -Landroid/view/inputmethod/SelectRangeGesture$1; -Landroid/view/inputmethod/SelectRangeGesture; -Landroid/view/inputmethod/SparseRectFArray$1; -Landroid/view/inputmethod/SparseRectFArray$SparseRectFArrayBuilder; -Landroid/view/inputmethod/SparseRectFArray; -Landroid/view/inputmethod/SurroundingText$1; -Landroid/view/inputmethod/SurroundingText; -Landroid/view/inputmethod/TextAppearanceInfo$1; -Landroid/view/inputmethod/TextAppearanceInfo$Builder; -Landroid/view/inputmethod/TextAppearanceInfo; -Landroid/view/inputmethod/TextAttribute$1; -Landroid/view/inputmethod/TextAttribute; -Landroid/view/inputmethod/TextSnapshot; -Landroid/view/inputmethod/ViewFocusParameterInfo; -Landroid/view/textclassifier/ConversationAction$1; -Landroid/view/textclassifier/ConversationAction$Builder; -Landroid/view/textclassifier/ConversationAction-IA; -Landroid/view/textclassifier/ConversationAction; -Landroid/view/textclassifier/ConversationActions$1; -Landroid/view/textclassifier/ConversationActions$Message$1; -Landroid/view/textclassifier/ConversationActions$Message$Builder; -Landroid/view/textclassifier/ConversationActions$Message-IA; -Landroid/view/textclassifier/ConversationActions$Message; -Landroid/view/textclassifier/ConversationActions$Request$1; -Landroid/view/textclassifier/ConversationActions$Request$Builder; -Landroid/view/textclassifier/ConversationActions$Request; -Landroid/view/textclassifier/ConversationActions-IA; -Landroid/view/textclassifier/ConversationActions; -Landroid/view/textclassifier/EntityConfidence$$ExternalSyntheticLambda0; -Landroid/view/textclassifier/EntityConfidence$1; -Landroid/view/textclassifier/EntityConfidence-IA; -Landroid/view/textclassifier/EntityConfidence; -Landroid/view/textclassifier/ExtrasUtils; -Landroid/view/textclassifier/Log; -Landroid/view/textclassifier/SelectionEvent$1; -Landroid/view/textclassifier/SelectionEvent; -Landroid/view/textclassifier/SelectionSessionLogger$SignatureParser; -Landroid/view/textclassifier/SelectionSessionLogger; -Landroid/view/textclassifier/SystemTextClassifier$BlockingCallback; -Landroid/view/textclassifier/SystemTextClassifier$ResponseReceiver-IA; -Landroid/view/textclassifier/SystemTextClassifier$ResponseReceiver; -Landroid/view/textclassifier/SystemTextClassifier; -Landroid/view/textclassifier/SystemTextClassifierMetadata$1; -Landroid/view/textclassifier/SystemTextClassifierMetadata; -Landroid/view/textclassifier/TextClassification$$ExternalSyntheticLambda0; -Landroid/view/textclassifier/TextClassification$1; -Landroid/view/textclassifier/TextClassification$Builder; -Landroid/view/textclassifier/TextClassification$Request$1; -Landroid/view/textclassifier/TextClassification$Request$Builder; -Landroid/view/textclassifier/TextClassification$Request; -Landroid/view/textclassifier/TextClassification-IA; -Landroid/view/textclassifier/TextClassification; -Landroid/view/textclassifier/TextClassificationConstants; -Landroid/view/textclassifier/TextClassificationContext$1; -Landroid/view/textclassifier/TextClassificationContext$Builder; -Landroid/view/textclassifier/TextClassificationContext-IA; -Landroid/view/textclassifier/TextClassificationContext; -Landroid/view/textclassifier/TextClassificationManager$$ExternalSyntheticLambda0; -Landroid/view/textclassifier/TextClassificationManager; -Landroid/view/textclassifier/TextClassificationSession$CleanerRunnable; -Landroid/view/textclassifier/TextClassificationSession$SelectionEventHelper; -Landroid/view/textclassifier/TextClassificationSession; -Landroid/view/textclassifier/TextClassificationSessionFactory; -Landroid/view/textclassifier/TextClassificationSessionId$1; -Landroid/view/textclassifier/TextClassificationSessionId; -Landroid/view/textclassifier/TextClassifier$1; -Landroid/view/textclassifier/TextClassifier$EntityConfig$1; -Landroid/view/textclassifier/TextClassifier$EntityConfig$Builder; -Landroid/view/textclassifier/TextClassifier$EntityConfig-IA; -Landroid/view/textclassifier/TextClassifier$EntityConfig; -Landroid/view/textclassifier/TextClassifier$Utils; -Landroid/view/textclassifier/TextClassifier; -Landroid/view/textclassifier/TextClassifierEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$Builder; -Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent-IA; -Landroid/view/textclassifier/TextClassifierEvent$ConversationActionsEvent; -Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent-IA; -Landroid/view/textclassifier/TextClassifierEvent$LanguageDetectionEvent; -Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent-IA; -Landroid/view/textclassifier/TextClassifierEvent$TextLinkifyEvent; -Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent$1; -Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent-IA; -Landroid/view/textclassifier/TextClassifierEvent$TextSelectionEvent; -Landroid/view/textclassifier/TextClassifierEvent-IA; -Landroid/view/textclassifier/TextClassifierEvent; -Landroid/view/textclassifier/TextLanguage$1; -Landroid/view/textclassifier/TextLanguage$Builder; -Landroid/view/textclassifier/TextLanguage$Request$1; -Landroid/view/textclassifier/TextLanguage$Request$Builder; -Landroid/view/textclassifier/TextLanguage$Request; -Landroid/view/textclassifier/TextLanguage; -Landroid/view/textclassifier/TextLinks$1; -Landroid/view/textclassifier/TextLinks$Builder; -Landroid/view/textclassifier/TextLinks$Request$1; -Landroid/view/textclassifier/TextLinks$Request; -Landroid/view/textclassifier/TextLinks$TextLink$1; -Landroid/view/textclassifier/TextLinks$TextLink; -Landroid/view/textclassifier/TextLinks$TextLinkSpan; -Landroid/view/textclassifier/TextLinks; -Landroid/view/textclassifier/TextSelection$1; -Landroid/view/textclassifier/TextSelection$Request$1; -Landroid/view/textclassifier/TextSelection$Request$Builder; -Landroid/view/textclassifier/TextSelection$Request; -Landroid/view/textclassifier/TextSelection; -Landroid/view/textservice/SentenceSuggestionsInfo$1; -Landroid/view/textservice/SentenceSuggestionsInfo; -Landroid/view/textservice/SpellCheckerInfo$1; -Landroid/view/textservice/SpellCheckerInfo; -Landroid/view/textservice/SpellCheckerSession$InternalListener; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListener; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$1; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionListenerImpl; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams$Builder; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams-IA; -Landroid/view/textservice/SpellCheckerSession$SpellCheckerSessionParams; -Landroid/view/textservice/SpellCheckerSession; -Landroid/view/textservice/SpellCheckerSubtype$1; -Landroid/view/textservice/SpellCheckerSubtype; -Landroid/view/textservice/SuggestionsInfo$1; -Landroid/view/textservice/SuggestionsInfo; -Landroid/view/textservice/TextInfo$1; -Landroid/view/textservice/TextInfo; -Landroid/view/textservice/TextServicesManager; -Landroid/view/translation/TranslationCapability$1; -Landroid/view/translation/TranslationCapability; -Landroid/view/translation/TranslationManager; -Landroid/view/translation/TranslationSpec$1; -Landroid/view/translation/TranslationSpec; -Landroid/view/translation/Translator$ServiceBinderReceiver$TimeoutException; -Landroid/view/translation/UiTranslationController; -Landroid/view/translation/UiTranslationManager; -Landroid/view/translation/UiTranslationSpec$1; -Landroid/view/translation/UiTranslationSpec; -Landroid/view/translation/ViewTranslationCallback; -Landroid/view/translation/ViewTranslationResponse$1; -Landroid/view/translation/ViewTranslationResponse; -Landroid/webkit/ConsoleMessage$MessageLevel; -Landroid/webkit/ConsoleMessage; -Landroid/webkit/CookieManager; -Landroid/webkit/CookieSyncManager; -Landroid/webkit/DownloadListener; -Landroid/webkit/FeatureFlags; -Landroid/webkit/FeatureFlagsImpl; -Landroid/webkit/FindAddress$ZipRange; -Landroid/webkit/FindAddress; -Landroid/webkit/Flags; -Landroid/webkit/GeolocationPermissions$Callback; -Landroid/webkit/GeolocationPermissions; -Landroid/webkit/HttpAuthHandler; -Landroid/webkit/IWebViewUpdateService$Stub$Proxy; -Landroid/webkit/IWebViewUpdateService$Stub; -Landroid/webkit/IWebViewUpdateService; -Landroid/webkit/JavascriptInterface; -Landroid/webkit/MimeTypeMap; -Landroid/webkit/PacProcessor; -Landroid/webkit/PermissionRequest; -Landroid/webkit/RenderProcessGoneDetail; -Landroid/webkit/ServiceWorkerClient; -Landroid/webkit/ServiceWorkerController; -Landroid/webkit/ServiceWorkerWebSettings; -Landroid/webkit/TokenBindingService; -Landroid/webkit/TracingController; -Landroid/webkit/URLUtil; -Landroid/webkit/UserPackage; -Landroid/webkit/ValueCallback; -Landroid/webkit/WebBackForwardList; -Landroid/webkit/WebChromeClient$CustomViewCallback; -Landroid/webkit/WebChromeClient; -Landroid/webkit/WebIconDatabase; -Landroid/webkit/WebMessage; -Landroid/webkit/WebMessagePort; -Landroid/webkit/WebResourceError; -Landroid/webkit/WebResourceRequest; -Landroid/webkit/WebResourceResponse; -Landroid/webkit/WebSettings$LayoutAlgorithm; -Landroid/webkit/WebSettings$PluginState; -Landroid/webkit/WebSettings$RenderPriority; -Landroid/webkit/WebSettings$ZoomDensity; -Landroid/webkit/WebSettings; -Landroid/webkit/WebStorage; -Landroid/webkit/WebSyncManager; -Landroid/webkit/WebView$FindListener; -Landroid/webkit/WebView$HitTestResult; -Landroid/webkit/WebView$PictureListener; -Landroid/webkit/WebView$PrivateAccess; -Landroid/webkit/WebView$VisualStateCallback; -Landroid/webkit/WebView; -Landroid/webkit/WebViewClient; -Landroid/webkit/WebViewDatabase; -Landroid/webkit/WebViewDelegate$1; -Landroid/webkit/WebViewDelegate$OnTraceEnabledChangeListener; -Landroid/webkit/WebViewDelegate; -Landroid/webkit/WebViewFactory$MissingWebViewPackageException; -Landroid/webkit/WebViewFactory$StartupTimestamps; -Landroid/webkit/WebViewFactory; -Landroid/webkit/WebViewFactoryProvider$Statics; -Landroid/webkit/WebViewFactoryProvider; -Landroid/webkit/WebViewLibraryLoader$1; -Landroid/webkit/WebViewLibraryLoader$RelroFileCreator; -Landroid/webkit/WebViewLibraryLoader; -Landroid/webkit/WebViewProvider$ScrollDelegate; -Landroid/webkit/WebViewProvider$ViewDelegate; -Landroid/webkit/WebViewProvider; -Landroid/webkit/WebViewProviderInfo$1; -Landroid/webkit/WebViewProviderInfo; -Landroid/webkit/WebViewProviderResponse$1; -Landroid/webkit/WebViewProviderResponse-IA; -Landroid/webkit/WebViewProviderResponse; -Landroid/webkit/WebViewRenderProcess; -Landroid/webkit/WebViewRenderProcessClient; -Landroid/webkit/WebViewUpdateManager; -Landroid/webkit/WebViewUpdateService; -Landroid/webkit/WebViewZygote; -Landroid/widget/AbsListView$1; -Landroid/widget/AbsListView$2; -Landroid/widget/AbsListView$3; -Landroid/widget/AbsListView$4; -Landroid/widget/AbsListView$AbsPositionScroller; -Landroid/widget/AbsListView$AdapterDataSetObserver; -Landroid/widget/AbsListView$CheckForKeyLongPress-IA; -Landroid/widget/AbsListView$CheckForKeyLongPress; -Landroid/widget/AbsListView$CheckForLongPress; -Landroid/widget/AbsListView$CheckForTap-IA; -Landroid/widget/AbsListView$CheckForTap; -Landroid/widget/AbsListView$DeviceConfigChangeListener-IA; -Landroid/widget/AbsListView$DeviceConfigChangeListener; -Landroid/widget/AbsListView$FlingRunnable$1; -Landroid/widget/AbsListView$FlingRunnable; -Landroid/widget/AbsListView$InputConnectionWrapper; -Landroid/widget/AbsListView$LayoutParams; -Landroid/widget/AbsListView$ListItemAccessibilityDelegate; -Landroid/widget/AbsListView$MultiChoiceModeListener; -Landroid/widget/AbsListView$MultiChoiceModeWrapper; -Landroid/widget/AbsListView$OnScrollListener; -Landroid/widget/AbsListView$PerformClick-IA; -Landroid/widget/AbsListView$PerformClick; -Landroid/widget/AbsListView$PositionScroller; -Landroid/widget/AbsListView$RecycleBin; -Landroid/widget/AbsListView$RecyclerListener; -Landroid/widget/AbsListView$SavedState$1; -Landroid/widget/AbsListView$SavedState; -Landroid/widget/AbsListView$SelectionBoundsAdjuster; -Landroid/widget/AbsListView$WindowRunnnable-IA; -Landroid/widget/AbsListView$WindowRunnnable; -Landroid/widget/AbsListView; -Landroid/widget/AbsSeekBar; -Landroid/widget/AbsSpinner$RecycleBin; -Landroid/widget/AbsSpinner$SavedState$1; -Landroid/widget/AbsSpinner$SavedState; -Landroid/widget/AbsSpinner; -Landroid/widget/AbsoluteLayout$LayoutParams; -Landroid/widget/AbsoluteLayout; -Landroid/widget/ActionMenuPresenter$1; -Landroid/widget/ActionMenuPresenter$2; -Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu; -Landroid/widget/ActionMenuPresenter$ActionMenuPopupCallback; -Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable; -Landroid/widget/ActionMenuPresenter$OverflowMenuButton$1; -Landroid/widget/ActionMenuPresenter$OverflowMenuButton; -Landroid/widget/ActionMenuPresenter$OverflowPopup; -Landroid/widget/ActionMenuPresenter$PopupPresenterCallback; -Landroid/widget/ActionMenuPresenter; -Landroid/widget/ActionMenuView$ActionMenuChildView; -Landroid/widget/ActionMenuView$ActionMenuPresenterCallback; -Landroid/widget/ActionMenuView$LayoutParams; -Landroid/widget/ActionMenuView$MenuBuilderCallback; -Landroid/widget/ActionMenuView$OnMenuItemClickListener; -Landroid/widget/ActionMenuView; -Landroid/widget/Adapter; -Landroid/widget/AdapterView$AdapterContextMenuInfo; -Landroid/widget/AdapterView$AdapterDataSetObserver; -Landroid/widget/AdapterView$OnItemClickListener; -Landroid/widget/AdapterView$OnItemLongClickListener; -Landroid/widget/AdapterView$OnItemSelectedListener; -Landroid/widget/AdapterView$SelectionNotifier; -Landroid/widget/AdapterView; -Landroid/widget/ArrayAdapter; -Landroid/widget/AutoCompleteTextView$$ExternalSyntheticLambda0; -Landroid/widget/AutoCompleteTextView$$ExternalSyntheticLambda1; -Landroid/widget/AutoCompleteTextView$DropDownItemClickListener-IA; -Landroid/widget/AutoCompleteTextView$DropDownItemClickListener; -Landroid/widget/AutoCompleteTextView$MyWatcher-IA; -Landroid/widget/AutoCompleteTextView$MyWatcher; -Landroid/widget/AutoCompleteTextView$PassThroughClickListener-IA; -Landroid/widget/AutoCompleteTextView$PassThroughClickListener; -Landroid/widget/AutoCompleteTextView$Validator; -Landroid/widget/AutoCompleteTextView; -Landroid/widget/BaseAdapter; -Landroid/widget/Button; -Landroid/widget/CheckBox; -Landroid/widget/Checkable; -Landroid/widget/CheckedTextView; -Landroid/widget/Chronometer$1; -Landroid/widget/Chronometer$OnChronometerTickListener; -Landroid/widget/Chronometer; -Landroid/widget/CompoundButton$OnCheckedChangeListener; -Landroid/widget/CompoundButton$SavedState$1; -Landroid/widget/CompoundButton$SavedState; -Landroid/widget/CompoundButton; -Landroid/widget/DateTimeView$ReceiverInfo$1; -Landroid/widget/DateTimeView$ReceiverInfo$2; -Landroid/widget/DateTimeView$ReceiverInfo; -Landroid/widget/DateTimeView; -Landroid/widget/DropDownListView; -Landroid/widget/EdgeEffect; -Landroid/widget/EditText; -Landroid/widget/Editor$$ExternalSyntheticLambda0; -Landroid/widget/Editor$$ExternalSyntheticLambda1; -Landroid/widget/Editor$$ExternalSyntheticLambda2; -Landroid/widget/Editor$1; -Landroid/widget/Editor$2; -Landroid/widget/Editor$3; -Landroid/widget/Editor$5; -Landroid/widget/Editor$AccessibilitySmartActions-IA; -Landroid/widget/Editor$AccessibilitySmartActions; -Landroid/widget/Editor$Blink-IA; -Landroid/widget/Editor$Blink; -Landroid/widget/Editor$CorrectionHighlighter; -Landroid/widget/Editor$CursorAnchorInfoNotifier-IA; -Landroid/widget/Editor$CursorAnchorInfoNotifier; -Landroid/widget/Editor$CursorController; -Landroid/widget/Editor$EasyEditDeleteListener; -Landroid/widget/Editor$EasyEditPopupWindow-IA; -Landroid/widget/Editor$EasyEditPopupWindow; -Landroid/widget/Editor$EditOperation$1; -Landroid/widget/Editor$EditOperation; -Landroid/widget/Editor$ErrorPopup; -Landroid/widget/Editor$HandleView-IA; -Landroid/widget/Editor$HandleView; -Landroid/widget/Editor$InputContentType; -Landroid/widget/Editor$InputMethodState; -Landroid/widget/Editor$InsertModeController; -Landroid/widget/Editor$InsertionHandleView$1; -Landroid/widget/Editor$InsertionHandleView; -Landroid/widget/Editor$InsertionPointCursorController$1; -Landroid/widget/Editor$InsertionPointCursorController; -Landroid/widget/Editor$MagnifierMotionAnimator; -Landroid/widget/Editor$PinnedPopupWindow; -Landroid/widget/Editor$PositionListener-IA; -Landroid/widget/Editor$PositionListener; -Landroid/widget/Editor$ProcessTextIntentActionsHandler-IA; -Landroid/widget/Editor$ProcessTextIntentActionsHandler; -Landroid/widget/Editor$SelectionHandleView; -Landroid/widget/Editor$SelectionModifierCursorController; -Landroid/widget/Editor$SpanController$1; -Landroid/widget/Editor$SpanController$2; -Landroid/widget/Editor$SpanController-IA; -Landroid/widget/Editor$SpanController; -Landroid/widget/Editor$SuggestionHelper$SuggestionSpanComparator-IA; -Landroid/widget/Editor$SuggestionHelper$SuggestionSpanComparator; -Landroid/widget/Editor$SuggestionHelper-IA; -Landroid/widget/Editor$SuggestionHelper; -Landroid/widget/Editor$SuggestionsPopupWindow; -Landroid/widget/Editor$TextRenderNode; -Landroid/widget/Editor$TextViewPositionListener; -Landroid/widget/Editor$UndoInputFilter; -Landroid/widget/Editor; -Landroid/widget/EditorTouchState; -Landroid/widget/FastScroller$1; -Landroid/widget/FastScroller$2; -Landroid/widget/FastScroller$3; -Landroid/widget/FastScroller$4; -Landroid/widget/FastScroller$5; -Landroid/widget/FastScroller$6; -Landroid/widget/FastScroller; -Landroid/widget/Filter$Delayer; -Landroid/widget/Filter$FilterListener; -Landroid/widget/Filter$FilterResults; -Landroid/widget/Filter$RequestArguments; -Landroid/widget/Filter$RequestHandler; -Landroid/widget/Filter$ResultsHandler-IA; -Landroid/widget/Filter$ResultsHandler; -Landroid/widget/Filter; -Landroid/widget/Filterable; -Landroid/widget/ForwardingListener; -Landroid/widget/FrameLayout$LayoutParams; -Landroid/widget/FrameLayout; -Landroid/widget/GridLayout$1; -Landroid/widget/GridLayout$2; -Landroid/widget/GridLayout$3; -Landroid/widget/GridLayout$4; -Landroid/widget/GridLayout$5; -Landroid/widget/GridLayout$6; -Landroid/widget/GridLayout$7$1; -Landroid/widget/GridLayout$7; -Landroid/widget/GridLayout$8; -Landroid/widget/GridLayout$Alignment; -Landroid/widget/GridLayout$Arc; -Landroid/widget/GridLayout$Assoc; -Landroid/widget/GridLayout$Axis$1; -Landroid/widget/GridLayout$Axis-IA; -Landroid/widget/GridLayout$Axis; -Landroid/widget/GridLayout$Bounds; -Landroid/widget/GridLayout$Interval; -Landroid/widget/GridLayout$LayoutParams; -Landroid/widget/GridLayout$MutableInt; -Landroid/widget/GridLayout$PackedMap-IA; -Landroid/widget/GridLayout$PackedMap; -Landroid/widget/GridLayout$Spec; -Landroid/widget/GridLayout; -Landroid/widget/HeaderViewListAdapter; -Landroid/widget/HorizontalScrollView$SavedState$1; -Landroid/widget/HorizontalScrollView$SavedState; -Landroid/widget/HorizontalScrollView; -Landroid/widget/ImageButton; -Landroid/widget/ImageView$ImageDrawableCallback; -Landroid/widget/ImageView$ScaleType; -Landroid/widget/ImageView; -Landroid/widget/LinearLayout$LayoutParams; -Landroid/widget/LinearLayout; -Landroid/widget/ListAdapter; -Landroid/widget/ListPopupWindow$ListSelectorHider-IA; -Landroid/widget/ListPopupWindow$ListSelectorHider; -Landroid/widget/ListPopupWindow$PopupDataSetObserver-IA; -Landroid/widget/ListPopupWindow$PopupDataSetObserver; -Landroid/widget/ListPopupWindow$PopupScrollListener-IA; -Landroid/widget/ListPopupWindow$PopupScrollListener; -Landroid/widget/ListPopupWindow$PopupTouchInterceptor-IA; -Landroid/widget/ListPopupWindow$PopupTouchInterceptor; -Landroid/widget/ListPopupWindow$ResizePopupRunnable-IA; -Landroid/widget/ListPopupWindow$ResizePopupRunnable; -Landroid/widget/ListPopupWindow; -Landroid/widget/ListView$ArrowScrollFocusResult-IA; -Landroid/widget/ListView$ArrowScrollFocusResult; -Landroid/widget/ListView$FixedViewInfo; -Landroid/widget/ListView$FocusSelector-IA; -Landroid/widget/ListView$FocusSelector; -Landroid/widget/ListView; -Landroid/widget/Magnifier$Builder; -Landroid/widget/Magnifier$InternalPopupWindow; -Landroid/widget/Magnifier; -Landroid/widget/MediaController$MediaPlayerControl; -Landroid/widget/MultiAutoCompleteTextView$Tokenizer; -Landroid/widget/MultiAutoCompleteTextView; -Landroid/widget/OverScroller$SplineOverScroller; -Landroid/widget/OverScroller; -Landroid/widget/PopupMenu$1; -Landroid/widget/PopupMenu$2; -Landroid/widget/PopupMenu$OnMenuItemClickListener; -Landroid/widget/PopupMenu; -Landroid/widget/PopupWindow$$ExternalSyntheticLambda0; -Landroid/widget/PopupWindow$$ExternalSyntheticLambda1; -Landroid/widget/PopupWindow$1; -Landroid/widget/PopupWindow$2; -Landroid/widget/PopupWindow$3; -Landroid/widget/PopupWindow$OnDismissListener; -Landroid/widget/PopupWindow$PopupBackgroundView; -Landroid/widget/PopupWindow$PopupDecorView$$ExternalSyntheticLambda0; -Landroid/widget/PopupWindow$PopupDecorView$$ExternalSyntheticLambda1; -Landroid/widget/PopupWindow$PopupDecorView$1$1; -Landroid/widget/PopupWindow$PopupDecorView$1; -Landroid/widget/PopupWindow$PopupDecorView$2; -Landroid/widget/PopupWindow$PopupDecorView$3; -Landroid/widget/PopupWindow$PopupDecorView$4; -Landroid/widget/PopupWindow$PopupDecorView; -Landroid/widget/PopupWindow; -Landroid/widget/ProgressBar$1; -Landroid/widget/ProgressBar$2; -Landroid/widget/ProgressBar$ProgressTintInfo-IA; -Landroid/widget/ProgressBar$ProgressTintInfo; -Landroid/widget/ProgressBar$RefreshData; -Landroid/widget/ProgressBar$RefreshProgressRunnable-IA; -Landroid/widget/ProgressBar$RefreshProgressRunnable; -Landroid/widget/ProgressBar$SavedState$1; -Landroid/widget/ProgressBar$SavedState-IA; -Landroid/widget/ProgressBar$SavedState; -Landroid/widget/ProgressBar; -Landroid/widget/QuickContactBadge; -Landroid/widget/RadioButton; -Landroid/widget/RadioGroup$OnCheckedChangeListener; -Landroid/widget/RadioGroup; -Landroid/widget/RatingBar; -Landroid/widget/RelativeLayout$DependencyGraph$Node; -Landroid/widget/RelativeLayout$DependencyGraph-IA; -Landroid/widget/RelativeLayout$DependencyGraph; -Landroid/widget/RelativeLayout$LayoutParams; -Landroid/widget/RelativeLayout$TopToBottomLeftToRightComparator; -Landroid/widget/RelativeLayout; -Landroid/widget/RemoteViews$$ExternalSyntheticLambda0; -Landroid/widget/RemoteViews$$ExternalSyntheticLambda1; -Landroid/widget/RemoteViews$$ExternalSyntheticLambda2; -Landroid/widget/RemoteViews$1; -Landroid/widget/RemoteViews$2; -Landroid/widget/RemoteViews$Action-IA; -Landroid/widget/RemoteViews$Action; -Landroid/widget/RemoteViews$ActionException; -Landroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0; -Landroid/widget/RemoteViews$ApplicationInfoCache; -Landroid/widget/RemoteViews$AsyncApplyTask; -Landroid/widget/RemoteViews$AttributeReflectionAction; -Landroid/widget/RemoteViews$BaseReflectionAction; -Landroid/widget/RemoteViews$BitmapCache; -Landroid/widget/RemoteViews$BitmapReflectionAction; -Landroid/widget/RemoteViews$ComplexUnitDimensionReflectionAction; -Landroid/widget/RemoteViews$DrawInstructions; -Landroid/widget/RemoteViews$HierarchyRootData; -Landroid/widget/RemoteViews$InteractionHandler; -Landroid/widget/RemoteViews$LayoutParamAction; -Landroid/widget/RemoteViews$MethodArgs; -Landroid/widget/RemoteViews$MethodKey; -Landroid/widget/RemoteViews$NightModeReflectionAction; -Landroid/widget/RemoteViews$OnViewAppliedListener; -Landroid/widget/RemoteViews$ReflectionAction; -Landroid/widget/RemoteViews$RemoteCollectionCache; -Landroid/widget/RemoteViews$RemoteCollectionItems$1; -Landroid/widget/RemoteViews$RemoteCollectionItems; -Landroid/widget/RemoteViews$RemoteResponse; -Landroid/widget/RemoteViews$RemoteView; -Landroid/widget/RemoteViews$RemoteViewsContextWrapper; -Landroid/widget/RemoteViews$RemoveFromParentAction; -Landroid/widget/RemoteViews$ResourceReflectionAction; -Landroid/widget/RemoteViews$RunnableAction; -Landroid/widget/RemoteViews$RuntimeAction; -Landroid/widget/RemoteViews$SetCompoundButtonCheckedAction; -Landroid/widget/RemoteViews$SetDrawInstructionAction; -Landroid/widget/RemoteViews$SetDrawableTint; -Landroid/widget/RemoteViews$SetEmptyView; -Landroid/widget/RemoteViews$SetIntTagAction; -Landroid/widget/RemoteViews$SetOnCheckedChangeResponse; -Landroid/widget/RemoteViews$SetOnClickResponse; -Landroid/widget/RemoteViews$SetOnStylusHandwritingResponse; -Landroid/widget/RemoteViews$SetPendingIntentTemplate; -Landroid/widget/RemoteViews$SetRadioGroupCheckedAction; -Landroid/widget/RemoteViews$SetRemoteCollectionItemListAdapterAction; -Landroid/widget/RemoteViews$SetRemoteInputsAction; -Landroid/widget/RemoteViews$SetRemoteViewsAdapterIntent; -Landroid/widget/RemoteViews$SetRippleDrawableColor; -Landroid/widget/RemoteViews$SetViewOutlinePreferredRadiusAction; -Landroid/widget/RemoteViews$TextViewDrawableAction; -Landroid/widget/RemoteViews$TextViewSizeAction; -Landroid/widget/RemoteViews$ViewContentNavigation; -Landroid/widget/RemoteViews$ViewGroupActionAdd$1; -Landroid/widget/RemoteViews$ViewGroupActionAdd; -Landroid/widget/RemoteViews$ViewGroupActionRemove$1; -Landroid/widget/RemoteViews$ViewGroupActionRemove; -Landroid/widget/RemoteViews$ViewPaddingAction; -Landroid/widget/RemoteViews$ViewTree; -Landroid/widget/RemoteViews; -Landroid/widget/RemoteViewsAdapter$AsyncRemoteAdapterAction; -Landroid/widget/RemoteViewsAdapter$RemoteAdapterConnectionCallback; -Landroid/widget/RemoteViewsAdapter; -Landroid/widget/RemoteViewsService$RemoteViewsFactory; -Landroid/widget/RemoteViewsService; -Landroid/widget/RtlSpacingHelper; -Landroid/widget/ScrollBarDrawable; -Landroid/widget/ScrollView$SavedState$1; -Landroid/widget/ScrollView$SavedState; -Landroid/widget/ScrollView; -Landroid/widget/Scroller$ViscousFluidInterpolator; -Landroid/widget/Scroller; -Landroid/widget/SectionIndexer; -Landroid/widget/SeekBar$OnSeekBarChangeListener; -Landroid/widget/SeekBar; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda10; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda11; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda12; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda2; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda3; -Landroid/widget/SelectionActionModeHelper$$ExternalSyntheticLambda8; -Landroid/widget/SelectionActionModeHelper$SelectionMetricsLogger; -Landroid/widget/SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable-IA; -Landroid/widget/SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable; -Landroid/widget/SelectionActionModeHelper$SelectionTracker; -Landroid/widget/SelectionActionModeHelper$TextClassificationHelper; -Landroid/widget/SelectionActionModeHelper; -Landroid/widget/SmartSelectSprite$$ExternalSyntheticLambda0; -Landroid/widget/SmartSelectSprite$$ExternalSyntheticLambda1; -Landroid/widget/SmartSelectSprite$$ExternalSyntheticLambda2; -Landroid/widget/SmartSelectSprite$RectangleList; -Landroid/widget/SmartSelectSprite; -Landroid/widget/Space; -Landroid/widget/SpellChecker$1; -Landroid/widget/SpellChecker$RemoveReason; -Landroid/widget/SpellChecker$SentenceIteratorWrapper; -Landroid/widget/SpellChecker$SpellParser-IA; -Landroid/widget/SpellChecker$SpellParser; -Landroid/widget/SpellChecker; -Landroid/widget/Spinner$1; -Landroid/widget/Spinner$DialogPopup-IA; -Landroid/widget/Spinner$DialogPopup; -Landroid/widget/Spinner$DropDownAdapter; -Landroid/widget/Spinner$DropdownPopup$1; -Landroid/widget/Spinner$DropdownPopup; -Landroid/widget/Spinner$SavedState$1; -Landroid/widget/Spinner$SavedState; -Landroid/widget/Spinner$SpinnerPopup; -Landroid/widget/Spinner; -Landroid/widget/SpinnerAdapter; -Landroid/widget/Switch$1; -Landroid/widget/Switch; -Landroid/widget/TableLayout$PassThroughHierarchyChangeListener; -Landroid/widget/TableLayout; -Landroid/widget/TableRow$ChildrenTracker; -Landroid/widget/TableRow; -Landroid/widget/TextClock$1; -Landroid/widget/TextClock$2; -Landroid/widget/TextClock$FormatChangeObserver; -Landroid/widget/TextClock; -Landroid/widget/TextView$$ExternalSyntheticLambda0; -Landroid/widget/TextView$$ExternalSyntheticLambda2; -Landroid/widget/TextView$$ExternalSyntheticLambda3; -Landroid/widget/TextView$$ExternalSyntheticLambda4; -Landroid/widget/TextView$$ExternalSyntheticLambda5; -Landroid/widget/TextView$$ExternalSyntheticLambda6; -Landroid/widget/TextView$$ExternalSyntheticLambda7; -Landroid/widget/TextView$1; -Landroid/widget/TextView$2; -Landroid/widget/TextView$3; -Landroid/widget/TextView$4; -Landroid/widget/TextView$BufferType; -Landroid/widget/TextView$ChangeWatcher-IA; -Landroid/widget/TextView$ChangeWatcher; -Landroid/widget/TextView$CharWrapper; -Landroid/widget/TextView$Drawables; -Landroid/widget/TextView$Marquee$1; -Landroid/widget/TextView$Marquee$2; -Landroid/widget/TextView$Marquee$3; -Landroid/widget/TextView$Marquee; -Landroid/widget/TextView$OnEditorActionListener; -Landroid/widget/TextView$SavedState$1; -Landroid/widget/TextView$SavedState-IA; -Landroid/widget/TextView$SavedState; -Landroid/widget/TextView$TextAppearanceAttributes-IA; -Landroid/widget/TextView$TextAppearanceAttributes; -Landroid/widget/TextView; -Landroid/widget/TextViewOnReceiveContentListener$InputConnectionInfo-IA; -Landroid/widget/TextViewOnReceiveContentListener$InputConnectionInfo; -Landroid/widget/TextViewOnReceiveContentListener; -Landroid/widget/TextViewTranslationCallback; -Landroid/widget/ThemedSpinnerAdapter; -Landroid/widget/Toast$Callback; -Landroid/widget/Toast$CallbackBinder$$ExternalSyntheticLambda0; -Landroid/widget/Toast$CallbackBinder$$ExternalSyntheticLambda1; -Landroid/widget/Toast$CallbackBinder-IA; -Landroid/widget/Toast$CallbackBinder; -Landroid/widget/Toast$TN$1; -Landroid/widget/Toast$TN; -Landroid/widget/Toast; -Landroid/widget/ToastPresenter; -Landroid/widget/ToggleButton; -Landroid/widget/Toolbar$1; -Landroid/widget/Toolbar$2; -Landroid/widget/Toolbar$ExpandedActionViewMenuPresenter; -Landroid/widget/Toolbar$LayoutParams; -Landroid/widget/Toolbar$OnMenuItemClickListener; -Landroid/widget/Toolbar$SavedState$1; -Landroid/widget/Toolbar$SavedState; -Landroid/widget/Toolbar; -Landroid/widget/ViewAnimator; -Landroid/widget/ViewFlipper$1; -Landroid/widget/ViewFlipper; -Landroid/widget/ViewSwitcher; -Landroid/widget/WrapperListAdapter; -Landroid/widget/flags/Flags; -Landroid/widget/inline/InlinePresentationSpec$1; -Landroid/widget/inline/InlinePresentationSpec$BaseBuilder; -Landroid/widget/inline/InlinePresentationSpec$Builder; -Landroid/widget/inline/InlinePresentationSpec; -Landroid/window/ActivityWindowInfo$1; -Landroid/window/ActivityWindowInfo; -Landroid/window/BackAnimationAdapter$1; -Landroid/window/BackAnimationAdapter; -Landroid/window/BackEvent; -Landroid/window/BackMotionEvent$1; -Landroid/window/BackMotionEvent; -Landroid/window/BackNavigationInfo$1; -Landroid/window/BackNavigationInfo; -Landroid/window/BackProgressAnimator$$ExternalSyntheticLambda0; -Landroid/window/BackProgressAnimator$1; -Landroid/window/BackProgressAnimator$ProgressCallback; -Landroid/window/BackProgressAnimator; -Landroid/window/BackTouchTracker$TouchTrackerState; -Landroid/window/BackTouchTracker; -Landroid/window/ClientWindowFrames$1; -Landroid/window/ClientWindowFrames-IA; -Landroid/window/ClientWindowFrames; -Landroid/window/CompatOnBackInvokedCallback; -Landroid/window/ConfigurationHelper; -Landroid/window/DisplayAreaAppearedInfo$1; -Landroid/window/DisplayAreaAppearedInfo; -Landroid/window/DisplayAreaInfo$1; -Landroid/window/DisplayAreaInfo; -Landroid/window/DisplayAreaOrganizer$1; -Landroid/window/DisplayAreaOrganizer; -Landroid/window/IDisplayAreaOrganizer$Stub$Proxy; -Landroid/window/IDisplayAreaOrganizer$Stub; -Landroid/window/IDisplayAreaOrganizer; -Landroid/window/IDisplayAreaOrganizerController$Stub$Proxy; -Landroid/window/IDisplayAreaOrganizerController$Stub; -Landroid/window/IDisplayAreaOrganizerController; -Landroid/window/IOnBackInvokedCallback$Stub$Proxy; -Landroid/window/IOnBackInvokedCallback$Stub; -Landroid/window/IOnBackInvokedCallback; -Landroid/window/IRemoteTransition$Stub$Proxy; -Landroid/window/IRemoteTransition$Stub; -Landroid/window/IRemoteTransition; -Landroid/window/IRemoteTransitionFinishedCallback; -Landroid/window/ISurfaceSyncGroup$Stub; -Landroid/window/ISurfaceSyncGroup; -Landroid/window/ISurfaceSyncGroupCompletedListener$Stub; -Landroid/window/ISurfaceSyncGroupCompletedListener; -Landroid/window/ITaskFragmentOrganizer$Stub$Proxy; -Landroid/window/ITaskFragmentOrganizer$Stub; -Landroid/window/ITaskFragmentOrganizer; -Landroid/window/ITaskFragmentOrganizerController$Stub; -Landroid/window/ITaskFragmentOrganizerController; -Landroid/window/ITaskOrganizer$Stub; -Landroid/window/ITaskOrganizer; -Landroid/window/ITaskOrganizerController$Stub$Proxy; -Landroid/window/ITaskOrganizerController$Stub; -Landroid/window/ITaskOrganizerController; -Landroid/window/ITransactionReadyCallback$Stub; -Landroid/window/ITransactionReadyCallback; -Landroid/window/ITransitionMetricsReporter; -Landroid/window/ITransitionPlayer$Stub; -Landroid/window/ITransitionPlayer; -Landroid/window/ITrustedPresentationListener$Stub; -Landroid/window/ITrustedPresentationListener; -Landroid/window/IWindowContainerToken$Stub$Proxy; -Landroid/window/IWindowContainerToken$Stub; -Landroid/window/IWindowContainerToken; -Landroid/window/IWindowContainerTransactionCallback$Stub; -Landroid/window/IWindowContainerTransactionCallback; -Landroid/window/IWindowOrganizerController$Stub$Proxy; -Landroid/window/IWindowOrganizerController$Stub; -Landroid/window/IWindowOrganizerController; -Landroid/window/ImeOnBackInvokedDispatcher$$ExternalSyntheticLambda0; -Landroid/window/ImeOnBackInvokedDispatcher$1; -Landroid/window/ImeOnBackInvokedDispatcher$2; -Landroid/window/ImeOnBackInvokedDispatcher$DefaultImeOnBackAnimationCallback; -Landroid/window/ImeOnBackInvokedDispatcher$ImeOnBackInvokedCallback; -Landroid/window/ImeOnBackInvokedDispatcher; -Landroid/window/InputTransferToken$1; -Landroid/window/InputTransferToken; -Landroid/window/OnBackAnimationCallback; -Landroid/window/OnBackInvokedCallback; -Landroid/window/OnBackInvokedCallbackInfo$1; -Landroid/window/OnBackInvokedCallbackInfo; -Landroid/window/OnBackInvokedDispatcher; -Landroid/window/ProxyOnBackInvokedDispatcher$$ExternalSyntheticLambda0; -Landroid/window/ProxyOnBackInvokedDispatcher; -Landroid/window/RemoteTransition$1; -Landroid/window/RemoteTransition; -Landroid/window/ScreenCapture$CaptureArgs$1; -Landroid/window/ScreenCapture$CaptureArgs$Builder; -Landroid/window/ScreenCapture$CaptureArgs; -Landroid/window/ScreenCapture$DisplayCaptureArgs; -Landroid/window/ScreenCapture$LayerCaptureArgs$Builder; -Landroid/window/ScreenCapture$LayerCaptureArgs; -Landroid/window/ScreenCapture$ScreenCaptureListener$1; -Landroid/window/ScreenCapture$ScreenCaptureListener; -Landroid/window/ScreenCapture$ScreenshotHardwareBuffer; -Landroid/window/ScreenCapture; -Landroid/window/SizeConfigurationBuckets$1; -Landroid/window/SizeConfigurationBuckets; -Landroid/window/SplashScreen$SplashScreenManagerGlobal$1; -Landroid/window/SplashScreen$SplashScreenManagerGlobal; -Landroid/window/SplashScreen; -Landroid/window/SplashScreenView$SplashScreenViewParcelable$1; -Landroid/window/SplashScreenView$SplashScreenViewParcelable; -Landroid/window/SplashScreenView; -Landroid/window/StartingWindowInfo$1; -Landroid/window/StartingWindowInfo; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda0; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda1; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda2; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda3; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda4; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda5; -Landroid/window/SurfaceSyncGroup$$ExternalSyntheticLambda6; -Landroid/window/SurfaceSyncGroup$1; -Landroid/window/SurfaceSyncGroup$2; -Landroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl-IA; -Landroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl; -Landroid/window/SurfaceSyncGroup$SurfaceViewFrameCallback; -Landroid/window/SurfaceSyncGroup; -Landroid/window/TaskAppearedInfo$1; -Landroid/window/TaskAppearedInfo; -Landroid/window/TaskFpsCallback; -Landroid/window/TaskFragmentOperation$1; -Landroid/window/TaskFragmentOperation; -Landroid/window/TaskFragmentOrganizer$1; -Landroid/window/TaskFragmentOrganizer; -Landroid/window/TaskFragmentOrganizerToken$1; -Landroid/window/TaskFragmentOrganizerToken; -Landroid/window/TaskFragmentTransaction$1; -Landroid/window/TaskFragmentTransaction; -Landroid/window/TaskOrganizer$1; -Landroid/window/TaskOrganizer; -Landroid/window/TaskSnapshot$1; -Landroid/window/TaskSnapshot; -Landroid/window/TransitionFilter$1; -Landroid/window/TransitionFilter$Requirement$1; -Landroid/window/TransitionFilter$Requirement; -Landroid/window/TransitionFilter; -Landroid/window/TransitionInfo$1; -Landroid/window/TransitionInfo; -Landroid/window/WindowContainerToken$1; -Landroid/window/WindowContainerToken-IA; -Landroid/window/WindowContainerToken; -Landroid/window/WindowContainerTransaction$1; -Landroid/window/WindowContainerTransaction$Change$1; -Landroid/window/WindowContainerTransaction$Change; -Landroid/window/WindowContainerTransaction$HierarchyOp$1; -Landroid/window/WindowContainerTransaction$HierarchyOp$Builder; -Landroid/window/WindowContainerTransaction$HierarchyOp; -Landroid/window/WindowContainerTransaction; -Landroid/window/WindowContext; -Landroid/window/WindowContextController; -Landroid/window/WindowInfosListener$DisplayInfo; -Landroid/window/WindowInfosListener; -Landroid/window/WindowMetricsController$$ExternalSyntheticLambda0; -Landroid/window/WindowMetricsController; -Landroid/window/WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda0; -Landroid/window/WindowOnBackInvokedDispatcher$Checker; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda1; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda4; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef; -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper; -Landroid/window/WindowOnBackInvokedDispatcher; -Landroid/window/WindowOrganizer$1; -Landroid/window/WindowOrganizer; -Landroid/window/WindowProvider; -Landroid/window/WindowProviderService; -Landroid/window/WindowTokenClient; -Landroid/window/WindowTokenClientController; -Lcom/android/apex/ApexInfo; -Lcom/android/apex/ApexInfoList; -Lcom/android/apex/XmlParser; -Lcom/android/cellbroadcastservice/CellBroadcastStatsLog; -Lcom/android/framework/protobuf/AbstractMessageLite$Builder; -Lcom/android/framework/protobuf/AbstractMessageLite; -Lcom/android/framework/protobuf/AbstractParser; -Lcom/android/framework/protobuf/AbstractProtobufList; -Lcom/android/framework/protobuf/Android; -Lcom/android/framework/protobuf/ArrayDecoders$Registers; -Lcom/android/framework/protobuf/ArrayDecoders; -Lcom/android/framework/protobuf/CodedInputStream$ArrayDecoder; -Lcom/android/framework/protobuf/CodedInputStream; -Lcom/android/framework/protobuf/ExtensionRegistryFactory; -Lcom/android/framework/protobuf/ExtensionRegistryLite; -Lcom/android/framework/protobuf/ExtensionSchema; -Lcom/android/framework/protobuf/ExtensionSchemaLite; -Lcom/android/framework/protobuf/ExtensionSchemas; -Lcom/android/framework/protobuf/GeneratedMessageInfoFactory; -Lcom/android/framework/protobuf/GeneratedMessageLite$Builder; -Lcom/android/framework/protobuf/GeneratedMessageLite$DefaultInstanceBasedParser; -Lcom/android/framework/protobuf/GeneratedMessageLite$ExtendableMessage; -Lcom/android/framework/protobuf/GeneratedMessageLite$ExtendableMessageOrBuilder; -Lcom/android/framework/protobuf/GeneratedMessageLite$MethodToInvoke; -Lcom/android/framework/protobuf/GeneratedMessageLite$SerializedForm; -Lcom/android/framework/protobuf/GeneratedMessageLite; -Lcom/android/framework/protobuf/Internal$EnumVerifier; -Lcom/android/framework/protobuf/Internal$ProtobufList; -Lcom/android/framework/protobuf/Internal; -Lcom/android/framework/protobuf/InvalidProtocolBufferException$InvalidWireTypeException; -Lcom/android/framework/protobuf/InvalidProtocolBufferException; -Lcom/android/framework/protobuf/ListFieldSchema$ListFieldSchemaFull; -Lcom/android/framework/protobuf/ListFieldSchema$ListFieldSchemaLite; -Lcom/android/framework/protobuf/ListFieldSchema; -Lcom/android/framework/protobuf/ManifestSchemaFactory$1; -Lcom/android/framework/protobuf/ManifestSchemaFactory$CompositeMessageInfoFactory; -Lcom/android/framework/protobuf/ManifestSchemaFactory; -Lcom/android/framework/protobuf/MapFieldSchema; -Lcom/android/framework/protobuf/MapFieldSchemaLite; -Lcom/android/framework/protobuf/MapFieldSchemas; -Lcom/android/framework/protobuf/MessageInfo; -Lcom/android/framework/protobuf/MessageInfoFactory; -Lcom/android/framework/protobuf/MessageLite$Builder; -Lcom/android/framework/protobuf/MessageLite; -Lcom/android/framework/protobuf/MessageLiteOrBuilder; -Lcom/android/framework/protobuf/MessageSchema; -Lcom/android/framework/protobuf/MessageSetSchema; -Lcom/android/framework/protobuf/NewInstanceSchema; -Lcom/android/framework/protobuf/NewInstanceSchemaLite; -Lcom/android/framework/protobuf/NewInstanceSchemas; -Lcom/android/framework/protobuf/Parser; -Lcom/android/framework/protobuf/ProtoSyntax; -Lcom/android/framework/protobuf/Protobuf; -Lcom/android/framework/protobuf/ProtobufArrayList; -Lcom/android/framework/protobuf/RawMessageInfo; -Lcom/android/framework/protobuf/Schema; -Lcom/android/framework/protobuf/SchemaFactory; -Lcom/android/framework/protobuf/SchemaUtil; -Lcom/android/framework/protobuf/StructuralMessageInfo; -Lcom/android/framework/protobuf/UninitializedMessageException; -Lcom/android/framework/protobuf/UnknownFieldSchema; -Lcom/android/framework/protobuf/UnknownFieldSetLite; -Lcom/android/framework/protobuf/UnknownFieldSetLiteSchema; -Lcom/android/framework/protobuf/UnsafeUtil$1; -Lcom/android/framework/protobuf/UnsafeUtil$Android64MemoryAccessor; -Lcom/android/framework/protobuf/UnsafeUtil$JvmMemoryAccessor; -Lcom/android/framework/protobuf/UnsafeUtil$MemoryAccessor; -Lcom/android/framework/protobuf/UnsafeUtil; -Lcom/android/framework/protobuf/nano/CodedInputByteBufferNano; -Lcom/android/framework/protobuf/nano/CodedOutputByteBufferNano$OutOfSpaceException; -Lcom/android/framework/protobuf/nano/CodedOutputByteBufferNano; -Lcom/android/framework/protobuf/nano/InternalNano; -Lcom/android/framework/protobuf/nano/InvalidProtocolBufferNanoException; -Lcom/android/framework/protobuf/nano/MessageNano; -Lcom/android/framework/protobuf/nano/WireFormatNano; -Lcom/android/graphics/flags/Flags; -Lcom/android/graphics/hwui/flags/FeatureFlags; -Lcom/android/graphics/hwui/flags/FeatureFlagsImpl; -Lcom/android/graphics/hwui/flags/Flags; -Lcom/android/i18n/phonenumbers/AlternateFormatsCountryCodeSet; -Lcom/android/i18n/phonenumbers/AsYouTypeFormatter; -Lcom/android/i18n/phonenumbers/CountryCodeToRegionCodeMap; -Lcom/android/i18n/phonenumbers/MetadataLoader; -Lcom/android/i18n/phonenumbers/MissingMetadataException; -Lcom/android/i18n/phonenumbers/NumberParseException$ErrorType; -Lcom/android/i18n/phonenumbers/NumberParseException; -Lcom/android/i18n/phonenumbers/PhoneNumberMatch; -Lcom/android/i18n/phonenumbers/PhoneNumberMatcher$NumberGroupingChecker; -Lcom/android/i18n/phonenumbers/PhoneNumberMatcher$State; -Lcom/android/i18n/phonenumbers/PhoneNumberMatcher; -Lcom/android/i18n/phonenumbers/PhoneNumberToTimeZonesMapper$LazyHolder; -Lcom/android/i18n/phonenumbers/PhoneNumberToTimeZonesMapper; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$1; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$2; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$1; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$2; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$3$1; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$3; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$4$1; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency$4; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$MatchType; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberType; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil$ValidationResult; -Lcom/android/i18n/phonenumbers/PhoneNumberUtil; -Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat$Builder; -Lcom/android/i18n/phonenumbers/Phonemetadata$NumberFormat; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata$Builder; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadata; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadataCollection$Builder; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneMetadataCollection; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc$Builder; -Lcom/android/i18n/phonenumbers/Phonemetadata$PhoneNumberDesc; -Lcom/android/i18n/phonenumbers/Phonemetadata; -Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber; -Lcom/android/i18n/phonenumbers/Phonenumber; -Lcom/android/i18n/phonenumbers/ShortNumberInfo$ShortNumberCost; -Lcom/android/i18n/phonenumbers/ShortNumberInfo; -Lcom/android/i18n/phonenumbers/ShortNumbersRegionCodeSet; -Lcom/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder; -Lcom/android/i18n/phonenumbers/internal/MatcherApi; -Lcom/android/i18n/phonenumbers/internal/RegexBasedMatcher; -Lcom/android/i18n/phonenumbers/internal/RegexCache$LRUCache$1; -Lcom/android/i18n/phonenumbers/internal/RegexCache$LRUCache; -Lcom/android/i18n/phonenumbers/internal/RegexCache; -Lcom/android/i18n/phonenumbers/metadata/DefaultMetadataDependenciesProvider; -Lcom/android/i18n/phonenumbers/metadata/init/ClassPathResourceMetadataLoader; -Lcom/android/i18n/phonenumbers/metadata/init/MetadataParser; -Lcom/android/i18n/phonenumbers/metadata/source/BlockingMetadataBootstrappingGuard; -Lcom/android/i18n/phonenumbers/metadata/source/CompositeMetadataContainer; -Lcom/android/i18n/phonenumbers/metadata/source/FormattingMetadataSource; -Lcom/android/i18n/phonenumbers/metadata/source/FormattingMetadataSourceImpl; -Lcom/android/i18n/phonenumbers/metadata/source/MapBackedMetadataContainer$1; -Lcom/android/i18n/phonenumbers/metadata/source/MapBackedMetadataContainer$2; -Lcom/android/i18n/phonenumbers/metadata/source/MapBackedMetadataContainer$KeyProvider; -Lcom/android/i18n/phonenumbers/metadata/source/MapBackedMetadataContainer; -Lcom/android/i18n/phonenumbers/metadata/source/MetadataBootstrappingGuard; -Lcom/android/i18n/phonenumbers/metadata/source/MetadataContainer; -Lcom/android/i18n/phonenumbers/metadata/source/MetadataSource; -Lcom/android/i18n/phonenumbers/metadata/source/MetadataSourceImpl; -Lcom/android/i18n/phonenumbers/metadata/source/MultiFileModeFileNameProvider; -Lcom/android/i18n/phonenumbers/metadata/source/NonGeographicalEntityMetadataSource; -Lcom/android/i18n/phonenumbers/metadata/source/PhoneMetadataFileNameProvider; -Lcom/android/i18n/phonenumbers/metadata/source/RegionMetadataSource; -Lcom/android/i18n/phonenumbers/metadata/source/RegionMetadataSourceImpl; -Lcom/android/i18n/phonenumbers/prefixmapper/DefaultMapStorage; -Lcom/android/i18n/phonenumbers/prefixmapper/FlyweightMapStorage; -Lcom/android/i18n/phonenumbers/prefixmapper/MappingFileProvider; -Lcom/android/i18n/phonenumbers/prefixmapper/PhonePrefixMap; -Lcom/android/i18n/phonenumbers/prefixmapper/PhonePrefixMapStorageStrategy; -Lcom/android/i18n/phonenumbers/prefixmapper/PrefixFileReader; -Lcom/android/i18n/phonenumbers/prefixmapper/PrefixTimeZonesMap; -Lcom/android/i18n/system/AppSpecializationHooks; -Lcom/android/i18n/system/ZygoteHooks; -Lcom/android/i18n/timezone/CountryTimeZones$OffsetResult; -Lcom/android/i18n/timezone/CountryTimeZones$TimeZoneMapping; -Lcom/android/i18n/timezone/CountryTimeZones; -Lcom/android/i18n/timezone/CountryZonesFinder; -Lcom/android/i18n/timezone/DebugInfo$DebugEntry; -Lcom/android/i18n/timezone/DebugInfo; -Lcom/android/i18n/timezone/I18nModuleDebug; -Lcom/android/i18n/timezone/TelephonyLookup$TelephonyNetworkProcessor; -Lcom/android/i18n/timezone/TelephonyLookup$TelephonyNetworkValidator; -Lcom/android/i18n/timezone/TelephonyLookup$TelephonyNetworksExtractor; -Lcom/android/i18n/timezone/TelephonyLookup; -Lcom/android/i18n/timezone/TelephonyNetwork$MccMnc; -Lcom/android/i18n/timezone/TelephonyNetwork; -Lcom/android/i18n/timezone/TelephonyNetworkFinder; -Lcom/android/i18n/timezone/TimeZoneDataFiles; -Lcom/android/i18n/timezone/TimeZoneFinder$CountryZonesLookupExtractor; -Lcom/android/i18n/timezone/TimeZoneFinder$IanaVersionExtractor; -Lcom/android/i18n/timezone/TimeZoneFinder$SelectiveCountryTimeZonesExtractor; -Lcom/android/i18n/timezone/TimeZoneFinder$TimeZonesProcessor; -Lcom/android/i18n/timezone/TimeZoneFinder$TimeZonesValidator; -Lcom/android/i18n/timezone/TimeZoneFinder; -Lcom/android/i18n/timezone/TzDataSetVersion$TzDataSetException; -Lcom/android/i18n/timezone/TzDataSetVersion; -Lcom/android/i18n/timezone/WallTime$CheckedArithmeticException; -Lcom/android/i18n/timezone/WallTime$OffsetInterval; -Lcom/android/i18n/timezone/WallTime; -Lcom/android/i18n/timezone/XmlUtils$ReaderSupplier$$ExternalSyntheticLambda0; -Lcom/android/i18n/timezone/XmlUtils$ReaderSupplier$$ExternalSyntheticLambda1; -Lcom/android/i18n/timezone/XmlUtils$ReaderSupplier; -Lcom/android/i18n/timezone/XmlUtils; -Lcom/android/i18n/timezone/ZoneInfoData; -Lcom/android/i18n/timezone/ZoneInfoDb$1; -Lcom/android/i18n/timezone/ZoneInfoDb; -Lcom/android/i18n/timezone/internal/BasicLruCache$CacheMap; -Lcom/android/i18n/timezone/internal/BasicLruCache; -Lcom/android/i18n/timezone/internal/BufferIterator; -Lcom/android/i18n/timezone/internal/ByteBufferIterator; -Lcom/android/i18n/timezone/internal/Memory; -Lcom/android/i18n/timezone/internal/MemoryMappedFile; -Lcom/android/i18n/timezone/internal/NioBufferIterator; -Lcom/android/i18n/util/Log; -Lcom/android/icu/charset/CharsetDecoderICU; -Lcom/android/icu/charset/CharsetEncoderICU; -Lcom/android/icu/charset/CharsetFactory; -Lcom/android/icu/charset/NativeConverter; -Lcom/android/icu/text/CompatibleDecimalFormatFactory; -Lcom/android/icu/text/DateSorterBridge; -Lcom/android/icu/text/ExtendedDateFormatSymbols; -Lcom/android/icu/text/ExtendedDecimalFormatSymbols; -Lcom/android/icu/text/ExtendedIDNA; -Lcom/android/icu/text/ExtendedTimeZoneNames$Match; -Lcom/android/icu/text/ExtendedTimeZoneNames; -Lcom/android/icu/text/TimeZoneNamesNative; -Lcom/android/icu/util/CaseMapperNative; -Lcom/android/icu/util/ExtendedCalendar; -Lcom/android/icu/util/ExtendedTimeZone; -Lcom/android/icu/util/Icu4cMetadata; -Lcom/android/icu/util/LocaleNative; -Lcom/android/icu/util/regex/MatcherNative; -Lcom/android/icu/util/regex/PatternNative; -Lcom/android/ims/FeatureConnection$$ExternalSyntheticLambda0; -Lcom/android/ims/FeatureConnection$$ExternalSyntheticLambda1; -Lcom/android/ims/FeatureConnection; -Lcom/android/ims/FeatureConnector$$ExternalSyntheticLambda0; -Lcom/android/ims/FeatureConnector$1$$ExternalSyntheticLambda0; -Lcom/android/ims/FeatureConnector$1$$ExternalSyntheticLambda1; -Lcom/android/ims/FeatureConnector$1; -Lcom/android/ims/FeatureConnector$Listener; -Lcom/android/ims/FeatureConnector$ManagerFactory; -Lcom/android/ims/FeatureConnector$UnavailableReason; -Lcom/android/ims/FeatureConnector; -Lcom/android/ims/FeatureUpdates; -Lcom/android/ims/ImsCall$ImsCallSessionListenerProxy; -Lcom/android/ims/ImsCall$Listener; -Lcom/android/ims/ImsCall; -Lcom/android/ims/ImsCallbackAdapterManager; -Lcom/android/ims/ImsConfig; -Lcom/android/ims/ImsConfigListener$Stub$Proxy; -Lcom/android/ims/ImsConfigListener$Stub; -Lcom/android/ims/ImsConfigListener; -Lcom/android/ims/ImsConnectionStateListener; -Lcom/android/ims/ImsEcbm$ImsEcbmListenerProxy; -Lcom/android/ims/ImsEcbm; -Lcom/android/ims/ImsEcbmStateListener; -Lcom/android/ims/ImsException; -Lcom/android/ims/ImsExternalCallStateListener; -Lcom/android/ims/ImsFeatureBinderRepository$$ExternalSyntheticLambda0; -Lcom/android/ims/ImsFeatureBinderRepository$ListenerContainer$$ExternalSyntheticLambda0; -Lcom/android/ims/ImsFeatureBinderRepository$ListenerContainer$$ExternalSyntheticLambda1; -Lcom/android/ims/ImsFeatureBinderRepository$ListenerContainer$$ExternalSyntheticLambda2; -Lcom/android/ims/ImsFeatureBinderRepository$ListenerContainer$$ExternalSyntheticLambda3; -Lcom/android/ims/ImsFeatureBinderRepository$ListenerContainer; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda0; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda1; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda2; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda3; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda4; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper$$ExternalSyntheticLambda5; -Lcom/android/ims/ImsFeatureBinderRepository$UpdateMapper; -Lcom/android/ims/ImsFeatureBinderRepository; -Lcom/android/ims/ImsFeatureContainer$1; -Lcom/android/ims/ImsFeatureContainer; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda0; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda10; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda11; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda12; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda1; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda2; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda3; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda4; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda5; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda7; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda8; -Lcom/android/ims/ImsManager$$ExternalSyntheticLambda9; -Lcom/android/ims/ImsManager$1; -Lcom/android/ims/ImsManager$2; -Lcom/android/ims/ImsManager$DefaultSettingsProxy; -Lcom/android/ims/ImsManager$DefaultSubscriptionManagerProxy; -Lcom/android/ims/ImsManager$ImsStatsCallback; -Lcom/android/ims/ImsManager$InstanceManager$$ExternalSyntheticLambda0; -Lcom/android/ims/ImsManager$InstanceManager; -Lcom/android/ims/ImsManager$LazyExecutor; -Lcom/android/ims/ImsManager$MmTelFeatureConnectionFactory; -Lcom/android/ims/ImsManager$SettingsProxy; -Lcom/android/ims/ImsManager$SubscriptionManagerProxy; -Lcom/android/ims/ImsManager; -Lcom/android/ims/ImsMultiEndpoint$ImsExternalCallStateListenerProxy; -Lcom/android/ims/ImsMultiEndpoint; -Lcom/android/ims/ImsServiceClass; -Lcom/android/ims/ImsUt$IImsUtListenerProxy; -Lcom/android/ims/ImsUt; -Lcom/android/ims/ImsUtInterface; -Lcom/android/ims/MmTelFeatureConnection$BinderAccessState; -Lcom/android/ims/MmTelFeatureConnection$CapabilityCallbackManager; -Lcom/android/ims/MmTelFeatureConnection$ImsRegistrationCallbackAdapter; -Lcom/android/ims/MmTelFeatureConnection$ProvisioningCallbackManager; -Lcom/android/ims/MmTelFeatureConnection; -Lcom/android/ims/Preconditions; -Lcom/android/ims/RcsFeatureConnection$AvailabilityCallbackManager; -Lcom/android/ims/RcsFeatureConnection$RegistrationCallbackManager; -Lcom/android/ims/RcsFeatureConnection; -Lcom/android/ims/RcsFeatureManager$$ExternalSyntheticLambda0; -Lcom/android/ims/RcsFeatureManager$$ExternalSyntheticLambda1; -Lcom/android/ims/RcsFeatureManager$$ExternalSyntheticLambda2; -Lcom/android/ims/RcsFeatureManager$1$$ExternalSyntheticLambda0; -Lcom/android/ims/RcsFeatureManager$1$$ExternalSyntheticLambda1; -Lcom/android/ims/RcsFeatureManager$1$$ExternalSyntheticLambda2; -Lcom/android/ims/RcsFeatureManager$1; -Lcom/android/ims/RcsFeatureManager$2; -Lcom/android/ims/RcsFeatureManager$CapabilityExchangeEventCallback; -Lcom/android/ims/RcsFeatureManager; -Lcom/android/ims/RcsPresenceInfo$1; -Lcom/android/ims/RcsPresenceInfo$ServiceInfoKey; -Lcom/android/ims/RcsPresenceInfo$ServiceState; -Lcom/android/ims/RcsPresenceInfo$ServiceType; -Lcom/android/ims/RcsPresenceInfo$VolteStatus; -Lcom/android/ims/RcsPresenceInfo; -Lcom/android/ims/Registrant; -Lcom/android/ims/RegistrantList; -Lcom/android/ims/ResultCode; -Lcom/android/ims/SomeArgs; -Lcom/android/ims/internal/ConferenceParticipant$1; -Lcom/android/ims/internal/ConferenceParticipant; -Lcom/android/ims/internal/ContactNumberUtils; -Lcom/android/ims/internal/ICall; -Lcom/android/ims/internal/IImsCallSession$Stub; -Lcom/android/ims/internal/IImsCallSession; -Lcom/android/ims/internal/IImsConfig; -Lcom/android/ims/internal/IImsEcbm$Stub$Proxy; -Lcom/android/ims/internal/IImsEcbm$Stub; -Lcom/android/ims/internal/IImsEcbm; -Lcom/android/ims/internal/IImsEcbmListener$Stub$Proxy; -Lcom/android/ims/internal/IImsEcbmListener$Stub; -Lcom/android/ims/internal/IImsEcbmListener; -Lcom/android/ims/internal/IImsExternalCallStateListener$Stub$Proxy; -Lcom/android/ims/internal/IImsExternalCallStateListener$Stub; -Lcom/android/ims/internal/IImsExternalCallStateListener; -Lcom/android/ims/internal/IImsFeatureStatusCallback$Stub$Proxy; -Lcom/android/ims/internal/IImsFeatureStatusCallback$Stub; -Lcom/android/ims/internal/IImsFeatureStatusCallback; -Lcom/android/ims/internal/IImsMMTelFeature$Stub; -Lcom/android/ims/internal/IImsMMTelFeature; -Lcom/android/ims/internal/IImsMultiEndpoint$Stub$Proxy; -Lcom/android/ims/internal/IImsMultiEndpoint$Stub; -Lcom/android/ims/internal/IImsMultiEndpoint; -Lcom/android/ims/internal/IImsRegistrationListener$Stub; -Lcom/android/ims/internal/IImsRegistrationListener; -Lcom/android/ims/internal/IImsServiceController$Stub; -Lcom/android/ims/internal/IImsServiceController; -Lcom/android/ims/internal/IImsServiceFeatureCallback$Stub; -Lcom/android/ims/internal/IImsServiceFeatureCallback; -Lcom/android/ims/internal/IImsStreamMediaSession; -Lcom/android/ims/internal/IImsUt$Stub$Proxy; -Lcom/android/ims/internal/IImsUt$Stub; -Lcom/android/ims/internal/IImsUt; -Lcom/android/ims/internal/IImsUtListener$Stub$Proxy; -Lcom/android/ims/internal/IImsUtListener$Stub; -Lcom/android/ims/internal/IImsUtListener; -Lcom/android/ims/internal/IImsVideoCallCallback$Stub; -Lcom/android/ims/internal/IImsVideoCallCallback; -Lcom/android/ims/internal/IImsVideoCallProvider; -Lcom/android/ims/internal/ImsStreamMediaSession$Listener; -Lcom/android/ims/internal/ImsStreamMediaSession; -Lcom/android/ims/internal/ImsVideoCallProviderWrapper$1; -Lcom/android/ims/internal/ImsVideoCallProviderWrapper$2; -Lcom/android/ims/internal/ImsVideoCallProviderWrapper$ImsVideoCallCallback; -Lcom/android/ims/internal/ImsVideoCallProviderWrapper$ImsVideoProviderWrapperCallback; -Lcom/android/ims/internal/ImsVideoCallProviderWrapper; -Lcom/android/ims/internal/Logger; -Lcom/android/ims/internal/VideoPauseTracker$$ExternalSyntheticLambda0; -Lcom/android/ims/internal/VideoPauseTracker; -Lcom/android/ims/internal/uce/UceServiceBase$UceServiceBinder; -Lcom/android/ims/internal/uce/UceServiceBase; -Lcom/android/ims/internal/uce/common/CapInfo$1; -Lcom/android/ims/internal/uce/common/CapInfo; -Lcom/android/ims/internal/uce/common/StatusCode$1; -Lcom/android/ims/internal/uce/common/UceLong$1; -Lcom/android/ims/internal/uce/common/UceLong; -Lcom/android/ims/internal/uce/options/IOptionsListener$Stub$Proxy; -Lcom/android/ims/internal/uce/options/IOptionsListener$Stub; -Lcom/android/ims/internal/uce/options/IOptionsListener; -Lcom/android/ims/internal/uce/options/IOptionsService; -Lcom/android/ims/internal/uce/presence/IPresenceListener$Stub$Proxy; -Lcom/android/ims/internal/uce/presence/IPresenceListener$Stub; -Lcom/android/ims/internal/uce/presence/IPresenceListener; -Lcom/android/ims/internal/uce/presence/IPresenceService$Stub; -Lcom/android/ims/internal/uce/presence/IPresenceService; -Lcom/android/ims/internal/uce/presence/PresCapInfo$1; -Lcom/android/ims/internal/uce/presence/PresCmdId$1; -Lcom/android/ims/internal/uce/presence/PresCmdStatus$1; -Lcom/android/ims/internal/uce/presence/PresPublishTriggerType$1; -Lcom/android/ims/internal/uce/presence/PresSipResponse$1; -Lcom/android/ims/internal/uce/uceservice/IUceListener$Stub$Proxy; -Lcom/android/ims/internal/uce/uceservice/IUceListener$Stub; -Lcom/android/ims/internal/uce/uceservice/IUceListener; -Lcom/android/ims/internal/uce/uceservice/IUceService$Stub; -Lcom/android/ims/internal/uce/uceservice/IUceService; -Lcom/android/ims/rcs/uce/ControllerBase; -Lcom/android/ims/rcs/uce/UceController$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/UceController$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/UceController$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/UceController$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/UceController$1; -Lcom/android/ims/rcs/uce/UceController$2; -Lcom/android/ims/rcs/uce/UceController$3; -Lcom/android/ims/rcs/uce/UceController$CachedCapabilityEvent$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/UceController$CachedCapabilityEvent; -Lcom/android/ims/rcs/uce/UceController$ControllerFactory; -Lcom/android/ims/rcs/uce/UceController$RcsConnectedState; -Lcom/android/ims/rcs/uce/UceController$RequestManagerFactory; -Lcom/android/ims/rcs/uce/UceController$UceControllerCallback; -Lcom/android/ims/rcs/uce/UceController; -Lcom/android/ims/rcs/uce/UceDeviceState$DeviceStateResult; -Lcom/android/ims/rcs/uce/UceDeviceState$DeviceStateType; -Lcom/android/ims/rcs/uce/UceDeviceState; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$1; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$CapabilityExpiredListener; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$ContactChangedListener; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$EabSettingsListener; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$SyncContactRunnable; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater$retryRunnable; -Lcom/android/ims/rcs/uce/eab/EabBulkCapabilityUpdater; -Lcom/android/ims/rcs/uce/eab/EabCapabilityResult$QueryResult; -Lcom/android/ims/rcs/uce/eab/EabCapabilityResult; -Lcom/android/ims/rcs/uce/eab/EabContactSyncController$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/eab/EabContactSyncController; -Lcom/android/ims/rcs/uce/eab/EabController; -Lcom/android/ims/rcs/uce/eab/EabControllerImpl$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/eab/EabControllerImpl$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/eab/EabControllerImpl$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/eab/EabControllerImpl$ExpirationTimeFactory; -Lcom/android/ims/rcs/uce/eab/EabControllerImpl; -Lcom/android/ims/rcs/uce/eab/EabProvider$ContactColumns; -Lcom/android/ims/rcs/uce/eab/EabProvider$EabCommonColumns; -Lcom/android/ims/rcs/uce/eab/EabProvider$EabDatabaseHelper; -Lcom/android/ims/rcs/uce/eab/EabProvider$OptionsColumns; -Lcom/android/ims/rcs/uce/eab/EabProvider$PresenceTupleColumns; -Lcom/android/ims/rcs/uce/eab/EabProvider; -Lcom/android/ims/rcs/uce/eab/EabUtil; -Lcom/android/ims/rcs/uce/eab/RcsUceCapabilityBuilderWrapper; -Lcom/android/ims/rcs/uce/options/OptionsController; -Lcom/android/ims/rcs/uce/options/OptionsControllerImpl; -Lcom/android/ims/rcs/uce/presence/pidfparser/ElementBase; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParser$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParser$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParser$TimestampProxy; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParser; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParserConstant; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParserUtils$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/pidfparser/PidfParserUtils; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/Audio; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/CapsConstant; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/Duplex$DuplexType; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/Duplex; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/ServiceCaps; -Lcom/android/ims/rcs/uce/presence/pidfparser/capabilities/Video; -Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/Description; -Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/OmaPresConstant; -Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/ServiceDescription; -Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/ServiceId; -Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/Version; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Basic$BasicValue; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Basic; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Contact; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Note; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/PidfConstant; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Presence; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Status; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Timestamp; -Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Tuple; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityInfo$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityInfo; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$1; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$2; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$3; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$4; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$5; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$6; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$7; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$DeviceCapabilityHandler; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$ImsMmTelManagerFactory; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$ImsRcsManagerFactory; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener$ProvisioningManagerFactory; -Lcom/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener; -Lcom/android/ims/rcs/uce/presence/publish/PublishController$PublishControllerCallback; -Lcom/android/ims/rcs/uce/presence/publish/PublishController$PublishTriggerType; -Lcom/android/ims/rcs/uce/presence/publish/PublishController; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$1; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$2; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$DeviceCapListenerFactory; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$PublishHandler; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl$PublishProcessorFactory; -Lcom/android/ims/rcs/uce/presence/publish/PublishControllerImpl; -Lcom/android/ims/rcs/uce/presence/publish/PublishProcessor$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/PublishProcessor; -Lcom/android/ims/rcs/uce/presence/publish/PublishProcessorState$PendingRequest; -Lcom/android/ims/rcs/uce/presence/publish/PublishProcessorState$PublishThrottle; -Lcom/android/ims/rcs/uce/presence/publish/PublishProcessorState; -Lcom/android/ims/rcs/uce/presence/publish/PublishRequestResponse$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/PublishRequestResponse$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/presence/publish/PublishRequestResponse$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/presence/publish/PublishRequestResponse$1; -Lcom/android/ims/rcs/uce/presence/publish/PublishRequestResponse; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/presence/publish/PublishServiceDescTracker; -Lcom/android/ims/rcs/uce/presence/publish/PublishUtils; -Lcom/android/ims/rcs/uce/presence/publish/ServiceDescription; -Lcom/android/ims/rcs/uce/presence/subscribe/SubscribeController; -Lcom/android/ims/rcs/uce/presence/subscribe/SubscribeControllerImpl; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/request/CapabilityRequest$$ExternalSyntheticLambda5; -Lcom/android/ims/rcs/uce/request/CapabilityRequest; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda5; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda6; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda7; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda8; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse$$ExternalSyntheticLambda9; -Lcom/android/ims/rcs/uce/request/CapabilityRequestResponse; -Lcom/android/ims/rcs/uce/request/OptionsRequest$1; -Lcom/android/ims/rcs/uce/request/OptionsRequest; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$Builder; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator$RequestResultCreator; -Lcom/android/ims/rcs/uce/request/OptionsRequestCoordinator; -Lcom/android/ims/rcs/uce/request/RemoteOptionsCoordinator$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/RemoteOptionsCoordinator$Builder; -Lcom/android/ims/rcs/uce/request/RemoteOptionsCoordinator$RequestResultCreator; -Lcom/android/ims/rcs/uce/request/RemoteOptionsCoordinator; -Lcom/android/ims/rcs/uce/request/RemoteOptionsRequest$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/RemoteOptionsRequest$RemoteOptResponse; -Lcom/android/ims/rcs/uce/request/RemoteOptionsRequest; -Lcom/android/ims/rcs/uce/request/SubscribeRequest$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/SubscribeRequest$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/SubscribeRequest$1; -Lcom/android/ims/rcs/uce/request/SubscribeRequest; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda10; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda5; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda6; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda7; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda8; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$$ExternalSyntheticLambda9; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$Builder; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator$RequestResultCreator; -Lcom/android/ims/rcs/uce/request/SubscribeRequestCoordinator; -Lcom/android/ims/rcs/uce/request/SubscriptionTerminatedHelper$TerminatedResult; -Lcom/android/ims/rcs/uce/request/SubscriptionTerminatedHelper; -Lcom/android/ims/rcs/uce/request/UceRequest$UceRequestType; -Lcom/android/ims/rcs/uce/request/UceRequest; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$$ExternalSyntheticLambda3; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$$ExternalSyntheticLambda4; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$RequestResult; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator$UceRequestUpdate; -Lcom/android/ims/rcs/uce/request/UceRequestCoordinator; -Lcom/android/ims/rcs/uce/request/UceRequestDispatcher$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/UceRequestDispatcher$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/UceRequestDispatcher$Request; -Lcom/android/ims/rcs/uce/request/UceRequestDispatcher; -Lcom/android/ims/rcs/uce/request/UceRequestManager$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/UceRequestManager$$ExternalSyntheticLambda1; -Lcom/android/ims/rcs/uce/request/UceRequestManager$$ExternalSyntheticLambda2; -Lcom/android/ims/rcs/uce/request/UceRequestManager$1; -Lcom/android/ims/rcs/uce/request/UceRequestManager$2; -Lcom/android/ims/rcs/uce/request/UceRequestManager$RequestManagerCallback; -Lcom/android/ims/rcs/uce/request/UceRequestManager$UceRequestHandler; -Lcom/android/ims/rcs/uce/request/UceRequestManager$UceUtilsProxy; -Lcom/android/ims/rcs/uce/request/UceRequestManager; -Lcom/android/ims/rcs/uce/request/UceRequestRepository$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/request/UceRequestRepository; -Lcom/android/ims/rcs/uce/util/FeatureTags$$ExternalSyntheticLambda0; -Lcom/android/ims/rcs/uce/util/FeatureTags; -Lcom/android/ims/rcs/uce/util/NetworkSipCode; -Lcom/android/ims/rcs/uce/util/UceUtils; -Lcom/android/input/flags/FeatureFlags; -Lcom/android/input/flags/FeatureFlagsImpl; -Lcom/android/input/flags/Flags; -Lcom/android/internal/R$attr; -Lcom/android/internal/R$dimen; -Lcom/android/internal/R$id; -Lcom/android/internal/R$string; -Lcom/android/internal/R$styleable; -Lcom/android/internal/accessibility/AccessibilityShortcutController$1; -Lcom/android/internal/accessibility/AccessibilityShortcutController$FrameworkFeatureInfo; -Lcom/android/internal/accessibility/AccessibilityShortcutController$FrameworkObjectProvider; -Lcom/android/internal/accessibility/AccessibilityShortcutController$ToggleableFrameworkFeatureInfo; -Lcom/android/internal/accessibility/AccessibilityShortcutController; -Lcom/android/internal/accessibility/util/AccessibilityUtils; -Lcom/android/internal/alsa/AlsaCardsParser$AlsaCardRecord; -Lcom/android/internal/alsa/AlsaCardsParser; -Lcom/android/internal/alsa/LineTokenizer; -Lcom/android/internal/app/AlertActivity; -Lcom/android/internal/app/AlertController$1; -Lcom/android/internal/app/AlertController$AlertParams; -Lcom/android/internal/app/AlertController$ButtonHandler; -Lcom/android/internal/app/AlertController$RecycleListView; -Lcom/android/internal/app/AlertController; -Lcom/android/internal/app/AssistUtils; -Lcom/android/internal/app/IAppOpsActiveCallback$Stub$Proxy; -Lcom/android/internal/app/IAppOpsActiveCallback$Stub; -Lcom/android/internal/app/IAppOpsActiveCallback; -Lcom/android/internal/app/IAppOpsAsyncNotedCallback$Stub; -Lcom/android/internal/app/IAppOpsAsyncNotedCallback; -Lcom/android/internal/app/IAppOpsCallback$Stub; -Lcom/android/internal/app/IAppOpsCallback; -Lcom/android/internal/app/IAppOpsNotedCallback$Stub; -Lcom/android/internal/app/IAppOpsNotedCallback; -Lcom/android/internal/app/IAppOpsService$Stub$Proxy; -Lcom/android/internal/app/IAppOpsService$Stub; -Lcom/android/internal/app/IAppOpsService; -Lcom/android/internal/app/IAppOpsStartedCallback$Stub$Proxy; -Lcom/android/internal/app/IAppOpsStartedCallback$Stub; -Lcom/android/internal/app/IAppOpsStartedCallback; -Lcom/android/internal/app/IBatteryStats$Stub$Proxy; -Lcom/android/internal/app/IBatteryStats$Stub; -Lcom/android/internal/app/IBatteryStats; -Lcom/android/internal/app/ISoundTriggerService$Stub; -Lcom/android/internal/app/ISoundTriggerService; -Lcom/android/internal/app/ISoundTriggerSession$Stub; -Lcom/android/internal/app/ISoundTriggerSession; -Lcom/android/internal/app/IVoiceActionCheckCallback$Stub$Proxy; -Lcom/android/internal/app/IVoiceActionCheckCallback$Stub; -Lcom/android/internal/app/IVoiceActionCheckCallback; -Lcom/android/internal/app/IVoiceInteractionManagerService$Stub$Proxy; -Lcom/android/internal/app/IVoiceInteractionManagerService$Stub; -Lcom/android/internal/app/IVoiceInteractionManagerService; -Lcom/android/internal/app/IVoiceInteractionSessionListener$Stub$Proxy; -Lcom/android/internal/app/IVoiceInteractionSessionListener$Stub; -Lcom/android/internal/app/IVoiceInteractionSessionListener; -Lcom/android/internal/app/IVoiceInteractionSessionShowCallback$Stub$Proxy; -Lcom/android/internal/app/IVoiceInteractionSessionShowCallback$Stub; -Lcom/android/internal/app/IVoiceInteractionSessionShowCallback; -Lcom/android/internal/app/IVoiceInteractionSoundTriggerSession$Stub; -Lcom/android/internal/app/IVoiceInteractionSoundTriggerSession; -Lcom/android/internal/app/IVoiceInteractor$Stub$Proxy; -Lcom/android/internal/app/IVoiceInteractor$Stub; -Lcom/android/internal/app/IVoiceInteractor; -Lcom/android/internal/app/IntentForwarderActivity; -Lcom/android/internal/app/MessageSamplingConfig$1; -Lcom/android/internal/app/MessageSamplingConfig; -Lcom/android/internal/app/MicroAlertController; -Lcom/android/internal/app/ProcessMap; -Lcom/android/internal/app/ResolverActivity$ActionTitle; -Lcom/android/internal/app/ResolverActivity; -Lcom/android/internal/app/ResolverListAdapter$ResolverListCommunicator; -Lcom/android/internal/app/ToolbarActionBar; -Lcom/android/internal/app/WindowDecorActionBar$1; -Lcom/android/internal/app/WindowDecorActionBar$2; -Lcom/android/internal/app/WindowDecorActionBar$3; -Lcom/android/internal/app/WindowDecorActionBar; -Lcom/android/internal/app/procstats/AssociationState$$ExternalSyntheticLambda0; -Lcom/android/internal/app/procstats/AssociationState$SourceDumpContainer; -Lcom/android/internal/app/procstats/AssociationState$SourceKey; -Lcom/android/internal/app/procstats/AssociationState$SourceState; -Lcom/android/internal/app/procstats/AssociationState; -Lcom/android/internal/app/procstats/DumpUtils; -Lcom/android/internal/app/procstats/DurationsTable; -Lcom/android/internal/app/procstats/IProcessStats$Stub$Proxy; -Lcom/android/internal/app/procstats/IProcessStats$Stub; -Lcom/android/internal/app/procstats/IProcessStats; -Lcom/android/internal/app/procstats/ProcessState$1; -Lcom/android/internal/app/procstats/ProcessState$PssAggr; -Lcom/android/internal/app/procstats/ProcessState; -Lcom/android/internal/app/procstats/ProcessStats$$ExternalSyntheticLambda0; -Lcom/android/internal/app/procstats/ProcessStats$$ExternalSyntheticLambda1; -Lcom/android/internal/app/procstats/ProcessStats$$ExternalSyntheticLambda2; -Lcom/android/internal/app/procstats/ProcessStats$1; -Lcom/android/internal/app/procstats/ProcessStats$AssociationDumpContainer; -Lcom/android/internal/app/procstats/ProcessStats$PackageState; -Lcom/android/internal/app/procstats/ProcessStats$ProcessDataCollection; -Lcom/android/internal/app/procstats/ProcessStats$ProcessStateHolder; -Lcom/android/internal/app/procstats/ProcessStats$TotalMemoryUseCollection; -Lcom/android/internal/app/procstats/ProcessStats; -Lcom/android/internal/app/procstats/PssTable; -Lcom/android/internal/app/procstats/ServiceState; -Lcom/android/internal/app/procstats/SparseMappingTable$Table; -Lcom/android/internal/app/procstats/SparseMappingTable; -Lcom/android/internal/app/procstats/SysMemUsageTable; -Lcom/android/internal/app/procstats/UidState; -Lcom/android/internal/appwidget/IAppWidgetHost$Stub$Proxy; -Lcom/android/internal/appwidget/IAppWidgetHost$Stub; -Lcom/android/internal/appwidget/IAppWidgetHost; -Lcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy; -Lcom/android/internal/appwidget/IAppWidgetService$Stub; -Lcom/android/internal/appwidget/IAppWidgetService; -Lcom/android/internal/backup/IBackupTransport$Stub$Proxy; -Lcom/android/internal/backup/IBackupTransport$Stub; -Lcom/android/internal/backup/IBackupTransport; -Lcom/android/internal/colorextraction/ColorExtractor$GradientColors; -Lcom/android/internal/colorextraction/ColorExtractor$LoadWallpaperColors; -Lcom/android/internal/colorextraction/ColorExtractor$OnColorsChangedListener; -Lcom/android/internal/colorextraction/ColorExtractor; -Lcom/android/internal/colorextraction/types/ExtractionType; -Lcom/android/internal/colorextraction/types/Tonal$ConfigParser; -Lcom/android/internal/colorextraction/types/Tonal$TonalPalette; -Lcom/android/internal/colorextraction/types/Tonal; -Lcom/android/internal/compat/AndroidBuildClassifier; -Lcom/android/internal/compat/ChangeReporter$$ExternalSyntheticLambda0; -Lcom/android/internal/compat/ChangeReporter$ChangeReport; -Lcom/android/internal/compat/ChangeReporter; -Lcom/android/internal/compat/CompatibilityChangeConfig$1; -Lcom/android/internal/compat/CompatibilityChangeConfig; -Lcom/android/internal/compat/CompatibilityChangeInfo$1; -Lcom/android/internal/compat/CompatibilityChangeInfo; -Lcom/android/internal/compat/IOverrideValidator$Stub; -Lcom/android/internal/compat/IOverrideValidator; -Lcom/android/internal/compat/IPlatformCompat$Stub$Proxy; -Lcom/android/internal/compat/IPlatformCompat$Stub; -Lcom/android/internal/compat/IPlatformCompat; -Lcom/android/internal/compat/IPlatformCompatNative$Stub; -Lcom/android/internal/compat/IPlatformCompatNative; -Lcom/android/internal/compat/flags/FeatureFlags; -Lcom/android/internal/compat/flags/FeatureFlagsImpl; -Lcom/android/internal/compat/flags/Flags; -Lcom/android/internal/config/appcloning/AppCloningDeviceConfigHelper$$ExternalSyntheticLambda0; -Lcom/android/internal/config/appcloning/AppCloningDeviceConfigHelper; -Lcom/android/internal/config/sysui/SystemUiSystemPropertiesFlags$DebugResolver; -Lcom/android/internal/config/sysui/SystemUiSystemPropertiesFlags$Flag; -Lcom/android/internal/config/sysui/SystemUiSystemPropertiesFlags$FlagResolver; -Lcom/android/internal/config/sysui/SystemUiSystemPropertiesFlags$NotificationFlags; -Lcom/android/internal/config/sysui/SystemUiSystemPropertiesFlags; -Lcom/android/internal/content/F2fsUtils; -Lcom/android/internal/content/NativeLibraryHelper$Handle; -Lcom/android/internal/content/NativeLibraryHelper; -Lcom/android/internal/content/PackageMonitor; -Lcom/android/internal/content/ReferrerIntent$1; -Lcom/android/internal/content/ReferrerIntent; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda0; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda2; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda3; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda4; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda5; -Lcom/android/internal/content/om/OverlayConfig$$ExternalSyntheticLambda7; -Lcom/android/internal/content/om/OverlayConfig$Configuration; -Lcom/android/internal/content/om/OverlayConfig$IdmapInvocation; -Lcom/android/internal/content/om/OverlayConfig$PackageProvider; -Lcom/android/internal/content/om/OverlayConfig; -Lcom/android/internal/content/om/OverlayConfigParser$OverlayPartition; -Lcom/android/internal/content/om/OverlayConfigParser$ParsedConfigFile; -Lcom/android/internal/content/om/OverlayConfigParser$ParsedConfiguration; -Lcom/android/internal/content/om/OverlayConfigParser$ParsingContext; -Lcom/android/internal/content/om/OverlayConfigParser; -Lcom/android/internal/content/om/OverlayManagerImpl; -Lcom/android/internal/content/om/OverlayScanner$ParsedOverlayInfo; -Lcom/android/internal/content/om/OverlayScanner; -Lcom/android/internal/database/SortCursor; -Lcom/android/internal/display/BrightnessSynchronizer; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$10; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$11; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$12; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$13; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$14; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$1; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$2; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$3; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$4; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$5; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$6; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$7; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$8; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$9; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$MassState; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$OnAnimationEndListener; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation$ViewProperty; -Lcom/android/internal/dynamicanimation/animation/DynamicAnimation; -Lcom/android/internal/dynamicanimation/animation/Force; -Lcom/android/internal/dynamicanimation/animation/SpringAnimation; -Lcom/android/internal/dynamicanimation/animation/SpringForce; -Lcom/android/internal/graphics/ColorUtils$ContrastCalculator; -Lcom/android/internal/graphics/ColorUtils; -Lcom/android/internal/graphics/SfVsyncFrameCallbackProvider; -Lcom/android/internal/graphics/cam/Cam; -Lcom/android/internal/graphics/cam/CamUtils; -Lcom/android/internal/graphics/cam/Frame; -Lcom/android/internal/graphics/cam/HctSolver; -Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable$AnimationScaleListState; -Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable-IA; -Lcom/android/internal/graphics/drawable/AnimationScaleListDrawable; -Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable$Aggregator; -Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable$BlurRegion; -Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable-IA; -Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable; -Lcom/android/internal/hidden_from_bootclasspath/android/app/job/Flags; -Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlags; -Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlagsImpl; -Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/Flags; -Lcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlags; -Lcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl; -Lcom/android/internal/hidden_from_bootclasspath/android/os/Flags; -Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlags; -Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlagsImpl; -Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/Flags; -Lcom/android/internal/infra/AbstractMultiplePendingRequestsRemoteService; -Lcom/android/internal/infra/AbstractRemoteService$AsyncRequest; -Lcom/android/internal/infra/AbstractRemoteService$BasePendingRequest; -Lcom/android/internal/infra/AbstractRemoteService$MyAsyncPendingRequest; -Lcom/android/internal/infra/AbstractRemoteService$PendingRequest; -Lcom/android/internal/infra/AbstractRemoteService$RemoteServiceConnection; -Lcom/android/internal/infra/AbstractRemoteService$VultureCallback; -Lcom/android/internal/infra/AbstractRemoteService; -Lcom/android/internal/infra/AbstractSinglePendingRequestRemoteService; -Lcom/android/internal/infra/AndroidFuture$$ExternalSyntheticLambda1; -Lcom/android/internal/infra/AndroidFuture$$ExternalSyntheticLambda3; -Lcom/android/internal/infra/AndroidFuture$1; -Lcom/android/internal/infra/AndroidFuture$2; -Lcom/android/internal/infra/AndroidFuture; -Lcom/android/internal/infra/GlobalWhitelistState; -Lcom/android/internal/infra/IAndroidFuture$Stub$Proxy; -Lcom/android/internal/infra/IAndroidFuture$Stub; -Lcom/android/internal/infra/IAndroidFuture; -Lcom/android/internal/infra/PerUser; -Lcom/android/internal/infra/RemoteStream$1; -Lcom/android/internal/infra/RemoteStream; -Lcom/android/internal/infra/ServiceConnector$Impl$CompletionAwareJob; -Lcom/android/internal/infra/ServiceConnector$Impl; -Lcom/android/internal/infra/ServiceConnector$Job; -Lcom/android/internal/infra/ServiceConnector$VoidJob; -Lcom/android/internal/infra/ServiceConnector; -Lcom/android/internal/infra/WhitelistHelper; -Lcom/android/internal/inputmethod/EditableInputConnection; -Lcom/android/internal/inputmethod/IAccessibilityInputMethodSession$Stub$Proxy; -Lcom/android/internal/inputmethod/IAccessibilityInputMethodSession$Stub; -Lcom/android/internal/inputmethod/IAccessibilityInputMethodSession; -Lcom/android/internal/inputmethod/IImeTracker$Stub$Proxy; -Lcom/android/internal/inputmethod/IImeTracker$Stub; -Lcom/android/internal/inputmethod/IImeTracker; -Lcom/android/internal/inputmethod/IInputContentUriToken; -Lcom/android/internal/inputmethod/IInputMethod$Stub; -Lcom/android/internal/inputmethod/IInputMethod; -Lcom/android/internal/inputmethod/IInputMethodClient$Stub; -Lcom/android/internal/inputmethod/IInputMethodClient; -Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations$Stub$Proxy; -Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations$Stub; -Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations; -Lcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy; -Lcom/android/internal/inputmethod/IInputMethodSession$Stub; -Lcom/android/internal/inputmethod/IInputMethodSession; -Lcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection$Stub; -Lcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection; -Lcom/android/internal/inputmethod/IRemoteInputConnection$Stub$Proxy; -Lcom/android/internal/inputmethod/IRemoteInputConnection$Stub; -Lcom/android/internal/inputmethod/IRemoteInputConnection; -Lcom/android/internal/inputmethod/ImeTracing; -Lcom/android/internal/inputmethod/ImeTracingClientImpl; -Lcom/android/internal/inputmethod/ImeTracingServerImpl; -Lcom/android/internal/inputmethod/InputBindResult$1; -Lcom/android/internal/inputmethod/InputBindResult-IA; -Lcom/android/internal/inputmethod/InputBindResult; -Lcom/android/internal/inputmethod/InputConnectionCommandHeader$1; -Lcom/android/internal/inputmethod/InputConnectionCommandHeader; -Lcom/android/internal/inputmethod/InputMethodDebug; -Lcom/android/internal/inputmethod/InputMethodPrivilegedOperations$OpsHolder; -Lcom/android/internal/inputmethod/InputMethodPrivilegedOperations; -Lcom/android/internal/inputmethod/InputMethodPrivilegedOperationsRegistry; -Lcom/android/internal/inputmethod/SubtypeLocaleUtils; -Lcom/android/internal/jank/Cuj; -Lcom/android/internal/jank/DisplayResolutionTracker$1; -Lcom/android/internal/jank/DisplayResolutionTracker$DisplayInterface$1; -Lcom/android/internal/jank/DisplayResolutionTracker$DisplayInterface; -Lcom/android/internal/jank/DisplayResolutionTracker; -Lcom/android/internal/jank/EventLogTags; -Lcom/android/internal/jank/FrameTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/jank/FrameTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/jank/FrameTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/jank/FrameTracker$ChoreographerWrapper; -Lcom/android/internal/jank/FrameTracker$FrameMetricsWrapper; -Lcom/android/internal/jank/FrameTracker$FrameTrackerListener; -Lcom/android/internal/jank/FrameTracker$JankInfo; -Lcom/android/internal/jank/FrameTracker$SurfaceControlWrapper; -Lcom/android/internal/jank/FrameTracker$ThreadedRendererWrapper; -Lcom/android/internal/jank/FrameTracker; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda0; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda10; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda1; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda2; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda3; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda5; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda6; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda7; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda8; -Lcom/android/internal/jank/InteractionJankMonitor$$ExternalSyntheticLambda9; -Lcom/android/internal/jank/InteractionJankMonitor$Configuration; -Lcom/android/internal/jank/InteractionJankMonitor$InstanceHolder; -Lcom/android/internal/jank/InteractionJankMonitor$RunningTracker; -Lcom/android/internal/jank/InteractionJankMonitor$TimeFunction; -Lcom/android/internal/jank/InteractionJankMonitor$TrackerResult-IA; -Lcom/android/internal/jank/InteractionJankMonitor$TrackerResult; -Lcom/android/internal/jank/InteractionJankMonitor; -Lcom/android/internal/listeners/ListenerExecutor$$ExternalSyntheticLambda0; -Lcom/android/internal/listeners/ListenerExecutor$FailureCallback; -Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation; -Lcom/android/internal/listeners/ListenerExecutor; -Lcom/android/internal/listeners/ListenerTransport; -Lcom/android/internal/listeners/ListenerTransportManager; -Lcom/android/internal/location/altitude/nano/MapParamsProto; -Lcom/android/internal/location/altitude/nano/S2TileProto; -Lcom/android/internal/location/nano/GnssLogsProto$GnssLog; -Lcom/android/internal/location/nano/GnssLogsProto$PowerMetrics; -Lcom/android/internal/logging/AndroidConfig; -Lcom/android/internal/logging/AndroidHandler$1; -Lcom/android/internal/logging/AndroidHandler; -Lcom/android/internal/logging/EventLogTags; -Lcom/android/internal/logging/InstanceId$1; -Lcom/android/internal/logging/InstanceId-IA; -Lcom/android/internal/logging/InstanceId; -Lcom/android/internal/logging/InstanceIdSequence; -Lcom/android/internal/logging/MetricsLogger; -Lcom/android/internal/logging/UiEventLogger$UiEventEnum; -Lcom/android/internal/logging/UiEventLogger; -Lcom/android/internal/logging/UiEventLoggerImpl; -Lcom/android/internal/net/INetworkWatchlistManager$Stub$Proxy; -Lcom/android/internal/net/INetworkWatchlistManager$Stub; -Lcom/android/internal/net/INetworkWatchlistManager; -Lcom/android/internal/net/LegacyVpnInfo$1; -Lcom/android/internal/net/LegacyVpnInfo; -Lcom/android/internal/net/NetworkUtilsInternal; -Lcom/android/internal/net/VpnConfig$1; -Lcom/android/internal/net/VpnConfig; -Lcom/android/internal/net/VpnProfile$1; -Lcom/android/internal/net/VpnProfile; -Lcom/android/internal/notification/SystemNotificationChannels; -Lcom/android/internal/org/bouncycastle/cert/AttributeCertificateHolder; -Lcom/android/internal/org/bouncycastle/cms/CMSException; -Lcom/android/internal/org/bouncycastle/jcajce/util/BCJcaJceHelper; -Lcom/android/internal/org/bouncycastle/jcajce/util/JcaJceHelper; -Lcom/android/internal/org/bouncycastle/jcajce/util/ProviderJcaJceHelper; -Lcom/android/internal/org/bouncycastle/operator/OperatorCreationException; -Lcom/android/internal/org/bouncycastle/operator/OperatorException; -Lcom/android/internal/org/bouncycastle/util/Selector; -Lcom/android/internal/os/AndroidPrintStream; -Lcom/android/internal/os/AppFuseMount$1; -Lcom/android/internal/os/AppFuseMount; -Lcom/android/internal/os/AppIdToPackageMap; -Lcom/android/internal/os/AtomicDirectory; -Lcom/android/internal/os/BackgroundThread; -Lcom/android/internal/os/BatteryStatsHistory$HistoryStepDetailsCalculator; -Lcom/android/internal/os/BatteryStatsHistory$TraceDelegate; -Lcom/android/internal/os/BatteryStatsHistory$VarintParceler; -Lcom/android/internal/os/BatteryStatsHistory; -Lcom/android/internal/os/BinderCallHeavyHitterWatcher$BinderCallHeavyHitterListener; -Lcom/android/internal/os/BinderCallHeavyHitterWatcher$HeavyHitterContainer; -Lcom/android/internal/os/BinderCallHeavyHitterWatcher; -Lcom/android/internal/os/BinderCallsStats$1; -Lcom/android/internal/os/BinderCallsStats$CallStat; -Lcom/android/internal/os/BinderCallsStats$CallStatKey; -Lcom/android/internal/os/BinderCallsStats$ExportedCallStat; -Lcom/android/internal/os/BinderCallsStats$Injector; -Lcom/android/internal/os/BinderCallsStats$OverflowBinder; -Lcom/android/internal/os/BinderCallsStats$SettingsObserver; -Lcom/android/internal/os/BinderCallsStats$UidEntry; -Lcom/android/internal/os/BinderCallsStats; -Lcom/android/internal/os/BinderDeathDispatcher$RecipientsInfo-IA; -Lcom/android/internal/os/BinderDeathDispatcher$RecipientsInfo; -Lcom/android/internal/os/BinderDeathDispatcher; -Lcom/android/internal/os/BinderInternal$BinderProxyCountEventListenerDelegate; -Lcom/android/internal/os/BinderInternal$CallSession; -Lcom/android/internal/os/BinderInternal$CallStatsObserver; -Lcom/android/internal/os/BinderInternal$GcWatcher; -Lcom/android/internal/os/BinderInternal$Observer; -Lcom/android/internal/os/BinderInternal$WorkSourceProvider; -Lcom/android/internal/os/BinderInternal; -Lcom/android/internal/os/BinderLatencyBuckets; -Lcom/android/internal/os/BinderLatencyObserver$1; -Lcom/android/internal/os/BinderLatencyObserver$Injector; -Lcom/android/internal/os/BinderLatencyObserver$LatencyDims; -Lcom/android/internal/os/BinderLatencyObserver; -Lcom/android/internal/os/BinderTransactionNameResolver; -Lcom/android/internal/os/ByteTransferPipe; -Lcom/android/internal/os/CachedDeviceState$Readonly; -Lcom/android/internal/os/CachedDeviceState$TimeInStateStopwatch; -Lcom/android/internal/os/CachedDeviceState; -Lcom/android/internal/os/ClassLoaderFactory; -Lcom/android/internal/os/Clock; -Lcom/android/internal/os/FeatureFlags; -Lcom/android/internal/os/FeatureFlagsImpl; -Lcom/android/internal/os/Flags; -Lcom/android/internal/os/FuseAppLoop$1; -Lcom/android/internal/os/FuseAppLoop; -Lcom/android/internal/os/FuseUnavailableMountException; -Lcom/android/internal/os/HandlerCaller$Callback; -Lcom/android/internal/os/HandlerCaller$MyHandler; -Lcom/android/internal/os/HandlerCaller; -Lcom/android/internal/os/IDropBoxManagerService$Stub$Proxy; -Lcom/android/internal/os/IDropBoxManagerService$Stub; -Lcom/android/internal/os/IDropBoxManagerService; -Lcom/android/internal/os/IResultReceiver$Stub$Proxy; -Lcom/android/internal/os/IResultReceiver$Stub; -Lcom/android/internal/os/IResultReceiver; -Lcom/android/internal/os/IShellCallback$Stub$Proxy; -Lcom/android/internal/os/IShellCallback$Stub; -Lcom/android/internal/os/IShellCallback; -Lcom/android/internal/os/KernelAllocationStats$ProcessDmabuf; -Lcom/android/internal/os/KernelAllocationStats$ProcessGpuMem; -Lcom/android/internal/os/KernelAllocationStats; -Lcom/android/internal/os/KernelCpuBpfTracking; -Lcom/android/internal/os/KernelCpuProcStringReader$ProcFileIterator; -Lcom/android/internal/os/KernelCpuProcStringReader; -Lcom/android/internal/os/KernelCpuSpeedReader; -Lcom/android/internal/os/KernelCpuThreadReader$FrequencyBucketCreator; -Lcom/android/internal/os/KernelCpuThreadReader$Injector; -Lcom/android/internal/os/KernelCpuThreadReader$ProcessCpuUsage; -Lcom/android/internal/os/KernelCpuThreadReader$ThreadCpuUsage; -Lcom/android/internal/os/KernelCpuThreadReader; -Lcom/android/internal/os/KernelCpuThreadReaderDiff$ThreadKey; -Lcom/android/internal/os/KernelCpuThreadReaderDiff; -Lcom/android/internal/os/KernelCpuThreadReaderSettingsObserver$UidPredicate; -Lcom/android/internal/os/KernelCpuThreadReaderSettingsObserver; -Lcom/android/internal/os/KernelCpuTotalBpfMapReader; -Lcom/android/internal/os/KernelCpuUidBpfMapReader$BpfMapIterator; -Lcom/android/internal/os/KernelCpuUidBpfMapReader$KernelCpuUidActiveTimeBpfMapReader; -Lcom/android/internal/os/KernelCpuUidBpfMapReader$KernelCpuUidClusterTimeBpfMapReader; -Lcom/android/internal/os/KernelCpuUidBpfMapReader$KernelCpuUidFreqTimeBpfMapReader; -Lcom/android/internal/os/KernelCpuUidBpfMapReader; -Lcom/android/internal/os/KernelCpuUidTimeReader$Callback; -Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidActiveTimeReader; -Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidClusterTimeReader; -Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader; -Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidUserSysTimeReader; -Lcom/android/internal/os/KernelCpuUidTimeReader; -Lcom/android/internal/os/KernelMemoryBandwidthStats; -Lcom/android/internal/os/KernelSingleProcessCpuThreadReader$CpuTimeInStateReader; -Lcom/android/internal/os/KernelSingleProcessCpuThreadReader$ProcessCpuUsage; -Lcom/android/internal/os/KernelSingleProcessCpuThreadReader; -Lcom/android/internal/os/KernelSingleUidTimeReader$Injector; -Lcom/android/internal/os/KernelSingleUidTimeReader; -Lcom/android/internal/os/LoggingPrintStream$1; -Lcom/android/internal/os/LoggingPrintStream; -Lcom/android/internal/os/LongArrayMultiStateCounter$1; -Lcom/android/internal/os/LongArrayMultiStateCounter$LongArrayContainer; -Lcom/android/internal/os/LongArrayMultiStateCounter; -Lcom/android/internal/os/LongMultiStateCounter$1; -Lcom/android/internal/os/LongMultiStateCounter; -Lcom/android/internal/os/LooperStats$DispatchSession-IA; -Lcom/android/internal/os/LooperStats$DispatchSession; -Lcom/android/internal/os/LooperStats$Entry; -Lcom/android/internal/os/LooperStats$ExportedEntry; -Lcom/android/internal/os/LooperStats; -Lcom/android/internal/os/PowerProfile$CpuClusterKey; -Lcom/android/internal/os/PowerProfile; -Lcom/android/internal/os/ProcStatsUtil; -Lcom/android/internal/os/ProcTimeInStateReader; -Lcom/android/internal/os/ProcessCpuTracker$1; -Lcom/android/internal/os/ProcessCpuTracker$FilterStats; -Lcom/android/internal/os/ProcessCpuTracker$Stats; -Lcom/android/internal/os/ProcessCpuTracker; -Lcom/android/internal/os/RailStats; -Lcom/android/internal/os/RoSystemProperties; -Lcom/android/internal/os/RpmStats$PowerStateElement; -Lcom/android/internal/os/RpmStats$PowerStatePlatformSleepState; -Lcom/android/internal/os/RpmStats$PowerStateSubsystem; -Lcom/android/internal/os/RpmStats; -Lcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda0; -Lcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1; -Lcom/android/internal/os/RuntimeInit$ApplicationWtfHandler; -Lcom/android/internal/os/RuntimeInit$Arguments; -Lcom/android/internal/os/RuntimeInit$KillApplicationHandler; -Lcom/android/internal/os/RuntimeInit$LoggingHandler-IA; -Lcom/android/internal/os/RuntimeInit$LoggingHandler; -Lcom/android/internal/os/RuntimeInit$MethodAndArgsCaller; -Lcom/android/internal/os/RuntimeInit; -Lcom/android/internal/os/SafeZipPathValidatorCallback; -Lcom/android/internal/os/SomeArgs; -Lcom/android/internal/os/StatsdHiddenApiUsageLogger; -Lcom/android/internal/os/StoragedUidIoStatsReader$Callback; -Lcom/android/internal/os/StoragedUidIoStatsReader; -Lcom/android/internal/os/TransferPipe; -Lcom/android/internal/os/WrapperInit; -Lcom/android/internal/os/Zygote; -Lcom/android/internal/os/ZygoteArguments; -Lcom/android/internal/os/ZygoteCommandBuffer; -Lcom/android/internal/os/ZygoteConfig; -Lcom/android/internal/os/ZygoteConnection$$ExternalSyntheticLambda0; -Lcom/android/internal/os/ZygoteConnection$$ExternalSyntheticLambda1; -Lcom/android/internal/os/ZygoteConnection; -Lcom/android/internal/os/ZygoteInit; -Lcom/android/internal/os/ZygoteSecurityException; -Lcom/android/internal/os/ZygoteServer$$ExternalSyntheticLambda0; -Lcom/android/internal/os/ZygoteServer$UsapPoolRefillAction; -Lcom/android/internal/os/ZygoteServer; -Lcom/android/internal/os/logging/MetricsLoggerWrapper; -Lcom/android/internal/pm/parsing/PackageParser2$Callback; -Lcom/android/internal/pm/parsing/PackageParserException; -Lcom/android/internal/pm/pkg/component/flags/FeatureFlags; -Lcom/android/internal/pm/pkg/component/flags/FeatureFlagsImpl; -Lcom/android/internal/pm/pkg/component/flags/Flags; -Lcom/android/internal/pm/pkg/parsing/ParsingPackageUtils$Callback; -Lcom/android/internal/policy/AttributeCache; -Lcom/android/internal/policy/DecorContext; -Lcom/android/internal/policy/DecorView$$ExternalSyntheticLambda0; -Lcom/android/internal/policy/DecorView$$ExternalSyntheticLambda1; -Lcom/android/internal/policy/DecorView$1; -Lcom/android/internal/policy/DecorView$2; -Lcom/android/internal/policy/DecorView$3; -Lcom/android/internal/policy/DecorView$6; -Lcom/android/internal/policy/DecorView$ActionModeCallback2Wrapper$1; -Lcom/android/internal/policy/DecorView$ActionModeCallback2Wrapper; -Lcom/android/internal/policy/DecorView$ColorViewAttributes; -Lcom/android/internal/policy/DecorView$ColorViewState; -Lcom/android/internal/policy/DecorView; -Lcom/android/internal/policy/GestureNavigationSettingsObserver$$ExternalSyntheticLambda0; -Lcom/android/internal/policy/GestureNavigationSettingsObserver$1; -Lcom/android/internal/policy/GestureNavigationSettingsObserver; -Lcom/android/internal/policy/IKeyguardDismissCallback$Stub$Proxy; -Lcom/android/internal/policy/IKeyguardDismissCallback$Stub; -Lcom/android/internal/policy/IKeyguardDismissCallback; -Lcom/android/internal/policy/IKeyguardDrawnCallback$Stub$Proxy; -Lcom/android/internal/policy/IKeyguardDrawnCallback$Stub; -Lcom/android/internal/policy/IKeyguardDrawnCallback; -Lcom/android/internal/policy/IKeyguardExitCallback$Stub$Proxy; -Lcom/android/internal/policy/IKeyguardExitCallback$Stub; -Lcom/android/internal/policy/IKeyguardExitCallback; -Lcom/android/internal/policy/IKeyguardLockedStateListener$Stub; -Lcom/android/internal/policy/IKeyguardLockedStateListener; -Lcom/android/internal/policy/IKeyguardService$Stub$Proxy; -Lcom/android/internal/policy/IKeyguardService$Stub; -Lcom/android/internal/policy/IKeyguardService; -Lcom/android/internal/policy/IKeyguardStateCallback$Stub$Proxy; -Lcom/android/internal/policy/IKeyguardStateCallback$Stub; -Lcom/android/internal/policy/IKeyguardStateCallback; -Lcom/android/internal/policy/IShortcutService$Stub$Proxy; -Lcom/android/internal/policy/IShortcutService$Stub; -Lcom/android/internal/policy/IShortcutService; -Lcom/android/internal/policy/KeyInterceptionInfo; -Lcom/android/internal/policy/LogDecelerateInterpolator; -Lcom/android/internal/policy/PhoneFallbackEventHandler; -Lcom/android/internal/policy/PhoneLayoutInflater; -Lcom/android/internal/policy/PhoneWindow$$ExternalSyntheticLambda0; -Lcom/android/internal/policy/PhoneWindow$$ExternalSyntheticLambda1; -Lcom/android/internal/policy/PhoneWindow$1; -Lcom/android/internal/policy/PhoneWindow$ActionMenuPresenterCallback; -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState$1; -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState-IA; -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState; -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState; -Lcom/android/internal/policy/PhoneWindow$PhoneWindowMenuCallback; -Lcom/android/internal/policy/PhoneWindow$RotationWatcher$1; -Lcom/android/internal/policy/PhoneWindow$RotationWatcher; -Lcom/android/internal/policy/PhoneWindow; -Lcom/android/internal/policy/ScreenDecorationsUtils; -Lcom/android/internal/policy/SystemBarUtils; -Lcom/android/internal/policy/TransitionAnimation$$ExternalSyntheticLambda0; -Lcom/android/internal/policy/TransitionAnimation$$ExternalSyntheticLambda1; -Lcom/android/internal/policy/TransitionAnimation; -Lcom/android/internal/policy/WearGestureInterceptionDetector; -Lcom/android/internal/power/ModemPowerProfile; -Lcom/android/internal/protolog/ProtoLogGroup; -Lcom/android/internal/protolog/ProtoLogImpl; -Lcom/android/internal/protolog/ProtoLogViewerConfigReader; -Lcom/android/internal/protolog/common/BitmaskConversionException; -Lcom/android/internal/protolog/common/IProtoLogGroup; -Lcom/android/internal/protolog/common/LogDataType; -Lcom/android/internal/security/VerityUtils; -Lcom/android/internal/statusbar/IAddTileResultCallback; -Lcom/android/internal/statusbar/IStatusBar$Stub; -Lcom/android/internal/statusbar/IStatusBar; -Lcom/android/internal/statusbar/IStatusBarService$Stub$Proxy; -Lcom/android/internal/statusbar/IStatusBarService$Stub; -Lcom/android/internal/statusbar/IStatusBarService; -Lcom/android/internal/statusbar/IUndoMediaTransferCallback; -Lcom/android/internal/statusbar/LetterboxDetails$1; -Lcom/android/internal/statusbar/LetterboxDetails; -Lcom/android/internal/statusbar/NotificationVisibility$1; -Lcom/android/internal/statusbar/NotificationVisibility$NotificationLocation; -Lcom/android/internal/statusbar/NotificationVisibility; -Lcom/android/internal/statusbar/RegisterStatusBarResult$1; -Lcom/android/internal/statusbar/RegisterStatusBarResult; -Lcom/android/internal/statusbar/StatusBarIcon$1; -Lcom/android/internal/statusbar/StatusBarIcon; -Lcom/android/internal/telecom/ClientTransactionalServiceRepository; -Lcom/android/internal/telecom/IConnectionService$Stub$Proxy; -Lcom/android/internal/telecom/IConnectionService$Stub; -Lcom/android/internal/telecom/IConnectionService; -Lcom/android/internal/telecom/IConnectionServiceAdapter$Stub; -Lcom/android/internal/telecom/IConnectionServiceAdapter; -Lcom/android/internal/telecom/IDeviceIdleControllerAdapter$Stub; -Lcom/android/internal/telecom/IDeviceIdleControllerAdapter; -Lcom/android/internal/telecom/IInCallAdapter$Stub; -Lcom/android/internal/telecom/IInCallAdapter; -Lcom/android/internal/telecom/IInCallService$Stub$Proxy; -Lcom/android/internal/telecom/IInCallService$Stub; -Lcom/android/internal/telecom/IInCallService; -Lcom/android/internal/telecom/IInternalServiceRetriever$Stub; -Lcom/android/internal/telecom/IInternalServiceRetriever; -Lcom/android/internal/telecom/ITelecomLoader$Stub$Proxy; -Lcom/android/internal/telecom/ITelecomLoader$Stub; -Lcom/android/internal/telecom/ITelecomLoader; -Lcom/android/internal/telecom/ITelecomService$Stub$Proxy; -Lcom/android/internal/telecom/ITelecomService$Stub; -Lcom/android/internal/telecom/ITelecomService; -Lcom/android/internal/telecom/IVideoCallback; -Lcom/android/internal/telecom/IVideoProvider$Stub$Proxy; -Lcom/android/internal/telecom/IVideoProvider$Stub; -Lcom/android/internal/telecom/IVideoProvider; -Lcom/android/internal/telecom/RemoteServiceCallback$Stub$Proxy; -Lcom/android/internal/telecom/RemoteServiceCallback$Stub; -Lcom/android/internal/telecom/RemoteServiceCallback; -Lcom/android/internal/telephony/ATParseEx; -Lcom/android/internal/telephony/ATResponseParser; -Lcom/android/internal/telephony/AndroidUtilIndentingPrintWriter; -Lcom/android/internal/telephony/AppSmsManager$AppRequestInfo; -Lcom/android/internal/telephony/AppSmsManager; -Lcom/android/internal/telephony/AsyncChannel$1ConnectAsync; -Lcom/android/internal/telephony/AsyncChannel$AsyncChannelConnection; -Lcom/android/internal/telephony/AsyncChannel$DeathMonitor; -Lcom/android/internal/telephony/AsyncChannel$SyncMessenger$SyncHandler; -Lcom/android/internal/telephony/AsyncChannel$SyncMessenger; -Lcom/android/internal/telephony/AsyncChannel; -Lcom/android/internal/telephony/AsyncEmergencyContactNotifier; -Lcom/android/internal/telephony/AsyncService$AsyncServiceInfo; -Lcom/android/internal/telephony/AsyncService; -Lcom/android/internal/telephony/BaseCommands; -Lcom/android/internal/telephony/BiMap; -Lcom/android/internal/telephony/BitwiseInputStream$AccessException; -Lcom/android/internal/telephony/BitwiseInputStream; -Lcom/android/internal/telephony/BlockChecker; -Lcom/android/internal/telephony/BtSmsInterfaceManager$MapMessageSender; -Lcom/android/internal/telephony/BtSmsInterfaceManager; -Lcom/android/internal/telephony/Call$1; -Lcom/android/internal/telephony/Call$SrvccState; -Lcom/android/internal/telephony/Call$State; -Lcom/android/internal/telephony/Call; -Lcom/android/internal/telephony/CallFailCause; -Lcom/android/internal/telephony/CallForwardInfo; -Lcom/android/internal/telephony/CallManager$CallManagerHandler; -Lcom/android/internal/telephony/CallManager; -Lcom/android/internal/telephony/CallStateException; -Lcom/android/internal/telephony/CallTracker; -Lcom/android/internal/telephony/CarrierActionAgent$1; -Lcom/android/internal/telephony/CarrierActionAgent; -Lcom/android/internal/telephony/CarrierAppUtils$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/CarrierAppUtils$AssociatedAppInfo; -Lcom/android/internal/telephony/CarrierAppUtils; -Lcom/android/internal/telephony/CarrierInfoManager; -Lcom/android/internal/telephony/CarrierKeyDownloadManager$1; -Lcom/android/internal/telephony/CarrierKeyDownloadManager$2; -Lcom/android/internal/telephony/CarrierKeyDownloadManager$3; -Lcom/android/internal/telephony/CarrierKeyDownloadManager$DefaultNetworkCallback; -Lcom/android/internal/telephony/CarrierKeyDownloadManager; -Lcom/android/internal/telephony/CarrierPrivilegesTracker$1; -Lcom/android/internal/telephony/CarrierPrivilegesTracker; -Lcom/android/internal/telephony/CarrierResolver$1; -Lcom/android/internal/telephony/CarrierResolver$2; -Lcom/android/internal/telephony/CarrierResolver$3; -Lcom/android/internal/telephony/CarrierResolver$CarrierMatchingRule; -Lcom/android/internal/telephony/CarrierResolver; -Lcom/android/internal/telephony/CarrierServiceBindHelper$1; -Lcom/android/internal/telephony/CarrierServiceBindHelper$2; -Lcom/android/internal/telephony/CarrierServiceBindHelper$AppBinding$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/CarrierServiceBindHelper$AppBinding; -Lcom/android/internal/telephony/CarrierServiceBindHelper$CarrierServiceConnection; -Lcom/android/internal/telephony/CarrierServiceBindHelper$CarrierServicePackageMonitor; -Lcom/android/internal/telephony/CarrierServiceBindHelper; -Lcom/android/internal/telephony/CarrierServiceStateTracker$1; -Lcom/android/internal/telephony/CarrierServiceStateTracker$AllowedNetworkTypesListener; -Lcom/android/internal/telephony/CarrierServiceStateTracker$EmergencyNetworkNotification; -Lcom/android/internal/telephony/CarrierServiceStateTracker$NotificationType; -Lcom/android/internal/telephony/CarrierServiceStateTracker$PrefNetworkNotification; -Lcom/android/internal/telephony/CarrierServiceStateTracker; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CallbackTimeoutHandler$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CallbackTimeoutHandler; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierServicesSmsFilterCallbackInterface; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierSmsFilter$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierSmsFilter$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierSmsFilter$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierSmsFilter; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$CarrierSmsFilterCallback; -Lcom/android/internal/telephony/CarrierServicesSmsFilter$FilterAggregator; -Lcom/android/internal/telephony/CarrierServicesSmsFilter; -Lcom/android/internal/telephony/CarrierSignalAgent$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/CarrierSignalAgent$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/CarrierSignalAgent$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/CarrierSignalAgent$1; -Lcom/android/internal/telephony/CarrierSignalAgent; -Lcom/android/internal/telephony/CarrierSmsUtils; -Lcom/android/internal/telephony/CellBroadcastServiceManager$1; -Lcom/android/internal/telephony/CellBroadcastServiceManager$CellBroadcastServiceConnection; -Lcom/android/internal/telephony/CellBroadcastServiceManager; -Lcom/android/internal/telephony/CellBroadcastUtils; -Lcom/android/internal/telephony/CellNetworkScanResult$1; -Lcom/android/internal/telephony/CellNetworkScanResult; -Lcom/android/internal/telephony/CellularNetworkService$CellularNetworkServiceProvider$1; -Lcom/android/internal/telephony/CellularNetworkService$CellularNetworkServiceProvider; -Lcom/android/internal/telephony/CellularNetworkService; -Lcom/android/internal/telephony/ClientWakelockAccountant; -Lcom/android/internal/telephony/ClientWakelockTracker; -Lcom/android/internal/telephony/CommandException$Error; -Lcom/android/internal/telephony/CommandException; -Lcom/android/internal/telephony/CommandsInterface; -Lcom/android/internal/telephony/Connection$Capability; -Lcom/android/internal/telephony/Connection$Listener; -Lcom/android/internal/telephony/Connection$ListenerBase; -Lcom/android/internal/telephony/Connection$PostDialListener; -Lcom/android/internal/telephony/Connection$PostDialState; -Lcom/android/internal/telephony/Connection; -Lcom/android/internal/telephony/DctConstants$Activity; -Lcom/android/internal/telephony/DctConstants$State; -Lcom/android/internal/telephony/DebugService; -Lcom/android/internal/telephony/DefaultPhoneNotifier$1; -Lcom/android/internal/telephony/DefaultPhoneNotifier; -Lcom/android/internal/telephony/DeviceStateMonitor$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/DeviceStateMonitor$1; -Lcom/android/internal/telephony/DeviceStateMonitor$2; -Lcom/android/internal/telephony/DeviceStateMonitor$3; -Lcom/android/internal/telephony/DeviceStateMonitor; -Lcom/android/internal/telephony/DisplayInfoController; -Lcom/android/internal/telephony/DriverCall$State; -Lcom/android/internal/telephony/DriverCall; -Lcom/android/internal/telephony/EncodeException; -Lcom/android/internal/telephony/EventLogTags; -Lcom/android/internal/telephony/ExponentialBackoff$1; -Lcom/android/internal/telephony/ExponentialBackoff$HandlerAdapter; -Lcom/android/internal/telephony/ExponentialBackoff; -Lcom/android/internal/telephony/FastXmlSerializer; -Lcom/android/internal/telephony/GbaManager$1; -Lcom/android/internal/telephony/GbaManager$GbaDeathRecipient; -Lcom/android/internal/telephony/GbaManager$GbaManagerHandler; -Lcom/android/internal/telephony/GbaManager$GbaServiceConnection; -Lcom/android/internal/telephony/GbaManager; -Lcom/android/internal/telephony/GlobalSettingsHelper; -Lcom/android/internal/telephony/GsmAlphabet$TextEncodingDetails; -Lcom/android/internal/telephony/GsmAlphabet; -Lcom/android/internal/telephony/GsmCdmaCall; -Lcom/android/internal/telephony/GsmCdmaCallTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/GsmCdmaCallTracker$1; -Lcom/android/internal/telephony/GsmCdmaCallTracker$2; -Lcom/android/internal/telephony/GsmCdmaCallTracker$3; -Lcom/android/internal/telephony/GsmCdmaCallTracker; -Lcom/android/internal/telephony/GsmCdmaConnection$1; -Lcom/android/internal/telephony/GsmCdmaConnection$MyHandler; -Lcom/android/internal/telephony/GsmCdmaConnection; -Lcom/android/internal/telephony/GsmCdmaPhone$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/GsmCdmaPhone$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/GsmCdmaPhone$1; -Lcom/android/internal/telephony/GsmCdmaPhone$2; -Lcom/android/internal/telephony/GsmCdmaPhone$3; -Lcom/android/internal/telephony/GsmCdmaPhone$Cfu; -Lcom/android/internal/telephony/GsmCdmaPhone$ImsManagerFactory; -Lcom/android/internal/telephony/GsmCdmaPhone; -Lcom/android/internal/telephony/HalVersion; -Lcom/android/internal/telephony/HardwareConfig; -Lcom/android/internal/telephony/HbpcdLookup$MccIdd; -Lcom/android/internal/telephony/HbpcdLookup$MccLookup; -Lcom/android/internal/telephony/HbpcdUtils; -Lcom/android/internal/telephony/HexDump; -Lcom/android/internal/telephony/IBooleanConsumer$Stub$Proxy; -Lcom/android/internal/telephony/IBooleanConsumer$Stub; -Lcom/android/internal/telephony/IBooleanConsumer; -Lcom/android/internal/telephony/ICallForwardingInfoCallback$Stub; -Lcom/android/internal/telephony/ICallForwardingInfoCallback; -Lcom/android/internal/telephony/ICarrierConfigChangeListener$Stub; -Lcom/android/internal/telephony/ICarrierConfigChangeListener; -Lcom/android/internal/telephony/ICarrierConfigLoader$Stub$Proxy; -Lcom/android/internal/telephony/ICarrierConfigLoader$Stub; -Lcom/android/internal/telephony/ICarrierConfigLoader; -Lcom/android/internal/telephony/ICarrierPrivilegesCallback$Stub; -Lcom/android/internal/telephony/ICarrierPrivilegesCallback; -Lcom/android/internal/telephony/IIccPhoneBook$Default; -Lcom/android/internal/telephony/IIccPhoneBook$Stub$Proxy; -Lcom/android/internal/telephony/IIccPhoneBook$Stub; -Lcom/android/internal/telephony/IIccPhoneBook; -Lcom/android/internal/telephony/IIntegerConsumer$Stub$Proxy; -Lcom/android/internal/telephony/IIntegerConsumer$Stub; -Lcom/android/internal/telephony/IIntegerConsumer; -Lcom/android/internal/telephony/IMms$Stub$Proxy; -Lcom/android/internal/telephony/IMms$Stub; -Lcom/android/internal/telephony/IMms; -Lcom/android/internal/telephony/INumberVerificationCallback$Stub$Proxy; -Lcom/android/internal/telephony/INumberVerificationCallback$Stub; -Lcom/android/internal/telephony/INumberVerificationCallback; -Lcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub$Proxy; -Lcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub; -Lcom/android/internal/telephony/IOnSubscriptionsChangedListener; -Lcom/android/internal/telephony/IOns$Stub$Proxy; -Lcom/android/internal/telephony/IOns$Stub; -Lcom/android/internal/telephony/IOns; -Lcom/android/internal/telephony/IPhoneStateListener$Stub; -Lcom/android/internal/telephony/IPhoneStateListener; -Lcom/android/internal/telephony/IPhoneSubInfo$Stub$Proxy; -Lcom/android/internal/telephony/IPhoneSubInfo$Stub; -Lcom/android/internal/telephony/IPhoneSubInfo; -Lcom/android/internal/telephony/ISetOpportunisticDataCallback$Stub$Proxy; -Lcom/android/internal/telephony/ISetOpportunisticDataCallback$Stub; -Lcom/android/internal/telephony/ISetOpportunisticDataCallback; -Lcom/android/internal/telephony/ISms$Stub$Proxy; -Lcom/android/internal/telephony/ISms$Stub; -Lcom/android/internal/telephony/ISms; -Lcom/android/internal/telephony/ISmsImplBase; -Lcom/android/internal/telephony/IState; -Lcom/android/internal/telephony/ISub$Stub$Proxy; -Lcom/android/internal/telephony/ISub$Stub; -Lcom/android/internal/telephony/ISub; -Lcom/android/internal/telephony/ITelephony$Stub; -Lcom/android/internal/telephony/ITelephony; -Lcom/android/internal/telephony/ITelephonyRegistry$Stub$Proxy; -Lcom/android/internal/telephony/ITelephonyRegistry$Stub; -Lcom/android/internal/telephony/ITelephonyRegistry; -Lcom/android/internal/telephony/IUpdateAvailableNetworksCallback$Stub; -Lcom/android/internal/telephony/IUpdateAvailableNetworksCallback; -Lcom/android/internal/telephony/IWapPushManager$Stub; -Lcom/android/internal/telephony/IWapPushManager; -Lcom/android/internal/telephony/IccCard; -Lcom/android/internal/telephony/IccCardConstants$State; -Lcom/android/internal/telephony/IccPhoneBookInterfaceManager$1; -Lcom/android/internal/telephony/IccPhoneBookInterfaceManager$Request; -Lcom/android/internal/telephony/IccPhoneBookInterfaceManager; -Lcom/android/internal/telephony/IccProvider; -Lcom/android/internal/telephony/IccSmsInterfaceManager$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/IccSmsInterfaceManager$1; -Lcom/android/internal/telephony/IccSmsInterfaceManager$CdmaBroadcastRangeManager; -Lcom/android/internal/telephony/IccSmsInterfaceManager$CellBroadcastRangeManager; -Lcom/android/internal/telephony/IccSmsInterfaceManager$Request; -Lcom/android/internal/telephony/IccSmsInterfaceManager; -Lcom/android/internal/telephony/ImsSmsDispatcher$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/ImsSmsDispatcher$1; -Lcom/android/internal/telephony/ImsSmsDispatcher$2; -Lcom/android/internal/telephony/ImsSmsDispatcher$3; -Lcom/android/internal/telephony/ImsSmsDispatcher$4$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/ImsSmsDispatcher$4; -Lcom/android/internal/telephony/ImsSmsDispatcher$5; -Lcom/android/internal/telephony/ImsSmsDispatcher$FeatureConnectorFactory; -Lcom/android/internal/telephony/ImsSmsDispatcher; -Lcom/android/internal/telephony/InboundSmsHandler$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/InboundSmsHandler$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/InboundSmsHandler$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/InboundSmsHandler$CarrierServicesSmsFilterCallback; -Lcom/android/internal/telephony/InboundSmsHandler$CbTestBroadcastReceiver; -Lcom/android/internal/telephony/InboundSmsHandler$DefaultState; -Lcom/android/internal/telephony/InboundSmsHandler$DeliveringState; -Lcom/android/internal/telephony/InboundSmsHandler$IdleState; -Lcom/android/internal/telephony/InboundSmsHandler$NewMessageNotificationActionReceiver; -Lcom/android/internal/telephony/InboundSmsHandler$SmsBroadcastReceiver; -Lcom/android/internal/telephony/InboundSmsHandler$SmsFilter; -Lcom/android/internal/telephony/InboundSmsHandler$StartupState; -Lcom/android/internal/telephony/InboundSmsHandler$WaitingState; -Lcom/android/internal/telephony/InboundSmsHandler; -Lcom/android/internal/telephony/InboundSmsTracker; -Lcom/android/internal/telephony/IndentingPrintWriter; -Lcom/android/internal/telephony/IntRangeManager$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/IntRangeManager$ClientRange; -Lcom/android/internal/telephony/IntRangeManager$IntRange; -Lcom/android/internal/telephony/IntRangeManager; -Lcom/android/internal/telephony/IntentBroadcaster$1; -Lcom/android/internal/telephony/IntentBroadcaster; -Lcom/android/internal/telephony/LastCallFailCause; -Lcom/android/internal/telephony/LocalLog$ReadOnlyLocalLog; -Lcom/android/internal/telephony/LocalLog; -Lcom/android/internal/telephony/LocaleTracker$1; -Lcom/android/internal/telephony/LocaleTracker; -Lcom/android/internal/telephony/MccTable$MccEntry; -Lcom/android/internal/telephony/MccTable$MccMnc; -Lcom/android/internal/telephony/MccTable; -Lcom/android/internal/telephony/MissedIncomingCallSmsFilter; -Lcom/android/internal/telephony/MmiCode$State; -Lcom/android/internal/telephony/MmiCode; -Lcom/android/internal/telephony/MultiSimSettingController$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/MultiSimSettingController$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/MultiSimSettingController$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/MultiSimSettingController$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/MultiSimSettingController$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/MultiSimSettingController$SimCombinationWarningParams; -Lcom/android/internal/telephony/MultiSimSettingController$UpdateDefaultAction; -Lcom/android/internal/telephony/MultiSimSettingController; -Lcom/android/internal/telephony/NetworkFactory; -Lcom/android/internal/telephony/NetworkFactoryImpl$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/NetworkFactoryImpl$1; -Lcom/android/internal/telephony/NetworkFactoryImpl$2; -Lcom/android/internal/telephony/NetworkFactoryImpl$NetworkRequestInfo; -Lcom/android/internal/telephony/NetworkFactoryImpl; -Lcom/android/internal/telephony/NetworkFactoryLegacyImpl$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/NetworkFactoryLegacyImpl$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/NetworkFactoryLegacyImpl$1; -Lcom/android/internal/telephony/NetworkFactoryLegacyImpl$NetworkRequestInfo; -Lcom/android/internal/telephony/NetworkFactoryLegacyImpl; -Lcom/android/internal/telephony/NetworkFactoryShim; -Lcom/android/internal/telephony/NetworkRegistrationManager$NetworkRegStateCallback; -Lcom/android/internal/telephony/NetworkRegistrationManager$NetworkServiceConnection; -Lcom/android/internal/telephony/NetworkRegistrationManager$RegManagerDeathRecipient; -Lcom/android/internal/telephony/NetworkRegistrationManager; -Lcom/android/internal/telephony/NetworkScanRequestTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/NetworkScanRequestTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/NetworkScanRequestTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/NetworkScanRequestTracker$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/NetworkScanRequestTracker$1; -Lcom/android/internal/telephony/NetworkScanRequestTracker$2; -Lcom/android/internal/telephony/NetworkScanRequestTracker$NetworkScanRequestInfo; -Lcom/android/internal/telephony/NetworkScanRequestTracker$NetworkScanRequestScheduler; -Lcom/android/internal/telephony/NetworkScanRequestTracker; -Lcom/android/internal/telephony/NetworkScanResult$1; -Lcom/android/internal/telephony/NetworkScanResult; -Lcom/android/internal/telephony/NetworkTypeController$1; -Lcom/android/internal/telephony/NetworkTypeController$DefaultState; -Lcom/android/internal/telephony/NetworkTypeController$IdleState; -Lcom/android/internal/telephony/NetworkTypeController$LegacyState; -Lcom/android/internal/telephony/NetworkTypeController$LteConnectedState; -Lcom/android/internal/telephony/NetworkTypeController$NrConnectedState; -Lcom/android/internal/telephony/NetworkTypeController$OverrideTimerRule; -Lcom/android/internal/telephony/NetworkTypeController; -Lcom/android/internal/telephony/NitzData; -Lcom/android/internal/telephony/NitzStateMachine$DeviceState; -Lcom/android/internal/telephony/NitzStateMachine$DeviceStateImpl; -Lcom/android/internal/telephony/NitzStateMachine; -Lcom/android/internal/telephony/OperatorInfo$1; -Lcom/android/internal/telephony/OperatorInfo$State; -Lcom/android/internal/telephony/OperatorInfo; -Lcom/android/internal/telephony/PackageBasedTokenUtil; -Lcom/android/internal/telephony/PackageChangeReceiver; -Lcom/android/internal/telephony/Phone$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/Phone$NetworkSelectMessage; -Lcom/android/internal/telephony/Phone$SilentRedialParam; -Lcom/android/internal/telephony/Phone; -Lcom/android/internal/telephony/PhoneConfigurationManager$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/PhoneConfigurationManager$1; -Lcom/android/internal/telephony/PhoneConfigurationManager$ConfigManagerHandler; -Lcom/android/internal/telephony/PhoneConfigurationManager$MockableInterface; -Lcom/android/internal/telephony/PhoneConfigurationManager; -Lcom/android/internal/telephony/PhoneConstantConversions$1; -Lcom/android/internal/telephony/PhoneConstantConversions; -Lcom/android/internal/telephony/PhoneConstants$DataState; -Lcom/android/internal/telephony/PhoneConstants$State; -Lcom/android/internal/telephony/PhoneFactory; -Lcom/android/internal/telephony/PhoneInternalInterface$DataActivityState; -Lcom/android/internal/telephony/PhoneInternalInterface$DialArgs$Builder; -Lcom/android/internal/telephony/PhoneInternalInterface$DialArgs; -Lcom/android/internal/telephony/PhoneInternalInterface$SuppService; -Lcom/android/internal/telephony/PhoneInternalInterface; -Lcom/android/internal/telephony/PhoneNotifier; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda10; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda11; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda12; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda13; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda14; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda15; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda16; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda17; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda18; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda19; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda20; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda21; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda22; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda23; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda24; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda25; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda26; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda27; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda6; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda7; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda8; -Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda9; -Lcom/android/internal/telephony/PhoneSubInfoController$CallPhoneMethodHelper; -Lcom/android/internal/telephony/PhoneSubInfoController$PermissionCheckHelper; -Lcom/android/internal/telephony/PhoneSubInfoController; -Lcom/android/internal/telephony/ProxyController$1; -Lcom/android/internal/telephony/ProxyController; -Lcom/android/internal/telephony/RIL$RadioProxyDeathRecipient; -Lcom/android/internal/telephony/RIL$RilHandler; -Lcom/android/internal/telephony/RIL; -Lcom/android/internal/telephony/RILConstants$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/RILConstants$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/RILConstants; -Lcom/android/internal/telephony/RILRequest; -Lcom/android/internal/telephony/RadioBugDetector; -Lcom/android/internal/telephony/RadioCapability; -Lcom/android/internal/telephony/RadioConfig$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/RadioConfig; -Lcom/android/internal/telephony/RadioIndication$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/RadioIndication$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/RadioIndication; -Lcom/android/internal/telephony/RadioInterfaceCapabilityController; -Lcom/android/internal/telephony/RadioNVItems; -Lcom/android/internal/telephony/RadioResponse$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/RadioResponse$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/RadioResponse$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/RadioResponse; -Lcom/android/internal/telephony/RatRatcheter; -Lcom/android/internal/telephony/Registrant; -Lcom/android/internal/telephony/RegistrantList; -Lcom/android/internal/telephony/RegistrationFailedEvent; -Lcom/android/internal/telephony/RestrictedState; -Lcom/android/internal/telephony/RilWakelockInfo; -Lcom/android/internal/telephony/SMSDispatcher$1; -Lcom/android/internal/telephony/SMSDispatcher$ConfirmDialogListener; -Lcom/android/internal/telephony/SMSDispatcher$DataSmsSender$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/SMSDispatcher$DataSmsSender; -Lcom/android/internal/telephony/SMSDispatcher$MultipartSmsSender$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/SMSDispatcher$MultipartSmsSender; -Lcom/android/internal/telephony/SMSDispatcher$SettingsObserver; -Lcom/android/internal/telephony/SMSDispatcher$SmsSender$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/SMSDispatcher$SmsSender$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/SMSDispatcher$SmsSender; -Lcom/android/internal/telephony/SMSDispatcher$SmsSenderCallback; -Lcom/android/internal/telephony/SMSDispatcher$SmsTracker; -Lcom/android/internal/telephony/SMSDispatcher$TextSmsSender$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/SMSDispatcher$TextSmsSender; -Lcom/android/internal/telephony/SMSDispatcher; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/ServiceStateTracker$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/ServiceStateTracker$1; -Lcom/android/internal/telephony/ServiceStateTracker$SstSubscriptionsChangedListener; -Lcom/android/internal/telephony/ServiceStateTracker; -Lcom/android/internal/telephony/SettingsObserver; -Lcom/android/internal/telephony/SimActivationTracker$1; -Lcom/android/internal/telephony/SimActivationTracker; -Lcom/android/internal/telephony/SlidingWindowEventCounter; -Lcom/android/internal/telephony/Sms7BitEncodingTranslator; -Lcom/android/internal/telephony/SmsAddress; -Lcom/android/internal/telephony/SmsApplication$SmsApplicationData; -Lcom/android/internal/telephony/SmsApplication$SmsPackageMonitor; -Lcom/android/internal/telephony/SmsApplication$SmsRoleListener; -Lcom/android/internal/telephony/SmsApplication; -Lcom/android/internal/telephony/SmsBroadcastUndelivered$1; -Lcom/android/internal/telephony/SmsBroadcastUndelivered$ScanRawTableThread; -Lcom/android/internal/telephony/SmsBroadcastUndelivered$SmsReferenceKey; -Lcom/android/internal/telephony/SmsBroadcastUndelivered; -Lcom/android/internal/telephony/SmsConstants$MessageClass; -Lcom/android/internal/telephony/SmsController; -Lcom/android/internal/telephony/SmsDispatchersController$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/SmsDispatchersController$1; -Lcom/android/internal/telephony/SmsDispatchersController$DomainSelectionResolverProxy; -Lcom/android/internal/telephony/SmsDispatchersController$SmsInjectionCallback; -Lcom/android/internal/telephony/SmsDispatchersController; -Lcom/android/internal/telephony/SmsHeader$ConcatRef; -Lcom/android/internal/telephony/SmsHeader$MiscElt; -Lcom/android/internal/telephony/SmsHeader$PortAddrs; -Lcom/android/internal/telephony/SmsHeader$SpecialSmsMsg; -Lcom/android/internal/telephony/SmsHeader; -Lcom/android/internal/telephony/SmsMessageBase$SubmitPduBase; -Lcom/android/internal/telephony/SmsMessageBase; -Lcom/android/internal/telephony/SmsNumberUtils$NumberEntry; -Lcom/android/internal/telephony/SmsNumberUtils; -Lcom/android/internal/telephony/SmsPermissions; -Lcom/android/internal/telephony/SmsRawData$1; -Lcom/android/internal/telephony/SmsRawData; -Lcom/android/internal/telephony/SmsResponse; -Lcom/android/internal/telephony/SmsStorageMonitor$1; -Lcom/android/internal/telephony/SmsStorageMonitor; -Lcom/android/internal/telephony/SmsUsageMonitor$1; -Lcom/android/internal/telephony/SmsUsageMonitor$SettingsObserver; -Lcom/android/internal/telephony/SmsUsageMonitor$SettingsObserverHandler; -Lcom/android/internal/telephony/SmsUsageMonitor$ShortCodePatternMatcher; -Lcom/android/internal/telephony/SmsUsageMonitor; -Lcom/android/internal/telephony/SomeArgs; -Lcom/android/internal/telephony/State; -Lcom/android/internal/telephony/StateMachine$LogRec; -Lcom/android/internal/telephony/StateMachine$LogRecords; -Lcom/android/internal/telephony/StateMachine$SmHandler$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/StateMachine$SmHandler$HaltingState; -Lcom/android/internal/telephony/StateMachine$SmHandler$QuittingState; -Lcom/android/internal/telephony/StateMachine$SmHandler$StateInfo; -Lcom/android/internal/telephony/StateMachine$SmHandler; -Lcom/android/internal/telephony/StateMachine; -Lcom/android/internal/telephony/TelephonyCapabilities; -Lcom/android/internal/telephony/TelephonyCommonStatsLog; -Lcom/android/internal/telephony/TelephonyComponentFactory$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/TelephonyComponentFactory$InjectedComponents; -Lcom/android/internal/telephony/TelephonyComponentFactory; -Lcom/android/internal/telephony/TelephonyDevController; -Lcom/android/internal/telephony/TelephonyFacade; -Lcom/android/internal/telephony/TelephonyPermissions; -Lcom/android/internal/telephony/TelephonyStatsLog; -Lcom/android/internal/telephony/TelephonyTester$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/TelephonyTester$1; -Lcom/android/internal/telephony/TelephonyTester; -Lcom/android/internal/telephony/TimeUtils; -Lcom/android/internal/telephony/UUSInfo; -Lcom/android/internal/telephony/UiccPhoneBookController; -Lcom/android/internal/telephony/UserIcons; -Lcom/android/internal/telephony/VisualVoicemailSmsFilter$1; -Lcom/android/internal/telephony/VisualVoicemailSmsFilter$FullMessage; -Lcom/android/internal/telephony/VisualVoicemailSmsFilter$PhoneAccountHandleConverter; -Lcom/android/internal/telephony/VisualVoicemailSmsFilter; -Lcom/android/internal/telephony/VisualVoicemailSmsParser$WrappedMessageData; -Lcom/android/internal/telephony/VisualVoicemailSmsParser; -Lcom/android/internal/telephony/WakeLockStateMachine$1; -Lcom/android/internal/telephony/WakeLockStateMachine$DefaultState; -Lcom/android/internal/telephony/WakeLockStateMachine$IdleState; -Lcom/android/internal/telephony/WakeLockStateMachine$WaitingState; -Lcom/android/internal/telephony/WakeLockStateMachine; -Lcom/android/internal/telephony/WapPushManagerParams; -Lcom/android/internal/telephony/WapPushOverSms$DecodedResult; -Lcom/android/internal/telephony/WapPushOverSms; -Lcom/android/internal/telephony/WspTypeDecoder; -Lcom/android/internal/telephony/build/SdkLevel; -Lcom/android/internal/telephony/cat/AppInterface$CommandType; -Lcom/android/internal/telephony/cat/AppInterface; -Lcom/android/internal/telephony/cat/BIPClientParams; -Lcom/android/internal/telephony/cat/BerTlv; -Lcom/android/internal/telephony/cat/CallSetupParams; -Lcom/android/internal/telephony/cat/CatCmdMessage$1; -Lcom/android/internal/telephony/cat/CatCmdMessage$2; -Lcom/android/internal/telephony/cat/CatCmdMessage$BrowserSettings; -Lcom/android/internal/telephony/cat/CatCmdMessage$BrowserTerminationCauses; -Lcom/android/internal/telephony/cat/CatCmdMessage$CallSettings; -Lcom/android/internal/telephony/cat/CatCmdMessage$SetupEventListConstants; -Lcom/android/internal/telephony/cat/CatCmdMessage$SetupEventListSettings; -Lcom/android/internal/telephony/cat/CatCmdMessage; -Lcom/android/internal/telephony/cat/CatException; -Lcom/android/internal/telephony/cat/CatLog; -Lcom/android/internal/telephony/cat/CatResponseMessage; -Lcom/android/internal/telephony/cat/CatService$1; -Lcom/android/internal/telephony/cat/CatService; -Lcom/android/internal/telephony/cat/CommandDetails$1; -Lcom/android/internal/telephony/cat/CommandDetails; -Lcom/android/internal/telephony/cat/CommandParams; -Lcom/android/internal/telephony/cat/CommandParamsFactory$1; -Lcom/android/internal/telephony/cat/CommandParamsFactory; -Lcom/android/internal/telephony/cat/ComprehensionTlv; -Lcom/android/internal/telephony/cat/ComprehensionTlvTag; -Lcom/android/internal/telephony/cat/DTTZResponseData; -Lcom/android/internal/telephony/cat/DeviceIdentities; -Lcom/android/internal/telephony/cat/DisplayTextParams; -Lcom/android/internal/telephony/cat/Duration$1; -Lcom/android/internal/telephony/cat/Duration$TimeUnit; -Lcom/android/internal/telephony/cat/Duration; -Lcom/android/internal/telephony/cat/FontSize; -Lcom/android/internal/telephony/cat/GetInkeyInputResponseData; -Lcom/android/internal/telephony/cat/GetInputParams; -Lcom/android/internal/telephony/cat/IconId; -Lcom/android/internal/telephony/cat/IconLoader; -Lcom/android/internal/telephony/cat/ImageDescriptor; -Lcom/android/internal/telephony/cat/Input$1; -Lcom/android/internal/telephony/cat/Input; -Lcom/android/internal/telephony/cat/Item$1; -Lcom/android/internal/telephony/cat/Item; -Lcom/android/internal/telephony/cat/ItemsIconId; -Lcom/android/internal/telephony/cat/LanguageParams; -Lcom/android/internal/telephony/cat/LanguageResponseData; -Lcom/android/internal/telephony/cat/LaunchBrowserMode; -Lcom/android/internal/telephony/cat/LaunchBrowserParams; -Lcom/android/internal/telephony/cat/Menu$1; -Lcom/android/internal/telephony/cat/Menu; -Lcom/android/internal/telephony/cat/PlayToneParams; -Lcom/android/internal/telephony/cat/PresentationType; -Lcom/android/internal/telephony/cat/ResponseData; -Lcom/android/internal/telephony/cat/ResultCode; -Lcom/android/internal/telephony/cat/ResultException$1; -Lcom/android/internal/telephony/cat/ResultException; -Lcom/android/internal/telephony/cat/RilMessage; -Lcom/android/internal/telephony/cat/RilMessageDecoder$StateCmdParamsReady; -Lcom/android/internal/telephony/cat/RilMessageDecoder$StateStart; -Lcom/android/internal/telephony/cat/RilMessageDecoder; -Lcom/android/internal/telephony/cat/SelectItemParams; -Lcom/android/internal/telephony/cat/SelectItemResponseData; -Lcom/android/internal/telephony/cat/SetEventListParams; -Lcom/android/internal/telephony/cat/TextAlignment; -Lcom/android/internal/telephony/cat/TextAttribute; -Lcom/android/internal/telephony/cat/TextColor; -Lcom/android/internal/telephony/cat/TextMessage$1; -Lcom/android/internal/telephony/cat/TextMessage; -Lcom/android/internal/telephony/cat/Tone$1; -Lcom/android/internal/telephony/cat/Tone; -Lcom/android/internal/telephony/cat/ToneSettings$1; -Lcom/android/internal/telephony/cat/ToneSettings; -Lcom/android/internal/telephony/cat/ValueObject; -Lcom/android/internal/telephony/cat/ValueParser; -Lcom/android/internal/telephony/cdma/CdmaCallWaitingNotification; -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaCbTestBroadcastReceiver; -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaScpTestBroadcastReceiver; -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaDisplayInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaLineControlInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaNumberInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaRedirectingNumberInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaSignalInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaT53AudioControlInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords$CdmaT53ClirInfoRec; -Lcom/android/internal/telephony/cdma/CdmaInformationRecords; -Lcom/android/internal/telephony/cdma/CdmaMmiCode; -Lcom/android/internal/telephony/cdma/CdmaSMSDispatcher; -Lcom/android/internal/telephony/cdma/CdmaSmsBroadcastConfigInfo; -Lcom/android/internal/telephony/cdma/CdmaSubscriptionSourceManager; -Lcom/android/internal/telephony/cdma/EriInfo; -Lcom/android/internal/telephony/cdma/EriManager$EriDisplayInformation; -Lcom/android/internal/telephony/cdma/EriManager$EriFile; -Lcom/android/internal/telephony/cdma/EriManager; -Lcom/android/internal/telephony/cdma/SignalToneUtil; -Lcom/android/internal/telephony/cdma/SmsMessage$SubmitPdu; -Lcom/android/internal/telephony/cdma/SmsMessage; -Lcom/android/internal/telephony/cdma/sms/BearerData$CodingException; -Lcom/android/internal/telephony/cdma/sms/BearerData$TimeStamp; -Lcom/android/internal/telephony/cdma/sms/BearerData; -Lcom/android/internal/telephony/cdma/sms/CdmaSmsAddress; -Lcom/android/internal/telephony/cdma/sms/CdmaSmsSubaddress; -Lcom/android/internal/telephony/cdma/sms/SmsEnvelope; -Lcom/android/internal/telephony/cdma/sms/UserData; -Lcom/android/internal/telephony/cdnr/BrandOverrideEfData; -Lcom/android/internal/telephony/cdnr/CarrierConfigEfData; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameData$1; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameData$Builder; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameData; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver$CarrierDisplayNameConditionRule; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver$WfcCarrierNameFormatter; -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver; -Lcom/android/internal/telephony/cdnr/EfData; -Lcom/android/internal/telephony/cdnr/EriEfData; -Lcom/android/internal/telephony/cdnr/RuimEfData; -Lcom/android/internal/telephony/cdnr/UsimEfData; -Lcom/android/internal/telephony/d2d/Communicator$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/d2d/Communicator$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/d2d/Communicator$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/d2d/Communicator$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/d2d/Communicator$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/d2d/Communicator$Callback; -Lcom/android/internal/telephony/d2d/Communicator$Message; -Lcom/android/internal/telephony/d2d/Communicator; -Lcom/android/internal/telephony/d2d/DtmfAdapter; -Lcom/android/internal/telephony/d2d/DtmfTransport$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/d2d/DtmfTransport$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/d2d/DtmfTransport$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/d2d/DtmfTransport; -Lcom/android/internal/telephony/d2d/MessageTypeAndValueHelper; -Lcom/android/internal/telephony/d2d/RtpAdapter$Callback; -Lcom/android/internal/telephony/d2d/RtpAdapter; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda6; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda7; -Lcom/android/internal/telephony/d2d/RtpTransport$$ExternalSyntheticLambda8; -Lcom/android/internal/telephony/d2d/RtpTransport; -Lcom/android/internal/telephony/d2d/Timeouts$Adapter; -Lcom/android/internal/telephony/d2d/Timeouts; -Lcom/android/internal/telephony/d2d/TransportProtocol$Callback; -Lcom/android/internal/telephony/d2d/TransportProtocol; -Lcom/android/internal/telephony/data/DataCallback; -Lcom/android/internal/telephony/data/DataNetworkController$DataNetworkControllerCallback; -Lcom/android/internal/telephony/data/DataSettingsManager$DataSettingsManagerCallback; -Lcom/android/internal/telephony/data/TelephonyNetworkFactory; -Lcom/android/internal/telephony/emergency/EmergencyNumberTracker$1; -Lcom/android/internal/telephony/emergency/EmergencyNumberTracker; -Lcom/android/internal/telephony/euicc/EuiccCardController$10; -Lcom/android/internal/telephony/euicc/EuiccCardController$11; -Lcom/android/internal/telephony/euicc/EuiccCardController$12; -Lcom/android/internal/telephony/euicc/EuiccCardController$13; -Lcom/android/internal/telephony/euicc/EuiccCardController$14; -Lcom/android/internal/telephony/euicc/EuiccCardController$15; -Lcom/android/internal/telephony/euicc/EuiccCardController$16; -Lcom/android/internal/telephony/euicc/EuiccCardController$17; -Lcom/android/internal/telephony/euicc/EuiccCardController$18; -Lcom/android/internal/telephony/euicc/EuiccCardController$19; -Lcom/android/internal/telephony/euicc/EuiccCardController$1; -Lcom/android/internal/telephony/euicc/EuiccCardController$20; -Lcom/android/internal/telephony/euicc/EuiccCardController$21; -Lcom/android/internal/telephony/euicc/EuiccCardController$22; -Lcom/android/internal/telephony/euicc/EuiccCardController$2; -Lcom/android/internal/telephony/euicc/EuiccCardController$3; -Lcom/android/internal/telephony/euicc/EuiccCardController$4; -Lcom/android/internal/telephony/euicc/EuiccCardController$5; -Lcom/android/internal/telephony/euicc/EuiccCardController$6; -Lcom/android/internal/telephony/euicc/EuiccCardController$7; -Lcom/android/internal/telephony/euicc/EuiccCardController$8; -Lcom/android/internal/telephony/euicc/EuiccCardController$9; -Lcom/android/internal/telephony/euicc/EuiccCardController$SimSlotStatusChangedBroadcastReceiver; -Lcom/android/internal/telephony/euicc/EuiccCardController; -Lcom/android/internal/telephony/euicc/EuiccConnector$1; -Lcom/android/internal/telephony/euicc/EuiccConnector$AvailableState; -Lcom/android/internal/telephony/euicc/EuiccConnector$BaseEuiccCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$BindingState; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$1$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$10$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$10; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$11$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$11; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$12$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$12; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$13$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$13; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$14$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$14; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$15$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$15; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$1; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$2$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$2; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$3$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$3; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$4$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$4; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$5$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$5; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$6$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$6; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$7$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$7; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$8$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$8; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$9$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$9; -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState; -Lcom/android/internal/telephony/euicc/EuiccConnector$DeleteCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$DeleteRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector$DisconnectedState; -Lcom/android/internal/telephony/euicc/EuiccConnector$DownloadCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$DownloadRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector$DumpEuiccServiceCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$EraseCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$EuiccPackageMonitor; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetAvailableMemoryInBytesCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetDefaultListCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetDefaultListRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetEidCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetEuiccInfoCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetEuiccProfileInfoListCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetMetadataCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetMetadataRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector$GetOtaStatusCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$OtaStatusChangedCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$RetainSubscriptionsCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$SwitchCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$SwitchRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector$UnavailableState; -Lcom/android/internal/telephony/euicc/EuiccConnector$UpdateNicknameCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccConnector$UpdateNicknameRequest; -Lcom/android/internal/telephony/euicc/EuiccConnector; -Lcom/android/internal/telephony/euicc/EuiccController$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/euicc/EuiccController$10; -Lcom/android/internal/telephony/euicc/EuiccController$11; -Lcom/android/internal/telephony/euicc/EuiccController$12; -Lcom/android/internal/telephony/euicc/EuiccController$13; -Lcom/android/internal/telephony/euicc/EuiccController$1; -Lcom/android/internal/telephony/euicc/EuiccController$2; -Lcom/android/internal/telephony/euicc/EuiccController$3; -Lcom/android/internal/telephony/euicc/EuiccController$4; -Lcom/android/internal/telephony/euicc/EuiccController$5; -Lcom/android/internal/telephony/euicc/EuiccController$6; -Lcom/android/internal/telephony/euicc/EuiccController$7; -Lcom/android/internal/telephony/euicc/EuiccController$8; -Lcom/android/internal/telephony/euicc/EuiccController$9; -Lcom/android/internal/telephony/euicc/EuiccController$DownloadSubscriptionGetMetadataCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccController$GetDefaultListCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccController$GetMetadataCommandCallback; -Lcom/android/internal/telephony/euicc/EuiccController; -Lcom/android/internal/telephony/euicc/EuiccOperation$1; -Lcom/android/internal/telephony/euicc/EuiccOperation$Action; -Lcom/android/internal/telephony/euicc/EuiccOperation; -Lcom/android/internal/telephony/euicc/IAuthenticateServerCallback$Stub; -Lcom/android/internal/telephony/euicc/IAuthenticateServerCallback; -Lcom/android/internal/telephony/euicc/ICancelSessionCallback$Stub; -Lcom/android/internal/telephony/euicc/ICancelSessionCallback; -Lcom/android/internal/telephony/euicc/IDeleteProfileCallback$Stub; -Lcom/android/internal/telephony/euicc/IDeleteProfileCallback; -Lcom/android/internal/telephony/euicc/IDisableProfileCallback$Stub; -Lcom/android/internal/telephony/euicc/IDisableProfileCallback; -Lcom/android/internal/telephony/euicc/IEuiccCardController$Stub$Proxy; -Lcom/android/internal/telephony/euicc/IEuiccCardController$Stub; -Lcom/android/internal/telephony/euicc/IEuiccCardController; -Lcom/android/internal/telephony/euicc/IEuiccController$Stub$Proxy; -Lcom/android/internal/telephony/euicc/IEuiccController$Stub; -Lcom/android/internal/telephony/euicc/IEuiccController; -Lcom/android/internal/telephony/euicc/IGetAllProfilesCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetAllProfilesCallback; -Lcom/android/internal/telephony/euicc/IGetDefaultSmdpAddressCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetDefaultSmdpAddressCallback; -Lcom/android/internal/telephony/euicc/IGetEuiccChallengeCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetEuiccChallengeCallback; -Lcom/android/internal/telephony/euicc/IGetEuiccInfo1Callback$Stub; -Lcom/android/internal/telephony/euicc/IGetEuiccInfo1Callback; -Lcom/android/internal/telephony/euicc/IGetEuiccInfo2Callback$Stub; -Lcom/android/internal/telephony/euicc/IGetEuiccInfo2Callback; -Lcom/android/internal/telephony/euicc/IGetProfileCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetProfileCallback; -Lcom/android/internal/telephony/euicc/IGetRulesAuthTableCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetRulesAuthTableCallback; -Lcom/android/internal/telephony/euicc/IGetSmdsAddressCallback$Stub; -Lcom/android/internal/telephony/euicc/IGetSmdsAddressCallback; -Lcom/android/internal/telephony/euicc/IListNotificationsCallback$Stub; -Lcom/android/internal/telephony/euicc/IListNotificationsCallback; -Lcom/android/internal/telephony/euicc/ILoadBoundProfilePackageCallback$Stub; -Lcom/android/internal/telephony/euicc/ILoadBoundProfilePackageCallback; -Lcom/android/internal/telephony/euicc/IPrepareDownloadCallback$Stub; -Lcom/android/internal/telephony/euicc/IPrepareDownloadCallback; -Lcom/android/internal/telephony/euicc/IRemoveNotificationFromListCallback$Stub; -Lcom/android/internal/telephony/euicc/IRemoveNotificationFromListCallback; -Lcom/android/internal/telephony/euicc/IResetMemoryCallback$Stub; -Lcom/android/internal/telephony/euicc/IResetMemoryCallback; -Lcom/android/internal/telephony/euicc/IRetrieveNotificationCallback$Stub; -Lcom/android/internal/telephony/euicc/IRetrieveNotificationCallback; -Lcom/android/internal/telephony/euicc/IRetrieveNotificationListCallback$Stub; -Lcom/android/internal/telephony/euicc/IRetrieveNotificationListCallback; -Lcom/android/internal/telephony/euicc/ISetDefaultSmdpAddressCallback$Stub; -Lcom/android/internal/telephony/euicc/ISetDefaultSmdpAddressCallback; -Lcom/android/internal/telephony/euicc/ISetNicknameCallback$Stub; -Lcom/android/internal/telephony/euicc/ISetNicknameCallback; -Lcom/android/internal/telephony/euicc/ISwitchToProfileCallback$Stub; -Lcom/android/internal/telephony/euicc/ISwitchToProfileCallback; -Lcom/android/internal/telephony/flags/FeatureFlags; -Lcom/android/internal/telephony/flags/FeatureFlagsImpl; -Lcom/android/internal/telephony/flags/Flags; -Lcom/android/internal/telephony/gsm/GsmInboundSmsHandler$GsmCbTestBroadcastReceiver; -Lcom/android/internal/telephony/gsm/GsmInboundSmsHandler; -Lcom/android/internal/telephony/gsm/GsmMmiCode$1; -Lcom/android/internal/telephony/gsm/GsmMmiCode; -Lcom/android/internal/telephony/gsm/GsmSMSDispatcher; -Lcom/android/internal/telephony/gsm/GsmSmsAddress; -Lcom/android/internal/telephony/gsm/SimTlv; -Lcom/android/internal/telephony/gsm/SmsBroadcastConfigInfo; -Lcom/android/internal/telephony/gsm/SmsMessage$PduParser; -Lcom/android/internal/telephony/gsm/SmsMessage$SubmitPdu; -Lcom/android/internal/telephony/gsm/SmsMessage; -Lcom/android/internal/telephony/gsm/SsData$RequestType; -Lcom/android/internal/telephony/gsm/SsData$ServiceType; -Lcom/android/internal/telephony/gsm/SsData$TeleserviceType; -Lcom/android/internal/telephony/gsm/SsData; -Lcom/android/internal/telephony/gsm/SuppServiceNotification; -Lcom/android/internal/telephony/gsm/UsimDataDownloadHandler; -Lcom/android/internal/telephony/gsm/UsimPhoneBookManager$File; -Lcom/android/internal/telephony/gsm/UsimPhoneBookManager$PbrRecord; -Lcom/android/internal/telephony/gsm/UsimPhoneBookManager; -Lcom/android/internal/telephony/ims/ImsConfigCompatAdapter; -Lcom/android/internal/telephony/ims/ImsRegistrationCompatAdapter$1; -Lcom/android/internal/telephony/ims/ImsRegistrationCompatAdapter; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda10; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda11; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda12; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda13; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda6; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda7; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda8; -Lcom/android/internal/telephony/ims/ImsResolver$$ExternalSyntheticLambda9; -Lcom/android/internal/telephony/ims/ImsResolver$1; -Lcom/android/internal/telephony/ims/ImsResolver$2; -Lcom/android/internal/telephony/ims/ImsResolver$3; -Lcom/android/internal/telephony/ims/ImsResolver$4; -Lcom/android/internal/telephony/ims/ImsResolver$5; -Lcom/android/internal/telephony/ims/ImsResolver$6; -Lcom/android/internal/telephony/ims/ImsResolver$7; -Lcom/android/internal/telephony/ims/ImsResolver$8; -Lcom/android/internal/telephony/ims/ImsResolver$ImsDynamicQueryManagerFactory; -Lcom/android/internal/telephony/ims/ImsResolver$ImsServiceControllerFactory; -Lcom/android/internal/telephony/ims/ImsResolver$ImsServiceInfo; -Lcom/android/internal/telephony/ims/ImsResolver$OverrideConfig; -Lcom/android/internal/telephony/ims/ImsResolver$SubscriptionManagerProxy; -Lcom/android/internal/telephony/ims/ImsResolver$TelephonyManagerProxy; -Lcom/android/internal/telephony/ims/ImsResolver; -Lcom/android/internal/telephony/ims/ImsServiceController$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/ims/ImsServiceController$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/ims/ImsServiceController$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/ims/ImsServiceController$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/ims/ImsServiceController$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/ims/ImsServiceController$1; -Lcom/android/internal/telephony/ims/ImsServiceController$2; -Lcom/android/internal/telephony/ims/ImsServiceController$3; -Lcom/android/internal/telephony/ims/ImsServiceController$ImsFeatureStatusCallback$1; -Lcom/android/internal/telephony/ims/ImsServiceController$ImsFeatureStatusCallback; -Lcom/android/internal/telephony/ims/ImsServiceController$ImsServiceConnection; -Lcom/android/internal/telephony/ims/ImsServiceController$ImsServiceControllerCallbacks; -Lcom/android/internal/telephony/ims/ImsServiceController$RebindRetry; -Lcom/android/internal/telephony/ims/ImsServiceController; -Lcom/android/internal/telephony/ims/ImsServiceControllerCompat; -Lcom/android/internal/telephony/ims/ImsServiceFeatureQueryManager$ImsServiceFeatureQuery; -Lcom/android/internal/telephony/ims/ImsServiceFeatureQueryManager$Listener; -Lcom/android/internal/telephony/ims/ImsServiceFeatureQueryManager; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$1; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$2; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$3; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$4; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$5; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$ConfigListener; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter$ImsRegistrationListenerBase; -Lcom/android/internal/telephony/ims/MmTelFeatureCompatAdapter; -Lcom/android/internal/telephony/ims/MmTelInterfaceAdapter; -Lcom/android/internal/telephony/imsphone/ImsExternalCall; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker$1; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker$2; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker$ExternalCallStateListener; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker$ExternalConnectionListener; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker$ImsCallNotify; -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker; -Lcom/android/internal/telephony/imsphone/ImsExternalConnection$Listener; -Lcom/android/internal/telephony/imsphone/ImsExternalConnection; -Lcom/android/internal/telephony/imsphone/ImsPhone$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/imsphone/ImsPhone$1; -Lcom/android/internal/telephony/imsphone/ImsPhone$2; -Lcom/android/internal/telephony/imsphone/ImsPhone$3; -Lcom/android/internal/telephony/imsphone/ImsPhone$4; -Lcom/android/internal/telephony/imsphone/ImsPhone$ImsDialArgs$Builder; -Lcom/android/internal/telephony/imsphone/ImsPhone$ImsDialArgs; -Lcom/android/internal/telephony/imsphone/ImsPhone$ImsManagerFactory; -Lcom/android/internal/telephony/imsphone/ImsPhone$SS; -Lcom/android/internal/telephony/imsphone/ImsPhone; -Lcom/android/internal/telephony/imsphone/ImsPhoneBase; -Lcom/android/internal/telephony/imsphone/ImsPhoneCall; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$10; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$11; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$12; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$1; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$2; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$3; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$4; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$5; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$6; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$7; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$8; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$9; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$CacheEntry; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$Config; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$ConnectorFactory; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$HoldSwapState; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$MmTelFeatureListener; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$PhoneStateListener; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$SharedPreferenceProxy; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$VtDataUsageProvider; -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker; -Lcom/android/internal/telephony/imsphone/ImsPhoneCommandInterface; -Lcom/android/internal/telephony/imsphone/ImsPhoneConnection$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/imsphone/ImsPhoneConnection$MyHandler; -Lcom/android/internal/telephony/imsphone/ImsPhoneConnection; -Lcom/android/internal/telephony/imsphone/ImsPhoneFactory; -Lcom/android/internal/telephony/imsphone/ImsPhoneMmiCode; -Lcom/android/internal/telephony/imsphone/ImsPullCall; -Lcom/android/internal/telephony/imsphone/ImsRcsStatusListener; -Lcom/android/internal/telephony/imsphone/ImsRegistrationCallbackHelper$1; -Lcom/android/internal/telephony/imsphone/ImsRegistrationCallbackHelper$ImsRegistrationUpdate; -Lcom/android/internal/telephony/imsphone/ImsRegistrationCallbackHelper; -Lcom/android/internal/telephony/imsphone/ImsRttTextHandler$InCallReaderThread; -Lcom/android/internal/telephony/imsphone/ImsRttTextHandler$NetworkWriter; -Lcom/android/internal/telephony/imsphone/ImsRttTextHandler; -Lcom/android/internal/telephony/metrics/AirplaneModeStats; -Lcom/android/internal/telephony/metrics/CallQualityMetrics$TimestampedQualitySnapshot; -Lcom/android/internal/telephony/metrics/CallQualityMetrics; -Lcom/android/internal/telephony/metrics/CallSessionEventBuilder; -Lcom/android/internal/telephony/metrics/CarrierIdMatchStats; -Lcom/android/internal/telephony/metrics/DataCallSessionStats; -Lcom/android/internal/telephony/metrics/DataStallRecoveryStats$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/DataStallRecoveryStats$1; -Lcom/android/internal/telephony/metrics/DataStallRecoveryStats$2; -Lcom/android/internal/telephony/metrics/DataStallRecoveryStats; -Lcom/android/internal/telephony/metrics/ImsStats; -Lcom/android/internal/telephony/metrics/InProgressCallSession; -Lcom/android/internal/telephony/metrics/InProgressSmsSession; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda10; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda11; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda6; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda7; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda8; -Lcom/android/internal/telephony/metrics/MetricsCollector$$ExternalSyntheticLambda9; -Lcom/android/internal/telephony/metrics/MetricsCollector; -Lcom/android/internal/telephony/metrics/ModemPowerMetrics$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/ModemPowerMetrics; -Lcom/android/internal/telephony/metrics/ModemRestartStats; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda6; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$$ExternalSyntheticLambda7; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage$1; -Lcom/android/internal/telephony/metrics/PersistAtomsStorage; -Lcom/android/internal/telephony/metrics/ServiceStateStats$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/ServiceStateStats$TimestampedServiceState; -Lcom/android/internal/telephony/metrics/ServiceStateStats; -Lcom/android/internal/telephony/metrics/SimSlotState; -Lcom/android/internal/telephony/metrics/SmsSessionEventBuilder; -Lcom/android/internal/telephony/metrics/SmsStats; -Lcom/android/internal/telephony/metrics/TelephonyEventBuilder; -Lcom/android/internal/telephony/metrics/TelephonyMetrics$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/TelephonyMetrics$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/metrics/TelephonyMetrics$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/metrics/TelephonyMetrics$1; -Lcom/android/internal/telephony/metrics/TelephonyMetrics$BwEstimationStats; -Lcom/android/internal/telephony/metrics/TelephonyMetrics; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda3; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda4; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$$ExternalSyntheticLambda5; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$Key; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker$Value; -Lcom/android/internal/telephony/metrics/VoiceCallRatTracker; -Lcom/android/internal/telephony/metrics/VoiceCallSessionStats$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/metrics/VoiceCallSessionStats$1; -Lcom/android/internal/telephony/metrics/VoiceCallSessionStats; -Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierAttribute; -Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierId; -Lcom/android/internal/telephony/nano/CarrierIdProto$CarrierList; -Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierIdMismatch; -Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularDataServiceSwitch; -Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularServiceState; -Lcom/android/internal/telephony/nano/PersistAtomsProto$DataCallSession; -Lcom/android/internal/telephony/nano/PersistAtomsProto$DataNetworkValidation; -Lcom/android/internal/telephony/nano/PersistAtomsProto$EmergencyNumbersInfo; -Lcom/android/internal/telephony/nano/PersistAtomsProto$GbaEvent; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerEvent; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerListenerEvent; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationFeatureTagStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationServiceDescStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationTermination; -Lcom/android/internal/telephony/nano/PersistAtomsProto$IncomingSms; -Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequests; -Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequestsV2; -Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingShortCodeSms; -Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingSms; -Lcom/android/internal/telephony/nano/PersistAtomsProto$PersistAtoms; -Lcom/android/internal/telephony/nano/PersistAtomsProto$PresenceNotifyEvent; -Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsAcsProvisioningStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsClientProvisioningStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteController; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteIncomingDatagram; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteOutgoingDatagram; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteProvision; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSession; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSosMessageRecommender; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipDelegateStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipMessageResponse; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportFeatureTagStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportSession; -Lcom/android/internal/telephony/nano/PersistAtomsProto$UceEventStats; -Lcom/android/internal/telephony/nano/PersistAtomsProto$UnmeteredNetworks; -Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallRatUsage; -Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallSession; -Lcom/android/internal/telephony/nano/StoredPinProto$EncryptedPin; -Lcom/android/internal/telephony/nano/StoredPinProto$StoredPin$PinStatus; -Lcom/android/internal/telephony/nano/StoredPinProto$StoredPin; -Lcom/android/internal/telephony/nano/TelephonyProto$ActiveSubscriptionInfo; -Lcom/android/internal/telephony/nano/TelephonyProto$BandwidthEstimatorStats$PerLevel; -Lcom/android/internal/telephony/nano/TelephonyProto$BandwidthEstimatorStats$PerRat; -Lcom/android/internal/telephony/nano/TelephonyProto$BandwidthEstimatorStats; -Lcom/android/internal/telephony/nano/TelephonyProto$EmergencyNumberInfo; -Lcom/android/internal/telephony/nano/TelephonyProto$ImsCapabilities; -Lcom/android/internal/telephony/nano/TelephonyProto$ImsConnectionState$State; -Lcom/android/internal/telephony/nano/TelephonyProto$ImsConnectionState; -Lcom/android/internal/telephony/nano/TelephonyProto$ImsReasonInfo; -Lcom/android/internal/telephony/nano/TelephonyProto$ImsServiceErrno; -Lcom/android/internal/telephony/nano/TelephonyProto$ModemPowerStats; -Lcom/android/internal/telephony/nano/TelephonyProto$NrMode; -Lcom/android/internal/telephony/nano/TelephonyProto$PdpType; -Lcom/android/internal/telephony/nano/TelephonyProto$RadioAccessTechnology; -Lcom/android/internal/telephony/nano/TelephonyProto$RilDataCall$State; -Lcom/android/internal/telephony/nano/TelephonyProto$RilDataCall; -Lcom/android/internal/telephony/nano/TelephonyProto$RilErrno; -Lcom/android/internal/telephony/nano/TelephonyProto$SimState; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$CBMessage; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$CBMessageType; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$CBPriority; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$Format; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$IncompleteSms; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$SmsType; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$Tech; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event$Type; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession$Event; -Lcom/android/internal/telephony/nano/TelephonyProto$SmsSession; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$AudioCodec; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$CallQuality$CallQualityLevel; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$CallQuality; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$CallQualitySummary; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$CallState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$ImsCommand; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$PhoneState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilCall$Type; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilCall; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilRequest; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilSrvccState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$SignalStrength; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$Type; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$ApnType; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$CarrierIdMatching; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$CarrierIdMatchingResult; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$CarrierKeyChange$KeyType; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$CarrierKeyChange; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$DataSwitch$Reason; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$DataSwitch; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$EventState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$ModemRestart; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$NetworkCapabilitiesInfo; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$NetworkValidationState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$OnDemandDataSwitch; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilDeactivateDataCall$DeactivateReason; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilDeactivateDataCall; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilSetupDataCall$RilDataProfile; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilSetupDataCall; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilSetupDataCallResponse$RilDataCallFailCause; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$RilSetupDataCallResponse; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent$Type; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyEvent; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyHistogram; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyLog; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$Domain; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$FrequencyRange; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$NetworkRegistrationInfo; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$NrState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$RoamingType; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$TelephonyOperator; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$Transport; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonySettings$RilNetworkMode; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonySettings$WiFiCallingMode; -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonySettings; -Lcom/android/internal/telephony/nano/TelephonyProto$Time; -Lcom/android/internal/telephony/nano/TelephonyProto$TimeInterval; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$$ExternalSyntheticLambda1; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$$ExternalSyntheticLambda2; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$1; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$NitzSignalInputFilterPredicateImpl; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory$TrivalentPredicate; -Lcom/android/internal/telephony/nitz/NitzSignalInputFilterPredicateFactory; -Lcom/android/internal/telephony/nitz/NitzStateMachineImpl$NitzSignalInputFilterPredicate; -Lcom/android/internal/telephony/nitz/NitzStateMachineImpl$TimeZoneSuggester; -Lcom/android/internal/telephony/nitz/NitzStateMachineImpl; -Lcom/android/internal/telephony/nitz/TimeServiceHelper; -Lcom/android/internal/telephony/nitz/TimeServiceHelperImpl; -Lcom/android/internal/telephony/nitz/TimeZoneLookupHelper$CountryResult; -Lcom/android/internal/telephony/nitz/TimeZoneLookupHelper; -Lcom/android/internal/telephony/nitz/TimeZoneSuggesterImpl; -Lcom/android/internal/telephony/phonenumbers/AlternateFormatsCountryCodeSet; -Lcom/android/internal/telephony/phonenumbers/AsYouTypeFormatter; -Lcom/android/internal/telephony/phonenumbers/CountryCodeToRegionCodeMap; -Lcom/android/internal/telephony/phonenumbers/MetadataLoader; -Lcom/android/internal/telephony/phonenumbers/NumberParseException$ErrorType; -Lcom/android/internal/telephony/phonenumbers/NumberParseException; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberMatch; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberMatcher$NumberGroupingChecker; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberMatcher$State; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberMatcher; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberToCarrierMapper; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$1; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$2; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$1; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$2; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$3$1; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$3; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$4$1; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency$4; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$MatchType; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$PhoneNumberFormat; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$PhoneNumberType; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$ValidationResult; -Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$NumberFormat$Builder; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$NumberFormat; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneMetadata$Builder; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneMetadata; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneMetadataCollection$Builder; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneMetadataCollection; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneNumberDesc$Builder; -Lcom/android/internal/telephony/phonenumbers/Phonemetadata$PhoneNumberDesc; -Lcom/android/internal/telephony/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -Lcom/android/internal/telephony/phonenumbers/Phonenumber$PhoneNumber; -Lcom/android/internal/telephony/phonenumbers/ShortNumberInfo$ShortNumberCost; -Lcom/android/internal/telephony/phonenumbers/ShortNumberInfo; -Lcom/android/internal/telephony/phonenumbers/ShortNumbersRegionCodeSet; -Lcom/android/internal/telephony/phonenumbers/internal/MatcherApi; -Lcom/android/internal/telephony/phonenumbers/internal/RegexBasedMatcher; -Lcom/android/internal/telephony/phonenumbers/internal/RegexCache$LRUCache$1; -Lcom/android/internal/telephony/phonenumbers/internal/RegexCache$LRUCache; -Lcom/android/internal/telephony/phonenumbers/internal/RegexCache; -Lcom/android/internal/telephony/phonenumbers/metadata/DefaultMetadataDependenciesProvider; -Lcom/android/internal/telephony/phonenumbers/metadata/init/ClassPathResourceMetadataLoader; -Lcom/android/internal/telephony/phonenumbers/metadata/init/MetadataParser; -Lcom/android/internal/telephony/phonenumbers/metadata/source/BlockingMetadataBootstrappingGuard; -Lcom/android/internal/telephony/phonenumbers/metadata/source/CompositeMetadataContainer; -Lcom/android/internal/telephony/phonenumbers/metadata/source/FormattingMetadataSource; -Lcom/android/internal/telephony/phonenumbers/metadata/source/FormattingMetadataSourceImpl; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MapBackedMetadataContainer$1; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MapBackedMetadataContainer$2; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MapBackedMetadataContainer$KeyProvider; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MapBackedMetadataContainer; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MetadataBootstrappingGuard; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MetadataContainer; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MetadataSource; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MetadataSourceImpl; -Lcom/android/internal/telephony/phonenumbers/metadata/source/MultiFileModeFileNameProvider; -Lcom/android/internal/telephony/phonenumbers/metadata/source/NonGeographicalEntityMetadataSource; -Lcom/android/internal/telephony/phonenumbers/metadata/source/PhoneMetadataFileNameProvider; -Lcom/android/internal/telephony/phonenumbers/metadata/source/RegionMetadataSource; -Lcom/android/internal/telephony/phonenumbers/metadata/source/RegionMetadataSourceImpl; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/DefaultMapStorage; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/FlyweightMapStorage; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/MappingFileProvider; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/PhonePrefixMap; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/PhonePrefixMapStorageStrategy; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/PrefixFileReader; -Lcom/android/internal/telephony/phonenumbers/prefixmapper/PrefixTimeZonesMap; -Lcom/android/internal/telephony/protobuf/nano/CodedInputByteBufferNano; -Lcom/android/internal/telephony/protobuf/nano/CodedOutputByteBufferNano$OutOfSpaceException; -Lcom/android/internal/telephony/protobuf/nano/CodedOutputByteBufferNano; -Lcom/android/internal/telephony/protobuf/nano/ExtendableMessageNano; -Lcom/android/internal/telephony/protobuf/nano/Extension$1; -Lcom/android/internal/telephony/protobuf/nano/Extension$PrimitiveExtension; -Lcom/android/internal/telephony/protobuf/nano/Extension; -Lcom/android/internal/telephony/protobuf/nano/FieldArray; -Lcom/android/internal/telephony/protobuf/nano/FieldData; -Lcom/android/internal/telephony/protobuf/nano/InternalNano; -Lcom/android/internal/telephony/protobuf/nano/InvalidProtocolBufferNanoException; -Lcom/android/internal/telephony/protobuf/nano/MapFactories$1; -Lcom/android/internal/telephony/protobuf/nano/MapFactories$DefaultMapFactory; -Lcom/android/internal/telephony/protobuf/nano/MapFactories$MapFactory; -Lcom/android/internal/telephony/protobuf/nano/MapFactories; -Lcom/android/internal/telephony/protobuf/nano/MessageNano; -Lcom/android/internal/telephony/protobuf/nano/MessageNanoPrinter; -Lcom/android/internal/telephony/protobuf/nano/UnknownFieldData; -Lcom/android/internal/telephony/protobuf/nano/WireFormatNano; -Lcom/android/internal/telephony/protobuf/nano/android/ParcelableExtendableMessageNano; -Lcom/android/internal/telephony/protobuf/nano/android/ParcelableMessageNano; -Lcom/android/internal/telephony/protobuf/nano/android/ParcelableMessageNanoCreator; -Lcom/android/internal/telephony/satellite/PointingAppController; -Lcom/android/internal/telephony/satellite/SatelliteModemInterface; -Lcom/android/internal/telephony/satellite/SatelliteSessionController; -Lcom/android/internal/telephony/satellite/nano/SatelliteConfigData$CarrierSupportedSatelliteServicesProto; -Lcom/android/internal/telephony/satellite/nano/SatelliteConfigData$SatelliteConfigProto; -Lcom/android/internal/telephony/satellite/nano/SatelliteConfigData$SatelliteProviderCapabilityProto; -Lcom/android/internal/telephony/satellite/nano/SatelliteConfigData$SatelliteRegionProto; -Lcom/android/internal/telephony/satellite/nano/SatelliteConfigData$TelephonyConfigProto; -Lcom/android/internal/telephony/security/NullCipherNotifier; -Lcom/android/internal/telephony/subscription/SubscriptionManagerService$SubscriptionManagerServiceCallback; -Lcom/android/internal/telephony/test/SimulatedRadioControl; -Lcom/android/internal/telephony/test/TestConferenceEventPackageParser; -Lcom/android/internal/telephony/uicc/AdnCapacity$1; -Lcom/android/internal/telephony/uicc/AdnCapacity; -Lcom/android/internal/telephony/uicc/AdnRecord$1; -Lcom/android/internal/telephony/uicc/AdnRecord; -Lcom/android/internal/telephony/uicc/AdnRecordCache; -Lcom/android/internal/telephony/uicc/AdnRecordLoader; -Lcom/android/internal/telephony/uicc/AnswerToReset$HistoricalBytes; -Lcom/android/internal/telephony/uicc/AnswerToReset$InterfaceByte; -Lcom/android/internal/telephony/uicc/AnswerToReset; -Lcom/android/internal/telephony/uicc/CarrierAppInstallReceiver; -Lcom/android/internal/telephony/uicc/CarrierTestOverride; -Lcom/android/internal/telephony/uicc/CsimFileHandler; -Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$AppState; -Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$AppType; -Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$PersoSubState; -Lcom/android/internal/telephony/uicc/IccCardApplicationStatus; -Lcom/android/internal/telephony/uicc/IccCardStatus$CardState; -Lcom/android/internal/telephony/uicc/IccCardStatus$PinState; -Lcom/android/internal/telephony/uicc/IccCardStatus; -Lcom/android/internal/telephony/uicc/IccConstants; -Lcom/android/internal/telephony/uicc/IccException; -Lcom/android/internal/telephony/uicc/IccFileHandler$LoadLinearFixedContext; -Lcom/android/internal/telephony/uicc/IccFileHandler; -Lcom/android/internal/telephony/uicc/IccFileNotFound; -Lcom/android/internal/telephony/uicc/IccFileTypeMismatch; -Lcom/android/internal/telephony/uicc/IccIoResult; -Lcom/android/internal/telephony/uicc/IccRecords$AuthAsyncResponse; -Lcom/android/internal/telephony/uicc/IccRecords$IccRecordLoaded; -Lcom/android/internal/telephony/uicc/IccRecords$OperatorPlmnInfo; -Lcom/android/internal/telephony/uicc/IccRecords$PlmnNetworkName; -Lcom/android/internal/telephony/uicc/IccRecords; -Lcom/android/internal/telephony/uicc/IccRefreshResponse; -Lcom/android/internal/telephony/uicc/IccServiceTable; -Lcom/android/internal/telephony/uicc/IccSlotStatus; -Lcom/android/internal/telephony/uicc/IccUtils; -Lcom/android/internal/telephony/uicc/IccVmFixedException; -Lcom/android/internal/telephony/uicc/IccVmNotSupportedException; -Lcom/android/internal/telephony/uicc/InstallCarrierAppTrampolineActivity; -Lcom/android/internal/telephony/uicc/InstallCarrierAppUtils; -Lcom/android/internal/telephony/uicc/IsimFileHandler; -Lcom/android/internal/telephony/uicc/IsimRecords; -Lcom/android/internal/telephony/uicc/IsimUiccRecords$EfIsimDomainLoaded; -Lcom/android/internal/telephony/uicc/IsimUiccRecords$EfIsimImpiLoaded; -Lcom/android/internal/telephony/uicc/IsimUiccRecords$EfIsimImpuLoaded; -Lcom/android/internal/telephony/uicc/IsimUiccRecords$EfIsimIstLoaded; -Lcom/android/internal/telephony/uicc/IsimUiccRecords$EfIsimPcscfLoaded; -Lcom/android/internal/telephony/uicc/IsimUiccRecords; -Lcom/android/internal/telephony/uicc/PinStorage$1; -Lcom/android/internal/telephony/uicc/PinStorage; -Lcom/android/internal/telephony/uicc/PlmnActRecord$1; -Lcom/android/internal/telephony/uicc/PlmnActRecord; -Lcom/android/internal/telephony/uicc/ReceivedPhonebookRecords; -Lcom/android/internal/telephony/uicc/RuimFileHandler; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimCdmaHomeLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimEprlLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimImsimLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimLiLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimMdnLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimMipUppLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfCsimSpnLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords$EfPlLoaded; -Lcom/android/internal/telephony/uicc/RuimRecords; -Lcom/android/internal/telephony/uicc/SIMFileHandler; -Lcom/android/internal/telephony/uicc/SIMRecords$EfPlLoaded; -Lcom/android/internal/telephony/uicc/SIMRecords$EfUsimLiLoaded; -Lcom/android/internal/telephony/uicc/SIMRecords$GetSpnFsmState; -Lcom/android/internal/telephony/uicc/SIMRecords; -Lcom/android/internal/telephony/uicc/ShowInstallAppNotificationReceiver; -Lcom/android/internal/telephony/uicc/SimPhonebookRecord$Builder; -Lcom/android/internal/telephony/uicc/SimPhonebookRecord; -Lcom/android/internal/telephony/uicc/SimPhonebookRecordCache$$ExternalSyntheticLambda0; -Lcom/android/internal/telephony/uicc/SimPhonebookRecordCache$UpdateRequest; -Lcom/android/internal/telephony/uicc/SimPhonebookRecordCache; -Lcom/android/internal/telephony/uicc/UiccCard; -Lcom/android/internal/telephony/uicc/UiccCardApplication$1; -Lcom/android/internal/telephony/uicc/UiccCardApplication$2; -Lcom/android/internal/telephony/uicc/UiccCardApplication; -Lcom/android/internal/telephony/uicc/UiccCarrierPrivilegeRules$1; -Lcom/android/internal/telephony/uicc/UiccCarrierPrivilegeRules$TLV; -Lcom/android/internal/telephony/uicc/UiccCarrierPrivilegeRules; -Lcom/android/internal/telephony/uicc/UiccController$1; -Lcom/android/internal/telephony/uicc/UiccController; -Lcom/android/internal/telephony/uicc/UiccPkcs15$FileHandler; -Lcom/android/internal/telephony/uicc/UiccPkcs15$Pkcs15Selector; -Lcom/android/internal/telephony/uicc/UiccPkcs15; -Lcom/android/internal/telephony/uicc/UiccProfile$1; -Lcom/android/internal/telephony/uicc/UiccProfile$2; -Lcom/android/internal/telephony/uicc/UiccProfile$3; -Lcom/android/internal/telephony/uicc/UiccProfile$4; -Lcom/android/internal/telephony/uicc/UiccProfile$5; -Lcom/android/internal/telephony/uicc/UiccProfile; -Lcom/android/internal/telephony/uicc/UiccSlot$1; -Lcom/android/internal/telephony/uicc/UiccSlot; -Lcom/android/internal/telephony/uicc/UiccStateChangedLauncher; -Lcom/android/internal/telephony/uicc/UsimFileHandler; -Lcom/android/internal/telephony/uicc/UsimServiceTable$UsimService; -Lcom/android/internal/telephony/uicc/UsimServiceTable; -Lcom/android/internal/telephony/uicc/VoiceMailConstants; -Lcom/android/internal/telephony/uicc/asn1/Asn1Decoder; -Lcom/android/internal/telephony/uicc/asn1/Asn1Node$Builder; -Lcom/android/internal/telephony/uicc/asn1/Asn1Node; -Lcom/android/internal/telephony/uicc/asn1/InvalidAsn1DataException; -Lcom/android/internal/telephony/uicc/asn1/TagNotFoundException; -Lcom/android/internal/telephony/uicc/euicc/EuiccCard$1; -Lcom/android/internal/telephony/uicc/euicc/EuiccCard; -Lcom/android/internal/telephony/uicc/euicc/EuiccCardErrorException; -Lcom/android/internal/telephony/uicc/euicc/EuiccCardException; -Lcom/android/internal/telephony/uicc/euicc/EuiccSpecVersion; -Lcom/android/internal/telephony/uicc/euicc/Tags; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduCommand; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduException; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender$1; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender$2$1; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender$2; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender$3; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender$4; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSender; -Lcom/android/internal/telephony/uicc/euicc/apdu/ApduSenderResultCallback; -Lcom/android/internal/telephony/uicc/euicc/apdu/CloseLogicalChannelInvocation; -Lcom/android/internal/telephony/uicc/euicc/apdu/OpenLogicalChannelInvocation; -Lcom/android/internal/telephony/uicc/euicc/apdu/RequestBuilder; -Lcom/android/internal/telephony/uicc/euicc/apdu/RequestProvider; -Lcom/android/internal/telephony/uicc/euicc/apdu/TransmitApduLogicalChannelInvocation; -Lcom/android/internal/telephony/uicc/euicc/async/AsyncMessageInvocation; -Lcom/android/internal/telephony/uicc/euicc/async/AsyncResultCallback; -Lcom/android/internal/telephony/uicc/euicc/async/AsyncResultHelper$1; -Lcom/android/internal/telephony/uicc/euicc/async/AsyncResultHelper$2; -Lcom/android/internal/telephony/uicc/euicc/async/AsyncResultHelper; -Lcom/android/internal/telephony/util/ArrayUtils; -Lcom/android/internal/telephony/util/BitUtils; -Lcom/android/internal/telephony/util/CollectionUtils; -Lcom/android/internal/telephony/util/ConnectivityUtils; -Lcom/android/internal/telephony/util/DnsPacket$DnsHeader; -Lcom/android/internal/telephony/util/DnsPacket$DnsRecord; -Lcom/android/internal/telephony/util/DnsPacket$ParseException; -Lcom/android/internal/telephony/util/DnsPacket; -Lcom/android/internal/telephony/util/DnsSdTxtRecord$1; -Lcom/android/internal/telephony/util/DnsSdTxtRecord; -Lcom/android/internal/telephony/util/HandlerExecutor; -Lcom/android/internal/telephony/util/Inet4AddressUtils; -Lcom/android/internal/telephony/util/InetAddressUtils; -Lcom/android/internal/telephony/util/IpRange; -Lcom/android/internal/telephony/util/IpUtils; -Lcom/android/internal/telephony/util/LinkPropertiesUtils$CompareOrUpdateResult; -Lcom/android/internal/telephony/util/LinkPropertiesUtils$CompareResult; -Lcom/android/internal/telephony/util/LinkPropertiesUtils; -Lcom/android/internal/telephony/util/LocaleUtils; -Lcom/android/internal/telephony/util/LocationPermissionChecker; -Lcom/android/internal/telephony/util/MacAddressUtils; -Lcom/android/internal/telephony/util/NetUtils; -Lcom/android/internal/telephony/util/NetworkCapabilitiesUtils; -Lcom/android/internal/telephony/util/NetworkIdentityUtils; -Lcom/android/internal/telephony/util/NetworkStackConstants; -Lcom/android/internal/telephony/util/NotificationChannelController$1; -Lcom/android/internal/telephony/util/NotificationChannelController; -Lcom/android/internal/telephony/util/PermissionUtils; -Lcom/android/internal/telephony/util/ProxyUtils; -Lcom/android/internal/telephony/util/RemoteCallbackListExt; -Lcom/android/internal/telephony/util/SMSDispatcherUtil; -Lcom/android/internal/telephony/util/TelephonyUtils; -Lcom/android/internal/telephony/util/VoicemailNotificationSettingsUtil; -Lcom/android/internal/telephony/util/XmlUtils; -Lcom/android/internal/textservice/ISpellCheckerService$Stub$Proxy; -Lcom/android/internal/textservice/ISpellCheckerService$Stub; -Lcom/android/internal/textservice/ISpellCheckerService; -Lcom/android/internal/textservice/ISpellCheckerServiceCallback$Stub$Proxy; -Lcom/android/internal/textservice/ISpellCheckerServiceCallback$Stub; -Lcom/android/internal/textservice/ISpellCheckerServiceCallback; -Lcom/android/internal/textservice/ISpellCheckerSession$Stub$Proxy; -Lcom/android/internal/textservice/ISpellCheckerSession$Stub; -Lcom/android/internal/textservice/ISpellCheckerSession; -Lcom/android/internal/textservice/ISpellCheckerSessionListener$Stub$Proxy; -Lcom/android/internal/textservice/ISpellCheckerSessionListener$Stub; -Lcom/android/internal/textservice/ISpellCheckerSessionListener; -Lcom/android/internal/textservice/ITextServicesManager$Stub$Proxy; -Lcom/android/internal/textservice/ITextServicesManager$Stub; -Lcom/android/internal/textservice/ITextServicesManager; -Lcom/android/internal/textservice/ITextServicesSessionListener$Stub$Proxy; -Lcom/android/internal/textservice/ITextServicesSessionListener$Stub; -Lcom/android/internal/textservice/ITextServicesSessionListener; -Lcom/android/internal/transition/EpicenterTranslateClipReveal$1; -Lcom/android/internal/transition/EpicenterTranslateClipReveal$State; -Lcom/android/internal/transition/EpicenterTranslateClipReveal$StateEvaluator; -Lcom/android/internal/transition/EpicenterTranslateClipReveal$StateProperty; -Lcom/android/internal/transition/EpicenterTranslateClipReveal; -Lcom/android/internal/transition/TransitionConstants; -Lcom/android/internal/usb/DumpUtils; -Lcom/android/internal/util/AnnotationValidations; -Lcom/android/internal/util/ArrayUtils; -Lcom/android/internal/util/AsyncChannel$AsyncChannelConnection; -Lcom/android/internal/util/AsyncChannel$DeathMonitor; -Lcom/android/internal/util/AsyncChannel$SyncMessenger$SyncHandler; -Lcom/android/internal/util/AsyncChannel$SyncMessenger; -Lcom/android/internal/util/AsyncChannel; -Lcom/android/internal/util/BitUtils; -Lcom/android/internal/util/BitwiseInputStream$AccessException; -Lcom/android/internal/util/BitwiseOutputStream$AccessException; -Lcom/android/internal/util/CollectionUtils; -Lcom/android/internal/util/ConcurrentUtils$1$1; -Lcom/android/internal/util/ConcurrentUtils$1; -Lcom/android/internal/util/ConcurrentUtils$DirectExecutor; -Lcom/android/internal/util/ConcurrentUtils; -Lcom/android/internal/util/ContrastColorUtil$ColorUtilsFromCompat; -Lcom/android/internal/util/ContrastColorUtil; -Lcom/android/internal/util/DumpUtils$1; -Lcom/android/internal/util/DumpUtils$Dump; -Lcom/android/internal/util/DumpUtils; -Lcom/android/internal/util/EmergencyAffordanceManager; -Lcom/android/internal/util/ExponentiallyBucketedHistogram; -Lcom/android/internal/util/FastMath; -Lcom/android/internal/util/FastPrintWriter$DummyWriter-IA; -Lcom/android/internal/util/FastPrintWriter$DummyWriter; -Lcom/android/internal/util/FastPrintWriter; -Lcom/android/internal/util/FastXmlSerializer; -Lcom/android/internal/util/FileRotator$FileInfo; -Lcom/android/internal/util/FileRotator$Reader; -Lcom/android/internal/util/FileRotator$Rewriter; -Lcom/android/internal/util/FileRotator$Writer; -Lcom/android/internal/util/FileRotator; -Lcom/android/internal/util/FrameworkStatsLog; -Lcom/android/internal/util/FunctionalUtils$RemoteExceptionIgnoringConsumer; -Lcom/android/internal/util/FunctionalUtils$ThrowingBiFunction; -Lcom/android/internal/util/FunctionalUtils$ThrowingConsumer; -Lcom/android/internal/util/FunctionalUtils$ThrowingFunction; -Lcom/android/internal/util/FunctionalUtils$ThrowingRunnable; -Lcom/android/internal/util/FunctionalUtils$ThrowingSupplier; -Lcom/android/internal/util/FunctionalUtils; -Lcom/android/internal/util/GrowingArrayUtils; -Lcom/android/internal/util/HeavyHitterSketch$HeavyHitterSketchImpl; -Lcom/android/internal/util/HeavyHitterSketch; -Lcom/android/internal/util/HexDump; -Lcom/android/internal/util/IState; -Lcom/android/internal/util/ImageUtils; -Lcom/android/internal/util/IndentingPrintWriter; -Lcom/android/internal/util/IntPair; -Lcom/android/internal/util/JournaledFile; -Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda0; -Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda1; -Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda2; -Lcom/android/internal/util/LatencyTracker$Action; -Lcom/android/internal/util/LatencyTracker$ActionProperties; -Lcom/android/internal/util/LatencyTracker$FrameworkStatsLogEvent-IA; -Lcom/android/internal/util/LatencyTracker$FrameworkStatsLogEvent; -Lcom/android/internal/util/LatencyTracker$SLatencyTrackerHolder; -Lcom/android/internal/util/LatencyTracker$Session$$ExternalSyntheticLambda0; -Lcom/android/internal/util/LatencyTracker$Session; -Lcom/android/internal/util/LatencyTracker; -Lcom/android/internal/util/LineBreakBufferedWriter; -Lcom/android/internal/util/LocalLog; -Lcom/android/internal/util/MemInfoReader; -Lcom/android/internal/util/MessageUtils$DuplicateConstantError; -Lcom/android/internal/util/MessageUtils; -Lcom/android/internal/util/NotificationMessagingUtil$1; -Lcom/android/internal/util/NotificationMessagingUtil; -Lcom/android/internal/util/ObjectUtils; -Lcom/android/internal/util/Parcelling$BuiltIn$ForBoolean; -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedString; -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringArray; -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringList; -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringSet; -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringValueMap; -Lcom/android/internal/util/Parcelling$BuiltIn$ForStringSet; -Lcom/android/internal/util/Parcelling$BuiltIn$ForUUID; -Lcom/android/internal/util/Parcelling$Cache; -Lcom/android/internal/util/Parcelling; -Lcom/android/internal/util/ParseUtils; -Lcom/android/internal/util/PerfettoTrigger; -Lcom/android/internal/util/Preconditions; -Lcom/android/internal/util/ProcFileReader; -Lcom/android/internal/util/ProgressReporter; -Lcom/android/internal/util/ProviderAccessStats$PerThreadData; -Lcom/android/internal/util/ProviderAccessStats; -Lcom/android/internal/util/RingBuffer$$ExternalSyntheticLambda0; -Lcom/android/internal/util/RingBuffer$$ExternalSyntheticLambda1; -Lcom/android/internal/util/RingBuffer; -Lcom/android/internal/util/RingBufferIndices; -Lcom/android/internal/util/ScreenshotHelper$1; -Lcom/android/internal/util/ScreenshotHelper$2; -Lcom/android/internal/util/ScreenshotHelper; -Lcom/android/internal/util/StatLogger; -Lcom/android/internal/util/State; -Lcom/android/internal/util/StateMachine$LogRec; -Lcom/android/internal/util/StateMachine$LogRecords-IA; -Lcom/android/internal/util/StateMachine$LogRecords; -Lcom/android/internal/util/StateMachine$SmHandler$HaltingState-IA; -Lcom/android/internal/util/StateMachine$SmHandler$HaltingState; -Lcom/android/internal/util/StateMachine$SmHandler$QuittingState-IA; -Lcom/android/internal/util/StateMachine$SmHandler$QuittingState; -Lcom/android/internal/util/StateMachine$SmHandler$StateInfo; -Lcom/android/internal/util/StateMachine$SmHandler-IA; -Lcom/android/internal/util/StateMachine$SmHandler; -Lcom/android/internal/util/StateMachine; -Lcom/android/internal/util/StringPool; -Lcom/android/internal/util/SyncResultReceiver$TimeoutException; -Lcom/android/internal/util/SyncResultReceiver; -Lcom/android/internal/util/ToBooleanFunction; -Lcom/android/internal/util/TokenBucket; -Lcom/android/internal/util/TraceBuffer$ProtoOutputStreamProvider-IA; -Lcom/android/internal/util/TraceBuffer$ProtoOutputStreamProvider; -Lcom/android/internal/util/TraceBuffer$ProtoProvider; -Lcom/android/internal/util/TraceBuffer; -Lcom/android/internal/util/UserIcons; -Lcom/android/internal/util/VirtualRefBasePtr; -Lcom/android/internal/util/WakeupMessage; -Lcom/android/internal/util/XmlPullParserWrapper; -Lcom/android/internal/util/XmlSerializerWrapper; -Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser; -Lcom/android/internal/util/XmlUtils$ReadMapCallback; -Lcom/android/internal/util/XmlUtils$WriteMapCallback; -Lcom/android/internal/util/XmlUtils; -Lcom/android/internal/util/dump/DualDumpOutputStream$DumpField; -Lcom/android/internal/util/dump/DualDumpOutputStream$DumpObject; -Lcom/android/internal/util/dump/DualDumpOutputStream$Dumpable; -Lcom/android/internal/util/dump/DualDumpOutputStream; -Lcom/android/internal/util/dump/DumpUtils; -Lcom/android/internal/util/function/DecConsumer; -Lcom/android/internal/util/function/DecFunction; -Lcom/android/internal/util/function/DecPredicate; -Lcom/android/internal/util/function/DodecConsumer; -Lcom/android/internal/util/function/DodecFunction; -Lcom/android/internal/util/function/DodecPredicate; -Lcom/android/internal/util/function/HeptConsumer; -Lcom/android/internal/util/function/HeptFunction; -Lcom/android/internal/util/function/HeptPredicate; -Lcom/android/internal/util/function/HexConsumer; -Lcom/android/internal/util/function/HexFunction; -Lcom/android/internal/util/function/HexPredicate; -Lcom/android/internal/util/function/LongObjPredicate; -Lcom/android/internal/util/function/NonaConsumer; -Lcom/android/internal/util/function/NonaFunction; -Lcom/android/internal/util/function/NonaPredicate; -Lcom/android/internal/util/function/OctConsumer; -Lcom/android/internal/util/function/OctFunction; -Lcom/android/internal/util/function/OctPredicate; -Lcom/android/internal/util/function/QuadConsumer; -Lcom/android/internal/util/function/QuadFunction; -Lcom/android/internal/util/function/QuadPredicate; -Lcom/android/internal/util/function/QuintConsumer; -Lcom/android/internal/util/function/QuintFunction; -Lcom/android/internal/util/function/QuintPredicate; -Lcom/android/internal/util/function/TriConsumer; -Lcom/android/internal/util/function/TriFunction; -Lcom/android/internal/util/function/TriPredicate; -Lcom/android/internal/util/function/UndecConsumer; -Lcom/android/internal/util/function/UndecFunction; -Lcom/android/internal/util/function/UndecPredicate; -Lcom/android/internal/util/function/pooled/ArgumentPlaceholder; -Lcom/android/internal/util/function/pooled/OmniFunction; -Lcom/android/internal/util/function/pooled/PooledLambda; -Lcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType$ReturnType; -Lcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType; -Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool; -Lcom/android/internal/util/function/pooled/PooledPredicate; -Lcom/android/internal/util/function/pooled/PooledRunnable; -Lcom/android/internal/util/function/pooled/PooledSupplier$OfDouble; -Lcom/android/internal/util/function/pooled/PooledSupplier$OfInt; -Lcom/android/internal/util/function/pooled/PooledSupplier$OfLong; -Lcom/android/internal/util/function/pooled/PooledSupplier; -Lcom/android/internal/view/ActionBarPolicy; -Lcom/android/internal/view/AppearanceRegion$1; -Lcom/android/internal/view/AppearanceRegion; -Lcom/android/internal/view/BaseIWindow; -Lcom/android/internal/view/BaseSurfaceHolder; -Lcom/android/internal/view/FloatingActionMode$1; -Lcom/android/internal/view/FloatingActionMode$2; -Lcom/android/internal/view/FloatingActionMode$3; -Lcom/android/internal/view/FloatingActionMode$FloatingToolbarVisibilityHelper; -Lcom/android/internal/view/FloatingActionMode; -Lcom/android/internal/view/IInputMethodManager$Stub$Proxy; -Lcom/android/internal/view/IInputMethodManager$Stub; -Lcom/android/internal/view/IInputMethodManager; -Lcom/android/internal/view/OneShotPreDrawListener; -Lcom/android/internal/view/RootViewSurfaceTaker; -Lcom/android/internal/view/RotationPolicy$1; -Lcom/android/internal/view/RotationPolicy$RotationPolicyListener$1; -Lcom/android/internal/view/RotationPolicy$RotationPolicyListener; -Lcom/android/internal/view/RotationPolicy; -Lcom/android/internal/view/SurfaceCallbackHelper$1; -Lcom/android/internal/view/SurfaceCallbackHelper; -Lcom/android/internal/view/TooltipPopup; -Lcom/android/internal/view/WindowManagerPolicyThread; -Lcom/android/internal/view/menu/ActionMenuItem; -Lcom/android/internal/view/menu/ActionMenuItemView$ActionMenuItemForwardingListener; -Lcom/android/internal/view/menu/ActionMenuItemView$PopupCallback; -Lcom/android/internal/view/menu/ActionMenuItemView; -Lcom/android/internal/view/menu/BaseMenuPresenter; -Lcom/android/internal/view/menu/ContextMenuBuilder; -Lcom/android/internal/view/menu/IconMenuPresenter; -Lcom/android/internal/view/menu/ListMenuPresenter; -Lcom/android/internal/view/menu/MenuBuilder$Callback; -Lcom/android/internal/view/menu/MenuBuilder$ItemInvoker; -Lcom/android/internal/view/menu/MenuBuilder; -Lcom/android/internal/view/menu/MenuHelper; -Lcom/android/internal/view/menu/MenuItemImpl; -Lcom/android/internal/view/menu/MenuPopupHelper$1; -Lcom/android/internal/view/menu/MenuPopupHelper; -Lcom/android/internal/view/menu/MenuPresenter$Callback; -Lcom/android/internal/view/menu/MenuPresenter; -Lcom/android/internal/view/menu/MenuView$ItemView; -Lcom/android/internal/view/menu/MenuView; -Lcom/android/internal/view/menu/ShowableListMenu; -Lcom/android/internal/view/menu/SubMenuBuilder; -Lcom/android/internal/widget/AbsActionBarView$VisibilityAnimListener; -Lcom/android/internal/widget/AbsActionBarView; -Lcom/android/internal/widget/ActionBarContainer$ActionBarBackgroundDrawable; -Lcom/android/internal/widget/ActionBarContainer; -Lcom/android/internal/widget/ActionBarContextView; -Lcom/android/internal/widget/ActionBarOverlayLayout$1; -Lcom/android/internal/widget/ActionBarOverlayLayout$2; -Lcom/android/internal/widget/ActionBarOverlayLayout$3; -Lcom/android/internal/widget/ActionBarOverlayLayout$4; -Lcom/android/internal/widget/ActionBarOverlayLayout$5; -Lcom/android/internal/widget/ActionBarOverlayLayout$ActionBarVisibilityCallback; -Lcom/android/internal/widget/ActionBarOverlayLayout$LayoutParams; -Lcom/android/internal/widget/ActionBarOverlayLayout; -Lcom/android/internal/widget/AlertDialogLayout; -Lcom/android/internal/widget/AutoScrollHelper$AbsListViewAutoScroller; -Lcom/android/internal/widget/AutoScrollHelper; -Lcom/android/internal/widget/BackgroundFallback; -Lcom/android/internal/widget/ButtonBarLayout; -Lcom/android/internal/widget/CachingIconView; -Lcom/android/internal/widget/ConversationLayout$1; -Lcom/android/internal/widget/ConversationLayout$TouchDelegateComposite; -Lcom/android/internal/widget/ConversationLayout; -Lcom/android/internal/widget/DecorContentParent; -Lcom/android/internal/widget/DecorToolbar; -Lcom/android/internal/widget/DialogTitle; -Lcom/android/internal/widget/ExploreByTouchHelper; -Lcom/android/internal/widget/ICheckCredentialProgressCallback$Stub$Proxy; -Lcom/android/internal/widget/ICheckCredentialProgressCallback$Stub; -Lcom/android/internal/widget/ICheckCredentialProgressCallback; -Lcom/android/internal/widget/ILockSettings$Stub$Proxy; -Lcom/android/internal/widget/ILockSettings$Stub; -Lcom/android/internal/widget/ILockSettings; -Lcom/android/internal/widget/IMessagingLayout; -Lcom/android/internal/widget/ImageFloatingTextView; -Lcom/android/internal/widget/ImageMessageConsumer; -Lcom/android/internal/widget/ImageResolver; -Lcom/android/internal/widget/LockPatternChecker$2; -Lcom/android/internal/widget/LockPatternChecker$OnCheckCallback; -Lcom/android/internal/widget/LockPatternChecker; -Lcom/android/internal/widget/LockPatternUtils$1; -Lcom/android/internal/widget/LockPatternUtils$CheckCredentialProgressCallback; -Lcom/android/internal/widget/LockPatternUtils$RequestThrottledException; -Lcom/android/internal/widget/LockPatternUtils$StrongAuthTracker$1; -Lcom/android/internal/widget/LockPatternUtils$StrongAuthTracker$H; -Lcom/android/internal/widget/LockPatternUtils$StrongAuthTracker; -Lcom/android/internal/widget/LockPatternUtils$WrappedCallback; -Lcom/android/internal/widget/LockPatternUtils; -Lcom/android/internal/widget/LockPatternView$Cell; -Lcom/android/internal/widget/LockSettingsInternal; -Lcom/android/internal/widget/LockscreenCredential$1; -Lcom/android/internal/widget/LockscreenCredential; -Lcom/android/internal/widget/MessagingGroup$1; -Lcom/android/internal/widget/MessagingGroup; -Lcom/android/internal/widget/MessagingImageMessage; -Lcom/android/internal/widget/MessagingLayout; -Lcom/android/internal/widget/MessagingLinearLayout$LayoutParams; -Lcom/android/internal/widget/MessagingLinearLayout$MessagingChild; -Lcom/android/internal/widget/MessagingLinearLayout; -Lcom/android/internal/widget/MessagingMessage; -Lcom/android/internal/widget/MessagingMessageState; -Lcom/android/internal/widget/MessagingPool; -Lcom/android/internal/widget/MessagingPropertyAnimator$$ExternalSyntheticLambda0; -Lcom/android/internal/widget/MessagingPropertyAnimator$1; -Lcom/android/internal/widget/MessagingPropertyAnimator$2; -Lcom/android/internal/widget/MessagingPropertyAnimator; -Lcom/android/internal/widget/MessagingTextMessage; -Lcom/android/internal/widget/NotificationActionListLayout$$ExternalSyntheticLambda0; -Lcom/android/internal/widget/NotificationActionListLayout; -Lcom/android/internal/widget/NotificationExpandButton; -Lcom/android/internal/widget/NotificationOptimizedLinearLayout; -Lcom/android/internal/widget/ObservableTextView; -Lcom/android/internal/widget/PasswordValidationError; -Lcom/android/internal/widget/RemeasuringLinearLayout; -Lcom/android/internal/widget/ScrollBarUtils; -Lcom/android/internal/widget/ScrollingTabContainerView; -Lcom/android/internal/widget/ToolbarWidgetWrapper$1; -Lcom/android/internal/widget/ToolbarWidgetWrapper; -Lcom/android/internal/widget/VerifyCredentialResponse$1; -Lcom/android/internal/widget/VerifyCredentialResponse$Builder; -Lcom/android/internal/widget/VerifyCredentialResponse; -Lcom/android/internal/widget/ViewClippingUtil$ClippingParameters; -Lcom/android/internal/widget/ViewClippingUtil; -Lcom/android/internal/widget/floatingtoolbar/FloatingToolbar$$ExternalSyntheticLambda0; -Lcom/android/internal/widget/floatingtoolbar/FloatingToolbar$$ExternalSyntheticLambda1; -Lcom/android/internal/widget/floatingtoolbar/FloatingToolbar; -Lcom/android/internal/widget/floatingtoolbar/FloatingToolbarPopup; -Lcom/android/media/flags/FeatureFlags; -Lcom/android/media/flags/FeatureFlagsImpl; -Lcom/android/media/flags/Flags; -Lcom/android/modules/expresslog/Counter; -Lcom/android/modules/expresslog/MetricIds$MetricInfo; -Lcom/android/modules/expresslog/MetricIds; -Lcom/android/modules/expresslog/StatsExpressLog; -Lcom/android/modules/utils/BasicShellCommandHandler; -Lcom/android/modules/utils/TypedXmlPullParser; -Lcom/android/modules/utils/TypedXmlSerializer; -Lcom/android/net/module/util/BitUtils; -Lcom/android/net/module/util/Inet4AddressUtils; -Lcom/android/net/module/util/InetAddressUtils; -Lcom/android/net/module/util/IpRange; -Lcom/android/net/module/util/LinkPropertiesUtils$CompareOrUpdateResult; -Lcom/android/net/module/util/LinkPropertiesUtils$CompareResult; -Lcom/android/net/module/util/LinkPropertiesUtils; -Lcom/android/net/module/util/MacAddressUtils; -Lcom/android/net/module/util/NetUtils; -Lcom/android/net/module/util/NetworkCapabilitiesUtils; -Lcom/android/net/module/util/NetworkIdentityUtils; -Lcom/android/net/module/util/NetworkStackConstants; -Lcom/android/net/module/util/ProxyUtils; -Lcom/android/okhttp/Address; -Lcom/android/okhttp/AndroidInternal; -Lcom/android/okhttp/AndroidShimResponseCache; -Lcom/android/okhttp/Authenticator; -Lcom/android/okhttp/Cache$1; -Lcom/android/okhttp/Cache$CacheResponseBody$1; -Lcom/android/okhttp/Cache$CacheResponseBody; -Lcom/android/okhttp/Cache$Entry; -Lcom/android/okhttp/Cache; -Lcom/android/okhttp/CacheControl$Builder; -Lcom/android/okhttp/CacheControl; -Lcom/android/okhttp/CertificatePinner$Builder; -Lcom/android/okhttp/CertificatePinner; -Lcom/android/okhttp/CipherSuite; -Lcom/android/okhttp/ConfigAwareConnectionPool$1; -Lcom/android/okhttp/ConfigAwareConnectionPool; -Lcom/android/okhttp/Connection; -Lcom/android/okhttp/ConnectionPool$1; -Lcom/android/okhttp/ConnectionPool; -Lcom/android/okhttp/ConnectionSpec$1; -Lcom/android/okhttp/ConnectionSpec$Builder; -Lcom/android/okhttp/ConnectionSpec; -Lcom/android/okhttp/ConnectionSpecs; -Lcom/android/okhttp/Dispatcher; -Lcom/android/okhttp/Dns$1; -Lcom/android/okhttp/Dns; -Lcom/android/okhttp/Handshake; -Lcom/android/okhttp/Headers$1; -Lcom/android/okhttp/Headers$Builder; -Lcom/android/okhttp/Headers; -Lcom/android/okhttp/HttpHandler$CleartextURLFilter; -Lcom/android/okhttp/HttpHandler; -Lcom/android/okhttp/HttpUrl$1; -Lcom/android/okhttp/HttpUrl$Builder$ParseResult; -Lcom/android/okhttp/HttpUrl$Builder; -Lcom/android/okhttp/HttpUrl; -Lcom/android/okhttp/HttpsHandler; -Lcom/android/okhttp/Interceptor$Chain; -Lcom/android/okhttp/MediaType; -Lcom/android/okhttp/OkCacheContainer; -Lcom/android/okhttp/OkHttpClient$1; -Lcom/android/okhttp/OkHttpClient; -Lcom/android/okhttp/OkUrlFactories; -Lcom/android/okhttp/OkUrlFactory; -Lcom/android/okhttp/Protocol; -Lcom/android/okhttp/Request$1; -Lcom/android/okhttp/Request$Builder; -Lcom/android/okhttp/Request; -Lcom/android/okhttp/RequestBody$2; -Lcom/android/okhttp/RequestBody; -Lcom/android/okhttp/Response$1; -Lcom/android/okhttp/Response$Builder; -Lcom/android/okhttp/Response; -Lcom/android/okhttp/ResponseBody; -Lcom/android/okhttp/Route; -Lcom/android/okhttp/TlsVersion; -Lcom/android/okhttp/internal/ConnectionSpecSelector; -Lcom/android/okhttp/internal/DiskLruCache$1; -Lcom/android/okhttp/internal/DiskLruCache$4; -Lcom/android/okhttp/internal/DiskLruCache$Editor; -Lcom/android/okhttp/internal/DiskLruCache$Entry; -Lcom/android/okhttp/internal/DiskLruCache; -Lcom/android/okhttp/internal/FaultHidingSink; -Lcom/android/okhttp/internal/Internal; -Lcom/android/okhttp/internal/InternalCache; -Lcom/android/okhttp/internal/NamedRunnable; -Lcom/android/okhttp/internal/OptionalMethod; -Lcom/android/okhttp/internal/Platform; -Lcom/android/okhttp/internal/RouteDatabase; -Lcom/android/okhttp/internal/URLFilter; -Lcom/android/okhttp/internal/Util$1; -Lcom/android/okhttp/internal/Util; -Lcom/android/okhttp/internal/Version; -Lcom/android/okhttp/internal/framed/FrameWriter; -Lcom/android/okhttp/internal/framed/FramedConnection$1; -Lcom/android/okhttp/internal/framed/FramedConnection$Builder; -Lcom/android/okhttp/internal/framed/FramedConnection$Listener$1; -Lcom/android/okhttp/internal/framed/FramedConnection$Listener; -Lcom/android/okhttp/internal/framed/FramedConnection; -Lcom/android/okhttp/internal/framed/Header; -Lcom/android/okhttp/internal/framed/PushObserver$1; -Lcom/android/okhttp/internal/framed/PushObserver; -Lcom/android/okhttp/internal/framed/Settings; -Lcom/android/okhttp/internal/http/AuthenticatorAdapter; -Lcom/android/okhttp/internal/http/CacheRequest; -Lcom/android/okhttp/internal/http/CacheStrategy$1; -Lcom/android/okhttp/internal/http/CacheStrategy$Factory; -Lcom/android/okhttp/internal/http/CacheStrategy; -Lcom/android/okhttp/internal/http/HeaderParser; -Lcom/android/okhttp/internal/http/Http1xStream$1; -Lcom/android/okhttp/internal/http/Http1xStream$AbstractSource; -Lcom/android/okhttp/internal/http/Http1xStream$ChunkedSink; -Lcom/android/okhttp/internal/http/Http1xStream$ChunkedSource; -Lcom/android/okhttp/internal/http/Http1xStream$FixedLengthSink; -Lcom/android/okhttp/internal/http/Http1xStream$FixedLengthSource; -Lcom/android/okhttp/internal/http/Http1xStream; -Lcom/android/okhttp/internal/http/Http2xStream; -Lcom/android/okhttp/internal/http/HttpDate$1; -Lcom/android/okhttp/internal/http/HttpDate; -Lcom/android/okhttp/internal/http/HttpEngine$1; -Lcom/android/okhttp/internal/http/HttpEngine$2; -Lcom/android/okhttp/internal/http/HttpEngine$NetworkInterceptorChain; -Lcom/android/okhttp/internal/http/HttpEngine; -Lcom/android/okhttp/internal/http/HttpMethod; -Lcom/android/okhttp/internal/http/HttpStream; -Lcom/android/okhttp/internal/http/OkHeaders$1; -Lcom/android/okhttp/internal/http/OkHeaders; -Lcom/android/okhttp/internal/http/RealResponseBody; -Lcom/android/okhttp/internal/http/RequestException; -Lcom/android/okhttp/internal/http/RequestLine; -Lcom/android/okhttp/internal/http/RetryableSink; -Lcom/android/okhttp/internal/http/RouteException; -Lcom/android/okhttp/internal/http/RouteSelector; -Lcom/android/okhttp/internal/http/StatusLine; -Lcom/android/okhttp/internal/http/StreamAllocation; -Lcom/android/okhttp/internal/huc/DelegatingHttpsURLConnection; -Lcom/android/okhttp/internal/huc/HttpURLConnectionImpl; -Lcom/android/okhttp/internal/huc/HttpsURLConnectionImpl; -Lcom/android/okhttp/internal/io/FileSystem$1; -Lcom/android/okhttp/internal/io/FileSystem; -Lcom/android/okhttp/internal/io/RealConnection; -Lcom/android/okhttp/internal/tls/CertificateChainCleaner; -Lcom/android/okhttp/internal/tls/OkHostnameVerifier; -Lcom/android/okhttp/internal/tls/RealTrustRootIndex; -Lcom/android/okhttp/internal/tls/TrustRootIndex; -Lcom/android/okhttp/internalandroidapi/AndroidResponseCacheAdapter; -Lcom/android/okhttp/internalandroidapi/Dns; -Lcom/android/okhttp/internalandroidapi/HasCacheHolder$CacheHolder; -Lcom/android/okhttp/internalandroidapi/HasCacheHolder; -Lcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory$DnsAdapter; -Lcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory; -Lcom/android/okhttp/okio/AsyncTimeout$1; -Lcom/android/okhttp/okio/AsyncTimeout$2; -Lcom/android/okhttp/okio/AsyncTimeout$Watchdog; -Lcom/android/okhttp/okio/AsyncTimeout; -Lcom/android/okhttp/okio/Buffer; -Lcom/android/okhttp/okio/BufferedSink; -Lcom/android/okhttp/okio/BufferedSource; -Lcom/android/okhttp/okio/ByteString; -Lcom/android/okhttp/okio/ForwardingSink; -Lcom/android/okhttp/okio/ForwardingSource; -Lcom/android/okhttp/okio/ForwardingTimeout; -Lcom/android/okhttp/okio/GzipSource; -Lcom/android/okhttp/okio/InflaterSource; -Lcom/android/okhttp/okio/Okio$1; -Lcom/android/okhttp/okio/Okio$2; -Lcom/android/okhttp/okio/Okio$3; -Lcom/android/okhttp/okio/Okio; -Lcom/android/okhttp/okio/RealBufferedSink$1; -Lcom/android/okhttp/okio/RealBufferedSink; -Lcom/android/okhttp/okio/RealBufferedSource$1; -Lcom/android/okhttp/okio/RealBufferedSource; -Lcom/android/okhttp/okio/Segment; -Lcom/android/okhttp/okio/SegmentPool; -Lcom/android/okhttp/okio/Sink; -Lcom/android/okhttp/okio/Source; -Lcom/android/okhttp/okio/Timeout$1; -Lcom/android/okhttp/okio/Timeout; -Lcom/android/okhttp/okio/Util; -Lcom/android/org/bouncycastle/asn1/ASN1ApplicationSpecific; -Lcom/android/org/bouncycastle/asn1/ASN1BitString; -Lcom/android/org/bouncycastle/asn1/ASN1Boolean; -Lcom/android/org/bouncycastle/asn1/ASN1Choice; -Lcom/android/org/bouncycastle/asn1/ASN1Encodable; -Lcom/android/org/bouncycastle/asn1/ASN1EncodableVector; -Lcom/android/org/bouncycastle/asn1/ASN1Enumerated; -Lcom/android/org/bouncycastle/asn1/ASN1Exception; -Lcom/android/org/bouncycastle/asn1/ASN1External; -Lcom/android/org/bouncycastle/asn1/ASN1GeneralizedTime; -Lcom/android/org/bouncycastle/asn1/ASN1InputStream; -Lcom/android/org/bouncycastle/asn1/ASN1Integer; -Lcom/android/org/bouncycastle/asn1/ASN1Object; -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier$OidHandle; -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier; -Lcom/android/org/bouncycastle/asn1/ASN1OctetString; -Lcom/android/org/bouncycastle/asn1/ASN1OctetStringParser; -Lcom/android/org/bouncycastle/asn1/ASN1OutputStream; -Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -Lcom/android/org/bouncycastle/asn1/ASN1Sequence$1; -Lcom/android/org/bouncycastle/asn1/ASN1Sequence; -Lcom/android/org/bouncycastle/asn1/ASN1SequenceParser; -Lcom/android/org/bouncycastle/asn1/ASN1Set$1; -Lcom/android/org/bouncycastle/asn1/ASN1Set; -Lcom/android/org/bouncycastle/asn1/ASN1SetParser; -Lcom/android/org/bouncycastle/asn1/ASN1StreamParser; -Lcom/android/org/bouncycastle/asn1/ASN1String; -Lcom/android/org/bouncycastle/asn1/ASN1TaggedObject; -Lcom/android/org/bouncycastle/asn1/ASN1UTCTime; -Lcom/android/org/bouncycastle/asn1/BERApplicationSpecific; -Lcom/android/org/bouncycastle/asn1/BERApplicationSpecificParser; -Lcom/android/org/bouncycastle/asn1/BEROctetString; -Lcom/android/org/bouncycastle/asn1/BEROctetStringParser; -Lcom/android/org/bouncycastle/asn1/BERSequence; -Lcom/android/org/bouncycastle/asn1/BERSequenceParser; -Lcom/android/org/bouncycastle/asn1/BERSet; -Lcom/android/org/bouncycastle/asn1/BERSetParser; -Lcom/android/org/bouncycastle/asn1/BERTaggedObjectParser; -Lcom/android/org/bouncycastle/asn1/ConstructedOctetStream; -Lcom/android/org/bouncycastle/asn1/DERBMPString; -Lcom/android/org/bouncycastle/asn1/DERBitString; -Lcom/android/org/bouncycastle/asn1/DERExternalParser; -Lcom/android/org/bouncycastle/asn1/DERGeneralString; -Lcom/android/org/bouncycastle/asn1/DERGraphicString; -Lcom/android/org/bouncycastle/asn1/DERIA5String; -Lcom/android/org/bouncycastle/asn1/DERNull; -Lcom/android/org/bouncycastle/asn1/DERNumericString; -Lcom/android/org/bouncycastle/asn1/DEROctetString; -Lcom/android/org/bouncycastle/asn1/DEROutputStream; -Lcom/android/org/bouncycastle/asn1/DERPrintableString; -Lcom/android/org/bouncycastle/asn1/DERSequence; -Lcom/android/org/bouncycastle/asn1/DERSet; -Lcom/android/org/bouncycastle/asn1/DERT61String; -Lcom/android/org/bouncycastle/asn1/DERTaggedObject; -Lcom/android/org/bouncycastle/asn1/DERUTF8String; -Lcom/android/org/bouncycastle/asn1/DERUniversalString; -Lcom/android/org/bouncycastle/asn1/DERVideotexString; -Lcom/android/org/bouncycastle/asn1/DERVisibleString; -Lcom/android/org/bouncycastle/asn1/DLApplicationSpecific; -Lcom/android/org/bouncycastle/asn1/DLBitString; -Lcom/android/org/bouncycastle/asn1/DLExternal; -Lcom/android/org/bouncycastle/asn1/DLFactory; -Lcom/android/org/bouncycastle/asn1/DLSequence; -Lcom/android/org/bouncycastle/asn1/DLSet; -Lcom/android/org/bouncycastle/asn1/DefiniteLengthInputStream; -Lcom/android/org/bouncycastle/asn1/InMemoryRepresentable; -Lcom/android/org/bouncycastle/asn1/IndefiniteLengthInputStream; -Lcom/android/org/bouncycastle/asn1/LazyEncodedSequence; -Lcom/android/org/bouncycastle/asn1/LimitedInputStream; -Lcom/android/org/bouncycastle/asn1/StreamUtil; -Lcom/android/org/bouncycastle/asn1/bc/BCObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/misc/MiscObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/nist/NISTObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/oiw/OIWObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/pkcs/PKCSObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/x500/X500Name; -Lcom/android/org/bouncycastle/asn1/x500/style/AbstractX500NameStyle; -Lcom/android/org/bouncycastle/asn1/x500/style/BCStyle; -Lcom/android/org/bouncycastle/asn1/x509/AlgorithmIdentifier; -Lcom/android/org/bouncycastle/asn1/x509/Certificate; -Lcom/android/org/bouncycastle/asn1/x509/DSAParameter; -Lcom/android/org/bouncycastle/asn1/x509/SubjectPublicKeyInfo; -Lcom/android/org/bouncycastle/asn1/x509/Time; -Lcom/android/org/bouncycastle/asn1/x509/X509Name; -Lcom/android/org/bouncycastle/asn1/x509/X509ObjectIdentifiers; -Lcom/android/org/bouncycastle/asn1/x9/X9ECParameters; -Lcom/android/org/bouncycastle/asn1/x9/X9ObjectIdentifiers; -Lcom/android/org/bouncycastle/crypto/BlockCipher; -Lcom/android/org/bouncycastle/crypto/BufferedBlockCipher; -Lcom/android/org/bouncycastle/crypto/CipherParameters; -Lcom/android/org/bouncycastle/crypto/CryptoException; -Lcom/android/org/bouncycastle/crypto/CryptoServicesPermission; -Lcom/android/org/bouncycastle/crypto/CryptoServicesRegistrar$Property; -Lcom/android/org/bouncycastle/crypto/CryptoServicesRegistrar; -Lcom/android/org/bouncycastle/crypto/DataLengthException; -Lcom/android/org/bouncycastle/crypto/Digest; -Lcom/android/org/bouncycastle/crypto/ExtendedDigest; -Lcom/android/org/bouncycastle/crypto/InvalidCipherTextException; -Lcom/android/org/bouncycastle/crypto/Mac; -Lcom/android/org/bouncycastle/crypto/OutputLengthException; -Lcom/android/org/bouncycastle/crypto/PBEParametersGenerator; -Lcom/android/org/bouncycastle/crypto/RuntimeCryptoException; -Lcom/android/org/bouncycastle/crypto/Wrapper; -Lcom/android/org/bouncycastle/crypto/digests/AndroidDigestFactory; -Lcom/android/org/bouncycastle/crypto/digests/AndroidDigestFactoryBouncyCastle; -Lcom/android/org/bouncycastle/crypto/digests/AndroidDigestFactoryOpenSSL; -Lcom/android/org/bouncycastle/crypto/digests/EncodableDigest; -Lcom/android/org/bouncycastle/crypto/digests/GeneralDigest; -Lcom/android/org/bouncycastle/crypto/digests/LongDigest; -Lcom/android/org/bouncycastle/crypto/digests/MD5Digest; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$MD5; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA1; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA224; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA256; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA384; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest$SHA512; -Lcom/android/org/bouncycastle/crypto/digests/OpenSSLDigest; -Lcom/android/org/bouncycastle/crypto/digests/SHA1Digest; -Lcom/android/org/bouncycastle/crypto/digests/SHA224Digest; -Lcom/android/org/bouncycastle/crypto/digests/SHA256Digest; -Lcom/android/org/bouncycastle/crypto/digests/SHA384Digest; -Lcom/android/org/bouncycastle/crypto/digests/SHA512Digest; -Lcom/android/org/bouncycastle/crypto/engines/AESEngine; -Lcom/android/org/bouncycastle/crypto/engines/DESEngine; -Lcom/android/org/bouncycastle/crypto/generators/OpenSSLPBEParametersGenerator; -Lcom/android/org/bouncycastle/crypto/generators/PKCS12ParametersGenerator; -Lcom/android/org/bouncycastle/crypto/generators/PKCS5S1ParametersGenerator; -Lcom/android/org/bouncycastle/crypto/generators/PKCS5S2ParametersGenerator; -Lcom/android/org/bouncycastle/crypto/io/MacInputStream; -Lcom/android/org/bouncycastle/crypto/macs/HMac; -Lcom/android/org/bouncycastle/crypto/modes/AEADBlockCipher; -Lcom/android/org/bouncycastle/crypto/modes/CBCBlockCipher; -Lcom/android/org/bouncycastle/crypto/paddings/BlockCipherPadding; -Lcom/android/org/bouncycastle/crypto/paddings/PKCS7Padding; -Lcom/android/org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher; -Lcom/android/org/bouncycastle/crypto/params/AEADParameters; -Lcom/android/org/bouncycastle/crypto/params/AsymmetricKeyParameter; -Lcom/android/org/bouncycastle/crypto/params/DHParameters; -Lcom/android/org/bouncycastle/crypto/params/DHValidationParameters; -Lcom/android/org/bouncycastle/crypto/params/DSAKeyParameters; -Lcom/android/org/bouncycastle/crypto/params/DSAParameters; -Lcom/android/org/bouncycastle/crypto/params/DSAPublicKeyParameters; -Lcom/android/org/bouncycastle/crypto/params/DSAValidationParameters; -Lcom/android/org/bouncycastle/crypto/params/KeyParameter; -Lcom/android/org/bouncycastle/crypto/params/ParametersWithIV; -Lcom/android/org/bouncycastle/crypto/params/ParametersWithRandom; -Lcom/android/org/bouncycastle/jcajce/PKCS12Key; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/DH$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/DH; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/DSA$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/RSA$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/RSA; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/dh/KeyFactorySpi; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/DSAUtil; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/KeyFactorySpi; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/rsa/CipherSpi$NoPadding; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/rsa/KeyFactorySpi; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/rsa/RSAUtil; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/util/BaseCipherSpi; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/util/BaseKeyFactorySpi; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/util/KeyUtil; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/x509/CertificateFactory; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/x509/PEMUtil$Boundaries; -Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/x509/PEMUtil; -Lcom/android/org/bouncycastle/jcajce/provider/config/ConfigurableProvider; -Lcom/android/org/bouncycastle/jcajce/provider/config/ProviderConfiguration; -Lcom/android/org/bouncycastle/jcajce/provider/config/ProviderConfigurationPermission; -Lcom/android/org/bouncycastle/jcajce/provider/digest/DigestAlgorithmProvider; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA1$Mappings$$ExternalSyntheticOutline0; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA1$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA1; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA224$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA224; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA256$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA256; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA384$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA384; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA512$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/digest/SHA512; -Lcom/android/org/bouncycastle/jcajce/provider/keystore/BC$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/keystore/PKCS12$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi$Std; -Lcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi$StoreEntry; -Lcom/android/org/bouncycastle/jcajce/provider/keystore/bc/BcKeyStoreSpi; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/AES$ECB; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/AES$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/AES; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/ARC4$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/ARC4; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/Blowfish$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/Blowfish; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/DES$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/DES; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/DESede$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/DESede; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPBKDF2$BasePBKDF2; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPBKDF2$BasePBKDF2WithHmacSHA1; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPBKDF2$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPBKDF2$PBKDF2WithHmacSHA1UTF8; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPBKDF2; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPKCS12$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBEPKCS12; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBES2AlgorithmParameters$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/PBES2AlgorithmParameters; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/RC2$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/RC2; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/SymmetricAlgorithmProvider; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/Twofish$Mappings; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/Twofish; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BCPBEKey; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$AEADGenericBlockCipher; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$BufferedGenericBlockCipher; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher$GenericBlockCipher; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseBlockCipher; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseSecretKeyFactory; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseWrapCipher$ErasableOutputStream; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseWrapCipher$InvalidKeyOrParametersException; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/BaseWrapCipher; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/ClassUtil$1; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/ClassUtil; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/GcmSpecUtil$2; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/GcmSpecUtil; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/PBE$Util; -Lcom/android/org/bouncycastle/jcajce/provider/symmetric/util/PBE; -Lcom/android/org/bouncycastle/jcajce/provider/util/AlgorithmProvider; -Lcom/android/org/bouncycastle/jcajce/provider/util/AsymmetricAlgorithmProvider; -Lcom/android/org/bouncycastle/jcajce/provider/util/AsymmetricKeyInfoConverter; -Lcom/android/org/bouncycastle/jcajce/provider/util/DigestFactory; -Lcom/android/org/bouncycastle/jcajce/spec/PBKDF2KeySpec; -Lcom/android/org/bouncycastle/jcajce/util/BCJcaJceHelper; -Lcom/android/org/bouncycastle/jcajce/util/DefaultJcaJceHelper; -Lcom/android/org/bouncycastle/jcajce/util/JcaJceHelper; -Lcom/android/org/bouncycastle/jce/X509Principal; -Lcom/android/org/bouncycastle/jce/interfaces/PKCS12BagAttributeCarrier; -Lcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider$1; -Lcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider$PrivateProvider; -Lcom/android/org/bouncycastle/jce/provider/BouncyCastleProvider; -Lcom/android/org/bouncycastle/jce/provider/BouncyCastleProviderConfiguration; -Lcom/android/org/bouncycastle/jce/provider/CertStoreCollectionSpi; -Lcom/android/org/bouncycastle/jce/provider/X509CRLObject; -Lcom/android/org/bouncycastle/util/Arrays; -Lcom/android/org/bouncycastle/util/BigIntegers; -Lcom/android/org/bouncycastle/util/Integers; -Lcom/android/org/bouncycastle/util/Memoable; -Lcom/android/org/bouncycastle/util/Pack; -Lcom/android/org/bouncycastle/util/Properties$1; -Lcom/android/org/bouncycastle/util/Properties; -Lcom/android/org/bouncycastle/util/Strings$1; -Lcom/android/org/bouncycastle/util/Strings; -Lcom/android/org/bouncycastle/util/encoders/Hex; -Lcom/android/org/bouncycastle/util/encoders/HexEncoder; -Lcom/android/org/bouncycastle/util/io/Streams; -Lcom/android/org/kxml2/io/KXmlParser$ContentSource; -Lcom/android/org/kxml2/io/KXmlParser$ValueContext; -Lcom/android/phone/ecc/nano/CodedInputByteBufferNano; -Lcom/android/phone/ecc/nano/CodedOutputByteBufferNano$OutOfSpaceException; -Lcom/android/phone/ecc/nano/CodedOutputByteBufferNano; -Lcom/android/phone/ecc/nano/ExtendableMessageNano; -Lcom/android/phone/ecc/nano/FieldArray; -Lcom/android/phone/ecc/nano/FieldData; -Lcom/android/phone/ecc/nano/InternalNano; -Lcom/android/phone/ecc/nano/InvalidProtocolBufferNanoException; -Lcom/android/phone/ecc/nano/MessageNano; -Lcom/android/phone/ecc/nano/MessageNanoPrinter; -Lcom/android/phone/ecc/nano/ProtobufEccData$AllInfo; -Lcom/android/phone/ecc/nano/ProtobufEccData$CountryInfo; -Lcom/android/phone/ecc/nano/ProtobufEccData$EccInfo; -Lcom/android/phone/ecc/nano/UnknownFieldData; -Lcom/android/phone/ecc/nano/WireFormatNano; -Lcom/android/sdksandbox/flags/FeatureFlags; -Lcom/android/sdksandbox/flags/FeatureFlagsImpl; -Lcom/android/sdksandbox/flags/Flags; -Lcom/android/server/AppWidgetBackupBridge; -Lcom/android/server/LocalServices; -Lcom/android/server/WidgetBackupProvider; -Lcom/android/server/am/nano/Capabilities; -Lcom/android/server/am/nano/Capability; -Lcom/android/server/am/nano/FrameworkCapability; -Lcom/android/server/am/nano/VMCapability; -Lcom/android/server/backup/AccountManagerBackupHelper; -Lcom/android/server/backup/AccountSyncSettingsBackupHelper; -Lcom/android/server/backup/NotificationBackupHelper; -Lcom/android/server/backup/PermissionBackupHelper; -Lcom/android/server/backup/PreferredActivityBackupHelper; -Lcom/android/server/backup/ShortcutBackupHelper; -Lcom/android/server/backup/SliceBackupHelper; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$ApfProgramEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$ApfStatistics; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$ConnectStatistics; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$DHCPEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$DNSLatencies; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$DNSLookupBatch; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$DefaultNetworkEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$IpConnectivityEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$IpConnectivityLog; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$IpProvisioningEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$IpReachabilityEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$NetworkEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$NetworkId; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$NetworkStats; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$Pair; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$RaEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$ValidationProbeEvent; -Lcom/android/server/connectivity/metrics/nano/IpConnectivityLogClass$WakeupStats; -Lcom/android/server/criticalevents/nano/CriticalEventLogProto; -Lcom/android/server/criticalevents/nano/CriticalEventLogStorageProto; -Lcom/android/server/criticalevents/nano/CriticalEventProto$AppNotResponding; -Lcom/android/server/criticalevents/nano/CriticalEventProto$ExcessiveBinderCalls; -Lcom/android/server/criticalevents/nano/CriticalEventProto$HalfWatchdog; -Lcom/android/server/criticalevents/nano/CriticalEventProto$InstallPackages; -Lcom/android/server/criticalevents/nano/CriticalEventProto$JavaCrash; -Lcom/android/server/criticalevents/nano/CriticalEventProto$NativeCrash; -Lcom/android/server/criticalevents/nano/CriticalEventProto$SystemServerStarted; -Lcom/android/server/criticalevents/nano/CriticalEventProto$Watchdog; -Lcom/android/server/job/JobSchedulerInternal$JobStorePersistStats; -Lcom/android/server/net/BaseNetdEventCallback; -Lcom/android/server/net/BaseNetworkObserver; -Lcom/android/server/sip/SipHelper; -Lcom/android/server/sip/SipService$ConnectivityReceiver$1; -Lcom/android/server/sip/SipService$ConnectivityReceiver; -Lcom/android/server/sip/SipService$MyExecutor; -Lcom/android/server/sip/SipService$SipAutoReg; -Lcom/android/server/sip/SipService$SipKeepAliveProcessCallback; -Lcom/android/server/sip/SipService$SipSessionGroupExt; -Lcom/android/server/sip/SipService; -Lcom/android/server/sip/SipSessionGroup$KeepAliveProcessCallback; -Lcom/android/server/sip/SipSessionGroup$KeepAliveProcessCallbackProxy$1; -Lcom/android/server/sip/SipSessionGroup$KeepAliveProcessCallbackProxy$2; -Lcom/android/server/sip/SipSessionGroup$KeepAliveProcessCallbackProxy; -Lcom/android/server/sip/SipSessionGroup$MakeCallCommand; -Lcom/android/server/sip/SipSessionGroup$RegisterCommand; -Lcom/android/server/sip/SipSessionGroup$SipSessionCallReceiverImpl; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$1; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$2$1; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$2; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$SessionTimer$1; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$SessionTimer; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl$SipKeepAlive; -Lcom/android/server/sip/SipSessionGroup$SipSessionImpl; -Lcom/android/server/sip/SipSessionGroup; -Lcom/android/server/sip/SipSessionListenerProxy$10; -Lcom/android/server/sip/SipSessionListenerProxy$11; -Lcom/android/server/sip/SipSessionListenerProxy$12; -Lcom/android/server/sip/SipSessionListenerProxy$13; -Lcom/android/server/sip/SipSessionListenerProxy$1; -Lcom/android/server/sip/SipSessionListenerProxy$2; -Lcom/android/server/sip/SipSessionListenerProxy$3; -Lcom/android/server/sip/SipSessionListenerProxy$4; -Lcom/android/server/sip/SipSessionListenerProxy$5; -Lcom/android/server/sip/SipSessionListenerProxy$6; -Lcom/android/server/sip/SipSessionListenerProxy$7; -Lcom/android/server/sip/SipSessionListenerProxy$8; -Lcom/android/server/sip/SipSessionListenerProxy$9; -Lcom/android/server/sip/SipSessionListenerProxy; -Lcom/android/server/sip/SipWakeLock; -Lcom/android/server/sip/SipWakeupTimer$MyEvent; -Lcom/android/server/sip/SipWakeupTimer$MyEventComparator; -Lcom/android/server/sip/SipWakeupTimer; -Lcom/android/server/telecom/flags/FeatureFlags; -Lcom/android/server/telecom/flags/FeatureFlagsImpl; -Lcom/android/server/telecom/flags/Flags; -Lcom/android/server/usage/AppStandbyInternal$AppIdleStateChangeListener; -Lcom/android/server/usage/AppStandbyInternal; -Lcom/android/server/wm/nano/WindowManagerProtos$TaskSnapshotProto; -Lcom/android/service/ims/RcsSettingUtils$$ExternalSyntheticLambda0; -Lcom/android/service/ims/RcsSettingUtils; -Lcom/android/service/ims/Task; -Lcom/android/service/ims/TaskManager$MessageData; -Lcom/android/service/ims/TaskManager$MessageHandler; -Lcom/android/service/ims/TaskManager; -Lcom/android/service/ims/presence/ContactCapabilityResponse; -Lcom/android/service/ims/presence/PresenceAvailabilityTask; -Lcom/android/service/ims/presence/PresenceBase$PresencePublishState; -Lcom/android/service/ims/presence/PresenceBase; -Lcom/android/service/ims/presence/PresenceCapabilityTask; -Lcom/android/service/ims/presence/PresencePublication$$ExternalSyntheticLambda0; -Lcom/android/service/ims/presence/PresencePublication$1; -Lcom/android/service/ims/presence/PresencePublication$PublishRequest; -Lcom/android/service/ims/presence/PresencePublication$PublishType; -Lcom/android/service/ims/presence/PresencePublication$StackPublishTriggerType; -Lcom/android/service/ims/presence/PresencePublication; -Lcom/android/service/ims/presence/PresencePublishTask; -Lcom/android/service/ims/presence/PresencePublisher; -Lcom/android/service/ims/presence/PresenceSubscriber; -Lcom/android/service/ims/presence/PresenceTask; -Lcom/android/service/ims/presence/PresenceUtils; -Lcom/android/service/ims/presence/SubscribePublisher; -Lcom/android/service/nano/StringListParamProto; -Lcom/android/telephony/Rlog; -Lcom/android/text/flags/FeatureFlags; -Lcom/android/text/flags/FeatureFlagsImpl; -Lcom/android/text/flags/Flags; -Lcom/android/window/flags/FeatureFlags; -Lcom/android/window/flags/FeatureFlagsImpl; -Lcom/android/window/flags/Flags; -Lcom/google/android/collect/Lists; -Lcom/google/android/collect/Maps; -Lcom/google/android/collect/Sets; -Lcom/google/android/gles_jni/EGLConfigImpl; -Lcom/google/android/gles_jni/EGLContextImpl; -Lcom/google/android/gles_jni/EGLDisplayImpl; -Lcom/google/android/gles_jni/EGLImpl; -Lcom/google/android/gles_jni/EGLSurfaceImpl; -Lcom/google/android/gles_jni/GLImpl; -Lcom/google/android/mms/InvalidHeaderValueException; -Lcom/google/android/mms/MmsException; -Lcom/google/android/mms/pdu/EncodedStringValue; -Lcom/google/android/mms/pdu/GenericPdu; -Lcom/google/android/mms/pdu/NotificationInd; -Lcom/google/android/mms/pdu/PduParser; -Lcom/google/android/rappor/Encoder; -Lcom/google/android/rappor/HmacDrbg; -Lcom/sun/security/cert/internal/x509/X509V1CertImpl; -Ldalvik/annotation/optimization/CriticalNative; -Ldalvik/annotation/optimization/FastNative; -Ldalvik/annotation/optimization/NeverCompile; -Ldalvik/annotation/optimization/NeverInline; -Ldalvik/system/AppSpecializationHooks; -Ldalvik/system/BaseDexClassLoader$Reporter; -Ldalvik/system/BaseDexClassLoader; -Ldalvik/system/BlockGuard$2; -Ldalvik/system/BlockGuard$3; -Ldalvik/system/BlockGuard$BlockGuardPolicyException; -Ldalvik/system/BlockGuard$Policy; -Ldalvik/system/BlockGuard$VmPolicy; -Ldalvik/system/BlockGuard; -Ldalvik/system/ClassExt; -Ldalvik/system/CloseGuard$DefaultReporter; -Ldalvik/system/CloseGuard$Reporter; -Ldalvik/system/CloseGuard$Tracker; -Ldalvik/system/CloseGuard; -Ldalvik/system/DelegateLastClassLoader; -Ldalvik/system/DexClassLoader; -Ldalvik/system/DexFile$DFEnum; -Ldalvik/system/DexFile$OptimizationInfo-IA; -Ldalvik/system/DexFile$OptimizationInfo; -Ldalvik/system/DexFile; -Ldalvik/system/DexPathList$$ExternalSyntheticLambda0; -Ldalvik/system/DexPathList$Element; -Ldalvik/system/DexPathList$NativeLibraryElement; -Ldalvik/system/DexPathList; -Ldalvik/system/EmulatedStackFrame$Range; -Ldalvik/system/EmulatedStackFrame; -Ldalvik/system/InMemoryDexClassLoader; -Ldalvik/system/PathClassLoader; -Ldalvik/system/RuntimeHooks; -Ldalvik/system/SocketTagger$1; -Ldalvik/system/SocketTagger; -Ldalvik/system/VMDebug; -Ldalvik/system/VMRuntime$HiddenApiUsageLogger; -Ldalvik/system/VMRuntime$SdkVersionContainer; -Ldalvik/system/VMRuntime; -Ldalvik/system/VMStack; -Ldalvik/system/ZipPathValidator$1; -Ldalvik/system/ZipPathValidator$Callback; -Ldalvik/system/ZipPathValidator; -Ldalvik/system/ZygoteHooks; -Lgov/nist/core/Debug; -Lgov/nist/core/DuplicateNameValueList; -Lgov/nist/core/GenericObject; -Lgov/nist/core/GenericObjectList; -Lgov/nist/core/Host; -Lgov/nist/core/HostNameParser; -Lgov/nist/core/HostPort; -Lgov/nist/core/InternalErrorHandler; -Lgov/nist/core/LexerCore; -Lgov/nist/core/LogLevels; -Lgov/nist/core/LogWriter; -Lgov/nist/core/Match; -Lgov/nist/core/MultiValueMap; -Lgov/nist/core/MultiValueMapImpl; -Lgov/nist/core/NameValue; -Lgov/nist/core/NameValueList; -Lgov/nist/core/PackageNames; -Lgov/nist/core/ParserCore; -Lgov/nist/core/Separators; -Lgov/nist/core/ServerLogger; -Lgov/nist/core/StackLogger; -Lgov/nist/core/StringTokenizer; -Lgov/nist/core/ThreadAuditor$ThreadHandle; -Lgov/nist/core/ThreadAuditor; -Lgov/nist/core/Token; -Lgov/nist/core/net/AddressResolver; -Lgov/nist/core/net/DefaultNetworkLayer; -Lgov/nist/core/net/NetworkLayer; -Lgov/nist/core/net/SslNetworkLayer; -Lgov/nist/javax/sip/ClientTransactionExt; -Lgov/nist/javax/sip/DefaultAddressResolver; -Lgov/nist/javax/sip/DialogExt; -Lgov/nist/javax/sip/DialogFilter; -Lgov/nist/javax/sip/DialogTimeoutEvent$Reason; -Lgov/nist/javax/sip/DialogTimeoutEvent; -Lgov/nist/javax/sip/EventScanner; -Lgov/nist/javax/sip/EventWrapper; -Lgov/nist/javax/sip/ListeningPointExt; -Lgov/nist/javax/sip/ListeningPointImpl; -Lgov/nist/javax/sip/LogRecord; -Lgov/nist/javax/sip/LogRecordFactory; -Lgov/nist/javax/sip/NistSipMessageFactoryImpl; -Lgov/nist/javax/sip/ResponseEventExt; -Lgov/nist/javax/sip/SIPConstants; -Lgov/nist/javax/sip/ServerTransactionExt; -Lgov/nist/javax/sip/SipListenerExt; -Lgov/nist/javax/sip/SipProviderExt; -Lgov/nist/javax/sip/SipProviderImpl; -Lgov/nist/javax/sip/SipStackExt; -Lgov/nist/javax/sip/SipStackImpl; -Lgov/nist/javax/sip/TransactionExt; -Lgov/nist/javax/sip/Utils; -Lgov/nist/javax/sip/UtilsExt; -Lgov/nist/javax/sip/address/AddressFactoryImpl; -Lgov/nist/javax/sip/address/AddressImpl; -Lgov/nist/javax/sip/address/Authority; -Lgov/nist/javax/sip/address/GenericURI; -Lgov/nist/javax/sip/address/NetObject; -Lgov/nist/javax/sip/address/NetObjectList; -Lgov/nist/javax/sip/address/ParameterNames; -Lgov/nist/javax/sip/address/RFC2396UrlDecoder; -Lgov/nist/javax/sip/address/RouterExt; -Lgov/nist/javax/sip/address/SipURIExt; -Lgov/nist/javax/sip/address/SipUri; -Lgov/nist/javax/sip/address/TelURLImpl; -Lgov/nist/javax/sip/address/TelephoneNumber; -Lgov/nist/javax/sip/address/UserInfo; -Lgov/nist/javax/sip/clientauthutils/AccountManager; -Lgov/nist/javax/sip/clientauthutils/AuthenticationHelper; -Lgov/nist/javax/sip/clientauthutils/AuthenticationHelperImpl; -Lgov/nist/javax/sip/clientauthutils/CredentialsCache$TimeoutTask; -Lgov/nist/javax/sip/clientauthutils/CredentialsCache; -Lgov/nist/javax/sip/clientauthutils/MessageDigestAlgorithm; -Lgov/nist/javax/sip/clientauthutils/SecureAccountManager; -Lgov/nist/javax/sip/clientauthutils/UserCredentialHash; -Lgov/nist/javax/sip/clientauthutils/UserCredentials; -Lgov/nist/javax/sip/header/Accept; -Lgov/nist/javax/sip/header/AcceptEncoding; -Lgov/nist/javax/sip/header/AcceptEncodingList; -Lgov/nist/javax/sip/header/AcceptLanguage; -Lgov/nist/javax/sip/header/AcceptLanguageList; -Lgov/nist/javax/sip/header/AcceptList; -Lgov/nist/javax/sip/header/AddressParameters; -Lgov/nist/javax/sip/header/AddressParametersHeader; -Lgov/nist/javax/sip/header/AlertInfo; -Lgov/nist/javax/sip/header/AlertInfoList; -Lgov/nist/javax/sip/header/Allow; -Lgov/nist/javax/sip/header/AllowEvents; -Lgov/nist/javax/sip/header/AllowEventsList; -Lgov/nist/javax/sip/header/AllowList; -Lgov/nist/javax/sip/header/AuthenticationHeader; -Lgov/nist/javax/sip/header/AuthenticationInfo; -Lgov/nist/javax/sip/header/AuthenticationInfoList; -Lgov/nist/javax/sip/header/Authorization; -Lgov/nist/javax/sip/header/AuthorizationList; -Lgov/nist/javax/sip/header/CSeq; -Lgov/nist/javax/sip/header/CallID; -Lgov/nist/javax/sip/header/CallIdentifier; -Lgov/nist/javax/sip/header/CallInfo; -Lgov/nist/javax/sip/header/CallInfoList; -Lgov/nist/javax/sip/header/Challenge; -Lgov/nist/javax/sip/header/Contact; -Lgov/nist/javax/sip/header/ContactList; -Lgov/nist/javax/sip/header/ContentDisposition; -Lgov/nist/javax/sip/header/ContentEncoding; -Lgov/nist/javax/sip/header/ContentEncodingList; -Lgov/nist/javax/sip/header/ContentLanguage; -Lgov/nist/javax/sip/header/ContentLanguageList; -Lgov/nist/javax/sip/header/ContentLength; -Lgov/nist/javax/sip/header/ContentType; -Lgov/nist/javax/sip/header/Credentials; -Lgov/nist/javax/sip/header/ErrorInfo; -Lgov/nist/javax/sip/header/ErrorInfoList; -Lgov/nist/javax/sip/header/Event; -Lgov/nist/javax/sip/header/Expires; -Lgov/nist/javax/sip/header/ExtensionHeaderImpl; -Lgov/nist/javax/sip/header/ExtensionHeaderList; -Lgov/nist/javax/sip/header/From; -Lgov/nist/javax/sip/header/HeaderExt; -Lgov/nist/javax/sip/header/HeaderFactoryExt; -Lgov/nist/javax/sip/header/HeaderFactoryImpl; -Lgov/nist/javax/sip/header/InReplyTo; -Lgov/nist/javax/sip/header/InReplyToList; -Lgov/nist/javax/sip/header/Indentation; -Lgov/nist/javax/sip/header/MaxForwards; -Lgov/nist/javax/sip/header/MediaRange; -Lgov/nist/javax/sip/header/MimeVersion; -Lgov/nist/javax/sip/header/MinExpires; -Lgov/nist/javax/sip/header/NameMap; -Lgov/nist/javax/sip/header/Organization; -Lgov/nist/javax/sip/header/ParameterNames; -Lgov/nist/javax/sip/header/ParametersHeader; -Lgov/nist/javax/sip/header/Priority; -Lgov/nist/javax/sip/header/Protocol; -Lgov/nist/javax/sip/header/ProxyAuthenticate; -Lgov/nist/javax/sip/header/ProxyAuthenticateList; -Lgov/nist/javax/sip/header/ProxyAuthorization; -Lgov/nist/javax/sip/header/ProxyAuthorizationList; -Lgov/nist/javax/sip/header/ProxyRequire; -Lgov/nist/javax/sip/header/ProxyRequireList; -Lgov/nist/javax/sip/header/RAck; -Lgov/nist/javax/sip/header/RSeq; -Lgov/nist/javax/sip/header/Reason; -Lgov/nist/javax/sip/header/ReasonList; -Lgov/nist/javax/sip/header/RecordRoute; -Lgov/nist/javax/sip/header/RecordRouteList; -Lgov/nist/javax/sip/header/ReferTo; -Lgov/nist/javax/sip/header/ReplyTo; -Lgov/nist/javax/sip/header/RequestLine; -Lgov/nist/javax/sip/header/Require; -Lgov/nist/javax/sip/header/RequireList; -Lgov/nist/javax/sip/header/RetryAfter; -Lgov/nist/javax/sip/header/Route; -Lgov/nist/javax/sip/header/RouteList; -Lgov/nist/javax/sip/header/SIPDate; -Lgov/nist/javax/sip/header/SIPDateHeader; -Lgov/nist/javax/sip/header/SIPETag; -Lgov/nist/javax/sip/header/SIPHeader; -Lgov/nist/javax/sip/header/SIPHeaderList; -Lgov/nist/javax/sip/header/SIPHeaderNames; -Lgov/nist/javax/sip/header/SIPHeaderNamesCache; -Lgov/nist/javax/sip/header/SIPIfMatch; -Lgov/nist/javax/sip/header/SIPObject; -Lgov/nist/javax/sip/header/SIPObjectList; -Lgov/nist/javax/sip/header/Server; -Lgov/nist/javax/sip/header/SipRequestLine; -Lgov/nist/javax/sip/header/SipStatusLine; -Lgov/nist/javax/sip/header/StatusLine; -Lgov/nist/javax/sip/header/Subject; -Lgov/nist/javax/sip/header/SubscriptionState; -Lgov/nist/javax/sip/header/Supported; -Lgov/nist/javax/sip/header/SupportedList; -Lgov/nist/javax/sip/header/TimeStamp; -Lgov/nist/javax/sip/header/To; -Lgov/nist/javax/sip/header/Unsupported; -Lgov/nist/javax/sip/header/UnsupportedList; -Lgov/nist/javax/sip/header/UserAgent; -Lgov/nist/javax/sip/header/Via; -Lgov/nist/javax/sip/header/ViaHeaderExt; -Lgov/nist/javax/sip/header/ViaList; -Lgov/nist/javax/sip/header/WWWAuthenticate; -Lgov/nist/javax/sip/header/WWWAuthenticateList; -Lgov/nist/javax/sip/header/Warning; -Lgov/nist/javax/sip/header/WarningList; -Lgov/nist/javax/sip/header/extensions/Join; -Lgov/nist/javax/sip/header/extensions/JoinHeader; -Lgov/nist/javax/sip/header/extensions/MinSE; -Lgov/nist/javax/sip/header/extensions/MinSEHeader; -Lgov/nist/javax/sip/header/extensions/References; -Lgov/nist/javax/sip/header/extensions/ReferencesHeader; -Lgov/nist/javax/sip/header/extensions/ReferredBy; -Lgov/nist/javax/sip/header/extensions/ReferredByHeader; -Lgov/nist/javax/sip/header/extensions/Replaces; -Lgov/nist/javax/sip/header/extensions/ReplacesHeader; -Lgov/nist/javax/sip/header/extensions/SessionExpires; -Lgov/nist/javax/sip/header/extensions/SessionExpiresHeader; -Lgov/nist/javax/sip/header/ims/AddressHeaderIms; -Lgov/nist/javax/sip/header/ims/AuthorizationHeaderIms; -Lgov/nist/javax/sip/header/ims/PAccessNetworkInfo; -Lgov/nist/javax/sip/header/ims/PAccessNetworkInfoHeader; -Lgov/nist/javax/sip/header/ims/PAssertedIdentity; -Lgov/nist/javax/sip/header/ims/PAssertedIdentityHeader; -Lgov/nist/javax/sip/header/ims/PAssertedIdentityList; -Lgov/nist/javax/sip/header/ims/PAssertedService; -Lgov/nist/javax/sip/header/ims/PAssertedServiceHeader; -Lgov/nist/javax/sip/header/ims/PAssociatedURI; -Lgov/nist/javax/sip/header/ims/PAssociatedURIHeader; -Lgov/nist/javax/sip/header/ims/PAssociatedURIList; -Lgov/nist/javax/sip/header/ims/PCalledPartyID; -Lgov/nist/javax/sip/header/ims/PCalledPartyIDHeader; -Lgov/nist/javax/sip/header/ims/PChargingFunctionAddresses; -Lgov/nist/javax/sip/header/ims/PChargingFunctionAddressesHeader; -Lgov/nist/javax/sip/header/ims/PChargingVector; -Lgov/nist/javax/sip/header/ims/PChargingVectorHeader; -Lgov/nist/javax/sip/header/ims/PMediaAuthorization; -Lgov/nist/javax/sip/header/ims/PMediaAuthorizationHeader; -Lgov/nist/javax/sip/header/ims/PMediaAuthorizationList; -Lgov/nist/javax/sip/header/ims/PPreferredIdentity; -Lgov/nist/javax/sip/header/ims/PPreferredIdentityHeader; -Lgov/nist/javax/sip/header/ims/PPreferredService; -Lgov/nist/javax/sip/header/ims/PPreferredServiceHeader; -Lgov/nist/javax/sip/header/ims/PProfileKey; -Lgov/nist/javax/sip/header/ims/PProfileKeyHeader; -Lgov/nist/javax/sip/header/ims/PServedUser; -Lgov/nist/javax/sip/header/ims/PServedUserHeader; -Lgov/nist/javax/sip/header/ims/PUserDatabase; -Lgov/nist/javax/sip/header/ims/PUserDatabaseHeader; -Lgov/nist/javax/sip/header/ims/PVisitedNetworkID; -Lgov/nist/javax/sip/header/ims/PVisitedNetworkIDHeader; -Lgov/nist/javax/sip/header/ims/PVisitedNetworkIDList; -Lgov/nist/javax/sip/header/ims/ParameterNamesIms; -Lgov/nist/javax/sip/header/ims/Path; -Lgov/nist/javax/sip/header/ims/PathHeader; -Lgov/nist/javax/sip/header/ims/PathList; -Lgov/nist/javax/sip/header/ims/Privacy; -Lgov/nist/javax/sip/header/ims/PrivacyHeader; -Lgov/nist/javax/sip/header/ims/PrivacyList; -Lgov/nist/javax/sip/header/ims/SIPHeaderNamesIms; -Lgov/nist/javax/sip/header/ims/SecurityAgree; -Lgov/nist/javax/sip/header/ims/SecurityAgreeHeader; -Lgov/nist/javax/sip/header/ims/SecurityClient; -Lgov/nist/javax/sip/header/ims/SecurityClientHeader; -Lgov/nist/javax/sip/header/ims/SecurityClientList; -Lgov/nist/javax/sip/header/ims/SecurityServer; -Lgov/nist/javax/sip/header/ims/SecurityServerHeader; -Lgov/nist/javax/sip/header/ims/SecurityServerList; -Lgov/nist/javax/sip/header/ims/SecurityVerify; -Lgov/nist/javax/sip/header/ims/SecurityVerifyHeader; -Lgov/nist/javax/sip/header/ims/SecurityVerifyList; -Lgov/nist/javax/sip/header/ims/ServiceRoute; -Lgov/nist/javax/sip/header/ims/ServiceRouteHeader; -Lgov/nist/javax/sip/header/ims/ServiceRouteList; -Lgov/nist/javax/sip/header/ims/WWWAuthenticateHeaderIms; -Lgov/nist/javax/sip/message/Content; -Lgov/nist/javax/sip/message/ContentImpl; -Lgov/nist/javax/sip/message/HeaderIterator; -Lgov/nist/javax/sip/message/ListMap; -Lgov/nist/javax/sip/message/MessageExt; -Lgov/nist/javax/sip/message/MessageFactoryExt; -Lgov/nist/javax/sip/message/MessageFactoryImpl$1; -Lgov/nist/javax/sip/message/MessageFactoryImpl; -Lgov/nist/javax/sip/message/MessageObject; -Lgov/nist/javax/sip/message/MultipartMimeContent; -Lgov/nist/javax/sip/message/MultipartMimeContentImpl; -Lgov/nist/javax/sip/message/RequestExt; -Lgov/nist/javax/sip/message/ResponseExt; -Lgov/nist/javax/sip/message/SIPDuplicateHeaderException; -Lgov/nist/javax/sip/message/SIPMessage; -Lgov/nist/javax/sip/message/SIPRequest; -Lgov/nist/javax/sip/message/SIPResponse; -Lgov/nist/javax/sip/parser/AcceptEncodingParser; -Lgov/nist/javax/sip/parser/AcceptLanguageParser; -Lgov/nist/javax/sip/parser/AcceptParser; -Lgov/nist/javax/sip/parser/AddressParametersParser; -Lgov/nist/javax/sip/parser/AddressParser; -Lgov/nist/javax/sip/parser/AlertInfoParser; -Lgov/nist/javax/sip/parser/AllowEventsParser; -Lgov/nist/javax/sip/parser/AllowParser; -Lgov/nist/javax/sip/parser/AuthenticationInfoParser; -Lgov/nist/javax/sip/parser/AuthorizationParser; -Lgov/nist/javax/sip/parser/CSeqParser; -Lgov/nist/javax/sip/parser/CallIDParser; -Lgov/nist/javax/sip/parser/CallInfoParser; -Lgov/nist/javax/sip/parser/ChallengeParser; -Lgov/nist/javax/sip/parser/ContactParser; -Lgov/nist/javax/sip/parser/ContentDispositionParser; -Lgov/nist/javax/sip/parser/ContentEncodingParser; -Lgov/nist/javax/sip/parser/ContentLanguageParser; -Lgov/nist/javax/sip/parser/ContentLengthParser; -Lgov/nist/javax/sip/parser/ContentTypeParser; -Lgov/nist/javax/sip/parser/DateParser; -Lgov/nist/javax/sip/parser/ErrorInfoParser; -Lgov/nist/javax/sip/parser/EventParser; -Lgov/nist/javax/sip/parser/ExpiresParser; -Lgov/nist/javax/sip/parser/FromParser; -Lgov/nist/javax/sip/parser/HeaderParser; -Lgov/nist/javax/sip/parser/InReplyToParser; -Lgov/nist/javax/sip/parser/Lexer; -Lgov/nist/javax/sip/parser/MaxForwardsParser; -Lgov/nist/javax/sip/parser/MimeVersionParser; -Lgov/nist/javax/sip/parser/MinExpiresParser; -Lgov/nist/javax/sip/parser/OrganizationParser; -Lgov/nist/javax/sip/parser/ParametersParser; -Lgov/nist/javax/sip/parser/ParseExceptionListener; -Lgov/nist/javax/sip/parser/Parser; -Lgov/nist/javax/sip/parser/ParserFactory; -Lgov/nist/javax/sip/parser/Pipeline$Buffer; -Lgov/nist/javax/sip/parser/Pipeline$MyTimer; -Lgov/nist/javax/sip/parser/Pipeline; -Lgov/nist/javax/sip/parser/PipelinedMsgParser; -Lgov/nist/javax/sip/parser/PriorityParser; -Lgov/nist/javax/sip/parser/ProxyAuthenticateParser; -Lgov/nist/javax/sip/parser/ProxyAuthorizationParser; -Lgov/nist/javax/sip/parser/ProxyRequireParser; -Lgov/nist/javax/sip/parser/RAckParser; -Lgov/nist/javax/sip/parser/RSeqParser; -Lgov/nist/javax/sip/parser/ReasonParser; -Lgov/nist/javax/sip/parser/RecordRouteParser; -Lgov/nist/javax/sip/parser/ReferToParser; -Lgov/nist/javax/sip/parser/ReplyToParser; -Lgov/nist/javax/sip/parser/RequestLineParser; -Lgov/nist/javax/sip/parser/RequireParser; -Lgov/nist/javax/sip/parser/RetryAfterParser; -Lgov/nist/javax/sip/parser/RouteParser; -Lgov/nist/javax/sip/parser/SIPETagParser; -Lgov/nist/javax/sip/parser/SIPIfMatchParser; -Lgov/nist/javax/sip/parser/SIPMessageListener; -Lgov/nist/javax/sip/parser/ServerParser; -Lgov/nist/javax/sip/parser/StatusLineParser; -Lgov/nist/javax/sip/parser/StringMsgParser$1ParserThread; -Lgov/nist/javax/sip/parser/StringMsgParser; -Lgov/nist/javax/sip/parser/SubjectParser; -Lgov/nist/javax/sip/parser/SubscriptionStateParser; -Lgov/nist/javax/sip/parser/SupportedParser; -Lgov/nist/javax/sip/parser/TimeStampParser; -Lgov/nist/javax/sip/parser/ToParser; -Lgov/nist/javax/sip/parser/TokenNames; -Lgov/nist/javax/sip/parser/TokenTypes; -Lgov/nist/javax/sip/parser/URLParser; -Lgov/nist/javax/sip/parser/UnsupportedParser; -Lgov/nist/javax/sip/parser/UserAgentParser; -Lgov/nist/javax/sip/parser/ViaParser; -Lgov/nist/javax/sip/parser/WWWAuthenticateParser; -Lgov/nist/javax/sip/parser/WarningParser; -Lgov/nist/javax/sip/parser/extensions/JoinParser; -Lgov/nist/javax/sip/parser/extensions/MinSEParser; -Lgov/nist/javax/sip/parser/extensions/ReferencesParser; -Lgov/nist/javax/sip/parser/extensions/ReferredByParser; -Lgov/nist/javax/sip/parser/extensions/ReplacesParser; -Lgov/nist/javax/sip/parser/extensions/SessionExpiresParser; -Lgov/nist/javax/sip/parser/ims/AddressHeaderParser; -Lgov/nist/javax/sip/parser/ims/PAccessNetworkInfoParser; -Lgov/nist/javax/sip/parser/ims/PAssertedIdentityParser; -Lgov/nist/javax/sip/parser/ims/PAssertedServiceParser; -Lgov/nist/javax/sip/parser/ims/PAssociatedURIParser; -Lgov/nist/javax/sip/parser/ims/PCalledPartyIDParser; -Lgov/nist/javax/sip/parser/ims/PChargingFunctionAddressesParser; -Lgov/nist/javax/sip/parser/ims/PChargingVectorParser; -Lgov/nist/javax/sip/parser/ims/PMediaAuthorizationParser; -Lgov/nist/javax/sip/parser/ims/PPreferredIdentityParser; -Lgov/nist/javax/sip/parser/ims/PPreferredServiceParser; -Lgov/nist/javax/sip/parser/ims/PProfileKeyParser; -Lgov/nist/javax/sip/parser/ims/PServedUserParser; -Lgov/nist/javax/sip/parser/ims/PUserDatabaseParser; -Lgov/nist/javax/sip/parser/ims/PVisitedNetworkIDParser; -Lgov/nist/javax/sip/parser/ims/PathParser; -Lgov/nist/javax/sip/parser/ims/PrivacyParser; -Lgov/nist/javax/sip/parser/ims/SecurityAgreeParser; -Lgov/nist/javax/sip/parser/ims/SecurityClientParser; -Lgov/nist/javax/sip/parser/ims/SecurityServerParser; -Lgov/nist/javax/sip/parser/ims/SecurityVerifyParser; -Lgov/nist/javax/sip/parser/ims/ServiceRouteParser; -Lgov/nist/javax/sip/parser/ims/TokenNamesIms; -Lgov/nist/javax/sip/stack/DefaultMessageLogFactory; -Lgov/nist/javax/sip/stack/DefaultRouter; -Lgov/nist/javax/sip/stack/HandshakeCompletedListenerImpl; -Lgov/nist/javax/sip/stack/HopImpl; -Lgov/nist/javax/sip/stack/IOHandler; -Lgov/nist/javax/sip/stack/MessageChannel; -Lgov/nist/javax/sip/stack/MessageLog; -Lgov/nist/javax/sip/stack/MessageProcessor; -Lgov/nist/javax/sip/stack/RawMessageChannel; -Lgov/nist/javax/sip/stack/SIPClientTransaction$TransactionTimer; -Lgov/nist/javax/sip/stack/SIPClientTransaction; -Lgov/nist/javax/sip/stack/SIPDialog$DialogDeleteIfNoAckSentTask; -Lgov/nist/javax/sip/stack/SIPDialog$DialogDeleteTask; -Lgov/nist/javax/sip/stack/SIPDialog$DialogTimerTask; -Lgov/nist/javax/sip/stack/SIPDialog$LingerTimer; -Lgov/nist/javax/sip/stack/SIPDialog$ReInviteSender; -Lgov/nist/javax/sip/stack/SIPDialog; -Lgov/nist/javax/sip/stack/SIPDialogErrorEvent; -Lgov/nist/javax/sip/stack/SIPDialogEventListener; -Lgov/nist/javax/sip/stack/SIPServerTransaction$ListenerExecutionMaxTimer; -Lgov/nist/javax/sip/stack/SIPServerTransaction$ProvisionalResponseTask; -Lgov/nist/javax/sip/stack/SIPServerTransaction$RetransmissionAlertTimerTask; -Lgov/nist/javax/sip/stack/SIPServerTransaction$SendTrying; -Lgov/nist/javax/sip/stack/SIPServerTransaction$TransactionTimer; -Lgov/nist/javax/sip/stack/SIPServerTransaction; -Lgov/nist/javax/sip/stack/SIPStackTimerTask; -Lgov/nist/javax/sip/stack/SIPTransaction$LingerTimer; -Lgov/nist/javax/sip/stack/SIPTransaction; -Lgov/nist/javax/sip/stack/SIPTransactionErrorEvent; -Lgov/nist/javax/sip/stack/SIPTransactionEventListener; -Lgov/nist/javax/sip/stack/SIPTransactionStack$PingTimer; -Lgov/nist/javax/sip/stack/SIPTransactionStack$RemoveForkedTransactionTimerTask; -Lgov/nist/javax/sip/stack/SIPTransactionStack; -Lgov/nist/javax/sip/stack/ServerLog; -Lgov/nist/javax/sip/stack/ServerRequestInterface; -Lgov/nist/javax/sip/stack/ServerResponseInterface; -Lgov/nist/javax/sip/stack/StackMessageFactory; -Lgov/nist/javax/sip/stack/TCPMessageChannel$1; -Lgov/nist/javax/sip/stack/TCPMessageChannel; -Lgov/nist/javax/sip/stack/TCPMessageProcessor; -Lgov/nist/javax/sip/stack/TLSMessageChannel; -Lgov/nist/javax/sip/stack/TLSMessageProcessor; -Lgov/nist/javax/sip/stack/UDPMessageChannel$PingBackTimerTask; -Lgov/nist/javax/sip/stack/UDPMessageChannel; -Lgov/nist/javax/sip/stack/UDPMessageProcessor; -Ljava/awt/font/NumericShaper; -Ljava/awt/font/TextAttribute; -Ljava/io/Bits; -Ljava/io/BufferedInputStream; -Ljava/io/BufferedOutputStream; -Ljava/io/BufferedReader; -Ljava/io/BufferedWriter; -Ljava/io/ByteArrayInputStream; -Ljava/io/ByteArrayOutputStream; -Ljava/io/CharArrayReader; -Ljava/io/CharArrayWriter; -Ljava/io/CharConversionException; -Ljava/io/Closeable; -Ljava/io/Console; -Ljava/io/DataInput; -Ljava/io/DataInputStream; -Ljava/io/DataOutput; -Ljava/io/DataOutputStream; -Ljava/io/DefaultFileSystem; -Ljava/io/EOFException; -Ljava/io/ExpiringCache$1; -Ljava/io/ExpiringCache; -Ljava/io/Externalizable; -Ljava/io/File$PathStatus; -Ljava/io/File$TempDirectory; -Ljava/io/File; -Ljava/io/FileDescriptor$1; -Ljava/io/FileDescriptor; -Ljava/io/FileFilter; -Ljava/io/FileInputStream$UseManualSkipException; -Ljava/io/FileInputStream; -Ljava/io/FileNotFoundException; -Ljava/io/FileOutputStream; -Ljava/io/FileReader; -Ljava/io/FileSystem; -Ljava/io/FileWriter; -Ljava/io/FilenameFilter; -Ljava/io/FilterInputStream; -Ljava/io/FilterOutputStream; -Ljava/io/FilterReader; -Ljava/io/Flushable; -Ljava/io/IOException; -Ljava/io/InputStream; -Ljava/io/InputStreamReader; -Ljava/io/InterruptedIOException; -Ljava/io/InvalidClassException; -Ljava/io/InvalidObjectException; -Ljava/io/LineNumberReader; -Ljava/io/NotActiveException; -Ljava/io/NotSerializableException; -Ljava/io/ObjectInput; -Ljava/io/ObjectInputStream$$ExternalSyntheticLambda0; -Ljava/io/ObjectInputStream$1; -Ljava/io/ObjectInputStream$BlockDataInputStream; -Ljava/io/ObjectInputStream$Caches; -Ljava/io/ObjectInputStream$GetField; -Ljava/io/ObjectInputStream$GetFieldImpl; -Ljava/io/ObjectInputStream$HandleTable$HandleList; -Ljava/io/ObjectInputStream$HandleTable; -Ljava/io/ObjectInputStream$PeekInputStream; -Ljava/io/ObjectInputStream$ValidationList$1; -Ljava/io/ObjectInputStream$ValidationList$Callback; -Ljava/io/ObjectInputStream$ValidationList; -Ljava/io/ObjectInputStream; -Ljava/io/ObjectOutput; -Ljava/io/ObjectOutputStream$1; -Ljava/io/ObjectOutputStream$BlockDataOutputStream; -Ljava/io/ObjectOutputStream$Caches; -Ljava/io/ObjectOutputStream$DebugTraceInfoStack; -Ljava/io/ObjectOutputStream$HandleTable; -Ljava/io/ObjectOutputStream$PutField; -Ljava/io/ObjectOutputStream$PutFieldImpl; -Ljava/io/ObjectOutputStream$ReplaceTable; -Ljava/io/ObjectStreamClass$$ExternalSyntheticLambda0; -Ljava/io/ObjectStreamClass$$ExternalSyntheticLambda1; -Ljava/io/ObjectStreamClass$$ExternalSyntheticLambda2; -Ljava/io/ObjectStreamClass$$ExternalSyntheticLambda3; -Ljava/io/ObjectStreamClass$1; -Ljava/io/ObjectStreamClass$2; -Ljava/io/ObjectStreamClass$3; -Ljava/io/ObjectStreamClass$4; -Ljava/io/ObjectStreamClass$5; -Ljava/io/ObjectStreamClass$Caches; -Ljava/io/ObjectStreamClass$ClassDataSlot; -Ljava/io/ObjectStreamClass$DefaultSUIDCompatibilityListener; -Ljava/io/ObjectStreamClass$DeserializationConstructorsCache; -Ljava/io/ObjectStreamClass$EntryFuture$1; -Ljava/io/ObjectStreamClass$EntryFuture-IA; -Ljava/io/ObjectStreamClass$EntryFuture; -Ljava/io/ObjectStreamClass$ExceptionInfo; -Ljava/io/ObjectStreamClass$FieldReflector; -Ljava/io/ObjectStreamClass$FieldReflectorKey; -Ljava/io/ObjectStreamClass$MemberSignature; -Ljava/io/ObjectStreamClass$WeakClassKey; -Ljava/io/ObjectStreamClass; -Ljava/io/ObjectStreamConstants; -Ljava/io/ObjectStreamException; -Ljava/io/ObjectStreamField; -Ljava/io/OptionalDataException; -Ljava/io/OutputStream; -Ljava/io/OutputStreamWriter; -Ljava/io/PipedInputStream; -Ljava/io/PipedOutputStream; -Ljava/io/PrintStream; -Ljava/io/PrintWriter; -Ljava/io/PushbackInputStream; -Ljava/io/PushbackReader; -Ljava/io/RandomAccessFile; -Ljava/io/Reader; -Ljava/io/SequenceInputStream; -Ljava/io/SerialCallbackContext; -Ljava/io/Serializable; -Ljava/io/SerializablePermission; -Ljava/io/StreamCorruptedException; -Ljava/io/StringBufferInputStream; -Ljava/io/StringReader; -Ljava/io/StringWriter; -Ljava/io/SyncFailedException; -Ljava/io/UTFDataFormatException; -Ljava/io/UncheckedIOException; -Ljava/io/UnixFileSystem; -Ljava/io/UnsupportedEncodingException; -Ljava/io/WriteAbortedException; -Ljava/io/Writer; -Ljava/lang/AbstractMethodError; -Ljava/lang/AbstractStringBuilder$$ExternalSyntheticLambda0; -Ljava/lang/AbstractStringBuilder$$ExternalSyntheticLambda1; -Ljava/lang/AbstractStringBuilder; -Ljava/lang/AndroidHardcodedSystemProperties; -Ljava/lang/Appendable; -Ljava/lang/ArithmeticException; -Ljava/lang/ArrayIndexOutOfBoundsException; -Ljava/lang/ArrayStoreException; -Ljava/lang/AssertionError; -Ljava/lang/AutoCloseable; -Ljava/lang/Boolean; -Ljava/lang/BootClassLoader; -Ljava/lang/Byte$ByteCache; -Ljava/lang/Byte; -Ljava/lang/CaseMapper$1; -Ljava/lang/CaseMapper; -Ljava/lang/CharSequence$$ExternalSyntheticLambda0; -Ljava/lang/CharSequence$$ExternalSyntheticLambda1; -Ljava/lang/CharSequence$1CharIterator; -Ljava/lang/CharSequence$1CodePointIterator; -Ljava/lang/CharSequence; -Ljava/lang/Character$CharacterCache; -Ljava/lang/Character$Subset; -Ljava/lang/Character$UnicodeBlock; -Ljava/lang/Character; -Ljava/lang/Class$$ExternalSyntheticLambda0; -Ljava/lang/Class$$ExternalSyntheticLambda1; -Ljava/lang/Class$Caches; -Ljava/lang/Class; -Ljava/lang/ClassCastException; -Ljava/lang/ClassFormatError; -Ljava/lang/ClassLoader$$ExternalSyntheticLambda0; -Ljava/lang/ClassLoader$$ExternalSyntheticLambda1; -Ljava/lang/ClassLoader$$ExternalSyntheticLambda2; -Ljava/lang/ClassLoader$SystemClassLoader; -Ljava/lang/ClassLoader; -Ljava/lang/ClassNotFoundException; -Ljava/lang/ClassValue$Entry; -Ljava/lang/ClassValue; -Ljava/lang/CloneNotSupportedException; -Ljava/lang/Cloneable; -Ljava/lang/Comparable; -Ljava/lang/CompoundEnumeration; -Ljava/lang/Daemons$Daemon; -Ljava/lang/Daemons$FinalizerDaemon; -Ljava/lang/Daemons$FinalizerWatchdogDaemon; -Ljava/lang/Daemons$HeapTaskDaemon; -Ljava/lang/Daemons$ReferenceQueueDaemon; -Ljava/lang/Daemons; -Ljava/lang/Deprecated; -Ljava/lang/DexCache; -Ljava/lang/Double; -Ljava/lang/Enum$$ExternalSyntheticLambda0; -Ljava/lang/Enum$1; -Ljava/lang/Enum$EnumDesc; -Ljava/lang/Enum; -Ljava/lang/EnumConstantNotPresentException; -Ljava/lang/Error; -Ljava/lang/Exception; -Ljava/lang/ExceptionInInitializerError; -Ljava/lang/Float; -Ljava/lang/IllegalAccessError; -Ljava/lang/IllegalAccessException; -Ljava/lang/IllegalArgumentException; -Ljava/lang/IllegalMonitorStateException; -Ljava/lang/IllegalStateException; -Ljava/lang/IllegalThreadStateException; -Ljava/lang/IncompatibleClassChangeError; -Ljava/lang/IndexOutOfBoundsException; -Ljava/lang/InheritableThreadLocal; -Ljava/lang/InstantiationError; -Ljava/lang/InstantiationException; -Ljava/lang/Integer$IntegerCache; -Ljava/lang/Integer; -Ljava/lang/InternalError; -Ljava/lang/InterruptedException; -Ljava/lang/Iterable; -Ljava/lang/LinkageError; -Ljava/lang/Long$LongCache; -Ljava/lang/Long; -Ljava/lang/Math$RandomNumberGeneratorHolder; -Ljava/lang/Math; -Ljava/lang/NegativeArraySizeException; -Ljava/lang/NoClassDefFoundError; -Ljava/lang/NoSuchFieldError; -Ljava/lang/NoSuchFieldException; -Ljava/lang/NoSuchMethodError; -Ljava/lang/NoSuchMethodException; -Ljava/lang/NullPointerException; -Ljava/lang/Number; -Ljava/lang/NumberFormatException; -Ljava/lang/Object; -Ljava/lang/OutOfMemoryError; -Ljava/lang/Package; -Ljava/lang/Process; -Ljava/lang/ProcessBuilder$NullInputStream; -Ljava/lang/ProcessBuilder$NullOutputStream; -Ljava/lang/ProcessBuilder$Redirect$1; -Ljava/lang/ProcessBuilder$Redirect$2; -Ljava/lang/ProcessBuilder$Redirect; -Ljava/lang/ProcessBuilder; -Ljava/lang/ProcessEnvironment$ExternalData; -Ljava/lang/ProcessEnvironment$StringEnvironment; -Ljava/lang/ProcessEnvironment$Value; -Ljava/lang/ProcessEnvironment$Variable; -Ljava/lang/ProcessEnvironment; -Ljava/lang/ProcessImpl; -Ljava/lang/Readable; -Ljava/lang/Record; -Ljava/lang/ReflectiveOperationException; -Ljava/lang/Runnable; -Ljava/lang/Runtime; -Ljava/lang/RuntimeException; -Ljava/lang/RuntimePermission; -Ljava/lang/SecurityException; -Ljava/lang/SecurityManager; -Ljava/lang/Short$ShortCache; -Ljava/lang/Short; -Ljava/lang/StackFrameInfo; -Ljava/lang/StackOverflowError; -Ljava/lang/StackStreamFactory$AbstractStackWalker; -Ljava/lang/StackStreamFactory; -Ljava/lang/StackTraceElement; -Ljava/lang/StackWalker$Option; -Ljava/lang/StackWalker$StackFrame; -Ljava/lang/StackWalker; -Ljava/lang/StrictMath; -Ljava/lang/String$$ExternalSyntheticLambda0; -Ljava/lang/String$$ExternalSyntheticLambda1; -Ljava/lang/String$$ExternalSyntheticLambda2; -Ljava/lang/String$$ExternalSyntheticLambda3; -Ljava/lang/String$CaseInsensitiveComparator-IA; -Ljava/lang/String$CaseInsensitiveComparator; -Ljava/lang/String; -Ljava/lang/StringBuffer; -Ljava/lang/StringBuilder; -Ljava/lang/StringFactory; -Ljava/lang/StringIndexOutOfBoundsException; -Ljava/lang/StringLatin1$CharsSpliterator; -Ljava/lang/StringLatin1$LinesSpliterator; -Ljava/lang/StringLatin1; -Ljava/lang/StringUTF16$CharsSpliterator; -Ljava/lang/StringUTF16$CharsSpliteratorForString; -Ljava/lang/StringUTF16$CodePointsSpliterator; -Ljava/lang/StringUTF16$CodePointsSpliteratorForString; -Ljava/lang/StringUTF16; -Ljava/lang/System$PropertiesWithNonOverrideableDefaults; -Ljava/lang/System; -Ljava/lang/Thread$1; -Ljava/lang/Thread$Caches; -Ljava/lang/Thread$State; -Ljava/lang/Thread$UncaughtExceptionHandler; -Ljava/lang/Thread$WeakClassKey; -Ljava/lang/Thread; -Ljava/lang/ThreadDeath; -Ljava/lang/ThreadGroup; -Ljava/lang/ThreadLocal$ThreadLocalMap$Entry; -Ljava/lang/ThreadLocal$ThreadLocalMap-IA; -Ljava/lang/ThreadLocal$ThreadLocalMap; -Ljava/lang/ThreadLocal; -Ljava/lang/Throwable$PrintStreamOrWriter-IA; -Ljava/lang/Throwable$PrintStreamOrWriter; -Ljava/lang/Throwable$SentinelHolder; -Ljava/lang/Throwable$WrappedPrintStream; -Ljava/lang/Throwable$WrappedPrintWriter; -Ljava/lang/Throwable; -Ljava/lang/TypeNotPresentException; -Ljava/lang/UNIXProcess$1; -Ljava/lang/UNIXProcess$2; -Ljava/lang/UNIXProcess$3; -Ljava/lang/UNIXProcess$ProcessPipeInputStream; -Ljava/lang/UNIXProcess$ProcessPipeOutputStream; -Ljava/lang/UNIXProcess$ProcessReaperThreadFactory$1; -Ljava/lang/UNIXProcess$ProcessReaperThreadFactory; -Ljava/lang/UNIXProcess; -Ljava/lang/UnsatisfiedLinkError; -Ljava/lang/UnsupportedClassVersionError; -Ljava/lang/UnsupportedOperationException; -Ljava/lang/VMClassLoader; -Ljava/lang/VerifyError; -Ljava/lang/VirtualMachineError; -Ljava/lang/Void; -Ljava/lang/annotation/Annotation; -Ljava/lang/annotation/AnnotationTypeMismatchException; -Ljava/lang/annotation/Documented; -Ljava/lang/annotation/IncompleteAnnotationException; -Ljava/lang/annotation/Inherited; -Ljava/lang/annotation/Retention; -Ljava/lang/annotation/Target; -Ljava/lang/constant/ClassDesc; -Ljava/lang/constant/Constable; -Ljava/lang/constant/ConstantDesc; -Ljava/lang/constant/ConstantDescs; -Ljava/lang/constant/ConstantUtils; -Ljava/lang/constant/DirectMethodHandleDesc$Kind; -Ljava/lang/constant/DirectMethodHandleDesc; -Ljava/lang/constant/DirectMethodHandleDescImpl$1; -Ljava/lang/constant/DirectMethodHandleDescImpl; -Ljava/lang/constant/DynamicConstantDesc$AnonymousDynamicConstantDesc; -Ljava/lang/constant/DynamicConstantDesc; -Ljava/lang/constant/MethodHandleDesc$1; -Ljava/lang/constant/MethodHandleDesc; -Ljava/lang/constant/MethodTypeDesc; -Ljava/lang/constant/MethodTypeDescImpl; -Ljava/lang/constant/PrimitiveClassDescImpl; -Ljava/lang/constant/ReferenceClassDescImpl; -Ljava/lang/invoke/ArrayElementVarHandle; -Ljava/lang/invoke/ByteArrayViewVarHandle; -Ljava/lang/invoke/ByteBufferViewVarHandle; -Ljava/lang/invoke/CallSite; -Ljava/lang/invoke/ConstantCallSite; -Ljava/lang/invoke/FieldVarHandle; -Ljava/lang/invoke/MethodHandle; -Ljava/lang/invoke/MethodHandleImpl$HandleInfo; -Ljava/lang/invoke/MethodHandleImpl; -Ljava/lang/invoke/MethodHandleInfo; -Ljava/lang/invoke/MethodHandleStatics; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda0; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda10; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda11; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda12; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda13; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda14; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda15; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda16; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda17; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda18; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda19; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda1; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda20; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda21; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda22; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda23; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda24; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda25; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda2; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda3; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda4; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda5; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda6; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda7; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda8; -Ljava/lang/invoke/MethodHandles$$ExternalSyntheticLambda9; -Ljava/lang/invoke/MethodHandles$Lookup; -Ljava/lang/invoke/MethodHandles; -Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry; -Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet; -Ljava/lang/invoke/MethodType; -Ljava/lang/invoke/MethodTypeForm; -Ljava/lang/invoke/SerializedLambda; -Ljava/lang/invoke/StaticFieldVarHandle; -Ljava/lang/invoke/Transformers$AlwaysThrow; -Ljava/lang/invoke/Transformers$ArrayConstructor; -Ljava/lang/invoke/Transformers$ArrayLength; -Ljava/lang/invoke/Transformers$AsTypeAdapter; -Ljava/lang/invoke/Transformers$BindTo; -Ljava/lang/invoke/Transformers$CatchException; -Ljava/lang/invoke/Transformers$CollectArguments; -Ljava/lang/invoke/Transformers$Collector; -Ljava/lang/invoke/Transformers$Construct; -Ljava/lang/invoke/Transformers$DropArguments; -Ljava/lang/invoke/Transformers$ExplicitCastArguments; -Ljava/lang/invoke/Transformers$FilterArguments; -Ljava/lang/invoke/Transformers$FilterReturnValue; -Ljava/lang/invoke/Transformers$FoldArguments; -Ljava/lang/invoke/Transformers$GuardWithTest; -Ljava/lang/invoke/Transformers$InsertArguments; -Ljava/lang/invoke/Transformers$Invoker; -Ljava/lang/invoke/Transformers$Loop; -Ljava/lang/invoke/Transformers$PermuteArguments; -Ljava/lang/invoke/Transformers$ReferenceArrayElementGetter; -Ljava/lang/invoke/Transformers$ReferenceArrayElementSetter; -Ljava/lang/invoke/Transformers$ReferenceIdentity; -Ljava/lang/invoke/Transformers$Spreader; -Ljava/lang/invoke/Transformers$TableSwitch; -Ljava/lang/invoke/Transformers$Transformer; -Ljava/lang/invoke/Transformers$TryFinally; -Ljava/lang/invoke/Transformers$VarargsCollector; -Ljava/lang/invoke/Transformers$ZeroValue; -Ljava/lang/invoke/TypeDescriptor$OfField; -Ljava/lang/invoke/TypeDescriptor$OfMethod; -Ljava/lang/invoke/TypeDescriptor; -Ljava/lang/invoke/VarHandle$AccessMode; -Ljava/lang/invoke/VarHandle$AccessType; -Ljava/lang/invoke/VarHandle$VarHandleDesc$Kind; -Ljava/lang/invoke/VarHandle; -Ljava/lang/invoke/WrongMethodTypeException; -Ljava/lang/ref/Cleaner$1; -Ljava/lang/ref/Cleaner$Cleanable; -Ljava/lang/ref/Cleaner; -Ljava/lang/ref/FinalizerReference$Sentinel-IA; -Ljava/lang/ref/FinalizerReference$Sentinel; -Ljava/lang/ref/FinalizerReference; -Ljava/lang/ref/PhantomReference; -Ljava/lang/ref/Reference$SinkHolder$1; -Ljava/lang/ref/Reference$SinkHolder; -Ljava/lang/ref/Reference; -Ljava/lang/ref/ReferenceQueue; -Ljava/lang/ref/SoftReference; -Ljava/lang/ref/WeakReference; -Ljava/lang/reflect/AccessibleObject; -Ljava/lang/reflect/AnnotatedElement; -Ljava/lang/reflect/Array; -Ljava/lang/reflect/Constructor; -Ljava/lang/reflect/Executable$GenericInfo; -Ljava/lang/reflect/Executable; -Ljava/lang/reflect/Field; -Ljava/lang/reflect/GenericArrayType; -Ljava/lang/reflect/GenericDeclaration; -Ljava/lang/reflect/GenericSignatureFormatError; -Ljava/lang/reflect/InvocationHandler; -Ljava/lang/reflect/InvocationTargetException; -Ljava/lang/reflect/MalformedParametersException; -Ljava/lang/reflect/Member; -Ljava/lang/reflect/Method$1; -Ljava/lang/reflect/Method; -Ljava/lang/reflect/Modifier; -Ljava/lang/reflect/Parameter; -Ljava/lang/reflect/ParameterizedType; -Ljava/lang/reflect/Proxy$1; -Ljava/lang/reflect/Proxy$Key1; -Ljava/lang/reflect/Proxy$Key2; -Ljava/lang/reflect/Proxy$KeyFactory-IA; -Ljava/lang/reflect/Proxy$KeyFactory; -Ljava/lang/reflect/Proxy$KeyX; -Ljava/lang/reflect/Proxy$ProxyClassFactory-IA; -Ljava/lang/reflect/Proxy$ProxyClassFactory; -Ljava/lang/reflect/Proxy; -Ljava/lang/reflect/RecordComponent; -Ljava/lang/reflect/ReflectPermission; -Ljava/lang/reflect/Type; -Ljava/lang/reflect/TypeVariable; -Ljava/lang/reflect/UndeclaredThrowableException; -Ljava/lang/reflect/WeakCache$CacheKey; -Ljava/lang/reflect/WeakCache$CacheValue; -Ljava/lang/reflect/WeakCache$Factory; -Ljava/lang/reflect/WeakCache$LookupValue; -Ljava/lang/reflect/WeakCache$Value; -Ljava/lang/reflect/WeakCache; -Ljava/lang/reflect/WildcardType; -Ljava/math/BigDecimal$1; -Ljava/math/BigDecimal$LongOverflow; -Ljava/math/BigDecimal$StringBuilderHelper; -Ljava/math/BigDecimal; -Ljava/math/BigInteger$UnsafeHolder; -Ljava/math/BigInteger; -Ljava/math/MathContext; -Ljava/math/MutableBigInteger; -Ljava/math/RoundingMode; -Ljava/net/AbstractPlainDatagramSocketImpl; -Ljava/net/AbstractPlainSocketImpl; -Ljava/net/AddressCache$AddressCacheEntry; -Ljava/net/AddressCache$AddressCacheKey; -Ljava/net/AddressCache; -Ljava/net/Authenticator$RequestorType; -Ljava/net/Authenticator; -Ljava/net/BindException; -Ljava/net/ConnectException; -Ljava/net/CookieHandler; -Ljava/net/CookieManager$CookiePathComparator; -Ljava/net/CookieManager; -Ljava/net/CookiePolicy$1; -Ljava/net/CookiePolicy$2; -Ljava/net/CookiePolicy$3; -Ljava/net/CookiePolicy; -Ljava/net/CookieStore; -Ljava/net/DatagramPacket; -Ljava/net/DatagramSocket$1; -Ljava/net/DatagramSocket; -Ljava/net/DatagramSocketImpl; -Ljava/net/DatagramSocketImplFactory; -Ljava/net/DefaultDatagramSocketImplFactory; -Ljava/net/DefaultInterface; -Ljava/net/HttpCookie$10; -Ljava/net/HttpCookie$11; -Ljava/net/HttpCookie$1; -Ljava/net/HttpCookie$2; -Ljava/net/HttpCookie$3; -Ljava/net/HttpCookie$4; -Ljava/net/HttpCookie$5; -Ljava/net/HttpCookie$6; -Ljava/net/HttpCookie$7; -Ljava/net/HttpCookie$8; -Ljava/net/HttpCookie$9; -Ljava/net/HttpCookie$CookieAttributeAssignor; -Ljava/net/HttpCookie; -Ljava/net/HttpRetryException; -Ljava/net/HttpURLConnection; -Ljava/net/IDN; -Ljava/net/InMemoryCookieStore; -Ljava/net/Inet4Address; -Ljava/net/Inet6Address$Inet6AddressHolder-IA; -Ljava/net/Inet6Address$Inet6AddressHolder; -Ljava/net/Inet6Address; -Ljava/net/Inet6AddressImpl; -Ljava/net/InetAddress$1; -Ljava/net/InetAddress$InetAddressHolder; -Ljava/net/InetAddress; -Ljava/net/InetAddressImpl; -Ljava/net/InetSocketAddress$InetSocketAddressHolder-IA; -Ljava/net/InetSocketAddress$InetSocketAddressHolder; -Ljava/net/InetSocketAddress; -Ljava/net/InterfaceAddress; -Ljava/net/JarURLConnection; -Ljava/net/MalformedURLException; -Ljava/net/MulticastSocket; -Ljava/net/NetPermission; -Ljava/net/NetworkInterface$1checkedAddresses; -Ljava/net/NetworkInterface; -Ljava/net/NoRouteToHostException; -Ljava/net/Parts; -Ljava/net/PasswordAuthentication; -Ljava/net/PlainDatagramSocketImpl; -Ljava/net/PlainSocketImpl; -Ljava/net/PortUnreachableException; -Ljava/net/ProtocolException; -Ljava/net/ProtocolFamily; -Ljava/net/Proxy$Type; -Ljava/net/Proxy; -Ljava/net/ProxySelector; -Ljava/net/ResponseCache; -Ljava/net/ServerSocket$1; -Ljava/net/ServerSocket; -Ljava/net/Socket$1; -Ljava/net/Socket$2; -Ljava/net/Socket$3; -Ljava/net/Socket; -Ljava/net/SocketAddress; -Ljava/net/SocketException; -Ljava/net/SocketImpl; -Ljava/net/SocketImplFactory; -Ljava/net/SocketOption; -Ljava/net/SocketOptions; -Ljava/net/SocketPermission; -Ljava/net/SocketTimeoutException; -Ljava/net/SocksConsts; -Ljava/net/SocksSocketImpl; -Ljava/net/StandardProtocolFamily; -Ljava/net/StandardSocketOptions$StdSocketOption; -Ljava/net/StandardSocketOptions; -Ljava/net/URI$Parser; -Ljava/net/URI; -Ljava/net/URISyntaxException; -Ljava/net/URL; -Ljava/net/URLConnection; -Ljava/net/URLDecoder; -Ljava/net/URLEncoder; -Ljava/net/URLStreamHandler; -Ljava/net/URLStreamHandlerFactory; -Ljava/net/UnknownHostException; -Ljava/net/UnknownServiceException; -Ljava/nio/Bits; -Ljava/nio/Buffer; -Ljava/nio/BufferMismatch; -Ljava/nio/BufferOverflowException; -Ljava/nio/BufferUnderflowException; -Ljava/nio/ByteBuffer; -Ljava/nio/ByteBufferAsCharBuffer; -Ljava/nio/ByteBufferAsDoubleBuffer; -Ljava/nio/ByteBufferAsShortBuffer; -Ljava/nio/ByteOrder; -Ljava/nio/CharBuffer; -Ljava/nio/DirectByteBuffer$MemoryRef; -Ljava/nio/DoubleBuffer; -Ljava/nio/FloatBuffer; -Ljava/nio/HeapIntBuffer; -Ljava/nio/IntBuffer; -Ljava/nio/InvalidMarkException; -Ljava/nio/LongBuffer; -Ljava/nio/MappedByteBuffer; -Ljava/nio/NIOAccess; -Ljava/nio/NioUtils; -Ljava/nio/ReadOnlyBufferException; -Ljava/nio/ShortBuffer; -Ljava/nio/StringCharBuffer; -Ljava/nio/channels/AlreadyConnectedException; -Ljava/nio/channels/AsynchronousChannel; -Ljava/nio/channels/AsynchronousCloseException; -Ljava/nio/channels/AsynchronousFileChannel; -Ljava/nio/channels/ByteChannel; -Ljava/nio/channels/CancelledKeyException; -Ljava/nio/channels/Channel; -Ljava/nio/channels/Channels$1; -Ljava/nio/channels/Channels$WritableByteChannelImpl; -Ljava/nio/channels/Channels; -Ljava/nio/channels/ClosedByInterruptException; -Ljava/nio/channels/ClosedChannelException; -Ljava/nio/channels/ClosedSelectorException; -Ljava/nio/channels/ConnectionPendingException; -Ljava/nio/channels/DatagramChannel; -Ljava/nio/channels/FileChannel$MapMode; -Ljava/nio/channels/FileChannel; -Ljava/nio/channels/FileLock; -Ljava/nio/channels/FileLockInterruptionException; -Ljava/nio/channels/GatheringByteChannel; -Ljava/nio/channels/IllegalBlockingModeException; -Ljava/nio/channels/IllegalSelectorException; -Ljava/nio/channels/InterruptibleChannel; -Ljava/nio/channels/MulticastChannel; -Ljava/nio/channels/NetworkChannel; -Ljava/nio/channels/NoConnectionPendingException; -Ljava/nio/channels/NonReadableChannelException; -Ljava/nio/channels/NonWritableChannelException; -Ljava/nio/channels/OverlappingFileLockException; -Ljava/nio/channels/ReadableByteChannel; -Ljava/nio/channels/ScatteringByteChannel; -Ljava/nio/channels/SeekableByteChannel; -Ljava/nio/channels/SelectableChannel; -Ljava/nio/channels/SelectionKey; -Ljava/nio/channels/Selector; -Ljava/nio/channels/ServerSocketChannel; -Ljava/nio/channels/SocketChannel; -Ljava/nio/channels/UnresolvedAddressException; -Ljava/nio/channels/UnsupportedAddressTypeException; -Ljava/nio/channels/WritableByteChannel; -Ljava/nio/channels/spi/AbstractInterruptibleChannel$1; -Ljava/nio/channels/spi/AbstractInterruptibleChannel; -Ljava/nio/channels/spi/AbstractSelectableChannel; -Ljava/nio/channels/spi/AbstractSelectionKey; -Ljava/nio/channels/spi/AbstractSelector$1; -Ljava/nio/channels/spi/AbstractSelector; -Ljava/nio/channels/spi/AsynchronousChannelProvider; -Ljava/nio/channels/spi/SelectorProvider$1; -Ljava/nio/channels/spi/SelectorProvider; -Ljava/nio/charset/CharacterCodingException; -Ljava/nio/charset/Charset; -Ljava/nio/charset/CharsetDecoder; -Ljava/nio/charset/CharsetEncoder; -Ljava/nio/charset/CoderMalfunctionError; -Ljava/nio/charset/CoderResult$Cache; -Ljava/nio/charset/CoderResult; -Ljava/nio/charset/CodingErrorAction; -Ljava/nio/charset/IllegalCharsetNameException; -Ljava/nio/charset/StandardCharsets; -Ljava/nio/charset/UnsupportedCharsetException; -Ljava/nio/charset/spi/CharsetProvider; -Ljava/nio/file/AccessDeniedException; -Ljava/nio/file/AccessMode; -Ljava/nio/file/CopyMoveHelper; -Ljava/nio/file/CopyOption; -Ljava/nio/file/DirectoryIteratorException; -Ljava/nio/file/DirectoryStream$Filter; -Ljava/nio/file/DirectoryStream; -Ljava/nio/file/FileAlreadyExistsException; -Ljava/nio/file/FileSystem; -Ljava/nio/file/FileSystemException; -Ljava/nio/file/FileSystems$DefaultFileSystemHolder$1; -Ljava/nio/file/FileSystems$DefaultFileSystemHolder; -Ljava/nio/file/FileSystems; -Ljava/nio/file/FileVisitResult; -Ljava/nio/file/FileVisitor; -Ljava/nio/file/Files$AcceptAllFilter; -Ljava/nio/file/Files; -Ljava/nio/file/InvalidPathException; -Ljava/nio/file/LinkOption; -Ljava/nio/file/NoSuchFileException; -Ljava/nio/file/NotDirectoryException; -Ljava/nio/file/OpenOption; -Ljava/nio/file/Path; -Ljava/nio/file/Paths; -Ljava/nio/file/ProviderMismatchException; -Ljava/nio/file/SecureDirectoryStream; -Ljava/nio/file/SimpleFileVisitor; -Ljava/nio/file/StandardCopyOption; -Ljava/nio/file/StandardOpenOption; -Ljava/nio/file/Watchable; -Ljava/nio/file/attribute/AttributeView; -Ljava/nio/file/attribute/BasicFileAttributeView; -Ljava/nio/file/attribute/BasicFileAttributes; -Ljava/nio/file/attribute/FileAttribute; -Ljava/nio/file/attribute/FileAttributeView; -Ljava/nio/file/attribute/FileOwnerAttributeView; -Ljava/nio/file/attribute/FileTime; -Ljava/nio/file/attribute/PosixFileAttributeView; -Ljava/nio/file/attribute/PosixFileAttributes; -Ljava/nio/file/spi/FileSystemProvider; -Ljava/security/AccessControlContext; -Ljava/security/AccessControlException; -Ljava/security/AccessController; -Ljava/security/AlgorithmConstraints; -Ljava/security/AlgorithmParameters; -Ljava/security/AlgorithmParametersSpi; -Ljava/security/AllPermission; -Ljava/security/BasicPermission; -Ljava/security/CodeSigner; -Ljava/security/CodeSource; -Ljava/security/CryptoPrimitive; -Ljava/security/DigestException; -Ljava/security/DigestInputStream; -Ljava/security/GeneralSecurityException; -Ljava/security/Guard; -Ljava/security/InvalidAlgorithmParameterException; -Ljava/security/InvalidKeyException; -Ljava/security/InvalidParameterException; -Ljava/security/Key; -Ljava/security/KeyException; -Ljava/security/KeyFactory; -Ljava/security/KeyFactorySpi; -Ljava/security/KeyManagementException; -Ljava/security/KeyPair; -Ljava/security/KeyPairGenerator$Delegate; -Ljava/security/KeyPairGenerator; -Ljava/security/KeyPairGeneratorSpi; -Ljava/security/KeyStore$1; -Ljava/security/KeyStore$CallbackHandlerProtection; -Ljava/security/KeyStore$Entry; -Ljava/security/KeyStore$LoadStoreParameter; -Ljava/security/KeyStore$PasswordProtection; -Ljava/security/KeyStore$PrivateKeyEntry; -Ljava/security/KeyStore$ProtectionParameter; -Ljava/security/KeyStore$SecretKeyEntry; -Ljava/security/KeyStore$SimpleLoadStoreParameter; -Ljava/security/KeyStore$TrustedCertificateEntry; -Ljava/security/KeyStore; -Ljava/security/KeyStoreException; -Ljava/security/KeyStoreSpi; -Ljava/security/MessageDigest; -Ljava/security/MessageDigestSpi; -Ljava/security/NoSuchAlgorithmException; -Ljava/security/NoSuchProviderException; -Ljava/security/Permission; -Ljava/security/PermissionCollection; -Ljava/security/Permissions; -Ljava/security/Principal; -Ljava/security/PrivateKey; -Ljava/security/PrivilegedAction; -Ljava/security/PrivilegedActionException; -Ljava/security/PrivilegedExceptionAction; -Ljava/security/ProtectionDomain; -Ljava/security/Provider$EngineDescription; -Ljava/security/Provider$Service-IA; -Ljava/security/Provider$Service; -Ljava/security/Provider$ServiceKey-IA; -Ljava/security/Provider$ServiceKey; -Ljava/security/Provider$UString; -Ljava/security/Provider; -Ljava/security/ProviderException; -Ljava/security/PublicKey; -Ljava/security/SecureRandom; -Ljava/security/SecureRandomParameters; -Ljava/security/SecureRandomSpi; -Ljava/security/Security$1; -Ljava/security/Security; -Ljava/security/SecurityPermission; -Ljava/security/Signature$CipherAdapter; -Ljava/security/Signature$Delegate; -Ljava/security/Signature; -Ljava/security/SignatureException; -Ljava/security/SignatureSpi; -Ljava/security/Timestamp; -Ljava/security/UnrecoverableEntryException; -Ljava/security/UnrecoverableKeyException; -Ljava/security/cert/CRL; -Ljava/security/cert/CRLException; -Ljava/security/cert/CRLReason; -Ljava/security/cert/CertPath; -Ljava/security/cert/CertPathBuilderException; -Ljava/security/cert/CertPathChecker; -Ljava/security/cert/CertPathHelperImpl; -Ljava/security/cert/CertPathParameters; -Ljava/security/cert/CertPathValidator; -Ljava/security/cert/CertPathValidatorException$BasicReason; -Ljava/security/cert/CertPathValidatorException$Reason; -Ljava/security/cert/CertPathValidatorException; -Ljava/security/cert/CertPathValidatorResult; -Ljava/security/cert/CertPathValidatorSpi; -Ljava/security/cert/CertSelector; -Ljava/security/cert/CertStore; -Ljava/security/cert/CertStoreException; -Ljava/security/cert/CertStoreParameters; -Ljava/security/cert/CertStoreSpi; -Ljava/security/cert/Certificate; -Ljava/security/cert/CertificateEncodingException; -Ljava/security/cert/CertificateException; -Ljava/security/cert/CertificateExpiredException; -Ljava/security/cert/CertificateFactory; -Ljava/security/cert/CertificateFactorySpi; -Ljava/security/cert/CertificateNotYetValidException; -Ljava/security/cert/CertificateParsingException; -Ljava/security/cert/CertificateRevokedException; -Ljava/security/cert/CollectionCertStoreParameters; -Ljava/security/cert/Extension; -Ljava/security/cert/PKIXCertPathChecker; -Ljava/security/cert/PKIXCertPathValidatorResult; -Ljava/security/cert/PKIXParameters; -Ljava/security/cert/PKIXReason; -Ljava/security/cert/PKIXRevocationChecker$Option; -Ljava/security/cert/PKIXRevocationChecker; -Ljava/security/cert/PolicyNode; -Ljava/security/cert/PolicyQualifierInfo; -Ljava/security/cert/TrustAnchor; -Ljava/security/cert/X509CRL; -Ljava/security/cert/X509CRLEntry; -Ljava/security/cert/X509CertSelector; -Ljava/security/cert/X509Certificate; -Ljava/security/cert/X509Extension; -Ljava/security/interfaces/DSAKey; -Ljava/security/interfaces/DSAParams; -Ljava/security/interfaces/DSAPublicKey; -Ljava/security/interfaces/ECKey; -Ljava/security/interfaces/ECPrivateKey; -Ljava/security/interfaces/ECPublicKey; -Ljava/security/interfaces/RSAKey; -Ljava/security/interfaces/RSAPrivateCrtKey; -Ljava/security/interfaces/RSAPrivateKey; -Ljava/security/interfaces/RSAPublicKey; -Ljava/security/spec/AlgorithmParameterSpec; -Ljava/security/spec/DSAParameterSpec; -Ljava/security/spec/DSAPublicKeySpec; -Ljava/security/spec/ECField; -Ljava/security/spec/ECFieldF2m; -Ljava/security/spec/ECFieldFp; -Ljava/security/spec/ECGenParameterSpec; -Ljava/security/spec/ECParameterSpec; -Ljava/security/spec/ECPoint; -Ljava/security/spec/ECPrivateKeySpec; -Ljava/security/spec/ECPublicKeySpec; -Ljava/security/spec/EllipticCurve; -Ljava/security/spec/EncodedKeySpec; -Ljava/security/spec/InvalidKeySpecException; -Ljava/security/spec/InvalidParameterSpecException; -Ljava/security/spec/KeySpec; -Ljava/security/spec/MGF1ParameterSpec; -Ljava/security/spec/NamedParameterSpec; -Ljava/security/spec/PKCS8EncodedKeySpec; -Ljava/security/spec/PSSParameterSpec; -Ljava/security/spec/RSAKeyGenParameterSpec; -Ljava/security/spec/RSAPrivateCrtKeySpec; -Ljava/security/spec/RSAPrivateKeySpec; -Ljava/security/spec/RSAPublicKeySpec; -Ljava/security/spec/X509EncodedKeySpec; -Ljava/sql/Date; -Ljava/sql/SQLException; -Ljava/sql/Time; -Ljava/sql/Timestamp; -Ljava/text/AttributedCharacterIterator$Attribute; -Ljava/text/AttributedCharacterIterator; -Ljava/text/AttributedString; -Ljava/text/Bidi; -Ljava/text/BreakIterator; -Ljava/text/CalendarBuilder; -Ljava/text/CharacterIterator; -Ljava/text/CharacterIteratorFieldDelegate; -Ljava/text/ChoiceFormat; -Ljava/text/CollationElementIterator; -Ljava/text/CollationKey; -Ljava/text/Collator; -Ljava/text/DateFormat$Field; -Ljava/text/DateFormat; -Ljava/text/DateFormatSymbols; -Ljava/text/DecimalFormat$1; -Ljava/text/DecimalFormat; -Ljava/text/DecimalFormatSymbols; -Ljava/text/DontCareFieldPosition$1; -Ljava/text/DontCareFieldPosition; -Ljava/text/FieldPosition$Delegate-IA; -Ljava/text/FieldPosition$Delegate; -Ljava/text/FieldPosition; -Ljava/text/Format$Field; -Ljava/text/Format$FieldDelegate; -Ljava/text/Format; -Ljava/text/IcuIteratorWrapper; -Ljava/text/MessageFormat$Field; -Ljava/text/MessageFormat; -Ljava/text/Normalizer$Form$$ExternalSyntheticLambda0; -Ljava/text/Normalizer$Form$$ExternalSyntheticLambda1; -Ljava/text/Normalizer$Form$$ExternalSyntheticLambda2; -Ljava/text/Normalizer$Form$$ExternalSyntheticLambda3; -Ljava/text/Normalizer$Form; -Ljava/text/Normalizer; -Ljava/text/NumberFormat$Field; -Ljava/text/NumberFormat$Style; -Ljava/text/NumberFormat; -Ljava/text/ParseException; -Ljava/text/ParsePosition; -Ljava/text/RuleBasedCollator; -Ljava/text/SimpleDateFormat; -Ljava/text/StringCharacterIterator; -Ljava/time/Clock; -Ljava/time/DateTimeException; -Ljava/time/DayOfWeek; -Ljava/time/Duration; -Ljava/time/Instant$1; -Ljava/time/Instant; -Ljava/time/InstantSource; -Ljava/time/LocalDate$1; -Ljava/time/LocalDate; -Ljava/time/LocalDateTime; -Ljava/time/LocalTime$1; -Ljava/time/LocalTime; -Ljava/time/Month; -Ljava/time/OffsetDateTime; -Ljava/time/Period; -Ljava/time/Year; -Ljava/time/ZoneId; -Ljava/time/ZoneOffset; -Ljava/time/ZonedDateTime$$ExternalSyntheticLambda0; -Ljava/time/ZonedDateTime$1; -Ljava/time/ZonedDateTime; -Ljava/time/chrono/AbstractChronology; -Ljava/time/chrono/ChronoLocalDate; -Ljava/time/chrono/ChronoLocalDateTime; -Ljava/time/chrono/ChronoPeriod; -Ljava/time/chrono/ChronoZonedDateTime; -Ljava/time/chrono/Chronology; -Ljava/time/chrono/IsoChronology; -Ljava/time/format/DateTimeFormatter$$ExternalSyntheticLambda0; -Ljava/time/format/DateTimeFormatter$$ExternalSyntheticLambda1; -Ljava/time/format/DateTimeFormatter; -Ljava/time/format/DateTimeFormatterBuilder$$ExternalSyntheticLambda0; -Ljava/time/format/DateTimeFormatterBuilder$1; -Ljava/time/format/DateTimeFormatterBuilder$2; -Ljava/time/format/DateTimeFormatterBuilder$CharLiteralPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$CompositePrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$DateTimePrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$DayPeriod$$ExternalSyntheticLambda0; -Ljava/time/format/DateTimeFormatterBuilder$DayPeriod; -Ljava/time/format/DateTimeFormatterBuilder$FractionPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$InstantPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$OffsetIdPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$PadPrinterParserDecorator; -Ljava/time/format/DateTimeFormatterBuilder$PrefixTree$CI-IA; -Ljava/time/format/DateTimeFormatterBuilder$PrefixTree$CI; -Ljava/time/format/DateTimeFormatterBuilder$PrefixTree-IA; -Ljava/time/format/DateTimeFormatterBuilder$PrefixTree; -Ljava/time/format/DateTimeFormatterBuilder$SettingsParser; -Ljava/time/format/DateTimeFormatterBuilder$StringLiteralPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$TextPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$ZoneIdPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder$ZoneTextPrinterParser; -Ljava/time/format/DateTimeFormatterBuilder; -Ljava/time/format/DateTimeParseContext; -Ljava/time/format/DateTimeParseException; -Ljava/time/format/DateTimePrintContext$1; -Ljava/time/format/DateTimePrintContext; -Ljava/time/format/DateTimeTextProvider$1; -Ljava/time/format/DateTimeTextProvider$LocaleStore; -Ljava/time/format/DateTimeTextProvider; -Ljava/time/format/DecimalStyle; -Ljava/time/format/Parsed; -Ljava/time/format/ResolverStyle; -Ljava/time/format/SignStyle; -Ljava/time/format/TextStyle; -Ljava/time/temporal/ChronoField; -Ljava/time/temporal/ChronoUnit; -Ljava/time/temporal/IsoFields$Field$1; -Ljava/time/temporal/IsoFields$Field$2; -Ljava/time/temporal/IsoFields$Field$3; -Ljava/time/temporal/IsoFields$Field$4; -Ljava/time/temporal/IsoFields$Field; -Ljava/time/temporal/IsoFields$Unit; -Ljava/time/temporal/IsoFields; -Ljava/time/temporal/JulianFields$Field; -Ljava/time/temporal/JulianFields; -Ljava/time/temporal/Temporal; -Ljava/time/temporal/TemporalAccessor; -Ljava/time/temporal/TemporalAdjuster; -Ljava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda11; -Ljava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda1; -Ljava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda3; -Ljava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda6; -Ljava/time/temporal/TemporalAdjusters$$ExternalSyntheticLambda8; -Ljava/time/temporal/TemporalAdjusters; -Ljava/time/temporal/TemporalAmount; -Ljava/time/temporal/TemporalField; -Ljava/time/temporal/TemporalQueries$1; -Ljava/time/temporal/TemporalQueries$2; -Ljava/time/temporal/TemporalQueries$3; -Ljava/time/temporal/TemporalQueries$4; -Ljava/time/temporal/TemporalQueries$5; -Ljava/time/temporal/TemporalQueries$6; -Ljava/time/temporal/TemporalQueries$7; -Ljava/time/temporal/TemporalQueries; -Ljava/time/temporal/TemporalQuery; -Ljava/time/temporal/TemporalUnit; -Ljava/time/temporal/UnsupportedTemporalTypeException; -Ljava/time/temporal/ValueRange; -Ljava/time/zone/IcuZoneRulesProvider$ZoneRulesCache; -Ljava/time/zone/IcuZoneRulesProvider; -Ljava/time/zone/ZoneOffsetTransition; -Ljava/time/zone/ZoneOffsetTransitionRule$TimeDefinition; -Ljava/time/zone/ZoneOffsetTransitionRule; -Ljava/time/zone/ZoneRules; -Ljava/time/zone/ZoneRulesException; -Ljava/time/zone/ZoneRulesProvider; -Ljava/util/AbstractCollection; -Ljava/util/AbstractList$Itr-IA; -Ljava/util/AbstractList$ListItr; -Ljava/util/AbstractList$RandomAccessSpliterator; -Ljava/util/AbstractList$RandomAccessSubList; -Ljava/util/AbstractList$SubList$1; -Ljava/util/AbstractList$SubList; -Ljava/util/AbstractList; -Ljava/util/AbstractMap$1; -Ljava/util/AbstractMap$2$1; -Ljava/util/AbstractMap$SimpleEntry; -Ljava/util/AbstractMap$SimpleImmutableEntry; -Ljava/util/AbstractMap$ViewCollection; -Ljava/util/AbstractMap; -Ljava/util/AbstractQueue; -Ljava/util/AbstractSequentialList; -Ljava/util/AbstractSet; -Ljava/util/ArrayDeque$$ExternalSyntheticLambda1; -Ljava/util/ArrayDeque; -Ljava/util/ArrayList$ArrayListSpliterator; -Ljava/util/ArrayList$ListItr; -Ljava/util/ArrayList$SubList$2; -Ljava/util/ArrayList; -Ljava/util/ArrayPrefixHelpers$CumulateTask; -Ljava/util/ArrayPrefixHelpers$DoubleCumulateTask; -Ljava/util/ArrayPrefixHelpers$IntCumulateTask; -Ljava/util/ArrayPrefixHelpers$LongCumulateTask; -Ljava/util/Arrays$$ExternalSyntheticLambda0; -Ljava/util/Arrays$$ExternalSyntheticLambda1; -Ljava/util/Arrays$$ExternalSyntheticLambda2; -Ljava/util/Arrays$$ExternalSyntheticLambda3; -Ljava/util/Arrays$NaturalOrder; -Ljava/util/Arrays; -Ljava/util/ArraysParallelSortHelpers$FJObject$Sorter; -Ljava/util/Base64$Decoder; -Ljava/util/Base64$Encoder; -Ljava/util/Base64; -Ljava/util/BitSet; -Ljava/util/Calendar$$ExternalSyntheticLambda0; -Ljava/util/Calendar$Builder; -Ljava/util/Calendar; -Ljava/util/Collection; -Ljava/util/Collections$2; -Ljava/util/Collections$3; -Ljava/util/Collections$AsLIFOQueue; -Ljava/util/Collections$CheckedCollection; -Ljava/util/Collections$CheckedList; -Ljava/util/Collections$CheckedMap; -Ljava/util/Collections$CheckedNavigableMap; -Ljava/util/Collections$CheckedNavigableSet; -Ljava/util/Collections$CheckedQueue; -Ljava/util/Collections$CheckedRandomAccessList; -Ljava/util/Collections$CheckedSet; -Ljava/util/Collections$CheckedSortedMap; -Ljava/util/Collections$CheckedSortedSet; -Ljava/util/Collections$CopiesList; -Ljava/util/Collections$EmptyEnumeration; -Ljava/util/Collections$EmptyList-IA; -Ljava/util/Collections$EmptyListIterator; -Ljava/util/Collections$EmptyMap-IA; -Ljava/util/Collections$EmptySet-IA; -Ljava/util/Collections$ReverseComparator2; -Ljava/util/Collections$ReverseComparator; -Ljava/util/Collections$SequencedSetFromMap; -Ljava/util/Collections$SetFromMap; -Ljava/util/Collections$SynchronizedList; -Ljava/util/Collections$SynchronizedNavigableMap; -Ljava/util/Collections$SynchronizedNavigableSet; -Ljava/util/Collections$SynchronizedRandomAccessList; -Ljava/util/Collections$SynchronizedSet; -Ljava/util/Collections$SynchronizedSortedMap; -Ljava/util/Collections$SynchronizedSortedSet; -Ljava/util/Collections$UnmodifiableList$1; -Ljava/util/Collections$UnmodifiableList; -Ljava/util/Collections$UnmodifiableNavigableMap$EmptyNavigableMap; -Ljava/util/Collections$UnmodifiableNavigableMap; -Ljava/util/Collections$UnmodifiableNavigableSet$EmptyNavigableSet; -Ljava/util/Collections$UnmodifiableNavigableSet; -Ljava/util/Collections$UnmodifiableSequencedCollection; -Ljava/util/Collections$UnmodifiableSequencedMap; -Ljava/util/Collections$UnmodifiableSequencedSet; -Ljava/util/Collections$UnmodifiableSortedMap; -Ljava/util/Collections; -Ljava/util/ComparableTimSort; -Ljava/util/Comparator$$ExternalSyntheticLambda0; -Ljava/util/Comparator$$ExternalSyntheticLambda1; -Ljava/util/Comparator$$ExternalSyntheticLambda2; -Ljava/util/Comparator$$ExternalSyntheticLambda3; -Ljava/util/Comparator$$ExternalSyntheticLambda4; -Ljava/util/Comparator$$ExternalSyntheticLambda5; -Ljava/util/Comparator; -Ljava/util/Comparators$NaturalOrderComparator; -Ljava/util/Comparators$NullComparator; -Ljava/util/ConcurrentModificationException; -Ljava/util/Currency; -Ljava/util/Date; -Ljava/util/Deque; -Ljava/util/Dictionary; -Ljava/util/DoubleSummaryStatistics; -Ljava/util/DualPivotQuicksort$Sorter-IA; -Ljava/util/DualPivotQuicksort$Sorter; -Ljava/util/DualPivotQuicksort; -Ljava/util/DuplicateFormatFlagsException; -Ljava/util/EmptyStackException; -Ljava/util/EnumMap$1; -Ljava/util/EnumMap$EntryIterator$Entry-IA; -Ljava/util/EnumMap$EntryIterator$Entry; -Ljava/util/EnumMap$EntryIterator-IA; -Ljava/util/EnumMap$EntryIterator; -Ljava/util/EnumMap$EntrySet-IA; -Ljava/util/EnumMap$EntrySet; -Ljava/util/EnumMap$EnumMapIterator-IA; -Ljava/util/EnumMap$EnumMapIterator; -Ljava/util/EnumMap$KeyIterator-IA; -Ljava/util/EnumMap$KeyIterator; -Ljava/util/EnumMap$KeySet-IA; -Ljava/util/EnumMap$KeySet; -Ljava/util/EnumMap$ValueIterator-IA; -Ljava/util/EnumMap$ValueIterator; -Ljava/util/EnumMap$Values-IA; -Ljava/util/EnumMap$Values; -Ljava/util/EnumMap; -Ljava/util/EnumSet$SerializationProxy; -Ljava/util/EnumSet; -Ljava/util/Enumeration; -Ljava/util/EventListener; -Ljava/util/EventObject; -Ljava/util/FormatFlagsConversionMismatchException; -Ljava/util/Formattable; -Ljava/util/Formatter$Conversion; -Ljava/util/Formatter$DateTime; -Ljava/util/Formatter$FixedString; -Ljava/util/Formatter$Flags; -Ljava/util/Formatter$FormatSpecifier; -Ljava/util/Formatter$FormatSpecifierParser; -Ljava/util/Formatter$FormatString; -Ljava/util/Formatter; -Ljava/util/FormatterClosedException; -Ljava/util/HashMap$EntrySpliterator; -Ljava/util/HashMap$HashIterator; -Ljava/util/HashMap$HashMapSpliterator; -Ljava/util/HashMap$KeySpliterator; -Ljava/util/HashMap$UnsafeHolder; -Ljava/util/HashMap$ValueSpliterator; -Ljava/util/HashMap; -Ljava/util/HashSet; -Ljava/util/Hashtable$EntrySet-IA; -Ljava/util/Hashtable$EntrySet; -Ljava/util/Hashtable$HashtableEntry; -Ljava/util/Hashtable$KeySet-IA; -Ljava/util/Hashtable$KeySet; -Ljava/util/Hashtable$ValueCollection-IA; -Ljava/util/Hashtable$ValueCollection; -Ljava/util/Hashtable; -Ljava/util/HexFormat; -Ljava/util/IdentityHashMap$EntryIterator$Entry-IA; -Ljava/util/IdentityHashMap$EntryIterator$Entry; -Ljava/util/IdentityHashMap$EntryIterator-IA; -Ljava/util/IdentityHashMap$EntryIterator; -Ljava/util/IdentityHashMap$EntrySet-IA; -Ljava/util/IdentityHashMap$EntrySet; -Ljava/util/IdentityHashMap$IdentityHashMapIterator-IA; -Ljava/util/IdentityHashMap$IdentityHashMapIterator; -Ljava/util/IdentityHashMap$KeyIterator-IA; -Ljava/util/IdentityHashMap$KeyIterator; -Ljava/util/IdentityHashMap$KeySet-IA; -Ljava/util/IdentityHashMap$KeySet; -Ljava/util/IdentityHashMap$ValueIterator-IA; -Ljava/util/IdentityHashMap$ValueIterator; -Ljava/util/IdentityHashMap$Values-IA; -Ljava/util/IdentityHashMap$Values; -Ljava/util/IdentityHashMap; -Ljava/util/IllegalFormatArgumentIndexException; -Ljava/util/IllegalFormatCodePointException; -Ljava/util/IllegalFormatConversionException; -Ljava/util/IllegalFormatException; -Ljava/util/IllegalFormatFlagsException; -Ljava/util/IllegalFormatPrecisionException; -Ljava/util/IllegalFormatWidthException; -Ljava/util/IllformedLocaleException; -Ljava/util/ImmutableCollections$AbstractImmutableCollection; -Ljava/util/ImmutableCollections$AbstractImmutableList; -Ljava/util/ImmutableCollections$AbstractImmutableMap; -Ljava/util/ImmutableCollections$AbstractImmutableSet; -Ljava/util/ImmutableCollections$Access$1; -Ljava/util/ImmutableCollections$Access; -Ljava/util/ImmutableCollections$ListN-IA; -Ljava/util/ImmutableCollections$MapN$1; -Ljava/util/ImmutableCollections$MapN$MapNIterator; -Ljava/util/ImmutableCollections$SubList; -Ljava/util/ImmutableCollections; -Ljava/util/InputMismatchException; -Ljava/util/Iterator; -Ljava/util/JumboEnumSet$EnumSetIterator; -Ljava/util/JumboEnumSet; -Ljava/util/KeyValueHolder; -Ljava/util/LinkedHashMap$Entry; -Ljava/util/LinkedHashMap$LinkedEntryIterator; -Ljava/util/LinkedHashMap$LinkedEntrySet; -Ljava/util/LinkedHashMap$LinkedHashIterator; -Ljava/util/LinkedHashMap$ReversedLinkedHashMapView; -Ljava/util/LinkedHashMap; -Ljava/util/LinkedHashSet; -Ljava/util/LinkedList$DescendingIterator-IA; -Ljava/util/LinkedList$Node; -Ljava/util/LinkedList; -Ljava/util/List; -Ljava/util/ListIterator; -Ljava/util/ListResourceBundle; -Ljava/util/Locale$Builder; -Ljava/util/Locale$Cache; -Ljava/util/Locale$Category; -Ljava/util/Locale$FilteringMode; -Ljava/util/Locale$IsoCountryCode$1; -Ljava/util/Locale$IsoCountryCode$2; -Ljava/util/Locale$IsoCountryCode$3; -Ljava/util/Locale$IsoCountryCode; -Ljava/util/Locale$LanguageRange; -Ljava/util/Locale$LocaleKey-IA; -Ljava/util/Locale$LocaleKey; -Ljava/util/Locale$NoImagePreloadHolder; -Ljava/util/Locale-IA; -Ljava/util/Locale; -Ljava/util/LongSummaryStatistics; -Ljava/util/Map$Entry; -Ljava/util/Map; -Ljava/util/MissingFormatArgumentException; -Ljava/util/MissingFormatWidthException; -Ljava/util/MissingResourceException; -Ljava/util/NavigableMap; -Ljava/util/NavigableSet; -Ljava/util/NoSuchElementException; -Ljava/util/Objects; -Ljava/util/Observable; -Ljava/util/Observer; -Ljava/util/Optional; -Ljava/util/OptionalDouble; -Ljava/util/OptionalInt; -Ljava/util/PrimitiveIterator$OfInt$$ExternalSyntheticLambda0; -Ljava/util/PrimitiveIterator$OfInt; -Ljava/util/PrimitiveIterator; -Ljava/util/PriorityQueue; -Ljava/util/Properties$EntrySet; -Ljava/util/Properties$LineReader; -Ljava/util/Properties; -Ljava/util/PropertyPermission; -Ljava/util/PropertyResourceBundle; -Ljava/util/Queue; -Ljava/util/Random; -Ljava/util/RandomAccess; -Ljava/util/RegularEnumSet$EnumSetIterator; -Ljava/util/RegularEnumSet; -Ljava/util/ResourceBundle$1; -Ljava/util/ResourceBundle$BundleReference; -Ljava/util/ResourceBundle$CacheKey; -Ljava/util/ResourceBundle$CacheKeyReference; -Ljava/util/ResourceBundle$Control$$ExternalSyntheticLambda0; -Ljava/util/ResourceBundle$Control$1; -Ljava/util/ResourceBundle$Control$CandidateListCache; -Ljava/util/ResourceBundle$Control; -Ljava/util/ResourceBundle$KeyElementReference; -Ljava/util/ResourceBundle$RBClassLoader$1; -Ljava/util/ResourceBundle$RBClassLoader; -Ljava/util/ResourceBundle$SingleFormatControl; -Ljava/util/ResourceBundle; -Ljava/util/ReverseOrderListView; -Ljava/util/Scanner$PatternLRUCache; -Ljava/util/Scanner; -Ljava/util/SequencedCollection; -Ljava/util/SequencedMap$1SeqEntrySet; -Ljava/util/SequencedMap$1SeqKeySet; -Ljava/util/SequencedMap$1SeqValues; -Ljava/util/SequencedMap; -Ljava/util/SequencedSet; -Ljava/util/ServiceConfigurationError; -Ljava/util/ServiceLoader$1; -Ljava/util/ServiceLoader$2; -Ljava/util/ServiceLoader$LazyClassPathLookupIterator; -Ljava/util/ServiceLoader; -Ljava/util/Set; -Ljava/util/SimpleTimeZone$Cache; -Ljava/util/SimpleTimeZone; -Ljava/util/SortedMap; -Ljava/util/SortedSet; -Ljava/util/Spliterator$OfDouble; -Ljava/util/Spliterator$OfInt; -Ljava/util/Spliterator$OfLong; -Ljava/util/Spliterator$OfPrimitive; -Ljava/util/Spliterator; -Ljava/util/Spliterators$ArraySpliterator; -Ljava/util/Spliterators$EmptySpliterator$OfDouble; -Ljava/util/Spliterators$EmptySpliterator$OfInt; -Ljava/util/Spliterators$EmptySpliterator$OfLong; -Ljava/util/Spliterators$EmptySpliterator$OfRef; -Ljava/util/Spliterators$EmptySpliterator; -Ljava/util/Spliterators$IntArraySpliterator; -Ljava/util/Spliterators$IteratorSpliterator; -Ljava/util/Spliterators; -Ljava/util/Stack; -Ljava/util/StringJoiner; -Ljava/util/StringTokenizer; -Ljava/util/TaskQueue; -Ljava/util/TimSort; -Ljava/util/TimeZone; -Ljava/util/Timer$ThreadReaper; -Ljava/util/Timer; -Ljava/util/TimerTask; -Ljava/util/TimerThread; -Ljava/util/TooManyListenersException; -Ljava/util/TreeMap$AscendingSubMap$AscendingEntrySetView; -Ljava/util/TreeMap$AscendingSubMap; -Ljava/util/TreeMap$DescendingSubMap; -Ljava/util/TreeMap$KeySet; -Ljava/util/TreeMap$NavigableSubMap$DescendingSubMapKeyIterator; -Ljava/util/TreeMap$NavigableSubMap$EntrySetView; -Ljava/util/TreeMap$NavigableSubMap$SubMapEntryIterator; -Ljava/util/TreeMap$NavigableSubMap$SubMapIterator; -Ljava/util/TreeMap$NavigableSubMap; -Ljava/util/TreeMap$PrivateEntryIterator; -Ljava/util/TreeMap$ValueIterator; -Ljava/util/TreeMap$Values; -Ljava/util/TreeMap; -Ljava/util/TreeSet; -Ljava/util/Tripwire$$ExternalSyntheticLambda0; -Ljava/util/Tripwire; -Ljava/util/UUID$Holder; -Ljava/util/UUID; -Ljava/util/UnknownFormatConversionException; -Ljava/util/UnknownFormatFlagsException; -Ljava/util/Vector$1; -Ljava/util/Vector$Itr-IA; -Ljava/util/Vector$Itr; -Ljava/util/Vector; -Ljava/util/WeakHashMap$Entry; -Ljava/util/WeakHashMap$EntryIterator-IA; -Ljava/util/WeakHashMap$EntryIterator; -Ljava/util/WeakHashMap$EntrySet-IA; -Ljava/util/WeakHashMap$EntrySet; -Ljava/util/WeakHashMap$HashIterator; -Ljava/util/WeakHashMap$KeyIterator-IA; -Ljava/util/WeakHashMap$KeySet-IA; -Ljava/util/WeakHashMap$ValueIterator-IA; -Ljava/util/WeakHashMap$ValueIterator; -Ljava/util/WeakHashMap$Values-IA; -Ljava/util/WeakHashMap$Values; -Ljava/util/WeakHashMap; -Ljava/util/concurrent/AbstractExecutorService; -Ljava/util/concurrent/ArrayBlockingQueue$Itrs; -Ljava/util/concurrent/ArrayBlockingQueue; -Ljava/util/concurrent/BlockingDeque; -Ljava/util/concurrent/BlockingQueue; -Ljava/util/concurrent/Callable; -Ljava/util/concurrent/CancellationException; -Ljava/util/concurrent/CompletableFuture$AltResult; -Ljava/util/concurrent/CompletableFuture$AsyncRun; -Ljava/util/concurrent/CompletableFuture$AsyncSupply; -Ljava/util/concurrent/CompletableFuture$AsynchronousCompletionTask; -Ljava/util/concurrent/CompletableFuture$Completion; -Ljava/util/concurrent/CompletableFuture$Signaller; -Ljava/util/concurrent/CompletableFuture$UniCompletion; -Ljava/util/concurrent/CompletableFuture$UniWhenComplete; -Ljava/util/concurrent/CompletableFuture; -Ljava/util/concurrent/CompletionException; -Ljava/util/concurrent/CompletionStage; -Ljava/util/concurrent/ConcurrentHashMap$BaseIterator; -Ljava/util/concurrent/ConcurrentHashMap$BulkTask; -Ljava/util/concurrent/ConcurrentHashMap$CollectionView; -Ljava/util/concurrent/ConcurrentHashMap$CounterCell; -Ljava/util/concurrent/ConcurrentHashMap$ForEachEntryTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachKeyTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachMappingTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachTransformedEntryTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachTransformedKeyTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachTransformedMappingTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachTransformedValueTask; -Ljava/util/concurrent/ConcurrentHashMap$ForEachValueTask; -Ljava/util/concurrent/ConcurrentHashMap$ForwardingNode; -Ljava/util/concurrent/ConcurrentHashMap$KeyIterator; -Ljava/util/concurrent/ConcurrentHashMap$KeySetView; -Ljava/util/concurrent/ConcurrentHashMap$KeySpliterator; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceEntriesTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceEntriesToDoubleTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceEntriesToIntTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceEntriesToLongTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysToDoubleTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysToIntTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysToLongTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceMappingsTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceMappingsToDoubleTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceMappingsToIntTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceMappingsToLongTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceValuesTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceValuesToDoubleTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceValuesToIntTask; -Ljava/util/concurrent/ConcurrentHashMap$MapReduceValuesToLongTask; -Ljava/util/concurrent/ConcurrentHashMap$Node; -Ljava/util/concurrent/ConcurrentHashMap$ReduceEntriesTask; -Ljava/util/concurrent/ConcurrentHashMap$ReduceKeysTask; -Ljava/util/concurrent/ConcurrentHashMap$ReduceValuesTask; -Ljava/util/concurrent/ConcurrentHashMap$ReservationNode; -Ljava/util/concurrent/ConcurrentHashMap$SearchEntriesTask; -Ljava/util/concurrent/ConcurrentHashMap$SearchKeysTask; -Ljava/util/concurrent/ConcurrentHashMap$SearchMappingsTask; -Ljava/util/concurrent/ConcurrentHashMap$SearchValuesTask; -Ljava/util/concurrent/ConcurrentHashMap$Segment; -Ljava/util/concurrent/ConcurrentHashMap$TableStack; -Ljava/util/concurrent/ConcurrentHashMap$Traverser; -Ljava/util/concurrent/ConcurrentHashMap$TreeBin; -Ljava/util/concurrent/ConcurrentHashMap$TreeNode; -Ljava/util/concurrent/ConcurrentHashMap; -Ljava/util/concurrent/ConcurrentLinkedDeque$Node; -Ljava/util/concurrent/ConcurrentLinkedDeque; -Ljava/util/concurrent/ConcurrentLinkedQueue$$ExternalSyntheticLambda0; -Ljava/util/concurrent/ConcurrentLinkedQueue$$ExternalSyntheticLambda2; -Ljava/util/concurrent/ConcurrentLinkedQueue$Node; -Ljava/util/concurrent/ConcurrentLinkedQueue; -Ljava/util/concurrent/ConcurrentMap$$ExternalSyntheticLambda0; -Ljava/util/concurrent/ConcurrentMap; -Ljava/util/concurrent/ConcurrentNavigableMap; -Ljava/util/concurrent/ConcurrentSkipListMap$Index; -Ljava/util/concurrent/ConcurrentSkipListMap$Iter; -Ljava/util/concurrent/ConcurrentSkipListMap$KeySet; -Ljava/util/concurrent/ConcurrentSkipListMap$Node; -Ljava/util/concurrent/ConcurrentSkipListMap$ValueIterator; -Ljava/util/concurrent/ConcurrentSkipListMap$Values; -Ljava/util/concurrent/ConcurrentSkipListMap; -Ljava/util/concurrent/ConcurrentSkipListSet; -Ljava/util/concurrent/CopyOnWriteArrayList$$ExternalSyntheticLambda2; -Ljava/util/concurrent/CopyOnWriteArraySet; -Ljava/util/concurrent/CountDownLatch$Sync; -Ljava/util/concurrent/CountDownLatch; -Ljava/util/concurrent/CountedCompleter; -Ljava/util/concurrent/DelayQueue; -Ljava/util/concurrent/Delayed; -Ljava/util/concurrent/ExecutionException; -Ljava/util/concurrent/Executor; -Ljava/util/concurrent/ExecutorService; -Ljava/util/concurrent/Executors$DefaultThreadFactory; -Ljava/util/concurrent/Executors$DelegatedExecutorService; -Ljava/util/concurrent/Executors$RunnableAdapter; -Ljava/util/concurrent/Executors; -Ljava/util/concurrent/ForkJoinPool$1; -Ljava/util/concurrent/ForkJoinPool$DefaultCommonPoolForkJoinWorkerThreadFactory; -Ljava/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory; -Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory; -Ljava/util/concurrent/ForkJoinPool$ManagedBlocker; -Ljava/util/concurrent/ForkJoinPool$WorkQueue; -Ljava/util/concurrent/ForkJoinPool; -Ljava/util/concurrent/ForkJoinTask$Aux; -Ljava/util/concurrent/ForkJoinTask; -Ljava/util/concurrent/ForkJoinWorkerThread; -Ljava/util/concurrent/Future; -Ljava/util/concurrent/FutureTask$WaitNode; -Ljava/util/concurrent/FutureTask; -Ljava/util/concurrent/LinkedBlockingDeque$AbstractItr; -Ljava/util/concurrent/LinkedBlockingDeque$Itr; -Ljava/util/concurrent/LinkedBlockingDeque$Node; -Ljava/util/concurrent/LinkedBlockingDeque; -Ljava/util/concurrent/LinkedBlockingQueue$Itr; -Ljava/util/concurrent/LinkedBlockingQueue$Node; -Ljava/util/concurrent/LinkedBlockingQueue; -Ljava/util/concurrent/Phaser; -Ljava/util/concurrent/PriorityBlockingQueue; -Ljava/util/concurrent/RejectedExecutionException; -Ljava/util/concurrent/RejectedExecutionHandler; -Ljava/util/concurrent/RunnableFuture; -Ljava/util/concurrent/RunnableScheduledFuture; -Ljava/util/concurrent/ScheduledExecutorService; -Ljava/util/concurrent/ScheduledFuture; -Ljava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr; -Ljava/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue; -Ljava/util/concurrent/Semaphore$FairSync; -Ljava/util/concurrent/Semaphore$NonfairSync; -Ljava/util/concurrent/Semaphore$Sync; -Ljava/util/concurrent/Semaphore; -Ljava/util/concurrent/SynchronousQueue$TransferQueue$QNode; -Ljava/util/concurrent/SynchronousQueue$TransferQueue; -Ljava/util/concurrent/SynchronousQueue$TransferStack$SNode; -Ljava/util/concurrent/SynchronousQueue$TransferStack; -Ljava/util/concurrent/SynchronousQueue$Transferer; -Ljava/util/concurrent/SynchronousQueue; -Ljava/util/concurrent/ThreadFactory; -Ljava/util/concurrent/ThreadLocalRandom; -Ljava/util/concurrent/ThreadPoolExecutor$AbortPolicy; -Ljava/util/concurrent/ThreadPoolExecutor$DiscardPolicy; -Ljava/util/concurrent/ThreadPoolExecutor$Worker; -Ljava/util/concurrent/TimeUnit$1; -Ljava/util/concurrent/TimeUnit; -Ljava/util/concurrent/TimeoutException; -Ljava/util/concurrent/atomic/AtomicBoolean; -Ljava/util/concurrent/atomic/AtomicInteger; -Ljava/util/concurrent/atomic/AtomicIntegerArray; -Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl; -Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater; -Ljava/util/concurrent/atomic/AtomicLong; -Ljava/util/concurrent/atomic/AtomicLongArray; -Ljava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater; -Ljava/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater; -Ljava/util/concurrent/atomic/AtomicLongFieldUpdater; -Ljava/util/concurrent/atomic/AtomicReference; -Ljava/util/concurrent/atomic/AtomicReferenceArray; -Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl; -Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater; -Ljava/util/concurrent/atomic/LongAdder; -Ljava/util/concurrent/atomic/Striped64$1; -Ljava/util/concurrent/atomic/Striped64$Cell; -Ljava/util/concurrent/atomic/Striped64; -Ljava/util/concurrent/locks/AbstractOwnableSynchronizer; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionNode; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ExclusiveNode; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$SharedNode; -Ljava/util/concurrent/locks/AbstractQueuedSynchronizer; -Ljava/util/concurrent/locks/Condition; -Ljava/util/concurrent/locks/Lock; -Ljava/util/concurrent/locks/LockSupport; -Ljava/util/concurrent/locks/ReadWriteLock; -Ljava/util/concurrent/locks/ReentrantLock$FairSync; -Ljava/util/concurrent/locks/ReentrantLock$NonfairSync; -Ljava/util/concurrent/locks/ReentrantLock$Sync; -Ljava/util/concurrent/locks/ReentrantLock; -Ljava/util/concurrent/locks/ReentrantReadWriteLock$FairSync; -Ljava/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync; -Ljava/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter; -Ljava/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter; -Ljava/util/concurrent/locks/ReentrantReadWriteLock$Sync; -Ljava/util/concurrent/locks/ReentrantReadWriteLock; -Ljava/util/function/BiConsumer; -Ljava/util/function/BiFunction$$ExternalSyntheticLambda0; -Ljava/util/function/BiFunction; -Ljava/util/function/BiPredicate; -Ljava/util/function/BinaryOperator$$ExternalSyntheticLambda0; -Ljava/util/function/BinaryOperator; -Ljava/util/function/BooleanSupplier; -Ljava/util/function/Consumer$$ExternalSyntheticLambda0; -Ljava/util/function/Consumer; -Ljava/util/function/DoubleBinaryOperator; -Ljava/util/function/DoubleConsumer; -Ljava/util/function/DoubleSupplier; -Ljava/util/function/DoubleUnaryOperator$$ExternalSyntheticLambda0; -Ljava/util/function/DoubleUnaryOperator$$ExternalSyntheticLambda1; -Ljava/util/function/DoubleUnaryOperator; -Ljava/util/function/Function$$ExternalSyntheticLambda0; -Ljava/util/function/Function$$ExternalSyntheticLambda1; -Ljava/util/function/Function$$ExternalSyntheticLambda2; -Ljava/util/function/Function; -Ljava/util/function/IntBinaryOperator; -Ljava/util/function/IntConsumer; -Ljava/util/function/IntFunction; -Ljava/util/function/IntPredicate; -Ljava/util/function/IntSupplier; -Ljava/util/function/IntToDoubleFunction; -Ljava/util/function/IntToLongFunction; -Ljava/util/function/IntUnaryOperator; -Ljava/util/function/LongBinaryOperator; -Ljava/util/function/LongConsumer; -Ljava/util/function/LongFunction; -Ljava/util/function/LongPredicate; -Ljava/util/function/LongSupplier; -Ljava/util/function/LongUnaryOperator; -Ljava/util/function/ObjDoubleConsumer; -Ljava/util/function/ObjIntConsumer; -Ljava/util/function/ObjLongConsumer; -Ljava/util/function/Predicate; -Ljava/util/function/Supplier; -Ljava/util/function/ToDoubleBiFunction; -Ljava/util/function/ToDoubleFunction; -Ljava/util/function/ToIntBiFunction; -Ljava/util/function/ToIntFunction; -Ljava/util/function/ToLongBiFunction; -Ljava/util/function/ToLongFunction; -Ljava/util/function/UnaryOperator; -Ljava/util/jar/Attributes$Name; -Ljava/util/jar/Attributes; -Ljava/util/jar/JarEntry; -Ljava/util/jar/JarException; -Ljava/util/jar/JarFile$JarEntryIterator; -Ljava/util/jar/JarFile$JarFileEntry; -Ljava/util/jar/JarFile; -Ljava/util/jar/JarVerifier$3; -Ljava/util/jar/JarVerifier$VerifierStream; -Ljava/util/jar/JarVerifier; -Ljava/util/jar/Manifest$FastInputStream; -Ljava/util/jar/Manifest; -Ljava/util/logging/ConsoleHandler; -Ljava/util/logging/ErrorManager; -Ljava/util/logging/FileHandler$1; -Ljava/util/logging/FileHandler$InitializationErrorManager-IA; -Ljava/util/logging/FileHandler$InitializationErrorManager; -Ljava/util/logging/FileHandler$MeteredStream; -Ljava/util/logging/FileHandler; -Ljava/util/logging/Filter; -Ljava/util/logging/Formatter; -Ljava/util/logging/Handler; -Ljava/util/logging/Level$KnownLevel; -Ljava/util/logging/Level; -Ljava/util/logging/LogManager$1; -Ljava/util/logging/LogManager$2; -Ljava/util/logging/LogManager$3; -Ljava/util/logging/LogManager$4; -Ljava/util/logging/LogManager$5; -Ljava/util/logging/LogManager$6; -Ljava/util/logging/LogManager$7; -Ljava/util/logging/LogManager$Cleaner; -Ljava/util/logging/LogManager$LogNode; -Ljava/util/logging/LogManager$LoggerContext$1; -Ljava/util/logging/LogManager$LoggerContext; -Ljava/util/logging/LogManager$LoggerWeakRef; -Ljava/util/logging/LogManager$RootLogger; -Ljava/util/logging/LogManager$SystemLoggerContext; -Ljava/util/logging/LogManager; -Ljava/util/logging/LogRecord; -Ljava/util/logging/Logger$1; -Ljava/util/logging/Logger$LoggerBundle; -Ljava/util/logging/Logger$SystemLoggerHelper$1; -Ljava/util/logging/Logger$SystemLoggerHelper; -Ljava/util/logging/Logger; -Ljava/util/logging/LoggingPermission; -Ljava/util/logging/LoggingProxyImpl; -Ljava/util/logging/SimpleFormatter; -Ljava/util/logging/StreamHandler; -Ljava/util/logging/XMLFormatter; -Ljava/util/prefs/AbstractPreferences; -Ljava/util/prefs/BackingStoreException; -Ljava/util/prefs/FileSystemPreferences$3; -Ljava/util/prefs/FileSystemPreferences; -Ljava/util/prefs/FileSystemPreferencesFactory; -Ljava/util/prefs/Preferences; -Ljava/util/prefs/PreferencesFactory; -Ljava/util/random/RandomGenerator; -Ljava/util/regex/ASCII; -Ljava/util/regex/MatchResult; -Ljava/util/regex/Matcher; -Ljava/util/regex/Pattern; -Ljava/util/regex/PatternSyntaxException; -Ljava/util/stream/AbstractPipeline$$ExternalSyntheticLambda0; -Ljava/util/stream/AbstractPipeline$$ExternalSyntheticLambda2; -Ljava/util/stream/AbstractPipeline; -Ljava/util/stream/AbstractSpinedBuffer; -Ljava/util/stream/BaseStream; -Ljava/util/stream/Collector$Characteristics; -Ljava/util/stream/Collector; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda0; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda13; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda15; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda1; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda20; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda21; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda22; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda23; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda24; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda25; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda26; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda27; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda28; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda30; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda34; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda37; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda39; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda41; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda42; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda45; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda47; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda48; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda49; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda4; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda50; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda51; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda52; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda53; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda54; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda56; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda57; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda63; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda64; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda65; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda66; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda68; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda69; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda72; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda73; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda74; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda75; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda76; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda77; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda79; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda80; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda82; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda87; -Ljava/util/stream/Collectors$$ExternalSyntheticLambda94; -Ljava/util/stream/Collectors$CollectorImpl; -Ljava/util/stream/Collectors; -Ljava/util/stream/DistinctOps$1$1; -Ljava/util/stream/DistinctOps$1$2; -Ljava/util/stream/DistinctOps; -Ljava/util/stream/DoublePipeline$$ExternalSyntheticLambda0; -Ljava/util/stream/DoublePipeline$$ExternalSyntheticLambda4; -Ljava/util/stream/DoublePipeline$$ExternalSyntheticLambda5; -Ljava/util/stream/DoublePipeline$$ExternalSyntheticLambda7; -Ljava/util/stream/DoublePipeline$$ExternalSyntheticLambda9; -Ljava/util/stream/DoublePipeline$StatelessOp; -Ljava/util/stream/DoublePipeline; -Ljava/util/stream/DoubleStream; -Ljava/util/stream/FindOps$FindOp; -Ljava/util/stream/FindOps$FindSink$OfInt$$ExternalSyntheticLambda0; -Ljava/util/stream/FindOps$FindSink$OfInt$$ExternalSyntheticLambda1; -Ljava/util/stream/FindOps$FindSink$OfInt; -Ljava/util/stream/FindOps$FindSink$OfRef$$ExternalSyntheticLambda0; -Ljava/util/stream/FindOps$FindSink$OfRef$$ExternalSyntheticLambda1; -Ljava/util/stream/FindOps$FindSink$OfRef; -Ljava/util/stream/FindOps$FindSink; -Ljava/util/stream/FindOps; -Ljava/util/stream/ForEachOps$ForEachOp$OfInt; -Ljava/util/stream/ForEachOps$ForEachOp$OfRef; -Ljava/util/stream/ForEachOps$ForEachOp; -Ljava/util/stream/ForEachOps; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda0; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda10; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda11; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda12; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda1; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda5; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda7; -Ljava/util/stream/IntPipeline$$ExternalSyntheticLambda8; -Ljava/util/stream/IntPipeline$1$1; -Ljava/util/stream/IntPipeline$4$1; -Ljava/util/stream/IntPipeline$9; -Ljava/util/stream/IntPipeline$StatelessOp; -Ljava/util/stream/IntPipeline; -Ljava/util/stream/IntStream; -Ljava/util/stream/LongPipeline$$ExternalSyntheticLambda2; -Ljava/util/stream/LongPipeline$$ExternalSyntheticLambda3; -Ljava/util/stream/LongPipeline$$ExternalSyntheticLambda4; -Ljava/util/stream/LongPipeline$$ExternalSyntheticLambda7; -Ljava/util/stream/LongPipeline$$ExternalSyntheticLambda9; -Ljava/util/stream/LongPipeline$StatelessOp; -Ljava/util/stream/LongPipeline; -Ljava/util/stream/LongStream; -Ljava/util/stream/MatchOps$$ExternalSyntheticLambda0; -Ljava/util/stream/MatchOps$$ExternalSyntheticLambda1; -Ljava/util/stream/MatchOps$$ExternalSyntheticLambda3; -Ljava/util/stream/MatchOps$1MatchSink; -Ljava/util/stream/MatchOps$2MatchSink; -Ljava/util/stream/MatchOps$3MatchSink; -Ljava/util/stream/MatchOps$BooleanTerminalSink; -Ljava/util/stream/MatchOps$MatchKind; -Ljava/util/stream/MatchOps$MatchOp; -Ljava/util/stream/MatchOps; -Ljava/util/stream/Node$Builder$OfInt; -Ljava/util/stream/Node$Builder; -Ljava/util/stream/Node$OfDouble; -Ljava/util/stream/Node$OfInt; -Ljava/util/stream/Node$OfLong; -Ljava/util/stream/Node$OfPrimitive; -Ljava/util/stream/Node; -Ljava/util/stream/Nodes$ArrayNode; -Ljava/util/stream/Nodes$EmptyNode$OfDouble; -Ljava/util/stream/Nodes$EmptyNode$OfInt; -Ljava/util/stream/Nodes$EmptyNode$OfLong; -Ljava/util/stream/Nodes$EmptyNode$OfRef; -Ljava/util/stream/Nodes$EmptyNode; -Ljava/util/stream/Nodes$FixedNodeBuilder; -Ljava/util/stream/Nodes$IntArrayNode; -Ljava/util/stream/Nodes$IntFixedNodeBuilder; -Ljava/util/stream/Nodes$IntSpinedNodeBuilder; -Ljava/util/stream/Nodes$SpinedNodeBuilder; -Ljava/util/stream/Nodes$ToArrayTask$OfInt-IA; -Ljava/util/stream/Nodes$ToArrayTask$OfInt; -Ljava/util/stream/Nodes$ToArrayTask$OfPrimitive-IA; -Ljava/util/stream/Nodes$ToArrayTask$OfPrimitive; -Ljava/util/stream/Nodes$ToArrayTask$OfRef-IA; -Ljava/util/stream/Nodes$ToArrayTask$OfRef; -Ljava/util/stream/Nodes$ToArrayTask; -Ljava/util/stream/Nodes; -Ljava/util/stream/PipelineHelper; -Ljava/util/stream/ReduceOps$10; -Ljava/util/stream/ReduceOps$12; -Ljava/util/stream/ReduceOps$12ReducingSink; -Ljava/util/stream/ReduceOps$15; -Ljava/util/stream/ReduceOps$1; -Ljava/util/stream/ReduceOps$1ReducingSink; -Ljava/util/stream/ReduceOps$2; -Ljava/util/stream/ReduceOps$2ReducingSink; -Ljava/util/stream/ReduceOps$3; -Ljava/util/stream/ReduceOps$3ReducingSink; -Ljava/util/stream/ReduceOps$5; -Ljava/util/stream/ReduceOps$5ReducingSink; -Ljava/util/stream/ReduceOps$6; -Ljava/util/stream/ReduceOps$8; -Ljava/util/stream/ReduceOps$8ReducingSink; -Ljava/util/stream/ReduceOps$AccumulatingSink; -Ljava/util/stream/ReduceOps$Box; -Ljava/util/stream/ReduceOps$ReduceOp; -Ljava/util/stream/ReduceOps; -Ljava/util/stream/ReferencePipeline$$ExternalSyntheticLambda0; -Ljava/util/stream/ReferencePipeline$$ExternalSyntheticLambda1; -Ljava/util/stream/ReferencePipeline$15$1; -Ljava/util/stream/ReferencePipeline$15; -Ljava/util/stream/ReferencePipeline$2$1; -Ljava/util/stream/ReferencePipeline$3$1; -Ljava/util/stream/ReferencePipeline$4$1; -Ljava/util/stream/ReferencePipeline$5$1; -Ljava/util/stream/ReferencePipeline$5; -Ljava/util/stream/ReferencePipeline$6$1; -Ljava/util/stream/ReferencePipeline$6; -Ljava/util/stream/ReferencePipeline$7$1; -Ljava/util/stream/ReferencePipeline$7; -Ljava/util/stream/ReferencePipeline$StatefulOp; -Ljava/util/stream/ReferencePipeline$StatelessOp; -Ljava/util/stream/ReferencePipeline; -Ljava/util/stream/Sink$ChainedInt; -Ljava/util/stream/Sink$ChainedReference; -Ljava/util/stream/Sink$OfDouble; -Ljava/util/stream/Sink$OfInt; -Ljava/util/stream/Sink$OfLong; -Ljava/util/stream/Sink; -Ljava/util/stream/SliceOps$1$1; -Ljava/util/stream/SliceOps$1; -Ljava/util/stream/SliceOps; -Ljava/util/stream/SortedOps$AbstractRefSortingSink; -Ljava/util/stream/SortedOps$RefSortingSink$$ExternalSyntheticLambda0; -Ljava/util/stream/SortedOps$RefSortingSink; -Ljava/util/stream/SortedOps$SizedRefSortingSink; -Ljava/util/stream/SortedOps; -Ljava/util/stream/SpinedBuffer$OfInt; -Ljava/util/stream/SpinedBuffer$OfPrimitive; -Ljava/util/stream/SpinedBuffer; -Ljava/util/stream/Stream$Builder; -Ljava/util/stream/Stream; -Ljava/util/stream/StreamOpFlag$MaskBuilder; -Ljava/util/stream/StreamOpFlag$Type; -Ljava/util/stream/StreamOpFlag; -Ljava/util/stream/StreamShape; -Ljava/util/stream/StreamSpliterators$AbstractWrappingSpliterator; -Ljava/util/stream/StreamSpliterators$InfiniteSupplyingSpliterator$OfRef; -Ljava/util/stream/StreamSpliterators$InfiniteSupplyingSpliterator; -Ljava/util/stream/StreamSpliterators$WrappingSpliterator; -Ljava/util/stream/StreamSupport; -Ljava/util/stream/Streams$1; -Ljava/util/stream/Streams$2; -Ljava/util/stream/Streams$AbstractStreamBuilderImpl-IA; -Ljava/util/stream/Streams$AbstractStreamBuilderImpl; -Ljava/util/stream/Streams$ConcatSpliterator$OfRef; -Ljava/util/stream/Streams$ConcatSpliterator; -Ljava/util/stream/Streams$RangeIntSpliterator; -Ljava/util/stream/Streams$StreamBuilderImpl; -Ljava/util/stream/Streams; -Ljava/util/stream/TerminalOp; -Ljava/util/stream/TerminalSink; -Ljava/util/stream/Tripwire$$ExternalSyntheticLambda0; -Ljava/util/stream/Tripwire; -Ljava/util/zip/Adler32; -Ljava/util/zip/CRC32; -Ljava/util/zip/CheckedInputStream; -Ljava/util/zip/Checksum$1; -Ljava/util/zip/Checksum; -Ljava/util/zip/DataFormatException; -Ljava/util/zip/Deflater$DeflaterZStreamRef-IA; -Ljava/util/zip/Deflater$DeflaterZStreamRef; -Ljava/util/zip/Deflater; -Ljava/util/zip/DeflaterOutputStream; -Ljava/util/zip/GZIPInputStream$1; -Ljava/util/zip/GZIPInputStream; -Ljava/util/zip/GZIPOutputStream; -Ljava/util/zip/Inflater$InflaterZStreamRef-IA; -Ljava/util/zip/Inflater$InflaterZStreamRef; -Ljava/util/zip/Inflater; -Ljava/util/zip/InflaterInputStream; -Ljava/util/zip/ZipCoder$UTF8ZipCoder; -Ljava/util/zip/ZipCoder; -Ljava/util/zip/ZipConstants; -Ljava/util/zip/ZipEntry; -Ljava/util/zip/ZipError; -Ljava/util/zip/ZipException; -Ljava/util/zip/ZipFile$CleanableResource; -Ljava/util/zip/ZipFile$InflaterCleanupAction; -Ljava/util/zip/ZipFile$Source$End-IA; -Ljava/util/zip/ZipFile$Source$End; -Ljava/util/zip/ZipFile$Source$Key; -Ljava/util/zip/ZipFile$Source; -Ljava/util/zip/ZipFile$ZipEntryIterator; -Ljava/util/zip/ZipFile$ZipFileInflaterInputStream; -Ljava/util/zip/ZipFile$ZipFileInputStream; -Ljava/util/zip/ZipFile; -Ljava/util/zip/ZipInputStream; -Ljava/util/zip/ZipOutputStream; -Ljava/util/zip/ZipUtils; -Ljavax/crypto/AEADBadTagException; -Ljavax/crypto/BadPaddingException; -Ljavax/crypto/Cipher$CipherSpiAndProvider; -Ljavax/crypto/Cipher$InitParams; -Ljavax/crypto/Cipher$InitType; -Ljavax/crypto/Cipher$NeedToSet; -Ljavax/crypto/Cipher$SpiAndProviderUpdater; -Ljavax/crypto/Cipher$Transform; -Ljavax/crypto/Cipher; -Ljavax/crypto/CipherInputStream; -Ljavax/crypto/CipherOutputStream; -Ljavax/crypto/CipherSpi; -Ljavax/crypto/CryptoPermissions; -Ljavax/crypto/IllegalBlockSizeException; -Ljavax/crypto/JarVerifier$1; -Ljavax/crypto/JarVerifier; -Ljavax/crypto/JceSecurity$1; -Ljavax/crypto/JceSecurity; -Ljavax/crypto/KeyAgreement; -Ljavax/crypto/KeyAgreementSpi; -Ljavax/crypto/KeyGenerator; -Ljavax/crypto/KeyGeneratorSpi; -Ljavax/crypto/Mac; -Ljavax/crypto/MacSpi; -Ljavax/crypto/NoSuchPaddingException; -Ljavax/crypto/NullCipher; -Ljavax/crypto/SecretKey; -Ljavax/crypto/SecretKeyFactory; -Ljavax/crypto/SecretKeyFactorySpi; -Ljavax/crypto/ShortBufferException; -Ljavax/crypto/interfaces/DHKey; -Ljavax/crypto/interfaces/DHPrivateKey; -Ljavax/crypto/interfaces/DHPublicKey; -Ljavax/crypto/interfaces/PBEKey; -Ljavax/crypto/spec/DESKeySpec; -Ljavax/crypto/spec/DESedeKeySpec; -Ljavax/crypto/spec/DHParameterSpec; -Ljavax/crypto/spec/DHPrivateKeySpec; -Ljavax/crypto/spec/DHPublicKeySpec; -Ljavax/crypto/spec/GCMParameterSpec; -Ljavax/crypto/spec/IvParameterSpec; -Ljavax/crypto/spec/OAEPParameterSpec; -Ljavax/crypto/spec/PBEKeySpec; -Ljavax/crypto/spec/PBEParameterSpec; -Ljavax/crypto/spec/PSource$PSpecified; -Ljavax/crypto/spec/PSource; -Ljavax/crypto/spec/SecretKeySpec; -Ljavax/microedition/khronos/egl/EGL10; -Ljavax/microedition/khronos/egl/EGL11; -Ljavax/microedition/khronos/egl/EGL; -Ljavax/microedition/khronos/egl/EGLConfig; -Ljavax/microedition/khronos/egl/EGLContext; -Ljavax/microedition/khronos/egl/EGLDisplay; -Ljavax/microedition/khronos/egl/EGLSurface; -Ljavax/microedition/khronos/opengles/GL10; -Ljavax/microedition/khronos/opengles/GL10Ext; -Ljavax/microedition/khronos/opengles/GL11; -Ljavax/microedition/khronos/opengles/GL11Ext; -Ljavax/microedition/khronos/opengles/GL11ExtensionPack; -Ljavax/microedition/khronos/opengles/GL; -Ljavax/net/DefaultSocketFactory; -Ljavax/net/ServerSocketFactory; -Ljavax/net/SocketFactory; -Ljavax/net/ssl/DefaultSSLServerSocketFactory; -Ljavax/net/ssl/DefaultSSLSocketFactory; -Ljavax/net/ssl/ExtendedSSLSession; -Ljavax/net/ssl/HandshakeCompletedEvent; -Ljavax/net/ssl/HandshakeCompletedListener; -Ljavax/net/ssl/HostnameVerifier; -Ljavax/net/ssl/HttpsURLConnection$NoPreloadHolder; -Ljavax/net/ssl/HttpsURLConnection; -Ljavax/net/ssl/KeyManager; -Ljavax/net/ssl/KeyManagerFactory$1; -Ljavax/net/ssl/KeyManagerFactory; -Ljavax/net/ssl/KeyManagerFactorySpi; -Ljavax/net/ssl/ManagerFactoryParameters; -Ljavax/net/ssl/SNIHostName; -Ljavax/net/ssl/SNIMatcher; -Ljavax/net/ssl/SNIServerName; -Ljavax/net/ssl/SSLContext; -Ljavax/net/ssl/SSLContextSpi; -Ljavax/net/ssl/SSLEngine; -Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; -Ljavax/net/ssl/SSLEngineResult$Status; -Ljavax/net/ssl/SSLEngineResult; -Ljavax/net/ssl/SSLException; -Ljavax/net/ssl/SSLHandshakeException; -Ljavax/net/ssl/SSLParameters; -Ljavax/net/ssl/SSLPeerUnverifiedException; -Ljavax/net/ssl/SSLPermission; -Ljavax/net/ssl/SSLProtocolException; -Ljavax/net/ssl/SSLServerSocket; -Ljavax/net/ssl/SSLServerSocketFactory; -Ljavax/net/ssl/SSLSession; -Ljavax/net/ssl/SSLSessionBindingEvent; -Ljavax/net/ssl/SSLSessionBindingListener; -Ljavax/net/ssl/SSLSessionContext; -Ljavax/net/ssl/SSLSocket; -Ljavax/net/ssl/SSLSocketFactory$1; -Ljavax/net/ssl/SSLSocketFactory; -Ljavax/net/ssl/StandardConstants; -Ljavax/net/ssl/TrustManager; -Ljavax/net/ssl/TrustManagerFactory$1; -Ljavax/net/ssl/TrustManagerFactory; -Ljavax/net/ssl/TrustManagerFactorySpi; -Ljavax/net/ssl/X509ExtendedKeyManager; -Ljavax/net/ssl/X509ExtendedTrustManager; -Ljavax/net/ssl/X509KeyManager; -Ljavax/net/ssl/X509TrustManager; -Ljavax/security/auth/Destroyable; -Ljavax/security/auth/callback/Callback; -Ljavax/security/auth/callback/CallbackHandler; -Ljavax/security/auth/callback/PasswordCallback; -Ljavax/security/auth/callback/UnsupportedCallbackException; -Ljavax/security/auth/x500/X500Principal; -Ljavax/security/cert/Certificate; -Ljavax/security/cert/CertificateEncodingException; -Ljavax/security/cert/CertificateException; -Ljavax/security/cert/X509Certificate$1; -Ljavax/security/cert/X509Certificate; -Ljavax/sip/ClientTransaction; -Ljavax/sip/Dialog; -Ljavax/sip/DialogDoesNotExistException; -Ljavax/sip/DialogState; -Ljavax/sip/DialogTerminatedEvent; -Ljavax/sip/IOExceptionEvent; -Ljavax/sip/InvalidArgumentException; -Ljavax/sip/ListeningPoint; -Ljavax/sip/ObjectInUseException; -Ljavax/sip/PeerUnavailableException; -Ljavax/sip/ProviderDoesNotExistException; -Ljavax/sip/RequestEvent; -Ljavax/sip/ResponseEvent; -Ljavax/sip/ServerTransaction; -Ljavax/sip/SipException; -Ljavax/sip/SipFactory; -Ljavax/sip/SipListener; -Ljavax/sip/SipProvider; -Ljavax/sip/SipStack; -Ljavax/sip/Timeout; -Ljavax/sip/TimeoutEvent; -Ljavax/sip/Transaction; -Ljavax/sip/TransactionAlreadyExistsException; -Ljavax/sip/TransactionDoesNotExistException; -Ljavax/sip/TransactionState; -Ljavax/sip/TransactionTerminatedEvent; -Ljavax/sip/TransactionUnavailableException; -Ljavax/sip/TransportNotSupportedException; -Ljavax/sip/address/Address; -Ljavax/sip/address/AddressFactory; -Ljavax/sip/address/Hop; -Ljavax/sip/address/Router; -Ljavax/sip/address/SipURI; -Ljavax/sip/address/TelURL; -Ljavax/sip/address/URI; -Ljavax/sip/header/AcceptEncodingHeader; -Ljavax/sip/header/AcceptHeader; -Ljavax/sip/header/AcceptLanguageHeader; -Ljavax/sip/header/AlertInfoHeader; -Ljavax/sip/header/AllowEventsHeader; -Ljavax/sip/header/AllowHeader; -Ljavax/sip/header/AuthenticationInfoHeader; -Ljavax/sip/header/AuthorizationHeader; -Ljavax/sip/header/CSeqHeader; -Ljavax/sip/header/CallIdHeader; -Ljavax/sip/header/CallInfoHeader; -Ljavax/sip/header/ContactHeader; -Ljavax/sip/header/ContentDispositionHeader; -Ljavax/sip/header/ContentEncodingHeader; -Ljavax/sip/header/ContentLanguageHeader; -Ljavax/sip/header/ContentLengthHeader; -Ljavax/sip/header/ContentTypeHeader; -Ljavax/sip/header/DateHeader; -Ljavax/sip/header/Encoding; -Ljavax/sip/header/ErrorInfoHeader; -Ljavax/sip/header/EventHeader; -Ljavax/sip/header/ExpiresHeader; -Ljavax/sip/header/ExtensionHeader; -Ljavax/sip/header/FromHeader; -Ljavax/sip/header/Header; -Ljavax/sip/header/HeaderAddress; -Ljavax/sip/header/HeaderFactory; -Ljavax/sip/header/InReplyToHeader; -Ljavax/sip/header/MaxForwardsHeader; -Ljavax/sip/header/MediaType; -Ljavax/sip/header/MimeVersionHeader; -Ljavax/sip/header/MinExpiresHeader; -Ljavax/sip/header/OptionTag; -Ljavax/sip/header/OrganizationHeader; -Ljavax/sip/header/Parameters; -Ljavax/sip/header/PriorityHeader; -Ljavax/sip/header/ProxyAuthenticateHeader; -Ljavax/sip/header/ProxyAuthorizationHeader; -Ljavax/sip/header/ProxyRequireHeader; -Ljavax/sip/header/RAckHeader; -Ljavax/sip/header/RSeqHeader; -Ljavax/sip/header/ReasonHeader; -Ljavax/sip/header/RecordRouteHeader; -Ljavax/sip/header/ReferToHeader; -Ljavax/sip/header/ReplyToHeader; -Ljavax/sip/header/RequireHeader; -Ljavax/sip/header/RetryAfterHeader; -Ljavax/sip/header/RouteHeader; -Ljavax/sip/header/SIPETagHeader; -Ljavax/sip/header/SIPIfMatchHeader; -Ljavax/sip/header/ServerHeader; -Ljavax/sip/header/SubjectHeader; -Ljavax/sip/header/SubscriptionStateHeader; -Ljavax/sip/header/SupportedHeader; -Ljavax/sip/header/TimeStampHeader; -Ljavax/sip/header/ToHeader; -Ljavax/sip/header/TooManyHopsException; -Ljavax/sip/header/UnsupportedHeader; -Ljavax/sip/header/UserAgentHeader; -Ljavax/sip/header/ViaHeader; -Ljavax/sip/header/WWWAuthenticateHeader; -Ljavax/sip/header/WarningHeader; -Ljavax/sip/message/Message; -Ljavax/sip/message/MessageFactory; -Ljavax/sip/message/Request; -Ljavax/sip/message/Response; -Ljavax/xml/datatype/DatatypeConfigurationException; -Ljavax/xml/datatype/DatatypeConstants$Field; -Ljavax/xml/datatype/DatatypeConstants; -Ljavax/xml/datatype/Duration; -Ljavax/xml/namespace/QName; -Ljavax/xml/parsers/DocumentBuilder; -Ljavax/xml/parsers/DocumentBuilderFactory; -Ljavax/xml/parsers/ParserConfigurationException; -Ljavax/xml/parsers/SAXParser; -Ljavax/xml/parsers/SAXParserFactory; -Ljdk/internal/access/JavaIOFileDescriptorAccess; -Ljdk/internal/access/JavaObjectInputStreamAccess; -Ljdk/internal/access/JavaUtilCollectionAccess; -Ljdk/internal/access/SharedSecrets; -Ljdk/internal/math/FDBigInteger; -Ljdk/internal/math/FloatingDecimal$1; -Ljdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer; -Ljdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter; -Ljdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer; -Ljdk/internal/math/FloatingDecimal$BinaryToASCIIConverter; -Ljdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer; -Ljdk/internal/math/FloatingDecimal$HexFloatPattern; -Ljdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer; -Ljdk/internal/math/FloatingDecimal; -Ljdk/internal/math/FormattedFloatingDecimal$1; -Ljdk/internal/math/FormattedFloatingDecimal$Form; -Ljdk/internal/math/FormattedFloatingDecimal; -Ljdk/internal/misc/TerminatingThreadLocal$1; -Ljdk/internal/misc/TerminatingThreadLocal; -Ljdk/internal/misc/Unsafe; -Ljdk/internal/misc/UnsafeConstants; -Ljdk/internal/misc/VM; -Ljdk/internal/ref/CleanerFactory; -Ljdk/internal/ref/CleanerImpl; -Ljdk/internal/ref/PhantomCleanable; -Ljdk/internal/reflect/Reflection; -Ljdk/internal/util/ArraysSupport; -Ljdk/internal/util/NullableKeyValueHolder; -Ljdk/internal/util/Preconditions; -Ljdk/internal/util/StaticProperty; -Ljdk/internal/util/random/RandomSupport; -Llibcore/content/type/MimeMap$$ExternalSyntheticLambda0; -Llibcore/content/type/MimeMap$Builder$Element; -Llibcore/content/type/MimeMap$Builder; -Llibcore/content/type/MimeMap$MemoizingSupplier; -Llibcore/content/type/MimeMap-IA; -Llibcore/content/type/MimeMap; -Llibcore/icu/CollationKeyICU; -Llibcore/icu/DateIntervalFormat; -Llibcore/icu/DecimalFormatData; -Llibcore/icu/ICU; -Llibcore/icu/LocaleData; -Llibcore/icu/SimpleDateFormatData; -Llibcore/icu/TimeZoneNames$1; -Llibcore/icu/TimeZoneNames$ZoneStringsCache; -Llibcore/icu/TimeZoneNames; -Llibcore/internal/StringPool; -Llibcore/io/AsynchronousCloseMonitor; -Llibcore/io/BlockGuardOs; -Llibcore/io/BufferIterator; -Llibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection$1; -Llibcore/io/ClassPathURLStreamHandler$ClassPathURLConnection; -Llibcore/io/ClassPathURLStreamHandler; -Llibcore/io/ForwardingOs; -Llibcore/io/IoBridge; -Llibcore/io/IoTracker$Mode; -Llibcore/io/IoTracker; -Llibcore/io/IoUtils$FileReader; -Llibcore/io/IoUtils; -Llibcore/io/Libcore; -Llibcore/io/Linux; -Llibcore/io/Memory; -Llibcore/io/MemoryMappedFile; -Llibcore/io/NioBufferIterator; -Llibcore/io/Os; -Llibcore/io/Streams; -Llibcore/math/NativeBN; -Llibcore/net/InetAddressUtils; -Llibcore/net/NetworkSecurityPolicy$DefaultNetworkSecurityPolicy; -Llibcore/net/NetworkSecurityPolicy; -Llibcore/net/event/NetworkEventDispatcher; -Llibcore/net/event/NetworkEventListener; -Llibcore/net/http/Dns; -Llibcore/net/http/HttpDate$1; -Llibcore/net/http/HttpDate; -Llibcore/net/http/HttpURLConnectionFactory; -Llibcore/reflect/AnnotatedElements; -Llibcore/reflect/AnnotationFactory; -Llibcore/reflect/AnnotationMember$DefaultValues; -Llibcore/reflect/AnnotationMember; -Llibcore/reflect/GenericArrayTypeImpl; -Llibcore/reflect/GenericSignatureParser; -Llibcore/reflect/ListOfTypes; -Llibcore/reflect/ListOfVariables; -Llibcore/reflect/ParameterizedTypeImpl; -Llibcore/reflect/RecordComponents; -Llibcore/reflect/TypeVariableImpl; -Llibcore/reflect/Types; -Llibcore/reflect/WildcardTypeImpl; -Llibcore/util/ArrayUtils; -Llibcore/util/BasicLruCache; -Llibcore/util/CharsetUtils; -Llibcore/util/CollectionUtils; -Llibcore/util/EmptyArray; -Llibcore/util/FP16; -Llibcore/util/HexEncoding; -Llibcore/util/NativeAllocationRegistry$CleanerRunner; -Llibcore/util/NativeAllocationRegistry$CleanerThunk; -Llibcore/util/NativeAllocationRegistry; -Llibcore/util/Objects; -Llibcore/util/SneakyThrow; -Llibcore/util/XmlObjectFactory; -Lorg/apache/harmony/dalvik/ddmc/Chunk; -Lorg/apache/harmony/dalvik/ddmc/ChunkHandler; -Lorg/apache/harmony/dalvik/ddmc/DdmServer; -Lorg/apache/harmony/dalvik/ddmc/DdmVmInternal; -Lorg/apache/harmony/xml/ExpatAttributes; -Lorg/apache/harmony/xml/ExpatException; -Lorg/apache/harmony/xml/ExpatParser$CurrentAttributes-IA; -Lorg/apache/harmony/xml/ExpatParser$CurrentAttributes; -Lorg/apache/harmony/xml/ExpatParser$ExpatLocator-IA; -Lorg/apache/harmony/xml/ExpatParser$ExpatLocator; -Lorg/apache/harmony/xml/ExpatParser$ParseException; -Lorg/apache/harmony/xml/ExpatParser; -Lorg/apache/harmony/xml/ExpatReader; -Lorg/apache/harmony/xml/dom/AttrImpl; -Lorg/apache/harmony/xml/dom/CDATASectionImpl; -Lorg/apache/harmony/xml/dom/CharacterDataImpl; -Lorg/apache/harmony/xml/dom/CommentImpl; -Lorg/apache/harmony/xml/dom/DOMImplementationImpl; -Lorg/apache/harmony/xml/dom/DocumentImpl; -Lorg/apache/harmony/xml/dom/DocumentTypeImpl; -Lorg/apache/harmony/xml/dom/ElementImpl; -Lorg/apache/harmony/xml/dom/EntityReferenceImpl; -Lorg/apache/harmony/xml/dom/InnerNodeImpl; -Lorg/apache/harmony/xml/dom/LeafNodeImpl; -Lorg/apache/harmony/xml/dom/NodeImpl$1; -Lorg/apache/harmony/xml/dom/NodeImpl; -Lorg/apache/harmony/xml/dom/NodeListImpl; -Lorg/apache/harmony/xml/dom/ProcessingInstructionImpl; -Lorg/apache/harmony/xml/dom/TextImpl; -Lorg/apache/harmony/xml/parsers/DocumentBuilderFactoryImpl; -Lorg/apache/harmony/xml/parsers/DocumentBuilderImpl; -Lorg/apache/harmony/xml/parsers/SAXParserFactoryImpl; -Lorg/apache/harmony/xml/parsers/SAXParserImpl; -Lorg/apache/http/conn/ConnectTimeoutException; -Lorg/apache/http/conn/scheme/HostNameResolver; -Lorg/apache/http/conn/scheme/LayeredSocketFactory; -Lorg/apache/http/conn/scheme/SocketFactory; -Lorg/apache/http/conn/ssl/AbstractVerifier; -Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; -Lorg/apache/http/conn/ssl/AndroidDistinguishedNameParser; -Lorg/apache/http/conn/ssl/BrowserCompatHostnameVerifier; -Lorg/apache/http/conn/ssl/SSLSocketFactory$NoPreloadHolder; -Lorg/apache/http/conn/ssl/SSLSocketFactory; -Lorg/apache/http/conn/ssl/StrictHostnameVerifier; -Lorg/apache/http/conn/ssl/X509HostnameVerifier; -Lorg/apache/http/params/CoreConnectionPNames; -Lorg/apache/http/params/HttpConnectionParams; -Lorg/apache/http/params/HttpParams; -Lorg/ccil/cowan/tagsoup/AutoDetector; -Lorg/ccil/cowan/tagsoup/CommandLine; -Lorg/ccil/cowan/tagsoup/Element; -Lorg/ccil/cowan/tagsoup/ElementType; -Lorg/ccil/cowan/tagsoup/HTMLModels; -Lorg/ccil/cowan/tagsoup/HTMLScanner; -Lorg/ccil/cowan/tagsoup/HTMLSchema; -Lorg/ccil/cowan/tagsoup/PYXScanner; -Lorg/ccil/cowan/tagsoup/PYXWriter; -Lorg/ccil/cowan/tagsoup/Parser$1; -Lorg/ccil/cowan/tagsoup/Parser; -Lorg/ccil/cowan/tagsoup/ScanHandler; -Lorg/ccil/cowan/tagsoup/Scanner; -Lorg/ccil/cowan/tagsoup/Schema; -Lorg/ccil/cowan/tagsoup/XMLWriter; -Lorg/ccil/cowan/tagsoup/jaxp/JAXPTest; -Lorg/ccil/cowan/tagsoup/jaxp/SAX1ParserAdapter$AttributesWrapper; -Lorg/ccil/cowan/tagsoup/jaxp/SAX1ParserAdapter$DocHandlerWrapper; -Lorg/ccil/cowan/tagsoup/jaxp/SAX1ParserAdapter; -Lorg/ccil/cowan/tagsoup/jaxp/SAXFactoryImpl; -Lorg/ccil/cowan/tagsoup/jaxp/SAXParserImpl; -Lorg/json/JSON; -Lorg/json/JSONArray; -Lorg/json/JSONException; -Lorg/json/JSONObject$1; -Lorg/json/JSONObject; -Lorg/json/JSONStringer$Scope; -Lorg/json/JSONStringer; -Lorg/json/JSONTokener; -Lorg/w3c/dom/Attr; -Lorg/w3c/dom/CDATASection; -Lorg/w3c/dom/CharacterData; -Lorg/w3c/dom/Comment; -Lorg/w3c/dom/DOMException; -Lorg/w3c/dom/DOMImplementation; -Lorg/w3c/dom/Document; -Lorg/w3c/dom/DocumentFragment; -Lorg/w3c/dom/DocumentType; -Lorg/w3c/dom/Element; -Lorg/w3c/dom/EntityReference; -Lorg/w3c/dom/Node; -Lorg/w3c/dom/NodeList; -Lorg/w3c/dom/ProcessingInstruction; -Lorg/w3c/dom/Text; -Lorg/w3c/dom/TypeInfo; -Lorg/xml/sax/AttributeList; -Lorg/xml/sax/Attributes; -Lorg/xml/sax/ContentHandler; -Lorg/xml/sax/DTDHandler; -Lorg/xml/sax/DocumentHandler; -Lorg/xml/sax/EntityResolver; -Lorg/xml/sax/ErrorHandler; -Lorg/xml/sax/InputSource; -Lorg/xml/sax/Locator; -Lorg/xml/sax/Parser; -Lorg/xml/sax/SAXException; -Lorg/xml/sax/SAXNotRecognizedException; -Lorg/xml/sax/SAXNotSupportedException; -Lorg/xml/sax/SAXParseException; -Lorg/xml/sax/XMLFilter; -Lorg/xml/sax/XMLReader; -Lorg/xml/sax/ext/DeclHandler; -Lorg/xml/sax/ext/DefaultHandler2; -Lorg/xml/sax/ext/EntityResolver2; -Lorg/xml/sax/ext/LexicalHandler; -Lorg/xml/sax/helpers/AttributesImpl; -Lorg/xml/sax/helpers/DefaultHandler; -Lorg/xml/sax/helpers/LocatorImpl; -Lorg/xml/sax/helpers/NamespaceSupport; -Lorg/xml/sax/helpers/XMLFilterImpl; -Lorg/xmlpull/v1/XmlPullParser; -Lorg/xmlpull/v1/XmlPullParserException; -Lorg/xmlpull/v1/XmlPullParserFactory; -Lorg/xmlpull/v1/XmlSerializer; -Lsun/invoke/util/BytecodeDescriptor; -Lsun/invoke/util/VerifyAccess; -Lsun/invoke/util/Wrapper$Format; -Lsun/invoke/util/Wrapper; -Lsun/misc/ASCIICaseInsensitiveComparator; -Lsun/misc/CharacterEncoder; -Lsun/misc/Cleaner$1; -Lsun/misc/Cleaner; -Lsun/misc/CompoundEnumeration; -Lsun/misc/HexDumpEncoder; -Lsun/misc/IOUtils; -Lsun/misc/LRUCache; -Lsun/misc/Unsafe; -Lsun/misc/VM; -Lsun/misc/Version; -Lsun/net/ConnectionResetException; -Lsun/net/NetHooks; -Lsun/net/NetProperties$1; -Lsun/net/NetProperties; -Lsun/net/ResourceManager; -Lsun/net/SocksProxy; -Lsun/net/spi/DefaultProxySelector$1; -Lsun/net/spi/DefaultProxySelector$NonProxyInfo; -Lsun/net/spi/DefaultProxySelector; -Lsun/net/spi/nameservice/NameService; -Lsun/net/util/IPAddressUtil; -Lsun/net/www/ParseUtil; -Lsun/net/www/protocol/file/Handler; -Lsun/net/www/protocol/ftp/Handler; -Lsun/net/www/protocol/jar/Handler; -Lsun/nio/ch/AbstractPollArrayWrapper; -Lsun/nio/ch/AbstractPollSelectorImpl; -Lsun/nio/ch/AllocatedNativeObject; -Lsun/nio/ch/AsynchronousFileChannelImpl; -Lsun/nio/ch/ChannelInputStream; -Lsun/nio/ch/DatagramChannelImpl; -Lsun/nio/ch/DatagramDispatcher; -Lsun/nio/ch/DefaultSelectorProvider; -Lsun/nio/ch/DirectBuffer; -Lsun/nio/ch/FileChannelImpl$SimpleFileLockTable; -Lsun/nio/ch/FileChannelImpl$Unmapper-IA; -Lsun/nio/ch/FileChannelImpl$Unmapper; -Lsun/nio/ch/FileDescriptorHolderSocketImpl; -Lsun/nio/ch/FileDispatcher; -Lsun/nio/ch/FileDispatcherImpl; -Lsun/nio/ch/FileKey; -Lsun/nio/ch/FileLockImpl; -Lsun/nio/ch/FileLockTable; -Lsun/nio/ch/IOStatus; -Lsun/nio/ch/IOUtil; -Lsun/nio/ch/Interruptible; -Lsun/nio/ch/LinuxAsynchronousChannelProvider; -Lsun/nio/ch/NativeDispatcher; -Lsun/nio/ch/NativeObject; -Lsun/nio/ch/NativeThread; -Lsun/nio/ch/NativeThreadSet; -Lsun/nio/ch/Net$1; -Lsun/nio/ch/Net$3; -Lsun/nio/ch/Net; -Lsun/nio/ch/PollArrayWrapper; -Lsun/nio/ch/PollSelectorImpl; -Lsun/nio/ch/PollSelectorProvider; -Lsun/nio/ch/SelChImpl; -Lsun/nio/ch/SelectionKeyImpl; -Lsun/nio/ch/SelectorImpl; -Lsun/nio/ch/SelectorProviderImpl; -Lsun/nio/ch/ServerSocketChannelImpl; -Lsun/nio/ch/SharedFileLockTable$FileLockReference; -Lsun/nio/ch/SharedFileLockTable; -Lsun/nio/ch/SocketAdaptor$1; -Lsun/nio/ch/SocketAdaptor$2; -Lsun/nio/ch/SocketAdaptor$SocketInputStream; -Lsun/nio/ch/SocketAdaptor; -Lsun/nio/ch/SocketChannelImpl; -Lsun/nio/ch/SocketDispatcher; -Lsun/nio/ch/Util$1; -Lsun/nio/ch/Util$2; -Lsun/nio/ch/Util$3; -Lsun/nio/ch/Util$BufferCache; -Lsun/nio/ch/Util; -Lsun/nio/cs/ArrayDecoder; -Lsun/nio/cs/ArrayEncoder; -Lsun/nio/cs/StreamDecoder; -Lsun/nio/cs/StreamEncoder; -Lsun/nio/cs/ThreadLocalCoders$1; -Lsun/nio/cs/ThreadLocalCoders$2; -Lsun/nio/cs/ThreadLocalCoders$Cache; -Lsun/nio/cs/ThreadLocalCoders; -Lsun/nio/fs/AbstractBasicFileAttributeView; -Lsun/nio/fs/AbstractFileSystemProvider; -Lsun/nio/fs/AbstractPath; -Lsun/nio/fs/DefaultFileSystemProvider; -Lsun/nio/fs/DynamicFileAttributeView; -Lsun/nio/fs/FileOwnerAttributeViewImpl; -Lsun/nio/fs/LinuxFileSystem; -Lsun/nio/fs/LinuxFileSystemProvider; -Lsun/nio/fs/NativeBuffer$Deallocator; -Lsun/nio/fs/NativeBuffer; -Lsun/nio/fs/NativeBuffers; -Lsun/nio/fs/UnixChannelFactory$1; -Lsun/nio/fs/UnixChannelFactory$Flags; -Lsun/nio/fs/UnixChannelFactory; -Lsun/nio/fs/UnixConstants; -Lsun/nio/fs/UnixDirectoryStream$UnixDirectoryIterator; -Lsun/nio/fs/UnixDirectoryStream; -Lsun/nio/fs/UnixException; -Lsun/nio/fs/UnixFileAttributeViews$Basic; -Lsun/nio/fs/UnixFileAttributeViews$Posix; -Lsun/nio/fs/UnixFileAttributeViews; -Lsun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes; -Lsun/nio/fs/UnixFileAttributes; -Lsun/nio/fs/UnixFileKey; -Lsun/nio/fs/UnixFileModeAttribute; -Lsun/nio/fs/UnixFileStoreAttributes; -Lsun/nio/fs/UnixFileSystem; -Lsun/nio/fs/UnixFileSystemProvider$3; -Lsun/nio/fs/UnixFileSystemProvider; -Lsun/nio/fs/UnixMountEntry; -Lsun/nio/fs/UnixNativeDispatcher; -Lsun/nio/fs/UnixSecureDirectoryStream; -Lsun/nio/fs/Util; -Lsun/reflect/Reflection; -Lsun/reflect/misc/ReflectUtil; -Lsun/security/action/GetBooleanAction; -Lsun/security/action/GetIntegerAction; -Lsun/security/action/GetPropertyAction; -Lsun/security/jca/GetInstance$Instance-IA; -Lsun/security/jca/GetInstance$Instance; -Lsun/security/jca/GetInstance; -Lsun/security/jca/JCAUtil$CachedSecureRandomHolder; -Lsun/security/jca/JCAUtil; -Lsun/security/jca/ProviderConfig$1; -Lsun/security/jca/ProviderConfig$2; -Lsun/security/jca/ProviderConfig$3; -Lsun/security/jca/ProviderConfig; -Lsun/security/jca/ProviderList$1; -Lsun/security/jca/ProviderList$2; -Lsun/security/jca/ProviderList$3; -Lsun/security/jca/ProviderList$ServiceList$1; -Lsun/security/jca/ProviderList$ServiceList; -Lsun/security/jca/ProviderList; -Lsun/security/jca/Providers; -Lsun/security/jca/ServiceId; -Lsun/security/pkcs/ContentInfo; -Lsun/security/pkcs/ESSCertId; -Lsun/security/pkcs/PKCS7$VerbatimX509Certificate; -Lsun/security/pkcs/PKCS7$WrappedX509Certificate; -Lsun/security/pkcs/PKCS7; -Lsun/security/pkcs/PKCS9Attribute; -Lsun/security/pkcs/PKCS9Attributes; -Lsun/security/pkcs/ParsingException; -Lsun/security/pkcs/SignerInfo; -Lsun/security/provider/CertPathProvider; -Lsun/security/provider/X509Factory; -Lsun/security/provider/certpath/AdaptableX509CertSelector; -Lsun/security/provider/certpath/AlgorithmChecker; -Lsun/security/provider/certpath/BasicChecker; -Lsun/security/provider/certpath/CertId; -Lsun/security/provider/certpath/CertPathHelper; -Lsun/security/provider/certpath/ConstraintsChecker; -Lsun/security/provider/certpath/KeyChecker; -Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus; -Lsun/security/provider/certpath/OCSP$RevocationStatus; -Lsun/security/provider/certpath/OCSP; -Lsun/security/provider/certpath/OCSPResponse$ResponseStatus; -Lsun/security/provider/certpath/OCSPResponse$SingleResponse-IA; -Lsun/security/provider/certpath/OCSPResponse$SingleResponse; -Lsun/security/provider/certpath/OCSPResponse; -Lsun/security/provider/certpath/PKIX$ValidatorParams; -Lsun/security/provider/certpath/PKIX; -Lsun/security/provider/certpath/PKIXCertPathValidator; -Lsun/security/provider/certpath/PKIXMasterCertPathValidator; -Lsun/security/provider/certpath/PolicyChecker; -Lsun/security/provider/certpath/PolicyNodeImpl; -Lsun/security/provider/certpath/RevocationChecker$1; -Lsun/security/provider/certpath/RevocationChecker$2; -Lsun/security/provider/certpath/RevocationChecker$Mode; -Lsun/security/provider/certpath/RevocationChecker$RevocationProperties-IA; -Lsun/security/provider/certpath/RevocationChecker$RevocationProperties; -Lsun/security/provider/certpath/RevocationChecker; -Lsun/security/timestamp/TimestampToken; -Lsun/security/util/AbstractAlgorithmConstraints$1; -Lsun/security/util/AbstractAlgorithmConstraints; -Lsun/security/util/AlgorithmDecomposer; -Lsun/security/util/AnchorCertificates$1; -Lsun/security/util/AnchorCertificates; -Lsun/security/util/BitArray; -Lsun/security/util/ByteArrayLexOrder; -Lsun/security/util/ByteArrayTagOrder; -Lsun/security/util/Cache$EqualByteArray; -Lsun/security/util/Cache; -Lsun/security/util/CertConstraintParameters; -Lsun/security/util/Debug; -Lsun/security/util/DerEncoder; -Lsun/security/util/DerIndefLenConverter; -Lsun/security/util/DerInputBuffer; -Lsun/security/util/DerInputStream; -Lsun/security/util/DerOutputStream; -Lsun/security/util/DerValue; -Lsun/security/util/DisabledAlgorithmConstraints$Constraint$Operator; -Lsun/security/util/DisabledAlgorithmConstraints$Constraint-IA; -Lsun/security/util/DisabledAlgorithmConstraints$Constraint; -Lsun/security/util/DisabledAlgorithmConstraints$Constraints; -Lsun/security/util/DisabledAlgorithmConstraints$KeySizeConstraint; -Lsun/security/util/DisabledAlgorithmConstraints$jdkCAConstraint; -Lsun/security/util/DisabledAlgorithmConstraints; -Lsun/security/util/FilePaths; -Lsun/security/util/KeyUtil; -Lsun/security/util/Length; -Lsun/security/util/ManifestDigester$Entry; -Lsun/security/util/ManifestDigester$Position; -Lsun/security/util/ManifestDigester; -Lsun/security/util/ManifestEntryVerifier$SunProviderHolder; -Lsun/security/util/ManifestEntryVerifier; -Lsun/security/util/MemoryCache$CacheEntry; -Lsun/security/util/MemoryCache$HardCacheEntry; -Lsun/security/util/MemoryCache$SoftCacheEntry; -Lsun/security/util/MemoryCache; -Lsun/security/util/ObjectIdentifier; -Lsun/security/util/PropertyExpander; -Lsun/security/util/Resources; -Lsun/security/util/ResourcesMgr$1; -Lsun/security/util/ResourcesMgr; -Lsun/security/util/SecurityConstants; -Lsun/security/util/SignatureFileVerifier; -Lsun/security/x509/AVA; -Lsun/security/x509/AVAComparator; -Lsun/security/x509/AVAKeyword; -Lsun/security/x509/AccessDescription; -Lsun/security/x509/AlgorithmId; -Lsun/security/x509/AuthorityInfoAccessExtension; -Lsun/security/x509/AuthorityKeyIdentifierExtension; -Lsun/security/x509/BasicConstraintsExtension; -Lsun/security/x509/CRLDistributionPointsExtension; -Lsun/security/x509/CRLNumberExtension; -Lsun/security/x509/CRLReasonCodeExtension; -Lsun/security/x509/CertAttrSet; -Lsun/security/x509/CertificateAlgorithmId; -Lsun/security/x509/CertificateExtensions; -Lsun/security/x509/CertificateIssuerExtension; -Lsun/security/x509/CertificatePoliciesExtension; -Lsun/security/x509/CertificatePolicyId; -Lsun/security/x509/CertificatePolicyMap; -Lsun/security/x509/CertificatePolicySet; -Lsun/security/x509/CertificateSerialNumber; -Lsun/security/x509/CertificateValidity; -Lsun/security/x509/CertificateVersion; -Lsun/security/x509/CertificateX509Key; -Lsun/security/x509/DNSName; -Lsun/security/x509/DeltaCRLIndicatorExtension; -Lsun/security/x509/DistributionPoint; -Lsun/security/x509/EDIPartyName; -Lsun/security/x509/ExtendedKeyUsageExtension; -Lsun/security/x509/Extension; -Lsun/security/x509/FreshestCRLExtension; -Lsun/security/x509/GeneralName; -Lsun/security/x509/GeneralNameInterface; -Lsun/security/x509/GeneralNames; -Lsun/security/x509/IPAddressName; -Lsun/security/x509/InhibitAnyPolicyExtension; -Lsun/security/x509/IssuerAlternativeNameExtension; -Lsun/security/x509/IssuingDistributionPointExtension; -Lsun/security/x509/KeyIdentifier; -Lsun/security/x509/KeyUsageExtension; -Lsun/security/x509/NameConstraintsExtension; -Lsun/security/x509/NetscapeCertTypeExtension$MapEntry; -Lsun/security/x509/NetscapeCertTypeExtension; -Lsun/security/x509/OCSPNoCheckExtension; -Lsun/security/x509/OIDMap$OIDInfo; -Lsun/security/x509/OIDMap; -Lsun/security/x509/OIDName; -Lsun/security/x509/OtherName; -Lsun/security/x509/PKIXExtensions; -Lsun/security/x509/PolicyConstraintsExtension; -Lsun/security/x509/PolicyInformation; -Lsun/security/x509/PolicyMappingsExtension; -Lsun/security/x509/PrivateKeyUsageExtension; -Lsun/security/x509/RDN; -Lsun/security/x509/RFC822Name; -Lsun/security/x509/SerialNumber; -Lsun/security/x509/SubjectAlternativeNameExtension; -Lsun/security/x509/SubjectInfoAccessExtension; -Lsun/security/x509/SubjectKeyIdentifierExtension; -Lsun/security/x509/URIName; -Lsun/security/x509/UniqueIdentity; -Lsun/security/x509/UnparseableExtension; -Lsun/security/x509/X500Name$1; -Lsun/security/x509/X500Name; -Lsun/security/x509/X509AttributeName; -Lsun/security/x509/X509CRLImpl; -Lsun/security/x509/X509CertImpl; -Lsun/security/x509/X509CertInfo; -Lsun/security/x509/X509Key; -Lsun/util/calendar/AbstractCalendar; -Lsun/util/calendar/BaseCalendar$Date; -Lsun/util/calendar/BaseCalendar; -Lsun/util/calendar/CalendarDate; -Lsun/util/calendar/CalendarSystem$GregorianHolder; -Lsun/util/calendar/CalendarSystem; -Lsun/util/calendar/CalendarUtils; -Lsun/util/calendar/Era; -Lsun/util/calendar/Gregorian$Date; -Lsun/util/calendar/Gregorian; -Lsun/util/calendar/ImmutableGregorianDate; -Lsun/util/calendar/JulianCalendar$Date; -Lsun/util/calendar/JulianCalendar; -Lsun/util/calendar/LocalGregorianCalendar; -Lsun/util/locale/BaseLocale$Cache; -Lsun/util/locale/BaseLocale$Key-IA; -Lsun/util/locale/BaseLocale$Key; -Lsun/util/locale/BaseLocale-IA; -Lsun/util/locale/BaseLocale; -Lsun/util/locale/Extension; -Lsun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar-IA; -Lsun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar; -Lsun/util/locale/InternalLocaleBuilder; -Lsun/util/locale/LanguageTag; -Lsun/util/locale/LocaleExtensions; -Lsun/util/locale/LocaleMatcher; -Lsun/util/locale/LocaleObjectCache$CacheEntry; -Lsun/util/locale/LocaleObjectCache; -Lsun/util/locale/LocaleSyntaxException; -Lsun/util/locale/LocaleUtils; -Lsun/util/locale/ParseStatus; -Lsun/util/locale/StringTokenIterator; -Lsun/util/locale/UnicodeLocaleExtension; -Lsun/util/locale/provider/CalendarDataUtility; -Lsun/util/logging/LoggingProxy; -Lsun/util/logging/LoggingSupport$1; -Lsun/util/logging/LoggingSupport$2; -Lsun/util/logging/LoggingSupport; -Lsun/util/logging/PlatformLogger$1; -Lsun/util/logging/PlatformLogger$DefaultLoggerProxy; -Lsun/util/logging/PlatformLogger$JavaLoggerProxy; -Lsun/util/logging/PlatformLogger$Level; -Lsun/util/logging/PlatformLogger$LoggerProxy; -Lsun/util/logging/PlatformLogger; -[B -[C -[D -[F -[I -[J -[Landroid/accounts/Account; -[Landroid/accounts/AuthenticatorDescription; -[Landroid/animation/Animator; -[Landroid/animation/Keyframe$FloatKeyframe; -[Landroid/animation/Keyframe$IntKeyframe; -[Landroid/animation/Keyframe$ObjectKeyframe; -[Landroid/animation/Keyframe; -[Landroid/animation/PropertyValuesHolder; -[Landroid/app/AppOpInfo; -[Landroid/app/BackStackState; -[Landroid/app/FragmentState; -[Landroid/app/LoaderManagerImpl; -[Landroid/app/Notification$Action; -[Landroid/app/NotificationChannel; -[Landroid/app/NotificationChannelGroup; -[Landroid/app/Person; -[Landroid/app/RemoteInput; -[Landroid/app/RemoteInputHistoryItem; -[Landroid/app/VoiceInteractor$Request; -[Landroid/app/admin/PasswordMetrics$ComplexityBucket; -[Landroid/app/assist/AssistStructure$ViewNode; -[Landroid/app/job/JobInfo$TriggerContentUri; -[Landroid/app/slice/SliceItem; -[Landroid/app/slice/SliceSpec; -[Landroid/audio/policy/configuration/V7_0/AudioUsage; -[Landroid/content/AttributionSourceState; -[Landroid/content/ComponentCallbacks; -[Landroid/content/ComponentName; -[Landroid/content/ContentProviderResult; -[Landroid/content/ContentValues; -[Landroid/content/Intent; -[Landroid/content/IntentFilter; -[Landroid/content/SyncAdapterType; -[Landroid/content/UndoOwner; -[Landroid/content/pm/ActivityInfo; -[Landroid/content/pm/Attribution; -[Landroid/content/pm/ConfigurationInfo; -[Landroid/content/pm/FeatureGroupInfo; -[Landroid/content/pm/FeatureInfo; -[Landroid/content/pm/InstrumentationInfo; -[Landroid/content/pm/PackageParser$NewPermissionInfo; -[Landroid/content/pm/PackagePartitions$SystemPartition; -[Landroid/content/pm/PathPermission; -[Landroid/content/pm/PermissionInfo; -[Landroid/content/pm/ProviderInfo; -[Landroid/content/pm/ServiceInfo; -[Landroid/content/pm/SharedLibraryInfo; -[Landroid/content/pm/Signature; -[Landroid/content/pm/VerifierInfo; -[Landroid/content/res/ApkAssets; -[Landroid/content/res/ColorStateList; -[Landroid/content/res/Configuration; -[Landroid/content/res/FontResourcesParser$FontFileResourceEntry; -[Landroid/content/res/XmlBlock; -[Landroid/content/res/loader/ResourcesLoader; -[Landroid/content/res/loader/ResourcesProvider; -[Landroid/database/Cursor; -[Landroid/database/CursorWindow; -[Landroid/database/sqlite/SQLiteConnection$Operation; -[Landroid/database/sqlite/SQLiteConnectionPool$AcquiredConnectionStatus; -[Landroid/graphics/Bitmap$CompressFormat; -[Landroid/graphics/Bitmap$Config; -[Landroid/graphics/Bitmap; -[Landroid/graphics/BlendMode; -[Landroid/graphics/BlurMaskFilter$Blur; -[Landroid/graphics/Canvas$EdgeType; -[Landroid/graphics/ColorSpace$Adaptation; -[Landroid/graphics/ColorSpace$Model; -[Landroid/graphics/ColorSpace$Named; -[Landroid/graphics/ColorSpace$RenderIntent; -[Landroid/graphics/ColorSpace; -[Landroid/graphics/Insets; -[Landroid/graphics/Interpolator$Result; -[Landroid/graphics/Matrix$ScaleToFit; -[Landroid/graphics/Matrix; -[Landroid/graphics/Paint$Align; -[Landroid/graphics/Paint$Cap; -[Landroid/graphics/Paint$Join; -[Landroid/graphics/Paint$Style; -[Landroid/graphics/Path$Direction; -[Landroid/graphics/Path$FillType; -[Landroid/graphics/Path$Op; -[Landroid/graphics/Point; -[Landroid/graphics/PointF; -[Landroid/graphics/PorterDuff$Mode; -[Landroid/graphics/Rect; -[Landroid/graphics/Region$Op; -[Landroid/graphics/RenderNode$PositionUpdateListener; -[Landroid/graphics/Shader$TileMode; -[Landroid/graphics/Typeface; -[Landroid/graphics/drawable/AdaptiveIconDrawable$ChildDrawable; -[Landroid/graphics/drawable/Drawable; -[Landroid/graphics/drawable/GradientDrawable$Orientation; -[Landroid/graphics/drawable/LayerDrawable$ChildDrawable; -[Landroid/graphics/drawable/RippleForeground; -[Landroid/graphics/fonts/FontVariationAxis; -[Landroid/hardware/CameraStatus; -[Landroid/hardware/biometrics/BiometricSourceType; -[Landroid/hardware/camera2/CameraCharacteristics$Key; -[Landroid/hardware/camera2/marshal/MarshalQueryable; -[Landroid/hardware/camera2/params/Capability; -[Landroid/hardware/camera2/params/Face; -[Landroid/hardware/camera2/params/HighSpeedVideoConfiguration; -[Landroid/hardware/camera2/params/LensIntrinsicsSample; -[Landroid/hardware/camera2/params/MandatoryStreamCombination$ReprocessType; -[Landroid/hardware/camera2/params/MandatoryStreamCombination$SizeThreshold; -[Landroid/hardware/camera2/params/MandatoryStreamCombination$StreamCombinationTemplate; -[Landroid/hardware/camera2/params/MandatoryStreamCombination$StreamTemplate; -[Landroid/hardware/camera2/params/MandatoryStreamCombination; -[Landroid/hardware/camera2/params/MeteringRectangle; -[Landroid/hardware/camera2/params/OisSample; -[Landroid/hardware/camera2/params/RecommendedStreamConfiguration; -[Landroid/hardware/camera2/params/StreamConfiguration; -[Landroid/hardware/camera2/params/StreamConfigurationDuration; -[Landroid/hardware/camera2/utils/ConcurrentCameraIdCombination; -[Landroid/hardware/display/WifiDisplay; -[Landroid/hardware/location/MemoryRegion; -[Landroid/hardware/location/NanoAppRpcService; -[Landroid/hardware/security/keymint/KeyParameter; -[Landroid/icu/impl/CacheValue$Strength; -[Landroid/icu/impl/CacheValue; -[Landroid/icu/impl/CalType; -[Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingPattern; -[Landroid/icu/impl/CurrencyData$CurrencySpacingInfo$SpacingType; -[Landroid/icu/impl/DayPeriodRules$CutoffType; -[Landroid/icu/impl/DayPeriodRules$DayPeriod; -[Landroid/icu/impl/DayPeriodRules; -[Landroid/icu/impl/ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$CurrencySink$EntrypointTable; -[Landroid/icu/impl/ICUResourceBundle$OpenType; -[Landroid/icu/impl/LocaleDisplayNamesImpl$CapitalizationContextUsage; -[Landroid/icu/impl/LocaleDisplayNamesImpl$DataTableType; -[Landroid/icu/impl/StandardPlural; -[Landroid/icu/impl/StaticUnicodeSets$Key; -[Landroid/icu/impl/TimeZoneGenericNames$GenericNameType; -[Landroid/icu/impl/TimeZoneGenericNames$Pattern; -[Landroid/icu/impl/TimeZoneNamesImpl$ZNames$NameTypeIndex; -[Landroid/icu/impl/Trie2$ValueWidth; -[Landroid/icu/impl/UCharacterName$AlgorithmName; -[Landroid/icu/impl/UCharacterProperty$BinaryProperty; -[Landroid/icu/impl/UCharacterProperty$IntProperty; -[Landroid/icu/impl/ValidIdentifiers$Datasubtype; -[Landroid/icu/impl/ValidIdentifiers$Datatype; -[Landroid/icu/impl/coll/CollationRuleParser$Position; -[Landroid/icu/impl/coll/FCDIterCollationIterator$State; -[Landroid/icu/impl/duration/TimeUnit; -[Landroid/icu/impl/locale/KeyTypeData$KeyInfoType; -[Landroid/icu/impl/locale/KeyTypeData$SpecialType; -[Landroid/icu/impl/locale/KeyTypeData$TypeInfoType; -[Landroid/icu/impl/locale/KeyTypeData$ValueType; -[Landroid/icu/impl/locale/LSR; -[Landroid/icu/impl/locale/LocaleValidityChecker$SpecialCase; -[Landroid/icu/impl/number/CompactData$CompactType; -[Landroid/icu/impl/number/DecimalFormatProperties$ParseMode; -[Landroid/icu/impl/number/Modifier$Signum; -[Landroid/icu/impl/number/Modifier; -[Landroid/icu/impl/number/Padder$PadPosition; -[Landroid/icu/impl/number/PatternStringUtils$PatternSignType; -[Landroid/icu/impl/units/MeasureUnitImpl$CompoundPart; -[Landroid/icu/impl/units/MeasureUnitImpl$InitialCompoundPart; -[Landroid/icu/impl/units/MeasureUnitImpl$PowerPart; -[Landroid/icu/impl/units/MeasureUnitImpl$UnitsParser$Token$Type; -[Landroid/icu/lang/UCharacter$IdentifierType; -[Landroid/icu/lang/UCharacter$UnicodeBlock; -[Landroid/icu/lang/UScript$ScriptUsage; -[Landroid/icu/lang/UScriptRun$ParenStackEntry; -[Landroid/icu/number/NumberFormatter$DecimalSeparatorDisplay; -[Landroid/icu/number/NumberFormatter$GroupingStrategy; -[Landroid/icu/number/NumberFormatter$RoundingPriority; -[Landroid/icu/number/NumberFormatter$SignDisplay; -[Landroid/icu/number/NumberFormatter$TrailingZeroDisplay; -[Landroid/icu/number/NumberFormatter$UnitWidth; -[Landroid/icu/number/NumberRangeFormatter$RangeCollapse; -[Landroid/icu/number/NumberRangeFormatter$RangeIdentityFallback; -[Landroid/icu/number/NumberRangeFormatter$RangeIdentityResult; -[Landroid/icu/number/NumberSkeletonImpl$ParseState; -[Landroid/icu/number/NumberSkeletonImpl$StemEnum; -[Landroid/icu/text/AlphabeticIndex$Bucket$LabelType; -[Landroid/icu/text/Bidi$IsoRun; -[Landroid/icu/text/Bidi$Isolate; -[Landroid/icu/text/Bidi$Opening; -[Landroid/icu/text/Bidi$Point; -[Landroid/icu/text/BidiRun; -[Landroid/icu/text/BidiTransform$Mirroring; -[Landroid/icu/text/BidiTransform$Order; -[Landroid/icu/text/BidiTransform$ReorderingScheme; -[Landroid/icu/text/CharsetRecog_sbcs$NGramsPlusLang; -[Landroid/icu/text/CompactDecimalFormat$CompactStyle; -[Landroid/icu/text/ConstrainedFieldPosition$ConstraintType; -[Landroid/icu/text/DateFormat$BooleanAttribute; -[Landroid/icu/text/DateFormat$Field; -[Landroid/icu/text/DateFormat$HourCycle; -[Landroid/icu/text/DateFormatSymbols$CalendarDataSink$AliasType; -[Landroid/icu/text/DateFormatSymbols$CapitalizationContextUsage; -[Landroid/icu/text/DateTimePatternGenerator$DTPGflags; -[Landroid/icu/text/DateTimePatternGenerator$DisplayWidth; -[Landroid/icu/text/DisplayContext$Type; -[Landroid/icu/text/DisplayContext; -[Landroid/icu/text/IDNA$Error; -[Landroid/icu/text/ListFormatter$Type; -[Landroid/icu/text/ListFormatter$Width; -[Landroid/icu/text/LocaleDisplayNames$DialectHandling; -[Landroid/icu/text/MeasureFormat$FormatWidth; -[Landroid/icu/text/MessagePattern$ApostropheMode; -[Landroid/icu/text/MessagePattern$ArgType; -[Landroid/icu/text/MessagePattern$Part$Type; -[Landroid/icu/text/MessagePatternUtil$MessageContentsNode$Type; -[Landroid/icu/text/Normalizer2$Mode; -[Landroid/icu/text/PluralRules$KeywordStatus; -[Landroid/icu/text/PluralRules$Operand; -[Landroid/icu/text/PluralRules$PluralType; -[Landroid/icu/text/PluralRules$SampleType; -[Landroid/icu/text/RBBIRuleParseTable$RBBIRuleTableElement; -[Landroid/icu/text/RelativeDateTimeFormatter$AbsoluteUnit; -[Landroid/icu/text/RelativeDateTimeFormatter$Direction; -[Landroid/icu/text/RelativeDateTimeFormatter$RelDateTimeDataSink$DateTimeUnit; -[Landroid/icu/text/RelativeDateTimeFormatter$RelativeDateTimeUnit; -[Landroid/icu/text/RelativeDateTimeFormatter$RelativeUnit; -[Landroid/icu/text/RelativeDateTimeFormatter$Style; -[Landroid/icu/text/SearchIterator$ElementComparisonType; -[Landroid/icu/text/SimpleDateFormat$ContextValue; -[Landroid/icu/text/SpoofChecker$RestrictionLevel; -[Landroid/icu/text/TimeZoneFormat$GMTOffsetPatternType; -[Landroid/icu/text/TimeZoneFormat$OffsetFields; -[Landroid/icu/text/TimeZoneFormat$ParseOption; -[Landroid/icu/text/TimeZoneFormat$Style; -[Landroid/icu/text/TimeZoneFormat$TimeType; -[Landroid/icu/text/TimeZoneNames$NameType; -[Landroid/icu/text/UnicodeSet$ComparisonStyle; -[Landroid/icu/text/UnicodeSet$SpanCondition; -[Landroid/icu/text/UnicodeSet; -[Landroid/icu/text/UnicodeSetSpanner$CountMethod; -[Landroid/icu/text/UnicodeSetSpanner$TrimOption; -[Landroid/icu/util/BasicTimeZone$LocalOption; -[Landroid/icu/util/BytesTrie$Result; -[Landroid/icu/util/CodePointMap$RangeOption; -[Landroid/icu/util/CodePointMap; -[Landroid/icu/util/CodePointTrie$Type; -[Landroid/icu/util/CodePointTrie$ValueWidth; -[Landroid/icu/util/Currency$CurrencyUsage; -[Landroid/icu/util/GenderInfo$Gender; -[Landroid/icu/util/GenderInfo$ListGenderStyle; -[Landroid/icu/util/Holiday; -[Landroid/icu/util/IslamicCalendar$CalculationType; -[Landroid/icu/util/LocaleMatcher$Demotion; -[Landroid/icu/util/LocaleMatcher$Direction; -[Landroid/icu/util/LocaleMatcher$FavorSubtag; -[Landroid/icu/util/Measure; -[Landroid/icu/util/MeasureUnit$Complexity; -[Landroid/icu/util/MeasureUnit$MeasurePrefix; -[Landroid/icu/util/Region$RegionType; -[Landroid/icu/util/StringTrieBuilder$Node; -[Landroid/icu/util/StringTrieBuilder$Option; -[Landroid/icu/util/StringTrieBuilder$State; -[Landroid/icu/util/TimeArrayTimeZoneRule; -[Landroid/icu/util/TimeZone$SystemTimeZoneType; -[Landroid/icu/util/TimeZoneRule; -[Landroid/icu/util/ULocale$AvailableType; -[Landroid/icu/util/ULocale$Category; -[Landroid/icu/util/ULocale$Minimize; -[Landroid/icu/util/ULocale; -[Landroid/icu/util/UResourceBundle$RootType; -[Landroid/icu/util/UniversalTimeScale$TimeScaleData; -[Landroid/media/AudioAttributes; -[Landroid/media/AudioDeviceInfo; -[Landroid/media/AudioGain; -[Landroid/media/AudioPatch; -[Landroid/media/AudioPort; -[Landroid/media/AudioPortConfig; -[Landroid/media/DrmInitData$SchemeInitData; -[Landroid/media/ExifInterface$ExifTag; -[Landroid/media/ImageReader$SurfaceImage$SurfacePlane; -[Landroid/media/ImageWriter$WriterSurfaceImage$SurfacePlane; -[Landroid/media/MediaCodecInfo$CodecCapabilities; -[Landroid/media/MediaCodecInfo$CodecProfileLevel; -[Landroid/media/MediaCodecInfo$Feature; -[Landroid/media/MediaCodecInfo; -[Landroid/media/MediaPlayer$TrackInfo; -[Landroid/media/MediaTimeProvider$OnMediaTimeListener; -[Landroid/media/audiopolicy/AudioProductStrategy$AudioAttributesGroup; -[Landroid/net/LocalSocketAddress$Namespace; -[Landroid/net/NetworkKey; -[Landroid/net/Uri; -[Landroid/net/rtp/AudioCodec; -[Landroid/os/AsyncTask$Status; -[Landroid/os/BatteryConsumer$Key; -[Landroid/os/BatteryStats$BitDescription; -[Landroid/os/BatteryStats$IntToString; -[Landroid/os/BatteryStats$LongCounter; -[Landroid/os/Bundle; -[Landroid/os/DdmSyncState$Stage; -[Landroid/os/Debug$MemoryInfo; -[Landroid/os/IBinder; -[Landroid/os/MessageQueue$IdleHandler; -[Landroid/os/ParcelFileDescriptor; -[Landroid/os/ParcelUuid; -[Landroid/os/Parcelable; -[Landroid/os/PatternMatcher; -[Landroid/os/PersistableBundle; -[Landroid/os/SystemService$State; -[Landroid/os/Temperature; -[Landroid/os/UserHandle; -[Landroid/os/VibratorInfo; -[Landroid/os/health/HealthKeys$SortedIntArray; -[Landroid/os/storage/DiskInfo; -[Landroid/os/storage/StorageVolume; -[Landroid/os/storage/VolumeInfo; -[Landroid/os/storage/VolumeRecord; -[Landroid/os/vibrator/VibrationEffectSegment; -[Landroid/provider/FontsContract$FontInfo; -[Landroid/renderscript/Element$DataKind; -[Landroid/renderscript/Element$DataType; -[Landroid/renderscript/RenderScript$ContextType; -[Landroid/service/notification/NotificationListenerService$Ranking; -[Landroid/service/notification/StatusBarNotification; -[Landroid/service/notification/ZenModeConfig$ZenRule; -[Landroid/service/wallpaper/EngineWindowPage; -[Landroid/sysprop/CryptoProperties$state_values; -[Landroid/sysprop/CryptoProperties$type_values; -[Landroid/system/StructCapUserData; -[Landroid/system/StructIfaddrs; -[Landroid/system/StructPollfd; -[Landroid/system/keystore2/Authorization; -[Landroid/system/suspend/internal/WakeLockInfo; -[Landroid/telephony/ActivityStatsTechSpecificInfo; -[Landroid/telephony/LocationAccessPolicy$LocationPermissionResult; -[Landroid/telephony/SmsMessage$MessageClass; -[Landroid/telephony/SubscriptionPlan; -[Landroid/telephony/TelephonyManager$MultiSimVariants; -[Landroid/telephony/UiccAccessRule; -[Landroid/telephony/gsm/SmsMessage$MessageClass; -[Landroid/text/DynamicLayout$ChangeWatcher; -[Landroid/text/InputFilter; -[Landroid/text/Layout$Alignment; -[Landroid/text/Layout$Directions; -[Landroid/text/PrecomputedText$ParagraphInfo; -[Landroid/text/Selection$MemoryTextWatcher; -[Landroid/text/SpanWatcher; -[Landroid/text/TextLine; -[Landroid/text/TextUtils$TruncateAt; -[Landroid/text/TextWatcher; -[Landroid/text/method/MultiTapKeyListener; -[Landroid/text/method/QwertyKeyListener$Replaced; -[Landroid/text/method/QwertyKeyListener; -[Landroid/text/method/TextKeyListener$Capitalize; -[Landroid/text/method/TextKeyListener; -[Landroid/text/method/Touch$DragState; -[Landroid/text/style/AlignmentSpan; -[Landroid/text/style/CharacterStyle; -[Landroid/text/style/ClickableSpan; -[Landroid/text/style/LeadingMarginSpan; -[Landroid/text/style/LineBackgroundSpan; -[Landroid/text/style/LineBreakConfigSpan; -[Landroid/text/style/LineHeightSpan; -[Landroid/text/style/MetricAffectingSpan; -[Landroid/text/style/ParagraphStyle; -[Landroid/text/style/ReplacementSpan; -[Landroid/text/style/SpellCheckSpan; -[Landroid/text/style/SuggestionSpan; -[Landroid/text/style/TabStopSpan; -[Landroid/text/style/URLSpan; -[Landroid/util/ArrayMap; -[Landroid/util/DataUnit; -[Landroid/util/JsonScope; -[Landroid/util/JsonToken; -[Landroid/util/LongSparseArray; -[Landroid/util/Pair; -[Landroid/util/Range; -[Landroid/util/Rational; -[Landroid/util/Size; -[Landroid/util/SparseIntArray; -[Landroid/util/Xml$Encoding; -[Landroid/util/apk/DataSource; -[Landroid/view/AppTransitionAnimationSpec; -[Landroid/view/Choreographer$CallbackQueue; -[Landroid/view/Choreographer$FrameTimeline; -[Landroid/view/Display$Mode; -[Landroid/view/Display; -[Landroid/view/DisplayEventReceiver$VsyncEventData$FrameTimeline; -[Landroid/view/HandlerActionQueue$HandlerAction; -[Landroid/view/InsetsFrameProvider; -[Landroid/view/InsetsSource; -[Landroid/view/InsetsSourceControl; -[Landroid/view/MenuItem; -[Landroid/view/MotionEvent$PointerCoords; -[Landroid/view/MotionEvent$PointerProperties; -[Landroid/view/RemoteAnimationTarget; -[Landroid/view/RoundedCorner; -[Landroid/view/SurfaceControl$DisplayMode; -[Landroid/view/SurfaceHolder$Callback; -[Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams; -[Landroid/view/View$AttachInfo$InvalidateInfo; -[Landroid/view/View; -[Landroid/view/WindowManager$LayoutParams; -[Landroid/view/accessibility/CaptioningManager$CaptionStyle; -[Landroid/view/autofill/AutofillId; -[Landroid/view/inputmethod/CompletionInfo; -[Landroid/view/inputmethod/InputMethodSubtype; -[Landroid/view/textservice/SentenceSuggestionsInfo; -[Landroid/view/textservice/SuggestionsInfo; -[Landroid/view/textservice/TextInfo; -[Landroid/webkit/ConsoleMessage$MessageLevel; -[Landroid/webkit/FindAddress$ZipRange; -[Landroid/webkit/WebMessagePort; -[Landroid/webkit/WebSettings$LayoutAlgorithm; -[Landroid/webkit/WebSettings$PluginState; -[Landroid/webkit/WebSettings$RenderPriority; -[Landroid/webkit/WebSettings$ZoomDensity; -[Landroid/widget/Editor$TextRenderNode; -[Landroid/widget/Editor$TextViewPositionListener; -[Landroid/widget/GridLayout$Arc; -[Landroid/widget/GridLayout$Bounds; -[Landroid/widget/GridLayout$Interval; -[Landroid/widget/GridLayout$MutableInt; -[Landroid/widget/GridLayout$Spec; -[Landroid/widget/ImageView$ScaleType; -[Landroid/widget/SpellChecker$RemoveReason; -[Landroid/widget/SpellChecker$SpellParser; -[Landroid/widget/TextView$BufferType; -[Landroid/widget/TextView$ChangeWatcher; -[Landroid/window/BackTouchTracker$TouchTrackerState; -[Landroid/window/TransitionFilter$Requirement; -[Lcom/android/framework/protobuf/GeneratedMessageLite$MethodToInvoke; -[Lcom/android/framework/protobuf/MessageInfoFactory; -[Lcom/android/framework/protobuf/ProtoSyntax; -[Lcom/android/i18n/phonenumbers/NumberParseException$ErrorType; -[Lcom/android/i18n/phonenumbers/PhoneNumberMatcher$State; -[Lcom/android/i18n/phonenumbers/PhoneNumberUtil$Leniency; -[Lcom/android/i18n/phonenumbers/PhoneNumberUtil$MatchType; -[Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberFormat; -[Lcom/android/i18n/phonenumbers/PhoneNumberUtil$PhoneNumberType; -[Lcom/android/i18n/phonenumbers/PhoneNumberUtil$ValidationResult; -[Lcom/android/i18n/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -[Lcom/android/i18n/phonenumbers/ShortNumberInfo$ShortNumberCost; -[Lcom/android/internal/app/ResolverActivity$ActionTitle; -[Lcom/android/internal/graphics/drawable/BackgroundBlurDrawable$BlurRegion; -[Lcom/android/internal/os/PowerProfile$CpuClusterKey; -[Lcom/android/internal/os/ZygoteServer$UsapPoolRefillAction; -[Lcom/android/internal/policy/PhoneWindow$PanelFeatureState; -[Lcom/android/internal/protolog/ProtoLogGroup; -[Lcom/android/internal/statusbar/LetterboxDetails; -[Lcom/android/internal/statusbar/NotificationVisibility$NotificationLocation; -[Lcom/android/internal/telephony/Call$SrvccState; -[Lcom/android/internal/telephony/Call$State; -[Lcom/android/internal/telephony/CommandException$Error; -[Lcom/android/internal/telephony/Connection$PostDialState; -[Lcom/android/internal/telephony/DctConstants$Activity; -[Lcom/android/internal/telephony/DctConstants$State; -[Lcom/android/internal/telephony/DriverCall$State; -[Lcom/android/internal/telephony/IccCardConstants$State; -[Lcom/android/internal/telephony/MmiCode$State; -[Lcom/android/internal/telephony/OperatorInfo$State; -[Lcom/android/internal/telephony/Phone; -[Lcom/android/internal/telephony/PhoneConstants$DataState; -[Lcom/android/internal/telephony/PhoneConstants$State; -[Lcom/android/internal/telephony/PhoneInternalInterface$DataActivityState; -[Lcom/android/internal/telephony/PhoneInternalInterface$SuppService; -[Lcom/android/internal/telephony/SmsConstants$MessageClass; -[Lcom/android/internal/telephony/cat/AppInterface$CommandType; -[Lcom/android/internal/telephony/cat/ComprehensionTlvTag; -[Lcom/android/internal/telephony/cat/Duration$TimeUnit; -[Lcom/android/internal/telephony/cat/FontSize; -[Lcom/android/internal/telephony/cat/LaunchBrowserMode; -[Lcom/android/internal/telephony/cat/PresentationType; -[Lcom/android/internal/telephony/cat/ResultCode; -[Lcom/android/internal/telephony/cat/TextAlignment; -[Lcom/android/internal/telephony/cat/TextColor; -[Lcom/android/internal/telephony/cat/Tone; -[Lcom/android/internal/telephony/gsm/SsData$RequestType; -[Lcom/android/internal/telephony/gsm/SsData$ServiceType; -[Lcom/android/internal/telephony/gsm/SsData$TeleserviceType; -[Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$HoldSwapState; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularDataServiceSwitch; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularServiceState; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$DataCallSession; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationStats; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationTermination; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$IncomingSms; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequests; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingSms; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallRatUsage; -[Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallSession; -[Lcom/android/internal/telephony/phonenumbers/NumberParseException$ErrorType; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberMatcher$State; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$Leniency; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$MatchType; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$PhoneNumberFormat; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$PhoneNumberType; -[Lcom/android/internal/telephony/phonenumbers/PhoneNumberUtil$ValidationResult; -[Lcom/android/internal/telephony/phonenumbers/Phonenumber$PhoneNumber$CountryCodeSource; -[Lcom/android/internal/telephony/phonenumbers/ShortNumberInfo$ShortNumberCost; -[Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$AppState; -[Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$AppType; -[Lcom/android/internal/telephony/uicc/IccCardApplicationStatus$PersoSubState; -[Lcom/android/internal/telephony/uicc/IccCardStatus$CardState; -[Lcom/android/internal/telephony/uicc/IccCardStatus$PinState; -[Lcom/android/internal/telephony/uicc/SIMRecords$GetSpnFsmState; -[Lcom/android/internal/telephony/uicc/UsimServiceTable$UsimService; -[Lcom/android/internal/util/StateMachine$SmHandler$StateInfo; -[Lcom/android/internal/view/AppearanceRegion; -[Lcom/android/okhttp/CipherSuite; -[Lcom/android/okhttp/ConnectionSpec; -[Lcom/android/okhttp/HttpUrl$Builder$ParseResult; -[Lcom/android/okhttp/Protocol; -[Lcom/android/okhttp/TlsVersion; -[Lcom/android/okhttp/okio/ByteString; -[Lcom/android/org/bouncycastle/asn1/ASN1Encodable; -[Lcom/android/org/bouncycastle/asn1/ASN1Enumerated; -[Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier; -[Lcom/android/org/bouncycastle/asn1/ASN1OctetString; -[Lcom/android/org/bouncycastle/asn1/ASN1Primitive; -[Lcom/android/org/bouncycastle/crypto/params/DHParameters; -[Lcom/android/org/bouncycastle/crypto/params/DSAParameters; -[Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/x509/PEMUtil$Boundaries; -[Lcom/android/org/kxml2/io/KXmlParser$ValueContext; -[Ldalvik/system/DexPathList$Element; -[Ldalvik/system/DexPathList$NativeLibraryElement; -[Lgov/nist/javax/sip/DialogTimeoutEvent$Reason; -[Ljava/io/File$PathStatus; -[Ljava/io/File; -[Ljava/io/InputStream; -[Ljava/io/ObjectInputStream$HandleTable$HandleList; -[Ljava/io/ObjectStreamClass$ClassDataSlot; -[Ljava/io/ObjectStreamClass$MemberSignature; -[Ljava/io/ObjectStreamField; -[Ljava/lang/Byte; -[Ljava/lang/CharSequence; -[Ljava/lang/Character$UnicodeBlock; -[Ljava/lang/Character; -[Ljava/lang/Class; -[Ljava/lang/ClassValue$Entry; -[Ljava/lang/Comparable; -[Ljava/lang/Daemons$Daemon; -[Ljava/lang/Double; -[Ljava/lang/Enum; -[Ljava/lang/Integer; -[Ljava/lang/Long; -[Ljava/lang/Number; -[Ljava/lang/Object; -[Ljava/lang/Package; -[Ljava/lang/ProcessBuilder$Redirect; -[Ljava/lang/Runnable; -[Ljava/lang/Short; -[Ljava/lang/StackTraceElement; -[Ljava/lang/StackWalker$Option; -[Ljava/lang/String; -[Ljava/lang/StringBuilder; -[Ljava/lang/Thread$State; -[Ljava/lang/Thread; -[Ljava/lang/ThreadGroup; -[Ljava/lang/ThreadLocal$ThreadLocalMap$Entry; -[Ljava/lang/Throwable; -[Ljava/lang/annotation/Annotation; -[Ljava/lang/constant/ClassDesc; -[Ljava/lang/constant/Constable; -[Ljava/lang/constant/ConstantDesc; -[Ljava/lang/constant/DirectMethodHandleDesc$Kind; -[Ljava/lang/invoke/MethodHandle; -[Ljava/lang/invoke/MethodType; -[Ljava/lang/invoke/TypeDescriptor$OfField; -[Ljava/lang/invoke/VarHandle$AccessMode; -[Ljava/lang/invoke/VarHandle$AccessType; -[Ljava/lang/invoke/VarHandle$VarHandleDesc$Kind; -[Ljava/lang/ref/WeakReference; -[Ljava/lang/reflect/AccessibleObject; -[Ljava/lang/reflect/Constructor; -[Ljava/lang/reflect/Field; -[Ljava/lang/reflect/Method; -[Ljava/lang/reflect/Parameter; -[Ljava/lang/reflect/RecordComponent; -[Ljava/lang/reflect/Type; -[Ljava/lang/reflect/TypeVariable; -[Ljava/math/BigDecimal; -[Ljava/math/BigInteger; -[Ljava/math/RoundingMode; -[Ljava/net/Authenticator$RequestorType; -[Ljava/net/InetAddress; -[Ljava/net/InterfaceAddress; -[Ljava/net/NetworkInterface; -[Ljava/net/Proxy$Type; -[Ljava/net/StandardProtocolFamily; -[Ljava/nio/ByteBuffer; -[Ljava/nio/channels/SelectionKey; -[Ljava/nio/charset/CoderResult; -[Ljava/nio/file/AccessMode; -[Ljava/nio/file/CopyOption; -[Ljava/nio/file/FileVisitResult; -[Ljava/nio/file/LinkOption; -[Ljava/nio/file/OpenOption; -[Ljava/nio/file/StandardCopyOption; -[Ljava/nio/file/StandardOpenOption; -[Ljava/nio/file/attribute/FileAttribute; -[Ljava/security/CodeSigner; -[Ljava/security/CryptoPrimitive; -[Ljava/security/Permission; -[Ljava/security/Principal; -[Ljava/security/ProtectionDomain; -[Ljava/security/Provider; -[Ljava/security/cert/CRLReason; -[Ljava/security/cert/CertPathValidatorException$BasicReason; -[Ljava/security/cert/Certificate; -[Ljava/security/cert/PKIXReason; -[Ljava/security/cert/PKIXRevocationChecker$Option; -[Ljava/security/cert/X509CRL; -[Ljava/security/cert/X509Certificate; -[Ljava/text/DateFormat$Field; -[Ljava/text/Format; -[Ljava/text/Normalizer$Form; -[Ljava/text/NumberFormat$Style; -[Ljava/time/DayOfWeek; -[Ljava/time/LocalDateTime; -[Ljava/time/LocalTime; -[Ljava/time/Month; -[Ljava/time/ZoneOffset; -[Ljava/time/format/DateTimeFormatterBuilder$DateTimePrinterParser; -[Ljava/time/format/DateTimeFormatterBuilder$SettingsParser; -[Ljava/time/format/ResolverStyle; -[Ljava/time/format/SignStyle; -[Ljava/time/format/TextStyle; -[Ljava/time/temporal/ChronoField; -[Ljava/time/temporal/ChronoUnit; -[Ljava/time/temporal/IsoFields$Field; -[Ljava/time/temporal/IsoFields$Unit; -[Ljava/time/temporal/JulianFields$Field; -[Ljava/time/temporal/TemporalUnit; -[Ljava/time/zone/ZoneOffsetTransition; -[Ljava/time/zone/ZoneOffsetTransitionRule$TimeDefinition; -[Ljava/time/zone/ZoneOffsetTransitionRule; -[Ljava/util/Comparators$NaturalOrderComparator; -[Ljava/util/Enumeration; -[Ljava/util/Formatter$Flags; -[Ljava/util/HashMap$Node; -[Ljava/util/Hashtable$HashtableEntry; -[Ljava/util/List; -[Ljava/util/Locale$Category; -[Ljava/util/Locale$FilteringMode; -[Ljava/util/Locale$IsoCountryCode; -[Ljava/util/Locale; -[Ljava/util/Map$Entry; -[Ljava/util/TimerTask; -[Ljava/util/WeakHashMap$Entry; -[Ljava/util/concurrent/ConcurrentHashMap$CounterCell; -[Ljava/util/concurrent/ConcurrentHashMap$Node; -[Ljava/util/concurrent/ConcurrentHashMap$Segment; -[Ljava/util/concurrent/ForkJoinPool$WorkQueue; -[Ljava/util/concurrent/ForkJoinTask; -[Ljava/util/concurrent/RunnableScheduledFuture; -[Ljava/util/concurrent/TimeUnit; -[Ljava/util/concurrent/atomic/Striped64$Cell; -[Ljava/util/logging/Handler; -[Ljava/util/prefs/AbstractPreferences; -[Ljava/util/regex/Pattern; -[Ljava/util/stream/Collector$Characteristics; -[Ljava/util/stream/MatchOps$MatchKind; -[Ljava/util/stream/StreamOpFlag$Type; -[Ljava/util/stream/StreamOpFlag; -[Ljava/util/stream/StreamShape; -[Ljavax/crypto/Cipher$InitType; -[Ljavax/crypto/Cipher$NeedToSet; -[Ljavax/microedition/khronos/egl/EGLConfig; -[Ljavax/net/ssl/KeyManager; -[Ljavax/net/ssl/SSLEngineResult$HandshakeStatus; -[Ljavax/net/ssl/SSLEngineResult$Status; -[Ljavax/net/ssl/TrustManager; -[Ljavax/security/auth/callback/Callback; -[Ljavax/security/cert/X509Certificate; -[Ljavax/sip/DialogState; -[Ljavax/sip/Timeout; -[Ljavax/sip/TransactionState; -[Ljdk/internal/math/FDBigInteger; -[Ljdk/internal/math/FormattedFloatingDecimal$Form; -[Llibcore/io/ClassPathURLStreamHandler; -[Llibcore/io/IoTracker$Mode; -[Llibcore/reflect/AnnotationMember$DefaultValues; -[Llibcore/reflect/AnnotationMember; -[Lorg/json/JSONStringer$Scope; -[Lsun/invoke/util/Wrapper; -[Lsun/nio/ch/SelectionKeyImpl; -[Lsun/nio/fs/NativeBuffer; -[Lsun/security/jca/ProviderConfig; -[Lsun/security/jca/ServiceId; -[Lsun/security/pkcs/SignerInfo; -[Lsun/security/provider/certpath/OCSP$RevocationStatus$CertStatus; -[Lsun/security/provider/certpath/OCSPResponse$ResponseStatus; -[Lsun/security/provider/certpath/RevocationChecker$Mode; -[Lsun/security/util/DerEncoder; -[Lsun/security/util/DerOutputStream; -[Lsun/security/util/DerValue; -[Lsun/security/util/DisabledAlgorithmConstraints$Constraint$Operator; -[Lsun/security/util/ObjectIdentifier; -[Lsun/security/x509/AVA; -[Lsun/security/x509/AlgorithmId; -[Lsun/security/x509/NetscapeCertTypeExtension$MapEntry; -[Lsun/security/x509/RDN; -[Lsun/util/calendar/Era; -[Lsun/util/locale/BaseLocale; -[Lsun/util/logging/PlatformLogger$Level; -[S -[Z -[[B -[[D -[[I -[[J -[[Landroid/graphics/Rect; -[[Landroid/media/ExifInterface$ExifTag; -[[Landroid/widget/GridLayout$Arc; -[[Lcom/android/internal/widget/LockPatternView$Cell; -[[Ljava/lang/Byte; -[[Ljava/lang/Class; -[[Ljava/lang/Object; -[[Ljava/lang/String; -[[Ljava/lang/annotation/Annotation; -[[Ljava/lang/invoke/MethodHandle; -[[Ljava/math/BigInteger; -[[Z diff --git a/config/dirty-image-objects b/config/dirty-image-objects index f2e2b82cd82a..d4913d8f70d7 100644 --- a/config/dirty-image-objects +++ b/config/dirty-image-objects @@ -1,5 +1,5 @@ # -# Copyright (C) 2017 The Android Open Source Project +# Copyright (C) 2024 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. @@ -19,1710 +19,1435 @@ # The image writer will bin these objects together in the image. # More info about dirty objects format and how to collect the data can be # found in: art/imgdiag/dirty_image_objects.md -# This particular file was generated by dumping all pre-installed apps. +# This particular file was generated by: +# https://android-build.corp.google.com/test_investigate/invocation/I55400010326683472/ # -Landroid/text/style/URLSpan; 0 -Landroid/content/res/Resources$NotFoundException; 1 -Landroid/os/PowerManager$WakeLock; 2 -Landroid/os/BatterySaverPolicyConfig; 2 -Landroid/content/ContextWrapper; 2 -Landroid/app/WallpaperInfo; 2 -Landroid/content/pm/PackageManager; 2 -Landroid/app/IWallpaperManager; 2 -Ljava/lang/BootClassLoader; 2 -Ljava/time/Duration; 2 -Landroid/util/Printer; 2 -Landroid/app/WallpaperManager$OnColorsChangedListener; 2 -Landroid/app/WallpaperColors; 2 -Landroid/content/pm/ServiceInfo; 2 -Landroid/app/KeyguardManager$KeyguardDismissCallback; 2 -Ljava/lang/CharSequence; 3 -Landroid/widget/Switch; 4 -Lcom/android/internal/util/ContrastColorUtil; 4 -Landroid/view/SurfaceControl; 4 -Landroid/graphics/ColorMatrix;.dexCache:Ljava/lang/Object; 4 -Lcom/android/internal/widget/CachingIconView; 4 -Landroid/window/IRemoteTransition$Stub$Proxy; 4 -Landroid/app/trust/TrustManager$TrustListener; 4 -Landroid/view/NotificationHeaderView; 4 -Lcom/android/internal/widget/ImageResolver; 4 -Landroid/window/WindowContainerTransaction$Change; 4 -Lcom/android/internal/widget/MessagingLayout; 4 -Ljava/util/concurrent/ConcurrentLinkedQueue; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry; 4 -Landroid/view/RemotableViewMethod; 4 -Landroid/app/IApplicationThread$Stub$Proxy; 4 -Landroid/os/FileUtils; 4 -Landroid/view/View;.SCALE_X:Landroid/util/Property; 4 -Landroid/widget/GridLayout;.UNDEFINED_ALIGNMENT:Landroid/widget/GridLayout$Alignment; 4 -Landroid/media/MediaPlayer$EventHandler; 4 -Landroid/widget/DateTimeView; 4 -Llibcore/util/ZoneInfo; 4 -Lcom/android/internal/statusbar/IStatusBarService; 4 -Ljava/lang/invoke/MethodType;.internTable:Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet;.stale:Ljava/lang/ref/ReferenceQueue; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry; 4 -Lcom/android/internal/logging/UiEventLogger; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry; 4 -Landroid/renderscript/RenderScript; 4 -Landroid/view/ViewTreeObserver$OnWindowVisibilityChangeListener; 4 -Lcom/android/internal/widget/RemeasuringLinearLayout; 4 -Landroid/widget/DateTimeView$ReceiverInfo$1; 4 -Landroid/view/View;.TRANSLATION_Y:Landroid/util/Property; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry; 4 -Lcom/android/internal/widget/NotificationExpandButton; 4 -Lcom/android/internal/view/menu/ActionMenuItemView; 4 -Landroid/view/animation/AnimationSet; 4 -Landroid/hardware/biometrics/BiometricSourceType;.FINGERPRINT:Landroid/hardware/biometrics/BiometricSourceType; 4 -Landroid/window/WindowOrganizer;.IWindowOrganizerControllerSingleton:Landroid/util/Singleton; 4 -Ljava/lang/Runnable; 4 -Lorg/apache/harmony/dalvik/ddmc/DdmServer;.mHandlerMap:Ljava/util/HashMap; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry; 4 -Lcom/android/internal/widget/ImageFloatingTextView; 4 -Landroid/window/IWindowContainerToken$Stub$Proxy; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry; 4 -Landroid/content/res/ColorStateList; 4 -Landroid/view/View;.SCALE_Y:Landroid/util/Property; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap; 4 -Lcom/android/internal/widget/ConversationLayout; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry;.right:Ljava/util/TreeMap$TreeMapEntry; 4 -Lcom/android/internal/colorextraction/ColorExtractor$OnColorsChangedListener; 4 -Landroid/hardware/face/FaceManager$FaceDetectionCallback; 4 -Landroid/widget/RemoteViews;.sLookupKey:Landroid/widget/RemoteViews$MethodKey; 4 -Landroid/widget/ViewSwitcher;.dexCache:Ljava/lang/Object; 4 -Lcom/android/internal/widget/NotificationActionListLayout; 4 -Ljava/util/concurrent/ConcurrentLinkedQueue$Node; 4 -Landroid/hardware/biometrics/BiometricSourceType;.FACE:Landroid/hardware/biometrics/BiometricSourceType; 4 -Landroid/hardware/biometrics/BiometricSourceType;.IRIS:Landroid/hardware/biometrics/BiometricSourceType; 4 -Landroid/view/NotificationTopLineView; 4 -Lcom/android/internal/protolog/BaseProtoLogImpl;.LOG_GROUPS:Ljava/util/TreeMap;.root:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry;.left:Ljava/util/TreeMap$TreeMapEntry; 4 -Landroid/widget/RemoteViews;.sMethods:Landroid/util/ArrayMap; 4 -Lcom/android/internal/os/BinderInternal$BinderProxyLimitListener; 5 -Landroid/app/AppOpsManager$OnOpNotedInternalListener; 5 -Lcom/android/internal/R$styleable;.WindowAnimation:[I 5 -Lcom/android/internal/logging/UiEventLogger$UiEventEnum; 5 -Lcom/android/internal/policy/AttributeCache; 5 -Landroid/app/Notification$CallStyle; 5 -Landroid/app/AppOpsManager$OnOpNotedListener; 5 -Lcom/android/internal/protolog/BaseProtoLogImpl; 5 -Landroid/app/AppOpsManager$OnOpStartedListener; 5 -Lcom/android/internal/util/ScreenshotHelper$1; 5 -Landroid/app/Notification$DecoratedCustomViewStyle; 5 -Landroid/view/DisplayCutout; 5 -Landroid/view/InputEvent;.mNextSeq:Ljava/util/concurrent/atomic/AtomicInteger; 5 -Lcom/android/internal/statusbar/NotificationVisibility; 5 -Landroid/telephony/DataSpecificRegistrationInfo; 6 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle; 7 -Landroid/telephony/VoiceSpecificRegistrationInfo; 8 -Landroid/telephony/AnomalyReporter; 8 -Landroid/telephony/TelephonyRegistryManager;.sCarrierPrivilegeCallbacks:Ljava/util/WeakHashMap; 8 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.1:Ljava/util/WeakHashMap$Entry; 8 -Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection; 8 -Landroid/content/ContentProvider$Transport; 8 -Landroid/telephony/NetworkRegistrationInfo; 8 -Landroid/net/MatchAllNetworkSpecifier; 8 -Landroid/telephony/TelephonyRegistryManager;.sCarrierPrivilegeCallbacks:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry; 8 -Landroid/app/PropertyInvalidatedCache;.sInvalidates:Ljava/util/HashMap; 9 -Landroid/app/PropertyInvalidatedCache$NoPreloadHolder; 9 -Landroid/app/PropertyInvalidatedCache;.sDisabledKeys:Ljava/util/HashSet;.map:Ljava/util/HashMap; 10 -Landroid/media/AudioSystem$AudioRecordingCallback; 11 -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedString; 11 -Landroid/net/metrics/IpManagerEvent; 11 -Lcom/android/internal/os/ProcessCpuTracker$FilterStats; 11 -Lcom/android/internal/infra/AbstractRemoteService$AsyncRequest; 11 -Landroid/content/pm/RegisteredServicesCache$3; 11 -Lcom/android/internal/os/LooperStats; 11 -Lcom/android/server/AppWidgetBackupBridge; 11 -Landroid/hardware/display/DisplayManagerInternal; 11 -Landroid/content/pm/PackageInfo; 11 -Landroid/hardware/soundtrigger/SoundTriggerModule$EventHandlerDelegate; 11 -Landroid/app/servertransaction/ResumeActivityItem; 11 -Lcom/android/internal/widget/AlertDialogLayout; 11 -Landroid/content/pm/FallbackCategoryProvider;.sFallbacks:Landroid/util/ArrayMap; 11 -Landroid/os/RemoteCallback$1; 11 -Landroid/content/pm/SharedLibraryInfo; 11 -Landroid/util/MemoryIntArray; 11 -Landroid/net/metrics/DhcpErrorEvent; 11 -Lcom/android/internal/util/function/DodecConsumer; 11 -Landroid/provider/Settings; 11 -Landroid/app/PropertyInvalidatedCache;.sCorkLock:Ljava/lang/Object; 11 -Lcom/android/internal/os/CachedDeviceState$Readonly; 11 -Landroid/app/job/JobServiceEngine$JobHandler; 11 -Landroid/app/SystemServiceRegistry; 11 -Lcom/android/internal/os/BinderInternal$CallStatsObserver; 11 -Lcom/android/internal/statusbar/IStatusBar$Stub$Proxy; 11 -Landroid/hardware/location/IActivityRecognitionHardwareClient; 11 -Landroid/telecom/Logging/EventManager$EventListener; 11 -Landroid/accounts/AccountManagerInternal; 11 -Lcom/android/internal/os/KernelCpuBpfTracking; 11 -Lcom/android/internal/statusbar/NotificationVisibility$NotificationLocation; 11 -Landroid/hardware/camera2/CameraManager$CameraManagerGlobal; 11 -Landroid/os/ServiceSpecificException; 11 -Landroid/net/Uri$PathPart;.NULL:Landroid/net/Uri$PathPart; 11 -Landroid/app/ActivityManagerInternal; 11 -Landroid/media/AudioSystem; 11 -Landroid/service/dreams/DreamManagerInternal; 11 -Landroid/debug/AdbManagerInternal; 11 -Landroid/graphics/Bitmap$CompressFormat; 11 -Landroid/hardware/location/NanoAppMessage; 11 -Landroid/os/storage/StorageManagerInternal; 11 -Landroid/app/AppOpsManagerInternal; 11 -Ljava/security/cert/CertificateException; 11 -Ldalvik/system/VMRuntime; 11 -Landroid/content/pm/SigningInfo; 11 -Landroid/view/KeyEvent; 11 -Lcom/android/internal/view/WindowManagerPolicyThread; 11 -Landroid/graphics/Region;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 11 -Landroid/content/res/ResourceTimer; 11 -Landroid/view/autofill/AutofillManagerInternal; 11 -Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object; 11 -Landroid/graphics/Region;.sPool:Landroid/util/Pools$SynchronizedPool; 11 -Landroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0; 11 -Lcom/android/server/LocalServices;.sLocalServiceObjects:Landroid/util/ArrayMap; 11 -Landroid/app/admin/DevicePolicyManagerInternal$OnCrossProfileWidgetProvidersChangeListener; 11 -Landroid/accounts/AccountManagerInternal$OnAppPermissionChangeListener; 11 -Landroid/content/pm/PermissionInfo; 11 -Landroid/view/WindowManagerPolicyConstants$PointerEventListener; 11 -Landroid/os/UEventObserver; 11 -Landroid/media/AudioManagerInternal$RingerModeDelegate; 11 -Landroid/view/Display$HdrCapabilities; 11 -Landroid/service/notification/Condition; 11 -Landroid/content/pm/UserPackage; 11 -Landroid/app/AppOpsManager$SamplingStrategy; 11 -Landroid/telephony/ServiceState; 11 -Landroid/app/servertransaction/PauseActivityItem; 11 -Lcom/android/internal/util/function/pooled/PooledLambdaImpl;.sMessageCallbacksPool:Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;.mLock:Ljava/lang/Object; 11 -Landroid/view/KeyCharacterMap$FallbackAction; 11 -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringArray; 11 -Landroid/hardware/display/DeviceProductInfo; 11 -Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap;.mHashes:[I 11 -Landroid/content/pm/RegisteredServicesCache$2; 11 -Landroid/content/pm/PackageManager;.sCacheAutoCorker:Landroid/app/PropertyInvalidatedCache$AutoCorker; 11 -Landroid/app/PropertyInvalidatedCache;.sCorks:Ljava/util/HashMap; 11 -Landroid/service/notification/StatusBarNotification; 11 -Landroid/app/servertransaction/ConfigurationChangeItem; 11 -Landroid/app/ActivityManager$RecentTaskInfo; 11 -Landroid/app/Notification; 11 -Landroid/app/servertransaction/DestroyActivityItem; 11 -Landroid/webkit/WebViewLibraryLoader$RelroFileCreator; 11 -Landroid/net/metrics/NetworkEvent; 11 -Landroid/media/AudioPlaybackConfiguration; 11 -Landroid/accessibilityservice/AccessibilityServiceInfo; 11 -Landroid/hardware/display/DeviceProductInfo$ManufactureDate; 11 -Landroid/os/storage/StorageVolume; 11 -Landroid/os/BatteryManagerInternal; 11 -Landroid/appwidget/AppWidgetManagerInternal; 11 -Landroid/app/servertransaction/NewIntentItem; 11 -Landroid/content/pm/ShortcutServiceInternal; 11 -Landroid/app/assist/ActivityId; 11 -Landroid/window/DisplayAreaAppearedInfo; 11 -Landroid/os/Process;.ZYGOTE_PROCESS:Landroid/os/ZygoteProcess;.mLock:Ljava/lang/Object; 11 -Landroid/app/usage/UsageStats; 11 -Landroid/app/Notification$MediaStyle; 11 -Landroid/media/AudioSystem$DynamicPolicyCallback; 11 -Landroid/content/pm/ProviderInfo; 11 -Landroid/os/PowerManagerInternal; 11 -Landroid/service/voice/VoiceInteractionManagerInternal; 11 -Landroid/content/pm/FeatureInfo; 11 -Landroid/app/servertransaction/TopResumedActivityChangeItem; 11 -Landroid/app/Notification$DecoratedMediaCustomViewStyle; 11 -Landroid/appwidget/AppWidgetProviderInfo; 11 -Landroid/app/AppOpsManager$NoteOpEvent; 11 -Landroid/graphics/GraphicsStatsService; 11 -Landroid/view/DisplayAddress$Physical; 11 -Landroid/content/ComponentName$WithComponentName; 11 -Landroid/app/admin/DevicePolicyManagerInternal; 11 -Landroid/os/ResultReceiver$MyResultReceiver; 11 -Landroid/content/ContentProviderClient; 11 -Landroid/content/pm/RegisteredServicesCache$1; 11 -Landroid/app/PendingIntent$FinishedDispatcher; 11 -Landroid/location/LocationManager; 11 -Landroid/hardware/location/ContextHubInfo; 11 -Landroid/content/pm/ShortcutServiceInternal$ShortcutChangeListener; 11 -Lcom/android/server/usage/AppStandbyInternal; 11 -Landroid/content/pm/RegisteredServicesCacheListener; 11 -Landroid/app/servertransaction/LaunchActivityItem; 11 -Landroid/content/pm/BaseParceledListSlice$1; 11 -Landroid/annotation/StringRes; 11 -Lcom/android/internal/R$styleable;.Window:[I 11 -Landroid/service/notification/ZenModeConfig; 11 -Landroid/telecom/Logging/SessionManager$ISessionListener; 11 -Landroid/app/time/TimeZoneConfiguration; 11 -Landroid/net/metrics/ValidationProbeEvent; 11 -Landroid/content/pm/PackageInstaller$SessionInfo; 11 -Landroid/content/pm/UserPackage;.sCache:Landroid/util/SparseArrayMap;.mData:Landroid/util/SparseArray; 11 -Landroid/content/pm/PermissionGroupInfo; 11 -Landroid/hardware/sidekick/SidekickInternal; 11 -Lcom/android/internal/widget/ButtonBarLayout; 11 -Landroid/content/pm/LauncherActivityInfoInternal; 11 -Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap; 11 -Lcom/android/internal/widget/LockSettingsInternal; 11 -Landroid/media/AudioManagerInternal; 11 -Landroid/app/AppOpsManager$AttributedOpEntry; 11 -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringList; 11 -Landroid/telecom/Log; 11 -Landroid/app/time/TimeZoneCapabilities; 11 -Landroid/attention/AttentionManagerInternal; 11 -Landroid/view/WindowManagerPolicyConstants; 11 -Landroid/content/pm/CrossProfileAppsInternal; 11 -Landroid/hardware/location/GeofenceHardwareService; 11 -Landroid/content/pm/dex/ArtManagerInternal; 11 -Landroid/net/metrics/IpReachabilityEvent; 11 -Landroid/content/pm/LauncherApps$ShortcutQuery$QueryFlags; 11 -Landroid/media/AudioAttributes; 11 -Landroid/app/PropertyInvalidatedCache$AutoCorker$1; 11 -Landroid/net/metrics/ApfProgramEvent; 11 -Landroid/content/pm/SigningDetails; 11 -Lcom/android/internal/protolog/ProtoLogImpl; 11 -Landroid/hardware/biometrics/ComponentInfoInternal; 11 -Lcom/android/internal/util/ToBooleanFunction; 11 -Landroid/app/ActivityThread$H; 11 -Landroid/hardware/location/GeofenceHardwareImpl; 11 -Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventHandler; 11 -Landroid/util/NtpTrustedTime; 11 -Landroid/hardware/soundtrigger/SoundTrigger$StatusListener; 11 -Lcom/android/internal/app/procstats/AssociationState;.sTmpSourceKey:Lcom/android/internal/app/procstats/AssociationState$SourceKey; 11 -Ljava/util/zip/ZipFile$ZipFileInflaterInputStream; 11 -Landroid/app/job/JobInfo; 11 -Lcom/android/internal/content/om/OverlayConfig; 11 -Landroid/webkit/WebViewZygote; 11 -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringSet; 11 -Lcom/android/internal/infra/AbstractRemoteService$VultureCallback; 11 -Landroid/permission/PermissionManagerInternal; 11 -Lcom/android/server/WidgetBackupProvider; 11 -Landroid/window/WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper; 11 -Landroid/app/PropertyInvalidatedCache;.sCorkedInvalidates:Ljava/util/HashMap; 11 -Landroid/media/AudioPlaybackConfiguration$PlayerDeathMonitor; 11 -Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventCallback; 11 -Landroid/service/notification/NotificationListenerService$RankingMap; 11 -Landroid/os/UserHandle;.sExtraUserHandleCache:Landroid/util/SparseArray; 11 -Ljava/time/DateTimeException; 11 -Ljava/lang/NumberFormatException; 11 -Ljava/security/Provider;.knownEngines:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.125:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 11 -Landroid/app/LoadedApk$ServiceDispatcher$RunConnection; 11 -Landroid/view/RoundedCorners; 11 -Landroid/os/Process;.ZYGOTE_PROCESS:Landroid/os/ZygoteProcess; 11 -Landroid/media/audiopolicy/AudioVolumeGroup; 11 -Landroid/media/AudioSystem$ErrorCallback; 11 -Landroid/app/servertransaction/ActivityResultItem; 11 -Lcom/android/internal/widget/DialogTitle; 11 -Lcom/android/internal/os/StoragedUidIoStatsReader$Callback; 11 -Landroid/view/ViewRootImpl$W; 11 -Landroid/app/ServiceStartArgs; 11 -Landroid/window/TaskAppearedInfo; 11 -Lcom/android/internal/listeners/ListenerExecutor$FailureCallback; 11 -Landroid/app/ApplicationExitInfo; 11 -Landroid/content/pm/PackageManager;.sCacheAutoCorker:Landroid/app/PropertyInvalidatedCache$AutoCorker;.mLock:Ljava/lang/Object; 11 -Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringValueMap; 11 -Landroid/content/pm/ResolveInfo; 11 -Lcom/android/internal/display/BrightnessSynchronizer; 11 -Landroid/window/IOnBackInvokedCallback$Stub$Proxy; 12 -Landroid/graphics/drawable/PictureDrawable; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.126:Ljava/lang/Byte; 13 -Landroid/view/ViewDebug$ExportedProperty; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.41:Ljava/lang/Byte; 13 -Landroid/view/inputmethod/DeleteGesture; 13 -Landroid/view/ViewDebug$IntToString; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.56:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.65:Ljava/lang/Byte; 13 -Landroid/webkit/WebViewFactory;.sProviderLock:Ljava/lang/Object; 13 -Ljava/lang/IllegalAccessError; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.51:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.52:Ljava/lang/Byte; 13 -Landroid/view/inputmethod/DeleteRangeGesture; 13 -Landroid/window/WindowContext; 13 -Ljava/util/concurrent/ConcurrentSkipListMap$Node; 13 -Landroid/view/inputmethod/SelectRangeGesture; 13 -Landroid/util/MalformedJsonException; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.131:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.120:Ljava/lang/Byte; 13 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 13 -Ljava/nio/file/StandardOpenOption;.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.121:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.16:Ljava/lang/Byte; 13 -Ljava/util/concurrent/ConcurrentSkipListMap$Index; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.139:Ljava/lang/Byte; 13 -Landroid/view/ViewDebug$FlagToString; 13 -Landroid/view/inputmethod/SelectGesture; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.20:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.94:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.64:Ljava/lang/Byte; 13 -Landroid/webkit/WebViewFactoryProvider$Statics; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.95:Ljava/lang/Byte; 13 -Landroid/service/media/MediaBrowserService$ServiceBinder$1; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.7:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.23:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.46:Ljava/lang/Byte; 13 -Landroid/provider/Settings$SettingNotFoundException; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.74:Ljava/lang/Byte; 13 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.8:Ljava/lang/Byte; 13 -Landroid/widget/TextView;.TEMP_POSITION:[F 13 -Ljava/io/ByteArrayInputStream; 14 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.93:Ljava/lang/Byte; 14 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.134:Ljava/lang/Byte; 14 -Landroid/text/style/ImageSpan; 14 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.154:Ljava/lang/Byte; 15 -Landroid/view/TextureView$SurfaceTextureListener; 16 -Landroid/media/AudioManager$OnAudioFocusChangeListener; 17 -Ljava/util/Locale;.JAPAN:Ljava/util/Locale; 18 -Ljava/util/Locale;.GERMANY:Ljava/util/Locale; 19 -Ljava/util/Locale;.CANADA_FRENCH:Ljava/util/Locale; 20 -Ljava/util/Locale;.ITALY:Ljava/util/Locale; 20 -Ljava/util/Locale;.FRANCE:Ljava/util/Locale; 20 -Ljava/util/Locale;.UK:Ljava/util/Locale; 21 -Ljava/util/Locale;.CANADA:Ljava/util/Locale; 21 -Ljava/util/Locale$Cache;.LOCALECACHE:Ljava/util/Locale$Cache;.map:Ljava/util/concurrent/ConcurrentMap; 22 -Ljava/lang/IllegalStateException; 23 -Lcom/android/internal/util/function/pooled/PooledLambdaImpl;.sMessageCallbacksPool:Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool; 24 -Lcom/android/internal/util/function/pooled/PooledLambdaImpl;.sMessageCallbacksPool:Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;.mPool:[Ljava/lang/Object; 24 -Landroid/media/MediaRouter$WifiDisplayStatusChangedReceiver; 25 -Landroid/media/MediaRouter$VolumeChangeReceiver; 25 -Landroid/app/AppOpsManager$OnOpActiveChangedListener; 26 -Landroid/media/PlayerBase; 27 -Landroid/content/pm/Checksum$Type; 28 -Ljava/lang/Class; 29 -Landroid/widget/MediaController$MediaPlayerControl; 30 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.135:Ljava/lang/Long; 30 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.152:Ljava/lang/Long; 30 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.215:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.206:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.137:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.203:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.213:Ljava/lang/Byte; 31 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.549:Ljava/lang/Long; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.201:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.249:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.163:Ljava/lang/Byte; 31 -Ljava/util/HashMap; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.210:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.161:Ljava/lang/Byte; 31 -Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.0:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.199:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.248:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.252:Ljava/lang/Byte; 31 -Lcom/android/ims/rcs/uce/UceDeviceState;.DEVICE_STATE_DESCRIPTION:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.3:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.159:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.217:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.200:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.240:Ljava/lang/Byte; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.198:Ljava/lang/Byte; 31 -Lcom/android/ims/rcs/uce/UceDeviceState;.DEVICE_STATE_DESCRIPTION:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.4:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 31 -Landroid/content/pm/PackageManager$OnChecksumsReadyListener; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.193:Ljava/lang/Byte; 31 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.228:Ljava/lang/Long; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.236:Ljava/lang/Byte; 31 -Landroid/telephony/ims/ImsService;.CAPABILITIES_LOG_MAP:Ljava/util/Map;.table:[Ljava/lang/Object;.2:Ljava/lang/Long; 31 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.211:Ljava/lang/Byte; 31 -Landroid/view/SurfaceView; 32 -Landroid/view/ViewStub$OnInflateListener; 33 -Landroid/graphics/drawable/DrawableInflater;.CONSTRUCTOR_MAP:Ljava/util/HashMap; 34 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.245:Ljava/lang/Byte; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.232:Ljava/lang/Byte; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.12:Ljava/lang/Byte; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.170:Ljava/lang/Long; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.183:Ljava/lang/Long; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.246:Ljava/lang/Byte; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.168:Ljava/lang/Long; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.72:Ljava/lang/Byte; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.243:Ljava/lang/Byte; 35 -Ljava/util/WeakHashMap;.NULL_KEY:Ljava/lang/Object; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.235:Ljava/lang/Byte; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.147:Ljava/lang/Long; 35 -Ljava/io/InterruptedIOException; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.184:Ljava/lang/Long; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.165:Ljava/lang/Long; 35 -Landroid/text/style/ForegroundColorSpan; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.176:Ljava/lang/Long; 35 -Ljava/lang/Long$LongCache;.archivedCache:[Ljava/lang/Long;.173:Ljava/lang/Long; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.181:Ljava/lang/Byte; 35 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.157:Ljava/lang/Byte; 35 -Landroid/content/res/AssetManager$AssetInputStream; 35 -Landroid/graphics/drawable/TransitionDrawable; 36 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1:Ljava/lang/Boolean; 37 -Landroid/view/ViewOverlay$OverlayViewGroup; 38 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.11:Ljava/lang/Boolean; 39 -Ljava/util/Observer; 40 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.129:Ljava/lang/Byte; 41 -[Ljava/lang/Byte; 41 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.144:Ljava/lang/Byte; 41 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.164:Ljava/lang/Byte; 42 -Landroid/view/OrientationEventListener; 43 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.195:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.233:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.229:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.128:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.242:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.196:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.208:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.212:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.228:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.205:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.197:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.204:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.207:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.223:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.244:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.174:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.194:Ljava/lang/Byte; 44 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.225:Ljava/lang/Byte; 45 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.239:Ljava/lang/Byte; 45 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.238:Ljava/lang/Byte; 45 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.227:Ljava/lang/Byte; 45 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.152:Ljava/lang/Byte; 46 -Landroid/app/RemoteAction; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.168:Ljava/lang/Byte; 46 -Landroid/text/style/QuoteSpan; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.54:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.124:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.142:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.190:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.114:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.69:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.30:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.133:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.49:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.58:Ljava/lang/Byte; 46 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.143:Ljava/lang/Byte; 47 -Landroid/icu/text/RelativeDateTimeFormatter$AbsoluteUnit; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.82:Ljava/lang/Byte; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.140:Ljava/lang/Byte; 47 -Landroid/icu/text/RelativeDateTimeFormatter;.fallbackCache:[Landroid/icu/text/RelativeDateTimeFormatter$Style; 47 -Landroid/icu/text/RelativeDateTimeFormatter$Style; 47 -Landroid/icu/text/RelativeDateTimeFormatter;.cache:Landroid/icu/text/RelativeDateTimeFormatter$Cache;.cache:Landroid/icu/impl/CacheBase;.map:Ljava/util/concurrent/ConcurrentHashMap; 47 -Landroid/icu/text/RelativeDateTimeFormatter$RelativeUnit; 47 -Landroid/icu/text/RelativeDateTimeFormatter$Direction; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.130:Ljava/lang/Byte; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.43:Ljava/lang/Byte; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.146:Ljava/lang/Byte; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.138:Ljava/lang/Byte; 47 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.136:Ljava/lang/Byte; 48 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.0:Ljava/lang/Byte; 49 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.160:Ljava/lang/Byte; 49 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.169:Ljava/lang/Byte; 50 -Landroid/widget/Spinner; 50 -Landroid/widget/MultiAutoCompleteTextView; 50 -Ljava/util/ArrayList; 50 -Landroid/widget/CheckBox; 50 -Ljava/io/Serializable; 50 -Landroid/widget/RatingBar; 50 -Ljava/lang/Byte$ByteCache;.archivedCache:[Ljava/lang/Byte;.132:Ljava/lang/Byte; 50 -Landroid/widget/AutoCompleteTextView; 50 -Ljava/util/concurrent/ConcurrentLinkedDeque$Node; 50 -[Ljava/lang/Object; 50 -Landroid/widget/SeekBar; 51 -Ljava/lang/Void; 52 -Landroid/app/ActivityTaskManager;.sInstance:Landroid/util/Singleton; 53 -Landroid/view/ViewRootImpl$$ExternalSyntheticLambda11; 54 -Landroid/view/ViewTreeObserver$OnWindowFocusChangeListener; 55 -Landroid/view/InsetsAnimationThread; 56 -Lcom/android/internal/jank/InteractionJankMonitor$InstanceHolder; 57 -Lcom/android/internal/jank/InteractionJankMonitor; 57 -Landroid/hardware/camera2/CameraCharacteristics;.FLASH_INFO_AVAILABLE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 58 -Landroid/hardware/display/NightDisplayListener$Callback; 59 -Landroid/media/MediaRouter2Manager; 59 -Landroid/os/HandlerExecutor; 59 -Landroid/os/strictmode/LeakedClosableViolation; 60 -Lcom/android/internal/logging/MetricsLogger; 60 -Lcom/android/internal/os/PowerProfile;.sPowerItemMap:Ljava/util/HashMap; 61 -Lcom/android/internal/os/PowerProfile;.sPowerArrayMap:Ljava/util/HashMap; 61 -Lcom/android/internal/os/PowerProfile;.sModemPowerProfile:Lcom/android/internal/power/ModemPowerProfile;.mPowerConstants:Landroid/util/SparseDoubleArray;.mValues:Landroid/util/SparseLongArray; 61 -Landroid/content/IntentFilter; 62 -Landroid/telecom/TelecomManager; 63 -Ljava/lang/IllegalArgumentException; 64 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.1:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object; 65 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.1:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mCache:Ljava/util/LinkedHashMap; 65 -Landroid/telephony/VisualVoicemailSmsFilterSettings;.DEFAULT_ORIGINATING_NUMBERS:Ljava/util/List; 66 -Ljava/util/AbstractList; 68 -Ljava/util/AbstractCollection; 68 -Ljava/util/Collections$EmptyList; 69 -Ljava/lang/StackTraceElement; 69 -[Ljava/lang/StackTraceElement; 69 -Landroid/os/strictmode/Violation; 70 -Ljava/util/List; 71 -Ljava/lang/String; 72 -Ljava/io/ObjectInputStream; 73 -Ljava/io/ObjectStreamClass$Caches;.localDescs:Ljava/util/concurrent/ConcurrentMap; 73 -Ljava/io/ObjectStreamClass$Caches;.reflectors:Ljava/util/concurrent/ConcurrentMap; 73 -Ljava/io/ObjectOutputStream; 73 -Ljava/lang/Number; 74 -Ljava/math/BigInteger; 75 -[B 76 -Landroid/os/Handler; 77 -Landroid/view/accessibility/AccessibilityManager; 78 +Landroid/content/ComponentCallbacks; 2 +Landroid/content/ComponentCallbacks2; 2 +Lcom/android/internal/app/ResolverActivity$ActionTitle;.HOME:Lcom/android/internal/app/ResolverActivity$ActionTitle;.name:Ljava/lang/String; 4 +Landroid/icu/text/MessageFormat;.typeList:[Ljava/lang/String;.1:Ljava/lang/String; 4 +Landroid/app/assist/AssistStructure$HtmlInfoNode; 4 +Landroid/app/ActivityManager$AppTask; 4 +Landroid/view/inputmethod/SurroundingText; 5 +Landroid/widget/ProgressBar$SavedState; 6 +Landroid/telephony/SignalStrength; 9 +Landroid/app/Notification$BigTextStyle; 10 +Landroid/app/AppOpsManager$OnOpNotedListener; 11 +Landroid/window/IRemoteTransition$Stub$Proxy; 11 +Lcom/android/internal/logging/UiEventLogger$UiEventEnum; 11 +Landroid/app/AppOpsManager$OnOpNotedInternalListener; 11 +Landroid/view/DisplayCutout; 11 +Lcom/android/internal/logging/MetricsLogger; 11 +Landroid/os/strictmode/LeakedClosableViolation; 11 +Lcom/android/internal/policy/AttributeCache; 11 +Lcom/android/internal/util/LatencyTracker$Action; 11 +Landroid/app/AppOpsManager$OnOpStartedListener; 11 +Landroid/app/Notification$DecoratedCustomViewStyle; 11 +Lcom/android/internal/R$styleable;.WindowAnimation:[I 11 +Landroid/app/Notification$CallStyle; 11 +Lcom/android/internal/statusbar/NotificationVisibility; 11 +Landroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal; 12 +Landroid/graphics/ColorSpace$Model;.RGB:Landroid/graphics/ColorSpace$Model; 13 +Landroid/app/WallpaperManager; 13 +Landroid/text/TextUtils$TruncateAt; 14 +Landroid/app/smartspace/uitemplatedata/BaseTemplateData; 15 +Landroid/app/smartspace/SmartspaceTarget; 15 +Lcom/android/internal/os/SomeArgs; 16 +Landroid/widget/inline/InlinePresentationSpec; 17 +Landroid/media/AudioSystem; 18 +Lcom/android/internal/os/CachedDeviceState$Readonly; 18 +Landroid/service/notification/Condition; 18 +Landroid/os/BatteryManagerInternal; 18 +Landroid/content/pm/PermissionGroupInfo; 18 +Landroid/app/job/JobInfo; 18 +Landroid/hardware/location/IActivityRecognitionHardwareClient; 18 +Landroid/accessibilityservice/AccessibilityServiceInfo; 18 +Landroid/app/Notification$DecoratedMediaCustomViewStyle; 18 +Landroid/hardware/location/NanoAppMessage; 18 +Landroid/net/Uri$PathPart;.NULL:Landroid/net/Uri$PathPart; 18 +Landroid/hardware/soundtrigger/SoundTrigger$StatusListener; 18 +Landroid/util/EventLog; 18 +Landroid/app/ActivityManager$RecentTaskInfo; 18 +Lcom/android/internal/widget/LockSettingsInternal; 18 +Landroid/window/DisplayAreaAppearedInfo; 18 +Landroid/accounts/AuthenticatorException; 18 +Landroid/os/ResultReceiver; 18 +Landroid/content/pm/UserPackage;.sCacheLock:Ljava/lang/Object; 18 +Lcom/android/internal/view/WindowManagerPolicyThread; 18 +Landroid/content/pm/LauncherActivityInfoInternal; 18 +Landroid/webkit/WebViewLibraryLoader$RelroFileCreator; 18 +Landroid/hardware/biometrics/BiometricSourceType; 18 +Landroid/net/metrics/ValidationProbeEvent; 18 +Landroid/view/RoundedCorners; 18 +Landroid/os/Process;.ZYGOTE_PROCESS:Landroid/os/ZygoteProcess; 18 +Landroid/app/ServiceStartArgs; 18 +Landroid/telecom/Logging/EventManager$EventListener; 18 +Landroid/app/SystemServiceRegistry; 18 +Landroid/permission/PermissionManagerInternal; 18 +Landroid/service/notification/StatusBarNotification; 18 +Lcom/android/internal/os/ProcessCpuTracker$FilterStats; 18 +Lcom/android/internal/util/ToBooleanFunction; 18 +Landroid/content/pm/RegisteredServicesCache$3; 18 +Landroid/os/ServiceManager$ServiceNotFoundException; 18 +Landroid/app/ActivityManagerInternal; 18 +Landroid/app/assist/AssistStructure; 18 +Landroid/hardware/camera2/CameraManager$CameraManagerGlobal; 18 +Landroid/app/servertransaction/PauseActivityItem; 18 +Landroid/hardware/soundtrigger/SoundTriggerModule$EventHandlerDelegate; 18 +Landroid/media/AudioAttributes; 18 +Landroid/service/dreams/DreamManagerInternal; 18 +Lcom/android/internal/listeners/ListenerExecutor$FailureCallback; 18 +Landroid/net/metrics/DhcpErrorEvent; 18 +Landroid/app/servertransaction/ConfigurationChangeItem; 18 +Landroid/hardware/sidekick/SidekickInternal; 18 +Landroid/appwidget/AppWidgetManagerInternal; 18 +Landroid/hardware/display/DisplayManagerInternal; 18 +Landroid/telecom/PhoneAccountHandle; 18 +Landroid/view/WindowManagerPolicyConstants; 18 +Landroid/net/wifi/nl80211/WifiNl80211Manager$ScanEventCallback; 18 +Lcom/android/internal/app/procstats/AssociationState;.sTmpSourceKey:Lcom/android/internal/app/procstats/AssociationState$SourceKey; 18 +Landroid/content/pm/RegisteredServicesCache$2; 18 +Landroid/content/pm/UserPackage; 18 +Landroid/app/time/TimeZoneCapabilities; 18 +Lcom/android/internal/util/function/LongObjPredicate; 18 +Landroid/app/servertransaction/NewIntentItem; 18 +Landroid/app/PropertyInvalidatedCache;.sCorkedInvalidates:Ljava/util/HashMap; 18 +Lcom/android/internal/os/StatsdHiddenApiUsageLogger;.sInstance:Lcom/android/internal/os/StatsdHiddenApiUsageLogger; 18 +Landroid/app/admin/DevicePolicyManagerInternal$OnCrossProfileWidgetProvidersChangeListener; 18 +Landroid/app/usage/AppStandbyInfo; 18 +Landroid/graphics/GraphicsStatsService; 18 +Lcom/android/internal/os/LongArrayMultiStateCounter; 18 +Landroid/graphics/Bitmap$CompressFormat; 18 +Landroid/media/audiopolicy/AudioVolumeGroup; 18 +Landroid/content/pm/CrossProfileAppsInternal; 18 +Landroid/os/PowerManagerInternal; 18 +Landroid/hardware/location/GeofenceHardwareImpl; 18 +Landroid/app/AppOpsManager$AttributedOpEntry; 18 +Landroid/attention/AttentionManagerInternal; 18 +Landroid/telecom/Log; 18 +Landroid/accounts/AccountManagerInternal; 18 +Landroid/content/pm/ShortcutServiceInternal$ShortcutChangeListener; 18 +Landroid/os/PatternMatcher;.sParsedPatternScratch:[I 18 +Landroid/app/AppOpsManager$NoteOpEvent; 18 +Lcom/android/internal/R$styleable;.Window:[I 18 +Landroid/content/pm/dex/ArtManagerInternal; 18 +Landroid/content/pm/PackageInstaller$SessionInfo; 18 +Landroid/app/servertransaction/StartActivityItem; 18 +Landroid/content/pm/PackageManager;.sCacheAutoCorker:Landroid/app/PropertyInvalidatedCache$AutoCorker; 18 +Landroid/graphics/Region;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 18 +Landroid/app/Notification$MediaStyle; 18 +Landroid/app/time/TimeZoneConfiguration; 18 +Lcom/android/internal/os/LongMultiStateCounter; 18 +Landroid/service/voice/VoiceInteractionManagerInternal; 18 +Landroid/view/Display$HdrCapabilities; 18 +Landroid/media/AudioSystem$AudioRecordingCallback; 18 +Landroid/app/servertransaction/DestroyActivityItem; 18 +Lcom/android/internal/os/RuntimeInit$ApplicationWtfHandler; 18 +Landroid/net/metrics/IpManagerEvent; 18 +Landroid/net/metrics/NetworkEvent; 18 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.7:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mLock:Ljava/lang/Object; 18 +Landroid/app/AppOpsManagerInternal; 18 +Landroid/content/res/ResourceTimer; 18 +Lcom/android/internal/infra/AbstractRemoteService$AsyncRequest; 18 +Lcom/android/internal/statusbar/NotificationVisibility$NotificationLocation; 18 +Landroid/app/servertransaction/ObjectPool;.sPoolSync:Ljava/lang/Object; 18 +Landroid/content/pm/PackageManager;.sCacheAutoCorker:Landroid/app/PropertyInvalidatedCache$AutoCorker;.mLock:Ljava/lang/Object; 18 +Landroid/app/admin/DevicePolicyManagerInternal; 18 +Landroid/webkit/WebViewZygote; 18 +Landroid/view/DisplayAddress$Physical; 18 +Landroid/accounts/AccountManagerInternal$OnAppPermissionChangeListener; 18 +Lcom/android/internal/os/BatteryStatsHistory$HistoryStepDetailsCalculator; 18 +Landroid/appwidget/AppWidgetProviderInfo; 18 +Landroid/provider/Settings; 18 +Lcom/android/server/AppWidgetBackupBridge; 18 +Landroid/content/pm/RegisteredServicesCacheListener; 18 +Landroid/window/IOnBackInvokedCallback$Stub$Proxy; 18 +Landroid/view/ViewDebug$ExportedProperty; 18 +Landroid/text/format/TimeFormatter; 18 +Landroid/content/ComponentName$WithComponentName; 18 +Landroid/hardware/location/ContextHubInfo; 18 +Landroid/app/servertransaction/ActivityResultItem; 18 +Landroid/hardware/display/DeviceProductInfo$ManufactureDate; 18 +Lcom/android/internal/util/function/DodecConsumer; 18 +Landroid/app/PropertyInvalidatedCache;.sCorks:Ljava/util/HashMap; 18 +Landroid/app/ApplicationExitInfo; 18 +Lcom/android/server/usage/AppStandbyInternal; 18 +Landroid/view/autofill/AutofillManagerInternal; 18 +Lcom/android/internal/infra/AbstractRemoteService$VultureCallback; 18 +Landroid/service/notification/NotificationListenerService$RankingMap; 18 +Landroid/service/notification/ConditionProviderService; 18 +Landroid/net/metrics/ApfProgramEvent; 18 +Lcom/android/internal/infra/AndroidFuture$1; 18 +Landroid/app/servertransaction/StopActivityItem; 18 +Landroid/app/PropertyInvalidatedCache$AutoCorker$1; 18 +Landroid/util/NtpTrustedTime; 18 +Landroid/content/pm/parsing/ApkLite; 18 +Lcom/android/server/LocalServices;.sLocalServiceObjects:Landroid/util/ArrayMap; 18 +Landroid/app/PropertyInvalidatedCache;.sCorkLock:Ljava/lang/Object; 18 +Landroid/app/PendingIntent$FinishedDispatcher; 18 +Landroid/os/ResultReceiver$MyResultReceiver; 18 +Landroid/os/ServiceSpecificException; 18 +Landroid/os/UEventObserver; 18 +Landroid/os/SharedMemory; 18 +Lcom/android/internal/util/function/DodecFunction; 18 +Landroid/content/pm/BaseParceledListSlice$1; 18 +Landroid/content/pm/FallbackCategoryProvider;.sFallbacks:Landroid/util/ArrayMap; 18 +Lcom/android/internal/content/om/OverlayConfig$PackageProvider; 18 +Landroid/util/ArrayMap;.sBaseCacheLock:Ljava/lang/Object; 18 +Landroid/debug/AdbManagerInternal; 18 +Landroid/view/WindowManagerPolicyConstants$PointerEventListener; 18 +Landroid/telephony/ServiceState; 18 +Lcom/android/internal/os/LooperStats; 18 +Landroid/content/pm/LauncherApps$ShortcutQuery$QueryFlags; 18 +Landroid/app/ActivityManager; 18 +Landroid/app/assist/ActivityId; 18 +Landroid/hardware/display/DeviceProductInfo; 18 +Lcom/android/internal/os/LongArrayMultiStateCounter;.sTmpArrayContainer:Ljava/util/concurrent/atomic/AtomicReference; 18 +Lcom/android/internal/os/LongArrayMultiStateCounter$LongArrayContainer; 18 +Landroid/service/notification/ZenPolicy; 18 +Landroid/content/pm/PackageManager$Property; 18 +Lcom/android/internal/content/om/OverlayConfig; 18 +Landroid/content/pm/ResolveInfo; 18 +Lcom/android/internal/os/KernelCpuBpfTracking; 18 +Landroid/content/pm/RegisteredServicesCache$1; 18 +Landroid/telecom/Logging/SessionManager$ISessionListener; 18 +Landroid/media/AudioPlaybackConfiguration$PlayerDeathMonitor; 18 +Landroid/service/autofill/FillContext; 18 +Landroid/graphics/Region;.sPool:Landroid/util/Pools$SynchronizedPool; 18 +Landroid/util/MemoryIntArray; 18 +Lcom/android/internal/config/appcloning/AppCloningDeviceConfigHelper; 18 +Landroid/os/storage/StorageManagerInternal; 18 +Landroid/media/AudioSystem$ErrorCallback; 18 +Landroid/service/notification/ZenModeConfig; 18 +Landroid/media/AudioPlaybackConfiguration; 18 +Landroid/content/pm/UserPackage;.sCache:Landroid/util/SparseArrayMap;.mData:Landroid/util/SparseArray; 18 +Landroid/app/AppOpsManager$SamplingStrategy; 18 +Landroid/app/servertransaction/ActivityConfigurationChangeItem; 18 +Landroid/hardware/location/GeofenceHardwareService; 18 +Landroid/os/RemoteCallback$1; 18 +Landroid/os/FileUtils$ProgressListener; 18 +Landroid/annotation/StringRes; 18 +Lcom/android/server/WidgetBackupProvider; 18 +Landroid/media/AudioManagerInternal$RingerModeDelegate; 18 +Landroid/hardware/biometrics/ComponentInfoInternal; 18 +Landroid/media/AudioManagerInternal; 18 +Landroid/media/AudioSystem$DynamicPolicyCallback; 18 +Landroid/os/DeadObjectException; 18 +Landroid/content/pm/ShortcutServiceInternal; 18 +Landroid/view/ViewDebug$FlagToString; 18 +Landroid/os/storage/StorageVolume; 18 +Landroid/window/TaskAppearedInfo; 18 +Lcom/android/internal/display/BrightnessSynchronizer; 18 +Lcom/android/internal/infra/ServiceConnector$Impl$CompletionAwareJob; 18 +Landroid/os/strictmode/UnbufferedIoViolation; 19 +Landroid/app/usage/UsageStats; 20 +Landroid/app/usage/CacheQuotaHint; 21 +Landroid/service/watchdog/ExplicitHealthCheckService$PackageConfig; 21 +Landroid/os/BaseBundle; 22 +Landroid/os/Parcel$ReadWriteHelper; 23 +Landroid/util/SparseArray; 24 +Landroid/app/Instrumentation; 25 +Landroid/content/pm/PathPermission; 26 +[Landroid/content/pm/ConfigurationInfo; 26 +Landroid/content/pm/ActivityInfo; 26 +Landroid/content/pm/Attribution; 26 +Landroid/content/pm/ConfigurationInfo; 26 +Landroid/content/pm/ActivityInfo$WindowLayout; 26 +Landroid/os/PatternMatcher; 26 +Landroid/content/pm/ServiceInfo; 26 +[Landroid/content/pm/FeatureInfo; 26 +[Landroid/content/pm/FeatureGroupInfo; 26 +Landroid/content/pm/SigningInfo; 26 +[Landroid/content/pm/InstrumentationInfo; 26 +[Landroid/content/pm/ServiceInfo; 26 +[Landroid/os/PatternMatcher; 26 +Landroid/content/pm/ComponentInfo; 26 +[Landroid/content/pm/PermissionInfo; 26 +[Landroid/content/pm/ActivityInfo; 26 +[Landroid/content/pm/Attribution; 26 +Landroid/content/pm/SharedLibraryInfo; 26 +Landroid/content/pm/FeatureGroupInfo; 26 +Landroid/content/pm/InstrumentationInfo; 26 +[Landroid/content/pm/Signature; 26 +[Landroid/content/pm/ProviderInfo; 26 +[Landroid/content/pm/PathPermission; 26 +Landroid/content/pm/Signature; 26 +Landroid/graphics/drawable/NinePatchDrawable; 28 +Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_APERTURES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 29 +Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_FOCAL_LENGTHS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 30 +Landroid/hardware/camera2/params/StreamConfigurationDuration; 31 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/params/StreamConfiguration; 31 +Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_CAPABILITIES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/params/HighSpeedVideoConfiguration; 31 +Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 31 +Landroid/hardware/camera2/CameraCharacteristics;.LENS_FACING:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 32 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 33 +Landroid/hardware/camera2/marshal/MarshalRegistry;.sMarshalerMap:Ljava/util/HashMap; 33 +Landroid/hardware/devicestate/DeviceStateManagerGlobal; 34 +Lgov/nist/javax/sip/header/AuthenticationHeader;.SIGNATURE:Ljava/lang/String; 40 +Landroid/app/slice/Slice;.SUBTYPE_SOURCE:Ljava/lang/String; 41 +Ljavax/sip/message/Request;.INFO:Ljava/lang/String; 41 +Lgov/nist/javax/sip/header/extensions/ReferencesHeader;.SERVICE:Ljava/lang/String; 42 +Landroid/icu/impl/locale/LocaleValidityChecker$SpecialCase;.normal:Landroid/icu/impl/locale/LocaleValidityChecker$SpecialCase;.name:Ljava/lang/String; 42 +Lgov/nist/javax/sip/address/NetObject;.PHONE:Ljava/lang/String; 42 +Landroid/icu/impl/ValidIdentifiers$Datatype;.language:Landroid/icu/impl/ValidIdentifiers$Datatype;.name:Ljava/lang/String; 42 +Landroid/icu/text/MessageFormat;.dateModifierList:[Ljava/lang/String;.3:Ljava/lang/String; 42 +Landroid/view/translation/UiTranslationManager;.EXTRA_PACKAGE_NAME:Ljava/lang/String; 42 +Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.140:Ljava/lang/String; 43 +Landroid/icu/impl/units/UnitPreferences;.measurementSystem:Ljava/util/Map;.m:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.15:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 44 +Lcom/android/i18n/timezone/TimeZoneFinder;.COUNTRY_ELEMENT:Ljava/lang/String; 45 +Landroid/app/usage/UsageEvents$Event;.DEVICE_EVENT_PACKAGE_NAME:Ljava/lang/String; 46 +Landroid/icu/text/MessageFormat;.rootLocale:Ljava/util/Locale;.baseLocale:Lsun/util/locale/BaseLocale;.language:Ljava/lang/String; 47 +Landroid/graphics/Bitmap; 68 +Landroid/view/inputmethod/IInputMethodManagerGlobalInvoker; 69 +Landroid/view/SurfaceControlRegistry; 70 +Lcom/android/internal/inputmethod/ImeTracing; 70 +Lcom/android/internal/policy/DecorView; 71 +Landroid/view/ViewTreeObserver; 71 +Landroid/view/accessibility/AccessibilityNodeIdManager; 71 +Landroid/view/ViewRootImpl; 71 +Landroid/widget/FrameLayout; 71 +Landroid/view/ViewStub; 71 +Landroid/window/SurfaceSyncGroup; 72 +Landroid/view/Choreographer; 73 +Landroid/os/SystemProperties;.sChangeCallbacks:Ljava/util/ArrayList; 74 +Landroid/app/ActivityClient;.sInstance:Landroid/util/Singleton; 75 +Landroid/app/ActivityClient;.INTERFACE_SINGLETON:Landroid/app/ActivityClient$ActivityClientControllerSingleton; 75 +Landroid/view/autofill/AutofillId; 76 +Landroid/os/StrictMode$InstanceTracker;.sInstanceCounts:Ljava/util/HashMap; 77 +Landroid/widget/LinearLayout; 78 Landroid/view/ViewConfiguration;.sConfigurations:Landroid/util/SparseArray;.mKeys:[I 79 Landroid/view/ViewConfiguration;.sConfigurations:Landroid/util/SparseArray;.mValues:[Ljava/lang/Object; 79 Landroid/view/ViewConfiguration;.sConfigurations:Landroid/util/SparseArray; 79 -Landroid/widget/FrameLayout; 80 -Lcom/android/internal/inputmethod/ImeTracing; 80 -Lcom/android/internal/policy/DecorView; 80 -Landroid/view/accessibility/AccessibilityNodeIdManager; 80 -Landroid/view/ViewTreeObserver; 80 -Landroid/view/ViewRootImpl; 80 -Landroid/os/SystemProperties;.sChangeCallbacks:Ljava/util/ArrayList; 80 -Landroid/transition/ChangeTransform; 80 -Landroid/window/SurfaceSyncGroup; 80 -Landroid/transition/ChangeClipBounds; 80 -Landroid/view/SurfaceControlRegistry; 80 -Landroid/transition/ChangeImageTransform; 80 -Landroid/widget/LinearLayout; 80 -Landroid/view/ViewStub; 81 -Landroid/text/TextLine;.sCached:[Landroid/text/TextLine; 82 -Landroid/text/TextUtils; 82 -Landroid/graphics/TemporaryBuffer; 82 -Landroid/content/res/ColorStateList;.sCache:Landroid/util/SparseArray; 83 -Landroid/text/Layout;.sTempRect:Landroid/graphics/Rect; 84 -Landroid/widget/ImageView; 85 -Landroid/graphics/drawable/ColorDrawable; 86 -Landroid/os/StrictMode$InstanceTracker;.sInstanceCounts:Ljava/util/HashMap; 87 -Landroid/app/ActivityClient;.INTERFACE_SINGLETON:Landroid/app/ActivityClient$ActivityClientControllerSingleton; 88 -Landroid/app/ActivityClient;.sInstance:Landroid/util/Singleton; 88 -Landroid/view/AbsSavedState$1; 89 -Landroid/app/FragmentManagerState; 90 -Landroid/window/OnBackAnimationCallback; 91 -Landroid/animation/AnimatorInflater;.sTmpTypedValue:Landroid/util/TypedValue; 92 -Landroid/graphics/drawable/RippleDrawable; 93 -Landroid/view/inputmethod/IInputMethodManagerGlobalInvoker; 94 -Landroid/app/ActivityTaskManager;.IActivityTaskManagerSingleton:Landroid/util/Singleton; 95 -Landroid/view/Choreographer; 96 -Lcom/android/internal/os/SomeArgs; 97 -Landroid/graphics/Bitmap; 98 -Landroid/view/autofill/AutofillId; 99 -Landroid/view/inputmethod/BaseInputConnection;.COMPOSING:Ljava/lang/Object; 100 -Landroid/text/Selection;.SELECTION_MEMORY:Ljava/lang/Object; 101 -Landroid/text/Selection;.SELECTION_END:Ljava/lang/Object; 101 -Landroid/text/Selection;.SELECTION_START:Ljava/lang/Object; 101 -Landroid/text/SpannableStringBuilder;.sCachedIntBuffer:[[I 102 -Landroid/text/Selection$MemoryTextWatcher; 103 -Landroid/text/SpanWatcher; 104 -Lcom/android/internal/util/ArrayUtils;.sCache:[Ljava/lang/Object; 105 -Ljava/lang/Integer;.SMALL_NEG_VALUES:[Ljava/lang/String; 106 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 107 -Lsun/nio/ch/SharedFileLockTable;.lockMap:Ljava/util/concurrent/ConcurrentHashMap; 108 -Lsun/nio/ch/FileChannelImpl; 108 -Landroid/database/sqlite/SQLiteDatabase$CursorFactory; 109 -Landroid/database/sqlite/SQLiteDebug$NoPreloadHolder; 110 -Landroid/database/sqlite/SQLiteCompatibilityWalFlags; 110 -Landroid/database/sqlite/SQLiteGlobal; 110 -Landroid/database/CursorWindow; 111 -Landroid/content/ContentResolver; 112 -Ljava/nio/charset/Charset; 113 -Landroid/app/ContextImpl; 114 -Ljava/util/concurrent/Executors$DefaultThreadFactory;.poolNumber:Ljava/util/concurrent/atomic/AtomicInteger; 115 -Landroid/content/pm/PackageManager;.sPackageInfoCache:Landroid/app/PropertyInvalidatedCache;.mCache:Ljava/util/LinkedHashMap; 116 -Landroid/content/pm/PackageManager;.sApplicationInfoCache:Landroid/app/PropertyInvalidatedCache;.mCache:Ljava/util/LinkedHashMap; 117 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager;.systemContext:Ljava/util/logging/LogManager$LoggerContext;.namedLoggers:Ljava/util/Hashtable;.table:[Ljava/util/Hashtable$HashtableEntry; 118 -Landroid/ddm/DdmHandleAppName; 118 -Landroid/provider/DeviceConfigInitializer; 118 -Lsun/misc/Cleaner; 118 -Ldalvik/system/CloseGuard; 118 -Landroid/graphics/Typeface; 118 -Landroid/os/BinderProxy;.sProxyMap:Landroid/os/BinderProxy$ProxyMap;.mMainIndexKeys:[[Ljava/lang/Long; 118 -Landroid/permission/PermissionManager; 118 -Landroid/media/MediaFrameworkPlatformInitializer; 118 -Ljava/util/TimeZone; 118 -Landroid/os/Environment; 118 -Landroid/compat/Compatibility; 118 -Landroid/os/ServiceManager; 118 -Landroid/content/pm/PackageManager;.sApplicationInfoCache:Landroid/app/PropertyInvalidatedCache; 118 -Ljava/util/Locale$NoImagePreloadHolder; 118 -Ljava/lang/System; 118 -Lcom/android/internal/os/RuntimeInit; 118 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager;.systemContext:Ljava/util/logging/LogManager$LoggerContext;.namedLoggers:Ljava/util/Hashtable; 118 -Ldalvik/system/VMRuntime;.THE_ONE:Ldalvik/system/VMRuntime; 118 -Landroid/view/View; 118 -Landroid/hardware/display/DisplayManagerGlobal; 118 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager; 118 -Landroid/telephony/TelephonyFrameworkInitializer; 118 -Landroid/se/omapi/SeFrameworkInitializer; 118 -Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap;.mHashes:[I 118 -Landroid/security/net/config/SystemCertificateSource$NoPreloadHolder; 118 -Landroid/security/net/config/ApplicationConfig; 118 -Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map; 118 -Ljava/util/Locale; 118 -Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map;.table:[Ljava/util/WeakHashMap$Entry; 118 -Ljava/security/Provider; 118 -Ldalvik/system/ZygoteHooks; 118 -Landroid/os/Message; 118 -Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object; 118 -Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap; 118 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap; 118 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager;.userContext:Ljava/util/logging/LogManager$LoggerContext;.namedLoggers:Ljava/util/Hashtable; 118 -Ljava/lang/ThreadGroup;.mainThreadGroup:Ljava/lang/ThreadGroup; 118 -Ldalvik/system/RuntimeHooks; 118 -Landroid/nfc/NfcFrameworkInitializer; 118 -Landroid/os/Looper; 118 -Landroid/os/LocaleList; 118 -Ldalvik/system/SocketTagger; 118 -Landroid/icu/util/TimeZone; 118 -Landroid/util/ArraySet; 118 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager;.systemContext:Ljava/util/logging/LogManager$LoggerContext;.root:Ljava/util/logging/LogManager$LogNode; 118 -Landroid/os/BinderProxy;.sProxyMap:Landroid/os/BinderProxy$ProxyMap;.mMainIndexValues:[Ljava/util/ArrayList; 118 -Ljava/util/Random;.seedUniquifier:Ljava/util/concurrent/atomic/AtomicLong; 118 -Landroid/app/ActivityThread; 118 -Landroid/os/Binder; 118 -Ljava/lang/ThreadLocal;.nextHashCode:Ljava/util/concurrent/atomic/AtomicInteger; 119 -Landroid/os/Parcel; 120 -Landroid/system/UnixSocketAddress; 120 -Ljava/lang/ThreadGroup;.systemThreadGroup:Ljava/lang/ThreadGroup; 120 -Ljava/lang/Daemons$FinalizerDaemon;.INSTANCE:Ljava/lang/Daemons$FinalizerDaemon; 120 -Landroid/os/Parcel;.sPairedCreators:Ljava/util/HashMap; 120 -Ljava/lang/Thread; 120 -Landroid/os/Parcel;.mCreators:Ljava/util/HashMap; 120 -Ljava/lang/Daemons$FinalizerDaemon;.INSTANCE:Ljava/lang/Daemons$FinalizerDaemon;.progressCounter:Ljava/util/concurrent/atomic/AtomicInteger; 120 -Landroid/system/StructPollfd; 120 -Ljava/lang/Daemons$HeapTaskDaemon;.INSTANCE:Ljava/lang/Daemons$HeapTaskDaemon; 120 -Landroid/system/StructTimeval; 120 -Ldalvik/system/VMRuntime;.THE_ONE:Ldalvik/system/VMRuntime;.allocationCount:Ljava/util/concurrent/atomic/AtomicInteger; 120 -Ljava/lang/Daemons$ReferenceQueueDaemon;.INSTANCE:Ljava/lang/Daemons$ReferenceQueueDaemon;.progressCounter:Ljava/util/concurrent/atomic/AtomicInteger; 120 -Landroid/os/GraphicsEnvironment;.sInstance:Landroid/os/GraphicsEnvironment; 120 -Ljava/lang/Daemons$FinalizerWatchdogDaemon;.INSTANCE:Ljava/lang/Daemons$FinalizerWatchdogDaemon; 120 -Ljava/lang/ref/FinalizerReference; 120 -Landroid/os/Process; 120 -Ljava/lang/Daemons$ReferenceQueueDaemon;.INSTANCE:Ljava/lang/Daemons$ReferenceQueueDaemon; 120 -Lcom/android/internal/os/BinderInternal; 120 -Landroid/app/ApplicationLoaders;.gApplicationLoaders:Landroid/app/ApplicationLoaders;.mLoaders:Landroid/util/ArrayMap; 121 -Landroid/app/DexLoadReporter;.INSTANCE:Landroid/app/DexLoadReporter;.mDataDirs:Ljava/util/Set;.map:Ljava/util/HashMap; 122 -Ldalvik/system/BaseDexClassLoader; 122 -Landroid/renderscript/RenderScriptCacheDir; 122 -Landroid/graphics/Compatibility; 123 -Llibcore/io/Libcore; 123 -Landroid/provider/FontsContract; 123 -Ljava/security/Security;.version:Ljava/util/concurrent/atomic/AtomicInteger; 123 -Llibcore/net/NetworkSecurityPolicy; 123 -Lsun/security/jca/Providers; 123 -Landroid/graphics/Canvas; 123 -Landroid/os/StrictMode; 124 -Landroid/content/pm/PackageManager;.sPackageInfoCache:Landroid/app/PropertyInvalidatedCache; 125 -Lcom/android/internal/os/StatsdHiddenApiUsageLogger;.sInstance:Lcom/android/internal/os/StatsdHiddenApiUsageLogger; 126 -Ljava/util/logging/LogManager;.manager:Ljava/util/logging/LogManager;.loggerRefQueue:Ljava/lang/ref/ReferenceQueue; 127 -Landroid/view/WindowManagerGlobal; 128 -Lcom/android/internal/util/function/pooled/PooledLambdaImpl;.sPool:Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool; 129 -Lcom/android/internal/util/function/pooled/PooledLambdaImpl;.sPool:Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;.mPool:[Ljava/lang/Object; 129 -Landroid/view/inputmethod/InputMethodManager; 130 -Landroid/media/MediaRouter; 131 -Landroid/hardware/SensorPrivacyManager; 132 -Landroid/os/storage/StorageManager; 133 -Landroid/view/contentcapture/ContentCaptureManager; 134 -Landroid/hardware/input/InputManager; 134 -Landroid/app/people/PeopleManager; 134 -Landroid/media/session/MediaSessionManager; 134 -Landroid/security/attestationverification/AttestationVerificationManager; 134 -Landroid/net/vcn/VcnManager; 134 -Landroid/os/RecoverySystem; 134 -Landroid/net/NetworkPolicyManager; 134 -Landroid/net/wifi/sharedconnectivity/app/SharedConnectivityManager; 134 -Landroid/permission/PermissionControllerManager; 134 -Landroid/app/tare/EconomyManager; 134 -Landroid/view/translation/TranslationManager; 134 -Landroid/view/textclassifier/TextClassificationManager; 134 -Landroid/view/autofill/AutofillManager; 134 -Landroid/os/SystemConfigManager; 134 -Landroid/view/LayoutInflater; 134 -Landroid/credentials/CredentialManager; 134 -Landroid/service/persistentdata/PersistentDataBlockManager; 134 -Landroid/view/textservice/TextServicesManager; 134 -Landroid/app/admin/DevicePolicyManager; 134 -Ljava/lang/StackStreamFactory; 134 -Landroid/view/WindowManager; 134 -Landroid/app/contentsuggestions/ContentSuggestionsManager; 134 -Landroid/media/tv/tunerresourcemanager/TunerResourceManager; 134 -Landroid/telephony/SubscriptionManager; 134 -Landroid/os/HardwarePropertiesManager; 134 -Landroid/media/AudioManager; 135 -Landroid/telephony/TelephonyManager; 136 -Landroid/util/ArrayMap; 137 -Landroid/app/QueuedWork; 138 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.0:Ljava/util/WeakHashMap$Entry; 139 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap; 140 -Ljava/util/concurrent/ScheduledThreadPoolExecutor;.sequencer:Ljava/util/concurrent/atomic/AtomicLong; 141 -Landroid/util/Log; 142 -Ljava/util/Collections$SynchronizedCollection; 143 -Ljava/util/Set; 143 -Ljava/util/Collections$SynchronizedSet; 143 -Ljava/util/Collection; 143 -Ljava/lang/Integer;.SMALL_NONNEG_VALUES:[Ljava/lang/String; 144 -Landroid/content/ComponentName; 145 -Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle; 146 -Landroid/os/PersistableBundle;.EMPTY:Landroid/os/PersistableBundle; 147 -Landroid/icu/impl/locale/BaseLocale;.CACHE:Landroid/icu/impl/locale/BaseLocale$Cache;._map:Ljava/util/concurrent/ConcurrentHashMap; 148 -Ljava/util/GregorianCalendar; 149 -Ljava/text/DontCareFieldPosition;.INSTANCE:Ljava/text/FieldPosition; 150 -Landroid/app/UiModeManager; 151 -Ljdk/internal/access/SharedSecrets; 152 -Landroid/icu/impl/ZoneMeta;.CANONICAL_ID_CACHE:Landroid/icu/impl/ICUCache; 153 -Landroid/icu/impl/ZoneMeta;.SYSTEM_ZONE_CACHE:Landroid/icu/impl/ZoneMeta$SystemTimeZoneCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 154 -Ljava/time/ZoneOffset;.ID_CACHE:Ljava/util/concurrent/ConcurrentMap; 155 -Ljava/time/ZoneOffset;.ID_CACHE:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node; 155 -Ljava/time/ZoneOffset;.SECONDS_CACHE:Ljava/util/concurrent/ConcurrentMap; 155 -Ljava/time/ZoneOffset;.SECONDS_CACHE:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.0:Ljava/util/concurrent/ConcurrentHashMap$Node;.next:Ljava/util/concurrent/ConcurrentHashMap$Node; 155 -Ljava/time/ZoneOffset;.SECONDS_CACHE:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node; 155 -Landroid/widget/TextView; 156 -Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;.sPool:Landroid/util/Pools$SimplePool;.mPool:[Ljava/lang/Object; 157 -Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;.sPool:Landroid/util/Pools$SimplePool; 157 -Landroid/view/ViewGroup; 158 -Landroid/graphics/Rect; 159 -Landroid/view/View$BaseSavedState; 160 -Landroid/widget/Button; 161 -Landroid/widget/ImageButton; 162 -Landroid/view/View$OnHoverListener; 163 -Landroid/widget/Toolbar; 164 -Landroid/hardware/display/ColorDisplayManager$ColorDisplayManagerInternal; 165 -Landroid/app/WallpaperManager; 166 -Landroid/graphics/ColorSpace$Model;.RGB:Landroid/graphics/ColorSpace$Model; 166 -Landroid/graphics/drawable/AdaptiveIconDrawable; 167 -Landroid/animation/ValueAnimator$DurationScaleChangeListener; 168 -Landroid/widget/Toast; 168 -Landroid/app/smartspace/SmartspaceSession$OnTargetsAvailableListener; 168 -Landroid/view/CrossWindowBlurListeners; 168 -Landroid/app/servertransaction/ActivityRelaunchItem; 169 -[Ljava/util/concurrent/ForkJoinTask; 169 -Landroid/view/WindowManager$LayoutParams; 169 -Ljava/util/concurrent/ForkJoinPool$WorkQueue; 169 -Landroid/app/prediction/AppTargetEvent; 169 -Lorg/xmlpull/v1/XmlPullParserException; 169 -Landroid/app/servertransaction/ObjectPool;.sPoolMap:Ljava/util/Map; 170 -Landroid/app/servertransaction/ClientTransaction; 170 -Landroid/app/servertransaction/StopActivityItem; 170 -Landroid/system/ErrnoException; 171 -Landroid/hardware/location/ContextHubTransaction$OnCompleteListener; 172 -Landroid/app/PendingIntent$OnFinished; 172 -Ljava/lang/NullPointerException; 173 -Landroid/os/strictmode/DiskReadViolation; 174 -Lorg/apache/http/params/HttpParams; 175 -Landroid/nfc/cardemulation/CardEmulation; 176 -Ljava/io/FileDescriptor; 177 -Landroid/content/pm/PackageManager$OnPermissionsChangedListener; 178 -Landroid/security/keystore2/KeyStoreCryptoOperationUtils; 179 -Landroid/app/ActivityTaskManager; 180 -Landroid/util/EventLog; 181 -Ljava/net/URLConnection; 181 -Ljava/net/SocketException; 181 -Ljava/lang/reflect/InvocationTargetException; 181 -Ljava/lang/Enum; 182 -Landroid/widget/AbsListView$SelectionBoundsAdjuster; 183 -Ljava/lang/ClassNotFoundException; 183 -Landroid/content/SyncStatusObserver; 184 -Landroid/content/AsyncTaskLoader$LoadTask; 185 -Landroid/app/LoaderManager$LoaderCallbacks; 185 -Landroid/webkit/CookieSyncManager; 186 -Landroid/webkit/WebViewProvider$ViewDelegate; 187 -Landroid/webkit/WebView; 187 -Landroid/webkit/WebViewProvider$ScrollDelegate; 187 -Landroid/webkit/WebViewProvider; 187 -Landroid/webkit/WebViewFactory;.sTimestamps:Landroid/webkit/WebViewFactory$StartupTimestamps; 188 -Landroid/webkit/WebViewFactoryProvider; 189 -Landroid/webkit/WebViewFactory; 190 -Landroid/os/PowerManager$OnThermalStatusChangedListener; 191 -Landroid/os/Bundle; 192 -Landroid/widget/ProgressBar; 193 -Landroid/graphics/Bitmap$Config;.ALPHA_8:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/Bitmap$Config;.RGB_565:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/Bitmap$Config;.RGBA_1010102:Landroid/graphics/Bitmap$Config; 194 -Landroid/renderscript/Allocation;.mBitmapOptions:Landroid/graphics/BitmapFactory$Options;.inPreferredConfig:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/Bitmap$Config;.RGBA_F16:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/Bitmap$Config;.ARGB_4444:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/Bitmap$Config;.HARDWARE:Landroid/graphics/Bitmap$Config; 194 -Landroid/graphics/drawable/StateListDrawable; 195 -Landroid/view/PointerIcon;.gSystemIconsByDisplay:Landroid/util/SparseArray; 196 -Landroid/view/PointerIcon; 196 -Ljavax/net/ssl/SSLServerSocketFactory; 197 -Ljavax/net/ssl/SSLSocketFactory; 198 -Ljavax/net/ssl/HttpsURLConnection$NoPreloadHolder; 198 -Ljavax/net/ssl/SSLSessionContext; 199 -Lcom/android/org/bouncycastle/crypto/CryptoServicesRegistrar; 200 -Lsun/security/x509/PKIXExtensions;.KeyUsage_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/x509/PKIXExtensions;.PolicyConstraints_Id:Lsun/security/util/ObjectIdentifier; 201 -Ljava/security/cert/PKIXRevocationChecker$Option;.ONLY_END_ENTITY:Ljava/security/cert/PKIXRevocationChecker$Option; 201 -Lsun/security/x509/PKIXExtensions;.ExtendedKeyUsage_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/provider/X509Factory;.certCache:Lsun/security/util/Cache; 201 -Lsun/security/x509/PKIXExtensions;.CertificatePolicies_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/x509/PKIXExtensions;.NameConstraints_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/x509/PKIXExtensions;.AuthorityKey_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/provider/X509Factory;.certCache:Lsun/security/util/Cache;.cacheMap:Ljava/util/Map; 201 -Ljava/security/cert/PKIXRevocationChecker$Option;.NO_FALLBACK:Ljava/security/cert/PKIXRevocationChecker$Option; 201 -Lsun/security/x509/PKIXExtensions;.SubjectAlternativeName_Id:Lsun/security/util/ObjectIdentifier; 201 -Lsun/security/x509/PKIXExtensions;.PolicyMappings_Id:Lsun/security/util/ObjectIdentifier; 202 -Lsun/security/x509/PKIXExtensions;.InhibitAnyPolicy_Id:Lsun/security/util/ObjectIdentifier; 202 -Lsun/security/x509/PKIXExtensions;.BasicConstraints_Id:Lsun/security/util/ObjectIdentifier; 202 -Ljava/security/Security;.spiMap:Ljava/util/Map; 203 -Lsun/security/x509/X500Name;.commonName_oid:Lsun/security/util/ObjectIdentifier; 204 -Lsun/security/x509/X500Name;.countryName_oid:Lsun/security/util/ObjectIdentifier; 204 -Lsun/security/x509/X500Name;.orgName_oid:Lsun/security/util/ObjectIdentifier; 204 -Ljava/nio/charset/Charset;.cache2:Ljava/util/HashMap; 205 -Ljava/net/URL;.handlers:Ljava/util/Hashtable;.table:[Ljava/util/Hashtable$HashtableEntry; 206 -Ljava/net/URL;.handlers:Ljava/util/Hashtable; 206 -Ljava/net/Inet6AddressImpl;.addressCache:Ljava/net/AddressCache;.cache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap; 207 -Ljava/net/Proxy$Type;.DIRECT:Ljava/net/Proxy$Type; 208 -Ljava/net/ProxySelector;.theProxySelector:Ljava/net/ProxySelector; 208 -Lcom/android/okhttp/okio/SegmentPool; 209 -Lcom/android/okhttp/internal/http/AuthenticatorAdapter;.INSTANCE:Lcom/android/okhttp/Authenticator; 209 -Lcom/android/okhttp/HttpsHandler;.HTTP_1_1_ONLY:Ljava/util/List;.element:Ljava/lang/Object; 209 -Lcom/android/okhttp/ConfigAwareConnectionPool;.instance:Lcom/android/okhttp/ConfigAwareConnectionPool;.networkEventDispatcher:Llibcore/net/event/NetworkEventDispatcher;.listeners:Ljava/util/List; 210 -Lcom/android/okhttp/Dns;.SYSTEM:Lcom/android/okhttp/Dns; 210 -Lcom/android/okhttp/ConfigAwareConnectionPool;.instance:Lcom/android/okhttp/ConfigAwareConnectionPool; 210 -Lcom/android/okhttp/okio/AsyncTimeout; 211 -Ljava/lang/IllegalAccessException; 212 -Ljavax/net/ssl/SSLContext; 213 -Ljavax/net/ssl/HttpsURLConnection; 213 -Ljava/security/Security;.props:Ljava/util/Properties;.map:Ljava/util/concurrent/ConcurrentHashMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.12:Ljava/util/concurrent/ConcurrentHashMap$Node;.next:Ljava/util/concurrent/ConcurrentHashMap$Node; 214 -Ljava/security/Security;.props:Ljava/util/Properties;.map:Ljava/util/concurrent/ConcurrentHashMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.30:Ljava/util/concurrent/ConcurrentHashMap$Node; 214 -Landroid/database/sqlite/SQLiteTransactionListener; 215 -Landroid/accounts/OnAccountsUpdateListener; 216 -Landroid/accounts/AccountManager$20; 217 -Lsun/nio/ch/FileChannelImpl$Unmapper; 218 -Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map;.queue:Ljava/lang/ref/ReferenceQueue; 219 -Landroid/text/method/SingleLineTransformationMethod; 220 -Landroid/widget/RelativeLayout; 221 -Landroid/graphics/drawable/BitmapDrawable; 222 -Landroid/graphics/drawable/GradientDrawable; 223 -Landroid/animation/PropertyValuesHolder;.sGetterPropertyMap:Ljava/util/HashMap; 224 -Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;.sJNISetterPropertyMap:Ljava/util/HashMap; 225 -Landroid/graphics/drawable/Drawable;.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode; 226 -Landroid/text/StaticLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool; 227 -Landroid/text/StaticLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 227 -Ljava/util/concurrent/ThreadLocalRandom; 228 -Landroid/widget/Space; 229 -Landroid/widget/ScrollView; 230 -Landroid/text/style/LineHeightSpan; 231 -Landroid/text/style/TabStopSpan; 232 -Landroid/text/style/ReplacementSpan; 233 -Landroid/text/style/MetricAffectingSpan; 233 -Landroid/text/style/LeadingMarginSpan; 233 +Landroid/view/WindowManagerImpl; 80 +Landroid/view/accessibility/AccessibilityManager; 81 +Landroid/app/ActivityTaskManager;.IActivityTaskManagerSingleton:Landroid/util/Singleton; 82 +Landroid/os/Handler; 83 +Landroid/transition/ChangeImageTransform; 109 +Landroid/transition/ChangeClipBounds; 109 +Landroid/transition/ChangeTransform; 109 +Landroid/graphics/drawable/ColorDrawable; 110 +Landroid/text/TextUtils; 111 +Landroid/graphics/TemporaryBuffer; 112 +Landroid/text/TextLine;.sCached:[Landroid/text/TextLine; 113 +Landroid/text/Layout;.sTempRect:Landroid/graphics/Rect; 114 +Landroid/widget/ImageView; 115 +Landroid/content/res/ColorStateList;.sCache:Landroid/util/SparseArray; 116 +Landroid/graphics/Bitmap;.sAllBitmaps:Ljava/util/WeakHashMap; 117 +Landroid/icu/impl/locale/BaseLocale;.CACHE:Landroid/icu/impl/locale/BaseLocale$Cache;._map:Ljava/util/concurrent/ConcurrentHashMap; 118 +Landroid/database/sqlite/SQLiteGlobal; 125 +Landroid/database/sqlite/SQLiteDebug$NoPreloadHolder; 125 +Landroid/database/sqlite/SQLiteCompatibilityWalFlags; 125 +Landroid/database/CursorWindow; 126 +Landroid/content/SharedPreferences; 127 +Landroid/app/AppOpsManager; 132 +Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap;.mHashes:[I 133 +Landroid/media/MediaFrameworkPlatformInitializer; 133 +Lcom/android/internal/os/RuntimeInit; 133 +Landroid/os/Message; 133 +Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map; 133 +Landroid/os/ServiceManager; 133 +Landroid/se/omapi/SeFrameworkInitializer; 133 +Landroid/ddm/DdmHandleAppName; 133 +Landroid/security/net/config/ApplicationConfig; 133 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.7:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object; 133 +Landroid/os/Environment; 133 +Landroid/os/Looper; 133 +Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map;.table:[Ljava/util/WeakHashMap$Entry; 133 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.7:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mCache:Ljava/util/LinkedHashMap; 133 +Landroid/os/StrictMode; 133 +Landroid/provider/DeviceConfigInitializer; 133 +Landroid/graphics/Typeface; 133 +Landroid/app/ActivityThread; 133 +Landroid/view/View; 133 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap; 133 +Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object; 133 +Landroid/telephony/TelephonyFrameworkInitializer; 133 +Landroid/util/ArraySet; 133 +Landroid/os/Binder; 133 +Landroid/os/LocaleList; 133 +Landroid/hardware/display/DisplayManagerGlobal; 133 +Landroid/app/LoadedApk;.sApplications:Landroid/util/ArrayMap; 133 +Landroid/security/net/config/SystemCertificateSource$NoPreloadHolder; 133 +Landroid/os/DdmSyncState; 133 +Landroid/os/GraphicsEnvironment;.sInstance:Landroid/os/GraphicsEnvironment; 134 +Landroid/os/Parcel;.mCreators:Ljava/util/HashMap; 134 +Landroid/os/Parcel; 134 +Landroid/app/ApplicationLoaders;.gApplicationLoaders:Landroid/app/ApplicationLoaders;.mLoaders:Landroid/util/ArrayMap; 134 +Landroid/os/Process; 134 +Landroid/os/Parcel;.sPairedCreators:Ljava/util/HashMap; 134 +Landroid/graphics/Compatibility; 135 +Landroid/app/DexLoadReporter;.INSTANCE:Landroid/app/DexLoadReporter;.mDataDirs:Ljava/util/Set;.map:Ljava/util/HashMap; 135 +Landroid/renderscript/RenderScriptCacheDir; 135 +Landroid/graphics/Canvas; 135 +Landroid/provider/FontsContract; 135 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.4:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mCache:Ljava/util/LinkedHashMap; 136 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.4:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object; 136 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.9:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object; 139 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.9:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mCache:Ljava/util/LinkedHashMap; 140 +Lcom/android/internal/os/BinderInternal; 141 +Landroid/app/servertransaction/ClientTransactionListenerController; 142 +Landroid/app/QueuedWork; 143 +Landroid/view/WindowManagerGlobal; 144 +Landroid/view/WindowManager; 145 +Landroid/view/inputmethod/InputMethodManager; 146 +Landroid/telephony/TelephonyManager; 147 +Landroid/content/Context; 151 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.4:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mSkips:[J 152 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.9:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mSkips:[J 153 +Landroid/app/NotificationManager; 154 +Landroid/content/pm/VersionedPackage; 155 +Landroid/content/ContentResolver; 156 +Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener; 160 +Landroid/app/UiModeManager; 162 +Landroid/webkit/WebViewFactory; 163 +Landroid/webkit/WebViewFactory;.sTimestamps:Landroid/webkit/WebViewFactory$StartupTimestamps; 164 +Landroid/webkit/WebViewFactoryProvider; 165 +Landroid/webkit/WebViewProvider$ViewDelegate; 166 +Landroid/webkit/WebViewProvider; 166 +Landroid/webkit/WebViewProvider$ScrollDelegate; 166 +Landroid/webkit/CookieSyncManager; 167 +Landroid/media/MediaCodecList; 168 +Landroid/media/MediaCodecInfo$CodecCapabilities$FeatureList; 168 +Landroid/media/MediaCodec; 169 +Landroid/view/KeyEvent; 170 +Landroid/webkit/HttpAuthHandler; 171 +Landroid/webkit/WebResourceResponse; 171 +Landroid/webkit/WebViewClient; 171 +Landroid/webkit/WebResourceError; 171 +Landroid/webkit/WebView; 171 +Landroid/view/InputEvent; 171 +Landroid/webkit/RenderProcessGoneDetail; 171 +Landroid/webkit/WebResourceRequest; 172 +Landroid/view/PointerIcon;.SYSTEM_ICONS:Landroid/util/SparseArray; 173 +Landroid/content/ClipboardManager$OnPrimaryClipChangedListener; 174 +Landroid/hardware/input/InputManager$InputDeviceListener; 175 +Landroid/hardware/input/InputManagerGlobal; 176 +Landroid/window/WindowTokenClientController; 177 +Landroid/os/PowerManager$OnThermalStatusChangedListener; 178 +Landroid/webkit/WebViewFactoryProvider$Statics; 179 +Landroid/webkit/DownloadListener; 180 +Landroid/webkit/ConsoleMessage; 181 +Landroid/webkit/GeolocationPermissions$Callback; 181 +Landroid/webkit/PermissionRequest; 181 +Landroid/webkit/WebChromeClient$CustomViewCallback; 181 +Landroid/webkit/WebChromeClient; 181 +Landroid/webkit/ValueCallback; 182 +Landroid/view/View$OnDragListener; 183 +Landroid/view/autofill/Helper; 184 +Landroid/icu/impl/ICUResourceBundleReader;.CACHE:Landroid/icu/impl/ICUResourceBundleReader$ReaderCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 185 +Landroid/icu/impl/ZoneMeta;.CANONICAL_ID_CACHE:Landroid/icu/impl/ICUCache; 186 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.10:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object; 187 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.10:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mCache:Ljava/util/LinkedHashMap; 188 +Landroid/graphics/fonts/Font$NoImagePreloadHolder; 189 +Landroid/icu/text/DecimalFormatSymbols;.cachedLocaleData:Landroid/icu/impl/CacheBase;.map:Ljava/util/concurrent/ConcurrentHashMap; 198 +Landroid/icu/impl/CurrencyData;.provider:Landroid/icu/impl/CurrencyData$CurrencyDisplayInfoProvider; 199 +Landroid/icu/text/DateFormatSymbols;.DFSCACHE:Landroid/icu/impl/CacheBase;.map:Ljava/util/concurrent/ConcurrentHashMap; 204 +Landroid/icu/util/ULocale; 205 +Landroid/graphics/Paint;.sMinikinLocaleListIdCache:Ljava/util/HashMap; 206 +Landroid/os/Parcelable$Creator; 207 +Landroid/graphics/drawable/Drawable; 215 +Landroid/graphics/Bitmap$Config;.RGB_565:Landroid/graphics/Bitmap$Config; 218 +Landroid/graphics/Bitmap$Config;.RGBA_F16:Landroid/graphics/Bitmap$Config; 218 +Landroid/renderscript/Allocation;.mBitmapOptions:Landroid/graphics/BitmapFactory$Options;.inPreferredConfig:Landroid/graphics/Bitmap$Config; 218 +Landroid/graphics/Bitmap$Config;.HARDWARE:Landroid/graphics/Bitmap$Config; 218 +Landroid/graphics/Bitmap$Config;.RGBA_1010102:Landroid/graphics/Bitmap$Config; 218 +Landroid/graphics/Bitmap$Config;.ALPHA_8:Landroid/graphics/Bitmap$Config; 218 +Landroid/graphics/Bitmap$Config;.ARGB_4444:Landroid/graphics/Bitmap$Config; 218 +Landroid/os/ParcelFileDescriptor; 219 +Landroid/content/ComponentName; 224 +Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle; 225 +Landroid/database/sqlite/SQLiteDatabase$CursorFactory; 226 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.7:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mSkips:[J 227 +Landroid/util/ArrayMap; 229 +Landroid/media/AudioManager; 230 +Landroid/content/res/Resources;.sResourcesHistory:Ljava/util/Set;.c:Ljava/util/Collection;.m:Ljava/util/Map;.queue:Ljava/lang/ref/ReferenceQueue; 231 +Lcom/android/internal/util/ArrayUtils;.sCache:[Ljava/lang/Object; 232 +Landroid/text/SpanWatcher; 233 Landroid/text/style/LineBackgroundSpan; 234 -Landroid/text/style/CharacterStyle; 235 -Landroid/text/style/SuggestionSpan; 236 -Landroid/widget/TextView$ChangeWatcher; 237 -Landroid/text/DynamicLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 238 -Landroid/text/DynamicLayout; 238 -Landroid/text/DynamicLayout$ChangeWatcher; 238 -Landroid/text/style/WrapTogetherSpan; 238 -Landroid/text/DynamicLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool; 238 -Landroid/text/method/LinkMovementMethod; 239 +Landroid/text/style/LeadingMarginSpan; 235 +Landroid/text/style/TabStopSpan; 236 +Landroid/text/style/LineBreakConfigSpan; 237 +Landroid/text/style/MetricAffectingSpan; 238 +Landroid/text/style/LineHeightSpan; 239 Landroid/text/style/ClickableSpan; 240 -Ljava/util/logging/LogRecord;.globalSequenceNumber:Ljava/util/concurrent/atomic/AtomicLong; 241 -Ljava/lang/Runtime;.currentRuntime:Ljava/lang/Runtime; 242 -Landroid/content/pm/LauncherActivityInfo; 243 -Landroid/database/sqlite/SQLiteMisuseException; 243 -Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask; 243 -Landroid/database/sqlite/SQLiteCantOpenDatabaseException; 243 -Landroid/database/sqlite/SQLiteDatabaseCorruptException; 243 -Landroid/database/sqlite/SQLiteDatabaseLockedException; 243 -Ljava/util/Map$Entry; 243 -Ljava/util/zip/ZipException; 243 -Landroid/database/sqlite/SQLiteAccessPermException; 243 -Landroid/speech/tts/TextToSpeech$OnInitListener; 243 -Landroid/app/Notification$MessagingStyle; 244 -Landroid/text/TextUtils$TruncateAt; 245 -Landroid/app/smartspace/SmartspaceTarget; 246 -Landroid/app/prediction/AppTarget; 246 -Landroid/app/smartspace/uitemplatedata/BaseTemplateData; 246 -Landroid/location/LocationManager;.sLocationListeners:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry; 247 -Landroid/location/LocationManager;.sLocationListeners:Ljava/util/WeakHashMap; 247 -Landroid/service/notification/ConditionProviderService; 248 -Landroid/os/WorkSource; 249 -Landroid/security/keystore2/AndroidKeyStoreProvider; 249 -Ljava/net/Socket; 249 -Lcom/android/internal/listeners/ListenerTransport; 249 -Landroid/os/ParcelUuid; 250 -Landroid/telephony/emergency/EmergencyNumber; 251 -Lcom/android/internal/telephony/uicc/UiccProfile$4; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$IncomingSms; 251 -Lcom/android/internal/telephony/SmsStorageMonitor$1; 251 -Lcom/android/internal/telephony/TelephonyDevController; 251 -Lcom/android/internal/telephony/uicc/UiccController; 251 -Lcom/android/internal/telephony/emergency/EmergencyNumberTracker$1; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$DataCallSession; 251 -Lcom/android/internal/telephony/TelephonyDevController;.mSims:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsAcsProvisioningStats; 251 -Ljava/lang/UnsupportedOperationException; 251 -Landroid/database/CursorToBulkCursorAdaptor; 251 -Lcom/android/internal/telephony/satellite/PointingAppController; 251 -Landroid/telephony/ModemActivityInfo; 251 -Lcom/android/internal/telephony/imsphone/ImsPhone; 251 -Lcom/android/internal/telephony/ServiceStateTracker; 251 -Lcom/android/internal/telephony/IccSmsInterfaceManager; 251 -Lcom/android/internal/telephony/util/NotificationChannelController$1; 251 -Lcom/android/internal/telephony/RilWakelockInfo; 251 -Lcom/android/internal/telephony/gsm/GsmInboundSmsHandler$GsmCbTestBroadcastReceiver; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportFeatureTagStats; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$UceEventStats; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$BindingState; 251 -Lcom/android/internal/telephony/ims/ImsResolver$3; 251 -Landroid/net/NetworkPolicyManager$SubscriptionCallbackProxy; 251 -Lcom/android/internal/telephony/TelephonyDevController;.mModems:Ljava/util/ArrayList; 251 -Landroid/telephony/ims/aidl/IImsServiceController$Stub$Proxy; 251 -Lcom/android/internal/telephony/CarrierPrivilegesTracker$1; 251 -Lcom/android/internal/telephony/CommandException; 251 -Lcom/android/ims/FeatureConnector$1; 251 -Lcom/android/internal/telephony/IWapPushManager; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipDelegateStats; 251 -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mTtyModeReceivedRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mMmiCompleteRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/i18n/timezone/TelephonyLookup; 251 -Landroid/telephony/BarringInfo$BarringServiceInfo; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequests; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$14; 251 -Lcom/android/internal/telephony/SmsBroadcastUndelivered; 251 -Lcom/android/internal/telephony/LocaleTracker; 251 -Lcom/android/internal/telephony/PhoneSubInfoController; 251 -Lcom/android/internal/telephony/CarrierKeyDownloadManager$1; 251 -Lcom/android/internal/telephony/GsmCdmaCallTracker$1; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.339:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/ServiceStateTracker$1; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.353:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/euicc/EuiccCardController$SimSlotStatusChangedBroadcastReceiver; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$PresenceNotifyEvent; 251 -Lcom/android/internal/telephony/SimActivationTracker$1; 251 -Landroid/telephony/ModemInfo; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1393:[Ljava/lang/String; 251 -Landroid/telephony/CellSignalStrengthWcdma; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteProvision; 251 -Lcom/android/internal/telephony/PhoneConfigurationManager; 251 -Lcom/android/internal/telephony/SmsApplication$SmsPackageMonitor; 251 -Landroid/telephony/TelephonyRegistryManager$3; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallSession; 251 -Landroid/os/Handler$MessengerImpl; 251 -Lcom/android/internal/telephony/LocaleTracker$1; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularDataServiceSwitch; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mInCallVoicePrivacyOffRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSosMessageRecommender; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationServiceDescStats; 251 -Lcom/android/internal/telephony/uicc/UiccPkcs15$Pkcs15Selector; 251 -Lcom/android/internal/telephony/CarrierResolver$2; 251 -Lcom/android/internal/telephony/CarrierActionAgent$1; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mPhones:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/SmsController; 251 -Lcom/android/internal/telephony/uicc/euicc/EuiccCardException; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationTermination; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1125:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/NetworkTypeController$1; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.803:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/uicc/asn1/TagNotFoundException; 251 -Lcom/android/internal/telephony/CarrierServiceBindHelper$1; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularServiceState; 251 -Lcom/android/internal/telephony/cdma/CdmaSubscriptionSourceManager; 251 -Lcom/android/internal/telephony/InboundSmsHandler$NewMessageNotificationActionReceiver; 251 -Lcom/android/internal/telephony/CarrierActionAgent; 251 -Lcom/android/i18n/timezone/TimeZoneFinder; 251 -Lcom/android/internal/telephony/RILRequest; 251 -Lcom/android/internal/telephony/RIL;.sRilTimeHistograms:Landroid/util/SparseArray; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.33:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/MccTable; 251 -Lcom/android/internal/telephony/uicc/UiccProfile$2; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierIdMismatch; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1235:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/uicc/UiccCarrierPrivilegeRules; 251 -Landroid/telephony/CellSignalStrengthTdscdma; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerListenerEvent; 251 -Lcom/android/internal/telephony/SmsDispatchersController; 251 -Landroid/timezone/TelephonyLookup; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteOutgoingDatagram; 251 -Lcom/android/internal/telephony/SMSDispatcher$1; 251 -Lcom/android/internal/telephony/AppSmsManager; 251 -Landroid/timezone/TimeZoneFinder; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mBackgroundCalls:Ljava/util/ArrayList; 251 -Lcom/android/ims/rcs/uce/eab/EabProvider; 251 -Lcom/android/internal/telephony/uicc/PinStorage$1; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerEvent; 251 -Landroid/telephony/CellSignalStrengthLte; 251 -Landroid/telephony/ims/ProvisioningManager$Callback$CallbackBinder; 251 -Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray;.mKeys:[I 251 -Landroid/telephony/CellSignalStrengthNr; 251 -Lcom/android/internal/telephony/SomeArgs; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mInCallVoicePrivacyOnRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/StateMachine$SmHandler; 251 -Lcom/android/internal/telephony/PackageChangeReceiver; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingShortCodeSms; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequestsV2; 251 -Lcom/android/internal/telephony/nano/TelephonyProto$RilDataCall; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$AvailableState; 251 -Lcom/android/ims/internal/IImsServiceFeatureCallback$Stub$Proxy; 251 -Landroid/telephony/data/ApnSetting;.APN_TYPE_INT_MAP:Ljava/util/Map; 251 -Lcom/android/internal/telephony/RadioInterfaceCapabilityController; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationStats; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallRatUsage; 251 -Lcom/android/internal/telephony/metrics/TelephonyMetrics; 251 -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilCall; 251 -Lcom/android/internal/telephony/NetworkRegistrationManager$NetworkRegStateCallback; 251 -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState; 251 -Lcom/android/internal/telephony/RadioConfig; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$DisconnectedState; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSession; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mDisplayInfoRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/phone/ecc/nano/ProtobufEccData$EccInfo; 251 -Lcom/android/internal/telephony/GsmCdmaPhone; 251 -Lcom/android/internal/telephony/TelephonyTester$1; 251 -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaScpTestBroadcastReceiver; 251 -Lcom/android/internal/telephony/NetworkTypeController$DefaultState; 251 -Landroid/net/TelephonyNetworkSpecifier; 251 -Lcom/android/internal/telephony/NitzStateMachine; 251 -Landroid/app/timezonedetector/TimeZoneDetector; 251 -Lcom/android/internal/telephony/IntentBroadcaster$1; 251 -Lcom/android/internal/telephony/uicc/UiccStateChangedLauncher; 251 -Lcom/android/internal/telephony/ims/ImsResolver$1; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingSms; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$UnmeteredNetworks; 251 -Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader;.packages:Ljava/util/Map;.m:Ljava/util/Map; 251 -Lcom/android/internal/telephony/euicc/EuiccController; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mForegroundCalls:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/satellite/SatelliteModemInterface; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.531:[Ljava/lang/String; 251 -Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$1; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.467:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipMessageResponse; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportSession; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$UnavailableState; 251 -Lcom/android/internal/telephony/DeviceStateMonitor$3; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mSignalInfoRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray;.mValues:[Ljava/lang/Object; 251 -Lcom/android/internal/telephony/IccPhoneBookInterfaceManager; 251 -Lcom/android/internal/telephony/DisplayInfoController; 251 -Lcom/android/internal/telephony/ims/ImsResolver$2; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1377:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$NetworkRegistrationInfo; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteController; 251 -Landroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder; 251 -Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$EmergencyNumbersInfo; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$GbaEvent; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.23:[Ljava/lang/String; 251 -Landroid/telephony/CellSignalStrengthCdma; 251 -Landroid/telephony/TelephonyLocalConnection; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteIncomingDatagram; 251 -Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$2; 251 -Lcom/android/internal/telephony/ims/ImsResolver; 251 -Lcom/android/internal/telephony/SmsStorageMonitor; 251 -Lcom/android/internal/telephony/uicc/UiccProfile; 251 -Landroid/telephony/ims/ImsMmTelManager$CapabilityCallback$CapabilityBinder; 251 -Lcom/android/internal/telephony/euicc/EuiccCardController; 251 -Lcom/android/internal/telephony/SmsBroadcastUndelivered$1; 251 -Lcom/android/internal/telephony/GsmCdmaCallTracker; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsClientProvisioningStats; 251 -Lcom/android/internal/telephony/cat/CatService; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.761:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/SmsApplication; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mDisconnectRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/PhoneFactory; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mHandlerMap:Ljava/util/HashMap; 251 -Landroid/os/AsyncResult; 251 -Lcom/android/internal/telephony/ProxyController; 251 -Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaCbTestBroadcastReceiver; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.453:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/MultiSimSettingController; 251 -Ljava/io/BufferedReader; 251 -Landroid/telephony/CellSignalStrengthGsm; 251 -Lcom/android/internal/telephony/SimActivationTracker; 251 -Lcom/android/internal/telephony/CellBroadcastServiceManager; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mRingingCalls:Ljava/util/ArrayList; 251 -Lcom/android/internal/telephony/IntentBroadcaster; 251 -Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationFeatureTagStats; 251 -Lcom/android/internal/telephony/euicc/EuiccConnector$EuiccPackageMonitor; 251 -Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mSuppServiceFailedRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 251 -Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader;.packages:Ljava/util/Map;.m:Ljava/util/Map;.table:[Ljava/util/HashMap$Node; 251 -Lcom/android/internal/telephony/CarrierServiceBindHelper$CarrierServicePackageMonitor; 251 -Lcom/android/internal/telephony/TelephonyComponentFactory; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.637:[Ljava/lang/String; 251 -Lcom/android/phone/ecc/nano/ProtobufEccData$CountryInfo; 251 -Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.651:[Ljava/lang/String; 251 -Lcom/android/internal/telephony/SmsUsageMonitor; 251 -Lcom/android/internal/telephony/CommandException$Error;.INVALID_SIM_STATE:Lcom/android/internal/telephony/CommandException$Error; 251 -Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback; 252 -Landroid/app/ActivityThread$ApplicationThread; 252 -Landroid/app/ActivityManager$MyUidObserver; 253 -Landroid/media/browse/MediaBrowser$ServiceCallbacks; 253 -Landroid/media/session/MediaController$CallbackStub; 253 -Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListener; 253 -Landroid/app/PendingIntent$CancelListener; 253 -Landroid/media/AudioManager$2; 253 -Landroid/database/ContentObserver$Transport; 253 -Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1; 253 -Landroid/content/ContentProvider$PipeDataWriter; 254 -Landroid/security/net/config/UserCertificateSource$NoPreloadHolder; 255 -Landroid/view/Window$Callback; 256 -Landroid/transition/TransitionManager;.sDefaultTransition:Landroid/transition/Transition;.mTransitions:Ljava/util/ArrayList;.elementData:[Ljava/lang/Object;.1:Landroid/transition/ChangeBounds;.mCurrentAnimators:Ljava/util/ArrayList; 256 -Landroid/transition/TransitionManager;.sDefaultTransition:Landroid/transition/Transition;.mTransitions:Ljava/util/ArrayList;.elementData:[Ljava/lang/Object;.2:Landroid/transition/Fade;.mCurrentAnimators:Ljava/util/ArrayList; 256 -Landroid/transition/TransitionManager;.sPendingTransitions:Ljava/util/ArrayList; 256 -Landroid/transition/TransitionManager;.sDefaultTransition:Landroid/transition/Transition;.mTransitions:Ljava/util/ArrayList;.elementData:[Ljava/lang/Object;.0:Landroid/transition/Fade;.mCurrentAnimators:Ljava/util/ArrayList; 256 -Landroid/view/AttachedSurfaceControl$OnBufferTransformHintChangedListener; 257 -Landroid/webkit/ValueCallback; 258 -Landroid/webkit/WebResourceRequest; 258 -Landroid/webkit/WebChromeClient$CustomViewCallback; 258 -Landroid/hardware/camera2/CameraCharacteristics;.INFO_SUPPORTED_HARDWARE_LEVEL:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 258 -Landroid/accounts/Account; 258 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_MAX_DIGITAL_ZOOM:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 258 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/params/StreamConfigurationDuration; 259 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_COLOR_FILTER_ARRANGEMENT:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_STALL_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.JPEGR_AVAILABLE_JPEG_R_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/params/HighSpeedVideoConfiguration; 259 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/CameraCharacteristics;.DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -I 259 -Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_CAPABILITIES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 259 -Landroid/hardware/camera2/params/StreamConfiguration; 259 -Z 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PIXEL_ARRAY_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.LENS_FOCAL_LENGTH:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_APERTURES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.DISTORTION_CORRECTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.EXTENSION_STRENGTH:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -J 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PHYSICAL_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.TONEMAP_PRESET_CURVE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -B 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_TRIGGER:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_EXPOSURE_COMPENSATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -[D 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_SESSION_KEYS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_EXPOSURE_TIME:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_CALIBRATION_TRANSFORM2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_TRANSFORM:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/content/res/Resources$Theme; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -F 260 -Landroid/hardware/camera2/CaptureRequest;.LENS_FILTER_DENSITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.LENS_OPTICAL_STABILIZATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.NOISE_REDUCTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_FRAME_DURATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_EXTENDED_SCENE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.STATISTICS_OIS_DATA_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_TEST_PATTERN_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.HOT_PIXEL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_ANTIBANDING_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.STATISTICS_LENS_SHADING_MAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SCALER_CROP_REGION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.LENS_FOCUS_DISTANCE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.TONEMAP_GAMMA:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_REFERENCE_ILLUMINANT2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_REFERENCE_ILLUMINANT1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -[F 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_ZOOM_RATIO:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_ABERRATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.TONEMAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_REQUEST_KEYS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SCALER_ROTATE_AND_CROP:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_GAINS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_COLOR_TRANSFORM1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_SENSITIVITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_FOCAL_LENGTHS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_OPTICAL_BLACK_REGIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.JPEG_QUALITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.FLASH_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_POST_RAW_SENSITIVITY_BOOST:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_WHITE_LEVEL:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_SETTINGS_OVERRIDE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -[Landroid/hardware/camera2/params/MeteringRectangle; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.LOGICAL_MULTI_CAMERA_PHYSICAL_IDS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_EXPOSURE_TIME_RANGE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Ljava/lang/Float; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_ENABLE_ZSL:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.INFO_DEVICE_STATE_ORIENTATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_CALIBRATION_TRANSFORM1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.EDGE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_CAPTURE_INTENT:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_ORIENTATION:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.JPEG_ORIENTATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_COLOR_TRANSFORM2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -[J 260 -Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Ljava/util/concurrent/Phaser; 260 -Landroid/hardware/camera2/CaptureRequest;.BLACK_LEVEL_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_SCENE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.JPEG_THUMBNAIL_SIZE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SHADING_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.STATISTICS_FACE_DETECT_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.STATISTICS_HOT_PIXEL_MAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AUTOFRAMING:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_TARGET_FPS_RANGE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_TEST_PATTERN_DATA:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_PRECAPTURE_TRIGGER:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.FLASH_STRENGTH_LEVEL:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_VIDEO_STABILIZATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.REPROCESS_EFFECTIVE_EXPOSURE_FACTOR:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Ljava/lang/Boolean; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_EFFECT_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.LENS_APERTURE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.JPEG_THUMBNAIL_QUALITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -Ljava/lang/Long; 260 -Landroid/hardware/camera2/CaptureRequest;.SENSOR_PIXEL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 260 -[Ljava/lang/String; 261 -[Z 262 -Ljava/lang/Class$Caches;.genericInterfaces:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap; 263 -Ljava/util/Map; 264 -Ljava/nio/Bits; 265 -Ljava/nio/DirectByteBuffer; 266 -Ljava/io/File; 267 -Ljava/nio/ByteBuffer; 268 -Ljava/io/InputStream; 269 -Landroid/os/ParcelFileDescriptor; 270 -Landroid/os/BinderProxy;.sProxyMap:Landroid/os/BinderProxy$ProxyMap; 271 -Landroid/app/PendingIntent; 272 -Landroid/content/Intent; 273 -Landroid/net/Uri$HierarchicalUri; 274 -Landroid/net/Uri$StringUri; 275 -Landroid/net/Uri$PathPart;.EMPTY:Landroid/net/Uri$PathPart; 276 -Lcom/android/internal/telephony/MccTable;.FALLBACKS:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.6:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 277 -Landroid/icu/text/DecimalFormatSymbols;.cachedLocaleData:Landroid/icu/impl/CacheBase;.map:Ljava/util/concurrent/ConcurrentHashMap; 278 -Llibcore/icu/DecimalFormatData;.CACHE:Ljava/util/concurrent/ConcurrentHashMap; 279 -Landroid/icu/impl/CurrencyData;.provider:Landroid/icu/impl/CurrencyData$CurrencyDisplayInfoProvider; 280 -Lcom/android/internal/infra/AndroidFuture; 281 -Lcom/android/internal/util/LatencyTracker$Action; 282 -Landroid/app/AppOpsManager$Mode; 283 -Landroid/view/accessibility/AccessibilityManager$AccessibilityServicesStateChangeListener; 284 -Landroid/annotation/IdRes; 285 -Landroid/content/pm/PackageItemInfo; 286 -Ljava/util/Random; 287 -Landroid/widget/RadioButton; 288 -Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState; 289 -Landroid/graphics/Insets; 290 -Landroid/view/View;.sNextGeneratedId:Ljava/util/concurrent/atomic/AtomicInteger; 291 -Landroid/graphics/drawable/LayerDrawable; 292 -Landroid/animation/LayoutTransition; 293 -Llibcore/reflect/AnnotationFactory;.cache:Ljava/util/Map; 294 -Llibcore/reflect/AnnotationFactory;.cache:Ljava/util/Map;.table:[Ljava/util/WeakHashMap$Entry; 294 -Ljava/lang/reflect/Proxy;.proxyClassCache:Ljava/lang/reflect/WeakCache;.reverseMap:Ljava/util/concurrent/ConcurrentMap; 295 -Ljava/lang/reflect/Proxy$ProxyClassFactory;.nextUniqueNumber:Ljava/util/concurrent/atomic/AtomicLong; 295 -Ljava/lang/reflect/Proxy;.proxyClassCache:Ljava/lang/reflect/WeakCache;.map:Ljava/util/concurrent/ConcurrentMap; 296 -Ljava/lang/Object; 297 -Ljava/lang/invoke/MethodType;.internTable:Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet;.map:Ljava/util/concurrent/ConcurrentMap; 298 -Ljava/nio/channels/SocketChannel;.dexCache:Ljava/lang/Object; 298 -Ljava/lang/invoke/MethodType;.objectOnlyTypes:[Ljava/lang/invoke/MethodType; 299 -Ljava/util/concurrent/ForkJoinTask; 300 -Ljava/util/concurrent/CompletableFuture; 301 -Landroid/app/Notification$BigTextStyle; 302 -Landroid/content/pm/ApplicationInfo; 303 -Ljava/security/Signature;.signatureInfo:Ljava/util/Map;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.13:Ljava/util/concurrent/ConcurrentHashMap$Node;.next:Ljava/util/concurrent/ConcurrentHashMap$Node;.next:Ljava/util/concurrent/ConcurrentHashMap$Node; 304 -Lsun/security/x509/X500Name;.stateName_oid:Lsun/security/util/ObjectIdentifier; 305 -Lsun/security/x509/X500Name;.localityName_oid:Lsun/security/util/ObjectIdentifier; 306 -Lsun/security/x509/X500Name;.orgUnitName_oid:Lsun/security/util/ObjectIdentifier; 306 -Ljava/util/UUID; 307 -Landroid/app/slice/Slice; 308 -Ljava/util/Locale;.FRENCH:Ljava/util/Locale; 308 -Landroid/os/NullVibrator; 308 -Ldalvik/system/CloseGuard;.MESSAGE:Ljava/lang/String; 308 -Lsun/util/locale/BaseLocale$Cache;.CACHE:Lsun/util/locale/BaseLocale$Cache;.map:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.22:Ljava/util/concurrent/ConcurrentHashMap$Node;.val:Ljava/lang/Object;.referent:Ljava/lang/Object; 308 -Ljava/util/Locale$Cache;.LOCALECACHE:Ljava/util/Locale$Cache;.map:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.24:Ljava/util/concurrent/ConcurrentHashMap$Node;.val:Ljava/lang/Object;.referent:Ljava/lang/Object; 308 -Landroid/app/Activity$$ExternalSyntheticLambda0; 308 -Landroid/icu/impl/locale/BaseLocale;.CACHE:Landroid/icu/impl/locale/BaseLocale$Cache;._map:Ljava/util/concurrent/ConcurrentHashMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.0:Ljava/util/concurrent/ConcurrentHashMap$Node; 308 -Ljava/util/Locale;.ITALIAN:Ljava/util/Locale; 308 -Landroid/media/MediaRouter2Manager$Callback; 308 -Lsun/util/locale/BaseLocale$Cache;.CACHE:Lsun/util/locale/BaseLocale$Cache;.map:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.29:Ljava/util/concurrent/ConcurrentHashMap$Node;.val:Ljava/lang/Object;.referent:Ljava/lang/Object; 308 -Ljava/util/Locale;.GERMAN:Ljava/util/Locale; 309 -Landroid/icu/impl/StandardPlural; 310 -Landroid/icu/impl/number/range/StandardPluralRanges; 311 -Landroid/icu/impl/PluralRulesLoader;.loader:Landroid/icu/impl/PluralRulesLoader; 311 -Landroid/icu/impl/PluralRulesLoader;.loader:Landroid/icu/impl/PluralRulesLoader;.pluralRulesCache:Ljava/util/Map; 311 -Landroid/icu/text/PluralRules$Operand; 311 -Landroid/icu/util/Calendar;.PATTERN_CACHE:Landroid/icu/impl/ICUCache; 312 -Landroid/icu/impl/DateNumberFormat;.CACHE:Landroid/icu/impl/SimpleCache; 313 -Landroid/text/format/DateFormat; 314 -Landroid/view/View$OnDragListener; 315 -Landroid/hardware/input/InputManager$InputDeviceListener; 316 -Landroid/hardware/input/InputManagerGlobal; 317 -Landroid/hardware/SystemSensorManager; 318 -Lcom/android/internal/os/BackgroundThread; 319 -Ljava/lang/Throwable; 320 -Landroid/app/NotificationManager; 321 -Landroid/app/NotificationChannel; 322 -Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener; 323 -Landroid/content/pm/VersionedPackage; 324 -Landroid/app/AppOpsManager; 325 -Ldalvik/system/ZipPathValidator; 326 -Landroid/content/pm/PackageManager;.sPackageInfoCache:Landroid/app/PropertyInvalidatedCache;.mSkips:[J 327 -Landroid/content/pm/PackageManager;.sApplicationInfoCache:Landroid/app/PropertyInvalidatedCache;.mSkips:[J 328 -Lsun/util/locale/BaseLocale$Cache;.CACHE:Lsun/util/locale/BaseLocale$Cache;.map:Ljava/util/concurrent/ConcurrentMap; 329 -Landroid/content/Context; 330 -Ljava/util/concurrent/Executor; 331 -Ljava/util/concurrent/ScheduledExecutorService; 332 -Ljava/util/concurrent/ExecutorService; 332 -Landroid/view/Window$OnFrameMetricsAvailableListener; 333 -Ljava/lang/annotation/Annotation; 334 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 335 -Ljava/util/concurrent/CancellationException; 336 -Ljava/lang/NoSuchMethodException; 337 -Landroid/os/strictmode/CustomViolation; 338 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.3:Ljava/util/WeakHashMap$Entry; 339 -Lcom/android/internal/policy/PhoneWindow; 340 -Landroid/view/autofill/AutofillValue; 340 -Landroid/widget/TextView$SavedState; 341 -Landroid/text/method/MetaKeyKeyListener;.SYM:Ljava/lang/Object; 342 -Landroid/text/method/MetaKeyKeyListener;.ALT:Ljava/lang/Object; 342 -Landroid/text/method/MetaKeyKeyListener;.SELECTING:Ljava/lang/Object; 342 -Landroid/text/method/MetaKeyKeyListener;.CAP:Ljava/lang/Object; 342 -Landroid/widget/PopupWindow$PopupBackgroundView; 343 -Landroid/widget/TextView;.TEMP_RECTF:Landroid/graphics/RectF; 343 -Landroid/text/method/ScrollingMovementMethod; 343 -Landroid/icu/impl/locale/UnicodeLocaleExtension;.EMPTY_SORTED_SET:Ljava/util/SortedSet;.m:Ljava/util/NavigableMap; 343 -Landroid/widget/PopupWindow$PopupDecorView; 343 -Landroid/widget/Editor$TextRenderNode; 343 -Landroid/widget/Editor$PositionListener; 344 -Landroid/text/style/SpellCheckSpan; 345 -Landroid/text/method/ArrowKeyMovementMethod; 346 -Landroid/text/method/TextKeyListener;.sInstance:[Landroid/text/method/TextKeyListener; 346 -Landroid/text/TextUtils$TruncateAt;.MARQUEE:Landroid/text/TextUtils$TruncateAt; 347 -Landroid/view/autofill/Helper; 348 -Lcom/android/internal/util/LatencyTracker; 349 -Lcom/android/internal/util/LatencyTracker$SLatencyTrackerHolder; 349 -Landroid/graphics/drawable/Icon; 350 -Landroid/text/style/AlignmentSpan; 351 -Landroid/text/MeasuredParagraph;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 352 -Landroid/text/MeasuredParagraph;.sPool:Landroid/util/Pools$SynchronizedPool; 352 -Landroid/icu/impl/ICUResourceBundleReader;.CACHE:Landroid/icu/impl/ICUResourceBundleReader$ReaderCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 353 -Landroid/location/ILocationManager$Stub;.dexCache:Ljava/lang/Object; 354 -Landroid/annotation/CurrentTimeMillisLong; 355 -Ljava/lang/reflect/Method; 356 -Lcom/android/internal/os/ZygoteInit; 356 -Landroid/database/DatabaseUtils; 356 -Landroid/os/HandlerThread; 356 -Ljava/security/Signature;.signatureInfo:Ljava/util/Map;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node; 357 -Ljava/security/Signature;.signatureInfo:Ljava/util/Map; 358 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.queue:Ljava/lang/ref/ReferenceQueue; 359 -Landroid/telephony/TelephonyRegistryManager; 360 -Landroid/graphics/HardwareRenderer; 361 -Landroid/os/BinderProxy; 362 -Landroid/app/compat/CompatChanges;.QUERY_CACHE:Landroid/app/compat/ChangeIdStateCache;.mCache:Ljava/util/LinkedHashMap; 363 -Landroid/app/compat/CompatChanges;.QUERY_CACHE:Landroid/app/compat/ChangeIdStateCache; 363 -Landroid/app/AlarmManager; 364 -Landroid/net/metrics/DhcpClientEvent; 365 -[I 366 -Landroid/media/MediaCodecList; 367 -Landroid/graphics/drawable/InsetDrawable; 368 -Landroid/widget/ProgressBar$SavedState; 369 -Landroid/widget/ScrollView$SavedState; 370 -Landroid/graphics/drawable/AnimatedVectorDrawable; 371 -Landroid/widget/ListView; 372 -Landroid/widget/AbsListView; 373 -Landroid/widget/AbsListView$SavedState; 373 -Landroid/widget/CompoundButton$SavedState; 374 -Landroid/widget/HorizontalScrollView$SavedState; 375 -Landroid/widget/HorizontalScrollView; 376 -Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.1:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 377 -Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.6:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 377 -Landroid/view/View$OnSystemUiVisibilityChangeListener; 378 -Ljava/util/AbstractMap; 379 -Landroid/telephony/euicc/EuiccCardManager$ResultCallback; 380 -Ljava/lang/Character$UnicodeBlock;.CJK_SYMBOLS_AND_PUNCTUATION:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.KANBUN:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.HANGUL_COMPATIBILITY_JAMO:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.KATAKANA:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.HANGUL_SYLLABLES:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.ENCLOSED_CJK_LETTERS_AND_MONTHS:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.HANGUL_JAMO:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.BOPOMOFO_EXTENDED:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.CJK_COMPATIBILITY_FORMS:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.BOPOMOFO:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.HIRAGANA:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.HALFWIDTH_AND_FULLWIDTH_FORMS:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.KANGXI_RADICALS:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.CJK_RADICALS_SUPPLEMENT:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.KATAKANA_PHONETIC_EXTENSIONS:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.CJK_COMPATIBILITY:Ljava/lang/Character$UnicodeBlock; 381 -Ljava/lang/Character$UnicodeBlock;.CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT:Ljava/lang/Character$UnicodeBlock; 382 -Ljava/lang/Character$UnicodeBlock;.CJK_COMPATIBILITY_IDEOGRAPHS:Ljava/lang/Character$UnicodeBlock; 382 -Ljava/lang/Character$UnicodeBlock;.CJK_UNIFIED_IDEOGRAPHS:Ljava/lang/Character$UnicodeBlock; 382 -Ljava/lang/Character$UnicodeBlock;.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A:Ljava/lang/Character$UnicodeBlock; 382 -Ljava/lang/Character$UnicodeBlock;.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B:Ljava/lang/Character$UnicodeBlock; 382 -Lcom/android/internal/inputmethod/InputMethodPrivilegedOperationsRegistry; 383 -Landroid/view/Window$DecorCallback; 383 -Landroid/view/inputmethod/EditorInfo; 383 -Landroid/view/MenuItem$OnActionExpandListener; 384 -Ljava/util/Locale;.JAPANESE:Ljava/util/Locale; 385 -Ljava/util/Locale;.KOREAN:Ljava/util/Locale; 385 -Lcom/android/internal/config/appcloning/AppCloningDeviceConfigHelper; 386 -Landroid/telecom/PhoneAccountHandle; 387 -Landroid/content/AsyncQueryHandler; 388 -Landroid/speech/RecognitionListener; 389 -Ljava/lang/InstantiationException; 390 -Ljava/util/concurrent/ExecutionException; 391 -Landroid/icu/text/DateIntervalInfo;.DIICACHE:Landroid/icu/impl/ICUCache; 392 -Landroid/text/format/DateIntervalFormat;.CACHED_FORMATTERS:Landroid/util/LruCache;.map:Ljava/util/LinkedHashMap; 392 -Landroid/icu/text/DateIntervalFormat;.LOCAL_PATTERN_CACHE:Landroid/icu/impl/ICUCache; 392 -Landroid/icu/impl/OlsonTimeZone; 392 -Landroid/text/format/DateIntervalFormat;.CACHED_FORMATTERS:Landroid/util/LruCache; 392 -Landroid/graphics/drawable/Drawable; 393 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 394 -Landroid/app/Activity; 395 -Landroid/icu/text/PluralRules$KeywordStatus;.INVALID:Landroid/icu/text/PluralRules$KeywordStatus;.name:Ljava/lang/String; 396 -Landroid/net/Uri; 396 -Lsun/util/calendar/CalendarSystem;.calendars:Ljava/util/concurrent/ConcurrentMap; 396 -Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;.sJNISetterPropertyMap:Ljava/util/HashMap; 397 -Landroid/graphics/drawable/ShapeDrawable; 398 -Lcom/android/internal/widget/ActionBarContextView; 399 -Landroid/widget/Toolbar$SavedState; 399 -Lcom/android/internal/widget/ActionBarContainer; 399 -Lcom/android/internal/widget/ActionBarOverlayLayout; 399 -Lcom/android/internal/widget/ActionBarContainer$ActionBarBackgroundDrawable; 399 -Landroid/widget/ActionMenuPresenter$OverflowMenuButton; 400 -Landroid/widget/ActionMenuView; 401 -Landroid/content/res/Configuration; 402 -Ljava/util/IdentityHashMap;.NULL_KEY:Ljava/lang/Object; 403 -Ljava/util/concurrent/ForkJoinPool; 404 -Landroid/os/ResultReceiver; 405 -Ljava/util/concurrent/TimeoutException; 406 -Ljava/io/IOException; 407 -Landroid/accounts/AccountAuthenticatorResponse; 408 -Landroid/nfc/NfcAdapter; 409 -Landroid/nfc/NfcAdapter;.sNfcAdapters:Ljava/util/HashMap; 409 -Landroid/app/backup/BackupManager; 410 -Landroid/app/NotificationChannelGroup; 411 -Landroid/content/pm/ParceledListSlice; 411 -Landroid/os/FileObserver; 412 -Landroid/os/UserHandle; 413 -Landroid/content/pm/PackageManager$NameNotFoundException; 414 -[Ljava/lang/Integer; 415 -Landroid/animation/PropertyValuesHolder;.sSetterPropertyMap:Ljava/util/HashMap; 415 -Landroid/content/LocusId; 416 -Landroid/view/contentcapture/ContentCaptureContext; 416 -Landroid/telephony/ims/RegistrationManager;.IMS_REG_TO_ACCESS_TYPE_MAP:Ljava/util/Map;.table:[Ljava/lang/Object;.18:Ljava/lang/Integer; 417 -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;.pool:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.4:Ljava/util/concurrent/ConcurrentHashMap$Node; 418 -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;.pool:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node; 418 -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;.pool:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.2:Ljava/util/concurrent/ConcurrentHashMap$Node;.next:Ljava/util/concurrent/ConcurrentHashMap$Node; 418 -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver;.EF_SOURCE_PRIORITY:Ljava/util/List;.a:[Ljava/lang/Object;.9:Ljava/lang/Integer; 418 -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;.pool:Ljava/util/concurrent/ConcurrentMap;.table:[Ljava/util/concurrent/ConcurrentHashMap$Node;.56:Ljava/util/concurrent/ConcurrentHashMap$Node; 418 -Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver;.EF_SOURCE_PRIORITY:Ljava/util/List;.a:[Ljava/lang/Object;.5:Ljava/lang/Integer; 418 -Lcom/android/org/bouncycastle/asn1/ASN1ObjectIdentifier;.pool:Ljava/util/concurrent/ConcurrentMap; 418 -Landroid/widget/EditText; 419 -Landroid/widget/CheckedTextView; 420 -Landroid/os/strictmode/UnsafeIntentLaunchViolation; 421 -Landroid/app/Service; 422 -Ldalvik/system/BlockGuard; 423 -Landroid/hardware/devicestate/DeviceStateManagerGlobal; 424 -Landroid/hardware/camera2/CameraCharacteristics;.SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 425 -Landroid/hardware/camera2/marshal/MarshalRegistry;.sMarshalerMap:Ljava/util/HashMap; 425 -Landroid/hardware/camera2/CameraCharacteristics;.LENS_FACING:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 425 -Landroid/content/ClipboardManager$OnPrimaryClipChangedListener; 426 -Landroid/icu/text/BreakIterator;.iterCache:[Landroid/icu/impl/CacheValue; 427 -Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.13:Ljava/util/WeakHashMap$Entry; 428 -Landroid/icu/text/Collator; 429 -Landroid/icu/impl/number/parse/NanMatcher;.DEFAULT:Landroid/icu/impl/number/parse/NanMatcher;.uniSet:Landroid/icu/text/UnicodeSet;.strings:Ljava/util/SortedSet;.c:Ljava/util/Collection;.m:Ljava/util/NavigableMap; 430 -Ljava/io/FileNotFoundException; 431 -Landroid/os/BaseBundle; 432 -Landroid/service/watchdog/ExplicitHealthCheckService$PackageConfig; 433 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.116:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.12:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.90:Ljava/lang/String; 434 -Landroid/icu/text/MessageFormat;.rootLocale:Ljava/util/Locale;.baseLocale:Lsun/util/locale/BaseLocale;.language:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.385:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.107:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.112:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.480:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.550:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.143:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._obsoleteLanguages:[Ljava/lang/String;.1:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.473:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.138:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.204:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.71:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._replacementCountries:[Ljava/lang/String;.12:Ljava/lang/String; 434 -Landroid/icu/impl/duration/impl/DataRecord$ETimeLimit;.names:[Ljava/lang/String;.1:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._replacementCountries:[Ljava/lang/String;.9:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.99:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages3:[Ljava/lang/String;.152:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.256:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.170:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.220:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.461:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._replacementLanguages:[Ljava/lang/String;.5:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.190:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.157:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._obsoleteCountries:[Ljava/lang/String;.4:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.196:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.117:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.5:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.499:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.199:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.18:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.324:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.101:Ljava/lang/String; 434 -Landroid/icu/impl/locale/UnicodeLocaleExtension;.CA_JAPANESE:Landroid/icu/impl/locale/UnicodeLocaleExtension;._keywords:Ljava/util/SortedMap;.root:Ljava/util/TreeMap$TreeMapEntry;.key:Ljava/lang/Object; 434 -Landroid/icu/impl/LocaleIDs;._replacementCountries:[Ljava/lang/String;.3:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.140:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.105:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.37:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._replacementCountries:[Ljava/lang/String;.5:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.22:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.103:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.412:Ljava/lang/String; 434 -Landroid/icu/impl/duration/impl/DataRecord$EMilliSupport;.names:[Ljava/lang/String;.1:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.124:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.232:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.219:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.179:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.523:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.75:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.486:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.166:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.112:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.119:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.160:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.298:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.257:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.182:Ljava/lang/String; 434 -Landroid/icu/impl/units/UnitPreferences;.measurementSystem:Ljava/util/Map;.m:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.5:Ljava/util/HashMap$Node;.next:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.47:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.180:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.111:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.358:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.96:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._obsoleteLanguages:[Ljava/lang/String;.0:Ljava/lang/String; 434 -Landroid/icu/text/DateFormat;.HOUR_GENERIC_TZ:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.67:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.254:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.222:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.55:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.349:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.16:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.352:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.443:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.478:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.19:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.401:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.137:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.65:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.474:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.168:Ljava/lang/String; 434 -Landroid/icu/impl/units/UnitPreferences;.measurementSystem:Ljava/util/Map;.m:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.15:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.111:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages3:[Ljava/lang/String;.545:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.30:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.469:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.21:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.69:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.56:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.519:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._replacementLanguages:[Ljava/lang/String;.4:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.107:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.290:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.59:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.220:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.186:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.516:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.181:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.199:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.396:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.117:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.227:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.331:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.447:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.151:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.144:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.132:Ljava/lang/String; 434 -Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.230:Ljava/lang/String; 434 -Landroid/icu/text/DateFormat;.MINUTE_SECOND:Ljava/lang/String; 434 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 435 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.head:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 436 -Ljava/lang/Enum;.sharedConstantsCache:Llibcore/util/BasicLruCache;.map:Ljava/util/LinkedHashMap;.tail:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry;.before:Ljava/util/LinkedHashMap$LinkedHashMapEntry; 437 -Landroid/graphics/drawable/ColorStateListDrawable; 438 -Ljava/lang/SecurityException; 439 -Ljava/lang/RuntimeException; 440 -Landroid/media/audiopolicy/AudioProductStrategy; 441 -Landroid/os/PersistableBundle; 442 -Landroid/content/pm/ShortcutInfo; 442 -Landroid/icu/text/TimeZoneFormat;._tzfCache:Landroid/icu/text/TimeZoneFormat$TimeZoneFormatCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 443 -Landroid/graphics/LeakyTypefaceStorage;.sStorage:Ljava/util/ArrayList; 443 -Landroid/graphics/LeakyTypefaceStorage;.sTypefaceMap:Landroid/util/ArrayMap; 443 -Landroid/text/TextWatcher; 444 -Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener; 445 -Ljavax/net/SocketFactory; 446 -Ljava/util/Collections; 447 -Ljava/lang/Exception; 448 -Landroid/os/UserManager; 449 -Landroid/os/RemoteException; 450 -Landroid/content/AttributionSource; 451 -Lcom/android/okhttp/internalandroidapi/HttpURLConnectionFactory$DnsAdapter; 452 -Lcom/android/okhttp/Protocol;.HTTP_2:Lcom/android/okhttp/Protocol; 452 -Ljava/net/Inet4Address; 452 -Lcom/android/okhttp/Protocol;.SPDY_3:Lcom/android/okhttp/Protocol; 452 -Lcom/android/okhttp/OkHttpClient; 452 -Landroid/os/storage/VolumeInfo; 453 -Landroid/os/storage/DiskInfo; 453 -Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mMap:Landroid/util/ArrayMap; 454 -Ljava/nio/file/StandardOpenOption;.WRITE:Ljava/nio/file/StandardOpenOption; 455 -Ljava/nio/file/StandardOpenOption;.APPEND:Ljava/nio/file/StandardOpenOption; 456 -Ljava/util/logging/FileHandler; 457 -Ljava/nio/file/StandardOpenOption;.CREATE_NEW:Ljava/nio/file/StandardOpenOption; 457 -Ljava/util/logging/FileHandler;.locks:Ljava/util/Set;.map:Ljava/util/HashMap; 457 -Lsun/nio/ch/SharedFileLockTable;.queue:Ljava/lang/ref/ReferenceQueue; 458 -Ljavax/net/ServerSocketFactory; 458 -Landroid/os/AsyncTask; 459 -Landroid/os/strictmode/UnbufferedIoViolation; 460 -Landroid/app/usage/AppStandbyInfo; 461 -Landroid/text/format/DateUtils; 462 -Landroid/security/IKeyChainService; 463 -Landroid/util/Log$TerribleFailure; 464 -Lcom/android/internal/os/RuntimeInit$KillApplicationHandler; 464 -Ljava/util/Timer;.nextSerialNumber:Ljava/util/concurrent/atomic/AtomicInteger; 465 -Landroid/telephony/ims/stub/ImsConfigImplBase$ImsConfigStub; 466 -Landroid/telephony/ims/stub/ImsRegistrationImplBase$1; 466 -Landroid/telephony/ims/ImsUtListener; 466 -Landroid/telephony/ims/feature/MmTelFeature$1; 466 -Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray;.mValues:[Ljava/lang/Object; 467 -Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray; 467 -Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray;.mKeys:[I 467 -Landroid/telephony/ims/aidl/IImsConfig$Stub$Proxy; 468 -Landroid/telephony/ims/aidl/IImsRegistration$Stub$Proxy; 468 -Landroid/telephony/NetworkService; 469 -Landroid/telephony/TelephonyCallback$ServiceStateListener; 470 -Landroid/telephony/TelephonyCallback$PhysicalChannelConfigListener; 471 -Landroid/telephony/TelephonyCallback$RadioPowerStateListener; 471 -Lsun/security/x509/X500Name;.internedOIDs:Ljava/util/Map; 472 -Lsun/security/x509/X500Name;.internedOIDs:Ljava/util/Map;.table:[Ljava/util/HashMap$Node; 472 -Landroid/media/MediaCodec; 473 -Ljava/nio/file/StandardOpenOption;.CREATE:Ljava/nio/file/StandardOpenOption; 474 -Ljava/nio/file/NoSuchFileException; 475 -Ljava/text/DateFormatSymbols;.cachedInstances:Ljava/util/concurrent/ConcurrentMap; 476 -Ljava/util/Currency;.instances:Ljava/util/concurrent/ConcurrentMap; 476 -Ljava/util/Calendar;.cachedLocaleData:Ljava/util/concurrent/ConcurrentMap; 476 -Ljava/text/SimpleDateFormat;.cachedNumberFormatData:Ljava/util/concurrent/ConcurrentMap; 476 -Landroid/app/UriGrantsManager;.IUriGrantsManagerSingleton:Landroid/util/Singleton; 477 -Landroid/content/ContentProviderProxy; 478 -Landroid/os/DeadObjectException; 479 -Landroid/app/slice/SliceSpec; 479 -Landroid/database/sqlite/SQLiteDatabase; 480 -Ljava/util/Locale;.CHINA:Ljava/util/Locale; 481 -Ljava/util/Locale;.TAIWAN:Ljava/util/Locale; 481 -Ljava/util/Locale;.KOREA:Ljava/util/Locale; 481 -Ljava/util/Scanner; 482 -Ljava/math/BigDecimal; 483 -Ljava/security/interfaces/RSAPrivateCrtKey; 483 -Ljava/security/interfaces/RSAPrivateKey; 483 -Lcom/android/server/backup/AccountSyncSettingsBackupHelper;.KEY_ACCOUNT_TYPE:Ljava/lang/String; 483 -Landroid/util/UtilConfig; 484 -Ljava/net/ResponseCache; 485 -Landroid/content/ReceiverCallNotAllowedException; 486 -Landroid/app/ReceiverRestrictedContext; 487 -Landroid/os/strictmode/CredentialProtectedWhileLockedViolation; 488 -Landroid/app/Application; 489 -Ljava/util/NoSuchElementException; 490 -Landroid/os/Messenger; 491 -Landroid/telephony/TelephonyCallback$DataEnabledListener; 491 -Landroid/system/StructLinger; 492 +Landroid/text/DynamicLayout$ChangeWatcher; 241 +Landroid/text/DynamicLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool; 242 +Landroid/text/DynamicLayout; 242 +Landroid/text/DynamicLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 242 +Landroid/text/style/WrapTogetherSpan; 243 +Landroid/widget/TextView$ChangeWatcher; 244 +Landroid/text/Selection$MemoryTextWatcher; 245 +Landroid/text/SpannableStringBuilder;.sCachedIntBuffer:[[I 246 +Landroid/text/style/SuggestionSpan; 247 +Landroid/text/style/ReplacementSpan; 248 +Landroid/text/TextUtils$TruncateAt;.MARQUEE:Landroid/text/TextUtils$TruncateAt; 249 +Landroid/text/style/SpellCheckSpan; 250 +Landroid/text/method/ArrowKeyMovementMethod; 251 +Landroid/text/method/TextKeyListener;.sInstance:[Landroid/text/method/TextKeyListener; 251 +Landroid/view/textclassifier/TextClassificationConstants; 252 +Landroid/text/Selection;.SELECTION_START:Ljava/lang/Object; 253 +Landroid/text/Selection;.SELECTION_END:Ljava/lang/Object; 253 +Landroid/text/Selection;.SELECTION_MEMORY:Ljava/lang/Object; 253 +Landroid/widget/EditText; 254 +Landroid/view/autofill/AutofillValue; 255 +Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;.sPool:Landroid/util/Pools$SimplePool; 256 +Landroid/view/ViewGroup$ChildListForAutoFillOrContentCapture;.sPool:Landroid/util/Pools$SimplePool;.mPool:[Ljava/lang/Object; 256 +Landroid/view/ViewGroup; 257 +Landroid/widget/TextView; 258 +Landroid/animation/AnimatorInflater;.sTmpTypedValue:Landroid/util/TypedValue; 259 +Landroid/graphics/drawable/GradientDrawable; 260 +Landroid/text/method/SingleLineTransformationMethod; 261 +Landroid/text/StaticLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 262 +Landroid/text/StaticLayout$Builder;.sPool:Landroid/util/Pools$SynchronizedPool; 262 +Landroid/os/HandlerThread; 263 +Lcom/android/internal/os/ZygoteInit; 263 +Landroid/database/DatabaseUtils; 263 +Landroid/annotation/CurrentTimeMillisLong; 264 +Landroid/app/NotificationChannel; 265 +Landroid/os/AsyncTask; 267 +Landroid/graphics/Bitmap;.sAllBitmaps:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry; 285 +Lcom/android/internal/telephony/MccTable;.FALLBACKS:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.6:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 288 +Landroid/view/Window$OnFrameMetricsAvailableListener; 289 +Landroid/graphics/drawable/BitmapDrawable; 290 +Landroid/graphics/drawable/RippleDrawable; 291 +Landroid/animation/PropertyValuesHolder$FloatPropertyValuesHolder;.sJNISetterPropertyMap:Ljava/util/HashMap; 292 +Landroid/animation/PropertyValuesHolder;.sGetterPropertyMap:Ljava/util/HashMap; 293 +Landroid/graphics/drawable/LayerDrawable; 294 +Landroid/media/audiopolicy/AudioProductStrategy;.sLock:Ljava/lang/Object; 304 +Landroid/graphics/drawable/RotateDrawable; 304 +Landroid/opengl/EGLConfig; 307 +Landroid/icu/impl/ValidIdentifiers$Datasubtype;.unknown:Landroid/icu/impl/ValidIdentifiers$Datasubtype;.name:Ljava/lang/String; 308 +Lcom/android/ims/rcs/uce/UceDeviceState;.DEVICE_STATE_DESCRIPTION:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.4:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 308 +Lcom/android/ims/rcs/uce/UceDeviceState;.DEVICE_STATE_DESCRIPTION:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.3:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 309 +Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.0:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 310 +Landroid/telephony/ims/ImsService;.CAPABILITIES_LOG_MAP:Ljava/util/Map;.table:[Ljava/lang/Object;.2:Ljava/lang/Long; 311 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.569:Ljava/lang/Long; 311 +Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.6:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 312 +Landroid/icu/text/MeasureFormat;.hmsTo012:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.1:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 313 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.11:Ljava/lang/Boolean; 314 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1:Ljava/lang/Boolean; 315 +Landroid/os/SystemProperties; 325 +Landroid/app/job/JobParameters; 328 +Landroid/view/Window$DecorCallback; 329 +Landroid/view/MenuItem$OnActionExpandListener; 329 +Landroid/view/inputmethod/EditorInfo; 329 +Lcom/android/internal/inputmethod/InputMethodPrivilegedOperationsRegistry; 329 +Landroid/app/ActivityManager$OnUidImportanceListener; 331 +Landroid/os/strictmode/DiskReadViolation; 332 +Landroid/os/strictmode/CustomViolation; 333 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.4:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mLock:Ljava/lang/Object; 334 +Landroid/location/Location; 337 +Landroid/database/sqlite/SQLiteConstraintException; 337 +Lcom/android/internal/listeners/ListenerTransport; 338 +Landroid/content/IntentFilter; 339 +Landroid/hardware/location/ContextHubTransaction$OnCompleteListener; 340 +Landroid/app/PendingIntent$OnFinished; 340 +Landroid/os/WorkSource; 340 +Landroid/content/pm/PackageManager$OnPermissionsChangedListener; 341 +Landroid/annotation/IdRes; 342 +Landroid/app/AppOpsManager$Mode; 343 +Landroid/view/accessibility/AccessibilityManager$AccessibilityServicesStateChangeListener; 344 +Landroid/telephony/DataSpecificRegistrationInfo; 345 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle; 346 +Landroid/telephony/TelephonyRegistryManager;.sCarrierPrivilegeCallbacks:Ljava/util/WeakHashMap; 347 +Landroid/telephony/NetworkRegistrationInfo; 347 +Lcom/android/internal/telephony/TelephonyPermissions;.sReportedDeviceIDPackages:Ljava/util/Map; 347 +Landroid/telephony/AnomalyReporter; 347 +Landroid/content/ContentProvider$Transport; 347 +Landroid/database/CursorToBulkCursorAdaptor; 347 +Landroid/telephony/TelephonyRegistryManager;.sCarrierPrivilegeCallbacks:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry; 347 +Landroid/telephony/VoiceSpecificRegistrationInfo; 347 +Landroid/net/MatchAllNetworkSpecifier; 347 +Landroid/app/PropertyInvalidatedCache$NoPreloadHolder; 348 +Landroid/app/PropertyInvalidatedCache;.sInvalidates:Ljava/util/HashMap; 348 +Landroid/app/PropertyInvalidatedCache;.sDisabledKeys:Ljava/util/HashSet;.map:Ljava/util/HashMap; 349 +Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1; 350 +Landroid/media/session/MediaSessionManager$OnMediaKeyEventSessionChangedListener; 350 +Landroid/media/AudioManager$2; 350 +Landroid/app/PendingIntent$CancelListener; 350 +Landroid/app/ActivityManager$MyUidObserver; 350 +Landroid/app/compat/CompatChanges;.QUERY_CACHE:Landroid/app/compat/ChangeIdStateCache;.mCache:Ljava/util/LinkedHashMap; 351 +Landroid/app/compat/CompatChanges;.QUERY_CACHE:Landroid/app/compat/ChangeIdStateCache; 351 +Landroid/app/AlarmManager; 352 +Landroid/os/UserManager; 353 +Landroid/text/MeasuredParagraph;.sPool:Landroid/util/Pools$SynchronizedPool; 355 +Landroid/text/MeasuredParagraph;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 355 +Landroid/database/sqlite/SQLiteTransactionListener; 357 +Landroid/text/format/DateFormat; 358 +Landroid/icu/util/Calendar;.PATTERN_CACHE:Landroid/icu/impl/ICUCache; 359 +Landroid/icu/impl/DateNumberFormat;.CACHE:Landroid/icu/impl/SimpleCache; 360 +Landroid/app/smartspace/SmartspaceSession$OnTargetsAvailableListener; 361 +Lcom/android/internal/util/PerfettoTrigger;.sLastInvocationPerTrigger:Landroid/util/SparseLongArray; 361 +Lcom/android/internal/util/PerfettoTrigger;.sLastInvocationPerTrigger:Landroid/util/SparseLongArray;.mValues:[J 361 +Landroid/window/WindowOrganizer;.IWindowOrganizerControllerSingleton:Landroid/util/Singleton; 361 +Landroid/window/WindowContainerTransaction$Change; 361 +Lcom/android/internal/util/PerfettoTrigger;.sLastInvocationPerTrigger:Landroid/util/SparseLongArray;.mKeys:[I 361 +Landroid/view/ViewTreeObserver$OnWindowVisibilityChangeListener; 361 +Landroid/view/CrossWindowBlurListeners; 362 +Landroid/widget/Toast; 363 +Landroid/view/ViewStub$OnInflateListener; 364 +Landroid/text/Spanned; 365 +Lcom/android/internal/policy/PhoneLayoutInflater; 365 +Landroid/content/MutableContextWrapper; 365 +Landroid/renderscript/RenderScript; 365 +Landroid/content/pm/IPackageManager$Stub$Proxy; 367 +Landroid/media/MediaPlayer$EventHandler; 368 +Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.220:Ljava/lang/String; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.BOTTOM_TOP:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.RIGHT_LEFT:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/content/res/ResourcesImpl; 368 +Landroid/os/ResultReceiver$MyRunnable; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.TL_BR:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/view/animation/Animation$3; 368 +Landroid/view/ViewRootImpl$7; 368 +Landroid/view/animation/Animation$1; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.BR_TL:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.TOP_BOTTOM:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/os/PowerManager$3$$ExternalSyntheticLambda0; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.BL_TR:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.LEFT_RIGHT:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Landroid/graphics/drawable/GradientDrawable$Orientation;.TR_BL:Landroid/graphics/drawable/GradientDrawable$Orientation; 368 +Lcom/android/internal/policy/PhoneWindow$1; 368 +Landroid/hardware/SensorManager; 368 +Landroid/widget/SeekBar; 369 +Landroid/media/MediaRouter2Manager; 370 +Landroid/app/trust/TrustManager$TrustListener; 370 +Landroid/permission/PermissionManager;.INDICATOR_EXEMPTED_PACKAGES:[Ljava/lang/String; 370 +Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0; 370 +Landroid/view/ViewOverlay$OverlayViewGroup; 370 +Landroid/hardware/display/NightDisplayListener$Callback; 370 +Lcom/android/internal/widget/NotificationOptimizedLinearLayout; 370 +Landroid/hardware/biometrics/BiometricSourceType;.IRIS:Landroid/hardware/biometrics/BiometricSourceType; 370 +Landroid/view/NotificationTopLineView; 370 +Landroid/permission/PermissionManager; 370 +Landroid/text/TextShaper$GlyphsConsumer; 370 +Lcom/android/internal/widget/RemeasuringLinearLayout; 370 +Landroid/os/HandlerExecutor; 370 +Landroid/hardware/biometrics/BiometricSourceType;.FACE:Landroid/hardware/biometrics/BiometricSourceType; 370 +Landroid/animation/ValueAnimator$DurationScaleChangeListener; 370 +Landroid/widget/RemoteViews;.sLookupKey:Landroid/widget/RemoteViews$MethodKey; 370 +Lcom/android/internal/logging/UiEventLogger; 370 +Lcom/android/internal/view/menu/ActionMenuItemView; 370 +Landroid/hardware/biometrics/BiometricSourceType;.FINGERPRINT:Landroid/hardware/biometrics/BiometricSourceType; 370 +Landroid/transition/TransitionManager;.sPendingTransitions:Ljava/util/ArrayList; 370 +Landroid/graphics/drawable/DrawableInflater;.CONSTRUCTOR_MAP:Ljava/util/HashMap; 370 +Lcom/android/internal/widget/ImageFloatingTextView; 370 +Lcom/android/internal/widget/CachingIconView; 370 +Lcom/android/internal/widget/MessagingLayout; 370 +Landroid/widget/DateTimeView$ReceiverInfo$1; 370 +Landroid/view/animation/AnimationSet; 370 +Landroid/hardware/face/FaceManager$FaceDetectionCallback; 370 +Landroid/view/SurfaceControl; 370 +Lcom/android/internal/widget/NotificationExpandButton; 370 +Landroid/widget/ViewSwitcher;.dexCache:Ljava/lang/Object; 370 +Lcom/android/internal/colorextraction/ColorExtractor$OnColorsChangedListener; 370 +Landroid/view/RemotableViewMethod; 370 +Landroid/view/View;.SCALE_Y:Landroid/util/Property; 370 +Landroid/view/View;.TRANSLATION_Y:Landroid/util/Property; 370 +Landroid/telephony/satellite/SatelliteManager;.sSatelliteSupportedStateCallbackMap:Ljava/util/concurrent/ConcurrentHashMap; 370 +Landroid/view/NotificationHeaderView; 370 +Lcom/android/internal/widget/ImageResolver; 370 +Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0; 370 +Lcom/android/internal/widget/ConversationLayout; 370 +Lcom/android/internal/util/ContrastColorUtil; 370 +Landroid/text/format/DateUtils; 370 +Landroid/widget/RemoteViews;.sMethods:Landroid/util/ArrayMap; 370 +Landroid/widget/DateTimeView; 370 +Lcom/android/internal/widget/NotificationActionListLayout; 370 +Landroid/view/View;.SCALE_X:Landroid/util/Property; 370 +Landroid/widget/GridLayout;.UNDEFINED_ALIGNMENT:Landroid/widget/GridLayout$Alignment; 372 +Landroid/database/CursorIndexOutOfBoundsException; 374 +Lcom/android/internal/policy/DecorView$2; 375 +Landroid/widget/Spinner; 376 +Landroid/security/keystore2/AndroidKeyStoreRSAPrivateKey; 376 +Landroid/security/keystore/KeyInfo; 377 +Landroid/security/keystore2/AndroidKeyStoreECPrivateKey; 378 +Landroid/text/method/TextKeyListener;.ACTIVE:Ljava/lang/Object; 379 +Landroid/text/method/PasswordTransformationMethod; 380 +Landroid/speech/tts/TextToSpeech$Connection$SetupConnectionAsyncTask; 382 +Landroid/speech/tts/TextToSpeech$OnInitListener; 383 +Lcom/android/internal/policy/PhoneWindow; 384 +Lcom/android/internal/policy/PhoneWindow$PanelFeatureState$SavedState; 385 +Landroid/content/res/Configuration; 386 +Landroid/window/WindowContext; 386 +Landroid/icu/impl/number/parse/NanMatcher;.DEFAULT:Landroid/icu/impl/number/parse/NanMatcher;.uniSet:Landroid/icu/text/UnicodeSet;.strings:Ljava/util/SortedSet;.c:Ljava/util/Collection;.m:Ljava/util/NavigableMap; 386 +Landroid/app/Dialog$$ExternalSyntheticLambda2; 386 +Landroid/app/prediction/AppTargetEvent; 386 +Landroid/app/prediction/AppTarget; 388 +Landroid/content/res/Resources$NotFoundException; 389 +Landroid/icu/text/Collator; 390 +Landroid/widget/TextView$SavedState; 391 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.4:Ljava/util/WeakHashMap$Entry; 393 +Lcom/android/internal/logging/AndroidHandler; 395 +Landroid/view/VelocityTracker;.sPool:Landroid/util/Pools$SynchronizedPool; 397 +Landroid/os/StrictMode$OnThreadViolationListener; 397 +Landroid/view/VelocityTracker;.sPool:Landroid/util/Pools$SynchronizedPool;.mPool:[Ljava/lang/Object; 397 +Landroid/content/Context;.ACCOUNT_SERVICE:Ljava/lang/String; 397 +Landroid/service/trust/TrustAgentService;.EXTRA_TOKEN:Ljava/lang/String; 397 +Ljavax/sip/header/AcceptEncodingHeader;.NAME:Ljava/lang/String; 397 +Landroid/widget/RadioGroup$OnCheckedChangeListener; 398 +Lcom/android/internal/widget/DialogTitle; 399 +Lcom/android/internal/widget/ButtonBarLayout; 399 +Lcom/android/internal/widget/AlertDialogLayout; 399 +Landroid/icu/text/DecimalFormatSymbols;.DEF_DIGIT_STRINGS_ARRAY:[Ljava/lang/String;.1:Ljava/lang/String; 401 +Landroid/widget/Editor$TextRenderNode; 402 +Landroid/view/inputmethod/DeleteGesture; 403 +Landroid/text/method/MetaKeyKeyListener;.ALT:Ljava/lang/Object; 403 +Landroid/view/inputmethod/SelectRangeGesture; 403 +Landroid/text/method/MetaKeyKeyListener;.CAP:Ljava/lang/Object; 403 +Landroid/view/inputmethod/DeleteRangeGesture; 403 +Landroid/text/method/MetaKeyKeyListener;.SYM:Ljava/lang/Object; 403 +Landroid/text/method/MetaKeyKeyListener;.SELECTING:Ljava/lang/Object; 403 +Landroid/view/inputmethod/SelectGesture; 403 +Landroid/widget/TextView;.TEMP_POSITION:[F 404 +Landroid/view/inputmethod/BaseInputConnection;.COMPOSING:Ljava/lang/Object; 405 +Lcom/android/internal/infra/AndroidFuture; 406 +Landroid/accounts/Account;.sAccessedAccounts:Ljava/util/Set; 407 +Landroid/os/Message;.sPoolSync:Ljava/lang/Object; 408 +Landroid/database/sqlite/SQLiteCantOpenDatabaseException; 409 +Landroid/accounts/Account; 409 +Landroid/os/VibrationEffect; 411 +Landroid/content/ServiceConnection; 411 +Landroid/app/ActivityManager$MemoryInfo; 411 +Landroid/util/DisplayMetrics; 411 +Landroid/view/Display; 411 +Landroid/telephony/TelephonyCallback$DataConnectionStateListener; 412 +Landroid/hardware/display/IDisplayManager; 414 +Lcom/android/icu/util/regex/PatternNative; 414 +Landroid/view/WindowInsets; 414 +Landroid/app/ActivityTaskManager$2; 414 +Landroid/view/View$AttachInfo; 414 +Landroid/media/AudioManager$ServiceEventHandlerDelegate$1; 414 +Landroid/view/ViewRootImpl$6; 414 +Landroid/webkit/WebViewDelegate; 414 +Landroid/os/IInterface; 415 +Landroid/content/pm/IPackageManager; 417 +Landroid/app/IActivityManager; 418 +Landroid/text/style/ImageSpan; 419 +Landroid/widget/RelativeLayout; 422 +Landroid/graphics/drawable/StateListDrawable; 423 +Landroid/view/TextureView$SurfaceTextureListener; 427 +Landroid/graphics/SurfaceTexture; 428 +Landroid/media/audiopolicy/AudioProductStrategy; 429 +Landroid/media/PlayerBase; 430 +Landroid/os/FileUtils; 431 +Landroid/media/MediaDrm$OnEventListener; 435 +Landroid/graphics/drawable/TransitionDrawable; 436 +Lcom/android/internal/telephony/WspTypeDecoder;.WELL_KNOWN_PARAMETERS:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.25:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 437 +Lcom/android/ims/rcs/uce/presence/pidfparser/omapres/Version;.ELEMENT_NAME:Ljava/lang/String; 442 +Landroid/view/Window$Callback; 442 +Landroid/provider/SyncStateContract$Columns;.DATA:Ljava/lang/String; 442 +Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap;.mHashes:[I 444 +Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedString; 444 +Landroid/aconfig/nano/Aconfig$tracepoint; 444 +Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringArray; 444 +Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringSet; 444 +Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringValueMap; 444 +Lcom/android/internal/util/Parcelling$BuiltIn$ForInternedStringList; 444 +Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object; 444 +Landroid/app/ActivityTaskManager; 444 +Landroid/aconfig/nano/Aconfig$parsed_flag; 444 +Lcom/android/internal/util/Parcelling$Cache;.sCache:Landroid/util/ArrayMap; 444 +Landroid/app/servertransaction/TopResumedActivityChangeItem; 445 +Landroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0; 446 +Landroid/app/LoadedApk$ServiceDispatcher$RunConnection; 447 +Landroid/view/Choreographer$FrameDisplayEventReceiver; 448 +Landroid/view/inputmethod/InputMethodManager$H; 448 +Landroid/graphics/HardwareRendererObserver$$ExternalSyntheticLambda0; 448 +Landroid/view/ViewRootImpl$ViewRootHandler; 449 +Landroid/view/Choreographer$FrameHandler; 450 +Landroid/view/View$$ExternalSyntheticLambda4; 451 +Landroid/app/IActivityTaskManager; 451 +Landroid/os/AsyncTask$InternalHandler; 452 +Landroid/app/job/JobServiceEngine$JobHandler; 452 +Landroid/app/servertransaction/PendingTransactionActions$StopInfo; 453 +Landroid/os/MessageQueue; 453 +Landroid/widget/PopupWindow$PopupDecorView; 453 +Landroid/view/WindowLeaked; 454 +Landroid/app/servertransaction/ClientTransaction; 455 +Landroid/content/res/Resources; 457 +Landroid/util/Pair; 458 +Landroid/widget/Switch; 460 +Landroid/view/ViewManager; 467 +Landroid/view/accessibility/AccessibilityEventSource; 467 +Landroid/view/KeyEvent$Callback; 467 +Landroid/view/ViewParent; 467 +Landroid/graphics/drawable/Drawable$Callback; 467 +Landroid/content/pm/SigningDetails; 468 +Landroid/content/pm/FeatureInfo; 468 +Landroid/content/pm/ProviderInfo; 468 +Landroid/content/pm/PermissionInfo; 468 +Landroid/content/pm/PackageItemInfo; 469 +Landroid/content/pm/PackageInfo; 470 +Landroid/app/IActivityManager$Stub$Proxy; 473 +Lcom/android/internal/os/PowerProfile;.sPowerItemMap:Ljava/util/HashMap; 474 +Lcom/android/internal/os/PowerProfile;.sPowerArrayMap:Ljava/util/HashMap; 474 +Lcom/android/internal/os/PowerProfile;.sModemPowerProfile:Lcom/android/internal/power/ModemPowerProfile;.mPowerConstants:Landroid/util/SparseDoubleArray;.mValues:Landroid/util/SparseLongArray; 474 +Landroid/widget/HorizontalScrollView; 475 +Landroid/view/ViewTreeObserver$OnWindowFocusChangeListener; 476 +Landroid/content/res/AssetManager$AssetInputStream; 477 +Landroid/os/Parcelable; 478 +Landroid/icu/util/Calendar;.WEEK_DATA_CACHE:Landroid/icu/util/Calendar$WeekDataCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 480 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.10:Ljava/util/WeakHashMap$Entry; 482 +Landroid/view/InsetsAnimationThread; 483 +Lcom/android/internal/jank/InteractionJankMonitor$InstanceHolder; 484 +Lcom/android/internal/jank/InteractionJankMonitor; 484 +Landroid/view/View$OnSystemUiVisibilityChangeListener; 485 +Landroid/hardware/display/DisplayManager$DisplayListener; 486 +Landroid/view/View$OnApplyWindowInsetsListener; 486 +Landroid/view/Choreographer$FrameCallback; 487 +Landroid/os/Handler$Callback; 489 +Landroid/os/Build$VERSION; 490 +Landroid/view/View$OnLayoutChangeListener; 490 +Landroid/app/SharedPreferencesImpl$EditorImpl; 491 +Landroid/view/InputDevice; 492 +Landroid/preference/PreferenceManager; 492 +Landroid/os/Build; 493 +Landroid/app/ContextImpl$ApplicationContentResolver; 496 +Landroid/provider/Settings$Secure; 496 +Landroid/view/TextureView; 497 +Landroid/os/strictmode/NetworkViolation; 498 +Landroid/graphics/drawable/AnimatedVectorDrawable; 499 +Landroid/icu/util/MeasureUnit$Complexity;.MIXED:Landroid/icu/util/MeasureUnit$Complexity;.name:Ljava/lang/String; 500 +Landroid/media/MediaDrm; 500 +Lcom/android/internal/app/procstats/DumpUtils;.STATE_NAMES_CSV:[Ljava/lang/String;.12:Ljava/lang/String; 500 +Landroid/provider/DocumentsContract;.DOWNLOADS_PROVIDER_AUTHORITY:Ljava/lang/String; 500 +Landroid/annotation/SystemApi; 500 +Landroid/icu/text/MessagePattern;.argTypes:[Landroid/icu/text/MessagePattern$ArgType;.0:Landroid/icu/text/MessagePattern$ArgType;.name:Ljava/lang/String; 500 +Landroid/webkit/WebViewFactory;.sProviderLock:Ljava/lang/Object; 505 +Landroid/app/ActivityThread$H; 506 +Landroid/view/AttachedSurfaceControl$OnBufferTransformHintChangedListener; 508 +Landroid/widget/ViewFlipper; 517 +Landroid/app/IActivityTaskManager$Stub$Proxy; 519 +Landroid/app/ActivityThread$ProviderRefCount; 519 +Landroid/view/ViewRootImpl$W; 519 +Lcom/android/internal/telephony/ITelephony; 519 +Lcom/android/internal/os/PowerProfile; 521 +Landroid/view/View$VisibilityChangeForAutofillHandler; 521 +Landroid/view/View$ScrollabilityCache; 521 +Landroid/app/INotificationManager; 521 +Landroid/graphics/drawable/LevelListDrawable; 521 +Landroid/app/SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0; 522 +Landroid/window/SplashScreen; 526 +Landroid/media/AudioManager$OnAudioFocusChangeListener; 528 +Landroid/app/Application; 529 +Landroid/content/ContextWrapper; 530 +Landroid/view/SurfaceView; 531 +Landroid/hardware/camera2/CameraCharacteristics;.FLASH_INFO_AVAILABLE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 532 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_TARGET_FPS_RANGE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_ZOOM_RATIO:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_EXPOSURE_COMPENSATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_ENABLE_ZSL:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 533 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_TEST_PATTERN_DATA:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.JPEG_QUALITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.STATISTICS_LENS_SHADING_MAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.LENS_FOCUS_DISTANCE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.REPROCESS_EFFECTIVE_EXPOSURE_FACTOR:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_TEST_PATTERN_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.LENS_APERTURE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.STATISTICS_HOT_PIXEL_MAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_SESSION_KEYS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_REFERENCE_ILLUMINANT1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_STABILIZATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.LENS_OPTICAL_STABILIZATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.LENS_FILTER_DENSITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AWB_REGIONS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_PADDING_ZOOM_FACTOR:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.BLACK_LEVEL_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.STATISTICS_FACE_DETECT_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.LOGICAL_MULTI_CAMERA_PHYSICAL_IDS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.JPEG_THUMBNAIL_SIZE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SCALER_ROTATE_AND_CROP:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_COLOR_FILTER_ARRANGEMENT:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_OPTICAL_BLACK_REGIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.FLASH_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AF_TRIGGER:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_MAX_PADDING_ZOOM_FACTOR:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_PIXEL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_WHITE_LEVEL:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.DISTORTION_CORRECTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_CAPTURE_INTENT:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_AUTO_ZOOM:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_CALIBRATION_TRANSFORM1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_ABERRATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_COLOR_TRANSFORM1:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.TONEMAP_GAMMA:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.NOISE_REDUCTION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SCALER_CROP_REGION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.TONEMAP_PRESET_CURVE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_EXPOSURE_TIME_RANGE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_POST_RAW_SENSITIVITY_BOOST:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.STATISTICS_OIS_DATA_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_FRAME_DURATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.HOT_PIXEL_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_EXTENDED_SCENE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_REQUEST_KEYS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_GAINS:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_COLOR_TRANSFORM2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_CALIBRATION_TRANSFORM2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_LOCK:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.JPEG_THUMBNAIL_QUALITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_PRECAPTURE_TRIGGER:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_SENSITIVITY:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_EFFECT_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +[Landroid/hardware/camera2/params/MeteringRectangle; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AE_ANTIBANDING_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_AUTOFRAMING:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EXTENSION_STRENGTH:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_SCENE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_SETTINGS_OVERRIDE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_ROTATE_VIEWPORT:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.FLASH_STRENGTH_LEVEL:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_REFERENCE_ILLUMINANT2:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PIXEL_ARRAY_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.CONTROL_VIDEO_STABILIZATION_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.LENS_FOCAL_LENGTH:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.JPEG_ORIENTATION:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EFV_TRANSLATE_VIEWPORT:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SENSOR_EXPOSURE_TIME:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.TONEMAP_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.COLOR_CORRECTION_TRANSFORM:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.SHADING_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CaptureRequest;.EDGE_MODE:Landroid/hardware/camera2/CaptureRequest$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 534 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_PHYSICAL_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 535 +Landroid/util/Log; 536 +Landroid/accounts/AccountManager$20; 537 +Landroid/accounts/OnAccountsUpdateListener; 538 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.7:Ljava/util/WeakHashMap$Entry; 541 +Landroid/os/FileObserver; 544 +Landroid/widget/Space; 546 +Landroid/content/pm/ApplicationInfo; 547 +Landroid/graphics/ColorMatrix;.dexCache:Ljava/lang/Object; 548 +Landroid/text/style/CharacterStyle; 549 +Landroid/text/style/AlignmentSpan; 550 +Landroid/text/TextWatcher; 551 +Landroid/graphics/Bitmap;.sAllBitmaps:Ljava/util/WeakHashMap;.queue:Ljava/lang/ref/ReferenceQueue; 553 +Landroid/view/ViewRootImpl$$ExternalSyntheticLambda11; 554 +Landroid/app/Fragment;.sClassMap:Landroid/util/ArrayMap; 555 +Landroid/os/Bundle; 556 +Landroid/app/ActivityTaskManager;.sInstance:Landroid/util/Singleton; 557 +Landroid/content/pm/ShortcutInfo; 564 +Landroid/graphics/drawable/Icon; 565 +Landroid/os/PersistableBundle; 566 +Landroid/content/LocusId; 576 +Landroid/view/contentcapture/ContentCaptureContext; 576 +Landroid/telephony/TelephonyCallback$DisplayInfoListener; 577 +Landroid/app/Notification$Builder; 583 +Landroid/hardware/usb/UsbManager;.FUNCTION_NAME_TO_CODE:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.13:Ljava/util/HashMap$Node;.next:Ljava/util/HashMap$Node;.next:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 583 +Landroid/telephony/ims/ImsService;.CAPABILITIES_LOG_MAP:Ljava/util/Map;.table:[Ljava/lang/Object;.8:Ljava/lang/Long; 583 +Landroid/app/Notification; 584 +Landroid/app/RemoteAction; 585 +Landroid/graphics/Insets; 590 +Landroid/graphics/Rect; 591 +Lcom/android/internal/os/BackgroundThread; 592 +Landroid/widget/ViewSwitcher; 602 +Landroid/graphics/Color;.sColorNameMap:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.3:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 603 +Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Basic;.OPEN:Ljava/lang/String; 603 +Lcom/android/internal/os/BinderCallsStats$SettingsObserver;.SETTINGS_ENABLED_KEY:Ljava/lang/String; 603 +Landroid/icu/text/DecimalFormatSymbols;.DEF_DIGIT_STRINGS_ARRAY:[Ljava/lang/String;.3:Ljava/lang/String; 603 +Landroid/os/BatteryConsumer;.sPowerComponentNames:[Ljava/lang/String;.13:Ljava/lang/String; 603 +Landroid/os/IncidentManager;.URI_SCHEME:Ljava/lang/String; 603 +Landroid/os/AsyncTask$4; 603 +Landroid/text/Html$HtmlParser;.schema:Lorg/ccil/cowan/tagsoup/HTMLSchema;.theEntities:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.3233:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 603 +Landroid/provider/DocumentsContract;.PATH_SEARCH:Ljava/lang/String; 603 +Landroid/icu/impl/LocaleIDs;._languages:[Ljava/lang/String;.437:Ljava/lang/String; 603 +Landroid/icu/impl/units/UnitsData$Constants;.DEFAULT_USAGE:Ljava/lang/String; 604 +Lcom/android/internal/telephony/IccProvider;.ADDRESS_BOOK_COLUMN_NAMES:[Ljava/lang/String;.0:Ljava/lang/String; 604 +Landroid/text/method/DialerKeyListener; 605 +Landroid/icu/text/DecimalFormatSymbols;.DEF_DIGIT_STRINGS_ARRAY:[Ljava/lang/String;.0:Ljava/lang/String; 605 +Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Timestamp;.ELEMENT_NAME:Ljava/lang/String; 605 +Lcom/android/ims/rcs/uce/presence/pidfparser/pidf/Status;.ELEMENT_NAME:Ljava/lang/String; 605 +Landroid/os/BatteryManager;.EXTRA_SEQUENCE:Ljava/lang/String; 605 +Landroid/icu/text/MessageFormat;.typeList:[Ljava/lang/String;.5:Ljava/lang/String; 605 +Landroid/provider/Telephony$ThreadsColumns;.ERROR:Ljava/lang/String; 605 +Lcom/android/internal/os/RailStats;.WIFI_SUBSYSTEM:Ljava/lang/String; 605 +Landroid/app/NotificationChannel;.TAG_CHANNEL:Ljava/lang/String; 605 +Landroid/app/NotificationChannel;.EDIT_LAUNCHER:Ljava/lang/String; 605 +Lcom/android/ims/ImsUt;.KEY_ACTION:Ljava/lang/String; 605 +Landroid/view/textclassifier/TextClassifier;.TYPE_URL:Ljava/lang/String; 605 +Landroid/provider/Telephony$BaseMmsColumns;.START:Ljava/lang/String; 605 +Landroid/icu/impl/ValidIdentifiers$Datatype;.region:Landroid/icu/impl/ValidIdentifiers$Datatype;.name:Ljava/lang/String; 605 +Landroid/icu/impl/ZoneMeta;.REGION_CACHE:Landroid/icu/impl/ICUCache; 608 +Landroid/widget/TextView;.TEMP_RECTF:Landroid/graphics/RectF; 609 +Landroid/app/Activity; 611 +Landroid/text/method/LinkMovementMethod; 614 +Landroid/net/Uri; 615 +Landroid/app/PendingIntent; 617 +Landroid/security/net/config/UserCertificateSource$NoPreloadHolder; 618 +Landroid/net/Uri$PathPart;.EMPTY:Landroid/net/Uri$PathPart; 619 +Landroid/content/Intent; 620 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.197:Landroid/os/PersistableBundle; 622 +Landroid/graphics/HardwareRenderer; 624 +Landroid/icu/util/TimeZone; 625 +Landroid/telephony/TelephonyRegistryManager; 627 +Landroid/telecom/TelecomManager; 628 +Landroid/telephony/TelephonyCallback$ServiceStateListener; 629 +Landroid/telephony/TelephonyCallback$RadioPowerStateListener; 630 +Landroid/widget/ActionMenuView; 631 +Landroid/widget/ActionMenuPresenter$OverflowMenuButton; 631 +Landroid/widget/Toolbar; 631 +Lcom/android/internal/widget/ActionBarContainer; 632 +Lcom/android/internal/widget/ActionBarContainer$ActionBarBackgroundDrawable; 632 +Lcom/android/internal/widget/ActionBarContextView; 632 +Lcom/android/internal/widget/ActionBarOverlayLayout; 632 +Landroid/graphics/drawable/AdaptiveIconDrawable; 633 +Landroid/widget/ImageButton; 634 +Landroid/widget/Button; 635 +Landroid/view/AbsSavedState$1; 636 +Landroid/app/FragmentManagerState; 637 +Landroid/view/View$BaseSavedState; 638 +Landroid/graphics/drawable/ShapeDrawable; 639 +Lcom/android/internal/telephony/WspTypeDecoder;.WELL_KNOWN_MIME_TYPES:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.54:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 640 +Lcom/android/internal/telephony/WspTypeDecoder;.WELL_KNOWN_MIME_TYPES:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.33:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 640 +Landroid/widget/MultiAutoCompleteTextView; 642 +Landroid/speech/RecognitionListener; 642 +Landroid/widget/ToggleButton; 643 +Landroid/widget/AutoCompleteTextView; 644 +Landroid/widget/RadioButton; 645 +Landroid/widget/CheckBox; 646 +Landroid/view/View$OnGenericMotionListener; 647 +Landroid/os/UserHandle; 648 +Landroid/app/servertransaction/ResumeActivityItem; 655 +Landroid/app/servertransaction/ActivityRelaunchItem; 655 +Landroid/app/servertransaction/ObjectPool;.sPoolMap:Ljava/util/Map; 655 +Landroid/text/style/URLSpan; 656 +Landroid/icu/util/ULocale$AvailableType;.DEFAULT:Landroid/icu/util/ULocale$AvailableType;.name:Ljava/lang/String; 656 +Landroid/icu/util/CodePointMap$RangeOption;.NORMAL:Landroid/icu/util/CodePointMap$RangeOption;.name:Ljava/lang/String; 658 +Landroid/security/keystore2/AndroidKeyStoreProvider; 676 +Landroid/security/keystore2/KeyStoreCryptoOperationUtils; 677 +Landroid/view/accessibility/AccessibilityManager$TouchExplorationStateChangeListener; 678 +Landroid/view/View;.sNextGeneratedId:Ljava/util/concurrent/atomic/AtomicInteger; 679 +Landroid/icu/impl/number/range/StandardPluralRanges; 680 +Landroid/icu/impl/PluralRulesLoader;.loader:Landroid/icu/impl/PluralRulesLoader; 680 +Landroid/icu/impl/PluralRulesLoader;.loader:Landroid/icu/impl/PluralRulesLoader;.pluralRulesCache:Ljava/util/Map; 680 +Landroid/icu/text/PluralRules$Operand; 680 +Landroid/icu/impl/StandardPlural; 681 +Landroid/webkit/JavascriptInterface; 682 +Landroid/content/res/AssetManager; 684 +Ljavax/sip/header/ContentEncodingHeader;.NAME:Ljava/lang/String; 685 +Landroid/view/View$OnClickListener; 685 +Landroid/hardware/usb/UsbManager;.FUNCTION_NAME_TO_CODE:Ljava/util/Map;.table:[Ljava/util/HashMap$Node;.13:Ljava/util/HashMap$Node;.value:Ljava/lang/Object; 685 +Landroid/widget/CompoundButton; 685 +Landroid/view/accessibility/AccessibilityManager;.sInstanceSync:Ljava/lang/Object; 686 +Landroid/webkit/CookieManager; 687 +Landroid/icu/text/NFRule;.ZERO:Ljava/lang/Long; 689 +Landroid/app/AppOpsManager$OnOpActiveChangedListener; 691 +Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mMap:Landroid/util/ArrayMap; 692 +Landroid/os/RemoteException; 693 +Landroid/content/pm/PackageManager$OnChecksumsReadyListener; 694 +Landroid/content/pm/Checksum$Type; 695 +Landroid/view/InputEvent;.mNextSeq:Ljava/util/concurrent/atomic/AtomicInteger; 696 +Landroid/view/MotionEvent; 697 +Landroid/widget/ScrollView; 698 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.10:Ljava/util/WeakHashMap$Entry;.referent:Ljava/lang/Object;.mSkips:[J 702 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.queue:Ljava/lang/ref/ReferenceQueue; 703 +Landroid/widget/ProgressBar; 704 +Landroid/animation/LayoutTransition; 706 +Landroid/animation/PropertyValuesHolder$IntPropertyValuesHolder;.sJNISetterPropertyMap:Ljava/util/HashMap; 707 +Lorg/apache/http/params/HttpParams; 711 +Landroid/app/NotificationChannelGroup; 712 +Landroid/content/pm/ParceledListSlice; 712 +Landroid/os/vibrator/StepSegment; 713 +Lcom/android/internal/util/LatencyTracker$SLatencyTrackerHolder; 714 +Lcom/android/internal/util/LatencyTracker; 714 +Landroid/app/Application$ActivityLifecycleCallbacks; 715 +Landroid/os/Messenger; 716 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AE_AVAILABLE_MODES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_INFO_ACTIVE_ARRAY_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.INFO_SESSION_CONFIGURATION_QUERY_VERSION:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.LENS_INFO_SHADING_MAP_SIZE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CaptureResult;.SENSOR_TIMESTAMP:Landroid/hardware/camera2/CaptureResult$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AWB_AVAILABLE_MODES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraDevice$StateCallback; 720 +Landroid/hardware/camera2/impl/CameraMetadataNative; 720 +Landroid/hardware/camera2/CameraCharacteristics;.SCALER_AVAILABLE_STREAM_USE_CASES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_ZOOM_RATIO_RANGE:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/util/Size; 720 +Landroid/hardware/camera2/CameraCaptureSession$StateCallback; 720 +Landroid/hardware/camera2/CameraCharacteristics;.CONTROL_AF_AVAILABLE_MODES:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCharacteristics;.REQUEST_PARTIAL_RESULT_COUNT:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 720 +Landroid/hardware/camera2/CameraCaptureSession$CaptureCallback; 720 +Landroid/util/Range; 720 +Landroid/widget/ListView; 721 +Landroid/widget/AbsListView; 721 +Landroid/transition/Explode; 723 +Landroid/text/HtmlToSpannedConverter$Font; 724 +Landroid/text/Html$TagHandler; 725 +Lcom/android/internal/telephony/cdnr/CarrierDisplayNameResolver;.EF_SOURCE_PRIORITY:Ljava/util/List;.a:[Ljava/lang/Object;.2:Ljava/lang/Integer; 725 +Landroid/telephony/ims/feature/MmTelFeature$1; 726 +Landroid/telephony/ims/stub/ImsConfigImplBase$ImsConfigStub; 726 +Landroid/telephony/ims/ImsUtListener; 726 +Landroid/telephony/ims/stub/ImsRegistrationImplBase$1; 726 +Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray;.mKeys:[I 727 +Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray; 728 +Lcom/android/ims/ImsManager;.IMS_MANAGER_INSTANCES:Landroid/util/SparseArray;.mValues:[Ljava/lang/Object; 728 +Landroid/telephony/ims/aidl/IImsConfig$Stub$Proxy; 729 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SipMessageResponse; 730 +Landroid/timezone/TimeZoneFinder; 730 +Landroid/telephony/TelephonyRegistryManager$3; 730 +Lcom/android/internal/telephony/DeviceStateMonitor; 730 +Lcom/android/internal/telephony/imsphone/ImsPhone; 730 +Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker; 730 +Lcom/android/internal/telephony/cat/CatService; 730 +Landroid/net/NetworkPolicyManager$SubscriptionCallbackProxy; 730 +Landroid/telephony/ModemActivityInfo; 730 +Lcom/android/internal/telephony/InboundSmsHandler$NewMessageNotificationActionReceiver; 730 +Landroid/icu/impl/ZoneMeta;.SYSTEM_ZONE_CACHE:Landroid/icu/impl/ZoneMeta$SystemTimeZoneCache;.map:Ljava/util/concurrent/ConcurrentHashMap; 730 +Lcom/android/internal/telephony/TelephonyDevController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$GbaEvent; 730 +Lcom/android/internal/telephony/RadioInterfaceCapabilityController; 730 +Lcom/android/internal/telephony/SmsBroadcastUndelivered; 730 +Landroid/telephony/data/ApnSetting;.APN_TYPE_INT_MAP:Ljava/util/Map; 730 +Lcom/android/internal/telephony/SmsStorageMonitor$1; 730 +Lcom/android/internal/telephony/CellBroadcastServiceManager; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularDataServiceSwitch; 730 +Lcom/android/internal/telephony/StateMachine$SmHandler; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierRoamingSatelliteControllerStats; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.673:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/NetworkTypeController$1; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mDisplayInfoRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/CarrierActionAgent; 730 +Lcom/android/internal/telephony/uicc/UiccCarrierPrivilegeRules; 730 +Lcom/android/internal/telephony/MultiSimSettingController; 730 +Lcom/android/internal/telephony/GsmCdmaCallTracker; 730 +Lcom/android/internal/telephony/gsm/GsmInboundSmsHandler$GsmCbTestBroadcastReceiver; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteController; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1289:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/IntentBroadcaster$1; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.483:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$PresenceNotifyEvent; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSosMessageRecommender; 730 +Landroid/telephony/CellSignalStrengthWcdma; 730 +Lcom/android/ims/rcs/uce/eab/EabProvider; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierRoamingSatelliteSession; 730 +Lcom/android/internal/telephony/TelephonyComponentFactory; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mRingingCalls:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/ims/ImsResolver$2; 730 +Lcom/android/internal/telephony/emergency/EmergencyNumberTracker; 730 +Landroid/timezone/TelephonyLookup; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$UnavailableState; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.363:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/ProxyController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteOutgoingDatagram; 730 +Lcom/android/i18n/timezone/TimeZoneFinder; 730 +Lcom/android/internal/telephony/SimActivationTracker; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteProvision; 730 +Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaScpTestBroadcastReceiver; 730 +Lcom/android/internal/telephony/ServiceStateTracker; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$AvailableState; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsClientProvisioningStats; 730 +Lcom/android/internal/telephony/SmsApplication; 730 +Lcom/android/internal/telephony/TelephonyDevController;.mModems:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/SimActivationTracker$1; 730 +Lcom/android/internal/telephony/emergency/EmergencyNumberTracker$1; 730 +Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequestsV2; 730 +Lcom/android/internal/telephony/AppSmsManager; 730 +Landroid/telephony/ims/ProvisioningManager$Callback$CallbackBinder; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.789:[Ljava/lang/String; 730 +Lcom/android/i18n/timezone/TelephonyLookup; 730 +Lcom/android/internal/telephony/CarrierServiceBindHelper$CarrierServicePackageMonitor; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.549:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mInCallVoicePrivacyOffRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/cdma/CdmaInboundSmsHandler$CdmaCbTestBroadcastReceiver; 730 +Lcom/android/internal/telephony/IntentBroadcaster; 730 +Landroid/telephony/ims/RegistrationManager$RegistrationCallback$RegistrationBinder; 730 +Lcom/android/internal/telephony/GsmCdmaCallTracker$1; 730 +Lcom/android/internal/telephony/uicc/UiccProfile$2; 730 +Landroid/telephony/ims/ImsMmTelManager$CapabilityCallback$CapabilityBinder; 730 +Landroid/telephony/CellSignalStrengthGsm; 730 +Landroid/os/Handler$MessengerImpl; 730 +Lcom/android/internal/telephony/DisplayInfoController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationStats; 730 +Lcom/android/internal/telephony/DeviceStateMonitor$3; 730 +Lcom/android/internal/telephony/RIL;.sRilTimeHistograms:Landroid/util/SparseArray; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.469:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/PhoneConfigurationManager; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.349:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/TelephonyDevController;.mSims:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$IncomingSms; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$UnmeteredNetworks; 730 +Lcom/android/internal/telephony/euicc/EuiccCardController; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mMmiCompleteRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$DataNetworkValidation; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$BindingState; 730 +Lcom/android/internal/telephony/uicc/UiccPkcs15$Pkcs15Selector; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.23:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/SomeArgs; 730 +Lcom/android/internal/telephony/SmsStorageMonitor; 730 +Lcom/android/internal/telephony/SmsApplication$SmsPackageMonitor; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$CarrierIdMismatch; 730 +Lcom/android/phone/ecc/nano/ProtobufEccData$EccInfo; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mSuppServiceFailedRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyCallSession$Event$RilCall; 730 +Lcom/android/internal/telephony/metrics/TelephonyMetrics; 730 +Lcom/android/internal/telephony/ims/ImsResolver$3; 730 +Lcom/android/internal/telephony/uicc/UiccProfile; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteAccessController; 730 +Lcom/android/internal/telephony/NitzStateMachine; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$DisconnectedState; 730 +Lcom/android/internal/telephony/uicc/UiccStateChangedLauncher; 730 +Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$15; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.833:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/SmsUsageMonitor; 730 +Lcom/android/internal/telephony/euicc/EuiccCardController$SimSlotStatusChangedBroadcastReceiver; 730 +Lcom/android/internal/telephony/ims/ImsServiceController$1; 730 +Lcom/android/internal/telephony/satellite/SatelliteModemInterface; 730 +Lcom/android/internal/telephony/CarrierResolver$2; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$NetworkRequests; 730 +Lcom/android/internal/telephony/MccTable; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SipDelegateStats; 730 +Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray;.mValues:[Ljava/lang/Object; 730 +Lcom/android/ims/FeatureConnector$1; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1443:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/ims/ImsResolver$1; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState; 730 +Lcom/android/internal/telephony/security/NullCipherNotifier; 730 +Lcom/android/internal/telephony/SMSDispatcher$1; 730 +Lcom/android/phone/ecc/nano/ProtobufEccData$CountryInfo; 730 +Lcom/android/internal/telephony/LocaleTracker$1; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mTtyModeReceivedRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallRatUsage; 730 +Landroid/os/AsyncResult; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mDisconnectRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteConfigUpdater; 730 +Lcom/android/internal/telephony/ims/ImsResolver; 730 +Lcom/android/internal/telephony/ServiceStateTracker$1; 730 +Lcom/android/internal/telephony/PhoneFactory; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager; 730 +Landroid/telephony/CellSignalStrengthTdscdma; 730 +Landroid/telephony/emergency/EmergencyNumber; 730 +Lcom/android/internal/telephony/GsmCdmaPhone; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportSession; 730 +Landroid/app/timezonedetector/TimeZoneDetector; 730 +Landroid/telephony/ims/aidl/IImsServiceController$Stub$Proxy; 730 +Lcom/android/internal/telephony/TelephonyTester$1; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$EmergencyNumbersInfo; 730 +Lcom/android/internal/telephony/nano/TelephonyProto$TelephonyServiceState$NetworkRegistrationInfo; 730 +Lcom/android/internal/telephony/CarrierServiceBindHelper$1; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mHandlerMap:Ljava/util/HashMap; 730 +Lcom/android/internal/telephony/IccPhoneBookInterfaceManager; 730 +Lcom/android/internal/telephony/CarrierPrivilegesTracker$1; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1173:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$DataCallSession; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mForegroundCalls:Ljava/util/ArrayList; 730 +Landroid/telephony/TelephonyLocalConnection; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$1; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerListenerEvent; 730 +Landroid/telephony/ModemInfo; 730 +Lcom/android/internal/telephony/CommandException$Error;.INVALID_SIM_STATE:Lcom/android/internal/telephony/CommandException$Error; 730 +Lcom/android/internal/telephony/CommandException; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$VoiceCallSession; 730 +Lcom/android/internal/telephony/imsphone/ImsExternalCallTracker; 730 +Lcom/android/internal/telephony/euicc/EuiccController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteSession; 730 +Landroid/telephony/CellSignalStrengthLte; 730 +Lcom/android/internal/telephony/CarrierActionAgent$1; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingShortCodeSms; 730 +Lcom/android/internal/telephony/satellite/PointingAppController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteIncomingDatagram; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationFeatureTagStats; 730 +Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$2; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.33:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/nano/TelephonyProto$RilDataCall; 730 +Lcom/android/internal/telephony/RILRequest; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$ConnectedState$5; 730 +Landroid/telephony/BarringInfo$BarringServiceInfo; 730 +Lcom/android/internal/telephony/IWapPushManager; 730 +Lcom/android/internal/telephony/SmsDispatchersController; 730 +Lcom/android/internal/telephony/uicc/UiccController; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$CellularServiceState; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$OutgoingSms; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SatelliteEntitlement; 730 +Lcom/android/internal/telephony/util/NotificationChannelController$1; 730 +Lcom/android/ims/ImsManager;.IMS_STATS_CALLBACKS:Landroid/util/SparseArray;.mKeys:[I 730 +Lcom/android/internal/telephony/IccSmsInterfaceManager; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$SipTransportFeatureTagStats; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mInCallVoicePrivacyOnRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/uicc/UiccProfile$4; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$UceEventStats; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsDedicatedBearerEvent; 730 +Lcom/android/internal/telephony/RadioConfig; 730 +Lcom/android/internal/telephony/PackageChangeReceiver; 730 +Lcom/android/internal/telephony/PhoneSubInfoController; 730 +Lcom/android/internal/telephony/euicc/EuiccConnector$EuiccPackageMonitor; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationTermination; 730 +Lcom/android/internal/telephony/uicc/PinStorage$1; 730 +Lcom/android/internal/telephony/SmsBroadcastUndelivered$1; 730 +Lcom/android/internal/telephony/cdma/CdmaSubscriptionSourceManager; 730 +Lcom/android/internal/telephony/CarrierKeyDownloadManager$3; 730 +Lcom/android/internal/telephony/NetworkTypeController$DefaultState; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$RcsAcsProvisioningStats; 730 +Landroid/net/TelephonyNetworkSpecifier; 730 +Landroid/telephony/CarrierConfigManager;.sDefaults:Landroid/os/PersistableBundle;.mMap:Landroid/util/ArrayMap;.mArray:[Ljava/lang/Object;.1459:[Ljava/lang/String; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mSignalInfoRegistrants:Lcom/android/internal/telephony/RegistrantList;.registrants:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/nano/PersistAtomsProto$ImsRegistrationServiceDescStats; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mBackgroundCalls:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/CallManager;.INSTANCE:Lcom/android/internal/telephony/CallManager;.mPhones:Ljava/util/ArrayList; 730 +Lcom/android/internal/telephony/LocaleTracker; 730 +Lcom/android/internal/telephony/RilWakelockInfo; 730 +Landroid/telephony/CellSignalStrengthNr; 730 +Landroid/telephony/CellSignalStrengthCdma; 730 +Landroid/telephony/NetworkService; 731 +Landroid/util/Log$TerribleFailure; 732 +Lcom/android/internal/os/RuntimeInit$KillApplicationHandler; 733 +Landroid/content/res/ResourcesKey; 734 +Landroid/app/ResourcesManager; 734 +Landroid/widget/HorizontalScrollView$SavedState; 736 +Landroid/widget/AbsSpinner$SavedState; 736 +Landroid/widget/Spinner$SavedState; 736 +Lcom/android/internal/transition/EpicenterTranslateClipReveal; 737 +Landroid/transition/TransitionInflater;.sConstructors:Landroid/util/ArrayMap; 737 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.15:Ljava/lang/String; 738 +Landroid/view/ThreadedRenderer;.OVERDRAW_PROPERTY_SHOW:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.141:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.35:Ljava/lang/String; 738 +Landroid/text/Html$ImageGetter; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.80:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.224:Ljava/lang/String; 738 +Landroid/webkit/ConsoleMessage$MessageLevel;.WARNING:Landroid/webkit/ConsoleMessage$MessageLevel; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.118:Ljava/lang/String; 738 +Landroid/webkit/ConsoleMessage$MessageLevel;.LOG:Landroid/webkit/ConsoleMessage$MessageLevel; 738 +Landroid/webkit/ConsoleMessage$MessageLevel;.DEBUG:Landroid/webkit/ConsoleMessage$MessageLevel; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.221:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._replacementCountries:[Ljava/lang/String;.9:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.127:Ljava/lang/String; 738 +Landroid/window/ImeOnBackInvokedDispatcher;.RESULT_KEY_PRIORITY:Ljava/lang/String; 738 +Landroid/util/AndroidRuntimeException; 738 +Lcom/android/internal/app/procstats/DumpUtils;.STATE_TAGS:[Ljava/lang/String;.14:Ljava/lang/String; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.6:Ljava/lang/String; 738 +Landroid/webkit/ConsoleMessage$MessageLevel;.TIP:Landroid/webkit/ConsoleMessage$MessageLevel; 738 +Landroid/webkit/ConsoleMessage$MessageLevel;.ERROR:Landroid/webkit/ConsoleMessage$MessageLevel; 738 +Landroid/opengl/GLSurfaceView; 738 +Landroid/icu/impl/LocaleIDs;._countries:[Ljava/lang/String;.237:Ljava/lang/String; 738 +Landroid/app/servertransaction/LaunchActivityItem; 739 +Landroid/app/backup/BackupManager; 750 +Landroid/content/pm/PackageManager$NameNotFoundException; 751 +Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader;.packages:Ljava/util/Map;.m:Ljava/util/Map;.table:[Ljava/util/HashMap$Node; 752 +Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader;.packages:Ljava/util/Map;.m:Ljava/util/Map; 752 +Landroid/view/textclassifier/TextLanguage;.EMPTY:Landroid/view/textclassifier/TextLanguage;.mBundle:Landroid/os/Bundle;.mClassLoader:Ljava/lang/ClassLoader; 752 +Landroid/icu/util/ULocale$AliasReplacer; 753 +Landroid/widget/MediaController$MediaPlayerControl; 755 +Landroid/graphics/Point; 759 +Landroid/content/ContentValues; 759 +Landroid/opengl/GLSurfaceView$Renderer; 760 +Landroid/opengl/GLSurfaceView;.sGLThreadManager:Landroid/opengl/GLSurfaceView$GLThreadManager; 761 +Landroid/text/StaticLayout; 762 +Landroid/animation/AnimationHandler$AnimationFrameCallbackProvider; 762 +Landroid/text/method/DigitsKeyListener;.sLocaleInstanceCache:Ljava/util/HashMap; 764 +Landroid/graphics/Path$Op; 765 +Landroid/text/method/QwertyKeyListener; 765 +Landroid/app/StackTrace; 765 +Landroid/icu/text/BreakIterator;.iterCache:[Landroid/icu/impl/CacheValue; 766 +Landroid/view/View$OnHoverListener; 767 +Landroid/content/res/ColorStateList; 767 +Landroid/security/IKeyChainService; 768 +Landroid/app/Notification$MessagingStyle; 769 +Landroid/content/ContentProviderClient; 773 +Landroid/os/UserHandle;.sExtraUserHandleCache:Landroid/util/SparseArray; 773 +Landroid/content/ContentProvider$PipeDataWriter; 774 +Landroid/os/strictmode/UnsafeIntentLaunchViolation; 774 +Landroid/content/AsyncQueryHandler; 776 +Landroid/app/Activity$$ExternalSyntheticLambda0; 777 +Landroid/widget/CheckedTextView; 777 +Landroid/graphics/PorterDuff$Mode;.SRC_IN:Landroid/graphics/PorterDuff$Mode; 778 +Landroid/graphics/drawable/InsetDrawable; 779 +Landroid/view/OrientationEventListener; 781 +Landroid/hardware/camera2/CameraCharacteristics;.INFO_SUPPORTED_HARDWARE_LEVEL:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 782 +Landroid/hardware/camera2/CameraCharacteristics;.SENSOR_ORIENTATION:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 783 +Landroid/hardware/camera2/CameraCharacteristics;.INFO_DEVICE_STATE_ORIENTATIONS:Landroid/hardware/camera2/CameraCharacteristics$Key;.mKey:Landroid/hardware/camera2/impl/CameraMetadataNative$Key; 783 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.9:Ljava/util/WeakHashMap$Entry; 785 +Landroid/media/MediaRouter$VolumeChangeReceiver; 787 +Landroid/media/MediaRouter$WifiDisplayStatusChangedReceiver; 787 +Landroid/media/MediaRouter; 788 +Landroid/hardware/SensorPrivacyManager; 789 +Landroid/os/storage/StorageManager; 790 +Landroid/telephony/SubscriptionManager; 791 +Landroid/view/textservice/TextServicesManager; 791 +Landroid/os/SystemConfigManager; 791 +Landroid/view/LayoutInflater; 791 +Landroid/hardware/input/InputManager; 791 +Landroid/credentials/CredentialManager; 791 +Landroid/permission/PermissionControllerManager; 791 +Landroid/net/NetworkPolicyManager; 791 +Landroid/security/attestationverification/AttestationVerificationManager; 791 +Landroid/app/contextualsearch/ContextualSearchManager; 791 +Landroid/app/wearable/WearableSensingManager; 791 +Landroid/app/people/PeopleManager; 791 +Landroid/net/wifi/sharedconnectivity/app/SharedConnectivityManager; 791 +Landroid/media/session/MediaSessionManager; 791 +Landroid/provider/E2eeContactKeysManager; 791 +Landroid/view/contentcapture/ContentCaptureManager; 791 +Landroid/app/contentsuggestions/ContentSuggestionsManager; 791 +Landroid/os/HardwarePropertiesManager; 791 +Landroid/app/admin/DevicePolicyManager; 791 +Landroid/view/translation/TranslationManager; 791 +Landroid/view/autofill/AutofillManager; 791 +Landroid/net/vcn/VcnManager; 791 +Landroid/service/persistentdata/PersistentDataBlockManager; 791 +Landroid/view/textclassifier/TextClassificationManager; 791 +Landroid/media/tv/tunerresourcemanager/TunerResourceManager; 791 +Landroid/os/RecoverySystem; 791 +Landroid/os/strictmode/Violation; 793 +Lcom/android/internal/telephony/uicc/asn1/Asn1Node;.EMPTY_NODE_LIST:Ljava/util/List; 795 +Landroid/os/strictmode/CredentialProtectedWhileLockedViolation; 796 +Landroid/net/metrics/DhcpClientEvent; 797 +Landroid/icu/impl/CharacterPropertiesImpl;.inclusions:[Landroid/icu/text/UnicodeSet; 798 +Landroid/content/AttributionSource; 800 +Landroid/database/sqlite/SQLiteException; 801 +Lcom/android/ims/ImsManager;.TRUE:Ljava/lang/String; 802 +Landroid/graphics/Matrix; 803 +Landroid/graphics/RectF; 803 +Landroid/os/Parcel$LazyValue; 803 +Landroid/telephony/TelephonyCallback$DataEnabledListener; 804 +Landroid/app/PropertyInvalidatedCache;.sCaches:Ljava/util/WeakHashMap;.table:[Ljava/util/WeakHashMap$Entry;.6:Ljava/util/WeakHashMap$Entry; 805 +Landroid/service/media/MediaBrowserService$ServiceState; 806 +Landroid/graphics/drawable/PictureDrawable; 806 +Landroid/content/pm/PackageManager; 812 +Landroid/window/IWindowContainerToken$Stub$Proxy; 813 +Landroid/app/UriGrantsManager;.IUriGrantsManagerSingleton:Landroid/util/Singleton; 814 +Landroid/provider/FontsContract;.sTypefaceCache:Landroid/util/LruCache;.map:Ljava/util/LinkedHashMap; 816 +Landroid/provider/FontsContract;.sTypefaceCache:Landroid/util/LruCache; 816 +Lcom/android/internal/telephony/WspTypeDecoder;.WELL_KNOWN_MIME_TYPES:Ljava/util/HashMap;.table:[Ljava/util/HashMap$Node;.81:Ljava/util/HashMap$Node;.key:Ljava/lang/Object; 817 +Landroid/app/Service; 818 +Landroid/app/ReceiverRestrictedContext; 819 +Landroid/util/proto/ProtoStream;.FIELD_TYPE_NAMES:[Ljava/lang/String;.10:Ljava/lang/String; 820 +Lorg/apache/http/conn/ssl/SSLSocketFactory$NoPreloadHolder; 820 +Landroid/app/LoadedApk$WarningContextClassLoader; 820 +Ljavax/sip/header/PriorityHeader;.NORMAL:Ljava/lang/String; 820 +Lcom/android/internal/telephony/euicc/EuiccController;.EXTRA_OPERATION:Ljava/lang/String; 820 +Landroid/widget/ViewAnimator; 820 +Landroid/security/keystore/KeyGenParameterSpec; 821 +Landroid/text/style/StyleSpan; 821 +Landroid/util/SparseIntArray; 823 +Landroid/database/ContentObserver; 823 diff --git a/config/preloaded-classes b/config/preloaded-classes index fe3e0e4bbd20..ed402767ee64 100644 --- a/config/preloaded-classes +++ b/config/preloaded-classes @@ -56,13 +56,13 @@ android.accounts.AccountManager$5 android.accounts.AccountManager$8 android.accounts.AccountManager$AccountKeyData android.accounts.AccountManager$AmsTask$1 -android.accounts.AccountManager$AmsTask$Response-IA android.accounts.AccountManager$AmsTask$Response android.accounts.AccountManager$AmsTask android.accounts.AccountManager$BaseFutureTask$1 android.accounts.AccountManager$BaseFutureTask android.accounts.AccountManager$Future2Task$1 android.accounts.AccountManager$Future2Task +android.accounts.AccountManager-IA android.accounts.AccountManager android.accounts.AccountManagerCallback android.accounts.AccountManagerFuture @@ -86,13 +86,20 @@ android.accounts.IAccountManagerResponse android.accounts.NetworkErrorException android.accounts.OnAccountsUpdateListener android.accounts.OperationCanceledException +android.aconfig.nano.Aconfig$flag_declaration +android.aconfig.nano.Aconfig$flag_declarations +android.aconfig.nano.Aconfig$flag_value +android.aconfig.nano.Aconfig$flag_values +android.aconfig.nano.Aconfig$parsed_flag +android.aconfig.nano.Aconfig$parsed_flags +android.aconfig.nano.Aconfig$tracepoint android.animation.AnimationHandler$$ExternalSyntheticLambda0 android.animation.AnimationHandler$1 android.animation.AnimationHandler$2 android.animation.AnimationHandler$AnimationFrameCallback android.animation.AnimationHandler$AnimationFrameCallbackProvider -android.animation.AnimationHandler$MyFrameCallbackProvider-IA android.animation.AnimationHandler$MyFrameCallbackProvider +android.animation.AnimationHandler-IA android.animation.AnimationHandler android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda0 android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda1 @@ -106,8 +113,8 @@ android.animation.Animator$AnimatorConstantState android.animation.Animator$AnimatorListener android.animation.Animator$AnimatorPauseListener android.animation.Animator -android.animation.AnimatorInflater$PathDataEvaluator-IA android.animation.AnimatorInflater$PathDataEvaluator +android.animation.AnimatorInflater-IA android.animation.AnimatorInflater android.animation.AnimatorListenerAdapter android.animation.AnimatorSet$$ExternalSyntheticLambda0 @@ -118,8 +125,8 @@ android.animation.AnimatorSet$3 android.animation.AnimatorSet$AnimationEvent android.animation.AnimatorSet$Builder android.animation.AnimatorSet$Node -android.animation.AnimatorSet$SeekState-IA android.animation.AnimatorSet$SeekState +android.animation.AnimatorSet-IA android.animation.AnimatorSet android.animation.ArgbEvaluator android.animation.BidirectionalTypeConverter @@ -150,8 +157,8 @@ android.animation.PathKeyframes$3 android.animation.PathKeyframes$4 android.animation.PathKeyframes$FloatKeyframesBase android.animation.PathKeyframes$IntKeyframesBase -android.animation.PathKeyframes$SimpleKeyframes-IA android.animation.PathKeyframes$SimpleKeyframes +android.animation.PathKeyframes-IA android.animation.PathKeyframes android.animation.PropertyValuesHolder$1 android.animation.PropertyValuesHolder$FloatPropertyValuesHolder @@ -164,8 +171,8 @@ android.animation.RectEvaluator android.animation.RevealAnimator android.animation.StateListAnimator$1 android.animation.StateListAnimator$StateListAnimatorConstantState -android.animation.StateListAnimator$Tuple-IA android.animation.StateListAnimator$Tuple +android.animation.StateListAnimator-IA android.animation.StateListAnimator android.animation.TimeAnimator$TimeListener android.animation.TimeAnimator @@ -198,19 +205,22 @@ android.app.Activity$$ExternalSyntheticLambda0 android.app.Activity$1 android.app.Activity$HostCallbacks android.app.Activity$ManagedCursor -android.app.Activity$ManagedDialog-IA android.app.Activity$ManagedDialog android.app.Activity$NonConfigurationInstances android.app.Activity$RequestFinishCallback android.app.Activity$TranslucentConversionListener +android.app.Activity-IA android.app.Activity android.app.ActivityClient$1 -android.app.ActivityClient$ActivityClientControllerSingleton-IA android.app.ActivityClient$ActivityClientControllerSingleton android.app.ActivityClient-IA android.app.ActivityClient -android.app.ActivityManager$2 +android.app.ActivityManager$$ExternalSyntheticLambda0 +android.app.ActivityManager$$ExternalSyntheticLambda1 +android.app.ActivityManager$$ExternalSyntheticLambda2 +android.app.ActivityManager$1 android.app.ActivityManager$3 +android.app.ActivityManager$4 android.app.ActivityManager$AppTask android.app.ActivityManager$MemoryInfo$1 android.app.ActivityManager$MemoryInfo @@ -222,20 +232,16 @@ android.app.ActivityManager$ProcessErrorStateInfo$1 android.app.ActivityManager$ProcessErrorStateInfo android.app.ActivityManager$RecentTaskInfo$1 android.app.ActivityManager$RecentTaskInfo$PersistedTaskSnapshotData -android.app.ActivityManager$RecentTaskInfo-IA android.app.ActivityManager$RecentTaskInfo android.app.ActivityManager$RunningAppProcessInfo$1 -android.app.ActivityManager$RunningAppProcessInfo-IA android.app.ActivityManager$RunningAppProcessInfo android.app.ActivityManager$RunningServiceInfo$1 -android.app.ActivityManager$RunningServiceInfo-IA android.app.ActivityManager$RunningServiceInfo android.app.ActivityManager$RunningTaskInfo$1 -android.app.ActivityManager$RunningTaskInfo-IA android.app.ActivityManager$RunningTaskInfo android.app.ActivityManager$TaskDescription$1 -android.app.ActivityManager$TaskDescription-IA android.app.ActivityManager$TaskDescription +android.app.ActivityManager-IA android.app.ActivityManager android.app.ActivityManagerInternal android.app.ActivityOptions$1 @@ -268,7 +274,6 @@ android.app.ActivityThread$ActivityClientRecord android.app.ActivityThread$AppBindData android.app.ActivityThread$ApplicationThread$$ExternalSyntheticLambda2 android.app.ActivityThread$ApplicationThread$1 -android.app.ActivityThread$ApplicationThread-IA android.app.ActivityThread$BindServiceData android.app.ActivityThread$ContextCleanupInfo android.app.ActivityThread$CreateBackupAgentData @@ -278,7 +283,6 @@ android.app.ActivityThread$DumpHeapData android.app.ActivityThread$DumpResourcesData android.app.ActivityThread$GcIdler android.app.ActivityThread$H -android.app.ActivityThread$Idler-IA android.app.ActivityThread$Idler android.app.ActivityThread$Profiler android.app.ActivityThread$ProviderClientRecord @@ -290,6 +294,7 @@ android.app.ActivityThread$RequestAssistContextExtras android.app.ActivityThread$SafeCancellationTransport android.app.ActivityThread$ServiceArgsData android.app.ActivityThread$UpdateCompatibilityData +android.app.ActivityThread-IA android.app.ActivityThread android.app.ActivityThreadInternal android.app.ActivityTransitionCoordinator @@ -360,6 +365,7 @@ android.app.AppOpsManager android.app.AppOpsManagerInternal android.app.Application$ActivityLifecycleCallbacks android.app.Application$OnProvideAssistDataListener +android.app.Application android.app.ApplicationErrorReport$1 android.app.ApplicationErrorReport$AnrInfo android.app.ApplicationErrorReport$BatteryInfo @@ -371,8 +377,8 @@ android.app.ApplicationErrorReport android.app.ApplicationExitInfo$1 android.app.ApplicationExitInfo-IA android.app.ApplicationExitInfo -android.app.ApplicationLoaders$CachedClassLoader-IA android.app.ApplicationLoaders$CachedClassLoader +android.app.ApplicationLoaders-IA android.app.ApplicationLoaders android.app.ApplicationPackageManager$$ExternalSyntheticLambda1 android.app.ApplicationPackageManager$$ExternalSyntheticLambda2 @@ -395,6 +401,8 @@ android.app.BackgroundInstallControlManager android.app.BackgroundServiceStartNotAllowedException$1 android.app.BackgroundServiceStartNotAllowedException android.app.BroadcastOptions +android.app.BroadcastStickyCache +android.app.CameraCompatTaskInfo$1 android.app.CameraCompatTaskInfo android.app.ClientTransactionHandler android.app.ComponentCaller @@ -499,7 +507,6 @@ android.app.IAssistDataReceiver android.app.IBackupAgent$Stub$Proxy android.app.IBackupAgent$Stub android.app.IBackupAgent -android.app.ICompatCameraControlCallback android.app.IForegroundServiceObserver$Stub$Proxy android.app.IForegroundServiceObserver$Stub android.app.IForegroundServiceObserver @@ -594,14 +601,13 @@ android.app.ListActivity android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0 android.app.LoadedApk$ReceiverDispatcher$Args android.app.LoadedApk$ReceiverDispatcher -android.app.LoadedApk$ServiceDispatcher$ConnectionInfo-IA android.app.LoadedApk$ServiceDispatcher$ConnectionInfo android.app.LoadedApk$ServiceDispatcher$DeathMonitor android.app.LoadedApk$ServiceDispatcher$RunConnection android.app.LoadedApk$ServiceDispatcher android.app.LoadedApk$SplitDependencyLoaderImpl -android.app.LoadedApk$WarningContextClassLoader-IA android.app.LoadedApk$WarningContextClassLoader +android.app.LoadedApk-IA android.app.LoadedApk android.app.LoaderManager$LoaderCallbacks android.app.LoaderManager @@ -615,13 +621,11 @@ android.app.Notification$$ExternalSyntheticLambda0 android.app.Notification$1 android.app.Notification$Action$1 android.app.Notification$Action$Builder -android.app.Notification$Action-IA android.app.Notification$Action android.app.Notification$BigPictureStyle android.app.Notification$BigTextStyle android.app.Notification$BubbleMetadata$1 android.app.Notification$BubbleMetadata$Builder -android.app.Notification$BubbleMetadata-IA android.app.Notification$BubbleMetadata android.app.Notification$Builder android.app.Notification$BuilderRemoteViews @@ -634,12 +638,12 @@ android.app.Notification$InboxStyle android.app.Notification$MediaStyle android.app.Notification$MessagingStyle$Message android.app.Notification$MessagingStyle -android.app.Notification$StandardTemplateParams-IA android.app.Notification$StandardTemplateParams android.app.Notification$Style android.app.Notification$TemplateBindResult$MarginSet android.app.Notification$TemplateBindResult android.app.Notification$TvExtender +android.app.Notification-IA android.app.Notification android.app.NotificationChannel$1 android.app.NotificationChannel @@ -658,7 +662,6 @@ android.app.PackageInstallObserver android.app.PendingIntent$$ExternalSyntheticLambda0 android.app.PendingIntent$$ExternalSyntheticLambda1 android.app.PendingIntent$$ExternalSyntheticLambda2 -android.app.PendingIntent$$ExternalSyntheticLambda3 android.app.PendingIntent$1 android.app.PendingIntent$CancelListener android.app.PendingIntent$CanceledException @@ -666,7 +669,6 @@ android.app.PendingIntent$OnFinished android.app.PendingIntent$OnMarshaledListener android.app.PendingIntent android.app.Person$1 -android.app.Person$Builder-IA android.app.Person$Builder android.app.Person-IA android.app.Person @@ -704,15 +706,14 @@ android.app.RemoteInputHistoryItem android.app.RemoteServiceException android.app.ResourcesManager$$ExternalSyntheticLambda0 android.app.ResourcesManager$$ExternalSyntheticLambda1 -android.app.ResourcesManager$ActivityResource-IA android.app.ResourcesManager$ActivityResource -android.app.ResourcesManager$ActivityResources-IA android.app.ResourcesManager$ActivityResources android.app.ResourcesManager$ApkAssetsSupplier android.app.ResourcesManager$ApkKey +android.app.ResourcesManager$PathCollector android.app.ResourcesManager$SharedLibraryAssets -android.app.ResourcesManager$UpdateHandler-IA android.app.ResourcesManager$UpdateHandler +android.app.ResourcesManager-IA android.app.ResourcesManager android.app.ResultInfo$1 android.app.ResultInfo @@ -738,9 +739,10 @@ android.app.SharedPreferencesImpl$1 android.app.SharedPreferencesImpl$EditorImpl$$ExternalSyntheticLambda0 android.app.SharedPreferencesImpl$EditorImpl$1 android.app.SharedPreferencesImpl$EditorImpl$2 -android.app.SharedPreferencesImpl$MemoryCommitResult-IA +android.app.SharedPreferencesImpl$EditorImpl android.app.SharedPreferencesImpl$MemoryCommitResult android.app.SharedPreferencesImpl$SharedPreferencesThreadFactory +android.app.SharedPreferencesImpl-IA android.app.StackTrace android.app.StatusBarManager android.app.SyncNotedAppOp$1 @@ -797,6 +799,8 @@ android.app.SystemServiceRegistry$143 android.app.SystemServiceRegistry$144 android.app.SystemServiceRegistry$145 android.app.SystemServiceRegistry$146 +android.app.SystemServiceRegistry$147 +android.app.SystemServiceRegistry$148 android.app.SystemServiceRegistry$14 android.app.SystemServiceRegistry$15 android.app.SystemServiceRegistry$16 @@ -906,8 +910,8 @@ android.app.UiModeManager$1 android.app.UiModeManager$Globals android.app.UiModeManager$InnerListener android.app.UiModeManager$OnProjectionStateChangedListener -android.app.UiModeManager$OnProjectionStateChangedListenerResourceManager-IA android.app.UiModeManager$OnProjectionStateChangedListenerResourceManager +android.app.UiModeManager-IA android.app.UiModeManager android.app.UidObserver android.app.UriGrantsManager$1 @@ -1019,17 +1023,17 @@ android.app.assist.AssistStructure$ViewNodeText android.app.assist.AssistStructure$ViewStackEntry android.app.assist.AssistStructure$WindowNode android.app.assist.AssistStructure -android.app.backup.BackupAgent$BackupServiceBinder-IA android.app.backup.BackupAgent$BackupServiceBinder android.app.backup.BackupAgent$SharedPrefsSynchronizer +android.app.backup.BackupAgent-IA android.app.backup.BackupAgent android.app.backup.BackupAgentHelper android.app.backup.BackupDataInput$EntityHeader android.app.backup.BackupDataInput android.app.backup.BackupDataOutput android.app.backup.BackupHelper -android.app.backup.BackupHelperDispatcher$Header-IA android.app.backup.BackupHelperDispatcher$Header +android.app.backup.BackupHelperDispatcher-IA android.app.backup.BackupHelperDispatcher android.app.backup.BackupHelperWithLogger android.app.backup.BackupManager$BackupObserverWrapper$1 @@ -1117,11 +1121,11 @@ android.app.job.IUserVisibleJobObserver android.app.job.JobInfo$1 android.app.job.JobInfo$Builder android.app.job.JobInfo$TriggerContentUri$1 -android.app.job.JobInfo$TriggerContentUri-IA android.app.job.JobInfo$TriggerContentUri android.app.job.JobInfo-IA android.app.job.JobInfo android.app.job.JobParameters$1 +android.app.job.JobParameters$JobCleanupCallback android.app.job.JobParameters-IA android.app.job.JobParameters android.app.job.JobScheduler @@ -1195,8 +1199,6 @@ android.app.servertransaction.LaunchActivityItem android.app.servertransaction.NewIntentItem$1 android.app.servertransaction.NewIntentItem-IA android.app.servertransaction.NewIntentItem -android.app.servertransaction.ObjectPool -android.app.servertransaction.ObjectPoolItem android.app.servertransaction.PauseActivityItem$1 android.app.servertransaction.PauseActivityItem-IA android.app.servertransaction.PauseActivityItem @@ -1216,6 +1218,7 @@ android.app.servertransaction.TopResumedActivityChangeItem-IA android.app.servertransaction.TopResumedActivityChangeItem android.app.servertransaction.TransactionExecutor android.app.servertransaction.TransactionExecutorHelper +android.app.servertransaction.WindowStateTransactionItem$TransactionListener android.app.slice.ISliceManager$Stub$Proxy android.app.slice.ISliceManager$Stub android.app.slice.ISliceManager @@ -1267,6 +1270,7 @@ android.app.smartspace.uitemplatedata.TapAction$1 android.app.smartspace.uitemplatedata.TapAction android.app.smartspace.uitemplatedata.Text$1 android.app.smartspace.uitemplatedata.Text +android.app.supervision.SupervisionManager android.app.time.ITimeZoneDetectorListener$Stub$Proxy android.app.time.ITimeZoneDetectorListener$Stub android.app.time.ITimeZoneDetectorListener @@ -1389,6 +1393,7 @@ android.companion.virtual.IVirtualDevice android.companion.virtual.IVirtualDeviceManager$Stub$Proxy android.companion.virtual.IVirtualDeviceManager$Stub android.companion.virtual.IVirtualDeviceManager +android.companion.virtual.VirtualDevice$1 android.companion.virtual.VirtualDevice android.companion.virtual.VirtualDeviceManager android.companion.virtual.flags.FeatureFlags @@ -1398,10 +1403,9 @@ android.compat.Compatibility$1 android.compat.Compatibility$BehaviorChangeDelegate android.compat.Compatibility$ChangeConfig android.compat.Compatibility -android.content.AbstractThreadedSyncAdapter$ISyncAdapterImpl-IA android.content.AbstractThreadedSyncAdapter$ISyncAdapterImpl -android.content.AbstractThreadedSyncAdapter$SyncThread-IA android.content.AbstractThreadedSyncAdapter$SyncThread +android.content.AbstractThreadedSyncAdapter-IA android.content.AbstractThreadedSyncAdapter android.content.ActivityNotFoundException android.content.ApexEnvironment @@ -1421,8 +1425,8 @@ android.content.BroadcastReceiver$PendingResult$1 android.content.BroadcastReceiver$PendingResult android.content.BroadcastReceiver android.content.ClipData$1 -android.content.ClipData$Item-IA android.content.ClipData$Item +android.content.ClipData-IA android.content.ClipData android.content.ClipDescription$1 android.content.ClipDescription @@ -1450,14 +1454,13 @@ android.content.ContentProvider$PipeDataWriter android.content.ContentProvider$Transport android.content.ContentProvider android.content.ContentProviderClient$CursorWrapperInner -android.content.ContentProviderClient$NotRespondingRunnable-IA android.content.ContentProviderClient$NotRespondingRunnable +android.content.ContentProviderClient-IA android.content.ContentProviderClient android.content.ContentProviderNative android.content.ContentProviderOperation$1 android.content.ContentProviderOperation$BackReference$1 android.content.ContentProviderOperation$BackReference -android.content.ContentProviderOperation$Builder-IA android.content.ContentProviderOperation$Builder android.content.ContentProviderOperation-IA android.content.ContentProviderOperation @@ -1467,11 +1470,10 @@ android.content.ContentResolver$1 android.content.ContentResolver$2 android.content.ContentResolver$OpenResourceIdResult android.content.ContentResolver$ParcelFileDescriptorInner -android.content.ContentResolver$ResultListener-IA android.content.ContentResolver$ResultListener -android.content.ContentResolver$StringResultListener-IA android.content.ContentResolver$StringResultListener android.content.ContentResolver$UriResultListener +android.content.ContentResolver-IA android.content.ContentResolver android.content.ContentUris android.content.ContentValues$1 @@ -1739,11 +1741,11 @@ android.content.pm.LauncherApps$1 android.content.pm.LauncherApps$AppUsageLimit$1 android.content.pm.LauncherApps$AppUsageLimit android.content.pm.LauncherApps$Callback -android.content.pm.LauncherApps$CallbackMessageHandler$CallbackInfo-IA android.content.pm.LauncherApps$CallbackMessageHandler$CallbackInfo android.content.pm.LauncherApps$CallbackMessageHandler android.content.pm.LauncherApps$ShortcutQuery$QueryFlags android.content.pm.LauncherApps$ShortcutQuery +android.content.pm.LauncherApps-IA android.content.pm.LauncherApps android.content.pm.ModuleInfo$1 android.content.pm.ModuleInfo-IA @@ -1787,7 +1789,6 @@ android.content.pm.PackageManager$Property android.content.pm.PackageManager$ResolveInfoFlags android.content.pm.PackageManager android.content.pm.PackageParser$Activity$1 -android.content.pm.PackageParser$Activity-IA android.content.pm.PackageParser$Activity android.content.pm.PackageParser$ActivityIntentInfo android.content.pm.PackageParser$ApkLite @@ -1807,16 +1808,13 @@ android.content.pm.PackageParser$PackageParserException android.content.pm.PackageParser$ParseComponentArgs android.content.pm.PackageParser$ParsePackageItemArgs android.content.pm.PackageParser$Permission$1 -android.content.pm.PackageParser$Permission-IA android.content.pm.PackageParser$Permission android.content.pm.PackageParser$PermissionGroup$1 android.content.pm.PackageParser$PermissionGroup android.content.pm.PackageParser$Provider$1 -android.content.pm.PackageParser$Provider-IA android.content.pm.PackageParser$Provider android.content.pm.PackageParser$ProviderIntentInfo android.content.pm.PackageParser$Service$1 -android.content.pm.PackageParser$Service-IA android.content.pm.PackageParser$Service android.content.pm.PackageParser$ServiceIntentInfo android.content.pm.PackageParser$SigningDetails$1 @@ -1825,6 +1823,7 @@ android.content.pm.PackageParser$SigningDetails android.content.pm.PackageParser$SplitAssetLoader android.content.pm.PackageParser$SplitDependencyLoader$IllegalDependencyException android.content.pm.PackageParser$SplitNameComparator +android.content.pm.PackageParser-IA android.content.pm.PackageParser android.content.pm.PackageParserCacheHelper$ReadHelper android.content.pm.PackageParserCacheHelper$WriteHelper @@ -1949,7 +1948,6 @@ android.content.res.ApkAssets android.content.res.AssetFileDescriptor$1 android.content.res.AssetFileDescriptor$AutoCloseInputStream android.content.res.AssetFileDescriptor -android.content.res.AssetManager$AssetInputStream-IA android.content.res.AssetManager$AssetInputStream android.content.res.AssetManager$Builder android.content.res.AssetManager-IA @@ -1991,19 +1989,20 @@ android.content.res.ResourceTimer$Config android.content.res.ResourceTimer$Timer android.content.res.ResourceTimer android.content.res.Resources$$ExternalSyntheticLambda0 +android.content.res.Resources$$ExternalSyntheticLambda1 android.content.res.Resources$AssetManagerUpdateHandler android.content.res.Resources$NotFoundException -android.content.res.Resources$Theme-IA android.content.res.Resources$Theme android.content.res.Resources$ThemeKey android.content.res.Resources$UpdateCallbacks +android.content.res.Resources-IA android.content.res.Resources android.content.res.ResourcesImpl$$ExternalSyntheticLambda0 android.content.res.ResourcesImpl$$ExternalSyntheticLambda1 android.content.res.ResourcesImpl$$ExternalSyntheticLambda2 -android.content.res.ResourcesImpl$LookupStack-IA android.content.res.ResourcesImpl$LookupStack android.content.res.ResourcesImpl$ThemeImpl +android.content.res.ResourcesImpl-IA android.content.res.ResourcesImpl android.content.res.ResourcesKey android.content.res.StringBlock$Height @@ -2083,17 +2082,20 @@ android.database.sqlite.SQLiteBlobTooBigException android.database.sqlite.SQLiteCantOpenDatabaseException android.database.sqlite.SQLiteClosable android.database.sqlite.SQLiteCompatibilityWalFlags -android.database.sqlite.SQLiteConnection$Operation-IA android.database.sqlite.SQLiteConnection$Operation +android.database.sqlite.SQLiteConnection$OperationLog$$ExternalSyntheticLambda0 +android.database.sqlite.SQLiteConnection$OperationLog$$ExternalSyntheticLambda1 android.database.sqlite.SQLiteConnection$OperationLog android.database.sqlite.SQLiteConnection$PreparedStatement android.database.sqlite.SQLiteConnection$PreparedStatementCache +android.database.sqlite.SQLiteConnection$RateLimiter +android.database.sqlite.SQLiteConnection-IA android.database.sqlite.SQLiteConnection android.database.sqlite.SQLiteConnectionPool$1 android.database.sqlite.SQLiteConnectionPool$AcquiredConnectionStatus -android.database.sqlite.SQLiteConnectionPool$ConnectionWaiter-IA android.database.sqlite.SQLiteConnectionPool$ConnectionWaiter android.database.sqlite.SQLiteConnectionPool$IdleConnectionHandler +android.database.sqlite.SQLiteConnectionPool-IA android.database.sqlite.SQLiteConnectionPool android.database.sqlite.SQLiteConstraintException android.database.sqlite.SQLiteCursorDriver @@ -2105,8 +2107,8 @@ android.database.sqlite.SQLiteDatabase$$ExternalSyntheticLambda3 android.database.sqlite.SQLiteDatabase$1 android.database.sqlite.SQLiteDatabase$CursorFactory android.database.sqlite.SQLiteDatabase$OpenParams$Builder -android.database.sqlite.SQLiteDatabase$OpenParams-IA android.database.sqlite.SQLiteDatabase$OpenParams +android.database.sqlite.SQLiteDatabase-IA android.database.sqlite.SQLiteDatabase android.database.sqlite.SQLiteDatabaseConfiguration android.database.sqlite.SQLiteDatabaseCorruptException @@ -2129,8 +2131,8 @@ android.database.sqlite.SQLiteQuery android.database.sqlite.SQLiteQueryBuilder android.database.sqlite.SQLiteRawStatement android.database.sqlite.SQLiteReadOnlyDatabaseException -android.database.sqlite.SQLiteSession$Transaction-IA android.database.sqlite.SQLiteSession$Transaction +android.database.sqlite.SQLiteSession-IA android.database.sqlite.SQLiteSession android.database.sqlite.SQLiteStatement android.database.sqlite.SQLiteStatementInfo @@ -2139,8 +2141,8 @@ android.database.sqlite.SQLiteTokenizer android.database.sqlite.SQLiteTransactionListener android.database.sqlite.SqliteWrapper android.ddm.DdmHandle -android.ddm.DdmHandleAppName$Names-IA android.ddm.DdmHandleAppName$Names +android.ddm.DdmHandleAppName-IA android.ddm.DdmHandleAppName android.ddm.DdmHandleExit android.ddm.DdmHandleHeap @@ -2198,12 +2200,16 @@ android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda0 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda1 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda2 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda3 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda4 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda5 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda6 +android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda9 +android.graphics.ColorSpace$Rgb$Native android.graphics.ColorSpace$Rgb$NoImagePreloadHolder android.graphics.ColorSpace$Rgb$TransferParameters -android.graphics.ColorSpace$Rgb-IA android.graphics.ColorSpace$Rgb android.graphics.ColorSpace$Xyz +android.graphics.ColorSpace-IA android.graphics.ColorSpace android.graphics.Compatibility android.graphics.ComposePathEffect @@ -2233,11 +2239,11 @@ android.graphics.HardwareRenderer$DestroyContextRunnable android.graphics.HardwareRenderer$FrameCommitCallback android.graphics.HardwareRenderer$FrameCompleteCallback android.graphics.HardwareRenderer$FrameDrawingCallback -android.graphics.HardwareRenderer$FrameRenderRequest-IA android.graphics.HardwareRenderer$FrameRenderRequest android.graphics.HardwareRenderer$PrepareSurfaceControlForWebviewCallback android.graphics.HardwareRenderer$ProcessInitializer$1 android.graphics.HardwareRenderer$ProcessInitializer +android.graphics.HardwareRenderer-IA android.graphics.HardwareRenderer android.graphics.HardwareRendererObserver$$ExternalSyntheticLambda0 android.graphics.HardwareRendererObserver$OnFrameMetricsAvailableListener @@ -2246,12 +2252,11 @@ android.graphics.ImageDecoder$AssetInputStreamSource android.graphics.ImageDecoder$ByteArraySource android.graphics.ImageDecoder$DecodeException android.graphics.ImageDecoder$ImageDecoderSourceTrace -android.graphics.ImageDecoder$ImageInfo-IA android.graphics.ImageDecoder$ImageInfo android.graphics.ImageDecoder$InputStreamSource android.graphics.ImageDecoder$OnHeaderDecodedListener -android.graphics.ImageDecoder$Source-IA android.graphics.ImageDecoder$Source +android.graphics.ImageDecoder-IA android.graphics.ImageDecoder android.graphics.ImageFormat android.graphics.Insets$1 @@ -2264,6 +2269,7 @@ android.graphics.LightingColorFilter android.graphics.LinearGradient android.graphics.MaskFilter android.graphics.Matrix$1 +android.graphics.Matrix$ExtraNatives android.graphics.Matrix$NoImagePreloadHolder android.graphics.Matrix$ScaleToFit android.graphics.Matrix @@ -2287,6 +2293,7 @@ android.graphics.Paint android.graphics.PaintFlagsDrawFilter android.graphics.Path$Direction android.graphics.Path$FillType +android.graphics.Path$NoImagePreloadHolder android.graphics.Path$Op android.graphics.Path android.graphics.PathDashPathEffect @@ -2367,7 +2374,6 @@ android.graphics.drawable.AnimatedStateListDrawable$AnimatedStateListState android.graphics.drawable.AnimatedStateListDrawable$AnimatedVectorDrawableTransition android.graphics.drawable.AnimatedStateListDrawable$AnimationDrawableTransition android.graphics.drawable.AnimatedStateListDrawable$FrameInterpolator -android.graphics.drawable.AnimatedStateListDrawable$Transition-IA android.graphics.drawable.AnimatedStateListDrawable$Transition android.graphics.drawable.AnimatedStateListDrawable-IA android.graphics.drawable.AnimatedStateListDrawable @@ -2401,9 +2407,9 @@ android.graphics.drawable.Drawable$Callback android.graphics.drawable.Drawable$ConstantState android.graphics.drawable.Drawable android.graphics.drawable.DrawableContainer$1 -android.graphics.drawable.DrawableContainer$BlockInvalidateCallback-IA android.graphics.drawable.DrawableContainer$BlockInvalidateCallback android.graphics.drawable.DrawableContainer$DrawableContainerState +android.graphics.drawable.DrawableContainer-IA android.graphics.drawable.DrawableContainer android.graphics.drawable.DrawableInflater android.graphics.drawable.DrawableWrapper$DrawableWrapperState @@ -2497,6 +2503,7 @@ android.graphics.drawable.shapes.RectShape android.graphics.drawable.shapes.RoundRectShape android.graphics.drawable.shapes.Shape android.graphics.fonts.Font$Builder +android.graphics.fonts.Font$NoImagePreloadHolder android.graphics.fonts.Font android.graphics.fonts.FontCustomizationParser$Result android.graphics.fonts.FontCustomizationParser @@ -2515,7 +2522,6 @@ android.graphics.text.LineBreakConfig$Builder android.graphics.text.LineBreakConfig android.graphics.text.LineBreaker$Builder android.graphics.text.LineBreaker$ParagraphConstraints -android.graphics.text.LineBreaker$Result-IA android.graphics.text.LineBreaker$Result android.graphics.text.LineBreaker-IA android.graphics.text.LineBreaker @@ -2649,7 +2655,6 @@ android.hardware.camera2.CameraCharacteristics$5 android.hardware.camera2.CameraCharacteristics$6 android.hardware.camera2.CameraCharacteristics$7 android.hardware.camera2.CameraCharacteristics$8 -android.hardware.camera2.CameraCharacteristics$9 android.hardware.camera2.CameraCharacteristics$Key android.hardware.camera2.CameraCharacteristics android.hardware.camera2.CameraDevice$StateCallback @@ -2669,18 +2674,17 @@ android.hardware.camera2.CameraMetadata android.hardware.camera2.CameraOfflineSession$CameraOfflineSessionCallback android.hardware.camera2.CaptureRequest$1 android.hardware.camera2.CaptureRequest$2 -android.hardware.camera2.CaptureRequest$3 android.hardware.camera2.CaptureRequest$Key android.hardware.camera2.CaptureRequest android.hardware.camera2.CaptureResult$1 android.hardware.camera2.CaptureResult$2 android.hardware.camera2.CaptureResult$3 -android.hardware.camera2.CaptureResult$4 android.hardware.camera2.CaptureResult$Key android.hardware.camera2.CaptureResult android.hardware.camera2.DngCreator android.hardware.camera2.TotalCaptureResult android.hardware.camera2.extension.ICaptureProcessorImpl +android.hardware.camera2.impl.CameraDeviceImpl$1 android.hardware.camera2.impl.CameraDeviceImpl$CameraHandlerExecutor android.hardware.camera2.impl.CameraDeviceImpl android.hardware.camera2.impl.CameraExtensionJpegProcessor @@ -2815,6 +2819,7 @@ android.hardware.contexthub.V1_0.MemRange android.hardware.contexthub.V1_0.NanoAppBinary android.hardware.contexthub.V1_0.PhysicalSensor android.hardware.contexthub.V1_1.Setting +android.hardware.devicestate.DeviceState$Configuration$1 android.hardware.devicestate.DeviceState$Configuration android.hardware.devicestate.DeviceState android.hardware.devicestate.DeviceStateInfo$1 @@ -2826,8 +2831,8 @@ android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1 android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2 android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateCallbackWrapper -android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateManagerCallback-IA android.hardware.devicestate.DeviceStateManagerGlobal$DeviceStateManagerCallback +android.hardware.devicestate.DeviceStateManagerGlobal-IA android.hardware.devicestate.DeviceStateManagerGlobal android.hardware.devicestate.IDeviceStateManager$Stub$Proxy android.hardware.devicestate.IDeviceStateManager$Stub @@ -2862,13 +2867,12 @@ android.hardware.display.DisplayManager$$ExternalSyntheticLambda0 android.hardware.display.DisplayManager$$ExternalSyntheticLambda1 android.hardware.display.DisplayManager$$ExternalSyntheticLambda2 android.hardware.display.DisplayManager$DisplayListener -android.hardware.display.DisplayManager$WeakDisplayCache-IA android.hardware.display.DisplayManager$WeakDisplayCache +android.hardware.display.DisplayManager-IA android.hardware.display.DisplayManager android.hardware.display.DisplayManagerGlobal$1 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate -android.hardware.display.DisplayManagerGlobal$DisplayManagerCallback-IA android.hardware.display.DisplayManagerGlobal android.hardware.display.DisplayManagerInternal$DisplayPowerCallbacks android.hardware.display.DisplayManagerInternal$DisplayPowerRequest @@ -2974,9 +2978,9 @@ android.hardware.input.InputDeviceIdentifier android.hardware.input.InputManager$InputDeviceListener android.hardware.input.InputManager android.hardware.input.InputManagerGlobal$InputDeviceListenerDelegate -android.hardware.input.InputManagerGlobal$InputDevicesChangedListener-IA android.hardware.input.InputManagerGlobal$InputDevicesChangedListener android.hardware.input.InputManagerGlobal$OnTabletModeChangedListenerDelegate +android.hardware.input.InputManagerGlobal-IA android.hardware.input.InputManagerGlobal android.hardware.input.InputSettings android.hardware.input.KeyboardLayout$1 @@ -3486,11 +3490,11 @@ android.icu.impl.ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo$VariantSy android.icu.impl.ICUCurrencyDisplayInfoProvider$ICUCurrencyDisplayInfo android.icu.impl.ICUCurrencyDisplayInfoProvider android.icu.impl.ICUCurrencyMetaInfo$Collector -android.icu.impl.ICUCurrencyMetaInfo$CurrencyCollector-IA android.icu.impl.ICUCurrencyMetaInfo$CurrencyCollector android.icu.impl.ICUCurrencyMetaInfo$InfoCollector android.icu.impl.ICUCurrencyMetaInfo$RegionCollector android.icu.impl.ICUCurrencyMetaInfo$UniqueList +android.icu.impl.ICUCurrencyMetaInfo-IA android.icu.impl.ICUCurrencyMetaInfo android.icu.impl.ICUData$1 android.icu.impl.ICUData$2 @@ -3518,10 +3522,10 @@ android.icu.impl.ICUResourceBundle$4 android.icu.impl.ICUResourceBundle$5 android.icu.impl.ICUResourceBundle$AvailEntry android.icu.impl.ICUResourceBundle$AvailableLocalesSink -android.icu.impl.ICUResourceBundle$Loader-IA android.icu.impl.ICUResourceBundle$Loader android.icu.impl.ICUResourceBundle$OpenType android.icu.impl.ICUResourceBundle$WholeBundle +android.icu.impl.ICUResourceBundle-IA android.icu.impl.ICUResourceBundle android.icu.impl.ICUResourceBundleImpl$ResourceArray android.icu.impl.ICUResourceBundleImpl$ResourceBinary @@ -3656,10 +3660,10 @@ android.icu.impl.TZDBTimeZoneNames$TZDBNames android.icu.impl.TZDBTimeZoneNames android.icu.impl.TextTrieMap$CharIterator android.icu.impl.TextTrieMap$LongestMatchHandler -android.icu.impl.TextTrieMap$Node-IA android.icu.impl.TextTrieMap$Node android.icu.impl.TextTrieMap$Output android.icu.impl.TextTrieMap$ResultHandler +android.icu.impl.TextTrieMap-IA android.icu.impl.TextTrieMap android.icu.impl.TimeZoneAdapter android.icu.impl.TimeZoneGenericNames$1 @@ -3679,9 +3683,9 @@ android.icu.impl.TimeZoneNamesImpl$NameSearchHandler android.icu.impl.TimeZoneNamesImpl$TZ2MZsCache android.icu.impl.TimeZoneNamesImpl$ZNames$NameTypeIndex android.icu.impl.TimeZoneNamesImpl$ZNames -android.icu.impl.TimeZoneNamesImpl$ZNamesLoader-IA android.icu.impl.TimeZoneNamesImpl$ZNamesLoader android.icu.impl.TimeZoneNamesImpl$ZoneStringsLoader +android.icu.impl.TimeZoneNamesImpl-IA android.icu.impl.TimeZoneNamesImpl android.icu.impl.Trie$DataManipulate android.icu.impl.Trie$DefaultGetFoldingOffset @@ -4022,10 +4026,10 @@ android.icu.impl.number.MutablePatternModifier$ImmutablePatternModifier android.icu.impl.number.MutablePatternModifier android.icu.impl.number.Padder$PadPosition android.icu.impl.number.Padder -android.icu.impl.number.PatternStringParser$ParsedPatternInfo-IA android.icu.impl.number.PatternStringParser$ParsedPatternInfo android.icu.impl.number.PatternStringParser$ParsedSubpatternInfo android.icu.impl.number.PatternStringParser$ParserState +android.icu.impl.number.PatternStringParser-IA android.icu.impl.number.PatternStringParser android.icu.impl.number.PatternStringUtils$1 android.icu.impl.number.PatternStringUtils$PatternSignType @@ -4337,7 +4341,6 @@ android.icu.text.DateFormat$Field android.icu.text.DateFormat$HourCycle android.icu.text.DateFormat android.icu.text.DateFormatSymbols$1 -android.icu.text.DateFormatSymbols$AospExtendedDateFormatSymbols-IA android.icu.text.DateFormatSymbols$AospExtendedDateFormatSymbols android.icu.text.DateFormatSymbols$CalendarDataSink$AliasType android.icu.text.DateFormatSymbols$CalendarDataSink @@ -4353,25 +4356,21 @@ android.icu.text.DateIntervalFormat android.icu.text.DateIntervalInfo$DateIntervalSink android.icu.text.DateIntervalInfo$PatternInfo android.icu.text.DateIntervalInfo -android.icu.text.DateTimePatternGenerator$AppendItemFormatsSink-IA android.icu.text.DateTimePatternGenerator$AppendItemFormatsSink -android.icu.text.DateTimePatternGenerator$AppendItemNamesSink-IA android.icu.text.DateTimePatternGenerator$AppendItemNamesSink android.icu.text.DateTimePatternGenerator$AvailableFormatsSink android.icu.text.DateTimePatternGenerator$DTPGflags -android.icu.text.DateTimePatternGenerator$DateTimeMatcher-IA android.icu.text.DateTimePatternGenerator$DateTimeMatcher android.icu.text.DateTimePatternGenerator$DayPeriodAllowedHoursSink android.icu.text.DateTimePatternGenerator$DisplayWidth -android.icu.text.DateTimePatternGenerator$DistanceInfo-IA android.icu.text.DateTimePatternGenerator$DistanceInfo android.icu.text.DateTimePatternGenerator$FormatParser android.icu.text.DateTimePatternGenerator$PatternInfo android.icu.text.DateTimePatternGenerator$PatternWithMatcher android.icu.text.DateTimePatternGenerator$PatternWithSkeletonFlag -android.icu.text.DateTimePatternGenerator$SkeletonFields-IA android.icu.text.DateTimePatternGenerator$SkeletonFields android.icu.text.DateTimePatternGenerator$VariableField +android.icu.text.DateTimePatternGenerator-IA android.icu.text.DateTimePatternGenerator android.icu.text.DecimalFormat$PropertySetter android.icu.text.DecimalFormat @@ -4382,8 +4381,8 @@ android.icu.text.DecimalFormatSymbols android.icu.text.DisplayContext$Type android.icu.text.DisplayContext android.icu.text.DurationFormat -android.icu.text.Edits$Iterator-IA android.icu.text.Edits$Iterator +android.icu.text.Edits-IA android.icu.text.Edits android.icu.text.EscapeTransliterator$1 android.icu.text.EscapeTransliterator$2 @@ -4521,10 +4520,10 @@ android.icu.text.PluralRules$OrConstraint android.icu.text.PluralRules$PluralType android.icu.text.PluralRules$RangeConstraint android.icu.text.PluralRules$Rule -android.icu.text.PluralRules$RuleList-IA android.icu.text.PluralRules$RuleList android.icu.text.PluralRules$SampleType android.icu.text.PluralRules$SimpleTokenizer +android.icu.text.PluralRules-IA android.icu.text.PluralRules android.icu.text.PluralRulesSerialProxy android.icu.text.Quantifier @@ -4570,12 +4569,12 @@ android.icu.text.ReplaceableString android.icu.text.RuleBasedBreakIterator$BreakCache android.icu.text.RuleBasedBreakIterator$DictionaryCache android.icu.text.RuleBasedBreakIterator -android.icu.text.RuleBasedCollator$CollationBuffer-IA android.icu.text.RuleBasedCollator$CollationBuffer android.icu.text.RuleBasedCollator$CollationKeyByteSink android.icu.text.RuleBasedCollator$FCDUTF16NFDIterator android.icu.text.RuleBasedCollator$NFDIterator android.icu.text.RuleBasedCollator$UTF16NFDIterator +android.icu.text.RuleBasedCollator-IA android.icu.text.RuleBasedCollator android.icu.text.RuleBasedNumberFormat android.icu.text.RuleBasedTransliterator$Data @@ -4729,11 +4728,11 @@ android.icu.util.BytesTrieBuilder$BytesAsCharSequence android.icu.util.BytesTrieBuilder android.icu.util.CECalendar android.icu.util.Calendar$1 -android.icu.util.Calendar$FormatConfiguration-IA android.icu.util.Calendar$FormatConfiguration android.icu.util.Calendar$PatternData android.icu.util.Calendar$WeekData android.icu.util.Calendar$WeekDataCache +android.icu.util.Calendar-IA android.icu.util.Calendar android.icu.util.CaseInsensitiveString android.icu.util.CharsTrie$Entry @@ -4748,19 +4747,16 @@ android.icu.util.CodePointMap$RangeOption android.icu.util.CodePointMap$StringIterator android.icu.util.CodePointMap$ValueFilter android.icu.util.CodePointMap -android.icu.util.CodePointTrie$Data-IA android.icu.util.CodePointTrie$Data16 android.icu.util.CodePointTrie$Data32 android.icu.util.CodePointTrie$Data8 android.icu.util.CodePointTrie$Data android.icu.util.CodePointTrie$Fast$FastStringIterator -android.icu.util.CodePointTrie$Fast-IA android.icu.util.CodePointTrie$Fast16 android.icu.util.CodePointTrie$Fast32 android.icu.util.CodePointTrie$Fast8 android.icu.util.CodePointTrie$Fast android.icu.util.CodePointTrie$Small$SmallStringIterator -android.icu.util.CodePointTrie$Small-IA android.icu.util.CodePointTrie$Small16 android.icu.util.CodePointTrie$Small32 android.icu.util.CodePointTrie$Small8 @@ -4842,8 +4838,8 @@ android.icu.util.MeasureUnit$MeasureUnitSink android.icu.util.MeasureUnit android.icu.util.MutableCodePointTrie$1 android.icu.util.MutableCodePointTrie$AllSameBlocks -android.icu.util.MutableCodePointTrie$MixedBlocks-IA android.icu.util.MutableCodePointTrie$MixedBlocks +android.icu.util.MutableCodePointTrie-IA android.icu.util.MutableCodePointTrie android.icu.util.NoUnit android.icu.util.Output @@ -4917,6 +4913,7 @@ android.inputmethodservice.InputMethodService$Insets android.inputmethodservice.InputMethodService$SettingsObserver android.inputmethodservice.InputMethodService android.inputmethodservice.SoftInputWindow +android.internal.framework.protobuf.nano.MessageNano android.internal.hidl.base.V1_0.DebugInfo android.internal.hidl.base.V1_0.IBase android.internal.hidl.manager.V1_0.IServiceManager @@ -4951,11 +4948,14 @@ android.location.IGpsGeofenceHardware$Stub android.location.IGpsGeofenceHardware android.location.Location$$ExternalSyntheticLambda0 android.location.Location$1 -android.location.Location$BearingDistanceCache-IA android.location.Location$BearingDistanceCache +android.location.Location-IA android.location.Location android.location.LocationTime$1 android.location.LocationTime +android.location.flags.FeatureFlags +android.location.flags.FeatureFlagsImpl +android.location.flags.Flags android.media.AudioAttributes$1 android.media.AudioAttributes$Builder android.media.AudioAttributes-IA @@ -4989,22 +4989,20 @@ android.media.AudioManager$AudioPlaybackCallbackInfo android.media.AudioManager$AudioRecordingCallback android.media.AudioManager$AudioRecordingCallbackInfo android.media.AudioManager$BlockingFocusResultReceiver -android.media.AudioManager$DevRoleListeners-IA android.media.AudioManager$DevRoleListeners android.media.AudioManager$FocusRequestInfo android.media.AudioManager$NativeEventHandlerDelegate$1 android.media.AudioManager$NativeEventHandlerDelegate -android.media.AudioManager$OnAmPortUpdateListener-IA android.media.AudioManager$OnAmPortUpdateListener android.media.AudioManager$OnAudioFocusChangeListener android.media.AudioManager$OnAudioPortUpdateListener android.media.AudioManager$OnModeChangedListener android.media.AudioManager$PlaybackConfigChangeCallbackData android.media.AudioManager$RecordConfigChangeCallbackData -android.media.AudioManager$SafeWaitObject-IA android.media.AudioManager$SafeWaitObject android.media.AudioManager$ServiceEventHandlerDelegate$1 android.media.AudioManager$ServiceEventHandlerDelegate +android.media.AudioManager-IA android.media.AudioManager android.media.AudioManagerInternal$RingerModeDelegate android.media.AudioManagerInternal @@ -5160,10 +5158,9 @@ android.media.ImageWriter android.media.JetPlayer android.media.MediaCodec$$ExternalSyntheticLambda6 android.media.MediaCodec$$ExternalSyntheticLambda7 +android.media.MediaCodec$$ExternalSyntheticLambda8 android.media.MediaCodec$BufferInfo -android.media.MediaCodec$BufferMap$CodecBuffer-IA android.media.MediaCodec$BufferMap$CodecBuffer -android.media.MediaCodec$BufferMap-IA android.media.MediaCodec$BufferMap android.media.MediaCodec$Callback android.media.MediaCodec$CodecException @@ -5179,6 +5176,7 @@ android.media.MediaCodec$OutputFrame android.media.MediaCodec$ParameterDescriptor android.media.MediaCodec$PersistentSurface android.media.MediaCodec$QueueRequest +android.media.MediaCodec-IA android.media.MediaCodecInfo$AudioCapabilities android.media.MediaCodecInfo$CodecProfileLevel android.media.MediaCodecInfo$EncoderCapabilities @@ -5233,7 +5231,6 @@ android.media.MediaPlayer$2 android.media.MediaPlayer$3 android.media.MediaPlayer$6 android.media.MediaPlayer$7 -android.media.MediaPlayer$DrmInfo-IA android.media.MediaPlayer$DrmInfo android.media.MediaPlayer$EventHandler$$ExternalSyntheticLambda0 android.media.MediaPlayer$EventHandler$1 @@ -5259,6 +5256,7 @@ android.media.MediaPlayer$TimeProvider$EventHandler android.media.MediaPlayer$TimeProvider android.media.MediaPlayer$TrackInfo$1 android.media.MediaPlayer$TrackInfo +android.media.MediaPlayer-IA android.media.MediaPlayer android.media.MediaRecorder android.media.MediaRoute2Info$1 @@ -5424,13 +5422,14 @@ android.media.browse.MediaBrowser$ConnectionCallback android.media.browse.MediaBrowser$MediaItem$1 android.media.browse.MediaBrowser$MediaItem android.media.browse.MediaBrowser$MediaServiceConnection$1 -android.media.browse.MediaBrowser$MediaServiceConnection-IA android.media.browse.MediaBrowser$MediaServiceConnection android.media.browse.MediaBrowser$ServiceCallbacks android.media.browse.MediaBrowser$Subscription android.media.browse.MediaBrowser$SubscriptionCallback +android.media.browse.MediaBrowser-IA android.media.browse.MediaBrowser android.media.browse.MediaBrowserUtils +android.media.codec.Flags android.media.metrics.Event android.media.metrics.IMediaMetricsManager$Stub$Proxy android.media.metrics.IMediaMetricsManager$Stub @@ -5511,6 +5510,7 @@ android.media.session.ISessionCallback android.media.session.ISessionController$Stub$Proxy android.media.session.ISessionController$Stub android.media.session.ISessionController +android.media.session.ISessionControllerCallback$Stub$Proxy android.media.session.ISessionControllerCallback$Stub android.media.session.ISessionControllerCallback android.media.session.ISessionManager$Stub$Proxy @@ -5521,8 +5521,8 @@ android.media.session.MediaController$CallbackStub android.media.session.MediaController$MessageHandler android.media.session.MediaController$PlaybackInfo$1 android.media.session.MediaController$PlaybackInfo -android.media.session.MediaController$TransportControls-IA android.media.session.MediaController$TransportControls +android.media.session.MediaController-IA android.media.session.MediaController android.media.session.MediaSession$Callback android.media.session.MediaSession$CallbackMessageHandler @@ -5535,29 +5535,26 @@ android.media.session.MediaSession android.media.session.MediaSessionLegacyHelper android.media.session.MediaSessionManager$OnActiveSessionsChangedListener android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListener -android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListenerStub-IA android.media.session.MediaSessionManager$OnMediaKeyEventDispatchedListenerStub android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListener -android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub-IA android.media.session.MediaSessionManager$OnMediaKeyEventSessionChangedListenerStub android.media.session.MediaSessionManager$OnMediaKeyListener android.media.session.MediaSessionManager$OnMediaKeyListenerImpl android.media.session.MediaSessionManager$OnSession2TokensChangedListener android.media.session.MediaSessionManager$OnVolumeKeyLongPressListener android.media.session.MediaSessionManager$OnVolumeKeyLongPressListenerImpl -android.media.session.MediaSessionManager$RemoteSessionCallbackStub-IA android.media.session.MediaSessionManager$RemoteSessionCallbackStub android.media.session.MediaSessionManager$RemoteUserInfo android.media.session.MediaSessionManager$Session2TokensChangedWrapper android.media.session.MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0 android.media.session.MediaSessionManager$SessionsChangedWrapper$1 android.media.session.MediaSessionManager$SessionsChangedWrapper +android.media.session.MediaSessionManager-IA android.media.session.MediaSessionManager android.media.session.ParcelableListBinder android.media.session.PlaybackState$1 android.media.session.PlaybackState$Builder android.media.session.PlaybackState$CustomAction$1 -android.media.session.PlaybackState$CustomAction-IA android.media.session.PlaybackState$CustomAction android.media.session.PlaybackState-IA android.media.session.PlaybackState @@ -5624,7 +5621,6 @@ android.net.INetworkPolicyListener android.net.INetworkPolicyManager$Stub$Proxy android.net.INetworkPolicyManager$Stub android.net.INetworkPolicyManager -android.net.INetworkRecommendationProvider$Stub$Proxy android.net.INetworkRecommendationProvider$Stub android.net.INetworkRecommendationProvider android.net.INetworkScoreCache$Stub$Proxy @@ -5687,18 +5683,14 @@ android.net.TelephonyNetworkSpecifier$1 android.net.TelephonyNetworkSpecifier$Builder android.net.TelephonyNetworkSpecifier android.net.Uri$1 -android.net.Uri$AbstractHierarchicalUri-IA android.net.Uri$AbstractHierarchicalUri android.net.Uri$AbstractPart android.net.Uri$Builder -android.net.Uri$HierarchicalUri-IA android.net.Uri$NotCachedHolder -android.net.Uri$OpaqueUri-IA android.net.Uri$Part$EmptyPart android.net.Uri$Part android.net.Uri$PathPart android.net.Uri$PathSegmentsBuilder -android.net.Uri$StringUri-IA android.net.Uri-IA android.net.Uri android.net.UriCodec @@ -5827,16 +5819,99 @@ android.net.wifi.nl80211.WifiNl80211Manager$ScanEventHandler android.net.wifi.nl80211.WifiNl80211Manager$SignalPollResult android.net.wifi.nl80211.WifiNl80211Manager android.net.wifi.sharedconnectivity.app.SharedConnectivityManager +android.nfc.IAppCallback$Stub +android.nfc.IAppCallback +android.nfc.INfcAdapter$Stub +android.nfc.INfcAdapter +android.nfc.INfcAdapterExtras +android.nfc.INfcCardEmulation +android.nfc.INfcControllerAlwaysOnListener$Stub +android.nfc.INfcControllerAlwaysOnListener +android.nfc.INfcDta +android.nfc.INfcFCardEmulation +android.nfc.INfcTag +android.nfc.INfcUnlockHandler$Stub +android.nfc.INfcUnlockHandler +android.nfc.INfcVendorNciCallback$Stub +android.nfc.INfcVendorNciCallback +android.nfc.INfcWlcStateListener$Stub +android.nfc.INfcWlcStateListener +android.nfc.ITagRemovedCallback$Stub +android.nfc.ITagRemovedCallback +android.nfc.NdefMessage +android.nfc.NfcActivityManager +android.nfc.NfcAdapter$$ExternalSyntheticLambda0 +android.nfc.NfcAdapter$$ExternalSyntheticLambda10 +android.nfc.NfcAdapter$$ExternalSyntheticLambda11 +android.nfc.NfcAdapter$$ExternalSyntheticLambda12 +android.nfc.NfcAdapter$$ExternalSyntheticLambda13 +android.nfc.NfcAdapter$$ExternalSyntheticLambda14 +android.nfc.NfcAdapter$$ExternalSyntheticLambda15 +android.nfc.NfcAdapter$$ExternalSyntheticLambda16 +android.nfc.NfcAdapter$$ExternalSyntheticLambda17 +android.nfc.NfcAdapter$$ExternalSyntheticLambda18 +android.nfc.NfcAdapter$$ExternalSyntheticLambda19 +android.nfc.NfcAdapter$$ExternalSyntheticLambda1 +android.nfc.NfcAdapter$$ExternalSyntheticLambda20 +android.nfc.NfcAdapter$$ExternalSyntheticLambda21 +android.nfc.NfcAdapter$$ExternalSyntheticLambda22 +android.nfc.NfcAdapter$$ExternalSyntheticLambda23 +android.nfc.NfcAdapter$$ExternalSyntheticLambda24 +android.nfc.NfcAdapter$$ExternalSyntheticLambda25 +android.nfc.NfcAdapter$$ExternalSyntheticLambda26 +android.nfc.NfcAdapter$$ExternalSyntheticLambda27 +android.nfc.NfcAdapter$$ExternalSyntheticLambda28 +android.nfc.NfcAdapter$$ExternalSyntheticLambda29 +android.nfc.NfcAdapter$$ExternalSyntheticLambda2 +android.nfc.NfcAdapter$$ExternalSyntheticLambda30 +android.nfc.NfcAdapter$$ExternalSyntheticLambda31 +android.nfc.NfcAdapter$$ExternalSyntheticLambda32 +android.nfc.NfcAdapter$$ExternalSyntheticLambda33 +android.nfc.NfcAdapter$$ExternalSyntheticLambda34 +android.nfc.NfcAdapter$$ExternalSyntheticLambda35 +android.nfc.NfcAdapter$$ExternalSyntheticLambda36 +android.nfc.NfcAdapter$$ExternalSyntheticLambda37 +android.nfc.NfcAdapter$$ExternalSyntheticLambda38 +android.nfc.NfcAdapter$$ExternalSyntheticLambda39 +android.nfc.NfcAdapter$$ExternalSyntheticLambda3 +android.nfc.NfcAdapter$$ExternalSyntheticLambda4 +android.nfc.NfcAdapter$$ExternalSyntheticLambda5 +android.nfc.NfcAdapter$$ExternalSyntheticLambda6 +android.nfc.NfcAdapter$$ExternalSyntheticLambda7 +android.nfc.NfcAdapter$$ExternalSyntheticLambda8 +android.nfc.NfcAdapter$$ExternalSyntheticLambda9 +android.nfc.NfcAdapter$1 +android.nfc.NfcAdapter$2 +android.nfc.NfcAdapter$ControllerAlwaysOnListener +android.nfc.NfcAdapter$CreateBeamUrisCallback +android.nfc.NfcAdapter$CreateNdefMessageCallback +android.nfc.NfcAdapter$NfcUnlockHandler +android.nfc.NfcAdapter$NfcVendorNciCallback +android.nfc.NfcAdapter$OnNdefPushCompleteCallback +android.nfc.NfcAdapter$OnTagRemovedListener +android.nfc.NfcAdapter$ReaderCallback +android.nfc.NfcAdapter$ServiceCall +android.nfc.NfcAdapter$ServiceCallReturn +android.nfc.NfcAdapter$WlcStateListener android.nfc.NfcAdapter +android.nfc.NfcAntennaInfo +android.nfc.NfcControllerAlwaysOnListener android.nfc.NfcFrameworkInitializer$$ExternalSyntheticLambda0 android.nfc.NfcFrameworkInitializer android.nfc.NfcManager +android.nfc.NfcOemExtension android.nfc.NfcServiceManager$ServiceRegisterer android.nfc.NfcServiceManager +android.nfc.NfcVendorNciCallbackListener +android.nfc.NfcWlcStateListener +android.nfc.Tag +android.nfc.TechListParcel +android.nfc.WlcListenerDeviceInfo android.nfc.cardemulation.AidGroup$1 android.nfc.cardemulation.AidGroup android.nfc.cardemulation.ApduServiceInfo$1 android.nfc.cardemulation.ApduServiceInfo +android.nfc.cardemulation.PollingFrame android.opengl.EGL14 android.opengl.EGL15 android.opengl.EGLConfig @@ -5887,8 +5962,8 @@ android.os.AsyncTask$InternalHandler android.os.AsyncTask$SerialExecutor$1 android.os.AsyncTask$SerialExecutor android.os.AsyncTask$Status -android.os.AsyncTask$WorkerRunnable-IA android.os.AsyncTask$WorkerRunnable +android.os.AsyncTask-IA android.os.AsyncTask android.os.BadParcelableException android.os.BadTypeParcelableException @@ -5956,8 +6031,8 @@ android.os.Build android.os.Bundle$1 android.os.Bundle android.os.CancellationSignal$OnCancelListener -android.os.CancellationSignal$Transport-IA android.os.CancellationSignal$Transport +android.os.CancellationSignal-IA android.os.CancellationSignal android.os.CarrierAssociatedAppEntry$1 android.os.CarrierAssociatedAppEntry @@ -5983,8 +6058,8 @@ android.os.DdmSyncState android.os.DeadObjectException android.os.DeadSystemException android.os.Debug$MemoryInfo$1 -android.os.Debug$MemoryInfo-IA android.os.Debug$MemoryInfo +android.os.Debug-IA android.os.Debug android.os.DeviceIdleManager android.os.DropBoxManager$Entry$1 @@ -6018,8 +6093,8 @@ android.os.GraphicsEnvironment$1 android.os.GraphicsEnvironment android.os.Handler$BlockingRunnable android.os.Handler$Callback -android.os.Handler$MessengerImpl-IA android.os.Handler$MessengerImpl +android.os.Handler-IA android.os.Handler android.os.HandlerExecutor android.os.HandlerThread @@ -6037,6 +6112,7 @@ android.os.IBatteryPropertiesRegistrar$Stub$Proxy android.os.IBatteryPropertiesRegistrar$Stub android.os.IBatteryPropertiesRegistrar android.os.IBinder$DeathRecipient +android.os.IBinder$FrozenStateChangeCallback android.os.IBinder android.os.IBinderCallback android.os.ICancellationSignal$Stub$Proxy @@ -6165,6 +6241,7 @@ android.os.IWakeLockCallback android.os.IncidentManager$IncidentReport$1 android.os.IncidentManager$IncidentReport android.os.IncidentManager +android.os.IpcDataCache$1 android.os.IpcDataCache$Config android.os.IpcDataCache$QueryHandler android.os.IpcDataCache$RemoteCall @@ -6259,7 +6336,6 @@ android.os.RemoteCallback$2 android.os.RemoteCallback$3 android.os.RemoteCallback$OnResultListener android.os.RemoteCallback -android.os.RemoteCallbackList$Callback android.os.RemoteCallbackList android.os.RemoteException android.os.ResultReceiver$1 @@ -6268,17 +6344,16 @@ android.os.ResultReceiver$MyRunnable android.os.ResultReceiver android.os.SELinux android.os.SecurityStateManager +android.os.Service$1 +android.os.Service android.os.ServiceManager$ServiceNotFoundException android.os.ServiceManager android.os.ServiceManagerNative android.os.ServiceManagerProxy android.os.ServiceSpecificException android.os.SharedMemory$1 -android.os.SharedMemory$Closer-IA android.os.SharedMemory$Closer -android.os.SharedMemory$MemoryRegistration-IA android.os.SharedMemory$MemoryRegistration -android.os.SharedMemory$Unmapper-IA android.os.SharedMemory$Unmapper android.os.SharedMemory-IA android.os.SharedMemory @@ -6304,33 +6379,29 @@ android.os.StrictMode$9 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1 android.os.StrictMode$AndroidBlockGuardPolicy -android.os.StrictMode$AndroidCloseGuardReporter-IA android.os.StrictMode$AndroidCloseGuardReporter android.os.StrictMode$InstanceTracker android.os.StrictMode$OnThreadViolationListener android.os.StrictMode$OnVmViolationListener android.os.StrictMode$Span android.os.StrictMode$ThreadPolicy$Builder -android.os.StrictMode$ThreadPolicy-IA android.os.StrictMode$ThreadPolicy -android.os.StrictMode$ThreadSpanState-IA android.os.StrictMode$ThreadSpanState -android.os.StrictMode$UnsafeIntentStrictModeCallback-IA android.os.StrictMode$UnsafeIntentStrictModeCallback android.os.StrictMode$ViolationInfo$1 android.os.StrictMode$ViolationInfo android.os.StrictMode$ViolationLogger android.os.StrictMode$VmPolicy$Builder -android.os.StrictMode$VmPolicy-IA android.os.StrictMode$VmPolicy +android.os.StrictMode-IA android.os.StrictMode android.os.SynchronousResultReceiver$Result android.os.SynchronousResultReceiver android.os.SystemClock$2 android.os.SystemClock android.os.SystemConfigManager -android.os.SystemProperties$Handle-IA android.os.SystemProperties$Handle +android.os.SystemProperties-IA android.os.SystemProperties android.os.SystemService$1 android.os.SystemService$State @@ -6366,9 +6437,6 @@ android.os.UpdateLock android.os.UserHandle$1 android.os.UserHandle android.os.UserManager$1 -android.os.UserManager$2 -android.os.UserManager$3 -android.os.UserManager$4 android.os.UserManager$EnforcingUser$1 android.os.UserManager$EnforcingUser android.os.UserManager$UserOperationException @@ -6446,7 +6514,6 @@ android.os.storage.IStorageShutdownObserver android.os.storage.OnObbStateChangeListener android.os.storage.StorageEventListener android.os.storage.StorageManager$1 -android.os.storage.StorageManager$ObbActionListener-IA android.os.storage.StorageManager$ObbActionListener android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda2 android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda3 @@ -6455,6 +6522,7 @@ android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheti android.os.storage.StorageManager$StorageEventListenerDelegate$$ExternalSyntheticLambda6 android.os.storage.StorageManager$StorageEventListenerDelegate android.os.storage.StorageManager$StorageVolumeCallback +android.os.storage.StorageManager-IA android.os.storage.StorageManager android.os.storage.StorageManagerInternal android.os.storage.StorageVolume$1 @@ -6523,8 +6591,8 @@ android.permission.PermissionManager$2 android.permission.PermissionManager$OnPermissionsChangeListenerDelegate android.permission.PermissionManager$PackageNamePermissionQuery android.permission.PermissionManager$PermissionQuery -android.permission.PermissionManager$SplitPermissionInfo-IA android.permission.PermissionManager$SplitPermissionInfo +android.permission.PermissionManager-IA android.permission.PermissionManagerInternal android.preference.DialogPreference android.preference.GenericInflater$Parent @@ -6840,12 +6908,11 @@ android.security.keystore.recovery.WrappedApplicationKey$1 android.security.keystore.recovery.WrappedApplicationKey$Builder android.security.keystore.recovery.WrappedApplicationKey android.security.keystore.recovery.X509CertificateParsingUtils -android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$AdditionalAuthenticationDataStream -android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$BufferAllOutputUntilDoFinalStreamer android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$GCM$NoPadding android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi$GCM +android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi-IA android.security.keystore2.AndroidKeyStoreAuthenticatedAESCipherSpi android.security.keystore2.AndroidKeyStoreBCWorkaroundProvider android.security.keystore2.AndroidKeyStoreCipherSpiBase @@ -7057,18 +7124,16 @@ android.service.media.MediaBrowserService$BrowserRoot android.service.media.MediaBrowserService$ConnectionRecord android.service.media.MediaBrowserService$Result android.service.media.MediaBrowserService$ServiceBinder$$ExternalSyntheticLambda1 -android.service.media.MediaBrowserService$ServiceBinder-IA android.service.media.MediaBrowserService$ServiceBinder -android.service.media.MediaBrowserService$ServiceState-IA android.service.media.MediaBrowserService$ServiceState +android.service.media.MediaBrowserService-IA android.service.media.MediaBrowserService android.service.notification.Adjustment$1 android.service.notification.Adjustment android.service.notification.Condition$1 android.service.notification.Condition -android.service.notification.ConditionProviderService$H-IA android.service.notification.ConditionProviderService$H -android.service.notification.ConditionProviderService$Provider-IA +android.service.notification.ConditionProviderService-IA android.service.notification.ConditionProviderService android.service.notification.IConditionProvider$Stub android.service.notification.IConditionProvider @@ -7085,8 +7150,8 @@ android.service.notification.NotificationListenerFilter android.service.notification.NotificationListenerService$MyHandler android.service.notification.NotificationListenerService$Ranking android.service.notification.NotificationListenerService$RankingMap$1 -android.service.notification.NotificationListenerService$RankingMap-IA android.service.notification.NotificationListenerService$RankingMap +android.service.notification.NotificationListenerService-IA android.service.notification.NotificationListenerService android.service.notification.NotificationRankingUpdate$1 android.service.notification.NotificationRankingUpdate @@ -7216,14 +7281,11 @@ android.speech.tts.TextToSpeech$$ExternalSyntheticLambda17 android.speech.tts.TextToSpeech$$ExternalSyntheticLambda1 android.speech.tts.TextToSpeech$Action android.speech.tts.TextToSpeech$Connection$1 -android.speech.tts.TextToSpeech$Connection$SetupConnectionAsyncTask-IA -android.speech.tts.TextToSpeech$Connection-IA -android.speech.tts.TextToSpeech$DirectConnection-IA android.speech.tts.TextToSpeech$DirectConnection android.speech.tts.TextToSpeech$EngineInfo android.speech.tts.TextToSpeech$OnInitListener -android.speech.tts.TextToSpeech$SystemConnection-IA android.speech.tts.TextToSpeech$SystemConnection +android.speech.tts.TextToSpeech-IA android.speech.tts.TtsEngines$EngineInfoComparator android.speech.tts.TtsEngines android.speech.tts.UtteranceProgressListener @@ -7236,7 +7298,6 @@ android.sysprop.CryptoProperties android.sysprop.DeviceProperties android.sysprop.DisplayProperties android.sysprop.HdmiProperties -android.sysprop.InitProperties android.sysprop.InputProperties android.sysprop.MediaProperties android.sysprop.PowerProperties @@ -7256,6 +7317,7 @@ android.sysprop.TelephonyProperties$$ExternalSyntheticLambda7 android.sysprop.TelephonyProperties$$ExternalSyntheticLambda8 android.sysprop.TelephonyProperties$$ExternalSyntheticLambda9 android.sysprop.TelephonyProperties +android.sysprop.ViewProperties android.sysprop.VndkProperties android.system.ErrnoException android.system.GaiException @@ -7282,6 +7344,7 @@ android.system.StructTimespec android.system.StructTimeval android.system.StructUcred android.system.StructUtsname +android.system.SystemCleaner android.system.UnixSocketAddress android.system.VmSocketAddress android.system.keystore2.Authorization$1 @@ -7522,9 +7585,9 @@ android.telephony.JapanesePhoneNumberFormatter android.telephony.LinkCapacityEstimate$1 android.telephony.LinkCapacityEstimate android.telephony.LocationAccessPolicy$LocationPermissionQuery$Builder -android.telephony.LocationAccessPolicy$LocationPermissionQuery-IA android.telephony.LocationAccessPolicy$LocationPermissionQuery android.telephony.LocationAccessPolicy$LocationPermissionResult +android.telephony.LocationAccessPolicy-IA android.telephony.LocationAccessPolicy android.telephony.LteVopsSupportInfo$1 android.telephony.LteVopsSupportInfo-IA @@ -7758,6 +7821,7 @@ android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda0 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda1 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda2 android.telephony.TelephonyRegistryManager$1$$ExternalSyntheticLambda0 +android.telephony.TelephonyRegistryManager$1 android.telephony.TelephonyRegistryManager$2 android.telephony.TelephonyRegistryManager$3 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0 @@ -8082,33 +8146,23 @@ android.text.Html$TagHandler android.text.Html android.text.HtmlToSpannedConverter$Alignment android.text.HtmlToSpannedConverter$Background -android.text.HtmlToSpannedConverter$Big-IA android.text.HtmlToSpannedConverter$Big -android.text.HtmlToSpannedConverter$Blockquote-IA android.text.HtmlToSpannedConverter$Blockquote -android.text.HtmlToSpannedConverter$Bold-IA android.text.HtmlToSpannedConverter$Bold -android.text.HtmlToSpannedConverter$Bullet-IA android.text.HtmlToSpannedConverter$Bullet android.text.HtmlToSpannedConverter$Font android.text.HtmlToSpannedConverter$Foreground android.text.HtmlToSpannedConverter$Heading android.text.HtmlToSpannedConverter$Href -android.text.HtmlToSpannedConverter$Italic-IA android.text.HtmlToSpannedConverter$Italic -android.text.HtmlToSpannedConverter$Monospace-IA android.text.HtmlToSpannedConverter$Monospace android.text.HtmlToSpannedConverter$Newline -android.text.HtmlToSpannedConverter$Small-IA android.text.HtmlToSpannedConverter$Small -android.text.HtmlToSpannedConverter$Strikethrough-IA android.text.HtmlToSpannedConverter$Strikethrough -android.text.HtmlToSpannedConverter$Sub-IA android.text.HtmlToSpannedConverter$Sub -android.text.HtmlToSpannedConverter$Super-IA android.text.HtmlToSpannedConverter$Super -android.text.HtmlToSpannedConverter$Underline-IA android.text.HtmlToSpannedConverter$Underline +android.text.HtmlToSpannedConverter-IA android.text.HtmlToSpannedConverter android.text.Hyphenator android.text.InputFilter$LengthFilter @@ -8144,6 +8198,7 @@ android.text.Selection$MemoryTextWatcher android.text.Selection$PositionIterator android.text.Selection$START android.text.Selection +android.text.SpanColors android.text.SpanSet android.text.SpanWatcher android.text.Spannable$Factory @@ -8165,9 +8220,9 @@ android.text.TextDirectionHeuristics$TextDirectionHeuristicImpl android.text.TextDirectionHeuristics$TextDirectionHeuristicInternal android.text.TextDirectionHeuristics$TextDirectionHeuristicLocale android.text.TextDirectionHeuristics -android.text.TextLine$DecorationInfo-IA android.text.TextLine$DecorationInfo android.text.TextLine$LineInfo +android.text.TextLine-IA android.text.TextLine android.text.TextPaint android.text.TextShaper$GlyphsConsumer @@ -8306,6 +8361,7 @@ android.timezone.TelephonyLookup android.timezone.TelephonyNetwork android.timezone.TelephonyNetworkFinder android.timezone.TimeZoneFinder +android.tracing.Flags android.tracing.perfetto.CreateIncrementalStateArgs android.tracing.perfetto.CreateTlsStateArgs android.tracing.perfetto.DataSource @@ -8376,8 +8432,8 @@ android.transition.TransitionValues android.transition.TransitionValuesMaps android.transition.Visibility$1 android.transition.Visibility$DisappearListener -android.transition.Visibility$VisibilityInfo-IA android.transition.Visibility$VisibilityInfo +android.transition.Visibility-IA android.transition.Visibility android.transition.VisibilityPropagation android.transparency.BinaryTransparencyManager @@ -8427,6 +8483,7 @@ android.util.FeatureFlagUtils android.util.FloatProperty android.util.Half android.util.IconDrawableFactory +android.util.IndentingPrintWriter android.util.IntArray android.util.IntProperty android.util.JsonReader$1 @@ -8490,6 +8547,7 @@ android.util.RecurrenceRule$NonrecurringIterator android.util.RecurrenceRule android.util.ReflectiveProperty android.util.RotationUtils +android.util.SequenceUtils android.util.Singleton android.util.Size android.util.SizeF$1 @@ -8590,9 +8648,7 @@ android.view.Choreographer$1 android.view.Choreographer$2 android.view.Choreographer$3 android.view.Choreographer$4 -android.view.Choreographer$CallbackQueue-IA android.view.Choreographer$CallbackQueue -android.view.Choreographer$CallbackRecord-IA android.view.Choreographer$CallbackRecord android.view.Choreographer$FrameCallback android.view.Choreographer$FrameData @@ -8611,21 +8667,19 @@ android.view.CrossWindowBlurListeners android.view.CutoutSpecification$Parser android.view.CutoutSpecification android.view.Display$HdrCapabilities$1 -android.view.Display$HdrCapabilities-IA android.view.Display$HdrCapabilities android.view.Display$HdrSdrRatioListenerWrapper android.view.Display$Mode$1 -android.view.Display$Mode-IA android.view.Display$Mode +android.view.Display-IA android.view.Display android.view.DisplayAddress$Network$1 android.view.DisplayAddress$Network android.view.DisplayAddress$Physical$1 -android.view.DisplayAddress$Physical-IA android.view.DisplayAddress$Physical +android.view.DisplayAddress-IA android.view.DisplayAddress android.view.DisplayAdjustments -android.view.DisplayCutout$Bounds-IA android.view.DisplayCutout$Bounds android.view.DisplayCutout$CutoutPathParserInfo android.view.DisplayCutout$ParcelableWrapper$1 @@ -8670,8 +8724,8 @@ android.view.HandlerActionQueue$HandlerAction android.view.HandlerActionQueue android.view.HandwritingInitiator$HandwritableViewInfo android.view.HandwritingInitiator$HandwritingAreaTracker -android.view.HandwritingInitiator$State-IA android.view.HandwritingInitiator$State +android.view.HandwritingInitiator-IA android.view.HandwritingInitiator android.view.HapticScrollFeedbackProvider android.view.IAppTransitionAnimationSpecsFuture$Stub$Proxy @@ -8706,12 +8760,6 @@ android.view.IOnKeyguardExitResult$Stub android.view.IOnKeyguardExitResult android.view.IPinnedTaskListener$Stub android.view.IPinnedTaskListener -android.view.IRecentsAnimationController$Stub$Proxy -android.view.IRecentsAnimationController$Stub -android.view.IRecentsAnimationController -android.view.IRecentsAnimationRunner$Stub$Proxy -android.view.IRecentsAnimationRunner$Stub -android.view.IRecentsAnimationRunner android.view.IRemoteAnimationFinishedCallback$Stub$Proxy android.view.IRemoteAnimationFinishedCallback$Stub android.view.IRemoteAnimationFinishedCallback @@ -8763,7 +8811,6 @@ android.view.InputApplicationHandle android.view.InputChannel$1 android.view.InputChannel android.view.InputDevice$1 -android.view.InputDevice$MotionRange-IA android.view.InputDevice$MotionRange android.view.InputDevice$ViewBehavior android.view.InputDevice-IA @@ -8785,10 +8832,14 @@ android.view.InputWindowHandle android.view.InsetsAnimationControlCallbacks android.view.InsetsAnimationControlImpl$$ExternalSyntheticLambda0 android.view.InsetsAnimationControlImpl +android.view.InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0 +android.view.InsetsAnimationControlRunner$SurfaceParamsApplier android.view.InsetsAnimationControlRunner +android.view.InsetsAnimationSpec android.view.InsetsAnimationThread android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda0 android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda1 +android.view.InsetsAnimationThreadControlRunner$$ExternalSyntheticLambda2 android.view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda0 android.view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1 android.view.InsetsAnimationThreadControlRunner$1 @@ -8796,7 +8847,6 @@ android.view.InsetsAnimationThreadControlRunner android.view.InsetsController$$ExternalSyntheticLambda0 android.view.InsetsController$$ExternalSyntheticLambda10 android.view.InsetsController$$ExternalSyntheticLambda11 -android.view.InsetsController$$ExternalSyntheticLambda12 android.view.InsetsController$$ExternalSyntheticLambda1 android.view.InsetsController$$ExternalSyntheticLambda2 android.view.InsetsController$$ExternalSyntheticLambda3 @@ -8911,10 +8961,10 @@ android.view.SearchEvent android.view.SoundEffectConstants android.view.SubMenu android.view.Surface$1 -android.view.Surface$CompatibleCanvas-IA android.view.Surface$CompatibleCanvas android.view.Surface$HwuiContext android.view.Surface$OutOfResourcesException +android.view.Surface-IA android.view.Surface android.view.SurfaceControl$1 android.view.SurfaceControl$Builder @@ -8931,6 +8981,7 @@ android.view.SurfaceControl$RefreshRateRange$1 android.view.SurfaceControl$RefreshRateRange android.view.SurfaceControl$RefreshRateRanges android.view.SurfaceControl$StaticDisplayInfo +android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda1 android.view.SurfaceControl$Transaction$1 android.view.SurfaceControl$Transaction$2 android.view.SurfaceControl$Transaction @@ -8941,9 +8992,7 @@ android.view.SurfaceControl$TrustedPresentationThresholds android.view.SurfaceControl-IA android.view.SurfaceControl android.view.SurfaceControlHdrLayerInfoListener -android.view.SurfaceControlRegistry$DefaultReporter-IA android.view.SurfaceControlRegistry$DefaultReporter -android.view.SurfaceControlRegistry$NoOpRegistry-IA android.view.SurfaceControlRegistry$NoOpRegistry android.view.SurfaceControlRegistry$Reporter android.view.SurfaceControlRegistry-IA @@ -8961,14 +9010,14 @@ android.view.SurfaceView$$ExternalSyntheticLambda3 android.view.SurfaceView$$ExternalSyntheticLambda4 android.view.SurfaceView$$ExternalSyntheticLambda5 android.view.SurfaceView$1 -android.view.SurfaceView$2 +android.view.SurfaceView$SurfaceControlViewHostParent android.view.SurfaceView$SurfaceViewPositionUpdateListener -android.view.SurfaceView$SyncBufferTransactionCallback-IA android.view.SurfaceView$SyncBufferTransactionCallback +android.view.SurfaceView-IA android.view.SurfaceView android.view.SyncRtSurfaceTransactionApplier$SurfaceParams$Builder -android.view.SyncRtSurfaceTransactionApplier$SurfaceParams-IA android.view.SyncRtSurfaceTransactionApplier$SurfaceParams +android.view.SyncRtSurfaceTransactionApplier-IA android.view.SyncRtSurfaceTransactionApplier android.view.TextureView$$ExternalSyntheticLambda0 android.view.TextureView$$ExternalSyntheticLambda1 @@ -8977,8 +9026,8 @@ android.view.TextureView android.view.ThreadedRenderer$1$$ExternalSyntheticLambda0 android.view.ThreadedRenderer$1 android.view.ThreadedRenderer$DrawCallbacks -android.view.ThreadedRenderer$WebViewOverlayProvider-IA android.view.ThreadedRenderer$WebViewOverlayProvider +android.view.ThreadedRenderer-IA android.view.ThreadedRenderer android.view.TouchDelegate android.view.TunnelModeEnabledListener @@ -9021,13 +9070,10 @@ android.view.View$AttachInfo$InvalidateInfo android.view.View$AttachInfo android.view.View$BaseSavedState$1 android.view.View$BaseSavedState -android.view.View$CheckForLongPress-IA android.view.View$CheckForLongPress -android.view.View$CheckForTap-IA android.view.View$CheckForTap android.view.View$DeclaredOnClickListener android.view.View$DragShadowBuilder -android.view.View$ForegroundInfo-IA android.view.View$ForegroundInfo android.view.View$ListenerInfo android.view.View$MatchIdPredicate @@ -9047,19 +9093,16 @@ android.view.View$OnLongClickListener android.view.View$OnScrollChangeListener android.view.View$OnSystemUiVisibilityChangeListener android.view.View$OnTouchListener -android.view.View$PerformClick-IA android.view.View$PerformClick android.view.View$ScrollabilityCache android.view.View$SendAccessibilityEventThrottle android.view.View$SendViewScrolledAccessibilityEvent android.view.View$TintInfo -android.view.View$TooltipInfo-IA android.view.View$TooltipInfo android.view.View$TransformationInfo -android.view.View$UnsetPressedState-IA android.view.View$UnsetPressedState -android.view.View$VisibilityChangeForAutofillHandler-IA android.view.View$VisibilityChangeForAutofillHandler +android.view.View-IA android.view.View android.view.ViewAnimationHostBridge android.view.ViewAnimationUtils @@ -9097,10 +9140,10 @@ android.view.ViewParent android.view.ViewPropertyAnimator$1 android.view.ViewPropertyAnimator$2 android.view.ViewPropertyAnimator$3 -android.view.ViewPropertyAnimator$AnimatorEventListener-IA android.view.ViewPropertyAnimator$AnimatorEventListener android.view.ViewPropertyAnimator$NameValuesHolder android.view.ViewPropertyAnimator$PropertyBundle +android.view.ViewPropertyAnimator-IA android.view.ViewPropertyAnimator android.view.ViewRootImpl$$ExternalSyntheticLambda0 android.view.ViewRootImpl$$ExternalSyntheticLambda10 @@ -9121,6 +9164,8 @@ android.view.ViewRootImpl$$ExternalSyntheticLambda6 android.view.ViewRootImpl$$ExternalSyntheticLambda7 android.view.ViewRootImpl$$ExternalSyntheticLambda8 android.view.ViewRootImpl$$ExternalSyntheticLambda9 +android.view.ViewRootImpl$10 +android.view.ViewRootImpl$11 android.view.ViewRootImpl$1 android.view.ViewRootImpl$2 android.view.ViewRootImpl$3 @@ -9147,7 +9192,6 @@ android.view.ViewRootImpl$InputStage android.view.ViewRootImpl$InvalidateOnAnimationRunnable android.view.ViewRootImpl$NativePostImeInputStage android.view.ViewRootImpl$NativePreImeInputStage -android.view.ViewRootImpl$QueuedInputEvent-IA android.view.ViewRootImpl$QueuedInputEvent android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent android.view.ViewRootImpl$SurfaceChangedCallback @@ -9162,12 +9206,12 @@ android.view.ViewRootImpl$SystemUiVisibilityInfo android.view.ViewRootImpl$TakenSurfaceHolder android.view.ViewRootImpl$TrackballAxis android.view.ViewRootImpl$TraversalRunnable -android.view.ViewRootImpl$UnhandledKeyManager-IA android.view.ViewRootImpl$UnhandledKeyManager android.view.ViewRootImpl$ViewPostImeInputStage android.view.ViewRootImpl$ViewPreImeInputStage android.view.ViewRootImpl$ViewRootHandler android.view.ViewRootImpl$WindowInputEventReceiver +android.view.ViewRootImpl-IA android.view.ViewRootImpl android.view.ViewRootInsetsControllerHost android.view.ViewRootRectTracker$ViewInfo @@ -9231,12 +9275,13 @@ android.view.WindowManager android.view.WindowManagerGlobal$$ExternalSyntheticLambda0 android.view.WindowManagerGlobal$1 android.view.WindowManagerGlobal$2 -android.view.WindowManagerGlobal$TrustedPresentationListener-IA android.view.WindowManagerGlobal$TrustedPresentationListener +android.view.WindowManagerGlobal-IA android.view.WindowManagerGlobal android.view.WindowManagerPolicyConstants$PointerEventListener android.view.WindowManagerPolicyConstants android.view.WindowMetrics +android.view.WindowRelayoutResult android.view.WindowlessWindowLayout android.view.WindowlessWindowManager android.view.accessibility.AccessibilityCache$AccessibilityNodeRefresher @@ -9253,10 +9298,9 @@ android.view.accessibility.AccessibilityManager$1 android.view.accessibility.AccessibilityManager$AccessibilityPolicy android.view.accessibility.AccessibilityManager$AccessibilityServicesStateChangeListener android.view.accessibility.AccessibilityManager$AccessibilityStateChangeListener -android.view.accessibility.AccessibilityManager$HighTextContrastChangeListener -android.view.accessibility.AccessibilityManager$MyCallback-IA android.view.accessibility.AccessibilityManager$MyCallback android.view.accessibility.AccessibilityManager$TouchExplorationStateChangeListener +android.view.accessibility.AccessibilityManager-IA android.view.accessibility.AccessibilityManager android.view.accessibility.AccessibilityNodeIdManager android.view.accessibility.AccessibilityNodeInfo$1 @@ -9310,11 +9354,12 @@ android.view.animation.Animation$NoImagePreloadHolder android.view.animation.Animation android.view.animation.AnimationSet android.view.animation.AnimationUtils$1 -android.view.animation.AnimationUtils$AnimationState-IA android.view.animation.AnimationUtils$AnimationState +android.view.animation.AnimationUtils-IA android.view.animation.AnimationUtils android.view.animation.AnticipateInterpolator android.view.animation.AnticipateOvershootInterpolator +android.view.animation.BackGestureInterpolator android.view.animation.BaseInterpolator android.view.animation.BounceInterpolator android.view.animation.ClipRectAnimation @@ -9343,7 +9388,6 @@ android.view.autofill.AutofillManager$$ExternalSyntheticLambda1 android.view.autofill.AutofillManager$$ExternalSyntheticLambda2 android.view.autofill.AutofillManager$$ExternalSyntheticLambda3 android.view.autofill.AutofillManager$$ExternalSyntheticLambda4 -android.view.autofill.AutofillManager$AugmentedAutofillManagerClient-IA android.view.autofill.AutofillManager$AugmentedAutofillManagerClient android.view.autofill.AutofillManager$AutofillCallback android.view.autofill.AutofillManager$AutofillClient @@ -9354,13 +9398,15 @@ android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLa android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda16 android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda18 android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda8 -android.view.autofill.AutofillManager$AutofillManagerClient-IA +android.view.autofill.AutofillManager$AutofillManagerClient$$ExternalSyntheticLambda9 android.view.autofill.AutofillManager$AutofillManagerClient android.view.autofill.AutofillManager$CompatibilityBridge android.view.autofill.AutofillManager$TrackedViews +android.view.autofill.AutofillManager-IA android.view.autofill.AutofillManager android.view.autofill.AutofillManagerInternal android.view.autofill.AutofillPopupWindow +android.view.autofill.AutofillStateFingerprint android.view.autofill.AutofillValue$1 android.view.autofill.AutofillValue-IA android.view.autofill.AutofillValue @@ -9387,9 +9433,9 @@ android.view.contentcapture.ContentCaptureEvent$1 android.view.contentcapture.ContentCaptureEvent android.view.contentcapture.ContentCaptureHelper android.view.contentcapture.ContentCaptureManager$ContentCaptureClient -android.view.contentcapture.ContentCaptureManager$LocalDataShareAdapterResourceManager-IA android.view.contentcapture.ContentCaptureManager$LocalDataShareAdapterResourceManager android.view.contentcapture.ContentCaptureManager$StrippedContext +android.view.contentcapture.ContentCaptureManager-IA android.view.contentcapture.ContentCaptureManager android.view.contentcapture.ContentCaptureSession android.view.contentcapture.ContentCaptureSessionId$1 @@ -9410,18 +9456,13 @@ android.view.contentcapture.IContentCaptureOptionsCallback android.view.contentcapture.IDataShareWriteAdapter$Stub android.view.contentcapture.IDataShareWriteAdapter android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda0 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda10 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda11 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda12 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda13 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda1 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda2 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda3 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda4 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda5 android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda6 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda8 -android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda9 +android.view.contentcapture.MainContentCaptureSession$$ExternalSyntheticLambda7 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda0 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver$$ExternalSyntheticLambda1 android.view.contentcapture.MainContentCaptureSession$SessionStateReceiver @@ -9481,15 +9522,13 @@ android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda0 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda1 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda2 android.view.inputmethod.ImeTracker$Debug -android.view.inputmethod.ImeTracker$ImeJankTracker-IA android.view.inputmethod.ImeTracker$ImeJankTracker -android.view.inputmethod.ImeTracker$ImeLatencyTracker-IA android.view.inputmethod.ImeTracker$ImeLatencyTracker android.view.inputmethod.ImeTracker$InputMethodJankContext android.view.inputmethod.ImeTracker$InputMethodLatencyContext android.view.inputmethod.ImeTracker$Token$1 -android.view.inputmethod.ImeTracker$Token-IA android.view.inputmethod.ImeTracker$Token +android.view.inputmethod.ImeTracker-IA android.view.inputmethod.ImeTracker android.view.inputmethod.InlineSuggestionsRequest$1 android.view.inputmethod.InlineSuggestionsRequest @@ -9515,16 +9554,15 @@ android.view.inputmethod.InputMethodManager$1 android.view.inputmethod.InputMethodManager$2 android.view.inputmethod.InputMethodManager$6 android.view.inputmethod.InputMethodManager$BindState -android.view.inputmethod.InputMethodManager$DelegateImpl-IA android.view.inputmethod.InputMethodManager$DelegateImpl android.view.inputmethod.InputMethodManager$FinishedInputEventCallback android.view.inputmethod.InputMethodManager$H$$ExternalSyntheticLambda0 android.view.inputmethod.InputMethodManager$H$$ExternalSyntheticLambda1 android.view.inputmethod.InputMethodManager$H android.view.inputmethod.InputMethodManager$ImeInputEventSender -android.view.inputmethod.InputMethodManager$PendingEvent-IA android.view.inputmethod.InputMethodManager$PendingEvent android.view.inputmethod.InputMethodManager$ReportInputConnectionOpenedRunner +android.view.inputmethod.InputMethodManager-IA android.view.inputmethod.InputMethodManager android.view.inputmethod.InputMethodManagerGlobal android.view.inputmethod.InputMethodSession$EventCallback @@ -9585,7 +9623,6 @@ android.view.textclassifier.ConversationAction android.view.textclassifier.ConversationActions$1 android.view.textclassifier.ConversationActions$Message$1 android.view.textclassifier.ConversationActions$Message$Builder -android.view.textclassifier.ConversationActions$Message-IA android.view.textclassifier.ConversationActions$Message android.view.textclassifier.ConversationActions$Request$1 android.view.textclassifier.ConversationActions$Request$Builder @@ -9603,8 +9640,8 @@ android.view.textclassifier.SelectionEvent android.view.textclassifier.SelectionSessionLogger$SignatureParser android.view.textclassifier.SelectionSessionLogger android.view.textclassifier.SystemTextClassifier$BlockingCallback -android.view.textclassifier.SystemTextClassifier$ResponseReceiver-IA android.view.textclassifier.SystemTextClassifier$ResponseReceiver +android.view.textclassifier.SystemTextClassifier-IA android.view.textclassifier.SystemTextClassifier android.view.textclassifier.SystemTextClassifierMetadata$1 android.view.textclassifier.SystemTextClassifierMetadata @@ -9632,23 +9669,19 @@ android.view.textclassifier.TextClassificationSessionId android.view.textclassifier.TextClassifier$1 android.view.textclassifier.TextClassifier$EntityConfig$1 android.view.textclassifier.TextClassifier$EntityConfig$Builder -android.view.textclassifier.TextClassifier$EntityConfig-IA android.view.textclassifier.TextClassifier$EntityConfig android.view.textclassifier.TextClassifier$Utils +android.view.textclassifier.TextClassifier-IA android.view.textclassifier.TextClassifier android.view.textclassifier.TextClassifierEvent$1 android.view.textclassifier.TextClassifierEvent$Builder android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent$1 -android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent-IA android.view.textclassifier.TextClassifierEvent$ConversationActionsEvent android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent$1 -android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent-IA android.view.textclassifier.TextClassifierEvent$LanguageDetectionEvent android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent$1 -android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent-IA android.view.textclassifier.TextClassifierEvent$TextLinkifyEvent android.view.textclassifier.TextClassifierEvent$TextSelectionEvent$1 -android.view.textclassifier.TextClassifierEvent$TextSelectionEvent-IA android.view.textclassifier.TextClassifierEvent$TextSelectionEvent android.view.textclassifier.TextClassifierEvent-IA android.view.textclassifier.TextClassifierEvent @@ -9681,7 +9714,6 @@ android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl$1 android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl$SpellCheckerParams android.view.textservice.SpellCheckerSession$SpellCheckerSessionListenerImpl android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams$Builder -android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams-IA android.view.textservice.SpellCheckerSession$SpellCheckerSessionParams android.view.textservice.SpellCheckerSession android.view.textservice.SpellCheckerSubtype$1 @@ -9787,12 +9819,9 @@ android.widget.AbsListView$3 android.widget.AbsListView$4 android.widget.AbsListView$AbsPositionScroller android.widget.AbsListView$AdapterDataSetObserver -android.widget.AbsListView$CheckForKeyLongPress-IA android.widget.AbsListView$CheckForKeyLongPress android.widget.AbsListView$CheckForLongPress -android.widget.AbsListView$CheckForTap-IA android.widget.AbsListView$CheckForTap -android.widget.AbsListView$DeviceConfigChangeListener-IA android.widget.AbsListView$DeviceConfigChangeListener android.widget.AbsListView$FlingRunnable$1 android.widget.AbsListView$FlingRunnable @@ -9802,7 +9831,6 @@ android.widget.AbsListView$ListItemAccessibilityDelegate android.widget.AbsListView$MultiChoiceModeListener android.widget.AbsListView$MultiChoiceModeWrapper android.widget.AbsListView$OnScrollListener -android.widget.AbsListView$PerformClick-IA android.widget.AbsListView$PerformClick android.widget.AbsListView$PositionScroller android.widget.AbsListView$RecycleBin @@ -9810,8 +9838,8 @@ android.widget.AbsListView$RecyclerListener android.widget.AbsListView$SavedState$1 android.widget.AbsListView$SavedState android.widget.AbsListView$SelectionBoundsAdjuster -android.widget.AbsListView$WindowRunnnable-IA android.widget.AbsListView$WindowRunnnable +android.widget.AbsListView-IA android.widget.AbsListView android.widget.AbsSeekBar android.widget.AbsSpinner$RecycleBin @@ -9847,13 +9875,11 @@ android.widget.AdapterView android.widget.ArrayAdapter android.widget.AutoCompleteTextView$$ExternalSyntheticLambda0 android.widget.AutoCompleteTextView$$ExternalSyntheticLambda1 -android.widget.AutoCompleteTextView$DropDownItemClickListener-IA android.widget.AutoCompleteTextView$DropDownItemClickListener -android.widget.AutoCompleteTextView$MyWatcher-IA android.widget.AutoCompleteTextView$MyWatcher -android.widget.AutoCompleteTextView$PassThroughClickListener-IA android.widget.AutoCompleteTextView$PassThroughClickListener android.widget.AutoCompleteTextView$Validator +android.widget.AutoCompleteTextView-IA android.widget.AutoCompleteTextView android.widget.BaseAdapter android.widget.Button @@ -9881,21 +9907,16 @@ android.widget.Editor$1 android.widget.Editor$2 android.widget.Editor$3 android.widget.Editor$5 -android.widget.Editor$AccessibilitySmartActions-IA android.widget.Editor$AccessibilitySmartActions -android.widget.Editor$Blink-IA android.widget.Editor$Blink android.widget.Editor$CorrectionHighlighter -android.widget.Editor$CursorAnchorInfoNotifier-IA android.widget.Editor$CursorAnchorInfoNotifier android.widget.Editor$CursorController android.widget.Editor$EasyEditDeleteListener -android.widget.Editor$EasyEditPopupWindow-IA android.widget.Editor$EasyEditPopupWindow android.widget.Editor$EditOperation$1 android.widget.Editor$EditOperation android.widget.Editor$ErrorPopup -android.widget.Editor$HandleView-IA android.widget.Editor$HandleView android.widget.Editor$InputContentType android.widget.Editor$InputMethodState @@ -9906,24 +9927,20 @@ android.widget.Editor$InsertionPointCursorController$1 android.widget.Editor$InsertionPointCursorController android.widget.Editor$MagnifierMotionAnimator android.widget.Editor$PinnedPopupWindow -android.widget.Editor$PositionListener-IA android.widget.Editor$PositionListener -android.widget.Editor$ProcessTextIntentActionsHandler-IA android.widget.Editor$ProcessTextIntentActionsHandler android.widget.Editor$SelectionHandleView android.widget.Editor$SelectionModifierCursorController android.widget.Editor$SpanController$1 android.widget.Editor$SpanController$2 -android.widget.Editor$SpanController-IA android.widget.Editor$SpanController -android.widget.Editor$SuggestionHelper$SuggestionSpanComparator-IA android.widget.Editor$SuggestionHelper$SuggestionSpanComparator -android.widget.Editor$SuggestionHelper-IA android.widget.Editor$SuggestionHelper android.widget.Editor$SuggestionsPopupWindow android.widget.Editor$TextRenderNode android.widget.Editor$TextViewPositionListener android.widget.Editor$UndoInputFilter +android.widget.Editor-IA android.widget.Editor android.widget.EditorTouchState android.widget.FastScroller$1 @@ -9938,8 +9955,8 @@ android.widget.Filter$FilterListener android.widget.Filter$FilterResults android.widget.Filter$RequestArguments android.widget.Filter$RequestHandler -android.widget.Filter$ResultsHandler-IA android.widget.Filter$ResultsHandler +android.widget.Filter-IA android.widget.Filter android.widget.Filterable android.widget.ForwardingListener @@ -9958,15 +9975,14 @@ android.widget.GridLayout$Alignment android.widget.GridLayout$Arc android.widget.GridLayout$Assoc android.widget.GridLayout$Axis$1 -android.widget.GridLayout$Axis-IA android.widget.GridLayout$Axis android.widget.GridLayout$Bounds android.widget.GridLayout$Interval android.widget.GridLayout$LayoutParams android.widget.GridLayout$MutableInt -android.widget.GridLayout$PackedMap-IA android.widget.GridLayout$PackedMap android.widget.GridLayout$Spec +android.widget.GridLayout-IA android.widget.GridLayout android.widget.HeaderViewListAdapter android.widget.HorizontalScrollView$SavedState$1 @@ -9979,22 +9995,17 @@ android.widget.ImageView android.widget.LinearLayout$LayoutParams android.widget.LinearLayout android.widget.ListAdapter -android.widget.ListPopupWindow$ListSelectorHider-IA android.widget.ListPopupWindow$ListSelectorHider -android.widget.ListPopupWindow$PopupDataSetObserver-IA android.widget.ListPopupWindow$PopupDataSetObserver -android.widget.ListPopupWindow$PopupScrollListener-IA android.widget.ListPopupWindow$PopupScrollListener -android.widget.ListPopupWindow$PopupTouchInterceptor-IA android.widget.ListPopupWindow$PopupTouchInterceptor -android.widget.ListPopupWindow$ResizePopupRunnable-IA android.widget.ListPopupWindow$ResizePopupRunnable +android.widget.ListPopupWindow-IA android.widget.ListPopupWindow -android.widget.ListView$ArrowScrollFocusResult-IA android.widget.ListView$ArrowScrollFocusResult android.widget.ListView$FixedViewInfo -android.widget.ListView$FocusSelector-IA android.widget.ListView$FocusSelector +android.widget.ListView-IA android.widget.ListView android.widget.Magnifier$Builder android.widget.Magnifier$InternalPopupWindow @@ -10025,14 +10036,12 @@ android.widget.PopupWindow$PopupDecorView android.widget.PopupWindow android.widget.ProgressBar$1 android.widget.ProgressBar$2 -android.widget.ProgressBar$ProgressTintInfo-IA android.widget.ProgressBar$ProgressTintInfo android.widget.ProgressBar$RefreshData -android.widget.ProgressBar$RefreshProgressRunnable-IA android.widget.ProgressBar$RefreshProgressRunnable android.widget.ProgressBar$SavedState$1 -android.widget.ProgressBar$SavedState-IA android.widget.ProgressBar$SavedState +android.widget.ProgressBar-IA android.widget.ProgressBar android.widget.QuickContactBadge android.widget.RadioButton @@ -10040,19 +10049,21 @@ android.widget.RadioGroup$OnCheckedChangeListener android.widget.RadioGroup android.widget.RatingBar android.widget.RelativeLayout$DependencyGraph$Node -android.widget.RelativeLayout$DependencyGraph-IA android.widget.RelativeLayout$DependencyGraph android.widget.RelativeLayout$LayoutParams android.widget.RelativeLayout$TopToBottomLeftToRightComparator +android.widget.RelativeLayout-IA android.widget.RelativeLayout android.widget.RemoteViews$$ExternalSyntheticLambda0 android.widget.RemoteViews$$ExternalSyntheticLambda1 android.widget.RemoteViews$$ExternalSyntheticLambda2 +android.widget.RemoteViews$$ExternalSyntheticLambda4 +android.widget.RemoteViews$$ExternalSyntheticLambda5 android.widget.RemoteViews$1 android.widget.RemoteViews$2 -android.widget.RemoteViews$Action-IA android.widget.RemoteViews$Action android.widget.RemoteViews$ActionException +android.widget.RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0 android.widget.RemoteViews$ApplicationInfoCache android.widget.RemoteViews$AsyncApplyTask android.widget.RemoteViews$AttributeReflectionAction @@ -10068,6 +10079,7 @@ android.widget.RemoteViews$MethodArgs android.widget.RemoteViews$MethodKey android.widget.RemoteViews$NightModeReflectionAction android.widget.RemoteViews$OnViewAppliedListener +android.widget.RemoteViews$PendingResources android.widget.RemoteViews$ReflectionAction android.widget.RemoteViews$RemoteCollectionCache android.widget.RemoteViews$RemoteCollectionItems$1 @@ -10103,6 +10115,7 @@ android.widget.RemoteViews$ViewGroupActionRemove$1 android.widget.RemoteViews$ViewGroupActionRemove android.widget.RemoteViews$ViewPaddingAction android.widget.RemoteViews$ViewTree +android.widget.RemoteViews-IA android.widget.RemoteViews android.widget.RemoteViewsAdapter$AsyncRemoteAdapterAction android.widget.RemoteViewsAdapter$RemoteAdapterConnectionCallback @@ -10126,10 +10139,10 @@ android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda2 android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda3 android.widget.SelectionActionModeHelper$$ExternalSyntheticLambda8 android.widget.SelectionActionModeHelper$SelectionMetricsLogger -android.widget.SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable-IA android.widget.SelectionActionModeHelper$SelectionTracker$LogAbandonRunnable android.widget.SelectionActionModeHelper$SelectionTracker android.widget.SelectionActionModeHelper$TextClassificationHelper +android.widget.SelectionActionModeHelper-IA android.widget.SelectionActionModeHelper android.widget.SmartSelectSprite$$ExternalSyntheticLambda0 android.widget.SmartSelectSprite$$ExternalSyntheticLambda1 @@ -10140,11 +10153,10 @@ android.widget.Space android.widget.SpellChecker$1 android.widget.SpellChecker$RemoveReason android.widget.SpellChecker$SentenceIteratorWrapper -android.widget.SpellChecker$SpellParser-IA android.widget.SpellChecker$SpellParser +android.widget.SpellChecker-IA android.widget.SpellChecker android.widget.Spinner$1 -android.widget.Spinner$DialogPopup-IA android.widget.Spinner$DialogPopup android.widget.Spinner$DropDownAdapter android.widget.Spinner$DropdownPopup$1 @@ -10152,6 +10164,7 @@ android.widget.Spinner$DropdownPopup android.widget.Spinner$SavedState$1 android.widget.Spinner$SavedState android.widget.Spinner$SpinnerPopup +android.widget.Spinner-IA android.widget.Spinner android.widget.SpinnerAdapter android.widget.Switch$1 @@ -10176,7 +10189,6 @@ android.widget.TextView$2 android.widget.TextView$3 android.widget.TextView$4 android.widget.TextView$BufferType -android.widget.TextView$ChangeWatcher-IA android.widget.TextView$ChangeWatcher android.widget.TextView$CharWrapper android.widget.TextView$Drawables @@ -10186,23 +10198,22 @@ android.widget.TextView$Marquee$3 android.widget.TextView$Marquee android.widget.TextView$OnEditorActionListener android.widget.TextView$SavedState$1 -android.widget.TextView$SavedState-IA android.widget.TextView$SavedState -android.widget.TextView$TextAppearanceAttributes-IA android.widget.TextView$TextAppearanceAttributes +android.widget.TextView-IA android.widget.TextView -android.widget.TextViewOnReceiveContentListener$InputConnectionInfo-IA android.widget.TextViewOnReceiveContentListener$InputConnectionInfo +android.widget.TextViewOnReceiveContentListener-IA android.widget.TextViewOnReceiveContentListener android.widget.TextViewTranslationCallback android.widget.ThemedSpinnerAdapter android.widget.Toast$Callback android.widget.Toast$CallbackBinder$$ExternalSyntheticLambda0 android.widget.Toast$CallbackBinder$$ExternalSyntheticLambda1 -android.widget.Toast$CallbackBinder-IA android.widget.Toast$CallbackBinder android.widget.Toast$TN$1 android.widget.Toast$TN +android.widget.Toast-IA android.widget.Toast android.widget.ToastPresenter android.widget.ToggleButton @@ -10219,6 +10230,8 @@ android.widget.ViewFlipper$1 android.widget.ViewFlipper android.widget.ViewSwitcher android.widget.WrapperListAdapter +android.widget.flags.FeatureFlags +android.widget.flags.FeatureFlagsImpl android.widget.flags.Flags android.widget.inline.InlinePresentationSpec$1 android.widget.inline.InlinePresentationSpec$BaseBuilder @@ -10234,6 +10247,7 @@ android.window.BackMotionEvent android.window.BackNavigationInfo$1 android.window.BackNavigationInfo android.window.BackProgressAnimator$$ExternalSyntheticLambda0 +android.window.BackProgressAnimator$$ExternalSyntheticLambda1 android.window.BackProgressAnimator$1 android.window.BackProgressAnimator$ProgressCallback android.window.BackProgressAnimator @@ -10290,7 +10304,6 @@ android.window.IWindowContainerTransactionCallback android.window.IWindowOrganizerController$Stub$Proxy android.window.IWindowOrganizerController$Stub android.window.IWindowOrganizerController -android.window.ImeOnBackInvokedDispatcher$$ExternalSyntheticLambda0 android.window.ImeOnBackInvokedDispatcher$1 android.window.ImeOnBackInvokedDispatcher$2 android.window.ImeOnBackInvokedDispatcher$DefaultImeOnBackAnimationCallback @@ -10336,9 +10349,9 @@ android.window.SurfaceSyncGroup$$ExternalSyntheticLambda5 android.window.SurfaceSyncGroup$$ExternalSyntheticLambda6 android.window.SurfaceSyncGroup$1 android.window.SurfaceSyncGroup$2 -android.window.SurfaceSyncGroup$ISurfaceSyncGroupImpl-IA android.window.SurfaceSyncGroup$ISurfaceSyncGroupImpl android.window.SurfaceSyncGroup$SurfaceViewFrameCallback +android.window.SurfaceSyncGroup-IA android.window.SurfaceSyncGroup android.window.TaskAppearedInfo$1 android.window.TaskAppearedInfo @@ -10378,13 +10391,15 @@ android.window.WindowInfosListener android.window.WindowMetricsController$$ExternalSyntheticLambda0 android.window.WindowMetricsController android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda0 +android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda1 +android.window.WindowOnBackInvokedDispatcher$$ExternalSyntheticLambda2 android.window.WindowOnBackInvokedDispatcher$Checker android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda0 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda1 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda2 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda3 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda4 -android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$CallbackRef +android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper$$ExternalSyntheticLambda5 android.window.WindowOnBackInvokedDispatcher$OnBackInvokedCallbackWrapper android.window.WindowOnBackInvokedDispatcher android.window.WindowOrganizer$1 @@ -10396,6 +10411,9 @@ android.window.WindowTokenClientController com.android.apex.ApexInfo com.android.apex.ApexInfoList com.android.apex.XmlParser +com.android.art.flags.FeatureFlags +com.android.art.flags.FeatureFlagsImpl +com.android.art.flags.Flags com.android.cellbroadcastservice.CellBroadcastStatsLog com.android.framework.protobuf.AbstractMessageLite$Builder com.android.framework.protobuf.AbstractMessageLite @@ -10468,9 +10486,15 @@ com.android.framework.protobuf.nano.InternalNano com.android.framework.protobuf.nano.InvalidProtocolBufferNanoException com.android.framework.protobuf.nano.MessageNano com.android.framework.protobuf.nano.WireFormatNano +com.android.graphics.flags.FeatureFlags +com.android.graphics.flags.FeatureFlagsImpl +com.android.graphics.flags.Flags com.android.graphics.hwui.flags.FeatureFlags com.android.graphics.hwui.flags.FeatureFlagsImpl com.android.graphics.hwui.flags.Flags +com.android.graphics.surfaceflinger.flags.FeatureFlags +com.android.graphics.surfaceflinger.flags.FeatureFlagsImpl +com.android.graphics.surfaceflinger.flags.Flags com.android.i18n.phonenumbers.AlternateFormatsCountryCodeSet com.android.i18n.phonenumbers.AsYouTypeFormatter com.android.i18n.phonenumbers.CountryCodeToRegionCodeMap @@ -10606,6 +10630,7 @@ com.android.icu.util.ExtendedCalendar com.android.icu.util.ExtendedTimeZone com.android.icu.util.Icu4cMetadata com.android.icu.util.LocaleNative +com.android.icu.util.UResourceBundleNative com.android.icu.util.regex.MatcherNative com.android.icu.util.regex.PatternNative com.android.ims.FeatureConnection$$ExternalSyntheticLambda0 @@ -10659,6 +10684,7 @@ com.android.ims.ImsManager$$ExternalSyntheticLambda2 com.android.ims.ImsManager$$ExternalSyntheticLambda3 com.android.ims.ImsManager$$ExternalSyntheticLambda4 com.android.ims.ImsManager$$ExternalSyntheticLambda5 +com.android.ims.ImsManager$$ExternalSyntheticLambda6 com.android.ims.ImsManager$$ExternalSyntheticLambda7 com.android.ims.ImsManager$$ExternalSyntheticLambda8 com.android.ims.ImsManager$$ExternalSyntheticLambda9 @@ -10690,6 +10716,7 @@ com.android.ims.RcsFeatureConnection$RegistrationCallbackManager com.android.ims.RcsFeatureConnection com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda0 com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda1 +com.android.ims.RcsFeatureManager$$ExternalSyntheticLambda2 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda0 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda1 com.android.ims.RcsFeatureManager$1$$ExternalSyntheticLambda2 @@ -10735,6 +10762,7 @@ com.android.ims.internal.IImsRegistrationListener$Stub com.android.ims.internal.IImsRegistrationListener com.android.ims.internal.IImsServiceController$Stub com.android.ims.internal.IImsServiceController +com.android.ims.internal.IImsServiceFeatureCallback$Stub$Proxy com.android.ims.internal.IImsServiceFeatureCallback$Stub com.android.ims.internal.IImsServiceFeatureCallback com.android.ims.internal.IImsStreamMediaSession @@ -11013,7 +11041,6 @@ com.android.internal.app.AlertController$ButtonHandler com.android.internal.app.AlertController$RecycleListView com.android.internal.app.AlertController com.android.internal.app.AssistUtils -com.android.internal.app.IAppOpsActiveCallback$Stub$Proxy com.android.internal.app.IAppOpsActiveCallback$Stub com.android.internal.app.IAppOpsActiveCallback com.android.internal.app.IAppOpsAsyncNotedCallback$Stub @@ -11100,6 +11127,7 @@ com.android.internal.appwidget.IAppWidgetHost com.android.internal.appwidget.IAppWidgetService$Stub$Proxy com.android.internal.appwidget.IAppWidgetService$Stub com.android.internal.appwidget.IAppWidgetService +com.android.internal.backup.IBackupTransport$Stub$Proxy com.android.internal.backup.IBackupTransport$Stub com.android.internal.backup.IBackupTransport com.android.internal.colorextraction.ColorExtractor$GradientColors @@ -11177,6 +11205,7 @@ com.android.internal.dynamicanimation.animation.DynamicAnimation$8 com.android.internal.dynamicanimation.animation.DynamicAnimation$9 com.android.internal.dynamicanimation.animation.DynamicAnimation$MassState com.android.internal.dynamicanimation.animation.DynamicAnimation$OnAnimationEndListener +com.android.internal.dynamicanimation.animation.DynamicAnimation$OnAnimationUpdateListener com.android.internal.dynamicanimation.animation.DynamicAnimation$ViewProperty com.android.internal.dynamicanimation.animation.DynamicAnimation com.android.internal.dynamicanimation.animation.Force @@ -11196,13 +11225,29 @@ com.android.internal.graphics.drawable.BackgroundBlurDrawable$Aggregator com.android.internal.graphics.drawable.BackgroundBlurDrawable$BlurRegion com.android.internal.graphics.drawable.BackgroundBlurDrawable-IA com.android.internal.graphics.drawable.BackgroundBlurDrawable +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.app.appfunctions.flags.Flags +com.android.internal.hidden_from_bootclasspath.android.app.job.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.app.job.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.app.job.Flags +com.android.internal.hidden_from_bootclasspath.android.content.pm.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.content.pm.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.content.pm.Flags com.android.internal.hidden_from_bootclasspath.android.os.FeatureFlags com.android.internal.hidden_from_bootclasspath.android.os.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.os.Flags +com.android.internal.hidden_from_bootclasspath.android.permission.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.android.permission.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.android.permission.flags.Flags com.android.internal.hidden_from_bootclasspath.android.service.notification.FeatureFlags com.android.internal.hidden_from_bootclasspath.android.service.notification.FeatureFlagsImpl com.android.internal.hidden_from_bootclasspath.android.service.notification.Flags +com.android.internal.hidden_from_bootclasspath.com.android.libcore.Flags +com.android.internal.hidden_from_bootclasspath.com.android.server.power.optimization.Flags +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.FeatureFlags +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.FeatureFlagsImpl +com.android.internal.hidden_from_bootclasspath.com.android.window.flags.Flags com.android.internal.infra.AbstractMultiplePendingRequestsRemoteService com.android.internal.infra.AbstractRemoteService$AsyncRequest com.android.internal.infra.AbstractRemoteService$BasePendingRequest @@ -11252,6 +11297,7 @@ com.android.internal.inputmethod.IRemoteInputConnection$Stub com.android.internal.inputmethod.IRemoteInputConnection com.android.internal.inputmethod.ImeTracing com.android.internal.inputmethod.ImeTracingClientImpl +com.android.internal.inputmethod.ImeTracingPerfettoImpl com.android.internal.inputmethod.ImeTracingServerImpl com.android.internal.inputmethod.InputBindResult$1 com.android.internal.inputmethod.InputBindResult-IA @@ -11292,8 +11338,8 @@ com.android.internal.jank.InteractionJankMonitor$$ExternalSyntheticLambda9 com.android.internal.jank.InteractionJankMonitor$Configuration com.android.internal.jank.InteractionJankMonitor$RunningTracker com.android.internal.jank.InteractionJankMonitor$TimeFunction -com.android.internal.jank.InteractionJankMonitor$TrackerResult-IA com.android.internal.jank.InteractionJankMonitor$TrackerResult +com.android.internal.jank.InteractionJankMonitor-IA com.android.internal.listeners.ListenerExecutor$$ExternalSyntheticLambda0 com.android.internal.listeners.ListenerExecutor$FailureCallback com.android.internal.listeners.ListenerExecutor$ListenerOperation @@ -11355,8 +11401,8 @@ com.android.internal.os.BinderCallsStats$ExportedCallStat com.android.internal.os.BinderCallsStats$Injector com.android.internal.os.BinderCallsStats$OverflowBinder com.android.internal.os.BinderCallsStats$UidEntry -com.android.internal.os.BinderDeathDispatcher$RecipientsInfo-IA com.android.internal.os.BinderDeathDispatcher$RecipientsInfo +com.android.internal.os.BinderDeathDispatcher-IA com.android.internal.os.BinderDeathDispatcher com.android.internal.os.BinderInternal$BinderProxyCountEventListenerDelegate com.android.internal.os.BinderInternal$CallSession @@ -11377,6 +11423,7 @@ com.android.internal.os.CachedDeviceState$TimeInStateStopwatch com.android.internal.os.CachedDeviceState com.android.internal.os.ClassLoaderFactory com.android.internal.os.Clock +com.android.internal.os.DebugStore com.android.internal.os.FeatureFlags com.android.internal.os.FeatureFlagsImpl com.android.internal.os.Flags @@ -11436,10 +11483,10 @@ com.android.internal.os.LongArrayMultiStateCounter$LongArrayContainer com.android.internal.os.LongArrayMultiStateCounter com.android.internal.os.LongMultiStateCounter$1 com.android.internal.os.LongMultiStateCounter -com.android.internal.os.LooperStats$DispatchSession-IA com.android.internal.os.LooperStats$DispatchSession com.android.internal.os.LooperStats$Entry com.android.internal.os.LooperStats$ExportedEntry +com.android.internal.os.LooperStats-IA com.android.internal.os.LooperStats com.android.internal.os.PowerProfile$CpuClusterKey com.android.internal.os.PowerProfile @@ -11460,9 +11507,9 @@ com.android.internal.os.RuntimeInit$$ExternalSyntheticLambda1 com.android.internal.os.RuntimeInit$ApplicationWtfHandler com.android.internal.os.RuntimeInit$Arguments com.android.internal.os.RuntimeInit$KillApplicationHandler -com.android.internal.os.RuntimeInit$LoggingHandler-IA com.android.internal.os.RuntimeInit$LoggingHandler com.android.internal.os.RuntimeInit$MethodAndArgsCaller +com.android.internal.os.RuntimeInit-IA com.android.internal.os.RuntimeInit com.android.internal.os.SafeZipPathValidatorCallback com.android.internal.os.SomeArgs @@ -11535,12 +11582,12 @@ com.android.internal.policy.PhoneWindow$$ExternalSyntheticLambda1 com.android.internal.policy.PhoneWindow$1 com.android.internal.policy.PhoneWindow$ActionMenuPresenterCallback com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState$1 -com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState-IA com.android.internal.policy.PhoneWindow$PanelFeatureState$SavedState com.android.internal.policy.PhoneWindow$PanelFeatureState com.android.internal.policy.PhoneWindow$PhoneWindowMenuCallback com.android.internal.policy.PhoneWindow$RotationWatcher$1 com.android.internal.policy.PhoneWindow$RotationWatcher +com.android.internal.policy.PhoneWindow-IA com.android.internal.policy.PhoneWindow com.android.internal.policy.ScreenDecorationsUtils com.android.internal.policy.SystemBarUtils @@ -11555,6 +11602,8 @@ com.android.internal.protolog.ProtoLogViewerConfigReader com.android.internal.protolog.common.BitmaskConversionException com.android.internal.protolog.common.IProtoLogGroup com.android.internal.protolog.common.LogDataType +com.android.internal.ravenwood.RavenwoodEnvironment$Workaround +com.android.internal.ravenwood.RavenwoodEnvironment com.android.internal.security.VerityUtils com.android.internal.statusbar.IAddTileResultCallback com.android.internal.statusbar.IStatusBar$Stub @@ -11794,6 +11843,7 @@ com.android.internal.telephony.IState com.android.internal.telephony.ISub$Stub$Proxy com.android.internal.telephony.ISub$Stub com.android.internal.telephony.ISub +com.android.internal.telephony.ITelephony$Stub$Proxy com.android.internal.telephony.ITelephony$Stub com.android.internal.telephony.ITelephony com.android.internal.telephony.ITelephonyRegistry$Stub$Proxy @@ -11959,6 +12009,7 @@ com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda8 com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda9 com.android.internal.telephony.PhoneSubInfoController$CallPhoneMethodHelper com.android.internal.telephony.PhoneSubInfoController$PermissionCheckHelper +com.android.internal.telephony.PhoneSubInfoController com.android.internal.telephony.ProxyController$1 com.android.internal.telephony.ProxyController com.android.internal.telephony.RIL$RadioProxyDeathRecipient @@ -12351,6 +12402,7 @@ com.android.internal.telephony.euicc.EuiccController$9 com.android.internal.telephony.euicc.EuiccController$DownloadSubscriptionGetMetadataCommandCallback com.android.internal.telephony.euicc.EuiccController$GetDefaultListCommandCallback com.android.internal.telephony.euicc.EuiccController$GetMetadataCommandCallback +com.android.internal.telephony.euicc.EuiccController com.android.internal.telephony.euicc.EuiccOperation$1 com.android.internal.telephony.euicc.EuiccOperation$Action com.android.internal.telephony.euicc.EuiccOperation @@ -12529,6 +12581,7 @@ com.android.internal.telephony.imsphone.ImsPhoneCallTracker$HoldSwapState com.android.internal.telephony.imsphone.ImsPhoneCallTracker$MmTelFeatureListener com.android.internal.telephony.imsphone.ImsPhoneCallTracker$PhoneStateListener com.android.internal.telephony.imsphone.ImsPhoneCallTracker$SharedPreferenceProxy +com.android.internal.telephony.imsphone.ImsPhoneCallTracker$VtDataUsageProvider com.android.internal.telephony.imsphone.ImsPhoneCallTracker com.android.internal.telephony.imsphone.ImsPhoneCommandInterface com.android.internal.telephony.imsphone.ImsPhoneConnection$$ExternalSyntheticLambda0 @@ -12583,6 +12636,7 @@ com.android.internal.telephony.metrics.PersistAtomsStorage$$ExternalSyntheticLam com.android.internal.telephony.metrics.PersistAtomsStorage$$ExternalSyntheticLambda7 com.android.internal.telephony.metrics.PersistAtomsStorage$1 com.android.internal.telephony.metrics.PersistAtomsStorage +com.android.internal.telephony.metrics.SatelliteStats$CarrierRoamingSatelliteControllerStatsParams com.android.internal.telephony.metrics.ServiceStateStats$$ExternalSyntheticLambda0 com.android.internal.telephony.metrics.ServiceStateStats$TimestampedServiceState com.android.internal.telephony.metrics.ServiceStateStats @@ -12612,6 +12666,8 @@ com.android.internal.telephony.nano.CarrierIdProto$CarrierAttribute com.android.internal.telephony.nano.CarrierIdProto$CarrierId com.android.internal.telephony.nano.CarrierIdProto$CarrierList com.android.internal.telephony.nano.PersistAtomsProto$CarrierIdMismatch +com.android.internal.telephony.nano.PersistAtomsProto$CarrierRoamingSatelliteControllerStats +com.android.internal.telephony.nano.PersistAtomsProto$CarrierRoamingSatelliteSession com.android.internal.telephony.nano.PersistAtomsProto$CellularDataServiceSwitch com.android.internal.telephony.nano.PersistAtomsProto$CellularServiceState com.android.internal.telephony.nano.PersistAtomsProto$DataCallSession @@ -12633,7 +12689,10 @@ com.android.internal.telephony.nano.PersistAtomsProto$PersistAtoms com.android.internal.telephony.nano.PersistAtomsProto$PresenceNotifyEvent com.android.internal.telephony.nano.PersistAtomsProto$RcsAcsProvisioningStats com.android.internal.telephony.nano.PersistAtomsProto$RcsClientProvisioningStats +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteAccessController +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteConfigUpdater com.android.internal.telephony.nano.PersistAtomsProto$SatelliteController +com.android.internal.telephony.nano.PersistAtomsProto$SatelliteEntitlement com.android.internal.telephony.nano.PersistAtomsProto$SatelliteIncomingDatagram com.android.internal.telephony.nano.PersistAtomsProto$SatelliteOutgoingDatagram com.android.internal.telephony.nano.PersistAtomsProto$SatelliteProvision @@ -13057,8 +13116,9 @@ com.android.internal.util.DumpUtils com.android.internal.util.EmergencyAffordanceManager com.android.internal.util.ExponentiallyBucketedHistogram com.android.internal.util.FastMath -com.android.internal.util.FastPrintWriter$DummyWriter-IA com.android.internal.util.FastPrintWriter$DummyWriter +com.android.internal.util.FastPrintWriter-IA +com.android.internal.util.FastPrintWriter com.android.internal.util.FastXmlSerializer com.android.internal.util.FileRotator$FileInfo com.android.internal.util.FileRotator$Reader @@ -13079,6 +13139,7 @@ com.android.internal.util.HeavyHitterSketch com.android.internal.util.HexDump com.android.internal.util.IState com.android.internal.util.ImageUtils +com.android.internal.util.IndentingPrintWriter com.android.internal.util.IntPair com.android.internal.util.JournaledFile com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda0 @@ -13086,10 +13147,10 @@ com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda1 com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda2 com.android.internal.util.LatencyTracker$Action com.android.internal.util.LatencyTracker$ActionProperties -com.android.internal.util.LatencyTracker$FrameworkStatsLogEvent-IA com.android.internal.util.LatencyTracker$FrameworkStatsLogEvent com.android.internal.util.LatencyTracker$Session$$ExternalSyntheticLambda0 com.android.internal.util.LatencyTracker$Session +com.android.internal.util.LatencyTracker-IA com.android.internal.util.LineBreakBufferedWriter com.android.internal.util.LocalLog com.android.internal.util.MemInfoReader @@ -13115,6 +13176,8 @@ com.android.internal.util.ProcFileReader com.android.internal.util.ProgressReporter com.android.internal.util.ProviderAccessStats$PerThreadData com.android.internal.util.ProviderAccessStats +com.android.internal.util.RateLimitingCache$ValueFetcher +com.android.internal.util.RateLimitingCache com.android.internal.util.RingBuffer$$ExternalSyntheticLambda0 com.android.internal.util.RingBuffer$$ExternalSyntheticLambda1 com.android.internal.util.RingBuffer @@ -13125,22 +13188,18 @@ com.android.internal.util.ScreenshotHelper com.android.internal.util.StatLogger com.android.internal.util.State com.android.internal.util.StateMachine$LogRec -com.android.internal.util.StateMachine$LogRecords-IA com.android.internal.util.StateMachine$LogRecords -com.android.internal.util.StateMachine$SmHandler$HaltingState-IA com.android.internal.util.StateMachine$SmHandler$HaltingState -com.android.internal.util.StateMachine$SmHandler$QuittingState-IA com.android.internal.util.StateMachine$SmHandler$QuittingState com.android.internal.util.StateMachine$SmHandler$StateInfo -com.android.internal.util.StateMachine$SmHandler-IA com.android.internal.util.StateMachine$SmHandler +com.android.internal.util.StateMachine-IA com.android.internal.util.StateMachine com.android.internal.util.StringPool com.android.internal.util.SyncResultReceiver$TimeoutException com.android.internal.util.SyncResultReceiver com.android.internal.util.ToBooleanFunction com.android.internal.util.TokenBucket -com.android.internal.util.TraceBuffer$ProtoOutputStreamProvider-IA com.android.internal.util.TraceBuffer$ProtoOutputStreamProvider com.android.internal.util.TraceBuffer$ProtoProvider com.android.internal.util.TraceBuffer @@ -13331,6 +13390,9 @@ com.android.internal.widget.floatingtoolbar.FloatingToolbar$$ExternalSyntheticLa com.android.internal.widget.floatingtoolbar.FloatingToolbar$$ExternalSyntheticLambda1 com.android.internal.widget.floatingtoolbar.FloatingToolbar com.android.internal.widget.floatingtoolbar.FloatingToolbarPopup +com.android.libcore.FeatureFlags +com.android.libcore.FeatureFlagsImpl +com.android.libcore.Flags com.android.media.flags.FeatureFlags com.android.media.flags.FeatureFlagsImpl com.android.media.flags.Flags @@ -13354,6 +13416,7 @@ com.android.net.module.util.NetworkCapabilitiesUtils com.android.net.module.util.NetworkIdentityUtils com.android.net.module.util.NetworkStackConstants com.android.net.module.util.ProxyUtils +com.android.nfc.x.android.nfc.Flags com.android.okhttp.Address com.android.okhttp.AndroidInternal com.android.okhttp.AndroidShimResponseCache @@ -13519,12 +13582,14 @@ com.android.org.bouncycastle.asn1.ASN1Boolean com.android.org.bouncycastle.asn1.ASN1Choice com.android.org.bouncycastle.asn1.ASN1Encodable com.android.org.bouncycastle.asn1.ASN1EncodableVector +com.android.org.bouncycastle.asn1.ASN1Enumerated$$ExternalSyntheticOutline0 com.android.org.bouncycastle.asn1.ASN1Enumerated com.android.org.bouncycastle.asn1.ASN1Exception com.android.org.bouncycastle.asn1.ASN1External com.android.org.bouncycastle.asn1.ASN1GeneralizedTime com.android.org.bouncycastle.asn1.ASN1InputStream com.android.org.bouncycastle.asn1.ASN1Integer +com.android.org.bouncycastle.asn1.ASN1Null com.android.org.bouncycastle.asn1.ASN1Object com.android.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle com.android.org.bouncycastle.asn1.ASN1ObjectIdentifier @@ -13611,7 +13676,6 @@ com.android.org.bouncycastle.crypto.DataLengthException com.android.org.bouncycastle.crypto.Digest com.android.org.bouncycastle.crypto.ExtendedDigest com.android.org.bouncycastle.crypto.InvalidCipherTextException -com.android.org.bouncycastle.crypto.Mac com.android.org.bouncycastle.crypto.OutputLengthException com.android.org.bouncycastle.crypto.PBEParametersGenerator com.android.org.bouncycastle.crypto.RuntimeCryptoException @@ -13792,9 +13856,9 @@ com.android.server.am.nano.Capabilities com.android.server.am.nano.Capability com.android.server.am.nano.FrameworkCapability com.android.server.am.nano.VMCapability +com.android.server.am.nano.VMInfo com.android.server.backup.AccountManagerBackupHelper com.android.server.backup.AccountSyncSettingsBackupHelper -com.android.server.backup.NotificationBackupHelper com.android.server.backup.PermissionBackupHelper com.android.server.backup.PreferredActivityBackupHelper com.android.server.backup.ShortcutBackupHelper @@ -13830,6 +13894,7 @@ com.android.server.criticalevents.nano.CriticalEventProto$Watchdog com.android.server.job.JobSchedulerInternal$JobStorePersistStats com.android.server.net.BaseNetdEventCallback com.android.server.net.BaseNetworkObserver +com.android.server.ondeviceintelligence.nano.InferenceInfo com.android.server.sip.SipHelper com.android.server.sip.SipService$ConnectivityReceiver$1 com.android.server.sip.SipService$ConnectivityReceiver @@ -13905,9 +13970,6 @@ com.android.telephony.Rlog com.android.text.flags.FeatureFlags com.android.text.flags.FeatureFlagsImpl com.android.text.flags.Flags -com.android.window.flags.FeatureFlags -com.android.window.flags.FeatureFlagsImpl -com.android.window.flags.Flags com.google.android.collect.Lists com.google.android.collect.Maps com.google.android.collect.Sets @@ -13947,8 +14009,8 @@ dalvik.system.CloseGuard dalvik.system.DelegateLastClassLoader dalvik.system.DexClassLoader dalvik.system.DexFile$DFEnum -dalvik.system.DexFile$OptimizationInfo-IA dalvik.system.DexFile$OptimizationInfo +dalvik.system.DexFile-IA dalvik.system.DexFile dalvik.system.DexPathList$$ExternalSyntheticLambda0 dalvik.system.DexPathList$Element @@ -14457,8 +14519,8 @@ java.io.ObjectOutputStream$Caches java.io.ObjectOutputStream$DebugTraceInfoStack java.io.ObjectOutputStream$HandleTable java.io.ObjectOutputStream$PutField -java.io.ObjectOutputStream$PutFieldImpl java.io.ObjectOutputStream$ReplaceTable +java.io.ObjectOutputStream java.io.ObjectStreamClass$$ExternalSyntheticLambda0 java.io.ObjectStreamClass$$ExternalSyntheticLambda1 java.io.ObjectStreamClass$$ExternalSyntheticLambda2 @@ -14473,13 +14535,13 @@ java.io.ObjectStreamClass$ClassDataSlot java.io.ObjectStreamClass$DefaultSUIDCompatibilityListener java.io.ObjectStreamClass$DeserializationConstructorsCache java.io.ObjectStreamClass$EntryFuture$1 -java.io.ObjectStreamClass$EntryFuture-IA java.io.ObjectStreamClass$EntryFuture java.io.ObjectStreamClass$ExceptionInfo java.io.ObjectStreamClass$FieldReflector java.io.ObjectStreamClass$FieldReflectorKey java.io.ObjectStreamClass$MemberSignature java.io.ObjectStreamClass$WeakClassKey +java.io.ObjectStreamClass-IA java.io.ObjectStreamClass java.io.ObjectStreamConstants java.io.ObjectStreamException @@ -14591,6 +14653,7 @@ java.lang.Iterable java.lang.LinkageError java.lang.Long$LongCache java.lang.Long +java.lang.MatchException java.lang.Math$RandomNumberGeneratorHolder java.lang.Math java.lang.NegativeArraySizeException @@ -14642,8 +14705,8 @@ java.lang.String$$ExternalSyntheticLambda0 java.lang.String$$ExternalSyntheticLambda1 java.lang.String$$ExternalSyntheticLambda2 java.lang.String$$ExternalSyntheticLambda3 -java.lang.String$CaseInsensitiveComparator-IA java.lang.String$CaseInsensitiveComparator +java.lang.String-IA java.lang.String java.lang.StringBuffer java.lang.StringBuilder @@ -14662,30 +14725,29 @@ java.lang.System java.lang.Thread$1 java.lang.Thread$Caches java.lang.Thread$State +java.lang.Thread$ThreadIdentifiers java.lang.Thread$UncaughtExceptionHandler java.lang.Thread$WeakClassKey java.lang.Thread java.lang.ThreadDeath java.lang.ThreadGroup java.lang.ThreadLocal$ThreadLocalMap$Entry -java.lang.ThreadLocal$ThreadLocalMap-IA java.lang.ThreadLocal$ThreadLocalMap +java.lang.ThreadLocal-IA java.lang.ThreadLocal -java.lang.Throwable$PrintStreamOrWriter-IA java.lang.Throwable$PrintStreamOrWriter java.lang.Throwable$SentinelHolder java.lang.Throwable$WrappedPrintStream java.lang.Throwable$WrappedPrintWriter +java.lang.Throwable-IA java.lang.Throwable java.lang.TypeNotPresentException java.lang.UNIXProcess$1 java.lang.UNIXProcess$2 java.lang.UNIXProcess$3 java.lang.UNIXProcess$ProcessPipeInputStream -java.lang.UNIXProcess$ProcessPipeOutputStream java.lang.UNIXProcess$ProcessReaperThreadFactory$1 java.lang.UNIXProcess$ProcessReaperThreadFactory -java.lang.UNIXProcess java.lang.UnsatisfiedLinkError java.lang.UnsupportedClassVersionError java.lang.UnsupportedOperationException @@ -14756,8 +14818,7 @@ java.lang.invoke.MethodHandles$$ExternalSyntheticLambda8 java.lang.invoke.MethodHandles$$ExternalSyntheticLambda9 java.lang.invoke.MethodHandles$Lookup java.lang.invoke.MethodHandles -java.lang.invoke.MethodType$ConcurrentWeakInternSet$WeakEntry -java.lang.invoke.MethodType$ConcurrentWeakInternSet +java.lang.invoke.MethodType$1 java.lang.invoke.MethodType java.lang.invoke.MethodTypeForm java.lang.invoke.SerializedLambda @@ -14801,8 +14862,8 @@ java.lang.invoke.WrongMethodTypeException java.lang.ref.Cleaner$1 java.lang.ref.Cleaner$Cleanable java.lang.ref.Cleaner -java.lang.ref.FinalizerReference$Sentinel-IA java.lang.ref.FinalizerReference$Sentinel +java.lang.ref.FinalizerReference-IA java.lang.ref.FinalizerReference java.lang.ref.PhantomReference java.lang.ref.Reference$SinkHolder$1 @@ -14833,11 +14894,10 @@ java.lang.reflect.ParameterizedType java.lang.reflect.Proxy$1 java.lang.reflect.Proxy$Key1 java.lang.reflect.Proxy$Key2 -java.lang.reflect.Proxy$KeyFactory-IA java.lang.reflect.Proxy$KeyFactory java.lang.reflect.Proxy$KeyX -java.lang.reflect.Proxy$ProxyClassFactory-IA java.lang.reflect.Proxy$ProxyClassFactory +java.lang.reflect.Proxy-IA java.lang.reflect.Proxy java.lang.reflect.RecordComponent java.lang.reflect.ReflectPermission @@ -14902,16 +14962,16 @@ java.net.HttpURLConnection java.net.IDN java.net.InMemoryCookieStore java.net.Inet4Address -java.net.Inet6Address$Inet6AddressHolder-IA java.net.Inet6Address$Inet6AddressHolder +java.net.Inet6Address-IA java.net.Inet6Address java.net.Inet6AddressImpl java.net.InetAddress$1 java.net.InetAddress$InetAddressHolder java.net.InetAddress java.net.InetAddressImpl -java.net.InetSocketAddress$InetSocketAddressHolder-IA java.net.InetSocketAddress$InetSocketAddressHolder +java.net.InetSocketAddress-IA java.net.InetSocketAddress java.net.InterfaceAddress java.net.JarURLConnection @@ -15141,11 +15201,10 @@ java.security.PrivilegedActionException java.security.PrivilegedExceptionAction java.security.ProtectionDomain java.security.Provider$EngineDescription -java.security.Provider$Service-IA java.security.Provider$Service -java.security.Provider$ServiceKey-IA java.security.Provider$ServiceKey java.security.Provider$UString +java.security.Provider-IA java.security.Provider java.security.ProviderException java.security.PublicKey @@ -15266,8 +15325,8 @@ java.text.DecimalFormat java.text.DecimalFormatSymbols java.text.DontCareFieldPosition$1 java.text.DontCareFieldPosition -java.text.FieldPosition$Delegate-IA java.text.FieldPosition$Delegate +java.text.FieldPosition-IA java.text.FieldPosition java.text.Format$Field java.text.Format$FieldDelegate @@ -15333,15 +15392,14 @@ java.time.format.DateTimeFormatterBuilder$InstantPrinterParser java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeFormatterBuilder$OffsetIdPrinterParser java.time.format.DateTimeFormatterBuilder$PadPrinterParserDecorator -java.time.format.DateTimeFormatterBuilder$PrefixTree$CI-IA java.time.format.DateTimeFormatterBuilder$PrefixTree$CI -java.time.format.DateTimeFormatterBuilder$PrefixTree-IA java.time.format.DateTimeFormatterBuilder$PrefixTree java.time.format.DateTimeFormatterBuilder$SettingsParser java.time.format.DateTimeFormatterBuilder$StringLiteralPrinterParser java.time.format.DateTimeFormatterBuilder$TextPrinterParser java.time.format.DateTimeFormatterBuilder$ZoneIdPrinterParser java.time.format.DateTimeFormatterBuilder$ZoneTextPrinterParser +java.time.format.DateTimeFormatterBuilder-IA java.time.format.DateTimeFormatterBuilder java.time.format.DateTimeParseContext java.time.format.DateTimeParseException @@ -15398,12 +15456,12 @@ java.time.zone.ZoneRules java.time.zone.ZoneRulesException java.time.zone.ZoneRulesProvider java.util.AbstractCollection -java.util.AbstractList$Itr-IA java.util.AbstractList$ListItr java.util.AbstractList$RandomAccessSpliterator java.util.AbstractList$RandomAccessSubList java.util.AbstractList$SubList$1 java.util.AbstractList$SubList +java.util.AbstractList-IA java.util.AbstractList java.util.AbstractMap$1 java.util.AbstractMap$2$1 @@ -15440,7 +15498,6 @@ java.util.Calendar$Builder java.util.Calendar java.util.Collection java.util.Collections$2 -java.util.Collections$3 java.util.Collections$AsLIFOQueue java.util.Collections$CheckedCollection java.util.Collections$CheckedList @@ -15454,17 +15511,14 @@ java.util.Collections$CheckedSortedMap java.util.Collections$CheckedSortedSet java.util.Collections$CopiesList java.util.Collections$EmptyEnumeration -java.util.Collections$EmptyList-IA java.util.Collections$EmptyListIterator -java.util.Collections$EmptyMap-IA -java.util.Collections$EmptySet-IA java.util.Collections$ReverseComparator2 java.util.Collections$ReverseComparator java.util.Collections$SequencedSetFromMap +java.util.Collections$SetFromMap java.util.Collections$SynchronizedList java.util.Collections$SynchronizedNavigableMap java.util.Collections$SynchronizedNavigableSet -java.util.Collections$SynchronizedRandomAccessList java.util.Collections$SynchronizedSortedMap java.util.Collections$SynchronizedSortedSet java.util.Collections$UnmodifiableList$1 @@ -15477,6 +15531,7 @@ java.util.Collections$UnmodifiableSequencedCollection java.util.Collections$UnmodifiableSequencedMap java.util.Collections$UnmodifiableSequencedSet java.util.Collections$UnmodifiableSortedMap +java.util.Collections-IA java.util.Collections java.util.ComparableTimSort java.util.Comparator$$ExternalSyntheticLambda1 @@ -15493,28 +15548,21 @@ java.util.Date java.util.Deque java.util.Dictionary java.util.DoubleSummaryStatistics -java.util.DualPivotQuicksort$Sorter-IA java.util.DualPivotQuicksort$Sorter +java.util.DualPivotQuicksort-IA java.util.DualPivotQuicksort java.util.DuplicateFormatFlagsException java.util.EmptyStackException java.util.EnumMap$1 -java.util.EnumMap$EntryIterator$Entry-IA java.util.EnumMap$EntryIterator$Entry -java.util.EnumMap$EntryIterator-IA java.util.EnumMap$EntryIterator -java.util.EnumMap$EntrySet-IA java.util.EnumMap$EntrySet -java.util.EnumMap$EnumMapIterator-IA java.util.EnumMap$EnumMapIterator -java.util.EnumMap$KeyIterator-IA java.util.EnumMap$KeyIterator -java.util.EnumMap$KeySet-IA java.util.EnumMap$KeySet -java.util.EnumMap$ValueIterator-IA java.util.EnumMap$ValueIterator -java.util.EnumMap$Values-IA java.util.EnumMap$Values +java.util.EnumMap-IA java.util.EnumMap java.util.EnumSet$SerializationProxy java.util.EnumSet @@ -15540,31 +15588,22 @@ java.util.HashMap$UnsafeHolder java.util.HashMap$ValueSpliterator java.util.HashMap java.util.HashSet -java.util.Hashtable$EntrySet-IA java.util.Hashtable$EntrySet java.util.Hashtable$HashtableEntry -java.util.Hashtable$KeySet-IA java.util.Hashtable$KeySet -java.util.Hashtable$ValueCollection-IA java.util.Hashtable$ValueCollection +java.util.Hashtable-IA java.util.Hashtable java.util.HexFormat -java.util.IdentityHashMap$EntryIterator$Entry-IA java.util.IdentityHashMap$EntryIterator$Entry -java.util.IdentityHashMap$EntryIterator-IA java.util.IdentityHashMap$EntryIterator -java.util.IdentityHashMap$EntrySet-IA java.util.IdentityHashMap$EntrySet -java.util.IdentityHashMap$IdentityHashMapIterator-IA java.util.IdentityHashMap$IdentityHashMapIterator -java.util.IdentityHashMap$KeyIterator-IA java.util.IdentityHashMap$KeyIterator -java.util.IdentityHashMap$KeySet-IA java.util.IdentityHashMap$KeySet -java.util.IdentityHashMap$ValueIterator-IA java.util.IdentityHashMap$ValueIterator -java.util.IdentityHashMap$Values-IA java.util.IdentityHashMap$Values +java.util.IdentityHashMap-IA java.util.IdentityHashMap java.util.IllegalFormatArgumentIndexException java.util.IllegalFormatCodePointException @@ -15580,19 +15619,19 @@ java.util.ImmutableCollections$AbstractImmutableMap java.util.ImmutableCollections$AbstractImmutableSet java.util.ImmutableCollections$Access$1 java.util.ImmutableCollections$Access -java.util.ImmutableCollections$ListN-IA +java.util.ImmutableCollections$MapN$1 +java.util.ImmutableCollections$MapN$MapNIterator java.util.ImmutableCollections$SubList +java.util.ImmutableCollections-IA java.util.InputMismatchException java.util.Iterator java.util.JumboEnumSet$EnumSetIterator java.util.JumboEnumSet -java.util.LinkedHashMap$LinkedEntryIterator -java.util.LinkedHashMap$LinkedEntrySet +java.util.KeyValueHolder java.util.LinkedHashMap$LinkedHashIterator java.util.LinkedHashMap$ReversedLinkedHashMapView java.util.LinkedHashMap java.util.LinkedHashSet -java.util.LinkedList$DescendingIterator-IA java.util.LinkedList$Node java.util.LinkedList java.util.List @@ -15607,7 +15646,6 @@ java.util.Locale$IsoCountryCode$2 java.util.Locale$IsoCountryCode$3 java.util.Locale$IsoCountryCode java.util.Locale$LanguageRange -java.util.Locale$LocaleKey-IA java.util.Locale$LocaleKey java.util.Locale$NoImagePreloadHolder java.util.Locale-IA @@ -15719,21 +15757,16 @@ java.util.UUID java.util.UnknownFormatConversionException java.util.UnknownFormatFlagsException java.util.Vector$1 -java.util.Vector$Itr-IA java.util.Vector$Itr +java.util.Vector-IA java.util.Vector java.util.WeakHashMap$Entry -java.util.WeakHashMap$EntryIterator-IA java.util.WeakHashMap$EntryIterator -java.util.WeakHashMap$EntrySet-IA java.util.WeakHashMap$EntrySet java.util.WeakHashMap$HashIterator -java.util.WeakHashMap$KeyIterator-IA -java.util.WeakHashMap$KeySet-IA -java.util.WeakHashMap$ValueIterator-IA java.util.WeakHashMap$ValueIterator -java.util.WeakHashMap$Values-IA java.util.WeakHashMap$Values +java.util.WeakHashMap-IA java.util.WeakHashMap java.util.concurrent.AbstractExecutorService java.util.concurrent.ArrayBlockingQueue$Itrs @@ -15766,7 +15799,6 @@ java.util.concurrent.ConcurrentHashMap$ForEachTransformedMappingTask java.util.concurrent.ConcurrentHashMap$ForEachTransformedValueTask java.util.concurrent.ConcurrentHashMap$ForEachValueTask java.util.concurrent.ConcurrentHashMap$ForwardingNode -java.util.concurrent.ConcurrentHashMap$KeyIterator java.util.concurrent.ConcurrentHashMap$KeySetView java.util.concurrent.ConcurrentHashMap$KeySpliterator java.util.concurrent.ConcurrentHashMap$MapReduceEntriesTask @@ -15865,10 +15897,6 @@ java.util.concurrent.Semaphore$FairSync java.util.concurrent.Semaphore$NonfairSync java.util.concurrent.Semaphore$Sync java.util.concurrent.Semaphore -java.util.concurrent.SynchronousQueue$TransferQueue$QNode -java.util.concurrent.SynchronousQueue$TransferQueue -java.util.concurrent.SynchronousQueue$TransferStack$SNode -java.util.concurrent.SynchronousQueue$TransferStack java.util.concurrent.SynchronousQueue$Transferer java.util.concurrent.SynchronousQueue java.util.concurrent.ThreadFactory @@ -15977,9 +16005,9 @@ java.util.jar.Manifest java.util.logging.ConsoleHandler java.util.logging.ErrorManager java.util.logging.FileHandler$1 -java.util.logging.FileHandler$InitializationErrorManager-IA java.util.logging.FileHandler$InitializationErrorManager java.util.logging.FileHandler$MeteredStream +java.util.logging.FileHandler-IA java.util.logging.FileHandler java.util.logging.Filter java.util.logging.Formatter @@ -16156,13 +16184,11 @@ java.util.stream.Nodes$IntArrayNode java.util.stream.Nodes$IntFixedNodeBuilder java.util.stream.Nodes$IntSpinedNodeBuilder java.util.stream.Nodes$SpinedNodeBuilder -java.util.stream.Nodes$ToArrayTask$OfInt-IA java.util.stream.Nodes$ToArrayTask$OfInt -java.util.stream.Nodes$ToArrayTask$OfPrimitive-IA java.util.stream.Nodes$ToArrayTask$OfPrimitive -java.util.stream.Nodes$ToArrayTask$OfRef-IA java.util.stream.Nodes$ToArrayTask$OfRef java.util.stream.Nodes$ToArrayTask +java.util.stream.Nodes-IA java.util.stream.Nodes java.util.stream.PipelineHelper java.util.stream.ReduceOps$10 @@ -16230,12 +16256,12 @@ java.util.stream.StreamSpliterators$WrappingSpliterator java.util.stream.StreamSupport java.util.stream.Streams$1 java.util.stream.Streams$2 -java.util.stream.Streams$AbstractStreamBuilderImpl-IA java.util.stream.Streams$AbstractStreamBuilderImpl java.util.stream.Streams$ConcatSpliterator$OfRef java.util.stream.Streams$ConcatSpliterator java.util.stream.Streams$RangeIntSpliterator java.util.stream.Streams$StreamBuilderImpl +java.util.stream.Streams-IA java.util.stream.Streams java.util.stream.TerminalOp java.util.stream.TerminalSink @@ -16247,15 +16273,14 @@ java.util.zip.CheckedInputStream java.util.zip.Checksum$1 java.util.zip.Checksum java.util.zip.DataFormatException -java.util.zip.Deflater$DeflaterZStreamRef-IA java.util.zip.Deflater$DeflaterZStreamRef +java.util.zip.Deflater-IA java.util.zip.Deflater java.util.zip.DeflaterOutputStream java.util.zip.GZIPInputStream$1 -java.util.zip.GZIPInputStream java.util.zip.GZIPOutputStream -java.util.zip.Inflater$InflaterZStreamRef-IA java.util.zip.Inflater$InflaterZStreamRef +java.util.zip.Inflater-IA java.util.zip.Inflater java.util.zip.InflaterInputStream java.util.zip.ZipCoder$UTF8ZipCoder @@ -16266,14 +16291,16 @@ java.util.zip.ZipError java.util.zip.ZipException java.util.zip.ZipFile$CleanableResource java.util.zip.ZipFile$InflaterCleanupAction -java.util.zip.ZipFile$Source$End-IA java.util.zip.ZipFile$Source$End java.util.zip.ZipFile$Source$Key java.util.zip.ZipFile$Source java.util.zip.ZipFile$ZipEntryIterator +java.util.zip.ZipFile$ZipFileInflaterInputStream java.util.zip.ZipFile$ZipFileInputStream +java.util.zip.ZipFile-IA java.util.zip.ZipFile java.util.zip.ZipInputStream +java.util.zip.ZipOutputStream java.util.zip.ZipUtils javax.crypto.AEADBadTagException javax.crypto.BadPaddingException @@ -16527,6 +16554,7 @@ jdk.internal.misc.TerminatingThreadLocal jdk.internal.misc.Unsafe jdk.internal.misc.UnsafeConstants jdk.internal.misc.VM +jdk.internal.misc.VirtualThreads jdk.internal.ref.CleanerFactory jdk.internal.ref.CleanerImpl jdk.internal.ref.PhantomCleanable @@ -16534,7 +16562,17 @@ jdk.internal.reflect.Reflection jdk.internal.util.ArraysSupport jdk.internal.util.NullableKeyValueHolder jdk.internal.util.Preconditions +jdk.internal.util.ReferenceKey +jdk.internal.util.ReferencedKeyMap$$ExternalSyntheticLambda0 +jdk.internal.util.ReferencedKeyMap$$ExternalSyntheticLambda1 +jdk.internal.util.ReferencedKeyMap$$ExternalSyntheticLambda2 +jdk.internal.util.ReferencedKeyMap$$ExternalSyntheticLambda3 +jdk.internal.util.ReferencedKeyMap +jdk.internal.util.ReferencedKeySet +jdk.internal.util.SoftReferenceKey jdk.internal.util.StaticProperty +jdk.internal.util.StrongReferenceKey +jdk.internal.util.WeakReferenceKey jdk.internal.util.random.RandomSupport libcore.content.type.MimeMap$$ExternalSyntheticLambda0 libcore.content.type.MimeMap$Builder$Element @@ -16551,6 +16589,16 @@ libcore.icu.SimpleDateFormatData libcore.icu.TimeZoneNames$1 libcore.icu.TimeZoneNames$ZoneStringsCache libcore.icu.TimeZoneNames +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch10 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch1 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch2 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch3 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch4 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch5 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch6 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch7 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch8 +libcore.internal.Java21LanguageFeatures$$ExternalSyntheticTypeSwitch9 libcore.internal.StringPool libcore.io.AsynchronousCloseMonitor libcore.io.BlockGuardOs @@ -16613,11 +16661,10 @@ org.apache.harmony.dalvik.ddmc.DdmServer org.apache.harmony.dalvik.ddmc.DdmVmInternal org.apache.harmony.xml.ExpatAttributes org.apache.harmony.xml.ExpatException -org.apache.harmony.xml.ExpatParser$CurrentAttributes-IA org.apache.harmony.xml.ExpatParser$CurrentAttributes -org.apache.harmony.xml.ExpatParser$ExpatLocator-IA org.apache.harmony.xml.ExpatParser$ExpatLocator org.apache.harmony.xml.ExpatParser$ParseException +org.apache.harmony.xml.ExpatParser-IA org.apache.harmony.xml.ExpatParser org.apache.harmony.xml.ExpatReader org.apache.harmony.xml.dom.AttrImpl @@ -16625,9 +16672,7 @@ org.apache.harmony.xml.dom.CDATASectionImpl org.apache.harmony.xml.dom.CharacterDataImpl org.apache.harmony.xml.dom.CommentImpl org.apache.harmony.xml.dom.DOMImplementationImpl -org.apache.harmony.xml.dom.DocumentImpl org.apache.harmony.xml.dom.DocumentTypeImpl -org.apache.harmony.xml.dom.ElementImpl org.apache.harmony.xml.dom.EntityReferenceImpl org.apache.harmony.xml.dom.InnerNodeImpl org.apache.harmony.xml.dom.LeafNodeImpl @@ -16635,7 +16680,6 @@ org.apache.harmony.xml.dom.NodeImpl$1 org.apache.harmony.xml.dom.NodeImpl org.apache.harmony.xml.dom.NodeListImpl org.apache.harmony.xml.dom.ProcessingInstructionImpl -org.apache.harmony.xml.dom.TextImpl org.apache.harmony.xml.parsers.DocumentBuilderFactoryImpl org.apache.harmony.xml.parsers.DocumentBuilderImpl org.apache.harmony.xml.parsers.SAXParserFactoryImpl @@ -16768,8 +16812,8 @@ sun.nio.ch.DatagramDispatcher sun.nio.ch.DefaultSelectorProvider sun.nio.ch.DirectBuffer sun.nio.ch.FileChannelImpl$SimpleFileLockTable -sun.nio.ch.FileChannelImpl$Unmapper-IA sun.nio.ch.FileChannelImpl$Unmapper +sun.nio.ch.FileChannelImpl-IA sun.nio.ch.FileDescriptorHolderSocketImpl sun.nio.ch.FileDispatcher sun.nio.ch.FileDispatcherImpl @@ -16853,8 +16897,8 @@ sun.reflect.misc.ReflectUtil sun.security.action.GetBooleanAction sun.security.action.GetIntegerAction sun.security.action.GetPropertyAction -sun.security.jca.GetInstance$Instance-IA sun.security.jca.GetInstance$Instance +sun.security.jca.GetInstance-IA sun.security.jca.GetInstance sun.security.jca.JCAUtil$CachedSecureRandomHolder sun.security.jca.JCAUtil @@ -16892,8 +16936,8 @@ sun.security.provider.certpath.OCSP$RevocationStatus$CertStatus sun.security.provider.certpath.OCSP$RevocationStatus sun.security.provider.certpath.OCSP sun.security.provider.certpath.OCSPResponse$ResponseStatus -sun.security.provider.certpath.OCSPResponse$SingleResponse-IA sun.security.provider.certpath.OCSPResponse$SingleResponse +sun.security.provider.certpath.OCSPResponse-IA sun.security.provider.certpath.OCSPResponse sun.security.provider.certpath.PKIX$ValidatorParams sun.security.provider.certpath.PKIX @@ -16904,8 +16948,8 @@ sun.security.provider.certpath.PolicyNodeImpl sun.security.provider.certpath.RevocationChecker$1 sun.security.provider.certpath.RevocationChecker$2 sun.security.provider.certpath.RevocationChecker$Mode -sun.security.provider.certpath.RevocationChecker$RevocationProperties-IA sun.security.provider.certpath.RevocationChecker$RevocationProperties +sun.security.provider.certpath.RevocationChecker-IA sun.security.provider.certpath.RevocationChecker sun.security.timestamp.TimestampToken sun.security.util.AbstractAlgorithmConstraints$1 @@ -16927,11 +16971,11 @@ sun.security.util.DerInputStream sun.security.util.DerOutputStream sun.security.util.DerValue sun.security.util.DisabledAlgorithmConstraints$Constraint$Operator -sun.security.util.DisabledAlgorithmConstraints$Constraint-IA sun.security.util.DisabledAlgorithmConstraints$Constraint sun.security.util.DisabledAlgorithmConstraints$Constraints sun.security.util.DisabledAlgorithmConstraints$KeySizeConstraint sun.security.util.DisabledAlgorithmConstraints$jdkCAConstraint +sun.security.util.DisabledAlgorithmConstraints-IA sun.security.util.DisabledAlgorithmConstraints sun.security.util.FilePaths sun.security.util.KeyUtil @@ -17035,13 +17079,12 @@ sun.util.calendar.JulianCalendar$Date sun.util.calendar.JulianCalendar sun.util.calendar.LocalGregorianCalendar sun.util.locale.BaseLocale$Cache -sun.util.locale.BaseLocale$Key-IA sun.util.locale.BaseLocale$Key sun.util.locale.BaseLocale-IA sun.util.locale.BaseLocale sun.util.locale.Extension -sun.util.locale.InternalLocaleBuilder$CaseInsensitiveChar-IA sun.util.locale.InternalLocaleBuilder$CaseInsensitiveChar +sun.util.locale.InternalLocaleBuilder-IA sun.util.locale.InternalLocaleBuilder sun.util.locale.LanguageTag sun.util.locale.LocaleExtensions diff --git a/config/preloaded-classes-denylist b/config/preloaded-classes-denylist index a413bbd68f60..16f069394639 100644 --- a/config/preloaded-classes-denylist +++ b/config/preloaded-classes-denylist @@ -1,13 +1,16 @@ android.content.AsyncTaskLoader$LoadTask +android.media.MediaCodecInfo$CodecCapabilities$FeatureList android.net.ConnectivityThread$Singleton android.os.FileObserver android.os.NullVibrator +android.permission.PermissionManager +android.provider.MediaStore android.speech.tts.TextToSpeech$Connection$SetupConnectionAsyncTask +android.view.HdrRenderState android.widget.Magnifier +com.android.internal.jank.InteractionJankMonitor$InstanceHolder +com.android.internal.util.LatencyTracker$SLatencyTrackerHolder gov.nist.core.net.DefaultNetworkLayer -android.net.rtp.AudioGroup -android.net.rtp.AudioStream -android.net.rtp.RtpStream java.util.concurrent.ThreadLocalRandom java.util.ImmutableCollections -com.android.internal.jank.InteractionJankMonitor$InstanceHolder +sun.nio.fs.UnixChannelFactory diff --git a/core/TEST_MAPPING b/core/TEST_MAPPING index fd571c95f568..b78659cd611d 100644 --- a/core/TEST_MAPPING +++ b/core/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.view.inputmethod" - }, - { - "include-filter": "com.android.internal.inputmethod" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], + "name": "FrameworksCoreTests_inputmethod", "file_patterns": [ "core/java/com/android/internal/inputmethod/.*", "core/java/android/view/inputmethod/.*", diff --git a/core/api/Android.bp b/core/api/Android.bp index 77594b758d19..06eea52881ea 100644 --- a/core/api/Android.bp +++ b/core/api/Android.bp @@ -100,50 +100,50 @@ filegroup { // Exportable stub artifacts filegroup { name: "non-updatable-exportable-current.txt", - srcs: [":api-stubs-docs-non-updatable{.exportable.api.txt}"], + device_common_srcs: [":api-stubs-docs-non-updatable{.exportable.api.txt}"], } filegroup { name: "non-updatable-exportable-removed.txt", - srcs: [":api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], + device_common_srcs: [":api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], } filegroup { name: "non-updatable-exportable-system-current.txt", - srcs: [":system-api-stubs-docs-non-updatable{.exportable.api.txt}"], + device_common_srcs: [":system-api-stubs-docs-non-updatable{.exportable.api.txt}"], } filegroup { name: "non-updatable-exportable-system-removed.txt", - srcs: [":system-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], + device_common_srcs: [":system-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], } filegroup { name: "non-updatable-exportable-module-lib-current.txt", - srcs: [":module-lib-api-stubs-docs-non-updatable{.exportable.api.txt}"], + device_common_srcs: [":module-lib-api-stubs-docs-non-updatable{.exportable.api.txt}"], } filegroup { name: "non-updatable-exportable-module-lib-removed.txt", - srcs: [":module-lib-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], + device_common_srcs: [":module-lib-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], } filegroup { name: "non-updatable-exportable-test-current.txt", - srcs: [":test-api-stubs-docs-non-updatable{.exportable.api.txt}"], + device_common_srcs: [":test-api-stubs-docs-non-updatable{.exportable.api.txt}"], } filegroup { name: "non-updatable-exportable-test-removed.txt", - srcs: [":test-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], + device_common_srcs: [":test-api-stubs-docs-non-updatable{.exportable.removed-api.txt}"], } filegroup { name: "non-updatable-exportable-system-server-current.txt", - srcs: [":services-non-updatable-stubs{.exportable.api.txt}"], + device_common_srcs: [":services-non-updatable-stubs{.exportable.api.txt}"], } filegroup { name: "non-updatable-exportable-system-server-removed.txt", - srcs: [":services-non-updatable-stubs{.exportable.removed-api.txt}"], + device_common_srcs: [":services-non-updatable-stubs{.exportable.removed-api.txt}"], } diff --git a/core/api/current.txt b/core/api/current.txt index 245d12df8eca..d6b8a518b8f6 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -8596,7 +8596,7 @@ package android.app.admin { field public static final int TAG_ADB_SHELL_CMD = 210002; // 0x33452 field public static final int TAG_ADB_SHELL_INTERACTIVE = 210001; // 0x33451 field public static final int TAG_APP_PROCESS_START = 210005; // 0x33455 - field @FlaggedApi("android.app.admin.flags.backup_service_security_log_event_enabled") public static final int TAG_BACKUP_SERVICE_TOGGLED = 210044; // 0x3347c + field public static final int TAG_BACKUP_SERVICE_TOGGLED = 210044; // 0x3347c field public static final int TAG_BLUETOOTH_CONNECTION = 210039; // 0x33477 field public static final int TAG_BLUETOOTH_DISCONNECTION = 210040; // 0x33478 field public static final int TAG_CAMERA_POLICY_SET = 210034; // 0x33472 @@ -8619,6 +8619,8 @@ package android.app.admin { field public static final int TAG_MAX_SCREEN_LOCK_TIMEOUT_SET = 210019; // 0x33463 field public static final int TAG_MEDIA_MOUNT = 210013; // 0x3345d field public static final int TAG_MEDIA_UNMOUNT = 210014; // 0x3345e + field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_DISABLED = 210046; // 0x3347e + field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_ENABLED = 210045; // 0x3347d field public static final int TAG_OS_SHUTDOWN = 210010; // 0x3345a field public static final int TAG_OS_STARTUP = 210009; // 0x33459 field public static final int TAG_PACKAGE_INSTALLED = 210041; // 0x33479 @@ -10738,6 +10740,7 @@ package android.content { field public static final String IPSEC_SERVICE = "ipsec"; field public static final String JOB_SCHEDULER_SERVICE = "jobscheduler"; field public static final String KEYGUARD_SERVICE = "keyguard"; + field @FlaggedApi("android.security.keystore_grant_api") public static final String KEYSTORE_SERVICE = "keystore"; field public static final String LAUNCHER_APPS_SERVICE = "launcherapps"; field @UiContext public static final String LAYOUT_INFLATER_SERVICE = "layout_inflater"; field public static final String LOCALE_SERVICE = "locale"; @@ -12161,6 +12164,7 @@ package android.content.pm { method public int getMemtagMode(); method public int getNativeHeapZeroInitialized(); method public int getRequestRawExternalStorageAccess(); + method @FlaggedApi("android.content.pm.audio_playback_capture_allowance") public boolean isAudioPlaybackCaptureAllowed(); method public boolean isProfileable(); method public boolean isProfileableByShell(); method public boolean isResourceOverlay(); @@ -16228,6 +16232,7 @@ package android.graphics { field public static final int UNKNOWN = 0; // 0x0 field public static final int Y8 = 538982489; // 0x20203859 field public static final int YCBCR_P010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c field public static final int YUV_420_888 = 35; // 0x23 field public static final int YUV_422_888 = 39; // 0x27 field public static final int YUV_444_888 = 40; // 0x28 @@ -18576,6 +18581,7 @@ package android.hardware { field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L field public static final int YCBCR_420_888 = 35; // 0x23 field public static final int YCBCR_P010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c } @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public final class OverlayProperties implements android.os.Parcelable { @@ -20396,23 +20402,23 @@ package android.hardware.fingerprint { method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.USE_BIOMETRIC, android.Manifest.permission.USE_FINGERPRINT}) public void authenticate(@Nullable android.hardware.fingerprint.FingerprintManager.CryptoObject, @Nullable android.os.CancellationSignal, int, @NonNull android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, @Nullable android.os.Handler); method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean hasEnrolledFingerprints(); method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean isHardwareDetected(); - field public static final int FINGERPRINT_ACQUIRED_GOOD = 0; // 0x0 - field public static final int FINGERPRINT_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 - field public static final int FINGERPRINT_ACQUIRED_INSUFFICIENT = 2; // 0x2 - field public static final int FINGERPRINT_ACQUIRED_PARTIAL = 1; // 0x1 - field public static final int FINGERPRINT_ACQUIRED_TOO_FAST = 5; // 0x5 - field public static final int FINGERPRINT_ACQUIRED_TOO_SLOW = 4; // 0x4 - field public static final int FINGERPRINT_ERROR_CANCELED = 5; // 0x5 - field public static final int FINGERPRINT_ERROR_HW_NOT_PRESENT = 12; // 0xc - field public static final int FINGERPRINT_ERROR_HW_UNAVAILABLE = 1; // 0x1 - field public static final int FINGERPRINT_ERROR_LOCKOUT = 7; // 0x7 - field public static final int FINGERPRINT_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 - field public static final int FINGERPRINT_ERROR_NO_FINGERPRINTS = 11; // 0xb - field public static final int FINGERPRINT_ERROR_NO_SPACE = 4; // 0x4 - field public static final int FINGERPRINT_ERROR_TIMEOUT = 3; // 0x3 - field public static final int FINGERPRINT_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 - field public static final int FINGERPRINT_ERROR_USER_CANCELED = 10; // 0xa - field public static final int FINGERPRINT_ERROR_VENDOR = 8; // 0x8 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_GOOD = 0; // 0x0 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_INSUFFICIENT = 2; // 0x2 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_PARTIAL = 1; // 0x1 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_FAST = 5; // 0x5 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_SLOW = 4; // 0x4 + field @Deprecated public static final int FINGERPRINT_ERROR_CANCELED = 5; // 0x5 + field @Deprecated public static final int FINGERPRINT_ERROR_HW_NOT_PRESENT = 12; // 0xc + field @Deprecated public static final int FINGERPRINT_ERROR_HW_UNAVAILABLE = 1; // 0x1 + field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT = 7; // 0x7 + field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 + field @Deprecated public static final int FINGERPRINT_ERROR_NO_FINGERPRINTS = 11; // 0xb + field @Deprecated public static final int FINGERPRINT_ERROR_NO_SPACE = 4; // 0x4 + field @Deprecated public static final int FINGERPRINT_ERROR_TIMEOUT = 3; // 0x3 + field @Deprecated public static final int FINGERPRINT_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 + field @Deprecated public static final int FINGERPRINT_ERROR_USER_CANCELED = 10; // 0xa + field @Deprecated public static final int FINGERPRINT_ERROR_VENDOR = 8; // 0x8 } @Deprecated public abstract static class FingerprintManager.AuthenticationCallback { @@ -21308,6 +21314,7 @@ package android.media { field public static final int ENCODING_AAC_XHE = 16; // 0x10 field public static final int ENCODING_AC3 = 5; // 0x5 field public static final int ENCODING_AC4 = 17; // 0x11 + field @FlaggedApi("android.media.audio.dolby_ac4_level4_encoding_api") public static final int ENCODING_AC4_L4 = 32; // 0x20 field public static final int ENCODING_DEFAULT = 1; // 0x1 field public static final int ENCODING_DOLBY_MAT = 19; // 0x13 field public static final int ENCODING_DOLBY_TRUEHD = 14; // 0xe @@ -22656,6 +22663,7 @@ package android.media { method public void onCryptoError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CryptoException); method public abstract void onError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CodecException); method public abstract void onInputBufferAvailable(@NonNull android.media.MediaCodec, int); + method @FlaggedApi("android.media.codec.subsession_metrics") public void onMetricsFlushed(@NonNull android.media.MediaCodec, @NonNull android.os.PersistableBundle); method public abstract void onOutputBufferAvailable(@NonNull android.media.MediaCodec, int, @NonNull android.media.MediaCodec.BufferInfo); method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void onOutputBuffersAvailable(@NonNull android.media.MediaCodec, int, @NonNull java.util.ArrayDeque<android.media.MediaCodec.BufferInfo>); method public abstract void onOutputFormatChanged(@NonNull android.media.MediaCodec, @NonNull android.media.MediaFormat); @@ -22866,6 +22874,7 @@ package android.media { field public static final int COLOR_FormatYUV444Flexible = 2135181448; // 0x7f444888 field @Deprecated public static final int COLOR_FormatYUV444Interleaved = 29; // 0x1d field public static final int COLOR_FormatYUVP010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int COLOR_FormatYUVP210 = 60; // 0x3c field @Deprecated public static final int COLOR_QCOM_FormatYUV420SemiPlanar = 2141391872; // 0x7fa30c00 field @Deprecated public static final int COLOR_TI_FormatYUV420PackedSemiPlanar = 2130706688; // 0x7f000100 field public static final String FEATURE_AdaptivePlayback = "adaptive-playback"; @@ -22912,6 +22921,65 @@ package android.media { field public static final int AC4Profile11 = 514; // 0x202 field public static final int AC4Profile21 = 1026; // 0x402 field public static final int AC4Profile22 = 1028; // 0x404 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band0 = 513; // 0x201 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band1 = 514; // 0x202 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band2 = 516; // 0x204 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band3 = 520; // 0x208 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band0 = 257; // 0x101 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band1 = 258; // 0x102 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band2 = 260; // 0x104 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band3 = 264; // 0x108 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band0 = 2049; // 0x801 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band1 = 2050; // 0x802 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band2 = 2052; // 0x804 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band3 = 2056; // 0x808 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band0 = 1025; // 0x401 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band1 = 1026; // 0x402 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band2 = 1028; // 0x404 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band3 = 1032; // 0x408 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band0 = 8193; // 0x2001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band1 = 8194; // 0x2002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band2 = 8196; // 0x2004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band3 = 8200; // 0x2008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band0 = 4097; // 0x1001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band1 = 4098; // 0x1002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band2 = 4100; // 0x1004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band3 = 4104; // 0x1008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band0 = 32769; // 0x8001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band1 = 32770; // 0x8002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band2 = 32772; // 0x8004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band3 = 32776; // 0x8008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band0 = 16385; // 0x4001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band1 = 16386; // 0x4002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band2 = 16388; // 0x4004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band3 = 16392; // 0x4008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band0 = 131073; // 0x20001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band1 = 131074; // 0x20002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band2 = 131076; // 0x20004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band3 = 131080; // 0x20008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band0 = 65537; // 0x10001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band1 = 65538; // 0x10002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band2 = 65540; // 0x10004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band3 = 65544; // 0x10008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band0 = 524289; // 0x80001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band1 = 524290; // 0x80002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band2 = 524292; // 0x80004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band3 = 524296; // 0x80008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band0 = 262145; // 0x40001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band1 = 262146; // 0x40002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band2 = 262148; // 0x40004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band3 = 262152; // 0x40008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band0 = 2097153; // 0x200001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band1 = 2097154; // 0x200002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band2 = 2097156; // 0x200004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band3 = 2097160; // 0x200008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band0 = 1048577; // 0x100001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band1 = 1048578; // 0x100002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band2 = 1048580; // 0x100004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band3 = 1048584; // 0x100008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10 = 1; // 0x1 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10 = 4096; // 0x1000 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10Plus = 8192; // 0x2000 field public static final int AV1Level2 = 1; // 0x1 field public static final int AV1Level21 = 2; // 0x2 field public static final int AV1Level22 = 4; // 0x4 @@ -23687,6 +23755,7 @@ package android.media { field public static final String KEY_MPEGH_COMPATIBLE_SETS = "mpegh-compatible-sets"; field public static final String KEY_MPEGH_PROFILE_LEVEL_INDICATION = "mpegh-profile-level-indication"; field public static final String KEY_MPEGH_REFERENCE_CHANNEL_LAYOUT = "mpegh-reference-channel-layout"; + field @FlaggedApi("android.media.codec.num_input_slots") public static final String KEY_NUM_SLOTS = "num-slots"; field public static final String KEY_OPERATING_RATE = "operating-rate"; field public static final String KEY_OUTPUT_REORDER_DEPTH = "output-reorder-depth"; field public static final String KEY_PCM_ENCODING = "pcm-encoding"; @@ -23762,6 +23831,7 @@ package android.media { field public static final String MIMETYPE_TEXT_CEA_708 = "text/cea-708"; field public static final String MIMETYPE_TEXT_SUBRIP = "application/x-subrip"; field public static final String MIMETYPE_TEXT_VTT = "text/vtt"; + field @FlaggedApi("android.media.codec.apv_support") public static final String MIMETYPE_VIDEO_APV = "video/apv"; field public static final String MIMETYPE_VIDEO_AV1 = "video/av01"; field public static final String MIMETYPE_VIDEO_AVC = "video/avc"; field public static final String MIMETYPE_VIDEO_DOLBY_VISION = "video/dolby-vision"; @@ -26811,7 +26881,6 @@ package android.media.session { field public static final int STATE_FAST_FORWARDING = 4; // 0x4 field public static final int STATE_NONE = 0; // 0x0 field public static final int STATE_PAUSED = 2; // 0x2 - field @FlaggedApi("com.android.media.flags.enable_notifying_activity_manager_with_media_session_status_change") public static final int STATE_PLAYBACK_SUPPRESSED = 12; // 0xc field public static final int STATE_PLAYING = 3; // 0x3 field public static final int STATE_REWINDING = 5; // 0x5 field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa @@ -32570,6 +32639,13 @@ package android.os { method public boolean isCharging(); field public static final String ACTION_CHARGING = "android.os.action.CHARGING"; field public static final String ACTION_DISCHARGING = "android.os.action.DISCHARGING"; + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_CRITICAL = 1; // 0x1 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_FULL = 5; // 0x5 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_HIGH = 4; // 0x4 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_LOW = 2; // 0x2 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_NORMAL = 3; // 0x3 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNKNOWN = 0; // 0x0 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNSUPPORTED = -1; // 0xffffffff field public static final int BATTERY_HEALTH_COLD = 7; // 0x7 field public static final int BATTERY_HEALTH_DEAD = 4; // 0x4 field public static final int BATTERY_HEALTH_GOOD = 2; // 0x2 @@ -32594,6 +32670,7 @@ package android.os { field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4 field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1 field public static final String EXTRA_BATTERY_LOW = "battery_low"; + field @FlaggedApi("android.os.battery_part_status_api") public static final String EXTRA_CAPACITY_LEVEL = "android.os.extra.CAPACITY_LEVEL"; field public static final String EXTRA_CHARGING_STATUS = "android.os.extra.CHARGING_STATUS"; field public static final String EXTRA_CYCLE_COUNT = "android.os.extra.CYCLE_COUNT"; field public static final String EXTRA_HEALTH = "health"; @@ -33184,6 +33261,7 @@ package android.os { } public interface IBinder { + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default void addFrozenStateChangeCallback(@NonNull android.os.IBinder.FrozenStateChangeCallback) throws android.os.RemoteException; method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; method @Nullable public String getInterfaceDescriptor() throws android.os.RemoteException; @@ -33192,6 +33270,7 @@ package android.os { method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int) throws android.os.RemoteException; method public boolean pingBinder(); method @Nullable public android.os.IInterface queryLocalInterface(@NonNull String); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default boolean removeFrozenStateChangeCallback(@NonNull android.os.IBinder.FrozenStateChangeCallback); method public boolean transact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; method public boolean unlinkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); field public static final int DUMP_TRANSACTION = 1598311760; // 0x5f444d50 @@ -33209,6 +33288,12 @@ package android.os { method public default void binderDied(@NonNull android.os.IBinder); } + @FlaggedApi("android.os.binder_frozen_state_change_callback") public static interface IBinder.FrozenStateChangeCallback { + method public void onFrozenStateChanged(@NonNull android.os.IBinder, int); + field public static final int STATE_FROZEN = 0; // 0x0 + field public static final int STATE_UNFROZEN = 1; // 0x1 + } + public interface IInterface { method public android.os.IBinder asBinder(); } @@ -36252,9 +36337,9 @@ package android.provider { method @Deprecated public static int getTypeLabelResource(int); field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/im"; field @Deprecated public static final String CUSTOM_PROTOCOL = "data6"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; field @Deprecated public static final String PROTOCOL = "data5"; field @Deprecated public static final int PROTOCOL_AIM = 0; // 0x0 field @Deprecated public static final int PROTOCOL_CUSTOM = -1; // 0xffffffff @@ -36387,9 +36472,9 @@ package android.provider { method @Deprecated public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); method @Deprecated public static int getTypeLabelResource(int); field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sip_address"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; field @Deprecated public static final String SIP_ADDRESS = "data1"; field @Deprecated public static final int TYPE_HOME = 1; // 0x1 field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 @@ -39927,6 +40012,14 @@ package android.security.keystore { method @NonNull public android.security.keystore.KeyProtection.Builder setUserPresenceRequired(boolean); } + @FlaggedApi("android.security.keystore_grant_api") public final class KeyStoreManager { + method @NonNull public java.util.List<java.security.cert.X509Certificate> getGrantedCertificateChainFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method @NonNull public java.security.Key getGrantedKeyFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method @NonNull public java.security.KeyPair getGrantedKeyPairFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method public long grantKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; + method public void revokeKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; + } + public class SecureKeyImportUnavailableException extends java.security.ProviderException { ctor public SecureKeyImportUnavailableException(); ctor public SecureKeyImportUnavailableException(String); diff --git a/core/api/module-lib-current.txt b/core/api/module-lib-current.txt index 0ab2588dd87e..0b891f6e0a71 100644 --- a/core/api/module-lib-current.txt +++ b/core/api/module-lib-current.txt @@ -102,6 +102,7 @@ package android.content { method @NonNull public android.os.UserHandle getUser(); field public static final String PAC_PROXY_SERVICE = "pac_proxy"; field public static final String TEST_NETWORK_SERVICE = "test_network"; + field @FlaggedApi("android.os.mainline_vcn_platform_api") public static final String VCN_MANAGEMENT_SERVICE = "vcn_management"; field @FlaggedApi("android.webkit.update_service_ipc_wrapper") public static final String WEBVIEW_UPDATE_SERVICE = "webviewupdate"; } @@ -271,12 +272,12 @@ package android.net { method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public boolean isUidRestrictedOnMeteredNetworks(int); method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyStatsProviderLimitReached(); method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyStatsProviderWarningReached(); - method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable java.util.concurrent.Executor, @NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); - method @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); + method @Deprecated @FlaggedApi("android.net.platform.flags.deprecate_network_policy_callback") @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable java.util.concurrent.Executor, @NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); + method @Deprecated @FlaggedApi("android.net.platform.flags.deprecate_network_policy_callback") @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull android.net.NetworkPolicyManager.NetworkPolicyCallback); } - public static interface NetworkPolicyManager.NetworkPolicyCallback { - method public default void onUidBlockedReasonChanged(int, int); + @Deprecated @FlaggedApi("android.net.platform.flags.deprecate_network_policy_callback") public static interface NetworkPolicyManager.NetworkPolicyCallback { + method @Deprecated public default void onUidBlockedReasonChanged(int, int); } public class NetworkWatchlistManager { @@ -380,6 +381,12 @@ package android.os { method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") @NonNull public static java.io.File getDataSystemDeDirectory(); } + public class Handler { + method @FlaggedApi("android.os.mainline_vcn_platform_api") public final boolean hasMessagesOrCallbacks(); + method @FlaggedApi("android.os.mainline_vcn_platform_api") public final void removeCallbacksAndEqualMessages(@Nullable Object); + method @FlaggedApi("android.os.mainline_vcn_platform_api") public final void removeEqualMessages(int, @Nullable Object); + } + public class IpcDataCache<Query, Result> { ctor public IpcDataCache(int, @NonNull String, @NonNull String, @NonNull String, @NonNull android.os.IpcDataCache.QueryHandler<Query,Result>); method public void disableForCurrentProcess(); @@ -591,6 +598,7 @@ package android.telephony { public class TelephonyManager { method @NonNull public static int[] getAllNetworkTypes(); + method @FlaggedApi("android.os.mainline_vcn_platform_api") @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Set<java.lang.String> getPackagesWithCarrierPrivileges(); } } diff --git a/core/api/removed.txt b/core/api/removed.txt index 3c7c0d6e6ea1..a3cab291a1de 100644 --- a/core/api/removed.txt +++ b/core/api/removed.txt @@ -82,12 +82,12 @@ package android.database { package android.graphics { @Deprecated public class AvoidXfermode extends android.graphics.Xfermode { - ctor public AvoidXfermode(int, int, android.graphics.AvoidXfermode.Mode); + ctor @Deprecated public AvoidXfermode(int, int, android.graphics.AvoidXfermode.Mode); } - public enum AvoidXfermode.Mode { - enum_constant public static final android.graphics.AvoidXfermode.Mode AVOID; - enum_constant public static final android.graphics.AvoidXfermode.Mode TARGET; + @Deprecated public enum AvoidXfermode.Mode { + enum_constant @Deprecated public static final android.graphics.AvoidXfermode.Mode AVOID; + enum_constant @Deprecated public static final android.graphics.AvoidXfermode.Mode TARGET; } public class Canvas { @@ -102,9 +102,9 @@ package android.graphics { } @Deprecated public class LayerRasterizer extends android.graphics.Rasterizer { - ctor public LayerRasterizer(); - method public void addLayer(android.graphics.Paint, float, float); - method public void addLayer(android.graphics.Paint); + ctor @Deprecated public LayerRasterizer(); + method @Deprecated public void addLayer(android.graphics.Paint, float, float); + method @Deprecated public void addLayer(android.graphics.Paint); } public class Paint { @@ -118,7 +118,7 @@ package android.graphics { } @Deprecated public class PixelXorXfermode extends android.graphics.Xfermode { - ctor public PixelXorXfermode(int); + ctor @Deprecated public PixelXorXfermode(int); } public class Rasterizer { @@ -170,14 +170,14 @@ package android.media.tv { package android.net { @Deprecated public class NetworkBadging { - method @NonNull public static android.graphics.drawable.Drawable getWifiIcon(@IntRange(from=0, to=4) int, int, @Nullable android.content.res.Resources.Theme); - field public static final int BADGING_4K = 30; // 0x1e - field public static final int BADGING_HD = 20; // 0x14 - field public static final int BADGING_NONE = 0; // 0x0 - field public static final int BADGING_SD = 10; // 0xa + method @Deprecated @NonNull public static android.graphics.drawable.Drawable getWifiIcon(@IntRange(from=0, to=4) int, int, @Nullable android.content.res.Resources.Theme); + field @Deprecated public static final int BADGING_4K = 30; // 0x1e + field @Deprecated public static final int BADGING_HD = 20; // 0x14 + field @Deprecated public static final int BADGING_NONE = 0; // 0x0 + field @Deprecated public static final int BADGING_SD = 10; // 0xa } - @IntDef({0x0, 0xa, 0x14, 0x1e}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface NetworkBadging.Badging { + @Deprecated @IntDef({0x0, 0xa, 0x14, 0x1e}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface NetworkBadging.Badging { } public final class Proxy { @@ -304,14 +304,14 @@ package android.provider { @Deprecated public static final class ContactsContract.RawContacts.StreamItems implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemsColumns { field @Deprecated public static final String CONTENT_DIRECTORY = "stream_items"; - field public static final String _COUNT = "_count"; - field public static final String _ID = "_id"; + field @Deprecated public static final String _COUNT = "_count"; + field @Deprecated public static final String _ID = "_id"; } @Deprecated public static final class ContactsContract.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns { field @Deprecated public static final String PHOTO = "photo"; - field public static final String _COUNT = "_count"; - field public static final String _ID = "_id"; + field @Deprecated public static final String _COUNT = "_count"; + field @Deprecated public static final String _ID = "_id"; } @Deprecated protected static interface ContactsContract.StreamItemPhotosColumns { @@ -332,16 +332,16 @@ package android.provider { field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item"; field @Deprecated public static final android.net.Uri CONTENT_URI; field @Deprecated public static final String MAX_ITEMS = "max_items"; - field public static final String _COUNT = "_count"; - field public static final String _ID = "_id"; + field @Deprecated public static final String _COUNT = "_count"; + field @Deprecated public static final String _ID = "_id"; } @Deprecated public static final class ContactsContract.StreamItems.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns { field @Deprecated public static final String CONTENT_DIRECTORY = "photo"; field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item_photo"; field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item_photo"; - field public static final String _COUNT = "_count"; - field public static final String _ID = "_id"; + field @Deprecated public static final String _COUNT = "_count"; + field @Deprecated public static final String _ID = "_id"; } @Deprecated protected static interface ContactsContract.StreamItemsColumns { @@ -447,14 +447,14 @@ package android.text.style { package android.util { @Deprecated public class FloatMath { - method public static float ceil(float); - method public static float cos(float); - method public static float exp(float); - method public static float floor(float); - method public static float hypot(float, float); - method public static float pow(float, float); - method public static float sin(float); - method public static float sqrt(float); + method @Deprecated public static float ceil(float); + method @Deprecated public static float cos(float); + method @Deprecated public static float exp(float); + method @Deprecated public static float floor(float); + method @Deprecated public static float hypot(float, float); + method @Deprecated public static float pow(float, float); + method @Deprecated public static float sin(float); + method @Deprecated public static float sqrt(float); } } diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 91dbd0e157c4..1019ce80c34d 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -3802,6 +3802,7 @@ package android.content { field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String ON_DEVICE_INTELLIGENCE_SERVICE = "on_device_intelligence"; field public static final String PERMISSION_CONTROLLER_SERVICE = "permission_controller"; field public static final String PERMISSION_SERVICE = "permission"; + field @FlaggedApi("com.android.ranging.flags.ranging_stack_enabled") public static final String RANGING_SERVICE = "ranging"; field public static final String REBOOT_READINESS_SERVICE = "reboot_readiness"; field public static final String ROLLBACK_SERVICE = "rollback"; field public static final String SAFETY_CENTER_SERVICE = "safety_center"; @@ -11922,6 +11923,7 @@ package android.provider { field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION"; field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS"; field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS"; + field @FlaggedApi("android.nfc.nfc_action_manage_services_settings") public static final String ACTION_MANAGE_OTHER_NFC_SERVICES_SETTINGS = "android.settings.MANAGE_OTHER_NFC_SERVICES_SETTINGS"; field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS"; field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE"; field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS"; diff --git a/core/api/system-removed.txt b/core/api/system-removed.txt index bbfa0ec3f3c2..78b9994e8fa1 100644 --- a/core/api/system-removed.txt +++ b/core/api/system-removed.txt @@ -7,8 +7,8 @@ package android.app { } @Deprecated public abstract static class AppOpsManager.AppOpsCollector extends android.app.AppOpsManager.OnOpNotedCallback { - ctor public AppOpsManager.AppOpsCollector(); - method @NonNull public java.util.concurrent.Executor getAsyncNotedExecutor(); + ctor @Deprecated public AppOpsManager.AppOpsCollector(); + method @Deprecated @NonNull public java.util.concurrent.Executor getAsyncNotedExecutor(); } public class Notification implements android.os.Parcelable { @@ -207,7 +207,7 @@ package android.service.translation { @Deprecated public static interface TranslationService.OnTranslationResultCallback { method @Deprecated public void onError(); - method public void onTranslationSuccess(@NonNull android.view.translation.TranslationResponse); + method @Deprecated public void onTranslationSuccess(@NonNull android.view.translation.TranslationResponse); } } @@ -261,64 +261,64 @@ package android.telephony.ims { } @Deprecated public final class SipDelegateImsConfiguration implements android.os.Parcelable { - method public boolean containsKey(@NonNull String); - method @NonNull public android.os.PersistableBundle copyBundle(); - method public int describeContents(); - method public boolean getBoolean(@NonNull String, boolean); - method public int getInt(@NonNull String, int); - method @Nullable public String getString(@NonNull String); - method public long getVersion(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDelegateImsConfiguration> CREATOR; - field public static final String IPTYPE_IPV4 = "IPV4"; - field public static final String IPTYPE_IPV6 = "IPV6"; - field public static final String KEY_SIP_CONFIG_AUTHENTICATION_HEADER_STRING = "sip_config_auhentication_header_string"; - field public static final String KEY_SIP_CONFIG_AUTHENTICATION_NONCE_STRING = "sip_config_authentication_nonce_string"; - field public static final String KEY_SIP_CONFIG_CELLULAR_NETWORK_INFO_HEADER_STRING = "sip_config_cellular_network_info_header_string"; - field public static final String KEY_SIP_CONFIG_HOME_DOMAIN_STRING = "sip_config_home_domain_string"; - field public static final String KEY_SIP_CONFIG_IMEI_STRING = "sip_config_imei_string"; - field public static final String KEY_SIP_CONFIG_IPTYPE_STRING = "sip_config_iptype_string"; - field public static final String KEY_SIP_CONFIG_IS_COMPACT_FORM_ENABLED_BOOL = "sip_config_is_compact_form_enabled_bool"; - field public static final String KEY_SIP_CONFIG_IS_GRUU_ENABLED_BOOL = "sip_config_is_gruu_enabled_bool"; - field public static final String KEY_SIP_CONFIG_IS_IPSEC_ENABLED_BOOL = "sip_config_is_ipsec_enabled_bool"; - field public static final String KEY_SIP_CONFIG_IS_KEEPALIVE_ENABLED_BOOL = "sip_config_is_keepalive_enabled_bool"; - field public static final String KEY_SIP_CONFIG_IS_NAT_ENABLED_BOOL = "sip_config_is_nat_enabled_bool"; - field public static final String KEY_SIP_CONFIG_MAX_PAYLOAD_SIZE_ON_UDP_INT = "sip_config_udp_max_payload_size_int"; - field public static final String KEY_SIP_CONFIG_PATH_HEADER_STRING = "sip_config_path_header_string"; - field public static final String KEY_SIP_CONFIG_P_ACCESS_NETWORK_INFO_HEADER_STRING = "sip_config_p_access_network_info_header_string"; - field public static final String KEY_SIP_CONFIG_P_ASSOCIATED_URI_HEADER_STRING = "sip_config_p_associated_uri_header_string"; - field public static final String KEY_SIP_CONFIG_P_LAST_ACCESS_NETWORK_INFO_HEADER_STRING = "sip_config_p_last_access_network_info_header_string"; - field public static final String KEY_SIP_CONFIG_SECURITY_VERIFY_HEADER_STRING = "sip_config_security_verify_header_string"; - field public static final String KEY_SIP_CONFIG_SERVER_DEFAULT_IPADDRESS_STRING = "sip_config_server_default_ipaddress_string"; - field public static final String KEY_SIP_CONFIG_SERVER_DEFAULT_PORT_INT = "sip_config_server_default_port_int"; - field public static final String KEY_SIP_CONFIG_SERVER_IPSEC_CLIENT_PORT_INT = "sip_config_server_ipsec_client_port_int"; - field public static final String KEY_SIP_CONFIG_SERVER_IPSEC_OLD_CLIENT_PORT_INT = "sip_config_server_ipsec_old_client_port_int"; - field public static final String KEY_SIP_CONFIG_SERVER_IPSEC_SERVER_PORT_INT = "sip_config_server_ipsec_server_port_int"; - field public static final String KEY_SIP_CONFIG_SERVICE_ROUTE_HEADER_STRING = "sip_config_service_route_header_string"; - field public static final String KEY_SIP_CONFIG_TRANSPORT_TYPE_STRING = "sip_config_protocol_type_string"; - field public static final String KEY_SIP_CONFIG_UE_DEFAULT_IPADDRESS_STRING = "sip_config_ue_default_ipaddress_string"; - field public static final String KEY_SIP_CONFIG_UE_DEFAULT_PORT_INT = "sip_config_ue_default_port_int"; - field public static final String KEY_SIP_CONFIG_UE_IPSEC_CLIENT_PORT_INT = "sip_config_ue_ipsec_client_port_int"; - field public static final String KEY_SIP_CONFIG_UE_IPSEC_OLD_CLIENT_PORT_INT = "sip_config_ue_ipsec_old_client_port_int"; - field public static final String KEY_SIP_CONFIG_UE_IPSEC_SERVER_PORT_INT = "sip_config_ue_ipsec_server_port_int"; - field public static final String KEY_SIP_CONFIG_UE_PRIVATE_USER_ID_STRING = "sip_config_ue_private_user_id_string"; - field public static final String KEY_SIP_CONFIG_UE_PUBLIC_GRUU_STRING = "sip_config_ue_public_gruu_string"; - field public static final String KEY_SIP_CONFIG_UE_PUBLIC_IPADDRESS_WITH_NAT_STRING = "sip_config_ue_public_ipaddress_with_nat_string"; - field public static final String KEY_SIP_CONFIG_UE_PUBLIC_PORT_WITH_NAT_INT = "sip_config_ue_public_port_with_nat_int"; - field public static final String KEY_SIP_CONFIG_UE_PUBLIC_USER_ID_STRING = "sip_config_ue_public_user_id_string"; - field public static final String KEY_SIP_CONFIG_URI_USER_PART_STRING = "sip_config_uri_user_part_string"; - field public static final String KEY_SIP_CONFIG_USER_AGENT_HEADER_STRING = "sip_config_sip_user_agent_header_string"; - field public static final String SIP_TRANSPORT_TCP = "TCP"; - field public static final String SIP_TRANSPORT_UDP = "UDP"; - } - - public static final class SipDelegateImsConfiguration.Builder { - ctor public SipDelegateImsConfiguration.Builder(int); - ctor public SipDelegateImsConfiguration.Builder(@NonNull android.telephony.ims.SipDelegateImsConfiguration); - method @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addBoolean(@NonNull String, boolean); - method @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addInt(@NonNull String, int); - method @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addString(@NonNull String, @NonNull String); - method @NonNull public android.telephony.ims.SipDelegateImsConfiguration build(); + method @Deprecated public boolean containsKey(@NonNull String); + method @Deprecated @NonNull public android.os.PersistableBundle copyBundle(); + method @Deprecated public int describeContents(); + method @Deprecated public boolean getBoolean(@NonNull String, boolean); + method @Deprecated public int getInt(@NonNull String, int); + method @Deprecated @Nullable public String getString(@NonNull String); + method @Deprecated public long getVersion(); + method @Deprecated public void writeToParcel(@NonNull android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDelegateImsConfiguration> CREATOR; + field @Deprecated public static final String IPTYPE_IPV4 = "IPV4"; + field @Deprecated public static final String IPTYPE_IPV6 = "IPV6"; + field @Deprecated public static final String KEY_SIP_CONFIG_AUTHENTICATION_HEADER_STRING = "sip_config_auhentication_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_AUTHENTICATION_NONCE_STRING = "sip_config_authentication_nonce_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_CELLULAR_NETWORK_INFO_HEADER_STRING = "sip_config_cellular_network_info_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_HOME_DOMAIN_STRING = "sip_config_home_domain_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_IMEI_STRING = "sip_config_imei_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_IPTYPE_STRING = "sip_config_iptype_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_IS_COMPACT_FORM_ENABLED_BOOL = "sip_config_is_compact_form_enabled_bool"; + field @Deprecated public static final String KEY_SIP_CONFIG_IS_GRUU_ENABLED_BOOL = "sip_config_is_gruu_enabled_bool"; + field @Deprecated public static final String KEY_SIP_CONFIG_IS_IPSEC_ENABLED_BOOL = "sip_config_is_ipsec_enabled_bool"; + field @Deprecated public static final String KEY_SIP_CONFIG_IS_KEEPALIVE_ENABLED_BOOL = "sip_config_is_keepalive_enabled_bool"; + field @Deprecated public static final String KEY_SIP_CONFIG_IS_NAT_ENABLED_BOOL = "sip_config_is_nat_enabled_bool"; + field @Deprecated public static final String KEY_SIP_CONFIG_MAX_PAYLOAD_SIZE_ON_UDP_INT = "sip_config_udp_max_payload_size_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_PATH_HEADER_STRING = "sip_config_path_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_P_ACCESS_NETWORK_INFO_HEADER_STRING = "sip_config_p_access_network_info_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_P_ASSOCIATED_URI_HEADER_STRING = "sip_config_p_associated_uri_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_P_LAST_ACCESS_NETWORK_INFO_HEADER_STRING = "sip_config_p_last_access_network_info_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_SECURITY_VERIFY_HEADER_STRING = "sip_config_security_verify_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVER_DEFAULT_IPADDRESS_STRING = "sip_config_server_default_ipaddress_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVER_DEFAULT_PORT_INT = "sip_config_server_default_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVER_IPSEC_CLIENT_PORT_INT = "sip_config_server_ipsec_client_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVER_IPSEC_OLD_CLIENT_PORT_INT = "sip_config_server_ipsec_old_client_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVER_IPSEC_SERVER_PORT_INT = "sip_config_server_ipsec_server_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_SERVICE_ROUTE_HEADER_STRING = "sip_config_service_route_header_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_TRANSPORT_TYPE_STRING = "sip_config_protocol_type_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_DEFAULT_IPADDRESS_STRING = "sip_config_ue_default_ipaddress_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_DEFAULT_PORT_INT = "sip_config_ue_default_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_IPSEC_CLIENT_PORT_INT = "sip_config_ue_ipsec_client_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_IPSEC_OLD_CLIENT_PORT_INT = "sip_config_ue_ipsec_old_client_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_IPSEC_SERVER_PORT_INT = "sip_config_ue_ipsec_server_port_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_PRIVATE_USER_ID_STRING = "sip_config_ue_private_user_id_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_PUBLIC_GRUU_STRING = "sip_config_ue_public_gruu_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_PUBLIC_IPADDRESS_WITH_NAT_STRING = "sip_config_ue_public_ipaddress_with_nat_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_PUBLIC_PORT_WITH_NAT_INT = "sip_config_ue_public_port_with_nat_int"; + field @Deprecated public static final String KEY_SIP_CONFIG_UE_PUBLIC_USER_ID_STRING = "sip_config_ue_public_user_id_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_URI_USER_PART_STRING = "sip_config_uri_user_part_string"; + field @Deprecated public static final String KEY_SIP_CONFIG_USER_AGENT_HEADER_STRING = "sip_config_sip_user_agent_header_string"; + field @Deprecated public static final String SIP_TRANSPORT_TCP = "TCP"; + field @Deprecated public static final String SIP_TRANSPORT_UDP = "UDP"; + } + + @Deprecated public static final class SipDelegateImsConfiguration.Builder { + ctor @Deprecated public SipDelegateImsConfiguration.Builder(int); + ctor @Deprecated public SipDelegateImsConfiguration.Builder(@NonNull android.telephony.ims.SipDelegateImsConfiguration); + method @Deprecated @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addBoolean(@NonNull String, boolean); + method @Deprecated @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addInt(@NonNull String, int); + method @Deprecated @NonNull public android.telephony.ims.SipDelegateImsConfiguration.Builder addString(@NonNull String, @NonNull String); + method @Deprecated @NonNull public android.telephony.ims.SipDelegateImsConfiguration build(); } } diff --git a/core/java/Android.bp b/core/java/Android.bp index fae411d495ca..3f6e65b95c93 100644 --- a/core/java/Android.bp +++ b/core/java/Android.bp @@ -19,11 +19,52 @@ filegroup { srcs: [ "**/*.java", "**/*.aidl", + ":systemfeatures-gen-srcs", ":framework-nfc-non-updatable-sources", + ":ranging_stack_mock_initializer", + ], + exclude_srcs: [ + "android/ranging/**/*.java", ], visibility: ["//frameworks/base"], } +//Mock to allow service registry for ranging stack. +//TODO(b/331206299): Remove this after RELEASE_RANGING_STACK is ramped up to next. +soong_config_module_type { + name: "ranging_stack_framework_mock_init", + module_type: "genrule", + config_namespace: "bootclasspath", + bool_variables: [ + "release_ranging_stack", + ], + properties: [ + "srcs", + "cmd", + "out", + ], +} + +// The actual RangingFrameworkInitializer is present in packages/modules/Uwb/ranging/framework. +// Mock RangingFrameworkInitializer does nothing and allows to successfully build +// SystemServiceRegistry after registering for system service in SystemServiceRegistry both with +// and without build flag RELEASE_RANGING_STACK enabled. +ranging_stack_framework_mock_init { + name: "ranging_stack_mock_initializer", + soong_config_variables: { + release_ranging_stack: { + cmd: "touch $(out)", + // Adding an empty file as out is mandatory. + out: ["android/ranging/empty_ranging_fw.txt"], + conditions_default: { + srcs: ["android/ranging/mock/RangingFrameworkInitializer.java"], + cmd: "mkdir -p android/ranging/; cp $(in) $(out);", + out: ["android/ranging/RangingFrameworkInitializer.java"], + }, + }, + }, +} + aidl_library { name: "IDropBoxManagerService_aidl", srcs: [ @@ -597,3 +638,44 @@ java_library { } // protolog end + +// Whether to enable read-only system feature codegen. +gen_readonly_feature_apis = select(release_flag("RELEASE_USE_SYSTEM_FEATURE_BUILD_FLAGS"), { + true: "true", + false: "false", + default: "false", +}) + +// Generates com.android.internal.pm.RoSystemFeatures, optionally compiling in +// details about fixed system features defined by build flags. When disabled, +// the APIs are simply passthrough stubs with no meaningful side effects. +// TODO(b/203143243): Implement the `--feature=` aggregation directly with a native soong module. +genrule { + name: "systemfeatures-gen-srcs", + cmd: "$(location systemfeatures-gen-tool) com.android.internal.pm.RoSystemFeatures " + + // --readonly=false (default) makes the codegen an effective no-op passthrough API. + " --readonly=" + gen_readonly_feature_apis + + " --feature=AUTOMOTIVE:" + select(release_flag("RELEASE_SYSTEM_FEATURE_AUTOMOTIVE"), { + any @ value: value, + default: "", + }) + " --feature=EMBEDDED:" + select(release_flag("RELEASE_SYSTEM_FEATURE_EMBEDDED"), { + any @ value: value, + default: "", + }) + " --feature=LEANBACK:" + select(release_flag("RELEASE_SYSTEM_FEATURE_LEANBACK"), { + any @ value: value, + default: "", + }) + " --feature=PC:" + select(release_flag("RELEASE_SYSTEM_FEATURE_PC"), { + any @ value: value, + default: "", + }) + " --feature=TELEVISION:" + select(release_flag("RELEASE_SYSTEM_FEATURE_TELEVISION"), { + any @ value: value, + default: "", + }) + " --feature=WATCH:" + select(release_flag("RELEASE_SYSTEM_FEATURE_WATCH"), { + any @ value: value, + default: "", + }) + " > $(out)", + out: [ + "RoSystemFeatures.java", + ], + tools: ["systemfeatures-gen-tool"], +} diff --git a/core/java/android/animation/OWNERS b/core/java/android/animation/OWNERS index f3b330a02116..5223c870824c 100644 --- a/core/java/android/animation/OWNERS +++ b/core/java/android/animation/OWNERS @@ -3,3 +3,4 @@ romainguy@google.com tianliu@google.com adamp@google.com +mount@google.com diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index b384326201fc..5e69ec186bdb 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -6188,7 +6188,7 @@ public final class ActivityThread extends ClientTransactionHandler } r.activity.mConfigChangeFlags |= configChanges; - r.mPreserveWindow = tmp.mPreserveWindow; + r.mPreserveWindow = r.activity.mWindowAdded && tmp.mPreserveWindow; r.activity.mChangingConfigurations = true; @@ -7236,6 +7236,8 @@ public final class ActivityThread extends ClientTransactionHandler } } + VMDebug.setUserId(UserHandle.myUserId()); + VMDebug.addApplication(data.appInfo.packageName); // send up app name; do this *before* waiting for debugger Process.setArgV0(data.processName); android.ddm.DdmHandleAppName.setAppName(data.processName, @@ -7758,9 +7760,20 @@ public final class ActivityThread extends ClientTransactionHandler file.getParentFile().mkdirs(); Debug.startMethodTracing(file.toString(), 8 * 1024 * 1024); } + + if (ii.packageName != null) { + VMDebug.addApplication(ii.packageName); + } } private void handleFinishInstrumentationWithoutRestart() { + LoadedApk loadedApk = getApplication().mLoadedApk; + // Only remove instrumentation app if this was not a self-testing app. + if (mInstrumentationPackageName != null && loadedApk != null && !mInstrumentationPackageName + .equals(loadedApk.mPackageName)) { + VMDebug.removeApplication(mInstrumentationPackageName); + } + mInstrumentation.onDestroy(); mInstrumentationPackageName = null; mInstrumentationAppDir = null; @@ -8794,6 +8807,11 @@ public final class ActivityThread extends ClientTransactionHandler return false; } + void addApplication(@NonNull Application app) { + mAllApplications.add(app); + VMDebug.addApplication(app.mLoadedApk.mPackageName); + } + @Override public boolean isInDensityCompatMode() { return mDensityCompatMode; diff --git a/core/java/android/app/AppOps.md b/core/java/android/app/AppOps.md index 7b11a0351ebe..535d62ce033e 100644 --- a/core/java/android/app/AppOps.md +++ b/core/java/android/app/AppOps.md @@ -119,20 +119,20 @@ those. In addition to proc state, the `AppOpsService` also receives process capability update from the `ActivityManagerService`. Proc capability specifies what while-in-use(`MODE_FOREGROUND`) operations the proc is allowed to perform in its current proc state. There are three proc capabilities - defined so far: + defined so far: `PROCESS_CAPABILITY_FOREGROUND_LOCATION`, `PROCESS_CAPABILITY_FOREGROUND_CAMERA` and `PROCESS_CAPABILITY_FOREGROUND_MICROPHONE`, they correspond to the while-in-use operation of location, camera and microphone (microphone is `RECORD_AUDIO`). In `ActivityManagerService`, `PROCESS_STATE_TOP` and `PROCESS_STATE_PERSISTENT` have all three capabilities, `PROCESS_STATE_FOREGROUND_SERVICE` has capabilities defined by - `foregroundServiceType` that is specified in foreground service's manifest file. A client process + `foregroundServiceType` that is specified in foreground service's manifest file. A client process can pass its capabilities to service using `BIND_INCLUDE_CAPABILITIES` flag. The proc state and capability are used for two use cases: Firstly, Tracking remembers the proc state for each tracked event. Secondly, `noteOp`/`checkOp` calls for app-op that are set to `MODE_FOREGROUND` are translated using the `AppOpsService.UidState.evalMode` method into - `MODE_ALLOWED` when the app has the capability and `MODE_IGNORED` when the app does not have the + `MODE_ALLOWED` when the app has the capability and `MODE_IGNORED` when the app does not have the capability. `checkOpRaw` calls are not affected. The current proc state and capability for an app can be read from `dumpsys appops`. @@ -284,7 +284,7 @@ indicating what code accesses what private data. ##### Self data accesses This is similar to the [synchronous data access](#synchronous-data-accesses) case only that the data -provider and client are in the same process. In this case Android's RPC code is no involved and +provider and client are in the same process. In this case Android's RPC code is not involved and `AppOpsManager.noteOp` directly triggers `OnOpNotedCallback.onSelfNoted`. This should be a uncommon case as it is uncommon for an app to provide data, esp. to itself. diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java index 2313fa27afe1..091d5ab8534d 100644 --- a/core/java/android/app/AppOpsManager.java +++ b/core/java/android/app/AppOpsManager.java @@ -2981,9 +2981,7 @@ public class AppOpsManager { new AppOpInfo.Builder(OP_ESTABLISH_VPN_MANAGER, OPSTR_ESTABLISH_VPN_MANAGER, "ESTABLISH_VPN_MANAGER").setDefaultMode(AppOpsManager.MODE_ALLOWED).build(), new AppOpInfo.Builder(OP_ACCESS_RESTRICTED_SETTINGS, OPSTR_ACCESS_RESTRICTED_SETTINGS, - "ACCESS_RESTRICTED_SETTINGS").setDefaultMode( - android.permission.flags.Flags.enhancedConfirmationModeApisEnabled() - ? MODE_DEFAULT : MODE_ALLOWED) + "ACCESS_RESTRICTED_SETTINGS").setDefaultMode(AppOpsManager.MODE_ALLOWED) .setDisableReset(true).setRestrictRead(true).build(), new AppOpInfo.Builder(OP_RECEIVE_AMBIENT_TRIGGER_AUDIO, OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO, "RECEIVE_SOUNDTRIGGER_AUDIO").setDefaultMode(AppOpsManager.MODE_ALLOWED) @@ -10195,6 +10193,9 @@ public class AppOpsManager { } p.writeInt(Parcel.EX_HAS_NOTED_APPOPS_REPLY_HEADER); + final int sizePosition = p.dataPosition(); + // Write size placeholder. With this size we can easily skip it in native. + p.writeInt(0); int numAttributionWithNotesAppOps = notedAppOps.size(); p.writeInt(numAttributionWithNotesAppOps); @@ -10211,6 +10212,12 @@ public class AppOpsManager { } } } + + final int payloadPosition = p.dataPosition(); + p.setDataPosition(sizePosition); + // Total header size including 4 bytes size itself. + p.writeInt(payloadPosition - sizePosition); + p.setDataPosition(payloadPosition); } /** @@ -10224,6 +10231,8 @@ public class AppOpsManager { * @hide */ public static void readAndLogNotedAppops(@NonNull Parcel p) { + // Skip size. + p.readInt(); int numAttributionsWithNotedAppOps = p.readInt(); for (int i = 0; i < numAttributionsWithNotedAppOps; i++) { diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java index 5956e2bde242..7a9553258006 100644 --- a/core/java/android/app/ApplicationPackageManager.java +++ b/core/java/android/app/ApplicationPackageManager.java @@ -129,6 +129,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.Immutable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.os.SomeArgs; +import com.android.internal.pm.RoSystemFeatures; import com.android.internal.util.UserIcons; import dalvik.system.VMRuntime; @@ -818,6 +819,16 @@ public class ApplicationPackageManager extends PackageManager { @Override public Boolean recompute(HasSystemFeatureQuery query) { try { + // As an optimization, check first to see if the feature was defined at + // compile-time as either available or unavailable. + // TODO(b/203143243): Consider hoisting this optimization out of the cache + // after the trunk stable (build) flag has soaked and more features are + // defined at compile-time. + Boolean maybeHasSystemFeature = + RoSystemFeatures.maybeHasFeature(query.name, query.version); + if (maybeHasSystemFeature != null) { + return maybeHasSystemFeature.booleanValue(); + } return ActivityThread.currentActivityThread().getPackageManager(). hasSystemFeature(query.name, query.version); } catch (RemoteException e) { diff --git a/core/java/android/app/IUiAutomationConnection.aidl b/core/java/android/app/IUiAutomationConnection.aidl index 69c3bd3976bc..0264f73f126d 100644..100755 --- a/core/java/android/app/IUiAutomationConnection.aidl +++ b/core/java/android/app/IUiAutomationConnection.aidl @@ -61,6 +61,8 @@ interface IUiAutomationConnection { oneway void shutdown(); void executeShellCommandWithStderr(String command, in ParcelFileDescriptor sink, in ParcelFileDescriptor source, in ParcelFileDescriptor stderrSink); + void executeShellCommandArrayWithStderr(in String[] command, in ParcelFileDescriptor sink, + in ParcelFileDescriptor source, in ParcelFileDescriptor stderrSink); List<String> getAdoptedShellPermissions(); void addOverridePermissionState(int uid, String permission, int result); void removeOverridePermissionState(int uid, String permission); diff --git a/core/java/android/app/Instrumentation.java b/core/java/android/app/Instrumentation.java index db216b1af974..be5309cb3978 100644 --- a/core/java/android/app/Instrumentation.java +++ b/core/java/android/app/Instrumentation.java @@ -48,6 +48,9 @@ import android.os.SystemProperties; import android.os.TestLooperManager; import android.os.UserHandle; import android.os.UserManager; +import android.ravenwood.annotation.RavenwoodKeep; +import android.ravenwood.annotation.RavenwoodKeepPartialClass; +import android.ravenwood.annotation.RavenwoodReplace; import android.util.AndroidRuntimeException; import android.util.Log; import android.view.Display; @@ -80,7 +83,7 @@ import java.util.concurrent.TimeoutException; * implementation is described to the system through an AndroidManifest.xml's * <instrumentation> tag. */ -@android.ravenwood.annotation.RavenwoodKeepPartialClass +@RavenwoodKeepPartialClass public class Instrumentation { /** @@ -134,7 +137,7 @@ public class Instrumentation { private UiAutomation mUiAutomation; private final Object mAnimationCompleteLock = new Object(); - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public Instrumentation() { } @@ -145,7 +148,7 @@ public class Instrumentation { * reflection, but it will serve as noticeable discouragement from * doing such a thing. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep private void checkInstrumenting(String method) { // Check if we have an instrumentation context, as init should only get called by // the system in startup processes that are being instrumented. @@ -160,7 +163,7 @@ public class Instrumentation { * * @hide */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public boolean isInstrumenting() { // Check if we have an instrumentation context, as init should only get called by // the system in startup processes that are being instrumented. @@ -324,7 +327,7 @@ public class Instrumentation { * * @see #getTargetContext */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public Context getContext() { return mInstrContext; } @@ -349,7 +352,7 @@ public class Instrumentation { * * @see #getContext */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public Context getTargetContext() { return mAppContext; } @@ -2405,10 +2408,11 @@ public class Instrumentation { * * @hide */ - @android.ravenwood.annotation.RavenwoodKeep - public final void basicInit(Context context) { - mInstrContext = context; - mAppContext = context; + @RavenwoodKeep + public final void basicInit(Context instrContext, Context appContext, UiAutomation ui) { + mInstrContext = instrContext; + mAppContext = appContext; + mUiAutomation = ui; } /** @hide */ @@ -2499,6 +2503,7 @@ public class Instrumentation { * * @see UiAutomation */ + @RavenwoodKeep public UiAutomation getUiAutomation() { return getUiAutomation(0); } @@ -2537,6 +2542,7 @@ public class Instrumentation { * * @see UiAutomation */ + @RavenwoodReplace public UiAutomation getUiAutomation(@UiAutomationFlags int flags) { boolean mustCreateNewAutomation = (mUiAutomation == null) || (mUiAutomation.isDestroyed()); @@ -2567,11 +2573,15 @@ public class Instrumentation { return null; } + private UiAutomation getUiAutomation$ravenwood(@UiAutomationFlags int flags) { + return mUiAutomation; + } + /** * Takes control of the execution of messages on the specified looper until * {@link TestLooperManager#release} is called. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public TestLooperManager acquireLooperManager(Looper looper) { checkInstrumenting("acquireLooperManager"); return new TestLooperManager(looper); diff --git a/core/java/android/app/LoadedApk.java b/core/java/android/app/LoadedApk.java index 1df8f63aa402..1e45d6fd1674 100644 --- a/core/java/android/app/LoadedApk.java +++ b/core/java/android/app/LoadedApk.java @@ -1478,7 +1478,7 @@ public final class LoadedApk { + " package " + mPackageName + ": " + e.toString(), e); } } - mActivityThread.mAllApplications.add(app); + mActivityThread.addApplication(app); mApplication = app; if (!allowDuplicateInstances) { synchronized (sApplications) { diff --git a/core/java/android/app/OWNERS b/core/java/android/app/OWNERS index 0fad979e27cf..6e4c28f3eca6 100644 --- a/core/java/android/app/OWNERS +++ b/core/java/android/app/OWNERS @@ -3,49 +3,54 @@ per-file ContextImpl.java = * # ActivityManager -per-file ActivityManager* = file:/services/core/java/com/android/server/am/OWNERS -per-file *ApplicationStartInfo* = file:/services/core/java/com/android/server/am/OWNERS -per-file ApplicationErrorReport* = file:/services/core/java/com/android/server/am/OWNERS -per-file ApplicationExitInfo* = file:/services/core/java/com/android/server/am/OWNERS -per-file Application.java = file:/services/core/java/com/android/server/am/OWNERS -per-file ApplicationLoaders.java = file:/services/core/java/com/android/server/am/OWNERS -per-file ApplicationThreadConstants.java = file:/services/core/java/com/android/server/am/OWNERS -per-file ContentProviderHolder* = file:/services/core/java/com/android/server/am/OWNERS -per-file *ForegroundService* = file:/services/core/java/com/android/server/am/OWNERS -per-file IActivityController.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IActivityManager.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IApplicationThread.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IAppTraceRetriever.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IForegroundServiceObserver.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IInstrumentationWatcher.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IntentService.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IServiceConnection.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IStopUserCallback.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file IUidObserver.aidl = file:/services/core/java/com/android/server/am/OWNERS -per-file LoadedApk.java = file:/services/core/java/com/android/server/am/OWNERS -per-file LocalActivityManager.java = file:/services/core/java/com/android/server/am/OWNERS -per-file PendingIntent* = file:/services/core/java/com/android/server/am/OWNERS -per-file *Process* = file:/services/core/java/com/android/server/am/OWNERS -per-file ProfilerInfo* = file:/services/core/java/com/android/server/am/OWNERS -per-file Service* = file:/services/core/java/com/android/server/am/OWNERS -per-file SystemServiceRegistry.java = file:/services/core/java/com/android/server/am/OWNERS -per-file *UserSwitchObserver* = file:/services/core/java/com/android/server/am/OWNERS +per-file ActivityManager* = file:/ACTIVITY_MANAGER_OWNERS +per-file Application.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ApplicationErrorReport* = file:/ACTIVITY_MANAGER_OWNERS +per-file ApplicationLoaders.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ApplicationThreadConstants.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ContentProviderHolder* = file:/ACTIVITY_MANAGER_OWNERS +per-file *ForegroundService* = file:/ACTIVITY_MANAGER_OWNERS +per-file IActivityController.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IActivityManager.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IApplicationThread.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IAppTraceRetriever.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IForegroundServiceObserver.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IInstrumentationWatcher.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IntentService.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IServiceConnection.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IStopUserCallback.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file IUidObserver.aidl = file:/ACTIVITY_MANAGER_OWNERS +per-file LoadedApk.java = file:/ACTIVITY_MANAGER_OWNERS +per-file LocalActivityManager.java = file:/ACTIVITY_MANAGER_OWNERS +per-file PendingIntent* = file:/ACTIVITY_MANAGER_OWNERS +per-file *Process* = file:/ACTIVITY_MANAGER_OWNERS +per-file ProfilerInfo* = file:/ACTIVITY_MANAGER_OWNERS +per-file Service* = file:/ACTIVITY_MANAGER_OWNERS +per-file SystemServiceRegistry.java = file:/ACTIVITY_MANAGER_OWNERS +per-file *UserSwitchObserver* = file:/ACTIVITY_MANAGER_OWNERS + +# UI Automation per-file *UiAutomation* = file:/services/accessibility/OWNERS per-file *UiAutomation* = file:/core/java/android/permission/OWNERS + +# Game Manager per-file GameManager* = file:/GAME_MANAGER_OWNERS per-file GameMode* = file:/GAME_MANAGER_OWNERS per-file GameState* = file:/GAME_MANAGER_OWNERS per-file IGameManager* = file:/GAME_MANAGER_OWNERS per-file IGameMode* = file:/GAME_MANAGER_OWNERS + +# Background Starts per-file BackgroundStartPrivileges.java = file:/BAL_OWNERS +per-file activity_manager.aconfig = file:/ACTIVITY_MANAGER_OWNERS # ActivityThread -per-file ActivityThread.java = file:/services/core/java/com/android/server/am/OWNERS +per-file ActivityThread.java = file:/ACTIVITY_MANAGER_OWNERS per-file ActivityThread.java = file:/services/core/java/com/android/server/wm/OWNERS per-file ActivityThread.java = file:RESOURCES_OWNERS # Alarm -per-file *Alarm* = file:/apex/jobscheduler/OWNERS +per-file *Alarm* = file:/apex/jobscheduler/ALARM_OWNERS # AppOps per-file *AppOp* = file:/core/java/android/permission/OWNERS @@ -94,6 +99,12 @@ per-file IEphemeralResolver.aidl = file:/services/core/java/com/android/server/p per-file IInstantAppResolver.aidl = file:/services/core/java/com/android/server/pm/OWNERS per-file InstantAppResolveInfo.aidl = file:/services/core/java/com/android/server/pm/OWNERS +# Performance +per-file PropertyInvalidatedCache.java = file:/PERFORMANCE_OWNERS +per-file *ApplicationStartInfo* = file:/PERFORMANCE_OWNERS +per-file ApplicationExitInfo* = file:/PERFORMANCE_OWNERS +per-file performance.aconfig = file:/PERFORMANCE_OWNERS + # Pinner per-file pinner-client.aconfig = file:/core/java/android/app/pinner/OWNERS @@ -109,6 +120,7 @@ per-file *VoiceInteract* = file:/core/java/android/service/voice/OWNERS # Wallpaper per-file *Wallpaper* = file:/core/java/android/service/wallpaper/OWNERS +per-file wallpaper.aconfig = file:/core/java/android/service/wallpaper/OWNERS # WindowManager per-file *Activity* = file:/services/core/java/com/android/server/wm/OWNERS @@ -118,6 +130,8 @@ per-file *Task* = file:/services/core/java/com/android/server/wm/OWNERS per-file Window* = file:/services/core/java/com/android/server/wm/OWNERS per-file ConfigurationController.java = file:/services/core/java/com/android/server/wm/OWNERS per-file *ScreenCapture* = file:/services/core/java/com/android/server/wm/OWNERS +per-file ComponentOptions.java = file:/services/core/java/com/android/server/wm/OWNERS + # Multitasking per-file multitasking.aconfig = file:/services/core/java/com/android/server/wm/OWNERS diff --git a/core/java/android/app/PropertyInvalidatedCache.java b/core/java/android/app/PropertyInvalidatedCache.java index 27f9f54d9522..cb31bc73b9ba 100644 --- a/core/java/android/app/PropertyInvalidatedCache.java +++ b/core/java/android/app/PropertyInvalidatedCache.java @@ -250,6 +250,7 @@ import java.util.concurrent.atomic.AtomicLong; * @hide */ @TestApi +@android.ravenwood.annotation.RavenwoodKeepWholeClass public class PropertyInvalidatedCache<Query, Result> { /** * This is a configuration class that customizes a cache instance. diff --git a/core/java/android/app/ResourcesManager.java b/core/java/android/app/ResourcesManager.java index b51462e6b363..1050e1d4b30f 100644 --- a/core/java/android/app/ResourcesManager.java +++ b/core/java/android/app/ResourcesManager.java @@ -1834,10 +1834,15 @@ public class ResourcesManager { if (r.getImpl() != null) { final ResourcesImpl oldImpl = r.getImpl(); // ResourcesImpl constructor will help to append shared library asset paths. - final ResourcesImpl newImpl = new ResourcesImpl(oldImpl.getAssets(), - oldImpl.getMetrics(), oldImpl.getConfiguration(), - oldImpl.getDisplayAdjustments()); - r.setImpl(newImpl); + if (oldImpl.getAssets().isUpToDate()) { + final ResourcesImpl newImpl = new ResourcesImpl(oldImpl.getAssets(), + oldImpl.getMetrics(), oldImpl.getConfiguration(), + oldImpl.getDisplayAdjustments()); + r.setImpl(newImpl); + } else { + Slog.w(TAG, "Skip appending shared library asset paths for the " + + "Resource as its assets are not up to date."); + } } } } diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java index 9437c748ee80..093dad6ec165 100644 --- a/core/java/android/app/SystemServiceRegistry.java +++ b/core/java/android/app/SystemServiceRegistry.java @@ -66,8 +66,6 @@ import android.companion.ICompanionDeviceManager; import android.companion.virtual.IVirtualDeviceManager; import android.companion.virtual.VirtualDeviceManager; import android.compat.Compatibility; -import android.compat.annotation.ChangeId; -import android.compat.annotation.EnabledSince; import android.content.ClipboardManager; import android.content.ContentCaptureOptions; import android.content.Context; @@ -162,8 +160,7 @@ import android.net.NetworkWatchlistManager; import android.net.PacProxyManager; import android.net.TetheringManager; import android.net.VpnManager; -import android.net.vcn.IVcnManagementService; -import android.net.vcn.VcnManager; +import android.net.vcn.VcnFrameworkInitializer; import android.net.wifi.WifiFrameworkInitializer; import android.net.wifi.nl80211.WifiNl80211Manager; import android.net.wifi.sharedconnectivity.app.SharedConnectivityManager; @@ -198,7 +195,6 @@ import android.os.ServiceManager; import android.os.ServiceManager.ServiceNotFoundException; import android.os.StatsFrameworkInitializer; import android.os.SystemConfigManager; -import android.os.SystemProperties; import android.os.SystemUpdateManager; import android.os.SystemVibrator; import android.os.SystemVibratorManager; @@ -220,12 +216,14 @@ import android.print.IPrintManager; import android.print.PrintManager; import android.provider.E2eeContactKeysManager; import android.provider.ProviderFrameworkInitializer; +import android.ranging.RangingFrameworkInitializer; import android.safetycenter.SafetyCenterFrameworkInitializer; import android.scheduling.SchedulingFrameworkInitializer; import android.security.FileIntegrityManager; import android.security.IFileIntegrityService; import android.security.attestationverification.AttestationVerificationManager; import android.security.attestationverification.IAttestationVerificationManagerService; +import android.security.keystore.KeyStoreManager; import android.service.oemlock.IOemLockService; import android.service.oemlock.OemLockManager; import android.service.persistentdata.IPersistentDataBlockService; @@ -288,28 +286,6 @@ public final class SystemServiceRegistry { /** @hide */ public static boolean sEnableServiceNotFoundWtf = false; - /** - * Starting with {@link VANILLA_ICE_CREAM}, Telephony feature flags - * (e.g. {@link PackageManager#FEATURE_TELEPHONY_SUBSCRIPTION}) are being checked before - * returning managers that depend on them. If the feature is missing, - * {@link Context#getSystemService} will return null. - * - * This change is specific to VcnManager. - */ - @ChangeId - @EnabledSince(targetSdkVersion = Build.VERSION_CODES.VANILLA_ICE_CREAM) - static final long ENABLE_CHECKING_TELEPHONY_FEATURES_FOR_VCN = 330902016; - - /** - * The corresponding vendor API for Android V - * - * <p>Starting with Android V, the vendor API format has switched to YYYYMM. - * - * @see <a href="https://preview.source.android.com/docs/core/architecture/api-flags">Vendor API - * level</a> - */ - private static final int VENDOR_API_FOR_ANDROID_V = 202404; - // Service registry information. // This information is never changed once static initialization has completed. private static final Map<Class<?>, String> SYSTEM_SERVICE_NAMES = @@ -471,22 +447,6 @@ public final class SystemServiceRegistry { return new VpnManager(ctx, service); }}); - registerService(Context.VCN_MANAGEMENT_SERVICE, VcnManager.class, - new CachedServiceFetcher<VcnManager>() { - @Override - public VcnManager createService(ContextImpl ctx) throws ServiceNotFoundException { - final String telephonyFeatureToCheck = getVcnFeatureDependency(); - - if (telephonyFeatureToCheck != null - && !ctx.getPackageManager().hasSystemFeature(telephonyFeatureToCheck)) { - return null; - } - - IBinder b = ServiceManager.getService(Context.VCN_MANAGEMENT_SERVICE); - IVcnManagementService service = IVcnManagementService.Stub.asInterface(b); - return new VcnManager(ctx, service); - }}); - registerService(Context.COUNTRY_DETECTOR, CountryDetector.class, new StaticServiceFetcher<CountryDetector>() { @Override @@ -1667,6 +1627,17 @@ public final class SystemServiceRegistry { } }); + registerService(Context.KEYSTORE_SERVICE, KeyStoreManager.class, + new StaticServiceFetcher<KeyStoreManager>() { + @Override + public KeyStoreManager createService() + throws ServiceNotFoundException { + if (!android.security.Flags.keystoreGrantApi()) { + throw new ServiceNotFoundException("KeyStoreManager is not supported"); + } + return KeyStoreManager.getInstance(); + }}); + registerService(Context.CONTACT_KEYS_SERVICE, E2eeContactKeysManager.class, new CachedServiceFetcher<E2eeContactKeysManager>() { @Override @@ -1720,6 +1691,8 @@ public final class SystemServiceRegistry { OnDevicePersonalizationFrameworkInitializer.registerServiceWrappers(); DeviceLockFrameworkInitializer.registerServiceWrappers(); VirtualizationFrameworkInitializer.registerServiceWrappers(); + VcnFrameworkInitializer.registerServiceWrappers(); + if (com.android.server.telecom.flags.Flags.telecomMainlineBlockedNumbersManager()) { ProviderFrameworkInitializer.registerServiceWrappers(); } @@ -1734,6 +1707,12 @@ public final class SystemServiceRegistry { if (android.webkit.Flags.updateServiceIpcWrapper()) { WebViewBootstrapFrameworkInitializer.registerServiceWrappers(); } + // This is guarded by aconfig flag "com.android.ranging.flags.ranging_stack_enabled" + // when the build flag RELEASE_RANGING_STACK is enabled. When disabled, this calls the + // mock RangingFrameworkInitializer#registerServiceWrappers which is no-op. As the + // aconfig lib for ranging module is built only if RELEASE_RANGING_STACK is enabled, + // flagcannot be added here. + RangingFrameworkInitializer.registerServiceWrappers(); } finally { // If any of the above code throws, we're in a pretty bad shape and the process // will likely crash, but we'll reset it just in case there's an exception handler... @@ -1775,30 +1754,6 @@ public final class SystemServiceRegistry { return manager.hasSystemFeature(featureName); } - // Suppressing AndroidFrameworkCompatChange because we're querying vendor - // partition SDK level, not application's target SDK version (which BTW we - // also check through Compatibility framework a few lines below). - @SuppressWarnings("AndroidFrameworkCompatChange") - @Nullable - private static String getVcnFeatureDependency() { - // Check SDK version of the client app. Apps targeting pre-V SDK might - // have not checked for existence of these features. - if (!Compatibility.isChangeEnabled(ENABLE_CHECKING_TELEPHONY_FEATURES_FOR_VCN)) { - return null; - } - - // Check SDK version of the vendor partition. Pre-V devices might have - // incorrectly under-declared telephony features. - final int vendorApiLevel = SystemProperties.getInt( - "ro.vendor.api_level", Build.VERSION.DEVICE_INITIAL_SDK_INT); - if (vendorApiLevel < VENDOR_API_FOR_ANDROID_V) { - return PackageManager.FEATURE_TELEPHONY; - } else { - return PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION; - } - - } - /** * Gets a system service from a given context. * @hide diff --git a/core/java/android/app/TEST_MAPPING b/core/java/android/app/TEST_MAPPING index 0deb842aff61..5ed1f4e35533 100644 --- a/core/java/android/app/TEST_MAPPING +++ b/core/java/android/app/TEST_MAPPING @@ -16,12 +16,7 @@ }, { "file_patterns": ["(/|^)AppOpsManager.java"], - "name": "CtsAppOpsTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAppOpsTestCases" }, { "file_patterns": ["(/|^)AppOpsManager.java"], @@ -29,12 +24,7 @@ }, { "file_patterns": ["(/|^)AppOpsManager.java"], - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.appop" - } - ] + "name": "FrameworksServicesTests_android_server_appop" }, { "file_patterns": ["(/|^)AppOpsManager.java"], @@ -59,12 +49,7 @@ "file_patterns": ["INotificationManager\\.aidl"] }, { - "name": "CtsWindowManagerDeviceWindow", - "options": [ - { - "include-filter": "android.server.wm.window.ToastWindowTest" - } - ], + "name": "CtsWindowManagerDeviceWindow_window_toastwindowtest", "file_patterns": ["INotificationManager\\.aidl"] }, { @@ -72,42 +57,15 @@ "file_patterns": ["(/|^)InstantAppResolve[^/]*"] }, { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.saveui.AutofillSaveDialogTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], + "name": "CtsAutoFillServiceTestCases_saveui_autofillsavedialogtest", "file_patterns": ["(/|^)Activity.java"] }, { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.saveui.PreSimpleSaveActivityTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], + "name": "CtsAutoFillServiceTestCases_saveui_presimplesaveactivitytest", "file_patterns": ["(/|^)Activity.java"] }, { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.saveui.SimpleSaveActivityTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.AppModeFull" - } - ], + "name": "CtsAutoFillServiceTestCases_saveui_simplesaveactivitytest", "file_patterns": ["(/|^)Activity.java"] }, { @@ -124,259 +82,78 @@ }, { "name": "CtsLocalVoiceInteraction", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], "file_patterns": ["(/|^)VoiceInteract[^/]*"] }, { - "name": "CtsOsTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.os.cts.StrictModeTest" - } - ], + "name": "CtsOsTestCases_cts_strictmodetest_Presubmit", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.ContextTest" - } - ], + "name": "FrameworksCoreTests_context", "file_patterns": ["(/|^)ContextImpl.java"] }, { "file_patterns": ["(/|^)LocaleManager.java"], - "name": "CtsLocaleManagerTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsLocaleManagerTestCases" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.app.KeyguardManagerTest" - } - ], + "name": "FrameworksCoreTests_keyguard_manager", "file_patterns": [ "(/|^)KeyguardManager.java" ] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.app.PropertyInvalidatedCacheTests" - } - ], + "name": "FrameworksCoreTests_property_invalidated_cache", "file_patterns": [ "(/|^)PropertyInvalidatedCache.java" ] }, { - "name": "FrameworksCoreGameManagerTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.app" - } - ], + "name": "FrameworksCoreGameManagerTests_android_app", "file_patterns": [ "(/|^)GameManager[^/]*", "(/|^)GameMode[^/]*" ] }, { - "name": "HdmiCecTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.hardware.hdmi" - } - ], + "name": "HdmiCecTests_hardware_hdmi", "file_patterns": [ "(/|^)DeviceFeature[^/]*", "(/|^)Hdmi[^/]*" ] }, { - "name": "CtsWindowManagerDeviceActivity", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceActivity_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceAm", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceAm_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceBackNavigation", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceBackNavigation_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceDisplay", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceDisplay_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceKeyguard", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceKeyguard_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceInsets", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceInsets_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceTaskFragment", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceTaskFragment_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceWindow", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceWindow_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { - "name": "CtsWindowManagerDeviceOther", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.wm.cts" - } - ], + "name": "CtsWindowManagerDeviceOther_wm_cts", "file_patterns": ["(/|^)ContextImpl.java"] }, { diff --git a/core/java/android/app/UiAutomationConnection.java b/core/java/android/app/UiAutomationConnection.java index 3c4bd9eb0747..72db465dda53 100644..100755 --- a/core/java/android/app/UiAutomationConnection.java +++ b/core/java/android/app/UiAutomationConnection.java @@ -553,7 +553,12 @@ public final class UiAutomationConnection extends IUiAutomationConnection.Stub { } catch (IOException exc) { throw new RuntimeException("Error running shell command '" + command + "'", exc); } + handleExecuteShellCommandProcess(process, sink, source, stderrSink); + } + private void handleExecuteShellCommandProcess(final java.lang.Process process, + final ParcelFileDescriptor sink, final ParcelFileDescriptor source, + final ParcelFileDescriptor stderrSink) { // Read from process and write to pipe final Thread readFromProcess; if (sink != null) { @@ -616,6 +621,26 @@ public final class UiAutomationConnection extends IUiAutomationConnection.Stub { } @Override + public void executeShellCommandArrayWithStderr(final String[] command, + final ParcelFileDescriptor sink, final ParcelFileDescriptor source, + final ParcelFileDescriptor stderrSink) throws RemoteException { + synchronized (mLock) { + throwIfCalledByNotTrustedUidLocked(); + throwIfShutdownLocked(); + throwIfNotConnectedLocked(); + } + final java.lang.Process process; + + try { + process = Runtime.getRuntime().exec(command); + } catch (IOException exc) { + throw new RuntimeException( + "Error running shell command '" + String.join(" ", command) + "'", exc); + } + handleExecuteShellCommandProcess(process, sink, source, stderrSink); + } + + @Override public void shutdown() { synchronized (mLock) { if (isConnectedLocked()) { diff --git a/core/java/android/app/admin/SecurityLog.java b/core/java/android/app/admin/SecurityLog.java index 477f2e007b33..eb0ea1e6ef4f 100644 --- a/core/java/android/app/admin/SecurityLog.java +++ b/core/java/android/app/admin/SecurityLog.java @@ -16,7 +16,7 @@ package android.app.admin; -import static android.app.admin.flags.Flags.FLAG_BACKUP_SERVICE_SECURITY_LOG_EVENT_ENABLED; +import static android.nfc.Flags.FLAG_NFC_STATE_CHANGE_SECURITY_LOG_EVENT_ENABLED; import android.Manifest; import android.annotation.FlaggedApi; @@ -103,6 +103,8 @@ public class SecurityLog { TAG_PACKAGE_UPDATED, TAG_PACKAGE_UNINSTALLED, TAG_BACKUP_SERVICE_TOGGLED, + TAG_NFC_ENABLED, + TAG_NFC_DISABLED, }) public @interface SecurityLogTag {} @@ -611,9 +613,20 @@ public class SecurityLog { * <li> [2] backup service state ({@code Integer}, 1 for enabled, 0 for disabled) * @see DevicePolicyManager#setBackupServiceEnabled(ComponentName, boolean) */ - @FlaggedApi(FLAG_BACKUP_SERVICE_SECURITY_LOG_EVENT_ENABLED) public static final int TAG_BACKUP_SERVICE_TOGGLED = SecurityLogTags.SECURITY_BACKUP_SERVICE_TOGGLED; + + /** + * Indicates that NFC service is enabled. There is no extra payload in the log event. + */ + @FlaggedApi(FLAG_NFC_STATE_CHANGE_SECURITY_LOG_EVENT_ENABLED) + public static final int TAG_NFC_ENABLED = SecurityLogTags.SECURITY_NFC_ENABLED; + + /** + * Indicates that NFC service is disabled. There is no extra payload in the log event. + */ + @FlaggedApi(FLAG_NFC_STATE_CHANGE_SECURITY_LOG_EVENT_ENABLED) + public static final int TAG_NFC_DISABLED = SecurityLogTags.SECURITY_NFC_DISABLED; /** * Event severity level indicating that the event corresponds to normal workflow. */ diff --git a/core/java/android/app/admin/SecurityLogTags.logtags b/core/java/android/app/admin/SecurityLogTags.logtags index 7b3aa7b589b7..8f22c761d535 100644 --- a/core/java/android/app/admin/SecurityLogTags.logtags +++ b/core/java/android/app/admin/SecurityLogTags.logtags @@ -48,4 +48,6 @@ option java_package android.app.admin 210041 security_package_installed (package_name|3),(version_code|1),(user_id|1) 210042 security_package_updated (package_name|3),(version_code|1),(user_id|1) 210043 security_package_uninstalled (package_name|3),(version_code|1),(user_id|1) -210044 security_backup_service_toggled (package|3),(admin_user|1),(enabled|1)
\ No newline at end of file +210044 security_backup_service_toggled (package|3),(admin_user|1),(enabled|1) +210045 security_nfc_enabled +210046 security_nfc_disabled
\ No newline at end of file diff --git a/core/java/android/app/admin/flags/flags.aconfig b/core/java/android/app/admin/flags/flags.aconfig index 7d5806a294e0..7a615b27686a 100644 --- a/core/java/android/app/admin/flags/flags.aconfig +++ b/core/java/android/app/admin/flags/flags.aconfig @@ -115,16 +115,6 @@ flag { } flag { - name: "hsum_unlock_notification_fix" - namespace: "enterprise" - description: "Using the right userId when starting the work profile unlock flow " - bug: "327350831" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { name: "dumpsys_policy_engine_migration_enabled" namespace: "enterprise" description: "Update DumpSys to include information about migrated APIs in DPE" @@ -140,12 +130,23 @@ flag { } flag { + name: "fix_race_condition_in_tie_profile_lock" + namespace: "enterprise" + description: "Fix race condition in tieProfileLockIfNecessary()" + bug: "355905501" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { name: "quiet_mode_credential_bug_fix" namespace: "enterprise" description: "Guards a bugfix that ends the credential input flow if the managed user has not stopped." bug: "293441361" } +# Fully rolled out and must not be used. flag { name: "assist_content_user_restriction_enabled" is_exported: true @@ -164,6 +165,7 @@ flag { } } +# Fully rolled out and must not be used. flag { name: "backup_service_security_log_event_enabled" is_exported: true diff --git a/core/java/android/app/appfunctions/OWNERS b/core/java/android/app/appfunctions/OWNERS new file mode 100644 index 000000000000..6a69e15d00dd --- /dev/null +++ b/core/java/android/app/appfunctions/OWNERS @@ -0,0 +1,7 @@ +avayvod@google.com +oadesina@google.com +toki@google.com +tonymak@google.com +mingweiliao@google.com +anothermark@google.com +utkarshnigam@google.com diff --git a/core/java/android/app/time/TEST_MAPPING b/core/java/android/app/time/TEST_MAPPING index 7673acacbfbe..9e416385bbfb 100644 --- a/core/java/android/app/time/TEST_MAPPING +++ b/core/java/android/app/time/TEST_MAPPING @@ -1,31 +1,13 @@ { "presubmit": [ { - "name": "FrameworksTimeCoreTests", - "options": [ - { - "include-filter": "android.app." - } - ] + "name": "FrameworksTimeCoreTests_android_app" }, { - "name": "CtsTimeTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTimeTestCases" }, { - "name": "FrameworksTimeServicesTests", - "options": [ - { - "include-filter": "com.android.server.timezonedetector." - }, - { - "include-filter": "com.android.server.timedetector." - } - ] + "name": "FrameworksTimeServicesTests_time" } ] } diff --git a/core/java/android/app/timedetector/TEST_MAPPING b/core/java/android/app/timedetector/TEST_MAPPING index c7ca6a230d43..d876308f4a9b 100644 --- a/core/java/android/app/timedetector/TEST_MAPPING +++ b/core/java/android/app/timedetector/TEST_MAPPING @@ -1,28 +1,13 @@ { "presubmit": [ { - "name": "FrameworksTimeCoreTests", - "options": [ - { - "include-filter": "android.app." - } - ] + "name": "FrameworksTimeCoreTests_android_app" }, { - "name": "CtsTimeTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTimeTestCases" }, { - "name": "FrameworksTimeServicesTests", - "options": [ - { - "include-filter": "com.android.server.timedetector." - } - ] + "name": "FrameworksTimeServicesTests_server_timedetector" } ] } diff --git a/core/java/android/app/timezonedetector/TEST_MAPPING b/core/java/android/app/timezonedetector/TEST_MAPPING index c8d0bb2306cd..dca7bbf17ab9 100644 --- a/core/java/android/app/timezonedetector/TEST_MAPPING +++ b/core/java/android/app/timezonedetector/TEST_MAPPING @@ -1,28 +1,13 @@ { "presubmit": [ { - "name": "FrameworksTimeCoreTests", - "options": [ - { - "include-filter": "android.app." - } - ] + "name": "FrameworksTimeCoreTests_android_app" }, { - "name": "CtsTimeTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTimeTestCases" }, { - "name": "FrameworksTimeServicesTests", - "options": [ - { - "include-filter": "com.android.server.timezonedetector." - } - ] + "name": "FrameworksTimeServicesTests_server_timezonedetector" } ] } diff --git a/core/java/android/app/trust/TEST_MAPPING b/core/java/android/app/trust/TEST_MAPPING index 23923eeb83ee..b0dd55100c8a 100644 --- a/core/java/android/app/trust/TEST_MAPPING +++ b/core/java/android/app/trust/TEST_MAPPING @@ -1,28 +1,12 @@ { "presubmit": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ], "trust-tablet": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ] }
\ No newline at end of file diff --git a/core/java/android/app/usage/OWNERS b/core/java/android/app/usage/OWNERS index 57d958f2b1f5..745e7242d5ef 100644 --- a/core/java/android/app/usage/OWNERS +++ b/core/java/android/app/usage/OWNERS @@ -1,9 +1 @@ -# Bug component: 532296 - -yamasani@google.com -mwachens@google.com -varunshah@google.com -guanxin@google.com - -per-file *StorageStats* = file:/core/java/android/os/storage/OWNERS -per-file *Broadcast* = sudheersai@google.com +include /services/usage/OWNERS
\ No newline at end of file diff --git a/core/java/android/appwidget/AppWidgetHostView.java b/core/java/android/appwidget/AppWidgetHostView.java index 1f19f817a0b3..5f61a9195209 100644 --- a/core/java/android/appwidget/AppWidgetHostView.java +++ b/core/java/android/appwidget/AppWidgetHostView.java @@ -713,8 +713,8 @@ public class AppWidgetHostView extends FrameLayout implements AppWidgetHost.AppW mCurrentSize); } else { applyContent(null, false, e); + mLastExecutionSignal = null; } - mLastExecutionSignal = null; } } diff --git a/core/java/android/appwidget/OWNERS b/core/java/android/appwidget/OWNERS index 191083303769..0e85d5bd7a27 100644 --- a/core/java/android/appwidget/OWNERS +++ b/core/java/android/appwidget/OWNERS @@ -3,3 +3,5 @@ sihua@google.com pinyaoting@google.com suprabh@google.com sunnygoyal@google.com +zakcohen@google.com +shamalip@google.com diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index 8365840b1efb..744f019a4988 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -4309,6 +4309,7 @@ public abstract class Context { SECURITY_STATE_SERVICE, //@hide: ECM_ENHANCED_CONFIRMATION_SERVICE, CONTACT_KEYS_SERVICE, + RANGING_SERVICE, }) @Retention(RetentionPolicy.SOURCE) @@ -4752,6 +4753,18 @@ public abstract class Context { /** * Use with {@link #getSystemService(String)} to retrieve a {@link + * android.security.keystore.KeyStoreManager} for accessing + * <a href="/privacy-and-security/keystore">Android Keystore</a> + * functions. + * + * @see #getSystemService(String) + * @see android.security.keystore.KeyStoreManager + */ + @FlaggedApi(android.security.Flags.FLAG_KEYSTORE_GRANT_API) + public static final String KEYSTORE_SERVICE = "keystore"; + + /** + * Use with {@link #getSystemService(String)} to retrieve a {@link * android.os.storage.StorageManager} for accessing system storage * functions. * @@ -4842,6 +4855,8 @@ public abstract class Context { * @see android.net.vcn.VcnManager * @hide */ + @FlaggedApi(android.os.Flags.FLAG_MAINLINE_VCN_PLATFORM_API) + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) public static final String VCN_MANAGEMENT_SERVICE = "vcn_management"; /** @@ -6376,6 +6391,17 @@ public abstract class Context { /** * Use with {@link #getSystemService(String)} to retrieve a + * {@link android.ranging.RangingManager}. + * + * @see #getSystemService(String) + * @hide + */ + @FlaggedApi(com.android.ranging.flags.Flags.FLAG_RANGING_STACK_ENABLED) + @SystemApi + public static final String RANGING_SERVICE = "ranging"; + + /** + * Use with {@link #getSystemService(String)} to retrieve a * {@link android.app.DreamManager} for controlling Dream states. * * @see #getSystemService(String) diff --git a/core/java/android/content/OWNERS b/core/java/android/content/OWNERS index a37408b7d847..743623fbb2c8 100644 --- a/core/java/android/content/OWNERS +++ b/core/java/android/content/OWNERS @@ -1,11 +1,11 @@ # Remain no owner because multiple modules may touch this file. per-file Context.java = * per-file ContextWrapper.java = * -per-file *Content* = file:/services/core/java/com/android/server/am/OWNERS -per-file *Sync* = file:/services/core/java/com/android/server/am/OWNERS +per-file *Content* = varunshah@google.com, yamasani@google.com +per-file *Sync* = file:/apex/jobscheduler/JOB_OWNERS per-file IntentFilter.java = file:/PACKAGE_MANAGER_OWNERS per-file UriRelativeFilter* = file:/PACKAGE_MANAGER_OWNERS -per-file IntentFilter.java = file:/services/core/java/com/android/server/am/OWNERS +per-file IntentFilter.java = file:/INTENT_OWNERS per-file Intent.java = file:/INTENT_OWNERS per-file AutofillOptions* = file:/core/java/android/service/autofill/OWNERS per-file ContentCaptureOptions* = file:/core/java/android/service/contentcapture/OWNERS diff --git a/core/java/android/content/TEST_MAPPING b/core/java/android/content/TEST_MAPPING index 41a4288eae5c..8d90b021fbfc 100644 --- a/core/java/android/content/TEST_MAPPING +++ b/core/java/android/content/TEST_MAPPING @@ -1,45 +1,11 @@ { "presubmit": [ { - "name": "CtsOsTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.os.cts.StrictModeTest" - } - ], + "name": "CtsOsTestCases_cts_strictmodetest_Presubmit", "file_patterns": ["(/|^)Context.java", "(/|^)ContextWrapper.java"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.content.ContextTest" - }, - { - "include-filter": "android.content.ComponentCallbacksControllerTest" - }, - { - "include-filter": "android.content.ContextWrapperTest" - } - ], + "name": "FrameworksCoreTests_android_content", "file_patterns": ["(/|^)Context.java", "(/|^)ContextWrapper.java", "(/|^)ComponentCallbacksController.java"] }, { diff --git a/core/java/android/content/om/TEST_MAPPING b/core/java/android/content/om/TEST_MAPPING index 82c47a03863b..b36c8958ea71 100644 --- a/core/java/android/content/om/TEST_MAPPING +++ b/core/java/android/content/om/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.om" - } - ] + "name": "FrameworksServicesTests_server_om" }, { "name": "OverlayDeviceTests" diff --git a/core/java/android/content/pm/ApplicationInfo.java b/core/java/android/content/pm/ApplicationInfo.java index 495ae6026805..08ca33bafce5 100644 --- a/core/java/android/content/pm/ApplicationInfo.java +++ b/core/java/android/content/pm/ApplicationInfo.java @@ -2327,9 +2327,8 @@ public class ApplicationInfo extends PackageItemInfo implements Parcelable { * Whether an app allows its playback audio to be captured by other apps. * * @return {@code true} if the app indicates that its audio can be captured by other apps. - * - * @hide */ + @FlaggedApi(Flags.FLAG_AUDIO_PLAYBACK_CAPTURE_ALLOWANCE) public boolean isAudioPlaybackCaptureAllowed() { return (privateFlags & PRIVATE_FLAG_ALLOW_AUDIO_PLAYBACK_CAPTURE) != 0; } diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 282ede385ba3..8de86d5b60a0 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -146,6 +146,7 @@ public abstract class PackageManager { * This exception is thrown when a given package, application, or component * name cannot be found. */ + @android.ravenwood.annotation.RavenwoodKeepWholeClass public static class NameNotFoundException extends AndroidException { public NameNotFoundException() { } @@ -8842,11 +8843,14 @@ public abstract class PackageManager { try { ParsedPackage pp = parser2.parsePackage(apkFile, parserFlags, false); + pp.hideAsFinal(); return PackageInfoCommonUtils.generate(pp, flagsBits, UserHandle.myUserId()); } catch (PackageParserException e) { Log.w(TAG, "Failure to parse package archive apkFile= " +apkFile); return null; + } finally { + parser2.close(); } } diff --git a/core/java/android/content/pm/flags.aconfig b/core/java/android/content/pm/flags.aconfig index d9b0e6dd2681..f332f7b4fc99 100644 --- a/core/java/android/content/pm/flags.aconfig +++ b/core/java/android/content/pm/flags.aconfig @@ -283,4 +283,13 @@ flag { namespace: "package_manager_service" description: "Feature flag to enable the feature to retrieve package info without installation with a file descriptor." bug: "340879905" +} + +flag { + name: "audio_playback_capture_allowance" + is_exported: true + namespace: "package_manager_service" + description: "Feature flag to enable the feature to retrieve info about audio playback capture allowance at manifest level." + bug: "362425551" + is_fixed_read_only: true }
\ No newline at end of file diff --git a/core/java/android/content/pm/verify/domain/TEST_MAPPING b/core/java/android/content/pm/verify/domain/TEST_MAPPING index 8a1982a339ea..db98c402eeeb 100644 --- a/core/java/android/content/pm/verify/domain/TEST_MAPPING +++ b/core/java/android/content/pm/verify/domain/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "PackageManagerServiceUnitTests", - "options": [ - { - "include-filter": "com.android.server.pm.test.verify.domain" - } - ] + "name": "PackageManagerServiceUnitTests_verify_domain" }, { "name": "CtsDomainVerificationDeviceStandaloneTestCases" diff --git a/core/java/android/content/res/ResourcesImpl.java b/core/java/android/content/res/ResourcesImpl.java index d874270b4653..c33eaeae1c45 100644 --- a/core/java/android/content/res/ResourcesImpl.java +++ b/core/java/android/content/res/ResourcesImpl.java @@ -1608,4 +1608,4 @@ public class ResourcesImpl { public int getAppliedSharedLibsHash() { return mAppliedSharedLibsHash; } -} +}
\ No newline at end of file diff --git a/core/java/android/credentials/selection/IntentFactory.java b/core/java/android/credentials/selection/IntentFactory.java index b98a0d825227..c521b96fd8ee 100644 --- a/core/java/android/credentials/selection/IntentFactory.java +++ b/core/java/android/credentials/selection/IntentFactory.java @@ -232,7 +232,17 @@ public class IntentFactory { oemComponentName, PackageManager.ComponentInfoFlags.of( PackageManager.MATCH_SYSTEM_ONLY)); - if (info.enabled && info.exported) { + boolean oemComponentEnabled = info.enabled; + int runtimeComponentEnabledState = context.getPackageManager() + .getComponentEnabledSetting(oemComponentName); + if (runtimeComponentEnabledState == PackageManager + .COMPONENT_ENABLED_STATE_ENABLED) { + oemComponentEnabled = true; + } else if (runtimeComponentEnabledState == PackageManager + .COMPONENT_ENABLED_STATE_DISABLED) { + oemComponentEnabled = false; + } + if (oemComponentEnabled && info.exported) { intentResultBuilder.setOemUiUsageStatus(IntentCreationResult .OemUiUsageStatus.SUCCESS); Slog.i(TAG, diff --git a/core/java/android/database/BulkCursorNative.java b/core/java/android/database/BulkCursorNative.java index 8ea450c6ca44..7d6e7ad857d1 100644 --- a/core/java/android/database/BulkCursorNative.java +++ b/core/java/android/database/BulkCursorNative.java @@ -53,7 +53,7 @@ public abstract class BulkCursorNative extends Binder implements IBulkCursor return new BulkCursorProxy(obj); } - + @Override public boolean onTransact(int code, Parcel data, Parcel reply, int flags) throws RemoteException { @@ -79,7 +79,7 @@ public abstract class BulkCursorNative extends Binder implements IBulkCursor reply.writeNoException(); return true; } - + case CLOSE_TRANSACTION: { data.enforceInterface(IBulkCursor.descriptor); close(); @@ -212,15 +212,22 @@ final class BulkCursorProxy implements IBulkCursor { Parcel reply = Parcel.obtain(); try { data.writeInterfaceToken(IBulkCursor.descriptor); - - mRemote.transact(CLOSE_TRANSACTION, data, reply, 0); - DatabaseUtils.readExceptionFromParcel(reply); + // If close() is being called from the finalizer thread, do not wait for a reply from + // the remote side. + final boolean fromFinalizer = + android.database.sqlite.Flags.onewayFinalizerCloseFixed() + && "FinalizerDaemon".equals(Thread.currentThread().getName()); + mRemote.transact(CLOSE_TRANSACTION, data, reply, + fromFinalizer ? IBinder.FLAG_ONEWAY: 0); + if (!fromFinalizer) { + DatabaseUtils.readExceptionFromParcel(reply); + } } finally { data.recycle(); reply.recycle(); } } - + public int requery(IContentObserver observer) throws RemoteException { Parcel data = Parcel.obtain(); Parcel reply = Parcel.obtain(); @@ -282,4 +289,3 @@ final class BulkCursorProxy implements IBulkCursor { } } } - diff --git a/core/java/android/database/CursorWindow.java b/core/java/android/database/CursorWindow.java index ba356bb55194..93ef5c365730 100644 --- a/core/java/android/database/CursorWindow.java +++ b/core/java/android/database/CursorWindow.java @@ -16,6 +16,8 @@ package android.database; +import static java.util.Objects.requireNonNull; + import android.annotation.BytesLong; import android.annotation.IntRange; import android.compat.annotation.UnsupportedAppUsage; @@ -24,6 +26,10 @@ import android.database.sqlite.SQLiteClosable; import android.database.sqlite.SQLiteException; import android.os.Parcel; import android.os.Parcelable; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodThrow; import dalvik.annotation.optimization.FastNative; import dalvik.system.CloseGuard; @@ -38,9 +44,8 @@ import dalvik.system.CloseGuard; * consumer for reading. * </p> */ -@android.ravenwood.annotation.RavenwoodKeepWholeClass -@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.CursorWindow_host") +@RavenwoodKeepWholeClass +@RavenwoodRedirectionClass("CursorWindow_ravenwood") public class CursorWindow extends SQLiteClosable implements Parcelable { private static final String STATS_TAG = "CursorWindowStats"; @@ -61,48 +66,69 @@ public class CursorWindow extends SQLiteClosable implements Parcelable { private final CloseGuard mCloseGuard; // May throw CursorWindowAllocationException + @RavenwoodRedirect private static native long nativeCreate(String name, int cursorWindowSize); // May throw CursorWindowAllocationException + @RavenwoodRedirect private static native long nativeCreateFromParcel(Parcel parcel); + @RavenwoodRedirect private static native void nativeDispose(long windowPtr); + @RavenwoodRedirect private static native void nativeWriteToParcel(long windowPtr, Parcel parcel); + @RavenwoodRedirect private static native String nativeGetName(long windowPtr); + @RavenwoodRedirect private static native byte[] nativeGetBlob(long windowPtr, int row, int column); + @RavenwoodRedirect private static native String nativeGetString(long windowPtr, int row, int column); + @RavenwoodThrow private static native void nativeCopyStringToBuffer(long windowPtr, int row, int column, CharArrayBuffer buffer); + @RavenwoodRedirect private static native boolean nativePutBlob(long windowPtr, byte[] value, int row, int column); + @RavenwoodRedirect private static native boolean nativePutString(long windowPtr, String value, int row, int column); // Below native methods don't do unconstrained work, so are FastNative for performance @FastNative + @RavenwoodThrow private static native void nativeClear(long windowPtr); @FastNative + @RavenwoodRedirect private static native int nativeGetNumRows(long windowPtr); @FastNative + @RavenwoodRedirect private static native boolean nativeSetNumColumns(long windowPtr, int columnNum); @FastNative + @RavenwoodRedirect private static native boolean nativeAllocRow(long windowPtr); @FastNative + @RavenwoodThrow private static native void nativeFreeLastRow(long windowPtr); @FastNative + @RavenwoodRedirect private static native int nativeGetType(long windowPtr, int row, int column); @FastNative + @RavenwoodRedirect private static native long nativeGetLong(long windowPtr, int row, int column); @FastNative + @RavenwoodRedirect private static native double nativeGetDouble(long windowPtr, int row, int column); @FastNative + @RavenwoodRedirect private static native boolean nativePutLong(long windowPtr, long value, int row, int column); @FastNative + @RavenwoodRedirect private static native boolean nativePutDouble(long windowPtr, double value, int row, int column); @FastNative + @RavenwoodThrow private static native boolean nativePutNull(long windowPtr, int row, int column); @@ -640,6 +666,7 @@ public class CursorWindow extends SQLiteClosable implements Parcelable { */ public boolean putBlob(byte[] value, @IntRange(from = 0) int row, @IntRange(from = 0) int column) { + requireNonNull(value); acquireReference(); try { return nativePutBlob(mWindowPtr, value, row - mStartPos, column); @@ -658,6 +685,7 @@ public class CursorWindow extends SQLiteClosable implements Parcelable { */ public boolean putString(String value, @IntRange(from = 0) int row, @IntRange(from = 0) int column) { + requireNonNull(value); acquireReference(); try { return nativePutString(mWindowPtr, value, row - mStartPos, column); diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/CursorWindow_host.java b/core/java/android/database/CursorWindow_ravenwood.java index f38d5653d3a9..990ec5e9d59e 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/CursorWindow_host.java +++ b/core/java/android/database/CursorWindow_ravenwood.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package android.database; -import android.database.Cursor; import android.database.sqlite.SQLiteException; import android.os.Parcel; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; import android.util.Base64; import java.text.DecimalFormat; @@ -27,22 +27,23 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; -public class CursorWindow_host { +@RavenwoodKeepWholeClass +class CursorWindow_ravenwood { - private static final HashMap<Long, CursorWindow_host> sInstances = new HashMap<>(); + private static final HashMap<Long, CursorWindow_ravenwood> sInstances = new HashMap<>(); private static long sNextId = 1; private String mName; private int mColumnNum; private static class Row { - String[] fields; - int[] types; + String[] mFields; + int[] mTypes; } private final List<Row> mRows = new ArrayList<>(); public static long nativeCreate(String name, int cursorWindowSize) { - CursorWindow_host instance = new CursorWindow_host(); + CursorWindow_ravenwood instance = new CursorWindow_ravenwood(); instance.mName = name; long instanceId = sNextId++; sInstances.put(instanceId, instance); @@ -67,33 +68,33 @@ public class CursorWindow_host { } public static boolean nativeAllocRow(long windowPtr) { - CursorWindow_host instance = sInstances.get(windowPtr); + CursorWindow_ravenwood instance = sInstances.get(windowPtr); Row row = new Row(); - row.fields = new String[instance.mColumnNum]; - row.types = new int[instance.mColumnNum]; - Arrays.fill(row.types, Cursor.FIELD_TYPE_NULL); + row.mFields = new String[instance.mColumnNum]; + row.mTypes = new int[instance.mColumnNum]; + Arrays.fill(row.mTypes, Cursor.FIELD_TYPE_NULL); instance.mRows.add(row); return true; } private static boolean put(long windowPtr, String value, int type, int row, int column) { - CursorWindow_host instance = sInstances.get(windowPtr); + CursorWindow_ravenwood instance = sInstances.get(windowPtr); if (row >= instance.mRows.size() || column >= instance.mColumnNum) { return false; } Row r = instance.mRows.get(row); - r.fields[column] = value; - r.types[column] = type; + r.mFields[column] = value; + r.mTypes[column] = type; return true; } public static int nativeGetType(long windowPtr, int row, int column) { - CursorWindow_host instance = sInstances.get(windowPtr); + CursorWindow_ravenwood instance = sInstances.get(windowPtr); if (row >= instance.mRows.size() || column >= instance.mColumnNum) { return Cursor.FIELD_TYPE_NULL; } - return instance.mRows.get(row).types[column]; + return instance.mRows.get(row).mTypes[column]; } public static boolean nativePutString(long windowPtr, String value, @@ -102,12 +103,12 @@ public class CursorWindow_host { } public static String nativeGetString(long windowPtr, int row, int column) { - CursorWindow_host instance = sInstances.get(windowPtr); + CursorWindow_ravenwood instance = sInstances.get(windowPtr); if (row >= instance.mRows.size() || column >= instance.mColumnNum) { return null; } - return instance.mRows.get(row).fields[column]; + return instance.mRows.get(row).mFields[column]; } public static boolean nativePutLong(long windowPtr, long value, int row, int column) { @@ -165,26 +166,26 @@ public class CursorWindow_host { } public static void nativeWriteToParcel(long windowPtr, Parcel parcel) { - CursorWindow_host window = sInstances.get(windowPtr); + CursorWindow_ravenwood window = sInstances.get(windowPtr); parcel.writeString(window.mName); parcel.writeInt(window.mColumnNum); parcel.writeInt(window.mRows.size()); for (int row = 0; row < window.mRows.size(); row++) { - parcel.writeStringArray(window.mRows.get(row).fields); - parcel.writeIntArray(window.mRows.get(row).types); + parcel.writeStringArray(window.mRows.get(row).mFields); + parcel.writeIntArray(window.mRows.get(row).mTypes); } } public static long nativeCreateFromParcel(Parcel parcel) { long windowPtr = nativeCreate(null, 0); - CursorWindow_host window = sInstances.get(windowPtr); + CursorWindow_ravenwood window = sInstances.get(windowPtr); window.mName = parcel.readString(); window.mColumnNum = parcel.readInt(); int rowCount = parcel.readInt(); for (int row = 0; row < rowCount; row++) { Row r = new Row(); - r.fields = parcel.createStringArray(); - r.types = parcel.createIntArray(); + r.mFields = parcel.createStringArray(); + r.mTypes = parcel.createIntArray(); window.mRows.add(r); } return windowPtr; diff --git a/core/java/android/database/OWNERS b/core/java/android/database/OWNERS index 53f5bb0ab492..50b7015e6b5c 100644 --- a/core/java/android/database/OWNERS +++ b/core/java/android/database/OWNERS @@ -1,6 +1,2 @@ include /SQLITE_OWNERS -omakoto@google.com -jsharkey@android.com -yamasani@google.com - diff --git a/core/java/android/database/sqlite/TEST_MAPPING b/core/java/android/database/sqlite/TEST_MAPPING index 9dcf4e592454..659cf6cd9cf3 100644 --- a/core/java/android/database/sqlite/TEST_MAPPING +++ b/core/java/android/database/sqlite/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.database.sqlite.SQLiteRawStatementTest" - } - ], + "name": "FrameworksCoreTests_sqlite", "file_patterns": [ "(/|^)SQLiteRawStatement.java", "(/|^)SQLiteDatabase.java", diff --git a/core/java/android/database/sqlite/flags.aconfig b/core/java/android/database/sqlite/flags.aconfig index 285f984faab7..c2cc9d18e457 100644 --- a/core/java/android/database/sqlite/flags.aconfig +++ b/core/java/android/database/sqlite/flags.aconfig @@ -2,6 +2,14 @@ package: "android.database.sqlite" container: "system" flag { + name: "oneway_finalizer_close_fixed" + namespace: "system_performance" + is_fixed_read_only: true + description: "Make BuildCursorNative.close oneway if in the the finalizer" + bug: "368221351" +} + +flag { name: "sqlite_apis_35" is_exported: true namespace: "system_performance" diff --git a/core/java/android/hardware/HardwareBuffer.java b/core/java/android/hardware/HardwareBuffer.java index ce0f9f598897..0e73978127c9 100644 --- a/core/java/android/hardware/HardwareBuffer.java +++ b/core/java/android/hardware/HardwareBuffer.java @@ -66,6 +66,7 @@ public final class HardwareBuffer implements Parcelable, AutoCloseable { DS_FP32UI8, S_UI8, YCBCR_P010, + YCBCR_P210, R_8, R_16, RG_1616, @@ -111,6 +112,16 @@ public final class HardwareBuffer implements Parcelable, AutoCloseable { * little-endian value, with the lower 6 bits set to zero. */ public static final int YCBCR_P010 = 0x36; + /** + * <p>Android YUV P210 format.</p> + * + * P210 is a 4:2:2 YCbCr semiplanar format comprised of a WxH Y plane + * followed by a WxH CbCr plane. Each sample is represented by a 16-bit + * little-endian value, with the lower 6 bits set to zero. + */ + @FlaggedApi(android.media.codec.Flags.FLAG_P210_FORMAT_SUPPORT) + public static final int YCBCR_P210 = 0x3c; + /** Format: 8 bits red */ @FlaggedApi(com.android.graphics.hwui.flags.Flags.FLAG_REQUESTED_FORMATS_V) public static final int R_8 = 0x38; diff --git a/core/java/android/hardware/OWNERS b/core/java/android/hardware/OWNERS index 43d3f5466ccf..f11625ed9d61 100644 --- a/core/java/android/hardware/OWNERS +++ b/core/java/android/hardware/OWNERS @@ -19,3 +19,6 @@ per-file DataSpace* = file:/graphics/java/android/graphics/OWNERS # OverlayProperties per-file OverlayProperties* = file:/graphics/java/android/graphics/OWNERS + +# Lut related files +per-file *Lut* = file:/graphics/java/android/graphics/OWNERS
\ No newline at end of file diff --git a/core/java/android/hardware/biometrics/BiometricPrompt.java b/core/java/android/hardware/biometrics/BiometricPrompt.java index 37a2df83cc00..5c6039489b6b 100644 --- a/core/java/android/hardware/biometrics/BiometricPrompt.java +++ b/core/java/android/hardware/biometrics/BiometricPrompt.java @@ -240,18 +240,19 @@ public class BiometricPrompt implements BiometricAuthenticator, BiometricConstan * * @param logoDescription The logo description text that will be shown on the prompt. * @return This builder. - * @throws IllegalArgumentException If logo description is null or exceeds certain character - * limit. + * @throws IllegalArgumentException If logo description is null. */ @FlaggedApi(FLAG_CUSTOM_BIOMETRIC_PROMPT) @RequiresPermission(SET_BIOMETRIC_DIALOG_ADVANCED) @NonNull public BiometricPrompt.Builder setLogoDescription(@NonNull String logoDescription) { - if (logoDescription == null - || logoDescription.length() > MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER) { - throw new IllegalArgumentException( - "Logo description passed in can not be null or exceed " - + MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER + " character number."); + if (logoDescription == null || logoDescription.isEmpty()) { + throw new IllegalArgumentException("Logo description passed in can not be null"); + } + if (logoDescription.length() > MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER) { + Log.w(TAG, + "Logo description passed in exceeds" + MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER + + " character number and may be truncated."); } mPromptInfo.setLogoDescription(logoDescription); return this; diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java index 6fffb822c9ca..056ca93159dd 100644 --- a/core/java/android/hardware/camera2/CameraCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraCharacteristics.java @@ -564,7 +564,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}, then this list will only contain * CONTROL_ZOOM_RATIO_RANGE and SCALER_AVAILABLE_MAX_DIGITAL_ZOOM * - * @see INFO_SESSION_CONFIGURATION_QUERY_VERSION + * @see #INFO_SESSION_CONFIGURATION_QUERY_VERSION */ @NonNull @FlaggedApi(Flags.FLAG_FEATURE_COMBINATION_QUERY) diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java index 6968f279dbc0..fbed50ad3c2d 100644 --- a/core/java/android/hardware/camera2/CaptureRequest.java +++ b/core/java/android/hardware/camera2/CaptureRequest.java @@ -57,7 +57,7 @@ import java.util.Set; * * <p>CaptureRequests can be created by using a {@link Builder} instance, * obtained by calling {@link CameraDevice#createCaptureRequest} or {@link - * CameraManager#createCaptureRequest}</p> + * CameraDevice.CameraDeviceSetup#createCaptureRequest}</p> * * <p>CaptureRequests are given to {@link CameraCaptureSession#capture} or * {@link CameraCaptureSession#setRepeatingRequest} to capture images from a camera.</p> @@ -84,7 +84,7 @@ import java.util.Set; * @see CameraCaptureSession#setRepeatingBurst * @see CameraDevice#createCaptureRequest * @see CameraDevice#createReprocessCaptureRequest - * @see CameraManager#createCaptureRequest + * @see CameraDevice.CameraDeviceSetup#createCaptureRequest */ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>> implements Parcelable { @@ -812,8 +812,9 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>> * A builder for capture requests. * * <p>To obtain a builder instance, use the - * {@link CameraDevice#createCaptureRequest} or {@link CameraManager#createCaptureRequest} - * method, which initializes the request fields to one of the templates defined in + * {@link CameraDevice#createCaptureRequest} or + * {@link CameraDevice.CameraDeviceSetup#createCaptureRequest} method, which + * initializes the request fields to one of the templates defined in * {@link CameraDevice}. * * @see CameraDevice#createCaptureRequest @@ -822,7 +823,7 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>> * @see CameraDevice#TEMPLATE_STILL_CAPTURE * @see CameraDevice#TEMPLATE_VIDEO_SNAPSHOT * @see CameraDevice#TEMPLATE_MANUAL - * @see CameraManager#createCaptureRequest + * @see CameraDevice.CameraDeviceSetup#createCaptureRequest */ public final static class Builder { diff --git a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java index 7f3c49dbb580..1e7f70bf5a72 100644 --- a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java +++ b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java @@ -918,7 +918,7 @@ public class CameraDeviceImpl extends CameraDevice checkIfCameraClosedOrInError(); for (String physicalId : physicalCameraIdSet) { - if (physicalId == getId()) { + if (Objects.equals(physicalId, getId())) { throw new IllegalStateException("Physical id matches the logical id!"); } } diff --git a/core/java/android/hardware/camera2/params/ExtensionSessionConfiguration.java b/core/java/android/hardware/camera2/params/ExtensionSessionConfiguration.java index 69a6e9b0ab32..bf3f59fc7480 100644 --- a/core/java/android/hardware/camera2/params/ExtensionSessionConfiguration.java +++ b/core/java/android/hardware/camera2/params/ExtensionSessionConfiguration.java @@ -23,12 +23,13 @@ import android.graphics.ColorSpace; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraExtensionCharacteristics.Extension; import android.hardware.camera2.CameraExtensionSession; +import android.media.ImageReader; + +import com.android.internal.camera.flags.Flags; import java.util.List; import java.util.concurrent.Executor; -import com.android.internal.camera.flags.Flags; - /** * A class that aggregates all supported arguments for * {@link CameraExtensionSession} initialization. diff --git a/core/java/android/hardware/camera2/params/MandatoryStreamCombination.java b/core/java/android/hardware/camera2/params/MandatoryStreamCombination.java index f3b7b919d87d..fb2c2f036b42 100644 --- a/core/java/android/hardware/camera2/params/MandatoryStreamCombination.java +++ b/core/java/android/hardware/camera2/params/MandatoryStreamCombination.java @@ -260,7 +260,7 @@ public final class MandatoryStreamCombination { * smaller sizes, then the resulting * {@link android.hardware.camera2.params.SessionConfiguration session configuration} can * be tested either by calling {@link CameraDevice#createCaptureSession} or - * {@link CameraDeviceSetup#isSessionConfigurationSupported}. + * {@link CameraDevice.CameraDeviceSetup#isSessionConfigurationSupported}. * * @return non-modifiable ascending list of available sizes. */ diff --git a/core/java/android/hardware/camera2/params/SessionConfiguration.java b/core/java/android/hardware/camera2/params/SessionConfiguration.java index 3b2913c81d49..0c55ed5323a0 100644 --- a/core/java/android/hardware/camera2/params/SessionConfiguration.java +++ b/core/java/android/hardware/camera2/params/SessionConfiguration.java @@ -130,8 +130,8 @@ public final class SessionConfiguration implements Parcelable { * Create a new {@link SessionConfiguration} with sessionType and output configurations. * * <p>The SessionConfiguration objects created by this constructor can be used by - * {@link CameraDeviceSetup.isSessionConfigurationSupported} and {@link - * CameraDeviceSetup.getSessionCharacteristics} to query a camera device's feature + * {@link CameraDeviceSetup#isSessionConfigurationSupported} and {@link + * CameraDeviceSetup#getSessionCharacteristics} to query a camera device's feature * combination support and session specific characteristics. For the SessionConfiguration * object to be used to create a capture session, {@link #setStateCallback} must be called to * specify the state callback function, and any incomplete OutputConfigurations must be diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java index 2ded615580fd..903e91646332 100644 --- a/core/java/android/hardware/fingerprint/FingerprintManager.java +++ b/core/java/android/hardware/fingerprint/FingerprintManager.java @@ -699,6 +699,25 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing } /** + * Set whether the HAL should ignore display touches. + * Only applies to sensors where the HAL is reponsible for handling touches. + * @hide + */ + @RequiresPermission(USE_BIOMETRIC_INTERNAL) + public void setIgnoreDisplayTouches(long requestId, int sensorId, boolean ignoreTouch) { + if (mService == null) { + Slog.w(TAG, "setIgnoreDisplayTouches: no fingerprint service"); + return; + } + + try { + mService.setIgnoreDisplayTouches(requestId, sensorId, ignoreTouch); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + /** * Request fingerprint enrollment. This call warms up the fingerprint hardware * and starts scanning for fingerprints. Progress will be indicated by callbacks to the * {@link EnrollmentCallback} object. It terminates when diff --git a/core/java/android/hardware/fingerprint/FingerprintSensorPropertiesInternal.java b/core/java/android/hardware/fingerprint/FingerprintSensorPropertiesInternal.java index f701ec3ec367..d84d29292ed5 100644 --- a/core/java/android/hardware/fingerprint/FingerprintSensorPropertiesInternal.java +++ b/core/java/android/hardware/fingerprint/FingerprintSensorPropertiesInternal.java @@ -120,6 +120,14 @@ public class FingerprintSensorPropertiesInternal extends SensorPropertiesInterna } /** + * Returns if sensor type is ultrasonic Udfps + * @return true if sensor is ultrasonic Udfps, false otherwise + */ + public boolean isUltrasonicUdfps() { + return sensorType == TYPE_UDFPS_ULTRASONIC; + } + + /** * Returns if sensor type is side-FPS * @return true if sensor is side-fps, false otherwise */ diff --git a/core/java/android/hardware/fingerprint/IFingerprintService.aidl b/core/java/android/hardware/fingerprint/IFingerprintService.aidl index 742fa570bad7..370f097b6850 100644 --- a/core/java/android/hardware/fingerprint/IFingerprintService.aidl +++ b/core/java/android/hardware/fingerprint/IFingerprintService.aidl @@ -195,6 +195,9 @@ interface IFingerprintService { @EnforcePermission("USE_BIOMETRIC_INTERNAL") void onUdfpsUiEvent(int event, long requestId, int sensorId); + @EnforcePermission("USE_BIOMETRIC_INTERNAL") + void setIgnoreDisplayTouches(long requestId, int sensorId, boolean ignoreTouches); + // Sets the controller for managing the UDFPS overlay. @EnforcePermission("USE_BIOMETRIC_INTERNAL") void setUdfpsOverlayController(in IUdfpsOverlayController controller); diff --git a/core/java/android/hardware/location/OWNERS b/core/java/android/hardware/location/OWNERS index 747f90947b9c..340d6f2eb08c 100644 --- a/core/java/android/hardware/location/OWNERS +++ b/core/java/android/hardware/location/OWNERS @@ -9,4 +9,4 @@ wyattriley@google.com yuhany@google.com # ContextHub team -per-file *ContextHub*,*NanoApp* = file:platform/system/chre:/OWNERS +per-file Android.bp,*Hub*,*NanoApp* = file:platform/system/chre:/OWNERS diff --git a/core/java/android/hardware/usb/OWNERS b/core/java/android/hardware/usb/OWNERS index a753f9634d0d..37604bc2eb65 100644 --- a/core/java/android/hardware/usb/OWNERS +++ b/core/java/android/hardware/usb/OWNERS @@ -1,7 +1,7 @@ # Bug component: 175220 -aprasath@google.com -kumarashishg@google.com -sarup@google.com anothermark@google.com +febinthattil@google.com +aprasath@google.com badhri@google.com +kumarashishg@google.com
\ No newline at end of file diff --git a/core/java/android/net/NetworkPolicyManager.java b/core/java/android/net/NetworkPolicyManager.java index 334b2316b268..3e6bbf6cdd0c 100644 --- a/core/java/android/net/NetworkPolicyManager.java +++ b/core/java/android/net/NetworkPolicyManager.java @@ -21,6 +21,7 @@ import static android.app.ActivityManager.PROCESS_STATE_UNKNOWN; import static android.app.ActivityManager.procStateToString; import static android.content.pm.PackageManager.GET_SIGNATURES; +import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; @@ -36,6 +37,7 @@ import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.Signature; +import android.net.platform.flags.Flags; import android.net.wifi.WifiConfiguration; import android.net.wifi.WifiInfo; import android.os.Build; @@ -954,11 +956,24 @@ public class NetworkPolicyManager { * @param executor The {@link Executor} to run the callback on. * @param callback The {@link NetworkPolicyCallback} to be registered. * @hide + * + * @deprecated This API is only supported up to Android version + * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}. On later versions, + * {@link android.net.ConnectivityManager.NetworkCallback} should be used wherever possible. + * + * @throws UnsupportedOperationException when called on Android versions after + * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}. */ + @Deprecated + @FlaggedApi(Flags.FLAG_DEPRECATE_NETWORK_POLICY_CALLBACK) @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void registerNetworkPolicyCallback(@Nullable Executor executor, @NonNull NetworkPolicyCallback callback) { + if (Flags.deprecateNetworkPolicyCallback()) { + throw new UnsupportedOperationException("NetworkPolicyCallback is no longer supported." + + " Please use ConnectivityManager APIs instead"); + } if (callback == null) { throw new NullPointerException("Callback cannot be null."); } @@ -974,10 +989,23 @@ public class NetworkPolicyManager { * * @param callback The {@link NetworkPolicyCallback} to be unregistered. * @hide + * + * @deprecated This API is only supported up to Android version + * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}. On later versions, + * {@link android.net.ConnectivityManager.NetworkCallback} should be used wherever possible. + * + * @throws UnsupportedOperationException when called on Android versions after + * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}. */ + @Deprecated + @FlaggedApi(Flags.FLAG_DEPRECATE_NETWORK_POLICY_CALLBACK) @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) @RequiresPermission(android.Manifest.permission.OBSERVE_NETWORK_POLICY) public void unregisterNetworkPolicyCallback(@NonNull NetworkPolicyCallback callback) { + if (Flags.deprecateNetworkPolicyCallback()) { + throw new UnsupportedOperationException("NetworkPolicyCallback is no longer supported." + + " Please use ConnectivityManager APIs instead"); + } if (callback == null) { throw new NullPointerException("Callback cannot be null."); } @@ -990,8 +1018,18 @@ public class NetworkPolicyManager { /** * Interface for the callback to listen for changes to network blocked status of apps. * + * @deprecated This API is only supported up to Android version + * {@link Build.VERSION_CODES#VANILLA_ICE_CREAM}. On later versions, this callback will + * <b>not</b> be called when the network blocked status of an app changes. Instead, + * {@link android.net.ConnectivityManager.NetworkCallback} should be used wherever possible. + * + * @see #registerNetworkPolicyCallback(Executor, NetworkPolicyCallback) + * @see #unregisterNetworkPolicyCallback(NetworkPolicyCallback) + * * @hide */ + @FlaggedApi(Flags.FLAG_DEPRECATE_NETWORK_POLICY_CALLBACK) + @Deprecated @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) public interface NetworkPolicyCallback { /** diff --git a/core/java/android/net/TEST_MAPPING b/core/java/android/net/TEST_MAPPING index 3df56162bd2c..ea509bb24f0a 100644 --- a/core/java/android/net/TEST_MAPPING +++ b/core/java/android/net/TEST_MAPPING @@ -19,21 +19,7 @@ ], "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.net" - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_net" } ] } diff --git a/core/java/android/net/flags.aconfig b/core/java/android/net/flags.aconfig index 048c50eb0a19..f7dc7906d50d 100644 --- a/core/java/android/net/flags.aconfig +++ b/core/java/android/net/flags.aconfig @@ -5,13 +5,6 @@ container: "system" # Flags used for module APIs must be in aconfig files under each modules flag { - name: "ipsec_transform_state" - namespace: "core_networking_ipsec" - description: "The flag controls the access for getIpSecTransformState and IpSecTransformState" - bug: "308011229" -} - -flag { name: "powered_off_finding_platform" namespace: "nearby" description: "Controls whether the Powered Off Finding feature is enabled" @@ -25,3 +18,13 @@ flag { description: "Flag for registerOffloadEngine API in NsdManager" bug: "294777050" } + +flag { + name: "deprecate_network_policy_callback" + namespace: "backstage_power" + description: "Flag for deprecating NetworkPolicyCallback and related APIs" + bug: "353342610" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/core/java/android/net/vcn/OWNERS b/core/java/android/net/vcn/OWNERS index 2441e772468c..937699a92968 100644 --- a/core/java/android/net/vcn/OWNERS +++ b/core/java/android/net/vcn/OWNERS @@ -1,7 +1,6 @@ set noparent -benedictwong@google.com -ckesting@google.com evitayan@google.com -junyin@google.com nharold@google.com +benedictwong@google.com #{LAST_RESORT_SUGGESTION} +yangji@google.com #{LAST_RESORT_SUGGESTION} diff --git a/core/java/android/net/vcn/VcnCellUnderlyingNetworkTemplate.java b/core/java/android/net/vcn/VcnCellUnderlyingNetworkTemplate.java index 46cf0163c0e5..c0398ce1fcf1 100644 --- a/core/java/android/net/vcn/VcnCellUnderlyingNetworkTemplate.java +++ b/core/java/android/net/vcn/VcnCellUnderlyingNetworkTemplate.java @@ -40,9 +40,9 @@ import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import android.telephony.TelephonyManager; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.Preconditions; import com.android.server.vcn.util.PersistableBundleUtils; diff --git a/core/java/android/net/vcn/VcnFrameworkInitializer.java b/core/java/android/net/vcn/VcnFrameworkInitializer.java new file mode 100644 index 000000000000..8cb213b306be --- /dev/null +++ b/core/java/android/net/vcn/VcnFrameworkInitializer.java @@ -0,0 +1,106 @@ +/* + * Copyright (C) 2024 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.net.vcn; + +import android.annotation.Nullable; +import android.app.SystemServiceRegistry; +import android.compat.Compatibility; +import android.compat.annotation.ChangeId; +import android.compat.annotation.EnabledSince; +import android.content.Context; +import android.content.pm.PackageManager; +import android.os.Build; +import android.os.SystemProperties; + +/** + * Class for performing registration for VCN service. + * + * @hide + */ +// TODO: Expose it as @SystemApi(client = MODULE_LIBRARIES) +public final class VcnFrameworkInitializer { + /** + * Starting with {@link VANILLA_ICE_CREAM}, Telephony feature flags (e.g. {@link + * PackageManager#FEATURE_TELEPHONY_SUBSCRIPTION}) are being checked before returning managers + * that depend on them. If the feature is missing, {@link Context#getSystemService} will return + * null. + * + * <p>This change is specific to VcnManager. + */ + @ChangeId + @EnabledSince(targetSdkVersion = Build.VERSION_CODES.VANILLA_ICE_CREAM) + private static final long ENABLE_CHECKING_TELEPHONY_FEATURES_FOR_VCN = 330902016; + + /** + * The corresponding vendor API for Android V + * + * <p>Starting with Android V, the vendor API format has switched to YYYYMM. + * + * @see <a href="https://preview.source.android.com/docs/core/architecture/api-flags">Vendor API + * level</a> + */ + private static final int VENDOR_API_FOR_ANDROID_V = 202404; + + private VcnFrameworkInitializer() {} + + // Suppressing AndroidFrameworkCompatChange because we're querying vendor + // partition SDK level, not application's target SDK version (which BTW we + // also check through Compatibility framework a few lines below). + @Nullable + private static String getVcnFeatureDependency() { + // Check SDK version of the client app. Apps targeting pre-V SDK might + // have not checked for existence of these features. + if (!Compatibility.isChangeEnabled(ENABLE_CHECKING_TELEPHONY_FEATURES_FOR_VCN)) { + return null; + } + + // Check SDK version of the vendor partition. Pre-V devices might have + // incorrectly under-declared telephony features. + final int vendorApiLevel = + SystemProperties.getInt( + "ro.vendor.api_level", Build.VERSION.DEVICE_INITIAL_SDK_INT); + if (vendorApiLevel < VENDOR_API_FOR_ANDROID_V) { + return PackageManager.FEATURE_TELEPHONY; + } else { + return PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION; + } + } + + /** + * Register VCN service to {@link Context}, so that {@link Context#getSystemService} can return + * a VcnManager. + * + * @throws IllegalStateException if this is called anywhere besides {@link + * SystemServiceRegistry}. + */ + public static void registerServiceWrappers() { + SystemServiceRegistry.registerContextAwareService( + VcnManager.VCN_MANAGEMENT_SERVICE_STRING, + VcnManager.class, + (context, serviceBinder) -> { + final String telephonyFeatureToCheck = getVcnFeatureDependency(); + if (telephonyFeatureToCheck != null + && !context.getPackageManager() + .hasSystemFeature(telephonyFeatureToCheck)) { + return null; + } + IVcnManagementService service = + IVcnManagementService.Stub.asInterface(serviceBinder); + return new VcnManager(context, service); + }); + } +} diff --git a/core/java/android/net/vcn/VcnGatewayConnectionConfig.java b/core/java/android/net/vcn/VcnGatewayConnectionConfig.java index 6f11d3ae661c..af93c964a8ba 100644 --- a/core/java/android/net/vcn/VcnGatewayConnectionConfig.java +++ b/core/java/android/net/vcn/VcnGatewayConnectionConfig.java @@ -35,7 +35,6 @@ import android.os.PersistableBundle; import android.util.ArraySet; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.util.ArrayUtils; import com.android.internal.util.Preconditions; import com.android.server.vcn.util.PersistableBundleUtils; @@ -434,7 +433,14 @@ public final class VcnGatewayConnectionConfig { @NonNull public int[] getExposedCapabilities() { // Sorted set guarantees ordering - return ArrayUtils.convertToIntArray(new ArrayList<>(mExposedCapabilities)); + final int[] caps = new int[mExposedCapabilities.size()]; + + int i = 0; + for (int c : mExposedCapabilities) { + caps[i++] = c; + } + + return caps; } /** diff --git a/core/java/android/net/vcn/VcnManager.java b/core/java/android/net/vcn/VcnManager.java index 91cdf8d8fcae..f275714e2cf5 100644 --- a/core/java/android/net/vcn/VcnManager.java +++ b/core/java/android/net/vcn/VcnManager.java @@ -28,13 +28,13 @@ import android.content.Context; import android.content.pm.PackageManager; import android.net.LinkProperties; import android.net.NetworkCapabilities; -import android.os.Binder; import android.os.ParcelUuid; import android.os.RemoteException; import android.os.ServiceSpecificException; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; +import com.android.net.module.util.BinderUtils; import java.io.IOException; import java.lang.annotation.Retention; @@ -76,11 +76,15 @@ import java.util.concurrent.Executor; * PackageManager#FEATURE_TELEPHONY_SUBSCRIPTION} before querying the service. If the feature is * absent, {@link Context#getSystemService} may return null. */ -@SystemService(Context.VCN_MANAGEMENT_SERVICE) +@SystemService(VcnManager.VCN_MANAGEMENT_SERVICE_STRING) @RequiresFeature(PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION) public class VcnManager { @NonNull private static final String TAG = VcnManager.class.getSimpleName(); + // TODO: b/366598445: Expose and use Context.VCN_MANAGEMENT_SERVICE + /** @hide */ + public static final String VCN_MANAGEMENT_SERVICE_STRING = "vcn_management"; + /** * Key for WiFi entry RSSI thresholds * @@ -707,7 +711,7 @@ public class VcnManager { @Override public void onPolicyChanged() { - Binder.withCleanCallingIdentity( + BinderUtils.withCleanCallingIdentity( () -> mExecutor.execute(() -> mListener.onPolicyChanged())); } } @@ -730,7 +734,7 @@ public class VcnManager { @Override public void onVcnStatusChanged(@VcnStatusCode int statusCode) { - Binder.withCleanCallingIdentity( + BinderUtils.withCleanCallingIdentity( () -> mExecutor.execute(() -> mCallback.onStatusChanged(statusCode))); } @@ -743,7 +747,7 @@ public class VcnManager { @Nullable String exceptionMessage) { final Throwable cause = createThrowableByClassName(exceptionClass, exceptionMessage); - Binder.withCleanCallingIdentity( + BinderUtils.withCleanCallingIdentity( () -> mExecutor.execute( () -> diff --git a/core/java/android/net/vcn/VcnTransportInfo.java b/core/java/android/net/vcn/VcnTransportInfo.java index f5469104be7f..1fc91eea3138 100644 --- a/core/java/android/net/vcn/VcnTransportInfo.java +++ b/core/java/android/net/vcn/VcnTransportInfo.java @@ -17,9 +17,11 @@ package android.net.vcn; import static android.net.NetworkCapabilities.REDACT_FOR_NETWORK_SETTINGS; +import static android.net.vcn.VcnGatewayConnectionConfig.MIN_UDP_PORT_4500_NAT_TIMEOUT_SECONDS; import static android.net.vcn.VcnGatewayConnectionConfig.MIN_UDP_PORT_4500_NAT_TIMEOUT_UNSET; import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID; +import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; import android.net.NetworkCapabilities; @@ -29,6 +31,8 @@ import android.os.Parcel; import android.os.Parcelable; import android.telephony.SubscriptionManager; +import com.android.internal.util.Preconditions; + import java.util.Objects; /** @@ -47,6 +51,7 @@ import java.util.Objects; * * @hide */ +// TODO: Do not store WifiInfo and subscription ID in VcnTransportInfo anymore public class VcnTransportInfo implements TransportInfo, Parcelable { @Nullable private final WifiInfo mWifiInfo; private final int mSubId; @@ -195,4 +200,42 @@ public class VcnTransportInfo implements TransportInfo, Parcelable { return new VcnTransportInfo[size]; } }; + + /** This class can be used to construct a {@link VcnTransportInfo}. */ + public static final class Builder { + private int mMinUdpPort4500NatTimeoutSeconds = MIN_UDP_PORT_4500_NAT_TIMEOUT_UNSET; + + /** Construct Builder */ + public Builder() {} + + /** + * Sets the maximum supported IKEv2/IPsec NATT keepalive timeout. + * + * <p>This is used as a power-optimization hint for other IKEv2/IPsec use cases (e.g. VPNs, + * or IWLAN) to reduce the necessary keepalive frequency, thus conserving power and data. + * + * @param minUdpPort4500NatTimeoutSeconds the maximum keepalive timeout supported by the VCN + * Gateway Connection, generally the minimum duration a NAT mapping is cached on the VCN + * Gateway. + * @return this {@link Builder} instance, for chaining + */ + @NonNull + public Builder setMinUdpPort4500NatTimeoutSeconds( + @IntRange(from = MIN_UDP_PORT_4500_NAT_TIMEOUT_SECONDS) + int minUdpPort4500NatTimeoutSeconds) { + Preconditions.checkArgument( + minUdpPort4500NatTimeoutSeconds >= MIN_UDP_PORT_4500_NAT_TIMEOUT_SECONDS, + "Timeout must be at least 120s"); + + mMinUdpPort4500NatTimeoutSeconds = minUdpPort4500NatTimeoutSeconds; + return Builder.this; + } + + /** Build a VcnTransportInfo instance */ + @NonNull + public VcnTransportInfo build() { + return new VcnTransportInfo( + null /* wifiInfo */, INVALID_SUBSCRIPTION_ID, mMinUdpPort4500NatTimeoutSeconds); + } + } } diff --git a/core/java/android/net/vcn/VcnUnderlyingNetworkSpecifier.java b/core/java/android/net/vcn/VcnUnderlyingNetworkSpecifier.java index a97563724e50..e1d1b3c65c99 100644 --- a/core/java/android/net/vcn/VcnUnderlyingNetworkSpecifier.java +++ b/core/java/android/net/vcn/VcnUnderlyingNetworkSpecifier.java @@ -24,7 +24,6 @@ import android.os.Parcelable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.ArrayUtils; import java.util.Arrays; import java.util.Objects; @@ -114,8 +113,13 @@ public final class VcnUnderlyingNetworkSpecifier extends NetworkSpecifier implem @Override public boolean canBeSatisfiedBy(NetworkSpecifier other) { if (other instanceof TelephonyNetworkSpecifier) { - return ArrayUtils.contains( - mSubIds, ((TelephonyNetworkSpecifier) other).getSubscriptionId()); + final int targetSubId = ((TelephonyNetworkSpecifier) other).getSubscriptionId(); + for (int subId : mSubIds) { + if (targetSubId == subId) { + return true; + } + } + return false; } // TODO(b/180140053): Allow matching against WifiNetworkAgentSpecifier diff --git a/core/java/android/net/vcn/VcnUnderlyingNetworkTemplate.java b/core/java/android/net/vcn/VcnUnderlyingNetworkTemplate.java index edf2c093bc8b..16114dd135af 100644 --- a/core/java/android/net/vcn/VcnUnderlyingNetworkTemplate.java +++ b/core/java/android/net/vcn/VcnUnderlyingNetworkTemplate.java @@ -21,10 +21,10 @@ import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.os.PersistableBundle; +import android.util.IndentingPrintWriter; import android.util.SparseArray; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.Preconditions; import java.lang.annotation.Retention; diff --git a/core/java/android/net/vcn/VcnUtils.java b/core/java/android/net/vcn/VcnUtils.java new file mode 100644 index 000000000000..6dc518097737 --- /dev/null +++ b/core/java/android/net/vcn/VcnUtils.java @@ -0,0 +1,97 @@ +/* + * Copyright (C) 2024 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.net.vcn; + +import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.net.ConnectivityManager; +import android.net.Network; +import android.net.NetworkCapabilities; +import android.net.NetworkSpecifier; +import android.net.TelephonyNetworkSpecifier; +import android.net.TransportInfo; +import android.net.wifi.WifiInfo; + +import java.util.List; + +/** + * Utility class for VCN callers get information from VCN network + * + * @hide + */ +public class VcnUtils { + /** Get the WifiInfo of the VCN's underlying WiFi network */ + @Nullable + public static WifiInfo getWifiInfoFromVcnCaps( + @NonNull ConnectivityManager connectivityMgr, + @NonNull NetworkCapabilities networkCapabilities) { + final NetworkCapabilities underlyingCaps = + getVcnUnderlyingCaps(connectivityMgr, networkCapabilities); + + if (underlyingCaps == null) { + return null; + } + + final TransportInfo underlyingTransportInfo = underlyingCaps.getTransportInfo(); + if (!(underlyingTransportInfo instanceof WifiInfo)) { + return null; + } + + return (WifiInfo) underlyingTransportInfo; + } + + /** Get the subscription ID of the VCN's underlying Cell network */ + public static int getSubIdFromVcnCaps( + @NonNull ConnectivityManager connectivityMgr, + @NonNull NetworkCapabilities networkCapabilities) { + final NetworkCapabilities underlyingCaps = + getVcnUnderlyingCaps(connectivityMgr, networkCapabilities); + + if (underlyingCaps == null) { + return INVALID_SUBSCRIPTION_ID; + } + + final NetworkSpecifier underlyingNetworkSpecifier = underlyingCaps.getNetworkSpecifier(); + if (!(underlyingNetworkSpecifier instanceof TelephonyNetworkSpecifier)) { + return INVALID_SUBSCRIPTION_ID; + } + + return ((TelephonyNetworkSpecifier) underlyingNetworkSpecifier).getSubscriptionId(); + } + + @Nullable + private static NetworkCapabilities getVcnUnderlyingCaps( + @NonNull ConnectivityManager connectivityMgr, + @NonNull NetworkCapabilities networkCapabilities) { + // Return null if it is not a VCN network + if (networkCapabilities.getTransportInfo() == null + || !(networkCapabilities.getTransportInfo() instanceof VcnTransportInfo)) { + return null; + } + + // As of Android 16, VCN has one underlying network, and only one. If there are more + // than one networks due to future changes in the VCN mainline code, just take the first + // network + final List<Network> underlyingNws = networkCapabilities.getUnderlyingNetworks(); + if (underlyingNws == null) { + return null; + } + + return connectivityMgr.getNetworkCapabilities(underlyingNws.get(0)); + } +} diff --git a/core/java/android/net/vcn/VcnWifiUnderlyingNetworkTemplate.java b/core/java/android/net/vcn/VcnWifiUnderlyingNetworkTemplate.java index 2e6b09f032fb..c7b2f188ba96 100644 --- a/core/java/android/net/vcn/VcnWifiUnderlyingNetworkTemplate.java +++ b/core/java/android/net/vcn/VcnWifiUnderlyingNetworkTemplate.java @@ -29,9 +29,9 @@ import android.net.NetworkCapabilities; import android.net.vcn.VcnUnderlyingNetworkTemplate.MatchCriteria; import android.os.PersistableBundle; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.util.IndentingPrintWriter; import com.android.server.vcn.util.PersistableBundleUtils; import java.util.ArrayList; diff --git a/core/java/android/net/vcn/flags.aconfig b/core/java/android/net/vcn/flags.aconfig index d4d1ed22dd4e..1b2c575917b2 100644 --- a/core/java/android/net/vcn/flags.aconfig +++ b/core/java/android/net/vcn/flags.aconfig @@ -10,58 +10,18 @@ flag { } flag { - name: "safe_mode_timeout_config" - namespace: "vcn" - description: "Feature flag for adjustable safe mode timeout" - bug: "317406085" -} - -flag{ - name: "network_metric_monitor" - namespace: "vcn" - description: "Feature flag for enabling network metric monitor" - bug: "282996138" -} - -flag{ - name: "validate_network_on_ipsec_loss" - namespace: "vcn" - description: "Trigger network validation when IPsec packet loss exceeds the threshold" - bug: "329139898" -} - -flag{ - name: "evaluate_ipsec_loss_on_lp_nc_change" - namespace: "vcn" - description: "Re-evaluate IPsec packet loss on LinkProperties or NetworkCapabilities change" - bug: "323238888" + name: "mainline_vcn_module_api" + namespace: "vcn" + description: "Expose APIs from VCN for mainline migration" + is_exported: true + bug: "376339506" } -flag{ - name: "enforce_main_user" - namespace: "vcn" - description: "Enforce main user to make VCN HSUM compatible" - bug: "310310661" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag{ - name: "handle_seq_num_leap" - namespace: "vcn" - description: "Do not report bad network when there is a suspected sequence number leap" - bug: "332598276" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag{ - name: "allow_disable_ipsec_loss_detector" +flag { + name: "fix_config_garbage_collection" namespace: "vcn" - description: "Allow disabling IPsec packet loss detector" - bug: "336638836" + description: "Handle race condition in subscription change" + bug: "370862489" metadata { purpose: PURPOSE_BUGFIX } diff --git a/core/java/android/os/AppZygote.java b/core/java/android/os/AppZygote.java index 07fbe4a04ff1..0541a96e990e 100644 --- a/core/java/android/os/AppZygote.java +++ b/core/java/android/os/AppZygote.java @@ -111,12 +111,15 @@ public class AppZygote { try { int runtimeFlags = Zygote.getMemorySafetyRuntimeFlagsForSecondaryZygote( mAppInfo, mProcessInfo); + + final int[] sharedAppGid = { + UserHandle.getSharedAppGid(UserHandle.getAppId(mAppInfo.uid)) }; mZygote = Process.ZYGOTE_PROCESS.startChildZygote( "com.android.internal.os.AppZygoteInit", mAppInfo.processName + "_zygote", mZygoteUid, mZygoteUid, - null, // gids + sharedAppGid, // Zygote gets access to shared app GID for profiles runtimeFlags, "app_zygote", // seInfo abi, // abi diff --git a/core/java/android/os/ArtModuleServiceManager.java b/core/java/android/os/ArtModuleServiceManager.java index e0b631d69ca8..995094bb1318 100644 --- a/core/java/android/os/ArtModuleServiceManager.java +++ b/core/java/android/os/ArtModuleServiceManager.java @@ -37,10 +37,12 @@ public class ArtModuleServiceManager { /** A class that exposes the method to obtain each system service. */ public static final class ServiceRegisterer { @NonNull private final String mServiceName; + private final boolean mRetry; /** @hide */ - public ServiceRegisterer(@NonNull String serviceName) { + public ServiceRegisterer(@NonNull String serviceName, boolean retry) { mServiceName = serviceName; + mRetry = retry; } /** @@ -53,27 +55,47 @@ public class ArtModuleServiceManager { */ @Nullable public IBinder waitForService() { - return ServiceManager.waitForService(mServiceName); + if (mRetry) { + return ServiceManager.waitForService(mServiceName); + } + IBinder binder = ServiceManager.getService(mServiceName); + for (int remainingTimeMs = 5000; binder == null && remainingTimeMs > 0; + remainingTimeMs -= 100) { + // There can be a race: + // 1. Client A invokes "ctl.start", which starts the service. + // 2. Client A gets a service handle from `ServiceManager.getService`. + // 3. Client B invokes "ctl.start", which does nothing because the service is + // already running. + // 4. Client A drops the service handle. The service is notified that there is no + // more client at that point, so it shuts down itself. + // 5. Client B cannot get a service handle from `ServiceManager.getService` because + // the service is shut down. + // To address this problem, we invoke "ctl.start" repeatedly. + SystemProperties.set("ctl.start", mServiceName); + SystemClock.sleep(100); + binder = ServiceManager.getService(mServiceName); + } + return binder; } } /** Returns {@link ServiceRegisterer} for the "artd" service. */ @NonNull public ServiceRegisterer getArtdServiceRegisterer() { - return new ServiceRegisterer("artd"); + return new ServiceRegisterer("artd", true /* retry */); } /** Returns {@link ServiceRegisterer} for the "artd_pre_reboot" service. */ @NonNull @FlaggedApi(Flags.FLAG_USE_ART_SERVICE_V2) public ServiceRegisterer getArtdPreRebootServiceRegisterer() { - return new ServiceRegisterer("artd_pre_reboot"); + return new ServiceRegisterer("artd_pre_reboot", false /* retry */); } /** Returns {@link ServiceRegisterer} for the "dexopt_chroot_setup" service. */ @NonNull @FlaggedApi(Flags.FLAG_USE_ART_SERVICE_V2) public ServiceRegisterer getDexoptChrootSetupServiceRegisterer() { - return new ServiceRegisterer("dexopt_chroot_setup"); + return new ServiceRegisterer("dexopt_chroot_setup", true /* retry */); } } diff --git a/core/java/android/os/BatteryManager.java b/core/java/android/os/BatteryManager.java index f3efd89d4bc3..8b267bf28c7e 100644 --- a/core/java/android/os/BatteryManager.java +++ b/core/java/android/os/BatteryManager.java @@ -141,6 +141,7 @@ public class BatteryManager { /** * Extra for {@link android.content.Intent#ACTION_BATTERY_CHANGED}: * integer containing the charge counter present in the battery. + * It shows the available battery power in µAh * {@hide} */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) @@ -166,6 +167,76 @@ public class BatteryManager { public static final String EXTRA_CHARGING_STATUS = "android.os.extra.CHARGING_STATUS"; /** + * Extra for {@link android.content.Intent#ACTION_BATTERY_CHANGED}: + * Int value representing the battery's capacity level. These constants are key indicators of + * battery status and system capabilities, guiding power management decisions for both the + * system and apps: + * {@link #BATTERY_CAPACITY_LEVEL_UNSUPPORTED}: Feature not supported on this device. + * {@link #BATTERY_CAPACITY_LEVEL_UNKNOWN}: Battery status is unavailable or uninitialized. + * {@link #BATTERY_CAPACITY_LEVEL_CRITICAL}: Battery is critically low and the Android + * framework has been notified to schedule a shutdown by this value + * {@link #BATTERY_CAPACITY_LEVEL_LOW}: Android framework must limit background jobs to + * avoid impacting charging speed + * {@link #BATTERY_CAPACITY_LEVEL_NORMAL}: Battery level and charging rates are normal, + * battery temperature is within normal range and adapter power is enough to charge the + * battery at an acceptable rate. Android framework can run light background tasks without + * affecting charging performance severely. + * {@link #BATTERY_CAPACITY_LEVEL_HIGH}: Battery level is high, battery temperature is + * within normal range and adapter power is enough to charge the battery at an acceptable + * rate while running background loads. Android framework can run background tasks without + * affecting charging or battery performance. + * {@link #BATTERY_CAPACITY_LEVEL_FULL}: The battery is full, battery temperature is + * within normal range and adapter power is enough to sustain running background loads. + * Android framework can run background tasks without affecting the battery level or + * battery performance. + */ + + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final String EXTRA_CAPACITY_LEVEL = "android.os.extra.CAPACITY_LEVEL"; + + /** + * Battery capacity level is unsupported. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_UNSUPPORTED = -1; + + /** + * Battery capacity level is unknown. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_UNKNOWN = 0; + + /** + * Battery capacity level is critical. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_CRITICAL = 1; + + /** + * Battery capacity level is low. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_LOW = 2; + + /** + * Battery capacity level is normal. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_NORMAL = 3; + + /** + * Battery capacity level is high. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_HIGH = 4; + + /** + * Battery capacity level is full. @see EXTRA_CAPACITY_LEVEL + */ + @FlaggedApi(FLAG_BATTERY_PART_STATUS_API) + public static final int BATTERY_CAPACITY_LEVEL_FULL = 5; + + /** * Extra for {@link android.content.Intent#ACTION_BATTERY_LEVEL_CHANGED}: * Contains list of Bundles representing battery events * @hide diff --git a/core/java/android/os/Binder.java b/core/java/android/os/Binder.java index b7556dfb51af..ed75491b8e21 100644 --- a/core/java/android/os/Binder.java +++ b/core/java/android/os/Binder.java @@ -21,6 +21,8 @@ import android.annotation.Nullable; import android.annotation.SystemApi; import android.app.AppOpsManager; import android.compat.annotation.UnsupportedAppUsage; +import android.ravenwood.annotation.RavenwoodClassLoadHook; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; import android.util.ExceptionUtils; import android.util.Log; import android.util.Slog; @@ -30,11 +32,9 @@ import com.android.internal.os.BinderCallHeavyHitterWatcher; import com.android.internal.os.BinderCallHeavyHitterWatcher.BinderCallHeavyHitterListener; import com.android.internal.os.BinderInternal; import com.android.internal.os.BinderInternal.CallSession; -import com.android.internal.os.SomeArgs; import com.android.internal.util.FastPrintWriter; import com.android.internal.util.FunctionalUtils.ThrowingRunnable; import com.android.internal.util.FunctionalUtils.ThrowingSupplier; -import com.android.internal.util.Preconditions; import dalvik.annotation.optimization.CriticalNative; @@ -48,7 +48,6 @@ import java.io.IOException; import java.io.PrintWriter; import java.lang.reflect.Modifier; import java.util.concurrent.atomic.AtomicReferenceArray; -import java.util.function.Supplier; /** * Base class for a remotable object, the core part of a lightweight @@ -82,6 +81,8 @@ import java.util.function.Supplier; * * @see IBinder */ +@RavenwoodKeepWholeClass +@RavenwoodClassLoadHook(RavenwoodClassLoadHook.LIBANDROID_LOADING_HOOK) public class Binder implements IBinder { /* * Set this flag to true to detect anonymous, local or member classes @@ -292,33 +293,6 @@ public class Binder implements IBinder { sWarnOnBlockingOnCurrentThread.set(sWarnOnBlocking); } - private static volatile ThreadLocal<SomeArgs> sIdentity$ravenwood; - - @android.ravenwood.annotation.RavenwoodKeepWholeClass - private static class IdentitySupplier implements Supplier<SomeArgs> { - @Override - public SomeArgs get() { - final SomeArgs args = SomeArgs.obtain(); - // Match IPCThreadState behavior - args.arg1 = Boolean.FALSE; - args.argi1 = android.os.Process.myUid(); - args.argi2 = android.os.Process.myPid(); - return args; - } - } - - /** @hide */ - @android.ravenwood.annotation.RavenwoodKeep - public static void init$ravenwood() { - sIdentity$ravenwood = ThreadLocal.withInitial(new IdentitySupplier()); - } - - /** @hide */ - @android.ravenwood.annotation.RavenwoodKeep - public static void reset$ravenwood() { - sIdentity$ravenwood = null; - } - /** * Raw native pointer to JavaBBinderHolder object. Owned by this Java object. Not null. */ @@ -346,14 +320,8 @@ public class Binder implements IBinder { * 0 for a synchronous call. */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace public static final native int getCallingPid(); - /** @hide */ - public static final int getCallingPid$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().argi2; - } - /** * Return the Linux UID assigned to the process that sent you the * current transaction that is being processed. This UID can be used with @@ -362,14 +330,8 @@ public class Binder implements IBinder { * incoming transaction, then its own UID is returned. */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace public static final native int getCallingUid(); - /** @hide */ - public static final int getCallingUid$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().argi1; - } - /** * Returns {@code true} if the current thread is currently executing an * incoming transaction. @@ -377,21 +339,13 @@ public class Binder implements IBinder { * @hide */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace public static final native boolean isDirectlyHandlingTransactionNative(); - /** @hide */ - public static final boolean isDirectlyHandlingTransactionNative$ravenwood() { - // Ravenwood doesn't support IPC - return false; - } - private static boolean sIsHandlingBinderTransaction = false; /** * @hide */ - @android.ravenwood.annotation.RavenwoodKeep public static final boolean isDirectlyHandlingTransaction() { return sIsHandlingBinderTransaction || isDirectlyHandlingTransactionNative(); } @@ -400,7 +354,6 @@ public class Binder implements IBinder { * This is Test API which will be used to override output of isDirectlyHandlingTransactionNative * @hide */ - @android.ravenwood.annotation.RavenwoodKeep public static void setIsDirectlyHandlingTransactionOverride(boolean isInTransaction) { sIsHandlingBinderTransaction = isInTransaction; } @@ -412,15 +365,8 @@ public class Binder implements IBinder { * @hide */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace private static native boolean hasExplicitIdentity(); - /** @hide */ - private static boolean hasExplicitIdentity$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().arg1 - == Boolean.TRUE; - } - /** * Return the Linux UID assigned to the process that sent the transaction * currently being processed. @@ -429,7 +375,6 @@ public class Binder implements IBinder { * executing an incoming transaction and the calling identity has not been * explicitly set with {@link #clearCallingIdentity()} */ - @android.ravenwood.annotation.RavenwoodKeep public static final int getCallingUidOrThrow() { if (!isDirectlyHandlingTransaction() && !hasExplicitIdentity()) { throw new IllegalStateException( @@ -491,26 +436,8 @@ public class Binder implements IBinder { * @see #restoreCallingIdentity(long) */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace public static final native long clearCallingIdentity(); - /** @hide */ - public static final long clearCallingIdentity$ravenwood() { - final SomeArgs args = Preconditions.requireNonNullViaRavenwoodRule( - sIdentity$ravenwood).get(); - long res = ((long) args.argi1 << 32) | args.argi2; - if (args.arg1 == Boolean.TRUE) { - res |= (0x1 << 30); - } else { - res &= ~(0x1 << 30); - } - // Match IPCThreadState behavior - args.arg1 = Boolean.TRUE; - args.argi1 = android.os.Process.myUid(); - args.argi2 = android.os.Process.myPid(); - return res; - } - /** * Restore the identity of the incoming IPC on the current thread * back to a previously identity that was returned by {@link @@ -522,18 +449,8 @@ public class Binder implements IBinder { * @see #clearCallingIdentity */ @CriticalNative - @android.ravenwood.annotation.RavenwoodReplace public static final native void restoreCallingIdentity(long token); - /** @hide */ - public static final void restoreCallingIdentity$ravenwood(long token) { - final SomeArgs args = Preconditions.requireNonNullViaRavenwoodRule( - sIdentity$ravenwood).get(); - args.arg1 = ((token & (0x1 << 30)) != 0) ? Boolean.TRUE : Boolean.FALSE; - args.argi1 = (int) (token >> 32); - args.argi2 = (int) (token & ~(0x1 << 30)); - } - /** * Convenience method for running the provided action enclosed in * {@link #clearCallingIdentity}/{@link #restoreCallingIdentity}. @@ -729,14 +646,8 @@ public class Binder implements IBinder { * in order to prevent the process from holding on to objects longer than * it needs to. */ - @android.ravenwood.annotation.RavenwoodReplace public static final native void flushPendingCommands(); - /** @hide */ - public static final void flushPendingCommands$ravenwood() { - // Ravenwood doesn't support IPC; ignored - } - /** * Add the calling thread to the IPC thread pool. This function does * not return until the current process is exiting. @@ -794,7 +705,6 @@ public class Binder implements IBinder { * <p>If you're creating a Binder token (a Binder object without an attached interface), * you should use {@link #Binder(String)} instead. */ - @android.ravenwood.annotation.RavenwoodKeep public Binder() { this(null); } @@ -811,12 +721,9 @@ public class Binder implements IBinder { * Instead of creating multiple tokens with the same descriptor, consider adding a suffix to * help identify them. */ - @android.ravenwood.annotation.RavenwoodKeep public Binder(@Nullable String descriptor) { mObject = getNativeBBinderHolder(); - if (mObject != 0L) { - NoImagePreloadHolder.sRegistry.registerNativeAllocation(this, mObject); - } + NoImagePreloadHolder.sRegistry.registerNativeAllocation(this, mObject); if (FIND_POTENTIAL_LEAKS) { final Class<? extends Binder> klass = getClass(); @@ -835,7 +742,6 @@ public class Binder implements IBinder { * will be implemented for you to return the given owner IInterface when * the corresponding descriptor is requested. */ - @android.ravenwood.annotation.RavenwoodKeep public void attachInterface(@Nullable IInterface owner, @Nullable String descriptor) { mOwner = owner; mDescriptor = descriptor; @@ -844,7 +750,6 @@ public class Binder implements IBinder { /** * Default implementation returns an empty interface name. */ - @android.ravenwood.annotation.RavenwoodKeep public @Nullable String getInterfaceDescriptor() { return mDescriptor; } @@ -853,7 +758,6 @@ public class Binder implements IBinder { * Default implementation always returns true -- if you got here, * the object is alive. */ - @android.ravenwood.annotation.RavenwoodKeep public boolean pingBinder() { return true; } @@ -864,7 +768,6 @@ public class Binder implements IBinder { * Note that if you're calling on a local binder, this always returns true * because your process is alive if you're calling it. */ - @android.ravenwood.annotation.RavenwoodKeep public boolean isBinderAlive() { return true; } @@ -874,7 +777,6 @@ public class Binder implements IBinder { * to return the associated {@link IInterface} if it matches the requested * descriptor. */ - @android.ravenwood.annotation.RavenwoodKeep public @Nullable IInterface queryLocalInterface(@NonNull String descriptor) { if (mDescriptor != null && mDescriptor.equals(descriptor)) { return mOwner; @@ -1073,7 +975,6 @@ public class Binder implements IBinder { * * @hide */ - @android.ravenwood.annotation.RavenwoodKeep public @Nullable String getTransactionName(int transactionCode) { return null; } @@ -1082,7 +983,6 @@ public class Binder implements IBinder { * @hide */ @VisibleForTesting - @android.ravenwood.annotation.RavenwoodKeep public final @Nullable String getTransactionTraceName(int transactionCode) { final boolean isInterfaceUserDefined = getMaxTransactionId() == 0; if (mTransactionTraceNames == null) { @@ -1120,7 +1020,6 @@ public class Binder implements IBinder { return transactionTraceName; } - @android.ravenwood.annotation.RavenwoodKeep private @NonNull String getSimpleDescriptor() { String descriptor = mDescriptor; if (descriptor == null) { @@ -1140,7 +1039,6 @@ public class Binder implements IBinder { * @return The highest user-defined transaction id of all transactions. * @hide */ - @android.ravenwood.annotation.RavenwoodKeep public int getMaxTransactionId() { return 0; } @@ -1213,6 +1111,21 @@ public class Binder implements IBinder { } /** + * Called whenever the stub implementation throws an exception which isn't propagated to the + * remote caller by the binder. If this method isn't overridden, this exception is swallowed, + * and some default return values are propagated to the caller. + * + * <br> <b> This should not throw. </b> Doing so would defeat the purpose of this handler, and + * suppress the exception it is handling. + * + * @param code The transaction code being handled + * @param e The exception which was thrown. + * @hide + */ + protected void onUnhandledException(int code, int flags, Exception e) { + } + + /** * @param in The raw file descriptor that an input data stream can be read from. * @param out The raw file descriptor that normal command messages should be written to. * @param err The raw file descriptor that command error messages should be written to. @@ -1352,14 +1265,12 @@ public class Binder implements IBinder { /** * Local implementation is a no-op. */ - @android.ravenwood.annotation.RavenwoodKeep public void linkToDeath(@NonNull DeathRecipient recipient, int flags) { } /** * Local implementation is a no-op. */ - @android.ravenwood.annotation.RavenwoodKeep public boolean unlinkToDeath(@NonNull DeathRecipient recipient, int flags) { return true; } @@ -1387,13 +1298,8 @@ public class Binder implements IBinder { } } - @android.ravenwood.annotation.RavenwoodReplace private static native long getNativeBBinderHolder(); - private static long getNativeBBinderHolder$ravenwood() { - return 0L; - } - /** * By default, we use the calling UID since we can always trust it. */ @@ -1517,10 +1423,15 @@ public class Binder implements IBinder { } else { Log.w(TAG, "Caught a RuntimeException from the binder stub implementation.", e); } + onUnhandledException(code, flags, e); } else { // Clear the parcel before writing the exception. reply.setDataSize(0); reply.setDataPosition(0); + // The writeException below won't do anything useful if this is the case. + if (Parcel.getExceptionCode(e) == 0) { + onUnhandledException(code, flags, e); + } reply.writeException(e); } res = true; diff --git a/core/java/android/os/BinderProxy.java b/core/java/android/os/BinderProxy.java index 1100731702a2..3b5a99ed089a 100644 --- a/core/java/android/os/BinderProxy.java +++ b/core/java/android/os/BinderProxy.java @@ -493,6 +493,11 @@ public final class BinderProxy implements IBinder { public native boolean pingBinder(); /** + * Check to see if the process that the binder is in is still alive. + * + * Note, this only reflects the last known death state, if the object + * is linked to death or has made a transactions since the death occurs. + * * @return false if the hosting process is gone */ public native boolean isBinderAlive(); @@ -646,6 +651,37 @@ public final class BinderProxy implements IBinder { private native boolean unlinkToDeathNative(DeathRecipient recipient, int flags); /** + * This list is to hold strong reference to the frozen state callbacks. The callbacks are only + * weakly referenced by JNI so the strong references here are needed to keep the callbacks + * around until the proxy is GC'ed. + */ + private List<FrozenStateChangeCallback> mFrozenStateChangeCallbacks = + Collections.synchronizedList(new ArrayList<>()); + + /** + * See {@link IBinder#addFrozenStateChangeCallback(FrozenStateChangeCallback)} + */ + public void addFrozenStateChangeCallback(FrozenStateChangeCallback callback) + throws RemoteException { + addFrozenStateChangeCallbackNative(callback); + mFrozenStateChangeCallbacks.add(callback); + } + + /** + * See {@link IBinder#removeFrozenStateChangeCallback} + */ + public boolean removeFrozenStateChangeCallback(FrozenStateChangeCallback callback) { + mFrozenStateChangeCallbacks.remove(callback); + return removeFrozenStateChangeCallbackNative(callback); + } + + private native void addFrozenStateChangeCallbackNative(FrozenStateChangeCallback callback) + throws RemoteException; + + private native boolean removeFrozenStateChangeCallbackNative( + FrozenStateChangeCallback callback); + + /** * Perform a dump on the remote object * * @param fd The raw file descriptor that the dump is being sent to. @@ -730,6 +766,16 @@ public final class BinderProxy implements IBinder { } } + private static void invokeFrozenStateChangeCallback( + FrozenStateChangeCallback callback, IBinder binderProxy, int stateIndex) { + try { + callback.onFrozenStateChanged(binderProxy, stateIndex); + } catch (RuntimeException exc) { + Log.w("BinderNative", "Uncaught exception from frozen state change callback", + exc); + } + } + /** * C++ pointer to BinderProxyNativeData. That consists of strong pointers to the * native IBinder object, and a DeathRecipientList. diff --git a/core/java/android/os/Build.java b/core/java/android/os/Build.java index 30d2dec8b4c4..3c3a4fd68b15 100644 --- a/core/java/android/os/Build.java +++ b/core/java/android/os/Build.java @@ -36,8 +36,6 @@ import android.util.ArraySet; import android.util.Slog; import android.view.View; -import com.android.internal.ravenwood.RavenwoodEnvironment; - import dalvik.system.VMRuntime; import java.util.ArrayList; @@ -51,10 +49,6 @@ import java.util.stream.Collectors; */ @RavenwoodKeepWholeClass public class Build { - static { - // Set up the default system properties. - RavenwoodEnvironment.ensureRavenwoodInitialized(); - } private static final String TAG = "Build"; /** Value used for when a build property is unknown. */ diff --git a/core/java/android/os/Debug.java b/core/java/android/os/Debug.java index a55398ac9752..ef1e6c9405f3 100644 --- a/core/java/android/os/Debug.java +++ b/core/java/android/os/Debug.java @@ -114,6 +114,7 @@ public final class Debug "opengl-tracing", "view-hierarchy", "support_boot_stages", + "app_info", }; /** @@ -1016,14 +1017,14 @@ public final class Debug // send VM_START. System.out.println("Waiting for debugger first packet"); - mWaiting = true; + setWaitingForDebugger(true); while (!isDebuggerConnected()) { try { Thread.sleep(100); } catch (InterruptedException ie) { } } - mWaiting = false; + setWaitingForDebugger(false); System.out.println("Debug.suspendAllAndSentVmStart"); VMDebug.suspendAllAndSendVmStart(); @@ -1049,12 +1050,12 @@ public final class Debug Chunk waitChunk = new Chunk(ChunkHandler.type("WAIT"), data, 0, 1); DdmServer.sendChunk(waitChunk); - mWaiting = true; + setWaitingForDebugger(true); while (!isDebuggerConnected()) { try { Thread.sleep(SPIN_DELAY); } catch (InterruptedException ie) {} } - mWaiting = false; + setWaitingForDebugger(false); System.out.println("Debugger has connected"); @@ -1112,6 +1113,16 @@ public final class Debug } /** + * Set whether the app is waiting for a debugger to connect + * + * @hide + */ + private static void setWaitingForDebugger(boolean waiting) { + mWaiting = waiting; + VMDebug.setWaitingForDebugger(waiting); + } + + /** * Returns an array of strings that identify Framework features. This is * used by DDMS to determine what sorts of operations the Framework can * perform. diff --git a/core/java/android/os/FileUtils.java b/core/java/android/os/FileUtils.java index e6b1c07846f9..14005b31903a 100644 --- a/core/java/android/os/FileUtils.java +++ b/core/java/android/os/FileUtils.java @@ -54,7 +54,6 @@ import android.provider.DocumentsContract.Document; import android.provider.MediaStore; import android.system.ErrnoException; import android.system.Os; -import android.system.OsConstants; import android.system.StructStat; import android.text.TextUtils; import android.util.DataUnit; @@ -1535,7 +1534,6 @@ public final class FileUtils { } /** {@hide} */ - @android.ravenwood.annotation.RavenwoodThrow(blockedBy = OsConstants.class) public static int translateModeStringToPosix(String mode) { // Quick check for invalid chars for (int i = 0; i < mode.length(); i++) { @@ -1570,7 +1568,6 @@ public final class FileUtils { } /** {@hide} */ - @android.ravenwood.annotation.RavenwoodThrow(blockedBy = OsConstants.class) public static String translateModePosixToString(int mode) { String res = ""; if ((mode & O_ACCMODE) == O_RDWR) { @@ -1592,7 +1589,6 @@ public final class FileUtils { } /** {@hide} */ - @android.ravenwood.annotation.RavenwoodThrow(blockedBy = OsConstants.class) public static int translateModePosixToPfd(int mode) { int res = 0; if ((mode & O_ACCMODE) == O_RDWR) { @@ -1617,7 +1613,6 @@ public final class FileUtils { } /** {@hide} */ - @android.ravenwood.annotation.RavenwoodThrow(blockedBy = OsConstants.class) public static int translateModePfdToPosix(int mode) { int res = 0; if ((mode & MODE_READ_WRITE) == MODE_READ_WRITE) { @@ -1642,7 +1637,6 @@ public final class FileUtils { } /** {@hide} */ - @android.ravenwood.annotation.RavenwoodThrow(blockedBy = OsConstants.class) public static int translateModeAccessToPosix(int mode) { if (mode == F_OK) { // There's not an exact mapping, so we attempt a read-only open to diff --git a/core/java/android/os/Handler.java b/core/java/android/os/Handler.java index 92b630f3063a..d0828c384664 100644 --- a/core/java/android/os/Handler.java +++ b/core/java/android/os/Handler.java @@ -16,8 +16,10 @@ package android.os; +import android.annotation.FlaggedApi; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.SystemApi; import android.compat.annotation.UnsupportedAppUsage; import android.util.Log; import android.util.Printer; @@ -46,13 +48,13 @@ import java.lang.reflect.Modifier; * a {@link Message} object containing a bundle of data that will be * processed by the Handler's {@link #handleMessage} method (requiring that * you implement a subclass of Handler). - * + * * <p>When posting or sending to a Handler, you can either * allow the item to be processed as soon as the message queue is ready * to do so, or specify a delay before it gets processed or absolute time for * it to be processed. The latter two allow you to implement timeouts, * ticks, and other timing-based behavior. - * + * * <p>When a * process is created for your application, its main thread is dedicated to * running a message queue that takes care of managing the top-level @@ -85,13 +87,13 @@ public class Handler { */ boolean handleMessage(@NonNull Message msg); } - + /** * Subclasses must implement this to receive messages. */ public void handleMessage(@NonNull Message msg) { } - + /** * Handle system messages here. */ @@ -343,8 +345,8 @@ public class Handler { * The default implementation will either return the class name of the * message callback if any, or the hexadecimal representation of the * message "what" field. - * - * @param message The message whose name is being queried + * + * @param message The message whose name is being queried */ @NonNull public String getMessageName(@NonNull Message message) { @@ -367,7 +369,7 @@ public class Handler { /** * Same as {@link #obtainMessage()}, except that it also sets the what member of the returned Message. - * + * * @param what Value to assign to the returned Message.what field. * @return A Message from the global message pool. */ @@ -376,12 +378,12 @@ public class Handler { { return Message.obtain(this, what); } - + /** - * - * Same as {@link #obtainMessage()}, except that it also sets the what and obj members + * + * Same as {@link #obtainMessage()}, except that it also sets the what and obj members * of the returned Message. - * + * * @param what Value to assign to the returned Message.what field. * @param obj Value to assign to the returned Message.obj field. * @return A Message from the global message pool. @@ -392,7 +394,7 @@ public class Handler { } /** - * + * * Same as {@link #obtainMessage()}, except that it also sets the what, arg1 and arg2 members of the returned * Message. * @param what Value to assign to the returned Message.what field. @@ -405,10 +407,10 @@ public class Handler { { return Message.obtain(this, what, arg1, arg2); } - + /** - * - * Same as {@link #obtainMessage()}, except that it also sets the what, obj, arg1,and arg2 values on the + * + * Same as {@link #obtainMessage()}, except that it also sets the what, obj, arg1,and arg2 values on the * returned Message. * @param what Value to assign to the returned Message.what field. * @param arg1 Value to assign to the returned Message.arg1 field. @@ -423,19 +425,19 @@ public class Handler { /** * Causes the Runnable r to be added to the message queue. - * The runnable will be run on the thread to which this handler is - * attached. - * + * The runnable will be run on the thread to which this handler is + * attached. + * * @param r The Runnable that will be executed. - * - * @return Returns true if the Runnable was successfully placed in to the + * + * @return Returns true if the Runnable was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ public final boolean post(@NonNull Runnable r) { return sendMessageDelayed(getPostMessage(r), 0); } - + /** * Causes the Runnable r to be added to the message queue, to be run * at a specific time given by <var>uptimeMillis</var>. @@ -446,8 +448,8 @@ public class Handler { * @param r The Runnable that will be executed. * @param uptimeMillis The absolute time at which the callback should run, * using the {@link android.os.SystemClock#uptimeMillis} time-base. - * - * @return Returns true if the Runnable was successfully placed in to the + * + * @return Returns true if the Runnable was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. Note that a * result of true does not mean the Runnable will be processed -- if @@ -457,7 +459,7 @@ public class Handler { public final boolean postAtTime(@NonNull Runnable r, long uptimeMillis) { return sendMessageAtTime(getPostMessage(r), uptimeMillis); } - + /** * Causes the Runnable r to be added to the message queue, to be run * at a specific time given by <var>uptimeMillis</var>. @@ -470,21 +472,21 @@ public class Handler { * {@link #removeCallbacksAndMessages}. * @param uptimeMillis The absolute time at which the callback should run, * using the {@link android.os.SystemClock#uptimeMillis} time-base. - * - * @return Returns true if the Runnable was successfully placed in to the + * + * @return Returns true if the Runnable was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. Note that a * result of true does not mean the Runnable will be processed -- if * the looper is quit before the delivery time of the message * occurs then the message will be dropped. - * + * * @see android.os.SystemClock#uptimeMillis */ public final boolean postAtTime( @NonNull Runnable r, @Nullable Object token, long uptimeMillis) { return sendMessageAtTime(getPostMessage(r, token), uptimeMillis); } - + /** * Causes the Runnable r to be added to the message queue, to be run * after the specified amount of time elapses. @@ -492,12 +494,12 @@ public class Handler { * is attached. * <b>The time-base is {@link android.os.SystemClock#uptimeMillis}.</b> * Time spent in deep sleep will add an additional delay to execution. - * + * * @param r The Runnable that will be executed. * @param delayMillis The delay (in milliseconds) until the Runnable * will be executed. - * - * @return Returns true if the Runnable was successfully placed in to the + * + * @return Returns true if the Runnable was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. Note that a * result of true does not mean the Runnable will be processed -- @@ -507,7 +509,7 @@ public class Handler { public final boolean postDelayed(@NonNull Runnable r, long delayMillis) { return sendMessageDelayed(getPostMessage(r), delayMillis); } - + /** @hide */ public final boolean postDelayed(Runnable r, int what, long delayMillis) { return sendMessageDelayed(getPostMessage(r).setWhat(what), delayMillis); @@ -547,10 +549,10 @@ public class Handler { * <b>This method is only for use in very special circumstances -- it * can easily starve the message queue, cause ordering problems, or have * other unexpected side-effects.</b> - * + * * @param r The Runnable that will be executed. - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -635,8 +637,8 @@ public class Handler { * Pushes a message onto the end of the message queue after all pending messages * before the current time. It will be received in {@link #handleMessage}, * in the thread attached to this handler. - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -646,8 +648,8 @@ public class Handler { /** * Sends a Message containing only the what value. - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -659,9 +661,9 @@ public class Handler { /** * Sends a Message containing only the what value, to be delivered * after the specified amount of time elapses. - * @see #sendMessageDelayed(android.os.Message, long) - * - * @return Returns true if the message was successfully placed in to the + * @see #sendMessageDelayed(android.os.Message, long) + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -672,11 +674,11 @@ public class Handler { } /** - * Sends a Message containing only the what value, to be delivered + * Sends a Message containing only the what value, to be delivered * at a specific time. * @see #sendMessageAtTime(android.os.Message, long) - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -691,8 +693,8 @@ public class Handler { * Enqueue a message into the message queue after all pending messages * before (current time + delayMillis). You will receive it in * {@link #handleMessage}, in the thread attached to this handler. - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. Note that a * result of true does not mean the message will be processed -- if @@ -713,12 +715,12 @@ public class Handler { * Time spent in deep sleep will add an additional delay to execution. * You will receive it in {@link #handleMessage}, in the thread attached * to this handler. - * + * * @param uptimeMillis The absolute time at which the message should be * delivered, using the * {@link android.os.SystemClock#uptimeMillis} time-base. - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. Note that a * result of true does not mean the message will be processed -- if @@ -743,8 +745,8 @@ public class Handler { * <b>This method is only for use in very special circumstances -- it * can easily starve the message queue, cause ordering problems, or have * other unexpected side-effects.</b> - * - * @return Returns true if the message was successfully placed in to the + * + * @return Returns true if the message was successfully placed in to the * message queue. Returns false on failure, usually because the * looper processing the message queue is exiting. */ @@ -798,6 +800,12 @@ public class Handler { /** * Remove any pending posts of messages with code 'what' that are in the * message queue. + * + * Note that `Message#what` is 0 unless otherwise set. + * When calling `postMessage(Runnable)` or `postAtTime(Runnable, long)`, + * the `Runnable` is internally wrapped with a `Message` whose `what` is 0. + * Calling `removeMessages(0)` will remove all messages without a `what`, + * including posted `Runnable`s. */ public final void removeMessages(int what) { mQueue.removeMessages(this, what, null); @@ -813,16 +821,25 @@ public class Handler { } /** + * WARNING: This API is dangerous because if the implementation + * of equals() is broken, it would delete unrelated events. For example, + * if object.equals() always returns true, it'd remove all messages. + * + * For this reason, never expose this API to non-platform code. i.e. + * this shouldn't be exposed to SystemApi.PRIVILEGED_APPS. + * * Remove any pending posts of messages with code 'what' and whose obj is * 'object' that are in the message queue. If <var>object</var> is null, * all messages will be removed. - * <p> - * Similar to {@link #removeMessages(int, Object)} but uses object equality + * + * <p>Similar to {@link #removeMessages(int, Object)} but uses object equality * ({@link Object#equals(Object)}) instead of reference equality (==) in * determining whether object is the message's obj'. * *@hide */ + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) + @FlaggedApi(android.os.Flags.FLAG_MAINLINE_VCN_PLATFORM_API) public final void removeEqualMessages(int what, @Nullable Object object) { mQueue.removeEqualMessages(this, what, disallowNullArgumentIfShared(object)); } @@ -837,12 +854,25 @@ public class Handler { } /** + * WARNING: This API is dangerous because if the implementation + * of equals() is broken, it would delete unrelated events. For example, + * if object.equals() always returns true, it'd remove all messages. + * + * For this reason, never expose this API to non-platform code. i.e. + * this shouldn't be exposed to SystemApi.PRIVILEGED_APPS. + * * Remove any pending posts of callbacks and sent messages whose * <var>obj</var> is <var>token</var>. If <var>token</var> is null, * all callbacks and messages will be removed. * + * <p>Similar to {@link #removeCallbacksAndMessages(Object)} but uses object + * equality ({@link Object#equals(Object)}) instead of reference equality (==) in + * determining whether object is the message's obj'. + * *@hide */ + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) + @FlaggedApi(android.os.Flags.FLAG_MAINLINE_VCN_PLATFORM_API) public final void removeCallbacksAndEqualMessages(@Nullable Object token) { mQueue.removeCallbacksAndEqualMessages(this, disallowNullArgumentIfShared(token)); } @@ -858,6 +888,8 @@ public class Handler { * Return whether there are any messages or callbacks currently scheduled on this handler. * @hide */ + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) + @FlaggedApi(android.os.Flags.FLAG_MAINLINE_VCN_PLATFORM_API) public final boolean hasMessagesOrCallbacks() { return mQueue.hasMessages(this); } @@ -889,7 +921,7 @@ public class Handler { } // if we can get rid of this method, the handler need not remember its loop - // we could instead export a getMessageQueue() method... + // we could instead export a getMessageQueue() method... @NonNull public final Looper getLooper() { return mLooper; diff --git a/core/java/android/os/IBinder.java b/core/java/android/os/IBinder.java index c9f207cf26e8..a997f4c86704 100644 --- a/core/java/android/os/IBinder.java +++ b/core/java/android/os/IBinder.java @@ -16,11 +16,15 @@ package android.os; +import android.annotation.FlaggedApi; +import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.compat.annotation.UnsupportedAppUsage; import java.io.FileDescriptor; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; /** * Base interface for a remotable object, the core part of a lightweight @@ -29,7 +33,7 @@ import java.io.FileDescriptor; * interface describes the abstract protocol for interacting with a * remotable object. Do not implement this interface directly, instead * extend from {@link Binder}. - * + * * <p>The key IBinder API is {@link #transact transact()} matched by * {@link Binder#onTransact Binder.onTransact()}. These * methods allow you to send a call to an IBinder object and receive a @@ -40,7 +44,7 @@ import java.io.FileDescriptor; * expected behavior when calling an object that exists in the local * process, and the underlying inter-process communication (IPC) mechanism * ensures that these same semantics apply when going across processes. - * + * * <p>The data sent through transact() is a {@link Parcel}, a generic buffer * of data that also maintains some meta-data about its contents. The meta * data is used to manage IBinder object references in the buffer, so that those @@ -51,7 +55,7 @@ import java.io.FileDescriptor; * same IBinder object back. These semantics allow IBinder/Binder objects to * be used as a unique identity (to serve as a token or for other purposes) * that can be managed across processes. - * + * * <p>The system maintains a pool of transaction threads in each process that * it runs in. These threads are used to dispatch all * IPCs coming in from other processes. For example, when an IPC is made from @@ -62,7 +66,7 @@ import java.io.FileDescriptor; * thread in process A returns to allow its execution to continue. In effect, * other processes appear to use as additional threads that you did not create * executing in your own process. - * + * * <p>The Binder system also supports recursion across processes. For example * if process A performs a transaction to process B, and process B while * handling that transaction calls transact() on an IBinder that is implemented @@ -70,7 +74,7 @@ import java.io.FileDescriptor; * transaction to finish will take care of calling Binder.onTransact() on the * object being called by B. This ensures that the recursion semantics when * calling remote binder object are the same as when calling local objects. - * + * * <p>When working with remote objects, you often want to find out when they * are no longer valid. There are three ways this can be determined: * <ul> @@ -83,7 +87,7 @@ import java.io.FileDescriptor; * a {@link DeathRecipient} with the IBinder, which will be called when its * containing process goes away. * </ul> - * + * * @see Binder */ public interface IBinder { @@ -95,17 +99,17 @@ public interface IBinder { * The last transaction code available for user commands. */ int LAST_CALL_TRANSACTION = 0x00ffffff; - + /** * IBinder protocol transaction code: pingBinder(). */ int PING_TRANSACTION = ('_'<<24)|('P'<<16)|('N'<<8)|'G'; - + /** * IBinder protocol transaction code: dump internal state. */ int DUMP_TRANSACTION = ('_'<<24)|('D'<<16)|('M'<<8)|'P'; - + /** * IBinder protocol transaction code: execute a shell command. * @hide @@ -129,7 +133,7 @@ public interface IBinder { * across the platform. To support older code, the default implementation * logs the tweet to the main log as a simple emulation of broadcasting * it publicly over the Internet. - * + * * <p>Also, upon completing the dispatch, the object must make a cup * of tea, return it to the caller, and exclaim "jolly good message * old boy!". @@ -142,7 +146,7 @@ public interface IBinder { * its own like counter, and may display this value to the user to indicate the * quality of the app. This is an optional command that applications do not * need to handle, so the default implementation is to do nothing. - * + * * <p>There is no response returned and nothing about the * system will be functionally affected by it, but it will improve the * app's self-esteem. @@ -185,7 +189,8 @@ public interface IBinder { /** * Limit that should be placed on IPC sizes to keep them safely under the - * transaction buffer limit. + * transaction buffer limit. This is a recommendation, and is not the real + * limit. Transactions should be preferred to be even smaller than this. * @hide */ public static final int MAX_IPC_SIZE = 64 * 1024; @@ -206,7 +211,7 @@ public interface IBinder { /** * Check to see if the object still exists. - * + * * @return Returns false if the * hosting process is gone, otherwise the result (always by default * true) returned by the pingBinder() implementation on the other @@ -221,7 +226,7 @@ public interface IBinder { * true, the process may have died while the call is returning. */ public boolean isBinderAlive(); - + /** * Attempt to retrieve a local implementation of an interface * for this Binder object. If null is returned, you will need @@ -232,7 +237,7 @@ public interface IBinder { /** * Print the object's state into the given stream. - * + * * @param fd The raw file descriptor that the dump is being sent to. * @param args additional arguments to the dump request. */ @@ -280,7 +285,7 @@ public interface IBinder { /** * Perform a generic operation with the object. - * + * * @param code The action to perform. This should * be a number between {@link #FIRST_CALL_TRANSACTION} and * {@link #LAST_CALL_TRANSACTION}. @@ -360,13 +365,13 @@ public interface IBinder { * Remove a previously registered death notification. * The recipient will no longer be called if this object * dies. - * + * * @return {@code true} if the <var>recipient</var> is successfully * unlinked, assuring you that its * {@link DeathRecipient#binderDied DeathRecipient.binderDied()} method * will not be called; {@code false} if the target IBinder has already * died, meaning the method has been (or soon will be) called. - * + * * @throws java.util.NoSuchElementException if the given * <var>recipient</var> has not been registered with the IBinder, and * the IBinder is still alive. Note that if the <var>recipient</var> @@ -375,4 +380,68 @@ public interface IBinder { * return value instead. */ public boolean unlinkToDeath(@NonNull DeathRecipient recipient, int flags); + + /** + * A callback interface for receiving frozen state change events. + */ + @FlaggedApi(Flags.FLAG_BINDER_FROZEN_STATE_CHANGE_CALLBACK) + interface FrozenStateChangeCallback { + /** + * @hide + */ + @IntDef(prefix = {"STATE_"}, value = { + STATE_FROZEN, + STATE_UNFROZEN, + }) + @Retention(RetentionPolicy.SOURCE) + @interface State { + } + + int STATE_FROZEN = 0; + int STATE_UNFROZEN = 1; + + /** + * Interface for receiving a callback when the process hosting an IBinder + * has changed its frozen state. + * @param who The IBinder whose hosting process has changed state. + * @param state The latest state. + */ + void onFrozenStateChanged(@NonNull IBinder who, @State int state); + } + + /** + * This method provides a callback mechanism to notify about process frozen/unfrozen events. + * Upon registration and any subsequent state changes, the callback is invoked with the latest + * process frozen state. + * + * <p>If the listener process (the one using this API) is itself frozen, state change events + * might be combined into a single one with the latest frozen state. This single event would + * then be delivered when the listener process becomes unfrozen. Similarly, if an event happens + * before the previous event is consumed, they might be combined. This means the callback might + * not be called for every single state change, so don't rely on this API to count how many + * times the state has changed.</p> + * + * <p>The callback is automatically removed when all references to the binder proxy are + * dropped.</p> + * + * <p>You will only receive state change notifications for remote binders, as local binders by + * definition can't be frozen without you being frozen too.</p> + * + * <p>@throws {@link UnsupportedOperationException} if the kernel binder driver does not support + * this feature. + */ + @FlaggedApi(Flags.FLAG_BINDER_FROZEN_STATE_CHANGE_CALLBACK) + default void addFrozenStateChangeCallback(@NonNull FrozenStateChangeCallback callback) + throws RemoteException { + throw new UnsupportedOperationException(); + } + + /** + * Unregister a {@link FrozenStateChangeCallback}. The callback will no longer be invoked when + * the hosting process changes its frozen state. + */ + @FlaggedApi(Flags.FLAG_BINDER_FROZEN_STATE_CHANGE_CALLBACK) + default boolean removeFrozenStateChangeCallback(@NonNull FrozenStateChangeCallback callback) { + throw new UnsupportedOperationException(); + } } diff --git a/core/java/android/os/INetworkManagementService.aidl b/core/java/android/os/INetworkManagementService.aidl index a49ee7d00751..0c34c6fea1d0 100644 --- a/core/java/android/os/INetworkManagementService.aidl +++ b/core/java/android/os/INetworkManagementService.aidl @@ -110,92 +110,6 @@ interface INetworkManagementService void shutdown(); /** - ** TETHERING RELATED - **/ - - /** - * Returns true if IP forwarding is enabled - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Use {@code android.net.INetd#ipfwdEnabled}") - boolean getIpForwardingEnabled(); - - /** - * Enables/Disables IP Forwarding - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Avoid using this directly. Instead, enable tethering with " - + "{@code android.net.TetheringManager#startTethering}. See also " - + "{@code INetd#ipfwdEnableForwarding(String)}.") - void setIpForwardingEnabled(boolean enabled); - - /** - * Start tethering services with the specified dhcp server range - * arg is a set of start end pairs defining the ranges. - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "{@code android.net.TetheringManager#startTethering}") - void startTethering(in String[] dhcpRanges); - - /** - * Stop currently running tethering services - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "{@code android.net.TetheringManager#stopTethering(int)}") - void stopTethering(); - - /** - * Returns true if tethering services are started - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Generally track your own tethering requests. " - + "See also {@code android.net.INetd#tetherIsEnabled()}") - boolean isTetheringStarted(); - - /** - * Tethers the specified interface - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Avoid using this directly. Instead, enable tethering with " - + "{@code android.net.TetheringManager#startTethering}. See also " - + "{@code com.android.net.module.util.NetdUtils#tetherInterface}.") - void tetherInterface(String iface); - - /** - * Untethers the specified interface - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Avoid using this directly. Instead, disable " - + "tethering with {@code android.net.TetheringManager#stopTethering(int)}. " - + "See also {@code NetdUtils#untetherInterface}.") - void untetherInterface(String iface); - - /** - * Returns a list of currently tethered interfaces - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "{@code android.net.TetheringManager#getTetheredIfaces()}") - String[] listTetheredInterfaces(); - - /** - * Enables Network Address Translation between two interfaces. - * The address and netmask of the external interface is used for - * the NAT'ed network. - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Avoid using this directly. Instead, enable tethering with " - + "{@code android.net.TetheringManager#startTethering}.") - void enableNat(String internalInterface, String externalInterface); - - /** - * Disables Network Address Translation between two interfaces. - */ - @UnsupportedAppUsage(maxTargetSdk = 34, trackingBug = 170729553, - publicAlternatives = "Avoid using this directly. Instead, disable tethering with " - + "{@code android.net.TetheringManager#stopTethering(int)}.") - void disableNat(String internalInterface, String externalInterface); - - /** ** DATA USAGE RELATED **/ diff --git a/core/java/android/os/IpcDataCache.java b/core/java/android/os/IpcDataCache.java index bf44d65c4002..d7a308df4e6e 100644 --- a/core/java/android/os/IpcDataCache.java +++ b/core/java/android/os/IpcDataCache.java @@ -242,6 +242,7 @@ import java.util.concurrent.atomic.AtomicLong; */ @TestApi @SystemApi(client=SystemApi.Client.MODULE_LIBRARIES) +@android.ravenwood.annotation.RavenwoodKeepWholeClass public class IpcDataCache<Query, Result> extends PropertyInvalidatedCache<Query, Result> { /** * {@inheritDoc} diff --git a/core/java/android/os/Message.java b/core/java/android/os/Message.java index 161951ead77f..09a43b0ac593 100644 --- a/core/java/android/os/Message.java +++ b/core/java/android/os/Message.java @@ -41,6 +41,9 @@ public final class Message implements Parcelable { * what this message is about. Each {@link Handler} has its own name-space * for message codes, so you do not need to worry about yours conflicting * with other handlers. + * + * If not specified, this value is 0. + * Use values other than 0 to indicate custom message codes. */ public int what; diff --git a/core/java/android/os/MessageQueue.java b/core/java/android/os/MessageQueue.java index 5b711c9d8401..5a7650bc76ca 100644 --- a/core/java/android/os/MessageQueue.java +++ b/core/java/android/os/MessageQueue.java @@ -20,6 +20,7 @@ import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.TestApi; import android.compat.annotation.UnsupportedAppUsage; +import android.ravenwood.annotation.RavenwoodRedirect; import android.util.Log; import android.util.Printer; import android.util.SparseArray; @@ -39,8 +40,7 @@ import java.util.ArrayList; * {@link Looper#myQueue() Looper.myQueue()}. */ @android.ravenwood.annotation.RavenwoodKeepWholeClass -@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.MessageQueue_host") +@android.ravenwood.annotation.RavenwoodRedirectionClass("MessageQueue_ravenwood") public final class MessageQueue { private static final String TAG = "MessageQueue"; private static final boolean DEBUG = false; @@ -74,12 +74,18 @@ public final class MessageQueue { @UnsupportedAppUsage private int mNextBarrierToken; + @RavenwoodRedirect private native static long nativeInit(); + @RavenwoodRedirect private native static void nativeDestroy(long ptr); @UnsupportedAppUsage + @RavenwoodRedirect private native void nativePollOnce(long ptr, int timeoutMillis); /*non-static for callbacks*/ + @RavenwoodRedirect private native static void nativeWake(long ptr); + @RavenwoodRedirect private native static boolean nativeIsPolling(long ptr); + @RavenwoodRedirect private native static void nativeSetFileDescriptorEvents(long ptr, int fd, int events); MessageQueue(boolean quitAllowed) { diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/MessageQueue_host.java b/core/java/android/os/MessageQueue_ravenwood.java index 5e81124b6e70..4033707c3253 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/MessageQueue_host.java +++ b/core/java/android/os/MessageQueue_ravenwood.java @@ -14,15 +14,18 @@ * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package android.os; + +import android.ravenwood.annotation.RavenwoodKeepWholeClass; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicLong; -public class MessageQueue_host { +@RavenwoodKeepWholeClass +class MessageQueue_ravenwood { private static final AtomicLong sNextId = new AtomicLong(1); - private static final Map<Long, MessageQueue_host> sInstances = new ConcurrentHashMap<>(); + private static final Map<Long, MessageQueue_ravenwood> sInstances = new ConcurrentHashMap<>(); private boolean mDeleted = false; @@ -37,8 +40,8 @@ public class MessageQueue_host { } } - private static MessageQueue_host getInstance(long id) { - MessageQueue_host q = sInstances.get(id); + private static MessageQueue_ravenwood getInstance(long id) { + MessageQueue_ravenwood q = sInstances.get(id); if (q == null) { throw new RuntimeException("MessageQueue doesn't exist with id=" + id); } @@ -48,7 +51,7 @@ public class MessageQueue_host { public static long nativeInit() { final long id = sNextId.getAndIncrement(); - final MessageQueue_host q = new MessageQueue_host(); + final MessageQueue_ravenwood q = new MessageQueue_ravenwood(); sInstances.put(id, q); return id; } diff --git a/core/java/android/os/OWNERS b/core/java/android/os/OWNERS index 6d6757d5afd1..590ddb404b63 100644 --- a/core/java/android/os/OWNERS +++ b/core/java/android/os/OWNERS @@ -106,9 +106,22 @@ per-file SystemConfigManager.java = file:/PACKAGE_MANAGER_OWNERS # ProfilingService per-file ProfilingServiceManager.java = file:/PERFORMANCE_OWNERS +# Performance +per-file IpcDataCache.java = file:/PERFORMANCE_OWNERS + # Memory per-file OomKillRecord.java = file:/MEMORY_OWNERS # MessageQueue per-file MessageQueue.java = mfasheh@google.com, shayba@google.com per-file Message.java = mfasheh@google.com, shayba@google.com + +# Stats +per-file IStatsBootstrapAtomService.aidl = file:/services/core/java/com/android/server/stats/OWNERS +per-file StatsBootstrapAtom.aidl = file:/services/core/java/com/android/server/stats/OWNERS +per-file StatsBootstrapAtomValue.aidl = file:/services/core/java/com/android/server/stats/OWNERS +per-file StatsBootstrapAtomService.java = file:/services/core/java/com/android/server/stats/OWNERS +per-file StatsServiceManager.java = file:/services/core/java/com/android/server/stats/OWNERS + +# Dropbox +per-file DropBoxManager* = mwachens@google.com diff --git a/core/java/android/os/Parcel.java b/core/java/android/os/Parcel.java index 136c45d1695f..f7285523c01a 100644 --- a/core/java/android/os/Parcel.java +++ b/core/java/android/os/Parcel.java @@ -27,8 +27,8 @@ import android.annotation.SuppressLint; import android.annotation.TestApi; import android.app.AppOpsManager; import android.compat.annotation.UnsupportedAppUsage; +import android.ravenwood.annotation.RavenwoodClassLoadHook; import android.ravenwood.annotation.RavenwoodKeepWholeClass; -import android.ravenwood.annotation.RavenwoodNativeSubstitutionClass; import android.ravenwood.annotation.RavenwoodReplace; import android.ravenwood.annotation.RavenwoodThrow; import android.text.TextUtils; @@ -233,8 +233,7 @@ import java.util.function.IntFunction; * {@link #readSparseArray(ClassLoader, Class)}. */ @RavenwoodKeepWholeClass -@RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.Parcel_host") +@RavenwoodClassLoadHook(RavenwoodClassLoadHook.LIBANDROID_LOADING_HOOK) public final class Parcel { private static final boolean DEBUG_RECYCLE = false; @@ -389,10 +388,8 @@ public final class Parcel { @CriticalNative private static native void nativeMarkSensitive(long nativePtr); @FastNative - @RavenwoodThrow private static native void nativeMarkForBinder(long nativePtr, IBinder binder); @CriticalNative - @RavenwoodThrow private static native boolean nativeIsForRpc(long nativePtr); @CriticalNative private static native int nativeDataSize(long nativePtr); @@ -424,17 +421,14 @@ public final class Parcel { private static native int nativeWriteFloat(long nativePtr, float val); @CriticalNative private static native int nativeWriteDouble(long nativePtr, double val); - @RavenwoodThrow private static native void nativeSignalExceptionForError(int error); @FastNative private static native void nativeWriteString8(long nativePtr, String val); @FastNative private static native void nativeWriteString16(long nativePtr, String val); @FastNative - @RavenwoodThrow private static native void nativeWriteStrongBinder(long nativePtr, IBinder val); @FastNative - @RavenwoodThrow private static native void nativeWriteFileDescriptor(long nativePtr, FileDescriptor val); private static native byte[] nativeCreateByteArray(long nativePtr); @@ -453,10 +447,8 @@ public final class Parcel { @FastNative private static native String nativeReadString16(long nativePtr); @FastNative - @RavenwoodThrow private static native IBinder nativeReadStrongBinder(long nativePtr); @FastNative - @RavenwoodThrow private static native FileDescriptor nativeReadFileDescriptor(long nativePtr); private static native long nativeCreate(); @@ -479,17 +471,13 @@ public final class Parcel { private static native boolean nativeHasBinders(long nativePtr); private static native boolean nativeHasBindersInRange( long nativePtr, int offset, int length); - @RavenwoodThrow private static native void nativeWriteInterfaceToken(long nativePtr, String interfaceName); - @RavenwoodThrow private static native void nativeEnforceInterface(long nativePtr, String interfaceName); @CriticalNative - @RavenwoodThrow private static native boolean nativeReplaceCallingWorkSourceUid( long nativePtr, int workSourceUid); @CriticalNative - @RavenwoodThrow private static native int nativeReadCallingWorkSourceUid(long nativePtr); /** Last time exception with a stack trace was written */ @@ -498,7 +486,6 @@ public final class Parcel { private static final int WRITE_EXCEPTION_STACK_TRACE_THRESHOLD_MS = 1000; @CriticalNative - @RavenwoodThrow private static native long nativeGetOpenAshmemSize(long nativePtr); public final static Parcelable.Creator<String> STRING_CREATOR @@ -662,12 +649,10 @@ public final class Parcel { /** @hide */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) - @RavenwoodThrow public static native long getGlobalAllocSize(); /** @hide */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) - @RavenwoodThrow public static native long getGlobalAllocCount(); /** @@ -1259,6 +1244,7 @@ public final class Parcel { * @hide */ @UnsupportedAppUsage + @RavenwoodThrow(blockedBy = android.text.Spanned.class) public final void writeCharSequence(@Nullable CharSequence val) { TextUtils.writeToParcel(val, this, 0); } @@ -2998,7 +2984,7 @@ public final class Parcel { * @see #writeNoException * @see #readException */ - @RavenwoodReplace + @RavenwoodReplace(blockedBy = AppOpsManager.class) public final void writeException(@NonNull Exception e) { AppOpsManager.prefixParcelWithAppOpsIfNeeded(this); @@ -3037,10 +3023,15 @@ public final class Parcel { } } - /** @hide */ - public final void writeException$ravenwood(@NonNull Exception e) { - // Ravenwood doesn't support IPC, no transaction headers needed - writeInt(getExceptionCode(e)); + private void writeException$ravenwood(@NonNull Exception e) { + int code = getExceptionCode(e); + writeInt(code); + if (code == 0) { + if (e instanceof RuntimeException) { + throw (RuntimeException) e; + } + throw new RuntimeException(e); + } writeString(e.getMessage()); writeInt(0); } @@ -3098,7 +3089,7 @@ public final class Parcel { * @see #writeException * @see #readException */ - @RavenwoodReplace + @RavenwoodReplace(blockedBy = AppOpsManager.class) public final void writeNoException() { AppOpsManager.prefixParcelWithAppOpsIfNeeded(this); @@ -3129,9 +3120,7 @@ public final class Parcel { } } - /** @hide */ - public final void writeNoException$ravenwood() { - // Ravenwood doesn't support IPC, no transaction headers needed + private void writeNoException$ravenwood() { writeInt(0); } diff --git a/core/java/android/os/ParcelFileDescriptor.java b/core/java/android/os/ParcelFileDescriptor.java index 71957ee3461e..60eeb2b8b0d5 100644 --- a/core/java/android/os/ParcelFileDescriptor.java +++ b/core/java/android/os/ParcelFileDescriptor.java @@ -41,8 +41,6 @@ import android.content.ContentResolver; import android.net.Uri; import android.os.MessageQueue.OnFileDescriptorEventListener; import android.ravenwood.annotation.RavenwoodKeepWholeClass; -import android.ravenwood.annotation.RavenwoodNativeSubstitutionClass; -import android.ravenwood.annotation.RavenwoodReplace; import android.ravenwood.annotation.RavenwoodThrow; import android.system.ErrnoException; import android.system.Os; @@ -52,8 +50,6 @@ import android.util.CloseGuard; import android.util.Log; import android.util.Slog; -import com.android.internal.ravenwood.RavenwoodEnvironment; - import dalvik.system.VMRuntime; import libcore.io.IoUtils; @@ -77,8 +73,6 @@ import java.nio.ByteOrder; * you to close it when done with it. */ @RavenwoodKeepWholeClass -@RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.ParcelFileDescriptor_host") public class ParcelFileDescriptor implements Parcelable, Closeable { private static final String TAG = "ParcelFileDescriptor"; @@ -206,11 +200,11 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { } mWrapped = null; mFd = fd; - setFdOwner(mFd); + IoUtils.setFdOwner(mFd, this); mCommFd = commChannel; if (mCommFd != null) { - setFdOwner(mCommFd); + IoUtils.setFdOwner(mCommFd, this); } mGuard.open("close"); @@ -298,7 +292,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { public static @NonNull ParcelFileDescriptor wrap(@NonNull ParcelFileDescriptor pfd, @NonNull Handler handler, @NonNull OnCloseListener listener) throws IOException { final FileDescriptor original = new FileDescriptor(); - setFdInt(original, pfd.detachFd()); + original.setInt$(pfd.detachFd()); return fromFd(original, handler, listener); } @@ -340,7 +334,6 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { return pfd; } - @RavenwoodReplace private static FileDescriptor openInternal(File file, int mode) throws FileNotFoundException { if ((mode & MODE_WRITE_ONLY) != 0 && (mode & MODE_APPEND) == 0 && (mode & MODE_TRUNCATE) == 0 && ((mode & MODE_READ_ONLY) == 0) @@ -364,26 +357,10 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { } } - private static FileDescriptor openInternal$ravenwood(File file, int mode) - throws FileNotFoundException { - try { - return native_open$ravenwood(file, mode); - } catch (FileNotFoundException e) { - throw e; - } catch (IOException e) { - throw new FileNotFoundException(e.getMessage()); - } - } - - @RavenwoodReplace private static void closeInternal(FileDescriptor fd) { IoUtils.closeQuietly(fd); } - private static void closeInternal$ravenwood(FileDescriptor fd) { - native_close$ravenwood(fd); - } - /** * Create a new ParcelFileDescriptor that is a dup of an existing * FileDescriptor. This obeys standard POSIX semantics, where the @@ -394,7 +371,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { try { final FileDescriptor fd = new FileDescriptor(); int intfd = Os.fcntlInt(orig, (isAtLeastQ() ? F_DUPFD_CLOEXEC : F_DUPFD), 0); - setFdInt(fd, intfd); + fd.setInt$(intfd); return new ParcelFileDescriptor(fd); } catch (ErrnoException e) { throw e.rethrowAsIOException(); @@ -427,12 +404,12 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { */ public static ParcelFileDescriptor fromFd(int fd) throws IOException { final FileDescriptor original = new FileDescriptor(); - setFdInt(original, fd); + original.setInt$(fd); try { final FileDescriptor dup = new FileDescriptor(); int intfd = Os.fcntlInt(original, (isAtLeastQ() ? F_DUPFD_CLOEXEC : F_DUPFD), 0); - setFdInt(dup, intfd); + dup.setInt$(intfd); return new ParcelFileDescriptor(dup); } catch (ErrnoException e) { throw e.rethrowAsIOException(); @@ -455,7 +432,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { */ public static ParcelFileDescriptor adoptFd(int fd) { final FileDescriptor fdesc = new FileDescriptor(); - setFdInt(fdesc, fd); + fdesc.setInt$(fd); return new ParcelFileDescriptor(fdesc); } @@ -712,7 +689,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { @RavenwoodThrow(reason = "Os.readlink() and Os.stat()") public static File getFile(FileDescriptor fd) throws IOException { try { - final String path = Os.readlink("/proc/self/fd/" + getFdInt(fd)); + final String path = Os.readlink("/proc/self/fd/" + fd.getInt$()); if (OsConstants.S_ISREG(Os.stat(path).st_mode) || OsConstants.S_ISCHR(Os.stat(path).st_mode)) { return new File(path); @@ -741,7 +718,6 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { * Return the total size of the file representing this fd, as determined by * {@code stat()}. Returns -1 if the fd is not a file. */ - @RavenwoodThrow(reason = "Os.readlink() and Os.stat()") public long getStatSize() { if (mWrapped != null) { return mWrapped.getStatSize(); @@ -793,7 +769,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { if (mClosed) { throw new IllegalStateException("Already closed"); } - return getFdInt(mFd); + return mFd.getInt$(); } } @@ -815,7 +791,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { if (mClosed) { throw new IllegalStateException("Already closed"); } - int fd = acquireRawFd(mFd); + int fd = IoUtils.acquireRawFd(mFd); writeCommStatusAndClose(Status.DETACHED, null); mClosed = true; mGuard.close(); @@ -1275,61 +1251,10 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { } } - // These native methods are currently only implemented by Ravenwood, as it's the only - // mechanism we have to jump to our RavenwoodNativeSubstitutionClass - private static native void native_setFdInt$ravenwood(FileDescriptor fd, int fdInt); - private static native int native_getFdInt$ravenwood(FileDescriptor fd); - private static native FileDescriptor native_open$ravenwood(File file, int pfdMode) - throws IOException; - private static native void native_close$ravenwood(FileDescriptor fd); - - @RavenwoodReplace - private static void setFdInt(FileDescriptor fd, int fdInt) { - fd.setInt$(fdInt); - } - - private static void setFdInt$ravenwood(FileDescriptor fd, int fdInt) { - native_setFdInt$ravenwood(fd, fdInt); - } - - @RavenwoodReplace - private static int getFdInt(FileDescriptor fd) { - return fd.getInt$(); - } - - private static int getFdInt$ravenwood(FileDescriptor fd) { - return native_getFdInt$ravenwood(fd); - } - - @RavenwoodReplace - private void setFdOwner(FileDescriptor fd) { - IoUtils.setFdOwner(fd, this); - } - - private void setFdOwner$ravenwood(FileDescriptor fd) { - // FD owners currently unsupported under Ravenwood; ignored - } - - @RavenwoodReplace - private int acquireRawFd(FileDescriptor fd) { - return IoUtils.acquireRawFd(fd); - } - - private int acquireRawFd$ravenwood(FileDescriptor fd) { - // FD owners currently unsupported under Ravenwood; return FD directly - return getFdInt(fd); - - } - - @RavenwoodReplace private static boolean isAtLeastQ() { return (VMRuntime.getRuntime().getTargetSdkVersion() >= Build.VERSION_CODES.Q); } - private static boolean isAtLeastQ$ravenwood() { - return RavenwoodEnvironment.workaround().isTargetSdkAtLeastQ(); - } - private static int ifAtLeastQ(int value) { return isAtLeastQ() ? value : 0; } diff --git a/core/java/android/os/Process.java b/core/java/android/os/Process.java index db06a6ba0ef5..851953af1fb9 100644 --- a/core/java/android/os/Process.java +++ b/core/java/android/os/Process.java @@ -29,6 +29,11 @@ import android.annotation.TestApi; import android.annotation.UptimeMillisLong; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build.VERSION_CODES; +import android.ravenwood.annotation.RavenwoodKeep; +import android.ravenwood.annotation.RavenwoodKeepPartialClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodReplace; import android.sysprop.MemoryProperties; import android.system.ErrnoException; import android.system.Os; @@ -37,10 +42,9 @@ import android.system.StructPollfd; import android.util.Pair; import android.webkit.WebViewZygote; -import com.android.internal.os.SomeArgs; -import com.android.internal.util.Preconditions; import com.android.sdksandbox.flags.Flags; +import dalvik.system.VMDebug; import dalvik.system.VMRuntime; import libcore.io.IoUtils; @@ -54,6 +58,8 @@ import java.util.concurrent.TimeoutException; /** * Tools for managing OS processes. */ +@RavenwoodKeepPartialClass +@RavenwoodRedirectionClass("Process_ravenwood") public class Process { private static final String LOG_TAG = "Process"; @@ -274,6 +280,13 @@ public class Process { */ public static final int INET_GID = 3003; + /** + * Defines the UID/GID for the vendor based data process. + * This is used to register AIDL service from vendor app context. + * @hide + */ + public static final int VENDOR_DATA_UID = 2918; + /** {@hide} */ public static final int NOBODY_UID = 9999; @@ -664,7 +677,6 @@ public class Process { */ public static final ZygoteProcess ZYGOTE_PROCESS = new ZygoteProcess(); - /** * The process name set via {@link #setArgV0(String)}. */ @@ -838,52 +850,20 @@ public class Process { /** * Returns true if the current process is a 64-bit runtime. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodKeep public static final boolean is64Bit() { return VMRuntime.getRuntime().is64Bit(); } - /** @hide */ - public static final boolean is64Bit$ravenwood() { - return "amd64".equals(System.getProperty("os.arch")); - } - - private static volatile ThreadLocal<SomeArgs> sIdentity$ravenwood; - - /** @hide */ - @android.ravenwood.annotation.RavenwoodKeep - public static void init$ravenwood(final int uid, final int pid) { - sIdentity$ravenwood = ThreadLocal.withInitial(() -> { - final SomeArgs args = SomeArgs.obtain(); - args.argi1 = uid; - args.argi2 = pid; - args.argi3 = Long.hashCode(Thread.currentThread().getId()); - args.argi4 = THREAD_PRIORITY_DEFAULT; - args.arg1 = Boolean.TRUE; // backgroundOk - return args; - }); - } - - /** @hide */ - @android.ravenwood.annotation.RavenwoodKeep - public static void reset$ravenwood() { - sIdentity$ravenwood = null; - } - /** * Returns the identifier of this process, which can be used with * {@link #killProcess} and {@link #sendSignal}. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodKeep public static final int myPid() { return Os.getpid(); } - /** @hide */ - public static final int myPid$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().argi2; - } - /** * Returns the identifier of this process' parent. * @hide @@ -897,39 +877,29 @@ public class Process { * Returns the identifier of the calling thread, which be used with * {@link #setThreadPriority(int, int)}. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodKeep public static final int myTid() { return Os.gettid(); } - /** @hide */ - public static final int myTid$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().argi3; - } - /** * Returns the identifier of this process's uid. This is the kernel uid * that the process is running under, which is the identity of its * app-specific sandbox. It is different from {@link #myUserHandle} in that * a uid identifies a specific app sandbox in a specific user. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodKeep public static final int myUid() { return Os.getuid(); } - /** @hide */ - public static final int myUid$ravenwood() { - return Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get().argi1; - } - /** * Returns this process's user handle. This is the * user the process is running under. It is distinct from * {@link #myUid()} in that a particular user will have multiple * distinct apps running under it each with their own uid. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static UserHandle myUserHandle() { return UserHandle.of(UserHandle.getUserId(myUid())); } @@ -938,7 +908,7 @@ public class Process { * Returns whether the given uid belongs to a system core component or not. * @hide */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static boolean isCoreUid(int uid) { return UserHandle.isCore(uid); } @@ -949,7 +919,7 @@ public class Process { * @return Whether the uid corresponds to an application sandbox running in * a specific user. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static boolean isApplicationUid(int uid) { return UserHandle.isApp(uid); } @@ -957,7 +927,7 @@ public class Process { /** * Returns whether the current process is in an isolated sandbox. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final boolean isIsolated() { return isIsolated(myUid()); } @@ -969,7 +939,7 @@ public class Process { @Deprecated @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.TIRAMISU, publicAlternatives = "Use {@link #isIsolatedUid(int)} instead.") - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final boolean isIsolated(int uid) { return isIsolatedUid(uid); } @@ -977,7 +947,7 @@ public class Process { /** * Returns whether the process with the given {@code uid} is an isolated sandbox. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final boolean isIsolatedUid(int uid) { uid = UserHandle.getAppId(uid); return (uid >= FIRST_ISOLATED_UID && uid <= LAST_ISOLATED_UID) @@ -989,7 +959,7 @@ public class Process { * @see android.app.sdksandbox.SdkSandboxManager */ @SuppressLint("UnflaggedApi") // promoting from @SystemApi. - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final boolean isSdkSandboxUid(int uid) { uid = UserHandle.getAppId(uid); return (uid >= FIRST_SDK_SANDBOX_UID && uid <= LAST_SDK_SANDBOX_UID); @@ -1005,7 +975,7 @@ public class Process { * @throws IllegalArgumentException if input is not an sdk sandbox uid */ @SuppressLint("UnflaggedApi") // promoting from @SystemApi. - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final int getAppUidForSdkSandboxUid(int uid) { if (!isSdkSandboxUid(uid)) { throw new IllegalArgumentException("Input UID is not an SDK sandbox UID"); @@ -1021,7 +991,7 @@ public class Process { */ @SystemApi(client = MODULE_LIBRARIES) @TestApi - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep // TODO(b/318651609): Deprecate once Process#getSdkSandboxUidForAppUid is rolled out to 100% public static final int toSdkSandboxUid(int uid) { return uid + (FIRST_SDK_SANDBOX_UID - FIRST_APPLICATION_UID); @@ -1037,7 +1007,7 @@ public class Process { * @throws IllegalArgumentException if input is not an app uid */ @FlaggedApi(Flags.FLAG_SDK_SANDBOX_UID_TO_APP_UID_API) - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final int getSdkSandboxUidForAppUid(int uid) { if (!isApplicationUid(uid)) { throw new IllegalArgumentException("Input UID is not an app UID"); @@ -1048,7 +1018,7 @@ public class Process { /** * Returns whether the current process is a sdk sandbox process. */ - @android.ravenwood.annotation.RavenwoodKeep + @RavenwoodKeep public static final boolean isSdkSandbox() { return isSdkSandboxUid(myUid()); } @@ -1125,28 +1095,11 @@ public class Process { * not have permission to modify the given thread, or to use the given * priority. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodRedirect public static final native void setThreadPriority(int tid, @IntRange(from = -20, to = THREAD_PRIORITY_LOWEST) int priority) throws IllegalArgumentException, SecurityException; - /** @hide */ - public static final void setThreadPriority$ravenwood(int tid, int priority) { - final SomeArgs args = - Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get(); - if (args.argi3 == tid) { - boolean backgroundOk = (args.arg1 == Boolean.TRUE); - if (priority >= THREAD_PRIORITY_BACKGROUND && !backgroundOk) { - throw new IllegalArgumentException( - "Priority " + priority + " blocked by setCanSelfBackground()"); - } - args.argi4 = priority; - } else { - throw new UnsupportedOperationException( - "Cross-thread priority management not yet available in Ravenwood"); - } - } - /** * Call with 'false' to cause future calls to {@link #setThreadPriority(int)} to * throw an exception if passed a background-level thread priority. This is only @@ -1154,16 +1107,9 @@ public class Process { * * @hide */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodRedirect public static final native void setCanSelfBackground(boolean backgroundOk); - /** @hide */ - public static final void setCanSelfBackground$ravenwood(boolean backgroundOk) { - final SomeArgs args = - Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get(); - args.arg1 = Boolean.valueOf(backgroundOk); - } - /** * Sets the scheduling group for a thread. * @hide @@ -1292,13 +1238,12 @@ public class Process { * * @see #setThreadPriority(int, int) */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodReplace public static final native void setThreadPriority( @IntRange(from = -20, to = THREAD_PRIORITY_LOWEST) int priority) throws IllegalArgumentException, SecurityException; - /** @hide */ - public static final void setThreadPriority$ravenwood(int priority) { + private static void setThreadPriority$ravenwood(int priority) { setThreadPriority(myTid(), priority); } @@ -1315,23 +1260,11 @@ public class Process { * @throws IllegalArgumentException Throws IllegalArgumentException if * <var>tid</var> does not exist. */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodRedirect @IntRange(from = -20, to = THREAD_PRIORITY_LOWEST) public static final native int getThreadPriority(int tid) throws IllegalArgumentException; - /** @hide */ - public static final int getThreadPriority$ravenwood(int tid) { - final SomeArgs args = - Preconditions.requireNonNullViaRavenwoodRule(sIdentity$ravenwood).get(); - if (args.argi3 == tid) { - return args.argi4; - } else { - throw new UnsupportedOperationException( - "Cross-thread priority management not yet available in Ravenwood"); - } - } - /** * Return the current scheduling policy of a thread, based on Linux. * @@ -1409,6 +1342,7 @@ public class Process { public static void setArgV0(@NonNull String text) { sArgV0 = text; setArgV0Native(text); + VMDebug.setCurrentProcessName(text); } private static native void setArgV0Native(String text); diff --git a/core/java/android/os/ServiceManager.java b/core/java/android/os/ServiceManager.java index 0be2d3e30c33..8aec7eb59e91 100644 --- a/core/java/android/os/ServiceManager.java +++ b/core/java/android/os/ServiceManager.java @@ -277,7 +277,7 @@ public final class ServiceManager { if (service != null) { return service; } else { - return Binder.allowBlocking(getIServiceManager().checkService(name)); + return Binder.allowBlocking(getIServiceManager().checkService(name).getBinder()); } } catch (RemoteException e) { Log.e(TAG, "error in checkService", e); @@ -425,7 +425,7 @@ public final class ServiceManager { private static IBinder rawGetService(String name) throws RemoteException { final long start = sStatLogger.getTime(); - final IBinder binder = getIServiceManager().getService(name); + final IBinder binder = getIServiceManager().getService2(name).getBinder(); final int time = (int) sStatLogger.logDurationStat(Stats.GET_SERVICE, start); diff --git a/core/java/android/os/ServiceManagerNative.java b/core/java/android/os/ServiceManagerNative.java index 7b91dd5822e7..5a9c8787ee3b 100644 --- a/core/java/android/os/ServiceManagerNative.java +++ b/core/java/android/os/ServiceManagerNative.java @@ -57,13 +57,19 @@ class ServiceManagerProxy implements IServiceManager { return mRemote; } + // TODO(b/355394904): This function has been deprecated, please use getService2 instead. @UnsupportedAppUsage public IBinder getService(String name) throws RemoteException { // Same as checkService (old versions of servicemanager had both methods). - return mServiceManager.checkService(name); + return checkService(name).getBinder(); + } + + public Service getService2(String name) throws RemoteException { + // Same as checkService (old versions of servicemanager had both methods). + return checkService(name); } - public IBinder checkService(String name) throws RemoteException { + public Service checkService(String name) throws RemoteException { return mServiceManager.checkService(name); } diff --git a/core/java/android/os/StatsBootstrapAtomValue.aidl b/core/java/android/os/StatsBootstrapAtomValue.aidl index a90dfa404ee9..b59bc062648f 100644 --- a/core/java/android/os/StatsBootstrapAtomValue.aidl +++ b/core/java/android/os/StatsBootstrapAtomValue.aidl @@ -26,4 +26,5 @@ union StatsBootstrapAtomValue { float floatValue; String stringValue; byte[] bytesValue; + String[] stringArrayValue; }
\ No newline at end of file diff --git a/core/java/android/os/StrictMode.java b/core/java/android/os/StrictMode.java index 292e6bdba539..33bfb9999806 100644 --- a/core/java/android/os/StrictMode.java +++ b/core/java/android/os/StrictMode.java @@ -2607,10 +2607,15 @@ public final class StrictMode { * (Java) thread-local policy value. */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) + @android.ravenwood.annotation.RavenwoodReplace private static void onBinderStrictModePolicyChange(@ThreadPolicyMask int newPolicy) { setBlockGuardPolicy(newPolicy); } + private static void onBinderStrictModePolicyChange$ravenwood(@ThreadPolicyMask int newPolicy) { + /* no-op */ + } + /** * A tracked, critical time span. (e.g. during an animation.) * diff --git a/core/java/android/os/SystemClock.java b/core/java/android/os/SystemClock.java index 23bd30a21c4c..d0c23becc45e 100644 --- a/core/java/android/os/SystemClock.java +++ b/core/java/android/os/SystemClock.java @@ -60,7 +60,7 @@ import java.time.ZoneOffset; * sleep (CPU off, display dark, device waiting for external input), * but is not affected by clock scaling, idle, or other power saving * mechanisms. This is the basis for most interval timing - * such as {@link Thread#sleep(long) Thread.sleep(millls)}, + * such as {@link Thread#sleep(long) Thread.sleep(millis)}, * {@link Object#wait(long) Object.wait(millis)}, and * {@link System#nanoTime System.nanoTime()}. This clock is guaranteed * to be monotonic, and is suitable for interval timing when the diff --git a/core/java/android/os/SystemProperties.java b/core/java/android/os/SystemProperties.java index 0a386913de59..89b727cdd655 100644 --- a/core/java/android/os/SystemProperties.java +++ b/core/java/android/os/SystemProperties.java @@ -21,7 +21,6 @@ import android.annotation.Nullable; import android.annotation.SystemApi; import android.compat.annotation.UnsupportedAppUsage; import android.ravenwood.annotation.RavenwoodKeepWholeClass; -import android.ravenwood.annotation.RavenwoodNativeSubstitutionClass; import android.util.Log; import android.util.MutableInt; @@ -38,8 +37,6 @@ import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; -import java.util.Map; -import java.util.function.Predicate; /** * Gives access to the system properties store. The system properties @@ -56,8 +53,6 @@ import java.util.function.Predicate; */ @SystemApi @RavenwoodKeepWholeClass -@RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.SystemProperties_host") public class SystemProperties { private static final String TAG = "SystemProperties"; private static final boolean TRACK_KEY_ACCESS = false; @@ -101,31 +96,6 @@ public class SystemProperties { } } - /** @hide */ - public static void init$ravenwood(Map<String, String> values, - Predicate<String> keyReadablePredicate, Predicate<String> keyWritablePredicate) { - native_init$ravenwood(values, keyReadablePredicate, keyWritablePredicate, - SystemProperties::callChangeCallbacks); - synchronized (sChangeCallbacks) { - sChangeCallbacks.clear(); - } - } - - /** @hide */ - public static void reset$ravenwood() { - native_reset$ravenwood(); - synchronized (sChangeCallbacks) { - sChangeCallbacks.clear(); - } - } - - // These native methods are currently only implemented by Ravenwood, as it's the only - // mechanism we have to jump to our RavenwoodNativeSubstitutionClass - private static native void native_init$ravenwood(Map<String, String> values, - Predicate<String> keyReadablePredicate, Predicate<String> keyWritablePredicate, - Runnable changeCallback); - private static native void native_reset$ravenwood(); - // The one-argument version of native_get used to be a regular native function. Nowadays, // we use the two-argument form of native_get all the time, but we can't just delete the // one-argument overload: apps use it via reflection, as the UnsupportedAppUsage annotation @@ -326,6 +296,16 @@ public class SystemProperties { } /** + * Clear all callback changes. + * @hide + */ + public static void clearChangeCallbacksForTest() { + synchronized (sChangeCallbacks) { + sChangeCallbacks.clear(); + } + } + + /** * Notifies listeners that a system property has changed * @hide */ diff --git a/core/java/android/os/TEST_MAPPING b/core/java/android/os/TEST_MAPPING index b5029a6aaff3..7c36cb91db93 100644 --- a/core/java/android/os/TEST_MAPPING +++ b/core/java/android/os/TEST_MAPPING @@ -38,33 +38,15 @@ }, { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "BugreportManagerTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "BugreportManagerTestCases_android_server_os" }, { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "CtsBugreportTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsBugreportTestCases_android_server_os" }, { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "ShellTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ShellTests_android_server_os" }, { "file_patterns": [ @@ -73,11 +55,7 @@ "PowerComponents\\.java", "[^/]*BatteryConsumer[^/]*\\.java" ], - "name": "FrameworksCoreTests", - "options": [ - { "include-filter": "com.android.internal.os.BatteryStatsTests" }, - { "exclude-annotation": "com.android.internal.os.SkipPresubmit" } - ] + "name": "FrameworksCoreTests_battery_stats" }, { "file_patterns": [ @@ -86,10 +64,7 @@ "PowerComponents\\.java", "[^/]*BatteryConsumer[^/]*\\.java" ], - "name": "FrameworksServicesTests", - "options": [ - { "include-filter": "com.android.server.am.BatteryStatsServiceTest" } - ] + "name": "FrameworksServicesTests_battery_stats" }, { "file_patterns": [ @@ -106,12 +81,7 @@ "Parcel\\.java", "[^/]*Bundle[^/]*\\.java" ], - "name": "FrameworksMockingCoreTests", - "options": [ - { "include-filter": "android.os.BundleRecyclingTest"}, - { "exclude-annotation": "androidx.test.filters.FlakyTest" }, - { "exclude-annotation": "org.junit.Ignore" } - ] + "name": "FrameworksMockingCoreTests_os_bundlerecyclingtest" }, { "file_patterns": [ @@ -123,21 +93,11 @@ }, { "file_patterns": ["SharedMemory[^/]*\\.java"], - "name": "CtsOsTestCases", - "options": [ - { - "include-filter": "android.os.cts.SharedMemoryTest" - } - ] + "name": "CtsOsTestCases_cts_sharedmemorytest" }, { "file_patterns": ["Environment[^/]*\\.java"], - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.os.EnvironmentTest" - } - ] + "name": "FrameworksCoreTests_environment" } ], "postsubmit": [ diff --git a/core/java/android/os/TransactionTooLargeException.java b/core/java/android/os/TransactionTooLargeException.java index 79892e060f49..6b7cb3310ee4 100644 --- a/core/java/android/os/TransactionTooLargeException.java +++ b/core/java/android/os/TransactionTooLargeException.java @@ -47,7 +47,7 @@ import android.os.RemoteException; * If possible, try to break up big requests into smaller pieces. * </p><p> * If you are implementing a service, it may help to impose size or complexity - * contraints on the queries that clients can perform. For example, if the result set + * constraints on the queries that clients can perform. For example, if the result set * could become large, then don't allow the client to request more than a few records * at a time. Alternately, instead of returning all of the available data all at once, * return the essential information first and make the client ask for additional information diff --git a/core/java/android/os/ZygoteProcess.java b/core/java/android/os/ZygoteProcess.java index b1ef05a6f00c..6c99bd1272a4 100644 --- a/core/java/android/os/ZygoteProcess.java +++ b/core/java/android/os/ZygoteProcess.java @@ -73,6 +73,9 @@ public class ZygoteProcess { private static final int ZYGOTE_CONNECT_TIMEOUT_MS = 60000; + // How long we wait for an AppZygote to complete pre-loading; this is a pretty conservative + // value that we can probably decrease over time, but we want to be careful here. + public static volatile int sAppZygotePreloadTimeoutMs = 15000; /** * Use a relatively short delay, because for app zygote, this is in the critical path of * service launch. @@ -1100,6 +1103,17 @@ public class ZygoteProcess { } /** + * Updates the timeout used when preloading code in the app-zygote + * + * @param timeoutMs timeout in milliseconds + */ + public static void setAppZygotePreloadTimeout(int timeoutMs) { + Slog.i(LOG_TAG, "Changing app-zygote preload timeout to " + timeoutMs + " ms."); + + sAppZygotePreloadTimeoutMs = timeoutMs; + } + + /** * Instructs the zygote to pre-load the application code for the given Application. * Only the app zygote supports this function. * TODO preloadPackageForAbi() can probably be removed and the callers an use this instead. @@ -1107,25 +1121,35 @@ public class ZygoteProcess { public boolean preloadApp(ApplicationInfo appInfo, String abi) throws ZygoteStartFailedEx, IOException { synchronized (mLock) { + int ret; ZygoteState state = openZygoteSocketIfNeeded(abi); - state.mZygoteOutputWriter.write("2"); - state.mZygoteOutputWriter.newLine(); + int previousSocketTimeout = state.mZygoteSessionSocket.getSoTimeout(); - state.mZygoteOutputWriter.write("--preload-app"); - state.mZygoteOutputWriter.newLine(); + try { + state.mZygoteSessionSocket.setSoTimeout(sAppZygotePreloadTimeoutMs); - // Zygote args needs to be strings, so in order to pass ApplicationInfo, - // write it to a Parcel, and base64 the raw Parcel bytes to the other side. - Parcel parcel = Parcel.obtain(); - appInfo.writeToParcel(parcel, 0 /* flags */); - String encodedParcelData = Base64.getEncoder().encodeToString(parcel.marshall()); - parcel.recycle(); - state.mZygoteOutputWriter.write(encodedParcelData); - state.mZygoteOutputWriter.newLine(); + state.mZygoteOutputWriter.write("2"); + state.mZygoteOutputWriter.newLine(); - state.mZygoteOutputWriter.flush(); + state.mZygoteOutputWriter.write("--preload-app"); + state.mZygoteOutputWriter.newLine(); - return (state.mZygoteInputStream.readInt() == 0); + // Zygote args needs to be strings, so in order to pass ApplicationInfo, + // write it to a Parcel, and base64 the raw Parcel bytes to the other side. + Parcel parcel = Parcel.obtain(); + appInfo.writeToParcel(parcel, 0 /* flags */); + String encodedParcelData = Base64.getEncoder().encodeToString(parcel.marshall()); + parcel.recycle(); + state.mZygoteOutputWriter.write(encodedParcelData); + state.mZygoteOutputWriter.newLine(); + + state.mZygoteOutputWriter.flush(); + + ret = state.mZygoteInputStream.readInt(); + } finally { + state.mZygoteSessionSocket.setSoTimeout(previousSocketTimeout); + } + return ret == 0; } } diff --git a/core/java/android/os/flags.aconfig b/core/java/android/os/flags.aconfig index 11b1b08b787d..5d2e64d9ef07 100644 --- a/core/java/android/os/flags.aconfig +++ b/core/java/android/os/flags.aconfig @@ -169,6 +169,14 @@ flag { } flag { + name: "binder_frozen_state_change_callback" + is_exported: true + namespace: "system_performance" + description: "Guards the frozen state change callback API." + bug: "361157077" +} + +flag { name: "message_queue_tail_tracking" namespace: "system_performance" description: "track tail of message queue." @@ -209,3 +217,11 @@ flag { description: "Tracing using Perfetto SDK." bug: "303199244" } + +flag { + name: "mainline_vcn_platform_api" + namespace: "vcn" + description: "Expose platform APIs to mainline VCN" + is_exported: true + bug: "366598445" +} diff --git a/core/java/android/os/image/flags/trade_in_mode_flags.aconfig b/core/java/android/os/image/flags/trade_in_mode_flags.aconfig new file mode 100644 index 000000000000..e2e56ef70d62 --- /dev/null +++ b/core/java/android/os/image/flags/trade_in_mode_flags.aconfig @@ -0,0 +1,11 @@ +package: "com.android.tradeinmode.flags" +container: "system" + +flag { + name: "enable_trade_in_mode" + is_exported: true + namespace: "phoenix" + description: "Enable Trade-in Mode" + bug: "332683751" + is_fixed_read_only: true +} diff --git a/core/java/android/os/vibrator/flags.aconfig b/core/java/android/os/vibrator/flags.aconfig index eda755c05509..7d74bd2374ac 100644 --- a/core/java/android/os/vibrator/flags.aconfig +++ b/core/java/android/os/vibrator/flags.aconfig @@ -31,3 +31,13 @@ flag { description: "Enables the adaptive haptics feature" bug: "305961689" } + +flag { + namespace: "haptics" + name: "fix_audio_coupled_haptics_scaling" + description: "Fix the audio-coupled haptics scaling to use same function as VibrationEffect" + bug: "356144312" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/core/java/android/permission/TEST_MAPPING b/core/java/android/permission/TEST_MAPPING index a15d9bc1b485..3e5a131fbdc1 100644 --- a/core/java/android/permission/TEST_MAPPING +++ b/core/java/android/permission/TEST_MAPPING @@ -1,39 +1,15 @@ { "presubmit": [ { - "name": "CtsPermissionTestCases", - "options": [ - { - "include-filter": "android.permission.cts.PermissionControllerTest" - }, - { - "include-filter": "android.permission.cts.RuntimePermissionPresentationInfoTest" - } - ] + "name": "CtsPermissionTestCases_Platform" } ], "postsubmit": [ { - "name": "CtsVirtualDevicesAudioTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.virtualdevice.cts.audio.VirtualAudioPermissionTest" - } - ] + "name": "CtsVirtualDevicesAudioTestCases_audio_virtualaudiopermissiontest" }, { - "name": "CtsVirtualDevicesAppLaunchTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.virtualdevice.cts.applaunch.VirtualDevicePermissionTest" - } - ] + "name": "CtsVirtualDevicesAppLaunchTestCases_applaunch_virtualdevicepermissiontest" } ] -}
\ No newline at end of file +} diff --git a/core/java/android/print/OWNERS b/core/java/android/print/OWNERS index 0809de25b45c..ce79f5d0c669 100644 --- a/core/java/android/print/OWNERS +++ b/core/java/android/print/OWNERS @@ -2,3 +2,4 @@ anothermark@google.com kumarashishg@google.com +bmgordon@google.com diff --git a/core/java/android/print/TEST_MAPPING b/core/java/android/print/TEST_MAPPING index 4fa882265e53..1033b1a86edb 100644 --- a/core/java/android/print/TEST_MAPPING +++ b/core/java/android/print/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsPrintTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ] + "name": "CtsPrintTestCases_Presubmit" } ] } diff --git a/core/java/android/printservice/OWNERS b/core/java/android/printservice/OWNERS index 0809de25b45c..ce79f5d0c669 100644 --- a/core/java/android/printservice/OWNERS +++ b/core/java/android/printservice/OWNERS @@ -2,3 +2,4 @@ anothermark@google.com kumarashishg@google.com +bmgordon@google.com diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index d91508fe1612..2a023a18eadd 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -2274,6 +2274,26 @@ public final class Settings { "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS"; /** + * Activity Action: Show Other NFC services settings. + * <p> + * If a Settings activity handles this intent action, an "Other NFC services" entry will be + * shown in the Default payment app settings, and clicking it will launch that activity. + * <p> + * In some cases, a matching Activity may not exist, so ensure you safeguard against this. + * <p> + * Input: Nothing. + * <p> + * Output: Nothing. + * + * @hide + */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_ACTION_MANAGE_SERVICES_SETTINGS) + @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) + @SystemApi + public static final String ACTION_MANAGE_OTHER_NFC_SERVICES_SETTINGS = + "android.settings.MANAGE_OTHER_NFC_SERVICES_SETTINGS"; + + /** * Activity Action: Show app screen size list settings for user to override app aspect * ratio. * <p> @@ -11066,6 +11086,13 @@ public final class Settings { "active_unlock_on_biometric_fail"; /** + * Whether or not active unlock triggers on legacy unlock intents. + * @hide + */ + public static final String ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY = + "active_unlock_on_unlock_intent_legacy"; + + /** * If active unlock triggers on biometric failures, include the following error codes * as a biometric failure. See {@link android.hardware.biometrics.BiometricFaceConstants}. * Error codes should be separated by a pipe. For example: "1|4|5". If active unlock diff --git a/core/java/android/provider/TEST_MAPPING b/core/java/android/provider/TEST_MAPPING index 2eb285dda0a2..a6fe3016e8ba 100644 --- a/core/java/android/provider/TEST_MAPPING +++ b/core/java/android/provider/TEST_MAPPING @@ -24,12 +24,7 @@ "name": "SettingsProviderTest" }, { - "name": "CtsPackageManagerHostTestCases", - "options": [ - { - "include-filter": "android.appsecurity.cts.ReadableSettingsFieldsTest" - } - ] + "name": "CtsPackageManagerHostTestCases_cts_readablesettingsfieldstest" } ], "postsubmit": [ diff --git a/services/core/java/com/android/server/integrity/parser/RuleParseException.java b/core/java/android/ranging/mock/RangingFrameworkInitializer.java index c0f36a66528a..540f51954a9c 100644 --- a/services/core/java/com/android/server/integrity/parser/RuleParseException.java +++ b/core/java/android/ranging/mock/RangingFrameworkInitializer.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019 The Android Open Source Project + * Copyright (C) 2024 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. @@ -14,19 +14,21 @@ * limitations under the License. */ -package com.android.server.integrity.parser; - -import android.annotation.NonNull; +package android.ranging; /** - * Thrown when rule parsing fails. - */ -public class RuleParseException extends Exception { - public RuleParseException(@NonNull String message) { - super(message); - } +* Mock RangingFrameworkInitializer. +* +* @hide +*/ - public RuleParseException(@NonNull String message, @NonNull Throwable cause) { - super(message, cause); +// TODO(b/331206299): Remove this after RANGING_STACK_ENABLED is ramped up to next. +public final class RangingFrameworkInitializer { + private RangingFrameworkInitializer() {} + /** + * @hide + */ + public static void registerServiceWrappers() { + // No-op. } } diff --git a/core/java/android/security/OWNERS b/core/java/android/security/OWNERS index 8bd6c858be7c..325d2742c2da 100644 --- a/core/java/android/security/OWNERS +++ b/core/java/android/security/OWNERS @@ -3,9 +3,11 @@ brambonne@google.com eranm@google.com jeffv@google.com +tweek@google.com per-file *NetworkSecurityPolicy.java = file:net/OWNERS per-file Confirmation*.java = file:/keystore/OWNERS per-file FileIntegrityManager.java = file:platform/system/security:/fsverity/OWNERS per-file IFileIntegrityService.aidl = file:platform/system/security:/fsverity/OWNERS per-file *.aconfig = victorhsieh@google.com,eranm@google.com +per-file *responsible_apis_flags.aconfig = haok@google.com
\ No newline at end of file diff --git a/core/java/android/security/TEST_MAPPING b/core/java/android/security/TEST_MAPPING index 5a679b1a2bf7..e1c7f3c2f3d3 100644 --- a/core/java/android/security/TEST_MAPPING +++ b/core/java/android/security/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsSecurityTestCases", - "options": [ - { - "include-filter": "android.security.cts.FileIntegrityManagerTest" - } - ], + "name": "CtsSecurityTestCases_cts_fileintegritymanagertest", "file_patterns": [ "FileIntegrityManager\\.java", "IFileIntegrityService\\.aidl" diff --git a/core/java/android/security/advancedprotection/OWNERS b/core/java/android/security/advancedprotection/OWNERS new file mode 100644 index 000000000000..ddac8edb6f4a --- /dev/null +++ b/core/java/android/security/advancedprotection/OWNERS @@ -0,0 +1,12 @@ +# Bug component: 315013 + +achim@google.com +azharaa@google.com +cpinelli@google.com +eranm@google.com +hanikazmi@google.com +haok@google.com +lus@google.com +mattgilbride@google.com +mpgroover@google.com +wnan@google.com diff --git a/core/java/android/security/flags.aconfig b/core/java/android/security/flags.aconfig index f6f0eff918e3..1d35344e5218 100644 --- a/core/java/android/security/flags.aconfig +++ b/core/java/android/security/flags.aconfig @@ -99,3 +99,24 @@ flag { description: "Causes TrustManagerService to listen for credential attempts and ignore reports from upstream" bug: "323086607" } + +flag { + name: "clear_strong_auth_on_add_primary_credential" + namespace: "biometrics" + description: "Clear StrongAuth on add credential" + bug: "320817991" +} + +flag { + name: "afl_api" + namespace: "platform_security" + description: "AFL feature" + bug: "365994454" +} + +flag { + name: "keystore_grant_api" + namespace: "hardware_backed_security" + description: "Feature flag for exposing KeyStore grant APIs" + bug: "351158708" +} diff --git a/core/java/android/security/forensic/OWNERS b/core/java/android/security/forensic/OWNERS new file mode 100644 index 000000000000..d9e82a6e42f2 --- /dev/null +++ b/core/java/android/security/forensic/OWNERS @@ -0,0 +1,8 @@ +# Bug component: 1630302 + +lizprucka@google.com +mteffeteller@google.com +myriamleggieri@google.com +rmneal@google.com +wenhaowang@google.com +willcoster@google.com diff --git a/core/java/android/security/net/config/SystemCertificateSource.java b/core/java/android/security/net/config/SystemCertificateSource.java index 3a254c1d92fc..bdda42a389eb 100644 --- a/core/java/android/security/net/config/SystemCertificateSource.java +++ b/core/java/android/security/net/config/SystemCertificateSource.java @@ -19,6 +19,8 @@ package android.security.net.config; import android.os.Environment; import android.os.UserHandle; +import com.android.internal.util.ArrayUtils; + import java.io.File; /** @@ -45,7 +47,7 @@ public final class SystemCertificateSource extends DirectoryCertificateSource { } File updatable_dir = new File("/apex/com.android.conscrypt/cacerts"); if (updatable_dir.exists() - && !(updatable_dir.list().length == 0)) { + && !(ArrayUtils.isEmpty(updatable_dir.list()))) { return updatable_dir; } return new File(System.getenv("ANDROID_ROOT") + "/etc/security/cacerts"); diff --git a/core/java/android/service/chooser/flags.aconfig b/core/java/android/service/chooser/flags.aconfig index d6425c397bbb..ed20207cfb0b 100644 --- a/core/java/android/service/chooser/flags.aconfig +++ b/core/java/android/service/chooser/flags.aconfig @@ -32,3 +32,14 @@ flag { description: "Provides additional callbacks with information about user actions in ChooserResult" bug: "263474465" } + +flag { + name: "fix_resolver_memory_leak" + is_exported: true + namespace: "intentresolver" + description: "ResolverActivity memory leak (through the AppPredictor callback) fix" + bug: "346671041" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/core/java/android/service/contextualsearch/OWNERS b/core/java/android/service/contextualsearch/OWNERS index 463adf48dd3e..c435bd87be21 100644 --- a/core/java/android/service/contextualsearch/OWNERS +++ b/core/java/android/service/contextualsearch/OWNERS @@ -1,3 +1,3 @@ srazdan@google.com -volnov@google.com -hackz@google.com +hyunyoungs@google.com +awickham@google.com diff --git a/core/java/android/service/dreams/DreamService.java b/core/java/android/service/dreams/DreamService.java index 1e5bd393d4d8..055506eb0c54 100644 --- a/core/java/android/service/dreams/DreamService.java +++ b/core/java/android/service/dreams/DreamService.java @@ -262,9 +262,9 @@ public class DreamService extends Service implements Window.Callback { private boolean mDozing; private boolean mWindowless; private boolean mPreviewMode; - private int mDozeScreenState = Display.STATE_UNKNOWN; - private @Display.StateReason int mDozeScreenStateReason = Display.STATE_REASON_UNKNOWN; - private int mDozeScreenBrightness = PowerManager.BRIGHTNESS_DEFAULT; + private volatile int mDozeScreenState = Display.STATE_UNKNOWN; + private volatile @Display.StateReason int mDozeScreenStateReason = Display.STATE_REASON_UNKNOWN; + private volatile int mDozeScreenBrightness = PowerManager.BRIGHTNESS_DEFAULT; private boolean mDebug = false; diff --git a/core/java/android/service/games/TEST_MAPPING b/core/java/android/service/games/TEST_MAPPING index 3e551ef6bb54..9767bcde3225 100644 --- a/core/java/android/service/games/TEST_MAPPING +++ b/core/java/android/service/games/TEST_MAPPING @@ -2,15 +2,7 @@ "presubmit": [ // TODO(b/245615658): fix flaky CTS test CtsGameServiceTestCases and add it as presubmit { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "android.service.games" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksMockingServicesTests_games_Presubmit" } ] }
\ No newline at end of file diff --git a/core/java/android/service/notification/TEST_MAPPING b/core/java/android/service/notification/TEST_MAPPING index 468c4518602e..dc7129cde5e5 100644 --- a/core/java/android/service/notification/TEST_MAPPING +++ b/core/java/android/service/notification/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "CtsNotificationTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsNotificationTestCases_notification" }, { - "name": "FrameworksUiServicesTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "FrameworksUiServicesTests_notification" } ], "postsubmit": [ diff --git a/core/java/android/service/quicksettings/TEST_MAPPING b/core/java/android/service/quicksettings/TEST_MAPPING index 2d45c5b252cc..986dc5fd2ba9 100644 --- a/core/java/android/service/quicksettings/TEST_MAPPING +++ b/core/java/android/service/quicksettings/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsTileServiceTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTileServiceTestCases" } ] }
\ No newline at end of file diff --git a/core/java/android/service/settings/OWNERS b/core/java/android/service/settings/OWNERS new file mode 100644 index 000000000000..c70c7380ec0e --- /dev/null +++ b/core/java/android/service/settings/OWNERS @@ -0,0 +1,7 @@ +# Bug component: 27091 + +cantol@google.com +cechkahn@google.com +cipson@google.com +dswliu@google.com +jiannan@google.com diff --git a/core/java/android/service/timezone/TEST_MAPPING b/core/java/android/service/timezone/TEST_MAPPING index bf46ff2ffe06..2071717e5f60 100644 --- a/core/java/android/service/timezone/TEST_MAPPING +++ b/core/java/android/service/timezone/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksTimeCoreTests", - "options": [ - { - "include-filter": "android.service." - } - ] + "name": "FrameworksTimeCoreTests_android_service" }, { "name": "CtsLocationTimeZoneManagerHostTest" diff --git a/core/java/android/speech/OWNERS b/core/java/android/speech/OWNERS index 0f2f8ad3d99e..32f482264103 100644 --- a/core/java/android/speech/OWNERS +++ b/core/java/android/speech/OWNERS @@ -1,4 +1,3 @@ volnov@google.com eugeniom@google.com schfan@google.com -hackz@google.com diff --git a/core/java/android/speech/TEST_MAPPING b/core/java/android/speech/TEST_MAPPING index 7b125c2b0851..cb490f5b62d4 100644 --- a/core/java/android/speech/TEST_MAPPING +++ b/core/java/android/speech/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsVoiceRecognitionTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVoiceRecognitionTestCases" } ] } diff --git a/core/java/android/telephony/TelephonyCallback.java b/core/java/android/telephony/TelephonyCallback.java index b8b84d93c97c..c6ee4973f37e 100644 --- a/core/java/android/telephony/TelephonyCallback.java +++ b/core/java/android/telephony/TelephonyCallback.java @@ -33,6 +33,7 @@ import android.telephony.ims.MediaThreshold; import android.util.Log; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.annotations.WeaklyReferencedCallback; import com.android.internal.telephony.IPhoneStateListener; import com.android.internal.telephony.flags.Flags; @@ -69,6 +70,7 @@ import java.util.stream.Collectors; * its manifest file. Where permissions apply, they are noted in the * appropriate sub-interfaces. */ +@WeaklyReferencedCallback public class TelephonyCallback { private static final String LOG_TAG = "TelephonyCallback"; /** diff --git a/core/java/android/text/TEST_MAPPING b/core/java/android/text/TEST_MAPPING index c9bd2cacb138..9f8a72cb5975 100644 --- a/core/java/android/text/TEST_MAPPING +++ b/core/java/android/text/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsTextTestCases_text" } ] } diff --git a/core/java/android/util/EventLog.java b/core/java/android/util/EventLog.java index 0a73fd1689c3..00545da2baf2 100644 --- a/core/java/android/util/EventLog.java +++ b/core/java/android/util/EventLog.java @@ -21,6 +21,10 @@ import android.annotation.Nullable; import android.annotation.SystemApi; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodThrow; import java.io.BufferedReader; import java.io.FileReader; @@ -48,9 +52,8 @@ import java.util.regex.Pattern; * They carry a payload of one or more int, long, or String values. The * event-log-tags file defines the payload contents for each type code. */ -@android.ravenwood.annotation.RavenwoodKeepWholeClass -@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.EventLog_host") +@RavenwoodKeepWholeClass +@RavenwoodRedirectionClass("EventLog_host") public class EventLog { /** @hide */ public EventLog() {} @@ -339,6 +342,7 @@ public class EventLog { * @param value A value to log * @return The number of bytes written */ + @RavenwoodRedirect public static native int writeEvent(int tag, int value); /** @@ -347,6 +351,7 @@ public class EventLog { * @param value A value to log * @return The number of bytes written */ + @RavenwoodRedirect public static native int writeEvent(int tag, long value); /** @@ -355,6 +360,7 @@ public class EventLog { * @param value A value to log * @return The number of bytes written */ + @RavenwoodRedirect public static native int writeEvent(int tag, float value); /** @@ -363,6 +369,7 @@ public class EventLog { * @param str A value to log * @return The number of bytes written */ + @RavenwoodRedirect public static native int writeEvent(int tag, String str); /** @@ -371,6 +378,7 @@ public class EventLog { * @param list A list of values to log * @return The number of bytes written */ + @RavenwoodRedirect public static native int writeEvent(int tag, Object... list); /** @@ -379,6 +387,7 @@ public class EventLog { * @param output container to add events into * @throws IOException if something goes wrong reading events */ + @RavenwoodThrow public static native void readEvents(int[] tags, Collection<Event> output) throws IOException; @@ -391,6 +400,7 @@ public class EventLog { * @hide */ @SystemApi + @RavenwoodThrow public static native void readEventsOnWrapping(int[] tags, long timestamp, Collection<Event> output) throws IOException; diff --git a/core/java/android/util/Log.java b/core/java/android/util/Log.java index 8358b9a51adb..1dd9d46fdfb7 100644 --- a/core/java/android/util/Log.java +++ b/core/java/android/util/Log.java @@ -75,8 +75,7 @@ import java.net.UnknownHostException; @android.ravenwood.annotation.RavenwoodClassLoadHook( "com.android.platform.test.ravenwood.runtimehelper.ClassLoadHook.onClassLoaded") // Uncomment the following annotation to switch to the Java substitution version. -//@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( -// "com.android.platform.test.ravenwood.nativesubstitution.Log_host") +@android.ravenwood.annotation.RavenwoodRedirectionClass("Log_host") public final class Log { /** @hide */ @IntDef({ASSERT, ERROR, WARN, INFO, DEBUG, VERBOSE}) @@ -250,6 +249,7 @@ public final class Log { * tag limit of concern after this API level. */ @FastNative + @android.ravenwood.annotation.RavenwoodRedirect public static native boolean isLoggable(@Nullable String tag, @Level int level); /** @@ -425,6 +425,7 @@ public final class Log { * @hide */ @UnsupportedAppUsage + @android.ravenwood.annotation.RavenwoodRedirect public static native int println_native(int bufID, int priority, String tag, String msg); /** @@ -452,6 +453,7 @@ public final class Log { * Return the maximum payload the log daemon accepts without truncation. * @return LOGGER_ENTRY_MAX_PAYLOAD. */ + @android.ravenwood.annotation.RavenwoodRedirect private static native int logger_entry_max_payload_native(); /** diff --git a/core/java/android/util/LruCache.java b/core/java/android/util/LruCache.java index be1ec4187ddc..9845f9e7b804 100644 --- a/core/java/android/util/LruCache.java +++ b/core/java/android/util/LruCache.java @@ -18,7 +18,6 @@ package android.util; import android.compat.annotation.UnsupportedAppUsage; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; @@ -226,16 +225,10 @@ public class LruCache<K, V> { } } - @android.ravenwood.annotation.RavenwoodReplace private Map.Entry<K, V> eldest() { return map.eldest(); } - private Map.Entry<K, V> eldest$ravenwood() { - final Iterator<Map.Entry<K, V>> it = map.entrySet().iterator(); - return it.hasNext() ? it.next() : null; - } - /** * Removes the entry for {@code key} if it exists. * diff --git a/core/java/android/util/Slog.java b/core/java/android/util/Slog.java index 9ecb4cbb283d..b2017a5fa868 100644 --- a/core/java/android/util/Slog.java +++ b/core/java/android/util/Slog.java @@ -224,7 +224,6 @@ public final class Slog { /** * Similar to {@link #wtf(String, String)}, but does not output anything to the log. */ - @android.ravenwood.annotation.RavenwoodThrow public static void wtfQuiet(@Nullable String tag, @NonNull String msg) { Log.wtfQuiet(Log.LOG_ID_SYSTEM, tag, msg, true); } @@ -243,7 +242,6 @@ public final class Slog { * @see Log#wtfStack(String, String) */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023) - @android.ravenwood.annotation.RavenwoodThrow public static int wtfStack(@Nullable String tag, @NonNull String msg) { return Log.wtf(Log.LOG_ID_SYSTEM, tag, msg, null, true, true); } diff --git a/core/java/android/util/TEST_MAPPING b/core/java/android/util/TEST_MAPPING index c681f86ce439..64b2e6eeccc7 100644 --- a/core/java/android/util/TEST_MAPPING +++ b/core/java/android/util/TEST_MAPPING @@ -1,27 +1,11 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.util.CharsetUtilsTest" - }, - { - "include-filter": "com.android.internal.util.FastDataTest" - } - ], + "name": "FrameworksCoreTests_util_data_charset", "file_patterns": ["CharsetUtils|FastData"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.util.XmlTest" - }, - { - "include-filter": "android.util.BinaryXmlTest" - } - ], + "name": "FrameworksCoreTests_xml", "file_patterns": ["Xml"] } ], diff --git a/core/java/android/util/apk/TEST_MAPPING b/core/java/android/util/apk/TEST_MAPPING index 7668eec474ab..3ae470ad8a95 100644 --- a/core/java/android/util/apk/TEST_MAPPING +++ b/core/java/android/util/apk/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.util.apk.SourceStampVerifierTest" - } - ] + "name": "FrameworksCoreTests_util_apk" } ], "presubmit-large": [ diff --git a/core/java/android/view/DisplayEventReceiver.java b/core/java/android/view/DisplayEventReceiver.java index 18080e4478fc..fc7a65dbdc41 100644 --- a/core/java/android/view/DisplayEventReceiver.java +++ b/core/java/android/view/DisplayEventReceiver.java @@ -24,6 +24,7 @@ import android.os.MessageQueue; import android.util.Log; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.annotations.WeaklyReferencedCallback; import dalvik.annotation.optimization.FastNative; @@ -40,6 +41,7 @@ import java.lang.ref.WeakReference; * * @hide */ +@WeaklyReferencedCallback public abstract class DisplayEventReceiver { /** diff --git a/core/java/android/view/HapticFeedbackConstants.java b/core/java/android/view/HapticFeedbackConstants.java index 69228cafa34b..cd02130fb2f0 100644 --- a/core/java/android/view/HapticFeedbackConstants.java +++ b/core/java/android/view/HapticFeedbackConstants.java @@ -157,7 +157,7 @@ public class HapticFeedbackConstants { /** * The user is executing a swipe/drag-style gesture, such as pull-to-refresh, where the - * gesture action is “eligible” at a certain threshold of movement, and can be cancelled by + * gesture action is "eligible" at a certain threshold of movement, and can be cancelled by * moving back past the threshold. This constant indicates that the user's motion has just * passed the threshold for the action to be activated on release. * @@ -167,7 +167,7 @@ public class HapticFeedbackConstants { /** * The user is executing a swipe/drag-style gesture, such as pull-to-refresh, where the - * gesture action is “eligible” at a certain threshold of movement, and can be cancelled by + * gesture action is "eligible" at a certain threshold of movement, and can be cancelled by * moving back past the threshold. This constant indicates that the user's motion has just * re-crossed back "under" the threshold for the action to be activated, meaning the gesture is * currently in a cancelled state. diff --git a/core/java/android/view/InsetsAnimationThreadControlRunner.java b/core/java/android/view/InsetsAnimationThreadControlRunner.java index 83ff88bdcc1c..1b3b3ebbecfc 100644 --- a/core/java/android/view/InsetsAnimationThreadControlRunner.java +++ b/core/java/android/view/InsetsAnimationThreadControlRunner.java @@ -89,7 +89,7 @@ public class InsetsAnimationThreadControlRunner implements InsetsAnimationContro SyncRtSurfaceTransactionApplier.SurfaceParams surfaceParams = params[i]; applyParams(t, surfaceParams, mTmpFloat9); } - t.setFrameTimelineVsync(Choreographer.getSfInstance().getVsyncId()); + t.setFrameTimelineVsync(Choreographer.getInstance().getVsyncId()); t.apply(); t.close(); } diff --git a/core/java/android/view/MotionEvent.java b/core/java/android/view/MotionEvent.java index 79a9f2d38ad9..8e3311e92915 100644 --- a/core/java/android/view/MotionEvent.java +++ b/core/java/android/view/MotionEvent.java @@ -136,7 +136,16 @@ import java.util.Objects; * ev.getPointerId(p), ev.getX(p), ev.getY(p)); * } * } - * </code></pre></p> + * </code></pre></p><p> + * Developers should keep in mind that it is especially important to consume all samples + * in a batched event when processing relative values that report changes since the last + * event or sample. Examples of such relative axes include {@link #AXIS_RELATIVE_X}, + * {@link #AXIS_RELATIVE_Y}, and many of the axes prefixed with {@code AXIS_GESTURE_}. + * In these cases, developers should first consume all historical values using + * {@link #getHistoricalAxisValue(int, int)} and then consume the current values using + * {@link #getAxisValue(int)} like in the example above, as these relative values are + * not accumulated in a batched event. + * </p> * * <h3>Device Types</h3> * <p> @@ -1125,6 +1134,9 @@ public final class MotionEvent extends InputEvent implements Parcelable { * the location but this axis reports the difference which allows the app to see * how the mouse is moved. * </ul> + * </p><p> + * These values are relative to the state from the last sample, not accumulated, so developers + * should make sure to process this axis value for all batched historical samples. * </p> * * @see #getAxisValue(int, int) @@ -1138,6 +1150,9 @@ public final class MotionEvent extends InputEvent implements Parcelable { * Axis constant: The movement of y position of a motion event. * <p> * This is similar to {@link #AXIS_RELATIVE_X} but for y-axis. + * </p><p> + * These values are relative to the state from the last sample, not accumulated, so developers + * should make sure to process this axis value for all batched historical samples. * </p> * * @see #getAxisValue(int, int) @@ -1332,8 +1347,8 @@ public final class MotionEvent extends InputEvent implements Parcelable { * swipe gesture starts at X = 500 then moves to X = 400, this axis would have a value of * -0.1. * </ul> - * These values are relative to the state from the last event, not accumulated, so developers - * should make sure to process this axis value for all batched historical events. + * These values are relative to the state from the last sample, not accumulated, so developers + * should make sure to process this axis value for all batched historical samples. * <p> * This axis is only set on the first pointer in a motion event. */ @@ -1353,8 +1368,8 @@ public final class MotionEvent extends InputEvent implements Parcelable { * <li>For a touch pad, reports the distance that should be scrolled in the X axis as a result * of the user's two-finger scroll gesture, in display pixels. * </ul> - * These values are relative to the state from the last event, not accumulated, so developers - * should make sure to process this axis value for all batched historical events. + * These values are relative to the state from the last sample, not accumulated, so developers + * should make sure to process this axis value for all batched historical samples. * <p> * This axis is only set on the first pointer in a motion event. */ @@ -1375,8 +1390,8 @@ public final class MotionEvent extends InputEvent implements Parcelable { * making a pinch gesture, as a proportion of the previous distance. For example, if the fingers * were 50 units apart and are now 52 units apart, the scale factor would be 1.04. * </ul> - * These values are relative to the state from the last event, not accumulated, so developers - * should make sure to process this axis value for all batched historical events. + * These values are relative to the state from the last sample, not accumulated, so developers + * should make sure to process this axis value for all batched historical samples. * <p> * This axis is only set on the first pointer in a motion event. */ diff --git a/core/java/android/view/OWNERS b/core/java/android/view/OWNERS index 31a8dfaaf86b..3b69f1dde4ca 100644 --- a/core/java/android/view/OWNERS +++ b/core/java/android/view/OWNERS @@ -87,6 +87,7 @@ per-file OnReceiveContentListener.java = file:/core/java/android/service/autofil per-file OnReceiveContentListener.java = file:/core/java/android/widget/OWNERS per-file ContentInfo.java = file:/core/java/android/service/autofill/OWNERS per-file ContentInfo.java = file:/core/java/android/widget/OWNERS +per-file view_flags.aconfig = file:/services/core/java/com/android/server/wm/OWNERS # WindowManager per-file ContentRecordingSession.aidl = file:/services/core/java/com/android/server/wm/OWNERS diff --git a/core/java/android/view/PointerIcon.java b/core/java/android/view/PointerIcon.java index c30212657c57..3e1d93c3133c 100644 --- a/core/java/android/view/PointerIcon.java +++ b/core/java/android/view/PointerIcon.java @@ -521,8 +521,6 @@ public final class PointerIcon implements Parcelable { // Assumes they have the exact duration. mDurationPerFrame = animationDrawable.getDuration(0); mBitmapFrames = new Bitmap[frames - 1]; - final int width = drawable.getIntrinsicWidth(); - final int height = drawable.getIntrinsicHeight(); final boolean isVectorAnimation = drawable instanceof VectorDrawable; mDrawNativeDropShadow = isVectorAnimation; for (int i = 1; i < frames; ++i) { @@ -537,12 +535,6 @@ public final class PointerIcon implements Parcelable { + "is a different type from the others. All frames should be the " + "same type."); } - if (drawableFrame.getIntrinsicWidth() != width || - drawableFrame.getIntrinsicHeight() != height) { - throw new IllegalArgumentException("The bitmap size of " + i + "-th frame " - + "is different. All frames should have the exact same size and " - + "share the same hotspot."); - } if (isVectorAnimation) { drawableFrame = getBitmapDrawableFromVectorDrawable(resources, (VectorDrawable) drawableFrame, pointerScale); diff --git a/core/java/android/view/SurfaceControl.java b/core/java/android/view/SurfaceControl.java index 0bdb4ad645f3..884a66c477b4 100644 --- a/core/java/android/view/SurfaceControl.java +++ b/core/java/android/view/SurfaceControl.java @@ -2917,12 +2917,12 @@ public final class SurfaceControl implements Parcelable { private void apply(boolean sync, boolean oneWay) { applyResizedSurfaces(); notifyReparentedSurfaces(); - nativeApplyTransaction(mNativeObject, sync, oneWay); if (SurfaceControlRegistry.sCallStackDebuggingEnabled) { SurfaceControlRegistry.getProcessInstance().checkCallStackDebugging( "apply", this, null, null); } + nativeApplyTransaction(mNativeObject, sync, oneWay); } /** @@ -3491,7 +3491,7 @@ public final class SurfaceControl implements Parcelable { checkPreconditions(sc); if (SurfaceControlRegistry.sCallStackDebuggingEnabled) { SurfaceControlRegistry.getProcessInstance().checkCallStackDebugging( - "reparent", this, sc, + "setColor", this, sc, "r=" + color[0] + " g=" + color[1] + " b=" + color[2]); } nativeSetColor(mNativeObject, sc.mNativeObject, color); diff --git a/core/java/android/view/SurfaceControlRegistry.java b/core/java/android/view/SurfaceControlRegistry.java index aa3654dd77ac..91cf5804309f 100644 --- a/core/java/android/view/SurfaceControlRegistry.java +++ b/core/java/android/view/SurfaceControlRegistry.java @@ -71,7 +71,7 @@ public class SurfaceControlRegistry { } // Sort entries by time registered when dumping // TODO: Or should it sort by name? - entries.sort((o1, o2) -> (int) (o1.getValue() - o2.getValue())); + entries.sort((o1, o2) -> Long.compare(o1.getValue(), o2.getValue())); final int size = Math.min(entries.size(), limit); pw.println("SurfaceControlRegistry"); diff --git a/core/java/android/view/TEST_MAPPING b/core/java/android/view/TEST_MAPPING index db3590814e08..ac6cd02b58aa 100644 --- a/core/java/android/view/TEST_MAPPING +++ b/core/java/android/view/TEST_MAPPING @@ -4,39 +4,11 @@ "name": "CtsAccelerationTestCases" }, { - "name": "CtsOsTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.os.cts.StrictModeTest" - } - ], + "name": "CtsOsTestCases_cts_strictmodetest_Presubmit", "file_patterns": ["(/|^)ViewConfiguration.java", "(/|^)GestureDetector.java"] }, { - "name": "CtsViewReceiveContentTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ], + "name": "CtsViewReceiveContentTestCases_Presubmit", "file_patterns": ["ContentInfo\\.java", "OnReceiveContentListener\\.java", "View\\.java"] } ], diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index abb6f41a70ef..232cfcb3d5e6 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -371,7 +371,7 @@ import java.util.function.Predicate; * </tr> * <tr> * <td><code>{@link #onTouchEvent(MotionEvent)}</code></td> - * <td>Called when a touch screen motion event occurs. + * <td>Called when a motion event occurs with pointers down on the view. * </td> * </tr> * <tr> @@ -17843,7 +17843,13 @@ public class View implements Drawable.Callback, KeyEvent.Callback, } /** - * Implement this method to handle touch screen motion events. + * Implement this method to handle pointer events. + * <p> + * This method is called to handle motion events where pointers are down on + * the view. For example, this could include touchscreen touches, stylus + * touches, or click-and-drag events from a mouse. However, it is not called + * for motion events that do not involve pointers being down, such as hover + * events or mouse scroll wheel movements. * <p> * If this method is used to detect click actions, it is recommended that * the actions be performed by implementing and calling diff --git a/core/java/android/view/ViewGroup.java b/core/java/android/view/ViewGroup.java index b2c39b13525f..f44def268d58 100644 --- a/core/java/android/view/ViewGroup.java +++ b/core/java/android/view/ViewGroup.java @@ -4490,6 +4490,11 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager final View[] children = mChildren; for (int i = 0; i < count; i++) { final View child = children[i]; + if (child == null) { + throw new IllegalStateException(getClass().getSimpleName() + " contains null " + + "child at index " + i + " when traversal in dispatchGetDisplayList," + + " the view may have been removed."); + } if (((child.mViewFlags & VISIBILITY_MASK) == VISIBLE || child.getAnimation() != null)) { recreateChildDisplayList(child); } diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 2377b869e804..dde4b34ea655 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -126,6 +126,7 @@ import static android.view.inputmethod.InputMethodEditorTraceProto.InputMethodCl import static com.android.internal.annotations.VisibleForTesting.Visibility.PACKAGE; import static com.android.window.flags.Flags.activityWindowInfoFlag; import static com.android.window.flags.Flags.enableBufferTransformHintFromDisplay; +import static com.android.window.flags.Flags.insetsControlChangedItem; import static com.android.window.flags.Flags.setScPropertiesInClient; import static com.android.window.flags.Flags.windowSessionRelayoutInfo; import static com.android.text.flags.Flags.disableHandwritingInitiatorForIme; @@ -1266,7 +1267,6 @@ public final class ViewRootImpl implements ViewParent, mDensity = context.getResources().getDisplayMetrics().densityDpi; mNoncompatDensity = context.getResources().getDisplayMetrics().noncompatDensityDpi; mFallbackEventHandler = new PhoneFallbackEventHandler(context); - // TODO(b/222696368): remove getSfInstance usage and use vsyncId for transactions mChoreographer = Choreographer.getInstance(); mInsetsController = new InsetsController(new ViewRootInsetsControllerHost(this)); mImeBackAnimationController = new ImeBackAnimationController(this, mInsetsController); @@ -4405,7 +4405,7 @@ public final class ViewRootImpl implements ViewParent, if (mAppStartInfoTimestampsFlagValue && !mAppStartTrackingStarted) { mAppStartTrackingStarted = true; Transaction transaction = new Transaction(); - transaction.addTransactionCompletedListener(mExecutor, + transaction.addTransactionCompletedListener(mSimpleExecutor, new Consumer<TransactionStats>() { @Override public void accept(TransactionStats transactionStats) { @@ -11417,8 +11417,13 @@ public final class ViewRootImpl implements ViewParent, @Override public void insetsControlChanged(InsetsState insetsState, InsetsSourceControl.Array activeControls) { - final boolean isFromInsetsControlChangeItem = mIsFromTransactionItem; - mIsFromTransactionItem = false; + final boolean isFromInsetsControlChangeItem; + if (insetsControlChangedItem()) { + isFromInsetsControlChangeItem = mIsFromTransactionItem; + mIsFromTransactionItem = false; + } else { + isFromInsetsControlChangeItem = false; + } final ViewRootImpl viewAncestor = mViewAncestor.get(); if (viewAncestor == null) { if (isFromInsetsControlChangeItem) { diff --git a/core/java/android/view/contentcapture/OWNERS b/core/java/android/view/contentcapture/OWNERS index e4b09524ede7..9ac273f515e7 100644 --- a/core/java/android/view/contentcapture/OWNERS +++ b/core/java/android/view/contentcapture/OWNERS @@ -2,4 +2,3 @@ hackz@google.com shivanker@google.com -volnov@google.com diff --git a/core/java/android/view/contentprotection/OWNERS b/core/java/android/view/contentprotection/OWNERS index b3583a7f6ab1..48052c640560 100644 --- a/core/java/android/view/contentprotection/OWNERS +++ b/core/java/android/view/contentprotection/OWNERS @@ -1,4 +1,6 @@ -# Bug component: 544200 +# Bug component: 1040349 -include /core/java/android/view/contentcapture/OWNERS +njagar@google.com +williamluh@google.com +aaronjosephs@google.com diff --git a/core/java/android/view/inputmethod/InputMethodInfo.java b/core/java/android/view/inputmethod/InputMethodInfo.java index 11ee286652a1..0a39389556d5 100644 --- a/core/java/android/view/inputmethod/InputMethodInfo.java +++ b/core/java/android/view/inputmethod/InputMethodInfo.java @@ -860,7 +860,7 @@ public final class InputMethodInfo implements Parcelable { * <p>e.g.<pre><code>startActivity(createStylusHandwritingSettingsActivityIntent());</code> * </pre></p> * - * @attr ref R.styleable#InputMethod_stylusHandwritingSettingsActivity + * @attr ref android.R.styleable#InputMethod_stylusHandwritingSettingsActivity * @see #getSettingsActivity() * @see #supportsStylusHandwriting() */ @@ -886,7 +886,7 @@ public final class InputMethodInfo implements Parcelable { * the IME language settings activity.</p> * <p>e.g.<pre><code>startActivity(createImeLanguageSettingsActivityIntent());</code></pre></p> * - * @attr ref R.styleable#InputMethod_languageSettingsActivity + * @attr ref android.R.styleable#InputMethod_languageSettingsActivity */ @FlaggedApi(android.view.inputmethod.Flags.FLAG_IME_SWITCHER_REVAMP) @Nullable diff --git a/core/java/android/view/inputmethod/TEST_MAPPING b/core/java/android/view/inputmethod/TEST_MAPPING index ad59463ea1f1..989b686d6281 100644 --- a/core/java/android/view/inputmethod/TEST_MAPPING +++ b/core/java/android/view/inputmethod/TEST_MAPPING @@ -1,21 +1,7 @@ { "presubmit": [ { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.inline" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.AppModeFull" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsAutoFillServiceTestCases_cts_inline_ExcludeAppModeFull" } ] } diff --git a/core/java/android/view/textclassifier/TEST_MAPPING b/core/java/android/view/textclassifier/TEST_MAPPING index 2f9e737dc213..bc7f3b0e2dc1 100644 --- a/core/java/android/view/textclassifier/TEST_MAPPING +++ b/core/java/android/view/textclassifier/TEST_MAPPING @@ -1,31 +1,13 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.view.textclassifier" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksCoreTests_textclassifier" }, { - "name": "CtsTextClassifierTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTextClassifierTestCases" }, { - "name": "TextClassifierServiceTest", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TextClassifierServiceTest" } ] } diff --git a/core/java/android/webkit/TEST_MAPPING b/core/java/android/webkit/TEST_MAPPING index 07f438329e43..38580595dc2d 100644 --- a/core/java/android/webkit/TEST_MAPPING +++ b/core/java/android/webkit/TEST_MAPPING @@ -1,28 +1,13 @@ { "presubmit": [ { - "name": "CtsWebkitTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsWebkitTestCases" }, { - "name": "CtsSdkSandboxWebkitTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsSdkSandboxWebkitTestCases" }, { - "name": "CtsHostsideWebViewTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsHostsideWebViewTests" }, { "name": "GtsWebViewTestCases", diff --git a/core/java/android/webkit/WebViewZygote.java b/core/java/android/webkit/WebViewZygote.java index c7900e4f0510..668cd0152846 100644 --- a/core/java/android/webkit/WebViewZygote.java +++ b/core/java/android/webkit/WebViewZygote.java @@ -22,6 +22,7 @@ import android.content.pm.PackageInfo; import android.os.Build; import android.os.ChildZygoteProcess; import android.os.Process; +import android.os.UserHandle; import android.os.ZygoteProcess; import android.text.TextUtils; import android.util.Log; @@ -141,12 +142,14 @@ public class WebViewZygote { String abi = sPackage.applicationInfo.primaryCpuAbi; int runtimeFlags = Zygote.getMemorySafetyRuntimeFlagsForSecondaryZygote( sPackage.applicationInfo, null); + final int[] sharedAppGid = { + UserHandle.getSharedAppGid(UserHandle.getAppId(sPackage.applicationInfo.uid)) }; sZygote = Process.ZYGOTE_PROCESS.startChildZygote( "com.android.internal.os.WebViewZygoteInit", "webview_zygote", Process.WEBVIEW_ZYGOTE_UID, Process.WEBVIEW_ZYGOTE_UID, - null, // gids + sharedAppGid, // Access to shared app GID for ART profiles runtimeFlags, "webview_zygote", // seInfo abi, // abi diff --git a/core/java/android/widget/ListView.java b/core/java/android/widget/ListView.java index 510a92d1b2ca..3f611c7efbdd 100644 --- a/core/java/android/widget/ListView.java +++ b/core/java/android/widget/ListView.java @@ -3636,7 +3636,7 @@ public class ListView extends AbsListView { * Returns the drawable that will be drawn between each item in the list. * * @return the current drawable drawn between list elements - * @attr ref R.styleable#ListView_divider + * @attr ref android.R.styleable#ListView_divider */ @InspectableProperty @Nullable @@ -3651,7 +3651,7 @@ public class ListView extends AbsListView { * height, you should also call {@link #setDividerHeight(int)}. * * @param divider the drawable to use - * @attr ref R.styleable#ListView_divider + * @attr ref android.R.styleable#ListView_divider */ public void setDivider(@Nullable Drawable divider) { if (divider != null) { diff --git a/core/java/android/widget/TEST_MAPPING b/core/java/android/widget/TEST_MAPPING index bc71bee33d06..624fa864aea6 100644 --- a/core/java/android/widget/TEST_MAPPING +++ b/core/java/android/widget/TEST_MAPPING @@ -10,52 +10,17 @@ "file_patterns": ["Toast\\.java"] }, { - "name": "CtsWindowManagerDeviceWindow", - "options": [ - { - "include-filter": "android.server.wm.window.ToastWindowTest" - } - ], + "name": "CtsWindowManagerDeviceWindow_window_toastwindowtest", "file_patterns": ["Toast\\.java"] }, { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.dropdown.LoginActivityTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.AppModeFull" - } - ] + "name": "CtsAutoFillServiceTestCases_dropdown_loginactivitytest" }, { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.dropdown.CheckoutActivityTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.AppModeFull" - } - ] + "name": "CtsAutoFillServiceTestCases_dropdown_checkoutactivitytest" }, { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsTextTestCases_text" } ] } diff --git a/core/java/android/widget/TimePickerSpinnerDelegate.java b/core/java/android/widget/TimePickerSpinnerDelegate.java index 1a660be64c99..3b25109fa845 100644 --- a/core/java/android/widget/TimePickerSpinnerDelegate.java +++ b/core/java/android/widget/TimePickerSpinnerDelegate.java @@ -477,7 +477,7 @@ class TimePickerSpinnerDelegate extends TimePicker.AbstractTimePickerDelegate { } else if (mMinuteSpinnerInput.hasFocus()) { inputMethodManager.hideSoftInputFromView(mMinuteSpinnerInput, 0); mMinuteSpinnerInput.clearFocus(); - } else if (mAmPmSpinnerInput.hasFocus()) { + } else if (mAmPmSpinnerInput != null && mAmPmSpinnerInput.hasFocus()) { inputMethodManager.hideSoftInputFromView(mAmPmSpinnerInput, 0); mAmPmSpinnerInput.clearFocus(); } diff --git a/core/java/android/widget/inline/TEST_MAPPING b/core/java/android/widget/inline/TEST_MAPPING index 82c6f61c3486..eb412f110def 100644 --- a/core/java/android/widget/inline/TEST_MAPPING +++ b/core/java/android/widget/inline/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit-large": [ { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-filter": "android.autofillservice.cts.inline" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsAutoFillServiceTestCases_cts_inline" } ] } diff --git a/core/java/android/window/OWNERS b/core/java/android/window/OWNERS index 2c61df96eb03..77c99b98cf4a 100644 --- a/core/java/android/window/OWNERS +++ b/core/java/android/window/OWNERS @@ -1,3 +1,5 @@ set noparent include /services/core/java/com/android/server/wm/OWNERS + +per-file DesktopModeFlags.java = file:/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS diff --git a/core/java/android/window/SnapshotDrawerUtils.java b/core/java/android/window/SnapshotDrawerUtils.java index 4c8bad6d0aff..5dc687561011 100644 --- a/core/java/android/window/SnapshotDrawerUtils.java +++ b/core/java/android/window/SnapshotDrawerUtils.java @@ -152,9 +152,13 @@ public class SnapshotDrawerUtils { @VisibleForTesting public void setFrames(Rect frame, Rect systemBarInsets) { mFrame.set(frame); - mSystemBarInsets.set(systemBarInsets); - mSizeMismatch = (mFrame.width() != mSnapshotW || mFrame.height() != mSnapshotH); - mSystemBarBackgroundPainter.setInsets(systemBarInsets); + final Rect letterboxInsets = mSnapshot.getLetterboxInsets(); + mSizeMismatch = (mFrame.width() != mSnapshotW || mFrame.height() != mSnapshotH) + || letterboxInsets.left != 0 || letterboxInsets.top != 0; + if (!Flags.drawSnapshotAspectRatioMatch() && systemBarInsets != null) { + mSystemBarInsets.set(systemBarInsets); + mSystemBarBackgroundPainter.setInsets(systemBarInsets); + } } private void drawSnapshot(boolean releaseAfterDraw) { @@ -396,9 +400,12 @@ public class SnapshotDrawerUtils { final ActivityManager.RunningTaskInfo runningTaskInfo = info.taskInfo; final ActivityManager.TaskDescription taskDescription = getOrCreateTaskDescription(runningTaskInfo); - drawSurface.initiateSystemBarPainter(lp.flags, lp.privateFlags, - attrs.insetsFlags.appearance, taskDescription, info.requestedVisibleTypes); - final Rect systemBarInsets = getSystemBarInsets(windowBounds, topWindowInsetsState); + Rect systemBarInsets = null; + if (!Flags.drawSnapshotAspectRatioMatch()) { + drawSurface.initiateSystemBarPainter(lp.flags, lp.privateFlags, + attrs.insetsFlags.appearance, taskDescription, info.requestedVisibleTypes); + systemBarInsets = getSystemBarInsets(windowBounds, topWindowInsetsState); + } drawSurface.setFrames(windowBounds, systemBarInsets); drawSurface.drawSnapshot(releaseAfterDraw); } diff --git a/core/java/android/window/TransitionInfo.java b/core/java/android/window/TransitionInfo.java index 8bd39fbe3a52..939ba29b71ad 100644 --- a/core/java/android/window/TransitionInfo.java +++ b/core/java/android/window/TransitionInfo.java @@ -205,7 +205,7 @@ public final class TransitionInfo implements Parcelable { FLAG_SYNC, FLAG_CONFIG_AT_END, FLAG_FIRST_CUSTOM - }) + }, flag = true) public @interface ChangeFlags {} private final @TransitionType int mType; diff --git a/core/java/android/window/flags/windowing_frontend.aconfig b/core/java/android/window/flags/windowing_frontend.aconfig index b71468247e37..985dc102b31b 100644 --- a/core/java/android/window/flags/windowing_frontend.aconfig +++ b/core/java/android/window/flags/windowing_frontend.aconfig @@ -192,4 +192,15 @@ flag { metadata { purpose: PURPOSE_BUGFIX } -}
\ No newline at end of file +} + +flag { + name: "ensure_wallpaper_in_transitions" + namespace: "windowing_frontend" + description: "Ensure that wallpaper window tokens are always present/available for collection in transitions" + bug: "347593088" + metadata { + purpose: PURPOSE_BUGFIX + } +} + diff --git a/core/java/android/window/flags/windowing_sdk.aconfig b/core/java/android/window/flags/windowing_sdk.aconfig index 0a4762d91610..552cb7a1b978 100644 --- a/core/java/android/window/flags/windowing_sdk.aconfig +++ b/core/java/android/window/flags/windowing_sdk.aconfig @@ -191,3 +191,14 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + namespace: "windowing_sdk" + name: "fix_no_container_update_without_resize" + description: "Fix the containers not being updated when the Task is brought to front and has the same configuration" + bug: "344721335" + is_fixed_read_only: true + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/core/java/com/android/internal/app/ResolverActivity.java b/core/java/com/android/internal/app/ResolverActivity.java index 920981e2b8fe..a1945352ae09 100644 --- a/core/java/com/android/internal/app/ResolverActivity.java +++ b/core/java/com/android/internal/app/ResolverActivity.java @@ -1209,9 +1209,19 @@ public class ResolverActivity extends Activity implements if (!isChangingConfigurations() && mPickOptionRequest != null) { mPickOptionRequest.cancel(); } - if (mMultiProfilePagerAdapter != null - && mMultiProfilePagerAdapter.getActiveListAdapter() != null) { - mMultiProfilePagerAdapter.getActiveListAdapter().onDestroy(); + if (mMultiProfilePagerAdapter != null) { + ResolverListAdapter activeAdapter = + mMultiProfilePagerAdapter.getActiveListAdapter(); + if (activeAdapter != null) { + activeAdapter.onDestroy(); + } + if (android.service.chooser.Flags.fixResolverMemoryLeak()) { + ResolverListAdapter inactiveAdapter = + mMultiProfilePagerAdapter.getInactiveListAdapter(); + if (inactiveAdapter != null) { + inactiveAdapter.onDestroy(); + } + } } } diff --git a/core/java/com/android/internal/app/TEST_MAPPING b/core/java/com/android/internal/app/TEST_MAPPING index 08e1d5751529..b7930bc2d3f4 100644 --- a/core/java/com/android/internal/app/TEST_MAPPING +++ b/core/java/com/android/internal/app/TEST_MAPPING @@ -5,19 +5,7 @@ "file_patterns": ["(/|^)SuspendedAppActivity\\.java"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.app." - }, - // Exclude currently failing tests from presubmit - { - "exclude-filter": "com.android.internal.app.IntentForwarderActivityTest" - }, - { - "exclude-filter": "com.android.internal.app.WindowDecorActionBarTest" - } - ] + "name": "FrameworksCoreTests_internal_app" } ] } diff --git a/core/java/com/android/internal/content/om/TEST_MAPPING b/core/java/com/android/internal/content/om/TEST_MAPPING index ab3abb1c935a..c27c3251e100 100644 --- a/core/java/com/android/internal/content/om/TEST_MAPPING +++ b/core/java/com/android/internal/content/om/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.content." - } - ] + "name": "FrameworksCoreTests_internal_content" }, { "name": "SelfTargetingOverlayDeviceTests" diff --git a/core/java/com/android/internal/infra/TEST_MAPPING b/core/java/com/android/internal/infra/TEST_MAPPING index c09181f2f496..092aa20ba730 100644 --- a/core/java/com/android/internal/infra/TEST_MAPPING +++ b/core/java/com/android/internal/infra/TEST_MAPPING @@ -1,31 +1,13 @@ { "presubmit": [ { - "name": "CtsRoleTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsRoleTestCases" }, { - "name": "CtsPermissionTestCases", - "options": [ - { - "include-filter": "android.permission.cts.PermissionControllerTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsPermissionTestCases_Platform" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.infra." - } - ] + "name": "FrameworksCoreTests_internal_infra" } ] } diff --git a/core/java/com/android/internal/jank/TEST_MAPPING b/core/java/com/android/internal/jank/TEST_MAPPING index 4e00ff19e9d9..e7f3dc38e44b 100644 --- a/core/java/com/android/internal/jank/TEST_MAPPING +++ b/core/java/com/android/internal/jank/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.jank" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ], + "name": "FrameworksCoreTests_internal_jank", "file_patterns": [ "core/java/com/android/internal/jank/.*", "core/tests/coretests/src/com/android/internal/jank/.*" diff --git a/core/java/com/android/internal/os/LongArrayMultiStateCounter.java b/core/java/com/android/internal/os/LongArrayMultiStateCounter.java index 07fa679a428a..1f9a39d4ad97 100644 --- a/core/java/com/android/internal/os/LongArrayMultiStateCounter.java +++ b/core/java/com/android/internal/os/LongArrayMultiStateCounter.java @@ -18,6 +18,10 @@ package com.android.internal.os; import android.os.Parcel; import android.os.Parcelable; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodReplace; import com.android.internal.util.Preconditions; @@ -55,18 +59,15 @@ import java.util.concurrent.atomic.AtomicReference; * * @hide */ -@android.ravenwood.annotation.RavenwoodKeepWholeClass -@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.LongArrayMultiStateCounter_host") +@RavenwoodKeepWholeClass +@RavenwoodRedirectionClass("LongArrayMultiStateCounter_ravenwood") public final class LongArrayMultiStateCounter implements Parcelable { /** * Container for a native equivalent of a long[]. */ - @android.ravenwood.annotation.RavenwoodKeepWholeClass - @android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution" - + ".LongArrayMultiStateCounter_host$LongArrayContainer_host") + @RavenwoodKeepWholeClass + @RavenwoodRedirectionClass("LongArrayMultiStateCounter_ravenwood$LongArrayContainer") public static class LongArrayContainer { private static NativeAllocationRegistry sRegistry; @@ -81,7 +82,7 @@ public final class LongArrayMultiStateCounter implements Parcelable { registerNativeAllocation(); } - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodReplace private void registerNativeAllocation() { if (sRegistry == null) { synchronized (LongArrayMultiStateCounter.class) { @@ -140,18 +141,23 @@ public final class LongArrayMultiStateCounter implements Parcelable { } @CriticalNative + @RavenwoodRedirect private static native long native_init(int length); @CriticalNative + @RavenwoodRedirect private static native long native_getReleaseFunc(); @FastNative + @RavenwoodRedirect private static native void native_setValues(long nativeObject, long[] array); @FastNative + @RavenwoodRedirect private static native void native_getValues(long nativeObject, long[] array); @FastNative + @RavenwoodRedirect private static native boolean native_combineValues(long nativeObject, long[] array, int[] indexMap); } @@ -175,7 +181,7 @@ public final class LongArrayMultiStateCounter implements Parcelable { registerNativeAllocation(); } - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodReplace private void registerNativeAllocation() { if (sRegistry == null) { synchronized (LongArrayMultiStateCounter.class) { @@ -374,57 +380,73 @@ public final class LongArrayMultiStateCounter implements Parcelable { @CriticalNative + @RavenwoodRedirect private static native long native_init(int stateCount, int arrayLength); @CriticalNative + @RavenwoodRedirect private static native long native_getReleaseFunc(); @CriticalNative + @RavenwoodRedirect private static native void native_setEnabled(long nativeObject, boolean enabled, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_setState(long nativeObject, int state, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_copyStatesFrom(long nativeObjectTarget, long nativeObjectSource); @CriticalNative + @RavenwoodRedirect private static native void native_setValues(long nativeObject, int state, long longArrayContainerNativeObject); @CriticalNative + @RavenwoodRedirect private static native void native_updateValues(long nativeObject, long longArrayContainerNativeObject, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_incrementValues(long nativeObject, long longArrayContainerNativeObject, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_addCounts(long nativeObject, long longArrayContainerNativeObject); @CriticalNative + @RavenwoodRedirect private static native void native_reset(long nativeObject); @CriticalNative + @RavenwoodRedirect private static native void native_getCounts(long nativeObject, long longArrayContainerNativeObject, int state); @FastNative + @RavenwoodRedirect private static native String native_toString(long nativeObject); @FastNative + @RavenwoodRedirect private static native void native_writeToParcel(long nativeObject, Parcel dest, int flags); @FastNative + @RavenwoodRedirect private static native long native_initFromParcel(Parcel parcel); @CriticalNative + @RavenwoodRedirect private static native int native_getStateCount(long nativeObject); @CriticalNative + @RavenwoodRedirect private static native int native_getArrayLength(long nativeObject); } diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/LongArrayMultiStateCounter_host.java b/core/java/com/android/internal/os/LongArrayMultiStateCounter_ravenwood.java index 0f65544f8b66..e5caa6a54390 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/LongArrayMultiStateCounter_host.java +++ b/core/java/com/android/internal/os/LongArrayMultiStateCounter_ravenwood.java @@ -14,10 +14,11 @@ * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package com.android.internal.os; import android.os.BadParcelableException; import android.os.Parcel; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; import java.util.Arrays; import java.util.HashMap; @@ -25,10 +26,55 @@ import java.util.HashMap; /** * Native implementation substitutions for the LongArrayMultiStateCounter class. */ -public class LongArrayMultiStateCounter_host { +@RavenwoodKeepWholeClass +class LongArrayMultiStateCounter_ravenwood { + + static class LongArrayContainer { + private static final HashMap<Long, long[]> sInstances = new HashMap<>(); + private static long sNextId = 1; + + public static long native_init(int arrayLength) { + long[] array = new long[arrayLength]; + long instanceId = sNextId++; + sInstances.put(instanceId, array); + return instanceId; + } + + static long[] getInstance(long instanceId) { + return sInstances.get(instanceId); + } + + public static void native_setValues(long instanceId, long[] values) { + System.arraycopy(values, 0, getInstance(instanceId), 0, values.length); + } + + public static void native_getValues(long instanceId, long[] values) { + System.arraycopy(getInstance(instanceId), 0, values, 0, values.length); + } + + public static boolean native_combineValues(long instanceId, long[] array, int[] indexMap) { + long[] values = getInstance(instanceId); + + boolean nonZero = false; + Arrays.fill(array, 0); + + for (int i = 0; i < values.length; i++) { + int index = indexMap[i]; + if (index < 0 || index >= array.length) { + throw new IndexOutOfBoundsException("Index " + index + " is out of bounds: [0, " + + (array.length - 1) + "]"); + } + if (values[i] != 0) { + array[index] += values[i]; + nonZero = true; + } + } + return nonZero; + } + } /** - * A reimplementation of {@link com.android.internal.os.LongArrayMultiStateCounter}, only in + * A reimplementation of {@link LongArrayMultiStateCounter}, only in * Java instead of native. The majority of the code (in C++) can be found in * /frameworks/native/libs/battery/MultiStateCounter.h */ @@ -257,50 +303,6 @@ public class LongArrayMultiStateCounter_host { } } - public static class LongArrayContainer_host { - private static final HashMap<Long, long[]> sInstances = new HashMap<>(); - private static long sNextId = 1; - - public static long native_init(int arrayLength) { - long[] array = new long[arrayLength]; - long instanceId = sNextId++; - sInstances.put(instanceId, array); - return instanceId; - } - - static long[] getInstance(long instanceId) { - return sInstances.get(instanceId); - } - - public static void native_setValues(long instanceId, long[] values) { - System.arraycopy(values, 0, getInstance(instanceId), 0, values.length); - } - - public static void native_getValues(long instanceId, long[] values) { - System.arraycopy(getInstance(instanceId), 0, values, 0, values.length); - } - - public static boolean native_combineValues(long instanceId, long[] array, int[] indexMap) { - long[] values = getInstance(instanceId); - - boolean nonZero = false; - Arrays.fill(array, 0); - - for (int i = 0; i < values.length; i++) { - int index = indexMap[i]; - if (index < 0 || index >= array.length) { - throw new IndexOutOfBoundsException("Index " + index + " is out of bounds: [0, " - + (array.length - 1) + "]"); - } - if (values[i] != 0) { - array[index] += values[i]; - nonZero = true; - } - } - return nonZero; - } - } - private static final HashMap<Long, LongArrayMultiStateCounterRavenwood> sInstances = new HashMap<>(); private static long sNextId = 1; @@ -332,13 +334,13 @@ public class LongArrayMultiStateCounter_host { public static void native_setValues(long instanceId, int state, long containerInstanceId) { getInstance(instanceId).setValue(state, - LongArrayContainer_host.getInstance(containerInstanceId)); + LongArrayContainer.getInstance(containerInstanceId)); } public static void native_updateValues(long instanceId, long containerInstanceId, long timestampMs) { getInstance(instanceId).updateValue( - LongArrayContainer_host.getInstance(containerInstanceId), timestampMs); + LongArrayContainer.getInstance(containerInstanceId), timestampMs); } public static void native_setState(long instanceId, int state, long timestampMs) { @@ -352,15 +354,15 @@ public class LongArrayMultiStateCounter_host { public static void native_incrementValues(long instanceId, long containerInstanceId, long timestampMs) { getInstance(instanceId).incrementValues( - LongArrayContainer_host.getInstance(containerInstanceId), timestampMs); + LongArrayContainer.getInstance(containerInstanceId), timestampMs); } public static void native_addCounts(long instanceId, long containerInstanceId) { - getInstance(instanceId).addCounts(LongArrayContainer_host.getInstance(containerInstanceId)); + getInstance(instanceId).addCounts(LongArrayContainer.getInstance(containerInstanceId)); } public static void native_getCounts(long instanceId, long containerInstanceId, int state) { - getInstance(instanceId).getValues(LongArrayContainer_host.getInstance(containerInstanceId), + getInstance(instanceId).getValues(LongArrayContainer.getInstance(containerInstanceId), state); } diff --git a/core/java/com/android/internal/os/LongMultiStateCounter.java b/core/java/com/android/internal/os/LongMultiStateCounter.java index e5662c7d5145..ee855d58c874 100644 --- a/core/java/com/android/internal/os/LongMultiStateCounter.java +++ b/core/java/com/android/internal/os/LongMultiStateCounter.java @@ -18,6 +18,10 @@ package com.android.internal.os; import android.os.Parcel; import android.os.Parcelable; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodReplace; import com.android.internal.util.Preconditions; @@ -55,9 +59,8 @@ import libcore.util.NativeAllocationRegistry; * * @hide */ -@android.ravenwood.annotation.RavenwoodKeepWholeClass -@android.ravenwood.annotation.RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.LongMultiStateCounter_host") +@RavenwoodKeepWholeClass +@RavenwoodRedirectionClass("LongMultiStateCounter_ravenwood") public final class LongMultiStateCounter implements Parcelable { private static NativeAllocationRegistry sRegistry; @@ -82,7 +85,7 @@ public final class LongMultiStateCounter implements Parcelable { mStateCount = native_getStateCount(mNativeObject); } - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodReplace private void registerNativeAllocation() { if (sRegistry == null) { synchronized (LongMultiStateCounter.class) { @@ -210,43 +213,56 @@ public final class LongMultiStateCounter implements Parcelable { @CriticalNative + @RavenwoodRedirect private static native long native_init(int stateCount); @CriticalNative + @RavenwoodRedirect private static native long native_getReleaseFunc(); @CriticalNative + @RavenwoodRedirect private static native void native_setEnabled(long nativeObject, boolean enabled, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_setState(long nativeObject, int state, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native long native_updateValue(long nativeObject, long value, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_incrementValue(long nativeObject, long increment, long timestampMs); @CriticalNative + @RavenwoodRedirect private static native void native_addCount(long nativeObject, long count); @CriticalNative + @RavenwoodRedirect private static native void native_reset(long nativeObject); @CriticalNative + @RavenwoodRedirect private static native long native_getCount(long nativeObject, int state); @FastNative + @RavenwoodRedirect private static native String native_toString(long nativeObject); @FastNative + @RavenwoodRedirect private static native void native_writeToParcel(long nativeObject, Parcel dest, int flags); @FastNative + @RavenwoodRedirect private static native long native_initFromParcel(Parcel parcel); @CriticalNative + @RavenwoodRedirect private static native int native_getStateCount(long nativeObject); } diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/LongMultiStateCounter_host.java b/core/java/com/android/internal/os/LongMultiStateCounter_ravenwood.java index 9486651ce48d..42db37f1f82f 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/LongMultiStateCounter_host.java +++ b/core/java/com/android/internal/os/LongMultiStateCounter_ravenwood.java @@ -14,17 +14,19 @@ * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package com.android.internal.os; import android.os.BadParcelableException; import android.os.Parcel; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; import java.util.HashMap; /** * Native implementation substitutions for the LongMultiStateCounter class. */ -public class LongMultiStateCounter_host { +@RavenwoodKeepWholeClass +class LongMultiStateCounter_ravenwood { /** * A reimplementation of {@link com.android.internal.os.LongMultiStateCounter}, only in diff --git a/core/java/com/android/internal/os/TEST_MAPPING b/core/java/com/android/internal/os/TEST_MAPPING index d552e0b8c643..83773e251a9e 100644 --- a/core/java/com/android/internal/os/TEST_MAPPING +++ b/core/java/com/android/internal/os/TEST_MAPPING @@ -6,11 +6,7 @@ "Kernel[^/]*\\.java", "[^/]*Power[^/]*\\.java" ], - "name": "FrameworksCoreTests", - "options": [ - { "include-filter": "com.android.internal.os.BatteryStatsTests" }, - { "exclude-annotation": "com.android.internal.os.SkipPresubmit" } - ] + "name": "FrameworksCoreTests_battery_stats" }, { "file_patterns": [ @@ -24,11 +20,7 @@ "file_patterns": [ "BinderDeathDispatcher\\.java" ], - "name": "FrameworksCoreTests", - "options": [ - { "include-filter": "com.android.internal.os.BinderDeathDispatcherTest" }, - { "exclude-annotation": "com.android.internal.os.SkipPresubmit" } - ] + "name": "FrameworksCoreTests_internal_os_binder" }, { "file_patterns": [ @@ -36,10 +28,7 @@ "Kernel[^/]*\\.java", "[^/]*Power[^/]*\\.java" ], - "name": "FrameworksServicesTests", - "options": [ - { "include-filter": "com.android.server.am.BatteryStatsServiceTest" } - ] + "name": "FrameworksServicesTests_battery_stats" }, { "file_patterns": [ @@ -50,25 +39,7 @@ "name": "PowerStatsTests" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.os.KernelCpuUidFreqTimeReaderTest" - }, - { - "include-filter": "com.android.internal.os.KernelCpuUidActiveTimeReaderTest" - }, - { - "include-filter": "com.android.internal.os.KernelCpuUidClusterTimeReaderTest" - }, - { - "include-filter": "com.android.internal.os.KernelSingleUidTimeReaderTest" - }, - { - "include-filter": "com.android.internal.os.KernelCpuUidBpfMapReaderTest" - } - - ], + "name": "FrameworksCoreTests_internal_os_kernel", "file_patterns": [ "KernelCpuUidTimeReader\\.java", "KernelCpuUidBpfMapReader\\.java", @@ -78,12 +49,7 @@ ], "postsubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.server.power.stats.BstatsCpuTimesValidationTest" - } - ], + "name": "PowerStatsTests_stats_bstatscputimesvalidationtest", "file_patterns": [ "Kernel[^/]*\\.java" ] diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java index b9cc457fecc9..e402ddfc637a 100644 --- a/core/java/com/android/internal/os/ZygoteInit.java +++ b/core/java/com/android/internal/os/ZygoteInit.java @@ -249,6 +249,10 @@ public class ZygoteInit { return isExperimentEnabled("profilesystemserver"); } + private static boolean shouldProfileBootClasspath() { + return isExperimentEnabled("profilebootclasspath"); + } + /** * Performs Zygote process initialization. Loads and initializes commonly used classes. * @@ -352,7 +356,7 @@ public class ZygoteInit { // If we are profiling the boot image, reset the Jit counters after preloading the // classes. We want to preload for performance, and we can use method counters to // infer what clases are used after calling resetJitCounters, for profile purposes. - if (isExperimentEnabled("profilebootclasspath")) { + if (shouldProfileBootClasspath()) { Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "ResetJitCounters"); VMRuntime.resetJitCounters(); Trace.traceEnd(Trace.TRACE_TAG_DALVIK); @@ -460,12 +464,28 @@ public class ZygoteInit { ? String.join(":", systemServerClasspath, standaloneSystemServerJars) : systemServerClasspath; prepareSystemServerProfile(systemServerPaths); + try { + SystemProperties.set("debug.tracing.profile_system_server", "1"); + } catch (RuntimeException e) { + Slog.e(TAG, "Failed to set debug.tracing.profile_system_server", e); + } } catch (Exception e) { Log.wtf(TAG, "Failed to set up system server profile", e); } } } + // Zygote can't set system properties due to permission denied. We need to be in System + // Server to set system properties, so we do it here instead of the more natural place in + // preloadClasses. + if (shouldProfileBootClasspath()) { + try { + SystemProperties.set("debug.tracing.profile_boot_classpath", "1"); + } catch (RuntimeException e) { + Slog.e(TAG, "Failed to set debug.tracing.profile_boot_classpath", e); + } + } + if (parsedArgs.mInvokeWith != null) { String[] args = parsedArgs.mRemainingArgs; // If we have a non-null system server class path, we'll have to duplicate the @@ -631,21 +651,20 @@ public class ZygoteInit { */ private static Runnable forkSystemServer(String abiList, String socketName, ZygoteServer zygoteServer) { - long capabilities = posixCapabilitiesAsBits( - OsConstants.CAP_IPC_LOCK, - OsConstants.CAP_KILL, - OsConstants.CAP_NET_ADMIN, - OsConstants.CAP_NET_BIND_SERVICE, - OsConstants.CAP_NET_BROADCAST, - OsConstants.CAP_NET_RAW, - OsConstants.CAP_SYS_MODULE, - OsConstants.CAP_SYS_NICE, - OsConstants.CAP_SYS_PTRACE, - OsConstants.CAP_SYS_TIME, - OsConstants.CAP_SYS_TTY_CONFIG, - OsConstants.CAP_WAKE_ALARM, - OsConstants.CAP_BLOCK_SUSPEND - ); + long capabilities = + (1L << OsConstants.CAP_IPC_LOCK) | + (1L << OsConstants.CAP_KILL) | + (1L << OsConstants.CAP_NET_ADMIN) | + (1L << OsConstants.CAP_NET_BIND_SERVICE) | + (1L << OsConstants.CAP_NET_BROADCAST) | + (1L << OsConstants.CAP_NET_RAW) | + (1L << OsConstants.CAP_SYS_MODULE) | + (1L << OsConstants.CAP_SYS_NICE) | + (1L << OsConstants.CAP_SYS_PTRACE) | + (1L << OsConstants.CAP_SYS_TIME) | + (1L << OsConstants.CAP_SYS_TTY_CONFIG) | + (1L << OsConstants.CAP_WAKE_ALARM) | + (1L << OsConstants.CAP_BLOCK_SUSPEND); /* Containers run without some capabilities, so drop any caps that are not available. */ StructCapUserHeader header = new StructCapUserHeader( OsConstants._LINUX_CAPABILITY_VERSION_3, 0); @@ -742,20 +761,6 @@ public class ZygoteInit { } /** - * Gets the bit array representation of the provided list of POSIX capabilities. - */ - private static long posixCapabilitiesAsBits(int... capabilities) { - long result = 0; - for (int capability : capabilities) { - if ((capability < 0) || (capability > OsConstants.CAP_LAST_CAP)) { - throw new IllegalArgumentException(String.valueOf(capability)); - } - result |= (1L << capability); - } - return result; - } - - /** * This is the entry point for a Zygote process. It creates the Zygote server, loads resources, * and handles other tasks related to preparing the process for forking into applications. * diff --git a/core/java/com/android/internal/os/anr/OWNERS b/core/java/com/android/internal/os/anr/OWNERS index 9816752db891..1ad642f78cde 100644 --- a/core/java/com/android/internal/os/anr/OWNERS +++ b/core/java/com/android/internal/os/anr/OWNERS @@ -1,3 +1,2 @@ benmiles@google.com -gaillard@google.com mohamadmahmoud@google.com
\ No newline at end of file diff --git a/core/java/com/android/internal/os/flags.aconfig b/core/java/com/android/internal/os/flags.aconfig index c8d6810e274a..809c1a114ad3 100644 --- a/core/java/com/android/internal/os/flags.aconfig +++ b/core/java/com/android/internal/os/flags.aconfig @@ -2,6 +2,48 @@ package: "com.android.internal.os" container: "system" flag { + namespace: "ravenwood" + name: "ravenwood_flag_rw_1" + description: "Ravenwood test RW flag 1" + bug: "311370221" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { + namespace: "ravenwood" + name: "ravenwood_flag_rw_2" + description: "Ravenwood test RW flag 2" + bug: "311370221" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { + namespace: "ravenwood" + name: "ravenwood_flag_ro_1" + description: "Ravenwood test RO flag 1" + is_fixed_read_only: true + bug: "311370221" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { + namespace: "ravenwood" + name: "ravenwood_flag_ro_2" + description: "Ravenwood test RO flag 2" + is_fixed_read_only: true + bug: "311370221" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { name: "enable_apache_http_legacy_preload" namespace: "system_performance" description: "Enables zygote preload of non-BCP org.apache.http.legacy.jar library." diff --git a/core/java/com/android/internal/policy/PhoneWindow.java b/core/java/com/android/internal/policy/PhoneWindow.java index 42be4fc8623d..ec004d07c781 100644 --- a/core/java/com/android/internal/policy/PhoneWindow.java +++ b/core/java/com/android/internal/policy/PhoneWindow.java @@ -2501,6 +2501,9 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { if (mEdgeToEdgeEnforced) { getAttributes().privateFlags |= PRIVATE_FLAG_EDGE_TO_EDGE_ENFORCED; mDecorFitsSystemWindows = false; + mStatusBarColor = Color.TRANSPARENT; + mNavigationBarDividerColor = Color.TRANSPARENT; + // mNavigationBarColor is not reset here because it might be used to draw the scrim. } if (CompatChanges.isChangeEnabled(OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE) && !a.getBoolean(R.styleable.Window_windowOptOutEdgeToEdgeEnforcement, diff --git a/core/java/com/android/internal/power/TEST_MAPPING b/core/java/com/android/internal/power/TEST_MAPPING index 1946f5cc99eb..3f184b22a299 100644 --- a/core/java/com/android/internal/power/TEST_MAPPING +++ b/core/java/com/android/internal/power/TEST_MAPPING @@ -1,11 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { "include-filter": "com.android.internal.os.BatteryStatsTests" }, - { "exclude-annotation": "com.android.internal.os.SkipPresubmit" } - ] + "name": "FrameworksCoreTests_battery_stats" }, { "name": "PowerStatsTests" diff --git a/core/java/com/android/internal/ravenwood/RavenwoodEnvironment.java b/core/java/com/android/internal/ravenwood/RavenwoodEnvironment.java index 8fe1813b7ba0..a69d2e4f4dca 100644 --- a/core/java/com/android/internal/ravenwood/RavenwoodEnvironment.java +++ b/core/java/com/android/internal/ravenwood/RavenwoodEnvironment.java @@ -15,24 +15,23 @@ */ package com.android.internal.ravenwood; -import android.ravenwood.annotation.RavenwoodNativeSubstitutionClass; +import android.ravenwood.annotation.RavenwoodKeepWholeClass; +import android.ravenwood.annotation.RavenwoodRedirect; +import android.ravenwood.annotation.RavenwoodRedirectionClass; +import android.ravenwood.annotation.RavenwoodReplace; /** * Class to interact with the Ravenwood environment. */ -@android.ravenwood.annotation.RavenwoodKeepWholeClass -@RavenwoodNativeSubstitutionClass( - "com.android.platform.test.ravenwood.nativesubstitution.RavenwoodEnvironment_host") +@RavenwoodKeepWholeClass +@RavenwoodRedirectionClass("RavenwoodEnvironment_host") public final class RavenwoodEnvironment { public static final String TAG = "RavenwoodEnvironment"; private static RavenwoodEnvironment sInstance = new RavenwoodEnvironment(); - private static Workaround sWorkaround = new Workaround(); - private RavenwoodEnvironment() { - if (isRunningOnRavenwood()) { - ensureRavenwoodInitializedInternal(); - } + private static RuntimeException notSupportedOnDevice() { + return new UnsupportedOperationException("This method can only be used on Ravenwood"); } /** @@ -43,21 +42,6 @@ public final class RavenwoodEnvironment { } /** - * Initialize the ravenwood environment if it hasn't happened already, if running on Ravenwood. - * - * No-op if called on the device side. - */ - public static void ensureRavenwoodInitialized() { - } - - private static void ensureRavenwoodInitialized$ravenwood() { - getInstance(); // This is enough to initialize the environment. - } - - /** Initialize the ravenwood environment */ - private static native void ensureRavenwoodInitializedInternal(); - - /** * USE IT SPARINGLY! Returns true if it's running on Ravenwood, hostside test environment. * * <p>Using this allows code to behave differently on a real device and on Ravenwood, but @@ -69,7 +53,7 @@ public final class RavenwoodEnvironment { * <p>If someone needs it without having access to the SDK, the following hack would work too. * <code>System.getProperty("java.class.path").contains("ravenwood")</code> */ - @android.ravenwood.annotation.RavenwoodReplace + @RavenwoodReplace public boolean isRunningOnRavenwood() { return false; } @@ -79,28 +63,19 @@ public final class RavenwoodEnvironment { } /** - * See {@link Workaround}. It's only usablke on Ravenwood. + * Get the object back from the address obtained from + * {@link dalvik.system.VMRuntime#addressOf(Object)}. */ - public static Workaround workaround() { - if (getInstance().isRunningOnRavenwood()) { - return sWorkaround; - } - throw new IllegalStateException("Workaround can only be used on Ravenwood"); + @RavenwoodRedirect + public <T> T fromAddress(long address) { + throw notSupportedOnDevice(); } /** - * A set of APIs used to work around missing features on Ravenwood. Ideally, this class should - * be empty, and all its APIs should be able to be implemented properly. + * @return the "ravenwood-runtime" directory. */ - public static class Workaround { - Workaround() { - } - - /** - * @return whether the app's target SDK level is at least Q. - */ - public boolean isTargetSdkAtLeastQ() { - return true; - } + @RavenwoodRedirect + public String getRavenwoodRuntimePath() { + throw notSupportedOnDevice(); } } diff --git a/core/java/com/android/internal/security/TEST_MAPPING b/core/java/com/android/internal/security/TEST_MAPPING index 0af3b03edefc..5bd9d2e4512d 100644 --- a/core/java/com/android/internal/security/TEST_MAPPING +++ b/core/java/com/android/internal/security/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.security." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ] + "name": "FrameworksCoreTests_internal_security" }, { "name": "UpdatableSystemFontTest", diff --git a/core/java/com/android/internal/util/ArrayUtils.java b/core/java/com/android/internal/util/ArrayUtils.java index 8f00f79e7179..11123a9986f9 100644 --- a/core/java/com/android/internal/util/ArrayUtils.java +++ b/core/java/com/android/internal/util/ArrayUtils.java @@ -49,81 +49,41 @@ public class ArrayUtils { private ArrayUtils() { /* cannot be instantiated */ } - @android.ravenwood.annotation.RavenwoodReplace public static byte[] newUnpaddedByteArray(int minLen) { return (byte[])VMRuntime.getRuntime().newUnpaddedArray(byte.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace public static char[] newUnpaddedCharArray(int minLen) { return (char[])VMRuntime.getRuntime().newUnpaddedArray(char.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) public static int[] newUnpaddedIntArray(int minLen) { return (int[])VMRuntime.getRuntime().newUnpaddedArray(int.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace public static boolean[] newUnpaddedBooleanArray(int minLen) { return (boolean[])VMRuntime.getRuntime().newUnpaddedArray(boolean.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace public static long[] newUnpaddedLongArray(int minLen) { return (long[])VMRuntime.getRuntime().newUnpaddedArray(long.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace public static float[] newUnpaddedFloatArray(int minLen) { return (float[])VMRuntime.getRuntime().newUnpaddedArray(float.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace public static Object[] newUnpaddedObjectArray(int minLen) { return (Object[])VMRuntime.getRuntime().newUnpaddedArray(Object.class, minLen); } - @android.ravenwood.annotation.RavenwoodReplace @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) @SuppressWarnings("unchecked") public static <T> T[] newUnpaddedArray(Class<T> clazz, int minLen) { return (T[])VMRuntime.getRuntime().newUnpaddedArray(clazz, minLen); } - public static byte[] newUnpaddedByteArray$ravenwood(int minLen) { - return new byte[minLen]; - } - - public static char[] newUnpaddedCharArray$ravenwood(int minLen) { - return new char[minLen]; - } - - public static int[] newUnpaddedIntArray$ravenwood(int minLen) { - return new int[minLen]; - } - - public static boolean[] newUnpaddedBooleanArray$ravenwood(int minLen) { - return new boolean[minLen]; - } - - public static long[] newUnpaddedLongArray$ravenwood(int minLen) { - return new long[minLen]; - } - - public static float[] newUnpaddedFloatArray$ravenwood(int minLen) { - return new float[minLen]; - } - - public static Object[] newUnpaddedObjectArray$ravenwood(int minLen) { - return new Object[minLen]; - } - - public static <T> T[] newUnpaddedArray$ravenwood(Class<T> clazz, int minLen) { - return (T[]) Array.newInstance(clazz, minLen); - } - /** * Checks if the beginnings of two byte arrays are equal. * @@ -622,6 +582,7 @@ public class ArrayUtils { /** * Adds value to given array if not already present, providing set-like * behavior. + * Adds value to given array. The method allows duplicate values. */ public static boolean[] appendBoolean(@Nullable boolean[] cur, boolean val) { if (cur == null) { diff --git a/core/java/com/android/internal/util/MemInfoReader.java b/core/java/com/android/internal/util/MemInfoReader.java index 0c5c8537e85a..d34bca6315c1 100644 --- a/core/java/com/android/internal/util/MemInfoReader.java +++ b/core/java/com/android/internal/util/MemInfoReader.java @@ -88,6 +88,13 @@ public final class MemInfoReader { } /** + * Amount of RAM that used by shared memory (shmem) and tmpfs + */ + public long getShmemSizeKb() { + return mInfos[Debug.MEMINFO_SHMEM]; + } + + /** * Amount of RAM that the kernel is being used for caches, not counting caches * that are mapped in to processes. */ diff --git a/core/java/com/android/internal/util/TEST_MAPPING b/core/java/com/android/internal/util/TEST_MAPPING index 00a8118c0e4b..a0221f3beff2 100644 --- a/core/java/com/android/internal/util/TEST_MAPPING +++ b/core/java/com/android/internal/util/TEST_MAPPING @@ -5,30 +5,11 @@ "file_patterns": ["ScreenshotHelper"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.util.XmlTest" - }, - { - "include-filter": "android.util.BinaryXmlTest" - } - ], + "name": "FrameworksCoreTests_xml", "file_patterns": ["Xml"] }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.util.LatencyTrackerTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ], + "name": "FrameworksCoreTests_internal_util_latency_tracker", "file_patterns": ["LatencyTracker.java"] } ] diff --git a/core/java/com/android/internal/widget/OWNERS b/core/java/com/android/internal/widget/OWNERS index cf2f202a03ac..2d1c2f032d16 100644 --- a/core/java/com/android/internal/widget/OWNERS +++ b/core/java/com/android/internal/widget/OWNERS @@ -3,7 +3,9 @@ per-file RecyclerView.java = mount@google.com per-file ViewPager.java = mount@google.com # LockSettings related -per-file *LockPattern* = file:/services/core/java/com/android/server/locksettings/OWNERS +per-file LockPatternChecker.java = file:/services/core/java/com/android/server/locksettings/OWNERS +per-file LockPatternUtils.java = file:/services/core/java/com/android/server/locksettings/OWNERS +per-file LockPatternView.java = file:/packages/SystemUI/OWNERS per-file *LockScreen* = file:/services/core/java/com/android/server/locksettings/OWNERS per-file *Lockscreen* = file:/services/core/java/com/android/server/locksettings/OWNERS per-file *LockSettings* = file:/services/core/java/com/android/server/locksettings/OWNERS diff --git a/core/java/com/android/internal/widget/floatingtoolbar/OWNERS b/core/java/com/android/internal/widget/floatingtoolbar/OWNERS index ed9425cc26c9..999ea0e62a0a 100644 --- a/core/java/com/android/internal/widget/floatingtoolbar/OWNERS +++ b/core/java/com/android/internal/widget/floatingtoolbar/OWNERS @@ -1 +1 @@ -include /core/java/android/view/selectiontoolbar/OWNERS +include /core/java/android/permission/OWNERS diff --git a/core/jni/Android.bp b/core/jni/Android.bp index 17c4ee96c68a..f6689d585df1 100644 --- a/core/jni/Android.bp +++ b/core/jni/Android.bp @@ -116,7 +116,6 @@ cc_library_shared_for_libandroid_runtime { ], static_libs: [ - "libnativehelper_lazy", "libziparchive_for_incfs", "libguiflags", ], @@ -288,9 +287,9 @@ cc_library_shared_for_libandroid_runtime { "libasync_safe", "libbinderthreadstateutils", "libdmabufinfo", - "libgif", "libgui_window_info_static", "libkernelconfigs", + "libnativehelper_lazy", "libseccomp_policy", "libgrallocusage", "libscrypt_static", @@ -420,6 +419,7 @@ cc_library_shared_for_libandroid_runtime { "libimage_type_recognition", "libinput", "libjpeg", + "libnativehelper_jvm", "libpiex", "libpng", "libtiff_directory", diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp index ed59327ff8e9..c5df248ec1a9 100644 --- a/core/jni/AndroidRuntime.cpp +++ b/core/jni/AndroidRuntime.cpp @@ -1022,10 +1022,18 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p parseCompilerOption("dalvik.vm.image-dex2oat-filter", dex2oatImageCompilerFilterBuf, "--compiler-filter=", "-Ximage-compiler-option"); - // If there is a dirty-image-objects file, push it. - if (hasFile("/system/etc/dirty-image-objects")) { - addOption("-Ximage-compiler-option"); - addOption("--dirty-image-objects=/system/etc/dirty-image-objects"); + // If there are dirty-image-objects files, push them. + const char* dirty_image_objects_options[] = { + "--dirty-image-objects=/apex/com.android.art/etc/dirty-image-objects", + "--dirty-image-objects=/system/etc/dirty-image-objects", + }; + for (const char* option : dirty_image_objects_options) { + // Get the file path by finding the first '/' and check if + // this file exists. + if (hasFile(strchr(option, '/'))) { + addOption("-Ximage-compiler-option"); + addOption(option); + } } parseCompilerOption("dalvik.vm.image-dex2oat-threads", dex2oatThreadsImageBuf, "-j", diff --git a/core/jni/OWNERS b/core/jni/OWNERS index b2bc19c9b521..af393fdc5ad4 100644 --- a/core/jni/OWNERS +++ b/core/jni/OWNERS @@ -51,6 +51,10 @@ per-file EphemeralStorage* = file:platform/system/libhwbinder:/OWNERS # Sensor per-file android_hardware_SensorManager* = arthuri@google.com, bduddie@google.com, stange@google.com +# Security +per-file android_os_SELinux.cpp = file:/core/java/android/security/OWNERS +per-file android_security_* = file:/core/java/android/security/OWNERS + per-file *Zygote* = file:/ZYGOTE_OWNERS per-file core_jni_helpers.* = file:/ZYGOTE_OWNERS per-file fd_utils.* = file:/ZYGOTE_OWNERS @@ -67,7 +71,6 @@ per-file android_opengl_* = file:/opengl/java/android/opengl/OWNERS per-file android_os_storage_* = file:/core/java/android/os/storage/OWNERS per-file android_os_Trace* = file:/TRACE_OWNERS per-file android_se_* = file:/omapi/java/android/se/OWNERS -per-file android_security_* = file:/core/java/android/security/OWNERS per-file android_view_* = file:/core/java/android/view/OWNERS per-file com_android_internal_net_* = file:/services/core/java/com/android/server/net/OWNERS @@ -113,3 +116,7 @@ per-file android_os_PerformanceHintManager.cpp = file:/ADPF_OWNERS # IF Tools per-file android_tracing_Perfetto* = file:platform/development:/tools/winscope/OWNERS + +# ApplicationSharedMemory +per-file *ApplicationSharedMemory* = file:/PERFORMANCE_OWNERS +per-file *PropertyInvalidatedCache* = file:/PERFORMANCE_OWNERS diff --git a/core/jni/TEST_MAPPING b/core/jni/TEST_MAPPING index ea0b01e16bdf..fa73a4d2d5a9 100644 --- a/core/jni/TEST_MAPPING +++ b/core/jni/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.util.CharsetUtilsTest" - }, - { - "include-filter": "com.android.internal.util.FastDataTest" - } - ], + "name": "FrameworksCoreTests_util_data_charset", "file_patterns": ["CharsetUtils|FastData"] }, { diff --git a/core/jni/android_database_SQLiteConnection.cpp b/core/jni/android_database_SQLiteConnection.cpp index 8f7026859898..46590a947eda 100644 --- a/core/jni/android_database_SQLiteConnection.cpp +++ b/core/jni/android_database_SQLiteConnection.cpp @@ -16,27 +16,22 @@ #define LOG_TAG "SQLiteConnection" -#include <jni.h> -#include <nativehelper/JNIHelp.h> +#include <android-base/mapped_file.h> #include <android_runtime/AndroidRuntime.h> #include <android_runtime/Log.h> - -#include <utils/Log.h> -#include <utils/String8.h> -#include <utils/String16.h> -#include <cutils/ashmem.h> -#include <sys/mman.h> - -#include <string.h> -#include <unistd.h> - #include <androidfw/CursorWindow.h> - +#include <cutils/ashmem.h> +#include <jni.h> +#include <nativehelper/JNIHelp.h> #include <sqlite3.h> #include <sqlite3_android.h> +#include <string.h> +#include <unistd.h> +#include <utils/Log.h> +#include <utils/String16.h> +#include <utils/String8.h> #include "android_database_SQLiteCommon.h" - #include "core_jni_helpers.h" // Set to 1 to use UTF16 storage for localized indexes. @@ -649,13 +644,14 @@ static int createAshmemRegionWithData(JNIEnv* env, const void* data, size_t leng ALOGE("ashmem_create_region failed: %s", strerror(error)); } else { if (length > 0) { - void* ptr = mmap(NULL, length, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); - if (ptr == MAP_FAILED) { + std::unique_ptr<base::MappedFile> mappedFile = + base::MappedFile::FromFd(fd, 0, length, PROT_READ | PROT_WRITE); + if (mappedFile == nullptr) { error = errno; ALOGE("mmap failed: %s", strerror(error)); } else { - memcpy(ptr, data, length); - munmap(ptr, length); + memcpy(mappedFile->data(), data, length); + mappedFile.reset(); } } diff --git a/core/jni/android_hardware_UsbDeviceConnection.cpp b/core/jni/android_hardware_UsbDeviceConnection.cpp index a0228428e90e..b1221ee38db3 100644 --- a/core/jni/android_hardware_UsbDeviceConnection.cpp +++ b/core/jni/android_hardware_UsbDeviceConnection.cpp @@ -190,18 +190,25 @@ android_hardware_UsbDeviceConnection_bulk_request(JNIEnv *env, jobject thiz, return -1; } - jbyte* bufferBytes = NULL; - if (buffer) { - bufferBytes = (jbyte*)env->GetPrimitiveArrayCritical(buffer, NULL); + bool is_dir_in = (endpoint & USB_ENDPOINT_DIR_MASK) == USB_DIR_IN; + std::unique_ptr<jbyte[]> bufferBytes(new (std::nothrow) jbyte[length]); + if (!bufferBytes) { + jniThrowException(env, "java/lang/OutOfMemoryError", NULL); + return -1; } - jint result = usb_device_bulk_transfer(device, endpoint, bufferBytes + start, length, timeout); + if (!is_dir_in && buffer) { + env->GetByteArrayRegion(buffer, start, length, bufferBytes.get()); + } - if (bufferBytes) { - env->ReleasePrimitiveArrayCritical(buffer, bufferBytes, 0); + jint bytes_transferred = + usb_device_bulk_transfer(device, endpoint, bufferBytes.get(), length, timeout); + + if (bytes_transferred > 0 && is_dir_in) { + env->SetByteArrayRegion(buffer, start, bytes_transferred, bufferBytes.get()); } - return result; + return bytes_transferred; } static jobject diff --git a/core/jni/android_media_AudioFormat.h b/core/jni/android_media_AudioFormat.h index a9b19062b764..704aef3cd131 100644 --- a/core/jni/android_media_AudioFormat.h +++ b/core/jni/android_media_AudioFormat.h @@ -50,6 +50,7 @@ #define ENCODING_DTS_HD_MA 29 #define ENCODING_DTS_UHD_P2 30 #define ENCODING_DSD 31 +#define ENCODING_AC4_L4 32 #define ENCODING_INVALID 0 #define ENCODING_DEFAULT 1 @@ -95,6 +96,8 @@ static inline audio_format_t audioFormatToNative(int audioFormat) return AUDIO_FORMAT_AAC_XHE; case ENCODING_AC4: return AUDIO_FORMAT_AC4; + case ENCODING_AC4_L4: + return AUDIO_FORMAT_AC4_L4; case ENCODING_E_AC3_JOC: return AUDIO_FORMAT_E_AC3_JOC; case ENCODING_DEFAULT: @@ -177,6 +180,8 @@ static inline int audioFormatFromNative(audio_format_t nativeFormat) return ENCODING_AAC_XHE; case AUDIO_FORMAT_AC4: return ENCODING_AC4; + case AUDIO_FORMAT_AC4_L4: + return ENCODING_AC4_L4; case AUDIO_FORMAT_E_AC3_JOC: return ENCODING_E_AC3_JOC; case AUDIO_FORMAT_MAT: diff --git a/core/jni/android_os_Parcel.cpp b/core/jni/android_os_Parcel.cpp index 584ebaa221fc..dec724b6a7ff 100644 --- a/core/jni/android_os_Parcel.cpp +++ b/core/jni/android_os_Parcel.cpp @@ -90,7 +90,7 @@ void recycleJavaParcelObject(JNIEnv* env, jobject parcelObj) env->CallVoidMethod(parcelObj, gParcelOffsets.recycle); } -static void android_os_Parcel_markSensitive(jlong nativePtr) +static void android_os_Parcel_markSensitive(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel) { @@ -116,30 +116,30 @@ static void android_os_Parcel_markForBinder(JNIEnv* env, jclass clazz, jlong nat } } -static jboolean android_os_Parcel_isForRpc(jlong nativePtr) { +static jboolean android_os_Parcel_isForRpc(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->isForRpc() : false; } -static jint android_os_Parcel_dataSize(jlong nativePtr) +static jint android_os_Parcel_dataSize(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataSize() : 0; } -static jint android_os_Parcel_dataAvail(jlong nativePtr) +static jint android_os_Parcel_dataAvail(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataAvail() : 0; } -static jint android_os_Parcel_dataPosition(jlong nativePtr) +static jint android_os_Parcel_dataPosition(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataPosition() : 0; } -static jint android_os_Parcel_dataCapacity(jlong nativePtr) +static jint android_os_Parcel_dataCapacity(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataCapacity() : 0; @@ -156,7 +156,7 @@ static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jlong nativ } } -static void android_os_Parcel_setDataPosition(jlong nativePtr, jint pos) +static void android_os_Parcel_setDataPosition(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr, jint pos) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -175,7 +175,8 @@ static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jlong n } } -static jboolean android_os_Parcel_pushAllowFds(jlong nativePtr, jboolean allowFds) +static jboolean android_os_Parcel_pushAllowFds(CRITICAL_JNI_PARAMS_COMMA + jlong nativePtr, jboolean allowFds) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); jboolean ret = JNI_TRUE; @@ -185,7 +186,8 @@ static jboolean android_os_Parcel_pushAllowFds(jlong nativePtr, jboolean allowFd return ret; } -static void android_os_Parcel_restoreAllowFds(jlong nativePtr, jboolean lastValue) +static void android_os_Parcel_restoreAllowFds(CRITICAL_JNI_PARAMS_COMMA + jlong nativePtr, jboolean lastValue) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -259,22 +261,22 @@ static void android_os_Parcel_writeBlob(JNIEnv* env, jclass clazz, jlong nativeP blob.release(); } -static int android_os_Parcel_writeInt(jlong nativePtr, jint val) { +static int android_os_Parcel_writeInt(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr, jint val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return (parcel != NULL) ? parcel->writeInt32(val) : OK; } -static int android_os_Parcel_writeLong(jlong nativePtr, jlong val) { +static int android_os_Parcel_writeLong(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr, jlong val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return (parcel != NULL) ? parcel->writeInt64(val) : OK; } -static int android_os_Parcel_writeFloat(jlong nativePtr, jfloat val) { +static int android_os_Parcel_writeFloat(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr, jfloat val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return (parcel != NULL) ? parcel->writeFloat(val) : OK; } -static int android_os_Parcel_writeDouble(jlong nativePtr, jdouble val) { +static int android_os_Parcel_writeDouble(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr, jdouble val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return (parcel != NULL) ? parcel->writeDouble(val) : OK; } @@ -446,7 +448,7 @@ static jbyteArray android_os_Parcel_readBlob(JNIEnv* env, jclass clazz, jlong na return ret; } -static jint android_os_Parcel_readInt(jlong nativePtr) +static jint android_os_Parcel_readInt(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -455,7 +457,7 @@ static jint android_os_Parcel_readInt(jlong nativePtr) return 0; } -static jlong android_os_Parcel_readLong(jlong nativePtr) +static jlong android_os_Parcel_readLong(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -464,7 +466,7 @@ static jlong android_os_Parcel_readLong(jlong nativePtr) return 0; } -static jfloat android_os_Parcel_readFloat(jlong nativePtr) +static jfloat android_os_Parcel_readFloat(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -473,7 +475,7 @@ static jfloat android_os_Parcel_readFloat(jlong nativePtr) return 0; } -static jdouble android_os_Parcel_readDouble(jlong nativePtr) +static jdouble android_os_Parcel_readDouble(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -690,7 +692,7 @@ static jboolean android_os_Parcel_hasBindersInRange(JNIEnv* env, jclass clazz, j return JNI_FALSE; } -static jboolean android_os_Parcel_hasFileDescriptors(jlong nativePtr) +static jboolean android_os_Parcel_hasFileDescriptors(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { jboolean ret = JNI_FALSE; Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); @@ -807,7 +809,7 @@ static jlong android_os_Parcel_getGlobalAllocCount(JNIEnv* env, jclass clazz) return Parcel::getGlobalAllocCount(); } -static jlong android_os_Parcel_getOpenAshmemSize(jlong nativePtr) +static jlong android_os_Parcel_getOpenAshmemSize(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -816,7 +818,7 @@ static jlong android_os_Parcel_getOpenAshmemSize(jlong nativePtr) return 0; } -static jint android_os_Parcel_readCallingWorkSourceUid(jlong nativePtr) +static jint android_os_Parcel_readCallingWorkSourceUid(CRITICAL_JNI_PARAMS_COMMA jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { @@ -825,7 +827,8 @@ static jint android_os_Parcel_readCallingWorkSourceUid(jlong nativePtr) return IPCThreadState::kUnsetWorkSource; } -static jboolean android_os_Parcel_replaceCallingWorkSourceUid(jlong nativePtr, jint uid) +static jboolean android_os_Parcel_replaceCallingWorkSourceUid(CRITICAL_JNI_PARAMS_COMMA + jlong nativePtr, jint uid) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { diff --git a/core/jni/android_os_SELinux.cpp b/core/jni/android_os_SELinux.cpp index 84ca1ba6ad7c..7a4670f4e49d 100644 --- a/core/jni/android_os_SELinux.cpp +++ b/core/jni/android_os_SELinux.cpp @@ -53,7 +53,7 @@ selabel_handle* GetSELabelHandle() { } struct SecurityContext_Delete { - void operator()(security_context_t p) const { + void operator()(char* p) const { freecon(p); } }; @@ -111,7 +111,7 @@ static jstring fileSelabelLookup(JNIEnv* env, jobject, jstring pathStr) { return NULL; } - security_context_t tmp = NULL; + char* tmp = NULL; if (selabel_lookup(selabel_handle, &tmp, path_c_str, S_IFREG) != 0) { ALOGE("fileSelabelLookup => selabel_lookup for %s failed: %d", path_c_str, errno); return NULL; @@ -138,7 +138,7 @@ static jstring getFdConInner(JNIEnv *env, jobject fileDescriptor, bool isSocket) return NULL; } - security_context_t tmp = NULL; + char* tmp = NULL; int ret; if (isSocket) { ret = getpeercon(fd, &tmp); @@ -184,7 +184,7 @@ static jstring getFdCon(JNIEnv *env, jobject, jobject fileDescriptor) { * Function: setFSCreateCon * Purpose: set security context used for creating a new file system object * Parameters: - * context: security_context_t representing the new context of a file system object, + * context: char* representing the new context of a file system object, * set to NULL to return to the default policy behavior * Returns: true on success, false on error * Exception: none @@ -267,7 +267,7 @@ static jstring getFileCon(JNIEnv *env, jobject, jstring pathStr) { return NULL; } - security_context_t tmp = NULL; + char* tmp = NULL; int ret = getfilecon(path.c_str(), &tmp); Unique_SecurityContext context(tmp); @@ -293,7 +293,7 @@ static jstring getCon(JNIEnv *env, jobject) { return NULL; } - security_context_t tmp = NULL; + char* tmp = NULL; int ret = getcon(&tmp); Unique_SecurityContext context(tmp); @@ -320,7 +320,7 @@ static jstring getPidCon(JNIEnv *env, jobject, jint pid) { return NULL; } - security_context_t tmp = NULL; + char* tmp = NULL; int ret = getpidcon(static_cast<pid_t>(pid), &tmp); Unique_SecurityContext context(tmp); diff --git a/core/jni/android_os_SystemProperties.cpp b/core/jni/android_os_SystemProperties.cpp index 88e6fa3028ad..e99d89098a40 100644 --- a/core/jni/android_os_SystemProperties.cpp +++ b/core/jni/android_os_SystemProperties.cpp @@ -34,8 +34,6 @@ #if defined(__BIONIC__) # include <sys/system_properties.h> -#else -struct prop_info; #endif namespace android { @@ -46,7 +44,6 @@ using android::base::ParseBoolResult; template<typename Functor> void ReadProperty(const prop_info* prop, Functor&& functor) { -#if defined(__BIONIC__) auto thunk = [](void* cookie, const char* /*name*/, const char* value, @@ -54,9 +51,6 @@ void ReadProperty(const prop_info* prop, Functor&& functor) std::forward<Functor>(*static_cast<Functor*>(cookie))(value); }; __system_property_read_callback(prop, thunk, &functor); -#else - LOG(FATAL) << "fast property access supported only on device"; -#endif } template<typename Functor> @@ -66,16 +60,11 @@ void ReadProperty(JNIEnv* env, jstring keyJ, Functor&& functor) if (!key.c_str()) { return; } -#if defined(__BIONIC__) const prop_info* prop = __system_property_find(key.c_str()); if (!prop) { return; } ReadProperty(prop, std::forward<Functor>(functor)); -#else - std::forward<Functor>(functor)( - android::base::GetProperty(key.c_str(), "").c_str()); -#endif } jstring SystemProperties_getSS(JNIEnv* env, jclass clazz, jstring keyJ, @@ -132,17 +121,12 @@ jboolean SystemProperties_get_boolean(JNIEnv *env, jclass, jstring keyJ, jlong SystemProperties_find(JNIEnv* env, jclass, jstring keyJ) { -#if defined(__BIONIC__) ScopedUtfChars key(env, keyJ); if (!key.c_str()) { return 0; } const prop_info* prop = __system_property_find(key.c_str()); return reinterpret_cast<jlong>(prop); -#else - LOG(FATAL) << "fast property access supported only on device"; - __builtin_unreachable(); // Silence warning -#endif } jstring SystemProperties_getH(JNIEnv* env, jclass clazz, jlong propJ) @@ -198,11 +182,7 @@ void SystemProperties_set(JNIEnv *env, jobject clazz, jstring keyJ, // request" failures). errno = 0; bool success; -#if defined(__BIONIC__) success = !__system_property_set(key.c_str(), value_c_str); -#else - success = android::base::SetProperty(key.c_str(), value_c_str); -#endif if (!success) { if (errno != 0) { jniThrowExceptionFmt(env, "java/lang/RuntimeException", diff --git a/core/jni/android_text_Hyphenator.cpp b/core/jni/android_text_Hyphenator.cpp index 89fdeeb078d0..933781c3e924 100644 --- a/core/jni/android_text_Hyphenator.cpp +++ b/core/jni/android_text_Hyphenator.cpp @@ -14,17 +14,19 @@ * limitations under the License. */ +#include <core_jni_helpers.h> +#include <cutils/trace.h> #include <fcntl.h> +#include <minikin/Hyphenator.h> #include <sys/mman.h> #include <sys/stat.h> #include <sys/types.h> +#include <tracing_perfetto.h> +#include <unicode/uloc.h> #include <unistd.h> #include <algorithm> -#include <core_jni_helpers.h> -#include <minikin/Hyphenator.h> - namespace android { static std::string buildFileName(const std::string& locale) { @@ -79,6 +81,23 @@ static void addHyphenatorAlias(const std::string& from, const std::string& to) { minikin::addHyphenatorAlias(from, to); } +/* + * Cache the subtag key map by calling uloc_forLanguageTag with a subtag. + * minikin calls uloc_forLanguageTag with an Unicode extension specifying + * the line breaking strictness. Parsing the extension requires loading the key map + * from keyTypeData.res in the ICU. + * "lb" is the key commonly used by minikin. "ca" is a common legacy key mapping to + * the "calendar" key. It ensures that the key map is loaded and cached in icu4c. + * "en-Latn-US" is a common locale used in the Android system regardless what default locale + * is selected in the Settings app. + */ +inline static void cacheUnicodeExtensionSubtagsKeyMap() { + UErrorCode status = U_ZERO_ERROR; + char localeID[ULOC_FULLNAME_CAPACITY] = {}; + uloc_forLanguageTag("en-Latn-US-u-lb-loose-ca-gregory", localeID, ULOC_FULLNAME_CAPACITY, + nullptr, &status); +} + static void init() { // TODO: Confirm that these are the best values. Various sources suggest (1, 1), but that // appears too small. @@ -190,6 +209,10 @@ static void init() { addHyphenatorAlias("und-Orya", "or"); // Oriya addHyphenatorAlias("und-Taml", "ta"); // Tamil addHyphenatorAlias("und-Telu", "te"); // Telugu + + tracing_perfetto::traceBegin(ATRACE_TAG_VIEW, "CacheUnicodeExtensionSubtagsKeyMap"); + cacheUnicodeExtensionSubtagsKeyMap(); + tracing_perfetto::traceEnd(ATRACE_TAG_VIEW); // CacheUnicodeExtensionSubtagsKeyMap } static const JNINativeMethod gMethods[] = { diff --git a/core/jni/android_util_Binder.cpp b/core/jni/android_util_Binder.cpp index 2068bd7bc8ea..8003bb7d442b 100644 --- a/core/jni/android_util_Binder.cpp +++ b/core/jni/android_util_Binder.cpp @@ -56,11 +56,11 @@ //#undef ALOGV //#define ALOGV(...) fprintf(stderr, __VA_ARGS__) -#define DEBUG_DEATH 0 -#if DEBUG_DEATH -#define LOGDEATH ALOGD +#define DEBUG_DEATH_FREEZE 0 +#if DEBUG_DEATH_FREEZE +#define LOG_DEATH_FREEZE ALOGD #else -#define LOGDEATH ALOGV +#define LOG_DEATH_FREEZE ALOGV #endif using namespace android; @@ -116,6 +116,7 @@ static struct binderproxy_offsets_t jclass mClass; jmethodID mGetInstance; jmethodID mSendDeathNotice; + jmethodID mInvokeFrozenStateChangeCallback; // Object state. jfieldID mNativeData; // Field holds native pointer to BinderProxyNativeData. @@ -466,10 +467,25 @@ class JavaBBinderHolder public: sp<JavaBBinder> get(JNIEnv* env, jobject obj) { - AutoMutex _l(mLock); - sp<JavaBBinder> b = mBinder.promote(); - if (b == NULL) { - b = new JavaBBinder(env, obj); + sp<JavaBBinder> b; + { + AutoMutex _l(mLock); + // must take lock to promote because we set the same wp<> + // on another thread. + b = mBinder.promote(); + } + + if (b) return b; + + // b/360067751: constructor may trigger GC, so call outside lock + b = new JavaBBinder(env, obj); + + { + AutoMutex _l(mLock); + // if it was constructed on another thread in the meantime, + // return that. 'b' will just get destructed. + if (sp<JavaBBinder> b2 = mBinder.promote(); b2) return b2; + if (mVintf) { ::android::internal::Stability::markVintf(b.get()); } @@ -532,23 +548,59 @@ private: // ---------------------------------------------------------------------------- -// Per-IBinder death recipient bookkeeping. This is how we reconcile local jobject -// death recipient references passed in through JNI with the permanent corresponding -// JavaDeathRecipient objects. - -class JavaDeathRecipient; - -class DeathRecipientList : public RefBase { - List< sp<JavaDeathRecipient> > mList; +// A JavaRecipient receives either death notifications or frozen state change +// callbacks from natve code (IBinder) and dispatch the notifications to its +// corresponding Java listener object. +// +// A RecipientList keeps tracks of all JavaRecipients for an IBinder. This way +// we can find a JavaRecipient given a Java listener object. +// +// The implementation is shared between death recipients and frozen state change +// callbacks via template. For death recipients the template is instantiated as +// follows: +// +// IBinder::DeathRecipient +// ^ +// | +// (inherits) +// | +// JavaRecipient<IBinder::DeathRecipient> <----> RecipientList<IBinder::DeathRecipient> +// ^ +// | +// (inherits) +// | +// JavaDeathRecipient +// +// +// The instantiation for frozen state change callbacks are: +// +// IBinder::FrozenStateChangeCallback +// ^ +// | +// (inherits) +// | +// JavaRecipient<IBinder::FrozenStateChangeCallback> +// ^ ^ +// | | +// (inherits) +--> RecipientList<IBinder::FrozenStateChangeCallback> +// | +// JavaFrozenStateChangeCallback + +template <typename T> +class JavaRecipient; + +template <typename T> +class RecipientList : public RefBase { + List<sp<JavaRecipient<T> > > mList; Mutex mLock; public: - DeathRecipientList(); - ~DeathRecipientList(); + RecipientList(); + ~RecipientList(); - void add(const sp<JavaDeathRecipient>& recipient); - void remove(const sp<JavaDeathRecipient>& recipient); - sp<JavaDeathRecipient> find(jobject recipient); + void add(const sp<JavaRecipient<T> >& recipient); + void remove(const sp<JavaRecipient<T> >& recipient); + sp<JavaRecipient<T> > find(jobject recipient); Mutex& lock(); // Use with care; specifically for mutual exclusion during binder death }; @@ -569,11 +621,113 @@ static constexpr bool target_sdk_is_at_least_vic() { #endif // __BIONIC__ #endif // BINDER_DEATH_RECIPIENT_WEAK_FROM_JNI -class JavaDeathRecipient : public IBinder::DeathRecipient -{ +template <typename T> +constexpr const char* logPrefix(); + +template <> +constexpr const char* logPrefix<IBinder::DeathRecipient>() { + return "[DEATH]"; +} + +template <> +constexpr const char* logPrefix<IBinder::FrozenStateChangeCallback>() { + return "[FREEZE]"; +} + +template <typename T> +class JavaRecipient : public T { public: - JavaDeathRecipient(JNIEnv* env, jobject object, const sp<DeathRecipientList>& list) + JavaRecipient(JNIEnv* env, jobject object, const sp<RecipientList<T> >& list, + bool useWeakReference) : mVM(jnienv_to_javavm(env)), mObject(NULL), mObjectWeak(NULL), mList(list) { + if (useWeakReference) { + mObjectWeak = env->NewWeakGlobalRef(object); + } else { + mObject = env->NewGlobalRef(object); + } + // These objects manage their own lifetimes so are responsible for final bookkeeping. + // The list holds a strong reference to this object. + LOG_DEATH_FREEZE("%s Adding JavaRecipient %p to RecipientList %p", logPrefix<T>(), this, + list.get()); + list->add(this); + } + + void clearReference() { + sp<RecipientList<T> > list = mList.promote(); + if (list != NULL) { + LOG_DEATH_FREEZE("%s Removing JavaRecipient %p from RecipientList %p", logPrefix<T>(), + this, list.get()); + list->remove(this); + } else { + LOG_DEATH_FREEZE("%s clearReference() on JavaRecipient %p but RecipientList wp purged", + logPrefix<T>(), this); + } + } + + bool matches(jobject obj) { + bool result; + JNIEnv* env = javavm_to_jnienv(mVM); + + if (mObject != NULL) { + result = env->IsSameObject(obj, mObject); + } else { + ScopedLocalRef<jobject> me(env, env->NewLocalRef(mObjectWeak)); + result = env->IsSameObject(obj, me.get()); + } + return result; + } + + void warnIfStillLive() { + if (mObject != NULL) { + // Okay, something is wrong -- we have a hard reference to a live death + // recipient on the VM side, but the list is being torn down. + JNIEnv* env = javavm_to_jnienv(mVM); + ScopedLocalRef<jclass> objClassRef(env, env->GetObjectClass(mObject)); + ScopedLocalRef<jstring> nameRef(env, + (jstring)env->CallObjectMethod(objClassRef.get(), + gClassOffsets.mGetName)); + ScopedUtfChars nameUtf(env, nameRef.get()); + if (nameUtf.c_str() != NULL) { + ALOGW("BinderProxy is being destroyed but the application did not call " + "unlinkToDeath to unlink all of its death recipients beforehand. " + "Releasing leaked death recipient: %s", + nameUtf.c_str()); + } else { + ALOGW("BinderProxy being destroyed; unable to get DR object name"); + env->ExceptionClear(); + } + } + } + +protected: + virtual ~JavaRecipient() { + // ALOGI("Removing death ref: recipient=%p\n", mObject); + JNIEnv* env = javavm_to_jnienv(mVM); + if (mObject != NULL) { + env->DeleteGlobalRef(mObject); + } else { + env->DeleteWeakGlobalRef(mObjectWeak); + } + } + + JavaVM* const mVM; + + // If useWeakReference is false (e.g. JavaDeathRecipient when target sdk version < 35), the + // Java-side Recipient is strongly referenced from mObject initially, and may later be demoted + // to a weak reference (mObjectWeak), e.g. upon linkToDeath() and then after binderDied() is + // called. + // If useWeakReference is true, the strong reference is never made here (i.e. mObject == NULL + // always). Instead, the strong reference to the Java-side Recipient is made in + // BinderProxy.{mDeathRecipients,mFrozenStateChangeCallbacks}. In the native world, only the + // weak reference is kept. + jobject mObject; + jweak mObjectWeak; + wp<RecipientList<T> > mList; +}; + +class JavaDeathRecipient : public JavaRecipient<IBinder::DeathRecipient> { +public: + static bool useWeakReference() { // b/298374304: For apps targeting Android V or beyond, we no longer hold the global JNI ref // to the death recipient objects. This is to prevent the memory leak which can happen when // the death recipient object internally has a strong reference to the proxy object. Under @@ -589,25 +743,26 @@ public: // reference to. If however you want to get binderDied() regardless of the proxy object's // lifecycle, keep a strong reference to the death recipient object by yourself. #ifdef BINDER_DEATH_RECIPIENT_WEAK_FROM_JNI - if (target_sdk_is_at_least_vic()) { - mObjectWeak = env->NewWeakGlobalRef(object); - } else + return target_sdk_is_at_least_vic(); +#else + return false; #endif - { - mObject = env->NewGlobalRef(object); - } - // These objects manage their own lifetimes so are responsible for final bookkeeping. - // The list holds a strong reference to this object. - LOGDEATH("Adding JDR %p to DRL %p", this, list.get()); - list->add(this); + } + JavaDeathRecipient(JNIEnv* env, jobject object, + const sp<RecipientList<IBinder::DeathRecipient> >& list) + : JavaRecipient(env, object, list, useWeakReference()) { gNumDeathRefsCreated.fetch_add(1, std::memory_order_relaxed); gcIfManyNewRefs(env); } + ~JavaDeathRecipient() { + gNumDeathRefsDeleted.fetch_add(1, std::memory_order_relaxed); + } + void binderDied(const wp<IBinder>& who) { - LOGDEATH("Receiving binderDied() on JavaDeathRecipient %p\n", this); + LOG_DEATH_FREEZE("Receiving binderDied() on JavaDeathRecipient %p\n", this); if (mObject == NULL && mObjectWeak == NULL) { return; } @@ -647,7 +802,7 @@ public: // with our containing DeathRecipientList so that we can't delete the global ref on mObject // while the list is being iterated. if (mObject != NULL) { - sp<DeathRecipientList> list = mList.promote(); + auto list = mList.promote(); if (list != NULL) { AutoMutex _l(list->lock()); @@ -658,126 +813,96 @@ public: } } - void clearReference() - { - sp<DeathRecipientList> list = mList.promote(); - if (list != NULL) { - LOGDEATH("Removing JDR %p from DRL %p", this, list.get()); - list->remove(this); - } else { - LOGDEATH("clearReference() on JDR %p but DRL wp purged", this); - } - } - - bool matches(jobject obj) { - bool result; - JNIEnv* env = javavm_to_jnienv(mVM); +private: + // Whether binderDied was called or not. + bool mFired = false; +}; - if (mObject != NULL) { - result = env->IsSameObject(obj, mObject); - } else { - ScopedLocalRef<jobject> me(env, env->NewLocalRef(mObjectWeak)); - result = env->IsSameObject(obj, me.get()); +class JavaFrozenStateChangeCallback : public JavaRecipient<IBinder::FrozenStateChangeCallback> { +public: + JavaFrozenStateChangeCallback( + JNIEnv* env, jobject object, + const sp<RecipientList<IBinder::FrozenStateChangeCallback> >& list) + : JavaRecipient(env, object, list, /*useWeakReference=*/true) {} + + void onStateChanged(const wp<IBinder>& who, State state) { + LOG_DEATH_FREEZE("Receiving onStateChanged() on JavaFrozenStateChangeCallback %p. state: " + "%s\n", + this, state == State::FROZEN ? "FROZEN" : "UNFROZEN"); + if (mObjectWeak == NULL) { + return; } - return result; - } + JNIEnv* env = javavm_to_jnienv(mVM); + ScopedLocalRef<jobject> jBinderProxy(env, javaObjectForIBinder(env, who.promote())); - void warnIfStillLive() { - if (mObject != NULL) { - // Okay, something is wrong -- we have a hard reference to a live death - // recipient on the VM side, but the list is being torn down. - JNIEnv* env = javavm_to_jnienv(mVM); - ScopedLocalRef<jclass> objClassRef(env, env->GetObjectClass(mObject)); - ScopedLocalRef<jstring> nameRef(env, - (jstring) env->CallObjectMethod(objClassRef.get(), gClassOffsets.mGetName)); - ScopedUtfChars nameUtf(env, nameRef.get()); - if (nameUtf.c_str() != NULL) { - ALOGW("BinderProxy is being destroyed but the application did not call " - "unlinkToDeath to unlink all of its death recipients beforehand. " - "Releasing leaked death recipient: %s", nameUtf.c_str()); - } else { - ALOGW("BinderProxy being destroyed; unable to get DR object name"); - env->ExceptionClear(); - } + // Hold a local reference to the recipient. This may fail if the recipient is weakly + // referenced, in which case we can't deliver the notification. + ScopedLocalRef<jobject> jCallback(env, env->NewLocalRef(mObjectWeak)); + if (jCallback.get() == NULL) { + return; } - } - -protected: - virtual ~JavaDeathRecipient() - { - //ALOGI("Removing death ref: recipient=%p\n", mObject); - gNumDeathRefsDeleted.fetch_add(1, std::memory_order_relaxed); - JNIEnv* env = javavm_to_jnienv(mVM); - if (mObject != NULL) { - env->DeleteGlobalRef(mObject); - } else { - env->DeleteWeakGlobalRef(mObjectWeak); + env->CallStaticVoidMethod(gBinderProxyOffsets.mClass, + gBinderProxyOffsets.mInvokeFrozenStateChangeCallback, + jCallback.get(), jBinderProxy.get(), state); + if (env->ExceptionCheck()) { + jthrowable excep = env->ExceptionOccurred(); + binder_report_exception(env, excep, + "*** Uncaught exception returned from frozen state change " + "notification!"); } } - -private: - JavaVM* const mVM; - - // If target sdk version < 35, the Java-side DeathRecipient is strongly referenced from mObject - // upon linkToDeath() and then after binderDied() is called, the strong reference is demoted to - // a weak reference (mObjectWeak). - // If target sdk version >= 35, the strong reference is never made here (i.e. mObject == NULL - // always). Instead, the strong reference to the Java-side DeathRecipient is made in - // BinderProxy.mDeathRecipients. In the native world, only the weak reference is kept. - jobject mObject; - jweak mObjectWeak; - wp<DeathRecipientList> mList; - - // Whether binderDied was called or not. - bool mFired = false; }; // ---------------------------------------------------------------------------- -DeathRecipientList::DeathRecipientList() { - LOGDEATH("New DRL @ %p", this); +template <typename T> +RecipientList<T>::RecipientList() { + LOG_DEATH_FREEZE("%s New RecipientList @ %p", logPrefix<T>(), this); } -DeathRecipientList::~DeathRecipientList() { - LOGDEATH("Destroy DRL @ %p", this); +template <typename T> +RecipientList<T>::~RecipientList() { + LOG_DEATH_FREEZE("%s Destroy RecipientList @ %p", logPrefix<T>(), this); AutoMutex _l(mLock); - // Should never happen -- the JavaDeathRecipient objects that have added themselves + // Should never happen -- the JavaRecipientList objects that have added themselves // to the list are holding references on the list object. Only when they are torn // down can the list header be destroyed. if (mList.size() > 0) { - List< sp<JavaDeathRecipient> >::iterator iter; - for (iter = mList.begin(); iter != mList.end(); iter++) { + for (auto iter = mList.begin(); iter != mList.end(); iter++) { (*iter)->warnIfStillLive(); } } } -void DeathRecipientList::add(const sp<JavaDeathRecipient>& recipient) { +template <typename T> +void RecipientList<T>::add(const sp<JavaRecipient<T> >& recipient) { AutoMutex _l(mLock); - LOGDEATH("DRL @ %p : add JDR %p", this, recipient.get()); + LOG_DEATH_FREEZE("%s RecipientList @ %p : add JavaRecipient %p", logPrefix<T>(), this, + recipient.get()); mList.push_back(recipient); } -void DeathRecipientList::remove(const sp<JavaDeathRecipient>& recipient) { +template <typename T> +void RecipientList<T>::remove(const sp<JavaRecipient<T> >& recipient) { AutoMutex _l(mLock); - List< sp<JavaDeathRecipient> >::iterator iter; - for (iter = mList.begin(); iter != mList.end(); iter++) { + for (auto iter = mList.begin(); iter != mList.end(); iter++) { if (*iter == recipient) { - LOGDEATH("DRL @ %p : remove JDR %p", this, recipient.get()); + LOG_DEATH_FREEZE("%s RecipientList @ %p : remove JavaRecipient %p", logPrefix<T>(), + this, recipient.get()); mList.erase(iter); return; } } } -sp<JavaDeathRecipient> DeathRecipientList::find(jobject recipient) { +template <typename T> +sp<JavaRecipient<T> > RecipientList<T>::find(jobject recipient) { AutoMutex _l(mLock); - List< sp<JavaDeathRecipient> >::iterator iter; - for (iter = mList.begin(); iter != mList.end(); iter++) { + for (auto iter = mList.begin(); iter != mList.end(); iter++) { if ((*iter)->matches(recipient)) { return *iter; } @@ -785,10 +910,14 @@ sp<JavaDeathRecipient> DeathRecipientList::find(jobject recipient) { return NULL; } -Mutex& DeathRecipientList::lock() { +template <typename T> +Mutex& RecipientList<T>::lock() { return mLock; } +using DeathRecipientList = RecipientList<IBinder::DeathRecipient>; +using FrozenStateChangeCallbackList = RecipientList<IBinder::FrozenStateChangeCallback>; + // ---------------------------------------------------------------------------- namespace android { @@ -806,6 +935,11 @@ struct BinderProxyNativeData { // Death recipients for mObject. Reference counted only because DeathRecipients // hold a weak reference that can be temporarily promoted. sp<DeathRecipientList> mOrgue; // Death recipients for mObject. + + // Frozen state change callbacks for mObject. Reference counted only because + // JavaFrozenStateChangeCallback hold a weak reference that can be + // temporarily promoted. + sp<FrozenStateChangeCallbackList> mFrozenStateChangCallbackList; }; BinderProxyNativeData* getBPNativeData(JNIEnv* env, jobject obj) { @@ -825,12 +959,13 @@ jobject javaObjectForIBinder(JNIEnv* env, const sp<IBinder>& val) if (val->checkSubclass(&gBinderOffsets)) { // It's a JavaBBinder created by ibinderForJavaObject. Already has Java object. jobject object = static_cast<JavaBBinder*>(val.get())->object(); - LOGDEATH("objectForBinder %p: it's our own %p!\n", val.get(), object); + LOG_DEATH_FREEZE("objectForBinder %p: it's our own %p!\n", val.get(), object); return object; } BinderProxyNativeData* nativeData = new BinderProxyNativeData(); nativeData->mOrgue = new DeathRecipientList; + nativeData->mFrozenStateChangCallbackList = new FrozenStateChangeCallbackList; nativeData->mObject = val; jobject object = env->CallStaticObjectMethod(gBinderProxyOffsets.mClass, @@ -1017,60 +1152,60 @@ void signalExceptionForError(JNIEnv* env, jobject obj, status_t err, // ---------------------------------------------------------------------------- -static jint android_os_Binder_getCallingPid() +static jint android_os_Binder_getCallingPid(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->getCallingPid(); } -static jint android_os_Binder_getCallingUid() +static jint android_os_Binder_getCallingUid(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->getCallingUid(); } -static jboolean android_os_Binder_isDirectlyHandlingTransactionNative() { +static jboolean android_os_Binder_isDirectlyHandlingTransactionNative(CRITICAL_JNI_PARAMS) { return getCurrentServingCall() == BinderCallType::BINDER; } -static jlong android_os_Binder_clearCallingIdentity() +static jlong android_os_Binder_clearCallingIdentity(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->clearCallingIdentity(); } -static void android_os_Binder_restoreCallingIdentity(jlong token) +static void android_os_Binder_restoreCallingIdentity(CRITICAL_JNI_PARAMS_COMMA jlong token) { IPCThreadState::self()->restoreCallingIdentity(token); } -static jboolean android_os_Binder_hasExplicitIdentity() { +static jboolean android_os_Binder_hasExplicitIdentity(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->hasExplicitIdentity(); } -static void android_os_Binder_setThreadStrictModePolicy(jint policyMask) +static void android_os_Binder_setThreadStrictModePolicy(CRITICAL_JNI_PARAMS_COMMA jint policyMask) { IPCThreadState::self()->setStrictModePolicy(policyMask); } -static jint android_os_Binder_getThreadStrictModePolicy() +static jint android_os_Binder_getThreadStrictModePolicy(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->getStrictModePolicy(); } -static jlong android_os_Binder_setCallingWorkSourceUid(jint workSource) +static jlong android_os_Binder_setCallingWorkSourceUid(CRITICAL_JNI_PARAMS_COMMA jint workSource) { return IPCThreadState::self()->setCallingWorkSourceUid(workSource); } -static jlong android_os_Binder_getCallingWorkSourceUid() +static jlong android_os_Binder_getCallingWorkSourceUid(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->getCallingWorkSourceUid(); } -static jlong android_os_Binder_clearCallingWorkSource() +static jlong android_os_Binder_clearCallingWorkSource(CRITICAL_JNI_PARAMS) { return IPCThreadState::self()->clearCallingWorkSource(); } -static void android_os_Binder_restoreCallingWorkSource(jlong token) +static void android_os_Binder_restoreCallingWorkSource(CRITICAL_JNI_PARAMS_COMMA jlong token) { IPCThreadState::self()->restoreCallingWorkSource(token); } @@ -1433,7 +1568,7 @@ static void android_os_BinderProxy_linkToDeath(JNIEnv* env, jobject obj, BinderProxyNativeData *nd = getBPNativeData(env, obj); IBinder* target = nd->mObject.get(); - LOGDEATH("linkToDeath: binder=%p recipient=%p\n", target, recipient); + LOG_DEATH_FREEZE("linkToDeath: binder=%p recipient=%p\n", target, recipient); if (!target->localBinder()) { DeathRecipientList* list = nd->mOrgue.get(); @@ -1464,15 +1599,15 @@ static jboolean android_os_BinderProxy_unlinkToDeath(JNIEnv* env, jobject obj, return JNI_FALSE; } - LOGDEATH("unlinkToDeath: binder=%p recipient=%p\n", target, recipient); + LOG_DEATH_FREEZE("unlinkToDeath: binder=%p recipient=%p\n", target, recipient); if (!target->localBinder()) { status_t err = NAME_NOT_FOUND; // If we find the matching recipient, proceed to unlink using that DeathRecipientList* list = nd->mOrgue.get(); - sp<JavaDeathRecipient> origJDR = list->find(recipient); - LOGDEATH(" unlink found list %p and JDR %p", list, origJDR.get()); + sp<JavaRecipient<IBinder::DeathRecipient> > origJDR = list->find(recipient); + LOG_DEATH_FREEZE(" unlink found list %p and JDR %p", list, origJDR.get()); if (origJDR != NULL) { wp<IBinder::DeathRecipient> dr; err = target->unlinkToDeath(origJDR, NULL, flags, &dr); @@ -1498,11 +1633,85 @@ static jboolean android_os_BinderProxy_unlinkToDeath(JNIEnv* env, jobject obj, return res; } +static void android_os_BinderProxy_addFrozenStateChangeCallback( + JNIEnv* env, jobject obj, + jobject callback) // throws RemoteException +{ + if (callback == NULL) { + jniThrowNullPointerException(env, NULL); + return; + } + + BinderProxyNativeData* nd = getBPNativeData(env, obj); + IBinder* target = nd->mObject.get(); + + LOG_DEATH_FREEZE("addFrozenStateChangeCallback: binder=%p callback=%p\n", target, callback); + + if (!target->localBinder()) { + FrozenStateChangeCallbackList* list = nd->mFrozenStateChangCallbackList.get(); + auto jfscc = sp<JavaFrozenStateChangeCallback>::make(env, callback, list); + status_t err = target->addFrozenStateChangeCallback(jfscc); + if (err != NO_ERROR) { + // Failure adding the callback, so clear its reference now. + jfscc->clearReference(); + signalExceptionForError(env, obj, err, true /*canThrowRemoteException*/); + } + } +} + +static jboolean android_os_BinderProxy_removeFrozenStateChangeCallback(JNIEnv* env, jobject obj, + jobject callback) { + jboolean res = JNI_FALSE; + if (callback == NULL) { + jniThrowNullPointerException(env, NULL); + return res; + } + + BinderProxyNativeData* nd = getBPNativeData(env, obj); + IBinder* target = nd->mObject.get(); + if (target == NULL) { + ALOGW("Binder has been finalized when calling removeFrozenStateChangeCallback() with " + "callback=%p)\n", + callback); + return JNI_FALSE; + } + + LOG_DEATH_FREEZE("removeFrozenStateChangeCallback: binder=%p callback=%p\n", target, callback); + + if (!target->localBinder()) { + status_t err = NAME_NOT_FOUND; + + // If we find the matching callback, proceed to unlink using that + FrozenStateChangeCallbackList* list = nd->mFrozenStateChangCallbackList.get(); + sp<JavaRecipient<IBinder::FrozenStateChangeCallback> > origJFSCC = list->find(callback); + LOG_DEATH_FREEZE(" removeFrozenStateChangeCallback found list %p and JFSCC %p", list, + origJFSCC.get()); + if (origJFSCC != NULL) { + err = target->removeFrozenStateChangeCallback(origJFSCC); + if (err == NO_ERROR) { + origJFSCC->clearReference(); + } + } + + if (err == NO_ERROR || err == DEAD_OBJECT) { + res = JNI_TRUE; + } else { + jniThrowException(env, "java/util/NoSuchElementException", + base::StringPrintf("Frozen state change callback does not exist (%s)", + statusToString(err).c_str()) + .c_str()); + } + } + + return res; +} + static void BinderProxy_destroy(void* rawNativeData) { BinderProxyNativeData * nativeData = (BinderProxyNativeData *) rawNativeData; - LOGDEATH("Destroying BinderProxy: binder=%p drl=%p\n", - nativeData->mObject.get(), nativeData->mOrgue.get()); + LOG_DEATH_FREEZE("Destroying BinderProxy: binder=%p drl=%p fsccl=%p\n", + nativeData->mObject.get(), nativeData->mOrgue.get(), + nativeData->mFrozenStateChangCallbackList.get()); delete nativeData; IPCThreadState::self()->flushCommands(); } @@ -1537,6 +1746,10 @@ static const JNINativeMethod gBinderProxyMethods[] = { {"transactNative", "(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z", (void*)android_os_BinderProxy_transact}, {"linkToDeathNative", "(Landroid/os/IBinder$DeathRecipient;I)V", (void*)android_os_BinderProxy_linkToDeath}, {"unlinkToDeathNative", "(Landroid/os/IBinder$DeathRecipient;I)Z", (void*)android_os_BinderProxy_unlinkToDeath}, + {"addFrozenStateChangeCallbackNative", + "(Landroid/os/IBinder$FrozenStateChangeCallback;)V", (void*)android_os_BinderProxy_addFrozenStateChangeCallback}, + {"removeFrozenStateChangeCallbackNative", + "(Landroid/os/IBinder$FrozenStateChangeCallback;)Z", (void*)android_os_BinderProxy_removeFrozenStateChangeCallback}, {"getNativeFinalizer", "()J", (void*)android_os_BinderProxy_getNativeFinalizer}, {"getExtension", "()Landroid/os/IBinder;", (void*)android_os_BinderProxy_getExtension}, }; @@ -1559,6 +1772,10 @@ static int int_register_android_os_BinderProxy(JNIEnv* env) gBinderProxyOffsets.mSendDeathNotice = GetStaticMethodIDOrDie(env, clazz, "sendDeathNotice", "(Landroid/os/IBinder$DeathRecipient;Landroid/os/IBinder;)V"); + gBinderProxyOffsets.mInvokeFrozenStateChangeCallback = + GetStaticMethodIDOrDie(env, clazz, "invokeFrozenStateChangeCallback", + "(Landroid/os/IBinder$FrozenStateChangeCallback;Landroid/os/" + "IBinder;I)V"); gBinderProxyOffsets.mNativeData = GetFieldIDOrDie(env, clazz, "mNativeData", "J"); clazz = FindClassOrDie(env, "java/lang/Class"); diff --git a/core/jni/android_util_Process.cpp b/core/jni/android_util_Process.cpp index 982189e30beb..4cc904153aac 100644 --- a/core/jni/android_util_Process.cpp +++ b/core/jni/android_util_Process.cpp @@ -33,6 +33,7 @@ #include <algorithm> #include <array> +#include <cstring> #include <limits> #include <memory> #include <string> @@ -50,7 +51,6 @@ #include <inttypes.h> #include <pwd.h> #include <signal.h> -#include <string.h> #include <sys/epoll.h> #include <sys/errno.h> #include <sys/pidfd.h> @@ -73,13 +73,13 @@ static constexpr bool kDebugProc = false; // readProcFile() are reading files under this threshold, e.g., // /proc/pid/stat. /proc/pid/time_in_state ends up being about 520 // bytes, so use 1024 for the stack to provide a bit of slack. -static constexpr ssize_t kProcReadStackBufferSize = 1024; +static constexpr size_t kProcReadStackBufferSize = 1024; // The other files we read from proc tend to be a bit larger (e.g., // /proc/stat is about 3kB), so once we exhaust the stack buffer, // retry with a relatively large heap-allocated buffer. We double // this size and retry until the whole file fits. -static constexpr ssize_t kProcReadMinHeapBufferSize = 4096; +static constexpr size_t kProcReadMinHeapBufferSize = 4096; #if GUARD_THREAD_PRIORITY Mutex gKeyCreateMutex; @@ -818,7 +818,6 @@ jintArray android_os_Process_getPids(JNIEnv* env, jobject clazz, } DIR* dirp = opendir(file8); - env->ReleaseStringUTFChars(file, file8); if(dirp == NULL) { @@ -851,6 +850,7 @@ jintArray android_os_Process_getPids(JNIEnv* env, jobject clazz, jintArray newArray = env->NewIntArray(newCount); if (newArray == NULL) { closedir(dirp); + if (curData) env->ReleaseIntArrayElements(lastArray, curData, 0); jniThrowException(env, "java/lang/OutOfMemoryError", NULL); return NULL; } @@ -1047,68 +1047,71 @@ jboolean android_os_Process_readProcFile(JNIEnv* env, jobject clazz, return JNI_FALSE; } - const char* file8 = env->GetStringUTFChars(file, NULL); - if (file8 == NULL) { + auto releaser = [&](const char* jniStr) { env->ReleaseStringUTFChars(file, jniStr); }; + std::unique_ptr<const char[], decltype(releaser)> file8(env->GetStringUTFChars(file, NULL), + releaser); + if (!file8) { jniThrowException(env, "java/lang/OutOfMemoryError", NULL); return JNI_FALSE; } - ::android::base::unique_fd fd(open(file8, O_RDONLY | O_CLOEXEC)); + ::android::base::unique_fd fd(open(file8.get(), O_RDONLY | O_CLOEXEC)); if (!fd.ok()) { if (kDebugProc) { - ALOGW("Unable to open process file: %s\n", file8); + ALOGW("Unable to open process file: %s\n", file8.get()); } - env->ReleaseStringUTFChars(file, file8); return JNI_FALSE; } - env->ReleaseStringUTFChars(file, file8); - // Most proc files we read are small, so we only go through the - // loop once and use the stack buffer. We allocate a buffer big - // enough for the whole file. - - char readBufferStack[kProcReadStackBufferSize]; - std::unique_ptr<char[]> readBufferHeap; - char* readBuffer = &readBufferStack[0]; - ssize_t readBufferSize = kProcReadStackBufferSize; - ssize_t numberBytesRead; - for (;;) { - // By using pread, we can avoid an lseek to rewind the FD - // before retry, saving a system call. - numberBytesRead = pread(fd, readBuffer, readBufferSize, 0); - if (numberBytesRead < 0 && errno == EINTR) { - continue; - } - if (numberBytesRead < 0) { + // Most proc files we read are small, so we go through the loop + // with the stack buffer first. We allocate a buffer big enough + // for most files. + + char stackBuf[kProcReadStackBufferSize]; + std::vector<char> heapBuf; + char* buf = stackBuf; + + size_t remaining = sizeof(stackBuf); + off_t offset = 0; + ssize_t numBytesRead; + + do { + numBytesRead = TEMP_FAILURE_RETRY(pread(fd, buf + offset, remaining, offset)); + if (numBytesRead < 0) { if (kDebugProc) { - ALOGW("Unable to open process file: %s fd=%d\n", file8, fd.get()); + ALOGW("Unable to read process file err: %s file: %s fd=%d\n", + strerror_r(errno, stackBuf, sizeof(stackBuf)), file8.get(), fd.get()); } return JNI_FALSE; } - if (numberBytesRead < readBufferSize) { - break; - } - if (readBufferSize > std::numeric_limits<ssize_t>::max() / 2) { - if (kDebugProc) { - ALOGW("Proc file too big: %s fd=%d\n", file8, fd.get()); + + offset += numBytesRead; + remaining -= numBytesRead; + + if (numBytesRead && !remaining) { + if (buf == stackBuf) { + heapBuf.resize(kProcReadMinHeapBufferSize); + static_assert(kProcReadMinHeapBufferSize > sizeof(stackBuf)); + std::memcpy(heapBuf.data(), stackBuf, sizeof(stackBuf)); + } else { + constexpr size_t MAX_READABLE_PROCFILE_SIZE = 64 << 20; + if (heapBuf.size() >= MAX_READABLE_PROCFILE_SIZE) { + if (kDebugProc) { + ALOGW("Proc file too big: %s fd=%d size=%zu\n", + file8.get(), fd.get(), heapBuf.size()); + } + return JNI_FALSE; + } + heapBuf.resize(2 * heapBuf.size()); } - return JNI_FALSE; + buf = heapBuf.data(); + remaining = heapBuf.size() - offset; } - readBufferSize = std::max(readBufferSize * 2, - kProcReadMinHeapBufferSize); - readBufferHeap.reset(); // Free address space before getting more. - readBufferHeap = std::make_unique<char[]>(readBufferSize); - if (!readBufferHeap) { - jniThrowException(env, "java/lang/OutOfMemoryError", NULL); - return JNI_FALSE; - } - readBuffer = readBufferHeap.get(); - } + } while (numBytesRead != 0); // parseProcLineArray below modifies the buffer while parsing! return android_os_Process_parseProcLineArray( - env, clazz, readBuffer, 0, numberBytesRead, - format, outStrings, outLongs, outFloats); + env, clazz, buf, 0, offset, format, outStrings, outLongs, outFloats); } void android_os_Process_setApplicationObject(JNIEnv* env, jobject clazz, diff --git a/core/jni/android_util_XmlBlock.cpp b/core/jni/android_util_XmlBlock.cpp index 5a444bb1d0ff..c364451057bc 100644 --- a/core/jni/android_util_XmlBlock.cpp +++ b/core/jni/android_util_XmlBlock.cpp @@ -83,7 +83,7 @@ static jlong android_content_XmlBlock_nativeCreateParseState(JNIEnv* env, jobjec return 0; } - ResXMLParser* st = new ResXMLParser(*osb); + ResXMLParser* st = new(std::nothrow) ResXMLParser(*osb); if (st == NULL) { jniThrowException(env, "java/lang/OutOfMemoryError", NULL); return 0; diff --git a/core/jni/android_view_WindowManagerGlobal.cpp b/core/jni/android_view_WindowManagerGlobal.cpp index abc621d8dc90..4202de39adb0 100644 --- a/core/jni/android_view_WindowManagerGlobal.cpp +++ b/core/jni/android_view_WindowManagerGlobal.cpp @@ -69,8 +69,8 @@ void removeInputChannel(const sp<IBinder>& clientToken) { JNIEnv* env = AndroidRuntime::getJNIEnv(); ScopedLocalRef<jobject> clientTokenObj(env, javaObjectForIBinder(env, clientToken)); - env->CallStaticObjectMethod(gWindowManagerGlobal.clazz, gWindowManagerGlobal.removeInputChannel, - clientTokenObj.get()); + env->CallStaticVoidMethod(gWindowManagerGlobal.clazz, gWindowManagerGlobal.removeInputChannel, + clientTokenObj.get()); } int register_android_view_WindowManagerGlobal(JNIEnv* env) { @@ -88,4 +88,4 @@ int register_android_view_WindowManagerGlobal(JNIEnv* env) { return NO_ERROR; } -} // namespace android
\ No newline at end of file +} // namespace android diff --git a/core/jni/com_android_internal_content_FileSystemUtils.cpp b/core/jni/com_android_internal_content_FileSystemUtils.cpp index d426f1240a7f..6c72544a7958 100644 --- a/core/jni/com_android_internal_content_FileSystemUtils.cpp +++ b/core/jni/com_android_internal_content_FileSystemUtils.cpp @@ -87,9 +87,10 @@ bool punchHoles(const char *filePath, const uint64_t offset, IF_ALOGD() { ALOGD("Total number of LOAD segments %zu", programHeaders.size()); - ALOGD("Size before punching holes st_blocks: %" PRIu64 - ", st_blksize: %d, st_size: %" PRIu64 "", - beforePunch.st_blocks, beforePunch.st_blksize, + ALOGD("Size before punching holes st_blocks: %" PRIu64 ", st_blksize: %" PRIu64 + ", st_size: %" PRIu64 "", + static_cast<uint64_t>(beforePunch.st_blocks), + static_cast<uint64_t>(beforePunch.st_blksize), static_cast<uint64_t>(beforePunch.st_size)); } @@ -193,9 +194,10 @@ bool punchHoles(const char *filePath, const uint64_t offset, ALOGD("lstat64 failed for filePath %s, error:%d", filePath, errno); return false; } - ALOGD("Size after punching holes st_blocks: %" PRIu64 ", st_blksize: %d, st_size: %" PRIu64 - "", - afterPunch.st_blocks, afterPunch.st_blksize, + ALOGD("Size after punching holes st_blocks: %" PRIu64 ", st_blksize: %" PRIu64 + ", st_size: %" PRIu64 "", + static_cast<uint64_t>(afterPunch.st_blocks), + static_cast<uint64_t>(afterPunch.st_blksize), static_cast<uint64_t>(afterPunch.st_size)); } @@ -271,8 +273,9 @@ bool punchHolesInZip(const char *filePath, uint64_t offset, uint16_t extraFieldL uint64_t blockSize = beforePunch.st_blksize; IF_ALOGD() { ALOGD("Extra field length: %hu, Size before punching holes st_blocks: %" PRIu64 - ", st_blksize: %d, st_size: %" PRIu64 "", - extraFieldLen, beforePunch.st_blocks, beforePunch.st_blksize, + ", st_blksize: %" PRIu64 ", st_size: %" PRIu64 "", + extraFieldLen, static_cast<uint64_t>(beforePunch.st_blocks), + static_cast<uint64_t>(beforePunch.st_blksize), static_cast<uint64_t>(beforePunch.st_size)); } @@ -346,8 +349,9 @@ bool punchHolesInZip(const char *filePath, uint64_t offset, uint16_t extraFieldL return false; } ALOGD("punchHolesInApk:: Size after punching holes st_blocks: %" PRIu64 - ", st_blksize: %d, st_size: %" PRIu64 "", - afterPunch.st_blocks, afterPunch.st_blksize, + ", st_blksize: %" PRIu64 ", st_size: %" PRIu64 "", + static_cast<uint64_t>(afterPunch.st_blocks), + static_cast<uint64_t>(afterPunch.st_blksize), static_cast<uint64_t>(afterPunch.st_size)); } return true; diff --git a/core/jni/com_android_internal_content_NativeLibraryHelper.cpp b/core/jni/com_android_internal_content_NativeLibraryHelper.cpp index fba0d81d431f..7ad18b83f0d6 100644 --- a/core/jni/com_android_internal_content_NativeLibraryHelper.cpp +++ b/core/jni/com_android_internal_content_NativeLibraryHelper.cpp @@ -17,6 +17,7 @@ #define LOG_TAG "NativeLibraryHelper" //#define LOG_NDEBUG 0 +#include <android-base/properties.h> #include <androidfw/ApkParsing.h> #include <androidfw/ZipFileRO.h> #include <androidfw/ZipUtils.h> @@ -36,6 +37,7 @@ #include <zlib.h> #include <memory> +#include <string> #include "com_android_internal_content_FileSystemUtils.h" #include "core_jni_helpers.h" @@ -125,72 +127,10 @@ sumFiles(JNIEnv*, void* arg, ZipFileRO* zipFile, ZipEntryRO zipEntry, const char return INSTALL_SUCCEEDED; } -/* - * Copy the native library if needed. - * - * This function assumes the library and path names passed in are considered safe. - */ -static install_status_t -copyFileIfChanged(JNIEnv *env, void* arg, ZipFileRO* zipFile, ZipEntryRO zipEntry, const char* fileName) -{ - static const size_t kPageSize = getpagesize(); - void** args = reinterpret_cast<void**>(arg); - jstring* javaNativeLibPath = (jstring*) args[0]; - jboolean extractNativeLibs = *(jboolean*) args[1]; - jboolean debuggable = *(jboolean*) args[2]; - - ScopedUtfChars nativeLibPath(env, *javaNativeLibPath); - - uint32_t uncompLen; - uint32_t when; - uint32_t crc; - - uint16_t method; - off64_t offset; - uint16_t extraFieldLength; - if (!zipFile->getEntryInfo(zipEntry, &method, &uncompLen, nullptr, &offset, &when, &crc, - &extraFieldLength)) { - ALOGE("Couldn't read zip entry info\n"); - return INSTALL_FAILED_INVALID_APK; - } - - // Always extract wrap.sh for debuggable, even if extractNativeLibs=false. This makes it - // easier to use wrap.sh because it only works when it is extracted, see - // frameworks/base/services/core/java/com/android/server/am/ProcessList.java. - bool forceExtractCurrentFile = debuggable && strcmp(fileName, "wrap.sh") == 0; - - if (!extractNativeLibs && !forceExtractCurrentFile) { - // check if library is uncompressed and page-aligned - if (method != ZipFileRO::kCompressStored) { - ALOGE("Library '%s' is compressed - will not be able to open it directly from apk.\n", - fileName); - return INSTALL_FAILED_INVALID_APK; - } - - if (offset % kPageSize != 0) { - ALOGE("Library '%s' is not PAGE(%zu)-aligned - will not be able to open it directly " - "from apk.\n", fileName, kPageSize); - return INSTALL_FAILED_INVALID_APK; - } - -#ifdef ENABLE_PUNCH_HOLES - // if library is uncompressed, punch hole in it in place - if (!punchHolesInElf64(zipFile->getZipFileName(), offset)) { - ALOGW("Failed to punch uncompressed elf file :%s inside apk : %s at offset: " - "%" PRIu64 "", - fileName, zipFile->getZipFileName(), offset); - } - - // if extra field for this zip file is present with some length, possibility is that it is - // padding added for zip alignment. Punch holes there too. - if (!punchHolesInZip(zipFile->getZipFileName(), offset, extraFieldLength)) { - ALOGW("Failed to punch apk : %s at extra field", zipFile->getZipFileName()); - } -#endif // ENABLE_PUNCH_HOLES - - return INSTALL_SUCCEEDED; - } - +static install_status_t extractNativeLibFromApk(ZipFileRO* zipFile, ZipEntryRO zipEntry, + const char* fileName, + const std::string nativeLibPath, uint32_t when, + uint32_t uncompLen, uint32_t crc) { // Build local file path const size_t fileNameLen = strlen(fileName); char localFileName[nativeLibPath.size() + fileNameLen + 2]; @@ -313,6 +253,88 @@ copyFileIfChanged(JNIEnv *env, void* arg, ZipFileRO* zipFile, ZipEntryRO zipEntr } /* + * Copy the native library if needed. + * + * This function assumes the library and path names passed in are considered safe. + */ +static install_status_t copyFileIfChanged(JNIEnv* env, void* arg, ZipFileRO* zipFile, + ZipEntryRO zipEntry, const char* fileName) { + static const size_t kPageSize = getpagesize(); + void** args = reinterpret_cast<void**>(arg); + jstring* javaNativeLibPath = (jstring*)args[0]; + jboolean extractNativeLibs = *(jboolean*)args[1]; + jboolean debuggable = *(jboolean*)args[2]; + jboolean app_compat_16kb = *(jboolean*)args[3]; + install_status_t ret = INSTALL_SUCCEEDED; + + ScopedUtfChars nativeLibPath(env, *javaNativeLibPath); + + uint32_t uncompLen; + uint32_t when; + uint32_t crc; + + uint16_t method; + off64_t offset; + uint16_t extraFieldLength; + if (!zipFile->getEntryInfo(zipEntry, &method, &uncompLen, nullptr, &offset, &when, &crc, + &extraFieldLength)) { + ALOGE("Couldn't read zip entry info\n"); + return INSTALL_FAILED_INVALID_APK; + } + + // Always extract wrap.sh for debuggable, even if extractNativeLibs=false. This makes it + // easier to use wrap.sh because it only works when it is extracted, see + // frameworks/base/services/core/java/com/android/server/am/ProcessList.java. + bool forceExtractCurrentFile = debuggable && strcmp(fileName, "wrap.sh") == 0; + + if (!extractNativeLibs && !forceExtractCurrentFile) { + // check if library is uncompressed and page-aligned + if (method != ZipFileRO::kCompressStored) { + ALOGE("Library '%s' is compressed - will not be able to open it directly from apk.\n", + fileName); + return INSTALL_FAILED_INVALID_APK; + } + + if (offset % kPageSize != 0) { + // If the library is zip-aligned correctly for 4kb devices and app compat is + // enabled, on 16kb devices fallback to extraction + if (offset % 0x1000 == 0 && app_compat_16kb) { + ALOGI("16kB AppCompat: Library '%s' is not PAGE(%zu)-aligned - falling back to " + "extraction from apk\n", + fileName, kPageSize); + return extractNativeLibFromApk(zipFile, zipEntry, fileName, nativeLibPath.c_str(), + when, uncompLen, crc); + } + + ALOGE("Library '%s' is not PAGE(%zu)-aligned - will not be able to open it directly " + "from apk.\n", + fileName, kPageSize); + return INSTALL_FAILED_INVALID_APK; + } + +#ifdef ENABLE_PUNCH_HOLES + // if library is uncompressed, punch hole in it in place + if (!punchHolesInElf64(zipFile->getZipFileName(), offset)) { + ALOGW("Failed to punch uncompressed elf file :%s inside apk : %s at offset: " + "%" PRIu64 "", + fileName, zipFile->getZipFileName(), offset); + } + + // if extra field for this zip file is present with some length, possibility is that it is + // padding added for zip alignment. Punch holes there too. + if (!punchHolesInZip(zipFile->getZipFileName(), offset, extraFieldLength)) { + ALOGW("Failed to punch apk : %s at extra field", zipFile->getZipFileName()); + } +#endif // ENABLE_PUNCH_HOLES + + return INSTALL_SUCCEEDED; + } + + return extractNativeLibFromApk(zipFile, zipEntry, fileName, nativeLibPath.c_str(), when, + uncompLen, crc); +} + +/* * An iterator over all shared libraries in a zip file. An entry is * considered to be a shared library if all of the conditions below are * satisfied : @@ -498,12 +520,24 @@ static int findSupportedAbi(JNIEnv* env, jlong apkHandle, jobjectArray supported return status; } +static inline bool app_compat_16kb_enabled() { + static const size_t kPageSize = getpagesize(); + + // App compat is only applicable on 16kb-page-size devices. + if (kPageSize != 0x4000) { + return false; + } + + return android::base::GetBoolProperty("bionic.linker.16kb.app_compat.enabled", false); +} + static jint com_android_internal_content_NativeLibraryHelper_copyNativeBinaries(JNIEnv *env, jclass clazz, jlong apkHandle, jstring javaNativeLibPath, jstring javaCpuAbi, jboolean extractNativeLibs, jboolean debuggable) { - void* args[] = { &javaNativeLibPath, &extractNativeLibs, &debuggable }; + jboolean app_compat_16kb = app_compat_16kb_enabled(); + void* args[] = { &javaNativeLibPath, &extractNativeLibs, &debuggable, &app_compat_16kb }; return (jint) iterateOverNativeFiles(env, apkHandle, javaCpuAbi, debuggable, copyFileIfChanged, reinterpret_cast<void*>(args)); } diff --git a/core/jni/com_android_internal_os_Zygote.cpp b/core/jni/com_android_internal_os_Zygote.cpp index 062fab38656d..284c2997f9a9 100644 --- a/core/jni/com_android_internal_os_Zygote.cpp +++ b/core/jni/com_android_internal_os_Zygote.cpp @@ -19,14 +19,6 @@ #include "com_android_internal_os_Zygote.h" -#include <async_safe/log.h> - -// sys/mount.h has to come before linux/fs.h due to redefinition of MS_RDONLY, MS_BIND, etc -#include <sys/mount.h> -#include <linux/fs.h> -#include <sys/types.h> -#include <dirent.h> - #include <algorithm> #include <array> #include <atomic> @@ -41,32 +33,31 @@ #include <android/fdsan.h> #include <arpa/inet.h> +#include <dirent.h> #include <fcntl.h> #include <grp.h> #include <inttypes.h> #include <malloc.h> #include <mntent.h> -#include <paths.h> #include <signal.h> #include <stdio.h> #include <stdlib.h> -#include <sys/auxv.h> #include <sys/capability.h> -#include <sys/cdefs.h> #include <sys/eventfd.h> +#include <sys/mount.h> #include <sys/personality.h> #include <sys/prctl.h> #include <sys/resource.h> #include <sys/socket.h> #include <sys/stat.h> -#define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_ -#include <sys/_system_properties.h> +#include <sys/system_properties.h> #include <sys/time.h> #include <sys/types.h> #include <sys/un.h> #include <sys/wait.h> #include <unistd.h> +#include <async_safe/log.h> #include <android-base/file.h> #include <android-base/logging.h> #include <android-base/properties.h> diff --git a/core/proto/android/app/OWNERS b/core/proto/android/app/OWNERS index a137ea97b3a4..519bf9a7fa4b 100644 --- a/core/proto/android/app/OWNERS +++ b/core/proto/android/app/OWNERS @@ -1,3 +1,3 @@ -per-file appstartinfo.proto = file:/services/core/java/com/android/server/am/OWNERS +per-file appstartinfo.proto = file:/PERFORMANCE_OWNERS per-file location_time_zone_manager.proto = file:platform/frameworks/base:/services/core/java/com/android/server/timezonedetector/OWNERS per-file time_zone_detector.proto = file:platform/frameworks/base:/services/core/java/com/android/server/timezonedetector/OWNERS diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index c71f9bde6bf1..e4c56a613f12 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -155,6 +155,7 @@ <protected-broadcast android:name="android.bluetooth.intent.DISCOVERABLE_TIMEOUT" /> <protected-broadcast android:name="android.bluetooth.action.AUTO_ON_STATE_CHANGED" /> + <protected-broadcast android:name="android.bluetooth.action.CONNECTION_STATE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" /> @@ -240,6 +241,8 @@ <protected-broadcast android:name="android.bluetooth.avrcp-controller.profile.action.FOLDER_LIST" /> <protected-broadcast + android:name="android.bluetooth.avrcp-controller.profile.action.PLAYER_SETTING" /> + <protected-broadcast android:name="android.bluetooth.avrcp-controller.profile.action.TRACK_EVENT" /> <protected-broadcast android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" /> @@ -266,6 +269,7 @@ <protected-broadcast android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.action.HAP_CONNECTION_STATE_CHANGED" /> + <protected-broadcast android:name="android.bluetooth.action.HAP_DEVICE_AVAILABLE" /> <protected-broadcast android:name="android.bluetooth.action.LE_AUDIO_CONNECTION_STATE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.action.LE_AUDIO_ACTIVE_DEVICE_CHANGED" /> <protected-broadcast android:name="android.bluetooth.action.LE_AUDIO_CONF_CHANGED" /> diff --git a/core/res/OWNERS b/core/res/OWNERS index b2b58d557e6f..faed4d80f39b 100644 --- a/core/res/OWNERS +++ b/core/res/OWNERS @@ -53,13 +53,14 @@ per-file res/values/config_battery_saver.xml = file:/services/core/java/com/andr per-file res/values/dimens_car.xml = file:/platform/packages/services/Car:/OWNERS # Device Idle -per-file res/values/config_device_idle.xml = file:/apex/jobscheduler/OWNERS +per-file res/values/config_device_idle.xml = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS # Display Manager per-file res/values/config_display.xml = file:/services/core/java/com/android/server/display/OWNERS # Wear per-file res/*-watch/* = file:/WEAR_OWNERS +per-file res/*-watch-v*/* = file:/WEAR_OWNERS # Performance per-file res/values/config.xml = file:/PERFORMANCE_OWNERS @@ -78,6 +79,11 @@ per-file remote_color_resources_res/values/colors.xml = pbdr@google.com per-file res/values/config_telephony.xml = file:/platform/frameworks/opt/telephony:/OWNERS per-file res/xml/sms_short_codes.xml = file:/platform/frameworks/opt/telephony:/OWNERS +# Input Method Framework +per-file res/*/*input_method* = file:/services/core/java/com/android/server/inputmethod/OWNERS +per-file res/*/*_ime* = file:/services/core/java/com/android/server/inputmethod/OWNERS +per-file res/*/ime_* = file:/services/core/java/com/android/server/inputmethod/OWNERS + # TV Input Framework per-file res/values/config_tv_external_input_logging.xml = file:/services/core/java/com/android/server/tv/OWNERS diff --git a/core/res/res/values-af/strings.xml b/core/res/res/values-af/strings.xml index 0c6d49ef6191..185374006287 100644 --- a/core/res/res/values-af/strings.xml +++ b/core/res/res/values-af/strings.xml @@ -484,7 +484,7 @@ <string name="permdesc_writeCallLog" product="tv" msgid="3934939195095317432">"Laat die program toe om jou Android TV-toestel se oproeprekord te wysig, insluitend data oor inkomende en uitgaande oproepe. Kwaadwillige programme kan dit gebruik om jou oproeprekord uit te vee of te wysig."</string> <string name="permdesc_writeCallLog" product="default" msgid="5903033505665134802">"Laat die program toe om jou foon se oproeprekord, insluitende data oor inkomende en uitgaande oproepe, te verander. Kwaadwillige programme kan dit gebruik om jou oproeprekord uit te vee of te verander."</string> <string name="permlab_bodySensors" msgid="662918578601619569">"Kry toegang tot liggaamsensordata, soos polsslag, terwyl program gebruik word"</string> - <string name="permdesc_bodySensors" product="default" msgid="7652650410295512140">"Gee die program toegang tot liggaamsensordata, soos polsslag, temperatuur en bloedsuurstofpersentasie, terwyl die program gebruik word."</string> + <string name="permdesc_bodySensors" product="default" msgid="7652650410295512140">"Gee die app toegang tot liggaamsensordata, soos polsslag, temperatuur en bloedsuurstofpersentasie, terwyl die app gebruik word."</string> <string name="permlab_bodySensors_background" msgid="4912560779957760446">"Kry toegang tot liggaamsensordata, soos polsslag, terwyl program op agtergrond is"</string> <string name="permdesc_bodySensors_background" product="default" msgid="8870726027557749417">"Gee die program toegang tot liggaamsensordata, soos polsslag, temperatuur en bloedsuurstofpersentasie, terwyl dit op die agtergrond is."</string> <string name="permlab_readCalendar" msgid="6408654259475396200">"Lees kalendergebeurtenisse en -besonderhede"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is te kort. Moet ten minste 4 syfers wees."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Probeer later weer"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Bekyk tans volskerm"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Swiep van die bokant van jou skerm af ondertoe om uit te gaan"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Het dit"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Draai vir ’n beter aansig"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Maak <xliff:g id="NAME">%s</xliff:g> in volskerm oop vir ’n beter aansig"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Toeganklikheidkortpadkieser op skerm"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Toeganklikheidkortpad"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Maak kennisgewingskerm toe"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Kieslys"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media speel/onderbreek"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-paneel op"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-paneel af"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-paneel links"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Hoe dit werk"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Hangend …"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Stel Vingerafdrukslot weer op"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> het nie goed gewerk nie en is uitgevee"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> het nie goed gewerk nie en is uitgevee"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> het nie goed gewerk nie en is uitgevee. Stel dit weer op om jou foon met vingerafdruk te ontsluit."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> het nie goed gewerk nie en is uitgevee. Stel dit weer op om jou foon met jou vingerafdruk te ontsluit."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> kan nie meer herken word nie."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> kan nie meer herken word nie."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> kan nie meer herken word nie. Stel Vingerafdrukslot weer op."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> kan nie meer herken word nie. Stel Vingerafdrukslot weer op."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Stel Gesigslot weer op"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Jou gesigmodel het nie goed gewerk nie en is uitgevee. Stel dit weer op om jou foon met gesig te ontsluit."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Jou gesigmodel kan nie meer herken word nie. Stel Gesigslot weer op."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Stel op"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Nie nou nie"</string> </resources> diff --git a/core/res/res/values-am/strings.xml b/core/res/res/values-am/strings.xml index 39152feaeee9..db51fa3b1aa0 100644 --- a/core/res/res/values-am/strings.xml +++ b/core/res/res/values-am/strings.xml @@ -312,7 +312,7 @@ <string name="foreground_service_tap_for_details" msgid="9078123626015586751">"በባትሪ እና ውሂብ አጠቃቀም ላይ ዝርዝሮችን ለማግኘት መታ ያድርጉ"</string> <string name="foreground_service_multiple_separator" msgid="5002287361849863168">"<xliff:g id="LEFT_SIDE">%1$s</xliff:g>፣ <xliff:g id="RIGHT_SIDE">%2$s</xliff:g>"</string> <string name="safeMode" msgid="8974401416068943888">"የሚያስተማምን ሁነታ"</string> - <string name="android_system_label" msgid="5974767339591067210">"Android ስርዓት"</string> + <string name="android_system_label" msgid="5974767339591067210">"Android ሥርዓት"</string> <string name="user_owner_label" msgid="8628726904184471211">"ወደ የግል መገለጫ ቀይር"</string> <string name="managed_profile_label" msgid="7316778766973512382">"ወደ የስራ መገለጫ ቀይር"</string> <string name="user_owner_app_label" msgid="1553595155465750298">"ወደ የግል <xliff:g id="APP_NAME">%1$s</xliff:g> ቀይር"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ፒን በጣም አጭር ነው። ቢያንስ 4 አሃዝ መሆን አለበት።"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ቆይተው እንደገና ይሞክሩ"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ሙሉ ገፅ በማሳየት ላይ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ለመውጣት ከማያ ገፅዎ አናት ወደታች ያንሸራትቱ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ገባኝ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ለተሻለ ዕይታ ያሽከርክሩ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ለተሻለ ዕይታ <xliff:g id="NAME">%s</xliff:g>ን በሙሉ ገጽ ዕይታ ይክፈቱ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"የማያ ገፅ ላይ ተደራሽነት አቋራጭ መራጭ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"የተደራሽነት አቋራጭ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"የማሳወቂያ ጥላን አሰናብት"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ምናሌ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ሚዲያ አጫውት/ለአፍታ አቁም"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"ከDpad በላይ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"ከDpad በታች"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"ከDpad በስተግራ"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"እንዴት እንደሚሠራ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"በመጠባበቅ ላይ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"በጣት አሻራ መክፈቻን እንደገና ያዋቅሩ"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> በደንብ እየሠራ አልነበረም እና ተሰርዟል"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> እና <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> በደንብ እየሠሩ አልነበረም እና ተሰርዘዋል"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> በደንብ እየሠራ አልነበረም እና ተሰርዟል። ስልክዎን በጣት አሻራ ለመክፈት እንደገና ያዋቅሩት።"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> እና <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> በደንብ እየሠሩ አልነበረም እና ተሰርዘዋል። ስልክዎን በጣት አሻራ ለመክፈት እንደገና ያዋቅሯቸው።"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ከእንግዲህ መለየት አይችልም።"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> እና <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ከእንግዲህ መለየት አይችሉም።"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ከእንግዲህ መለየት አይችልም። በጣት አሻራ መክፈቻን እንደገና ያዋቅሩ።"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> እና <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ከእንግዲህ መለየት አይችሉም። በጣት አሻራ መክፈቻን እንደገና ያዋቅሩ።"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"በመልክ መክፈትን እንደገና ያዋቅሩ"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"የእርስዎ የመልክ ሞዴል በደንብ እየሠራ አልነበረም እና ተሰርዟል። ስልክዎን በመልክ ለመክፈት እንደገና ያዋቅሩት።"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"የመልክ ሞዴልዎ ከእንግዲህ መለየት አይችልም። በመልክ መክፈትን እንደገና ያዋቅሩ።"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ያዋቅሩ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"አሁን አይደለም"</string> </resources> diff --git a/core/res/res/values-ar/strings.xml b/core/res/res/values-ar/strings.xml index 3d066d97ac3c..9197f6e10d31 100644 --- a/core/res/res/values-ar/strings.xml +++ b/core/res/res/values-ar/strings.xml @@ -202,7 +202,7 @@ <string name="ssl_ca_cert_noti_managed" msgid="217337232273211674">"بواسطة <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string> <string name="work_profile_deleted" msgid="5891181538182009328">"تم حذف ملف العمل."</string> <string name="work_profile_deleted_details" msgid="3773706828364418016">"تطبيق المشرف لملف العمل مفقود أو تالف لذا تم حذف ملف العمل والبيانات ذات الصلة. اتصل بالمشرف للحصول على المساعدة."</string> - <string name="work_profile_deleted_description_dpm_wipe" msgid="2477244968924647232">"لم يعد ملفك الشخصي للعمل متاحًا على هذا الجهاز"</string> + <string name="work_profile_deleted_description_dpm_wipe" msgid="2477244968924647232">"لم يعد ملف العمل الخاص بك متاحًا على هذا الجهاز"</string> <string name="work_profile_deleted_reason_maximum_password_failure" msgid="1080323158315663167">"تم إجراء محاولات كثيرة جدًا لإدخال كلمة المرور"</string> <string name="device_ownership_relinquished" msgid="4080886992183195724">"تنازل المشرف عن الجهاز للاستخدام الشخصي"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"تمت إزالة المساحة الخاصّة"</string> @@ -224,7 +224,7 @@ <string name="factory_reset_message" msgid="2657049595153992213">"تعذّر استخدام تطبيق المشرف. سيتم محو بيانات جهازك الآن.\n\nإذا كانت لديك أسئلة، اتصل بمشرف مؤسستك."</string> <string name="printing_disabled_by" msgid="3517499806528864633">"تم إيقاف الطباعة بواسطة <xliff:g id="OWNER_APP">%s</xliff:g>."</string> <string name="personal_apps_suspension_title" msgid="7561416677884286600">"تفعيل ملف العمل"</string> - <string name="personal_apps_suspension_text" msgid="6115455688932935597">"تم حظر تطبيقاتك الشخصية إلى أن تفعِّل ملفك الشخصي للعمل."</string> + <string name="personal_apps_suspension_text" msgid="6115455688932935597">"تم حظر تطبيقاتك الشخصية إلى أن تفعِّل ملف العمل الخاص بك."</string> <string name="personal_apps_suspension_soon_text" msgid="8123898693479590">"سيتم حظر التطبيقات الشخصية في <xliff:g id="DATE">%1$s</xliff:g> في <xliff:g id="TIME">%2$s</xliff:g>. لا يسمح مشرف تكنولوجيا المعلومات في مؤسستك بإيقاف ملف العمل أكثر من <xliff:g id="NUMBER">%3$d</xliff:g> يوم."</string> <string name="personal_apps_suspended_turn_profile_on" msgid="2758012869627513689">"تفعيل"</string> <string name="work_profile_telephony_paused_title" msgid="7690804479291839519">"المكالمات والرسائل غير مفعّلة"</string> @@ -287,7 +287,7 @@ <string name="global_action_settings" msgid="4671878836947494217">"الإعدادات"</string> <string name="global_action_assist" msgid="2517047220311505805">"مساعدة"</string> <string name="global_action_voice_assist" msgid="6655788068555086695">"المساعد الصوتي"</string> - <string name="global_action_lockdown" msgid="2475471405907902963">"إلغاء التأمين"</string> + <string name="global_action_lockdown" msgid="2475471405907902963">"إلغاء الفتح الذكي"</string> <string name="status_bar_notification_info_overflow" msgid="3330152558746563475">"999+"</string> <string name="notification_compact_heads_up_reply" msgid="2425293958371284340">"ردّ"</string> <string name="notification_hidden_text" msgid="2835519769868187223">"إشعار جديد"</string> @@ -301,7 +301,7 @@ <string name="notification_channel_network_status" msgid="2127687368725272809">"حالة الشبكة"</string> <string name="notification_channel_network_alerts" msgid="6312366315654526528">"تنبيهات الشبكة"</string> <string name="notification_channel_network_available" msgid="6083697929214165169">"الشبكة متوفرة"</string> - <string name="notification_channel_vpn" msgid="1628529026203808999">"حالة الشبكة الافتراضية الخاصة"</string> + <string name="notification_channel_vpn" msgid="1628529026203808999">"حالة شبكة VPN"</string> <string name="notification_channel_device_admin" msgid="6384932669406095506">"التنبيهات من مشرف تكنولوجيا المعلومات"</string> <string name="notification_channel_alerts" msgid="5070241039583668427">"التنبيهات"</string> <string name="notification_channel_retail_mode" msgid="3732239154256431213">"عرض توضيحي لبائع التجزئة"</string> @@ -646,7 +646,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"للسماح للتطبيق بقراءة المواقع من مجموعة الوسائط التابعة لك."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"استخدام المقاييس الحيوية"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"استخدام المقاييس الحيوية أو قفل الشاشة"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"إثبات هويتك"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"تأكيد هويتك"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"استخدام المقاييس الحيوية للمتابعة"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"استخدام المقاييس الحيوية أو قفل الشاشة للمتابعة"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"معدّات المقاييس الحيوية غير متاحة."</string> @@ -701,12 +701,12 @@ <string name="fingerprint_icon_content_description" msgid="4741068463175388817">"رمز بصمة الإصبع"</string> <string name="device_unlock_notification_name" msgid="2632928999862915709">"فتح قفل الجهاز"</string> <string name="alternative_unlock_setup_notification_title" msgid="6241508547901933544">"تجربة طريقة أخرى لفتح القفل"</string> - <string name="alternative_face_setup_notification_content" msgid="3384959224091897331">"استخدِم ميزة \"فتح الجهاز بالتعرف على الوجه\" عندما لا يتم التعرف على بصمة إصبعك، مثلاً عندما تكون أصابعك مبتلة."</string> + <string name="alternative_face_setup_notification_content" msgid="3384959224091897331">"استخدِم ميزة \"فتح الجهاز ببصمة الوجه\" عندما لا يتم التعرف على بصمة إصبعك، مثلاً عندما تكون أصابعك مبتلة."</string> <string name="alternative_fp_setup_notification_content" msgid="7454096947415721639">"استخدِم ميزة \"فتح الجهاز ببصمة الإصبع\" عندما لا يتم التعرف على وجهك، مثلاً عند عدم وجود ضوء كافٍ."</string> - <string name="face_recalibrate_notification_name" msgid="7311163114750748686">"فتح الجهاز بالتعرف على الوجه"</string> - <string name="face_recalibrate_notification_title" msgid="2524791952735579082">"مشكلة متعلّقة بميزة \"فتح الجهاز بالتعرف على الوجه\""</string> + <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_sensor_privacy_enabled" msgid="7407126963510598508">"لاستخدام ميزة \"فتح الجهاز بالتعرف على الوجه\"، عليك منح إذن "<b>"الوصول إلى الكاميرا"</b>" في الإعدادات > الخصوصية."</string> + <string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"لاستخدام ميزة \"فتح الجهاز ببصمة الوجه\"، عليك منح إذن "<b>"الوصول إلى الكاميرا"</b>" في الإعدادات > الخصوصية."</string> <string name="fingerprint_recalibrate_notification_name" msgid="1414578431898579354">"فتح الجهاز ببصمة الإصبع"</string> <string name="fingerprint_recalibrate_notification_title" msgid="2406561052064558497">"لا يمكن استخدام مستشعر بصمات الإصبع"</string> <string name="fingerprint_recalibrate_notification_content" msgid="8519935717822194943">"يُرجى التواصل مع مقدِّم خدمات إصلاح."</string> @@ -740,19 +740,19 @@ <string-array name="face_acquired_vendor"> </string-array> <string name="face_error_hw_not_available" msgid="5085202213036026288">"يتعذّر التحقُّق من الوجه. الجهاز غير مُتاح."</string> - <string name="face_error_timeout" msgid="2598544068593889762">"جرِّب \"فتح الجهاز بالتعرف على الوجه\" مرة أخرى."</string> + <string name="face_error_timeout" msgid="2598544068593889762">"جرِّب \"فتح الجهاز ببصمة الوجه\" مرة أخرى."</string> <string name="face_error_no_space" msgid="5649264057026021723">"يتعذَّر تخزين بيانات الوجه الجديد. احذف الوجه القديم أولاً."</string> <string name="face_error_canceled" msgid="2164434737103802131">"تمّ إلغاء عملية مصادقة الوجه."</string> - <string name="face_error_user_canceled" msgid="5766472033202928373">"ألغى المستخدم ميزة \"فتح الجهاز بالتعرف على الوجه\"."</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="8533257333130473422">"أجريت محاولات كثيرة جدًا. ميزة \"فتح الجهاز بالتعرف على الوجه\" غير متاحة."</string> + <string name="face_error_lockout_permanent" msgid="8533257333130473422">"أجريت محاولات كثيرة جدًا. ميزة \"فتح الجهاز ببصمة الوجه\" غير متاحة."</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_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> @@ -1007,7 +1007,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="1229301273156907613">"لا تتوفر شريحة SIM."</string> <string name="lockscreen_missing_sim_message" product="tablet" msgid="3986843848305639161">"لا تتوفر شريحة SIM في الجهاز اللوحي."</string> <string name="lockscreen_missing_sim_message" product="tv" msgid="3903140876952198273">"لا تتوفر شريحة SIM في جهاز Android TV."</string> @@ -1077,7 +1077,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">"فتح قفل رقم التعريف الشخصي لشريحة SIM."</string> <string name="keyguard_accessibility_sim_puk_unlock" msgid="3459003464041899101">"فتح قفل مفتاح PUK لشريحة SIM."</string> @@ -1355,7 +1355,7 @@ <item msgid="5520925862115353992">"Wi-Fi"</item> <item msgid="1055487873974272842">"بلوتوث"</item> <item msgid="1616528372438698248">"إيثرنت"</item> - <item msgid="9177085807664964627">"شبكة افتراضية خاصة (VPN)"</item> + <item msgid="9177085807664964627">"شبكة VPN"</item> </string-array> <string name="network_switch_type_name_unknown" msgid="3665696841646851068">"نوع شبكة غير معروف"</string> <string name="accept" msgid="5447154347815825107">"قبول"</string> @@ -1523,8 +1523,8 @@ <string name="permission_request_notification_title" msgid="1810025922441048273">"الإذن مطلوب"</string> <string name="permission_request_notification_with_subtitle" msgid="3743417870360129298">"الإذن مطلوب\nللحساب <xliff:g id="ACCOUNT">%s</xliff:g>."</string> <string name="permission_request_notification_for_app_with_subtitle" msgid="1298704005732851350">"طلب تطبيق <xliff:g id="APP">%1$s</xliff:g> الإذن بالدخول\nإلى حساب <xliff:g id="ACCOUNT">%2$s</xliff:g>."</string> - <string name="forward_intent_to_owner" msgid="4620359037192871015">"أنت تستخدم هذا التطبيق خارج ملفك الشخصي للعمل"</string> - <string name="forward_intent_to_work" msgid="3620262405636021151">"أنت تستخدم هذا التطبيق في ملفك الشخصي للعمل"</string> + <string name="forward_intent_to_owner" msgid="4620359037192871015">"أنت تستخدم هذا التطبيق خارج ملف العمل الخاص بك"</string> + <string name="forward_intent_to_work" msgid="3620262405636021151">"أنت تستخدم هذا التطبيق في ملف العمل الخاص بك"</string> <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> @@ -1534,15 +1534,15 @@ <string name="vr_listener_binding_label" msgid="8013112996671206429">"مستمع واقع افتراضي"</string> <string name="condition_provider_service_binding_label" msgid="8490641013951857673">"موفر الحالة"</string> <string name="notification_ranker_binding_label" msgid="432708245635563763">"خدمة ترتيب أهمية الإشعارات"</string> - <string name="vpn_title" msgid="5906991595291514182">"تم تفعيل الشبكة الافتراضية الخاصة (VPN)"</string> + <string name="vpn_title" msgid="5906991595291514182">"تم تفعيل شبكة VPN"</string> <string name="vpn_title_long" msgid="6834144390504619998">"تم تفعيل VPN بواسطة <xliff:g id="APP">%s</xliff:g>"</string> <string name="vpn_text" msgid="2275388920267251078">"انقر لإدارة الشبكة."</string> <string name="vpn_text_long" msgid="278540576806169831">"تم الاتصال بـ <xliff:g id="SESSION">%s</xliff:g>. انقر لإدارة الشبكة."</string> - <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"جارٍ الاتصال بشبكة افتراضية خاصة (VPN) دائمة التفعيل..."</string> - <string name="vpn_lockdown_connected" msgid="2853127976590658469">"تم الاتصال بشبكة افتراضية خاصة (VPN) دائمة التفعيل"</string> - <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"تم قطع الاتصال بالشبكة الافتراضية الخاصة (VPN) التي يتم تشغيلها دائمًا"</string> + <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"جارٍ الاتصال بشبكة VPN دائمة التفعيل..."</string> + <string name="vpn_lockdown_connected" msgid="2853127976590658469">"تم الاتصال بشبكة VPN دائمة التفعيل"</string> + <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"تم قطع الاتصال بشبكة VPN التي يتم تشغيلها دائمًا"</string> <string name="vpn_lockdown_error" msgid="4453048646854247947">"تعذّر الاتصال بشبكة VPN التي يتم تشغيلها دائمًا."</string> - <string name="vpn_lockdown_config" msgid="8331697329868252169">"تغيير إعدادات الشبكة أو الشبكة الافتراضية الخاصة (VPN)"</string> + <string name="vpn_lockdown_config" msgid="8331697329868252169">"تغيير إعدادات الشبكة أو شبكة VPN"</string> <string name="upload_file" msgid="8651942222301634271">"اختيار ملف"</string> <string name="no_file_chosen" msgid="4146295695162318057">"لم يتم اختيار أي ملف"</string> <string name="reset" msgid="3865826612628171429">"إعادة الضبط"</string> @@ -1653,7 +1653,7 @@ <string name="SetupCallDefault" msgid="5581740063237175247">"هل تريد قبول المكالمة؟"</string> <string name="activity_resolver_use_always" msgid="5575222334666843269">"دائمًا"</string> <string name="activity_resolver_use_once" msgid="948462794469672658">"مرة واحدة فقط"</string> - <string name="activity_resolver_work_profiles_support" msgid="4071345609235361269">"لا يدعم %1$s الملفات الشخصية للعمل"</string> + <string name="activity_resolver_work_profiles_support" msgid="4071345609235361269">"لا يدعم %1$s ملفات العمل"</string> <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> @@ -1770,7 +1770,7 @@ <string name="user_switching_message" msgid="1912993630661332336">"جارٍ التبديل إلى <xliff:g id="NAME">%1$s</xliff:g>…"</string> <string name="user_logging_out_message" msgid="7216437629179710359">"جارٍ الخروج <xliff:g id="NAME">%1$s</xliff:g>…"</string> <string name="owner_name" msgid="8713560351570795743">"المالك"</string> - <string name="guest_name" msgid="8502103277839834324">"ضيف"</string> + <string name="guest_name" msgid="8502103277839834324">"وضع الضيف"</string> <string name="error_message_title" msgid="4082495589294631966">"خطأ"</string> <string name="error_message_change_not_allowed" msgid="843159705042381454">"لا يسمح المشرف بإجراء هذا التغيير"</string> <string name="app_not_found" msgid="3429506115332341800">"لم يتم العثور على تطبيق يمكنه التعامل مع هذا الإجراء."</string> @@ -1887,8 +1887,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"رقم التعريف الشخصي أقصر مما يلزم، يجب ألا يقل عن ٤ أرقام. "</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"أعد المحاولة لاحقًا"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"جارٍ العرض بملء الشاشة"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"للخروج، مرِّر سريعًا من أسفل الشاشة لأعلاها"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"حسنًا"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"يمكنك تدوير الجهاز لرؤية شاشة معاينة الكاميرا بشكل أوضح."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"عليك فتح \"<xliff:g id="NAME">%s</xliff:g>\" في وضع ملء الشاشة لرؤية شاشة معاينة الكاميرا بشكل أوضح."</string> @@ -2196,6 +2195,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"أداة اختيار اختصارات أدوات تمكين الوصول على الشاشة"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"اختصارات أدوات تمكين الوصول"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"إغلاق مركز الإشعارات"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"القائمة"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"تشغيل الوسائط أو إيقافها مؤقتًا"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"زرّ الاتجاه للأعلى"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"زرّ الاتجاه للأسفل"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"زرّ الاتجاه لليسار"</string> @@ -2220,7 +2221,7 @@ <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_work" msgid="6286176185835401931">"هل تريد فتح تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في ملفك الشخصي للعمل؟"</string> + <string name="miniresolver_open_work" msgid="6286176185835401931">"هل تريد فتح تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في ملف العمل الخاص بك؟"</string> <string name="miniresolver_open_in_personal" msgid="807427577794490375">"هل تريد فتح المحتوى في تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في الملف الشخصي؟"</string> <string name="miniresolver_open_in_work" msgid="941341494673509916">"هل تريد فتح المحتوى في تطبيق \"<xliff:g id="APP">%s</xliff:g>\" في ملف العمل؟"</string> <string name="miniresolver_call_in_work" msgid="528779988307529039">"هل تريد الاتصال من تطبيق العمل؟"</string> @@ -2422,12 +2423,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"طريقة العمل"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"بانتظار الإزالة من الأرشيف…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"إعادة إعداد ميزة \"فتح الجهاز ببصمة الإصبع\""</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"هناك مشكلة في <xliff:g id="FINGERPRINT">%s</xliff:g> وتم حذفها"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"هناك مشكلة في <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> وتم حذفهما"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"هناك مشكلة في <xliff:g id="FINGERPRINT">%s</xliff:g> وتم حذفها. يُرجى إعدادها مرة أخرى لفتح قفل هاتفك باستخدام بصمة الإصبع."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"هناك مشكلة في <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> وتم حذفهما. يُرجى إعادة إعدادهما لفتح قفل هاتفك باستخدام بصمة الإصبع."</string> - <string name="face_dangling_notification_title" msgid="947852541060975473">"إعادة إعداد ميزة \"فتح الجهاز بالتعرّف على الوجه\""</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"هناك مشكلة في نموذج الوجه الخاص بك وتم حذفه. يُرجى إعداده مرة أخرى لفتح قفل هاتفك باستخدام وجهك."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"لا يمكن بعد الآن التعرّف على \"<xliff:g id="FINGERPRINT">%s</xliff:g>\"."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"لا يمكن بعد الآن التعرّف على \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" و\"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\"."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"لا يمكن بعد الآن التعرّف على \"<xliff:g id="FINGERPRINT">%s</xliff:g>\". يجب ضبط ميزة \"فتح الجهاز ببصمة الإصبع\" مجددًا."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"لا يمكن بعد الآن التعرّف على \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" و\"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\". يجب ضبط ميزة \"فتح الجهاز ببصمة الإصبع\" مجددًا."</string> + <string name="face_dangling_notification_title" msgid="947852541060975473">"إعادة إعداد ميزة \"فتح الجهاز ببصمة الوجه\""</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"لا يمكن بعد الآن التعرّف على نموذج الوجه الخاص بك. يجب ضبط ميزة \"فتح الجهاز ببصمة الوجه\" مجددًا."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"إعداد"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"لاحقًا"</string> </resources> diff --git a/core/res/res/values-as/strings.xml b/core/res/res/values-as/strings.xml index b9c072b2662c..e6e3a4c66333 100644 --- a/core/res/res/values-as/strings.xml +++ b/core/res/res/values-as/strings.xml @@ -606,12 +606,12 @@ <string name="permdesc_bluetooth_scan" product="default" msgid="6540723536925289276">"এপ্টোক নিকটৱৰ্তী ব্লুটুথ ডিভাইচ বিচাৰি উলিয়াবলৈ আৰু সেইসমূহৰ সৈতে পেয়াৰ কৰিবলৈ অনুমতি দিয়ে"</string> <string name="permlab_bluetooth_connect" msgid="6657463246355003528">"পেয়াৰ কৰা ব্লুটুথ ডিভাইচৰ সৈতে সংযোগ কৰক"</string> <string name="permdesc_bluetooth_connect" product="default" msgid="4546016548795544617">"এপ্টোক পেয়াৰ কৰা ব্লুটুথ ডিভাইচৰ সৈতে সংযোগ কৰিবলৈ অনুমতি দিয়ে"</string> - <string name="permlab_bluetooth_advertise" msgid="2781147747928853177">"নিকটৱৰ্তী ব্লুটুথ ডিভাইচত বিজ্ঞাপন প্ৰচাৰ কৰা"</string> - <string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"এপ্টোক নিকটৱৰ্তী ব্লুটুথ ডিভাইচত বিজ্ঞাপন প্ৰচাৰ কৰিবলৈ দিয়ে"</string> + <string name="permlab_bluetooth_advertise" msgid="2781147747928853177">"নিকটৱৰ্তী ব্লুটুথ ডিভাইচত বিজ্ঞাপন প্ৰচাৰাভিযান কৰা"</string> + <string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"এপ্টোক নিকটৱৰ্তী ব্লুটুথ ডিভাইচত বিজ্ঞাপন প্ৰচাৰাভিযান কৰিবলৈ দিয়ে"</string> <string name="permlab_uwb_ranging" msgid="8141915781475770665">"নিকটৱৰ্তী আল্ট্ৰা-ৱাইডবেণ্ড ডিভাইচৰ মাজৰ আপেক্ষিক স্থান নিৰ্ধাৰণ কৰক"</string> <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"এপ্টোক নিকটৱৰ্তী আল্ট্ৰা-ৱাইডবেণ্ড ডিভাইচসমূহৰ মাজৰ আপেক্ষিক স্থান নিৰ্ধাৰণ কৰিবলৈ অনুমতি দিয়ক"</string> <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"নিকটৱৰ্তী ৱাই-ফাই ডিভাইচসমূহৰ সৈতে ভাব বিনিময় কৰক"</string> - <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"এপ্টোক বিজ্ঞাপন প্ৰচাৰ কৰিবলৈ, সংযোগ কৰিবলৈ আৰু নিকটৱৰ্তী ৱাই-ফাই ডিভাইচৰ আপেক্ষিক স্থান নিৰ্ধাৰণ কৰিবলৈ অনুমতি দিয়ে"</string> + <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"এপ্টোক বিজ্ঞাপন প্ৰচাৰাভিযান কৰিবলৈ, সংযোগ কৰিবলৈ আৰু নিকটৱৰ্তী ৱাই-ফাই ডিভাইচৰ আপেক্ষিক স্থান নিৰ্ধাৰণ কৰিবলৈ অনুমতি দিয়ে"</string> <string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"অগ্ৰাধিকাৰ দিয়া NFC পৰিশোধ সেৱাৰ তথ্য"</string> <string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"এপ্টোক অগ্ৰাধিকাৰ দিয়া nfc পৰিশোধ সেৱাৰ পঞ্জীকৃত সহায়কসমূহ আৰু পৰিশোধ কৰিব লগা লক্ষ্যস্থান দৰে তথ্য পাবলৈ অনুমতি দিয়ে।"</string> <string name="permlab_nfc" msgid="1904455246837674977">"নিয়েৰ ফিল্ড কমিউনিকেশ্বন নিয়ন্ত্ৰণ কৰক"</string> @@ -1354,7 +1354,7 @@ <item msgid="9177085807664964627">"ভিপিএন"</item> </string-array> <string name="network_switch_type_name_unknown" msgid="3665696841646851068">"অজ্ঞাত প্ৰকাৰৰ নেটৱৰ্ক"</string> - <string name="accept" msgid="5447154347815825107">"স্বীকাৰ কৰক"</string> + <string name="accept" msgid="5447154347815825107">"গ্ৰহণ কৰক"</string> <string name="decline" msgid="6490507610282145874">"প্ৰত্যাখ্যান কৰক"</string> <string name="select_character" msgid="3352797107930786979">"বর্ণ লিখক"</string> <string name="sms_control_title" msgid="4748684259903148341">"এছএমএছ বার্তাবোৰ পঠিয়াই থকা হৈছে"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"পিনটো অতি চুটি। কমেও ৪টা সংখ্যাৰ হ\'ব লাগিব।"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"পাছত আকৌ চেষ্টা কৰক"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"স্ক্ৰীন পূৰ্ণৰূপত চাই আছে"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"বাহিৰ হ’বলৈ, আপোনাৰ স্ক্ৰীনখনৰ একেবাৰে ওপৰৰ পৰা তললৈ ছোৱাইপ কৰক"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"বুজি পালোঁ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ভালকৈ চাবলৈ ঘূৰাওক"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ভালকৈ চাবলৈ <xliff:g id="NAME">%s</xliff:g> পূৰ্ণ স্ক্ৰীনত খোলক"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"স্ক্ৰীনত সাধ্য সুবিধাসমূহৰ শ্বৰ্টকাট বাছনি কৰাৰ সুবিধা"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"সাধ্য সুবিধাৰ শ্বৰ্টকাট"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"জাননী পেনেল অগ্ৰাহ্য কৰক"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"মেনু"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"মিডিয়া প্লে’/পজ কৰক"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"ডিপেডৰ ওপৰফালৰ বুটাম"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"ডিপেডৰ তলফালৰ বুটাম"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"ডিপেডৰ বাওঁফালৰ বুটাম"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ই কেনেকৈ কাম কৰে"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"বিবেচনাধীন হৈ আছে..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ফিংগাৰপ্ৰিণ্ট আনলক পুনৰ ছেট আপ কৰক"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g>এ ভালদৰে কাম কৰা নাছিল আৰু সেইটো মচি পেলোৱা হৈছে"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> আৰু <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>এ ভালদৰে কাম কৰা নাছিল আৰু সেয়া মচি পেলোৱা হৈছে"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g>এ ভালদৰে কাম কৰা নাছিল আৰু সেইটো মচি পেলোৱা হৈছে। ফিংগাৰপ্ৰিণ্টৰ জৰিয়তে আপোনাৰ ফ’নটো আনলক কৰিবলৈ এইটো পুনৰ ছেট আপ কৰক।"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> আৰু <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>এ ভালদৰে কাম কৰা নাছিল আৰু সেয়া মচি পেলোৱা হৈছে। ফিংগাৰপ্ৰিণ্টৰ জৰিয়তে আপোনাৰ ফ’নটো আনলক কৰিবলৈ সেয়া পুনৰ ছেট আপ কৰক।"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> আৰু চিনাক্ত কৰিব নোৱাৰি।"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> আৰু <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> আৰু চিনাক্ত কৰিব নোৱাৰি।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> আৰু চিনাক্ত কৰিব নোৱাৰি। ফিংগাৰপ্ৰিণ্ট আনলক পুনৰ ছেট আপ কৰক।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> আৰু <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> আৰু চিনাক্ত কৰিব নোৱাৰি। ফিংগাৰপ্ৰিণ্ট আনলক পুনৰ ছেট আপ কৰক।"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ফে’চ আনলক পুনৰ ছেট আপ কৰক"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"আপোনাৰ মুখাৱয়বৰ মডেলটোৱে ভালদৰে কাম কৰা নাছিল আৰু সেইটো মচি পেলোৱা হৈছে। মুখাৱয়বৰ জৰিয়তে আপোনাৰ ফ’নটো আনলক কৰিবলৈ এইটো পুনৰ ছেট আপ কৰক।"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"আপোনাৰ মুখাৱয়বৰ মডেলটো আৰু চিনাক্ত কৰিব নোৱাৰি। ফে’চ আনলক পুনৰ ছেট আপ কৰক।"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ছেট আপ কৰক"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"এতিয়া নহয়"</string> </resources> diff --git a/core/res/res/values-az/strings.xml b/core/res/res/values-az/strings.xml index 32210f7a5bf0..dee443e60912 100644 --- a/core/res/res/values-az/strings.xml +++ b/core/res/res/values-az/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PİN çox qısadır. Ən azı 4 rəqəm olmalıdır."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Daha sonra yenidən yoxlayın."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Tam ekrana baxış"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Çıxmaq üçün ekranın yuxarısından aşağı çəkin"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Anladım"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Daha yaxşı görünüş üçün fırladın"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Yaxşı görmək üçün <xliff:g id="NAME">%s</xliff:g> tətbiqini tam ekranda açın"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekranda Əlçatımlılıq Qısayolu Seçicisi"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Əlçatımlılıq Qısayolu"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Bildiriş Göstərişini qapadın"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menyu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Medianı oxudun/durdurun"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Yuxarı"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Aşağı"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Sola"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Şəxsi sahə"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Həssas bildiriş kontenti gizlədildi"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Güvənlik üçün tətbiq kontenti ekran paylaşımından gizlədildi"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Tətbiq kontenti güvənlik məsələlərinə görə ekran paylaşımından gizlədildi"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Peykə avtomatik qoşulub"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Mobil və ya Wi-Fi şəbəkəsi olmadan mesaj göndərə və qəbul edə bilərsiniz"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Mesajı açın"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Haqqında"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Gözləmədə..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Barmaqla Kilidaçmanı yenidən ayarlayın"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> yaxşı işləmirdi və silindi"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> və <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> yaxşı işləmirdi və silindi"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> yaxşı işləmirdi və silindi. Telefonu barmaq izi ilə kiliddən çıxarmaq üçün onu yenidən ayarlayın."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> və <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> yaxşı işləmirdi və silindi. Telefonu barmaq izi ilə kiliddən çıxarmaq üçün onları yenidən ayarlayın."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> artıq tanınmır."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> və <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> artıq tanınmır."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> artıq tanınmır. Barmaqla Kilidaçmanı yenidən ayarlayın."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> və <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> artıq tanınmır. Barmaqla Kilidaçmanı yenidən ayarlayın."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Üzlə Kilidaçmanı yenidən ayarlayın"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Üz modeliniz yaxşı işləmirdi və silindi. Telefonu üzlə kiliddən çıxarmaq üçün onu yenidən ayarlayın."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Üz modeliniz artıq tanınmır. Üzlə Kilidaçmanı yenidən ayarlayın."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Ayarlayın"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"İndi yox"</string> </resources> diff --git a/core/res/res/values-b+sr+Latn/strings.xml b/core/res/res/values-b+sr+Latn/strings.xml index ac018832a4d4..43c4b4ec1b2b 100644 --- a/core/res/res/values-b+sr+Latn/strings.xml +++ b/core/res/res/values-b+sr+Latn/strings.xml @@ -517,11 +517,11 @@ <string name="permlab_activityRecognition" msgid="1782303296053990884">"prepoznavanje fizičkih aktivnosti"</string> <string name="permdesc_activityRecognition" msgid="8667484762991357519">"Ova aplikacija može da prepozna fizičke aktivnosti."</string> <string name="permlab_camera" msgid="6320282492904119413">"snimanje fotografija i videa"</string> - <string name="permdesc_camera" msgid="5240801376168647151">"Ova aplikacija može da snima slike i video snimke pomoću kamere dok se aplikacija koristi."</string> - <string name="permlab_backgroundCamera" msgid="7549917926079731681">"da snima slike i video snimke u pozadini"</string> + <string name="permdesc_camera" msgid="5240801376168647151">"Ova aplikacija može da snima slike i video pomoću kamere dok se aplikacija koristi."</string> + <string name="permlab_backgroundCamera" msgid="7549917926079731681">"da snima slike i video u pozadini"</string> <string name="permdesc_backgroundCamera" msgid="1615291686191138250">"Ova aplikacija može da snima fotografije i video snimke pomoću kamere u bilo kom trenutku."</string> <string name="permlab_systemCamera" msgid="3642917457796210580">"Dozvolite nekoj aplikaciji ili usluzi da pristupa kamerama sistema da bi snimala slike i video snimke"</string> - <string name="permdesc_systemCamera" msgid="5938360914419175986">"Ova privilegovana sistemska aplikacija može da snima slike i video snimke pomoću kamere sistema u bilo kom trenutku. Aplikacija treba da ima i dozvolu android.permission.CAMERA"</string> + <string name="permdesc_systemCamera" msgid="5938360914419175986">"Ova privilegovana sistemska aplikacija može da snima slike i video pomoću kamere sistema u bilo kom trenutku. Aplikacija treba da ima i dozvolu android.permission.CAMERA"</string> <string name="permlab_cameraOpenCloseListener" msgid="5548732769068109315">"Dozvolite aplikaciji ili usluzi da dobija povratne pozive o otvaranju ili zatvaranju uređaja sa kamerom."</string> <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Ova aplikacija može da dobija povratne pozive kada se bilo koji uređaj sa kamerom otvara ili zatvara (pomoću neke aplikacije)."</string> <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Dozvolite aplikaciji ili usluzi da pristupa kameri kao korisnik sistema bez grafičkog korisničkog interfejsa."</string> @@ -643,7 +643,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Dozvoljava aplikaciji da čita lokacije iz medijske kolekcije."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Koristite biometriju"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Koristite biometriju ili otključavanje ekrana"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Potvrdite svoj identitet"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Potvrdite identitet"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Koristite biometrijski podatak da biste nastavili"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Koristite biometrijski podatak ili otključavanje ekrana da biste nastavili"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"Biometrijski hardver nije dostupan"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN je prekratak. Mora da ima bar 4 cifre."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Probajte ponovo kasnije"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Prikazuje se ceo ekran"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Da biste zatvorili, prevucite nadole od vrha ekrana"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Važi"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotirajte radi boljeg prikaza"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otvorite aplikaciju <xliff:g id="NAME">%s</xliff:g> preko celog ekrana da biste bolje videli"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Alatka za biranje prečica za pristupačnost na ekranu"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Prečica za pristupačnost"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Odbaci traku sa obaveštenjima"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meni"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Pusti/pauziraj medije"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"nagore na D-pad-u"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"nadole na D-pad-u"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"nalevo na D-pad-u"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Princip rada"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Na čekanju..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Ponovo podesite otključavanje otiskom prsta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> nije funkcionisao i izbrisali smo ga"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu funkcionisali i izbrisali smo ih"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> nije funkcionisao i izbrisali smo ga. Ponovo ga podesite da biste telefon otključavali otiskom prsta."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu funkcionisali i izbrisali smo ih. Ponovo ih podesite da biste telefon otključavali otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> više ne može da se prepozna."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> više ne mogu da se prepoznaju."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> više ne može da se prepozna. Ponovo podesite otključavanje otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> više ne mogu da se prepoznaju. Ponovo podesite otključavanje otiskom prsta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Ponovo podesite otključavanje licem"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Vaš model lica nije funkcionisao i izbrisali smo ga. Ponovo ga podesite da biste telefon otključavali licem."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Vaš model lica više ne može da se prepozna. Ponovo podesite otključavanje licem."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Podesi"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne sada"</string> </resources> diff --git a/core/res/res/values-be/strings.xml b/core/res/res/values-be/strings.xml index cbcc90a58899..0fe8b14305f0 100644 --- a/core/res/res/values-be/strings.xml +++ b/core/res/res/values-be/strings.xml @@ -168,7 +168,7 @@ <string name="scNullCipherIssueActionSettings" msgid="5888857706424639946">"Налады сеткавай бяспекі"</string> <string name="scNullCipherIssueActionLearnMore" msgid="7896642417214757769">"Даведацца больш"</string> <string name="scNullCipherIssueActionGotIt" msgid="8747796640866585787">"ОК"</string> - <string name="fcComplete" msgid="1080909484660507044">"Код аб\'екта завершаны."</string> + <string name="fcComplete" msgid="1080909484660507044">"Код аб’екта завершаны."</string> <string name="fcError" msgid="5325116502080221346">"Праблема падлучэння ці няправільны код функцыі."</string> <string name="httpErrorOk" msgid="6206751415788256357">"ОК"</string> <string name="httpError" msgid="3406003584150566720">"Адбылася памылка сеткі."</string> @@ -420,15 +420,15 @@ <string name="permlab_runInBackground" msgid="541863968571682785">"працаваць у фоне"</string> <string name="permdesc_runInBackground" msgid="4344539472115495141">"Гэта праграма можа працаваць у фоне. Гэта можа прывесці да хутчэйшага спажывання зараду акумулятара."</string> <string name="permlab_useDataInBackground" msgid="783415807623038947">"выкарыстоўваць даныя ў фоне"</string> - <string name="permdesc_useDataInBackground" msgid="1230753883865891987">"Гэта праграма можа выкарыстоўваць даныя ў фоне. Гэта можа прывесці да павелічэння аб\'ёму трафіка."</string> + <string name="permdesc_useDataInBackground" msgid="1230753883865891987">"Гэта праграма можа выкарыстоўваць даныя ў фоне. Гэта можа прывесці да павелічэння аб’ёму трафіка."</string> <string name="permlab_schedule_exact_alarm" msgid="6683283918033029730">"Наладжванне выканання дзеянняў у дакладны час"</string> <string name="permdesc_schedule_exact_alarm" msgid="8198009212013211497">"Гэта праграма зможа наладжваць выкананне задач у патрэбны час у будучыні і будзе працаваць, нават калі вы не выкарыстоўваеце прыладу."</string> <string name="permlab_use_exact_alarm" msgid="348045139777131552">"Уключэнне будзільніка ці паказ напамінаў пра падзею"</string> <string name="permdesc_use_exact_alarm" msgid="7033761461886938912">"Гэта праграма зможа наладжваць выкананне такіх дзеянняў, як уключэнне будзільніка ці паказ напамінаў."</string> <string name="permlab_persistentActivity" msgid="464970041740567970">"прымусіць прыкладанне працаваць заўсёды"</string> - <string name="permdesc_persistentActivity" product="tablet" msgid="6055271149187369916">"Дазваляе прыкладанню захоўваць некаторыя пастаянныя часткi ў памяцi. Гэта можа абмежаваць аб\'ём памяці, даступнай для іншых прыкладанняў, i запаволiць працу планшэта."</string> - <string name="permdesc_persistentActivity" product="tv" msgid="6800526387664131321">"Дазваляе праграме пастаянна захоўваць некаторыя свае часткі ў памяці прылады. Гэта можа абмежаваць аб\'ём памяці, даступнай для іншых праграм, і запаволіць працу прылады Android TV."</string> - <string name="permdesc_persistentActivity" product="default" msgid="1914841924366562051">"Дазваляе прыкладанню захоўваць некаторыя пастаянныя часткi ў памяцi. Гэта можа абмежаваць аб\'ём памяці, даступнай для іншых прыкладанняў, i запаволiць працу тэлефона."</string> + <string name="permdesc_persistentActivity" product="tablet" msgid="6055271149187369916">"Дазваляе прыкладанню захоўваць некаторыя пастаянныя часткi ў памяцi. Гэта можа абмежаваць аб’ём памяці, даступнай для іншых прыкладанняў, i запаволiць працу планшэта."</string> + <string name="permdesc_persistentActivity" product="tv" msgid="6800526387664131321">"Дазваляе праграме пастаянна захоўваць некаторыя свае часткі ў памяці прылады. Гэта можа абмежаваць аб’ём памяці, даступнай для іншых праграм, і запаволіць працу прылады Android TV."</string> + <string name="permdesc_persistentActivity" product="default" msgid="1914841924366562051">"Дазваляе прыкладанню захоўваць некаторыя пастаянныя часткi ў памяцi. Гэта можа абмежаваць аб’ём памяці, даступнай для іншых прыкладанняў, i запаволiць працу тэлефона."</string> <string name="permlab_foregroundService" msgid="1768855976818467491">"запусціць актыўныя сэрвісы"</string> <string name="permdesc_foregroundService" msgid="8720071450020922795">"Дазваляе праграме выкарыстоўваць асноўныя сэрвісы."</string> <string name="permlab_foregroundServiceCamera" msgid="7814751737955715297">"запуск актыўнага сэрвісу тыпу \"camera\""</string> @@ -460,7 +460,7 @@ <string name="permlab_foregroundServiceSpecialUse" msgid="7973536745876645082">"запуск актыўнага сэрвісу тыпу \"specialUse\""</string> <string name="permdesc_foregroundServiceSpecialUse" msgid="646713654541885919">"Дазваляе праграме выкарыстоўваць актыўныя сэрвісы тыпу \"specialUse\""</string> <string name="permlab_getPackageSize" msgid="375391550792886641">"вымерыць прастору для захоўвання прыкладання"</string> - <string name="permdesc_getPackageSize" msgid="742743530909966782">"Дазваляе прыкладанням атрымліваць яго код, дадзеныя і аб\'ём кэш-памяці"</string> + <string name="permdesc_getPackageSize" msgid="742743530909966782">"Дазваляе прыкладанням атрымліваць яго код, дадзеныя і аб’ём кэш-памяці"</string> <string name="permlab_writeSettings" msgid="8057285063719277394">"змена сістэмных налад"</string> <string name="permdesc_writeSettings" msgid="8293047411196067188">"Дазваляе прыкладаннем змяняць дадзеныя налад сістэмы. Шкоднасныя прыкладанні могуць пашкодзіць канфігурацыю вашай сістэмы."</string> <string name="permlab_receiveBootCompleted" msgid="6643339400247325379">"запуск пры загрузцы сістэмы"</string> @@ -505,7 +505,7 @@ <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Падчас выкарыстання гэта праграма можа атрымліваць ад службаў геалакацыі звесткі пра ваша прыблізнае месцазнаходжанне. Каб праграма мела такія звесткі, на вашай прыладзе павінны быць уключаны службы геалакацыі."</string> <string name="permlab_accessBackgroundLocation" msgid="1721164702777366138">"доступ да вызначэння месцазнаходжання ў фонавым рэжыме"</string> <string name="permdesc_accessBackgroundLocation" msgid="8264885066095638105">"Гэта праграма можа мець доступ да даных пра месцазнаходжанне ў любы час, нават калі яна не выкарыстоўваецца."</string> - <string name="permlab_modifyAudioSettings" msgid="6129039778010031815">"змяняць налады аудыё"</string> + <string name="permlab_modifyAudioSettings" msgid="6129039778010031815">"змяняць налады аўдыя"</string> <string name="permdesc_modifyAudioSettings" msgid="8687227609663124921">"Дазваляе прыкладанням змяняць глабальныя налады гуку, такія як моц і тое, што дынамік выкарыстоўваецца для выхаду."</string> <string name="permlab_recordAudio" msgid="1208457423054219147">"запіс аўдыя"</string> <string name="permdesc_recordAudio" msgid="5857246765327514062">"Гэта праграма падчас яе выкарыстання можа запісваць аўдыя з дапамогай мікрафона."</string> @@ -621,7 +621,7 @@ <string name="permlab_nfcTransactionEvent" msgid="5868209446710407679">"Трасанкцыі з выкарыстаннем ахоўнага элемента"</string> <string name="permdesc_nfcTransactionEvent" msgid="1904286701876487397">"Праграма зможа атрымліваць інфармацыю пра трансакцыі, якія адбываюцца з выкарыстаннем ахоўнага элемента."</string> <string name="permlab_disableKeyguard" msgid="3605253559020928505">"адключэнне блакiроўкi экрана"</string> - <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Дазваляе прыкладанням адключаць блакiроўку клавіятуры і любыя сродкі абароны, звязаныя з паролем. Прыкладам гэтага з\'яўляецца адключэнне тэлефонам блакiроўкi клавіятуры пры атрыманні ўваходнага выкліку і паўторнае ўключэнне блакiроўкi клавіятуры, калі выклік завершаны."</string> + <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Дазваляе прыкладанням адключаць блакiроўку клавіятуры і любыя сродкі абароны, звязаныя з паролем. Прыкладам гэтага з’яўляецца адключэнне тэлефонам блакiроўкi клавіятуры пры атрыманні ўваходнага выкліку і паўторнае ўключэнне блакiроўкi клавіятуры, калі выклік завершаны."</string> <string name="permlab_requestPasswordComplexity" msgid="1808977190557794109">"запытваць узровень складанасці блакіроўкі экрана"</string> <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Дазваляе праграме вызначаць узровень складанасці блакіроўкі экрана (высокі, сярэдні, нізкі ці нулявы), які залежыць ад даўжыні пароля і ад тыпу блакіроўкі экрана. Праграма можа прапанаваць карыстальнікам ускладніць блакіроўку экрана, аднак гэту прапанову можна ігнараваць. Заўважце, што праграма не можа ведаць тып і пароль блакіроўкі экрана, таму што яны захоўваюцца ў зашыфраваным выглядзе."</string> <string name="permlab_postNotification" msgid="4875401198597803658">"паказваць апавяшчэнні"</string> @@ -1433,7 +1433,7 @@ <string name="select_keyboard_layout_notification_title" msgid="5823199895322205589">"Наладзьце прыладу \"<xliff:g id="DEVICE_NAME">%s</xliff:g>\""</string> <string name="select_multiple_keyboards_layout_notification_title" msgid="6999491025126641938">"Наладзьце фізічныя клавіятуры"</string> <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Дакраніцеся, каб выбраць мову і раскладку"</string> - <string name="fast_scroll_alphabet" msgid="8854435958703888376">" АБВГДЕЁЖЗІЙКЛМНОПРСТУЎФХЦЧШ\'ЫЬЭЮЯ"</string> + <string name="fast_scroll_alphabet" msgid="8854435958703888376">" АБВГДЕЁЖЗІЙКЛМНОПРСТУЎФХЦЧШ’ЫЬЭЮЯ"</string> <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Паказваць паверх іншых праграм"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> паказваецца паверх іншых праграм"</string> @@ -1726,7 +1726,7 @@ <string name="accessibility_shortcut_multiple_service_warning" msgid="3740723309483706911">"Утрымліванне націснутымі абедзвюх клавіш гучнасці на працягу некалькіх секунд уключае спецыяльныя магчымасці. У выніку ваша прылада можа пачаць працаваць па-іншаму.\n\nБягучыя функцыі:\n<xliff:g id="SERVICE">%1$s</xliff:g>\nВыбраныя функцыі можна змяніць у меню \"Налады > Спецыяльныя магчымасці\"."</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>\"?"</string> - <string name="accessibility_shortcut_single_service_warning" msgid="6363127705112844257">"Утрымліванне націснутымі абедзвюх клавіш гучнасці на працягу некалькіх секунд уключае службу \"<xliff:g id="SERVICE">%1$s</xliff:g>\", якая з\'яўляецца спецыяльнай магчымасцю. У выніку ваша прылада можа пачаць працаваць па-іншаму.\n\nВы можаце задаць гэта спалучэнне клавіш для іншай функцыі ў меню \"Налады > Спецыяльныя магчымасці\"."</string> + <string name="accessibility_shortcut_single_service_warning" msgid="6363127705112844257">"Утрымліванне націснутымі абедзвюх клавіш гучнасці на працягу некалькіх секунд уключае службу \"<xliff:g id="SERVICE">%1$s</xliff:g>\", якая з’яўляецца спецыяльнай магчымасцю. У выніку ваша прылада можа пачаць працаваць па-іншаму.\n\nВы можаце задаць гэта спалучэнне клавіш для іншай функцыі ў меню \"Налады > Спецыяльныя магчымасці\"."</string> <string name="accessibility_shortcut_on" msgid="5463618449556111344">"Уключыць"</string> <string name="accessibility_shortcut_off" msgid="3651336255403648739">"Не ўключаць"</string> <string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"УКЛЮЧАНА"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-код занадта кароткі. Павінен змяшчаць не менш за 4 лічбы."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Паўтарыце спробу пазней"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Прагляд у поўнаэкранным рэжыме"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Каб выйсці, правядзіце пальцам уніз ад верхняга краю экрана"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Зразумела"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Павярнуць для лепшага прагляду"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Для больш зручнага прагляду адкрыйце праграму \"<xliff:g id="NAME">%s</xliff:g>\", выкарыстоўваючы поўнаэкранны рэжым"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Налада хуткага доступу да спецыяльных магчымасцей на экране"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Хуткі доступ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Закрыць шчыток апавяшчэнняў"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Меню"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Прайграць або прыпыніць медыяфайл"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Уверх на панэлі кіравання"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Уніз на панэлі кіравання"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Улева на панэлі кіравання"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Як гэта працуе"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"У чаканні..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Наладзіць разблакіроўку адбіткам пальца паўторна"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Адбітак пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" не працаваў належным чынам і быў выдалены"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Адбіткі пальцаў \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" не працавалі належным чынам і былі выдалены"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Адбітак пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" не працаваў належным чынам і быў выдалены. Каб мець магчымасць разблакіраваць тэлефон з дапамогай адбітка пальца, наладзьце яго яшчэ раз."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Адбіткі пальцаў \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" не працавалі належным чынам і былі выдалены. Каб мець магчымасць разблакіраваць тэлефон з дапамогай адбітка пальца, наладзьце іх яшчэ раз."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Адбітак пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" больш не можа быць распазнаны."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Адбіткі пальцаў \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" больш не могуць быць распазнаны."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Адбітак пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" больш не можа быць распазнаны. Паўторна наладзьце разблакіроўку адбіткам пальца."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Адбіткі пальцаў \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" больш не могуць быць распазнаны. Паўторна наладзьце разблакіроўку адбіткам пальца."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Паўторна наладзьце распазнаванне твару"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Мадэль твару не працавала належным чынам і была выдалена. Каб мець магчымасць разблакіраваць тэлефон з дапамогай распазнавання твару, наладзьце яго яшчэ раз."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Мадэль твару больш не можа быць распазнана. Паўторна наладзьце распазнаванне твару."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Наладзіць"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не зараз"</string> </resources> diff --git a/core/res/res/values-bg/strings.xml b/core/res/res/values-bg/strings.xml index affa311b4e56..cba94d40fc3d 100644 --- a/core/res/res/values-bg/strings.xml +++ b/core/res/res/values-bg/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ПИН кодът е твърде кратък. Трябва да е поне 4 цифри."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Опитайте отново по-късно"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Изглед на цял екран"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"За изход плъзнете надолу от горната част на екрана"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Разбрах"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Завъртете за по-добър изглед"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Отворете <xliff:g id="NAME">%s</xliff:g> на цял екран за по-добър изглед"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Инструмент за избор на пряк път към достъпността на екрана"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Пряк път за достъпност"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Отхвърляне на падащия панел с известия"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Меню"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Пускане/пауза на мултимедията"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Контролен пад – горе"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Контролен пад – долу"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Контролен пад – ляво"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Начин на работа"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Изчаква..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Повторно настройване на „Отключване с отпечатък“"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Отпечатъкът „<xliff:g id="FINGERPRINT">%s</xliff:g>“ бе изтрит, защото не работеше добре"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Отпечатъците „<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>“ и „<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>“ бяха изтрити, защото не работеха добре"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Отпечатъкът „<xliff:g id="FINGERPRINT">%s</xliff:g>“ бе изтрит, защото не работеше добре. Настройте го отново, за да отключвате телефона си с отпечатък."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Отпечатъците „<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>“ и „<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>“ бяха изтрити, защото не работеха добре. Настройте ги отново, за да отключвате телефона си с отпечатък."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> вече не може да се разпознае."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> вече не могат да бъдат разпознати."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> вече не може да се разпознае. Настройте отново „Отключване с отпечатък“."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> вече не могат да бъдат разпознати. Настройте отново „Отключване с отпечатък“."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Повторно настройване на „Отключване с лице“"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Моделът на лицето ви бе изтрит, защото не работеше добре. Настройте го отново, за да отключвате телефона си с лице."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Моделът на лицето ви вече не може да бъде разпознат. Настройте отново „Отключване с лице“."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Настройване"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не сега"</string> </resources> diff --git a/core/res/res/values-bn/strings.xml b/core/res/res/values-bn/strings.xml index 889de67803f0..19effd366cfd 100644 --- a/core/res/res/values-bn/strings.xml +++ b/core/res/res/values-bn/strings.xml @@ -203,8 +203,8 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"ব্যক্তিগত কাজের জন্য অ্যাডমিন এই ডিভাইস ব্যবহার করার অনুমতি দেয়নি"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"প্রাইভেট স্পেস সরিয়ে দেওয়া হয়েছে"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"এই ম্যানেজ করা ডিভাইসে আপনার সংস্থা প্রাইভেট স্পেসের অনুমতি দেয় না।"</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"ডিভাইসটি পরিচালনা করা হচ্ছে"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"আপনার প্রতিষ্ঠান এই ডিভাইসটি পরিচালনা করে এবং এটির নেটওয়ার্ক ট্রাফিকের উপরে নজর রাখতে পারে। বিশদ বিবরণের জন্য ট্যাপ করুন।,"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"ডিভাইসটি ম্যানেজ করা হচ্ছে"</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"আপনার প্রতিষ্ঠান এই ডিভাইসটি ম্যানেজ করে এবং এটির নেটওয়ার্ক ট্রাফিকের উপরে নজর রাখতে পারে। বিশদ বিবরণের জন্য ট্যাপ করুন।"</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"অ্যাপগুলি আপনার লোকেশন অ্যাক্সেস করতে পারবে"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"আরও জানতে আইটি অ্যাডমিনের সাথে যোগাযোগ করুন"</string> <string name="geofencing_service" msgid="3826902410740315456">"জিওফেন্সিং সার্ভিস"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"পিন খুবই ছোট৷ এটিকে কমপক্ষে ৪ সংখ্যার হতে হবে৷"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"পরে আবার চেষ্টা করুন"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"পূর্ণ স্ক্রিনে দেখা হচ্ছে"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"বেরিয়ে আসতে, আপনার স্ক্রিনের একেবারে উপর থেকে নিচের দিকে সোয়াইপ করুন"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"বুঝেছি"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"আরও ভাল ক্যামেরা ভিউ পাওয়ার জন্য ঘোরান"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"আরও ভাল ভিউয়ের জন্য ফুল স্ক্রিনে <xliff:g id="NAME">%s</xliff:g> খুলুন"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"অন-স্ক্রিন অ্যাক্সেসিবিলিটি শর্টকাট বেছে নেওয়ার বিকল্প"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"অ্যাক্সেসিবিলিটি শর্টকাট"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"বিজ্ঞপ্তি শেড বাতিল করুন"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"মেনু"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"মিডিয়া প্লে/পজ করুন"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"ডিপ্যাড (Dpad)-এর উপরে"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"ডিপ্যাড (Dpad)-এর নিচে"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"ডিপ্যাড (Dpad)-এর বাঁদিকে"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"এটি কীভাবে কাজ করে"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"বাকি আছে…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"\'ফিঙ্গারপ্রিন্ট আনলক\' আবার সেট-আপ করুন"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ভালোভাবে কাজ করছিল না এবং সেটি মুছে ফেলা হয়েছে"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ও <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ভালোভাবে কাজ করছিল না এবং মুছে ফেলা হয়েছে"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ভালোভাবে কাজ করছিল না বলে সেটি মুছে ফেলা হয়েছে। ফিঙ্গারপ্রিন্ট ব্যবহার করে আপনার ফোন আনলক করতে হলে এটি আবার সেট-আপ করুন।"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ও <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ভালোভাবে কাজ করছিল না বলে মুছে ফেলা হয়েছে। ফিঙ্গারপ্রিন্ট ব্যবহার করে আপনার ফোন আনলক করতে হলে সেগুলি আবার সেট-আপ করুন।"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> আর শনাক্ত করা যাবে না।"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ও <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> আর শনাক্ত করা যাবে না।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> আর শনাক্ত করা যাবে না। ফিঙ্গারপ্রিন্ট আনলক আবার সেট-আপ করুন।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ও <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> আর শনাক্ত করা যাবে না। ফিঙ্গারপ্রিন্ট আনলক আবার সেট-আপ করুন।"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"\'ফেস আনলক\' আবার সেট-আপ করুন"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"আপনার ফেস মডেল ভালোভাবে কাজ করছিল না বলে সেটি মুছে ফেলা হয়েছে। ফেস ব্যবহার করে আপনার ফোন আনলক করতে হলে এটি আবার সেট-আপ করুন।"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"আপনার ফেস মডেল আর শনাক্ত করা যাবে না। ফেস আনলক আবার সেট-আপ করুন।"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"সেট-আপ করুন"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"এখন নয়"</string> </resources> diff --git a/core/res/res/values-bs/strings.xml b/core/res/res/values-bs/strings.xml index af9ac5652ba7..0703598815fd 100644 --- a/core/res/res/values-bs/strings.xml +++ b/core/res/res/values-bs/strings.xml @@ -204,7 +204,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"Administrator je ustupio uređaj za ličnu upotrebu"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"Privatni prostor je uklonjen"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"Organizacija ne dozvoljava privatne prostore na ovom uređaju kojim se upravlja."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"Uređajem se upravlja."</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"Uređajem se upravlja"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"Vaša organizacija upravlja ovim uređajem i može pratiti mrežni saobraćaj. Dodirnite za detalje."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"Aplikacije mogu pristupiti vašoj lokaciji"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Za više informacija kontaktirajte IT administratora"</string> @@ -1067,7 +1067,7 @@ <string name="keyguard_accessibility_user_selector" msgid="1466067610235696600">"Biranje korisnika"</string> <string name="keyguard_accessibility_status" msgid="6792745049712397237">"Status"</string> <string name="keyguard_accessibility_camera" msgid="7862557559464986528">"Kamera"</string> - <string name="keygaurd_accessibility_media_controls" msgid="2267379779900620614">"Upravljanje medijima"</string> + <string name="keygaurd_accessibility_media_controls" msgid="2267379779900620614">"Kontrole medija"</string> <string name="keyguard_accessibility_widget_reorder_start" msgid="7066213328912939191">"Promjena rasporeda widgeta je počela."</string> <string name="keyguard_accessibility_widget_reorder_end" msgid="1083806817600593490">"Promjena rasporeda widgeta je završena."</string> <string name="keyguard_accessibility_widget_deleted" msgid="1509738950119878705">"Widget <xliff:g id="WIDGET_INDEX">%1$s</xliff:g> je izbrisan."</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN je prekratak. Mora imati najmanje 4 cifre."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Pokušajte ponovo kasnije."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Prikazuje se cijeli ekran"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Da izađete, prevucite s vrha ekrana nadolje"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Razumijem"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotirajte za bolji prikaz"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otvorite aplikaciju <xliff:g id="NAME">%s</xliff:g> preko cijelog ekrana radi boljeg pregleda"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Okvir za odabir prečice za pristupačnost na ekranu"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Prečica za pristupačnost"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Odbacite lokaciju za obavještenja"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meni"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reprodukcija/pauziranje medijskog sadržaja"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Upravljač gore"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Upravljač dolje"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Upravljač lijevo"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Kako ovo funkcionira"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Na čekanju…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Ponovo postavite otključavanje otiskom prsta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Otisak prsta <xliff:g id="FINGERPRINT">%s</xliff:g> nije dobro funkcionirao, pa je izbrisan"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Otisci prstiju <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu dobro funkcionirali, pa su izbrisani"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Otisak prsta <xliff:g id="FINGERPRINT">%s</xliff:g> nije dobro funkcionirao, pa je izbrisan. Postavite ga ponovo da otključavate telefon otiskom prsta."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Otisci prstiju <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu dobro funkcionirali, pa su izbrisani. Postavite ih ponovo da otključavate telefon otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> se više ne može prepoznati."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> se više ne mogu prepoznati."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> se više ne može prepoznati. Ponovo postavite otključavanje otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> se više ne mogu prepoznati. Ponovo postavite otključavanje otiskom prsta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Ponovo postavite otključavanje licem"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Model lica nije dobro funkcionirao, pa je izbrisan. Postavite ga ponovo da otključavate telefon licem."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Vaš model lica se više ne može prepoznati. Ponovo postavite otključavanje licem."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Postavite"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne sada"</string> </resources> diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml index 66c81e684eda..f691e36e59f8 100644 --- a/core/res/res/values-ca/strings.xml +++ b/core/res/res/values-ca/strings.xml @@ -157,7 +157,7 @@ <string name="scCellularNetworkSecurityTitle" msgid="7752521808690294384">"Seguretat de xarxes mòbils"</string> <string name="scCellularNetworkSecuritySummary" msgid="7042036754550545005">"Encriptació, notificacions de xarxes sense encriptació"</string> <string name="scIdentifierDisclosureIssueTitle" msgid="2898888825129970328">"S\'ha accedit a l\'identificador de dispositiu"</string> - <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"A les <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, una xarxa propera ha registrat l\'identificador únic del teu dispositiu (IMSI or IMEI) mentre s\'utilitzava la SIM de <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>"</string> + <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"A les <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, una xarxa propera ha registrat l\'ID únic del dispositiu (IMSI or IMEI) amb la SIM de <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>"</string> <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"A les <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, una xarxa propera ha registrat l\'identificador únic del teu dispositiu (IMSI or IMEI) mentre s\'utilitzava la SIM de <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>.\n\nAixò vol dir que s\'han registrat la teva ubicació, activitat o identitat. Tot i ser una pràctica habitual, pot suposar un problema per a aquelles persones preocupades per la privadesa."</string> <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"T\'has connectat a la xarxa encriptada <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"La connexió SIM de <xliff:g id="NETWORK_NAME">%1$s</xliff:g> ara és més segura"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"El PIN és massa curt. Ha de tenir quatre dígits com a mínim."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Torna-ho a provar més tard"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Mode de pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Per sortir, llisca cap avall des de la part superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entesos"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Gira per a una millor visualització"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Obre <xliff:g id="NAME">%s</xliff:g> en pantalla completa per a una millor visualització"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selector de dreceres d\'accessibilitat en pantalla"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Drecera d\'accessibilitat"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ignora l\'àrea de notificacions"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menú"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reprodueix o posa en pausa el contingut multimèdia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Creu direccional: amunt"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Creu direccional: avall"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Creu direccional: esquerra"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espai privat"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"S\'ha amagat contingut sensible de les notificacions"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Contingut de l\'aplicació amagat de la compartició de pantalla per motius de seguretat"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Contingut de l\'aplicació amagat de la compartició de pantalla per seguretat"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"S\'ha connectat automàticament a un satèl·lit"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Pots enviar i rebre missatges sense una xarxa mòbil o Wi‑Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Obre Missatges"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Com funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendent..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Torna a configurar Desbloqueig amb empremta digital"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> no funcionava correctament i s\'ha suprimit"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> no funcionaven correctament i s\'han suprimit"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> no funcionava correctament i s\'ha suprimit. Torna a configurar-la per desbloquejar el telèfon amb l\'empremta digital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> no funcionaven correctament i s\'han suprimit. Torna a configurar-les per desbloquejar el telèfon amb l\'empremta digital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ja no es pot reconèixer."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ja no es poden reconèixer."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ja no es pot reconèixer. Torna a configurar Desbloqueig amb empremta digital."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ja no es poden reconèixer. Torna a configurar Desbloqueig amb empremta digital."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Torna a configurar Desbloqueig facial"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"El teu model facial no funcionava correctament i s\'ha suprimit. Torna a configurar-lo per desbloquejar el telèfon amb la cara."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"El teu model facial ja no es pot reconèixer. Torna a configurar Desbloqueig facial."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configura"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ara no"</string> </resources> diff --git a/core/res/res/values-cs/strings.xml b/core/res/res/values-cs/strings.xml index ad43a95f9e44..bce712319540 100644 --- a/core/res/res/values-cs/strings.xml +++ b/core/res/res/values-cs/strings.xml @@ -1437,7 +1437,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789AÁBCČDĎEÉĚFGHCHIÍJKLMNŇOÓPQRŘSŠTŤUÚVWXYÝZŽ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Zobrazení přes ostatní aplikace"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"Aplikace <xliff:g id="NAME">%s</xliff:g> se zobrazuje přes ostatní aplikace"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> se zobrazuje přes ostatní aplikace"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"Aplikace <xliff:g id="NAME">%s</xliff:g> se zobrazuje přes ostatní aplikace"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Pokud nechcete, aby aplikace <xliff:g id="NAME">%s</xliff:g> tuto funkci používala, klepnutím otevřete nastavení a funkci vypněte."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Vypnout"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Kontroluje se <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Kód PIN je příliš krátký. Musí mít alespoň čtyři číslice."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Zkuste to znovu později"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Zobrazení celé obrazovky"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Tento režim ukončíte přejetím prstem dolů z horního okraje obrazovky"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Rozumím"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Otočte obrazovku, abyste lépe viděli"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otevřete aplikaci <xliff:g id="NAME">%s</xliff:g> na celou obrazovku, aby byla lépe vidět"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Výběr zkratky přístupnosti na obrazovce"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Zkratka přístupnosti"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Zavřít panel oznámení"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Nabídka"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Přehrát/pozastavit média"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad nahoru"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad dolů"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad doleva"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Jak to funguje"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Čeká na vyřízení…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Opětovné nastavení odemknutí otiskem prstu"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> nefungoval správně a byl vymazán"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nefungovaly správně a byly vymazány"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> nefungoval správně a byl vymazán. Pokud chcete telefon odemykat otiskem prstu, nastavte jej znovu."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nefungovaly správně a byly vymazány. Pokud chcete telefon odemykat otiskem prstu, nastavte je znovu."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> se nedaří rozpoznat."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> se nedaří rozpoznat."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> se nedaří rozpoznat. Nastavte odemknutí otiskem prstu znovu."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> se nedaří rozpoznat. Nastavte odemknutí otiskem prstu znovu."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Nastavte odemknutí obličejem znovu"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Váš model obličeje nefungoval správně a byl vymazán. Pokud chcete telefon odemykat obličejem, nastavte jej znovu."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Váš model obličeje se nedaří rozpoznat. Nastavte odemknutí obličejem znovu."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Nastavit"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Teď ne"</string> </resources> diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml index e32b0b6201b5..dbc2bdb7fc18 100644 --- a/core/res/res/values-da/strings.xml +++ b/core/res/res/values-da/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Pinkoden er for kort. Den skal være på mindst 4 tal."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Prøv igen senere"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visning i fuld skærm"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Stryg nedad fra toppen af skærmen for at afslutte"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK, det er forstået"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Roter, og få en bedre visning"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Åbn <xliff:g id="NAME">%s</xliff:g> i fuld skærm for at få en bedre visning"</string> @@ -2140,7 +2139,7 @@ <string name="notification_feedback_indicator_promoted" msgid="9030204303764698640">"Denne notifikation blev placeret højere. Tryk for at give feedback."</string> <string name="notification_feedback_indicator_demoted" msgid="8880309924296450875">"Denne notifikation blev placeret lavere. Tryk for at give feedback."</string> <string name="nas_upgrade_notification_title" msgid="8436359459300146555">"Forbedrede notifikationer"</string> - <string name="nas_upgrade_notification_content" msgid="5157550369837103337">"Foreslåede handlinger og svar leveres nu via forbedrede notifikationer. Tilpassede Android-notifikationer understøttes ikke længere."</string> + <string name="nas_upgrade_notification_content" msgid="5157550369837103337">"Foreslåede handlinger og svar leveres nu via forbedrede notifikationer. Adaptive Android-notifikationer understøttes ikke længere."</string> <string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"OK"</string> <string name="nas_upgrade_notification_disable_action" msgid="3794833210043497982">"Deaktiver"</string> <string name="nas_upgrade_notification_learn_more_action" msgid="7011130656195423947">"Få flere oplysninger"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Valg af genvej til hjælpefunktioner på skærmen"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Genvej til hjælpefunktioner"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Luk notifikationspanel"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Afspil medie/sæt medie på pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad, op"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad, ned"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad, venstre"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Sådan fungerer det"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Afventer…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Konfigurer fingeroplåsning igen"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> virkede ikke optimalt og er derfor slettet"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> virkede ikke optimalt og er derfor slettet"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> virkede ikke optimalt og er derfor slettet. Konfigurer den igen for at bruge fingeroplåsning på din telefon."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> virkede ikke optimalt og er derfor slettet. Konfigurer dem igen for at bruge dit fingeraftryk til at låse din telefon op."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> kan ikke længere genkendes."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> kan ikke længere genkendes."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> kan ikke længere genkendes. Konfigurer fingeroplåsning igen."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> kan ikke længere genkendes. Konfigurer fingeroplåsning igen."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Konfigurer ansigtsoplåsning igen"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Din ansigtsmodel virkede ikke optimalt og er derfor slettet. Konfigurer den igen for at bruge ansigtsoplåsning på din telefon."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Din ansigtsmodel kan ikke længere genkendes. Konfigurer ansigtsoplåsning igen."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Konfigurer"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ikke nu"</string> </resources> diff --git a/core/res/res/values-de/strings.xml b/core/res/res/values-de/strings.xml index ca8587902297..ca72dbb2f5b8 100644 --- a/core/res/res/values-de/strings.xml +++ b/core/res/res/values-de/strings.xml @@ -345,7 +345,7 @@ <string name="permgroupdesc_phone" msgid="270048070781478204">"Telefonanrufe tätigen und verwalten"</string> <string name="permgrouplab_sensors" msgid="9134046949784064495">"Körpersensoren"</string> <string name="permgroupdesc_sensors" msgid="2610631290633747752">"auf Sensordaten zu deinen Vitaldaten zugreifen"</string> - <string name="permgrouplab_notifications" msgid="5472972361980668884">"Benachrichtigungen"</string> + <string name="permgrouplab_notifications" msgid="5472972361980668884">"Benachrichtigungen"</string> <string name="permgroupdesc_notifications" msgid="4608679556801506580">"Benachrichtigungen anzeigen"</string> <string name="capability_title_canRetrieveWindowContent" msgid="7554282892101587296">"Fensterinhalte abrufen"</string> <string name="capability_desc_canRetrieveWindowContent" msgid="6195610527625237661">"Die Inhalte eines Fensters, mit dem du interagierst, werden abgerufen."</string> @@ -1573,7 +1573,7 @@ <string name="add_account_button_label" msgid="322390749416414097">"Konto hinzufügen"</string> <string name="number_picker_increment_button" msgid="7621013714795186298">"Verlängern"</string> <string name="number_picker_decrement_button" msgid="5116948444762708204">"Verringern"</string> - <string name="number_picker_increment_scroll_mode" msgid="8403893549806805985">"<xliff:g id="VALUE">%s</xliff:g> berühren und halten."</string> + <string name="number_picker_increment_scroll_mode" msgid="8403893549806805985">"<xliff:g id="VALUE">%s</xliff:g> gedrückt halten."</string> <string name="number_picker_increment_scroll_action" msgid="8310191318914268271">"Zum Verlängern nach oben und zum Verringern nach unten schieben"</string> <string name="time_picker_increment_minute_button" msgid="7195870222945784300">"Minuten verlängern"</string> <string name="time_picker_decrement_minute_button" msgid="230925389943411490">"Minuten verringern"</string> @@ -1600,7 +1600,7 @@ <string name="activitychooserview_choose_application_error" msgid="6937782107559241734">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> konnte nicht gestartet werden."</string> <string name="shareactionprovider_share_with" msgid="2753089758467748982">"Teilen mit"</string> <string name="shareactionprovider_share_with_application" msgid="4902832247173666973">"Mit <xliff:g id="APPLICATION_NAME">%s</xliff:g> teilen"</string> - <string name="content_description_sliding_handle" msgid="982510275422590757">"Schieberegler: Berühren und halten"</string> + <string name="content_description_sliding_handle" msgid="982510275422590757">"Schieberegler: Gedrückt halten"</string> <string name="description_target_unlock_tablet" msgid="7431571180065859551">"Zum Entsperren den Finger über den Bildschirm ziehen"</string> <string name="action_bar_home_description" msgid="1501655419158631974">"Zur Startseite navigieren"</string> <string name="action_bar_up_description" msgid="6611579697195026932">"Nach oben navigieren"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Die PIN ist zu kurz. Sie muss mindestens 4 Ziffern umfassen."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Später erneut versuchen"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Vollbildmodus wird aktiviert"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Wenn du den Modus verlassen möchtest, wische vom oberen Displayrand nach unten"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ok"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Drehen, um die Ansicht zu verbessern"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Du kannst <xliff:g id="NAME">%s</xliff:g> im Vollbildmodus öffnen, um die Ansicht zu verbessern"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Auswahl für Kurzbefehle für Bildschirmbedienungshilfen"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Kurzbefehl für Bedienungshilfen"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Benachrichtigungsleiste schließen"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menü"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Medien wiedergeben/pausieren"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Steuerkreuz nach oben"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Steuerkreuz nach unten"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Steuerkreuz nach links"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Vertrauliches Profil"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Vertrauliche Benachrichtigungsinhalte ausgeblendet"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"App-Inhalte werden aus Sicherheitsgründen bei der Bildschirmfreigabe ausgeblendet"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Aus Sicherheitsgründen werden bei der Bildschirmfreigabe App-Inhalte ausgeblendet"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Automatisch mit Satellit verbunden"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Du kannst Nachrichten ohne Mobilfunknetz oder WLAN senden und empfangen"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Messages öffnen"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"So funktionierts"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Ausstehend…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Entsperrung per Fingerabdruck neu einrichten"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> hat nicht einwandfrei funktioniert und wurde gelöscht"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> und <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> haben nicht einwandfrei funktioniert und wurden gelöscht"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> hat nicht einwandfrei funktioniert und wurde gelöscht. Richte ihn noch einmal ein, um dein Smartphone per Fingerabdruck zu entsperren."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> und <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> haben nicht einwandfrei funktioniert und wurden gelöscht. Richte sie noch einmal ein, um dein Smartphone per Fingerabdruck zu entsperren."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> wird nicht mehr erkannt."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> und <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> werden nicht mehr erkannt."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> wird nicht mehr erkannt. Richte die Entsperrung per Fingerabdruck neu ein."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> und <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> werden nicht mehr erkannt. Richte die Entsperrung per Fingerabdruck neu ein."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Entsperrung per Gesichtserkennung neu einrichten"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Dein Gesichtsmodell hat nicht einwandfrei funktioniert und wurde gelöscht. Richte es noch einmal ein, um dein Smartphone per Gesichtserkennung zu entsperren."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Dein Gesichtsmodell wird nicht mehr erkannt. Richte die Entsperrung per Gesichtserkennung neu ein."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Einrichten"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Nicht jetzt"</string> </resources> diff --git a/core/res/res/values-el/strings.xml b/core/res/res/values-el/strings.xml index cb1d3b10ff43..4fbd9523a730 100644 --- a/core/res/res/values-el/strings.xml +++ b/core/res/res/values-el/strings.xml @@ -1029,7 +1029,7 @@ <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> <string name="lockscreen_failed_attempts_almost_glogin" product="tablet" msgid="3069635524964070596">"Σχεδιάσατε το μοτίβο ξεκλειδώματος εσφαλμένα <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές. Μετά από <xliff:g id="NUMBER_1">%2$d</xliff:g> ανεπιτυχείς προσπάθειες ακόμη, θα σας ζητηθεί να ξεκλειδώσετε το tablet σας με τη χρήση της σύνδεσής σας Google.\n\n Προσπαθήστε ξανά σε <xliff:g id="NUMBER_2">%3$d</xliff:g> δευτερόλεπτα."</string> - <string name="lockscreen_failed_attempts_almost_glogin" product="tv" msgid="6399092175942158529">"Σχεδιάσατε εσφαλμένα το μοτίβο ξεκλειδώματος <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές. Μετά από ακόμα <xliff:g id="NUMBER_1">%2$d</xliff:g> ανεπιτυχείς προσπάθειες, θα σας ζητηθεί να ξεκλειδώσετε τη συσκευή σας Android TV χρησιμοποιώντας τα στοιχεία σύνδεσής σας στο Google.\n\nΠροσπαθήστε ξανά σε <xliff:g id="NUMBER_2">%3$d</xliff:g> δευτερόλεπτα."</string> + <string name="lockscreen_failed_attempts_almost_glogin" product="tv" msgid="6399092175942158529">"Σχεδιάσατε εσφαλμένα το μοτίβο ξεκλειδώματος <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές. Μετά από ακόμα <xliff:g id="NUMBER_1">%2$d</xliff:g> ανεπιτυχείς προσπάθειες, θα σας ζητηθεί να ξεκλειδώσετε τη συσκευή σας Android TV χρησιμοποιώντας τα στοιχεία σύνδεσής σας στην Google.\n\nΠροσπαθήστε ξανά σε <xliff:g id="NUMBER_2">%3$d</xliff:g> δευτερόλεπτα."</string> <string name="lockscreen_failed_attempts_almost_glogin" product="default" msgid="5691623136957148335">"Σχεδιάσατε το μοτίβο ξεκλειδώματος εσφαλμένα <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές. Μετά από <xliff:g id="NUMBER_1">%2$d</xliff:g> ανεπιτυχείς προσπάθειες ακόμη, θα σας ζητηθεί να ξεκλειδώσετε το τηλέφωνό σας με τη χρήση της σύνδεσής σας Google.\n\n Προσπαθήστε ξανά σε <xliff:g id="NUMBER_2">%3$d</xliff:g> δευτερόλεπτα."</string> <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="7914445759242151426">"Προσπαθήσατε να ξεκλειδώσετε εσφαλμένα το tablet <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές. Μετά από <xliff:g id="NUMBER_1">%2$d</xliff:g> προσπάθειες, το tablet θα επαναφερθεί στις εργοστασιακές ρυθμίσεις και όλα τα δεδομένα χρήστη θα χαθούν."</string> <string name="lockscreen_failed_attempts_almost_at_wipe" product="tv" msgid="4275591249631864248">"Δοκιμάσατε να ξεκλειδώσετε τη συσκευή Android TV <xliff:g id="NUMBER_0">%1$d</xliff:g> φορές χωρίς επιτυχία. Μετά από ακόμα <xliff:g id="NUMBER_1">%2$d</xliff:g> ανεπιτυχείς προσπάθειες, θα γίνει επαναφορά των προεπιλεγμένων εργοστασιακών ρυθμίσεων στη συσκευή σας Android TV και όλα τα δεδομένα χρήστη θα χαθούν."</string> @@ -1435,7 +1435,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Εμφάνιση πάνω σε άλλες εφαρμογές"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"Η εφαρμογή <xliff:g id="NAME">%s</xliff:g> προβάλλεται πάνω από άλλες εφαρμογές"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"Η εφαρμογή <xliff:g id="NAME">%s</xliff:g> επικαλύπτει άλλες"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"Η εφαρ. <xliff:g id="NAME">%s</xliff:g> επικαλύπτει άλλες"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Εάν δεν θέλετε να χρησιμοποιείται αυτή η λειτουργία από την εφαρμογή <xliff:g id="NAME">%s</xliff:g>, πατήστε για να ανοίξετε τις ρυθμίσεις και απενεργοποιήστε την."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Απενεργοποίηση"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Έλεγχος <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Το PIN είναι υπερβολικά μικρό. Πρέπει να έχει μέγεθος τουλάχιστον 4 χαρακτήρων."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Δοκιμάστε ξανά αργότερα"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Προβολή σε πλήρη οθόνη"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Για έξοδο, σύρετε προς τα κάτω από το επάνω μέρος της οθόνης"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Το κατάλαβα"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Περιστρέψτε την οθόνη για καλύτερη προβολή"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Ανοίξτε την εφαρμογή <xliff:g id="NAME">%s</xliff:g> σε πλήρη οθόνη για καλύτερη προβολή"</string> @@ -2108,7 +2107,7 @@ <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> - <string name="shortcut_restore_not_supported" msgid="4763198938588468400">"Δεν ήταν δυνατή η επαναφορά της συντόμευσης, επειδή η εφαρμογή δεν υποστηρίζει τη δημιουργία αντιγράφων ασφαλείας και την επαναφορά"</string> + <string name="shortcut_restore_not_supported" msgid="4763198938588468400">"Δεν ήταν δυνατή η επαναφορά της συντόμευσης, επειδή η εφαρμογή δεν υποστηρίζει τη δημιουργία αντιγράφου ασφαλείας και την επαναφορά"</string> <string name="shortcut_restore_signature_mismatch" msgid="579345304221605479">"Δεν ήταν δυνατή η επαναφορά της συντόμευσης, λόγω αναντιστοιχίας της υπογραφής εφαρμογής"</string> <string name="shortcut_restore_unknown_issue" msgid="2478146134395982154">"Δεν ήταν δυνατή η επαναφορά της συντόμευσης"</string> <string name="shortcut_disabled_reason_unknown" msgid="753074793553599166">"Η συντόμευση είναι απενεργοποιημένη"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Επιλογέας συντόμευσης οθόνης για την προσβασιμότητα"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Συντόμευση προσβασιμότητας"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Παράβλεψη πλαισίου σκίασης ειδοποιήσεων"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Μενού"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Αναπαραγωγή/παύση μέσων"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad επάνω"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad κάτω"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad αριστερά"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Πώς λειτουργεί"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Σε εκκρεμότητα…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Επαναρρύθμιση λειτουργίας Ξεκλείδωμα με δακτυλικό αποτύπωμα"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Το δακτυλικό αποτύπωμα <xliff:g id="FINGERPRINT">%s</xliff:g> δεν λειτουργούσε καλά και διαγράφηκε"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Τα δακτυλικά αποτυπώματα <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> και <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> δεν λειτουργούσαν καλά και διαγράφηκαν"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Το δακτυλικό αποτύπωμα <xliff:g id="FINGERPRINT">%s</xliff:g> δεν λειτουργούσε καλά και διαγράφηκε. Ρυθμίστε το ξανά για να ξεκλειδώνετε το τηλέφωνο με το δακτυλικό αποτύπωμά σας."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Τα δακτυλικά αποτυπώματα <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> και <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> δεν λειτουργούσαν καλά και διαγράφηκαν. Ρυθμίστε τα ξανά για να ξεκλειδώνετε το τηλέφωνο με το δακτυλικό αποτύπωμά σας."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Δεν είναι πλέον δυνατή η αναγνώριση του <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Δεν είναι πλέον δυνατή η αναγνώριση του <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> και του <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Δεν είναι πλέον δυνατή η αναγνώριση του <xliff:g id="FINGERPRINT">%s</xliff:g>. Ρυθμίστε ξανά τη λειτουργία Ξεκλείδωμα με δακτυλικό αποτύπωμα."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Δεν είναι πλέον δυνατή η αναγνώριση του <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> και του <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. Ρυθμίστε ξανά τη λειτουργία Ξεκλείδωμα με δακτυλικό αποτύπωμα."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Επαναρρύθμιση λειτουργίας Ξεκλείδωμα με το πρόσωπο"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Το μοντέλο προσώπου δεν λειτουργούσε καλά και διαγράφηκε. Ρυθμίστε το ξανά για να ξεκλειδώνετε το τηλέφωνο με το πρόσωπό σας."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Δεν είναι πλέον δυνατή η αναγνώριση του μοντέλου προσώπου σας. Ρυθμίστε ξανά τη λειτουργία Ξεκλείδωμα με το πρόσωπο."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Ρύθμιση"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Όχι τώρα"</string> </resources> diff --git a/core/res/res/values-en-rAU/strings.xml b/core/res/res/values-en-rAU/strings.xml index e7486488f2a8..6907089d57fc 100644 --- a/core/res/res/values-en-rAU/strings.xml +++ b/core/res/res/values-en-rAU/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is too short. Must be at least four digits."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Try again later"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Got it"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotate for a better view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> in full screen for a better view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"On-screen accessibility shortcut chooser"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Accessibility shortcut"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dismiss notification shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media play/pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"How it works"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pending…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Set up Fingerprint Unlock again"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with your fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Set up Face Unlock again"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with your face."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Your face model can no longer be recognised. Set up Face Unlock again."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Not now"</string> </resources> diff --git a/core/res/res/values-en-rCA/strings.xml b/core/res/res/values-en-rCA/strings.xml index 3c1ae773d867..b3490a7cce4f 100644 --- a/core/res/res/values-en-rCA/strings.xml +++ b/core/res/res/values-en-rCA/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is too short. Must be at least 4 digits."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Try again later"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Got it"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotate for a better view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> in full screen for a better view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"On-screen Accessibility Shortcut Chooser"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Accessibility Shortcut"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dismiss Notification Shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media Play/Pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"How it works"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pending..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Set up Fingerprint Unlock again"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognized."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognized."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Set up Face Unlock again"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with face."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Your face model can no longer be recognized. Set up Face Unlock again."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Not now"</string> </resources> diff --git a/core/res/res/values-en-rGB/strings.xml b/core/res/res/values-en-rGB/strings.xml index 818614a0cdbe..c0c1c3b5f1fd 100644 --- a/core/res/res/values-en-rGB/strings.xml +++ b/core/res/res/values-en-rGB/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is too short. Must be at least four digits."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Try again later"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Got it"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotate for a better view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> in full screen for a better view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"On-screen accessibility shortcut chooser"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Accessibility shortcut"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dismiss notification shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media play/pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"How it works"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pending…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Set up Fingerprint Unlock again"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with your fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Set up Face Unlock again"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with your face."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Your face model can no longer be recognised. Set up Face Unlock again."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Not now"</string> </resources> diff --git a/core/res/res/values-en-rIN/strings.xml b/core/res/res/values-en-rIN/strings.xml index a58f7314ade6..244d38faf916 100644 --- a/core/res/res/values-en-rIN/strings.xml +++ b/core/res/res/values-en-rIN/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is too short. Must be at least four digits."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Try again later"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Got it"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotate for a better view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> in full screen for a better view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"On-screen accessibility shortcut chooser"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Accessibility shortcut"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dismiss notification shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media play/pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"How it works"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pending…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Set up Fingerprint Unlock again"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with your fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognised. Set up Fingerprint Unlock again."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Set up Face Unlock again"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with your face."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Your face model can no longer be recognised. Set up Face Unlock again."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Not now"</string> </resources> diff --git a/core/res/res/values-en-rXC/strings.xml b/core/res/res/values-en-rXC/strings.xml index 557271457bb3..42452b49624e 100644 --- a/core/res/res/values-en-rXC/strings.xml +++ b/core/res/res/values-en-rXC/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN is too short. Must be at least 4 digits."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Try again later"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Got it"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotate for a better view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> in full screen for a better view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"On-screen Accessibility Shortcut Chooser"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Accessibility Shortcut"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dismiss Notification Shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media Play/Pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"How it works"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pending..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Set up Fingerprint Unlock again"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognized."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognized."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> and <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Set up Face Unlock again"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with face."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Your face model can no longer be recognized. Set up Face Unlock again."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Not now"</string> </resources> diff --git a/core/res/res/values-es-rUS/strings.xml b/core/res/res/values-es-rUS/strings.xml index 94591ea8581d..ff68322fbcdd 100644 --- a/core/res/res/values-es-rUS/strings.xml +++ b/core/res/res/values-es-rUS/strings.xml @@ -272,7 +272,7 @@ <string name="bugreport_option_interactive_summary" msgid="8493795476325339542">"Usa esta opción en la mayoría de los casos. Te permite realizar un seguimiento del progreso del informe, ingresar más detalles acerca del problema y tomar capturas de pantalla. Es posible que se omitan secciones menos usadas cuyos informes demoran más en completarse."</string> <string name="bugreport_option_full_title" msgid="7681035745950045690">"Informe completo"</string> <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Usa esta opción para reducir al mínimo la interferencia del sistema cuando tu dispositivo no responde o funciona muy lento, o cuando necesitas todas las secciones del informe. No permite ingresar más detalles ni tomar capturas de pantalla adicionales."</string> - <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Se tomará una captura de pantalla para el informe de errores en # segundo.}many{Se tomará una captura de pantalla para el informe de errores en # segundos.}other{Se tomará una captura de pantalla para el informe de errores en # segundos.}}"</string> + <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Se tomará una captura de pantalla para el informe de errores en # segundo.}many{Se tomará una captura de pantalla para el informe de errores en # de segundos.}other{Se tomará una captura de pantalla para el informe de errores en # segundos.}}"</string> <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"Se tomó la captura de pantalla con el informe de errores"</string> <string name="bugreport_screenshot_failure_toast" msgid="6736320861311294294">"No se pudo tomar la captura de pantalla con el informe de errores"</string> <string name="global_action_toggle_silent_mode" msgid="8464352592860372188">"Modo silencioso"</string> @@ -292,7 +292,7 @@ <string name="notification_channel_security" msgid="8516754650348238057">"Seguridad"</string> <string name="notification_channel_car_mode" msgid="2123919247040988436">"Modo auto"</string> <string name="notification_channel_account" msgid="6436294521740148173">"Estado de la cuenta"</string> - <string name="notification_channel_developer" msgid="1691059964407549150">"Mensajes de programadores"</string> + <string name="notification_channel_developer" msgid="1691059964407549150">"Mensajes de desarrolladores"</string> <string name="notification_channel_developer_important" msgid="7197281908918789589">"Mensajes importantes de desarrolladores"</string> <string name="notification_channel_updates" msgid="7907863984825495278">"Actualizaciones"</string> <string name="notification_channel_network_status" msgid="2127687368725272809">"Estado de la red"</string> @@ -966,7 +966,7 @@ <string name="relationTypeCustom" msgid="282938315217441351">"Personalizado"</string> <string name="relationTypeAssistant" msgid="4057605157116589315">"Asistente"</string> <string name="relationTypeBrother" msgid="7141662427379247820">"Hermano"</string> - <string name="relationTypeChild" msgid="9076258911292693601">"Hijo"</string> + <string name="relationTypeChild" msgid="9076258911292693601">"Hijo o hija"</string> <string name="relationTypeDomesticPartner" msgid="7825306887697559238">"Pareja de hecho"</string> <string name="relationTypeFather" msgid="3856225062864790596">"Padre"</string> <string name="relationTypeFriend" msgid="3192092625893980574">"Amigo"</string> @@ -1127,7 +1127,7 @@ <string name="enable_explore_by_touch_warning_message" product="default" msgid="4312979647356179250">"<xliff:g id="ACCESSIBILITY_SERVICE_NAME">%1$s</xliff:g> desea activar la exploración táctil. Cuando esta función esté activada, podrás escuchar o ver descripciones del contenido seleccionado o usar gestos para interactuar con el dispositivo."</string> <string name="oneMonthDurationPast" msgid="4538030857114635777">"Hace 1 mes."</string> <string name="beforeOneMonthDurationPast" msgid="8315149541372065392">"Anterior a 1 mes atrás"</string> - <string name="last_num_days" msgid="2393660431490280537">"{count,plural, =1{Último # día}many{Últimos # días}other{Últimos # días}}"</string> + <string name="last_num_days" msgid="2393660431490280537">"{count,plural, =1{Último # día}many{Últimos # de días}other{Últimos # días}}"</string> <string name="last_month" msgid="1528906781083518683">"Último mes"</string> <string name="older" msgid="1645159827884647400">"Antiguos"</string> <string name="preposition_for_date" msgid="2780767868832729599">"activado <xliff:g id="DATE">%s</xliff:g>"</string> @@ -1155,11 +1155,11 @@ <string name="duration_days_shortest_future" msgid="3392722163935571543">"en <xliff:g id="COUNT">%d</xliff:g> d"</string> <string name="duration_years_shortest_future" msgid="5537464088352970388">"en <xliff:g id="COUNT">%d</xliff:g> años"</string> <string name="duration_minutes_relative" msgid="8620337701051015593">"{count,plural, =1{Hace # minuto}many{Hace # minutos}other{Hace # minutos}}"</string> - <string name="duration_hours_relative" msgid="4836449961693180253">"{count,plural, =1{Hace # hora}many{Hace # horas}other{Hace # horas}}"</string> - <string name="duration_days_relative" msgid="621965767567258302">"{count,plural, =1{Hace # día}many{Hace # días}other{Hace # días}}"</string> + <string name="duration_hours_relative" msgid="4836449961693180253">"{count,plural, =1{Hace # hora}many{Hace # de horas}other{Hace # horas}}"</string> + <string name="duration_days_relative" msgid="621965767567258302">"{count,plural, =1{Hace # día}many{Hace # de días}other{Hace # días}}"</string> <string name="duration_years_relative" msgid="8731202348869424370">"{count,plural, =1{Hace # año}many{Hace # años}other{Hace # años}}"</string> - <string name="duration_minutes_relative_future" msgid="5259574171747708115">"{count,plural, =1{# minuto}many{# minutos}other{# minutos}}"</string> - <string name="duration_hours_relative_future" msgid="6670440478481140565">"{count,plural, =1{# hora}many{# horas}other{# horas}}"</string> + <string name="duration_minutes_relative_future" msgid="5259574171747708115">"{count,plural, =1{# minuto}many{# de minutos}other{# minutos}}"</string> + <string name="duration_hours_relative_future" msgid="6670440478481140565">"{count,plural, =1{# hora}many{# horas}other{# horas}}"</string> <string name="duration_days_relative_future" msgid="8870658635774250746">"{count,plural, =1{# día}many{# días}other{# días}}"</string> <string name="duration_years_relative_future" msgid="8855853883925918380">"{count,plural, =1{# año}many{# años}other{# años}}"</string> <string name="VideoView_error_title" msgid="5750686717225068016">"Problemas de video"</string> @@ -1471,7 +1471,7 @@ <string name="ext_media_seamless_action" msgid="8837030226009268080">"Cambiar salida"</string> <string name="ext_media_missing_title" msgid="3209472091220515046">"Falta <xliff:g id="NAME">%s</xliff:g>"</string> <string name="ext_media_missing_message" msgid="4408988706227922909">"Vuelve a insertar dispositivo"</string> - <string name="ext_media_move_specific_title" msgid="8492118544775964250">"Transfiriendo la aplicación <xliff:g id="NAME">%s</xliff:g>"</string> + <string name="ext_media_move_specific_title" msgid="8492118544775964250">"Moviendo <xliff:g id="NAME">%s</xliff:g>"</string> <string name="ext_media_move_title" msgid="2682741525619033637">"Transfiriendo los datos"</string> <string name="ext_media_move_success_title" msgid="4901763082647316767">"Se transfirió el contenido"</string> <string name="ext_media_move_success_message" msgid="9159542002276982979">"Se transfirió el contenido a <xliff:g id="NAME">%s</xliff:g>"</string> @@ -1525,7 +1525,7 @@ <string name="input_method_binding_label" msgid="1166731601721983656">"Método de entrada"</string> <string name="sync_binding_label" msgid="469249309424662147">"Sincronización"</string> <string name="accessibility_binding_label" msgid="1974602776545801715">"Accesibilidad"</string> - <string name="wallpaper_binding_label" msgid="1197440498000786738">"Papel tapiz"</string> + <string name="wallpaper_binding_label" msgid="1197440498000786738">"Fondo de pantalla"</string> <string name="chooser_wallpaper" msgid="3082405680079923708">"Cambiar fondo de pantalla"</string> <string name="notification_listener_binding_label" msgid="2702165274471499713">"Agente de escucha de notificaciones"</string> <string name="vr_listener_binding_label" msgid="8013112996671206429">"Procesador de realidad virtual"</string> @@ -1534,7 +1534,7 @@ <string name="vpn_title" msgid="5906991595291514182">"VPN activada"</string> <string name="vpn_title_long" msgid="6834144390504619998">"VPN está activado por <xliff:g id="APP">%s</xliff:g>"</string> <string name="vpn_text" msgid="2275388920267251078">"Pulsa para gestionar la red."</string> - <string name="vpn_text_long" msgid="278540576806169831">"Conectado a <xliff:g id="SESSION">%s</xliff:g>. Pulsa para gestionar la red."</string> + <string name="vpn_text_long" msgid="278540576806169831">"Se estableció conexión con <xliff:g id="SESSION">%s</xliff:g>. Presiona para administrar la red."</string> <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"Estableciendo conexión con la VPN siempre activada..."</string> <string name="vpn_lockdown_connected" msgid="2853127976590658469">"Se estableció conexión con la VPN siempre activada."</string> <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"Desconectado de la VPN siempre activa"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"El PIN es demasiado corto. Debe tener al menos 4 dígitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Vuelve a intentar más tarde."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visualización en pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para salir, desliza el dedo hacia abajo desde la parte superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entendido"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Gira la pantalla para obtener una mejor vista"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abre <xliff:g id="NAME">%s</xliff:g> en pantalla completa para una mejor visualización"</string> @@ -1914,14 +1913,14 @@ <string name="data_saver_description" msgid="4995164271550590517">"Para reducir el uso de datos, el modo Ahorro de datos evita que algunas apps envíen y reciban datos en segundo plano. La app que estés usando podrá acceder a los datos, pero con menor frecuencia. De esta forma, por ejemplo, las imágenes no se mostrarán hasta que las presiones."</string> <string name="data_saver_enable_title" msgid="7080620065745260137">"¿Deseas activar Ahorro de datos?"</string> <string name="data_saver_enable_button" msgid="4399405762586419726">"Activar"</string> - <string name="zen_mode_duration_minutes_summary" msgid="4555514757230849789">"{count,plural, =1{Por un minuto (hasta {formattedTime})}many{Por # minutos (hasta {formattedTime})}other{Por # minutos (hasta {formattedTime})}}"</string> + <string name="zen_mode_duration_minutes_summary" msgid="4555514757230849789">"{count,plural, =1{Por un minuto (hasta la(s) {formattedTime})}many{Por # de minutos (hasta la(s) {formattedTime})}other{Por # minutos (hasta la(s) {formattedTime})}}"</string> <string name="zen_mode_duration_minutes_summary_short" msgid="1187553788355486950">"{count,plural, =1{Durante 1 min (hasta {formattedTime})}many{Durante # min (hasta {formattedTime})}other{Durante # min (hasta {formattedTime})}}"</string> <string name="zen_mode_duration_hours_summary" msgid="3866333100793277211">"{count,plural, =1{Durante 1 hora (hasta {formattedTime})}many{Durante # horas (hasta {formattedTime})}other{Durante # horas (hasta {formattedTime})}}"</string> <string name="zen_mode_duration_hours_summary_short" msgid="687919813833347945">"{count,plural, =1{Durante 1 h (hasta {formattedTime})}many{Durante # h (hasta {formattedTime})}other{Durante # h (hasta {formattedTime})}}"</string> - <string name="zen_mode_duration_minutes" msgid="2340007982276569054">"{count,plural, =1{Durante un minuto}many{Durante # minutos}other{Durante # minutos}}"</string> - <string name="zen_mode_duration_minutes_short" msgid="2435756450204526554">"{count,plural, =1{Durante 1 min}many{Durante # min}other{Durante # min}}"</string> - <string name="zen_mode_duration_hours" msgid="7841806065034711849">"{count,plural, =1{Durante 1 hora}many{Durante # horas}other{Durante # horas}}"</string> - <string name="zen_mode_duration_hours_short" msgid="3666949653933099065">"{count,plural, =1{Durante 1 h}many{Durante # h}other{Durante # h}}"</string> + <string name="zen_mode_duration_minutes" msgid="2340007982276569054">"{count,plural, =1{Durante un minuto}many{Durante # de minutos}other{Durante # minutos}}"</string> + <string name="zen_mode_duration_minutes_short" msgid="2435756450204526554">"{count,plural, =1{Durante 1 min}many{Durante # de min}other{Durante # min}}"</string> + <string name="zen_mode_duration_hours" msgid="7841806065034711849">"{count,plural, =1{Durante 1 hora}many{Durante # de horas}other{Durante # horas}}"</string> + <string name="zen_mode_duration_hours_short" msgid="3666949653933099065">"{count,plural, =1{Durante 1 h}many{Durante # de h}other{Durante # h}}"</string> <string name="zen_mode_until_next_day" msgid="1403042784161725038">"Hasta las <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string> <string name="zen_mode_until" msgid="2250286190237669079">"Hasta la(s) <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string> <string name="zen_mode_alarm" msgid="7046911727540499275">"Hasta la hora <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> (próxima alarma)"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selector del acceso directo de accesibilidad en pantalla"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Acceso directo de accesibilidad"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Descartar panel de notificaciones"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menú"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reproducir o pausar contenido multimedia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Pad direccional: arriba"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Pad direccional: abajo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Pad direccional: izquierda"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cómo funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendiente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Vuelve a configurar el Desbloqueo con huellas dactilares"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Se borró <xliff:g id="FINGERPRINT">%s</xliff:g> porque no funcionaba correctamente"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Se borraron <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> porque no funcionaban correctamente"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Se borró <xliff:g id="FINGERPRINT">%s</xliff:g> porque no funcionaba correctamente. Vuelve a configurarla para desbloquear el teléfono con la huella dactilar."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Se borraron <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> porque no funcionaban correctamente. Vuelve a configurarlas para desbloquear el teléfono con la huella dactilar."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Ya no se puede reconocer <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Ya no se pueden reconocer <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Ya no se puede reconocer <xliff:g id="FINGERPRINT">%s</xliff:g>. Vuelve a configurar el Desbloqueo con huellas dactilares."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Ya no se pueden reconocer <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. Vuelve a configurar el Desbloqueo con huellas dactilares."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Vuelve a configurar el Desbloqueo facial"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Se borró tu modelo de rostro porque no funcionaba correctamente. Vuelve a configurarlo para desbloquear el teléfono con el rostro."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Ya no se puede reconocer tu modelo de rostro. Vuelve a configurar el Desbloqueo facial."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurar"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ahora no"</string> </resources> diff --git a/core/res/res/values-es/strings.xml b/core/res/res/values-es/strings.xml index 2634494c4c8b..b7c9c4355b01 100644 --- a/core/res/res/values-es/strings.xml +++ b/core/res/res/values-es/strings.xml @@ -123,7 +123,7 @@ <string name="roamingTextSearching" msgid="5323235489657753486">"Buscando servicio"</string> <string name="wfcRegErrorTitle" msgid="3193072971584858020">"No se ha podido configurar la llamada por Wi‑Fi"</string> <string-array name="wfcOperatorErrorAlertMessages"> - <item msgid="468830943567116703">"Para hacer llamadas y enviar mensajes por Wi-Fi, pide antes a tu operador que configure este servicio. Una vez hecho esto, vuelva a activar la llamada por Wi-Fi en Ajustes. (Código de error: <xliff:g id="CODE">%1$s</xliff:g>)"</item> + <item msgid="468830943567116703">"Para hacer llamadas y enviar mensajes por Wi-Fi, pide antes a tu operador que configure este servicio. Una vez hecho esto, vuelve a activar la llamada por Wi-Fi en Ajustes. (Código de error: <xliff:g id="CODE">%1$s</xliff:g>)"</item> </string-array> <string-array name="wfcOperatorErrorNotificationMessages"> <item msgid="4795145070505729156">"No se ha podido registrar la llamada por Wi‑Fi con tu operador: <xliff:g id="CODE">%1$s</xliff:g>"</item> @@ -131,7 +131,7 @@ <!-- no translation found for wfcSpnFormat_spn (2982505428519096311) --> <skip /> <string name="wfcSpnFormat_spn_wifi_calling" msgid="3165949348000906194">"Llamada por Wi‑Fi de <xliff:g id="SPN">%s</xliff:g>"</string> - <string name="wfcSpnFormat_spn_wifi_calling_vo_hyphen" msgid="3836827895369365298">"<xliff:g id="SPN">%s</xliff:g> Llamada por Wi‑Fi"</string> + <string name="wfcSpnFormat_spn_wifi_calling_vo_hyphen" msgid="3836827895369365298">"Llamada por Wi‑Fi de <xliff:g id="SPN">%s</xliff:g>"</string> <string name="wfcSpnFormat_wlan_call" msgid="4895315549916165700">"Llamada por WLAN"</string> <string name="wfcSpnFormat_spn_wlan_call" msgid="255919245825481510">"Llamada por WLAN de <xliff:g id="SPN">%s</xliff:g>"</string> <string name="wfcSpnFormat_spn_wifi" msgid="7232899594327126970">"Wi‑Fi de <xliff:g id="SPN">%s</xliff:g>"</string> @@ -159,7 +159,7 @@ <string name="scIdentifierDisclosureIssueTitle" msgid="2898888825129970328">"Se ha accedido al ID del dispositivo"</string> <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"A las <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, una red cercana registró el ID único de tu dispositivo (IMSI o IMEI) mientras usabas la SIM de <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>"</string> <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"A las <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, una red cercana registró el ID único de tu dispositivo (IMSI o IMEI) mientras usabas la SIM de <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>.\n\nEsto significa que se ha registrado tu ubicación, actividad o identidad. Se trata de una práctica habitual, pero puede ser un problema para quienes les preocupa su privacidad."</string> - <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"Conectado a la red cifrada <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> + <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"Conexión a la red cifrada <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"Ahora, la conexión con la SIM de <xliff:g id="NETWORK_NAME">%1$s</xliff:g> es más segura"</string> <string name="scNullCipherIssueNonEncryptedTitle" msgid="3978071464929453915">"Conectado a una red no cifrada"</string> <string name="scNullCipherIssueNonEncryptedSummaryNotification" msgid="7386936934128110388">"Tus llamadas, mensajes y datos son más vulnerables mientras uses la SIM de <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> @@ -228,7 +228,7 @@ <string name="work_profile_telephony_paused_text" msgid="8065762301100978221">"Has pausado las aplicaciones de trabajo. No recibirás llamadas ni mensajes de texto."</string> <string name="work_profile_telephony_paused_turn_on_button" msgid="7542632318337068821">"Reanudar aplicaciones de trabajo"</string> <string name="me" msgid="6207584824693813140">"Yo"</string> - <string name="power_dialog" product="tablet" msgid="8333207765671417261">"Opciones del tablet"</string> + <string name="power_dialog" product="tablet" msgid="8333207765671417261">"Opciones de la tablet"</string> <string name="power_dialog" product="tv" msgid="7792839006640933763">"Opciones de Android TV"</string> <string name="power_dialog" product="default" msgid="1107775420270203046">"Opciones del teléfono"</string> <string name="silent_mode" msgid="8796112363642579333">"Modo Silencio"</string> @@ -255,7 +255,7 @@ <string name="reboot_safemode_confirm" msgid="1658357874737219624">"¿Quieres reiniciar el sistema en modo Seguro? Se inhabilitarán todas las aplicaciones externas que hayas instalado. Esas aplicaciones se restaurarán la próxima vez que reinicies el sistema."</string> <string name="recent_tasks_title" msgid="8183172372995396653">"Reciente"</string> <string name="no_recent_tasks" msgid="9063946524312275906">"No hay aplicaciones recientes."</string> - <string name="global_actions" product="tablet" msgid="4412132498517933867">"Opciones del tablet"</string> + <string name="global_actions" product="tablet" msgid="4412132498517933867">"Opciones de la tablet"</string> <string name="global_actions" product="tv" msgid="3871763739487450369">"Opciones de Android TV"</string> <string name="global_actions" product="default" msgid="6410072189971495460">"Opciones del teléfono"</string> <string name="global_action_lock" msgid="6949357274257655383">"Bloqueo de pantalla"</string> @@ -381,9 +381,9 @@ <string name="permlab_answerPhoneCalls" msgid="4131324833663725855">"responder llamadas"</string> <string name="permdesc_answerPhoneCalls" msgid="894386681983116838">"Permite que la aplicación responda una llamada."</string> <string name="permlab_receiveSms" msgid="505961632050451881">"recibir mensajes de texto (SMS)"</string> - <string name="permdesc_receiveSms" msgid="1797345626687832285">"Permite que la aplicación reciba y procese mensajes MMS, lo que significa que podría utilizar este permiso para controlar o eliminar mensajes enviados al dispositivo sin mostrárselos al usuario."</string> + <string name="permdesc_receiveSms" msgid="1797345626687832285">"Permite que la aplicación reciba y procese mensajes SMS, lo que significa que podría utilizar este permiso para monitorizar o eliminar mensajes enviados al dispositivo sin mostrárselos al usuario."</string> <string name="permlab_receiveMms" msgid="4000650116674380275">"recibir mensajes de texto (MMS)"</string> - <string name="permdesc_receiveMms" msgid="958102423732219710">"Permite que la aplicación reciba y procese mensajes MMS, lo que significa que podría utilizar este permiso para controlar o eliminar mensajes enviados al dispositivo sin mostrárselos al usuario."</string> + <string name="permdesc_receiveMms" msgid="958102423732219710">"Permite que la aplicación reciba y procese mensajes MMS, lo que significa que podría usar este permiso para controlar o eliminar mensajes enviados al dispositivo sin mostrártelos."</string> <string name="permlab_bindCellBroadcastService" msgid="586746677002040651">"Reenviar mensajes de difusión móvil"</string> <string name="permdesc_bindCellBroadcastService" msgid="6540910200973641606">"Permite que la aplicación se vincule con el módulo de difusión móvil para reenviar los mensajes de ese tipo en cuanto se reciben. En ciertas ubicaciones se envían alertas de difusión móvil para avisar de situaciones de emergencia. Cuando se recibe una alerta de difusión móvil de emergencia, ciertas aplicaciones malintencionadas podrían interferir en el rendimiento o en el funcionamiento del dispositivo."</string> <string name="permlab_manageOngoingCalls" msgid="281244770664231782">"Gestionar llamadas en curso"</string> @@ -401,13 +401,13 @@ <string name="permdesc_readSms" product="tv" msgid="3054753345758011986">"Esta aplicación puede leer todos los SMS almacenados en tu dispositivo Android TV."</string> <string name="permdesc_readSms" product="default" msgid="774753371111699782">"Esta aplicación puede leer todos los SMS (mensajes de texto) almacenados en tu teléfono."</string> <string name="permlab_receiveWapPush" msgid="4223747702856929056">"recibir mensajes de texto (WAP)"</string> - <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"Permite que la aplicación reciba y procese mensajes WAP, lo que significa que podría utilizar este permiso para controlar o eliminar mensajes enviados al usuario sin mostrárselos."</string> + <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"Permite que la aplicación reciba y procese mensajes WAP, lo que significa que podría utilizar este permiso para monitorizar o eliminar mensajes enviados al usuario sin mostrárselos."</string> <string name="permlab_getTasks" msgid="7460048811831750262">"recuperar aplicaciones en ejecución"</string> <string name="permdesc_getTasks" msgid="7388138607018233726">"Permite que aplicación recupere información sobre tareas que se están ejecutando en ese momento o que se han ejecutado recientemente. La aplicación puede utilizar este permiso para descubrir cuáles son las aplicaciones que se utilizan en el dispositivo."</string> <string name="permlab_manageProfileAndDeviceOwners" msgid="639849495253987493">"administrar propietarios del perfil y del dispositivo"</string> <string name="permdesc_manageProfileAndDeviceOwners" msgid="7304240671781989283">"Permite que las aplicaciones establezcan los propietarios del perfil y del dispositivo."</string> <string name="permlab_reorderTasks" msgid="7598562301992923804">"reorganizar aplicaciones en ejecución"</string> - <string name="permdesc_reorderTasks" msgid="8796089937352344183">"Permite que la aplicación mueva tareas a segundo o a primer plano. La aplicación puede utilizar este permiso para realizar estos movimientos sin que se lo indique el usuario."</string> + <string name="permdesc_reorderTasks" msgid="8796089937352344183">"Permite que la aplicación mueva tareas a segundo o a primer plano. La aplicación podrá hacerlo sin que se lo indiques."</string> <string name="permlab_enableCarMode" msgid="893019409519325311">"habilitar modo coche"</string> <string name="permdesc_enableCarMode" msgid="56419168820473508">"Permite que la aplicación habilite el modo coche."</string> <string name="permlab_killBackgroundProcesses" msgid="6559320515561928348">"cerrar otras aplicaciones"</string> @@ -548,7 +548,7 @@ <string name="permlab_readPhoneNumbers" msgid="5668704794723365628">"leer números de teléfono"</string> <string name="permdesc_readPhoneNumbers" msgid="7368652482818338871">"Permite que la aplicación acceda a los números de teléfono del dispositivo."</string> <string name="permlab_wakeLock" product="automotive" msgid="1904736682319375676">"mantener la pantalla del coche encendida"</string> - <string name="permlab_wakeLock" product="tablet" msgid="1527660973931694000">"impedir que el tablet entre en modo de suspensión"</string> + <string name="permlab_wakeLock" product="tablet" msgid="1527660973931694000">"impedir que la tablet entre en modo de suspensión"</string> <string name="permlab_wakeLock" product="tv" msgid="2856941418123343518">"evitar que tu dispositivo Android TV entre en modo de suspensión"</string> <string name="permlab_wakeLock" product="default" msgid="569409726861695115">"impedir que el teléfono entre en modo de suspensión"</string> <string name="permdesc_wakeLock" product="automotive" msgid="5995045369683254571">"Permite que la aplicación deje la pantalla del coche encendida."</string> @@ -556,7 +556,7 @@ <string name="permdesc_wakeLock" product="tv" msgid="2329298966735118796">"Permite que la aplicación impida que tu dispositivo Android TV entre en modo de suspensión."</string> <string name="permdesc_wakeLock" product="default" msgid="3689523792074007163">"Permite que la aplicación impida que el teléfono entre en modo de suspensión."</string> <string name="permlab_transmitIr" msgid="8077196086358004010">"transmitir infrarrojos"</string> - <string name="permdesc_transmitIr" product="tablet" msgid="5884738958581810253">"Permite que la aplicación utilice el transmisor de infrarrojos del tablet."</string> + <string name="permdesc_transmitIr" product="tablet" msgid="5884738958581810253">"Permite que la aplicación use el transmisor de infrarrojos de la tablet."</string> <string name="permdesc_transmitIr" product="tv" msgid="3278506969529173281">"Permite que la aplicación utilice el transmisor de infrarrojos de tu dispositivo Android TV."</string> <string name="permdesc_transmitIr" product="default" msgid="8484193849295581808">"Permite que la aplicación utilice el transmisor de infrarrojos del teléfono."</string> <string name="permlab_setWallpaper" msgid="6959514622698794511">"establecer fondo de pantalla"</string> @@ -586,7 +586,7 @@ <string name="permlab_changeWifiState" msgid="7947824109713181554">"conectarse a redes Wi-Fi y desconectarse"</string> <string name="permdesc_changeWifiState" msgid="7170350070554505384">"Permite que la aplicación se conecte a puntos de acceso Wi-Fi y se desconecte de ellos y que realice cambios en la configuración de redes Wi-Fi del dispositivo."</string> <string name="permlab_changeWifiMulticastState" msgid="285626875870754696">"permitir recepción multidifusión Wi-Fi"</string> - <string name="permdesc_changeWifiMulticastState" product="tablet" msgid="191079868596433554">"Permite que la aplicación reciba paquetes enviados a todos los dispositivos de una red Wi-Fi que utilicen direcciones de multidifusión, no solo al tablet. Utiliza más batería que el modo de no multidifusión."</string> + <string name="permdesc_changeWifiMulticastState" product="tablet" msgid="191079868596433554">"Permite que la aplicación reciba paquetes enviados a todos los dispositivos de una red Wi-Fi que usen direcciones de multicast, no solo a la tablet. Usa más batería que el modo de no multicast."</string> <string name="permdesc_changeWifiMulticastState" product="tv" msgid="1336952358450652595">"Permite que la aplicación reciba paquetes enviados a través de una red Wi-Fi y mediante direcciones de multidifusión a todos los dispositivos, no solo a tu dispositivo Android TV. Consume más batería que el modo sin multidifusión."</string> <string name="permdesc_changeWifiMulticastState" product="default" msgid="8296627590220222740">"Permite que la aplicación reciba paquetes enviados a todos los dispositivos de una red Wi-Fi que utilicen direcciones de multidifusión, no solo al teléfono. Utiliza más batería que el modo de no multidifusión."</string> <string name="permlab_bluetoothAdmin" msgid="6490373569441946064">"acceder a los ajustes de Bluetooth"</string> @@ -622,17 +622,17 @@ <string name="permlab_disableKeyguard" msgid="3605253559020928505">"inhabilitar el bloqueo de pantalla"</string> <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Permite que la aplicación inhabilite el bloqueo del teclado y cualquier protección con contraseña asociada. Por ejemplo, el teléfono puede inhabilitar el bloqueo del teclado cuando se recibe una llamada telefónica y volver a habilitarlo cuando finaliza la llamada."</string> <string name="permlab_requestPasswordComplexity" msgid="1808977190557794109">"solicitar complejidad del bloqueo de pantalla"</string> - <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Permite que la aplicación entienda el nivel de complejidad del bloqueo de pantalla (alto, medio, bajo o ninguno) que indica la longitud y el tipo del bloqueo de pantalla posibles. La aplicación también puede sugerir a los usuarios que actualicen el bloqueo de pantalla para que tenga un nivel concreto de complejidad, pero los usuarios pueden ignorar la advertencia libremente. El bloqueo de pantalla no se almacena en texto sin formato, así que la aplicación no puede saber cuál es la contraseña exacta."</string> + <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Permite que la aplicación entienda el nivel de complejidad del bloqueo de pantalla (alto, medio, bajo o ninguno), que indica la longitud y el tipo del bloqueo de pantalla posibles. La aplicación también puede sugerir a los usuarios que actualicen el bloqueo de pantalla para que tenga un nivel concreto de complejidad, pero los usuarios pueden ignorar la advertencia libremente. El bloqueo de pantalla no se almacena en texto sin formato, así que la aplicación no puede saber cuál es la contraseña exacta."</string> <string name="permlab_postNotification" msgid="4875401198597803658">"mostrar notificaciones"</string> <string name="permdesc_postNotification" msgid="5974977162462877075">"Permite que la aplicación muestre notificaciones"</string> <string name="permlab_turnScreenOn" msgid="219344053664171492">"encender la pantalla"</string> <string name="permdesc_turnScreenOn" msgid="4394606875897601559">"Permite que la aplicación active la pantalla."</string> <string name="permlab_useBiometric" msgid="6314741124749633786">"usar hardware biométrico"</string> <string name="permdesc_useBiometric" msgid="7502858732677143410">"Permite que la aplicación utilice el hardware biométrico para realizar la autenticación"</string> - <string name="permlab_manageFingerprint" msgid="7432667156322821178">"administrar hardware de huellas digitales"</string> + <string name="permlab_manageFingerprint" msgid="7432667156322821178">"gestionar lector de huellas digitales"</string> <string name="permdesc_manageFingerprint" msgid="2025616816437339865">"Permite que la aplicación invoque métodos para añadir y eliminar plantillas de huellas digitales y utilizarlas."</string> - <string name="permlab_useFingerprint" msgid="1001421069766751922">"utilizar hardware de huellas digitales"</string> - <string name="permdesc_useFingerprint" msgid="412463055059323742">"Permite que la aplicación utilice el hardware de huellas digitales para realizar la autenticación"</string> + <string name="permlab_useFingerprint" msgid="1001421069766751922">"usar lectores de huellas digitales"</string> + <string name="permdesc_useFingerprint" msgid="412463055059323742">"Permite que la aplicación use el hardware de huellas digitales para realizar la autenticación"</string> <string name="permlab_audioWrite" msgid="8501705294265669405">"modificar tu colección de música"</string> <string name="permdesc_audioWrite" msgid="8057399517013412431">"Permite que la aplicación modifique tu colección de música."</string> <string name="permlab_videoWrite" msgid="5940738769586451318">"modificar tu colección de vídeos"</string> @@ -814,10 +814,10 @@ <string name="permlab_handoverStatus" msgid="7620438488137057281">"recibir estado de transferencias de Android Beam"</string> <string name="permdesc_handoverStatus" msgid="3842269451732571070">"Permite que esta aplicación reciba información sobre las transferencias actuales de Android Beam"</string> <string name="permlab_removeDrmCertificates" msgid="710576248717404416">"quitar certificados DRM"</string> - <string name="permdesc_removeDrmCertificates" msgid="4068445390318355716">"Permite a una aplicación eliminar los certificados DRM. Las aplicaciones normales no deberían necesitar este permiso."</string> + <string name="permdesc_removeDrmCertificates" msgid="4068445390318355716">"Permite que una aplicación elimine certificados DRM. Las aplicaciones normales no deberían necesitar nunca este permiso."</string> <string name="permlab_bindCarrierMessagingService" msgid="3363450860593096967">"vincular con el servicio de mensajería de un operador"</string> <string name="permdesc_bindCarrierMessagingService" msgid="6316457028173478345">"Permite vincular con la interfaz de nivel superior del servicio de mensajería de un operador. Las aplicaciones normales no deberían necesitar este permiso."</string> - <string name="permlab_bindCarrierServices" msgid="2395596978626237474">"vincular con servicios de operador"</string> + <string name="permlab_bindCarrierServices" msgid="2395596978626237474">"vincular con servicios del operador"</string> <string name="permdesc_bindCarrierServices" msgid="9185614481967262900">"Permite vincular con servicios de operador. Las aplicaciones normales no deberían necesitar este permiso."</string> <string name="permlab_access_notification_policy" msgid="5524112842876975537">"acceso a No molestar"</string> <string name="permdesc_access_notification_policy" msgid="8538374112403845013">"Permite que la aplicación lea y modifique la configuración de No molestar."</string> @@ -856,11 +856,11 @@ <string name="policylab_wipeData_secondaryUser" product="automotive" msgid="115034358520328373">"Borrar datos del perfil"</string> <string name="policylab_wipeData_secondaryUser" product="default" msgid="413813645323433166">"Borrar datos del usuario"</string> <string name="policydesc_wipeData_secondaryUser" product="tablet" msgid="2336676480090926470">"Borra los datos del usuario en esta tablet sin avisar."</string> - <string name="policydesc_wipeData_secondaryUser" product="tv" msgid="2293713284515865200">"Eliminar los datos de este usuario del dispositivo Android TV sin previo aviso."</string> + <string name="policydesc_wipeData_secondaryUser" product="tv" msgid="2293713284515865200">"Eliminar los datos de este usuario que hay en este dispositivo Android TV sin previo aviso."</string> <string name="policydesc_wipeData_secondaryUser" product="automotive" msgid="4658832487305780879">"Borra los datos del perfil de este sistema de infoentretenimiento sin avisar."</string> - <string name="policydesc_wipeData_secondaryUser" product="default" msgid="2788325512167208654">"Borra los datos del usuario en este teléfono sin avisar."</string> + <string name="policydesc_wipeData_secondaryUser" product="default" msgid="2788325512167208654">"Eliminar los datos de este usuario que hay en este teléfono sin previo aviso."</string> <string name="policylab_setGlobalProxy" msgid="215332221188670221">"Definir el servidor proxy global"</string> - <string name="policydesc_setGlobalProxy" msgid="7149665222705519604">"Define el servidor proxy global que se debe utilizar mientras la política esté habilitada. Solo el propietario del dispositivo puede definir el proxy global."</string> + <string name="policydesc_setGlobalProxy" msgid="7149665222705519604">"Define el servidor proxy global que se debe usar mientras la política esté habilitada. Solo el propietario del dispositivo puede definir el proxy global."</string> <string name="policylab_expirePassword" msgid="6015404400532459169">"Definir caducidad contraseña"</string> <string name="policydesc_expirePassword" msgid="9136524319325960675">"Cambia la frecuencia con la que se debe cambiar el patrón, el PIN o la contraseña del bloqueo de pantalla."</string> <string name="policylab_encryptedStorage" msgid="9012936958126670110">"Cifrado del almacenamiento"</string> @@ -966,11 +966,11 @@ <string name="relationTypeCustom" msgid="282938315217441351">"Personalizado"</string> <string name="relationTypeAssistant" msgid="4057605157116589315">"Asistente"</string> <string name="relationTypeBrother" msgid="7141662427379247820">"Hermano"</string> - <string name="relationTypeChild" msgid="9076258911292693601">"Hijo"</string> + <string name="relationTypeChild" msgid="9076258911292693601">"Hijo/a"</string> <string name="relationTypeDomesticPartner" msgid="7825306887697559238">"Pareja de hecho"</string> <string name="relationTypeFather" msgid="3856225062864790596">"Padre"</string> <string name="relationTypeFriend" msgid="3192092625893980574">"Amigo"</string> - <string name="relationTypeManager" msgid="2272860813153171857">"Jefe"</string> + <string name="relationTypeManager" msgid="2272860813153171857">"Superior"</string> <string name="relationTypeMother" msgid="2331762740982699460">"Madre"</string> <string name="relationTypeParent" msgid="4177920938333039882">"Padre/madre"</string> <string name="relationTypePartner" msgid="4018017075116766194">"Pareja"</string> @@ -1046,7 +1046,7 @@ <string name="lockscreen_glogin_username_hint" msgid="6916101478673157045">"Nombre de usuario (correo electrónico)"</string> <string name="lockscreen_glogin_password_hint" msgid="3031027901286812848">"Contraseña"</string> <string name="lockscreen_glogin_submit_button" msgid="3590556636347843733">"Iniciar sesión"</string> - <string name="lockscreen_glogin_invalid_input" msgid="4369219936865697679">"Nombre de usuario o contraseña no válido"</string> + <string name="lockscreen_glogin_invalid_input" msgid="4369219936865697679">"El nombre de usuario o la contraseña no son válidos."</string> <string name="lockscreen_glogin_account_recovery_hint" msgid="1683405808525090649">"Si has olvidado tu nombre de usuario o tu contraseña,\naccede a la página "<b>"google.com/accounts/recovery"</b>"."</string> <string name="lockscreen_glogin_checking_password" msgid="2607271802803381645">"Comprobando..."</string> <string name="lockscreen_unlock_label" msgid="4648257878373307582">"Desbloquear"</string> @@ -1212,7 +1212,7 @@ <string name="not_checked" msgid="7972320087569023342">"no seleccionado"</string> <string name="selected" msgid="6614607926197755875">"seleccionado"</string> <string name="not_selected" msgid="410652016565864475">"no seleccionado"</string> - <string name="rating_label" msgid="1837085249662154601">"{rating,plural, =1{Una estrella de {max}}many{# estrellas de {max}}other{# estrellas de {max}}}"</string> + <string name="rating_label" msgid="1837085249662154601">"{rating,plural, =1{1 estrella de {max}}many{# estrellas de {max}}other{# estrellas de {max}}}"</string> <string name="in_progress" msgid="2149208189184319441">"en curso"</string> <string name="whichApplication" msgid="5432266899591255759">"Completar acción utilizando"</string> <string name="whichApplicationNamed" msgid="6969946041713975681">"Completar acción con %1$s"</string> @@ -1279,11 +1279,11 @@ <string name="smv_application" msgid="3775183542777792638">"La aplicación <xliff:g id="APPLICATION">%1$s</xliff:g> (proceso <xliff:g id="PROCESS">%2$s</xliff:g>) ha infringido su política StrictMode autoaplicable."</string> <string name="smv_process" msgid="1398801497130695446">"El proceso <xliff:g id="PROCESS">%1$s</xliff:g> ha infringido su política StrictMode autoaplicable."</string> <string name="android_upgrading_title" product="default" msgid="7279077384220829683">"El teléfono se está actualizando…"</string> - <string name="android_upgrading_title" product="tablet" msgid="4268417249079938805">"El tablet se está actualizando…"</string> + <string name="android_upgrading_title" product="tablet" msgid="4268417249079938805">"La tablet se está actualizando…"</string> <string name="android_upgrading_title" product="device" msgid="6774767702998149762">"El dispositivo se está actualizando…"</string> <string name="android_start_title" product="default" msgid="4036708252778757652">"El teléfono se está iniciando…"</string> <string name="android_start_title" product="automotive" msgid="7917984412828168079">"Android se está iniciando…"</string> - <string name="android_start_title" product="tablet" msgid="4429767260263190344">"El tablet se está iniciando…"</string> + <string name="android_start_title" product="tablet" msgid="4429767260263190344">"La tablet se está iniciando…"</string> <string name="android_start_title" product="device" msgid="6967413819673299309">"El dispositivo se está iniciando…"</string> <string name="android_upgrading_notification_title" product="default" msgid="3509927005342279257">"Finalizando actualización del sistema…"</string> <string name="app_upgrading_toast" msgid="1016267296049455585">"<xliff:g id="APPLICATION">%1$s</xliff:g> se está actualizando…"</string> @@ -1436,7 +1436,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Mostrar sobre otras aplicaciones"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> se muestra sobre otras aplicaciones"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> se muestra sobre otras apps"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> se muestra sobre otras aplicaciones"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Si no quieres que <xliff:g id="NAME">%s</xliff:g> utilice esta función, toca la notificación para abrir los ajustes y desactivarla."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Desactivar"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Comprobando <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1537,7 +1537,7 @@ <string name="vpn_text_long" msgid="278540576806169831">"Conectado a <xliff:g id="SESSION">%s</xliff:g>. Toca para administrar la red."</string> <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"Conectando VPN siempre activada…"</string> <string name="vpn_lockdown_connected" msgid="2853127976590658469">"VPN siempre activada conectada"</string> - <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"Desconectado de VPN siempre activada"</string> + <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"Desconectado de VPN siempre activa"</string> <string name="vpn_lockdown_error" msgid="4453048646854247947">"No se ha podido establecer la conexión con la VPN siempre activada"</string> <string name="vpn_lockdown_config" msgid="8331697329868252169">"Cambiar ajustes de red o VPN"</string> <string name="upload_file" msgid="8651942222301634271">"Seleccionar archivo"</string> @@ -1748,11 +1748,11 @@ <string name="done_accessibility_shortcut_menu_button" msgid="3668407723770815708">"Hecho"</string> <string name="disable_accessibility_shortcut" msgid="5806091378745232383">"Desactivar acceso directo"</string> <string name="leave_accessibility_shortcut_on" msgid="6543362062336990814">"Utilizar acceso directo"</string> - <string name="color_inversion_feature_name" msgid="2672824491933264951">"Invertir colores"</string> + <string name="color_inversion_feature_name" msgid="2672824491933264951">"Inversión de colores"</string> <string name="color_correction_feature_name" msgid="7975133554160979214">"Corrección de color"</string> <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo Una mano"</string> <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Atenuación extra"</string> - <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Dispositivos auditivos"</string> + <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Audífonos"</string> <string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Al mantener pulsadas las teclas de volumen, se ha activado <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string> <string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Se han mantenido pulsadas las teclas de volumen. Se ha desactivado <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string> <string name="accessibility_shortcut_spoken_feedback" msgid="3760999147597564314">"Suelta las teclas de volumen. Para activar <xliff:g id="SERVICE_NAME">%1$s</xliff:g>, mantén pulsadas las dos teclas de volumen de nuevo durante 3 segundos."</string> @@ -1873,7 +1873,7 @@ <string name="reason_service_unavailable" msgid="5288405248063804713">"Servicio de impresión no habilitado"</string> <string name="print_service_installed_title" msgid="6134880817336942482">"El servicio <xliff:g id="NAME">%s</xliff:g> se ha instalado"</string> <string name="print_service_installed_message" msgid="7005672469916968131">"Tocar para habilitar"</string> - <string name="restr_pin_enter_admin_pin" msgid="1199419462726962697">"Introducir el PIN del administrador"</string> + <string name="restr_pin_enter_admin_pin" msgid="1199419462726962697">"Introduce el PIN del administrador"</string> <string name="restr_pin_enter_pin" msgid="373139384161304555">"Introducir PIN"</string> <string name="restr_pin_incorrect" msgid="3861383632940852496">"Incorrecto"</string> <string name="restr_pin_enter_old_pin" msgid="7537079094090650967">"PIN actual"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"El PIN es demasiado corto. Debe tener al menos 4 dígitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Reintentar más tarde"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Modo de pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para salir, desliza hacia abajo desde la parte superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entendido"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Gira la pantalla para verlo mejor"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abre <xliff:g id="NAME">%s</xliff:g> en pantalla completa para verlo mejor"</string> @@ -1936,7 +1935,7 @@ <string name="zen_mode_default_events_name" msgid="2280682960128512257">"Evento"</string> <string name="zen_mode_default_every_night_name" msgid="1467765312174275823">"Durmiendo"</string> <string name="zen_mode_implicit_trigger_description" msgid="5714956693073007111">"Gestionado por <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> - <string name="zen_mode_implicit_activated" msgid="2634285680776672994">"Activado"</string> + <string name="zen_mode_implicit_activated" msgid="2634285680776672994">"Activada"</string> <string name="zen_mode_implicit_deactivated" msgid="8688441768371501750">"Desactivado"</string> <string name="zen_mode_trigger_summary_divider_text" msgid="7461583466043698862">", "</string> <string name="zen_mode_trigger_summary_range_symbol_combination" msgid="1804900738798069619">"<xliff:g id="START">%1$s</xliff:g>-<xliff:g id="END">%2$s</xliff:g>"</string> @@ -1955,7 +1954,7 @@ <string name="notification_phishing_alert_content_description" msgid="494227305355958790">"Alerta de phishing"</string> <string name="notification_work_profile_content_description" msgid="5296477955677725799">"Perfil de trabajo"</string> <string name="notification_alerted_content_description" msgid="6139691253611265992">"Con sonido"</string> - <string name="notification_verified_content_description" msgid="6401483602782359391">"Verificado"</string> + <string name="notification_verified_content_description" msgid="6401483602782359391">"Verificada"</string> <string name="expand_button_content_description_collapsed" msgid="3873368935659010279">"Mostrar"</string> <string name="expand_button_content_description_expanded" msgid="7484217944948667489">"Ocultar"</string> <string name="content_description_collapsed" msgid="2827748787566489401">"Contraída"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Menú de acceso directo de accesibilidad en pantalla"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Acceso directo de accesibilidad"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Cerrar pantalla de notificaciones"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menú"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Pausar/Reproducir contenido multimedia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Cruceta: arriba"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Cruceta: abajo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Cruceta: izquierda"</string> @@ -2382,13 +2383,13 @@ <string name="connected_display_unavailable_notification_title" msgid="5265409360902073556">"No se puede proyectar a la pantalla"</string> <string name="connected_display_unavailable_notification_content" msgid="3845903313751217516">"Usa otro cable y vuelve a intentarlo"</string> <string name="connected_display_thermally_unavailable_notification_content" msgid="9205758199439955949">"Tu dispositivo está demasiado caliente y no puede proyectar a la pantalla hasta que se enfríe"</string> - <string name="concurrent_display_notification_name" msgid="1526911253558311131">"Dual Screen"</string> - <string name="concurrent_display_notification_active_title" msgid="4892473462327943673">"La función Dual Screen está activada"</string> + <string name="concurrent_display_notification_name" msgid="1526911253558311131">"Pantalla dual"</string> + <string name="concurrent_display_notification_active_title" msgid="4892473462327943673">"La función Pantalla dual está activada"</string> <string name="concurrent_display_notification_active_content" msgid="5889355473710601270">"<xliff:g id="APP_NAME">%1$s</xliff:g> está usando ambas pantallas para mostrar contenido"</string> <string name="concurrent_display_notification_thermal_title" msgid="5921609404644739229">"El dispositivo está demasiado caliente"</string> - <string name="concurrent_display_notification_thermal_content" msgid="2075484836527609319">"Dual Screen no está disponible porque el teléfono se está calentando demasiado"</string> - <string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"Dual Screen no está disponible"</string> - <string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"Dual Screen no está disponible porque la función Ahorro de batería está activada. Puedes desactivarla en Ajustes."</string> + <string name="concurrent_display_notification_thermal_content" msgid="2075484836527609319">"Pantalla dual no está disponible porque el teléfono se está calentando demasiado"</string> + <string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"Pantalla dual no está disponible"</string> + <string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"Pantalla dual no está disponible porque la función Ahorro de batería está activada. Puedes desactivarla en Ajustes."</string> <string name="device_state_notification_settings_button" msgid="691937505741872749">"Ir a Ajustes"</string> <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"Desactivar"</string> <string name="keyboard_layout_notification_selected_title" msgid="1202560174252421219">"<xliff:g id="DEVICE_NAME">%s</xliff:g> configurado"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espacio privado"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Contenido sensible de la notificación oculto"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Contenido de la aplicación oculto en pantalla compartida por motivos de seguridad"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Contenido de la aplicación oculto en pantalla compartida por seguridad"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Conectado automáticamente al satélite"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Puedes enviar y recibir mensajes sin una red móvil o Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Abre Mensajes"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cómo funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendiente..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configura Desbloqueo con huella digital de nuevo"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> no funcionaba correctamente y se ha eliminado"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> no funcionaban correctamente y se han eliminado"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> no funcionaba correctamente y se ha eliminado. Configúrala de nuevo para desbloquear el teléfono con la huella digital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> no funcionaban correctamente y se han eliminado. Configúralas de nuevo para desbloquear el teléfono con la huella digital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ya no puede reconocerse."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ya no pueden reconocerse."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ya no puede reconocerse. Vuelve a configurar Desbloqueo con huella digital."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> y <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ya no pueden reconocerse. Vuelve a configurar Desbloqueo con huella digital."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configura Desbloqueo facial de nuevo"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Tu modelo facial no funcionaba correctamente y se ha eliminado. Configúralo de nuevo para desbloquear el teléfono con la cara."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Tu modelo facial ya no puede reconocerse. Vuelve a configurar Desbloqueo facial."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurar"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ahora no"</string> </resources> diff --git a/core/res/res/values-et/strings.xml b/core/res/res/values-et/strings.xml index 9c9ff1bb94dc..0d4909efc460 100644 --- a/core/res/res/values-et/strings.xml +++ b/core/res/res/values-et/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-kood on liiga lühike. Peab olema vähemalt 4-kohaline."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Proovige hiljem uuesti"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Kuvamine täisekraanil"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Väljumiseks pühkige ekraanikuva ülaosast alla"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Selge"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Pöörake parema vaate jaoks"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Parema vaate jaoks avage rakendus <xliff:g id="NAME">%s</xliff:g> täisekraanil"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekraanil kuvatav juurdepääsetavuse otsetee valija"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Juurdepääsetavuse otsetee"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Loobu märguandealast"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menüü"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Meedia esitamine/peatamine"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Suunaklahvistiku ülesnool"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Suunaklahvistiku allanool"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Suunaklahvistiku vasaknool"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Privaatne ruum"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Märguande delikaatne sisu peideti"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Rakenduse sisu on ekraani jagamises turvalisuse huvides peidetud"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Rakenduse sisu on ekraani jagamisel turvalisuse huvides peidetud"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Satelliidiga loodi automaatselt ühendus"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Teil on võimalik sõnumeid saata ja vastu võtta ilma mobiilside- ja WiFi-võrguta"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Ava rakendus Messages"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Tööpõhimõtted"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Ootel …"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Seadistage sõrmejäljega avamine uuesti"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei töötanud hästi ja kustutati"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ei töötanud hästi ning kustutati"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei töötanud hästi ja kustutati. Telefoni sõrmejäljega avamiseks seadistage see uuesti."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ei töötanud hästi ning kustutati. Telefoni sõrmejäljega avamiseks seadistage need uuesti."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Sõrmejälge <xliff:g id="FINGERPRINT">%s</xliff:g> ei saa enam tuvastada."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Sõrmejälgi <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ei saa enam tuvastada."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Sõrmejälge <xliff:g id="FINGERPRINT">%s</xliff:g> ei saa enam tuvastada. Seadistage sõrmejäljega avamine uuesti."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Sõrmejälgi <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ei saa enam tuvastada. Seadistage sõrmejäljega avamine uuesti."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Seadistage näoga avamine uuesti"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Teie näomudel ei töötanud hästi ja kustutati. Telefoni näoga avamiseks seadistage see uuesti."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Teie näomudelit ei saa enam tuvastada. Seadistage näoga avamine uuesti."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Seadista"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Mitte praegu"</string> </resources> diff --git a/core/res/res/values-eu/strings.xml b/core/res/res/values-eu/strings.xml index d2f77ebf8876..c9e0efe48ad0 100644 --- a/core/res/res/values-eu/strings.xml +++ b/core/res/res/values-eu/strings.xml @@ -203,7 +203,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"Erabilera pertsonalerako utzi du gailua administratzaileak"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"Kendu egin da eremu pribatua"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"Zure erakundeak ez ditu onartzen eremu pribatuak kudeatutako gailu honetan."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"Jabeak kudeatzen du gailua"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"Gailua kudeatuta dago"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"Erakundeak kudeatzen du gailua eta baliteke sareko trafikoa gainbegiratzea. Sakatu hau xehetasunak ikusteko."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"Aplikazioek zure kokapena atzi dezakete"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Informazio gehiago lortzeko, jo IKT saileko administratzailearengana"</string> @@ -252,7 +252,7 @@ <string name="shutdown_confirm_question" msgid="796151167261608447">"Itzali egin nahi duzu?"</string> <string name="reboot_safemode_title" msgid="5853949122655346734">"Berrabiarazi modu seguruan"</string> <string name="reboot_safemode_confirm" msgid="1658357874737219624">"Modu seguruan berrabiarazi nahi duzu? Instalatutako hirugarrenen aplikazioak desgaituko dira. Berriro berrabiarazi ondoren leheneratuko dira."</string> - <string name="recent_tasks_title" msgid="8183172372995396653">"Azkenak"</string> + <string name="recent_tasks_title" msgid="8183172372995396653">"Azkenaldikoak"</string> <string name="no_recent_tasks" msgid="9063946524312275906">"Ez dago azkenaldian erabilitako aplikaziorik."</string> <string name="global_actions" product="tablet" msgid="4412132498517933867">"Tabletaren aukerak"</string> <string name="global_actions" product="tv" msgid="3871763739487450369">"Android TV gailuaren aukerak"</string> @@ -270,7 +270,7 @@ <string name="bugreport_option_interactive_title" msgid="7968287837902871289">"Txosten dinamikoa"</string> <string name="bugreport_option_interactive_summary" msgid="8493795476325339542">"Aukera hau erabili beharko zenuke ia beti. Txostenaren jarraipena egin ahal izango duzu eta arazoari buruzko xehetasunak eman ahal izango dituzu. Baliteke gutxitan erabili behar izaten diren atalak ez agertzea, denbora aurrezteko."</string> <string name="bugreport_option_full_title" msgid="7681035745950045690">"Txosten osoa"</string> - <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Erabili aukera hau sisteman ahalik eta traba gutxien eragiteko gailuak erantzuten ez duenean, mantsoegi dabilenean edo txosteneko atal guztiak behar dituzunean. Ez dizu uzten xehetasun gehiago idazten, ezta beste pantaila-argazkirik ateratzen ere."</string> + <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Erabili aukera hau sistemaren interferentzia ahalik eta txikiena izateko gailuak erantzuten ez duenean, mantsoegi dabilenean edo txosteneko atal guztiak behar dituzunean. Ez dizu uzten xehetasun gehiago idazten, ezta beste pantaila-argazkirik ateratzen ere."</string> <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Akatsen txostenerako argazkia aterako da # segundo barru.}other{Akatsen txostenerako argazkia aterako da # segundo barru.}}"</string> <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"Pantaila-argazkia egin da akatsen txostenarekin"</string> <string name="bugreport_screenshot_failure_toast" msgid="6736320861311294294">"Ezin izan da egin pantaila-argazkia akatsen txostenarekin"</string> @@ -1332,7 +1332,7 @@ <string name="ringtone_picker_title_alarm" msgid="7438934548339024767">"Alarma-soinuak"</string> <string name="ringtone_picker_title_notification" msgid="6387191794719608122">"Jakinarazpen-soinuak"</string> <string name="ringtone_unknown" msgid="5059495249862816475">"Ezezaguna"</string> - <string name="wifi_available_sign_in" msgid="381054692557675237">"Hasi saioa Wi-Fi sarean"</string> + <string name="wifi_available_sign_in" msgid="381054692557675237">"Hasi saioa wifi-sarean"</string> <string name="network_available_sign_in" msgid="1520342291829283114">"Hasi saioa sarean"</string> <!-- no translation found for network_available_sign_in_detailed (7520423801613396556) --> <skip /> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PINa laburregia da. Lau digitu izan behar ditu gutxienez."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Saiatu berriro geroago"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Pantaila osoko ikuspegia"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Irteteko, pasatu hatza pantailaren goialdetik beherantz"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ados"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Biratu pantaila ikuspegi hobea lortzeko"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Ireki <xliff:g id="NAME">%s</xliff:g> pantaila osoan eta ikuspegi hobea lortuko duzu"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Pantailako erabilerraztasun-lasterbideen hautatzailea"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Erabilerraztasun-lasterbidea"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Baztertu jakinarazpenen panela"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menua"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Erreproduzitu/Pausatu multimedia-elementua"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Norabide-kontrolagailuko goiko botoia"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Norabide-kontrolagailuko beheko botoia"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Norabide-kontrolagailuko ezkerreko botoia"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Nola funtzionatzen du?"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Zain…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Konfiguratu berriro hatz-marka bidez desblokeatzeko eginbidea"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ezabatu egin da, ez zuelako ondo funtzionatzen"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> eta <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ezabatu egin dira, ez zutelako ondo funtzionatzen"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ezabatu egin da, ez zuelako ondo funtzionatzen. Telefonoa hatz-markarekin desblokeatzeko, konfigura ezazu berriro."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> eta <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ezabatu egin dira, ez zutelako ondo funtzionatzen. Telefonoa hatz-markarekin desblokeatzeko, konfigura itzazu berriro."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ez da ezagutzen jada."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> eta <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ez dira ezagutzen jada."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ez da ezagutzen jada. Konfiguratu berriro hatz-marka bidez desblokeatzeko eginbidea."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> eta <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ez dira ezagutzen jada. Konfiguratu berriro hatz-marka bidez desblokeatzeko eginbidea."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Konfiguratu berriro aurpegi bidez desblokeatzeko eginbidea"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Aurpegi-eredua ezabatu egin da, ez zuelako ondo funtzionatzen. Telefonoa aurpegiarekin desblokeatzeko, konfigura ezazu berriro."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Zure aurpegi-eredua ez da ezagutzen jada. Konfiguratu berriro aurpegi bidez desblokeatzeko eginbidea."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Konfiguratu"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Orain ez"</string> </resources> diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml index d761c8aca13a..a9927695599a 100644 --- a/core/res/res/values-fa/strings.xml +++ b/core/res/res/values-fa/strings.xml @@ -82,7 +82,7 @@ <string name="RestrictedStateContent" msgid="7693575344608618926">"شرکت مخابراتی شما موقتاً آن را خاموش کرده است"</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="NetworkPreferenceSwitchSummary" msgid="2086506181486324860">"تغییر شبکه ترجیحی را امتحان کنید. برای تغییر، تکضرب بزنید."</string> <string name="EmergencyCallWarningTitle" msgid="1615688002899152860">"تماس اضطراری امکانپذیر نیست"</string> <string name="EmergencyCallWarningSummary" msgid="9102799172089265268">"برای برقراری تماس اضطراری به شبکه تلفن همراه نیاز دارید"</string> <string name="notification_channel_network_alert" msgid="4788053066033851841">"هشدارها"</string> @@ -204,7 +204,7 @@ <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"فضای خصوصی حذف شد"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"سازمان شما اجازه نمیدهد در این دستگاه مدیریتشده فضای خصوصی وجود داشته باشد."</string> <string name="network_logging_notification_title" msgid="554983187553845004">"دستگاه مدیریت میشود"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"سازمانتان این دستگاه را مدیریت میکند و ممکن است ترافیک شبکه را پایش کند. برای اطلاع از جزئیات، ضربه بزنید."</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"سازمانتان این دستگاه را مدیریت میکند و ممکن است ترافیک شبکه را پایش کند. برای اطلاع از جزئیات، تکضرب بزنید."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"برنامهها میتوانند به مکانتان دسترسی پیدا کنند"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"برای کسب اطلاعات بیشتر با سرپرست فناوری اطلاعات تماس بگیرید"</string> <string name="geofencing_service" msgid="3826902410740315456">"سرویس حصارکشی جغرافیایی"</string> @@ -309,7 +309,7 @@ <string name="notification_channel_display" msgid="6905032605735615090">"نمایشگر"</string> <string name="foreground_service_app_in_background" msgid="1439289699671273555">"<xliff:g id="APP_NAME">%1$s</xliff:g> درحال استفاده کردن از باتری است"</string> <string name="foreground_service_apps_in_background" msgid="7340037176412387863">"<xliff:g id="NUMBER">%1$d</xliff:g> برنامه درحال استفاده کردن از باتری هستند"</string> - <string name="foreground_service_tap_for_details" msgid="9078123626015586751">"برای جزئیات مربوط به مصرف باتری و داده، ضربه بزنید"</string> + <string name="foreground_service_tap_for_details" msgid="9078123626015586751">"برای جزئیات مربوط به مصرف باتری و داده، تکضرب بزنید"</string> <string name="foreground_service_multiple_separator" msgid="5002287361849863168">"<xliff:g id="LEFT_SIDE">%1$s</xliff:g>، <xliff:g id="RIGHT_SIDE">%2$s</xliff:g>"</string> <string name="safeMode" msgid="8974401416068943888">"حالت ایمن"</string> <string name="android_system_label" msgid="5974767339591067210">"سیستم Android"</string> @@ -356,7 +356,7 @@ <string name="capability_title_canControlMagnification" msgid="7701572187333415795">"کنترل درشتنمایی نمایشگر"</string> <string name="capability_desc_canControlMagnification" msgid="2206586716709254805">"موقعیت و سطح بزرگنمایی نمایشگر را کنترل کنید."</string> <string name="capability_title_canPerformGestures" msgid="9106545062106728987">"اجرای اشارهها"</string> - <string name="capability_desc_canPerformGestures" msgid="6619457251067929726">"میتوانید ضربه بزنید، انگشتتان را تند بکشید، انگشتانتان را به هم نزدیک یا از هم دور کنید و اشارههای دیگری اجرا کنید."</string> + <string name="capability_desc_canPerformGestures" msgid="6619457251067929726">"میتوانید تکضرب بزنید، انگشتتان را تند بکشید، انگشتانتان را به هم نزدیک یا از هم دور کنید و اشارههای دیگری اجرا کنید."</string> <string name="capability_title_canCaptureFingerprintGestures" msgid="1189053104594608091">"اشارههای اثر انگشت"</string> <string name="capability_desc_canCaptureFingerprintGestures" msgid="6861869337457461274">"میتواند اشارههای اجراشده روی حسگر اثرانگشت دستگاه را ثبت کند."</string> <string name="capability_title_canTakeScreenshot" msgid="3895812893130071930">"گرفتن نماگرفت"</string> @@ -612,8 +612,8 @@ <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"به برنامه اجازه داده میشود موقعیت نسبی بین دستگاههای «فراپهنباند» اطراف را مشخص کند"</string> <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"برقراری تعامل با دستگاههای Wi-Fi اطراف"</string> <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"به برنامه اجازه میدهد در دستگاههای Wi-Fi اطراف تبلیغ کند، به آنها متصل شود، و موقعیت نسبی آنها را تشخیص دهد"</string> - <string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"اطلاعات ترجیحی سرویس پولی NFC"</string> - <string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"به برنامه اجازه میدهد اطلاعات ترجیحی سرویس پولی NFC، مانند کمکهای ثبتشده و مقصد مسیر را دریافت کند."</string> + <string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"اطلاعات ترجیحی سرویس پرداخت NFC"</string> + <string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"به برنامه اجازه میدهد اطلاعات ترجیحی سرویس پرداخت NFC، مانند کمکهای ثبتشده و مقصد مسیر را دریافت کند."</string> <string name="permlab_nfc" msgid="1904455246837674977">"کنترل ارتباط راه نزدیک"</string> <string name="permdesc_nfc" msgid="8352737680695296741">"به برنامه اجازه میدهد تا با تگهای NFC، کارتها و فایلخوان ارتباط برقرار کند."</string> <string name="permlab_nfcTransactionEvent" msgid="5868209446710407679">"رویداد تراکنش Secure Element"</string> @@ -701,7 +701,7 @@ <string name="alternative_fp_setup_notification_content" msgid="7454096947415721639">"وقتی چهرهتان تشخیص داده نمیشود، مثل زمانی که نور کافی نیست، از «قفلگشایی با اثر انگشت» استفاده کنید"</string> <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_recalibrate_notification_content" msgid="3064513770251355594">"برای حذف مدل چهرهتان تکضرب بزنید، سپس چهرهتان را دوباره اضافه کنید"</string> <string name="face_sensor_privacy_enabled" msgid="7407126963510598508">"برای استفاده از «قفلگشایی با چهره»، "<b>"دسترسی به دوربین"</b>" را در «تنظیمات > حریم خصوصی» روشن کنید"</string> <string name="fingerprint_recalibrate_notification_name" msgid="1414578431898579354">"قفلگشایی با اثر انگشت"</string> <string name="fingerprint_recalibrate_notification_title" msgid="2406561052064558497">"امکان استفاده از حسگر اثر انگشت وجود ندارد"</string> @@ -847,7 +847,7 @@ <string name="policydesc_resetPassword" msgid="4626419138439341851">"قفل صفحه را تغییر میدهد."</string> <string name="policylab_forceLock" msgid="7360335502968476434">"قفل کردن صفحه"</string> <string name="policydesc_forceLock" msgid="1008844760853899693">"نحوه و زمان قفل شدن صفحه را کنترل میکند."</string> - <string name="policylab_wipeData" msgid="1359485247727537311">"پاک کردن تمام دادهها"</string> + <string name="policylab_wipeData" msgid="1359485247727537311">"پاک کردن همه دادهها"</string> <string name="policydesc_wipeData" product="tablet" msgid="7245372676261947507">"با انجام بازنشانی دادههای کارخانه، دادههای رایانهٔ لوحی بدون هشدار پاک میشود."</string> <string name="policydesc_wipeData" product="tv" msgid="513862488950801261">"دادههای دستگاه Android TV شما، بدون نشان داده شدن هشدار و با انجام بازنشانی دادههای کارخانه، پاک میشود."</string> <string name="policydesc_wipeData" product="automotive" msgid="660804547737323300">"دادههای سیستم اطلاعات-سرگرمی بدون هشدار و با انجام بازنشانی دادههای کارخانه پاک میشود."</string> @@ -986,7 +986,7 @@ <string name="keyguard_password_enter_puk_code" msgid="3112256684547584093">"PUK و پین کد جدید را تایپ کنید"</string> <string name="keyguard_password_enter_puk_prompt" msgid="2825313071899938305">"کد PUK"</string> <string name="keyguard_password_enter_pin_prompt" msgid="5505434724229581207">"پین کد جدید"</string> - <string name="keyguard_password_entry_touch_hint" msgid="4032288032993261520"><font size="17">"برای تایپ گذرواژه ضربه بزنید"</font></string> + <string name="keyguard_password_entry_touch_hint" msgid="4032288032993261520"><font size="17">"برای تایپ گذرواژه تکضرب بزنید"</font></string> <string name="keyguard_password_enter_password_code" msgid="2751130557661643482">"برای بازکردن قفل، گذرواژه را وارد کنید"</string> <string name="keyguard_password_enter_pin_password_code" msgid="7792964196473964340">"برای بازکردن قفل، پین را تایپ کنید"</string> <string name="keyguard_password_wrong_pin_code" msgid="8583732939138432793">"پین کد اشتباه است."</string> @@ -1057,19 +1057,19 @@ <string name="lockscreen_access_pattern_cell_added_verbose" msgid="2931364927622563465">"سلول <xliff:g id="CELL_INDEX">%1$s</xliff:g> اضافه شد"</string> <string name="lockscreen_access_pattern_detected" msgid="3931150554035194012">"الگو کامل شد"</string> <string name="lockscreen_access_pattern_area" msgid="1288780416685002841">"ناحیه الگو"</string> - <string name="keyguard_accessibility_widget_changed" msgid="7298011259508200234">"%1$s. ابزارک %2$d از %3$d."</string> - <string name="keyguard_accessibility_add_widget" msgid="8245795023551343672">"ابزارک اضافه کنید."</string> + <string name="keyguard_accessibility_widget_changed" msgid="7298011259508200234">"%1$s. ابزاره %2$d از %3$d."</string> + <string name="keyguard_accessibility_add_widget" msgid="8245795023551343672">"ابزاره اضافه کنید."</string> <string name="keyguard_accessibility_widget_empty_slot" msgid="544239307077644480">"خالی"</string> <string name="keyguard_accessibility_unlock_area_expanded" msgid="7768634718706488951">"منطقه بازگشایی گسترده شد."</string> <string name="keyguard_accessibility_unlock_area_collapsed" msgid="4729922043778400434">"منطقه بازگشایی کوچک شد."</string> - <string name="keyguard_accessibility_widget" msgid="6776892679715699875">"ابزارک <xliff:g id="WIDGET_INDEX">%1$s</xliff:g>."</string> + <string name="keyguard_accessibility_widget" msgid="6776892679715699875">"ابزاره <xliff:g id="WIDGET_INDEX">%1$s</xliff:g>."</string> <string name="keyguard_accessibility_user_selector" msgid="1466067610235696600">"انتخابگر کاربر"</string> <string name="keyguard_accessibility_status" msgid="6792745049712397237">"وضعیت"</string> <string name="keyguard_accessibility_camera" msgid="7862557559464986528">"دوربین"</string> <string name="keygaurd_accessibility_media_controls" msgid="2267379779900620614">"کنترلهای رسانه"</string> - <string name="keyguard_accessibility_widget_reorder_start" msgid="7066213328912939191">"مرتب سازی مجدد ابزارک آغاز شد."</string> - <string name="keyguard_accessibility_widget_reorder_end" msgid="1083806817600593490">"مرتبسازی مجدد ابزارک به پایان رسید."</string> - <string name="keyguard_accessibility_widget_deleted" msgid="1509738950119878705">"ابزارک <xliff:g id="WIDGET_INDEX">%1$s</xliff:g> حذف شد."</string> + <string name="keyguard_accessibility_widget_reorder_start" msgid="7066213328912939191">"مرتب سازی مجدد ابزاره آغاز شد."</string> + <string name="keyguard_accessibility_widget_reorder_end" msgid="1083806817600593490">"مرتبسازی مجدد ابزاره به پایان رسید."</string> + <string name="keyguard_accessibility_widget_deleted" msgid="1509738950119878705">"ابزاره <xliff:g id="WIDGET_INDEX">%1$s</xliff:g> حذف شد."</string> <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> @@ -1183,7 +1183,7 @@ <string name="copyUrl" msgid="6229645005987260230">"کپی URL"</string> <string name="selectTextMode" msgid="3225108910999318778">"انتخاب متن"</string> <string name="undo" msgid="3175318090002654673">"لغو"</string> - <string name="redo" msgid="7231448494008532233">"بازانجام"</string> + <string name="redo" msgid="7231448494008532233">"ازنو انجام دادن"</string> <string name="autofill" msgid="511224882647795296">"تکمیل خودکار"</string> <string name="textSelectionCABTitle" msgid="5151441579532476940">"انتخاب متن"</string> <string name="addToDictionary" msgid="8041821113480950096">"افزودن به واژهنامه"</string> @@ -1198,7 +1198,7 @@ <string name="low_internal_storage_view_text" msgid="8172166728369697835">"برخی از عملکردهای سیستم ممکن است کار نکنند"</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"فضای ذخیرهسازی سیستم کافی نیست. اطمینان حاصل کنید که دارای ۲۵۰ مگابایت فضای خالی هستید و سیستم را راهاندازی مجدد کنید."</string> <string name="app_running_notification_title" msgid="8985999749231486569">"<xliff:g id="APP_NAME">%1$s</xliff:g> در حال اجرا است"</string> - <string name="app_running_notification_text" msgid="5120815883400228566">"برای کسب اطلاعات بیشتر یا توقف برنامه ضربه بزنید."</string> + <string name="app_running_notification_text" msgid="5120815883400228566">"برای کسب اطلاعات بیشتر یا توقف برنامه تکضرب بزنید."</string> <string name="ok" msgid="2646370155170753815">"تأیید"</string> <string name="cancel" msgid="6908697720451760115">"لغو"</string> <string name="yes" msgid="9069828999585032361">"تأیید"</string> @@ -1289,15 +1289,15 @@ <string name="android_preparing_apk" msgid="589736917792300956">"آمادهسازی <xliff:g id="APPNAME">%1$s</xliff:g>."</string> <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_message" msgid="5648173517663246140">"دکمه روشن/خاموش را فشار دادید — این کار معمولاً صفحهنمایش را خاموش میکند.\n\nهنگام راهاندازی اثر انگشت، آرام تکضرب بزنید."</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> + <string name="fp_power_button_bp_message" msgid="2983163038168903393">"دکمه روشن/خاموش را فشار دادید — این کار معمولاً صفحهنمایش را خاموش میکند.\n\nبرای تأیید اثر انگشتتان، آرام تکضرب بزنید."</string> <string name="fp_power_button_bp_positive_button" msgid="728945472408552251">"خاموش کردن صفحه"</string> <string name="fp_power_button_bp_negative_button" msgid="3971364246496775178">"ادامه"</string> <string name="heavy_weight_notification" msgid="8382784283600329576">"<xliff:g id="APP">%1$s</xliff:g> در حال اجرا"</string> - <string name="heavy_weight_notification_detail" msgid="6802247239468404078">"برای برگشتن به بازی، ضربه بزنید"</string> + <string name="heavy_weight_notification_detail" msgid="6802247239468404078">"برای برگشتن به بازی، تکضرب بزنید"</string> <string name="heavy_weight_switcher_title" msgid="3861984210040100886">"انتخاب بازی"</string> <string name="heavy_weight_switcher_text" msgid="6814316627367160126">"برای عملکرد بهتر، هربار فقط یکی از این بازیها را میتوان باز کرد."</string> <string name="old_app_action" msgid="725331621042848590">"به <xliff:g id="OLD_APP">%1$s</xliff:g> برگردید"</string> @@ -1305,19 +1305,19 @@ <string name="new_app_description" msgid="1958903080400806644">"<xliff:g id="OLD_APP">%1$s</xliff:g> بدون ذخیره شدن بسته میشود"</string> <string name="dump_heap_notification" msgid="5316644945404825032">"<xliff:g id="PROC">%1$s</xliff:g> از حد مجاز حافظه فراتر رفت"</string> <string name="dump_heap_ready_notification" msgid="2302452262927390268">"رونوشت حافظه آزاد<xliff:g id="PROC">%1$s</xliff:g> آماده است"</string> - <string name="dump_heap_notification_detail" msgid="8431586843001054050">"رونوشت حافظه جمعآوری شد. برای همرسانی ضربه بزنید."</string> + <string name="dump_heap_notification_detail" msgid="8431586843001054050">"رونوشت حافظه جمعآوری شد. برای همرسانی تکضرب بزنید."</string> <string name="dump_heap_title" msgid="4367128917229233901">"رونوشت حافظه آزاد به اشتراک گذاشته شود؟"</string> <string name="dump_heap_text" msgid="1692649033835719336">"فرآیند <xliff:g id="PROC">%1$s</xliff:g> از حد مجاز حافظه پردازش خود،<xliff:g id="SIZE">%2$s</xliff:g>، فراتر رفته است. رونوشت حافظه آزادی دردسترستان است که با برنامهنویس آن به اشتراک بگذارید. مراقب باشید: این رونوشت حافظه آزاد میتواند حاوی هرنوع اطلاعات شخصی شما باشد که برنامه به آن دسترسی دارد."</string> <string name="dump_heap_system_text" msgid="6805155514925350849">"فرآیند <xliff:g id="PROC">%1$s</xliff:g> از حد مجاز حافظه پردازش خود <xliff:g id="SIZE">%2$s</xliff:g> فراتر رفته است. یک رونوشت حافظه آزاد برای شما برای همرسانی دردسترس است. مواظب باشید: این رونوشت حافظه آزاد میتواند حاوی هر نوع اطلاعات شخصی شما باشد که فرآیند به آن دسترسی دارد که ممکن است شامل چیزهایی باشد که تایپ کردهاید."</string> <string name="dump_heap_ready_text" msgid="5849618132123045516">"رونوشت حافظه آزاد فرآیند<xliff:g id="PROC">%1$s</xliff:g> برای همرسانی دردسترس شما قرار دارد. مراقب باشید: ممکن است این رونوشت حافظه آزاد حاوی اطلاعات شخصی حساس باشد که فرآیند به آن دسترسی دارد و ممکن است شامل چیزهایی باشد که تایپ کردهاید."</string> <string name="sendText" msgid="493003724401350724">"انتخاب یک عملکرد برای نوشتار"</string> - <string name="volume_ringtone" msgid="134784084629229029">"میزان صدای زنگ"</string> + <string name="volume_ringtone" msgid="134784084629229029">"صدای زنگ"</string> <string name="volume_music" msgid="7727274216734955095">"میزان صدای رسانه"</string> <string name="volume_music_hint_playing_through_bluetooth" msgid="2614142915948898228">"پخش از طریق بلوتوث"</string> <string name="volume_music_hint_silent_ringtone_selected" msgid="1514829655029062233">"آهنگ زنگ روی بیصدا تنظیم شد"</string> <string name="volume_call" msgid="7625321655265747433">"صدا حینِ تماس"</string> <string name="volume_bluetooth_call" msgid="2930204618610115061">"میزان صدای تماس بلوتوث"</string> - <string name="volume_alarm" msgid="4486241060751798448">"میزان صدای زنگ"</string> + <string name="volume_alarm" msgid="4486241060751798448">"صدای زنگ هشدار"</string> <string name="volume_notification" msgid="6864412249031660057">"میزان صدای اعلان"</string> <string name="volume_unknown" msgid="4041914008166576293">"میزان صدا"</string> <string name="volume_icon_description_bluetooth" msgid="7540388479345558400">"میزان صدای بلوتوث"</string> @@ -1337,12 +1337,12 @@ <!-- no translation found for network_available_sign_in_detailed (7520423801613396556) --> <skip /> <string name="wifi_no_internet" msgid="1386911698276448061">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> به اینترنت دسترسی ندارد"</string> - <string name="wifi_no_internet_detailed" msgid="634938444133558942">"برای گزینهها ضربه بزنید"</string> + <string name="wifi_no_internet_detailed" msgid="634938444133558942">"برای گزینهها تکضرب بزنید"</string> <string name="mobile_no_internet" msgid="4014455157529909781">"شبکه تلفن همراه به اینترنت دسترسی ندارد"</string> <string name="other_networks_no_internet" msgid="6698711684200067033">"شبکه به اینترنت دسترسی ندارد"</string> <string name="private_dns_broken_detailed" msgid="3709388271074611847">"سرور DNS خصوصی قابل دسترسی نیست"</string> <string name="network_partial_connectivity" msgid="4791024923851432291">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> اتصال محدودی دارد"</string> - <string name="network_partial_connectivity_detailed" msgid="5741329444564575840">"بههرصورت، برای اتصال ضربه بزنید"</string> + <string name="network_partial_connectivity_detailed" msgid="5741329444564575840">"بههرصورت، برای اتصال تکضرب بزنید"</string> <string name="network_switch_metered" msgid="1531869544142283384">"به <xliff:g id="NETWORK_TYPE">%1$s</xliff:g> تغییر کرد"</string> <string name="network_switch_metered_detail" msgid="1358296010128405906">"وقتی <xliff:g id="PREVIOUS_NETWORK">%2$s</xliff:g> به اینترنت دسترسی نداشته باشد، دستگاه از <xliff:g id="NEW_NETWORK">%1$s</xliff:g> استفاده میکند. ممکن است هزینههایی اعمال شود."</string> <string name="network_switch_metered_toast" msgid="501662047275723743">"از <xliff:g id="PREVIOUS_NETWORK">%1$s</xliff:g> به <xliff:g id="NEW_NETWORK">%2$s</xliff:g> تغییر کرد"</string> @@ -1381,7 +1381,7 @@ <string name="install_carrier_app_notification_text_app_name" msgid="4086877327264106484">"برای فعال کردن سیمکارت جدیدتان، برنامه <xliff:g id="APP_NAME">%1$s</xliff:g> را بارگیری کنید"</string> <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"بارگیری برنامه"</string> <string name="carrier_app_notification_title" msgid="5815477368072060250">"سیمکارت جدید جاگذاری شد"</string> - <string name="carrier_app_notification_text" msgid="6567057546341958637">"برای تنظیم آن ضربه بزنید"</string> + <string name="carrier_app_notification_text" msgid="6567057546341958637">"برای تنظیم آن تکضرب بزنید"</string> <string name="time_picker_dialog_title" msgid="9053376764985220821">"تنظیم زمان"</string> <string name="date_picker_dialog_title" msgid="5030520449243071926">"تاریخ تنظیم"</string> <string name="date_time_set" msgid="4603445265164486816">"تنظیم"</string> @@ -1399,15 +1399,15 @@ <string name="usb_midi_notification_title" msgid="7404506788950595557">"MIDI ازطریق USB روشن شد"</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_power_notification_message" msgid="7284765627437897702">"درحال شارژ کردن دستگاه متصلشده. برای گزینههای بیشتر، ضربه بزنید."</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> + <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> + <string name="adbwifi_active_notification_message" msgid="930987922852867972">"برای خاموش کردن اشکالزدایی بیسیم تکضرب بزنید"</string> <string name="adbwifi_active_notification_message" product="tv" msgid="8633421848366915478">"برای غیرفعال کردن اشکالزدایی بیسیم انتخاب کنید."</string> <string name="test_harness_mode_notification_title" msgid="2282785860014142511">"«حالت مجموعه دادههای تست» فعال شد"</string> <string name="test_harness_mode_notification_message" msgid="3039123743127958420">"برای غیرفعال کردن «حالت مجموعه دادههای تست»، بازنشانی کارخانهای کنید."</string> @@ -1416,7 +1416,7 @@ <string name="mte_override_notification_title" msgid="4731115381962792944">"MTE آزمایشی فعال شد"</string> <string name="mte_override_notification_message" msgid="2441170442725738942">"شاید عملکرد و پایداری تحت تأثیر قرار بگیرند. برای غیرفعال کردن، بازراهاندازی کنید. اگر بااستفاده از arm64.memtag.bootctl فعال شده است، پیشاز بازراهاندازی مقدار آن را روی هیچکدام تنظیم کنید."</string> <string name="usb_contaminant_detected_title" msgid="4359048603069159678">"مایعات یا خاکروبه در درگاه USB"</string> - <string name="usb_contaminant_detected_message" msgid="7346100585390795743">"درگاه USB بهطور خودکار غیرفعال شده است. برای اطلاعات بیشتر، ضربه بزنید."</string> + <string name="usb_contaminant_detected_message" msgid="7346100585390795743">"درگاه USB بهطور خودکار غیرفعال شده است. برای اطلاعات بیشتر، تکضرب بزنید."</string> <string name="usb_contaminant_not_detected_title" msgid="2651167729563264053">"میتوان از درگاه USB استفاده کرد"</string> <string name="usb_contaminant_not_detected_message" msgid="892863190942660462">"تلفن دیگر وجود مایعات یا خاکروبه را تشخیص نمیدهد."</string> <string name="taking_remote_bugreport_notification_title" msgid="1582531382166919850">"درحال گرفتن گزارش اشکال…"</string> @@ -1430,7 +1430,7 @@ <string name="hardware" msgid="3611039921284836033">"استفاده از صفحهکلید مجازی"</string> <string name="select_keyboard_layout_notification_title" msgid="5823199895322205589">"پیکربندی <xliff:g id="DEVICE_NAME">%s</xliff:g>"</string> <string name="select_multiple_keyboards_layout_notification_title" msgid="6999491025126641938">"پیکربندی صفحهکلیدهای فیزیکی"</string> - <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"برای انتخاب زبان و چیدمان ضربه بزنید"</string> + <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"برای انتخاب زبان و چیدمان تکضرب بزنید"</string> <string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"نمایش روی سایر برنامهها"</string> @@ -1443,19 +1443,19 @@ <string name="ext_media_checking_notification_message" product="tv" msgid="7986154434946021415">"درحال تجزیهوتحلیل فضای ذخیرهسازی رسانه"</string> <string name="ext_media_new_notification_title" msgid="3517407571407687677">"<xliff:g id="NAME">%s</xliff:g> جدید"</string> <string name="ext_media_new_notification_title" product="automotive" msgid="9085349544984742727">"<xliff:g id="NAME">%s</xliff:g> کار نمیکند"</string> - <string name="ext_media_new_notification_message" msgid="6095403121990786986">"برای راهاندازی ضربه بزنید"</string> + <string name="ext_media_new_notification_message" msgid="6095403121990786986">"برای راهاندازی تکضرب بزنید"</string> <string name="ext_media_new_notification_message" product="tv" msgid="216863352100263668">"برای راهاندازی، انتخاب کنید"</string> - <string name="ext_media_new_notification_message" product="automotive" msgid="5140127881613227162">"شاید لازم باشد دستگاه را دوباره قالببندی کنید. برای خارج کردن، ضربه بزنید."</string> + <string name="ext_media_new_notification_message" product="automotive" msgid="5140127881613227162">"شاید لازم باشد دستگاه را دوباره قالببندی کنید. برای خارج کردن، تکضرب بزنید."</string> <string name="ext_media_ready_notification_message" msgid="7509496364380197369">"برای ذخیره کردن عکس، ویدیو، موسیقی و غیره"</string> <string name="ext_media_ready_notification_message" product="tv" msgid="8847134811163165935">"فایلهای رسانهای را مرور کنید"</string> <string name="ext_media_unmountable_notification_title" msgid="4895444667278979910">"مشکل مرتبط با <xliff:g id="NAME">%s</xliff:g>"</string> <string name="ext_media_unmountable_notification_title" product="automotive" msgid="3142723758949023280">"<xliff:g id="NAME">%s</xliff:g> کار نمیکند"</string> - <string name="ext_media_unmountable_notification_message" msgid="3256290114063126205">"برای برطرف کردن مشکل، ضربه بزنید"</string> + <string name="ext_media_unmountable_notification_message" msgid="3256290114063126205">"برای برطرف کردن مشکل، تکضرب بزنید"</string> <string name="ext_media_unmountable_notification_message" product="tv" msgid="3003611129979934633">"<xliff:g id="NAME">%s</xliff:g> خراب است. رفع خطا را انتخاب کنید."</string> - <string name="ext_media_unmountable_notification_message" product="automotive" msgid="2274596120715020680">"شاید لازم باشد دستگاه را دوباره قالببندی کنید. برای خارج کردن، ضربه بزنید."</string> + <string name="ext_media_unmountable_notification_message" product="automotive" msgid="2274596120715020680">"شاید لازم باشد دستگاه را دوباره قالببندی کنید. برای خارج کردن، تکضرب بزنید."</string> <string name="ext_media_unsupported_notification_title" msgid="3487534182861251401">"<xliff:g id="NAME">%s</xliff:g> تشخیص داده شد"</string> <string name="ext_media_unsupported_notification_title" product="automotive" msgid="6004193172658722381">"<xliff:g id="NAME">%s</xliff:g> کار نمیکند"</string> - <string name="ext_media_unsupported_notification_message" msgid="8463636521459807981">"برای راهاندازی ضربه بزنید."</string> + <string name="ext_media_unsupported_notification_message" msgid="8463636521459807981">"برای راهاندازی تکضرب بزنید."</string> <string name="ext_media_unsupported_notification_message" product="tv" msgid="1595482802187036532">"برای راهاندازی <xliff:g id="NAME">%s</xliff:g> در قالب پشتیبانیشده، انتخاب کنید."</string> <string name="ext_media_unsupported_notification_message" product="automotive" msgid="3412494732736336330">"شاید لازم باشد دستگاه را دوباره قالببندی کنید"</string> <string name="ext_media_badremoval_notification_title" msgid="4114625551266196872">"<xliff:g id="NAME">%s</xliff:g> بهطور غیرمنتظره جدا شد"</string> @@ -1500,8 +1500,8 @@ <string name="permdesc_requestIgnoreBatteryOptimizations" msgid="634260656917874356">"به یک برنامه اجازه میدهد جهت نادیده گرفتن بهینهسازی باتری برای خود مجوز درخواست کند."</string> <string name="permlab_queryAllPackages" msgid="2928450604653281650">"پُرسمان همه بستهها"</string> <string name="permdesc_queryAllPackages" msgid="5339069855520996010">"به برنامه اجازه میدهد همه بستههای نصبشده را ببیند."</string> - <string name="tutorial_double_tap_to_zoom_message_short" msgid="1842872462124648678">"برای کنترل بزرگنمایی، دو بار ضربه بزنید"</string> - <string name="gadget_host_error_inflating" msgid="2449961590495198720">"افزودن ابزارک انجام نشد."</string> + <string name="tutorial_double_tap_to_zoom_message_short" msgid="1842872462124648678">"برای کنترل بزرگنمایی، دو بار تکضرب بزنید"</string> + <string name="gadget_host_error_inflating" msgid="2449961590495198720">"افزودن ابزاره انجام نشد."</string> <string name="ime_action_go" msgid="5536744546326495436">"برو"</string> <string name="ime_action_search" msgid="4501435960587287668">"جستجو"</string> <string name="ime_action_send" msgid="8456843745664334138">"ارسال"</string> @@ -1532,8 +1532,8 @@ <string name="notification_ranker_binding_label" msgid="432708245635563763">"سرویس ردهبندی اعلان"</string> <string name="vpn_title" msgid="5906991595291514182">"VPN فعال شد"</string> <string name="vpn_title_long" msgid="6834144390504619998">"VPN را <xliff:g id="APP">%s</xliff:g> فعال کرده است"</string> - <string name="vpn_text" msgid="2275388920267251078">"برای مدیریت شبکه ضربه بزنید."</string> - <string name="vpn_text_long" msgid="278540576806169831">"به <xliff:g id="SESSION">%s</xliff:g> متصل شد. برای مدیریت شبکه ضربه بزنید."</string> + <string name="vpn_text" msgid="2275388920267251078">"برای مدیریت شبکه تکضرب بزنید."</string> + <string name="vpn_text_long" msgid="278540576806169831">"به <xliff:g id="SESSION">%s</xliff:g> متصل شد. برای مدیریت شبکه تکضرب بزنید."</string> <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"درحال اتصال به VPN همیشه روشن…"</string> <string name="vpn_lockdown_connected" msgid="2853127976590658469">"VPN همیشه روشن متصل شد"</string> <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"از «VPN همیشه روشن» قطع شد"</string> @@ -1544,7 +1544,7 @@ <string name="reset" msgid="3865826612628171429">"بازنشانی"</string> <string name="submit" msgid="862795280643405865">"ارسال"</string> <string name="car_mode_disable_notification_title" msgid="8450693275833142896">"برنامه رانندگی درحال اجرا است"</string> - <string name="car_mode_disable_notification_message" msgid="8954550232288567515">"برای خروج از برنامه رانندگی ضربه بزنید."</string> + <string name="car_mode_disable_notification_message" msgid="8954550232288567515">"برای خروج از برنامه رانندگی تکضرب بزنید."</string> <string name="back_button_label" msgid="4078224038025043387">"برگشت"</string> <string name="next_button_label" msgid="6040209156399907780">"بعدی"</string> <string name="skip_button_label" msgid="3566599811326688389">"رد شدن"</string> @@ -1623,7 +1623,7 @@ <string name="data_usage_wifi_limit_snoozed_title" msgid="1622359254521960508">"بیشاز حدمجاز داده Wi-Fi"</string> <string name="data_usage_limit_snoozed_body" msgid="545146591766765678">"مصرف داده شما <xliff:g id="SIZE">%s</xliff:g> از حداکثر مجاز بیشتر شده است"</string> <string name="data_usage_restricted_title" msgid="126711424380051268">"داده پسزمینه محدود شد"</string> - <string name="data_usage_restricted_body" msgid="5338694433686077733">"برای برداشتن محدودیت ضربه بزنید."</string> + <string name="data_usage_restricted_body" msgid="5338694433686077733">"برای برداشتن محدودیت تکضرب بزنید."</string> <string name="data_usage_rapid_title" msgid="2950192123248740375">"مصرف بالای داده تلفن همراه"</string> <string name="data_usage_rapid_body" msgid="3886676853263693432">"برنامههای شما بیش از معمول داده مصرف کردهاند"</string> <string name="data_usage_rapid_app_body" msgid="5425779218506513861">"<xliff:g id="APP">%s</xliff:g> بیش از معمول داده مصرف کرده است"</string> @@ -1739,7 +1739,7 @@ <string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"مجاز نبودن"</string> <string name="accessibility_dialog_button_uninstall" msgid="2952465517671708108">"حذف نصب"</string> <string name="accessibility_dialog_touch_filtered_warning" msgid="3741940116597822451">"پاسخ شما تأیید نشد زیرا یک برنامه درخواست اجازه را مسدود کرده است."</string> - <string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"برای استفاده از ویژگی، روی آن ضربه بزنید:"</string> + <string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"برای استفاده از ویژگی، روی آن تکضرب بزنید:"</string> <string name="accessibility_edit_shortcut_menu_button_title" msgid="239446795930436325">"انتخاب ویژگیهای موردنظر برای استفاده با دکمه دسترسپذیری"</string> <string name="accessibility_edit_shortcut_menu_volume_title" msgid="1077294237378645981">"انتخاب ویژگیهای موردنظر برای استفاده با میانبر کلید میزان صدا"</string> <string name="accessibility_uncheck_legacy_item_warning" msgid="8047830891064817447">"<xliff:g id="SERVICE_NAME">%s</xliff:g> خاموش شده است"</string> @@ -1871,7 +1871,7 @@ <string name="reason_unknown" msgid="5599739807581133337">"نامعلوم"</string> <string name="reason_service_unavailable" msgid="5288405248063804713">"سرویس چاپ فعال نشده است"</string> <string name="print_service_installed_title" msgid="6134880817336942482">"سرویس <xliff:g id="NAME">%s</xliff:g> نصب شد"</string> - <string name="print_service_installed_message" msgid="7005672469916968131">"برای فعال کردن ضربه بزنید"</string> + <string name="print_service_installed_message" msgid="7005672469916968131">"برای فعال کردن تکضرب بزنید"</string> <string name="restr_pin_enter_admin_pin" msgid="1199419462726962697">"پین سرپرست سیستم را وارد کنید"</string> <string name="restr_pin_enter_pin" msgid="373139384161304555">"پین را وارد کنید"</string> <string name="restr_pin_incorrect" msgid="3861383632940852496">"نادرست"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"پین بیش از حد کوتاه است. باید حداقل ۴ رقم باشد."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"بعداً دوباره امتحان کنید"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"مشاهده در حالت تمام صفحه"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"برای خروج، از بالای صفحه تند به پایین بکشید"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"متوجه شدم"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"برای دید بهتر، دستگاه را بچرخانید"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"برای دید بهتر، <xliff:g id="NAME">%s</xliff:g> را بهصورت تمامصفحه باز کنید"</string> @@ -2032,9 +2031,9 @@ <string name="new_sms_notification_content" msgid="3197949934153460639">"برای مشاهده، برنامه پیامک را باز کنید"</string> <string name="profile_encrypted_title" msgid="9001208667521266472">"برخی از عملکردها ممکن است محدود باشند"</string> <string name="profile_encrypted_detail" msgid="5279730442756849055">"نمایه کاری قفل است"</string> - <string name="profile_encrypted_message" msgid="1128512616293157802">"برای باز کردن قفل ضربه بزنید"</string> + <string name="profile_encrypted_message" msgid="1128512616293157802">"برای باز کردن قفل تکضرب بزنید"</string> <string name="usb_mtp_launch_notification_title" msgid="774319638256707227">"به <xliff:g id="PRODUCT_NAME">%1$s</xliff:g> متصل شد"</string> - <string name="usb_mtp_launch_notification_description" msgid="6942535713629852684">"برای دیدن فایلها، ضربه بزنید"</string> + <string name="usb_mtp_launch_notification_description" msgid="6942535713629852684">"برای دیدن فایلها، تکضرب بزنید"</string> <string name="pin_target" msgid="8036028973110156895">"سنجاق کردن"</string> <string name="pin_specific_target" msgid="7824671240625957415">"سنجاق کردن <xliff:g id="LABEL">%1$s</xliff:g>"</string> <string name="unpin_target" msgid="3963318576590204447">"برداشتن سنجاق"</string> @@ -2122,11 +2121,11 @@ <string name="notification_channel_system_changes" msgid="2462010596920209678">"تغییرات سیستم"</string> <string name="notification_channel_do_not_disturb" msgid="7832584281883687653">"مزاحم نشوید"</string> <string name="zen_upgrade_notification_visd_title" msgid="2001148984371968620">"جدید: «مزاحم نشوید» اعلانها را پنهان میکند"</string> - <string name="zen_upgrade_notification_visd_content" msgid="3683314609114134946">"برای اطلاعات بیشتر و تغییر دادن، ضربه بزنید."</string> + <string name="zen_upgrade_notification_visd_content" msgid="3683314609114134946">"برای اطلاعات بیشتر و تغییر دادن، تکضرب بزنید."</string> <string name="zen_upgrade_notification_title" msgid="8198167698095298717">"«مزاحم نشوید» تغییر کرده است"</string> - <string name="zen_upgrade_notification_content" msgid="5228458567180124005">"برای بررسی موارد مسدودشده ضربه بزنید."</string> + <string name="zen_upgrade_notification_content" msgid="5228458567180124005">"برای بررسی موارد مسدودشده تکضرب بزنید."</string> <string name="review_notification_settings_title" msgid="5102557424459810820">"مرور تنظیمات اعلان"</string> - <string name="review_notification_settings_text" msgid="5916244866751849279">"از Android نسخه ۱۳ به بعد، برنامههایی که نصب میکنید برای ارسال اعلان به اجازه شما نیاز دارند. برای تغییر دادن این اجازه در برنامههای موجود، ضربه بزنید."</string> + <string name="review_notification_settings_text" msgid="5916244866751849279">"از Android نسخه ۱۳ به بعد، برنامههایی که نصب میکنید برای ارسال اعلان به اجازه شما نیاز دارند. برای تغییر دادن این اجازه در برنامههای موجود، تکضرب بزنید."</string> <string name="review_notification_settings_remind_me_action" msgid="1081081018678480907">"بعداً یادآوری شود"</string> <string name="review_notification_settings_dismiss" msgid="4160916504616428294">"رد شدن"</string> <string name="notification_app_name_system" msgid="3045196791746735601">"سیستم"</string> @@ -2135,10 +2134,10 @@ <string name="notification_appops_microphone_active" msgid="581333393214739332">"میکروفون"</string> <string name="notification_appops_overlay_active" msgid="5571732753262836481">"نمایش روی برنامههای دیگر در صفحهنمایش"</string> <string name="notification_feedback_indicator" msgid="663476517711323016">"ارائه بازخورد"</string> - <string name="notification_feedback_indicator_alerted" msgid="6552871804121942099">"این اعلان به «پیشفرض» ارتقا داده شد. برای ارائه بازخورد، ضربه بزنید."</string> - <string name="notification_feedback_indicator_silenced" msgid="3799442124723177262">"این اعلان به «بیصدا» تنزل داده شد. برای ارائه بازخورد، ضربه بزنید."</string> - <string name="notification_feedback_indicator_promoted" msgid="9030204303764698640">"این اعلان در رتبه بالاتری قرار گرفت. برای ارائه بازخورد، ضربه بزنید."</string> - <string name="notification_feedback_indicator_demoted" msgid="8880309924296450875">"این اعلان در رتبه پایینتری قرار گرفت. برای ارائه بازخورد، ضربه بزنید."</string> + <string name="notification_feedback_indicator_alerted" msgid="6552871804121942099">"این اعلان به «پیشفرض» ارتقا داده شد. برای ارائه بازخورد، تکضرب بزنید."</string> + <string name="notification_feedback_indicator_silenced" msgid="3799442124723177262">"این اعلان به «بیصدا» تنزل داده شد. برای ارائه بازخورد، تکضرب بزنید."</string> + <string name="notification_feedback_indicator_promoted" msgid="9030204303764698640">"این اعلان در رتبه بالاتری قرار گرفت. برای ارائه بازخورد، تکضرب بزنید."</string> + <string name="notification_feedback_indicator_demoted" msgid="8880309924296450875">"این اعلان در رتبه پایینتری قرار گرفت. برای ارائه بازخورد، تکضرب بزنید."</string> <string name="nas_upgrade_notification_title" msgid="8436359459300146555">"اعلانهای بهبودیافته"</string> <string name="nas_upgrade_notification_content" msgid="5157550369837103337">"اکنون پاسخها و کنشهای پیشنهادی ازطریق اعلانهای بهبودیافته ارائه میشوند. «اعلانهای تطبیقی Android» دیگر پشتیبانی نمیشوند."</string> <string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"تأیید"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"انتخابگر میانبر دسترسپذیری روی صفحه"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"میانبر دسترسیپذیری"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"رد کردن کشوی اعلانات"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"منو"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"پخش/موقتاً متوقف کردن رسانه"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"پد کنترل بالا"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"پد کنترل پایین"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"پد کنترل چپ"</string> @@ -2353,14 +2354,14 @@ <string name="splash_screen_view_icon_description" msgid="180638751260598187">"نماد برنامه"</string> <string name="splash_screen_view_branding_description" msgid="7911129347402728216">"تصویر نمانامسازی برنامه"</string> <string name="view_and_control_notification_title" msgid="4300765399209912240">"بررسی تنظیمات دسترسی"</string> - <string name="view_and_control_notification_content" msgid="8003766498562604034">"<xliff:g id="SERVICE_NAME">%s</xliff:g> میتواند صفحهنمایش شما را مشاهده و کنترل کند. برای مرور، ضربه بزنید."</string> + <string name="view_and_control_notification_content" msgid="8003766498562604034">"<xliff:g id="SERVICE_NAME">%s</xliff:g> میتواند صفحهنمایش شما را مشاهده و کنترل کند. برای مرور، تکضرب بزنید."</string> <string name="ui_translation_accessibility_translated_text" msgid="3197547218178944544">"<xliff:g id="MESSAGE">%1$s</xliff:g> ترجمه شد."</string> <string name="ui_translation_accessibility_translation_finished" msgid="3057830947610088465">"پیام از <xliff:g id="FROM_LANGUAGE">%1$s</xliff:g> به <xliff:g id="TO_LANGUAGE">%2$s</xliff:g> ترجمه شد."</string> <string name="notification_channel_abusive_bg_apps" msgid="6092140213264920355">"فعالیت در پسزمینه"</string> <string name="notification_title_abusive_bg_apps" msgid="994230770856147656">"برنامهای شارژ باتری را خالی میکند"</string> <string name="notification_title_long_running_fgs" msgid="8170284286477131587">"یکی از برنامهها همچنان فعال است"</string> - <string name="notification_content_abusive_bg_apps" msgid="5296898075922695259">"<xliff:g id="APP">%1$s</xliff:g> در پسزمینه درحال اجرا است. برای مدیریت مصرف باتری ضربه بزنید."</string> - <string name="notification_content_long_running_fgs" msgid="8258193410039977101">"<xliff:g id="APP">%1$s</xliff:g> ممکن است بر عمر باتری تأثیر بگذارد. برای مرور برنامههای فعال، ضربه بزنید."</string> + <string name="notification_content_abusive_bg_apps" msgid="5296898075922695259">"<xliff:g id="APP">%1$s</xliff:g> در پسزمینه درحال اجرا است. برای مدیریت مصرف باتری تکضرب بزنید."</string> + <string name="notification_content_long_running_fgs" msgid="8258193410039977101">"<xliff:g id="APP">%1$s</xliff:g> ممکن است بر عمر باتری تأثیر بگذارد. برای مرور برنامههای فعال، تکضرب بزنید."</string> <string name="notification_action_check_bg_apps" msgid="4758877443365362532">"بررسی برنامههای فعال"</string> <string name="vdm_camera_access_denied" product="default" msgid="6102378580971542473">"از <xliff:g id="DEVICE">%1$s</xliff:g> به دوربین تلفن دسترسی ندارید"</string> <string name="vdm_camera_access_denied" product="tablet" msgid="6895968310395249076">"نمیتوان از <xliff:g id="DEVICE">%1$s</xliff:g> شما به دوربین رایانه لوحی دسترسی داشت"</string> @@ -2381,22 +2382,22 @@ <string name="connected_display_unavailable_notification_title" msgid="5265409360902073556">"قرینهسازی روی نمایشگر ممکن نبود"</string> <string name="connected_display_unavailable_notification_content" msgid="3845903313751217516">"از کابل دیگری استفاده کنید و دوباره امتحان کنید"</string> <string name="connected_display_thermally_unavailable_notification_content" msgid="9205758199439955949">"دستگاه بسیار گرم است و تا زمانیکه خنک نشود نمیتواند محتوا را روی نمایشگر قرینهسازی کند."</string> - <string name="concurrent_display_notification_name" msgid="1526911253558311131">"Dual screen"</string> - <string name="concurrent_display_notification_active_title" msgid="4892473462327943673">"Dual Screen روشن است"</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_thermal_title" msgid="5921609404644739229">"دستگاه بیشازحد گرم شده است"</string> - <string name="concurrent_display_notification_thermal_content" msgid="2075484836527609319">"Dual Screen دردسترس نیست زیرا تلفن بیشازحد گرم شده است"</string> - <string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"Dual Screen دردسترس نیست"</string> - <string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"Dual Screen دردسترس نیست چون «بهینهسازی باتری» روشن است. میتوانید این ویژگی را در «تنظیمات» خاموش کنید."</string> + <string name="concurrent_display_notification_thermal_content" msgid="2075484836527609319">"«صفحهنمایش دوگانه» دردسترس نیست زیرا تلفن بیشازحد گرم شده است"</string> + <string name="concurrent_display_notification_power_save_title" msgid="1794569070730736281">"«صفحهنمایش دوگانه» دردسترس نیست"</string> + <string name="concurrent_display_notification_power_save_content" msgid="2198116070583851493">"«صفحهنمایش دوگانه» دردسترس نیست چون «بهینهسازی باتری» روشن است. میتوانید این ویژگی را در «تنظیمات» خاموش کنید."</string> <string name="device_state_notification_settings_button" msgid="691937505741872749">"رفتن به تنظیمات"</string> <string name="device_state_notification_turn_off_button" msgid="6327161707661689232">"خاموش کردن"</string> <string name="keyboard_layout_notification_selected_title" msgid="1202560174252421219">"<xliff:g id="DEVICE_NAME">%s</xliff:g> پیکربندی شد"</string> - <string name="keyboard_layout_notification_one_selected_message" msgid="4314216053129257197">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%s</xliff:g> تنظیم شد. برای تغییر دادن، ضربه بزنید."</string> - <string name="keyboard_layout_notification_two_selected_message" msgid="1876349944065922950">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g> تنظیم شد. برای تغییر دادن، ضربه بزنید."</string> - <string name="keyboard_layout_notification_three_selected_message" msgid="280734264593115419">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g>، <xliff:g id="LAYOUT_3">%3$s</xliff:g> تنظیم شد. برای تغییر دادن، ضربه بزنید."</string> - <string name="keyboard_layout_notification_more_than_three_selected_message" msgid="1581834181578206937">"جانمایی صفحهکلید چنین تنظیم شد: <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g>، <xliff:g id="LAYOUT_3">%3$s</xliff:g>… برای تغییر ضربه بزنید"</string> + <string name="keyboard_layout_notification_one_selected_message" msgid="4314216053129257197">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%s</xliff:g> تنظیم شد. برای تغییر دادن، تکضرب بزنید."</string> + <string name="keyboard_layout_notification_two_selected_message" msgid="1876349944065922950">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g> تنظیم شد. برای تغییر دادن، تکضرب بزنید."</string> + <string name="keyboard_layout_notification_three_selected_message" msgid="280734264593115419">"جانمایی صفحهکلید روی <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g>، <xliff:g id="LAYOUT_3">%3$s</xliff:g> تنظیم شد. برای تغییر دادن، تکضرب بزنید."</string> + <string name="keyboard_layout_notification_more_than_three_selected_message" msgid="1581834181578206937">"جانمایی صفحهکلید چنین تنظیم شد: <xliff:g id="LAYOUT_1">%1$s</xliff:g>، <xliff:g id="LAYOUT_2">%2$s</xliff:g>، <xliff:g id="LAYOUT_3">%3$s</xliff:g>… برای تغییر تکضرب بزنید"</string> <string name="keyboard_layout_notification_multiple_selected_title" msgid="5242444914367024499">"صفحهکلیدهای فیزیکی پیکربندی شدند"</string> - <string name="keyboard_layout_notification_multiple_selected_message" msgid="6576533454124419202">"برای مشاهده صفحهکلیدها ضربه بزنید"</string> + <string name="keyboard_layout_notification_multiple_selected_message" msgid="6576533454124419202">"برای مشاهده صفحهکلیدها تکضرب بزنید"</string> <string name="profile_label_private" msgid="6463418670715290696">"خصوصی"</string> <string name="profile_label_clone" msgid="769106052210954285">"همسانهسازی"</string> <string name="profile_label_work" msgid="3495359133038584618">"کار"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"فضای خصوصی"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"محتوای اعلان حساس پنهان شده است"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"بهدلایل امنیتی، محتوای برنامه از دید همرسانی صفحهنمایش پنهان شد"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"بهدلایل امنیتی، محتوای برنامه پساز همرسانی صفحهنمایش پنهان میشود"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"بهطور خودکار به ماهواره متصل شد"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"میتوانید بدون شبکه تلفن همراه یا Wi-Fi پیام ارسال و دریافت کنید"</string> - <string name="satellite_notification_open_message" msgid="4149234979688273729">"باز کردن «پیامها»"</string> + <string name="satellite_notification_open_message" msgid="4149234979688273729">"باز کردن «پیامنگار»"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"روش کار"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"درحال تعلیق…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"راهاندازی مجدد «قفلگشایی با اثر انگشت»"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> خوب کار نمیکرد و حذف شد"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> خوب کار نمیکردند و حذف شدند"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> خوب کار نمیکرد و حذف شد. برای باز کردن قفل تلفن با اثر انگشت، آن را دوباره راهاندازی کنید."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> خوب کار نمیکرد و حذف شد. برای باز کردن قفل تلفن با اثر انگشت، آنها را دوباره راهاندازی کنید."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> دیگر قابلشناسایی نیست."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> دیگر قابلشناسایی نیستند."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> دیگر قابلشناسایی نیست. «قفلگشایی با اثر انگشت» را دوباره راهاندازی کنید."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> و <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> دیگر قابلشناسایی نیستند. «قفلگشایی با اثر انگشت» را دوباره راهاندازی کنید."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"راهاندازی مجدد «قفلگشایی با چهره»"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"مدل چهره شما خوب کار نمیکرد و حذف شد. برای باز کردن قفل تلفن با چهره، دوباره آن را راهاندازی کنید."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"مدل چهرهتان دیگر قابلشناسایی نیست. «قفلگشایی با چهره» را دوباره راهاندازی کنید."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"راهاندازی"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"حالا نه"</string> </resources> diff --git a/core/res/res/values-fi/strings.xml b/core/res/res/values-fi/strings.xml index 9a7bfffae792..70c8c2760d71 100644 --- a/core/res/res/values-fi/strings.xml +++ b/core/res/res/values-fi/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-koodi on liian lyhyt. Vähimmäispituus on neljä merkkiä."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Yritä myöhemmin uudelleen"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Koko ruudun tilassa"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Poistu pyyhkäisemällä alas näytön yläreunasta"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Selvä"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Kierrä, niin saat paremman näkymän"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Avaa <xliff:g id="NAME">%s</xliff:g>, niin saat paremman näkymän"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Näytöllä näkyvän esteettömyyspainikkeen valitsin"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Saavutettavuuspainike"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Sulje ilmoitusalue"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Valikko"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media: toista/keskeytä"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Suuntanäppäimistö: ylös-painike"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Suuntanäppäimisto: alas-painike"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Suuntanäppäimistö: vasen painike"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Näin se toimii"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Odottaa…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Ota sormenjälkiavaus uudelleen käyttöön"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei toiminut kunnolla, ja se poistettiin"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> eivät toimineet kunnolla, ja ne poistettiin"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei toiminut kunnolla, ja se poistettiin. Ota se uudelleen käyttöön, jotta voit avata puhelimen lukituksen sormenjäljellä."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> eivät toimineet kunnolla, ja ne poistettiin. Ota ne uudelleen käyttöön, jotta voit avata puhelimen lukituksen sormenjäljellä."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei enää ole tunnistettavissa."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> eivät enää ole tunnistettavissa."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ei enää ole tunnistettavissa. Ota sormenjälkiavaus uudelleen käyttöön."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ja <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> eivät enää ole tunnistettavissa. Ota sormenjälkiavaus uudelleen käyttöön."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Ota kasvojentunnistusavaus uudelleen käyttöön"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Kasvomallisi ei toiminut kunnolla, ja se poistettiin. Ota se uudelleen käyttöön, jotta voit avata puhelimen lukituksen kasvoilla."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Kasvomallia ei enää tunnisteta. Ota kasvojentunnistusavaus uudelleen käyttöön."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Ota käyttöön"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ei nyt"</string> </resources> diff --git a/core/res/res/values-fr-rCA/strings.xml b/core/res/res/values-fr-rCA/strings.xml index cc5652652c93..dd5b0f5a1913 100644 --- a/core/res/res/values-fr-rCA/strings.xml +++ b/core/res/res/values-fr-rCA/strings.xml @@ -198,7 +198,7 @@ <string name="ssl_ca_cert_noti_by_administrator" msgid="4564941950768783879">"Par l\'administrateur de votre profil professionnel"</string> <string name="ssl_ca_cert_noti_managed" msgid="217337232273211674">"Par <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string> <string name="work_profile_deleted" msgid="5891181538182009328">"Profil professionnel supprimé"</string> - <string name="work_profile_deleted_details" msgid="3773706828364418016">"Le profil professionnel de l\'application d\'administration est manquant ou corrompu. Votre profil professionnel et ses données connexes ont donc été supprimés. Communiquez avec votre administrateur pour obtenir de l\'assistance."</string> + <string name="work_profile_deleted_details" msgid="3773706828364418016">"Le profil professionnel de l\'appli d\'administration est manquant ou corrompu. Votre profil professionnel et ses données connexes ont donc été supprimés. Communiquez avec votre administrateur pour obtenir de l\'assistance."</string> <string name="work_profile_deleted_description_dpm_wipe" msgid="2477244968924647232">"Votre profil professionnel n\'est plus accessible sur cet appareil"</string> <string name="work_profile_deleted_reason_maximum_password_failure" msgid="1080323158315663167">"Trop de tentatives d\'entrée du mot de passe"</string> <string name="device_ownership_relinquished" msgid="4080886992183195724">"L\'administrateur a libéré l\'appareil pour un usage personnel"</string> @@ -206,7 +206,7 @@ <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"Votre organisation n\'autorise pas les espaces privés sur cet appareil géré."</string> <string name="network_logging_notification_title" msgid="554983187553845004">"L\'appareil est géré"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"Votre organisation gère cet appareil et peut surveiller le trafic réseau. Touchez ici pour obtenir plus d\'information."</string> - <string name="location_changed_notification_title" msgid="3620158742816699316">"Les applications peuvent accéder à votre position"</string> + <string name="location_changed_notification_title" msgid="3620158742816699316">"Les applis peuvent accéder à votre position"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Communiquez avec votre administrateur informatique pour en savoir plus"</string> <string name="geofencing_service" msgid="3826902410740315456">"Service de définition de limites géographiques"</string> <string name="country_detector" msgid="7023275114706088854">"Détecteur de pays"</string> @@ -218,14 +218,14 @@ <string name="device_policy_manager_service" msgid="5085762851388850332">"Service de gestionnaire Device Policy"</string> <string name="music_recognition_manager_service" msgid="7481956037950276359">"Service de gestion de la reconnaissance musicale"</string> <string name="factory_reset_warning" msgid="6858705527798047809">"Le contenu de votre appareil sera effacé"</string> - <string name="factory_reset_message" msgid="2657049595153992213">"Impossible d\'utiliser l\'application d\'administration. Les données de votre appareil vont maintenant être effacées.\n\nSi vous avez des questions, communiquez avec l\'administrateur de votre organisation."</string> + <string name="factory_reset_message" msgid="2657049595153992213">"Impossible d\'utiliser l\'appli d\'administration. Les données de votre appareil vont maintenant être effacées.\n\nSi vous avez des questions, communiquez avec l\'administrateur de votre organisation."</string> <string name="printing_disabled_by" msgid="3517499806528864633">"Impression désactivée par <xliff:g id="OWNER_APP">%s</xliff:g>."</string> <string name="personal_apps_suspension_title" msgid="7561416677884286600">"Activer profil professionnel"</string> - <string name="personal_apps_suspension_text" msgid="6115455688932935597">"Vos applications personnelles sont bloquées jusqu\'à ce que vous activiez votre profil professionnel"</string> - <string name="personal_apps_suspension_soon_text" msgid="8123898693479590">"Les applications personnelles seront bloquées le <xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>. Votre administrateur informatique ne vous autorise pas à laisser votre profil professionnel désactivé pendant plus de <xliff:g id="NUMBER">%3$d</xliff:g> jours."</string> + <string name="personal_apps_suspension_text" msgid="6115455688932935597">"Vos applis personnelles sont bloquées jusqu\'à ce que vous activiez votre profil professionnel"</string> + <string name="personal_apps_suspension_soon_text" msgid="8123898693479590">"Les applis personnelles seront bloquées le <xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>. Votre administrateur informatique ne vous autorise pas à laisser votre profil professionnel désactivé pendant plus de <xliff:g id="NUMBER">%3$d</xliff:g> jours."</string> <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_text" msgid="8065762301100978221">"Vous avez mis en pause les applis 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 pros"</string> <string name="me" msgid="6207584824693813140">"Moi"</string> <string name="power_dialog" product="tablet" msgid="8333207765671417261">"Options de la tablette"</string> @@ -252,7 +252,7 @@ <string name="shutdown_confirm" product="default" msgid="136816458966692315">"Votre téléphone va s\'éteindre."</string> <string name="shutdown_confirm_question" msgid="796151167261608447">"Voulez-vous éteindre l\'appareil?"</string> <string name="reboot_safemode_title" msgid="5853949122655346734">"Redémarrer en mode sans échec"</string> - <string name="reboot_safemode_confirm" msgid="1658357874737219624">"Voulez-vous redémarrer en mode sans échec? Cette opération aura pour effet de désactiver toutes les applications tierces que vous avez installées. Elles seront réactivées au prochain redémarrage."</string> + <string name="reboot_safemode_confirm" msgid="1658357874737219624">"Voulez-vous redémarrer en mode sans échec? Cette opération aura pour effet de désactiver toutes les applis tierces que vous avez installées. Elles seront réactivées au prochain redémarrage."</string> <string name="recent_tasks_title" msgid="8183172372995396653">"Récents"</string> <string name="no_recent_tasks" msgid="9063946524312275906">"Aucune appli récente"</string> <string name="global_actions" product="tablet" msgid="4412132498517933867">"Options de la tablette"</string> @@ -303,13 +303,13 @@ <string name="notification_channel_alerts" msgid="5070241039583668427">"Alertes"</string> <string name="notification_channel_retail_mode" msgid="3732239154256431213">"Démo en magasin"</string> <string name="notification_channel_usb" msgid="1528280969406244896">"Connexion USB"</string> - <string name="notification_channel_heavy_weight_app" msgid="17455756500828043">"Application en cours d\'exécution"</string> - <string name="notification_channel_foreground_service" msgid="7102189948158885178">"Applications qui sollicitent la pile"</string> + <string name="notification_channel_heavy_weight_app" msgid="17455756500828043">"Appli en cours d\'exécution"</string> + <string name="notification_channel_foreground_service" msgid="7102189948158885178">"Applis qui sollicitent la pile"</string> <string name="notification_channel_accessibility_magnification" msgid="1707913872219798098">"Agrandissement"</string> <string name="notification_channel_accessibility_security_policy" msgid="1727787021725251912">"Usage des fonctionnalités d\'accessibilité"</string> <string name="notification_channel_display" msgid="6905032605735615090">"Écran"</string> <string name="foreground_service_app_in_background" msgid="1439289699671273555">"<xliff:g id="APP_NAME">%1$s</xliff:g> sollicite la pile"</string> - <string name="foreground_service_apps_in_background" msgid="7340037176412387863">"<xliff:g id="NUMBER">%1$d</xliff:g> applications sollicitent la pile"</string> + <string name="foreground_service_apps_in_background" msgid="7340037176412387863">"<xliff:g id="NUMBER">%1$d</xliff:g> applis sollicitent la pile"</string> <string name="foreground_service_tap_for_details" msgid="9078123626015586751">"Touchez pour afficher des détails sur l\'utilisation de la pile et des données"</string> <string name="foreground_service_multiple_separator" msgid="5002287361849863168">"<xliff:g id="LEFT_SIDE">%1$s</xliff:g>, <xliff:g id="RIGHT_SIDE">%2$s</xliff:g>"</string> <string name="safeMode" msgid="8974401416068943888">"Mode sans échec"</string> @@ -365,282 +365,282 @@ <string name="dream_preview_title" msgid="5570751491996100804">"Aperçu, <xliff:g id="DREAM_NAME">%1$s</xliff:g>"</string> <string name="dream_accessibility_action_click" msgid="7392398629967797805">"Ignorer"</string> <string name="permlab_statusBar" msgid="8798267849526214017">"désactiver ou modifier la barre d\'état"</string> - <string name="permdesc_statusBar" msgid="5809162768651019642">"Permet à l\'application de désactiver la barre d\'état, ou d\'ajouter et de supprimer des icônes système."</string> + <string name="permdesc_statusBar" msgid="5809162768651019642">"Permet à l\'appli de désactiver la barre d\'état, ou d\'ajouter et de supprimer des icônes système."</string> <string name="permlab_statusBarService" msgid="2523421018081437981">"servir de barre d\'état"</string> - <string name="permdesc_statusBarService" msgid="6652917399085712557">"Permet à l\'application de faire office de barre d\'état."</string> + <string name="permdesc_statusBarService" msgid="6652917399085712557">"Permet à l\'appli de faire office de barre d\'état."</string> <string name="permlab_expandStatusBar" msgid="1184232794782141698">"agrandir ou réduire la barre d\'état"</string> - <string name="permdesc_expandStatusBar" msgid="7180756900448498536">"Permet à l\'application de réduire ou de développer la barre d\'état."</string> + <string name="permdesc_expandStatusBar" msgid="7180756900448498536">"Permet à l\'appli de réduire ou de développer la barre d\'état."</string> <string name="permlab_fullScreenIntent" msgid="4310888199502509104">"afficher les notifications en mode plein écran sur un appareil verrouillé"</string> - <string name="permdesc_fullScreenIntent" msgid="1100721419406643997">"Permet à l\'application d\'afficher les notifications en mode plein écran sur un appareil verrouillé."</string> + <string name="permdesc_fullScreenIntent" msgid="1100721419406643997">"Permet à l\'appli d\'afficher les notifications en mode plein écran sur un appareil verrouillé."</string> <string name="permlab_install_shortcut" msgid="7451554307502256221">"Installer des raccourcis"</string> - <string name="permdesc_install_shortcut" msgid="4476328467240212503">"Permet à une application d\'ajouter des raccourcis sans l\'intervention de l\'utilisateur."</string> + <string name="permdesc_install_shortcut" msgid="4476328467240212503">"Permet à une application d\'ajouter des raccourcis à l\'écran d\'accueil sans l\'intervention de l\'utilisateur."</string> <string name="permlab_uninstall_shortcut" msgid="295263654781900390">"désinstaller des raccourcis"</string> - <string name="permdesc_uninstall_shortcut" msgid="1924735350988629188">"Permet à l\'application de supprimer des raccourcis de la page d\'accueil sans intervention de l\'utilisateur."</string> + <string name="permdesc_uninstall_shortcut" msgid="1924735350988629188">"Permet à l\'appli de supprimer des raccourcis de la page d\'accueil sans intervention de l\'utilisateur."</string> <string name="permlab_processOutgoingCalls" msgid="4075056020714266558">"transférer les appels sortants"</string> - <string name="permdesc_processOutgoingCalls" msgid="7833149750590606334">"Permet à l\'application de lire le numéro composé lors d\'un appel sortant et lui donne la possibilité de rediriger l\'appel vers un autre numéro ou d\'abandonner l\'appel."</string> + <string name="permdesc_processOutgoingCalls" msgid="7833149750590606334">"Permet à l\'appli de lire le numéro composé lors d\'un appel sortant et lui donne la possibilité de rediriger l\'appel vers un autre numéro ou d\'abandonner l\'appel."</string> <string name="permlab_answerPhoneCalls" msgid="4131324833663725855">"répondre aux appels téléphoniques"</string> - <string name="permdesc_answerPhoneCalls" msgid="894386681983116838">"Permet à l\'application de répondre aux appels entrants."</string> + <string name="permdesc_answerPhoneCalls" msgid="894386681983116838">"Permet à l\'appli de répondre aux appels entrants."</string> <string name="permlab_receiveSms" msgid="505961632050451881">"recevoir des messages texte"</string> - <string name="permdesc_receiveSms" msgid="1797345626687832285">"Permet à l\'application de recevoir et de traiter les messages texte. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> + <string name="permdesc_receiveSms" msgid="1797345626687832285">"Permet à l\'appli de recevoir et de traiter les messages texte. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> <string name="permlab_receiveMms" msgid="4000650116674380275">"recevoir des messages multimédias"</string> - <string name="permdesc_receiveMms" msgid="958102423732219710">"Permet à l\'application de recevoir et de traiter les messages multimédias. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> + <string name="permdesc_receiveMms" msgid="958102423732219710">"Permet à l\'appli de recevoir et de traiter les messages multimédias. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> <string name="permlab_bindCellBroadcastService" msgid="586746677002040651">"Transférer les messages de diffusion cellulaire"</string> - <string name="permdesc_bindCellBroadcastService" msgid="6540910200973641606">"Permet à l\'application d\'établir un lien avec le module de diffusion cellulaire afin de transférer les messages de diffusion cellulaire à mesure de leur réception. Dans certaines régions, des alertes de diffusion cellulaire sont envoyées afin de vous avertir de situations d\'urgence. Des applications malveillantes peuvent interférer avec les performances ou le fonctionnement de votre appareil lors de la réception d\'une alerte d\'urgence par diffusion cellulaire."</string> + <string name="permdesc_bindCellBroadcastService" msgid="6540910200973641606">"Permet à l\'appli d\'établir un lien avec le module de diffusion cellulaire afin de transférer les messages de diffusion cellulaire à mesure de leur réception. Dans certaines régions, des alertes de diffusion cellulaire sont envoyées afin de vous avertir de situations d\'urgence. Des applis malveillantes peuvent interférer avec les performances ou le fonctionnement de votre appareil lors de la réception d\'une alerte d\'urgence par diffusion cellulaire."</string> <string name="permlab_manageOngoingCalls" msgid="281244770664231782">"Gérer les appels en cours"</string> - <string name="permdesc_manageOngoingCalls" msgid="7003138133829915265">"Autorise une application à afficher les renseignements concernant les appels en cours sur votre appareil et à les gérer."</string> + <string name="permdesc_manageOngoingCalls" msgid="7003138133829915265">"Autorise une appli à afficher les renseignements concernant les appels en cours sur votre appareil et à les gérer."</string> <string name="permlab_accessLastKnownCellId" msgid="7638226620825665130">"Accéder à la dernière identité cellulaire connue."</string> - <string name="permdesc_accessLastKnownCellId" msgid="6664621339249308857">"Autorise une application à accéder à la dernière identité cellulaire connue fournie par la téléphonie."</string> + <string name="permdesc_accessLastKnownCellId" msgid="6664621339249308857">"Autorise une appli à accéder à la dernière identité cellulaire connue fournie par la téléphonie."</string> <string name="permlab_readCellBroadcasts" msgid="5869884450872137693">"lire les messages de diffusion cellulaire"</string> - <string name="permdesc_readCellBroadcasts" msgid="672513437331980168">"Permet à l\'application de lire les messages de diffusion cellulaire que votre appareil reçoit. Dans certaines zones géographiques, des alertes vous sont envoyées afin de vous prévenir en cas de situation d\'urgence. Des applications malveillantes peuvent venir perturber les performances ou le fonctionnement de votre appareil lors de la réception d\'un message de diffusion cellulaire."</string> + <string name="permdesc_readCellBroadcasts" msgid="672513437331980168">"Permet à l\'appli de lire les messages de diffusion cellulaire que votre appareil reçoit. Dans certaines zones géographiques, des alertes vous sont envoyées afin de vous prévenir en cas de situation d\'urgence. Des applis malveillantes peuvent venir perturber les performances ou le fonctionnement de votre appareil lors de la réception d\'un message de diffusion cellulaire."</string> <string name="permlab_subscribedFeedsRead" msgid="217624769238425461">"lire les flux auxquels vous êtes abonné"</string> - <string name="permdesc_subscribedFeedsRead" msgid="6911349196661811865">"Permet à l\'application d\'obtenir des données sur les flux en cours de synchronisation."</string> + <string name="permdesc_subscribedFeedsRead" msgid="6911349196661811865">"Permet à l\'appli d\'obtenir des données sur les flux en cours de synchronisation."</string> <string name="permlab_sendSms" msgid="7757368721742014252">"envoyer et afficher des messages texte"</string> - <string name="permdesc_sendSms" msgid="6757089798435130769">"Permet à l\'application d\'envoyer des messages texte. Cette autorisation peut entraîner des frais inattendus. Des applications malveillantes peuvent générer des frais en envoyant des messages sans votre consentement."</string> + <string name="permdesc_sendSms" msgid="6757089798435130769">"Permet à l\'appli d\'envoyer des messages texte. Cette autorisation peut entraîner des frais inattendus. Des applis malveillantes peuvent générer des frais en envoyant des messages sans votre consentement."</string> <string name="permlab_readSms" msgid="5164176626258800297">"voir les messages texte ou multimédias"</string> - <string name="permdesc_readSms" product="tablet" msgid="7912990447198112829">"Cette application peut lire tous les messages texte stockés sur votre tablette."</string> - <string name="permdesc_readSms" product="tv" msgid="3054753345758011986">"Cette application peut lire tous les messages texte stockés sur votre appareil Android TV."</string> - <string name="permdesc_readSms" product="default" msgid="774753371111699782">"Cette application peut lire tous les messages texte stockés sur votre téléphone."</string> + <string name="permdesc_readSms" product="tablet" msgid="7912990447198112829">"Cette appli peut lire tous les messages texte stockés sur votre tablette."</string> + <string name="permdesc_readSms" product="tv" msgid="3054753345758011986">"Cette appli peut lire tous les messages texte stockés sur votre appareil Android TV."</string> + <string name="permdesc_readSms" product="default" msgid="774753371111699782">"Cette appli peut lire tous les messages texte stockés sur votre téléphone."</string> <string name="permlab_receiveWapPush" msgid="4223747702856929056">"recevoir des messages WAP"</string> - <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"Permet à l\'application de recevoir et de traiter les messages WAP. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> - <string name="permlab_getTasks" msgid="7460048811831750262">"récupérer les données des applications en cours d\'exécution"</string> - <string name="permdesc_getTasks" msgid="7388138607018233726">"Permet à l\'application de récupérer des données sur des tâches en cours d\'exécution et récemment exécutées. L\'application est ainsi susceptible d\'obtenir des données concernant les applications utilisées sur l\'appareil."</string> + <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"Permet à l\'appli de recevoir et de traiter les messages WAP. Cette autorisation lui donne la possibilité de surveiller ou de supprimer les messages envoyés à votre appareil sans vous les montrer."</string> + <string name="permlab_getTasks" msgid="7460048811831750262">"récupérer les données des applis en cours d\'exécution"</string> + <string name="permdesc_getTasks" msgid="7388138607018233726">"Permet à l\'appli de récupérer des données sur des tâches en cours d\'exécution et récemment exécutées. L\'appli est ainsi susceptible d\'obtenir des données concernant les applis utilisées sur l\'appareil."</string> <string name="permlab_manageProfileAndDeviceOwners" msgid="639849495253987493">"gérer les propriétaires des profils et de l\'appareil"</string> - <string name="permdesc_manageProfileAndDeviceOwners" msgid="7304240671781989283">"Autoriser les applications à définir les propriétaires des profils et celui de l\'appareil"</string> - <string name="permlab_reorderTasks" msgid="7598562301992923804">"réorganiser les applications en cours d\'exécution"</string> - <string name="permdesc_reorderTasks" msgid="8796089937352344183">"Permet à l\'application de déplacer les tâches au premier plan et en arrière-plan. L\'application peut procéder à ces opérations sans votre intervention."</string> + <string name="permdesc_manageProfileAndDeviceOwners" msgid="7304240671781989283">"Autoriser les applis à définir les propriétaires des profils et celui de l\'appareil"</string> + <string name="permlab_reorderTasks" msgid="7598562301992923804">"réorganiser les applis en cours d\'exécution"</string> + <string name="permdesc_reorderTasks" msgid="8796089937352344183">"Permet à l\'appli de déplacer les tâches au premier plan et en arrière-plan. L\'appli peut procéder à ces opérations sans votre intervention."</string> <string name="permlab_enableCarMode" msgid="893019409519325311">"activer le mode voiture"</string> - <string name="permdesc_enableCarMode" msgid="56419168820473508">"Permet à l\'application d\'activer le mode Voiture."</string> - <string name="permlab_killBackgroundProcesses" msgid="6559320515561928348">"fermer les autres applications"</string> - <string name="permdesc_killBackgroundProcesses" msgid="2357013583055434685">"Permet à l\'application de mettre fin aux processus d\'autres applications exécutés en arrière-plan. Cette autorisation peut interrompre l\'exécution d\'autres applications."</string> - <string name="permlab_systemAlertWindow" msgid="5757218350944719065">"Cette application peut s\'afficher par-dessus d\'autres applications"</string> - <string name="permdesc_systemAlertWindow" msgid="1145660714855738308">"Cette application peut s\'afficher par-dessus d\'autres applications ou parties de l\'écran. Cela pourrait interférer avec l\'utilisation normale des applications et modifier la manière dont les autres applications s\'affichent à l\'écran."</string> - <string name="permlab_hideOverlayWindows" msgid="6382697828482271802">"Masquer les superpositions d\'autres applications"</string> - <string name="permdesc_hideOverlayWindows" msgid="5660242821651958225">"Cette application peut demander au système de masquer les superpositions provenant d\'applications, afin qu\'elles ne s\'affichent pas au-dessus de celle-ci."</string> + <string name="permdesc_enableCarMode" msgid="56419168820473508">"Permet à l\'appli d\'activer le mode Voiture."</string> + <string name="permlab_killBackgroundProcesses" msgid="6559320515561928348">"fermer les autres applis"</string> + <string name="permdesc_killBackgroundProcesses" msgid="2357013583055434685">"Permet à l\'appli de mettre fin aux processus d\'autres applis exécutés en arrière-plan. Cette autorisation peut interrompre l\'exécution d\'autres applis."</string> + <string name="permlab_systemAlertWindow" msgid="5757218350944719065">"Cette appli peut s\'afficher par-dessus d\'autres applis"</string> + <string name="permdesc_systemAlertWindow" msgid="1145660714855738308">"Cette appli peut s\'afficher par-dessus d\'autres applis ou parties de l\'écran. Cela pourrait interférer avec l\'utilisation normale des applis et modifier la manière dont les autres applis s\'affichent à l\'écran."</string> + <string name="permlab_hideOverlayWindows" msgid="6382697828482271802">"Masquer les superpositions d\'autres applis"</string> + <string name="permdesc_hideOverlayWindows" msgid="5660242821651958225">"Cette appli peut demander au système de masquer les superpositions provenant d\'applis, afin qu\'elles ne s\'affichent pas au-dessus de celle-ci."</string> <string name="permlab_runInBackground" msgid="541863968571682785">"fonctionner en arrière-plan"</string> - <string name="permdesc_runInBackground" msgid="4344539472115495141">"Cette application peut fonctionner en arrière-plan. Cela risque d\'épuiser la pile plus rapidement."</string> + <string name="permdesc_runInBackground" msgid="4344539472115495141">"Cette appli peut fonctionner en arrière-plan. Cela risque d\'épuiser la pile plus rapidement."</string> <string name="permlab_useDataInBackground" msgid="783415807623038947">"utiliser des données en arrière-plan"</string> - <string name="permdesc_useDataInBackground" msgid="1230753883865891987">"Cette application peut utiliser des données en arrière-plan. Cela risque d\'augmenter l\'utilisation des données."</string> + <string name="permdesc_useDataInBackground" msgid="1230753883865891987">"Cette appli peut utiliser des données en arrière-plan. Cela risque d\'augmenter l\'utilisation des données."</string> <string name="permlab_schedule_exact_alarm" msgid="6683283918033029730">"Programmer des actions à échéance précise"</string> - <string name="permdesc_schedule_exact_alarm" msgid="8198009212013211497">"Cette application peut programmer des tâches à effectuer ultérieurement à un moment voulu. Cela implique que l\'application peut également s\'exécuter quand vous n\'utilisez pas activement l\'appareil."</string> + <string name="permdesc_schedule_exact_alarm" msgid="8198009212013211497">"Cette appli peut programmer des tâches à effectuer ultérieurement à un moment voulu. Cela implique que l\'appli peut également s\'exécuter quand vous n\'utilisez pas activement l\'appareil."</string> <string name="permlab_use_exact_alarm" msgid="348045139777131552">"Programmer des alarmes ou des rappels d\'événements"</string> - <string name="permdesc_use_exact_alarm" msgid="7033761461886938912">"Cette application peut programmer des actions, comme des alarmes et des rappels, pour vous avertir ultérieurement à un moment voulu."</string> - <string name="permlab_persistentActivity" msgid="464970041740567970">"exécuter l\'application en continu"</string> - <string name="permdesc_persistentActivity" product="tablet" msgid="6055271149187369916">"Permet à l\'application de rendre certains de ces composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applications et ralentir la tablette."</string> - <string name="permdesc_persistentActivity" product="tv" msgid="6800526387664131321">"Permet à l\'application de rendre certains de ses composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applications et ralentir l\'appareil Android TV."</string> - <string name="permdesc_persistentActivity" product="default" msgid="1914841924366562051">"Permet à l\'application de rendre certains de ces composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applications et ralentir le téléphone."</string> + <string name="permdesc_use_exact_alarm" msgid="7033761461886938912">"Cette appli peut programmer des actions, comme des alarmes et des rappels, pour vous avertir ultérieurement à un moment voulu."</string> + <string name="permlab_persistentActivity" msgid="464970041740567970">"exécuter l\'appli en continu"</string> + <string name="permdesc_persistentActivity" product="tablet" msgid="6055271149187369916">"Permet à l\'appli de rendre certains de ces composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applis et ralentir la tablette."</string> + <string name="permdesc_persistentActivity" product="tv" msgid="6800526387664131321">"Permet à l\'appli de rendre certains de ses composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applis et ralentir l\'appareil Android TV."</string> + <string name="permdesc_persistentActivity" product="default" msgid="1914841924366562051">"Permet à l\'appli de rendre certains de ces composants persistants dans la mémoire. Cette autorisation peut limiter la mémoire disponible pour d\'autres applis et ralentir le téléphone."</string> <string name="permlab_foregroundService" msgid="1768855976818467491">"exécuter le service en premier plan"</string> - <string name="permdesc_foregroundService" msgid="8720071450020922795">"Permet à l\'application d\'utiliser les services en premier plan."</string> + <string name="permdesc_foregroundService" msgid="8720071450020922795">"Permet à l\'appli d\'utiliser les services en premier plan."</string> <string name="permlab_foregroundServiceCamera" msgid="7814751737955715297">"exécuter le service d\'avant-plan avec le type « appareil photo »"</string> - <string name="permdesc_foregroundServiceCamera" msgid="6973701931250595727">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « appareil photo »"</string> + <string name="permdesc_foregroundServiceCamera" msgid="6973701931250595727">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « appareil photo »"</string> <string name="permlab_foregroundServiceConnectedDevice" msgid="3019650546176872501">"exécuter le service d\'avant-plan avec le type « appareil connecté »"</string> - <string name="permdesc_foregroundServiceConnectedDevice" msgid="1067457315741352963">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « appareil connecté »"</string> + <string name="permdesc_foregroundServiceConnectedDevice" msgid="1067457315741352963">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « appareil connecté »"</string> <string name="permlab_foregroundServiceDataSync" msgid="5847463514326881076">"exécuter le service d\'avant-plan avec le type « synchronisation des données »"</string> - <string name="permdesc_foregroundServiceDataSync" msgid="2267140263423973050">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « synchronisation des données »"</string> + <string name="permdesc_foregroundServiceDataSync" msgid="2267140263423973050">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « synchronisation des données »"</string> <string name="permlab_foregroundServiceLocation" msgid="3745428302378535690">"exécuter le service d\'avant-plan avec le type « emplacement »"</string> - <string name="permdesc_foregroundServiceLocation" msgid="118894034365177183">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « emplacement »"</string> + <string name="permdesc_foregroundServiceLocation" msgid="118894034365177183">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « emplacement »"</string> <string name="permlab_foregroundServiceMediaPlayback" msgid="4002687983891935514">"exécuter le service d\'avant-plan avec le type « lecture multimédia »"</string> - <string name="permdesc_foregroundServiceMediaPlayback" msgid="3638032446063968043">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « lecture multimédia »"</string> + <string name="permdesc_foregroundServiceMediaPlayback" msgid="3638032446063968043">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « lecture multimédia »"</string> <string name="permlab_foregroundServiceMediaProjection" msgid="2630868915733312527">"exécuter le service d\'avant-plan avec le type « projection de contenus multimédias »"</string> - <string name="permdesc_foregroundServiceMediaProjection" msgid="4805677128082002298">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « projection de contenus multimédias »"</string> + <string name="permdesc_foregroundServiceMediaProjection" msgid="4805677128082002298">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « projection de contenus multimédias »"</string> <string name="permlab_foregroundServiceMicrophone" msgid="7390033424890545399">"exécuter le service d\'avant-plan avec le type « microphone »"</string> - <string name="permdesc_foregroundServiceMicrophone" msgid="1206041516173483201">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « microphone »"</string> + <string name="permdesc_foregroundServiceMicrophone" msgid="1206041516173483201">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « microphone »"</string> <string name="permlab_foregroundServicePhoneCall" msgid="627937743867697892">"exécuter le service d\'avant-plan avec le type « appel téléphonique »"</string> - <string name="permdesc_foregroundServicePhoneCall" msgid="5941660252587015147">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « appel téléphonique »"</string> + <string name="permdesc_foregroundServicePhoneCall" msgid="5941660252587015147">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « appel téléphonique »"</string> <string name="permlab_foregroundServiceHealth" msgid="3675776442080928184">"exécuter le service d\'avant-plan avec le type « santé »"</string> - <string name="permdesc_foregroundServiceHealth" msgid="2024586220562667185">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « santé »"</string> + <string name="permdesc_foregroundServiceHealth" msgid="2024586220562667185">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « santé »"</string> <string name="permlab_foregroundServiceRemoteMessaging" msgid="105670277002780950">"exécuter le service d\'avant-plan avec le type « messagerie à distance »"</string> - <string name="permdesc_foregroundServiceRemoteMessaging" msgid="8767598075877576277">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « messagerie à distance »"</string> + <string name="permdesc_foregroundServiceRemoteMessaging" msgid="8767598075877576277">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « messagerie à distance »"</string> <string name="permlab_foregroundServiceSystemExempted" msgid="1597663713590612685">"exécuter le service d\'avant-plan avec le type « système exempté »"</string> - <string name="permdesc_foregroundServiceSystemExempted" msgid="947381760834649622">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « système exempté »"</string> + <string name="permdesc_foregroundServiceSystemExempted" msgid="947381760834649622">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « système exempté »"</string> <string name="permlab_foregroundServiceFileManagement" msgid="2585000987966045030">"exécuter le service d\'avant-plan avec le type « fileManagement »"</string> - <string name="permdesc_foregroundServiceFileManagement" msgid="417103601269698508">"Autorise l\'application à utiliser les services d\'avant-plan avec le type « fileManagement »"</string> + <string name="permdesc_foregroundServiceFileManagement" msgid="417103601269698508">"Autorise l\'appli à utiliser les services d\'avant-plan avec le type « fileManagement »"</string> <string name="permlab_foregroundServiceMediaProcessing" msgid="3045295152245381864">"exécuter le service de premier plan avec le type « mediaProcessing »"</string> - <string name="permdesc_foregroundServiceMediaProcessing" msgid="8303086172106677312">"Autorise l\'application à utiliser les services de premier plan avec le type « mediaProcessing »"</string> + <string name="permdesc_foregroundServiceMediaProcessing" msgid="8303086172106677312">"Autorise l\'appli à utiliser les services de premier plan avec le type « mediaProcessing »"</string> <string name="permlab_foregroundServiceSpecialUse" msgid="7973536745876645082">"exécuter le service d\'avant-plan avec le type « usage spécial »"</string> - <string name="permdesc_foregroundServiceSpecialUse" msgid="646713654541885919">"Autoriser l\'application à utiliser les services d\'avant-plan avec le type « usage spécial »"</string> - <string name="permlab_getPackageSize" msgid="375391550792886641">"évaluer l\'espace de stockage de l\'application"</string> - <string name="permdesc_getPackageSize" msgid="742743530909966782">"Permet à l\'application de récupérer la taille de son code, de ses données et de sa mémoire cache."</string> + <string name="permdesc_foregroundServiceSpecialUse" msgid="646713654541885919">"Autoriser l\'appli à utiliser les services d\'avant-plan avec le type « usage spécial »"</string> + <string name="permlab_getPackageSize" msgid="375391550792886641">"évaluer l\'espace de stockage de l\'appli"</string> + <string name="permdesc_getPackageSize" msgid="742743530909966782">"Permet à l\'appli de récupérer la taille de son code, de ses données et de sa mémoire cache."</string> <string name="permlab_writeSettings" msgid="8057285063719277394">"modifier les paramètres du système"</string> - <string name="permdesc_writeSettings" msgid="8293047411196067188">"Permet à l\'application de modifier les paramètres du système. Des applications malveillantes peuvent utiliser cette fonctionnalité pour corrompre la configuration de votre système."</string> + <string name="permdesc_writeSettings" msgid="8293047411196067188">"Permet à l\'appli de modifier les paramètres du système. Des applis malveillantes peuvent utiliser cette fonctionnalité pour corrompre la configuration de votre système."</string> <string name="permlab_receiveBootCompleted" msgid="6643339400247325379">"s\'exécuter au démarrage"</string> - <string name="permdesc_receiveBootCompleted" product="tablet" msgid="5565659082718177484">"Permet à l\'application de se lancer une fois le démarrage du système terminé. Elle peut rallonger le temps de démarrage de la tablette et ralentir son fonctionnement global en raison de son exécution continue."</string> - <string name="permdesc_receiveBootCompleted" product="tv" msgid="4900842256047614307">"Permet à l\'application de se lancer une fois le démarrage du système terminé. Cela peut rallonger le temps de démarrage de votre appareil Android TV et permettre à l\'application d\'en ralentir le fonctionnement global en raison de son exécution continue."</string> - <string name="permdesc_receiveBootCompleted" product="default" msgid="7912677044558690092">"Permet à l\'application de se lancer une fois le démarrage du système terminé. Elle peut rallonger le temps de démarrage du téléphone et ralentir son fonctionnement global en raison de son exécution continue."</string> + <string name="permdesc_receiveBootCompleted" product="tablet" msgid="5565659082718177484">"Permet à l\'appli de se lancer une fois le démarrage du système terminé. Elle peut rallonger le temps de démarrage de la tablette et ralentir son fonctionnement global en raison de son exécution continue."</string> + <string name="permdesc_receiveBootCompleted" product="tv" msgid="4900842256047614307">"Permet à l\'appli de se lancer une fois le démarrage du système terminé. Cela peut rallonger le temps de démarrage de votre appareil Android TV et permettre à l\'appli d\'en ralentir le fonctionnement global en raison de son exécution continue."</string> + <string name="permdesc_receiveBootCompleted" product="default" msgid="7912677044558690092">"Permet à l\'appli de se lancer une fois le démarrage du système terminé. Elle peut rallonger le temps de démarrage du téléphone et ralentir son fonctionnement global en raison de son exécution continue."</string> <string name="permlab_broadcastSticky" msgid="4552241916400572230">"envoyer une diffusion persistante"</string> - <string name="permdesc_broadcastSticky" product="tablet" msgid="5058486069846384013">"Permet à l\'application d\'envoyer des intentions de diffusion \"persistantes\", qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir la tablette ou la rendre instable en l\'obligeant à utiliser trop de mémoire."</string> - <string name="permdesc_broadcastSticky" product="tv" msgid="2338185920171000650">"Permet à l\'application d\'envoyer des intentions de diffusion persistantes, qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir votre appareil Android TV ou le rendre instable en l\'obligeant à utiliser trop de mémoire."</string> - <string name="permdesc_broadcastSticky" product="default" msgid="134529339678913453">"Permet à l\'application d\'envoyer des intentions de diffusion \"persistantes\", qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir le téléphone ou le rendre instable en l\'obligeant à utiliser trop de mémoire."</string> + <string name="permdesc_broadcastSticky" product="tablet" msgid="5058486069846384013">"Permet à l\'appli d\'envoyer des intentions de diffusion \"persistantes\", qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir la tablette ou la rendre instable en l\'obligeant à utiliser trop de mémoire."</string> + <string name="permdesc_broadcastSticky" product="tv" msgid="2338185920171000650">"Permet à l\'appli d\'envoyer des intentions de diffusion persistantes, qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir votre appareil Android TV ou le rendre instable en l\'obligeant à utiliser trop de mémoire."</string> + <string name="permdesc_broadcastSticky" product="default" msgid="134529339678913453">"Permet à l\'appli d\'envoyer des intentions de diffusion \"persistantes\", qui perdurent une fois la diffusion terminée. Une utilisation excessive peut ralentir le téléphone ou le rendre instable en l\'obligeant à utiliser trop de mémoire."</string> <string name="permlab_readContacts" msgid="8776395111787429099">"lire vos contacts"</string> - <string name="permdesc_readContacts" product="tablet" msgid="6430093481659992692">"Permet à l\'application de lire les données relatives aux contacts stockés sur votre tablette. Les applications auront aussi accès aux comptes sur votre tablette qui ont créé des contacts. Cela peut comprendre des comptes créés par des applications que vous avez installées. Cette autorisation permet aux applications d\'enregistrer ces données. Les applications malveillantes peuvent les partager à votre insu."</string> - <string name="permdesc_readContacts" product="tv" msgid="8400138591135554789">"Permet à l\'application de lire les données relatives aux contacts stockés sur votre appareil Android TV. Les applications auront aussi accès aux comptes sur votre appareil Android TV qui ont créé des contacts. Cela peut comprendre des comptes créés par des applications que vous avez installées. Cette autorisation permet aux applications d\'enregistrer ces données. Les applications malveillantes peuvent les partager à votre insu."</string> - <string name="permdesc_readContacts" product="default" msgid="4911989776203207644">"Permet à l\'application de lire les données relatives aux contacts stockés sur votre téléphone. Les applications auront aussi accès aux comptes sur votre téléphone qui ont créé des contacts. Cela peut comprendre des comptes créés par des applications que vous avez installées. Cette autorisation permet aux applications d\'enregistrer ces données. Les applications malveillantes peuvent les partager à votre insu."</string> + <string name="permdesc_readContacts" product="tablet" msgid="6430093481659992692">"Permet à l\'appli de lire les données relatives aux contacts stockés sur votre tablette. Les applis auront aussi accès aux comptes sur votre tablette qui ont créé des contacts. Cela peut comprendre des comptes créés par des applis que vous avez installées. Cette autorisation permet aux applis d\'enregistrer ces données. Les applis malveillantes peuvent les partager à votre insu."</string> + <string name="permdesc_readContacts" product="tv" msgid="8400138591135554789">"Permet à l\'appli de lire les données relatives aux contacts stockés sur votre appareil Android TV. Les applis auront aussi accès aux comptes sur votre appareil Android TV qui ont créé des contacts. Cela peut comprendre des comptes créés par des applis que vous avez installées. Cette autorisation permet aux applis d\'enregistrer ces données. Les applis malveillantes peuvent les partager à votre insu."</string> + <string name="permdesc_readContacts" product="default" msgid="4911989776203207644">"Permet à l\'appli de lire les données relatives aux contacts stockés sur votre téléphone. Les applis auront aussi accès aux comptes sur votre téléphone qui ont créé des contacts. Cela peut comprendre des comptes créés par des applis que vous avez installées. Cette autorisation permet aux applis d\'enregistrer ces données. Les applis malveillantes peuvent les partager à votre insu."</string> <string name="permlab_writeContacts" msgid="8919430536404830430">"modifier vos contacts"</string> - <string name="permdesc_writeContacts" product="tablet" msgid="6422419281427826181">"Permet à l\'application de modifier les données relatives aux contacts stockés sur votre tablette. Cette autorisation permet aux applications de supprimer des données relatives aux contacts."</string> - <string name="permdesc_writeContacts" product="tv" msgid="6488872735379978935">"Permet à l\'application de modifier les données relatives aux contacts stockés sur votre appareil Android TV. Cette autorisation permet aux applications de supprimer des données relatives aux contacts."</string> - <string name="permdesc_writeContacts" product="default" msgid="8304795696237065281">"Permet à l\'application de modifier les données relatives aux contacts stockés sur votre téléphone. Cette autorisation permet aux applications de supprimer des données relatives aux contacts."</string> + <string name="permdesc_writeContacts" product="tablet" msgid="6422419281427826181">"Permet à l\'appli de modifier les données relatives aux contacts stockés sur votre tablette. Cette autorisation permet aux applis de supprimer des données relatives aux contacts."</string> + <string name="permdesc_writeContacts" product="tv" msgid="6488872735379978935">"Permet à l\'appli de modifier les données relatives aux contacts stockés sur votre appareil Android TV. Cette autorisation permet aux applis de supprimer des données relatives aux contacts."</string> + <string name="permdesc_writeContacts" product="default" msgid="8304795696237065281">"Permet à l\'appli de modifier les données relatives aux contacts stockés sur votre téléphone. Cette autorisation permet aux applis de supprimer des données relatives aux contacts."</string> <string name="permlab_readCallLog" msgid="1739990210293505948">"lire le journal d\'appels"</string> - <string name="permdesc_readCallLog" msgid="8964770895425873433">"Cette application peut lire votre historique d\'appel."</string> + <string name="permdesc_readCallLog" msgid="8964770895425873433">"Cette appli peut lire votre historique d\'appel."</string> <string name="permlab_writeCallLog" msgid="670292975137658895">"modifier le journal d\'appels"</string> - <string name="permdesc_writeCallLog" product="tablet" msgid="2657525794731690397">"Permet à l\'application de lire le journal d\'appels de votre tablette, y compris les données relatives aux appels entrants et sortants. Des applications malveillantes peuvent utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> - <string name="permdesc_writeCallLog" product="tv" msgid="3934939195095317432">"Permet à l\'application de modifier le journal d\'appels de votre appareil Android TV, y compris les données sur les appels entrants et sortants. Des applications malveillantes pourraient utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> - <string name="permdesc_writeCallLog" product="default" msgid="5903033505665134802">"Permet à l\'application de lire le journal d\'appels de votre téléphone, y compris les données relatives aux appels entrants et sortants. Des applications malveillantes peuvent utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> + <string name="permdesc_writeCallLog" product="tablet" msgid="2657525794731690397">"Permet à l\'appli de lire le journal d\'appels de votre tablette, y compris les données relatives aux appels entrants et sortants. Des applis malveillantes peuvent utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> + <string name="permdesc_writeCallLog" product="tv" msgid="3934939195095317432">"Permet à l\'appli de modifier le journal d\'appels de votre appareil Android TV, y compris les données sur les appels entrants et sortants. Des applis malveillantes pourraient utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> + <string name="permdesc_writeCallLog" product="default" msgid="5903033505665134802">"Permet à l\'appli de lire le journal d\'appels de votre téléphone, y compris les données relatives aux appels entrants et sortants. Des applis malveillantes peuvent utiliser cette fonctionnalité pour effacer ou modifier votre journal d\'appels."</string> <string name="permlab_bodySensors" msgid="662918578601619569">"Accéder aux données des capteurs corporels si en utilisation (fréq. card., etc.)"</string> - <string name="permdesc_bodySensors" product="default" msgid="7652650410295512140">"Permet à l\'application d\'accéder aux données des capteurs corporels telles que la fréquence cardiaque, la température et le pourcentage d\'oxygène dans le sang pendant l\'utilisation de l\'application."</string> + <string name="permdesc_bodySensors" product="default" msgid="7652650410295512140">"Permet à l\'appli d\'accéder aux données des capteurs corporels telles que la fréquence cardiaque, la température et le pourcentage d\'oxygène dans le sang pendant l\'utilisation de l\'appli."</string> <string name="permlab_bodySensors_background" msgid="4912560779957760446">"Accéder aux données des capteurs corporels (comme la fréq. card.) en arrière-plan"</string> - <string name="permdesc_bodySensors_background" product="default" msgid="8870726027557749417">"Permet à l\'application d\'accéder aux données des capteurs corporels telles que la fréquence cardiaque, la température et le pourcentage d\'oxygène dans le sang pendant que l\'application s\'exécute en arrière-plan."</string> + <string name="permdesc_bodySensors_background" product="default" msgid="8870726027557749417">"Permet à l\'appli d\'accéder aux données des capteurs corporels telles que la fréquence cardiaque, la température et le pourcentage d\'oxygène dans le sang pendant que l\'appli s\'exécute en arrière-plan."</string> <string name="permlab_readCalendar" msgid="6408654259475396200">"Lire les événements d\'agenda et leurs détails"</string> - <string name="permdesc_readCalendar" product="tablet" msgid="515452384059803326">"Cette application peut lire tous les événements d\'agenda stockés sur votre tablette et partager ou enregistrer les données de votre agenda."</string> - <string name="permdesc_readCalendar" product="tv" msgid="5811726712981647628">"Cette application peut lire tous les événements d\'agenda stockés sur votre appareil Android TV et partager ou enregistrer les données de votre agenda."</string> - <string name="permdesc_readCalendar" product="default" msgid="9118823807655829957">"Cette application peut lire tous les événements d\'agenda stockés sur votre téléphone et partager ou enregistrer les données de votre agenda."</string> + <string name="permdesc_readCalendar" product="tablet" msgid="515452384059803326">"Cette appli peut lire tous les événements d\'agenda stockés sur votre tablette et partager ou enregistrer les données de votre agenda."</string> + <string name="permdesc_readCalendar" product="tv" msgid="5811726712981647628">"Cette appli peut lire tous les événements d\'agenda stockés sur votre appareil Android TV et partager ou enregistrer les données de votre agenda."</string> + <string name="permdesc_readCalendar" product="default" msgid="9118823807655829957">"Cette appli peut lire tous les événements d\'agenda stockés sur votre téléphone et partager ou enregistrer les données de votre agenda."</string> <string name="permlab_writeCalendar" msgid="6422137308329578076">"ajouter ou modifier des événements d\'agenda et envoyer des courriels aux invités à l\'insu du propriétaire"</string> - <string name="permdesc_writeCalendar" product="tablet" msgid="8722230940717092850">"Cette application peut ajouter, supprimer et modifier des événements d\'agenda sur votre tablette. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> - <string name="permdesc_writeCalendar" product="tv" msgid="951246749004952706">"Cette application peut ajouter, supprimer et modifier des événements d\'agenda sur votre appareil Android TV. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> - <string name="permdesc_writeCalendar" product="default" msgid="5416380074475634233">"Cette application peut ajouter, supprimer et modifier des événements d\'agenda sur votre téléphone. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> + <string name="permdesc_writeCalendar" product="tablet" msgid="8722230940717092850">"Cette appli peut ajouter, supprimer et modifier des événements d\'agenda sur votre tablette. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> + <string name="permdesc_writeCalendar" product="tv" msgid="951246749004952706">"Cette appli peut ajouter, supprimer et modifier des événements d\'agenda sur votre appareil Android TV. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> + <string name="permdesc_writeCalendar" product="default" msgid="5416380074475634233">"Cette appli peut ajouter, supprimer et modifier des événements d\'agenda sur votre téléphone. Elle peut aussi envoyer des messages qui pourraient sembler venir des propriétaires d\'agenda en question ou modifier des événements sans avertir leur propriétaire."</string> <string name="permlab_accessLocationExtraCommands" msgid="5162339812057983988">"accéder aux commandes de fournisseur de position géographique supplémentaires"</string> - <string name="permdesc_accessLocationExtraCommands" msgid="355369611979907967">"Permet à l\'application d\'accéder à des commandes de localisation supplémentaires offertes par le fournisseur. Elle est ainsi susceptible d\'interférer avec le bon fonctionnement du GPS ou de toute autre source de localisation."</string> + <string name="permdesc_accessLocationExtraCommands" msgid="355369611979907967">"Permet à l\'appli d\'accéder à des commandes de localisation supplémentaires offertes par le fournisseur. Elle est ainsi susceptible d\'interférer avec le bon fonctionnement du GPS ou de toute autre source de localisation."</string> <string name="permlab_accessFineLocation" msgid="6426318438195622966">"accéder à votre position précise seulement en avant-plan"</string> - <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Cette application peut obtenir votre position précise des services de localisation lorsque vous utilisez l\'application. Les services de localisation doivent être activés sur votre appareil pour que l\'application puisse obtenir votre position. Cela pourrait accroître l\'utilisation de la pile."</string> + <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Cette appli peut obtenir votre position précise des services de localisation lorsque vous utilisez l\'appli. Les services de localisation doivent être activés sur votre appareil pour que l\'appli puisse obtenir votre position. Cela pourrait accroître l\'utilisation de la pile."</string> <string name="permlab_accessCoarseLocation" msgid="1561042925407799741">"accéder à votre position approximative seulement en avant-plan"</string> - <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Cette application peut obtenir votre position approximative des services de localisation lorsque vous utilisez l\'application. Les services de localisation doivent être activés sur votre appareil pour que l\'application puisse obtenir votre position."</string> + <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Cette appli peut obtenir votre position approximative des services de localisation lorsque vous utilisez l\'appli. Les services de localisation doivent être activés sur votre appareil pour que l\'appli puisse obtenir votre position."</string> <string name="permlab_accessBackgroundLocation" msgid="1721164702777366138">"accès à la localisation en arrière-plan"</string> - <string name="permdesc_accessBackgroundLocation" msgid="8264885066095638105">"Cette application peut accéder à votre position en tout temps, même lorsque vous n\'utilisez pas l\'application."</string> + <string name="permdesc_accessBackgroundLocation" msgid="8264885066095638105">"Cette appli peut accéder à votre position en tout temps, même lorsque vous n\'utilisez pas l\'appli."</string> <string name="permlab_modifyAudioSettings" msgid="6129039778010031815">"modifier vos paramètres audio"</string> - <string name="permdesc_modifyAudioSettings" msgid="8687227609663124921">"Permet à l\'application de modifier les paramètres audio généraux, tels que le volume et la sortie audio utilisée."</string> + <string name="permdesc_modifyAudioSettings" msgid="8687227609663124921">"Permet à l\'appli de modifier les paramètres audio généraux, tels que le volume et la sortie audio utilisée."</string> <string name="permlab_recordAudio" msgid="1208457423054219147">"enregistrer des fichiers audio"</string> - <string name="permdesc_recordAudio" msgid="5857246765327514062">"Cette application peut enregistrer de l\'audio à l\'aide du microphone lorsque vous utilisez l\'application."</string> + <string name="permdesc_recordAudio" msgid="5857246765327514062">"Cette appli peut enregistrer de l\'audio à l\'aide du microphone lorsque vous utilisez l\'appli."</string> <string name="permlab_recordBackgroundAudio" msgid="5891032812308878254">"enregistrer de l\'audio en arrière-plan"</string> - <string name="permdesc_recordBackgroundAudio" msgid="1992623135737407516">"Cette application peut enregistrer de l\'audio à l\'aide du microphone en tout temps."</string> - <string name="permlab_detectScreenCapture" msgid="4447042362828799433">"détecter les captures d\'écran des fenêtres d\'application"</string> - <string name="permdesc_detectScreenCapture" msgid="3485784917960342284">"Cette application recevra une notification lorsqu\'une capture d\'écran sera prise pendant que l\'application est en cours d\'utilisation."</string> + <string name="permdesc_recordBackgroundAudio" msgid="1992623135737407516">"Cette appli peut enregistrer de l\'audio à l\'aide du microphone en tout temps."</string> + <string name="permlab_detectScreenCapture" msgid="4447042362828799433">"détecter les captures d\'écran des fenêtres d\'appli"</string> + <string name="permdesc_detectScreenCapture" msgid="3485784917960342284">"Cette appli recevra une notification lorsqu\'une capture d\'écran sera prise pendant que l\'appli est en cours d\'utilisation."</string> <string name="permlab_sim_communication" msgid="176788115994050692">"envoyer des commandes à la carte SIM"</string> - <string name="permdesc_sim_communication" msgid="4179799296415957960">"Permet à l\'application d\'envoyer des commandes à la carte SIM. Cette fonctionnalité est très dangereuse."</string> + <string name="permdesc_sim_communication" msgid="4179799296415957960">"Permet à l\'appli d\'envoyer des commandes à la carte SIM. Cette fonctionnalité est très dangereuse."</string> <string name="permlab_activityRecognition" msgid="1782303296053990884">"reconnaître les activités physiques"</string> - <string name="permdesc_activityRecognition" msgid="8667484762991357519">"Cette application peut reconnaître vos activités physiques."</string> + <string name="permdesc_activityRecognition" msgid="8667484762991357519">"Cette appli peut reconnaître vos activités physiques."</string> <string name="permlab_camera" msgid="6320282492904119413">"prendre des photos et filmer des vidéos"</string> - <string name="permdesc_camera" msgid="5240801376168647151">"Cette application peut prendre des photos et enregistrer des vidéos à l\'aide de l\'appareil photo lorsque vous utilisez l\'application."</string> + <string name="permdesc_camera" msgid="5240801376168647151">"Cette appli peut prendre des photos et enregistrer des vidéos à l\'aide de l\'appareil photo lorsque vous utilisez l\'appli."</string> <string name="permlab_backgroundCamera" msgid="7549917926079731681">"prendre des photos et enregistrer des vidéos en arrière-plan"</string> - <string name="permdesc_backgroundCamera" msgid="1615291686191138250">"Cette application peut prendre des photos et enregistrer des vidéos à l\'aide de l\'appareil photo en tout temps."</string> - <string name="permlab_systemCamera" msgid="3642917457796210580">"Autoriser une application ou un service à accéder aux appareils photo système pour prendre des photos et filmer des vidéos"</string> - <string name="permdesc_systemCamera" msgid="5938360914419175986">"Cette application privilégiée ou système peut prendre des photos ou filmer des vidéos à l\'aide d\'un appareil photo système en tout temps. L\'application doit également posséder l\'autorisation android.permission.CAMERA"</string> - <string name="permlab_cameraOpenCloseListener" msgid="5548732769068109315">"Autoriser une application ou un service de recevoir des rappels relatifs à l\'ouverture ou à la fermeture des appareils photos."</string> - <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Cette application peut recevoir des rappels lorsque l\'appareil photo est ouvert ou fermé (par l\'application en question)."</string> - <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Autoriser une application ou un service à accéder à la caméra en tant qu\'utilisateur de système sans interface."</string> - <string name="permdesc_cameraHeadlessSystemUser" msgid="6963163319710996412">"Cette application peut accéder à la caméra en tant qu\'utilisateur de système sans interface."</string> + <string name="permdesc_backgroundCamera" msgid="1615291686191138250">"Cette appli peut prendre des photos et enregistrer des vidéos à l\'aide de l\'appareil photo en tout temps."</string> + <string name="permlab_systemCamera" msgid="3642917457796210580">"Autoriser une appli ou un service à accéder aux appareils photo système pour prendre des photos et filmer des vidéos"</string> + <string name="permdesc_systemCamera" msgid="5938360914419175986">"Cette appli privilégiée ou système peut prendre des photos ou filmer des vidéos à l\'aide d\'un appareil photo système en tout temps. L\'appli doit également posséder l\'autorisation android.permission.CAMERA"</string> + <string name="permlab_cameraOpenCloseListener" msgid="5548732769068109315">"Autoriser une appli ou un service de recevoir des rappels relatifs à l\'ouverture ou à la fermeture des appareils photos."</string> + <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Cette appli peut recevoir des rappels lorsque l\'appareil photo est ouvert ou fermé (par l\'appli en question)."</string> + <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Autoriser une appli ou un service à accéder à la caméra en tant qu\'utilisateur de système sans interface."</string> + <string name="permdesc_cameraHeadlessSystemUser" msgid="6963163319710996412">"Cette appli peut accéder à la caméra en tant qu\'utilisateur de système sans interface."</string> <string name="permlab_vibrate" msgid="8596800035791962017">"gérer le vibreur"</string> - <string name="permdesc_vibrate" msgid="8733343234582083721">"Permet à l\'application de gérer le vibreur de l\'appareil."</string> - <string name="permdesc_vibrator_state" msgid="7050024956594170724">"Permet à l\'application d\'accéder au mode vibration."</string> + <string name="permdesc_vibrate" msgid="8733343234582083721">"Permet à l\'appli de gérer le vibreur de l\'appareil."</string> + <string name="permdesc_vibrator_state" msgid="7050024956594170724">"Permet à l\'appli d\'accéder au mode vibration."</string> <string name="permlab_callPhone" msgid="1798582257194643320">"appeler directement des numéros de téléphone"</string> - <string name="permdesc_callPhone" msgid="7892422187827695656">"Autorisez l\'application à appeler des numéros de téléphone sans votre intervention. Cela peut entraîner des frais ou des appels imprévus. Notez aussi que cela ne permet pas à l\'application d\'appeler des numéros d\'urgence. Des applications malveillantes peuvent engendrer des frais en passant des appels sans votre confirmation ou en composant des codes de fournisseurs de service qui transfèrent automatiquement des appels entrants vers un autre numéro."</string> + <string name="permdesc_callPhone" msgid="7892422187827695656">"Autorisez l\'appli à appeler des numéros de téléphone sans votre intervention. Cela peut entraîner des frais ou des appels imprévus. Notez aussi que cela ne permet pas à l\'appli d\'appeler des numéros d\'urgence. Des applis malveillantes peuvent engendrer des frais en passant des appels sans votre confirmation ou en composant des codes de fournisseurs de service qui transfèrent automatiquement des appels entrants vers un autre numéro."</string> <string name="permlab_accessImsCallService" msgid="442192920714863782">"accéder au service d\'appel IMS"</string> - <string name="permdesc_accessImsCallService" msgid="6328551241649687162">"Permet à l\'application d\'utiliser le service IMS pour faire des appels sans votre intervention."</string> + <string name="permdesc_accessImsCallService" msgid="6328551241649687162">"Permet à l\'appli d\'utiliser le service IMS pour faire des appels sans votre intervention."</string> <string name="permlab_readPhoneState" msgid="8138526903259297969">"voir l\'état et l\'identité du téléphone"</string> - <string name="permdesc_readPhoneState" msgid="7229063553502788058">"Permet à l\'application d\'accéder aux fonctionnalités téléphoniques de l\'appareil. Cette autorisation permet à l\'application de déterminer le numéro de téléphone et les identifiants de l\'appareil, si un appel est actif et le numéro distant connecté par un appel."</string> + <string name="permdesc_readPhoneState" msgid="7229063553502788058">"Permet à l\'appli d\'accéder aux fonctionnalités téléphoniques de l\'appareil. Cette autorisation permet à l\'appli de déterminer le numéro de téléphone et les identifiants de l\'appareil, si un appel est actif et le numéro distant connecté par un appel."</string> <string name="permlab_readBasicPhoneState" msgid="3214853233263871347">"Lire l\'état et l\'identité de la téléphonie de base"</string> - <string name="permdesc_readBasicPhoneState" msgid="828185691675460520">"Permet à l\'application d\'accéder aux fonctionnalités de téléphonie de base de l\'appareil."</string> + <string name="permdesc_readBasicPhoneState" msgid="828185691675460520">"Permet à l\'appli d\'accéder aux fonctionnalités de téléphonie de base de l\'appareil."</string> <string name="permlab_manageOwnCalls" msgid="9033349060307561370">"acheminer les appels dans le système"</string> - <string name="permdesc_manageOwnCalls" msgid="4431178362202142574">"Permet à l\'application d\'acheminer ses appels dans le système afin d\'améliorer l\'expérience d\'appel."</string> + <string name="permdesc_manageOwnCalls" msgid="4431178362202142574">"Permet à l\'appli d\'acheminer ses appels dans le système afin d\'améliorer l\'expérience d\'appel."</string> <string name="permlab_callCompanionApp" msgid="3654373653014126884">"afficher et gérer les appels à l\'aide du système."</string> - <string name="permdesc_callCompanionApp" msgid="8474168926184156261">"Autorise l\'application à afficher et à gérer les appels sortants sur l\'appareil. Cela comprend de l\'information comme les numéros pour les appels et l\'état des appels."</string> + <string name="permdesc_callCompanionApp" msgid="8474168926184156261">"Autorise l\'appli à afficher et à gérer les appels sortants sur l\'appareil. Cela comprend de l\'information comme les numéros pour les appels et l\'état des appels."</string> <string name="permlab_exemptFromAudioRecordRestrictions" msgid="1164725468350759486">"est exemptée des restrictions relatives à l\'enregistrement de fichiers audio"</string> - <string name="permdesc_exemptFromAudioRecordRestrictions" msgid="2425117015896871976">"Exempter l\'application des restrictions relatives à l\'enregistrement de fichiers audio."</string> - <string name="permlab_acceptHandover" msgid="2925523073573116523">"continuer un appel d\'une autre application"</string> - <string name="permdesc_acceptHandovers" msgid="7129026180128626870">"Permet à l\'application de continuer un appel commencé dans une autre application."</string> + <string name="permdesc_exemptFromAudioRecordRestrictions" msgid="2425117015896871976">"Exempter l\'appli des restrictions relatives à l\'enregistrement de fichiers audio."</string> + <string name="permlab_acceptHandover" msgid="2925523073573116523">"continuer un appel d\'une autre appli"</string> + <string name="permdesc_acceptHandovers" msgid="7129026180128626870">"Permet à l\'appli de continuer un appel commencé dans une autre appli."</string> <string name="permlab_readPhoneNumbers" msgid="5668704794723365628">"lire les numéros de téléphone"</string> - <string name="permdesc_readPhoneNumbers" msgid="7368652482818338871">"Permet à l\'application d\'accéder aux numéros de téléphone de l\'appareil."</string> + <string name="permdesc_readPhoneNumbers" msgid="7368652482818338871">"Permet à l\'appli d\'accéder aux numéros de téléphone de l\'appareil."</string> <string name="permlab_wakeLock" product="automotive" msgid="1904736682319375676">"garder l\'écran de la voiture allumé"</string> <string name="permlab_wakeLock" product="tablet" msgid="1527660973931694000">"empêcher la tablette de passer en mode veille"</string> <string name="permlab_wakeLock" product="tv" msgid="2856941418123343518">"Empêcher votre appareil Android TV de passer en mode Veille"</string> <string name="permlab_wakeLock" product="default" msgid="569409726861695115">"empêcher le téléphone de passer en mode veille"</string> - <string name="permdesc_wakeLock" product="automotive" msgid="5995045369683254571">"Permet à l\'application de garder l\'écran de la voiture allumé."</string> - <string name="permdesc_wakeLock" product="tablet" msgid="2441742939101526277">"Permet à l\'application d\'empêcher la tablette de passer en mode veille."</string> - <string name="permdesc_wakeLock" product="tv" msgid="2329298966735118796">"Permet à l\'application d\'empêcher votre appareil Android TV de passer en mode Veille."</string> - <string name="permdesc_wakeLock" product="default" msgid="3689523792074007163">"Permet à l\'application d\'empêcher le téléphone de passer en mode veille."</string> + <string name="permdesc_wakeLock" product="automotive" msgid="5995045369683254571">"Permet à l\'appli de garder l\'écran de la voiture allumé."</string> + <string name="permdesc_wakeLock" product="tablet" msgid="2441742939101526277">"Permet à l\'appli d\'empêcher la tablette de passer en mode veille."</string> + <string name="permdesc_wakeLock" product="tv" msgid="2329298966735118796">"Permet à l\'appli d\'empêcher votre appareil Android TV de passer en mode Veille."</string> + <string name="permdesc_wakeLock" product="default" msgid="3689523792074007163">"Permet à l\'appli d\'empêcher le téléphone de passer en mode veille."</string> <string name="permlab_transmitIr" msgid="8077196086358004010">"transmettre des signaux infrarouges"</string> - <string name="permdesc_transmitIr" product="tablet" msgid="5884738958581810253">"Permet à l\'application d\'utiliser l\'émetteur infrarouge de la tablette."</string> - <string name="permdesc_transmitIr" product="tv" msgid="3278506969529173281">"Permet à l\'application d\'utiliser le transmetteur infrarouge de votre appareil Android TV."</string> - <string name="permdesc_transmitIr" product="default" msgid="8484193849295581808">"Permet à l\'application d\'utiliser l\'émetteur infrarouge du téléphone."</string> + <string name="permdesc_transmitIr" product="tablet" msgid="5884738958581810253">"Permet à l\'appli d\'utiliser l\'émetteur infrarouge de la tablette."</string> + <string name="permdesc_transmitIr" product="tv" msgid="3278506969529173281">"Permet à l\'appli d\'utiliser le transmetteur infrarouge de votre appareil Android TV."</string> + <string name="permdesc_transmitIr" product="default" msgid="8484193849295581808">"Permet à l\'appli d\'utiliser l\'émetteur infrarouge du téléphone."</string> <string name="permlab_setWallpaper" msgid="6959514622698794511">"définir le fond d\'écran"</string> - <string name="permdesc_setWallpaper" msgid="2973996714129021397">"Permet à l\'application de définir le fond d\'écran du système."</string> + <string name="permdesc_setWallpaper" msgid="2973996714129021397">"Permet à l\'appli de définir le fond d\'écran du système."</string> <string name="permlab_accessHiddenProfile" msgid="8607094418491556823">"Accéder aux profils masqués"</string> - <string name="permdesc_accessHiddenProfile" msgid="1543153202481009676">"Autorise l\'application à accéder aux profils masqués"</string> + <string name="permdesc_accessHiddenProfile" msgid="1543153202481009676">"Autorise l\'appli à accéder aux profils masqués"</string> <string name="permlab_setWallpaperHints" msgid="1153485176642032714">"modifier la taille du fond d\'écran"</string> - <string name="permdesc_setWallpaperHints" msgid="6257053376990044668">"Permet à l\'application de définir les bulles d\'aide concernant la taille du fond d\'écran du système."</string> + <string name="permdesc_setWallpaperHints" msgid="6257053376990044668">"Permet à l\'appli de définir les bulles d\'aide concernant la taille du fond d\'écran du système."</string> <string name="permlab_setTimeZone" msgid="7922618798611542432">"définir le fuseau horaire"</string> - <string name="permdesc_setTimeZone" product="tablet" msgid="1788868809638682503">"Permet à l\'application de modifier le fuseau horaire de la tablette."</string> - <string name="permdesc_setTimeZone" product="tv" msgid="9069045914174455938">"Permet à l\'application de modifier le fuseau horaire de votre appareil Android TV."</string> - <string name="permdesc_setTimeZone" product="default" msgid="4611828585759488256">"Permet à l\'application de modifier le fuseau horaire du téléphone."</string> + <string name="permdesc_setTimeZone" product="tablet" msgid="1788868809638682503">"Permet à l\'appli de modifier le fuseau horaire de la tablette."</string> + <string name="permdesc_setTimeZone" product="tv" msgid="9069045914174455938">"Permet à l\'appli de modifier le fuseau horaire de votre appareil Android TV."</string> + <string name="permdesc_setTimeZone" product="default" msgid="4611828585759488256">"Permet à l\'appli de modifier le fuseau horaire du téléphone."</string> <string name="permlab_getAccounts" msgid="5304317160463582791">"rechercher des comptes sur l\'appareil"</string> - <string name="permdesc_getAccounts" product="tablet" msgid="1784452755887604512">"Permet à l\'application d\'obtenir la liste des comptes connus par la tablette. Il peut s\'agir de n\'importe quel compte créé par les applications que vous avez installées."</string> - <string name="permdesc_getAccounts" product="tv" msgid="437604680436540822">"Permet à l\'application d\'obtenir la liste des comptes connus de votre appareil Android TV. Cela peut comprendre n\'importe quel compte créé par les applications que vous avez installées."</string> - <string name="permdesc_getAccounts" product="default" msgid="2491273043569751867">"Permet à l\'application d\'obtenir la liste des comptes connus par le téléphone. Il peut s\'agir de n\'importe quel compte créé par les applications que vous avez installées."</string> + <string name="permdesc_getAccounts" product="tablet" msgid="1784452755887604512">"Permet à l\'appli d\'obtenir la liste des comptes connus par la tablette. Il peut s\'agir de n\'importe quel compte créé par les applis que vous avez installées."</string> + <string name="permdesc_getAccounts" product="tv" msgid="437604680436540822">"Permet à l\'appli d\'obtenir la liste des comptes connus de votre appareil Android TV. Cela peut comprendre n\'importe quel compte créé par les applis que vous avez installées."</string> + <string name="permdesc_getAccounts" product="default" msgid="2491273043569751867">"Permet à l\'appli d\'obtenir la liste des comptes connus par le téléphone. Il peut s\'agir de n\'importe quel compte créé par les applis que vous avez installées."</string> <string name="permlab_accessNetworkState" msgid="2349126720783633918">"afficher les connexions réseau"</string> - <string name="permdesc_accessNetworkState" msgid="4394564702881662849">"Permet à l\'application d\'accéder à des détails concernant les connexions réseau, comme les réseaux existants et connectés."</string> + <string name="permdesc_accessNetworkState" msgid="4394564702881662849">"Permet à l\'appli d\'accéder à des détails concernant les connexions réseau, comme les réseaux existants et connectés."</string> <string name="permlab_createNetworkSockets" msgid="3224420491603590541">"bénéficier d\'un accès complet au réseau"</string> - <string name="permdesc_createNetworkSockets" msgid="7722020828749535988">"Permet à l\'application de créer des interfaces de connexion réseau et d\'utiliser des protocoles réseau personnalisés. Le navigateur et d\'autres applications permettent d\'envoyer des données sur Internet. Cette autorisation n\'est donc pas nécessaire pour envoyer des données sur Internet."</string> + <string name="permdesc_createNetworkSockets" msgid="7722020828749535988">"Permet à l\'appli de créer des interfaces de connexion réseau et d\'utiliser des protocoles réseau personnalisés. Le navigateur et d\'autres applis permettent d\'envoyer des données sur Internet. Cette autorisation n\'est donc pas nécessaire pour envoyer des données sur Internet."</string> <string name="permlab_changeNetworkState" msgid="8945711637530425586">"modifier la connectivité réseau"</string> - <string name="permdesc_changeNetworkState" msgid="649341947816898736">"Permet à l\'application de modifier l\'état de la connectivité réseau."</string> + <string name="permdesc_changeNetworkState" msgid="649341947816898736">"Permet à l\'appli de modifier l\'état de la connectivité réseau."</string> <string name="permlab_changeTetherState" msgid="9079611809931863861">"changer la connectivité du partage de connexion"</string> - <string name="permdesc_changeTetherState" msgid="3025129606422533085">"Permet à l\'application de modifier l\'état de la connectivité du partage de connexion."</string> + <string name="permdesc_changeTetherState" msgid="3025129606422533085">"Permet à l\'appli de modifier l\'état de la connectivité du partage de connexion."</string> <string name="permlab_accessWifiState" msgid="5552488500317911052">"afficher les connexions Wi-Fi"</string> - <string name="permdesc_accessWifiState" msgid="6913641669259483363">"Permet à l\'application d\'accéder à des détails sur les réseaux Wi-Fi afin de savoir si une connexion Wi-Fi est activée et pour connaître le nom des appareils connectés au Wi-Fi, par exemple."</string> + <string name="permdesc_accessWifiState" msgid="6913641669259483363">"Permet à l\'appli d\'accéder à des détails sur les réseaux Wi-Fi afin de savoir si une connexion Wi-Fi est activée et pour connaître le nom des appareils connectés au Wi-Fi, par exemple."</string> <string name="permlab_changeWifiState" msgid="7947824109713181554">"activer/désactiver la connexion Wi-Fi"</string> - <string name="permdesc_changeWifiState" msgid="7170350070554505384">"Permet à l\'application de se connecter à des points d\'accès Wi-Fi, de s\'en déconnecter et de modifier la configuration de l\'appareil pour les réseaux Wi-Fi."</string> + <string name="permdesc_changeWifiState" msgid="7170350070554505384">"Permet à l\'appli de se connecter à des points d\'accès Wi-Fi, de s\'en déconnecter et de modifier la configuration de l\'appareil pour les réseaux Wi-Fi."</string> <string name="permlab_changeWifiMulticastState" msgid="285626875870754696">"autoriser la réception de données en mode Wi-Fi multidiffusion"</string> - <string name="permdesc_changeWifiMulticastState" product="tablet" msgid="191079868596433554">"Permet à l\'application de recevoir des paquets envoyés à tous les appareils (et pas seulement à votre tablette) d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> - <string name="permdesc_changeWifiMulticastState" product="tv" msgid="1336952358450652595">"Permet à l\'application de recevoir des paquets envoyés à tous les appareils d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion, et pas seulement à votre appareil Android TV. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> - <string name="permdesc_changeWifiMulticastState" product="default" msgid="8296627590220222740">"Permet à l\'application de recevoir des paquets envoyés à tous les appareils (et pas seulement à votre téléphone) d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> + <string name="permdesc_changeWifiMulticastState" product="tablet" msgid="191079868596433554">"Permet à l\'appli de recevoir des paquets envoyés à tous les appareils (et pas seulement à votre tablette) d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> + <string name="permdesc_changeWifiMulticastState" product="tv" msgid="1336952358450652595">"Permet à l\'appli de recevoir des paquets envoyés à tous les appareils d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion, et pas seulement à votre appareil Android TV. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> + <string name="permdesc_changeWifiMulticastState" product="default" msgid="8296627590220222740">"Permet à l\'appli de recevoir des paquets envoyés à tous les appareils (et pas seulement à votre téléphone) d\'un réseau Wi-Fi qui utilise des adresses de multidiffusion. Cette autorisation entraîne une consommation d\'énergie supérieure au mode de diffusion simple."</string> <string name="permlab_bluetoothAdmin" msgid="6490373569441946064">"accéder aux paramètres Bluetooth"</string> - <string name="permdesc_bluetoothAdmin" product="tablet" msgid="5370837055438574863">"Permet à l\'application de configurer la tablette Bluetooth locale, d\'identifier des appareils distants et de les associer à la tablette."</string> - <string name="permdesc_bluetoothAdmin" product="tv" msgid="1623992984547014588">"Permet à l\'application de configurer le Bluetooth sur votre appareil Android TV, de repérer des appareils distants et de les associer à l\'appareil."</string> - <string name="permdesc_bluetoothAdmin" product="default" msgid="7381341743021234863">"Permet à l\'application de configurer le téléphone Bluetooth local, d\'identifier des appareils distants et de les associer au téléphone."</string> + <string name="permdesc_bluetoothAdmin" product="tablet" msgid="5370837055438574863">"Permet à l\'appli de configurer la tablette Bluetooth locale, d\'identifier des appareils distants et de les associer à la tablette."</string> + <string name="permdesc_bluetoothAdmin" product="tv" msgid="1623992984547014588">"Permet à l\'appli de configurer le Bluetooth sur votre appareil Android TV, de repérer des appareils distants et de les associer à l\'appareil."</string> + <string name="permdesc_bluetoothAdmin" product="default" msgid="7381341743021234863">"Permet à l\'appli de configurer le téléphone Bluetooth local, d\'identifier des appareils distants et de les associer au téléphone."</string> <string name="permlab_accessWimaxState" msgid="7029563339012437434">"se connecter au réseau WiMAX et s\'en déconnecter"</string> - <string name="permdesc_accessWimaxState" msgid="5372734776802067708">"Permet à l\'application de déterminer si le WiMAX est activé et d\'obtenir des détails sur tous les réseaux WiMAX connectés."</string> + <string name="permdesc_accessWimaxState" msgid="5372734776802067708">"Permet à l\'appli de déterminer si le WiMAX est activé et d\'obtenir des détails sur tous les réseaux WiMAX connectés."</string> <string name="permlab_changeWimaxState" msgid="6223305780806267462">"modifier l\'état du WiMAX"</string> - <string name="permdesc_changeWimaxState" product="tablet" msgid="4011097664859480108">"Permet à l\'application de connecter la tablette aux réseaux WiMAX et de l\'en déconnecter."</string> - <string name="permdesc_changeWimaxState" product="tv" msgid="5373274458799425276">"Permet à l\'application de connecter votre appareil Android TV aux réseaux WiMAX et de les en déconnecter."</string> - <string name="permdesc_changeWimaxState" product="default" msgid="1551666203780202101">"Permet à l\'application de connecter le téléphone aux réseaux WiMAX et de l\'en déconnecter."</string> + <string name="permdesc_changeWimaxState" product="tablet" msgid="4011097664859480108">"Permet à l\'appli de connecter la tablette aux réseaux WiMAX et de l\'en déconnecter."</string> + <string name="permdesc_changeWimaxState" product="tv" msgid="5373274458799425276">"Permet à l\'appli de connecter votre appareil Android TV aux réseaux WiMAX et de les en déconnecter."</string> + <string name="permdesc_changeWimaxState" product="default" msgid="1551666203780202101">"Permet à l\'appli de connecter le téléphone aux réseaux WiMAX et de l\'en déconnecter."</string> <string name="permlab_bluetooth" msgid="586333280736937209">"s\'associer à des appareils Bluetooth"</string> - <string name="permdesc_bluetooth" product="tablet" msgid="3053222571491402635">"Permet à l\'application d\'accéder à la configuration du Bluetooth sur la tablette, et d\'établir et accepter des connexions avec les appareils associés."</string> - <string name="permdesc_bluetooth" product="tv" msgid="8851534496561034998">"Permet à l\'application d\'afficher la configuration du Bluetooth sur votre appareil Android TV, de se connecter à des appareils associés et d\'accepter leur connexion."</string> - <string name="permdesc_bluetooth" product="default" msgid="2779606714091276746">"Permet à l\'application d\'accéder à la configuration du Bluetooth sur le téléphone, et d\'établir et accepter des connexions avec les appareils associés."</string> + <string name="permdesc_bluetooth" product="tablet" msgid="3053222571491402635">"Permet à l\'appli d\'accéder à la configuration du Bluetooth sur la tablette, et d\'établir et accepter des connexions avec les appareils associés."</string> + <string name="permdesc_bluetooth" product="tv" msgid="8851534496561034998">"Permet à l\'appli d\'afficher la configuration du Bluetooth sur votre appareil Android TV, de se connecter à des appareils associés et d\'accepter leur connexion."</string> + <string name="permdesc_bluetooth" product="default" msgid="2779606714091276746">"Permet à l\'appli d\'accéder à la configuration du Bluetooth sur le téléphone, et d\'établir et accepter des connexions avec les appareils associés."</string> <string name="permlab_bluetooth_scan" msgid="5402587142833124594">"découvrir des appareils Bluetooth et s\'y connecter"</string> - <string name="permdesc_bluetooth_scan" product="default" msgid="6540723536925289276">"Permet à l\'application de découvrir les appareils Bluetooth à proximité et de s\'y connecter"</string> + <string name="permdesc_bluetooth_scan" product="default" msgid="6540723536925289276">"Permet à l\'appli de découvrir les appareils Bluetooth à proximité et de s\'y connecter"</string> <string name="permlab_bluetooth_connect" msgid="6657463246355003528">"se connecter aux appareils Bluetooth associés"</string> - <string name="permdesc_bluetooth_connect" product="default" msgid="4546016548795544617">"Permet à l\'application de se connecter aux appareils Bluetooth associés"</string> + <string name="permdesc_bluetooth_connect" product="default" msgid="4546016548795544617">"Permet à l\'appli de se connecter aux appareils Bluetooth associés"</string> <string name="permlab_bluetooth_advertise" msgid="2781147747928853177">"envoyer annonces aux appareils Bluetooth à proxim."</string> - <string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"Permet à l\'application d\'envoyer des annonces aux appareils Bluetooth à proximité"</string> + <string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"Permet à l\'appli d\'envoyer des annonces aux appareils Bluetooth à proximité"</string> <string name="permlab_uwb_ranging" msgid="8141915781475770665">"déterminer la position relative entre des appareils à bande ultralarge à proximité"</string> - <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"Autorisez l\'application à déterminer la position relative entre des appareils à bande ultralarge à proximité"</string> + <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"Autorisez l\'appli à déterminer la position relative entre des appareils à bande ultralarge à proximité"</string> <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"interagir avec les appareils Wi-Fi à proximité"</string> - <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"Permet à l\'application de diffuser des annonces, de se connecter et de déterminer la position relative des appareils Wi-Fi à proximité"</string> + <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"Permet à l\'appli de diffuser des annonces, de se connecter et de déterminer la position relative des appareils Wi-Fi à proximité"</string> <string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"Information sur le service préféré de paiement CCP"</string> - <string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"Permet à l\'application d\'obtenir de l\'information sur le service préféré de paiement CCP comme les aides enregistrées et la route de destination."</string> + <string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"Permet à l\'appli d\'obtenir de l\'information sur le service préféré de paiement CCP comme les aides enregistrées et la route de destination."</string> <string name="permlab_nfc" msgid="1904455246837674977">"gérer la communication en champ proche"</string> - <string name="permdesc_nfc" msgid="8352737680695296741">"Permet à l\'application de communiquer avec des bornes, des cartes et des lecteurs compatibles avec la technologie CCP (communication en champ proche)."</string> + <string name="permdesc_nfc" msgid="8352737680695296741">"Permet à l\'appli de communiquer avec des bornes, des cartes et des lecteurs compatibles avec la technologie CCP (communication en champ proche)."</string> <string name="permlab_nfcTransactionEvent" msgid="5868209446710407679">"Événement de transaction relatif à un élément sécurisé"</string> - <string name="permdesc_nfcTransactionEvent" msgid="1904286701876487397">"Autorise l\'application à recevoir des informations relatives aux transactions effectuées sur un élément sécurisé."</string> + <string name="permdesc_nfcTransactionEvent" msgid="1904286701876487397">"Autorise l\'appli à recevoir des informations relatives aux transactions effectuées sur un élément sécurisé."</string> <string name="permlab_disableKeyguard" msgid="3605253559020928505">"désactiver le verrouillage de l\'écran"</string> - <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Permet à l\'application de désactiver le verrouillage des touches et toute mesure de sécurité par mot de passe associée. Par exemple, votre téléphone désactive le verrouillage des touches lorsque vous recevez un appel, puis le réactive lorsque vous raccrochez."</string> + <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Permet à l\'appli de désactiver le verrouillage des touches et toute mesure de sécurité par mot de passe associée. Par exemple, votre téléphone désactive le verrouillage des touches lorsque vous recevez un appel, puis le réactive lorsque vous raccrochez."</string> <string name="permlab_requestPasswordComplexity" msgid="1808977190557794109">"demander la complexité du verrouillage d\'écran"</string> - <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Autorise l\'application à apprendre le niveau de complexité de l\'écran de verrouillage (élevé, moyen, faible ou aucun), qui indique la gamme possible de longueur et de type de verrouillage d\'écran. L\'application peut aussi suggérer aux utilisateurs de mettre à jour l\'écran de verrouillage afin d\'utiliser un certain niveau de complexité, mais ils peuvent ignorer la suggestion. Notez que le verrouillage d\'écran n\'est pas stocké en texte brut pour de manière à ce que l\'application n\'ait pas accès au mot de passe exact."</string> + <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Autorise l\'appli à apprendre le niveau de complexité du Verrouillage de l\'écran (élevé, moyen, faible ou aucun), ce qui indique les différentes possibilités de longueur et de type de verrouillage d\'écran. L\'appli peut aussi suggérer aux utilisateurs de mettre à jour le Verrouillage de l\'écran afin d\'atteindre un certain niveau de complexité, mais ces derniers peuvent ignorer la suggestion. Notez que le Verrouillage de l\'écran n\'est pas stocké en texte brut pour que l\'appli n\'ait pas accès au mot de passe exact."</string> <string name="permlab_postNotification" msgid="4875401198597803658">"afficher les notifications"</string> - <string name="permdesc_postNotification" msgid="5974977162462877075">"Permet à l\'application d\'afficher les notifications"</string> + <string name="permdesc_postNotification" msgid="5974977162462877075">"Permet à l\'appli d\'afficher les notifications"</string> <string name="permlab_turnScreenOn" msgid="219344053664171492">"allumer l\'écran"</string> - <string name="permdesc_turnScreenOn" msgid="4394606875897601559">"Permet à l\'application d\'allumer l\'écran."</string> + <string name="permdesc_turnScreenOn" msgid="4394606875897601559">"Permet à l\'appli d\'allumer l\'écran."</string> <string name="permlab_useBiometric" msgid="6314741124749633786">"utiliser le matériel biométrique"</string> - <string name="permdesc_useBiometric" msgid="7502858732677143410">"Permet à l\'application d\'utiliser du matériel biométrique pour l\'authentification"</string> + <string name="permdesc_useBiometric" msgid="7502858732677143410">"Permet à l\'appli d\'utiliser du matériel biométrique pour l\'authentification"</string> <string name="permlab_manageFingerprint" msgid="7432667156322821178">"gérer le lecteur d\'empreintes digitales"</string> - <string name="permdesc_manageFingerprint" msgid="2025616816437339865">"Permet à l\'application de faire appel à des méthodes d\'ajout et de suppression de modèles d\'empreinte digitale que vous pouvez utiliser."</string> + <string name="permdesc_manageFingerprint" msgid="2025616816437339865">"Permet à l\'appli de faire appel à des méthodes d\'ajout et de suppression de modèles d\'empreinte digitale que vous pouvez utiliser."</string> <string name="permlab_useFingerprint" msgid="1001421069766751922">"utiliser le lecteur d\'empreintes digitales"</string> - <string name="permdesc_useFingerprint" msgid="412463055059323742">"Permet à l\'application d\'utiliser le lecteur d\'empreintes digitales pour l\'authentification"</string> + <string name="permdesc_useFingerprint" msgid="412463055059323742">"Permet à l\'appli d\'utiliser le lecteur d\'empreintes digitales pour l\'authentification"</string> <string name="permlab_audioWrite" msgid="8501705294265669405">"modifier votre collection de musique"</string> - <string name="permdesc_audioWrite" msgid="8057399517013412431">"Autorise l\'application à modifier votre collection de musique."</string> + <string name="permdesc_audioWrite" msgid="8057399517013412431">"Autorise l\'appli à modifier votre collection de musique."</string> <string name="permlab_videoWrite" msgid="5940738769586451318">"modifier votre collection de vidéos"</string> - <string name="permdesc_videoWrite" msgid="6124731210613317051">"Autorise l\'application à modifier votre collection de vidéos."</string> + <string name="permdesc_videoWrite" msgid="6124731210613317051">"Autorise l\'appli à modifier votre collection de vidéos."</string> <string name="permlab_imagesWrite" msgid="1774555086984985578">"modifier votre collection de photos"</string> - <string name="permdesc_imagesWrite" msgid="5195054463269193317">"Autorise l\'application à modifier votre collection de photos."</string> + <string name="permdesc_imagesWrite" msgid="5195054463269193317">"Autorise l\'appli à modifier votre collection de photos."</string> <string name="permlab_mediaLocation" msgid="7368098373378598066">"lire les positions issues de votre collection multimédia"</string> - <string name="permdesc_mediaLocation" msgid="597912899423578138">"Autorise l\'application à lire les positions indiquées dans votre collection multimédia."</string> + <string name="permdesc_mediaLocation" msgid="597912899423578138">"Autorise l\'appli à lire les positions indiquées dans votre collection multimédia."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Utiliser les données biométriques"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Utiliser les données biométriques ou le verrouillage de l\'écran"</string> <string name="biometric_dialog_default_title" msgid="55026799173208210">"Confirmez que c\'est vous"</string> @@ -740,7 +740,7 @@ <string name="face_error_timeout" msgid="2598544068593889762">"Réessayez déverrouillage reconnaissance faciale"</string> <string name="face_error_no_space" msgid="5649264057026021723">"Impossible de stocker de nouveaux visages. Supprimez-en un."</string> <string name="face_error_canceled" msgid="2164434737103802131">"Opération de reconnaissance du visage annulée."</string> - <string name="face_error_user_canceled" msgid="5766472033202928373">"Le déverrouillage par reconnaissance faciale a été annulé"</string> + <string name="face_error_user_canceled" msgid="5766472033202928373">"Déverrouillage par reconnaissance faciale annulé par l\'utilisateur"</string> <string name="face_error_lockout" msgid="7864408714994529437">"Trop de tentatives. Veuillez réessayer plus tard."</string> <string name="face_error_lockout_permanent" msgid="8533257333130473422">"Trop de tentatives. Le déverrouillage par reconnaissance faciale est inaccessible."</string> <string name="face_error_lockout_screen_lock" msgid="5062609811636860928">"Trop de tentatives. Entrez plutôt le verrouillage de l\'écran."</string> @@ -758,81 +758,81 @@ <string name="face_error_vendor_unknown" msgid="7387005932083302070">"Un problème est survenu. Réessayez."</string> <string name="face_icon_content_description" msgid="465030547475916280">"Icône visage"</string> <string name="permlab_readSyncSettings" msgid="6250532864893156277">"lire les paramètres de synchronisation"</string> - <string name="permdesc_readSyncSettings" msgid="1325658466358779298">"Permet à l\'application d\'accéder aux paramètres de synchronisation d\'un compte. Par exemple, cette autorisation peut permettre de déterminer si l\'application Contacts est synchronisée avec un compte ou non."</string> + <string name="permdesc_readSyncSettings" msgid="1325658466358779298">"Permet à l\'appli d\'accéder aux paramètres de synchronisation d\'un compte. Par exemple, cette autorisation peut permettre de déterminer si l\'appli Contacts est synchronisée avec un compte ou non."</string> <string name="permlab_writeSyncSettings" msgid="6583154300780427399">"activer ou désactiver la synchronisation"</string> - <string name="permdesc_writeSyncSettings" msgid="6029151549667182687">"Permet à une application de modifier les paramètres de synchronisation d\'un compte. Cette autorisation peut, par exemple, être utilisée pour activer la synchronisation de l\'application Contacts avec un compte."</string> + <string name="permdesc_writeSyncSettings" msgid="6029151549667182687">"Permet à une appli de modifier les paramètres de synchronisation d\'un compte. Cette autorisation peut, par exemple, être utilisée pour activer la synchronisation de l\'appli Contacts avec un compte."</string> <string name="permlab_readSyncStats" msgid="3747407238320105332">"lire les statistiques de synchronisation"</string> - <string name="permdesc_readSyncStats" msgid="3867809926567379434">"Permet à une application d\'accéder aux statistiques de synchronisation d\'un compte, y compris l\'historique des événements de synchronisation et le volume de données synchronisées."</string> + <string name="permdesc_readSyncStats" msgid="3867809926567379434">"Permet à une appli d\'accéder aux statistiques de synchronisation d\'un compte, y compris l\'historique des événements de synchronisation et le volume de données synchronisées."</string> <string name="permlab_sdcardRead" msgid="5791467020950064920">"lire le contenu de votre espace de stockage partagé"</string> - <string name="permdesc_sdcardRead" msgid="6872973242228240382">"Permet à l\'application de lire le contenu de votre espace de stockage partagé."</string> + <string name="permdesc_sdcardRead" msgid="6872973242228240382">"Permet à l\'appli de lire le contenu de votre espace de stockage partagé."</string> <string name="permlab_readMediaAudio" msgid="8723513075731763810">"lire des fichiers audio à partir de l\'espace de stockage partagé"</string> - <string name="permdesc_readMediaAudio" msgid="5299772574434619399">"Permet à l\'application de lire les fichiers audio de votre espace de stockage partagé."</string> + <string name="permdesc_readMediaAudio" msgid="5299772574434619399">"Permet à l\'appli de lire les fichiers audio de votre espace de stockage partagé."</string> <string name="permlab_readMediaVideo" msgid="7768003311260655007">"lire des fichiers vidéo à partir de l\'espace de stockage partagé"</string> - <string name="permdesc_readMediaVideo" msgid="3846400073770403528">"Permet à l\'application de lire les fichiers vidéo de votre espace de stockage partagé."</string> + <string name="permdesc_readMediaVideo" msgid="3846400073770403528">"Permet à l\'appli de lire les fichiers vidéo de votre espace de stockage partagé."</string> <string name="permlab_readMediaImages" msgid="4057590631020986789">"lire des fichiers d\'image à partir de l\'espace de stockage partagé"</string> - <string name="permdesc_readMediaImages" msgid="5836219373138469259">"Permet à l\'application de lire les fichiers d\'image de votre espace de stockage partagé."</string> + <string name="permdesc_readMediaImages" msgid="5836219373138469259">"Permet à l\'appli de lire les fichiers d\'image de votre espace de stockage partagé."</string> <string name="permlab_readVisualUserSelect" msgid="5516204215354667586">"lire les fichiers d\'images et de vidéos sélectionnés par l\'utilisateur dans l\'espace de stockage partagé"</string> - <string name="permdesc_readVisualUserSelect" msgid="8027174717714968217">"Permet à l\'application de lire les fichiers d\'images et de vidéos que vous sélectionnez dans votre espace de stockage partagé."</string> + <string name="permdesc_readVisualUserSelect" msgid="8027174717714968217">"Permet à l\'appli de lire les fichiers d\'images et de vidéos que vous sélectionnez dans votre espace de stockage partagé."</string> <string name="permlab_sdcardWrite" msgid="4863021819671416668">"modifier ou supprimer le contenu de votre espace de stockage partagé"</string> - <string name="permdesc_sdcardWrite" msgid="8376047679331387102">"Autorise l\'application à écrire le contenu de votre espace de stockage partagé."</string> + <string name="permdesc_sdcardWrite" msgid="8376047679331387102">"Autorise l\'appli à écrire le contenu de votre espace de stockage partagé."</string> <string name="permlab_use_sip" msgid="8250774565189337477">"faire et recevoir des appels SIP"</string> - <string name="permdesc_use_sip" msgid="3590270893253204451">"Autorise l\'application à effectuer et à recevoir des appels SIP."</string> + <string name="permdesc_use_sip" msgid="3590270893253204451">"Autorise l\'appli à effectuer et à recevoir des appels SIP."</string> <string name="permlab_register_sim_subscription" msgid="1653054249287576161">"enregistrer de nouvelles connexions de télécommunication à l\'aide de la carte SIM"</string> - <string name="permdesc_register_sim_subscription" msgid="4183858662792232464">"Permettre à l\'application d\'enregistrer de nouvelles connexions de télécommunication à l\'aide de la carte SIM"</string> + <string name="permdesc_register_sim_subscription" msgid="4183858662792232464">"Permettre à l\'appli d\'enregistrer de nouvelles connexions de télécommunication à l\'aide de la carte SIM"</string> <string name="permlab_register_call_provider" msgid="6135073566140050702">"enregistrer de nouvelles connexions de télécommunication"</string> - <string name="permdesc_register_call_provider" msgid="4201429251459068613">"Permettre à l\'application d\'enregistrer de nouvelles connexions de télécommunication"</string> + <string name="permdesc_register_call_provider" msgid="4201429251459068613">"Permettre à l\'appli d\'enregistrer de nouvelles connexions de télécommunication"</string> <string name="permlab_connection_manager" msgid="3179365584691166915">"gérer les connexions de télécommunication"</string> - <string name="permdesc_connection_manager" msgid="1426093604238937733">"Permettre à l\'application de gérer les connexions de télécommunication"</string> + <string name="permdesc_connection_manager" msgid="1426093604238937733">"Permettre à l\'appli de gérer les connexions de télécommunication"</string> <string name="permlab_bind_incall_service" msgid="5990625112603493016">"interagir avec l\'écran d\'appel"</string> - <string name="permdesc_bind_incall_service" msgid="4124917526967765162">"Permet à l\'application de contrôler quand et comment l\'écran d\'appel s\'affiche."</string> + <string name="permdesc_bind_incall_service" msgid="4124917526967765162">"Permet à l\'appli de contrôler quand et comment l\'écran d\'appel s\'affiche."</string> <string name="permlab_bind_connection_service" msgid="5409268245525024736">"interagir avec les services de téléphonie"</string> - <string name="permdesc_bind_connection_service" msgid="6261796725253264518">"Permet à l\'application d\'interagir avec les services de téléphonie afin de faire et de recevoir des appels."</string> + <string name="permdesc_bind_connection_service" msgid="6261796725253264518">"Permet à l\'appli d\'interagir avec les services de téléphonie afin de faire et de recevoir des appels."</string> <string name="permlab_control_incall_experience" msgid="6436863486094352987">"fournir une expérience utilisateur pendant l\'appel"</string> - <string name="permdesc_control_incall_experience" msgid="5896723643771737534">"Permet à l\'application de fournir une expérience utilisateur pendant l\'appel."</string> + <string name="permdesc_control_incall_experience" msgid="5896723643771737534">"Permet à l\'appli de fournir une expérience utilisateur pendant l\'appel."</string> <string name="permlab_readNetworkUsageHistory" msgid="8470402862501573795">"lire l\'historique d\'utilisation de réseaux"</string> - <string name="permdesc_readNetworkUsageHistory" msgid="1112962304941637102">"Permet à l\'application de lire l\'historique d\'utilisation de réseaux et d\'applications particuliers."</string> + <string name="permdesc_readNetworkUsageHistory" msgid="1112962304941637102">"Permet à l\'appli de lire l\'historique d\'utilisation de réseaux et d\'applis particuliers."</string> <string name="permlab_manageNetworkPolicy" msgid="6872549423152175378">"gérer les politiques du réseau"</string> - <string name="permdesc_manageNetworkPolicy" msgid="1865663268764673296">"Permet à l\'application de gérer les politiques du réseau et de définir celles propres à l\'application"</string> + <string name="permdesc_manageNetworkPolicy" msgid="1865663268764673296">"Permet à l\'appli de gérer les politiques du réseau et de définir celles propres à l\'appli"</string> <string name="permlab_modifyNetworkAccounting" msgid="7448790834938749041">"modifier le système d\'analyse de l\'utilisation du réseau"</string> - <string name="permdesc_modifyNetworkAccounting" msgid="5076042642247205390">"Permet à l\'application de modifier le système d\'analyse de l\'utilisation du réseau par les autres applications. Les applications standards ne doivent pas utiliser cette fonctionnalité."</string> + <string name="permdesc_modifyNetworkAccounting" msgid="5076042642247205390">"Permet à l\'appli de modifier le système d\'analyse de l\'utilisation du réseau par les autres applis. Les applis standards ne doivent pas utiliser cette fonctionnalité."</string> <string name="permlab_accessNotifications" msgid="7130360248191984741">"accéder aux notifications"</string> - <string name="permdesc_accessNotifications" msgid="761730149268789668">"Permet aux applications de récupérer, d\'examiner et d\'autoriser les notifications, y compris celles envoyées par d\'autres applications."</string> + <string name="permdesc_accessNotifications" msgid="761730149268789668">"Permet aux applis de récupérer, d\'examiner et d\'autoriser les notifications, y compris celles envoyées par d\'autres applis."</string> <string name="permlab_bindNotificationListenerService" msgid="5848096702733262458">"s\'associer à l\'interface de niveau supérieur d\'un service d\'écoute des notifications"</string> - <string name="permdesc_bindNotificationListenerService" msgid="4970553694467137126">"Permet à l\'application de s\'associer à l\'interface de niveau supérieur d\'un service d\'écoute des notifications. Ne devrait jamais être nécessaire pour les applications normales."</string> + <string name="permdesc_bindNotificationListenerService" msgid="4970553694467137126">"Permet à l\'appli de s\'associer à l\'interface de niveau supérieur d\'un service d\'écoute des notifications. Ne devrait jamais être nécessaire pour les applis normales."</string> <string name="permlab_bindConditionProviderService" msgid="5245421224814878483">"s\'associer à un service de fournisseur de conditions"</string> - <string name="permdesc_bindConditionProviderService" msgid="6106018791256120258">"Permet à l\'application de s\'associer à l\'interface de niveau supérieur d\'un service de fournisseur de conditions. Ne devrait pas être nécessaire pour les applications standards."</string> + <string name="permdesc_bindConditionProviderService" msgid="6106018791256120258">"Permet à l\'appli de s\'associer à l\'interface de niveau supérieur d\'un service de fournisseur de conditions. Ne devrait pas être nécessaire pour les applis standards."</string> <string name="permlab_bindDreamService" msgid="4776175992848982706">"associer à un service de rêve"</string> - <string name="permdesc_bindDreamService" msgid="9129615743300572973">"Permet à l\'application autorisée de s\'associer à l\'interface de plus haut niveau d\'un service de rêve. Les applications standard ne devraient pas avoir recours à cette fonctionnalité."</string> - <string name="permlab_invokeCarrierSetup" msgid="5098810760209818140">"faire appel à l\'application de configuration du fournisseur de services"</string> - <string name="permdesc_invokeCarrierSetup" msgid="4790845896063237887">"Permet à l\'application autorisée de faire appel à l\'application de configuration fournie par le fournisseur de services. Cette fonctionnalité ne devrait pas être nécessaire pour les applications standards."</string> + <string name="permdesc_bindDreamService" msgid="9129615743300572973">"Permet à l\'appli autorisée de s\'associer à l\'interface de plus haut niveau d\'un service de rêve. Les applis standard ne devraient pas avoir recours à cette fonctionnalité."</string> + <string name="permlab_invokeCarrierSetup" msgid="5098810760209818140">"faire appel à l\'appli de configuration du fournisseur de services"</string> + <string name="permdesc_invokeCarrierSetup" msgid="4790845896063237887">"Permet à l\'appli autorisée de faire appel à l\'appli de configuration fournie par le fournisseur de services. Cette fonctionnalité ne devrait pas être nécessaire pour les applis standards."</string> <string name="permlab_accessNetworkConditions" msgid="1270732533356286514">"détecter des observations sur les conditions du réseau"</string> - <string name="permdesc_accessNetworkConditions" msgid="2959269186741956109">"Permet à une application de détecter les observations sur les conditions du réseau. Ne devrait jamais être nécessaire pour les applications standards."</string> + <string name="permdesc_accessNetworkConditions" msgid="2959269186741956109">"Permet à une appli de détecter les observations sur les conditions du réseau. Ne devrait jamais être nécessaire pour les applis standards."</string> <string name="permlab_setInputCalibration" msgid="932069700285223434">"modifier le calibrage du périphérique d\'entrée"</string> - <string name="permdesc_setInputCalibration" msgid="2937872391426631726">"Permet à l\'application de modifier les paramètres de calibrage de l\'écran tactile. Ne devrait jamais être nécessaire pour les applications standards."</string> + <string name="permdesc_setInputCalibration" msgid="2937872391426631726">"Permet à l\'appli de modifier les paramètres de calibrage de l\'écran tactile. Ne devrait jamais être nécessaire pour les applis standards."</string> <string name="permlab_accessDrmCertificates" msgid="6473765454472436597">"accéder aux certificats GDN"</string> - <string name="permdesc_accessDrmCertificates" msgid="6983139753493781941">"Permet à une application de fournir et d\'utiliser les certificats de GDN. Cela ne devrait jamais être nécessaire pour les applications normales."</string> + <string name="permdesc_accessDrmCertificates" msgid="6983139753493781941">"Permet à une appli de fournir et d\'utiliser les certificats de GDN. Cela ne devrait jamais être nécessaire pour les applis normales."</string> <string name="permlab_handoverStatus" msgid="7620438488137057281">"recevoir des données sur l\'état du transfert Android Beam"</string> - <string name="permdesc_handoverStatus" msgid="3842269451732571070">"Autoriser cette application à recevoir des données sur les transferts Android Beam en cours"</string> + <string name="permdesc_handoverStatus" msgid="3842269451732571070">"Autoriser cette appli à recevoir des données sur les transferts Android Beam en cours"</string> <string name="permlab_removeDrmCertificates" msgid="710576248717404416">"supprimer des certificats GDN"</string> - <string name="permdesc_removeDrmCertificates" msgid="4068445390318355716">"Permet à une application de supprimer les certificats GDN. Cela ne devrait jamais être nécessaire pour des applications normales."</string> + <string name="permdesc_removeDrmCertificates" msgid="4068445390318355716">"Permet à une appli de supprimer les certificats GDN. Cela ne devrait jamais être nécessaire pour des applis normales."</string> <string name="permlab_bindCarrierMessagingService" msgid="3363450860593096967">"s\'associer à un service de messagerie d\'un fournisseur"</string> - <string name="permdesc_bindCarrierMessagingService" msgid="6316457028173478345">"Permet à l\'application autorisée de s\'associer à l\'interface de plus haut niveau d\'un service de messagerie d\'un fournisseur. Les applications standards ne devraient jamais avoir recours à cette fonctionnalité."</string> + <string name="permdesc_bindCarrierMessagingService" msgid="6316457028173478345">"Permet à l\'appli autorisée de s\'associer à l\'interface de plus haut niveau d\'un service de messagerie d\'un fournisseur. Les applis standards ne devraient jamais avoir recours à cette fonctionnalité."</string> <string name="permlab_bindCarrierServices" msgid="2395596978626237474">"s\'associer aux services d\'un fournisseur"</string> - <string name="permdesc_bindCarrierServices" msgid="9185614481967262900">"Permet à l\'application autorisée de s\'associer aux services d\'un fournisseur. Ne devrait pas être nécessaire pour les applications standards."</string> + <string name="permdesc_bindCarrierServices" msgid="9185614481967262900">"Permet à l\'appli autorisée de s\'associer aux services d\'un fournisseur. Ne devrait pas être nécessaire pour les applis standards."</string> <string name="permlab_access_notification_policy" msgid="5524112842876975537">"accéder au mode Ne pas déranger"</string> - <string name="permdesc_access_notification_policy" msgid="8538374112403845013">"Permet à l\'application de consulter et de modifier la configuration du mode Ne pas déranger."</string> + <string name="permdesc_access_notification_policy" msgid="8538374112403845013">"Permet à l\'appli de consulter et de modifier la configuration du mode Ne pas déranger."</string> <string name="permlab_startViewPermissionUsage" msgid="1504564328641112341">"démarrer l\'affichage de l\'usage des autorisations"</string> - <string name="permdesc_startViewPermissionUsage" msgid="2820325605959586538">"Permet au détenteur de démarrer l\'usage des autorisations pour une application. Cette fonctionnalité ne devrait pas être nécessaire pour les applications standards."</string> + <string name="permdesc_startViewPermissionUsage" msgid="2820325605959586538">"Permet au détenteur de démarrer l\'usage des autorisations pour une appli. Cette fonctionnalité ne devrait pas être nécessaire pour les applis standards."</string> <string name="permlab_startReviewPermissionDecisions" msgid="8690578688476599284">"démarrer les décisions d\'autorisation de lecture"</string> - <string name="permdesc_startReviewPermissionDecisions" msgid="2775556853503004236">"Permet au détenteur de démarrer l\'écran pour revoir les décisions d\'autorisation. Ne devrait pas être requis pour les applications standards."</string> - <string name="permlab_startViewAppFeatures" msgid="7955084203185903001">"démarrer l\'affichage des fonctionnalités de l\'application"</string> - <string name="permdesc_startViewAppFeatures" msgid="7207240860165206107">"Permet au détenteur de commencer à afficher les renseignements sur les fonctionnalités d\'une application."</string> + <string name="permdesc_startReviewPermissionDecisions" msgid="2775556853503004236">"Permet au détenteur de démarrer l\'écran pour revoir les décisions d\'autorisation. Ne devrait pas être requis pour les applis standards."</string> + <string name="permlab_startViewAppFeatures" msgid="7955084203185903001">"démarrer l\'affichage des fonctionnalités de l\'appli"</string> + <string name="permdesc_startViewAppFeatures" msgid="7207240860165206107">"Permet au détenteur de commencer à afficher les renseignements sur les fonctionnalités d\'une appli."</string> <string name="permlab_highSamplingRateSensors" msgid="3941068435726317070">"accéder aux données des capteurs à un taux d’échantillonnage élevé"</string> - <string name="permdesc_highSamplingRateSensors" msgid="8430061978931155995">"Permet à l’application d’échantillonner les données des capteurs à une fréquence supérieure à 200 Hz"</string> - <string name="permlab_updatePackagesWithoutUserAction" msgid="3363272609642618551">"Mettre à jour l\'application sans intervention de l\'utilisateur"</string> - <string name="permdesc_updatePackagesWithoutUserAction" msgid="4567739631260526366">"Permet à une application précédemment installée de se mettre à jour sans intervention de l\'utilisateur"</string> - <string name="permlab_writeVerificationStateE2eeContactKeys" msgid="3990742344778360457">"mettre à jour les états des vérifications des clés de contact chiffrées de bout en bout qui appartiennent à d\'autres applications"</string> - <string name="permdesc_writeVerificationStateE2eeContactKeys" msgid="8453156829747427041">"Autorise l\'application à mettre à jour les états des vérifications des clés de contact chiffrées de bout en bout qui appartiennent à d\'autres applications"</string> + <string name="permdesc_highSamplingRateSensors" msgid="8430061978931155995">"Permet à l’appli d’échantillonner les données des capteurs à une fréquence supérieure à 200 Hz"</string> + <string name="permlab_updatePackagesWithoutUserAction" msgid="3363272609642618551">"mettre à jour l\'appli sans intervention de l\'utilisateur"</string> + <string name="permdesc_updatePackagesWithoutUserAction" msgid="4567739631260526366">"Permet à une appli précédemment installée de se mettre à jour sans intervention de l\'utilisateur"</string> + <string name="permlab_writeVerificationStateE2eeContactKeys" msgid="3990742344778360457">"mettre à jour les états des vérifications des clés de contact chiffrées de bout en bout qui appartiennent à d\'autres applis"</string> + <string name="permdesc_writeVerificationStateE2eeContactKeys" msgid="8453156829747427041">"Autorise l\'appli à mettre à jour les états des vérifications des clés de contact chiffrées de bout en bout qui appartiennent à d\'autres applis"</string> <string name="policylab_limitPassword" msgid="4851829918814422199">"Définir les règles du mot de passe"</string> <string name="policydesc_limitPassword" msgid="4105491021115793793">"Gérer le nombre et le type de caractères autorisés dans les mots de passe et les NIP de verrouillage de l\'écran."</string> <string name="policylab_watchLogin" msgid="7599669460083719504">"Gérer les tentatives de déverrouillage de l\'écran"</string> @@ -864,7 +864,7 @@ <string name="policylab_expirePassword" msgid="6015404400532459169">"Déf. expir. m. passe verr. écr."</string> <string name="policydesc_expirePassword" msgid="9136524319325960675">"Modifier la fréquence de modification du mot de passe, du NIP ou du schéma de verrouillage de l\'écran."</string> <string name="policylab_encryptedStorage" msgid="9012936958126670110">"Définir cryptage du stockage"</string> - <string name="policydesc_encryptedStorage" msgid="1102516950740375617">"Exiger le chiffrement des données d\'application stockées"</string> + <string name="policydesc_encryptedStorage" msgid="1102516950740375617">"Exiger le chiffrement des données d\'appli stockées"</string> <string name="policylab_disableCamera" msgid="5749486347810162018">"Désactiver les appareils photo"</string> <string name="policydesc_disableCamera" msgid="3204405908799676104">"Empêcher l\'utilisation de tous les appareils photos"</string> <string name="policylab_disableKeyguardFeatures" msgid="5071855750149949741">"Désact. fonctions verr. écran"</string> @@ -977,17 +977,17 @@ <string name="relationTypeReferredBy" msgid="5285082289602849400">"Recommandé par"</string> <string name="relationTypeRelative" msgid="3396498519818009134">"Proche"</string> <string name="relationTypeSister" msgid="3721676005094140671">"Sœur"</string> - <string name="relationTypeSpouse" msgid="6916682664436031703">"Conjoint(e)"</string> + <string name="relationTypeSpouse" msgid="6916682664436031703">"Conjoint/Conjointe"</string> <string name="sipAddressTypeCustom" msgid="6283889809842649336">"Personnaliser"</string> <string name="sipAddressTypeHome" msgid="5918441930656878367">"Domicile"</string> <string name="sipAddressTypeWork" msgid="7873967986701216770">"Travail"</string> <string name="sipAddressTypeOther" msgid="6317012577345187275">"Autre"</string> - <string name="quick_contacts_not_available" msgid="1262709196045052223">"Aucune application permettant d\'afficher ce contact n\'a été trouvée."</string> + <string name="quick_contacts_not_available" msgid="1262709196045052223">"Aucune appli permettant d\'afficher ce contact n\'a été trouvée."</string> <string name="keyguard_password_enter_pin_code" msgid="6401406801060956153">"Saisissez le NIP."</string> <string name="keyguard_password_enter_puk_code" msgid="3112256684547584093">"Saisissez la clé PUK et le nouveau NIP."</string> <string name="keyguard_password_enter_puk_prompt" msgid="2825313071899938305">"Clé PUK"</string> <string name="keyguard_password_enter_pin_prompt" msgid="5505434724229581207">"Nouveau NIP"</string> - <string name="keyguard_password_entry_touch_hint" msgid="4032288032993261520"><font size="17">"Touchez pour entrer le m. de p."</font></string> + <string name="keyguard_password_entry_touch_hint" msgid="4032288032993261520"><font size="17">"Touch. pour taper mot de passe"</font></string> <string name="keyguard_password_enter_password_code" msgid="2751130557661643482">"Saisissez le mot de passe pour déverrouiller le clavier."</string> <string name="keyguard_password_enter_pin_password_code" msgid="7792964196473964340">"Saisissez le NIP pour déverrouiller le clavier."</string> <string name="keyguard_password_wrong_pin_code" msgid="8583732939138432793">"NIP erroné."</string> @@ -1023,7 +1023,7 @@ <string name="emergency_calls_only" msgid="3057351206678279851">"Appels d\'urgence uniquement"</string> <string name="lockscreen_network_locked_message" msgid="2814046965899249635">"Réseau verrouillé"</string> <string name="lockscreen_sim_puk_locked_message" msgid="2867953953604224166">"La carte SIM est verrouillée par clé PUK."</string> - <string name="lockscreen_sim_puk_locked_instructions" msgid="5307979043730860995">"Veuillez consulter le guide d\'utilisation ou contacter le service à la clientèle."</string> + <string name="lockscreen_sim_puk_locked_instructions" msgid="5307979043730860995">"Veuillez consulter le guide d\'utilisation ou contacter l\'assistance à la clientèle."</string> <string name="lockscreen_sim_locked_message" msgid="5911944931911850164">"La carte SIM est verrouillée."</string> <string name="lockscreen_sim_unlock_progress_dialog_message" msgid="8381565919325410939">"Déverrouillage de la carte SIM en cours…"</string> <string name="lockscreen_too_many_failed_attempts_dialog_message" msgid="6458790975898594240">"Vous avez dessiné un schéma de déverrouillage incorrect à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises.\n\nVeuillez réessayer dans <xliff:g id="NUMBER_1">%2$d</xliff:g> secondes."</string> @@ -1100,9 +1100,9 @@ <string name="js_dialog_before_unload" msgid="7213364985774778744">"<xliff:g id="MESSAGE">%s</xliff:g>\n\nVoulez-vous vraiment quitter cette page?"</string> <string name="autofill_window_title" msgid="4379134104008111961">"Remplissage automatique avec <xliff:g id="SERVICENAME">%1$s</xliff:g>"</string> <string name="permlab_setAlarm" msgid="1158001610254173567">"définir une alarme"</string> - <string name="permdesc_setAlarm" msgid="2185033720060109640">"Permet à l\'application de régler la sonnerie d\'une fonction de réveil installée sur votre appareil. Cette fonctionnalité n\'est pas compatible avec toutes les applications de réveils."</string> + <string name="permdesc_setAlarm" msgid="2185033720060109640">"Permet à l\'appli de régler la sonnerie d\'une fonction de réveil installée sur votre appareil. Cette fonctionnalité n\'est pas compatible avec toutes les applis de réveils."</string> <string name="permlab_addVoicemail" msgid="4770245808840814471">"ajouter des messages vocaux"</string> - <string name="permdesc_addVoicemail" msgid="5470312139820074324">"Permet à l\'application d\'ajouter des messages à votre messagerie vocale."</string> + <string name="permdesc_addVoicemail" msgid="5470312139820074324">"Permet à l\'appli d\'ajouter des messages à votre messagerie vocale."</string> <string name="pasted_from_clipboard" msgid="7355790625710831847">"<xliff:g id="PASTING_APP_NAME">%1$s</xliff:g> a collé du contenu de votre presse-papiers"</string> <string name="more_item_label" msgid="7419249600215749115">"Plus"</string> <string name="prepend_shortcut_label" msgid="1743716737502867951">"Menu+"</string> @@ -1160,7 +1160,7 @@ <string name="duration_years_relative" msgid="8731202348869424370">"{count,plural, =1{Il y a # an}one{Il y a # an}many{Il y a # ans}other{Il y a # ans}}"</string> <string name="duration_minutes_relative_future" msgid="5259574171747708115">"{count,plural, =1{# minute}one{# minute}many{# minutes}other{# minutes}}"</string> <string name="duration_hours_relative_future" msgid="6670440478481140565">"{count,plural, =1{# heure}one{# heure}many{# heures}other{# heures}}"</string> - <string name="duration_days_relative_future" msgid="8870658635774250746">"{count,plural, =1{# jour}one{# jour}many{# jours}other{# jours}}"</string> + <string name="duration_days_relative_future" msgid="8870658635774250746">"{count,plural, =1{# jour}one{# jour}many{# de jours}other{# jours}}"</string> <string name="duration_years_relative_future" msgid="8855853883925918380">"{count,plural, =1{# an}one{# an}many{# ans}other{# ans}}"</string> <string name="VideoView_error_title" msgid="5750686717225068016">"Problème vidéo"</string> <string name="VideoView_error_text_invalid_progressive_playback" msgid="3782449246085134720">"Impossible de lire cette vidéo en continu sur cet appareil."</string> @@ -1199,7 +1199,7 @@ <string name="low_internal_storage_view_text" msgid="8172166728369697835">"Il est possible que certaines fonctionnalités du système ne soient pas opérationnelles."</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"Espace de stockage insuffisant pour le système. Assurez-vous de disposer de 250 Mo d\'espace libre, puis redémarrez."</string> <string name="app_running_notification_title" msgid="8985999749231486569">"<xliff:g id="APP_NAME">%1$s</xliff:g> en cours d\'exécution"</string> - <string name="app_running_notification_text" msgid="5120815883400228566">"Touchez pour en savoir plus ou pour arrêter l\'application."</string> + <string name="app_running_notification_text" msgid="5120815883400228566">"Touchez pour en savoir plus ou pour arrêter l\'appli."</string> <string name="ok" msgid="2646370155170753815">"OK"</string> <string name="cancel" msgid="6908697720451760115">"Annuler"</string> <string name="yes" msgid="9069828999585032361">"OK"</string> @@ -1208,8 +1208,8 @@ <string name="loading" msgid="3138021523725055037">"Chargement en cours..."</string> <string name="capital_on" msgid="2770685323900821829">"ACTIVÉ"</string> <string name="capital_off" msgid="7443704171014626777">"DÉSACTIVÉ"</string> - <string name="checked" msgid="9179896827054513119">"coché"</string> - <string name="not_checked" msgid="7972320087569023342">"non coché"</string> + <string name="checked" msgid="9179896827054513119">"Coché"</string> + <string name="not_checked" msgid="7972320087569023342">"Non coché"</string> <string name="selected" msgid="6614607926197755875">"sélectionné"</string> <string name="not_selected" msgid="410652016565864475">"non sélectionné"</string> <string name="rating_label" msgid="1837085249662154601">"{rating,plural, =1{Une étoile sur {max}}one{# étoile sur {max}}many{# d\'étoiles sur {max}}other{# étoiles sur {max}}}"</string> @@ -1234,28 +1234,28 @@ <string name="whichSendToApplication" msgid="77101541959464018">"Envoyer avec"</string> <string name="whichSendToApplicationNamed" msgid="3385686512014670003">"Envoyer avec %1$s"</string> <string name="whichSendToApplicationLabel" msgid="3543240188816513303">"Envoyer"</string> - <string name="whichHomeApplication" msgid="8276350727038396616">"Sélectionner une application pour l\'écran d\'accueil"</string> + <string name="whichHomeApplication" msgid="8276350727038396616">"Sélectionner une appli pour l\'écran d\'accueil"</string> <string name="whichHomeApplicationNamed" msgid="5855990024847433794">"Utiliser %1$s comme écran d\'accueil"</string> <string name="whichHomeApplicationLabel" msgid="8907334282202933959">"Enregistrer l\'image"</string> <string name="whichImageCaptureApplication" msgid="2737413019463215284">"Enregistrer l\'image avec"</string> <string name="whichImageCaptureApplicationNamed" msgid="8820702441847612202">"Enregistrer l\'image avec %1$s"</string> <string name="whichImageCaptureApplicationLabel" msgid="6505433734824988277">"Enregistrer l\'image"</string> - <string name="alwaysUse" msgid="3153558199076112903">"Utiliser cette application par défaut pour cette action"</string> + <string name="alwaysUse" msgid="3153558199076112903">"Utiliser cette appli par défaut pour cette action"</string> <string name="use_a_different_app" msgid="4987790276170972776">"Utiliser une appli différente"</string> - <string name="clearDefaultHintMsg" msgid="1325866337702524936">"Pour supprimer les valeurs par défaut, accédez à Paramètres système > Applications > Téléchargements."</string> + <string name="clearDefaultHintMsg" msgid="1325866337702524936">"Pour supprimer les valeurs par défaut, accédez à Paramètres système > Applis > Téléchargements."</string> <string name="chooseActivity" msgid="8563390197659779956">"Sélectionnez une action"</string> - <string name="chooseUsbActivity" msgid="2096269989990986612">"Sélectionnez une application pour le périphérique de stockage USB"</string> - <string name="noApplications" msgid="1186909265235544019">"Aucune application ne peut effectuer cette action."</string> + <string name="chooseUsbActivity" msgid="2096269989990986612">"Sélectionnez une appli pour le périphérique de stockage USB"</string> + <string name="noApplications" msgid="1186909265235544019">"Aucune appli ne peut effectuer cette action."</string> <string name="aerr_application" msgid="4090916809370389109">"<xliff:g id="APPLICATION">%1$s</xliff:g> a cessé de fonctionner"</string> <string name="aerr_process" msgid="4268018696970966407">"<xliff:g id="PROCESS">%1$s</xliff:g> a cessé de fonctionner"</string> <string name="aerr_application_repeated" msgid="7804378743218496566">"<xliff:g id="APPLICATION">%1$s</xliff:g> plante continuellement"</string> <string name="aerr_process_repeated" msgid="1153152413537954974">"<xliff:g id="PROCESS">%1$s</xliff:g> plante continuellement"</string> - <string name="aerr_restart" msgid="2789618625210505419">"Rouvrir l\'application"</string> + <string name="aerr_restart" msgid="2789618625210505419">"Rouvrir l\'appli"</string> <string name="aerr_report" msgid="3095644466849299308">"Envoyer des commentaires"</string> <string name="aerr_close" msgid="3398336821267021852">"Fermer"</string> <string name="aerr_mute" msgid="2304972923480211376">"Désactiver jusqu\'au redémarrage de l\'appareil"</string> <string name="aerr_wait" msgid="3198677780474548217">"Attendre"</string> - <string name="aerr_close_app" msgid="8318883106083050970">"Fermer l\'application"</string> + <string name="aerr_close_app" msgid="8318883106083050970">"Fermer l\'appli"</string> <string name="anr_title" msgid="7290329487067300120"></string> <string name="anr_activity_application" msgid="8121716632960340680">"<xliff:g id="APPLICATION">%2$s</xliff:g> ne répond pas"</string> <string name="anr_activity_process" msgid="3477362583767128667">"<xliff:g id="ACTIVITY">%1$s</xliff:g> ne répond pas"</string> @@ -1265,18 +1265,18 @@ <string name="report" msgid="2149194372340349521">"Signaler"</string> <string name="wait" msgid="7765985809494033348">"Attendre"</string> <string name="webpage_unresponsive" msgid="7850879412195273433">"La page ne répond pas.\n \nVoulez-vous la fermer?"</string> - <string name="launch_warning_title" msgid="6725456009564953595">"Application redirigée"</string> + <string name="launch_warning_title" msgid="6725456009564953595">"Appli redirigée"</string> <string name="launch_warning_replace" msgid="3073392976283203402">"<xliff:g id="APP_NAME">%1$s</xliff:g> est maintenant lancée."</string> - <string name="launch_warning_original" msgid="3332206576800169626">"L\'application <xliff:g id="APP_NAME">%1$s</xliff:g> a été lancée initialement."</string> + <string name="launch_warning_original" msgid="3332206576800169626">"L\'appli <xliff:g id="APP_NAME">%1$s</xliff:g> a été lancée initialement."</string> <string name="screen_compat_mode_scale" msgid="8627359598437527726">"Redimensionner"</string> <string name="screen_compat_mode_show" msgid="5080361367584709857">"Toujours afficher"</string> - <string name="screen_compat_mode_hint" msgid="4032272159093750908">"Réactivez ce mode en accédant à Paramètres système > Applications > Téléchargements"</string> + <string name="screen_compat_mode_hint" msgid="4032272159093750908">"Réactivez ce mode en accédant à Paramètres système > Applis > Téléchargements"</string> <string name="unsupported_display_size_message" msgid="7265211375269394699">"<xliff:g id="APP_NAME">%1$s</xliff:g> n\'est pas compatible avec le paramètre de taille d\'affichage actuel et peut se comporter de manière inattendue."</string> <string name="unsupported_display_size_show" msgid="980129850974919375">"Toujours afficher"</string> - <string name="unsupported_compile_sdk_message" msgid="7326293500707890537">"<xliff:g id="APP_NAME">%1$s</xliff:g> a été conçue pour une version incompatible du système d\'exploitation Android et peut se comporter de manière inattendue. Il se peut qu\'une version mise à jour de l\'application soit proposée."</string> + <string name="unsupported_compile_sdk_message" msgid="7326293500707890537">"<xliff:g id="APP_NAME">%1$s</xliff:g> a été conçue pour une version incompatible du système d\'exploitation Android et peut se comporter de manière inattendue. Il se peut qu\'une version mise à jour de l\'appli soit proposée."</string> <string name="unsupported_compile_sdk_show" msgid="1601210057960312248">"Toujours afficher"</string> <string name="unsupported_compile_sdk_check_update" msgid="1103639989147664456">"Vérifier la présence de mises à jour"</string> - <string name="smv_application" msgid="3775183542777792638">"L\'application <xliff:g id="APPLICATION">%1$s</xliff:g> (du processus <xliff:g id="PROCESS">%2$s</xliff:g>) a enfreint ses propres règles du mode strict."</string> + <string name="smv_application" msgid="3775183542777792638">"L\'appli <xliff:g id="APPLICATION">%1$s</xliff:g> (du processus <xliff:g id="PROCESS">%2$s</xliff:g>) a enfreint ses propres règles du mode strict."</string> <string name="smv_process" msgid="1398801497130695446">"Le processus <xliff:g id="PROCESS">%1$s</xliff:g> a enfreint ses propres règles du mode strict."</string> <string name="android_upgrading_title" product="default" msgid="7279077384220829683">"Mise à jour du téléphone en cours…"</string> <string name="android_upgrading_title" product="tablet" msgid="4268417249079938805">"Mise à jour de la tablette en cours…"</string> @@ -1288,7 +1288,7 @@ <string name="android_upgrading_notification_title" product="default" msgid="3509927005342279257">"Finalisation de la m. à j. syst. en cours…"</string> <string name="app_upgrading_toast" msgid="1016267296049455585">"Mise à niveau de <xliff:g id="APPLICATION">%1$s</xliff:g> en cours…"</string> <string name="android_preparing_apk" msgid="589736917792300956">"Préparation de <xliff:g id="APPNAME">%1$s</xliff:g> en cours…"</string> - <string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Lancement des applications…"</string> + <string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Lancement des applis…"</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 l\'interrupteur – cette action éteint habituellement l\'écran.\n\nEssayez de toucher légèrement pendant la configuration de votre empreinte digitale."</string> <string name="fp_power_button_enrollment_title" msgid="6976841690455338563">"Pour terminer, éteignez l\'écran"</string> @@ -1308,9 +1308,9 @@ <string name="dump_heap_ready_notification" msgid="2302452262927390268">"L\'empreinte de mémoire <xliff:g id="PROC">%1$s</xliff:g> est prête"</string> <string name="dump_heap_notification_detail" msgid="8431586843001054050">"L\'empreinte de mémoire a été recueillie. Touchez ici pour la partager."</string> <string name="dump_heap_title" msgid="4367128917229233901">"Partager l\'empreinte de mémoire?"</string> - <string name="dump_heap_text" msgid="1692649033835719336">"Le processus <xliff:g id="PROC">%1$s</xliff:g> a dépassé sa limite de mémoire de <xliff:g id="SIZE">%2$s</xliff:g>. Vous pouvez partager son empreinte de mémoire avec son développeur. Attention : Cette empreinte peut contenir certains de vos renseignements personnels auxquels l\'application a accès."</string> + <string name="dump_heap_text" msgid="1692649033835719336">"Le processus <xliff:g id="PROC">%1$s</xliff:g> a dépassé sa limite de mémoire de <xliff:g id="SIZE">%2$s</xliff:g>. Vous pouvez partager son empreinte de mémoire avec son développeur. Attention : Cette empreinte peut contenir certains de vos renseignements personnels auxquels l\'appli a accès."</string> <string name="dump_heap_system_text" msgid="6805155514925350849">"Le processus <xliff:g id="PROC">%1$s</xliff:g> a dépassé sa limite de mémoire de <xliff:g id="SIZE">%2$s</xliff:g>. Vous pouvez partager son empreinte de mémoire. Attention : Cette empreinte peut contenir des renseignements personnels auxquels le processus a accès, y compris du texte que vous avez entré."</string> - <string name="dump_heap_ready_text" msgid="5849618132123045516">"Une empreinte de mémoire du processus lié à l\'application <xliff:g id="PROC">%1$s</xliff:g> peut être partagée. Attention : Cette empreinte peut contenir des renseignements personnels auxquels le processus a accès, y compris du texte que vous avez entré."</string> + <string name="dump_heap_ready_text" msgid="5849618132123045516">"Une empreinte de mémoire du processus lié à l\'appli <xliff:g id="PROC">%1$s</xliff:g> peut être partagée. Attention : Cette empreinte peut contenir des renseignements personnels auxquels le processus a accès, y compris du texte que vous avez entré."</string> <string name="sendText" msgid="493003724401350724">"Sélectionner une action pour le texte"</string> <string name="volume_ringtone" msgid="134784084629229029">"Volume de la sonnerie"</string> <string name="volume_music" msgid="7727274216734955095">"Volume du contenu multimédia"</string> @@ -1328,7 +1328,7 @@ <string name="volume_icon_description_notification" msgid="579091344110747279">"Volume des notifications"</string> <string name="ringtone_default" msgid="9118299121288174597">"Sonnerie par défaut"</string> <string name="ringtone_default_with_actual" msgid="2709686194556159773">"Défaut (<xliff:g id="ACTUAL_RINGTONE">%1$s</xliff:g>)"</string> - <string name="ringtone_silent" msgid="397111123930141876">"Aucun(e)"</string> + <string name="ringtone_silent" msgid="397111123930141876">"Aucune"</string> <string name="ringtone_picker_title" msgid="667342618626068253">"Sonneries"</string> <string name="ringtone_picker_title_alarm" msgid="7438934548339024767">"Sons d\'alarme"</string> <string name="ringtone_picker_title_notification" msgid="6387191794719608122">"Sons de notification"</string> @@ -1359,7 +1359,7 @@ <string name="decline" msgid="6490507610282145874">"Refuser"</string> <string name="select_character" msgid="3352797107930786979">"Insérer un caractère"</string> <string name="sms_control_title" msgid="4748684259903148341">"Envoi de messages SMS"</string> - <string name="sms_control_message" msgid="6574313876316388239">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> envoie un grand nombre de SMS. Autorisez-vous cette application à poursuivre l\'envoi des messages?"</string> + <string name="sms_control_message" msgid="6574313876316388239">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> envoie un grand nombre de SMS. Autorisez-vous cette appli à poursuivre l\'envoi des messages?"</string> <string name="sms_control_yes" msgid="4858845109269524622">"Autoriser"</string> <string name="sms_control_no" msgid="4845717880040355570">"Refuser"</string> <string name="sms_short_code_confirm_message" msgid="1385416688897538724">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> souhaite envoyer un message à <b><xliff:g id="DEST_ADDRESS">%2$s</xliff:g></b>."</string> @@ -1368,7 +1368,7 @@ <string name="sms_short_code_confirm_allow" msgid="920477594325526691">"Envoyer"</string> <string name="sms_short_code_confirm_deny" msgid="1356917469323768230">"Annuler"</string> <string name="sms_short_code_remember_choice" msgid="1374526438647744862">"Mémoriser mon choix"</string> - <string name="sms_short_code_remember_undo_instruction" msgid="2620984439143080410">"Pour modifier : Paramètres > Applications"</string> + <string name="sms_short_code_remember_undo_instruction" msgid="2620984439143080410">"Pour modifier : Paramètres > Applis"</string> <string name="sms_short_code_confirm_always_allow" msgid="2223014893129755950">"Toujours autoriser"</string> <string name="sms_short_code_confirm_never_allow" msgid="2688828813521652079">"Ne jamais autoriser"</string> <string name="sim_removed_title" msgid="1349026474932481037">"Carte SIM retirée"</string> @@ -1378,9 +1378,9 @@ <string name="sim_added_message" msgid="6602906609509958680">"Redémarrez votre appareil pour accéder au réseau mobile."</string> <string name="sim_restart_button" msgid="8481803851341190038">"Redémarrer"</string> <string name="install_carrier_app_notification_title" msgid="5712723402213090102">"Activer le service cellulaire"</string> - <string name="install_carrier_app_notification_text" msgid="2781317581274192728">"Téléchargez l\'application du fournisseur de services pour activer votre nouvelle carte SIM"</string> - <string name="install_carrier_app_notification_text_app_name" msgid="4086877327264106484">"Téléchargez l\'application de <xliff:g id="APP_NAME">%1$s</xliff:g> pour activer votre nouvelle carte SIM"</string> - <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Télécharger l\'application"</string> + <string name="install_carrier_app_notification_text" msgid="2781317581274192728">"Téléchargez l\'appli du fournisseur de services pour activer votre nouvelle carte SIM"</string> + <string name="install_carrier_app_notification_text_app_name" msgid="4086877327264106484">"Téléchargez l\'appli de <xliff:g id="APP_NAME">%1$s</xliff:g> pour activer votre nouvelle carte SIM"</string> + <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Télécharger l\'appli"</string> <string name="carrier_app_notification_title" msgid="5815477368072060250">"Nouvelle carte SIM insérée"</string> <string name="carrier_app_notification_text" msgid="6567057546341958637">"Touchez ici pour effectuer la configuration"</string> <string name="time_picker_dialog_title" msgid="9053376764985220821">"Définir l\'heure"</string> @@ -1415,7 +1415,7 @@ <string name="console_running_notification_title" msgid="6087888939261635904">"La console série est activée"</string> <string name="console_running_notification_message" msgid="7892751888125174039">"La performance est réduite. Pour désactiver cette fonction, vérifier le programme d\'amorçage."</string> <string name="mte_override_notification_title" msgid="4731115381962792944">"Extension MTE expérimentale activée"</string> - <string name="mte_override_notification_message" msgid="2441170442725738942">"La performance et la stabilité pourraient être affectées. Redémarrez l\'appareil pour la désactiver. Si vous l\'activez au moyen de la propriété arm64.memtag.bootctl, définissez d\'abord celle-ci à « none »."</string> + <string name="mte_override_notification_message" msgid="2441170442725738942">"La performance et la stabilité pourraient être affectées. Redémarrez pour désactiver. Si vous l\'activez au moyen de la propriété arm64.memtag.bootctl, définissez d\'abord celle-ci à « none »."</string> <string name="usb_contaminant_detected_title" msgid="4359048603069159678">"Liquide ou débris dans le port USB"</string> <string name="usb_contaminant_detected_message" msgid="7346100585390795743">"Le port USB est désactivé automatiquement. Touchez ici pour en savoir plus."</string> <string name="usb_contaminant_not_detected_title" msgid="2651167729563264053">"Autorisation d\'utiliser le port USB"</string> @@ -1423,7 +1423,7 @@ <string name="taking_remote_bugreport_notification_title" msgid="1582531382166919850">"Création d\'un rapport de bogue en cours..."</string> <string name="share_remote_bugreport_notification_title" msgid="6708897723753334999">"Partager le rapport de bogue?"</string> <string name="sharing_remote_bugreport_notification_title" msgid="3077385149217638550">"Partage du rapport de bogue en cours..."</string> - <string name="share_remote_bugreport_notification_message_finished" msgid="7325635795739260135">"Votre administrateur a demandé un rapport de bogue pour l\'aider à dépanner cet appareil. Les applications et les données peuvent être partagées."</string> + <string name="share_remote_bugreport_notification_message_finished" msgid="7325635795739260135">"Votre administrateur a demandé un rapport de bogue pour l\'aider à dépanner cet appareil. Les applis et les données peuvent être partagées."</string> <string name="share_remote_bugreport_action" msgid="7630880678785123682">"PARTAGER"</string> <string name="decline_remote_bugreport_action" msgid="4040894777519784346">"REFUSER"</string> <string name="select_input_method" msgid="3971267998568587025">"Sélectionnez le mode de saisie"</string> @@ -1435,7 +1435,7 @@ <string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Afficher par-dessus les autres applis"</string> - <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> affiche du contenu par-dessus d\'autres applications"</string> + <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> affiche du contenu par-dessus d\'autres applis"</string> <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> aff. contenu par-dessus applis"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Si vous ne voulez pas que <xliff:g id="NAME">%s</xliff:g> utilise cette fonctionnalités, touchez l\'écran pour ouvrir les paramètres, puis désactivez-la."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Désactiver"</string> @@ -1471,48 +1471,48 @@ <string name="ext_media_seamless_action" msgid="8837030226009268080">"Changer de sortie"</string> <string name="ext_media_missing_title" msgid="3209472091220515046">"Mémoire de stockage <xliff:g id="NAME">%s</xliff:g> manquante"</string> <string name="ext_media_missing_message" msgid="4408988706227922909">"Insérez l\'appareil de nouveau"</string> - <string name="ext_media_move_specific_title" msgid="8492118544775964250">"Déplacement de <xliff:g id="NAME">%s</xliff:g> en cours..."</string> + <string name="ext_media_move_specific_title" msgid="8492118544775964250">"Déplacement de <xliff:g id="NAME">%s</xliff:g> en cours…"</string> <string name="ext_media_move_title" msgid="2682741525619033637">"Déplacement des données..."</string> <string name="ext_media_move_success_title" msgid="4901763082647316767">"Transfert de contenu terminé"</string> <string name="ext_media_move_success_message" msgid="9159542002276982979">"Contenu déplacé vers <xliff:g id="NAME">%s</xliff:g>"</string> <string name="ext_media_move_failure_title" msgid="3184577479181333665">"Impossible de déplacer le contenu"</string> <string name="ext_media_move_failure_message" msgid="4197306718121869335">"Essayez de déplacer le contenu de nouveau"</string> - <string name="ext_media_status_removed" msgid="241223931135751691">"Supprimée"</string> + <string name="ext_media_status_removed" msgid="241223931135751691">"Supprimé"</string> <string name="ext_media_status_unmounted" msgid="8145812017295835941">"Éjectée"</string> <string name="ext_media_status_checking" msgid="159013362442090347">"Vérification en cours…"</string> - <string name="ext_media_status_mounted" msgid="3459448555811203459">"Prête"</string> + <string name="ext_media_status_mounted" msgid="3459448555811203459">"Prêt"</string> <string name="ext_media_status_mounted_ro" msgid="1974809199760086956">"En lecture seule"</string> <string name="ext_media_status_bad_removal" msgid="508448566481406245">"Retrait risqué"</string> <string name="ext_media_status_unmountable" msgid="7043574843541087748">"Corrompue"</string> <string name="ext_media_status_unsupported" msgid="5460509911660539317">"Non compatible"</string> <string name="ext_media_status_ejecting" msgid="7532403368044013797">"Éjection en cours..."</string> <string name="ext_media_status_formatting" msgid="774148701503179906">"Formatage en cours..."</string> - <string name="ext_media_status_missing" msgid="6520746443048867314">"Non insérée"</string> + <string name="ext_media_status_missing" msgid="6520746443048867314">"Non inséré"</string> <string name="activity_list_empty" msgid="4219430010716034252">"Aucune activité correspondante trouvée."</string> <string name="permlab_route_media_output" msgid="8048124531439513118">"diriger la sortie multimédia"</string> - <string name="permdesc_route_media_output" msgid="1759683269387729675">"Permet à une application de diriger la sortie multimédia vers d\'autres appareils externes."</string> + <string name="permdesc_route_media_output" msgid="1759683269387729675">"Permet à une appli de diriger la sortie multimédia vers d\'autres appareils externes."</string> <string name="permlab_readInstallSessions" msgid="7279049337895583621">"accéder aux sessions d\'installation"</string> - <string name="permdesc_readInstallSessions" msgid="4012608316610763473">"Permet à une application d\'accéder aux sessions d\'installation. Cela lui permet de consulter les détails relatifs à l\'installation des paquets actifs."</string> + <string name="permdesc_readInstallSessions" msgid="4012608316610763473">"Permet à une appli d\'accéder aux sessions d\'installation. Cela lui permet de consulter les détails relatifs à l\'installation des paquets actifs."</string> <string name="permlab_requestInstallPackages" msgid="7600020863445351154">"demander l\'installation de paquets"</string> - <string name="permdesc_requestInstallPackages" msgid="3969369278325313067">"Permet à une application de demander l\'installation de paquets."</string> + <string name="permdesc_requestInstallPackages" msgid="3969369278325313067">"Permet à une appli de demander l\'installation de paquets."</string> <string name="permlab_requestDeletePackages" msgid="2541172829260106795">"demander la suppression de paquets"</string> - <string name="permdesc_requestDeletePackages" msgid="6133633516423860381">"Permet à une application de demander la suppression de paquets."</string> + <string name="permdesc_requestDeletePackages" msgid="6133633516423860381">"Permet à une appli de demander la suppression de paquets."</string> <string name="permlab_requestIgnoreBatteryOptimizations" msgid="7646611326036631439">"demander d\'ignorer les optimisations de la pile"</string> - <string name="permdesc_requestIgnoreBatteryOptimizations" msgid="634260656917874356">"Permet à une application de demander la permission d\'ignorer les optimisations de la pile."</string> + <string name="permdesc_requestIgnoreBatteryOptimizations" msgid="634260656917874356">"Permet à une appli de demander la permission d\'ignorer les optimisations de la pile."</string> <string name="permlab_queryAllPackages" msgid="2928450604653281650">"envoyer une requête à propos de tous les paquets"</string> - <string name="permdesc_queryAllPackages" msgid="5339069855520996010">"Permet à une application de voir tous les paquets installés."</string> + <string name="permdesc_queryAllPackages" msgid="5339069855520996010">"Permet à une appli de voir tous les paquets installés."</string> <string name="tutorial_double_tap_to_zoom_message_short" msgid="1842872462124648678">"Appuyer deux fois pour régler le zoom"</string> <string name="gadget_host_error_inflating" msgid="2449961590495198720">"Impossible d\'ajouter le widget."</string> <string name="ime_action_go" msgid="5536744546326495436">"Aller"</string> <string name="ime_action_search" msgid="4501435960587287668">"Rechercher"</string> <string name="ime_action_send" msgid="8456843745664334138">"Envoyer"</string> - <string name="ime_action_next" msgid="4169702997635728543">"Suivante"</string> + <string name="ime_action_next" msgid="4169702997635728543">"Suivant"</string> <string name="ime_action_done" msgid="6299921014822891569">"Terminé"</string> <string name="ime_action_previous" msgid="6548799326860401611">"Précédente"</string> <string name="ime_action_default" msgid="8265027027659800121">"Exécuter"</string> <string name="dial_number_using" msgid="6060769078933953531">"Composer le numéro\nen utilisant <xliff:g id="NUMBER">%s</xliff:g>"</string> <string name="create_contact_using" msgid="6200708808003692594">"Ajouter un contact\nen utilisant <xliff:g id="NUMBER">%s</xliff:g>"</string> - <string name="grant_credentials_permission_message_header" msgid="5365733888842570481">"Les applications suivantes demandent l\'autorisation d\'accéder à votre compte à partir de maintenant."</string> + <string name="grant_credentials_permission_message_header" msgid="5365733888842570481">"Les applis suivantes demandent l\'autorisation d\'accéder à votre compte à partir de maintenant."</string> <string name="grant_credentials_permission_message_footer" msgid="1886710210516246461">"Voulez-vous autoriser cette demande?"</string> <string name="grant_permissions_header_text" msgid="3420736827804657201">"Demande d\'accès"</string> <string name="allow" msgid="6195617008611933762">"Autoriser"</string> @@ -1520,8 +1520,8 @@ <string name="permission_request_notification_title" msgid="1810025922441048273">"Autorisation demandée"</string> <string name="permission_request_notification_with_subtitle" msgid="3743417870360129298">"Autorisation demandée\npour le compte \"<xliff:g id="ACCOUNT">%s</xliff:g>\""</string> <string name="permission_request_notification_for_app_with_subtitle" msgid="1298704005732851350">"Autorisation demandée par <xliff:g id="APP">%1$s</xliff:g>\npour le compte <xliff:g id="ACCOUNT">%2$s</xliff:g>."</string> - <string name="forward_intent_to_owner" msgid="4620359037192871015">"Vous utilisez cette application en dehors de votre profil professionnel"</string> - <string name="forward_intent_to_work" msgid="3620262405636021151">"Vous utilisez cette application dans votre profil professionnel"</string> + <string name="forward_intent_to_owner" msgid="4620359037192871015">"Vous utilisez cette appli en dehors de votre profil professionnel"</string> + <string name="forward_intent_to_work" msgid="3620262405636021151">"Vous utilisez cette appli dans votre profil professionnel"</string> <string name="input_method_binding_label" msgid="1166731601721983656">"Mode de saisie"</string> <string name="sync_binding_label" msgid="469249309424662147">"Synchroniser"</string> <string name="accessibility_binding_label" msgid="1974602776545801715">"Accessibilité"</string> @@ -1534,7 +1534,7 @@ <string name="vpn_title" msgid="5906991595291514182">"RPV activé"</string> <string name="vpn_title_long" msgid="6834144390504619998">"RPV activé par <xliff:g id="APP">%s</xliff:g>"</string> <string name="vpn_text" msgid="2275388920267251078">"Appuyez ici pour gérer le réseau."</string> - <string name="vpn_text_long" msgid="278540576806169831">"Connecté à <xliff:g id="SESSION">%s</xliff:g>. Appuyez ici pour gérer le réseau."</string> + <string name="vpn_text_long" msgid="278540576806169831">"Connecté à <xliff:g id="SESSION">%s</xliff:g>. Touchez ici pour gérer le réseau."</string> <string name="vpn_lockdown_connecting" msgid="6096725311950342607">"RPV permanent en cours de connexion…"</string> <string name="vpn_lockdown_connected" msgid="2853127976590658469">"RPV permanent connecté"</string> <string name="vpn_lockdown_disconnected" msgid="5573611651300764955">"Déconnecté du RPV permanent"</string> @@ -1544,10 +1544,10 @@ <string name="no_file_chosen" msgid="4146295695162318057">"Aucun fichier sélectionné"</string> <string name="reset" msgid="3865826612628171429">"Réinitialiser"</string> <string name="submit" msgid="862795280643405865">"Envoyer"</string> - <string name="car_mode_disable_notification_title" msgid="8450693275833142896">"L\'application de conduite est en cours d\'exécution"</string> - <string name="car_mode_disable_notification_message" msgid="8954550232288567515">"Touchez pour quitter l\'application de conduite."</string> + <string name="car_mode_disable_notification_title" msgid="8450693275833142896">"L\'appli de conduite est en cours d\'exécution"</string> + <string name="car_mode_disable_notification_message" msgid="8954550232288567515">"Touchez pour quitter l\'appli de conduite."</string> <string name="back_button_label" msgid="4078224038025043387">"Précédent"</string> - <string name="next_button_label" msgid="6040209156399907780">"Suivante"</string> + <string name="next_button_label" msgid="6040209156399907780">"Suivant"</string> <string name="skip_button_label" msgid="3566599811326688389">"Ignorer"</string> <string name="no_matches" msgid="6472699895759164599">"Aucune partie"</string> <string name="find_on_page" msgid="5400537367077438198">"Rechercher sur la page"</string> @@ -1597,8 +1597,8 @@ <string name="keyboardview_keycode_mode_change" msgid="2743735349997999020">"Changement de mode"</string> <string name="keyboardview_keycode_shift" msgid="3026509237043975573">"Maj"</string> <string name="keyboardview_keycode_enter" msgid="168054869339091055">"Entrée"</string> - <string name="activitychooserview_choose_application" msgid="3500574466367891463">"Sélectionnez une application"</string> - <string name="activitychooserview_choose_application_error" msgid="6937782107559241734">"Impossible de lancer l\'application <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string> + <string name="activitychooserview_choose_application" msgid="3500574466367891463">"Sélectionnez une appli"</string> + <string name="activitychooserview_choose_application_error" msgid="6937782107559241734">"Impossible de lancer l\'appli <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string> <string name="shareactionprovider_share_with" msgid="2753089758467748982">"Partagez avec"</string> <string name="shareactionprovider_share_with_application" msgid="4902832247173666973">"Partager avec <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string> <string name="content_description_sliding_handle" msgid="982510275422590757">"Poignée coulissante. Appuyez de manière prolongée."</string> @@ -1626,7 +1626,7 @@ <string name="data_usage_restricted_title" msgid="126711424380051268">"Données en arrière-plan limitées"</string> <string name="data_usage_restricted_body" msgid="5338694433686077733">"Touchez pour suppr. restriction."</string> <string name="data_usage_rapid_title" msgid="2950192123248740375">"Utilis. élevée des données cell."</string> - <string name="data_usage_rapid_body" msgid="3886676853263693432">"Vos applications ont utilisé plus de données que d\'habitude"</string> + <string name="data_usage_rapid_body" msgid="3886676853263693432">"Vos applis ont utilisé plus de données que d\'habitude"</string> <string name="data_usage_rapid_app_body" msgid="5425779218506513861">"<xliff:g id="APP">%s</xliff:g> a utilisé plus de données que d\'habitude"</string> <string name="ssl_certificate" msgid="5690020361307261997">"Certificat de sécurité"</string> <string name="ssl_certificate_is_valid" msgid="7293675884598527081">"Ce certificat est valide."</string> @@ -1731,15 +1731,15 @@ <string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"ACTIVÉ"</string> <string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"DÉSACTIVÉ"</string> <string name="accessibility_enable_service_title" msgid="3931558336268541484">"Permettre à <xliff:g id="SERVICE">%1$s</xliff:g> de contrôler complètement votre appareil?"</string> - <string name="accessibility_service_warning_description" msgid="291674995220940133">"Le contrôle total convient aux applications qui répondent à vos besoins d\'accessibilité. Il ne convient pas à la plupart des applications."</string> + <string name="accessibility_service_warning_description" msgid="291674995220940133">"Le contrôle total convient aux applis qui répondent à vos besoins d\'accessibilité. Il ne convient pas à la plupart des applis."</string> <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Afficher et contrôler l\'écran"</string> - <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Cette fonctionnalité peut lire tout le contenu à l\'écran et afficher du contenu par-dessus d\'autres applications."</string> + <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Cette fonctionnalité peut lire tout le contenu à l\'écran et afficher du contenu par-dessus d\'autres applis."</string> <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Afficher et effectuer des actions"</string> - <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Cette fonctionnalité peut faire le suivi de vos interactions avec une application ou un capteur matériel et interagir avec des applications en votre nom."</string> + <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Cette fonctionnalité peut faire le suivi de vos interactions avec une appli ou un capteur matériel et interagir avec des applis en votre nom."</string> <string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Autoriser"</string> <string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Refuser"</string> <string name="accessibility_dialog_button_uninstall" msgid="2952465517671708108">"Désinstaller"</string> - <string name="accessibility_dialog_touch_filtered_warning" msgid="3741940116597822451">"Une application masque la demande d\'autorisation de sorte que votre réponse ne peut pas être vérifiée."</string> + <string name="accessibility_dialog_touch_filtered_warning" msgid="3741940116597822451">"Une appli masque la demande d\'autorisation de sorte que votre réponse ne peut pas être vérifiée."</string> <string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Toucher une fonctionnalité pour commencer à l\'utiliser :"</string> <string name="accessibility_edit_shortcut_menu_button_title" msgid="239446795930436325">"Choisir les fonctionnalités à utiliser à l\'aide du bouton d\'accessibilité"</string> <string name="accessibility_edit_shortcut_menu_volume_title" msgid="1077294237378645981">"Choisir les fonctionnalités à utiliser avec le raccourci des touches de volume"</string> @@ -1770,7 +1770,7 @@ <string name="guest_name" msgid="8502103277839834324">"Invité"</string> <string name="error_message_title" msgid="4082495589294631966">"Erreur"</string> <string name="error_message_change_not_allowed" msgid="843159705042381454">"Cette modification n\'est pas autorisée par votre administrateur"</string> - <string name="app_not_found" msgid="3429506115332341800">"Aucune application trouvée pour gérer cette action."</string> + <string name="app_not_found" msgid="3429506115332341800">"Aucune appli trouvée pour gérer cette action."</string> <string name="revoke" msgid="5526857743819590458">"Révoquer"</string> <string name="mediasize_iso_a0" msgid="7039061159929977973">"ISO A0"</string> <string name="mediasize_iso_a1" msgid="4063589931031977223">"ISO A1"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Le NIP est trop court. Il doit comporter au moins 4 chiffres."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Réessayez plus tard"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Affichage plein écran"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Pour quitter ce mode, balayer l\'écran vers le bas à partir du haut"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Faire pivoter pour obtenir un meilleur affichage"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Ouvrir <xliff:g id="NAME">%s</xliff:g> en plein écran pour un meilleur affichage"</string> @@ -1937,7 +1936,7 @@ <string name="zen_mode_default_every_night_name" msgid="1467765312174275823">"Sommeil"</string> <string name="zen_mode_implicit_trigger_description" msgid="5714956693073007111">"Géré par <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="zen_mode_implicit_activated" msgid="2634285680776672994">"Activé"</string> - <string name="zen_mode_implicit_deactivated" msgid="8688441768371501750">"Désactivé"</string> + <string name="zen_mode_implicit_deactivated" msgid="8688441768371501750">"Désactivée"</string> <string name="zen_mode_trigger_summary_divider_text" msgid="7461583466043698862">", "</string> <string name="zen_mode_trigger_summary_range_symbol_combination" msgid="1804900738798069619">"<xliff:g id="START">%1$s</xliff:g> – <xliff:g id="END">%2$s</xliff:g>"</string> <string name="zen_mode_trigger_event_calendar_any" msgid="2086784607921121803">"N\'importe quel agenda"</string> @@ -1979,7 +1978,7 @@ <string name="default_notification_channel_label" msgid="3697928973567217330">"Sans catégorie"</string> <string name="importance_from_user" msgid="2782756722448800447">"Vous définissez l\'importance de ces notifications."</string> <string name="importance_from_person" msgid="4235804979664465383">"Ces notifications sont importantes en raison des participants."</string> - <string name="notification_history_title_placeholder" msgid="7748630986182249599">"Notification d\'application personnalisée"</string> + <string name="notification_history_title_placeholder" msgid="7748630986182249599">"Notification d\'appli personnalisée"</string> <string name="user_creation_account_exists" msgid="2239146360099708035">"Autoriser <xliff:g id="APP">%1$s</xliff:g> à créer un utilisateur <xliff:g id="ACCOUNT">%2$s</xliff:g>? (Un utilisateur est déjà associé à ce compte)"</string> <string name="user_creation_adding" msgid="7305185499667958364">"Autoriser <xliff:g id="APP">%1$s</xliff:g> à créer un profil d\'utilisateur avec le compte <xliff:g id="ACCOUNT">%2$s</xliff:g>?"</string> <string name="supervised_user_creation_label" msgid="6884904353827427515">"Ajouter un utilisateur supervisé"</string> @@ -1993,17 +1992,17 @@ <string name="language_picker_section_all" msgid="1985809075777564284">"Toutes les langues"</string> <string name="region_picker_section_all" msgid="756441309928774155">"Toutes les régions"</string> <string name="locale_search_menu" msgid="6258090710176422934">"Rechercher"</string> - <string name="app_suspended_title" msgid="888873445010322650">"L\'application n\'est pas accessible"</string> - <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_title" msgid="888873445010322650">"L\'appli n\'est pas accessible"</string> + <string name="app_suspended_default_message" msgid="6451215678552004172">"L\'appli <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="app_suspended_unsuspend_message" msgid="1665438589450555459">"Réactiver l\'appli"</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="set_up_screen_lock_title" msgid="8346083801616474030">"Config. Verrouillage d\'écran"</string> <string name="set_up_screen_lock_action_label" msgid="2687634803649209367">"Config. Verrouillage d\'écran"</string> <string name="private_space_set_up_screen_lock_message" msgid="1109956797005149814">"Configurez verrouillage de l\'écran pour utiliser Espace privé"</string> - <string name="app_blocked_title" msgid="7353262160455028160">"L\'application n\'est pas accessible"</string> + <string name="app_blocked_title" msgid="7353262160455028160">"L\'appli n\'est pas accessible"</string> <string name="app_blocked_message" msgid="542972921087873023">"<xliff:g id="APP_NAME">%1$s</xliff:g> n\'est pas accessible pour le moment."</string> <string name="app_streaming_blocked_title" msgid="6090945835898766139">"<xliff:g id="ACTIVITY">%1$s</xliff:g> non accessible"</string> <string name="app_streaming_blocked_title_for_permission_dialog" msgid="3805704317624448487">"La demande d\'autorisation a été supprimée."</string> @@ -2017,20 +2016,20 @@ <string name="app_streaming_blocked_message" product="tv" msgid="4003011766528814377">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g> pour le moment. Essayez sur votre appareil Android TV à la place."</string> <string name="app_streaming_blocked_message" product="tablet" msgid="4242053045964946062">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g> pour le moment. Essayez sur votre tablette à la place."</string> <string name="app_streaming_blocked_message" product="default" msgid="6159168735030739398">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g> pour le moment. Essayez sur votre téléphone à la place."</string> - <string name="app_streaming_blocked_message_for_permission_request" product="tv" msgid="4706276040125072077">"Cette application demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre appareil Android TV d\'abord."</string> - <string name="app_streaming_blocked_message_for_permission_request" product="tablet" msgid="1824604581465771629">"Cette application demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre tablette d\'abord."</string> - <string name="app_streaming_blocked_message_for_permission_request" product="default" msgid="7755223160363292105">"Cette application demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre téléphone d\'abord."</string> - <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="tv" msgid="3470977315395784567">"Cette application demande une sécurité supplémentaire. Essayez sur votre appareil Android TV à la place."</string> - <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="tablet" msgid="698460091901465092">"Cette application demande une sécurité supplémentaire. Essayez sur votre tablette à la place."</string> - <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="default" msgid="8552691971910603907">"Cette application demande une sécurité supplémentaire. Essayez sur votre téléphone à la place."</string> + <string name="app_streaming_blocked_message_for_permission_request" product="tv" msgid="4706276040125072077">"Cette appli demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre appareil Android TV d\'abord."</string> + <string name="app_streaming_blocked_message_for_permission_request" product="tablet" msgid="1824604581465771629">"Cette appli demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre tablette d\'abord."</string> + <string name="app_streaming_blocked_message_for_permission_request" product="default" msgid="7755223160363292105">"Cette appli demande des autorisations supplémentaires, mais les autorisations ne peuvent pas être accordées lors d\'une session de diffusion en continu. Accordez l\'autorisation sur votre téléphone d\'abord."</string> + <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="tv" msgid="3470977315395784567">"Cette appli demande une sécurité supplémentaire. Essayez sur votre appareil Android TV à la place."</string> + <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="tablet" msgid="698460091901465092">"Cette appli demande une sécurité supplémentaire. Essayez sur votre tablette à la place."</string> + <string name="app_streaming_blocked_message_for_fingerprint_dialog" product="default" msgid="8552691971910603907">"Cette appli demande une sécurité supplémentaire. Essayez sur votre téléphone à la place."</string> <string name="app_streaming_blocked_message_for_settings_dialog" product="tv" msgid="820334666354451145">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g>. Essayez sur votre appareil Android TV à la place."</string> <string name="app_streaming_blocked_message_for_settings_dialog" product="tablet" msgid="3286849551133045896">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g>. Essayez sur votre tablette à la place."</string> <string name="app_streaming_blocked_message_for_settings_dialog" product="default" msgid="6264287556598916295">"Impossible d\'accéder à ce contenu sur votre <xliff:g id="DEVICE">%1$s</xliff:g>. Essayez sur votre téléphone à la place."</string> - <string name="deprecated_target_sdk_message" msgid="5246906284426844596">"Cette application a été conçue pour une ancienne version d\'Android. Elle pourrait ne pas fonctionner correctement, et ne comprend pas les dernières protections des données confidentielles et de sécurité. Vérifiez s\'il existe une mise à jour ou contactez le développeur de l\'application."</string> + <string name="deprecated_target_sdk_message" msgid="5246906284426844596">"Cette appli a été conçue pour une ancienne version d\'Android. Elle pourrait ne pas fonctionner correctement, et ne comprend pas les dernières protections des données confidentielles et de sécurité. Vérifiez s\'il existe une mise à jour ou contactez le développeur de l\'appli."</string> <string name="deprecated_target_sdk_app_store" msgid="8456784048558808909">"Vérifier la présence de mises à jour"</string> - <string name="deprecated_abi_message" msgid="6820548011196218091">"Cette application n\'est pas compatible avec la dernière version d\'Android. Vérifiez s\'il existe une mise à jour ou communiquez avec le développeur de l\'application."</string> + <string name="deprecated_abi_message" msgid="6820548011196218091">"Cette appli n\'est pas compatible avec la dernière version d\'Android. Vérifiez s\'il existe une mise à jour ou communiquez avec le développeur de l\'appli."</string> <string name="new_sms_notification_title" msgid="6528758221319927107">"Vous avez de nouveaux messages"</string> - <string name="new_sms_notification_content" msgid="3197949934153460639">"Ouvrez l\'application de messagerie texte pour l\'afficher"</string> + <string name="new_sms_notification_content" msgid="3197949934153460639">"Ouvrez l\'appli de messagerie texte pour l\'afficher"</string> <string name="profile_encrypted_title" msgid="9001208667521266472">"Des fonctionnalités sont limitées"</string> <string name="profile_encrypted_detail" msgid="5279730442756849055">"Profil professionnel verrouillé"</string> <string name="profile_encrypted_message" msgid="1128512616293157802">"Touch. pr déver. profil profess."</string> @@ -2040,7 +2039,7 @@ <string name="pin_specific_target" msgid="7824671240625957415">"Épingler <xliff:g id="LABEL">%1$s</xliff:g>"</string> <string name="unpin_target" msgid="3963318576590204447">"Annuler l\'épinglage"</string> <string name="unpin_specific_target" msgid="3859828252160908146">"Annuler l\'épinglage de <xliff:g id="LABEL">%1$s</xliff:g>"</string> - <string name="app_info" msgid="6113278084877079851">"Détails de l\'application"</string> + <string name="app_info" msgid="6113278084877079851">"Détails de l\'appli"</string> <string name="negative_duration" msgid="1938335096972945232">"−<xliff:g id="TIME">%1$s</xliff:g>"</string> <string name="demo_starting_message" msgid="6577581216125805905">"Démarrage de la démonstration en cours…"</string> <string name="demo_restarting_message" msgid="1160053183701746766">"Réinitialisation de l\'appareil en cours…"</string> @@ -2108,14 +2107,14 @@ <string name="mmcc_illegal_me_msim_template" msgid="4802735138861422802">"La carte SIM <xliff:g id="SIMNUMBER">%d</xliff:g> n\'est pas autorisée"</string> <string name="popup_window_default_title" msgid="6907717596694826919">"Fenêtre contextuelle"</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">"La version de l\'application a été rétrogradée ou n\'est pas compatible avec ce raccourci"</string> - <string name="shortcut_restore_not_supported" msgid="4763198938588468400">"Impossible de restaurer le raccourci, car l\'application ne prend pas en charge la sauvegarde et la restauration"</string> - <string name="shortcut_restore_signature_mismatch" msgid="579345304221605479">"Impossible de restaurer le raccourci en raison d\'une erreur de correspondance des signature d\'applications"</string> + <string name="shortcut_restored_on_lower_version" msgid="9206301954024286063">"La version de l\'appli a été rétrogradée ou n\'est pas compatible avec ce raccourci"</string> + <string name="shortcut_restore_not_supported" msgid="4763198938588468400">"Impossible de restaurer le raccourci, car l\'appli ne prend pas en charge la sauvegarde et la restauration"</string> + <string name="shortcut_restore_signature_mismatch" msgid="579345304221605479">"Impossible de restaurer le raccourci en raison d\'une erreur de correspondance des signature d\'applis"</string> <string name="shortcut_restore_unknown_issue" msgid="2478146134395982154">"Impossible de restaurer le raccourci"</string> <string name="shortcut_disabled_reason_unknown" msgid="753074793553599166">"Le raccourci est désactivé"</string> <string name="harmful_app_warning_uninstall" msgid="6472912975664191772">"DÉSINSTALLER"</string> <string name="harmful_app_warning_open_anyway" msgid="5963657791740211807">"OUVRIR QUAND MÊME"</string> - <string name="harmful_app_warning_title" msgid="8794823880881113856">"Une application nuisible a été détectée"</string> + <string name="harmful_app_warning_title" msgid="8794823880881113856">"Une appli nuisible a été détectée"</string> <string name="slices_permission_request" msgid="3677129866636153406">"<xliff:g id="APP_0">%1$s</xliff:g> souhaite afficher <xliff:g id="APP_2">%2$s</xliff:g> tranches"</string> <string name="screenshot_edit" msgid="7408934887203689207">"Modifier"</string> <string name="volume_dialog_ringer_guidance_vibrate" msgid="2055927873175228519">"Les appels et les notifications vibreront"</string> @@ -2127,14 +2126,14 @@ <string name="zen_upgrade_notification_title" msgid="8198167698095298717">"Les paramètres du mode Ne pas déranger ont changé"</string> <string name="zen_upgrade_notification_content" msgid="5228458567180124005">"Touchez l\'écran pour vérifier ce qui est bloqué."</string> <string name="review_notification_settings_title" msgid="5102557424459810820">"Examiner les paramètres de notification"</string> - <string name="review_notification_settings_text" msgid="5916244866751849279">"À partir d\'Android 13, les applications que vous installez ont besoin de votre autorisation pour envoyer des notifications. Touchez pour modifier cette autorisation pour les applications existantes."</string> + <string name="review_notification_settings_text" msgid="5916244866751849279">"À partir d\'Android 13, les applis que vous installez ont besoin de votre autorisation pour envoyer des notifications. Touchez pour modifier cette autorisation pour les applis existantes."</string> <string name="review_notification_settings_remind_me_action" msgid="1081081018678480907">"Me rappeler plus tard"</string> <string name="review_notification_settings_dismiss" msgid="4160916504616428294">"Fermer"</string> <string name="notification_app_name_system" msgid="3045196791746735601">"Système"</string> <string name="notification_app_name_settings" msgid="9088548800899952531">"Paramètres"</string> <string name="notification_appops_camera_active" msgid="8177643089272352083">"Appareil photo"</string> <string name="notification_appops_microphone_active" msgid="581333393214739332">"Microphone"</string> - <string name="notification_appops_overlay_active" msgid="5571732753262836481">"superpose du contenu par-dessus d\'autres applications à l\'écran"</string> + <string name="notification_appops_overlay_active" msgid="5571732753262836481">"superpose du contenu par-dessus d\'autres applis à l\'écran"</string> <string name="notification_feedback_indicator" msgid="663476517711323016">"Envoyer des commentaires"</string> <string name="notification_feedback_indicator_alerted" msgid="6552871804121942099">"La notification a été automatiquement élevée à la catégorie Par défaut. Touchez pour envoyer des commentaires."</string> <string name="notification_feedback_indicator_silenced" msgid="3799442124723177262">"Cette notification a été rétrogradée à Silencieuse. Touchez pour envoyer des commentaires."</string> @@ -2145,7 +2144,7 @@ <string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"OK"</string> <string name="nas_upgrade_notification_disable_action" msgid="3794833210043497982">"Désactiver"</string> <string name="nas_upgrade_notification_learn_more_action" msgid="7011130656195423947">"En savoir plus"</string> - <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Les notifications améliorées ont remplacé les notifications adaptatives Android sous Android 12. Cette fonctionnalité vous présente des suggestions d\'actions et de réponses, et organise vos notifications.\n\nLes notifications améliorées peuvent accéder au contenu de toutes les notifications, y compris les renseignements personnels comme le nom des contacts et les messages. Cette fonctionnalité peut aussi fermer des notifications ou interagir avec elles, comme répondre aux appels téléphoniques et gérer le mode Ne pas déranger."</string> + <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Les notifications améliorées ont remplacé les notifications adaptatives Android sous Android 12. Cette fonctionnalité vous présente des suggestions d\'actions et de réponse, et organise vos notifications.\n\nLes notifications améliorées peuvent accéder au contenu de toutes les notifications, y compris les renseignements personnels comme le nom des contacts et les messages. Cette fonctionnalité peut aussi fermer des notifications ou interagir avec elles, comme répondre aux appels téléphoniques et gérer le mode Ne pas déranger."</string> <string name="dynamic_mode_notification_channel_name" msgid="2986926422100223328">"Notification d\'information du mode Routine"</string> <string name="dynamic_mode_notification_title" msgid="1388718452788985481">"Économiseur de pile activé"</string> <string name="dynamic_mode_notification_summary" msgid="1639031262484979689">"Réduction de l\'utilisation de la pile pour en prolonger l\'autonomie"</string> @@ -2157,7 +2156,7 @@ <string name="battery_saver_charged_notification_summary" product="tablet" msgid="4426317048139996888">"La tablette est suffisamment chargée. Ces fonctionnalités ne sont plus restreintes."</string> <string name="battery_saver_charged_notification_summary" product="device" msgid="1031562417867646649">"L\'appareil est suffisamment chargé. Ces fonctionnalités ne sont plus restreintes."</string> <string name="mime_type_folder" msgid="2203536499348787650">"Dossier"</string> - <string name="mime_type_apk" msgid="3168784749499623902">"Application Android"</string> + <string name="mime_type_apk" msgid="3168784749499623902">"Appli Android"</string> <string name="mime_type_generic" msgid="4606589110116560228">"Fichier"</string> <string name="mime_type_generic_ext" msgid="9220220924380909486">"Fichier <xliff:g id="EXTENSION">%1$s</xliff:g>"</string> <string name="mime_type_audio" msgid="4933450584432509875">"Son"</string> @@ -2178,11 +2177,11 @@ <string name="car_loading_profile" msgid="8219978381196748070">"Chargement en cours…"</string> <string name="file_count" msgid="3220018595056126969">"{count,plural, =1{{file_name} + # fichier}one{{file_name} + # fichier}many{{file_name} + # fichiers}other{{file_name} + # fichiers}}"</string> <string name="chooser_no_direct_share_targets" msgid="1511722103987329028">"Aucune recommandation de personnes avec lesquelles effectuer un partage"</string> - <string name="chooser_all_apps_button_label" msgid="3230427756238666328">"Liste des applications"</string> - <string name="usb_device_resolve_prompt_warn" msgid="325871329788064199">"Cette application n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait capturer du contenu audio par l\'intermédiaire de cet appareil USB."</string> + <string name="chooser_all_apps_button_label" msgid="3230427756238666328">"Liste des applis"</string> + <string name="usb_device_resolve_prompt_warn" msgid="325871329788064199">"Cette appli n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait capturer du contenu audio par l\'intermédiaire de cet appareil USB."</string> <string name="accessibility_system_action_home_label" msgid="3234748160850301870">"Accueil"</string> <string name="accessibility_system_action_back_label" msgid="4205361367345537608">"Retour"</string> - <string name="accessibility_system_action_recents_label" msgid="4782875610281649728">"Applications récentes"</string> + <string name="accessibility_system_action_recents_label" msgid="4782875610281649728">"Applis récentes"</string> <string name="accessibility_system_action_notifications_label" msgid="6083767351772162010">"Notifications"</string> <string name="accessibility_system_action_quick_settings_label" msgid="4583900123506773783">"Paramètres rapides"</string> <string name="accessibility_system_action_power_dialog_label" msgid="8095341821683910781">"Boîte de dialogue sur l\'alimentation"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Sélecteur de raccourci d\'accessibilité à l\'écran"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Raccourci d\'accessibilité"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ignorer le volet de notification"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Lecture/pause du contenu multimédia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Pavé directionnel – haut"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Pavé directionnel – bas"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Pavé directionnel – gauche"</string> @@ -2209,22 +2210,22 @@ <string name="resolver_personal_tab_accessibility" msgid="5739524949153091224">"Affichage personnel"</string> <string name="resolver_work_tab_accessibility" msgid="4753168230363802734">"Affichage professionnel"</string> <string name="resolver_cross_profile_blocked" msgid="3014597376026044840">"Bloqué par votre administrateur informatique"</string> - <string name="resolver_cant_share_with_work_apps_explanation" msgid="9071442683080586643">"Impossible de partager ce contenu avec des applications professionnelles"</string> - <string name="resolver_cant_access_work_apps_explanation" msgid="1129960195389373279">"Impossible d\'ouvrir ce contenu avec des applications professionnelles"</string> - <string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"Impossible de partager ce contenu avec des applications personnelles"</string> - <string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"Impossible d\'ouvrir ce contenu avec des applications personnelles"</string> - <string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"Les applications professionnelles sont interrompues"</string> + <string name="resolver_cant_share_with_work_apps_explanation" msgid="9071442683080586643">"Impossible de partager ce contenu avec des applis professionnelles"</string> + <string name="resolver_cant_access_work_apps_explanation" msgid="1129960195389373279">"Impossible d\'ouvrir ce contenu avec des applis professionnelles"</string> + <string name="resolver_cant_share_with_personal_apps_explanation" msgid="6349766201904601544">"Impossible de partager ce contenu avec des applis personnelles"</string> + <string name="resolver_cant_access_personal_apps_explanation" msgid="1679399548862724359">"Impossible d\'ouvrir ce contenu avec des applis personnelles"</string> + <string name="resolver_turn_on_work_apps" msgid="1535946298236678122">"Les applis professionnelles sont interrompues"</string> <string name="resolver_switch_on_work" msgid="4527096360772311894">"Réactiver"</string> - <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="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_work" msgid="6286176185835401931">"Ouvrir le profil professionnel de <xliff:g id="APP">%s</xliff:g>?"</string> <string name="miniresolver_open_in_personal" msgid="807427577794490375">"Ouvrir <xliff:g id="APP">%s</xliff:g> dans le profil personnel?"</string> <string name="miniresolver_open_in_work" msgid="941341494673509916">"Ouvrir <xliff:g id="APP">%s</xliff:g> dans le profil professionnel?"</string> - <string name="miniresolver_call_in_work" msgid="528779988307529039">"Appeler à partir de l\'application professionnelle?"</string> - <string name="miniresolver_switch_to_work" msgid="1042640606122638596">"Passer à l\'application professionnelle?"</string> - <string name="miniresolver_call_information" msgid="6739417525304184083">"Votre organisation vous autorise à passer des appels uniquement à partir d\'applications professionnelles"</string> - <string name="miniresolver_sms_information" msgid="4311292661329483088">"Votre organisation vous autorise à envoyer des messages uniquement à partir d\'applications professionnelles"</string> - <string name="miniresolver_private_space_phone_information" msgid="4469511223312488570">"Vous ne pouvez passer des appels téléphoniques qu\'à partir de votre application Téléphone personnelle. Les appels passés à l\'aide de cette dernière seront ajoutés à votre historique personnel des appels."</string> + <string name="miniresolver_call_in_work" msgid="528779988307529039">"Appeler à partir de l\'appli professionnelle?"</string> + <string name="miniresolver_switch_to_work" msgid="1042640606122638596">"Passer à l\'appli professionnelle?"</string> + <string name="miniresolver_call_information" msgid="6739417525304184083">"Votre organisation vous autorise à passer des appels uniquement à partir d\'applis professionnelles"</string> + <string name="miniresolver_sms_information" msgid="4311292661329483088">"Votre organisation vous autorise à envoyer des messages uniquement à partir d\'applis professionnelles"</string> + <string name="miniresolver_private_space_phone_information" msgid="4469511223312488570">"Vous ne pouvez passer des appels téléphoniques qu\'à partir de votre appli Téléphone personnelle. Les appels passés à l\'aide de cette dernière seront ajoutés à votre historique personnel des appels."</string> <string name="miniresolver_private_space_messages_information" msgid="111285656327622118">"Vous ne pouvez envoyer des messages texte qu\'à partir de votre appli Messages personnelle."</string> <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> @@ -2348,35 +2349,35 @@ <string name="dismiss_action" msgid="1728820550388704784">"Fermer"</string> <string name="sensor_privacy_start_use_mic_notification_content_title" msgid="2420858361276370367">"Débloquer le microphone de l\'appareil"</string> <string name="sensor_privacy_start_use_camera_notification_content_title" msgid="7287720213963466672">"Débloquer l\'appareil photo de l\'appareil"</string> - <string name="sensor_privacy_start_use_notification_content_text" msgid="7595608891015777346">"Pour <b><xliff:g id="APP">%s</xliff:g></b> ainsi que toutes les applications et tous les services"</string> + <string name="sensor_privacy_start_use_notification_content_text" msgid="7595608891015777346">"Pour <b><xliff:g id="APP">%s</xliff:g></b> ainsi que toutes les applis et tous les services"</string> <string name="sensor_privacy_start_use_dialog_turn_on_button" msgid="7089318886628390827">"Débloquer"</string> <string name="sensor_privacy_notification_channel_label" msgid="936036783155261349">"Confidentialité des capteurs"</string> - <string name="splash_screen_view_icon_description" msgid="180638751260598187">"Icône de l\'application"</string> - <string name="splash_screen_view_branding_description" msgid="7911129347402728216">"Image de marque de l\'application"</string> + <string name="splash_screen_view_icon_description" msgid="180638751260598187">"Icône de l\'appli"</string> + <string name="splash_screen_view_branding_description" msgid="7911129347402728216">"Image de marque de l\'appli"</string> <string name="view_and_control_notification_title" msgid="4300765399209912240">"Vérifiez les paramètres d\'accès"</string> <string name="view_and_control_notification_content" msgid="8003766498562604034">"<xliff:g id="SERVICE_NAME">%s</xliff:g> peut voir et contrôler votre écran. Touchez pour examiner."</string> <string name="ui_translation_accessibility_translated_text" msgid="3197547218178944544">"Message <xliff:g id="MESSAGE">%1$s</xliff:g> traduit."</string> <string name="ui_translation_accessibility_translation_finished" msgid="3057830947610088465">"Message traduit : <xliff:g id="FROM_LANGUAGE">%1$s</xliff:g> vers <xliff:g id="TO_LANGUAGE">%2$s</xliff:g>."</string> <string name="notification_channel_abusive_bg_apps" msgid="6092140213264920355">"Activité en arrière-plan"</string> - <string name="notification_title_abusive_bg_apps" msgid="994230770856147656">"Une application décharge votre pile"</string> - <string name="notification_title_long_running_fgs" msgid="8170284286477131587">"Une application est toujours active"</string> + <string name="notification_title_abusive_bg_apps" msgid="994230770856147656">"Une appli décharge votre pile"</string> + <string name="notification_title_long_running_fgs" msgid="8170284286477131587">"Une appli est toujours active"</string> <string name="notification_content_abusive_bg_apps" msgid="5296898075922695259">"<xliff:g id="APP">%1$s</xliff:g> s\'exécute en arrière-plan. Touchez pour gérer l\'utilisation de la pile."</string> - <string name="notification_content_long_running_fgs" msgid="8258193410039977101">"<xliff:g id="APP">%1$s</xliff:g> peut avoir une incidence sur l\'autonomie de la pile. Touchez pour examiner les applications actives."</string> - <string name="notification_action_check_bg_apps" msgid="4758877443365362532">"Vérifier les applications actives"</string> + <string name="notification_content_long_running_fgs" msgid="8258193410039977101">"<xliff:g id="APP">%1$s</xliff:g> peut avoir une incidence sur l\'autonomie de la pile. Touchez pour examiner les applis actives."</string> + <string name="notification_action_check_bg_apps" msgid="4758877443365362532">"Vérifier les applis actives"</string> <string name="vdm_camera_access_denied" product="default" msgid="6102378580971542473">"Impossible d\'accéder à l\'appareil photo du téléphone à partir de votre <xliff:g id="DEVICE">%1$s</xliff:g>"</string> <string name="vdm_camera_access_denied" product="tablet" msgid="6895968310395249076">"Impossible d\'accéder à l\'appareil photo de la tablette à partir de votre <xliff:g id="DEVICE">%1$s</xliff:g>"</string> <string name="vdm_secure_window" msgid="161700398158812314">"Vous ne pouvez pas y accéder lorsque vous utilisez la diffusion en continu. Essayez sur votre téléphone à la place."</string> <string name="vdm_pip_blocked" msgid="4036107522497281397">"Impossible d\'afficher des incrustations d\'image pendant une diffusion en continu"</string> <string name="system_locale_title" msgid="711882686834677268">"Paramètre système par défaut"</string> <string name="default_card_name" msgid="9198284935962911468">"CARTE <xliff:g id="CARDNUMBER">%d</xliff:g>"</string> - <string name="permlab_companionProfileWatch" msgid="2457738382085872542">"Autorisation du profil de la montre de l\'application compagnon pour gérer les montres"</string> - <string name="permdesc_companionProfileWatch" msgid="5655698581110449397">"Autorise une application compagnon à gérer les montres."</string> + <string name="permlab_companionProfileWatch" msgid="2457738382085872542">"Autorisation du profil de la montre de l\'appli compagnon pour gérer les montres"</string> + <string name="permdesc_companionProfileWatch" msgid="5655698581110449397">"Autorise une appli compagnon à gérer les montres."</string> <string name="permlab_observeCompanionDevicePresence" msgid="9008994909653990465">"Surveiller la présence d\'un appareil compagnon"</string> - <string name="permdesc_observeCompanionDevicePresence" msgid="3011699826788697852">"Autorise une application compagnon à surveiller la présence d\'un appareil compagnon lorsque les appareils sont à proximité ou éloignés."</string> - <string name="permlab_deliverCompanionMessages" msgid="3931552294842980887">"Transmettre les messages des applications compagnons"</string> - <string name="permdesc_deliverCompanionMessages" msgid="2170847384281412850">"Autorise une application compagnon à transmettre des messages à d\'autres appareils."</string> + <string name="permdesc_observeCompanionDevicePresence" msgid="3011699826788697852">"Autorise une appli compagnon à surveiller la présence d\'un appareil compagnon lorsque les appareils sont à proximité ou éloignés."</string> + <string name="permlab_deliverCompanionMessages" msgid="3931552294842980887">"Transmettre les messages des applis compagnons"</string> + <string name="permdesc_deliverCompanionMessages" msgid="2170847384281412850">"Autorise une appli compagnon à transmettre des messages à d\'autres appareils."</string> <string name="permlab_startForegroundServicesFromBackground" msgid="6363004936218638382">"Lancer les services d\'avant-plan à partir de l\'arrière-plan"</string> - <string name="permdesc_startForegroundServicesFromBackground" msgid="4071826571656001537">"Permet à une application compagnon en arrière-plan de lancer des services d\'avant-plan."</string> + <string name="permdesc_startForegroundServicesFromBackground" msgid="4071826571656001537">"Permet à une appli compagnon en arrière-plan de lancer des services d\'avant-plan."</string> <string name="mic_access_on_toast" msgid="2666925317663845156">"Le microphone est accessible"</string> <string name="mic_access_off_toast" msgid="8111040892954242437">"Le microphone est bloqué"</string> <string name="connected_display_unavailable_notification_title" msgid="5265409360902073556">"Impossible de dupliquer l\'écran"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espace privé"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Le contenu confidentiel de la notification est masqué"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Le contenu de l\'application est masqué du Partage d\'écran par mesure de sécurité"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Le contenu de l\'appli est masqué du Partage d\'écran par mesure de sécurité"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Connecté au satellite automatiquement"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Vous pouvez envoyer et recevoir des messages sans avoir recours à un appareil mobile ou à un réseau Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Ouvrir Messages"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Fonctionnement"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"En attente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configurer le Déverrouillage par empreinte digitale à nouveau"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne fonctionnait pas bien et a été supprimée"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne fonctionnaient pas bien et ont été supprimées"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne fonctionnait pas bien et a été supprimée. Configurez-le à nouveau pour déverrouiller votre téléphone avec l\'empreinte digitale."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne fonctionnaient pas bien et ont été supprimées. Configurez-les à nouveau pour déverrouiller votre téléphone avec votre empreinte digitale."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"L\'empreinte digitale <xliff:g id="FINGERPRINT">%s</xliff:g> ne peut plus être reconnue."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Les empreintes digitales <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne peuvent plus être reconnues."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"L\'empreinte digitale <xliff:g id="FINGERPRINT">%s</xliff:g> ne peut plus être reconnue. Reconfigurez le Déverrouillage par empreinte digitale."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Les empreintes digitales <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne peuvent plus être reconnues. Reconfigurez le Déverrouillage par empreinte digitale."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configurer le Déverrouillage par reconnaissance faciale à nouveau"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Votre modèle facial ne fonctionnait pas bien et a été supprimé. Configurez-le à nouveau pour déverrouiller votre téléphone avec votre visage."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Votre modèle facial ne peut plus être reconnu. Reconfigurez le Déverrouillage par reconnaissance faciale."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurer"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Plus tard"</string> </resources> diff --git a/core/res/res/values-fr/strings.xml b/core/res/res/values-fr/strings.xml index f1a81a3eeddd..85cfe2a94bed 100644 --- a/core/res/res/values-fr/strings.xml +++ b/core/res/res/values-fr/strings.xml @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Le code PIN est trop court. Il doit comporter au moins 4 chiffres."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Veuillez réessayer ultérieurement."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Affichage en plein écran"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Pour quitter, balayez l\'écran de haut en bas"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Faites pivoter pour mieux voir"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Ouvrez <xliff:g id="NAME">%s</xliff:g> en plein écran pour mieux voir"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Outil de sélection des raccourcis d\'accessibilité à l\'écran"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Raccourci d\'accessibilité"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Fermer le volet des notifications"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Contenu multimédia : lecture/pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Pavé directionnel - Haut"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Pavé directionnel - Bas"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Pavé directionnel - Gauche"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espace privé"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Le contenu sensible de la notification a été masqué"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Le contenu de l\'appli est masqué lors du partage d\'écran pour des raisons de sécurité"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Le contenu de l\'appli est masqué lors du partage d\'écran par mesure de sécurité"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Connecté automatiquement au réseau satellite"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Vous pouvez envoyer et recevoir des messages sans connexion au réseau mobile ou Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Ouvrir Messages"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Fonctionnement"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"En attente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Reconfigurer le déverrouillage par empreinte digitale"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne fonctionnait pas correctement et a été supprimée"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne fonctionnaient pas correctement et ont été supprimées"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne fonctionnait pas correctement et a été supprimée. Configurez-la à nouveau pour déverrouiller votre téléphone à l\'aide de votre empreinte digitale."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne fonctionnaient pas correctement et ont été supprimées. Configurez-les à nouveau pour déverrouiller votre téléphone à l\'aide de votre empreinte digitale."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne peut plus être reconnue."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne peuvent plus être reconnues."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ne peut plus être reconnue. Reconfigurez le déverrouillage par empreinte digitale."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> et <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ne peuvent plus être reconnues. Reconfigurez le déverrouillage par empreinte digitale."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Reconfigurer le déverrouillage par reconnaissance faciale"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Votre empreinte faciale ne fonctionnait pas correctement et a été supprimée. Configurez-la à nouveau pour déverrouiller votre téléphone à l\'aide de votre visage."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Votre empreinte faciale ne peut plus être reconnue. Reconfigurez le déverrouillage par reconnaissance faciale."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configuration"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Pas maintenant"</string> </resources> diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml index c29d888d38c1..78c4326eb867 100644 --- a/core/res/res/values-gl/strings.xml +++ b/core/res/res/values-gl/strings.xml @@ -642,7 +642,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Permite que a aplicación lea as localizacións da túa colección multimedia."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Utilizar desbloqueo biométrico"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Utilizar desbloqueo biométrico ou credencial do dispositivo"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Verifica que es ti"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Verifica a túa identidade"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Para continuar, utiliza o desbloqueo biométrico"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Para continuar, utiliza o desbloqueo biométrico ou o bloqueo de pantalla"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"O hardware biométrico non está dispoñible"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"O PIN é demasiado curto. Debe conter polo menos 4 díxitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Téntao de novo máis tarde"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Vendo pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para saír, pasa o dedo cara abaixo desde a parte superior da pantalla"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entendido"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Xira a pantalla para que se vexa mellor"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abre <xliff:g id="NAME">%s</xliff:g> en pantalla completa para unha mellor visualización"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selector de atallos de accesibilidade en pantalla"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Atallo de accesibilidade"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ignorar panel despregable"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menú"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reproducir/pór en pausa contido multimedia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Cruceta: arriba"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Cruceta: abaixo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Cruceta: esquerda"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espazo privado"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Contido confidencial da notificación oculto"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Por motivos de seguranza, ocultouse o contido da aplicación para que no se mostre na pantalla compartida"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Por seguranza, ocultouse o contido da aplicación na pantalla compartida"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Conexión automática ao satélite"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Podes enviar e recibir mensaxes sen unha rede de telefonía móbil ou wifi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Abrir Mensaxes"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Como funciona?"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendente..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configura de novo o desbloqueo dactilar"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"A <xliff:g id="FINGERPRINT">%s</xliff:g> non funcionaba correctamente, polo que se eliminou"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"As impresións dixitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non funcionaban correctamente, polo que se eliminaron"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"A <xliff:g id="FINGERPRINT">%s</xliff:g> non funcionaba correctamente, polo que se eliminou. Configúraa de novo para desbloquear o teléfono usando a impresión dixital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"As impresións dixitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non funcionaban correctamente, polo que se eliminaron. Configúraas de novo para desbloquear o teléfono usando a impresión dixital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> xa non se recoñece."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> xa non se recoñecen."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> xa non se recoñece. Configura de novo o desbloqueo dactilar."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> xa non se recoñecen. Configura de novo o desbloqueo dactilar."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configura de novo o desbloqueo facial"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"O teu modelo facial non funcionaba correctamente, polo que se eliminou. Configúrao de novo para desbloquear o teléfono usando a cara."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Xa non se recoñece o teu modelo facial. Configura de novo o desbloqueo facial."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurar"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Agora non"</string> </resources> diff --git a/core/res/res/values-gu/strings.xml b/core/res/res/values-gu/strings.xml index 4d350a05df76..709d8896fd0b 100644 --- a/core/res/res/values-gu/strings.xml +++ b/core/res/res/values-gu/strings.xml @@ -90,7 +90,7 @@ <string name="notification_channel_emergency_callback" msgid="54074839059123159">"કટોકટી કૉલબૅક મોડ"</string> <string name="notification_channel_mobile_data_status" msgid="1941911162076442474">"મોબાઇલ ડેટાની સ્થિતિ"</string> <string name="notification_channel_sms" msgid="1243384981025535724">"SMS મેસેજ"</string> - <string name="notification_channel_voice_mail" msgid="8457433203106654172">"વૉઇસમેઇલ સંદેશા"</string> + <string name="notification_channel_voice_mail" msgid="8457433203106654172">"વૉઇસમેઇલ મેસેજ"</string> <string name="notification_channel_wfc" msgid="9048240466765169038">"વાઇ-ફાઇ કૉલિંગ"</string> <string name="notification_channel_sim" msgid="5098802350325677490">"સિમનું સ્ટેટસ"</string> <string name="notification_channel_sim_high_prio" msgid="642361929452850928">"સિમ કાર્ડનું ઉચ્ચ પ્રાધાન્યતાનું સ્ટેટસ"</string> @@ -122,7 +122,7 @@ <string name="roamingTextSearching" msgid="5323235489657753486">"સેવા શોધી રહ્યું છે"</string> <string name="wfcRegErrorTitle" msgid="3193072971584858020">"વાઇ-ફાઇ કૉલિંગ સેટ કરી શકાયું નથી"</string> <string-array name="wfcOperatorErrorAlertMessages"> - <item msgid="468830943567116703">"વાઇ-ફાઇ પરથી કૉલ કરવા અને સંદેશા મોકલવા માટે પહેલાં તમારા કૅરિઅરને આ સેવા સેટ કરવા માટે કહો. પછી સેટિંગમાંથી વાઇ-ફાઇ કૉલિંગ ફરીથી ચાલુ કરો. (ભૂલ કોડ: <xliff:g id="CODE">%1$s</xliff:g>)"</item> + <item msgid="468830943567116703">"વાઇ-ફાઇ પરથી કૉલ કરવા અને મેસેજ મોકલવા માટે પહેલાં તમારા મોબાઇલ ઑપરેટરને આ સેવા સેટ કરવા માટે કહો. પછી સેટિંગમાંથી વાઇ-ફાઇ કૉલિંગ ફરીથી ચાલુ કરો. (ભૂલ કોડ: <xliff:g id="CODE">%1$s</xliff:g>)"</item> </string-array> <string-array name="wfcOperatorErrorNotificationMessages"> <item msgid="4795145070505729156">"તમારા કૅરિઅરમાં વાઇ-ફાઇ કૉલિંગ રજિસ્ટર કરવામાં સમસ્યા આવી: <xliff:g id="CODE">%1$s</xliff:g>"</item> @@ -203,8 +203,8 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"વ્યવસ્થાપકે ડિવાઇસ વ્યક્તિગત ઉપયોગ માટે આપી દીધું છે"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"ખાનગી સ્પેસ કાઢી નાખી"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"મેનેજ કરેલા ડિવાઇસ પર, તમારી સંસ્થા દ્વારા ખાનગી સ્પેસને મંજૂરી આપવામાં આવતી નથી."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"ડિવાઇસ મેનેજ થયેલ છે"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"તમારી સંસ્થા આ ઉપકરણનું સંચાલન કરે છે અને નેટવર્ક ટ્રાફિફનું નિયમન કરી શકે છે. વિગતો માટે ટૅપ કરો."</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"ડિવાઇસ મેનેજ થયેલું છે"</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"તમારી સંસ્થા આ ડિવાઇસને મેનેજ કરે છે અને નેટવર્ક ટ્રાફિફ મૉનિટર કરી શકે છે. વિગતો માટે ટૅપ કરો."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"ઍપ તમારા સ્થાનને ઍક્સેસ કરી શકે છે"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"વધુ જાણવા માટે તમારા IT વ્યવસ્થાપકનો સંપર્ક કરો"</string> <string name="geofencing_service" msgid="3826902410740315456">"જીઓફેન્સિંગ સેવા"</string> @@ -266,7 +266,7 @@ <string name="global_action_logout" msgid="6093581310002476511">"સત્ર સમાપ્ત કરો"</string> <string name="global_action_screenshot" msgid="2610053466156478564">"સ્ક્રીનશૉટ"</string> <string name="bugreport_title" msgid="8549990811777373050">"બગ રિપોર્ટ"</string> - <string name="bugreport_message" msgid="5212529146119624326">"આ, એક ઇ-મેઇલ સંદેશ તરીકે મોકલવા માટે, તમારા વર્તમાન ઉપકરણ સ્થિતિ વિશેની માહિતી એકત્રિત કરશે. એક બગ રિપોર્ટ પ્રારંભ કરીને તે મોકલવા માટે તૈયાર ન થઈ જાય ત્યાં સુધી તેમાં થોડો સમય લાગશે; કૃપા કરીને ધીરજ રાખો."</string> + <string name="bugreport_message" msgid="5212529146119624326">"આ, એક ઇ-મેઇલ મેસેજ તરીકે મોકલવા માટે, તમારા વર્તમાન ડિવાઇસના સ્ટેટસ વિશે માહિતી એકત્રિત કરશે. એક બગ રિપોર્ટના શરુ થવાથી લઈને મોકલવા માટે તૈયાર થવા સુધીની પ્રક્રિયામાં થોડો સમય લાગશે; કૃપા કરીને ધીરજ રાખો."</string> <string name="bugreport_option_interactive_title" msgid="7968287837902871289">"ક્રિયાપ્રતિક્રિયાત્મક રિપોર્ટ"</string> <string name="bugreport_option_interactive_summary" msgid="8493795476325339542">"મોટાભાગના સંજોગોમાં આનો ઉપયોગ કરો. તે રિપોર્ટની પ્રગતિને ટ્રૅક કરવા, સમસ્યા વિશે વધુ વિગતો દાખલ કરવાની અને સ્ક્રીનશૉટ્સ લેવાની મંજૂરી આપે છે. તે કેટલાક ઓછા ઉપયોગમાં આવતાં વિભાગો કે જે જાણ કરવામાં વધુ સમય લેતાં હોય તેને છોડી દઈ શકે છે."</string> <string name="bugreport_option_full_title" msgid="7681035745950045690">"પૂર્ણ રિપોર્ટ"</string> @@ -291,8 +291,8 @@ <string name="notification_channel_security" msgid="8516754650348238057">"સુરક્ષા"</string> <string name="notification_channel_car_mode" msgid="2123919247040988436">"કાર મોડ"</string> <string name="notification_channel_account" msgid="6436294521740148173">"એકાઉન્ટ સ્થિતિ"</string> - <string name="notification_channel_developer" msgid="1691059964407549150">"વિકાસકર્તા માટેના સંદેશા"</string> - <string name="notification_channel_developer_important" msgid="7197281908918789589">"ડેવલપર માટેના મહત્ત્વપૂર્ણ સંદેશા"</string> + <string name="notification_channel_developer" msgid="1691059964407549150">"ડેવલપર માટેના મેસેજ"</string> + <string name="notification_channel_developer_important" msgid="7197281908918789589">"ડેવલપર માટેના મહત્ત્વપૂર્ણ મેસેજ"</string> <string name="notification_channel_updates" msgid="7907863984825495278">"અપડેટ્સ"</string> <string name="notification_channel_network_status" msgid="2127687368725272809">"નેટવર્ક સ્થિતિ"</string> <string name="notification_channel_network_alerts" msgid="6312366315654526528">"નેટવર્ક ચેતવણીઓ"</string> @@ -324,7 +324,7 @@ <string name="permgrouplab_calendar" msgid="6426860926123033230">"કૅલેન્ડર"</string> <string name="permgroupdesc_calendar" msgid="6762751063361489379">"તમારા કેલેન્ડરને ઍક્સેસ કરવાની"</string> <string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string> - <string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS સંદેશા મોકલવાની અને જોવાની"</string> + <string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS મેસેજ મોકલો અને જુઓ"</string> <string name="permgrouplab_storage" msgid="17339216290379241">"ફાઇલો"</string> <string name="permgroupdesc_storage" msgid="5378659041354582769">"તમારા ડિવાઇસ પરની ફાઇલો ઍક્સેસ કરો"</string> <string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"મ્યુઝિક અને ઑડિયો"</string> @@ -379,28 +379,28 @@ <string name="permdesc_processOutgoingCalls" msgid="7833149750590606334">"એપ્લિકેશનને આઉટગોઇંગ કૉલ દરમિયાન કૉલને એક અલગ નંબર પર રીડાયરેક્ટ કરવા અથવા કૉલને સંપૂર્ણપણે છોડી દેવાનાં વિકલ્પ સાથે ડાયલ થઈ રહેલા નંબરને જોવાની મંજૂરી આપે છે."</string> <string name="permlab_answerPhoneCalls" msgid="4131324833663725855">"ફોન કૉલને જવાબ આપો"</string> <string name="permdesc_answerPhoneCalls" msgid="894386681983116838">"ઍપ્લિકેશનને ઇનકમિંગ ફોન કૉલને જવાબ આપવાની મંજૂરી આપે છે."</string> - <string name="permlab_receiveSms" msgid="505961632050451881">"ટેક્સ્ટ સંદેશા (SMS) પ્રાપ્ત કરો"</string> - <string name="permdesc_receiveSms" msgid="1797345626687832285">"ઍપ્લિકેશનને SMS સંદેશા પ્રાપ્ત કરવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આનો અર્થ એ કે ઍપ્લિકેશન તમને દર્શાવ્યા વિના તમારા ઉપકરણ પર મોકલેલ સંદેશાઓનું નિરીક્ષણ કરી શકે છે અથવા કાઢી નાખી શકે છે."</string> - <string name="permlab_receiveMms" msgid="4000650116674380275">"ટેક્સ્ટ સંદેશા (MMS) પ્રાપ્ત કરો"</string> - <string name="permdesc_receiveMms" msgid="958102423732219710">"ઍપ્લિકેશનને MMS સંદેશા પ્રાપ્ત કરવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આનો અર્થ એ કે ઍપ્લિકેશન તમને દર્શાવ્યા વિના તમારા ઉપકરણ પર મોકલેલ સંદેશાઓનું નિરીક્ષણ કરી શકે છે અથવા કાઢી નાખી શકે છે."</string> - <string name="permlab_bindCellBroadcastService" msgid="586746677002040651">"સેલ બ્રોડકાસ્ટ સંદેશા ફૉરવર્ડ કરો"</string> - <string name="permdesc_bindCellBroadcastService" msgid="6540910200973641606">"સેલ બ્રોડકાસ્ટ સંદેશા પ્રાપ્ત થાય કે તરત ફૉરવર્ડ કરવા માટે સેલ બ્રોડકાસ્ટ મૉડ્યૂલ સાથે પ્રતિબદ્ધ થવા બાબતે ઍપને મંજૂરી આપે છે. તમને કટોકટીની પરિસ્થિતિની ચેતવણી આપવા માટે સેલ બ્રોડકાસ્ટ અલર્ટ અમુક સ્થાનોમાં ડિલિવર કરવામાં આવે છે. કટોકટી અંગેનો સેલ બ્રોડકાસ્ટ પ્રાપ્ત થાય, ત્યારે દુર્ભાવનાપૂર્ણ ઍપ તમારા ડિવાઇસના કાર્યપ્રદર્શન અથવા ઑપરેશનમાં વિક્ષેપ પાડે તેમ બની શકે છે."</string> + <string name="permlab_receiveSms" msgid="505961632050451881">"ટેક્સ્ટ મેસેજ (SMS) મેળવો"</string> + <string name="permdesc_receiveSms" msgid="1797345626687832285">"ઍપને SMS મેસેજ મેળવવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આનો અર્થ એ કે ઍપ તમને દર્શાવ્યા વિના તમારા ડિવાઇસ પર મોકલેલા મેસેજનું નિરીક્ષણ કરી શકે છે અથવા કાઢી નાખી શકે છે."</string> + <string name="permlab_receiveMms" msgid="4000650116674380275">"ટેક્સ્ટ મેસેજ (MMS) મેળવો"</string> + <string name="permdesc_receiveMms" msgid="958102423732219710">"ઍપને MMS મેસેજ પ્રાપ્ત કરવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આનો અર્થ એ કે ઍપ તમને દર્શાવ્યા વિના તમારા ડિવાઇસ પર મોકલેલા મેસેજને મૉનિટર કરી શકે છે અથવા ડિલીટ કરી શકે છે."</string> + <string name="permlab_bindCellBroadcastService" msgid="586746677002040651">"સેલ બ્રોડકાસ્ટ મેસેજ ફૉરવર્ડ કરો"</string> + <string name="permdesc_bindCellBroadcastService" msgid="6540910200973641606">"સેલ બ્રોડકાસ્ટ મેસેજ પ્રાપ્ત થાય કે તરત ફૉરવર્ડ કરવા માટે સેલ બ્રોડકાસ્ટ મૉડ્યૂલ સાથે પ્રતિબદ્ધ થવા બાબતે ઍપને મંજૂરી આપે છે. તમને કટોકટીની પરિસ્થિતિની ચેતવણી આપવા માટે સેલ બ્રોડકાસ્ટ અલર્ટ અમુક સ્થાનોમાં ડિલિવર કરવામાં આવે છે. કટોકટી અંગેનો સેલ બ્રોડકાસ્ટ પ્રાપ્ત થાય, ત્યારે દુર્ભાવનાપૂર્ણ ઍપ તમારા ડિવાઇસના કાર્યપ્રદર્શન અથવા ઑપરેશનમાં વિક્ષેપ પાડે તેમ બની શકે છે."</string> <string name="permlab_manageOngoingCalls" msgid="281244770664231782">"ચાલી રહેલા કૉલ મેનેજ કરો"</string> <string name="permdesc_manageOngoingCalls" msgid="7003138133829915265">"ઍપને તમારા ડિવાઇસ પર ચાલુ કૉલ વિશેની વિગતો જોવાની અને આ કૉલને નિયંત્રિત કરવાની મંજૂરી આપે છે."</string> <string name="permlab_accessLastKnownCellId" msgid="7638226620825665130">"છેલ્લી જ્ઞાત સેલ ઓળખને ઍક્સેસ કરો."</string> <string name="permdesc_accessLastKnownCellId" msgid="6664621339249308857">"ઍપને ટેલિફોન દ્વારા પ્રદાન કરવામાં આવેલી છેલ્લી જ્ઞાત સેલ ઓળખને ઍક્સેસ કરવાની મંજૂરી આપે છે."</string> - <string name="permlab_readCellBroadcasts" msgid="5869884450872137693">"સેલ બ્રોડકાસ્ટ સંદેશા વાંચો"</string> + <string name="permlab_readCellBroadcasts" msgid="5869884450872137693">"સેલ બ્રોડકાસ્ટ મેસેજ વાંચો"</string> <string name="permdesc_readCellBroadcasts" msgid="672513437331980168">"ઍપ તમારા ડિવાઇસ દ્વારા પ્રાપ્ત થયેલ સેલ બ્રોડકાસ્ટ સંદેશાને વાંચવાની મંજૂરી આપે છે. સેલ બ્રોડકાસ્ટ ચેતવણીઓ તમને ઇમર્જન્સીની સ્થિતિઓ અંગે ચેતવવા માટે કેટલાક સ્થાનોમાં વિતરિત થાય છે. જ્યારે ઇમર્જન્સીનો સેલ બ્રોડકાસ્ટ પ્રાપ્ત થાય ત્યારે દુર્ભાવનાપૂર્ણ ઍપ તમારા ડિવાઇસના કાર્યપ્રદર્શન અથવા ઓપરેશનમાં હસ્તક્ષેપ કરી શકે છે."</string> <string name="permlab_subscribedFeedsRead" msgid="217624769238425461">"સબ્સ્ક્રાઇબ કરેલ ફીડ્સ વાંચો"</string> <string name="permdesc_subscribedFeedsRead" msgid="6911349196661811865">"એપ્લિકેશનને હાલમાં સમન્વયિત ફીડ્સ વિશે વિગતો મેળવવાની મંજૂરી આપે છે."</string> - <string name="permlab_sendSms" msgid="7757368721742014252">"SMS સંદેશા મોકલો અને જુઓ"</string> - <string name="permdesc_sendSms" msgid="6757089798435130769">"એપ્લિકેશનને SMS સંદેશા મોકલવાની મંજૂરી આપે છે. આના પરિણામે અનપેક્ષિત શુલ્ક લાગી શકે છે. દુર્ભાવનાપૂર્ણ ઍપ્લિકેશનો તમારી પુષ્ટિ વિના સંદેશા મોકલીને તમારા નાણા ખર્ચાવી શકે છે."</string> - <string name="permlab_readSms" msgid="5164176626258800297">"તમારા ટેક્સ્ટ સંદેશા (SMS અથવા MMS) વાંચો"</string> - <string name="permdesc_readSms" product="tablet" msgid="7912990447198112829">"આ ઍપ્લિકેશન, તમારા ટેબ્લેટ પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) સંદેશા વાંચી શકે છે."</string> - <string name="permdesc_readSms" product="tv" msgid="3054753345758011986">"આ ઍપ, તમારા Android TV ડિવાઇસ પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) સંદેશા વાંચી શકે છે."</string> - <string name="permdesc_readSms" product="default" msgid="774753371111699782">"આ ઍપ્લિકેશન, તમારા ફોન પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) સંદેશા વાંચી શકે છે."</string> - <string name="permlab_receiveWapPush" msgid="4223747702856929056">"ટેક્સ્ટ સંદેશા (WAP) પ્રાપ્ત કરો"</string> - <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"એપ્લિકેશનને WAP સંદેશા પ્રાપ્ત કરવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આ પરવાનગીમાં તમને દર્શાવ્યા વિના તમને મોકલેલ સંદેશાઓનું નિરીક્ષણ કરવાની અને કાઢી નાખવાની ક્ષમતાનો સમાવેશ થાય છે."</string> + <string name="permlab_sendSms" msgid="7757368721742014252">"SMS મેસેજ મોકલો અને જુઓ"</string> + <string name="permdesc_sendSms" msgid="6757089798435130769">"ઍપને SMS મેસેજ મોકલવાની મંજૂરી આપે છે. આના પરિણામે અનપેક્ષિત શુલ્ક લાગી શકે છે. દુર્ભાવનાપૂર્ણ ઍપ તમારા કન્ફર્મેશન વિના મેસેજ મોકલીને તમારા નાણા ખર્ચાવી શકે છે."</string> + <string name="permlab_readSms" msgid="5164176626258800297">"તમારા ટેક્સ્ટ મેસેજ (SMS અથવા MMS) વાંચો"</string> + <string name="permdesc_readSms" product="tablet" msgid="7912990447198112829">"આ ઍપ, તમારા ટેબ્લેટ પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) મેસેજ વાંચી શકે છે."</string> + <string name="permdesc_readSms" product="tv" msgid="3054753345758011986">"આ ઍપ, તમારા Android TV ડિવાઇસ પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) મેસેજ વાંચી શકે છે."</string> + <string name="permdesc_readSms" product="default" msgid="774753371111699782">"આ ઍપ, તમારા ફોન પર સંગ્રહિત તમામ SMS (ટેક્સ્ટ) મેસેજ વાંચી શકે છે."</string> + <string name="permlab_receiveWapPush" msgid="4223747702856929056">"ટેક્સ્ટ મેસેજ (WAP) મેળવો"</string> + <string name="permdesc_receiveWapPush" msgid="1638677888301778457">"ઍપને WAP મેસેજ મેળવવાની અને તેના પર પ્રક્રિયા કરવાની મંજૂરી આપે છે. આ પરવાનગીમાં તમને દર્શાવ્યા વિના તમને મોકલેલા મેસેજનું નિરીક્ષણ કરવાની અને ડિલીટ કરવાની ક્ષમતાનો સમાવેશ થાય છે."</string> <string name="permlab_getTasks" msgid="7460048811831750262">"ચાલુ ઍપ્લિકેશનો પુનઃપ્રાપ્ત કરો"</string> <string name="permdesc_getTasks" msgid="7388138607018233726">"એપ્લિકેશનને વર્તમાનમાં અને તાજેતરમાં ચાલી રહેલ Tasks વિશેની વિગતવાર માહિતી પુનઃપ્રાપ્ત કરવાની મંજૂરી આપે છે. આ એપ્લિકેશનને ઉપકરણ પર કઈ એપ્લિકેશન્સનો ઉપયોગ થાય છે તેના વિશેની માહિતી શોધવાની મંજૂરી આપી શકે છે."</string> <string name="permlab_manageProfileAndDeviceOwners" msgid="639849495253987493">"પ્રોફાઇલ અને ડિવાઇસ માલિકોને મેનેજ કરો"</string> @@ -492,9 +492,9 @@ <string name="permdesc_readCalendar" product="tv" msgid="5811726712981647628">"આ ઍપ, તમારા Android TV ડિવાઇસ પર સંગ્રહિત બધા કૅલેન્ડર ઇવેન્ટને વાંચી શકે છે અને તમારા કૅલેન્ડર ડેટાને શેર કરી અથવા સાચવી શકે છે."</string> <string name="permdesc_readCalendar" product="default" msgid="9118823807655829957">"આ ઍપ્લિકેશન, તમારા ફોન પર સંગ્રહિત તમામ કૅલેન્ડર ઇવેન્ટ્સને વાંચી શકે છે અને તમારા કૅલેન્ડર ડેટાને શેર કરી અથવા સાચવી શકે છે."</string> <string name="permlab_writeCalendar" msgid="6422137308329578076">"કૅલેન્ડર ઇવેન્ટ્સ ઉમેરો અથવા સંશોધિત કરો અને માલિકની જાણ બહાર અતિથિઓને ઇમેઇલ મોકલો"</string> - <string name="permdesc_writeCalendar" product="tablet" msgid="8722230940717092850">"આ ઍપ્લિકેશન, તમારા ટેબ્લેટ પર કૅલેન્ડર ઇવેન્ટ્સ ઉમેરી, દૂર કરી અથવા બદલી શકે છે. આ ઍપ્લિકેશન, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં સંદેશા મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના ઇવેન્ટ્સ બદલી શકે છે."</string> - <string name="permdesc_writeCalendar" product="tv" msgid="951246749004952706">"આ ઍપ, તમારા Android TV ડિવાઇસ પર કૅલેન્ડર ઇવેન્ટ ઉમેરી, કાઢી નાખી અથવા બદલી શકે છે. આ ઍપ, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં સંદેશા મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના ઇવેન્ટ બદલી શકે છે."</string> - <string name="permdesc_writeCalendar" product="default" msgid="5416380074475634233">"આ ઍપ્લિકેશન, તમારા ફોન પર કૅલેન્ડર ઇવેન્ટ્સ ઉમેરી, દૂર કરી અથવા બદલી શકે છે. આ ઍપ્લિકેશન, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં સંદેશા મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના ઇવેન્ટ્સ બદલી શકે છે."</string> + <string name="permdesc_writeCalendar" product="tablet" msgid="8722230940717092850">"આ ઍપ, તમારા ટેબ્લેટ પર કૅલેન્ડર ઇવેન્ટ ઉમેરી, દૂર કરી અથવા બદલી શકે છે. આ ઍપ, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં મેસેજ મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના કૅલેન્ડર બદલી શકે છે."</string> + <string name="permdesc_writeCalendar" product="tv" msgid="951246749004952706">"આ ઍપ, તમારા Android TV ડિવાઇસ પર કૅલેન્ડર ઇવેન્ટ ઉમેરી, કાઢી નાખી અથવા બદલી શકે છે. આ ઍપ, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં મેસેજ મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના ઇવેન્ટ બદલી શકે છે."</string> + <string name="permdesc_writeCalendar" product="default" msgid="5416380074475634233">"આ ઍપ, તમારા ફોન પર કૅલેન્ડર ઇવેન્ટ ઉમેરી, દૂર કરી અથવા બદલી શકે છે. આ ઍપ, કૅલેન્ડર માલિકો તરફથી આવતાં હોય તેવા લાગતાં મેસેજ મોકલી શકે છે અથવા તેમના માલિકોને સૂચિત કર્યા વિના ઇવેન્ટ બદલી શકે છે."</string> <string name="permlab_accessLocationExtraCommands" msgid="5162339812057983988">"વધારાના સ્થાન પ્રદાતા આદેશોને ઍક્સેસ કરો"</string> <string name="permdesc_accessLocationExtraCommands" msgid="355369611979907967">"એપ્લિકેશનને વધારાના સ્થાન પ્રદાતા આદેશોને ઍક્સેસ કરવાની મંજૂરી આપે છે. આ એપ્લિકેશનને GPS અથવા અન્ય સ્થાન સ્રોતોના ઓપરેશનમાં દખલ કરવાની મંજૂરી આપી શકે છે."</string> <string name="permlab_accessFineLocation" msgid="6426318438195622966">"ફૉરગ્રાઉન્ડમાં ફક્ત ચોક્કસ સ્થાન ઍક્સેસ કરો"</string> @@ -1101,7 +1101,7 @@ <string name="permlab_setAlarm" msgid="1158001610254173567">"એલાર્મ સેટ કરો"</string> <string name="permdesc_setAlarm" msgid="2185033720060109640">"એપ્લિકેશનને ઇન્સ્ટોલ કરેલ અલાર્મ ઘડિયાળ એપ્લિકેશનમાં અલાર્મ સેટ કરવાની મંજૂરી આપે છે. કેટલીક અલાર્મ ઘડિયાળ ઍપ્લિકેશનો, આ સુવિધા લાગુ કરી શકતી નથી."</string> <string name="permlab_addVoicemail" msgid="4770245808840814471">"વૉઇસમેઇલ ઉમેરો"</string> - <string name="permdesc_addVoicemail" msgid="5470312139820074324">"એપ્લિકેશનને તમારા વૉઇસમેઇલ ઇનબોક્સ પર સંદેશા ઉમેરવાની મંજૂરી આપે છે."</string> + <string name="permdesc_addVoicemail" msgid="5470312139820074324">"એપને તમારા વૉઇસમેઇલ ઇનબોક્સ પર મેસેજ ઉમેરવાની મંજૂરી આપે છે."</string> <string name="pasted_from_clipboard" msgid="7355790625710831847">"<xliff:g id="PASTING_APP_NAME">%1$s</xliff:g> દ્વારા તમારા ક્લિપબોર્ડ પરથી પેસ્ટ કરવામાં આવ્યું"</string> <string name="more_item_label" msgid="7419249600215749115">"વધુ"</string> <string name="prepend_shortcut_label" msgid="1743716737502867951">"મેનૂ+"</string> @@ -1357,11 +1357,11 @@ <string name="accept" msgid="5447154347815825107">"સ્વીકારો"</string> <string name="decline" msgid="6490507610282145874">"નકારો"</string> <string name="select_character" msgid="3352797107930786979">"અક્ષર શામેલ કરો"</string> - <string name="sms_control_title" msgid="4748684259903148341">"SMS સંદેશા મોકલી રહ્યું છે"</string> - <string name="sms_control_message" msgid="6574313876316388239">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> મોટા પ્રમાણમાં SMS સંદેશા મોકલી રહ્યું છે. શું તમે સંદેશા મોકલવાનું ચાલુ રાખવા માટે આ એપ્લિકેશનને મંજૂરી આપવા માગો છો?"</string> + <string name="sms_control_title" msgid="4748684259903148341">"SMS મેસેજ મોકલી રહ્યાં છે"</string> + <string name="sms_control_message" msgid="6574313876316388239">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> મોટા પ્રમાણમાં SMS મેસેજ મોકલી રહ્યું છે. શું તમે મેસેજ મોકલવાનું ચાલુ રાખવા માટે આ એપને મંજૂરી આપવા માગો છો?"</string> <string name="sms_control_yes" msgid="4858845109269524622">"મંજૂરી આપો"</string> <string name="sms_control_no" msgid="4845717880040355570">"નકારો"</string> - <string name="sms_short_code_confirm_message" msgid="1385416688897538724">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> તમને <b><xliff:g id="DEST_ADDRESS">%2$s</xliff:g></b> પર સંદેશ મોકલવા માગે છે."</string> + <string name="sms_short_code_confirm_message" msgid="1385416688897538724">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>, <b><xliff:g id="DEST_ADDRESS">%2$s</xliff:g></b> પર મેસેજ મોકલવા માગે છે."</string> <string name="sms_short_code_details" msgid="2723725738333388351">"આનાથી તમારા મોબાઇલ એકાઉન્ટ પર "<b>"શુલ્ક લાગી શકે છે"</b>"."</string> <string name="sms_premium_short_code_details" msgid="1400296309866638111"><b>"આનાથી તમારા મોબાઇલ એકાઉન્ટ પર શુલ્ક લાગશે."</b></string> <string name="sms_short_code_confirm_allow" msgid="920477594325526691">"મોકલો"</string> @@ -1433,7 +1433,7 @@ <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"ભાષા અને લેઆઉટ પસંદ કરવા માટે ટૅપ કરો"</string> <string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> - <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"અન્ય ઍપથી ઉપર બતાવો"</string> + <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"અન્ય ઍપની ઉપર ડિસ્પ્લે કરો"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> અન્ય ઍપ્લિકેશનોની ઉપર પ્રદર્શિત થઈ રહ્યું છે"</string> <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> અન્ય ઍપ્લિકેશનો પર દેખાઈ છે"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"જો તમે નથી ઇચ્છતા કે <xliff:g id="NAME">%s</xliff:g> આ સુવિધાનો ઉપયોગ કરે, તો સેટિંગ ખોલવા માટે ટૅપ કરો અને તેને બંધ કરો."</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"પિન ખૂબ નાનો છે. ઓછામાં ઓછો 4 અંકનો હોવો આવશ્યક છે."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"પછી ફરી પ્રયાસ કરો"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"પૂર્ણ સ્ક્રીન પર જુઓ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"બહાર નીકળવા માટે, તમારી સ્ક્રીનની સૌથી ઉપરથી નીચેની તરફ સ્વાઇપ કરો"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"સમજાઈ ગયું"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"બહેતર વ્યૂ માટે ફેરવો"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"બહેતર વ્યૂ માટે, પૂર્ણ સ્ક્રીનમાં <xliff:g id="NAME">%s</xliff:g> ખોલો"</string> @@ -2028,7 +2027,7 @@ <string name="deprecated_target_sdk_message" msgid="5246906284426844596">"Androidના કોઈ જૂના વર્ઝન માટે આ ઍપ બનાવવામાં આવી હતી. તે કદાચ યોગ્ય રીતે કામ કરતી નથી અને તેમાં નવીનતમ સુરક્ષા અને પ્રાઇવસી સંબંધિત સંરક્ષણો શામેલ નથી. કોઈ અપડેટ ચેક કરો અથવા ઍપના ડેવલપરનો સંપર્ક કરો."</string> <string name="deprecated_target_sdk_app_store" msgid="8456784048558808909">"અપડેટ માટે તપાસો"</string> <string name="deprecated_abi_message" msgid="6820548011196218091">"આ ઍપ Androidના નવીનતમ વર્ઝન સાથે સુસંગત નથી. કોઈ અપડેટ ચેક કરો અથવા ઍપના ડેવલપરનો સંપર્ક કરો."</string> - <string name="new_sms_notification_title" msgid="6528758221319927107">"તમારી પાસે નવા સંદેશા છે"</string> + <string name="new_sms_notification_title" msgid="6528758221319927107">"તમારી પાસે નવા મેસેજ છે"</string> <string name="new_sms_notification_content" msgid="3197949934153460639">"જોવા માટે SMS ઍપ્લિકેશન ખોલો"</string> <string name="profile_encrypted_title" msgid="9001208667521266472">"કેટલીક કાર્યક્ષમતા મર્યાદિત હોઈ શકે છે"</string> <string name="profile_encrypted_detail" msgid="5279730442756849055">"કાર્યાલયની પ્રોફાઇલ લૉક કરી"</string> @@ -2144,7 +2143,7 @@ <string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"ઓકે"</string> <string name="nas_upgrade_notification_disable_action" msgid="3794833210043497982">"બંધ કરો"</string> <string name="nas_upgrade_notification_learn_more_action" msgid="7011130656195423947">"વધુ જાણો"</string> - <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Android 12માં Android માટે અનુકૂળ નોટિફિકેશનને બદલે વધુ સારા નોટિફિકેશન છે. આ સુવિધા સૂચિત ક્રિયાઓ અને જવાબો બતાવે છે તેમજ તમારા નોટિફિકેશનની યોગ્ય ગોઠવણી કરે છે.\n\nવધુ સારા નોટિફિકેશન સંપર્કોના નામ અને સંદેશા જેવી વ્યક્તિગત માહિતી સહિત નોટિફિકેશનનું બધું કન્ટેન્ટ ઍક્સેસ કરી શકે છે. આ સુવિધા ફોન કૉલના જવાબ આપવા કે \'ખલેલ પાડશો નહીં\'નું નિયંત્રણ કરવા જેવા નોટિફિકેશન છોડવાની કે તેનો જવાબ આપવાની ક્રિયા પણ કરી શકે છે."</string> + <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Android 12માં Android માટે અનુકૂળ નોટિફિકેશનને બદલે વધુ સારા નોટિફિકેશન છે. આ સુવિધા સૂચિત ક્રિયાઓ અને જવાબો બતાવે છે તેમજ તમારા નોટિફિકેશનની યોગ્ય ગોઠવણી કરે છે.\n\nવધુ સારા નોટિફિકેશન સંપર્કોના નામ અને મેસેજ જેવી વ્યક્તિગત માહિતી સહિત નોટિફિકેશનનું બધું કન્ટેન્ટ ઍક્સેસ કરી શકે છે. આ સુવિધા ફોન કૉલના જવાબ આપવા કે \'ખલેલ પાડશો નહીં\'નું નિયંત્રણ કરવા જેવા નોટિફિકેશન છોડવાની કે તેનો જવાબ આપવાની ક્રિયા પણ કરી શકે છે."</string> <string name="dynamic_mode_notification_channel_name" msgid="2986926422100223328">"રૂટિન મોડની માહિતીનું નોટિફિકેશન"</string> <string name="dynamic_mode_notification_title" msgid="1388718452788985481">"બૅટરી સેવરની સુવિધા ચાલુ કરી છે"</string> <string name="dynamic_mode_notification_summary" msgid="1639031262484979689">"બૅટરીની આવરદા વધારવા માટે બૅટરીનો વપરાશ ઘટાડી રહ્યાં છીએ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"સ્ક્રીન પરના ઍક્સેસિબિલિટી શૉર્ટકટના પસંદકર્તા"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ઍક્સેસિબિલિટી શૉર્ટકટ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"નોટિફિકેશન શેડ છોડી દો"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"મેનૂ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"મીડિયા ચલાવો/થોભાવો"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"ડી-પૅડ ઉપર"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"ડી-પૅડ નીચે"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"ડી-પૅડ ડાબે"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"તેની કામ કરવાની રીત"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"બાકી..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ફિંગરપ્રિન્ટ અનલૉક સુવિધાનું ફરી સેટઅપ કરો"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> યોગ્ય રીતે કામ કરતી ન હતી અને તેને ડિલીટ કરવામાં આવી હતી"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> અને <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> યોગ્ય રીતે કામ કરતી ન હતી અને તેને ડિલીટ કરવામાં આવી હતી"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> બરાબર કામ કરતી ન હતી અને તેને ડિલીટ કરવામાં આવી હતી. તમારા ફોનને ફિંગરપ્રિન્ટ વડે અનલૉક કરવા માટે, તેનું ફરીથી સેટઅપ કરો."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> અને <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> બરાબર કામ કરતી ન હતી અને તેને ડિલીટ કરવામાં આવી હતી. તમારા ફોનને તમારી ફિંગરપ્રિન્ટ વડે અનલૉક કરવા માટે, તેનું ફરીથી સેટઅપ કરો."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"હવે <xliff:g id="FINGERPRINT">%s</xliff:g> ઓળખી શકાતી નથી."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"હવે <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> અને <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ઓળખી શકાતી નથી."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"હવે <xliff:g id="FINGERPRINT">%s</xliff:g> ઓળખી શકાતી નથી. ફિંગરપ્રિન્ટ અનલૉક સુવિધાનું ફરી સેટઅપ કરો."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"હવે <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> અને <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ઓળખી શકાતી નથી. ફિંગરપ્રિન્ટ અનલૉક સુવિધાનું ફરી સેટઅપ કરો."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ફેસ અનલૉક સુવિધાનું ફરી સેટઅપ કરો"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"તમારા ચહેરાનું મૉડલ બરાબર કામ કરતું ન હતું અને તેને ડિલીટ કરવામાં આવ્યું હતું. તમારા ફોનને ચહેરા વડે અનલૉક કરવા માટે, તેનું ફરીથી સેટઅપ કરો."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"હવે તમારા ચહેરાનું મૉડલ ઓળખી શકાતું નથી. ફેસ અનલૉક સુવિધાનું ફરી સેટઅપ કરો."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"સેટઅપ કરો"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"હમણાં નહીં"</string> </resources> diff --git a/core/res/res/values-hi/strings.xml b/core/res/res/values-hi/strings.xml index 39e66250f94e..e938828717f0 100644 --- a/core/res/res/values-hi/strings.xml +++ b/core/res/res/values-hi/strings.xml @@ -629,7 +629,7 @@ <string name="permlab_useBiometric" msgid="6314741124749633786">"बायोमीट्रिक हार्डवेयर इस्तेमाल करने दें"</string> <string name="permdesc_useBiometric" msgid="7502858732677143410">"पुष्टि के लिए, ऐप्लिकेशन को बायोमीट्रिक हार्डवेयर इस्तेमाल करने की मंज़ूरी दें"</string> <string name="permlab_manageFingerprint" msgid="7432667156322821178">"फ़िंगरप्रिंट हार्डवेयर को प्रबंधित करें"</string> - <string name="permdesc_manageFingerprint" msgid="2025616816437339865">"फ़िंगरप्रिंट वाले टेम्पलेट का इस्तेमाल करने के लिए जोड़ने और हटाने के लिए ऐप को तरीके शुरू करने देती है."</string> + <string name="permdesc_manageFingerprint" msgid="2025616816437339865">"फ़िंगरप्रिंट वाले टेंप्लेट का इस्तेमाल करने के लिए जोड़ने और हटाने के लिए ऐप को तरीके शुरू करने देती है."</string> <string name="permlab_useFingerprint" msgid="1001421069766751922">"फ़िंगरप्रिंट हार्डवेयर का उपयोग करें"</string> <string name="permdesc_useFingerprint" msgid="412463055059323742">"ऐप के प्रमाणीकरण के लिए फ़िंगरप्रिंट हार्डवेयर का उपयोग करने देती है"</string> <string name="permlab_audioWrite" msgid="8501705294265669405">"अपने संगीत संग्रह में बदलाव करने की अनुमति दें"</string> @@ -1198,7 +1198,7 @@ <string name="low_internal_storage_view_text" msgid="8172166728369697835">"हो सकता है कुछ सिस्टम फ़ंक्शन काम नहीं करें"</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"सिस्टम के लिए ज़रूरी मेमोरी नहीं है. पक्का करें कि आपके पास 250एमबी की खाली जगह है और फिर से शुरू करें."</string> <string name="app_running_notification_title" msgid="8985999749231486569">"<xliff:g id="APP_NAME">%1$s</xliff:g> चल रहा है"</string> - <string name="app_running_notification_text" msgid="5120815883400228566">"ज़्यादा जानकारी के लिए या ऐप्लिकेशन को रोकने के लिए छूएं."</string> + <string name="app_running_notification_text" msgid="5120815883400228566">"ऐप्लिकेशन को रोकने या ज़्यादा जानकारी के लिए टैप करें."</string> <string name="ok" msgid="2646370155170753815">"ठीक है"</string> <string name="cancel" msgid="6908697720451760115">"रद्द करें"</string> <string name="yes" msgid="9069828999585032361">"ठीक है"</string> @@ -1435,8 +1435,8 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"दूसरे ऐप्लिकेशन के ऊपर दिखाए जाने का ऐक्सेस"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> अन्य ऐप्लिकेशन के ऊपर दिखाई दे रहा है"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> अन्य ऐप पर दिखाई दे रहा है"</string> - <string name="alert_windows_notification_message" msgid="6538171456970725333">"अगर आप नहीं चाहते कि <xliff:g id="NAME">%s</xliff:g> इस सुविधा का उपयोग करे, तो सेटिंग खोलने और उसे बंद करने के लिए टैप करें."</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> दूसरे ऐप के ऊपर दिख रहा है"</string> + <string name="alert_windows_notification_message" msgid="6538171456970725333">"अगर <xliff:g id="NAME">%s</xliff:g> को इस सुविधा का इस्तेमाल करने की अनुमति नहीं देनी है, तो इसे बंद करने के लिए सेटिंग पर जाएं."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"बंद करें"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"<xliff:g id="NAME">%s</xliff:g> ढूंढा जा रहा है…"</string> <string name="ext_media_checking_notification_message" msgid="2231566971425375542">"मौजूदा सामग्री की जाँच की जा रही है"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN बहुत छोटा है. कम से कम 4 अंकों का होना चाहिए."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"बाद में फिर से प्रयास करें"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"आप पूरे स्क्रीन पर देख रहे हैं"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"बंद करने के लिए, स्क्रीन के सबसे ऊपरी हिस्से से नीचे की ओर स्वाइप करें"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ठीक है"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"बेहतर व्यू पाने के लिए, डिवाइस की स्क्रीन को घुमाएं"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"बेहतर व्यू पाने के लिए <xliff:g id="NAME">%s</xliff:g> को फ़ुल स्क्रीन में खोलें"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"स्क्रीन पर दिखने वाले सुलभता के शॉर्टकट को चुनने का मेन्यू"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"सुलभता का शॉर्टकट"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"नोटिफ़िकेशन शेड खारिज करें"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"मेन्यू"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"मीडिया चलाएं/रोकें"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"डी-पैड का ऊपर वाला बटन"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"डी-पैड का नीचे वाला बटन"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"डी-पैड का बाईं ओर वाला बटन"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"यह सेटिंग कैसे काम करती है"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"प्रोसेस जारी है..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"फ़िंगरप्रिंट अनलॉक की सुविधा दोबारा सेट अप करें"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"अच्छे से काम न करने की वजह से <xliff:g id="FINGERPRINT">%s</xliff:g> को मिटा दिया गया"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"अच्छे से काम न करने की वजह से, <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> और <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> को मिटा दिया गया"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"अच्छे से काम न करने की वजह से <xliff:g id="FINGERPRINT">%s</xliff:g> को मिटा दिया गया. फ़िंगरप्रिंट की मदद से फ़ोन अनलॉक करने के लिए, फ़िंगरप्रिंट अनलॉक की सुविधा को दोबारा सेट अप करें."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"अच्छे से काम न करने की वजह से, <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> और <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> को मिटा दिया गया. फ़िंगरप्रिंट की मदद से फ़ोन अनलॉक करने के लिए, फ़िंगरप्रिंट अनलॉक की सुविधा दोबारा सेट अप करें."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"अब <xliff:g id="FINGERPRINT">%s</xliff:g> की पहचान नहीं की जा सकती."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"अब <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> और <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> की पहचान नहीं की जा सकती."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"अब <xliff:g id="FINGERPRINT">%s</xliff:g> की पहचान नहीं की जा सकती. फ़िंगरप्रिंट अनलॉक की सुविधा दोबारा सेट अप करें."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"अब <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> और <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> की पहचान नहीं की जा सकती. फ़िंगरप्रिंट अनलॉक की सुविधा दोबारा सेट अप करें."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"फ़ेस अनलॉक की सुविधा को दोबारा सेट अप करें"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"अच्छे से काम न करने की वजह से, चेहरे का मॉडल मिटा दिया गया. फ़ेस अनलॉक की सुविधा की मदद से फ़ोन अनलॉक करने के लिए, इस सुविधा को दोबारा सेट अप करें."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"अब आपके चेहरे के मॉडल की पहचान नहीं की जा सकती. फ़ेस अनलॉक की सुविधा को दोबारा सेट अप करें."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"सेट अप करें"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"अभी नहीं"</string> </resources> diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml index 08ea4a294412..da87c1961bd3 100644 --- a/core/res/res/values-hr/strings.xml +++ b/core/res/res/values-hr/strings.xml @@ -204,7 +204,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"Administrator je ustupio uređaj za osobnu upotrebu"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"Privatni prostor je uklonjen"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"Vaša organizacija ne dopušta privatne prostore na ovom upravljanom uređaju."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"Uređaj je upravljan"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"Uređajem se upravlja"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"Vaša organizacija upravlja ovim uređajem i može nadzirati mrežni promet. Dodirnite za pojedinosti."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"Aplikacije mogu pristupiti vašoj lokaciji"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Obratite se IT administratoru da biste saznali više"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN je prekratak. Mora imati barem 4 znamenke."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Pokušajte ponovo kasnije"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Gledanje preko cijelog zaslona"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Za izlaz povucite prstom od vrha zaslona prema dolje"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Shvaćam"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Zakrenite kako biste bolje vidjeli"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otvorite aplikaciju <xliff:g id="NAME">%s</xliff:g> preko cijelog zaslona za bolji prikaz"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Alat za odabir prečaca pristupačnosti na zaslonu"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Prečac pristupačnosti"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Odbacivanje zaslona obavijesti"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Izbornik"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reproduciraj/pauziraj medijske sadržaje"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Gore na plohi za smjerove"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dolje na plohi za smjerove"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Lijevo na plohi za smjerove"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Kako to funkcionira"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Na čekanju..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Ponovno postavite otključavanje otiskom prsta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Otisak prsta <xliff:g id="FINGERPRINT">%s</xliff:g> nije dobro funkcionirao i izbrisan je"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Otisci prstiju <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu dobro funkcionirali i izbrisani su"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Otisak prsta <xliff:g id="FINGERPRINT">%s</xliff:g> nije dobro funkcionirao i izbrisan je. Ponovno ga postavite da biste otključali telefon otiskom prsta."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Otisci prstiju <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nisu dobro funkcionirali i izbrisani su. Ponovno ih postavite da biste otključali telefon otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> više se ne prepoznaje."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> više se ne prepoznaju."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> više se ne prepoznaje. Ponovo postavite otključavanje otiskom prsta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> više se ne prepoznaju. Ponovo postavite otključavanje otiskom prsta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Ponovno postavite otključavanje licem"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Model vašeg lica nije dobro funkcionirao i izbrisan je. Ponovno ga postavite da biste otključali telefon licem."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Vaš model lica više se ne prepoznaje. Ponovo postavite otključavanje licem."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Postavi"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne sad"</string> </resources> diff --git a/core/res/res/values-hu/strings.xml b/core/res/res/values-hu/strings.xml index 729fad90f993..50dd44da8703 100644 --- a/core/res/res/values-hu/strings.xml +++ b/core/res/res/values-hu/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"A PIN-kód túl rövid. Legalább 4 számjegyből kell állnia."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Próbálkozzon később"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Megtekintése teljes képernyőn"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"A kilépéshez csúsztasson gyorsan lefelé a képernyő tetejéről."</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Értem"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Forgassa el a jobb élmény érdekében"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"A jobb élmény érdekében teljes képernyős módban nyissa meg a(z) <xliff:g id="NAME">%s</xliff:g> alkalmazást"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Képernyőn megjelenő kisegítő lehetőségekre vonatkozó parancsválasztó"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Kisegítő lehetőségek gyorsparancsa"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Értesítési felület bezárása"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menü"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Médialejátszás/szüneteltetés"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad – fel"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad – le"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad – balra"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Privát terület"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Bizalmas értesítéstartalom elrejtve"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"A biztonság érdekében a képernyőmegosztástól elrejtett alkalmazástartalom"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Apptartalom elrejtve a megosztástól a biztonság érdekében"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Automatikusan csatlakozva a műholdhoz"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Küldhet és fogadhat üzeneteket mobil- és Wi-Fi-hálózat nélkül is"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"A Messages megnyitása"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Hogyan működik?"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Függőben…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"A Feloldás ujjlenyomattal funkció újbóli beállítása"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"A(z) <xliff:g id="FINGERPRINT">%s</xliff:g> nem működött megfelelően, ezért törölve lett"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"A(z) <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> és a(z) <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nem működtek megfelelően, ezért törölve lettek"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"A(z) <xliff:g id="FINGERPRINT">%s</xliff:g> nem működött megfelelően, ezért törölve lett. Állítsa be újra, hogy feloldhassa a telefonját az ujjlenyomata segítségével."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"A(z) <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> és a(z) <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nem működtek megfelelően, ezért törölve lettek. Állítsa be őket újra, hogy feloldhassa a telefonját az ujjlenyomata segítségével."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"A következő már nem felismerhető: <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"A következők már nem felismerhetők: <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> és <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"A következő már nem felismerhető: <xliff:g id="FINGERPRINT">%s</xliff:g>. Állítsa be újra a Feloldás ujjlenyomattal funkciót."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"A következők már nem felismerhetők: <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> és <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. Állítsa be újra a Feloldás ujjlenyomattal funkciót."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Állítsa be újra az Arcalapú feloldást"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Az arcmodellje nem működött megfelelően, ezért törölve lett. Állítsa be újra, hogy feloldhassa a telefonját az arca segítségével."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Az arcmodellje már nem felismerhető. Állítsa be újra az Arcalapú feloldást."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Beállítás"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Most nem"</string> </resources> diff --git a/core/res/res/values-hy/strings.xml b/core/res/res/values-hy/strings.xml index c3eec0fba6fe..199a4adc4332 100644 --- a/core/res/res/values-hy/strings.xml +++ b/core/res/res/values-hy/strings.xml @@ -525,7 +525,7 @@ <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Այս հավելվածը կարող է հետզանգեր ստանալ՝ ցանկացած տեսախցիկի բացվելու (կնշվի բացող հավելվածը) և փակվելու դեպքում։"</string> <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Թույլատրել հավելվածին կամ ծառայությանը օգտագործել որպես միջերեսի համակարգային օգտատեր։"</string> <string name="permdesc_cameraHeadlessSystemUser" msgid="6963163319710996412">"Այս հավելվածին ձեր տեսախցիկը հասանելի է որպես առանց միջերեսի համակարգային օգտատեր։"</string> - <string name="permlab_vibrate" msgid="8596800035791962017">"կառավարել թրթռումը"</string> + <string name="permlab_vibrate" msgid="8596800035791962017">"կառավարել թրթռոցը"</string> <string name="permdesc_vibrate" msgid="8733343234582083721">"Թույլ է տալիս հավելվածին կառավարել թրթռոցը:"</string> <string name="permdesc_vibrator_state" msgid="7050024956594170724">"Հավելվածին թույլ է տալիս օգտագործել սարքի թրթռալու ռեժիմը։"</string> <string name="permlab_callPhone" msgid="1798582257194643320">"ուղղակիորեն զանգել հեռախոսահամարներին"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-ը չափազանց կարճ է: Պետք է ունենա առնվազն 4 թվանիշ:"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Կրկին փորձեք մի փոքր ուշ"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Լիաէկրան դիտում"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Դուրս գալու համար էկրանի վերևից մատը սահեցրեք ներքև"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Պարզ է"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Պտտեք՝ դիտակերպը լավացնելու համար"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Բացեք <xliff:g id="NAME">%s</xliff:g> հավելվածը լիաէկրան ռեժիմում՝ դիտակերպը լավացնելու համար"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Հատուկ գործառույթների դյուրանցման ընտրիչ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Հատուկ գործառույթների դյուրանցում"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Փակել ծանուցումների վահանակը"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Ընտրացանկ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Նվագարկում/դադար"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad-ի «Վերև» կոճակ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad-ի «Ներքև» կոճակ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad-ի «Ձախ» կոճակ"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Մասնավոր տարածք"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Ծանուցման զգայուն բովանդակությունը թաքցված է"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Անվտանգության նկատառումներից ելնելով՝ հավելվածի բովանդակությունը թաքցվել է էկրանի ցուցադրումից"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Անվտանգության նկատառումներով՝ բովանդակությունը թաքցվել է ցուցադրումից"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Ավտոմատ միացել է արբանյակին"</string> - <string name="satellite_notification_summary" msgid="5207364139430767162">"Դուք կարող եք ուղարկել և ստանալ հաղորդագրություններ՝ առանց բջջային կամ Wi-Fi կապի"</string> + <string name="satellite_notification_summary" msgid="5207364139430767162">"Դուք կարող եք հաղորդագրություններ ուղարկել և ստանալ առանց բջջային կամ Wi-Fi կապի"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Բացել Messages-ը"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Ինչպես է դա աշխատում"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Առկախ է…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Նորից կարգավորեք մատնահետքով ապակողպումը"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"«<xliff:g id="FINGERPRINT">%s</xliff:g>» մատնահետքը հեռացվել է, քանի որ լավ չէր աշխատում"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"«<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>» և «<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>» մատնահետքերը հեռացվել են, քանի որ լավ չէին աշխատում"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"«<xliff:g id="FINGERPRINT">%s</xliff:g>» մատնահետքը հեռացվել է, քանի որ լավ չէր աշխատում։ Նորից կարգավորեք այն՝ ձեր հեռախոսը մատնահետքով ապակողպելու համար։"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"«<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>» և «<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>» մատնահետքերը հեռացվել են, քանի որ լավ չէին աշխատում։ Նորից կարգավորեք դրանք՝ ձեր հեռախոսը մատնահետքով ապակողպելու համար։"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> մատնահետքն այլևս չի կարող ճանաչվել։"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> և <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> մատնահետքերն այլևս չեն կարող ճանաչվել։"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> մատնահետքն այլևս չի կարող ճանաչվել։ Նորից կարգավորեք մատնահետքով ապակողպումը։"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> և <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> մատնահետքերն այլևս չեն կարող ճանաչվել։ Նորից կարգավորեք մատնահետքով ապակողպումը։"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Նորից կարգավորեք դեմքով ապակողպումը"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Ձեր դեմքի նմուշը հեռացվել է, քանի որ լավ չէր աշխատում։ Նորից կարգավորեք այն՝ ձեր հեռախոսը դեմքով ապակողպելու համար։"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Ձեր դեմքի նմուշն այլևս չի կարող ճանաչվել։ Նորից կարգավորեք դեմքով ապակողպումը։"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Կարգավորել"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ոչ հիմա"</string> </resources> diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml index 34a52e4f77ad..e6e81d81a275 100644 --- a/core/res/res/values-in/strings.xml +++ b/core/res/res/values-in/strings.xml @@ -203,7 +203,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"Admin melepaskan perangkat untuk penggunaan pribadi"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"Ruang privasi dihapus"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"Organisasi Anda tidak mengizinkan adanya ruang privasi di perangkat terkelola ini."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"Perangkat ini ada yang mengelola"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"Ini adalah perangkat terkelola"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"Organisasi mengelola perangkat ini dan mungkin memantau traffic jaringan. Ketuk untuk melihat detailnya."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"Aplikasi dapat mengakses lokasi Anda"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Hubungi admin IT untuk mempelajari lebih lanjut"</string> @@ -1665,7 +1665,7 @@ <string name="media_route_chooser_title_for_remote_display" msgid="3105906508794326446">"Transmisi layar ke perangkat"</string> <string name="media_route_chooser_searching" msgid="6119673534251329535">"Menelusuri perangkat…"</string> <string name="media_route_chooser_extended_settings" msgid="2506352159381327741">"Setelan"</string> - <string name="media_route_controller_disconnect" msgid="7362617572732576959">"Putuskan koneksi"</string> + <string name="media_route_controller_disconnect" msgid="7362617572732576959">"Berhenti hubungkan"</string> <string name="media_route_status_scanning" msgid="8045156315309594482">"Memindai..."</string> <string name="media_route_status_connecting" msgid="5845597961412010540">"Menghubungkan..."</string> <string name="media_route_status_available" msgid="1477537663492007608">"Tersedia"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN terlalu pendek. Minimal 4 digit."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Coba lagi nanti"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Melihat layar penuh"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Untuk keluar, geser ke bawah dari bagian atas layar"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Mengerti"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Putar posisi layar untuk mendapatkan tampilan yang lebih baik"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Buka <xliff:g id="NAME">%s</xliff:g> dalam layar penuh untuk mendapatkan tampilan yang lebih baik"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Pemilih Pintasan Aksesibilitas di layar"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Pintasan Aksesibilitas"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Tutup Menu Notifikasi"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Putar/Jeda Media"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Atas"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Bawah"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Kiri"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Ruang privasi"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Konten notifikasi sensitif disembunyikan"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Konten aplikasi disembunyikan dari berbagi layar untuk alasan keamanan"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Konten aplikasi disembunyikan dari berbagi layar karena alasan keamanan"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Menghubungkan otomatis ke satelit"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Anda dapat mengirim dan menerima pesan tanpa jaringan seluler atau Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Buka Message"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cara kerjanya"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Tertunda..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Siapkan Buka dengan Sidik Jari lagi"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak berfungsi dengan baik dan telah dihapus"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak berfungsi dengan baik dan telah dihapus"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak berfungsi dengan baik dan telah dihapus. Siapkan lagi untuk membuka kunci ponsel Anda dengan sidik jari."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak berfungsi dengan baik dan telah dihapus. Siapkan lagi untuk membuka kunci ponsel Anda dengan sidik jari."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak dapat dikenali lagi."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak dapat dikenali lagi."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak dapat dikenali lagi. Siapkan Buka dengan Sidik Jari lagi."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak dapat dikenali lagi. Siapkan Buka dengan Sidik Jari lagi."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Siapkan Buka dengan Wajah lagi"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Model wajah Anda tidak berfungsi dengan baik dan telah dihapus. Siapkan lagi untuk membuka kunci ponsel Anda dengan wajah."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Model wajah Anda tidak dapat dikenali lagi. Siapkan Buka dengan Wajah lagi."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Penyiapan"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Lain kali"</string> </resources> diff --git a/core/res/res/values-is/strings.xml b/core/res/res/values-is/strings.xml index 949562613c9d..92a004f76609 100644 --- a/core/res/res/values-is/strings.xml +++ b/core/res/res/values-is/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-númerið er of stutt. Það verður að vera a.m.k. 4 tölustafir."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Reyndu aftur síðar"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Notar allan skjáinn"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Strjúktu niður frá efsta hluta skjásins til að hætta"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ég skil"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Snúðu til að sjá betur"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Opnaðu <xliff:g id="NAME">%s</xliff:g> á öllum skjánum til að fá betra yfirlit"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Val um flýtileið í aðgengiseiginleika á skjánum"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Flýtileið aðgengisstillingar"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Loka tilkynningaglugga"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Valmynd"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Spila/gera hlé á margmiðlunarefni"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Upphnappur stýriflatar"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Niðurhnappur stýriflatar"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Vinstrihnappur stýriflatar"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Svona virkar þetta"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Í bið…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Setja upp fingrafarskenni aftur"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> virkaði illa og var eytt."</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> virkuðu illa og var eytt."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> virkaði illa og var eytt. Settu það upp aftur til að taka símann úr lás með fingrafari."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> virkuðu illa og var eytt. Settu þau upp aftur til að taka símann úr lás með fingrafarinu þínu."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Ekki er hægt að bera kennsl á <xliff:g id="FINGERPRINT">%s</xliff:g> lengur."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Ekki er hægt að bera kennsl á <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> lengur."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Ekki er hægt að bera kennsl á <xliff:g id="FINGERPRINT">%s</xliff:g> lengur. Settu upp fingrafarskenni aftur."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Ekki er hægt að bera kennsl á <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> lengur. Settu upp fingrafarskenni aftur."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Setja upp andlitskenni aftur"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Andlitslíkanið þitt virkaði illa og var eytt. Settu það upp aftur til að taka símann úr lás með andlitinu."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Ekki er hægt að bera kennsl á andlitslíkanið þitt lengur. Settu upp andlitskenni aftur."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Setja upp"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ekki núna"</string> </resources> diff --git a/core/res/res/values-it/strings.xml b/core/res/res/values-it/strings.xml index 395283709103..b141ec2418b2 100644 --- a/core/res/res/values-it/strings.xml +++ b/core/res/res/values-it/strings.xml @@ -47,7 +47,7 @@ <string name="needPuk2" msgid="3910763547447344963">"Digita il codice PUK2 per sbloccare la SIM."</string> <string name="enablePin" msgid="2543771964137091212">"Operazione non riuscita; attiva blocco SIM/RUIM."</string> <plurals name="pinpuk_attempts" formatted="false" msgid="1619867269012213584"> - <item quantity="many">Hai ancora <xliff:g id="NUMBER_1">%d</xliff:g> tentativi a disposizione prima che la SIM venga bloccata.</item> + <item quantity="many">Hai ancora <xliff:g id="NUMBER_1">%d</xliff:g> di tentativi a disposizione prima che la SIM venga bloccata.</item> <item quantity="other">Hai ancora <xliff:g id="NUMBER_1">%d</xliff:g> tentativi a disposizione prima che la SIM venga bloccata.</item> <item quantity="one">Hai ancora <xliff:g id="NUMBER_0">%d</xliff:g> tentativo a disposizione prima che la SIM venga bloccata.</item> </plurals> @@ -420,9 +420,9 @@ <string name="permdesc_runInBackground" msgid="4344539472115495141">"Questa app può essere eseguita in background, velocizzando il consumo della batteria."</string> <string name="permlab_useDataInBackground" msgid="783415807623038947">"utilizzo dei dati in background"</string> <string name="permdesc_useDataInBackground" msgid="1230753883865891987">"Questa app può usare dati in background, aumentando l\'utilizzo dei dati."</string> - <string name="permlab_schedule_exact_alarm" msgid="6683283918033029730">"Pianificare la precisione delle azioni temporizzate"</string> + <string name="permlab_schedule_exact_alarm" msgid="6683283918033029730">"Programma azioni temporizzate con precisione"</string> <string name="permdesc_schedule_exact_alarm" msgid="8198009212013211497">"Questa app può pianificare il lavoro al momento desiderato nel futuro. Significa anche che l\'app può essere eseguita quando non stai attivamente utilizzando il dispositivo."</string> - <string name="permlab_use_exact_alarm" msgid="348045139777131552">"Pianifica sveglie o promemoria eventi"</string> + <string name="permlab_use_exact_alarm" msgid="348045139777131552">"Programma sveglie o promemoria eventi"</string> <string name="permdesc_use_exact_alarm" msgid="7033761461886938912">"Quest\'app può pianificare azioni come sveglie e promemoria per notificarti al momento desiderato nel futuro."</string> <string name="permlab_persistentActivity" msgid="464970041740567970">"esecuzione permanente delle applicazioni"</string> <string name="permdesc_persistentActivity" product="tablet" msgid="6055271149187369916">"Consente all\'applicazione di rendere persistenti in memoria alcune sue parti. Ciò può limitare la memoria disponibile per altre applicazioni, rallentando il tablet."</string> @@ -499,9 +499,9 @@ <string name="permlab_accessLocationExtraCommands" msgid="5162339812057983988">"accesso a comandi aggiuntivi provider di geolocalizz."</string> <string name="permdesc_accessLocationExtraCommands" msgid="355369611979907967">"Consente all\'app di accedere a ulteriori comandi del fornitore di posizione. Ciò potrebbe consentire all\'app di interferire con il funzionamento del GPS o di altre fonti di geolocalizzazione."</string> <string name="permlab_accessFineLocation" msgid="6426318438195622966">"accesso alla posizione esatta solo in primo piano"</string> - <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Questa app può recuperare la tua posizione precisa dai Servizi di geolocalizzazione quando l\'app è in uso. L\'impostazione Servizi di geolocalizzazione deve essere attiva sul tuo dispositivo perché l\'app possa recuperare la tua posizione. Questa operazione potrebbe comportare un maggior consumo della batteria."</string> + <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Questa app può recuperare la tua posizione precisa dai Servizi di localizzazione quando l\'app è in uso. L\'impostazione Servizi di localizzazione deve essere attiva sul tuo dispositivo perché l\'app possa recuperare la tua posizione. Questa operazione potrebbe comportare un maggior consumo della batteria."</string> <string name="permlab_accessCoarseLocation" msgid="1561042925407799741">"Accesso alla posizione approssimativa solo in primo piano"</string> - <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Questa app può recuperare la tua posizione approssimativa dai Servizi di geolocalizzazione quando l\'app è in uso. L\'impostazione Servizi di geolocalizzazione deve essere attiva sul tuo dispositivo perché l\'app possa recuperare la tua posizione."</string> + <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Questa app può recuperare la tua posizione approssimativa dai Servizi di localizzazione quando l\'app è in uso. L\'impostazione Servizi di localizzazione deve essere attiva sul tuo dispositivo perché l\'app possa recuperare la tua posizione."</string> <string name="permlab_accessBackgroundLocation" msgid="1721164702777366138">"accesso alla posizione in background"</string> <string name="permdesc_accessBackgroundLocation" msgid="8264885066095638105">"Questa app può accedere alla posizione in qualsiasi momento, anche quando l\'app non è in uso."</string> <string name="permlab_modifyAudioSettings" msgid="6129039778010031815">"modifica impostazioni audio"</string> @@ -521,7 +521,7 @@ <string name="permlab_backgroundCamera" msgid="7549917926079731681">"Acquisizione di foto e video in background"</string> <string name="permdesc_backgroundCamera" msgid="1615291686191138250">"Questa app può scattare foto e registrare video tramite la fotocamera in qualsiasi momento."</string> <string name="permlab_systemCamera" msgid="3642917457796210580">"Consenti a un\'applicazione o a un servizio di accedere alle videocamere del sistema per fare foto e video"</string> - <string name="permdesc_systemCamera" msgid="5938360914419175986">"Questa app di sistema o con privilegi può scattare foto e registrare video tramite una videocamera di sistema in qualsiasi momento. Richiede che anche l\'app disponga dell\'autorizzazione android.permission.CAMERA"</string> + <string name="permdesc_systemCamera" msgid="5938360914419175986">"Questa app di sistema o con privilegi può scattare foto e registrare video tramite una fotocamera di sistema in qualsiasi momento. Richiede che anche l\'app disponga dell\'autorizzazione android.permission.CAMERA"</string> <string name="permlab_cameraOpenCloseListener" msgid="5548732769068109315">"Consenti a un\'applicazione o a un servizio di ricevere callback relativi all\'apertura o alla chiusura di videocamere."</string> <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Questa app può ricevere callback quando una videocamera viene aperta (da una specifica applicazione) o chiusa."</string> <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Consenti a un\'applicazione o a un servizio di accedere alla fotocamera come utente di sistema senza testa."</string> @@ -622,7 +622,7 @@ <string name="permlab_disableKeyguard" msgid="3605253559020928505">"disattivazione blocco schermo"</string> <string name="permdesc_disableKeyguard" msgid="3223710003098573038">"Consente all\'applicazione di disattivare il blocco tastiera ed eventuali protezioni tramite password associate. Ad esempio, il telefono disattiva il blocco tastiera quando riceve una telefonata in arrivo e lo riattiva al termine della chiamata."</string> <string name="permlab_requestPasswordComplexity" msgid="1808977190557794109">"richiesta di complessità del blocco schermo"</string> - <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Consente all\'app di conoscere il livello di complessità del blocco schermo (alto, medio, basso o nessuno), che indica l\'intervallo di caratteri possibile e il tipo di blocco schermo. L\'app può inoltre suggerire agli utenti di aggiornare il blocco schermo a un livello specifico di complessità, ma gli utenti possono ignorare liberamente il suggerimento e uscire. Tieni presente che il blocco schermo non viene memorizzato come testo non crittografato, quindi l\'app non conosce la password esatta."</string> + <string name="permdesc_requestPasswordComplexity" msgid="1130556896836258567">"Consente all\'app di conoscere il livello di complessità del blocco schermo (alto, medio, basso o nessuno), che indica l\'intervallo di lunghezza di caratteri possibile e il tipo di blocco schermo. L\'app può inoltre suggerire agli utenti di aggiornare il blocco schermo a un livello specifico di complessità, ma gli utenti possono ignorare liberamente il suggerimento e uscire. Tieni presente che il blocco schermo non viene memorizzato come testo non crittografato, quindi l\'app non conosce la password esatta."</string> <string name="permlab_postNotification" msgid="4875401198597803658">"Visualizzazione di notifiche"</string> <string name="permdesc_postNotification" msgid="5974977162462877075">"Consente all\'app di mostrare notifiche"</string> <string name="permlab_turnScreenOn" msgid="219344053664171492">"attiva lo schermo"</string> @@ -738,7 +738,7 @@ </string-array> <string name="face_error_hw_not_available" msgid="5085202213036026288">"Imposs. verificare volto. Hardware non disponibile."</string> <string name="face_error_timeout" msgid="2598544068593889762">"Riprova lo Sblocco con il Volto"</string> - <string name="face_error_no_space" msgid="5649264057026021723">"Imposs. salvare dati nuovi volti. Elimina un volto vecchio."</string> + <string name="face_error_no_space" msgid="5649264057026021723">"Impossibile salvare nuovi dati del volto. Elimina un volto vecchio."</string> <string name="face_error_canceled" msgid="2164434737103802131">"Operazione associata al volto annullata."</string> <string name="face_error_user_canceled" msgid="5766472033202928373">"Sblocco con il Volto annullato dall\'utente"</string> <string name="face_error_lockout" msgid="7864408714994529437">"Troppi tentativi. Riprova più tardi."</string> @@ -1127,7 +1127,7 @@ <string name="enable_explore_by_touch_warning_message" product="default" msgid="4312979647356179250">"<xliff:g id="ACCESSIBILITY_SERVICE_NAME">%1$s</xliff:g> vuole attivare la funzione Esplora al tocco. Quando la funzione Esplora al tocco è attiva, puoi ascoltare o visualizzare le descrizioni di ciò che stai toccando oppure interagire con il telefono tramite gesti."</string> <string name="oneMonthDurationPast" msgid="4538030857114635777">"1 mese fa"</string> <string name="beforeOneMonthDurationPast" msgid="8315149541372065392">"Oltre 1 mese fa"</string> - <string name="last_num_days" msgid="2393660431490280537">"{count,plural, =1{Ultimo giorno}many{Ultimi # giorni}other{Ultimi # giorni}}"</string> + <string name="last_num_days" msgid="2393660431490280537">"{count,plural, =1{Ultimo giorno}many{Ultimi # di giorni}other{Ultimi # giorni}}"</string> <string name="last_month" msgid="1528906781083518683">"Ultimo mese"</string> <string name="older" msgid="1645159827884647400">"Precedente"</string> <string name="preposition_for_date" msgid="2780767868832729599">"<xliff:g id="DATE">%s</xliff:g>"</string> @@ -1154,14 +1154,14 @@ <string name="duration_hours_shortest_future" msgid="2979276794547981674">"tra <xliff:g id="COUNT">%d</xliff:g> h"</string> <string name="duration_days_shortest_future" msgid="3392722163935571543">"tra <xliff:g id="COUNT">%d</xliff:g> g"</string> <string name="duration_years_shortest_future" msgid="5537464088352970388">"tra <xliff:g id="COUNT">%d</xliff:g> a"</string> - <string name="duration_minutes_relative" msgid="8620337701051015593">"{count,plural, =1{# minuto fa}many{# minuti fa}other{# minuti fa}}"</string> - <string name="duration_hours_relative" msgid="4836449961693180253">"{count,plural, =1{# ora fa}many{# ore fa}other{# ore fa}}"</string> - <string name="duration_days_relative" msgid="621965767567258302">"{count,plural, =1{# giorno fa}many{# giorni fa}other{# giorni fa}}"</string> - <string name="duration_years_relative" msgid="8731202348869424370">"{count,plural, =1{# anno fa}many{# anni fa}other{# anni fa}}"</string> - <string name="duration_minutes_relative_future" msgid="5259574171747708115">"{count,plural, =1{# minuto}many{# minuti}other{# minuti}}"</string> - <string name="duration_hours_relative_future" msgid="6670440478481140565">"{count,plural, =1{# ora}many{# ore}other{# ore}}"</string> - <string name="duration_days_relative_future" msgid="8870658635774250746">"{count,plural, =1{# giorno}many{# giorni}other{# giorni}}"</string> - <string name="duration_years_relative_future" msgid="8855853883925918380">"{count,plural, =1{# anno}many{# anni}other{# anni}}"</string> + <string name="duration_minutes_relative" msgid="8620337701051015593">"{count,plural, =1{# minuto fa}many{# di minuti fa}other{# minuti fa}}"</string> + <string name="duration_hours_relative" msgid="4836449961693180253">"{count,plural, =1{# ora fa}many{# di ore fa}other{# ore fa}}"</string> + <string name="duration_days_relative" msgid="621965767567258302">"{count,plural, =1{# giorno fa}many{# di giorni fa}other{# giorni fa}}"</string> + <string name="duration_years_relative" msgid="8731202348869424370">"{count,plural, =1{# anno fa}many{# di anni fa}other{# anni fa}}"</string> + <string name="duration_minutes_relative_future" msgid="5259574171747708115">"{count,plural, =1{# minuto}many{# di minuti}other{# minuti}}"</string> + <string name="duration_hours_relative_future" msgid="6670440478481140565">"{count,plural, =1{# ora}many{# di ore}other{# ore}}"</string> + <string name="duration_days_relative_future" msgid="8870658635774250746">"{count,plural, =1{# giorno}many{# di giorni}other{# giorni}}"</string> + <string name="duration_years_relative_future" msgid="8855853883925918380">"{count,plural, =1{# anno}many{# di anni}other{# anni}}"</string> <string name="VideoView_error_title" msgid="5750686717225068016">"Problemi video"</string> <string name="VideoView_error_text_invalid_progressive_playback" msgid="3782449246085134720">"Questo video non è valido per lo streaming su questo dispositivo."</string> <string name="VideoView_error_text_unknown" msgid="7658683339707607138">"Impossibile riprodurre il video."</string> @@ -1286,7 +1286,7 @@ <string name="android_start_title" product="tablet" msgid="4429767260263190344">"Avvio del tablet…"</string> <string name="android_start_title" product="device" msgid="6967413819673299309">"Avvio del dispositivo…"</string> <string name="android_upgrading_notification_title" product="default" msgid="3509927005342279257">"Completamento aggiornamento di sistema…"</string> - <string name="app_upgrading_toast" msgid="1016267296049455585">"Upgrade dell\'app <xliff:g id="APPLICATION">%1$s</xliff:g>…"</string> + <string name="app_upgrading_toast" msgid="1016267296049455585">"Upgrade dell\'app <xliff:g id="APPLICATION">%1$s</xliff:g> in corso…"</string> <string name="android_preparing_apk" msgid="589736917792300956">"<xliff:g id="APPNAME">%1$s</xliff:g> in preparazione."</string> <string name="android_upgrading_starting_apps" msgid="6206161195076057075">"Avvio app."</string> <string name="android_upgrading_complete" msgid="409800058018374746">"Conclusione dell\'avvio."</string> @@ -1765,7 +1765,7 @@ <string name="accessibility_magnification_chooser_text" msgid="1502075582164931596">"Ingrandimento"</string> <string name="user_switched" msgid="7249833311585228097">"Utente corrente <xliff:g id="NAME">%1$s</xliff:g>."</string> <string name="user_switching_message" msgid="1912993630661332336">"Passaggio a <xliff:g id="NAME">%1$s</xliff:g>…"</string> - <string name="user_logging_out_message" msgid="7216437629179710359">"Disconnessione di <xliff:g id="NAME">%1$s</xliff:g>…"</string> + <string name="user_logging_out_message" msgid="7216437629179710359">"Disconnessione di <xliff:g id="NAME">%1$s</xliff:g> in corso…"</string> <string name="owner_name" msgid="8713560351570795743">"Proprietario"</string> <string name="guest_name" msgid="8502103277839834324">"Ospite"</string> <string name="error_message_title" msgid="4082495589294631966">"Errore"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Il PIN è troppo corto. Deve avere almeno quattro cifre."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Riprova più tardi"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visualizzazione a schermo intero"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Per uscire, scorri verso il basso dalla parte superiore dello schermo"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <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_multi_window" msgid="2473122980393502775">"Apri <xliff:g id="NAME">%s</xliff:g> a schermo intero per migliorare la visualizzazione"</string> @@ -1914,14 +1913,14 @@ <string name="data_saver_description" msgid="4995164271550590517">"Per contribuire a ridurre l\'utilizzo dei dati, la funzionalità Risparmio dati impedisce ad alcune app di inviare o ricevere dati in background. Un\'app in uso può accedere ai dati, ma potrebbe farlo con meno frequenza. Per esempio, è possibile che le immagini non vengano visualizzate finché non le tocchi."</string> <string name="data_saver_enable_title" msgid="7080620065745260137">"Attivare Risparmio dati?"</string> <string name="data_saver_enable_button" msgid="4399405762586419726">"Attiva"</string> - <string name="zen_mode_duration_minutes_summary" msgid="4555514757230849789">"{count,plural, =1{Per un minuto (fino alle ore {formattedTime})}many{Per # minuti (fino alle ore {formattedTime})}other{Per # minuti (fino alle ore {formattedTime})}}"</string> - <string name="zen_mode_duration_minutes_summary_short" msgid="1187553788355486950">"{count,plural, =1{Per 1 min (fino alle ore {formattedTime})}many{Per # min (fino alle ore {formattedTime})}other{Per # min (fino alle ore {formattedTime})}}"</string> - <string name="zen_mode_duration_hours_summary" msgid="3866333100793277211">"{count,plural, =1{Per 1 ora (fino alle ore {formattedTime})}many{Per # ore (fino alle ore {formattedTime})}other{Per # ore (fino alle ore {formattedTime})}}"</string> - <string name="zen_mode_duration_hours_summary_short" msgid="687919813833347945">"{count,plural, =1{Per 1 h (fino alle ore {formattedTime})}many{Per # h (fino alle ore {formattedTime})}other{Per # h (fino alle ore {formattedTime})}}"</string> - <string name="zen_mode_duration_minutes" msgid="2340007982276569054">"{count,plural, =1{Per un minuto}many{Per # minuti}other{Per # minuti}}"</string> - <string name="zen_mode_duration_minutes_short" msgid="2435756450204526554">"{count,plural, =1{Per 1 min}many{Per # min}other{Per # min}}"</string> - <string name="zen_mode_duration_hours" msgid="7841806065034711849">"{count,plural, =1{Per 1 ora}many{Per # ore}other{Per # ore}}"</string> - <string name="zen_mode_duration_hours_short" msgid="3666949653933099065">"{count,plural, =1{Per 1 h}many{Per # h}other{Per # h}}"</string> + <string name="zen_mode_duration_minutes_summary" msgid="4555514757230849789">"{count,plural, =1{Per un minuto (fino alle ore {formattedTime})}many{Per # di minuti (fino alle ore {formattedTime})}other{Per # minuti (fino alle ore {formattedTime})}}"</string> + <string name="zen_mode_duration_minutes_summary_short" msgid="1187553788355486950">"{count,plural, =1{Per 1 min (fino alle ore {formattedTime})}many{Per # di min (fino alle ore {formattedTime})}other{Per # min (fino alle ore {formattedTime})}}"</string> + <string name="zen_mode_duration_hours_summary" msgid="3866333100793277211">"{count,plural, =1{Per 1 ora (fino alle ore {formattedTime})}many{Per # di ore (fino alle ore {formattedTime})}other{Per # ore (fino alle ore {formattedTime})}}"</string> + <string name="zen_mode_duration_hours_summary_short" msgid="687919813833347945">"{count,plural, =1{Per 1 h (fino alle ore {formattedTime})}many{Per # di h (fino alle ore {formattedTime})}other{Per # h (fino alle ore {formattedTime})}}"</string> + <string name="zen_mode_duration_minutes" msgid="2340007982276569054">"{count,plural, =1{Per un minuto}many{Per # di minuti}other{Per # minuti}}"</string> + <string name="zen_mode_duration_minutes_short" msgid="2435756450204526554">"{count,plural, =1{Per 1 min}many{Per # di min}other{Per # min}}"</string> + <string name="zen_mode_duration_hours" msgid="7841806065034711849">"{count,plural, =1{Per 1 ora}many{Per # di ore}other{Per # ore}}"</string> + <string name="zen_mode_duration_hours_short" msgid="3666949653933099065">"{count,plural, =1{Per 1 h}many{Per # di h}other{Per # h}}"</string> <string name="zen_mode_until_next_day" msgid="1403042784161725038">"Fino a: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string> <string name="zen_mode_until" msgid="2250286190237669079">"Fino a <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string> <string name="zen_mode_alarm" msgid="7046911727540499275">"Fino a <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> (prossima sveglia)"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selettore scorciatoia Accessibilità sullo schermo"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Scorciatoia Accessibilità"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ignora area notifiche"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Play/Pausa contenuti multimediali"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad - Su"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad - Giù"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad - Sinistra"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Come funziona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"In attesa…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Riconfigura lo Sblocco con l\'Impronta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> non funzionava bene ed è stata eliminata"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non funzionavano bene e sono state eliminate"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> non funzionava bene ed è stata eliminata. Riconfigurala per sbloccare lo smartphone con l\'impronta."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non funzionavano bene e sono state eliminate. Riconfigurale per sbloccare lo smartphone con l\'impronta."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> non può più essere riconosciuto."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non possono più essere riconosciuti."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> non può più essere riconosciuto. Riconfigura lo Sblocco con l\'Impronta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> non possono più essere riconosciuti. Riconfigura lo Sblocco con l\'Impronta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Riconfigura lo Sblocco con il Volto"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Il tuo modello del volto non funzionava bene ed è stato eliminato. Riconfiguralo per sbloccare lo smartphone con il volto."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Il tuo modello del volto non può più essere riconosciuto. Riconfigura lo Sblocco con il Volto."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configura"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Non ora"</string> </resources> diff --git a/core/res/res/values-iw/strings.xml b/core/res/res/values-iw/strings.xml index 9c143c70a3c0..e17ab4830cf0 100644 --- a/core/res/res/values-iw/strings.xml +++ b/core/res/res/values-iw/strings.xml @@ -609,8 +609,8 @@ <string name="permdesc_bluetooth_connect" product="default" msgid="4546016548795544617">"מאפשרת לאפליקציה להתחבר למכשירי Bluetooth מותאמים"</string> <string name="permlab_bluetooth_advertise" msgid="2781147747928853177">"פרסום במכשירי Bluetooth בקרבת מקום"</string> <string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"האפליקציה תוכל לפרסם במכשירי Bluetooth בקרבת מקום"</string> - <string name="permlab_uwb_ranging" msgid="8141915781475770665">"זיהוי מיקום יחסי בין מכשירי \'תחום רחב סרט\' קרובים"</string> - <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"האפליקציה תזהה את המיקום היחסי בין מכשירים קרובים שמשדרים בטכנולוגיה \'תחום רחב סרט\'"</string> + <string name="permlab_uwb_ranging" msgid="8141915781475770665">"זיהוי מיקום יחסי בין מכשירי Ultra Wideband (UWB) קרובים"</string> + <string name="permdesc_uwb_ranging" msgid="2519723069604307055">"האפליקציה תזהה את המיקום היחסי בין מכשירים קרובים שמשדרים בטכנולוגיית Ultra Wideband (UWB)"</string> <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"אינטראקציה עם מכשירי Wi-Fi בקרבת מקום"</string> <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"האפליקציה תוכל לפרסם במכשירי Wi-Fi בקרבת מקום, להתחבר אליהם ולהעריך את המיקום היחסי שלהם"</string> <string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"פרטים על שירות תשלום מועדף ב-NFC"</string> @@ -700,11 +700,11 @@ <string name="alternative_unlock_setup_notification_title" msgid="6241508547901933544">"כדאי לנסות דרך אחרת לביטול הנעילה"</string> <string name="alternative_face_setup_notification_content" msgid="3384959224091897331">"אפשר להשתמש בפתיחה ע\"י זיהוי הפנים כשטביעת האצבע שלך לא מזוהה, למשל כשהאצבעות שלך רטובות"</string> <string name="alternative_fp_setup_notification_content" msgid="7454096947415721639">"אפשר להשתמש בביטול הנעילה בטביעת אצבע כשהפנים שלך לא מזוהות, למשל כשאין מספיק אור"</string> - <string name="face_recalibrate_notification_name" msgid="7311163114750748686">"פתיחה ע\"י זיהוי הפנים"</string> + <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_sensor_privacy_enabled" msgid="7407126963510598508">"כדי להשתמש בתכונה \'פתיחה ע\"י זיהוי הפנים\', יש להפעיל את ה"<b>"גישה למצלמה"</b>" בהגדרות > פרטיות"</string> - <string name="fingerprint_recalibrate_notification_name" msgid="1414578431898579354">"ביטול הנעילה בטביעת אצבע"</string> + <string name="fingerprint_recalibrate_notification_name" msgid="1414578431898579354">"פתיחה בטביעת אצבע"</string> <string name="fingerprint_recalibrate_notification_title" msgid="2406561052064558497">"לא ניתן להשתמש בחיישן טביעות האצבע"</string> <string name="fingerprint_recalibrate_notification_content" msgid="8519935717822194943">"צריך ליצור קשר עם ספק תיקונים."</string> <string name="face_acquired_insufficient" msgid="6889245852748492218">"לא ניתן ליצור את התבנית לזיהוי הפנים. יש לנסות שוב."</string> @@ -1074,7 +1074,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">"ביטול נעילה באמצעות קוד אימות."</string> <string name="keyguard_accessibility_sim_pin_unlock" msgid="4895939120871890557">"ביטול הנעילה של קוד האימות ל-SIM."</string> <string name="keyguard_accessibility_sim_puk_unlock" msgid="3459003464041899101">"ביטול נעילה של PUK ל-SIM."</string> @@ -1275,7 +1275,7 @@ <string name="unsupported_display_size_show" msgid="980129850974919375">"להציג תמיד"</string> <string name="unsupported_compile_sdk_message" msgid="7326293500707890537">"<xliff:g id="APP_NAME">%1$s</xliff:g> נבנתה לגרסה לא תואמת של מערכת ההפעלה של Android ועלולה להתנהג באופן לא צפוי. ייתכן שקיימת גרסה מעודכנת של האפליקציה."</string> <string name="unsupported_compile_sdk_show" msgid="1601210057960312248">"להציג תמיד"</string> - <string name="unsupported_compile_sdk_check_update" msgid="1103639989147664456">"האם יש עדכון חדש?"</string> + <string name="unsupported_compile_sdk_check_update" msgid="1103639989147664456">"יש עדכון חדש?"</string> <string name="smv_application" msgid="3775183542777792638">"האפליקציה <xliff:g id="APPLICATION">%1$s</xliff:g> (תהליך <xliff:g id="PROCESS">%2$s</xliff:g>) הפרה את מדיניות StrictMode באכיפה עצמית שלה."</string> <string name="smv_process" msgid="1398801497130695446">"התהליך <xliff:g id="PROCESS">%1$s</xliff:g> הפר את מדיניות StrictMode באכיפה עצמית."</string> <string name="android_upgrading_title" product="default" msgid="7279077384220829683">"הטלפון מתעדכן…"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"קוד הגישה קצר מדי. חייב להיות באורך 4 ספרות לפחות."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"יש לנסות שוב מאוחר יותר"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"צפייה במסך מלא"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"כדי לצאת, מחליקים למטה מהחלק העליון של המסך"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"הבנתי"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"מסובבים כדי לראות טוב יותר"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"צריך לפתוח את <xliff:g id="NAME">%s</xliff:g> במסך מלא כדי לראות טוב יותר"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"בורר קיצורי דרך לנגישות במסך"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"קיצור דרך לנגישות"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"סגירת לוח ההתראות"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"תפריט"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"הפעלה/השהיה של המדיה"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"לחצן עליון ב-Dpad"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"לחצן תחתון ב-Dpad"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"לחצן שמאלי ב-Dpad"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"איך זה עובד"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"בהמתנה..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"הגדרה חוזרת של \'ביטול הנעילה בטביעת אצבע\'"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> לא פעלה טוב ולכן היא נמחקה"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ו<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> לא פעלו טוב ולכן הן נמחקו"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> לא פעלה היטב ולכן היא נמחקה. עליך להגדיר אותה שוב כדי שתהיה לך אפשרות לבטל את הנעילה של הטלפון באמצעות טביעת אצבע."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ו<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> לא פעלו היטב ולכן הן נמחקו. עליך להגדיר אותן שוב כדי שתהיה לך אפשרות לבטל את הנעילה של הטלפון באמצעות טביעת אצבע."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"כבר לא ניתן לזהות את <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"כבר לא ניתן לזהות את <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ואת <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"כבר לא ניתן לזהות את <xliff:g id="FINGERPRINT">%s</xliff:g>. הגדרה חוזרת של \'פתיחה בטביעת אצבע\'."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"כבר לא ניתן לזהות את <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ואת <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. הגדרה חוזרת של \'פתיחה בטביעת אצבע\'."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"הגדרה חוזרת של \'פתיחה ע\"י זיהוי הפנים\'"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"התבנית לזיהוי הפנים לא פעלה היטב ולכן היא נמחקה. עליך להגדיר אותה שוב כדי שתהיה לך אפשרות לבטל את הנעילה של הטלפון באמצעות זיהוי הפנים."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"כבר לא ניתן לזהות את התבנית לזיהוי הפנים. הגדרה חוזרת של \'פתיחה בזיהוי פנים\'."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"הגדרה"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"לא עכשיו"</string> </resources> diff --git a/core/res/res/values-ja/strings.xml b/core/res/res/values-ja/strings.xml index 934967f0dc89..52d55a85cdb5 100644 --- a/core/res/res/values-ja/strings.xml +++ b/core/res/res/values-ja/strings.xml @@ -156,8 +156,8 @@ <string name="scCellularNetworkSecurityTitle" msgid="7752521808690294384">"モバイル ネットワーク セキュリティ"</string> <string name="scCellularNetworkSecuritySummary" msgid="7042036754550545005">"暗号化、暗号化されていないネットワークに関する通知"</string> <string name="scIdentifierDisclosureIssueTitle" msgid="2898888825129970328">"デバイス ID へのアクセスが発生しました"</string> - <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"<xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>、<xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g> の SIM の使用中に付近のネットワークでお使いのデバイスの一意の ID(IMSI または IMEI)が記録されました"</string> - <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"<xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>、<xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g> の SIM の使用中に付近のネットワークでお使いのデバイスの一意の ID(IMSI または IMEI)が記録されました。\n\nつまり、あなたの位置情報、アクティビティ、身元などが記録されことになります。これはよくある事象ですが、プライバシーに不安を持たれている人にとっては問題になる可能性があります。"</string> + <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"<xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>、<xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g> の SIM の使用中に、お使いのデバイスの一意の ID(IMSI または IMEI)が付近のネットワークで記録されました。"</string> + <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"<xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>、<xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g> の SIM の使用中に、お使いのデバイスの一意の ID(IMSI または IMEI)が付近のネットワークで記録されました。\n\nつまり、あなたの位置情報、アクティビティ、身元などが記録されたことになります。これはよくある事象ですが、プライバシーを保護したいユーザーにとっては問題となる可能性があります。"</string> <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"暗号化されたネットワーク(<xliff:g id="NETWORK_NAME">%1$s</xliff:g>)に接続しました"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> の SIM 接続のセキュリティが強化されました"</string> <string name="scNullCipherIssueNonEncryptedTitle" msgid="3978071464929453915">"接続先のネットワークが暗号化されていません"</string> @@ -1144,7 +1144,7 @@ <string name="weeks" msgid="3516247214269821391">"週間"</string> <string name="year" msgid="5182610307741238982">"年"</string> <string name="years" msgid="5797714729103773425">"年"</string> - <string name="now_string_shortest" msgid="3684914126941650330">"現在"</string> + <string name="now_string_shortest" msgid="3684914126941650330">"今"</string> <string name="duration_minutes_shortest" msgid="5744379079540806690">"<xliff:g id="COUNT">%d</xliff:g> 分"</string> <string name="duration_hours_shortest" msgid="1477752094141971675">"<xliff:g id="COUNT">%d</xliff:g> 時間"</string> <string name="duration_days_shortest" msgid="4083124701676227233">"<xliff:g id="COUNT">%d</xliff:g> 日"</string> @@ -1398,10 +1398,10 @@ <string name="usb_tether_notification_title" msgid="8828527870612663771">"USB テザリング ON"</string> <string name="usb_midi_notification_title" msgid="7404506788950595557">"USB MIDI モード ON"</string> <string name="usb_uvc_notification_title" msgid="2030032862673400008">"ウェブカメラとしてデバイスを接続しました"</string> - <string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB アクセサリが接続されました"</string> + <string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB アクセサリーが接続されました"</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_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> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PINが短すぎます。4桁以上で設定してください。"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"しばらくしてから再試行"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"全画面表示"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"終了するには画面の上部から下にスワイプします"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"画面を回転させて見やすくしましょう"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"<xliff:g id="NAME">%s</xliff:g> を全画面表示で開いて見やすくしましょう"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"画面上のユーザー補助機能のショートカットの選択メニュー"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ユーザー補助のショートカット"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"通知シェードを閉じる"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"メニュー"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"メディアの再生 / 一時停止"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad: 上"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad: 下"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad: 左"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"仕組み"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"保留中..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"指紋認証をもう一度設定してください"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> は正常に機能せず、削除されました"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> と <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> は正常に機能せず、削除されました"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> が正常に機能せず、削除されました。指紋認証でスマートフォンのロックを解除するには、設定し直してください。"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> と <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> が正常に機能せず、削除されました。指紋認証でスマートフォンのロックを解除するには、設定し直してください。"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>を認識できなくなりました。"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>と<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>を認識できなくなりました。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>を認識できなくなりました。指紋認証をもう一度設定してください。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>と<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>を認識できなくなりました。指紋認証をもう一度設定してください。"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"顔認証をもう一度設定してください"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"顔モデルが正常に機能せず、削除されました。顔認証でスマートフォンのロックを解除するには、設定し直してください。"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"顔モデルを認識できなくなりました。顔認証をもう一度設定してください。"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"設定"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"後で"</string> </resources> diff --git a/core/res/res/values-ka/strings.xml b/core/res/res/values-ka/strings.xml index 013125e27165..621c2a7277d9 100644 --- a/core/res/res/values-ka/strings.xml +++ b/core/res/res/values-ka/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN ძალიან მოკლეა. უნდა შედგებოდეს სულ ცოტა 4 ციფრისგან."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"სცადეთ მოგვიანებით"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"სრულ ეკრანზე ნახვა"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"თქვენი ეკრანის ზემოდან გადაფურცლეთ ქვემოთ, რათა გამოხვიდეთ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"გასაგებია"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"შეატრიალეთ უკეთესი ხედისთვის"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"გახსენით <xliff:g id="NAME">%s</xliff:g> სრულ ეკრანზე უკეთესი ხედისთვის"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"მისაწვდომობის ეკრანული მალსახმობის ამომრჩევი"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"მისაწვდომობის მალსახმობი"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"შეტყობინებების ფარდის დახურვა"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"მენიუ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"მედიის დაკვრა/დაპაუზება"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ზევით"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ქვევით"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad მარცხნივ"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"კერძო სივრცე"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"სენსიტიური შეტყობინების კონტენტი დამალულია"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"ეკრანის გაზიარებიდან აპის კონტენტი დამალულია უსაფრთხოების მიზნით"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"ეკრანის გაზიარებისას აპის კონტენტი დამალულია უსაფრთხოების მიზნით"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"სატელიტთან ავტომატურად დაკავშირებულია"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"შეგიძლიათ გაგზავნოთ და მიიღოთ შეტყობინებები მობილური ან Wi-Fi ქსელის გარეშე"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Messages-ის გახსნა"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"მუშაობის პრინციპი"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"მომლოდინე..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ანაბეჭდით განბლოკვის ხელახლა დაყენება"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> კარგად არ მუშაობდა და წაიშალა"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> და <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> კარგად არ მუშაობდნენ და წაიშალა"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> კარგად არ მუშაობდა და წაიშალა. თავიდან დააყენეთ, რათა თქვენი ტელეფონი თითის ანაბეჭდის საშუალებით განბლოკოთ."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> და <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> კარგად არ მუშაობდნენ და წაიშალა. თავიდან დააყენეთ, რათა თქვენი ტელეფონი თითის ანაბეჭდის საშუალებით განბლოკოთ."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>-ის ამოცნობა ვეღარ ხერხდება."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>-ისა და <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>-ის ამოცნობა ვეღარ ხერხდება."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>-ის ამოცნობა ვეღარ ხერხდება. დააყენეთ ანაბეჭდით განბლოკვა ხელახლა."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>-ისა და <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>-ის ამოცნობა ვეღარ ხერხდება. დააყენეთ ანაბეჭდით განბლოკვა ხელახლა."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"დააყენეთ სახით განბლოკვა ხელახლა"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"თქვენი სახის მოდელი კარგად არ მუშაობდა და წაიშალა. თავიდან დააყენეთ, რათა თქვენი ტელეფონი სახის საშუალებით განბლოკოთ."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"თქვენი სახის მოდელის ამოცნობა ვეღარ ხერხდება. დააყენეთ სახით განბლოკვა ხელახლა."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"დაყენება"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ახლა არა"</string> </resources> diff --git a/core/res/res/values-kk/strings.xml b/core/res/res/values-kk/strings.xml index 791644df2c92..06e8a375f45f 100644 --- a/core/res/res/values-kk/strings.xml +++ b/core/res/res/values-kk/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN тым қысқа. Кем дегенде 4 бірлік болуы тиіс."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Кейінірек қайта әрекеттеніңіз."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Толық экранда көру"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Шығу үшін экранның жоғарғы жағынан төмен қарай сырғытыңыз."</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Түсінікті"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Жақсырақ көру үшін бұрыңыз."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Жақсырақ көру үшін <xliff:g id="NAME">%s</xliff:g> қолданбасын толық экранда ашыңыз."</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Экрандағы арнайы мүмкіндіктерді жылдам қосу әрекетін таңдау"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Арнайы мүмкіндіктерді жылдам қосу"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Хабарландыру тақтасын жабу"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Mәзір"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Медиафайл ойнату/кідірту"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Жоғарғы Dpad түймесі"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Төменгі Dpad түймесі"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Сол жақ Dpad түймесі"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Бұл қалай орындалады?"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Дайын емес…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Саусақ ізімен ашу функциясын қайта реттеу"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> саусақ ізі дұрыс істемегендіктен жойылды."</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Саусақ іздері (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> және <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) дұрыс істемегендіктен жойылды."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> саусақ ізі дұрыс істемегендіктен жойылды. Телефонды саусақ ізімен ашу үшін оны қайта реттеңіз."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Саусақ іздері (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> және <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) дұрыс істемегендіктен жойылды. Телефонды саусақ ізімен ашу үшін оларды қайта реттеңіз."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> бұдан былай танылмайды."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> және <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> бұдан былай танылмайды."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> бұдан былай танылмайды. Саусақ ізімен ашу функциясын қайта реттеңіз."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> және <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> бұдан былай танылмайды. Саусақ ізімен ашу функциясын қайта реттеңіз."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Бет тану функциясын қайта реттеу"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Бет үлгісі дұрыс істемегендіктен жойылды. Телефонды бетпен ашу үшін оны қайта реттеңіз."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Бет үлгіңіз бұдан былай танылмайды. Бет тану функциясын қайта реттеңіз."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Реттеу"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Қазір емес"</string> </resources> diff --git a/core/res/res/values-km/strings.xml b/core/res/res/values-km/strings.xml index 12e1a363263a..d5d4afd3b30e 100644 --- a/core/res/res/values-km/strings.xml +++ b/core/res/res/values-km/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"កូដ PIN ខ្លីពេក។ ត្រូវតែមានយ៉ាងហោចណាស់ ៤ តួ។"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"សូមព្យាយាមម្ដងទៀតនៅពេលក្រោយ។"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"កំពុងមើលពេញអេក្រង់"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ដើម្បីចេញ សូមអូសពីផ្នែកខាងលើនៃអេក្រង់របស់អ្នកចុះក្រោម"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"យល់ហើយ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"បង្វិលដើម្បីមើលបានកាន់តែច្បាស់"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"បើក <xliff:g id="NAME">%s</xliff:g> នៅក្នុងអេក្រង់ពេញ ដើម្បីមើលបានកាន់តែច្បាស់"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ម៉ឺនុយជ្រើសរើសផ្លូវកាត់ភាពងាយស្រួលនៅលើអេក្រង់"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ផ្លូវកាត់ភាពងាយស្រួល"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ច្រានចោលផ្ទាំងជូនដំណឹង"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ម៉ឺនុយ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ចាក់/ផ្អាកមេឌៀ"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ឡើងលើ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ចុះក្រោម"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ឆ្វេង"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"របៀបដែលវាដំណើរការ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"កំពុងរង់ចាំ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"រៀបចំការដោះសោដោយស្កេនស្នាមម្រាមដៃម្ដងទៀត"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> មិនដំណើរការល្អទេ ហើយត្រូវបានលុបចេញហើយ"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> និង <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> មិនដំណើរការល្អទេ ហើយត្រូវបានលុបចេញហើយ"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> មិនដំណើរការល្អទេ ហើយត្រូវបានលុបចេញហើយ។ រៀបចំវាម្ដងទៀត ដើម្បីដោះសោទូរសព្ទរបស់អ្នកដោយប្រើស្នាមម្រាមដៃ។"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> និង <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> មិនដំណើរការល្អទេ ហើយត្រូវបានលុបចេញហើយ។ រៀបចំវាម្ដងទៀត ដើម្បីដោះសោទូរសព្ទរបស់អ្នកដោយប្រើស្នាមម្រាមដៃ។"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"លែងអាចសម្គាល់ <xliff:g id="FINGERPRINT">%s</xliff:g> បានទៀតហើយ។"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"លែងអាចសម្គាល់ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> និង <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> បានទៀតហើយ។"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"លែងអាចសម្គាល់ <xliff:g id="FINGERPRINT">%s</xliff:g> បានទៀតហើយ។ សូមរៀបចំការដោះសោដោយស្កេនស្នាមម្រាមដៃម្ដងទៀត។"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"លែងអាចសម្គាល់ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> និង <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> បានទៀតហើយ។ សូមរៀបចំការដោះសោដោយស្កេនស្នាមម្រាមដៃម្ដងទៀត។"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"រៀបចំការដោះសោដោយស្កេនមុខម្ដងទៀត"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"គំរូមុខរបស់អ្នកមិនដំណើរការល្អទេ ហើយត្រូវបានលុបចេញហើយ។ រៀបចំវាម្ដងទៀត ដើម្បីដោះសោទូរសព្ទរបស់អ្នកដោយប្រើមុខ។"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"លែងអាចសម្គាល់គំរូមុខរបស់អ្នកបានទៀតហើយ។ សូមរៀបចំការដោះសោដោយស្កេនមុខម្ដងទៀត។"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"រៀបចំ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"កុំទាន់"</string> </resources> diff --git a/core/res/res/values-kn/strings.xml b/core/res/res/values-kn/strings.xml index c134b7446f87..97018713f5f6 100644 --- a/core/res/res/values-kn/strings.xml +++ b/core/res/res/values-kn/strings.xml @@ -1144,7 +1144,7 @@ <string name="weeks" msgid="3516247214269821391">"ವಾರಗಳು"</string> <string name="year" msgid="5182610307741238982">"ವರ್ಷ"</string> <string name="years" msgid="5797714729103773425">"ವರ್ಷಗಳು"</string> - <string name="now_string_shortest" msgid="3684914126941650330">"ಇದೀಗ"</string> + <string name="now_string_shortest" msgid="3684914126941650330">"ಈಗ"</string> <string name="duration_minutes_shortest" msgid="5744379079540806690">"<xliff:g id="COUNT">%d</xliff:g>ನಿ"</string> <string name="duration_hours_shortest" msgid="1477752094141971675">"<xliff:g id="COUNT">%d</xliff:g>ಗಂ"</string> <string name="duration_days_shortest" msgid="4083124701676227233">"<xliff:g id="COUNT">%d</xliff:g>ದಿ"</string> @@ -1401,7 +1401,7 @@ <string name="usb_accessory_notification_title" msgid="1385394660861956980">"USB ಪರಿಕರವನ್ನು ಸಂಪರ್ಕಿಸಲಾಗಿದೆ"</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_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> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ಪಿನ್ ತುಂಬಾ ಚಿಕ್ಕದಾಗಿದೆ. ಕನಿಷ್ಠ ಪಕ್ಷ 4 ಅಂಕಿಗಳಾಗಿರಬೇಕು."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ನಂತರ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ಪೂರ್ಣ ಪರದೆಯನ್ನು ವೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ನಿರ್ಗಮಿಸಲು, ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ನ ಮೇಲಿನಿಂದ ಕೆಳಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ತಿಳಿಯಿತು"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ಅತ್ಯುತ್ತಮ ವೀಕ್ಷಣೆಗಾಗಿ ತಿರುಗಿಸಿ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ಅತ್ಯುತ್ತಮ ವೀಕ್ಷಣೆಗಾಗಿ <xliff:g id="NAME">%s</xliff:g> ಅನ್ನು ಪೂರ್ಣ ಸ್ಕ್ರೀನ್ನಲ್ಲಿ ತೆರೆಯಿರಿ"</string> @@ -2065,7 +2064,7 @@ <string name="time_picker_text_input_mode_description" msgid="4761160667516611576">"ಸಮಯವನ್ನು ನಮೂದಿಸಲು ಪಠ್ಯದ ನಮೂನೆಗೆ ಬದಲಿಸಿ."</string> <string name="time_picker_radial_mode_description" msgid="1222342577115016953">"ಸಮಯವನ್ನು ನಮೂದಿಸಲು ಗಡಿಯಾರದ ನಮೂನೆಗೆ ಬದಲಿಸಿ."</string> <string name="autofill_picker_accessibility_title" msgid="4425806874792196599">"ಸ್ವಯಂತುಂಬುವಿಕೆ ಆಯ್ಕೆಗಳು"</string> - <string name="autofill_save_accessibility_title" msgid="1523225776218450005">"ಸ್ವಯಂ ಭರ್ತಿಗಾಗಿ ಉಳಿಸಿ"</string> + <string name="autofill_save_accessibility_title" msgid="1523225776218450005">"ಸ್ವಯಂ ಭರ್ತಿಗಾಗಿ ಸೇವ್ ಮಾಡಿ"</string> <string name="autofill_error_cannot_autofill" msgid="6528827648643138596">"ವಿಷಯಗಳು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಭರ್ತಿಯಾಗಲು ಸಾಧ್ಯವಿಲ್ಲ"</string> <string name="autofill_picker_no_suggestions" msgid="1076022650427481509">"ಸ್ವಯಂಭರ್ತಿ ಸಲಹೆಗಳಿಲ್ಲ"</string> <string name="autofill_picker_some_suggestions" msgid="5560549696296202701">"{count,plural, =1{ಒಂದು ಸ್ವಯಂ ಭರ್ತಿ ಸಲಹೆಯಿದೆ}one{# ಸ್ವಯಂ ಭರ್ತಿ ಸಲಹೆಗಳಿವೆ}other{# ಸ್ವಯಂ ಭರ್ತಿ ಸಲಹೆಗಳಿವೆ}}"</string> @@ -2144,7 +2143,7 @@ <string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"ಸರಿ"</string> <string name="nas_upgrade_notification_disable_action" msgid="3794833210043497982">"ಆಫ್ ಮಾಡಿ"</string> <string name="nas_upgrade_notification_learn_more_action" msgid="7011130656195423947">"ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</string> - <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"ವರ್ಧಿತ ನೋಟಿಫಿಕೇಶನ್ಗಳು Android 12 ರಲ್ಲಿ Android ಅಡಾಪ್ಟಿವ್ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಬದಲಾಯಿಸಿವೆ. ಈ ವೈಶಿಷ್ಟ್ಯವು ಸೂಚಿಸಿದ ಕ್ರಿಯೆಗಳು ಮತ್ತು ಪ್ರತ್ಯುತ್ತರಗಳನ್ನು ತೋರಿಸುತ್ತದೆ ಮತ್ತು ನಿಮ್ಮ ಅಧಿಸೂಚನೆಗಳನ್ನು ಆಯೋಜಿಸುತ್ತದೆ.\n\nವರ್ಧಿತ ನೋಟಿಫಿಕೇಶನ್ಗಳು ಸಂಪರ್ಕ ಹೆಸರುಗಳು ಮತ್ತು ಸಂದೇಶಗಳಂತಹ ವೈಯಕ್ತಿಕ ಮಾಹಿತಿಯನ್ನು ಒಳಗೊಂಡಂತೆ ಎಲ್ಲಾ ಅಧಿಸೂಚನೆ ವಿಷಯವನ್ನು ಪ್ರವೇಶಿಸಬಹುದು. ಈ ವೈಶಿಷ್ಟ್ಯವು ಫೋನ್ ಕರೆಗಳಿಗೆ ಉತ್ತರಿಸುವುದು ಮತ್ತು \'ಅಡಚಣೆ ಮಾಡಬೇಡಿ\' ಅನ್ನು ನಿಯಂತ್ರಿಸುವಂತಹ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ವಜಾಗೊಳಿಸಬಹುದು ಅಥವಾ ಪ್ರತಿಕ್ರಿಯಿಸಬಹುದು."</string> + <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"ವರ್ಧಿತ ನೋಟಿಫಿಕೇಶನ್ಗಳು Android 12 ರಲ್ಲಿ Android ಅಡಾಪ್ಟಿವ್ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಬದಲಾಯಿಸಿವೆ. ಈ ವೈಶಿಷ್ಟ್ಯವು ಸೂಚಿಸಿದ ಕ್ರಿಯೆಗಳು ಮತ್ತು ಪ್ರತ್ಯುತ್ತರಗಳನ್ನು ತೋರಿಸುತ್ತದೆ ಮತ್ತು ನಿಮ್ಮ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ಆಯೋಜಿಸುತ್ತದೆ.\n\nವರ್ಧಿತ ನೋಟಿಫಿಕೇಶನ್ಗಳು ಸಂಪರ್ಕ ಹೆಸರುಗಳು ಮತ್ತು ಸಂದೇಶಗಳಂತಹ ವೈಯಕ್ತಿಕ ಮಾಹಿತಿಯನ್ನು ಒಳಗೊಂಡಂತೆ ಎಲ್ಲಾ ನೋಟಿಫಿಕೇಶನ್ ವಿಷಯವನ್ನು ಪ್ರವೇಶಿಸಬಹುದು. ಈ ವೈಶಿಷ್ಟ್ಯವು ಫೋನ್ ಕರೆಗಳಿಗೆ ಉತ್ತರಿಸುವುದು ಮತ್ತು \'ಅಡಚಣೆ ಮಾಡಬೇಡಿ\' ಅನ್ನು ನಿಯಂತ್ರಿಸುವಂತಹ ನೋಟಿಫಿಕೇಶನ್ಗಳನ್ನು ವಜಾಗೊಳಿಸಬಹುದು ಅಥವಾ ಪ್ರತಿಕ್ರಿಯಿಸಬಹುದು."</string> <string name="dynamic_mode_notification_channel_name" msgid="2986926422100223328">"ದೈನಂದಿನ ಸ್ಥಿತಿಯ ಮಾಹಿತಿಯ ನೋಟಿಫಿಕೇಶನ್"</string> <string name="dynamic_mode_notification_title" msgid="1388718452788985481">"ಬ್ಯಾಟರಿ ಸೇವರ್ ಅನ್ನು ಆನ್ ಮಾಡಲಾಗಿದೆ"</string> <string name="dynamic_mode_notification_summary" msgid="1639031262484979689">"ಬ್ಯಾಟರಿ ಬಾಳಿಕೆಯನ್ನು ವಿಸ್ತರಿಸಲು ಬ್ಯಾಟರಿ ಬಳಕೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲಾಗುತ್ತಿದೆ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ಸ್ಕ್ರೀನ್ನಲ್ಲಿನ ಆ್ಯಕ್ಸೆಸಿಬಿಲಿಟಿ ಶಾರ್ಟ್ಕಟ್ ಆಯ್ಕೆ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ಆ್ಯಕ್ಸೆಸಿಬಿಲಿಟಿ ಶಾರ್ಟ್ಕಟ್"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ಅಧಿಸೂಚನೆಯ ಪರದೆಯನ್ನು ವಜಾಗೊಳಿಸಿ"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ಮೆನು"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ಮೀಡಿಯಾವನ್ನು ಪ್ಲೇ ಮಾಡಿ/ವಿರಾಮಗೊಳಿಸಿ"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ನ ಮೇಲಿನ ಬಟನ್"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ನ ಕೆಳಗಿನ ಬಟನ್"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ನ ಎಡಭಾಗದ ಬಟನ್"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"ಬಾಕಿ ಉಳಿದಿದೆ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಮತ್ತೊಮ್ಮೆ ಸೆಟಪ್ ಮಾಡಿ"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರಲಿಲ್ಲ, ಹಾಗಾಗಿ ಅದನ್ನು ಅಳಿಸಲಾಗಿದೆ"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರಲಿಲ್ಲ, ಹಾಗಾಗಿ ಅವುಗಳನ್ನು ಅಳಿಸಲಾಗಿದೆ"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿಲ್ಲ ಹಾಗೂ ಅದನ್ನು ಅಳಿಸಲಾಗಿದೆ. ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಮೂಲಕ ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ಅದನ್ನು ಪುನಃ ಸೆಟಪ್ ಮಾಡಿ."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿಲ್ಲ ಹಾಗೂ ಅವುಗಳನ್ನು ಅಳಿಸಲಾಗಿದೆ. ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಮೂಲಕ ನಿಮ್ಮ ಫೋನ್ ಅನ್ಲಾಕ್ ಮಾಡಲು ಅವುಗಳನ್ನು ಪುನಃ ಸೆಟಪ್ ಮಾಡಿ."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಗುರುತಿಸಲಾಗುವುದಿಲ್ಲ."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಗುರುತಿಸಲಾಗುವುದಿಲ್ಲ."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಗುರುತಿಸಲಾಗುವುದಿಲ್ಲ. ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಮತ್ತೊಮ್ಮೆ ಸೆಟಪ್ ಮಾಡಿ."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ಮತ್ತು <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಗುರುತಿಸಲಾಗುವುದಿಲ್ಲ. ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಮತ್ತೊಮ್ಮೆ ಸೆಟಪ್ ಮಾಡಿ."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ಫೇಸ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಮತ್ತೊಮ್ಮೆ ಸೆಟಪ್ ಮಾಡಿ"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"ನಿಮ್ಮ ಫೇಸ್ ಮಾಡೆಲ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿಲ್ಲ ಹಾಗೂ ಅದನ್ನು ಅಳಿಸಲಾಗಿದೆ. ಫೇಸ್ ಮೂಲಕ ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ಅದನ್ನು ಪುನಃ ಸೆಟಪ್ ಮಾಡಿ."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ನಿಮ್ಮ ಫೇಸ್ ಮಾಡೆಲ್ ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಗುರುತಿಸಲಾಗುವುದಿಲ್ಲ. ಫೇಸ್ ಅನ್ಲಾಕ್ ಅನ್ನು ಮತ್ತೊಮ್ಮೆ ಸೆಟಪ್ ಮಾಡಿ."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ಸೆಟಪ್ ಮಾಡಿ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ಈಗ ಬೇಡ"</string> </resources> diff --git a/core/res/res/values-ko/strings.xml b/core/res/res/values-ko/strings.xml index 62ec778a5020..775b571e7981 100644 --- a/core/res/res/values-ko/strings.xml +++ b/core/res/res/values-ko/strings.xml @@ -1197,7 +1197,7 @@ <string name="low_internal_storage_view_title" msgid="9024241779284783414">"저장 공간이 부족함"</string> <string name="low_internal_storage_view_text" msgid="8172166728369697835">"일부 시스템 기능이 작동하지 않을 수 있습니다."</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"시스템의 저장 공간이 부족합니다. 250MB의 여유 공간이 확보한 후 다시 시작하세요."</string> - <string name="app_running_notification_title" msgid="8985999749231486569">"<xliff:g id="APP_NAME">%1$s</xliff:g>이(가) 실행 중입니다."</string> + <string name="app_running_notification_title" msgid="8985999749231486569">"<xliff:g id="APP_NAME">%1$s</xliff:g> 실행 중"</string> <string name="app_running_notification_text" msgid="5120815883400228566">"자세한 내용을 보거나 앱을 중지하려면 탭하세요."</string> <string name="ok" msgid="2646370155170753815">"확인"</string> <string name="cancel" msgid="6908697720451760115">"취소"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN이 너무 짧습니다. 최소 4자 이상이어야 합니다."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"나중에 다시 시도"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"전체 화면 모드"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"종료하려면 화면 상단에서 아래로 스와이프합니다."</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"확인"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"카메라 미리보기 화면이 잘 보이도록 회전하세요."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"화면이 더 잘 보이도록 <xliff:g id="NAME">%s</xliff:g>을(를) 전체 화면에서 여세요."</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"화면상의 접근성 바로가기 선택 도구"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"접근성 단축키"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"알림 창 닫기"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"메뉴"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"미디어 재생/일시중지"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"방향 패드 위쪽"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"방향 패드 아래"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"방향 패드 왼쪽"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"작동 방식"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"대기 중…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"지문 잠금 해제 다시 설정"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> 지문이 제대로 작동하지 않아 삭제되었습니다."</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> 및 <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> 지문이 제대로 작동하지 않아 삭제되었습니다."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g>이(가) 제대로 작동하지 않아 삭제되었습니다. 지문으로 휴대전화를 잠금 해제하려면 다시 설정하세요."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> 및 <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>이(가) 제대로 작동하지 않아 삭제되었습니다. 지문으로 휴대전화를 잠금 해제하려면 다시 설정하세요."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> 지문을 더 이상 인식할 수 없습니다."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> 및 <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> 지문을 더 이상 인식할 수 없습니다."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> 지문을 더 이상 인식할 수 없습니다. 지문 잠금 해제를 다시 설정하세요."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> 및 <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> 지문을 더 이상 인식할 수 없습니다. 지문 잠금 해제를 다시 설정하세요."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"얼굴 인식 잠금 해제 다시 설정"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"얼굴 모델이 제대로 작동하지 않아 삭제되었습니다. 얼굴로 휴대전화를 잠금 해제하려면 다시 설정하세요."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"얼굴 모델을 더 이상 인식할 수 없습니다. 얼굴 인식 잠금 해제를 다시 설정하세요."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"설정"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"나중에"</string> </resources> diff --git a/core/res/res/values-ky/strings.xml b/core/res/res/values-ky/strings.xml index 4df1e7e9179a..3bf33e7379fb 100644 --- a/core/res/res/values-ky/strings.xml +++ b/core/res/res/values-ky/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN өтө кыска. Аз дегенде 4 сандан турушу керек."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Бир аздан кийин кайталап көрүңүз"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Толук экран режими"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Чыгуу үчүн экранды өйдө жагынан ылдый сүрүп коюңуз"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Түшүндүм"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Жакшыраак көрүү үчүн буруңуз"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Жакшыраак көрүү үчүн <xliff:g id="NAME">%s</xliff:g> колдонмосун толук экранда ачыңыз"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ыкчам иштетүү менюсу"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Ыкчам иштетүү"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Билдирмелер тактасын жабуу"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Меню"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Медиа файлды ойнотуу/тындыруу"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad\'дын жогорку баскычы"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad\'дын ылдыйкы баскычы"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad\'дын сол баскычы"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Ал кантип иштейт"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Кезекте турат..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Манжа изи менен ачуу функциясын кайра тууралаңыз"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ойдогудай иштебегендиктен өчүрүлдү"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> жана <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ойдогудай иштебегендиктен өчүрүлдү"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ойдогудай иштебегендиктен, жок кылынды. Телефондо Манжа изи менен ачуу функциясын колдонуу үчүн аны кайра тууралаңыз."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> жана <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ойдогудай иштебегендиктен, жок кылынды. Телефонду манжа изи менен ачуу үчүн аларды кайра тууралаңыз."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> мындан ары таанылбайт."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> жана <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> мындан ары таанылбайт."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> мындан ары таанылбайт. Манжа изи менен ачуу функциясын кайрадан тууралаңыз."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> жана <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> мындан ары таанылбайт. Манжа изи менен ачуу функциясын кайрадан тууралаңыз."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Жүзүнөн таанып ачуу функциясын кайрадан тууралаңыз"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Жүзүңүздүн үлгүсү ойдогудай иштебегендиктен, жок кылынды. Телефондо Жүзүнөн таанып ачуу функциясын колдонуу үчүн аны кайра тууралаңыз."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Жүзүңүздүн үлгүсү мындан ары таанылбайт. Жүзүнөн таанып ачуу функциясын кайрадан тууралаңыз."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Тууралоо"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Азыр эмес"</string> </resources> diff --git a/core/res/res/values-lo/strings.xml b/core/res/res/values-lo/strings.xml index 3b77acb3b236..7e664f99ebf3 100644 --- a/core/res/res/values-lo/strings.xml +++ b/core/res/res/values-lo/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN ສັ້ນເກີນໄປ. ຕ້ອງມີຢ່າງໜ້ອຍ 4 ຫຼັກ."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ລອງໃໝ່ອີກຄັ້ງໃນພາຍຫລັງ."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ການເບິ່ງເຕັມໜ້າຈໍ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ເພື່ອອອກ, ໃຫ້ປັດລົງຈາກເທິງສຸດຂອງໜ້າຈໍຂອງທ່ານ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ເຂົ້າໃຈແລ້ວ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ໝຸນເພື່ອມຸມມອງທີ່ດີຂຶ້ນ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ເປີດ <xliff:g id="NAME">%s</xliff:g> ໃນໂໝດເຕັມຈໍເພື່ອມຸມມອງທີ່ດີຂຶ້ນ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ຕົວເລືອກທາງລັດການຊ່ວຍເຂົ້າເຖິງຢູ່ໜ້າຈໍ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ທາງລັດການຊ່ວຍເຂົ້າເຖິງ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ປິດເງົາການແຈ້ງເຕືອນໄວ້"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ເມນູ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ຫຼິ້ນ/ຢຸດສື່ຊົ່ວຄາວ"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ຂຶ້ນ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ລົງ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ຊ້າຍ"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ມັນເຮັດວຽກແນວໃດ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"ລໍຖ້າດຳເນີນການ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ຕັ້ງຄ່າການປົດລັອກດ້ວຍລາຍນິ້ວມືຄືນໃໝ່"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ເຮັດວຽກໄດ້ບໍ່ດີ ແລະ ຖືກລຶບອອກແລ້ວ"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ແລະ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ເຮັດວຽກໄດ້ບໍ່ດີ ແລະ ຖືກລຶບອອກແລ້ວ"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ເຮັດວຽກໄດ້ບໍ່ດີ ແລະ ຖືກລຶບອອກແລ້ວ. ໃຫ້ຕັ້ງຄ່າມັນຄືນໃໝ່ເພື່ອປົດລັອກໂທລະສັບຂອງທ່ານດ້ວຍລາຍນິ້ວມື."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ແລະ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ເຮັດວຽກໄດ້ບໍ່ດີ ແລະ ຖືກລຶບອອກແລ້ວ. ໃຫ້ຕັ້ງຄ່າພວກມັນຄືນໃໝ່ເພື່ອປົດລັອກໂທລະສັບຂອງທ່ານດ້ວຍລາຍນິ້ວມື."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"ບໍ່ສາມາດຈຳແນກ <xliff:g id="FINGERPRINT">%s</xliff:g> ໄດ້ອີກຕໍ່ໄປ."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"ບໍ່ສາມາດຈຳແນກ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ແລະ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ໄດ້ອີກຕໍ່ໄປ."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"ບໍ່ສາມາດຈຳແນກ <xliff:g id="FINGERPRINT">%s</xliff:g> ໄດ້ອີກຕໍ່ໄປ. ກະລຸນາຕັ້ງຄ່າການປົດລັອກດ້ວຍລາຍນິ້ວມືອີກຄັ້ງ."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"ບໍ່ສາມາດຈຳແນກ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ແລະ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ໄດ້ອີກຕໍ່ໄປ. ກະລຸນາຕັ້ງຄ່າການປົດລັອກດ້ວຍລາຍນິ້ວມືອີກຄັ້ງ."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ຕັ້ງຄ່າການປົດລັອກດ້ວຍໜ້າຄືນໃໝ່"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"ຮູບແບບໃບໜ້າຂອງທ່ານເຮັດວຽກໄດ້ບໍ່ດີ ແລະ ຖືກລຶບອອກແລ້ວ. ໃຫ້ຕັ້ງຄ່າມັນຄືນໃໝ່ເພື່ອປົດລັອກໂທລະສັບຂອງທ່ານດ້ວຍໃບໜ້າ."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ບໍ່ສາມາດຈຳແນກຮູບແບບໃບໜ້າຂອງທ່ານໄດ້ອີກຕໍ່ໄປ. ກະລຸນາຕັ້ງຄ່າການປົດລັອກດ້ວຍໜ້າອີກຄັ້ງ."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ຕັ້ງຄ່າ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ບໍ່ຟ້າວເທື່ອ"</string> </resources> diff --git a/core/res/res/values-lt/strings.xml b/core/res/res/values-lt/strings.xml index b86477329068..ba2eb3407833 100644 --- a/core/res/res/values-lt/strings.xml +++ b/core/res/res/values-lt/strings.xml @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN kodas per trumpas. Jis turi būti bent 4 skaitmenų."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Vėliau bandykite dar kartą"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Peržiūrima viso ekrano režimu"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Jei norite išeiti, perbraukite žemyn nuo ekrano viršaus"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Supratau"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Pasukite, kad geriau matytumėte vaizdą"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Atidarykite „<xliff:g id="NAME">%s</xliff:g>“ viso ekrano režimu, kad geriau matytumėte vaizdą"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekrano pritaikomumo šaukinių parinkiklis"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Pritaikomumo šaukinys"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Atsisakyti pranešimų skydelio"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meniu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Leisti / pristabdyti mediją"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Valdymo pultas – aukštyn"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Valdymo pultas – žemyn"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Valdymo pultas – kairėn"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Kaip tai veikia"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Laukiama..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Atrakinimo piršto atspaudu nustatymas dar kartą"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> neveikė tinkamai ir buvo ištrintas"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ir <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> neveikė tinkamai ir buvo ištrinti"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> neveikė tinkamai ir buvo ištrintas. Nustatykite jį dar kartą, kad atrakintumėte telefoną piršto atspaudu."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ir <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> neveikė tinkamai ir buvo ištrinti. Nustatykite juos dar kartą, kad atrakintumėte telefoną piršto atspaudu."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> nebegalima atpažinti."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ir <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nebegalima atpažinti."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> nebegalima atpažinti. Dar kartą nustatykite atrakinimą piršto atspaudu."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ir <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nebegalima atpažinti. Dar kartą nustatykite atrakinimą piršto atspaudu."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Atrakinimo pagal veidą nustatymas iš naujo"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Jūsų veido modelis neveikė tinkamai ir buvo ištrintas. Nustatykite jį dar kartą, kad atrakintumėte telefoną pagal veidą."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Jūsų veido modelio nebegalima atpažinti. Iš naujo nustatykite atrakinimą pagal veidą."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Nustatyti"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne dabar"</string> </resources> diff --git a/core/res/res/values-lv/strings.xml b/core/res/res/values-lv/strings.xml index 9147e9b19a8c..0c60a4dbf5cb 100644 --- a/core/res/res/values-lv/strings.xml +++ b/core/res/res/values-lv/strings.xml @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN ir pārāk īss. Tam ir jābūt vismaz 4 ciparus garam."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Vēlāk mēģiniet vēlreiz."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Skatīšanās pilnekrāna režīmā"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Lai izietu, velciet lejup no ekrāna augšdaļas."</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Labi"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Lai uzlabotu skatu, pagrieziet ekrānu."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Labākam skatam atveriet lietotni <xliff:g id="NAME">%s</xliff:g> pilnekrāna režīmā."</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekrāna pieejamības saīsnes atlasītājs"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Pieejamības saīsne"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Nerādīt paziņojumu paneli"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Izvēlne"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Sākt/apturēt multivides atskaņošanu"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Virzienu slēdzis — augšup"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Virzienu slēdzis — lejup"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Virzienu slēdzis — pa kreisi"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Darbības principi"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Gaida…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Vēlreiz iestatiet autorizāciju ar pirksta nospiedumu"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> nedarbojās pareizi un tika izdzēsts"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> un <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nedarbojās pareizi un tika izdzēsti"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> nedarbojās pareizi un tika izdzēsts. Iestatiet to atkal, lai varētu atbloķēt tālruni ar pirksta nospiedumu."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> un <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nedarbojās pareizi un tika izdzēsti. Iestatiet tos atkal, lai varētu atbloķētu tālruni ar pirksta nospiedumu."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Pirksta nospiedumu (<xliff:g id="FINGERPRINT">%s</xliff:g>) vairs nevar atpazīt."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Pirkstu nospiedumus (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> un <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) vairs nevar atpazīt."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Pirksta nospiedumu (<xliff:g id="FINGERPRINT">%s</xliff:g>) vairs nevar atpazīt. Vēlreiz iestatiet autorizāciju ar pirksta nospiedumu."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Pirkstu nospiedumus (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> un <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) vairs nevar atpazīt. Vēlreiz iestatiet autorizāciju ar pirksta nospiedumu."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Vēlreiz iestatiet autorizāciju pēc sejas"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Jūsu sejas modelis nedarbojās pareizi un tika izdzēsts. Iestatiet to atkal, lai varētu atbloķēt tālruni ar seju."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Jūsu sejas modeli vairs nevar atpazīt. Vēlreiz iestatiet autorizāciju pēc sejas."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Iestatīt"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne tagad"</string> </resources> diff --git a/core/res/res/values-mk/strings.xml b/core/res/res/values-mk/strings.xml index f4ed8533be2f..110a582e6ac8 100644 --- a/core/res/res/values-mk/strings.xml +++ b/core/res/res/values-mk/strings.xml @@ -209,7 +209,7 @@ <string name="location_changed_notification_text" msgid="7158423339982706912">"Контактирајте со IT-администраторот за да дознаете повеќе"</string> <string name="geofencing_service" msgid="3826902410740315456">"Услуга за виртуелна географска граница"</string> <string name="country_detector" msgid="7023275114706088854">"Детектор на земја"</string> - <string name="location_service" msgid="2439187616018455546">"Услуга за локација"</string> + <string name="location_service" msgid="2439187616018455546">"Локациска услуга"</string> <string name="gnss_service" msgid="8907781262179951385">"Услуга GNSS"</string> <string name="sensor_notification_service" msgid="7474531979178682676">"Услуга за известување од сензорот"</string> <string name="twilight_service" msgid="8964898045693187224">"Услуга за самрак"</string> @@ -498,9 +498,9 @@ <string name="permlab_accessLocationExtraCommands" msgid="5162339812057983988">"пристапи кон наредби на давателот на дополнителна локација"</string> <string name="permdesc_accessLocationExtraCommands" msgid="355369611979907967">"Овозможува апликацијата да пристапи кон дополнителни наредби на давател на локација. Ова може да овозможи апликацијата да го попечи функционирањето на GPS или други извори на локација."</string> <string name="permlab_accessFineLocation" msgid="6426318438195622966">"пристап до прецизната локација само во преден план"</string> - <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Апликацијава може да ја добие вашата прецизна локација од „Услугите според локација“ кога се користи. „Услугите според локација“ за уредот мора да се вклучени ако сакате апликацијата да ја добие локацијата. Ова може да го зголеми користењето на батеријата."</string> + <string name="permdesc_accessFineLocation" msgid="6732174080240016335">"Апликацијава може да ја добие вашата прецизна локација од „Локациските услуги“ кога се користи. „Локациските услуги“ за уредот мора да се вклучени ако сакате апликацијата да ја добие локацијата. Ова може да го зголеми користењето на батеријата."</string> <string name="permlab_accessCoarseLocation" msgid="1561042925407799741">"пристап до приближната локација само во преден план"</string> - <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Апликацијава може да ја добие вашата приближна локација од „Услугите според локација“ кога се користи. „Услугите според локација“ за уредот мора да се вклучени ако сакате апликацијата да ја добие локацијата."</string> + <string name="permdesc_accessCoarseLocation" msgid="778521847873199160">"Апликацијава може да ја добие вашата приближна локација од „Локациските услуги“ кога се користи. „Локациските услуги“ за уредот мора да се вклучени ако сакате апликацијата да ја добие локацијата."</string> <string name="permlab_accessBackgroundLocation" msgid="1721164702777366138">"пристап до локацијата во заднина"</string> <string name="permdesc_accessBackgroundLocation" msgid="8264885066095638105">"Апликацијава може да пристапува до локацијата во секое време, дури и кога не се користи."</string> <string name="permlab_modifyAudioSettings" msgid="6129039778010031815">"менува аудио поставки"</string> @@ -1242,7 +1242,7 @@ <string name="alwaysUse" msgid="3153558199076112903">"Користи ја стандардно за ова дејство."</string> <string name="use_a_different_app" msgid="4987790276170972776">"Користи различна апликација"</string> <string name="clearDefaultHintMsg" msgid="1325866337702524936">"Избриши ги стандардните вредности во Системски поставки > Апликации > Преземено."</string> - <string name="chooseActivity" msgid="8563390197659779956">"Избери дејство"</string> + <string name="chooseActivity" msgid="8563390197659779956">"Изберете дејство"</string> <string name="chooseUsbActivity" msgid="2096269989990986612">"Изберете апликација за USB-уредот"</string> <string name="noApplications" msgid="1186909265235544019">"Нема апликации што можат да го извршат ова дејство."</string> <string name="aerr_application" msgid="4090916809370389109">"<xliff:g id="APPLICATION">%1$s</xliff:g> запре"</string> @@ -1310,7 +1310,7 @@ <string name="dump_heap_text" msgid="1692649033835719336">"Процесот <xliff:g id="PROC">%1$s</xliff:g> го надмина ограничувањето за меморија од <xliff:g id="SIZE">%2$s</xliff:g>. Слика од меморијата ви е достапна за споделување со програмерот. Бидете внимателни: оваа слика од меморијата може да ги содржи сите лични информации до коишто апликацијата има пристап."</string> <string name="dump_heap_system_text" msgid="6805155514925350849">"Процесот <xliff:g id="PROC">%1$s</xliff:g> го надмина ограничувањето за меморија од <xliff:g id="SIZE">%2$s</xliff:g>. Слика од меморијата ви е достапна за споделување. Бидете внимателни: оваа слика од меморијата може да содржи чувствителни лични информации до коишто процесот има пристап, што може да вклучуваат работи што сте ги напишале."</string> <string name="dump_heap_ready_text" msgid="5849618132123045516">"Слика од меморијата на <xliff:g id="PROC">%1$s</xliff:g> ви е достапна за споделување. Бидете внимателни: оваа слика од меморијата можеби ги содржи сите чувствителни лични информации до коишто процесот има пристап, што може да вклучуваат работи што сте ги напишале."</string> - <string name="sendText" msgid="493003724401350724">"Избери дејство за текст"</string> + <string name="sendText" msgid="493003724401350724">"Изберете дејство за текст"</string> <string name="volume_ringtone" msgid="134784084629229029">"Јачина на звук на ѕвонче"</string> <string name="volume_music" msgid="7727274216734955095">"Јачина на звук за аудио/видео"</string> <string name="volume_music_hint_playing_through_bluetooth" msgid="2614142915948898228">"Се репродуцира преку Bluetooth"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN кодот е премногу краток. Мора да има најмалку 4 цифри."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Обиди се повторно подоцна"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Се прикажува на цел екран"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"За да излезете, повлечете надолу од горниот дел на екранот"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Сфатив"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Ротирајте за подобар приказ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"За подобар приказ, отворете ја апликацијата <xliff:g id="NAME">%s</xliff:g> на цел екран"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Избирач на кратенка за пристапност на екранот"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Кратенка за пристапност"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Отфрлете го панелот за известување"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Мени"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Пушти/паузирај аудиовизуелни содржини"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Навигациско копче за нагоре"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Навигациско копче за надолу"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Навигациско копче за налево"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Дознајте како функционира"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Во фаза на чекање…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Поставете „Отклучување со отпечаток“ повторно"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> не функционираше добро, па се избриша"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> не функционираа добро, па се избришаа"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> не функционираше добро, па се избриша. Поставете го повторно за да го отклучувате телефонот со отпечаток."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> не функционираа добро, па се избришаа. Поставете ги повторно за да го отклучувате телефонот со отпечаток."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> веќе не може да се препознае."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> веќе не може да се препознаат."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> веќе не може да се препознае. Поставете „Отклучување со отпечаток“ повторно."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> веќе не може да се препознаат. Поставете „Отклучување со отпечаток“ повторно."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Поставете „Отклучување со лик“ повторно"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Вашиот модел на лик не функционираше добро, па се избриша. Поставете го повторно за да го отклучите телефонот со лик."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Вашиот модел на лик веќе не може да се препознае. Поставете „Отклучување со лик“ повторно."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Поставете"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не сега"</string> </resources> diff --git a/core/res/res/values-ml/strings.xml b/core/res/res/values-ml/strings.xml index ede15a1a7136..959ed52343aa 100644 --- a/core/res/res/values-ml/strings.xml +++ b/core/res/res/values-ml/strings.xml @@ -204,7 +204,7 @@ <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"സ്വകാര്യ സ്പേസ് നീക്കം ചെയ്തു"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"മാനേജ് ചെയ്യപ്പെടുന്ന ഈ ഉപകരണത്തിൽ നിങ്ങളുടെ സ്ഥാപനം സ്വകാര്യ സ്പേസുകൾ അനുവദിക്കുന്നില്ല."</string> <string name="network_logging_notification_title" msgid="554983187553845004">"ഉപകരണം മാനേജുചെയ്യുന്നുണ്ട്"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"നിങ്ങളുടെ സ്ഥാപനമാണ് ഈ ഉപകരണം മാനേജുചെയ്യുന്നത്, നെറ്റ്വർക്ക് ട്രാഫിക്ക് നിരീക്ഷിക്കുകയും ചെയ്തേക്കാം, വിശദാംശങ്ങൾ അറിയാൻ ടാപ്പുചെയ്യുക."</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"നിങ്ങളുടെ സ്ഥാപനം ഈ ഉപകരണം മാനേജ് ചെയ്യുകയും നെറ്റ്വർക്ക് ട്രാഫിക്ക് നിരീക്ഷിക്കുകയും ചെയ്തേക്കാം, വിശദാംശങ്ങൾ അറിയാൻ ടാപ്പുചെയ്യുക."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"ആപ്പുകൾക്ക് നിങ്ങളുടെ ലൊക്കേഷൻ ആക്സസ് ചെയ്യാനാകും"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"കൂടുതലറിയാൻ നിങ്ങളുടെ ഐടി അഡ്മിനെ ബന്ധപ്പെടുക"</string> <string name="geofencing_service" msgid="3826902410740315456">"ജിയോഫെൻസിംഗ് സേവനം"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"പിൻ തീരെ ചെറുതാണ്. 4 അക്കമെങ്കിലും ഉണ്ടായിരിക്കണം."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"പിന്നീട് വീണ്ടും ശ്രമിക്കുക"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"പൂർണ്ണ സ്ക്രീനിൽ കാണുന്നു"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"പുറത്ത് കടക്കാൻ, സ്ക്രീനിന്റെ മുകളിൽ നിന്ന് താഴോട്ട് സ്വൈപ്പ് ചെയ്യുക"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"മനസ്സിലായി"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"മികച്ച കാഴ്ചയ്ക്കായി റൊട്ടേറ്റ് ചെയ്യുക"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"മികച്ച കാഴ്ചയ്ക്ക് പൂർണ്ണ സ്ക്രീനിൽ <xliff:g id="NAME">%s</xliff:g> തുറക്കുക"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"സ്ക്രീനിലെ ഉപയോഗസഹായി കുറുക്കുവഴി ചൂസർ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ഉപയോഗസഹായി കുറുക്കുവഴി"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"അറിയിപ്പ് ഷെയ്ഡ് ഡിസ്മിസ് ചെയ്യുക"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"മെനു"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"മീഡിയ പ്ലേ ചെയ്യുക/താൽക്കാലികമായി നിർത്തുക"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad അപ്പ്"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ഡൗൺ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ലെഫ്റ്റ്"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"സ്വകാര്യ സ്പേസ്"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"സൂക്ഷ്മമായി കൈകാര്യം ചെയ്യേണ്ട അറിയിപ്പ് ഉള്ളടക്കം മറച്ചിരിക്കുന്നു"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"ആപ്പ് ഉള്ളടക്കം, അതിന്റെ സുരക്ഷയ്ക്കായി സ്ക്രീൻ പങ്കിടലിൽ നിന്ന് മറച്ചിരിക്കുന്നു"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"സുരക്ഷയ്ക്കായി സ്ക്രീൻ പങ്കിടലിൽ നിന്ന് ആപ്പ് ഉള്ളടക്കം മറച്ചിരിക്കുന്നു"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"സാറ്റലൈറ്റിലേക്ക് സ്വയമേവ കണക്റ്റ് ചെയ്തു"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"മൊബൈലോ വൈഫൈ നെറ്റ്വർക്കോ ഇല്ലാതെ തന്നെ സന്ദേശങ്ങൾ അയയ്ക്കാനും സ്വീകരിക്കാനും നിങ്ങൾക്ക് കഴിയും"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Messages തുറക്കുക"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ഇത് പ്രവർത്തിക്കുന്നത് എങ്ങനെയാണ്"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"തീർപ്പാക്കിയിട്ടില്ല..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ഫിംഗർപ്രിന്റ് അൺലോക്ക് വീണ്ടും സജ്ജീകരിക്കുക"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ശരിയായി പ്രവർത്തിക്കാത്തതിനാൽ അത് ഇല്ലാതാക്കി"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> എന്നിവ ശരിയായി പ്രവർത്തിക്കാത്തതിനാൽ അവ ഇല്ലാതാക്കി"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ശരിയായി പ്രവർത്തിക്കാത്തതിനാൽ അത് ഇല്ലാതാക്കി. നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് ഫോൺ അൺലോക്ക് ചെയ്യുന്നതിനായി വീണ്ടും സജ്ജീകരിക്കുക."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> എന്നിവ ശരിയായി പ്രവർത്തിക്കാത്തതിനാൽ അവ ഇല്ലാതാക്കി. നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് ഫോൺ അൺലോക്ക് ചെയ്യുന്നതിനായി അവ വീണ്ടും സജ്ജീകരിക്കുക."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ഇനി തിരിച്ചറിയാനാകില്ല."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> എന്നിവ ഇനി തിരിച്ചറിയാനാകില്ല."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ഇനി തിരിച്ചറിയാനാകില്ല. ഫിംഗർപ്രിന്റ് അൺലോക്ക് വീണ്ടും സജ്ജീകരിക്കുക."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> എന്നിവ ഇനി തിരിച്ചറിയാനാകില്ല. ഫിംഗർപ്രിന്റ് അൺലോക്ക് വീണ്ടും സജ്ജീകരിക്കുക."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ഫെയ്സ് അൺലോക്ക് വീണ്ടും സജ്ജീകരിക്കുക"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"നിങ്ങളുടെ മുഖ മോഡൽ ശരിയായി പ്രവർത്തിക്കാത്തതിനാൽ അത് ഇല്ലാതാക്കി. നിങ്ങളുടെ മുഖം ഉപയോഗിച്ച് ഫോൺ അൺലോക്ക് ചെയ്യുന്നതിനായി വീണ്ടും സജ്ജീകരിക്കുക."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"നിങ്ങളുടെ മുഖ മോഡൽ ഇനി തിരിച്ചറിയാനാകില്ല. ഫെയ്സ് അൺലോക്ക് വീണ്ടും സജ്ജീകരിക്കുക."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"സജ്ജീകരിക്കുക"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ഇപ്പോൾ വേണ്ട"</string> </resources> diff --git a/core/res/res/values-mn/strings.xml b/core/res/res/values-mn/strings.xml index 955b025d2243..f6b8a247625c 100644 --- a/core/res/res/values-mn/strings.xml +++ b/core/res/res/values-mn/strings.xml @@ -312,7 +312,7 @@ <string name="foreground_service_tap_for_details" msgid="9078123626015586751">"Батарей, дата ашиглалтын талаар дэлгэрэнгүйг харахын тулд товшино уу"</string> <string name="foreground_service_multiple_separator" msgid="5002287361849863168">"<xliff:g id="LEFT_SIDE">%1$s</xliff:g>, <xliff:g id="RIGHT_SIDE">%2$s</xliff:g>"</string> <string name="safeMode" msgid="8974401416068943888">"Аюулгүй горим"</string> - <string name="android_system_label" msgid="5974767339591067210">"Андройд систем"</string> + <string name="android_system_label" msgid="5974767339591067210">"Android систем"</string> <string name="user_owner_label" msgid="8628726904184471211">"Хувийн профайл руу сэлгэх"</string> <string name="managed_profile_label" msgid="7316778766973512382">"Ажлын профайл руу сэлгэх"</string> <string name="user_owner_app_label" msgid="1553595155465750298">"Хувийн <xliff:g id="APP_NAME">%1$s</xliff:g> руу сэлгэх"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ПИН хэт богино байна. Хамгийн багадаа 4 цифртэй байх ёстой."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Дараа дахин оролдоно уу"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Бүтэн дэлгэцээр үзэж байна"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Гарахын тулд дэлгэцийнхээ дээд талаас доош шударна уу"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ойлголоо"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Харагдах байдлыг сайжруулах бол эргүүлнэ үү"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Харагдах байдлыг сайжруулах бол <xliff:g id="NAME">%s</xliff:g>-г бүтэн дэлгэцээр нээнэ үү"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Дэлгэц дээрх хандалтын товчлол сонгогч"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Хандалтын товчлол"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Мэдэгдлийн хураангуй самбарыг хаах"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Цэс"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Медиаг тоглуулах/түр зогсоох"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad дээш"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad доош"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad зүүн"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Хаалттай орон зай"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Эмзэг мэдэгдлийн контентыг нуусан"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Аюулгүй байдлын улмаас аппын контентыг дэлгэц хуваалцахаас нуусан"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Аюулгүй байдлын үүднээс аппын контентыг дэлгэц хуваалцахаас нуусан"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Хиймэл дагуулд автоматаар холбогдсон"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Та мобайл эсвэл Wi-Fi сүлжээгүйгээр мессеж илгээх болон хүлээн авах боломжтой"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Мессежийг нээх"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Энэ хэрхэн ажилладаг вэ?"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Хүлээгдэж буй..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Хурууны хээгээр түгжээ тайлахыг дахин тохируулна уу"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> сайн ажиллахгүй байсан тул хурууны хээг устгасан"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> болон <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> сайн ажиллахгүй байсан тул эдгээр хурууны хээг устгасан"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> сайн ажиллахгүй байсан тул үүнийг устгасан. Утасныхаа түгжээг хурууны хээгээр тайлахын тулд хурууны хээг дахин тохируулна уу."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> сайн ажиллахгүй байсан тул эдгээрийг устгасан. Утасныхаа түгжээг хурууныхаа хээгээр тайлахын тулд хоёр хурууны хээг дахин тохируулна уу."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>-г цаашид таних боломжгүй."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> болон <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>-г цаашид таних боломжгүй."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>-г цаашид таних боломжгүй. Хурууны хээгээр түгжээ тайлахыг дахин тохируулна уу."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> болон <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>-г цаашид таних боломжгүй. Хурууны хээгээр түгжээ тайлахыг дахин тохируулна уу."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Царайгаар түгжээ тайлахыг дахин тохируулна уу"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Таны нүүрний загвар сайн ажиллахгүй байсан бөгөөд үүнийг устгасан. Утасныхаа түгжээг царайгаар тайлахын тулд нүүрний загварыг дахин тохируулна уу."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Таны нүүрний загварыг цаашид таних боломжгүй. Царайгаар түгжээ тайлахыг дахин тохируулна уу."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Тохируулах"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Одоо биш"</string> </resources> diff --git a/core/res/res/values-mr/strings.xml b/core/res/res/values-mr/strings.xml index 2df1bc9ad67c..79342b3720bb 100644 --- a/core/res/res/values-mr/strings.xml +++ b/core/res/res/values-mr/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"पिन खूप लहान आहे. किमान 4 अंकांचा असणे आवश्यक आहे."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"नंतर पुन्हा प्रयत्न करा"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"पूर्ण स्क्रीनवर पाहत आहात"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"बाहेर पडण्यासाठी, तुमच्या स्क्रीनच्या सर्वात वरून खाली स्वाइप करा"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"समजले"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"अधिक चांगल्या दृश्यासाठी फिरवा"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"अधिक चांगल्या दृश्यासाठी <xliff:g id="NAME">%s</xliff:g> हे फुल स्क्रीनमध्ये उघडा"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ऑन-स्क्रीन ॲक्सेसिबिलिटी शॉर्टकट निवडकर्ता"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"अॅक्सेसिबिलिटी शॉर्टकट"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"सूचना शेड डिसमिस करा"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"मेनू"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"मीडिया प्ले करा/थांबवा"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad चे वरील"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad चे खालचे"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad डावीकडील"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ते कसे काम करते"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"प्रलंबित आहे..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"फिंगरप्रिंट अनलॉक पुन्हा सेट करा"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> योग्यरीत्या काम करत नव्हती, त्यामुळे ती हटवली आहे"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> आणि <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> योग्यरीत्या काम करत नव्हत्या, त्यामुळे त्या हटवल्या आहेत"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"योग्यरीत्या काम करत नसल्यामुळे <xliff:g id="FINGERPRINT">%s</xliff:g> हटवले गेले आहे. तुमचे फिंगरप्रिंट वापरून फोन अनलॉक करण्यासाठी ते पुन्हा सेट करा."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"परफॉर्मन्समध्ये सुधारणा करण्यासाठी आणि योग्यरीत्या काम करत नसल्यामुळे <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> व <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> हटवली गेली आहेत. तुमचे फिंगरप्रिंट वापरून फोन अनलॉक करण्यासाठी ते पुन्हा सेट करा."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> यापुढे ओळखता येणार नाही."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> आणि <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> यापुढे ओळखता येणार नाहीत."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> यापुढे ओळखता येणार नाही. फिंगरप्रिंट अनलॉक पुन्हा सेट करा."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> आणि <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> यापुढे ओळखता येणार नाहीत. फिंगरप्रिंट अनलॉक पुन्हा सेट करा."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"फेस अनलॉक पुन्हा सेट करा"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"तुमचे फेस मॉडेल योग्यरीत्या काम करत नसल्यामुळे ते हटवले गेले आहे. तुमचा चेहरा वापरून फोन अनलॉक करण्यासाठी ते पुन्हा सेट करा."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"तुमचे फेस मॉडेल यापुढे ओळखता येणार नाही. फेस अनलॉक पुन्हा सेट करा."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"सेट करा"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"आताच नको"</string> </resources> diff --git a/core/res/res/values-ms/strings.xml b/core/res/res/values-ms/strings.xml index 31180beb3922..ce72ab683350 100644 --- a/core/res/res/values-ms/strings.xml +++ b/core/res/res/values-ms/strings.xml @@ -642,7 +642,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Membenarkan apl membaca lokasi daripada koleksi media anda."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Gunakan biometrik"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Gunakan biometrik atau kunci skrin"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Sahkan itu anda"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Sahkan diri anda"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Gunakan biometrik anda untuk meneruskan"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Gunakan biometrik atau kunci skrin anda untuk meneruskan pengesahan"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"Perkakasan biometrik tidak tersedia"</string> @@ -1436,7 +1436,7 @@ <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Paparkan di atas apl lain"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> dipaparkan di atas apl lain"</string> <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> dipaparkan di atas apl lain"</string> - <string name="alert_windows_notification_message" msgid="6538171456970725333">"Jika anda tidak mahu <xliff:g id="NAME">%s</xliff:g> menggunakan ciri ini, ketik untuk membuka tetapan dan matikannya."</string> + <string name="alert_windows_notification_message" msgid="6538171456970725333">"Jika anda tidak mahu <xliff:g id="NAME">%s</xliff:g> menggunakan ciri ini, ketik untuk membuka tetapan dan matikan ciri tersebut."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Matikan"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Menyemak <xliff:g id="NAME">%s</xliff:g>…"</string> <string name="ext_media_checking_notification_message" msgid="2231566971425375542">"Menyemak kandungan semasa"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN terlalu pendek. Mesti sekurang-kurangnya 4 angka."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Cuba sebentar lagi"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Melihat skrin penuh"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Untuk keluar, leret ke bawah daripada bahagian atas skrin anda"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Faham"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Putar untuk mendapatkan paparan yang lebih baik"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Buka <xliff:g id="NAME">%s</xliff:g> dalam skrin penuh untuk mendapatkan paparan yang lebih baik"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Pemilih Pintasan Kebolehaksesan Pada Skrin"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Pintasan Kebolehaksesan"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ketepikan Bidai Pemberitahuan"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Mainkan/Jeda Media"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Atas"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Bawah"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Kiri"</string> @@ -2227,7 +2228,7 @@ <string name="miniresolver_private_space_messages_information" msgid="111285656327622118">"Anda hanya boleh menghantar mesej SMS daripada apl Messages peribadi anda."</string> <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="miniresolver_call" msgid="6386870060423480765">"Panggil"</string> + <string name="miniresolver_call" msgid="6386870060423480765">"Telefon"</string> <string name="miniresolver_switch" msgid="8011924662117617451">"Beralih"</string> <string name="PERSOSUBSTATE_SIM_NETWORK_ENTRY" msgid="8050953231914637819">"PIN buka kunci rangkaian SIM"</string> <string name="PERSOSUBSTATE_SIM_NETWORK_SUBSET_ENTRY" msgid="7164399703751688214">"PIN buka kunci subset rangkaian SIM"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cara ciri ini berfungsi"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Belum selesai..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Sediakan Buka Kunci Cap Jari sekali lagi"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak berfungsi dengan baik dan telah dipadamkan"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak berfungsi dengan baik dan telah dipadamkan"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak berfungsi dengan baik dan telah dipadamkan. Sediakan cap jari sekali lagi untuk membuka kunci telefon anda menggunakan cap jari."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak berfungsi dengan baik dan telah dipadamkan. Sediakan kedua-dua cap jari tersebut sekali lagi untuk membuka kunci telefon anda menggunakan cap jari anda."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak dapat dicam lagi."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak dapat dicam lagi."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> tidak dapat dicam lagi. Sediakan semula Buka Kunci Cap Jari."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dan <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> tidak dapat dicam lagi. Sediakan semula Buka Kunci Cap Jari."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Sediakan semula Buka Kunci Wajah"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Model wajah anda tidak berfungsi dengan baik dan telah dipadamkan. Sediakan model wajah sekali lagi untuk membuka kunci telefon anda menggunakan wajah."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Model wajah anda tidak dapat dicam lagi. Sediakan semula Buka Kunci Wajah."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Sediakan"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Bukan sekarang"</string> </resources> diff --git a/core/res/res/values-my/strings.xml b/core/res/res/values-my/strings.xml index f1ab9e0a4d5a..6137e29ce86c 100644 --- a/core/res/res/values-my/strings.xml +++ b/core/res/res/values-my/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ပင် နံပါတ် တိုလွန်းသည်။. အနည်းဆုံး ဂဏန်း ၄ လုံး ဖြစ်ရမည်။"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"နောက်မှ ပြန်ကြိုးစားပါ"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"မျက်နှာပြင်အပြည့် ကြည့်နေသည်"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ထွက်ရန် သင့်ဖန်သားပြင်ထိပ်မှ အောက်သို့ ပွတ်ဆွဲပါ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ရပါပြီ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ပိုကောင်းသောမြင်ကွင်းအတွက် လှည့်ပါ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ပိုကောင်းသောမြင်ကွင်းအတွက် ဖန်သားပြင်အပြည့်ဖြင့် <xliff:g id="NAME">%s</xliff:g> ကို ဖွင့်ပါ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ဖန်သားပြင်အတွက် အများသုံးစွဲနိုင်မှုဖြတ်လမ်းလင့်ခ် ရွေးချယ်စနစ်"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"အများသုံးနိုင်မှု ဖြတ်လမ်းလင့်ခ်"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"အကြောင်းကြားစာအကွက်ကို ပယ်ရန်"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"မီနူး"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"မီဒီယာ ဖွင့်ရန်/ခဏရပ်ရန်"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad အပေါ်"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad အောက်"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ဘယ်"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"သီးသန့်နေရာ"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"သတိထားရမည့် အကြောင်းကြားချက်ပါ အချက်အလက်ကို ဖျောက်ထားသည်"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"အက်ပ်အကြောင်းအရာသည် လုံခြုံရေးအတွက် မျက်နှာပြင် မျှဝေခြင်းမှ ဖျောက်ထားသည်"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"လုံခြုံရေးအတွက် အက်ပ်အကြောင်းအရာကို ဖန်သားပြင် မျှဝေခြင်းတွင် ဖျောက်ထားသည်"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"ဂြိုဟ်တုနှင့် အလိုအလျောက် ချိတ်ဆက်ထားသည်"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"မိုဘိုင်း (သို့) Wi-Fi ကွန်ရက်မရှိဘဲ မက်ဆေ့ဂျ်များကို ပို့နိုင်၊ လက်ခံနိုင်သည်"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Messages ဖွင့်ရန်"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"အလုပ်လုပ်ပုံ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"ဆိုင်းငံ့ထားသည်…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ ကို စနစ်ထပ်မံထည့်သွင်းပါ"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> သိပ်အဆင်မပြေသဖြင့် ဖျက်ထားသည်"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> နှင့် <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> တို့ သိပ်အဆင်မပြေသဖြင့် ဖျက်ထားသည်"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> သိပ်အဆင်မပြေသဖြင့် ဖျက်ထားသည်။ သင့်ဖုန်းကို လက်ဗွေဖြင့်လော့ခ်ဖွင့်ရန် ၎င်းကို စနစ်ထပ်မံထည့်သွင်းပါ။"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> နှင့် <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> တို့ သိပ်အဆင်မပြေသဖြင့် ဖျက်ထားသည်။ သင့်ဖုန်းကို လက်ဗွေဖြင့်လော့ခ်ဖွင့်ရန် ၎င်းတို့ကို စနစ်ထပ်မံထည့်သွင်းပါ။"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ကို မသိရှိနိုင်တော့ပါ။"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> နှင့် <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ကို မသိရှိနိုင်တော့ပါ။"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ကို မသိရှိနိုင်တော့ပါ။ ‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ ထပ်မံစနစ်ထည့်သွင်းပါ။"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> နှင့် <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ကို မသိရှိနိုင်တော့ပါ။ ‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ ထပ်မံစနစ်ထည့်သွင်းပါ။"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ ကို စနစ်ထပ်မံထည့်သွင်းပါ"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"သင့်မျက်နှာနမူနာ သိပ်အဆင်မပြေသဖြင့် ဖျက်ထားသည်။ သင့်ဖုန်းကို မျက်နှာဖြင့်လော့ခ်ဖွင့်ရန် ၎င်းကို စနစ်ထပ်မံထည့်သွင်းပါ။"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"သင်၏မျက်နှာနမူနာကို မသိရှိနိုင်တော့ပါ။ ‘မျက်နှာပြ လော့ခ်ဖွင့်ခြင်း’ ထပ်မံစနစ်ထည့်သွင်းပါ။"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"စနစ်ထည့်သွင်းရန်"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ယခုမလုပ်ပါ"</string> </resources> diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml index 456366f13722..cd6f21bf2bfa 100644 --- a/core/res/res/values-nb/strings.xml +++ b/core/res/res/values-nb/strings.xml @@ -264,16 +264,16 @@ <string name="global_action_emergency" msgid="1387617624177105088">"Nødssituasjon"</string> <string name="global_action_bug_report" msgid="5127867163044170003">"Feilrapport"</string> <string name="global_action_logout" msgid="6093581310002476511">"Avslutt økten"</string> - <string name="global_action_screenshot" msgid="2610053466156478564">"Skjermdump"</string> + <string name="global_action_screenshot" msgid="2610053466156478564">"Skjermbilde"</string> <string name="bugreport_title" msgid="8549990811777373050">"Feilrapport"</string> <string name="bugreport_message" msgid="5212529146119624326">"Informasjon om tilstanden til enheten din samles inn og sendes som en e-post. Det tar litt tid fra du starter feilrapporten til e-posten er klar, så vær tålmodig."</string> <string name="bugreport_option_interactive_title" msgid="7968287837902871289">"Interaktiv rapport"</string> - <string name="bugreport_option_interactive_summary" msgid="8493795476325339542">"Bruk dette alternativet i de fleste tilfeller. Da kan du spore fremgangen for rapporten, skrive inn flere detaljer om problemet samt ta skjermdumper. Noen deler som tar lang tid å behandle, blir kanskje utelatt."</string> + <string name="bugreport_option_interactive_summary" msgid="8493795476325339542">"Bruk dette alternativet i de fleste tilfeller. Da kan du spore fremgangen for rapporten, skrive inn flere detaljer om problemet samt ta skjermbilder. Noen deler som tar lang tid å behandle, blir kanskje utelatt."</string> <string name="bugreport_option_full_title" msgid="7681035745950045690">"Fullstendig rapport"</string> - <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Bruk dette alternativet for minst mulig forstyrrelse på systemet når enheten din er treg eller ikke svarer, eller når du trenger alle rapportdelene. Det tas ikke noen skjermdump, og du kan ikke legge til flere detaljer."</string> - <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Tar skjermdump for feilrapporten om # sekund.}other{Tar skjermdump for feilrapporten om # sekunder.}}"</string> - <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"En skjermdump er tatt med feilrapporten"</string> - <string name="bugreport_screenshot_failure_toast" msgid="6736320861311294294">"Kunne ikke ta skjermdump med feilrapporten"</string> + <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Bruk dette alternativet for minst mulig forstyrrelse på systemet når enheten din er treg eller ikke svarer, eller når du trenger alle rapportdelene. Det tas ikke noen skjermbilde, og du kan ikke legge til flere detaljer."</string> + <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Tar skjermbilde for feilrapporten om # sekund.}other{Tar skjermbilde for feilrapporten om # sekunder.}}"</string> + <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"En skjermbilde er tatt med feilrapporten"</string> + <string name="bugreport_screenshot_failure_toast" msgid="6736320861311294294">"Kunne ikke ta skjermbilde med feilrapporten"</string> <string name="global_action_toggle_silent_mode" msgid="8464352592860372188">"Stillemodus"</string> <string name="global_action_silent_mode_on_status" msgid="2371892537738632013">"Lyden er av"</string> <string name="global_action_silent_mode_off_status" msgid="6608006545950920042">"Lyden er på"</string> @@ -359,8 +359,8 @@ <string name="capability_desc_canPerformGestures" msgid="6619457251067929726">"Kan trykke, sveipe, klype og gjøre andre bevegelser."</string> <string name="capability_title_canCaptureFingerprintGestures" msgid="1189053104594608091">"Bevegelser på fingeravtrykkssensor"</string> <string name="capability_desc_canCaptureFingerprintGestures" msgid="6861869337457461274">"Kan fange inn bevegelser som utføres på enhetens fingeravtrykkssensor."</string> - <string name="capability_title_canTakeScreenshot" msgid="3895812893130071930">"Ta skjermdump"</string> - <string name="capability_desc_canTakeScreenshot" msgid="7762297374317934052">"Kan ikke ta en skjermdump av skjermen."</string> + <string name="capability_title_canTakeScreenshot" msgid="3895812893130071930">"Ta skjermbilde"</string> + <string name="capability_desc_canTakeScreenshot" msgid="7762297374317934052">"Kan ikke ta et skjermbilde av skjermen."</string> <string name="dream_preview_title" msgid="5570751491996100804">"Forhåndsvisning, <xliff:g id="DREAM_NAME">%1$s</xliff:g>"</string> <string name="dream_accessibility_action_click" msgid="7392398629967797805">"lukk"</string> <string name="permlab_statusBar" msgid="8798267849526214017">"deaktivere eller endre statusfeltet"</string> @@ -509,8 +509,8 @@ <string name="permdesc_recordAudio" msgid="5857246765327514062">"Denne appen kan ta opp lyd med mikrofonen mens den er i bruk."</string> <string name="permlab_recordBackgroundAudio" msgid="5891032812308878254">"ta opp lyd i bakgrunnen"</string> <string name="permdesc_recordBackgroundAudio" msgid="1992623135737407516">"Denne appen kan når som helst ta opp lyd med mikrofonen."</string> - <string name="permlab_detectScreenCapture" msgid="4447042362828799433">"registrere skjermdumper av appvinduer"</string> - <string name="permdesc_detectScreenCapture" msgid="3485784917960342284">"Denne appen varsles hvis det tas skjermdumper mens appen er i bruk."</string> + <string name="permlab_detectScreenCapture" msgid="4447042362828799433">"registrere skjermbilder av appvinduer"</string> + <string name="permdesc_detectScreenCapture" msgid="3485784917960342284">"Denne appen varsles hvis det tas skjermbilder mens appen er i bruk."</string> <string name="permlab_sim_communication" msgid="176788115994050692">"sende kommandoer til SIM-kortet"</string> <string name="permdesc_sim_communication" msgid="4179799296415957960">"Lar appen sende kommandoer til SIM-kortet. Dette er veldig farlig."</string> <string name="permlab_activityRecognition" msgid="1782303296053990884">"gjenkjenn fysisk aktivitet"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-koden er for kort. Den må bestå av minst fire sifre."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Prøv på nytt senere"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visning i fullskjerm"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"For å gå ut, sveip ned fra toppen av skjermen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Skjønner"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Roter for å få en bedre visning"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Åpne <xliff:g id="NAME">%s</xliff:g> i fullskjerm for å se bedre"</string> @@ -2186,12 +2185,14 @@ <string name="accessibility_system_action_quick_settings_label" msgid="4583900123506773783">"Hurtiginnstillinger"</string> <string name="accessibility_system_action_power_dialog_label" msgid="8095341821683910781">"Dialogboks for å slå av/på"</string> <string name="accessibility_system_action_lock_screen_label" msgid="5484190691945563838">"Låseskjerm"</string> - <string name="accessibility_system_action_screenshot_label" msgid="3581566515062741676">"Skjermdump"</string> + <string name="accessibility_system_action_screenshot_label" msgid="3581566515062741676">"Skjermbilde"</string> <string name="accessibility_system_action_headset_hook_label" msgid="8524691721287425468">"Hook for hodetelefoner"</string> <string name="accessibility_system_action_on_screen_a11y_shortcut_label" msgid="8488701469459210309">"Tilgjengelighetssnarvei på skjermen"</string> <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Velger for tilgjengelighetssnarvei på skjermen"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Tilgjengelighetssnarvei"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Lukk varselpanelet"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meny"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media – spill av og sett på pause"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Opp på styrepilene"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Ned på styrepilene"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Venstre på styrepilene"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Slik fungerer det"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Venter …"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Konfigurer opplåsingen med fingeravtrykk på nytt"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> fungerte ikke skikkelig og ble slettet"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> fungerte ikke skikkelig og ble slettet"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> fungerte ikke skikkelig og ble slettet. Du kan konfigurere det på nytt for å låse opp telefonen med fingeravtrykket."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> fungerte ikke skikkelig og ble slettet. Du kan konfigurere dem på nytt for å låse opp telefonen med fingeravtrykket."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> gjenkjennes ikke lenger."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> gjenkjennes ikke lenger."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> gjenkjennes ikke lenger. Konfigurer opplåsing med fingeravtrykk på nytt."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> og <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> gjenkjennes ikke lenger. Konfigurer opplåsing med fingeravtrykk på nytt."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Konfigurer ansiktslåsen på nytt"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Ansiktsmodellen din fungerte ikke skikkelig og ble slettet. Du kan konfigurere den på nytt for å låse opp telefonen med ansiktet."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Ansiktsmodellen din gjenkjennes ikke lenger. Konfigurer ansiktslåsen på nytt."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Konfigurer"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ikke nå"</string> </resources> diff --git a/core/res/res/values-ne/strings.xml b/core/res/res/values-ne/strings.xml index 55c2ef436390..a5626c75b1b7 100644 --- a/core/res/res/values-ne/strings.xml +++ b/core/res/res/values-ne/strings.xml @@ -203,7 +203,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"व्यवस्थापकले यन्त्रलाई व्यक्तिगत प्रयोगका लागि अस्वीकार गर्नुभयो"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"निजी स्पेस हटाइएको छ"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"तपाईंको सङ्गठन आफूले व्यवस्थापन गरेको यो डिभाइसमा निजी स्पेस राख्ने अनुमति दिँदैन।"</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"यन्त्र व्यवस्थित गरिएको छ"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"यो डिभाइस व्यवस्थित गरिएको छ"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"तपाईंको संगठनले यस डिभाइसको व्यवस्थापन गर्दछ र नेटवर्क ट्राफिकको अनुगमन गर्न सक्छ। विवरणहरूका लागि ट्याप गर्नुहोस्।"</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"एपहरूले तपाईंको स्थान प्रयोग गर्न सक्छन्"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"थप जानकारी प्राप्त गर्न आफ्ना IT प्रशासकसँग सम्पर्क गर्नुहोस्"</string> @@ -1097,7 +1097,7 @@ <string name="js_dialog_before_unload_positive_button" msgid="4274257182303565509">"यस पृष्ठलाई छोड्नुहोस्"</string> <string name="js_dialog_before_unload_negative_button" msgid="3873765747622415310">"यही पृष्ठमा रहनुहोस्"</string> <string name="js_dialog_before_unload" msgid="7213364985774778744">"<xliff:g id="MESSAGE">%s</xliff:g>\n\nके तपाईं यो पेजबाट नेभिगेट गर्न चाहनु हुन्छ भन्ने निश्चत छ?"</string> - <string name="autofill_window_title" msgid="4379134104008111961">"<xliff:g id="SERVICENAME">%1$s</xliff:g> मार्फत स्वतः भरण गर्नुहोस्"</string> + <string name="autofill_window_title" msgid="4379134104008111961">"<xliff:g id="SERVICENAME">%1$s</xliff:g> मार्फत अटोफिल गर्नुहोस्"</string> <string name="permlab_setAlarm" msgid="1158001610254173567">"एउटा आलर्म सेट गर्नुहोस्"</string> <string name="permdesc_setAlarm" msgid="2185033720060109640">"स्थापना गरिएको सङ्केत घडी एपमा सङ्केत समय मिलाउन एपलाई अनुमति दिन्छ। केही सङ्केत घडी एपहरूले यो सुविधा कार्यान्वयन नगर्न सक्छन्।"</string> <string name="permlab_addVoicemail" msgid="4770245808840814471">"भ्वाइसमेल थप गर्नुहोस्"</string> @@ -1184,7 +1184,7 @@ <string name="selectTextMode" msgid="3225108910999318778">"पाठ चयन गर्नुहोस्"</string> <string name="undo" msgid="3175318090002654673">"अन्डू गर्नुहोस्"</string> <string name="redo" msgid="7231448494008532233">"रिडू गर्नुहोस्"</string> - <string name="autofill" msgid="511224882647795296">"स्वतः भरण"</string> + <string name="autofill" msgid="511224882647795296">"अटोफिल"</string> <string name="textSelectionCABTitle" msgid="5151441579532476940">"पाठ चयनता"</string> <string name="addToDictionary" msgid="8041821113480950096">"शब्दकोशमा थप्नुहोस्"</string> <string name="deleteText" msgid="4200807474529938112">"मेट्नुहोस्"</string> @@ -1214,10 +1214,10 @@ <string name="rating_label" msgid="1837085249662154601">"{rating,plural, =1{{max} मा एक तारा}other{{max} मा # तारा}}"</string> <string name="in_progress" msgid="2149208189184319441">"जारी छ"</string> <string name="whichApplication" msgid="5432266899591255759">"प्रयोग गरेर कारबाही पुरा गर्नुहोस्"</string> - <string name="whichApplicationNamed" msgid="6969946041713975681">"निम्न एपको प्रयोग गरी कारबाही पुरा गर्नुहोस्: %1$s"</string> + <string name="whichApplicationNamed" msgid="6969946041713975681">"%1$s प्रयोग गरी यो कार्य पूरा गर्नुहोस्"</string> <string name="whichApplicationLabel" msgid="7852182961472531728">"पूर्ण कारबाही"</string> <string name="whichViewApplication" msgid="5733194231473132945">"निम्नबाट खोल्नुहोस्"</string> - <string name="whichViewApplicationNamed" msgid="415164730629690105">"निम्न एपमा खोल्नुहोस्: %1$s"</string> + <string name="whichViewApplicationNamed" msgid="415164730629690105">"%1$s मार्फत खोल्नुहोस्"</string> <string name="whichViewApplicationLabel" msgid="7367556735684742409">"खोल्नुहोस्"</string> <string name="whichOpenHostLinksWith" msgid="7645631470199397485">"निम्नमार्फत <xliff:g id="HOST">%1$s</xliff:g> का लिंकहरू खोल्नुहोस्"</string> <string name="whichOpenLinksWith" msgid="1120936181362907258">"निम्नमार्फत लिंकहरू खोल्नुहोस्"</string> @@ -1225,7 +1225,7 @@ <string name="whichOpenHostLinksWithApp" msgid="2401668560768463004">"<xliff:g id="APPLICATION">%2$s</xliff:g> मार्फत <xliff:g id="HOST">%1$s</xliff:g> का लिंकहरू खोल्नुहोस्"</string> <string name="whichGiveAccessToApplicationLabel" msgid="7805857277166106236">"पहुँच दिनुहोस्"</string> <string name="whichEditApplication" msgid="6191568491456092812">"सँग सम्पादन गर्नुहोस्"</string> - <string name="whichEditApplicationNamed" msgid="8096494987978521514">"%1$s सँग सम्पादन गर्नुहोस्"</string> + <string name="whichEditApplicationNamed" msgid="8096494987978521514">"%1$s प्रयोग गरी सम्पादन गर्नुहोस्"</string> <string name="whichEditApplicationLabel" msgid="1463288652070140285">"सम्पादन गर्नुहोस्"</string> <string name="whichSendApplication" msgid="4143847974460792029">"सेयर गर्नुहोस्"</string> <string name="whichSendApplicationNamed" msgid="4470386782693183461">"%1$s सँग सेयर गर्नुहोस्"</string> @@ -1437,7 +1437,7 @@ <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> अन्य एपहरूमा देखिँदैछ"</string> <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> अन्य एपहरूमा देखिँदैछ"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"तपाईं <xliff:g id="NAME">%s</xliff:g> ले यो विशेषता प्रयोग नगरेको चाहनुहुन्न भने सेटिङहरू खोली यसलाई निष्क्रिय पार्न ट्याप गर्नुहोस्।"</string> - <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"निष्क्रिय पार्नुहोस्"</string> + <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"अफ गर्नुहोस्"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"जाँच गर्दै <xliff:g id="NAME">%s</xliff:g>…"</string> <string name="ext_media_checking_notification_message" msgid="2231566971425375542">"हालको सामग्री समीक्षा गर्दै"</string> <string name="ext_media_checking_notification_message" product="tv" msgid="7986154434946021415">"मिडिया भण्डारणको जाँच गरिँदै छ"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN अति छोटो भयो। कम्तीमा ४ अङ्क हुन आवश्यक छ।"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"पछि पुनः प्रयास गर्नुहोस्"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"पूरा पर्दा हेर्दै"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"यहाँबाट बाहिरिन स्क्रिनको सिरानबाट तलतिर स्वाइप गर्नुहोस्"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"बुझेँ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"अझ राम्रो दृश्य हेर्न चाहनुहुन्छ भने रोटेट गर्नुहोस्"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"अझ राम्रो दृश्य हेर्न चाहनुहुन्छ भने <xliff:g id="NAME">%s</xliff:g> खोल्नुहोस्"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"सहज पहुँचका लागि स्क्रिनमा राखिने सर्टकट छान्ने मेनु"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"पहुँचको सर्टकट"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"सूचना कक्ष खारेज गर्नुहोस्"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"मेनु"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"मिडिया प्ले/पज"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad को माथिको बटन"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad को तलको बटन"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad को बायाँको बटन"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"यसले काम गर्ने तरिका"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"विचाराधीन..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"फिंगरप्रिन्ट अनलक फेरि सेटअप गर्नुहोस्"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"राम्ररी काम नगरिरहेको हुनाले <xliff:g id="FINGERPRINT">%s</xliff:g> मेटाइएको छ"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"राम्ररी काम नगरिरहेका हुनाले <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> र <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> मेटाइएका छन्"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ले काम गरिरहेको थिएन र त्यसलाई मेटाइयो। फिंगरप्रिन्ट प्रयोग गरी आफ्नो फोन अनलक गर्न त्यसलाई फेरि सेट अप गर्नुहोस्।"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> र <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ले राम्ररी काम गरिरहेका थिएनन् र तिनलाई मेटाइयो। फिंगरप्रिन्ट प्रयोग गरी आफ्नो फोन अनलक गर्न तिनलाई फेरि सेट अप गर्नुहोस्।"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> अब पहिचान गर्न सकिँदैन।"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> र <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> अब पहिचान गर्न सकिँदैन।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> अब पहिचान गर्न सकिँदैन। फिंगरप्रिन्ट अनलक फेरि सेटअप गर्नुहोस्।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> र <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> अब पहिचान गर्न सकिँदैन। फिंगरप्रिन्ट अनलक फेरि सेटअप गर्नुहोस्।"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"फेस अनलक फेरि सेटअप गर्नुहोस्"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"तपाईंको फेस मोडेलले राम्ररी काम गरिरहेको थिएन र त्यसलाई मेटाइयो। अनुहार प्रयोग गरी आफ्नो फोन अनलक गर्न फेस मोडेल फेरि सेट अप गर्नुहोस्।"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"तपाईंको फेस मोडेल अब पहिचान गर्न सकिँदैन। फेस अनलक फेरि सेटअप गर्नुहोस्।"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"सेटअप गर्नुहोस्"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"अहिले होइन"</string> </resources> diff --git a/core/res/res/values-nl/strings.xml b/core/res/res/values-nl/strings.xml index b1b3060042ca..bd5ce511ea91 100644 --- a/core/res/res/values-nl/strings.xml +++ b/core/res/res/values-nl/strings.xml @@ -642,7 +642,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Hiermee sta je de app toe locaties van je mediacollectie te bekijken."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Biometrische gegevens gebruiken"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Biometrische gegevens of schermvergrendeling gebruiken"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Je identiteit verifiëren"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Je identiteit bevestigen"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Gebruik je biometrische gegevens om door te gaan"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Gebruik je biometrische gegevens of schermvergrendeling om door te gaan"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"Biometrische hardware niet beschikbaar"</string> @@ -1716,7 +1716,7 @@ <string name="kg_text_message_separator" product="default" msgid="4503708889934976866">" — "</string> <string name="kg_reordering_delete_drop_target_text" msgid="2034358143731750914">"Verwijderen"</string> <string name="safe_media_volume_warning" product="default" msgid="3751676824423049994">"Volume verhogen tot boven het aanbevolen niveau?\n\nAls je langere tijd op hoog volume naar muziek luistert, raakt je gehoor mogelijk beschadigd."</string> - <string name="csd_dose_reached_warning" product="default" msgid="491875107583931974">"Wil je blijven luisteren op hoog volume?\n\nHet hoofdtelefoonvolume is langer dan de aanbevolen tijd hoog geweest. Dit kan je gehoor beschadigen."</string> + <string name="csd_dose_reached_warning" product="default" msgid="491875107583931974">"Wil je blijven luisteren op hoog volume?\n\nHet koptelefoonvolume is langer dan de aanbevolen tijd hoog geweest. Dit kan je gehoor beschadigen."</string> <string name="csd_momentary_exposure_warning" product="default" msgid="7730840903435405501">"Hard geluid gedetecteerd\n\nHet hoofdtelefoonvolume is hoger dan aanbevolen. Dit kan je gehoor beschadigen."</string> <string name="accessibility_shortcut_warning_dialog_title" msgid="4017995837692622933">"Snelkoppeling toegankelijkheid gebruiken?"</string> <string name="accessibility_shortcut_toogle_warning" msgid="4161716521310929544">"Als de snelkoppeling aanstaat, houd je beide volumeknoppen 3 seconden ingedrukt om een toegankelijkheidsfunctie te starten."</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Pincode is te kort. Moet ten minste vier cijfers lang zijn."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Probeer het later opnieuw"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Volledig scherm wordt getoond"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Swipe omlaag vanaf de bovenkant van het scherm om af te sluiten"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ik snap het"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Draai voor een betere weergave"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Open <xliff:g id="NAME">%s</xliff:g> op volledig scherm voor een betere weergave"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Kiezer voor snelkoppeling voor toegankelijkheid op scherm"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Snelkoppeling voor toegankelijkheid"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Meldingenpaneel sluiten"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media afspelen/onderbreken"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad omhoog"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad omlaag"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad links"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Privégedeelte"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Content van gevoelige meldingen verborgen"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"App-content verborgen voor scherm delen vanwege beveiligingsrisico\'s"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Vanwege beveiligingsrisico\'s is app-content verborgen voor scherm delen"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Automatisch verbonden met satelliet"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Je kunt berichten sturen en krijgen zonder een mobiel of wifi-netwerk"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Berichten openen"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Hoe het werkt"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"In behandeling…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Ontgrendelen met vingerafdruk weer instellen"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> werkte niet goed en is verwijderd"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> werkten niet goed en zijn verwijderd"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> werkte niet goed en is verwijderd. Stel deze opnieuw in om de telefoon met je vingerafdruk te ontgrendelen."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> werkten niet goed en zijn verwijderd. Stel ze opnieuw in om de telefoon met je vingerafdruk te ontgrendelen."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> wordt niet meer herkend."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> worden niet meer herkend."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> wordt niet meer herkend. Stel Ontgrendelen met vingerafdruk opnieuw in."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> en <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> worden niet meer herkend. Stel Ontgrendelen met vingerafdruk opnieuw in."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Ontgrendelen via gezichtsherkenning weer instellen"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Je gezichtsmodel werkte niet goed en is verwijderd. Stel het opnieuw in om de telefoon met je gezicht te ontgrendelen."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Je gezichtsmodel wordt niet meer herkend. Stel Ontgrendelen via gezichtsherkenning opnieuw in."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Instellen"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Niet nu"</string> </resources> diff --git a/core/res/res/values-or/strings.xml b/core/res/res/values-or/strings.xml index b56c11495ce0..9b1811cfd3a5 100644 --- a/core/res/res/values-or/strings.xml +++ b/core/res/res/values-or/strings.xml @@ -204,7 +204,7 @@ <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"ପ୍ରାଇଭେଟ ସ୍ପେସ କାଢ଼ି ଦିଆଯାଇଛି"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"ଆପଣଙ୍କ ସଂସ୍ଥା ଏହି ପରିଚାଳିତ ଡିଭାଇସରେ ପ୍ରାଇଭେଟ ସ୍ପେସକୁ ଅନୁମତି ଦିଏ ନାହିଁ।"</string> <string name="network_logging_notification_title" msgid="554983187553845004">"ଡିଭାଇସକୁ ପରିଚାଳନା କରାଯାଉଛି"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"ଆପଣଙ୍କ ସଂସ୍ଥା ଏହି ଡିଭାଇସକୁ ପରିଚାଳନା କରନ୍ତି ଏବଂ ନେଟୱର୍କ ଟ୍ରାଫିକ୍ ନୀରିକ୍ଷଣ କରନ୍ତି। ବିବରଣୀ ପାଇଁ ଟାପ୍ କରନ୍ତୁ।"</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"ଆପଣଙ୍କ ସଂସ୍ଥା ଏହି ଡିଭାଇସକୁ ପରିଚାଳନା କରେ ଏବଂ ନେଟୱାର୍କ ଟ୍ରାଫିକକୁ ମନିଟର କରିପାରେ। ବିବରଣୀ ପାଇଁ ଟାପ କରନ୍ତୁ।"</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"ଆପଗୁଡ଼ିକ ଆପଣଙ୍କ ଲୋକେସନକୁ ଆକ୍ସେସ୍ କରିପାରିବ"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"ଅଧିକ ଜାଣିବାକୁ ଆପଣଙ୍କ IT ଆଡମିନଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ"</string> <string name="geofencing_service" msgid="3826902410740315456">"ଜିଓଫେନସିଂ ସେବା"</string> @@ -1032,7 +1032,7 @@ <string name="lockscreen_failed_attempts_almost_glogin" product="tv" msgid="6399092175942158529">"ଆପଣ ଆପଣଙ୍କର ଅନଲକ୍ ପାଟର୍ନକୁ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ଭାବେ ଆଙ୍କିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ଥର ଅସଫଳ ଚେଷ୍ଟା ପରେ, ଆପଣଙ୍କୁ Google ସାଇନ୍ଇନ୍ ବ୍ୟବହାର କରି ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍କୁ ଅନ୍ଲକ୍ କରିବା ପାଇଁ କୁହାଯିବ। \n\n<xliff:g id="NUMBER_2">%3$d</xliff:g> ସେକେଣ୍ଡ ମଧ୍ୟରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string> <string name="lockscreen_failed_attempts_almost_glogin" product="default" msgid="5691623136957148335">"ଅନଲକ୍ ପାଟର୍ନକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ଭାବେ ଅଙ୍କନ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ ପ୍ରୟାସ ପରେ, Google ସାଇନ୍-ଇନ୍ ବ୍ୟବହାର କରି ଆପଣଙ୍କୁ ନିଜ ଫୋନ୍କୁ ଅନଲକ୍ କରିବାକୁ କୁହାଯିବ।\n\n <xliff:g id="NUMBER_2">%3$d</xliff:g> ସେକେଣ୍ଡ ପରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string> <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="7914445759242151426">"ଟାବଲେଟ୍କୁ ଅନ୍ଲକ୍ କରିବା ପାଇଁ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ ପ୍ରୟାସ ପରେ, ଟାବଲେଟ୍ଟି ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ ଏବଂ ଆପଣ ସମସ୍ତ ୟୁଜର୍ ଡାଟା ହରାଇବେ।"</string> - <string name="lockscreen_failed_attempts_almost_at_wipe" product="tv" msgid="4275591249631864248">"ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍କୁ ଭୁଲ ଭାବେ ଅନ୍ଲକ୍ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ଥର ଅସଫଳ ଚେଷ୍ଟା ପରେ, ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ କରାଯିବ ଏବଂ ସମସ୍ତ ଉପଯୋଗକର୍ତ୍ତା ଡାଟା ହରାଇବ।"</string> + <string name="lockscreen_failed_attempts_almost_at_wipe" product="tv" msgid="4275591249631864248">"ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସକୁ ଭୁଲ ଭାବେ ଅନଲକ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ଥର ଅସଫଳ ଚେଷ୍ଟା ପରେ ଆପଣଙ୍କର Android TV ଡିଭାଇସ ଫେକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ କରାଯିବ ଏବଂ ସମସ୍ତ ୟୁଜର ଡାଟା ହରାଇବ।"</string> <string name="lockscreen_failed_attempts_almost_at_wipe" product="default" msgid="1166532464798446579">"ଫୋନ୍ ଅନଲକ୍ କରିବାକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କଲେ। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ ପ୍ରୟାସ ପରେ, ଫୋନ୍ଟି ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ ଏବଂ ଆପଣ ସମସ୍ତ ୟୁଜର୍ ଡାଟା ହରାଇବେ।"</string> <string name="lockscreen_failed_attempts_now_wiping" product="tablet" msgid="8682445539263683414">"ଟାବଲେଟ୍ ଅନଲକ୍ କରିବାକୁ ଆପଣ <xliff:g id="NUMBER">%d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କଲେ। ଟାବଲେଟ୍ଟି ବର୍ତ୍ତମାନ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ।"</string> <string name="lockscreen_failed_attempts_now_wiping" product="tv" msgid="2205435033340091883">"ଆପଣ <xliff:g id="NUMBER">%d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍କୁ ଭୁଲ ଭାବେ ଅନ୍ଲକ୍ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। ବର୍ତ୍ତମାନ ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ।"</string> @@ -1665,7 +1665,7 @@ <string name="media_route_chooser_title_for_remote_display" msgid="3105906508794326446">"ଡିଭାଇସରେ ସ୍କ୍ରିନ୍ କାଷ୍ଟ କରନ୍ତୁ"</string> <string name="media_route_chooser_searching" msgid="6119673534251329535">"ଡିଭାଇସ୍ ଖୋଜାଯାଉଛି…"</string> <string name="media_route_chooser_extended_settings" msgid="2506352159381327741">"ସେଟିଂସ୍"</string> - <string name="media_route_controller_disconnect" msgid="7362617572732576959">"ବିଚ୍ଛିନ୍ନ କରନ୍ତୁ"</string> + <string name="media_route_controller_disconnect" msgid="7362617572732576959">"ଡିସକନେକ୍ଟ କରନ୍ତୁ"</string> <string name="media_route_status_scanning" msgid="8045156315309594482">"ସ୍କାନ୍ କରୁଛି…"</string> <string name="media_route_status_connecting" msgid="5845597961412010540">"ସଂଯୋଗ କରୁଛି..."</string> <string name="media_route_status_available" msgid="1477537663492007608">"ଉପଲବ୍ଧ"</string> @@ -1705,7 +1705,7 @@ <string name="kg_too_many_failed_password_attempts_dialog_message" msgid="3328686432962224215">"ଆପଣଙ୍କ ପାସ୍ୱର୍ଡକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ଭାବେ ଟାଇପ୍ କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ସେକେଣ୍ଡ ପରେ \n\nପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string> <string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="7357404233979139075">"ଆପଣଙ୍କ ଲକ୍ ଖୋଲିବା ପାଟର୍ନକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ଭାବେ ଅଙ୍କନ କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ସେକେଣ୍ଡ ପରେ \n\nପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string> <string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="3479940221343361587">"ଟାବଲେଟ୍ ଅନଲକ୍ କରିବାକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କଲେ। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ ପ୍ରୟାସ ପରେ, ଟାବଲେଟ୍ଟି ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ ଏବଂ ସମସ୍ତ ୟୁଜର୍ ଡାଟା ବାହାରିଯିବ।"</string> - <string name="kg_failed_attempts_almost_at_wipe" product="tv" msgid="9064457748587850217">"ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍କୁ ଭୁଲ ଭାବେ ଅନ୍ଲକ୍ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ଥର ଅସଫଳ ଚେଷ୍ଟା ପରେ, ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ କରାଯିବ ଏବଂ ସମସ୍ତ ଉପଯୋଗକର୍ତ୍ତା ଡାଟା ହରାଇବ।"</string> + <string name="kg_failed_attempts_almost_at_wipe" product="tv" msgid="9064457748587850217">"ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସକୁ ଭୁଲ ଭାବେ ଅନଲକ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। <xliff:g id="NUMBER_1">%2$d</xliff:g> ଥର ଅସଫଳ ଚେଷ୍ଟା ପରେ ଆପଣଙ୍କର Android TV ଡିଭାଇସ ଫେକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ କରାଯିବ ଏବଂ ସମସ୍ତ ୟୁଜର ଡାଟା ହରାଇବ।"</string> <string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="5955398963754432548">"ଫୋନ୍ ଅନଲକ୍ କରିବାକୁ ଆପଣ <xliff:g id="NUMBER_0">%1$d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କଲେ। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ ପ୍ରୟାସ ପରେ, ଫୋନ୍ଟି ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ ଏବଂ ସମସ୍ତ ୟୁଜର୍ ଡାଟା ବାହାରିଯିବ।"</string> <string name="kg_failed_attempts_now_wiping" product="tablet" msgid="2299099385175083308">"ଟାବଲେଟ୍ ଅନଲକ୍ କରିବାକୁ ଆପଣ <xliff:g id="NUMBER">%d</xliff:g> ଥର ଭୁଲ ପ୍ରୟାସ କଲେ। ଟାବଲେଟ୍ଟି ବର୍ତ୍ତମାନ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ।"</string> <string name="kg_failed_attempts_now_wiping" product="tv" msgid="5045460916106267585">"ଆପଣ <xliff:g id="NUMBER">%d</xliff:g> ଥର ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍କୁ ଭୁଲ ଭାବେ ଅନ୍ଲକ୍ କରିବାକୁ ଚେଷ୍ଟା କରିଛନ୍ତି। ବର୍ତ୍ତମାନ ଆପଣଙ୍କର Android TV ଡିଭାଇସ୍ ଫ୍ୟାକ୍ଟୋରୀ ଡିଫଲ୍ଟକୁ ରିସେଟ୍ ହୋଇଯିବ।"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN ବହୁତ ଛୋଟ। ଅତି କମ୍ରେ 4 ସଂଖ୍ୟା ବିଶିଷ୍ଟ ହେବା ଦରକାର।"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ପରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ପୂର୍ଣ୍ଣ ସ୍କ୍ରୀନରେ ଦେଖାଯାଉଛି"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ବାହାରି ଯିବା ପାଇଁ ଆପଣଙ୍କ ସ୍କ୍ରିନର ଶୀର୍ଷରୁ ତଳକୁ ସ୍ୱାଇପ କରନ୍ତୁ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ବୁଝିଗଲି"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ଏକ ଭଲ ଭ୍ୟୁ ପାଇଁ ରୋଟେଟ କରନ୍ତୁ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ଏକ ଭଲ ଭ୍ୟୁ ପାଇଁ ପୂର୍ଣ୍ଣ ସ୍କ୍ରିନରେ <xliff:g id="NAME">%s</xliff:g> ଖୋଲନ୍ତୁ"</string> @@ -1980,7 +1979,7 @@ <string name="importance_from_person" msgid="4235804979664465383">"ସମ୍ପୃକ୍ତ ଲୋକଙ୍କ କାରଣରୁ ଏହା ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ ଅଟେ।"</string> <string name="notification_history_title_placeholder" msgid="7748630986182249599">"କଷ୍ଟମ୍ ଆପ୍ ବିଜ୍ଞପ୍ତି"</string> <string name="user_creation_account_exists" msgid="2239146360099708035">"<xliff:g id="APP">%1$s</xliff:g>ରେ ଏକ ନୂଆ ଉପଯୋଗକର୍ତ୍ତା ତିଆରି କରିବା ପାଇଁ <xliff:g id="ACCOUNT">%2$s</xliff:g>କୁ (ପୂର୍ବରୁ ଏହି ଆକାଉଣ୍ଟ ଉପଯୋଗକର୍ତ୍ତାଙ୍କ ନାମରେ ଅଛି) ଅନୁମତି ଦେବେ?"</string> - <string name="user_creation_adding" msgid="7305185499667958364">"<xliff:g id="APP">%1$s</xliff:g>ରେ ଏକ ନୂଆ ଉପଯୋଗକର୍ତ୍ତା ତିଆରି କରିବା ପାଇଁ <xliff:g id="ACCOUNT">%2$s</xliff:g>କୁ ଅନୁମତି ଦେବେ?"</string> + <string name="user_creation_adding" msgid="7305185499667958364">"<xliff:g id="APP">%1$s</xliff:g>ରେ ଏକ ନୂଆ ୟୁଜର ତିଆରି କରିବା ପାଇଁ <xliff:g id="ACCOUNT">%2$s</xliff:g>କୁ ଅନୁମତି ଦେବେ?"</string> <string name="supervised_user_creation_label" msgid="6884904353827427515">"ନିରୀକ୍ଷିତ ୟୁଜର ଯୋଗ କରନ୍ତୁ"</string> <string name="language_selection_title" msgid="52674936078683285">"ଏକ ଭାଷା ଯୋଗ କରନ୍ତୁ"</string> <string name="country_selection_title" msgid="5221495687299014379">"ପସନ୍ଦର ଅଞ୍ଚଳ"</string> @@ -1999,7 +1998,7 @@ <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="set_up_screen_lock_title" msgid="8346083801616474030">"ଏକ ସ୍କ୍ରିନ୍ ଲକ୍ ସେଟ୍ କରନ୍ତୁ"</string> + <string name="set_up_screen_lock_title" msgid="8346083801616474030">"ଏକ ସ୍କ୍ରିନ ଲକ ସେଟ କରନ୍ତୁ"</string> <string name="set_up_screen_lock_action_label" msgid="2687634803649209367">"ସ୍କ୍ରିନ ଲକ ସେଟ କରନ୍ତୁ"</string> <string name="private_space_set_up_screen_lock_message" msgid="1109956797005149814">"ଆପଣଙ୍କ ପ୍ରାଇଭେଟ ସ୍ପେସ ବ୍ୟବହାର କରିବାକୁ ଏହି ଡିଭାଇସରେ ଏକ ସ୍କ୍ରିନ ଲକ ସେଟ କରନ୍ତୁ"</string> <string name="app_blocked_title" msgid="7353262160455028160">"ଆପ୍ ଉପଲବ୍ଧ ନାହିଁ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ଅନ୍-ସ୍କ୍ରିନ୍ ଆକ୍ସେସିବିଲିଟୀ ସର୍ଟକଟ୍ ବାଛିବା ସୁବିଧା"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ଆକ୍ସେସିବିଲିଟୀ ସର୍ଟକଟ୍"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ବିଜ୍ଞପ୍ତି ସେଡକୁ ଖାରଜ କରନ୍ତୁ"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ମେନୁ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ମିଡିଆ ପ୍ଲେ କରନ୍ତୁ/ବିରତ କରନ୍ତୁ"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ଉପର"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ତଳ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ବାମ"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ଏହା କିପରି କାମ କରେ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"ବାକି ଅଛି…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ସଠିକ ଭାବେ କାମ କରୁନାହିଁ ଏବଂ ଏହାକୁ ଡିଲିଟ କରାଯାଇଛି"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ଏବଂ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ସଠିକ ଭାବେ କାମ କରୁନାହିଁ ଏବଂ ଏଗୁଡ଼ିକୁ ଡିଲିଟ କରାଯାଇଛି"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ସଠିକ ଭାବେ କାମ କରୁନାହିଁ ଏବଂ ଏହାକୁ ଡିଲିଟ କରାଯାଇଛି। ଟିପଚିହ୍ନ ମାଧ୍ୟମରେ ଆପଣଙ୍କ ଫୋନକୁ ଅନଲକ କରିବାକୁ ଏହାକୁ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ଏବଂ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ସଠିକ ଭାବେ କାମ କରୁନାହିଁ ଏବଂ ଏଗୁଡ଼ିକୁ ଡିଲିଟ କରାଯାଇଛି। ଆପଣଙ୍କ ଟିପଚିହ୍ନ ମାଧ୍ୟମରେ ଆପଣଙ୍କ ଫୋନକୁ ଅନଲକ କରିବାକୁ ଏଗୁଡ଼ିକୁ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>କୁ ଆଉ ଚିହ୍ନଟ କରାଯାଇପାରିବ ନାହିଁ।"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ଏବଂ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>କୁ ଆଉ ଚିହ୍ନଟ କରାଯାଇପାରିବ ନାହିଁ।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>କୁ ଆଉ ଚିହ୍ନଟ କରାଯାଇପାରିବ ନାହିଁ। ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ଏବଂ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>କୁ ଆଉ ଚିହ୍ନଟ କରାଯାଇପାରିବ ନାହିଁ। ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ଫେସ୍ ଅନଲକ୍ ପୁଣି ସେଟ୍ ଅପ୍ କରନ୍ତୁ"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"ଆପଣଙ୍କ ଫେସ ମଡେଲ ସଠିକ ଭାବେ କାମ କରୁନାହିଁ ଏବଂ ଏହାକୁ ଡିଲିଟ କରାଯାଇଛି। ଫେସ ମାଧ୍ୟମରେ ଆପଣଙ୍କ ଫୋନକୁ ଅନଲକ କରିବାକୁ ଏହାକୁ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ଆପଣଙ୍କ ଫେସ ମଡେଲକୁ ଆଉ ଚିହ୍ନଟ କରାଯାଇପାରିବ ନାହିଁ। ଫେସ ଅନଲକ ପୁଣି ସେଟ ଅପ କରନ୍ତୁ।"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ସେଟ ଅପ କରନ୍ତୁ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ବର୍ତ୍ତମାନ ନୁହେଁ"</string> </resources> diff --git a/core/res/res/values-pa/strings.xml b/core/res/res/values-pa/strings.xml index 72598d190f32..bb05a9451b1f 100644 --- a/core/res/res/values-pa/strings.xml +++ b/core/res/res/values-pa/strings.xml @@ -204,7 +204,7 @@ <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਹਟਾਇਆ ਗਿਆ"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"ਤੁਹਾਡੀ ਸੰਸਥਾ ਇਸ ਪ੍ਰਬੰਧਿਤ ਕੀਤੇ ਡੀਵਾਈਸ \'ਤੇ ਪ੍ਰਾਈਵੇਟ ਸਪੇਸਾਂ ਦੀ ਆਗਿਆ ਨਹੀਂ ਦਿੰਦੀ।"</string> <string name="network_logging_notification_title" msgid="554983187553845004">"ਡੀਵਾਈਸ ਪ੍ਰਬੰਧਨ ਅਧੀਨ ਹੈ"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"ਤੁਹਾਡਾ ਸੰਗਠਨ ਇਸ ਡੀਵਾਈਸ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਦਾ ਹੈ ਅਤੇ ਨੈੱਟਵਰਕ ਟਰੈਫਿਕ ਦੀ ਨਿਗਰਾਨੀ ਕਰ ਸਕਦਾ ਹੈ। ਵੇਰਵਿਆਂ ਲਈ ਟੈਪ ਕਰੋ।"</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"ਤੁਹਾਡੀ ਸੰਸਥਾ ਇਸ ਡੀਵਾਈਸ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਦੀ ਹੈ ਅਤੇ ਨੈੱਟਵਰਕ ਟਰੈਫਿਕ ਦੀ ਨਿਗਰਾਨੀ ਕਰ ਸਕਦੀ ਹੈ। ਵੇਰਵਿਆਂ ਲਈ ਟੈਪ ਕਰੋ।"</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"ਐਪਾਂ ਤੁਹਾਡੇ ਟਿਕਾਣੇ ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦੀਆਂ ਹਨ"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"ਹੋਰ ਜਾਣਨ ਲਈ ਆਪਣੇ ਆਈ.ਟੀ. ਪ੍ਰਸ਼ਾਸਕ ਨਾਲ ਸੰਪਰਕ ਕਰੋ"</string> <string name="geofencing_service" msgid="3826902410740315456">"ਭੂਗੋਲਿਕ-ਘੇਰੇ ਸੰਬੰਧੀ ਸੇਵਾ"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"ਪਿੰਨ ਬਹੁਤ ਜ਼ਿਆਦਾ ਛੋਟਾ ਹੈ। ਘੱਟੋ-ਘੱਟ 4 ਅੰਕ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ।"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ਪੂਰੀ ਸਕ੍ਰੀਨ \'ਤੇ ਦੇਖੋ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ਬਾਹਰ ਜਾਣ ਲਈ, ਆਪਣੀ ਸਕ੍ਰੀਨ ਦੇ ਸਿਖਰ ਤੋਂ ਹੇਠਾਂ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ਸਮਝ ਲਿਆ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"ਬਿਹਤਰ ਦ੍ਰਿਸ਼ ਅਨੁਭਵ ਲਈ ਘੁਮਾਓ"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"ਬਿਹਤਰ ਦ੍ਰਿਸ਼ ਅਨੁਭਵ ਲਈ <xliff:g id="NAME">%s</xliff:g> ਨੂੰ ਪੂਰੀ-ਸਕ੍ਰੀਨ ਵਿੱਚ ਖੋਲ੍ਹੋ"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ਸਕ੍ਰੀਨ \'ਤੇ ਦਿਸਣ ਵਾਲੇ ਪਹੁੰਚਯੋਗਤਾ ਸ਼ਾਰਟਕੱਟ ਦਾ ਚੋਣਕਾਰ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ਪਹੁੰਚਯੋਗਤਾ ਸ਼ਾਰਟਕੱਟ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ਸੂਚਨਾ ਸ਼ੇਡ ਖਾਰਜ ਕਰੋ"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"ਮੀਨੂ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"ਮੀਡੀਆ ਚਲਾਓ/ਰੋਕੋ"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ਦਾ ਉੱਪਰਲਾ ਬਟਨ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ਦਾ ਹੇਠਲਾ ਬਟਨ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ਦਾ ਖੱਬੇ ਪਾਸੇ ਵਾਲਾ ਬਟਨ"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ਇਹ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"ਵਿਚਾਰ-ਅਧੀਨ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਨਹੀਂ ਕਰ ਰਿਹਾ ਸੀ ਅਤੇ ਉਸਨੂੰ ਮਿਟਾਇਆ ਗਿਆ ਸੀ"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ਅਤੇ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਨਹੀਂ ਕਰ ਰਹੇ ਸਨ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਮਿਟਾਇਆ ਗਿਆ ਸੀ"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਨਹੀਂ ਕਰ ਰਿਹਾ ਸੀ ਅਤੇ ਉਸਨੂੰ ਮਿਟਾਇਆ ਗਿਆ ਸੀ। ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰਨ ਲਈ ਇਸਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ਅਤੇ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਨਹੀਂ ਕਰ ਰਹੇ ਸੀ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਮਿਟਾਇਆ ਗਿਆ ਸੀ। ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰਨ ਲਈ ਇਨ੍ਹਾਂ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> ਦੀ ਹੁਣ ਪਛਾਣ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ।"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ਅਤੇ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ਦੀ ਹੁਣ ਪਛਾਣ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> ਦੀ ਹੁਣ ਪਛਾਣ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ। ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ਅਤੇ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ਦੀ ਹੁਣ ਪਛਾਣ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ। ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ਫ਼ੇਸ ਅਣਲਾਕ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"ਤੁਹਾਡਾ ਚਿਹਰੇ ਦਾ ਮਾਡਲ ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਨਹੀਂ ਕਰ ਰਿਹਾ ਸੀ ਅਤੇ ਉਸਨੂੰ ਮਿਟਾਇਆ ਗਿਆ ਸੀ। ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਚਿਹਰੇ ਨਾਲ ਅਣਲਾਕ ਕਰਨ ਲਈ ਇਸਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ਤੁਹਾਡੇ ਚਿਹਰੇ ਦੇ ਮਾਡਲ ਦੀ ਹੁਣ ਪਛਾਣ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ। ਫ਼ੇਸ ਅਣਲਾਕ ਦਾ ਦੁਬਾਰਾ ਸੈੱਟਅੱਪ ਕਰੋ।"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ਸੈੱਟਅੱਪ ਕਰੋ"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ਹੁਣੇ ਨਹੀਂ"</string> </resources> diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml index f19b0d061823..8b93be960462 100644 --- a/core/res/res/values-pl/strings.xml +++ b/core/res/res/values-pl/strings.xml @@ -163,7 +163,7 @@ <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"Połączono z szyfrowaną siecią <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"Połączenie przy użyciu karty SIM w sieci <xliff:g id="NETWORK_NAME">%1$s</xliff:g> jest teraz bezpieczniejsze"</string> <string name="scNullCipherIssueNonEncryptedTitle" msgid="3978071464929453915">"Połączono z niezaszyfrowaną siecią"</string> - <string name="scNullCipherIssueNonEncryptedSummaryNotification" msgid="7386936934128110388">"Gdy korzystasz z karty SIM w sieci <xliff:g id="NETWORK_NAME">%1$s</xliff:g>, połączenia, wiadomości i dane są bardziej narażone na ataki"</string> + <string name="scNullCipherIssueNonEncryptedSummaryNotification" msgid="7386936934128110388">"Gdy korzystasz z karty SIM w sieci <xliff:g id="NETWORK_NAME">%1$s</xliff:g>, połączenia, SMS-y i dane są bardziej narażone na ataki"</string> <string name="scNullCipherIssueNonEncryptedSummary" msgid="5093428974513703253">"Połączenia, wiadomości i dane są obecnie bardziej podatne na ataki podczas korzystania z karty SIM <xliff:g id="NETWORK_NAME">%1$s</xliff:g>.\n\nGdy połączenie zostanie ponownie zaszyfrowane, otrzymasz kolejne powiadomienie."</string> <string name="scNullCipherIssueActionSettings" msgid="5888857706424639946">"Ustawienia bezpieczeństwa sieci komórkowej"</string> <string name="scNullCipherIssueActionLearnMore" msgid="7896642417214757769">"Więcej informacji"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN jest za krótki. Musi mieć co najmniej 4 cyfry."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Spróbuj ponownie później"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Włączony pełny ekran"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Aby zamknąć, przesuń palcem w dół z góry ekranu"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Obróć, aby lepiej widzieć"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otwórz aplikację <xliff:g id="NAME">%s</xliff:g> na pełnym ekranie, aby lepiej widzieć"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Wybierz ekranowy skrót ułatwień dostępu"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Skrót ułatwień dostępu"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Zamknij obszar powiadomień"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Odtwórz/wstrzymaj multimedia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad – w górę"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad – w dół"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad – w lewo"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Jak to działa"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Oczekiwanie…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Skonfiguruj ponownie odblokowywanie odciskiem palca"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Odcisk palca <xliff:g id="FINGERPRINT">%s</xliff:g> nie sprawdzał się dobrze i został usunięty"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Odciski palców <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nie sprawdzały się dobrze i zostały usunięte"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Odcisk palca <xliff:g id="FINGERPRINT">%s</xliff:g> nie sprawdzał się dobrze i został usunięty. Skonfiguruj go ponownie, aby odblokowywać telefon odciskiem palca."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Odciski palca <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nie sprawdzały się dobrze i zostały usunięte. Skonfiguruj je ponownie, aby odblokowywać telefon odciskiem palca."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Ten odcisk palca (<xliff:g id="FINGERPRINT">%s</xliff:g>) nie jest już rozpoznawany."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Te odciski palców (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) nie są już rozpoznawane."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Ten odcisk palca (<xliff:g id="FINGERPRINT">%s</xliff:g>) nie jest już rozpoznawany. Skonfiguruj ponownie odblokowywanie odciskiem palca."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Te odciski palców (<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> i <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>) nie są już rozpoznawane. Skonfiguruj ponownie odblokowywanie odciskiem palca."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Skonfiguruj ponownie rozpoznawanie twarzy"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Twój model twarzy nie sprawdzał się dobrze i został usunięty. Skonfiguruj go ponownie, aby odblokowywać telefon za pomocą skanu twarzy."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Model Twojej twarzy nie jest już rozpoznawany. Skonfiguruj ponownie rozpoznawanie twarzy."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Skonfiguruj"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Nie teraz"</string> </resources> diff --git a/core/res/res/values-pt-rBR/strings.xml b/core/res/res/values-pt-rBR/strings.xml index bc6c99c43987..f9066992b5df 100644 --- a/core/res/res/values-pt-rBR/strings.xml +++ b/core/res/res/values-pt-rBR/strings.xml @@ -1380,7 +1380,7 @@ <string name="install_carrier_app_notification_title" msgid="5712723402213090102">"Ativar serviço móvel"</string> <string name="install_carrier_app_notification_text" msgid="2781317581274192728">"Baixe o app da operadora para ativar seu novo chip"</string> <string name="install_carrier_app_notification_text_app_name" msgid="4086877327264106484">"Baixe o app <xliff:g id="APP_NAME">%1$s</xliff:g> para ativar seu novo chip"</string> - <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Fazer download do app"</string> + <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Baixar o app"</string> <string name="carrier_app_notification_title" msgid="5815477368072060250">"Novo chip inserido"</string> <string name="carrier_app_notification_text" msgid="6567057546341958637">"Toque para configurar"</string> <string name="time_picker_dialog_title" msgid="9053376764985220821">"Definir hora"</string> @@ -1400,7 +1400,7 @@ <string name="usb_midi_notification_title" msgid="7404506788950595557">"MIDI via USB ativado"</string> <string name="usb_uvc_notification_title" msgid="2030032862673400008">"Dispositivo conectado como Webcam"</string> <string name="usb_accessory_notification_title" msgid="1385394660861956980">"Acessório USB conectado"</string> - <string name="usb_notification_message" msgid="4715163067192110676">"Toque para conferir mais opções."</string> + <string name="usb_notification_message" msgid="4715163067192110676">"Toque para mais opções."</string> <string name="usb_power_notification_message" msgid="7284765627437897702">"Carregando dispositivo conectado. Toque para ver mais opções."</string> <string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Acessório de áudio analógico detectado"</string> <string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"O dispositivo anexo não é compatível com esse smartphone. Toque para saber mais."</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"O PIN é curto demais. Deve ter pelo menos 4 dígitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Tente novamente mais tarde"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visualização em tela cheia"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para sair, deslize de cima para baixo na tela"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entendi"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Gire a tela para ter uma visualização melhor"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abra o app <xliff:g id="NAME">%s</xliff:g> em tela cheia para ter uma melhor visualização"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Seletor de atalho de acessibilidade na tela"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Atalho de acessibilidade"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dispensar aba de notificações"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Tocar/pausar mídia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Botão direcional: para cima"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Botão direcional: para baixo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Botão direcional: para a esquerda"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espaço privado"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Conteúdo de notificação sensível oculto"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Conteúdo do app oculto no compartilhamento de tela por motivos de segurança"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Conteúdo oculto no compartilhamento de tela por segurança"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Conectado automaticamente ao satélite"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Você pode enviar e receber mensagens sem um dispositivo móvel ou uma rede Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Abrir o app Mensagens"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Como funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configurar o Desbloqueio por impressão digital de novo"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não estava funcionando bem e foi excluída"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam funcionando bem e foram excluídas"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não estava funcionando bem e foi excluída. Configure de novo para desbloquear o smartphone com a impressão digital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam funcionando bem e foram excluídas. Configure de novo para desbloquear o smartphone com a impressão digital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não é mais reconhecida."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não são mais reconhecidas."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não é mais reconhecida. Configure o \"Desbloqueio por impressão digital\" de novo."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não são mais reconhecidas. Configure o \"Desbloqueio por impressão digital\" de novo."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configure o Desbloqueio facial de novo"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Seu modelo de rosto não estava funcionando bem e foi excluído. Configure de novo para desbloquear o smartphone com o rosto."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Seu modelo de rosto não é mais reconhecido. Configure o \"Desbloqueio facial\" de novo."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configuração"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Agora não"</string> </resources> diff --git a/core/res/res/values-pt-rPT/strings.xml b/core/res/res/values-pt-rPT/strings.xml index 5cf49fbd4835..f0d05ddce864 100644 --- a/core/res/res/values-pt-rPT/strings.xml +++ b/core/res/res/values-pt-rPT/strings.xml @@ -205,7 +205,7 @@ <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"Espaço privado removido"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"A sua organização não permite espaços privados neste dispositivo gerido."</string> <string name="network_logging_notification_title" msgid="554983187553845004">"O dispositivo é gerido"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"A sua entidade gere este dispositivo e pode monitorizar o tráfego de rede. Toque para obter mais detalhes."</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"A sua entidade gere este dispositivo e pode monitorizar o tráfego de rede. Toque para ver mais detalhes."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"As apps podem aceder à sua localização"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"Contacte o administrador de TI para saber mais."</string> <string name="geofencing_service" msgid="3826902410740315456">"Serviço de geofencing"</string> @@ -663,7 +663,7 @@ <string name="fingerprint_acquired_too_slow" msgid="6683510291554497580">"Moveu o dedo demasiado lentamente. Tente novamente."</string> <string name="fingerprint_acquired_already_enrolled" msgid="2285166003936206785">"Experimente outra impressão digital"</string> <string name="fingerprint_acquired_too_bright" msgid="3863560181670915607">"Está demasiado claro"</string> - <string name="fingerprint_acquired_power_press" msgid="3107864151278434961">"Detetou-se que o botão ligar/desligar foi premido"</string> + <string name="fingerprint_acquired_power_press" msgid="3107864151278434961">"Detetou-se que o botão ligar/desligar foi pressionado"</string> <string name="fingerprint_acquired_try_adjusting" msgid="3667006071003809364">"Experimente ajustar"</string> <string name="fingerprint_acquired_immobile" msgid="1621891895241888048">"Altere a posição do seu dedo ligeiramente de cada vez"</string> <string-array name="fingerprint_acquired_vendor"> @@ -686,7 +686,7 @@ <string name="fingerprint_error_hw_not_present" msgid="5898827259419366359">"Este dispositivo não tem sensor de impressões digitais."</string> <string name="fingerprint_error_security_update_required" msgid="8440349108169661934">"Sensor temporariamente desativado"</string> <string name="fingerprint_error_bad_calibration" msgid="6770614925736183528">"Não é possível usar o sensor de impressões digitais. Visite um fornecedor de serviços de reparação."</string> - <string name="fingerprint_error_power_pressed" msgid="5479524500542129414">"Botão ligar/desligar premido"</string> + <string name="fingerprint_error_power_pressed" msgid="5479524500542129414">"Botão ligar/desligar pressionado"</string> <string name="fingerprint_name_template" msgid="8941662088160289778">"Dedo <xliff:g id="FINGERID">%d</xliff:g>"</string> <string name="fingerprint_app_setting_name" msgid="4253767877095495844">"Usar a impressão digital"</string> <string name="fingerprint_or_screen_lock_app_setting_name" msgid="3501743523487644907">"Usar o bloqueio de ecrã ou a impressão digital"</string> @@ -1436,7 +1436,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Sobreposição a outras apps"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"A app <xliff:g id="NAME">%s</xliff:g> sobrepõe-se a outras aplicações"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"O <xliff:g id="NAME">%s</xliff:g> sobrepõe-se a outras app"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> sobrepõe-se a outras app"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Se não quer que a app <xliff:g id="NAME">%s</xliff:g> utilize esta funcionalidade, toque para abrir as definições e desative-a."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Desativar"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"A verificar o <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"O PIN é demasiado pequeno. Deve ter, no mínimo, 4 dígitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Tente mais tarde"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visualização de ecrã inteiro"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para sair, deslize rapidamente para baixo a partir da parte superior do ecrã"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rode para uma melhor visualização"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abra <xliff:g id="NAME">%s</xliff:g> em ecrã inteiro para uma melhor visualização"</string> @@ -2177,7 +2176,7 @@ <string name="bluetooth_airplane_mode_toast" msgid="2066399056595768554">"O Bluetooth continuará ativado durante o modo de avião."</string> <string name="car_loading_profile" msgid="8219978381196748070">"A carregar…"</string> <string name="file_count" msgid="3220018595056126969">"{count,plural, =1{{file_name} + # ficheiro}many{{file_name} + # ficheiros}other{{file_name} + # ficheiros}}"</string> - <string name="chooser_no_direct_share_targets" msgid="1511722103987329028">"Não existem pessoas recomendadas com quem partilhar"</string> + <string name="chooser_no_direct_share_targets" msgid="1511722103987329028">"Sem pessoas recomendadas com quem partilhar"</string> <string name="chooser_all_apps_button_label" msgid="3230427756238666328">"Lista de aplicações"</string> <string name="usb_device_resolve_prompt_warn" msgid="325871329788064199">"Esta app não recebeu autorização de gravação, mas pode capturar áudio através deste dispositivo USB."</string> <string name="accessibility_system_action_home_label" msgid="3234748160850301870">"Página inicial"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selecionador de atalhos de acessibilidade no ecrã"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Atalho de acessibilidade"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ignorar o painel de notificações"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Reproduzir/pausar multimédia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Teclado direcional: para cima"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Teclado direcional: para baixo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Teclado direcional: para a esquerda"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Como funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configure o Desbloqueio por impressão digital novamente"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"A <xliff:g id="FINGERPRINT">%s</xliff:g> não estava a funcionar bem e foi eliminada"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"A <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam a funcionar bem e foram eliminadas"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"A <xliff:g id="FINGERPRINT">%s</xliff:g> não estava a funcionar bem e foi eliminada. Configure-a novamente para desbloquear o telemóvel com a impressão digital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"A <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam a funcionar bem e foram eliminadas. Configure-as novamente para desbloquear o telemóvel com a sua impressão digital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Já não é possível reconhecer <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Já não é possível reconhecer <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Já não é possível reconhecer <xliff:g id="FINGERPRINT">%s</xliff:g>. Configure o Desbloqueio por impressão digital novamente."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Já não é possível reconhecer <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. Configure o Desbloqueio por impressão digital novamente."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configure o Desbloqueio facial novamente"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"O seu modelo de rosto não estava a funcionar bem e foi eliminado. Configure-o novamente para desbloquear o telemóvel com o rosto."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Já não é possível reconhecer o seu modelo de rosto. Configure o Desbloqueio facial novamente."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurar"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Agora não"</string> </resources> diff --git a/core/res/res/values-pt/strings.xml b/core/res/res/values-pt/strings.xml index bc6c99c43987..f9066992b5df 100644 --- a/core/res/res/values-pt/strings.xml +++ b/core/res/res/values-pt/strings.xml @@ -1380,7 +1380,7 @@ <string name="install_carrier_app_notification_title" msgid="5712723402213090102">"Ativar serviço móvel"</string> <string name="install_carrier_app_notification_text" msgid="2781317581274192728">"Baixe o app da operadora para ativar seu novo chip"</string> <string name="install_carrier_app_notification_text_app_name" msgid="4086877327264106484">"Baixe o app <xliff:g id="APP_NAME">%1$s</xliff:g> para ativar seu novo chip"</string> - <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Fazer download do app"</string> + <string name="install_carrier_app_notification_button" msgid="6257740533102594290">"Baixar o app"</string> <string name="carrier_app_notification_title" msgid="5815477368072060250">"Novo chip inserido"</string> <string name="carrier_app_notification_text" msgid="6567057546341958637">"Toque para configurar"</string> <string name="time_picker_dialog_title" msgid="9053376764985220821">"Definir hora"</string> @@ -1400,7 +1400,7 @@ <string name="usb_midi_notification_title" msgid="7404506788950595557">"MIDI via USB ativado"</string> <string name="usb_uvc_notification_title" msgid="2030032862673400008">"Dispositivo conectado como Webcam"</string> <string name="usb_accessory_notification_title" msgid="1385394660861956980">"Acessório USB conectado"</string> - <string name="usb_notification_message" msgid="4715163067192110676">"Toque para conferir mais opções."</string> + <string name="usb_notification_message" msgid="4715163067192110676">"Toque para mais opções."</string> <string name="usb_power_notification_message" msgid="7284765627437897702">"Carregando dispositivo conectado. Toque para ver mais opções."</string> <string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Acessório de áudio analógico detectado"</string> <string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"O dispositivo anexo não é compatível com esse smartphone. Toque para saber mais."</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"O PIN é curto demais. Deve ter pelo menos 4 dígitos."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Tente novamente mais tarde"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visualização em tela cheia"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para sair, deslize de cima para baixo na tela"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Entendi"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Gire a tela para ter uma visualização melhor"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Abra o app <xliff:g id="NAME">%s</xliff:g> em tela cheia para ter uma melhor visualização"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Seletor de atalho de acessibilidade na tela"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Atalho de acessibilidade"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Dispensar aba de notificações"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Tocar/pausar mídia"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Botão direcional: para cima"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Botão direcional: para baixo"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Botão direcional: para a esquerda"</string> @@ -2412,19 +2413,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Espaço privado"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Conteúdo de notificação sensível oculto"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Conteúdo do app oculto no compartilhamento de tela por motivos de segurança"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Conteúdo oculto no compartilhamento de tela por segurança"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Conectado automaticamente ao satélite"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Você pode enviar e receber mensagens sem um dispositivo móvel ou uma rede Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Abrir o app Mensagens"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Como funciona"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Pendente…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configurar o Desbloqueio por impressão digital de novo"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não estava funcionando bem e foi excluída"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam funcionando bem e foram excluídas"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não estava funcionando bem e foi excluída. Configure de novo para desbloquear o smartphone com a impressão digital."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não estavam funcionando bem e foram excluídas. Configure de novo para desbloquear o smartphone com a impressão digital."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não é mais reconhecida."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não são mais reconhecidas."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"A impressão digital <xliff:g id="FINGERPRINT">%s</xliff:g> não é mais reconhecida. Configure o \"Desbloqueio por impressão digital\" de novo."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"As impressões digitais <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> e <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> não são mais reconhecidas. Configure o \"Desbloqueio por impressão digital\" de novo."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Configure o Desbloqueio facial de novo"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Seu modelo de rosto não estava funcionando bem e foi excluído. Configure de novo para desbloquear o smartphone com o rosto."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Seu modelo de rosto não é mais reconhecido. Configure o \"Desbloqueio facial\" de novo."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configuração"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Agora não"</string> </resources> diff --git a/core/res/res/values-ro/strings.xml b/core/res/res/values-ro/strings.xml index e4a6a07a84be..e61ab659e248 100644 --- a/core/res/res/values-ro/strings.xml +++ b/core/res/res/values-ro/strings.xml @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Codul PIN este prea scurt. Trebuie să aibă cel puțin 4 cifre."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Reîncearcă mai târziu"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Vizualizare pe ecran complet"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Pentru a ieși, glisează în jos din partea de sus a ecranului"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Am înțeles"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotește pentru o previzualizare mai bună"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Deschide <xliff:g id="NAME">%s</xliff:g> pe ecran complet pentru o imagine mai bună"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Selector de comenzi rapide de accesibilitate de pe ecran"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Comandă rapidă de accesibilitate"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Închide fereastra de notificări"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meniu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Redă / întrerupe conținutul media"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad sus"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad jos"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad stânga"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cum funcționează"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"În așteptare..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Configurează din nou Deblocarea cu amprenta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> nu funcționa bine și a fost ștearsă"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> și <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nu funcționau bine și au fost șterse"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> nu funcționa bine și s-a șters. Configureaz-o din nou pentru a-ți debloca telefonul cu amprenta."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> și <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nu funcționau bine și s-au șters. Configurează-le din nou pentru a-ți debloca telefonul cu amprenta."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> nu mai poate fi recunoscută."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> și <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nu mai pot fi recunoscute."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> nu mai poate fi recunoscută. Configurează din nou Deblocarea cu amprenta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> și <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nu mai pot fi recunoscute. Configurează din nou Deblocarea cu amprenta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Reconfigurează Deblocarea facială"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Modelul tău facial nu funcționa bine și s-a șters. Configurează-l din nou pentru a-ți debloca telefonul folosindu-ți chipul."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Modelul tău facial nu mai poate fi recunoscut. Configurează din nou Deblocarea facială."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Configurează"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Nu acum"</string> </resources> diff --git a/core/res/res/values-ru/strings.xml b/core/res/res/values-ru/strings.xml index 0e98b3fd3962..28c951ecd5a5 100644 --- a/core/res/res/values-ru/strings.xml +++ b/core/res/res/values-ru/strings.xml @@ -1734,7 +1734,7 @@ <string name="accessibility_enable_service_title" msgid="3931558336268541484">"Предоставить сервису \"<xliff:g id="SERVICE">%1$s</xliff:g>\" полный контроль над устройством?"</string> <string name="accessibility_service_warning_description" msgid="291674995220940133">"Полный контроль нужен приложениям для реализации специальных возможностей и не нужен большинству остальных."</string> <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Просмотр и контроль экрана"</string> - <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Сервис может просматривать весь контент на экране и отображать контент поверх других приложений"</string> + <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Сервис может просматривать весь контент на экране и отображать контент поверх других приложений."</string> <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Просмотр и выполнение действий"</string> <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Сервис может отслеживать ваше взаимодействие с приложениями и датчиками устройства и давать приложениям команды от вашего имени."</string> <string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Разрешить"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-код должен содержать не менее 4 символов."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Повторите попытку позже."</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Полноэкранный режим"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Чтобы выйти, проведите вниз от верхнего края экрана"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"ОК"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Поверните, чтобы лучше видеть."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Откройте приложение \"<xliff:g id="NAME">%s</xliff:g>\" в полноэкранном режиме, чтобы лучше видеть."</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Выбор действия для быстрого включения"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Быстрое включение"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Скрыть панель уведомлений"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Меню"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Воспроизведение и пауза"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"D-pad – вверх"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"D-pad – вниз"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"D-pad – влево"</string> @@ -2413,19 +2414,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Частное пространство"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Конфиденциальная информация в уведомлении скрыта"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Содержимое приложения исключено из демонстрации экрана в целях безопасности."</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Для безопасности содержимое приложения при демонстрации экрана скрыто."</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Автоматически подключено к системам спутниковой связи"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Вы можете отправлять и получать сообщения без доступа к мобильной сети или Wi-Fi."</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Открыть Сообщения"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Узнать принцип работы"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Обработка…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Настройте разблокировку по отпечатку пальца заново"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Отпечаток пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" оказался неудачным и был удален."</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Отпечатки пальцев \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" и \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" оказались неудачными и были удалены."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Отпечаток пальца \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" оказался неудачным и был удален. Чтобы использовать разблокировку с помощью отпечатка пальца, настройте ее заново."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Отпечатки пальцев \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" и \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" оказались неудачными и были удалены. Чтобы использовать разблокировку с помощью отпечатка пальца, настройте ее заново."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Отпечаток \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" больше нельзя распознать."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Отпечатки \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" и \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" больше нельзя распознать."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Отпечаток \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" больше нельзя распознать. Настройте разблокировку по отпечатку пальца снова."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Отпечатки \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" и \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" больше нельзя распознать. Настройте разблокировку по отпечатку пальца снова."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Настройте фейсконтроль заново"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Модель лица оказалась неудачной и была удалена. Чтобы пользоваться фейсконтролем, настройте его заново."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Вашу модель лица больше нельзя распознать. Настройте фейсконтроль снова."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Настроить"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не сейчас"</string> </resources> diff --git a/core/res/res/values-si/strings.xml b/core/res/res/values-si/strings.xml index 03068fe147de..28c3a8fcb86d 100644 --- a/core/res/res/values-si/strings.xml +++ b/core/res/res/values-si/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN කුඩා වැඩිය. ඉලක්කම් 4 වත් විය යුතුය."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"පසුව නැවත උත්සාහ කරන්න"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"මුළු තිරය බලමින්"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"පිටවීමට, ඔබේ තිරයෙහි ඉහළ සිට පහළට ස්වයිප් කරන්න"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"වැටහුණි"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"වඩා හොඳ දසුනක් සඳහා කරකවන්න"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"වඩා හොඳ දසුනක් සඳහා <xliff:g id="NAME">%s</xliff:g> පූර්ණ තිරයේ විවෘත කරන්න"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"තිරය මත ප්රවේශ්යතා කෙටිමං තෝරනය"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ප්රවේශ්යතා කෙටිමඟ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"දැනුම්දීම් සෙවන ඉවත ලන්න"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"මෙනුව"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"මාධ්ය වාදනය/විරාමය"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ඉහළ"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad පහළ"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad වම"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"එය ක්රියා කරන ආකාරය"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"පොරොත්තුයි..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ඇඟිලි සලකුණු අගුලු හැරීම නැවත සකසන්න"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> හොඳින් ක්රියා නොකළ අතර එය මකන ලදි"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> සහ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> හොඳින් ක්රියා නොකළ අතර ඒවා මකන ලදි"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> හොඳින් ක්රියා නොකළේය, එය මකන ලදි ඇඟිලි සලකුණ මගින් ඔබේ දුරකථනය අගුලු හැරීමට එය නැවත සකසන්න."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> සහ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> හොඳින් ක්රියා නොකළේය, කාර්යසාධනය දියුණූ කිරීමට ඒවා මකන ලදි. ඔබේ ඇඟිලි සලකුණ මගින් ඔබේ දුරකථනය අගුලු හැරීමට ඒවා නැවත සකසන්න."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> තවදුරටත් හඳුනා ගත නොහැක."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> සහ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> තවදුරටත් හඳුනා ගත නොහැක."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> තවදුරටත් හඳුනා ගත නොහැක. ඇඟිලි සලකුණු අගුළු හැරීම නැවත පිහිටුවන්න."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> සහ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> තවදුරටත් හඳුනා ගත නොහැක. ඇඟිලි සලකුණු අගුළු හැරීම නැවත පිහිටුවන්න."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"මුහුණෙන් අගුලු හැරීම නැවත සකසන්න"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"ඔබේ මුහුණු මාදිලිය හොඳින් ක්රියා නොකරයි, එය මකන ලදි. මුහුණ මගින් ඔබේ දුරකථනය අගුලු හැරීමට එය නැවත සකසන්න."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ඔබේ මුහුණු ආකෘතිය තවදුරටත් හඳුනා ගත නොහැක. මුහුණෙන් අගුළු හැරීම නැවත පිහිටුවන්න."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"සකසන්න"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"දැන් නොවේ"</string> </resources> diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml index 694c55bb6e42..85583780a099 100644 --- a/core/res/res/values-sk/strings.xml +++ b/core/res/res/values-sk/strings.xml @@ -1200,7 +1200,7 @@ <string name="low_internal_storage_view_text" msgid="8172166728369697835">"Niektoré systémové funkcie nemusia fungovať"</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"V úložisku nie je dostatok voľného miesta pre systém. Zaistite, aby ste mali 250 MB voľného miesta a zariadenie reštartujte."</string> <string name="app_running_notification_title" msgid="8985999749231486569">"Aplikácia <xliff:g id="APP_NAME">%1$s</xliff:g> je spustená"</string> - <string name="app_running_notification_text" msgid="5120815883400228566">"Klepnutím zobrazíte ďalšie informácie alebo zastavíte aplikáciu."</string> + <string name="app_running_notification_text" msgid="5120815883400228566">"Klepnutím zobrazíte ďalšie informácie alebo aplikáciu zastavíte."</string> <string name="ok" msgid="2646370155170753815">"OK"</string> <string name="cancel" msgid="6908697720451760115">"Zrušiť"</string> <string name="yes" msgid="9069828999585032361">"OK"</string> @@ -1437,7 +1437,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Zobrazenie cez iné aplikácie"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> sa zobrazuje cez iné aplikácie"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> sa zobrazuje cez iné aplikácie"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"Aplikácia <xliff:g id="NAME">%s</xliff:g> sa zobrazuje nad inými aplikáciami"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Ak nechcete, aby aplikácia <xliff:g id="NAME">%s</xliff:g> používala túto funkciu, klepnutím otvorte nastavenia a vypnite ju."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Vypnúť"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Kontroluje sa <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Kód PIN je príliš krátky. Musí mať minimálne 4 číslice."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Skúste to neskôr"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Zobrazenie na celú obrazovku"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Ukončíte potiahnutím zhora obrazovky nadol"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Dobre"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Otočte zariadenie pre lepšie zobrazenie"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Otvorte <xliff:g id="NAME">%s</xliff:g> na celej obrazovke pre lepšie zobrazenie"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Výber skratky dostupnosti na obrazovke"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Skratka dostupnosti"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Zavrieť panel upozornení"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Ponuka"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Prehrať / pozastaviť médium"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Stlačiť tlačidlo nahor krížového ovládača"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Stlačiť tlačidlo nadol krížového ovládača"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Stlačiť tlačidlo doľava krížového ovládača"</string> @@ -2413,19 +2414,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"Súkromný priestor"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"Obsah citlivého upozornenia je skrytý"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Obsah aplikácie bol na účely zabezpečenia skrytý v zdieľaní obrazovky"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"Obsah aplikácie je z bezpečnostných dôvodov pri zdieľaní obrazovky skrytý"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"Automaticky pripojené k satelitu"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"Správy môžete odosielať a prijímať bez mobilnej siete či siete Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"Otvoriť Správy"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Ako to funguje"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Nespracovaná…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Znova nastavte odomknutie odtlačkom prsta"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Odtlačok <xliff:g id="FINGERPRINT">%s</xliff:g> nefungoval správne a bol odstránený"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Odtlačky <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nefungovali správne a boli odstránené"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Odtlačok <xliff:g id="FINGERPRINT">%s</xliff:g> nefungoval správne a bol odstránený. Ak chcete odomykať telefón odtlačkom prsta, nastavte ho znova."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Odtlačky <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nefungovali správne a boli odstránené. Ak chcete odomykať telefón odtlačkom prsta, nastavte ich znova."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> sa už nedari rozpoznať."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> sa už nedari rozpoznať."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> sa už nedari rozpoznať. Znova nastavte odomknutie odtlačkom prsta."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> a <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> sa už nedari rozpoznať. Znova nastavte odomknutie odtlačkom prsta."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Znova nastavte odomknutie tvárou"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Váš model tváre nefungoval správne a bol odstránený. Ak chcete odomykať telefón tvárou, nastavte ho znova."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Váš model tváre sa už nedari rozpoznať. Znova nastavte odomknutie tvárou."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Nastaviť"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Teraz nie"</string> </resources> diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml index edf80c5012a9..a364ad6db075 100644 --- a/core/res/res/values-sl/strings.xml +++ b/core/res/res/values-sl/strings.xml @@ -644,7 +644,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Aplikaciji omogoča branje lokacij v predstavnostni zbirki."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Uporaba biometrike"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Uporaba biometrike ali odklepanja s poverilnico"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Preverite, da ste res vi"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Potrdite, da ste res vi"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Za nadaljevanje uporabite biometrični podatek."</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Za nadaljevanje uporabite biometrični podatek ali odklepanje s poverilnico."</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"Strojna oprema za biometrične podatke ni na voljo"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN je prekratek. Imeti mora vsaj 4 števke."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Poskusite znova pozneje"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Vklopljen je celozaslonski način"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Če želite zapreti, povlecite navzdol z vrha zaslona"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Razumem"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Zasukajte za boljši pregled."</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Aplikacijo <xliff:g id="NAME">%s</xliff:g> odprite v celozaslonskem načinu za boljši pregled."</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Izbirnik zaslonske bližnjice za dostopnost"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Bližnjica za dostopnost"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Opusti zaslon z obvestili"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meni"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Predvajaj/začasno zaustavi predstavnost"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Smerni gumb gor"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Smerni gumb dol"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Smerni gumb levo"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Kako deluje"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"V teku …"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Vnovična nastavitev odklepanja s prstnim odtisom"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ni deloval pravilno in je bil izbrisan"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> in <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nista delovala pravilno in sta bila izbrisana"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> ni deloval pravilno in je bil izbrisan. Znova ga nastavite, če želite telefon odklepati s prstnim odtisom."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> in <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nista delovala pravilno in sta bila izbrisana. Znova ju nastavite, če želite telefon odklepati s prstnim odtisom."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Odtisa »<xliff:g id="FINGERPRINT">%s</xliff:g>« ni več mogoče prepoznati."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Odtisov »<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>« in »<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>« ni več mogoče prepoznati."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Odtisa »<xliff:g id="FINGERPRINT">%s</xliff:g>« ni več mogoče prepoznati. Znova nastavite odklepanje s prstnim odtisom."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Odtisov »<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>« in »<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>« ni več mogoče prepoznati. Znova nastavite odklepanje s prstnim odtisom."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Vnovična nastavitev odklepanja z obrazom"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Model obraza ni deloval pravilno in je bil izbrisan. Znova ga nastavite, če želite telefon odklepati z obrazom."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Vašega modela obraza ni več mogoče prepoznati. Znova nastavite odklepanje z obrazom."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Nastavi"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Ne zdaj"</string> </resources> diff --git a/core/res/res/values-sq/strings.xml b/core/res/res/values-sq/strings.xml index 88c498791997..58b4b972b78c 100644 --- a/core/res/res/values-sq/strings.xml +++ b/core/res/res/values-sq/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-i është shumë i shkurtër. Duhet të jetë të paktën 4 shifra."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Provo sërish më vonë"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Po shikon ekranin e plotë"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Për të dalë, rrëshqit shpejt poshtë nga kreu i ekranit"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"E kuptova"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rrotullo për një pamje më të mirë"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Hape <xliff:g id="NAME">%s</xliff:g> në ekran të plotë për pamje më të mirë"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Zgjedhësi i shkurtores së qasshmërisë në ekran"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Shkurtorja e qasshmërisë"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Hiq \"Strehën e njoftimeve\""</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menyja"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Luaj/vendos në pauzë median"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Lart në bllokun e drejtimit"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Poshtë në bllokun e drejtimit"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Majtas në bllokun e drejtimit"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Si funksionon"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Në pritje..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Konfiguro përsëri \"Shkyçjen me gjurmën e gishtit\""</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> nuk po funksiononte mirë dhe u fshi"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dhe <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nuk po funksiononin mirë dhe u fshinë"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> nuk po funksiononte mirë dhe u fshi. Konfiguroje përsëri për ta shkyçur telefonin tënd me gjurmën e gishtit."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dhe <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nuk po funksiononin mirë dhe u fshinë. Konfiguroji përsëri për ta shkyçur telefonin tënd me gjurmën e gishtit."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> nuk mund të njihet më."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dhe <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nuk mund të njihen më."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> nuk mund të njihet më. Konfiguro përsëri \"Shkyçjen me gjurmën e gishtit\"."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> dhe <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nuk mund të njihen më. Konfiguro përsëri \"Shkyçjen me gjurmën e gishtit\"."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Konfiguro \"Shkyçjen me fytyrë\" përsëri"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Modeli yt i fytyrës nuk po funksiononte mirë dhe u fshi. Konfiguroje përsëri për ta shkyçur telefonin tënd me fytyrën."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Modeli yt i fytyrës nuk mund të njihet më. Konfiguro \"Shkyçjen me fytyrë\" përsëri."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Konfiguro"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Jo tani"</string> </resources> diff --git a/core/res/res/values-sr/strings.xml b/core/res/res/values-sr/strings.xml index f620246b2159..e8849cb7a413 100644 --- a/core/res/res/values-sr/strings.xml +++ b/core/res/res/values-sr/strings.xml @@ -517,11 +517,11 @@ <string name="permlab_activityRecognition" msgid="1782303296053990884">"препознавање физичких активности"</string> <string name="permdesc_activityRecognition" msgid="8667484762991357519">"Ова апликација може да препозна физичке активности."</string> <string name="permlab_camera" msgid="6320282492904119413">"снимање фотографија и видеа"</string> - <string name="permdesc_camera" msgid="5240801376168647151">"Ова апликација може да снима слике и видео снимке помоћу камере док се апликација користи."</string> - <string name="permlab_backgroundCamera" msgid="7549917926079731681">"да снима слике и видео снимке у позадини"</string> + <string name="permdesc_camera" msgid="5240801376168647151">"Ова апликација може да снима слике и видео помоћу камере док се апликација користи."</string> + <string name="permlab_backgroundCamera" msgid="7549917926079731681">"да снима слике и видео у позадини"</string> <string name="permdesc_backgroundCamera" msgid="1615291686191138250">"Ова апликација може да снима фотографије и видео снимке помоћу камере у било ком тренутку."</string> <string name="permlab_systemCamera" msgid="3642917457796210580">"Дозволите некој апликацији или услузи да приступа камерама система да би снимала слике и видео снимке"</string> - <string name="permdesc_systemCamera" msgid="5938360914419175986">"Ова привилегована системска апликација може да снима слике и видео снимке помоћу камере система у било ком тренутку. Апликација треба да има и дозволу android.permission.CAMERA"</string> + <string name="permdesc_systemCamera" msgid="5938360914419175986">"Ова привилегована системска апликација може да снима слике и видео помоћу камере система у било ком тренутку. Апликација треба да има и дозволу android.permission.CAMERA"</string> <string name="permlab_cameraOpenCloseListener" msgid="5548732769068109315">"Дозволите апликацији или услузи да добија повратне позиве о отварању или затварању уређаја са камером."</string> <string name="permdesc_cameraOpenCloseListener" msgid="2002636131008772908">"Ова апликација може да добија повратне позиве када се било који уређај са камером отвара или затвара (помоћу неке апликације)."</string> <string name="permlab_cameraHeadlessSystemUser" msgid="680194666834500050">"Дозволите апликацији или услузи да приступа камери као корисник система без графичког корисничког интерфејса."</string> @@ -643,7 +643,7 @@ <string name="permdesc_mediaLocation" msgid="597912899423578138">"Дозвољава апликацији да чита локације из медијске колекције."</string> <string name="biometric_app_setting_name" msgid="3339209978734534457">"Користите биометрију"</string> <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Користите биометрију или откључавање екрана"</string> - <string name="biometric_dialog_default_title" msgid="55026799173208210">"Потврдите свој идентитет"</string> + <string name="biometric_dialog_default_title" msgid="55026799173208210">"Потврдите идентитет"</string> <string name="biometric_dialog_default_subtitle" msgid="8457232339298571992">"Користите биометријски податак да бисте наставили"</string> <string name="biometric_or_screen_lock_dialog_default_subtitle" msgid="159539678371552009">"Користите биометријски податак или откључавање екрана да бисте наставили"</string> <string name="biometric_error_hw_unavailable" msgid="2494077380540615216">"Биометријски хардвер није доступан"</string> @@ -1884,8 +1884,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN је прекратак. Мора да има бар 4 цифре."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Пробајте поново касније"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Приказује се цео екран"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Да бисте затворили, превуците надоле од врха екрана"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Важи"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Ротирајте ради бољег приказа"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Отворите апликацију <xliff:g id="NAME">%s</xliff:g> преко целог екрана да бисте боље видели"</string> @@ -2193,6 +2192,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Алатка за бирање пречица за приступачност на екрану"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Пречица за приступачност"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Одбаци траку са обавештењима"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Мени"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Пусти/паузирај медије"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"нагоре на D-pad-у"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"надоле на D-pad-у"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"налево на D-pad-у"</string> @@ -2419,12 +2420,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Принцип рада"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"На чекању..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Поново подесите откључавање отиском прста"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> није функционисао и избрисали смо га"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> нису функционисали и избрисали смо их"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> није функционисао и избрисали смо га. Поново га подесите да бисте телефон откључавали отиском прста."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> нису функционисали и избрисали смо их. Поново их подесите да бисте телефон откључавали отиском прста."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> више не може да се препозна."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> више не могу да се препознају."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> више не може да се препозна. Поново подесите откључавање отиском прста."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> и <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> више не могу да се препознају. Поново подесите откључавање отиском прста."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Поново подесите откључавање лицем"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Ваш модел лица није функционисао и избрисали смо га. Поново га подесите да бисте телефон откључавали лицем."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Ваш модел лица више не може да се препозна. Поново подесите откључавање лицем."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Подеси"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не сада"</string> </resources> diff --git a/core/res/res/values-sv/strings.xml b/core/res/res/values-sv/strings.xml index 35c4c716d7a6..7995ee3bb4b6 100644 --- a/core/res/res/values-sv/strings.xml +++ b/core/res/res/values-sv/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Pinkoden är för kort. Måste vara minst fyra siffror."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Försök igen senare"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Visar på fullskärm"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Svep nedåt från skärmens överkant för att avsluta"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Rotera för att få en bättre vy"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Öppna <xliff:g id="NAME">%s</xliff:g> i fullskärmsläget för att få en bättre vy"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Valfunktion för tillgänglighetsgenväg på skärmen"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Aktivera tillgänglighet snabbt"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Stäng meddelandepanelen"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Meny"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Spela upp/pausa"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Styrkors, upp"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Styrkors, ned"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Styrkors, vänster"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Så fungerar det"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Väntar …"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Konfigurera fingeravtryckslås igen"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> fungerade inte bra och har raderats"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> och <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> fungerade inte bra och har raderats"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> fungerade inte bra och har raderats. Konfigurera det igen för att låsa upp telefonen med fingeravtryck."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> och <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> fungerade inte bra och har raderats. Konfigurera dem igen för att låsa upp telefonen med fingeravtryck."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Det går inte längre att känna igen <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Det går inte längre att känna igen <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> och <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Det går inte längre att känna igen <xliff:g id="FINGERPRINT">%s</xliff:g>. Konfigurera fingeravtryckslås igen."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Det går inte längre att känna igen <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> och <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. Konfigurera fingeravtryckslås igen."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Konfigurera ansiktslås igen"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Ansiktsmodellen fungerade inte bra och har raderats. Konfigurera den igen för att låsa upp telefonen med ansiktet."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Det går inte längre att känna igen din ansiktsmodell. Konfigurera ansiktslåset på nytt."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Ställ in"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Inte nu"</string> </resources> diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml index dc1902674a2d..0209f95ceebe 100644 --- a/core/res/res/values-sw/strings.xml +++ b/core/res/res/values-sw/strings.xml @@ -991,7 +991,7 @@ <string name="keyguard_password_enter_pin_password_code" msgid="7792964196473964340">"Ingiza PIN ili kufungua"</string> <string name="keyguard_password_wrong_pin_code" msgid="8583732939138432793">"Nambari ya PIN uliyoweka si sahihi."</string> <string name="keyguard_label_text" msgid="3841953694564168384">"Ili kufungua, bofya Menyu kisha 0."</string> - <string name="emergency_call_dialog_number_for_display" msgid="2978165477085612673">"Nambari ya dharura"</string> + <string name="emergency_call_dialog_number_for_display" msgid="2978165477085612673">"Namba ya dharura"</string> <string name="lockscreen_carrier_default" msgid="6192313772955399160">"Hakuna huduma"</string> <string name="lockscreen_screen_locked" msgid="7364905540516041817">"skrini imefungwa."</string> <string name="lockscreen_instructions_when_pattern_enabled" msgid="7982445492532123308">"Bonyeza Menyu ili kufungua au kupiga simu ya dharura."</string> @@ -1318,7 +1318,7 @@ <string name="volume_call" msgid="7625321655265747433">"Sauti ya simu inayoendelea"</string> <string name="volume_bluetooth_call" msgid="2930204618610115061">"Sauti ya simu inayoendelea ya Bluetooth"</string> <string name="volume_alarm" msgid="4486241060751798448">"Sauti ya kengele"</string> - <string name="volume_notification" msgid="6864412249031660057">"Sauti ya notisi"</string> + <string name="volume_notification" msgid="6864412249031660057">"Sauti ya arifa"</string> <string name="volume_unknown" msgid="4041914008166576293">"Kiwango"</string> <string name="volume_icon_description_bluetooth" msgid="7540388479345558400">"Sauti ya Bluetooth"</string> <string name="volume_icon_description_ringer" msgid="2187800636867423459">"Sauti ya toni mlio"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN ni fupi mno. Lazima iwe angalau tarakimu 4."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Jaribu tena baadaye"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Unatazama skrini nzima"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Telezesha kidole chini kutoka sehemu ya juu ya skrini yako ili ufunge"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Nimeelewa"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Zungusha ili upate mwonekano bora"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Fungua <xliff:g id="NAME">%s</xliff:g> kwenye skrini nzima ili uone maudhui kwa urahisi"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Kichagua Njia ya Mkato ya Ufikivu kwenye Skrini"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Njia ya Mkato ya Ufikivu"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Ondoa Sehemu ya Arifa"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menyu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Cheza/Sitisha Maudhui"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Kitufe cha juu cha Dpad"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Kitufe cha chini cha Dpad"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Kitufe cha kushoto cha Dpad"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Utaratibu wake"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Inashughulikiwa..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Weka tena mipangilio ya Kufungua kwa Alama ya Kidole"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Alama ya <xliff:g id="FINGERPRINT">%s</xliff:g> ilikuwa na hitilafu na imefutwa"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Alama za <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> na <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> zilikuwa na hitilafu na zimefutwa"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Alama ya <xliff:g id="FINGERPRINT">%s</xliff:g> ilikuwa na hitilafu na imefutwa. Iweke tena ili ufungue simu yako kwa alama ya kidole."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Alama za <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> na <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> zilikuwa na hitilafu na zimefutwa. Ziweke tena ili ufungue simu yako kwa alama ya kidole."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> haitambuliki tena."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> na <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> havitambuliki tena."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> haitambuliki tena. Weka tena mipangilio ya Kufungua kwa Alama ya Kidole."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> na <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> havitambuliki tena. Weka tena mipangilio ya Kufungua kwa Alama ya Kidole."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Weka tena mipangilio ya Kufungua kwa Uso"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Muundo wako wa uso ulikuwa na hitilafu na umefutwa. Uweke tena ili ufungue simu yako kwa uso."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Muundo wa uso wako hautambuliki tena. Weka tena mipangilio ya Kufungua kwa Uso."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Weka mipangilio"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Si sasa"</string> </resources> diff --git a/core/res/res/values-ta/strings.xml b/core/res/res/values-ta/strings.xml index 91ae904d9b0e..31ed93984ce1 100644 --- a/core/res/res/values-ta/strings.xml +++ b/core/res/res/values-ta/strings.xml @@ -1523,7 +1523,7 @@ <string name="forward_intent_to_work" msgid="3620262405636021151">"பணிக் கணக்கில் பயன்பாட்டைப் பயன்படுத்துகிறீர்கள்"</string> <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="accessibility_binding_label" msgid="1974602776545801715">"மாற்றுத்திறன் வசதி"</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> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"பின் மிகவும் சிறியதாக உள்ளது. குறைந்தது 4 இலக்கங்கள் இருக்க வேண்டும்."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"மீண்டும் முயற்சிக்கவும்"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"முழுத் திரையில் காட்டுகிறது"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"வெளியேற, உங்கள் திரையின் மேலிருந்து கீழ்நோக்கி ஸ்வைப் செய்யவும்"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"புரிந்தது"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"சிறந்த காட்சிக்கு சுழற்றுங்கள்"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"சிறந்த காட்சிக்கு, <xliff:g id="NAME">%s</xliff:g> ஆப்ஸை முழுத்திரைப் பயன்முறையில் திறக்கவும்"</string> @@ -2054,7 +2053,7 @@ <string name="app_category_news" msgid="1172762719574964544">"செய்திகளும் பத்திரிகைகளும்"</string> <string name="app_category_maps" msgid="6395725487922533156">"வரைபடங்களும் வழிசெலுத்தலும்"</string> <string name="app_category_productivity" msgid="1844422703029557883">"உற்பத்தித்திறன்"</string> - <string name="app_category_accessibility" msgid="6643521607848547683">"அணுகல்தன்மை"</string> + <string name="app_category_accessibility" msgid="6643521607848547683">"மாற்றுத்திறன் வசதி"</string> <string name="device_storage_monitor_notification_channel" msgid="5164244565844470758">"சாதனச் சேமிப்பகம்"</string> <string name="adb_debugging_notification_channel_tv" msgid="4764046459631031496">"USB பிழைதிருத்தம்"</string> <string name="time_picker_hour_label" msgid="4208590187662336864">"மணி"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"திரையிலுள்ள அணுகல்தன்மை ஷார்ட்கட்டிற்கான தேர்வி"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"அணுகல்தன்மை ஷார்ட்கட்"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"அறிவிப்பு விவரத்தை நிராகரி"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"மெனு"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"மீடியாவை இயக்குதல்/இடைநிறுத்துதல்"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"மேல் திசை காட்டும் பட்டன்"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"கீழ் திசை காட்டும் பட்டன்"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"இடது திசை காட்டும் பட்டன்"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"இது செயல்படும் விதம்"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"நிலுவையிலுள்ளது..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"கைரேகை அன்லாக் அம்சத்தை மீண்டும் அமையுங்கள்"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> சரியாகச் செயல்படவில்லை என்பதால் அது நீக்கப்பட்டது"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> மற்றும் <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> சரியாகச் செயல்படவில்லை என்பதால் அவை நீக்கப்பட்டன"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> சரியாகச் செயல்படவில்லை என்பதால் அது நீக்கபட்டது. கைரேகை மூலம் உங்கள் மொபைலை அன்லாக் செய்ய அதை மீண்டும் அமையுங்கள்."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> மற்றும் <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> சரியாகச் செயல்படவில்லை என்பதால் அவை நீக்கப்பட்டன. கைரேகை மூலம் உங்கள் மொபைலை அன்லாக் செய்ய அவற்றை மீண்டும் அமையுங்கள்."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>ஐ இனி அடையாளம் காண முடியாது."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ஆகியவற்றை இனி அடையாளம் காண முடியாது."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>ஐ இனி அடையாளம் காண முடியாது. கைரேகை அன்லாக் அம்சத்தை மீண்டும் அமையுங்கள்."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ஆகியவற்றை இனி அடையாளம் காண முடியாது. கைரேகை அன்லாக் அம்சத்தை மீண்டும் அமையுங்கள்."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"\'முகம் காட்டித் திறத்தல்\' அம்சத்தை மீண்டும் அமையுங்கள்"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"உங்கள் முகத் தோற்றப் பதிவு சரியாகச் செயல்படவில்லை என்பதால் அது நீக்கப்பட்டது. உங்கள் முகத்தைப் பயன்படுத்தி மொபைலை அன்லாக் செய்ய அதை மீண்டும் அமையுங்கள்."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"உங்கள் முகத் தோற்றப் பதிவை இனி அடையாளம் காண முடியாது. முகம் காட்டித் திறத்தல் அம்சத்தை மீண்டும் அமையுங்கள்."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"அமை"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"இப்போது வேண்டாம்"</string> </resources> diff --git a/core/res/res/values-te/strings.xml b/core/res/res/values-te/strings.xml index 759c6e62f73e..bc29a03260af 100644 --- a/core/res/res/values-te/strings.xml +++ b/core/res/res/values-te/strings.xml @@ -203,8 +203,8 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"వ్యక్తిగత వినియోగం కోసం నిర్వాహకులు పరికరాన్ని తీసి వేశారు"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"ప్రైవేట్ స్పేస్ తీసివేయబడింది"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"మీ సంస్థ ఈ మేనేజ్ చేసే పరికరంలో ప్రైవేట్ స్పేస్లను అనుమతించదు."</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"పరికరం నిర్వహించబడింది"</string> - <string name="network_logging_notification_text" msgid="1327373071132562512">"మీ సంస్థ ఈ పరికరాన్ని నిర్వహిస్తుంది మరియు నెట్వర్క్ ట్రాఫిక్ని పర్యవేక్షించవచ్చు. వివరాల కోసం నొక్కండి."</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"ఈ డివైజ్ మేనేజ్ చేయబడుతోంది"</string> + <string name="network_logging_notification_text" msgid="1327373071132562512">"మీ సంస్థ ఈ డివైజ్ను మేనేజ్ చేస్తోంది, నెట్వర్క్ ట్రాఫిక్ను మానిటర్ చేసే అవకాశం ఉంది. వివరాల కోసం ట్యాప్ చేయండి."</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"యాప్లు మీ లొకేషన్ను యాక్సెస్ చేయగలవు"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"మరింత తెలుసుకోవడానికి మీ IT అడ్మిన్ను కాంటాక్ట్ చేయండి"</string> <string name="geofencing_service" msgid="3826902410740315456">"భౌగోళిక సరిహద్దుల సర్వీస్"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"పిన్ చాలా చిన్నదిగా ఉంది. తప్పనిసరిగా కనీసం 4 అంకెలు ఉండాలి."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"తర్వాత మళ్లీ ట్రై చేయండి"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"ఫుల్-స్క్రీన్లో వీక్షిస్తున్నారు"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"ఎగ్జిట్ అవ్వడానికి, మీ స్క్రీన్ పై నుండి కిందికి స్వైప్ చేయండి"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"అర్థమైంది"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"మెరుగైన వీక్షణ కోసం తిప్పండి"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"మెరుగైన వీక్షణ కోసం <xliff:g id="NAME">%s</xliff:g>ను ఫుల్ స్క్రీన్లో తెరవండి"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"స్క్రీన్పై ఉండే యాక్సెసిబిలిటీ షార్ట్కట్ల ఎంపిక సాధనం"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"యాక్సెసిబిలిటీ షార్ట్కట్"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"నోటిఫికేషన్ తెరను తీసివేయండి"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"మెనూ"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"మీడియాను ప్లే/పాజ్ చేయండి"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad పైకి"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad కింద"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ఎడమవైపున"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"ఇది ఎలా పని చేస్తుంది"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"పెండింగ్లో ఉంది..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"వేలిముద్ర అన్లాక్ను మళ్లీ సెటప్ చేయండి"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> సరిగ్గా పని చేయడం లేదు, తొలగించబడింది"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> బాగా పని చేయడం లేదు, తొలగించబడ్డాయి"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> సరిగ్గా పని చేయడం లేదు, తొలగించబడింది. వేలిముద్రతో మీ ఫోన్ను అన్లాక్ చేయడానికి దాన్ని మళ్లీ సెటప్ చేయండి."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> బాగా పని చేయడం లేదు, తొలగించబడ్డాయి. మీ వేలిముద్రతో మీ ఫోన్ను అన్లాక్ చేయడానికి వాటిని మళ్లీ సెటప్ చేయండి."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g>ను ఇకపై గుర్తించడం సాధ్యం కాదు."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>లను ఇకపై గుర్తించడం సాధ్యం కాదు."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g>ను ఇకపై గుర్తించడం సాధ్యం కాదు. వేలిముద్ర అన్లాక్ను మళ్లీ సెటప్ చేయండి."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>, <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>లను ఇకపై గుర్తించడం సాధ్యం కాదు. వేలిముద్ర అన్లాక్ను మళ్లీ సెటప్ చేయండి."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ఫేస్ అన్లాక్ను మళ్లీ సెటప్ చేయండి"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"మీ ఫేస్ మోడల్ సరిగ్గా పని చేయడం లేదు, తొలగించబడింది. ఫేస్తో మీ ఫోన్ను అన్లాక్ చేయడానికి దాన్ని మళ్లీ సెటప్ చేయండి."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"మీ ఫేస్ మోడల్ను ఇకపై గుర్తించడం సాధ్యం కాదు. ఫేస్ అన్లాక్ను మళ్లీ సెటప్ చేయండి."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"సెటప్ చేయండి"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ఇప్పుడు కాదు"</string> </resources> diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml index 282f66e90a59..37d5a0d463d3 100644 --- a/core/res/res/values-th/strings.xml +++ b/core/res/res/values-th/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN สั้นเกินไป ต้องมีอย่างน้อย 4 หลัก"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"ลองอีกครั้งในภายหลัง"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"กำลังดูแบบเต็มหน้าจอ"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"หากต้องการออก ให้ปัดลงจากด้านบนของหน้าจอ"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"รับทราบ"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"หมุนเพื่อรับมุมมองที่ดียิ่งขึ้น"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"เปิด <xliff:g id="NAME">%s</xliff:g> ในโหมดเต็มหน้าจอเพื่อรับมุมมองที่ดียิ่งขึ้น"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"ตัวเลือกทางลัดการช่วยเหลือพิเศษบนหน้าจอ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ทางลัดการช่วยเหลือพิเศษ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"ปิดหน้าต่างแจ้งเตือน"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"เมนู"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"เล่น/หยุดสื่อชั่วคราว"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad ขึ้น"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad ลง"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad ซ้าย"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"พื้นที่ส่วนตัว"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"เนื้อหาการแจ้งเตือนที่ละเอียดอ่อนซ่อนอยู่"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"ซ่อนเนื้อหาแอปจากการแชร์หน้าจอเพื่อความปลอดภัย"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"ซ่อนเนื้อหาแอปจากการแชร์หน้าจอแล้วเพื่อความปลอดภัย"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"เชื่อมต่อกับดาวเทียมโดยอัตโนมัติ"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"คุณรับส่งข้อความผ่านดาวเทียมได้โดยไม่ต้องใช้เครือข่ายมือถือหรือ Wi-Fi"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"เปิด Messages"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"วิธีการทำงาน"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"รอดำเนินการ..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"ตั้งค่าการปลดล็อกด้วยลายนิ้วมืออีกครั้ง"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> ทำงานได้ไม่ดีและถูกลบออกไปแล้ว"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> และ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ทำงานได้ไม่ดีและถูกลบออกไปแล้ว"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g>ทำงานได้ไม่ดีและถูกลบออกไปแล้ว ตั้งค่าอีกครั้งเพื่อปลดล็อกโทรศัพท์ด้วยลายนิ้วมือ"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> และ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ทำงานได้ไม่ดีและถูกลบออกไปแล้ว ตั้งค่าอีกครั้งเพื่อปลดล็อกโทรศัพท์ด้วยลายนิ้วมือ"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"ระบบไม่จดจำ <xliff:g id="FINGERPRINT">%s</xliff:g> อีกต่อไป"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"ระบบไม่จดจำ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> และ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> อีกต่อไป"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"ระบบไม่จดจำ <xliff:g id="FINGERPRINT">%s</xliff:g> อีกต่อไป ตั้งค่าการปลดล็อกด้วยลายนิ้วมืออีกครั้ง"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"ระบบไม่จดจำ <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> และ <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> อีกต่อไป ตั้งค่าการปลดล็อกด้วยลายนิ้วมืออีกครั้ง"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"ตั้งค่าการปลดล็อกด้วยใบหน้าอีกครั้ง"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"รูปแบบใบหน้าของคุณทำงานได้ไม่ดีและถูกลบออกไปแล้ว ตั้งค่าอีกครั้งเพื่อปลดล็อกโทรศัพท์ด้วยใบหน้า"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"ระบบไม่จดจำรูปแบบใบหน้าของคุณอีกต่อไป ตั้งค่าการปลดล็อกด้วยใบหน้าอีกครั้ง"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"ตั้งค่า"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ไว้ทีหลัง"</string> </resources> diff --git a/core/res/res/values-tl/strings.xml b/core/res/res/values-tl/strings.xml index 31b81aac16a4..c308bd5bc312 100644 --- a/core/res/res/values-tl/strings.xml +++ b/core/res/res/values-tl/strings.xml @@ -1716,7 +1716,7 @@ <string name="kg_text_message_separator" product="default" msgid="4503708889934976866">" — "</string> <string name="kg_reordering_delete_drop_target_text" msgid="2034358143731750914">"Alisin"</string> <string name="safe_media_volume_warning" product="default" msgid="3751676824423049994">"Lakasan ang volume nang lagpas sa inirerekomendang antas?\n\nMaaaring mapinsala ng pakikinig sa malakas na volume sa loob ng mahahabang panahon ang iyong pandinig."</string> - <string name="csd_dose_reached_warning" product="default" msgid="491875107583931974">"Magpatuloy sa pakikinig nang may malakas na volume?\n\nNaging malakas ang volume nang mas matagal na sa inirerekomenda, at posible nitong mapinsala ang pandinig mo"</string> + <string name="csd_dose_reached_warning" product="default" msgid="491875107583931974">"Magpatuloy sa pakikinig nang may malakas na volume?\n\nMalakas ang volume nang mas matagal na sa inirerekomenda, at posible nitong mapinsala ang pandinig mo"</string> <string name="csd_momentary_exposure_warning" product="default" msgid="7730840903435405501">"Naka-detect ng malakas na tunog\n\nMas malakas ang volume kaysa sa inirerekomenda, at posible nitong mapinsala ang pandinig mo"</string> <string name="accessibility_shortcut_warning_dialog_title" msgid="4017995837692622933">"Gagamitin ang Shortcut sa Accessibility?"</string> <string name="accessibility_shortcut_toogle_warning" msgid="4161716521310929544">"Kapag naka-on ang shortcut, magsisimula ang isang feature ng pagiging naa-access kapag pinindot ang parehong button ng volume."</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Masyadong maikli ang PIN. Hindi dapat mas maikli sa 4 na digit."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Subukang muli sa ibang pagkakataon"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Panonood sa full screen"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Para lumabas, mag-swipe pababa mula sa itaas ng iyong screen"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Nakuha ko"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"I-rotate para sa mas magandang view"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Buksan ang <xliff:g id="NAME">%s</xliff:g> sa full screen para sa mas magandang view"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Tagapili ng Shortcut ng Accessibility sa Screen"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Shortcut ng Accessibility"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"I-dismiss ang Notification Shade"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"I-Play/I-Pause ang Media"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Up"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Down"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Left"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Paano ito gumagana"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Nakabinbin..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"I-set up ulit ang Pag-unlock Gamit ang Fingerprint"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Hindi gumagana nang maayos ang <xliff:g id="FINGERPRINT">%s</xliff:g> at na-delete ito"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Hindi gumagana nang maayos ang <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> at <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> at na-delete ang mga ito"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Hindi gumagana nang maayos ang <xliff:g id="FINGERPRINT">%s</xliff:g> at na-delete na ito. I-set up ulit ito para ma-unlock ang iyong telepono sa pamamagitan ng fingerprint."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Hindi gumagana nang maayos ang <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> at <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> at na-delete na ang mga ito. I-set up ulit ang mga ito para ma-unlock ang iyong telepono gamit ang fingerprint mo."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Hindi na makilala ang <xliff:g id="FINGERPRINT">%s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Hindi na makilala ang <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> at <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Hindi na makilala ang <xliff:g id="FINGERPRINT">%s</xliff:g>. I-set up ulit ang Pag-unlock Gamit ang Fingerprint."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Hindi na makilala ang <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> at <xliff:g id="FINGERPRINT_1">%2$s</xliff:g>. I-set up ulit ang Pag-unlock Gamit ang Fingerprint."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"I-set up ulit ang Pag-unlock Gamit ang Mukha"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Hindi gumagana nang maayos ang iyong face model at na-delete na ito. I-set up ulit ito para ma-unlock ang iyong telepono sa pamamagitan ng mukha."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Hindi na makilala ang iyong face model. I-set up ulit ang Pag-unlock Gamit ang Mukha."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"I-set up"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Huwag muna"</string> </resources> diff --git a/core/res/res/values-tr/strings.xml b/core/res/res/values-tr/strings.xml index 13f7c2f84bef..6f2d9624722c 100644 --- a/core/res/res/values-tr/strings.xml +++ b/core/res/res/values-tr/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN çok kısa. En az 4 basamaklı olmalı."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Daha sonra tekrar deneyin"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Tam ekran olarak görüntüleme"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Çıkmak için ekranın üst kısmından aşağı doğru kaydırın"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Anladım"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Daha iyi bir görünüm elde etmek için ekranı döndürün"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Daha iyi görünüm için <xliff:g id="NAME">%s</xliff:g> uygulamasını açın"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekran Erişilebilirlik Kısayol Seçici"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Erişilebilirlik Kısayolu"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Bildirim Gölgesini Kapat"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menü"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Medyayı Oynat/Duraklat"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad Yukarı"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad Aşağı"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad Sol"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"İşleyiş şekli"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Bekliyor..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Parmak İzi Kilidi\'ni tekrar kurun"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> iyi çalışmadığı için silindi"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ve <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> iyi çalışmadığı için silindi"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> iyi çalışmadığı için silindi. Telefonunuzun kilidini parmak iziyle açmak için tekrar kurun."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ve <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> iyi çalışmadığı için silindi. Telefonunuzun kilidini parmak izinizle açmak için tekrar kurun."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> artık tanınamayacak."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ve <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> artık tanınamayacak."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> artık tanınamayacak. Parmak İzi Kilidi\'ni tekrar kurun."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> ve <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> artık tanınamayacak. Parmak İzi Kilidi\'ni tekrar kurun."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Yüz Tanıma Kilidi\'ni tekrar kurun"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Yüz modeliniz iyi çalışmadığı için silindi. Telefonunuzun kilidini yüzünüzle açmak için tekrar kurun."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Yüz modeliniz artık tanınamayacak. Yüz Tanıma Kilidi\'ni tekrar kurun."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Ayarla"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Şimdi değil"</string> </resources> diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml index b8764e78d83a..0f2f5a88e602 100644 --- a/core/res/res/values-uk/strings.xml +++ b/core/res/res/values-uk/strings.xml @@ -158,7 +158,7 @@ <string name="scCellularNetworkSecurityTitle" msgid="7752521808690294384">"Безпека мобільної мережі"</string> <string name="scCellularNetworkSecuritySummary" msgid="7042036754550545005">"Шифрування, сповіщення для незашифрованих мереж"</string> <string name="scIdentifierDisclosureIssueTitle" msgid="2898888825129970328">"Отримано доступ до ідентифікатора пристрою"</string> - <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"О <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g> у мережі поблизу зафіксовано унікальний ідентифікатор вашого пристрою (IMSI або IMEI) під час використання вашої SIM-карти <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>"</string> + <string name="scIdentifierDisclosureIssueSummaryNotification" msgid="3699930821270580416">"О <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>, коли ви використали SIM-карту <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>, мережа поблизу зафіксувала унікальний ідентифікатор вашого пристрою (IMSI або IMEI)"</string> <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"О <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g> у мережі поблизу зафіксовано унікальний ідентифікатор вашого пристрою (IMSI або IMEI) під час використання вашої SIM-карти <xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>.\n\nЦе означає, що було зареєстровано ваше місцезнаходження, дії чи особу. Це звичайна практика, але може виявитися проблемою для людей, для яких важлива конфіденційність."</string> <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"Підключено до зашифрованої мережі <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"Тепер з’єднання SIM-карти <xliff:g id="NETWORK_NAME">%1$s</xliff:g> краще захищене"</string> @@ -1885,8 +1885,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN-код закороткий. Має бути принаймні 4 цифри."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Спробуйте пізніше"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Перегляд на весь екран"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Щоб вийти, проведіть пальцем униз від верхнього краю екрана"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Оберніть для кращого огляду"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Для кращого огляду відкрийте додаток <xliff:g id="NAME">%s</xliff:g> на весь екран"</string> @@ -2194,6 +2193,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Вибір екранного засобу спеціальних можливостей"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Засіб спеціальних можливостей"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Закрити панель сповіщень"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Меню"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Відтворити/призупинити медіаконтент"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Кнопка \"вгору\" панелі керування"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Кнопка \"вниз\" панелі керування"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Кнопка \"вліво\" панелі керування"</string> @@ -2420,12 +2421,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Як це працює"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Обробка…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Налаштуйте розблокування відбитком пальця повторно"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"Відбиток \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" працював неналежним чином, і його видалено"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"Відбитки \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" працювали неналежним чином, і їх видалено"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"Відбиток \"<xliff:g id="FINGERPRINT">%s</xliff:g>\" працював неналежним чином, і його видалено. Налаштуйте його ще раз, щоб розблоковувати телефон за допомогою відбитка пальця."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"Відбитки \"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>\" і \"<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>\" працювали неналежним чином, і їх видалено. Налаштуйте їх ще раз, щоб розблоковувати телефон за допомогою відбитка пальця."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Відбиток пальця <xliff:g id="FINGERPRINT">%s</xliff:g> більше не розпізнається."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Відбитки пальців <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> і <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> більше не розпізнаються."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Відбиток пальця <xliff:g id="FINGERPRINT">%s</xliff:g> більше не розпізнається. Налаштуйте розблокування відбитком пальця повторно."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Відбитки пальців <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> і <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> більше не розпізнаються. Налаштуйте розблокування відбитком пальця повторно."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Налаштуйте фейс-контроль повторно"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Модель обличчя працювала неналежним чином, і її видалено. Налаштуйте її ще раз, щоб розблоковувати телефон за допомогою фейс-контролю."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Модель вашого обличчя більше не розпізнається. Налаштуйте фейс-контроль повторно."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Налаштувати"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Не зараз"</string> </resources> diff --git a/core/res/res/values-ur/strings.xml b/core/res/res/values-ur/strings.xml index 1ae5e20cd3bf..59c11edc490e 100644 --- a/core/res/res/values-ur/strings.xml +++ b/core/res/res/values-ur/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN کافی چھوٹا ہے۔ کم از کم 4 ہندسے ہونا ضروری ہے۔"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"بعد میں دوبارہ کوشش کریں"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"پوری اسکرین میں دیکھ رہے ہیں"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"باہر نکلنے کے لیے اپنی اسکرین کے اوپری حصے سے نیچے کی طرف سوائپ کریں"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"سمجھ آ گئی"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"بہتر منظر کے لیے گھمائیں"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"بہتر منظر کے لیے <xliff:g id="NAME">%s</xliff:g> کو فُل اسکرین میں کھولیں"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"آن اسکرین ایکسیسبیلٹی شارٹ کٹ منتخب کنندہ"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"ایکسیسبیلٹی کا شارٹ کٹ"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"اطلاعاتی شیڈ برخاست کریں"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"مینیو"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"میڈیا چلائیں/موقوف کریں"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad اوپر کریں"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad نیچے کریں"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad بائیں کریں"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"اس کے کام کرنے کا طریقہ"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"زیر التواء..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"فنگر پرنٹ اَن لاک کو دوبارہ سیٹ اپ کریں"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> اچھی طرح کام نہیں کر رہا تھا اور حذف کر دیا گیا تھا"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> اور <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> اچھی طرح کام نہیں کر رہے تھے اور انہیں حذف کر دیا گیا تھا"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> اچھی طرح کام نہیں کر رہا تھا اور حذف کر دیا گیا تھا۔ اپنے فون کو فنگر پرنٹ سے غیر مقفل کرنے کے لیے، اسے دوبارہ سیٹ اپ کریں۔"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> اور <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> اچھی طرح کام نہیں کر رہے تھے اور انہیں حذف کر دیا گیا تھا۔ اپنے فون کو اپنے فنگر پرنٹ سے غیر مقفل کرنے کے لیے انہیں دوبارہ سیٹ اپ کریں۔"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> مزید پہچانا نہیں جا سکتا۔"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> اور <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> کو مزید پہچانا نہیں جا سکتا۔"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> مزید پہچانا نہیں جا سکتا۔ فنگر پرنٹ اَن لاک کو دوبارہ سیٹ اپ کریں۔"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> اور <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> کو مزید پہچانا نہیں جا سکتا۔ فنگر پرنٹ اَن لاک کو دوبارہ سیٹ اپ کریں۔"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"فیس اَن لاک کو دوبارہ سیٹ اپ کریں"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"آپ کے چہرے کا ماڈل اچھی طرح کام نہیں کر رہا تھا اور حذف کر دیا گیا تھا۔ اپنے فون کو چہرے سے غیر مقفل کرنے کے لیے، اسے دوبارہ سیٹ اپ کریں۔"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"آپ کے چہرے کا ماڈل مزید پہچانا نہیں جا سکتا۔ فیس اَن لاک کو دوبارہ سیٹ اپ کریں۔"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"سیٹ اپ کریں"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"ابھی نہیں"</string> </resources> diff --git a/core/res/res/values-uz/strings.xml b/core/res/res/values-uz/strings.xml index 8d6e16922e0c..2c4a222767df 100644 --- a/core/res/res/values-uz/strings.xml +++ b/core/res/res/values-uz/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN kod juda qisqa, kamida 4 ta raqam kiriting."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Keyinroq urinib ko‘ring"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Butun ekranli rejim"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Chiqish uchun ekranning tepasidan pastga suring"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Yaxshiroq koʻrish uchun kamerani buring"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Yaxshiroq koʻrish uchun butun ekranda <xliff:g id="NAME">%s</xliff:g> ilovasini oching"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Ekranda tezkor ishga tushirishni tanlagich"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Tezkor ishga tushirish"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Eslatma soyasini yopish"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Menyu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Media ijro/pauza"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad – tepaga"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad – pastga"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad – chapga"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Ishlash tartibi"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Kutilmoqda..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Barmoq izi bilan ochish funksiyasini qayta sozlang"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> yaxshi ishlamadi va oʻchirib tashlandi."</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> va <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> yaxshi ishlamadi va oʻchirib tashlandi."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> yaxshi ishlamadi va oʻchirib tashlandi. Telefonni barmoq izi bilan ochish uchun uni qayta sozlang."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> va <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> yaxshi ishlamadi va oʻchirib tashlandi. Telefonni barmoq izi bilan ochish uchun ularni qayta sozlang."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"<xliff:g id="FINGERPRINT">%s</xliff:g> endi tanilmaydi."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> va <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> endi tanilmaydi."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"<xliff:g id="FINGERPRINT">%s</xliff:g> endi tanilmaydi. Barmoq izi bilan ochishni qayta sozlang."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> va <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> endi tanilmaydi. Barmoq izi bilan ochishni qayta sozlang."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Yuz bilan ochishni qayta sozlash"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Yuzingiz mobeli yaxshi ishlamadi va oʻchirib tashlandi. Telefonni yuz bilan ochish uchun uni qayta sozlang."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Yuzingiz modeli endi tanilmaydi. Yuz bilan ochishni qayta sozlang."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Sozlash"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Hozir emas"</string> </resources> diff --git a/core/res/res/values-vi/strings.xml b/core/res/res/values-vi/strings.xml index 857a09563a04..33c29cca40b0 100644 --- a/core/res/res/values-vi/strings.xml +++ b/core/res/res/values-vi/strings.xml @@ -1435,7 +1435,7 @@ <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"Hiển thị trên các ứng dụng khác"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"<xliff:g id="NAME">%s</xliff:g> hiển thị trên các ứng dụng khác"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> hiển thị trên ứng dụng khác"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"<xliff:g id="NAME">%s</xliff:g> đang hiện trên các ứng dụng khác"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"Nếu bạn không muốn <xliff:g id="NAME">%s</xliff:g> sử dụng tính năng này, hãy nhấn để mở cài đặt và tắt tính năng này."</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"Tắt"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"Đang kiểm tra <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"Mã PIN quá ngắn. Phải có ít nhất 4 chữ số."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Hãy thử lại sau"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Xem toàn màn hình"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Để thoát, hãy vuốt xuống từ đầu màn hình"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"OK"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Xoay để xem dễ hơn"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Mở <xliff:g id="NAME">%s</xliff:g> ở chế độ toàn màn hình để xem dễ hơn"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Bộ chọn lối tắt hỗ trợ tiếp cận trên màn hình"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Lối tắt hỗ trợ tiếp cận"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Đóng Ngăn thông báo"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Trình đơn"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Phát/Tạm dừng nội dung nghe nhìn"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Chuyển lên trên bằng bàn phím di chuyển"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Chuyển xuống dưới bằng bàn phím di chuyển"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Chuyển sang trái bằng bàn phím di chuyển"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Cách hoạt động"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Đang chờ xử lý..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Thiết lập lại tính năng Mở khoá bằng vân tay"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"<xliff:g id="FINGERPRINT">%s</xliff:g> không dùng được và đã bị xoá"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> và <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> không dùng được và đã bị xoá"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"<xliff:g id="FINGERPRINT">%s</xliff:g> không dùng được và đã bị xoá. Hãy thiết lập lại để mở khoá điện thoại bằng vân tay."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> và <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> không dùng được và đã bị xoá. Hãy thiết lập lại để mở khoá điện thoại bằng vân tay."</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"Không nhận dạng được <xliff:g id="FINGERPRINT">%s</xliff:g> nữa."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"Không nhận dạng được <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> và <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nữa."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"Không nhận dạng được <xliff:g id="FINGERPRINT">%s</xliff:g> nữa. Hãy thiết lập lại tính năng Mở khoá bằng vân tay."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"Không nhận dạng được <xliff:g id="FINGERPRINT_0">%1$s</xliff:g> và <xliff:g id="FINGERPRINT_1">%2$s</xliff:g> nữa. Hãy thiết lập lại tính năng Mở khoá bằng vân tay."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Thiết lập lại tính năng Mở khoá bằng khuôn mặt"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Mẫu khuôn mặt của bạn không dùng được và đã bị xoá. Hãy thiết lập lại để mở khoá điện thoại bằng khuôn mặt."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Không nhận dạng được mẫu khuôn mặt của bạn nữa. Hãy thiết lập lại tính năng Mở khoá bằng khuôn mặt."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Thiết lập"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Để sau"</string> </resources> diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml index 6cd89cf47792..e617ab994e12 100644 --- a/core/res/res/values-zh-rCN/strings.xml +++ b/core/res/res/values-zh-rCN/strings.xml @@ -203,7 +203,7 @@ <string name="device_ownership_relinquished" msgid="4080886992183195724">"管理员已将该设备开放给个人使用"</string> <string name="private_space_deleted_by_admin" msgid="1484365588862066939">"私密空间已移除"</string> <string name="private_space_deleted_by_admin_details" msgid="7007781735201818689">"贵组织不允许在此受管设备上使用私密空间。"</string> - <string name="network_logging_notification_title" msgid="554983187553845004">"设备为受管理设备"</string> + <string name="network_logging_notification_title" msgid="554983187553845004">"设备受到管理"</string> <string name="network_logging_notification_text" msgid="1327373071132562512">"贵单位会管理该设备,且可能会监控网络流量。点按即可了解详情。"</string> <string name="location_changed_notification_title" msgid="3620158742816699316">"应用可以访问您的位置信息"</string> <string name="location_changed_notification_text" msgid="7158423339982706912">"详情请与您的 IT 管理员联系"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN码太短,至少应包含4位数字。"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"稍后重试"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"目前处于全屏模式"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"若要退出,请从屏幕顶部向下滑动"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"知道了"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"旋转可改善预览效果"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"在全屏模式下打开“<xliff:g id="NAME">%s</xliff:g>”可改善预览效果"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"屏幕上的无障碍功能快捷方式选择器"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"无障碍功能快捷方式"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"关闭通知栏"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"菜单"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"媒体播放/暂停"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"向上方向键"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"向下方向键"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"向左方向键"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"私密空间"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"已隐藏敏感通知内容"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"为安全起见而在屏幕共享画面中处于隐藏状态的应用内容"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"为安全起见,屏幕共享画面已隐藏此应用的内容"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"自动连接到卫星"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"您无需使用移动网络或 WLAN 网络便能收发消息"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"打开“信息”应用"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"运作方式"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"待归档…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"重新设置指纹解锁功能"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"“<xliff:g id="FINGERPRINT">%s</xliff:g>”无法正常使用,已被删除"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"“<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>”和“<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>”无法正常使用,已被删除"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"“<xliff:g id="FINGERPRINT">%s</xliff:g>”无法正常使用,系统已将其删除。如要通过指纹解锁功能来解锁手机,请重新设置。"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"“<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>”和“<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>”无法正常使用,系统已将它们删除。如要通过指纹解锁功能来解锁手机,请重新设置。"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"系统无法再识别<xliff:g id="FINGERPRINT">%s</xliff:g>。"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"系统无法再识别<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>和<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"系统无法再识别<xliff:g id="FINGERPRINT">%s</xliff:g>。请重新设置指纹解锁功能。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"系统无法再识别<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>和<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>。请重新设置指纹解锁功能。"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"重新设置“人脸解锁”功能"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"您的脸部模型无法正常使用,系统已将其删除。如要通过人脸解锁功能来解锁手机,请重新设置。"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"系统无法再识别您的脸部模型。请重新设置人脸解锁功能。"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"设置"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"以后再说"</string> </resources> diff --git a/core/res/res/values-zh-rHK/strings.xml b/core/res/res/values-zh-rHK/strings.xml index 52247530c757..86d3ae93951e 100644 --- a/core/res/res/values-zh-rHK/strings.xml +++ b/core/res/res/values-zh-rHK/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN 碼太短,至少必須為 4 位數。"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"稍後再試"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"開啟全螢幕"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"如要離開,請從螢幕頂部向下滑動"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"知道了"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"旋轉以改善預覽效果"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"以全螢幕模式開啟「<xliff:g id="NAME">%s</xliff:g>」,以改善預覽效果"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"螢幕無障礙功能捷徑選擇器"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"無障礙功能捷徑"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"關閉通知欄"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"選單"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"媒體播放/暫停"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"十字鍵向上鍵"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"十字鍵向下鍵"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"十字鍵向左鍵"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"運作方式"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"待處理…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"重新設定「指紋解鎖」功能"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"由於「<xliff:g id="FINGERPRINT">%s</xliff:g>」無法正常運作,因此系統已將其刪除"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"由於「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」無法正常運作,因此系統已將其刪除。"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"由於「<xliff:g id="FINGERPRINT">%s</xliff:g>」無法正常運作,因此系統已將其刪除。請重新設定,才能使用指紋解鎖手機。"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"由於「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」無法正常運作,因此系統已將其刪除。請重新設定,才能使用指紋解鎖手機。"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"無法再辨識<xliff:g id="FINGERPRINT">%s</xliff:g>。"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"無法再辨識<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>和<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"無法再辨識<xliff:g id="FINGERPRINT">%s</xliff:g>。請重新設定「指紋解鎖」功能。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"無法再辨識<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>和<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>。請重新設定「指紋解鎖」功能。"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"重新設定「面孔解鎖」功能"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"由於面部模型無法正常運作,因此系統已將其刪除。請重新設定,才能使用面孔解鎖手機。"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"無法再辨識你的面部模型。請重新設定「面孔解鎖」功能。"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"設定"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"暫時不要"</string> </resources> diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml index fe66eb965430..75c23a124243 100644 --- a/core/res/res/values-zh-rTW/strings.xml +++ b/core/res/res/values-zh-rTW/strings.xml @@ -160,9 +160,9 @@ <string name="scIdentifierDisclosureIssueSummary" msgid="7283387338827749276">"在 <xliff:g id="DISCLOSURE_TIME">%1$s</xliff:g>,鄰近網路使用你的「<xliff:g id="DISCLOSURE_NETWORK">%2$s</xliff:g>」SIM 卡時,記錄了你的裝置專屬 ID (IMSI 或 IMEI)。\n\n這代表鄰近網路記錄了你的位置、活動或身分資訊。儘管這種情況很常見,但注重隱私的人可能會認為這是個問題。"</string> <string name="scNullCipherIssueEncryptedTitle" msgid="234717016411824969">"已連上加密網路「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」"</string> <string name="scNullCipherIssueEncryptedSummary" msgid="8577510708842150475">"現在連上「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」SIM 卡更加安全"</string> - <string name="scNullCipherIssueNonEncryptedTitle" msgid="3978071464929453915">"已連上未加密網路"</string> - <string name="scNullCipherIssueNonEncryptedSummaryNotification" msgid="7386936934128110388">"目前使用「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」SIM 卡時,通話、訊息和資料較容易受到攻擊"</string> - <string name="scNullCipherIssueNonEncryptedSummary" msgid="5093428974513703253">"目前使用「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」SIM 卡時,通話、訊息和資料較容易受到攻擊。\n\n連線再次加密時,你會收到另一則通知。"</string> + <string name="scNullCipherIssueNonEncryptedTitle" msgid="3978071464929453915">"連接上未加密網路"</string> + <string name="scNullCipherIssueNonEncryptedSummaryNotification" msgid="7386936934128110388">"使用目前的「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」SIM 卡,通話、訊息和資料較易受到攻擊"</string> + <string name="scNullCipherIssueNonEncryptedSummary" msgid="5093428974513703253">"使用目前的「<xliff:g id="NETWORK_NAME">%1$s</xliff:g>」SIM 卡,通話、訊息和資料較易受到攻擊。\n\n連線再次加密時,你會收到另一則通知。"</string> <string name="scNullCipherIssueActionSettings" msgid="5888857706424639946">"行動網路安全性設定"</string> <string name="scNullCipherIssueActionLearnMore" msgid="7896642417214757769">"瞭解詳情"</string> <string name="scNullCipherIssueActionGotIt" msgid="8747796640866585787">"我知道了"</string> @@ -1197,7 +1197,7 @@ <string name="low_internal_storage_view_title" msgid="9024241779284783414">"儲存空間即將用盡"</string> <string name="low_internal_storage_view_text" msgid="8172166728369697835">"部分系統功能可能無法運作"</string> <string name="low_internal_storage_view_text_no_boot" msgid="7368968163411251788">"系統儲存空間不足。請確定你已釋出 250MB 的可用空間,然後重新啟動。"</string> - <string name="app_running_notification_title" msgid="8985999749231486569">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」目前正在執行"</string> + <string name="app_running_notification_title" msgid="8985999749231486569">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」正在執行中"</string> <string name="app_running_notification_text" msgid="5120815883400228566">"輕觸即可瞭解詳情或停止應用程式。"</string> <string name="ok" msgid="2646370155170753815">"確定"</string> <string name="cancel" msgid="6908697720451760115">"取消"</string> @@ -1405,7 +1405,7 @@ <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" product="tv" msgid="6624498401272780855">"選取這個選項以停用 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> <string name="adbwifi_active_notification_message" product="tv" msgid="8633421848366915478">"選取即可停用無線偵錯功能。"</string> @@ -1433,9 +1433,9 @@ <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"輕觸即可選取語言和版面配置"</string> <string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> <string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string> - <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"顯示在其他應用程式上層"</string> + <string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"在其他應用程式上面顯示"</string> <string name="alert_windows_notification_channel_name" msgid="3437528564303192620">"「<xliff:g id="NAME">%s</xliff:g>」在其他應用程式上顯示內容"</string> - <string name="alert_windows_notification_title" msgid="6331662751095228536">"「<xliff:g id="NAME">%s</xliff:g>」正在其他應用程式上顯示內容"</string> + <string name="alert_windows_notification_title" msgid="6331662751095228536">"「<xliff:g id="NAME">%s</xliff:g>」正重疊顯示在其他應用程式上方"</string> <string name="alert_windows_notification_message" msgid="6538171456970725333">"如果你不想讓「<xliff:g id="NAME">%s</xliff:g>」使用這項功能,請輕觸開啟設定頁面,然後停用此功能。"</string> <string name="alert_windows_notification_turn_off_action" msgid="7805857234839123780">"關閉"</string> <string name="ext_media_checking_notification_title" msgid="8299199995416510094">"正在檢查 <xliff:g id="NAME">%s</xliff:g>…"</string> @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PIN 長度太短,至少必須為 4 位數。"</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"稍後再試"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"以全螢幕檢視"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"如要離開,請從螢幕頂端向下滑動"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"知道了"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"旋轉螢幕以瀏覽完整的檢視畫面"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"如要享有更優質的預覽體驗,可透過全螢幕模式開啟「<xliff:g id="NAME">%s</xliff:g>」"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"螢幕上的無障礙捷徑選擇器"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"無障礙捷徑"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"關閉通知欄"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"選單"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"媒體播放/暫停"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Dpad 向上移"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Dpad 向下移"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Dpad 向左移"</string> @@ -2411,19 +2412,19 @@ <string name="private_space_biometric_prompt_title" msgid="5777592909271728154">"私人空間"</string> <string name="redacted_notification_message" msgid="1520587845842228816">"系統已隱藏含有私密資訊的通知內容"</string> <string name="redacted_notification_action_title" msgid="6942924973335920935"></string> - <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"為安全起見,分享螢幕畫面未顯示應用程式內容"</string> + <string name="screen_not_shared_sensitive_content" msgid="7058419185079565001">"為安全起見,分享螢幕畫面隱藏了這個應用程式的內容"</string> <string name="satellite_notification_title" msgid="4026338973463121526">"已自動連上衛星"</string> <string name="satellite_notification_summary" msgid="5207364139430767162">"你可以收發訊息,沒有行動/Wi-Fi 網路也無妨"</string> <string name="satellite_notification_open_message" msgid="4149234979688273729">"開啟「訊息」應用程式"</string> <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"運作方式"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"待處理…"</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"重新設定指紋解鎖"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"「<xliff:g id="FINGERPRINT">%s</xliff:g>」無法正常運作,系統已將其刪除"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」無法正常運作,系統已將其刪除"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"「<xliff:g id="FINGERPRINT">%s</xliff:g>」無法正常運作,因此系統已將其刪除。請重新設定,才能用指紋解鎖手機。"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」無法正常運作,因此系統已將其刪除。請重新設定,才能用指紋解鎖手機。"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"系統無法再辨識「<xliff:g id="FINGERPRINT">%s</xliff:g>」。"</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"系統無法再辨識「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"系統無法再辨識「<xliff:g id="FINGERPRINT">%s</xliff:g>」,請重新設定指紋解鎖。"</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"系統無法再辨識「<xliff:g id="FINGERPRINT_0">%1$s</xliff:g>」和「<xliff:g id="FINGERPRINT_1">%2$s</xliff:g>」,請重新設定指紋解鎖。"</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"重新設定人臉解鎖"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"臉部模型無法正常運作,因此系統已將其刪除。請重新設定,才能用臉解鎖手機。"</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"系統無法再辨識你的臉部模型,請重新設定人臉解鎖。"</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"設定"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"暫時不要"</string> </resources> diff --git a/core/res/res/values-zu/strings.xml b/core/res/res/values-zu/strings.xml index 8285d3e60019..72fcbf3b69a0 100644 --- a/core/res/res/values-zu/strings.xml +++ b/core/res/res/values-zu/strings.xml @@ -1883,8 +1883,7 @@ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"I-PIN yimfushane kakhulu. Okungenani kumele ibe namadijithi angu-4."</string> <string name="restr_pin_try_later" msgid="5897719962541636727">"Zama futhi emva kwesikhathi"</string> <string name="immersive_cling_title" msgid="2307034298721541791">"Ukubuka isikrini esigcwele"</string> - <!-- no translation found for immersive_cling_description (2896205051090870978) --> - <skip /> + <string name="immersive_cling_description" msgid="2896205051090870978">"Ukuze uphume, swayiphela phansi kusukela phezulu esikrinini sakho"</string> <string name="immersive_cling_positive" msgid="7047498036346489883">"Ngiyitholile"</string> <string name="display_rotation_camera_compat_toast_after_rotation" msgid="7600891546249829854">"Zungezisa ukuze uthole ukubuka okungcono"</string> <string name="display_rotation_camera_compat_toast_in_multi_window" msgid="2473122980393502775">"Vula i-<xliff:g id="NAME">%s</xliff:g> kusikrini esigcwele ngokubuka okungcono"</string> @@ -2192,6 +2191,8 @@ <string name="accessibility_system_action_on_screen_a11y_shortcut_chooser_label" msgid="1057878690209817886">"Isikhethi sesinqamuleli sokufinyeleleka kusikrini"</string> <string name="accessibility_system_action_hardware_a11y_shortcut_label" msgid="5764644187715255107">"Isinqamuleli sokufinyeleleka"</string> <string name="accessibility_system_action_dismiss_notification_shade" msgid="8931637495533770352">"Cashisa Umthunzi Wesaziso"</string> + <string name="accessibility_system_action_menu_label" msgid="3385283204496447040">"Imenyu"</string> + <string name="accessibility_system_action_media_play_pause_label" msgid="1905647491347119748">"Ukudlala/Ukumisa Imidiya"</string> <string name="accessibility_system_action_dpad_up_label" msgid="1029042950229333782">"Phezulu kwe-Dpad"</string> <string name="accessibility_system_action_dpad_down_label" msgid="3441918448624921461">"Phansi kwe-Dpad"</string> <string name="accessibility_system_action_dpad_left_label" msgid="6557647179116479152">"Ngakwesokunxele se-Dpad"</string> @@ -2418,12 +2419,12 @@ <string name="satellite_notification_how_it_works" msgid="3132069321977520519">"Indlela esebenza ngayo"</string> <string name="unarchival_session_app_label" msgid="6811856981546348205">"Ilindile..."</string> <string name="fingerprint_dangling_notification_title" msgid="7362075195588639989">"Setha Ukuvula ngesigxivizo somunwe futhi"</string> - <string name="fingerprint_dangling_notification_msg_1" msgid="8517140433796229725">"I-<xliff:g id="FINGERPRINT">%s</xliff:g> ibingasebenzi kahle futhi isuliwe"</string> - <string name="fingerprint_dangling_notification_msg_2" msgid="7578829498452127613">"I-<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> kanye ne-<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ibingasebenzi kahle futhi isuliwe"</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="2927018569542316055">"I-<xliff:g id="FINGERPRINT">%s</xliff:g> ibingasebenzi kahle futhi isuliwe. Phinde uyisethe ukuze uvule ifoni yakho ngesigxivizo somunwe."</string> - <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="6897989352716156176">"I-<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> kanye ne-<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> ibingasebenzi kahle futhi isuliwe. Phinde uyisethe ukuze uvule ifoni yakho ngesigxivizo somunwe wakho"</string> + <string name="fingerprint_dangling_notification_msg_1" msgid="5851784577768803510">"I-<xliff:g id="FINGERPRINT">%s</xliff:g> angeke isaziwa."</string> + <string name="fingerprint_dangling_notification_msg_2" msgid="7925203589860744456">"I-<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> kanye ne-<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> angeke isaziwa."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1" msgid="1824812666549916586">"I-<xliff:g id="FINGERPRINT">%s</xliff:g> angeke isaziwa. Setha Ukuvula Ngesigxivizo Somunwe futhi."</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2" msgid="5974657382960155099">"I-<xliff:g id="FINGERPRINT_0">%1$s</xliff:g> kanye ne-<xliff:g id="FINGERPRINT_1">%2$s</xliff:g> angeke isaziwa. Setha Ukuvula Ngesigxivizo Somunwe futhi."</string> <string name="face_dangling_notification_title" msgid="947852541060975473">"Setha Ukuvula Ngobuso futhi"</string> - <string name="face_dangling_notification_msg" msgid="8806849376915541655">"Imodeli yobuso yakho ibingasebenzi kahle futhi isuliwe. Phinde uyisethe ukuze uvule ifoni yakho ngobuso."</string> + <string name="face_dangling_notification_msg" msgid="746235263598985384">"Imodeli yobuso yakho angeke isabonwa. Setha Ukuvula Ngobuso futhi."</string> <string name="biometric_dangling_notification_action_set_up" msgid="8246885009807817961">"Setha"</string> <string name="biometric_dangling_notification_action_not_now" msgid="8095249216864443491">"Hhayi manje"</string> </resources> diff --git a/core/res/res/values/config_telephony.xml b/core/res/res/values/config_telephony.xml index e983427129c8..0f4f219f7e24 100644 --- a/core/res/res/values/config_telephony.xml +++ b/core/res/res/values/config_telephony.xml @@ -393,6 +393,12 @@ <bool name="config_wait_for_device_alignment_in_demo_datagram">false</bool> <java-symbol type="bool" name="config_wait_for_device_alignment_in_demo_datagram" /> + <!-- Boolean indicating whether to enable MMS to be attempted on IWLAN if possible, even if + existing cellular networks already supports IWLAN. + --> + <bool name="force_iwlan_mms_feature_enabled">false</bool> + <java-symbol type="bool" name="force_iwlan_mms_feature_enabled" /> + <!-- The time duration in millis after which Telephony will abort the last message datagram sending requests. Telephony starts a timer when receiving a last message datagram sending request in either OFF, IDLE, or NOT_CONNECTED state. In NOT_CONNECTED, the duration of the diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index 10373a59d819..1a2f0ccb06ba 100644 --- a/core/res/res/values/strings.xml +++ b/core/res/res/values/strings.xml @@ -6503,17 +6503,17 @@ ul.</string> <!-- Fingerprint dangling notification title --> <string name="fingerprint_dangling_notification_title">Set up Fingerprint Unlock again</string> <!-- Fingerprint dangling notification content for only 1 fingerprint deleted --> - <string name="fingerprint_dangling_notification_msg_1"><xliff:g id="fingerprint">%s</xliff:g> wasn\'t working well and was deleted</string> + <string name="fingerprint_dangling_notification_msg_1"><xliff:g id="fingerprint">%s</xliff:g> can no longer be recognized.</string> <!-- Fingerprint dangling notification content for more than 1 fingerprints deleted --> - <string name="fingerprint_dangling_notification_msg_2"><xliff:g id="fingerprint">%1$s</xliff:g> and <xliff:g id="fingerprint">%2$s</xliff:g> weren\'t working well and were deleted</string> + <string name="fingerprint_dangling_notification_msg_2"><xliff:g id="fingerprint">%1$s</xliff:g> and <xliff:g id="fingerprint">%2$s</xliff:g> can no longer be recognized.</string> <!-- Fingerprint dangling notification content for only 1 fingerprint deleted and no fingerprint left--> - <string name="fingerprint_dangling_notification_msg_all_deleted_1"><xliff:g id="fingerprint">%s</xliff:g> wasn\'t working well and was deleted. Set it up again to unlock your phone with fingerprint.</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_1"><xliff:g id="fingerprint">%s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again.</string> <!-- Fingerprint dangling notification content for more than 1 fingerprints deleted and no fingerprint left --> - <string name="fingerprint_dangling_notification_msg_all_deleted_2"><xliff:g id="fingerprint">%1$s</xliff:g> and <xliff:g id="fingerprint">%2$s</xliff:g> weren\'t working well and were deleted. Set them up again to unlock your phone with your fingerprint.</string> + <string name="fingerprint_dangling_notification_msg_all_deleted_2"><xliff:g id="fingerprint">%1$s</xliff:g> and <xliff:g id="fingerprint">%2$s</xliff:g> can no longer be recognized. Set up Fingerprint Unlock again.</string> <!-- Face dangling notification title --> <string name="face_dangling_notification_title">Set up Face Unlock again</string> <!-- Face dangling notification content --> - <string name="face_dangling_notification_msg">Your face model wasn\'t working well and was deleted. Set it up again to unlock your phone with face.</string> + <string name="face_dangling_notification_msg">Your face model can no longer be recognized. Set up Face Unlock again.</string> <!-- Biometric dangling notification "set up" action button --> <string name="biometric_dangling_notification_action_set_up">Set up</string> <!-- Biometric dangling notification "Not now" action button --> diff --git a/core/res/res/xml/sms_short_codes.xml b/core/res/res/xml/sms_short_codes.xml index 581dee571a69..bb5380e1312d 100644 --- a/core/res/res/xml/sms_short_codes.xml +++ b/core/res/res/xml/sms_short_codes.xml @@ -34,7 +34,7 @@ http://smscoin.net/software/engine/WordPress/Paid+SMS-registration/ --> <!-- Arab Emirates --> - <shortcode country="ae" pattern="\\d{1,5}" free="1017|1355|3214|6253" /> + <shortcode country="ae" pattern="\\d{1,5}" free="1017|1355|3214|6253|6568" /> <!-- Albania: 5 digits, known short codes listed --> <shortcode country="al" pattern="\\d{5}" premium="15191|55[56]00" /> @@ -70,7 +70,7 @@ <shortcode country="bh" pattern="\\d{1,5}" free="81181|85999" /> <!-- Brazil: 1-5 digits (standard system default, not country specific) --> - <shortcode country="br" pattern="\\d{1,5}" free="6000[012]\\d|876|5500|9963|4141|8000|2652" /> + <shortcode country="br" pattern="\\d{1,5}" free="6000[012]\\d|876|5500|9963|4141|8000|2652|26808" /> <!-- Botswana: 1-5 digits (standard system default, not country specific) --> <shortcode country="bw" pattern="\\d{1,5}" free="16641" /> @@ -79,7 +79,7 @@ <shortcode country="by" pattern="\\d{4}" premium="3336|4161|444[4689]|501[34]|7781" /> <!-- Canada: 5-6 digits --> - <shortcode country="ca" pattern="\\d{5,6}" premium="60999|88188|43030" standard="244444" free="455677" /> + <shortcode country="ca" pattern="\\d{5,6}" premium="60999|88188|43030" standard="244444" free="455677|24470" /> <!-- Switzerland: 3-5 digits: http://www.swisscom.ch/fxres/kmu/thirdpartybusiness_code_of_conduct_en.pdf --> <shortcode country="ch" pattern="[2-9]\\d{2,4}" premium="543|83111|30118" free="98765|30075|30047" /> @@ -123,8 +123,8 @@ http://www.tja.ee/public/documents/Elektrooniline_side/Oigusaktid/ENG/Estonian_Numbering_Plan_annex_06_09_2010.mht --> <shortcode country="ee" pattern="1\\d{2,4}" premium="90\\d{5}|15330|1701[0-3]" free="116\\d{3}|95034" /> - <!-- Egypt: 4 digits, known codes listed --> - <shortcode country="eg" pattern="\\d{4}" free="1499" /> + <!-- Egypt: 4-5 digits, known codes listed --> + <shortcode country="eg" pattern="\\d{4,5}" free="1499|10020" /> <!-- Spain: 5-6 digits: 25xxx, 27xxx, 280xx, 35xxx, 37xxx, 795xxx, 797xxx, 995xxx, 997xxx, plus EU. http://www.legallink.es/?q=en/content/which-current-regulatory-status-premium-rate-services-spain --> @@ -147,7 +147,7 @@ <shortcode country="ge" pattern="\\d{1,5}" premium="801[234]|888[239]" free="95201|95202|95203" /> <!-- Ghana: 4 digits, known premium codes listed --> - <shortcode country="gh" pattern="\\d{4}" free="5041|3777|2333" /> + <shortcode country="gh" pattern="\\d{4}" free="5041|3777|2333|6061" /> <!-- Greece: 5 digits (54xxx, 19yxx, x=0-9, y=0-5): http://www.cmtelecom.com/premium-sms/greece --> <shortcode country="gr" pattern="\\d{5}" premium="54\\d{3}|19[0-5]\\d{2}" free="116\\d{3}|12115" /> @@ -169,7 +169,7 @@ <shortcode country="in" pattern="\\d{1,5}" free="59336|53969" /> <!-- Indonesia: 1-5 digits (standard system default, not country specific) --> - <shortcode country="id" pattern="\\d{1,5}" free="99477|6006|46645|363|93457|99265" /> + <shortcode country="id" pattern="\\d{1,5}" free="99477|6006|46645|363|93457|99265|77413" /> <!-- Ireland: 5 digits, 5xxxx (50xxx=free, 5[12]xxx=standard), plus EU: http://www.comreg.ie/_fileupload/publications/ComReg1117.pdf --> @@ -226,13 +226,13 @@ <shortcode country="mn" pattern="\\d{1,6}" free="44444|45678|445566" /> <!-- Malawi: 1-5 digits (standard system default, not country specific) --> - <shortcode country="mw" pattern="\\d{1,5}" free="4276" /> + <shortcode country="mw" pattern="\\d{1,5}" free="4276|4305" /> <!-- Mozambique: 1-5 digits (standard system default, not country specific) --> <shortcode country="mz" pattern="\\d{1,5}" free="1714" /> <!-- Mexico: 4-7 digits (not confirmed), known premium codes listed --> - <shortcode country="mx" pattern="\\d{4,7}" premium="53035|7766" free="26259|46645|50025|50052|5050|76551|88778|9963|91101|45453|550346|3030303|81811" /> + <shortcode country="mx" pattern="\\d{4,7}" premium="53035|7766" free="26259|46645|50025|50052|5050|76551|88778|9963|91101|45453|550346|3030303|81811|81818" /> <!-- Malaysia: 5 digits: http://www.skmm.gov.my/attachment/Consumer_Regulation/Mobile_Content_Services_FAQs.pdf --> <shortcode country="my" pattern="\\d{5}" premium="32298|33776" free="22099|28288|66668|66966" /> @@ -324,7 +324,7 @@ <shortcode country="tj" pattern="\\d{4}" premium="11[3-7]1|4161|4333|444[689]" /> <!-- Tanzania: 1-5 digits (standard system default, not country specific) --> - <shortcode country="tz" pattern="\\d{1,5}" free="15046|15234|15324" /> + <shortcode country="tz" pattern="\\d{1,5}" free="15046|15234|15324|15610" /> <!-- Tunisia: 5 digits, known premium codes listed --> <shortcode country="tn" pattern="\\d{5}" free="85799" /> @@ -336,11 +336,11 @@ <shortcode country="ua" pattern="\\d{4}" premium="444[3-9]|70[579]4|7540" /> <!-- Uganda(UG): 4 digits (standard system default, not country specific) --> - <shortcode country="ug" pattern="\\d{4}" free="8000" /> + <shortcode country="ug" pattern="\\d{4}" free="8000|8009" /> <!-- USA: 5-6 digits (premium codes from https://www.premiumsmsrefunds.com/ShortCodes.htm), visual voicemail code for T-Mobile: 122 --> - <shortcode country="us" pattern="\\d{5,6}" premium="20433|21(?:344|472)|22715|23(?:333|847)|24(?:15|28)0|25209|27(?:449|606|663)|28498|305(?:00|83)|32(?:340|941)|33(?:166|786|849)|34746|35(?:182|564)|37975|38(?:135|146|254)|41(?:366|463)|42335|43(?:355|500)|44(?:578|711|811)|45814|46(?:157|173|327)|46666|47553|48(?:221|277|669)|50(?:844|920)|51(?:062|368)|52944|54(?:723|892)|55928|56483|57370|59(?:182|187|252|342)|60339|61(?:266|982)|62478|64(?:219|898)|65(?:108|500)|69(?:208|388)|70877|71851|72(?:078|087|465)|73(?:288|588|882|909|997)|74(?:034|332|815)|76426|79213|81946|83177|84(?:103|685)|85797|86(?:234|236|666)|89616|90(?:715|842|938)|91(?:362|958)|94719|95297|96(?:040|666|835|969)|97(?:142|294|688)|99(?:689|796|807)" standard="44567|244444" free="122|87902|21696|24614|28003|30356|33669|40196|41064|41270|43753|44034|46645|52413|56139|57969|61785|66975|75136|76227|81398|83952|85140|86566|86799|95737|96684|99245|611611|96831" /> + <shortcode country="us" pattern="\\d{5,6}" premium="20433|21(?:344|472)|22715|23(?:333|847)|24(?:15|28)0|25209|27(?:449|606|663)|28498|305(?:00|83)|32(?:340|941)|33(?:166|786|849)|34746|35(?:182|564)|37975|38(?:135|146|254)|41(?:366|463)|42335|43(?:355|500)|44(?:578|711|811)|45814|46(?:157|173|327)|46666|47553|48(?:221|277|669)|50(?:844|920)|51(?:062|368)|52944|54(?:723|892)|55928|56483|57370|59(?:182|187|252|342)|60339|61(?:266|982)|62478|64(?:219|898)|65(?:108|500)|69(?:208|388)|70877|71851|72(?:078|087|465)|73(?:288|588|882|909|997)|74(?:034|332|815)|76426|79213|81946|83177|84(?:103|685)|85797|86(?:234|236|666)|89616|90(?:715|842|938)|91(?:362|958)|94719|95297|96(?:040|666|835|969)|97(?:142|294|688)|99(?:689|796|807)" standard="44567|244444" free="122|87902|21696|24614|28003|30356|33669|40196|41064|41270|43753|44034|46645|52413|56139|57969|61785|66975|75136|76227|81398|83952|85140|86566|86799|95737|96684|99245|611611|96831|10907" /> <!--Uruguay : 1-6 digits (standard system default, not country specific) --> <shortcode country="uy" pattern="\\d{1,6}" free="55002|191289" /> diff --git a/core/tests/BroadcastRadioTests/Android.bp b/core/tests/BroadcastRadioTests/Android.bp index beffb9aac12b..7d4ae00c405a 100644 --- a/core/tests/BroadcastRadioTests/Android.bp +++ b/core/tests/BroadcastRadioTests/Android.bp @@ -45,7 +45,7 @@ android_test { "flag-junit", "mockito-target-extended", ], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], test_suites: [ "general-tests", "automotive-general-tests", diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/RadioServiceUserControllerTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/RadioServiceUserControllerTest.java index 516253b0ebff..44beb55b77db 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/RadioServiceUserControllerTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/RadioServiceUserControllerTest.java @@ -19,18 +19,18 @@ package com.android.server.broadcastradio; import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.doThrow; -import static com.google.common.truth.Truth.assertWithMessage; - import static org.mockito.Mockito.when; import android.app.ActivityManager; -import android.app.compat.CompatChanges; import android.os.Binder; import android.os.UserHandle; import com.android.dx.mockito.inline.extended.StaticMockitoSessionBuilder; +import com.google.common.truth.Expect; + import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.mockito.Mock; @@ -41,36 +41,40 @@ public final class RadioServiceUserControllerTest extends ExtendedRadioMockitoTe private static final int USER_ID_1 = 11; private static final int USER_ID_2 = 12; + private RadioServiceUserController mUserController; @Mock private UserHandle mUserHandleMock; + @Rule + public final Expect expect = Expect.create(); + @Override protected void initializeSession(StaticMockitoSessionBuilder builder) { - builder.spyStatic(ActivityManager.class).spyStatic(Binder.class) - .spyStatic(CompatChanges.class); + builder.spyStatic(ActivityManager.class).spyStatic(Binder.class); } @Before public void setUp() { doReturn(mUserHandleMock).when(() -> Binder.getCallingUserHandle()); doReturn(USER_ID_1).when(() -> ActivityManager.getCurrentUser()); + mUserController = new RadioServiceUserControllerImpl(); } @Test public void isCurrentOrSystemUser_forCurrentUser_returnsFalse() { when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_1); - assertWithMessage("Current user") - .that(RadioServiceUserController.isCurrentOrSystemUser()).isTrue(); + expect.withMessage("Current user") + .that(mUserController.isCurrentOrSystemUser()).isTrue(); } @Test public void isCurrentOrSystemUser_forNonCurrentUser_returnsFalse() { when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_2); - assertWithMessage("Non-current user") - .that(RadioServiceUserController.isCurrentOrSystemUser()).isFalse(); + expect.withMessage("Non-current user") + .that(mUserController.isCurrentOrSystemUser()).isFalse(); } @Test @@ -78,8 +82,8 @@ public final class RadioServiceUserControllerTest extends ExtendedRadioMockitoTe when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_1); when(mUserHandleMock.getIdentifier()).thenReturn(UserHandle.USER_SYSTEM); - assertWithMessage("System user") - .that(RadioServiceUserController.isCurrentOrSystemUser()).isTrue(); + expect.withMessage("System user") + .that(mUserController.isCurrentOrSystemUser()).isTrue(); } @Test @@ -87,14 +91,14 @@ public final class RadioServiceUserControllerTest extends ExtendedRadioMockitoTe when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_1); doThrow(new RuntimeException()).when(ActivityManager::getCurrentUser); - assertWithMessage("User when activity manager fails") - .that(RadioServiceUserController.isCurrentOrSystemUser()).isFalse(); + expect.withMessage("User when activity manager fails") + .that(mUserController.isCurrentOrSystemUser()).isFalse(); } @Test public void getCurrentUser() { - assertWithMessage("Current user") - .that(RadioServiceUserController.getCurrentUser()).isEqualTo(USER_ID_1); + expect.withMessage("Current user") + .that(mUserController.getCurrentUser()).isEqualTo(USER_ID_1); } @Test @@ -102,7 +106,15 @@ public final class RadioServiceUserControllerTest extends ExtendedRadioMockitoTe when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_1); doThrow(new RuntimeException()).when(ActivityManager::getCurrentUser); - assertWithMessage("Current user when activity manager fails") - .that(RadioServiceUserController.getCurrentUser()).isEqualTo(UserHandle.USER_NULL); + expect.withMessage("Current user when activity manager fails") + .that(mUserController.getCurrentUser()).isEqualTo(UserHandle.USER_NULL); + } + + @Test + public void getCallingUserId() { + when(mUserHandleMock.getIdentifier()).thenReturn(USER_ID_1); + + expect.withMessage("Calling user id") + .that(mUserController.getCallingUserId()).isEqualTo(USER_ID_1); } } diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImplTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImplTest.java index 22f3bd4abe11..63f12d82b48a 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImplTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImplTest.java @@ -91,12 +91,13 @@ public final class BroadcastRadioServiceImplTest extends ExtendedRadioMockitoTes private IAnnouncementListener mAnnouncementListenerMock; @Mock private IBinder mListenerBinderMock; + @Mock + private RadioServiceUserController mUserControllerMock; @Override protected void initializeSession(StaticMockitoSessionBuilder builder) { builder.spyStatic(ServiceManager.class) - .spyStatic(RadioModule.class) - .spyStatic(RadioServiceUserController.class); + .spyStatic(RadioModule.class); } @Test @@ -156,7 +157,7 @@ public final class BroadcastRadioServiceImplTest extends ExtendedRadioMockitoTes @Test public void openSession_forNonCurrentUser_throwsException() throws Exception { createBroadcastRadioService(); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); IllegalStateException thrown = assertThrows(IllegalStateException.class, () -> mBroadcastRadioService.openSession(FM_RADIO_MODULE_ID, @@ -206,9 +207,9 @@ public final class BroadcastRadioServiceImplTest extends ExtendedRadioMockitoTes } private void createBroadcastRadioService() throws RemoteException { - doReturn(true).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(true).when(mUserControllerMock).isCurrentOrSystemUser(); mockServiceManager(); - mBroadcastRadioService = new BroadcastRadioServiceImpl(SERVICE_LIST); + mBroadcastRadioService = new BroadcastRadioServiceImpl(SERVICE_LIST, mUserControllerMock); } private void mockServiceManager() throws RemoteException { @@ -222,9 +223,9 @@ public final class BroadcastRadioServiceImplTest extends ExtendedRadioMockitoTes any(IServiceCallback.class))); doReturn(mFmRadioModuleMock).when(() -> RadioModule.tryLoadingModule( - eq(FM_RADIO_MODULE_ID), anyString(), any(IBinder.class))); + eq(FM_RADIO_MODULE_ID), anyString(), any(IBinder.class), any())); doReturn(mDabRadioModuleMock).when(() -> RadioModule.tryLoadingModule( - eq(DAB_RADIO_MODULE_ID), anyString(), any(IBinder.class))); + eq(DAB_RADIO_MODULE_ID), anyString(), any(IBinder.class), any())); when(mFmRadioModuleMock.getProperties()).thenReturn(mFmModuleMock); when(mDabRadioModuleMock.getProperties()).thenReturn(mDabModuleMock); diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/RadioModuleTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/RadioModuleTest.java index a952bde956d8..368df090070b 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/RadioModuleTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/RadioModuleTest.java @@ -34,6 +34,8 @@ import android.hardware.radio.RadioManager; import android.os.ParcelableException; import android.os.RemoteException; +import com.android.server.broadcastradio.RadioServiceUserController; + import com.google.common.truth.Expect; import org.junit.Before; @@ -63,6 +65,8 @@ public final class RadioModuleTest { private IAnnouncementListener mListenerMock; @Mock private android.hardware.broadcastradio.ICloseHandle mHalCloseHandleMock; + @Mock + private RadioServiceUserController mUserControllerMock; // RadioModule under test private RadioModule mRadioModule; @@ -70,7 +74,8 @@ public final class RadioModuleTest { @Before public void setup() throws RemoteException { - mRadioModule = new RadioModule(mBroadcastRadioMock, TEST_MODULE_PROPERTIES); + mRadioModule = new RadioModule(mBroadcastRadioMock, TEST_MODULE_PROPERTIES, + mUserControllerMock); // TODO(b/241118988): test non-null image for getImage method when(mBroadcastRadioMock.getImage(anyInt())).thenReturn(null); diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/TunerSessionTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/TunerSessionTest.java index e963caffb175..016a9006a4ae 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/TunerSessionTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/aidl/TunerSessionTest.java @@ -49,12 +49,10 @@ import android.hardware.radio.ProgramSelector; import android.hardware.radio.RadioManager; import android.hardware.radio.RadioTuner; import android.hardware.radio.UniqueProgramIdentifier; -import android.os.Binder; import android.os.DeadObjectException; import android.os.ParcelableException; import android.os.RemoteException; import android.os.ServiceSpecificException; -import android.os.UserHandle; import android.platform.test.flag.junit.SetFlagsRule; import android.util.ArrayMap; import android.util.ArraySet; @@ -147,10 +145,10 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { // Mocks @Mock - private UserHandle mUserHandleMock; - @Mock private IBroadcastRadio mBroadcastRadioMock; private android.hardware.radio.ITunerCallback[] mAidlTunerCallbackMocks; + @Mock + private RadioServiceUserController mUserControllerMock; // RadioModule under test private RadioModule mRadioModule; @@ -169,8 +167,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { @Override protected void initializeSession(StaticMockitoSessionBuilder builder) { - builder.spyStatic(RadioServiceUserController.class).spyStatic(CompatChanges.class) - .spyStatic(Binder.class); + builder.spyStatic(CompatChanges.class); } @Before @@ -181,13 +178,12 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { doReturn(true).when(() -> CompatChanges.isChangeEnabled( eq(ConversionUtils.RADIO_U_VERSION_REQUIRED), anyInt())); - doReturn(USER_ID_1).when(mUserHandleMock).getIdentifier(); - doReturn(mUserHandleMock).when(() -> Binder.getCallingUserHandle()); - doReturn(true).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); - doReturn(USER_ID_1).when(() -> RadioServiceUserController.getCurrentUser()); + doReturn(USER_ID_1).when(mUserControllerMock).getCallingUserId(); + doReturn(true).when(mUserControllerMock).isCurrentOrSystemUser(); + doReturn(USER_ID_1).when(mUserControllerMock).getCurrentUser(); mRadioModule = new RadioModule(mBroadcastRadioMock, - AidlTestUtils.makeDefaultModuleProperties()); + AidlTestUtils.makeDefaultModuleProperties(), mUserControllerMock); doAnswer(invocation -> { mHalTunerCallback = (ITunerCallback) invocation.getArguments()[0]; @@ -224,7 +220,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { @Test public void setConfiguration_forNonCurrentUser_doesNotInvokesCallback() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setConfiguration(FM_BAND_CONFIG); @@ -421,7 +417,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { @Test public void tune_forNonCurrentUser_doesNotTune() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); ProgramSelector initialSel = AidlTestUtils.makeFmSelector(AM_FM_FREQUENCY_LIST[1]); RadioManager.ProgramInfo tuneInfo = AidlTestUtils.makeProgramInfo(initialSel, SIGNAL_QUALITY); @@ -501,7 +497,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); mHalCurrentInfo = AidlTestUtils.makeHalProgramInfo( ConversionUtils.programSelectorToHalProgramSelector(initialSel), SIGNAL_QUALITY); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].step(/* directionDown= */ true, /* skipSubChannel= */ false); @@ -580,7 +576,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); mHalCurrentInfo = AidlTestUtils.makeHalProgramInfo( ConversionUtils.programSelectorToHalProgramSelector(initialSel), SIGNAL_QUALITY); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].seek(/* directionDown= */ true, /* skipSubChannel= */ false); @@ -614,7 +610,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { @Test public void cancel_forNonCurrentUser_doesNotCancel() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].cancel(); @@ -685,7 +681,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { @Test public void startBackgroundScan_forNonCurrentUser_doesNotInvokesCallback() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].startBackgroundScan(); @@ -955,7 +951,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); ProgramList.Filter filter = new ProgramList.Filter(new ArraySet<>(), new ArraySet<>(), /* includeCategories= */ true, /* excludeModifications= */ false); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].startProgramListUpdates(filter); @@ -994,7 +990,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { ProgramList.Filter filter = new ProgramList.Filter(new ArraySet<>(), new ArraySet<>(), /* includeCategories= */ true, /* excludeModifications= */ false); mTunerSessions[0].startProgramListUpdates(filter); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].stopProgramListUpdates(); @@ -1060,7 +1056,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { public void setConfigFlag_forNonCurrentUser_doesNotSetConfigFlag() throws Exception { openAidlClients(/* numClients= */ 1); int flag = UNSUPPORTED_CONFIG_FLAG + 1; - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setConfigFlag(flag, /* value= */ true); @@ -1125,7 +1121,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); Map<String, String> parametersSet = Map.of("mockParam1", "mockValue1", "mockParam2", "mockValue2"); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setParameters(parametersSet); @@ -1179,7 +1175,7 @@ public final class TunerSessionTest extends ExtendedRadioMockitoTestCase { public void onCurrentProgramInfoChanged_withNonCurrentUser_doesNotInvokeCallback() throws Exception { openAidlClients(1); - doReturn(USER_ID_2).when(() -> RadioServiceUserController.getCurrentUser()); + doReturn(USER_ID_2).when(mUserControllerMock).getCurrentUser(); mHalTunerCallback.onCurrentProgramInfoChanged(AidlTestUtils.makeHalProgramInfo( AidlTestUtils.makeHalFmSelector(AM_FM_FREQUENCY_LIST[1]), SIGNAL_QUALITY)); diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/BroadcastRadioServiceHidlTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/BroadcastRadioServiceHidlTest.java index acf698bce33d..7c3f221f9bf5 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/BroadcastRadioServiceHidlTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/BroadcastRadioServiceHidlTest.java @@ -88,11 +88,12 @@ public final class BroadcastRadioServiceHidlTest extends ExtendedRadioMockitoTes private IAnnouncementListener mAnnouncementListenerMock; @Mock private IBinder mBinderMock; + @Mock + private RadioServiceUserController mUserControllerMock; @Override protected void initializeSession(StaticMockitoSessionBuilder builder) { - builder.spyStatic(RadioModule.class) - .spyStatic(RadioServiceUserController.class); + builder.spyStatic(RadioModule.class); } @Test @@ -156,7 +157,7 @@ public final class BroadcastRadioServiceHidlTest extends ExtendedRadioMockitoTes @Test public void openSession_forNonCurrentUser_throwsException() throws Exception { createBroadcastRadioService(); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + when(mUserControllerMock.isCurrentOrSystemUser()).thenReturn(false); IllegalStateException thrown = assertThrows(IllegalStateException.class, () -> mBroadcastRadioService.openSession(FM_RADIO_MODULE_ID, @@ -206,11 +207,11 @@ public final class BroadcastRadioServiceHidlTest extends ExtendedRadioMockitoTes } private void createBroadcastRadioService() throws RemoteException { - doReturn(true).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + when(mUserControllerMock.isCurrentOrSystemUser()).thenReturn(true); mockServiceManager(); mBroadcastRadioService = new BroadcastRadioService(/* nextModuleId= */ FM_RADIO_MODULE_ID, - mServiceManagerMock); + mServiceManagerMock, mUserControllerMock); } private void mockServiceManager() throws RemoteException { @@ -231,9 +232,9 @@ public final class BroadcastRadioServiceHidlTest extends ExtendedRadioMockitoTes }).thenReturn(true); doReturn(mFmRadioModuleMock).when(() -> RadioModule.tryLoadingModule( - eq(FM_RADIO_MODULE_ID), anyString())); + eq(FM_RADIO_MODULE_ID), anyString(), any())); doReturn(mDabRadioModuleMock).when(() -> RadioModule.tryLoadingModule( - eq(DAB_RADIO_MODULE_ID), anyString())); + eq(DAB_RADIO_MODULE_ID), anyString(), any())); when(mFmRadioModuleMock.getProperties()).thenReturn(mFmModuleMock); when(mDabRadioModuleMock.getProperties()).thenReturn(mDabModuleMock); diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/RadioModuleHidlTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/RadioModuleHidlTest.java index 1f5e77038728..b53f7ca879aa 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/RadioModuleHidlTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/RadioModuleHidlTest.java @@ -36,6 +36,8 @@ import android.hardware.radio.ICloseHandle; import android.hardware.radio.RadioManager; import android.os.RemoteException; +import com.android.server.broadcastradio.RadioServiceUserController; + import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -61,13 +63,16 @@ public final class RadioModuleHidlTest { private IAnnouncementListener mListenerMock; @Mock private android.hardware.broadcastradio.V2_0.ICloseHandle mHalCloseHandleMock; + @Mock + private RadioServiceUserController mUserControllerMock; private RadioModule mRadioModule; private android.hardware.broadcastradio.V2_0.IAnnouncementListener mHalListener; @Before public void setup() throws RemoteException { - mRadioModule = new RadioModule(mBroadcastRadioMock, TEST_MODULE_PROPERTIES); + mRadioModule = new RadioModule(mBroadcastRadioMock, TEST_MODULE_PROPERTIES, + mUserControllerMock); when(mBroadcastRadioMock.getImage(anyInt())).thenReturn(new ArrayList<Byte>(0)); diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/StartProgramListUpdatesFanoutTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/StartProgramListUpdatesFanoutTest.java index 8c16d79133ce..fa0744775f6d 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/StartProgramListUpdatesFanoutTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/StartProgramListUpdatesFanoutTest.java @@ -38,13 +38,13 @@ import android.hardware.radio.RadioManager; import android.hardware.radio.UniqueProgramIdentifier; import android.os.RemoteException; -import com.android.dx.mockito.inline.extended.StaticMockitoSessionBuilder; -import com.android.server.broadcastradio.ExtendedRadioMockitoTestCase; import com.android.server.broadcastradio.RadioServiceUserController; import org.junit.Before; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.mockito.stubbing.Answer; import org.mockito.verification.VerificationWithTimeout; @@ -55,7 +55,8 @@ import java.util.List; /** * Tests for v2 HAL RadioModule. */ -public class StartProgramListUpdatesFanoutTest extends ExtendedRadioMockitoTestCase { +@RunWith(MockitoJUnitRunner.class) +public class StartProgramListUpdatesFanoutTest { private static final String TAG = "BroadcastRadioTests.hal2.StartProgramListUpdatesFanout"; private static final VerificationWithTimeout CB_TIMEOUT = timeout(500); @@ -64,6 +65,8 @@ public class StartProgramListUpdatesFanoutTest extends ExtendedRadioMockitoTestC @Mock IBroadcastRadio mBroadcastRadioMock; @Mock ITunerSession mHalTunerSessionMock; private android.hardware.radio.ITunerCallback[] mAidlTunerCallbackMocks; + @Mock + private RadioServiceUserController mUserControllerMock; // RadioModule under test private RadioModule mRadioModule; @@ -110,17 +113,12 @@ public class StartProgramListUpdatesFanoutTest extends ExtendedRadioMockitoTestC private static final RadioManager.ProgramInfo TEST_DAB_INFO = TestUtils.makeProgramInfo( TEST_DAB_SELECTOR, TEST_QUALITY); - @Override - protected void initializeSession(StaticMockitoSessionBuilder builder) { - builder.spyStatic(RadioServiceUserController.class); - } - @Before public void setup() throws RemoteException { - doReturn(true).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(true).when(mUserControllerMock).isCurrentOrSystemUser(); - mRadioModule = new RadioModule(mBroadcastRadioMock, - TestUtils.makeDefaultModuleProperties()); + mRadioModule = new RadioModule(mBroadcastRadioMock, TestUtils.makeDefaultModuleProperties(), + mUserControllerMock); doAnswer((Answer) invocation -> { mHalTunerCallback = (ITunerCallback) invocation.getArguments()[0]; diff --git a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/TunerSessionHidlTest.java b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/TunerSessionHidlTest.java index 55aae9d3396a..62445cf90028 100644 --- a/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/TunerSessionHidlTest.java +++ b/core/tests/BroadcastRadioTests/src/com/android/server/broadcastradio/hal2/TunerSessionHidlTest.java @@ -44,16 +44,12 @@ import android.hardware.radio.ProgramList; import android.hardware.radio.ProgramSelector; import android.hardware.radio.RadioManager; import android.hardware.radio.RadioTuner; -import android.os.Binder; import android.os.DeadObjectException; import android.os.ParcelableException; import android.os.RemoteException; -import android.os.UserHandle; import android.util.ArrayMap; import android.util.ArraySet; -import com.android.dx.mockito.inline.extended.StaticMockitoSessionBuilder; -import com.android.server.broadcastradio.ExtendedRadioMockitoTestCase; import com.android.server.broadcastradio.RadioServiceUserController; import com.google.common.truth.Expect; @@ -76,7 +72,7 @@ import java.util.Map; * Tests for HIDL HAL TunerSession. */ @RunWith(MockitoJUnitRunner.class) -public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { +public final class TunerSessionHidlTest { private static final int USER_ID_1 = 11; private static final int USER_ID_2 = 12; @@ -104,27 +100,21 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { public final Expect mExpect = Expect.create(); @Mock - private UserHandle mUserHandleMock; - @Mock private IBroadcastRadio mBroadcastRadioMock; @Mock ITunerSession mHalTunerSessionMock; private android.hardware.radio.ITunerCallback[] mAidlTunerCallbackMocks; - - @Override - protected void initializeSession(StaticMockitoSessionBuilder builder) { - builder.spyStatic(RadioServiceUserController.class).spyStatic(Binder.class); - } + @Mock + private RadioServiceUserController mUserControllerMock; @Before public void setup() throws Exception { - doReturn(USER_ID_1).when(mUserHandleMock).getIdentifier(); - doReturn(mUserHandleMock).when(() -> Binder.getCallingUserHandle()); - doReturn(true).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); - doReturn(USER_ID_1).when(() -> RadioServiceUserController.getCurrentUser()); + doReturn(USER_ID_1).when(mUserControllerMock).getCallingUserId(); + doReturn(true).when(mUserControllerMock).isCurrentOrSystemUser(); + doReturn(USER_ID_1).when(mUserControllerMock).getCurrentUser(); mRadioModule = new RadioModule(mBroadcastRadioMock, - TestUtils.makeDefaultModuleProperties()); + TestUtils.makeDefaultModuleProperties(), mUserControllerMock); doAnswer(invocation -> { mHalTunerCallback = (ITunerCallback) invocation.getArguments()[0]; @@ -228,7 +218,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { @Test public void setConfiguration_forNonCurrentUser_doesNotInvokesCallback() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setConfiguration(FM_BAND_CONFIG); @@ -403,7 +393,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { @Test public void tune_forNonCurrentUser_doesNotTune() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); ProgramSelector initialSel = TestUtils.makeFmSelector(AM_FM_FREQUENCY_LIST[1]); RadioManager.ProgramInfo tuneInfo = TestUtils.makeProgramInfo(initialSel, SIGNAL_QUALITY); @@ -481,7 +471,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); mHalCurrentInfo = TestUtils.makeHalProgramInfo( Convert.programSelectorToHal(initialSel), SIGNAL_QUALITY); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].step(/* directionDown= */ true, /* skipSubChannel= */ false); @@ -559,7 +549,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); mHalCurrentInfo = TestUtils.makeHalProgramInfo( Convert.programSelectorToHal(initialSel), SIGNAL_QUALITY); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].seek(/* directionDown= */ true, /* skipSubChannel= */ false); @@ -593,7 +583,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { @Test public void cancel_forNonCurrentUser_doesNotCancel() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].cancel(); @@ -663,7 +653,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { @Test public void startBackgroundScan_forNonCurrentUser_doesNotInvokesCallback() throws Exception { openAidlClients(/* numClients= */ 1); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].startBackgroundScan(); @@ -676,7 +666,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); ProgramList.Filter filter = new ProgramList.Filter(new ArraySet<>(), new ArraySet<>(), /* includeCategories= */ true, /* excludeModifications= */ false); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].startProgramListUpdates(filter); @@ -715,7 +705,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { ProgramList.Filter aidlFilter = new ProgramList.Filter(new ArraySet<>(), new ArraySet<>(), /* includeCategories= */ true, /* excludeModifications= */ false); mTunerSessions[0].startProgramListUpdates(aidlFilter); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].stopProgramListUpdates(); @@ -781,7 +771,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { public void setConfigFlag_forNonCurrentUser_doesNotSetConfigFlag() throws Exception { openAidlClients(/* numClients= */ 1); int flag = UNSUPPORTED_CONFIG_FLAG + 1; - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setConfigFlag(flag, /* value= */ true); @@ -846,7 +836,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { openAidlClients(/* numClients= */ 1); Map<String, String> parametersSet = Map.of("mockParam1", "mockValue1", "mockParam2", "mockValue2"); - doReturn(false).when(() -> RadioServiceUserController.isCurrentOrSystemUser()); + doReturn(false).when(mUserControllerMock).isCurrentOrSystemUser(); mTunerSessions[0].setParameters(parametersSet); @@ -900,7 +890,7 @@ public final class TunerSessionHidlTest extends ExtendedRadioMockitoTestCase { public void onCurrentProgramInfoChanged_withNonCurrentUser_doesNotInvokeCallback() throws Exception { openAidlClients(1); - doReturn(USER_ID_2).when(() -> RadioServiceUserController.getCurrentUser()); + doReturn(USER_ID_2).when(mUserControllerMock).getCurrentUser(); mHalTunerCallback.onCurrentProgramInfoChanged(TestUtils.makeHalProgramInfo( TestUtils.makeHalFmSelector(/* freq= */ 97300), SIGNAL_QUALITY)); diff --git a/core/tests/ConnectivityManagerTest/Android.bp b/core/tests/ConnectivityManagerTest/Android.bp index f17a28d22c17..6421899631ff 100644 --- a/core/tests/ConnectivityManagerTest/Android.bp +++ b/core/tests/ConnectivityManagerTest/Android.bp @@ -24,8 +24,8 @@ package { android_test { name: "ConnectivityManagerTest", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "junit", diff --git a/core/tests/FileSystemUtilsTest/Android.bp b/core/tests/FileSystemUtilsTest/Android.bp index 53c22df67b85..ae04aa4b5576 100644 --- a/core/tests/FileSystemUtilsTest/Android.bp +++ b/core/tests/FileSystemUtilsTest/Android.bp @@ -69,7 +69,7 @@ java_test_host { "compatibility-host-util", "compatibility-tradefed", ], - data: [ + device_common_data: [ ":embedded_native_libs_test_app", ":extract_native_libs_test_app", ], diff --git a/core/tests/GameManagerTests/Android.bp b/core/tests/GameManagerTests/Android.bp index 0e3bc6562edb..1abceb820fc1 100644 --- a/core/tests/GameManagerTests/Android.bp +++ b/core/tests/GameManagerTests/Android.bp @@ -32,8 +32,15 @@ android_test { "platform-test-annotations", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], } + +test_module_config { + name: "FrameworksCoreGameManagerTests_android_app", + base: "FrameworksCoreGameManagerTests", + test_suites: ["device-tests"], + include_filters: ["android.app"], +} diff --git a/core/tests/InputMethodCoreTests/Android.bp b/core/tests/InputMethodCoreTests/Android.bp index ac6462589e16..2b524d58ced7 100644 --- a/core/tests/InputMethodCoreTests/Android.bp +++ b/core/tests/InputMethodCoreTests/Android.bp @@ -42,9 +42,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs", + "android.test.base.stubs", + "android.test.mock.stubs", "framework", "ext", "framework-res", diff --git a/core/tests/PackageInstallerSessions/Android.bp b/core/tests/PackageInstallerSessions/Android.bp index b631df1fcf57..d10ecd07a44c 100644 --- a/core/tests/PackageInstallerSessions/Android.bp +++ b/core/tests/PackageInstallerSessions/Android.bp @@ -39,8 +39,8 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs", + "android.test.base.stubs", "framework", "framework-res", ], diff --git a/core/tests/PlatformCompatFramework/Android.bp b/core/tests/PlatformCompatFramework/Android.bp index 2621d280bd9d..a3fdf7b43bee 100644 --- a/core/tests/PlatformCompatFramework/Android.bp +++ b/core/tests/PlatformCompatFramework/Android.bp @@ -12,8 +12,8 @@ android_test { // Include all test java files. srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "junit", diff --git a/core/tests/bandwidthtests/Android.bp b/core/tests/bandwidthtests/Android.bp index 8645b39da5a8..b7357122dff8 100644 --- a/core/tests/bandwidthtests/Android.bp +++ b/core/tests/bandwidthtests/Android.bp @@ -27,9 +27,9 @@ android_test { // Include all test java files. srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "org.apache.http.legacy", - "android.test.base", + "android.test.runner.stubs", + "org.apache.http.legacy.stubs", + "android.test.base.stubs", ], static_libs: [ "junit", diff --git a/core/tests/batterystatstests/BatteryStatsLoadTests/Android.bp b/core/tests/batterystatstests/BatteryStatsLoadTests/Android.bp index 1c0ea839ec02..926edfed16ef 100644 --- a/core/tests/batterystatstests/BatteryStatsLoadTests/Android.bp +++ b/core/tests/batterystatstests/BatteryStatsLoadTests/Android.bp @@ -16,7 +16,7 @@ android_test { "compatibility-device-util-axt", "junit", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", } diff --git a/core/tests/batterystatstests/BatteryUsageStatsProtoTests/Android.bp b/core/tests/batterystatstests/BatteryUsageStatsProtoTests/Android.bp index 1fb5f2c0789b..6a554f747182 100644 --- a/core/tests/batterystatstests/BatteryUsageStatsProtoTests/Android.bp +++ b/core/tests/batterystatstests/BatteryUsageStatsProtoTests/Android.bp @@ -21,7 +21,7 @@ android_test { "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", diff --git a/core/tests/bugreports/Android.bp b/core/tests/bugreports/Android.bp index 7c1ac487bfdb..862bb514a27e 100644 --- a/core/tests/bugreports/Android.bp +++ b/core/tests/bugreports/Android.bp @@ -26,8 +26,8 @@ android_test { srcs: ["src/**/*.java"], data: [":bugreport_artifacts"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.test", + "android.test.base.stubs.test", ], static_libs: [ "androidx.test.rules", @@ -42,3 +42,10 @@ filegroup { name: "bugreport_artifacts", srcs: ["config/test-sysconfig.xml"], } + +test_module_config { + name: "BugreportManagerTestCases_android_server_os", + base: "BugreportManagerTestCases", + test_suites: ["general-tests"], + exclude_annotations: ["androidx.test.filters.LargeTest"], +} diff --git a/core/tests/companiontests/Android.bp b/core/tests/companiontests/Android.bp index d31b8f470108..cb0951e59d04 100644 --- a/core/tests/companiontests/Android.bp +++ b/core/tests/companiontests/Android.bp @@ -12,8 +12,8 @@ android_test { // Include all test java files. srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], platform_apis: true, diff --git a/core/tests/coretests/Android.bp b/core/tests/coretests/Android.bp index 41696dfa782e..b1c48ab39396 100644 --- a/core/tests/coretests/Android.bp +++ b/core/tests/coretests/Android.bp @@ -21,9 +21,11 @@ filegroup { srcs: [ "DisabledTestApp/src/**/*.java", "EnabledTestApp/src/**/*.java", + "BinderFrozenStateChangeCallbackTestApp/src/**/*.java", "BinderProxyCountingTestApp/src/**/*.java", "BinderProxyCountingTestService/src/**/*.java", "BinderDeathRecipientHelperApp/src/**/*.java", + "AppThatCallsBinderMethods/src/**/*.kt", ], visibility: ["//visibility:private"], } @@ -106,10 +108,10 @@ android_test { ], libs: [ - "android.test.runner", - "org.apache.http.legacy", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs", + "org.apache.http.legacy.stubs", + "android.test.base.stubs", + "android.test.mock.stubs", "framework", "ext", "framework-res", @@ -137,8 +139,10 @@ android_test { ":BinderDeathRecipientHelperApp1", ":BinderDeathRecipientHelperApp2", ":com.android.cts.helpers.aosp", + ":BinderFrozenStateChangeCallbackTestApp", ":BinderProxyCountingTestApp", ":BinderProxyCountingTestService", + ":AppThatCallsBinderMethods", ], } @@ -154,8 +158,8 @@ android_app { use_resource_processor: false, libs: [ "framework-res", - "android.test.runner", - "org.apache.http.legacy", + "android.test.runner.stubs", + "org.apache.http.legacy.stubs", ], uses_libs: [ "android.test.runner", @@ -220,9 +224,9 @@ android_library { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "framework", "framework-res", ], @@ -231,8 +235,8 @@ android_library { android_ravenwood_test { name: "FrameworksCoreTestsRavenwood", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "core-test-rules", // for libcore.dalvik.system.CloseGuardSupport @@ -241,7 +245,7 @@ android_ravenwood_test { "androidx.test.rules", "androidx.test.ext.junit", "androidx.test.uiautomator_uiautomator", - "compatibility-device-util-axt", + "compatibility-device-util-axt-ravenwood", "flag-junit", "platform-test-annotations", "flag-junit", @@ -252,6 +256,7 @@ android_ravenwood_test { "src/android/content/ContextTest.java", "src/android/content/pm/PackageManagerTest.java", "src/android/content/pm/UserInfoTest.java", + "src/android/app/PropertyInvalidatedCacheTests.java", "src/android/database/CursorWindowTest.java", "src/android/os/**/*.java", "src/android/telephony/PinResultTest.java", @@ -284,3 +289,537 @@ android_ravenwood_test { ], auto_gen_config: true, } + +test_module_config { + name: "FrameworksCoreTests_Presubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_inputmethod", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "com.android.internal.inputmethod", + "android.view.inputmethod", + ], + exclude_annotations: ["androidx.test.filters.FlakyTest"], +} + +test_module_config { + name: "FrameworksCoreTests_context", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.ContextTest"], +} + +test_module_config { + name: "FrameworksCoreTests_keyguard_manager", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.app.KeyguardManagerTest"], +} + +test_module_config { + name: "FrameworksCoreTests_property_invalidated_cache", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.app.PropertyInvalidatedCacheTests"], +} + +test_module_config { + name: "FrameworksCoreTests_android_content", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "android.content.ContextTest", + "android.content.ComponentCallbacksControllerTest", + "android.content.ContextWrapperTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_sqlite", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.database.sqlite.SQLiteRawStatementTest"], +} + +test_module_config { + name: "FrameworksCoreTests_android_net", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.net"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_battery_stats", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.os.BatteryStatsTests"], + exclude_annotations: ["com.android.internal.os.SkipPresubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_environment", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.os.EnvironmentTest"], +} + +test_module_config { + name: "FrameworksCoreTests_util_data_charset", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "com.android.internal.util.FastDataTest", + "android.util.CharsetUtilsTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_xml", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "android.util.XmlTest", + "android.util.BinaryXmlTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_util_apk", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.util.apk.SourceStampVerifierTest"], +} + +test_module_config { + name: "FrameworksCoreTests_textclassifier", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.view.textclassifier"], + exclude_annotations: ["androidx.test.filters.FlakyTest"], +} + +test_module_config { + name: "FrameworksCoreTests_internal_app", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.app."], + exclude_filters: [ + "com.android.internal.app.WindowDecorActionBarTest", + "com.android.internal.app.IntentForwarderActivityTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_internal_content", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.content."], +} + +test_module_config { + name: "FrameworksCoreTests_internal_infra", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.infra."], +} + +test_module_config { + name: "FrameworksCoreTests_internal_jank", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.jank"], +} + +test_module_config { + name: "FrameworksCoreTests_internal_os_binder", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.os.BinderDeathDispatcherTest"], + exclude_annotations: ["com.android.internal.os.SkipPresubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_internal_os_kernel", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "com.android.internal.os.KernelCpuUidClusterTimeReaderTest", + "com.android.internal.os.KernelCpuUidBpfMapReaderTest", + "com.android.internal.os.KernelCpuUidActiveTimeReaderTest", + "com.android.internal.os.KernelCpuUidFreqTimeReaderTest", + "com.android.internal.os.KernelSingleUidTimeReaderTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_server_power", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.server.power.stats.BstatsCpuTimesValidationTest"], +} + +test_module_config { + name: "FrameworksCoreTests_internal_security", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.security."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_internal_util_latency_tracker", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.util.LatencyTrackerTest"], +} + +test_module_config { + name: "FrameworksCoreTests_content_capture_options", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.ContentCaptureOptionsTest"], +} + +test_module_config { + name: "FrameworksCoreTests_android_content_integrity", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.integrity."], +} + +test_module_config { + name: "FrameworksCoreTests_android_content_pm_PreSubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.pm."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_android_content_pm_PostSubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.pm."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_android_content_res", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.res."], + include_annotations: ["android.platform.test.annotations.Presubmit"], + exclude_annotations: [ + "androidx.test.filters.FlakyTest", + "android.platform.test.annotations.Postsubmit", + "org.junit.Ignore", + ], +} + +test_module_config { + name: "FrameworksCoreTests_android_content_res_PostSubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.content.res."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_android_service", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "android.service.euicc", + "android.service.notification", + "android.service.quicksettings", + "android.service.settings.suggestions", + "android.service.controls.templates", + "android.service.controls.actions", + "android.service.controls", + ], + exclude_annotations: ["org.junit.Ignore"], +} + +test_module_config { + name: "FrameworksCoreTests_android_view_contentcapture", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.view.contentcapture"], +} + +test_module_config { + name: "FrameworksCoreTests_android_view_contentprotection", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.view.contentprotection"], +} + +test_module_config { + name: "FrameworksCoreTests_com_android_internal_content_Presubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.content."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_drawable", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.graphics.drawable.IconTest"], +} + +test_module_config { + name: "FrameworksCoreTests_accessibility", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "com.android.internal.accessibility", + "android.accessibilityservice", + "android.view.accessibility", + ], +} + +test_module_config { + name: "FrameworksCoreTests_usage", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.app.usage"], +} + +test_module_config { + name: "FrameworksCoreTests_fastdata", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["com.android.internal.util.FastDataTest"], +} + +test_module_config { + name: "FrameworksCoreTests_hardware_input", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: ["android.hardware.input"], +} + +test_module_config { + name: "FrameworksCoreTests_view_verified", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "android.view.VerifiedMotionEventTest", + "android.view.VerifiedKeyEventTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_android_net_Presubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-platinum-tests", + "device-tests", + ], + include_filters: ["android.net"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_content_pm_Postsubmit", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-platinum-tests", + "device-tests", + ], + include_filters: ["android.content.pm."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "FrameworksCoreTests_jank", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_filters: [ + "com.android.internal.jank.FrameTrackerTest", + "com.android.internal.jank.InteractionJankMonitorTest", + "com.android.internal.util.LatencyTrackerTest", + ], +} + +test_module_config { + name: "FrameworksCoreTests_Platinum", + base: "FrameworksCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + "device-platinum-tests", + ], + include_annotations: ["android.platform.test.annotations.PlatinumTest"], +} diff --git a/core/tests/coretests/AndroidTest.xml b/core/tests/coretests/AndroidTest.xml index bf2a5b875dba..dbe0b49f2c32 100644 --- a/core/tests/coretests/AndroidTest.xml +++ b/core/tests/coretests/AndroidTest.xml @@ -22,8 +22,10 @@ <option name="test-file-name" value="FrameworksCoreTests.apk" /> <option name="test-file-name" value="BinderDeathRecipientHelperApp1.apk" /> <option name="test-file-name" value="BinderDeathRecipientHelperApp2.apk" /> + <option name="test-file-name" value="BinderFrozenStateChangeCallbackTestApp.apk" /> <option name="test-file-name" value="BinderProxyCountingTestApp.apk" /> <option name="test-file-name" value="BinderProxyCountingTestService.apk" /> + <option name="test-file-name" value="AppThatCallsBinderMethods.apk" /> </target_preparer> <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> diff --git a/core/tests/coretests/AppThatCallsBinderMethods/Android.bp b/core/tests/coretests/AppThatCallsBinderMethods/Android.bp new file mode 100644 index 000000000000..dcc0d4f76bf2 --- /dev/null +++ b/core/tests/coretests/AppThatCallsBinderMethods/Android.bp @@ -0,0 +1,20 @@ +// Copyright (C) 2024 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. + +android_test_helper_app { + name: "AppThatCallsBinderMethods", + srcs: ["src/**/*.kt"], + platform_apis: true, + static_libs: ["coretests-aidl"], +} diff --git a/core/tests/coretests/AppThatCallsBinderMethods/AndroidManifest.xml b/core/tests/coretests/AppThatCallsBinderMethods/AndroidManifest.xml new file mode 100644 index 000000000000..b2f6d7897681 --- /dev/null +++ b/core/tests/coretests/AppThatCallsBinderMethods/AndroidManifest.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> + +<!-- + ~ Copyright (C) 2024 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. + --> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.frameworks.coretests.methodcallerhelperapp"> + <application> + <receiver android:name="com.android.frameworks.coretests.methodcallerhelperapp.CallMethodsReceiver" + android:exported="true"/> + </application> + +</manifest> diff --git a/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/CallMethodsReceiver.kt b/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/CallMethodsReceiver.kt new file mode 100644 index 000000000000..638cc3b7692f --- /dev/null +++ b/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/CallMethodsReceiver.kt @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2024 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.frameworks.coretests.methodcallerhelperapp + +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.util.Log + +import com.android.frameworks.coretests.aidl.ITestInterface + +/** + * Receiver used to call methods when a binder is received + * {@link android.os.BinderUncaughtExceptionHandlerTest}. + */ +class CallMethodsReceiver : BroadcastReceiver() { + private val TAG = "CallMethodsReceiver" + + override fun onReceive(context: Context, intent: Intent) { + try { + when (intent.getAction()) { + ACTION_CALL_METHOD -> intent.getExtras()!!.let { + Log.i(TAG, "Received ACTION_CALL_METHOD with extras: $it") + val iface = it.getBinder(EXTRA_BINDER)!!.let(ITestInterface.Stub::asInterface)!! + val name = it.getString(EXTRA_METHOD_NAME)!! + try { + when (name) { + "foo" -> iface.foo(5) + "onewayFoo" -> iface.onewayFoo(5) + "bar" -> iface.bar(5) + else -> Log.e(TAG, "Unknown method name") + } + } catch (e: Exception) { + // Exceptions expected + } + } + else -> Log.e(TAG, "Unknown action " + intent.getAction()) + } + } catch (e: Exception) { + Log.e(TAG, "Exception: ", e) + } + } +} diff --git a/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/Constants.kt b/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/Constants.kt new file mode 100644 index 000000000000..37c6268164a7 --- /dev/null +++ b/core/tests/coretests/AppThatCallsBinderMethods/src/com/android/frameworks/coretests/methodcallerhelperapp/Constants.kt @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2024 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.frameworks.coretests.methodcallerhelperapp + +const val PACKAGE_NAME = "com.android.frameworks.coretests.methodcallerhelperapp" +const val RECEIVER_NAME = "CallMethodsReceiver" +const val ACTION_CALL_METHOD = PACKAGE_NAME + ".ACTION_CALL_METHOD" +const val EXTRA_METHOD_NAME = PACKAGE_NAME + ".EXTRA_METHOD_NAME" +const val EXTRA_BINDER = PACKAGE_NAME + ".EXTRA_BINDER" diff --git a/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/Android.bp b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/Android.bp new file mode 100644 index 000000000000..de97ddae6b18 --- /dev/null +++ b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/Android.bp @@ -0,0 +1,34 @@ +// Copyright (C) 2024 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 { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_test_helper_app { + name: "BinderFrozenStateChangeCallbackTestApp", + + static_libs: ["coretests-aidl"], + srcs: ["**/*.java"], + + platform_apis: true, + certificate: "platform", + + test_suites: ["device-tests"], +} diff --git a/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/AndroidManifest.xml b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/AndroidManifest.xml new file mode 100644 index 000000000000..29c8f5587f3a --- /dev/null +++ b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/AndroidManifest.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.frameworks.coretests.bfscctestapp"> + + <application> + <service android:name=".BfsccTestAppCmdService" + android:exported="true"/> + </application> +</manifest> diff --git a/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/src/com/android/frameworks/coretests/bfscctestapp/BfsccTestAppCmdService.java b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/src/com/android/frameworks/coretests/bfscctestapp/BfsccTestAppCmdService.java new file mode 100644 index 000000000000..fe54aa8d87f0 --- /dev/null +++ b/core/tests/coretests/BinderFrozenStateChangeCallbackTestApp/src/com/android/frameworks/coretests/bfscctestapp/BfsccTestAppCmdService.java @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2024 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.frameworks.coretests.bfscctestapp; + +import android.app.Service; +import android.content.Intent; +import android.os.IBinder; +import android.os.RemoteException; + +import com.android.frameworks.coretests.aidl.IBfsccTestAppCmdService; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; + +public class BfsccTestAppCmdService extends Service { + private IBfsccTestAppCmdService.Stub mBinder = new IBfsccTestAppCmdService.Stub() { + private final LinkedBlockingQueue<Integer> mNotifications = + new LinkedBlockingQueue<>(); + + @Override + public void listenTo(IBinder binder) throws RemoteException { + binder.addFrozenStateChangeCallback( + (IBinder who, int state) -> mNotifications.offer(state)); + } + + @Override + public boolean[] waitAndConsumeNotifications() { + List<Boolean> results = new ArrayList<>(); + try { + Integer state = mNotifications.poll(5, TimeUnit.SECONDS); + if (state != null) { + results.add( + state.intValue() == IBinder.FrozenStateChangeCallback.STATE_FROZEN); + } + } catch (InterruptedException e) { + return null; + } + while (mNotifications.size() > 0) { + results.add(mNotifications.poll().intValue() + == IBinder.FrozenStateChangeCallback.STATE_FROZEN); + } + boolean[] convertedResults = new boolean[results.size()]; + for (int i = 0; i < results.size(); i++) { + convertedResults[i] = results.get(i).booleanValue(); + } + return convertedResults; + } + }; + + @Override + public IBinder onBind(Intent intent) { + return mBinder; + } +} diff --git a/core/tests/coretests/BinderProxyCountingTestService/src/com/android/frameworks/coretests/binderproxycountingtestservice/BinderProxyCountingService.java b/core/tests/coretests/BinderProxyCountingTestService/src/com/android/frameworks/coretests/binderproxycountingtestservice/BinderProxyCountingService.java index 41b4c69232f4..09d79a69476c 100644 --- a/core/tests/coretests/BinderProxyCountingTestService/src/com/android/frameworks/coretests/binderproxycountingtestservice/BinderProxyCountingService.java +++ b/core/tests/coretests/BinderProxyCountingTestService/src/com/android/frameworks/coretests/binderproxycountingtestservice/BinderProxyCountingService.java @@ -50,4 +50,4 @@ public class BinderProxyCountingService extends Service { public IBinder onBind(Intent intent) { return mBinder; } -}
\ No newline at end of file +} diff --git a/core/tests/coretests/OWNERS b/core/tests/coretests/OWNERS index b669e3bc4f30..6d27f3156c93 100644 --- a/core/tests/coretests/OWNERS +++ b/core/tests/coretests/OWNERS @@ -4,3 +4,4 @@ per-file BinderTest.java = file:platform/frameworks/native:/libs/binder/OWNERS per-file ParcelTest.java = file:platform/frameworks/native:/libs/binder/OWNERS per-file SurfaceControlRegistryTests.java = file:/services/core/java/com/android/server/wm/OWNERS per-file VintfObjectTest.java = file:platform/system/libvintf:/OWNERS +per-file WallpaperDescriptionTest,WallpaperInstanceTest = file:/core/java/android/service/wallpaper/OWNERS diff --git a/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/IBfsccTestAppCmdService.aidl b/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/IBfsccTestAppCmdService.aidl new file mode 100644 index 000000000000..d8d7dc4b72db --- /dev/null +++ b/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/IBfsccTestAppCmdService.aidl @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2024 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.frameworks.coretests.aidl; + +interface IBfsccTestAppCmdService { + void listenTo(IBinder binder); + boolean[] waitAndConsumeNotifications(); +} diff --git a/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/ITestInterface.aidl b/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/ITestInterface.aidl new file mode 100644 index 000000000000..ffcf178beda4 --- /dev/null +++ b/core/tests/coretests/aidl/com/android/frameworks/coretests/aidl/ITestInterface.aidl @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2024 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.frameworks.coretests.aidl; + +/** + * Just an interface with a oneway, void and non-oneway method. + */ +interface ITestInterface { + // Method order matters, since we verify transaction codes + int foo(int a); + oneway void onewayFoo(int a); + void bar(int a); +} diff --git a/core/tests/coretests/src/android/animation/OWNERS b/core/tests/coretests/src/android/animation/OWNERS new file mode 100644 index 000000000000..1eefb3a3dc65 --- /dev/null +++ b/core/tests/coretests/src/android/animation/OWNERS @@ -0,0 +1 @@ +include /core/java/android/animation/OWNERS diff --git a/core/tests/coretests/src/android/app/ActivityManagerTest.java b/core/tests/coretests/src/android/app/ActivityManagerTest.java index 3c042bac895d..536360f3ed3e 100644 --- a/core/tests/coretests/src/android/app/ActivityManagerTest.java +++ b/core/tests/coretests/src/android/app/ActivityManagerTest.java @@ -60,7 +60,6 @@ public class ActivityManagerTest { public void testProcState() throws Exception { // For the moment mostly want to confirm we don't crash assertNotNull(ActivityManager.procStateToString(PROCESS_STATE_SERVICE)); - assertNotNull(ActivityManager.processStateAmToProto(PROCESS_STATE_SERVICE)); assertTrue(ActivityManager.isProcStateBackground(PROCESS_STATE_SERVICE)); assertFalse(ActivityManager.isProcStateCached(PROCESS_STATE_SERVICE)); assertFalse(ActivityManager.isForegroundService(PROCESS_STATE_SERVICE)); diff --git a/core/tests/coretests/src/android/app/OWNERS b/core/tests/coretests/src/android/app/OWNERS index 5636f9bc436c..6d14ccb18c53 100644 --- a/core/tests/coretests/src/android/app/OWNERS +++ b/core/tests/coretests/src/android/app/OWNERS @@ -14,3 +14,5 @@ per-file KeyguardManagerTest.java = file:/services/core/java/com/android/server/ # Files related to background activity launches per-file Background*Start* = file:/BAL_OWNERS +# Files related to caching +per-file PropertyInvalidatedCache* = file:/PERFORMANCE_OWNERS diff --git a/core/tests/coretests/src/android/app/PropertyInvalidatedCacheTests.java b/core/tests/coretests/src/android/app/PropertyInvalidatedCacheTests.java index cd6abddc20a1..95a4fe4811f0 100644 --- a/core/tests/coretests/src/android/app/PropertyInvalidatedCacheTests.java +++ b/core/tests/coretests/src/android/app/PropertyInvalidatedCacheTests.java @@ -39,11 +39,7 @@ import org.junit.Test; * atest FrameworksCoreTests:PropertyInvalidatedCacheTests */ @SmallTest -@IgnoreUnderRavenwood(blockedBy = PropertyInvalidatedCache.class) public class PropertyInvalidatedCacheTests { - @Rule - public final RavenwoodRule mRavenwood = new RavenwoodRule(); - // Configuration for creating caches private static final String MODULE = PropertyInvalidatedCache.MODULE_TEST; private static final String API = "testApi"; diff --git a/core/tests/coretests/src/android/app/activity/ActivityManagerTest.java b/core/tests/coretests/src/android/app/activity/ActivityManagerTest.java index b972882e68e6..cd524214e6af 100644 --- a/core/tests/coretests/src/android/app/activity/ActivityManagerTest.java +++ b/core/tests/coretests/src/android/app/activity/ActivityManagerTest.java @@ -111,12 +111,6 @@ public class ActivityManagerTest extends AndroidTestCase { assertEquals(config.reqKeyboardType, vconfig.keyboard); assertEquals(config.reqTouchScreen, vconfig.touchscreen); assertEquals(config.reqNavigation, vconfig.navigation); - if (vconfig.navigation == Configuration.NAVIGATION_NONAV) { - assertNotNull(config.reqInputFeatures & ConfigurationInfo.INPUT_FEATURE_FIVE_WAY_NAV); - } - if (vconfig.keyboard != Configuration.KEYBOARD_UNDEFINED) { - assertNotNull(config.reqInputFeatures & ConfigurationInfo.INPUT_FEATURE_HARD_KEYBOARD); - } } @SmallTest diff --git a/core/tests/coretests/src/android/content/TEST_MAPPING b/core/tests/coretests/src/android/content/TEST_MAPPING index bbc2458f5d8b..fd9fda3ab96a 100644 --- a/core/tests/coretests/src/android/content/TEST_MAPPING +++ b/core/tests/coretests/src/android/content/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.ContentCaptureOptionsTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_content_capture_options" } ] } diff --git a/core/tests/coretests/src/android/content/integrity/TEST_MAPPING b/core/tests/coretests/src/android/content/integrity/TEST_MAPPING index 2920716f5d5d..d22fe84f3d84 100644 --- a/core/tests/coretests/src/android/content/integrity/TEST_MAPPING +++ b/core/tests/coretests/src/android/content/integrity/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.integrity." - } - ] + "name": "FrameworksCoreTests_android_content_integrity" } ] } diff --git a/core/tests/coretests/src/android/content/pm/TEST_MAPPING b/core/tests/coretests/src/android/content/pm/TEST_MAPPING index 978d80cb52f6..b350d7d50251 100644 --- a/core/tests/coretests/src/android/content/pm/TEST_MAPPING +++ b/core/tests/coretests/src/android/content/pm/TEST_MAPPING @@ -1,40 +1,12 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.pm." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_content_pm_PreSubmit" } ], "postsubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.pm." - }, - { - "include-annotation": "android.platform.test.annotations.Postsubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_content_pm_PostSubmit" } ] } diff --git a/core/tests/coretests/src/android/content/res/TEST_MAPPING b/core/tests/coretests/src/android/content/res/TEST_MAPPING index 4ea6e40a7225..4cce70e86e66 100644 --- a/core/tests/coretests/src/android/content/res/TEST_MAPPING +++ b/core/tests/coretests/src/android/content/res/TEST_MAPPING @@ -1,43 +1,12 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.res." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "android.platform.test.annotations.Postsubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_content_res" } ], "postsubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.res." - }, - { - "include-annotation": "android.platform.test.annotations.Postsubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_content_res_PostSubmit" } ] } diff --git a/core/tests/coretests/src/android/hardware/biometrics/BiometricPromptTest.java b/core/tests/coretests/src/android/hardware/biometrics/BiometricPromptTest.java index ca9154280a10..a3d0ec623683 100644 --- a/core/tests/coretests/src/android/hardware/biometrics/BiometricPromptTest.java +++ b/core/tests/coretests/src/android/hardware/biometrics/BiometricPromptTest.java @@ -16,7 +16,6 @@ package android.hardware.biometrics; -import static android.hardware.biometrics.BiometricPrompt.MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER; import static android.hardware.biometrics.PromptContentViewWithMoreOptionsButton.MAX_DESCRIPTION_CHARACTER_NUMBER; import static android.hardware.biometrics.PromptVerticalListContentView.MAX_EACH_ITEM_CHARACTER_NUMBER; import static android.hardware.biometrics.PromptVerticalListContentView.MAX_ITEM_NUMBER; @@ -116,19 +115,7 @@ public class BiometricPromptTest { () -> new BiometricPrompt.Builder(mContext).setLogoDescription(null) ); - assertThat(e).hasMessageThat().contains( - "Logo description passed in can not be null or exceed"); - } - - @Test - public void testLogoDescription_charLimit() { - IllegalArgumentException e = assertThrows(IllegalArgumentException.class, - () -> new BiometricPrompt.Builder(mContext).setLogoDescription( - generateRandomString(MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER + 1)) - ); - - assertThat(e).hasMessageThat().contains( - "Logo description passed in can not be null or exceed"); + assertThat(e).hasMessageThat().isEqualTo("Logo description passed in can not be null"); } @Test diff --git a/core/tests/coretests/src/android/net/NetworkKeyTest.java b/core/tests/coretests/src/android/net/NetworkKeyTest.java index b13bcd1311f6..444ed51fa823 100644 --- a/core/tests/coretests/src/android/net/NetworkKeyTest.java +++ b/core/tests/coretests/src/android/net/NetworkKeyTest.java @@ -25,7 +25,7 @@ import android.net.wifi.ScanResult; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Before; import org.junit.Test; diff --git a/core/tests/coretests/src/android/net/NetworkRecommendationProviderTest.java b/core/tests/coretests/src/android/net/NetworkRecommendationProviderTest.java index 3e45a79951d3..46f22cec4213 100644 --- a/core/tests/coretests/src/android/net/NetworkRecommendationProviderTest.java +++ b/core/tests/coretests/src/android/net/NetworkRecommendationProviderTest.java @@ -26,7 +26,7 @@ import static org.mockito.Matchers.eq; import android.Manifest.permission; import android.content.Context; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Before; import org.junit.Test; diff --git a/core/tests/coretests/src/android/net/SSLCertificateSocketFactoryTest.java b/core/tests/coretests/src/android/net/SSLCertificateSocketFactoryTest.java index bc12e727c5f0..7413ede92914 100644 --- a/core/tests/coretests/src/android/net/SSLCertificateSocketFactoryTest.java +++ b/core/tests/coretests/src/android/net/SSLCertificateSocketFactoryTest.java @@ -19,7 +19,7 @@ package android.net; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/core/tests/coretests/src/android/net/ScoredNetworkTest.java b/core/tests/coretests/src/android/net/ScoredNetworkTest.java index d984d86e1147..63eeaa1e97e0 100644 --- a/core/tests/coretests/src/android/net/ScoredNetworkTest.java +++ b/core/tests/coretests/src/android/net/ScoredNetworkTest.java @@ -26,7 +26,7 @@ import static org.junit.Assert.fail; import android.os.Bundle; import android.os.Parcel; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/core/tests/coretests/src/android/net/SntpClientTest.java b/core/tests/coretests/src/android/net/SntpClientTest.java index 267fc2b636d6..024d614814a1 100644 --- a/core/tests/coretests/src/android/net/SntpClientTest.java +++ b/core/tests/coretests/src/android/net/SntpClientTest.java @@ -29,7 +29,7 @@ import android.net.sntp.Timestamp64; import android.platform.test.annotations.Presubmit; import android.util.Log; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import libcore.util.HexEncoding; diff --git a/core/tests/coretests/src/android/net/sntp/Duration64Test.java b/core/tests/coretests/src/android/net/sntp/Duration64Test.java index b2285962f82d..b177e18a5d8a 100644 --- a/core/tests/coretests/src/android/net/sntp/Duration64Test.java +++ b/core/tests/coretests/src/android/net/sntp/Duration64Test.java @@ -23,7 +23,7 @@ import static org.junit.Assert.assertTrue; import android.platform.test.annotations.Presubmit; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/core/tests/coretests/src/android/net/sntp/Timestamp64Test.java b/core/tests/coretests/src/android/net/sntp/Timestamp64Test.java index 200c80e81588..9f95132a8437 100644 --- a/core/tests/coretests/src/android/net/sntp/Timestamp64Test.java +++ b/core/tests/coretests/src/android/net/sntp/Timestamp64Test.java @@ -23,7 +23,7 @@ import static org.junit.Assert.fail; import android.platform.test.annotations.Presubmit; -import androidx.test.runner.AndroidJUnit4; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/core/tests/coretests/src/android/os/BinderFrozenStateChangeNotificationTest.java b/core/tests/coretests/src/android/os/BinderFrozenStateChangeNotificationTest.java new file mode 100644 index 000000000000..195a18a5f521 --- /dev/null +++ b/core/tests/coretests/src/android/os/BinderFrozenStateChangeNotificationTest.java @@ -0,0 +1,267 @@ +/* + * Copyright (C) 2024 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.os; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import android.app.Activity; +import android.app.ActivityManager; +import android.content.BroadcastReceiver; +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.ServiceConnection; +import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.ravenwood.RavenwoodRule; +import android.util.Log; + +import androidx.test.InstrumentationRegistry; +import androidx.test.runner.AndroidJUnit4; +import androidx.test.uiautomator.UiDevice; + +import com.android.frameworks.coretests.aidl.IBfsccTestAppCmdService; +import com.android.frameworks.coretests.bdr_helper_app.TestCommsReceiver; + +import org.junit.After; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.util.Queue; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicReference; + +/** + * Tests functionality of {@link android.os.IBinder.FrozenStateChangeCallback}. + */ +@RunWith(AndroidJUnit4.class) +@IgnoreUnderRavenwood(blockedBy = ActivityManager.class) +public class BinderFrozenStateChangeNotificationTest { + private static final String TAG = BinderFrozenStateChangeNotificationTest.class.getSimpleName(); + + private static final String TEST_PACKAGE_NAME_1 = + "com.android.frameworks.coretests.bfscctestapp"; + private static final String TEST_PACKAGE_NAME_2 = + "com.android.frameworks.coretests.bdr_helper_app1"; + private static final String TEST_APP_CMD_SERVICE = + TEST_PACKAGE_NAME_1 + ".BfsccTestAppCmdService"; + + private static final int CALLBACK_WAIT_TIMEOUT_SECS = 5; + + private IBfsccTestAppCmdService mBfsccTestAppCmdService; + private ServiceConnection mTestAppConnection; + private Context mContext; + private Handler mHandler; + + @Rule + public final RavenwoodRule mRavenwood = new RavenwoodRule(); + + @Before + public void setUp() throws Exception { + mContext = InstrumentationRegistry.getTargetContext(); + mHandler = new Handler(Looper.getMainLooper()); + ((ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE)).killUid( + mContext.getPackageManager().getPackageUid(TEST_PACKAGE_NAME_1, 0), + "Wiping Test Package"); + mTestAppConnection = bindService(); + } + + private IBinder getNewRemoteBinder(String testPackage) throws InterruptedException { + final CountDownLatch resultLatch = new CountDownLatch(1); + final AtomicInteger resultCode = new AtomicInteger(Activity.RESULT_CANCELED); + final AtomicReference<Bundle> resultExtras = new AtomicReference<>(); + + final Intent intent = new Intent(TestCommsReceiver.ACTION_GET_BINDER) + .setClassName(testPackage, TestCommsReceiver.class.getName()); + mContext.sendOrderedBroadcast(intent, null, new BroadcastReceiver() { + @Override + public void onReceive(Context context, Intent intent) { + resultCode.set(getResultCode()); + resultExtras.set(getResultExtras(true)); + resultLatch.countDown(); + } + }, mHandler, Activity.RESULT_CANCELED, null, null); + + assertTrue("Request for binder timed out", resultLatch.await(5, TimeUnit.SECONDS)); + assertEquals(Activity.RESULT_OK, resultCode.get()); + return resultExtras.get().getBinder(TestCommsReceiver.EXTRA_KEY_BINDER); + } + + private ServiceConnection bindService() + throws Exception { + final CountDownLatch bindLatch = new CountDownLatch(1); + ServiceConnection connection = new ServiceConnection() { + @Override + public void onServiceConnected(ComponentName name, IBinder service) { + Log.i(TAG, "Service connected"); + mBfsccTestAppCmdService = IBfsccTestAppCmdService.Stub.asInterface(service); + bindLatch.countDown(); + } + + @Override + public void onServiceDisconnected(ComponentName name) { + Log.i(TAG, "Service disconnected"); + } + }; + mContext.bindService( + new Intent().setComponent( + new ComponentName(TEST_PACKAGE_NAME_1, TEST_APP_CMD_SERVICE)), + connection, + Context.BIND_AUTO_CREATE + | Context.BIND_NOT_FOREGROUND); + if (!bindLatch.await(5, TimeUnit.SECONDS)) { + fail("Timed out waiting for the service to bind"); + } + return connection; + } + + private void unbindService(ServiceConnection service) { + if (service != null) { + mContext.unbindService(service); + } + } + + @Test + public void onStateChangeCalled() throws Exception { + final LinkedBlockingQueue<Boolean> results = new LinkedBlockingQueue<>(); + if (createCallback(mBfsccTestAppCmdService.asBinder(), results) == null) { + return; + } + ensureUnfrozenCallback(results); + freezeApp1(); + ensureFrozenCallback(results); + unfreezeApp1(); + ensureUnfrozenCallback(results); + } + + @Test + public void onStateChangeNotCalledAfterCallbackRemoved() throws Exception { + final LinkedBlockingQueue<Boolean> results = new LinkedBlockingQueue<>(); + IBinder.FrozenStateChangeCallback callback; + if ((callback = createCallback(mBfsccTestAppCmdService.asBinder(), results)) == null) { + return; + } + ensureUnfrozenCallback(results); + mBfsccTestAppCmdService.asBinder().removeFrozenStateChangeCallback(callback); + freezeApp1(); + assertEquals("No more callbacks should be invoked.", 0, results.size()); + } + + @Test + public void multipleCallbacks() throws Exception { + final LinkedBlockingQueue<Boolean> results1 = new LinkedBlockingQueue<>(); + final LinkedBlockingQueue<Boolean> results2 = new LinkedBlockingQueue<>(); + IBinder.FrozenStateChangeCallback callback1; + if ((callback1 = createCallback(mBfsccTestAppCmdService.asBinder(), results1)) == null) { + return; + } + ensureUnfrozenCallback(results1); + freezeApp1(); + ensureFrozenCallback(results1); + if (createCallback(mBfsccTestAppCmdService.asBinder(), results2) == null) { + return; + } + ensureFrozenCallback(results2); + + unfreezeApp1(); + ensureUnfrozenCallback(results1); + ensureUnfrozenCallback(results2); + + mBfsccTestAppCmdService.asBinder().removeFrozenStateChangeCallback(callback1); + freezeApp1(); + assertEquals("No more callbacks should be invoked.", 0, results1.size()); + ensureFrozenCallback(results2); + } + + @Test + public void onStateChangeCalledWithTheRightBinder() throws Exception { + final IBinder binder = mBfsccTestAppCmdService.asBinder(); + final LinkedBlockingQueue<IBinder> results = new LinkedBlockingQueue<>(); + IBinder.FrozenStateChangeCallback callback = + (IBinder who, int state) -> results.offer(who); + try { + binder.addFrozenStateChangeCallback(callback); + } catch (UnsupportedOperationException e) { + return; + } + assertEquals("Callback received the wrong Binder object.", + binder, results.poll(CALLBACK_WAIT_TIMEOUT_SECS, TimeUnit.SECONDS)); + freezeApp1(); + assertEquals("Callback received the wrong Binder object.", + binder, results.poll(CALLBACK_WAIT_TIMEOUT_SECS, TimeUnit.SECONDS)); + unfreezeApp1(); + assertEquals("Callback received the wrong Binder object.", + binder, results.poll(CALLBACK_WAIT_TIMEOUT_SECS, TimeUnit.SECONDS)); + } + + @After + public void tearDown() { + if (mTestAppConnection != null) { + mContext.unbindService(mTestAppConnection); + } + } + + private IBinder.FrozenStateChangeCallback createCallback(IBinder binder, Queue<Boolean> queue) + throws RemoteException { + try { + final IBinder.FrozenStateChangeCallback callback = + (IBinder who, int state) -> + queue.offer(state == IBinder.FrozenStateChangeCallback.STATE_FROZEN); + binder.addFrozenStateChangeCallback(callback); + return callback; + } catch (UnsupportedOperationException e) { + return null; + } + } + + private void ensureFrozenCallback(LinkedBlockingQueue<Boolean> queue) + throws InterruptedException { + assertEquals(Boolean.TRUE, queue.poll(CALLBACK_WAIT_TIMEOUT_SECS, TimeUnit.SECONDS)); + } + + private void ensureUnfrozenCallback(LinkedBlockingQueue<Boolean> queue) + throws InterruptedException { + assertEquals(Boolean.FALSE, queue.poll(CALLBACK_WAIT_TIMEOUT_SECS, TimeUnit.SECONDS)); + } + + private String executeShellCommand(String cmd) throws Exception { + return UiDevice.getInstance( + InstrumentationRegistry.getInstrumentation()).executeShellCommand(cmd); + } + + private void freezeApp1() throws Exception { + executeShellCommand("am freeze " + TEST_PACKAGE_NAME_1); + } + + private void freezeApp2() throws Exception { + executeShellCommand("am freeze " + TEST_PACKAGE_NAME_2); + } + + private void unfreezeApp1() throws Exception { + executeShellCommand("am unfreeze " + TEST_PACKAGE_NAME_1); + } + + private void unfreezeApp2() throws Exception { + executeShellCommand("am unfreeze " + TEST_PACKAGE_NAME_2); + } +} diff --git a/core/tests/coretests/src/android/os/BinderTest.java b/core/tests/coretests/src/android/os/BinderTest.java index 9767d677807d..90ec93e46418 100644 --- a/core/tests/coretests/src/android/os/BinderTest.java +++ b/core/tests/coretests/src/android/os/BinderTest.java @@ -24,18 +24,16 @@ import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; import static org.testng.Assert.assertThrows; -import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import androidx.test.filters.SmallTest; import com.android.internal.os.BinderInternal; - import org.junit.Rule; import org.junit.Test; -@IgnoreUnderRavenwood(blockedBy = WorkSource.class) public class BinderTest { private static final int UID = 100; @@ -89,6 +87,7 @@ public class BinderTest { @SmallTest @Test(expected = java.lang.SecurityException.class) + @DisabledOnRavenwood(blockedBy = ServiceManagerNative.class) public void testServiceManagerNativeSecurityException() throws RemoteException { // Find the service manager IServiceManager sServiceManager = ServiceManagerNative @@ -101,6 +100,7 @@ public class BinderTest { @SmallTest @Test(expected = java.lang.NullPointerException.class) + @DisabledOnRavenwood(blockedBy = ServiceManagerNative.class) public void testServiceManagerNativeNullptrException() throws RemoteException { // Find the service manager IServiceManager sServiceManager = ServiceManagerNative diff --git a/core/tests/coretests/src/android/os/BinderUncaughtExceptionHandlerTest.kt b/core/tests/coretests/src/android/os/BinderUncaughtExceptionHandlerTest.kt new file mode 100644 index 000000000000..791c209e4473 --- /dev/null +++ b/core/tests/coretests/src/android/os/BinderUncaughtExceptionHandlerTest.kt @@ -0,0 +1,247 @@ +/* + * Copyright (C) 2024 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.os + +import android.content.Intent +import android.platform.test.annotations.DisabledOnRavenwood +import android.platform.test.annotations.Presubmit + +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.platform.app.InstrumentationRegistry + +import com.android.frameworks.coretests.aidl.ITestInterface +import com.android.frameworks.coretests.methodcallerhelperapp.* + +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith + +import org.mockito.ArgumentMatcher +import org.mockito.ArgumentMatchers.any +import org.mockito.ArgumentMatchers.anyInt +import org.mockito.ArgumentMatchers.eq +import org.mockito.ArgumentMatchers.intThat +import org.mockito.Mockito.after +import org.mockito.Mockito.doThrow +import org.mockito.Mockito.never +import org.mockito.Mockito.timeout +import org.mockito.Mockito.verify +import org.mockito.Mockito.`when` +import org.mockito.Spy +import org.mockito.junit.MockitoJUnit +import org.mockito.quality.Strictness.STRICT_STUBS + +private const val TIMEOUT_DURATION_MS = 2000L +private const val FALSE_NEG_DURATION_MS = 500L +private const val FLAG_ONEWAY = 1 +// From ITestInterface.Stub class, these values are package private +private const val TRANSACTION_foo = 1 +private const val TRANSACTION_onewayFoo = 2 +private const val TRANSACTION_bar = 3 + +/** Tests functionality of {@link android.os.Binder.onUnhandledException}. */ +@DisabledOnRavenwood(reason = "multi-app") +@Presubmit +@RunWith(AndroidJUnit4::class) +class BinderUncaughtExceptionHandlerTest { + + val mContext = InstrumentationRegistry.getInstrumentation().getTargetContext() + + @Rule @JvmField val rule = MockitoJUnit.rule().strictness(STRICT_STUBS) + + @Spy var mInterfaceImpl: ITestImpl = ITestImpl() + + // This subclass is needed for visibility issues (via protected), since the method we are + // verifying lives on the boot classpath, it is not enough to be in the same package. + open class ITestImpl : ITestInterface.Stub() { + override fun onUnhandledException(code: Int, flags: Int, e: Exception?) = + onUnhandledExceptionVisible(code, flags, e) + + public open fun onUnhandledExceptionVisible(code: Int, flags: Int, e: Exception?) {} + + @Throws(RemoteException::class) + override open fun foo(x: Int): Int = throw UnsupportedOperationException() + + @Throws(RemoteException::class) + override open fun onewayFoo(x: Int): Unit = throw UnsupportedOperationException() + + @Throws(RemoteException::class) + override open fun bar(x: Int): Unit = throw UnsupportedOperationException() + } + + class OnewayMatcher(private val isOneway: Boolean) : ArgumentMatcher<Int> { + override fun matches(argument: Int?) = + (argument!! and FLAG_ONEWAY) == if (isOneway) 1 else 0 + + override fun toString() = "Expected oneway: $isOneway" + } + + @Test + fun testRegularMethod_ifThrowsRuntimeException_HandlerCalled() { + val myException = RuntimeException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).foo(anyInt()) + + dispatchActionCall("foo") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_foo), + /* flags= */ intThat(OnewayMatcher(false)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testRegularMethod_ifThrowsRemoteException_HandlerCalled() { + val myException = RemoteException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).foo(anyInt()) + + dispatchActionCall("foo") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_foo), + /* flags= */ intThat(OnewayMatcher(false)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testRegularMethod_ifThrowsSecurityException_HandlerNotCalled() { + val myException = SecurityException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).foo(anyInt()) + + dispatchActionCall("foo") + + // No unexpected calls + verify(mInterfaceImpl, after(FALSE_NEG_DURATION_MS).never()) + .onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testVoidMethod_ifThrowsRuntimeException_HandlerCalled() { + val myException = RuntimeException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).bar(anyInt()) + + dispatchActionCall("bar") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_bar), + /* flags= */ intThat(OnewayMatcher(false)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testVoidMethod_ifThrowsRemoteException_HandlerCalled() { + val myException = RemoteException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).bar(anyInt()) + + dispatchActionCall("bar") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_bar), + /* flags= */ intThat(OnewayMatcher(false)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testVoidMethod_ifThrowsSecurityException_HandlerNotCalled() { + val myException = SecurityException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).bar(anyInt()) + + dispatchActionCall("bar") + + // No unexpected calls + verify(mInterfaceImpl, after(FALSE_NEG_DURATION_MS).never()) + .onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testOnewayMethod_ifThrowsRuntimeException_HandlerCalled() { + val myException = RuntimeException("Test exception") + doThrow(myException).doNothing().`when`(mInterfaceImpl).onewayFoo(anyInt()) + + dispatchActionCall("onewayFoo") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_onewayFoo), + /* flags= */ intThat(OnewayMatcher(true)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + @Test + fun testOnewayMethod_ifThrowsRemoteException_HandlerCalled() { + val myException = RemoteException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).onewayFoo(anyInt()) + + dispatchActionCall("onewayFoo") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_onewayFoo), + /* flags= */ intThat(OnewayMatcher(true)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + // All exceptions are uncaught for oneway + @Test + fun testOnewayMethod_ifThrowsSecurityException_HandlerCalled() { + val myException = SecurityException("Test exception") + doThrow(myException).`when`(mInterfaceImpl).onewayFoo(anyInt()) + + dispatchActionCall("onewayFoo") + + verify(mInterfaceImpl, timeout(TIMEOUT_DURATION_MS)) + .onUnhandledExceptionVisible( + /* transactionCode = */ eq(TRANSACTION_onewayFoo), + /* flags= */ intThat(OnewayMatcher(true)), + /* exception= */ eq(myException), + ) + // No unexpected calls + verify(mInterfaceImpl).onUnhandledExceptionVisible(anyInt(), anyInt(), any()) + } + + private fun dispatchActionCall(methodName: String) = + Intent(ACTION_CALL_METHOD).apply { + putExtras( + Bundle().apply { + putBinder(EXTRA_BINDER, mInterfaceImpl as IBinder) + putString(EXTRA_METHOD_NAME, methodName) + } + ) + setClassName(PACKAGE_NAME, CallMethodsReceiver::class.java.getName()) + }.let { mContext.sendBroadcast(it) } +} diff --git a/core/tests/coretests/src/android/os/BundleTest.java b/core/tests/coretests/src/android/os/BundleTest.java index 40e79ad8ada3..5ef8d3c4099b 100644 --- a/core/tests/coretests/src/android/os/BundleTest.java +++ b/core/tests/coretests/src/android/os/BundleTest.java @@ -25,7 +25,6 @@ import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; import android.platform.test.annotations.DisabledOnRavenwood; -import android.platform.test.annotations.IgnoreUnderRavenwood; import android.platform.test.annotations.Presubmit; import android.platform.test.ravenwood.RavenwoodRule; import android.util.Log; @@ -131,7 +130,6 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = ParcelFileDescriptor.class) public void testCreateFromParcel() throws Exception { boolean withFd; Parcel p; @@ -312,7 +310,7 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) + @DisabledOnRavenwood(reason = "Ravenwood tests run on the BCP") public void kindofEquals_lazyValuesAndDifferentClassLoaders_returnsFalse() { Parcelable p1 = new CustomParcelable(13, "Tiramisu"); Parcelable p2 = new CustomParcelable(13, "Tiramisu"); @@ -368,7 +366,6 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void readWriteLengthMismatch_logsWtf() throws Exception { mWtfHandler = Log.setWtfHandler((tag, e, system) -> { throw new RuntimeException(e); @@ -383,7 +380,7 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) + @DisabledOnRavenwood(reason = "Ravenwood tests run on the BCP") public void getParcelable_whenThrowingAndNotDefusing_throws() throws Exception { Bundle.setShouldDefuse(false); Bundle bundle = new Bundle(); @@ -396,7 +393,7 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) + @DisabledOnRavenwood(reason = "Ravenwood tests run on the BCP") public void getParcelable_whenThrowingAndDefusing_returnsNull() throws Exception { Bundle.setShouldDefuse(true); Bundle bundle = new Bundle(); @@ -412,7 +409,7 @@ public class BundleTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) + @DisabledOnRavenwood(reason = "Ravenwood tests run on the BCP") public void getParcelable_whenThrowingAndDefusing_leavesElement() throws Exception { Bundle.setShouldDefuse(true); Bundle bundle = new Bundle(); @@ -447,7 +444,6 @@ public class BundleTest { } @Test - @DisabledOnRavenwood(blockedBy = Parcel.class) public void parcelledBundleWithBinder_shouldReturnHasBindersTrue() throws Exception { Bundle bundle = new Bundle(); bundle.putParcelable("test", new CustomParcelable(13, "Tiramisu")); @@ -470,7 +466,6 @@ public class BundleTest { } @Test - @DisabledOnRavenwood(blockedBy = Parcel.class) public void parcelledBundleWithoutBinder_shouldReturnHasBindersFalse() throws Exception { Bundle bundle = new Bundle(); bundle.putParcelable("test", new CustomParcelable(13, "Tiramisu")); diff --git a/core/tests/coretests/src/android/os/FileUtilsTest.java b/core/tests/coretests/src/android/os/FileUtilsTest.java index 78a2c1c4ddbe..b25263c138b3 100644 --- a/core/tests/coretests/src/android/os/FileUtilsTest.java +++ b/core/tests/coretests/src/android/os/FileUtilsTest.java @@ -54,7 +54,7 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import android.os.FileUtils.MemoryPipe; -import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import android.provider.DocumentsContract.Document; import android.system.Os; @@ -158,7 +158,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = MemoryPipe.class) + @DisabledOnRavenwood(blockedBy = MemoryPipe.class) public void testCopy_FileToPipe() throws Exception { for (int size : DATA_SIZES) { final File src = new File(mTarget, "src"); @@ -179,7 +179,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = MemoryPipe.class) + @DisabledOnRavenwood(blockedBy = MemoryPipe.class) public void testCopy_PipeToFile() throws Exception { for (int size : DATA_SIZES) { final File dest = new File(mTarget, "dest"); @@ -199,7 +199,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = MemoryPipe.class) + @DisabledOnRavenwood(blockedBy = MemoryPipe.class) public void testCopy_PipeToPipe() throws Exception { for (int size : DATA_SIZES) { byte[] expected = new byte[size]; @@ -217,7 +217,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = MemoryPipe.class) + @DisabledOnRavenwood(blockedBy = MemoryPipe.class) public void testCopy_ShortPipeToFile() throws Exception { byte[] source = new byte[33_000_000]; new Random().nextBytes(source); @@ -259,9 +259,9 @@ public class FileUtilsTest { assertArrayEquals(expected, actual); } - //TODO(ravenwood) Remove the _$noRavenwood suffix and add @RavenwoodIgnore instead @Test - public void testCopy_SocketToFile_FileToSocket$noRavenwood() throws Exception { + @DisabledOnRavenwood(reason = "Missing Os methods in Ravenwood") + public void testCopy_SocketToFile_FileToSocket() throws Exception { for (int size : DATA_SIZES ) { final File src = new File(mTarget, "src"); final File dest = new File(mTarget, "dest"); @@ -512,7 +512,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = android.webkit.MimeTypeMap.class) + @DisabledOnRavenwood(blockedBy = android.webkit.MimeTypeMap.class) public void testBuildUniqueFile_normal() throws Exception { assertNameEquals("test.jpg", FileUtils.buildUniqueFile(mTarget, "image/jpeg", "test")); assertNameEquals("test.jpg", FileUtils.buildUniqueFile(mTarget, "image/jpeg", "test.jpg")); @@ -532,7 +532,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = android.webkit.MimeTypeMap.class) + @DisabledOnRavenwood(blockedBy = android.webkit.MimeTypeMap.class) public void testBuildUniqueFile_unknown() throws Exception { assertNameEquals("test", FileUtils.buildUniqueFile(mTarget, "application/octet-stream", "test")); @@ -546,7 +546,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = android.webkit.MimeTypeMap.class) + @DisabledOnRavenwood(blockedBy = android.webkit.MimeTypeMap.class) public void testBuildUniqueFile_dir() throws Exception { assertNameEquals("test", FileUtils.buildUniqueFile(mTarget, Document.MIME_TYPE_DIR, "test")); new File(mTarget, "test").mkdir(); @@ -561,7 +561,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = android.webkit.MimeTypeMap.class) + @DisabledOnRavenwood(blockedBy = android.webkit.MimeTypeMap.class) public void testBuildUniqueFile_increment() throws Exception { assertNameEquals("test.jpg", FileUtils.buildUniqueFile(mTarget, "image/jpeg", "test.jpg")); new File(mTarget, "test.jpg").createNewFile(); @@ -581,7 +581,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(blockedBy = android.webkit.MimeTypeMap.class) + @DisabledOnRavenwood(blockedBy = android.webkit.MimeTypeMap.class) public void testBuildUniqueFile_mimeless() throws Exception { assertNameEquals("test.jpg", FileUtils.buildUniqueFile(mTarget, "test.jpg")); new File(mTarget, "test.jpg").createNewFile(); @@ -677,8 +677,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") - public void testTranslateMode() throws Exception { + public void testTranslateMode() { assertTranslate("r", O_RDONLY, MODE_READ_ONLY); assertTranslate("rw", O_RDWR | O_CREAT, @@ -697,8 +696,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") - public void testMalformedTransate_int() throws Exception { + public void testMalformedTransate_int() { try { // The non-standard Linux access mode 3 should throw // an IllegalArgumentException. @@ -709,8 +707,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") - public void testMalformedTransate_string() throws Exception { + public void testMalformedTransate_string() { try { // The non-standard Linux access mode 3 should throw // an IllegalArgumentException. @@ -721,8 +718,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") - public void testTranslateMode_Invalid() throws Exception { + public void testTranslateMode_Invalid() { try { translateModeStringToPosix("rwx"); fail(); @@ -736,8 +732,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") - public void testTranslateMode_Access() throws Exception { + public void testTranslateMode_Access() { assertEquals(O_RDONLY, translateModeAccessToPosix(F_OK)); assertEquals(O_RDONLY, translateModeAccessToPosix(R_OK)); assertEquals(O_WRONLY, translateModeAccessToPosix(W_OK)); @@ -746,7 +741,7 @@ public class FileUtilsTest { } @Test - @IgnoreUnderRavenwood(reason = "Requires kernel support") + @DisabledOnRavenwood(reason = "Requires kernel support") public void testConvertToModernFd() throws Exception { final String nonce = String.valueOf(System.nanoTime()); diff --git a/core/tests/coretests/src/android/os/IpcDataCacheTest.java b/core/tests/coretests/src/android/os/IpcDataCacheTest.java index b03fd6485786..5edf0cad1965 100644 --- a/core/tests/coretests/src/android/os/IpcDataCacheTest.java +++ b/core/tests/coretests/src/android/os/IpcDataCacheTest.java @@ -37,10 +37,7 @@ import org.junit.Test; * atest FrameworksCoreTests:IpcDataCacheTest */ @SmallTest -@IgnoreUnderRavenwood(blockedBy = IpcDataCache.class) public class IpcDataCacheTest { - @Rule - public final RavenwoodRule mRavenwood = new RavenwoodRule(); // Configuration for creating caches private static final String MODULE = IpcDataCache.MODULE_TEST; diff --git a/core/tests/coretests/src/android/os/OWNERS b/core/tests/coretests/src/android/os/OWNERS index 1c0073417c9a..6149382d0800 100644 --- a/core/tests/coretests/src/android/os/OWNERS +++ b/core/tests/coretests/src/android/os/OWNERS @@ -9,3 +9,6 @@ per-file PowerManager*.java = file:/services/core/java/com/android/server/power/ # PerformanceHintManager per-file PerformanceHintManagerTest.java = file:/ADPF_OWNERS + +# Caching +per-file IpcDataCache* = file:/PERFORMANCE_OWNERS diff --git a/core/tests/coretests/src/android/os/ParcelNullabilityTest.java b/core/tests/coretests/src/android/os/ParcelNullabilityTest.java index ffeab291e49f..e9a27cdf17ea 100644 --- a/core/tests/coretests/src/android/os/ParcelNullabilityTest.java +++ b/core/tests/coretests/src/android/os/ParcelNullabilityTest.java @@ -20,7 +20,7 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import android.util.ArrayMap; @@ -67,7 +67,7 @@ public final class ParcelNullabilityTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) + @DisabledOnRavenwood(blockedBy = android.text.Spanned.class) public void nullCharSequence() { Parcel p = Parcel.obtain(); p.writeCharSequence(null); @@ -76,7 +76,6 @@ public final class ParcelNullabilityTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void nullStrongBinder() { Parcel p = Parcel.obtain(); p.writeStrongBinder(null); @@ -85,7 +84,6 @@ public final class ParcelNullabilityTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void nullStringInterface() { Parcel p = Parcel.obtain(); p.writeStrongInterface(null); diff --git a/core/tests/coretests/src/android/os/ParcelTest.java b/core/tests/coretests/src/android/os/ParcelTest.java index 0697c96052f6..8c098c2b4aa3 100644 --- a/core/tests/coretests/src/android/os/ParcelTest.java +++ b/core/tests/coretests/src/android/os/ParcelTest.java @@ -23,7 +23,6 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; -import android.platform.test.annotations.IgnoreUnderRavenwood; import android.platform.test.annotations.Presubmit; import android.platform.test.ravenwood.RavenwoodRule; import android.util.Log; @@ -48,7 +47,6 @@ public class ParcelTest { private static final String INTERFACE_TOKEN_2 = "Another IBinder interface token"; @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testIsForRpc() { Parcel p = Parcel.obtain(); assertEquals(false, p.isForRpc()); @@ -56,7 +54,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testCallingWorkSourceUidAfterWrite() { Parcel p = Parcel.obtain(); // Method does not throw if replaceCallingWorkSourceUid is called before requests headers @@ -77,7 +74,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testCallingWorkSourceUidAfterEnforce() { Parcel p = Parcel.obtain(); p.writeInterfaceToken(INTERFACE_TOKEN_1); @@ -95,7 +91,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testParcelWithMultipleHeaders() { Parcel p = Parcel.obtain(); Binder.setCallingWorkSourceUid(WORK_SOURCE_1); @@ -153,7 +148,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testCompareDataInRange_whenSameDataWithBinder() { Binder binder = new Binder(); Parcel pA = Parcel.obtain(); @@ -313,7 +307,6 @@ public class ParcelTest { * and 1M length for complex objects are allowed. */ @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testAllocations_whenWithinLimit() { Binder.setIsDirectlyHandlingTransactionOverride(true); Parcel p = Parcel.obtain(); @@ -398,7 +391,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testHasBinders_AfterWritingBinderToParcel() { Binder binder = new Binder(); Parcel pA = Parcel.obtain(); @@ -410,7 +402,6 @@ public class ParcelTest { } @Test - @IgnoreUnderRavenwood(blockedBy = Parcel.class) public void testHasBindersInRange_AfterWritingBinderToParcel() { Binder binder = new Binder(); Parcel pA = Parcel.obtain(); diff --git a/core/tests/coretests/src/android/service/TEST_MAPPING b/core/tests/coretests/src/android/service/TEST_MAPPING index bec72d988e74..21f248d3d799 100644 --- a/core/tests/coretests/src/android/service/TEST_MAPPING +++ b/core/tests/coretests/src/android/service/TEST_MAPPING @@ -1,17 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - {"include-filter": "android.service.controls"}, - {"include-filter": "android.service.controls.actions"}, - {"include-filter": "android.service.controls.templates"}, - {"include-filter": "android.service.euicc"}, - {"include-filter": "android.service.notification"}, - {"include-filter": "android.service.quicksettings"}, - {"include-filter": "android.service.settings.suggestions"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksCoreTests_android_service" } ] } diff --git a/core/tests/coretests/src/android/service/settings/OWNERS b/core/tests/coretests/src/android/service/settings/OWNERS new file mode 100644 index 000000000000..abd8ab011b90 --- /dev/null +++ b/core/tests/coretests/src/android/service/settings/OWNERS @@ -0,0 +1 @@ +include platform/frameworks/base:/core/java/android/service/settings/OWNERS diff --git a/core/tests/coretests/src/android/view/contentcapture/TEST_MAPPING b/core/tests/coretests/src/android/view/contentcapture/TEST_MAPPING index f8beac2814db..c2cf40dc4ebe 100644 --- a/core/tests/coretests/src/android/view/contentcapture/TEST_MAPPING +++ b/core/tests/coretests/src/android/view/contentcapture/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.view.contentcapture" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_view_contentcapture" } ] } diff --git a/core/tests/coretests/src/android/view/contentprotection/OWNERS b/core/tests/coretests/src/android/view/contentprotection/OWNERS index b3583a7f6ab1..3d09da303b0f 100644 --- a/core/tests/coretests/src/android/view/contentprotection/OWNERS +++ b/core/tests/coretests/src/android/view/contentprotection/OWNERS @@ -1,4 +1,4 @@ -# Bug component: 544200 +# Bug component: 1040349 -include /core/java/android/view/contentcapture/OWNERS +include /core/java/android/view/contentprotection/OWNERS diff --git a/core/tests/coretests/src/android/view/contentprotection/TEST_MAPPING b/core/tests/coretests/src/android/view/contentprotection/TEST_MAPPING index 3cd4e17d820b..3ef1ac1e6978 100644 --- a/core/tests/coretests/src/android/view/contentprotection/TEST_MAPPING +++ b/core/tests/coretests/src/android/view/contentprotection/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.view.contentprotection" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_android_view_contentprotection" } ] } diff --git a/core/tests/coretests/src/com/android/internal/content/res/TEST_MAPPING b/core/tests/coretests/src/com/android/internal/content/res/TEST_MAPPING index 9aed8be4f10f..4a46244e0162 100644 --- a/core/tests/coretests/src/com/android/internal/content/res/TEST_MAPPING +++ b/core/tests/coretests/src/com/android/internal/content/res/TEST_MAPPING @@ -1,21 +1,7 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "com.android.internal.content." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksCoreTests_com_android_internal_content_Presubmit" } ] } diff --git a/core/tests/coretests/src/com/android/internal/jank/CujTest.java b/core/tests/coretests/src/com/android/internal/jank/CujTest.java index bf35ed0a1601..2362a4c925f9 100644 --- a/core/tests/coretests/src/com/android/internal/jank/CujTest.java +++ b/core/tests/coretests/src/com/android/internal/jank/CujTest.java @@ -35,7 +35,6 @@ import org.junit.Test; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.Arrays; -import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -47,26 +46,30 @@ import java.util.stream.Stream; public class CujTest { private static final String ENUM_NAME_PREFIX = "UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__"; - private static final Set<String> DEPRECATED_VALUES = new HashSet<>() { - { - add(ENUM_NAME_PREFIX + "IME_INSETS_ANIMATION"); - } - }; - private static final Map<Integer, String> ENUM_NAME_EXCEPTION_MAP = new HashMap<>() { - { - put(Cuj.CUJ_NOTIFICATION_ADD, getEnumName("SHADE_NOTIFICATION_ADD")); - put(Cuj.CUJ_NOTIFICATION_HEADS_UP_APPEAR, getEnumName("SHADE_HEADS_UP_APPEAR")); - put(Cuj.CUJ_NOTIFICATION_APP_START, getEnumName("SHADE_APP_LAUNCH")); - put(Cuj.CUJ_NOTIFICATION_HEADS_UP_DISAPPEAR, getEnumName("SHADE_HEADS_UP_DISAPPEAR")); - put(Cuj.CUJ_NOTIFICATION_REMOVE, getEnumName("SHADE_NOTIFICATION_REMOVE")); - put(Cuj.CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE, getEnumName("NOTIFICATION_SHADE_SWIPE")); - put(Cuj.CUJ_NOTIFICATION_SHADE_QS_EXPAND_COLLAPSE, getEnumName("SHADE_QS_EXPAND_COLLAPSE")); - put(Cuj.CUJ_NOTIFICATION_SHADE_QS_SCROLL_SWIPE, getEnumName("SHADE_QS_SCROLL_SWIPE")); - put(Cuj.CUJ_NOTIFICATION_SHADE_ROW_EXPAND, getEnumName("SHADE_ROW_EXPAND")); - put(Cuj.CUJ_NOTIFICATION_SHADE_ROW_SWIPE, getEnumName("SHADE_ROW_SWIPE")); - put(Cuj.CUJ_NOTIFICATION_SHADE_SCROLL_FLING, getEnumName("SHADE_SCROLL_FLING")); - } - }; + private static final Set<String> DEPRECATED_VALUES = Set.of( + ENUM_NAME_PREFIX + "IME_INSETS_ANIMATION" + ); + private static final Map<Integer, String> ENUM_NAME_EXCEPTION_MAP = Map.ofEntries( + Map.entry(Cuj.CUJ_NOTIFICATION_ADD, getEnumName("SHADE_NOTIFICATION_ADD")), + Map.entry(Cuj.CUJ_NOTIFICATION_HEADS_UP_APPEAR, getEnumName("SHADE_HEADS_UP_APPEAR")), + Map.entry(Cuj.CUJ_NOTIFICATION_APP_START, getEnumName("SHADE_APP_LAUNCH")), + Map.entry( + Cuj.CUJ_NOTIFICATION_HEADS_UP_DISAPPEAR, + getEnumName("SHADE_HEADS_UP_DISAPPEAR")), + Map.entry(Cuj.CUJ_NOTIFICATION_REMOVE, getEnumName("SHADE_NOTIFICATION_REMOVE")), + Map.entry( + Cuj.CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE, + getEnumName("NOTIFICATION_SHADE_SWIPE")), + Map.entry( + Cuj.CUJ_NOTIFICATION_SHADE_QS_EXPAND_COLLAPSE, + getEnumName("SHADE_QS_EXPAND_COLLAPSE")), + Map.entry( + Cuj.CUJ_NOTIFICATION_SHADE_QS_SCROLL_SWIPE, + getEnumName("SHADE_QS_SCROLL_SWIPE")), + Map.entry(Cuj.CUJ_NOTIFICATION_SHADE_ROW_EXPAND, getEnumName("SHADE_ROW_EXPAND")), + Map.entry(Cuj.CUJ_NOTIFICATION_SHADE_ROW_SWIPE, getEnumName("SHADE_ROW_SWIPE")), + Map.entry(Cuj.CUJ_NOTIFICATION_SHADE_SCROLL_FLING, getEnumName("SHADE_SCROLL_FLING")) + ); @Rule public final Expect mExpect = Expect.create(); diff --git a/core/tests/coretests/src/com/android/internal/os/BinderDeathDispatcherTest.java b/core/tests/coretests/src/com/android/internal/os/BinderDeathDispatcherTest.java index 27398eae2b8b..d0070678d4fa 100644 --- a/core/tests/coretests/src/com/android/internal/os/BinderDeathDispatcherTest.java +++ b/core/tests/coretests/src/com/android/internal/os/BinderDeathDispatcherTest.java @@ -124,6 +124,16 @@ public class BinderDeathDispatcherTest { return this; } + @Override + public void addFrozenStateChangeCallback(FrozenStateChangeCallback callback) + throws RemoteException { + } + + @Override + public boolean removeFrozenStateChangeCallback(FrozenStateChangeCallback callback) { + return false; + } + public void die() { isAlive = false; if (mRecipient != null) { diff --git a/core/tests/devicestatetests/Android.bp b/core/tests/devicestatetests/Android.bp index 60848b31eaec..a3303c6ca6d7 100644 --- a/core/tests/devicestatetests/Android.bp +++ b/core/tests/devicestatetests/Android.bp @@ -32,7 +32,7 @@ android_test { "platform-test-annotations", "testng", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", } diff --git a/core/tests/featureflagtests/Android.bp b/core/tests/featureflagtests/Android.bp index d9f608ea34c4..c08066720477 100644 --- a/core/tests/featureflagtests/Android.bp +++ b/core/tests/featureflagtests/Android.bp @@ -19,8 +19,8 @@ android_test { "androidx.test.rules", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], platform_apis: true, certificate: "platform", diff --git a/core/tests/hdmitests/Android.bp b/core/tests/hdmitests/Android.bp index 5f6eaf96a846..7a5757cc7a85 100644 --- a/core/tests/hdmitests/Android.bp +++ b/core/tests/hdmitests/Android.bp @@ -32,8 +32,15 @@ android_test { "platform-test-annotations", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], } + +test_module_config { + name: "HdmiCecTests_hardware_hdmi", + base: "HdmiCecTests", + test_suites: ["device-tests"], + include_filters: ["android.hardware.hdmi"], +} diff --git a/core/tests/hosttests/test-apps/DownloadManagerTestApp/Android.bp b/core/tests/hosttests/test-apps/DownloadManagerTestApp/Android.bp index d439124c72cb..c9fdec0e61fd 100644 --- a/core/tests/hosttests/test-apps/DownloadManagerTestApp/Android.bp +++ b/core/tests/hosttests/test-apps/DownloadManagerTestApp/Android.bp @@ -27,8 +27,8 @@ android_test { "junit", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], platform_apis: true, diff --git a/core/tests/mockingcoretests/Android.bp b/core/tests/mockingcoretests/Android.bp index aca52a870655..8657b8ca52e1 100644 --- a/core/tests/mockingcoretests/Android.bp +++ b/core/tests/mockingcoretests/Android.bp @@ -44,9 +44,9 @@ android_test { ], libs: [ - "android.test.base", - "android.test.mock", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", + "android.test.runner.stubs.system", ], // These are not normally accessible from apps so they must be explicitly included. @@ -63,3 +63,13 @@ android_test { certificate: "platform", } + +test_module_config { + name: "FrameworksMockingCoreTests_os_bundlerecyclingtest", + base: "FrameworksMockingCoreTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["android.os.BundleRecyclingTest"], +} diff --git a/core/tests/overlaytests/remount/Android.bp b/core/tests/overlaytests/remount/Android.bp index 0a6b88bcbb63..31c15148d8d8 100644 --- a/core/tests/overlaytests/remount/Android.bp +++ b/core/tests/overlaytests/remount/Android.bp @@ -32,7 +32,7 @@ java_test_host { "frameworks-base-hostutils", ], test_suites: ["general-tests"], - java_resources: [ + device_common_java_resources: [ ":com.android.overlaytest.overlaid", ":com.android.overlaytest.overlay", ":OverlayRemountedTest_SharedLibrary", diff --git a/core/tests/packagemanagertests/Android.bp b/core/tests/packagemanagertests/Android.bp index 5ce71c902c7c..8ff499826866 100644 --- a/core/tests/packagemanagertests/Android.bp +++ b/core/tests/packagemanagertests/Android.bp @@ -17,7 +17,7 @@ android_test { "frameworks-base-testutils", "mockito-target-minus-junit4", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", } diff --git a/core/tests/packagemonitortests/Android.bp b/core/tests/packagemonitortests/Android.bp index b08850e90d28..c3b084e4368e 100644 --- a/core/tests/packagemonitortests/Android.bp +++ b/core/tests/packagemonitortests/Android.bp @@ -34,7 +34,7 @@ android_test { "mockito-target-minus-junit4", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], @@ -52,7 +52,7 @@ android_test { "compatibility-device-util-axt", "frameworks-base-testutils", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], diff --git a/core/tests/privacytests/Android.bp b/core/tests/privacytests/Android.bp index 4e24cd5d91cb..ac9cede84483 100644 --- a/core/tests/privacytests/Android.bp +++ b/core/tests/privacytests/Android.bp @@ -16,7 +16,7 @@ android_test { "androidx.test.rules", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], diff --git a/core/tests/screenshothelpertests/Android.bp b/core/tests/screenshothelpertests/Android.bp index 3c71e6e4247b..49c3ee94bfd0 100644 --- a/core/tests/screenshothelpertests/Android.bp +++ b/core/tests/screenshothelpertests/Android.bp @@ -25,9 +25,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], platform_apis: true, diff --git a/core/tests/systemproperties/Android.bp b/core/tests/systemproperties/Android.bp index ed52cccfb9b9..ed99a1f5cc4a 100644 --- a/core/tests/systemproperties/Android.bp +++ b/core/tests/systemproperties/Android.bp @@ -20,8 +20,8 @@ android_test { "ravenwood-junit", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], platform_apis: true, certificate: "platform", @@ -37,8 +37,8 @@ android_ravenwood_test { "ravenwood-junit", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], srcs: [ "src/**/*.java", diff --git a/core/tests/systemproperties/src/android/os/SystemPropertiesTest.java b/core/tests/systemproperties/src/android/os/SystemPropertiesTest.java index d98120f535d8..75aca1b8820c 100644 --- a/core/tests/systemproperties/src/android/os/SystemPropertiesTest.java +++ b/core/tests/systemproperties/src/android/os/SystemPropertiesTest.java @@ -23,11 +23,10 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import android.platform.test.ravenwood.RavenwoodRule; +import android.platform.test.ravenwood.RavenwoodConfig; import androidx.test.filters.SmallTest; -import org.junit.Rule; import org.junit.Test; import java.util.Objects; @@ -35,17 +34,19 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; public class SystemPropertiesTest { - @Rule - public final RavenwoodRule mRavenwood = new RavenwoodRule.Builder() + private static final String KEY = "sys.testkey"; + private static final String UNSET_KEY = "Aiw7woh6ie4toh7W"; + private static final String PERSIST_KEY = "persist.sys.testkey"; + private static final String NONEXIST_KEY = "doesnotexist_2341431"; + + @RavenwoodConfig.Config + public static final RavenwoodConfig mRavenwood = new RavenwoodConfig.Builder() .setSystemPropertyMutable(KEY, null) .setSystemPropertyMutable(UNSET_KEY, null) .setSystemPropertyMutable(PERSIST_KEY, null) + .setSystemPropertyImmutable(NONEXIST_KEY, null) .build(); - private static final String KEY = "sys.testkey"; - private static final String UNSET_KEY = "Aiw7woh6ie4toh7W"; - private static final String PERSIST_KEY = "persist.sys.testkey"; - @Test @SmallTest public void testStressPersistPropertyConsistency() throws Exception { @@ -117,7 +118,7 @@ public class SystemPropertiesTest { @SmallTest public void testHandle() throws Exception { String value; - SystemProperties.Handle handle = SystemProperties.find("doesnotexist_2341431"); + SystemProperties.Handle handle = SystemProperties.find(NONEXIST_KEY); assertNull(handle); SystemProperties.set(KEY, "abc"); handle = SystemProperties.find(KEY); diff --git a/core/tests/timetests/Android.bp b/core/tests/timetests/Android.bp index 51181a8a7b13..04bbe692e488 100644 --- a/core/tests/timetests/Android.bp +++ b/core/tests/timetests/Android.bp @@ -19,7 +19,21 @@ android_test { "platform-test-annotations", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], certificate: "platform", test_suites: ["device-tests"], } + +test_module_config { + name: "FrameworksTimeCoreTests_android_app", + base: "FrameworksTimeCoreTests", + test_suites: ["device-tests"], + include_filters: ["android.app."], +} + +test_module_config { + name: "FrameworksTimeCoreTests_android_service", + base: "FrameworksTimeCoreTests", + test_suites: ["device-tests"], + include_filters: ["android.service."], +} diff --git a/core/tests/utillib/Android.bp b/core/tests/utillib/Android.bp index 1d5c16c7a536..b6f046bd12d5 100644 --- a/core/tests/utillib/Android.bp +++ b/core/tests/utillib/Android.bp @@ -28,5 +28,5 @@ java_library { srcs: ["**/*.java"], static_libs: ["junit"], - libs: ["android.test.base"], + libs: ["android.test.base.stubs"], } diff --git a/core/tests/utiltests/Android.bp b/core/tests/utiltests/Android.bp index f5563a710563..7cf49ab5c376 100644 --- a/core/tests/utiltests/Android.bp +++ b/core/tests/utiltests/Android.bp @@ -39,9 +39,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], platform_apis: true, @@ -55,13 +55,13 @@ android_test { android_ravenwood_test { name: "FrameworksUtilTestsRavenwood", libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], static_libs: [ "androidx.annotation_annotation", "androidx.test.rules", "frameworks-base-testutils", - "servicestests-utils", + "servicestests-utils-ravenwood", ], srcs: [ "src/android/util/IRemoteMemoryIntArray.aidl", diff --git a/core/tests/vibrator/Android.bp b/core/tests/vibrator/Android.bp index 3ebe150acd24..a9d30da6b364 100644 --- a/core/tests/vibrator/Android.bp +++ b/core/tests/vibrator/Android.bp @@ -24,9 +24,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs", + "android.test.base.stubs", + "android.test.mock.stubs", "framework", "framework-res", ], diff --git a/core/tests/vibrator/TEST_MAPPING b/core/tests/vibrator/TEST_MAPPING index 54a5ff1d675d..d91b883b873e 100644 --- a/core/tests/vibrator/TEST_MAPPING +++ b/core/tests/vibrator/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksVibratorCoreTests", - "options": [ - {"exclude-annotation": "androidx.test.filters.LargeTest"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksVibratorCoreTests" } ], "postsubmit": [ diff --git a/core/xsd/vts/Android.bp b/core/xsd/vts/Android.bp index 5d8407f584bc..239eed0c44f0 100644 --- a/core/xsd/vts/Android.bp +++ b/core/xsd/vts/Android.bp @@ -15,6 +15,7 @@ // package { + default_team: "trendy_team_android_kernel", // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" diff --git a/data/etc/com.android.systemui.xml b/data/etc/com.android.systemui.xml index 66b47dae1b3e..a115c659d85a 100644 --- a/data/etc/com.android.systemui.xml +++ b/data/etc/com.android.systemui.xml @@ -40,6 +40,7 @@ <permission name="android.permission.MASTER_CLEAR"/> <permission name="android.permission.MEDIA_CONTENT_CONTROL"/> <permission name="android.permission.MODIFY_AUDIO_ROUTING" /> + <permission name="android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED" /> <permission name="android.permission.MODIFY_DAY_NIGHT_MODE"/> <permission name="android.permission.MODIFY_PHONE_STATE"/> <permission name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> diff --git a/data/etc/privapp-permissions-platform.xml b/data/etc/privapp-permissions-platform.xml index 5d4139e4be8c..b8bed92c7baa 100644 --- a/data/etc/privapp-permissions-platform.xml +++ b/data/etc/privapp-permissions-platform.xml @@ -505,6 +505,7 @@ applications that come with the platform <permission name="android.permission.RENOUNCE_PERMISSIONS" /> <permission name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS" /> <permission name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE" /> + <permission name="android.permission.READ_DROPBOX_DATA" /> <permission name="android.permission.READ_LOGS" /> <permission name="android.permission.BRIGHTNESS_SLIDER_USAGE" /> <permission name="android.permission.ACCESS_AMBIENT_LIGHT_STATS" /> @@ -579,6 +580,8 @@ applications that come with the platform <permission name="android.permission.PREPARE_FACTORY_RESET" /> <!-- Permission required for CTS test - FileIntegrityManagerTest --> <permission name="android.permission.SETUP_FSVERITY" /> + <!-- Permission required for CTS test - CtsNfcTestCases --> + <permission name="android.permission.NFC_SET_CONTROLLER_ALWAYS_ON" /> </privapp-permissions> <privapp-permissions package="com.android.statementservice"> diff --git a/data/keyboards/Vendor_054c_Product_05c4.idc b/data/keyboards/Vendor_054c_Product_05c4.idc index 2da622745baf..45b5207c6730 100644 --- a/data/keyboards/Vendor_054c_Product_05c4.idc +++ b/data/keyboards/Vendor_054c_Product_05c4.idc @@ -51,7 +51,7 @@ sensor.gyroscope.power = 0.8 # fingers, it prevents tapping to click because it thinks the finger's moving # too fast. # -# Since this touchpad doesn't seem to have to drumroll issues, we can safely +# Since this touchpad doesn't seem to have drumroll issues, we can safely # disable drumroll detection. gestureProp.Drumroll_Suppression_Enable = 0 @@ -60,3 +60,11 @@ gestureProp.Drumroll_Suppression_Enable = 0 # from the palm classifier to increase the usable area of the pad. gestureProp.Palm_Edge_Zone_Width = 0 gestureProp.Tap_Exclusion_Border_Width = 0 + +# Touchpad is small, scale up the pointer movements to make it more practical +# to use. +gestureProp.Point_X_Out_Scale = 2.5 +gestureProp.Point_Y_Out_Scale = 2.5 + +# TODO(b/351326684): Ideally "Scroll X Out Scale" and "Scroll Y Out Scale" +# should be adjusted as well. Currently not supported in IDC files. diff --git a/data/keyboards/Vendor_054c_Product_09cc.idc b/data/keyboards/Vendor_054c_Product_09cc.idc index 2a1a4fc62b24..45b5207c6730 100644 --- a/data/keyboards/Vendor_054c_Product_09cc.idc +++ b/data/keyboards/Vendor_054c_Product_09cc.idc @@ -60,3 +60,11 @@ gestureProp.Drumroll_Suppression_Enable = 0 # from the palm classifier to increase the usable area of the pad. gestureProp.Palm_Edge_Zone_Width = 0 gestureProp.Tap_Exclusion_Border_Width = 0 + +# Touchpad is small, scale up the pointer movements to make it more practical +# to use. +gestureProp.Point_X_Out_Scale = 2.5 +gestureProp.Point_Y_Out_Scale = 2.5 + +# TODO(b/351326684): Ideally "Scroll X Out Scale" and "Scroll Y Out Scale" +# should be adjusted as well. Currently not supported in IDC files. diff --git a/data/keyboards/Vendor_054c_Product_0ce6.idc b/data/keyboards/Vendor_054c_Product_0ce6.idc new file mode 100644 index 000000000000..48027e715649 --- /dev/null +++ b/data/keyboards/Vendor_054c_Product_0ce6.idc @@ -0,0 +1,31 @@ +# Copyright 2024 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. + +# +# Sony Playstation(R) DualSense 5 Controller +# + +## Touchpad ## + +# Because of the way this touchpad is positioned, touches around the edges are +# no more likely to be palms than ones in the middle, so remove the edge zones +# from the palm classifier to increase the usable area of the pad. +gestureProp.Palm_Edge_Zone_Width = 0 +gestureProp.Tap_Exclusion_Border_Width = 0 + +gestureProp.Point_X_Out_Scale = 2.0 +gestureProp.Point_Y_Out_Scale = 2.0 + +# TODO(b/351326684): Ideally "Scroll X Out Scale" and "Scroll Y Out Scale" +# should be adjusted as well. Currently not supported in IDC files. diff --git a/data/keyboards/Vendor_054c_Product_0df2.idc b/data/keyboards/Vendor_054c_Product_0df2.idc new file mode 100644 index 000000000000..4bcf0bef458a --- /dev/null +++ b/data/keyboards/Vendor_054c_Product_0df2.idc @@ -0,0 +1,31 @@ +# Copyright 2024 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. + +# +# Sony Playstation(R) DualSense Edge 5 Controller +# + +## Touchpad ## + +# Because of the way this touchpad is positioned, touches around the edges are +# no more likely to be palms than ones in the middle, so remove the edge zones +# from the palm classifier to increase the usable area of the pad. +gestureProp.Palm_Edge_Zone_Width = 0 +gestureProp.Tap_Exclusion_Border_Width = 0 + +gestureProp.Point_X_Out_Scale = 2.0 +gestureProp.Point_Y_Out_Scale = 2.0 + +# TODO(b/351326684): Ideally "Scroll X Out Scale" and "Scroll Y Out Scale" +# should be adjusted as well. Currently not supported in IDC files. diff --git a/errorprone/Android.bp b/errorprone/Android.bp index c1d2235e3324..b559a15c3a60 100644 --- a/errorprone/Android.bp +++ b/errorprone/Android.bp @@ -22,6 +22,7 @@ java_library_host { static_libs: [ "annotations", + "jsr305", "framework-annotations-lib", "//external/error_prone:error_prone_core", ], diff --git a/errorprone/OWNERS b/errorprone/OWNERS index bddbdb364683..aa8c126a32e1 100644 --- a/errorprone/OWNERS +++ b/errorprone/OWNERS @@ -1,2 +1 @@ -jsharkey@android.com -jsharkey@google.com +colefaust@google.com diff --git a/errorprone/java/com/google/errorprone/bugpatterns/android/HideInCommentsChecker.java b/errorprone/java/com/google/errorprone/bugpatterns/android/HideInCommentsChecker.java index 8dc9579e6b52..6d5e44844a83 100644 --- a/errorprone/java/com/google/errorprone/bugpatterns/android/HideInCommentsChecker.java +++ b/errorprone/java/com/google/errorprone/bugpatterns/android/HideInCommentsChecker.java @@ -29,6 +29,7 @@ import com.google.errorprone.bugpatterns.BugChecker; import com.google.errorprone.fixes.SuggestedFix; import com.google.errorprone.matchers.Description; import com.google.errorprone.util.ASTHelpers; +import com.google.errorprone.util.ErrorProneComment; import com.google.errorprone.util.ErrorProneToken; import com.google.errorprone.util.ErrorProneTokens; import com.sun.source.tree.ClassTree; @@ -37,7 +38,6 @@ import com.sun.source.tree.MethodTree; import com.sun.source.tree.NewClassTree; import com.sun.source.tree.Tree; import com.sun.source.tree.VariableTree; -import com.sun.tools.javac.parser.Tokens; import java.util.HashMap; import java.util.Map; @@ -66,7 +66,7 @@ public class HideInCommentsChecker extends BugChecker implements final Map<Integer, Tree> javadocableTrees = findJavadocableTrees(tree, state); final String sourceCode = state.getSourceCode().toString(); for (ErrorProneToken token : ErrorProneTokens.getTokens(sourceCode, state.context)) { - for (Tokens.Comment comment : token.comments()) { + for (ErrorProneComment comment : token.comments()) { if (!javadocableTrees.containsKey(token.pos())) { continue; } @@ -81,7 +81,7 @@ public class HideInCommentsChecker extends BugChecker implements return NO_MATCH; } - private static Optional<SuggestedFix> generateFix(Tokens.Comment comment) { + private static Optional<SuggestedFix> generateFix(ErrorProneComment comment) { final String text = comment.getText(); if (text.startsWith("/**")) { return Optional.empty(); diff --git a/errorprone/java/com/google/errorprone/bugpatterns/android/RequiresPermissionChecker.java b/errorprone/java/com/google/errorprone/bugpatterns/android/RequiresPermissionChecker.java index 7c7cb18afc4d..af26bd0a3404 100644 --- a/errorprone/java/com/google/errorprone/bugpatterns/android/RequiresPermissionChecker.java +++ b/errorprone/java/com/google/errorprone/bugpatterns/android/RequiresPermissionChecker.java @@ -55,9 +55,9 @@ import com.sun.source.util.TreeScanner; import com.sun.tools.javac.code.Symbol; import com.sun.tools.javac.code.Symbol.ClassSymbol; import com.sun.tools.javac.code.Symbol.MethodSymbol; -import com.sun.tools.javac.code.Symbol.VarSymbol; import com.sun.tools.javac.code.Type; import com.sun.tools.javac.code.Type.ClassType; +import com.sun.tools.javac.tree.JCTree.JCNewClass; import java.util.ArrayList; import java.util.Arrays; @@ -67,7 +67,6 @@ import java.util.List; import java.util.Optional; import java.util.Set; import java.util.concurrent.atomic.AtomicReference; -import java.util.function.Predicate; import java.util.regex.Pattern; import javax.lang.model.element.Name; @@ -125,10 +124,12 @@ public final class RequiresPermissionChecker extends BugChecker instanceMethod() .onDescendantOf("android.content.Context") .withNameMatching(Pattern.compile("^send(Ordered|Sticky)?Broadcast.*$"))); - private static final Matcher<ExpressionTree> SEND_PENDING_INTENT = methodInvocation( - instanceMethod() - .onDescendantOf("android.app.PendingIntent") - .named("send")); + private static final Matcher<ExpressionTree> SEND_BROADCAST_AS_USER = + methodInvocation( + instanceMethod() + .onDescendantOf("android.content.Context") + .withNameMatching( + Pattern.compile("^send(Ordered|Sticky)?Broadcast.*AsUser.*$"))); private static final Matcher<ExpressionTree> INTENT_SET_ACTION = methodInvocation( instanceMethod().onDescendantOf("android.content.Intent").named("setAction")); @@ -306,18 +307,6 @@ public final class RequiresPermissionChecker extends BugChecker } } - private static ExpressionTree findArgumentByParameterName(MethodInvocationTree tree, - Predicate<String> paramName) { - final MethodSymbol sym = ASTHelpers.getSymbol(tree); - final List<VarSymbol> params = sym.getParameters(); - for (int i = 0; i < params.size(); i++) { - if (paramName.test(params.get(i).name.toString())) { - return tree.getArguments().get(i); - } - } - return null; - } - private static Name resolveName(ExpressionTree tree) { if (tree instanceof IdentifierTree) { return ((IdentifierTree) tree).getName(); @@ -345,76 +334,85 @@ public final class RequiresPermissionChecker extends BugChecker private static ParsedRequiresPermission parseBroadcastSourceRequiresPermission( MethodInvocationTree methodTree, VisitorState state) { - final ExpressionTree arg = findArgumentByParameterName(methodTree, - (name) -> name.toLowerCase().contains("intent")); - if (arg instanceof IdentifierTree) { - final Name argName = ((IdentifierTree) arg).getName(); - final MethodTree method = state.findEnclosing(MethodTree.class); - final AtomicReference<ParsedRequiresPermission> res = new AtomicReference<>(); - method.accept(new TreeScanner<Void, Void>() { - private ParsedRequiresPermission last; - - @Override - public Void visitMethodInvocation(MethodInvocationTree tree, Void param) { - if (Objects.equal(methodTree, tree)) { - res.set(last); - } else { - final Name name = resolveName(tree.getMethodSelect()); - if (Objects.equal(argName, name) - && INTENT_SET_ACTION.matches(tree, state)) { - last = parseIntentAction(tree); + if (methodTree.getArguments().size() < 1) { + return null; + } + final ExpressionTree arg = methodTree.getArguments().get(0); + if (!(arg instanceof IdentifierTree)) { + return null; + } + final Name argName = ((IdentifierTree) arg).getName(); + final MethodTree method = state.findEnclosing(MethodTree.class); + final AtomicReference<ParsedRequiresPermission> res = new AtomicReference<>(); + method.accept(new TreeScanner<Void, Void>() { + private ParsedRequiresPermission mLast; + + @Override + public Void visitMethodInvocation(MethodInvocationTree tree, Void param) { + if (Objects.equal(methodTree, tree)) { + res.set(mLast); + } else { + final Name name = resolveName(tree.getMethodSelect()); + if (Objects.equal(argName, name) && INTENT_SET_ACTION.matches(tree, state)) { + mLast = parseIntentAction(tree); + } else if (name == null && tree.getMethodSelect() instanceof MemberSelectTree) { + ExpressionTree innerTree = + ((MemberSelectTree) tree.getMethodSelect()).getExpression(); + if (innerTree instanceof JCNewClass) { + mLast = parseIntentAction((NewClassTree) innerTree); } } - return super.visitMethodInvocation(tree, param); } + return super.visitMethodInvocation(tree, param); + } - @Override - public Void visitAssignment(AssignmentTree tree, Void param) { - final Name name = resolveName(tree.getVariable()); - final Tree init = tree.getExpression(); - if (Objects.equal(argName, name) - && init instanceof NewClassTree) { - last = parseIntentAction((NewClassTree) init); - } - return super.visitAssignment(tree, param); + @Override + public Void visitAssignment(AssignmentTree tree, Void param) { + final Name name = resolveName(tree.getVariable()); + final Tree init = tree.getExpression(); + if (Objects.equal(argName, name) && init instanceof NewClassTree) { + mLast = parseIntentAction((NewClassTree) init); } + return super.visitAssignment(tree, param); + } - @Override - public Void visitVariable(VariableTree tree, Void param) { - final Name name = tree.getName(); - final ExpressionTree init = tree.getInitializer(); - if (Objects.equal(argName, name) - && init instanceof NewClassTree) { - last = parseIntentAction((NewClassTree) init); - } - return super.visitVariable(tree, param); + @Override + public Void visitVariable(VariableTree tree, Void param) { + final Name name = tree.getName(); + final ExpressionTree init = tree.getInitializer(); + if (Objects.equal(argName, name) && init instanceof NewClassTree) { + mLast = parseIntentAction((NewClassTree) init); } - }, null); - return res.get(); - } - return null; + return super.visitVariable(tree, param); + } + }, null); + return res.get(); } private static ParsedRequiresPermission parseBroadcastTargetRequiresPermission( MethodInvocationTree tree, VisitorState state) { - final ExpressionTree arg = findArgumentByParameterName(tree, - (name) -> name.toLowerCase().contains("permission")); final ParsedRequiresPermission res = new ParsedRequiresPermission(); - if (arg != null) { - arg.accept(new TreeScanner<Void, Void>() { - @Override - public Void visitIdentifier(IdentifierTree tree, Void param) { - res.addConstValue(tree); - return super.visitIdentifier(tree, param); - } - - @Override - public Void visitMemberSelect(MemberSelectTree tree, Void param) { - res.addConstValue(tree); - return super.visitMemberSelect(tree, param); - } - }, null); + int permission_position = 1; + if (SEND_BROADCAST_AS_USER.matches(tree, state)) { + permission_position = 2; } + if (tree.getArguments().size() < permission_position + 1) { + return res; + } + final ExpressionTree arg = tree.getArguments().get(permission_position); + arg.accept(new TreeScanner<Void, Void>() { + @Override + public Void visitIdentifier(IdentifierTree tree, Void param) { + res.addConstValue(tree); + return super.visitIdentifier(tree, param); + } + + @Override + public Void visitMemberSelect(MemberSelectTree tree, Void param) { + res.addConstValue(tree); + return super.visitMemberSelect(tree, param); + } + }, null); return res; } diff --git a/errorprone/tests/java/com/google/errorprone/bugpatterns/android/RequiresPermissionCheckerTest.java b/errorprone/tests/java/com/google/errorprone/bugpatterns/android/RequiresPermissionCheckerTest.java index e53372d97f3d..05fde7c4fe57 100644 --- a/errorprone/tests/java/com/google/errorprone/bugpatterns/android/RequiresPermissionCheckerTest.java +++ b/errorprone/tests/java/com/google/errorprone/bugpatterns/android/RequiresPermissionCheckerTest.java @@ -412,6 +412,19 @@ public class RequiresPermissionCheckerTest { " context.sendBroadcast(intent);", " }", " }", + " public void exampleWithChainedMethod(Context context) {", + " Intent intent = new Intent(FooManager.ACTION_RED)", + " .putExtra(\"foo\", 42);", + " context.sendBroadcast(intent, FooManager.PERMISSION_RED);", + " context.sendBroadcastWithMultiplePermissions(intent,", + " new String[] { FooManager.PERMISSION_RED });", + " }", + " public void exampleWithAsUser(Context context) {", + " Intent intent = new Intent(FooManager.ACTION_RED);", + " context.sendBroadcastAsUser(intent, 42, FooManager.PERMISSION_RED);", + " context.sendBroadcastAsUserMultiplePermissions(intent, 42,", + " new String[] { FooManager.PERMISSION_RED });", + " }", "}") .doTest(); } diff --git a/errorprone/tests/res/android/content/Context.java b/errorprone/tests/res/android/content/Context.java index efc4fb122435..9d622ffaf120 100644 --- a/errorprone/tests/res/android/content/Context.java +++ b/errorprone/tests/res/android/content/Context.java @@ -36,4 +36,15 @@ public class Context { public void sendBroadcastWithMultiplePermissions(Intent intent, String[] receiverPermissions) { throw new UnsupportedOperationException(); } + + /* Fake user type for test purposes */ + public void sendBroadcastAsUser(Intent intent, int user, String receiverPermission) { + throw new UnsupportedOperationException(); + } + + /* Fake user type for test purposes */ + public void sendBroadcastAsUserMultiplePermissions( + Intent intent, int user, String[] receiverPermissions) { + throw new UnsupportedOperationException(); + } } diff --git a/errorprone/tests/res/android/content/Intent.java b/errorprone/tests/res/android/content/Intent.java index 288396e60577..7ccea784754a 100644 --- a/errorprone/tests/res/android/content/Intent.java +++ b/errorprone/tests/res/android/content/Intent.java @@ -24,4 +24,8 @@ public class Intent { public Intent setAction(String action) { throw new UnsupportedOperationException(); } + + public Intent putExtra(String extra, int value) { + throw new UnsupportedOperationException(); + } } diff --git a/graphics/TEST_MAPPING b/graphics/TEST_MAPPING index 8afc30d54a53..75cb87c0e737 100644 --- a/graphics/TEST_MAPPING +++ b/graphics/TEST_MAPPING @@ -1,23 +1,10 @@ { "presubmit": [ { - "name": "CtsGraphicsTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsGraphicsTestCases" }, { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ], + "name": "CtsTextTestCases_text", "file_patterns": ["(/|^)Typeface\\.java", "(/|^)Paint\\.java"] } ] diff --git a/graphics/java/android/graphics/ImageFormat.java b/graphics/java/android/graphics/ImageFormat.java index cb3b64c3e6cd..93d94c9cd7eb 100644 --- a/graphics/java/android/graphics/ImageFormat.java +++ b/graphics/java/android/graphics/ImageFormat.java @@ -16,6 +16,7 @@ package android.graphics; +import android.annotation.FlaggedApi; import android.annotation.IntDef; import java.lang.annotation.Retention; @@ -41,6 +42,7 @@ public class ImageFormat { Y8, Y16, YCBCR_P010, + YCBCR_P210, NV16, NV21, YUY2, @@ -206,6 +208,26 @@ public class ImageFormat { public static final int YCBCR_P010 = 0x36; /** + * <p>Android YUV P210 format.</p> + * + * P210 is a 4:2:2 YCbCr semiplanar format comprised of a WxH Y plane + * followed by a WxH CbCr plane. Each sample is represented by a 16-bit + * little-endian value, with the lower 6 bits set to zero. + * + * <p>For example, the {@link android.media.Image} object can provide data + * in this format from a {@link android.hardware.camera2.CameraDevice} + * through a {@link android.media.ImageReader} object if this format is + * supported by {@link android.hardware.camera2.CameraDevice}.</p> + * + * @see android.media.Image + * @see android.media.ImageReader + * @see android.hardware.camera2.CameraDevice + * + */ + @FlaggedApi(android.media.codec.Flags.FLAG_P210_FORMAT_SUPPORT) + public static final int YCBCR_P210 = 0x3c; + + /** * YCbCr format, used for video. * * <p>For the {@link android.hardware.camera2} API, the {@link #YUV_420_888} format is @@ -849,6 +871,8 @@ public class ImageFormat { return 16; case YCBCR_P010: return 24; + case YCBCR_P210: + return 32; case RAW_DEPTH10: case RAW10: return 10; @@ -899,7 +923,9 @@ public class ImageFormat { case JPEG_R: return true; } - + if (android.media.codec.Flags.p210FormatSupport() && format == YCBCR_P210) { + return true; + } return false; } } diff --git a/graphics/java/android/graphics/OWNERS b/graphics/java/android/graphics/OWNERS index 9fa8f1b284bb..ef8d26cc65b9 100644 --- a/graphics/java/android/graphics/OWNERS +++ b/graphics/java/android/graphics/OWNERS @@ -11,3 +11,4 @@ per-file BLASTBufferQueue.java = file:/services/core/java/com/android/server/wm/ per-file FontFamily.java = file:fonts/OWNERS per-file FontListParser.java = file:fonts/OWNERS per-file Typeface.java = file:fonts/OWNERS +per-file Paint.java = file:fonts/OWNERS diff --git a/graphics/java/android/graphics/TEST_MAPPING b/graphics/java/android/graphics/TEST_MAPPING index df912222909a..5cc31ba840f7 100644 --- a/graphics/java/android/graphics/TEST_MAPPING +++ b/graphics/java/android/graphics/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ], + "name": "CtsTextTestCases_text", "file_patterns": [ "Typeface\\.java", "Paint\\.java", diff --git a/graphics/java/android/graphics/drawable/TEST_MAPPING b/graphics/java/android/graphics/drawable/TEST_MAPPING index 1018702e01c5..da0a721c89ef 100644 --- a/graphics/java/android/graphics/drawable/TEST_MAPPING +++ b/graphics/java/android/graphics/drawable/TEST_MAPPING @@ -1,24 +1,12 @@ { "presubmit": [ { - - "name": "CtsGraphicsTestCases", - "file_patterns": ["(/|^)Icon\\.java"], - "options" : [ - { - "include-filter": "android.graphics.drawable.cts.IconTest" - } - ] + "name": "CtsGraphicsTestCases_cts_icontest", + "file_patterns": ["(/|^)Icon\\.java"] }, { - "name": "FrameworksCoreTests", - "file_patterns": ["(/|^)Icon\\.java"], - "options" : [ - { - "include-filter": "android.graphics.drawable.IconTest" - } - ] + "name": "FrameworksCoreTests_drawable" } ] } diff --git a/graphics/java/android/graphics/fonts/TEST_MAPPING b/graphics/java/android/graphics/fonts/TEST_MAPPING index 99cbfe720c05..9f8a72cb5975 100644 --- a/graphics/java/android/graphics/fonts/TEST_MAPPING +++ b/graphics/java/android/graphics/fonts/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsTextTestCases_text" } ] } diff --git a/graphics/java/android/graphics/pdf/TEST_MAPPING b/graphics/java/android/graphics/pdf/TEST_MAPPING index afec35c76371..8720b9571474 100644 --- a/graphics/java/android/graphics/pdf/TEST_MAPPING +++ b/graphics/java/android/graphics/pdf/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsPdfTestCases", - "options": [ - { - "include-filter": "android.graphics.pdf.cts.PdfDocumentTest" - } - ] + "name": "CtsPdfTestCases_cts_pdfdocumenttest" } ] } diff --git a/graphics/java/android/graphics/text/TEST_MAPPING b/graphics/java/android/graphics/text/TEST_MAPPING index 99cbfe720c05..9f8a72cb5975 100644 --- a/graphics/java/android/graphics/text/TEST_MAPPING +++ b/graphics/java/android/graphics/text/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "CtsTextTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsTextTestCases_text" } ] } diff --git a/keystore/OWNERS b/keystore/OWNERS index 689177715711..ea783e7f0c06 100644 --- a/keystore/OWNERS +++ b/keystore/OWNERS @@ -1,5 +1,6 @@ # Bug component: 189335 +ascull@google.com drysdale@google.com -eranm@google.com jbires@google.com +sethmo@google.com swillden@google.com diff --git a/keystore/java/android/security/OWNERS b/keystore/java/android/security/OWNERS index ed30587418dd..43052866b938 100644 --- a/keystore/java/android/security/OWNERS +++ b/keystore/java/android/security/OWNERS @@ -1 +1,2 @@ -per-file *.java,*.aidl = eranm@google.com,pgrafov@google.com,rubinxu@google.com +per-file *.java,*.aidl = drysdale@google.com,jbires@google.com,pgrafov@google.com,rubinxu@google.com +per-file KeyStoreManager.java = mpgroover@google.com diff --git a/keystore/java/android/security/keystore/KeyProperties.java b/keystore/java/android/security/keystore/KeyProperties.java index 7f936f28ac4f..344d19af9173 100644 --- a/keystore/java/android/security/keystore/KeyProperties.java +++ b/keystore/java/android/security/keystore/KeyProperties.java @@ -23,9 +23,6 @@ import android.annotation.StringDef; import android.annotation.SystemApi; import android.os.Process; import android.security.keymaster.KeymasterDefs; - -import libcore.util.EmptyArray; - import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.security.spec.AlgorithmParameterSpec; @@ -33,6 +30,7 @@ import java.security.spec.ECParameterSpec; import java.security.spec.MGF1ParameterSpec; import java.util.Collection; import java.util.Locale; +import libcore.util.EmptyArray; /** * Properties of <a href="{@docRoot}training/articles/keystore.html">Android Keystore</a> keys. @@ -116,7 +114,7 @@ public abstract class KeyProperties { public static final int PURPOSE_AGREE_KEY = 1 << 6; /** - * Purpose of key: Signing attestaions. This purpose is incompatible with all others, meaning + * Purpose of key: Signing attestations. This purpose is incompatible with all others, meaning * that when generating a key with PURPOSE_ATTEST_KEY, no other purposes may be specified. In * addition, PURPOSE_ATTEST_KEY may not be specified for imported keys. */ diff --git a/keystore/java/android/security/keystore/KeyStoreManager.java b/keystore/java/android/security/keystore/KeyStoreManager.java new file mode 100644 index 000000000000..e6091c1da8a5 --- /dev/null +++ b/keystore/java/android/security/keystore/KeyStoreManager.java @@ -0,0 +1,327 @@ +/* + * Copyright (C) 2024 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.security.keystore; + +import android.annotation.FlaggedApi; +import android.annotation.NonNull; +import android.annotation.SystemService; +import android.content.Context; +import android.security.KeyStore2; +import android.security.KeyStoreException; +import android.security.keystore2.AndroidKeyStoreProvider; +import android.security.keystore2.AndroidKeyStorePublicKey; +import android.system.keystore2.Domain; +import android.system.keystore2.KeyDescriptor; +import android.system.keystore2.KeyPermission; +import android.util.Log; + +import com.android.internal.annotations.GuardedBy; + +import java.io.ByteArrayInputStream; +import java.security.Key; +import java.security.KeyPair; +import java.security.PublicKey; +import java.security.UnrecoverableKeyException; +import java.security.cert.CertificateFactory; +import java.security.cert.X509Certificate; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.List; + +/** + * This class provides methods for interacting with keys stored within the + * <a href="/privacy-and-security/keystore">Android Keystore</a>. + */ +@FlaggedApi(android.security.Flags.FLAG_KEYSTORE_GRANT_API) +@SystemService(Context.KEYSTORE_SERVICE) +public final class KeyStoreManager { + private static final String TAG = "KeyStoreManager"; + + private static final Object sInstanceLock = new Object(); + @GuardedBy("sInstanceLock") + private static KeyStoreManager sInstance; + + private final KeyStore2 mKeyStore2; + + /** + * Private constructor to ensure only a single instance is created. + */ + private KeyStoreManager() { + mKeyStore2 = KeyStore2.getInstance(); + } + + /** + * Returns the single instance of the {@code KeyStoreManager}. + * + * @hide + */ + public static KeyStoreManager getInstance() { + synchronized (sInstanceLock) { + if (sInstance == null) { + sInstance = new KeyStoreManager(); + } + return sInstance; + } + } + + /** + * Grants access to the key owned by the calling app stored under the specified {@code alias} + * to another app on the device with the provided {@code uid}. + * + * <p>This method supports granting access to instances of both {@link javax.crypto.SecretKey} + * and {@link java.security.PrivateKey}. The resulting ID will persist across reboots and can be + * used by the grantee app for the life of the key or until access is revoked with {@link + * #revokeKeyAccess(String, int)}. + * + * <p>If the provided {@code alias} does not correspond to a key in the Android KeyStore, then + * an {@link UnrecoverableKeyException} is thrown. + * + * @param alias the alias of the key to be granted to another app + * @param uid the uid of the app to which the key should be granted + * @return the ID of the granted key; this can be shared with the specified app, and that + * app can use {@link #getGrantedKeyFromId(long)} to access the key + * @throws UnrecoverableKeyException if the specified key cannot be recovered + * @throws KeyStoreException if an error is encountered when attempting to grant access to + * the key + * @see #getGrantedKeyFromId(long) + */ + public long grantKeyAccess(@NonNull String alias, int uid) + throws KeyStoreException, UnrecoverableKeyException { + KeyDescriptor keyDescriptor = createKeyDescriptorFromAlias(alias); + final int grantAccessVector = KeyPermission.USE | KeyPermission.GET_INFO; + // When a key is in the GRANT domain, the nspace field of the KeyDescriptor contains its ID. + KeyDescriptor result = null; + try { + result = mKeyStore2.grant(keyDescriptor, uid, grantAccessVector); + } catch (KeyStoreException e) { + // If the provided alias does not correspond to a valid key in the KeyStore, then throw + // an UnrecoverableKeyException to remain consistent with other APIs in this class. + if (e.getNumericErrorCode() == KeyStoreException.ERROR_KEY_DOES_NOT_EXIST) { + throw new UnrecoverableKeyException("No key found by the given alias"); + } + throw e; + } + if (result == null) { + Log.e(TAG, "Received a null KeyDescriptor from grant"); + throw new KeyStoreException(KeyStoreException.ERROR_INTERNAL_SYSTEM_ERROR, + "No ID was returned for the grant request for alias " + alias + " to uid " + + uid); + } else if (result.domain != Domain.GRANT) { + Log.e(TAG, "Received a result outside the grant domain: " + result.domain); + throw new KeyStoreException(KeyStoreException.ERROR_INTERNAL_SYSTEM_ERROR, + "Unable to obtain a grant ID for alias " + alias + " to uid " + uid); + } + return result.nspace; + } + + /** + * Revokes access to the key in the app's namespace stored under the specified {@code + * alias} that was previously granted to another app on the device with the provided + * {@code uid}. + * + * <p>If the provided {@code alias} does not correspond to a key in the Android KeyStore, then + * an {@link UnrecoverableKeyException} is thrown. + * + * @param alias the alias of the key to be revoked from another app + * @param uid the uid of the app from which the key access should be revoked + * @throws UnrecoverableKeyException if the specified key cannot be recovered + * @throws KeyStoreException if an error is encountered when attempting to revoke access + * to the key + */ + public void revokeKeyAccess(@NonNull String alias, int uid) + throws KeyStoreException, UnrecoverableKeyException { + KeyDescriptor keyDescriptor = createKeyDescriptorFromAlias(alias); + try { + mKeyStore2.ungrant(keyDescriptor, uid); + } catch (KeyStoreException e) { + // If the provided alias does not correspond to a valid key in the KeyStore, then throw + // an UnrecoverableKeyException to remain consistent with other APIs in this class. + if (e.getNumericErrorCode() == KeyStoreException.ERROR_KEY_DOES_NOT_EXIST) { + throw new UnrecoverableKeyException("No key found by the given alias"); + } + throw e; + } + } + + /** + * Returns the key with the specified {@code id} that was previously shared with the + * app. + * + * <p>This method can return instances of both {@link javax.crypto.SecretKey} and {@link + * java.security.PrivateKey}. If a key with the provide {@code id} has not been granted to the + * caller, then an {@link UnrecoverableKeyException} is thrown. + * + * @param id the ID of the key that was shared with the app + * @return the {@link Key} that was shared with the app + * @throws UnrecoverableKeyException if the specified key cannot be recovered + * @throws KeyPermanentlyInvalidatedException if the specified key was authorized to only + * be used if the user has been authenticated and a + * change has been made to the users + * lockscreen or biometric enrollment that + * permanently invalidates the key + * @see #grantKeyAccess(String, int) + */ + public @NonNull Key getGrantedKeyFromId(long id) + throws UnrecoverableKeyException, KeyPermanentlyInvalidatedException { + Key result = AndroidKeyStoreProvider.loadAndroidKeyStoreKeyFromKeystore(mKeyStore2, null, + id, Domain.GRANT); + if (result == null) { + throw new UnrecoverableKeyException("No key found by the given alias"); + } + return result; + } + + /** + * Returns a {@link KeyPair} containing the public and private key associated with + * the key that was previously shared with the app under the provided {@code id}. + * + * <p>If a {@link java.security.PrivateKey} has not been granted to the caller with the + * specified {@code id}, then an {@link UnrecoverableKeyException} is thrown. + * + * @param id the ID of the private key that was shared with the app + * @return a KeyPair containing the public and private key shared with the app + * @throws UnrecoverableKeyException if the specified key cannot be recovered + * @throws KeyPermanentlyInvalidatedException if the specified key was authorized to only + * be used if the user has been authenticated and a + * change has been made to the users + * lockscreen or biometric enrollment that + * permanently invalidates the key + */ + public @NonNull KeyPair getGrantedKeyPairFromId(long id) + throws UnrecoverableKeyException, KeyPermanentlyInvalidatedException { + KeyDescriptor keyDescriptor = createKeyDescriptorFromId(id, Domain.GRANT); + return AndroidKeyStoreProvider.loadAndroidKeyStoreKeyPairFromKeystore(mKeyStore2, + keyDescriptor); + } + + /** + * Returns a {@link List} of {@link X509Certificate} instances representing the certificate + * chain for the key that was previously shared with the app under the provided {@code id}. + * + * <p>If a {@link java.security.PrivateKey} has not been granted to the caller with the + * specified {@code id}, then an {@link UnrecoverableKeyException} is thrown. + * + * @param id the ID of the asymmetric key that was shared with the app + * @return a List of X509Certificates with the certificate at index 0 corresponding to + * the private key shared with the app + * @throws UnrecoverableKeyException if the specified key cannot be recovered + * @throws KeyPermanentlyInvalidatedException if the specified key was authorized to only + * be used if the user has been authenticated and a + * change has been made to the users + * lockscreen or biometric enrollment that + * permanently invalidates the key + * @see #grantKeyAccess(String, int) + */ + // Java APIs should prefer mutable collection return types with the exception being + // Collection.empty return types. + @SuppressWarnings("MixedMutabilityReturnType") + public @NonNull List<X509Certificate> getGrantedCertificateChainFromId(long id) + throws UnrecoverableKeyException, KeyPermanentlyInvalidatedException { + KeyDescriptor keyDescriptor = createKeyDescriptorFromId(id, Domain.GRANT); + KeyPair keyPair = AndroidKeyStoreProvider.loadAndroidKeyStoreKeyPairFromKeystore(mKeyStore2, + keyDescriptor); + PublicKey keyStoreKey = keyPair.getPublic(); + if (keyStoreKey instanceof AndroidKeyStorePublicKey) { + AndroidKeyStorePublicKey androidKeyStorePublicKey = + (AndroidKeyStorePublicKey) keyStoreKey; + byte[] certBytes = androidKeyStorePublicKey.getCertificate(); + X509Certificate cert = getCertificate(certBytes); + // If the leaf certificate is null, then a chain should not exist either + if (cert == null) { + return Collections.emptyList(); + } + List<X509Certificate> result = new ArrayList<>(); + result.add(cert); + byte[] certificateChain = androidKeyStorePublicKey.getCertificateChain(); + Collection<X509Certificate> certificates = getCertificates(certificateChain); + result.addAll(certificates); + return result; + } else { + Log.e(TAG, "keyStoreKey is not of the expected type: " + keyStoreKey); + } + return Collections.emptyList(); + } + + /** + * Returns an {@link X509Certificate} instance from the provided {@code certificate} byte + * encoding of the certificate, or null if the provided encoding is null. + */ + private static X509Certificate getCertificate(byte[] certificate) { + X509Certificate result = null; + if (certificate != null) { + try { + CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509"); + result = (X509Certificate) certificateFactory.generateCertificate( + new ByteArrayInputStream(certificate)); + } catch (Exception e) { + Log.e(TAG, "Caught an exception parsing the certificate: ", e); + } + } + return result; + } + + /** + * Returns a {@link Collection} of {@link X509Certificate} instances from the provided + * {@code certificateChain} byte encoding of the certificates, or null if the provided + * encoding is null. + */ + private static Collection<X509Certificate> getCertificates(byte[] certificateChain) { + if (certificateChain != null) { + try { + CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509"); + Collection<X509Certificate> certificates = + (Collection<X509Certificate>) certificateFactory.generateCertificates( + new ByteArrayInputStream(certificateChain)); + if (certificates == null) { + Log.e(TAG, "Received null certificates from a non-null certificateChain"); + return Collections.emptyList(); + } + return certificates; + } catch (Exception e) { + Log.e(TAG, "Caught an exception parsing the certs: ", e); + } + } + return Collections.emptyList(); + } + + /** + * Returns a new {@link KeyDescriptor} instance in the app domain / namespace with the {@code + * alias} set to the provided value. + */ + private static KeyDescriptor createKeyDescriptorFromAlias(String alias) { + KeyDescriptor keyDescriptor = new KeyDescriptor(); + keyDescriptor.domain = Domain.APP; + keyDescriptor.nspace = KeyProperties.NAMESPACE_APPLICATION; + keyDescriptor.alias = alias; + keyDescriptor.blob = null; + return keyDescriptor; + } + + /** + * Returns a new {@link KeyDescriptor} instance in the provided {@code domain} with the nspace + * field set to the provided {@code id}. + */ + private static KeyDescriptor createKeyDescriptorFromId(long id, int domain) { + KeyDescriptor keyDescriptor = new KeyDescriptor(); + keyDescriptor.domain = domain; + keyDescriptor.nspace = id; + keyDescriptor.alias = null; + keyDescriptor.blob = null; + return keyDescriptor; + } +} diff --git a/keystore/java/android/security/keystore2/AndroidKeyStoreProvider.java b/keystore/java/android/security/keystore2/AndroidKeyStoreProvider.java index 99100de12684..dcc8844b59bd 100644 --- a/keystore/java/android/security/keystore2/AndroidKeyStoreProvider.java +++ b/keystore/java/android/security/keystore2/AndroidKeyStoreProvider.java @@ -17,6 +17,7 @@ package android.security.keystore2; import android.annotation.NonNull; +import android.annotation.Nullable; import android.security.KeyStore2; import android.security.KeyStoreSecurityLevel; import android.security.keymaster.KeymasterDefs; @@ -335,11 +336,11 @@ public class AndroidKeyStoreProvider extends Provider { } /** - * Loads an an AndroidKeyStoreKey from the AndroidKeyStore backend. + * Loads an AndroidKeyStoreKey from the AndroidKeyStore backend. * * @param keyStore The keystore2 backend. * @param alias The alias of the key in the Keystore database. - * @param namespace The a Keystore namespace. This is used by system api only to request + * @param namespace The Keystore namespace. This is used by system api only to request * Android system specific keystore namespace, which can be configured * in the device's SEPolicy. Third party apps and most system components * set this parameter to -1 to indicate their application specific namespace. @@ -351,14 +352,40 @@ public class AndroidKeyStoreProvider extends Provider { public static AndroidKeyStoreKey loadAndroidKeyStoreKeyFromKeystore( @NonNull KeyStore2 keyStore, @NonNull String alias, int namespace) throws UnrecoverableKeyException, KeyPermanentlyInvalidatedException { - KeyDescriptor descriptor = new KeyDescriptor(); + int descriptorNamespace; + int descriptorDomain; if (namespace == KeyProperties.NAMESPACE_APPLICATION) { - descriptor.nspace = KeyProperties.NAMESPACE_APPLICATION; // ignored; - descriptor.domain = Domain.APP; + descriptorNamespace = KeyProperties.NAMESPACE_APPLICATION; // ignored; + descriptorDomain = Domain.APP; } else { - descriptor.nspace = namespace; - descriptor.domain = Domain.SELINUX; + descriptorNamespace = namespace; + descriptorDomain = Domain.SELINUX; } + return loadAndroidKeyStoreKeyFromKeystore(keyStore, alias, descriptorNamespace, + descriptorDomain); + } + + /** + * Loads an AndroidKeyStoreKey from the AndroidKeyStore backend. + * + * @param keyStore The keystore2 backend + * @param alias The alias of the key in the Keystore database + * @param namespace The Keystore namespace. This is used by system api only to request + * Android system specific keystore namespace, which can be configured + * in the device's SEPolicy. Third party apps and most system components + * set this parameter to -1 to indicate their application specific namespace. + * See <a href="https://source.android.com/security/keystore#access-control"> + * Keystore 2.0 access control</a> + * @param domain The Keystore domain + * @return an AndroidKeyStoreKey corresponding to the provided values for the KeyDescriptor + * @hide + */ + public static AndroidKeyStoreKey loadAndroidKeyStoreKeyFromKeystore(@NonNull KeyStore2 keyStore, + @Nullable String alias, long namespace, int domain) + throws UnrecoverableKeyException, KeyPermanentlyInvalidatedException { + KeyDescriptor descriptor = new KeyDescriptor(); + descriptor.nspace = namespace; + descriptor.domain = domain; descriptor.alias = alias; descriptor.blob = null; diff --git a/keystore/java/android/security/keystore2/AndroidKeyStorePublicKey.java b/keystore/java/android/security/keystore2/AndroidKeyStorePublicKey.java index 0b3be327b521..bcf619b66439 100644 --- a/keystore/java/android/security/keystore2/AndroidKeyStorePublicKey.java +++ b/keystore/java/android/security/keystore2/AndroidKeyStorePublicKey.java @@ -44,6 +44,22 @@ public abstract class AndroidKeyStorePublicKey extends AndroidKeyStoreKey implem mEncoded = x509EncodedForm; } + /** + * Returns the byte array encoding of the certificate corresponding to this public key. + * @hide + */ + public byte[] getCertificate() { + return mCertificate; + } + + /** + * Returns the byte array encoding of the certificate chain for this public key. + * @hide + */ + public byte[] getCertificateChain() { + return mCertificateChain; + } + abstract AndroidKeyStorePrivateKey getPrivateKey(); @Override diff --git a/keystore/tests/Android.bp b/keystore/tests/Android.bp index 7de45233494b..0dcf597644ee 100644 --- a/keystore/tests/Android.bp +++ b/keystore/tests/Android.bp @@ -31,6 +31,6 @@ android_test { "mockito-target-minus-junit4", ], platform_apis: true, - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], certificate: "platform", } diff --git a/keystore/tests/OWNERS b/keystore/tests/OWNERS index 86c31f403da0..0f94ddcee47f 100644 --- a/keystore/tests/OWNERS +++ b/keystore/tests/OWNERS @@ -1,4 +1,7 @@ +# Android HW Trust team +drysdale@google.com +jbires@google.com + # Android Enterprise security team -eranm@google.com pgrafov@google.com rubinxu@google.com diff --git a/libs/WindowManager/Jetpack/src/TEST_MAPPING b/libs/WindowManager/Jetpack/src/TEST_MAPPING index f8f64001dd24..600c79bb88a4 100644 --- a/libs/WindowManager/Jetpack/src/TEST_MAPPING +++ b/libs/WindowManager/Jetpack/src/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "WMJetpackUnitTests", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "WMJetpackUnitTests_Presubmit" }, { - "name": "CtsWindowManagerJetpackTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "CtsWindowManagerJetpackTestCases_Presubmit" } ], "imports": [ diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java index f78e2b5170fc..b850dbc24f25 100644 --- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java +++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java @@ -899,17 +899,27 @@ public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmen @GuardedBy("mLock") void updateContainersInTaskIfVisible(@NonNull WindowContainerTransaction wct, int taskId) { final TaskContainer taskContainer = getTaskContainer(taskId); - if (taskContainer != null && taskContainer.isVisible()) { + if (taskContainer == null) { + return; + } + + if (taskContainer.isVisible()) { updateContainersInTask(wct, taskContainer); + } else if (Flags.fixNoContainerUpdateWithoutResize()) { + // the TaskFragmentContainers need to be updated when the task becomes visible + taskContainer.mTaskFragmentContainersNeedsUpdate = true; } } @GuardedBy("mLock") private void updateContainersInTask(@NonNull WindowContainerTransaction wct, @NonNull TaskContainer taskContainer) { + taskContainer.mTaskFragmentContainersNeedsUpdate = false; + // Update all TaskFragments in the Task. Make a copy of the list since some may be // removed on updating. - final List<TaskFragmentContainer> containers = taskContainer.getTaskFragmentContainers(); + final List<TaskFragmentContainer> containers + = new ArrayList<>(taskContainer.getTaskFragmentContainers()); for (int i = containers.size() - 1; i >= 0; i--) { final TaskFragmentContainer container = containers.get(i); // Wait until onTaskFragmentAppeared to update new container. diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/TaskContainer.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/TaskContainer.java index ee00c4cd67eb..bf7ee27eddd2 100644 --- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/TaskContainer.java +++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/TaskContainer.java @@ -108,6 +108,12 @@ class TaskContainer { private boolean mPlaceholderRuleSuppressed; /** + * {@code true} if the TaskFragments in this Task needs to be updated next time the Task + * becomes visible. See {@link #shouldUpdateContainer(TaskFragmentParentInfo)} + */ + boolean mTaskFragmentContainersNeedsUpdate; + + /** * The {@link TaskContainer} constructor * * @param taskId The ID of the Task, which must match {@link Activity#getTaskId()} with @@ -185,7 +191,8 @@ class TaskContainer { // If the task properties equals regardless of starting position, don't // need to update the container. - return mInfo.getConfiguration().diffPublicOnly(configuration) != 0 + return mTaskFragmentContainersNeedsUpdate + || mInfo.getConfiguration().diffPublicOnly(configuration) != 0 || mInfo.getDisplayId() != info.getDisplayId(); } @@ -316,8 +323,16 @@ class TaskContainer { @Nullable TaskFragmentContainer getContainerWithActivity(@NonNull IBinder activityToken) { - return getContainer(container -> container.hasAppearedActivity(activityToken) - || container.hasPendingAppearedActivity(activityToken)); + // When the new activity is launched to the topmost TF because the source activity + // was in that TF, and the source activity is finished before resolving the new activity, + // we will try to see if the new activity match a rule with the split activities below. + // If matched, it can be reparented. + final TaskFragmentContainer taskFragmentContainer + = getContainer(container -> container.hasPendingAppearedActivity(activityToken)); + if (taskFragmentContainer != null) { + return taskFragmentContainer; + } + return getContainer(container -> container.hasAppearedActivity(activityToken)); } @Nullable diff --git a/libs/WindowManager/Jetpack/tests/unittest/Android.bp b/libs/WindowManager/Jetpack/tests/unittest/Android.bp index 61ea51a35f58..020da924c60d 100644 --- a/libs/WindowManager/Jetpack/tests/unittest/Android.bp +++ b/libs/WindowManager/Jetpack/tests/unittest/Android.bp @@ -46,9 +46,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], // These are not normally accessible from apps so they must be explicitly included. @@ -61,3 +61,10 @@ android_test { enabled: false, }, } + +test_module_config { + name: "WMJetpackUnitTests_Presubmit", + base: "WMJetpackUnitTests", + test_suites: ["device-tests"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/TaskFragmentContainerTest.java b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/TaskFragmentContainerTest.java index 7fab371cb790..bc4916a607a3 100644 --- a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/TaskFragmentContainerTest.java +++ b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/TaskFragmentContainerTest.java @@ -535,7 +535,8 @@ public class TaskFragmentContainerTest { // container1. container2.setInfo(mTransaction, mInfo); - assertTrue(container2.hasActivity(mActivity.getActivityToken())); + assertTrue(container1.hasActivity(mActivity.getActivityToken())); + assertFalse(container2.hasActivity(mActivity.getActivityToken())); // When the pending appeared record is removed from container1, we respect the appeared // record in container2. container1.removePendingAppearedActivity(mActivity.getActivityToken()); diff --git a/libs/WindowManager/Shell/Android.bp b/libs/WindowManager/Shell/Android.bp index 25d3067a34bc..4b0c7009eaa0 100644 --- a/libs/WindowManager/Shell/Android.bp +++ b/libs/WindowManager/Shell/Android.bp @@ -79,7 +79,7 @@ filegroup { path: "src", } -genrule { +java_genrule { name: "wm_shell_protolog_src", srcs: [ ":protolog-impl", @@ -99,7 +99,7 @@ genrule { out: ["wm_shell_protolog.srcjar"], } -genrule { +java_genrule { name: "generate-wm_shell_protolog.json", srcs: [ ":wm_shell_protolog-groups", @@ -116,7 +116,7 @@ genrule { out: ["wm_shell_protolog.json"], } -genrule { +java_genrule { name: "gen-wmshell.protolog.pb", srcs: [ ":wm_shell_protolog-groups", @@ -133,7 +133,7 @@ genrule { out: ["wmshell.protolog.pb"], } -genrule { +java_genrule { name: "protolog.json.gz", srcs: [":generate-wm_shell_protolog.json"], out: ["wmshell.protolog.json.gz"], diff --git a/libs/WindowManager/Shell/OWNERS b/libs/WindowManager/Shell/OWNERS index cb422eab372b..394093c6ab30 100644 --- a/libs/WindowManager/Shell/OWNERS +++ b/libs/WindowManager/Shell/OWNERS @@ -1,5 +1,7 @@ xutan@google.com +pbdr@google.com +pragyabajoria@google.com # Give submodule owners in shell resource approval -per-file res*/*/*.xml = atsjenk@google.com, hwwang@google.com, jorgegil@google.com, lbill@google.com, madym@google.com, vaniadesmonda@google.com, pbdr@google.com, tkachenkoi@google.com, mpodolian@google.com, liranb@google.com +per-file res*/*/*.xml = atsjenk@google.com, hwwang@google.com, jorgegil@google.com, lbill@google.com, madym@google.com, vaniadesmonda@google.com, pbdr@google.com, tkachenkoi@google.com, mpodolian@google.com, liranb@google.com, pragyabajoria@google.com, uysalorhan@google.com, gsennton@google.com, mattsziklay@google.com, mdehaini@google.com per-file res*/*/tv_*.xml = bronger@google.com diff --git a/libs/WindowManager/Shell/multivalentTests/Android.bp b/libs/WindowManager/Shell/multivalentTests/Android.bp index 1ad19c9f3033..ee0d5bbed324 100644 --- a/libs/WindowManager/Shell/multivalentTests/Android.bp +++ b/libs/WindowManager/Shell/multivalentTests/Android.bp @@ -77,8 +77,8 @@ android_test { "platform-test-rules", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ "libdexmakerjvmtiagent", diff --git a/libs/WindowManager/Shell/res/drawable/decor_back_button_dark.xml b/libs/WindowManager/Shell/res/drawable/decor_back_button_dark.xml index 5ecba380fb60..a36b21f0408c 100644 --- a/libs/WindowManager/Shell/res/drawable/decor_back_button_dark.xml +++ b/libs/WindowManager/Shell/res/drawable/decor_back_button_dark.xml @@ -15,6 +15,7 @@ --> <vector xmlns:android="http://schemas.android.com/apk/res/android" + android:autoMirrored="true" android:width="32.0dp" android:height="32.0dp" android:viewportWidth="32.0" diff --git a/libs/WindowManager/Shell/res/values-af/strings.xml b/libs/WindowManager/Shell/res/values-af/strings.xml index 1c8f5e60c5c9..e142d07fa841 100644 --- a/libs/WindowManager/Shell/res/values-af/strings.xml +++ b/libs/WindowManager/Shell/res/values-af/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Borrel"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Bestuur"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Borrel is toegemaak."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Borrels"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Wys borrels"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tik om hierdie app te herbegin vir ’n beter aansig"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Verander hierdie app se aspekverhouding in Instellings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Verander aspekverhouding"</string> diff --git a/libs/WindowManager/Shell/res/values-am/strings.xml b/libs/WindowManager/Shell/res/values-am/strings.xml index 81ab3ab15aad..d03a5ef42a4d 100644 --- a/libs/WindowManager/Shell/res/values-am/strings.xml +++ b/libs/WindowManager/Shell/res/values-am/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"አረፋዎች"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"አረፋዎችን አሳይ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ለተሻለ ዕይታ ይህን መተግበሪያ እንደገና ለመጀመር መታ ያድርጉ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"የዚህን መተግበሪያ ምጥጥነ ገፅታ በቅንብሮች ውስጥ ይለውጡ"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"የምጥጥነ ገፅታ ለውጥ"</string> diff --git a/libs/WindowManager/Shell/res/values-ar/strings.xml b/libs/WindowManager/Shell/res/values-ar/strings.xml index 3974c39d4803..2ff449bd781b 100644 --- a/libs/WindowManager/Shell/res/values-ar/strings.xml +++ b/libs/WindowManager/Shell/res/values-ar/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"الفقاعات"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"إظهار الفقاعات"</string> <string name="restart_button_description" msgid="4564728020654658478">"انقر لإعادة تشغيل هذا التطبيق للحصول على تجربة عرض أفضل."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"يمكنك تغيير نسبة العرض إلى الارتفاع لهذا التطبيق من خلال \"الإعدادات\"."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"تغيير نسبة العرض إلى الارتفاع"</string> diff --git a/libs/WindowManager/Shell/res/values-as/strings.xml b/libs/WindowManager/Shell/res/values-as/strings.xml index a1ce1b3b9513..04a3e5cdf90d 100644 --- a/libs/WindowManager/Shell/res/values-as/strings.xml +++ b/libs/WindowManager/Shell/res/values-as/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"বাবল"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"বাবল দেখুৱাওক"</string> <string name="restart_button_description" msgid="4564728020654658478">"উন্নত ভিউ পোৱাৰ বাবে এপ্টো ৰিষ্টাৰ্ট কৰিবলৈ টিপক"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ছেটিঙলৈ গৈ এই এপ্টোৰ আকাৰৰ অনুপাত সলনি কৰক"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"আকাৰৰ অনুপাত সলনি কৰক"</string> diff --git a/libs/WindowManager/Shell/res/values-az/strings.xml b/libs/WindowManager/Shell/res/values-az/strings.xml index 71dfe5ac6bed..0d233d72ea13 100644 --- a/libs/WindowManager/Shell/res/values-az/strings.xml +++ b/libs/WindowManager/Shell/res/values-az/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Qabarcıq"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"İdarə edin"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Qabarcıqdan imtina edilib."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Yumrucuq"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Yumrucuqları göstərin"</string> <string name="restart_button_description" msgid="4564728020654658478">"Yaxşı görünüş üçün toxunaraq bu tətbiqi yenidən başladın"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Ayarlarda bu tətbiqin tərəflər nisbətini dəyişin"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Tərəflər nisbətini dəyişin"</string> diff --git a/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml b/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml index f48360991d49..acb8b4f53689 100644 --- a/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml +++ b/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Oblačić"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Upravljajte"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Oblačić je odbačen."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Oblačići"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Prikaži oblačiće"</string> <string name="restart_button_description" msgid="4564728020654658478">"Dodirnite da biste restartovali ovu aplikaciju radi boljeg prikaza"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Promenite razmeru ove aplikacije u Podešavanjima"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Promeni razmeru"</string> diff --git a/libs/WindowManager/Shell/res/values-be/strings.xml b/libs/WindowManager/Shell/res/values-be/strings.xml index 532ecc64358f..234441639fb7 100644 --- a/libs/WindowManager/Shell/res/values-be/strings.xml +++ b/libs/WindowManager/Shell/res/values-be/strings.xml @@ -57,7 +57,7 @@ <string name="accessibility_action_start_one_handed" msgid="5070337354072861426">"Запусціць рэжым кіравання адной рукой"</string> <string name="accessibility_action_stop_one_handed" msgid="1369940261782179442">"Выйсці з рэжыму кіравання адной рукой"</string> <string name="bubbles_settings_button_description" msgid="1301286017420516912">"Налады ўсплывальных чатаў у праграме \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string> - <string name="bubble_overflow_button_content_description" msgid="8160974472718594382">"Дадатковае меню"</string> + <string name="bubble_overflow_button_content_description" msgid="8160974472718594382">"Меню з пашырэннем"</string> <string name="bubble_accessibility_action_add_back" msgid="1830101076853540953">"Зноў дадаць у стос"</string> <string name="bubble_content_description_single" msgid="8495748092720065813">"<xliff:g id="NOTIFICATION_TITLE">%1$s</xliff:g> ад праграмы \"<xliff:g id="APP_NAME">%2$s</xliff:g>\""</string> <string name="bubble_content_description_stack" msgid="8071515017164630429">"<xliff:g id="NOTIFICATION_TITLE">%1$s</xliff:g> ад праграмы \"<xliff:g id="APP_NAME">%2$s</xliff:g>\" і яшчэ <xliff:g id="BUBBLE_COUNT">%3$d</xliff:g>"</string> @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Успл. чаты"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Паказ усплывальных чатаў"</string> <string name="restart_button_description" msgid="4564728020654658478">"Націсніце, каб перазапусціць гэту праграму для зручнейшага прагляду"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Змяніць суадносіны бакоў для гэтай праграмы ў наладах"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Змяніць суадносіны бакоў"</string> diff --git a/libs/WindowManager/Shell/res/values-bg/strings.xml b/libs/WindowManager/Shell/res/values-bg/strings.xml index 8f828badcf47..2cb02fe5fdc2 100644 --- a/libs/WindowManager/Shell/res/values-bg/strings.xml +++ b/libs/WindowManager/Shell/res/values-bg/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Балончета"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Показване на балончетата"</string> <string name="restart_button_description" msgid="4564728020654658478">"Докоснете, за да рестартирате това приложение с цел по-добър изглед"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Променете съотношението на това приложение в „Настройки“"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Промяна на съотношението"</string> diff --git a/libs/WindowManager/Shell/res/values-bn/strings.xml b/libs/WindowManager/Shell/res/values-bn/strings.xml index e0a2ea824be0..c0aa94b5a576 100644 --- a/libs/WindowManager/Shell/res/values-bn/strings.xml +++ b/libs/WindowManager/Shell/res/values-bn/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"বাবল"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"বাবল দেখুন"</string> <string name="restart_button_description" msgid="4564728020654658478">"আরও ভাল ভিউয়ের জন্য এই অ্যাপ রিস্টার্ট করতে ট্যাপ করুন"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"সেটিংস থেকে এই অ্যাপের অ্যাস্পেক্ট রেশিও পরিবর্তন করুন"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"অ্যাস্পেক্ট রেশিও পরিবর্তন করুন"</string> diff --git a/libs/WindowManager/Shell/res/values-bs/strings.xml b/libs/WindowManager/Shell/res/values-bs/strings.xml index 41c72c1d3a03..784e1aa8128c 100644 --- a/libs/WindowManager/Shell/res/values-bs/strings.xml +++ b/libs/WindowManager/Shell/res/values-bs/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Oblačić"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Upravljaj"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Oblačić je odbačen."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Oblačići"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Prikaz oblačića"</string> <string name="restart_button_description" msgid="4564728020654658478">"Dodirnite da ponovo pokrenete ovu aplikaciju radi boljeg prikaza"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Promijenite format slike aplikacije u Postavkama"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Promijenite format slike"</string> diff --git a/libs/WindowManager/Shell/res/values-ca/strings.xml b/libs/WindowManager/Shell/res/values-ca/strings.xml index 679227248ea5..03dca2adc747 100644 --- a/libs/WindowManager/Shell/res/values-ca/strings.xml +++ b/libs/WindowManager/Shell/res/values-ca/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bombolla"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gestiona"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"La bombolla s\'ha ignorat."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bombolles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostra les bombolles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toca per reiniciar aquesta aplicació i obtenir una millor visualització"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Canvia la relació d\'aspecte d\'aquesta aplicació a Configuració"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Canvia la relació d\'aspecte"</string> diff --git a/libs/WindowManager/Shell/res/values-cs/strings.xml b/libs/WindowManager/Shell/res/values-cs/strings.xml index 150a6e642529..6ebdd8c70228 100644 --- a/libs/WindowManager/Shell/res/values-cs/strings.xml +++ b/libs/WindowManager/Shell/res/values-cs/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Bubliny"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Zobrazovat bubliny"</string> <string name="restart_button_description" msgid="4564728020654658478">"Klepnutím tuto aplikaci restartujete kvůli lepšímu zobrazení"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Změnit v Nastavení poměr stran této aplikace"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Změnit poměr stran"</string> diff --git a/libs/WindowManager/Shell/res/values-da/strings.xml b/libs/WindowManager/Shell/res/values-da/strings.xml index 8878910a4d2c..78f1c246d90b 100644 --- a/libs/WindowManager/Shell/res/values-da/strings.xml +++ b/libs/WindowManager/Shell/res/values-da/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Boble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Administrer"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Boblen blev lukket."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bobler"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Vis bobler"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tryk for at genstarte denne app, så visningen forbedres"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Skift denne apps billedformat i Indstillinger"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Skift billedformat"</string> diff --git a/libs/WindowManager/Shell/res/values-de/strings.xml b/libs/WindowManager/Shell/res/values-de/strings.xml index 7b91559e9179..5704d4f776c8 100644 --- a/libs/WindowManager/Shell/res/values-de/strings.xml +++ b/libs/WindowManager/Shell/res/values-de/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Verwalten"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble verworfen."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Bubbles anzeigen"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tippen, um diese App neu zu starten und die Ansicht zu verbessern"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Seitenverhältnis der App in den Einstellungen ändern"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Seitenverhältnis ändern"</string> diff --git a/libs/WindowManager/Shell/res/values-el/strings.xml b/libs/WindowManager/Shell/res/values-el/strings.xml index 14e5e2f87ab8..0db71fae0b83 100644 --- a/libs/WindowManager/Shell/res/values-el/strings.xml +++ b/libs/WindowManager/Shell/res/values-el/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Συννεφάκια"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Εμφάνιση συννεφακίων"</string> <string name="restart_button_description" msgid="4564728020654658478">"Πατήστε για να επανεκκινήσετε αυτή την εφαρμογή για καλύτερη προβολή"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Αλλάξτε τον λόγο διαστάσεων αυτής της εφαρμογής στις Ρυθμίσεις"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Αλλαγή λόγου διαστάσεων"</string> diff --git a/libs/WindowManager/Shell/res/values-en-rAU/strings.xml b/libs/WindowManager/Shell/res/values-en-rAU/strings.xml index 7427b62679be..ec477128ac8e 100644 --- a/libs/WindowManager/Shell/res/values-en-rAU/strings.xml +++ b/libs/WindowManager/Shell/res/values-en-rAU/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Manage"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble dismissed."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Show bubbles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tap to restart this app for a better view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Change this app\'s aspect ratio in Settings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Change aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-en-rCA/strings.xml b/libs/WindowManager/Shell/res/values-en-rCA/strings.xml index cb9ee4f6b6b3..d7e23fd8dfd8 100644 --- a/libs/WindowManager/Shell/res/values-en-rCA/strings.xml +++ b/libs/WindowManager/Shell/res/values-en-rCA/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Manage"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble dismissed."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Show Bubbles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tap to restart this app for a better view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Change this app\'s aspect ratio in Settings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Change aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-en-rGB/strings.xml b/libs/WindowManager/Shell/res/values-en-rGB/strings.xml index 7427b62679be..ec477128ac8e 100644 --- a/libs/WindowManager/Shell/res/values-en-rGB/strings.xml +++ b/libs/WindowManager/Shell/res/values-en-rGB/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Manage"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble dismissed."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Show bubbles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tap to restart this app for a better view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Change this app\'s aspect ratio in Settings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Change aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-en-rIN/strings.xml b/libs/WindowManager/Shell/res/values-en-rIN/strings.xml index 7427b62679be..ec477128ac8e 100644 --- a/libs/WindowManager/Shell/res/values-en-rIN/strings.xml +++ b/libs/WindowManager/Shell/res/values-en-rIN/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Manage"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble dismissed."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Show bubbles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tap to restart this app for a better view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Change this app\'s aspect ratio in Settings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Change aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-en-rXC/strings.xml b/libs/WindowManager/Shell/res/values-en-rXC/strings.xml index 8498807f9fdb..1da8c275ce54 100644 --- a/libs/WindowManager/Shell/res/values-en-rXC/strings.xml +++ b/libs/WindowManager/Shell/res/values-en-rXC/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Manage"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubble dismissed."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Show Bubbles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tap to restart this app for a better view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Change this app\'s aspect ratio in Settings"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Change aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-es-rUS/strings.xml b/libs/WindowManager/Shell/res/values-es-rUS/strings.xml index 406c1f37c455..99a89edc19e9 100644 --- a/libs/WindowManager/Shell/res/values-es-rUS/strings.xml +++ b/libs/WindowManager/Shell/res/values-es-rUS/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Cuadro"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Administrar"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Se descartó el cuadro."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbujas"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar burbujas"</string> <string name="restart_button_description" msgid="4564728020654658478">"Presiona para reiniciar esta app y tener una mejor vista"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Cambiar la relación de aspecto de esta app en Configuración"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Cambiar relación de aspecto"</string> diff --git a/libs/WindowManager/Shell/res/values-es/strings.xml b/libs/WindowManager/Shell/res/values-es/strings.xml index 0583d79da127..53a490e00e9f 100644 --- a/libs/WindowManager/Shell/res/values-es/strings.xml +++ b/libs/WindowManager/Shell/res/values-es/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Burbuja"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gestionar"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Burbuja cerrada."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbujas"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar burbujas"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toca para reiniciar esta aplicación y obtener una mejor vista"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Cambiar la relación de aspecto de esta aplicación en Ajustes"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Cambiar relación de aspecto"</string> diff --git a/libs/WindowManager/Shell/res/values-et/strings.xml b/libs/WindowManager/Shell/res/values-et/strings.xml index 70547f566ea6..19d453630801 100644 --- a/libs/WindowManager/Shell/res/values-et/strings.xml +++ b/libs/WindowManager/Shell/res/values-et/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Mull"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Halda"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Mullist loobuti."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Mullid"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Kuva mullid"</string> <string name="restart_button_description" msgid="4564728020654658478">"Puudutage, et see rakendus parema vaate jaoks taaskäivitada"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Muutke selle rakenduse kuvasuhet jaotises Seaded"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Muutke kuvasuhet"</string> diff --git a/libs/WindowManager/Shell/res/values-eu/strings.xml b/libs/WindowManager/Shell/res/values-eu/strings.xml index 4be35eac6c1f..8d676728b9e6 100644 --- a/libs/WindowManager/Shell/res/values-eu/strings.xml +++ b/libs/WindowManager/Shell/res/values-eu/strings.xml @@ -76,7 +76,7 @@ <string name="bubbles_user_education_manage" msgid="3460756219946517198">"Aplikazioaren burbuilak desaktibatzeko, sakatu Kudeatu"</string> <string name="bubbles_user_education_got_it" msgid="3382046149225428296">"Ados"</string> <string name="bubble_overflow_empty_title" msgid="2397251267073294968">"Ez dago azkenaldiko burbuilarik"</string> - <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"Azken burbuilak eta baztertutakoak agertuko dira hemen"</string> + <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"Azkenaldiko burbuilak eta baztertutakoak agertuko dira hemen"</string> <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"Txateatu burbuilak erabilita"</string> <string name="bubble_bar_education_stack_text" msgid="2446934610817409820">"Elkarrizketa berriak ikono gisa agertzen dira pantailaren beheko izkinan. Zabaltzeko, saka itzazu. Baztertzeko, aldiz, arrasta itzazu."</string> <string name="bubble_bar_education_manage_title" msgid="6148404487810835924">"Kontrolatu burbuilak edonoiz"</string> @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Burbuila"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Kudeatu"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Baztertu da globoa."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbuilak"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Erakutsi burbuilak"</string> <string name="restart_button_description" msgid="4564728020654658478">"Hobeto ikusteko, sakatu hau, eta aplikazioa berrabiarazi egingo da"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Aldatu aplikazioaren aspektu-erlazioa ezarpenetan"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Aldatu aspektu-erlazioa"</string> diff --git a/libs/WindowManager/Shell/res/values-fa/strings.xml b/libs/WindowManager/Shell/res/values-fa/strings.xml index 32d5f5f34fb8..ccbd65f82012 100644 --- a/libs/WindowManager/Shell/res/values-fa/strings.xml +++ b/libs/WindowManager/Shell/res/values-fa/strings.xml @@ -53,7 +53,7 @@ <string name="accessibility_split_top" msgid="2789329702027147146">"تقسیم از بالا"</string> <string name="accessibility_split_bottom" msgid="8694551025220868191">"تقسیم از پایین"</string> <string name="one_handed_tutorial_title" msgid="4583241688067426350">"استفاده از حالت یکدستی"</string> - <string name="one_handed_tutorial_description" msgid="3486582858591353067">"برای خارج شدن، از پایین صفحهنمایش تند بهطرف بالا بکشید یا در هر جایی از بالای برنامه که میخواهید ضربه بزنید"</string> + <string name="one_handed_tutorial_description" msgid="3486582858591353067">"برای خارج شدن، از پایین صفحهنمایش تند بهطرف بالا بکشید یا در هر جایی از بالای برنامه که میخواهید تکضرب بزنید"</string> <string name="accessibility_action_start_one_handed" msgid="5070337354072861426">"آغاز «حالت یکدستی»"</string> <string name="accessibility_action_stop_one_handed" msgid="1369940261782179442">"خروج از «حالت یکدستی»"</string> <string name="bubbles_settings_button_description" msgid="1301286017420516912">"تنظیمات برای حبابکهای <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> @@ -71,28 +71,30 @@ <string name="bubble_dismiss_text" msgid="8816558050659478158">"رد کردن حبابک"</string> <string name="bubbles_dont_bubble_conversation" msgid="310000317885712693">"مکالمه در حباب نشان داده نشود"</string> <string name="bubbles_user_education_title" msgid="2112319053732691899">"گپ بااستفاده از حبابکها"</string> - <string name="bubbles_user_education_description" msgid="4215862563054175407">"مکالمههای جدید بهصورت نمادهای شناور یا حبابکها نشان داده میشوند. برای باز کردن حبابکها ضربه بزنید. برای جابهجایی، آن را بکشید."</string> + <string name="bubbles_user_education_description" msgid="4215862563054175407">"مکالمههای جدید بهصورت نمادهای شناور یا حبابکها نشان داده میشوند. برای باز کردن حبابکها تکضرب بزنید. برای جابهجایی، آن را بکشید."</string> <string name="bubbles_user_education_manage_title" msgid="7042699946735628035">"کنترل حبابکها در هرزمانی"</string> - <string name="bubbles_user_education_manage" msgid="3460756219946517198">"برای خاموش کردن حبابکها از این برنامه، روی «مدیریت» ضربه بزنید"</string> + <string name="bubbles_user_education_manage" msgid="3460756219946517198">"برای خاموش کردن حبابکها از این برنامه، روی «مدیریت» تکضرب بزنید"</string> <string name="bubbles_user_education_got_it" msgid="3382046149225428296">"متوجهام"</string> <string name="bubble_overflow_empty_title" msgid="2397251267073294968">"هیچ حبابک جدیدی وجود ندارد"</string> <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"حبابکهای اخیر و حبابکهای ردشده اینجا ظاهر خواهند شد"</string> <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"گپ زدن بااستفاده از حبابک"</string> - <string name="bubble_bar_education_stack_text" msgid="2446934610817409820">"مکالمههای جدید بهصورت نماد در گوشه پایین صفحهنمایش نشان داده میشود. برای ازهم بازکردن آنها ضربه بزنید یا برای بستن، آنها را بکشید."</string> + <string name="bubble_bar_education_stack_text" msgid="2446934610817409820">"مکالمههای جدید بهصورت نماد در گوشه پایین صفحهنمایش نشان داده میشود. برای ازهم بازکردن آنها تکضرب بزنید یا برای بستن، آنها را بکشید."</string> <string name="bubble_bar_education_manage_title" msgid="6148404487810835924">"کنترل حبابکها در هرزمانی"</string> - <string name="bubble_bar_education_manage_text" msgid="3199732148641842038">"برای مدیریت اینکه کدام برنامهها و مکالمهها حباب داشته باشند، ضربه بزنید"</string> + <string name="bubble_bar_education_manage_text" msgid="3199732148641842038">"برای مدیریت اینکه کدام برنامهها و مکالمهها حباب داشته باشند، تکضرب بزنید"</string> <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="4564728020654658478">"برای داشتن نمایی بهتر، ضربه بزنید تا این برنامه بازراهاندازی شود"</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"حبابک"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"نمایش حبابک"</string> + <string name="restart_button_description" msgid="4564728020654658478">"برای داشتن نمایی بهتر، تکضرب بزنید تا این برنامه بازراهاندازی شود"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"نسبت ابعادی این برنامه را در «تنظیمات» تغییر دهید"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"تغییر نسبت ابعادی"</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> + <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> <string name="letterbox_education_dialog_title" msgid="7739895354143295358">"از چندین برنامه بهطور همزمان استفاده کنید"</string> <string name="letterbox_education_split_screen_text" msgid="449233070804658627">"برای حالت صفحهٔ دونیمه، در برنامهای دیگر بکشید"</string> - <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"برای جابهجا کردن برنامه، بیرون از آن دوضربه بزنید"</string> + <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"برای جابهجا کردن برنامه، بیرون از آن دو تکضرب بزنید"</string> <string name="letterbox_education_got_it" msgid="4057634570866051177">"متوجهام"</string> <string name="letterbox_education_expand_button_description" msgid="1729796567101129834">"برای اطلاعات بیشتر، گسترده کنید."</string> <string name="letterbox_restart_dialog_title" msgid="8543049527871033505">"برای نمایش بهتر بازراهاندازی شود؟"</string> @@ -100,7 +102,7 @@ <string name="letterbox_restart_cancel" msgid="1342209132692537805">"لغو کردن"</string> <string name="letterbox_restart_restart" msgid="8529976234412442973">"بازراهاندازی"</string> <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"دوباره نشان داده نشود"</string> - <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"برای جابهجا کردن این برنامه\nدوضربه بزنید"</string> + <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"برای جابهجا کردن این برنامه\nدو تکضرب بزنید"</string> <string name="maximize_button_text" msgid="1650859196290301963">"بزرگ کردن"</string> <string name="minimize_button_text" msgid="271592547935841753">"کوچک کردن"</string> <string name="close_button_text" msgid="2913281996024033299">"بستن"</string> diff --git a/libs/WindowManager/Shell/res/values-fi/strings.xml b/libs/WindowManager/Shell/res/values-fi/strings.xml index 6f03545e5542..92c93fde1ba7 100644 --- a/libs/WindowManager/Shell/res/values-fi/strings.xml +++ b/libs/WindowManager/Shell/res/values-fi/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Kupla"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Ylläpidä"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Kupla ohitettu."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Kuplat"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Näytä kuplat"</string> <string name="restart_button_description" msgid="4564728020654658478">"Napauta, niin sovellus käynnistyy uudelleen paremmin näytölle sopivana"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Muuta tämän sovelluksen kuvasuhdetta Asetuksissa"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Vaihda kuvasuhdetta"</string> diff --git a/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml b/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml index 3492f136c4f9..0c1def546957 100644 --- a/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml +++ b/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml @@ -31,11 +31,11 @@ <string name="accessibility_action_pip_resize" msgid="4623966104749543182">"Redimensionner"</string> <string name="accessibility_action_pip_stash" msgid="4060775037619702641">"Ajouter à la réserve"</string> <string name="accessibility_action_pip_unstash" msgid="7467499339610437646">"Retirer de la réserve"</string> - <string name="dock_forced_resizable" msgid="7429086980048964687">"L\'application peut ne pas fonctionner avec l\'écran partagé"</string> - <string name="dock_non_resizeble_failed_to_dock_text" msgid="2733543750291266047">"L\'application ne prend pas en charge l\'écran partagé"</string> - <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Cette application ne peut être ouverte que dans une seule fenêtre."</string> - <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Il est possible que l\'application ne fonctionne pas sur un écran secondaire."</string> - <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'application ne peut pas être lancée sur des écrans secondaires."</string> + <string name="dock_forced_resizable" msgid="7429086980048964687">"L\'appli peut ne pas fonctionner avec l\'écran partagé"</string> + <string name="dock_non_resizeble_failed_to_dock_text" msgid="2733543750291266047">"L\'appli ne prend pas en charge l\'écran partagé"</string> + <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Cette appli ne peut être ouverte que dans une seule fenêtre."</string> + <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Il est possible que l\'appli ne fonctionne pas sur un écran secondaire."</string> + <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'appli ne peut pas être lancée sur des écrans secondaires."</string> <string name="accessibility_divider" msgid="6407584574218956849">"Séparateur d\'écran partagé"</string> <string name="divider_title" msgid="1963391955593749442">"Séparateur d\'écran partagé"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Plein écran à la gauche"</string> @@ -56,7 +56,7 @@ <string name="one_handed_tutorial_description" msgid="3486582858591353067">"Pour quitter, balayez l\'écran du bas vers le haut, ou touchez n\'importe où sur l\'écran en haut de l\'appli"</string> <string name="accessibility_action_start_one_handed" msgid="5070337354072861426">"Démarrer le mode Une main"</string> <string name="accessibility_action_stop_one_handed" msgid="1369940261782179442">"Quitter le mode Une main"</string> - <string name="bubbles_settings_button_description" msgid="1301286017420516912">"Paramètres pour les bulles de l\'application <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> + <string name="bubbles_settings_button_description" msgid="1301286017420516912">"Paramètres pour les bulles de l\'appli <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="bubble_overflow_button_content_description" msgid="8160974472718594382">"Menu déroulant"</string> <string name="bubble_accessibility_action_add_back" msgid="1830101076853540953">"Replacer sur la pile"</string> <string name="bubble_content_description_single" msgid="8495748092720065813">"<xliff:g id="NOTIFICATION_TITLE">%1$s</xliff:g> de <xliff:g id="APP_NAME">%2$s</xliff:g>"</string> @@ -73,7 +73,7 @@ <string name="bubbles_user_education_title" msgid="2112319053732691899">"Clavarder en utilisant des bulles"</string> <string name="bubbles_user_education_description" msgid="4215862563054175407">"Les nouvelles conversations s\'affichent sous forme d\'icônes flottantes (de bulles). Touchez une bulle pour l\'ouvrir. Faites-la glisser pour la déplacer."</string> <string name="bubbles_user_education_manage_title" msgid="7042699946735628035">"Paramètres des bulles"</string> - <string name="bubbles_user_education_manage" msgid="3460756219946517198">"Toucher Gérer pour désactiver les bulles de cette application"</string> + <string name="bubbles_user_education_manage" msgid="3460756219946517198">"Toucher Gérer pour désactiver les bulles de cette appli"</string> <string name="bubbles_user_education_got_it" msgid="3382046149225428296">"OK"</string> <string name="bubble_overflow_empty_title" msgid="2397251267073294968">"Aucune bulle récente"</string> <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"Les bulles récentes et les bulles ignorées s\'afficheront ici"</string> @@ -84,29 +84,31 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bulle"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gérer"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bulle ignorée."</string> - <string name="restart_button_description" msgid="4564728020654658478">"Touchez pour redémarrer cette application afin d\'obtenir un meilleur affichage"</string> - <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Changer les proportions de cette application dans les paramètres"</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bulles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Afficher les bulles"</string> + <string name="restart_button_description" msgid="4564728020654658478">"Touchez pour redémarrer cette appli afin d\'obtenir un meilleur affichage"</string> + <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Changer les proportions de cette appli dans les paramètres"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Modifier les proportions"</string> <string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"Problèmes d\'appareil photo?\nTouchez pour réajuster"</string> <string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Problème non résolu?\nTouchez pour rétablir"</string> <string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Aucun problème d\'appareil photo? Touchez pour ignorer."</string> <string name="letterbox_education_dialog_title" msgid="7739895354143295358">"Voir et en faire plus"</string> - <string name="letterbox_education_split_screen_text" msgid="449233070804658627">"Faites glisser une autre application pour utiliser l\'écran partagé"</string> - <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"Touchez deux fois à côté d\'une application pour la repositionner"</string> + <string name="letterbox_education_split_screen_text" msgid="449233070804658627">"Faites glisser une autre appli pour utiliser l\'écran partagé"</string> + <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"Touchez deux fois à côté d\'une appli pour la repositionner"</string> <string name="letterbox_education_got_it" msgid="4057634570866051177">"OK"</string> <string name="letterbox_education_expand_button_description" msgid="1729796567101129834">"Développer pour en savoir plus."</string> <string name="letterbox_restart_dialog_title" msgid="8543049527871033505">"Redémarrer pour un meilleur affichage?"</string> - <string name="letterbox_restart_dialog_description" msgid="6096946078246557848">"Vous pouvez redémarrer l\'application pour qu\'elle s\'affiche mieux sur votre écran, mais il se peut que vous perdiez votre progression ou toute modification non enregistrée"</string> + <string name="letterbox_restart_dialog_description" msgid="6096946078246557848">"Vous pouvez redémarrer l\'appli pour qu\'elle s\'affiche mieux sur votre écran, mais il se peut que vous perdiez votre progression ou toute modification non enregistrée"</string> <string name="letterbox_restart_cancel" msgid="1342209132692537805">"Annuler"</string> <string name="letterbox_restart_restart" msgid="8529976234412442973">"Redémarrer"</string> <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne plus afficher"</string> - <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toucher deux fois pour\ndéplacer cette application"</string> + <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toucher deux fois pour\ndéplacer cette appli"</string> <string name="maximize_button_text" msgid="1650859196290301963">"Agrandir"</string> <string name="minimize_button_text" msgid="271592547935841753">"Réduire"</string> <string name="close_button_text" msgid="2913281996024033299">"Fermer"</string> <string name="back_button_text" msgid="1469718707134137085">"Retour"</string> <string name="handle_text" msgid="1766582106752184456">"Identifiant"</string> - <string name="app_icon_text" msgid="2823268023931811747">"Icône de l\'application"</string> + <string name="app_icon_text" msgid="2823268023931811747">"Icône de l\'appli"</string> <string name="fullscreen_text" msgid="1162316685217676079">"Plein écran"</string> <string name="desktop_text" msgid="1077633567027630454">"Mode Bureau"</string> <string name="split_screen_text" msgid="1396336058129570886">"Écran divisé"</string> diff --git a/libs/WindowManager/Shell/res/values-fr/strings.xml b/libs/WindowManager/Shell/res/values-fr/strings.xml index 4002e4d04d51..727a38ea5036 100644 --- a/libs/WindowManager/Shell/res/values-fr/strings.xml +++ b/libs/WindowManager/Shell/res/values-fr/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bulle"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gérer"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bulle fermée."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bulles"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Afficher les bulles"</string> <string name="restart_button_description" msgid="4564728020654658478">"Appuyez pour redémarrer cette appli et obtenir une meilleure vue."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Modifiez le format de cette appli dans les Paramètres."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Modifier le format"</string> diff --git a/libs/WindowManager/Shell/res/values-gl/strings.xml b/libs/WindowManager/Shell/res/values-gl/strings.xml index c371f7f62feb..81a247d643ae 100644 --- a/libs/WindowManager/Shell/res/values-gl/strings.xml +++ b/libs/WindowManager/Shell/res/values-gl/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Burbulla"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Xestionar"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Ignorouse a burbulla."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbullas"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar burbullas"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toca o botón para reiniciar esta aplicación e gozar dunha mellor visualización"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Cambia a proporción desta aplicación en Configuración"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Cambiar a proporción"</string> diff --git a/libs/WindowManager/Shell/res/values-gu/strings.xml b/libs/WindowManager/Shell/res/values-gu/strings.xml index 7e3d7a373be4..ac5c91ce3a6d 100644 --- a/libs/WindowManager/Shell/res/values-gu/strings.xml +++ b/libs/WindowManager/Shell/res/values-gu/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"બબલ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"બબલ બતાવો"</string> <string name="restart_button_description" msgid="4564728020654658478">"વધુ સારા વ્યૂ માટે, આ ઍપને ફરી શરૂ કરવા ટૅપ કરો"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"સેટિંગમાં આ ઍપનો સાપેક્ષ ગુણોત્તર બદલો"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"સાપેક્ષ ગુણોત્તર બદલો"</string> diff --git a/libs/WindowManager/Shell/res/values-hi/strings.xml b/libs/WindowManager/Shell/res/values-hi/strings.xml index cd0f4e3618f7..e94833f27064 100644 --- a/libs/WindowManager/Shell/res/values-hi/strings.xml +++ b/libs/WindowManager/Shell/res/values-hi/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"बबल्स"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"बबल्स दिखाएं"</string> <string name="restart_button_description" msgid="4564728020654658478">"बेहतर व्यू पाने के लिए, टैप करके ऐप्लिकेशन को रीस्टार्ट करें"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"सेटिंग में जाकर इस ऐप्लिकेशन का आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) बदलें"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) बदलें"</string> diff --git a/libs/WindowManager/Shell/res/values-hr/strings.xml b/libs/WindowManager/Shell/res/values-hr/strings.xml index 27d4cfcf22d5..7ef6436ef5fd 100644 --- a/libs/WindowManager/Shell/res/values-hr/strings.xml +++ b/libs/WindowManager/Shell/res/values-hr/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Oblačići"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Prikaži oblačiće"</string> <string name="restart_button_description" msgid="4564728020654658478">"Dodirnite da biste ponovo pokrenuli tu aplikaciju kako biste bolje vidjeli"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Promijeni omjer slike ove aplikacije u postavkama"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Promijeni omjer slike"</string> diff --git a/libs/WindowManager/Shell/res/values-hu/strings.xml b/libs/WindowManager/Shell/res/values-hu/strings.xml index a8cc5c120efc..4f448272bedc 100644 --- a/libs/WindowManager/Shell/res/values-hu/strings.xml +++ b/libs/WindowManager/Shell/res/values-hu/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Buborék"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Kezelés"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Buborék elvetve."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Buborékok"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Buborékok megjelenítése"</string> <string name="restart_button_description" msgid="4564728020654658478">"A jobb nézet érdekében koppintson az alkalmazás újraindításához."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Az app méretarányát a Beállításokban módosíthatja"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Méretarány módosítása"</string> diff --git a/libs/WindowManager/Shell/res/values-hy/strings.xml b/libs/WindowManager/Shell/res/values-hy/strings.xml index 7f372774241a..e3c369941d38 100644 --- a/libs/WindowManager/Shell/res/values-hy/strings.xml +++ b/libs/WindowManager/Shell/res/values-hy/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Ամպիկներ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Ցույց տալ ամպիկներ"</string> <string name="restart_button_description" msgid="4564728020654658478">"Հպեք՝ հավելվածը վերագործարկելու և ավելի հարմար տեսք ընտրելու համար"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Փոխել հավելվածի կողմերի հարաբերակցությունը Կարգավորումներում"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Փոխել չափերի հարաբերակցությունը"</string> diff --git a/libs/WindowManager/Shell/res/values-in/strings.xml b/libs/WindowManager/Shell/res/values-in/strings.xml index 3cf55fa0ede2..7c4a5c36032e 100644 --- a/libs/WindowManager/Shell/res/values-in/strings.xml +++ b/libs/WindowManager/Shell/res/values-in/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Balon"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Kelola"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balon ditutup."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Balon"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Tampilkan Balon"</string> <string name="restart_button_description" msgid="4564728020654658478">"Ketuk untuk memulai ulang aplikasi ini agar mendapatkan tampilan yang lebih baik"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Ubah rasio aspek aplikasi ini di Setelan"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Ubah rasio aspek"</string> diff --git a/libs/WindowManager/Shell/res/values-is/strings.xml b/libs/WindowManager/Shell/res/values-is/strings.xml index 6aa56f9858ad..81e3b05407c0 100644 --- a/libs/WindowManager/Shell/res/values-is/strings.xml +++ b/libs/WindowManager/Shell/res/values-is/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Blöðrur"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Sýna blöðrur"</string> <string name="restart_button_description" msgid="4564728020654658478">"Ýttu til að endurræsa forritið og fá betri sýn"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Breyta myndhlutfalli þessa forrits í stillingunum"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Breyta myndhlutfalli"</string> diff --git a/libs/WindowManager/Shell/res/values-it/strings.xml b/libs/WindowManager/Shell/res/values-it/strings.xml index 3c1d5e4dac02..e68f05849054 100644 --- a/libs/WindowManager/Shell/res/values-it/strings.xml +++ b/libs/WindowManager/Shell/res/values-it/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Fumetto"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gestisci"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Fumetto ignorato."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bolle"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostra bolle"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tocca per riavviare l\'app e migliorare la visualizzazione"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Cambia le proporzioni dell\'app nelle Impostazioni"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Cambia proporzioni"</string> diff --git a/libs/WindowManager/Shell/res/values-iw/strings.xml b/libs/WindowManager/Shell/res/values-iw/strings.xml index a0c3b3a95ca8..a01c9362eb42 100644 --- a/libs/WindowManager/Shell/res/values-iw/strings.xml +++ b/libs/WindowManager/Shell/res/values-iw/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"בועות"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"הצגת הבועות"</string> <string name="restart_button_description" msgid="4564728020654658478">"כדי לראות טוב יותר יש להקיש ולהפעיל את האפליקציה הזו מחדש"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"אפשר לשנות את יחס הגובה-רוחב של האפליקציה הזו ב\'הגדרות\'"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"שינוי יחס גובה-רוחב"</string> diff --git a/libs/WindowManager/Shell/res/values-ja/strings.xml b/libs/WindowManager/Shell/res/values-ja/strings.xml index fb726c180997..a7d526537524 100644 --- a/libs/WindowManager/Shell/res/values-ja/strings.xml +++ b/libs/WindowManager/Shell/res/values-ja/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"バブル"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"バブルを表示"</string> <string name="restart_button_description" msgid="4564728020654658478">"タップしてこのアプリを再起動すると、表示が適切になります"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"このアプリのアスペクト比を [設定] で変更します"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"アスペクト比を変更"</string> diff --git a/libs/WindowManager/Shell/res/values-ka/strings.xml b/libs/WindowManager/Shell/res/values-ka/strings.xml index e9f620a17203..3015deccd8d4 100644 --- a/libs/WindowManager/Shell/res/values-ka/strings.xml +++ b/libs/WindowManager/Shell/res/values-ka/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ბუშტები"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ბუშტების ჩვენება"</string> <string name="restart_button_description" msgid="4564728020654658478">"შეხებით გადატვირთეთ ეს აპი უკეთესი ხედის მისაღებად"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"შეცვალეთ ამ აპის თანაფარდობა პარამეტრებიდან"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"თანაფარდობის შეცვლა"</string> diff --git a/libs/WindowManager/Shell/res/values-kk/strings.xml b/libs/WindowManager/Shell/res/values-kk/strings.xml index 34e41038f285..f91175a9bf19 100644 --- a/libs/WindowManager/Shell/res/values-kk/strings.xml +++ b/libs/WindowManager/Shell/res/values-kk/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Қалқыма хабарлар"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Қалқыма хабарлар көрсету"</string> <string name="restart_button_description" msgid="4564728020654658478">"Көріністі жақсарту үшін осы қолданбаны түртіп, қайта ашыңыз."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Осы қолданбаның арақатынасын параметрлерден өзгертуге болады."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Арақатынасты өзгерту"</string> diff --git a/libs/WindowManager/Shell/res/values-km/strings.xml b/libs/WindowManager/Shell/res/values-km/strings.xml index 362bbad4ec12..42467b40e47d 100644 --- a/libs/WindowManager/Shell/res/values-km/strings.xml +++ b/libs/WindowManager/Shell/res/values-km/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ផ្ទាំងអណ្ដែត"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"បង្ហាញផ្ទាំងអណ្ដែត"</string> <string name="restart_button_description" msgid="4564728020654658478">"ចុចដើម្បីចាប់ផ្ដើមកម្មវិធីនេះឡើងវិញសម្រាប់ទិដ្ឋភាពកាន់តែប្រសើរ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ផ្លាស់ប្ដូរសមាមាត្ររបស់កម្មវិធីនេះនៅក្នុងការកំណត់"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ប្ដូរសមាមាត្រ"</string> diff --git a/libs/WindowManager/Shell/res/values-kn/strings.xml b/libs/WindowManager/Shell/res/values-kn/strings.xml index 77cc4a44f81a..153d73f0f53b 100644 --- a/libs/WindowManager/Shell/res/values-kn/strings.xml +++ b/libs/WindowManager/Shell/res/values-kn/strings.xml @@ -38,16 +38,16 @@ <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ಸೆಕೆಂಡರಿ ಡಿಸ್ಪ್ಲೇಗಳಲ್ಲಿ ಪ್ರಾರಂಭಿಸುವಿಕೆಯನ್ನು ಅಪ್ಲಿಕೇಶನ್ ಬೆಂಬಲಿಸುವುದಿಲ್ಲ."</string> <string name="accessibility_divider" msgid="6407584574218956849">"ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಡಿವೈಡರ್"</string> <string name="divider_title" msgid="1963391955593749442">"ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಡಿವೈಡರ್"</string> - <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ಎಡ ಪೂರ್ಣ ಪರದೆ"</string> + <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ಎಡ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> <string name="accessibility_action_divider_left_70" msgid="8859845045360659250">"70% ಎಡಕ್ಕೆ"</string> <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50% ಎಡಕ್ಕೆ"</string> <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30% ಎಡಕ್ಕೆ"</string> - <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ಬಲ ಪೂರ್ಣ ಪರದೆ"</string> - <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ಮೇಲಿನ ಪೂರ್ಣ ಪರದೆ"</string> + <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ಬಲ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> + <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ಮೇಲಿನ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70% ಮೇಲಕ್ಕೆ"</string> <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50% ಮೇಲಕ್ಕೆ"</string> <string name="accessibility_action_divider_top_30" msgid="3572788224908570257">"30% ಮೇಲಕ್ಕೆ"</string> - <string name="accessibility_action_divider_bottom_full" msgid="2831868345092314060">"ಕೆಳಗಿನ ಪೂರ್ಣ ಪರದೆ"</string> + <string name="accessibility_action_divider_bottom_full" msgid="2831868345092314060">"ಕೆಳಗಿನ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> <string name="accessibility_split_left" msgid="1713683765575562458">"ಎಡಕ್ಕೆ ವಿಭಜಿಸಿ"</string> <string name="accessibility_split_right" msgid="8441001008181296837">"ಬಲಕ್ಕೆ ವಿಭಜಿಸಿ"</string> <string name="accessibility_split_top" msgid="2789329702027147146">"ಮೇಲಕ್ಕೆ ವಿಭಜಿಸಿ"</string> @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ಬಬಲ್ಸ್"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ಬಬಲ್ಸ್ ತೋರಿಸಿ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ಉತ್ತಮ ವೀಕ್ಷಣೆಗಾಗಿ ಈ ಆ್ಯಪ್ ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ಈ ಆ್ಯಪ್ನ ದೃಶ್ಯಾನುಪಾತವನ್ನು ಬದಲಾಯಿಸಿ"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ದೃಶ್ಯಾನುಪಾತವನ್ನು ಬದಲಾಯಿಸಿ"</string> diff --git a/libs/WindowManager/Shell/res/values-kn/strings_tv.xml b/libs/WindowManager/Shell/res/values-kn/strings_tv.xml index 3dfe573a6506..efb79306cb3b 100644 --- a/libs/WindowManager/Shell/res/values-kn/strings_tv.xml +++ b/libs/WindowManager/Shell/res/values-kn/strings_tv.xml @@ -20,7 +20,7 @@ <string name="notification_channel_tv_pip" msgid="2576686079160402435">"ಚಿತ್ರದಲ್ಲಿ ಚಿತ್ರ"</string> <string name="pip_notification_unknown_title" msgid="2729870284350772311">"(ಶೀರ್ಷಿಕೆ ರಹಿತ ಕಾರ್ಯಕ್ರಮ)"</string> <string name="pip_close" msgid="2955969519031223530">"ಮುಚ್ಚಿರಿ"</string> - <string name="pip_fullscreen" msgid="7278047353591302554">"ಪೂರ್ಣ ಪರದೆ"</string> + <string name="pip_fullscreen" msgid="7278047353591302554">"ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> <string name="pip_move" msgid="158770205886688553">"ಸರಿಸಿ"</string> <string name="pip_expand" msgid="1051966011679297308">"ವಿಸ್ತೃತಗೊಳಿಸಿ"</string> <string name="pip_collapse" msgid="3903295106641385962">"ಕುಗ್ಗಿಸಿ"</string> diff --git a/libs/WindowManager/Shell/res/values-ko/strings.xml b/libs/WindowManager/Shell/res/values-ko/strings.xml index caa114fd6f88..a1f9934b89ba 100644 --- a/libs/WindowManager/Shell/res/values-ko/strings.xml +++ b/libs/WindowManager/Shell/res/values-ko/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"대화창"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"대화창 표시"</string> <string name="restart_button_description" msgid="4564728020654658478">"탭하면 앱을 다시 시작하여 보기를 개선합니다."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"설정에서 앱의 가로세로 비율을 변경합니다."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"가로세로 비율 변경"</string> diff --git a/libs/WindowManager/Shell/res/values-ky/strings.xml b/libs/WindowManager/Shell/res/values-ky/strings.xml index 302c0071a73a..14275da0209c 100644 --- a/libs/WindowManager/Shell/res/values-ky/strings.xml +++ b/libs/WindowManager/Shell/res/values-ky/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Калкып чыкма билдирмелер"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Калкып чыкма билдирмелерди көрсөтүү"</string> <string name="restart_button_description" msgid="4564728020654658478">"Жакшыраак көрүү үчүн бул колдонмону өчүрүп күйгүзүңүз. Ал үчүн таптап коюңуз"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Бул колдонмонун тараптарынын катнашын параметрлерден өзгөртүү"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Тараптардын катнашын өзгөртүү"</string> diff --git a/libs/WindowManager/Shell/res/values-lo/strings.xml b/libs/WindowManager/Shell/res/values-lo/strings.xml index a3519636b71f..48d26364a770 100644 --- a/libs/WindowManager/Shell/res/values-lo/strings.xml +++ b/libs/WindowManager/Shell/res/values-lo/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"ຟອງ"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"ຈັດການ"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"ປິດ Bubble ໄສ້ແລ້ວ."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"ຟອງ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ສະແດງຟອງ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ແຕະເພື່ອຣີສະຕາດແອັບນີ້ເພື່ອມຸມມອງທີ່ດີຂຶ້ນ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ປ່ຽນອັດຕາສ່ວນຂອງແອັບນີ້ໃນການຕັ້ງຄ່າ"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ປ່ຽນອັດຕາສ່ວນ"</string> diff --git a/libs/WindowManager/Shell/res/values-lt/strings.xml b/libs/WindowManager/Shell/res/values-lt/strings.xml index e4dd7398f679..cf0034f1cce7 100644 --- a/libs/WindowManager/Shell/res/values-lt/strings.xml +++ b/libs/WindowManager/Shell/res/values-lt/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Debesėlis"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Tvarkyti"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Debesėlio atsisakyta."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbulai"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Rodyti burbulus"</string> <string name="restart_button_description" msgid="4564728020654658478">"Palieskite, kad iš naujo paleistumėte šią programą ir matytumėte aiškiau"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Pakeiskite šios programos kraštinių santykį"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Keisti kraštinių santykį"</string> diff --git a/libs/WindowManager/Shell/res/values-lv/strings.xml b/libs/WindowManager/Shell/res/values-lv/strings.xml index 99aebf626322..bcd71cd71f0c 100644 --- a/libs/WindowManager/Shell/res/values-lv/strings.xml +++ b/libs/WindowManager/Shell/res/values-lv/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Burbulis"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Pārvaldīt"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Burbulis ir noraidīts."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Burbuļi"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Rādīt burbuļus"</string> <string name="restart_button_description" msgid="4564728020654658478">"Pieskarieties, lai restartētu šo lietotni un uzlabotu attēlojumu."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Iestatījumos mainiet šīs lietotnes malu attiecību."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Mainīt malu attiecību"</string> diff --git a/libs/WindowManager/Shell/res/values-mk/strings.xml b/libs/WindowManager/Shell/res/values-mk/strings.xml index c152c60fa631..48fca3e5a2a7 100644 --- a/libs/WindowManager/Shell/res/values-mk/strings.xml +++ b/libs/WindowManager/Shell/res/values-mk/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Балончиња"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Прикажи „Балончиња“"</string> <string name="restart_button_description" msgid="4564728020654658478">"Допрете за да ја рестартирате апликацијава за подобар приказ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Промени го соодносот на апликацијава во „Поставки“"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Променување на соодносот"</string> diff --git a/libs/WindowManager/Shell/res/values-ml/strings.xml b/libs/WindowManager/Shell/res/values-ml/strings.xml index 90275cdb517a..1e7be913a2d7 100644 --- a/libs/WindowManager/Shell/res/values-ml/strings.xml +++ b/libs/WindowManager/Shell/res/values-ml/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ബബിൾ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ബബിൾ കാണിക്കുക"</string> <string name="restart_button_description" msgid="4564728020654658478">"മികച്ച കാഴ്ചയ്ക്കായി ഈ ആപ്പ് റീസ്റ്റാർട്ട് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ഈ ആപ്പിന്റെ വീക്ഷണ അനുപാതം, ക്രമീകരണത്തിൽ മാറ്റുക"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"വീക്ഷണ അനുപാതം മാറ്റുക"</string> diff --git a/libs/WindowManager/Shell/res/values-mn/strings.xml b/libs/WindowManager/Shell/res/values-mn/strings.xml index 5e43506ab621..e65494d72935 100644 --- a/libs/WindowManager/Shell/res/values-mn/strings.xml +++ b/libs/WindowManager/Shell/res/values-mn/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Бөмбөлгүүд"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Бөмбөлгүүдийг харуулах"</string> <string name="restart_button_description" msgid="4564728020654658478">"Харагдах байдлыг сайжруулахын тулд энэ аппыг товшиж, дахин эхлүүлнэ үү"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Энэ аппын харьцааг Тохиргоонд өөрчилнө үү"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Харьцааг өөрчлөх"</string> diff --git a/libs/WindowManager/Shell/res/values-mr/strings.xml b/libs/WindowManager/Shell/res/values-mr/strings.xml index 5874bffc9199..220969047b37 100644 --- a/libs/WindowManager/Shell/res/values-mr/strings.xml +++ b/libs/WindowManager/Shell/res/values-mr/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"बबल"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"बबल दाखवा"</string> <string name="restart_button_description" msgid="4564728020654658478">"अधिक चांगल्या दृश्यासाठी हे अॅप रीस्टार्ट करण्याकरिता टॅप करा"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"सेटिंग्ज मध्ये या ॲपचा आस्पेक्ट रेशो बदला"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"आस्पेक्ट रेशो बदला"</string> diff --git a/libs/WindowManager/Shell/res/values-ms/strings.xml b/libs/WindowManager/Shell/res/values-ms/strings.xml index 4de8a7b03547..32353c4585c6 100644 --- a/libs/WindowManager/Shell/res/values-ms/strings.xml +++ b/libs/WindowManager/Shell/res/values-ms/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Gelembung"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Urus"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Gelembung diketepikan."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Gelembung"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Tunjukkan Gelembung"</string> <string name="restart_button_description" msgid="4564728020654658478">"Ketik untuk memulakan semula apl ini untuk mendapatkan paparan yang lebih baik"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Tukar nisbah bidang apl ini dalam Tetapan"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Tukar nisbah bidang"</string> diff --git a/libs/WindowManager/Shell/res/values-my/strings.xml b/libs/WindowManager/Shell/res/values-my/strings.xml index 5b9e9cb7353e..fadb67ed5ef9 100644 --- a/libs/WindowManager/Shell/res/values-my/strings.xml +++ b/libs/WindowManager/Shell/res/values-my/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ပူဖောင်းကွက်"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ပူဖောင်းကွက်များ ပြပါ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ပိုကောင်းသောမြင်ကွင်းအတွက် ဤအက်ပ်ပြန်စရန် တို့ပါ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ဆက်တင်များတွင် ဤအက်ပ်၏အချိုးအစားကို ပြောင်းရန်"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"အချိုးစား ပြောင်းရန်"</string> diff --git a/libs/WindowManager/Shell/res/values-nb/strings.xml b/libs/WindowManager/Shell/res/values-nb/strings.xml index 6005be4fb5c9..76d833f1b6e5 100644 --- a/libs/WindowManager/Shell/res/values-nb/strings.xml +++ b/libs/WindowManager/Shell/res/values-nb/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Boble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Administrer"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Boblen er avvist."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bobler"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Vis bobler"</string> <string name="restart_button_description" msgid="4564728020654658478">"Trykk for å starte denne appen på nytt og få en bedre visning"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Endre høyde/bredde-forholdet for denne appen i Innstillinger"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Endre høyde/bredde-forholdet"</string> @@ -113,7 +115,7 @@ <string name="more_button_text" msgid="3655388105592893530">"Mer"</string> <string name="float_button_text" msgid="9221657008391364581">"Svevende"</string> <string name="select_text" msgid="5139083974039906583">"Velg"</string> - <string name="screenshot_text" msgid="1477704010087786671">"Skjermdump"</string> + <string name="screenshot_text" msgid="1477704010087786671">"Skjermbilde"</string> <string name="close_text" msgid="4986518933445178928">"Lukk"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Lukk menyen"</string> <string name="expand_menu_text" msgid="3847736164494181168">"Åpne menyen"</string> diff --git a/libs/WindowManager/Shell/res/values-ne/strings.xml b/libs/WindowManager/Shell/res/values-ne/strings.xml index a5bd2ab5c10b..c5a4b35b7aa8 100644 --- a/libs/WindowManager/Shell/res/values-ne/strings.xml +++ b/libs/WindowManager/Shell/res/values-ne/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"बबलहरू"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"बबलहरू देखाउनुहोस्"</string> <string name="restart_button_description" msgid="4564728020654658478">"अझ राम्रो भ्यू प्राप्त गर्नका लागि यो एप रिस्टार्ट गर्न ट्याप गर्नुहोस्"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"सेटिङमा गई यो एपको एस्पेक्ट रेसियो परिवर्तन गर्नुहोस्"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"एस्पेक्ट रेसियो परिवर्तन गर्नुहोस्"</string> diff --git a/libs/WindowManager/Shell/res/values-nl/strings.xml b/libs/WindowManager/Shell/res/values-nl/strings.xml index 0cd27c5c1457..97be0fb347bb 100644 --- a/libs/WindowManager/Shell/res/values-nl/strings.xml +++ b/libs/WindowManager/Shell/res/values-nl/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubbel"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Beheren"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubbel gesloten."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubbels"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Bubbels tonen"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tik om deze app opnieuw op te starten voor een betere weergave"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Wijzig de beeldverhouding van deze app in Instellingen"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Beeldverhouding wijzigen"</string> diff --git a/libs/WindowManager/Shell/res/values-or/strings.xml b/libs/WindowManager/Shell/res/values-or/strings.xml index bf751852a255..4690c4098e13 100644 --- a/libs/WindowManager/Shell/res/values-or/strings.xml +++ b/libs/WindowManager/Shell/res/values-or/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ବବଲ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ବବଲ ଦେଖାନ୍ତୁ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ଏକ ଆହୁରି ଭଲ ଭ୍ୟୁ ପାଇଁ ଏହି ଆପ ରିଷ୍ଟାର୍ଟ କରିବାକୁ ଟାପ କରନ୍ତୁ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ସେଟିଂସରେ ଏହି ଆପର ଚଉଡ଼ା ଓ ଉଚ୍ଚତାର ଅନୁପାତ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ଚଉଡ଼ା ଓ ଉଚ୍ଚତାର ଅନୁପାତ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string> diff --git a/libs/WindowManager/Shell/res/values-pa/strings.xml b/libs/WindowManager/Shell/res/values-pa/strings.xml index 325c1e80c433..6a02c143ea00 100644 --- a/libs/WindowManager/Shell/res/values-pa/strings.xml +++ b/libs/WindowManager/Shell/res/values-pa/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"ਬਬਲ"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"ਬਬਲ ਦਿਖਾਓ"</string> <string name="restart_button_description" msgid="4564728020654658478">"ਬਿਹਤਰ ਦ੍ਰਿਸ਼ ਵਾਸਤੇ ਇਸ ਐਪ ਨੂੰ ਮੁੜ-ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਜਾ ਕੇ ਇਸ ਐਪ ਦੇ ਆਕਾਰ ਅਨੁਪਾਤ ਨੂੰ ਬਦਲੋ"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ਆਕਾਰ ਅਨੁਪਾਤ ਬਦਲੋ"</string> diff --git a/libs/WindowManager/Shell/res/values-pl/strings.xml b/libs/WindowManager/Shell/res/values-pl/strings.xml index a7648c8e323b..061d45691ee0 100644 --- a/libs/WindowManager/Shell/res/values-pl/strings.xml +++ b/libs/WindowManager/Shell/res/values-pl/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Dymek"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Zarządzaj"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Zamknięto dymek"</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Dymki"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Pokaż dymki"</string> <string name="restart_button_description" msgid="4564728020654658478">"Kliknij w celu zrestartowania aplikacji, aby lepiej się wyświetlała."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Zmień proporcje obrazu aplikacji w Ustawieniach"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Zmień proporcje obrazu"</string> diff --git a/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml b/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml index e47d151337b2..af61664e4e78 100644 --- a/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml +++ b/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bolha"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gerenciar"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balão dispensado."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Balões"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar balões"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toque para reiniciar o app e atualizar a visualização"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Mude o tamanho da janela deste app nas Configurações"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Mudar a proporção"</string> diff --git a/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml b/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml index 1210fe8fda05..5e16ce9533c3 100644 --- a/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml +++ b/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Balão"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gerir"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balão ignorado."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Balões"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar balões"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toque para reiniciar esta app e ficar com uma melhor visão"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Altere o formato desta app nas Definições"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Altere o formato"</string> diff --git a/libs/WindowManager/Shell/res/values-pt/strings.xml b/libs/WindowManager/Shell/res/values-pt/strings.xml index e47d151337b2..af61664e4e78 100644 --- a/libs/WindowManager/Shell/res/values-pt/strings.xml +++ b/libs/WindowManager/Shell/res/values-pt/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bolha"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Gerenciar"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balão dispensado."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Balões"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Mostrar balões"</string> <string name="restart_button_description" msgid="4564728020654658478">"Toque para reiniciar o app e atualizar a visualização"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Mude o tamanho da janela deste app nas Configurações"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Mudar a proporção"</string> diff --git a/libs/WindowManager/Shell/res/values-ro/strings.xml b/libs/WindowManager/Shell/res/values-ro/strings.xml index ae871f3dd42b..3dcbb2c48016 100644 --- a/libs/WindowManager/Shell/res/values-ro/strings.xml +++ b/libs/WindowManager/Shell/res/values-ro/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Baloane"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Afișează Baloane"</string> <string name="restart_button_description" msgid="4564728020654658478">"Atinge ca să repornești aplicația pentru o vizualizare mai bună"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Schimbă raportul de dimensiuni al aplicației din Setări"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Schimbă raportul de dimensiuni"</string> diff --git a/libs/WindowManager/Shell/res/values-ru/strings.xml b/libs/WindowManager/Shell/res/values-ru/strings.xml index 971e146ba77e..8f283866f6aa 100644 --- a/libs/WindowManager/Shell/res/values-ru/strings.xml +++ b/libs/WindowManager/Shell/res/values-ru/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Чаты"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Всплывающие чаты"</string> <string name="restart_button_description" msgid="4564728020654658478">"Нажмите, чтобы перезапустить приложение и оптимизировать размер"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Изменить соотношение сторон приложения в настройках"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Изменить соотношение сторон"</string> diff --git a/libs/WindowManager/Shell/res/values-si/strings.xml b/libs/WindowManager/Shell/res/values-si/strings.xml index ef1381cbe635..289508c1a42f 100644 --- a/libs/WindowManager/Shell/res/values-si/strings.xml +++ b/libs/WindowManager/Shell/res/values-si/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"බුබුළු"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"බුබුළු පෙන්වන්න"</string> <string name="restart_button_description" msgid="4564728020654658478">"වඩා හොඳ දසුනක් සඳහා මෙම යෙදුම යළි ඇරඹීමට තට්ටු කරන්න"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"සැකසීම් තුළ මෙම යෙදුමේ දර්ශන අනුපාතය වෙනස් කරන්න"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"දර්ශන අනුපාතය වෙනස් කරන්න"</string> diff --git a/libs/WindowManager/Shell/res/values-sk/strings.xml b/libs/WindowManager/Shell/res/values-sk/strings.xml index 55a03122483b..e4a0fe254d63 100644 --- a/libs/WindowManager/Shell/res/values-sk/strings.xml +++ b/libs/WindowManager/Shell/res/values-sk/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bublina"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Spravovať"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bublina bola zavretá."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubliny"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Zobraziť bubliny"</string> <string name="restart_button_description" msgid="4564728020654658478">"Ak chcete zlepšiť zobrazenie, klepnutím túto aplikáciu reštartujte"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Zmeniť pomer strán tejto aplikácie v Nastaveniach"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Zmeniť pomer strán"</string> diff --git a/libs/WindowManager/Shell/res/values-sl/strings.xml b/libs/WindowManager/Shell/res/values-sl/strings.xml index bb123dcdbfb6..e68c1cd7bf52 100644 --- a/libs/WindowManager/Shell/res/values-sl/strings.xml +++ b/libs/WindowManager/Shell/res/values-sl/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Mehurček"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Upravljanje"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Oblaček je bil opuščen."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Oblački"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Prikaži oblačke"</string> <string name="restart_button_description" msgid="4564728020654658478">"Če želite boljši prikaz, se dotaknite za vnovični zagon te aplikacije."</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Razmerje stranic te aplikacije spremenite v nastavitvah."</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Sprememba razmerja stranic"</string> diff --git a/libs/WindowManager/Shell/res/values-sq/strings.xml b/libs/WindowManager/Shell/res/values-sq/strings.xml index c74a8cd23338..a7ef2cf57a5c 100644 --- a/libs/WindowManager/Shell/res/values-sq/strings.xml +++ b/libs/WindowManager/Shell/res/values-sq/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Flluskë"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Menaxho"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Flluska u hoq."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Flluskat"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Shfaq \"Flluskat\""</string> <string name="restart_button_description" msgid="4564728020654658478">"Trokit për ta rinisur këtë aplikacion për një pamje më të mirë"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Ndrysho raportin e pamjes së këtij aplikacioni te \"Cilësimet\""</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Ndrysho raportin e pamjes"</string> diff --git a/libs/WindowManager/Shell/res/values-sr/strings.xml b/libs/WindowManager/Shell/res/values-sr/strings.xml index 0694a973dc1e..449c3601650f 100644 --- a/libs/WindowManager/Shell/res/values-sr/strings.xml +++ b/libs/WindowManager/Shell/res/values-sr/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Облачићи"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Прикажи облачиће"</string> <string name="restart_button_description" msgid="4564728020654658478">"Додирните да бисте рестартовали ову апликацију ради бољег приказа"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Промените размеру ове апликације у Подешавањима"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Промени размеру"</string> diff --git a/libs/WindowManager/Shell/res/values-sv/strings.xml b/libs/WindowManager/Shell/res/values-sv/strings.xml index 8e0bcfe91679..234365a56e8e 100644 --- a/libs/WindowManager/Shell/res/values-sv/strings.xml +++ b/libs/WindowManager/Shell/res/values-sv/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubbla"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Hantera"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bubblan ignorerades."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bubblor"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Visa bubblor"</string> <string name="restart_button_description" msgid="4564728020654658478">"Tryck för att starta om appen och få en bättre vy"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Ändra appens bildformat i inställningarna"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Ändra bildformat"</string> diff --git a/libs/WindowManager/Shell/res/values-sw/strings.xml b/libs/WindowManager/Shell/res/values-sw/strings.xml index 41180abcf712..bfbe0b153e30 100644 --- a/libs/WindowManager/Shell/res/values-sw/strings.xml +++ b/libs/WindowManager/Shell/res/values-sw/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Kiputo"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Dhibiti"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Umeondoa kiputo."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Viputo"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Onyesha Viputo"</string> <string name="restart_button_description" msgid="4564728020654658478">"Gusa ili uzime kisha uwashe programu hii, ili upate mwonekano bora"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Badilisha uwiano wa programu hii katika Mipangilio"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Badilisha uwiano wa kipengele"</string> diff --git a/libs/WindowManager/Shell/res/values-ta/strings.xml b/libs/WindowManager/Shell/res/values-ta/strings.xml index 01ac78d984f3..5a0233bed1f1 100644 --- a/libs/WindowManager/Shell/res/values-ta/strings.xml +++ b/libs/WindowManager/Shell/res/values-ta/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"குமிழ்கள்"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"குமிழ்களைக் காட்டு"</string> <string name="restart_button_description" msgid="4564728020654658478">"இங்கு தட்டுவதன் மூலம் இந்த ஆப்ஸை மீண்டும் தொடங்கி, ஆப்ஸ் காட்டப்படும் விதத்தை இன்னும் சிறப்பாக்கலாம்"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"அமைப்புகளில் இந்த ஆப்ஸின் தோற்ற விகிதத்தை மாற்றும்"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"தோற்ற விகிதத்தை மாற்றும்"</string> diff --git a/libs/WindowManager/Shell/res/values-te/strings.xml b/libs/WindowManager/Shell/res/values-te/strings.xml index 6224e72c19fe..95023ae3fff1 100644 --- a/libs/WindowManager/Shell/res/values-te/strings.xml +++ b/libs/WindowManager/Shell/res/values-te/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"బబుల్స్"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"బబుల్స్ చూడండి"</string> <string name="restart_button_description" msgid="4564728020654658478">"మెరుగైన వీక్షణ కోసం ఈ యాప్ను రీస్టార్ట్ చేయడానికి ట్యాప్ చేయండి"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"సెట్టింగ్లలో ఈ యాప్ ఆకార నిష్పత్తిని మార్చండి"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"ఆకార నిష్పత్తిని మార్చండి"</string> diff --git a/libs/WindowManager/Shell/res/values-th/strings.xml b/libs/WindowManager/Shell/res/values-th/strings.xml index fe0b74c469f4..ad00e465128b 100644 --- a/libs/WindowManager/Shell/res/values-th/strings.xml +++ b/libs/WindowManager/Shell/res/values-th/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"บับเบิล"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"แสดงบับเบิล"</string> <string name="restart_button_description" msgid="4564728020654658478">"แตะเพื่อรีสตาร์ทแอปนี้และรับมุมมองที่ดียิ่งขึ้น"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"เปลี่ยนสัดส่วนภาพของแอปนี้ในการตั้งค่า"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"เปลี่ยนอัตราส่วนกว้างยาว"</string> diff --git a/libs/WindowManager/Shell/res/values-tl/strings.xml b/libs/WindowManager/Shell/res/values-tl/strings.xml index 786e99cfe8c8..fd13626fa595 100644 --- a/libs/WindowManager/Shell/res/values-tl/strings.xml +++ b/libs/WindowManager/Shell/res/values-tl/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Bubble"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Pamahalaan"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Na-dismiss na ang bubble."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Mga Bubble"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Ipakita ang Mga Bubble"</string> <string name="restart_button_description" msgid="4564728020654658478">"I-tap para i-restart ang app na ito para sa mas magandang view"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Baguhin ang aspect ratio ng app na ito sa Mga Setting"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Baguhin ang aspect ratio"</string> diff --git a/libs/WindowManager/Shell/res/values-tr/strings.xml b/libs/WindowManager/Shell/res/values-tr/strings.xml index e953f5808aff..a9aa82274e68 100644 --- a/libs/WindowManager/Shell/res/values-tr/strings.xml +++ b/libs/WindowManager/Shell/res/values-tr/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Baloncuk"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Yönet"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Balon kapatıldı."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Baloncuklar"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Baloncukları göster"</string> <string name="restart_button_description" msgid="4564728020654658478">"Bu uygulamayı yeniden başlatarak daha iyi bir görünüm elde etmek için dokunun"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Bu uygulamanın en boy oranını Ayarlar\'dan değiştirin"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"En boy oranını değiştir"</string> diff --git a/libs/WindowManager/Shell/res/values-uk/strings.xml b/libs/WindowManager/Shell/res/values-uk/strings.xml index fbdf42e582d1..502be067c71f 100644 --- a/libs/WindowManager/Shell/res/values-uk/strings.xml +++ b/libs/WindowManager/Shell/res/values-uk/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Спл. чати"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Показувати спливаючі чати"</string> <string name="restart_button_description" msgid="4564728020654658478">"Натисніть, щоб перезапустити цей додаток для зручнішого перегляду"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Змінити формат для цього додатка в налаштуваннях"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Змінити формат"</string> diff --git a/libs/WindowManager/Shell/res/values-ur/strings.xml b/libs/WindowManager/Shell/res/values-ur/strings.xml index 5562fa70bf09..ea1048db2faf 100644 --- a/libs/WindowManager/Shell/res/values-ur/strings.xml +++ b/libs/WindowManager/Shell/res/values-ur/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"بلبلے"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"بلبلے دکھائیں"</string> <string name="restart_button_description" msgid="4564728020654658478">"بہتر منظر کے لیے اس ایپ کو ری اسٹارٹ کرنے کی خاطر تھپتھپائیں"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"ترتیبات میں اس ایپ کی تناسبی شرح کو تبدیل کریں"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"تناسبی شرح کو تبدیل کریں"</string> diff --git a/libs/WindowManager/Shell/res/values-uz/strings.xml b/libs/WindowManager/Shell/res/values-uz/strings.xml index 50e42329a1a0..9abfc462ef40 100644 --- a/libs/WindowManager/Shell/res/values-uz/strings.xml +++ b/libs/WindowManager/Shell/res/values-uz/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Pufaklar"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Boshqarish"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Bulutcha yopildi."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Bulutchalar"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Bulutchalarni chiqarish"</string> <string name="restart_button_description" msgid="4564728020654658478">"Yaxshiroq koʻrish maqsadida bu ilovani qayta ishga tushirish uchun bosing"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Sozlamalar orqali bu ilovaning tomonlar nisbatini oʻzgartiring"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Tomonlar nisbatini oʻzgartirish"</string> diff --git a/libs/WindowManager/Shell/res/values-vi/strings.xml b/libs/WindowManager/Shell/res/values-vi/strings.xml index 6da85881210d..d334c880abae 100644 --- a/libs/WindowManager/Shell/res/values-vi/strings.xml +++ b/libs/WindowManager/Shell/res/values-vi/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"Bong bóng"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Hiện bong bóng"</string> <string name="restart_button_description" msgid="4564728020654658478">"Nhấn nút khởi động lại ứng dụng này để xem dễ hơn"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Thay đổi tỷ lệ khung hình của ứng dụng này thông qua phần Cài đặt"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Thay đổi tỷ lệ khung hình"</string> diff --git a/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml b/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml index 4318caf26199..96d82f2e5f8d 100644 --- a/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml +++ b/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"消息气泡"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"显示消息气泡"</string> <string name="restart_button_description" msgid="4564728020654658478">"点按即可重启此应用,获得更好的视觉体验"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"在“设置”中更改此应用的宽高比"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"更改高宽比"</string> diff --git a/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml b/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml index 72cd39d8e00a..703cefd919cb 100644 --- a/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml +++ b/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"對話氣泡"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"顯示對話氣泡"</string> <string name="restart_button_description" msgid="4564728020654658478">"輕按並重新啟動此應用程式,以取得更佳的觀看體驗"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"前往「設定」變更此應用程式的長寬比"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"變更長寬比"</string> diff --git a/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml b/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml index c06d7b105694..abdea497c4ea 100644 --- a/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml +++ b/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml @@ -84,6 +84,8 @@ <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="bubble_shortcut_label" msgid="666269077944378311">"對話框"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"顯示對話框"</string> <string name="restart_button_description" msgid="4564728020654658478">"輕觸此按鈕重新啟動這個應用程式,即可獲得更良好的觀看體驗"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"前往「設定」變更這個應用程式的顯示比例"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"變更顯示比例"</string> diff --git a/libs/WindowManager/Shell/res/values-zu/strings.xml b/libs/WindowManager/Shell/res/values-zu/strings.xml index 755414e52762..10847309a00c 100644 --- a/libs/WindowManager/Shell/res/values-zu/strings.xml +++ b/libs/WindowManager/Shell/res/values-zu/strings.xml @@ -84,6 +84,8 @@ <string name="notification_bubble_title" msgid="6082910224488253378">"Ibhamuza"</string> <string name="manage_bubbles_text" msgid="7730624269650594419">"Phatha"</string> <string name="accessibility_bubble_dismissed" msgid="8367471990421247357">"Ibhamuza licashisiwe."</string> + <string name="bubble_shortcut_label" msgid="666269077944378311">"Amabhamuza"</string> + <string name="bubble_shortcut_long_label" msgid="6088437544312894043">"Bonisa Amabhamuza"</string> <string name="restart_button_description" msgid="4564728020654658478">"Thepha ukuze uqale kabusha le app ukuze ibonakale kangcono"</string> <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"Shintsha ukubukeka kwesilinganiselo kwe-app kuMasethingi"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"Shintsha ukubukeka kwesilinganiselo"</string> diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationRunner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationRunner.java index 4988a9481d21..851472f7d4c1 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationRunner.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationRunner.java @@ -25,6 +25,7 @@ import android.util.Log; import android.view.IRemoteAnimationFinishedCallback; import android.view.IRemoteAnimationRunner; import android.view.RemoteAnimationTarget; +import android.view.SurfaceControl; import android.window.IBackAnimationRunner; import android.window.IOnBackInvokedCallback; @@ -32,6 +33,8 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.jank.Cuj.CujType; import com.android.wm.shell.common.InteractionJankMonitorUtils; +import java.lang.ref.WeakReference; + /** * Used to register the animation callback and runner, it will trigger result if gesture was finish * before it received IBackAnimationRunner#onAnimationStart, so the controller could continue @@ -80,22 +83,49 @@ public class BackAnimationRunner { return mCallback; } + private Runnable mFinishedCallback; + private RemoteAnimationTarget[] mApps; + private IRemoteAnimationFinishedCallback mRemoteCallback; + + private static class RemoteAnimationFinishedStub extends IRemoteAnimationFinishedCallback.Stub { + //the binder callback should not hold strong reference to it to avoid memory leak. + private WeakReference<BackAnimationRunner> mRunnerRef; + + private RemoteAnimationFinishedStub(BackAnimationRunner runner) { + mRunnerRef = new WeakReference<>(runner); + } + + @Override + public void onAnimationFinished() { + BackAnimationRunner runner = mRunnerRef.get(); + if (runner == null) { + return; + } + if (runner.shouldMonitorCUJ(runner.mApps)) { + InteractionJankMonitorUtils.endTracing(runner.mCujType); + } + + runner.mFinishedCallback.run(); + for (int i = runner.mApps.length - 1; i >= 0; --i) { + SurfaceControl sc = runner.mApps[i].leash; + if (sc != null && sc.isValid()) { + sc.release(); + } + } + runner.mApps = null; + runner.mFinishedCallback = null; + } + } + /** * Called from {@link IBackAnimationRunner}, it will deliver these * {@link RemoteAnimationTarget}s to the corresponding runner. */ void startAnimation(RemoteAnimationTarget[] apps, RemoteAnimationTarget[] wallpapers, RemoteAnimationTarget[] nonApps, Runnable finishedCallback) { - final IRemoteAnimationFinishedCallback callback = - new IRemoteAnimationFinishedCallback.Stub() { - @Override - public void onAnimationFinished() { - if (shouldMonitorCUJ(apps)) { - InteractionJankMonitorUtils.endTracing(mCujType); - } - finishedCallback.run(); - } - }; + mFinishedCallback = finishedCallback; + mApps = apps; + if (mRemoteCallback == null) mRemoteCallback = new RemoteAnimationFinishedStub(this); mWaitingAnimation = false; if (shouldMonitorCUJ(apps)) { InteractionJankMonitorUtils.beginTracing( @@ -103,7 +133,7 @@ public class BackAnimationRunner { } try { getRunner().onAnimationStart(TRANSIT_OLD_UNSET, apps, wallpapers, - nonApps, callback); + nonApps, mRemoteCallback); } catch (RemoteException e) { Log.w(TAG, "Failed call onAnimationStart", e); } diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt index a3111b31a2f9..169e122c353c 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt @@ -61,8 +61,7 @@ abstract class CrossActivityBackAnimation( private val context: Context, private val background: BackAnimationBackground, private val rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - protected val transaction: SurfaceControl.Transaction, - private val choreographer: Choreographer + protected val transaction: SurfaceControl.Transaction ) : ShellBackAnimation() { protected val startClosingRect = RectF() @@ -269,7 +268,9 @@ abstract class CrossActivityBackAnimation( .setSpring(postCommitFlingSpring) flingAnimation.start() // do an animation-frame immediately to prevent idle frame - flingAnimation.doAnimationFrame(choreographer.lastFrameTimeNanos / TimeUtils.NANOS_PER_MS) + flingAnimation.doAnimationFrame( + Choreographer.getInstance().lastFrameTimeNanos / TimeUtils.NANOS_PER_MS + ) val valueAnimator = ValueAnimator.ofFloat(1f, 0f).setDuration(getPostCommitAnimationDuration()) @@ -324,6 +325,7 @@ abstract class CrossActivityBackAnimation( enteringHasSameLetterbox = false lastPostCommitFlingScale = SPRING_SCALE gestureProgress = 0f + triggerBack = false } protected fun applyTransform( @@ -361,7 +363,7 @@ abstract class CrossActivityBackAnimation( } protected fun applyTransaction() { - transaction.setFrameTimelineVsync(choreographer.vsyncId) + transaction.setFrameTimelineVsync(Choreographer.getInstance().vsyncId) transaction.apply() } @@ -499,10 +501,12 @@ abstract class CrossActivityBackAnimation( } override fun onBackCancelled() { + triggerBack = false progressAnimator.onBackCancelled { finishAnimation() } } override fun onBackInvoked() { + triggerBack = true progressAnimator.reset() onGestureCommitted(progressAnimator.velocity) } diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt index c738ce542f8a..9ebab6383416 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt @@ -19,7 +19,6 @@ import android.content.Context import android.graphics.Rect import android.graphics.RectF import android.util.MathUtils -import android.view.Choreographer import android.view.SurfaceControl import android.view.animation.Animation import android.view.animation.Transformation @@ -31,27 +30,23 @@ import com.android.internal.policy.TransitionAnimation import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.protolog.ShellProtoLogGroup -import com.android.wm.shell.shared.annotations.ShellMainThread import javax.inject.Inject import kotlin.math.max import kotlin.math.min /** Class that handles customized predictive cross activity back animations. */ -@ShellMainThread class CustomCrossActivityBackAnimation( context: Context, background: BackAnimationBackground, rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, transaction: SurfaceControl.Transaction, - choreographer: Choreographer, private val customAnimationLoader: CustomAnimationLoader ) : CrossActivityBackAnimation( context, background, rootTaskDisplayAreaOrganizer, - transaction, - choreographer + transaction ) { private var enterAnimation: Animation? = null @@ -70,7 +65,6 @@ class CustomCrossActivityBackAnimation( background, rootTaskDisplayAreaOrganizer, SurfaceControl.Transaction(), - Choreographer.getInstance(), CustomAnimationLoader( TransitionAnimation(context, false /* debug */, "CustomCrossActivityBackAnimation") ) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt index 3b5eb3613d2a..c747e1e98956 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt @@ -16,18 +16,15 @@ package com.android.wm.shell.back import android.content.Context -import android.view.Choreographer import android.view.SurfaceControl import android.window.BackEvent import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.animation.Interpolators -import com.android.wm.shell.shared.annotations.ShellMainThread import javax.inject.Inject import kotlin.math.max /** Class that defines cross-activity animation. */ -@ShellMainThread class DefaultCrossActivityBackAnimation @Inject constructor( @@ -39,8 +36,7 @@ constructor( context, background, rootTaskDisplayAreaOrganizer, - SurfaceControl.Transaction(), - Choreographer.getInstance() + SurfaceControl.Transaction() ) { private val postCommitInterpolator = Interpolators.EMPHASIZED diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/TEST_MAPPING b/libs/WindowManager/Shell/src/com/android/wm/shell/back/TEST_MAPPING index f02559f36169..df3a369febbc 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/TEST_MAPPING +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "WMShellUnitTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "com.android.wm.shell.back" - } - ] + "name": "WMShellUnitTests_shell_back" }, { - "name": "CtsWindowManagerDeviceBackNavigation", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.server.wm.backnavigation.BackGestureInvokedTest" - }, - { - "include-filter": "android.server.wm.backnavigation.BackNavigationTests" - }, - { - "include-filter": "android.server.wm.backnavigation.OnBackInvokedCallbackGestureTest" - } - ] + "name": "CtsWindowManagerDeviceBackNavigation_com_android_wm_shell_back" } ] } diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/ScreenshotUtils.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/ScreenshotUtils.java index fad3dee1f927..1929729eb1ad 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/ScreenshotUtils.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/ScreenshotUtils.java @@ -42,6 +42,7 @@ public class ScreenshotUtils { .setSourceCrop(crop) .setCaptureSecureLayers(true) .setAllowProtected(true) + .setHintForSeamlessTransition(true) .build())); } @@ -78,6 +79,9 @@ public class ScreenshotUtils { mTransaction.setColorSpace(mScreenshot, buffer.getColorSpace()); mTransaction.reparent(mScreenshot, mParentSurfaceControl); mTransaction.setLayer(mScreenshot, mLayer); + if (buffer.containsHdrLayers()) { + mTransaction.setDimmingEnabled(mScreenshot, false); + } mTransaction.show(mScreenshot); mTransaction.apply(); } diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java index 6ffeb97f50fa..58007b50350b 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java @@ -27,7 +27,9 @@ import android.util.DisplayMetrics; import android.util.Size; import android.view.Gravity; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; +import com.android.wm.shell.protolog.ShellProtoLogGroup; import java.io.PrintWriter; @@ -39,6 +41,9 @@ public class PipBoundsAlgorithm { private static final String TAG = PipBoundsAlgorithm.class.getSimpleName(); private static final float INVALID_SNAP_FRACTION = -1f; + // The same value (with the same name) is used in Launcher. + private static final float PIP_ASPECT_RATIO_MISMATCH_THRESHOLD = 0.01f; + @NonNull private final PipBoundsState mPipBoundsState; @NonNull protected final PipDisplayLayoutState mPipDisplayLayoutState; @NonNull protected final SizeSpecSource mSizeSpecSource; @@ -206,9 +211,27 @@ public class PipBoundsAlgorithm { */ public static boolean isSourceRectHintValidForEnterPip(Rect sourceRectHint, Rect destinationBounds) { - return sourceRectHint != null - && sourceRectHint.width() > destinationBounds.width() - && sourceRectHint.height() > destinationBounds.height(); + if (sourceRectHint == null || sourceRectHint.isEmpty()) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "isSourceRectHintValidForEnterPip=false, empty hint"); + return false; + } + if (sourceRectHint.width() <= destinationBounds.width() + || sourceRectHint.height() <= destinationBounds.height()) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "isSourceRectHintValidForEnterPip=false, hint(%s) is smaller" + + " than destination(%s)", sourceRectHint, destinationBounds); + return false; + } + final float reportedRatio = destinationBounds.width() / (float) destinationBounds.height(); + final float inferredRatio = sourceRectHint.width() / (float) sourceRectHint.height(); + if (Math.abs(reportedRatio - inferredRatio) > PIP_ASPECT_RATIO_MISMATCH_THRESHOLD) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "isSourceRectHintValidForEnterPip=false, hint(%s) does not match" + + " destination(%s) aspect ratio", sourceRectHint, destinationBounds); + return false; + } + return true; } public float getDefaultAspectRatio() { diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitDecorManager.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitDecorManager.java index de016d3ae400..5097ed8866c9 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitDecorManager.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitDecorManager.java @@ -269,7 +269,9 @@ public class SplitDecorManager extends WindowlessWindowManager { if (update) { if (immediately) { + t.setAlpha(mBackgroundLeash, showVeil ? 1f : 0f); t.setVisibility(mBackgroundLeash, showVeil); + t.setAlpha(mIconLeash, showVeil ? 1f : 0f); t.setVisibility(mIconLeash, showVeil); } else { startFadeAnimation(showVeil, false, null); 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 bfac24b81d2f..2520c25613e7 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 @@ -258,9 +258,15 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } // We're showing the first reachability education so we ignore incoming TaskInfo - // until the education flow has completed or we double tap. + // until the education flow has completed or we double tap. The double-tap + // basically cancel all the onboarding flow. We don't have to ignore events in case + // the app is in size compat mode. if (mIsFirstReachabilityEducationRunning) { - return; + if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap + && !taskInfo.appCompatTaskInfo.topActivityInSizeCompat) { + return; + } + mIsFirstReachabilityEducationRunning = false; } if (taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed) { if (taskInfo.appCompatTaskInfo.isLetterboxEducationEnabled) { @@ -278,17 +284,24 @@ public class CompatUIController implements OnDisplaysChangedListener, final boolean isFirstTimeVerticalReachabilityEdu = !topActivityPillarboxed && !mCompatUIConfiguration.hasSeenVerticalReachabilityEducation(taskInfo); if (isFirstTimeHorizontalReachabilityEdu || isFirstTimeVerticalReachabilityEdu) { - mIsFirstReachabilityEducationRunning = true; mCompatUIConfiguration.setSeenLetterboxEducation(taskInfo.userId); - createOrUpdateReachabilityEduLayout(taskInfo, taskListener); - return; + // We activate the first reachability education if the double-tap is enabled. + // If the double tap is not enabled (e.g. thin letterbox) we just set the value + // of the education being seen. + if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled) { + mIsFirstReachabilityEducationRunning = true; + createOrUpdateReachabilityEduLayout(taskInfo, taskListener); + return; + } } } } createOrUpdateCompatLayout(taskInfo, taskListener); createOrUpdateRestartDialogLayout(taskInfo, taskListener); if (mCompatUIConfiguration.getHasSeenLetterboxEducation(taskInfo.userId)) { - createOrUpdateReachabilityEduLayout(taskInfo, taskListener); + if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled) { + createOrUpdateReachabilityEduLayout(taskInfo, taskListener); + } // The user aspect ratio button should not be handled when a new TaskInfo is // sent because of a double tap or when in multi-window mode. if (taskInfo.getWindowingMode() != WINDOWING_MODE_FULLSCREEN) { diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/OWNERS new file mode 100644 index 000000000000..1875675296a8 --- /dev/null +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/compatui/OWNERS @@ -0,0 +1,4 @@ +# WM shell sub-module compat ui owners +mariiasand@google.com +gracielawputri@google.com +mcarli@google.com diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/OWNERS new file mode 100644 index 000000000000..752d2fd721a5 --- /dev/null +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/OWNERS @@ -0,0 +1,2 @@ +# WM Shell sub-module dagger owners +jorgegil@google.com
\ No newline at end of file diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS index 7ad68aac62c5..afdda8ff865e 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS @@ -2,7 +2,9 @@ atsjenk@google.com jorgegil@google.com madym@google.com -nmusgrave@google.com pbdr@google.com tkachenkoi@google.com vaniadesmonda@google.com +pragyabajoria@google.com +uysalorhan@google.com +gsennton@google.com diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS index 8a0eea0a9bdd..83b5bf658459 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS @@ -5,3 +5,9 @@ madym@google.com nmusgrave@google.com pbdr@google.com tkachenkoi@google.com +vaniadesmonda@google.com +pragyabajoria@google.com +uysalorhan@google.com +gsennton@google.com +mattsziklay@google.com +mdehaini@google.com diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java index e4420d73886e..7004b713cff7 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java @@ -63,7 +63,6 @@ import android.content.res.Configuration; import android.graphics.Rect; import android.os.RemoteException; import android.os.SystemProperties; -import android.util.Rational; import android.view.Choreographer; import android.view.Display; import android.view.Surface; @@ -128,8 +127,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, SystemProperties.getInt( "persist.wm.debug.extra_content_overlay_fade_out_delay_ms", 400); - private static final float PIP_ASPECT_RATIO_MISMATCH_THRESHOLD = 0.005f; - private final Context mContext; private final SyncTransactionQueue mSyncTransactionQueue; private final PipBoundsState mPipBoundsState; @@ -637,6 +634,13 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, return; } + // bail early if leash is null + if (mLeash == null) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "exitPip: leash is null"); + return; + } + final Rect destinationBounds = new Rect(getExitDestinationBounds()); final int direction = syncWithSplitScreenBounds(destinationBounds, requestEnterSplit) ? TRANSITION_DIRECTION_LEAVE_PIP_TO_SPLIT_SCREEN @@ -821,37 +825,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mPictureInPictureParams.getTitle()); mPipParamsChangedForwarder.notifySubtitleChanged( mPictureInPictureParams.getSubtitle()); - - if (mPictureInPictureParams.hasSourceBoundsHint() - && mPictureInPictureParams.hasSetAspectRatio()) { - Rational sourceRectHintAspectRatio = new Rational( - mPictureInPictureParams.getSourceRectHint().width(), - mPictureInPictureParams.getSourceRectHint().height()); - if (sourceRectHintAspectRatio.compareTo( - mPictureInPictureParams.getAspectRatio()) != 0) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "Aspect ratio of source rect hint (%d/%d) does not match the provided " - + "aspect ratio value (%d/%d). Consider matching them for " - + "improved animation. Future releases might override the " - + "value to match.", - mPictureInPictureParams.getSourceRectHint().width(), - mPictureInPictureParams.getSourceRectHint().height(), - mPictureInPictureParams.getAspectRatio().getNumerator(), - mPictureInPictureParams.getAspectRatio().getDenominator()); - } - if (Math.abs(sourceRectHintAspectRatio.floatValue() - - mPictureInPictureParams.getAspectRatioFloat()) - > PIP_ASPECT_RATIO_MISMATCH_THRESHOLD) { - ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "Aspect ratio of source rect hint (%f) does not match the provided " - + "aspect ratio value (%f) and is above threshold of %f. " - + "Consider matching them for improved animation. Future " - + "releases might override the value to match.", - sourceRectHintAspectRatio.floatValue(), - mPictureInPictureParams.getAspectRatioFloat(), - PIP_ASPECT_RATIO_MISMATCH_THRESHOLD); - } - } } mPipUiEventLoggerLogger.setTaskInfo(mTaskInfo); diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java index 0541a0287179..b31ef2b6ad4e 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java @@ -68,6 +68,7 @@ class SplitScreenTransitions { DismissSession mPendingDismiss = null; EnterSession mPendingEnter = null; TransitSession mPendingResize = null; + TransitSession mPendingRemotePassthrough = null; private IBinder mAnimatingTransition = null; private OneShotRemoteHandler mActiveRemoteHandler = null; @@ -320,6 +321,11 @@ class SplitScreenTransitions { return mPendingResize != null && mPendingResize.mTransition == transition; } + boolean isPendingPassThrough(IBinder transition) { + return mPendingRemotePassthrough != null && + mPendingRemotePassthrough.mTransition == transition; + } + @Nullable private TransitSession getPendingTransition(IBinder transition) { if (isPendingEnter(transition)) { @@ -331,6 +337,9 @@ class SplitScreenTransitions { } else if (isPendingResize(transition)) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "\tresolved resize transition"); return mPendingResize; + } else if (isPendingPassThrough(transition)) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "\tresolved passThrough transition"); + return mPendingRemotePassthrough; } return null; } @@ -378,6 +387,19 @@ class SplitScreenTransitions { extraTransitType, resizeAnim); } + /** Sets a transition to enter split. */ + void setRemotePassThroughTransition(@NonNull IBinder transition, + @Nullable RemoteTransition remoteTransition) { + mPendingRemotePassthrough = new TransitSession( + transition, null, null, + remoteTransition, Transitions.TRANSIT_SPLIT_PASSTHROUGH); + + ProtoLog.v(WM_SHELL_TRANSITIONS, " splitTransition " + + " deduced remote passthrough split screen"); + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setRemotePassThrough: transitType=%d remote=%s", + Transitions.TRANSIT_SPLIT_PASSTHROUGH, remoteTransition); + } + /** Starts a transition to dismiss split. */ IBinder startDismissTransition(WindowContainerTransaction wct, Transitions.TransitionHandler handler, @SplitScreen.StageType int dismissTop, @@ -474,6 +496,12 @@ class SplitScreenTransitions { mPendingResize.onConsumed(aborted); mPendingResize = null; ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTransitionConsumed for resize transition"); + } else if (isPendingPassThrough(transition)) { + mPendingRemotePassthrough.onConsumed(aborted); + mPendingRemotePassthrough.mRemoteHandler.onTransitionConsumed(transition, aborted, + finishT); + mPendingRemotePassthrough = null; + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTransitionConsumed for passThrough transition"); } // TODO: handle transition consumed for active remote handler @@ -495,6 +523,10 @@ class SplitScreenTransitions { mPendingResize.onFinished(wct, mFinishTransaction); mPendingResize = null; ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onFinish for resize transition"); + } else if (isPendingPassThrough(mAnimatingTransition)) { + mPendingRemotePassthrough.onFinished(wct, mFinishTransaction); + mPendingRemotePassthrough = null; + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onFinish for passThrough transition"); } mActiveRemoteHandler = null; diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java index b6a18e537600..4287daa03223 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java @@ -2659,6 +2659,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, && displayChange.getStartRotation() != displayChange.getEndRotation()) { mSplitLayout.setFreezeDividerWindow(true); } + if (request.getRemoteTransition() != null) { + mSplitTransitions.setRemotePassThroughTransition(transition, + request.getRemoteTransition()); + } // Still want to monitor everything while in split-screen, so return non-null. return new WindowContainerTransaction(); } else { @@ -2985,6 +2989,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, notifySplitAnimationFinished(); return true; } + } else if (mSplitTransitions.isPendingPassThrough(transition)) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, + "startAnimation: passThrough transition=%d", info.getDebugId()); + mSplitTransitions.mPendingRemotePassthrough.mRemoteHandler.startAnimation(transition, + info, startTransaction, finishTransaction, finishCallback); + notifySplitAnimationFinished(); + return true; } return startPendingAnimation(transition, info, startTransaction, finishTransaction, diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java index 69c41675e989..e49b03d9bf72 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java @@ -114,7 +114,6 @@ public class OneShotRemoteHandler implements Transitions.TransitionHandler { t.clear(); mMainExecutor.execute(() -> { finishCallback.onTransitionFinished(wct); - mRemote = null; }); } }; diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java index f257e207673d..c3a70bb7d0b7 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java @@ -28,12 +28,16 @@ import static android.view.WindowManager.TRANSIT_SLEEP; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.view.WindowManager.fixScale; +import static android.window.TransitionInfo.FLAGS_IS_NON_APP_WINDOW; import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; +import static android.window.TransitionInfo.FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY; import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; import static android.window.TransitionInfo.FLAG_IS_OCCLUDED; +import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; import static android.window.TransitionInfo.FLAG_NO_ANIMATION; import static android.window.TransitionInfo.FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT; +import static com.android.window.flags.Flags.ensureWallpaperInTransitions; import static com.android.systemui.shared.Flags.returnAnimationFrameworkLibrary; import static com.android.wm.shell.shared.TransitionUtil.isClosingType; import static com.android.wm.shell.shared.TransitionUtil.isOpeningType; @@ -73,6 +77,7 @@ import androidx.annotation.BinderThread; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; @@ -184,6 +189,9 @@ public class Transitions implements RemoteCallable<Transitions>, // TRANSIT_FIRST_CUSTOM + 17 TaskFragmentOrganizer.TASK_FRAGMENT_TRANSIT_DRAG_RESIZE; + /** Remote Transition that split accepts but ultimately needs to be animated by the remote. */ + public static final int TRANSIT_SPLIT_PASSTHROUGH = TRANSIT_FIRST_CUSTOM + 18; + /** Transition type for desktop mode transitions. */ public static final int TRANSIT_DESKTOP_MODE_TYPES = WindowManager.TRANSIT_FIRST_CUSTOM + 100; @@ -512,12 +520,17 @@ public class Transitions implements RemoteCallable<Transitions>, boolean isOpening = isOpeningType(info.getType()); for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); - if (change.hasFlags(TransitionInfo.FLAGS_IS_NON_APP_WINDOW)) { + if (change.hasFlags(FLAGS_IS_NON_APP_WINDOW & ~FLAG_IS_WALLPAPER)) { // Currently system windows are controlled by WindowState, so don't change their // surfaces. Otherwise their surfaces could be hidden or cropped unexpectedly. - // This includes Wallpaper (always z-ordered at bottom) and IME (associated with - // app), because there may not be a transition associated with their visibility - // changes, and currently they don't need transition animation. + // This includes IME (associated with app), because there may not be a transition + // associated with their visibility changes, and currently they don't need a + // transition animation. + continue; + } + if (change.hasFlags(FLAG_IS_WALLPAPER) && !ensureWallpaperInTransitions()) { + // Wallpaper is always z-ordered at bottom, and historically is not animated by + // transition handlers. continue; } final SurfaceControl leash = change.getLeash(); @@ -570,6 +583,14 @@ public class Transitions implements RemoteCallable<Transitions>, final boolean isOpening = isOpeningType(transitType); final boolean isClosing = isClosingType(transitType); final int mode = change.getMode(); + // Ensure wallpapers stay in the back + if (change.hasFlags(FLAG_IS_WALLPAPER) && Flags.ensureWallpaperInTransitions()) { + if (mode == TRANSIT_OPEN || mode == TRANSIT_TO_FRONT) { + return -zSplitLine + numChanges - i; + } else { + return -zSplitLine - i; + } + } // Put all the OPEN/SHOW on top if (mode == TRANSIT_OPEN || mode == TRANSIT_TO_FRONT) { if (isOpening) { @@ -703,7 +724,11 @@ public class Transitions implements RemoteCallable<Transitions>, Log.e(TAG, "Got duplicate transitionReady for " + transitionToken); // The transition is already somewhere else in the pipeline, so just return here. t.apply(); - existing.mFinishT.merge(finishT); + if (existing.mFinishT != null) { + existing.mFinishT.merge(finishT); + } else { + existing.mFinishT = finishT; + } return; } // This usually means the system is in a bad state and may not recover; however, @@ -788,14 +813,16 @@ public class Transitions implements RemoteCallable<Transitions>, final int changeSize = info.getChanges().size(); boolean taskChange = false; boolean transferStartingWindow = false; - int noAnimationBehindStartingWindow = 0; + int animBehindStartingWindow = 0; boolean allOccluded = changeSize > 0; for (int i = changeSize - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); taskChange |= change.getTaskInfo() != null; transferStartingWindow |= change.hasFlags(FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT); - if (change.hasAllFlags(FLAG_IS_BEHIND_STARTING_WINDOW | FLAG_NO_ANIMATION)) { - noAnimationBehindStartingWindow++; + if (change.hasAllFlags(FLAG_IS_BEHIND_STARTING_WINDOW | FLAG_NO_ANIMATION) + || change.hasAllFlags( + FLAG_IS_BEHIND_STARTING_WINDOW | FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY)) { + animBehindStartingWindow++; } if (!change.hasFlags(FLAG_IS_OCCLUDED)) { allOccluded = false; @@ -813,11 +840,11 @@ public class Transitions implements RemoteCallable<Transitions>, // There does not need animation when: // A. Transfer starting window. Apply transfer starting window directly if there is no other // task change. Since this is an activity->activity situation, we can detect it by selecting - // transitions with only 2 changes where - // 1. neither are tasks, and + // transitions with changes where + // 1. none are tasks, and // 2. one is a starting-window recipient, or all change is behind starting window. - if (!taskChange && (transferStartingWindow || noAnimationBehindStartingWindow == changeSize) - && changeSize == 2 + if (!taskChange && (transferStartingWindow || animBehindStartingWindow == changeSize) + && changeSize >= 1 // B. It's visibility change if the TRANSIT_TO_BACK/TO_FRONT happened when all // changes are underneath another change. || ((info.getType() == TRANSIT_TO_BACK || info.getType() == TRANSIT_TO_FRONT) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/OWNERS index 4417209b85ed..3f828f547920 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/OWNERS +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/OWNERS @@ -1 +1,3 @@ jorgegil@google.com +mattsziklay@google.com +mdehaini@google.com diff --git a/libs/WindowManager/Shell/tests/OWNERS b/libs/WindowManager/Shell/tests/OWNERS index a77fd51d5fcb..5df525eb7113 100644 --- a/libs/WindowManager/Shell/tests/OWNERS +++ b/libs/WindowManager/Shell/tests/OWNERS @@ -15,3 +15,8 @@ tkachenkoi@google.com mpodolian@google.com jeremysim@google.com peanutbutter@google.com +pragyabajoria@google.com +uysalorhan@google.com +gsennton@google.com +mattsziklay@google.com +mdehaini@google.com diff --git a/libs/WindowManager/Shell/tests/flicker/Android.bp b/libs/WindowManager/Shell/tests/flicker/Android.bp index 4abaf5bd4a38..4058fa977f1d 100644 --- a/libs/WindowManager/Shell/tests/flicker/Android.bp +++ b/libs/WindowManager/Shell/tests/flicker/Android.bp @@ -59,7 +59,7 @@ java_defaults { enabled: false, }, test_suites: ["device-tests"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], static_libs: [ "wm-shell-flicker-utils", "androidx.test.ext.junit", diff --git a/libs/WindowManager/Shell/tests/unittest/Android.bp b/libs/WindowManager/Shell/tests/unittest/Android.bp index 13f95ccea640..787c9f332b2d 100644 --- a/libs/WindowManager/Shell/tests/unittest/Android.bp +++ b/libs/WindowManager/Shell/tests/unittest/Android.bp @@ -61,9 +61,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ @@ -89,3 +89,10 @@ android_test { "com.android.wm.shell.tests", ], } + +test_module_config { + name: "WMShellUnitTests_shell_back", + base: "WMShellUnitTests", + test_suites: ["device-tests"], + include_filters: ["com.android.wm.shell.back"], +} diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt index 8bf011192347..080ad901c656 100644 --- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt +++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt @@ -25,7 +25,6 @@ import android.graphics.Rect import android.os.RemoteException import android.testing.AndroidTestingRunner import android.testing.TestableLooper -import android.view.Choreographer import android.view.RemoteAnimationTarget import android.view.SurfaceControl import android.view.SurfaceControl.Transaction @@ -37,8 +36,6 @@ import androidx.test.filters.SmallTest import com.android.internal.policy.TransitionAnimation import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.ShellTestCase -import java.util.concurrent.CountDownLatch -import java.util.concurrent.TimeUnit import junit.framework.TestCase.assertEquals import org.junit.Assert import org.junit.Before @@ -50,12 +47,13 @@ import org.mockito.ArgumentMatchers.anyFloat import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.eq import org.mockito.Mock -import org.mockito.Mockito.mock import org.mockito.Mockito.never import org.mockito.Mockito.times import org.mockito.kotlin.spy import org.mockito.kotlin.verify import org.mockito.kotlin.whenever +import java.util.concurrent.CountDownLatch +import java.util.concurrent.TimeUnit @SmallTest @TestableLooper.RunWithLooper @@ -82,7 +80,6 @@ class CustomCrossActivityBackAnimationTest : ShellTestCase() { backAnimationBackground, rootTaskDisplayAreaOrganizer, transaction, - mock(Choreographer::class.java), customAnimationLoader ) diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java index 34b2eebb15a1..ae226b807d13 100644 --- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java +++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java @@ -50,8 +50,10 @@ import static org.mockito.Mockito.verify; import android.annotation.NonNull; import android.app.ActivityManager; import android.os.IBinder; +import android.os.RemoteException; import android.view.SurfaceControl; import android.view.SurfaceSession; +import android.window.IRemoteTransition; import android.window.RemoteTransition; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; @@ -326,6 +328,32 @@ public class SplitTransitionTests extends ShellTestCase { @Test @UiThreadTest + public void testRemotePassThroughInvoked() throws RemoteException { + RemoteTransition remoteWrapper = mock(RemoteTransition.class); + IRemoteTransition remoteTransition = mock(IRemoteTransition.class); + IBinder remoteBinder = mock(IBinder.class); + doReturn(remoteBinder).when(remoteTransition).asBinder(); + doReturn(remoteTransition).when(remoteWrapper).getRemoteTransition(); + + TransitionRequestInfo request = new TransitionRequestInfo(TRANSIT_CHANGE, null, + remoteWrapper); + IBinder transition = mock(IBinder.class); + mMainStage.activate(new WindowContainerTransaction(), false); + mStageCoordinator.handleRequest(transition, request); + TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CHANGE, 0) + .build(); + boolean accepted = mStageCoordinator.startAnimation(transition, info, + mock(SurfaceControl.Transaction.class), + mock(SurfaceControl.Transaction.class), + mock(Transitions.TransitionFinishCallback.class)); + assertTrue(accepted); + + verify(remoteTransition, times(1)).startAnimation(any(), + any(), any(), any()); + } + + @Test + @UiThreadTest public void testEnterRecentsAndRestore() { enterSplit(); diff --git a/libs/androidfw/Android.bp b/libs/androidfw/Android.bp index 77800a305f02..15ef58ecf3bd 100644 --- a/libs/androidfw/Android.bp +++ b/libs/androidfw/Android.bp @@ -258,6 +258,8 @@ cc_test { "tests/data/**/*.apk", "tests/data/**/*.arsc", "tests/data/**/*.idmap", + ], + device_common_data: [ ":FrameworkResourcesSparseTestApp", ":FrameworkResourcesNotSparseTestApp", ], diff --git a/libs/androidfw/Asset.cpp b/libs/androidfw/Asset.cpp index 43a70c176a83..5a4cff0c319e 100644 --- a/libs/androidfw/Asset.cpp +++ b/libs/androidfw/Asset.cpp @@ -309,9 +309,8 @@ Asset::Asset(void) return NULL; } - // We succeeded, so relinquish control of dataMap pAsset->mAccessMode = mode; - return std::move(pAsset); + return pAsset; } /* @@ -328,9 +327,8 @@ Asset::Asset(void) return NULL; } - // We succeeded, so relinquish control of dataMap pAsset->mAccessMode = mode; - return std::move(pAsset); + return pAsset; } /* diff --git a/libs/androidfw/PosixUtils.cpp b/libs/androidfw/PosixUtils.cpp index 8ddc57240129..49ee8f7ac4eb 100644 --- a/libs/androidfw/PosixUtils.cpp +++ b/libs/androidfw/PosixUtils.cpp @@ -119,7 +119,7 @@ ProcResult ExecuteBinary(const std::vector<std::string>& argv) { auto err = ReadFile(stderr[0]); result.stderr_str = err ? std::move(*err) : ""; close(stderr[0]); - return std::move(result); + return result; } } diff --git a/libs/appfunctions/OWNERS b/libs/appfunctions/OWNERS new file mode 100644 index 000000000000..c093675ee580 --- /dev/null +++ b/libs/appfunctions/OWNERS @@ -0,0 +1,3 @@ +set noparent + +include /core/java/android/app/appfunctions/OWNERS diff --git a/libs/dream/lowlight/tests/Android.bp b/libs/dream/lowlight/tests/Android.bp index 42547832133b..d3e101681ef2 100644 --- a/libs/dream/lowlight/tests/Android.bp +++ b/libs/dream/lowlight/tests/Android.bp @@ -37,9 +37,9 @@ android_test { "truth", ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ "libdexmakerjvmtiagent", diff --git a/libs/hwui/AutoBackendTextureRelease.cpp b/libs/hwui/AutoBackendTextureRelease.cpp index 5f5ffe97e953..86fede5eb98c 100644 --- a/libs/hwui/AutoBackendTextureRelease.cpp +++ b/libs/hwui/AutoBackendTextureRelease.cpp @@ -140,6 +140,13 @@ void AutoBackendTextureRelease::releaseQueueOwnership(GrDirectContext* context) return; } + if (!RenderThread::isCurrent()) { + // releaseQueueOwnership needs to run on RenderThread to prevent multithread calling + // setBackendTextureState will operate skia resource cache which need single owner + RenderThread::getInstance().queue().post([this, context]() { releaseQueueOwnership(context); }); + return; + } + LOG_ALWAYS_FATAL_IF(Properties::getRenderPipelineType() != RenderPipelineType::SkiaVulkan); if (mBackendTexture.isValid()) { // Passing in VK_IMAGE_LAYOUT_UNDEFINED means we keep the old layout. diff --git a/libs/hwui/Properties.cpp b/libs/hwui/Properties.cpp index 5d3bc89b40dd..d184f64b1c2c 100644 --- a/libs/hwui/Properties.cpp +++ b/libs/hwui/Properties.cpp @@ -101,6 +101,8 @@ float Properties::maxHdrHeadroomOn8bit = 5.f; // TODO: Refine this number bool Properties::clipSurfaceViews = false; bool Properties::hdr10bitPlus = false; +int Properties::timeoutMultiplier = 1; + StretchEffectBehavior Properties::stretchEffectBehavior = StretchEffectBehavior::ShaderHWUI; DrawingEnabled Properties::drawingEnabled = DrawingEnabled::NotInitialized; @@ -174,6 +176,8 @@ bool Properties::load() { base::GetBoolProperty("debug.hwui.clip_surfaceviews", hwui_flags::clip_surfaceviews()); hdr10bitPlus = hwui_flags::hdr_10bit_plus(); + timeoutMultiplier = android::base::GetIntProperty("ro.hw_timeout_multiplier", 1); + return (prevDebugLayersUpdates != debugLayersUpdates) || (prevDebugOverdraw != debugOverdraw); } diff --git a/libs/hwui/Properties.h b/libs/hwui/Properties.h index d3176f6879d2..e2646422030e 100644 --- a/libs/hwui/Properties.h +++ b/libs/hwui/Properties.h @@ -343,6 +343,8 @@ public: static bool clipSurfaceViews; static bool hdr10bitPlus; + static int timeoutMultiplier; + static StretchEffectBehavior getStretchEffectBehavior() { return stretchEffectBehavior; } diff --git a/libs/hwui/Readback.cpp b/libs/hwui/Readback.cpp index afe4c3896ed2..2f15722a23e0 100644 --- a/libs/hwui/Readback.cpp +++ b/libs/hwui/Readback.cpp @@ -91,8 +91,10 @@ void Readback::copySurfaceInto(ANativeWindow* window, const std::shared_ptr<Copy { ATRACE_NAME("sync_wait"); - if (sourceFence != -1 && sync_wait(sourceFence.get(), 500 /* ms */) != NO_ERROR) { - ALOGE("Timeout (500ms) exceeded waiting for buffer fence, abandoning readback attempt"); + int syncWaitTimeoutMs = 500 * Properties::timeoutMultiplier; + if (sourceFence != -1 && sync_wait(sourceFence.get(), syncWaitTimeoutMs) != NO_ERROR) { + ALOGE("Timeout (%dms) exceeded waiting for buffer fence, abandoning readback attempt", + syncWaitTimeoutMs); return request->onCopyFinished(CopyResult::Timeout); } } @@ -109,9 +111,8 @@ void Readback::copySurfaceInto(ANativeWindow* window, const std::shared_ptr<Copy sk_sp<SkColorSpace> colorSpace = DataSpaceToColorSpace(static_cast<android_dataspace>(dataspace)); - sk_sp<SkImage> image = - SkImages::DeferredFromAHardwareBuffer(sourceBuffer.get(), kPremul_SkAlphaType, - colorSpace); + sk_sp<SkImage> image = SkImages::DeferredFromAHardwareBuffer(sourceBuffer.get(), + kPremul_SkAlphaType, colorSpace); if (!image.get()) { return request->onCopyFinished(CopyResult::UnknownError); diff --git a/libs/hwui/hwui/DrawTextFunctor.h b/libs/hwui/hwui/DrawTextFunctor.h index cfca48084d97..d264058737e5 100644 --- a/libs/hwui/hwui/DrawTextFunctor.h +++ b/libs/hwui/hwui/DrawTextFunctor.h @@ -62,6 +62,7 @@ static void simplifyPaint(int color, Paint* paint) { } paint->setStrokeJoin(SkPaint::kRound_Join); paint->setLooper(nullptr); + paint->setBlendMode(SkBlendMode::kSrcOver); } class DrawTextFunctor { diff --git a/libs/hwui/platform/host/android/api-level.h b/libs/hwui/platform/host/android/api-level.h deleted file mode 120000 index 4fb4784f9f60..000000000000 --- a/libs/hwui/platform/host/android/api-level.h +++ /dev/null @@ -1 +0,0 @@ -../../../../../../../bionic/libc/include/android/api-level.h
\ No newline at end of file diff --git a/libs/securebox/tests/Android.bp b/libs/securebox/tests/Android.bp index 80b501da1aa5..8429cf4116c5 100644 --- a/libs/securebox/tests/Android.bp +++ b/libs/securebox/tests/Android.bp @@ -35,9 +35,9 @@ android_test { "truth", ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ "libdexmakerjvmtiagent", diff --git a/location/TEST_MAPPING b/location/TEST_MAPPING index 10da632e7b6f..256affd1040d 100644 --- a/location/TEST_MAPPING +++ b/location/TEST_MAPPING @@ -11,10 +11,7 @@ "name": "CtsLocationNoneTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [{ - "include-filter": "com.android.server.location" - }] + "name": "FrameworksMockingServicesTests_location" } ] } diff --git a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java index 0d5af50d08b5..8b6194fa66f5 100644 --- a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java +++ b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java @@ -27,6 +27,7 @@ import android.telephony.TelephonyManager; import android.telephony.emergency.EmergencyNumber; import android.util.Log; +import com.android.internal.annotations.KeepForWeakReference; import com.android.internal.telephony.flags.Flags; import java.util.concurrent.TimeUnit; @@ -94,6 +95,7 @@ public class GpsNetInitiatedHandler { // The internal implementation of TelephonyManager uses WeakReference so we have to keep a // reference here. + @KeepForWeakReference private final EmergencyCallListener mEmergencyCallListener = new EmergencyCallListener(); private final EmergencyCallCallback mEmergencyCallCallback; diff --git a/location/lib/Android.bp b/location/lib/Android.bp index b10019a94209..67d57749c894 100644 --- a/location/lib/Android.bp +++ b/location/lib/Android.bp @@ -29,6 +29,10 @@ java_sdk_library { libs: [ "androidx.annotation_annotation", ], + stub_only_libs: [ + // Needed for javadoc references. + "framework-location.stubs.system", + ], api_packages: [ "android.location", "com.android.location.provider", diff --git a/media/TEST_MAPPING b/media/TEST_MAPPING index 6ac969527d89..e52e0b16eca3 100644 --- a/media/TEST_MAPPING +++ b/media/TEST_MAPPING @@ -30,24 +30,14 @@ "file_patterns": ["(?i)drm|crypto"] }, { - "name": "CtsMediaDrmFrameworkTestCases", - "options" : [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ], + "name": "CtsMediaDrmFrameworkTestCases_Presubmit", "file_patterns": ["(?i)drm|crypto"] }, { "file_patterns": [ "[^/]*(LoudnessCodec)[^/]*\\.java" ], - "name": "LoudnessCodecApiTest", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ] + "name": "LoudnessCodecApiTest_Presubmit" } ] } diff --git a/media/java/android/media/AudioFormat.java b/media/java/android/media/AudioFormat.java index c90c44152440..0da8371bc824 100644 --- a/media/java/android/media/AudioFormat.java +++ b/media/java/android/media/AudioFormat.java @@ -16,6 +16,9 @@ package android.media; +import static android.media.audio.Flags.FLAG_DOLBY_AC4_LEVEL4_ENCODING_API; + +import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.IntRange; import android.annotation.NonNull; @@ -309,7 +312,7 @@ public final class AudioFormat implements Parcelable { public static final int ENCODING_AAC_ELD = 15; /** Audio data format: AAC xHE compressed */ public static final int ENCODING_AAC_XHE = 16; - /** Audio data format: AC-4 sync frame transport format */ + /** Audio data format: AC-4 (levels 0-3) sync frame transport format */ public static final int ENCODING_AC4 = 17; /** Audio data format: E-AC-3-JOC compressed * E-AC-3-JOC streams can be decoded by downstream devices supporting {@link #ENCODING_E_AC3}. @@ -375,6 +378,9 @@ public final class AudioFormat implements Parcelable { public static final int ENCODING_DTS_UHD_P2 = 30; /** Audio data format: Direct Stream Digital */ public static final int ENCODING_DSD = 31; + /** Audio data format: AC-4 level 4 sync frame transport format */ + @FlaggedApi(FLAG_DOLBY_AC4_LEVEL4_ENCODING_API) + public static final int ENCODING_AC4_L4 = 32; /** @hide */ public static String toLogFriendlyEncoding(int enc) { @@ -413,6 +419,8 @@ public final class AudioFormat implements Parcelable { return "ENCODING_AAC_XHE"; case ENCODING_AC4: return "ENCODING_AC4"; + case ENCODING_AC4_L4: + return "ENCODING_AC4_L4"; case ENCODING_E_AC3_JOC: return "ENCODING_E_AC3_JOC"; case ENCODING_DOLBY_MAT: @@ -823,6 +831,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_AAC_ELD: case ENCODING_AAC_XHE: case ENCODING_AC4: + case ENCODING_AC4_L4: case ENCODING_E_AC3_JOC: case ENCODING_DOLBY_MAT: case ENCODING_OPUS: @@ -863,6 +872,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_AAC_ELD: case ENCODING_AAC_XHE: case ENCODING_AC4: + case ENCODING_AC4_L4: case ENCODING_E_AC3_JOC: case ENCODING_DOLBY_MAT: case ENCODING_OPUS: @@ -908,6 +918,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_AAC_ELD: case ENCODING_AAC_XHE: case ENCODING_AC4: + case ENCODING_AC4_L4: case ENCODING_E_AC3_JOC: case ENCODING_DOLBY_MAT: case ENCODING_OPUS: @@ -950,6 +961,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_AAC_ELD: case ENCODING_AAC_XHE: case ENCODING_AC4: + case ENCODING_AC4_L4: case ENCODING_E_AC3_JOC: case ENCODING_DOLBY_MAT: case ENCODING_OPUS: @@ -1238,6 +1250,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_AAC_ELD: case ENCODING_AAC_XHE: case ENCODING_AC4: + case ENCODING_AC4_L4: case ENCODING_E_AC3_JOC: case ENCODING_DOLBY_MAT: case ENCODING_OPUS: @@ -1468,6 +1481,7 @@ public final class AudioFormat implements Parcelable { ENCODING_AAC_ELD, ENCODING_AAC_XHE, ENCODING_AC4, + ENCODING_AC4_L4, ENCODING_E_AC3_JOC, ENCODING_DOLBY_MAT, ENCODING_OPUS, @@ -1506,6 +1520,7 @@ public final class AudioFormat implements Parcelable { ENCODING_AAC_ELD, ENCODING_AAC_XHE, ENCODING_AC4, + ENCODING_AC4_L4, ENCODING_E_AC3_JOC, ENCODING_DOLBY_MAT, ENCODING_OPUS, @@ -1533,6 +1548,7 @@ public final class AudioFormat implements Parcelable { ENCODING_AAC_LC, ENCODING_DOLBY_TRUEHD, ENCODING_AC4, + ENCODING_AC4_L4, ENCODING_E_AC3_JOC, ENCODING_DOLBY_MAT, ENCODING_MPEGH_BL_L3, @@ -1554,6 +1570,7 @@ public final class AudioFormat implements Parcelable { ENCODING_AAC_LC, ENCODING_DOLBY_TRUEHD, ENCODING_AC4, + ENCODING_AC4_L4, ENCODING_E_AC3_JOC, ENCODING_DOLBY_MAT, ENCODING_MPEGH_BL_L3, @@ -1592,7 +1609,9 @@ public final class AudioFormat implements Parcelable { case ENCODING_DOLBY_TRUEHD: return "Dolby TrueHD"; case ENCODING_AC4: - return "Dolby AC-4"; + return "Dolby AC-4 levels 0-3"; + case ENCODING_AC4_L4: + return "Dolby AC-4 level 4"; case ENCODING_E_AC3_JOC: return "Dolby Atmos in Dolby Digital Plus"; case ENCODING_DOLBY_MAT: diff --git a/media/java/android/media/AudioHalVersionInfo.java b/media/java/android/media/AudioHalVersionInfo.java index 2b6f72eabeec..3e456a65c2e4 100644 --- a/media/java/android/media/AudioHalVersionInfo.java +++ b/media/java/android/media/AudioHalVersionInfo.java @@ -84,7 +84,7 @@ public final class AudioHalVersionInfo implements Parcelable, Comparable<AudioHa * there is a change to supported versions. */ public static final @NonNull List<AudioHalVersionInfo> VERSIONS = - List.of(AIDL_1_0, HIDL_7_1, HIDL_7_0, HIDL_6_0, HIDL_5_0); + List.of(AIDL_1_0, HIDL_7_1, HIDL_7_0, HIDL_6_0); private static final String TAG = "AudioHalVersionInfo"; private AudioHalVersion mHalVersion = new AudioHalVersion(); diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 386a606c61c6..a4d0c1714e23 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -7005,6 +7005,23 @@ public class AudioManager { } /** + * Check whether a user can mute this stream type from a given UI element. + * + * <p>Only useful for volume controllers. + * + * @param streamType type of stream to check if it's mutable from UI + * + * @hide + */ + public boolean isStreamMutableByUi(int streamType) { + try { + return getService().isStreamMutableByUi(streamType); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + /** * Only useful for volume controllers. * @hide */ diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java index 2d0e7abbe890..7b8702fd5271 100644 --- a/media/java/android/media/AudioSystem.java +++ b/media/java/android/media/AudioSystem.java @@ -542,6 +542,8 @@ public class AudioSystem return "AUDIO_FORMAT_AAC_LATM_HE_V2"; // (AAC_LATM | AAC_SUB_HE_V2) case /* AUDIO_FORMAT_E_AC3_JOC */ 0xA000001: return "AUDIO_FORMAT_E_AC3_JOC"; // (E_AC3 | E_AC3_SUB_JOC) + case /* AUDIO_FORMAT_AC4_L4 */ 0x22000001: + return "AUDIO_FORMAT_AC4_L4"; // (AC4 | AC4_SUB_L4) case /* AUDIO_FORMAT_MAT_1_0 */ 0x24000001: return "AUDIO_FORMAT_MAT_1_0"; // (MAT | MAT_SUB_1_0) case /* AUDIO_FORMAT_MAT_2_0 */ 0x24000002: diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index 73deb17d0055..03cd53580b1b 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -1797,6 +1797,7 @@ public class AudioTrack extends PlayerBase (flags != 0 // cannot have any special flags || attributes.getUsage() != AudioAttributes.USAGE_MEDIA || (attributes.getContentType() != AudioAttributes.CONTENT_TYPE_UNKNOWN + && attributes.getContentType() != AudioAttributes.CONTENT_TYPE_SPEECH && attributes.getContentType() != AudioAttributes.CONTENT_TYPE_MUSIC && attributes.getContentType() != AudioAttributes.CONTENT_TYPE_MOVIE))) { return false; diff --git a/media/java/android/media/IAudioService.aidl b/media/java/android/media/IAudioService.aidl index c8b9da50b082..08cc126fb1a8 100644 --- a/media/java/android/media/IAudioService.aidl +++ b/media/java/android/media/IAudioService.aidl @@ -305,6 +305,8 @@ interface IAudioService { boolean isStreamAffectedByMute(int streamType); + boolean isStreamMutableByUi(int streamType); + void disableSafeMediaVolume(String callingPackage); oneway void lowerVolumeToRs1(String callingPackage); diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java index 8acaf3be5152..2ae89d3300c1 100644 --- a/media/java/android/media/MediaCodec.java +++ b/media/java/android/media/MediaCodec.java @@ -18,6 +18,7 @@ package android.media; import static android.media.codec.Flags.FLAG_NULL_OUTPUT_SURFACE; import static android.media.codec.Flags.FLAG_REGION_OF_INTEREST; +import static android.media.codec.Flags.FLAG_SUBSESSION_METRICS; import static com.android.media.codec.flags.Flags.FLAG_LARGE_AUDIO_FRAME; @@ -890,7 +891,7 @@ import java.util.function.Supplier; any start codes), and submit it as a <strong>regular</strong> input buffer. <p> You will receive an {@link #INFO_OUTPUT_FORMAT_CHANGED} return value from {@link - #dequeueOutputBuffer dequeueOutputBuffer} or a {@link Callback#onOutputBufferAvailable + #dequeueOutputBuffer dequeueOutputBuffer} or a {@link Callback#onOutputFormatChanged onOutputFormatChanged} callback just after the picture-size change takes place and before any frames with the new size have been returned. <p class=note> @@ -1835,6 +1836,13 @@ final public class MediaCodec { private static final int CB_CRYPTO_ERROR = 6; private static final int CB_LARGE_FRAME_OUTPUT_AVAILABLE = 7; + /** + * Callback ID for when the metrics for this codec have been flushed due to + * the start of a new subsession. The associated Java Message object will + * contain the flushed metrics as a PersistentBundle in the obj field. + */ + private static final int CB_METRICS_FLUSHED = 8; + private class EventHandler extends Handler { private MediaCodec mCodec; @@ -2007,6 +2015,15 @@ final public class MediaCodec { break; } + case CB_METRICS_FLUSHED: + { + + if (GetFlag(() -> android.media.codec.Flags.subsessionMetrics())) { + mCallback.onMetricsFlushed(mCodec, (PersistableBundle)msg.obj); + } + break; + } + default: { break; @@ -4958,14 +4975,24 @@ final public class MediaCodec { public native final String getCanonicalName(); /** - * Return Metrics data about the current codec instance. + * Return Metrics data about the current codec instance. + * <p> + * Call this method after configuration, during execution, or after + * the codec has been already stopped. + * <p> + * Beginning with {@link android.os.Build.VERSION_CODES#B} + * this method can be used to get the Metrics data prior to an error. + * (e.g. in {@link Callback#onError} or after a method throws + * {@link MediaCodec.CodecException}.) Before that, the Metrics data was + * cleared on error, resulting in a null return value. * * @return a {@link PersistableBundle} containing the set of attributes and values * available for the media being handled by this instance of MediaCodec * The attributes are descibed in {@link MetricsConstants}. * * Additional vendor-specific fields may also be present in - * the return value. + * the return value. Returns null if there is no Metrics data. + * */ public PersistableBundle getMetrics() { PersistableBundle bundle = native_getMetrics(); @@ -5263,6 +5290,8 @@ final public class MediaCodec { * main thread.) */ public void setCallback(@Nullable /* MediaCodec. */ Callback cb, @Nullable Handler handler) { + boolean setCallbackStallFlag = + GetFlag(() -> android.media.codec.Flags.setCallbackStall()); if (cb != null) { synchronized (mListenerLock) { EventHandler newHandler = getEventHandlerOn(handler, mCallbackHandler); @@ -5270,7 +5299,7 @@ final public class MediaCodec { // even if we were to extend this to be callable dynamically, it must // be called when codec is flushed, so no messages are pending. if (newHandler != mCallbackHandler) { - if (android.media.codec.Flags.setCallbackStall()) { + if (setCallbackStallFlag) { logAndRun( "[new handler] removeMessages(SET_CALLBACK)", () -> { @@ -5289,7 +5318,7 @@ final public class MediaCodec { } } } else if (mCallbackHandler != null) { - if (android.media.codec.Flags.setCallbackStall()) { + if (setCallbackStallFlag) { logAndRun( "[null handler] removeMessages(SET_CALLBACK)", () -> { @@ -5690,6 +5719,27 @@ final public class MediaCodec { */ public abstract void onOutputFormatChanged( @NonNull MediaCodec codec, @NonNull MediaFormat format); + + /** + * Called when the metrics for this codec have been flushed due to the + * start of a new subsession. + * <p> + * This can happen when the codec is reconfigured after stop(), or + * mid-stream e.g. if the video size changes. When this happens, the + * metrics for the previous subsession are flushed, and + * {@link MediaCodec#getMetrics} will return the metrics for the + * new subsession. This happens just before the {@link Callback#onOutputFormatChanged} + * event, so this <b>optional</b> callback is provided to be able to + * capture the final metrics for the previous subsession. + * + * @param codec The MediaCodec object. + * @param metrics The flushed metrics for this codec. + */ + @FlaggedApi(FLAG_SUBSESSION_METRICS) + public void onMetricsFlushed( + @NonNull MediaCodec codec, @NonNull PersistableBundle metrics) { + // default implementation ignores this callback. + } } private void postEventFromNative( diff --git a/media/java/android/media/MediaCodecInfo.java b/media/java/android/media/MediaCodecInfo.java index 8ff4305a9817..96edd63a9b12 100644 --- a/media/java/android/media/MediaCodecInfo.java +++ b/media/java/android/media/MediaCodecInfo.java @@ -23,6 +23,7 @@ import static android.media.codec.Flags.FLAG_HLG_EDITING; import static android.media.codec.Flags.FLAG_IN_PROCESS_SW_AUDIO_CODEC; import static android.media.codec.Flags.FLAG_NULL_OUTPUT_SURFACE; import static android.media.codec.Flags.FLAG_REGION_OF_INTEREST; +import static android.media.codec.Flags.FLAG_APV_SUPPORT; import static android.media.MediaCodec.GetFlag; import android.annotation.FlaggedApi; @@ -462,6 +463,33 @@ public final class MediaCodecInfo { @SuppressLint("AllUpper") public static final int COLOR_FormatYUVP010 = 54; + /** + * P210 is 10-bit-per component 4:2:2 YCbCr semiplanar format. + * <p> + * This format uses 32 allocated bits per pixel with 20 bits of + * data per pixel. Chroma planes are subsampled by 2 both + * horizontally. Each chroma and luma component + * has 16 allocated bits in little-endian configuration with 10 + * MSB of actual data. + * + * <pre> + * byte byte + * <--------- i --------> | <------ i + 1 ------> + * +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ + * | UNUSED | Y/Cb/Cr | + * +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ + * 0 5 6 7 0 7 + * bit + * </pre> + * + * Use this format with {@link Image}. This format corresponds + * to {@link android.graphics.ImageFormat#YCBCR_P210}. + * <p> + */ + @SuppressLint("AllUpper") + @FlaggedApi(android.media.codec.Flags.FLAG_P210_FORMAT_SUPPORT) + public static final int COLOR_FormatYUVP210 = 60; + /** @deprecated Use {@link #COLOR_FormatYUV420Flexible}. */ public static final int COLOR_TI_FormatYUV420PackedSemiPlanar = 0x7f000100; // COLOR_FormatSurface indicates that the data will be a GraphicBuffer metadata reference. @@ -4469,6 +4497,265 @@ public final class MediaCodecInfo { @SuppressLint("AllUpper") public static final int AC4Level4 = 0x10; + // Profiles and levels/bands for APV Codec, corresponding to the definitions in + // "Advanced Professional Video", 10.1.3 Profiles, 10.1.4 Levels and Bands + // found at https://www.ietf.org/archive/id/draft-lim-apv-02.html + + /** + * APV codec profile 422-10 as per IETF lim-apv-02, 10.1.3.1.1 + */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVProfile422_10 = 0x01; + + /** + * APV codec profile 422-10 as per IETF lim-apv-02, 10.1.3.1.1 + * with HDR10. + */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVProfile422_10HDR10 = 0x1000; + + /** + * APV codec profile 422-10 as per IETF lim-apv-02, 10.1.3.1.1 + * with HDR10Plus. + */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVProfile422_10HDR10Plus = 0x2000; + + // For APV Levels, the numerical values are constructed as follows: + // ((0x100 << (level_num - 1)) | (1 << band)) + // where: + // - "level_num" is the APV Level numbered consecutively + // (i.e., Level 1 == 1, Level 1.1 == 2, etc.) + // - "band" is the APV Band + + /** APV Codec Level 1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel1Band0 = 0x101; + /** APV Codec Level 1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel1Band1 = 0x102; + /** APV Codec Level 1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel1Band2 = 0x104; + /** APV Codec Level 1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel1Band3 = 0x108; + /** APV Codec Level 1.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel11Band0 = 0x201; + /** APV Codec Level 1.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel11Band1 = 0x202; + /** APV Codec Level 1.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel11Band2 = 0x204; + /** APV Codec Level 1.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel11Band3 = 0x208; + /** APV Codec Level 2, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel2Band0 = 0x401; + /** APV Codec Level 2, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel2Band1 = 0x402; + /** APV Codec Level 2, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel2Band2 = 0x404; + /** APV Codec Level 2, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel2Band3 = 0x408; + /** APV Codec Level 2.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel21Band0 = 0x801; + /** APV Codec Level 2.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel21Band1 = 0x802; + /** APV Codec Level 2.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel21Band2 = 0x804; + /** APV Codec Level 2.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel21Band3 = 0x808; + /** APV Codec Level 3, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel3Band0 = 0x1001; + /** APV Codec Level 3, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel3Band1 = 0x1002; + /** APV Codec Level 3, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel3Band2 = 0x1004; + /** APV Codec Level 3, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel3Band3 = 0x1008; + /** APV Codec Level 3.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel31Band0 = 0x2001; + /** APV Codec Level 3.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel31Band1 = 0x2002; + /** APV Codec Level 3.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel31Band2 = 0x2004; + /** APV Codec Level 3.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel31Band3 = 0x2008; + /** APV Codec Level 4, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel4Band0 = 0x4001; + /** APV Codec Level 4, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel4Band1 = 0x4002; + /** APV Codec Level 4, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel4Band2 = 0x4004; + /** APV Codec Level 4, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel4Band3 = 0x4008; + /** APV Codec Level 4.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel41Band0 = 0x8001; + /** APV Codec Level 4.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel41Band1 = 0x8002; + /** APV Codec Level 4.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel41Band2 = 0x8004; + /** APV Codec Level 4.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel41Band3 = 0x8008; + /** APV Codec Level 5, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel5Band0 = 0x10001; + /** APV Codec Level 5, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel5Band1 = 0x10002; + /** APV Codec Level 5, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel5Band2 = 0x10004; + /** APV Codec Level 5, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel5Band3 = 0x10008; + /** APV Codec Level 5.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel51Band0 = 0x20001; + /** APV Codec Level 5.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel51Band1 = 0x20002; + /** APV Codec Level 5.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel51Band2 = 0x20004; + /** APV Codec Level 5.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel51Band3 = 0x20008; + /** APV Codec Level 6, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel6Band0 = 0x40001; + /** APV Codec Level 6, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel6Band1 = 0x40002; + /** APV Codec Level 6, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel6Band2 = 0x40004; + /** APV Codec Level 6, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel6Band3 = 0x40008; + /** APV Codec Level 6.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel61Band0 = 0x80001; + /** APV Codec Level 6.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel61Band1 = 0x80002; + /** APV Codec Level 6.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel61Band2 = 0x80004; + /** APV Codec Level 6.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel61Band3 = 0x80008; + /** APV Codec Level 7, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel7Band0 = 0x100001; + /** APV Codec Level 7, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel7Band1 = 0x100002; + /** APV Codec Level 7, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel7Band2 = 0x100004; + /** APV Codec Level 7, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel7Band3 = 0x100008; + /** APV Codec Level 7.1, Band 0 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel71Band0 = 0x200001; + /** APV Codec Level 7.1, Band 1 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel71Band1 = 0x200002; + /** APV Codec Level 7.1, Band 2 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel71Band2 = 0x200004; + /** APV Codec Level 7.1, Band 3 as per IETF lim-apv-02, 10.1.4 */ + @SuppressLint("AllUpper") + @FlaggedApi(FLAG_APV_SUPPORT) + public static final int APVLevel71Band3 = 0x200008; + /** * The profile of the media content. Depending on the type of media this can be * one of the profile values defined in this class. diff --git a/media/java/android/media/MediaFormat.java b/media/java/android/media/MediaFormat.java index cd0654ceb348..bd65b2ecb76a 100644 --- a/media/java/android/media/MediaFormat.java +++ b/media/java/android/media/MediaFormat.java @@ -17,7 +17,9 @@ package android.media; import static android.media.codec.Flags.FLAG_IN_PROCESS_SW_AUDIO_CODEC; +import static android.media.codec.Flags.FLAG_NUM_INPUT_SLOTS; import static android.media.codec.Flags.FLAG_REGION_OF_INTEREST; +import static android.media.codec.Flags.FLAG_APV_SUPPORT; import static com.android.media.codec.flags.Flags.FLAG_CODEC_IMPORTANCE; import static com.android.media.codec.flags.Flags.FLAG_LARGE_AUDIO_FRAME; @@ -157,6 +159,8 @@ import java.util.stream.Collectors; public final class MediaFormat { public static final String MIMETYPE_VIDEO_VP8 = "video/x-vnd.on2.vp8"; public static final String MIMETYPE_VIDEO_VP9 = "video/x-vnd.on2.vp9"; + @FlaggedApi(FLAG_APV_SUPPORT) + public static final String MIMETYPE_VIDEO_APV = "video/apv"; public static final String MIMETYPE_VIDEO_AV1 = "video/av01"; public static final String MIMETYPE_VIDEO_AVC = "video/avc"; public static final String MIMETYPE_VIDEO_HEVC = "video/hevc"; @@ -1774,6 +1778,17 @@ public final class MediaFormat { public static final String KEY_SECURITY_MODEL = "security-model"; /** + * A key describing the number of slots used in the codec. When present in input format, + * the associated value indicates the number of input slots. The entry is set by the codec + * if configured with (@link MediaCodec#CONFIGURE_FLAG_BLOCK_MODEL), and will be ignored if set + * by the application. + * <p> + * The associated value is an integer. + */ + @FlaggedApi(FLAG_NUM_INPUT_SLOTS) + public static final String KEY_NUM_SLOTS = "num-slots"; + + /** * QpOffsetRect constitutes the metadata required for encoding a region of interest in an * image or a video frame. The region of interest is represented by a rectangle. The four * integer coordinates of the rectangle are stored in fields left, top, right, bottom. diff --git a/media/java/android/media/MediaMuxer.java b/media/java/android/media/MediaMuxer.java index 80b606c9ec9e..678150b9f3a1 100644 --- a/media/java/android/media/MediaMuxer.java +++ b/media/java/android/media/MediaMuxer.java @@ -34,7 +34,7 @@ import java.util.Map; /** * MediaMuxer facilitates muxing elementary streams. Currently MediaMuxer supports MP4, Webm - * and 3GP file as the output. It also supports muxing B-frames in MP4 since Android Nougat. + * and 3GP file as the output. It also supports muxing B-frames in MP4 since Android Nougat MR1. * <p> * It is generally used like this: * @@ -191,14 +191,14 @@ import java.util.Map; <td>○</td> <td>●</td> </tr> - <td align="center">Muxing B-Frames(bi-directional predicted frames)</td> + <td align="center">Muxing B-Frames (bi-directional predicted frames)</td> + <td>○</td> <td>○</td> <td>○</td> <td>○</td> <td>○</td> <td>○</td> <td>○</td> - <td>⁕</td> <td>⁕</td> <td>⁕</td> </tr> @@ -584,45 +584,108 @@ final public class MediaMuxer { * The following table summarizes codec support for containers across android releases: * * <table> - * <thead> - * <tr> - * <th rowspan=2>OS Version(s)</th> - * <td colspan=3>Codec support</th> - * </tr><tr> - * <th>{@linkplain OutputFormat#MUXER_OUTPUT_MPEG_4 MP4}</th> - * <th>{@linkplain OutputFormat#MUXER_OUTPUT_WEBM WEBM}</th> - * </tr> - * </thead> - * <tbody> - * <tr> - * <td>{@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR2}</td> - * <td rowspan=6>{@link MediaFormat#MIMETYPE_AUDIO_AAC AAC},<br> - * {@link MediaFormat#MIMETYPE_AUDIO_AMR_NB NB-AMR},<br> - * {@link MediaFormat#MIMETYPE_AUDIO_AMR_WB WB-AMR},<br> - * {@link MediaFormat#MIMETYPE_VIDEO_H263 H.263},<br> - * {@link MediaFormat#MIMETYPE_VIDEO_MPEG4 MPEG-4},<br> - * {@link MediaFormat#MIMETYPE_VIDEO_AVC AVC} (H.264)</td> - * <td rowspan=3>Not supported</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#KITKAT}</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#KITKAT_WATCH}</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#LOLLIPOP}</td> - * <td rowspan=3>{@link MediaFormat#MIMETYPE_AUDIO_VORBIS Vorbis},<br> - * {@link MediaFormat#MIMETYPE_VIDEO_VP8 VP8}</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#LOLLIPOP_MR1}</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#M}</td> - * </tr><tr> - * <td>{@link android.os.Build.VERSION_CODES#N}</td> - * <td>as above, plus<br> - * {@link MediaFormat#MIMETYPE_VIDEO_HEVC HEVC} (H.265)</td> - * <td>as above, plus<br> - * {@link MediaFormat#MIMETYPE_VIDEO_VP9 VP9}</td> - * </tr> - * </tbody> + * <thead> + * <tr> + * <th>Codec</th> + * <th>{@linkplain OutputFormat#MUXER_OUTPUT_MPEG_4 MP4}</th> + * <th>{@linkplain OutputFormat#MUXER_OUTPUT_WEBM WEBM}</th> + * <th>{@linkplain OutputFormat#MUXER_OUTPUT_OGG OGG}</th> + * <th>Supported From SDK version</th> + * </tr> + * </thead> + * <tbody> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_AUDIO_AAC AAC}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_AUDIO_AMR_NB NB-AMR}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_AUDIO_AMR_WB WB-AMR}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_H263 H.263}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_MPEG4 MPEG-4}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_AVC AVC} (H.264)</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>17</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_AUDIO_VORBIS Vorbis}</td> + * <td></td> + * <td>✓</td> + * <td></td> + * <td>21</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_VP8 VP8}</td> + * <td></td> + * <td>✓</td> + * <td></td> + * <td>21</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_VP9 VP9}</td> + * <td></td> + * <td>✓</td> + * <td></td> + * <td>24</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_HEVC HEVC} (H.265)</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>24</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_AUDIO_OPUS OPUS}</td> + * <td></td> + * <td>✓</td> + * <td>✓</td> + * <td>26</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_AV1 AV1}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>31</td> + * </tr> + * <tr> + * <td>{@link MediaFormat#MIMETYPE_VIDEO_DOLBY_VISION Dolby Vision}</td> + * <td>✓</td> + * <td></td> + * <td></td> + * <td>32</td> + * </tr> + * </tbody> * </table> * * @param format The media format for the track. This must not be an empty diff --git a/media/java/android/media/MediaRoute2Info.java b/media/java/android/media/MediaRoute2Info.java index 0589c0f12ab6..e048d5c56cfe 100644 --- a/media/java/android/media/MediaRoute2Info.java +++ b/media/java/android/media/MediaRoute2Info.java @@ -26,6 +26,7 @@ import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.SuppressLint; import android.annotation.TestApi; import android.net.Uri; import android.os.Bundle; @@ -813,6 +814,34 @@ public final class MediaRoute2Info implements Parcelable { || mAllowedPackages.contains(packageName); } + /** + * Returns whether this route's type can only be published by the system route provider. + * + * @see #isSystemRoute() + * @hide + */ + // The default case catches all other types. + @SuppressLint("SwitchIntDef") + public boolean isSystemRouteType() { + return switch (mType) { + case TYPE_BUILTIN_SPEAKER, + TYPE_BLUETOOTH_A2DP, + TYPE_DOCK, + TYPE_BLE_HEADSET, + TYPE_HEARING_AID, + TYPE_HDMI, + TYPE_HDMI_ARC, + TYPE_HDMI_EARC, + TYPE_USB_ACCESSORY, + TYPE_USB_DEVICE, + TYPE_USB_HEADSET, + TYPE_WIRED_HEADPHONES, + TYPE_WIRED_HEADSET -> + true; + default -> false; + }; + } + /** Returns the route suitability status. */ @SuitabilityStatus @FlaggedApi(FLAG_ENABLE_BUILT_IN_SPEAKER_ROUTE_SUITABILITY_STATUSES) diff --git a/media/java/android/media/MediaRoute2ProviderService.java b/media/java/android/media/MediaRoute2ProviderService.java index cce3d4fc67d5..a14f1fd15f27 100644 --- a/media/java/android/media/MediaRoute2ProviderService.java +++ b/media/java/android/media/MediaRoute2ProviderService.java @@ -475,9 +475,25 @@ public abstract class MediaRoute2ProviderService extends Service { */ public final void notifyRoutes(@NonNull Collection<MediaRoute2Info> routes) { Objects.requireNonNull(routes, "routes must not be null"); - mProviderInfo = new MediaRoute2ProviderInfo.Builder() - .addRoutes(routes) - .build(); + List<MediaRoute2Info> sanitizedRoutes = new ArrayList<>(routes.size()); + + for (MediaRoute2Info route : routes) { + if (route.isSystemRouteType()) { + Log.w( + TAG, + "Attempting to add a system route type from a non-system route " + + "provider. Overriding type to TYPE_UNKNOWN. Route: " + + route); + sanitizedRoutes.add( + new MediaRoute2Info.Builder(route) + .setType(MediaRoute2Info.TYPE_UNKNOWN) + .build()); + } else { + sanitizedRoutes.add(route); + } + } + + mProviderInfo = new MediaRoute2ProviderInfo.Builder().addRoutes(sanitizedRoutes).build(); schedulePublishState(); } diff --git a/media/java/android/media/MediaRouter2.java b/media/java/android/media/MediaRouter2.java index 0667bfda7596..1930c3d8b9b7 100644 --- a/media/java/android/media/MediaRouter2.java +++ b/media/java/android/media/MediaRouter2.java @@ -107,7 +107,8 @@ public final class MediaRouter2 { * #SCANNING_STATE_WHILE_INTERACTIVE}. * * <p>Routers requesting unrestricted scanning must hold {@link - * Manifest.permission#MEDIA_ROUTING_CONTROL}. + * Manifest.permission#MEDIA_ROUTING_CONTROL} or {@link + * Manifest.permission#MEDIA_CONTENT_CONTROL}. * * @hide */ @@ -522,11 +523,16 @@ public final class MediaRouter2 { * * <p>{@code scanRequest} specifies relevant scanning options, like whether the system should * scan with the screen off. Screen off scanning requires {@link - * Manifest.permission#MEDIA_ROUTING_CONTROL} + * Manifest.permission#MEDIA_ROUTING_CONTROL} or {@link + * Manifest.permission#MEDIA_CONTENT_CONTROL}. * * <p>Proxy routers use the registered {@link RouteDiscoveryPreference} of their target routers. * * @return A unique {@link ScanToken} that identifies the scan request. + * @throws SecurityException If a {@link ScanRequest} with {@link + * ScanRequest.Builder#setScreenOffScan} true is passed, while not holding {@link + * Manifest.permission#MEDIA_ROUTING_CONTROL} or {@link + * Manifest.permission#MEDIA_CONTENT_CONTROL}. */ @FlaggedApi(FLAG_ENABLE_SCREEN_OFF_SCANNING) @NonNull @@ -1745,8 +1751,9 @@ public final class MediaRouter2 { /** * Sets whether the app is requesting to scan even while the screen is off, bypassing - * default scanning restrictions. Only companion apps holding {@link - * Manifest.permission#MEDIA_ROUTING_CONTROL} should set this to {@code true}. + * default scanning restrictions. Only apps holding {@link + * Manifest.permission#MEDIA_ROUTING_CONTROL} or {@link + * Manifest.permission#MEDIA_CONTENT_CONTROL} should set this to {@code true}. * * @see #requestScan(ScanRequest) */ diff --git a/media/java/android/media/audiofx/Equalizer.java b/media/java/android/media/audiofx/Equalizer.java index 7abada07181d..09863450a717 100644 --- a/media/java/android/media/audiofx/Equalizer.java +++ b/media/java/android/media/audiofx/Equalizer.java @@ -153,9 +153,8 @@ public class Equalizer extends AudioEffect { param[0] = PARAM_GET_PRESET_NAME; for (int i = 0; i < mNumPresets; i++) { param[1] = i; - checkStatus(getParameter(param, value)); - int length = 0; - while (value[length] != 0) length++; + final int length = getParameter(param, value); + checkStatus(length); try { mPresetNames[i] = new String(value, 0, length, "ISO-8859-1"); } catch (java.io.UnsupportedEncodingException e) { diff --git a/media/java/android/media/flags/editing.aconfig b/media/java/android/media/flags/editing.aconfig index bf6ec9635912..0adc4783445a 100644 --- a/media/java/android/media/flags/editing.aconfig +++ b/media/java/android/media/flags/editing.aconfig @@ -8,3 +8,17 @@ flag { description: "Add media metrics for transcoding/editing events." bug: "297487694" } + +flag { + name: "stagefrightrecorder_enable_b_frames" + namespace: "media_solutions" + description: "Enable B frames for Stagefright recorder." + bug: "341121900" +} + +flag { + name: "muxer_mp4_enable_apv" + namespace: "media_solutions" + description: "Enable APV support in mp4 writer." + bug: "370061501" +} diff --git a/media/java/android/media/flags/media_better_together.aconfig b/media/java/android/media/flags/media_better_together.aconfig index 91c4f118658a..7c41f968a03b 100644 --- a/media/java/android/media/flags/media_better_together.aconfig +++ b/media/java/android/media/flags/media_better_together.aconfig @@ -134,3 +134,13 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + name: "enable_full_scan_with_media_content_control" + namespace: "media_better_together" + description: "Allows holders of the MEDIA_CONTENT_CONTROL permission to scan for routes while not in the foreground." + bug: "352401364" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/media/java/android/media/projection/OWNERS b/media/java/android/media/projection/OWNERS index 880ec8fdef88..2b727445c797 100644 --- a/media/java/android/media/projection/OWNERS +++ b/media/java/android/media/projection/OWNERS @@ -1,7 +1,7 @@ # Bug component: 1345447 -michaelwr@google.com -santoscordon@google.com -chaviw@google.com -nmusgrave@google.com +marvinramin@google.com dakinola@google.com +vaniadesmonda@google.com +caen@google.com +santoscordon@google.com
\ No newline at end of file diff --git a/media/java/android/media/projection/TEST_MAPPING b/media/java/android/media/projection/TEST_MAPPING index 7aa9118e45ee..b33097c50002 100644 --- a/media/java/android/media/projection/TEST_MAPPING +++ b/media/java/android/media/projection/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "MediaProjectionTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "MediaProjectionTests" } ] } diff --git a/media/java/android/media/session/PlaybackState.java b/media/java/android/media/session/PlaybackState.java index 47637b82111a..290d49b31eb7 100644 --- a/media/java/android/media/session/PlaybackState.java +++ b/media/java/android/media/session/PlaybackState.java @@ -15,10 +15,8 @@ */ package android.media.session; -import static com.android.media.flags.Flags.FLAG_ENABLE_NOTIFYING_ACTIVITY_MANAGER_WITH_MEDIA_SESSION_STATUS_CHANGE; import android.annotation.DrawableRes; -import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.LongDef; import android.annotation.Nullable; @@ -187,13 +185,21 @@ public final class PlaybackState implements Parcelable { */ public static final long ACTION_SET_PLAYBACK_SPEED = 1 << 22; - /** - * @hide - */ - @IntDef({STATE_NONE, STATE_STOPPED, STATE_PAUSED, STATE_PLAYING, STATE_FAST_FORWARDING, - STATE_REWINDING, STATE_BUFFERING, STATE_ERROR, STATE_CONNECTING, - STATE_SKIPPING_TO_PREVIOUS, STATE_SKIPPING_TO_NEXT, STATE_SKIPPING_TO_QUEUE_ITEM, - STATE_PLAYBACK_SUPPRESSED}) + /** @hide */ + @IntDef({ + STATE_NONE, + STATE_STOPPED, + STATE_PAUSED, + STATE_PLAYING, + STATE_FAST_FORWARDING, + STATE_REWINDING, + STATE_BUFFERING, + STATE_ERROR, + STATE_CONNECTING, + STATE_SKIPPING_TO_PREVIOUS, + STATE_SKIPPING_TO_NEXT, + STATE_SKIPPING_TO_QUEUE_ITEM + }) @Retention(RetentionPolicy.SOURCE) public @interface State {} @@ -290,19 +296,6 @@ public final class PlaybackState implements Parcelable { public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; /** - * State indicating that playback is paused due to an external transient interruption, like a - * phone call. - * - * <p>This state is different from {@link #STATE_PAUSED} in that it is deemed transitory, - * possibly allowing the service associated to the session in this state to run in the - * foreground. - * - * @see Builder#setState - */ - @FlaggedApi(FLAG_ENABLE_NOTIFYING_ACTIVITY_MANAGER_WITH_MEDIA_SESSION_STATUS_CHANGE) - public static final int STATE_PLAYBACK_SUPPRESSED = 12; - - /** * Use this value for the position to indicate the position is not known. */ public static final long PLAYBACK_POSITION_UNKNOWN = -1; @@ -401,7 +394,6 @@ public final class PlaybackState implements Parcelable { * <li> {@link PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_NEXT}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li> - * <li> {@link PlaybackState#STATE_PLAYBACK_SUPPRESSED}</li> * </ul> */ @State @@ -525,7 +517,6 @@ public final class PlaybackState implements Parcelable { * <li>{@link #STATE_SKIPPING_TO_NEXT}</li> * <li>{@link #STATE_SKIPPING_TO_PREVIOUS}</li> * <li>{@link #STATE_SKIPPING_TO_QUEUE_ITEM}</li> - * <li>{@link #STATE_PLAYBACK_SUPPRESSED}</li> * </ul> */ public boolean isActive() { @@ -538,7 +529,6 @@ public final class PlaybackState implements Parcelable { case PlaybackState.STATE_BUFFERING: case PlaybackState.STATE_CONNECTING: case PlaybackState.STATE_PLAYING: - case PlaybackState.STATE_PLAYBACK_SUPPRESSED: return true; } return false; @@ -584,8 +574,6 @@ public final class PlaybackState implements Parcelable { return "SKIPPING_TO_NEXT"; case STATE_SKIPPING_TO_QUEUE_ITEM: return "SKIPPING_TO_QUEUE_ITEM"; - case STATE_PLAYBACK_SUPPRESSED: - return "STATE_PLAYBACK_SUPPRESSED"; default: return "UNKNOWN"; } @@ -823,7 +811,6 @@ public final class PlaybackState implements Parcelable { * <li> {@link PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_NEXT}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li> - * <li> {@link PlaybackState#STATE_PLAYBACK_SUPPRESSED}</li> * </ul> * * @param state The current state of playback. @@ -868,7 +855,6 @@ public final class PlaybackState implements Parcelable { * <li> {@link PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_NEXT}</li> * <li> {@link PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li> - * <li> {@link PlaybackState#STATE_PLAYBACK_SUPPRESSED}</li> * </ul> * * @param state The current state of playback. diff --git a/media/java/android/media/tv/TvView.java b/media/java/android/media/tv/TvView.java index e604cb7e918b..82e6ed3d9597 100644 --- a/media/java/android/media/tv/TvView.java +++ b/media/java/android/media/tv/TvView.java @@ -91,7 +91,7 @@ public class TvView extends ViewGroup { private static final Object sMainTvViewLock = new Object(); private static WeakReference<TvView> sMainTvView = NULL_TV_VIEW; - private final Handler mHandler = new Handler(); + private Handler mHandler = new Handler(); private Session mSession; private SurfaceView mSurfaceView; private Surface mSurface; @@ -207,6 +207,17 @@ public class TvView extends ViewGroup { mCallback = callback; } + /** + * Sets the handler to be invoked when an event is dispatched to this TvView. + * If handler is not set by this function, TvView will use its default handler. + * + * @param handler The handler to handle events. + * @hide + */ + public void setHandler(@NonNull Handler handler) { + mHandler = handler; + } + /** @hide */ public Session getInputSession() { return mSession; diff --git a/media/java/android/mtp/OWNERS b/media/java/android/mtp/OWNERS index 6b5336e83bdc..77ed08b1f9a5 100644 --- a/media/java/android/mtp/OWNERS +++ b/media/java/android/mtp/OWNERS @@ -1,10 +1,9 @@ set noparent -aprasath@google.com anothermark@google.com -kumarashishg@google.com -sarup@google.com +febinthattil@google.com +aprasath@google.com jsharkey@android.com jameswei@google.com rmojumder@google.com - +kumarashishg@google.com diff --git a/media/jni/JetPlayer.h b/media/jni/JetPlayer.h index bb569bcad7be..4cc266dec445 100644 --- a/media/jni/JetPlayer.h +++ b/media/jni/JetPlayer.h @@ -40,7 +40,7 @@ public: static const int JET_NUMQUEUEDSEGMENT_UPDATE = 3; static const int JET_PAUSE_UPDATE = 4; - JetPlayer(void *javaJetPlayer, + explicit JetPlayer(void *javaJetPlayer, int maxTracks = 32, int trackBufferSize = 1200); ~JetPlayer(); @@ -69,7 +69,6 @@ private: void fireUpdateOnStatusChange(); void fireEventsFromJetQueue(); - JetPlayer() {} // no default constructor void dump(); void dumpJetStatus(S_JET_STATUS* pJetStatus); @@ -96,7 +95,7 @@ private: class JetPlayerThread : public Thread { public: - JetPlayerThread(JetPlayer *player) : mPlayer(player) { + explicit JetPlayerThread(JetPlayer *player) : mPlayer(player) { } protected: @@ -106,8 +105,7 @@ private: JetPlayer *mPlayer; bool threadLoop() { - int result; - result = mPlayer->render(); + mPlayer->render(); return false; } diff --git a/media/jni/android_media_ImageReader.cpp b/media/jni/android_media_ImageReader.cpp index 371e3d2deda5..b0c280b426bf 100644 --- a/media/jni/android_media_ImageReader.cpp +++ b/media/jni/android_media_ImageReader.cpp @@ -935,6 +935,11 @@ static jint Image_getFormat(JNIEnv* env, jobject thiz, jint readerFormat) return static_cast<jint>(PublicFormat::PRIVATE); } else { BufferItem* buffer = Image_getBufferItem(env, thiz); + if (buffer == nullptr) { + jniThrowException(env, "java/lang/IllegalStateException", + "Image is not initialized"); + return -1; + } int readerHalFormat = mapPublicFormatToHalFormat(static_cast<PublicFormat>(readerFormat)); int32_t fmt = applyFormatOverrides( buffer->mGraphicBuffer->getPixelFormat(), readerHalFormat); @@ -953,6 +958,11 @@ static jint Image_getFormat(JNIEnv* env, jobject thiz, jint readerFormat) static jobject Image_getHardwareBuffer(JNIEnv* env, jobject thiz) { BufferItem* buffer = Image_getBufferItem(env, thiz); + if (buffer == nullptr) { + jniThrowException(env, "java/lang/IllegalStateException", + "Image is not initialized"); + return NULL; + } AHardwareBuffer* b = AHardwareBuffer_from_GraphicBuffer(buffer->mGraphicBuffer.get()); // don't user the public AHardwareBuffer_toHardwareBuffer() because this would force us // to link against libandroid.so diff --git a/media/jni/android_media_ImageWriter.cpp b/media/jni/android_media_ImageWriter.cpp index f64233fb9c79..12734104bcb7 100644 --- a/media/jni/android_media_ImageWriter.cpp +++ b/media/jni/android_media_ImageWriter.cpp @@ -1023,16 +1023,19 @@ static void Image_getLockedImage(JNIEnv* env, jobject thiz, LockedImage *image) return; } + // Maintain a StrongPointer so that the GraphicBuffer isn't destroyed when the + // StrongPointer in lockImageFromBuffer goes out of scope. + sp<GraphicBuffer> bufferSp(buffer); // ImageWriter doesn't use crop by itself, app sets it, use the no crop version. - const Rect noCrop(buffer->width, buffer->height); + const Rect noCrop(bufferSp->width, bufferSp->height); status_t res = lockImageFromBuffer( - buffer, GRALLOC_USAGE_SW_WRITE_OFTEN, noCrop, fenceFd, image); + bufferSp, GRALLOC_USAGE_SW_WRITE_OFTEN, noCrop, fenceFd, image); // Clear the fenceFd as it is already consumed by lock call. env->SetIntField(thiz, gSurfaceImageClassInfo.mNativeFenceFd, -1); if (res != OK) { jniThrowExceptionFmt(env, "java/lang/RuntimeException", "lock buffer failed for format 0x%x", - buffer->getPixelFormat()); + bufferSp->getPixelFormat()); return; } diff --git a/media/jni/android_media_MediaCodecLinearBlock.h b/media/jni/android_media_MediaCodecLinearBlock.h index 060abfdc1ee5..ffbf0a826b4a 100644 --- a/media/jni/android_media_MediaCodecLinearBlock.h +++ b/media/jni/android_media_MediaCodecLinearBlock.h @@ -62,7 +62,7 @@ struct JMediaCodecLinearBlock { std::shared_ptr<C2Buffer> buffer = C2Buffer::CreateLinearBuffer(block.subBlock(offset, size)); for (const std::shared_ptr<const C2Info> &info : mBuffer->info()) { - std::shared_ptr<C2Param> param = std::move(C2Param::Copy(*info)); + std::shared_ptr<C2Param> param = C2Param::Copy(*info); buffer->setInfo(std::static_pointer_cast<C2Info>(param)); } return buffer; diff --git a/media/lib/tvremote/tests/Android.bp b/media/lib/tvremote/tests/Android.bp index 280c515e9a9e..83061cf14b0f 100644 --- a/media/lib/tvremote/tests/Android.bp +++ b/media/lib/tvremote/tests/Android.bp @@ -11,9 +11,9 @@ android_test { name: "TvRemoteTests", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", - "com.android.media.tv.remoteprovider", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "com.android.media.tv.remoteprovider.impl", ], static_libs: [ "mockito-target-minus-junit4", diff --git a/media/mca/tests/Android.bp b/media/mca/tests/Android.bp index 04f083dee093..463e131f1dfd 100644 --- a/media/mca/tests/Android.bp +++ b/media/mca/tests/Android.bp @@ -10,8 +10,8 @@ package { android_test { name: "CameraEffectsTests", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "junit", diff --git a/media/native/midi/Android.bp b/media/native/midi/Android.bp index a991a71fd3f1..7acb8c744ba7 100644 --- a/media/native/midi/Android.bp +++ b/media/native/midi/Android.bp @@ -74,8 +74,4 @@ ndk_library { symbol_file: "libamidi.map.txt", first_version: "29", - export_header_libs: [ - "amidi", - ], - } diff --git a/media/packages/BluetoothMidiService/tests/unit/Android.bp b/media/packages/BluetoothMidiService/tests/unit/Android.bp index 67c7e4230f30..54d6dfc658ed 100644 --- a/media/packages/BluetoothMidiService/tests/unit/Android.bp +++ b/media/packages/BluetoothMidiService/tests/unit/Android.bp @@ -39,8 +39,8 @@ android_test { test_suites: ["device-tests"], libs: [ "framework-res", - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], } diff --git a/media/tests/AudioPolicyTest/Android.bp b/media/tests/AudioPolicyTest/Android.bp index 3dc2a0a9fd7c..43b1a355334a 100644 --- a/media/tests/AudioPolicyTest/Android.bp +++ b/media/tests/AudioPolicyTest/Android.bp @@ -24,3 +24,11 @@ android_test { resource_dirs: ["res"], test_suites: ["device-tests"], } + +test_module_config { + name: "audiopolicytest_audiopolicytest_audiopolicydeathtest_Presubmit", + base: "audiopolicytest", + test_suites: ["device-tests"], + include_filters: ["com.android.audiopolicytest.AudioPolicyDeathTest"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/media/tests/LoudnessCodecApiTest/Android.bp b/media/tests/LoudnessCodecApiTest/Android.bp index 5ca0fc9661c2..5d1153d93b4f 100644 --- a/media/tests/LoudnessCodecApiTest/Android.bp +++ b/media/tests/LoudnessCodecApiTest/Android.bp @@ -25,3 +25,10 @@ android_test { resource_dirs: ["res"], test_suites: ["device-tests"], } + +test_module_config { + name: "LoudnessCodecApiTest_Presubmit", + base: "LoudnessCodecApiTest", + test_suites: ["device-tests"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/media/tests/MediaFrameworkTest/Android.bp b/media/tests/MediaFrameworkTest/Android.bp index 1325fc161b77..7ee8777266df 100644 --- a/media/tests/MediaFrameworkTest/Android.bp +++ b/media/tests/MediaFrameworkTest/Android.bp @@ -11,9 +11,9 @@ android_test { name: "mediaframeworktest", srcs: ["**/*.java"], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], static_libs: [ "mockito-target-inline-minus-junit4", diff --git a/media/tests/MediaRouter/Android.bp b/media/tests/MediaRouter/Android.bp index d21cb9319885..e4f88a65ed1a 100644 --- a/media/tests/MediaRouter/Android.bp +++ b/media/tests/MediaRouter/Android.bp @@ -14,8 +14,8 @@ android_test { srcs: ["**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ diff --git a/media/tests/MtpTests/OWNERS b/media/tests/MtpTests/OWNERS index 6b5336e83bdc..bdb6cdbea332 100644 --- a/media/tests/MtpTests/OWNERS +++ b/media/tests/MtpTests/OWNERS @@ -1,10 +1,9 @@ set noparent -aprasath@google.com anothermark@google.com -kumarashishg@google.com -sarup@google.com +febinthattil@google.com +aprasath@google.com jsharkey@android.com jameswei@google.com rmojumder@google.com - +kumarashishg@google.com
\ No newline at end of file diff --git a/media/tests/TunerTest/Android.bp b/media/tests/TunerTest/Android.bp index 8e8816cee876..634438e72b59 100644 --- a/media/tests/TunerTest/Android.bp +++ b/media/tests/TunerTest/Android.bp @@ -13,14 +13,14 @@ android_test { srcs: ["**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.rules", "compatibility-device-util-axt", - "testng" + "testng", ], platform_apis: true, diff --git a/media/tests/projection/Android.bp b/media/tests/projection/Android.bp index fd5f19535537..94db2c02eb28 100644 --- a/media/tests/projection/Android.bp +++ b/media/tests/projection/Android.bp @@ -18,9 +18,9 @@ android_test { srcs: ["**/*.java"], libs: [ - "android.test.base", - "android.test.mock", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", + "android.test.runner.stubs.system", ], static_libs: [ diff --git a/mime/Android.bp b/mime/Android.bp index 757862b998b4..20110f1dfb47 100644 --- a/mime/Android.bp +++ b/mime/Android.bp @@ -92,7 +92,7 @@ filegroup { visibility: [ "//visibility:private", ], - srcs: [ + device_common_srcs: [ ":debian.mime.types.minimized", ":android.mime.types.minimized", ":vendor.mime.types.minimized", diff --git a/native/android/Android.bp b/native/android/Android.bp index 8945bd1444f0..3afcf603fd54 100644 --- a/native/android/Android.bp +++ b/native/android/Android.bp @@ -27,9 +27,6 @@ ndk_library { symbol_file: "libandroid.map.txt", first_version: "9", unversioned_until: "current", - export_header_libs: [ - "libandroid_headers", - ], } cc_defaults { diff --git a/native/android/TEST_MAPPING b/native/android/TEST_MAPPING index 7c710982e4f6..be84574e6a2c 100644 --- a/native/android/TEST_MAPPING +++ b/native/android/TEST_MAPPING @@ -14,12 +14,7 @@ "file_patterns": ["permission_manager.cpp"] }, { - "name": "CtsOsTestCases", - "options": [ - { - "include-filter": "android.os.cts.PerformanceHintManagerTest" - } - ], + "name": "CtsOsTestCases_cts_performancehintmanagertest", "file_patterns": ["performance_hint.cpp"] } ], diff --git a/native/graphics/jni/Android.bp b/native/graphics/jni/Android.bp index 8f16f762f7ef..0fb3049f63d8 100644 --- a/native/graphics/jni/Android.bp +++ b/native/graphics/jni/Android.bp @@ -127,3 +127,30 @@ cc_fuzz { "-DPNG_MUTATOR_DEFINE_LIBFUZZER_CUSTOM_MUTATOR", ], } + +cc_fuzz { + name: "imagedecoder_heif_fuzzer", + defaults: ["imagedecoder_fuzzer_defaults"], + team: "trendy_team_android_core_graphics_stack", + shared_libs: [ + "libfakeservicemanager", + ], + target: { + android: { + shared_libs: [ + "libmediaplayerservice", + "libmediaextractorservice", + ], + }, + host: { + static_libs: [ + "libbinder_random_parcel", + "libcutils", + ], + }, + }, + include_dirs: ["frameworks/av/services/mediaextractor"], + cflags: [ + "-DFUZZ_HEIF_FORMAT", + ], +} diff --git a/native/graphics/jni/fuzz/fuzz_imagedecoder.cpp b/native/graphics/jni/fuzz/fuzz_imagedecoder.cpp index 6743997fb152..f739e4a1d1a2 100644 --- a/native/graphics/jni/fuzz/fuzz_imagedecoder.cpp +++ b/native/graphics/jni/fuzz/fuzz_imagedecoder.cpp @@ -18,6 +18,16 @@ #include <binder/IPCThreadState.h> #include <fuzzer/FuzzedDataProvider.h> +#ifdef FUZZ_HEIF_FORMAT +#include <fakeservicemanager/FakeServiceManager.h> +#ifdef __ANDROID__ +#include <MediaExtractorService.h> +#include <MediaPlayerService.h> +#else +#include <fuzzbinder/random_binder.h> +#endif //__ANDROID__ +#endif // FUZZ_HEIF_FORMAT + #ifdef PNG_MUTATOR_DEFINE_LIBFUZZER_CUSTOM_MUTATOR #include <fuzz/png_mutator.h> #endif @@ -31,8 +41,42 @@ struct PixelFreer { using PixelPointer = std::unique_ptr<void, PixelFreer>; +#ifndef FUZZ_HEIF_FORMAT +#define FOURCC(c1, c2, c3, c4) ((c1) << 24 | (c2) << 16 | (c3) << 8 | (c4)) +/** Reverse all 4 bytes in a 32bit value. + e.g. 0x12345678 -> 0x78563412 +*/ +static uint32_t endianSwap32(uint32_t value) { + return ((value & 0xFF) << 24) | ((value & 0xFF00) << 8) | ((value & 0xFF0000) >> 8) | + (value >> 24); +} + +static bool isFtyp(const uint8_t* data, size_t size) { + constexpr int32_t headerSize = 8; + constexpr int32_t chunkTypeOffset = 4; + constexpr int32_t ftypFourCCVal = FOURCC('f', 't', 'y', 'p'); + if (size >= headerSize) { + const uint32_t* chunk = reinterpret_cast<const uint32_t*>(data + chunkTypeOffset); + if (endianSwap32(*chunk) == ftypFourCCVal) { + return true; + } + } + return false; +} +#endif + AImageDecoder* init(const uint8_t* data, size_t size, bool useFileDescriptor) { AImageDecoder* decoder = nullptr; +#ifndef FUZZ_HEIF_FORMAT + if (isFtyp(data, size)) { + /* We want to ignore HEIF data when fuzzing non-HEIF image decoders. Use 'FTYP' + * as a signal to ignore, though note that this excludes more than just HEIF. + * But when this code was added, `AImageDecoder` did not support any formats + * in 'FTYP' besides HEIF. + */ + return nullptr; + } +#endif // FUZZ_HEIF_FORMAT if (useFileDescriptor) { constexpr char testFd[] = "tempFd"; int32_t fileDesc = open(testFd, O_RDWR | O_CREAT | O_TRUNC); @@ -47,6 +91,27 @@ AImageDecoder* init(const uint8_t* data, size_t size, bool useFileDescriptor) { extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { FuzzedDataProvider dataProvider = FuzzedDataProvider(data, size); +#ifdef FUZZ_HEIF_FORMAT + /** + * For image formats like HEIF, a new metadata object is + * created which requires "media.player" service running + */ + static std::once_flag callOnceHEIF; + std::call_once(callOnceHEIF, [&]() { + android::sp<android::IServiceManager> fakeServiceManager = + new android::FakeServiceManager(); + setDefaultServiceManager(fakeServiceManager); +#ifdef __ANDROID__ + android::MediaPlayerService::instantiate(); + android::MediaExtractorService::instantiate(); +#else + auto binderExtractor = android::getRandomBinder(&dataProvider); + auto binderPlayer = android::getRandomBinder(&dataProvider); + fakeServiceManager->addService(android::String16("media.extractor"), binderExtractor); + fakeServiceManager->addService(android::String16("media.player"), binderPlayer); +#endif //__ANDROID__ + }); +#endif // FUZZ_HEIF_FORMAT /** * Use maximum of 80% of buffer for creating decoder and save at least * 20% buffer for fuzzing other APIs diff --git a/native/webview/TEST_MAPPING b/native/webview/TEST_MAPPING index 07f438329e43..38580595dc2d 100644 --- a/native/webview/TEST_MAPPING +++ b/native/webview/TEST_MAPPING @@ -1,28 +1,13 @@ { "presubmit": [ { - "name": "CtsWebkitTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsWebkitTestCases" }, { - "name": "CtsSdkSandboxWebkitTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsSdkSandboxWebkitTestCases" }, { - "name": "CtsHostsideWebViewTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsHostsideWebViewTests" }, { "name": "GtsWebViewTestCases", diff --git a/nfc/Android.bp b/nfc/Android.bp index 0282e6f5c246..7ad8c4c8de41 100644 --- a/nfc/Android.bp +++ b/nfc/Android.bp @@ -38,8 +38,12 @@ java_sdk_library { name: "framework-nfc", libs: [ "unsupportedappusage", // for android.compat.annotation.UnsupportedAppUsage - "framework-permission-s", - "framework-permission", + "framework-permission-s.stubs.module_lib", + "framework-permission.stubs.module_lib", + ], + stub_only_libs: [ + // Needed for javadoc references. + "framework-permission-s.stubs.module_lib", ], static_libs: [ "android.nfc.flags-aconfig-java", diff --git a/nfc/api/current.txt b/nfc/api/current.txt index cf7aea405756..008120429c40 100644 --- a/nfc/api/current.txt +++ b/nfc/api/current.txt @@ -205,7 +205,9 @@ package android.nfc.cardemulation { method public int getSelectionModeForCategory(String); method public boolean isDefaultServiceForAid(android.content.ComponentName, String); method public boolean isDefaultServiceForCategory(android.content.ComponentName, String); + method @FlaggedApi("android.nfc.enable_card_emulation_euicc") public boolean isEuiccSupported(); method public boolean registerAidsForService(android.content.ComponentName, String, java.util.List<java.lang.String>); + method @FlaggedApi("android.nfc.nfc_event_listener") public void registerNfcEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.nfc.cardemulation.CardEmulation.NfcEventListener); method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean registerPollingLoopFilterForService(@NonNull android.content.ComponentName, @NonNull String, boolean); method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean registerPollingLoopPatternFilterForService(@NonNull android.content.ComponentName, @NonNull String, boolean); method public boolean removeAidsForService(android.content.ComponentName, String); @@ -215,6 +217,7 @@ package android.nfc.cardemulation { method public boolean setPreferredService(android.app.Activity, android.content.ComponentName); method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean setShouldDefaultToObserveModeForService(@NonNull android.content.ComponentName, boolean); method public boolean supportsAidPrefixRegistration(); + method @FlaggedApi("android.nfc.nfc_event_listener") public void unregisterNfcEventListener(@NonNull android.nfc.cardemulation.CardEmulation.NfcEventListener); method @NonNull @RequiresPermission(android.Manifest.permission.NFC) public boolean unsetOffHostForService(@NonNull android.content.ComponentName); method public boolean unsetPreferredService(android.app.Activity); field @Deprecated public static final String ACTION_CHANGE_DEFAULT = "android.nfc.cardemulation.action.ACTION_CHANGE_DEFAULT"; @@ -222,11 +225,21 @@ package android.nfc.cardemulation { field public static final String CATEGORY_PAYMENT = "payment"; field public static final String EXTRA_CATEGORY = "category"; field public static final String EXTRA_SERVICE_COMPONENT = "component"; + field @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_DEFAULT = 3; // 0x3 + field @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_DH = 0; // 0x0 + field @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE = 1; // 0x1 + field @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC = 2; // 0x2 + field @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET = -1; // 0xffffffff field public static final int SELECTION_MODE_ALWAYS_ASK = 1; // 0x1 field public static final int SELECTION_MODE_ASK_IF_CONFLICT = 2; // 0x2 field public static final int SELECTION_MODE_PREFER_DEFAULT = 0; // 0x0 } + @FlaggedApi("android.nfc.nfc_event_listener") public static interface CardEmulation.NfcEventListener { + method @FlaggedApi("android.nfc.nfc_event_listener") public default void onObserveModeStateChanged(boolean); + method @FlaggedApi("android.nfc.nfc_event_listener") public default void onPreferredServiceChanged(boolean); + } + public abstract class HostApduService extends android.app.Service { ctor public HostApduService(); method public final void notifyUnhandled(); diff --git a/nfc/api/system-current.txt b/nfc/api/system-current.txt index 3375e18c001d..a23845fa17e9 100644 --- a/nfc/api/system-current.txt +++ b/nfc/api/system-current.txt @@ -57,14 +57,120 @@ package android.nfc { @FlaggedApi("android.nfc.nfc_oem_extension") public final class NfcOemExtension { method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void clearPreference(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @NonNull public java.util.List<java.lang.String> getActiveNfceeList(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @NonNull @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public android.nfc.RoutingStatus getRoutingStatus(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @NonNull @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public java.util.List<android.nfc.NfcRoutingTableEntry> getRoutingTable(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean hasUserEnabledNfc(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean isAutoChangeEnabled(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean isTagPresent(); method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void maybeTriggerFirmwareUpdate(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void overwriteRoutingTable(int, int, int, int); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void pausePolling(int); method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.nfc.NfcOemExtension.Callback); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void resumePolling(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setAutoChangeEnabled(boolean); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public void setControllerAlwaysOnMode(int); method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void synchronizeScreenState(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void triggerInitialization(); method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void unregisterCallback(@NonNull android.nfc.NfcOemExtension.Callback); + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int DISABLE = 0; // 0x0 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int ENABLE_DEFAULT = 1; // 0x1 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int ENABLE_EE = 3; // 0x3 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int ENABLE_TRANSPARENT = 2; // 0x2 + field public static final int HCE_ACTIVATE = 1; // 0x1 + field public static final int HCE_DATA_TRANSFERRED = 2; // 0x2 + field public static final int HCE_DEACTIVATE = 3; // 0x3 + field public static final int STATUS_OK = 0; // 0x0 + field public static final int STATUS_UNKNOWN_ERROR = 1; // 0x1 } public static interface NfcOemExtension.Callback { - method public void onTagConnected(boolean, @NonNull android.nfc.Tag); + method public void onApplyRouting(@NonNull java.util.function.Consumer<java.lang.Boolean>); + method public void onBootFinished(int); + method public void onBootStarted(); + method public void onCardEmulationActivated(boolean); + method public void onDisable(@NonNull java.util.function.Consumer<java.lang.Boolean>); + method public void onDisableFinished(int); + method public void onDisableStarted(); + method public void onEeListenActivated(boolean); + method public void onEnable(@NonNull java.util.function.Consumer<java.lang.Boolean>); + method public void onEnableFinished(int); + method public void onEnableStarted(); + method public void onGetOemAppSearchIntent(@NonNull java.util.List<java.lang.String>, @NonNull java.util.function.Consumer<android.content.Intent>); + method public void onHceEventReceived(int); + method public void onLaunchHceAppChooserActivity(@NonNull String, @NonNull java.util.List<android.nfc.cardemulation.ApduServiceInfo>, @NonNull android.content.ComponentName, @NonNull String); + method public void onLaunchHceTapAgainDialog(@NonNull android.nfc.cardemulation.ApduServiceInfo, @NonNull String); + method public void onLogEventNotified(@NonNull android.nfc.OemLogItems); + method public void onNdefMessage(@NonNull android.nfc.Tag, @NonNull android.nfc.NdefMessage, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method public void onNdefRead(@NonNull java.util.function.Consumer<java.lang.Boolean>); + method public void onReaderOptionChanged(boolean); + method public void onRfDiscoveryStarted(boolean); + method public void onRfFieldActivated(boolean); + method public void onRoutingChanged(); + method public void onStateUpdated(int); + method public void onTagConnected(boolean); + method public void onTagDispatch(@NonNull java.util.function.Consumer<java.lang.Boolean>); + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public abstract class NfcRoutingTableEntry { + method public int getNfceeId(); + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public final class OemLogItems implements android.os.Parcelable { + method public int describeContents(); + method public int getAction(); + method public int getCallingPid(); + method @Nullable public byte[] getCommandApdu(); + method public int getEvent(); + method @Nullable public byte[] getResponseApdu(); + method @Nullable public java.time.Instant getRfFieldEventTimeMillis(); + method @Nullable public android.nfc.Tag getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.nfc.OemLogItems> CREATOR; + field public static final int EVENT_DISABLE = 2; // 0x2 + field public static final int EVENT_ENABLE = 1; // 0x1 + field public static final int EVENT_UNSET = 0; // 0x0 + field public static final int LOG_ACTION_HCE_DATA = 516; // 0x204 + field public static final int LOG_ACTION_NFC_TOGGLE = 513; // 0x201 + field public static final int LOG_ACTION_RF_FIELD_STATE_CHANGED = 1; // 0x1 + field public static final int LOG_ACTION_SCREEN_STATE_CHANGED = 518; // 0x206 + field public static final int LOG_ACTION_TAG_DETECTED = 3; // 0x3 + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public class RoutingStatus { + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public int getDefaultIsoDepRoute(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public int getDefaultOffHostRoute(); + method @FlaggedApi("android.nfc.nfc_oem_extension") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public int getDefaultRoute(); + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public class RoutingTableAidEntry extends android.nfc.NfcRoutingTableEntry { + method @FlaggedApi("android.nfc.nfc_oem_extension") @NonNull public String getAid(); + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public class RoutingTableProtocolEntry extends android.nfc.NfcRoutingTableEntry { + method @FlaggedApi("android.nfc.nfc_oem_extension") public int getProtocol(); + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_ISO_DEP = 4; // 0x4 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_NDEF = 7; // 0x7 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_NFC_DEP = 5; // 0x5 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_T1T = 1; // 0x1 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_T2T = 2; // 0x2 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_T3T = 3; // 0x3 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_T5T = 6; // 0x6 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_UNDETERMINED = 0; // 0x0 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int PROTOCOL_UNSUPPORTED = -1; // 0xffffffff + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public class RoutingTableSystemCodeEntry extends android.nfc.NfcRoutingTableEntry { + method @FlaggedApi("android.nfc.nfc_oem_extension") @NonNull public byte[] getSystemCode(); + } + + @FlaggedApi("android.nfc.nfc_oem_extension") public class RoutingTableTechnologyEntry extends android.nfc.NfcRoutingTableEntry { + method @FlaggedApi("android.nfc.nfc_oem_extension") public int getTechnology(); + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int TECHNOLOGY_A = 0; // 0x0 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int TECHNOLOGY_B = 1; // 0x1 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int TECHNOLOGY_F = 2; // 0x2 + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int TECHNOLOGY_UNSUPPORTED = -1; // 0xffffffff + field @FlaggedApi("android.nfc.nfc_oem_extension") public static final int TECHNOLOGY_V = 3; // 0x3 } } @@ -74,6 +180,8 @@ package android.nfc.cardemulation { public final class CardEmulation { method @FlaggedApi("android.permission.flags.wallet_role_enabled") @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public static android.content.ComponentName getPreferredPaymentService(@NonNull android.content.Context); method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<android.nfc.cardemulation.ApduServiceInfo> getServices(@NonNull String, int); + method @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public void overrideRoutingTable(@NonNull android.app.Activity, int, int); + method @FlaggedApi("android.nfc.nfc_override_recover_routing_table") public void recoverRoutingTable(@NonNull android.app.Activity); } } diff --git a/nfc/api/system-lint-baseline.txt b/nfc/api/system-lint-baseline.txt index 761c8e63df81..c7a618125add 100644 --- a/nfc/api/system-lint-baseline.txt +++ b/nfc/api/system-lint-baseline.txt @@ -9,6 +9,18 @@ BroadcastBehavior: android.nfc.NfcAdapter#ACTION_TRANSACTION_DETECTED: Field 'ACTION_TRANSACTION_DETECTED' is missing @BroadcastBehavior +CallbackMethodName: android.nfc.NfcOemExtension.Callback#shouldSkipRoutingChange(): + Callback method names must follow the on<Something> style: shouldSkipRoutingChange + + +MethodNameTense: android.nfc.NfcOemExtension.Callback#onEnable(): + Unexpected tense; probably meant `enabled`, was `onEnable` + + +MissingNullability: android.nfc.cardemulation.CardEmulation#overrideRoutingTable(android.app.Activity, String, String) parameter #1: + Missing nullability on parameter `protocol` in method `overrideRoutingTable` +MissingNullability: android.nfc.cardemulation.CardEmulation#overrideRoutingTable(android.app.Activity, String, String) parameter #2: + Missing nullability on parameter `technology` in method `overrideRoutingTable` MissingNullability: android.nfc.cardemulation.OffHostApduService#onBind(android.content.Intent): Missing nullability on method `onBind` return MissingNullability: android.nfc.cardemulation.OffHostApduService#onBind(android.content.Intent) parameter #0: @@ -96,10 +108,12 @@ RequiresPermission: android.nfc.tech.TagTechnology#close(): RequiresPermission: android.nfc.tech.TagTechnology#connect(): Method 'connect' documentation mentions permissions without declaring @RequiresPermission + SamShouldBeLast: android.nfc.NfcAdapter#enableReaderMode(android.app.Activity, android.nfc.NfcAdapter.ReaderCallback, int, android.os.Bundle): SAM-compatible parameters (such as parameter 2, "callback", in android.nfc.NfcAdapter.enableReaderMode) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions SamShouldBeLast: android.nfc.NfcAdapter#ignore(android.nfc.Tag, int, android.nfc.NfcAdapter.OnTagRemovedListener, android.os.Handler): SAM-compatible parameters (such as parameter 3, "tagRemovedListener", in android.nfc.NfcAdapter.ignore) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions + SdkConstant: android.nfc.NfcAdapter#ACTION_REQUIRE_UNLOCK_FOR_NFC: Field 'ACTION_REQUIRE_UNLOCK_FOR_NFC' is missing @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION) diff --git a/nfc/java/android/nfc/AvailableNfcAntenna.java b/nfc/java/android/nfc/AvailableNfcAntenna.java index 6e6512a04971..e76aeb07f106 100644 --- a/nfc/java/android/nfc/AvailableNfcAntenna.java +++ b/nfc/java/android/nfc/AvailableNfcAntenna.java @@ -28,13 +28,13 @@ import android.os.Parcelable; public final class AvailableNfcAntenna implements Parcelable { /** * Location of the antenna on the Y axis in millimeters. - * 0 is the bottom-left when the user is facing the screen + * 0 is the top-left when the user is facing the screen * and the device orientation is Portrait. */ private final int mLocationX; /** * Location of the antenna on the Y axis in millimeters. - * 0 is the bottom-left when the user is facing the screen + * 0 is the top-left when the user is facing the screen * and the device orientation is Portrait. */ private final int mLocationY; @@ -46,7 +46,7 @@ public final class AvailableNfcAntenna implements Parcelable { /** * Location of the antenna on the X axis in millimeters. - * 0 is the bottom-left when the user is facing the screen + * 0 is the top-left when the user is facing the screen * and the device orientation is Portrait. */ public int getLocationX() { @@ -55,7 +55,7 @@ public final class AvailableNfcAntenna implements Parcelable { /** * Location of the antenna on the Y axis in millimeters. - * 0 is the bottom-left when the user is facing the screen + * 0 is the top-left when the user is facing the screen * and the device orientation is Portrait. */ public int getLocationY() { diff --git a/nfc/java/android/nfc/ComponentNameAndUser.aidl b/nfc/java/android/nfc/ComponentNameAndUser.aidl new file mode 100644 index 000000000000..e677998a7970 --- /dev/null +++ b/nfc/java/android/nfc/ComponentNameAndUser.aidl @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.nfc; + +parcelable ComponentNameAndUser;
\ No newline at end of file diff --git a/nfc/java/android/nfc/ComponentNameAndUser.java b/nfc/java/android/nfc/ComponentNameAndUser.java new file mode 100644 index 000000000000..59e6c62926c9 --- /dev/null +++ b/nfc/java/android/nfc/ComponentNameAndUser.java @@ -0,0 +1,100 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.UserIdInt; +import android.content.ComponentName; +import android.os.Parcel; +import android.os.Parcelable; + +import java.util.Objects; + +/** + * @hide + */ +public class ComponentNameAndUser implements Parcelable { + @UserIdInt private final int mUserId; + private ComponentName mComponentName; + + public ComponentNameAndUser(@UserIdInt int userId, ComponentName componentName) { + mUserId = userId; + mComponentName = componentName; + } + + /** + * @hide + */ + public int describeContents() { + return 0; + } + + /** + * @hide + */ + public void writeToParcel(Parcel out, int flags) { + out.writeInt(mUserId); + out.writeParcelable(mComponentName, flags); + } + + public static final Parcelable.Creator<ComponentNameAndUser> CREATOR = + new Parcelable.Creator<ComponentNameAndUser>() { + public ComponentNameAndUser createFromParcel(Parcel in) { + return new ComponentNameAndUser(in); + } + + public ComponentNameAndUser[] newArray(int size) { + return new ComponentNameAndUser[size]; + } + }; + + private ComponentNameAndUser(Parcel in) { + mUserId = in.readInt(); + mComponentName = in.readParcelable(null, ComponentName.class); + } + + @UserIdInt + public int getUserId() { + return mUserId; + } + + public ComponentName getComponentName() { + return mComponentName; + } + + @Override + public String toString() { + return mComponentName + " for user id: " + mUserId; + } + + @Override + public boolean equals(Object obj) { + if (obj != null && obj instanceof ComponentNameAndUser) { + ComponentNameAndUser other = (ComponentNameAndUser) obj; + return other.getUserId() == mUserId + && Objects.equals(other.getComponentName(), mComponentName); + } + return false; + } + + @Override + public int hashCode() { + if (mComponentName == null) { + return mUserId; + } + return mComponentName.hashCode() + mUserId; + } +} diff --git a/nfc/java/android/nfc/Entry.aidl b/nfc/java/android/nfc/Entry.aidl new file mode 100644 index 000000000000..148c4ec86845 --- /dev/null +++ b/nfc/java/android/nfc/Entry.aidl @@ -0,0 +1,18 @@ +/* + * Copyright (C) 2024 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.nfc; + +parcelable Entry;
\ No newline at end of file diff --git a/nfc/java/android/nfc/Entry.java b/nfc/java/android/nfc/Entry.java new file mode 100644 index 000000000000..49d0f10dbfce --- /dev/null +++ b/nfc/java/android/nfc/Entry.java @@ -0,0 +1,77 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.NonNull; +import android.os.Parcel; +import android.os.Parcelable; + + +/** @hide */ +public final class Entry implements Parcelable { + private final byte mType; + private final byte mNfceeId; + private final String mEntry; + + public Entry(String entry, byte type, byte nfceeId) { + mEntry = entry; + mType = type; + mNfceeId = nfceeId; + } + + public byte getType() { + return mType; + } + + public byte getNfceeId() { + return mNfceeId; + } + + public String getEntry() { + return mEntry; + } + + @Override + public int describeContents() { + return 0; + } + + private Entry(Parcel in) { + this.mEntry = in.readString(); + this.mNfceeId = in.readByte(); + this.mType = in.readByte(); + } + + public static final @NonNull Parcelable.Creator<Entry> CREATOR = + new Parcelable.Creator<Entry>() { + @Override + public Entry createFromParcel(Parcel in) { + return new Entry(in); + } + + @Override + public Entry[] newArray(int size) { + return new Entry[size]; + } + }; + + @Override + public void writeToParcel(@NonNull Parcel dest, int flags) { + dest.writeString(mEntry); + dest.writeByte(mNfceeId); + dest.writeByte(mType); + } +} diff --git a/nfc/java/android/nfc/INfcAdapter.aidl b/nfc/java/android/nfc/INfcAdapter.aidl index fd77820afc81..40fd0683f465 100644 --- a/nfc/java/android/nfc/INfcAdapter.aidl +++ b/nfc/java/android/nfc/INfcAdapter.aidl @@ -18,6 +18,7 @@ package android.nfc; import android.app.PendingIntent; import android.content.IntentFilter; +import android.nfc.Entry; import android.nfc.NdefMessage; import android.nfc.Tag; import android.nfc.TechListParcel; @@ -62,7 +63,7 @@ interface INfcAdapter void dispatch(in Tag tag); - void setReaderMode (IBinder b, IAppCallback callback, int flags, in Bundle extras); + void setReaderMode (IBinder b, IAppCallback callback, int flags, in Bundle extras, String pkg); void addNfcUnlockHandler(INfcUnlockHandler unlockHandler, in int[] techList); void removeNfcUnlockHandler(INfcUnlockHandler unlockHandler); @@ -73,7 +74,7 @@ interface INfcAdapter boolean setNfcSecure(boolean enable); NfcAntennaInfo getNfcAntennaInfo(); - boolean setControllerAlwaysOn(boolean value); + void setControllerAlwaysOn(int mode); boolean isControllerAlwaysOn(); boolean isControllerAlwaysOnSupported(); void registerControllerAlwaysOnListener(in INfcControllerAlwaysOnListener listener); @@ -88,7 +89,7 @@ interface INfcAdapter boolean isReaderOptionEnabled(); boolean isReaderOptionSupported(); @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS)") - boolean enableReaderOption(boolean enable); + boolean enableReaderOption(boolean enable, in String pkg); boolean isObserveModeSupported(); boolean isObserveModeEnabled(); boolean setObserveMode(boolean enabled, String pkg); @@ -100,10 +101,11 @@ interface INfcAdapter void unregisterWlcStateListener(in INfcWlcStateListener listener); WlcListenerDeviceInfo getWlcListenerDeviceInfo(); - void updateDiscoveryTechnology(IBinder b, int pollFlags, int listenFlags); + void updateDiscoveryTechnology(IBinder b, int pollFlags, int listenFlags, String pkg); void notifyPollingLoop(in PollingFrame frame); void notifyHceDeactivated(); + void notifyTestHceData(in int technology, in byte[] data); int sendVendorNciMessage(int mt, int gid, int oid, in byte[] payload); void registerVendorExtensionCallback(in INfcVendorNciCallback callbacks); void unregisterVendorExtensionCallback(in INfcVendorNciCallback callbacks); @@ -112,4 +114,10 @@ interface INfcAdapter void clearPreference(); void setScreenState(); void checkFirmware(); + List<String> fetchActiveNfceeList(); + void triggerInitialization(); + boolean getSettingStatus(); + boolean isTagPresent(); + List<Entry> getRoutingTableEntryList(); + void indicateDataMigration(boolean inProgress, String pkg); } diff --git a/nfc/java/android/nfc/INfcCardEmulation.aidl b/nfc/java/android/nfc/INfcCardEmulation.aidl index cb97f23e813c..5e2e92d958a4 100644 --- a/nfc/java/android/nfc/INfcCardEmulation.aidl +++ b/nfc/java/android/nfc/INfcCardEmulation.aidl @@ -17,6 +17,8 @@ package android.nfc; import android.content.ComponentName; +import android.nfc.INfcEventListener; + import android.nfc.cardemulation.AidGroup; import android.nfc.cardemulation.ApduServiceInfo; import android.os.RemoteCallback; @@ -48,6 +50,14 @@ interface INfcCardEmulation boolean setServiceEnabledForCategoryOther(int userHandle, in ComponentName app, boolean status); boolean isDefaultPaymentRegistered(); - boolean overrideRoutingTable(int userHandle, String protocol, String technology); - boolean recoverRoutingTable(int userHandle); + void overrideRoutingTable(int userHandle, String protocol, String technology, in String pkg); + void recoverRoutingTable(int userHandle); + boolean isEuiccSupported(); + void setAutoChangeStatus(boolean state); + boolean isAutoChangeEnabled(); + List<String> getRoutingStatus(); + void overwriteRoutingTable(int userHandle, String emptyAid, String protocol, String tech, String sc); + + void registerNfcEventListener(in INfcEventListener listener); + void unregisterNfcEventListener(in INfcEventListener listener); } diff --git a/nfc/java/android/nfc/INfcEventListener.aidl b/nfc/java/android/nfc/INfcEventListener.aidl new file mode 100644 index 000000000000..5162c26ac536 --- /dev/null +++ b/nfc/java/android/nfc/INfcEventListener.aidl @@ -0,0 +1,11 @@ +package android.nfc; + +import android.nfc.ComponentNameAndUser; + +/** + * @hide + */ +oneway interface INfcEventListener { + void onPreferredServiceChanged(in ComponentNameAndUser ComponentNameAndUser); + void onObserveModeStateChanged(boolean isEnabled); +}
\ No newline at end of file diff --git a/nfc/java/android/nfc/INfcOemExtensionCallback.aidl b/nfc/java/android/nfc/INfcOemExtensionCallback.aidl index 6c9096d5d03e..b102e873d737 100644 --- a/nfc/java/android/nfc/INfcOemExtensionCallback.aidl +++ b/nfc/java/android/nfc/INfcOemExtensionCallback.aidl @@ -15,11 +15,42 @@ */ package android.nfc; +import android.content.ComponentName; +import android.nfc.cardemulation.ApduServiceInfo; +import android.nfc.NdefMessage; +import android.nfc.OemLogItems; import android.nfc.Tag; +import android.os.ResultReceiver; + +import java.util.List; /** * @hide */ interface INfcOemExtensionCallback { - void onTagConnected(boolean connected, in Tag tag); + void onTagConnected(boolean connected); + void onStateUpdated(int state); + void onApplyRouting(in ResultReceiver isSkipped); + void onNdefRead(in ResultReceiver isSkipped); + void onEnable(in ResultReceiver isAllowed); + void onDisable(in ResultReceiver isAllowed); + void onBootStarted(); + void onEnableStarted(); + void onDisableStarted(); + void onBootFinished(int status); + void onEnableFinished(int status); + void onDisableFinished(int status); + void onTagDispatch(in ResultReceiver isSkipped); + void onRoutingChanged(); + void onHceEventReceived(int action); + void onReaderOptionChanged(boolean enabled); + void onCardEmulationActivated(boolean isActivated); + void onRfFieldActivated(boolean isActivated); + void onRfDiscoveryStarted(boolean isDiscoveryStarted); + void onEeListenActivated(boolean isActivated); + void onGetOemAppSearchIntent(in List<String> firstPackage, in ResultReceiver intentConsumer); + void onNdefMessage(in Tag tag, in NdefMessage message, in ResultReceiver hasOemExecutableContent); + void onLaunchHceAppChooserActivity(in String selectedAid, in List<ApduServiceInfo> services, in ComponentName failedComponent, in String category); + void onLaunchHceTapAgainActivity(in ApduServiceInfo service, in String category); + void onLogEventNotified(in OemLogItems item); } diff --git a/nfc/java/android/nfc/NfcActivityManager.java b/nfc/java/android/nfc/NfcActivityManager.java index 0e40db612708..909eca7b0c9d 100644 --- a/nfc/java/android/nfc/NfcActivityManager.java +++ b/nfc/java/android/nfc/NfcActivityManager.java @@ -236,11 +236,8 @@ public final class NfcActivityManager extends IAppCallback.Stub public void setReaderMode(Binder token, int flags, Bundle extras) { if (DBG) Log.d(TAG, "Setting reader mode"); - try { - NfcAdapter.sService.setReaderMode(token, this, flags, extras); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService(() -> NfcAdapter.sService.setReaderMode( + token, this, flags, extras, mAdapter.getContext().getPackageName())); } /** @@ -248,19 +245,11 @@ public final class NfcActivityManager extends IAppCallback.Stub * Makes IPC call - do not hold lock. */ void requestNfcServiceCallback() { - try { - NfcAdapter.sService.setAppCallback(this); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService(() -> NfcAdapter.sService.setAppCallback(this)); } void verifyNfcPermission() { - try { - NfcAdapter.sService.verifyNfcPermission(); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService(() -> NfcAdapter.sService.verifyNfcPermission()); } @Override @@ -406,11 +395,9 @@ public final class NfcActivityManager extends IAppCallback.Stub } private void changeDiscoveryTech(Binder token, int pollTech, int listenTech) { - try { - NfcAdapter.sService.updateDiscoveryTechnology(token, pollTech, listenTech); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService( + () -> NfcAdapter.sService.updateDiscoveryTechnology( + token, pollTech, listenTech, mAdapter.getContext().getPackageName())); } } diff --git a/nfc/java/android/nfc/NfcAdapter.java b/nfc/java/android/nfc/NfcAdapter.java index 1dfc81e2108e..c5d8191b22e6 100644 --- a/nfc/java/android/nfc/NfcAdapter.java +++ b/nfc/java/android/nfc/NfcAdapter.java @@ -258,7 +258,7 @@ public final class NfcAdapter { /** * Mandatory String extra field in {@link #ACTION_TRANSACTION_DETECTED} * Indicates the Secure Element on which the transaction occurred. - * eSE1...eSEn for Embedded Secure Elements, SIM1...SIMn for UICC, etc. + * eSE1...eSEn for Embedded Secure Elements, SIM1...SIMn for UICC/EUICC, etc. */ public static final String EXTRA_SECURE_ELEMENT_NAME = "android.nfc.extra.SECURE_ELEMENT_NAME"; @@ -559,6 +559,18 @@ public final class NfcAdapter { @Retention(RetentionPolicy.SOURCE) public @interface TagIntentAppPreferenceResult {} + /** + * Mode Type for {@link NfcOemExtension#setControllerAlwaysOnMode(int)}. + * @hide + */ + public static final int CONTROLLER_ALWAYS_ON_MODE_DEFAULT = 1; + + /** + * Mode Type for {@link NfcOemExtension#setControllerAlwaysOnMode(int)}. + * @hide + */ + public static final int CONTROLLER_ALWAYS_ON_DISABLE = 0; + // Guarded by sLock static boolean sIsInitialized = false; static boolean sHasNfcFeature; @@ -721,7 +733,7 @@ public final class NfcAdapter { * * @return List<String> containing secure elements on the device which supports * off host card emulation. eSE for Embedded secure element, - * SIM for UICC and so on. + * SIM for UICC/EUICC and so on. * @hide */ public @NonNull List<String> getSupportedOffHostSecureElements() { @@ -922,8 +934,8 @@ public final class NfcAdapter { * @hide */ @UnsupportedAppUsage - public INfcAdapter getService() { - isEnabled(); // NOP call to recover sService if it is stale + public static INfcAdapter getService() { + isEnabledStatic(); // NOP call to recover sService if it is stale return sService; } @@ -931,8 +943,8 @@ public final class NfcAdapter { * Returns the binder interface to the tag service. * @hide */ - public INfcTag getTagService() { - isEnabled(); // NOP call to recover sTagService if it is stale + public static INfcTag getTagService() { + isEnabledStatic(); // NOP call to recover sTagService if it is stale return sTagService; } @@ -940,8 +952,8 @@ public final class NfcAdapter { * Returns the binder interface to the card emulation service. * @hide */ - public INfcCardEmulation getCardEmulationService() { - isEnabled(); + public static INfcCardEmulation getCardEmulationService() { + isEnabledStatic(); return sCardEmulationService; } @@ -949,8 +961,8 @@ public final class NfcAdapter { * Returns the binder interface to the NFC-F card emulation service. * @hide */ - public INfcFCardEmulation getNfcFCardEmulationService() { - isEnabled(); + public static INfcFCardEmulation getNfcFCardEmulationService() { + isEnabledStatic(); return sNfcFCardEmulationService; } @@ -963,22 +975,9 @@ public final class NfcAdapter { throw new UnsupportedOperationException("You need a context on NfcAdapter to use the " + " NFC extras APIs"); } - try { - return sService.getNfcDtaInterface(mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return null; - } - try { - return sService.getNfcDtaInterface(mContext.getPackageName()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return null; - } + return callServiceReturn(() -> sService.getNfcDtaInterface(mContext.getPackageName()), + null); + } /** @@ -986,14 +985,14 @@ public final class NfcAdapter { * @hide */ @UnsupportedAppUsage - public void attemptDeadServiceRecovery(Exception e) { + public static void attemptDeadServiceRecovery(RemoteException e) { Log.e(TAG, "NFC service dead - attempting to recover", e); INfcAdapter service = getServiceInterface(); if (service == null) { Log.e(TAG, "could not retrieve NFC service during service recovery"); // nothing more can be done now, sService is still stale, we'll hit // this recovery path again later - return; + e.rethrowAsRuntimeException(); } // assigning to sService is not thread-safe, but this is best-effort code // and on a well-behaved system should never happen @@ -1006,7 +1005,7 @@ public final class NfcAdapter { Log.e(TAG, "could not retrieve NFC tag service during service recovery"); // nothing more can be done now, sService is still stale, we'll hit // this recovery path again later - return; + ee.rethrowAsRuntimeException(); } } @@ -1027,24 +1026,27 @@ public final class NfcAdapter { "could not retrieve NFC-F card emulation service during service recovery"); } } - - return; } - private boolean isCardEmulationEnabled() { + private static boolean isCardEmulationEnabled() { if (sHasCeFeature) { return (sCardEmulationService != null || sNfcFCardEmulationService != null); } return false; } - private boolean isTagReadingEnabled() { + private static boolean isTagReadingEnabled() { if (sHasNfcFeature) { return sTagService != null; } return false; } + private static boolean isEnabledStatic() { + boolean serviceState = callServiceReturn(() -> sService.getState() == STATE_ON, false); + return serviceState + && (isTagReadingEnabled() || isCardEmulationEnabled() || sHasNfcWlcFeature); + } /** * Return true if this NFC Adapter has any features enabled. @@ -1059,24 +1061,7 @@ public final class NfcAdapter { * @return true if this NFC Adapter has any features enabled */ public boolean isEnabled() { - boolean serviceState = false; - try { - serviceState = sService.getState() == STATE_ON; - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - serviceState = sService.getState() == STATE_ON; - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - } - return serviceState - && (isTagReadingEnabled() || isCardEmulationEnabled() || sHasNfcWlcFeature); + return isEnabledStatic(); } /** @@ -1095,22 +1080,8 @@ public final class NfcAdapter { @SystemApi @FlaggedApi(Flags.FLAG_ENABLE_NFC_MAINLINE) public @AdapterState int getAdapterState() { - try { - return sService.getState(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return NfcAdapter.STATE_OFF; - } - try { - return sService.getState(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return NfcAdapter.STATE_OFF; - } + return callServiceReturn(() -> sService.getState(), NfcAdapter.STATE_OFF); + } /** @@ -1134,22 +1105,8 @@ public final class NfcAdapter { @FlaggedApi(Flags.FLAG_NFC_STATE_CHANGE) @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enable() { - try { - return sService.enable(mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.enable(mContext.getPackageName()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.enable(mContext.getPackageName()), false); + } /** @@ -1175,22 +1132,9 @@ public final class NfcAdapter { @FlaggedApi(Flags.FLAG_NFC_STATE_CHANGE) @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable() { - try { - return sService.disable(true, mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.disable(true, mContext.getPackageName()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.disable(true, mContext.getPackageName()), + false); + } /** @@ -1200,53 +1144,33 @@ public final class NfcAdapter { @SystemApi @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable(boolean persist) { - try { - return sService.disable(persist, mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.disable(persist, mContext.getPackageName()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.disable(persist, mContext.getPackageName()), + false); + } /** - * Pauses polling for a {@code timeoutInMs} millis. If polling must be resumed before timeout, - * use {@link #resumePolling()}. + * Pauses NFC tag reader mode polling for a {@code timeoutInMs} millisecond. + * In case of {@code timeoutInMs} is zero or invalid polling will be stopped indefinitely + * use {@link #resumePolling() to resume the polling. * @hide */ public void pausePolling(int timeoutInMs) { - try { - sService.pausePolling(timeoutInMs); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService(() -> sService.pausePolling(timeoutInMs)); } /** - * Returns whether the device supports observer mode or not. When observe - * mode is enabled, the NFC hardware will listen for NFC readers, but not - * respond to them. When observe mode is disabled, the NFC hardware will - * resoond to the reader and proceed with the transaction. + * Returns whether the device supports observe mode or not. When observe mode is enabled, the + * NFC hardware will listen to NFC readers, but not respond to them. While enabled, observed + * polling frames will be sent to the APDU service (see {@link #setObserveModeEnabled(boolean)}. + * When observe mode is disabled (or if it's not supported), the NFC hardware will automatically + * respond to the reader and proceed with the transaction. * @return true if the mode is supported, false otherwise. */ @FlaggedApi(Flags.FLAG_NFC_OBSERVE_MODE) public boolean isObserveModeSupported() { - try { - return sService.isObserveModeSupported(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - return false; - } + return callServiceReturn(() -> sService.isObserveModeSupported(), false); } /** @@ -1257,12 +1181,7 @@ public final class NfcAdapter { @FlaggedApi(Flags.FLAG_NFC_OBSERVE_MODE) public boolean isObserveModeEnabled() { - try { - return sService.isObserveModeEnabled(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - return false; - } + return callServiceReturn(() -> sService.isObserveModeEnabled(), false); } /** @@ -1270,9 +1189,10 @@ public final class NfcAdapter { * and simply observe and notify the APDU service of polling loop frames. See * {@link #isObserveModeSupported()} for a description of observe mode. Only the package of the * currently preferred service (the service set as preferred by the current foreground - * application via {@link CardEmulation#setPreferredService(Activity, ComponentName)} or the - * current Default Wallet Role Holder {@link android.app.role.RoleManager#ROLE_WALLET}), - * otherwise a call to this method will fail and return false. + * application via {@link android.nfc.cardemulation.CardEmulation#setPreferredService(Activity, + * android.content.ComponentName)} or the current Default Wallet Role Holder + * {@link android.app.role.RoleManager#ROLE_WALLET}), otherwise a call to this method will fail + * and return false. * * @param enabled false disables observe mode to allow the transaction to proceed while true * enables observe mode and does not allow transactions to proceed. @@ -1286,26 +1206,17 @@ public final class NfcAdapter { throw new UnsupportedOperationException("You need a context on NfcAdapter to use the " + " observe mode APIs"); } - try { - return sService.setObserveMode(enabled, mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - return false; - } + return callServiceReturn(() -> sService.setObserveMode(enabled, mContext.getPackageName()), + false); } /** - * Resumes default polling for the current device state if polling is paused. Calling - * this while polling is not paused is a no-op. - * + * Resumes default NFC tag reader mode polling for the current device state if polling is + * paused. Calling this while already in polling is a no-op. * @hide */ public void resumePolling() { - try { - sService.resumePolling(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService(() -> sService.resumePolling()); } /** @@ -1724,15 +1635,10 @@ public final class NfcAdapter { if (activity == null || intent == null) { throw new NullPointerException(); } - try { - TechListParcel parcel = null; - if (techLists != null && techLists.length > 0) { - parcel = new TechListParcel(techLists); - } - sService.setForegroundDispatch(intent, filters, parcel); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + final TechListParcel parcel = (techLists != null && techLists.length > 0) + ? new TechListParcel(techLists) + : null; + callService(() -> sService.setForegroundDispatch(intent, filters, parcel)); } /** @@ -1756,11 +1662,7 @@ public final class NfcAdapter { throw new UnsupportedOperationException(); } } - try { - sService.setForegroundDispatch(null, null, null); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService(() -> sService.setForegroundDispatch(null, null, null)); } /** @@ -1841,11 +1743,8 @@ public final class NfcAdapter { } Binder token = new Binder(); int flags = enable ? ENABLE_POLLING_FLAGS : DISABLE_POLLING_FLAGS; - try { - NfcAdapter.sService.setReaderMode(token, null, flags, null); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService(() -> sService.setReaderMode( + token, null, flags, null, mContext.getPackageName())); } /** @@ -1917,12 +1816,9 @@ public final class NfcAdapter { && ((pollTechnology & FLAG_SET_DEFAULT_TECH) == FLAG_SET_DEFAULT_TECH || (listenTechnology & FLAG_SET_DEFAULT_TECH) == FLAG_SET_DEFAULT_TECH)) { Binder token = new Binder(); - try { - NfcAdapter.sService.updateDiscoveryTechnology(token, - pollTechnology, listenTechnology); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService( () -> + sService.updateDiscoveryTechnology( + token, pollTechnology, listenTechnology, mContext.getPackageName())); } else { mNfcActivityManager.setDiscoveryTech(activity, pollTechnology, listenTechnology); } @@ -2057,22 +1953,8 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } - try { - return sService.setNfcSecure(enable); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.setNfcSecure(enable); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.setNfcSecure(enable), false); + } /** @@ -2088,22 +1970,8 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } - try { - return sService.deviceSupportsNfcSecure(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.deviceSupportsNfcSecure(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.deviceSupportsNfcSecure(), false); + } /** @@ -2121,22 +1989,8 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } - try { - return sService.getNfcAntennaInfo(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return null; - } - try { - return sService.getNfcAntennaInfo(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return null; - } + return callServiceReturn(() -> sService.getNfcAntennaInfo(), null); + } /** @@ -2154,22 +2008,8 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isNfcSecureEnabled(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isNfcSecureEnabled(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isNfcSecureEnabled(), false); + } /** @@ -2185,22 +2025,9 @@ public final class NfcAdapter { if (!sHasNfcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.enableReaderOption(enable); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.enableReaderOption(enable); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> + sService.enableReaderOption(enable, mContext.getPackageName()), false); + } /** @@ -2214,22 +2041,8 @@ public final class NfcAdapter { if (!sHasNfcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isReaderOptionSupported(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isReaderOptionSupported(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isReaderOptionSupported(), false); + } /** @@ -2245,22 +2058,8 @@ public final class NfcAdapter { if (!sHasNfcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isReaderOptionEnabled(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isReaderOptionEnabled(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isReaderOptionEnabled(), false); + } /** @@ -2388,11 +2187,9 @@ public final class NfcAdapter { synchronized (mLock) { mTagRemovedListener = iListener; } - try { - return sService.ignore(tag.getServiceHandle(), debounceMs, iListener); - } catch (RemoteException e) { - return false; - } + final ITagRemovedCallback.Stub passedListener = iListener; + return callServiceReturn(() -> + sService.ignore(tag.getServiceHandle(), debounceMs, passedListener), false); } /** @@ -2406,11 +2203,7 @@ public final class NfcAdapter { if (tag == null) { throw new NullPointerException("tag cannot be null"); } - try { - sService.dispatch(tag); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - } + callService(() -> sService.dispatch(tag)); } /** @@ -2446,8 +2239,10 @@ public final class NfcAdapter { synchronized (mLock) { if (mNfcUnlockHandlers.containsKey(unlockHandler)) { // update the tag technologies - sService.removeNfcUnlockHandler(mNfcUnlockHandlers.get(unlockHandler)); - mNfcUnlockHandlers.remove(unlockHandler); + callService(() -> { + sService.removeNfcUnlockHandler(mNfcUnlockHandlers.get(unlockHandler)); + mNfcUnlockHandlers.remove(unlockHandler); + }); } INfcUnlockHandler.Stub iHandler = new INfcUnlockHandler.Stub() { @@ -2456,20 +2251,18 @@ public final class NfcAdapter { return unlockHandler.onUnlockAttempted(tag); } }; - - sService.addNfcUnlockHandler(iHandler, - Tag.getTechCodesFromStrings(tagTechnologies)); - mNfcUnlockHandlers.put(unlockHandler, iHandler); + return callServiceReturn(() -> { + sService.addNfcUnlockHandler( + iHandler, Tag.getTechCodesFromStrings(tagTechnologies)); + mNfcUnlockHandlers.put(unlockHandler, iHandler); + return true; + }, false); } - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - return false; } catch (IllegalArgumentException e) { Log.e(TAG, "Unable to register LockscreenDispatch", e); return false; } - return true; } /** @@ -2486,17 +2279,14 @@ public final class NfcAdapter { throw new UnsupportedOperationException(); } } - try { - synchronized (mLock) { - if (mNfcUnlockHandlers.containsKey(unlockHandler)) { + synchronized (mLock) { + if (mNfcUnlockHandlers.containsKey(unlockHandler)) { + return callServiceReturn(() -> { sService.removeNfcUnlockHandler(mNfcUnlockHandlers.remove(unlockHandler)); - } - - return true; + return true; + }, false); } - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - return false; + return true; } } @@ -2509,22 +2299,9 @@ public final class NfcAdapter { throw new UnsupportedOperationException("You need a context on NfcAdapter to use the " + " NFC extras APIs"); } - try { - return sService.getNfcAdapterExtrasInterface(mContext.getPackageName()); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return null; - } - try { - return sService.getNfcAdapterExtrasInterface(mContext.getPackageName()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return null; - } + return callServiceReturn(() -> + sService.getNfcAdapterExtrasInterface(mContext.getPackageName()), null); + } void enforceResumed(Activity activity) { @@ -2546,7 +2323,7 @@ public final class NfcAdapter { * <p>This API is for the NFCC internal state management. It allows to discriminate * the controller function from the NFC function by keeping the NFC controller on without * any NFC RF enabled if necessary. - * <p>This call is asynchronous. Register a listener {@link #ControllerAlwaysOnListener} + * <p>This call is asynchronous. Register a listener {@link ControllerAlwaysOnListener} * by {@link #registerControllerAlwaysOnListener} to find out when the operation is * complete. * <p>If this returns true, then either NFCC always on state has been set based on the value, @@ -2560,7 +2337,8 @@ public final class NfcAdapter { * FEATURE_NFC_HOST_CARD_EMULATION, FEATURE_NFC_HOST_CARD_EMULATION_NFCF, * FEATURE_NFC_OFF_HOST_CARD_EMULATION_UICC and FEATURE_NFC_OFF_HOST_CARD_EMULATION_ESE * are unavailable - * @return void + * @return true if feature is supported by the device and operation has been initiated, + * false if the feature is not supported by the device. * @hide */ @SystemApi @@ -2569,22 +2347,13 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } + int mode = value ? CONTROLLER_ALWAYS_ON_MODE_DEFAULT : CONTROLLER_ALWAYS_ON_DISABLE; try { - return sService.setControllerAlwaysOn(value); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.setControllerAlwaysOn(value); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } + callService(() -> sService.setControllerAlwaysOn(mode)); + } catch (UnsupportedOperationException e) { return false; } + return true; } /** @@ -2600,22 +2369,8 @@ public final class NfcAdapter { @SystemApi @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public boolean isControllerAlwaysOn() { - try { - return sService.isControllerAlwaysOn(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isControllerAlwaysOn(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isControllerAlwaysOn(), false); + } /** @@ -2634,22 +2389,8 @@ public final class NfcAdapter { if (!sHasNfcFeature && !sHasCeFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isControllerAlwaysOnSupported(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isControllerAlwaysOnSupported(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isControllerAlwaysOnSupported(), false); + } /** @@ -2719,21 +2460,9 @@ public final class NfcAdapter { Log.e(TAG, "TagIntentAppPreference is not supported"); throw new UnsupportedOperationException(); } - try { - return sService.setTagIntentAppPreferenceForUser(userId, pkg, allow); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - } - try { - return sService.setTagIntentAppPreferenceForUser(userId, pkg, allow); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return TAG_INTENT_APP_PREF_RESULT_UNAVAILABLE; - } + return callServiceReturn(() -> + sService.setTagIntentAppPreferenceForUser(userId, pkg, allow), + TAG_INTENT_APP_PREF_RESULT_UNAVAILABLE); } @@ -2771,26 +2500,8 @@ public final class NfcAdapter { Log.e(TAG, "TagIntentAppPreference is not supported"); throw new UnsupportedOperationException(); } - try { - Map<String, Boolean> result = (Map<String, Boolean>) sService - .getTagIntentAppPreferenceForUser(userId); - return result; - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return Collections.emptyMap(); - } - try { - Map<String, Boolean> result = (Map<String, Boolean>) sService - .getTagIntentAppPreferenceForUser(userId); - return result; - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return Collections.emptyMap(); - } + return callServiceReturn( () -> + sService.getTagIntentAppPreferenceForUser(userId), Collections.emptyMap()); } /** @@ -2808,22 +2519,8 @@ public final class NfcAdapter { if (!sHasNfcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isTagIntentAppPreferenceSupported(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isTagIntentAppPreferenceSupported(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isTagIntentAppPreferenceSupported(), false); + } /** @@ -2836,24 +2533,61 @@ public final class NfcAdapter { @TestApi @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public void notifyPollingLoop(@NonNull PollingFrame pollingFrame) { + callService(() -> sService.notifyPollingLoop(pollingFrame)); + } + + + /** + * Notifies the system of new HCE data for tests. + * + * @hide + */ + @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) + public void notifyTestHceData(int technology, byte[] data) { + callService(() -> sService.notifyTestHceData(technology, data)); + } + + /** @hide */ + interface ServiceCall { + void call() throws RemoteException; + } + /** @hide */ + static void callService(ServiceCall call) { try { if (sService == null) { - attemptDeadServiceRecovery(null); + attemptDeadServiceRecovery(new RemoteException("NFC Service is null")); } - sService.notifyPollingLoop(pollingFrame); + call.call(); } catch (RemoteException e) { attemptDeadServiceRecovery(e); - // Try one more time + try { + call.call(); + } catch (RemoteException ee) { + ee.rethrowAsRuntimeException(); + } + } + } + /** @hide */ + interface ServiceCallReturn<T> { + T call() throws RemoteException; + } + /** @hide */ + static <T> T callServiceReturn(ServiceCallReturn<T> call, T defaultReturn) { + try { if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return; + attemptDeadServiceRecovery(new RemoteException("NFC Service is null")); } + return call.call(); + } catch (RemoteException e) { + attemptDeadServiceRecovery(e); + // Try one more time try { - sService.notifyPollingLoop(pollingFrame); + return call.call(); } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); + ee.rethrowAsRuntimeException(); } } + return defaultReturn; } /** @@ -2864,24 +2598,7 @@ public final class NfcAdapter { @TestApi @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public void notifyHceDeactivated() { - try { - if (sService == null) { - attemptDeadServiceRecovery(null); - } - sService.notifyHceDeactivated(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return; - } - try { - sService.notifyHceDeactivated(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - } + callService(() -> sService.notifyHceDeactivated()); } /** @@ -2897,22 +2614,7 @@ public final class NfcAdapter { if (!sHasNfcWlcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.setWlcEnabled(enable); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.setWlcEnabled(enable); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.setWlcEnabled(enable), false); } /** @@ -2927,22 +2629,8 @@ public final class NfcAdapter { if (!sHasNfcWlcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.isWlcEnabled(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return false; - } - try { - return sService.isWlcEnabled(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return false; - } + return callServiceReturn(() -> sService.isWlcEnabled(), false); + } /** @@ -3021,22 +2709,8 @@ public final class NfcAdapter { if (!sHasNfcWlcFeature) { throw new UnsupportedOperationException(); } - try { - return sService.getWlcListenerDeviceInfo(); - } catch (RemoteException e) { - attemptDeadServiceRecovery(e); - // Try one more time - if (sService == null) { - Log.e(TAG, "Failed to recover NFC Service."); - return null; - } - try { - return sService.getWlcListenerDeviceInfo(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover NFC Service."); - } - return null; - } + return callServiceReturn(() -> sService.getWlcListenerDeviceInfo(), null); + } /** @@ -3121,11 +2795,8 @@ public final class NfcAdapter { @IntRange(from = 0, to = 15) int gid, @IntRange(from = 0) int oid, @NonNull byte[] payload) { Objects.requireNonNull(payload, "Payload must not be null"); - try { - return sService.sendVendorNciMessage(mt, gid, oid, payload); - } catch (RemoteException e) { - throw e.rethrowFromSystemServer(); - } + return callServiceReturn(() -> sService.sendVendorNciMessage(mt, gid, oid, payload), + SEND_VENDOR_NCI_STATUS_FAILED); } /** @@ -3199,6 +2870,18 @@ public final class NfcAdapter { } /** + * Used by data migration to indicate data migration is in progrerss or not. + * + * Note: This is @hide intentionally since the client is inside the NFC apex. + * @param inProgress true if migration is in progress, false once done. + * @hide + */ + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public void indicateDataMigration(boolean inProgress) { + callService(() -> sService.indicateDataMigration(inProgress, mContext.getPackageName())); + } + + /** * Returns an instance of {@link NfcOemExtension} associated with {@link NfcAdapter} instance. * @hide */ diff --git a/nfc/java/android/nfc/NfcAntennaInfo.java b/nfc/java/android/nfc/NfcAntennaInfo.java index b002ca21e8e3..c57b2e029cc5 100644 --- a/nfc/java/android/nfc/NfcAntennaInfo.java +++ b/nfc/java/android/nfc/NfcAntennaInfo.java @@ -64,9 +64,9 @@ public final class NfcAntennaInfo implements Parcelable { /** * Whether the device is foldable. When the device is foldable, - * the 0, 0 is considered to be bottom-left when the device is unfolded and + * the 0, 0 is considered to be top-left when the device is unfolded and * the screens are facing the user. For non-foldable devices 0, 0 - * is bottom-left when the user is facing the screen. + * is top-left when the user is facing the screen. */ public boolean isDeviceFoldable() { return mDeviceFoldable; diff --git a/nfc/java/android/nfc/NfcOemExtension.java b/nfc/java/android/nfc/NfcOemExtension.java index f6138a63fae4..abd99bc02f55 100644 --- a/nfc/java/android/nfc/NfcOemExtension.java +++ b/nfc/java/android/nfc/NfcOemExtension.java @@ -16,17 +16,49 @@ package android.nfc; +import static android.nfc.cardemulation.CardEmulation.PROTOCOL_AND_TECHNOLOGY_ROUTE_DH; +import static android.nfc.cardemulation.CardEmulation.PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE; +import static android.nfc.cardemulation.CardEmulation.PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC; +import static android.nfc.cardemulation.CardEmulation.routeIntToString; + +import android.Manifest; import android.annotation.CallbackExecutor; import android.annotation.FlaggedApi; +import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.RequiresPermission; +import android.annotation.SuppressLint; import android.annotation.SystemApi; +import android.content.ComponentName; import android.content.Context; +import android.content.Intent; +import android.nfc.cardemulation.ApduServiceInfo; +import android.nfc.cardemulation.CardEmulation; +import android.nfc.cardemulation.CardEmulation.ProtocolAndTechnologyRoute; import android.os.Binder; +import android.os.Bundle; import android.os.RemoteException; +import android.os.ResultReceiver; import android.util.Log; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.FutureTask; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; +import java.util.function.BiConsumer; +import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Supplier; /** * Used for OEM extension APIs. @@ -40,12 +72,126 @@ import java.util.concurrent.Executor; public final class NfcOemExtension { private static final String TAG = "NfcOemExtension"; private static final int OEM_EXTENSION_RESPONSE_THRESHOLD_MS = 2000; + private static final int TYPE_TECHNOLOGY = 0; + private static final int TYPE_PROTOCOL = 1; + private static final int TYPE_AID = 2; + private static final int TYPE_SYSTEMCODE = 3; + private final NfcAdapter mAdapter; private final NfcOemExtensionCallback mOemNfcExtensionCallback; + private boolean mIsRegistered = false; + private final Map<Callback, Executor> mCallbackMap = new HashMap<>(); private final Context mContext; - private Executor mExecutor = null; - private Callback mCallback = null; private final Object mLock = new Object(); + private boolean mCardEmulationActivated = false; + private boolean mRfFieldActivated = false; + private boolean mRfDiscoveryStarted = false; + private boolean mEeListenActivated = false; + + /** + * Broadcast Action: Sent on NFC stack initialization when NFC OEM extensions are enabled. + * <p> OEM extension modules should use this intent to start their extension service </p> + * @hide + */ + public static final String ACTION_OEM_EXTENSION_INIT = "android.nfc.action.OEM_EXTENSION_INIT"; + + /** + * Mode Type for {@link #setControllerAlwaysOnMode(int)}. + * Enables the controller in default mode when NFC is disabled (existing API behavior). + * works same as {@link NfcAdapter#setControllerAlwaysOn(boolean)}. + * @hide + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int ENABLE_DEFAULT = NfcAdapter.CONTROLLER_ALWAYS_ON_MODE_DEFAULT; + + /** + * Mode Type for {@link #setControllerAlwaysOnMode(int)}. + * Enables the controller in transparent mode when NFC is disabled. + * @hide + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int ENABLE_TRANSPARENT = 2; + + /** + * Mode Type for {@link #setControllerAlwaysOnMode(int)}. + * Enables the controller and initializes and enables the EE subsystem when NFC is disabled. + * @hide + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int ENABLE_EE = 3; + + /** + * Mode Type for {@link #setControllerAlwaysOnMode(int)}. + * Disable the Controller Always On Mode. + * works same as {@link NfcAdapter#setControllerAlwaysOn(boolean)}. + * @hide + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int DISABLE = NfcAdapter.CONTROLLER_ALWAYS_ON_DISABLE; + + /** + * Possible controller modes for {@link #setControllerAlwaysOnMode(int)}. + * + * @hide + */ + @IntDef(prefix = { "" }, value = { + ENABLE_DEFAULT, + ENABLE_TRANSPARENT, + ENABLE_EE, + DISABLE, + }) + @Retention(RetentionPolicy.SOURCE) + public @interface ControllerMode{} + + /** + * Event that Host Card Emulation is activated. + */ + public static final int HCE_ACTIVATE = 1; + /** + * Event that some data is transferred in Host Card Emulation. + */ + public static final int HCE_DATA_TRANSFERRED = 2; + /** + * Event that Host Card Emulation is deactivated. + */ + public static final int HCE_DEACTIVATE = 3; + /** + * Possible events from {@link Callback#onHceEventReceived}. + * + * @hide + */ + @IntDef(value = { + HCE_ACTIVATE, + HCE_DATA_TRANSFERRED, + HCE_DEACTIVATE + }) + @Retention(RetentionPolicy.SOURCE) + public @interface HostCardEmulationAction {} + + /** + * Status OK + */ + public static final int STATUS_OK = 0; + /** + * Status unknown error + */ + public static final int STATUS_UNKNOWN_ERROR = 1; + + /** + * Status codes passed to OEM extension callbacks. + * + * @hide + */ + @IntDef(value = { + STATUS_OK, + STATUS_UNKNOWN_ERROR + }) + @Retention(RetentionPolicy.SOURCE) + public @interface StatusCode {} /** * Interface for Oem extensions for NFC. @@ -56,25 +202,222 @@ public final class NfcOemExtension { * ex - if tag is connected notify cover and Nfctest app if app is in testing mode * * @param connected status of the tag true if tag is connected otherwise false - * @param tag Tag details */ - void onTagConnected(boolean connected, @NonNull Tag tag); + void onTagConnected(boolean connected); + + /** + * Update the Nfc Adapter State + * @param state new state that need to be updated + */ + void onStateUpdated(@NfcAdapter.AdapterState int state); + /** + * Check if NfcService apply routing method need to be skipped for + * some feature. + * @param isSkipped The {@link Consumer} to be completed. If apply routing can be skipped, + * the {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with {@link Boolean#FALSE}. + */ + void onApplyRouting(@NonNull Consumer<Boolean> isSkipped); + /** + * Check if NfcService ndefRead method need to be skipped To skip + * and start checking for presence of tag + * @param isSkipped The {@link Consumer} to be completed. If Ndef read can be skipped, + * the {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with {@link Boolean#FALSE}. + */ + void onNdefRead(@NonNull Consumer<Boolean> isSkipped); + /** + * Method to check if Nfc is allowed to be enabled by OEMs. + * @param isAllowed The {@link Consumer} to be completed. If enabling NFC is allowed, + * the {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with {@link Boolean#FALSE}. + * false if NFC cannot be enabled at this time. + */ + @SuppressLint("MethodNameTense") + void onEnable(@NonNull Consumer<Boolean> isAllowed); + /** + * Method to check if Nfc is allowed to be disabled by OEMs. + * @param isAllowed The {@link Consumer} to be completed. If disabling NFC is allowed, + * the {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with {@link Boolean#FALSE}. + * false if NFC cannot be disabled at this time. + */ + void onDisable(@NonNull Consumer<Boolean> isAllowed); + + /** + * Callback to indicate that Nfc starts to boot. + */ + void onBootStarted(); + + /** + * Callback to indicate that Nfc starts to enable. + */ + void onEnableStarted(); + + /** + * Callback to indicate that Nfc starts to enable. + */ + void onDisableStarted(); + + /** + * Callback to indicate if NFC boots successfully or not. + * @param status the status code indicating if boot finished successfully + */ + void onBootFinished(@StatusCode int status); + + /** + * Callback to indicate if NFC is successfully enabled. + * @param status the status code indicating if enable finished successfully + */ + void onEnableFinished(@StatusCode int status); + + /** + * Callback to indicate if NFC is successfully disabled. + * @param status the status code indicating if disable finished successfully + */ + void onDisableFinished(@StatusCode int status); + + /** + * Check if NfcService tag dispatch need to be skipped. + * @param isSkipped The {@link Consumer} to be completed. If tag dispatch can be skipped, + * the {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with {@link Boolean#FALSE}. + */ + void onTagDispatch(@NonNull Consumer<Boolean> isSkipped); + + /** + * Notifies routing configuration is changed. + */ + void onRoutingChanged(); + + /** + * API to activate start stop cpu boost on hce event. + * + * <p>When HCE is activated, transferring data, and deactivated, + * must call this method to activate, start and stop cpu boost respectively. + * @param action Flag indicating actions to activate, start and stop cpu boost. + */ + void onHceEventReceived(@HostCardEmulationAction int action); + + /** + * API to notify when reader option has been changed using + * {@link NfcAdapter#enableReaderOption(boolean)} by some app. + * @param enabled Flag indicating ReaderMode enabled/disabled + */ + void onReaderOptionChanged(boolean enabled); + + /** + * Notifies NFC is activated in listen mode. + * NFC Forum NCI-2.3 ch.5.2.6 specification + * + * <p>NFCC is ready to communicate with a Card reader + * + * @param isActivated true, if card emulation activated, else de-activated. + */ + void onCardEmulationActivated(boolean isActivated); + + /** + * Notifies the Remote NFC Endpoint RF Field is activated. + * NFC Forum NCI-2.3 ch.5.3 specification + * + * @param isActivated true, if RF Field is ON, else RF Field is OFF. + */ + void onRfFieldActivated(boolean isActivated); + + /** + * Notifies the NFC RF discovery is started or in the IDLE state. + * NFC Forum NCI-2.3 ch.5.2 specification + * + * @param isDiscoveryStarted true, if RF discovery started, else RF state is Idle. + */ + void onRfDiscoveryStarted(boolean isDiscoveryStarted); + + /** + * Notifies the NFCEE (NFC Execution Environment) Listen has been activated. + * + * @param isActivated true, if EE Listen is ON, else EE Listen is OFF. + */ + void onEeListenActivated(boolean isActivated); + + /** + * Gets the intent to find the OEM package in the OEM App market. If the consumer returns + * {@code null} or a timeout occurs, the intent from the first available package will be + * used instead. + * + * @param packages the OEM packages name stored in the tag + * @param intentConsumer The {@link Consumer} to be completed. + * The {@link Consumer#accept(Object)} should be called with + * the Intent required. + * + */ + void onGetOemAppSearchIntent(@NonNull List<String> packages, + @NonNull Consumer<Intent> intentConsumer); + + /** + * Checks if the NDEF message contains any specific OEM package executable content + * + * @param tag the {@link android.nfc.Tag Tag} + * @param message NDEF Message to read from tag + * @param hasOemExecutableContent The {@link Consumer} to be completed. If there is + * OEM package executable content, the + * {@link Consumer#accept(Object)} should be called with + * {@link Boolean#TRUE}, otherwise call with + * {@link Boolean#FALSE}. + */ + void onNdefMessage(@NonNull Tag tag, @NonNull NdefMessage message, + @NonNull Consumer<Boolean> hasOemExecutableContent); + + /** + * Callback to indicate the app chooser activity should be launched for handling CE + * transaction. This is invoked for example when there are more than 1 app installed that + * can handle the HCE transaction. OEMs can launch the Activity based + * on their requirement. + * + * @param selectedAid the selected AID from APDU + * @param services {@link ApduServiceInfo} of the service triggering the activity + * @param failedComponent the component failed to be resolved + * @param category the category of the service + */ + void onLaunchHceAppChooserActivity(@NonNull String selectedAid, + @NonNull List<ApduServiceInfo> services, + @NonNull ComponentName failedComponent, + @NonNull String category); + + /** + * Callback to indicate tap again dialog should be launched for handling HCE transaction. + * This is invoked for example when a CE service needs the device to unlocked before + * handling the transaction. OEMs can launch the Activity based on their requirement. + * + * @param service {@link ApduServiceInfo} of the service triggering the dialog + * @param category the category of the service + */ + void onLaunchHceTapAgainDialog(@NonNull ApduServiceInfo service, @NonNull String category); + + /** + * Callback when OEM specified log event are notified. + * @param item the log items that contains log information of NFC event. + */ + void onLogEventNotified(@NonNull OemLogItems item); } /** * Constructor to be used only by {@link NfcAdapter}. - * @hide */ - public NfcOemExtension(@NonNull Context context, @NonNull NfcAdapter adapter) { + NfcOemExtension(@NonNull Context context, @NonNull NfcAdapter adapter) { mContext = context; mAdapter = adapter; mOemNfcExtensionCallback = new NfcOemExtensionCallback(); } /** - * Register an {@link Callback} to listen for UWB oem extension callbacks + * Register an {@link Callback} to listen for NFC oem extension callbacks + * Multiple clients can register and callbacks will be invoked asynchronously. + * * <p>The provided callback will be invoked by the given {@link Executor}. + * As part of {@link #registerCallback(Executor, Callback)} the + * {@link Callback} will be invoked with current NFC state + * before the {@link #registerCallback(Executor, Callback)} function completes. * * @param executor an {@link Executor} to execute given callback * @param callback oem implementation of {@link Callback} @@ -84,21 +427,40 @@ public final class NfcOemExtension { public void registerCallback(@NonNull @CallbackExecutor Executor executor, @NonNull Callback callback) { synchronized (mLock) { - if (mCallback != null) { + if (executor == null || callback == null) { + Log.e(TAG, "Executor and Callback must not be null!"); + throw new IllegalArgumentException(); + } + + if (mCallbackMap.containsKey(callback)) { Log.e(TAG, "Callback already registered. Unregister existing callback before" + "registering"); throw new IllegalArgumentException(); } - try { - NfcAdapter.sService.registerOemExtensionCallback(mOemNfcExtensionCallback); - mCallback = callback; - mExecutor = executor; - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); + mCallbackMap.put(callback, executor); + if (!mIsRegistered) { + NfcAdapter.callService(() -> { + NfcAdapter.sService.registerOemExtensionCallback(mOemNfcExtensionCallback); + mIsRegistered = true; + }); + } else { + updateNfCState(callback, executor); } } } + private void updateNfCState(Callback callback, Executor executor) { + if (callback != null) { + Log.i(TAG, "updateNfCState"); + executor.execute(() -> { + callback.onCardEmulationActivated(mCardEmulationActivated); + callback.onRfFieldActivated(mRfFieldActivated); + callback.onRfDiscoveryStarted(mRfDiscoveryStarted); + callback.onEeListenActivated(mEeListenActivated); + }); + } + } + /** * Unregister the specified {@link Callback} * @@ -113,16 +475,18 @@ public final class NfcOemExtension { @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void unregisterCallback(@NonNull Callback callback) { synchronized (mLock) { - if (mCallback == null || mCallback != callback) { + if (!mCallbackMap.containsKey(callback) || !mIsRegistered) { Log.e(TAG, "Callback not registered"); throw new IllegalArgumentException(); } - try { - NfcAdapter.sService.unregisterOemExtensionCallback(mOemNfcExtensionCallback); - mCallback = null; - mExecutor = null; - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); + if (mCallbackMap.size() == 1) { + NfcAdapter.callService(() -> { + NfcAdapter.sService.unregisterOemExtensionCallback(mOemNfcExtensionCallback); + mIsRegistered = false; + mCallbackMap.remove(callback); + }); + } else { + mCallbackMap.remove(callback); } } } @@ -134,11 +498,7 @@ public final class NfcOemExtension { @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void clearPreference() { - try { - NfcAdapter.sService.clearPreference(); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService(() -> NfcAdapter.sService.clearPreference()); } /** @@ -147,11 +507,7 @@ public final class NfcOemExtension { @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void synchronizeScreenState() { - try { - NfcAdapter.sService.setScreenState(); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); - } + NfcAdapter.callService(() -> NfcAdapter.sService.setScreenState()); } /** @@ -162,27 +518,517 @@ public final class NfcOemExtension { @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void maybeTriggerFirmwareUpdate() { - try { - NfcAdapter.sService.checkFirmware(); - } catch (RemoteException e) { - mAdapter.attemptDeadServiceRecovery(e); + NfcAdapter.callService(() -> NfcAdapter.sService.checkFirmware()); + } + + /** + * Get the Active NFCEE (NFC Execution Environment) List + * + * @return List of activated secure elements on success + * which can contain "eSE" and "UICC", otherwise empty list. + */ + @NonNull + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public List<String> getActiveNfceeList() { + return NfcAdapter.callServiceReturn(() -> + NfcAdapter.sService.fetchActiveNfceeList(), new ArrayList<String>()); + } + + /** + * Sets NFC controller always on feature. + * <p>This API is for the NFCC internal state management. It allows to discriminate + * the controller function from the NFC function by keeping the NFC controller on without + * any NFC RF enabled if necessary. + * <p>This call is asynchronous, register listener {@link NfcAdapter.ControllerAlwaysOnListener} + * by {@link NfcAdapter#registerControllerAlwaysOnListener} to find out when the operation is + * complete. + * <p> Note: This adds more always on modes on top of existing + * {@link NfcAdapter#setControllerAlwaysOn(boolean)} API which can be used to set the NFCC in + * only {@link #ENABLE_DEFAULT} and {@link #DISABLE} modes. + * @param mode one of {@link ControllerMode} modes + * @throws UnsupportedOperationException if + * <li> if FEATURE_NFC, FEATURE_NFC_HOST_CARD_EMULATION, FEATURE_NFC_HOST_CARD_EMULATION_NFCF, + * FEATURE_NFC_OFF_HOST_CARD_EMULATION_UICC and FEATURE_NFC_OFF_HOST_CARD_EMULATION_ESE + * are unavailable </li> + * <li> if the feature is unavailable @see NfcAdapter#isNfcControllerAlwaysOnSupported() </li> + * @hide + * @see NfcAdapter#setControllerAlwaysOn(boolean) + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) + public void setControllerAlwaysOnMode(@ControllerMode int mode) { + if (!NfcAdapter.sHasNfcFeature && !NfcAdapter.sHasCeFeature) { + throw new UnsupportedOperationException(); + } + NfcAdapter.callService(() -> NfcAdapter.sService.setControllerAlwaysOn(mode)); + } + + /** + * Triggers NFC initialization. If OEM extension is registered + * (indicated via `enable_oem_extension` NFC overlay), the NFC stack initialization at bootup + * is delayed until the OEM extension app triggers the initialization via this call. + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public void triggerInitialization() { + NfcAdapter.callService(() -> NfcAdapter.sService.triggerInitialization()); + } + + /** + * Gets the last user toggle status. + * @return true if NFC is set to ON, false otherwise + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public boolean hasUserEnabledNfc() { + return NfcAdapter.callServiceReturn(() -> NfcAdapter.sService.getSettingStatus(), false); + } + + /** + * Checks if the tag is present or not. + * @return true if the tag is present, false otherwise + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public boolean isTagPresent() { + return NfcAdapter.callServiceReturn(() -> NfcAdapter.sService.isTagPresent(), false); + } + + /** + * Pauses NFC tag reader mode polling for a {@code timeoutInMs} millisecond. + * In case of {@code timeoutInMs} is zero or invalid polling will be stopped indefinitely + * use {@link #resumePolling() to resume the polling. + * @param timeoutInMs the pause polling duration in millisecond + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public void pausePolling(int timeoutInMs) { + NfcAdapter.callService(() -> NfcAdapter.sService.pausePolling(timeoutInMs)); + } + + /** + * Resumes default NFC tag reader mode polling for the current device state if polling is + * paused. Calling this while already in polling is a no-op. + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + public void resumePolling() { + NfcAdapter.callService(() -> NfcAdapter.sService.resumePolling()); + } + + /** + * Set whether to enable auto routing change or not (enabled by default). + * If disabled, routing targets are limited to a single off-host destination. + * + * @param state status of auto routing change, true if enable, otherwise false + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(Manifest.permission.WRITE_SECURE_SETTINGS) + public void setAutoChangeEnabled(boolean state) { + NfcAdapter.callService(() -> + NfcAdapter.sCardEmulationService.setAutoChangeStatus(state)); + } + + /** + * Check if auto routing change is enabled or not. + * + * @return true if enabled, otherwise false + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(Manifest.permission.WRITE_SECURE_SETTINGS) + public boolean isAutoChangeEnabled() { + return NfcAdapter.callServiceReturn(() -> + NfcAdapter.sCardEmulationService.isAutoChangeEnabled(), false); + } + + /** + * Get current routing status + * + * @return {@link RoutingStatus} indicating the default route, default ISO-DEP + * route and default off-host route. + */ + @NonNull + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(Manifest.permission.WRITE_SECURE_SETTINGS) + public RoutingStatus getRoutingStatus() { + List<String> status = NfcAdapter.callServiceReturn(() -> + NfcAdapter.sCardEmulationService.getRoutingStatus(), new ArrayList<>()); + return new RoutingStatus(routeStringToInt(status.get(0)), + routeStringToInt(status.get(1)), + routeStringToInt(status.get(2))); + } + + /** + * Overwrites NFC controller routing table, which includes Protocol Route, Technology Route, + * and Empty AID Route. + * + * The parameter set to + * {@link ProtocolAndTechnologyRoute#PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET} + * can be used to keep current values for that entry. At least one route should be overridden + * when calling this API, otherwise throw {@link IllegalArgumentException}. + * + * @param protocol ISO-DEP route destination, where the possible inputs are defined in + * {@link ProtocolAndTechnologyRoute}. + * @param technology Tech-A, Tech-B and Tech-F route destination, where the possible inputs + * are defined in + * {@link ProtocolAndTechnologyRoute} + * @param emptyAid Zero-length AID route destination, where the possible inputs are defined in + * {@link ProtocolAndTechnologyRoute} + * @param systemCode System Code route destination, where the possible inputs are defined in + * {@link ProtocolAndTechnologyRoute} + */ + @RequiresPermission(Manifest.permission.WRITE_SECURE_SETTINGS) + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public void overwriteRoutingTable( + @CardEmulation.ProtocolAndTechnologyRoute int protocol, + @CardEmulation.ProtocolAndTechnologyRoute int technology, + @CardEmulation.ProtocolAndTechnologyRoute int emptyAid, + @CardEmulation.ProtocolAndTechnologyRoute int systemCode) { + + String protocolRoute = routeIntToString(protocol); + String technologyRoute = routeIntToString(technology); + String emptyAidRoute = routeIntToString(emptyAid); + String systemCodeRoute = routeIntToString(systemCode); + + NfcAdapter.callService(() -> + NfcAdapter.sCardEmulationService.overwriteRoutingTable( + mContext.getUser().getIdentifier(), + emptyAidRoute, + protocolRoute, + technologyRoute, + systemCodeRoute + )); + } + + /** + * Gets current routing table entries. + * @return List of {@link NfcRoutingTableEntry} representing current routing table + */ + @NonNull + @RequiresPermission(Manifest.permission.WRITE_SECURE_SETTINGS) + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public List<NfcRoutingTableEntry> getRoutingTable() { + List<Entry> entryList = NfcAdapter.callServiceReturn(() -> + NfcAdapter.sService.getRoutingTableEntryList(), null); + List<NfcRoutingTableEntry> result = new ArrayList<>(); + for (Entry entry : entryList) { + switch (entry.getType()) { + case TYPE_TECHNOLOGY -> result.add( + new RoutingTableTechnologyEntry(entry.getNfceeId(), + RoutingTableTechnologyEntry.techStringToInt(entry.getEntry())) + ); + case TYPE_PROTOCOL -> result.add( + new RoutingTableProtocolEntry(entry.getNfceeId(), + RoutingTableProtocolEntry.protocolStringToInt(entry.getEntry())) + ); + case TYPE_AID -> result.add( + new RoutingTableAidEntry(entry.getNfceeId(), entry.getEntry()) + ); + case TYPE_SYSTEMCODE -> result.add( + new RoutingTableSystemCodeEntry(entry.getNfceeId(), + entry.getEntry().getBytes(StandardCharsets.UTF_8)) + ); + } } + return result; } private final class NfcOemExtensionCallback extends INfcOemExtensionCallback.Stub { + + @Override + public void onTagConnected(boolean connected) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(connected, cb::onTagConnected, ex)); + } + @Override - public void onTagConnected(boolean connected, Tag tag) throws RemoteException { + public void onCardEmulationActivated(boolean isActivated) throws RemoteException { + mCardEmulationActivated = isActivated; + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(isActivated, cb::onCardEmulationActivated, ex)); + } + + @Override + public void onRfFieldActivated(boolean isActivated) throws RemoteException { + mRfFieldActivated = isActivated; + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(isActivated, cb::onRfFieldActivated, ex)); + } + + @Override + public void onRfDiscoveryStarted(boolean isDiscoveryStarted) throws RemoteException { + mRfDiscoveryStarted = isDiscoveryStarted; + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(isDiscoveryStarted, cb::onRfDiscoveryStarted, ex)); + } + + @Override + public void onEeListenActivated(boolean isActivated) throws RemoteException { + mEeListenActivated = isActivated; + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(isActivated, cb::onEeListenActivated, ex)); + } + + @Override + public void onStateUpdated(int state) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(state, cb::onStateUpdated, ex)); + } + + @Override + public void onApplyRouting(ResultReceiver isSkipped) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback( + new ReceiverWrapper<>(isSkipped), cb::onApplyRouting, ex)); + } + @Override + public void onNdefRead(ResultReceiver isSkipped) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback( + new ReceiverWrapper<>(isSkipped), cb::onNdefRead, ex)); + } + @Override + public void onEnable(ResultReceiver isAllowed) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback( + new ReceiverWrapper<>(isAllowed), cb::onEnable, ex)); + } + @Override + public void onDisable(ResultReceiver isAllowed) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback( + new ReceiverWrapper<>(isAllowed), cb::onDisable, ex)); + } + @Override + public void onBootStarted() throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(null, (Object input) -> cb.onBootStarted(), ex)); + } + @Override + public void onEnableStarted() throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(null, (Object input) -> cb.onEnableStarted(), ex)); + } + @Override + public void onDisableStarted() throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(null, (Object input) -> cb.onDisableStarted(), ex)); + } + @Override + public void onBootFinished(int status) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(status, cb::onBootFinished, ex)); + } + @Override + public void onEnableFinished(int status) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(status, cb::onEnableFinished, ex)); + } + @Override + public void onDisableFinished(int status) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(status, cb::onDisableFinished, ex)); + } + @Override + public void onTagDispatch(ResultReceiver isSkipped) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback( + new ReceiverWrapper<>(isSkipped), cb::onTagDispatch, ex)); + } + @Override + public void onRoutingChanged() throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(null, (Object input) -> cb.onRoutingChanged(), ex)); + } + @Override + public void onHceEventReceived(int action) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(action, cb::onHceEventReceived, ex)); + } + + @Override + public void onReaderOptionChanged(boolean enabled) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(enabled, cb::onReaderOptionChanged, ex)); + } + + @Override + public void onGetOemAppSearchIntent(List<String> packages, ResultReceiver intentConsumer) + throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoid2ArgCallback(packages, new ReceiverWrapper<>(intentConsumer), + cb::onGetOemAppSearchIntent, ex)); + } + + @Override + public void onNdefMessage(Tag tag, NdefMessage message, + ResultReceiver hasOemExecutableContent) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> { + synchronized (mLock) { + final long identity = Binder.clearCallingIdentity(); + try { + ex.execute(() -> cb.onNdefMessage( + tag, message, new ReceiverWrapper<>(hasOemExecutableContent))); + } catch (RuntimeException exception) { + throw exception; + } finally { + Binder.restoreCallingIdentity(identity); + } + } + }); + } + + @Override + public void onLaunchHceAppChooserActivity(String selectedAid, + List<ApduServiceInfo> services, + ComponentName failedComponent, String category) + throws RemoteException { + mCallbackMap.forEach((cb, ex) -> { + synchronized (mLock) { + final long identity = Binder.clearCallingIdentity(); + try { + ex.execute(() -> cb.onLaunchHceAppChooserActivity( + selectedAid, services, failedComponent, category)); + } catch (RuntimeException exception) { + throw exception; + } finally { + Binder.restoreCallingIdentity(identity); + } + } + }); + } + + @Override + public void onLaunchHceTapAgainActivity(ApduServiceInfo service, String category) + throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoid2ArgCallback(service, category, cb::onLaunchHceTapAgainDialog, ex)); + } + + @Override + public void onLogEventNotified(OemLogItems item) throws RemoteException { + mCallbackMap.forEach((cb, ex) -> + handleVoidCallback(item, cb::onLogEventNotified, ex)); + } + + private <T> void handleVoidCallback( + T input, Consumer<T> callbackMethod, Executor executor) { + synchronized (mLock) { + final long identity = Binder.clearCallingIdentity(); + try { + executor.execute(() -> callbackMethod.accept(input)); + } catch (RuntimeException ex) { + throw ex; + } finally { + Binder.restoreCallingIdentity(identity); + } + } + } + + private <T1, T2> void handleVoid2ArgCallback( + T1 input1, T2 input2, BiConsumer<T1, T2> callbackMethod, Executor executor) { synchronized (mLock) { - if (mCallback == null || mExecutor == null) { - return; + final long identity = Binder.clearCallingIdentity(); + try { + executor.execute(() -> callbackMethod.accept(input1, input2)); + } catch (RuntimeException ex) { + throw ex; + } finally { + Binder.restoreCallingIdentity(identity); } + } + } + + private <S, T> S handleNonVoidCallbackWithInput( + S defaultValue, T input, Function<T, S> callbackMethod) throws RemoteException { + synchronized (mLock) { final long identity = Binder.clearCallingIdentity(); + S result = defaultValue; try { - mExecutor.execute(() -> mCallback.onTagConnected(connected, tag)); + ExecutorService executor = Executors.newSingleThreadExecutor(); + FutureTask<S> futureTask = new FutureTask<>(() -> callbackMethod.apply(input)); + var unused = executor.submit(futureTask); + try { + result = futureTask.get( + OEM_EXTENSION_RESPONSE_THRESHOLD_MS, TimeUnit.MILLISECONDS); + } catch (ExecutionException | InterruptedException e) { + e.printStackTrace(); + } catch (TimeoutException e) { + Log.w(TAG, "Callback timed out: " + callbackMethod); + e.printStackTrace(); + } finally { + executor.shutdown(); + } } finally { Binder.restoreCallingIdentity(identity); } + return result; } } + + private <T> T handleNonVoidCallbackWithoutInput(T defaultValue, Supplier<T> callbackMethod) + throws RemoteException { + synchronized (mLock) { + final long identity = Binder.clearCallingIdentity(); + T result = defaultValue; + try { + ExecutorService executor = Executors.newSingleThreadExecutor(); + FutureTask<T> futureTask = new FutureTask<>(callbackMethod::get); + var unused = executor.submit(futureTask); + try { + result = futureTask.get( + OEM_EXTENSION_RESPONSE_THRESHOLD_MS, TimeUnit.MILLISECONDS); + } catch (ExecutionException | InterruptedException e) { + e.printStackTrace(); + } catch (TimeoutException e) { + Log.w(TAG, "Callback timed out: " + callbackMethod); + e.printStackTrace(); + } finally { + executor.shutdown(); + } + } finally { + Binder.restoreCallingIdentity(identity); + } + return result; + } + } + } + + private @CardEmulation.ProtocolAndTechnologyRoute int routeStringToInt(String route) { + if (route.equals("DH")) { + return PROTOCOL_AND_TECHNOLOGY_ROUTE_DH; + } else if (route.startsWith("eSE")) { + return PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE; + } else if (route.startsWith("SIM")) { + return PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC; + } else { + throw new IllegalStateException("Unexpected value: " + route); + } + } + + private class ReceiverWrapper<T> implements Consumer<T> { + private final ResultReceiver mResultReceiver; + + ReceiverWrapper(ResultReceiver resultReceiver) { + mResultReceiver = resultReceiver; + } + + @Override + public void accept(T result) { + if (result instanceof Boolean) { + mResultReceiver.send((Boolean) result ? 1 : 0, null); + } else if (result instanceof Intent) { + Bundle bundle = new Bundle(); + bundle.putParcelable("intent", (Intent) result); + mResultReceiver.send(0, bundle); + } + + } + + @Override + public Consumer<T> andThen(Consumer<? super T> after) { + return Consumer.super.andThen(after); + } } } diff --git a/nfc/java/android/nfc/NfcRoutingTableEntry.java b/nfc/java/android/nfc/NfcRoutingTableEntry.java new file mode 100644 index 000000000000..4e913776a030 --- /dev/null +++ b/nfc/java/android/nfc/NfcRoutingTableEntry.java @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2024 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.nfc; + + +import android.annotation.FlaggedApi; +import android.annotation.SystemApi; + +/** + * Class to represent an entry of routing table. This class is abstract and extended by + * {@link RoutingTableTechnologyEntry}, {@link RoutingTableProtocolEntry}, + * {@link RoutingTableAidEntry} and {@link RoutingTableSystemCodeEntry}. + * + * @hide + */ +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +@SystemApi +public abstract class NfcRoutingTableEntry { + private final int mNfceeId; + + /** @hide */ + protected NfcRoutingTableEntry(int nfceeId) { + mNfceeId = nfceeId; + } + + /** + * Gets the NFCEE Id of this entry. + * @return an integer of NFCEE Id. + */ + public int getNfceeId() { + return mNfceeId; + } +} diff --git a/nfc/java/android/nfc/OemLogItems.aidl b/nfc/java/android/nfc/OemLogItems.aidl new file mode 100644 index 000000000000..3bcb445fc7d2 --- /dev/null +++ b/nfc/java/android/nfc/OemLogItems.aidl @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.nfc; + +parcelable OemLogItems;
\ No newline at end of file diff --git a/nfc/java/android/nfc/OemLogItems.java b/nfc/java/android/nfc/OemLogItems.java new file mode 100644 index 000000000000..6671941c1cc9 --- /dev/null +++ b/nfc/java/android/nfc/OemLogItems.java @@ -0,0 +1,325 @@ +/*
+ * Copyright 2024 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.nfc;
+
+import android.annotation.FlaggedApi;
+import android.annotation.IntDef;
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.time.Instant;
+
+/**
+ * A log class for OEMs to get log information of NFC events.
+ * @hide
+ */
+@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION)
+@SystemApi
+public final class OemLogItems implements Parcelable {
+ /**
+ * Used when RF field state is changed.
+ */
+ public static final int LOG_ACTION_RF_FIELD_STATE_CHANGED = 0X01;
+ /**
+ * Used when NFC is toggled. Event should be set to {@link LogEvent#EVENT_ENABLE} or
+ * {@link LogEvent#EVENT_DISABLE} if this action is used.
+ */
+ public static final int LOG_ACTION_NFC_TOGGLE = 0x0201;
+ /**
+ * Used when sending host routing status.
+ */
+ public static final int LOG_ACTION_HCE_DATA = 0x0204;
+ /**
+ * Used when screen state is changed.
+ */
+ public static final int LOG_ACTION_SCREEN_STATE_CHANGED = 0x0206;
+ /**
+ * Used when tag is detected.
+ */
+ public static final int LOG_ACTION_TAG_DETECTED = 0x03;
+
+ /**
+ * @hide
+ */
+ @IntDef(prefix = { "LOG_ACTION_" }, value = {
+ LOG_ACTION_RF_FIELD_STATE_CHANGED,
+ LOG_ACTION_NFC_TOGGLE,
+ LOG_ACTION_HCE_DATA,
+ LOG_ACTION_SCREEN_STATE_CHANGED,
+ LOG_ACTION_TAG_DETECTED,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface LogAction {}
+
+ /**
+ * Represents the event is not set.
+ */
+ public static final int EVENT_UNSET = 0;
+ /**
+ * Represents nfc enable is called.
+ */
+ public static final int EVENT_ENABLE = 1;
+ /**
+ * Represents nfc disable is called.
+ */
+ public static final int EVENT_DISABLE = 2;
+ /** @hide */
+ @IntDef(prefix = { "EVENT_" }, value = {
+ EVENT_UNSET,
+ EVENT_ENABLE,
+ EVENT_DISABLE,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface LogEvent {}
+ private int mAction;
+ private int mEvent;
+ private int mCallingPid;
+ private byte[] mCommandApdus;
+ private byte[] mResponseApdus;
+ private Instant mRfFieldOnTime;
+ private Tag mTag;
+
+ /** @hide */
+ public OemLogItems(@LogAction int action, @LogEvent int event, int callingPid,
+ byte[] commandApdus, byte[] responseApdus, Instant rfFieldOnTime,
+ Tag tag) {
+ mAction = action;
+ mEvent = event;
+ mTag = tag;
+ mCallingPid = callingPid;
+ mCommandApdus = commandApdus;
+ mResponseApdus = responseApdus;
+ mRfFieldOnTime = rfFieldOnTime;
+ }
+
+ /**
+ * Describe the kinds of special objects contained in this Parcelable
+ * instance's marshaled representation. For example, if the object will
+ * include a file descriptor in the output of {@link #writeToParcel(Parcel, int)},
+ * the return value of this method must include the
+ * {@link #CONTENTS_FILE_DESCRIPTOR} bit.
+ *
+ * @return a bitmask indicating the set of special object types marshaled
+ * by this Parcelable object instance.
+ */
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
+ /**
+ * Flatten this object in to a Parcel.
+ *
+ * @param dest The Parcel in which the object should be written.
+ * @param flags Additional flags about how the object should be written.
+ * May be 0 or {@link #PARCELABLE_WRITE_RETURN_VALUE}.
+ */
+ @Override
+ public void writeToParcel(@NonNull Parcel dest, int flags) {
+ dest.writeInt(mAction);
+ dest.writeInt(mEvent);
+ dest.writeInt(mCallingPid);
+ dest.writeInt(mCommandApdus.length);
+ dest.writeByteArray(mCommandApdus);
+ dest.writeInt(mResponseApdus.length);
+ dest.writeByteArray(mResponseApdus);
+ dest.writeLong(mRfFieldOnTime.getEpochSecond());
+ dest.writeInt(mRfFieldOnTime.getNano());
+ dest.writeParcelable(mTag, 0);
+ }
+
+ /** @hide */
+ public static class Builder {
+ private final OemLogItems mItem;
+
+ public Builder(@LogAction int type) {
+ mItem = new OemLogItems(type, EVENT_UNSET, 0, new byte[0], new byte[0], null, null);
+ }
+
+ /** Setter of the log action. */
+ public OemLogItems.Builder setAction(@LogAction int action) {
+ mItem.mAction = action;
+ return this;
+ }
+
+ /** Setter of the log calling event. */
+ public OemLogItems.Builder setCallingEvent(@LogEvent int event) {
+ mItem.mEvent = event;
+ return this;
+ }
+
+ /** Setter of the log calling Pid. */
+ public OemLogItems.Builder setCallingPid(int pid) {
+ mItem.mCallingPid = pid;
+ return this;
+ }
+
+ /** Setter of APDU command. */
+ public OemLogItems.Builder setApduCommand(byte[] apdus) {
+ mItem.mCommandApdus = apdus;
+ return this;
+ }
+
+ /** Setter of RF field on time. */
+ public OemLogItems.Builder setRfFieldOnTime(Instant time) {
+ mItem.mRfFieldOnTime = time;
+ return this;
+ }
+
+ /** Setter of APDU response. */
+ public OemLogItems.Builder setApduResponse(byte[] apdus) {
+ mItem.mResponseApdus = apdus;
+ return this;
+ }
+
+ /** Setter of dispatched tag. */
+ public OemLogItems.Builder setTag(Tag tag) {
+ mItem.mTag = tag;
+ return this;
+ }
+
+ /** Builds an {@link OemLogItems} instance. */
+ public OemLogItems build() {
+ return mItem;
+ }
+ }
+
+ /**
+ * Gets the action of this log.
+ * @return one of {@link LogAction}
+ */
+ @LogAction
+ public int getAction() {
+ return mAction;
+ }
+
+ /**
+ * Gets the event of this log. This will be set to {@link LogEvent#EVENT_ENABLE} or
+ * {@link LogEvent#EVENT_DISABLE} only when action is set to
+ * {@link LogAction#LOG_ACTION_NFC_TOGGLE}
+ * @return one of {@link LogEvent}
+ */
+ @LogEvent
+ public int getEvent() {
+ return mEvent;
+ }
+
+ /**
+ * Gets the calling Pid of this log. This field will be set only when action is set to
+ * {@link LogAction#LOG_ACTION_NFC_TOGGLE}
+ * @return calling Pid
+ */
+ public int getCallingPid() {
+ return mCallingPid;
+ }
+
+ /**
+ * Gets the command APDUs of this log. This field will be set only when action is set to
+ * {@link LogAction#LOG_ACTION_HCE_DATA}
+ * @return a byte array of command APDUs with the same format as
+ * {@link android.nfc.cardemulation.HostApduService#sendResponseApdu(byte[])}
+ */
+ @Nullable
+ public byte[] getCommandApdu() {
+ return mCommandApdus;
+ }
+
+ /**
+ * Gets the response APDUs of this log. This field will be set only when action is set to
+ * {@link LogAction#LOG_ACTION_HCE_DATA}
+ * @return a byte array of response APDUs with the same format as
+ * {@link android.nfc.cardemulation.HostApduService#sendResponseApdu(byte[])}
+ */
+ @Nullable
+ public byte[] getResponseApdu() {
+ return mResponseApdus;
+ }
+
+ /**
+ * Gets the RF field event time in this log in millisecond. This field will be set only when
+ * action is set to {@link LogAction#LOG_ACTION_RF_FIELD_STATE_CHANGED}
+ * @return an {@link Instant} of RF field event time.
+ */
+ @Nullable
+ public Instant getRfFieldEventTimeMillis() {
+ return mRfFieldOnTime;
+ }
+
+ /**
+ * Gets the tag of this log. This field will be set only when action is set to
+ * {@link LogAction#LOG_ACTION_TAG_DETECTED}
+ * @return a detected {@link Tag} in {@link #LOG_ACTION_TAG_DETECTED} case. Return
+ * null otherwise.
+ */
+ @Nullable
+ public Tag getTag() {
+ return mTag;
+ }
+
+ private String byteToHex(byte[] bytes) {
+ char[] HexArray = "0123456789ABCDEF".toCharArray();
+ char[] hexChars = new char[bytes.length * 2];
+ for (int j = 0; j < bytes.length; j++) {
+ int v = bytes[j] & 0xFF;
+ hexChars[j * 2] = HexArray[v >>> 4];
+ hexChars[j * 2 + 1] = HexArray[v & 0x0F];
+ }
+ return new String(hexChars);
+ }
+
+ @Override
+ public String toString() {
+ return "[mCommandApdus: "
+ + ((mCommandApdus != null) ? byteToHex(mCommandApdus) : "null")
+ + "[mResponseApdus: "
+ + ((mResponseApdus != null) ? byteToHex(mResponseApdus) : "null")
+ + ", mCallingApi= " + mEvent
+ + ", mAction= " + mAction
+ + ", mCallingPId = " + mCallingPid
+ + ", mRfFieldOnTime= " + mRfFieldOnTime;
+ }
+ private OemLogItems(Parcel in) {
+ this.mAction = in.readInt();
+ this.mEvent = in.readInt();
+ this.mCallingPid = in.readInt();
+ this.mCommandApdus = new byte[in.readInt()];
+ in.readByteArray(this.mCommandApdus);
+ this.mResponseApdus = new byte[in.readInt()];
+ in.readByteArray(this.mResponseApdus);
+ this.mRfFieldOnTime = Instant.ofEpochSecond(in.readLong(), in.readInt());
+ this.mTag = in.readParcelable(Tag.class.getClassLoader(), Tag.class);
+ }
+
+ public static final @NonNull Parcelable.Creator<OemLogItems> CREATOR =
+ new Parcelable.Creator<OemLogItems>() {
+ @Override
+ public OemLogItems createFromParcel(Parcel in) {
+ return new OemLogItems(in);
+ }
+
+ @Override
+ public OemLogItems[] newArray(int size) {
+ return new OemLogItems[size];
+ }
+ };
+
+}
diff --git a/nfc/java/android/nfc/RoutingStatus.java b/nfc/java/android/nfc/RoutingStatus.java new file mode 100644 index 000000000000..4a1b1f3cecbc --- /dev/null +++ b/nfc/java/android/nfc/RoutingStatus.java @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.FlaggedApi; +import android.annotation.RequiresPermission; +import android.annotation.SystemApi; +import android.nfc.cardemulation.CardEmulation; + +/** + * A class indicating default route, ISO-DEP route and off-host route. + * + * @hide + */ +@SystemApi +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +public class RoutingStatus { + private final @CardEmulation.ProtocolAndTechnologyRoute int mDefaultRoute; + private final @CardEmulation.ProtocolAndTechnologyRoute int mDefaultIsoDepRoute; + private final @CardEmulation.ProtocolAndTechnologyRoute int mDefaultOffHostRoute; + + RoutingStatus(@CardEmulation.ProtocolAndTechnologyRoute int mDefaultRoute, + @CardEmulation.ProtocolAndTechnologyRoute int mDefaultIsoDepRoute, + @CardEmulation.ProtocolAndTechnologyRoute int mDefaultOffHostRoute) { + this.mDefaultRoute = mDefaultRoute; + this.mDefaultIsoDepRoute = mDefaultIsoDepRoute; + this.mDefaultOffHostRoute = mDefaultOffHostRoute; + } + + /** + * Getter of the default route. + * @return an integer defined in + * {@link android.nfc.cardemulation.CardEmulation.ProtocolAndTechnologyRoute} + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + @CardEmulation.ProtocolAndTechnologyRoute + public int getDefaultRoute() { + return mDefaultRoute; + } + + /** + * Getter of the default ISO-DEP route. + * @return an integer defined in + * {@link android.nfc.cardemulation.CardEmulation.ProtocolAndTechnologyRoute} + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + @CardEmulation.ProtocolAndTechnologyRoute + public int getDefaultIsoDepRoute() { + return mDefaultIsoDepRoute; + } + + /** + * Getter of the default off-host route. + * @return an integer defined in + * {@link android.nfc.cardemulation.CardEmulation.ProtocolAndTechnologyRoute} + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) + @CardEmulation.ProtocolAndTechnologyRoute + public int getDefaultOffHostRoute() { + return mDefaultOffHostRoute; + } + +} diff --git a/nfc/java/android/nfc/RoutingTableAidEntry.java b/nfc/java/android/nfc/RoutingTableAidEntry.java new file mode 100644 index 000000000000..7634fe342ab9 --- /dev/null +++ b/nfc/java/android/nfc/RoutingTableAidEntry.java @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.FlaggedApi; +import android.annotation.NonNull; +import android.annotation.SystemApi; + +/** + * Represents an AID entry in current routing table. + * @hide + */ +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +@SystemApi +public class RoutingTableAidEntry extends NfcRoutingTableEntry { + private final String mValue; + + /** @hide */ + public RoutingTableAidEntry(int nfceeId, String value) { + super(nfceeId); + this.mValue = value; + } + + /** + * Gets AID value. + * @return String of AID + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @NonNull + public String getAid() { + return mValue; + } +} diff --git a/nfc/java/android/nfc/RoutingTableProtocolEntry.java b/nfc/java/android/nfc/RoutingTableProtocolEntry.java new file mode 100644 index 000000000000..0c5be7dd9d97 --- /dev/null +++ b/nfc/java/android/nfc/RoutingTableProtocolEntry.java @@ -0,0 +1,129 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.FlaggedApi; +import android.annotation.IntDef; +import android.annotation.SystemApi; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** + * Represents a protocol entry in current routing table. + * @hide + */ +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +@SystemApi +public class RoutingTableProtocolEntry extends NfcRoutingTableEntry { + /** + * Protocol undetermined. + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_UNDETERMINED = 0; + /** + * T1T Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_T1T = 1; + /** + * T2T Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_T2T = 2; + /** + * T3T Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_T3T = 3; + /** + * ISO-DEP Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_ISO_DEP = 4; + /** + * DEP Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_NFC_DEP = 5; + /** + * T5T Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_T5T = 6; + /** + * NDEF Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_NDEF = 7; + /** + * Unsupported Protocol + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int PROTOCOL_UNSUPPORTED = -1; + + /** + * + * @hide + */ + @IntDef(prefix = { "PROTOCOL_" }, value = { + PROTOCOL_UNDETERMINED, + PROTOCOL_T1T, + PROTOCOL_T2T, + PROTOCOL_T3T, + PROTOCOL_ISO_DEP, + PROTOCOL_NFC_DEP, + PROTOCOL_T5T, + PROTOCOL_NDEF, + PROTOCOL_UNSUPPORTED + }) + @Retention(RetentionPolicy.SOURCE) + public @interface ProtocolValue {} + + private final @ProtocolValue int mValue; + + /** @hide */ + public RoutingTableProtocolEntry(int nfceeId, @ProtocolValue int value) { + super(nfceeId); + this.mValue = value; + } + + /** + * Gets Protocol value. + * @return Protocol defined in {@link ProtocolValue} + */ + @ProtocolValue + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public int getProtocol() { + return mValue; + } + + /** @hide */ + @ProtocolValue + public static int protocolStringToInt(String protocolString) { + return switch (protocolString) { + case "PROTOCOL_T1T" -> PROTOCOL_T1T; + case "PROTOCOL_T2T" -> PROTOCOL_T2T; + case "PROTOCOL_T3T" -> PROTOCOL_T3T; + case "PROTOCOL_ISO_DEP" -> PROTOCOL_ISO_DEP; + case "PROTOCOL_NFC_DEP" -> PROTOCOL_NFC_DEP; + case "PROTOCOL_T5T" -> PROTOCOL_T5T; + case "PROTOCOL_NDEF" -> PROTOCOL_NDEF; + case "PROTOCOL_UNDETERMINED" -> PROTOCOL_UNDETERMINED; + default -> PROTOCOL_UNSUPPORTED; + }; + } +} diff --git a/nfc/java/android/nfc/RoutingTableSystemCodeEntry.java b/nfc/java/android/nfc/RoutingTableSystemCodeEntry.java new file mode 100644 index 000000000000..f87ad5f95195 --- /dev/null +++ b/nfc/java/android/nfc/RoutingTableSystemCodeEntry.java @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.FlaggedApi; +import android.annotation.NonNull; +import android.annotation.SystemApi; + +/** + * Represents a system code entry in current routing table. + * @hide + */ +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +@SystemApi +public class RoutingTableSystemCodeEntry extends NfcRoutingTableEntry { + private final byte[] mValue; + + /** @hide */ + public RoutingTableSystemCodeEntry(int nfceeId, byte[] value) { + super(nfceeId); + this.mValue = value; + } + + /** + * Gets system code value. + * @return Byte array of system code + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + @NonNull + public byte[] getSystemCode() { + return mValue; + } +} diff --git a/nfc/java/android/nfc/RoutingTableTechnologyEntry.java b/nfc/java/android/nfc/RoutingTableTechnologyEntry.java new file mode 100644 index 000000000000..f51a5299be11 --- /dev/null +++ b/nfc/java/android/nfc/RoutingTableTechnologyEntry.java @@ -0,0 +1,101 @@ +/* + * Copyright (C) 2024 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.nfc; + +import android.annotation.FlaggedApi; +import android.annotation.IntDef; +import android.annotation.SystemApi; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** + * Represents a technology entry in current routing table. + * @hide + */ +@FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) +@SystemApi +public class RoutingTableTechnologyEntry extends NfcRoutingTableEntry { + /** + * Technology-A + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int TECHNOLOGY_A = 0; + /** + * Technology-B + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int TECHNOLOGY_B = 1; + /** + * Technology-F + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int TECHNOLOGY_F = 2; + /** + * Technology-V + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int TECHNOLOGY_V = 3; + /** + * Unsupported technology + */ + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public static final int TECHNOLOGY_UNSUPPORTED = -1; + + /** + * + * @hide + */ + @IntDef(prefix = { "TECHNOLOGY_" }, value = { + TECHNOLOGY_A, + TECHNOLOGY_B, + TECHNOLOGY_F, + TECHNOLOGY_V, + TECHNOLOGY_UNSUPPORTED + }) + @Retention(RetentionPolicy.SOURCE) + public @interface TechnologyValue{} + + private final @TechnologyValue int mValue; + + /** @hide */ + public RoutingTableTechnologyEntry(int nfceeId, @TechnologyValue int value) { + super(nfceeId); + this.mValue = value; + } + + /** + * Gets technology value. + * @return technology value + */ + @TechnologyValue + @FlaggedApi(Flags.FLAG_NFC_OEM_EXTENSION) + public int getTechnology() { + return mValue; + } + + /** @hide */ + @TechnologyValue + public static int techStringToInt(String tech) { + return switch (tech) { + case "TECHNOLOGY_A" -> TECHNOLOGY_A; + case "TECHNOLOGY_B" -> TECHNOLOGY_B; + case "TECHNOLOGY_F" -> TECHNOLOGY_F; + case "TECHNOLOGY_V" -> TECHNOLOGY_V; + default -> TECHNOLOGY_UNSUPPORTED; + }; + } +} diff --git a/nfc/java/android/nfc/cardemulation/ApduServiceInfo.java b/nfc/java/android/nfc/cardemulation/ApduServiceInfo.java index 3cf0a4dc4873..3d293f7546a5 100644 --- a/nfc/java/android/nfc/cardemulation/ApduServiceInfo.java +++ b/nfc/java/android/nfc/cardemulation/ApduServiceInfo.java @@ -52,10 +52,12 @@ import org.xmlpull.v1.XmlPullParserException; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; +import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.TreeMap; import java.util.regex.Pattern; /** @@ -181,7 +183,8 @@ public final class ApduServiceInfo implements Parcelable { this(info, onHost, description, staticAidGroups, dynamicAidGroups, requiresUnlock, requiresScreenOn, bannerResource, uid, settingsActivityName, offHost, staticOffHost, isEnabled, - new HashMap<String, Boolean>(), new HashMap<Pattern, Boolean>()); + new HashMap<String, Boolean>(), new TreeMap<>( + Comparator.comparing(Pattern::toString))); } /** @@ -301,7 +304,7 @@ public final class ApduServiceInfo implements Parcelable { mOffHostName = sa.getString( com.android.internal.R.styleable.OffHostApduService_secureElementName); mShouldDefaultToObserveMode = sa.getBoolean( - R.styleable.HostApduService_shouldDefaultToObserveMode, + R.styleable.OffHostApduService_shouldDefaultToObserveMode, false); if (mOffHostName != null) { if (mOffHostName.equals("eSE")) { @@ -317,7 +320,8 @@ public final class ApduServiceInfo implements Parcelable { mStaticAidGroups = new HashMap<String, AidGroup>(); mDynamicAidGroups = new HashMap<String, AidGroup>(); mAutoTransact = new HashMap<String, Boolean>(); - mAutoTransactPatterns = new HashMap<Pattern, Boolean>(); + mAutoTransactPatterns = new TreeMap<Pattern, Boolean>( + Comparator.comparing(Pattern::toString)); mOnHost = onHost; final int depth = parser.getDepth(); diff --git a/nfc/java/android/nfc/cardemulation/CardEmulation.java b/nfc/java/android/nfc/cardemulation/CardEmulation.java index 2fe2ce39813b..eb28c3b9c930 100644 --- a/nfc/java/android/nfc/cardemulation/CardEmulation.java +++ b/nfc/java/android/nfc/cardemulation/CardEmulation.java @@ -17,7 +17,9 @@ package android.nfc.cardemulation; import android.Manifest; +import android.annotation.CallbackExecutor; import android.annotation.FlaggedApi; +import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; @@ -32,21 +34,28 @@ import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; +import android.nfc.ComponentNameAndUser; import android.nfc.Constants; import android.nfc.Flags; import android.nfc.INfcCardEmulation; +import android.nfc.INfcEventListener; import android.nfc.NfcAdapter; import android.os.Build; import android.os.RemoteException; import android.os.UserHandle; import android.provider.Settings; import android.provider.Settings.SettingNotFoundException; +import android.util.ArrayMap; import android.util.Log; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.util.HashMap; import java.util.HexFormat; import java.util.List; import java.util.Locale; +import java.util.Objects; +import java.util.concurrent.Executor; import java.util.regex.Pattern; /** @@ -148,6 +157,33 @@ public final class CardEmulation { * that service will be invoked directly. */ public static final int SELECTION_MODE_ASK_IF_CONFLICT = 2; + /** + * Route to Device Host (DH). + */ + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_DH = 0; + /** + * Route to eSE. + */ + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE = 1; + /** + * Route to UICC. + */ + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC = 2; + + /** + * Route to the default value in config file. + */ + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_DEFAULT = 3; + + /** + * Route unset. + */ + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public static final int PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET = -1; static boolean sIsInitialized = false; static HashMap<Context, CardEmulation> sCardEmus = new HashMap<Context, CardEmulation>(); @@ -219,24 +255,9 @@ public final class CardEmulation { * <p class="note">Requires the {@link android.Manifest.permission#NFC} permission. */ public boolean isDefaultServiceForCategory(ComponentName service, String category) { - try { - return sService.isDefaultServiceForCategory(mContext.getUser().getIdentifier(), - service, category); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.isDefaultServiceForCategory(mContext.getUser().getIdentifier(), - service, category); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.isDefaultServiceForCategory( + mContext.getUser().getIdentifier(), service, category), false); } /** @@ -251,24 +272,9 @@ public final class CardEmulation { * <p class="note">Requires the {@link android.Manifest.permission#NFC} permission. */ public boolean isDefaultServiceForAid(ComponentName service, String aid) { - try { - return sService.isDefaultServiceForAid(mContext.getUser().getIdentifier(), - service, aid); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.isDefaultServiceForAid(mContext.getUser().getIdentifier(), - service, aid); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.isDefaultServiceForAid( + mContext.getUser().getIdentifier(), service, aid), false); } /** @@ -331,22 +337,8 @@ public final class CardEmulation { */ public int getSelectionModeForCategory(String category) { if (CATEGORY_PAYMENT.equals(category)) { - boolean paymentRegistered = false; - try { - paymentRegistered = sService.isDefaultPaymentRegistered(); - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return SELECTION_MODE_ALWAYS_ASK; - } - try { - paymentRegistered = sService.isDefaultPaymentRegistered(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return SELECTION_MODE_ALWAYS_ASK; - } - } + boolean paymentRegistered = callServiceReturn(() -> + sService.isDefaultPaymentRegistered(), false); if (paymentRegistered) { return SELECTION_MODE_PREFER_DEFAULT; } else { @@ -369,13 +361,9 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_NFC_OBSERVE_MODE) public boolean setShouldDefaultToObserveModeForService(@NonNull ComponentName service, boolean enable) { - try { - return sService.setShouldDefaultToObserveModeForService( - mContext.getUser().getIdentifier(), service, enable); - } catch (RemoteException e) { - Log.e(TAG, "Failed to reach CardEmulationService."); - } - return false; + return callServiceReturn(() -> + sService.setShouldDefaultToObserveModeForService( + mContext.getUser().getIdentifier(), service, enable), false); } /** @@ -396,27 +384,11 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public boolean registerPollingLoopFilterForService(@NonNull ComponentName service, @NonNull String pollingLoopFilter, boolean autoTransact) { - pollingLoopFilter = validatePollingLoopFilter(pollingLoopFilter); - - try { - return sService.registerPollingLoopFilterForService(mContext.getUser().getIdentifier(), - service, pollingLoopFilter, autoTransact); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.registerPollingLoopFilterForService( - mContext.getUser().getIdentifier(), service, - pollingLoopFilter, autoTransact); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final String pollingLoopFilterV = validatePollingLoopFilter(pollingLoopFilter); + return callServiceReturn(() -> + sService.registerPollingLoopFilterForService( + mContext.getUser().getIdentifier(), service, pollingLoopFilterV, autoTransact), + false); } /** @@ -431,27 +403,10 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public boolean removePollingLoopFilterForService(@NonNull ComponentName service, @NonNull String pollingLoopFilter) { - pollingLoopFilter = validatePollingLoopFilter(pollingLoopFilter); - - try { - return sService.removePollingLoopFilterForService(mContext.getUser().getIdentifier(), - service, pollingLoopFilter); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.removePollingLoopFilterForService( - mContext.getUser().getIdentifier(), service, - pollingLoopFilter); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final String pollingLoopFilterV = validatePollingLoopFilter(pollingLoopFilter); + return callServiceReturn(() -> + sService.removePollingLoopFilterForService( + mContext.getUser().getIdentifier(), service, pollingLoopFilterV), false); } @@ -477,28 +432,13 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public boolean registerPollingLoopPatternFilterForService(@NonNull ComponentName service, @NonNull String pollingLoopPatternFilter, boolean autoTransact) { - pollingLoopPatternFilter = validatePollingLoopPatternFilter(pollingLoopPatternFilter); - - try { - return sService.registerPollingLoopPatternFilterForService( - mContext.getUser().getIdentifier(), - service, pollingLoopPatternFilter, autoTransact); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.registerPollingLoopPatternFilterForService( - mContext.getUser().getIdentifier(), service, - pollingLoopPatternFilter, autoTransact); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final String pollingLoopPatternFilterV = + validatePollingLoopPatternFilter(pollingLoopPatternFilter); + return callServiceReturn(() -> + sService.registerPollingLoopPatternFilterForService( + mContext.getUser().getIdentifier(), service, pollingLoopPatternFilterV, + autoTransact), + false); } /** @@ -518,27 +458,11 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_NFC_READ_POLLING_LOOP) public boolean removePollingLoopPatternFilterForService(@NonNull ComponentName service, @NonNull String pollingLoopPatternFilter) { - pollingLoopPatternFilter = validatePollingLoopPatternFilter(pollingLoopPatternFilter); - - try { - return sService.removePollingLoopPatternFilterForService( - mContext.getUser().getIdentifier(), service, pollingLoopPatternFilter); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.removePollingLoopPatternFilterForService( - mContext.getUser().getIdentifier(), service, - pollingLoopPatternFilter); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final String pollingLoopPatternFilterV = + validatePollingLoopPatternFilter(pollingLoopPatternFilter); + return callServiceReturn(() -> + sService.removePollingLoopPatternFilterForService( + mContext.getUser().getIdentifier(), service, pollingLoopPatternFilterV), false); } /** @@ -563,25 +487,10 @@ public final class CardEmulation { */ public boolean registerAidsForService(ComponentName service, String category, List<String> aids) { - AidGroup aidGroup = new AidGroup(aids, category); - try { - return sService.registerAidGroupForService(mContext.getUser().getIdentifier(), - service, aidGroup); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.registerAidGroupForService(mContext.getUser().getIdentifier(), - service, aidGroup); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final AidGroup aidGroup = new AidGroup(aids, category); + return callServiceReturn(() -> + sService.registerAidGroupForService( + mContext.getUser().getIdentifier(), service, aidGroup), false); } /** @@ -603,27 +512,9 @@ public final class CardEmulation { @RequiresPermission(android.Manifest.permission.NFC) @NonNull public boolean unsetOffHostForService(@NonNull ComponentName service) { - NfcAdapter adapter = NfcAdapter.getDefaultAdapter(mContext); - if (adapter == null) { - return false; - } - - try { - return sService.unsetOffHostForService(mContext.getUser().getIdentifier(), service); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.unsetOffHostForService(mContext.getUser().getIdentifier(), service); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.unsetOffHostForService( + mContext.getUser().getIdentifier(), service), false); } /** @@ -662,8 +553,6 @@ public final class CardEmulation { @NonNull public boolean setOffHostForService(@NonNull ComponentName service, @NonNull String offHostSecureElement) { - boolean validSecureElement = false; - NfcAdapter adapter = NfcAdapter.getDefaultAdapter(mContext); if (adapter == null || offHostSecureElement == null) { return false; @@ -684,25 +573,10 @@ public final class CardEmulation { } else if (offHostSecureElement.equals("SIM")) { offHostSecureElement = "SIM1"; } - - try { - return sService.setOffHostForService(mContext.getUser().getIdentifier(), service, - offHostSecureElement); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setOffHostForService(mContext.getUser().getIdentifier(), service, - offHostSecureElement); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + final String offHostSecureElementV = new String(offHostSecureElement); + return callServiceReturn(() -> + sService.setOffHostForService( + mContext.getUser().getIdentifier(), service, offHostSecureElementV), false); } /** @@ -720,25 +594,10 @@ public final class CardEmulation { * @return The list of AIDs registered for this category, or null if it couldn't be found. */ public List<String> getAidsForService(ComponentName service, String category) { - try { - AidGroup group = sService.getAidGroupForService(mContext.getUser().getIdentifier(), - service, category); - return (group != null ? group.getAids() : null); - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return null; - } - try { - AidGroup group = sService.getAidGroupForService(mContext.getUser().getIdentifier(), - service, category); - return (group != null ? group.getAids() : null); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return null; - } - } + AidGroup group = callServiceReturn(() -> + sService.getAidGroupForService( + mContext.getUser().getIdentifier(), service, category), null); + return (group != null ? group.getAids() : null); } /** @@ -757,24 +616,9 @@ public final class CardEmulation { * @return whether the group was successfully removed. */ public boolean removeAidsForService(ComponentName service, String category) { - try { - return sService.removeAidGroupForService(mContext.getUser().getIdentifier(), service, - category); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.removeAidGroupForService(mContext.getUser().getIdentifier(), - service, category); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.removeAidGroupForService( + mContext.getUser().getIdentifier(), service, category), false); } /** @@ -811,22 +655,7 @@ public final class CardEmulation { if (activity == null || service == null) { throw new NullPointerException("activity or service or category is null"); } - try { - return sService.setPreferredService(service); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setPreferredService(service); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> sService.setPreferredService(service), false); } /** @@ -843,22 +672,7 @@ public final class CardEmulation { if (activity == null) { throw new NullPointerException("activity is null"); } - try { - return sService.unsetPreferredService(); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.unsetPreferredService(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> sService.unsetPreferredService(), false); } /** @@ -872,21 +686,7 @@ public final class CardEmulation { * @return whether AID prefix registering is supported on this device. */ public boolean supportsAidPrefixRegistration() { - try { - return sService.supportsAidPrefixRegistration(); - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.supportsAidPrefixRegistration(); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> sService.supportsAidPrefixRegistration(), false); } /** @@ -897,25 +697,9 @@ public final class CardEmulation { @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) @Nullable public List<String> getAidsForPreferredPaymentService() { - try { - ApduServiceInfo serviceInfo = sService.getPreferredPaymentService( - mContext.getUser().getIdentifier()); - return (serviceInfo != null ? serviceInfo.getAids() : null); - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); - } - try { - ApduServiceInfo serviceInfo = - sService.getPreferredPaymentService(mContext.getUser().getIdentifier()); - return (serviceInfo != null ? serviceInfo.getAids() : null); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); - } - } + ApduServiceInfo serviceInfo = callServiceReturn(() -> + sService.getPreferredPaymentService(mContext.getUser().getIdentifier()), null); + return (serviceInfo != null ? serviceInfo.getAids() : null); } /** @@ -944,40 +728,16 @@ public final class CardEmulation { @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) @Nullable public String getRouteDestinationForPreferredPaymentService() { - try { - ApduServiceInfo serviceInfo = sService.getPreferredPaymentService( - mContext.getUser().getIdentifier()); - if (serviceInfo != null) { - if (!serviceInfo.isOnHost()) { - return serviceInfo.getOffHostSecureElement() == null ? - "OffHost" : serviceInfo.getOffHostSecureElement(); - } - return "Host"; - } - return null; - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); - } - try { - ApduServiceInfo serviceInfo = - sService.getPreferredPaymentService(mContext.getUser().getIdentifier()); - if (serviceInfo != null) { - if (!serviceInfo.isOnHost()) { - return serviceInfo.getOffHostSecureElement() == null ? - "Offhost" : serviceInfo.getOffHostSecureElement(); - } - return "Host"; - } - return null; - - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); + ApduServiceInfo serviceInfo = callServiceReturn(() -> + sService.getPreferredPaymentService(mContext.getUser().getIdentifier()), null); + if (serviceInfo != null) { + if (!serviceInfo.isOnHost()) { + return serviceInfo.getOffHostSecureElement() == null ? + "OffHost" : serviceInfo.getOffHostSecureElement(); } + return "Host"; } + return null; } /** @@ -992,118 +752,47 @@ public final class CardEmulation { * * @return the preferred payment service description */ - @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) + @RequiresPermission(Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) @Nullable public CharSequence getDescriptionForPreferredPaymentService() { - try { - ApduServiceInfo serviceInfo = sService.getPreferredPaymentService( - mContext.getUser().getIdentifier()); - return (serviceInfo != null ? serviceInfo.getDescription() : null); - } catch (RemoteException e) { - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); - } - try { - ApduServiceInfo serviceInfo = - sService.getPreferredPaymentService(mContext.getUser().getIdentifier()); - return (serviceInfo != null ? serviceInfo.getDescription() : null); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to recover CardEmulationService."); - throw e.rethrowFromSystemServer(); - } - } + ApduServiceInfo serviceInfo = callServiceReturn(() -> + sService.getPreferredPaymentService(mContext.getUser().getIdentifier()), null); + return (serviceInfo != null ? serviceInfo.getDescription() : null); } /** * @hide */ public boolean setDefaultServiceForCategory(ComponentName service, String category) { - try { - return sService.setDefaultServiceForCategory(mContext.getUser().getIdentifier(), - service, category); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setDefaultServiceForCategory(mContext.getUser().getIdentifier(), - service, category); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.setDefaultServiceForCategory( + mContext.getUser().getIdentifier(), service, category), false); } /** * @hide */ public boolean setDefaultForNextTap(ComponentName service) { - try { - return sService.setDefaultForNextTap(mContext.getUser().getIdentifier(), service); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setDefaultForNextTap(mContext.getUser().getIdentifier(), service); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.setDefaultForNextTap( + mContext.getUser().getIdentifier(), service), false); } /** * @hide */ public boolean setDefaultForNextTap(int userId, ComponentName service) { - try { - return sService.setDefaultForNextTap(userId, service); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setDefaultForNextTap(userId, service); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.setDefaultForNextTap(userId, service), false); } /** * @hide */ public List<ApduServiceInfo> getServices(String category) { - try { - return sService.getServices(mContext.getUser().getIdentifier(), category); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return null; - } - try { - return sService.getServices(mContext.getUser().getIdentifier(), category); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return null; - } - } + return callServiceReturn(() -> + sService.getServices( + mContext.getUser().getIdentifier(), category), null); } /** @@ -1117,22 +806,8 @@ public final class CardEmulation { @FlaggedApi(Flags.FLAG_ENABLE_NFC_MAINLINE) @NonNull public List<ApduServiceInfo> getServices(@NonNull String category, @UserIdInt int userId) { - try { - return sService.getServices(userId, category); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return null; - } - try { - return sService.getServices(userId, category); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return null; - } - } + return callServiceReturn(() -> + sService.getServices(userId, category), null); } /** @@ -1222,108 +897,103 @@ public final class CardEmulation { if (service == null) { throw new NullPointerException("activity or service or category is null"); } - try { - return sService.setServiceEnabledForCategoryOther(userId, service, status); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.setServiceEnabledForCategoryOther(userId, service, status); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + return callServiceReturn(() -> + sService.setServiceEnabledForCategoryOther(userId, service, status), false); } - /** - * Setting NFC controller routing table, which includes Protocol Route and Technology Route, - * while this Activity is in the foreground. - * - * The parameter set to null can be used to keep current values for that entry. - * <p> - * Example usage in an Activity that requires to set proto route to "ESE" and keep tech route: - * <pre> - * protected void onResume() { - * mNfcAdapter.overrideRoutingTable(this , "ESE" , null); - * }</pre> - * </p> - * Also activities must call this method when it goes to the background, - * with all parameters set to null. - * @param activity The Activity that requests NFC controller routing table to be changed. - * @param protocol ISO-DEP route destination, which can be "DH" or "UICC" or "ESE". - * @param technology Tech-A, Tech-B route destination, which can be "DH" or "UICC" or "ESE". - * @return true if operation is successful and false otherwise - * - * This is a high risk API and only included to support mainline effort - * @hide - */ - public boolean overrideRoutingTable(Activity activity, String protocol, String technology) { - if (activity == null) { - throw new NullPointerException("activity or service or category is null"); - } + /** @hide */ + @IntDef(prefix = "PROTOCOL_AND_TECHNOLOGY_ROUTE_", + value = { + PROTOCOL_AND_TECHNOLOGY_ROUTE_DH, + PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE, + PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC, + PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET, + PROTOCOL_AND_TECHNOLOGY_ROUTE_DEFAULT + }) + @Retention(RetentionPolicy.SOURCE) + public @interface ProtocolAndTechnologyRoute {} + + /** + * Setting NFC controller routing table, which includes Protocol Route and Technology Route, + * while this Activity is in the foreground. + * + * The parameter set to {@link #PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET} + * can be used to keep current values for that entry. Either + * Protocol Route or Technology Route should be override when calling this API, otherwise + * throw {@link IllegalArgumentException}. + * <p> + * Example usage in an Activity that requires to set proto route to "ESE" and keep tech route: + * <pre> + * protected void onResume() { + * mNfcAdapter.overrideRoutingTable( + * this, {@link #PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE}, + * {@link #PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET}); + * }</pre> + * </p> + * Also activities must call {@link #recoverRoutingTable(Activity)} + * when it goes to the background. Only the package of the + * currently preferred service (the service set as preferred by the current foreground + * application via {@link CardEmulation#setPreferredService(Activity, ComponentName)} or the + * current Default Wallet Role Holder {@link RoleManager#ROLE_WALLET}), + * otherwise a call to this method will fail and throw {@link SecurityException}. + * @param activity The Activity that requests NFC controller routing table to be changed. + * @param protocol ISO-DEP route destination, where the possible inputs are defined + * in {@link ProtocolAndTechnologyRoute}. + * @param technology Tech-A, Tech-B and Tech-F route destination, where the possible inputs + * are defined in {@link ProtocolAndTechnologyRoute} + * @throws SecurityException if the caller is not the preferred NFC service + * @throws IllegalArgumentException if the activity is not resumed or the caller is not in the + * foreground. + * <p> + * This is a high risk API and only included to support mainline effort + * @hide + */ + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public void overrideRoutingTable( + @NonNull Activity activity, @ProtocolAndTechnologyRoute int protocol, + @ProtocolAndTechnologyRoute int technology) { if (!activity.isResumed()) { throw new IllegalArgumentException("Activity must be resumed."); } - try { - return sService.overrideRoutingTable(UserHandle.myUserId(), protocol, technology); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.overrideRoutingTable(UserHandle.myUserId(), protocol, technology); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + String protocolRoute = routeIntToString(protocol); + String technologyRoute = routeIntToString(technology); + callService(() -> + sService.overrideRoutingTable( + mContext.getUser().getIdentifier(), + protocolRoute, + technologyRoute, + mContext.getPackageName())); } /** * Restore the NFC controller routing table, - * which was changed by {@link #overrideRoutingTable(Activity, String, String)} + * which was changed by {@link #overrideRoutingTable(Activity, int, int)} * * @param activity The Activity that requested NFC controller routing table to be changed. - * @return true if operation is successful and false otherwise + * @throws IllegalArgumentException if the caller is not in the foreground. * * @hide */ - public boolean recoverRoutingTable(Activity activity) { - if (activity == null) { - throw new NullPointerException("activity is null"); - } + @SystemApi + @FlaggedApi(Flags.FLAG_NFC_OVERRIDE_RECOVER_ROUTING_TABLE) + public void recoverRoutingTable(@NonNull Activity activity) { if (!activity.isResumed()) { throw new IllegalArgumentException("Activity must be resumed."); } - try { - return sService.recoverRoutingTable(UserHandle.myUserId()); - } catch (RemoteException e) { - // Try one more time - recoverService(); - if (sService == null) { - Log.e(TAG, "Failed to recover CardEmulationService."); - return false; - } - try { - return sService.recoverRoutingTable(UserHandle.myUserId()); - } catch (RemoteException ee) { - Log.e(TAG, "Failed to reach CardEmulationService."); - return false; - } - } + callService(() -> + sService.recoverRoutingTable( + mContext.getUser().getIdentifier())); } - void recoverService() { - NfcAdapter adapter = NfcAdapter.getDefaultAdapter(mContext); - sService = adapter.getCardEmulationService(); + /** + * Is EUICC supported as a Secure Element EE which supports off host card emulation. + * + * @return true if the device supports EUICC for off host card emulation, false otherwise. + */ + @FlaggedApi(android.nfc.Flags.FLAG_ENABLE_CARD_EMULATION_EUICC) + public boolean isEuiccSupported() { + return callServiceReturn(() -> sService.isEuiccSupported(), false); } /** @@ -1351,4 +1021,168 @@ public final class CardEmulation { return ComponentName.unflattenFromString(defaultPaymentComponent); } + + /** @hide */ + interface ServiceCall { + void call() throws RemoteException; + } + /** @hide */ + public static void callService(ServiceCall call) { + try { + if (sService == null) { + NfcAdapter.attemptDeadServiceRecovery( + new RemoteException("NFC CardEmulation Service is null")); + sService = NfcAdapter.getCardEmulationService(); + } + call.call(); + } catch (RemoteException e) { + NfcAdapter.attemptDeadServiceRecovery(e); + sService = NfcAdapter.getCardEmulationService(); + try { + call.call(); + } catch (RemoteException ee) { + ee.rethrowAsRuntimeException(); + } + } + } + /** @hide */ + interface ServiceCallReturn<T> { + T call() throws RemoteException; + } + /** @hide */ + public static <T> T callServiceReturn(ServiceCallReturn<T> call, T defaultReturn) { + try { + if (sService == null) { + NfcAdapter.attemptDeadServiceRecovery( + new RemoteException("NFC CardEmulation Service is null")); + sService = NfcAdapter.getCardEmulationService(); + } + return call.call(); + } catch (RemoteException e) { + NfcAdapter.attemptDeadServiceRecovery(e); + sService = NfcAdapter.getCardEmulationService(); + // Try one more time + try { + return call.call(); + } catch (RemoteException ee) { + ee.rethrowAsRuntimeException(); + } + } + return defaultReturn; + } + + /** @hide */ + public static String routeIntToString(@ProtocolAndTechnologyRoute int route) { + return switch (route) { + case PROTOCOL_AND_TECHNOLOGY_ROUTE_DH -> "DH"; + case PROTOCOL_AND_TECHNOLOGY_ROUTE_ESE -> "eSE"; + case PROTOCOL_AND_TECHNOLOGY_ROUTE_UICC -> "SIM"; + case PROTOCOL_AND_TECHNOLOGY_ROUTE_UNSET -> null; + case PROTOCOL_AND_TECHNOLOGY_ROUTE_DEFAULT -> "default"; + default -> throw new IllegalStateException("Unexpected value: " + route); + }; + } + + /** Listener for preferred service state changes. */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_EVENT_LISTENER) + public interface NfcEventListener { + /** + * This method is called when this package gains or loses preferred Nfc service status, + * either the Default Wallet Role holder (see {@link + * android.app.role.RoleManager#ROLE_WALLET}) or the preferred service of the foreground + * activity set with {@link #setPreferredService(Activity, ComponentName)} + * + * @param isPreferred true is this service has become the preferred Nfc service, false if it + * is no longer the preferred service + */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_EVENT_LISTENER) + default void onPreferredServiceChanged(boolean isPreferred) {} + + /** + * This method is called when observe mode has been enabled or disabled. + * + * @param isEnabled true if observe mode has been enabled, false if it has been disabled + */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_EVENT_LISTENER) + default void onObserveModeStateChanged(boolean isEnabled) {} + } + + private final ArrayMap<NfcEventListener, Executor> mNfcEventListeners = new ArrayMap<>(); + + final INfcEventListener mINfcEventListener = + new INfcEventListener.Stub() { + public void onPreferredServiceChanged(ComponentNameAndUser componentNameAndUser) { + if (!android.nfc.Flags.nfcEventListener()) { + return; + } + boolean isPreferred = + componentNameAndUser != null + && componentNameAndUser.getUserId() + == mContext.getUser().getIdentifier() + && componentNameAndUser.getComponentName() != null + && Objects.equals( + mContext.getPackageName(), + componentNameAndUser.getComponentName() + .getPackageName()); + synchronized (mNfcEventListeners) { + mNfcEventListeners.forEach( + (listener, executor) -> { + executor.execute( + () -> listener.onPreferredServiceChanged(isPreferred)); + }); + } + } + + public void onObserveModeStateChanged(boolean isEnabled) { + if (!android.nfc.Flags.nfcEventListener()) { + return; + } + synchronized (mNfcEventListeners) { + mNfcEventListeners.forEach( + (listener, executor) -> { + executor.execute( + () -> listener.onObserveModeStateChanged(isEnabled)); + }); + } + } + }; + + /** + * Register a listener for NFC Events. + * + * @param executor The Executor to run the call back with + * @param listener The listener to register + */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_EVENT_LISTENER) + public void registerNfcEventListener( + @NonNull @CallbackExecutor Executor executor, @NonNull NfcEventListener listener) { + if (!android.nfc.Flags.nfcEventListener()) { + return; + } + synchronized (mNfcEventListeners) { + mNfcEventListeners.put(listener, executor); + if (mNfcEventListeners.size() == 1) { + callService(() -> sService.registerNfcEventListener(mINfcEventListener)); + } + } + } + + /** + * Unregister a preferred service listener that was previously registered with {@link + * #registerNfcEventListener(Executor, NfcEventListener)} + * + * @param listener The previously registered listener to unregister + */ + @FlaggedApi(android.nfc.Flags.FLAG_NFC_EVENT_LISTENER) + public void unregisterNfcEventListener(@NonNull NfcEventListener listener) { + if (!android.nfc.Flags.nfcEventListener()) { + return; + } + synchronized (mNfcEventListeners) { + mNfcEventListeners.remove(listener); + if (mNfcEventListeners.size() == 0) { + callService(() -> sService.unregisterNfcEventListener(mINfcEventListener)); + } + } + } } diff --git a/nfc/java/android/nfc/cardemulation/HostApduService.java b/nfc/java/android/nfc/cardemulation/HostApduService.java index c3c74a6fd265..4f601f0704b4 100644 --- a/nfc/java/android/nfc/cardemulation/HostApduService.java +++ b/nfc/java/android/nfc/cardemulation/HostApduService.java @@ -239,6 +239,7 @@ public abstract class HostApduService extends Service { */ public static final int MSG_POLLING_LOOP = 4; + /** * @hide */ @@ -333,7 +334,7 @@ public abstract class HostApduService extends Service { processPollingFrames(pollingFrames); } break; - default: + default: super.handleMessage(msg); } } @@ -441,4 +442,5 @@ public abstract class HostApduService extends Service { * @param reason Either {@link #DEACTIVATION_LINK_LOSS} or {@link #DEACTIVATION_DESELECTED} */ public abstract void onDeactivated(int reason); + } diff --git a/nfc/java/android/nfc/flags.aconfig b/nfc/java/android/nfc/flags.aconfig index b242a76ffae4..34f020012d3c 100644 --- a/nfc/java/android/nfc/flags.aconfig +++ b/nfc/java/android/nfc/flags.aconfig @@ -2,6 +2,14 @@ package: "android.nfc" container: "system" flag { + name: "nfc_event_listener" + is_exported: true + namespace: "nfc" + description: "Enable NFC Event listener APIs" + bug: "356447790" +} + +flag { name: "enable_nfc_mainline" is_exported: true namespace: "nfc" @@ -110,3 +118,58 @@ flag { bug: "321311407" } +flag { + name: "nfc_persist_log" + is_exported: true + namespace: "nfc" + description: "Enable NFC persistent log support" + bug: "321310044" +} + +flag { + name: "nfc_action_manage_services_settings" + is_exported: true + namespace: "nfc" + description: "Add Settings.ACTION_MANAGE_OTHER_NFC_SERVICES_SETTINGS" + bug: "358129872" +} + +flag { + name: "nfc_override_recover_routing_table" + is_exported: true + namespace: "nfc" + description: "Enable override and recover routing table" + bug: "329043523" +} + +flag { + name: "nfc_watchdog" + is_exported: true + namespace: "nfc" + description: "Enable watchdog for the NFC system process" + bug: "362937338" +} + +flag { + name: "enable_card_emulation_euicc" + is_exported: true + namespace: "nfc" + description: "Enable EUICC card emulation" + bug: "321314635" +} + +flag { + name: "nfc_state_change_security_log_event_enabled" + is_exported: true + namespace: "nfc" + description: "Enabling security log for nfc state change" + bug: "319934052" +} + +flag { + name: "nfc_associated_role_services" + is_exported: true + namespace: "nfc" + description: "Share wallet role routing priority with associated services" + bug: "366243361" +} diff --git a/nfc/tests/Android.bp b/nfc/tests/Android.bp index 6ebc03cc6ffc..bfa814d149f0 100644 --- a/nfc/tests/Android.bp +++ b/nfc/tests/Android.bp @@ -32,7 +32,7 @@ android_test { ], libs: [ "framework-nfc.impl", - "android.test.runner", + "android.test.runner.stubs.system", ], srcs: ["src/**/*.java"], platform_apis: true, diff --git a/omapi/aidl/vts/functional/AccessControlApp/Android.bp b/omapi/aidl/vts/functional/AccessControlApp/Android.bp index f03c3f6eb647..57d75f596485 100644 --- a/omapi/aidl/vts/functional/AccessControlApp/Android.bp +++ b/omapi/aidl/vts/functional/AccessControlApp/Android.bp @@ -15,6 +15,7 @@ // package { + default_team: "trendy_team_fwk_nfc", default_applicable_licenses: ["Android-Apache-2.0"], } diff --git a/omapi/aidl/vts/functional/omapi/Android.bp b/omapi/aidl/vts/functional/omapi/Android.bp index c41479f9e9cf..8ee55ff56bb6 100644 --- a/omapi/aidl/vts/functional/omapi/Android.bp +++ b/omapi/aidl/vts/functional/omapi/Android.bp @@ -15,6 +15,7 @@ // package { + default_team: "trendy_team_fwk_nfc", default_applicable_licenses: ["Android-Apache-2.0"], } diff --git a/packages/BackupRestoreConfirmation/res/values-el/strings.xml b/packages/BackupRestoreConfirmation/res/values-el/strings.xml index 02234990606c..7142edf17c69 100644 --- a/packages/BackupRestoreConfirmation/res/values-el/strings.xml +++ b/packages/BackupRestoreConfirmation/res/values-el/strings.xml @@ -16,7 +16,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="backup_confirm_title" msgid="827563724209303345">"Πλήρης δημιουργία αντιγράφων ασφαλείας"</string> + <string name="backup_confirm_title" msgid="827563724209303345">"Πλήρης δημιουργία αντιγράφου ασφαλείας"</string> <string name="restore_confirm_title" msgid="5469365809567486602">"Πλήρης επαναφορά"</string> <string name="backup_confirm_text" msgid="1878021282758896593">"Έχει ζητηθεί ένα πλήρες αντίγραφο ασφαλείας όλων των δεδομένων σε έναν συνδεδεμένο επιτραπέζιο υπολογιστή. Θέλετε να επιτραπεί αυτή η ενέργεια;\n\nΑν δεν έχετε ζητήσει οι ίδιοι αυτό το αντίγραφο ασφαλείας, μην επιτρέψετε την ενέργεια."</string> <string name="allow_backup_button_label" msgid="4217228747769644068">"Δημιουργία αντιγράφων ασφαλείας για τα δεδομένα μου"</string> diff --git a/packages/CarrierDefaultApp/res/values-ar/strings.xml b/packages/CarrierDefaultApp/res/values-ar/strings.xml index fe746f24912b..53a27332a2d1 100644 --- a/packages/CarrierDefaultApp/res/values-ar/strings.xml +++ b/packages/CarrierDefaultApp/res/values-ar/strings.xml @@ -8,7 +8,7 @@ <string name="portal_notification_detail" msgid="2295729385924660881">"النقر للانتقال إلى موقع %s الإلكتروني"</string> <string name="no_data_notification_detail" msgid="3112125343857014825">"يُرجى الاتصال بمقدم الخدمة %s"</string> <string name="no_mobile_data_connection_title" msgid="7449525772416200578">"لا يوجد اتصال بيانات الجوال"</string> - <string name="no_mobile_data_connection" msgid="544980465184147010">"إضافة بيانات أو خطة تجوال خلال %s"</string> + <string name="no_mobile_data_connection" msgid="544980465184147010">"إضافة بيانات أو خطة تجوال خلال %%s"</string> <string name="mobile_data_status_notification_channel_name" msgid="833999690121305708">"حالة بيانات الجوّال"</string> <string name="action_bar_label" msgid="4290345990334377177">"تسجيل الدخول إلى شبكة الجوّال"</string> <string name="ssl_error_warning" msgid="3127935140338254180">"الشبكة التي تحاول الانضمام إليها بها مشاكل أمنية."</string> diff --git a/packages/CarrierDefaultApp/res/values-fa/strings.xml b/packages/CarrierDefaultApp/res/values-fa/strings.xml index d9afe873b444..bfc2fec8dafc 100644 --- a/packages/CarrierDefaultApp/res/values-fa/strings.xml +++ b/packages/CarrierDefaultApp/res/values-fa/strings.xml @@ -5,7 +5,7 @@ <string name="android_system_label" msgid="2797790869522345065">"شرکت مخابراتی دستگاه همراه"</string> <string name="portal_notification_id" msgid="5155057562457079297">"داده تلفن همراه تمام شده است"</string> <string name="no_data_notification_id" msgid="668400731803969521">"داده شبکه تلفن همراه شما غیرفعال شده است"</string> - <string name="portal_notification_detail" msgid="2295729385924660881">"برای رفتن به وبسایت %s، ضربه بزنید"</string> + <string name="portal_notification_detail" msgid="2295729385924660881">"برای رفتن به وبسایت %s، تکضرب بزنید"</string> <string name="no_data_notification_detail" msgid="3112125343857014825">"لطفاً با ارائهدهنده خدمات %s خود تماس بگیرید"</string> <string name="no_mobile_data_connection_title" msgid="7449525772416200578">"بدون اتصال داده دستگاه همراه"</string> <string name="no_mobile_data_connection" msgid="544980465184147010">"افزودن طرح داده یا فراگردی ازطریق %s"</string> diff --git a/packages/CarrierDefaultApp/res/values-fr-rCA/strings.xml b/packages/CarrierDefaultApp/res/values-fr-rCA/strings.xml index 54dae628ba88..91da7dcdf977 100644 --- a/packages/CarrierDefaultApp/res/values-fr-rCA/strings.xml +++ b/packages/CarrierDefaultApp/res/values-fr-rCA/strings.xml @@ -16,7 +16,7 @@ <string name="ssl_error_continue" msgid="1138548463994095584">"Continuer quand même dans un navigateur"</string> <string name="performance_boost_notification_channel" msgid="3475440855635538592">"Optimiseur de performances"</string> <string name="performance_boost_notification_title" msgid="3126203390685781861">"Options 5G de votre fournisseur de services"</string> - <string name="performance_boost_notification_detail" msgid="216569851036236346">"Consultez le site Web de %s pour voir les options concernant votre expérience de l\'application"</string> + <string name="performance_boost_notification_detail" msgid="216569851036236346">"Consultez le site Web de %s pour voir les options concernant votre expérience de l\'appli"</string> <string name="performance_boost_notification_button_not_now" msgid="6459755324243683785">"Plus tard"</string> <string name="performance_boost_notification_button_manage" msgid="4976836444046497973">"Gérer"</string> <string name="slice_purchase_app_label" msgid="7170191659233241166">"Achetez un optimiseur de performances."</string> diff --git a/packages/CarrierDefaultApp/tests/unit/Android.bp b/packages/CarrierDefaultApp/tests/unit/Android.bp index 0d08ec6ca2b3..bec81ad5f92e 100644 --- a/packages/CarrierDefaultApp/tests/unit/Android.bp +++ b/packages/CarrierDefaultApp/tests/unit/Android.bp @@ -25,8 +25,8 @@ android_test { name: "CarrierDefaultAppUnitTests", certificate: "platform", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", "SlicePurchaseController", ], static_libs: [ diff --git a/packages/CompanionDeviceManager/res/values-ar/strings.xml b/packages/CompanionDeviceManager/res/values-ar/strings.xml index e3dd4cb21402..9106721a6753 100644 --- a/packages/CompanionDeviceManager/res/values-ar/strings.xml +++ b/packages/CompanionDeviceManager/res/values-ar/strings.xml @@ -20,7 +20,7 @@ <string name="confirmation_title" msgid="2244241995958340998">"هل تريد السماح لـ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> بالوصول إلى <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>؟"</string> <string name="profile_name_watch" msgid="576290739483672360">"الساعة"</string> <string name="chooser_title_non_profile" msgid="6035023914517087400">"اختيار جهاز ليديره تطبيق <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>"</string> - <string name="chooser_title" msgid="2235819929238267637">"اختيار \"<xliff:g id="PROFILE_NAME">%1$s</xliff:g>\" لإعداده"</string> + <string name="chooser_title" msgid="2235819929238267637">"اختيار \"<xliff:g id="PROFILE_NAME">%1$s</xliff:g>\" للإعداد"</string> <string name="summary_watch" msgid="7962014927042971830">"سيتم السماح لهذا التطبيق بمزامنة المعلومات، مثلاً اسم المتصل، والوصول إلى هذه الأذونات على \"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>\"."</string> <string name="confirmation_title_glasses" msgid="8288346850537727333">"هل تريد السماح لتطبيق <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> بإدارة <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>؟"</string> <string name="profile_name_glasses" msgid="3506504967216601277">"جهاز"</string> diff --git a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml index 15d97af5ce0d..f21c2bad7600 100644 --- a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml +++ b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml @@ -39,7 +39,7 @@ <string name="helper_summary_computer" msgid="8774832742608187072">"<xliff:g id="APP_NAME">%1$s</xliff:g> solicita tu permiso en nombre de <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> para acceder a las fotos, el contenido multimedia y las notificaciones de tu teléfono"</string> <string name="title_nearby_device_streaming" msgid="7269956847378799794">"¿Permites que <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> realice esta acción?"</string> <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"¿Quieres permitir que <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> transmita funciones del sistema y apps del teléfono?"</string> - <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s tendrá acceso a todo el contenido visible o que se reproduzca en tu teléfono, lo que incluye audio, fotos, información de pago, contraseñas y mensajes.<br/><br/>%1$s podrá transmitir apps y funciones del sistema, a menos que se quiete el acceso a este permiso."</string> + <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s tendrá acceso a todo el contenido visible o que se reproduzca en tu teléfono, lo que incluye audio, fotos, información de pago, contraseñas y mensajes.<br/><br/>%1$s podrá transmitir apps y funciones del sistema, a menos que se quite el acceso a este permiso."</string> <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"<xliff:g id="APP_NAME">%1$s</xliff:g> está solicitando permiso en nombre de tu <xliff:g id="DEVICE_NAME">%2$s</xliff:g> para transmitir apps y otras funciones del sistema a dispositivos cercanos"</string> <string name="profile_name_generic" msgid="6851028682723034988">"dispositivo"</string> <string name="summary_generic" msgid="1761976003668044801">"Esta app podrá sincronizar información, como el nombre de la persona que llama, entre el teléfono y el dispositivo elegido"</string> @@ -57,7 +57,7 @@ <string name="permission_contacts" msgid="3858319347208004438">"Contactos"</string> <string name="permission_calendar" msgid="6805668388691290395">"Calendario"</string> <string name="permission_microphone" msgid="2152206421428732949">"Micrófono"</string> - <string name="permission_call_logs" msgid="5546761417694586041">"Registros de llamadas"</string> + <string name="permission_call_logs" msgid="5546761417694586041">"Llamadas"</string> <string name="permission_nearby_devices" msgid="7530973297737123481">"Dispositivos cercanos"</string> <string name="permission_media_routing_control" msgid="5498639511586715253">"Cambiar la salida multimedia"</string> <string name="permission_storage" msgid="6831099350839392343">"Fotos y contenido multimedia"</string> diff --git a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml index 97abef773a52..5b5896109846 100644 --- a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml +++ b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml @@ -17,20 +17,20 @@ <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="4470785958457506021">"Gestionnaire d\'appareil compagnon"</string> - <string name="confirmation_title" msgid="2244241995958340998">"Autoriser l\'application <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>?"</string> + <string name="confirmation_title" msgid="2244241995958340998">"Autoriser l\'appli <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>?"</string> <string name="profile_name_watch" msgid="576290739483672360">"montre"</string> <string name="chooser_title_non_profile" msgid="6035023914517087400">"Choisir un appareil qui sera géré par <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>"</string> <string name="chooser_title" msgid="2235819929238267637">"Choisir un appareil (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>) pour le configurer"</string> - <string name="summary_watch" msgid="7962014927042971830">"Cette application sera autorisée à synchroniser des informations, comme le nom de l\'appelant, et à accéder à ces autorisations sur votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> + <string name="summary_watch" msgid="7962014927042971830">"Cette appli sera autorisée à synchroniser des informations, comme le nom de l\'appelant, et à accéder à ces autorisations sur votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> <string name="confirmation_title_glasses" msgid="8288346850537727333">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à gérer <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>?"</string> <string name="profile_name_glasses" msgid="3506504967216601277">"appareil"</string> - <string name="summary_glasses" msgid="2872254734959842579">"Cette application pourra accéder à ces autorisations sur votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> + <string name="summary_glasses" msgid="2872254734959842579">"Cette appli pourra accéder à ces autorisations sur votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> <string name="title_app_streaming" msgid="2270331024626446950">"Autorisez <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à ces informations à partir de votre téléphone"</string> - <string name="title_app_streaming_with_mirroring" msgid="3364582597581570658">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à diffuser les applications de votre téléphone?"</string> - <string name="summary_app_streaming" msgid="295548145144086753">"%1$s aura accès à tout ce qui est visible ou lu sur le téléphone, y compris l\'audio, les photos, les mots de passe et les messages.<br/><br/>%1$s pourra diffuser des applications jusqu\'à ce que vous retiriez l\'accès à cette autorisation."</string> + <string name="title_app_streaming_with_mirroring" msgid="3364582597581570658">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à diffuser les applis de votre téléphone?"</string> + <string name="summary_app_streaming" msgid="295548145144086753">"%1$s aura accès à tout ce qui est visible ou lu sur le téléphone, y compris l\'audio, les photos, les mots de passe et les messages.<br/><br/>%1$s pourra diffuser des applis jusqu\'à ce que vous retiriez l\'accès à cette autorisation."</string> <string name="helper_title_app_streaming" msgid="4151687003439969765">"Services multiappareils"</string> - <string name="helper_summary_app_streaming" msgid="2396773196949578425">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation au nom de votre <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> pour diffuser des applications entre vos appareils"</string> - <string name="helper_summary_app_streaming_with_mirroring" msgid="6138581029144467467">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation, au nom de votre <xliff:g id="DISPLAY_NAME">%2$s</xliff:g>, d\'afficher et de diffuser des applications entre vos appareils"</string> + <string name="helper_summary_app_streaming" msgid="2396773196949578425">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation au nom de votre <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> pour diffuser des applis entre vos appareils"</string> + <string name="helper_summary_app_streaming_with_mirroring" msgid="6138581029144467467">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation, au nom de votre <xliff:g id="DISPLAY_NAME">%2$s</xliff:g>, d\'afficher et de diffuser des applis entre vos appareils"</string> <string name="title_automotive_projection" msgid="3296005598978412847"></string> <string name="summary_automotive_projection" msgid="8683801274662496164"></string> <string name="title_computer" msgid="4693714143506569253">"Autorisez <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à ces informations à partir de votre téléphone"</string> @@ -38,18 +38,18 @@ <string name="helper_title_computer" msgid="4671071173916176037">"Services Google Play"</string> <string name="helper_summary_computer" msgid="8774832742608187072">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation au nom de votre <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> pour accéder aux photos, aux fichiers multimédias et aux notifications de votre téléphone"</string> <string name="title_nearby_device_streaming" msgid="7269956847378799794">"Autoriser <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> à effectuer cette action?"</string> - <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"Autoriser <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> à diffuser les applications et les fonctionnalités du système de votre téléphone?"</string> - <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s aura accès à tout ce qui est visible ou lu sur le téléphone, y compris l\'audio, les photos, les renseignements de paiement, les mots de passe et les messages.<br/><br/>%1$s pourra diffuser des applications jusqu\'à ce que vous retiriez l\'accès à cette autorisation."</string> - <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation, au nom de votre <xliff:g id="DEVICE_NAME">%2$s</xliff:g>, de diffuser des applications et d\'autres fonctionnalités du système sur des appareils à proximité"</string> + <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"Autoriser <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> à diffuser les applis et les fonctionnalités du système de votre téléphone?"</string> + <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s aura accès à tout ce qui est visible ou lu sur le téléphone, y compris l\'audio, les photos, les renseignements de paiement, les mots de passe et les messages.<br/><br/>%1$s pourra diffuser des applis jusqu\'à ce que vous retiriez l\'accès à cette autorisation."</string> + <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"<xliff:g id="APP_NAME">%1$s</xliff:g> demande l\'autorisation, au nom de votre <xliff:g id="DEVICE_NAME">%2$s</xliff:g>, de diffuser des applis et d\'autres fonctionnalités du système sur des appareils à proximité"</string> <string name="profile_name_generic" msgid="6851028682723034988">"appareil"</string> - <string name="summary_generic" msgid="1761976003668044801">"Cette application pourra synchroniser des informations, comme le nom de l\'appelant, entre votre téléphone et l\'appareil sélectionné"</string> + <string name="summary_generic" msgid="1761976003668044801">"Cette appli pourra synchroniser des informations, comme le nom de l\'appelant, entre votre téléphone et l\'appareil sélectionné"</string> <string name="consent_yes" msgid="8344487259618762872">"Autoriser"</string> <string name="consent_no" msgid="2640796915611404382">"Ne pas autoriser"</string> <string name="consent_cancel" msgid="5655005528379285841">"Annuler"</string> <string name="consent_back" msgid="2560683030046918882">"Retour"</string> <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 <strong><xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g></strong> les autorisations déjà accordées sur <strong><xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g></strong>?"</string> + <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Accorder aux applis sur <strong><xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g></strong> les autorisations déjà accordées sur <strong><xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g></strong>?"</string> <string name="permission_sync_summary" msgid="765497944331294275">"Cela peut inclure l\'accès <strong>au microphone</strong>, <strong>à l\'appareil photo</strong>, et <strong>à la position</strong>, ainsi que d\'autres autorisations sensibles sur <strong><xliff:g id="COMPANION_DEVICE_NAME_0">%1$s</xliff:g></strong>. <br/><br/>Vous pouvez modifier ces autorisations à tout moment dans vos paramètres sur <strong><xliff:g id="COMPANION_DEVICE_NAME_1">%1$s</xliff:g></strong>."</string> <string name="vendor_header_button_description" msgid="7994879208461111473">"Plus de renseignements"</string> <string name="permission_phone" msgid="2661081078692784919">"Téléphone"</string> @@ -62,7 +62,7 @@ <string name="permission_media_routing_control" msgid="5498639511586715253">"Modifier la sortie multimédia"</string> <string name="permission_storage" msgid="6831099350839392343">"Photos et fichiers multimédias"</string> <string name="permission_notifications" msgid="4099418516590632909">"Notifications"</string> - <string name="permission_app_streaming" msgid="6009695219091526422">"Applications"</string> + <string name="permission_app_streaming" msgid="6009695219091526422">"Applis"</string> <string name="permission_nearby_device_streaming" msgid="1023325519477349499">"Diffusion en continu"</string> <string name="permission_phone_summary" msgid="8246321093970051702">"Passez et gérez des appels téléphoniques"</string> <string name="permission_call_logs_summary" msgid="7545243592757693321">"Lisez et écrivez le journal d\'appels téléphoniques"</string> @@ -72,11 +72,11 @@ <string name="permission_microphone_summary" msgid="4862628553869973259">"Enregistrez des fichiers audio"</string> <string name="permission_nearby_devices_summary" msgid="1306752848196464817">"Trouvez et déterminez la position relative des appareils à proximité, et connectez-vous à ceux-ci"</string> <string name="permission_notification_listener_access_summary" msgid="7856071768185367749">"Lisez toutes les notifications, y compris les renseignements tels que les contacts, les messages et les photos"</string> - <string name="permission_notifications_summary" msgid="2272810466047367030">"• Lisez toutes les notifications, y compris les renseignements tels que les contacts, les messages et les photos<br/>• Envoyez des notifications<br/><br/>Vous pouvez gérer la capacité de cette application à lire et à envoyer des notifications à tout moment dans Paramètres > Notifications."</string> - <string name="permission_app_streaming_summary" msgid="606923325679670624">"Diffusez les applications de votre téléphone"</string> + <string name="permission_notifications_summary" msgid="2272810466047367030">"• Lisez toutes les notifications, y compris les renseignements tels que les contacts, les messages et les photos<br/>• Envoyez des notifications<br/><br/>Vous pouvez gérer la capacité de cette appli à lire et à envoyer des notifications à tout moment dans Paramètres > Notifications."</string> + <string name="permission_app_streaming_summary" msgid="606923325679670624">"Diffusez les applis de votre téléphone"</string> <string name="permission_storage_summary" msgid="3918240895519506417"></string> - <string name="permission_nearby_device_streaming_summary" msgid="8280824871197081246">"Diffusez des applications et d\'autres fonctionnalités du système à partir de votre téléphone"</string> - <string name="permission_media_routing_control_summary" msgid="2714631092321412250">"Accédez à une liste d\'appareils accessibles et contrôlez ceux qui diffusent du contenu audio ou vidéo à partir d\'autres applications"</string> + <string name="permission_nearby_device_streaming_summary" msgid="8280824871197081246">"Diffusez des applis et d\'autres fonctionnalités du système à partir de votre téléphone"</string> + <string name="permission_media_routing_control_summary" msgid="2714631092321412250">"Accédez à une liste d\'appareils accessibles et contrôlez ceux qui diffusent du contenu audio ou vidéo à partir d\'autres applis"</string> <string name="device_type" product="default" msgid="8268703872070046263">"téléphone"</string> <string name="device_type" product="tablet" msgid="5038791954983067774">"tablette"</string> </resources> diff --git a/packages/CompanionDeviceManager/res/values-mr/strings.xml b/packages/CompanionDeviceManager/res/values-mr/strings.xml index 52a7a550654a..134c6b7a0981 100644 --- a/packages/CompanionDeviceManager/res/values-mr/strings.xml +++ b/packages/CompanionDeviceManager/res/values-mr/strings.xml @@ -41,9 +41,7 @@ <string name="helper_summary_computer" msgid="8774832742608187072">"तुमच्या फोनमधील फोटो, मीडिया आणि सूचना ॲक्सेस करण्यासाठी <xliff:g id="APP_NAME">%1$s</xliff:g> हे तुमच्या <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> च्या वतीने परवानगीची विनंती करत आहे"</string> <string name="title_nearby_device_streaming" msgid="7269956847378799794">"<strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> ला ही कृती करण्याची अनुमती द्यायची आहे का?"</string> <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"<strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> ला तुमच्या फोनची अॅप्स आणि सिस्टीमची वैशिष्ट्ये स्ट्रीम करण्याची अनुमती द्यायची आहे का?"</string> - <!-- String.format failed for translation --> - <!-- no translation found for summary_nearby_device_streaming (4039565463149145573) --> - <skip /> + <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s ला ऑडिओ, फोटो, पेमेंट माहिती, पासवर्ड आणि मेसेज यांसह तुमच्या फोनवर दिसणाऱ्या किंवा प्ले होणाऱ्या सर्व गोष्टींचा अॅक्सेस असेल.<br/><br/>तुम्ही या परवानगीचा अॅक्सेस काढून टाकेपर्यंत %1$s हे ॲप्स आणि सिस्टीमची वैशिष्ट्ये स्ट्रीम करू शकेल."</string> <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"<xliff:g id="APP_NAME">%1$s</xliff:g> हे जवळपासच्या डिव्हाइसवर अॅप्स आणि इतर सिस्टीम वैशिष्ट्ये स्ट्रीम करण्यासाठी तुमच्या <xliff:g id="DEVICE_NAME">%2$s</xliff:g> च्या वतीने परवानगीची विनंती करा"</string> <string name="profile_name_generic" msgid="6851028682723034988">"डिव्हाइस"</string> <string name="summary_generic" msgid="1761976003668044801">"हे ॲप तुमचा फोन आणि निवडलेल्या डिव्हाइसदरम्यान कॉल करत असलेल्या एखाद्या व्यक्तीचे नाव यासारखी माहिती सिंक करू शकेल"</string> diff --git a/packages/CompanionDeviceManager/res/values-ur/strings.xml b/packages/CompanionDeviceManager/res/values-ur/strings.xml index d92a2e088f25..7ed36d5a2035 100644 --- a/packages/CompanionDeviceManager/res/values-ur/strings.xml +++ b/packages/CompanionDeviceManager/res/values-ur/strings.xml @@ -39,9 +39,7 @@ <string name="helper_summary_computer" msgid="8774832742608187072">"<xliff:g id="APP_NAME">%1$s</xliff:g> ایپ آپ کے <xliff:g id="DISPLAY_NAME">%2$s</xliff:g> کی جانب سے آپ کے فون کی تصاویر، میڈیا اور اطلاعات تک رسائی کی اجازت کی درخواست کر رہی ہے"</string> <string name="title_nearby_device_streaming" msgid="7269956847378799794">"<strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> کو یہ کارروائی انجام دینے کی اجازت دیں؟"</string> <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"آپ کے فون کی ایپس اور سسٹم کی خصوصیات کو سلسلہ بندی کرنے کی <strong><xliff:g id="DEVICE_NAME">%1$s</xliff:g></strong> کو اجازت دیں؟"</string> - <!-- String.format failed for translation --> - <!-- no translation found for summary_nearby_device_streaming (4039565463149145573) --> - <skip /> + <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"%1$s کو آپ کے فون پر نظر آنے والی یا چلائی جانے والی کسی بھی چیز تک رسائی حاصل ہوگی، بشمول آڈیو، تصاویر، ادائیگی کی معلومات، پاس ورڈز اور پیغامات۔<br/><br/>%1$s ایپس اور سسٹم کی خصوصیات کو اس وقت تک اسٹریم کر سکے گا جب تک آپ اس اجازت تک رسائی کو ہٹا نہیں دیتے۔"</string> <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"<xliff:g id="APP_NAME">%1$s</xliff:g> آپ کے <xliff:g id="DEVICE_NAME">%2$s</xliff:g> کی جانب سے ایپس اور سسٹم کی دیگر خصوصیات کی سلسلہ بندی قریبی آلات پر کرنے کی اجازت طلب کر رہی ہے"</string> <string name="profile_name_generic" msgid="6851028682723034988">"آلہ"</string> <string name="summary_generic" msgid="1761976003668044801">"یہ ایپ آپ کے فون اور منتخب کردہ آلے کے درمیان معلومات، جیسے کسی کال کرنے والے کے نام، کی مطابقت پذیری کر سکے گی"</string> diff --git a/packages/CompanionDeviceManager/res/values-zu/strings.xml b/packages/CompanionDeviceManager/res/values-zu/strings.xml index 4b00dcb2bdca..9e87f1a8190f 100644 --- a/packages/CompanionDeviceManager/res/values-zu/strings.xml +++ b/packages/CompanionDeviceManager/res/values-zu/strings.xml @@ -27,9 +27,7 @@ <string name="summary_glasses" msgid="2872254734959842579">"Le-app izovunyelwa ukufinyelela lezi zimvume ku-<xliff:g id="DEVICE_NAME">%1$s</xliff:g> yakho"</string> <string name="title_app_streaming" msgid="2270331024626446950">"Vumela i-<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ifinyelele lolu lwazi kusukela efonini yakho"</string> <string name="title_app_streaming_with_mirroring" msgid="3364582597581570658">"Vumela i-<xliff:g id="APP_NAME">%1$s</xliff:g> ukusakaza ama-app efoni yakho?"</string> - <!-- String.format failed for translation --> - <!-- no translation found for summary_app_streaming (295548145144086753) --> - <skip /> + <string name="summary_app_streaming" msgid="295548145144086753">"I-%1$s izokwazi ukufinyelela kunoma yini ebonakalayo noma edlalwayo efonwini, okuhlanganisa umsindo, izithombe, amaphasiwedi, nemilayezo.<br/><br/>I-%1$s izokwazi ukusakaza-bukhoma ama-app uze ususe ukufinyelela kule mvume."</string> <string name="helper_title_app_streaming" msgid="4151687003439969765">"Amasevisi amadivayisi amaningi"</string> <string name="helper_summary_app_streaming" msgid="2396773196949578425">"I-<xliff:g id="APP_NAME">%1$s</xliff:g> icela imvume esikhundleni se-<xliff:g id="DISPLAY_NAME">%2$s</xliff:g> yakho ukuze isakaze-bukhoma ama-app phakathi kwamadivayisi akho"</string> <string name="helper_summary_app_streaming_with_mirroring" msgid="6138581029144467467">"I-<xliff:g id="APP_NAME">%1$s</xliff:g> icela imvume esikhundleni se-<xliff:g id="DISPLAY_NAME">%2$s</xliff:g> yakho yokubonisa nokusakaza ama-app phakathi kwamadivayisi wakho"</string> @@ -41,9 +39,7 @@ <string name="helper_summary_computer" msgid="8774832742608187072">"I-<xliff:g id="APP_NAME">%1$s</xliff:g> icela imvume esikhundleni se-<xliff:g id="DISPLAY_NAME">%2$s</xliff:g> yakho ukuze ifinyelele izithombe zefoni yakho, imidiya nezaziso"</string> <string name="title_nearby_device_streaming" msgid="7269956847378799794">"Vumela i-<xliff:g id="DEVICE_NAME">%1$s</xliff:g> ukwenza lesi senzo?"</string> <string name="title_nearby_device_streaming_with_mirroring" msgid="242855799919611657">"Vumela i-<xliff:g id="DEVICE_NAME">%1$s</xliff:g> ukuze usakaze ama-app wefoni yakho nezakhi zesistimu?"</string> - <!-- String.format failed for translation --> - <!-- no translation found for summary_nearby_device_streaming (4039565463149145573) --> - <skip /> + <string name="summary_nearby_device_streaming" msgid="4039565463149145573">"I-%1$s izokwazi ukufinyelela kunoma yini ebonakalayo noma edlalwayo efonwini, okuhlanganisa umsindo, izithombe, ulwazi lokukhokha, amaphasiwedi, nemilayezo.<br/><br/>I-%1$s izokwazi ukusakaza-bukhoma ama-app nezakhi zesistimu uze ususe ukufinyelela kule mvume."</string> <string name="helper_summary_nearby_device_streaming" msgid="2063965070936844876">"I-<xliff:g id="APP_NAME">%1$s</xliff:g> icela imvume esikhundleni se-<xliff:g id="DEVICE_NAME">%2$s</xliff:g> ukusakaza ama-app nezinye izakhi zesistimu kumadivayisi aseduze"</string> <string name="profile_name_generic" msgid="6851028682723034988">"idivayisi"</string> <string name="summary_generic" msgid="1761976003668044801">"Le app izokwazi ukuvumelanisa ulwazi, njengegama lomuntu othile ofonayo, phakathi kwefoni yakho nedivayisi ekhethiwe"</string> diff --git a/packages/CredentialManager/res/values-be/strings.xml b/packages/CredentialManager/res/values-be/strings.xml index 2d98870eaec6..2976e66f800f 100644 --- a/packages/CredentialManager/res/values-be/strings.xml +++ b/packages/CredentialManager/res/values-be/strings.xml @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"Налады"</string> diff --git a/packages/CredentialManager/res/values-el/strings.xml b/packages/CredentialManager/res/values-el/strings.xml index 2f3aa0bce6f2..8436e21f01d3 100644 --- a/packages/CredentialManager/res/values-el/strings.xml +++ b/packages/CredentialManager/res/values-el/strings.xml @@ -53,7 +53,7 @@ <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="use_provider_for_all_description" msgid="1998772715863958997">"Αυτή η διαχείριση κωδικών πρόσβασης για τον χρήστη <xliff:g id="USERNAME">%1$s</xliff:g> θα αποθηκεύει τους κωδικούς και τα κλειδιά πρόσβασης, για πιο εύκολη σύνδεση"</string> <string name="set_as_default" msgid="4415328591568654603">"Ορισμός ως προεπιλογής"</string> <string name="settings" msgid="6536394145760913145">"Ρυθμίσεις"</string> <string name="use_once" msgid="9027366575315399714">"Χρήση μία φορά"</string> diff --git a/packages/CredentialManager/res/values-eu/strings.xml b/packages/CredentialManager/res/values-eu/strings.xml index 6a4974de2cb6..66ad31b3927c 100644 --- a/packages/CredentialManager/res/values-eu/strings.xml +++ b/packages/CredentialManager/res/values-eu/strings.xml @@ -52,7 +52,7 @@ <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_title" msgid="4201020195058980757">"<xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> erabili nahi duzu beti saioa hasteko?"</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> <string name="settings" msgid="6536394145760913145">"Ezarpenak"</string> diff --git a/packages/CredentialManager/res/values-fa/strings.xml b/packages/CredentialManager/res/values-fa/strings.xml index 6147ccce8741..6e6c22aacafe 100644 --- a/packages/CredentialManager/res/values-fa/strings.xml +++ b/packages/CredentialManager/res/values-fa/strings.xml @@ -86,7 +86,7 @@ <string name="button_label_view_more" msgid="3429098227286495651">"مشاهده موارد بیشتر"</string> <string name="get_dialog_heading_for_username" msgid="3456868514554204776">"برای <xliff:g id="USERNAME">%1$s</xliff:g>"</string> <string name="get_dialog_heading_locked_password_managers" msgid="8911514851762862180">"مدیران گذرواژه قفلشده"</string> - <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="6390367581393605009">"برای باز کردن قفل ضربه بزنید"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="6390367581393605009">"برای باز کردن قفل تکضرب بزنید"</string> <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="8131725029983174901">"اطلاعات ورود به سیستم موجود نیست"</string> <string name="no_sign_in_info_in" msgid="2641118151920288356">"هیچ اطلاعات ورود به سیستمی در <xliff:g id="SOURCE">%1$s</xliff:g> وجود ندارد"</string> <string name="get_dialog_heading_manage_sign_ins" msgid="3522556476480676782">"مدیریت ورود به سیستمها"</string> diff --git a/packages/CredentialManager/res/values-fr-rCA/strings.xml b/packages/CredentialManager/res/values-fr-rCA/strings.xml index d9715eefa955..d68de9fcd27c 100644 --- a/packages/CredentialManager/res/values-fr-rCA/strings.xml +++ b/packages/CredentialManager/res/values-fr-rCA/strings.xml @@ -32,9 +32,9 @@ <string name="passwordless_technology_title" msgid="2497513482056606668">"Technologie sans mot de passe"</string> <string name="passwordless_technology_detail" msgid="6853928846532955882">"Les clés d\'accès vous permettent de vous connecter sans utiliser de mots de passe. Il vous suffit d\'utiliser votre empreinte digitale, la reconnaissance faciale, un NIP ou un schéma de balayage pour vérifier votre identité et créer un mot de passe."</string> <string name="public_key_cryptography_title" msgid="6751970819265298039">"Cryptographie à clé publique"</string> - <string name="public_key_cryptography_detail" msgid="6937631710280562213">"Selon les normes de l\'Alliance FIDO (y compris Google, Apple, Microsoft et plus) et du W3C, les clés d\'accès utilisent des biclés cryptographiques. Contrairement au nom d\'utilisateur et à la chaîne de caractères que nous utilisons pour les mots de passe, une biclé privée-publique est créée pour une application ou un site Web. La clé privée est stockée en toute sécurité sur votre appareil ou votre gestionnaire de mots de passe et confirme votre identité. La clé publique est partagée avec le serveur de l\'application ou du site Web. Avec les clés correspondantes, vous pouvez vous inscrire et vous connecter instantanément."</string> + <string name="public_key_cryptography_detail" msgid="6937631710280562213">"Selon les normes de l\'Alliance FIDO (y compris Google, Apple, Microsoft et plus) et du W3C, les clés d\'accès utilisent des biclés cryptographiques. Contrairement au nom d\'utilisateur et à la chaîne de caractères que nous utilisons pour les mots de passe, une biclé privée-publique est créée pour une appli ou un site Web. La clé privée est stockée en toute sécurité sur votre appareil ou votre gestionnaire de mots de passe et confirme votre identité. La clé publique est partagée avec le serveur de l\'appli ou du site Web. Avec les clés correspondantes, vous pouvez vous inscrire et vous connecter instantanément."</string> <string name="improved_account_security_title" msgid="1069841917893513424">"Sécurité accrue du compte"</string> - <string name="improved_account_security_detail" msgid="9123750251551844860">"Chaque clé est exclusivement liée à l\'application ou au site Web pour lequel elle a été créée, de sorte que vous ne pourrez jamais vous connecter par erreur à une application ou à un site Web frauduleux. En outre, comme les serveurs ne conservent que les clés publiques, le piratage informatique est beaucoup plus difficile."</string> + <string name="improved_account_security_detail" msgid="9123750251551844860">"Chaque clé est exclusivement liée à l\'appli ou au site Web pour lequel elle a été créée, de sorte que vous ne pourrez jamais vous connecter par erreur à une appli ou à un site Web frauduleux. En outre, comme les serveurs ne conservent que les clés publiques, le piratage informatique est beaucoup plus difficile."</string> <string name="seamless_transition_title" msgid="5335622196351371961">"Transition fluide"</string> <string name="seamless_transition_detail" msgid="4475509237171739843">"À mesure que nous nous dirigeons vers un avenir sans mot de passe, ils resteront toujours utilisés parallèlement aux clés d\'accès."</string> <string name="choose_provider_title" msgid="8870795677024868108">"Choisir où enregistrer vos <xliff:g id="CREATETYPES">%1$s</xliff:g>"</string> diff --git a/packages/CredentialManager/res/values-iw/strings.xml b/packages/CredentialManager/res/values-iw/strings.xml index 46ad865c256b..51f163922203 100644 --- a/packages/CredentialManager/res/values-iw/strings.xml +++ b/packages/CredentialManager/res/values-iw/strings.xml @@ -80,7 +80,7 @@ <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> <string name="get_dialog_use_saved_passkey_for" msgid="4618100798664888512">"כניסה בדרך אחרת"</string> - <string name="snackbar_action" msgid="37373514216505085">"הצגת האפשרויות"</string> + <string name="snackbar_action" msgid="37373514216505085">"עיון באפשרויות"</string> <string name="get_dialog_button_label_continue" msgid="6446201694794283870">"המשך"</string> <string name="get_dialog_title_sign_in_options" msgid="2092876443114893618">"אפשרויות כניסה לחשבון"</string> <string name="button_label_view_more" msgid="3429098227286495651">"עוד מידע"</string> diff --git a/packages/CredentialManager/res/values-kn/strings.xml b/packages/CredentialManager/res/values-kn/strings.xml index 897f444af2c5..ffbe7c8c60f9 100644 --- a/packages/CredentialManager/res/values-kn/strings.xml +++ b/packages/CredentialManager/res/values-kn/strings.xml @@ -53,7 +53,7 @@ <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="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> ಗಾಗಿ ಈ ಪಾಸ್ವರ್ಡ್ ನಿರ್ವಾಹಕವು ನಿಮಗೆ ಸುಲಭವಾಗಿ ಸೈನ್ ಇನ್ ಮಾಡುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಲು ನಿಮ್ಮ ಪಾಸ್ವರ್ಡ್ಗಳು ಮತ್ತು ಪಾಸ್ಕೀಗಳನ್ನು ಸ್ಟೋರ್ ಮಾಡುತ್ತದೆ"</string> <string name="set_as_default" msgid="4415328591568654603">"ಡೀಫಾಲ್ಟ್ ಆಗಿ ಸೆಟ್ ಮಾಡಿ"</string> <string name="settings" msgid="6536394145760913145">"ಸೆಟ್ಟಿಂಗ್ಗಳು"</string> <string name="use_once" msgid="9027366575315399714">"ಒಂದು ಬಾರಿ ಬಳಸಿ"</string> diff --git a/packages/CredentialManager/res/values-ky/strings.xml b/packages/CredentialManager/res/values-ky/strings.xml index 4172b51f1a77..f54e1b2184eb 100644 --- a/packages/CredentialManager/res/values-ky/strings.xml +++ b/packages/CredentialManager/res/values-ky/strings.xml @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"Параметрлер"</string> diff --git a/packages/CredentialManager/res/values-mr/strings.xml b/packages/CredentialManager/res/values-mr/strings.xml index 7eebec596bce..10b651b82ebb 100644 --- a/packages/CredentialManager/res/values-mr/strings.xml +++ b/packages/CredentialManager/res/values-mr/strings.xml @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"सेटिंग्ज"</string> diff --git a/packages/CredentialManager/res/values-pa/strings.xml b/packages/CredentialManager/res/values-pa/strings.xml index 517fd82e614a..3381ece77edf 100644 --- a/packages/CredentialManager/res/values-pa/strings.xml +++ b/packages/CredentialManager/res/values-pa/strings.xml @@ -32,7 +32,7 @@ <string name="passwordless_technology_title" msgid="2497513482056606668">"ਪਾਸਵਰਡ ਰਹਿਤ ਤਕਨਾਲੋਜੀ"</string> <string name="passwordless_technology_detail" msgid="6853928846532955882">"ਪਾਸਕੀਆਂ ਤੁਹਾਨੂੰ ਪਾਸਵਰਡਾਂ \'ਤੇ ਭਰੋਸਾ ਕੀਤੇ ਬਿਨਾਂ ਸਾਈਨ-ਇਨ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ। ਤੁਹਾਨੂੰ ਆਪਣੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਅਤੇ ਪਾਸਕੀ ਬਣਾਉਣ ਲਈ ਸਿਰਫ਼ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ, ਚਿਹਰਾ ਪਛਾਣ, ਪਿੰਨ ਜਾਂ ਸਵਾਈਪ ਪੈਟਰਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।"</string> <string name="public_key_cryptography_title" msgid="6751970819265298039">"ਜਨਤਕ ਕੁੰਜੀ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫ਼ੀ"</string> - <string name="public_key_cryptography_detail" msgid="6937631710280562213">"FIDO ਗਠਜੋੜ (ਜਿਸ ਵਿੱਚ Google, Apple, Microsoft ਅਤੇ ਹੋਰ ਸ਼ਾਮਲ ਹਨ) ਅਤੇ W3C ਮਿਆਰਾਂ ਦੇ ਆਧਾਰ \'ਤੇ ਪਾਸਕੀਆਂ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫ਼ਿਕ ਕੁੰਜੀਆਂ ਦੇ ਜੋੜੇ ਵਰਤਦੀਆਂ ਹਨ। ਪਾਸਵਰਡ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਅੱਖਰ-ਚਿੰਨ੍ਹਾਂ ਦੀ ਸਤਰ ਅਤੇ ਵਰਤੋਂਕਾਰ ਨਾਮ ਤੋਂ ਅਲੱਗ, ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਲਈ ਨਿੱਜੀ-ਜਨਤਕ ਕੁੰਜੀ ਜੋੜਾ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਨਿੱਜੀ ਕੁੰਜੀ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਜਾਂ ਪਾਸਵਰਡ ਪ੍ਰਬੰਧਕ \'ਤੇ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਸਟੋਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਤੁਹਾਡੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰਦੀ ਹੈ। ਜਨਤਕ ਕੁੰਜੀ ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਸਰਵਰ ਨਾਲ ਸਾਂਝੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸੰਬੰਧਿਤ ਕੁੰਜੀਆਂ ਨਾਲ, ਤੁਸੀਂ ਤੁਰੰਤ ਰਜਿਸਟਰ ਅਤੇ ਸਾਈਨ-ਇਨ ਕਰ ਸਕਦੇ ਹੋ।"</string> + <string name="public_key_cryptography_detail" msgid="6937631710280562213">"FIDO ਗਠਜੋੜ (Google, Apple, Microsoft ਅਤੇ ਹੋਰ) ਅਤੇ W3C ਮਿਆਰਾਂ ਦੇ ਆਧਾਰ \'ਤੇ ਪਾਸਕੀਆਂ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫ਼ਿਕ ਕੁੰਜੀਆਂ ਦੇ ਜੋੜੇ ਵਰਤਦੀਆਂ ਹਨ। ਪਾਸਵਰਡ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਅੱਖਰ-ਚਿੰਨ੍ਹਾਂ ਦੀ ਸਤਰ ਅਤੇ ਵਰਤੋਂਕਾਰ ਨਾਮ ਤੋਂ ਅਲੱਗ, ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਲਈ ਪ੍ਰਾਈਵੇਟ-ਜਨਤਕ ਕੁੰਜੀ ਜੋੜਾ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਪ੍ਰਾਈਵੇਟ ਕੁੰਜੀ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਜਾਂ ਪਾਸਵਰਡ ਪ੍ਰਬੰਧਕ \'ਤੇ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਸਟੋਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਤੁਹਾਡੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰਦੀ ਹੈ। ਜਨਤਕ ਕੁੰਜੀ ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਸਰਵਰ ਨਾਲ ਸਾਂਝੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸੰਬੰਧਿਤ ਕੁੰਜੀਆਂ ਨਾਲ, ਤੁਸੀਂ ਤੁਰੰਤ ਰਜਿਸਟਰ ਅਤੇ ਸਾਈਨ-ਇਨ ਕਰ ਸਕਦੇ ਹੋ।"</string> <string name="improved_account_security_title" msgid="1069841917893513424">"ਬਿਹਤਰ ਖਾਤਾ ਸੁਰੱਖਿਆ"</string> <string name="improved_account_security_detail" msgid="9123750251551844860">"ਹਰੇਕ ਕੁੰਜੀ ਖਾਸ ਤੌਰ \'ਤੇ ਉਸ ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਨਾਲ ਲਿੰਕ ਹੁੰਦੀ ਹੈ ਜਿਸ ਲਈ ਉਹ ਬਣਾਈ ਗਈ ਸੀ, ਇਸ ਲਈ ਤੁਸੀਂ ਕਦੇ ਵੀ ਗਲਤੀ ਨਾਲ ਕਿਸੇ ਧੋਖਾਧੜੀ ਵਾਲੀ ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ \'ਤੇ ਸਾਈਨ-ਇਨ ਨਹੀਂ ਕਰ ਸਕਦੇ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਸਿਰਫ਼ ਜਨਤਕ ਕੁੰਜੀਆਂ ਵਾਲੇ ਸਰਵਰਾਂ \'ਤੇ, ਹੈਕਿੰਗ ਕਰਨਾ ਬਹੁਤ ਔਖਾ ਹੁੰਦਾ ਹੈ।"</string> <string name="seamless_transition_title" msgid="5335622196351371961">"ਸਹਿਜ ਪਰਿਵਰਤਨ"</string> @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"ਸੈਟਿੰਗਾਂ"</string> diff --git a/packages/CredentialManager/res/values-pl/strings.xml b/packages/CredentialManager/res/values-pl/strings.xml index caa7b09b9c22..651488776c22 100644 --- a/packages/CredentialManager/res/values-pl/strings.xml +++ b/packages/CredentialManager/res/values-pl/strings.xml @@ -52,7 +52,7 @@ <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_title" msgid="4201020195058980757">"Używać usługi <xliff:g id="PROVIDERINFODISPLAYNAME">%1$s</xliff:g> do 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 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> diff --git a/packages/CredentialManager/res/values-pt-rPT/strings.xml b/packages/CredentialManager/res/values-pt-rPT/strings.xml index 9186c59caaee..c065f8fcd727 100644 --- a/packages/CredentialManager/res/values-pt-rPT/strings.xml +++ b/packages/CredentialManager/res/values-pt-rPT/strings.xml @@ -54,7 +54,7 @@ <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> + <string name="set_as_default" msgid="4415328591568654603">"Predefinir"</string> <string name="settings" msgid="6536394145760913145">"Definições"</string> <string name="use_once" msgid="9027366575315399714">"Usar uma vez"</string> <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> palavras-passe • <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g> chaves de acesso"</string> diff --git a/packages/CredentialManager/res/values-ro/strings.xml b/packages/CredentialManager/res/values-ro/strings.xml index 9e42dbb5604b..6f12bee3034e 100644 --- a/packages/CredentialManager/res/values-ro/strings.xml +++ b/packages/CredentialManager/res/values-ro/strings.xml @@ -53,7 +53,7 @@ <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="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> <string name="settings" msgid="6536394145760913145">"Setări"</string> <string name="use_once" msgid="9027366575315399714">"Folosește o dată"</string> diff --git a/packages/CredentialManager/res/values-ru/strings.xml b/packages/CredentialManager/res/values-ru/strings.xml index 936ff79817a6..13a782b37d41 100644 --- a/packages/CredentialManager/res/values-ru/strings.xml +++ b/packages/CredentialManager/res/values-ru/strings.xml @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"Настройки"</string> diff --git a/packages/CredentialManager/res/values-ta/strings.xml b/packages/CredentialManager/res/values-ta/strings.xml index 96d267622967..d359a73e0fe5 100644 --- a/packages/CredentialManager/res/values-ta/strings.xml +++ b/packages/CredentialManager/res/values-ta/strings.xml @@ -53,7 +53,7 @@ <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="use_provider_for_all_description" msgid="1998772715863958997">"<xliff:g id="USERNAME">%1$s</xliff:g> என்ற கணக்குக்கான இந்தக் கடவுச்சொல் நிர்வாகி உங்கள் கடவுச்சொற்களையும் கடவுச்சாவிகளையும் சேமித்து நீங்கள் எளிதாக உள்நுழைய உதவும்"</string> <string name="set_as_default" msgid="4415328591568654603">"இயல்பானதாக அமை"</string> <string name="settings" msgid="6536394145760913145">"அமைப்புகள்"</string> <string name="use_once" msgid="9027366575315399714">"ஒருமுறை பயன்படுத்தவும்"</string> diff --git a/packages/CredentialManager/res/values-tr/strings.xml b/packages/CredentialManager/res/values-tr/strings.xml index b423b2c6b005..d8d6ffd766e1 100644 --- a/packages/CredentialManager/res/values-tr/strings.xml +++ b/packages/CredentialManager/res/values-tr/strings.xml @@ -56,7 +56,7 @@ <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 geçiş 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> <string name="settings" msgid="6536394145760913145">"Ayarlar"</string> - <string name="use_once" msgid="9027366575315399714">"Bir kez kullanın"</string> + <string name="use_once" msgid="9027366575315399714">"Bir kez kullan"</string> <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> şifre • <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g> geçiş anahtarı"</string> <string name="more_options_usage_passwords" msgid="1632047277723187813">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> şifre"</string> <string name="more_options_usage_passkeys" msgid="5390320437243042237">"<xliff:g id="PASSKEYSNUMBER">%1$s</xliff:g> geçiş anahtarı"</string> diff --git a/packages/CredentialManager/res/values-uk/strings.xml b/packages/CredentialManager/res/values-uk/strings.xml index e7461308bab5..2c483bd165ad 100644 --- a/packages/CredentialManager/res/values-uk/strings.xml +++ b/packages/CredentialManager/res/values-uk/strings.xml @@ -52,7 +52,7 @@ <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_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> <string name="settings" msgid="6536394145760913145">"Налаштування"</string> diff --git a/packages/CredentialManager/res/values-zh-rHK/strings.xml b/packages/CredentialManager/res/values-zh-rHK/strings.xml index c6ac74358be4..c01ccbe46f96 100644 --- a/packages/CredentialManager/res/values-zh-rHK/strings.xml +++ b/packages/CredentialManager/res/values-zh-rHK/strings.xml @@ -56,7 +56,7 @@ <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> <string name="settings" msgid="6536394145760913145">"設定"</string> - <string name="use_once" msgid="9027366575315399714">"單次使用"</string> + <string name="use_once" msgid="9027366575315399714">"使用一次"</string> <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> 個密碼 • <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g> 個密鑰"</string> <string name="more_options_usage_passwords" msgid="1632047277723187813">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> 個密碼"</string> <string name="more_options_usage_passkeys" msgid="5390320437243042237">"<xliff:g id="PASSKEYSNUMBER">%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 6b22e36d1daa..2d1e8e1fe2fe 100644 --- a/packages/CredentialManager/res/values-zh-rTW/strings.xml +++ b/packages/CredentialManager/res/values-zh-rTW/strings.xml @@ -56,7 +56,7 @@ <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> <string name="settings" msgid="6536394145760913145">"設定"</string> - <string name="use_once" msgid="9027366575315399714">"單次使用"</string> + <string name="use_once" msgid="9027366575315399714">"僅限這次"</string> <string name="more_options_usage_passwords_passkeys" msgid="3470113942332934279">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> 個密碼 • <xliff:g id="PASSKEYSNUMBER">%2$s</xliff:g> 個密碼金鑰"</string> <string name="more_options_usage_passwords" msgid="1632047277723187813">"<xliff:g id="PASSWORDSNUMBER">%1$s</xliff:g> 個密碼"</string> <string name="more_options_usage_passkeys" msgid="5390320437243042237">"<xliff:g id="PASSKEYSNUMBER">%1$s</xliff:g> 個密碼金鑰"</string> diff --git a/packages/CredentialManager/tests/robotests/Android.bp b/packages/CredentialManager/tests/robotests/Android.bp index 75a0dcce0b9e..27afaaa49fdd 100644 --- a/packages/CredentialManager/tests/robotests/Android.bp +++ b/packages/CredentialManager/tests/robotests/Android.bp @@ -48,9 +48,9 @@ android_robolectric_test { "flag-junit-base", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "truth", ], upstream: true, diff --git a/packages/CredentialManager/wear/res/values-af/strings.xml b/packages/CredentialManager/wear/res/values-af/strings.xml new file mode 100644 index 000000000000..44e46f4bef65 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-af/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Eiebewysbestuurder"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Gebruik toegangsleutel?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Gebruik wagwoord?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Maak toe"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Gaan voort"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Aanmeldopsies"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Aanmeldopsies"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Bestuur aanmeldings"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Kies ’n aanmelding"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Kies toegangsleutel"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Kies wagwoord"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Meld aan op foon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Geen aanmeldinligting nie"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tik om te ontsluit"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-am/strings.xml b/packages/CredentialManager/wear/res/values-am/strings.xml new file mode 100644 index 000000000000..4aa4af184752 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-am/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"የመግቢያ ማስረጃ አስተዳዳሪ"</string> + <string name="use_passkey_title" msgid="716598039340757817">"የይለፍ ቁልፍ ይጠቀማሉ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"የይለፍ ቃል ይጠቀማሉ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"አሰናብት"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ቀጥል"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"የመግቢያ አማራጮች"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"የመግቢያ አማራጮች"</string> + <string name="provider_list_title" msgid="6803918216129492212">"መግቢያዎችን ያስተዳድሩ"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"መግቢያ ይምረጡ"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"የይለፍ ቁልፍ ይምረጡ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"የይለፍ ቃል ይምረጡ"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"በስልክ ላይ ግባ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ምንም የመግቢያ መረጃ የለም"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ለመክፈት መታ ያድርጉ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ar/strings.xml b/packages/CredentialManager/wear/res/values-ar/strings.xml new file mode 100644 index 000000000000..43a651ea4300 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ar/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"هل تريد استخدام مفتاح المرور؟"</string> + <string name="use_password_title" msgid="4655101984031246476">"هل تريد استخدام كلمة المرور؟"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"إغلاق"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"متابعة"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"خيارات تسجيل الدخول"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"خيارات تسجيل الدخول"</string> + <string name="provider_list_title" msgid="6803918216129492212">"إداراة عمليات تسجيل الدخول"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"اختيار معلومات تسجيل الدخول"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"اختيار مفتاح المرور"</string> + <string name="choose_password_title" msgid="7610721820858017214">"اختيار كلمة المرور"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"تسجيل الدخول على الهاتف"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"لا تتوفّر معلومات تسجيل دخول"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"انقر لفتح القفل"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-as/strings.xml b/packages/CredentialManager/wear/res/values-as/strings.xml new file mode 100644 index 000000000000..7b6055dd5372 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-as/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ক্ৰিডেনশ্বিয়েল পৰিচালক"</string> + <string name="use_passkey_title" msgid="716598039340757817">"পাছকী ব্যৱহাৰ কৰিবনে?"</string> + <string name="use_password_title" msgid="4655101984031246476">"পাছৱৰ্ড ব্যৱহাৰ কৰিবনে?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"অগ্ৰাহ্য কৰক"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"অব্যাহত ৰাখক"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ছাইন ইন কৰাৰ বিকল্প"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ছাইন ইন কৰাৰ বিকল্প"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ছাইন ইন পৰিচালনা কৰক"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"এটা ছাইন ইনৰ উপায় বাছনি কৰক"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"পাছকী বাছনি কৰক"</string> + <string name="choose_password_title" msgid="7610721820858017214">"পাছৱৰ্ড বাছনি কৰক"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ফ’নত ছাইন ইন কৰক"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ছাইন ইনৰ তথ্য নাই"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"আনলক কৰিবলৈ টিপক"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-az/strings.xml b/packages/CredentialManager/wear/res/values-az/strings.xml new file mode 100644 index 000000000000..3f2700295495 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-az/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Giriş Məlumatları Meneceri"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Giriş açarı istifadə edilsin?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Parol istifadə edilsin?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ləğv edin"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Davam edin"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Giriş seçimləri"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Giriş seçimləri"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Girişləri idarə edin"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Giriş seçin"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Giriş açarı seçin"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Parol seçin"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Telefonda daxil olun"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Giriş məlumatı yoxdur"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Kiliddən çıxarmaq üçün toxunun"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-b+sr+Latn/strings.xml b/packages/CredentialManager/wear/res/values-b+sr+Latn/strings.xml new file mode 100644 index 000000000000..fd5a59a87657 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-b+sr+Latn/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Menadžer akreditiva"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Želite da koristite pristupni ključ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Želite da koristite lozinku?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Odbaci"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Nastavi"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opcije za prijavljivanje"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opcije za prijavljivanje"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Upravljajte prijavljivanjima"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Odaberite prijavljivanje"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Odaberite pristupni ključ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Odaberite lozinku"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prijavite se na telefonu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nema podataka za prijavljivanje"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Dodirnite da biste otključali"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-be/strings.xml b/packages/CredentialManager/wear/res/values-be/strings.xml new file mode 100644 index 000000000000..275924748e0c --- /dev/null +++ b/packages/CredentialManager/wear/res/values-be/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Выкарыстаць ключ доступу?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Выкарыстаць пароль?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Закрыць"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Працягнуць"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Спосабы ўваходу"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Спосабы ўваходу"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Кіраванне спосабамі ўваходу"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Выберыце спосаб уваходу"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Выберыце ключ доступу"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Выберыце пароль"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Увайсці на тэлефоне"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Няма даных для ўваходу"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Націсніце, каб разблакіраваць"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-bg/strings.xml b/packages/CredentialManager/wear/res/values-bg/strings.xml new file mode 100644 index 000000000000..0b6b8d5705a2 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-bg/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Мениджър на идентификационни данни"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Искате ли да използвате ключ за достъп?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Искате ли да използвате парола?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Отхвърляне"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Напред"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Опции за влизане в профила"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Опции за влизане в профила"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Управление на данните за вход"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Избиране на данни за вход"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Избиране на ключ за достъп"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Избиране на парола"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Вход в профила на телефона"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Няма данни за вход"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Докоснете, за да отключите"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-bn/strings.xml b/packages/CredentialManager/wear/res/values-bn/strings.xml new file mode 100644 index 000000000000..a28da2d38a07 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-bn/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ক্রেডেনশিয়াল ম্যানেজার"</string> + <string name="use_passkey_title" msgid="716598039340757817">"পাসকী ব্যবহার করতে চান?"</string> + <string name="use_password_title" msgid="4655101984031246476">"পাসওয়ার্ড ব্যবহার করতে চান?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"বাতিল করুন"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"চালিয়ে যান"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"সাইন-ইন করার বিকল্প"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"সাইন-ইন করার বিকল্প"</string> + <string name="provider_list_title" msgid="6803918216129492212">"সাইন-ইন সংক্রান্ত ক্রেডেনশিয়াল ম্যানেজ করুন"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"সাইন-ইন করার বিকল্প বেছে নিন"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"পাসকী বেছে নিন"</string> + <string name="choose_password_title" msgid="7610721820858017214">"পাসওয়ার্ড বেছে নিন"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ফোনে সাইন-ইন করুন"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"সাইন-ইন সংক্রান্ত তথ্য দেওয়া নেই"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"আনলক করতে ট্যাপ করুন"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-bs/strings.xml b/packages/CredentialManager/wear/res/values-bs/strings.xml new file mode 100644 index 000000000000..da71c4638f1e --- /dev/null +++ b/packages/CredentialManager/wear/res/values-bs/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Upravitelj akreditiva"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Koristiti pristupni ključ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Koristiti lozinku?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Odbaci"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Nastavi"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Načini prijave"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Načini prijave"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Upravljajte prijavama"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Odaberite prijavu"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Odaberite pristupni ključ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Odaberite lozinku"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prijavite se na telefonu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nema podataka za prijavu"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Dodirnite da otključate"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ca/strings.xml b/packages/CredentialManager/wear/res/values-ca/strings.xml new file mode 100644 index 000000000000..6bb5854c98ae --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ca/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Gestor de credencials"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vols utilitzar la clau d\'accés?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vols utilitzar la contrasenya?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ignora"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continua"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opcions d\'inici de sessió"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opcions d\'inici de sessió"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gestiona els inicis de sessió"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Tria un inici de sessió"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Tria una clau d\'accés"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Tria una contrasenya"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Inicia la sessió al telèfon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Sense informació d\'inici de sessió"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Toca per desbloquejar"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-cs/strings.xml b/packages/CredentialManager/wear/res/values-cs/strings.xml new file mode 100644 index 000000000000..ba60a8c6440a --- /dev/null +++ b/packages/CredentialManager/wear/res/values-cs/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Správce oprávnění"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Použít přístupový klíč?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Použít heslo?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Zavřít"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Pokračovat"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Možnosti přihlášení"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Možnosti přihlášení"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Spravovat přihlášení"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Vyberte přihlášení"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Vyberte přístupový klíč"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Vyberte heslo"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Přihlásit se z telefonu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Žádné informace o přihlášení"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Klepnutím odemknete"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-da/strings.xml b/packages/CredentialManager/wear/res/values-da/strings.xml new file mode 100644 index 000000000000..d4450673ffb6 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-da/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Loginadministrator"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vil du bruge en adgangsnøgle?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vil du bruge en adgangskode?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Luk"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Fortsæt"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Loginmetoder"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Loginmetoder"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Administrer loginmetoder"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Vælg et login"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Vælg adgangsnøgle"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Vælg adgangskode"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Log ind via telefonen"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ingen loginoplysninger"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tryk for at låse op"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-de/strings.xml b/packages/CredentialManager/wear/res/values-de/strings.xml new file mode 100644 index 000000000000..b5107c5f158b --- /dev/null +++ b/packages/CredentialManager/wear/res/values-de/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Passkey verwenden?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Passwort verwenden?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Schließen"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Weiter"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Anmeldeoptionen"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Anmeldeoptionen"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Anmeldungen verwalten"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Anmeldung auswählen"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Passkey auswählen"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Passwort auswählen"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Auf dem Smartphone anmelden"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Keine Anmeldedaten"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Zum Entsperren tippen"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-el/strings.xml b/packages/CredentialManager/wear/res/values-el/strings.xml new file mode 100644 index 000000000000..ca241273022f --- /dev/null +++ b/packages/CredentialManager/wear/res/values-el/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Διαχείριση διαπιστευτηρίων"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Χρήση κλειδιού πρόσβασης;"</string> + <string name="use_password_title" msgid="4655101984031246476">"Χρήση κωδικού πρόσβασης;"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Παράβλεψη"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Συνέχεια"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Επιλογές σύνδεσης"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Επιλογές σύνδεσης"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Διαχείριση στοιχείων σύνδεσης"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Επιλογή σύνδεσης"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Επιλογή κλειδιού πρόσβασης"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Επιλογή κωδικού πρόσβασης"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Σύνδεση στο τηλέφωνο"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Δεν υπάρχουν πληροφορίες σύνδεσης"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Πατήστε για ξεκλείδωμα"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-en-rAU/strings.xml b/packages/CredentialManager/wear/res/values-en-rAU/strings.xml new file mode 100644 index 000000000000..75a0a0067e31 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-en-rAU/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Use passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Use password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continue"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sign-in options"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sign-in options"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Manage sign-ins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choose a sign-in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choose passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choose password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Sign in on phone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No sign-in info"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tap to unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-en-rCA/strings.xml b/packages/CredentialManager/wear/res/values-en-rCA/strings.xml new file mode 100644 index 000000000000..a8a2b7aa7f63 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-en-rCA/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Use passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Use password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continue"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sign-in Options"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sign-in Options"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Manage sign-ins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choose a sign in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choose passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choose password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Sign in on phone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No sign-in info"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tap to unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-en-rGB/strings.xml b/packages/CredentialManager/wear/res/values-en-rGB/strings.xml new file mode 100644 index 000000000000..75a0a0067e31 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-en-rGB/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Use passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Use password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continue"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sign-in options"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sign-in options"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Manage sign-ins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choose a sign-in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choose passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choose password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Sign in on phone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No sign-in info"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tap to unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-en-rIN/strings.xml b/packages/CredentialManager/wear/res/values-en-rIN/strings.xml new file mode 100644 index 000000000000..75a0a0067e31 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-en-rIN/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Use passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Use password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continue"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sign-in options"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sign-in options"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Manage sign-ins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choose a sign-in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choose passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choose password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Sign in on phone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No sign-in info"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tap to unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-en-rXC/strings.xml b/packages/CredentialManager/wear/res/values-en-rXC/strings.xml new file mode 100644 index 000000000000..fbdd5cfff1dc --- /dev/null +++ b/packages/CredentialManager/wear/res/values-en-rXC/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Use passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Use password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continue"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sign-in Options"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sign-in Options"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Manage sign-ins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choose a sign in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choose passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choose password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Sign in on phone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No sign-in info"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tap to unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-es-rUS/strings.xml b/packages/CredentialManager/wear/res/values-es-rUS/strings.xml new file mode 100644 index 000000000000..97bb3e056ec8 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-es-rUS/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"¿Quieres usar una llave de acceso?"</string> + <string name="use_password_title" msgid="4655101984031246476">"¿Quieres usar una contraseña?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Descartar"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuar"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opción para acceder"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opción para acceder"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Administrar accesos"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Elige un acceso"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Elige una llave de acceso"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Elige una contraseña"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Acceder desde el teléfono"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No hay información de acceso"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Presiona para desbloquear"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-es/strings.xml b/packages/CredentialManager/wear/res/values-es/strings.xml new file mode 100644 index 000000000000..275ac147ce3c --- /dev/null +++ b/packages/CredentialManager/wear/res/values-es/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Gestor de credenciales"</string> + <string name="use_passkey_title" msgid="716598039340757817">"¿Usar llave de acceso?"</string> + <string name="use_password_title" msgid="4655101984031246476">"¿Usar contraseña?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Cerrar"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuar"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opciones de inicio de sesión"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opciones de inicio de sesión"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gestionar inicios de sesión"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Elige un inicio de sesión"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Elige una llave de acceso"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Elige una contraseña"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Iniciar sesión en el teléfono"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"No hay información de inicio de sesión"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Toca para desbloquear"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-et/strings.xml b/packages/CredentialManager/wear/res/values-et/strings.xml new file mode 100644 index 000000000000..c1fdc61e6048 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-et/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Mandaatide haldur"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Kas kasutada pääsuvõtit?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Kas kasutada parooli?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Loobu"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Jätka"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Sisselogimise valikud"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Sisselogimise valikud"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Sisselogimisteabe haldamine"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Valige sisselogimisteave"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Valige pääsuvõti"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Valige parool"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Logi telefonis sisse"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Sisselogimisteave puudub"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Avamiseks puudutage"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-eu/strings.xml b/packages/CredentialManager/wear/res/values-eu/strings.xml new file mode 100644 index 000000000000..352164b2bb35 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-eu/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Sarbide-gako bat erabili nahi duzu?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Pasahitz bat erabili nahi duzu?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Baztertu"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Egin aurrera"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Saioa hasteko moduak"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Saioa hasteko moduak"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Kudeatu saioa hasteko moduak"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Aukeratu saioa hasteko modu bat"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Aukeratu sarbide-gako bat"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Aukeratu pasahitz bat"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Hasi saioa telefonoan"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ez dago saioa hasteko informaziorik"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Desblokeatzeko, sakatu hau"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-fa/strings.xml b/packages/CredentialManager/wear/res/values-fa/strings.xml new file mode 100644 index 000000000000..80537695c95c --- /dev/null +++ b/packages/CredentialManager/wear/res/values-fa/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"از گذرکلید استفاده میکنید؟"</string> + <string name="use_password_title" msgid="4655101984031246476">"از گذرواژه استفاده میکنید؟"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"رد کردن"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ادامه"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"گزینههای ورود به سیستم"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"گزینههای ورود به سیستم"</string> + <string name="provider_list_title" msgid="6803918216129492212">"مدیریت ورود به سیستم"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ورود به سیستم را انتخاب کنید"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"گذرکلید را انتخاب کنید"</string> + <string name="choose_password_title" msgid="7610721820858017214">"گذرواژه را انتخاب کنید"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ورود به سیستم در تلفن"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"اطلاعات ورود به سیستم موجود نیست"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"برای باز کردن قفل، تکضرب بزنید"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-fi/strings.xml b/packages/CredentialManager/wear/res/values-fi/strings.xml new file mode 100644 index 000000000000..855f025e1b81 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-fi/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Kirjautumistietojen hallinta"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Käytetäänkö avainkoodia?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Käytetäänkö salasanaa?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Hylkää"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Jatka"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Kirjautumisvaihtoehdot"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Kirjautumisvaihtoehdot"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Muuta kirjautumistietoja"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Valitse kirjautumistapa"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Valitse avainkoodi"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Valitse salasana"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Kirjaudu sisään puhelimella"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ei kirjautumistietoja"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Avaa napauttamalla"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-fr-rCA/strings.xml b/packages/CredentialManager/wear/res/values-fr-rCA/strings.xml new file mode 100644 index 000000000000..6a04cbb29861 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-fr-rCA/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Gestionnaire d\'authentifiants"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Utiliser la clé d\'accès?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Utiliser le mot de passe?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Fermer"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuer"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Options de connexion"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Options de connexion"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gérer les identifiants de connexion"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choisir un identifiant de connexion"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choisir la clé d\'accès"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choisir le mot de passe"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Se connecter sur le téléphone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Aucun renseignement de connexion"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Toucher pour déverrouiller"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-fr/strings.xml b/packages/CredentialManager/wear/res/values-fr/strings.xml new file mode 100644 index 000000000000..fbecd31fb95a --- /dev/null +++ b/packages/CredentialManager/wear/res/values-fr/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Utiliser la clé d\'accès ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Utiliser le mot de passe ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ignorer"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuer"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Options de connexion"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Options de connexion"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gérer les connexions"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Choisir une connexion"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Choisir une clé d\'accès"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Choisir un mot de passe"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Se connecter sur le téléphone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Aucune information de connexion"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Appuyer pour déverrouiller"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-gl/strings.xml b/packages/CredentialManager/wear/res/values-gl/strings.xml new file mode 100644 index 000000000000..376b08f48d80 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-gl/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Queres usar a clave de acceso?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Queres usar o contrasinal?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Pechar"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuar"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opcións de inicio de sesión"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opcións de inicio de sesión"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Xestionar os métodos de inicio de sesión"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Seleccionar un método de inicio de sesión"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Seleccionar unha clave de acceso"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Seleccionar un contrasinal"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Iniciar sesión no teléfono"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Sen información de inicio de sesión"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Toca para desbloquear"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-gu/strings.xml b/packages/CredentialManager/wear/res/values-gu/strings.xml new file mode 100644 index 000000000000..ff8d2989253a --- /dev/null +++ b/packages/CredentialManager/wear/res/values-gu/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"લૉગ ઇન વિગતોના મેનેજર"</string> + <string name="use_passkey_title" msgid="716598039340757817">"પાસકીનો ઉપયોગ કરીએ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"પાસવર્ડનો ઉપયોગ કરીએ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"છોડી દો"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ચાલુ રાખો"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"સાઇન-ઇનના વિકલ્પો"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"સાઇન-ઇનના વિકલ્પો"</string> + <string name="provider_list_title" msgid="6803918216129492212">"સાઇન-ઇન મેનેજ કરો"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"સાઇન ઇન કરવાની કોઈ રીત પસંદ કરો"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"પાસકી પસંદ કરો"</string> + <string name="choose_password_title" msgid="7610721820858017214">"પાસવર્ડ પસંદ કરો"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ફોન પર સાઇન ઇન કરો"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"કોઈ સાઇન-ઇન માહિતી નથી"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"અનલૉક કરવા માટે ટૅપ કરો"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-hi/strings.xml b/packages/CredentialManager/wear/res/values-hi/strings.xml new file mode 100644 index 000000000000..a061453e72a4 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-hi/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"क्या आपको पासकी का इस्तेमाल करना है?"</string> + <string name="use_password_title" msgid="4655101984031246476">"क्या आपको पासवर्ड का इस्तेमाल करना है?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"खारिज करें"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"जारी रखें"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"साइन इन करने के विकल्प"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"साइन इन करने के विकल्प"</string> + <string name="provider_list_title" msgid="6803918216129492212">"साइन-इन क्रेडेंशियल मैनेज करें"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"साइन इन करने का कोई तरीका चुनें"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"कोई पासकी चुनें"</string> + <string name="choose_password_title" msgid="7610721820858017214">"कोई पासवर्ड चुनें"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"फ़ोन पर साइन इन करें"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"साइन-इन के लिए कोई क्रेडेंशियल मौजूद नहीं है"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"अनलॉक करने के लिए टैप करें"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-hr/strings.xml b/packages/CredentialManager/wear/res/values-hr/strings.xml new file mode 100644 index 000000000000..2adcad5bf0af --- /dev/null +++ b/packages/CredentialManager/wear/res/values-hr/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Upravitelj vjerodajnicama"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Želite li upotrijebiti pristupni ključ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Želite li upotrijebiti zaporku?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Odbaci"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Nastavi"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opcije prijave"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opcije prijave"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Upravljanje prijavama"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Odaberite prijavu"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Odaberite pristupni ključ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Odaberite zaporku"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prijavite se na telefonu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nema podataka o prijavi"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Dodirnite za otključavanje"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-hu/strings.xml b/packages/CredentialManager/wear/res/values-hu/strings.xml new file mode 100644 index 000000000000..f2cb4975ce4e --- /dev/null +++ b/packages/CredentialManager/wear/res/values-hu/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Tanúsítványkezelő"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Azonosítókulcsot szeretne használni?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Jelszót szeretne használni?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Elvetés"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Tovább"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Bejelentkezési lehetőségek"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Bejelentkezési lehetőségek"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Bejelentkezési adatok kezelése"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Bejelentkezési mód kiválasztása"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Azonosítókulcs kiválasztása"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Jelszó kiválasztása"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Bejelentkezés telefonon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nincsenek bejelentkezési adatok"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Koppintson ide a feloldáshoz"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-hy/strings.xml b/packages/CredentialManager/wear/res/values-hy/strings.xml new file mode 100644 index 000000000000..cea111294f36 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-hy/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Մուտքի տվյալների կառավարիչ"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Օգտագործե՞լ մուտքի բանալին"</string> + <string name="use_password_title" msgid="4655101984031246476">"Օգտագործե՞լ գաղտնաբառը"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Փակել"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Շարունակել"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Մուտք գործելու եղանակներ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Մուտք գործելու եղանակներ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Մուտքի կառավարում"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Ընտրեք մուտք գործելու եղանակը"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Ընտրեք մուտքի բանալին"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Ընտրեք գաղտնաբառը"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Մուտք գործել հեռախոսում"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Մուտքի տվյալներ չկան"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Հպեք ապակողպելու համար"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-in/strings.xml b/packages/CredentialManager/wear/res/values-in/strings.xml new file mode 100644 index 000000000000..2e527e253976 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-in/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Gunakan kunci sandi?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Gunakan sandi?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Tutup"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Lanjutkan"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opsi Login"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opsi Login"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Kelola login"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Pilih login"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Pilih kunci sandi"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Pilih sandi"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Login di ponsel"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Tidak ada info login"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Ketuk untuk membuka kunci"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-is/strings.xml b/packages/CredentialManager/wear/res/values-is/strings.xml new file mode 100644 index 000000000000..fcd9ce59ee9d --- /dev/null +++ b/packages/CredentialManager/wear/res/values-is/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Skilríkjastjórnun"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Nota aðgangslykil?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Nota aðgangsorð?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Hunsa"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Halda áfram"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Innskráningarkostir"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Innskráningarkostir"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Stjórna innskráningu"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Velja innskráningu"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Velja aðgangslykil"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Velja aðgangsorð"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Skráðu þig inn á síma"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Engar innskráningarupplýsingar"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Ýttu til að opna"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-it/strings.xml b/packages/CredentialManager/wear/res/values-it/strings.xml new file mode 100644 index 000000000000..0b398fda87b9 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-it/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Gestore delle credenziali"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vuoi utilizzare la passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vuoi utilizzare la password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ignora"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continua"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opzioni di accesso"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opzioni di accesso"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gestisci gli accessi"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Scegli un accesso"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Scegli passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Scegli password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Accedi dallo smartphone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nessun dato di accesso"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tocca per sbloccare"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-iw/strings.xml b/packages/CredentialManager/wear/res/values-iw/strings.xml new file mode 100644 index 000000000000..4fb203d43386 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-iw/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"להשתמש במפתח גישה?"</string> + <string name="use_password_title" msgid="4655101984031246476">"להשתמש בסיסמה?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"סגירה"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"המשך"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"אמצעי כניסה"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"אמצעי כניסה"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ניהול הכניסות"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"בחירת אמצעי כניסה"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"בחירת מפתח גישה"</string> + <string name="choose_password_title" msgid="7610721820858017214">"בחירת סיסמה"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"כניסה לחשבון בטלפון"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"אין פרטי כניסה"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"צריך להקיש כדי לבטל את הנעילה"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ja/strings.xml b/packages/CredentialManager/wear/res/values-ja/strings.xml new file mode 100644 index 000000000000..05a04e32a94d --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ja/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"認証情報マネージャー"</string> + <string name="use_passkey_title" msgid="716598039340757817">"パスキーを使用しますか?"</string> + <string name="use_password_title" msgid="4655101984031246476">"パスワードを使用しますか?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"閉じる"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"続行"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ログイン オプション"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ログイン オプション"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ログインの管理"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ログインの選択"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"パスキーの選択"</string> + <string name="choose_password_title" msgid="7610721820858017214">"パスワードの選択"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"スマートフォンでログイン"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ログイン情報はありません"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"タップしてロック解除"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ka/strings.xml b/packages/CredentialManager/wear/res/values-ka/strings.xml new file mode 100644 index 000000000000..2164d1ec7f6a --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ka/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ავტორიზაციის მონაცემების მმართველი"</string> + <string name="use_passkey_title" msgid="716598039340757817">"გსურთ წვდომის გასაღების გამოყენება?"</string> + <string name="use_password_title" msgid="4655101984031246476">"გსურთ პაროლის გამოყენება?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"დახურვა"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"გაგრძელება"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"სისტემაში შესვლის ვარიანტები"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"სისტემაში შესვლის ვარიანტები"</string> + <string name="provider_list_title" msgid="6803918216129492212">"სისტემაში შესვლის მართვა"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"სისტემაში შესვლის არჩევა"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"წვდომის გასაღების არჩევა"</string> + <string name="choose_password_title" msgid="7610721820858017214">"პაროლის არჩევა"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"სისტემაში შესვლა ტელეფონით"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"სისტემაში შესვლისთვის ინფორმაცია არ არის"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"შეეხეთ განსაბლოკად"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-kk/strings.xml b/packages/CredentialManager/wear/res/values-kk/strings.xml new file mode 100644 index 000000000000..ca6cd7db8998 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-kk/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Тіркелу деректері менеджері"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Кіру кілтін пайдалану керек пе?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Құпия сөзін пайдалану керек пе?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Жабу"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Жалғастыру"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Аккаунтқа кіру әдістері"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Аккаунтқа кіру әдістері"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Аккаунтқа кіру әрекеттерін басқару"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Аккаунтқа кіру жолын таңдаңыз"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Кіру кілтін таңдаңыз"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Құпия сөз таңдаңыз"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Аккаунтқа телефон арқылы кіру"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Аккаунтқа кіру ақпараты жоқ."</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Құлыпты ашу үшін түртіңіз."</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-km/strings.xml b/packages/CredentialManager/wear/res/values-km/strings.xml new file mode 100644 index 000000000000..9dcaeb87c891 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-km/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ប្រើកូដសម្ងាត់ឬ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"ប្រើពាក្យសម្ងាត់ឬ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ច្រានចោល"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"បន្ត"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ជម្រើសចូលគណនី"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ជម្រើសចូលគណនី"</string> + <string name="provider_list_title" msgid="6803918216129492212">"គ្រប់គ្រងការចូលគណនី"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ជ្រើសរើសការចូលគណនី"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"ជ្រើសរើសកូដសម្ងាត់"</string> + <string name="choose_password_title" msgid="7610721820858017214">"ជ្រើសរើសពាក្យសម្ងាត់"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ចូលនៅលើទូរសព្ទ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"គ្មានព័ត៌មានចូលគណនីទេ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ចុចដើម្បីដោះសោ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-kn/strings.xml b/packages/CredentialManager/wear/res/values-kn/strings.xml new file mode 100644 index 000000000000..fc2f65eecf22 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-kn/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ಕ್ರೆಡೆನ್ಶಿಯಲ್ ಮ್ಯಾನೇಜರ್"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ಪಾಸ್ಕೀ ಅನ್ನು ಬಳಸಬೇಕೆ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಬಳಸಬೇಕೆ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ವಜಾಗೊಳಿಸಿ"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ಮುಂದುವರಿಸಿ"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ಸೈನ್ ಇನ್ ಆಯ್ಕೆಗಳು"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ಸೈನ್ ಇನ್ ಆಯ್ಕೆಗಳು"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ಸೈನ್-ಇನ್ಗಳನ್ನು ನಿರ್ವಹಿಸಿ"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ಸೈನ್-ಇನ್ ಅನ್ನು ಆರಿಸಿ"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"ಪಾಸ್ಕೀ ಅನ್ನು ಆರಿಸಿ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಆರಿಸಿ"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ಫೋನ್ನಲ್ಲಿ ಸೈನ್ ಇನ್ ಮಾಡಿ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ಯಾವುದೇ ಸೈನ್ ಇನ್ ಮಾಹಿತಿಯಿಲ್ಲ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ಅನ್ಲಾಕ್ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ko/strings.xml b/packages/CredentialManager/wear/res/values-ko/strings.xml new file mode 100644 index 000000000000..a07fb2ab6e21 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ko/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"인증 관리자"</string> + <string name="use_passkey_title" msgid="716598039340757817">"패스키를 사용하시겠습니까?"</string> + <string name="use_password_title" msgid="4655101984031246476">"비밀번호를 사용하시겠습니까?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"닫기"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"계속"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"로그인 옵션"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"로그인 옵션"</string> + <string name="provider_list_title" msgid="6803918216129492212">"로그인 정보 관리"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"로그인 선택"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"패스키 선택"</string> + <string name="choose_password_title" msgid="7610721820858017214">"비밀번호 선택"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"휴대전화에서 로그인하기"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"로그인 정보 없음"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"탭하여 잠금 해제하기"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ky/strings.xml b/packages/CredentialManager/wear/res/values-ky/strings.xml new file mode 100644 index 000000000000..418d2f19dea0 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ky/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Киргизүүчү ачкычты колдоносузбу?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Сырсөздү колдоносузбу?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Жабуу"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Улантуу"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Аккаунтка кирүү параметрлери"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Аккаунтка кирүү параметрлери"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Кирүү параметрлерин тескөө"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Кирүүнү тандаңыз"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Киргизүүчү ачкычты тандаңыз"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Сырсөздү тандаңыз"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Аккаунтка телефондон кирүү"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Аккаунтка кирүү маалыматы жок"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Кулпусун ачуу үчүн таптаңыз"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-lo/strings.xml b/packages/CredentialManager/wear/res/values-lo/strings.xml new file mode 100644 index 000000000000..c48f88fa921e --- /dev/null +++ b/packages/CredentialManager/wear/res/values-lo/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ຕົວຈັດການຂໍ້ມູນການເຂົ້າສູ່ລະບົບ"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ໃຊ້ກະແຈຜ່ານບໍ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"ໃຊ້ລະຫັດຜ່ານບໍ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ປິດໄວ້"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ສືບຕໍ່"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ຕົວເລືອກການເຂົ້າສູ່ລະບົບ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ຕົວເລືອກການເຂົ້າສູ່ລະບົບ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ຈັດການການເຂົ້າສູ່ລະບົບ"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ເລືອກການເຂົ້າສູ່ລະບົບ"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"ເລືອກກະແຈຜ່ານ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"ເລືອກລະຫັດຜ່ານ"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ເຂົ້າສູ່ລະບົບຢູ່ໂທລະສັບ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ບໍ່ມີຂໍ້ມູນການເຂົ້າສູ່ລະບົບ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ແຕະເພື່ອປົດລັອກ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-lt/strings.xml b/packages/CredentialManager/wear/res/values-lt/strings.xml new file mode 100644 index 000000000000..b313e874d341 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-lt/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Prisijungimo duomenų tvarkytuvė"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Naudoti prieigos raktą?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Naudoti slaptažodį?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Atsisakyti"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Tęsti"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Prisijungimo parinktys"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Prisijungimo parinktys"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Prisijungimo informacijos tvarkymas"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Pasirinkti prisijungimą"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Pasirinkite prieigos raktus"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Pasirinkite slaptažodį"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prisijungti telefone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Prisijungimo informacijos nėra"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Palieskite, kad atrakintumėte"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-lv/strings.xml b/packages/CredentialManager/wear/res/values-lv/strings.xml new file mode 100644 index 000000000000..efeedec1b837 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-lv/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Akreditācijas datu pārvaldnieks"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vai izmantot piekļuves atslēgu?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vai izmantot paroli?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Nerādīt"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Turpināt"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Pierakstīšanās opcijas"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Pierakstīšanās opcijas"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Pierakstīšanās informācijas pārvaldība"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Izvēlieties pierakstīšanās veidu"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Izvēlieties piekļuves atslēgu"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Izvēlieties paroli"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Pierakstīties tālrunī"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nav pierakstīšanās informācijas"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Pieskarieties, lai atbloķētu"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-mk/strings.xml b/packages/CredentialManager/wear/res/values-mk/strings.xml new file mode 100644 index 000000000000..a4d807388700 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-mk/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Управување со акредитиви"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Да се користи криптографски клуч?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Да се користи лозинка?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Отфрли"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Продолжи"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Опции за најавување"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Опции за најавување"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Управувајте со најавувањата"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Изберете најавување"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Изберете криптографски клуч"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Изберете лозинка"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Најавете се на телефонот"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Нема податоци за најавување"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Допрете за да отклучите"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ml/strings.xml b/packages/CredentialManager/wear/res/values-ml/strings.xml new file mode 100644 index 000000000000..a93514809c57 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ml/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ക്രെഡൻഷ്യൽ മാനേജർ"</string> + <string name="use_passkey_title" msgid="716598039340757817">"പാസ്കീ ഉപയോഗിക്കുക"</string> + <string name="use_password_title" msgid="4655101984031246476">"പാസ്വേഡ് ഉപയോഗിക്കണോ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ഡിസ്മിസ് ചെയ്യുക"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"തുടരുക"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"സൈൻ ഇൻ ചെയ്യൽ ഓപ്ഷനുകൾ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"സൈൻ ഇൻ ചെയ്യൽ ഓപ്ഷനുകൾ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"സൈൻ ഇൻ ചെയ്യലുകൾ മാനേജ് ചെയ്യുക"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ഒരു സൈൻ-ഇൻ തിരഞ്ഞെടുക്കുക"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"പാസ്കീ തിരഞ്ഞെടുക്കുക"</string> + <string name="choose_password_title" msgid="7610721820858017214">"പാസ്കീ തിരഞ്ഞെടുക്കുക"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ഫോണിൽ സൈൻ ഇൻ ചെയ്യുക"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"സൈൻ ഇൻ വിവരങ്ങളൊന്നുമില്ല"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"അൺലോക്ക് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-mn/strings.xml b/packages/CredentialManager/wear/res/values-mn/strings.xml new file mode 100644 index 000000000000..b5772684102c --- /dev/null +++ b/packages/CredentialManager/wear/res/values-mn/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Мандат үнэмлэхийн менежер"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Нэвтрэх түлхүүр ашиглах уу?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Нууц үг ашиглах уу?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Хаах"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Үргэлжлүүлэх"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Нэвтрэх сонголт"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Нэвтрэх сонголт"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Нэвтрэх сонголтыг удирдах"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Нэвтрэх сонголт хийх"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Нэвтрэх түлхүүр сонгох"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Нууц үг сонгох"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Утсан дээр нэвтрэх"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ямар ч нэвтрэх мэдээлэл байхгүй"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Түгжээг тайлахын тулд товшино уу"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-mr/strings.xml b/packages/CredentialManager/wear/res/values-mr/strings.xml new file mode 100644 index 000000000000..e966d308ec21 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-mr/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"क्रेडेंशियल व्यवस्थापक"</string> + <string name="use_passkey_title" msgid="716598039340757817">"पासकी वापरायची आहे का?"</string> + <string name="use_password_title" msgid="4655101984031246476">"पासवर्ड वापरायचा आहे का?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"डिसमिस करा"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"पुढे सुरू ठेवा"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"साइन-इन पर्याय"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"साइन-इन पर्याय"</string> + <string name="provider_list_title" msgid="6803918216129492212">"साइन-इन व्यवस्थापित करा"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"साइन इन निवडा"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"पासकी निवडा"</string> + <string name="choose_password_title" msgid="7610721820858017214">"पासवर्ड निवडा"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"फोनवर साइन इन करा"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"साइन-इनची कोणतीही माहिती नाही"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"अनलॉक करण्यासाठी टॅप करा"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ms/strings.xml b/packages/CredentialManager/wear/res/values-ms/strings.xml new file mode 100644 index 000000000000..772bf194c77c --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ms/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Pengurus Bukti Kelayakan"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Gunakan kunci laluan?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Gunakan kata laluan?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ketepikan"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Teruskan"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Pilihan Log Masuk"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Pilihan Log Masuk"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Urus log masuk"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Pilih log masuk"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Pilih kunci laluan"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Pilih kata laluan"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Log masuk pada telefon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Tiada maklumat log masuk"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Ketik untuk membuka kunci"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-my/strings.xml b/packages/CredentialManager/wear/res/values-my/strings.xml new file mode 100644 index 000000000000..7c38b9ef40a8 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-my/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"လျှို့ဝှက်ကီး သုံးမလား။"</string> + <string name="use_password_title" msgid="4655101984031246476">"စကားဝှက် သုံးမလား။"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ပယ်ရန်"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ရှေ့ဆက်ရန်"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"လက်မှတ်ထိုးဝင်နည်းများ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"လက်မှတ်ထိုးဝင်နည်းများ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"လက်မှတ်ထိုးဝင်မှုများ စီမံခြင်း"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"လက်မှတ်ထိုးဝင်မှု ရွေးခြင်း"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"လျှို့ဝှက်ကီးရွေးခြင်း"</string> + <string name="choose_password_title" msgid="7610721820858017214">"စကားဝှက်ရွေးခြင်း"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ဖုန်းတွင် လက်မှတ်ထိုးဝင်ရန်"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"လက်မှတ်ထိုးဝင်ရန် အချက်အလက် မရှိပါ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ဖွင့်ရန် တို့ပါ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-nb/strings.xml b/packages/CredentialManager/wear/res/values-nb/strings.xml new file mode 100644 index 000000000000..4b62b0e31491 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-nb/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Legitimasjonsbehandling"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vil du bruke passnøkkel?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vil du bruke passord?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Lukk"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Fortsett"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Påloggingvalg"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Påloggingsvalg"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Administrer pålogginger"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Velg en pålogging"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Velg passnøkkel"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Velg passord"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Logg på med telefonen"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ingen påloggingsinformasjon"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Trykk for å låse opp"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ne/strings.xml b/packages/CredentialManager/wear/res/values-ne/strings.xml new file mode 100644 index 000000000000..de92acd419c1 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ne/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"क्रिडेन्सियल म्यानेजर"</string> + <string name="use_passkey_title" msgid="716598039340757817">"पासकी प्रयोग गर्ने हो?"</string> + <string name="use_password_title" msgid="4655101984031246476">"पासवर्ड प्रयोग गर्ने हो?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"खारेज गर्नुहोस्"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"जारी राख्नुहोस्"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"साइन इनसम्बन्धी विकल्पहरू"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"साइन इनसम्बन्धी विकल्पहरू"</string> + <string name="provider_list_title" msgid="6803918216129492212">"साइन इनसम्बन्धी जानकारी व्यवस्थापन गर्नुहोस्"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"साइन इन गर्ने तरिका छनौट गर्नुहोस्"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"पासकी छनौट गर्नुहोस्"</string> + <string name="choose_password_title" msgid="7610721820858017214">"पासवर्ड छनौट गर्नुहोस्"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"फोनमा साइन इन गर्नुहोस्"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"साइन इनसम्बन्धी जानकारी उपलब्ध छैन"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"अनलक गर्न ट्याप गर्नुहोस्"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-nl/strings.xml b/packages/CredentialManager/wear/res/values-nl/strings.xml new file mode 100644 index 000000000000..1a15ead6abd2 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-nl/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Manager Inloggegevens"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Toegangssleutel gebruiken?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Wachtwoord gebruiken?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Sluiten"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Doorgaan"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Inlogopties"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Inlogopties"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Logins beheren"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Een login kiezen"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Toegangssleutel kiezen"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Wachtwoord kiezen"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Inloggen op telefoon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Geen inloggegevens"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tik om te ontgrendelen"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-or/strings.xml b/packages/CredentialManager/wear/res/values-or/strings.xml new file mode 100644 index 000000000000..00270de6e26f --- /dev/null +++ b/packages/CredentialManager/wear/res/values-or/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"କ୍ରେଡେନସିଆଲ ମେନେଜର"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ପାସକୀ ବ୍ୟବହାର କରିବେ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"ପାସୱାର୍ଡ ବ୍ୟବହାର କରିବେ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ଖାରଜ କରନ୍ତୁ"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ଜାରି ରଖନ୍ତୁ"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ସାଇନ-ଇନ ବିକଳ୍ପଗୁଡ଼ିକ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ସାଇନ-ଇନ ବିକଳ୍ପଗୁଡ଼ିକ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ସାଇନ-ଇନ ପରିଚାଳନା କରନ୍ତୁ"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ଏକ ସାଇନ ଇନ ବାଛନ୍ତୁ"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"ପାସକୀ ବାଛନ୍ତୁ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"ପାସୱାର୍ଡ ବାଛନ୍ତୁ"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ଫୋନରେ ସାଇନ ଇନ କରନ୍ତୁ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"କୌଣସି ସାଇନ-ଇନ ସୂଚନା ନାହିଁ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ଅନଲକ କରିବାକୁ ଟାପ କରନ୍ତୁ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-pa/strings.xml b/packages/CredentialManager/wear/res/values-pa/strings.xml new file mode 100644 index 000000000000..a1ba4fd80a6e --- /dev/null +++ b/packages/CredentialManager/wear/res/values-pa/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"ਕ੍ਰੀਡੈਂਸ਼ੀਅਲ ਪ੍ਰਬੰਧਕ"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ਕੀ ਪਾਸਕੀ ਨੂੰ ਵਰਤਣਾ ਹੈ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"ਕੀ ਪਾਸਵਰਡ ਨੂੰ ਵਰਤਣਾ ਹੈ?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ਖਾਰਜ ਕਰੋ"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ਜਾਰੀ ਰੱਖੋ"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ਸਾਈਨ-ਇਨ ਵਿਕਲਪ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ਸਾਈਨ-ਇਨ ਵਿਕਲਪ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"ਸਾਈਨ-ਇਨਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"ਸਾਈਨ-ਇਨ ਕਰਨ ਦਾ ਵਿਕਲਪ ਚੁਣੋ"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"ਪਾਸਕੀ ਚੁਣੋ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"ਪਾਸਵਰਡ ਚੁਣੋ"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ਫ਼ੋਨ \'ਤੇ ਸਾਈਨ-ਇਨ ਕਰੋ"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ਕੋਈ ਸਾਈਨ-ਇਨ ਜਾਣਕਾਰੀ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"ਅਣਲਾਕ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-pl/strings.xml b/packages/CredentialManager/wear/res/values-pl/strings.xml new file mode 100644 index 000000000000..345a24a617e1 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-pl/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Użyć klucza dostępu?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Użyć hasła?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Zamknij"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Dalej"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opcje logowania"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opcje logowania"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Zarządzanie danymi logowania"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Wybierz dane logowania"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Wybierz klucz dostępu"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Wybierz hasło"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Zaloguj się na telefonie"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Brak danych logowania"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Dotknij, aby odblokować"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-pt-rPT/strings.xml b/packages/CredentialManager/wear/res/values-pt-rPT/strings.xml new file mode 100644 index 000000000000..acec24c31a41 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-pt-rPT/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Gestor de credenciais"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Usar a chave de acesso?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Usar a palavra-passe?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ignorar"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuar"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opções de início de sessão"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opções de início de sessão"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Faça a gestão dos inícios de sessão"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Escolha um início de sessão"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Escolha a chave de acesso"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Escolha a palavra-passe"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Iniciar sessão no telemóvel"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Sem informações de início de sessão"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tocar para desbloquear"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-pt/strings.xml b/packages/CredentialManager/wear/res/values-pt/strings.xml new file mode 100644 index 000000000000..c451b256b078 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-pt/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Usar chave de acesso?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Usar senha?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Dispensar"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuar"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opções de login"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opções de login"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gerenciar logins"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Escolher opção de login"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Escolher chave de acesso"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Escolher senha"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Fazer login no smartphone"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nenhuma informação de login"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Toque para desbloquear"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ro/strings.xml b/packages/CredentialManager/wear/res/values-ro/strings.xml new file mode 100644 index 000000000000..adb45ec28c6a --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ro/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Folosești cheia de acces?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Folosești parola?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Închide"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Continuă"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opțiuni de conectare"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opțiuni de conectare"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Gestionează datele de conectare"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Alege setul de date de conectare"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Alege cheia de acces"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Alege parola"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Conectează-te pe telefon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Fără informații de conectare"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Atinge pentru a debloca"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ru/strings.xml b/packages/CredentialManager/wear/res/values-ru/strings.xml new file mode 100644 index 000000000000..692e7a7798b9 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ru/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Менеджер учетных данных"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Использовать ключ доступа?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Использовать пароль?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Закрыть"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Продолжить"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Способы входа"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Способы входа"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Управление входом"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Выберите способ входа"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Выберите ключ доступа"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Выберите пароль"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Войти в аккаунт на телефоне"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Нет данных для входа"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Разблокировать"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-si/strings.xml b/packages/CredentialManager/wear/res/values-si/strings.xml new file mode 100644 index 000000000000..0849e8eeed34 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-si/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"අක්තපත්ර කළමනාකරු"</string> + <string name="use_passkey_title" msgid="716598039340757817">"මුරයතුර භාවිත කරන්න ද?"</string> + <string name="use_password_title" msgid="4655101984031246476">"මුරපදය භාවිත කරන්න ද?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"අස් කරන්න"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ඉදිරියට යන්න"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"පුරනය වීමේ විකල්ප"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"පුරනය වීමේ විකල්ප"</string> + <string name="provider_list_title" msgid="6803918216129492212">"පුරනය වීම් කළමනාකරණය කරන්න"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"පුරනය වීමක් තෝරා ගන්න"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"මුරයතුර තෝරා ගන්න"</string> + <string name="choose_password_title" msgid="7610721820858017214">"මුරපදය තෝරා ගන්න"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"දුරකථනයෙන් පුරන්න"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"පුරනය වීමේ තතු නැත"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"අගුළු හැරීමට තට්ටු කරන්න"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sk/strings.xml b/packages/CredentialManager/wear/res/values-sk/strings.xml new file mode 100644 index 000000000000..fa40ec651f30 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sk/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Správca prihlasovacích údajov"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Chcete použiť prístupový kľúč?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Chcete použiť heslo?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Zavrieť"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Pokračovať"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Možnosti prihlásenia"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Možnosti prihlásenia"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Správa prihlasovacích údajov"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Vyberte prihlásenie"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Vyberte prístupový kľúč"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Vyberte heslo"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prihlásiť sa v telefóne"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Žiadne prihlasovacie údaje"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Odomknite klepnutím"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sl/strings.xml b/packages/CredentialManager/wear/res/values-sl/strings.xml new file mode 100644 index 000000000000..b76165edb907 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sl/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Upravitelj poverilnic"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Želite uporabiti ključ za dostop?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Želite uporabiti geslo?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Opusti"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Naprej"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Možnosti prijave"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Možnosti prijave"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Upravljanje podatkov za prijavo"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Izbira prijave"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Izbira ključa za dostop"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Izbira gesla"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Prijava v telefonu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Ni nobenih podatkov za prijavo"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Dotaknite se, da odklenete"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sq/strings.xml b/packages/CredentialManager/wear/res/values-sq/strings.xml new file mode 100644 index 000000000000..246cd0b6308d --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sq/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Menaxheri i kredencialeve"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Të përdoret çelësi i kalimit?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Të përdoret fjalëkalimi?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Hiq"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Vazhdo"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Opsionet për identifikimin"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Opsionet për identifikimin"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Menaxho identifikimet"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Zgjidh një identifikim"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Zgjidh çelësin e kalimit"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Zgjidh fjalëkalimin"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Identifikohu në telefon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Nuk ka informacione për identifikimin"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Trokit për të shkyçur"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sr/strings.xml b/packages/CredentialManager/wear/res/values-sr/strings.xml new file mode 100644 index 000000000000..97cdcbcd99ca --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sr/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Менаџер акредитива"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Желите да користите приступни кључ?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Желите да користите лозинку?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Одбаци"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Настави"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Опције за пријављивање"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Опције за пријављивање"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Управљајте пријављивањима"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Одаберите пријављивање"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Одаберите приступни кључ"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Одаберите лозинку"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Пријавите се на телефону"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Нема података за пријављивање"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Додирните да бисте откључали"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sv/strings.xml b/packages/CredentialManager/wear/res/values-sv/strings.xml new file mode 100644 index 000000000000..0d4d12f967d5 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sv/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Vill du använda nyckeln?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Vill du använda lösenordet?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Stäng"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Fortsätt"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Inloggningsalternativ"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Inloggningsalternativ"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Hantera inloggningar"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Välj en inloggning"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Välj nyckel"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Välj lösenord"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Logga in på telefon"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Inga inloggningsuppgifter"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Tryck för att låsa upp"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-sw/strings.xml b/packages/CredentialManager/wear/res/values-sw/strings.xml new file mode 100644 index 000000000000..509c404c7926 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-sw/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Kidhibiti cha Vitambulisho"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Ungependa kutumia ufunguo wa siri?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Ungependa kutumia nenosiri?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Ondoa"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Endelea"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Chaguo za Kuingia katika Akaunti"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Chaguo za Kuingia katika Akaunti"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Dhibiti michakato ya kuingia katika akaunti"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Chagua mbinu ya kuingia katika akaunti"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Chagua ufunguo wa siri"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Chagua nenosiri"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Ingia katika akaunti kwenye simu"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Hakuna maelezo ya kuingia katika akaunti"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Gusa ili ufungue"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ta/strings.xml b/packages/CredentialManager/wear/res/values-ta/strings.xml new file mode 100644 index 000000000000..9f88c81b45c0 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ta/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"அனுமதிச் சான்று நிர்வாகி"</string> + <string name="use_passkey_title" msgid="716598039340757817">"கடவுச்சாவியைப் பயன்படுத்தவா?"</string> + <string name="use_password_title" msgid="4655101984031246476">"கடவுச்சொல்லைப் பயன்படுத்தவா?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"மூடு"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"தொடர்க"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"உள்நுழைவு விருப்பங்கள்"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"உள்நுழைவு விருப்பங்கள்"</string> + <string name="provider_list_title" msgid="6803918216129492212">"உள்நுழைவுகளை நிர்வகித்தல்"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"உள்நுழைவைத் தேர்வுசெய்தல்"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"கடவுச்சாவியைத் தேர்வுசெய்தல்"</string> + <string name="choose_password_title" msgid="7610721820858017214">"கடவுச்சொல்லைத் தேர்வுசெய்தல்"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"மொபைலில் உள்நுழைக"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"உள்நுழைவுத் தகவல் இல்லை"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"அன்லாக் செய்ய தட்டவும்"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-te/strings.xml b/packages/CredentialManager/wear/res/values-te/strings.xml new file mode 100644 index 000000000000..086b109b1933 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-te/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"సైన్-ఇన్ మేనేజర్"</string> + <string name="use_passkey_title" msgid="716598039340757817">"పాస్-కీని ఉపయోగిస్తారా?"</string> + <string name="use_password_title" msgid="4655101984031246476">"పాస్వర్డ్ను ఉపయోగిస్తారా?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"విస్మరించండి"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"కొనసాగించండి"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"సైన్ ఇన్ ఆప్షన్లు"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"సైన్ ఇన్ ఆప్షన్లు"</string> + <string name="provider_list_title" msgid="6803918216129492212">"సైన్ ఇన్లను మేనేజ్ చేయండి"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"సైన్ ఇన్ను ఎంచుకోండి"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"పాస్-కీని ఎంచుకోండి"</string> + <string name="choose_password_title" msgid="7610721820858017214">"పాస్వర్డ్ను ఎంచుకోండి"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ఫోన్లో సైన్ ఇన్ చేయండి"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"సైన్ ఇన్ సమాచారం ఏదీ లేదు"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"అన్లాక్ చేయడానికి ట్యాప్ చేయండి"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-th/strings.xml b/packages/CredentialManager/wear/res/values-th/strings.xml new file mode 100644 index 000000000000..5d4f7998378e --- /dev/null +++ b/packages/CredentialManager/wear/res/values-th/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"ใช้พาสคีย์ไหม"</string> + <string name="use_password_title" msgid="4655101984031246476">"ใช้รหัสผ่านไหม"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"ปิด"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"ต่อไป"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"ตัวเลือกการลงชื่อเข้าใช้"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"ตัวเลือกการลงชื่อเข้าใช้"</string> + <string name="provider_list_title" msgid="6803918216129492212">"จัดการการลงชื่อเข้าใช้"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"เลือกการลงชื่อเข้าใช้"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"เลือกพาสคีย์"</string> + <string name="choose_password_title" msgid="7610721820858017214">"เลือกรหัสผ่าน"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"ลงชื่อเข้าใช้บนโทรศัพท์"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"ไม่มีข้อมูลการลงชื่อเข้าใช้"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"แตะเพื่อปลดล็อก"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-tl/strings.xml b/packages/CredentialManager/wear/res/values-tl/strings.xml new file mode 100644 index 000000000000..bd3e67238882 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-tl/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Gamitin ang passkey?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Gamitin ang password?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"I-dismiss"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Magpatuloy"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Mga Opsyon sa Pag-sign in"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Mga Opsyon sa Pag-sign in"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Pamahalaan ang mga pag-sign in"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Pumili ng pag-sign in"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Pumili ng passkey"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Pumili ng password"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Mag-sign in sa telepono"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Walang impormasyon sa pag-sign in"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"I-tap para i-unlock"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-tr/strings.xml b/packages/CredentialManager/wear/res/values-tr/strings.xml new file mode 100644 index 000000000000..a4f512bb31e0 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-tr/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Kimlik Bilgisi Yöneticisi"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Geçiş anahtarı kullanılsın mı?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Şifre kullanılsın mı?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Kapat"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Devam"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Oturum açma seçenekleri"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Oturum açma seçenekleri"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Oturum açma bilgilerini yönetin"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Oturum açma bilgilerini seçin"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Geçiş anahtarı seçin"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Şifre seçin"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Telefonda oturum açın"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Oturum açma bilgisi yok"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Kilidi açmak için dokunun"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-uk/strings.xml b/packages/CredentialManager/wear/res/values-uk/strings.xml new file mode 100644 index 000000000000..78b4db3f64fd --- /dev/null +++ b/packages/CredentialManager/wear/res/values-uk/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Менеджер облікових даних"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Використати ключ доступу?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Використати пароль?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Закрити"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Продовжити"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Способи входу"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Способи входу"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Керування даними для входу"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Виберіть спосіб входу"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Виберіть ключ доступу"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Виберіть пароль"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Увійти на телефоні"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Немає даних для входу"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Натисніть, щоб розблокувати"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-ur/strings.xml b/packages/CredentialManager/wear/res/values-ur/strings.xml new file mode 100644 index 000000000000..60bf163a1a5f --- /dev/null +++ b/packages/CredentialManager/wear/res/values-ur/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"اسناد مینیجر"</string> + <string name="use_passkey_title" msgid="716598039340757817">"پاس کی کا استعمال کریں؟"</string> + <string name="use_password_title" msgid="4655101984031246476">"پاس ورڈ کا استعمال کریں؟"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"برخاست کریں"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"جاری رکھیں"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"سائن ان کے اختیارات"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"سائن ان کے اختیارات"</string> + <string name="provider_list_title" msgid="6803918216129492212">"سائن انز کا نظم کریں"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"سائن ان کا انتخاب کریں"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"پاس کی کا انتخاب کریں"</string> + <string name="choose_password_title" msgid="7610721820858017214">"پاس ورڈ منتخب کریں"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"فون پر سائن ان کریں"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"سائن ان کی کوئی معلومات نہیں"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"غیر مقفل کرنے کیلئے تھپتھپائیں"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-uz/strings.xml b/packages/CredentialManager/wear/res/values-uz/strings.xml new file mode 100644 index 000000000000..3b630c792032 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-uz/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Hisob maʼlumotlari boshqaruvi"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Kirish kaliti ishlatilsinmi?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Parol ishlatilsinmi?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Yopish"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Davom etish"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Kirish parametrlari"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Kirish parametrlari"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Kirishni boshqarish"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Kirish axborotini tanlash"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Kalit tanlash"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Parol tanlash"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Telefonda hisobga kirish"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Kirish axboroti topilmadi"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Qulfni ochish uchun bosing"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-vi/strings.xml b/packages/CredentialManager/wear/res/values-vi/strings.xml new file mode 100644 index 000000000000..476d9bcaf9c8 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-vi/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Trình quản lý thông tin xác thực"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Dùng khoá truy cập?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Dùng mật khẩu?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Đóng"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Tiếp tục"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Phương thức đăng nhập"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Phương thức đăng nhập"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Quản lý thông tin đăng nhập"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Chọn một phương thức đăng nhập"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Chọn khoá truy cập"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Chọn mật khẩu"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Đăng nhập trên điện thoại"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Không có thông tin đăng nhập"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Nhấn để mở khoá"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-zh-rCN/strings.xml b/packages/CredentialManager/wear/res/values-zh-rCN/strings.xml new file mode 100644 index 000000000000..15f0de608a4b --- /dev/null +++ b/packages/CredentialManager/wear/res/values-zh-rCN/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"要使用通行密钥吗?"</string> + <string name="use_password_title" msgid="4655101984031246476">"要使用密码吗?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"关闭"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"继续"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"登录方式"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"登录方式"</string> + <string name="provider_list_title" msgid="6803918216129492212">"管理登录方式"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"选择登录方式"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"选择通行密钥"</string> + <string name="choose_password_title" msgid="7610721820858017214">"选择密码"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"在手机上登录"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"无登录信息"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"点按即可解锁"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-zh-rHK/strings.xml b/packages/CredentialManager/wear/res/values-zh-rHK/strings.xml new file mode 100644 index 000000000000..4e0484918baf --- /dev/null +++ b/packages/CredentialManager/wear/res/values-zh-rHK/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"憑證管理工具"</string> + <string name="use_passkey_title" msgid="716598039340757817">"要使用密鑰嗎?"</string> + <string name="use_password_title" msgid="4655101984031246476">"要使用密碼嗎?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"關閉"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"繼續"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"登入方式"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"登入方式"</string> + <string name="provider_list_title" msgid="6803918216129492212">"管理登入方式"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"選擇登入憑證"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"選擇密鑰"</string> + <string name="choose_password_title" msgid="7610721820858017214">"選擇密碼"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"在手機上登入"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"沒有登入資料"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"輕按即可解鎖"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-zh-rTW/strings.xml b/packages/CredentialManager/wear/res/values-zh-rTW/strings.xml new file mode 100644 index 000000000000..82149e3b4a64 --- /dev/null +++ b/packages/CredentialManager/wear/res/values-zh-rTW/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Credential Manager"</string> + <string name="use_passkey_title" msgid="716598039340757817">"要使用密碼金鑰嗎?"</string> + <string name="use_password_title" msgid="4655101984031246476">"要使用密碼嗎?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"關閉"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"繼續"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"登入選項"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"登入選項"</string> + <string name="provider_list_title" msgid="6803918216129492212">"管理登入憑證"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"選擇登入憑證"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"選擇密碼金鑰"</string> + <string name="choose_password_title" msgid="7610721820858017214">"選擇密碼"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"在手機上登入"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"沒有登入資訊"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"輕觸即可解鎖"</string> +</resources> diff --git a/packages/CredentialManager/wear/res/values-zu/strings.xml b/packages/CredentialManager/wear/res/values-zu/strings.xml new file mode 100644 index 000000000000..c7fd5a8812ed --- /dev/null +++ b/packages/CredentialManager/wear/res/values-zu/strings.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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. + --> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="app_name" msgid="7384524142163511792">"Umphathi wokuqinisekisa"</string> + <string name="use_passkey_title" msgid="716598039340757817">"Sebenzisa ukhiye wokudlula?"</string> + <string name="use_password_title" msgid="4655101984031246476">"Sebenzisa iphasiwedi?"</string> + <string name="dialog_dismiss_button" msgid="989567669882005067">"Cashisa"</string> + <string name="dialog_continue_button" msgid="8630290044077052145">"Qhubeka"</string> + <string name="dialog_sign_in_options_button" msgid="448002958902615054">"Okungakhethwa kukho kokungena ngemvume"</string> + <string name="sign_in_options_title" msgid="6720572645638986680">"Okungakhethwa kukho kokungena ngemvume"</string> + <string name="provider_list_title" msgid="6803918216129492212">"Phatha ukungena ngemvume"</string> + <string name="choose_sign_in_title" msgid="3616025924746872202">"Khetha ukungena ngemvume"</string> + <string name="choose_passkey_title" msgid="8459270617632817465">"Khetha ukhiye wokudlula"</string> + <string name="choose_password_title" msgid="7610721820858017214">"Khetha iphasiwedi"</string> + <string name="sign_in_on_phone_button" msgid="7618621977586522403">"Ngena ngemvume kufoni"</string> + <string name="locked_credential_entry_label_subtext_no_sign_in" msgid="1733094937495140605">"Alukho ulwazi lokungena ngemvume"</string> + <string name="locked_credential_entry_label_subtext_tap_to_unlock" msgid="4320941096211904568">"Thepha ukuze uvule"</string> +</resources> diff --git a/packages/CtsShim/build/Android.bp b/packages/CtsShim/build/Android.bp index 5b3d47e9f74d..bd892637a5eb 100644 --- a/packages/CtsShim/build/Android.bp +++ b/packages/CtsShim/build/Android.bp @@ -55,7 +55,7 @@ android_app { ], } -genrule { +java_genrule { name: "generate_priv_manifest", srcs: [ "shim_priv/AndroidManifest.xml", @@ -169,7 +169,7 @@ android_app { min_sdk_version: "24", } -genrule { +java_genrule { name: "generate_shim_manifest", srcs: [ "shim/AndroidManifest.xml", diff --git a/packages/EasterEgg/src/com/android/egg/paint/PaintActivity.java b/packages/EasterEgg/src/com/android/egg/paint/PaintActivity.java index ac47fbda09c6..391b16d38f0f 100644 --- a/packages/EasterEgg/src/com/android/egg/paint/PaintActivity.java +++ b/packages/EasterEgg/src/com/android/egg/paint/PaintActivity.java @@ -23,7 +23,6 @@ import static android.view.MotionEvent.ACTION_UP; import android.app.Activity; import android.content.res.Configuration; -import android.graphics.Bitmap; import android.graphics.Color; import android.os.Bundle; import android.view.MotionEvent; @@ -38,9 +37,7 @@ import android.widget.Magnifier; import com.android.egg.R; -import java.util.ArrayList; import java.util.Arrays; -import java.util.Collections; import java.util.stream.IntStream; public class PaintActivity extends Activity { @@ -60,31 +57,28 @@ public class PaintActivity extends Activity { private View.OnClickListener buttonHandler = new View.OnClickListener() { @Override public void onClick(View view) { - switch (view.getId()) { - case R.id.btnBrush: - view.setSelected(true); - hideToolbar(colors); - toggleToolbar(brushes); - break; - case R.id.btnColor: - view.setSelected(true); - hideToolbar(brushes); - toggleToolbar(colors); - break; - case R.id.btnClear: - painting.clear(); - break; - case R.id.btnSample: - sampling = true; - view.setSelected(true); - break; - case R.id.btnZen: - painting.setZenMode(!painting.getZenMode()); - view.animate() - .setStartDelay(200) - .setInterpolator(new OvershootInterpolator()) - .rotation(painting.getZenMode() ? 0f : 90f); - break; + // With non final fields in the R class we can't switch on the + // id since the case values are no longer constants. + int viewId = view.getId(); + if (viewId == R.id.btnBrush) { + view.setSelected(true); + hideToolbar(colors); + toggleToolbar(brushes); + } else if (viewId == R.id.btnColor) { + view.setSelected(true); + hideToolbar(brushes); + toggleToolbar(colors); + } else if (viewId == R.id.btnClear) { + painting.clear(); + } else if (viewId == R.id.btnSample) { + sampling = true; + view.setSelected(true); + } else if (viewId == R.id.btnZen) { + painting.setZenMode(!painting.getZenMode()); + view.animate() + .setStartDelay(200) + .setInterpolator(new OvershootInterpolator()) + .rotation(painting.getZenMode() ? 0f : 90f); } } }; diff --git a/packages/ExternalStorageProvider/tests/Android.bp b/packages/ExternalStorageProvider/tests/Android.bp index 86c62ef299e4..b5b1186c0db1 100644 --- a/packages/ExternalStorageProvider/tests/Android.bp +++ b/packages/ExternalStorageProvider/tests/Android.bp @@ -17,9 +17,9 @@ android_test { ], libs: [ - "android.test.base", - "android.test.mock", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", + "android.test.runner.stubs.system", ], static_libs: [ diff --git a/packages/FusedLocation/Android.bp b/packages/FusedLocation/Android.bp index 61a82701d155..719aa28a4e30 100644 --- a/packages/FusedLocation/Android.bp +++ b/packages/FusedLocation/Android.bp @@ -35,7 +35,7 @@ android_app { name: "FusedLocation", defaults: ["platform_app_defaults"], srcs: ["src/**/*.java"], - libs: ["com.android.location.provider"], + libs: ["com.android.location.provider.impl"], platform_apis: true, certificate: "platform", privileged: true, @@ -50,9 +50,9 @@ android_test { "src/**/*.java", // include real sources because we're forced to test this directly ], libs: [ - "android.test.base", - "android.test.runner", - "com.android.location.provider", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", + "com.android.location.provider.impl", ], static_libs: [ "androidx.test.core", diff --git a/packages/InputDevices/res/values-af/strings.xml b/packages/InputDevices/res/values-af/strings.xml index eafe04265ce9..cd9d915d87fd 100644 --- a/packages/InputDevices/res/values-af/strings.xml +++ b/packages/InputDevices/res/values-af/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thais (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serwies (Latyns)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegryns (Latyns)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serwies (Cyrillies)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegryns (Cyrillies)"</string> </resources> diff --git a/packages/InputDevices/res/values-am/strings.xml b/packages/InputDevices/res/values-am/strings.xml index fd507613a6f5..a6f5f3a7018f 100644 --- a/packages/InputDevices/res/values-am/strings.xml +++ b/packages/InputDevices/res/values-am/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ታይላንድኛ (ፓታሾት)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ሰርቢያኛ (ላቲን)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ሞንቴኔግሮኛ (ላቲን)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ሰርቢያኛ (ሲሪሊክኛ)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ሞንቴኔግሮኛ (ሲሪሊክኛ)"</string> </resources> diff --git a/packages/InputDevices/res/values-ar/strings.xml b/packages/InputDevices/res/values-ar/strings.xml index ac730385c6e1..f92d0def3b7e 100644 --- a/packages/InputDevices/res/values-ar/strings.xml +++ b/packages/InputDevices/res/values-ar/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"التايلاندية (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"الصربية (اللاتينية)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"لغة الجبل الأسود (اللاتينية)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"الصربية (السيريلية)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"لغة الجبل الأسود (السيريلية)"</string> </resources> diff --git a/packages/InputDevices/res/values-as/strings.xml b/packages/InputDevices/res/values-as/strings.xml index 1162c723ed6c..8084da395175 100644 --- a/packages/InputDevices/res/values-as/strings.xml +++ b/packages/InputDevices/res/values-as/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"থাই (পাটাচ’টে)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ছাৰ্বিয়ান (লেটিন)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"মণ্টেনেগ্ৰিণ (লেটিন)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ছাৰ্বিয়ান (চিৰিলিক)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"মণ্টেনেগ্ৰিণ (চিৰিলিক)"</string> </resources> diff --git a/packages/InputDevices/res/values-az/strings.xml b/packages/InputDevices/res/values-az/strings.xml index 6a6a99d10b36..068a771d9c50 100644 --- a/packages/InputDevices/res/values-az/strings.xml +++ b/packages/InputDevices/res/values-az/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tay (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serb dili (Latın)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Monteneqro dili (Latın)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serb dili (Kiril)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Monteneqro dili (Kiril)"</string> </resources> diff --git a/packages/InputDevices/res/values-b+sr+Latn/strings.xml b/packages/InputDevices/res/values-b+sr+Latn/strings.xml index 96ac10cb8f64..334b03218f91 100644 --- a/packages/InputDevices/res/values-b+sr+Latn/strings.xml +++ b/packages/InputDevices/res/values-b+sr+Latn/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"tajski (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srpski (latinica)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"crnogorski (latinica)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srpski (ćirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"crnogorski (ćirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-be/strings.xml b/packages/InputDevices/res/values-be/strings.xml index e8341a112d7a..c11266512978 100644 --- a/packages/InputDevices/res/values-be/strings.xml +++ b/packages/InputDevices/res/values-be/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тайская (Патачотэ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Сербская (лацініца)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Чарнагорская (лацініца)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Сербская (кірыліца)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Чарнагорская (кірыліца)"</string> </resources> diff --git a/packages/InputDevices/res/values-bg/strings.xml b/packages/InputDevices/res/values-bg/strings.xml index b6a5b0036651..8a650b283f4f 100644 --- a/packages/InputDevices/res/values-bg/strings.xml +++ b/packages/InputDevices/res/values-bg/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"тайландски (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"сръбски (латиница)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"черногорски (латиница)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"сръбски (кирилица)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"черногорски (кирилица)"</string> </resources> diff --git a/packages/InputDevices/res/values-bn/strings.xml b/packages/InputDevices/res/values-bn/strings.xml index 353b6dc6310f..02ab5075b991 100644 --- a/packages/InputDevices/res/values-bn/strings.xml +++ b/packages/InputDevices/res/values-bn/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"থাই (পাট্টাচোটে)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"সার্বিয়ান (ল্যাটিন)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"মন্টেনেগ্রিন (ল্যাটিন)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"সার্বিয়ান (সিরিলিক)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"মন্টেনেগ্রিন (সিরিলিক)"</string> </resources> diff --git a/packages/InputDevices/res/values-bs/strings.xml b/packages/InputDevices/res/values-bs/strings.xml index 0145b0ac14ac..e1aef5d67d89 100644 --- a/packages/InputDevices/res/values-bs/strings.xml +++ b/packages/InputDevices/res/values-bs/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"tajlandski (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srpski (latinica)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"crnogorski (latinica)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srpski (ćirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"crnogorski (ćirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-ca/strings.xml b/packages/InputDevices/res/values-ca/strings.xml index d729c9190409..f9b2e5eb342a 100644 --- a/packages/InputDevices/res/values-ca/strings.xml +++ b/packages/InputDevices/res/values-ca/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbi (llatí)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrí (llatí)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbi (ciríl·lic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrí (ciríl·lic)"</string> </resources> diff --git a/packages/InputDevices/res/values-cs/strings.xml b/packages/InputDevices/res/values-cs/strings.xml index 170fa58b50b9..72efbc4cc999 100644 --- a/packages/InputDevices/res/values-cs/strings.xml +++ b/packages/InputDevices/res/values-cs/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"thajština (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srbština (latinka)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"černohorština (latinka)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srbština (cyrilice)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"černohorština (cyrilice)"</string> </resources> diff --git a/packages/InputDevices/res/values-da/strings.xml b/packages/InputDevices/res/values-da/strings.xml index 47fcfb19ea2b..6ce0b8b9febe 100644 --- a/packages/InputDevices/res/values-da/strings.xml +++ b/packages/InputDevices/res/values-da/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbisk (latinsk)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrinsk (latinsk)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbisk (kyrillisk)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrinsk (kyrillisk)"</string> </resources> diff --git a/packages/InputDevices/res/values-de/strings.xml b/packages/InputDevices/res/values-de/strings.xml index 1f6b65d76c4b..0dc4e2a0aa49 100644 --- a/packages/InputDevices/res/values-de/strings.xml +++ b/packages/InputDevices/res/values-de/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thailändisch (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbisch (lat. Alphabet)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrinisch (lat. Alphabet)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbisch (kyrillisch)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrinisch (kyrillisch)"</string> </resources> diff --git a/packages/InputDevices/res/values-el/strings.xml b/packages/InputDevices/res/values-el/strings.xml index 2a9dd8c42537..08357db6b06b 100644 --- a/packages/InputDevices/res/values-el/strings.xml +++ b/packages/InputDevices/res/values-el/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Ταϊλανδικά (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Σερβικά (Λατινικά)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Μαυροβουνιακά (Λατινικά)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Σερβικά (Κυριλλικά)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Μαυροβουνιακά (Κυριλλικά)"</string> </resources> diff --git a/packages/InputDevices/res/values-en-rAU/strings.xml b/packages/InputDevices/res/values-en-rAU/strings.xml index e27fb6416b6d..0e9e6ebb7f38 100644 --- a/packages/InputDevices/res/values-en-rAU/strings.xml +++ b/packages/InputDevices/res/values-en-rAU/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-en-rCA/strings.xml b/packages/InputDevices/res/values-en-rCA/strings.xml index 74fd7c54dedf..3fa4bce3dfc3 100644 --- a/packages/InputDevices/res/values-en-rCA/strings.xml +++ b/packages/InputDevices/res/values-en-rCA/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-en-rGB/strings.xml b/packages/InputDevices/res/values-en-rGB/strings.xml index e27fb6416b6d..0e9e6ebb7f38 100644 --- a/packages/InputDevices/res/values-en-rGB/strings.xml +++ b/packages/InputDevices/res/values-en-rGB/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-en-rIN/strings.xml b/packages/InputDevices/res/values-en-rIN/strings.xml index e27fb6416b6d..0e9e6ebb7f38 100644 --- a/packages/InputDevices/res/values-en-rIN/strings.xml +++ b/packages/InputDevices/res/values-en-rIN/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-en-rXC/strings.xml b/packages/InputDevices/res/values-en-rXC/strings.xml index 777d93913121..2ae35abfab02 100644 --- a/packages/InputDevices/res/values-en-rXC/strings.xml +++ b/packages/InputDevices/res/values-en-rXC/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-es-rUS/strings.xml b/packages/InputDevices/res/values-es-rUS/strings.xml index 049edf494b71..321b9a595dfa 100644 --- a/packages/InputDevices/res/values-es-rUS/strings.xml +++ b/packages/InputDevices/res/values-es-rUS/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandés (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbio (latino)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latino)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-es/strings.xml b/packages/InputDevices/res/values-es/strings.xml index b6e27c537969..98076524b5e8 100644 --- a/packages/InputDevices/res/values-es/strings.xml +++ b/packages/InputDevices/res/values-es/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandés (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbio (latino)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latino)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-et/strings.xml b/packages/InputDevices/res/values-et/strings.xml index cecf304d1c11..eb7ea9fd2843 100644 --- a/packages/InputDevices/res/values-et/strings.xml +++ b/packages/InputDevices/res/values-et/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbia (ladina)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegro (ladina)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"serbia (kirillitsa)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"montenegro (kirillitsa)"</string> </resources> diff --git a/packages/InputDevices/res/values-eu/strings.xml b/packages/InputDevices/res/values-eu/strings.xml index 481b315bf413..53707598b264 100644 --- a/packages/InputDevices/res/values-eu/strings.xml +++ b/packages/InputDevices/res/values-eu/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thailandiarra (pattachote-a)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbiarra (latindarra)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegroarra (latindarra)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbiarra (zirilikoa)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegroarra (zirilikoa)"</string> </resources> diff --git a/packages/InputDevices/res/values-fa/strings.xml b/packages/InputDevices/res/values-fa/strings.xml index 9614fef9396c..9bbf4e36fa16 100644 --- a/packages/InputDevices/res/values-fa/strings.xml +++ b/packages/InputDevices/res/values-fa/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"تایلندی (پاتاچوته)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"صربی (لاتین)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"مونتهنگرویی (لاتین)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"صربی (سیریلیک)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"مونتهنگرویی (سیریلیک)"</string> </resources> diff --git a/packages/InputDevices/res/values-fi/strings.xml b/packages/InputDevices/res/values-fi/strings.xml index afae51ba623c..3e88c2085373 100644 --- a/packages/InputDevices/res/values-fi/strings.xml +++ b/packages/InputDevices/res/values-fi/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"thai (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"serbia (latinalainen)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"montenegro (latinalainen)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"serbia (kyrillinen)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"montenegro (kyrillinen)"</string> </resources> diff --git a/packages/InputDevices/res/values-fr-rCA/strings.xml b/packages/InputDevices/res/values-fr-rCA/strings.xml index f2d79df6d469..690fbad6ab12 100644 --- a/packages/InputDevices/res/values-fr-rCA/strings.xml +++ b/packages/InputDevices/res/values-fr-rCA/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thaï (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbe (latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Monténégrin (latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbe (cyrillique)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Monténégrin (cyrillique)"</string> </resources> diff --git a/packages/InputDevices/res/values-fr/strings.xml b/packages/InputDevices/res/values-fr/strings.xml index 61891c3dad50..70bd250738f7 100644 --- a/packages/InputDevices/res/values-fr/strings.xml +++ b/packages/InputDevices/res/values-fr/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thaï (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbe (latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Monténégrin (latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbe (cyrillique)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Monténégrin (cyrillique)"</string> </resources> diff --git a/packages/InputDevices/res/values-gl/strings.xml b/packages/InputDevices/res/values-gl/strings.xml index 46161682547f..058dba52e17b 100644 --- a/packages/InputDevices/res/values-gl/strings.xml +++ b/packages/InputDevices/res/values-gl/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandés (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbio (alfabeto latino)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (alfabeto latino)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-gu/strings.xml b/packages/InputDevices/res/values-gu/strings.xml index f04b2d2c1453..3f1b31a8a6c8 100644 --- a/packages/InputDevices/res/values-gu/strings.xml +++ b/packages/InputDevices/res/values-gu/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"થાઇ (પટ્ટાશોટે)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"સર્બિયન (લેટિન)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"મોંટેનેગ્રીન (લેટિન)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"સર્બિયન (સિરિલિક)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"મોંટેનેગ્રીન (સિરિલિક)"</string> </resources> diff --git a/packages/InputDevices/res/values-hi/strings.xml b/packages/InputDevices/res/values-hi/strings.xml index 1017ef118822..db59ebac7805 100644 --- a/packages/InputDevices/res/values-hi/strings.xml +++ b/packages/InputDevices/res/values-hi/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"थाई (पटैचोटे)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"सर्बियन (लैटिन)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"मॉन्टेनीग्रिन (लैटिन)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"सर्बियन (सिरिलिक)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"मोंटेनेग्रिन (सिरिलिक)"</string> </resources> diff --git a/packages/InputDevices/res/values-hr/strings.xml b/packages/InputDevices/res/values-hr/strings.xml index bc630bc35108..905dce25b4aa 100644 --- a/packages/InputDevices/res/values-hr/strings.xml +++ b/packages/InputDevices/res/values-hr/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"tajski (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srpski (latinica)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"crnogorski (latinica)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srpski (ćirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"crnogorski (ćirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-hu/strings.xml b/packages/InputDevices/res/values-hu/strings.xml index 5155543c2318..4c8e7b8de6ba 100644 --- a/packages/InputDevices/res/values-hu/strings.xml +++ b/packages/InputDevices/res/values-hu/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"thai (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"szerb (latin betűs)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"montenegrói (latin betűs)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"szerb (cirill betűs)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"montenegrói (cirill betűs)"</string> </resources> diff --git a/packages/InputDevices/res/values-hy/strings.xml b/packages/InputDevices/res/values-hy/strings.xml index 8097438055eb..ae56fc5b1620 100644 --- a/packages/InputDevices/res/values-hy/strings.xml +++ b/packages/InputDevices/res/values-hy/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"թայերեն (պատաչոտ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"սերբերեն (լատինատառ)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"չեռնոգորերեն (լատինատառ)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"սերբերեն (կյուրեղատառ)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"չեռնոգորերեն (կյուրեղատառ)"</string> </resources> diff --git a/packages/InputDevices/res/values-in/strings.xml b/packages/InputDevices/res/values-in/strings.xml index 1c52e9c3a569..52bc03943abd 100644 --- a/packages/InputDevices/res/values-in/strings.xml +++ b/packages/InputDevices/res/values-in/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbia (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegro (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbia (Sirilik)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegro (Sirilik)"</string> </resources> diff --git a/packages/InputDevices/res/values-is/strings.xml b/packages/InputDevices/res/values-is/strings.xml index bf428bae38c3..0f516cef370e 100644 --- a/packages/InputDevices/res/values-is/strings.xml +++ b/packages/InputDevices/res/values-is/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Taílenskt (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbneska (latneskt)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Svartfellska (latneskt)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbneska (kyrillískt)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Svartfellska (kyrillískt)"</string> </resources> diff --git a/packages/InputDevices/res/values-it/strings.xml b/packages/InputDevices/res/values-it/strings.xml index bb3b12cc2d5c..f77b87cc67be 100644 --- a/packages/InputDevices/res/values-it/strings.xml +++ b/packages/InputDevices/res/values-it/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbo (latino)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latino)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbo (cirillico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirillico)"</string> </resources> diff --git a/packages/InputDevices/res/values-iw/strings.xml b/packages/InputDevices/res/values-iw/strings.xml index f44235a1fec6..0e400e2d0fa4 100644 --- a/packages/InputDevices/res/values-iw/strings.xml +++ b/packages/InputDevices/res/values-iw/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"תאית (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"סרבית (לטינית)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"מונטנגרית (לטינית)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"סרבית (אותיות קיריליות)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"מונטנגרית (אותיות קיריליות)"</string> </resources> diff --git a/packages/InputDevices/res/values-ja/strings.xml b/packages/InputDevices/res/values-ja/strings.xml index 55b9642d612b..b1830ebda199 100644 --- a/packages/InputDevices/res/values-ja/strings.xml +++ b/packages/InputDevices/res/values-ja/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"タイ語(Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"セルビア語(ラテン文字)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"モンテネグロ語(ラテン)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"セルビア語(キリル)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"モンテネグロ語(キリル)"</string> </resources> diff --git a/packages/InputDevices/res/values-ka/strings.xml b/packages/InputDevices/res/values-ka/strings.xml index 8696fb26c0fb..75c72b91df94 100644 --- a/packages/InputDevices/res/values-ka/strings.xml +++ b/packages/InputDevices/res/values-ka/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ტაილანდური (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"სერბული (ლათინური)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"მონტენეგრული (ლათინური)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"სერბული (კირილიცა)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"მონტენეგრული (კირილიცა)"</string> </resources> diff --git a/packages/InputDevices/res/values-kk/strings.xml b/packages/InputDevices/res/values-kk/strings.xml index 2e7236c25c84..c0a58685bc52 100644 --- a/packages/InputDevices/res/values-kk/strings.xml +++ b/packages/InputDevices/res/values-kk/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тай (паттачот)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Серб (латын жазуы)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Черногор (латын жазуы)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Сербия (кириллица)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Черногория (кириллица)"</string> </resources> diff --git a/packages/InputDevices/res/values-km/strings.xml b/packages/InputDevices/res/values-km/strings.xml index 2689258ad8ab..6c3db64fa1e9 100644 --- a/packages/InputDevices/res/values-km/strings.xml +++ b/packages/InputDevices/res/values-km/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ថៃ (ប៉ាតាឈោត)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ស៊ែប៊ី (ឡាតាំង)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ម៉ុងតេណេហ្គ្រោ (ឡាតាំង)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"សែប៊ី (ស៊ីរីលីក)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ម៉ុងតេណេហ្គ្រោ (ស៊ីរីលីក)"</string> </resources> diff --git a/packages/InputDevices/res/values-kn/strings.xml b/packages/InputDevices/res/values-kn/strings.xml index 34d90535a775..0f4c5229c4d4 100644 --- a/packages/InputDevices/res/values-kn/strings.xml +++ b/packages/InputDevices/res/values-kn/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ಥಾಯ್ (ಪಟ್ಟಚೋಟ್)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ಸೆರ್ಬಿಯನ್ (ಲ್ಯಾಟಿನ್)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ಮೊಂಟೆನೆಗ್ರಿನ್ (ಲ್ಯಾಟಿನ್)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ಸೆರ್ಬಿಯನ್ (ಸಿರಿಲಿಕ್)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ಮೊಂಟೆನೆಗ್ರಿನ್ (ಸಿರಿಲಿಕ್)"</string> </resources> diff --git a/packages/InputDevices/res/values-ko/strings.xml b/packages/InputDevices/res/values-ko/strings.xml index ad99961cc813..dcfb3b4ece40 100644 --- a/packages/InputDevices/res/values-ko/strings.xml +++ b/packages/InputDevices/res/values-ko/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"태국어(Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"세르비아어(로마자)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"몬테네그로어(로마자)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"세르비아어(키릴 자모)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"몬테네그로어(키릴)"</string> </resources> diff --git a/packages/InputDevices/res/values-ky/strings.xml b/packages/InputDevices/res/values-ky/strings.xml index 79ff71e04cc2..c0b3d3a1d9b3 100644 --- a/packages/InputDevices/res/values-ky/strings.xml +++ b/packages/InputDevices/res/values-ky/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тайча (Pattachote баскычтобу)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Сербче (Латын)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Монтенегрочо (Латын)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Сербче (Кирилл)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Черногориялыкча (Кирилл)"</string> </resources> diff --git a/packages/InputDevices/res/values-lo/strings.xml b/packages/InputDevices/res/values-lo/strings.xml index 2427d1c9b672..c2e5a2beded5 100644 --- a/packages/InputDevices/res/values-lo/strings.xml +++ b/packages/InputDevices/res/values-lo/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ໄທ (ປັດຕະໂຊຕິ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ເຊີບຽນ (ລາຕິນ)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ມອນເທເນກຣິນ (ລາຕິນ)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ເຊີບຽນ (ຊີຣິວລິກ)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ມອນເທເນກຣິນ (ຊີຣິວລິກ)"</string> </resources> diff --git a/packages/InputDevices/res/values-lt/strings.xml b/packages/InputDevices/res/values-lt/strings.xml index 48010bc3a66b..9a98e8eb5b13 100644 --- a/packages/InputDevices/res/values-lt/strings.xml +++ b/packages/InputDevices/res/values-lt/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tajų („Pattachote“)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbų (lotynų rašmenys)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Juodkalniečių (lotynų rašmenys)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbų (kirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Juodkalniečių (kirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-lv/strings.xml b/packages/InputDevices/res/values-lv/strings.xml index a2e8f8fd2972..d3422b210757 100644 --- a/packages/InputDevices/res/values-lv/strings.xml +++ b/packages/InputDevices/res/values-lv/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Taju (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbu (latīņu)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Melnkalniešu (latīņu)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbu (kirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Melnkalniešu (kirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-mk/strings.xml b/packages/InputDevices/res/values-mk/strings.xml index 13cc8e189188..ccb09392aed3 100644 --- a/packages/InputDevices/res/values-mk/strings.xml +++ b/packages/InputDevices/res/values-mk/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"тајландски (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"српски (латиница)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"црногорски (латиница)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"српски (кирилица)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"црногорски (кирилица)"</string> </resources> diff --git a/packages/InputDevices/res/values-ml/strings.xml b/packages/InputDevices/res/values-ml/strings.xml index fda477bfe38f..5a7b601baa97 100644 --- a/packages/InputDevices/res/values-ml/strings.xml +++ b/packages/InputDevices/res/values-ml/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"തായ് (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"സെർബിയൻ (ലാറ്റിൻ)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"മോണ്ടിനെഗ്രിൻ (ലാറ്റിൻ)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"സെർബിയൻ (സിറിലിക്)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"മോണ്ടിനെഗ്രിൻ (സിറിലിക്)"</string> </resources> diff --git a/packages/InputDevices/res/values-mn/strings.xml b/packages/InputDevices/res/values-mn/strings.xml index a6d3320ee1fd..0044eb24bc6a 100644 --- a/packages/InputDevices/res/values-mn/strings.xml +++ b/packages/InputDevices/res/values-mn/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тай (паттачоте)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Серби (латин)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Монтенегро (латин)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Серби (кирилл)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Монтенегро (кирилл)"</string> </resources> diff --git a/packages/InputDevices/res/values-mr/strings.xml b/packages/InputDevices/res/values-mr/strings.xml index faae021e4187..d306dda71553 100644 --- a/packages/InputDevices/res/values-mr/strings.xml +++ b/packages/InputDevices/res/values-mr/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"थाई (पट्टाचोटे)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"सर्बियन (लॅटिन)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"मॉन्टेनेग्रिन (लॅटिन)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"सर्बियन (सिरिलिक)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"मॉन्टेनेग्रिन (सिरिलिक)"</string> </resources> diff --git a/packages/InputDevices/res/values-ms/strings.xml b/packages/InputDevices/res/values-ms/strings.xml index 9f142607ac63..d1b16547f8e6 100644 --- a/packages/InputDevices/res/values-ms/strings.xml +++ b/packages/InputDevices/res/values-ms/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbia (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbia (Cyril)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyril)"</string> </resources> diff --git a/packages/InputDevices/res/values-my/strings.xml b/packages/InputDevices/res/values-my/strings.xml index bb2602724ae1..fb553446dbd4 100644 --- a/packages/InputDevices/res/values-my/strings.xml +++ b/packages/InputDevices/res/values-my/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ထိုင်း (ပတ်တာချုတ်)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ဆားဘီးယား (လက်တင်)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"မွန်တီနီဂရင်း (လက်တင်)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ဆားဘီးယား (စီရီလစ်)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"မွန်တီနီဂရင်း (စီရီလစ်)"</string> </resources> diff --git a/packages/InputDevices/res/values-nb/strings.xml b/packages/InputDevices/res/values-nb/strings.xml index 402d7eeca7ab..7ac2a822667a 100644 --- a/packages/InputDevices/res/values-nb/strings.xml +++ b/packages/InputDevices/res/values-nb/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbisk (latinsk)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrisk (latinsk)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbisk (kyrillisk)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrisk (kyrillisk)"</string> </resources> diff --git a/packages/InputDevices/res/values-ne/strings.xml b/packages/InputDevices/res/values-ne/strings.xml index a60cf36d8fb6..113489d65d96 100644 --- a/packages/InputDevices/res/values-ne/strings.xml +++ b/packages/InputDevices/res/values-ne/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"थाई (पत्ताचोते)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"सर्बियाली (ल्याटिन)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"मोन्टेनिग्रिन (ल्याटिन)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"सर्बियाली (सिरिलिक)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"मोन्टेनिग्रिन (सिरिलिक)"</string> </resources> diff --git a/packages/InputDevices/res/values-nl/strings.xml b/packages/InputDevices/res/values-nl/strings.xml index bb0c945494d2..0e954e9b9ed3 100644 --- a/packages/InputDevices/res/values-nl/strings.xml +++ b/packages/InputDevices/res/values-nl/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Servisch (Latijns)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrijns (Latijns)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Servisch (Cyrillisch)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrijns (Cyrillisch)"</string> </resources> diff --git a/packages/InputDevices/res/values-or/strings.xml b/packages/InputDevices/res/values-or/strings.xml index 2bf862b144f7..d9d852008275 100644 --- a/packages/InputDevices/res/values-or/strings.xml +++ b/packages/InputDevices/res/values-or/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ଥାଇ (ପାଟ୍ଟାଚୋଟେ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ସର୍ବିଆନ (ଲାଟିନ)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ମଣ୍ଟେନେଗ୍ରିନ (ଲାଟିନ)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ସର୍ବିଆନ (ସିରିଲିକ)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ମଣ୍ଟେନେଗ୍ରିନ (ସିରିଲିକ)"</string> </resources> diff --git a/packages/InputDevices/res/values-pa/strings.xml b/packages/InputDevices/res/values-pa/strings.xml index c1fee5feb968..85b0d195f05f 100644 --- a/packages/InputDevices/res/values-pa/strings.xml +++ b/packages/InputDevices/res/values-pa/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ਥਾਈ (ਪੈਟਾਸ਼ੋਟੇ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"ਸਰਬੀਆਈ (ਲਾਤੀਨੀ)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"ਮਾਂਟੇਨੀਗਰਿਨ (ਲਾਤੀਨੀ)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"ਸਰਬੀਆਈ (ਸਿਰਿਲਿਕ)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"ਮਾਂਟੇਨੀਗਰਿਨ (ਸਿਰਿਲਿਕ)"</string> </resources> diff --git a/packages/InputDevices/res/values-pl/strings.xml b/packages/InputDevices/res/values-pl/strings.xml index d3e4a3a9cb11..7fb90d2454f6 100644 --- a/packages/InputDevices/res/values-pl/strings.xml +++ b/packages/InputDevices/res/values-pl/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"tajski (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"serbski (alfabet łaciński)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"czarnogórski (alfabet łaciński)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"serbski (cyrylica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"czarnogórski (cyrylica)"</string> </resources> diff --git a/packages/InputDevices/res/values-pt-rBR/strings.xml b/packages/InputDevices/res/values-pt-rBR/strings.xml index 94a10c504b1f..2b92c811be64 100644 --- a/packages/InputDevices/res/values-pt-rBR/strings.xml +++ b/packages/InputDevices/res/values-pt-rBR/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandês (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Sérvio (latim)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latim)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Sérvio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-pt-rPT/strings.xml b/packages/InputDevices/res/values-pt-rPT/strings.xml index 8c227761d9c3..98cf7e2df754 100644 --- a/packages/InputDevices/res/values-pt-rPT/strings.xml +++ b/packages/InputDevices/res/values-pt-rPT/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandês (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Sérvio (latim)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latim)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Sérvio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-pt/strings.xml b/packages/InputDevices/res/values-pt/strings.xml index 94a10c504b1f..2b92c811be64 100644 --- a/packages/InputDevices/res/values-pt/strings.xml +++ b/packages/InputDevices/res/values-pt/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tailandês (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Sérvio (latim)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrino (latim)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Sérvio (cirílico)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrino (cirílico)"</string> </resources> diff --git a/packages/InputDevices/res/values-ro/strings.xml b/packages/InputDevices/res/values-ro/strings.xml index 654f168ce9bf..71d19958263e 100644 --- a/packages/InputDevices/res/values-ro/strings.xml +++ b/packages/InputDevices/res/values-ro/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thailandeză (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Sârbă (caractere latine)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Muntenegreană (caractere latine)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Sârbă (caractere chirilice)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Muntenegreană (Chirilică)"</string> </resources> diff --git a/packages/InputDevices/res/values-ru/strings.xml b/packages/InputDevices/res/values-ru/strings.xml index 05b1b25d1c7f..13130fc9ca1f 100644 --- a/packages/InputDevices/res/values-ru/strings.xml +++ b/packages/InputDevices/res/values-ru/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тайский (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Сербский (латиница)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Черногорский (латиница)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Сербский (кириллица)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Черногорский (кириллица)"</string> </resources> diff --git a/packages/InputDevices/res/values-si/strings.xml b/packages/InputDevices/res/values-si/strings.xml index 8d36553db34c..80c674d00bca 100644 --- a/packages/InputDevices/res/values-si/strings.xml +++ b/packages/InputDevices/res/values-si/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"තායි (පට්ටචෝටේ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"සර්බියානු (ලතින්)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"මොන්ටෙනේග්රීන් (ලතින්)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"සර්බියානු (සිරිලික්)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"මොන්ටෙනේග්රීන් (සිරිලික්)"</string> </resources> diff --git a/packages/InputDevices/res/values-sk/strings.xml b/packages/InputDevices/res/values-sk/strings.xml index 33e1651b98a8..6ce98cc34bca 100644 --- a/packages/InputDevices/res/values-sk/strings.xml +++ b/packages/InputDevices/res/values-sk/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"thajčina (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srbčina (latinka)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"čiernohorčina (latinka)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srbčina (cyrilika)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"čiernohorčina (cyrilika)"</string> </resources> diff --git a/packages/InputDevices/res/values-sl/strings.xml b/packages/InputDevices/res/values-sl/strings.xml index e40cca7fd850..29264231e6f6 100644 --- a/packages/InputDevices/res/values-sl/strings.xml +++ b/packages/InputDevices/res/values-sl/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"tajščina (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"srbščina (latinica)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"črnogorščina (latinica)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"srbščina (cirilica)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"črnogorščina (cirilica)"</string> </resources> diff --git a/packages/InputDevices/res/values-sq/strings.xml b/packages/InputDevices/res/values-sq/strings.xml index 46405ba3ce18..06f76f3d6c4a 100644 --- a/packages/InputDevices/res/values-sq/strings.xml +++ b/packages/InputDevices/res/values-sq/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tajlandisht (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbisht (latine)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Malazisht (latine)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbisht (cirilike)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Malazisht (cirilike)"</string> </resources> diff --git a/packages/InputDevices/res/values-sr/strings.xml b/packages/InputDevices/res/values-sr/strings.xml index 56420409a54e..1172fef2c0a9 100644 --- a/packages/InputDevices/res/values-sr/strings.xml +++ b/packages/InputDevices/res/values-sr/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"тајски (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"српски (латиница)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"црногорски (латиница)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"српски (ћирилица)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"црногорски (ћирилица)"</string> </resources> diff --git a/packages/InputDevices/res/values-sv/strings.xml b/packages/InputDevices/res/values-sv/strings.xml index 9ba122786974..946854ca00bb 100644 --- a/packages/InputDevices/res/values-sv/strings.xml +++ b/packages/InputDevices/res/values-sv/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"thailändska (pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"serbiska (latinskt)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"montenegrinska (latinskt)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"serbiska (kyrilliskt)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"montenegrinska (kyrilliskt)"</string> </resources> diff --git a/packages/InputDevices/res/values-sw/strings.xml b/packages/InputDevices/res/values-sw/strings.xml index 5da85421c2d4..c3578d8b5fbd 100644 --- a/packages/InputDevices/res/values-sw/strings.xml +++ b/packages/InputDevices/res/values-sw/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Kitai (Kipatachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Kiserbia (Kilatini)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Kimontenegri (Kilatini)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Kiserbia (Kisiriliki)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Kimontenegri (Kisiriliki)"</string> </resources> diff --git a/packages/InputDevices/res/values-ta/strings.xml b/packages/InputDevices/res/values-ta/strings.xml index becffd3f0c91..5c3f57e361b7 100644 --- a/packages/InputDevices/res/values-ta/strings.xml +++ b/packages/InputDevices/res/values-ta/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"தாய் (பட்டாசொட்டே)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"செர்பியன் (லத்தீன்)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"மாண்டினெக்ரன் (லத்தீன்)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"செர்பியன் (சிரிலிக்)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"மாண்டினெக்ரன் (சிரிலிக்)"</string> </resources> diff --git a/packages/InputDevices/res/values-te/strings.xml b/packages/InputDevices/res/values-te/strings.xml index 1d2fcb4e530a..a0674d665ed9 100644 --- a/packages/InputDevices/res/values-te/strings.xml +++ b/packages/InputDevices/res/values-te/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"థాయ్ (పత్తచోత్)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"సెర్బియన్ (లాటిన్)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"మాంటెనెగ్రిన్ (లాటిన్)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"సెర్బియన్ (సిరిలిక్)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"మాంటెనెగ్రిన్ (సిరిలిక్)"</string> </resources> diff --git a/packages/InputDevices/res/values-th/strings.xml b/packages/InputDevices/res/values-th/strings.xml index 318a3bba8c55..a9465961f06a 100644 --- a/packages/InputDevices/res/values-th/strings.xml +++ b/packages/InputDevices/res/values-th/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"ไทย (ปัตตะโชติ)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"เซอร์เบีย (ละติน)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"มอนเตเนโกร (ละติน)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"เซอร์เบีย (ซีริลลิก)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"มอนเตเนโกร (ซีริลลิก)"</string> </resources> diff --git a/packages/InputDevices/res/values-tl/strings.xml b/packages/InputDevices/res/values-tl/strings.xml index 062dff0dec0f..0a5d3cc6c1d6 100644 --- a/packages/InputDevices/res/values-tl/strings.xml +++ b/packages/InputDevices/res/values-tl/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Montenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/InputDevices/res/values-tr/strings.xml b/packages/InputDevices/res/values-tr/strings.xml index c6d38f4a7022..f37a098f0714 100644 --- a/packages/InputDevices/res/values-tr/strings.xml +++ b/packages/InputDevices/res/values-tr/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tayca (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Sırpça (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Karadağca (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Sırpça (Kiril)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Karadağca (Kiril)"</string> </resources> diff --git a/packages/InputDevices/res/values-uk/strings.xml b/packages/InputDevices/res/values-uk/strings.xml index 357747b41413..d496dfa3910b 100644 --- a/packages/InputDevices/res/values-uk/strings.xml +++ b/packages/InputDevices/res/values-uk/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Тайська (паттачоте)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Сербська (латиниця)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Чорногорська (латиниця)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Сербська (кирилиця)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Чорногорська (кирилиця)"</string> </resources> diff --git a/packages/InputDevices/res/values-ur/strings.xml b/packages/InputDevices/res/values-ur/strings.xml index 7b4c10499469..7293858ee413 100644 --- a/packages/InputDevices/res/values-ur/strings.xml +++ b/packages/InputDevices/res/values-ur/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"تھائی (پٹاچوٹے)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"سربیائی (لاطینی)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"مونٹے نیگریائی (لاطینی)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"سربیائی (سیریلک)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"مونٹے نیگریائی (سیریلک)"</string> </resources> diff --git a/packages/InputDevices/res/values-uz/strings.xml b/packages/InputDevices/res/values-uz/strings.xml index 60e740598b4e..f212e2c4108e 100644 --- a/packages/InputDevices/res/values-uz/strings.xml +++ b/packages/InputDevices/res/values-uz/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tay (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Serb (lotin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Chernogor (lotin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serb (kirill)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Chernogor (kirill)"</string> </resources> diff --git a/packages/InputDevices/res/values-vi/strings.xml b/packages/InputDevices/res/values-vi/strings.xml index 6fe39d2a84a4..f3d2cc48fb96 100644 --- a/packages/InputDevices/res/values-vi/strings.xml +++ b/packages/InputDevices/res/values-vi/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Tiếng Thái (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"Tiếng Serbia (Latinh)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"Tiếng Montenegro (Latinh)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Tiếng Serbia (Chữ Kirin)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Tiếng Montenegro (Chữ Kirin)"</string> </resources> diff --git a/packages/InputDevices/res/values-zh-rCN/strings.xml b/packages/InputDevices/res/values-zh-rCN/strings.xml index 6e96e5d46a83..1f74d3436557 100644 --- a/packages/InputDevices/res/values-zh-rCN/strings.xml +++ b/packages/InputDevices/res/values-zh-rCN/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"泰语 (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"塞尔维亚语(拉丁字母)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"黑山语(拉丁字母)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"塞尔维亚语(西里尔字母)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"黑山语(西里尔字母)"</string> </resources> diff --git a/packages/InputDevices/res/values-zh-rHK/strings.xml b/packages/InputDevices/res/values-zh-rHK/strings.xml index 3d1a895d4641..9c6864a7bec6 100644 --- a/packages/InputDevices/res/values-zh-rHK/strings.xml +++ b/packages/InputDevices/res/values-zh-rHK/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"泰文 (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"塞爾維亞文 (拉丁)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"蒙特內哥羅文 (拉丁)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"塞爾維亞文 (西里爾字母)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"蒙特內哥羅文 (西里爾字母)"</string> </resources> diff --git a/packages/InputDevices/res/values-zh-rTW/strings.xml b/packages/InputDevices/res/values-zh-rTW/strings.xml index 26be41bce094..f4159c983bb4 100644 --- a/packages/InputDevices/res/values-zh-rTW/strings.xml +++ b/packages/InputDevices/res/values-zh-rTW/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"泰文 (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"塞爾維亞文 (拉丁字母)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"蒙特內哥羅文 (拉丁字母)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"塞爾維亞文 (西里爾字母)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"蒙特內哥羅文 (西里爾字母)"</string> </resources> diff --git a/packages/InputDevices/res/values-zu/strings.xml b/packages/InputDevices/res/values-zu/strings.xml index f6f6a774526a..ead5a4557901 100644 --- a/packages/InputDevices/res/values-zu/strings.xml +++ b/packages/InputDevices/res/values-zu/strings.xml @@ -54,8 +54,6 @@ <string name="keyboard_layout_thai_pattachote" msgid="2547992342794252205">"Isi-Thai (Pattachote)"</string> <string name="keyboard_layout_serbian_latin" msgid="3128791759390046571">"IsiSerbian (Latin)"</string> <string name="keyboard_layout_montenegrin_latin" msgid="1467832503378949945">"IsiMontenegrin (Latin)"</string> - <!-- no translation found for keyboard_layout_serbian_cyrillic (7013541044323542196) --> - <skip /> - <!-- no translation found for keyboard_layout_montenegrin_cyrillic (2391253952894077421) --> - <skip /> + <string name="keyboard_layout_serbian_cyrillic" msgid="7013541044323542196">"Serbian (Cyrillic)"</string> + <string name="keyboard_layout_montenegrin_cyrillic" msgid="2391253952894077421">"Montenegrin (Cyrillic)"</string> </resources> diff --git a/packages/PackageInstaller/res/layout/install_content_view.xml b/packages/PackageInstaller/res/layout/install_content_view.xml index 524a88a638ad..affcca1ccaed 100644 --- a/packages/PackageInstaller/res/layout/install_content_view.xml +++ b/packages/PackageInstaller/res/layout/install_content_view.xml @@ -34,7 +34,7 @@ <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/message_staging" /> <ProgressBar @@ -57,7 +57,7 @@ <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/installing" /> <ProgressBar @@ -74,7 +74,7 @@ android:id="@+id/install_confirm_question" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_confirm_question" android:visibility="invisible" android:scrollbars="vertical" /> @@ -83,7 +83,7 @@ android:id="@+id/install_confirm_question_update" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_confirm_question_update" android:visibility="invisible" android:scrollbars="vertical" /> @@ -92,7 +92,7 @@ android:id="@+id/install_success" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_done" android:visibility="invisible" /> @@ -100,7 +100,7 @@ android:id="@+id/install_failed" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_failed" android:visibility="invisible" /> @@ -108,7 +108,7 @@ android:id="@+id/install_failed_blocked" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_failed_blocked" android:visibility="invisible" /> @@ -116,7 +116,7 @@ android:id="@+id/install_failed_conflict" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_failed_conflict" android:visibility="invisible" /> @@ -124,7 +124,7 @@ android:id="@+id/install_failed_incompatible" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_failed_incompatible" android:visibility="invisible" /> @@ -132,7 +132,7 @@ android:id="@+id/install_failed_invalid_apk" android:layout_width="wrap_content" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" android:text="@string/install_failed_invalid_apk" android:visibility="invisible" /> diff --git a/packages/PackageInstaller/res/layout/uninstall_content_view.xml b/packages/PackageInstaller/res/layout/uninstall_content_view.xml index 434e33323ba1..d5c5d8b986c6 100644 --- a/packages/PackageInstaller/res/layout/uninstall_content_view.xml +++ b/packages/PackageInstaller/res/layout/uninstall_content_view.xml @@ -22,32 +22,32 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - <LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:theme="?android:attr/alertDialogTheme" - android:orientation="vertical" - android:paddingTop="8dp" - android:paddingStart="?android:attr/dialogPreferredPadding" - android:paddingEnd="?android:attr/dialogPreferredPadding" - android:clipToPadding="false"> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:theme="?android:attr/alertDialogTheme" + android:orientation="vertical" + android:paddingTop="8dp" + android:paddingStart="?android:attr/dialogPreferredPadding" + android:paddingEnd="?android:attr/dialogPreferredPadding" + android:clipToPadding="false"> - <TextView - android:id="@+id/message" - android:layout_width="match_parent" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" /> + <TextView + android:id="@+id/message" + android:layout_width="match_parent" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" /> - <CheckBox - android:id="@+id/keepData" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:layout_marginStart="-8dp" - android:paddingLeft="8sp" - android:visibility="gone" - style="@android:style/TextAppearance.Material.Subhead" /> + <CheckBox + android:id="@+id/keepData" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_marginStart="-8dp" + android:paddingStart="8sp" + android:paddingEnd="0sp" + android:visibility="gone" + style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" /> - </LinearLayout> + </LinearLayout> </ScrollView> diff --git a/packages/PackageInstaller/res/values-af/strings.xml b/packages/PackageInstaller/res/values-af/strings.xml index 13661e3c564a..66303edb0dea 100644 --- a/packages/PackageInstaller/res/values-af/strings.xml +++ b/packages/PackageInstaller/res/values-af/strings.xml @@ -111,7 +111,7 @@ <string name="notification_installation_success_status" msgid="3172502643504323321">"“<xliff:g id="APPNAME">%1$s</xliff:g>” is suksesvol geïnstalleer"</string> <string name="unarchive_application_title" msgid="7958278328280721421">"Stel <xliff:g id="APPNAME">%1$s</xliff:g> terug vanaf <xliff:g id="INSTALLERNAME">%2$s</xliff:g>?"</string> <string name="unarchive_body_text" msgid="8244155079861708964">"Hierdie app sal in die agtergrond begin aflaai"</string> - <string name="restore" msgid="8460854736328970444">"Stel terug"</string> + <string name="restore" msgid="8460854736328970444">"Laai terug"</string> <string name="unarchive_error_offline_title" msgid="4021785324565678605">"Jy is vanlyn"</string> <string name="unarchive_error_offline_body" msgid="2256042209364094099">"Om hierdie app terug te stel, gaan jou internetverbinding na en probeer weer"</string> <string name="unarchive_error_generic_title" msgid="7123457671482449992">"Iets het skeefgeloop"</string> diff --git a/packages/PackageInstaller/res/values-ar/strings.xml b/packages/PackageInstaller/res/values-ar/strings.xml index de91c09c007f..a82f982b203e 100644 --- a/packages/PackageInstaller/res/values-ar/strings.xml +++ b/packages/PackageInstaller/res/values-ar/strings.xml @@ -66,9 +66,9 @@ <string name="archive_application_text_current_user_private_profile" msgid="1958423158655599132">"هل تريد أرشفة هذا التطبيق المحفوظ في المساحة الخاصّة؟ سيتم حفظ بياناتك الشخصية."</string> <string name="uninstall_application_text_all_users" msgid="575491774380227119">"هل تريد إزالة هذا التطبيق "<b>"لكل"</b>" المستخدمين؟ ستتم إزالة التطبيق وبياناته من "<b>"كل"</b>" المستخدمين على هذا الجهاز."</string> <string name="uninstall_application_text_user" msgid="498072714173920526">"هل تريد إزالة هذا التطبيق للمستخدم <xliff:g id="USERNAME">%1$s</xliff:g>؟"</string> - <string name="uninstall_application_text_current_user_work_profile" msgid="8788387739022366193">"هل تريد إزالة تثبيت هذا التطبيق من ملفك الشخصي للعمل؟"</string> + <string name="uninstall_application_text_current_user_work_profile" msgid="8788387739022366193">"هل تريد إزالة تثبيت هذا التطبيق من ملف العمل الخاص بك؟"</string> <string name="uninstall_update_text" msgid="863648314632448705">"هل تريد استبدال هذا التطبيق بإصدار المصنع؟ ستتم إزالة جميع البيانات."</string> - <string name="uninstall_update_text_multiuser" msgid="8992883151333057227">"هل تريد إعادة ضبط هذا التطبيق على الإعدادات الأصلية؟ سؤدي ذلك إلى إزالة جميع البيانات، كما سيؤثر على جميع مستخدمي هذا الجهاز، بما في ذلك من لديهم ملفات شخصية للعمل."</string> + <string name="uninstall_update_text_multiuser" msgid="8992883151333057227">"هل تريد إعادة ضبط هذا التطبيق على الإعدادات الأصلية؟ سؤدي ذلك إلى إزالة جميع البيانات، كما سيؤثر على جميع مستخدمي هذا الجهاز، بما في ذلك من لديهم ملفات للعمل."</string> <string name="uninstall_keep_data" msgid="7002379587465487550">"الاحتفاظ بـ <xliff:g id="SIZE">%1$s</xliff:g> من بيانات التطبيق."</string> <string name="uninstall_application_text_current_user_clone_profile" msgid="835170400160011636">"هل تريد حذف هذا التطبيق؟"</string> <string name="uninstall_application_text_with_clone_instance" msgid="6944473334273349036">"هل تريد إلغاء تثبيت هذا التطبيق؟ سيتم أيضًا حذف نسخة \"<xliff:g id="PACKAGE_LABEL">%1$s</xliff:g>\" الطبق الأصل."</string> diff --git a/packages/PackageInstaller/res/values-be/strings.xml b/packages/PackageInstaller/res/values-be/strings.xml index a4c309767125..ae421da702db 100644 --- a/packages/PackageInstaller/res/values-be/strings.xml +++ b/packages/PackageInstaller/res/values-be/strings.xml @@ -35,7 +35,7 @@ <string name="install_failed_incompatible" product="tablet" msgid="6019021440094927928">"Праграма не ўсталявана, таму што яна несумяшчальная з вашым планшэтам."</string> <string name="install_failed_incompatible" product="tv" msgid="2890001324362291683">"Гэта праграма несумяшчальная з вашым тэлевізарам."</string> <string name="install_failed_incompatible" product="default" msgid="7254630419511645826">"Праграма не ўсталявана, таму што яна несумяшчальная з вашым тэлефонам."</string> - <string name="install_failed_invalid_apk" msgid="8581007676422623930">"Праграма не ўсталявана, таму што пакет, магчыма, з\'яўляецца несапраўдным."</string> + <string name="install_failed_invalid_apk" msgid="8581007676422623930">"Праграма не ўсталявана, таму што пакет, магчыма, з’яўляецца несапраўдным."</string> <string name="install_failed_msg" product="tablet" msgid="6298387264270562442">"На вашым планшэце не ўдалося ўсталяваць праграму \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"."</string> <string name="install_failed_msg" product="tv" msgid="1920009940048975221">"На вашым тэлевізары не ўдалося ўсталяваць праграму \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"."</string> <string name="install_failed_msg" product="default" msgid="6484461562647915707">"На вашым тэлефоне не ўдалося ўсталяваць праграму \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"."</string> @@ -57,7 +57,7 @@ <string name="generic_error_dlg_text" msgid="5287861443265795232">"Не ўдалося выдаліць праграму."</string> <string name="uninstall_application_title" msgid="4045420072401428123">"Выдаліць праграму"</string> <string name="uninstall_update_title" msgid="824411791011583031">"Выдаліць абнаўленне"</string> - <string name="uninstall_activity_text" msgid="1928194674397770771">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> з\'яўляецца часткай наступнай праграмы:"</string> + <string name="uninstall_activity_text" msgid="1928194674397770771">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> з’яўляецца часткай наступнай праграмы:"</string> <string name="uninstall_application_text" msgid="3816830743706143980">"Выдаліць гэту праграму?"</string> <string name="archive_application_text" msgid="8482325710714386348">"Вашы асабістыя даныя будуць захаваны"</string> <string name="archive_application_text_all_users" msgid="3151229641681672580">"Архіваваць гэту праграму для ўсіх карыстальнікаў? Вашы асабістыя даныя будуць захаваны."</string> @@ -117,7 +117,7 @@ <string name="unarchive_error_generic_title" msgid="7123457671482449992">"Адбылася памылка"</string> <string name="unarchive_error_generic_body" msgid="4486803312463813079">"Пры аднаўленні праграмы ўзнікла праблема"</string> <string name="unarchive_error_storage_title" msgid="5080723357273852630">"Не хапае месца ў сховішчы"</string> - <string name="unarchive_error_storage_body" msgid="6879544407568780524">"Каб аднавіць гэту праграму, вызваліце месца на прыладзе. Неабходны аб\'ём месца ў сховішчы: <xliff:g id="BYTES">%1$s</xliff:g>."</string> + <string name="unarchive_error_storage_body" msgid="6879544407568780524">"Каб аднавіць гэту праграму, вызваліце месца на прыладзе. Неабходны аб’ём месца ў сховішчы: <xliff:g id="BYTES">%1$s</xliff:g>."</string> <string name="unarchive_action_required_title" msgid="4971245740162604619">"Патрабуецца дзеянне"</string> <string name="unarchive_action_required_body" msgid="1679431572983989231">"Каб аднавіць гэту праграму, выканайце далейшыя інструкцыі"</string> <string name="unarchive_error_installer_disabled_title" msgid="4815715617014985605">"Усталёўшчык \"<xliff:g id="INSTALLERNAME">%1$s</xliff:g>\" адключаны"</string> diff --git a/packages/PackageInstaller/res/values-fr-rCA/strings.xml b/packages/PackageInstaller/res/values-fr-rCA/strings.xml index 60075e6703fb..64022b979300 100644 --- a/packages/PackageInstaller/res/values-fr-rCA/strings.xml +++ b/packages/PackageInstaller/res/values-fr-rCA/strings.xml @@ -23,55 +23,55 @@ <string name="cancel" msgid="1018267193425558088">"Annuler"</string> <string name="installing" msgid="4921993079741206516">"Installation en cours…"</string> <string name="installing_app" msgid="1165095864863849422">"Installation de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g> en cours…"</string> - <string name="install_done" msgid="5987363587661783896">"Application installée."</string> - <string name="install_confirm_question" msgid="7663733664476363311">"Voulez-vous installer cette application?"</string> - <string name="install_confirm_question_update" msgid="3348888852318388584">"Voulez-vous mettre à jour cette application?"</string> - <string name="install_confirm_question_update_owner_reminder" product="tablet" msgid="7994800761970572198">"<p>Mettre à jour cette application à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette application reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre tablette. Le fonctionnement de l\'application peut en être modifié.</p>"</string> - <string name="install_confirm_question_update_owner_reminder" product="tv" msgid="2435174886412089791">"<p>Mettre à jour cette application à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette application reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre téléviseur. Le fonctionnement de l\'application peut en être modifié.</p>"</string> - <string name="install_confirm_question_update_owner_reminder" product="default" msgid="7155138616126795839">"<p>Mettre à jour cette application à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette application reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre téléphone. Le fonctionnement de l\'application peut en être modifié.</p>"</string> - <string name="install_failed" msgid="5777824004474125469">"Application non installée."</string> + <string name="install_done" msgid="5987363587661783896">"Appli installée."</string> + <string name="install_confirm_question" msgid="7663733664476363311">"Voulez-vous installer cette appli?"</string> + <string name="install_confirm_question_update" msgid="3348888852318388584">"Voulez-vous mettre à jour cette appli?"</string> + <string name="install_confirm_question_update_owner_reminder" product="tablet" msgid="7994800761970572198">"<p>Mettre à jour cette appli à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette appli reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre tablette. Le fonctionnement de l\'appli peut en être modifié.</p>"</string> + <string name="install_confirm_question_update_owner_reminder" product="tv" msgid="2435174886412089791">"<p>Mettre à jour cette appli à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette appli reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre téléviseur. Le fonctionnement de l\'appli peut en être modifié.</p>"</string> + <string name="install_confirm_question_update_owner_reminder" product="default" msgid="7155138616126795839">"<p>Mettre à jour cette appli à partir de <b><xliff:g id="NEW_UPDATE_OWNER">%1$s</xliff:g></b>?</p><p>Cette appli reçoit normalement des mises à jour de <b><xliff:g id="EXISTING_UPDATE_OWNER">%2$s</xliff:g></b>. En effectuant une mise à jour à partir d\'une source différente, vous pourriez recevoir des mises à jour futures à partir de n\'importe quelle source sur votre téléphone. Le fonctionnement de l\'appli peut en être modifié.</p>"</string> + <string name="install_failed" msgid="5777824004474125469">"Appli non installée."</string> <string name="install_failed_blocked" msgid="8512284352994752094">"L\'installation du paquet a été bloquée."</string> - <string name="install_failed_conflict" msgid="3493184212162521426">"L\'application n\'a pas été installée, car le paquet entre en conflit avec un paquet existant."</string> - <string name="install_failed_incompatible" product="tablet" msgid="6019021440094927928">"L\'application n\'a pas été installée, car elle n\'est pas compatible avec votre tablette."</string> - <string name="install_failed_incompatible" product="tv" msgid="2890001324362291683">"Cette application n\'est pas compatible avec votre téléviseur."</string> - <string name="install_failed_incompatible" product="default" msgid="7254630419511645826">"L\'application n\'a pas été installée, car elle n\'est pas compatible avec votre téléphone."</string> - <string name="install_failed_invalid_apk" msgid="8581007676422623930">"L\'application n\'a pas été installée, car elle ne semble pas être valide."</string> + <string name="install_failed_conflict" msgid="3493184212162521426">"L\'appli n\'a pas été installée, car le paquet entre en conflit avec un paquet existant."</string> + <string name="install_failed_incompatible" product="tablet" msgid="6019021440094927928">"L\'appli n\'a pas été installée, car elle n\'est pas compatible avec votre tablette."</string> + <string name="install_failed_incompatible" product="tv" msgid="2890001324362291683">"Cette appli n\'est pas compatible avec votre téléviseur."</string> + <string name="install_failed_incompatible" product="default" msgid="7254630419511645826">"L\'appli n\'a pas été installée, car elle n\'est pas compatible avec votre téléphone."</string> + <string name="install_failed_invalid_apk" msgid="8581007676422623930">"L\'appli n\'a pas été installée, car elle ne semble pas être valide."</string> <string name="install_failed_msg" product="tablet" msgid="6298387264270562442">"Impossible d\'installer <xliff:g id="APP_NAME">%1$s</xliff:g> sur votre tablette."</string> <string name="install_failed_msg" product="tv" msgid="1920009940048975221">"<xliff:g id="APP_NAME">%1$s</xliff:g> n\'a pas pu être installée sur votre téléviseur."</string> <string name="install_failed_msg" product="default" msgid="6484461562647915707">"Impossible d\'installer <xliff:g id="APP_NAME">%1$s</xliff:g> sur votre téléphone."</string> <string name="launch" msgid="3952550563999890101">"Ouvrir"</string> - <string name="unknown_apps_admin_dlg_text" msgid="4456572224020176095">"Votre administrateur n\'autorise pas l\'installation d\'applications obtenues à partir de sources inconnues"</string> - <string name="unknown_apps_user_restriction_dlg_text" msgid="151020786933988344">"Cet utilisateur ne peut pas installer d\'applications inconnues"</string> - <string name="install_apps_user_restriction_dlg_text" msgid="2154119597001074022">"Cet utilisateur n\'est pas autorisé à installer des applications"</string> + <string name="unknown_apps_admin_dlg_text" msgid="4456572224020176095">"Votre administrateur n\'autorise pas l\'installation d\'applis obtenues à partir de sources inconnues"</string> + <string name="unknown_apps_user_restriction_dlg_text" msgid="151020786933988344">"Cet utilisateur ne peut pas installer d\'applis inconnues"</string> + <string name="install_apps_user_restriction_dlg_text" msgid="2154119597001074022">"Cet utilisateur n\'est pas autorisé à installer des applis"</string> <string name="ok" msgid="7871959885003339302">"OK"</string> <string name="archive" msgid="4447791830199354721">"Archiver"</string> <string name="update_anyway" msgid="8792432341346261969">"Mettre à jour malgré tout"</string> <string name="manage_applications" msgid="5400164782453975580">"Gérer les applis"</string> <string name="out_of_space_dlg_title" msgid="4156690013884649502">"Espace insuffisant"</string> <string name="out_of_space_dlg_text" msgid="8727714096031856231">"Impossible d\'installer <xliff:g id="APP_NAME">%1$s</xliff:g>. Veuillez libérer de l\'espace, puis réessayer."</string> - <string name="app_not_found_dlg_title" msgid="5107924008597470285">"Application non trouvée"</string> - <string name="app_not_found_dlg_text" msgid="5219983779377811611">"L\'application ne figure pas dans la liste des applications installées."</string> - <string name="user_is_not_allowed_dlg_title" msgid="6915293433252210232">"Non autorisée"</string> + <string name="app_not_found_dlg_title" msgid="5107924008597470285">"Appli non trouvée"</string> + <string name="app_not_found_dlg_text" msgid="5219983779377811611">"L\'appli ne figure pas dans la liste des applis installées."</string> + <string name="user_is_not_allowed_dlg_title" msgid="6915293433252210232">"Non autorisé"</string> <string name="user_is_not_allowed_dlg_text" msgid="3468447791330611681">"L\'utilisateur actuel n\'est pas autorisé à effectuer cette désinstallation."</string> <string name="generic_error_dlg_title" msgid="5863195085927067752">"Erreur"</string> - <string name="generic_error_dlg_text" msgid="5287861443265795232">"L\'application n\'a pas pu être désinstallée."</string> - <string name="uninstall_application_title" msgid="4045420072401428123">"Désinstaller l\'application"</string> + <string name="generic_error_dlg_text" msgid="5287861443265795232">"L\'appli n\'a pas pu être désinstallée."</string> + <string name="uninstall_application_title" msgid="4045420072401428123">"Désinstaller l\'appli"</string> <string name="uninstall_update_title" msgid="824411791011583031">"Désinstaller mise à jour"</string> - <string name="uninstall_activity_text" msgid="1928194674397770771">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> fait partie de l\'application suivante :"</string> - <string name="uninstall_application_text" msgid="3816830743706143980">"Voulez-vous désinstaller cette application?"</string> + <string name="uninstall_activity_text" msgid="1928194674397770771">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> fait partie de l\'appli suivante :"</string> + <string name="uninstall_application_text" msgid="3816830743706143980">"Voulez-vous désinstaller cette appli?"</string> <string name="archive_application_text" msgid="8482325710714386348">"Vos données personnelles seront enregistrées"</string> - <string name="archive_application_text_all_users" msgid="3151229641681672580">"Archiver cette application pour tous les utilisateurs? Vos données personnelles seront enregistrées"</string> - <string name="archive_application_text_current_user_work_profile" msgid="1450487362134779752">"Archiver cette application sur votre profil professionnel? Vos données personnelles seront enregistrées"</string> - <string name="archive_application_text_user" msgid="2586558895535581451">"Archiver cette application pour <xliff:g id="USERNAME">%1$s</xliff:g>? Vos données personnelles seront enregistrées"</string> - <string name="archive_application_text_current_user_private_profile" msgid="1958423158655599132">"Voulez-vous archiver cette application de votre Espace privé? Vos données personnelles seront enregistrées"</string> - <string name="uninstall_application_text_all_users" msgid="575491774380227119">"Voulez-vous désinstaller cette application pour "<b>"tous"</b>" les utilisateurs? L\'application et ses données seront supprimées pour "<b>"tous"</b>" les utilisateurs de l\'appareil."</string> - <string name="uninstall_application_text_user" msgid="498072714173920526">"Voulez-vous désinstaller cette application pour l\'utilisateur <xliff:g id="USERNAME">%1$s</xliff:g>?"</string> - <string name="uninstall_application_text_current_user_work_profile" msgid="8788387739022366193">"Voulez-vous désinstaller cette application de votre profil professionnel?"</string> - <string name="uninstall_update_text" msgid="863648314632448705">"Remplacer cette application par la version d\'usine? Toutes les données seront supprimées."</string> - <string name="uninstall_update_text_multiuser" msgid="8992883151333057227">"Remplacer cette application par la version d\'usine? Toutes les données seront supprimées. Cela touchera tous les utilisateurs de cet appareil, y compris ceux qui utilisent un profil professionnel."</string> - <string name="uninstall_keep_data" msgid="7002379587465487550">"Garder <xliff:g id="SIZE">%1$s</xliff:g> de données d\'application."</string> - <string name="uninstall_application_text_current_user_clone_profile" msgid="835170400160011636">"Voulez-vous supprimer cette application?"</string> - <string name="uninstall_application_text_with_clone_instance" msgid="6944473334273349036">"Voulez-vous désinstaller cette application? Le clone de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g> sera aussi supprimé."</string> + <string name="archive_application_text_all_users" msgid="3151229641681672580">"Archiver cette appli pour tous les utilisateurs? Vos données personnelles seront enregistrées"</string> + <string name="archive_application_text_current_user_work_profile" msgid="1450487362134779752">"Archiver cette appli sur votre profil professionnel? Vos données personnelles seront enregistrées"</string> + <string name="archive_application_text_user" msgid="2586558895535581451">"Archiver cette appli pour <xliff:g id="USERNAME">%1$s</xliff:g>? Vos données personnelles seront enregistrées"</string> + <string name="archive_application_text_current_user_private_profile" msgid="1958423158655599132">"Voulez-vous archiver cette appli de votre Espace privé? Vos données personnelles seront enregistrées"</string> + <string name="uninstall_application_text_all_users" msgid="575491774380227119">"Voulez-vous désinstaller cette appli pour "<b>"tous"</b>" les utilisateurs? L\'appli et ses données seront supprimées pour "<b>"tous"</b>" les utilisateurs de l\'appareil."</string> + <string name="uninstall_application_text_user" msgid="498072714173920526">"Voulez-vous désinstaller cette appli pour l\'utilisateur <xliff:g id="USERNAME">%1$s</xliff:g>?"</string> + <string name="uninstall_application_text_current_user_work_profile" msgid="8788387739022366193">"Voulez-vous désinstaller cette appli de votre profil professionnel?"</string> + <string name="uninstall_update_text" msgid="863648314632448705">"Remplacer cette appli par la version d\'usine? Toutes les données seront supprimées."</string> + <string name="uninstall_update_text_multiuser" msgid="8992883151333057227">"Remplacer cette appli par la version d\'usine? Toutes les données seront supprimées. Cela touchera tous les utilisateurs de cet appareil, y compris ceux qui utilisent un profil professionnel."</string> + <string name="uninstall_keep_data" msgid="7002379587465487550">"Garder <xliff:g id="SIZE">%1$s</xliff:g> de données d\'appli."</string> + <string name="uninstall_application_text_current_user_clone_profile" msgid="835170400160011636">"Voulez-vous supprimer cette appli?"</string> + <string name="uninstall_application_text_with_clone_instance" msgid="6944473334273349036">"Voulez-vous désinstaller cette appli? Le clone de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g> sera aussi supprimé."</string> <string name="uninstall_application_text_current_user_private_profile" msgid="867004464945674674">"Voulez-vous désinstaller cette appli de votre espace privé?"</string> <string name="uninstalling_notification_channel" msgid="840153394325714653">"Désinstallations en cours…"</string> <string name="uninstall_failure_notification_channel" msgid="1136405866767576588">"Désinstallations échouées"</string> @@ -83,47 +83,47 @@ <string name="uninstall_failed" msgid="1847750968168364332">"Échec de la désinstallation."</string> <string name="uninstall_failed_app" msgid="5506028705017601412">"La désinstallation de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g> n\'a pas réussi."</string> <string name="uninstalling_cloned_app" msgid="1826380164974984870">"Suppression du clone <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g>…"</string> - <string name="uninstall_failed_device_policy_manager" msgid="785293813665540305">"Impossible de désinstaller une application d\'administration de l\'appareil active"</string> - <string name="uninstall_failed_device_policy_manager_of_user" msgid="4813104025494168064">"Impossible de désinstaller une application d\'administration de l\'appareil active pour <xliff:g id="USERNAME">%1$s</xliff:g>"</string> - <string name="uninstall_all_blocked_profile_owner" msgid="2009393666026751501">"Cette application est nécessaire pour certains utilisateurs ou profils, et elle a été désinstallée pour d\'autres"</string> - <string name="uninstall_blocked_profile_owner" msgid="6373897407002404848">"Cette application est nécessaire pour votre profil et ne peut pas être désinstallée."</string> - <string name="uninstall_blocked_device_owner" msgid="6724602931761073901">"Imposs. de désinst. l\'application : elle est requise par l\'admin de l\'appareil."</string> - <string name="manage_device_administrators" msgid="3092696419363842816">"Gérer les applications d\'administration d\'appareils"</string> + <string name="uninstall_failed_device_policy_manager" msgid="785293813665540305">"Impossible de désinstaller une appli d\'administration de l\'appareil active"</string> + <string name="uninstall_failed_device_policy_manager_of_user" msgid="4813104025494168064">"Impossible de désinstaller une appli d\'administration de l\'appareil active pour <xliff:g id="USERNAME">%1$s</xliff:g>"</string> + <string name="uninstall_all_blocked_profile_owner" msgid="2009393666026751501">"Cette appli est nécessaire pour certains utilisateurs ou profils, et elle a été désinstallée pour d\'autres"</string> + <string name="uninstall_blocked_profile_owner" msgid="6373897407002404848">"Cette appli est nécessaire pour votre profil et ne peut pas être désinstallée."</string> + <string name="uninstall_blocked_device_owner" msgid="6724602931761073901">"Imposs. de désinst. l\'appli : elle est requise par l\'admin de l\'appareil."</string> + <string name="manage_device_administrators" msgid="3092696419363842816">"Gérer les applis d\'administration d\'appareils"</string> <string name="manage_users" msgid="1243995386982560813">"Gérer les utilisateurs"</string> <string name="uninstall_failed_msg" msgid="2176744834786696012">"Impossible de désinstaller <xliff:g id="APP_NAME">%1$s</xliff:g>."</string> <string name="Parse_error_dlg_text" msgid="1661404001063076789">"Un problème est survenu lors de l\'analyse du paquet."</string> - <string name="message_staging" msgid="8032722385658438567">"Pré-production de l\'application en cours…"</string> + <string name="message_staging" msgid="8032722385658438567">"Pré-production de l\'appli en cours…"</string> <string name="app_name_unknown" msgid="6881210203354323926">"Inconnue"</string> - <string name="untrusted_external_source_warning" product="tablet" msgid="7067510047443133095">"À des fins de sécurité, l\'installation d\'applications inconnues provenant de cette source n\'est pas autorisée sur cette tablette. Vous pouvez modifier cette option dans les paramètres."</string> - <string name="untrusted_external_source_warning" product="tv" msgid="7057271609532508035">"À des fins de sécurité, l\'installation d\'applications inconnues provenant de cette source n\'est pas autorisée sur ce téléviseur. Vous pouvez modifier cette option dans les paramètres."</string> - <string name="untrusted_external_source_warning" product="watch" msgid="7195163388090818636">"À des fins de sécurité, l\'installation d\'applications inconnues provenant de cette source n\'est pas autorisée sur cette montre. Vous pouvez modifier cette option dans les paramètres."</string> - <string name="untrusted_external_source_warning" product="default" msgid="8444191224459138919">"À des fins de sécurité, l\'installation d\'applications inconnues provenant de cette source n\'est pas autorisée sur ce téléphone. Vous pouvez modifier cette option dans les paramètres."</string> - <string name="anonymous_source_warning" product="default" msgid="2784902545920822500">"Votre téléphone et vos données personnelles sont plus vulnérables aux attaques provenant d\'applications inconnues. En installant cette application, vous acceptez d\'être le seul responsable de tout dommage causé à votre téléphone ou de toute perte de données pouvant découler de l\'utilisation de telles applications."</string> - <string name="anonymous_source_warning" product="tablet" msgid="3939101621438855516">"Votre tablette et vos données personnelles sont plus vulnérables aux attaques provenant d\'applications inconnues. En installant cette application, vous acceptez d\'être le seul responsable de tout dommage causé à votre tablette ou de toute perte de données pouvant découler de l\'utilisation de telles applications."</string> - <string name="anonymous_source_warning" product="tv" msgid="5599483539528168566">"Votre téléviseur et vos données personnelles sont plus vulnérables aux attaques d\'applications inconnues. En installant cette application, vous acceptez d\'être le seul responsable de tout dommage causé à votre téléviseur ou de toute perte de données pouvant découler de son utilisation."</string> + <string name="untrusted_external_source_warning" product="tablet" msgid="7067510047443133095">"À des fins de sécurité, l\'installation d\'applis inconnues provenant de cette source n\'est pas autorisée sur cette tablette. Vous pouvez modifier cette option dans les paramètres."</string> + <string name="untrusted_external_source_warning" product="tv" msgid="7057271609532508035">"À des fins de sécurité, l\'installation d\'applis inconnues provenant de cette source n\'est pas autorisée sur ce téléviseur. Vous pouvez modifier cette option dans les paramètres."</string> + <string name="untrusted_external_source_warning" product="watch" msgid="7195163388090818636">"À des fins de sécurité, l\'installation d\'applis inconnues provenant de cette source n\'est pas autorisée sur cette montre. Vous pouvez modifier cette option dans les paramètres."</string> + <string name="untrusted_external_source_warning" product="default" msgid="8444191224459138919">"À des fins de sécurité, l\'installation d\'applis inconnues provenant de cette source n\'est pas autorisée sur ce téléphone. Vous pouvez modifier cette option dans les paramètres."</string> + <string name="anonymous_source_warning" product="default" msgid="2784902545920822500">"Votre téléphone et vos données personnelles sont plus vulnérables aux attaques provenant d\'applis inconnues. En installant cette appli, vous acceptez d\'être l\'unique responsable de tout dommage causé à votre téléphone ou de toute perte de données pouvant découler de l\'utilisation de telles applis."</string> + <string name="anonymous_source_warning" product="tablet" msgid="3939101621438855516">"Votre tablette et vos données personnelles sont plus vulnérables aux attaques provenant d\'applis inconnues. En installant cette appli, vous acceptez d\'être l\'unique responsable de tout dommage causé à votre tablette ou de toute perte de données pouvant découler de l\'utilisation de telles applis."</string> + <string name="anonymous_source_warning" product="tv" msgid="5599483539528168566">"Votre téléviseur et vos données personnelles sont plus vulnérables aux attaques d\'applis inconnues. En installant cette appli, vous acceptez d\'être l\'unique responsable de tout dommage causé à votre téléviseur ou de toute perte de données pouvant découler de son utilisation."</string> <string name="cloned_app_label" msgid="7503612829833756160">"Clone de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g>"</string> <string name="archiving_app_label" msgid="1127085259724124725">"Archiver <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g>?"</string> <string name="anonymous_source_continue" msgid="4375745439457209366">"Continuer"</string> <string name="external_sources_settings" msgid="4046964413071713807">"Paramètres"</string> <string name="wear_app_channel" msgid="1960809674709107850">"Installer/désinstaller applis Google Wear"</string> - <string name="app_installed_notification_channel_description" msgid="2695385797601574123">"Notification d\'application installée"</string> + <string name="app_installed_notification_channel_description" msgid="2695385797601574123">"Notification d\'appli installée"</string> <string name="notification_installation_success_message" msgid="6450467996056038442">"Installation réussie"</string> <string name="notification_installation_success_status" msgid="3172502643504323321">"Installation de « <xliff:g id="APPNAME">%1$s</xliff:g> » réussie"</string> <string name="unarchive_application_title" msgid="7958278328280721421">"Restaurer <xliff:g id="APPNAME">%1$s</xliff:g> à partir de <xliff:g id="INSTALLERNAME">%2$s</xliff:g>?"</string> - <string name="unarchive_body_text" msgid="8244155079861708964">"Le téléchargement de cette application commencera en arrière-plan"</string> + <string name="unarchive_body_text" msgid="8244155079861708964">"Le téléchargement de cette appli commencera en arrière-plan"</string> <string name="restore" msgid="8460854736328970444">"Restaurer"</string> <string name="unarchive_error_offline_title" msgid="4021785324565678605">"Vous êtes hors ligne"</string> - <string name="unarchive_error_offline_body" msgid="2256042209364094099">"Pour restaurer cette application, vérifiez votre connexion Internet et réessayez."</string> + <string name="unarchive_error_offline_body" msgid="2256042209364094099">"Pour restaurer cette appli, vérifiez votre connexion Internet et réessayez."</string> <string name="unarchive_error_generic_title" msgid="7123457671482449992">"Un problème est survenu"</string> - <string name="unarchive_error_generic_body" msgid="4486803312463813079">"Un problème est survenu lors de la restauration de cette application"</string> + <string name="unarchive_error_generic_body" msgid="4486803312463813079">"Un problème est survenu lors de la restauration de cette appli"</string> <string name="unarchive_error_storage_title" msgid="5080723357273852630">"Espace de stockage insuffisant"</string> - <string name="unarchive_error_storage_body" msgid="6879544407568780524">"Pour restaurer cette application, vous devez libérer de l\'espace de stockage sur cet appareil. Espace de stockage requis : <xliff:g id="BYTES">%1$s</xliff:g>"</string> + <string name="unarchive_error_storage_body" msgid="6879544407568780524">"Pour restaurer cette appli, vous devez libérer de l\'espace de stockage sur cet appareil. Espace de stockage requis : <xliff:g id="BYTES">%1$s</xliff:g>"</string> <string name="unarchive_action_required_title" msgid="4971245740162604619">"Action requise"</string> - <string name="unarchive_action_required_body" msgid="1679431572983989231">"Suivez les étapes suivantes pour restaurer cette application"</string> + <string name="unarchive_action_required_body" msgid="1679431572983989231">"Suivez les étapes suivantes pour restaurer cette appli"</string> <string name="unarchive_error_installer_disabled_title" msgid="4815715617014985605">"<xliff:g id="INSTALLERNAME">%1$s</xliff:g> est désactivé"</string> - <string name="unarchive_error_installer_disabled_body" msgid="4820821285907011729">"Pour restaurer cette application, activez <xliff:g id="INSTALLERNAME">%1$s</xliff:g> dans les paramètres"</string> + <string name="unarchive_error_installer_disabled_body" msgid="4820821285907011729">"Pour restaurer cette appli, activez <xliff:g id="INSTALLERNAME">%1$s</xliff:g> dans les paramètres"</string> <string name="unarchive_error_installer_uninstalled_title" msgid="3748354109176326489">"<xliff:g id="INSTALLERNAME">%1$s</xliff:g> est désinstallé"</string> - <string name="unarchive_error_installer_uninstalled_body" msgid="944733542444183204">"Pour restaurer cette application, vous devrez installer <xliff:g id="INSTALLERNAME">%1$s</xliff:g>"</string> + <string name="unarchive_error_installer_uninstalled_body" msgid="944733542444183204">"Pour restaurer cette appli, vous devrez installer <xliff:g id="INSTALLERNAME">%1$s</xliff:g>"</string> <string name="unarchive_action_required_continue" msgid="5711202111224184257">"Continuer"</string> <string name="unarchive_clear_storage_button" msgid="1549537154535608744">"Effacer le stockage"</string> <string name="unarchive_settings_button" msgid="3504171760009177425">"Paramètres"</string> diff --git a/packages/PackageInstaller/res/values-it/strings.xml b/packages/PackageInstaller/res/values-it/strings.xml index 20fc299edd01..1561e790ff2e 100644 --- a/packages/PackageInstaller/res/values-it/strings.xml +++ b/packages/PackageInstaller/res/values-it/strings.xml @@ -42,7 +42,7 @@ <string name="launch" msgid="3952550563999890101">"Apri"</string> <string name="unknown_apps_admin_dlg_text" msgid="4456572224020176095">"L\'amministratore non consente l\'installazione di app ottenute da origini sconosciute"</string> <string name="unknown_apps_user_restriction_dlg_text" msgid="151020786933988344">"Questo utente non può installare app sconosciute"</string> - <string name="install_apps_user_restriction_dlg_text" msgid="2154119597001074022">"L\'utente non è autorizzato a installare app"</string> + <string name="install_apps_user_restriction_dlg_text" msgid="2154119597001074022">"L\'utente non dispone dell\'autorizzazione a installare app"</string> <string name="ok" msgid="7871959885003339302">"OK"</string> <string name="archive" msgid="4447791830199354721">"Archivia"</string> <string name="update_anyway" msgid="8792432341346261969">"Aggiorna comunque"</string> diff --git a/packages/PackageInstaller/res/values-night/themes.xml b/packages/PackageInstaller/res/values-night/themes.xml index a5b82b39344c..37588ad89221 100644 --- a/packages/PackageInstaller/res/values-night/themes.xml +++ b/packages/PackageInstaller/res/values-night/themes.xml @@ -19,7 +19,6 @@ <style name="Theme.AlertDialogActivity" parent="@android:style/Theme.DeviceDefault.Dialog.Alert"> - <item name="alertDialogStyle">@style/AlertDialog</item> <item name="android:windowActionBar">false</item> <item name="android:windowNoTitle">true</item> <item name="android:windowAnimationStyle">@null</item> diff --git a/packages/PackageInstaller/res/values-th/strings.xml b/packages/PackageInstaller/res/values-th/strings.xml index 739d2726b56c..adedc9515896 100644 --- a/packages/PackageInstaller/res/values-th/strings.xml +++ b/packages/PackageInstaller/res/values-th/strings.xml @@ -111,7 +111,7 @@ <string name="notification_installation_success_status" msgid="3172502643504323321">"ติดตั้ง “<xliff:g id="APPNAME">%1$s</xliff:g>” สำเร็จแล้ว"</string> <string name="unarchive_application_title" msgid="7958278328280721421">"กู้คืน <xliff:g id="APPNAME">%1$s</xliff:g> จาก <xliff:g id="INSTALLERNAME">%2$s</xliff:g> ใช่ไหม"</string> <string name="unarchive_body_text" msgid="8244155079861708964">"แอปนี้จะเริ่มดาวน์โหลดในเบื้องหลัง"</string> - <string name="restore" msgid="8460854736328970444">"กู้คืน"</string> + <string name="restore" msgid="8460854736328970444">"คืนค่า"</string> <string name="unarchive_error_offline_title" msgid="4021785324565678605">"คุณออฟไลน์อยู่"</string> <string name="unarchive_error_offline_body" msgid="2256042209364094099">"หากต้องการกู้คืนแอปนี้ ให้ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตแล้วลองอีกครั้ง"</string> <string name="unarchive_error_generic_title" msgid="7123457671482449992">"เกิดข้อผิดพลาด"</string> diff --git a/packages/PackageInstaller/res/values/themes.xml b/packages/PackageInstaller/res/values/themes.xml index f5af510111cd..aa487122994e 100644 --- a/packages/PackageInstaller/res/values/themes.xml +++ b/packages/PackageInstaller/res/values/themes.xml @@ -19,7 +19,6 @@ <style name="Theme.AlertDialogActivity" parent="@android:style/Theme.DeviceDefault.Light.Dialog.Alert"> - <item name="alertDialogStyle">@style/AlertDialog</item> <item name="android:windowActionBar">false</item> <item name="android:windowNoTitle">true</item> <item name="android:windowAnimationStyle">@null</item> diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/UnarchiveErrorFragment.java b/packages/PackageInstaller/src/com/android/packageinstaller/UnarchiveErrorFragment.java index d33433f3983b..2fb32a7da432 100644 --- a/packages/PackageInstaller/src/com/android/packageinstaller/UnarchiveErrorFragment.java +++ b/packages/PackageInstaller/src/com/android/packageinstaller/UnarchiveErrorFragment.java @@ -16,10 +16,12 @@ package com.android.packageinstaller; +import static android.app.ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED; import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; import android.app.Activity; import android.app.AlertDialog; +import android.app.BroadcastOptions; import android.app.Dialog; import android.app.DialogFragment; import android.app.PendingIntent; @@ -161,25 +163,31 @@ public class UnarchiveErrorFragment extends DialogFragment implements return; } + // Allow the error handling actvities to start in the background. + final BroadcastOptions options = BroadcastOptions.makeBasic(); + options.setPendingIntentBackgroundActivityStartMode( + MODE_BACKGROUND_ACTIVITY_START_ALLOWED); switch (mStatus) { case PackageInstaller.UNARCHIVAL_ERROR_USER_ACTION_NEEDED: activity.startIntentSender(mExtraIntent.getIntentSender(), /* fillInIntent= */ - null, /* flagsMask= */ 0, FLAG_ACTIVITY_NEW_TASK, /* extraFlags= */ 0); + null, /* flagsMask= */ 0, FLAG_ACTIVITY_NEW_TASK, /* extraFlags= */ 0, + options.toBundle()); break; case PackageInstaller.UNARCHIVAL_ERROR_INSUFFICIENT_STORAGE: if (mExtraIntent != null) { activity.startIntentSender(mExtraIntent.getIntentSender(), /* fillInIntent= */ - null, /* flagsMask= */ 0, FLAG_ACTIVITY_NEW_TASK, /* extraFlags= */ 0); + null, /* flagsMask= */ 0, FLAG_ACTIVITY_NEW_TASK, /* extraFlags= */ 0, + options.toBundle()); } else { Intent intent = new Intent("android.intent.action.MANAGE_PACKAGE_STORAGE"); - startActivity(intent); + startActivity(intent, options.toBundle()); } break; case PackageInstaller.UNARCHIVAL_ERROR_INSTALLER_DISABLED: Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); Uri uri = Uri.fromParts("package", mInstallerPackageName, null); intent.setData(uri); - startActivity(intent); + startActivity(intent, options.toBundle()); break; default: // Do nothing. The rest of the dialogs are purely informational. diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/v2/model/InstallRepository.kt b/packages/PackageInstaller/src/com/android/packageinstaller/v2/model/InstallRepository.kt index 2e9b7b421a7b..a23df64f3582 100644 --- a/packages/PackageInstaller/src/com/android/packageinstaller/v2/model/InstallRepository.kt +++ b/packages/PackageInstaller/src/com/android/packageinstaller/v2/model/InstallRepository.kt @@ -97,6 +97,7 @@ class InstallRepository(private val context: Context) { private set private var callingUid = Process.INVALID_UID private var originatingUid = Process.INVALID_UID + private var originatingUidFromSessionInfo = Process.INVALID_UID private var callingPackage: String? = null private var sessionStager: SessionStager? = null private lateinit var intent: Intent @@ -136,17 +137,25 @@ class InstallRepository(private val context: Context) { callingPackage = callerInfo.packageName - if (sessionId != SessionInfo.INVALID_ID) { - val sessionInfo: SessionInfo? = packageInstaller.getSessionInfo(sessionId) - callingPackage = sessionInfo?.getInstallerPackageName() - callingAttributionTag = sessionInfo?.getInstallerAttributionTag() - } - // Uid of the source package, coming from ActivityManager callingUid = callerInfo.uid if (callingUid == Process.INVALID_UID) { Log.e(LOG_TAG, "Could not determine the launching uid.") } + + originatingUidFromSessionInfo = callingUid + val sessionInfo: SessionInfo? = + if (sessionId != SessionInfo.INVALID_ID) + packageInstaller.getSessionInfo(sessionId) + else null + if (sessionInfo != null) { + callingPackage = sessionInfo.installerPackageName + callingAttributionTag = sessionInfo.installerAttributionTag + if (sessionInfo.originatingUid != Process.INVALID_UID) { + originatingUidFromSessionInfo = sessionInfo.originatingUid + } + } + val sourceInfo: ApplicationInfo? = getSourceInfo(callingPackage) // Uid of the source package, with a preference to uid from ApplicationInfo originatingUid = sourceInfo?.uid ?: callingUid @@ -651,7 +660,12 @@ class InstallRepository(private val context: Context) { private fun getUpdateMessage(pkgInfo: PackageInfo, userActionReason: Int): String? { if (isAppUpdating(pkgInfo)) { val existingUpdateOwnerLabel = getExistingUpdateOwnerLabel(pkgInfo) - val requestedUpdateOwnerLabel = getApplicationLabel(callingPackage) + + val originatingPackageNameFromSessionInfo = + getPackageNameForUid(context, originatingUidFromSessionInfo, callingPackage) + val requestedUpdateOwnerLabel = + getApplicationLabel(originatingPackageNameFromSessionInfo) + if (!TextUtils.isEmpty(existingUpdateOwnerLabel) && userActionReason == PackageInstaller.REASON_REMIND_OWNERSHIP ) { diff --git a/packages/PrintSpooler/TEST_MAPPING b/packages/PrintSpooler/TEST_MAPPING index ad3b44f1bcce..f8bf8a0d5c84 100644 --- a/packages/PrintSpooler/TEST_MAPPING +++ b/packages/PrintSpooler/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsPrintTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ] + "name": "CtsPrintTestCases_Presubmit" } ], "postsubmit": [ diff --git a/packages/PrintSpooler/res/values-el/strings.xml b/packages/PrintSpooler/res/values-el/strings.xml index 9021f7ca218d..5b3f931e64c0 100644 --- a/packages/PrintSpooler/res/values-el/strings.xml +++ b/packages/PrintSpooler/res/values-el/strings.xml @@ -99,7 +99,7 @@ <item msgid="79513688117503758">"Μικρή πλευρά"</item> </string-array> <string-array name="orientation_labels"> - <item msgid="4061931020926489228">"Πορτραίτο"</item> + <item msgid="4061931020926489228">"Πορτρέτο"</item> <item msgid="3199660090246166812">"Οριζόντια"</item> </string-array> <string name="print_write_error_message" msgid="5787642615179572543">"Δεν ήταν δυνατή η εγγραφή στο αρχείο"</string> diff --git a/packages/PrintSpooler/res/values-es-rUS/strings.xml b/packages/PrintSpooler/res/values-es-rUS/strings.xml index 476614b1a60d..9f88f144a77e 100644 --- a/packages/PrintSpooler/res/values-es-rUS/strings.xml +++ b/packages/PrintSpooler/res/values-es-rUS/strings.xml @@ -56,9 +56,9 @@ <string name="print_select_printer" msgid="7388760939873368698">"Seleccionar impresora"</string> <string name="print_forget_printer" msgid="5035287497291910766">"No recordar impresora"</string> <plurals name="print_search_result_count_utterance" formatted="false" msgid="6997663738361080868"> - <item quantity="many">Se encontraron <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras.</item> - <item quantity="other">Se encontraron <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras.</item> - <item quantity="one">Se encontró <xliff:g id="COUNT_0">%1$s</xliff:g> impresora.</item> + <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> de impresoras encontradas</item> + <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> impresoras encontradas</item> + <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> impresora encontrada</item> </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Más información sobre esta impresora"</string> @@ -77,9 +77,9 @@ <string name="disabled_services_title" msgid="7313253167968363211">"Servicios inhabilitados"</string> <string name="all_services_title" msgid="5578662754874906455">"Todos los servicios"</string> <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="many">Instala para ver <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="other">Instala para ver <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="one">Instala para ver <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> + <item quantity="many">Instala para descubrir <xliff:g id="COUNT_1">%1$s</xliff:g> de impresoras</item> + <item quantity="other">Instala para descubrir <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> + <item quantity="one">Instala para descubrir <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimiendo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> diff --git a/packages/PrintSpooler/res/values-es/strings.xml b/packages/PrintSpooler/res/values-es/strings.xml index 507b2a7a8f25..104a1bf578a0 100644 --- a/packages/PrintSpooler/res/values-es/strings.xml +++ b/packages/PrintSpooler/res/values-es/strings.xml @@ -56,9 +56,9 @@ <string name="print_select_printer" msgid="7388760939873368698">"Seleccionar impresora"</string> <string name="print_forget_printer" msgid="5035287497291910766">"Olvidar impresora"</string> <plurals name="print_search_result_count_utterance" formatted="false" msgid="6997663738361080868"> - <item quantity="many">Se han encontrado <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="other">Se han encontrado <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="one">Se ha encontrado <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> + <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> impresoras encontradas</item> + <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> impresoras encontradas</item> + <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> impresora encontrada</item> </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Más información sobre esta impresora"</string> diff --git a/packages/PrintSpooler/res/values-fr-rCA/strings.xml b/packages/PrintSpooler/res/values-fr-rCA/strings.xml index 6ffad709b2f3..fb885574449c 100644 --- a/packages/PrintSpooler/res/values-fr-rCA/strings.xml +++ b/packages/PrintSpooler/res/values-fr-rCA/strings.xml @@ -33,7 +33,7 @@ <string name="pages_range_example" msgid="8558694453556945172">"p. ex. 1-5, 8, 11-13"</string> <string name="print_preview" msgid="8010217796057763343">"Aperçu avant impression"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"Installer un lecteur PDF pour voir l\'aperçu"</string> - <string name="printing_app_crashed" msgid="854477616686566398">"L\'application à l\'origine de l\'impression a planté"</string> + <string name="printing_app_crashed" msgid="854477616686566398">"L\'appli à l\'origine de l\'impression a planté"</string> <string name="generating_print_job" msgid="3119608742651698916">"Génération tâche impression…"</string> <string name="save_as_pdf" msgid="5718454119847596853">"Enregistrer au format PDF"</string> <string name="all_printers" msgid="5018829726861876202">"Toutes les imprimantes…"</string> @@ -56,9 +56,9 @@ <string name="print_select_printer" msgid="7388760939873368698">"Sélectionner une imprimante"</string> <string name="print_forget_printer" msgid="5035287497291910766">"Supprimer l\'imprimante"</string> <plurals name="print_search_result_count_utterance" formatted="false" msgid="6997663738361080868"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> imprimante trouvée</item> - <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> imprimante trouvées</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> imprimante trouvées</item> + <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> imprimante trouvée</item> + <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> d\'imprimantes trouvées</item> + <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> imprimantes trouvées</item> </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Plus d\'information sur cette imprimante"</string> @@ -96,7 +96,7 @@ <item msgid="2762241247228983754">"Couleur"</item> </string-array> <string-array name="duplex_mode_labels"> - <item msgid="3882302912790928315">"Aucune"</item> + <item msgid="3882302912790928315">"Aucun"</item> <item msgid="7296563835355641719">"Bord long"</item> <item msgid="79513688117503758">"Bord court"</item> </string-array> diff --git a/packages/PrintSpooler/res/values-it/strings.xml b/packages/PrintSpooler/res/values-it/strings.xml index 2a64d3debf58..fc03e6449cf8 100644 --- a/packages/PrintSpooler/res/values-it/strings.xml +++ b/packages/PrintSpooler/res/values-it/strings.xml @@ -56,7 +56,7 @@ <string name="print_select_printer" msgid="7388760939873368698">"Seleziona stampante"</string> <string name="print_forget_printer" msgid="5035287497291910766">"Elimina stampante"</string> <plurals name="print_search_result_count_utterance" formatted="false" msgid="6997663738361080868"> - <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> stampanti trovate</item> + <item quantity="many"><xliff:g id="COUNT_1">%1$s</xliff:g> di stampanti trovate</item> <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> stampanti trovate</item> <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> stampante trovata</item> </plurals> @@ -77,9 +77,9 @@ <string name="disabled_services_title" msgid="7313253167968363211">"Servizi disattivati"</string> <string name="all_services_title" msgid="5578662754874906455">"Tutti i servizi"</string> <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="many">Installa per rilevare <xliff:g id="COUNT_1">%1$s</xliff:g> stampanti</item> - <item quantity="other">Installa per rilevare <xliff:g id="COUNT_1">%1$s</xliff:g> stampanti</item> - <item quantity="one">Installa per rilevare <xliff:g id="COUNT_0">%1$s</xliff:g> stampante</item> + <item quantity="many">Installa per individuare <xliff:g id="COUNT_1">%1$s</xliff:g> di stampanti</item> + <item quantity="other">Installa per individuare <xliff:g id="COUNT_1">%1$s</xliff:g> stampanti</item> + <item quantity="one">Installa per individuare <xliff:g id="COUNT_0">%1$s</xliff:g> stampante</item> </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Stampa di <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Annullamento di <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -96,7 +96,7 @@ <item msgid="2762241247228983754">"A colori"</item> </string-array> <string-array name="duplex_mode_labels"> - <item msgid="3882302912790928315">"Nessuno"</item> + <item msgid="3882302912790928315">"Nessuna"</item> <item msgid="7296563835355641719">"Lato lungo"</item> <item msgid="79513688117503758">"Lato corto"</item> </string-array> diff --git a/packages/PrintSpooler/res/values-kn/strings.xml b/packages/PrintSpooler/res/values-kn/strings.xml index 150ede4f8e62..27279a7e8fc9 100644 --- a/packages/PrintSpooler/res/values-kn/strings.xml +++ b/packages/PrintSpooler/res/values-kn/strings.xml @@ -35,7 +35,7 @@ <string name="install_for_print_preview" msgid="6366303997385509332">"ಪೂರ್ವವೀಕ್ಷಣೆಗಾಗಿ PDF ವೀಕ್ಷಕವನ್ನು ಸ್ಥಾಪಿಸಿ"</string> <string name="printing_app_crashed" msgid="854477616686566398">"ಮುದ್ರಣದ ಅಪ್ಲಿಕೇಶನ್ ಕ್ರ್ಯಾಶ್ ಆಗಿದೆ"</string> <string name="generating_print_job" msgid="3119608742651698916">"ಮುದ್ರಣ ಕಾರ್ಯ ರಚಿಸಲಾಗುತ್ತಿದೆ"</string> - <string name="save_as_pdf" msgid="5718454119847596853">"PDF ರೂಪದಲ್ಲಿ ಉಳಿಸಿ"</string> + <string name="save_as_pdf" msgid="5718454119847596853">"PDF ರೂಪದಲ್ಲಿ ಸೇವ್ ಮಾಡಿ"</string> <string name="all_printers" msgid="5018829726861876202">"ಎಲ್ಲಾ ಪ್ರಿಂಟರ್ಗಳು…"</string> <string name="print_dialog" msgid="32628687461331979">"ಮುದ್ರಣ ಸಂವಾದ"</string> <string name="current_page_template" msgid="5145005201131935302">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g>/<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> diff --git a/packages/PrintSpooler/res/values-or/strings.xml b/packages/PrintSpooler/res/values-or/strings.xml index a29f320cabdd..4aca0a49aee5 100644 --- a/packages/PrintSpooler/res/values-or/strings.xml +++ b/packages/PrintSpooler/res/values-or/strings.xml @@ -40,7 +40,7 @@ <string name="print_dialog" msgid="32628687461331979">"ପ୍ରିଣ୍ଟ ଡାୟଲଗ୍"</string> <string name="current_page_template" msgid="5145005201131935302">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g>/<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"<xliff:g id="PAGE_COUNT">%2$d</xliff:g>ରୁ <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> ପୃଷ୍ଠା"</string> - <string name="summary_template" msgid="8899734908625669193">"ସାରାଂଶ, କପୀ <xliff:g id="COPIES">%1$s</xliff:g>, କାଗଜ ଆକାର <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="summary_template" msgid="8899734908625669193">"ସାରାଂଶ, କପି <xliff:g id="COPIES">%1$s</xliff:g>, କାଗଜ ଆକାର <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> <string name="expand_handle" msgid="7282974448109280522">"ହ୍ୟାଣ୍ଡେଲ୍ ବଡ଼ କରନ୍ତୁ"</string> <string name="collapse_handle" msgid="6886637989442507451">"ହ୍ୟାଣ୍ଡେଲ୍ ଛୋଟ କରନ୍ତୁ"</string> <string name="print_button" msgid="645164566271246268">"ପ୍ରିଣ୍ଟ କରନ୍ତୁ"</string> diff --git a/packages/SettingsLib/AppPreference/res/values-fr-rCA/strings.xml b/packages/SettingsLib/AppPreference/res/values-fr-rCA/strings.xml index 7be1e97f51e0..4771382de59b 100644 --- a/packages/SettingsLib/AppPreference/res/values-fr-rCA/strings.xml +++ b/packages/SettingsLib/AppPreference/res/values-fr-rCA/strings.xml @@ -17,5 +17,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="install_type_instant" msgid="7217305006127216917">"Application instantanée"</string> + <string name="install_type_instant" msgid="7217305006127216917">"Appli instantanée"</string> </resources> diff --git a/packages/SettingsLib/ProfileSelector/res/values-fr-rCA/strings.xml b/packages/SettingsLib/ProfileSelector/res/values-fr-rCA/strings.xml index c9ba591a9aeb..0e74e4d3dc77 100644 --- a/packages/SettingsLib/ProfileSelector/res/values-fr-rCA/strings.xml +++ b/packages/SettingsLib/ProfileSelector/res/values-fr-rCA/strings.xml @@ -18,6 +18,6 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="settingslib_category_personal" msgid="1142302328104700620">"Personnel"</string> - <string name="settingslib_category_work" msgid="4867750733682444676">"Professionnel"</string> + <string name="settingslib_category_work" msgid="4867750733682444676">"Profil professionnel"</string> <string name="settingslib_category_private" msgid="5039276873477591386">"Privé"</string> </resources> diff --git a/packages/SettingsLib/SearchWidget/res/values-fa/strings.xml b/packages/SettingsLib/SearchWidget/res/values-fa/strings.xml index 2c9aaa5e9f95..2babdd8a54f0 100644 --- a/packages/SettingsLib/SearchWidget/res/values-fa/strings.xml +++ b/packages/SettingsLib/SearchWidget/res/values-fa/strings.xml @@ -17,5 +17,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="search_menu" msgid="1914043873178389845">"تنظیمات جستجو"</string> + <string name="search_menu" msgid="1914043873178389845">"جستجوی «تنظیمات»"</string> </resources> diff --git a/packages/SettingsLib/Spa/screenshot/robotests/Android.bp b/packages/SettingsLib/Spa/screenshot/robotests/Android.bp index c834c80ad536..f6477e2f052a 100644 --- a/packages/SettingsLib/Spa/screenshot/robotests/Android.bp +++ b/packages/SettingsLib/Spa/screenshot/robotests/Android.bp @@ -63,9 +63,9 @@ android_robolectric_test { "uiautomator-helpers", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "truth", ], upstream: true, diff --git a/packages/SettingsLib/SpaPrivileged/res/values-fr-rCA/strings.xml b/packages/SettingsLib/SpaPrivileged/res/values-fr-rCA/strings.xml index a271ff52e801..433d6d5a293e 100644 --- a/packages/SettingsLib/SpaPrivileged/res/values-fr-rCA/strings.xml +++ b/packages/SettingsLib/SpaPrivileged/res/values-fr-rCA/strings.xml @@ -17,10 +17,10 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="no_applications" msgid="5800789569715871963">"Aucune application"</string> + <string name="no_applications" msgid="5800789569715871963">"Aucune appli"</string> <string name="menu_show_system" msgid="906304605807554788">"Afficher le système"</string> <string name="menu_hide_system" msgid="374571689914923020">"Masquer le système"</string> - <string name="app_permission_summary_allowed" msgid="6115213465364138103">"Autorisé"</string> + <string name="app_permission_summary_allowed" msgid="6115213465364138103">"Autorisée"</string> <string name="app_permission_summary_not_allowed" msgid="58396132188553920">"Non autorisée"</string> <string name="version_text" msgid="4001669804596458577">"version <xliff:g id="VERSION_NUM">%1$s</xliff:g>"</string> <string name="cloned_app_info_label" msgid="1765651167024478391">"Clone de <xliff:g id="PACKAGE_LABEL">%1$s</xliff:g>"</string> diff --git a/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/preference/RestrictedSwitchPreferenceModel.kt b/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/preference/RestrictedSwitchPreferenceModel.kt index c9934adfad22..fb23637a9f4c 100644 --- a/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/preference/RestrictedSwitchPreferenceModel.kt +++ b/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/preference/RestrictedSwitchPreferenceModel.kt @@ -115,7 +115,7 @@ internal class RestrictedSwitchPreferenceModel( content: @Composable (SwitchPreferenceModel) -> Unit, ) { val context = LocalContext.current - val restrictedSwitchPreferenceModel = remember(restrictedMode, model.title) { + val restrictedSwitchPreferenceModel = remember(restrictedMode, model) { RestrictedSwitchPreferenceModel(context, model, restrictedMode) } restrictedSwitchPreferenceModel.RestrictionWrapper { diff --git a/packages/SettingsLib/aconfig/settingslib.aconfig b/packages/SettingsLib/aconfig/settingslib.aconfig index 32557b979bf5..a1587562d681 100644 --- a/packages/SettingsLib/aconfig/settingslib.aconfig +++ b/packages/SettingsLib/aconfig/settingslib.aconfig @@ -79,3 +79,13 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + name: "enable_determining_spatial_audio_attributes_by_profile" + namespace: "cross_device_experiences" + description: "Use bluetooth profile connection policy to determine spatial audio attributes" + bug: "341005211" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/packages/SettingsLib/res/values-af/strings.xml b/packages/SettingsLib/res/values-af/strings.xml index 6b6f803e19b0..dcaff9f7554b 100644 --- a/packages/SettingsLib/res/values-af/strings.xml +++ b/packages/SettingsLib/res/values-af/strings.xml @@ -37,7 +37,7 @@ <string name="wifi_security_wep" msgid="1413627788581122366">"WEP"</string> <string name="wifi_security_wpa" msgid="1072450904799930636">"WPA-persoonlik"</string> <string name="wifi_security_wpa2" msgid="4038267581230425543">"WPA2-persoonlik"</string> - <string name="wifi_security_wpa_wpa2" msgid="946853615482465986">"WPA/WPA2-Personal"</string> + <string name="wifi_security_wpa_wpa2" msgid="946853615482465986">"WPA/WPA2-persoonlik"</string> <string name="wifi_security_eap" msgid="6179633834446852269">"WPA/WPA2/WPA3-onderneming"</string> <string name="wifi_security_eap_wpa" msgid="6189023812330549957">"WPA-onderneming"</string> <string name="wifi_security_eap_wpa_wpa2" msgid="1089879674896108216">"WPA/WPA2-onderneming"</string> diff --git a/packages/SettingsLib/res/values-ar/strings.xml b/packages/SettingsLib/res/values-ar/strings.xml index 4b11a766029b..460a6302e575 100644 --- a/packages/SettingsLib/res/values-ar/strings.xml +++ b/packages/SettingsLib/res/values-ar/strings.xml @@ -100,7 +100,7 @@ <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"البلوتوث نشِط. مستوى الشحن في سماعة الرأس اليمنى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"مستوى طاقة البطارية <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"مستوى شحن البطارية: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"مستوى الشحن في سماعة الرأس اليسرى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>، مستوى الشحن في سماعة الرأس اليمنى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"مستوى الشحن في السمّاعة اليسرى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>، السمّاعة اليمنى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"مستوى الشحن في سماعة الرأس اليسرى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"مستوى الشحن في سماعة الرأس اليمنى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"مستوى شحن البطارية في سماعة الرأس اليسرى: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> diff --git a/packages/SettingsLib/res/values-as/arrays.xml b/packages/SettingsLib/res/values-as/arrays.xml index 5a06cb326c00..b5dfde5b9798 100644 --- a/packages/SettingsLib/res/values-as/arrays.xml +++ b/packages/SettingsLib/res/values-as/arrays.xml @@ -71,7 +71,7 @@ <string-array name="bt_hci_snoop_log_profile_filter_entries"> <item msgid="3961868665260627524">"অক্ষম কৰক"</item> <item msgid="2505973306504851132">"বৰ্ণৰ ষ্ট্ৰীঙেৰে পূৰ কৰক"</item> - <item msgid="5883011000629613855">"কেৱল হেডাৰ এৰক"</item> + <item msgid="5883011000629613855">"কেৱল হে’ডাৰ এৰক"</item> <item msgid="1051534112762023603">"সম্পূৰ্ণকৈ আঁতৰাওক"</item> </string-array> <string-array name="bluetooth_avrcp_versions"> @@ -276,8 +276,8 @@ </string-array> <string-array name="usb_configuration_titles"> <item msgid="3358668781763928157">"চাৰ্জ কৰি থকা হৈছে"</item> - <item msgid="7804797564616858506">"এমটিপি (মিডিয়া ট্ৰান্সফাৰ প্ৰ’ট’কল)"</item> - <item msgid="910925519184248772">"পিটিপি (পিকচাৰ ট্ৰান্সফাৰ প্ৰ’ট’কল)"</item> + <item msgid="7804797564616858506">"এমটিপি (মিডিয়া ট্ৰান্সফাৰ প্ৰ্ৰ\'টকল)"</item> + <item msgid="910925519184248772">"পিটিপি (পিকচাৰ ট্ৰান্সফাৰ প্ৰ্ৰ\'টকল)"</item> <item msgid="3825132913289380004">"RNDIS (USB ইথাৰনেট)"</item> <item msgid="8828567335701536560">"ধ্বনিৰ উৎস"</item> <item msgid="8688681727755534982">"এমআইডিআই"</item> diff --git a/packages/SettingsLib/res/values-as/strings.xml b/packages/SettingsLib/res/values-as/strings.xml index d02164704884..9fbd278f8034 100644 --- a/packages/SettingsLib/res/values-as/strings.xml +++ b/packages/SettingsLib/res/values-as/strings.xml @@ -132,8 +132,8 @@ <string name="bluetooth_profile_pan_nap" msgid="7871974753822470050">"ইণ্টাৰনেট সংযোগ শ্বেয়াৰ"</string> <string name="bluetooth_profile_map" msgid="8907204701162107271">"পাঠ বাৰ্তা"</string> <string name="bluetooth_profile_sap" msgid="8304170950447934386">"ছিমৰ এক্সেছ"</string> - <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_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="2607867572569689732">"শ্ৰৱণ যন্ত্ৰ"</string> <string name="bluetooth_profile_le_audio" msgid="1725521360076451751">"LE অডিঅ’"</string> <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="5757754050938807276">"শ্ৰৱণ যন্ত্ৰৰ সৈতে সংযোগ কৰা হৈছে"</string> diff --git a/packages/SettingsLib/res/values-az/strings.xml b/packages/SettingsLib/res/values-az/strings.xml index b7dda834f946..88c31de50968 100644 --- a/packages/SettingsLib/res/values-az/strings.xml +++ b/packages/SettingsLib/res/values-az/strings.xml @@ -424,7 +424,7 @@ <string name="force_allow_on_external_summary" msgid="8525425782530728238">"Manifest dəyərindən asılı olmayaraq tətbiqlərin xarici daşıyıcılarda saxlanmasına icazə verilsin"</string> <string name="force_resizable_activities" msgid="7143612144399959606">"Çoxpəncərəli rejimdə ölçü dəyişdirilməsi"</string> <string name="force_resizable_activities_summary" msgid="2490382056981583062">"Manifest dəyərindən asılı olmayaraq çoxpəncərəli rejimdə pəncərə ölçüsünün dəyişdirilməsinə icazə verilsin"</string> - <string name="enable_freeform_support" msgid="7599125687603914253">"İxtiyari formada pəncərə yaradılsın"</string> + <string name="enable_freeform_support" msgid="7599125687603914253">"Sərbəst ölçülü pəncərələri aktiv edin"</string> <string name="enable_freeform_support_summary" msgid="1822862728719276331">"Eksperimental olaraq ixtiyari formada pəncərə yaradılsın"</string> <string name="local_backup_password_title" msgid="4631017948933578709">"Masaüstü rezerv parolu"</string> <string name="local_backup_password_summary_none" msgid="7646898032616361714">"Masaüstü tam rezervlər hazırda qorunmayıblar."</string> diff --git a/packages/SettingsLib/res/values-be/strings.xml b/packages/SettingsLib/res/values-be/strings.xml index 95586eaf9da5..7943cd49d528 100644 --- a/packages/SettingsLib/res/values-be/strings.xml +++ b/packages/SettingsLib/res/values-be/strings.xml @@ -164,7 +164,7 @@ <string name="bluetooth_pairing_pin_error_message" msgid="264422127613704940">"Не спалучана з прыладай <xliff:g id="DEVICE_NAME">%1$s</xliff:g> з-за няправільнага PIN-кода або ключа доступу."</string> <string name="bluetooth_pairing_device_down_error_message" msgid="2554424863101358857">"Не магу размаўляць з прыладай <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> <string name="bluetooth_pairing_rejected_error_message" msgid="5943444352777314442">"Злучэнне адхілена прыладай <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> - <string name="bluetooth_talkback_computer" msgid="3736623135703893773">"Камп\'ютар"</string> + <string name="bluetooth_talkback_computer" msgid="3736623135703893773">"Камп’ютар"</string> <string name="bluetooth_talkback_headset" msgid="3406852564400882682">"Гарнітура"</string> <string name="bluetooth_talkback_phone" msgid="868393783858123880">"Тэлефон"</string> <string name="bluetooth_talkback_imaging" msgid="8781682986822514331">"Прылада апрацоўкі відарысаў"</string> @@ -343,10 +343,10 @@ <string name="mobile_data_always_on_summary" msgid="1112156365594371019">"Перадача даных мабільнай сувязі заўсёды актыўная, нават калі актыўная сетка Wi‑Fi (для хуткага пераключэння паміж сеткамі)."</string> <string name="tethering_hardware_offload_summary" msgid="7801345335142803029">"Выкарыстоўваць апаратнае паскарэнне ў рэжыме мадэма пры наяўнасці"</string> <string name="adb_warning_title" msgid="7708653449506485728">"Дазволіць адладку па USB?"</string> - <string name="adb_warning_message" msgid="8145270656419669221">"Адладка па USB прызначана толькі для мэт распрацоўкі. Яна можа выкарыстоўвацца, каб капіраваць даныя паміж камп\'ютарам і прыладай, усталёўваць праграмы на прыладзе без папярэдняга апавяшчэння і чытаць даныя журнала."</string> + <string name="adb_warning_message" msgid="8145270656419669221">"Адладка па USB прызначана толькі для мэт распрацоўкі. Яна можа выкарыстоўвацца, каб капіраваць даныя паміж камп’ютарам і прыладай, усталёўваць праграмы на прыладзе без папярэдняга апавяшчэння і чытаць даныя журнала."</string> <string name="adbwifi_warning_title" msgid="727104571653031865">"Дазволіць адладку па Wi-Fi?"</string> - <string name="adbwifi_warning_message" msgid="8005936574322702388">"Адладка па Wi-Fi прызначана толькі для мэт распрацоўкі. Яна можа выкарыстоўвацца, каб капіраваць даныя паміж камп\'ютарам і прыладай, усталёўваць праграмы на прыладзе без апавяшчэння і чытаць даныя журнала."</string> - <string name="adb_keys_warning_message" msgid="2968555274488101220">"Скасаваць доступ да адладкі па USB з усіх камп\'ютараў, на якiх вы уваходзiлi ў сiстэму?"</string> + <string name="adbwifi_warning_message" msgid="8005936574322702388">"Адладка па Wi-Fi прызначана толькі для мэт распрацоўкі. Яна можа выкарыстоўвацца, каб капіраваць даныя паміж камп’ютарам і прыладай, усталёўваць праграмы на прыладзе без апавяшчэння і чытаць даныя журнала."</string> + <string name="adb_keys_warning_message" msgid="2968555274488101220">"Скасаваць доступ да адладкі па USB з усіх камп’ютараў, на якiх вы уваходзiлi ў сiстэму?"</string> <string name="dev_settings_warning_title" msgid="8251234890169074553">"Дазволiць налады распрацоўшчыка?"</string> <string name="dev_settings_warning_message" msgid="37741686486073668">"Гэтыя налады прызначаны толькi для распрацоўшыкаў. Яны могуць выклікаць збоi прылад i ўсталяваных на iх прыкладанняў, а таксама перашкаджаць iх працы."</string> <string name="verify_apps_over_usb_title" msgid="6031809675604442636">"Праверце праграмы па USB"</string> diff --git a/packages/SettingsLib/res/values-ca/strings.xml b/packages/SettingsLib/res/values-ca/strings.xml index 45f08da8b928..b4c138a8195c 100644 --- a/packages/SettingsLib/res/values-ca/strings.xml +++ b/packages/SettingsLib/res/values-ca/strings.xml @@ -100,7 +100,7 @@ <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"Actiu. D: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> de bateria."</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> de bateria"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"Bateria: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"E: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g> de bateria, D: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> de bateria."</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"E: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g> de bateria. D: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> de bateria."</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"Esquerre: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> de bateria"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"Dret: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> de bateria."</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"Esquerre: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> diff --git a/packages/SettingsLib/res/values-da/arrays.xml b/packages/SettingsLib/res/values-da/arrays.xml index 3c5135bb87e8..3d2d6c7a5681 100644 --- a/packages/SettingsLib/res/values-da/arrays.xml +++ b/packages/SettingsLib/res/values-da/arrays.xml @@ -156,13 +156,13 @@ <item msgid="1241278021345116816">"Optimeret til lydkvalitet (990 kbps/909 kbps)"</item> <item msgid="3523665555859696539">"Afbalancer lyd- og forbindelseskvalitet (660 kbps/606 kbps)"</item> <item msgid="886408010459747589">"Optimeret til forbindelseskvalitet (330 kbps/303 kbps)"</item> - <item msgid="3808414041654351577">"Bedste resultat (tilpasset bithastighed)"</item> + <item msgid="3808414041654351577">"Bedste resultat (adaptiv bithastighed)"</item> </string-array> <string-array name="bluetooth_a2dp_codec_ldac_playback_quality_summaries"> <item msgid="804499336721569838">"Optimeret til lydkvalitet"</item> <item msgid="7451422070435297462">"Afbalancer lyd- og forbindelseskvalitet"</item> <item msgid="6173114545795428901">"Optimeret til forbindelseskvalitet"</item> - <item msgid="4349908264188040530">"Bedste resultat (tilpasset bithastighed)"</item> + <item msgid="4349908264188040530">"Bedste resultat (adaptiv bithastighed)"</item> </string-array> <string-array name="bluetooth_audio_active_device_summaries"> <item msgid="8019740759207729126"></item> diff --git a/packages/SettingsLib/res/values-de/strings.xml b/packages/SettingsLib/res/values-de/strings.xml index caeee064bf99..b263afe342c8 100644 --- a/packages/SettingsLib/res/values-de/strings.xml +++ b/packages/SettingsLib/res/values-de/strings.xml @@ -708,7 +708,7 @@ <string name="physical_keyboard_title" msgid="4811935435315835220">"Physische Tastatur"</string> <string name="keyboard_layout_dialog_title" msgid="3927180147005616290">"Tastaturlayout wählen"</string> <string name="keyboard_layout_default_label" msgid="1997292217218546957">"Standard"</string> - <string name="turn_screen_on_title" msgid="2662312432042116026">"Steuerelement zum Aktivieren des Displays"</string> + <string name="turn_screen_on_title" msgid="2662312432042116026">"Berechtigung zum Aktivieren des Displays"</string> <string name="allow_turn_screen_on" msgid="6194845766392742639">"Aktivieren des Displays erlauben"</string> <string name="allow_turn_screen_on_description" msgid="43834403291575164">"Einer App erlauben, das Display zu aktivieren. Wenn du diese Erlaubnis erteilst, kann die App jederzeit das Display aktivieren – auch ohne dass du dies beabsichtigst."</string> <string name="bt_le_audio_broadcast_dialog_title" msgid="5392738488989777074">"<xliff:g id="APP_NAME">%1$s</xliff:g> nicht mehr streamen?"</string> diff --git a/packages/SettingsLib/res/values-en-rCA/strings.xml b/packages/SettingsLib/res/values-en-rCA/strings.xml index 42f9b5fbdd10..fbefd1a2073e 100644 --- a/packages/SettingsLib/res/values-en-rCA/strings.xml +++ b/packages/SettingsLib/res/values-en-rCA/strings.xml @@ -653,7 +653,7 @@ <string name="guest_exit_dialog_title" msgid="1846494656849381804">"Exit guest mode?"</string> <string name="guest_exit_dialog_message" msgid="1743218864242719783">"This will delete apps and data from the current guest session"</string> <string name="grant_admin" msgid="4323199171790522574">"Yes, make them an admin"</string> - <string name="not_grant_admin" msgid="3557849576157702485">"No, dont make them an admin"</string> + <string name="not_grant_admin" msgid="3557849576157702485">"No, don\'t make them an admin"</string> <string name="guest_exit_dialog_button" msgid="1736401897067442044">"Exit"</string> <string name="guest_exit_dialog_title_non_ephemeral" msgid="7675327443743162986">"Save guest activity?"</string> <string name="guest_exit_dialog_message_non_ephemeral" msgid="223385323235719442">"You can save activity from the current session or delete all apps and data"</string> diff --git a/packages/SettingsLib/res/values-es-rUS/arrays.xml b/packages/SettingsLib/res/values-es-rUS/arrays.xml index 4d4d7c9be0e3..541f4db7e691 100644 --- a/packages/SettingsLib/res/values-es-rUS/arrays.xml +++ b/packages/SettingsLib/res/values-es-rUS/arrays.xml @@ -40,7 +40,7 @@ <item msgid="8339720953594087771">"Conectando a <xliff:g id="NETWORK_NAME">%1$s</xliff:g>…"</item> <item msgid="3028983857109369308">"Autenticando con <xliff:g id="NETWORK_NAME">%1$s</xliff:g>…"</item> <item msgid="4287401332778341890">"Obteniendo dirección IP de <xliff:g id="NETWORK_NAME">%1$s</xliff:g>…"</item> - <item msgid="1043944043827424501">"Conectado a <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</item> + <item msgid="1043944043827424501">"Se estableció conexión con <xliff:g id="NETWORK_NAME">%1$s</xliff:g>"</item> <item msgid="7445993821842009653">"Suspendido"</item> <item msgid="1175040558087735707">"Desconectando de <xliff:g id="NETWORK_NAME">%1$s</xliff:g>…"</item> <item msgid="699832486578171722">"Desconectado"</item> diff --git a/packages/SettingsLib/res/values-es-rUS/strings.xml b/packages/SettingsLib/res/values-es-rUS/strings.xml index b96dd33e35c0..6342db3f5fb2 100644 --- a/packages/SettingsLib/res/values-es-rUS/strings.xml +++ b/packages/SettingsLib/res/values-es-rUS/strings.xml @@ -62,7 +62,7 @@ <string name="wifi_no_internet" msgid="1774198889176926299">"No hay acceso a Internet"</string> <string name="saved_network" msgid="7143698034077223645">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="connected_via_network_scorer" msgid="7665725527352893558">"Conexión automática mediante %1$s"</string> - <string name="connected_via_network_scorer_default" msgid="7973529709744526285">"Conectado automáticamente mediante proveedor de calificación de red"</string> + <string name="connected_via_network_scorer_default" msgid="7973529709744526285">"Conectado automáticamente mediante proveedor de calificación de redes"</string> <string name="connected_via_app" msgid="3532267661404276584">"Conexión a través de <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="tap_to_sign_up" msgid="5356397741063740395">"Presiona para registrarte"</string> <string name="wifi_connected_no_internet" msgid="5087420713443350646">"Sin Internet"</string> @@ -135,9 +135,9 @@ <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="2607867572569689732">"Audífonos"</string> - <string name="bluetooth_profile_le_audio" msgid="1725521360076451751">"audio de bajo consumo"</string> + <string name="bluetooth_profile_le_audio" msgid="1725521360076451751">"LE Audio"</string> <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="5757754050938807276">"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_le_audio_profile_summary_connected" msgid="6916226974453480650">"Conectado a LE Audio"</string> <string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"Conectado al audio multimedia"</string> <string name="bluetooth_headset_profile_summary_connected" msgid="2420981566026949688">"Conectado al audio del dispositivo"</string> <string name="bluetooth_opp_profile_summary_connected" msgid="2393521801478157362">"Conectado al servidor de transferencia de archivo"</string> @@ -163,7 +163,7 @@ <string name="bluetooth_pairing_error_message" msgid="6626399020672335565">"No se pudo vincular con <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> <string name="bluetooth_pairing_pin_error_message" msgid="264422127613704940">"No se pudo vincular con <xliff:g id="DEVICE_NAME">%1$s</xliff:g>: llave de acceso o PIN incorrectos."</string> <string name="bluetooth_pairing_device_down_error_message" msgid="2554424863101358857">"No se puede establecer la comunicación con <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> - <string name="bluetooth_pairing_rejected_error_message" msgid="5943444352777314442">"Vínculo rechazado por <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> + <string name="bluetooth_pairing_rejected_error_message" msgid="5943444352777314442">"Vinculación rechazada por <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string> <string name="bluetooth_talkback_computer" msgid="3736623135703893773">"Computadora"</string> <string name="bluetooth_talkback_headset" msgid="3406852564400882682">"Auriculares"</string> <string name="bluetooth_talkback_phone" msgid="868393783858123880">"Teléfono"</string> @@ -189,7 +189,7 @@ <string name="tether_settings_title_wifi" msgid="4803402057533895526">"Hotspot portátil"</string> <string name="tether_settings_title_bluetooth" msgid="916519902721399656">"Conexión Bluetooth"</string> <string name="tether_settings_title_usb_bluetooth" msgid="1727111807207577322">"Compartir conexión"</string> - <string name="tether_settings_title_all" msgid="8910259483383010470">"Conexión móvil y hotspot"</string> + <string name="tether_settings_title_all" msgid="8910259483383010470">"Conexión/hotspot portable"</string> <string name="managed_user_title" msgid="449081789742645723">"Todas las apps de trabajo"</string> <string name="unknown" msgid="3544487229740637809">"Desconocido"</string> <string name="running_process_item_user_label" msgid="3988506293099805796">"Usuario: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string> @@ -279,7 +279,7 @@ <string name="keywords_adb_wireless" msgid="6507505581882171240">"adb, debug, dev"</string> <string name="bugreport_in_power" msgid="8664089072534638709">"Acceso directo para informes de errores"</string> <string name="bugreport_in_power_summary" msgid="1885529649381831775">"Muestra un botón en el menú de encendido para realizar un informe de errores"</string> - <string name="keep_screen_on" msgid="1187161672348797558">"Permanecer activo"</string> + <string name="keep_screen_on" msgid="1187161672348797558">"No desactivar"</string> <string name="keep_screen_on_summary" msgid="1510731514101925829">"La pantalla nunca quedará inactiva mientras el dispositivo se esté cargando"</string> <string name="bt_hci_snoop_log" msgid="7291287955649081448">"Registro de Bluetooth HCI"</string> <string name="bt_hci_snoop_log_summary" msgid="6808538971394092284">"Capturar paquetes de Bluetooth (activa/desactiva el Bluetooth después de cambiar esta configuración)"</string> @@ -379,12 +379,12 @@ <string name="show_touches" msgid="8437666942161289025">"Mostrar presiones"</string> <string name="show_touches_summary" msgid="3692861665994502193">"Muestra la ubicación de las presiones en la pantalla"</string> <string name="show_key_presses" msgid="6360141722735900214">"Ver pulsaciones de teclas"</string> - <string name="show_key_presses_summary" msgid="725387457373015024">"Ver coment. visual para pulsac. de teclas físicas"</string> - <string name="show_screen_updates" msgid="2078782895825535494">"Ver actualiz. de superficie"</string> + <string name="show_key_presses_summary" msgid="725387457373015024">"Ver comentario visual para pulsaciones de teclas físicas"</string> + <string name="show_screen_updates" msgid="2078782895825535494">"Mostrar actualizaciones"</string> <string name="show_screen_updates_summary" msgid="2126932969682087406">"Destello en superficie por actualización"</string> <string name="show_hw_screen_updates" msgid="2021286231267747506">"Mostrar cambios de vista"</string> <string name="show_hw_screen_updates_summary" msgid="3539770072741435691">"Mostrar vistas de ventanas procesadas"</string> - <string name="show_hw_layers_updates" msgid="5268370750002509767">"Ver actualiz. de capas de hardware"</string> + <string name="show_hw_layers_updates" msgid="5268370750002509767">"Act. de capas de hardware"</string> <string name="show_hw_layers_updates_summary" msgid="5850955890493054618">"Luz verde en capas de hardware al actualizarse"</string> <string name="debug_hw_overdraw" msgid="8944851091008756796">"Depurar superpos. de GPU"</string> <string name="disable_overlays" msgid="4206590799671557143">"Desactivar superposición de hardware"</string> @@ -609,7 +609,7 @@ <string name="accessor_no_description_text" msgid="7510967452505591456">"La app no proporcionó una descripción."</string> <string name="accessor_expires_text" msgid="4625619273236786252">"La asignación de tiempo vence el <xliff:g id="DATE">%s</xliff:g>"</string> <string name="delete_blob_text" msgid="2819192607255625697">"Borrar datos compartidos"</string> - <string name="delete_blob_confirmation_text" msgid="7807446938920827280">"¿Seguro que quieres borrar estos datos compartidos?"</string> + <string name="delete_blob_confirmation_text" msgid="7807446938920827280">"¿Confirmas que quieres borrar estos datos compartidos?"</string> <string name="user_add_user_item_summary" msgid="5748424612724703400">"Los usuarios tienen sus propias aplicaciones y contenidos."</string> <string name="user_add_profile_item_summary" msgid="5418602404308968028">"Desde tu cuenta, puedes restringir el acceso a las aplicaciones y al contenido."</string> <string name="user_add_user_item_title" msgid="2394272381086965029">"Usuario"</string> @@ -628,7 +628,7 @@ <string name="user_add_user_type_title" msgid="551279664052914497">"Agregar"</string> <string name="user_new_user_name" msgid="60979820612818840">"Usuario nuevo"</string> <string name="user_new_profile_name" msgid="2405500423304678841">"Perfil nuevo"</string> - <string name="user_info_settings_title" msgid="6351390762733279907">"Datos del usuario"</string> + <string name="user_info_settings_title" msgid="6351390762733279907">"Datos de usuario"</string> <string name="profile_info_settings_title" msgid="105699672534365099">"Datos del perfil"</string> <string name="user_need_lock_message" msgid="4311424336209509301">"Para poder crear un perfil restringido, debes configurar un bloqueo de pantalla que proteja tus aplicaciones y datos personales."</string> <string name="user_set_lock_button" msgid="1427128184982594856">"Configurar bloqueo"</string> diff --git a/packages/SettingsLib/res/values-es/arrays.xml b/packages/SettingsLib/res/values-es/arrays.xml index 1489e5f41ec5..b99219cadbe9 100644 --- a/packages/SettingsLib/res/values-es/arrays.xml +++ b/packages/SettingsLib/res/values-es/arrays.xml @@ -243,7 +243,7 @@ <item msgid="8612549335720461635">"4K (seguro)"</item> <item msgid="7322156123728520872">"4K (mejorado)"</item> <item msgid="7735692090314849188">"4K (mejorado, seguro)"</item> - <item msgid="7346816300608639624">"720p, 1080p (pantalla doble)"</item> + <item msgid="7346816300608639624">"720p, 1080p (pantalla dual)"</item> </string-array> <string-array name="enable_opengl_traces_entries"> <item msgid="4433736508877934305">"Desactivado"</item> diff --git a/packages/SettingsLib/res/values-es/strings.xml b/packages/SettingsLib/res/values-es/strings.xml index 0b96faa7f6b4..458a616aeb2d 100644 --- a/packages/SettingsLib/res/values-es/strings.xml +++ b/packages/SettingsLib/res/values-es/strings.xml @@ -81,7 +81,7 @@ <string name="speed_label_fast" msgid="2677719134596044051">"Rápida"</string> <string name="speed_label_very_fast" msgid="8215718029533182439">"Muy rápida"</string> <string name="wifi_passpoint_expired" msgid="6540867261754427561">"Caducada"</string> - <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> + <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> <string name="bluetooth_disconnected" msgid="7739366554710388701">"Desconectado"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Desconectando…"</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"Estableciendo conexión…"</string> @@ -386,7 +386,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 overdraw de GPU"</string> + <string name="debug_hw_overdraw" msgid="8944851091008756796">"Depurar sobredibujos 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> @@ -414,7 +414,7 @@ <string name="overlay_display_devices_title" msgid="5411894622334469607">"Simular pantallas secundarias"</string> <string name="debug_applications_category" msgid="5394089406638954196">"Aplicaciones"</string> <string name="immediately_destroy_activities" msgid="1826287490705167403">"No mantener actividades"</string> - <string name="immediately_destroy_activities_summary" msgid="6289590341144557614">"Destruye actividades cuando el usuario deja de usarlas"</string> + <string name="immediately_destroy_activities_summary" msgid="6289590341144557614">"Destruir actividades cuando el usuario salga de ellas"</string> <string name="app_process_limit_title" msgid="8361367869453043007">"Límitar procesos en segundo plano"</string> <string name="show_all_anrs" msgid="9160563836616468726">"Mostrar ANR en segundo plano"</string> <string name="show_all_anrs_summary" msgid="8562788834431971392">"Muestra un cuadro de diálogo que informa de que la aplicación no responde en aplicaciones en segundo plano"</string> @@ -615,7 +615,7 @@ <string name="user_add_user_item_title" msgid="2394272381086965029">"Usuario"</string> <string name="user_add_profile_item_title" msgid="3111051717414643029">"Perfil restringido"</string> <string name="user_add_user_title" msgid="5457079143694924885">"¿Añadir nuevo usuario?"</string> - <string name="user_add_user_message_long" msgid="1527434966294733380">"Puedes compartir este dispositivo si creas más usuarios. Cada uno tendrá su propio espacio y podrá personalizarlo con aplicaciones, un fondo de pantalla y mucho más. Los usuarios también pueden ajustar opciones del dispositivo, como la conexión Wi‑Fi, que afectan a todos los usuarios.\n\nCuando añadas un usuario, tendrá que configurar su espacio.\n\nCualquier usuario puede actualizar aplicaciones de todos los usuarios. Es posible que no se transfieran los servicios y opciones de accesibilidad al nuevo usuario."</string> + <string name="user_add_user_message_long" msgid="1527434966294733380">"Puedes compartir este dispositivo si creas más usuarios. Cada uno tendrá su propio espacio y podrá personalizarlo con aplicaciones, un fondo de pantalla y más. Los usuarios también pueden ajustar opciones del dispositivo, como la conexión Wi‑Fi, que afectan a todos los usuarios.\n\nCuando añadas un usuario, tendrá que configurar su espacio.\n\nCualquier usuario puede actualizar aplicaciones de todos los usuarios. Es posible que no se transfieran los servicios y opciones de accesibilidad al nuevo usuario."</string> <string name="user_add_user_message_short" msgid="3295959985795716166">"Al añadir un nuevo usuario, dicha persona debe configurar su espacio.\n\nCualquier usuario puede actualizar las aplicaciones del resto de los usuarios."</string> <string name="user_grant_admin_title" msgid="5157031020083343984">"¿Convertir a este usuario en administrador?"</string> <string name="user_grant_admin_message" msgid="1673791931033486709">"Los administradores tienen privilegios especiales que otros usuarios no tienen. Los administradores pueden gestionar todos los usuarios, actualizar o restablecer este dispositivo, modificar los ajustes, ver todas las aplicaciones instaladas y conceder o revocar privilegios de administrador a otros usuarios."</string> @@ -633,7 +633,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 nuevo usuario…"</string> + <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Creando 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 42c20399f947..e61962c483f8 100644 --- a/packages/SettingsLib/res/values-et/strings.xml +++ b/packages/SettingsLib/res/values-et/strings.xml @@ -127,7 +127,7 @@ <string name="bluetooth_profile_opp" msgid="6692618568149493430">"Failiedastus"</string> <string name="bluetooth_profile_hid" msgid="2969922922664315866">"Sisendseade"</string> <string name="bluetooth_profile_pan" msgid="1006235139308318188">"Juurdepääs internetile"</string> - <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"Luba juurdepääs kontakt-le ja kõneaj-le"</string> + <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"Luba juurdepääs kontaktidele ja kõneajale"</string> <string name="bluetooth_profile_pbap_summary" msgid="402819589201138227">"Teavet kasutatakse kõne teadaannete ja muu jaoks"</string> <string name="bluetooth_profile_pan_nap" msgid="7871974753822470050">"Interneti-ühenduse jagamine"</string> <string name="bluetooth_profile_map" msgid="8907204701162107271">"Tekstsõnumid"</string> diff --git a/packages/SettingsLib/res/values-eu/arrays.xml b/packages/SettingsLib/res/values-eu/arrays.xml index 00f43a3bf51b..6ed484c40e57 100644 --- a/packages/SettingsLib/res/values-eu/arrays.xml +++ b/packages/SettingsLib/res/values-eu/arrays.xml @@ -27,7 +27,7 @@ <item msgid="8356618438494652335">"Autentifikatzen…"</item> <item msgid="2837871868181677206">"IP helbidea lortzen…"</item> <item msgid="4613015005934755724">"Konektatuta"</item> - <item msgid="3763530049995655072">"Etenda"</item> + <item msgid="3763530049995655072">"Aldi baterako etenda"</item> <item msgid="7852381437933824454">"Deskonektatzen…"</item> <item msgid="5046795712175415059">"Deskonektatuta"</item> <item msgid="2473654476624070462">"Ezin izan da konektatu"</item> @@ -41,7 +41,7 @@ <item msgid="3028983857109369308">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> sarearekin autentifikatzen…"</item> <item msgid="4287401332778341890">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> sarearen IP helbidea lortzen…"</item> <item msgid="1043944043827424501">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> sarera konektatuta"</item> - <item msgid="7445993821842009653">"Etenda"</item> + <item msgid="7445993821842009653">"Aldi baterako etenda"</item> <item msgid="1175040558087735707">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> saretik deskonektatzen…"</item> <item msgid="699832486578171722">"Deskonektatuta"</item> <item msgid="522383512264986901">"Ezin izan da konektatu"</item> diff --git a/packages/SettingsLib/res/values-eu/strings.xml b/packages/SettingsLib/res/values-eu/strings.xml index 6376ad580308..8fac10586457 100644 --- a/packages/SettingsLib/res/values-eu/strings.xml +++ b/packages/SettingsLib/res/values-eu/strings.xml @@ -288,7 +288,7 @@ <string name="confirm_enable_oem_unlock_title" msgid="8249318129774367535">"OEM desblokeoa onartu nahi duzu?"</string> <string name="confirm_enable_oem_unlock_text" msgid="854131050791011970">"ABISUA: ezarpen hau aktibatuta dagoen bitartean, gailua babesteko eginbideek ez dute gailu honetan funtzionatuko."</string> <string name="mock_location_app" msgid="6269380172542248304">"Hautatu asmatutako kokapenen aplikazioa"</string> - <string name="mock_location_app_not_set" msgid="6972032787262831155">"Ez da ezarri kokapen faltsuen aplikaziorik"</string> + <string name="mock_location_app_not_set" msgid="6972032787262831155">"Ez da ezarri asmatutako kokapenen aplikaziorik"</string> <string name="mock_location_app_set" msgid="4706722469342913843">"Asmatutako kokapenen aplikazioa: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="debug_networking_category" msgid="6829757985772659599">"Sareak"</string> <string name="wifi_display_certification" msgid="1805579519992520381">"Hari gabe bistaratzeko ziurtagiria"</string> @@ -337,8 +337,8 @@ <string name="select_logpersist_dialog_title" msgid="7745193591195485594">"Hautatu gailuan gordeta utzi nahi dituzun erregistroen bufferrak"</string> <string name="select_usb_configuration_title" msgid="6339801314922294586">"Hautatu USB konfigurazioa"</string> <string name="select_usb_configuration_dialog_title" msgid="3579567144722589237">"Hautatu USB konfigurazioa"</string> - <string name="allow_mock_location" msgid="2102650981552527884">"Onartu kokapen faltsuak"</string> - <string name="allow_mock_location_summary" msgid="179780881081354579">"Onartu kokapen faltsuak"</string> + <string name="allow_mock_location" msgid="2102650981552527884">"Baimendu asmatutako kokapenak"</string> + <string name="allow_mock_location_summary" msgid="179780881081354579">"Baimendu asmatutako kokapenak"</string> <string name="debug_view_attributes" msgid="3539609843984208216">"Gaitu ikuspegiaren atributuak ikuskatzeko aukera"</string> <string name="mobile_data_always_on_summary" msgid="1112156365594371019">"Mantendu datu-konexioa beti aktibo, baita wifi-konexioa aktibo dagoenean ere (sare batetik bestera bizkor aldatu ahal izateko)."</string> <string name="tethering_hardware_offload_summary" msgid="7801345335142803029">"Erabilgarri badago, erabili konexioa partekatzeko hardwarearen bizkortzea"</string> diff --git a/packages/SettingsLib/res/values-fa/arrays.xml b/packages/SettingsLib/res/values-fa/arrays.xml index 5834982ba39c..d1505386ec02 100644 --- a/packages/SettingsLib/res/values-fa/arrays.xml +++ b/packages/SettingsLib/res/values-fa/arrays.xml @@ -243,7 +243,7 @@ <item msgid="8612549335720461635">"4K (ایمن)"</item> <item msgid="7322156123728520872">"4K (ارتقا یافته)"</item> <item msgid="7735692090314849188">"4K (ارتقا یافته، ایمن)"</item> - <item msgid="7346816300608639624">"720p، 1080p (Dual Screen)"</item> + <item msgid="7346816300608639624">"720p، 1080p (صفحهنمایش دوگانه)"</item> </string-array> <string-array name="enable_opengl_traces_entries"> <item msgid="4433736508877934305">"خالی"</item> diff --git a/packages/SettingsLib/res/values-fa/strings.xml b/packages/SettingsLib/res/values-fa/strings.xml index 6eb8bd161bfe..9be7a87c149c 100644 --- a/packages/SettingsLib/res/values-fa/strings.xml +++ b/packages/SettingsLib/res/values-fa/strings.xml @@ -64,7 +64,7 @@ <string name="connected_via_network_scorer" msgid="7665725527352893558">"اتصال خودکار ازطریق %1$s"</string> <string name="connected_via_network_scorer_default" msgid="7973529709744526285">"اتصال خودکار ازطریق ارائهدهنده ردهبندی شبکه"</string> <string name="connected_via_app" msgid="3532267661404276584">"متصل شده ازطریق <xliff:g id="NAME">%1$s</xliff:g>"</string> - <string name="tap_to_sign_up" msgid="5356397741063740395">"برای ثبتنام ضربه بزنید"</string> + <string name="tap_to_sign_up" msgid="5356397741063740395">"برای ثبتنام تکضرب بزنید"</string> <string name="wifi_connected_no_internet" msgid="5087420713443350646">"عدم اتصال به اینترنت"</string> <string name="private_dns_broken" msgid="1984159464346556931">"سرور DNS خصوصی قابل دسترسی نیست"</string> <string name="wifi_limited_connection" msgid="1184778285475204682">"اتصال محدود"</string> @@ -74,7 +74,7 @@ <string name="osu_opening_provider" msgid="4318105381295178285">"درحال بازکردن <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string> <string name="osu_connect_failed" msgid="9107873364807159193">"متصل نشد"</string> <string name="osu_completing_sign_up" msgid="8412636665040390901">"درحال تکمیل ثبتنام…"</string> - <string name="osu_sign_up_failed" msgid="5605453599586001793">"ثبتنام تکمیل نشد. برای امتحان مجدد ضربه بزنید."</string> + <string name="osu_sign_up_failed" msgid="5605453599586001793">"ثبتنام تکمیل نشد. برای امتحان مجدد تکضرب بزنید."</string> <string name="osu_sign_up_complete" msgid="7640183358878916847">"ثبتنام کامل شد. درحال اتصال…"</string> <string name="speed_label_slow" msgid="6069917670665664161">"آهسته"</string> <string name="speed_label_okay" msgid="1253594383880810424">"تأیید"</string> @@ -406,7 +406,7 @@ <string name="track_frame_time" msgid="522674651937771106">"پرداز زدن HWUI نمایه"</string> <string name="enable_gpu_debug_layers" msgid="4986675516188740397">"فعال کردن لایههای اشکالزدایی GPU"</string> <string name="enable_gpu_debug_layers_summary" msgid="4921521407377170481">"مجاز کردن بارگیری لایههای اشکالزدایی GPU برای برنامههای اشکالزدایی"</string> - <string name="enable_verbose_vendor_logging" msgid="1196698788267682072">"فعال کردن گزارشگیری مفصل فروشنده"</string> + <string name="enable_verbose_vendor_logging" msgid="1196698788267682072">"فعال کردن ثبت گزارش مفصل فروشنده"</string> <string name="enable_verbose_vendor_logging_summary" msgid="5426292185780393708">"شامل گزارشات اشکال تکمیلی ورود به سیستم فروشنده ویژه دستگاه میشود که ممکن است دربرگیرنده اطلاعات خصوصی، استفاده بیشتر از باتری، و/یا استفاده بیشتر از فضای ذخیرهسازی باشد."</string> <string name="window_animation_scale_title" msgid="5236381298376812508">"مقیاس پویانمایی پنجره"</string> <string name="transition_animation_scale_title" msgid="1278477690695439337">"مقیاس پویانمایی انتقالی"</string> @@ -421,14 +421,14 @@ <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="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="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_summary_change" msgid="1707357670383995567">"برای تغییر یا حذف گذرواژه برای نسخههای پشتیبان کامل رایانهای تکضرب بزنید"</string> <string name="local_backup_password_toast_success" msgid="4891666204428091604">"گذرواژه جدید نسخهٔ پشتیبان تنظیم شد"</string> <string name="local_backup_password_toast_confirmation_mismatch" msgid="2994718182129097733">"گذرواژه جدید و تأیید آن با یکدیگر مطابقت ندارند"</string> <string name="local_backup_password_toast_validation_failure" msgid="714669442363647122">"گذرواژه پشتیبانگیری تنظیم نشد"</string> @@ -444,8 +444,8 @@ <item msgid="1282170165150762976">"رنگهای بهینهشده برای محتوای دیجیتالی"</item> </string-array> <string name="inactive_apps_title" msgid="5372523625297212320">"برنامههای آماده بهکار"</string> - <string name="inactive_app_inactive_summary" msgid="3161222402614236260">"غیرفعال. برای تغییر حالت ضربه بزنید."</string> - <string name="inactive_app_active_summary" msgid="8047630990208722344">"فعال. برای تغییر حالت ضربه بزنید."</string> + <string name="inactive_app_inactive_summary" msgid="3161222402614236260">"غیرفعال. برای تغییر حالت تکضرب بزنید."</string> + <string name="inactive_app_active_summary" msgid="8047630990208722344">"فعال. برای تغییر حالت تکضرب بزنید."</string> <string name="standby_bucket_summary" msgid="5128193447550429600">"وضعیت حالت آماده بهکار برنامه:<xliff:g id="BUCKET"> %s</xliff:g>"</string> <string name="transcode_settings_title" msgid="2581975870429850549">"تنظیمات تراتبدیل رسانه"</string> <string name="transcode_user_control" msgid="6176368544817731314">"ملغی کردن پیشفرضهای تراتبدیل"</string> @@ -660,7 +660,7 @@ <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_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> diff --git a/packages/SettingsLib/res/values-fr-rCA/strings.xml b/packages/SettingsLib/res/values-fr-rCA/strings.xml index 0e03d181cf8f..80f03193bfe5 100644 --- a/packages/SettingsLib/res/values-fr-rCA/strings.xml +++ b/packages/SettingsLib/res/values-fr-rCA/strings.xml @@ -62,7 +62,7 @@ <string name="wifi_no_internet" msgid="1774198889176926299">"Aucun accès à Internet"</string> <string name="saved_network" msgid="7143698034077223645">"Enregistrés par <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="connected_via_network_scorer" msgid="7665725527352893558">"Automatiquement connecté par %1$s"</string> - <string name="connected_via_network_scorer_default" msgid="7973529709744526285">"Connecté automatiquement par le fournisseur d\'avis sur le réseau"</string> + <string name="connected_via_network_scorer_default" msgid="7973529709744526285">"Connecté automatiquement par l\'utilitaire d\'évaluation des réseaux"</string> <string name="connected_via_app" msgid="3532267661404276584">"Connecté sur le réseau <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="tap_to_sign_up" msgid="5356397741063740395">"Toucher pour vous connecter"</string> <string name="wifi_connected_no_internet" msgid="5087420713443350646">"Aucune connexion Internet"</string> @@ -145,7 +145,7 @@ <string name="bluetooth_sap_profile_summary_connected" msgid="1280297388033001037">"Connecté au point d\'accès au service"</string> <string name="bluetooth_opp_profile_summary_not_connected" msgid="3959741824627764954">"Connexion au serveur de transfert de fichiers non établie"</string> <string name="bluetooth_hid_profile_summary_connected" msgid="3923653977051684833">"Connecté au périphérique d\'entrée"</string> - <string name="bluetooth_pan_user_profile_summary_connected" msgid="380469653827505727">"Connecté à l\'appareil pour accès Internet"</string> + <string name="bluetooth_pan_user_profile_summary_connected" msgid="380469653827505727">"Connecté à l\'appareil pour un accès Internet"</string> <string name="bluetooth_pan_nap_profile_summary_connected" msgid="3744773111299503493">"Connexion Internet locale partagée avec appareil"</string> <string name="bluetooth_pan_profile_summary_use_for" msgid="7422039765025340313">"Utiliser pour l\'accès à Internet"</string> <string name="bluetooth_map_profile_summary_use_for" msgid="4453622103977592583">"Utiliser pour la carte"</string> @@ -159,7 +159,7 @@ <string name="bluetooth_pairing_accept" msgid="2054232610815498004">"Associer"</string> <string name="bluetooth_pairing_accept_all_caps" msgid="2734383073450506220">"ASSOCIER"</string> <string name="bluetooth_pairing_decline" msgid="6483118841204885890">"Annuler"</string> - <string name="bluetooth_pairing_will_share_phonebook" msgid="3064334458659165176">"L\'association vous permet d\'accéder à vos contacts et à l\'historique des appels lorsque vous êtes connecté."</string> + <string name="bluetooth_pairing_will_share_phonebook" msgid="3064334458659165176">"L\'association vous permet d\'accéder à vos contacts et à l\'historique des appels lorsque votre connexion est active."</string> <string name="bluetooth_pairing_error_message" msgid="6626399020672335565">"Impossible d\'associer à <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> <string name="bluetooth_pairing_pin_error_message" msgid="264422127613704940">"Impossible d\'établir l\'association avec <xliff:g id="DEVICE_NAME">%1$s</xliff:g> en raison d\'un NIP ou d\'une clé d\'accès incorrects."</string> <string name="bluetooth_pairing_device_down_error_message" msgid="2554424863101358857">"Impossible d\'établir la communication avec <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string> @@ -182,8 +182,8 @@ <string name="accessibility_wifi_security_type_none" msgid="162352241518066966">"Réseau ouvert"</string> <string name="accessibility_wifi_security_type_secured" msgid="2399774097343238942">"Réseau sécurisé"</string> <string name="process_kernel_label" msgid="950292573930336765">"Système d\'exploitation Android"</string> - <string name="data_usage_uninstalled_apps" msgid="1933665711856171491">"Applications supprimées"</string> - <string name="data_usage_uninstalled_apps_users" msgid="5533981546921913295">"Applications et utilisateurs supprimés"</string> + <string name="data_usage_uninstalled_apps" msgid="1933665711856171491">"Applis supprimées"</string> + <string name="data_usage_uninstalled_apps_users" msgid="5533981546921913295">"Applis et utilisateurs retirés"</string> <string name="data_usage_ota" msgid="7984667793701597001">"Mises à jour du système"</string> <string name="tether_settings_title_usb" msgid="3728686573430917722">"Partage de connexion par USB"</string> <string name="tether_settings_title_wifi" msgid="4803402057533895526">"Point d\'accès Wi-Fi mobile"</string> @@ -241,8 +241,8 @@ <string name="category_clone" msgid="1554511758987195974">"Cloner"</string> <string name="development_settings_title" msgid="140296922921597393">"Options pour les développeurs"</string> <string name="development_settings_enable" msgid="4285094651288242183">"Activer les options pour les développeurs"</string> - <string name="development_settings_summary" msgid="8718917813868735095">"Définir les options pour le développement de l\'application"</string> - <string name="development_settings_not_available" msgid="355070198089140951">"Les options proposées aux développeurs ne sont pas disponibles pour cet utilisateur."</string> + <string name="development_settings_summary" msgid="8718917813868735095">"Définir les options pour le développement de l\'appli"</string> + <string name="development_settings_not_available" msgid="355070198089140951">"Les options pour les développeurs ne sont pas disponibles pour cet utilisateur"</string> <string name="vpn_settings_not_available" msgid="2894137119965668920">"Les paramètres de RPV ne sont pas disponibles pour cet utilisateur"</string> <string name="tethering_settings_not_available" msgid="266821736434699780">"Les paramètres de partage de connexion ne sont pas disponibles pour cet utilisateur"</string> <string name="apn_settings_not_available" msgid="1147111671403342300">"Les paramètres de point d\'accès ne sont pas disponibles pour cet utilisateur"</string> @@ -288,8 +288,8 @@ <string name="confirm_enable_oem_unlock_title" msgid="8249318129774367535">"Permettre le déverrouillage par le fabricant?"</string> <string name="confirm_enable_oem_unlock_text" msgid="854131050791011970">"AVERTISSEMENT : Les fonctionnalités de protection de l\'appareil ne fonctionneront pas sur cet appareil lorsque ce paramètre est activé."</string> <string name="mock_location_app" msgid="6269380172542248304">"Sélectionner l\'appli de position fictive"</string> - <string name="mock_location_app_not_set" msgid="6972032787262831155">"Aucune application de position fictive définie"</string> - <string name="mock_location_app_set" msgid="4706722469342913843">"Application de position fictive : <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> + <string name="mock_location_app_not_set" msgid="6972032787262831155">"Aucune appli de position fictive définie"</string> + <string name="mock_location_app_set" msgid="4706722469342913843">"Appli de position fictive : <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="debug_networking_category" msgid="6829757985772659599">"Réseautage"</string> <string name="wifi_display_certification" msgid="1805579519992520381">"Certification de l\'affichage sans fil"</string> <string name="wifi_verbose_logging" msgid="1785910450009679371">"Autoriser enreg. données Wi-Fi détaillées"</string> @@ -343,30 +343,30 @@ <string name="mobile_data_always_on_summary" msgid="1112156365594371019">"Toujours garder les données cellulaires actives, même lorsque le Wi-Fi est activé (pour la commutation rapide entre les réseaux)."</string> <string name="tethering_hardware_offload_summary" msgid="7801345335142803029">"Utiliser l\'accélération matérielle du partage de connexion si possible"</string> <string name="adb_warning_title" msgid="7708653449506485728">"Autoriser le débogage USB?"</string> - <string name="adb_warning_message" msgid="8145270656419669221">"Le débogage USB est conçu uniquement pour le développement. Utilisez-le pour copier des données entre votre ordinateur et votre appareil, installer des applications sur votre appareil sans notification et lire les données de journal."</string> + <string name="adb_warning_message" msgid="8145270656419669221">"Le débogage USB est conçu uniquement pour le développement. Utilisez-le pour copier des données entre votre ordinateur et votre appareil, installer des applis sur votre appareil sans notification et lire les données de journal."</string> <string name="adbwifi_warning_title" msgid="727104571653031865">"Autoriser le débogage sans fil?"</string> - <string name="adbwifi_warning_message" msgid="8005936574322702388">"Le débogage sans fil est conçu uniquement aux fin de conception. Utilisez-le pour copier des données entre votre ordinateur et votre appareil, installer des applications sur votre appareil sans notification et lire les données de journal."</string> + <string name="adbwifi_warning_message" msgid="8005936574322702388">"Le débogage sans fil est conçu uniquement aux fin de conception. Utilisez-le pour copier des données entre votre ordinateur et votre appareil, installer des applis sur votre appareil sans notification et lire les données de journal."</string> <string name="adb_keys_warning_message" msgid="2968555274488101220">"Voulez-vous vraiment désactiver l\'accès au débogage USB de tous les ordinateurs précédemment autorisés?"</string> <string name="dev_settings_warning_title" msgid="8251234890169074553">"Activer les paramètres de développement?"</string> - <string name="dev_settings_warning_message" msgid="37741686486073668">"Ces paramètres sont en cours de développement. Ils peuvent endommager votre appareil et les applications qui s\'y trouvent, ou provoquer leur dysfonctionnement."</string> + <string name="dev_settings_warning_message" msgid="37741686486073668">"Ces paramètres sont en cours de développement. Ils peuvent endommager votre appareil et les applis qui s\'y trouvent, ou provoquer leur dysfonctionnement."</string> <string name="verify_apps_over_usb_title" msgid="6031809675604442636">"Vérifier les applis par USB"</string> - <string name="verify_apps_over_usb_summary" msgid="1317933737581167839">"Vérifier que les applications installées par ADB/ADT ne présentent pas de comportement dangereux."</string> + <string name="verify_apps_over_usb_summary" msgid="1317933737581167839">"Vérifier que les applis installées par ADB/ADT ne présentent pas de comportement dangereux."</string> <string name="bluetooth_show_devices_without_names_summary" msgid="780964354377854507">"Les appareils Bluetooth sans nom (adresses MAC seulement) seront affichés"</string> <string name="bluetooth_disable_absolute_volume_summary" msgid="2006309932135547681">"Désactive la fonctionnalité de volume absolu par Bluetooth en cas de problème de volume sur les appareils à distance, par exemple si le volume est trop élevé ou s\'il ne peut pas être contrôlé."</string> <string name="bluetooth_enable_gabeldorsche_summary" msgid="2054730331770712629">"Active la pile de la fonctionnalité Bluetooth Gabeldorsche."</string> <string name="enhanced_connectivity_summary" msgid="1576414159820676330">"Active la fonctionnalité Connectivité améliorée."</string> <string name="enable_terminal_title" msgid="3834790541986303654">"Terminal local"</string> - <string name="enable_terminal_summary" msgid="2481074834856064500">"Activer l\'application Terminal permettant l\'accès au shell local"</string> + <string name="enable_terminal_summary" msgid="2481074834856064500">"Activer l\'appli Terminal permettant l\'accès au shell local"</string> <string name="hdcp_checking_title" msgid="3155692785074095986">"Vérification HDCP"</string> <string name="hdcp_checking_dialog_title" msgid="7691060297616217781">"Configurer vérification HDCP"</string> <string name="debug_debugging_category" msgid="535341063709248842">"Débogage"</string> - <string name="debug_app" msgid="8903350241392391766">"Sélectionner une application à déboguer"</string> - <string name="debug_app_not_set" msgid="1934083001283807188">"Aucune application à déboguer définie"</string> - <string name="debug_app_set" msgid="6599535090477753651">"Application à déboguer : <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> - <string name="select_application" msgid="2543228890535466325">"Sél. application"</string> + <string name="debug_app" msgid="8903350241392391766">"Sélectionner une appli à déboguer"</string> + <string name="debug_app_not_set" msgid="1934083001283807188">"Aucune appli à déboguer définie"</string> + <string name="debug_app_set" msgid="6599535090477753651">"Appli à déboguer : <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> + <string name="select_application" msgid="2543228890535466325">"Sél. appli"</string> <string name="no_application" msgid="9038334538870247690">"Aucune"</string> <string name="wait_for_debugger" msgid="7461199843335409809">"Attendre l\'intervention du débogueur"</string> - <string name="wait_for_debugger_summary" msgid="6846330006113363286">"Avant de s\'exécuter, l\'application déboguée doit attendre que le débogueur soit attaché."</string> + <string name="wait_for_debugger_summary" msgid="6846330006113363286">"Avant de s\'exécuter, l\'appli déboguée doit attendre que le débogueur soit attaché."</string> <string name="debug_input_category" msgid="7349460906970849771">"Entrée"</string> <string name="debug_drawing_category" msgid="5066171112313666619">"Dessin"</string> <string name="debug_hw_drawing_category" msgid="5830815169336975162">"Accélération matérielle"</string> @@ -401,7 +401,7 @@ <string name="transparent_navigation_bar_summary" msgid="5454359021817330722">"Rendre la couleur d\'arrière-plan de la barre de navigation transparente par défaut"</string> <string name="window_blurs" msgid="6831008984828425106">"Autoriser le flou au niveau des fenêtres"</string> <string name="force_msaa" msgid="4081288296137775550">"Forcer MSAA 4x"</string> - <string name="force_msaa_summary" msgid="9070437493586769500">"Activer MSAA 4x dans les applications OpenGL ES 2.0"</string> + <string name="force_msaa_summary" msgid="9070437493586769500">"Activer MSAA 4x dans les applis OpenGL ES 2.0"</string> <string name="show_non_rect_clip" msgid="7499758654867881817">"Déboguer opérations de découpage non rectangulaire"</string> <string name="track_frame_time" msgid="522674651937771106">"Rendu HWUI du profil"</string> <string name="enable_gpu_debug_layers" msgid="4986675516188740397">"Activer couches débogage GPU"</string> @@ -412,16 +412,16 @@ <string name="transition_animation_scale_title" msgid="1278477690695439337">"Éch. d\'animation des transitions"</string> <string name="animator_duration_scale_title" msgid="7082913931326085176">"Échelle durée animation"</string> <string name="overlay_display_devices_title" msgid="5411894622334469607">"Simuler affich. secondaires"</string> - <string name="debug_applications_category" msgid="5394089406638954196">"Applications"</string> + <string name="debug_applications_category" msgid="5394089406638954196">"Applis"</string> <string name="immediately_destroy_activities" msgid="1826287490705167403">"Ne pas conserver activités"</string> <string name="immediately_destroy_activities_summary" msgid="6289590341144557614">"Supprimer immédiatement les activités abandonnées"</string> <string name="app_process_limit_title" msgid="8361367869453043007">"Limite processus arr.-plan"</string> <string name="show_all_anrs" msgid="9160563836616468726">"Afficher ANR arrière-plan"</string> - <string name="show_all_anrs_summary" msgid="8562788834431971392">"Afficher le message « L\'application ne répond plus » pour les applications en arrière-plan"</string> + <string name="show_all_anrs_summary" msgid="8562788834431971392">"Afficher le message « L\'appli ne répond plus » pour les applis en arrière-plan"</string> <string name="show_notification_channel_warnings" msgid="3448282400127597331">"Affich. avertiss. canal notification"</string> <string name="show_notification_channel_warnings_summary" msgid="68031143745094339">"Afficher avertiss. à l\'écran quand une appli présente une notif. sans canal valide"</string> <string name="force_allow_on_external" msgid="9187902444231637880">"Forcer l\'autor. d\'applis sur stockage externe"</string> - <string name="force_allow_on_external_summary" msgid="8525425782530728238">"Rend possible l\'enregistrement de toute application sur un espace de stockage externe, indépendamment des valeurs du fichier manifeste"</string> + <string name="force_allow_on_external_summary" msgid="8525425782530728238">"Rend possible l\'enregistrement de toute appli sur un espace de stockage externe, indépendamment des valeurs du fichier manifeste"</string> <string name="force_resizable_activities" msgid="7143612144399959606">"Forcer les activités à être redimensionnables"</string> <string name="force_resizable_activities_summary" msgid="2490382056981583062">"Permet de redimensionner toutes les activités pour le mode multi-fenêtre, indépendamment des valeurs du fichier manifeste."</string> <string name="enable_freeform_support" msgid="7599125687603914253">"Activer les fenêtres de forme libre"</string> @@ -443,14 +443,14 @@ <item msgid="4548987861791236754">"Couleurs naturelles, comme l\'œil les voit"</item> <item msgid="1282170165150762976">"Couleurs optimisées pour le contenu numérique"</item> </string-array> - <string name="inactive_apps_title" msgid="5372523625297212320">"Applications en veille"</string> - <string name="inactive_app_inactive_summary" msgid="3161222402614236260">"Application inactive. Touchez ici pour l\'activer."</string> - <string name="inactive_app_active_summary" msgid="8047630990208722344">"Application active. Touchez ici pour la désactiver."</string> - <string name="standby_bucket_summary" msgid="5128193447550429600">"État de l\'application en veille :<xliff:g id="BUCKET"> %s</xliff:g>"</string> + <string name="inactive_apps_title" msgid="5372523625297212320">"Applis en veille"</string> + <string name="inactive_app_inactive_summary" msgid="3161222402614236260">"Appli inactive. Touchez ici pour l\'activer."</string> + <string name="inactive_app_active_summary" msgid="8047630990208722344">"Appli active. Touchez ici pour la désactiver."</string> + <string name="standby_bucket_summary" msgid="5128193447550429600">"État de l\'appli en veille :<xliff:g id="BUCKET"> %s</xliff:g>"</string> <string name="transcode_settings_title" msgid="2581975870429850549">"Paramètres de transcodage des éléments multimédias"</string> <string name="transcode_user_control" msgid="6176368544817731314">"Remplacer les valeurs par défaut de transcodage"</string> <string name="transcode_enable_all" msgid="2411165920039166710">"Activer le transcodage"</string> - <string name="transcode_default" msgid="3784803084573509491">"Présumer que les applications prennent en charge les formats modernes"</string> + <string name="transcode_default" msgid="3784803084573509491">"Présumer que les applis prennent en charge les formats modernes"</string> <string name="transcode_notification" msgid="5560515979793436168">"Afficher les notifications de transcodage"</string> <string name="transcode_disable_cache" msgid="3160069309377467045">"Désactiver le cache de transcodage"</string> <string name="runningservices_settings_title" msgid="6460099290493086515">"Services en cours d\'exécution"</string> @@ -523,9 +523,9 @@ </string-array> <string name="charge_length_format" msgid="6941645744588690932">"Il y a <xliff:g id="ID_1">%1$s</xliff:g>"</string> <string name="remaining_length_format" msgid="4310625772926171089">"Temps restant : <xliff:g id="ID_1">%1$s</xliff:g>"</string> - <string name="screen_zoom_summary_small" msgid="6050633151263074260">"Petite"</string> + <string name="screen_zoom_summary_small" msgid="6050633151263074260">"Petit"</string> <string name="screen_zoom_summary_default" msgid="1888865694033865408">"Par défaut"</string> - <string name="screen_zoom_summary_large" msgid="4706951482598978984">"Grande"</string> + <string name="screen_zoom_summary_large" msgid="4706951482598978984">"Grand"</string> <string name="screen_zoom_summary_very_large" msgid="7317423942896999029">"Plus grande"</string> <string name="screen_zoom_summary_extremely_large" msgid="1438045624562358554">"La plus grande"</string> <string name="screen_zoom_summary_custom" msgid="3468154096832912210">"Personnalisée (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string> @@ -535,9 +535,9 @@ <string name="retail_demo_reset_title" msgid="1866911701095959800">"Mot de passe obligatoire"</string> <string name="active_input_method_subtypes" msgid="4232680535471633046">"Modes de saisie actifs"</string> <string name="use_system_language_to_select_input_method_subtypes" msgid="4865195835541387040">"Utiliser les langues du système"</string> - <string name="failed_to_open_app_settings_toast" msgid="764897252657692092">"Échec de l\'ouverture des paramètres de l\'application <xliff:g id="SPELL_APPLICATION_NAME">%1$s</xliff:g>."</string> - <string name="ime_security_warning" msgid="6547562217880551450">"Ce mode de saisie est susceptible d\'enregistrer le texte que vous saisissez, y compris vos données personnelles, telles que les mots de passe et les numéros de carte de paiement. Il provient de l\'application <xliff:g id="IME_APPLICATION_NAME">%1$s</xliff:g>. Voulez-vous vraiment l\'activer?"</string> - <string name="direct_boot_unaware_dialog_message" msgid="7845398276735021548">"Remarque : Après un redémarrage, vous ne pouvez pas lancer cette application tant que vous n\'avez pas déverrouillé votre téléphone."</string> + <string name="failed_to_open_app_settings_toast" msgid="764897252657692092">"Échec de l\'ouverture des paramètres de l\'appli <xliff:g id="SPELL_APPLICATION_NAME">%1$s</xliff:g>."</string> + <string name="ime_security_warning" msgid="6547562217880551450">"Ce mode de saisie est susceptible d\'enregistrer le texte que vous saisissez, y compris vos données personnelles, telles que les mots de passe et les numéros de carte de paiement. Il provient de l\'appli <xliff:g id="IME_APPLICATION_NAME">%1$s</xliff:g>. Voulez-vous vraiment l\'activer?"</string> + <string name="direct_boot_unaware_dialog_message" msgid="7845398276735021548">"Remarque : Après un redémarrage, vous ne pouvez pas lancer cette appli tant que vous n\'avez pas déverrouillé votre téléphone."</string> <string name="ims_reg_title" msgid="8197592958123671062">"État d\'enregistrement IMS"</string> <string name="ims_reg_status_registered" msgid="884916398194885457">"Enregistré"</string> <string name="ims_reg_status_not_registered" msgid="2989287366045704694">"Non enregistré"</string> @@ -547,7 +547,7 @@ <string name="accessibility_manual_zen_more_time" msgid="5141801092071134235">"Plus longtemps."</string> <string name="accessibility_manual_zen_less_time" msgid="6828877595848229965">"Moins longtemps."</string> <string name="cancel" msgid="5665114069455378395">"Annuler"</string> - <string name="next" msgid="2699398661093607009">"Suivant"</string> + <string name="next" msgid="2699398661093607009">"Suivante"</string> <string name="back" msgid="5554327870352703710">"Retour"</string> <string name="save" msgid="3745809743277153149">"Enregistrer"</string> <string name="okay" msgid="949938843324579502">"OK"</string> @@ -555,7 +555,7 @@ <string name="alarms_and_reminders_label" msgid="6918395649731424294">"Alarmes et rappels"</string> <string name="alarms_and_reminders_switch_title" msgid="4939393911531826222">"Autoriser la création d\'alarmes et de rappels"</string> <string name="alarms_and_reminders_title" msgid="8819933264635406032">"Alarmes et rappels"</string> - <string name="alarms_and_reminders_footer_title" msgid="6302587438389079695">"Autorisez cette application à créer des alarmes et à programmer des actions urgentes. Cela permet à l’application de s\'exécuter en arrière-plan, ce qui peut nécessiter plus de pile.\n\nSi cette autorisation est désactivée, les alarmes existantes et les événements en temps réel programmés par cette application ne fonctionneront pas."</string> + <string name="alarms_and_reminders_footer_title" msgid="6302587438389079695">"Autorisez cette appli à créer des alarmes et à programmer des actions urgentes. Cela permet à l’appli de s\'exécuter en arrière-plan, ce qui peut nécessiter plus de pile.\n\nSi cette autorisation est désactivée, les alarmes existantes et les événements en temps réel programmés par cette appli ne fonctionneront pas."</string> <string name="keywords_alarms_and_reminders" msgid="6633360095891110611">"horaire, alarme, rappel, horloge"</string> <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> @@ -605,20 +605,20 @@ <string name="blob_expires_text" msgid="7882727111491739331">"Expirent le <xliff:g id="DATE">%s</xliff:g>"</string> <string name="shared_data_delete_failure_text" msgid="3842701391009628947">"Une erreur s\'est produite lors de la suppression des données partagées."</string> <string name="shared_data_no_accessors_dialog_text" msgid="8903738462570715315">"Il n\'y a aucun bail octroyé pour ces données partagées. Souhaitez-vous les supprimer?"</string> - <string name="accessor_info_title" msgid="8289823651512477787">"Applications qui partagent des données"</string> - <string name="accessor_no_description_text" msgid="7510967452505591456">"Aucune description fournie par l\'application."</string> + <string name="accessor_info_title" msgid="8289823651512477787">"Applis qui partagent des données"</string> + <string name="accessor_no_description_text" msgid="7510967452505591456">"Aucune description fournie par l\'appli."</string> <string name="accessor_expires_text" msgid="4625619273236786252">"Le bail expire le <xliff:g id="DATE">%s</xliff:g>"</string> <string name="delete_blob_text" msgid="2819192607255625697">"Supprimer les données partagées"</string> <string name="delete_blob_confirmation_text" msgid="7807446938920827280">"Voulez-vous vraiment supprimer ces données partagées?"</string> - <string name="user_add_user_item_summary" msgid="5748424612724703400">"Les utilisateurs disposent de leurs propres applications et de leur propre contenu."</string> - <string name="user_add_profile_item_summary" msgid="5418602404308968028">"Vous pouvez limiter l\'accès aux applications et au contenu depuis votre compte."</string> + <string name="user_add_user_item_summary" msgid="5748424612724703400">"Les utilisateurs disposent de leurs propres applis et de leur propre contenu."</string> + <string name="user_add_profile_item_summary" msgid="5418602404308968028">"Vous pouvez limiter l\'accès aux applis et au contenu depuis votre compte."</string> <string name="user_add_user_item_title" msgid="2394272381086965029">"Utilisateur"</string> <string name="user_add_profile_item_title" msgid="3111051717414643029">"Profil limité"</string> <string name="user_add_user_title" msgid="5457079143694924885">"Ajouter un utilisateur?"</string> - <string name="user_add_user_message_long" msgid="1527434966294733380">"Vous pouvez partager cet appareil avec d\'autres personnes en ajoutant des utilisateurs. Chaque utilisateur dispose de son propre espace, où il peut personnaliser, entre autres, ses applications et son fond d\'écran. Chacun peut également modifier les paramètres de l\'appareil, comme les réseaux Wi-Fi, qui touchent tous les utilisateurs.\n\nLorsque vous ajoutez un utilisateur, celui-ci doit configurer son propre espace.\n\nTout utilisateur peut mettre à jour les applications pour les autres utilisateurs. Il se peut que les paramètres et les services d\'accessibilité ne soient pas transférés aux nouveaux utilisateurs."</string> - <string name="user_add_user_message_short" msgid="3295959985795716166">"Lorsque vous ajoutez un utilisateur, celui-ci doit configurer son espace.\n\nTout utilisateur peut mettre à jour les applications pour tous les autres utilisateurs."</string> + <string name="user_add_user_message_long" msgid="1527434966294733380">"Vous pouvez partager cet appareil avec d\'autres personnes en ajoutant des utilisateurs. Chaque utilisateur dispose de son propre espace, où il peut personnaliser, entre autres, ses applis et son fond d\'écran. Chacun peut également modifier les paramètres de l\'appareil, comme les réseaux Wi-Fi, qui touchent tous les utilisateurs.\n\nLorsque vous ajoutez un utilisateur, celui-ci doit configurer son propre espace.\n\nTout utilisateur peut mettre à jour les applis pour les autres utilisateurs. Il se peut que les paramètres et les services d\'accessibilité ne soient pas transférés aux nouveaux utilisateurs."</string> + <string name="user_add_user_message_short" msgid="3295959985795716166">"Lorsque vous ajoutez un utilisateur, celui-ci doit configurer son espace.\n\nTout utilisateur peut mettre à jour les applis pour tous les autres utilisateurs."</string> <string name="user_grant_admin_title" msgid="5157031020083343984">"Définir cet utilisateur comme administrateur?"</string> - <string name="user_grant_admin_message" msgid="1673791931033486709">"Les administrateurs ont des privilèges spéciaux que les autres utilisateurs n\'ont pas. Un administrateur peut gérer tous les utilisateurs, mettre à jour ou réinitialiser cet appareil, modifier les paramètres, voir toutes les applications installées et accorder ou révoquer les privilèges d\'administrateur à d\'autres personnes."</string> + <string name="user_grant_admin_message" msgid="1673791931033486709">"Les administrateurs ont des privilèges spéciaux que les autres utilisateurs n\'ont pas. Un administrateur peut gérer tous les utilisateurs, mettre à jour ou réinitialiser cet appareil, modifier les paramètres, voir toutes les applis installées et accorder ou révoquer les privilèges d\'administrateur à d\'autres personnes."</string> <string name="user_grant_admin_button" msgid="5441486731331725756">"Définir comme administrateur"</string> <string name="user_setup_dialog_title" msgid="8037342066381939995">"Configurer l\'utilisateur?"</string> <string name="user_setup_dialog_message" msgid="269931619868102841">"Assurez-vous que la personne est disponible et qu\'elle peut utiliser l\'appareil pour configurer son espace."</string> @@ -630,7 +630,7 @@ <string name="user_new_profile_name" msgid="2405500423304678841">"Nouveau profil"</string> <string name="user_info_settings_title" msgid="6351390762733279907">"Informations sur l\'utilisateur"</string> <string name="profile_info_settings_title" msgid="105699672534365099">"Informations de profil"</string> - <string name="user_need_lock_message" msgid="4311424336209509301">"Avant de créer un profil limité, vous devez définir un écran de verrouillage pour protéger vos applications et vos données personnelles."</string> + <string name="user_need_lock_message" msgid="4311424336209509301">"Avant de créer un profil limité, vous devez définir un écran de verrouillage pour protéger vos applis et vos données personnelles."</string> <string name="user_set_lock_button" msgid="1427128184982594856">"Définir verrouillage écran"</string> <string name="user_switch_to_user" msgid="6975428297154968543">"Passer à <xliff:g id="USER_NAME">%s</xliff:g>"</string> <string name="creating_new_user_dialog_message" msgid="7232880257538970375">"Création d\'un utilisateur en cours…"</string> @@ -649,9 +649,9 @@ <string name="guest_remove_guest_confirm_button" msgid="7858123434954143879">"Retirer"</string> <string name="guest_resetting" msgid="7822120170191509566">"Réinitialisation de la session Invité en cours…"</string> <string name="guest_reset_and_restart_dialog_title" msgid="3396657008451616041">"Réinitialiser la session d\'invité?"</string> - <string name="guest_reset_and_restart_dialog_message" msgid="2764425635305200790">"Une nouvelle session d\'invité sera lancée, et toutes les applications et données de la session en cours seront supprimées"</string> + <string name="guest_reset_and_restart_dialog_message" msgid="2764425635305200790">"Une nouvelle session d\'invité sera lancée, et toutes les applis et données de la session en cours seront supprimées"</string> <string name="guest_exit_dialog_title" msgid="1846494656849381804">"Quitter le mode Invité?"</string> - <string name="guest_exit_dialog_message" msgid="1743218864242719783">"Les applications et les données de la session d\'invité en cours seront supprimées"</string> + <string name="guest_exit_dialog_message" msgid="1743218864242719783">"Les applis et les données de la session d\'invité en cours seront supprimées"</string> <string name="grant_admin" msgid="4323199171790522574">"Oui, le définir comme administrateur"</string> <string name="not_grant_admin" msgid="3557849576157702485">"Non, ne pas le définir comme administrateur"</string> <string name="guest_exit_dialog_button" msgid="1736401897067442044">"Quitter"</string> @@ -710,14 +710,14 @@ <string name="keyboard_layout_default_label" msgid="1997292217218546957">"Par défaut"</string> <string name="turn_screen_on_title" msgid="2662312432042116026">"Commande d\'activation de l\'écran"</string> <string name="allow_turn_screen_on" msgid="6194845766392742639">"Autoriser l\'activation de l\'écran"</string> - <string name="allow_turn_screen_on_description" msgid="43834403291575164">"Autorisez une application à activer l\'écran. Lorsque vous accordez cette autorisation, l\'application peut activer l\'écran à tout moment sans que vous lui demandiez."</string> + <string name="allow_turn_screen_on_description" msgid="43834403291575164">"Autorisez une appli à activer l\'écran. Lorsque vous accordez cette autorisation, l\'appli peut activer l\'écran à tout moment sans que vous lui demandiez."</string> <string name="bt_le_audio_broadcast_dialog_title" msgid="5392738488989777074">"Arrêter la diffusion de <xliff:g id="APP_NAME">%1$s</xliff:g>?"</string> <string name="bt_le_audio_broadcast_dialog_sub_title" msgid="268234802198852753">"Si vous diffusez <xliff:g id="SWITCHAPP">%1$s</xliff:g> ou changez la sortie, votre diffusion actuelle s\'arrêtera"</string> <string name="bt_le_audio_broadcast_dialog_switch_app" msgid="5749813313369517812">"Diffuser <xliff:g id="SWITCHAPP">%1$s</xliff:g>"</string> <string name="bt_le_audio_broadcast_dialog_different_output" msgid="2638402023060391333">"Changer la sortie"</string> <string name="back_navigation_animation" msgid="8105467568421689484">"Animations pour le retour prédictif"</string> <string name="back_navigation_animation_summary" msgid="741292224121599456">"Activer les animations système pour le retour prédictif."</string> - <string name="back_navigation_animation_dialog" msgid="8696966520944625596">"Ce paramètre permet d\'activer les animations du système pour l\'animation des gestes prédictifs. Cela exige de définir le paramètre enableOnBackInvokedCallback à Vrai pour chaque application dans le fichier de configuration."</string> + <string name="back_navigation_animation_dialog" msgid="8696966520944625596">"Ce paramètre permet d\'activer les animations du système pour l\'animation des gestes prédictifs. Cela exige de définir le paramètre enableOnBackInvokedCallback à Vrai pour chaque appli dans le fichier de configuration."</string> <string name="font_scale_percentage" msgid="2624057443622817886">"<xliff:g id="PERCENTAGE">%1$d</xliff:g> %%"</string> <string name="not_specified" msgid="5423502443185110328">"Non précisé"</string> <string name="neuter" msgid="2075249330106127310">"Neutre"</string> diff --git a/packages/SettingsLib/res/values-gl/strings.xml b/packages/SettingsLib/res/values-gl/strings.xml index 3a08d2fc79ab..6f75cf08030a 100644 --- a/packages/SettingsLib/res/values-gl/strings.xml +++ b/packages/SettingsLib/res/values-gl/strings.xml @@ -81,7 +81,7 @@ <string name="speed_label_fast" msgid="2677719134596044051">"Rápida"</string> <string name="speed_label_very_fast" msgid="8215718029533182439">"Moi rápida"</string> <string name="wifi_passpoint_expired" msgid="6540867261754427561">"Caducou"</string> - <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> + <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> <string name="bluetooth_disconnected" msgid="7739366554710388701">"Desconectado"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Desconectando..."</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"Conectando..."</string> diff --git a/packages/SettingsLib/res/values-gu/strings.xml b/packages/SettingsLib/res/values-gu/strings.xml index 07eda9a27336..39ba1b3dc23c 100644 --- a/packages/SettingsLib/res/values-gu/strings.xml +++ b/packages/SettingsLib/res/values-gu/strings.xml @@ -130,7 +130,7 @@ <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"સંપર્કો અને કૉલ ઇતિહાસ ઍક્સેસ કરવા દો"</string> <string name="bluetooth_profile_pbap_summary" msgid="402819589201138227">"માહિતીનો ઉપયોગ કૉલની ઘોષણાઓ અને વધુ બાબતો માટે કરવામાં આવશે"</string> <string name="bluetooth_profile_pan_nap" msgid="7871974753822470050">"ઇન્ટરનેટ કનેક્શન શેરિંગ"</string> - <string name="bluetooth_profile_map" msgid="8907204701162107271">"ટેક્સ્ટ સંદેશા"</string> + <string name="bluetooth_profile_map" msgid="8907204701162107271">"ટેક્સ્ટ મેસેજ"</string> <string name="bluetooth_profile_sap" msgid="8304170950447934386">"સિમ ઍક્સેસ"</string> <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> @@ -705,7 +705,7 @@ <string name="accessibility_ethernet_disconnected" msgid="2832501530856497489">"ઇથરનેટ ડિસ્કનેક્ટ થયું."</string> <string name="accessibility_ethernet_connected" msgid="6175942685957461563">"ઇથરનેટ."</string> <string name="accessibility_no_calling" msgid="3540827068323895748">"કોઈ કૉલિંગ નહીં."</string> - <string name="physical_keyboard_title" msgid="4811935435315835220">"ભૌતિક કીબોર્ડ"</string> + <string name="physical_keyboard_title" msgid="4811935435315835220">"વાસ્તવિક કીબોર્ડ"</string> <string name="keyboard_layout_dialog_title" msgid="3927180147005616290">"કીબોર્ડ લેઆઉટ પસંદ કરો"</string> <string name="keyboard_layout_default_label" msgid="1997292217218546957">"ડિફૉલ્ટ"</string> <string name="turn_screen_on_title" msgid="2662312432042116026">"સ્ક્રીન ચાલુ કરવાનું નિયંત્રણ"</string> diff --git a/packages/SettingsLib/res/values-hi/strings.xml b/packages/SettingsLib/res/values-hi/strings.xml index 7db157e40514..75326900b4a1 100644 --- a/packages/SettingsLib/res/values-hi/strings.xml +++ b/packages/SettingsLib/res/values-hi/strings.xml @@ -116,7 +116,7 @@ <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"कनेक्ट हो गया (ऑडियो शेयर करने की सुविधा काम करती है). बायां हेडसेट: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, दायां हेडसेट: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> बैटरी."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"कनेक्ट हो गया (ऑडियो शेयर करने की सुविधा काम करती है). बायां हेडसेट: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> बैटरी."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"कनेक्ट हो गया (ऑडियो शेयर करने की सुविधा काम करती है). दायां हेडसेट: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> बैटरी."</string> - <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"कनेक्ट हो गया (ऑडियो शेयर करने की सुविधा काम करती है)"</string> + <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"कनेक्ट है (ऑडियो शेयर करने की सुविधा काम करती है)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"चालू है (सिर्फ़ मीडिया के लिए)"</string> <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"ऑडियो शेयर करने की सुविधा काम करती है"</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"चालू है (सिर्फ़ मीडिया के लिए), सिर्फ़ बाएं कान की मशीन"</string> @@ -503,7 +503,7 @@ <string name="battery_info_status_charging_wireless" msgid="8924722966861282197">"वायरलेस चार्जिंग"</string> <string name="battery_info_status_charging_dock" msgid="8573274094093364791">"चार्ज हो रहा है"</string> <string name="battery_info_status_discharging" msgid="6962689305413556485">"चार्ज नहीं हो रही है"</string> - <string name="battery_info_status_not_charging" msgid="1103084691314264664">"फ़ोन कनेक्ट हो गया, लेकिन चार्ज नहीं हो रहा है"</string> + <string name="battery_info_status_not_charging" msgid="1103084691314264664">"फ़ोन कनेक्ट है, लेकिन चार्ज नहीं हो रहा"</string> <string name="battery_info_status_full" msgid="1339002294876531312">"बैटरी चार्ज हो गई"</string> <string name="battery_info_status_full_charged" msgid="3536054261505567948">"बैटरी पूरी चार्ज है"</string> <string name="battery_info_status_charging_on_hold" msgid="6364355145521694438">"फ़ोन को चार्ज होने से रोक दिया गया है"</string> diff --git a/packages/SettingsLib/res/values-hy/strings.xml b/packages/SettingsLib/res/values-hy/strings.xml index e7cbf2d3b3eb..01c5043573f8 100644 --- a/packages/SettingsLib/res/values-hy/strings.xml +++ b/packages/SettingsLib/res/values-hy/strings.xml @@ -237,7 +237,7 @@ <string name="choose_profile" msgid="343803890897657450">"Ընտրեք պրոֆիլ"</string> <string name="category_personal" msgid="6236798763159385225">"Անձնական"</string> <string name="category_work" msgid="4014193632325996115">"Աշխատանքային"</string> - <string name="category_private" msgid="4244892185452788977">"Անձնական"</string> + <string name="category_private" msgid="4244892185452788977">"Մասնավոր"</string> <string name="category_clone" msgid="1554511758987195974">"Կլոն"</string> <string name="development_settings_title" msgid="140296922921597393">"Մշակողի ընտրանքներ"</string> <string name="development_settings_enable" msgid="4285094651288242183">"Միացնել մշակողի ընտրանքները"</string> @@ -424,7 +424,7 @@ <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="local_backup_password_title" msgid="4631017948933578709">"Աշխատասեղանի պահուստավորման գաղտնաբառ"</string> <string name="local_backup_password_summary_none" msgid="7646898032616361714">"Աշխատասեղանի ամբողջական պահուստավորումները այժմ պաշտպանված չեն"</string> diff --git a/packages/SettingsLib/res/values-in/strings.xml b/packages/SettingsLib/res/values-in/strings.xml index 82a390e37c80..645f25aac94f 100644 --- a/packages/SettingsLib/res/values-in/strings.xml +++ b/packages/SettingsLib/res/values-in/strings.xml @@ -81,7 +81,7 @@ <string name="speed_label_fast" msgid="2677719134596044051">"Cepat"</string> <string name="speed_label_very_fast" msgid="8215718029533182439">"Sangat Cepat"</string> <string name="wifi_passpoint_expired" msgid="6540867261754427561">"Sudah tidak berlaku"</string> - <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> + <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> <string name="bluetooth_disconnected" msgid="7739366554710388701">"Sambungan terputus"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Memutus sambungan..."</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"Menghubungkan…"</string> @@ -112,7 +112,7 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Aktif (kiri dan kanan)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Aktif (hanya media). Baterai <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Aktif (hanya media). Baterai L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Terhubung (mendukung berbagi audio). Baterai<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Terhubung (mendukung berbagi audio). Baterai <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Terhubung (mendukung berbagi audio). Baterai L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Terhubung (mendukung berbagi audio). Kiri: Baterai <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Terhubung (mendukung berbagi audio). Kanan: Baterai <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> @@ -424,7 +424,7 @@ <string name="force_allow_on_external_summary" msgid="8525425782530728238">"Membuat semua aplikasi dapat ditulis ke penyimpanan eksternal, terlepas dari nilai manifes"</string> <string name="force_resizable_activities" msgid="7143612144399959606">"Paksa aktivitas agar ukurannya dapat diubah"</string> <string name="force_resizable_activities_summary" msgid="2490382056981583062">"Membuat semua aktivitas dapat diubah ukurannya untuk banyak jendela, terlepas dari nilai manifes."</string> - <string name="enable_freeform_support" msgid="7599125687603914253">"Aktifkan jendela berformat bebas"</string> + <string name="enable_freeform_support" msgid="7599125687603914253">"Aktifkan jendela berbentuk bebas"</string> <string name="enable_freeform_support_summary" msgid="1822862728719276331">"Aktifkan dukungan untuk jendela eksperimental berformat bebas."</string> <string name="local_backup_password_title" msgid="4631017948933578709">"Sandi cadangan desktop"</string> <string name="local_backup_password_summary_none" msgid="7646898032616361714">"Saat ini cadangan desktop penuh tidak dilindungi"</string> diff --git a/packages/SettingsLib/res/values-it/strings.xml b/packages/SettingsLib/res/values-it/strings.xml index 3714593b3e3b..5a777dcae352 100644 --- a/packages/SettingsLib/res/values-it/strings.xml +++ b/packages/SettingsLib/res/values-it/strings.xml @@ -85,7 +85,7 @@ <string name="bluetooth_disconnected" msgid="7739366554710388701">"Disconnesso"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Disconnessione…"</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"Connessione…"</string> - <string name="bluetooth_connected" msgid="8065345572198502293">"<xliff:g id="ACTIVE_DEVICE">%1$s</xliff:g> Connesso"</string> + <string name="bluetooth_connected" msgid="8065345572198502293">"Connessione a <xliff:g id="ACTIVE_DEVICE">%1$s</xliff:g>"</string> <string name="bluetooth_pairing" msgid="4269046942588193600">"Accoppiamento in corso…"</string> <string name="bluetooth_connected_no_headset" msgid="2224101138659967604">"<xliff:g id="ACTIVE_DEVICE">%1$s</xliff:g> connesso (telefono escluso)"</string> <string name="bluetooth_connected_no_a2dp" msgid="8566874395813947092">"<xliff:g id="ACTIVE_DEVICE">%1$s</xliff:g> connesso (contenuti multimediali esclusi)"</string> @@ -143,9 +143,9 @@ <string name="bluetooth_opp_profile_summary_connected" msgid="2393521801478157362">"Collegato al server di trasferimento file"</string> <string name="bluetooth_map_profile_summary_connected" msgid="4141725591784669181">"Connesso alla mappa"</string> <string name="bluetooth_sap_profile_summary_connected" msgid="1280297388033001037">"Collegato al SAP"</string> - <string name="bluetooth_opp_profile_summary_not_connected" msgid="3959741824627764954">"Non collegato al server di trasferimento file"</string> + <string name="bluetooth_opp_profile_summary_not_connected" msgid="3959741824627764954">"Non connesso al server di trasferimento file"</string> <string name="bluetooth_hid_profile_summary_connected" msgid="3923653977051684833">"Connesso a dispositivo di input"</string> - <string name="bluetooth_pan_user_profile_summary_connected" msgid="380469653827505727">"Connesso a dispositivo per accesso Internet"</string> + <string name="bluetooth_pan_user_profile_summary_connected" msgid="380469653827505727">"Connesso per internet"</string> <string name="bluetooth_pan_nap_profile_summary_connected" msgid="3744773111299503493">"Connessione Internet locale condivisa con dispositivo"</string> <string name="bluetooth_pan_profile_summary_use_for" msgid="7422039765025340313">"Usa per accesso a Internet"</string> <string name="bluetooth_map_profile_summary_use_for" msgid="4453622103977592583">"Utilizza per la mappa"</string> @@ -459,9 +459,9 @@ <string name="select_webview_provider_dialog_title" msgid="2444261109877277714">"Imposta l\'implementazione di WebView"</string> <string name="select_webview_provider_toast_text" msgid="8512254949169359848">"La selezione non è più valida. Riprova."</string> <string name="picture_color_mode" msgid="1013807330552931903">"Modalità colori immagini"</string> - <string name="picture_color_mode_desc" msgid="151780973768136200">"Use sRGB"</string> + <string name="picture_color_mode_desc" msgid="151780973768136200">"Usa sRGB"</string> <string name="daltonizer_mode_disabled" msgid="403424372812399228">"Disattivato"</string> - <string name="daltonizer_mode_monochromacy" msgid="362060873835885014">"Monocromìa"</string> + <string name="daltonizer_mode_monochromacy" msgid="362060873835885014">"Monocromatismo"</string> <string name="daltonizer_mode_deuteranomaly" msgid="3507284319584683963">"Deuteranomalìa (rosso-verde)"</string> <string name="daltonizer_mode_protanomaly" msgid="7805583306666608440">"Protanomalìa (rosso-verde)"</string> <string name="daltonizer_mode_tritanomaly" msgid="7135266249220732267">"Tritanomalìa (blu-giallo)"</string> @@ -592,7 +592,7 @@ <string name="tv_media_transfer_earc_subtitle" msgid="645191413103303077">"Connessione tramite eARC"</string> <string name="tv_media_transfer_default" msgid="5403053145185843843">"TV predefinita"</string> <string name="tv_media_transfer_hdmi" msgid="692569220956829921">"Uscita HDMI"</string> - <string name="tv_media_transfer_internal_speakers" msgid="8181494402866565865">"Speaker interni"</string> + <string name="tv_media_transfer_internal_speakers" msgid="8181494402866565865">"Altoparlanti interni"</string> <string name="profile_connect_timeout_subtext" msgid="4043408193005851761">"Problema di connessione. Spegni e riaccendi il dispositivo"</string> <string name="media_transfer_wired_device_name" msgid="4447880899964056007">"Dispositivo audio cablato"</string> <string name="help_label" msgid="3528360748637781274">"Guida e feedback"</string> diff --git a/packages/SettingsLib/res/values-iw/strings.xml b/packages/SettingsLib/res/values-iw/strings.xml index c2f4a8f5f8cb..45cb266cd077 100644 --- a/packages/SettingsLib/res/values-iw/strings.xml +++ b/packages/SettingsLib/res/values-iw/strings.xml @@ -125,7 +125,7 @@ <string name="bluetooth_profile_a2dp" msgid="4632426382762851724">"אודיו של מדיה"</string> <string name="bluetooth_profile_headset" msgid="5395952236133499331">"שיחות טלפון"</string> <string name="bluetooth_profile_opp" msgid="6692618568149493430">"העברת קבצים"</string> - <string name="bluetooth_profile_hid" msgid="2969922922664315866">"התקן קלט"</string> + <string name="bluetooth_profile_hid" msgid="2969922922664315866">"מכשיר לקליטת נתונים"</string> <string name="bluetooth_profile_pan" msgid="1006235139308318188">"גישה לאינטרנט"</string> <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"אישור גישה אל אנשי הקשר והיסטוריית השיחות"</string> <string name="bluetooth_profile_pbap_summary" msgid="402819589201138227">"המידע הזה ישמש למשל כדי להשמיע התראות על שיחות נכנסות"</string> @@ -196,7 +196,7 @@ <string name="launch_defaults_some" msgid="3631650616557252926">"הוגדרו כמה ברירות מחדל"</string> <string name="launch_defaults_none" msgid="8049374306261262709">"לא הוגדרו ברירות מחדל"</string> <string name="tts_settings" msgid="8130616705989351312">"הגדרות טקסט לדיבור"</string> - <string name="tts_settings_title" msgid="7602210956640483039">"המרת טקסט לדיבור"</string> + <string name="tts_settings_title" msgid="7602210956640483039">"פלט של המרת טקסט לדיבור"</string> <string name="tts_default_rate_title" msgid="3964187817364304022">"קצב דיבור"</string> <string name="tts_default_rate_summary" msgid="3781937042151716987">"המהירות שבה הטקסט נאמר"</string> <string name="tts_default_pitch_title" msgid="6988592215554485479">"גובה צליל"</string> @@ -207,7 +207,7 @@ <string name="tts_default_lang_summary" msgid="9042620014800063470">"הגדרת קול ספציפי לשפה עבור הטקסט הנאמר"</string> <string name="tts_play_example_title" msgid="1599468547216481684">"האזנה לדוגמה"</string> <string name="tts_play_example_summary" msgid="634044730710636383">"הפעלת הדגמה קצרה של סינתזת דיבור"</string> - <string name="tts_install_data_title" msgid="1829942496472751703">"התקנת נתוני קול"</string> + <string name="tts_install_data_title" msgid="1829942496472751703">"התקנת נתונים שנאספים בזיהוי קולי"</string> <string name="tts_install_data_summary" msgid="3608874324992243851">"התקנת הנתונים הקוליים הדרושים לסינתזת דיבור"</string> <string name="tts_engine_security_warning" msgid="3372432853837988146">"ייתכן שמנוע סינתזת דיבור זה יכול לאסוף את כל הטקסט המדובר, כולל נתונים אישיים כגון סיסמאות ומספרי כרטיסי אשראי. הוא מגיע מהמנוע <xliff:g id="TTS_PLUGIN_ENGINE_NAME">%s</xliff:g>. להפוך את השימוש במנוע סינתזת דיבור זה לפעיל?"</string> <string name="tts_engine_network_required" msgid="8722087649733906851">"שפה זו דורשת חיבור רשת פעיל עבור פלט טקסט לדיבור."</string> @@ -424,7 +424,7 @@ <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="local_backup_password_title" msgid="4631017948933578709">"סיסמת גיבוי שולחן העבודה"</string> <string name="local_backup_password_summary_none" msgid="7646898032616361714">"גיבויים מלאים בשולחן העבודה אינם מוגנים כעת"</string> diff --git a/packages/SettingsLib/res/values-ja/strings.xml b/packages/SettingsLib/res/values-ja/strings.xml index 17e902ef9604..75a39f7da3e9 100644 --- a/packages/SettingsLib/res/values-ja/strings.xml +++ b/packages/SettingsLib/res/values-ja/strings.xml @@ -470,7 +470,7 @@ <string name="daltonizer_type_overridden" msgid="4509604753672535721">"<xliff:g id="TITLE">%1$s</xliff:g>によって上書き済み"</string> <string name="power_remaining_settings_home_page" msgid="4885165789445462557">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> - <xliff:g id="TIME_STRING">%2$s</xliff:g>"</string> <string name="power_charging_on_hold_settings_home_page" msgid="7690464049464805856">"<xliff:g id="LEVEL">%1$s</xliff:g> - バッテリーを保護するため、充電を一時停止しています"</string> - <string name="power_incompatible_charging_settings_home_page" msgid="1322050766135126880">"<xliff:g id="LEVEL">%1$s</xliff:g> - 充電用アクセサリを確認してください"</string> + <string name="power_incompatible_charging_settings_home_page" msgid="1322050766135126880">"<xliff:g id="LEVEL">%1$s</xliff:g> - 充電用アクセサリーを確認してください"</string> <string name="power_remaining_duration_only" msgid="8264199158671531431">"残り時間: 約 <xliff:g id="TIME_REMAINING">%1$s</xliff:g>"</string> <string name="power_discharging_duration" msgid="1076561255466053220">"残り時間: 約 <xliff:g id="TIME_REMAINING">%1$s</xliff:g>(<xliff:g id="LEVEL">%2$s</xliff:g>)"</string> <string name="power_remaining_duration_only_enhanced" msgid="2527842780666073218">"残り時間: 約 <xliff:g id="TIME_REMAINING">%1$s</xliff:g>(使用状況に基づく)"</string> diff --git a/packages/SettingsLib/res/values-ka/strings.xml b/packages/SettingsLib/res/values-ka/strings.xml index 4efebc5002c9..d923a02b1b83 100644 --- a/packages/SettingsLib/res/values-ka/strings.xml +++ b/packages/SettingsLib/res/values-ka/strings.xml @@ -94,9 +94,7 @@ <string name="bluetooth_connected_no_headset_battery_level" msgid="2661863370509206428">"დაკავშირებულია (ტელეფონი არ არის). ბატარეის დონე: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_connected_no_a2dp_battery_level" msgid="6499078454894324287">"დაკავშირებულია (მედია არ არის). ბატარეა: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_connected_no_headset_no_a2dp_battery_level" msgid="8477440576953067242">"დაკავშირებულია (ტელეფონი ან მედია არ არის). ბატარეის დონე: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> - <!-- String.format failed for translation --> - <!-- no translation found for bluetooth_active_battery_level (2685517576209066008) --> - <skip /> + <string name="bluetooth_active_battery_level" msgid="2685517576209066008">"აქტიური. <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>%% ბატარეა."</string> <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"აქტიური. მარცხენა: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, მარჯვენა: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> ბატარეა."</string> <string name="bluetooth_active_battery_level_untethered_left" msgid="2895644748625343977">"აქტიური. მარცხენა ბატარეის დონე: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"აქტიური. მარჯვენა ბატარეის დონე: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> @@ -112,9 +110,7 @@ <string name="bluetooth_hearing_aid_left_active" msgid="8330226430756799572">"აქტიური (მხოლოდ მარცხენა)"</string> <string name="bluetooth_hearing_aid_right_active" msgid="2244728507170385397">"აქტიური (მხოლოდ მარჯვენა)"</string> <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"აქტიური (მარცხენა და მარჯვენა)"</string> - <!-- String.format failed for translation --> - <!-- no translation found for bluetooth_active_media_only_battery_level (7772517511061834073) --> - <skip /> + <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"აქტიური (მხოლოდ მედია). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>%% ბატარეა."</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"აქტიური (მხოლოდ მედია), მარცხენა: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, მარჯვენა:<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> ბატარეა."</string> <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"დაკავშირებული (აუდიოს გაზიარება მხარდაჭერილია). ბატარეა <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"დაკავშირებული (აუდიოს გაზიარება მხარდაჭერილია). მარცხენა: ბატარეა <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, მარჯვენა: ბატარეა <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> diff --git a/packages/SettingsLib/res/values-kk/arrays.xml b/packages/SettingsLib/res/values-kk/arrays.xml index 6c8d59f06263..666982096988 100644 --- a/packages/SettingsLib/res/values-kk/arrays.xml +++ b/packages/SettingsLib/res/values-kk/arrays.xml @@ -31,7 +31,7 @@ <item msgid="7852381437933824454">"Ажыратуда…"</item> <item msgid="5046795712175415059">"Ажыратылған"</item> <item msgid="2473654476624070462">"Сәтсіз"</item> - <item msgid="9146847076036105115">"Бөгелген"</item> + <item msgid="9146847076036105115">"Блокталған"</item> <item msgid="4543924085816294893">"Нашар байланысты уақытша қолданбау"</item> </string-array> <string-array name="wifi_status_with_ssid"> @@ -45,7 +45,7 @@ <item msgid="1175040558087735707">"<xliff:g id="NETWORK_NAME">%1$s</xliff:g> байланысынан ажыратылуда…"</item> <item msgid="699832486578171722">"Ажыратылған"</item> <item msgid="522383512264986901">"Сәтсіз"</item> - <item msgid="3602596701217484364">"Бөгелген"</item> + <item msgid="3602596701217484364">"Блокталған"</item> <item msgid="1999413958589971747">"Нашар байланысты уақытша қолданбау"</item> </string-array> <string-array name="hdcp_checking_titles"> diff --git a/packages/SettingsLib/res/values-kk/strings.xml b/packages/SettingsLib/res/values-kk/strings.xml index a1ea07011f39..910b6397853f 100644 --- a/packages/SettingsLib/res/values-kk/strings.xml +++ b/packages/SettingsLib/res/values-kk/strings.xml @@ -58,7 +58,7 @@ <string name="wifi_cant_connect_to_ap" msgid="3099667989279700135">"\"<xliff:g id="AP_NAME">%1$s</xliff:g>\" қолданбасына қосылу мүмкін емес"</string> <string name="wifi_check_password_try_again" msgid="8817789642851605628">"Құпия сөзді тексеріп, әрекетті қайталаңыз"</string> <string name="wifi_not_in_range" msgid="1541760821805777772">"Аумақта жоқ"</string> - <string name="wifi_no_internet_no_reconnect" msgid="821591791066497347">"Автоматты қосылмайды"</string> + <string name="wifi_no_internet_no_reconnect" msgid="821591791066497347">"Автоматты түрде қосылмайды"</string> <string name="wifi_no_internet" msgid="1774198889176926299">"Интернетпен байланыс жоқ"</string> <string name="saved_network" msgid="7143698034077223645">"<xliff:g id="NAME">%1$s</xliff:g> сақтаған"</string> <string name="connected_via_network_scorer" msgid="7665725527352893558">"%1$s арқылы автоматты қосылды"</string> @@ -112,11 +112,11 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Істеп тұр (екі жағы да)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Істеп тұр (тек мультимедиа). Батарея зарядының деңгейі – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Істеп тұр (тек мультимедиа). Сол жақ: батарея зарядының деңгейі — <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>. Оң жақ: батарея зарядының деңгейі — <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Қосылды (аудио бөлісуге мүмкіндік береді). Батарея зарядының деңгейі:<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Жалғанып тұр (аудио бөлісу мүмкіндігі бар). Батарея зарядының деңгейі – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Қосылды (аудио бөлісуге мүмкіндік береді). Сол жақ: батарея зарядының деңгейі — <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>. Оң жақ: батарея зарядының деңгейі — <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Қосылды (аудио бөлісуге мүмкіндік береді). Сол жақ: батарея зарядының деңгейі – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Қосылды (аудио бөлісуге мүмкіндік береді). Оң жақ: батарея зарядының деңгейі – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> - <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Қосылды (аудио бөлісуге мүмкіндік береді)."</string> + <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Жалғанды (аудио бөлісу мүмкіндігі бар)."</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"Істеп тұр (тек мультимедиа)."</string> <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"Аудио бөлісуге мүмкіндік береді."</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"Тек сол жақ істеп тұр (мультимедиа ғана)."</string> diff --git a/packages/SettingsLib/res/values-ko/strings.xml b/packages/SettingsLib/res/values-ko/strings.xml index 9cb770f7b5ff..5ba13bf4ba61 100644 --- a/packages/SettingsLib/res/values-ko/strings.xml +++ b/packages/SettingsLib/res/values-ko/strings.xml @@ -116,7 +116,7 @@ <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"연결되었습니다(오디오 공유 지원). 배터리는 왼쪽 <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, 오른쪽 <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>입니다."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"연결되었습니다(오디오 공유 지원). 왼쪽 배터리는 <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>입니다."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"연결되었습니다(오디오 공유 지원). 오른쪽 배터리는 <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>입니다."</string> - <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"연결되었습니다(오디오 공유 지원)."</string> + <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"연결됨(오디오 공유 지원)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"사용 중(미디어 전용)"</string> <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"오디오 공유 지원"</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"사용 중(미디어 전용), 왼쪽만"</string> @@ -127,7 +127,7 @@ <string name="bluetooth_profile_opp" msgid="6692618568149493430">"파일 전송"</string> <string name="bluetooth_profile_hid" msgid="2969922922664315866">"입력 장치"</string> <string name="bluetooth_profile_pan" msgid="1006235139308318188">"인터넷 액세스"</string> - <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"연락처 및 통화 기록에 대한 액세스를 허용합니다."</string> + <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"연락처 및 통화 기록에 대한 액세스 허용"</string> <string name="bluetooth_profile_pbap_summary" msgid="402819589201138227">"정보는 전화 알림 등에 사용됩니다."</string> <string name="bluetooth_profile_pan_nap" msgid="7871974753822470050">"인터넷 연결 공유"</string> <string name="bluetooth_profile_map" msgid="8907204701162107271">"문자 메시지"</string> diff --git a/packages/SettingsLib/res/values-ky/strings.xml b/packages/SettingsLib/res/values-ky/strings.xml index 64180a995937..aff591ecf5a9 100644 --- a/packages/SettingsLib/res/values-ky/strings.xml +++ b/packages/SettingsLib/res/values-ky/strings.xml @@ -112,13 +112,13 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Иштеп жатат (сол жана оң)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Жигердүү (медиа үчүн гана). Батарея: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Жигердүү (медиа үчүн гана). Батарея: L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Туташкан (чогуу угуу колдоого алынат). Батарея: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> - <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Туташкан (чогуу угуу колдоого алынат). Батарея: L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Туташкан (чогуу угуу колдоого алынат). Сол кулак – батареянын деңгээли: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> - <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Туташкан (чогуу угуу колдоого алынат). Оң кулак – батареянын деңгээли: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> - <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Туташкан (чогуу угуу колдоого алынат)"</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Туташып турат (чогуу уксаңыз болот). Батарея: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Туташып турат (чогуу уксаңыз болот). Батарея: L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> + <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Туташып турат (чогуу уксаңыз болот). Сол кулак – батареянын деңгээли: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Туташып турат (чогуу уксаңыз болот). Оң кулак – батареянын деңгээли: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Туташып турат (чогуу уксаңыз болот)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"Активдүү (медиа үчүн гана)"</string> - <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"Чогуу угуу колдоого алынат"</string> + <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"Чогуу уксаңыз болот"</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"Активдүү (медиа үчүн гана), сол кулакчын гана"</string> <string name="bluetooth_hearing_aid_media_only_right_active" msgid="3854140683042617230">"Активдүү (медиа үчүн гана), оң кулакчын гана"</string> <string name="bluetooth_hearing_aid_media_only_left_and_right_active" msgid="1299913413062528417">"Активдүү (медиа үчүн гана), сол жана оң кулакчын"</string> diff --git a/packages/SettingsLib/res/values-mk/strings.xml b/packages/SettingsLib/res/values-mk/strings.xml index b2456d3f9b53..0ac313eef38e 100644 --- a/packages/SettingsLib/res/values-mk/strings.xml +++ b/packages/SettingsLib/res/values-mk/strings.xml @@ -596,7 +596,7 @@ <string name="profile_connect_timeout_subtext" msgid="4043408193005851761">"Проблем со поврзување. Исклучете го уредот и повторно вклучете го"</string> <string name="media_transfer_wired_device_name" msgid="4447880899964056007">"Жичен аудиоуред"</string> <string name="help_label" msgid="3528360748637781274">"Помош и повратни информации"</string> - <string name="storage_category" msgid="2287342585424631813">"Капацитет"</string> + <string name="storage_category" msgid="2287342585424631813">"Простор"</string> <string name="shared_data_title" msgid="1017034836800864953">"Споделени податоци"</string> <string name="shared_data_summary" msgid="5516326713822885652">"Прегледајте и изменете ги споделените податоци"</string> <string name="shared_data_no_blobs_text" msgid="3108114670341737434">"Нема споделени податоци за корисников."</string> diff --git a/packages/SettingsLib/res/values-mn/strings.xml b/packages/SettingsLib/res/values-mn/strings.xml index 436326e8334f..23be62b402fa 100644 --- a/packages/SettingsLib/res/values-mn/strings.xml +++ b/packages/SettingsLib/res/values-mn/strings.xml @@ -47,7 +47,7 @@ <string name="wifi_security_sae" msgid="3644520541721422843">"WPA3-Хувийн"</string> <string name="wifi_security_psk_sae" msgid="8135104122179904684">"WPA2/WPA3-Хувийн"</string> <string name="wifi_security_none_owe" msgid="5241745828327404101">"Хоосон/Сайжруулсан нээлт"</string> - <string name="wifi_security_owe" msgid="3343421403561657809">"Сайжруулсан нээлт"</string> + <string name="wifi_security_owe" msgid="3343421403561657809">"Сайжруулсан нээлттэй"</string> <string name="wifi_security_eap_suiteb" msgid="415842785991698142">"WPA3-Байгууллага 192-бит"</string> <string name="wifi_remembered" msgid="3266709779723179188">"Хадгалагдсан"</string> <string name="wifi_disconnected" msgid="7054450256284661757">"Салсан"</string> diff --git a/packages/SettingsLib/res/values-mr/strings.xml b/packages/SettingsLib/res/values-mr/strings.xml index b68fc7162f83..289365fc0ce3 100644 --- a/packages/SettingsLib/res/values-mr/strings.xml +++ b/packages/SettingsLib/res/values-mr/strings.xml @@ -47,7 +47,7 @@ <string name="wifi_security_sae" msgid="3644520541721422843">"WPA3-वैयक्तिक"</string> <string name="wifi_security_psk_sae" msgid="8135104122179904684">"WPA2/WPA3-वैयक्तिक"</string> <string name="wifi_security_none_owe" msgid="5241745828327404101">"कोणतीही नाही/एन्हान्स्ड ओपन"</string> - <string name="wifi_security_owe" msgid="3343421403561657809">"एन्हान्स्ड ओपन"</string> + <string name="wifi_security_owe" msgid="3343421403561657809">"Enhanced Open"</string> <string name="wifi_security_eap_suiteb" msgid="415842785991698142">"WPA3-एंटरप्राइझ 192-बिट"</string> <string name="wifi_remembered" msgid="3266709779723179188">"सेव्ह केले"</string> <string name="wifi_disconnected" msgid="7054450256284661757">"डिस्कनेक्ट केले"</string> @@ -489,11 +489,11 @@ <string name="power_remaining_only_more_than_subtext" msgid="4873750633368888062">"<xliff:g id="TIME_REMAINING">%1$s</xliff:g> पेक्षा जास्त शिल्लक आहे"</string> <string name="power_charging" msgid="6727132649743436802">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATE">%2$s</xliff:g>"</string> <string name="power_remaining_charging_duration_only" msgid="8085099012811384899">"पूर्ण चार्ज होण्यासाठी <xliff:g id="TIME">%1$s</xliff:g> शिल्लक आहेत"</string> - <string name="power_charging_duration" msgid="6127154952524919719">"<xliff:g id="LEVEL">%1$s</xliff:g> - पूर्ण चार्ज होण्यासाठी <xliff:g id="TIME">%2$s</xliff:g> शिल्लक आहे"</string> + <string name="power_charging_duration" msgid="6127154952524919719">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g> या वेळेत बॅटरी पूर्ण चार्ज होईल"</string> <string name="power_charging_limited" msgid="8202147604844938236">"<xliff:g id="LEVEL">%1$s</xliff:g> - चार्जिंग ऑप्टिमाइझ केले"</string> <string name="power_charging_future_paused" msgid="1809543660923642799">"<xliff:g id="LEVEL">%1$s</xliff:g> ‑ चार्ज होत आहे"</string> <string name="power_fast_charging_duration_v2" msgid="3797735998640359490">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g> - <xliff:g id="TIME">%3$s</xliff:g> पर्यंत पूर्ण होईल"</string> - <string name="power_charging_duration_v2" msgid="2938998284074003248">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g> पर्यंत पूर्णपणे चार्ज होईल"</string> + <string name="power_charging_duration_v2" msgid="2938998284074003248">"<xliff:g id="LEVEL">%1$s</xliff:g> - बॅटरी <xliff:g id="TIME">%2$s</xliff:g> या वेळेत पूर्ण चार्ज होईल"</string> <string name="power_remaining_charging_duration_only_v2" msgid="5358176435722950193">"<xliff:g id="TIME">%1$s</xliff:g> पर्यंत पूर्णपणे चार्ज होईल"</string> <string name="power_remaining_fast_charging_duration_only_v2" msgid="6270950195810579563">"<xliff:g id="TIME">%1$s</xliff:g> पर्यंत पूर्ण होईल"</string> <string name="battery_info_status_unknown" msgid="268625384868401114">"अज्ञात"</string> diff --git a/packages/SettingsLib/res/values-ms/strings.xml b/packages/SettingsLib/res/values-ms/strings.xml index 50f0c2ec4fcd..862772d48c9c 100644 --- a/packages/SettingsLib/res/values-ms/strings.xml +++ b/packages/SettingsLib/res/values-ms/strings.xml @@ -47,7 +47,7 @@ <string name="wifi_security_sae" msgid="3644520541721422843">"WPA3-Personal"</string> <string name="wifi_security_psk_sae" msgid="8135104122179904684">"WPA2/WPA3-Personal"</string> <string name="wifi_security_none_owe" msgid="5241745828327404101">"Keselamatan OWE Tiada/Dipertingkat"</string> - <string name="wifi_security_owe" msgid="3343421403561657809">"Keselamatan OWE Dipertingkat"</string> + <string name="wifi_security_owe" msgid="3343421403561657809">"Enhanced Open"</string> <string name="wifi_security_eap_suiteb" msgid="415842785991698142">"WPA3-Enterprise 192-bit"</string> <string name="wifi_remembered" msgid="3266709779723179188">"Disimpan"</string> <string name="wifi_disconnected" msgid="7054450256284661757">"Diputuskan sambungan"</string> @@ -236,7 +236,7 @@ </string-array> <string name="choose_profile" msgid="343803890897657450">"Pilih profil"</string> <string name="category_personal" msgid="6236798763159385225">"Peribadi"</string> - <string name="category_work" msgid="4014193632325996115">"Tempat Kerja"</string> + <string name="category_work" msgid="4014193632325996115">"Kerja"</string> <string name="category_private" msgid="4244892185452788977">"Persendirian"</string> <string name="category_clone" msgid="1554511758987195974">"Klon"</string> <string name="development_settings_title" msgid="140296922921597393">"Pilihan pembangun"</string> diff --git a/packages/SettingsLib/res/values-ne/strings.xml b/packages/SettingsLib/res/values-ne/strings.xml index 1e33f88879d1..ca5cfd79019a 100644 --- a/packages/SettingsLib/res/values-ne/strings.xml +++ b/packages/SettingsLib/res/values-ne/strings.xml @@ -136,7 +136,7 @@ <string name="bluetooth_profile_a2dp_high_quality_unknown_codec" msgid="2477639096903834374">"HD अडियो"</string> <string name="bluetooth_profile_hearing_aid" msgid="2607867572569689732">"हियरिङ डिभाइसहरू"</string> <string name="bluetooth_profile_le_audio" msgid="1725521360076451751">"LE अडियो"</string> - <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="5757754050938807276">"श्रवण यन्त्रहरूमा जडान गरियो"</string> + <string name="bluetooth_hearing_aid_profile_summary_connected" msgid="5757754050938807276">"हियरिङ डिभाइसमा कनेक्ट गरियो"</string> <string name="bluetooth_le_audio_profile_summary_connected" msgid="6916226974453480650">"LE अडियोमा कनेक्ट गरिएको छ"</string> <string name="bluetooth_a2dp_profile_summary_connected" msgid="7422607970115444153">"मिडिया अडियोसँग जडित"</string> <string name="bluetooth_headset_profile_summary_connected" msgid="2420981566026949688">"फोन अडियोमा जडान गरियो"</string> @@ -154,7 +154,7 @@ <string name="bluetooth_headset_profile_summary_use_for" msgid="808970643123744170">"फोन अडियोको लागि प्रयोग गर्नुहोस्"</string> <string name="bluetooth_opp_profile_summary_use_for" msgid="461981154387015457">"फाइल ट्रान्सफरका लागि प्रयोग गर्नुहोस्"</string> <string name="bluetooth_hid_profile_summary_use_for" msgid="4289460627406490952">"इनपुटको लागि प्रयोग गर्नुहोस्"</string> - <string name="bluetooth_hearing_aid_profile_summary_use_for" msgid="3374057355721486932">"श्रवण यन्त्रहरूका लागि प्रयोग गर्नुहोस्"</string> + <string name="bluetooth_hearing_aid_profile_summary_use_for" msgid="3374057355721486932">"हियरिङ डिभाइसका लागि प्रयोग गर्नुहोस्"</string> <string name="bluetooth_le_audio_profile_summary_use_for" msgid="2778318636027348572">"LE_AUDIO मा प्रयोग गर्नुहोस्"</string> <string name="bluetooth_pairing_accept" msgid="2054232610815498004">"कनेक्ट गर्नुहोस्"</string> <string name="bluetooth_pairing_accept_all_caps" msgid="2734383073450506220">"जोडी"</string> diff --git a/packages/SettingsLib/res/values-or/strings.xml b/packages/SettingsLib/res/values-or/strings.xml index 562a55879bdb..7ecbba8313b6 100644 --- a/packages/SettingsLib/res/values-or/strings.xml +++ b/packages/SettingsLib/res/values-or/strings.xml @@ -48,7 +48,7 @@ <string name="wifi_security_psk_sae" msgid="8135104122179904684">"WPA2/WPA3-Personal"</string> <string name="wifi_security_none_owe" msgid="5241745828327404101">"କିଛି ନାହିଁ/Enhanced Open"</string> <string name="wifi_security_owe" msgid="3343421403561657809">"Enhanced Open"</string> - <string name="wifi_security_eap_suiteb" msgid="415842785991698142">"WPA3-Enterprise 192-ବିଟ୍"</string> + <string name="wifi_security_eap_suiteb" msgid="415842785991698142">"WPA3-Enterprise 192-ବିଟ"</string> <string name="wifi_remembered" msgid="3266709779723179188">"ସେଭ୍ ହୋଇଗଲା"</string> <string name="wifi_disconnected" msgid="7054450256284661757">"ବିଛିନ୍ନ କରାଯାଇଛି"</string> <string name="wifi_disabled_generic" msgid="2651916945380294607">"ଅକ୍ଷମ ହୋଇଛି"</string> @@ -112,20 +112,20 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"ସକ୍ରିୟ (ବାମ ଏବଂ ଡାହାଣ)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ)। <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ)। ବାମ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ଡାହାଣ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> ବେଟେରୀ।"</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ)। <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସପୋର୍ଟ କରେ)। <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ)। ବାମ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ଡାହାଣ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> ବେଟେରୀ।"</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ)। ବାମ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> - <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ)। ଡାହାଣ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> + <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସପୋର୍ଟ କରେ)। ଡାହାଣ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> ବେଟେରୀ।"</string> <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"କନେକ୍ଟ କରାଯାଇଛି (ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ)"</string> - <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"ଅଡିଓ ସେୟାରିଂକୁ ସମର୍ଥନ କରେ"</string> + <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"ଅଡିଓ ସେୟାରିଂକୁ ସପୋର୍ଟ କରେ"</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ), କେବଳ ବାମ"</string> <string name="bluetooth_hearing_aid_media_only_right_active" msgid="3854140683042617230">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ), କେବଳ ଡାହାଣ"</string> <string name="bluetooth_hearing_aid_media_only_left_and_right_active" msgid="1299913413062528417">"ସକ୍ରିୟ (କେବଳ ମିଡିଆ), ବାମ ଏବଂ ଡାହାଣ"</string> <string name="bluetooth_profile_a2dp" msgid="4632426382762851724">"ମିଡିଆ ଅଡିଓ"</string> <string name="bluetooth_profile_headset" msgid="5395952236133499331">"ଫୋନ କଲ"</string> <string name="bluetooth_profile_opp" msgid="6692618568149493430">"ଫାଇଲ୍ ଟ୍ରାନ୍ସଫର୍"</string> - <string name="bluetooth_profile_hid" msgid="2969922922664315866">"ଇନ୍ପୁଟ୍ ଡିଭାଇସ୍"</string> + <string name="bluetooth_profile_hid" msgid="2969922922664315866">"ଇନପୁଟ ଡିଭାଇସ"</string> <string name="bluetooth_profile_pan" msgid="1006235139308318188">"ଇଣ୍ଟରନେଟ ଆକ୍ସେସ"</string> <string name="bluetooth_profile_pbap" msgid="2103406516858653017">"କଣ୍ଟାକ୍ଟ ଓ କଲ ଇତିହାସକୁ ଆକ୍ସେସ କରିବା ପାଇଁ ଅନୁମତି ଦିଅନ୍ତୁ"</string> <string name="bluetooth_profile_pbap_summary" msgid="402819589201138227">"ସୂଚନାକୁ କଲ ଘୋଷଣା ଏବଂ ଆହୁରି ଅଧିକ ପାଇଁ ବ୍ୟବହାର କରାଯିବ"</string> diff --git a/packages/SettingsLib/res/values-pa/strings.xml b/packages/SettingsLib/res/values-pa/strings.xml index f80ec8d1cb00..2cd463122c75 100644 --- a/packages/SettingsLib/res/values-pa/strings.xml +++ b/packages/SettingsLib/res/values-pa/strings.xml @@ -316,7 +316,7 @@ <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> <string name="bluetooth_select_a2dp_codec_streaming_label" msgid="2040810756832027227">"ਸਟ੍ਰੀਮਿੰਗ: <xliff:g id="STREAMING_PARAMETER">%1$s</xliff:g>"</string> - <string name="select_private_dns_configuration_title" msgid="7887550926056143018">"ਨਿੱਜੀ DNS"</string> + <string name="select_private_dns_configuration_title" msgid="7887550926056143018">"ਪ੍ਰਾਈਵੇਟ DNS"</string> <string name="select_private_dns_configuration_dialog_title" msgid="3731422918335951912">"ਨਿੱਜੀ DNS ਮੋਡ ਚੁਣੋ"</string> <string name="private_dns_mode_off" msgid="7065962499349997041">"ਬੰਦ"</string> <string name="private_dns_mode_opportunistic" msgid="1947864819060442354">"ਸਵੈਚਲਿਤ"</string> @@ -407,7 +407,7 @@ <string name="enable_gpu_debug_layers" msgid="4986675516188740397">"GPU ਡੀਬੱਗ ਤਹਿਆਂ ਚਾਲੂ ਕਰੋ"</string> <string name="enable_gpu_debug_layers_summary" msgid="4921521407377170481">"ਡੀਬੱਗ ਐਪਾਂ ਲਈ GPU ਡੀਬੱਗ ਤਹਿਆਂ ਨੂੰ ਲੋਡ ਹੋਣ ਦਿਓ"</string> <string name="enable_verbose_vendor_logging" msgid="1196698788267682072">"ਵਰਬੋਸ ਵਿਕਰੇਤਾ ਲੌਗਿੰਗ ਚਾਲੂ ਕਰੋ"</string> - <string name="enable_verbose_vendor_logging_summary" msgid="5426292185780393708">"ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ ਡੀਵਾਈਸ ਨਾਲ ਸੰਬੰਧਿਤ ਵਿਕਰੇਤਾ ਲੌਗ ਸ਼ਾਮਲ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਨਿੱਜੀ ਜਾਣਕਾਰੀ, ਬੈਟਰੀ ਦੀ ਵਧੇਰੇ ਵਰਤੋਂ, ਅਤੇ/ਜਾਂ ਵਧੇਰੀ ਸਟੋਰੇਜ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string> + <string name="enable_verbose_vendor_logging_summary" msgid="5426292185780393708">"ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਵਧੀਕ ਡੀਵਾਈਸ ਮੁਤਾਬਕ ਵਿਕਰੇਤਾ ਲੌਗ ਸ਼ਾਮਲ ਕਰੋ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਪ੍ਰਾਈਵੇਟ ਜਾਣਕਾਰੀ, ਬੈਟਰੀ ਦੀ ਵਧੇਰੇ ਵਰਤੋਂ ਅਤੇ/ਜਾਂ ਜ਼ਿਆਦਾ ਸਟੋਰੇਜ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string> <string name="window_animation_scale_title" msgid="5236381298376812508">"ਵਿੰਡੋ ਐਨੀਮੇਸ਼ਨ ਸਕੇਲ"</string> <string name="transition_animation_scale_title" msgid="1278477690695439337">"ਟ੍ਰਾਂਜ਼ਿਸ਼ਨ ਐਨੀਮੇਸ਼ਨ ਸਕੇਲ"</string> <string name="animator_duration_scale_title" msgid="7082913931326085176">"ਐਨੀਮੇਟਰ ਮਿਆਦ ਸਕੇਲ"</string> diff --git a/packages/SettingsLib/res/values-ru/strings.xml b/packages/SettingsLib/res/values-ru/strings.xml index f30a125da16a..d81fbbea6898 100644 --- a/packages/SettingsLib/res/values-ru/strings.xml +++ b/packages/SettingsLib/res/values-ru/strings.xml @@ -81,7 +81,7 @@ <string name="speed_label_fast" msgid="2677719134596044051">"Быстрая"</string> <string name="speed_label_very_fast" msgid="8215718029533182439">"Очень быстрая"</string> <string name="wifi_passpoint_expired" msgid="6540867261754427561">"Срок действия истек"</string> - <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> + <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> <string name="bluetooth_disconnected" msgid="7739366554710388701">"Нет подключения"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Отключение..."</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"Подключение..."</string> @@ -616,7 +616,7 @@ <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Из профиля можно поменять и общие настройки устройства, например сеть Wi-Fi.\n\nОбновлять общие приложения могут все, однако специальные возможности настраиваются индивидуально."</string> - <string name="user_add_user_message_short" msgid="3295959985795716166">"После создания профиля его потребуется настроить.\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> <string name="user_grant_admin_button" msgid="5441486731331725756">"Назначить администратором"</string> diff --git a/packages/SettingsLib/res/values-sk/strings.xml b/packages/SettingsLib/res/values-sk/strings.xml index db8301a52e5c..f2d58b50932f 100644 --- a/packages/SettingsLib/res/values-sk/strings.xml +++ b/packages/SettingsLib/res/values-sk/strings.xml @@ -261,7 +261,7 @@ <string name="adb_paired_devices_title" msgid="5268997341526217362">"Spárované zariadenia"</string> <string name="adb_wireless_device_connected_summary" msgid="3039660790249148713">"Aktuálne pripojené"</string> <string name="adb_wireless_device_details_title" msgid="7129369670526565786">"Podrobnosti o zariadení"</string> - <string name="adb_device_forget" msgid="193072400783068417">"Odstrániť"</string> + <string name="adb_device_forget" msgid="193072400783068417">"Zabudnúť"</string> <string name="adb_device_fingerprint_title_format" msgid="291504822917843701">"Digitálny odtlačok zariadenia: <xliff:g id="FINGERPRINT_PARAM">%1$s</xliff:g>"</string> <string name="adb_wireless_connection_failed_title" msgid="664211177427438438">"Pripojenie zlyhalo"</string> <string name="adb_wireless_connection_failed_message" msgid="9213896700171602073">"Skontrolujte, či je zariadenie <xliff:g id="DEVICE_NAME">%1$s</xliff:g> pripojené k správnej sieti"</string> diff --git a/packages/SettingsLib/res/values-sl/strings.xml b/packages/SettingsLib/res/values-sl/strings.xml index 5460c3be6754..0fbede9506bc 100644 --- a/packages/SettingsLib/res/values-sl/strings.xml +++ b/packages/SettingsLib/res/values-sl/strings.xml @@ -112,7 +112,7 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Aktivno (levo in desno)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Aktivno (samo predstavnost). Baterija: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Aktivno (samo predstavnost), baterija – L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, D: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Povezano (podpira deljenje zvoka), baterija: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Povezano (podpira deljenje zvoka), baterija: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Povezano (podpira deljenje zvoka), baterija – L: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, D: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Povezano (podpira deljenje zvoka). Levo – baterija: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Povezano (podpira deljenje zvoka). Desno – baterija: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> diff --git a/packages/SettingsLib/res/values-sv/strings.xml b/packages/SettingsLib/res/values-sv/strings.xml index 636d969b30a5..d8cbce2f8448 100644 --- a/packages/SettingsLib/res/values-sv/strings.xml +++ b/packages/SettingsLib/res/values-sv/strings.xml @@ -235,7 +235,7 @@ <item msgid="6946761421234586000">"400 %"</item> </string-array> <string name="choose_profile" msgid="343803890897657450">"Välj profil"</string> - <string name="category_personal" msgid="6236798763159385225">"Personlig"</string> + <string name="category_personal" msgid="6236798763159385225">"Privat"</string> <string name="category_work" msgid="4014193632325996115">"Jobb"</string> <string name="category_private" msgid="4244892185452788977">"Privat"</string> <string name="category_clone" msgid="1554511758987195974">"Klon"</string> diff --git a/packages/SettingsLib/res/values-sw/strings.xml b/packages/SettingsLib/res/values-sw/strings.xml index 01b786dff8bf..cd9f32eedb46 100644 --- a/packages/SettingsLib/res/values-sw/strings.xml +++ b/packages/SettingsLib/res/values-sw/strings.xml @@ -94,13 +94,13 @@ <string name="bluetooth_connected_no_headset_battery_level" msgid="2661863370509206428">"Imeunganishwa (hamna simu), kiasi cha chaji ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_connected_no_a2dp_battery_level" msgid="6499078454894324287">"Imeunganishwa (hamna kifaa cha sauti), kiasi cha chaji ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_connected_no_headset_no_a2dp_battery_level" msgid="8477440576953067242">"Imeunganishwa (hamna simu au kifaa cha sauti), kiasi cha chaji ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> - <string name="bluetooth_active_battery_level" msgid="2685517576209066008">"Inatumika. Chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_active_battery_level" msgid="2685517576209066008">"Inatumika. Chaji imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"Inatumika. Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_active_battery_level_untethered_left" msgid="2895644748625343977">"Inatumika. Kushoto: chaji <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"Inatumika. Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"Chaji ya betri ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"Chaji ya betri ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"Kushoto: chaji imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Kulia: chaji imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"Kushoto <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> @@ -112,11 +112,11 @@ <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Inatumika (kushoto na kulia)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Inatumika (maudhui pekee). Chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Inatumika (maudhui pekee), Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja). Chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja). Chaji imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja). Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja). Kushoto: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja). Kulia: chaji ya betri imefika <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>."</string> - <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Imeunganishwa (inaweza kutumia kipengele cha kusikiliza pamoja)"</string> + <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Imeunganishwa (inaweza kusikiliza pamoja)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"Inatumika (maudhui pekee)"</string> <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"Inaweza kutumia kipengele cha kusikiliza pamoja"</string> <string name="bluetooth_hearing_aid_media_only_left_active" msgid="1632152540901488645">"Inatumika (maudhui pekee), kushoto pekee"</string> diff --git a/packages/SettingsLib/res/values-te/strings.xml b/packages/SettingsLib/res/values-te/strings.xml index 16d40c246d58..b86697591190 100644 --- a/packages/SettingsLib/res/values-te/strings.xml +++ b/packages/SettingsLib/res/values-te/strings.xml @@ -100,7 +100,7 @@ <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"యాక్టివ్గా ఉంది. కుడి వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ."</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"బ్యాటరీ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"ఎడమ వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, కుడివైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> బ్యాటరీ."</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"ఎడమ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, కుడి: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> బ్యాటరీ."</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"ఎడమ వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"కుడి వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ"</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"ఎడమ వైపు <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> @@ -115,7 +115,7 @@ <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"కనెక్ట్ చేయబడింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"కనెక్ట్ చేయబడింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది). ఎడమ వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g> బ్యాటరీ, కుడివైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> బ్యాటరీ."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"కనెక్ట్ చేయబడింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది). ఎడమ వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ."</string> - <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"కనెక్ట్ చేయబడింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది). కుడి వైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ."</string> + <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"కనెక్ట్ అయింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది). కుడివైపు: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> బ్యాటరీ."</string> <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"కనెక్ట్ చేయబడింది (ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది)"</string> <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"యాక్టివ్ (మీడియా మాత్రమే)"</string> <string name="bluetooth_saved_device_lea_support" msgid="7231323139968285768">"ఆడియో షేరింగ్కు సపోర్ట్ చేస్తుంది"</string> diff --git a/packages/SettingsLib/res/values-th/strings.xml b/packages/SettingsLib/res/values-th/strings.xml index 014ba26e2f3b..720794a12940 100644 --- a/packages/SettingsLib/res/values-th/strings.xml +++ b/packages/SettingsLib/res/values-th/strings.xml @@ -95,12 +95,12 @@ <string name="bluetooth_connected_no_a2dp_battery_level" msgid="6499078454894324287">"เชื่อมต่อแล้ว (ไม่รวมสื่อ) แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_connected_no_headset_no_a2dp_battery_level" msgid="8477440576953067242">"เชื่อมต่อแล้ว (ไม่รวมโทรศัพท์หรือสื่อ) แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g><xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g>"</string> <string name="bluetooth_active_battery_level" msgid="2685517576209066008">"ใช้งานอยู่ แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"ใช้งานอยู่ L: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> + <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"ใช้งานอยู่ แบตเตอรี่ข้างซ้าย: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ข้างขวา: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> <string name="bluetooth_active_battery_level_untethered_left" msgid="2895644748625343977">"ใช้งานอยู่ L: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"ใช้งานอยู่ R: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"L: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"แบตเตอรี่ข้างซ้าย: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ข้างขวา: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"ซ้าย: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"ขวา: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"ฝั่งซ้าย <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> @@ -111,9 +111,9 @@ <string name="bluetooth_hearing_aid_right_active" msgid="2244728507170385397">"ใช้งานอยู่ (เฉพาะข้างขวา)"</string> <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"ใช้งานอยู่ (ข้างซ้ายและขวา)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"ใช้งานอยู่ (สื่อเท่านั้น) แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"ใช้งานอยู่ (สื่อเท่านั้น) L: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> + <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"ใช้งานอยู่ (สื่อเท่านั้น) แบตเตอรี่ข้างซ้าย: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ข้างขวา: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง) แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง) L: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, R: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> + <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง) แบตเตอรี่ข้างซ้าย: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, ข้างขวา: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง) ซ้าย: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง) ขวา: แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"เชื่อมต่อแล้ว (รองรับการแชร์เสียง)"</string> diff --git a/packages/SettingsLib/res/values-tr/strings.xml b/packages/SettingsLib/res/values-tr/strings.xml index e8bac312b4dc..e515e58a325d 100644 --- a/packages/SettingsLib/res/values-tr/strings.xml +++ b/packages/SettingsLib/res/values-tr/strings.xml @@ -111,9 +111,9 @@ <string name="bluetooth_hearing_aid_right_active" msgid="2244728507170385397">"Etkin (yalnızca sağ taraf)"</string> <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Etkin (sol ve sağ taraf)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Etkin (yalnızca medya). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> pil seviyesi."</string> - <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Etkin (yalnızca medya), Sol: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Sağ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> pil seviyesi."</string> - <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Bağlı (ses paylaşımını destekler), <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> pil seviyesi."</string> - <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Bağlı (ses paylaşımını destekler), Sol: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Sağ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> pil seviyesi."</string> + <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Etkin (yalnızca medya). Sol: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Sağ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> pil seviyesi."</string> + <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Bağlı (ses paylaşımını destekler). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> pil seviyesi."</string> + <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Bağlı (ses paylaşımını destekler). Sol: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, Sağ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> pil seviyesi."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Bağlı (ses paylaşımını destekler). Sol: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> pil seviyesi."</string> <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Bağlı (ses paylaşımını destekler). Sağ: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> pil seviyesi."</string> <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Bağlı (ses paylaşımını destekler)"</string> diff --git a/packages/SettingsLib/res/values-uk/strings.xml b/packages/SettingsLib/res/values-uk/strings.xml index deb0a4045280..e2cd2d82858d 100644 --- a/packages/SettingsLib/res/values-uk/strings.xml +++ b/packages/SettingsLib/res/values-uk/strings.xml @@ -95,12 +95,12 @@ <string name="bluetooth_connected_no_a2dp_battery_level" msgid="6499078454894324287">"<xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g> під’єднано (без медіа), заряд акумулятора – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_connected_no_headset_no_a2dp_battery_level" msgid="8477440576953067242">"<xliff:g id="ACTIVE_DEVICE">%2$s</xliff:g> під’єднано (без телефона й медіа), заряд акумулятора – <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> <string name="bluetooth_active_battery_level" msgid="2685517576209066008">"Активне з’єднання. <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> - <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"Активне з’єднання. Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> заряду акумулятора."</string> + <string name="bluetooth_active_battery_level_untethered" msgid="4961338936672922617">"Активне з’єднання. Рівень заряду: лівий <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_active_battery_level_untethered_left" msgid="2895644748625343977">"Активовано. Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> <string name="bluetooth_active_battery_level_untethered_right" msgid="7407517998880370179">"Активовано. Правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> <string name="bluetooth_battery_level" msgid="2893696778200201555">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора"</string> <string name="tv_bluetooth_battery_level" msgid="8786353985605532846">"Заряд акумулятора: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> - <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> заряду акумулятора."</string> + <string name="bluetooth_battery_level_untethered" msgid="1616774716076301755">"Рівень заряду: лівий <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_untethered_left" msgid="5725764679536058365">"Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора"</string> <string name="bluetooth_battery_level_untethered_right" msgid="8377995536997790142">"Правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора"</string> <string name="tv_bluetooth_battery_level_untethered_left" msgid="337629670583744410">"Ліва частина: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g>"</string> @@ -111,7 +111,7 @@ <string name="bluetooth_hearing_aid_right_active" msgid="2244728507170385397">"Активовано (лише правий)"</string> <string name="bluetooth_hearing_aid_left_and_right_active" msgid="4294571497939983181">"Активовано (лівий і правий)"</string> <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Активне з’єднання (лише для мультимедіа). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> - <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Активне з’єднання (лише для мультимедіа). Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> заряду акумулятора"</string> + <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Активне з’єднання (лише для мультимедіа). Рівень заряду: лівий <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g>."</string> <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Підключено (підтримує надсилання аудіо). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Підключено (підтримує надсилання аудіо). Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, правий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> заряду акумулятора."</string> <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Підключено (підтримує надсилання аудіо). Лівий: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> заряду акумулятора."</string> @@ -596,7 +596,7 @@ <string name="profile_connect_timeout_subtext" msgid="4043408193005851761">"Не вдається підключитися. Перезавантажте пристрій."</string> <string name="media_transfer_wired_device_name" msgid="4447880899964056007">"Дротовий аудіопристрій"</string> <string name="help_label" msgid="3528360748637781274">"Довідка й відгуки"</string> - <string name="storage_category" msgid="2287342585424631813">"Пам\'ять"</string> + <string name="storage_category" msgid="2287342585424631813">"Сховище"</string> <string name="shared_data_title" msgid="1017034836800864953">"Спільні дані"</string> <string name="shared_data_summary" msgid="5516326713822885652">"Переглянути й змінити спільні дані"</string> <string name="shared_data_no_blobs_text" msgid="3108114670341737434">"Немає спільних даних для цього користувача."</string> diff --git a/packages/SettingsLib/res/values-vi/strings.xml b/packages/SettingsLib/res/values-vi/strings.xml index 9bb4ef58c5a3..24148a241dfc 100644 --- a/packages/SettingsLib/res/values-vi/strings.xml +++ b/packages/SettingsLib/res/values-vi/strings.xml @@ -239,7 +239,7 @@ <string name="category_work" msgid="4014193632325996115">"Công việc"</string> <string name="category_private" msgid="4244892185452788977">"Riêng tư"</string> <string name="category_clone" msgid="1554511758987195974">"Nhân bản"</string> - <string name="development_settings_title" msgid="140296922921597393">"Tùy chọn cho nhà phát triển"</string> + <string name="development_settings_title" msgid="140296922921597393">"Tuỳ chọn cho nhà phát triển"</string> <string name="development_settings_enable" msgid="4285094651288242183">"Bật tùy chọn nhà phát triển"</string> <string name="development_settings_summary" msgid="8718917813868735095">"Đặt tùy chọn cho phát triển ứng dụng"</string> <string name="development_settings_not_available" msgid="355070198089140951">"Tùy chọn dành cho nhà phát triển không khả dụng cho người dùng này"</string> @@ -562,7 +562,7 @@ <string name="zen_mode_settings_summary_off" msgid="3832876036123504076">"Không bao giờ"</string> <string name="zen_interruption_level_priority" msgid="5392140786447823299">"Chỉ cho các mục ưu tiên"</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">"Bạn sẽ không nghe thấy báo thức tiếp theo lúc <xliff:g id="WHEN">%1$s</xliff:g> của mình trừ khi bạn tắt chức năng này trước"</string> + <string name="zen_alarm_warning_indef" msgid="4146527909616457163">"Bạn sẽ không nghe thấy báo thức tiếp theo lúc <xliff:g id="WHEN">%1$s</xliff:g> của mình trừ phi bạn tắt chức năng này trước"</string> <string name="zen_alarm_warning" msgid="245729928048586280">"Bạn sẽ không nghe thấy báo thức tiếp theo lúc <xliff:g id="WHEN">%1$s</xliff:g> của mình"</string> <string name="alarm_template" msgid="3346777418136233330">"lúc <xliff:g id="WHEN">%1$s</xliff:g>"</string> <string name="alarm_template_far" msgid="6382760514842998629">"vào <xliff:g id="WHEN">%1$s</xliff:g>"</string> diff --git a/packages/SettingsLib/res/values-zh-rCN/strings.xml b/packages/SettingsLib/res/values-zh-rCN/strings.xml index c1d548195871..87e2e0363a6a 100644 --- a/packages/SettingsLib/res/values-zh-rCN/strings.xml +++ b/packages/SettingsLib/res/values-zh-rCN/strings.xml @@ -81,7 +81,7 @@ <string name="speed_label_fast" msgid="2677719134596044051">"快"</string> <string name="speed_label_very_fast" msgid="8215718029533182439">"很快"</string> <string name="wifi_passpoint_expired" msgid="6540867261754427561">"已失效"</string> - <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> + <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g>/<xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string> <string name="bluetooth_disconnected" msgid="7739366554710388701">"已断开连接"</string> <string name="bluetooth_disconnecting" msgid="7638892134401574338">"正在断开连接..."</string> <string name="bluetooth_connecting" msgid="5871702668260192755">"正在连接..."</string> diff --git a/packages/SettingsLib/res/values-zh-rHK/strings.xml b/packages/SettingsLib/res/values-zh-rHK/strings.xml index d09a2811a504..20c39499a790 100644 --- a/packages/SettingsLib/res/values-zh-rHK/strings.xml +++ b/packages/SettingsLib/res/values-zh-rHK/strings.xml @@ -488,7 +488,7 @@ <string name="power_remaining_more_than_subtext" msgid="446388082266121894">"剩餘電量時間超過 <xliff:g id="TIME_REMAINING">%1$s</xliff:g> (<xliff:g id="LEVEL">%2$s</xliff:g>)"</string> <string name="power_remaining_only_more_than_subtext" msgid="4873750633368888062">"剩餘電量時間超過 <xliff:g id="TIME_REMAINING">%1$s</xliff:g>"</string> <string name="power_charging" msgid="6727132649743436802">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATE">%2$s</xliff:g>"</string> - <string name="power_remaining_charging_duration_only" msgid="8085099012811384899">"<xliff:g id="TIME">%1$s</xliff:g>後充滿電"</string> + <string name="power_remaining_charging_duration_only" msgid="8085099012811384899">"<xliff:g id="TIME">%1$s</xliff:g>後完成充電"</string> <string name="power_charging_duration" msgid="6127154952524919719">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g>後充滿電"</string> <string name="power_charging_limited" msgid="8202147604844938236">"<xliff:g id="LEVEL">%1$s</xliff:g> - 已優化充電"</string> <string name="power_charging_future_paused" msgid="1809543660923642799">"<xliff:g id="LEVEL">%1$s</xliff:g> ‑ 充電中"</string> diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml index 363045ec1d83..c440a07bde75 100644 --- a/packages/SettingsLib/res/values/strings.xml +++ b/packages/SettingsLib/res/values/strings.xml @@ -819,6 +819,11 @@ <!-- Summary of checkbox setting that enables the terminal app. [CHAR LIMIT=64] --> <string name="enable_terminal_summary">Enable terminal app that offers local shell access</string> + <!-- Title of checkbox setting that enables the Linux terminal app. [CHAR LIMIT=32] --> + <string name="enable_linux_terminal_title">Linux development environment</string> + <!-- Summary of checkbox setting that enables the Linux terminal app. [CHAR LIMIT=64] --> + <string name="enable_linux_terminal_summary">Run Linux terminal on Android</string> + <!-- HDCP checking title, used for debug purposes only. [CHAR LIMIT=25] --> <string name="hdcp_checking_title">HDCP checking</string> <!-- HDCP checking dialog title, used for debug purposes only. [CHAR LIMIT=25] --> diff --git a/packages/SettingsLib/src/com/android/settingslib/Utils.java b/packages/SettingsLib/src/com/android/settingslib/Utils.java index c2506d353d14..307e5875affb 100644 --- a/packages/SettingsLib/src/com/android/settingslib/Utils.java +++ b/packages/SettingsLib/src/com/android/settingslib/Utils.java @@ -30,9 +30,10 @@ import android.hardware.usb.flags.Flags; import android.icu.text.NumberFormat; import android.location.LocationManager; import android.media.AudioManager; +import android.net.ConnectivityManager; import android.net.NetworkCapabilities; import android.net.TetheringManager; -import android.net.vcn.VcnTransportInfo; +import android.net.vcn.VcnUtils; import android.net.wifi.WifiInfo; import android.os.BatteryManager; import android.os.Build; @@ -739,14 +740,9 @@ public class Utils { * @param networkCapabilities NetworkCapabilities of the network. */ @Nullable - public static WifiInfo tryGetWifiInfoForVcn(NetworkCapabilities networkCapabilities) { - if (networkCapabilities.getTransportInfo() == null - || !(networkCapabilities.getTransportInfo() instanceof VcnTransportInfo)) { - return null; - } - VcnTransportInfo vcnTransportInfo = - (VcnTransportInfo) networkCapabilities.getTransportInfo(); - return vcnTransportInfo.getWifiInfo(); + public static WifiInfo tryGetWifiInfoForVcn( + ConnectivityManager connectivityMgr, NetworkCapabilities networkCapabilities) { + return VcnUtils.getWifiInfoFromVcnCaps(connectivityMgr, networkCapabilities); } /** Whether there is any incompatible chargers in the current UsbPort? */ diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceManager.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceManager.java index cb6a93002ea7..8b6351e3c289 100644 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceManager.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceManager.java @@ -40,7 +40,7 @@ public class CachedBluetoothDeviceManager { private static final String TAG = "CachedBluetoothDeviceManager"; private static final boolean DEBUG = BluetoothUtils.D; - @VisibleForTesting static int sLateBondingTimeoutMillis = 5000; // 5s + @VisibleForTesting static int sLateBondingTimeoutMillis = 10000; // 10s private Context mContext; private final LocalBluetoothManager mBtManager; diff --git a/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlLoaderCompat.java b/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlLoaderCompat.java index 121f5492a5ab..36960002e220 100644 --- a/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlLoaderCompat.java +++ b/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlLoaderCompat.java @@ -41,6 +41,7 @@ public class LicenseHtmlLoaderCompat extends AsyncLoaderCompat<File> { "/system_ext/etc/NOTICE.xml.gz", "/vendor_dlkm/etc/NOTICE.xml.gz", "/odm_dlkm/etc/NOTICE.xml.gz", + "/system_dlkm/etc/NOTICE.xml.gz", }; static final String NOTICE_HTML_FILE_NAME = "NOTICE.html"; diff --git a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java index b7758de0e19c..4e1d8e38dfbd 100644 --- a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java +++ b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java @@ -671,7 +671,7 @@ public abstract class InfoMediaManager { // MediaRoute2Info.getType was made public on API 34, but exists since API 30. @SuppressWarnings("NewApi") @VisibleForTesting - void addMediaDevice(MediaRoute2Info route, RoutingSessionInfo activeSession) { + void addMediaDevice(@NonNull MediaRoute2Info route, @NonNull RoutingSessionInfo activeSession) { final int deviceType = route.getType(); MediaDevice mediaDevice = null; switch (deviceType) { @@ -711,8 +711,13 @@ public abstract class InfoMediaManager { case TYPE_HEARING_AID: case TYPE_BLUETOOTH_A2DP: case TYPE_BLE_HEADSET: + if (route.getAddress() == null) { + Log.e(TAG, "Ignoring bluetooth route with no set address: " + route); + break; + } final BluetoothDevice device = - BluetoothAdapter.getDefaultAdapter().getRemoteDevice(route.getAddress()); + BluetoothAdapter.getDefaultAdapter() + .getRemoteDevice(route.getAddress()); final CachedBluetoothDevice cachedDevice = mBluetoothManager.getCachedDeviceManager().findDevice(device); if (cachedDevice != null) { diff --git a/packages/SettingsLib/src/com/android/settingslib/media/OWNERS b/packages/SettingsLib/src/com/android/settingslib/media/OWNERS index 7467ee1c1a7c..d58add4bb5eb 100644 --- a/packages/SettingsLib/src/com/android/settingslib/media/OWNERS +++ b/packages/SettingsLib/src/com/android/settingslib/media/OWNERS @@ -2,7 +2,6 @@ ethibodeau@google.com michaelmikhil@google.com apotapov@google.com -shaoweishen@google.com #Android Media - For minor changes and renames only. aquilescanta@google.com #{LAST_RESORT_SUGGESTION} diff --git a/packages/SettingsLib/src/com/android/settingslib/users/TEST_MAPPING b/packages/SettingsLib/src/com/android/settingslib/users/TEST_MAPPING index 71cbcb54a1ff..1346ee565a5d 100644 --- a/packages/SettingsLib/src/com/android/settingslib/users/TEST_MAPPING +++ b/packages/SettingsLib/src/com/android/settingslib/users/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "SettingsLibTests", - "options": [ - { - "include-filter": "com.android.settingslib.users." - } - ] + "name": "SettingsLibTests_settingslib_users" } ] }
\ No newline at end of file diff --git a/packages/SettingsLib/src/com/android/settingslib/volume/data/repository/AudioRepository.kt b/packages/SettingsLib/src/com/android/settingslib/volume/data/repository/AudioRepository.kt index 20b949f4a30f..8e072e632f3d 100644 --- a/packages/SettingsLib/src/com/android/settingslib/volume/data/repository/AudioRepository.kt +++ b/packages/SettingsLib/src/com/android/settingslib/volume/data/repository/AudioRepository.kt @@ -20,6 +20,7 @@ import android.content.ContentResolver import android.database.ContentObserver import android.media.AudioDeviceInfo import android.media.AudioManager +import android.media.AudioManager.AudioDeviceCategory import android.media.AudioManager.OnCommunicationDeviceChangedListener import android.provider.Settings import androidx.concurrent.futures.DirectExecutor @@ -85,6 +86,10 @@ interface AudioRepository { suspend fun setMuted(audioStream: AudioStream, isMuted: Boolean): Boolean suspend fun setRingerMode(audioStream: AudioStream, mode: RingerMode) + + /** Gets audio device category. */ + @AudioDeviceCategory + suspend fun getBluetoothAudioDeviceCategory(bluetoothAddress: String): Int } class AudioRepositoryImpl( @@ -174,7 +179,7 @@ class AudioRepositoryImpl( minVolume = getMinVolume(audioStream), maxVolume = audioManager.getStreamMaxVolume(audioStream.value), volume = audioManager.getStreamVolume(audioStream.value), - isAffectedByMute = audioManager.isStreamAffectedByMute(audioStream.value), + isAffectedByMute = audioManager.isStreamMutableByUi(audioStream.value), isAffectedByRingerMode = audioManager.isStreamAffectedByRingerMode(audioStream.value), isMuted = audioManager.isStreamMute(audioStream.value), ) @@ -211,6 +216,13 @@ class AudioRepositoryImpl( withContext(backgroundCoroutineContext) { audioManager.ringerMode = mode.value } } + @AudioDeviceCategory + override suspend fun getBluetoothAudioDeviceCategory(bluetoothAddress: String): Int { + return withContext(backgroundCoroutineContext) { + audioManager.getBluetoothAudioDeviceCategory(bluetoothAddress) + } + } + private fun getMinVolume(stream: AudioStream): Int = try { audioManager.getStreamMinVolume(stream.value) diff --git a/packages/SettingsLib/src/com/android/settingslib/volume/domain/interactor/AudioVolumeInteractor.kt b/packages/SettingsLib/src/com/android/settingslib/volume/domain/interactor/AudioVolumeInteractor.kt index 202ff400782f..bdd582d5130b 100644 --- a/packages/SettingsLib/src/com/android/settingslib/volume/domain/interactor/AudioVolumeInteractor.kt +++ b/packages/SettingsLib/src/com/android/settingslib/volume/domain/interactor/AudioVolumeInteractor.kt @@ -61,6 +61,10 @@ class AudioVolumeInteractor( } suspend fun setMuted(audioStream: AudioStream, isMuted: Boolean) { + val streamModel = getAudioStream(audioStream).first() + if (!streamModel.isAffectedByMute) { + return + } if (audioStream.value == AudioManager.STREAM_RING) { val mode = if (isMuted) AudioManager.RINGER_MODE_VIBRATE else AudioManager.RINGER_MODE_NORMAL diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java index 015356e013b7..cea3d17f116d 100644 --- a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java +++ b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java @@ -30,6 +30,7 @@ import android.net.NetworkScoreManager; import android.net.ScoredNetwork; import android.net.TransportInfo; import android.net.vcn.VcnTransportInfo; +import android.net.vcn.VcnUtils; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.net.wifi.WifiNetworkScoreCache; @@ -394,10 +395,7 @@ public class WifiStatusTracker { TransportInfo transportInfo = networkCapabilities.getTransportInfo(); if (transportInfo instanceof VcnTransportInfo) { - // This VcnTransportInfo logic is copied from - // [com.android.settingslib.Utils.tryGetWifiInfoForVcn]. It's copied instead of - // re-used because it makes the logic here clearer. - return ((VcnTransportInfo) transportInfo).getWifiInfo(); + return VcnUtils.getWifiInfoFromVcnCaps(mConnectivityManager, networkCapabilities); } else if (transportInfo instanceof WifiInfo) { return (WifiInfo) transportInfo; } else { diff --git a/packages/SettingsLib/tests/integ/Android.bp b/packages/SettingsLib/tests/integ/Android.bp index 33d23a3ea16a..03dd7122660d 100644 --- a/packages/SettingsLib/tests/integ/Android.bp +++ b/packages/SettingsLib/tests/integ/Android.bp @@ -37,10 +37,10 @@ android_test { ], libs: [ - "android.test.runner", + "android.test.runner.stubs", "telephony-common", - "android.test.base", - "android.test.mock", + "android.test.base.stubs", + "android.test.mock.stubs", "truth", ], @@ -72,3 +72,10 @@ android_test { dxflags: ["--multi-dex"], manifest: "AndroidManifest.xml", } + +test_module_config { + name: "SettingsLibTests_settingslib_users", + base: "SettingsLibTests", + test_suites: ["device-tests"], + include_filters: ["com.android.settingslib.users."], +} diff --git a/packages/SettingsLib/tests/integ/src/com/android/settingslib/volume/data/repository/AudioRepositoryTest.kt b/packages/SettingsLib/tests/integ/src/com/android/settingslib/volume/data/repository/AudioRepositoryTest.kt index 683759db95f9..844dc12ee911 100644 --- a/packages/SettingsLib/tests/integ/src/com/android/settingslib/volume/data/repository/AudioRepositoryTest.kt +++ b/packages/SettingsLib/tests/integ/src/com/android/settingslib/volume/data/repository/AudioRepositoryTest.kt @@ -247,6 +247,19 @@ class AudioRepositoryTest { } } + @Test + fun getBluetoothAudioDeviceCategory() { + testScope.runTest { + `when`(audioManager.getBluetoothAudioDeviceCategory("12:34:56:78")).thenReturn( + AudioManager.AUDIO_DEVICE_CATEGORY_HEADPHONES) + + val category = underTest.getBluetoothAudioDeviceCategory("12:34:56:78") + runCurrent() + + assertThat(category).isEqualTo(AudioManager.AUDIO_DEVICE_CATEGORY_HEADPHONES) + } + } + private fun triggerConnectedDeviceChange(communicationDevice: AudioDeviceInfo?) { verify(audioManager) .addOnCommunicationDeviceChangedListener( diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/OWNERS b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/OWNERS new file mode 100644 index 000000000000..134a56ecb27e --- /dev/null +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/OWNERS @@ -0,0 +1 @@ +include /packages/SettingsLib/src/com/android/settingslib/bluetooth/OWNERS diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java index 529301138da3..d8b6707b9118 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/wifi/WifiUtilsTest.java @@ -207,20 +207,6 @@ public class WifiUtilsTest { } @Test - public void getHotspotIconResource_deviceTypeExists_shouldNotNull() { - assertThat(WifiUtils.getHotspotIconResource(NetworkProviderInfo.DEVICE_TYPE_PHONE)) - .isNotNull(); - assertThat(WifiUtils.getHotspotIconResource(NetworkProviderInfo.DEVICE_TYPE_TABLET)) - .isNotNull(); - assertThat(WifiUtils.getHotspotIconResource(NetworkProviderInfo.DEVICE_TYPE_LAPTOP)) - .isNotNull(); - assertThat(WifiUtils.getHotspotIconResource(NetworkProviderInfo.DEVICE_TYPE_WATCH)) - .isNotNull(); - assertThat(WifiUtils.getHotspotIconResource(NetworkProviderInfo.DEVICE_TYPE_AUTO)) - .isNotNull(); - } - - @Test public void testInternetIconInjector_getIcon_returnsCorrectValues() { WifiUtils.InternetIconInjector iconInjector = new WifiUtils.InternetIconInjector(mContext); diff --git a/packages/SettingsProvider/Android.bp b/packages/SettingsProvider/Android.bp index 75f8384321b0..58d6d07b735c 100644 --- a/packages/SettingsProvider/Android.bp +++ b/packages/SettingsProvider/Android.bp @@ -75,8 +75,8 @@ android_test { "Harrier", ], libs: [ - "android.test.base", - "android.test.mock", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "unsupportedappusage", ], resource_dirs: [], diff --git a/packages/SettingsProvider/TEST_MAPPING b/packages/SettingsProvider/TEST_MAPPING index 0eed2b7490d4..cf9ed2e6c1df 100644 --- a/packages/SettingsProvider/TEST_MAPPING +++ b/packages/SettingsProvider/TEST_MAPPING @@ -4,12 +4,7 @@ "name": "SettingsProviderTest" }, { - "name": "CtsProviderTestCases", - "options": [ - { - "include-filter": "android.provider.cts.settings." - } - ] + "name": "CtsProviderTestCases_cts_settings" } ], "postsubmit": [ diff --git a/packages/SettingsProvider/res/values-in/defaults.xml b/packages/SettingsProvider/res/values-in/defaults.xml index 221c37f92a1b..1434b59ec2ab 100644 --- a/packages/SettingsProvider/res/values-in/defaults.xml +++ b/packages/SettingsProvider/res/values-in/defaults.xml @@ -20,9 +20,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="def_device_name" msgid="6309317409634339402">"%1$s %2$s"</string> - <!-- String.format failed for translation --> - <!-- no translation found for def_device_name_simple (9037785625140748221) --> - <skip /> + <string name="def_device_name_simple" msgid="9037785625140748221">"%1$s"</string> <string name="def_nfc_payment_component" msgid="5861297439873026958"></string> <string name="def_backup_manager_constants" msgid="75273734665044867"></string> <string name="def_backup_local_transport_parameters" msgid="303005414813191641"></string> diff --git a/packages/SettingsProvider/res/values-ne/defaults.xml b/packages/SettingsProvider/res/values-ne/defaults.xml index 221c37f92a1b..1434b59ec2ab 100644 --- a/packages/SettingsProvider/res/values-ne/defaults.xml +++ b/packages/SettingsProvider/res/values-ne/defaults.xml @@ -20,9 +20,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="def_device_name" msgid="6309317409634339402">"%1$s %2$s"</string> - <!-- String.format failed for translation --> - <!-- no translation found for def_device_name_simple (9037785625140748221) --> - <skip /> + <string name="def_device_name_simple" msgid="9037785625140748221">"%1$s"</string> <string name="def_nfc_payment_component" msgid="5861297439873026958"></string> <string name="def_backup_manager_constants" msgid="75273734665044867"></string> <string name="def_backup_local_transport_parameters" msgid="303005414813191641"></string> diff --git a/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java b/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java index 9f2ab69acd31..8b446b2db5d6 100644 --- a/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java +++ b/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java @@ -134,6 +134,7 @@ public class SecureSettings { Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED, Settings.Secure.ACTIVE_UNLOCK_ON_WAKE, Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT, + Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY, Settings.Secure.ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL, Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ERRORS, Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ACQUIRE_INFO, diff --git a/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java b/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java index cb7ac457d991..2af1f4d136cf 100644 --- a/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java +++ b/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java @@ -195,6 +195,7 @@ public class SecureSettingsValidators { VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_WAKE, BOOLEAN_VALIDATOR); VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT, BOOLEAN_VALIDATOR); VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL, BOOLEAN_VALIDATOR); + VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY, BOOLEAN_VALIDATOR); VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_FACE_ERRORS, ANY_STRING_VALIDATOR); VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_FACE_ACQUIRE_INFO, ANY_STRING_VALIDATOR); VALIDATORS.put(Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_WHEN_BIOMETRIC_ENROLLED, diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java b/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java index e77cf2fa6543..2227943c0cc0 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java @@ -189,22 +189,13 @@ public final class DeviceConfigService extends Binder { public static HashMap<String, String> getAllFlags(IContentProvider provider) { HashMap<String, String> allFlags = new HashMap<String, String>(); - try { - Bundle args = new Bundle(); - args.putInt(Settings.CALL_METHOD_USER_KEY, - ActivityManager.getService().getCurrentUser().id); - Bundle b = provider.call(new AttributionSource(Process.myUid(), - resolveCallingPackage(), null), Settings.AUTHORITY, - Settings.CALL_METHOD_LIST_CONFIG, null, args); - if (b != null) { - Map<String, String> flagsToValues = - (HashMap) b.getSerializable(Settings.NameValueTable.VALUE); - allFlags.putAll(flagsToValues); + for (DeviceConfig.Properties properties : DeviceConfig.getAllProperties()) { + List<String> keys = new ArrayList<>(properties.getKeyset()); + for (String flagName : properties.getKeyset()) { + String fullName = properties.getNamespace() + "/" + flagName; + allFlags.put(fullName, properties.getString(flagName, null)); } - } catch (RemoteException e) { - throw new RuntimeException("Failed in IPC", e); } - return allFlags; } diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index d54236e60dd7..f4451de8c3c8 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -44,6 +44,7 @@ import static com.android.providers.settings.SettingsState.isSystemSettingsKey; import static com.android.providers.settings.SettingsState.makeKey; import android.Manifest; +import android.aconfigd.AconfigdFlagInfo; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager; @@ -1369,10 +1370,27 @@ public class SettingsProvider extends ContentProvider { } } + Map<String, AconfigdFlagInfo> aconfigFlagInfos = + settingsState.getAconfigDefaultFlags(); + for (int i = 0; i < nameCount; i++) { String name = names.get(i); Setting setting = settingsState.getSettingLocked(name); - if (prefix == null || setting.getName().startsWith(prefix)) { + if (prefix == null || name.startsWith(prefix)) { + if (Flags.ignoreXmlForReadOnlyFlags()) { + int slashIndex = name.indexOf("/"); + boolean validSlashIndex = slashIndex != -1 + && slashIndex != 0 + && slashIndex != name.length(); + if (validSlashIndex) { + String flagName = name.substring(slashIndex + 1); + AconfigdFlagInfo flagInfo = aconfigFlagInfos.get(flagName); + if (flagInfo != null && !flagInfo.getIsReadWrite()) { + continue; + } + } + } + flagsToValues.put(setting.getName(), setting.getValue()); } } @@ -1975,8 +1993,6 @@ public class SettingsProvider extends ContentProvider { if (!isValidMediaUri(name, value)) { return false; } - // Invalidate any relevant cache files - cacheFile.delete(); } final boolean success; @@ -2014,6 +2030,11 @@ public class SettingsProvider extends ContentProvider { return false; } + if (cacheFile != null) { + // Invalidate any relevant cache files + cacheFile.delete(); + } + if ((operation == MUTATION_OPERATION_INSERT || operation == MUTATION_OPERATION_UPDATE) && cacheFile != null && value != null) { final Uri ringtoneUri = Uri.parse(value); @@ -3244,6 +3265,24 @@ public class SettingsProvider extends ContentProvider { if (forceNotify || success) { notifyForSettingsChange(key, name); + + // If this is an aconfig flag, it will be written as a staged flag. + // Notify that its staged flag value will be updated. + if (Flags.notifyIndividualAconfigSyspropChanged() && type == SETTINGS_TYPE_CONFIG) { + int slashIndex = name.indexOf('/'); + boolean validSlashIndex = slashIndex != -1 + && slashIndex != 0 + && slashIndex != name.length(); + if (validSlashIndex) { + String namespace = name.substring(0, slashIndex); + String flagName = name.substring(slashIndex + 1); + if (settingsState.getAconfigDefaultFlags().containsKey(flagName)) { + String stagedName = "staged/" + namespace + "*" + flagName; + notifyForSettingsChange(key, stagedName); + } + } + } + if (wasUnsetNonPredefinedSetting) { // Increment the generation number for all non-predefined, unset settings, // because a new non-predefined setting has been inserted diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java index 05eb0449495f..fc7802c9f9da 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java @@ -586,7 +586,7 @@ final class SettingsState { flag.getPackageName(), flag.getFlagName(), flag.getServerFlagValue(), - false); + StorageRequestMessage.SERVER_ON_REBOOT); } if (flag.getHasLocalOverride()) { @@ -595,7 +595,7 @@ final class SettingsState { flag.getPackageName(), flag.getFlagName(), flag.getLocalFlagValue(), - true); + StorageRequestMessage.LOCAL_ON_REBOOT); } } @@ -765,6 +765,13 @@ final class SettingsState { } } + @NonNull + public Map<String, AconfigdFlagInfo> getAconfigDefaultFlags() { + synchronized (mLock) { + return mAconfigDefaultFlags; + } + } + // The settings provider must hold its lock when calling here. public Setting getSettingLocked(String name) { if (TextUtils.isEmpty(name)) { diff --git a/packages/SettingsProvider/src/com/android/providers/settings/device_config_service.aconfig b/packages/SettingsProvider/src/com/android/providers/settings/device_config_service.aconfig index d20fbf591a25..27335edcb3b3 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/device_config_service.aconfig +++ b/packages/SettingsProvider/src/com/android/providers/settings/device_config_service.aconfig @@ -28,6 +28,17 @@ flag { } flag { + name: "notify_individual_aconfig_sysprop_changed" + namespace: "core_experiments_team_internal" + description: "When enabled, propagate individual aconfig sys props on flag stage." + bug: "331963764" + is_fixed_read_only: true + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { name: "load_apex_aconfig_protobufs" namespace: "core_experiments_team_internal" description: "When enabled, loads aconfig default values in apex flag protobufs into DeviceConfig on boot." @@ -41,3 +52,14 @@ flag { description: "If this flag is detected as true on boot, writes a logfile to track storage migration correctness." bug: "328444881" } + +flag { + name: "ignore_xml_for_read_only_flags" + namespace: "core_experiments_team_internal" + description: "When enabled, ignore any flag in the SettingsProvider XML for RO flags." + bug: "345007098" + is_fixed_read_only: true + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml index 04d30ed6f001..18dd5c10384f 100644 --- a/packages/Shell/AndroidManifest.xml +++ b/packages/Shell/AndroidManifest.xml @@ -65,6 +65,7 @@ <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" /> <uses-permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS" /> <uses-permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE" /> + <uses-permission android:name="android.permission.READ_DROPBOX_DATA" /> <uses-permission android:name="android.permission.READ_LOGS" /> <uses-permission android:name="android.permission.BRIGHTNESS_SLIDER_USAGE" /> <uses-permission android:name="android.permission.ACCESS_AMBIENT_LIGHT_STATS" /> @@ -940,6 +941,9 @@ <!-- Permission required for CTS test - FileIntegrityManagerTest --> <uses-permission android:name="android.permission.SETUP_FSVERITY" /> + <!-- Permission required for CTS test - CtsNfcTestCases --> + <uses-permission android:name="android.permission.NFC_SET_CONTROLLER_ALWAYS_ON" /> + <application android:label="@string/app_label" android:theme="@android:style/Theme.DeviceDefault.DayNight" diff --git a/packages/Shell/TEST_MAPPING b/packages/Shell/TEST_MAPPING index 9bb1b4b99207..6b9f1ebd4061 100644 --- a/packages/Shell/TEST_MAPPING +++ b/packages/Shell/TEST_MAPPING @@ -1,23 +1,10 @@ { "presubmit": [ { - "name": "CtsBugreportTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsBugreportTestCases_android_server_os" }, { - "name": "ShellTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ShellTests_android_server_os" }, { "name": "CtsUiAutomationTestCases", diff --git a/packages/Shell/res/values-be/strings.xml b/packages/Shell/res/values-be/strings.xml index b3d8a44613d2..366db93685ad 100644 --- a/packages/Shell/res/values-be/strings.xml +++ b/packages/Shell/res/values-be/strings.xml @@ -22,7 +22,7 @@ <string name="bugreport_finished_title" msgid="4429132808670114081">"Справаздача <xliff:g id="ID">#%d</xliff:g> пра памылку зафіксавана"</string> <string name="bugreport_updating_title" msgid="4423539949559634214">"Дадаванне падрабязнасцей да справаздачы пра памылкі"</string> <string name="bugreport_updating_wait" msgid="3322151947853929470">"Калі ласка, пачакайце..."</string> - <string name="bugreport_finished_text" product="watch" msgid="1223616207145252689">"Паведамленне пра памылку хутка з\'явіцца на тэлефоне"</string> + <string name="bugreport_finished_text" product="watch" msgid="1223616207145252689">"Паведамленне пра памылку хутка з’явіцца на тэлефоне"</string> <string name="bugreport_finished_text" product="tv" msgid="5758325479058638893">"Выберыце, каб абагуліць справаздачу пра памылку"</string> <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Дакраніцеся, каб абагуліць сваю справаздачу пра памылку"</string> <string name="bugreport_finished_pending_screenshot_text" product="tv" msgid="2343263822812016950">"Выберыце, каб абагуліць справаздачу пра памылку без здымка экрана, або чакайце атрымання здымка"</string> diff --git a/packages/Shell/res/values-fa/strings.xml b/packages/Shell/res/values-fa/strings.xml index 46c847be1be7..f4a3a509be39 100644 --- a/packages/Shell/res/values-fa/strings.xml +++ b/packages/Shell/res/values-fa/strings.xml @@ -24,10 +24,10 @@ <string name="bugreport_updating_wait" msgid="3322151947853929470">"لطفاً منتظر بمانید..."</string> <string name="bugreport_finished_text" product="watch" msgid="1223616207145252689">"گزارش مشکل بهزودی در تلفن نشان داده میشود"</string> <string name="bugreport_finished_text" product="tv" msgid="5758325479058638893">"برای همرسانی گزارش اشکالتان، انتخاب کنید"</string> - <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"برای همرسانی گزارش اشکال، ضربه بزنید"</string> + <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"برای همرسانی گزارش اشکال، تکضرب بزنید"</string> <string name="bugreport_finished_pending_screenshot_text" product="tv" msgid="2343263822812016950">"انتخاب کنید تا گزارش اشکالتان بدون نماگرفت به اشتراک گذاشته شود یا منتظر بمانید گرفتن عکس از صفحهنمایش تمام شود"</string> - <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"برای همرسانی گزارش مشکل بدون نماگرفت، ضربه بزنید یا صبر کنید تا نماگرفت گرفته شود."</string> - <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"برای همرسانی گزارش مشکل بدون نماگرفت، ضربه بزنید یا صبر کنید تا نماگرفت گرفته شود."</string> + <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"برای همرسانی گزارش مشکل بدون نماگرفت، تکضرب بزنید یا صبر کنید تا نماگرفت گرفته شود."</string> + <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"برای همرسانی گزارش مشکل بدون نماگرفت، تکضرب بزنید یا صبر کنید تا نماگرفت گرفته شود."</string> <string name="bugreport_confirm" msgid="5917407234515812495">"گزارشهای اشکال حاوی دادههایی از فایلهای مختلف گزارش سیستم هستند، که ممکن است حاوی دادههای حساس شما (از قبیل دادههای استفاده از برنامه و مکان) باشند. گزارشهای اشکال را فقط با افراد و برنامههایی که به آنها اعتماد دارید بهاشتراک بگذارید."</string> <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"دوباره نشان داده نشود"</string> <string name="bugreport_storage_title" msgid="5332488144740527109">"گزارش اشکال"</string> diff --git a/packages/Shell/res/values-fr-rCA/strings.xml b/packages/Shell/res/values-fr-rCA/strings.xml index 54ae9542c032..760905049c88 100644 --- a/packages/Shell/res/values-fr-rCA/strings.xml +++ b/packages/Shell/res/values-fr-rCA/strings.xml @@ -28,7 +28,7 @@ <string name="bugreport_finished_pending_screenshot_text" product="tv" msgid="2343263822812016950">"Sélectionnez pour partager le rapport de bogue sans saisie d\'écran ou attendez que la saisie soit prête"</string> <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Touchez pour partager le rapport de bogue sans saisie d\'écran ou attendez que la saisie soit prête"</string> <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Touchez pour partager le rapport de bogue sans saisie d\'écran ou attendez que la saisie soit prête"</string> - <string name="bugreport_confirm" msgid="5917407234515812495">"Les rapports de bogue contiennent des données des fichiers journaux du système, y compris des données que vous considérez comme sensibles (comme des renseignements sur l\'utilisation des applications et des données de localisation). Ne partagez les rapports de bogue qu\'avec les applications et les personnes en qui vous avez confiance."</string> + <string name="bugreport_confirm" msgid="5917407234515812495">"Les rapports de bogue contiennent des données des fichiers journaux du système, y compris des données que vous considérez comme sensibles (comme des renseignements sur l\'utilisation des applis et des données de localisation). Ne partagez les rapports de bogue qu\'avec les applis et les personnes en qui vous avez confiance."</string> <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne plus afficher"</string> <string name="bugreport_storage_title" msgid="5332488144740527109">"Rapports de bogues"</string> <string name="bugreport_unreadable_text" msgid="586517851044535486">"Impossible de lire le fichier du rapport de bogue"</string> diff --git a/packages/Shell/res/values-nb/strings.xml b/packages/Shell/res/values-nb/strings.xml index ce3938581b7f..db83f295ed87 100644 --- a/packages/Shell/res/values-nb/strings.xml +++ b/packages/Shell/res/values-nb/strings.xml @@ -25,9 +25,9 @@ <string name="bugreport_finished_text" product="watch" msgid="1223616207145252689">"Feilrapporten vises snart på telefonen"</string> <string name="bugreport_finished_text" product="tv" msgid="5758325479058638893">"Velg for å dele feilrapporten"</string> <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Trykk for å dele feilrapporten"</string> - <string name="bugreport_finished_pending_screenshot_text" product="tv" msgid="2343263822812016950">"Velg for å dele feilrapporten uten noen skjermdump, eller vent til skjermdumpen er klar"</string> - <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermdump, eller vent til skjermdumpen er klar"</string> - <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermdump, eller vent til skjermdumpen er klar"</string> + <string name="bugreport_finished_pending_screenshot_text" product="tv" msgid="2343263822812016950">"Velg for å dele feilrapporten uten noen skjermbilde, eller vent til skjermbildet er klar"</string> + <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermbilde, eller vent til skjermbildet er klar"</string> + <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermbilde, eller vent til skjermbildet er klar"</string> <string name="bugreport_confirm" msgid="5917407234515812495">"Feilrapporter inneholder data fra systemets forskjellige loggfiler. Dette kan inkludere data du ser på som sensitiv (for eksempel appbruk og posisjonsdata). Du bør bare dele feilrapporter med folk og apper du stoler på."</string> <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ikke vis igjen"</string> <string name="bugreport_storage_title" msgid="5332488144740527109">"Feilrapporter"</string> @@ -35,7 +35,7 @@ <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Kunne ikke legge til informasjon fra feilrapporten i ZIP-filen"</string> <string name="bugreport_unnamed" msgid="2800582406842092709">"uten navn"</string> <string name="bugreport_info_action" msgid="2158204228510576227">"Detaljer"</string> - <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skjermdump"</string> + <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skjermbilde"</string> <string name="bugreport_screenshot_taken" msgid="5684211273096253120">"Skjermdumpen er tatt."</string> <string name="bugreport_screenshot_failed" msgid="5853049140806834601">"Skjermdumpen kunne ikke tas."</string> <string name="bugreport_info_dialog_title" msgid="1355948594292983332">"Detaljer om feilrapport <xliff:g id="ID">#%d</xliff:g>"</string> diff --git a/packages/Shell/tests/Android.bp b/packages/Shell/tests/Android.bp index 0dc331478997..082a58942059 100644 --- a/packages/Shell/tests/Android.bp +++ b/packages/Shell/tests/Android.bp @@ -11,9 +11,9 @@ android_test { name: "ShellTests", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], static_libs: [ "androidx.test.rules", @@ -26,3 +26,10 @@ android_test { instrumentation_for: "Shell", certificate: "platform", } + +test_module_config { + name: "ShellTests_android_server_os", + base: "ShellTests", + test_suites: ["device-tests"], + exclude_annotations: ["androidx.test.filters.LargeTest"], +} diff --git a/packages/SimAppDialog/res/values-fr-rCA/strings.xml b/packages/SimAppDialog/res/values-fr-rCA/strings.xml index b6075855a3bb..0ce7a2a5db1c 100644 --- a/packages/SimAppDialog/res/values-fr-rCA/strings.xml +++ b/packages/SimAppDialog/res/values-fr-rCA/strings.xml @@ -17,10 +17,10 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="app_name" msgid="8898068901680117589">"Boîte de dialogue de l\'application SIM"</string> + <string name="app_name" msgid="8898068901680117589">"Boîte de dialogue de l\'appli SIM"</string> <string name="install_carrier_app_title" msgid="334729104862562585">"Activer le service cellulaire"</string> - <string name="install_carrier_app_description" msgid="4014303558674923797">"Pour que le nouveau module SIM fonctionne correctement, vous devez installer l\'application <xliff:g id="ID_1">%1$s</xliff:g>"</string> + <string name="install_carrier_app_description" msgid="4014303558674923797">"Pour que le nouveau module SIM fonctionne correctement, vous devez installer l\'appli <xliff:g id="ID_1">%1$s</xliff:g>"</string> <string name="install_carrier_app_description_default" msgid="7356830245205847840">"Pour que le nouveau module SIM fonctionne, vous devez installer l\'appli du fournisseur de services"</string> <string name="install_carrier_app_defer_action" msgid="2558576736886876209">"Pas maintenant"</string> - <string name="install_carrier_app_download_action" msgid="7859229305958538064">"Télécharger l\'application"</string> + <string name="install_carrier_app_download_action" msgid="7859229305958538064">"Télécharger l\'appli"</string> </resources> diff --git a/packages/SoundPicker/src/com/android/soundpicker/RingtonePickerActivity.java b/packages/SoundPicker/src/com/android/soundpicker/RingtonePickerActivity.java index 0dd9275503a9..8c3cce4087c1 100644 --- a/packages/SoundPicker/src/com/android/soundpicker/RingtonePickerActivity.java +++ b/packages/SoundPicker/src/com/android/soundpicker/RingtonePickerActivity.java @@ -255,8 +255,8 @@ public final class RingtonePickerActivity extends AlertActivity implements p.mTitle = getString(com.android.internal.R.string.ringtone_picker_title); } } else { - // Make sure intents don't inject HTML elements. - p.mTitle = Html.escapeHtml(p.mTitle.toString()); + // Make sure intents don't inject spannable elements. + p.mTitle = p.mTitle.toString(); } setupAlert(); diff --git a/packages/SystemUI/Android.bp b/packages/SystemUI/Android.bp index fde7c2caca06..387dae550884 100644 --- a/packages/SystemUI/Android.bp +++ b/packages/SystemUI/Android.bp @@ -725,9 +725,9 @@ android_library { "androidx.test.rules", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "keepanno-annotations", ], kotlincflags: ["-Xjvm-default=all"], @@ -784,6 +784,7 @@ android_app { resource_dirs: [], kotlincflags: ["-Xjvm-default=all"], optimize: { + optimize: false, shrink_resources: false, optimized_shrink_resources: false, proguard_flags_files: ["proguard.flags"], @@ -820,9 +821,9 @@ android_robolectric_test { "RoboTestLibraries", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "truth", ], @@ -856,9 +857,9 @@ android_robolectric_test { "RoboTestLibraries", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "truth", ], @@ -892,9 +893,9 @@ android_ravenwood_test { "mockito-kotlin-nodeps", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], auto_gen_config: true, plugins: [ diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml index b37db16f5786..666d939257dc 100644 --- a/packages/SystemUI/AndroidManifest.xml +++ b/packages/SystemUI/AndroidManifest.xml @@ -280,6 +280,9 @@ <!-- to adjust volume in volume panel --> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> + <!-- to get bluetooth audio device category --> + <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED" /> + <!-- to access ResolverRankerServices --> <uses-permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE" /> diff --git a/packages/SystemUI/TEST_MAPPING b/packages/SystemUI/TEST_MAPPING index 16dd4e5a800e..07a1e630e1ad 100644 --- a/packages/SystemUI/TEST_MAPPING +++ b/packages/SystemUI/TEST_MAPPING @@ -21,15 +21,7 @@ // v2/android-virtual-infra/test_mapping/presubmit-avd "presubmit": [ { - "name": "SystemUIGoogleTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "SystemUIGoogleTests" }, { // Permission indicators @@ -48,15 +40,7 @@ }, { // Permission indicators - "name": "CtsVoiceRecognitionTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVoiceRecognitionTestCases" } ], diff --git a/packages/SystemUI/TEST_OWNERS b/packages/SystemUI/TEST_OWNERS new file mode 100644 index 000000000000..eadc86e386cb --- /dev/null +++ b/packages/SystemUI/TEST_OWNERS @@ -0,0 +1,5 @@ +# Test maintainers for system UI +# usernames listed here are able to approve changes to sysui unit tests, +# for restructuring and test maintenance only + +saff@google.com diff --git a/packages/SystemUI/accessibility/accessibilitymenu/TEST_MAPPING b/packages/SystemUI/accessibility/accessibilitymenu/TEST_MAPPING index 4a10108b3e04..1820f39bb180 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/TEST_MAPPING +++ b/packages/SystemUI/accessibility/accessibilitymenu/TEST_MAPPING @@ -2,12 +2,7 @@ // TODO: b/324945360 - Re-enable on presubmit after fixing failures "postsubmit": [ { - "name": "AccessibilityMenuServiceTests", - "options": [ - { - "exclude-annotation": "android.support.test.filters.FlakyTest" - } - ] + "name": "AccessibilityMenuServiceTests" } ] }
\ No newline at end of file diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-bn/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-bn/strings.xml index 9a0ebef6c639..00cc44217aed 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-bn/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-bn/strings.xml @@ -23,7 +23,7 @@ <string name="accessibility_menu_description" msgid="4458354794093858297">"আপনার ডিভাইস নিয়ন্ত্রণ করতে, \'অ্যাক্সেসিবিলিটি মেনু\' একটি বড় অন-স্ক্রিন মেনু দেখায়। আপনি ফোন লক, ভলিউম ও উজ্জ্বলতা নিয়ন্ত্রণ, স্ক্রিনশট নেওয়া এবং আরও অনেক কিছু করতে পারবেন।"</string> <string name="accessibility_menu_summary" msgid="340071398148208130">"বড় করে দেখানো মেনুর মাধ্যমে ডিভাইস নিয়ন্ত্রণ করুন"</string> <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"অ্যাক্সেসিবিলিটি মেনুর সেটিংস"</string> - <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"বোতাম বড় করা"</string> + <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"বড় বোতাম"</string> <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"অ্যাক্সেসিবিলিটি মেনু বোতামের সাইজ বাড়ান"</string> <string name="pref_help_title" msgid="6871558837025010641">"সহায়তা"</string> <string name="brightness_percentage_label" msgid="7391554573977867369">"উজ্জ্বলতা <xliff:g id="PERCENTAGE">%1$s</xliff:g> %%"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-fr-rCA/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-fr-rCA/strings.xml index 87a95037178e..851c2c925f47 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-fr-rCA/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-fr-rCA/strings.xml @@ -21,7 +21,7 @@ <string name="previous_button_content_description" msgid="840869171117765966">"Aller à l\'écran précédent"</string> <string name="next_button_content_description" msgid="6810058269847364406">"Aller à l\'écran suivant"</string> <string name="accessibility_menu_description" msgid="4458354794093858297">"Le menu Accessibilité propose un grand espace à l\'écran à l\'aide duquel vous pouvez contrôler votre appareil. Utilisez-le pour verrouiller votre appareil, régler le volume et la luminosité, prendre des captures d\'écran et plus."</string> - <string name="accessibility_menu_summary" msgid="340071398148208130">"contrôler l\'appareil à l\'aide d\'un menu de grande taille"</string> + <string name="accessibility_menu_summary" msgid="340071398148208130">"Contrôler l\'appareil à l\'aide d\'un menu de grande taille"</string> <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Paramètres du menu Accessibilité"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"Boutons de grande taille"</string> <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Augmenter la taille des boutons du menu Accessibilité"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-hi/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-hi/strings.xml index 3d59c0b62ac4..c9e8858b38a8 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-hi/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-hi/strings.xml @@ -22,7 +22,7 @@ <string name="next_button_content_description" msgid="6810058269847364406">"अगली स्क्रीन पर जाएं"</string> <string name="accessibility_menu_description" msgid="4458354794093858297">"सुलभता मेन्यू, डिवाइस की स्क्रीन पर दिखने वाला एक बड़ा मेन्यू होता है. इस मेन्यू में जाकर, डिवाइस को लॉक करने, स्क्रीनशॉट लेने, स्क्रीन की रोशनी और आवाज़ को कंट्रोल करने जैसे कई काम किए जा सकते हैं."</string> <string name="accessibility_menu_summary" msgid="340071398148208130">"बड़े मेन्यू की मदद से डिवाइस को कंट्रोल करें"</string> - <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"सुलभता मेन्यू सेटिंग"</string> + <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"सुलभता मेन्यू की सेटिंग"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"बड़े बटन"</string> <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"सुलभता मेन्यू के बटनाें का साइज़ बढ़ाएं"</string> <string name="pref_help_title" msgid="6871558837025010641">"सहायता"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-hr/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-hr/strings.xml index 36fcfdcd9eb3..c5388a8d6c74 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-hr/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-hr/strings.xml @@ -22,9 +22,9 @@ <string name="next_button_content_description" msgid="6810058269847364406">"Idi na sljedeći zaslon"</string> <string name="accessibility_menu_description" msgid="4458354794093858297">"Izbornik pristupačnosti veliki je zaslonski izbornik koji vam omogućuje upravljanje uređajem. Putem njega možete zaključati uređaj, upravljati glasnoćom i svjetlinom, izrađivati snimke zaslona i drugo."</string> <string name="accessibility_menu_summary" msgid="340071398148208130">"Upravljajte uređajem pomoću velikog izbornika"</string> - <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Postavke izbornika pristupačnosti"</string> + <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Postavke izbornika za pristupačnost"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"Veliki gumbi"</string> - <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Povećanje veličine gumba izbornika Pristupačnosti"</string> + <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Povećaj veličinu gumba izbornika za pristupačnost"</string> <string name="pref_help_title" msgid="6871558837025010641">"Pomoć"</string> <string name="brightness_percentage_label" msgid="7391554573977867369">"Svjetlina <xliff:g id="PERCENTAGE">%1$s</xliff:g> %%"</string> <string name="music_volume_percentage_label" msgid="398635599662604706">"Glasnoća glazbe <xliff:g id="PERCENTAGE">%1$s</xliff:g> %%"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-iw/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-iw/strings.xml index 7072b34a9180..3f8671c83ccc 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-iw/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-iw/strings.xml @@ -8,7 +8,7 @@ <string name="a11y_settings_label" msgid="3977714687248445050">"הגדרות נגישות"</string> <string name="power_label" msgid="7699720321491287839">"הפעלה"</string> <string name="power_utterance" msgid="7444296686402104807">"אפשרויות הפעלה"</string> - <string name="recent_apps_label" msgid="6583276995616385847">"אפליקציות אחרונות"</string> + <string name="recent_apps_label" msgid="6583276995616385847">"אפליקציות שהיו בשימוש לאחרונה"</string> <string name="lockscreen_label" msgid="648347953557887087">"מסך נעילה"</string> <string name="quick_settings_label" msgid="2999117381487601865">"הגדרות מהירות"</string> <string name="notifications_label" msgid="6829741046963013567">"התראות"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-nb/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-nb/strings.xml index a3e7ab0becd9..e95d0edbf320 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-nb/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-nb/strings.xml @@ -2,7 +2,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="accessibility_menu_service_name" msgid="730136711554740131">"Tilgjengelighetsmeny"</string> - <string name="accessibility_menu_intro" msgid="3164193281544042394">"Med tilgjengelighetsmenyen får du en stor meny på skjermen for å kontrollere enheten. Du kan låse enheten, kontrollere volum og lysstyrke, ta skjermdumper med mer."</string> + <string name="accessibility_menu_intro" msgid="3164193281544042394">"Med tilgjengelighetsmenyen får du en stor meny på skjermen for å kontrollere enheten. Du kan låse enheten, kontrollere volum og lysstyrke, ta skjermbilder med mer."</string> <string name="assistant_label" msgid="6796392082252272356">"Assistent"</string> <string name="assistant_utterance" msgid="65509599221141377">"Assistent"</string> <string name="a11y_settings_label" msgid="3977714687248445050">"Tilgjengelighetsinnstillinger"</string> @@ -12,15 +12,15 @@ <string name="lockscreen_label" msgid="648347953557887087">"Låseskjerm"</string> <string name="quick_settings_label" msgid="2999117381487601865">"Hurtiginnstillinger"</string> <string name="notifications_label" msgid="6829741046963013567">"Varsler"</string> - <string name="screenshot_label" msgid="863978141223970162">"Skjermdump"</string> - <string name="screenshot_utterance" msgid="1430760563401895074">"Ta skjermdump"</string> + <string name="screenshot_label" msgid="863978141223970162">"Skjermbilde"</string> + <string name="screenshot_utterance" msgid="1430760563401895074">"Ta skjermbilde"</string> <string name="volume_up_label" msgid="8592766918780362870">"Volum opp"</string> <string name="volume_down_label" msgid="8574981863656447346">"Volum ned"</string> <string name="brightness_up_label" msgid="8010753822854544846">"Lysstyrke opp"</string> <string name="brightness_down_label" msgid="7115662941913272072">"Lysstyrke ned"</string> <string name="previous_button_content_description" msgid="840869171117765966">"Gå til forrige skjerm"</string> <string name="next_button_content_description" msgid="6810058269847364406">"Gå til neste skjerm"</string> - <string name="accessibility_menu_description" msgid="4458354794093858297">"Med tilgjengelighetsmenyen får du en stor meny på skjermen for å kontrollere enheten. Du kan låse enheten, kontrollere volum og lysstyrke, ta skjermdumper med mer."</string> + <string name="accessibility_menu_description" msgid="4458354794093858297">"Med tilgjengelighetsmenyen får du en stor meny på skjermen for å kontrollere enheten. Du kan låse enheten, kontrollere volum og lysstyrke, ta skjermbilder med mer."</string> <string name="accessibility_menu_summary" msgid="340071398148208130">"Kontroller enheten med en stor meny"</string> <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Innstillinger for Tilgjengelighetsmeny"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"Store knapper"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-nl/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-nl/strings.xml index 7535c2b0f538..1e28bff6ca7e 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-nl/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-nl/strings.xml @@ -24,7 +24,7 @@ <string name="accessibility_menu_summary" msgid="340071398148208130">"Bedien het apparaat via een groot menu"</string> <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Instellingen toegankelijkheidsmenu"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"Grote knoppen"</string> - <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Vergroot knoppen in het toegankelijkheidsmenu"</string> + <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Maak knoppen in toegankelijkheidsmenu groter"</string> <string name="pref_help_title" msgid="6871558837025010641">"Hulp"</string> <string name="brightness_percentage_label" msgid="7391554573977867369">"Helderheid <xliff:g id="PERCENTAGE">%1$s</xliff:g>%%"</string> <string name="music_volume_percentage_label" msgid="398635599662604706">"Muziekvolume <xliff:g id="PERCENTAGE">%1$s</xliff:g>%%"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-pt-rPT/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-pt-rPT/strings.xml index ff8b6328324b..0cc2f58e13b5 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-pt-rPT/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-pt-rPT/strings.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="accessibility_menu_service_name" msgid="730136711554740131">"menu Acessibilidade"</string> + <string name="accessibility_menu_service_name" msgid="730136711554740131">"Menu Acessibilidade"</string> <string name="accessibility_menu_intro" msgid="3164193281544042394">"O menu Acessibilidade disponibiliza um menu grande no ecrã para controlar o dispositivo. Pode bloquear o dispositivo, controlar o volume e o brilho, fazer capturas de ecrã e muito mais."</string> <string name="assistant_label" msgid="6796392082252272356">"Assistente"</string> <string name="assistant_utterance" msgid="65509599221141377">"Assistente"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/res/values-sk/strings.xml b/packages/SystemUI/accessibility/accessibilitymenu/res/values-sk/strings.xml index 62f63a8739d4..3c92f83b19aa 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/res/values-sk/strings.xml +++ b/packages/SystemUI/accessibility/accessibilitymenu/res/values-sk/strings.xml @@ -22,9 +22,9 @@ <string name="next_button_content_description" msgid="6810058269847364406">"Prejsť na ďalšiu obrazovku"</string> <string name="accessibility_menu_description" msgid="4458354794093858297">"Ponuka dostupnosti spustí na obrazovke telefónu veľkú ponuku, pomocou ktorej môžete ovládať svoje zariadenie. Môžete ho uzamknúť, ovládať hlasitosť a jas, vytvárať snímky obrazovky a mnoho ďalšieho."</string> <string name="accessibility_menu_summary" msgid="340071398148208130">"Ovládanie zariadenia pomocou veľkej ponuky"</string> - <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Nastavenia ponuky dostupnosti"</string> + <string name="accessibility_menu_settings_name" msgid="1716888058785672611">"Nastavenia ponuky Dostupnosť"</string> <string name="accessibility_menu_large_buttons_title" msgid="8978499601044961736">"Veľké tlačidlá"</string> - <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Zväčšiť tlačidlá ponuky dostupnosti"</string> + <string name="accessibility_menu_large_buttons_summary" msgid="236873938502785311">"Zväčšiť tlačidlá ponuky Dostupnosť"</string> <string name="pref_help_title" msgid="6871558837025010641">"Pomocník"</string> <string name="brightness_percentage_label" msgid="7391554573977867369">"Jas: <xliff:g id="PERCENTAGE">%1$s</xliff:g> %%"</string> <string name="music_volume_percentage_label" msgid="398635599662604706">"Hlasitosť hudby: <xliff:g id="PERCENTAGE">%1$s</xliff:g> %%"</string> diff --git a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/model/A11yMenuShortcut.java b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/model/A11yMenuShortcut.java index 66a2fae0c4c3..c698d18bfde8 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/model/A11yMenuShortcut.java +++ b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/model/A11yMenuShortcut.java @@ -19,7 +19,6 @@ import android.util.Log; import com.android.systemui.accessibility.accessibilitymenu.R; -import java.util.HashMap; import java.util.Map; /** @@ -52,80 +51,80 @@ public class A11yMenuShortcut { private static final int LABEL_TEXT_INDEX = 3; /** Map stores all shortcut resource IDs that is in matching order of defined shortcut. */ - private static final Map<ShortcutId, int[]> sShortcutResource = new HashMap<>() {{ - put(ShortcutId.ID_ASSISTANT_VALUE, new int[] { + private static final Map<ShortcutId, int[]> sShortcutResource = Map.ofEntries( + Map.entry(ShortcutId.ID_ASSISTANT_VALUE, new int[] { R.drawable.ic_logo_a11y_assistant_24dp, R.color.assistant_color, R.string.assistant_utterance, R.string.assistant_label, - }); - put(ShortcutId.ID_A11YSETTING_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_A11YSETTING_VALUE, new int[] { R.drawable.ic_logo_a11y_settings_24dp, R.color.a11y_settings_color, R.string.a11y_settings_label, R.string.a11y_settings_label, - }); - put(ShortcutId.ID_POWER_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_POWER_VALUE, new int[] { R.drawable.ic_logo_a11y_power_24dp, R.color.power_color, R.string.power_utterance, R.string.power_label, - }); - put(ShortcutId.ID_RECENT_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_RECENT_VALUE, new int[] { R.drawable.ic_logo_a11y_recent_apps_24dp, R.color.recent_apps_color, R.string.recent_apps_label, R.string.recent_apps_label, - }); - put(ShortcutId.ID_LOCKSCREEN_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_LOCKSCREEN_VALUE, new int[] { R.drawable.ic_logo_a11y_lock_24dp, R.color.lockscreen_color, R.string.lockscreen_label, R.string.lockscreen_label, - }); - put(ShortcutId.ID_QUICKSETTING_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_QUICKSETTING_VALUE, new int[] { R.drawable.ic_logo_a11y_quick_settings_24dp, R.color.quick_settings_color, R.string.quick_settings_label, R.string.quick_settings_label, - }); - put(ShortcutId.ID_NOTIFICATION_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_NOTIFICATION_VALUE, new int[] { R.drawable.ic_logo_a11y_notifications_24dp, R.color.notifications_color, R.string.notifications_label, R.string.notifications_label, - }); - put(ShortcutId.ID_SCREENSHOT_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_SCREENSHOT_VALUE, new int[] { R.drawable.ic_logo_a11y_screenshot_24dp, R.color.screenshot_color, R.string.screenshot_utterance, R.string.screenshot_label, - }); - put(ShortcutId.ID_BRIGHTNESS_UP_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_BRIGHTNESS_UP_VALUE, new int[] { R.drawable.ic_logo_a11y_brightness_up_24dp, R.color.brightness_color, R.string.brightness_up_label, R.string.brightness_up_label, - }); - put(ShortcutId.ID_BRIGHTNESS_DOWN_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_BRIGHTNESS_DOWN_VALUE, new int[] { R.drawable.ic_logo_a11y_brightness_down_24dp, R.color.brightness_color, R.string.brightness_down_label, R.string.brightness_down_label, - }); - put(ShortcutId.ID_VOLUME_UP_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_VOLUME_UP_VALUE, new int[] { R.drawable.ic_logo_a11y_volume_up_24dp, R.color.volume_color, R.string.volume_up_label, R.string.volume_up_label, - }); - put(ShortcutId.ID_VOLUME_DOWN_VALUE, new int[] { + }), + Map.entry(ShortcutId.ID_VOLUME_DOWN_VALUE, new int[] { R.drawable.ic_logo_a11y_volume_down_24dp, R.color.volume_color, R.string.volume_down_label, R.string.volume_down_label, - }); - }}; + }) + ); /** Shortcut id used to identify. */ private int mShortcutId = ShortcutId.UNSPECIFIED_ID_VALUE.ordinal(); diff --git a/packages/SystemUI/accessibility/accessibilitymenu/tests/Android.bp b/packages/SystemUI/accessibility/accessibilitymenu/tests/Android.bp index 395354ef8f20..2ef6bbb34987 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/tests/Android.bp +++ b/packages/SystemUI/accessibility/accessibilitymenu/tests/Android.bp @@ -24,8 +24,8 @@ android_test { use_resource_processor: true, certificate: "platform", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/packages/SystemUI/aconfig/systemui.aconfig b/packages/SystemUI/aconfig/systemui.aconfig index 1cbf67ee0d0e..bfc36b84991a 100644 --- a/packages/SystemUI/aconfig/systemui.aconfig +++ b/packages/SystemUI/aconfig/systemui.aconfig @@ -1105,3 +1105,13 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + name: "translucent_occluding_activity_fix" + namespace: "systemui" + description: "Fixes occlusion animation for transluent activities" + bug: "303010980" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/packages/SystemUI/animation/lib/OWNERS b/packages/SystemUI/animation/lib/OWNERS new file mode 100644 index 000000000000..7569419bf4a4 --- /dev/null +++ b/packages/SystemUI/animation/lib/OWNERS @@ -0,0 +1,3 @@ +#inherits OWNERS from SystemUI in addition to WEAR framework owners below +file:platform/frameworks/base:/WEAR_OWNERS + diff --git a/packages/SystemUI/animation/src/com/android/systemui/animation/ActivityTransitionAnimator.kt b/packages/SystemUI/animation/src/com/android/systemui/animation/ActivityTransitionAnimator.kt index b6e4e9b13a1c..c14ee6208176 100644 --- a/packages/SystemUI/animation/src/com/android/systemui/animation/ActivityTransitionAnimator.kt +++ b/packages/SystemUI/animation/src/com/android/systemui/animation/ActivityTransitionAnimator.kt @@ -22,6 +22,7 @@ import android.app.PendingIntent import android.app.TaskInfo import android.app.WindowConfiguration import android.content.ComponentName +import android.graphics.Color import android.graphics.Matrix import android.graphics.Rect import android.graphics.RectF @@ -53,6 +54,7 @@ import com.android.app.animation.Interpolators import com.android.internal.annotations.VisibleForTesting import com.android.internal.policy.ScreenDecorationsUtils import com.android.systemui.Flags.activityTransitionUseLargestWindow +import com.android.systemui.Flags.translucentOccludingActivityFix import com.android.systemui.shared.Flags.returnAnimationFrameworkLibrary import com.android.wm.shell.shared.IShellTransitions import com.android.wm.shell.shared.ShellTransitions @@ -991,7 +993,12 @@ constructor( controller.createAnimatorState() } val windowBackgroundColor = - window.taskInfo?.let { callback.getBackgroundColor(it) } ?: window.backgroundColor + if (translucentOccludingActivityFix() && window.isTranslucent) { + Color.TRANSPARENT + } else { + window.taskInfo?.let { callback.getBackgroundColor(it) } + ?: window.backgroundColor + } // TODO(b/184121838): We should somehow get the top and bottom radius of the window // instead of recomputing isExpandingFullyAbove here. diff --git a/packages/SystemUI/checks/Android.bp b/packages/SystemUI/checks/Android.bp index 04ac748d0c78..1ec22018c8c9 100644 --- a/packages/SystemUI/checks/Android.bp +++ b/packages/SystemUI/checks/Android.bp @@ -40,9 +40,11 @@ java_test_host { data: [ ":androidx.annotation_annotation", ":dagger2", - ":framework", ":kotlinx-coroutines-core", ], + device_common_data: [ + ":framework", + ], static_libs: [ "SystemUILintChecker", ], diff --git a/packages/SystemUI/compose/core/TEST_MAPPING b/packages/SystemUI/compose/core/TEST_MAPPING index b71c5fb29fd7..56e531d2bee0 100644 --- a/packages/SystemUI/compose/core/TEST_MAPPING +++ b/packages/SystemUI/compose/core/TEST_MAPPING @@ -1,26 +1,10 @@ { "presubmit": [ { - "name": "PlatformComposeCoreTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "PlatformComposeCoreTests" }, { - "name": "SystemUIComposeGalleryTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "SystemUIComposeGalleryTests" } ] }
\ No newline at end of file diff --git a/packages/SystemUI/compose/scene/TEST_MAPPING b/packages/SystemUI/compose/scene/TEST_MAPPING index f9424ed62d78..65ba037cf995 100644 --- a/packages/SystemUI/compose/scene/TEST_MAPPING +++ b/packages/SystemUI/compose/scene/TEST_MAPPING @@ -1,37 +1,13 @@ { "presubmit": [ { - "name": "PlatformComposeSceneTransitionLayoutTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "PlatformComposeSceneTransitionLayoutTests" }, { - "name": "PlatformComposeCoreTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "PlatformComposeCoreTests" }, { - "name": "SystemUIComposeGalleryTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "SystemUIComposeGalleryTests" } ] }
\ No newline at end of file diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MultiPointerDraggableTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MultiPointerDraggableTest.kt index 1a0740b54892..60237d018b02 100644 --- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MultiPointerDraggableTest.kt +++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MultiPointerDraggableTest.kt @@ -346,6 +346,9 @@ class MultiPointerDraggableTest { continueDraggingDown() assertThat(stopped).isTrue() + + // Complete the gesture + rule.onRoot().performTouchInput { up() } } @Test diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/OWNERS b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/OWNERS new file mode 100644 index 000000000000..f6f98e934dde --- /dev/null +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/OWNERS @@ -0,0 +1 @@ +include /packages/SystemUI/src/com/android/systemui/keyguard/OWNERS diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepository.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepository.kt index e39d7edddcfd..9e857deb280a 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepository.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepository.kt @@ -21,16 +21,16 @@ import com.android.systemui.shared.settings.data.repository.SecureSettingsReposi import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.Flow -import kotlinx.coroutines.flow.SharingStarted import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.distinctUntilChanged +import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.withContext /** Provides access to state related to notification settings. */ class NotificationSettingsRepository( - scope: CoroutineScope, + private val scope: CoroutineScope, private val backgroundDispatcher: CoroutineDispatcher, private val secureSettingsRepository: SecureSettingsRepository, ) { @@ -41,16 +41,15 @@ class NotificationSettingsRepository( .distinctUntilChanged() /** The current state of the notification setting. */ - val isShowNotificationsOnLockScreenEnabled: StateFlow<Boolean> = + suspend fun isShowNotificationsOnLockScreenEnabled(): StateFlow<Boolean> = secureSettingsRepository .intSetting( name = Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, ) .map { it == 1 } + .flowOn(backgroundDispatcher) .stateIn( scope = scope, - started = SharingStarted.WhileSubscribed(), - initialValue = false, ) suspend fun setShowNotificationsOnLockscreenEnabled(enabled: Boolean) { diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/domain/interactor/NotificationSettingsInteractor.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/domain/interactor/NotificationSettingsInteractor.kt index 04e8090e3ae2..b4105bdecc0a 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/domain/interactor/NotificationSettingsInteractor.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/notifications/domain/interactor/NotificationSettingsInteractor.kt @@ -26,8 +26,8 @@ class NotificationSettingsInteractor( val isNotificationHistoryEnabled = repository.isNotificationHistoryEnabled /** Should notifications be visible on the lockscreen? */ - val isShowNotificationsOnLockScreenEnabled: StateFlow<Boolean> = - repository.isShowNotificationsOnLockScreenEnabled + suspend fun isShowNotificationsOnLockScreenEnabled(): StateFlow<Boolean> = + repository.isShowNotificationsOnLockScreenEnabled() suspend fun setShowNotificationsOnLockscreenEnabled(enabled: Boolean) { repository.setShowNotificationsOnLockscreenEnabled(enabled) @@ -35,7 +35,7 @@ class NotificationSettingsInteractor( /** Toggles the setting to show or hide notifications on the lock screen. */ suspend fun toggleShowNotificationsOnLockscreenEnabled() { - val current = repository.isShowNotificationsOnLockScreenEnabled.value + val current = repository.isShowNotificationsOnLockScreenEnabled().value repository.setShowNotificationsOnLockscreenEnabled(!current) } } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/accessibility/OWNERS b/packages/SystemUI/multivalentTests/src/com/android/systemui/accessibility/OWNERS new file mode 100644 index 000000000000..a2001e66e55b --- /dev/null +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/accessibility/OWNERS @@ -0,0 +1 @@ +include /core/java/android/view/accessibility/OWNERS
\ No newline at end of file diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/UdfpsControllerTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/UdfpsControllerTest.java index fa79ea01cf51..54e0725957e6 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/UdfpsControllerTest.java +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/UdfpsControllerTest.java @@ -1284,6 +1284,41 @@ public class UdfpsControllerTest extends SysuiTestCase { } @Test + public void onAodDownAndDownTouchReceived() throws RemoteException { + final NormalizedTouchData touchData = new NormalizedTouchData(0, 0f, 0f, 0f, 0f, 0f, 0L, + 0L); + final TouchProcessorResult processorResultDown = + new TouchProcessorResult.ProcessedTouch(InteractionEvent.DOWN, + -1 /* pointerId */, touchData); + + mOverlayController.showUdfpsOverlay(TEST_REQUEST_ID, mOpticalProps.sensorId, + BiometricRequestConstants.REASON_AUTH_KEYGUARD, mUdfpsOverlayControllerCallback); + mFgExecutor.runAllReady(); + + verify(mUdfpsView).setOnTouchListener(mTouchListenerCaptor.capture()); + + // WHEN fingerprint is requested because of AOD interrupt + // GIVEN there's been an AoD interrupt + when(mKeyguardUpdateMonitor.isFingerprintDetectionRunning()).thenReturn(true); + mScreenObserver.onScreenTurnedOn(); + mUdfpsController.onAodInterrupt(0, 0, 0, 0); + mFgExecutor.runAllReady(); + + // and an ACTION_DOWN is received and touch is within sensor + when(mSinglePointerTouchProcessor.processTouch(any(), anyInt(), any())).thenReturn( + processorResultDown); + MotionEvent firstDownEvent = MotionEvent.obtain(0, 0, ACTION_DOWN, 0, 0, 0); + mTouchListenerCaptor.getValue().onTouch(mUdfpsView, firstDownEvent); + mBiometricExecutor.runAllReady(); + firstDownEvent.recycle(); + + // THEN the touch is only processed once + verify(mFingerprintManager).onPointerDown(anyLong(), anyInt(), anyInt(), + anyFloat(), anyFloat(), anyFloat(), anyFloat(), anyFloat(), anyLong(), anyLong(), + anyBoolean()); + } + + @Test public void onTouch_pilferPointerWhenAltBouncerShowing() throws RemoteException { final Pair<TouchProcessorResult, TouchProcessorResult> touchProcessorResult = diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt index 73ef77540398..88ba0411b414 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt @@ -84,7 +84,7 @@ class DreamOverlayAnimationsControllerTest : SysuiTestCase() { verify(mockAnimator, atLeastOnce()).addListener(captor.capture()) captor.allValues.forEach { it.onAnimationEnd(mockAnimator) } - verify(stateController).setExitAnimationsRunning(false) + verify(stateController, times(2)).setExitAnimationsRunning(false) } @Test @@ -154,4 +154,10 @@ class DreamOverlayAnimationsControllerTest : SysuiTestCase() { } ) } + + @Test + fun testCancelAnimations_clearsExitAnimationsRunning() { + controller.cancelAnimations() + verify(stateController).setExitAnimationsRunning(false) + } } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt index 4587ea6dbdc8..c5ba02d0773a 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt @@ -528,6 +528,30 @@ class BiometricSettingsRepositoryTest : SysuiTestCase() { } @Test + fun userChange_isFingerprintEnrolledAndEnabledUpdated() = + testScope.runTest { + createBiometricSettingsRepository() + whenever(authController.isFingerprintEnrolled(ANOTHER_USER_ID)).thenReturn(false) + whenever(authController.isFingerprintEnrolled(PRIMARY_USER_ID)).thenReturn(true) + + verify(biometricManager) + .registerEnabledOnKeyguardCallback(biometricManagerCallback.capture()) + val isFingerprintEnrolledAndEnabled = + collectLastValue(underTest.isFingerprintEnrolledAndEnabled) + biometricManagerCallback.value.onChanged(true, ANOTHER_USER_ID) + runCurrent() + userRepository.setSelectedUserInfo(ANOTHER_USER) + runCurrent() + assertThat(isFingerprintEnrolledAndEnabled()).isFalse() + + biometricManagerCallback.value.onChanged(true, PRIMARY_USER_ID) + runCurrent() + userRepository.setSelectedUserInfo(PRIMARY_USER) + runCurrent() + assertThat(isFingerprintEnrolledAndEnabled()).isTrue() + } + + @Test fun userChange_biometricEnabledChange_handlesRaceCondition() = testScope.runTest { createBiometricSettingsRepository() diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractorTest.kt index d20fec44d60f..5115f5af94f0 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractorTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractorTest.kt @@ -90,7 +90,11 @@ class FromAlternateBouncerTransitionInteractorTest : SysuiTestCase() { ) reset(transitionRepository) + kosmos.fakeKeyguardBouncerRepository.setKeyguardAuthenticatedBiometrics(null) kosmos.fakeKeyguardRepository.setKeyguardOccluded(true) + runCurrent() + assertThat(transitionRepository).noTransitionsStarted() + kosmos.fakeKeyguardBouncerRepository.setKeyguardAuthenticatedBiometrics(true) runCurrent() kosmos.fakeKeyguardBouncerRepository.setKeyguardAuthenticatedBiometrics(null) diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModelTest.kt index 6d9c271d0f4a..b49e546c6e78 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModelTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModelTest.kt @@ -227,6 +227,15 @@ class DeviceEntryIconViewModelTest : SysuiTestCase() { assertThat(accessibilityDelegateHint) .isEqualTo(DeviceEntryIconView.AccessibilityHintType.BOUNCER) + // udfps running + setUpState( + isUdfpsSupported = true, + isUdfpsRunning = true, + ) + + assertThat(accessibilityDelegateHint) + .isEqualTo(DeviceEntryIconView.AccessibilityHintType.BOUNCER) + // non-interactive lock icon fingerprintPropertyRepository.supportsRearFps() diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/OWNERS b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/OWNERS index cd04e82d7816..d3eec977fd53 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/OWNERS +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/OWNERS @@ -1,3 +1,4 @@ set noparent include /packages/SystemUI/src/com/android/systemui/qs/OWNERS +include /packages/SystemUI/TEST_OWNERS diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/domain/interactor/AudioVolumeInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/domain/interactor/AudioVolumeInteractorTest.kt index d620639b2219..ef68e8a513dd 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/domain/interactor/AudioVolumeInteractorTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/domain/interactor/AudioVolumeInteractorTest.kt @@ -36,6 +36,7 @@ import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runCurrent import kotlinx.coroutines.test.runTest +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -49,6 +50,20 @@ class AudioVolumeInteractorTest : SysuiTestCase() { private val underTest: AudioVolumeInteractor = with(kosmos) { AudioVolumeInteractor(audioRepository, notificationsSoundPolicyInteractor) } + @Before + fun setUp() = + with(kosmos) { + audioRepository.setAudioStreamModel( + audioRepository.getAudioStream(audioStream).value.copy(isAffectedByMute = true) + ) + audioRepository.setAudioStreamModel( + audioRepository + .getAudioStream(AudioStream(AudioManager.STREAM_RING)) + .value + .copy(isAffectedByMute = true) + ) + } + @Test fun setMuted_mutesStream() { with(kosmos) { @@ -194,10 +209,14 @@ class AudioVolumeInteractorTest : SysuiTestCase() { testScope.runTest { val audioStreamModel by collectLastValue(underTest.getAudioStream(audioStream)) audioRepository.setAudioStreamModel( - audioStreamModel!!.copy(isAffectedByMute = false) + audioStreamModel!!.copy(isAffectedByMute = false, isMuted = false) ) + underTest.setMuted(audioStream, true) + runCurrent() + assertThat(audioStreamModel!!.isAffectedByMute).isFalse() + assertThat(audioStreamModel!!.isMuted).isFalse() } } } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/SpatialAudioComponentKosmos.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/SpatialAudioComponentKosmos.kt index 777240c57c2e..5826b3feae37 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/SpatialAudioComponentKosmos.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/SpatialAudioComponentKosmos.kt @@ -17,8 +17,10 @@ package com.android.systemui.volume.panel.component.spatial import com.android.systemui.kosmos.Kosmos +import com.android.systemui.kosmos.backgroundCoroutineContext import com.android.systemui.kosmos.testScope import com.android.systemui.media.spatializerInteractor +import com.android.systemui.volume.data.repository.audioRepository import com.android.systemui.volume.domain.interactor.audioOutputInteractor import com.android.systemui.volume.panel.component.spatial.domain.interactor.SpatialAudioComponentInteractor @@ -27,6 +29,8 @@ val Kosmos.spatialAudioComponentInteractor by SpatialAudioComponentInteractor( audioOutputInteractor, spatializerInteractor, + audioRepository, + backgroundCoroutineContext, testScope.backgroundScope ) } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/SpatialAudioAvailabilityCriteriaTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/SpatialAudioAvailabilityCriteriaTest.kt index 2f69942aa459..ebc78d864494 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/SpatialAudioAvailabilityCriteriaTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/SpatialAudioAvailabilityCriteriaTest.kt @@ -16,6 +16,8 @@ package com.android.systemui.volume.panel.component.spatial.domain +import android.bluetooth.BluetoothDevice +import android.bluetooth.BluetoothProfile import android.media.AudioDeviceAttributes import android.media.AudioDeviceInfo import android.media.session.MediaSession @@ -24,12 +26,14 @@ import android.testing.TestableLooper.RunWithLooper import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.settingslib.bluetooth.CachedBluetoothDevice +import com.android.settingslib.bluetooth.LeAudioProfile import com.android.settingslib.media.BluetoothMediaDevice import com.android.systemui.SysuiTestCase import com.android.systemui.coroutines.collectLastValue import com.android.systemui.kosmos.testScope import com.android.systemui.media.spatializerRepository import com.android.systemui.testKosmos +import com.android.systemui.util.mockito.any import com.android.systemui.util.mockito.mock import com.android.systemui.util.mockito.whenever import com.android.systemui.volume.localMediaController @@ -56,8 +60,15 @@ class SpatialAudioAvailabilityCriteriaTest : SysuiTestCase() { @Before fun setup() { with(kosmos) { + val leAudioProfile = + mock<LeAudioProfile> { + whenever(profileId).thenReturn(BluetoothProfile.LE_AUDIO) + whenever(isEnabled(any())).thenReturn(true) + } val cachedBluetoothDevice: CachedBluetoothDevice = mock { whenever(address).thenReturn("test_address") + whenever(profiles).thenReturn(listOf(leAudioProfile)) + whenever(device).thenReturn(mock<BluetoothDevice> {}) } localMediaRepository.updateCurrentConnectedDevice( mock<BluetoothMediaDevice> { diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorTest.kt index c6c46faf97f7..d5566adb1fdc 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorTest.kt @@ -16,14 +16,22 @@ package com.android.systemui.volume.panel.component.spatial.domain.interactor +import android.bluetooth.BluetoothDevice +import android.bluetooth.BluetoothProfile import android.media.AudioDeviceAttributes import android.media.AudioDeviceInfo import android.media.session.MediaSession import android.media.session.PlaybackState +import android.platform.test.annotations.EnableFlags +import android.platform.test.flag.junit.SetFlagsRule import android.testing.TestableLooper import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest +import com.android.settingslib.bluetooth.A2dpProfile import com.android.settingslib.bluetooth.CachedBluetoothDevice +import com.android.settingslib.bluetooth.HearingAidProfile +import com.android.settingslib.bluetooth.LeAudioProfile +import com.android.settingslib.flags.Flags import com.android.settingslib.media.BluetoothMediaDevice import com.android.systemui.SysuiTestCase import com.android.systemui.coroutines.collectLastValue @@ -44,6 +52,7 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runCurrent import kotlinx.coroutines.test.runTest import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -52,15 +61,33 @@ import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) @TestableLooper.RunWithLooper(setAsMainLooper = true) class SpatialAudioComponentInteractorTest : SysuiTestCase() { + @get:Rule val setFlagsRule = SetFlagsRule() private val kosmos = testKosmos() private lateinit var underTest: SpatialAudioComponentInteractor + private val bluetoothDevice: BluetoothDevice = mock {} + private val a2dpProfile: A2dpProfile = mock { + whenever(profileId).thenReturn(BluetoothProfile.A2DP) + whenever(isEnabled(bluetoothDevice)).thenReturn(false) + } + private val leAudioProfile: LeAudioProfile = mock { + whenever(profileId).thenReturn(BluetoothProfile.LE_AUDIO) + whenever(isEnabled(bluetoothDevice)).thenReturn(true) + } + private val hearingAidProfile: HearingAidProfile = mock { + whenever(profileId).thenReturn(BluetoothProfile.HEARING_AID) + whenever(isEnabled(bluetoothDevice)).thenReturn(false) + } + @Before fun setup() { with(kosmos) { val cachedBluetoothDevice: CachedBluetoothDevice = mock { whenever(address).thenReturn("test_address") + whenever(device).thenReturn(bluetoothDevice) + whenever(profiles) + .thenReturn(listOf(a2dpProfile, leAudioProfile, hearingAidProfile)) } localMediaRepository.updateCurrentConnectedDevice( mock<BluetoothMediaDevice> { @@ -83,7 +110,7 @@ class SpatialAudioComponentInteractorTest : SysuiTestCase() { fun setEnabled_changesIsEnabled() { with(kosmos) { testScope.runTest { - spatializerRepository.setIsSpatialAudioAvailable(headset, true) + spatializerRepository.setIsSpatialAudioAvailable(bleHeadsetAttributes, true) val values by collectValues(underTest.isEnabled) underTest.setEnabled(SpatialAudioEnabledModel.Disabled) @@ -106,10 +133,39 @@ class SpatialAudioComponentInteractorTest : SysuiTestCase() { } @Test + @EnableFlags(Flags.FLAG_ENABLE_DETERMINING_SPATIAL_AUDIO_ATTRIBUTES_BY_PROFILE) + fun setEnabled_determinedByBluetoothProfile_a2dpProfileEnabled() { + with(kosmos) { + testScope.runTest { + whenever(a2dpProfile.isEnabled(bluetoothDevice)).thenReturn(true) + whenever(leAudioProfile.isEnabled(bluetoothDevice)).thenReturn(false) + whenever(hearingAidProfile.isEnabled(bluetoothDevice)).thenReturn(false) + spatializerRepository.setIsSpatialAudioAvailable(a2dpAttributes, true) + val values by collectValues(underTest.isEnabled) + + underTest.setEnabled(SpatialAudioEnabledModel.Disabled) + runCurrent() + underTest.setEnabled(SpatialAudioEnabledModel.SpatialAudioEnabled) + runCurrent() + + assertThat(values) + .containsExactly( + SpatialAudioEnabledModel.Unknown, + SpatialAudioEnabledModel.Disabled, + SpatialAudioEnabledModel.SpatialAudioEnabled, + ) + .inOrder() + assertThat(spatializerRepository.getSpatialAudioCompatibleDevices()) + .containsExactly(a2dpAttributes) + } + } + } + + @Test fun connectedDeviceSupports_isAvailable_SpatialAudio() { with(kosmos) { testScope.runTest { - spatializerRepository.setIsSpatialAudioAvailable(headset, true) + spatializerRepository.setIsSpatialAudioAvailable(bleHeadsetAttributes, true) val isAvailable by collectLastValue(underTest.isAvailable) @@ -123,8 +179,8 @@ class SpatialAudioComponentInteractorTest : SysuiTestCase() { fun connectedDeviceSupportsHeadTracking_isAvailable_HeadTracking() { with(kosmos) { testScope.runTest { - spatializerRepository.setIsSpatialAudioAvailable(headset, true) - spatializerRepository.setIsHeadTrackingAvailable(headset, true) + spatializerRepository.setIsSpatialAudioAvailable(bleHeadsetAttributes, true) + spatializerRepository.setIsHeadTrackingAvailable(bleHeadsetAttributes, true) val isAvailable by collectLastValue(underTest.isAvailable) @@ -138,7 +194,7 @@ class SpatialAudioComponentInteractorTest : SysuiTestCase() { fun connectedDeviceDoesntSupport_isAvailable_Unavailable() { with(kosmos) { testScope.runTest { - spatializerRepository.setIsSpatialAudioAvailable(headset, false) + spatializerRepository.setIsSpatialAudioAvailable(bleHeadsetAttributes, false) val isAvailable by collectLastValue(underTest.isAvailable) @@ -179,7 +235,13 @@ class SpatialAudioComponentInteractorTest : SysuiTestCase() { } private companion object { - val headset = + val a2dpAttributes = + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_BLUETOOTH_A2DP, + "test_address" + ) + val bleHeadsetAttributes = AudioDeviceAttributes( AudioDeviceAttributes.ROLE_OUTPUT, AudioDeviceInfo.TYPE_BLE_HEADSET, diff --git a/packages/SystemUI/res-keyguard/layout/alternate_bouncer.xml b/packages/SystemUI/res-keyguard/layout/alternate_bouncer.xml index cf9ca157b943..c9850f2613b1 100644 --- a/packages/SystemUI/res-keyguard/layout/alternate_bouncer.xml +++ b/packages/SystemUI/res-keyguard/layout/alternate_bouncer.xml @@ -19,8 +19,6 @@ xmlns:android="http://schemas.android.com/apk/res/android" xmlns:sysui="http://schemas.android.com/apk/res-auto" android:id="@+id/alternate_bouncer" - android:focusable="true" - android:clickable="true" android:layout_width="match_parent" android:layout_height="match_parent"> diff --git a/packages/SystemUI/res-keyguard/values-ar/strings.xml b/packages/SystemUI/res-keyguard/values-ar/strings.xml index 57fd9ea8319f..d069c0181218 100644 --- a/packages/SystemUI/res-keyguard/values-ar/strings.xml +++ b/packages/SystemUI/res-keyguard/values-ar/strings.xml @@ -71,7 +71,7 @@ <string name="kg_prompt_after_dpm_lock" msgid="6002804765868345917">"لمزيد من الأمان، تم قفل الجهاز وفقًا لسياسة العمل."</string> <string name="kg_prompt_after_user_lockdown_pin" msgid="5374732179740050373">"يجب إدخال رقم التعريف الشخصي بعد إلغاء الفتح الذكي."</string> <string name="kg_prompt_after_user_lockdown_password" msgid="9097968458291129795">"يجب إدخال كلمة المرور بعد إلغاء الفتح الذكي."</string> - <string name="kg_prompt_after_user_lockdown_pattern" msgid="215072203613597906">"يجب رسم النقش بعد إلغاء التأمين."</string> + <string name="kg_prompt_after_user_lockdown_pattern" msgid="215072203613597906">"يجب رسم النقش بعد إلغاء الفتح الذكي."</string> <string name="kg_prompt_unattended_update" msgid="4366635751738712452">"سيتم تثبيت التحديث عندما لا يكون الجهاز قيد الاستخدام."</string> <string name="kg_prompt_pin_auth_timeout" msgid="5868644725126275245">"يجب تعزيز الأمان. لم يُستخدَم رقم PIN لبعض الوقت."</string> <string name="kg_prompt_password_auth_timeout" msgid="5809110458491920871">"يجب تعزيز الأمان. لم تستخدَم كلمة المرور لبعض الوقت."</string> diff --git a/packages/SystemUI/res-keyguard/values-as/strings.xml b/packages/SystemUI/res-keyguard/values-as/strings.xml index 4ed7e27ff732..8ac43e1955bd 100644 --- a/packages/SystemUI/res-keyguard/values-as/strings.xml +++ b/packages/SystemUI/res-keyguard/values-as/strings.xml @@ -27,7 +27,7 @@ <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> + <string name="keyguard_charged" msgid="5478247181205188995">"চাৰ্জ কৰা হ’ল"</string> <string name="keyguard_plugged_in_wireless" msgid="2537874724955057383">"<xliff:g id="PERCENTAGE">%s</xliff:g> • বেতাঁৰৰ জৰিয়তে চাৰ্জ কৰি থকা হৈছে"</string> <string name="keyguard_plugged_in_dock" msgid="2122073051904360987">"<xliff:g id="PERCENTAGE">%s</xliff:g> • চাৰ্জ কৰি থকা হৈছে"</string> <string name="keyguard_plugged_in" msgid="8169926454348380863">"<xliff:g id="PERCENTAGE">%s</xliff:g> • চ্চার্জ কৰি থকা হৈছে"</string> diff --git a/packages/SystemUI/res-keyguard/values-es-rUS/strings.xml b/packages/SystemUI/res-keyguard/values-es-rUS/strings.xml index bfb2ed0f421f..5ae41fedac49 100644 --- a/packages/SystemUI/res-keyguard/values-es-rUS/strings.xml +++ b/packages/SystemUI/res-keyguard/values-es-rUS/strings.xml @@ -83,7 +83,7 @@ <string name="kg_primary_auth_locked_out_pin" msgid="5492230176361601475">"Demasiados intentos con PIN incorrecto"</string> <string name="kg_primary_auth_locked_out_pattern" msgid="8266214607346180952">"Demasiados intentos con patrón incorrecto"</string> <string name="kg_primary_auth_locked_out_password" msgid="6170245108400198659">"Demasiados intentos con contraseña incorrecta"</string> - <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Vuelve a intentarlo en # segundo}many{Vuelve a intentarlo en # segundos}other{Vuelve a intentarlo en # segundos}}"</string> + <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Vuelve a intentarlo en # segundo.}many{Vuelve a intentarlo en # de segundos.}other{Vuelve a intentarlo en # segundos.}}"</string> <string name="kg_sim_pin_instructions" msgid="1942424305184242951">"Ingresa el PIN de la tarjeta SIM."</string> <string name="kg_sim_pin_instructions_multi" msgid="3639863309953109649">"Ingresa el PIN de la tarjeta SIM de \"<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> Inhabilita la tarjeta eSIM para usar el dispositivo sin servicio móvil."</string> @@ -100,7 +100,7 @@ <string name="kg_password_wrong_pin_code_pukked" msgid="8047350661459040581">"El código PIN de la tarjeta SIM es incorrecto. Debes comunicarte con tu proveedor para desbloquear el dispositivo."</string> <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{El código PIN de la tarjeta SIM es incorrecto. Tienes # intento restante antes de que debas comunicarte con tu operador para desbloquear el dispositivo.}many{El código PIN de la tarjeta SIM es incorrecto. Tienes # intentos restantes. }other{El código PIN de la tarjeta SIM es incorrecto. Tienes # intentos restantes. }}"</string> <string name="kg_password_wrong_puk_code_dead" msgid="3698285357028468617">"La tarjeta SIM no se puede usar. Comunícate con tu proveedor."</string> - <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{El código PUK de la tarjeta SIM es incorrecto. Tienes # intento restante antes de que la tarjeta SIM quede inutilizable permanentemente.}many{El código PUK de la tarjeta SIM es incorrecto. Tienes # intentos restantes antes de que la tarjeta SIM quede inutilizable permanentemente.}other{El código PUK de la tarjeta SIM es incorrecto. Tienes # intentos restantes antes de que la tarjeta SIM quede inutilizable permanentemente.}}"</string> + <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{El código PUK de la tarjeta SIM es incorrecto. Tienes # intento restante antes de que la tarjeta SIM quede inutilizable permanentemente.}many{El código PUK de la tarjeta SIM es incorrecto. Tienes # de intentos restantes antes de que la tarjeta SIM quede inutilizable permanentemente.}other{El código PUK de la tarjeta SIM es incorrecto. Tienes # intentos restantes antes de que la tarjeta SIM quede inutilizable permanentemente.}}"</string> <string name="kg_password_pin_failed" msgid="5136259126330604009">"Se produjo un error al desbloquear la tarjeta SIM con el PIN."</string> <string name="kg_password_puk_failed" msgid="6778867411556937118">"Se produjo un error al desbloquear la tarjeta SIM con el PUK."</string> <string name="accessibility_ime_switch_button" msgid="9082358310194861329">"Cambiar método de entrada"</string> @@ -118,8 +118,8 @@ <string name="kg_prompt_reason_user_request" msgid="6015774877733717904">"El dispositivo se bloqueó de forma manual"</string> <string name="kg_face_not_recognized" msgid="7903950626744419160">"No se reconoció"</string> <string name="kg_face_sensor_privacy_enabled" msgid="939511161763558512">"Activa acceso a cámara en Config. y usa Desb. facial"</string> - <string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{Ingresa el PIN de la tarjeta SIM. Tienes # intento restante antes de que debas comunicarte con tu operador para desbloquear el dispositivo.}many{Ingresa el PIN de la tarjeta SIM. Tienes # intentos restantes.}other{Ingresa el PIN de la tarjeta SIM. Tienes # intentos restantes.}}"</string> - <string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # intento restante antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}many{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # intentos restantes antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}other{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # intentos restantes antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}}"</string> + <string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{Ingresa el PIN de la tarjeta SIM. Tienes # intento restante antes de que debas comunicarte con tu operador para desbloquear el dispositivo.}many{Ingresa el PIN de la tarjeta SIM. Tienes # de intentos restantes.}other{Ingresa el PIN de la tarjeta SIM. Tienes # intentos restantes.}}"</string> + <string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # intento restante antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}many{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # de intentos restantes antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}other{Se inhabilitó la tarjeta SIM. Para continuar, ingresa el código PUK. Tienes # intentos restantes antes de que la SIM quede inutilizable permanentemente. Comunícate con tu operador para conocer más detalles.}}"</string> <string name="clock_title_default" msgid="6342735240617459864">"Predeterminado"</string> <string name="clock_title_bubble" msgid="2204559396790593213">"Burbuja"</string> <string name="clock_title_analog" msgid="8409262532900918273">"Analógico"</string> diff --git a/packages/SystemUI/res-keyguard/values-es/strings.xml b/packages/SystemUI/res-keyguard/values-es/strings.xml index 3a0985213b1b..2d18c1c75057 100644 --- a/packages/SystemUI/res-keyguard/values-es/strings.xml +++ b/packages/SystemUI/res-keyguard/values-es/strings.xml @@ -67,7 +67,7 @@ <string name="kg_bio_too_many_attempts_pattern" msgid="736884689355181602">"Demasiados intentos, se necesita el patrón"</string> <string name="kg_unlock_with_pin_or_fp" msgid="5635161174698729890">"Desbloquea con PIN o huella digital"</string> <string name="kg_unlock_with_password_or_fp" msgid="2251295907826814237">"Desbloquea con contraseña o huella digital"</string> - <string name="kg_unlock_with_pattern_or_fp" msgid="2391870539909135046">"Desbloquea con patrón o huella digital"</string> + <string name="kg_unlock_with_pattern_or_fp" msgid="2391870539909135046">"Desbloquea con tu patrón o huella digital"</string> <string name="kg_prompt_after_dpm_lock" msgid="6002804765868345917">"Por política del trabajo, se ha bloqueado el dispositivo para mayor seguridad"</string> <string name="kg_prompt_after_user_lockdown_pin" msgid="5374732179740050373">"Se necesita el PIN después del bloqueo"</string> <string name="kg_prompt_after_user_lockdown_password" msgid="9097968458291129795">"Se necesita la contraseña después del bloqueo"</string> diff --git a/packages/SystemUI/res-keyguard/values-eu/strings.xml b/packages/SystemUI/res-keyguard/values-eu/strings.xml index 41c3e06bd062..83a607b14a19 100644 --- a/packages/SystemUI/res-keyguard/values-eu/strings.xml +++ b/packages/SystemUI/res-keyguard/values-eu/strings.xml @@ -42,7 +42,7 @@ <string name="keyguard_sim_puk_locked_message" msgid="2503428315518592542">"SIMa PUKaren bidez desblokeatu behar da."</string> <string name="keyguard_sim_unlock_progress_dialog_message" msgid="8489092646014631659">"SIMa desblokeatzen…"</string> <string name="keyguard_accessibility_pin_area" msgid="7403009340414014734">"PIN kodearen eremua"</string> - <string name="keyguard_accessibility_password" msgid="3524161948484801450">"Gailuaren pasahitza"</string> + <string name="keyguard_accessibility_password" msgid="3524161948484801450">"Gailuko pasahitza"</string> <string name="keyguard_accessibility_sim_pin_area" msgid="6272116591533888062">"SIM txartelaren PIN kodearen eremua"</string> <string name="keyguard_accessibility_sim_puk_area" msgid="5537294043180237374">"SIM txartelaren PUK kodearen eremua"</string> <string name="keyboardview_keycode_delete" msgid="8489719929424895174">"Ezabatu"</string> diff --git a/packages/SystemUI/res-keyguard/values-fr-rCA/strings.xml b/packages/SystemUI/res-keyguard/values-fr-rCA/strings.xml index 6eea6c952e20..82a553cea058 100644 --- a/packages/SystemUI/res-keyguard/values-fr-rCA/strings.xml +++ b/packages/SystemUI/res-keyguard/values-fr-rCA/strings.xml @@ -27,7 +27,7 @@ <string name="keyguard_enter_your_password" msgid="7225626204122735501">"Entrez votre mot de passe"</string> <string name="keyguard_enter_password" msgid="6483623792371009758">"Entrez le mot de passe"</string> <string name="keyguard_sim_error_message_short" msgid="633630844240494070">"Cette carte n\'est pas valide."</string> - <string name="keyguard_charged" msgid="5478247181205188995">"Chargé"</string> + <string name="keyguard_charged" msgid="5478247181205188995">"Chargée"</string> <string name="keyguard_plugged_in_wireless" msgid="2537874724955057383">"<xliff:g id="PERCENTAGE">%s</xliff:g> • En recharge sans fil"</string> <string name="keyguard_plugged_in_dock" msgid="2122073051904360987">"<xliff:g id="PERCENTAGE">%s</xliff:g> • Recharge en cours…"</string> <string name="keyguard_plugged_in" msgid="8169926454348380863">"En recharge : <xliff:g id="PERCENTAGE">%s</xliff:g>"</string> @@ -83,7 +83,7 @@ <string name="kg_primary_auth_locked_out_pin" msgid="5492230176361601475">"Trop de tentatives avec un NIP incorrect"</string> <string name="kg_primary_auth_locked_out_pattern" msgid="8266214607346180952">"Trop de tentatives avec un schéma incorrect"</string> <string name="kg_primary_auth_locked_out_password" msgid="6170245108400198659">"Trop de tentatives avec un mot de passe incorrect"</string> - <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Réessayez dans # seconde.}one{Réessayez dans # seconde.}many{Réessayez dans # secondes.}other{Réessayez dans # secondes.}}"</string> + <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Réessayez dans # seconde.}one{Réessayez dans # seconde.}many{Réessayez dans # de secondes.}other{Réessayez dans # secondes.}}"</string> <string name="kg_sim_pin_instructions" msgid="1942424305184242951">"Entrez le NIP de la carte SIM."</string> <string name="kg_sim_pin_instructions_multi" msgid="3639863309953109649">"Entrez le NIP de la carte SIM pour « <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> Désactivez la carte eSIM pour utiliser l\'appareil sans service cellulaire."</string> @@ -98,7 +98,7 @@ <string name="kg_too_many_failed_password_attempts_dialog_message" msgid="190984061975729494">"Vous avez entré un mot de passe incorrect à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises.\n\nVeuillez réessayer dans <xliff:g id="NUMBER_1">%2$d</xliff:g> secondes."</string> <string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="4252405904570284368">"Vous avez dessiné un schéma de déverrouillage incorrect à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises.\n\nVeuillez réessayer dans <xliff:g id="NUMBER_1">%2$d</xliff:g> secondes."</string> <string name="kg_password_wrong_pin_code_pukked" msgid="8047350661459040581">"NIP de carte SIM incorrect. Vous devez maintenant communiquer avec votre fournisseur de services pour déverrouiller votre appareil."</string> - <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{NIP de la carte SIM incorrect. Il vous reste # tentative. Après cela, vous devrez communiquer avec votre fournisseur de services pour déverrouiller votre appareil.}one{NIP de la carte SIM incorrect. Il vous reste # tentative. }many{NIP de la carte SIM incorrect. Il vous reste # de tentatives. }other{NIP de la carte SIM incorrect. Il vous reste # tentatives. }}"</string> + <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{NIP de la carte SIM incorrect. Il vous reste # tentative. Après cela, vous devrez communiquer avec votre opérateur pour déverrouiller votre appareil.}one{NIP de la carte SIM incorrect. Il vous reste # tentative. }many{NIP de la carte SIM incorrect. Il vous reste # de tentatives. }other{NIP de la carte SIM incorrect. Il vous reste # tentatives. }}"</string> <string name="kg_password_wrong_puk_code_dead" msgid="3698285357028468617">"La carte SIM est inutilisable. Communiquez avec votre fournisseur de services."</string> <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{Code PUK de la carte SIM incorrect. Il vous reste # tentative avant que votre carte SIM devienne définitivement inutilisable.}one{Code PUK de la carte SIM incorrect. Il vous reste # tentative avant que votre carte SIM devienne définitivement inutilisable.}many{Code PUK de la carte SIM incorrect. Il vous reste # de tentatives avant que votre carte SIM devienne définitivement inutilisable.}other{Code PUK de la carte SIM incorrect. Il vous reste # tentatives avant que votre carte SIM devienne définitivement inutilisable.}}"</string> <string name="kg_password_pin_failed" msgid="5136259126330604009">"Le déverrouillage par NIP de la carte SIM a échoué."</string> diff --git a/packages/SystemUI/res-keyguard/values-it/strings.xml b/packages/SystemUI/res-keyguard/values-it/strings.xml index 722d43d8247f..609a517c6734 100644 --- a/packages/SystemUI/res-keyguard/values-it/strings.xml +++ b/packages/SystemUI/res-keyguard/values-it/strings.xml @@ -83,7 +83,7 @@ <string name="kg_primary_auth_locked_out_pin" msgid="5492230176361601475">"Troppi tentativi con il PIN errato"</string> <string name="kg_primary_auth_locked_out_pattern" msgid="8266214607346180952">"Troppi tentativi con la sequenza errata"</string> <string name="kg_primary_auth_locked_out_password" msgid="6170245108400198659">"Troppi tentativi con la password errata"</string> - <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Riprova fra # secondo.}many{Riprova fra # secondi.}other{Riprova fra # secondi.}}"</string> + <string name="kg_too_many_failed_attempts_countdown" msgid="2038195171919795529">"{count,plural, =1{Riprova fra # secondo.}many{Riprova fra # di secondi.}other{Riprova fra # secondi.}}"</string> <string name="kg_sim_pin_instructions" msgid="1942424305184242951">"Inserisci il PIN della SIM."</string> <string name="kg_sim_pin_instructions_multi" msgid="3639863309953109649">"Inserisci il PIN della SIM \"<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> Disattiva la eSIM per usare il dispositivo senza servizio dati mobile."</string> @@ -98,9 +98,9 @@ <string name="kg_too_many_failed_password_attempts_dialog_message" msgid="190984061975729494">"Hai digitato la tua password <xliff:g id="NUMBER_0">%1$d</xliff:g> volte in modo errato. \n\nRiprova tra <xliff:g id="NUMBER_1">%2$d</xliff:g> secondi."</string> <string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="4252405904570284368">"<xliff:g id="NUMBER_0">%1$d</xliff:g> tentativi errati di inserimento della sequenza di sblocco. \n\nRiprova tra <xliff:g id="NUMBER_1">%2$d</xliff:g> secondi."</string> <string name="kg_password_wrong_pin_code_pukked" msgid="8047350661459040581">"Codice PIN della SIM errato. Devi contattare l\'operatore per sbloccare il dispositivo."</string> - <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{Codice PIN della SIM errato. Hai ancora # tentativo a disposizione, dopodiché dovrai contattare l\'operatore per sbloccare il dispositivo.}many{Codice PIN della SIM errato. Hai ancora # tentativi a disposizione. }other{Codice PIN della SIM errato. Hai ancora # tentativi a disposizione. }}"</string> + <string name="kg_password_wrong_pin_code" msgid="5629415765976820357">"{count,plural, =1{Codice PIN della SIM errato. Hai ancora # tentativo a disposizione, dopodiché dovrai contattare l\'operatore per sbloccare il dispositivo.}many{Codice PIN della SIM errato. Hai ancora # di tentativi a disposizione. }other{Codice PIN della SIM errato. Hai ancora # tentativi a disposizione. }}"</string> <string name="kg_password_wrong_puk_code_dead" msgid="3698285357028468617">"SIM inutilizzabile. Contatta il tuo operatore."</string> - <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{Codice PUK della SIM errato. Hai ancora # tentativo a disposizione prima che la SIM diventi definitivamente inutilizzabile.}many{Codice PUK della SIM errato. Hai ancora # tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile.}other{Codice PUK della SIM errato. Hai ancora # tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile.}}"</string> + <string name="kg_password_wrong_puk_code" msgid="6820515467645087827">"{count,plural, =1{Codice PUK della SIM errato. Hai ancora # tentativo a disposizione prima che la SIM diventi definitivamente inutilizzabile.}many{Codice PUK della SIM errato. Hai ancora # di tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile.}other{Codice PUK della SIM errato. Hai ancora # tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile.}}"</string> <string name="kg_password_pin_failed" msgid="5136259126330604009">"Operazione con PIN della SIM non riuscita."</string> <string name="kg_password_puk_failed" msgid="6778867411556937118">"Operazione con PUK della SIM non riuscita."</string> <string name="accessibility_ime_switch_button" msgid="9082358310194861329">"Cambia metodo di immissione"</string> @@ -118,7 +118,7 @@ <string name="kg_prompt_reason_user_request" msgid="6015774877733717904">"Il dispositivo è stato bloccato manualmente"</string> <string name="kg_face_not_recognized" msgid="7903950626744419160">"Non riconosciuto"</string> <string name="kg_face_sensor_privacy_enabled" msgid="939511161763558512">"Sblocco con volto richiede l\'accesso alla fotocamera"</string> - <string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{Inserisci il codice PIN della SIM. Hai ancora # tentativo a disposizione, dopodiché dovrai contattare l\'operatore per sbloccare il dispositivo.}many{Inserisci il PIN della SIM. Hai a disposizione ancora # tentativi.}other{Inserisci il PIN della SIM. Hai a disposizione ancora # tentativi.}}"</string> + <string name="kg_password_default_pin_message" msgid="1434544655827987873">"{count,plural, =1{Inserisci il codice PIN della SIM. Hai ancora # tentativo a disposizione, dopodiché dovrai contattare l\'operatore per sbloccare il dispositivo.}many{Inserisci il PIN della SIM. Hai a disposizione ancora # di tentativi.}other{Inserisci il PIN della SIM. Hai a disposizione ancora # tentativi.}}"</string> <string name="kg_password_default_puk_message" msgid="1025139786449741950">"{count,plural, =1{La scheda SIM è ora disattivata. Inserisci il codice PUK per continuare. Hai ancora # tentativo a disposizione prima che la SIM diventi definitivamente inutilizzabile. Per informazioni dettagliate, contatta l\'operatore.}many{La scheda SIM è ora disattivata. Inserisci il codice PUK per continuare. Hai ancora # tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile. Per informazioni dettagliate, contatta l\'operatore.}other{La scheda SIM è ora disattivata. Inserisci il codice PUK per continuare. Hai ancora # tentativi a disposizione prima che la SIM diventi definitivamente inutilizzabile. Per informazioni dettagliate, contatta l\'operatore.}}"</string> <string name="clock_title_default" msgid="6342735240617459864">"Predefinito"</string> <string name="clock_title_bubble" msgid="2204559396790593213">"Bolla"</string> diff --git a/packages/SystemUI/res-keyguard/values-ja/strings.xml b/packages/SystemUI/res-keyguard/values-ja/strings.xml index 9752eca46a97..7c91dafb857d 100644 --- a/packages/SystemUI/res-keyguard/values-ja/strings.xml +++ b/packages/SystemUI/res-keyguard/values-ja/strings.xml @@ -34,7 +34,7 @@ <string name="keyguard_plugged_in_charging_fast" msgid="4386594091107340426">"<xliff:g id="PERCENTAGE">%s</xliff:g> • 急速充電中"</string> <string name="keyguard_plugged_in_charging_slowly" msgid="217655355424210">"<xliff:g id="PERCENTAGE">%s</xliff:g> • 低速充電中"</string> <string name="keyguard_plugged_in_charging_limited" msgid="5369697538556777542">"<xliff:g id="PERCENTAGE">%s</xliff:g> • バッテリーを保護するため、充電を一時停止しています"</string> - <string name="keyguard_plugged_in_incompatible_charger" msgid="6384203333154532125">"<xliff:g id="PERCENTAGE">%s</xliff:g> • 充電用アクセサリを確認してください"</string> + <string name="keyguard_plugged_in_incompatible_charger" msgid="6384203333154532125">"<xliff:g id="PERCENTAGE">%s</xliff:g> • 充電用アクセサリーを確認してください"</string> <string name="keyguard_network_locked_message" msgid="407096292844868608">"ネットワークがロックされました"</string> <string name="keyguard_missing_sim_message_short" msgid="685029586173458728">"SIM がありません"</string> <string name="keyguard_permanent_disabled_sim_message_short" msgid="3955052454216046100">"SIM が使用できません。"</string> diff --git a/packages/SystemUI/res-keyguard/values-ru/strings.xml b/packages/SystemUI/res-keyguard/values-ru/strings.xml index fd90d08caf9e..cf2057cafb8b 100644 --- a/packages/SystemUI/res-keyguard/values-ru/strings.xml +++ b/packages/SystemUI/res-keyguard/values-ru/strings.xml @@ -57,7 +57,7 @@ <string name="kg_wrong_pin" msgid="4160978845968732624">"Неверный PIN-код"</string> <string name="kg_wrong_pin_try_again" msgid="3129729383303430190">"Неверный PIN-код."</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">"Повторите попытку или введите PIN-код."</string> <string name="kg_bio_try_again_or_password" msgid="1473132729225398039">"Повторите попытку или введите пароль."</string> diff --git a/packages/SystemUI/res-product/values-af/strings.xml b/packages/SystemUI/res-product/values-af/strings.xml index c1a6803f39db..e49c890f5a04 100644 --- a/packages/SystemUI/res-product/values-af/strings.xml +++ b/packages/SystemUI/res-product/values-af/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Jou foon sal outomaties probeer afkoel. Jy kan steeds jou foon gebruik, maar dit sal dalk stadiger werk.\n\nJou foon sal normaal werk nadat dit afgekoel het."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Jou toestel sal outomaties probeer afkoel. Jy kan steeds jou toestel gebruik, maar dit sal dalk stadiger werk.\n\nJou toestel sal normaal werk nadat dit afgekoel het."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Jou tablet sal outomaties probeer afkoel. Jy kan steeds jou tablet gebruik, maar dit sal dalk stadiger werk.\n\nJou tablet sal normaal werk nadat dit afgekoel het."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie aan die kant van die tablet."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie aan die kant van die toestel."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie aan die kant van die foon."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie op die rand van die tablet."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie op die rand van die toestel."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Die vingerafdruksensor is op die aan/af-skakelaar. Dit is die plat knoppie langs die verhewe volumeknoppie op die rand van die foon."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Ontsluit jou foon vir meer opsies"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Ontsluit jou tablet vir meer opsies"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Ontsluit jou toestel vir meer opsies"</string> diff --git a/packages/SystemUI/res-product/values-am/strings.xml b/packages/SystemUI/res-product/values-am/strings.xml index b8b2df8c1e73..49e5d52912ef 100644 --- a/packages/SystemUI/res-product/values-am/strings.xml +++ b/packages/SystemUI/res-product/values-am/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"የእርስዎ ስልክ በራስ-ሰር ለመቀዝቀዝ ይሞክራል። አሁንም ስልክዎን መጠቀም ይችላሉ ነገር ግን ቀትፋፋ ሆኖ ሊያሄድ ይችላል።\n\nአንዴ ስልክዎ ከቀዘቀዘ በኋላ በመደበኛነት ያሄዳል።"</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"መሣሪያዎ በራስ-ሰር ለመቀዝቀዝ ይሞክራል። አሁንም መሣሪያዎን መጠቀም ይችላሉ ነገር ግን ቀርፋፋ ሆኖ ሊያሄድ ይችላል።\n\nአንዴ መሣሪያዎ ከቀዘቀዘ በኋላ በመደበኛነት ያሄዳል"</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"ጡባዊዎ በራስ-ሰር ለመቀዝቀዝ ይሞክራል። አሁንም ጡባዊዎን መጠቀም ይችላሉ ነገር ግን ቀርፋፋ ሆኖ ሊያሄድ ይችላል።\n\nአንዴ ጡባዊዎ ከቀዘቀዘ በኋላ በመደበኛነት ያሄዳል።"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በጡባዊው ጫፍ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በመሣሪያው ጫፍ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በስልኩ ጫፍ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በጡባዊው በማንኛውም ጠርዝ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በመሣሪያው በማንኛውም ጠርዝ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"የጣት አሻራ ዳሳሹ የማብሪያ/ማጥፊያ ቁልፉ ላይ ነው። በስልኩ በማንኛውም ጠርዝ ላይ ከፍ ካለው የድምፅ አዝራር ቀጥሎ ያለው ጠፍጣፋ አዝራር ነው።"</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"ለተጨማሪ አማራጮች የእርስዎን ስልክ ይክፈቱ"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"ለተጨማሪ አማራጮች የእርስዎን ጡባዊ ይክፈቱ"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"ለተጨማሪ አማራጮች የእርስዎን መሣሪያ ይክፈቱ"</string> diff --git a/packages/SystemUI/res-product/values-ar/strings.xml b/packages/SystemUI/res-product/values-ar/strings.xml index 0ddb911f44aa..d365ef2ee5df 100644 --- a/packages/SystemUI/res-product/values-ar/strings.xml +++ b/packages/SystemUI/res-product/values-ar/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"سيحاول الهاتف تخفيض درجة حرارته تلقائيًا. سيظل بإمكانك استخدام هاتفك، ولكنه قد يعمل بشكل أبطأ.\n\nبعد أن تنخفض درجة حرارة الهاتف، سيستعيد سرعته المعتادة."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"سيحاول جهازك تخفيض درجة حرارته تلقائيًا. سيظل بإمكانك استخدام جهازك، ولكنه قد يعمل بشكل أبطأ.\n\nبعد أن تنخفض درجة حرارة الجهاز، سيستعيد سرعته المعتادة."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"سيحاول جهازك اللوحي تخفيض درجة حرارته تلقائيًا. سيظل بإمكانك استخدام جهازك اللوحي، ولكنه قد يعمل بشكل أبطأ.\n\nبعد أن تنخفض درجة حرارة الجهاز اللوحي، سيستعيد سرعته المعتادة."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"توجد أداة استشعار بصمة الإصبع على زر التشغيل. زر التشغيل هو الزر المسطّح بجانب زرَّي التحكّم بمستوى الصوت البارزَين في الجزء الجانبي من الجهاز اللوحي."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"توجد أداة استشعار بصمة الإصبع على زر التشغيل. زر التشغيل هو الزر المسطّح بجانب زرَّي التحكّم بمستوى الصوت البارزَين في إحدى حواف الجهاز اللوحي."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"توجد أداة استشعار بصمة الإصبع على زر التشغيل. زر التشغيل هو الزر المسطّح بجانب زرَّي التحكّم بمستوى الصوت البارزَين في الجزء الجانبي من الجهاز."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"توجد أداة استشعار بصمة الإصبع على زر التشغيل. زر التشغيل هو الزر المسطّح بجانب زرَّي التحكّم بمستوى الصوت البارزَين في الجزء الجانبي من الهاتف."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"توجد أداة استشعار بصمة الإصبع على زر التشغيل. زر التشغيل هو الزر المسطّح بجانب زرَّي التحكّم بمستوى الصوت البارزَين في إحدى حواف الهاتف."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"يمكنك فتح قفل هاتفك للوصول إلى مزيد من الخيارات."</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"يمكنك فتح قفل جهازك اللوحي للوصول إلى مزيد من الخيارات."</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"يمكنك فتح قفل جهازك للوصول إلى مزيد من الخيارات."</string> diff --git a/packages/SystemUI/res-product/values-be/strings.xml b/packages/SystemUI/res-product/values-be/strings.xml index f9ef0d5f1ebf..9b2658eeec89 100644 --- a/packages/SystemUI/res-product/values-be/strings.xml +++ b/packages/SystemUI/res-product/values-be/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Ваш тэлефон будзе астываць аўтаматычна. Вы можаце і далей ім карыстацца, але ён можа працаваць больш павольна.\n\nПасля таго як тэлефон астыне, ён будзе працаваць у звычайным рэжыме."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Ваша прылада будзе астываць аўтаматычна. Вы можаце і далей ёй карыстацца, але яна можа працаваць больш павольна.\n\nПасля таго як прылада астыне, яна будзе працаваць у звычайным рэжыме."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Ваш планшэт будзе астываць аўтаматычна. Вы можаце і далей ім карыстацца, але ён можа працаваць больш павольна.\n\nПасля таго як планшэт астыне, ён будзе працаваць у звычайным рэжыме."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сканер адбіткаў пальцаў знаходзіцца на кнопцы сілкавання. Гэта плоская кнопка побач з выпуклай кнопкай гучнасці на бакавой грані планшэта."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сканер адбіткаў пальцаў знаходзіцца на кнопцы сілкавання. Гэта плоская кнопка побач з выпуклай кнопкай гучнасці на адной з бакавых паверхняў планшэта."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Сканер адбіткаў пальцаў знаходзіцца на кнопцы сілкавання. Гэта плоская кнопка побач з выпуклай кнопкай гучнасці на бакавой грані прылады."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сканер адбіткаў пальцаў знаходзіцца на кнопцы сілкавання. Гэта плоская кнопка побач з выпуклай кнопкай гучнасці на бакавой грані тэлефона."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сканер адбіткаў пальцаў знаходзіцца на кнопцы сілкавання. Гэта плоская кнопка побач з выпуклай кнопкай гучнасці на адной з бакавых паверхняў тэлефона."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Каб адкрыць іншыя параметры, разблакіруйце тэлефон"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Каб адкрыць іншыя параметры, разблакіруйце планшэт"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Каб адкрыць іншыя параметры, разблакіруйце прыладу"</string> diff --git a/packages/SystemUI/res-product/values-bg/strings.xml b/packages/SystemUI/res-product/values-bg/strings.xml index 40140c4df396..039ece74f4a4 100644 --- a/packages/SystemUI/res-product/values-bg/strings.xml +++ b/packages/SystemUI/res-product/values-bg/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Телефонът ви автоматично ще направи опит да се охлади. Пак можете да го използвате, но той може да работи по-бавно.\n\nСлед като се охлади, ще работи нормално."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Устройството ви автоматично ще направи опит да се охлади. Пак можете да го използвате, но то може да работи по-бавно.\n\nСлед като се охлади, ще работи нормално."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Таблетът ви автоматично ще направи опит да се охлади. Пак можете да го използвате, но той може да работи по-бавно.\n\nСлед като се охлади, ще работи нормално."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сензорът за отпечатъци се намира върху бутона за захранване. Този бутон е плосък и е разположен на ръба на таблета до повдигнатия бутон за силата на звука."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сензорът за отпечатъци се намира върху бутона за захранване. Този бутон е плосък и е разположен отстрани на таблета до повдигнатия бутон за силата на звука."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Сензорът за отпечатъци се намира върху бутона за захранване. Този бутон е плосък и е разположен на ръба на устройството до повдигнатия бутон за силата на звука."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сензорът за отпечатъци се намира върху бутона за захранване. Този бутон е плосък и е разположен на ръба на телефона до повдигнатия бутон за силата на звука."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сензорът за отпечатъци се намира върху бутона за захранване. Този бутон е плосък и е разположен отстрани на телефона до повдигнатия бутон за силата на звука."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Отключете телефона си за още опции"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Отключете таблета си за още опции"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Отключете устройството си за още опции"</string> diff --git a/packages/SystemUI/res-product/values-ca/strings.xml b/packages/SystemUI/res-product/values-ca/strings.xml index 4b84a6bca16d..cfec9b2ecf61 100644 --- a/packages/SystemUI/res-product/values-ca/strings.xml +++ b/packages/SystemUI/res-product/values-ca/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"El telèfon provarà de refredar-se automàticament. Podràs continuar utilitzant-lo, però és possible que funcioni més lentament.\n\nUn cop s\'hagi refredat, funcionarà amb normalitat."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"El dispositiu provarà de refredar-se automàticament. Pots continuar utilitzant-lo, però és possible que funcioni més lentament.\n\nUn cop s\'hagi refredat, funcionarà amb normalitat."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"La tauleta provarà de refredar-se automàticament. Pots continuar utilitzant-la, però és possible que funcioni més lentament.\n\nUn cop s\'hagi refredat, funcionarà amb normalitat."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu al lateral de la tauleta."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu al lateral del dispositiu."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu al lateral del telèfon."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu als costats de la tauleta."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu als costats del dispositiu."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"El sensor d\'empremtes digitals es troba al botó d\'engegada. És el botó pla situat al costat del botó de volum amb relleu als costats del telèfon."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Desbloqueja el teu telèfon per veure més opcions"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Desbloqueja la teva tauleta per veure més opcions"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Desbloqueja el teu dispositiu per veure més opcions"</string> diff --git a/packages/SystemUI/res-product/values-de/strings.xml b/packages/SystemUI/res-product/values-de/strings.xml index 80389a498cc2..acf27a8d9035 100644 --- a/packages/SystemUI/res-product/values-de/strings.xml +++ b/packages/SystemUI/res-product/values-de/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Dein Smartphone kühlt sich automatisch ab. Du kannst es weiterhin nutzen, aber es reagiert möglicherweise langsamer.\n\nSobald dein Smartphone abgekühlt ist, funktioniert es wieder normal."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Dein Gerät kühlt sich automatisch ab. Du kannst es weiterhin nutzen, aber es reagiert möglicherweise langsamer.\n\nSobald dein Gerät abgekühlt ist, funktioniert es wieder normal."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Dein Tablet kühlt sich automatisch ab. Du kannst es weiterhin nutzen, aber es reagiert möglicherweise langsamer.\n\nSobald dein Tablet abgekühlt ist, funktioniert es wieder normal."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste am Rand des Tablets."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste am Rand des Geräts."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste am Rand des Smartphones."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste an einer der Seiten des Tablets."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste an einer der Seiten des Geräts."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Der Fingerabdrucksensor befindet sich auf der Ein-/Aus-Taste. Das ist die flache Taste neben der erhöhten Lautstärketaste an einer der Seiten des Smartphones."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Entsperre dein Smartphone für weitere Optionen"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Entsperre dein Tablet für weitere Optionen"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Entsperre dein Gerät für weitere Optionen"</string> diff --git a/packages/SystemUI/res-product/values-es/strings.xml b/packages/SystemUI/res-product/values-es/strings.xml index d39c6ed5fffa..90ebe9655354 100644 --- a/packages/SystemUI/res-product/values-es/strings.xml +++ b/packages/SystemUI/res-product/values-es/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"El teléfono intentará enfriarse automáticamente. Puedes seguir usándolo, pero es posible que funcione más lento.\n\nUna vez que el teléfono se haya enfriado, funcionará con normalidad."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"El dispositivo intentará enfriarse automáticamente. Puedes seguir usándolo, pero es posible que funcione más lento.\n\nUna vez que el dispositivo se haya enfriado, funcionará con normalidad."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"La tablet intentará enfriarse automáticamente. Puedes seguir usándola, pero es posible que funcione más lenta.\n\nUna vez que la tablet se haya enfriado, funcionará con normalidad."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve cerca de una de la esquinas de la tablet."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el lateral del dispositivo."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el lateral del teléfono."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el borde de la tablet."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el borde del dispositivo."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"El sensor de huellas digitales está en el botón de encendido. Es el botón plano situado junto al botón de volumen con relieve en el borde del teléfono."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Desbloquea el teléfono para ver más opciones"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Desbloquea el tablet para ver más opciones"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Desbloquea el dispositivo para ver más opciones"</string> diff --git a/packages/SystemUI/res-product/values-et/strings.xml b/packages/SystemUI/res-product/values-et/strings.xml index 8cd4ae6241e6..be1e084f5808 100644 --- a/packages/SystemUI/res-product/values-et/strings.xml +++ b/packages/SystemUI/res-product/values-et/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Teie telefon proovib automaatselt maha jahtuda. Saate telefoni ikka kasutada, kuid see võib olla aeglasem.\n\nKui telefon on jahtunud, töötab see tavapäraselt."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Teie seade proovib automaatselt maha jahtuda. Saate seadet ikka kasutada, kuid see võib olla aeglasem.\n\nKui seade on jahtunud, töötab see tavapäraselt."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Teie tahvelarvuti proovib automaatselt maha jahtuda. Saate tahvelarvutit ikka kasutada, kuid see võib olla aeglasem.\n\nKui tahvelarvuti on jahtunud, töötab see tavapäraselt."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Sõrmejäljeandur asub toitenupul. See on tahvelarvuti küljel helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Sõrmejäljeandur asub toitenupul. See on seadme küljel helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Sõrmejäljeandur asub toitenupul. See on telefoni küljel helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Sõrmejäljeandur asub toitenupul. See on tahvelarvuti serval helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Sõrmejäljeandur asub toitenupul. See on seadme serval helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Sõrmejäljeandur asub toitenupul. See on telefoni serval helitugevuse kõrgendatud nupu kõrval olev lame nupp."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Lisavalikute nägemiseks avage oma telefon"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Lisavalikute nägemiseks avage oma tahvelarvuti"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Lisavalikute nägemiseks avage oma seade"</string> diff --git a/packages/SystemUI/res-product/values-eu/strings.xml b/packages/SystemUI/res-product/values-eu/strings.xml index 032811c608b6..abd3f39f7e75 100644 --- a/packages/SystemUI/res-product/values-eu/strings.xml +++ b/packages/SystemUI/res-product/values-eu/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Telefonoa automatikoki saiatuko da hozten. Hoztu bitartean, erabiltzen jarrai dezakezu, baina baliteke mantsoago funtzionatzea.\n\nHozten denean, ohi bezala funtzionatuko du."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Gailua automatikoki saiatuko da hozten. Hoztu bitartean, erabiltzen jarrai dezakezu, baina baliteke mantsoago funtzionatzea.\n\nHozten denean, ohi bezala funtzionatuko du."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Tableta automatikoki saiatuko da hozten. Hoztu bitartean, erabiltzen jarrai dezakezu, baina baliteke mantsoago funtzionatzea.\n\nHozten denean, ohi bezala funtzionatuko du."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Hatz-marken sentsorea etengailuan dago. Tabletaren ertzeko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Hatz-marken sentsorea etengailuan dago. Gailuaren ertzeko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Hatz-marken sentsorea etengailuan dago. Telefonoaren ertzeko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Hatz-marken sentsorea etengailuan dago. Tabletaren ertzetako bateko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Hatz-marken sentsorea etengailuan dago. Gailuaren ertzetako bateko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Hatz-marken sentsorea etengailuan dago. Telefonoaren ertzetako bateko bolumen-botoi goratuaren ondoan dagoen botoi laua da."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Desblokeatu telefonoa aukera gehiago ikusteko"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Desblokeatu tableta aukera gehiago ikusteko"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Desblokeatu gailua aukera gehiago ikusteko"</string> diff --git a/packages/SystemUI/res-product/values-fa/strings.xml b/packages/SystemUI/res-product/values-fa/strings.xml index 30121ccad04a..40f8d0d44039 100644 --- a/packages/SystemUI/res-product/values-fa/strings.xml +++ b/packages/SystemUI/res-product/values-fa/strings.xml @@ -43,18 +43,18 @@ <string name="thermal_shutdown_title" product="default" msgid="8039593017174903505">"تلفن بهعلت گرم شدن خاموش شد"</string> <string name="thermal_shutdown_title" product="device" msgid="2954206342842856379">"دستگاه بهعلت گرم شدن خاموش شد"</string> <string name="thermal_shutdown_title" product="tablet" msgid="8941033526856177533">"رایانه لوحی بهعلت گرم شدن خاموش شد"</string> - <string name="thermal_shutdown_message" product="default" msgid="6685194547904051408">"اکنون عملکرد تلفنتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر ضربه بزنید"</string> - <string name="thermal_shutdown_message" product="device" msgid="3039675532521590478">"اکنون عملکرد دستگاهتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر ضربه بزنید"</string> - <string name="thermal_shutdown_message" product="tablet" msgid="5285898074484811386">"اکنون عملکرد رایانه لوحیتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر ضربه بزنید"</string> + <string name="thermal_shutdown_message" product="default" msgid="6685194547904051408">"اکنون عملکرد تلفنتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> + <string name="thermal_shutdown_message" product="device" msgid="3039675532521590478">"اکنون عملکرد دستگاهتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> + <string name="thermal_shutdown_message" product="tablet" msgid="5285898074484811386">"اکنون عملکرد رایانه لوحیتان به حالت عادی برگشته است.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> <string name="thermal_shutdown_dialog_message" product="default" msgid="6145923570358574186">"تلفنتان خیلی گرم شده بود، بنابراین خاموش شد تا خنک شود. اکنون تلفنتان عملکرد معمولش را دارد.\n\nتلفنتان ممکن است خیلی گرم شود، اگر:\n • از برنامههای نیازمند پردازش زیاد (مثل بازی، ویدیو، یا برنامههای ناوبری) استفاده کنید\n • فایلهای بزرگ بارگیری یا بارگذاری کنید\n • در دماهای بالا از تلفنتان استفاده کنید"</string> <string name="thermal_shutdown_dialog_message" product="device" msgid="3647879000909527365">"دستگاهتان خیلی گرم شده بود، بنابراین خاموش شد تا خنک شود. اکنون دستگاهتان عملکرد معمولش را دارد.\n\nدستگاهتان ممکن است خیلی گرم شود، اگر:\n • از برنامههای نیازمند پردازش زیاد (مثل بازی، ویدیو، یا برنامههای ناوبری) استفاده کنید\n • فایلهای بزرگ بارگیری یا بارگذاری کنید\n • در دماهای بالا از دستگاهتان استفاده کنید"</string> <string name="thermal_shutdown_dialog_message" product="tablet" msgid="8274487811928782165">"رایانه لوحیتان خیلی گرم شده بود، بنابراین خاموش شد تا خنک شود. اکنون رایانه لوحیتان عملکرد معمولش را دارد.\n\nرایانه لوحیتان ممکن است خیلی گرم شود، اگر:\n • از برنامههای نیازمند پردازش زیاد (مثل بازی، ویدیو، یا برنامههای ناوبری) استفاده کنید\n • فایلهای بزرگ بارگیری یا بارگذاری کنید\n • در دماهای بالا از رایانه لوحیتان استفاده کنید"</string> <string name="high_temp_title" product="default" msgid="5365000411304924115">"تلفن درحال گرم شدن است"</string> <string name="high_temp_title" product="device" msgid="6622009907401563664">"دستگاه درحال گرم شدن است"</string> <string name="high_temp_title" product="tablet" msgid="9039733706606446616">"رایانه لوحی درحال گرم شدن است"</string> - <string name="high_temp_notif_message" product="default" msgid="3928947950087257452">"وقتی تلفن درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر ضربه بزنید"</string> - <string name="high_temp_notif_message" product="device" msgid="6105125771372547292">"وقتی دستگاه درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر ضربه بزنید"</string> - <string name="high_temp_notif_message" product="tablet" msgid="7799279192797476850">"وقتی رایانه لوحی درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر ضربه بزنید"</string> + <string name="high_temp_notif_message" product="default" msgid="3928947950087257452">"وقتی تلفن درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> + <string name="high_temp_notif_message" product="device" msgid="6105125771372547292">"وقتی دستگاه درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> + <string name="high_temp_notif_message" product="tablet" msgid="7799279192797476850">"وقتی رایانه لوحی درحال خنک شدن است، بعضیاز ویژگیها محدود میشوند.\nبرای اطلاعات بیشتر تکضرب بزنید"</string> <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"تلفنتان بهطور خودکار سعی میکند خنک شود. همچنان میتوانید از تلفنتان استفاده کنید، اما ممکن است کندتر عمل کند.\n\nوقتی تلفن خنک شد، عملکرد عادیاش از سرگرفته میشود."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"دستگاهتان بهطور خودکار سعی میکند خنک شود. همچنان میتوانید از دستگاهتان استفاده کنید، اما ممکن است کندتر عمل کند.\n\nوقتی دستگاه خنک شد، عملکرد عادیاش از سرگرفته میشود."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"رایانه لوحیتان بهطور خودکار سعی میکند خنک شود. همچنان میتوانید از رایانه لوحیتان استفاده کنید، اما ممکن است کندتر عمل کند.\n\nوقتی رایانه لوحی خنک شد، عملکرد عادیاش از سرگرفته میشود."</string> diff --git a/packages/SystemUI/res-product/values-fr-rCA/strings.xml b/packages/SystemUI/res-product/values-fr-rCA/strings.xml index 1b6c6099b89d..eec07a58c1b8 100644 --- a/packages/SystemUI/res-product/values-fr-rCA/strings.xml +++ b/packages/SystemUI/res-product/values-fr-rCA/strings.xml @@ -32,12 +32,12 @@ <string name="kg_failed_attempts_now_wiping" product="default" msgid="6381835450014881813">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER">%d</xliff:g> reprises. Ce téléphone sera réinitialisé, ce qui entraîne la suppression de toutes les données qu\'il contient."</string> <string name="kg_failed_attempts_almost_at_erase_user" product="tablet" msgid="7325071812832605911">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentative(s) infructueuse(s) supplémentaire(s), cet utilisateur sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> <string name="kg_failed_attempts_almost_at_erase_user" product="default" msgid="8110939900089863103">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentative(s) infructueuse(s) supplémentaire(s), cet utilisateur sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> - <string name="kg_failed_attempts_now_erasing_user" product="tablet" msgid="8509811676952707883">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER">%d</xliff:g> reprises. Cet utilisateur sera supprimé, ce qui entraîne la suppression de toutes ses données."</string> + <string name="kg_failed_attempts_now_erasing_user" product="tablet" msgid="8509811676952707883">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER">%d</xliff:g> reprises. Cet utilisateur sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> <string name="kg_failed_attempts_now_erasing_user" product="default" msgid="3051962486994265014">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER">%d</xliff:g> reprises. Cet utilisateur sera supprimé, ce qui entraîne la suppression de toutes ses données."</string> - <string name="kg_failed_attempts_almost_at_erase_profile" product="tablet" msgid="1049523640263353830">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentative(s) infructueuse(s) supplémentaire(s), le profil professionnel sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> - <string name="kg_failed_attempts_almost_at_erase_profile" product="default" msgid="3280816298678433681">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentative(s) infructueuse(s) supplémentaire(s), le profil professionnel sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> - <string name="kg_failed_attempts_now_erasing_profile" product="tablet" msgid="4417100487251371559">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER">%d</xliff:g> reprises. Le profil professionnel sera supprimé, ce qui entraîne la suppression de toutes ses données."</string> - <string name="kg_failed_attempts_now_erasing_profile" product="default" msgid="4682221342671290678">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER">%d</xliff:g> reprises. Le profil professionnel sera supprimé, ce qui entraîne la suppression de toutes ses données."</string> + <string name="kg_failed_attempts_almost_at_erase_profile" product="tablet" msgid="1049523640263353830">"Vous avez tenté de déverrouiller cette tablette à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentatives infructueuses supplémentaires, le profil professionnel sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> + <string name="kg_failed_attempts_almost_at_erase_profile" product="default" msgid="3280816298678433681">"Vous avez tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Après <xliff:g id="NUMBER_1">%2$d</xliff:g> tentatives infructueuses supplémentaires, le profil professionnel sera supprimé, ce qui entraînera la suppression de toutes ses données."</string> + <string name="kg_failed_attempts_now_erasing_profile" product="tablet" msgid="4417100487251371559">"Vous avez incorrectement tenté de déverrouiller cette tablette à <xliff:g id="NUMBER">%d</xliff:g> reprises. Le profil professionnel sera retiré, ce qui entraîne la suppression de toutes ses données."</string> + <string name="kg_failed_attempts_now_erasing_profile" product="default" msgid="4682221342671290678">"Vous avez incorrectement tenté de déverrouiller ce téléphone à <xliff:g id="NUMBER">%d</xliff:g> reprises. Le profil professionnel sera retiré, ce qui entraînera la suppression de toutes ses données."</string> <string name="kg_failed_attempts_almost_at_login" product="tablet" msgid="1860049973474855672">"Vous avez dessiné un schéma de déverrouillage incorrect à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Si vous échouez encore <xliff:g id="NUMBER_1">%2$d</xliff:g> fois, vous devrez déverrouiller votre tablette à l\'aide d\'un compte de courriel.\n\nVeuillez réessayer dans <xliff:g id="NUMBER_2">%3$d</xliff:g> secondes."</string> <string name="kg_failed_attempts_almost_at_login" product="default" msgid="44112553371516141">"Vous avez dessiné un schéma de déverrouillage incorrect à <xliff:g id="NUMBER_0">%1$d</xliff:g> reprises. Si vous échouez encore <xliff:g id="NUMBER_1">%2$d</xliff:g> fois, vous devrez déverrouiller votre téléphone à l\'aide d\'un compte de courriel.\n\nVeuillez réessayer dans <xliff:g id="NUMBER_2">%3$d</xliff:g> secondes."</string> <string name="thermal_shutdown_title" product="default" msgid="8039593017174903505">"Le téléphone s\'est éteint; surchauffage."</string> @@ -46,9 +46,9 @@ <string name="thermal_shutdown_message" product="default" msgid="6685194547904051408">"Votre téléphone fonctionne normalement maintenant.\nTouchez pour en savoir plus"</string> <string name="thermal_shutdown_message" product="device" msgid="3039675532521590478">"Votre appareil fonctionne normalement maintenant.\nTouchez pour en savoir plus"</string> <string name="thermal_shutdown_message" product="tablet" msgid="5285898074484811386">"Votre tablette fonctionne normalement maintenant.\nTouchez pour en savoir plus."</string> - <string name="thermal_shutdown_dialog_message" product="default" msgid="6145923570358574186">"Votre téléphone surchauffait et s\'est éteint afin de se refroidir. Il fonctionne normalement maintenant.\n\nIl peut surchauffer si vous :\n • utilisez. des applications qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • si vous l\'utilisez lors de températures élevées."</string> - <string name="thermal_shutdown_dialog_message" product="device" msgid="3647879000909527365">"Votre téléphone surchauffait et s\'est éteint afin de se refroidir. Il fonctionne normalement maintenant.\n\nIl peut surchauffer si vous :\n • utilisez. des applications qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • ou si vous l\'utilisez lors de températures élevées."</string> - <string name="thermal_shutdown_dialog_message" product="tablet" msgid="8274487811928782165">"Votre tablette surchauffait et s\'est éteinte afin de se refroidir. Elle fonctionne normalement maintenant.\n\nElle peut surchauffer si vous :\n • utilisez. des applications qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • si vous l\'utilisez lors de températures élevées."</string> + <string name="thermal_shutdown_dialog_message" product="default" msgid="6145923570358574186">"Votre téléphone surchauffait et s\'est éteint afin de se refroidir. Il fonctionne normalement maintenant.\n\nIl peut surchauffer si vous :\n • utilisez. des applis qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • si vous l\'utilisez lors de températures élevées."</string> + <string name="thermal_shutdown_dialog_message" product="device" msgid="3647879000909527365">"Votre téléphone surchauffait et s\'est éteint afin de se refroidir. Il fonctionne normalement maintenant.\n\nIl peut surchauffer si vous :\n • utilisez. des applis qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • ou si vous l\'utilisez lors de températures élevées."</string> + <string name="thermal_shutdown_dialog_message" product="tablet" msgid="8274487811928782165">"Votre tablette surchauffait et s\'est éteinte afin de se refroidir. Elle fonctionne normalement maintenant.\n\nElle peut surchauffer si vous :\n • utilisez. des applis qui utilisent beaucoup de ressources (jeux, vidéo, navigation, etc.)\n • téléchargez ou téléversez des fichiers lourds \n • si vous l\'utilisez lors de températures élevées."</string> <string name="high_temp_title" product="default" msgid="5365000411304924115">"Le téléphone surchauffe"</string> <string name="high_temp_title" product="device" msgid="6622009907401563664">"L\'appareil surchauffe"</string> <string name="high_temp_title" product="tablet" msgid="9039733706606446616">"La tablette surchauffe"</string> @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Votre téléphone va se refroidir automatiquement. Vous pouvez toujours l\'utiliser, mais il risque d\'être plus lent.\n\nUne fois refroidi, il va fonctionner normalement."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Votre téléphone va se refroidir automatiquement. Vous pouvez toujours utiliser votre téléphone, mais il risque d\'être plus lent.\n\nUne fois refroidi, il fonctionnera normalement."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Votre tablette va se refroidir automatiquement. Vous pouvez toujours utiliser votre tablette, mais elle risque d\'être plus lente.\n\nUne fois refroidie, elle va fonctionner normalement."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur le bord de la tablette."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur le bord de l\'appareil."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur le bord du téléphone."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur l\'un des bords de la tablette."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur l\'un des bords de l\'appareil."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Le capteur d\'empreintes digitales est situé sur l\'interrupteur. Il s\'agit du bouton plat situé à côté du bouton de volume surélevé, sur l\'un des bords du téléphone."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Déverrouillez votre téléphone pour afficher davantage d\'options"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Déverrouillez votre tablette pour afficher davantage d\'options"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Déverrouillez votre appareil pour afficher davantage d\'options"</string> diff --git a/packages/SystemUI/res-product/values-hu/strings.xml b/packages/SystemUI/res-product/values-hu/strings.xml index 34f20a0450f0..97feff800e5a 100644 --- a/packages/SystemUI/res-product/values-hu/strings.xml +++ b/packages/SystemUI/res-product/values-hu/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"A telefon automatikusan megpróbál lehűlni. Továbbra is tudja használni a telefont, de elképzelhető, hogy működése lelassul.\n\nAmint a telefon lehűl, újra a szokásos módon működik majd."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Az eszköz automatikusan megpróbál lehűlni. Továbbra is tudja használni, de elképzelhető, hogy működése lelassul.\n\nAmint az eszköz lehűl, újra a szokásos módon működik majd."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"A táblagép automatikusan megpróbál lehűlni. Továbbra is tudja használni, de elképzelhető, hogy működése lelassul.\n\nAmint a táblagép lehűl, újra a szokásos módon működik majd."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb a táblagép szélén."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb az eszköz szélén."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb a telefon szélén."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb a táblagép valamelyik oldalán."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb az eszköz valamelyik oldalán."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Az ujjlenyomat-érzékelő a bekapcsológombon található. Ez a kiemelkedő hangerőgomb melletti lapos gomb a telefon valamelyik oldalán."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"További lehetőségekért oldja fel a telefont"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"További lehetőségekért oldja fel a táblagépet"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"További lehetőségekért oldja fel az eszközt"</string> diff --git a/packages/SystemUI/res-product/values-hy/strings.xml b/packages/SystemUI/res-product/values-hy/strings.xml index f527eaba4ee5..8e4c75ad969d 100644 --- a/packages/SystemUI/res-product/values-hy/strings.xml +++ b/packages/SystemUI/res-product/values-hy/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Ձեր հեռախոսն ավտոմատ կերպով կփորձի hովանալ։ Կարող եք շարունակել օգտագործել հեռախոսը, սակայն հնարավոր է, որ այն ավելի դանդաղ աշխատի։\n\nՀովանալուց հետո հեռախոսը կաշխատի կանոնավոր կերպով։"</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Ձեր սարքը ավտոմատ կերպով կփորձի hովանալ։ Կարող եք շարունակել օգտագործել սարքը, սակայն հնարավոր է, որ այն ավելի դանդաղ աշխատի:\n\nՀովանալուց հետո սարքը կաշխատի կանոնավոր կերպով։"</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Ձեր պլանշետը ավտոմատ կերպով կփորձի hովանալ։ Կարող եք շարունակել օգտագործել պլանշետը, սակայն հնարավոր է, որ այն ավելի դանդաղ աշխատի:\n\nՀովանալուց հետո պլանշետը կաշխատի կանոնավոր կերպով։"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ պլանշետի կողային մասում։"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ սարքի կողային մասում։"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ հեռախոսի կողային մասում։"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ պլանշետի եզրին։"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ սարքի եզրին։"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Մատնահետքերի սկաները սնուցման կոճակի վրա է։ Այն հարթ կոճակ է ձայնի ուժգնության ուռուցիկ կոճակի կողքին՝ հեռախոսի եզրին։"</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Ապակողպեք ձեր հեռախոսը՝ լրացուցիչ կարգավորումները տեսնելու համար"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Ապակողպեք ձեր պլանշետը՝ լրացուցիչ կարգավորումները տեսնելու համար"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Ապակողպեք ձեր սարքը՝ լրացուցիչ կարգավորումները տեսնելու համար"</string> diff --git a/packages/SystemUI/res-product/values-is/strings.xml b/packages/SystemUI/res-product/values-is/strings.xml index 0f3f71cb9979..a39dd2daec8d 100644 --- a/packages/SystemUI/res-product/values-is/strings.xml +++ b/packages/SystemUI/res-product/values-is/strings.xml @@ -58,7 +58,7 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Síminn reynir að kæla sig sjálfkrafa. Þú getur áfram notað símann en hann gæti verið hægvirkari.\n\nÞegar síminn hefur kælt sig mun hann virka eðlilega."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Tækið reynir að kæla sig sjálfkrafa. Þú getur áfram notað tækið en það gæti verið hægvirkara.\n\nÞegar tækið hefur kælt sig mun það virka eðlilega."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Spjaldtölvan reynir að kæla sig sjálfkrafa. Þú getur áfram notað spjaldtölvuna en hún gæti verið hægvirkari.\n\nÞegar spjaldtölvan hefur kælt sig mun hún virka eðlilega."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Fingrafaralesarinn er á aflrofanum. Það er flati hnappurinn við hliðina á upphleypta hljóðstyrkshnappnum á hlið spjaldtölvunnar."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Fingrafaralesarinn er á aflrofanum. Það er flati hnappurinn við hliðina á upphleypta hljóðstyrkshnappnum á brún spjaldtölvunnar."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Fingrafaralesarinn er á aflrofanum. Það er flati hnappurinn við hliðina á upphleypta hljóðstyrkshnappnum á hlið tækisins."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Fingrafaralesarinn er á aflrofanum. Það er flati hnappurinn við hliðina á upphleypta hljóðstyrkshnappnum á hlið símans."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Taktu símann úr lás til að fá fleiri valkosti"</string> diff --git a/packages/SystemUI/res-product/values-iw/strings.xml b/packages/SystemUI/res-product/values-iw/strings.xml index 9365dd996301..5049d101b564 100644 --- a/packages/SystemUI/res-product/values-iw/strings.xml +++ b/packages/SystemUI/res-product/values-iw/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"קירור הטלפון ייעשה באופן אוטומטי. אפשר עדיין להשתמש בטלפון, אבל ייתכן שהוא יפעל לאט יותר.\n\nהטלפון יחזור לפעול כרגיל לאחר שיתקרר."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"קירור המכשיר ייעשה באופן אוטומטי. אפשר עדיין להשתמש במכשיר אבל ייתכן שהוא יפעל לאט יותר.\n\nהמכשיר יחזור לפעול כרגיל לאחר שיתקרר."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"קירור הטאבלט ייעשה באופן אוטומטי. אפשר עדיין להשתמש בטאבלט אבל ייתכן שהוא יפעל לאט יותר.\n\nהטאבלט יחזור לפעול כרגיל לאחר שיתקרר."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"חיישן טביעות האצבע נמצא על לחצן ההפעלה. זה הלחצן השטוח ליד הלחצן הבולט של עוצמת הקול בשולי הטאבלט."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"חיישן טביעות האצבע נמצא על לחצן ההפעלה. זה הלחצן השטוח ליד הלחצן הבולט של עוצמת הקול בקצה הטאבלט."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"חיישן טביעות האצבע נמצא על לחצן ההפעלה. זה הלחצן השטוח ליד הלחצן הבולט של עוצמת הקול בשולי המכשיר."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"חיישן טביעות האצבע נמצא על לחצן ההפעלה. זה הלחצן השטוח ליד הלחצן הבולט של עוצמת הקול בשולי הטלפון."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"חיישן טביעות האצבע נמצא על לחצן ההפעלה. זה הלחצן השטוח ליד הלחצן הבולט של עוצמת הקול בקצה הטלפון."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"לאפשרויות נוספות, יש לבטל את נעילת הטלפון"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"לאפשרויות נוספות, יש לבטל את נעילת הטאבלט"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"לאפשרויות נוספות, יש לבטל את נעילת המכשיר"</string> diff --git a/packages/SystemUI/res-product/values-ja/strings.xml b/packages/SystemUI/res-product/values-ja/strings.xml index 9d054c9fd2b8..cd7f1c14c2b3 100644 --- a/packages/SystemUI/res-product/values-ja/strings.xml +++ b/packages/SystemUI/res-product/values-ja/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"スマートフォンは自動的にクールダウンを行います。その間もスマートフォンを使用できますが、動作が遅くなる可能性があります。\n\nクールダウンが完了すると、通常どおり動作します。"</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"デバイスは自動的にクールダウンを行います。その間もデバイスを使用できますが、動作が遅くなる可能性があります。\n\nクールダウンが完了すると、通常どおり動作します。"</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"タブレットは自動的にクールダウンを行います。その間もタブレットを使用できますが、動作が遅くなる可能性があります。\n\nクールダウンが完了すると、通常どおり動作します。"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"指紋認証センサーは電源ボタンに内蔵されています。タブレット側面のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"指紋認証センサーは電源ボタンに内蔵されています。デバイス側面のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"指紋認証センサーは電源ボタンに内蔵されています。スマートフォン側面のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"指紋認証センサーは電源ボタンに内蔵されています。タブレット縁のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"指紋認証センサーは電源ボタンに内蔵されています。デバイス縁のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"指紋認証センサーは電源ボタンに内蔵されています。スマートフォン縁のボタンのうち、音量ボタンの横にあるフラットなボタンです。"</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"スマートフォンのロックを解除してその他のオプションを表示する"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"タブレットのロックを解除してその他のオプションを表示する"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"デバイスのロックを解除してその他のオプションを表示する"</string> diff --git a/packages/SystemUI/res-product/values-ko/strings.xml b/packages/SystemUI/res-product/values-ko/strings.xml index cb4a6206dbfb..c894120e2a09 100644 --- a/packages/SystemUI/res-product/values-ko/strings.xml +++ b/packages/SystemUI/res-product/values-ko/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"휴대전화가 자동으로 온도를 낮추려고 시도합니다. 휴대전화를 계속 사용할 수는 있지만 작동이 느려질 수도 있습니다.\n\n휴대전화 온도가 낮아지면 정상적으로 작동됩니다."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"기기가 자동으로 온도를 낮추려고 시도합니다. 기기를 계속 사용할 수는 있지만 작동이 느려질 수도 있습니다.\n\n기기 온도가 낮아지면 정상적으로 작동됩니다."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"태블릿이 자동으로 온도를 낮추려고 시도합니다. 태블릿을 계속 사용할 수 있지만 작동이 느려질 수도 있습니다.\n\n태블릿 온도가 낮아지면 정상적으로 작동합니다."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"지문 센서는 전원 버튼에 있습니다. 태블릿 옆면에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"지문 센서는 전원 버튼에 있습니다. 기기 옆면에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"지문 센서는 전원 버튼에 있습니다. 휴대전화 옆면에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"지문 센서는 전원 버튼에 있습니다. 태블릿 테두리에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"지문 센서는 전원 버튼에 있습니다. 기기 테두리에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"지문 센서는 전원 버튼에 있습니다. 휴대전화 테두리에 있는 튀어나온 볼륨 버튼 옆의 평평한 버튼입니다."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"더 많은 옵션을 확인하려면 휴대전화를 잠금 해제하세요."</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"더 많은 옵션을 확인하려면 태블릿을 잠금 해제하세요."</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"더 많은 옵션을 확인하려면 기기를 잠금 해제하세요."</string> diff --git a/packages/SystemUI/res-product/values-ky/strings.xml b/packages/SystemUI/res-product/values-ky/strings.xml index 8bd066f0241e..11e7f6faa008 100644 --- a/packages/SystemUI/res-product/values-ky/strings.xml +++ b/packages/SystemUI/res-product/values-ky/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Телефонуңуз автоматтык түрдө сууйт. Аны колдоно берсеңиз болот, бирок ал жайыраак иштеп калат.\n\nТелефонуңуз суугандан кийин адаттагыдай эле иштеп баштайт."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Түзмөгүңүз автоматтык түрдө сууйт. Аны колдоно берсеңиз болот, бирок ал жайыраак иштеп калат.\n\nТүзмөгүңүз суугандан кийин адаттагыдай эле иштеп баштайт."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Планшетиңиз автоматтык түрдө сууйт. Аны колдоно берсеңиз болот, бирок ал жайыраак иштеп калат.\n\nПланшетиңиз суугандан кийин адаттагыдай эле иштеп баштайт."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Манжа изинин сенсору кубат баскычында жайгашкан. Бул планшеттин четиндеги үндү катуулатуу/акырындатуу баскычынын (көтөрүлгөн) жанындагы жалпак баскыч."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Манжа изинин сенсору кубат баскычында жайгашкан. Бул планшеттин кырындагы үндү катуулатуу/акырындатуу баскычынын (көтөрүлгөн) жанындагы жалпак баскыч."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Манжа изинин сенсору кубат баскычында жайгашкан. Бул түзмөктүн четиндеги үндү катуулатуу/акырындатуу баскычынын (көтөрүлгөн) жанындагы жалпак баскыч."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Манжа изинин сенсору кубат баскычында жайгашкан. Бул телефондун четиндеги үндү катуулатуу/акырындатуу баскычынын (көтөрүлгөн) жанындагы жалпак баскыч."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Манжа изинин сенсору кубат баскычында жайгашкан. Бул телефондун кырындагы үндү катуулатуу/акырындатуу баскычынын (көтөрүлгөн) жанындагы жалпак баскыч."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Дагы башка параметрлерди көрүү үчүн телефонуңуздун кулпусун ачыңыз"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Дагы башка параметрлерди көрүү үчүн планшетиңиздин кулпусун ачыңыз"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Дагы башка параметрлерди көрүү үчүн түзмөгүңүздүн кулпусун ачыңыз"</string> diff --git a/packages/SystemUI/res-product/values-ml/strings.xml b/packages/SystemUI/res-product/values-ml/strings.xml index 55cfd0613327..0fc494c61f4e 100644 --- a/packages/SystemUI/res-product/values-ml/strings.xml +++ b/packages/SystemUI/res-product/values-ml/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"നിങ്ങളുടെ ഫോൺ സ്വയമേവ തണുക്കാൻ ശ്രമിക്കും. നിങ്ങൾക്ക് അപ്പോഴും ഫോൺ ഉപയോഗിക്കാമെങ്കിലും അതിന്റെ പ്രവർത്തനം മന്ദഗതിയിലായിരിക്കാം.\n\nതണുത്തുകഴിഞ്ഞാൽ ഫോൺ സാധാരണപോലെ പ്രവർത്തിക്കും."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"നിങ്ങളുടെ ഉപകരണം സ്വയമേവ തണുക്കാൻ ശ്രമിക്കും. നിങ്ങൾക്ക് അപ്പോഴും ഉപകരണം ഉപയോഗിക്കാമെങ്കിലും അതിന്റെ പ്രവർത്തനം മന്ദഗതിയിലായിരിക്കാം.\n\nതണുത്തുകഴിഞ്ഞാൽ ഉപകരണം സാധാരണപോലെ പ്രവർത്തിക്കും."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"നിങ്ങളുടെ ടാബ്ലെറ്റ് സ്വയമേവ തണുക്കാൻ ശ്രമിക്കും. നിങ്ങൾക്ക് അപ്പോഴും ടാബ്ലെറ്റ് ഉപയോഗിക്കാമെങ്കിലും അതിന്റെ പ്രവർത്തനം മന്ദഗതിയിലായിരിക്കാം.\n\nതണുത്തുകഴിഞ്ഞാൽ ടാബ്ലെറ്റ് സാധാരണപോലെ പ്രവർത്തിക്കും."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ടാബ്ലെറ്റിന്റെ അറ്റത്ത് ഉയർന്ന് നിൽക്കുന്ന ശബ്ദ ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ഉപകരണത്തിന്റെ അറ്റത്ത് ഉയർന്ന് നിൽക്കുന്ന ശബ്ദ ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ഫോണിന്റെ അറ്റത്ത് ഉയർന്ന് നിൽക്കുന്ന ശബ്ദ ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ടാബ്ലെറ്റിന്റെ അരികിൽ ഉയർന്ന് നിൽക്കുന്ന വോളിയം ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ഉപകരണത്തിന്റെ അരികുഭാഗത്ത് ഉയർന്ന് നിൽക്കുന്ന വോളിയം ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"പവർ ബട്ടണിലാണ് ഫിംഗർപ്രിന്റ് സെൻസർ ഉള്ളത്. ഫോണിന്റെ അരികുഭാഗത്ത് ഉയർന്ന് നിൽക്കുന്ന വോളിയം ബട്ടണിന്റെ അടുത്തുള്ള പരന്ന ബട്ടൺ ആണ് ഇത്."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് നിങ്ങളുടെ ഫോൺ അൺലോക്ക് ചെയ്യുക"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് നിങ്ങളുടെ ടാബ്ലെറ്റ് അൺലോക്ക് ചെയ്യുക"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"കൂടുതൽ ഓപ്ഷനുകൾക്ക് നിങ്ങളുടെ ഉപകരണം അൺലോക്ക് ചെയ്യുക"</string> diff --git a/packages/SystemUI/res-product/values-nb/strings.xml b/packages/SystemUI/res-product/values-nb/strings.xml index 533a9b8822b5..aaa0a032de9d 100644 --- a/packages/SystemUI/res-product/values-nb/strings.xml +++ b/packages/SystemUI/res-product/values-nb/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Telefonen prøver automatisk å kjøle seg ned. Du kan fremdeles bruke den, men den kjører muligens saktere.\n\nNår telefonen har kjølt seg ned, kjører den som normalt."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Enheten prøver automatisk å kjøle seg ned. Du kan fremdeles bruke den, men den kjører muligens saktere.\n\nNår enheten har kjølt seg ned, kjører den som normalt."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Nettbrettet prøver automatisk å kjøle seg ned. Du kan fremdeles bruke det, men det kjører muligens saktere.\n\nNår nettbrettet har kjølt seg ned, kjører det som normalt."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Fingeravtrykkssensoren er på av/på-knappen. Det er den flate knappen ved siden av den hevede volumknappen på siden av nettbrettet."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Fingeravtrykkssensoren er på av/på-knappen. Det er den flate knappen ved siden av den hevede volumknappen på nettbrettets kant."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Fingeravtrykkssensoren er på av/på-knappen. Det er den flate knappen ved siden av den hevede volumknappen på siden av enheten."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Fingeravtrykkssensoren er på av/på-knappen. Det er den flate knappen ved siden av den hevede volumknappen på siden av telefonen."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Fingeravtrykkssensoren er på av/på-knappen. Det er den flate knappen ved siden av den hevede volumknappen på telefonens kant."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Lås opp telefonen din for å få flere alternativer"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Lås opp nettbrettet ditt for å få flere alternativer"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Lås opp enheten din for å få flere alternativer"</string> diff --git a/packages/SystemUI/res-product/values-nl/strings.xml b/packages/SystemUI/res-product/values-nl/strings.xml index abdc7eefe2b0..f4b6eea6b1b5 100644 --- a/packages/SystemUI/res-product/values-nl/strings.xml +++ b/packages/SystemUI/res-product/values-nl/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Je telefoon probeert automatisch af te koelen. Je kunt je telefoon nog steeds gebruiken, maar deze kan langzamer werken.\n\nZodra de telefoon is afgekoeld, werkt deze weer normaal."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Je apparaat probeert automatisch af te koelen. Je kunt je apparaat nog steeds gebruiken, maar het kan langzamer werken.\n\nZodra het apparaat is afgekoeld, werkt het weer normaal."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Je tablet probeert automatisch af te koelen. Je kunt je tablet nog steeds gebruiken, maar deze kan langzamer werken.\n\nZodra de tablet is afgekoeld, werkt deze weer normaal."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de zijkant van de tablet."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de zijkant van het apparaat."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de zijkant van de telefoon."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de rand van de tablet."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de rand van het apparaat."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Je vindt de vingerafdruksensor op de aan/uit-knop. Het is de platte knop naast de verhoogde volumeknop aan de rand van de telefoon."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Ontgrendel je telefoon voor meer opties"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Ontgrendel je tablet voor meer opties"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Ontgrendel je apparaat voor meer opties"</string> diff --git a/packages/SystemUI/res-product/values-or/strings.xml b/packages/SystemUI/res-product/values-or/strings.xml index a89dd7b78da1..4a6696869bd6 100644 --- a/packages/SystemUI/res-product/values-or/strings.xml +++ b/packages/SystemUI/res-product/values-or/strings.xml @@ -33,7 +33,7 @@ <string name="kg_failed_attempts_almost_at_erase_user" product="tablet" msgid="7325071812832605911">"ଆପଣ ଟାବଲେଟକୁ ଅନଲକ କରିବାକୁ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g> ଭୁଲ ପ୍ରୟାସ ପରେ, ଏହି ୟୁଜର ପ୍ରୋଫାଇଲ୍କୁ କାଢ଼ି ଦିଆଯିବ, ଯାହା ଫଳରେ ସମସ୍ତ ୟୁଜର ଡାଟା ଡିଲିଟ ହୋଇଯିବ।"</string> <string name="kg_failed_attempts_almost_at_erase_user" product="default" msgid="8110939900089863103">"ଆପଣ ଫୋନକୁ ଅନଲକ କରିବାକୁ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g> ଭୁଲ ପ୍ରୟାସ ପରେ, ଏହି ୟୁଜର ପ୍ରୋଫାଇଲକୁ କାଢ଼ି ଦିଆଯିବ, ଯାହା ଫଳରେ ସମସ୍ତ ୟୁଜର ଡାଟା ଡିଲିଟ ହୋଇଯିବ।"</string> <string name="kg_failed_attempts_now_erasing_user" product="tablet" msgid="8509811676952707883">"ଆପଣ ଟାବଲେଟକୁ ଅନଲକ କରିବାକୁ <xliff:g id="NUMBER">%d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଏହି ୟୁଜରଙ୍କୁ ବାହାର କରିଦିଆଯିବ, ଯାହାଦ୍ୱାରା ସମସ୍ତ ଉପଯୋଗକର୍ତ୍ତା ଡାଟା ଡିଲିଟ ହୋଇଯିବ।"</string> - <string name="kg_failed_attempts_now_erasing_user" product="default" msgid="3051962486994265014">"ଆପଣ ଫୋନ୍କୁ ଅନ୍ଲକ୍ କରିବାକୁ <xliff:g id="NUMBER">%d</xliff:g>ଥର ଭୁଲ୍ ପ୍ରୟାସ କରିଛନ୍ତି। ଏହି ଉପଯୋଗକର୍ତ୍ତାଙ୍କୁ ବାହାର କରିଦିଆଯିବ, ଯାହାଦ୍ୱାରା ସମସ୍ତ ଉପଯୋଗକର୍ତ୍ତା ଡାଟା ଡିଲିଟ୍ ହେବ।"</string> + <string name="kg_failed_attempts_now_erasing_user" product="default" msgid="3051962486994265014">"ଆପଣ ଫୋନକୁ ଅନଲକ କରିବାକୁ <xliff:g id="NUMBER">%d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଏହି ୟୁଜରଙ୍କୁ ବାହାର କରିଦିଆଯିବ, ଯାହା ଦ୍ୱାରା ସମସ୍ତ ୟୁଜର ଡାଟା ଡିଲିଟ ହେବ।"</string> <string name="kg_failed_attempts_almost_at_erase_profile" product="tablet" msgid="1049523640263353830">"ଆପଣ ଟାବ୍ଲେଟ୍କୁ ଅନ୍ଲକ୍ କରିବାକୁ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ୍ ପ୍ରୟାସ ପରେ, ୱାର୍କ ପ୍ରୋଫାଇଲ୍କୁ ବାହାର କରିଦିଆଯିବ, ଯାହା ଫଳରେ ସମସ୍ତ ପ୍ରୋଫାଇଲ୍ ଡାଟା ଡିଲିଟ୍ ହେବ।"</string> <string name="kg_failed_attempts_almost_at_erase_profile" product="default" msgid="3280816298678433681">"ଆପଣ ଫୋନ୍କୁ ଅନ୍ଲକ୍ କରିବାକୁ <xliff:g id="NUMBER_0">%1$d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। ଆଉ <xliff:g id="NUMBER_1">%2$d</xliff:g>ଟି ଭୁଲ୍ ପ୍ରୟାସ ପରେ, ୱାର୍କ ପ୍ରୋଫାଇଲ୍କୁ ବାହାର କରିଦିଆଯିବ, ଯାହା ଫଳରେ ସମସ୍ତ ପ୍ରୋଫାଇଲ୍ ଡାଟା ଡିଲିଟ୍ ହେବ।"</string> <string name="kg_failed_attempts_now_erasing_profile" product="tablet" msgid="4417100487251371559">"ଆପଣ ଟାବ୍ଲେଟ୍କୁ ଅନ୍ଲକ୍ କରିବାକୁ<xliff:g id="NUMBER">%d</xliff:g>ଥର ଭୁଲ ପ୍ରୟାସ କରିଛନ୍ତି। କାର୍ଯ୍ୟ ପ୍ରୋଫାଇଲ୍ ବାହାର କରିଦିଆଯିବ, ଯାହା ଫଳରେ ସମସ୍ତ ପ୍ରୋଫାଇଲ୍ ଡାଟା ଡିଲିଟ୍ ହେବ।"</string> diff --git a/packages/SystemUI/res-product/values-pl/strings.xml b/packages/SystemUI/res-product/values-pl/strings.xml index 286a24219fbe..4e5ad3f95a0f 100644 --- a/packages/SystemUI/res-product/values-pl/strings.xml +++ b/packages/SystemUI/res-product/values-pl/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Telefon automatycznie podejmie próbę obniżenia temperatury. Możesz go wciąż używać, ale może działać wolniej.\n\nGdy temperatura się obniży, telefon będzie działać normalnie."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Urządzenie automatycznie podejmie próbę obniżenia temperatury. Możesz go wciąż używać, ale może działać wolniej.\n\nGdy temperatura się obniży, urządzenie będzie działać normalnie."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Tablet automatycznie podejmie próbę obniżenia temperatury. Możesz go wciąż używać, ale może działać wolniej.\n\nGdy temperatura się obniży, tablet będzie działać normalnie."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na krawędzi tabletu."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na krawędzi urządzenia."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na krawędzi telefonu."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na jednej z krawędzi tabletu."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na jednej z krawędzi urządzenia."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Czytnik linii papilarnych znajduje się na przycisku zasilania. To płaski przycisk przy uniesionym przycisku głośności na jednej z krawędzi telefonu."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Odblokuj telefon, by wyświetlić więcej opcji"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Odblokuj tablet, by wyświetlić więcej opcji"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Odblokuj urządzenie, by wyświetlić więcej opcji"</string> diff --git a/packages/SystemUI/res-product/values-sk/strings.xml b/packages/SystemUI/res-product/values-sk/strings.xml index 8e1bb3968608..fbf5ee757625 100644 --- a/packages/SystemUI/res-product/values-sk/strings.xml +++ b/packages/SystemUI/res-product/values-sk/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Váš telefón sa automaticky pokúsi schladiť. Môžete ho naďalej používať, ale môže fungovať pomalšie.\n\nPo poklese teploty bude fungovať ako obvykle."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Vaše zariadenie sa automaticky pokúsi schladiť. Môžete ho naďalej používať, ale môže fungovať pomalšie.\n\nPo poklese teploty bude fungovať ako obvykle."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Váš tablet sa automaticky pokúsi schladiť. Môžete ho naďalej používať, ale môže fungovať pomalšie.\n\nPo poklese teploty bude fungovať ako obvykle."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na okraji tabletu."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na okraji zariadenia."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na okraji telefónu."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na boku tabletu."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na boku zariadenia."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Senzor odtlačkov prstov je na vypínači. Je to ploché tlačidlo vedľa vypuklého tlačidla hlasitosti na boku telefónu."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Ak chcete zobraziť ďalšie možnosti, odomknite telefón"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Ak chcete zobraziť ďalšie možnosti, odomknite tablet"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Ak chcete zobraziť ďalšie možnosti, odomknite zariadenie"</string> diff --git a/packages/SystemUI/res-product/values-sq/strings.xml b/packages/SystemUI/res-product/values-sq/strings.xml index f7421c1a2801..c0e93c425b44 100644 --- a/packages/SystemUI/res-product/values-sq/strings.xml +++ b/packages/SystemUI/res-product/values-sq/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Telefoni yt do të përpiqet automatikisht të ftohet. Mund të vazhdosh ta përdorësh telefonin, por ai mund të funksionojë më ngadalë.\n\nPasi telefoni të jetë ftohur, ai do të funksionojë normalisht."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Pajisja jote do të përpiqet automatikisht të ftohet. Mund të vazhdosh ta përdorësh pajisjen, por ajo mund të funksionojë më ngadalë.\n\nPasi pajisja të jetë ftohur, ajo do të funksionojë normalisht."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Tableti yt do të përpiqet automatikisht të ftohet. Mund të vazhdosh ta përdorësh tabletin, por ai mund të funksionojë më ngadalë.\n\nPasi tableti të jetë ftohur, ai do të funksionojë normalisht."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në anë të tabletit."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në anë të pajisjes."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në anë të telefonit."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në skaj të tabletit."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në skaj të pajisjes."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Sensori i gjurmës së gishtit është në butonin e energjisë. Ai është butoni i rrafshët pranë butonit të ngritur të volumit në skaj të telefonit."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Shkyçe telefonin për më shumë opsione"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Shkyçe tabletin për më shumë opsione"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Shkyçe pajisjen për më shumë opsione"</string> diff --git a/packages/SystemUI/res-product/values-uk/strings.xml b/packages/SystemUI/res-product/values-uk/strings.xml index e0aff9e87464..24d5cc9d6572 100644 --- a/packages/SystemUI/res-product/values-uk/strings.xml +++ b/packages/SystemUI/res-product/values-uk/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Ваш телефон автоматично спробує охолодитися. Ви можете й далі користуватися ним, але він може працювати повільніше.\n\nКоли телефон охолоне, він знову працюватиме як зазвичай."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Ваш пристрій автоматично спробує охолодитися. Ви можете й далі користуватися ним, але він може працювати повільніше.\n\nКоли пристрій охолоне, він знову працюватиме як зазвичай."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Ваш планшет автоматично спробує охолодитися. Ви можете й далі користуватися ним, але він може працювати повільніше.\n\nКоли планшет охолоне, він знову працюватиме як зазвичай."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній крайці планшета."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній крайці пристрою."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній крайці телефона."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній поверхні планшета."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній поверхні пристрою."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Сканер відбитків пальців розташовано на кнопці живлення. Це плоска кнопка поруч із випуклою кнопкою гучності на бічній поверхні телефона."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Розблокуйте телефон, щоб переглянути інші параметри"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Розблокуйте планшет, щоб переглянути інші параметри"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Розблокуйте пристрій, щоб переглянути інші параметри"</string> diff --git a/packages/SystemUI/res-product/values-zu/strings.xml b/packages/SystemUI/res-product/values-zu/strings.xml index 89d4264a3144..6374f1fc5243 100644 --- a/packages/SystemUI/res-product/values-zu/strings.xml +++ b/packages/SystemUI/res-product/values-zu/strings.xml @@ -58,9 +58,9 @@ <string name="high_temp_dialog_message" product="default" msgid="4272882413847595625">"Ifoni yakho izozama ngokuzenzakalela ukuphola. Ungasasebenzisa ifoni yakho, kodwa ingasebenza ngokungasheshi.\n\nUma ifoni yakho isipholile, izosebenza ngokuvamile."</string> <string name="high_temp_dialog_message" product="device" msgid="263861943935989046">"Idivayisi yakho izozama ukupholisa ngokuzenzekelayo. Usengasebenzisa idivayisi yakho, kodwa ingase isebenze ngokunensayo.\n\nLapho idivayisi yakho isipholile, izosebenza ngokuvamile."</string> <string name="high_temp_dialog_message" product="tablet" msgid="5613713326841935537">"Ithebulethi yakho izozama ukupholisa. Usengasebenzisa ithebulethi yakho, kodwa ingase isebenze ngokunensayo.\n\nLapho ithebulethi yakho isipholile, izosebenza ngokuvamile."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Inzwa yesigxivizo somunwe esenkinobhweni yamandla. Inkinobho eyisicaba eduze kwenkinobho yevolumu ephakanyisiwe emaphethelweni wethebulethi."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="tablet" msgid="3726972508570143945">"Inzwa yesigxivizo somunwe esenkinobhweni yamandla. Inkinobho eyisicaba eduze kwenkinobho yevolumu ephakanyisiwe onqenqemeni lwethebulethi."</string> <string name="security_settings_sfps_enroll_find_sensor_message" product="device" msgid="2929467060295094725">"Inzwa yesigxivizo somunwe esenkinobhweni yamandla. Inkinobho eyisicaba eduze kwenkinobho yevolumu ephakanyisiwe emaphethelweni edivayisi."</string> - <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Inzwa yesigxivizo somunwe esenkinobhweni yamandla. Inkinobho eyisicaba eduze kwenkinobho yevolumu ephakanyisiwe emaphethelweni efoni."</string> + <string name="security_settings_sfps_enroll_find_sensor_message" product="default" msgid="8582726566542997639">"Inzwa yesigxivizo somunwe esenkinobhweni yamandla. Inkinobho eyisicaba eduze kwenkinobho yevolumu eliphakanyisiwe onqenqemeni lwefoni."</string> <string name="global_action_lock_message" product="default" msgid="7092460751050168771">"Vula ifoni yakho ukuthola okunye okungakhethwa"</string> <string name="global_action_lock_message" product="tablet" msgid="1024230056230539493">"Vula ithebulethi yakho ukuthola okunye okungakhethwa"</string> <string name="global_action_lock_message" product="device" msgid="3165224897120346096">"Vula idivayisi yakho ukuthola okunye okungakhethwa"</string> diff --git a/packages/SystemUI/res/color/connected_network_primary_color.xml b/packages/SystemUI/res/color/connected_network_primary_color.xml new file mode 100644 index 000000000000..f173c8dd5473 --- /dev/null +++ b/packages/SystemUI/res/color/connected_network_primary_color.xml @@ -0,0 +1,20 @@ +<!-- + ~ Copyright (C) 2024 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. + --> + +<selector xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"> + <item android:color="?androidprv:attr/materialColorOnPrimaryContainer" /> +</selector>
\ No newline at end of file diff --git a/packages/SystemUI/res/color/disconnected_network_primary_color.xml b/packages/SystemUI/res/color/disconnected_network_primary_color.xml new file mode 100644 index 000000000000..536bf78b7b60 --- /dev/null +++ b/packages/SystemUI/res/color/disconnected_network_primary_color.xml @@ -0,0 +1,20 @@ +<!-- + ~ Copyright (C) 2024 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. + --> + +<selector xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"> + <item android:color="?androidprv:attr/materialColorPrimaryContainer" /> +</selector>
\ No newline at end of file diff --git a/packages/SystemUI/res/drawable/settingslib_switch_bar_bg_on.xml b/packages/SystemUI/res/drawable/settingslib_switch_bar_bg_on.xml index 250188b892f4..fab2d8db859f 100644 --- a/packages/SystemUI/res/drawable/settingslib_switch_bar_bg_on.xml +++ b/packages/SystemUI/res/drawable/settingslib_switch_bar_bg_on.xml @@ -16,10 +16,11 @@ --> <ripple xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" android:color="?android:attr/colorControlHighlight"> <item> <shape android:shape="rectangle"> - <solid android:color="@color/settingslib_state_on_color"/> + <solid android:color="?androidprv:attr/materialColorPrimaryContainer"/> <corners android:radius="@dimen/settingslib_switch_bar_radius"/> </shape> </item> diff --git a/packages/SystemUI/res/drawable/settingslib_thumb_on.xml b/packages/SystemUI/res/drawable/settingslib_thumb_on.xml index 5566ea3f62fc..e316a93c1c3d 100644 --- a/packages/SystemUI/res/drawable/settingslib_thumb_on.xml +++ b/packages/SystemUI/res/drawable/settingslib_thumb_on.xml @@ -15,7 +15,8 @@ limitations under the License. --> -<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> +<layer-list xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"> <item android:top="@dimen/settingslib_switch_thumb_margin" android:bottom="@dimen/settingslib_switch_thumb_margin"> @@ -23,7 +24,7 @@ <size android:height="@dimen/settingslib_switch_thumb_size" android:width="@dimen/settingslib_switch_thumb_size"/> - <solid android:color="@color/settingslib_state_on_color"/> + <solid android:color="?androidprv:attr/materialColorOnPrimary"/> </shape> </item> </layer-list> diff --git a/packages/SystemUI/res/drawable/settingslib_track_on_background.xml b/packages/SystemUI/res/drawable/settingslib_track_on_background.xml index 1d9dacd6c0f9..e2e64684f9c3 100644 --- a/packages/SystemUI/res/drawable/settingslib_track_on_background.xml +++ b/packages/SystemUI/res/drawable/settingslib_track_on_background.xml @@ -16,11 +16,12 @@ --> <shape xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" android:shape="rectangle" android:width="@dimen/settingslib_switch_track_width" android:height="@dimen/settingslib_switch_track_height"> <padding android:left="@dimen/settingslib_switch_thumb_margin" android:right="@dimen/settingslib_switch_thumb_margin"/> - <solid android:color="@color/settingslib_track_on_color"/> + <solid android:color="?androidprv:attr/materialColorPrimary"/> <corners android:radius="@dimen/settingslib_switch_track_radius"/> </shape> diff --git a/packages/SystemUI/res/layout/biometric_prompt_two_pane_layout.xml b/packages/SystemUI/res/layout/biometric_prompt_two_pane_layout.xml index c599f9e05b38..18a1544a1d5d 100644 --- a/packages/SystemUI/res/layout/biometric_prompt_two_pane_layout.xml +++ b/packages/SystemUI/res/layout/biometric_prompt_two_pane_layout.xml @@ -87,20 +87,21 @@ android:layout_height="match_parent"> android:id="@+id/logo_description" style="@style/TextAppearance.AuthCredential.LogoDescription" android:layout_width="0dp" - android:layout_height="wrap_content" + android:layout_height="@dimen/biometric_prompt_logo_size" + android:gravity="start|center_vertical" android:textAlignment="viewStart" - android:paddingStart="16dp" - app:layout_constraintBottom_toBottomOf="@+id/logo" + android:layout_marginStart="16dp" + app:layout_goneMarginStart="0dp" + app:layout_constraintBottom_toTopOf="@+id/title" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@+id/logo" - app:layout_constraintTop_toTopOf="@+id/logo" /> + app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/title" style="@style/TextAppearance.AuthCredential.Title" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="12dp" android:gravity="@integer/biometric_dialog_text_gravity" android:paddingHorizontal="0dp" android:textAlignment="viewStart" @@ -108,7 +109,7 @@ android:layout_height="match_parent"> app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/logo" + app:layout_constraintTop_toBottomOf="@+id/logoBarrier" app:layout_constraintVertical_bias="0.0" app:layout_constraintVertical_chainStyle="packed" /> @@ -159,6 +160,15 @@ android:layout_height="match_parent"> app:layout_constraintVertical_bias="0.0" /> <androidx.constraintlayout.widget.Barrier + android:id="@+id/logoBarrier" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + app:barrierMargin="12dp" + app:barrierAllowsGoneWidgets="false" + app:barrierDirection="bottom" + app:constraint_referenced_ids="logo_description, logo" /> + + <androidx.constraintlayout.widget.Barrier android:id="@+id/contentBarrier" android:layout_width="wrap_content" android:layout_height="wrap_content" diff --git a/packages/SystemUI/res/layout/internet_connectivity_dialog.xml b/packages/SystemUI/res/layout/internet_connectivity_dialog.xml index 22d156da7580..0029180932ee 100644 --- a/packages/SystemUI/res/layout/internet_connectivity_dialog.xml +++ b/packages/SystemUI/res/layout/internet_connectivity_dialog.xml @@ -170,8 +170,7 @@ android:layout_height="28dp" android:layout_marginStart="7dp" android:layout_marginEnd="16dp" - android:layout_gravity="center_vertical" - android:background="?android:attr/textColorSecondary"/> + android:layout_gravity="center_vertical"/> <FrameLayout android:layout_width="@dimen/settingslib_switch_track_width" diff --git a/packages/SystemUI/res/layout/screenshot_shelf.xml b/packages/SystemUI/res/layout/screenshot_shelf.xml index 84ab0f1b6ee5..fff1de7c1049 100644 --- a/packages/SystemUI/res/layout/screenshot_shelf.xml +++ b/packages/SystemUI/res/layout/screenshot_shelf.xml @@ -51,7 +51,6 @@ android:layout_marginBottom="@dimen/overlay_border_width" android:layout_gravity="center" android:elevation="4dp" - android:contentDescription="@string/screenshot_edit_description" android:scaleType="fitEnd" android:background="@drawable/overlay_preview_background" android:adjustViewBounds="true" @@ -67,7 +66,6 @@ android:layout_marginBottom="@dimen/overlay_border_width" android:layout_gravity="center" android:elevation="4dp" - android:contentDescription="@string/screenshot_edit_description" android:scaleType="fitEnd" android:background="@drawable/overlay_preview_background" android:adjustViewBounds="true" diff --git a/packages/SystemUI/res/layout/sidefps_view.xml b/packages/SystemUI/res/layout/sidefps_view.xml index fc4bf8a65643..e80ed26cffe5 100644 --- a/packages/SystemUI/res/layout/sidefps_view.xml +++ b/packages/SystemUI/res/layout/sidefps_view.xml @@ -22,5 +22,4 @@ android:layout_height="wrap_content" app:lottie_autoPlay="true" app:lottie_loop="true" - app:lottie_rawRes="@raw/sfps_pulse" - android:importantForAccessibility="no"/>
\ No newline at end of file + app:lottie_rawRes="@raw/sfps_pulse"/>
\ No newline at end of file diff --git a/packages/SystemUI/res/values-af/strings.xml b/packages/SystemUI/res/values-af/strings.xml index c7753364c155..7655eeefd422 100644 --- a/packages/SystemUI/res/values-af/strings.xml +++ b/packages/SystemUI/res/values-af/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Jy sal ophou om <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> op te neem"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop opname"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Hou op om skerm te deel?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Jy sal ophou om <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> te deel"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Hou op deel"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Jy sal ophou om <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> uit te saai"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Hou op uitsaai"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Maak toe"</string> <string name="issuerecord_title" msgid="286627115110121849">"Kwessieopnemer"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Verwerk tans kwessieopname"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Deurlopende kennisgewing vir ’n kwessieversamelingsessie"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Kon nie kwessieopname stoor nie"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Kon nie kwessieopname begin nie"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Bekyk tans volskerm"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Swiep van die bokant van jou skerm af ondertoe om uit te gaan"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Het dit"</string> <string name="accessibility_back" msgid="6530104400086152611">"Terug"</string> <string name="accessibility_home" msgid="5430449841237966217">"Tuis"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Ontsluit met gesig. Druk om voort te gaan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Gesig is herken. Druk om voort te gaan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Gesig is herken. Druk die ontsluitikoon om voort te gaan."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Ontsluit met gesig. Tik om voort te gaan."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Gestaaf"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Kanselleer stawing"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Meer opsies"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Gestoor"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ontkoppel"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiveer"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Skakel dit môre outomaties aan"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Kenmerke soos Kitsdeel en Kry My Toestel gebruik Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth sal môreoggend aanskakel"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Deel oudio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Deel tans oudio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batterykrag"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Oudio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Kopstuk"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Skermopname"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Begin"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Stop"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Neem kwessie op"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Teken kwessie aan"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Begin"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Stop"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Foutverslag"</string> @@ -568,13 +563,13 @@ <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"CA-sertifikate"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Bekyk beleide"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Bekyk kontroles"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"Hierdie toestel behoort aan <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nJou IT-admin kan instellings, korporatiewe toegang, programme, data wat met jou toestel geassosieer word, en jou toestel se ligginginligting monitor en bestuur.\n\nKontak jou IT-admin vir meer inligting."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"Hierdie toestel behoort aan <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nJou IT-admin kan instellings, korporatiewe toegang, apps, data wat met jou toestel geassosieer word, en jou toestel se ligginginligting monitor en bestuur.\n\nKontak jou IT-admin vir meer inligting."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> kan dalk toegang kry tot data wat met hierdie toestel geassosieer word, programme bestuur, en hierdie toestel se instellings verander.\n\nKontak <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g> as jy enige vrae het."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"Hierdie toestel behoort aan jou organisasie.\n\nJou IT-admin kan instellings, korporatiewe toegang, programme, data wat met jou toestel geassosieer word, en jou toestel se ligginginligting monitor en bestuur.\n\nKontak jou IT-admin vir meer inligting."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"Hierdie toestel behoort aan jou organisasie.\n\nJou IT-admin kan instellings, korporatiewe toegang, apps, data wat met jou toestel geassosieer word, en jou toestel se ligginginligting monitor en bestuur.\n\nKontak jou IT-admin vir meer inligting."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"Jou organisasie het \'n sertifikaatoutoriteit op hierdie toestel geïnstalleer. Jou veilige netwerkverkeer kan gemonitor of gewysig word."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"Jou organisasie het \'n sertifikaatoutoriteit in jou werkprofiel geïnstalleer. Jou veilige netwerkverkeer kan gemonitor of gewysig word."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"\'n Sertifikaatoutoriteit is op hierdie toestel geïnstalleer. Jou veilige netwerkverkeer kan gemonitor of gewysig word."</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Jou administrateur het netwerkloginskrywing aangeskakel, wat verkeer op jou toestel monitor."</string> + <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"Jou admin het netwerkloginskrywing aangeskakel, wat verkeer op jou toestel monitor."</string> <string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"Jou administrateur het netwerkloglêers aangeskakel wat verkeer in jou werkprofiel monitor, maar nie in jou persoonlike profiel nie."</string> <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Hierdie toestel is deur <xliff:g id="VPN_APP">%1$s</xliff:g> aan die internet gekoppel. Die VPN-verskaffer kan jou netwerkaktiwiteit sien, insluitend jou e-posse en blaaierdata."</string> <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Hierdie toestel is deur <xliff:g id="VPN_APP">%1$s</xliff:g> aan die internet gekoppel. Jou IT-admin kan jou netwerkaktiwiteit sien, insluitend jou e-posse en blaaierdata."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tik vir meer inligting"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Geen wekker nie"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"voer skermslot in"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Raak die vingerafdruksensor. Dis die korter knoppie aan die sykant van die foon"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Vingerafdruksensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"staaf"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"gaan by toestel in"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Vou ikoon in"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Vou ikoon uit"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"of"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Teruggebaar"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Tuisgebaar"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Handelingsleutel"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klaar"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Sleutelbordlig"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Vlak %1$d van %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Huiskontroles"</string> diff --git a/packages/SystemUI/res/values-am/strings.xml b/packages/SystemUI/res/values-am/strings.xml index de4138fad93f..f6c3b2ac96eb 100644 --- a/packages/SystemUI/res/values-am/strings.xml +++ b/packages/SystemUI/res/values-am/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"እርስዎ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> መቅረጽ ያቆማሉ"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"መቅረጽ አቁም"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ማያ ገፅን ማጋራት ይቁም?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"እርስዎ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ማጋራት ያቆማሉ"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ማጋራት አቁም"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"እርስዎ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> cast ማድረግ ያቆማሉ"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"cast ማድረግ አቁም"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ዝጋ"</string> <string name="issuerecord_title" msgid="286627115110121849">"ችግር መመዝገቢያ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"የአሰራር ችግር አመዘጋገብ"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ለችግር መሰብሰብ ክፍለ ጊዜ ቀጣይነት ያለው ማሳወቂያ"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"የችግር ምዝገባ ማስቀመጥ ላይ ስህተት"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ችግር ምዝገባ ማስጀመር ላይ ስህተት"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"በሙሉ ገጽ ዕይታ በማየት ላይ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ለመውጣት ከማያ ገፅዎ አናት ወደታች ያንሸራትቱ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ገባኝ"</string> <string name="accessibility_back" msgid="6530104400086152611">"ተመለስ"</string> <string name="accessibility_home" msgid="5430449841237966217">"መነሻ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"በመልክ ተከፍቷል። ለመቀጠል ይጫኑ።"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"መልክ ተለይቶ ታውቋል። ለመቀጠል ይጫኑ።"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"መልክ ተለይቶ ታውቋል። ለመቀጠል የመክፈቻ አዶውን ይጫኑ።"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"በመልክ ተከፍቷል። ለመቀጠል መታ ያድርጉ።"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"የተረጋገጠ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ማረጋገጥን ሰርዝ"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ተጨማሪ አማራጮች"</string> @@ -299,8 +297,7 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ተቀምጧል"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ግንኙነትን አቋርጥ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ያግብሩ"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ነገ በራስ-ሰር ያብሩ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"እንደ ፈጣን ማጋራት እና የእኔን መሣሪያ አግኝ ያሉ ባህሪዎች ብሉቱዝን ይጠቀማሉ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ብሉቱዝ ነገ ጠዋት ይበራል"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ኦዲዮ አጋራ"</string> @@ -1195,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ለበለጠ መረጃ መታ ያድርጉ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ምንም ማንቂያ አልተቀናበረም"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ማያ ገጽ መቆለፊያ ያስገቡ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"የጣት አሻራ ዳሳሹን ይንኩ። በስልኩ ጎን በኩል አጠር ያለው አዝራር ነው"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"የጣት አሻራ ዳሳሽ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ያረጋግጡ"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"መሣሪያን ያስገቡ"</string> @@ -1345,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"መሰብሰቢያ አዶ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"መዘርጊያ አዶ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ወይም"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"የተመለስ ምልክት"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"የቤት ምልክት"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"የተግባር ቁልፍ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ተከናውኗል"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"የቁልፍ ሰሌዳ የጀርባ ብርሃን"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"ደረጃ %1$d ከ %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"የቤት ውስጥ ቁጥጥሮች"</string> diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml index 8bd52d6cc7c8..e8eb0b5cdd24 100644 --- a/packages/SystemUI/res/values-ar/strings.xml +++ b/packages/SystemUI/res/values-ar/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"سيتم إيقاف تسجيل محتوى <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"إيقاف التسجيل"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"هل تريد إيقاف مشاركة الشاشة؟"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"سيتم إيقاف مشاركة محتوى <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"إيقاف المشاركة"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"سيتم إيقاف بث محتوى <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"إيقاف البث"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"إغلاق"</string> <string name="issuerecord_title" msgid="286627115110121849">"مسجّلة المشاكل"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"يجري معالجة تسجيل المشكلة."</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"إشعار بنشاط مستمر في الخلفية لجلسة جمع البيانات حول المشكلة"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"حدث خطأ أثناء حفظ تسجيل المشكلة."</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"حدث خطأ أثناء بدء تسجيل المشكلة."</string> <string name="immersive_cling_title" msgid="8372056499315585941">"جارٍ العرض بملء الشاشة"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"للخروج، مرِّر سريعًا من أسفل الشاشة لأعلاها"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"حسنًا"</string> <string name="accessibility_back" msgid="6530104400086152611">"رجوع"</string> <string name="accessibility_home" msgid="5430449841237966217">"الرئيسية"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"تم فتح الجهاز بالتعرّف على وجهك. اضغط للمتابعة."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"تم التعرّف على الوجه. اضغط للمتابعة."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"تم التعرّف على الوجه. للمتابعة، اضغط على رمز فتح القفل."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"تمّ فتح قفل جهازك باستخدام بصمة الوجه. انقر للمتابعة."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"مصادقة"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"إلغاء المصادقة"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"مزيد من الخيارات"</string> @@ -208,9 +206,9 @@ <string name="biometric_dialog_last_pattern_attempt_before_wipe_user" msgid="8400180746043407270">"عند إدخال نقش غير صحيح في المحاولة التالية، سيتم حذف هذا المستخدم."</string> <string name="biometric_dialog_last_pin_attempt_before_wipe_user" msgid="4159878829962411168">"عند إدخال رقم تعريف شخصي غير صحيح في المحاولة التالية، سيتم حذف هذا المستخدم."</string> <string name="biometric_dialog_last_password_attempt_before_wipe_user" msgid="4695682515465063885">"عند إدخال كلمة مرور غير صحيحة في المحاولة التالية، سيتم حذف هذا المستخدم."</string> - <string name="biometric_dialog_last_pattern_attempt_before_wipe_profile" msgid="6045224069529284686">"عند إدخال نقش غير صحيح في المحاولة التالية، سيتم حذف ملفك الشخصي للعمل وبياناته."</string> - <string name="biometric_dialog_last_pin_attempt_before_wipe_profile" msgid="545567685899091757">"عند إدخال رقم تعريف شخصي غير صحيح في المحاولة التالية، سيتم حذف ملفك الشخصي للعمل وبياناته."</string> - <string name="biometric_dialog_last_password_attempt_before_wipe_profile" msgid="8538032972389729253">"عند إدخال كلمة مرور غير صحيحة في المحاولة التالية، سيتم حذف ملفك الشخصي للعمل وبياناته."</string> + <string name="biometric_dialog_last_pattern_attempt_before_wipe_profile" msgid="6045224069529284686">"عند إدخال نقش غير صحيح في المحاولة التالية، سيتم حذف ملف العمل الخاص بك وبياناته."</string> + <string name="biometric_dialog_last_pin_attempt_before_wipe_profile" msgid="545567685899091757">"عند إدخال رقم تعريف شخصي غير صحيح في المحاولة التالية، سيتم حذف ملف العمل الخاص بك وبياناته."</string> + <string name="biometric_dialog_last_password_attempt_before_wipe_profile" msgid="8538032972389729253">"عند إدخال كلمة مرور غير صحيحة في المحاولة التالية، سيتم حذف ملف العمل الخاص بك وبياناته."</string> <string name="biometric_re_enroll_dialog_confirm" msgid="3049858021857801836">"إعداد"</string> <string name="biometric_re_enroll_dialog_cancel" msgid="93760939407091417">"لاحقًا"</string> <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"هذا الإجراء مطلوب لتحسين مستوى الأمان والأداء."</string> @@ -220,11 +218,11 @@ <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> - <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_reenroll_failure_dialog_content" msgid="7073947334397236935">"تعذّر إعداد ميزة \"فتح الجهاز بالتعرّف على الوجه\". انتقِل إلى \"الإعدادات\" لإعادة المحاولة."</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_reenroll_failure_dialog_content" msgid="7073947334397236935">"تعذّر إعداد ميزة \"فتح الجهاز ببصمة الوجه\". انتقِل إلى \"الإعدادات\" لإعادة المحاولة."</string> <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"المس أداة استشعار بصمة الإصبع"</string> <string name="fingerprint_dialog_authenticated_confirmation" msgid="1603899612957562862">"للمتابعة، اضغط على رمز فتح القفل."</string> <string name="fingerprint_dialog_use_fingerprint_instead" msgid="5542430577183894219">"يتعذّر التعرّف على الوجه. يمكنك استخدام بصمة إصبعك."</string> @@ -232,7 +230,7 @@ <skip /> <string name="keyguard_face_failed" msgid="2346762871330729634">"يتعذّر التعرّف على الوجه."</string> <string name="keyguard_suggest_fingerprint" msgid="8742015961962702960">"يمكنك استخدام بصمة إصبعك."</string> - <string name="keyguard_face_unlock_unavailable" msgid="1581949044193418736">"ميزة \"فتح الجهاز بالتعرف على الوجه\" غير متاحة."</string> + <string name="keyguard_face_unlock_unavailable" msgid="1581949044193418736">"ميزة \"فتح الجهاز ببصمة الوجه\" غير متاحة."</string> <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"تم توصيل البلوتوث."</string> <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"رمز الجهاز الذي يتضمّن بلوتوث"</string> <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"انقر هنا لضبط إعدادات الجهاز."</string> @@ -245,7 +243,7 @@ <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_vpn_on" msgid="8037549696057288731">"الشبكة الافتراضية الخاصة (VPN) قيد التفعيل."</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> <string name="accessibility_battery_level_charging" msgid="8892191177774027364">"جارٍ شحن البطارية، <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>%%."</string> @@ -290,7 +288,7 @@ <string name="quick_settings_dnd_label" msgid="7728690179108024338">"عدم الإزعاج"</string> <string name="quick_settings_bluetooth_label" msgid="7018763367142041481">"بلوتوث"</string> <string name="quick_settings_bluetooth_detail_empty_text" msgid="5760239584390514322">"لا يتوفر أي أجهزة مقترنة"</string> - <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"انقر لربط جهاز أو إلغاء ربطه"</string> + <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"انقر للاتصال بجهاز أو قطع الاتصال به"</string> <string name="pair_new_bluetooth_devices" msgid="4601767620843349645">"إقران جهاز جديد"</string> <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"عرض الكل"</string> <string name="turn_on_bluetooth" msgid="5681370462180289071">"استخدام البلوتوث"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"محفوظ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"إلغاء الربط"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"تفعيل"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"التفعيل تلقائيًا غدًا"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"يُستخدَم البلوتوث في ميزات مثل Quick Share و\"العثور على جهازي\""</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"سيتم تفعيل البلوتوث صباح الغد"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"مشاركة الصوت"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"جارٍ مشاركة الصوت"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"مستوى طاقة البطارية <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"صوت"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"سماعة الرأس"</string> @@ -382,12 +377,12 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"بدء"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"إيقاف"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"تقرير خطأ"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"ما هو الجانب الذي تأثّر في تجربة استخدام الجهاز؟"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"بأي جانب من تجربة استخدام الجهاز تتعلّق المشكلة؟"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"اختيار نوع المشكلة"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"تسجيل الشاشة"</string> <string name="performance" msgid="6552785217174378320">"الأداء"</string> <string name="user_interface" msgid="3712869377953950887">"واجهة المستخدم"</string> - <string name="thermal" msgid="6758074791325414831">"الأداء الحراري"</string> + <string name="thermal" msgid="6758074791325414831">"ارتفاع حرارة الجهاز"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"وضع \"التصفح بيد واحدة\""</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"سماعات الأذن الطبية"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"متّصلة حاليًا"</string> @@ -436,14 +431,14 @@ <string name="keyguard_unlock" msgid="8031975796351361601">"التمرير إلى الأعلى لفتح القفل"</string> <string name="keyguard_unlock_press" msgid="9140109453735019209">"اضغط على رمز فتح القفل لفتح قفل الشاشة."</string> <string name="keyguard_face_successful_unlock_swipe" msgid="6180997591385846073">"تم فتح قفل جهازك عند تقريبه من وجهك. مرِّر سريعًا للأعلى لفتح الجهاز."</string> - <string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"تم فتح القفل بالتعرّف على وجهك. لفتح الجهاز، اضغط على رمز فتح القفل."</string> + <string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"تم فتح القفل ببصمة وجهك. لفتح الجهاز، اضغط على رمز فتح القفل."</string> <string name="keyguard_face_successful_unlock_press_alt_1" msgid="5715461103913071474">"تم فتح قفل جهازك عند تقريبه من وجهك. اضغط لفتح الجهاز."</string> <string name="keyguard_face_successful_unlock_press_alt_2" msgid="8310787946357120406">"تم التعرّف على الوجه. اضغط لفتح الجهاز."</string> <string name="keyguard_face_successful_unlock_press_alt_3" msgid="7219030481255573962">"تم التعرّف على الوجه. اضغط على رمز فتح القفل لفتح الجهاز."</string> <string name="keyguard_face_successful_unlock" msgid="4203999851465708287">"تم فتح قفل جهازك عند تقريبه من وجهك."</string> <string name="keyguard_face_successful_unlock_alt1" msgid="5853906076353839628">"تم التعرّف على الوجه."</string> <string name="keyguard_retry" msgid="886802522584053523">"مرِّر سريعًا للأعلى لإعادة المحاولة."</string> - <string name="accesssibility_keyguard_retry" msgid="8880238862712870676">"مرِّر سريعًا للأعلى لاستخدام \"فتح الجهاز بالتعرف على الوجه\""</string> + <string name="accesssibility_keyguard_retry" msgid="8880238862712870676">"مرِّر سريعًا للأعلى لاستخدام ميزة \"فتح الجهاز ببصمة الوجه\""</string> <string name="require_unlock_for_nfc" msgid="1305686454823018831">"افتح قفل الشاشة لاستخدام تقنية NFC"</string> <string name="do_disclosure_generic" msgid="4896482821974707167">"هذا الجهاز يخص مؤسستك."</string> <string name="do_disclosure_with_name" msgid="2091641464065004091">"هذا الجهاز يخص <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>."</string> @@ -551,19 +546,19 @@ <string name="quick_settings_disclosure_named_management_named_vpn" msgid="2169227918166358741">"ينتمي هذا الجهاز إلى <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>، ويتّصل بالإنترنت من خلال <xliff:g id="VPN_APP">%2$s</xliff:g>."</string> <string name="quick_settings_disclosure_management" msgid="5515296598440684962">"هذا الجهاز يخص مؤسستك."</string> <string name="quick_settings_disclosure_named_management" msgid="3476472755775165827">"هذا الجهاز يخص <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>."</string> - <string name="quick_settings_disclosure_management_vpns" msgid="929181757984262902">"ينتمي هذا الجهاز إلى مؤسستك، ويتّصل بالإنترنت من خلال خدمات الشبكة الافتراضية الخاصة (VPN)."</string> - <string name="quick_settings_disclosure_named_management_vpns" msgid="3312645578322079185">"ينتمي هذا الجهاز إلى <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>، ويتّصل بالإنترنت من خلال خدمات الشبكة الافتراضية الخاصة (VPN)."</string> + <string name="quick_settings_disclosure_management_vpns" msgid="929181757984262902">"ينتمي هذا الجهاز إلى مؤسستك، ويتّصل بالإنترنت من خلال خدمات شبكة VPN."</string> + <string name="quick_settings_disclosure_named_management_vpns" msgid="3312645578322079185">"ينتمي هذا الجهاز إلى <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>، ويتّصل بالإنترنت من خلال خدمات شبكة VPN."</string> <string name="quick_settings_disclosure_managed_profile_monitoring" msgid="1423899084754272514">"يمكن لمؤسستك مراقبة حركة بيانات الشبكة في ملف العمل"</string> - <string name="quick_settings_disclosure_named_managed_profile_monitoring" msgid="8321469176706219860">"يمكن لـ <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> مراقبة حركة بيانات الشبكة في ملفك الشخصي للعمل"</string> + <string name="quick_settings_disclosure_named_managed_profile_monitoring" msgid="8321469176706219860">"يمكن لـ <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> مراقبة حركة بيانات الشبكة في ملف العمل الخاص بك"</string> <string name="quick_settings_disclosure_managed_profile_network_activity" msgid="2636594621387832827">"تكون أنشطة شبكة ملف العمل مرئية لمشرف تكنولوجيا المعلومات."</string> <string name="quick_settings_disclosure_monitoring" msgid="8548019955631378680">"قد تكون الشبكة خاضعة للمراقبة"</string> - <string name="quick_settings_disclosure_vpns" msgid="3586175303518266301">"هذا الجهاز متّصل بالإنترنت من خلال خدمات الشبكات الافتراضية الخاصة (VPN)."</string> + <string name="quick_settings_disclosure_vpns" msgid="3586175303518266301">"هذا الجهاز متّصل بالإنترنت من خلال خدمات شبكات VPN."</string> <string name="quick_settings_disclosure_managed_profile_named_vpn" msgid="153393105176944100">"تطبيقات العمل الخاصة بك متّصلة بالإنترنت من خلال <xliff:g id="VPN_APP">%1$s</xliff:g>."</string> <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"تطبيقاتك الشخصية متّصلة بالإنترنت من خلال <xliff:g id="VPN_APP">%1$s</xliff:g>."</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"هذا الجهاز متّصل بالإنترنت من خلال <xliff:g id="VPN_APP">%1$s</xliff:g>."</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"توفر مؤسسة \"<xliff:g id="ORGANIZATION_NAME">%s</xliff:g>\" هذا الجهاز"</string> <string name="monitoring_title_device_owned" msgid="7029691083837606324">"إدارة الأجهزة"</string> - <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"شبكة افتراضية خاصة (VPN)"</string> + <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"شبكة VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"تسجيل بيانات الشبكة"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"شهادات CA"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"عرض السياسات"</string> @@ -572,19 +567,19 @@ <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"قد تتمكّن مؤسسة <xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> من الوصول إلى البيانات المرتبطة بهذا الجهاز وإدارة التطبيقات وتغيير إعدادات الجهاز.\n\nإذا كان لديك أسئلة، يُرجى التواصل مع <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> <string name="monitoring_description_management" msgid="4308879039175729014">"هذا الجهاز يخص مؤسستك.\n\nيمكن لمشرف تكنولوجيا المعلومات في مؤسستك تتبّع وإدارة الإعدادات والتطبيقات والبيانات المرتبطة بجهازك ومعلومات الموقع الجغرافي للجهاز وعمليات الدخول إلى نظام المؤسسة.\n\nللحصول على المزيد من المعلومات، يمكنك التواصل مع مشرف تكنولوجيا المعلومات."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"ثبّتت مؤسستك مرجعًا مصدّقًا على هذا الجهاز. قد تتم مراقبة حركة بيانات شبكتك الآمنة أو تعديلها."</string> - <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"ثبّتت مؤسستك مرجعًا مصدّقًا في ملفك الشخصي للعمل. قد تتم مراقبة حركة بيانات شبكتك الآمنة أو تعديلها."</string> + <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"ثبّتت مؤسستك مرجعًا مصدّقًا في ملف العمل الخاص بك. قد تتم مراقبة حركة بيانات شبكتك الآمنة أو تعديلها."</string> <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_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>\". تجدر الإشارة إلى أنّ أنشطة الشبكة، بما في ذلك الرسائل الإلكترونية وبيانات التصفُّح، مرئية لمشرف تكنولوجيا المعلومات في مؤسستك."</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> + <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> <string name="monitoring_description_vpn_settings_separator" msgid="8292589617720435430">" "</string> <string name="monitoring_description_vpn_settings" msgid="5264167033247632071">"فتح إعدادات شبكة VPN"</string> <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"يتولّى أحد الوالدين إدارة هذا الجهاز. يمكن للوالدين عرض وإدارة معلوماتك، مثلاً التطبيقات التي تستخدمها وموقعك الجغرافي ووقت النظر إلى الشاشة."</string> - <string name="legacy_vpn_name" msgid="4174223520162559145">"شبكة افتراضية خاصة"</string> + <string name="legacy_vpn_name" msgid="4174223520162559145">"شبكة VPN"</string> <string name="keyguard_indication_trust_unlocked" msgid="7395154975733744547">"فتح القفل باستمرار بواسطة TrustAgent"</string> <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"تم قفل الجهاز بسبب إجراء العديد من محاولات المصادقة"</string> <string name="keyguard_indication_after_adaptive_auth_lock" msgid="2323400645470712787">"تم قفل الجهاز\nتعذّرت المصادقة"</string> @@ -667,7 +662,7 @@ <string name="show_demo_mode" msgid="3677956462273059726">"عرض الوضع التجريبي"</string> <string name="status_bar_ethernet" msgid="5690979758988647484">"إيثرنت"</string> <string name="status_bar_alarm" msgid="87160847643623352">"المنبّه"</string> - <string name="wallet_title" msgid="5369767670735827105">"محفظة"</string> + <string name="wallet_title" msgid="5369767670735827105">"محفظة Google"</string> <string name="wallet_empty_state_label" msgid="7776761245237530394">"يمكنك إعداد طريقة دفع لإجراء عمليات شراء بسرعة وأمان أكبر باستخدام هاتفك."</string> <string name="wallet_app_button_label" msgid="7123784239111190992">"عرض الكل"</string> <string name="wallet_secondary_label_no_card" msgid="8488069304491125713">"انقر لفتح قفل الجهاز"</string> @@ -783,7 +778,7 @@ <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_input" msgid="5440558509904296233">"إدخال"</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> <string name="keyboard_shortcut_a11y_show_search_results" msgid="2865241062981833705">"جارٍ عرض نتائج البحث"</string> @@ -814,7 +809,7 @@ <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"الإدخال"</string> <string name="input_switch_input_language_next" msgid="3782155659868227855">"التبديل إلى اللغة التالية"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"التبديل إلى اللغة السابقة"</string> - <string name="input_access_emoji" msgid="8105642858900406351">"الوصول إلى الرموز التعبيرية"</string> + <string name="input_access_emoji" msgid="8105642858900406351">"الوصول إلى رموز الإيموجي"</string> <string name="input_access_voice_typing" msgid="7291201476395326141">"الوصول إلى ميزة \"الكتابة بالصوت\""</string> <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"التطبيقات"</string> <string name="keyboard_shortcut_group_applications_assist" msgid="6772492350416591448">"مساعد Google"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"انقر للحصول على مزيد من المعلومات."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"لم يتم ضبط منبّه"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"إدخال الرمز لفتح القفل"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"المس أداة استشعار بصمة الإصبع المدمَجة في الزر الأقصر في جانب الهاتف"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"مستشعر بصمات الإصبع"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"المصادقة"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"الدخول إلى الجهاز"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"رمز التصغير"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"رمز التوسيع"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"أو"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"إيماءة الرجوع"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"إيماءة الانتقال إلى الشاشة الرئيسية"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"مفتاح الإجراء"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"تم"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"الإضاءة الخلفية للوحة المفاتيح"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"مستوى الإضاءة: %1$d من %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"إدارة المنزل آليًّا"</string> diff --git a/packages/SystemUI/res/values-as/strings.xml b/packages/SystemUI/res/values-as/strings.xml index 77774ccd5123..ad851f8beb5c 100644 --- a/packages/SystemUI/res/values-as/strings.xml +++ b/packages/SystemUI/res/values-as/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"আপুনি <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ৰেকৰ্ড কৰা বন্ধ কৰিব"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ৰেকৰ্ডিং বন্ধ কৰক"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"স্ক্ৰীন শ্বেয়াৰ কৰা বন্ধ কৰিবনে?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"আপুনি <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> শ্বেয়াৰ কৰা বন্ধ কৰিব"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"শ্বেয়াৰ কৰা বন্ধ কৰক"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"আপুনি <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> কাষ্ট কৰা বন্ধ কৰিব"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"কাষ্ট বন্ধ কৰক"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"বন্ধ কৰক"</string> <string name="issuerecord_title" msgid="286627115110121849">"সমস্যা ৰেকৰ্ডাৰ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"সমস্যা ৰেকৰ্ড কৰি থকা হৈছে"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"সমস্যা সংগ্ৰহ কৰা এটা ছেশ্বনৰ বাবে চলিত জাননী"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"সমস্যাৰ ৰেকৰ্ডিং ছেভ কৰাত আসোঁৱাহ"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"সমস্যাৰ ৰেকৰ্ডিং আৰম্ভ কৰোঁতে আসোঁৱাহ হৈছে"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"পূৰ্ণ স্ক্ৰীনত চাই আছে"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"বাহিৰ হ’বলৈ, আপোনাৰ স্ক্ৰীনখনৰ একেবাৰে ওপৰৰ পৰা তললৈ ছোৱাইপ কৰক"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"বুজি পালোঁ"</string> <string name="accessibility_back" msgid="6530104400086152611">"উভতি যাওক"</string> <string name="accessibility_home" msgid="5430449841237966217">"গৃহ পৃষ্ঠাৰ বুটাম"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"মুখাৱয়বৰ জৰিয়তে আনলক কৰা হৈছে। অব্যাহত ৰাখিবলৈ টিপক।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"মুখাৱয়ব চিনাক্ত কৰা হৈছে। অব্যাহত ৰাখিবলৈ টিপক।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"মুখাৱয়ব চিনাক্ত কৰা হৈছে। অব্যাহত ৰাখিবলৈ আনলক কৰক চিহ্নটোত টিপক।"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"মুখাৱয়বৰ জৰিয়তে আনলক কৰা হৈছে। অব্যাহত ৰাখিবলৈ টিপক।"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণ কৰা হ’ল"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণ বাতিল কৰক"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"অধিক বিকল্প"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ছেভ কৰা হৈছে"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"সংযোগ বিচ্ছিন্ন কৰক"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"সক্ৰিয় কৰক"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"কাইলৈ স্বয়ংক্ৰিয়ভাৱে অন কৰক"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share আৰু Find My Deviceৰ দৰে সুবিধাসমূহে ব্লুটুথ ব্যৱহাৰ কৰে"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"কাইলৈ পুৱা ব্লুটুথ অন হ’ব"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"অডিঅ’ শ্বেয়াৰ কৰক"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"অডিঅ’ শ্বেয়াৰ কৰি থকা হৈছে"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"বেটাৰী <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"অডিঅ’"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"হেডছেট"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"সম্প্ৰদায় সম্পৰ্কীয় নিৰ্দেশনা আৰম্ভ কৰিবলৈ বাওঁফালে ছোৱাইপ কৰক"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"কাষ্টমাইজ কৰক"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"অগ্ৰাহ্য কৰক"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"এই স্পেচটোত আপোনাৰ ৱিজেটসমূহ যোগ দিয়ক, আঁতৰাওক আৰু সেইসমূহৰ ক্ৰম সলনি কৰক"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"এই স্পে’চটোত আপোনাৰ ৱিজেটসমূহ যোগ দিয়ক, আঁতৰাওক আৰু সেইসমূহৰ ক্ৰম সলনি কৰক"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"অধিক ৱিজেট যোগ দিয়ক"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"ৱিজেট কাষ্টমাইজ কৰিবলৈ দীঘলীয়াকৈ টিপক"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"ৱিজেট কাষ্টমাইজ কৰক"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"অধিক তথ্যৰ বাবে টিপক"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"কোনো এলাৰ্ম ছেট কৰা হোৱা নাই"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"স্ক্ৰীন লকটো দিয়ক"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ফিংগাৰপ্ৰিণ্ট ছেন্সৰটো স্পৰ্শ কৰক। এইটো হৈছে আপোনাৰ ফ’নটোৰ কাষৰফালে থকা চুটি বুটামটো"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ফিংগাৰপ্ৰিণ্ট ছেন্সৰ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"বিশ্বাসযোগ্যতা প্ৰমাণ কৰক"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ডিভাইচ আনলক কৰক"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"সংকোচন কৰাৰ চিহ্ন"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"বিস্তাৰ কৰাৰ চিহ্ন"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"অথবা"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"উভতি যাওক নিৰ্দেশ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"গৃহ স্ক্ৰীনলৈ যোৱাৰ নিৰ্দেশ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"কাৰ্য কী"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"হ’ল"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"কীব’ৰ্ডৰ বেকলাইট"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$dৰ %1$d স্তৰ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ঘৰৰ সা-সৰঞ্জামৰ নিয়ন্ত্ৰণ"</string> diff --git a/packages/SystemUI/res/values-az/strings.xml b/packages/SystemUI/res/values-az/strings.xml index bf24c075a6dc..6a4d454ba236 100644 --- a/packages/SystemUI/res/values-az/strings.xml +++ b/packages/SystemUI/res/values-az/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> tətbiqinin çəkilməsini dayandıracaqsınız"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Qeydəalmanı dayandırın"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ekran paylaşımı dayandırılsın?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> tətbiqinin paylaşılmasını dayandıracaqsınız"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Paylaşımı dayandırın"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> tətbiqinin yayımlanmasını dayandıracaqsınız"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Yayımı dayandırın"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Bağlayın"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problem qeydə alan"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Problem qeydi emal edilir"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Problemin əldə edilməsi sessiyası üçün davam edən bildiriş"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Problem qeydini yadda saxlayarkən xəta"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Problemi qeydə almağa başlayarkən xəta"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Tam ekran rejimi"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Çıxmaq üçün ekranın yuxarısından aşağı çəkin"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Anladım"</string> <string name="accessibility_back" msgid="6530104400086152611">"Geri"</string> <string name="accessibility_home" msgid="5430449841237966217">"Ana səhifə"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Üz ilə kiliddən çıxarılıb. Davam etmək üçün basın."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Üz tanınıb. Davam etmək üçün basın."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Üz tanınıb. \"Kiliddən çıxar\" ikonasına basıb davam edin."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Üz ilə kiliddən çıxarılıb. Davam etmək üçün toxunun."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Doğrulandı"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"İdentifikasiyanı ləğv edin"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Digər seçimlər"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Yadda saxlandı"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"əlaqəni kəsin"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivləşdirin"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Sabah avtomatik aktiv edin"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Cəld Paylaşım və Cihazın Tapılması kimi funksiyalar Bluetooth istifadə edir"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth sabah səhər aktiv ediləcək"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Audio paylaşın"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audio paylaşılır"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batareya"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Qulaqlıq"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Ətraflı məlumat üçün toxunun"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Siqnal ayarlanmayıb"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ekran kilidi daxil edin"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Barmaq izi sensoruna toxunun. Telefonun yan tərəfindəki qısa düymədir"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Barmaq izi sensoru"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"doğrulayın"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"cihaz daxil edin"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"İkonanı yığcamlaşdırın"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"İkonanı genişləndirin"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"və ya"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Geri jesti"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Əsas ekran jesti"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Əməliyyat düyməsi"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hazırdır"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Klaviatura işığı"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Səviyyə %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Ev nizamlayıcıları"</string> diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings.xml b/packages/SystemUI/res/values-b+sr+Latn/strings.xml index 02271f0b9585..e1ea1b4ebccb 100644 --- a/packages/SystemUI/res/values-b+sr+Latn/strings.xml +++ b/packages/SystemUI/res/values-b+sr+Latn/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Zaustavićete snimanje za: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Zaustavi snimanje"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Želite da zaustavite deljenje ekrana?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Zaustavićete deljenje za: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Zaustavi deljenje"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Zaustavićete prebacivanje za: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Zaustavi prebacivanje"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zatvori"</string> <string name="issuerecord_title" msgid="286627115110121849">"Snimač problema"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Obrađuje se snimak problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"obaveštenje o aktivnosti u toku za sesiju prikupljanja podataka o problemu"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Greška pri čuvanju snimka problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Greška pri pokretanju snimanja problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Prikazuje se ceo ekran"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Da biste zatvorili, prevucite nadole od vrha ekrana"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Važi"</string> <string name="accessibility_back" msgid="6530104400086152611">"Nazad"</string> <string name="accessibility_home" msgid="5430449841237966217">"Početna"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Otključano je licem. Pritisnite da biste nastavili."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Lice je prepoznato. Pritisnite da biste nastavili."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Lice prepoznato. Pritisnite ikonu otključavanja za nastavak."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Otključano je licem. Dodirnite da biste nastavili."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Identitet je potvrđen"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Otkažite potvrdu identiteta"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Još opcija"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Sačuvano"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"prekinite vezu"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivirajte"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatski uključi sutra"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funkcije kao što su Quick Share i Pronađi moj uređaj koriste Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth će se uključiti sutra ujutru"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Deli zvuk"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Deli se zvuk"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Nivo baterije je <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Slušalice"</string> @@ -467,9 +462,9 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Prevucite ulevo da biste započeli zajednički vodič"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Prilagodite"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Odbaci"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Dodajte, uklonite i preuredite vidžete u ovom prostoru"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Dodajte, uklonite i preuredite vidžete ovde"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Dodajte još vidžeta"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Dugi pritisak za prilagođavanje vidžeta"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Dugo pritisnite za prilagođavanje vidžeta"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Prilagodi vidžete"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Ikona aplikacije za onemogućen vidžet"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Ikona aplikacije za vidžet koji se instalira"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Dodirnite za više informacija"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nije podešen"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"unesite otključavanje ekrana"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dodirnite senzor za otisak prsta. To je kraće dugme na bočnoj strani telefona"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Senzor za otisak prsta"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"potvrdite identitet"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"unesite uređaj"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona za skupljanje"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona za proširivanje"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ili"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Pokret za vraćanje"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Pokret za početnu stranicu"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Taster radnji"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotovo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Pozadinsko osvetljenje tastature"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d. nivo od %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kontrole za dom"</string> diff --git a/packages/SystemUI/res/values-be/strings.xml b/packages/SystemUI/res/values-be/strings.xml index ed44819ef2a0..39ff70dfbabc 100644 --- a/packages/SystemUI/res/values-be/strings.xml +++ b/packages/SystemUI/res/values-be/strings.xml @@ -50,8 +50,8 @@ <string name="always_use_device" msgid="210535878779644679">"Заўсёды адкрываць <xliff:g id="APPLICATION">%1$s</xliff:g>, калі падключана прылада <xliff:g id="USB_DEVICE">%2$s</xliff:g>"</string> <string name="always_use_accessory" msgid="1977225429341838444">"Заўсёды адкрываць <xliff:g id="APPLICATION">%1$s</xliff:g>, калі падключаны аксесуар <xliff:g id="USB_ACCESSORY">%2$s</xliff:g>"</string> <string name="usb_debugging_title" msgid="8274884945238642726">"Дазволіць адладку па USB?"</string> - <string name="usb_debugging_message" msgid="5794616114463921773">"Адбiтак ключа RSA на гэтым камп\'ютары:\n<xliff:g id="FINGERPRINT">%1$s</xliff:g>"</string> - <string name="usb_debugging_always" msgid="4003121804294739548">"Заўсёды дазваляць з гэтага камп\'ютара"</string> + <string name="usb_debugging_message" msgid="5794616114463921773">"Адбiтак ключа RSA на гэтым камп’ютары:\n<xliff:g id="FINGERPRINT">%1$s</xliff:g>"</string> + <string name="usb_debugging_always" msgid="4003121804294739548">"Заўсёды дазваляць з гэтага камп’ютара"</string> <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> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Запіс з праграмы <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будзе спынены"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Спыніць запіс"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Спыніць абагульванне экрана?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Абагульванне з праграмы <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будзе спынена"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Спыніць абагульванне"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Трансляцыя праграмы <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будзе спынена"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Спыніць трансляцыю"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Закрыць"</string> <string name="issuerecord_title" msgid="286627115110121849">"Запіс праблемы"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Ідзе апрацоўка запісу праблемы"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Бягучае апавяшчэнне пра сеанс збору даных аб праблеме"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Пры захаванні запісу праблемы адбылася памылка"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Пры спробе пачаць запіс праблемы адбылася памылка"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Прагляд у поўнаэкранным рэжыме"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Каб выйсці, правядзіце пальцам уніз ад верхняга краю экрана"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Зразумела"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"На Галоўную старонку"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Разблакіравана распазнаваннем твару. Націсніце для працягу."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Твар распазнаны. Націсніце для працягу."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Твар распазнаны. Для працягу націсніце значок разблакіроўкі."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Твар распазнаны. Націсніце, каб працягнуць."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Распазнана"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Скасаваць аўтэнтыфікацыю"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Іншыя варыянты"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Захавана"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"адключыць"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"актываваць"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Аўтаматычна ўключыць заўтра"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetooth выкарыстоўваецца такімі функцыямі і сэрвісамі, як Хуткае абагульванне і Знайсці прыладу"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth уключыцца заўтра раніцай"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Абагуліць аўдыя"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Ідзе абагульванне аўдыя"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Узровень зараду: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Гук"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Гарнітура"</string> @@ -379,7 +374,7 @@ <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Пачаць"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Спыніць"</string> <string name="qs_record_issue_label" msgid="8166290137285529059">"Запіс праблемы"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"Пачынайце"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"Пачаць"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Спыніцеся"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Справаздача"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"З чым была звязана праблема, якая вам сустрэлася?"</string> @@ -469,7 +464,7 @@ <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Закрыць"</string> <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Дадаць ці выдаліць віджэты ў гэтай вобласці або змяніць іх парадак"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Дадаць іншыя віджэты"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Доўга націскайце, каб наладзіць віджэты"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Націсніце і ўтрымлівайце, каб наладзіць віджэты"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Наладзіць віджэты"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Значок праграмы для адключанага віджэта"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Значок праграмы для віджэта ў працэсе ўсталявання"</string> @@ -715,10 +710,10 @@ <string name="notification_channel_summary_automatic_silenced" msgid="7403004439649872047">"<b>Стан:</b> Пераведзена ў рэжым \"Без гуку\""</string> <string name="notification_channel_summary_automatic_promoted" msgid="1301710305149590426">"<b>Стан:</b> Ацэнена як важнае"</string> <string name="notification_channel_summary_automatic_demoted" msgid="1831303964660807700">"<b>Стан:</b> Ацэнена як няважнае"</string> - <string name="notification_channel_summary_priority_baseline" msgid="46674690072551234">"З\'яўляецца ўверсе раздзела размоў і паказвае на экране блакіроўкі відарыс профілю"</string> - <string name="notification_channel_summary_priority_bubble" msgid="1275413109619074576">"З\'яўляецца ўверсе раздзела размоў як усплывальнае апавяшчэнне, якое паказвае на экране блакіроўкі відарыс профілю"</string> - <string name="notification_channel_summary_priority_dnd" msgid="6665395023264154361">"З\'яўляецца ўверсе раздзела размоў, перарывае рэжым \"Не турбаваць\" і паказвае на экране блакіроўкі відарыс профілю"</string> - <string name="notification_channel_summary_priority_all" msgid="7151752959650048285">"З\'яўляецца ўверсе раздзела размоў як усплывальнае апавяшчэнне, якое перарывае рэжым \"Не турбаваць\" і паказвае на экране блакіроўкі відарыс профілю"</string> + <string name="notification_channel_summary_priority_baseline" msgid="46674690072551234">"З’яўляецца ўверсе раздзела размоў і паказвае на экране блакіроўкі відарыс профілю"</string> + <string name="notification_channel_summary_priority_bubble" msgid="1275413109619074576">"З’яўляецца ўверсе раздзела размоў як усплывальнае апавяшчэнне, якое паказвае на экране блакіроўкі відарыс профілю"</string> + <string name="notification_channel_summary_priority_dnd" msgid="6665395023264154361">"З’яўляецца ўверсе раздзела размоў, перарывае рэжым \"Не турбаваць\" і паказвае на экране блакіроўкі відарыс профілю"</string> + <string name="notification_channel_summary_priority_all" msgid="7151752959650048285">"З’яўляецца ўверсе раздзела размоў як усплывальнае апавяшчэнне, якое перарывае рэжым \"Не турбаваць\" і паказвае на экране блакіроўкі відарыс профілю"</string> <string name="notification_priority_title" msgid="2079708866333537093">"Прыярытэт"</string> <string name="no_shortcut" msgid="8257177117568230126">"<xliff:g id="APP_NAME">%1$s</xliff:g> не падтрымлівае функцыі размовы"</string> <string name="notification_unblockable_desc" msgid="2073030886006190804">"Гэтыя апавяшчэнні нельга змяніць."</string> @@ -1029,7 +1024,7 @@ <string name="accessibility_floating_button_docking_tooltip" msgid="6814897496767461517">"Каб часова схаваць кнопку, перамясціце яе на край"</string> <string name="accessibility_floating_button_undo" msgid="511112888715708241">"Адрабіць"</string> <string name="accessibility_floating_button_hidden_notification_title" msgid="4115036997406994799">"Кнопка спецыяльных магчымасцей схавана"</string> - <string name="accessibility_floating_button_hidden_notification_text" msgid="1457021647040915658">"Калі вы хочаце, каб яна з\'явілася, націсніце на апавяшчэнне"</string> + <string name="accessibility_floating_button_hidden_notification_text" msgid="1457021647040915658">"Калі вы хочаце, каб яна з’явілася, націсніце на апавяшчэнне"</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> @@ -1183,7 +1178,7 @@ <string name="game_status" msgid="1340694320630973259">"Ідзе гульня"</string> <string name="empty_user_name" msgid="3389155775773578300">"Сябры"</string> <string name="empty_status" msgid="5938893404951307749">"Паразмаўляем у чаце!"</string> - <string name="status_before_loading" msgid="1500477307859631381">"Неўзабаве з\'явіцца змесціва"</string> + <string name="status_before_loading" msgid="1500477307859631381">"Неўзабаве з’явіцца змесціва"</string> <string name="missed_call" msgid="4228016077700161689">"Прапушчаны выклік"</string> <string name="messages_count_overflow_indicator" msgid="7850934067082006043">"<xliff:g id="NUMBER">%d</xliff:g>+"</string> <string name="people_tile_description" msgid="8154966188085545556">"Глядзець нядаўнія паведамленні, прапушчаныя выклікі і абнаўленні стану"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Націсніце, каб убачыць больш"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Няма будзільнікаў"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"прыступіць да разблакіроўкі экрана"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Дакраніцеся да сканера адбіткаў пальцаў. Гэта кароткая кнопка на баку вашага тэлефона"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сканер адбіткаў пальцаў"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"правесці аўтэнтыфікацыю"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"адкрыць галоўны экран прылады"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Значок \"Згарнуць\""</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Значок \"Разгарнуць\""</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"або"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Жэст для вяртання на папярэдні экран"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Жэст для вяртання на галоўны экран"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Клавіша дзеяння"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Гатова"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Падсветка клавіятуры"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Узровень %1$d з %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Кіраванне домам"</string> diff --git a/packages/SystemUI/res/values-bg/strings.xml b/packages/SystemUI/res/values-bg/strings.xml index b88e0e4cde15..3a2f07f0af43 100644 --- a/packages/SystemUI/res/values-bg/strings.xml +++ b/packages/SystemUI/res/values-bg/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Ще спрете да записвате <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Спиране на записа"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Да се спре ли споделянето на екрана?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Ще спрете да споделяте <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Спиране на споделянето"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Ще спрете да предавате <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Спиране на предаването"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Затваряне"</string> <string name="issuerecord_title" msgid="286627115110121849">"Записване на проблем"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Записът се обработва"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Текущо известие за сесия за събиране на данни за проблем"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Грешка при запазването на записа на проблема"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Грешка при стартирането на записа на проблема"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Изглед на цял екран"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"За изход плъзнете надолу от горната част на екрана"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Разбрах"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"Начало"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Отключено с лице. Натиснете, за да продължите."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Лицето бе разпознато. Натиснете, за да продължите."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Лицето бе разпознато. Продължете чрез иконата за отключване."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Отключено с лице. Докоснете, за да продължите."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Удостоверено"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Анулиране на удостоверяването"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Още опции"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Запазено"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"прекратяване на връзката"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"активиране"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Автоматично включване утре"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Функции като „Бързо споделяне“ и „Намиране на устройството ми“ използват Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ще се включи утре сутрин"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Споделяне на звука"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Звукът се споделя"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Батерия: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Слушалки"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Запис на екрана"</string> <string name="performance" msgid="6552785217174378320">"Ефективност"</string> <string name="user_interface" msgid="3712869377953950887">"Потребителски интерфейс"</string> - <string name="thermal" msgid="6758074791325414831">"Термално"</string> + <string name="thermal" msgid="6758074791325414831">"Температура"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Режим за работа с една ръка"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Слухови апарати"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Активно"</string> @@ -465,7 +460,7 @@ <string name="keyguard_indication_charging_time_dock" msgid="3149328898931741271">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Зарежда се • <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g> до пълно зареждане"</string> <string name="accessibility_action_open_communal_hub" msgid="3081702792413787849">"Приспособления на заключения екран"</string> <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Прекарайте пръст наляво, за да стартирате общия урок"</string> - <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Персонализиране"</string> + <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Персонализиране"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Отхвърляне"</string> <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Добавяйте, премахвайте и пренареждайте приспособленията си в тази област"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Добавете още приспособления"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Докоснете за още информация"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Няма зададен будилник"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"въведете опция за заключване на екрана"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Докоснете сензора за отпечатъци. Това е по-късият бутон отстрани на телефона"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сензор за отпечатъци"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"удостоверяване"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"вход в устройството"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Икона за свиване"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Икона за разгъване"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"или"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Жест за връщане назад"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Жест за преминаване към началния екран"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Клавиш за действия"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Подсветка на клавиатурата"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Ниво %1$d от %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Контроли за дома"</string> diff --git a/packages/SystemUI/res/values-bn/strings.xml b/packages/SystemUI/res/values-bn/strings.xml index 0e44b3c60deb..c82b3af38e1d 100644 --- a/packages/SystemUI/res/values-bn/strings.xml +++ b/packages/SystemUI/res/values-bn/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"এটির জন্য <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> অ্যাপের কন্টেন্ট রেকর্ড হওয়া বন্ধ হয়ে যাবে"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"রেকর্ড করা বন্ধ করুন"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"স্ক্রিন শেয়ার করা বন্ধ করবেন?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"এটির জন্য <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> অ্যাপের কন্টেন্ট শেয়ার করা বন্ধ হয়ে যাবে"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"শেয়ার করা বন্ধ করুন"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"এটির জন্য <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> অ্যাপের কন্টেন্ট কাস্ট হওয়া বন্ধ হয়ে যাবে"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"কাস্টিং বন্ধ করুন"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"বন্ধ করুন"</string> <string name="issuerecord_title" msgid="286627115110121849">"Recorder-এ সমস্যা হয়েছে"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"সমস্যা সংক্রান্ত রেকর্ডিং প্রসেস করা হচ্ছে"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"সমস্যা সংগ্রহ সেশনের জন্য অনগোইং নোটিফিকেশন"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"সমস্যা সংক্রান্ত রেকর্ডিং সেভ করার সময় সমস্যা হয়েছে"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"সমস্যা সংক্রান্ত রেকর্ডিং শুরু করতে সমস্যা হয়েছে"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ফুল-স্ক্রিনে দেখা হচ্ছে"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"বেরিয়ে আসতে, আপনার স্ক্রিনের একেবারে উপর থেকে নিচের দিকে সোয়াইপ করুন"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"বুঝেছি"</string> <string name="accessibility_back" msgid="6530104400086152611">"ফিরুন"</string> <string name="accessibility_home" msgid="5430449841237966217">"হোম"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ফেসের সাহায্যে আনলক করা হয়েছে। চালিয়ে যেতে প্রেস করুন।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ফেস শনাক্ত করা হয়েছে। চালিয়ে যেতে প্রেস করুন।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ফেস শনাক্ত করা হয়েছে। চালিয়ে যেতে আনলক আইকন প্রেস করুন।"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ফেসের সাহায্যে আনলক করা হয়েছে। চালিয়ে যেতে ট্যাপ করুন।"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"প্রমাণীকৃত"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"যাচাইকরণ বাতিল করুন"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"আরও বিকল্প"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"সেভ করা আছে"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ডিসকানেক্ট করুন"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"চালু করুন"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"আগামীকাল অটোমেটিক চালু হয়ে যাবে"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"দ্রুত শেয়ার ও Find My Device-এর মতো ফিচার ব্লুটুথ ব্যবহার করে"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ব্লুটুথ আগামীকাল সকালে চালু হয়ে যাবে"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"অডিও শেয়ার করুন"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"অডিও শেয়ার করা হচ্ছে"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"চার্জ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"অডিও"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"হেডসেট"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"উইজেট যোগ করুন"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"হয়ে গেছে"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"উইজেট যোগ করুন"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"নিজের ট্যাবলেট আনলক বা করেই আপনার প্রিয় অ্যাপ উইজেটে দ্রুত অ্যাক্সেস পান।"</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"নিজের ট্যাবলেট আনলক না করেই আপনার প্রিয় অ্যাপ উইজেটে দ্রুত অ্যাক্সেস পান।"</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"লক স্ক্রিনে যেকোনও উইজেটকে অনুমতি দেবেন?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"সেটিংস খুলুন"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"অফিসের অ্যাপ আনপজ করতে চান?"</string> @@ -562,7 +557,7 @@ <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"<xliff:g id="VPN_APP">%1$s</xliff:g>-এর মাধ্যমে আপনার ব্যক্তিগত অ্যাপ ইন্টারনেটের সাথে কানেক্ট করা আছে"</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"<xliff:g id="VPN_APP">%1$s</xliff:g>-এর মাধ্যমে এই ডিভাইস ইন্টারনেটের সাথে কানেক্ট করা আছে"</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"এই ডিভাইস <xliff:g id="ORGANIZATION_NAME">%s</xliff:g> দিয়েছে"</string> - <string name="monitoring_title_device_owned" msgid="7029691083837606324">"ডিভাইসের পরিচালনা"</string> + <string name="monitoring_title_device_owned" msgid="7029691083837606324">"ডিভাইস ম্যানেজমেন্ট"</string> <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"নেটওয়ার্ক লগিং"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"CA সার্টিফিকেট"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"আরও তথ্যের জন্য ট্যাপ করুন"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"কোনও অ্যালার্ম সেট করা নেই"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"স্ক্রিন লক খুলুন"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ফিঙ্গারপ্রিন্ট সেন্সর টাচ করুন। এটি ফোনের পাশের দিকে থাকা তুলনামূলক ছোট বোতাম"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ফিঙ্গারপ্রিন্ট সেন্সর"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"যাচাই করিয়ে নিন"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ডিভাইস আনলক করুন"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"আইকন আড়াল করুন"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"আইকন বড় করুন"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"অথবা"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ফিরে যাওয়ার জেসচার"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"হোমপেজে যাওয়ার জেসচার"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"অ্যাকশন কী"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"হয়ে গেছে"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"কীবোর্ড ব্যাকলাইট"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d-এর মধ্যে %1$d লেভেল"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"হোম কন্ট্রোল"</string> diff --git a/packages/SystemUI/res/values-bs/strings.xml b/packages/SystemUI/res/values-bs/strings.xml index a7f90687b1ec..6e16fa76cf2b 100644 --- a/packages/SystemUI/res/values-bs/strings.xml +++ b/packages/SystemUI/res/values-bs/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Zaustavit ćete snimanje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Zaustavi snimanje"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Zaustaviti dijeljenje ekrana?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Zaustavit ćete dijeljenje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Zaustavi dijeljenje"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Zaustavit ćete emitiranje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Zaustavi emitiranje"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zatvori"</string> <string name="issuerecord_title" msgid="286627115110121849">"Snimač problema"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Obrada snimka problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Obavještenje o aktivnosti u pozadini za sesiju prikupljanja podataka o problemu"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Došlo je do greške prilikom pohranjivanja snimka problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Došlo je do greške prilikom pokretanja snimanja problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Prikazivanje preko cijelog ekrana"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Da izađete, prevucite s vrha ekrana nadolje"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Razumijem"</string> <string name="accessibility_back" msgid="6530104400086152611">"Nazad"</string> <string name="accessibility_home" msgid="5430449841237966217">"Dugme za početnu stranicu"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Otključano licem. Pritisnite da nastavite."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Lice prepoznato. Pritisnite da nastavite."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Lice prepoznato. Pritisnite ikonu za otklj. da nastavite."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Otključano je licem. Dodirnite da nastavite."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentificirano"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Otkažite autentifikaciju"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Više opcija"</string> @@ -299,12 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Sačuvano"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"prekid veze"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiviranje"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatski uključi sutra"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funkcije kao što su Quick Share i Pronađi moj uređaj koriste Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth će se uključiti sutra ujutro"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Dijeli zvuk"</string> - <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Zajedničko slušanje"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Dijeljenje zvuka"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> baterije"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Zvuk"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Slušalice"</string> @@ -377,7 +374,7 @@ <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Započnite"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Zaustavite"</string> <string name="qs_record_issue_label" msgid="8166290137285529059">"Snimite problem"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"Pokrenite"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"Pokreni"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Zaustavite"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Izvještaj o grešci"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Koji dio uređaja je imao problem?"</string> @@ -465,14 +462,14 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Prevucite ulijevo da pokrenete zajednički vodič"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Prilagodite"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Odbaci"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Dodajte, uklonite i promijenite raspored vidžeta u ovom prostoru"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Dodajte, uklonite i preuredite vidžete u prostoru"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Dodajte još vidžeta"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Pritisnite i zadržite da prilagodite vidžete"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Prilagodite vidžete"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Ikona aplikacije za onemogućeni vidžet"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Ikona aplikacije za vidžet koji se instalira"</string> <string name="edit_widget" msgid="9030848101135393954">"Uredite vidžet"</string> - <string name="button_to_remove_widget" msgid="3948204829181214098">"Uklanjanje"</string> + <string name="button_to_remove_widget" msgid="3948204829181214098">"Ukloni"</string> <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Dodajte vidžet"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Gotovo"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Dodajte vidžet"</string> @@ -641,7 +638,7 @@ <string name="volume_panel_spatial_audio_title" msgid="3367048857932040660">"Prostorni zvuk"</string> <string name="volume_panel_spatial_audio_off" msgid="4177490084606772989">"Isključi"</string> <string name="volume_panel_spatial_audio_fixed" msgid="3136080137827746046">"Fiksno"</string> - <string name="volume_panel_spatial_audio_tracking" msgid="5711115234001762974">"Praćenje glave"</string> + <string name="volume_panel_spatial_audio_tracking" msgid="5711115234001762974">"Praćenje položaja glave"</string> <string name="volume_ringer_change" msgid="3574969197796055532">"Dodirnite da promijenite način rada zvuka zvona"</string> <string name="volume_ringer_hint_mute" msgid="4263821214125126614">"isključite zvuk"</string> <string name="volume_ringer_hint_unmute" msgid="6119086890306456976">"uključite zvuk"</string> @@ -778,7 +775,7 @@ <string name="keyboard_shortcut_join" msgid="3578314570034512676">"ili"</string> <string name="keyboard_shortcut_clear_text" msgid="6631051796030377857">"Brisanje upita za pretraživanje"</string> <string name="keyboard_shortcut_search_list_title" msgid="4271769465397671138">"Prečice na tastaturi"</string> - <string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"Pretraživanje prečica"</string> + <string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"Pretražite prečice"</string> <string name="keyboard_shortcut_search_list_no_result" msgid="6819302191660875501">"Nisu pronađene prečice"</string> <string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"Sistem"</string> <string name="keyboard_shortcut_search_category_input" msgid="5440558509904296233">"Unos"</string> @@ -1195,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Dodirnite za više informacija"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nema nijednog alarma"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"unos zaključavanja ekrana"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dodirnite senzor za otisak prsta. To je kraće dugme na bočnoj strani telefona"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Senzor za otisak prsta"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentificiranje"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"pristup uređaju"</string> @@ -1345,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona sužavanja"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona proširivanja"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ili"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Pokret za povratak"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Pokret za povratak na početni ekran"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tipka radnji"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotovo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Pozadinsko osvjetljenje tastature"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d. nivo od %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kontrole za dom"</string> diff --git a/packages/SystemUI/res/values-ca/strings.xml b/packages/SystemUI/res/values-ca/strings.xml index 4f055d41199c..7e2b6c220eed 100644 --- a/packages/SystemUI/res/values-ca/strings.xml +++ b/packages/SystemUI/res/values-ca/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Deixaràs de gravar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Atura la gravació"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vols deixar de compartir la pantalla?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Deixaràs de compartir <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Deixa de compartir"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Deixaràs d\'emetre <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Atura l\'emissió"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Tanca"</string> <string name="issuerecord_title" msgid="286627115110121849">"Gravadora de problemes"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processant gravació del problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificació en curs d\'una sessió de recollida de dades del problema"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"S\'ha produït un error en desar la gravació del problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"S\'ha produït un error en iniciar la gravació del problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualització en pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Per sortir, llisca cap avall des de la part superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entesos"</string> <string name="accessibility_back" msgid="6530104400086152611">"Enrere"</string> <string name="accessibility_home" msgid="5430449841237966217">"Inici"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"S\'ha desbloquejat amb la cara. Prem per continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"S\'ha reconegut la cara. Prem per continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"S\'ha reconegut la cara. Prem la icona per continuar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"S\'ha desbloquejat amb la cara. Toca per continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticat"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel·la l\'autenticació"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Més opcions"</string> @@ -293,20 +291,17 @@ <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"Toca per connectar o desconnectar un dispositiu"</string> <string name="pair_new_bluetooth_devices" msgid="4601767620843349645">"Vincula un dispositiu nou"</string> <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"Mostra-ho tot"</string> - <string name="turn_on_bluetooth" msgid="5681370462180289071">"Utilitza\'l"</string> + <string name="turn_on_bluetooth" msgid="5681370462180289071">"Utilitza el Bluetooth"</string> <string name="quick_settings_bluetooth_device_connected" msgid="7884777006729260996">"Connectat"</string> <string name="quick_settings_bluetooth_device_audio_sharing" msgid="1496358082943301670">"Compartició d\'àudio"</string> <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Desat"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconnecta"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activa"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activa automàticament demà"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Les funcions com Quick Share i Troba el meu dispositiu utilitzen el Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"El Bluetooth s\'activarà demà al matí"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Comparteix l\'àudio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"S\'està compartint l\'àudio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de bateria"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Àudio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Auriculars"</string> @@ -382,7 +377,7 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"Inicia"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Atura"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Informe d\'errors"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"L\'experiència amb el dispositiu s\'ha vist afectada?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Quina part de l\'experiència s\'ha vist afectada?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Selecciona el tipus de problema"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Gravació de pantalla"</string> <string name="performance" msgid="6552785217174378320">"Rendiment"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toca per obtenir més informació"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Cap alarma definida"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"utilitza el bloqueig de pantalla"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toca el sensor d\'empremtes digitals. És el botó més curt del lateral del telèfon."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor d\'empremtes digitals"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"accedir al dispositiu"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Replega la icona"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Desplega la icona"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"o"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gest Enrere"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gest Inici"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla d\'acció"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Fet"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Retroil·luminació del teclat"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivell %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controls de la llar"</string> diff --git a/packages/SystemUI/res/values-cs/strings.xml b/packages/SystemUI/res/values-cs/strings.xml index e50fea56fdf4..591f71fe1f66 100644 --- a/packages/SystemUI/res/values-cs/strings.xml +++ b/packages/SystemUI/res/values-cs/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Záznam obrazovky se zpracovává"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Trvalé oznámení o relaci nahrávání"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Začít nahrávat?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Během nahrávání má Android přístup k veškerému obsahu, který je viditelný na obrazovce nebo se přehrává v zařízení. Buďte proto opatrní s věcmi, jako jsou hesla, platební údaje, zprávy, fotografie, zvuk a video."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Během nahrávání má Android přístup k veškerému obsahu, který je viditelný na obrazovce nebo se přehrává v zařízení. Dejte proto pozor na hesla, platební údaje, zprávy, fotografie, zvukové záznamy nebo videa."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Během nahrávání aplikace má Android přístup k veškerému obsahu, který je v dané aplikaci zobrazen nebo přehráván. Buďte proto opatrní s informacemi, jako jsou hesla, platební údaje, zprávy, fotky, zvukové záznamy nebo videa."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Začít nahrávat"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Nahrávat zvuk"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Přestane se nahrávat aplikace <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Ukončit nahrávání"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ukončit sdílení obrazovky?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Přestane se sdílet aplikace <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Ukončit sdílení"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Přestane se odesílat aplikace <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Ukončit odesílání"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zavřít"</string> <string name="issuerecord_title" msgid="286627115110121849">"Rekordér problémů"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Zpracování záznamu problému"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Upozornění na probíhající shromažďování dat o problému"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Při ukládání záznamu problému došlo k chybě"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Při zahájení záznamu problému došlo k chybě"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Zobrazování přes celou obrazovku"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Tento režim ukončíte přejetím prstem dolů z horní části obrazovky"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Rozumím"</string> <string name="accessibility_back" msgid="6530104400086152611">"Zpět"</string> <string name="accessibility_home" msgid="5430449841237966217">"Domů"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Odemknuto obličejem. Pokračujte stisknutím."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Obličej rozpoznán. Pokračujte stisknutím."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Obličej rozpoznán. Klepněte na ikonu odemknutí."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Odemknuto obličejem. Pokračujte klepnutím."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Ověřeno"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Zrušit ověření"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Další možnosti"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Uloženo"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"odpojit"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivovat"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Zítra automaticky zapnout"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetooth využívají funkce jako Quick Share a Najdi moje zařízení."</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth se zapne zítra ráno."</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Sdílet zvuk"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Zvuk se sdílí"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Baterie: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Zvuk"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Sluchátka"</string> @@ -383,11 +378,11 @@ <string name="qs_record_issue_stop" msgid="3531747965741982657">"Ukončit"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Zpráva o chybě"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Co v zařízení bylo ovlivněno?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Vyberte druh problém"</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Vyberte druh problému"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Záznam obrazovky"</string> <string name="performance" msgid="6552785217174378320">"Výkon"</string> <string name="user_interface" msgid="3712869377953950887">"Uživatelské rozhraní"</string> - <string name="thermal" msgid="6758074791325414831">"Termovize"</string> + <string name="thermal" msgid="6758074791325414831">"Teplota"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Režim jedné ruky"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Naslouchátka"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktivní"</string> @@ -397,7 +392,7 @@ <string name="accessibility_hearing_device_pair_new_device" msgid="8440082580186130090">"Kliknutím spárujete nové zařízení"</string> <string name="hearing_devices_presets_error" msgid="350363093458408536">"Předvolbu nelze aktualizovat"</string> <string name="hearing_devices_preset_label" msgid="7878267405046232358">"Předvolba"</string> - <string name="live_caption_title" msgid="8916875614623730005">"Živý přepis"</string> + <string name="live_caption_title" msgid="8916875614623730005">"Okamžité titulky"</string> <string name="sensor_privacy_start_use_mic_dialog_title" msgid="563796653825944944">"Odblokovat mikrofon zařízení?"</string> <string name="sensor_privacy_start_use_camera_dialog_title" msgid="8807639852654305227">"Odblokovat fotoaparát zařízení?"</string> <string name="sensor_privacy_start_use_mic_camera_dialog_title" msgid="4316471859905020023">"Odblokovat fotoaparát a mikrofon zařízení?"</string> @@ -597,7 +592,7 @@ <string name="volume_odi_captions_hint_disable" msgid="2518846326748183407">"deaktivovat"</string> <string name="sound_settings" msgid="8874581353127418308">"Zvuk a vibrace"</string> <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"Nastavení"</string> - <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Živý přepis"</string> + <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Okamžité titulky"</string> <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"Hlasitost byla snížena na bezpečnou úroveň"</string> <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Hlasitost sluchátek byla vysoká déle, než je doporučeno"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Hlasitost sluchátek překročila bezpečný limit pro tento týden"</string> @@ -618,11 +613,11 @@ <string name="screen_pinning_negative" msgid="6882816864569211666">"Ne, děkuji"</string> <string name="screen_pinning_start" msgid="7483998671383371313">"Aplikace byla připnuta"</string> <string name="screen_pinning_exit" msgid="4553787518387346893">"Aplikace byla odepnuta"</string> - <string name="stream_voice_call" msgid="7468348170702375660">"Hovor"</string> + <string name="stream_voice_call" msgid="7468348170702375660">"Hovory"</string> <string name="stream_system" msgid="7663148785370565134">"Systém"</string> <string name="stream_ring" msgid="7550670036738697526">"Vyzvánění"</string> <string name="stream_music" msgid="2188224742361847580">"Média"</string> - <string name="stream_alarm" msgid="16058075093011694">"Budík"</string> + <string name="stream_alarm" msgid="16058075093011694">"Budíky"</string> <string name="stream_notification" msgid="7930294049046243939">"Oznámení"</string> <string name="stream_bluetooth_sco" msgid="6234562365528664331">"Bluetooth"</string> <string name="stream_dtmf" msgid="7322536356554673067">"Tónová volba"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Klepnutím zobrazíte další informace"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Budík nenastaven"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"zadejte zámek obrazovky"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dotkněte se snímače otisků prstů. Vypínač je kratší tlačítko na boku telefonu."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Snímač otisků prstů"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ověříte"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"zadáte zařízení"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona sbalení"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona rozbalení"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"nebo"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto zpět"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto domů"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Akční klávesa"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hotovo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Podsvícení klávesnice"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Úroveň %1$d z %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Ovládání domácnosti"</string> diff --git a/packages/SystemUI/res/values-da/strings.xml b/packages/SystemUI/res/values-da/strings.xml index 310f2b195759..0abf2a42a28c 100644 --- a/packages/SystemUI/res/values-da/strings.xml +++ b/packages/SystemUI/res/values-da/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Du stopper optagelse af <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop optagelse"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vil du stoppe skærmdelingen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Du stopper deling af <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop deling"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Du stopper casting af <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop cast"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Luk"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problemoptagelse"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Behandler optagelse af problem"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Igangværende notifikation om en session med problemindsamling"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Kunne ikke gemme optagelse af problem"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Fejl under forsøg på at starte optagelse af problem"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visning i fuld skærm"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Stryg nedad fra toppen af skærmen for at afslutte"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Tilbage"</string> <string name="accessibility_home" msgid="5430449841237966217">"Hjem"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Låst op ved hjælp af ansigt. Tryk for at fortsætte."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Ansigt genkendt. Tryk for at fortsætte."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Ansigt genkendt. Tryk på oplåsningsikonet for at fortsætte."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Låst op ved hjælp af ansigt. Tryk for at fortsætte."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Godkendt"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Annuller godkendelsen"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Flere valgmuligheder"</string> @@ -216,13 +214,13 @@ <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"Dette er påkrævet for at forbedre sikkerheden og ydeevnen"</string> <string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Konfigurer fingeroplåsning igen"</string> <string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Fingeroplåsning"</string> - <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Konfigurer fingeroplåsning"</string> + <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Konfigurer fingeroplåsning"</string> <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Hvis du vil konfigurere fingeroplåsning igen, bliver dine nuværende fingeraftryksbilleder og -modeller slettet.\n\nNår de er slettet, skal du konfigurere fingeroplåsning igen for at bruge dit fingeraftryk til at låse din telefon op eller verificere din identitet."</string> <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"Hvis du vil konfigurere fingeroplåsning igen, bliver dine nuværende fingeraftryksbilleder og -modeller slettet.\n\nNår de er slettet, skal du konfigurere fingeroplåsning igen for at bruge dit fingeraftryk til at låse din telefon op eller verificere din identitet."</string> <string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Fingeroplåsning kunne ikke konfigureres. Gå til Indstillinger for at prøve igen."</string> <string name="face_re_enroll_notification_title" msgid="1850838867718410520">"Konfigurer ansigtsoplåsning igen"</string> <string name="face_re_enroll_notification_name" msgid="7384545252206120659">"Ansigtsoplåsning"</string> - <string name="face_re_enroll_dialog_title" msgid="6392173708176069994">"Konfigurer ansigtsoplåsning"</string> + <string name="face_re_enroll_dialog_title" msgid="6392173708176069994">"Konfigurer ansigtsoplåsning"</string> <string name="face_re_enroll_dialog_content" msgid="7353502359464038511">"Hvis du vil konfigurere ansigtsoplåsning igen, bliver din nuværende ansigtsmodel slettet.\n\nDu skal konfigurere funktionen igen for at bruge ansigtsgenkendelse til at låse din telefon op."</string> <string name="face_reenroll_failure_dialog_content" msgid="7073947334397236935">"Ansigtsoplåsning kunne ikke konfigureres. Gå til Indstillinger for at prøve igen."</string> <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"Sæt fingeren på fingeraftrykssensoren"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Gemt"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"afbryd forbindelse"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivér"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Aktivér automatisk i morgen"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funktioner som f.eks. Quick Share og Find min enhed anvender Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth aktiveres i morgen tidlig"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Del lyd"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Deler lyd"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batteri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Lyd"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Skærmoptagelse"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Start"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Stop"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Optag problem"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Registrer problem"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Start"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Stop"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Fejlrapport"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tryk for at få flere oplysninger"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ingen alarm er indstillet"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"angiv skærmlås"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Sæt fingeren på fingeraftrykssensoren. Det er den mindste knap på siden af telefonen"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingeraftrykssensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"godkende"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"få adgang til enheden"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikon for Skjul"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikon for Udvid"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"eller"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Bevægelse for at gå tilbage"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Bevægelse for at gå til startskærm"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Handlingstast"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Udfør"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Tastaturets baggrundslys"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Niveau %1$d af %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Hjemmestyring"</string> diff --git a/packages/SystemUI/res/values-de/strings.xml b/packages/SystemUI/res/values-de/strings.xml index 27f6b57aab22..3c57ab82122f 100644 --- a/packages/SystemUI/res/values-de/strings.xml +++ b/packages/SystemUI/res/values-de/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> wird dann nicht mehr aufgezeichnet"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Aufzeichnung beenden"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Bildschirmfreigabe beenden?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> wird dann nicht mehr geteilt"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Freigabe beenden"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> wird dann nicht mehr übertragen"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Streamen beenden"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Schließen"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problem aufzeichnen"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Aufzeichnung wird verarbeitet"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Benachrichtigung über laufende Aufzeichnung eines Problems"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Fehler beim Speichern der Aufzeichnung des Problems"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Fehler beim Starten der Aufzeichnung des Problems"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Vollbildmodus wird aktiviert"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Wenn du den Modus verlassen möchtest, wische vom oberen Displayrand nach unten"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Ok"</string> <string name="accessibility_back" msgid="6530104400086152611">"Zurück"</string> <string name="accessibility_home" msgid="5430449841237966217">"Startbildschirm"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Gerät mit dem Gesicht entsperrt. Tippe, um fortzufahren."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Gesicht erkannt. Tippe, um fortzufahren."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Gesicht erkannt. Tippe zum Fortfahren auf das Symbol „Entsperren“."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Per Gesichtserkennung entsperrt. Tippe, um fortzufahren."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authentifiziert"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Authentifizierung abbrechen"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Weitere Optionen"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Gespeichert"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"Verknüpfung aufheben"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivieren"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Morgen automatisch aktivieren"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funktionen wie „Quick Share“ und „Mein Gerät finden“ verwenden Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth wird morgen früh aktiviert"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Audioinhalte freigeben"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audioinhalte werden freigegeben"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Akkustand: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -378,11 +373,11 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Bildschirmaufzeichnung"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Starten"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Beenden"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Problem aufnehmen"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"Aufnahme starten"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Problem aufzeichnen"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"Starten"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Aufnahme beenden"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Fehlerbericht"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Welche Bereiche des Geräts waren betroffen?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Welche Probleme sind bei deinem Gerät aufgetreten?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Art des Problems auswählen"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Bildschirmaufnahme"</string> <string name="performance" msgid="6552785217174378320">"Leistung"</string> @@ -599,16 +594,16 @@ <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"Einstellungen"</string> <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Automatische Untertitel"</string> <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"Auf verträglichere Lautstärke eingestellt"</string> - <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Die Kopfhörerlautstärke war länger als empfohlen hoch eingestellt"</string> + <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Die Kopfhörer sind schon länger als empfohlen auf hohe Lautstärke eingestellt"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Die Kopfhörerlautstärke hat für diese Woche das Sicherheitslimit überschritten"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"Weiterhören"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"Leiser stellen"</string> <string name="screen_pinning_title" msgid="9058007390337841305">"App ist auf dem Bildschirm fixiert"</string> - <string name="screen_pinning_description" msgid="8699395373875667743">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Berühre und halte dazu \"Zurück\" und \"Übersicht\"."</string> - <string name="screen_pinning_description_recents_invisible" msgid="4564466648700390037">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Berühre und halte dazu \"Zurück\" und \"Startbildschirm\"."</string> + <string name="screen_pinning_description" msgid="8699395373875667743">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Halte dazu \"Zurück\" und \"Übersicht\" gedrückt."</string> + <string name="screen_pinning_description_recents_invisible" msgid="4564466648700390037">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Halte dazu \"Zurück\" und \"Startbildschirm\" gedrückt."</string> <string name="screen_pinning_description_gestural" msgid="7246323931831232068">"Die App bleibt so lange auf dem Bildschirm angepinnt, bis du die Fixierung aufhebst. Wische dazu nach oben und halte den Bildschirm gedrückt."</string> - <string name="screen_pinning_description_accessible" msgid="7386449191953535332">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Berühre und halte dazu \"Übersicht\"."</string> - <string name="screen_pinning_description_recents_invisible_accessible" msgid="2857071808674481986">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Berühre und halte dazu \"Startbildschirm\"."</string> + <string name="screen_pinning_description_accessible" msgid="7386449191953535332">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Halte dazu \"Übersicht\" gedrückt."</string> + <string name="screen_pinning_description_recents_invisible_accessible" msgid="2857071808674481986">"Die App bleibt so lange auf dem Bildschirm fixiert, bis du die Fixierung aufhebst. Halte dazu \"Startbildschirm\" gedrückt."</string> <string name="screen_pinning_exposes_personal_data" msgid="8189852022981524789">"Möglicherweise kann auf personenbezogene Daten (Kontakte, E-Mails usw.) zugegriffen werden."</string> <string name="screen_pinning_can_open_other_apps" msgid="7529756813231421455">"Die fixierte App kann ggf. andere Apps öffnen."</string> <string name="screen_pinning_toast" msgid="8177286912533744328">"Zum Aufheben der Fixierung dieser App \"Zurück\" und \"Übersicht\" halten"</string> @@ -814,7 +809,7 @@ <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"Eingabe"</string> <string name="input_switch_input_language_next" msgid="3782155659868227855">"Zur nächsten Sprache wechseln"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"Zur vorherigen Sprache wechseln"</string> - <string name="input_access_emoji" msgid="8105642858900406351">"Auf Emoji zugreifen"</string> + <string name="input_access_emoji" msgid="8105642858900406351">"Auf Emojis zugreifen"</string> <string name="input_access_voice_typing" msgid="7291201476395326141">"Auf Spracheingabe zugreifen"</string> <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"Apps"</string> <string name="keyboard_shortcut_group_applications_assist" msgid="6772492350416591448">"Assistant"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Für weitere Informationen tippen"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Kein Wecker gestellt"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"Displaysperre eingeben"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Berühre den Fingerabdrucksensor. Das ist die kürzere Taste an der Seite des Smartphones."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerabdrucksensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"Authentifizieren"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"Eingeben des Geräts"</string> @@ -1282,7 +1278,7 @@ <string name="home_quick_affordance_unavailable_configure_the_app" msgid="604424593994493281">"• Mindestens ein Gerät oder Gerätesteuerfeld ist verfügbar"</string> <string name="notes_app_quick_affordance_unavailable_explanation" msgid="4796955161600178530">"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 & halten"</string> + <string name="keyguard_affordance_press_too_short" msgid="8145437175134998864">"Verknüpfung gedrückt halten"</string> <string name="rear_display_bottom_sheet_cancel" msgid="3461468855493357248">"Abbrechen"</string> <string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"Jetzt umdrehen"</string> <string name="rear_display_folded_bottom_sheet_title" msgid="3930008746560711990">"Smartphone auffalten"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Symbol „Minimieren“"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Symbol „Maximieren“"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"oder"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Touch-Geste „Zurück“"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Touch-Geste „Startbildschirm“"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Aktionstaste"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Fertig"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Tastaturbeleuchtung"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d von %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Smart-Home-Steuerung"</string> diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml index e2480b2eaf82..e2bf5f190b5f 100644 --- a/packages/SystemUI/res/values-el/strings.xml +++ b/packages/SystemUI/res/values-el/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Θα διακόψετε την εγγραφή της εφαρμογής <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Διακοπή εγγραφής"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Διακοπή κοινής χρήσης οθόνης;"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Θα διακόψετε την κοινή χρήση της εφαρμογής <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Διακοπή κοινής χρήσης"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Θα διακόψετε τη μετάδοση της εφαρμογής <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Διακοπή μετάδοσης"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Κλείσιμο"</string> <string name="issuerecord_title" msgid="286627115110121849">"Εργαλείο καταγραφής προβλημάτων"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Επεξερ. καταγραφής προβλήματος"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ειδοποίηση σε εξέλιξη για μια περίοδο λειτουργίας συλλογής προβλημάτων"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Σφάλμα κατά την αποθήκευση της καταγραφής του προβλήματος"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Σφάλμα κατά την έναρξη της καταγραφής του προβλήματος"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Προβολή σε πλήρη οθόνη"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Για έξοδο, σύρετε προς τα κάτω από το επάνω μέρος της οθόνης"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Το κατάλαβα"</string> <string name="accessibility_back" msgid="6530104400086152611">"Πίσω"</string> <string name="accessibility_home" msgid="5430449841237966217">"Αρχική οθόνη"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Ξεκλείδωμα με αναγνώριση προσώπου. Πατήστε για συνέχεια."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Το πρόσωπο αναγνωρίστηκε. Πατήστε για συνέχεια."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Το πρόσωπο αναγνωρ. Πατήστε το εικον. ξεκλειδ. για συνέχεια."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Ξεκλείδωμα με αναγνώριση προσώπου. Πατήστε για συνέχεια."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Ολοκληρώθηκε ο έλεγχος ταυτότητας"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Ακύρωση ελέγχου ταυτότητας"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Περισσότερες επιλογές"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Αποθηκεύτηκε"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"αποσύνδεση"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ενεργοποίηση"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Αυτόματη ενεργοποίηση αύριο"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Λειτουργίες όπως το Quick Share και η Εύρεση συσκευής χρησιμοποιούν το Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Το Bluetooth θα ενεργοποιηθεί αύριο το πρωί"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Κοινή χρήση ήχου"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Κοινή χρήση ήχου σε εξέλιξη"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Μπαταρία <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Ήχος"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Ακουστικά"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Εγγραφή οθόνης"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Έναρξη"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Διακοπή"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Εγγραφή προβλήματος"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Εγγραφή προβλ."</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Έναρξη"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Διακοπή"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Αναφορά σφάλματος"</string> @@ -390,7 +385,7 @@ <string name="thermal" msgid="6758074791325414831">"Θερμικό"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Λειτουργία ενός χεριού"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Συσκευές ακοής"</string> - <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ενεργά"</string> + <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ενεργές"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"Αποσυνδεδεμένα"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"Συσκευές ακοής"</string> <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"Σύζευξη νέας συσκευής"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Πατήστε για περισσότερες πληροφορίες."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Δεν ορίστηκε ξυπνητ."</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"εισαγωγή κλειδώματος οθόνης"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Αγγίξτε τον αισθητήρα δακτυλικών αποτυπωμάτων. Είναι το πιο κοντό κουμπί στην πλευρά του τηλεφώνου."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Αισθητήρας δακτυλικών αποτυπωμάτων"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"έλεγχος ταυτότητας"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"εισαγωγή συσκευής"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Εικονίδιο σύμπτυξης"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Εικονίδιο ανάπτυξης"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ή"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Κίνηση επιστροφής"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Κίνηση μετάβασης στην αρχική οθόνη"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Πλήκτρο ενέργειας"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Τέλος"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Οπίσθιος φωτισμός πληκτρολογίου"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Επίπεδο %1$d από %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Οικιακοί έλεγχοι"</string> diff --git a/packages/SystemUI/res/values-en-rAU/strings.xml b/packages/SystemUI/res/values-en-rAU/strings.xml index 303e9220a2f3..8c156f5ada5c 100644 --- a/packages/SystemUI/res/values-en-rAU/strings.xml +++ b/packages/SystemUI/res/values-en-rAU/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"You will stop recording <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop recording"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Stop sharing screen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"You will stop sharing <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop sharing"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"You will stop casting <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop casting"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Close"</string> <string name="issuerecord_title" msgid="286627115110121849">"Issue Recorder"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processing issue recording"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongoing notification for an issue collection session"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Error saving issue recording"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Error starting issue recording"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Got it"</string> <string name="accessibility_back" msgid="6530104400086152611">"Back"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Unlocked by face. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Face recognised. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Face recognised. Press the unlock icon to continue."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Unlocked by face. Tap to continue."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authenticated"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel authentication"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"More options"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saved"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnect"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatically turn on tomorrow"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Features like Quick Share and Find My Device use Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth will turn on tomorrow morning"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Share audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Sharing audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> battery"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tap for more information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No alarm set"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"enter screen lock"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Touch the fingerprint sensor. It\'s the shorter button on the side of the phone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerprint sensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"Authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"enter device"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Collapse icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Expand icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"or"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Back gesture"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Home gesture"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Keyboard backlight"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d of %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Home controls"</string> diff --git a/packages/SystemUI/res/values-en-rCA/strings.xml b/packages/SystemUI/res/values-en-rCA/strings.xml index 042d06e6eca1..b1cc08661c73 100644 --- a/packages/SystemUI/res/values-en-rCA/strings.xml +++ b/packages/SystemUI/res/values-en-rCA/strings.xml @@ -125,26 +125,19 @@ <string name="screenrecord_save_text" msgid="3008973099800840163">"Tap to view"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"Error saving screen recording"</string> <string name="screenrecord_start_error" msgid="2200660692479682368">"Error starting screen recording"</string> - <!-- no translation found for screenrecord_stop_dialog_title (2685522129492260887) --> - <skip /> - <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> - <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="screenrecord_stop_dialog_title" msgid="2685522129492260887">"Stop recording screen?"</string> + <string name="screenrecord_stop_dialog_message" msgid="1926783607059442889">"You will stop recording your screen"</string> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"You will stop recording <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop recording"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Stop sharing screen?"</string> + <string name="share_to_app_stop_dialog_message" msgid="3181723638915877339">"You will stop sharing your screen"</string> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"You will stop sharing <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop sharing"</string> + <string name="cast_to_other_device_stop_dialog_title" msgid="1910372600290258193">"Stop casting screen?"</string> + <string name="cast_to_other_device_stop_dialog_message" msgid="1502520537030715412">"You will stop casting your screen"</string> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"You will stop casting <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop casting"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Close"</string> <string name="issuerecord_title" msgid="286627115110121849">"Issue Recorder"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processing issue recording"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongoing notification for an issue collection session"</string> @@ -155,8 +148,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Error saving issue recording"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Error starting issue recording"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Got it"</string> <string name="accessibility_back" msgid="6530104400086152611">"Back"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +181,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Unlocked by face. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Face recognized. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Face recognized. Press the unlock icon to continue."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Unlocked by face. Tap to continue."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authenticated"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel Authentication"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"More Options"</string> @@ -299,8 +292,7 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saved"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnect"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatically turn on tomorrow"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Features like Quick Share and Find My Device use Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth will turn on tomorrow morning"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Share audio"</string> @@ -1195,6 +1187,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tap for more information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No alarm set"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"enter screen lock"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Touch the fingerprint sensor. It’s the shorter button on the side of the phone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerprint sensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"enter device"</string> @@ -1345,14 +1338,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Collapse icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Expand icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"or"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Back gesture"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Home gesture"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Keyboard backlight"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d of %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Home Controls"</string> diff --git a/packages/SystemUI/res/values-en-rGB/strings.xml b/packages/SystemUI/res/values-en-rGB/strings.xml index 303e9220a2f3..8c156f5ada5c 100644 --- a/packages/SystemUI/res/values-en-rGB/strings.xml +++ b/packages/SystemUI/res/values-en-rGB/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"You will stop recording <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop recording"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Stop sharing screen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"You will stop sharing <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop sharing"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"You will stop casting <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop casting"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Close"</string> <string name="issuerecord_title" msgid="286627115110121849">"Issue Recorder"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processing issue recording"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongoing notification for an issue collection session"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Error saving issue recording"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Error starting issue recording"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Got it"</string> <string name="accessibility_back" msgid="6530104400086152611">"Back"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Unlocked by face. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Face recognised. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Face recognised. Press the unlock icon to continue."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Unlocked by face. Tap to continue."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authenticated"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel authentication"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"More options"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saved"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnect"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatically turn on tomorrow"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Features like Quick Share and Find My Device use Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth will turn on tomorrow morning"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Share audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Sharing audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> battery"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tap for more information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No alarm set"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"enter screen lock"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Touch the fingerprint sensor. It\'s the shorter button on the side of the phone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerprint sensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"Authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"enter device"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Collapse icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Expand icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"or"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Back gesture"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Home gesture"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Keyboard backlight"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d of %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Home controls"</string> diff --git a/packages/SystemUI/res/values-en-rIN/strings.xml b/packages/SystemUI/res/values-en-rIN/strings.xml index 303e9220a2f3..8c156f5ada5c 100644 --- a/packages/SystemUI/res/values-en-rIN/strings.xml +++ b/packages/SystemUI/res/values-en-rIN/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"You will stop recording <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop recording"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Stop sharing screen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"You will stop sharing <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop sharing"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"You will stop casting <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop casting"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Close"</string> <string name="issuerecord_title" msgid="286627115110121849">"Issue Recorder"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processing issue recording"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongoing notification for an issue collection session"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Error saving issue recording"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Error starting issue recording"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Got it"</string> <string name="accessibility_back" msgid="6530104400086152611">"Back"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Unlocked by face. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Face recognised. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Face recognised. Press the unlock icon to continue."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Unlocked by face. Tap to continue."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authenticated"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel authentication"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"More options"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saved"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnect"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatically turn on tomorrow"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Features like Quick Share and Find My Device use Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth will turn on tomorrow morning"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Share audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Sharing audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> battery"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tap for more information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No alarm set"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"enter screen lock"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Touch the fingerprint sensor. It\'s the shorter button on the side of the phone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerprint sensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"Authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"enter device"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Collapse icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Expand icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"or"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Back gesture"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Home gesture"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Keyboard backlight"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d of %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Home controls"</string> diff --git a/packages/SystemUI/res/values-en-rXC/strings.xml b/packages/SystemUI/res/values-en-rXC/strings.xml index 5a5af968740a..8ef3602c21ec 100644 --- a/packages/SystemUI/res/values-en-rXC/strings.xml +++ b/packages/SystemUI/res/values-en-rXC/strings.xml @@ -125,26 +125,19 @@ <string name="screenrecord_save_text" msgid="3008973099800840163">"Tap to view"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"Error saving screen recording"</string> <string name="screenrecord_start_error" msgid="2200660692479682368">"Error starting screen recording"</string> - <!-- no translation found for screenrecord_stop_dialog_title (2685522129492260887) --> - <skip /> - <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> - <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> - <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="screenrecord_stop_dialog_title" msgid="2685522129492260887">"Stop recording screen?"</string> + <string name="screenrecord_stop_dialog_message" msgid="1926783607059442889">"You will stop recording your screen"</string> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"You will stop recording <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stop recording"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Stop sharing screen?"</string> + <string name="share_to_app_stop_dialog_message" msgid="3181723638915877339">"You will stop sharing your screen"</string> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"You will stop sharing <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Stop sharing"</string> + <string name="cast_to_other_device_stop_dialog_title" msgid="1910372600290258193">"Stop casting screen?"</string> + <string name="cast_to_other_device_stop_dialog_message" msgid="1502520537030715412">"You will stop casting your screen"</string> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"You will stop casting <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stop casting"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Close"</string> <string name="issuerecord_title" msgid="286627115110121849">"Issue Recorder"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processing issue recording"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongoing notification for an issue collection session"</string> @@ -155,8 +148,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Error saving issue recording"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Error starting issue recording"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Viewing full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"To exit, swipe down from the top of your screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Got it"</string> <string name="accessibility_back" msgid="6530104400086152611">"Back"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +181,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Unlocked by face. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Face recognized. Press to continue."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Face recognized. Press the unlock icon to continue."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Unlocked by face. Tap to continue."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authenticated"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancel Authentication"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"More Options"</string> @@ -299,8 +292,7 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saved"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnect"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatically turn on tomorrow"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Features like Quick Share and Find My Device use Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth will turn on tomorrow morning"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Share audio"</string> @@ -1195,6 +1187,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tap for more information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No alarm set"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"enter screen lock"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Touch the fingerprint sensor. It’s the shorter button on the side of the phone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingerprint sensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"enter device"</string> @@ -1345,14 +1338,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Collapse icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Expand icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"or"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Back gesture"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Home gesture"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Keyboard backlight"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d of %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Home Controls"</string> diff --git a/packages/SystemUI/res/values-es-rUS/strings.xml b/packages/SystemUI/res/values-es-rUS/strings.xml index ce5bd5e661da..c8b175ea3c32 100644 --- a/packages/SystemUI/res/values-es-rUS/strings.xml +++ b/packages/SystemUI/res/values-es-rUS/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Dejarás de grabar contenido de <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Detener grabación"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"¿Quieres dejar de compartir la pantalla?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Dejarás de compartir contenido de <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Dejar de compartir"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Dejarás de transmitir contenido de <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Detener transmisión"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Cerrar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Grabadora de errores"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Procesando grabación del error"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificación continua por un error durante la sesión de recopilación de datos"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Se produjo un error al guardar la grabación del problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Se produjo un error al iniciar la grabación del problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualización en pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para salir, desliza el dedo hacia abajo desde la parte superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entendido"</string> <string name="accessibility_back" msgid="6530104400086152611">"Atrás"</string> <string name="accessibility_home" msgid="5430449841237966217">"Página principal"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Desbloqueo con rostro. Presiona para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Rostro reconocido. Presiona para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Rostro reconocido. Presiona el desbloqueo para continuar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Se desbloqueó con el rostro. Presiona para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar autenticación"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Más opciones"</string> @@ -281,7 +279,7 @@ <string name="accessibility_sensors_off_active" msgid="2619725434618911551">"Sensores desactivados sí"</string> <string name="accessibility_clear_all" msgid="970525598287244592">"Eliminar todas las notificaciones"</string> <string name="notification_group_overflow_indicator" msgid="7605120293801012648">"<xliff:g id="NUMBER">%s</xliff:g> más"</string> - <string name="notification_group_overflow_description" msgid="7176322877233433278">"{count,plural, =1{# notificación más en el grupo.}many{# notificaciones más en el grupo.}other{# notificaciones más en el grupo.}}"</string> + <string name="notification_group_overflow_description" msgid="7176322877233433278">"{count,plural, =1{# notificación más en el grupo.}many{# de notificaciones más en el grupo.}other{# notificaciones más en el grupo.}}"</string> <string name="accessibility_rotation_lock_on_landscape" msgid="936972553861524360">"La pantalla está bloqueada en modo horizontal."</string> <string name="accessibility_rotation_lock_on_portrait" msgid="2356633398683813837">"La pantalla está bloqueada en modo vertical."</string> <string name="dessert_case" msgid="9104973640704357717">"Caja para postres"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Guardado"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconectar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activar automáticamente mañana"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Las funciones como Quick Share y Encontrar mi dispositivo usan Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"El Bluetooth se activará mañana a la mañana"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Compartir audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Compartiendo audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de batería"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Auriculares"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Grabación de pantalla"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Iniciar"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Detener"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Grabar error"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Registrar problema"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Iniciar"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Detener"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Informe de errores"</string> @@ -500,7 +495,7 @@ <string name="guest_notification_session_active" msgid="5567273684713471450">"Estás en el modo de invitado"</string> <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Si agregas un usuario nuevo, se desactivará el modo de invitado y se borrarán todas las apps y los datos de la sesión de invitado actual."</string> <string name="user_limit_reached_title" msgid="2429229448830346057">"Alcanzaste el límite de usuarios"</string> - <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Solo se puede crear un usuario.}many{Puedes agregar hasta # usuarios.}other{Puedes agregar hasta # usuarios.}}"</string> + <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Solo se puede crear un usuario.}many{Puedes agregar hasta # de usuarios.}other{Puedes agregar hasta # usuarios.}}"</string> <string name="user_remove_user_title" msgid="9124124694835811874">"¿Confirmas que quieres quitar el usuario?"</string> <string name="user_remove_user_message" msgid="6702834122128031833">"Se borrarán todas las aplicaciones y los datos de este usuario."</string> <string name="user_remove_user_remove" msgid="8387386066949061256">"Quitar"</string> @@ -689,7 +684,7 @@ <string name="accessibility_status_bar_satellite_available" msgid="6514855015496916829">"Satélite, conexión disponible"</string> <string name="satellite_connected_carrier_text" msgid="118524195198532589">"SOS por satélite"</string> <string name="accessibility_managed_profile" msgid="4703836746209377356">"Perfil de trabajo"</string> - <string name="tuner_warning_title" msgid="7721976098452135267">"Diversión para algunos, pero no para todos"</string> + <string name="tuner_warning_title" msgid="7721976098452135267">"Diversión solo para algunas personas"</string> <string name="tuner_warning" msgid="1861736288458481650">"El sintonizador de IU del sistema te brinda más formas para editar y personalizar la interfaz de usuario de Android. Estas funciones experimentales pueden cambiar, dejar de funcionar o no incluirse en futuras versiones. Procede con precaución."</string> <string name="tuner_persistent_warning" msgid="230466285569307806">"Estas funciones experimentales pueden cambiar, dejar de funcionar o no incluirse en futuras versiones. Procede con precaución."</string> <string name="got_it" msgid="477119182261892069">"Entendido"</string> @@ -745,8 +740,8 @@ <string name="snooze_undo" msgid="2738844148845992103">"Deshacer"</string> <string name="snooze_undo_content_description" msgid="2711656788917580801">"Deshacer la acción de posponer notificaciones"</string> <string name="snoozed_for_time" msgid="7586689374860469469">"Posponer <xliff:g id="TIME_AMOUNT">%1$s</xliff:g>"</string> - <string name="snoozeHourOptions" msgid="2332819756222425558">"{count,plural, =1{# hora}=2{# horas}many{# horas}other{# horas}}"</string> - <string name="snoozeMinuteOptions" msgid="2222082405822030979">"{count,plural, =1{# minuto}many{# minutos}other{# minutos}}"</string> + <string name="snoozeHourOptions" msgid="2332819756222425558">"{count,plural, =1{# hora}=2{# horas}many{# de horas}other{# horas}}"</string> + <string name="snoozeMinuteOptions" msgid="2222082405822030979">"{count,plural, =1{# minuto}many{# de minutos}other{# minutos}}"</string> <string name="battery_detail_switch_title" msgid="6940976502957380405">"Ahorro de batería"</string> <string name="keyboard_key_button_template" msgid="8005673627272051429">"Botón <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="keyboard_key_home" msgid="3734400625170020657">"Inicio"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Presiona para obtener más información"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"No establecida"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ingresa el bloqueo pantalla"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toca el sensor de huellas dactilares. Es el botón más corto del lateral del teléfono"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de huellas dactilares"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ingresar al dispositivo"</string> @@ -1256,7 +1252,7 @@ <string name="dream_overlay_status_bar_camera_off" msgid="5273073778969890823">"La cámara está desactivada"</string> <string name="dream_overlay_status_bar_mic_off" msgid="8366534415013819396">"El micrófono está desactivado"</string> <string name="dream_overlay_status_bar_camera_mic_off" msgid="3199425257833773569">"La cámara y el micrófono están apagados"</string> - <string name="dream_overlay_status_bar_notification_indicator" msgid="8091389255691081711">"{count,plural, =1{# notificación}many{# notificaciones}other{# notificaciones}}"</string> + <string name="dream_overlay_status_bar_notification_indicator" msgid="8091389255691081711">"{count,plural, =1{# notificación}many{# de notificaciones}other{# notificaciones}}"</string> <string name="dream_overlay_weather_complication_desc" msgid="824503662089783824">"<xliff:g id="WEATHER_CONDITION">%1$s</xliff:g>, <xliff:g id="TEMPERATURE">%2$s</xliff:g>"</string> <string name="note_task_button_label" msgid="230135078402003532">"Tomar notas"</string> <string name="note_task_shortcut_long_label" msgid="7729325091147319409">"Tomar notas, <xliff:g id="NOTE_TAKING_APP">%1$s</xliff:g>"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ícono de contraer"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ícono de expandir"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"o"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto atrás"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto para ir a la pantalla principal"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de acción"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Listo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Retroiluminación del teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivel %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controles de la casa"</string> diff --git a/packages/SystemUI/res/values-es/strings.xml b/packages/SystemUI/res/values-es/strings.xml index 000db75c6755..629f46860748 100644 --- a/packages/SystemUI/res/values-es/strings.xml +++ b/packages/SystemUI/res/values-es/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Dejarás de grabar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Detener grabación"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"¿Dejar de compartir pantalla?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Dejarás de compartir <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Dejar de compartir"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Dejarás de enviar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Dejar de enviar contenido"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Cerrar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Grabadora de problemas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Procesando grabación de problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificación continua de una sesión de obtención de datos del problema"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"No se ha podido guardar la grabación del problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"No se ha podido iniciar la grabación del problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualización en pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para salir, desliza hacia abajo desde la parte superior de la pantalla"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entendido"</string> <string name="accessibility_back" msgid="6530104400086152611">"Atrás"</string> <string name="accessibility_home" msgid="5430449841237966217">"Inicio"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Desbloqueado con la cara. Pulsa para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Cara reconocida. Pulsa para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Cara reconocida. Pulsa el icono de desbloquear para continuar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Desbloqueado con la cara. Toca para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Se ha autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar autenticación"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Más opciones"</string> @@ -241,7 +239,7 @@ <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Porcentaje de batería desconocido."</string> <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string> <string name="accessibility_cast_name" msgid="7344437925388773685">"Conectado a <xliff:g id="CAST">%s</xliff:g>."</string> - <string name="accessibility_not_connected" msgid="4061305616351042142">"No conectado"</string> + <string name="accessibility_not_connected" msgid="4061305616351042142">"No conectado."</string> <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string> <string name="cell_data_off" msgid="4886198950247099526">"Desactivados"</string> <string name="accessibility_airplane_mode" msgid="1899529214045998505">"Modo Avión"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Guardado"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconectar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activar automáticamente mañana"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Las funciones como Quick Share y Encontrar mi dispositivo usan Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"El Bluetooth se activará mañana por la mañana"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Compartir audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Compartiendo audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de batería"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Auriculares"</string> @@ -378,16 +373,16 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Grabar pantalla"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Iniciar"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Detener"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Problema de grabación"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Grabar problema"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Iniciar"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Detener"</string> - <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Informe errores"</string> + <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Informe de errores"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"¿Qué parte de tu experiencia se ha visto afectada?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Selecciona el tipo de problema"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Grabar pantalla"</string> <string name="performance" msgid="6552785217174378320">"Rendimiento"</string> <string name="user_interface" msgid="3712869377953950887">"Interfaz de usuario"</string> - <string name="thermal" msgid="6758074791325414831">"Térmico"</string> + <string name="thermal" msgid="6758074791325414831">"Temperatura"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Modo Una mano"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Audífonos"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Activos"</string> @@ -492,15 +487,15 @@ <string name="accessibility_multi_user_switch_switcher" msgid="5330448341251092660">"Cambiar de usuario"</string> <string name="accessibility_multi_user_list_switcher" msgid="8574105376229857407">"menú desplegable"</string> <string name="guest_exit_guest_dialog_message" msgid="8183450985628495709">"Se eliminarán todas las aplicaciones y datos de esta sesión."</string> - <string name="guest_wipe_session_title" msgid="7147965814683990944">"¡Hola de nuevo, invitado!"</string> + <string name="guest_wipe_session_title" msgid="7147965814683990944">"¡Te damos la bienvenida de nuevo a la sesión de invitados!"</string> <string name="guest_wipe_session_message" msgid="3393823610257065457">"¿Quieres continuar con tu sesión?"</string> <string name="guest_wipe_session_wipe" msgid="8056836584445473309">"Volver a empezar"</string> <string name="guest_wipe_session_dontwipe" msgid="3211052048269304205">"Sí, continuar"</string> <string name="guest_notification_app_name" msgid="2110425506754205509">"Modo Invitado"</string> <string name="guest_notification_session_active" msgid="5567273684713471450">"Estás en modo Invitado"</string> - <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Si añades un nuevo usuario, saldrás del modo Invitado y se eliminarán todas las aplicaciones y datos de la sesión de invitado actual."</string> + <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Si añades un nuevo usuario, saldrás del modo Invitado y se eliminarán todas las aplicaciones y los datos de la sesión de invitado actual."</string> <string name="user_limit_reached_title" msgid="2429229448830346057">"Has alcanzado el límite de usuarios"</string> - <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Solo se puede crear un usuario.}many{Puedes añadir # usuarios como máximo.}other{Puedes añadir # usuarios como máximo.}}"</string> + <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Solo se puede crear 1 usuario.}many{Puedes añadir # usuarios como máximo.}other{Puedes añadir # usuarios como máximo.}}"</string> <string name="user_remove_user_title" msgid="9124124694835811874">"¿Quitar usuario?"</string> <string name="user_remove_user_message" msgid="6702834122128031833">"Se eliminarán todas las aplicaciones y datos de este usuario."</string> <string name="user_remove_user_remove" msgid="8387386066949061256">"Quitar"</string> @@ -675,7 +670,7 @@ <string name="wallet_secondary_label_device_locked" msgid="5175862019125370506">"Desbloquear para usar"</string> <string name="wallet_error_generic" msgid="257704570182963611">"Se ha producido un problema al obtener tus tarjetas. Inténtalo de nuevo más tarde."</string> <string name="wallet_lockscreen_settings_label" msgid="3539105300870383570">"Ajustes de pantalla de bloqueo"</string> - <string name="qr_code_scanner_title" msgid="1938155688725760702">"Escáner de códigos QR"</string> + <string name="qr_code_scanner_title" msgid="1938155688725760702">"Escáner QR"</string> <string name="qr_code_scanner_updating_secondary_label" msgid="8344598017007876352">"Actualizando"</string> <string name="status_bar_work" msgid="5238641949837091056">"Perfil de trabajo"</string> <string name="status_bar_airplane" msgid="4848702508684541009">"Modo Avión"</string> @@ -1041,7 +1036,7 @@ <string name="accessibility_floating_button_action_remove_menu" msgid="6730432848162552135">"Quitar"</string> <string name="accessibility_floating_button_action_double_tap_to_toggle" msgid="7976492639670692037">"activar/desactivar"</string> <string name="accessibility_floating_button_action_edit" msgid="1688227814600463987">"Editar"</string> - <string name="quick_controls_title" msgid="6839108006171302273">"Control de dispositivos"</string> + <string name="quick_controls_title" msgid="6839108006171302273">"Control disposit."</string> <string name="controls_providers_title" msgid="6879775889857085056">"Elige una aplicación para añadir controles"</string> <string name="controls_number_of_favorites" msgid="4481806788981836355">"{count,plural, =1{# control añadido.}many{# controles añadidos.}other{# controles añadidos.}}"</string> <string name="controls_removed" msgid="3731789252222856959">"Quitado"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toca la pantalla para consultar más información"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ninguna puesta"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"Poner bloqueo de pantalla"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toca el sensor de huellas digitales. Es el botón más pequeño del lateral del teléfono."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de huellas digitales"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticarte"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"acceder al dispositivo"</string> @@ -1206,7 +1202,7 @@ <string name="mobile_data_settings_title" msgid="3955246641380064901">"Datos móviles"</string> <string name="preference_summary_default_combination" msgid="8453246369903749670">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="NETWORKMODE">%2$s</xliff:g>"</string> <string name="mobile_data_connection_active" msgid="944490013299018227">"Conectado"</string> - <string name="mobile_data_temp_connection_active" msgid="4590222725908806824">"Conectado temporalmente"</string> + <string name="mobile_data_temp_connection_active" msgid="4590222725908806824">"Conectada temporalmente"</string> <string name="mobile_data_poor_connection" msgid="819617772268371434">"Conexión inestable"</string> <string name="mobile_data_off_summary" msgid="3663995422004150567">"Los datos móviles no se conectarán automáticamente"</string> <string name="mobile_data_no_connection" msgid="1713872434869947377">"Sin conexión"</string> @@ -1225,7 +1221,7 @@ <string name="qs_tile_request_dialog_text" msgid="3501359944139877694">"<xliff:g id="APPNAME">%1$s</xliff:g> quiere añadir el siguiente recuadro a ajustes rápidos"</string> <string name="qs_tile_request_dialog_add" msgid="4888460910694986304">"Añadir recuadro"</string> <string name="qs_tile_request_dialog_not_add" msgid="4168716573114067296">"No añadir recuadro"</string> - <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Selecciona un usuario"</string> + <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Seleccionar usuario"</string> <string name="fgs_manager_footer_label" msgid="8276763570622288231">"{count,plural, =1{# aplicación activa}many{# aplicaciones activas}other{# aplicaciones activas}}"</string> <string name="fgs_dot_content_description" msgid="2865071539464777240">"Información nueva"</string> <string name="fgs_manager_dialog_title" msgid="5879184257257718677">"Aplicaciones activas"</string> @@ -1248,7 +1244,7 @@ <string name="clipboard_image_preview" msgid="2156475174343538128">"Vista previa de la imagen"</string> <string name="clipboard_edit" msgid="4500155216174011640">"editar"</string> <string name="add" msgid="81036585205287996">"Añadir"</string> - <string name="manage_users" msgid="1823875311934643849">"Gest. usuarios"</string> + <string name="manage_users" msgid="1823875311934643849">"Gestionar usuarios"</string> <string name="drag_split_not_supported" msgid="7173481676120546121">"Esta notificación no se puede arrastrar a la pantalla dividida"</string> <string name="dream_overlay_status_bar_wifi_off" msgid="4497069245055003582">"Wi‑Fi no disponible"</string> <string name="dream_overlay_status_bar_priority_mode" msgid="5428462123314728739">"Modo prioritario"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icono de contraer"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icono de desplegar"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"o"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto para volver"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto para ir al inicio"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de acción"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hecho"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Retroiluminación del teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivel %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controles de la casa"</string> diff --git a/packages/SystemUI/res/values-es/tiles_states_strings.xml b/packages/SystemUI/res/values-es/tiles_states_strings.xml index 5dbb2c132f4c..08644e1cbe40 100644 --- a/packages/SystemUI/res/values-es/tiles_states_strings.xml +++ b/packages/SystemUI/res/values-es/tiles_states_strings.xml @@ -43,7 +43,7 @@ </string-array> <string-array name="tile_states_cell"> <item msgid="1235899788959500719">"No disponible"</item> - <item msgid="2074416252859094119">"Desactivadas"</item> + <item msgid="2074416252859094119">"Desactivado"</item> <item msgid="287997784730044767">"Activado"</item> </string-array> <string-array name="tile_states_battery"> @@ -189,6 +189,6 @@ <string-array name="tile_states_hearing_devices"> <item msgid="1235334096484287173">"No disponibles"</item> <item msgid="3079622119444911877">"Desactivados"</item> - <item msgid="3028994095749238254">"Activados"</item> + <item msgid="3028994095749238254">"Activado"</item> </string-array> </resources> diff --git a/packages/SystemUI/res/values-et/strings.xml b/packages/SystemUI/res/values-et/strings.xml index fa10a8ab3f25..0257efe4df44 100644 --- a/packages/SystemUI/res/values-et/strings.xml +++ b/packages/SystemUI/res/values-et/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Lõpetate rakenduse <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> sisu salvestamise"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Peata salvestamine"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Kas lõpetada ekraanikuva jagamine?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Lõpetate rakenduse <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> sisu jagamise"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Lõpeta jagamine"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Lõpetate rakenduse <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> sisu ülekandmise"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Peata ülekandmine"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Sule"</string> <string name="issuerecord_title" msgid="286627115110121849">"Probleemisalvesti"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Probleemisalvestise töötlemine"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Probleemikogumise seansi taustamärguanne"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Viga probleemisalvestise salvestamisel"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Viga probleemi salvestamise alustamisel"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Kuvamine täisekraanil"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Väljumiseks pühkige ekraanikuva ülaosast alla"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Selge"</string> <string name="accessibility_back" msgid="6530104400086152611">"Tagasi"</string> <string name="accessibility_home" msgid="5430449841237966217">"Kodu"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Avati näoga. Vajutage jätkamiseks."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Nägu tuvastati. Vajutage jätkamiseks."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Nägu tuvastati. Jätkamiseks vajutage avamise ikooni."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Avati näoga. Puudutage jätkamiseks."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenditud"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Tühista autentimine"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Rohkem valikuid"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Salvestatud"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"katkesta ühendus"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiveeri"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Lülita homme automaatselt sisse"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Sellised funktsioonid nagu Kiirjagamine ja Leia mu seade kasutavad Bluetoothi."</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth lülitub sisse homme hommikul"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Jaga heli"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Heli jagamine"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> akut"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Heli"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Peakomplekt"</string> @@ -467,10 +462,10 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Ühise õpetuse käivitamiseks pühkige vasakule"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Kohandage"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Loobuge"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Lisage ja eemaldage selles ruumis oma vidinaid ning muutke nende järjestust"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Lisage ja eemaldage vidinaid ning muutke nende järjestust"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Lisage rohkem vidinaid"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Vajutage pikalt vidinate kohandamiseks"</string> - <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Kohanda vidinaid"</string> + <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Vidinate kohandamine"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Keelatud vidina rakenduseikoon"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Installitava vidina rakenduseikoon"</string> <string name="edit_widget" msgid="9030848101135393954">"Muuda vidinat"</string> @@ -478,13 +473,13 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Lisa vidin"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Valmis"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Vidinate lisamine"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Pääsege kiiresti juurde rakenduse lemmikvidinatele ilma tahvelarvutit avamata."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Kiire juurdepääs rakenduse lemmikvidinatele ilma tahvelarvutit lukust avamata."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Kas lubada lukustuskuval kõik vidinad?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Ava seaded"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Kas lõpetada töörakenduste peatamine?"</string> <string name="work_mode_turn_on" msgid="907813741770247267">"Lõpeta peatamine"</string> <string name="accessibility_action_label_close_communal_hub" msgid="6790396569621032333">"Lukustuskuva vidinate sulgemine"</string> - <string name="accessibility_action_label_edit_widgets" msgid="3821868581348322346">"Kohanda vidinaid"</string> + <string name="accessibility_action_label_edit_widgets" msgid="3821868581348322346">"Vidinate kohandamine"</string> <string name="accessibility_content_description_for_communal_hub" msgid="1670220840599380118">"Lukustuskuva vidinad"</string> <string name="accessibility_action_label_select_widget" msgid="8897281501387398191">"vidina valimine"</string> <string name="accessibility_action_label_remove_widget" msgid="3373779447448758070">"eemaldage vidin"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Puudutage lisateabe saamiseks"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Äratust pole"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"sisesta ekraanilukk"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Puudutage sõrmejäljeandurit. See on lühem nupp telefoni küljel."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sõrmejäljeandur"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentimiseks"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"seadmesse sisenemiseks"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ahendamisikoon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Laiendamisikoon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"või"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Tagasiliikumisliigutus"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Avakuvale liikumise liigutus"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Toiminguklahv"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Valmis"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Klaviatuuri taustavalgustus"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Tase %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kodu juhtelemendid"</string> diff --git a/packages/SystemUI/res/values-eu/strings.xml b/packages/SystemUI/res/values-eu/strings.xml index 960a92fbefd8..fda5bbbaf856 100644 --- a/packages/SystemUI/res/values-eu/strings.xml +++ b/packages/SystemUI/res/values-eu/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> grabatzeari utziko diozu"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Utzi grabatzeari"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Pantaila partekatzeari utzi nahi diozu?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> partekatzeari utziko diozu"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Utzi partekatzeari"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> igortzeari utziko diozu"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Utzi igortzeari"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Itxi"</string> <string name="issuerecord_title" msgid="286627115110121849">"Arazo-grabagailua"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Arazoaren grabaketa prozesatzen"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Arazo bat biltzeko saio baten aktibo dagoen jakinarazpena"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Errore bat gertatu da arazoa grabatzean"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Errore bat gertatu da arazoa grabatzen hastean"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Pantaila osoa ikusgai"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Irteteko, pasatu hatza pantailaren goialdetik beherantz"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Ados"</string> <string name="accessibility_back" msgid="6530104400086152611">"Atzera"</string> <string name="accessibility_home" msgid="5430449841237966217">"Hasiera"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Aurpegiaren bidez desblokeatu da. Sakatu aurrera egiteko."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Ezagutu da aurpegia. Sakatu aurrera egiteko."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Ezagutu da aurpegia. Aurrera egiteko, sakatu desblokeatzeko ikonoa."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Aurpegiaren bidez desblokeatu da. Sakatu hau aurrera egiteko."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentifikatuta"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Utzi bertan behera autentifikazioa"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Aukera gehiago"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Gordeta"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"deskonektatu"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktibatu"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Aktibatu automatikoki bihar"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share, Bilatu nire gailua eta beste eginbide batzuek Bluetootha erabiltzen dute"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bihar goizean aktibatuko da Bluetootha"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Partekatu audioa"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audioa partekatzen"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Bateria: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audioa"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Entzungailua"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Pantaila-grabaketa"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Hasi"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Gelditu"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Arazo bat dago grabaketarekin"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Grabatu arazoa"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Hasi"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Gelditu"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Akatsen txostena"</string> @@ -586,7 +581,7 @@ <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"Zure gurasoak kudeatzen du gailua. Zure gurasoak gailuko informazioa ikusi eta kudea dezake; besteak beste, zer aplikazio erabiltzen dituzun, zure kokapena zein den eta pantaila aurrean zenbat eta noiz egoten zaren."</string> <string name="legacy_vpn_name" msgid="4174223520162559145">"VPNa"</string> <string name="keyguard_indication_trust_unlocked" msgid="7395154975733744547">"TrustAgent bidez desblokeatuta"</string> - <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"Blokeatu egin da gailua. Autentifikatze-saiakera gehiegi egin dira."</string> + <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"Blokeatu egin da gailua. Autentifikatzeko saiakera gehiegi egin dira."</string> <string name="keyguard_indication_after_adaptive_auth_lock" msgid="2323400645470712787">"Gailua blokeatuta dago\nEzin izan da autentifikatu"</string> <string name="zen_mode_and_condition" msgid="5043165189511223718">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string> <string name="accessibility_volume_settings" msgid="1458961116951564784">"Soinuaren ezarpenak"</string> @@ -943,7 +938,7 @@ <string name="mobile_data_text_format" msgid="6806501540022589786">"<xliff:g id="ID_1">%1$s</xliff:g> - <xliff:g id="ID_2">%2$s</xliff:g>"</string> <string name="mobile_carrier_text_format" msgid="8912204177152950766">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g> (<xliff:g id="MOBILE_DATA_TYPE">%2$s</xliff:g>)"</string> <string name="wifi_is_off" msgid="5389597396308001471">"Wifi-konexioa desaktibatuta dago"</string> - <string name="bt_is_off" msgid="7436344904889461591">"Bluetooth bidezko konexioa desaktibatuta dago"</string> + <string name="bt_is_off" msgid="7436344904889461591">"Bluetootha desaktibatuta dago"</string> <string name="dnd_is_off" msgid="3185706903793094463">"Ez molestatzeko modua desaktibatuta dago"</string> <string name="dnd_is_on" msgid="7009368176361546279">"Aktibatuta dago ez molestatzeko modua"</string> <string name="qs_dnd_prompt_auto_rule" msgid="3535469468310002616">"Ez molestatzeko modua aktibatu du arau automatiko batek (<xliff:g id="ID_1">%s</xliff:g>)."</string> @@ -1162,7 +1157,7 @@ <string name="select_conversation_text" msgid="3376048251434956013">"Sakatu elkarrizketa bat orri nagusian gehitzeko"</string> <string name="no_conversations_text" msgid="5354115541282395015">"Azkenaldiko elkarrizketak agertuko dira hemen"</string> <string name="priority_conversations" msgid="3967482288896653039">"Lehentasunezko elkarrizketak"</string> - <string name="recent_conversations" msgid="8531874684782574622">"Azken elkarrizketak"</string> + <string name="recent_conversations" msgid="8531874684782574622">"Azkenaldiko elkarrizketak"</string> <string name="days_timestamp" msgid="5821854736213214331">"Duela <xliff:g id="DURATION">%1$s</xliff:g> egun"</string> <string name="one_week_timestamp" msgid="4925600765473875590">"Duela astebete"</string> <string name="two_weeks_timestamp" msgid="9111801081871962155">"Duela bi aste"</string> @@ -1186,7 +1181,7 @@ <string name="status_before_loading" msgid="1500477307859631381">"Laster agertuko da edukia"</string> <string name="missed_call" msgid="4228016077700161689">"Dei galdua"</string> <string name="messages_count_overflow_indicator" msgid="7850934067082006043">"<xliff:g id="NUMBER">%d</xliff:g>+"</string> - <string name="people_tile_description" msgid="8154966188085545556">"Ikusi azken mezuak, dei galduak eta egoerei buruzko informazio eguneratua"</string> + <string name="people_tile_description" msgid="8154966188085545556">"Ikusi azkenaldiko mezuak, dei galduak eta egoerei buruzko informazio eguneratua"</string> <string name="people_tile_title" msgid="6589377493334871272">"Elkarrizketa"</string> <string name="paused_by_dnd" msgid="7856941866433556428">"Ez molestatzeko moduak pausatu du"</string> <string name="new_notification_text_content_description" msgid="2915029960094389291">"<xliff:g id="NAME">%1$s</xliff:g> erabiltzaileak mezu bat bidali du: <xliff:g id="NOTIFICATION">%2$s</xliff:g>"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Informazio gehiago lortzeko, sakatu hau"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Alarmarik ez"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"erabili pantailaren blokeoa"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Ukitu hatz-marken sentsorea. Telefonoaren albo batean dagoen botoi laburra da."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Hatz-marken sentsorea"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentifikatu"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"sartu gailuan"</string> @@ -1320,7 +1316,7 @@ <string name="dismiss_dialog" msgid="2195508495854675882">"Baztertu"</string> <string name="connected_display_icon_desc" msgid="6373560639989971997">"Konektatutako pantaila"</string> <string name="privacy_dialog_title" msgid="7839968133469098311">"Mikrofonoa eta kamera"</string> - <string name="privacy_dialog_summary" msgid="2458769652125995409">"Aplikazioen azken erabilera"</string> + <string name="privacy_dialog_summary" msgid="2458769652125995409">"Aplikazioen azkenaldiko erabilera"</string> <string name="privacy_dialog_more_button" msgid="7610604080293562345">"Ikusi azkenaldiko sarbidea"</string> <string name="privacy_dialog_done_button" msgid="4504330708531434263">"Eginda"</string> <string name="privacy_dialog_expand_action" msgid="9129262348628331377">"Zabaldu eta erakutsi aukerak"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Tolesteko ikonoa"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Zabaltzeko ikonoa"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"edo"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Atzera egiteko keinua"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Orri nagusira joateko keinua"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Ekintza-tekla"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Eginda"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Teklatuaren hondoko argia"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d/%2$d maila"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Etxeko gailuen kontrola"</string> diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml index f02c248eb071..bc31bd13a4c7 100644 --- a/packages/SystemUI/res/values-fa/strings.xml +++ b/packages/SystemUI/res/values-fa/strings.xml @@ -122,41 +122,38 @@ <string name="screenrecord_stop_label" msgid="72699670052087989">"متوقف کردن"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"همرسانی"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"قطعه ضبطشده از صفحهنمایش ذخیره شد"</string> - <string name="screenrecord_save_text" msgid="3008973099800840163">"برای مشاهده ضربه بزنید"</string> + <string name="screenrecord_save_text" msgid="3008973099800840163">"برای مشاهده تکضرب بزنید"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"خطا در ذخیرهسازی ضبط صفحهنمایش"</string> <string name="screenrecord_start_error" msgid="2200660692479682368">"خطا هنگام شروع ضبط صفحهنمایش"</string> <!-- no translation found for screenrecord_stop_dialog_title (2685522129492260887) --> <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ضبط <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> را متوقف خواهید کرد"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"توقف ضبط"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"همرسانی صفحه متوقف شود؟"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"همرسانی <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> را متوقف خواهید کرد"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"توقف همرسانی"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"پخش محتوای <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> را متوقف خواهید کرد"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"توقف پخش محتوا"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"بستن"</string> <string name="issuerecord_title" msgid="286627115110121849">"ضبطکننده مشکل"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"درحال پردازش کردن ضبط مشکل"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"اعلان جاری مربوط به جلسه جمعآوری مشکل"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"درحال ضبط کردن مشکل"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"همرسانی"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"ضبط مشکل ذخیره شد"</string> - <string name="issuerecord_save_text" msgid="1205985304551521495">"برای مشاهده ضربه بزنید"</string> + <string name="issuerecord_save_text" msgid="1205985304551521495">"برای مشاهده تکضرب بزنید"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"هنگام ذخیره کردن ضبط مشکل، خطایی پیش آمد"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"هنگام شروع ضبط مشکل، خطایی پیش آمد"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"درحال مشاهده در حالت تمامصفحه"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"برای خروج، از بالای صفحه تند به پایین بکشید"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"متوجهام"</string> <string name="accessibility_back" msgid="6530104400086152611">"برگشت"</string> <string name="accessibility_home" msgid="5430449841237966217">"صفحهٔ اصلی"</string> @@ -179,16 +176,17 @@ </string-array> <string name="biometric_dialog_confirm" msgid="2005978443007344895">"تأیید"</string> <string name="biometric_dialog_try_again" msgid="8575345628117768844">"امتحان مجدد"</string> - <string name="biometric_dialog_empty_space_description" msgid="3330555462071453396">"برای لغو راستیآزمایی ضربه بزنید"</string> + <string name="biometric_dialog_empty_space_description" msgid="3330555462071453396">"برای لغو راستیآزمایی تکضرب بزنید"</string> <string name="biometric_dialog_face_icon_description_idle" msgid="4351777022315116816">"لطفاً دوباره امتحان کنید"</string> <string name="biometric_dialog_face_icon_description_authenticating" msgid="3401633342366146535">"درحال جستجوی چهره"</string> <string name="biometric_dialog_face_icon_description_authenticated" msgid="2242167416140740920">"چهره اصالتسنجی شد"</string> <string name="biometric_dialog_face_icon_description_confirmed" msgid="7918067993953940778">"تأیید شد"</string> - <string name="biometric_dialog_tap_confirm" msgid="9166350738859143358">"برای تکمیل، روی تأیید ضربه بزنید"</string> + <string name="biometric_dialog_tap_confirm" msgid="9166350738859143358">"برای تکمیل، روی تأیید تکضرب بزنید"</string> <string name="biometric_dialog_tap_confirm_with_face" msgid="2378151312221818694">"قفل با چهره باز شد"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"قفلْ با چهره باز شد. برای ادامه، فشار دهید."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"چهره شناسایی شد. برای ادامه، فشار دهید."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"چهره شناسایی شد. برای ادامه، نماد قفلگشایی را فشار دهید."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"قفل با چهره باز شد. برای ادامه ضربه بزنید."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"راستیآزماییشده"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"لغو اصالتسنجی"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"گزینههای بیشتر"</string> @@ -290,7 +288,7 @@ <string name="quick_settings_dnd_label" msgid="7728690179108024338">"مزاحم نشوید"</string> <string name="quick_settings_bluetooth_label" msgid="7018763367142041481">"بلوتوث"</string> <string name="quick_settings_bluetooth_detail_empty_text" msgid="5760239584390514322">"هیچ دستگاه مرتبط شدهای موجود نیست"</string> - <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"برای اتصال یا قطع اتصال دستگاه، ضربه بزنید"</string> + <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"برای اتصال یا قطع اتصال دستگاه، تکضرب بزنید"</string> <string name="pair_new_bluetooth_devices" msgid="4601767620843349645">"جفت کردن دستگاه جدید"</string> <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"دیدن همه"</string> <string name="turn_on_bluetooth" msgid="5681370462180289071">"استفاده از بلوتوث"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ذخیرهشده"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"قطع اتصال"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"فعال کردن"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"فردا بهطور خودکار روشن شود"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ویژگیهایی مثل «همرسانی سریع» و «پیدا کردن دستگاهم» از بلوتوث استفاده میکنند"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"بلوتوث فردا صبح روشن خواهد شد"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"همرسانی صدا"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"درحال همرسانی صدا"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"شارژ باتری <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"صوت"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"هدست"</string> @@ -321,7 +316,7 @@ <string name="quick_settings_mic_label" msgid="8392773746295266375">"دسترسی به میکروفون"</string> <string name="quick_settings_camera_mic_available" msgid="1453719768420394314">"دردسترس"</string> <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"مسدود"</string> - <string name="quick_settings_media_device_label" msgid="8034019242363789941">"دستگاه رسانه"</string> + <string name="quick_settings_media_device_label" msgid="8034019242363789941">"دستگاه رسانهای"</string> <string name="quick_settings_user_title" msgid="8673045967216204537">"کاربر"</string> <string name="quick_settings_wifi_label" msgid="2879507532983487244">"Wi-Fi"</string> <string name="quick_settings_internet_label" msgid="6603068555872455463">"اینترنت"</string> @@ -431,8 +426,8 @@ <string name="zen_priority_customize_button" msgid="4119213187257195047">"سفارشی کردن"</string> <string name="zen_silence_introduction_voice" msgid="853573681302712348">"این کار «همه» صداها و لرزشها (شامل هشدار، موسیقی، ویدیو و بازی) را مسدود میکند. همچنان میتوانید تماس تلفنی برقرار کنید."</string> <string name="zen_silence_introduction" msgid="6117517737057344014">"این کار «همه» صداها و لرزشها از جمله هشدارها، موسیقی، ویدئوها و بازیها را مسدود میکند."</string> - <string name="notification_tap_again" msgid="4477318164947497249">"دوباره ضربه بزنید تا باز شود"</string> - <string name="tap_again" msgid="1315420114387908655">"دوباره ضربه بزنید"</string> + <string name="notification_tap_again" msgid="4477318164947497249">"دوباره تکضرب بزنید تا باز شود"</string> + <string name="tap_again" msgid="1315420114387908655">"دوباره تکضرب بزنید"</string> <string name="keyguard_unlock" msgid="8031975796351361601">"برای باز کردن، انگشتتان را تند بهبالا بکشید"</string> <string name="keyguard_unlock_press" msgid="9140109453735019209">"برای باز کردن، نماد قفلگشایی را فشار دهید"</string> <string name="keyguard_face_successful_unlock_swipe" msgid="6180997591385846073">"قفلْ با چهره باز شد. برای باز کردن، تند بهبالا بکشید."</string> @@ -463,32 +458,32 @@ <string name="keyguard_indication_charging_time_fast" msgid="8390311020603859480">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • درحال شارژ کردن سریع • <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> • درحال شارژ کردن آهسته • <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> • درحال شارژ شدن • <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g> تا شارژ کامل"</string> - <string name="accessibility_action_open_communal_hub" msgid="3081702792413787849">"ابزارکها در صفحه قفل"</string> + <string name="accessibility_action_open_communal_hub" msgid="3081702792413787849">"ابزارهها در صفحه قفل"</string> <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"برای شروع آموزش گامبهگام عمومی، تند بهچپ بکشید"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"سفارشیسازی"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"بستن"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"افزودن، برداشتن، و تغییر ترتیب ابزارکها در این فضا"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"افزودن، برداشتن، و تغییر ترتیب ابزارهها در این فضا"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"افزودن ابزارکهای بیشتر"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"برای سفارشیسازی ابزارکها، فشار طولانی دهید"</string> - <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"سفارشیسازی ابزارکها"</string> - <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"نماد برنامه برای ابزارک غیرفعال"</string> - <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"نماد برنامه مربوط به ابزارکی که درحال نصب است"</string> - <string name="edit_widget" msgid="9030848101135393954">"ویرایش ابزارک"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"برای سفارشیسازی ابزارهها، فشار طولانی دهید"</string> + <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"سفارشیسازی ابزارهها"</string> + <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"نماد برنامه برای ابزاره غیرفعال"</string> + <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"نماد برنامه مربوط به ابزارهای که درحال نصب شدن است"</string> + <string name="edit_widget" msgid="9030848101135393954">"ویرایش ابزاره"</string> <string name="button_to_remove_widget" msgid="3948204829181214098">"برداشتن"</string> - <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"افزودن ابزارک"</string> + <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"افزودن ابزاره"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"تمام"</string> - <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"افزودن ابزارکها"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"بدون باز کردن قفل رایانه لوحی، به ابزارک برنامههای دلخواهتان فوراً دسترسی پیدا کنید."</string> - <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"هر نوع ابزارکی در صفحه قفل مجاز شود؟"</string> + <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"افزودن ابزاره"</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"بدون باز کردن قفل رایانه لوحی، به ابزاره برنامههای دلخواهتان فوراً دسترسی پیدا کنید."</string> + <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"هر نوع ابزارهای در صفحه قفل مجاز باشد؟"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"باز کردن تنظیمات"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"مکث برنامههای کاری لغو شود؟"</string> <string name="work_mode_turn_on" msgid="907813741770247267">"لغو مکث"</string> - <string name="accessibility_action_label_close_communal_hub" msgid="6790396569621032333">"بستن ابزارکها در صفحه قفل"</string> - <string name="accessibility_action_label_edit_widgets" msgid="3821868581348322346">"سفارشیسازی ابزارکها"</string> - <string name="accessibility_content_description_for_communal_hub" msgid="1670220840599380118">"ابزارکها در صفحه قفل"</string> - <string name="accessibility_action_label_select_widget" msgid="8897281501387398191">"انتخاب ابزارک"</string> - <string name="accessibility_action_label_remove_widget" msgid="3373779447448758070">"برداشتن ابزارک"</string> - <string name="accessibility_action_label_place_widget" msgid="1914197458644168978">"جایگذاری ابزارک انتخابشده"</string> + <string name="accessibility_action_label_close_communal_hub" msgid="6790396569621032333">"بستن ابزارهها در صفحه قفل"</string> + <string name="accessibility_action_label_edit_widgets" msgid="3821868581348322346">"سفارشیسازی ابزارهها"</string> + <string name="accessibility_content_description_for_communal_hub" msgid="1670220840599380118">"ابزارهها در صفحه قفل"</string> + <string name="accessibility_action_label_select_widget" msgid="8897281501387398191">"انتخاب ابزاره"</string> + <string name="accessibility_action_label_remove_widget" msgid="3373779447448758070">"برداشتن ابزاره"</string> + <string name="accessibility_action_label_place_widget" msgid="1914197458644168978">"جایگذاری ابزاره انتخابشده"</string> <string name="accessibility_multi_user_switch_switcher" msgid="5330448341251092660">"تغییر کاربر"</string> <string name="accessibility_multi_user_list_switcher" msgid="8574105376229857407">"منوی پایینپر"</string> <string name="guest_exit_guest_dialog_message" msgid="8183450985628495709">"همه برنامهها و دادههای این جلسه حذف خواهد شد."</string> @@ -634,17 +629,17 @@ <string name="stream_notification_unavailable" msgid="4313854556205836435">"دردسترس نیست، چون زنگ بیصدا شده است"</string> <string name="stream_alarm_unavailable" msgid="4059817189292197839">"دردسترس نیست زیرا «مزاحم نشوید» روشن است"</string> <string name="stream_media_unavailable" msgid="6823020894438959853">"دردسترس نیست زیرا «مزاحم نشوید» روشن است"</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_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_panel_noise_control_title" msgid="7413949943872304474">"کنترل صدای محیط"</string> <string name="volume_panel_spatial_audio_title" msgid="3367048857932040660">"صدای فضایی"</string> <string name="volume_panel_spatial_audio_off" msgid="4177490084606772989">"خاموش"</string> <string name="volume_panel_spatial_audio_fixed" msgid="3136080137827746046">"ثابت"</string> <string name="volume_panel_spatial_audio_tracking" msgid="5711115234001762974">"ردیابی سر"</string> - <string name="volume_ringer_change" msgid="3574969197796055532">"برای تغییر حالت زنگ، ضربه بزنید"</string> + <string name="volume_ringer_change" msgid="3574969197796055532">"برای تغییر حالت زنگ، تکضرب بزنید"</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> @@ -670,7 +665,7 @@ <string name="wallet_title" msgid="5369767670735827105">"کیف پول"</string> <string name="wallet_empty_state_label" msgid="7776761245237530394">"برای خرید سریعتر و امنتر با تلفن، راهاندازی کنید"</string> <string name="wallet_app_button_label" msgid="7123784239111190992">"نمایش همه"</string> - <string name="wallet_secondary_label_no_card" msgid="8488069304491125713">"برای باز کردن ضربه بزنید"</string> + <string name="wallet_secondary_label_no_card" msgid="8488069304491125713">"برای باز کردن تکضرب بزنید"</string> <string name="wallet_secondary_label_updating" msgid="5726130686114928551">"درحال بهروزرسانی"</string> <string name="wallet_secondary_label_device_locked" msgid="5175862019125370506">"برای استفاده، قفل را باز کنید"</string> <string name="wallet_error_generic" msgid="257704570182963611">"هنگام دریافت کارتها مشکلی پیش آمد، لطفاً بعداً دوباره امتحان کنید"</string> @@ -936,7 +931,7 @@ <string name="instant_apps" msgid="8337185853050247304">"برنامههای فوری"</string> <string name="instant_apps_title" msgid="8942706782103036910">"<xliff:g id="APP">%1$s</xliff:g> درحال اجرا"</string> <string name="instant_apps_message" msgid="6112428971833011754">"برنامه بدون نصب شدن باز شد."</string> - <string name="instant_apps_message_with_help" msgid="1816952263531203932">"برنامه بدون نصب شدن باز شد. برای اطلاعات بیشتر ضربه بزنید."</string> + <string name="instant_apps_message_with_help" msgid="1816952263531203932">"برنامه بدون نصب شدن باز شد. برای اطلاعات بیشتر تکضرب بزنید."</string> <string name="app_info" msgid="5153758994129963243">"اطلاعات برنامه"</string> <string name="go_to_web" msgid="636673528981366511">"رفتن به مرورگر"</string> <string name="mobile_data" msgid="4564407557775397216">"داده تلفن همراه"</string> @@ -950,7 +945,7 @@ <string name="qs_dnd_prompt_app" msgid="4027984447935396820">"برنامهای (<xliff:g id="ID_1">%s</xliff:g>) «مزاحم نشوید» را روشن کرد."</string> <string name="qs_dnd_prompt_auto_rule_app" msgid="1841469944118486580">"برنامه یا قانون خودکاری، «مزاحم نشوید» را روشن کرد."</string> <string name="running_foreground_services_title" msgid="5137313173431186685">"برنامههایی که در پسزمینه اجرا میشوند"</string> - <string name="running_foreground_services_msg" msgid="3009459259222695385">"برای جزئیات مربوط به مصرف باتری و داده، ضربه بزنید"</string> + <string name="running_foreground_services_msg" msgid="3009459259222695385">"برای جزئیات مربوط به مصرف باتری و داده، تکضرب بزنید"</string> <string name="mobile_data_disable_title" msgid="5366476131671617790">"داده تلفن همراه خاموش شود؟"</string> <string name="mobile_data_disable_message" msgid="8604966027899770415">"نمیتوانید ازطریق <xliff:g id="CARRIER">%s</xliff:g> به داده یا اینترنت دسترسی داشته باشید. اینترنت فقط ازطریق Wi-Fi در دسترس خواهد بود."</string> <string name="mobile_data_disable_message_default_carrier" msgid="6496033312431658238">"شرکت مخابراتی شما"</string> @@ -965,7 +960,7 @@ <string name="slice_permission_checkbox" msgid="4242888137592298523">"به <xliff:g id="APP">%1$s</xliff:g> اجازه داده شود تکههایی از برنامهها نشان دهد"</string> <string name="slice_permission_allow" msgid="6340449521277951123">"اجازه دادن"</string> <string name="slice_permission_deny" msgid="6870256451658176895">"مجاز نبودن"</string> - <string name="auto_saver_title" msgid="6873691178754086596">"برای زمانبندی «بهینهسازی باتری» ضربه بزنید"</string> + <string name="auto_saver_title" msgid="6873691178754086596">"برای زمانبندی «بهینهسازی باتری» تکضرب بزنید"</string> <string name="auto_saver_text" msgid="3214960308353838764">"وقتی باتری روبهاتمام است، بهینهسازی باتری را روشن کنید"</string> <string name="no_auto_saver_action" msgid="7467924389609773835">"نه متشکرم"</string> <string name="ongoing_privacy_dialog_a11y_title" msgid="2205794093673327974">"استفاده شده"</string> @@ -1025,11 +1020,11 @@ <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_hidden_notification_title" msgid="4115036997406994799">"دکمه دسترسپذیری پنهان شده است"</string> - <string name="accessibility_floating_button_hidden_notification_text" msgid="1457021647040915658">"برای نمایش دکمه دسترسپذیری ضربه بزنید"</string> + <string name="accessibility_floating_button_hidden_notification_text" msgid="1457021647040915658">"برای نمایش دکمه دسترسپذیری تکضرب بزنید"</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> @@ -1130,7 +1125,7 @@ <string name="media_output_dialog_single_device" msgid="3102758980643351058">"۱ دستگاه انتخاب شد"</string> <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_connect_failed" msgid="3080972621975339387">"عوض نمیشود. برای تلاش مجدد تکضرب بزنید."</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> @@ -1159,7 +1154,7 @@ <string name="build_number_copy_toast" msgid="877720921605503046">"شماره ساخت در بریدهدان کپی شد."</string> <string name="basic_status" msgid="2315371112182658176">"باز کردن مکالمه"</string> <string name="select_conversation_title" msgid="6716364118095089519">"ابزارکهای مکالمه"</string> - <string name="select_conversation_text" msgid="3376048251434956013">"روی مکالمهای ضربه بزنید تا به «صفحه اصلی» اضافه شود"</string> + <string name="select_conversation_text" msgid="3376048251434956013">"روی مکالمهای تکضرب بزنید تا به «صفحه اصلی» اضافه شود"</string> <string name="no_conversations_text" msgid="5354115541282395015">"آخرین مکالمههای شما اینجا نشان داده میشود"</string> <string name="priority_conversations" msgid="3967482288896653039">"مکالمههای اولویتدار"</string> <string name="recent_conversations" msgid="8531874684782574622">"گفتگوهای اخیر"</string> @@ -1194,9 +1189,10 @@ <string name="new_status_content_description" msgid="6046637888641308327">"<xliff:g id="NAME">%1$s</xliff:g> وضعیتش را بهروزرسانی کرد: <xliff:g id="STATUS">%2$s</xliff:g>"</string> <string name="person_available" msgid="2318599327472755472">"دردسترس"</string> <string name="battery_state_unknown_notification_title" msgid="8464703640483773454">"مشکلی در خواندن میزان باتری وجود دارد"</string> - <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"برای اطلاعات بیشتر ضربه بزنید"</string> + <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"برای اطلاعات بیشتر تکضرب بزنید"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"هشداری تنظیم نشده"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"وارد کردن قفل صفحه"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"حسگر اثر انگشت را لمس کنید. این حسگر همان دکمه کوچکتر در کنار تلفن است"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"حسگر اثرانگشت"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"اصالتسنجی کردن"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"وارد شدن به دستگاه"</string> @@ -1213,7 +1209,7 @@ <string name="non_carrier_network_unavailable" msgid="770049357024492372">"شبکه دیگری وجود ندارد"</string> <string name="all_network_unavailable" msgid="4112774339909373349">"شبکهای در دسترس نیست"</string> <string name="turn_on_wifi" msgid="1308379840799281023">"Wi-Fi"</string> - <string name="tap_a_network_to_connect" msgid="1565073330852369558">"برای اتصال به شبکه روی آن ضربه بزنید"</string> + <string name="tap_a_network_to_connect" msgid="1565073330852369558">"برای اتصال به شبکه روی آن تکضرب بزنید"</string> <string name="unlock_to_view_networks" msgid="5072880496312015676">"برای مشاهده شبکهها، قفل صفحه را باز کنید"</string> <string name="wifi_empty_list_wifi_on" msgid="3864376632067585377">"درحال جستجوی شبکه…"</string> <string name="wifi_failed_connect_message" msgid="4161863112079000071">"اتصال به شبکه برقرار نشد"</string> @@ -1239,7 +1235,7 @@ <string name="clipboard_edit_text_description" msgid="805254383912962103">"ویرایش نوشتار کپیشده"</string> <string name="clipboard_edit_image_description" msgid="8904857948976041306">"ویرایش تصویر کپیشده"</string> <string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ارسال به دستگاهی در اطراف"</string> - <string name="clipboard_text_hidden" msgid="7926899867471812305">"برای مشاهده، ضربه بزنید"</string> + <string name="clipboard_text_hidden" msgid="7926899867471812305">"برای مشاهده، تکضرب بزنید"</string> <string name="clipboard_text_copied" msgid="5100836834278976679">"نوشتار کپی شد"</string> <string name="clipboard_image_copied" msgid="3793365360174328722">"تصویر کپی شد"</string> <string name="clipboard_content_copied" msgid="144452398567828145">"محتوا کپی شد"</string> @@ -1260,7 +1256,7 @@ <string name="dream_overlay_weather_complication_desc" msgid="824503662089783824">"<xliff:g id="WEATHER_CONDITION">%1$s</xliff:g>، <xliff:g id="TEMPERATURE">%2$s</xliff:g>"</string> <string name="note_task_button_label" msgid="230135078402003532">"یادداشتبرداری"</string> <string name="note_task_shortcut_long_label" msgid="7729325091147319409">"یادداشتبرداری، <xliff:g id="NOTE_TAKING_APP">%1$s</xliff:g>"</string> - <string name="audio_sharing_description" msgid="8849060142768870004">"همرسانی صدا"</string> + <string name="audio_sharing_description" msgid="8849060142768870004">"درحال همرسانی صوتی"</string> <string name="broadcasting_description_is_broadcasting" msgid="765627502786404290">"همهفرستی"</string> <string name="bt_le_audio_broadcast_dialog_title" msgid="3605428497924077811">"همهفرستی <xliff:g id="APP_NAME">%1$s</xliff:g> متوقف شود؟"</string> <string name="bt_le_audio_broadcast_dialog_sub_title" msgid="7889684551194225793">"اگر <xliff:g id="SWITCHAPP">%1$s</xliff:g> را همهفرستی کنید یا خروجی را تغییر دهید، همهفرستی کنونی متوقف خواهد شد"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"نماد جمع کردن"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"نماد ازهم بازکردن"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"یا"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"اشاره برگشت"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"اشاره صفحه اصلی"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"دکمه کنش"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"تمام"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"نور پسزمینه صفحهکلید"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"سطح %1$d از %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"کنترل خانه هوشمند"</string> diff --git a/packages/SystemUI/res/values-fi/strings.xml b/packages/SystemUI/res/values-fi/strings.xml index 9a24082be9fc..0151cfbd9a62 100644 --- a/packages/SystemUI/res/values-fi/strings.xml +++ b/packages/SystemUI/res/values-fi/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ei enää tallenna sisältöä"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Lopeta tallennus"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Lopetetaanko näytön jakaminen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ei enää jaa sisältöä"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Lopeta jakaminen"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ei enää striimaa sisältöä"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Lopeta striimaus"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Sulje"</string> <string name="issuerecord_title" msgid="286627115110121849">"Ongelman tallentaja"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Käsittely: Ongelman tallennus"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Ongelmankeräykseen liittyvä ilmoitus taustalla jatkuvasta toiminnasta"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Tallennusongelma"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Tallennetaan ongelmaa"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Jaa"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"Ongelman tallennus tallennettiin"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Näytä napauttamalla"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Virhe ongelman tallenteen tallentamisessa"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Virhe ongelman tallentamisen aloituksessa"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Koko näytön tilassa"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Poistu pyyhkäisemällä alas näytön yläreunasta"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Selvä"</string> <string name="accessibility_back" msgid="6530104400086152611">"Takaisin"</string> <string name="accessibility_home" msgid="5430449841237966217">"Aloitus"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Avattu kasvojen avulla. Jatka painamalla."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Kasvot tunnistettu. Jatka painamalla."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Kasvot tunnistettu. Jatka lukituksen avauskuvakkeella."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Avattu kasvojen avulla. Jatka napauttamalla."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Todennettu"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Peruuta todennus"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Lisää vaihtoehtoja"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Tallennettu"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"katkaise yhteys"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivoi"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Laita automaattisesti päälle huomenna"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share, Paikanna laite ja tietyt muut ominaisuudet käyttävät Bluetoothia"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth menee päälle huomisaamuna"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Jaa audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audiota jaetaan"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Akun taso <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Ääni"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Aloita yhteisöesittely pyyhkäisemällä vasemmalle"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Muokkaa"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Hylkää"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Lisää, poista ja järjestä widgetejäsi uudelleen tässä tilassa"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Lisää, poista ja järjestä widgettejäsi uudelleen tässä tilassa"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Lisää widgetejä"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Yksilöi widgetit pitkällä painalluksella"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Muokkaa widgettejä"</string> @@ -814,8 +809,8 @@ <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"Syöttötapa"</string> <string name="input_switch_input_language_next" msgid="3782155659868227855">"Vaihda seuraavaan kieleen"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"Vaihda aiempaan kieleen"</string> - <string name="input_access_emoji" msgid="8105642858900406351">"Emojien käyttö"</string> - <string name="input_access_voice_typing" msgid="7291201476395326141">"Puhekirjoituksen käyttö"</string> + <string name="input_access_emoji" msgid="8105642858900406351">"Käytä emojeja"</string> + <string name="input_access_voice_typing" msgid="7291201476395326141">"Käytä puhekirjoitusta"</string> <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"Sovellukset"</string> <string name="keyboard_shortcut_group_applications_assist" msgid="6772492350416591448">"Assistant"</string> <string name="keyboard_shortcut_group_applications_browser" msgid="2776211137869809251">"Selain"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Saat lisätietoja napauttamalla"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ei herätyksiä"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"käytä näytön lukitustapaa"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Kosketa sormenjälkitunnistinta. Se on puhelimen sivussa oleva lyhyempi painike."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sormenjälkitunnistin"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"todentaaksesi"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"avataksesi laitteen"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Tiivistyskuvake"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Laajennuskuvake"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"tai"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Takaisin-ele"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Etusivu-ele"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Toimintonäppäin"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Valmis"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Näppämistön taustavalo"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Taso %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kodin ohjaus"</string> diff --git a/packages/SystemUI/res/values-fr-rCA-ldrtl/strings.xml b/packages/SystemUI/res/values-fr-rCA-ldrtl/strings.xml index 899fec0b89c6..9421af3f03ec 100644 --- a/packages/SystemUI/res/values-fr-rCA-ldrtl/strings.xml +++ b/packages/SystemUI/res/values-fr-rCA-ldrtl/strings.xml @@ -19,5 +19,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="recents_quick_scrub_onboarding" msgid="2452671841151577157">"Balayez l\'écran vers la gauche pour changer rapidement d\'application"</string> + <string name="recents_quick_scrub_onboarding" msgid="2452671841151577157">"Balayez l\'écran vers la gauche pour changer rapidement d\'appli"</string> </resources> diff --git a/packages/SystemUI/res/values-fr-rCA/strings.xml b/packages/SystemUI/res/values-fr-rCA/strings.xml index 77335de3d4cf..6fe000f7535e 100644 --- a/packages/SystemUI/res/values-fr-rCA/strings.xml +++ b/packages/SystemUI/res/values-fr-rCA/strings.xml @@ -35,16 +35,16 @@ <string name="extreme_battery_saver_text" msgid="8455810156739865335">"Extrême"</string> <string name="status_bar_settings_auto_rotation" msgid="8329080442278431708">"Rotation auto de l\'écran"</string> <string name="usb_device_permission_prompt" msgid="4414719028369181772">"Autoriser <xliff:g id="APPLICATION">%1$s</xliff:g> à accéder à <xliff:g id="USB_DEVICE">%2$s</xliff:g>?"</string> - <string name="usb_device_permission_prompt_warn" msgid="2309129784984063656">"Autorisé <xliff:g id="APPLICATION">%1$s</xliff:g> à accéder à <xliff:g id="USB_DEVICE">%2$s</xliff:g>?\nCette application n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait enregistrer du contenu audio par l\'intermédiaire de cet appareil USB."</string> + <string name="usb_device_permission_prompt_warn" msgid="2309129784984063656">"Autorisé <xliff:g id="APPLICATION">%1$s</xliff:g> à accéder à <xliff:g id="USB_DEVICE">%2$s</xliff:g>?\nCette appli n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait enregistrer du contenu audio par l\'intermédiaire de cet appareil USB."</string> <string name="usb_audio_device_permission_prompt_title" msgid="4221351137250093451">"Autoriser <xliff:g id="APPLICATION">%1$s</xliff:g> à accéder à <xliff:g id="USB_DEVICE">%2$s</xliff:g>?"</string> <string name="usb_audio_device_confirm_prompt_title" msgid="8828406516732985696">"Ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> pour utiliser <xliff:g id="USB_DEVICE">%2$s</xliff:g>?"</string> - <string name="usb_audio_device_prompt_warn" msgid="2504972133361130335">"Cette application n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait capturer du contenu audio par l\'intermédiaire de cet appareil USB. L\'utilisation de <xliff:g id="APPLICATION">%1$s</xliff:g> avec cet appareil peut empêcher d\'entendre les appels, les notifications et les alarmes."</string> + <string name="usb_audio_device_prompt_warn" msgid="2504972133361130335">"Cette appli n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait capturer du contenu audio par l\'intermédiaire de cet appareil USB. L\'utilisation de <xliff:g id="APPLICATION">%1$s</xliff:g> avec cet appareil peut empêcher d\'entendre les appels, les notifications et les alarmes."</string> <string name="usb_audio_device_prompt" msgid="7944987408206252949">"L\'utilisation de <xliff:g id="APPLICATION">%1$s</xliff:g> avec cet appareil peut empêcher d\'entendre les appels, les notifications et les alarmes."</string> <string name="usb_accessory_permission_prompt" msgid="717963550388312123">"Autoriser <xliff:g id="APPLICATION">%1$s</xliff:g> à accéder à <xliff:g id="USB_ACCESSORY">%2$s</xliff:g>?"</string> <string name="usb_device_confirm_prompt" msgid="4091711472439910809">"Ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> pour utiliser <xliff:g id="USB_DEVICE">%2$s</xliff:g>?"</string> - <string name="usb_device_confirm_prompt_warn" msgid="990208659736311769">"Ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> pour gérer <xliff:g id="USB_DEVICE">%2$s</xliff:g>?\nCette application n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait enregistrer du contenu audio par l\'intermédiaire de cet appareil USB."</string> + <string name="usb_device_confirm_prompt_warn" msgid="990208659736311769">"Ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> pour gérer <xliff:g id="USB_DEVICE">%2$s</xliff:g>?\nCette appli n\'a pas été autorisée à effectuer des enregistrements, mais elle pourrait enregistrer du contenu audio par l\'intermédiaire de cet appareil USB."</string> <string name="usb_accessory_confirm_prompt" msgid="5728408382798643421">"Ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> pour utiliser <xliff:g id="USB_ACCESSORY">%2$s</xliff:g>?"</string> - <string name="usb_accessory_uri_prompt" msgid="6756649383432542382">"Aucune application installée compatible avec accessoire USB. En savoir plus sur <xliff:g id="URL">%1$s</xliff:g>"</string> + <string name="usb_accessory_uri_prompt" msgid="6756649383432542382">"Aucune appli installée compatible avec accessoire USB. En savoir plus sur <xliff:g id="URL">%1$s</xliff:g>"</string> <string name="title_usb_accessory" msgid="1236358027511638648">"Accessoire USB"</string> <string name="label_view" msgid="6815442985276363364">"Afficher"</string> <string name="always_use_device" msgid="210535878779644679">"Toujours ouvrir <xliff:g id="APPLICATION">%1$s</xliff:g> lorsque <xliff:g id="USB_DEVICE">%2$s</xliff:g> est connecté"</string> @@ -83,7 +83,7 @@ <string name="screenshot_failed_to_save_user_locked_text" msgid="6156607948256936920">"L\'appareil doit être déverrouillé avant qu\'une capture d\'écran puisse être enregistrée"</string> <string name="screenshot_failed_to_save_unknown_text" msgid="1506621600548684129">"Essayez de faire une autre capture d\'écran"</string> <string name="screenshot_failed_to_save_text" msgid="7232739948999195960">"Impossible d\'enregistrer la capture d\'écran"</string> - <string name="screenshot_failed_to_capture_text" msgid="7818288545874407451">"L\'application ou votre organisation n\'autorise pas les saisies d\'écran"</string> + <string name="screenshot_failed_to_capture_text" msgid="7818288545874407451">"L\'appli ou votre organisation n\'autorise pas les saisies d\'écran"</string> <string name="screenshot_blocked_by_admin" msgid="5486757604822795797">"La prise de captures d\'écran est bloquée par votre administrateur informatique"</string> <string name="screenshot_edit_label" msgid="8754981973544133050">"Modifier"</string> <string name="screenshot_edit_description" msgid="3333092254706788906">"Modifier la capture d\'écran"</string> @@ -101,14 +101,14 @@ <string name="screenshot_private_profile_notification" msgid="1704440899154243171">"Enregistré dans <xliff:g id="APP">%1$s</xliff:g> dans le profil privé"</string> <string name="screenshot_default_files_app_name" msgid="8721579578575161912">"Fichiers"</string> <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 applications ouvertes ont 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 à une note"</string> <string name="screenrecord_title" msgid="4257171601439507792">"Enregistreur d\'écran"</string> <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Trait. de l\'enregist. d\'écran…"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Notification en cours pour une session d\'enregistrement d\'écran"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Commencer l\'enregistrement?"</string> <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Pendant l\'enregistrement, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> - <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Lorsque vous enregistrez une application, Android a accès à tout ce qui est visible ou lu sur cette application. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les 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 ou lu sur cette appli. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Commencer l\'enregistrement"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Enregistrer des fichiers audio"</string> <string name="screenrecord_device_audio_label" msgid="9016927171280567791">"Audio de l\'appareil"</string> @@ -122,41 +122,38 @@ <string name="screenrecord_stop_label" msgid="72699670052087989">"Arrêter"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"Partager"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"Enregistrement sauvegardé"</string> - <string name="screenrecord_save_text" msgid="3008973099800840163">"Touchez pour afficher"</string> + <string name="screenrecord_save_text" msgid="3008973099800840163">"Touchez ceci pour afficher"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"Erreur d\'enregistrement de l\'écran"</string> <string name="screenrecord_start_error" msgid="2200660692479682368">"Une erreur s\'est produite lors du démarrage de l\'enregistrement d\'écran"</string> <!-- no translation found for screenrecord_stop_dialog_title (2685522129492260887) --> <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Vous arrêterez d\'enregistrer <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Arrêter l\'enregistrement"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Arrêter le partage d\'écran?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Vous arrêterez de partager <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Arrêter le partage"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Vous arrêterez de diffuser <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Arrêter la diffusion"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Fermer"</string> <string name="issuerecord_title" msgid="286627115110121849">"Enregistreur de problèmes"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Trait. de l\'enreg. du problème"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notification continue pour une session de collecte d\'un problème"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Enregistrement du problème"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Partager"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"L\'enregistrement du problème a été enregistré"</string> - <string name="issuerecord_save_text" msgid="1205985304551521495">"Touchez ici pour afficher l\'enregistrement"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"Le problème a été enregistré"</string> + <string name="issuerecord_save_text" msgid="1205985304551521495">"Touchez ceci pour afficher l\'enregistrement"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Erreur lors de l\'enregistrement du problème"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Erreur lors du démarrage de l\'enregistrement du problème"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Affichage plein écran"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Pour quitter ce mode, balayer l\'écran vers le bas à partir du haut"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Précédent"</string> <string name="accessibility_home" msgid="5430449841237966217">"Domicile"</string> @@ -174,7 +171,7 @@ <string name="accessibility_scanning_face" msgid="3093828357921541387">"Numérisation du visage"</string> <string name="accessibility_send_smart_reply" msgid="8885032190442015141">"Envoyer"</string> <string name="cancel" msgid="1089011503403416730">"Annuler"</string> - <string name="biometric_dialog_logo" msgid="7681107853070774595">"Logo de l\'application"</string> + <string name="biometric_dialog_logo" msgid="7681107853070774595">"Logo de l\'appli"</string> <string-array name="biometric_dialog_package_names_for_logo_with_overrides"> </string-array> <string name="biometric_dialog_confirm" msgid="2005978443007344895">"Confirmer"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Déverr. par reconnaissance faciale. Appuyez pour continuer."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Visage reconnu. Appuyez pour continuer."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Visage reconnu. Appuyez sur Déverrouiller pour continuer."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Déverrouillé avec le visage. Touchez pour continuer."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authentifié"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Annuler l\'authentification"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Plus d\'options"</string> @@ -208,7 +206,7 @@ <string name="biometric_dialog_last_pattern_attempt_before_wipe_user" msgid="8400180746043407270">"Si vous entrez un schéma incorrect à la prochaine tentative, cet utilisateur sera supprimé."</string> <string name="biometric_dialog_last_pin_attempt_before_wipe_user" msgid="4159878829962411168">"Si vous entrez un NIP incorrect à la prochaine tentative, cet utilisateur sera supprimé."</string> <string name="biometric_dialog_last_password_attempt_before_wipe_user" msgid="4695682515465063885">"Si vous entrez un mot de passe incorrect à la prochaine tentative, cet utilisateur sera supprimé."</string> - <string name="biometric_dialog_last_pattern_attempt_before_wipe_profile" msgid="6045224069529284686">"Si vous entrez un schéma incorrect à la prochaine tentative suivante, votre profil professionnel et ses données seront supprimés."</string> + <string name="biometric_dialog_last_pattern_attempt_before_wipe_profile" msgid="6045224069529284686">"Si vous entrez un schéma incorrect à la prochaine tentative, votre profil professionnel et ses données seront supprimés."</string> <string name="biometric_dialog_last_pin_attempt_before_wipe_profile" msgid="545567685899091757">"Si vous entrez un NIP incorrect à la prochaine tentative, votre profil professionnel et ses données seront supprimés."</string> <string name="biometric_dialog_last_password_attempt_before_wipe_profile" msgid="8538032972389729253">"Si vous entrez un mot de passe incorrect à la prochaine tentative suivante, votre profil professionnel et ses données seront supprimés."</string> <string name="biometric_re_enroll_dialog_confirm" msgid="3049858021857801836">"Configuration"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Enregistré"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"Déconnecter"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"Activer"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"L\'activer automatiquement demain"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Les fonctionnalités comme Partage rapide et Localiser mon appareil utilisent le Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Le Bluetooth s\'activera demain matin"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Partager l\'audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Partage de l\'audio en cours"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Pile : <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Écouteurs"</string> @@ -357,7 +352,7 @@ <string name="quick_settings_cellular_detail_data_used" msgid="6798849610647988987">"Quantité de données utilisées :<xliff:g id="DATA_USED">%s</xliff:g>"</string> <string name="quick_settings_cellular_detail_data_limit" msgid="1791389609409211628">"Limite : <xliff:g id="DATA_LIMIT">%s</xliff:g>"</string> <string name="quick_settings_cellular_detail_data_warning" msgid="7957253810481086455">"Avertissement : <xliff:g id="DATA_LIMIT">%s</xliff:g>"</string> - <string name="quick_settings_work_mode_label" msgid="6440531507319809121">"Applications professionnelles"</string> + <string name="quick_settings_work_mode_label" msgid="6440531507319809121">"Applis professionnelles"</string> <string name="quick_settings_work_mode_paused_state" msgid="6681788236383735976">"En pause"</string> <string name="quick_settings_night_display_label" msgid="8180030659141778180">"Éclairage nocturne"</string> <string name="quick_settings_night_secondary_label_on_at_sunset" msgid="3358706312129866626">"Activé la nuit"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Enregistrement d\'écran"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Démarrer"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Arrêter"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Rapporter le problème"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Enregistrer le problème"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Commencer"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Arrêter"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Rapport de bogue"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Enregistrement écran"</string> <string name="performance" msgid="6552785217174378320">"Performance"</string> <string name="user_interface" msgid="3712869377953950887">"Interface utilisateur"</string> - <string name="thermal" msgid="6758074791325414831">"Thermique"</string> + <string name="thermal" msgid="6758074791325414831">"Chaleur"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Mode Une main"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Appareils auditifs"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Actives"</string> @@ -401,9 +396,9 @@ <string name="sensor_privacy_start_use_mic_dialog_title" msgid="563796653825944944">"Débloquer le microphone de l\'appareil?"</string> <string name="sensor_privacy_start_use_camera_dialog_title" msgid="8807639852654305227">"Débloquer l\'appareil photo de l\'appareil?"</string> <string name="sensor_privacy_start_use_mic_camera_dialog_title" msgid="4316471859905020023">"Débloquer l\'appareil photo et le microphone?"</string> - <string name="sensor_privacy_start_use_mic_dialog_content" msgid="1624701280680913717">"Cette action débloque l\'accès pour toutes les applications et tous les services autorisés à utiliser le microphone."</string> - <string name="sensor_privacy_start_use_camera_dialog_content" msgid="4704948062372435963">"Cette action débloque l\'accès pour toutes les applications et pour tous les services autorisés à utiliser l\'appareil photo."</string> - <string name="sensor_privacy_start_use_mic_camera_dialog_content" msgid="3577642558418404919">"Cette action débloque l\'accès pour toutes les applications et tous les services autorisés à utiliser l\'appareil photo ou le microphone."</string> + <string name="sensor_privacy_start_use_mic_dialog_content" msgid="1624701280680913717">"Cette action débloque l\'accès pour toutes les applis et tous les services autorisés à utiliser le microphone."</string> + <string name="sensor_privacy_start_use_camera_dialog_content" msgid="4704948062372435963">"Cette action débloque l\'accès pour toutes les applis et pour tous les services autorisés à utiliser l\'appareil photo."</string> + <string name="sensor_privacy_start_use_mic_camera_dialog_content" msgid="3577642558418404919">"Cette action débloque l\'accès pour toutes les applis et tous les services autorisés à utiliser l\'appareil photo ou le microphone."</string> <string name="sensor_privacy_start_use_mic_blocked_dialog_title" msgid="2640140287496469689">"Le microphone est bloqué"</string> <string name="sensor_privacy_start_use_camera_blocked_dialog_title" msgid="7398084286822440384">"L\'appareil photo est bloqué"</string> <string name="sensor_privacy_start_use_mic_camera_blocked_dialog_title" msgid="195236134743281973">"Le microphone et l\'appareil photo sont bloqués"</string> @@ -415,13 +410,13 @@ <string name="sensor_privacy_mic_camera_unblocked_toast_content" msgid="7339355093282661115">"Microphone et appareil photo disponibles"</string> <string name="sensor_privacy_mic_turned_on_dialog_title" msgid="6348853159838376513">"Microphone activé"</string> <string name="sensor_privacy_mic_turned_off_dialog_title" msgid="5760464281790732849">"Microphone désactivé"</string> - <string name="sensor_privacy_mic_unblocked_dialog_content" msgid="4889961886199270224">"Le microphone est activé pour toutes les applications et tous les services."</string> - <string name="sensor_privacy_mic_blocked_no_exception_dialog_content" msgid="5864898470772965394">"L\'accès au microphone est désactivé pour toutes les applications et tous les services. Vous pouvez l\'activer dans Paramètres > Confidentialité > Microphone."</string> - <string name="sensor_privacy_mic_blocked_with_exception_dialog_content" msgid="810289713700437896">"L\'accès au microphone est désactivé pour toutes les applications et tous les services. Vous pouvez modifier cette option dans Paramètres > Confidentialité > Microphone."</string> + <string name="sensor_privacy_mic_unblocked_dialog_content" msgid="4889961886199270224">"Le microphone est activé pour toutes les applis et tous les services."</string> + <string name="sensor_privacy_mic_blocked_no_exception_dialog_content" msgid="5864898470772965394">"L\'accès au microphone est désactivé pour toutes les applis et tous les services. Vous pouvez l\'activer dans Paramètres > Confidentialité > Microphone."</string> + <string name="sensor_privacy_mic_blocked_with_exception_dialog_content" msgid="810289713700437896">"L\'accès au microphone est désactivé pour toutes les applis et tous les services. Vous pouvez modifier cette option dans Paramètres > Confidentialité > Microphone."</string> <string name="sensor_privacy_camera_turned_on_dialog_title" msgid="8039095295100075952">"Appareil photo activé"</string> <string name="sensor_privacy_camera_turned_off_dialog_title" msgid="1936603903120742696">"Appareil photo désactivé"</string> - <string name="sensor_privacy_camera_unblocked_dialog_content" msgid="7847190103011782278">"L\'appareil photo est activé pour toutes les applications et tous les services."</string> - <string name="sensor_privacy_camera_blocked_dialog_content" msgid="3182428709314874616">"L\'accès à l\'appareil photo est désactivé pour toutes les applications et tous les services."</string> + <string name="sensor_privacy_camera_unblocked_dialog_content" msgid="7847190103011782278">"L\'appareil photo est activé pour toutes les applis et tous les services."</string> + <string name="sensor_privacy_camera_blocked_dialog_content" msgid="3182428709314874616">"L\'accès à l\'appareil photo est désactivé pour toutes les applis et tous les services."</string> <string name="sensor_privacy_htt_blocked_dialog_content" msgid="3333321592997666441">"Pour utiliser le bouton du microphone, activez l\'accès au microphone dans les paramètres."</string> <string name="sensor_privacy_dialog_open_settings" msgid="5635865896053011859">"Ouvrir les paramètres"</string> <string name="media_seamless_other_device" msgid="4654849800789196737">"Autre appareil"</string> @@ -469,16 +464,16 @@ <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Fermer"</string> <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Ajouter, retirer et réorganiser vos widgets dans cet espace"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Ajouter plus de widgets"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Maintenez le doigt pour personnaliser les widgets"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Appuyez longuement pour personnaliser les widgets"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Personnaliser les widgets"</string> - <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Icône d\'application pour un widget désactivé"</string> + <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Icône d\'appli pour un widget désactivé"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Icône d\'appli indiquant qu\'un widget est en cours d\'installation"</string> <string name="edit_widget" msgid="9030848101135393954">"Modifier le widget"</string> <string name="button_to_remove_widget" msgid="3948204829181214098">"Retirer"</string> <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Ajouter un widget"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Terminé"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Ajouter des widgets"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Accédez rapidement aux widgets de vos applications préférées sans déverrouiller votre tablette."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Accédez rapidement aux widgets de vos applis préférées sans déverrouiller votre tablette."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Autoriser n\'importe quel widget sur l\'écran de verrouillage?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Ouvrir les paramètres"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Réactiver les applis pros?"</string> @@ -491,45 +486,45 @@ <string name="accessibility_action_label_place_widget" msgid="1914197458644168978">"placer le widget sélectionné"</string> <string name="accessibility_multi_user_switch_switcher" msgid="5330448341251092660">"Changer d\'utilisateur"</string> <string name="accessibility_multi_user_list_switcher" msgid="8574105376229857407">"menu déroulant"</string> - <string name="guest_exit_guest_dialog_message" msgid="8183450985628495709">"Toutes les applications et les données de cette session seront supprimées."</string> + <string name="guest_exit_guest_dialog_message" msgid="8183450985628495709">"Toutes les applis et les données de cette session seront supprimées."</string> <string name="guest_wipe_session_title" msgid="7147965814683990944">"Bienvenue à nouveau dans la session Invité"</string> <string name="guest_wipe_session_message" msgid="3393823610257065457">"Voulez-vous poursuivre la session?"</string> <string name="guest_wipe_session_wipe" msgid="8056836584445473309">"Recommencer"</string> <string name="guest_wipe_session_dontwipe" msgid="3211052048269304205">"Oui, continuer"</string> <string name="guest_notification_app_name" msgid="2110425506754205509">"Mode Invité"</string> <string name="guest_notification_session_active" msgid="5567273684713471450">"Vous êtes en mode Invité"</string> - <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Si vous ajoutez un nouvel utilisateur, vous quitterez le mode Invité, et toutes les applications et données de la session d\'invité en cours seront supprimées."</string> + <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Si vous ajoutez un nouvel utilisateur, vous quitterez le mode Invité, et toutes les applis et données de la session d\'invité en cours seront supprimées."</string> <string name="user_limit_reached_title" msgid="2429229448830346057">"Limite d\'utilisateurs atteinte"</string> - <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Vous ne pouvez créer qu\'un seul utilisateur.}one{Vous pouvez ajouter jusqu\'à # utilisateur.}many{Vous pouvez ajouter jusqu\'à # d\'utilisateurs.}other{Vous pouvez ajouter jusqu\'à # utilisateurs.}}"</string> + <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Un seul utilisateur peut être créé}one{Vous pouvez ajouter jusqu\'à # utilisateur.}many{Vous pouvez ajouter jusqu\'à # d\'utilisateurs.}other{Vous pouvez ajouter jusqu\'à # utilisateurs.}}"</string> <string name="user_remove_user_title" msgid="9124124694835811874">"Supprimer l\'utilisateur?"</string> - <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_message" msgid="6702834122128031833">"Toutes les applis 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">"Commencer à enregistrer ou à diffuser avec <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g>?"</string> <string name="media_projection_dialog_warning" msgid="1303664408388363598">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> aura accès à toute l\'information qui est visible sur votre écran ou lue sur votre appareil durant l\'enregistrement ou la diffusion. Cela comprend des renseignements comme les mots de passe, les détails du paiement, les photos, les messages et les contenus audio que vous faites jouer."</string> <string name="media_projection_sys_service_dialog_title" msgid="3751133258891897878">"Commencer à enregistrer ou à diffuser?"</string> <string name="media_projection_sys_service_dialog_warning" msgid="2443872865267330320">"Le service offrant cette fonction aura accès à toute l\'information qui est visible sur votre écran ou lu sur votre appareil pendant que vous enregistrez ou diffusez. Cela comprend des renseignements comme les mots de passe, les détails du paiement, les photos, les messages et le contenu audio que vous faites jouer."</string> <string name="screen_share_permission_dialog_option_entire_screen" msgid="3131200488455089620">"Écran entier"</string> - <string name="screen_share_permission_dialog_option_single_app" msgid="4350961814397220929">"Une seule application"</string> - <string name="screen_share_permission_app_selector_title" msgid="1404878013670347899">"Partager ou enregistrer une application"</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 à diffuser 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 diffusez, <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. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> - <string name="media_projection_entry_app_permission_dialog_warning_single_app" msgid="5211695779082563959">"Lorsque vous partagez, enregistrez ou diffusez une application, <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> a accès à tout ce qui est visible sur votre écran ou lu sur cette application. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> + <string name="media_projection_entry_app_permission_dialog_warning_single_app" msgid="5211695779082563959">"Lorsque vous partagez, enregistrez ou diffusez 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 cette appli. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> <string name="media_projection_entry_app_permission_dialog_continue" msgid="295463518195075840">"Commencer"</string> <string name="media_projection_entry_app_permission_dialog_single_app_disabled" msgid="8999903044874669995">"<xliff:g id="APP_NAME">%1$s</xliff:g> a désactivé cette option"</string> <string name="media_projection_entry_cast_permission_dialog_title" msgid="8860150223172993547">"Commencer la diffusion?"</string> <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="1986212276016817231">"Lorsque vous diffusez, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> - <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="9900961380294292">"Lorsque vous diffusez une application, Android a accès à tout ce qui est visible sur votre écran ou lu sur cette application. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> + <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="9900961380294292">"Lorsque vous diffusez une appli, Android a accès à tout ce qui est visible sur votre écran ou lu sur cette appli. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> <string name="media_projection_entry_cast_permission_dialog_continue" msgid="7209890669948870042">"Commencer la diffusion"</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 diffusez, Android a accès à tout ce qui est visible sur votre écran ou lu sur votre appareil. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> - <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Lorsque vous partagez, enregistrez ou diffusez une application, Android a accès à tout ce qui est visible sur votre écran ou lu sur cette application. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> + <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Lorsque vous partagez, enregistrez ou diffusez une appli, Android a accès à tout ce qui est visible sur votre écran ou lu sur cette appli. Par conséquent, soyez prudent avec les mots de passe, les détails du paiement, les messages, les photos et les contenus audio et vidéo."</string> <string name="media_projection_entry_generic_permission_dialog_continue" msgid="8640381403048097116">"Commencer"</string> - <string name="media_projection_task_switcher_text" msgid="590885489897412359">"Le partage s\'interrompt lorsque vous changez d\'application"</string> - <string name="media_projection_task_switcher_action_switch" msgid="8682258717291921123">"Partager plutôt cette application"</string> + <string name="media_projection_task_switcher_text" msgid="590885489897412359">"Le partage s\'interrompt lorsque vous changez d\'appli"</string> + <string name="media_projection_task_switcher_action_switch" msgid="8682258717291921123">"Partager plutôt cette appli"</string> <string name="media_projection_task_switcher_action_back" msgid="5324164224147845282">"Revenir en arrière"</string> - <string name="media_projection_task_switcher_notification_channel" msgid="7613206306777814253">"Commutateur d\'application"</string> + <string name="media_projection_task_switcher_notification_channel" msgid="7613206306777814253">"Commutateur d\'appli"</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 fonctionnalité de capture d\'écran est désactivée par l\'application Device Policy"</string> + <string name="screen_capturing_disabled_by_policy_dialog_description" msgid="6015975736747696431">"La fonctionnalité de capture d\'écran est désactivée par l\'appli Device Policy"</string> <string name="clear_all_notifications_text" msgid="348312370303046130">"Tout effacer"</string> <string name="manage_notifications_text" msgid="6885645344647733116">"Gérer"</string> <string name="manage_notifications_history_text" msgid="57055985396576230">"Historique"</string> @@ -558,8 +553,8 @@ <string name="quick_settings_disclosure_managed_profile_network_activity" msgid="2636594621387832827">"Votre administrateur informatique a accès à l\'activité sur le réseau de votre profil professionnel"</string> <string name="quick_settings_disclosure_monitoring" msgid="8548019955631378680">"Le réseau peut être surveillé"</string> <string name="quick_settings_disclosure_vpns" msgid="3586175303518266301">"Cet appareil est connecté à Internet par l\'intermédiaire de RPV"</string> - <string name="quick_settings_disclosure_managed_profile_named_vpn" msgid="153393105176944100">"Vos applications professionnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> - <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"Vos applications personnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> + <string name="quick_settings_disclosure_managed_profile_named_vpn" msgid="153393105176944100">"Vos applis professionnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> + <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"Vos applis personnelles sont connectées à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"Cet appareil est connecté à Internet par l\'intermédiaire de <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"Cet appareil est fourni par <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>"</string> <string name="monitoring_title_device_owned" msgid="7029691083837606324">"Gestion d\'appareils"</string> @@ -568,9 +563,9 @@ <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Certificats CA"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Afficher les politiques"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Afficher les commandes"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"Votre appareil appartient à <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nVotre administrateur informatique peut contrôler et gérer les paramètres, l\'accès aux données d\'entreprise, les applications, les données associées à l\'appareil et les renseignements sur sa position.\n\nPour obtenir plus d\'information, communiquez avec votre administrateur informatique."</string> - <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> pourrait être en mesure d\'accéder aux données associées à cet appareil, de modifier ses paramètres et de gérer des applications.\n\nSi vous avez des questions, communiquez avec <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"Cet appareil appartient à votre organisation.\n\nVotre administrateur informatique peut contrôler et gérer les paramètres, l\'accès aux données d\'entreprise, les applications, les données associées à votre appareil et les renseignements sur sa position.\n\nPour obtenir plus d\'information, communiquez avec votre administrateur informatique."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"Votre appareil appartient à <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nVotre administrateur informatique peut contrôler et gérer les paramètres, l\'accès aux données d\'entreprise, les applis, les données associées à l\'appareil et les renseignements sur sa position.\n\nPour obtenir plus d\'information, communiquez avec votre administrateur informatique."</string> + <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> pourrait être en mesure d\'accéder aux données associées à cet appareil, de modifier ses paramètres et de gérer des applis.\n\nSi vous avez des questions, communiquez avec <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"Cet appareil appartient à votre organisation.\n\nVotre administrateur informatique peut contrôler et gérer les paramètres, l\'accès aux données d\'entreprise, les applis, les données associées à votre appareil et les renseignements sur sa position.\n\nPour obtenir plus d\'information, communiquez avec votre administrateur informatique."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"Votre entreprise a installé une autorité de certification sur cet appareil. Votre trafic sur le réseau sécurisé peut être contrôlé ou modifié."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"Votre entreprise a installé une autorité de certification dans votre profil professionnel. Votre trafic sur le réseau sécurisé peut être contrôlé ou modifié."</string> <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> @@ -579,11 +574,11 @@ <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> + <string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Vos applis 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 applis 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 applis 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> <string name="monitoring_description_vpn_settings_separator" msgid="8292589617720435430">" "</string> <string name="monitoring_description_vpn_settings" msgid="5264167033247632071">"Ouvrir les paramètres RPV"</string> - <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"Cet appareil est géré par ton parent. Ton parent peut voir et gérer de l\'information, comme les applications que tu utilises, ta position et ton temps d\'utilisation des écrans."</string> + <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"Cet appareil est géré par ton parent. Ton parent peut voir et gérer de l\'information, comme les applis que tu utilises, ta position et ton temps d\'utilisation des écrans."</string> <string name="legacy_vpn_name" msgid="4174223520162559145">"RPV"</string> <string name="keyguard_indication_trust_unlocked" msgid="7395154975733744547">"Maintenu déverrouillé par TrustAgent"</string> <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"L\'appareil a été verrouillé : trop de tentatives d\'authentification"</string> @@ -603,21 +598,21 @@ <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Le niveau du volume des écouteurs a dépassé la limite de sécurité pour cette semaine"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"Poursuivre l\'écoute"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"Diminuer le volume"</string> - <string name="screen_pinning_title" msgid="9058007390337841305">"L\'application est épinglée"</string> + <string name="screen_pinning_title" msgid="9058007390337841305">"L\'appli est épinglée"</string> <string name="screen_pinning_description" msgid="8699395373875667743">"Cet écran est épinglé jusqu\'à ce que vous annuliez l\'opération. Pour annuler l\'épinglage, maintenez le doigt sur « Retour » et « Aperçu »."</string> <string name="screen_pinning_description_recents_invisible" msgid="4564466648700390037">"Cet écran est épinglé jusqu\'à ce que vous annuliez l\'opération. Pour annuler l\'épinglage, maintenez le doigt sur les touches Retour et Accueil."</string> <string name="screen_pinning_description_gestural" msgid="7246323931831232068">"Cet écran est épinglé jusqu\'à ce que vous annuliez l\'épinglage. Pour annuler l\'épinglage, balayez l\'écran vers le haut et gardez le doigt dessus."</string> <string name="screen_pinning_description_accessible" msgid="7386449191953535332">"Cet écran est épinglé jusqu\'à ce que vous annuliez l\'opération. Pour annuler l\'épinglage, maintenez le doigt sur « Aperçu »."</string> <string name="screen_pinning_description_recents_invisible_accessible" msgid="2857071808674481986">"Cet écran est épinglé jusqu\'à ce que vous annuliez l\'opération. Pour annuler l\'épinglage, maintenez le doigt sur la touche Accueil."</string> <string name="screen_pinning_exposes_personal_data" msgid="8189852022981524789">"Certaines données personnelles pourraient être accessibles (comme les contacts et le contenu des courriels)."</string> - <string name="screen_pinning_can_open_other_apps" msgid="7529756813231421455">"L\'application épinglée peut ouvrir d\'autres applications."</string> - <string name="screen_pinning_toast" msgid="8177286912533744328">"Pour annuler l\'épinglage de cette application, maintenez un doigt sur les touches Retour et Aperçu"</string> - <string name="screen_pinning_toast_recents_invisible" msgid="6850978077443052594">"Pour annuler l\'épinglage de cette application, maintenez un doigt sur les touches Retour et Accueil"</string> - <string name="screen_pinning_toast_gesture_nav" msgid="170699893395336705">"Pour annuler l\'épinglage de cette application, balayez-la vers le haut et maintenez-la"</string> + <string name="screen_pinning_can_open_other_apps" msgid="7529756813231421455">"L\'appli épinglée peut ouvrir d\'autres applis."</string> + <string name="screen_pinning_toast" msgid="8177286912533744328">"Pour annuler l\'épinglage de cette appli, maintenez un doigt sur les touches Retour et Aperçu"</string> + <string name="screen_pinning_toast_recents_invisible" msgid="6850978077443052594">"Pour annuler l\'épinglage de cette appli, maintenez un doigt sur les touches Retour et Accueil"</string> + <string name="screen_pinning_toast_gesture_nav" msgid="170699893395336705">"Pour annuler l\'épinglage de cette appli, balayez-la vers le haut et maintenez-la"</string> <string name="screen_pinning_positive" msgid="3285785989665266984">"OK"</string> <string name="screen_pinning_negative" msgid="6882816864569211666">"Non, merci"</string> - <string name="screen_pinning_start" msgid="7483998671383371313">"Application épinglée"</string> - <string name="screen_pinning_exit" msgid="4553787518387346893">"L\'épinglage de l\'application a été annulé"</string> + <string name="screen_pinning_start" msgid="7483998671383371313">"Appli épinglée"</string> + <string name="screen_pinning_exit" msgid="4553787518387346893">"L\'épinglage de l\'appli a été annulé"</string> <string name="stream_voice_call" msgid="7468348170702375660">"Appeler"</string> <string name="stream_system" msgid="7663148785370565134">"Système"</string> <string name="stream_ring" msgid="7550670036738697526">"Sonnerie"</string> @@ -789,34 +784,34 @@ <string name="keyboard_shortcut_a11y_show_search_results" msgid="2865241062981833705">"Affichage des résultats de recherche en cours…"</string> <string name="keyboard_shortcut_a11y_filter_system" msgid="7744143131119370483">"Affichage des raccourcis du système en cours…"</string> <string name="keyboard_shortcut_a11y_filter_input" msgid="4589316004510335529">"Affichage des raccourcis d\'entrée en cours…"</string> - <string name="keyboard_shortcut_a11y_filter_open_apps" msgid="6175417687221004059">"Affichage des raccourcis qui ouvrent les applications en cours…"</string> - <string name="keyboard_shortcut_a11y_filter_current_app" msgid="7944592357493737911">"Affichage des raccourcis de l\'application actuelle en cours…"</string> + <string name="keyboard_shortcut_a11y_filter_open_apps" msgid="6175417687221004059">"Affichage des raccourcis qui ouvrent les applis en cours…"</string> + <string name="keyboard_shortcut_a11y_filter_current_app" msgid="7944592357493737911">"Affichage des raccourcis de l\'appli actuelle en cours…"</string> <string name="group_system_access_notification_shade" msgid="1619028907006553677">"Afficher les notifications"</string> <string name="group_system_full_screenshot" msgid="5742204844232667785">"Prendre une capture d\'écran"</string> <string name="group_system_access_system_app_shortcuts" msgid="8562482996626694026">"Afficher les raccourcis"</string> <string name="group_system_go_back" msgid="2730322046244918816">"Retour"</string> <string name="group_system_access_home_screen" msgid="4130366993484706483">"Aller à l’écran d’accueil"</string> - <string name="group_system_overview_open_apps" msgid="5659958952937994104">"Afficher les applications récentes"</string> - <string name="group_system_cycle_forward" msgid="5478663965957647805">"Parcourir les applications récentes"</string> - <string name="group_system_cycle_back" msgid="8194102916946802902">"Parcourir les applications récentes en sens inverse"</string> - <string name="group_system_access_all_apps_search" msgid="1553588630154197469">"Ouvrir la liste des applications"</string> + <string name="group_system_overview_open_apps" msgid="5659958952937994104">"Afficher les applis récentes"</string> + <string name="group_system_cycle_forward" msgid="5478663965957647805">"Parcourir les applis récentes"</string> + <string name="group_system_cycle_back" msgid="8194102916946802902">"Parcourir les applis récentes en sens inverse"</string> + <string name="group_system_access_all_apps_search" msgid="1553588630154197469">"Ouvrir la liste des applis"</string> <string name="group_system_access_system_settings" msgid="8731721963449070017">"Ouvrir les paramètres"</string> <string name="group_system_access_google_assistant" msgid="7210074957915968110">"Ouvrir l\'Assistant"</string> <string name="group_system_lock_screen" msgid="7391191300363416543">"Écran de verrouillage"</string> <string name="group_system_quick_memo" msgid="3764560265935722903">"Prendre une note"</string> <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitâche"</string> - <string name="system_multitasking_rhs" msgid="8714224917276297810">"Utiliser l\'Écran divisé avec l\'application actuelle à droite"</string> - <string name="system_multitasking_lhs" msgid="8402954791206308783">"Utiliser l\'Écran divisé avec l\'application actuelle à gauche"</string> + <string name="system_multitasking_rhs" msgid="8714224917276297810">"Utiliser l\'Écran divisé avec l\'appli actuelle à droite"</string> + <string name="system_multitasking_lhs" msgid="8402954791206308783">"Utiliser l\'Écran divisé avec l\'appli actuelle à gauche"</string> <string name="system_multitasking_full_screen" msgid="336048080383640562">"Passer de l\'écran divisé au plein écran"</string> - <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Passer à l\'application à droite ou en dessous avec l\'Écran divisé"</string> - <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Passer à l\'application à gauche ou au-dessus avec l\'Écran divisé"</string> - <string name="system_multitasking_replace" msgid="7410071959803642125">"En mode d\'écran divisé : remplacer une application par une autre"</string> + <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Passer à l\'appli à droite ou en dessous avec l\'Écran divisé"</string> + <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Passer à l\'appli à gauche ou au-dessus avec l\'Écran divisé"</string> + <string name="system_multitasking_replace" msgid="7410071959803642125">"En mode d\'écran divisé : remplacer une appli par une autre"</string> <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"Entrée"</string> <string name="input_switch_input_language_next" msgid="3782155659868227855">"Passer à la langue suivante"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"Passer à la langue précédente"</string> <string name="input_access_emoji" msgid="8105642858900406351">"Accéder aux émojis"</string> <string name="input_access_voice_typing" msgid="7291201476395326141">"Accéder à l\'entrée vocale"</string> - <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"Applications"</string> + <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"Applis"</string> <string name="keyboard_shortcut_group_applications_assist" msgid="6772492350416591448">"Assistant"</string> <string name="keyboard_shortcut_group_applications_browser" msgid="2776211137869809251">"Navigateur"</string> <string name="keyboard_shortcut_group_applications_contacts" msgid="2807268086386201060">"Contacts"</string> @@ -896,7 +891,7 @@ <string name="accessibility_quick_settings_settings" msgid="7098489591715844713">"Ouvrir les paramètres."</string> <string name="accessibility_quick_settings_expand" msgid="2609275052412521467">"Ouvrir les réglages rapides."</string> <string name="accessibility_quick_settings_collapse" msgid="4674876336725041982">"Fermer les réglages rapides."</string> - <string name="accessibility_quick_settings_user" msgid="505821942882668619">"Connecté comme <xliff:g id="ID_1">%s</xliff:g>"</string> + <string name="accessibility_quick_settings_user" msgid="505821942882668619">"Personne connectée en tant que <xliff:g id="ID_1">%s</xliff:g>"</string> <string name="accessibility_quick_settings_choose_user_action" msgid="4554388498186576087">"choisir un utilisateur"</string> <string name="data_connection_no_internet" msgid="691058178914184544">"Aucune connexion Internet"</string> <string name="accessibility_quick_settings_open_settings" msgid="536838345505030893">"Ouvrir les paramètres <xliff:g id="ID_1">%s</xliff:g>."</string> @@ -916,27 +911,27 @@ <string name="lockscreen_unlock_left" msgid="1417801334370269374">"Le raccourci gauche déverrouille aussi :"</string> <string name="lockscreen_unlock_right" msgid="4658008735541075346">"Le raccourci droit déverrouille aussi :"</string> <string name="lockscreen_none" msgid="4710862479308909198">"Aucun"</string> - <string name="tuner_launch_app" msgid="3906265365971743305">"Lancer l\'application <xliff:g id="APP">%1$s</xliff:g>"</string> - <string name="tuner_other_apps" msgid="7767462881742291204">"Autres applications"</string> + <string name="tuner_launch_app" msgid="3906265365971743305">"Lancer l\'appli <xliff:g id="APP">%1$s</xliff:g>"</string> + <string name="tuner_other_apps" msgid="7767462881742291204">"Autres applis"</string> <string name="tuner_circle" msgid="5270591778160525693">"Cercle"</string> <string name="tuner_plus" msgid="4130366441154416484">"Plus"</string> <string name="tuner_minus" msgid="5258518368944598545">"Moins"</string> <string name="tuner_left" msgid="5758862558405684490">"Gauche"</string> <string name="tuner_right" msgid="8247571132790812149">"Droite"</string> <string name="tuner_menu" msgid="363690665924769420">"Menu"</string> - <string name="tuner_app" msgid="6949280415826686972">"Application <xliff:g id="APP">%1$s</xliff:g>"</string> + <string name="tuner_app" msgid="6949280415826686972">"Appli <xliff:g id="APP">%1$s</xliff:g>"</string> <string name="notification_channel_alerts" msgid="3385787053375150046">"Alertes"</string> <string name="notification_channel_battery" msgid="9219995638046695106">"Pile"</string> <string name="notification_channel_screenshot" msgid="7665814998932211997">"Saisies d\'écran"</string> - <string name="notification_channel_instant" msgid="7556135423486752680">"Applications instantanées"</string> + <string name="notification_channel_instant" msgid="7556135423486752680">"Applis instantanées"</string> <string name="notification_channel_setup" msgid="7660580986090760350">"Configuration"</string> <string name="notification_channel_storage" msgid="2720725707628094977">"Stockage"</string> <string name="notification_channel_hints" msgid="7703783206000346876">"Conseils"</string> <string name="notification_channel_accessibility" msgid="8956203986976245820">"Accessibilité"</string> - <string name="instant_apps" msgid="8337185853050247304">"Applications instantanées"</string> + <string name="instant_apps" msgid="8337185853050247304">"Applis instantanées"</string> <string name="instant_apps_title" msgid="8942706782103036910">"<xliff:g id="APP">%1$s</xliff:g> en cours d\'exécution"</string> - <string name="instant_apps_message" msgid="6112428971833011754">"Application ouverte sans avoir été installée."</string> - <string name="instant_apps_message_with_help" msgid="1816952263531203932">"Application ouverte sans avoir été installée. Touchez ici pour en savoir plus."</string> + <string name="instant_apps_message" msgid="6112428971833011754">"Appli ouverte sans avoir été installée."</string> + <string name="instant_apps_message_with_help" msgid="1816952263531203932">"Appli ouverte sans avoir été installée. Touchez ici pour en savoir plus."</string> <string name="app_info" msgid="5153758994129963243">"Détails de l\'appli"</string> <string name="go_to_web" msgid="636673528981366511">"Ouvrir le navigateur"</string> <string name="mobile_data" msgid="4564407557775397216">"Données cellulaires"</string> @@ -947,9 +942,9 @@ <string name="dnd_is_off" msgid="3185706903793094463">"Le mode Ne pas déranger est désactivé"</string> <string name="dnd_is_on" msgid="7009368176361546279">"Mode Ne pas déranger activé"</string> <string name="qs_dnd_prompt_auto_rule" msgid="3535469468310002616">"Le mode Ne pas déranger a été activé par une règle automatique (<xliff:g id="ID_1">%s</xliff:g>)."</string> - <string name="qs_dnd_prompt_app" msgid="4027984447935396820">"Le mode Ne pas déranger a été activé par une application (<xliff:g id="ID_1">%s</xliff:g>)."</string> - <string name="qs_dnd_prompt_auto_rule_app" msgid="1841469944118486580">"Le mode Ne pas déranger a été activé par une règle automatique ou une application."</string> - <string name="running_foreground_services_title" msgid="5137313173431186685">"Applications qui fonctionnent en arrière-plan"</string> + <string name="qs_dnd_prompt_app" msgid="4027984447935396820">"Le mode Ne pas déranger a été activé par une appli (<xliff:g id="ID_1">%s</xliff:g>)."</string> + <string name="qs_dnd_prompt_auto_rule_app" msgid="1841469944118486580">"Le mode Ne pas déranger a été activé par une règle automatique ou une appli."</string> + <string name="running_foreground_services_title" msgid="5137313173431186685">"Applis qui fonctionnent en arrière-plan"</string> <string name="running_foreground_services_msg" msgid="3009459259222695385">"Touchez pour afficher des détails sur l\'utilisation de la pile et des données"</string> <string name="mobile_data_disable_title" msgid="5366476131671617790">"Désactiver les données cellulaires?"</string> <string name="mobile_data_disable_message" msgid="8604966027899770415">"Vous n\'aurez pas accès aux données ni à Internet avec <xliff:g id="CARRIER">%s</xliff:g>. Vous ne pourrez accéder à Internet que par Wi-Fi."</string> @@ -958,18 +953,18 @@ <string name="auto_data_switch_disable_message" msgid="5885533647399535852">"Il n\'y aura pas de basculement automatique entre les données mobiles selon la disponibilité"</string> <string name="auto_data_switch_dialog_negative_button" msgid="2370876875999891444">"Non merci"</string> <string name="auto_data_switch_dialog_positive_button" msgid="8531782041263087564">"Oui, basculer"</string> - <string name="touch_filtered_warning" msgid="8119511393338714836">"Une application obscurcit une demande d\'autorisation, alors Paramètres ne peut pas vérifier votre réponse."</string> + <string name="touch_filtered_warning" msgid="8119511393338714836">"Une appli obscurcit une demande d\'autorisation, alors Paramètres ne peut pas vérifier votre réponse."</string> <string name="slice_permission_title" msgid="3262615140094151017">"Autoriser <xliff:g id="APP_0">%1$s</xliff:g> à afficher <xliff:g id="APP_2">%2$s</xliff:g> tranches?"</string> <string name="slice_permission_text_1" msgid="6675965177075443714">"- Il peut lire de l\'information de <xliff:g id="APP">%1$s</xliff:g>"</string> <string name="slice_permission_text_2" msgid="6758906940360746983">"- Il peut effectuer des actions dans <xliff:g id="APP">%1$s</xliff:g>"</string> - <string name="slice_permission_checkbox" msgid="4242888137592298523">"Autoriser <xliff:g id="APP">%1$s</xliff:g> à afficher des tranches de n\'importe quelle application"</string> + <string name="slice_permission_checkbox" msgid="4242888137592298523">"Autoriser <xliff:g id="APP">%1$s</xliff:g> à afficher des tranches de n\'importe quelle appli"</string> <string name="slice_permission_allow" msgid="6340449521277951123">"Autoriser"</string> <string name="slice_permission_deny" msgid="6870256451658176895">"Refuser"</string> <string name="auto_saver_title" msgid="6873691178754086596">"Toucher pour activer la fonction Économiseur de pile"</string> <string name="auto_saver_text" msgid="3214960308353838764">"Activer si la pile est susceptible de s\'épuiser totalement"</string> <string name="no_auto_saver_action" msgid="7467924389609773835">"Non merci"</string> <string name="ongoing_privacy_dialog_a11y_title" msgid="2205794093673327974">"En cours d\'utilisation"</string> - <string name="ongoing_privacy_chip_content_multiple_apps" msgid="8341216022442383954">"Des applications utilisent votre <xliff:g id="TYPES_LIST">%s</xliff:g>."</string> + <string name="ongoing_privacy_chip_content_multiple_apps" msgid="8341216022442383954">"Des applis utilisent votre <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">" et "</string> <string name="ongoing_privacy_dialog_using_op" msgid="426635338010011796">"En cours d\'utilisation par : <xliff:g id="APPLICATION_NAME">%1$s</xliff:g>"</string> @@ -985,7 +980,7 @@ <string name="privacy_type_media_projection" msgid="8136723828804251547">"enregistrement d\'écran"</string> <string name="music_controls_no_title" msgid="4166497066552290938">"Sans titre"</string> <string name="inattentive_sleep_warning_title" msgid="3891371591713990373">"Veille"</string> - <string name="font_scaling_dialog_title" msgid="6273107303850248375">"Taille de police"</string> + <string name="font_scaling_dialog_title" msgid="6273107303850248375">"Taille de la police"</string> <string name="font_scaling_smaller" msgid="1012032217622008232">"Rapetisser"</string> <string name="font_scaling_larger" msgid="5476242157436806760">"Agrandir"</string> <string name="magnification_window_title" msgid="4863914360847258333">"Fenêtre d\'agrandissement"</string> @@ -1042,7 +1037,7 @@ <string name="accessibility_floating_button_action_double_tap_to_toggle" msgid="7976492639670692037">"basculer"</string> <string name="accessibility_floating_button_action_edit" msgid="1688227814600463987">"Modifier"</string> <string name="quick_controls_title" msgid="6839108006171302273">"Commandes des appareils"</string> - <string name="controls_providers_title" msgid="6879775889857085056">"Sélectionnez l\'application pour laquelle ajouter des commandes"</string> + <string name="controls_providers_title" msgid="6879775889857085056">"Sélectionnez l\'appli pour laquelle ajouter des commandes"</string> <string name="controls_number_of_favorites" msgid="4481806788981836355">"{count,plural, =1{# commande ajoutée.}one{# commande ajoutée.}many{# de commandes ajoutées.}other{# commandes ajoutées.}}"</string> <string name="controls_removed" msgid="3731789252222856959">"Supprimé"</string> <string name="controls_panel_authorization_title" msgid="267429338785864842">"Ajouter <xliff:g id="APPNAME">%s</xliff:g>?"</string> @@ -1059,11 +1054,11 @@ <string name="controls_favorite_rearrange" msgid="5616952398043063519">"Faites glisser les commandes pour les réorganiser"</string> <string name="controls_favorite_removed" msgid="5276978408529217272">"Toutes les commandes ont été retirées"</string> <string name="controls_favorite_toast_no_changes" msgid="7094494210840877931">"Modifications non enregistrées"</string> - <string name="controls_favorite_see_other_apps" msgid="7709087332255283460">"Afficher autres applications"</string> + <string name="controls_favorite_see_other_apps" msgid="7709087332255283460">"Afficher autres applis"</string> <string name="controls_favorite_rearrange_button" msgid="2942788904364641185">"Réorganiser"</string> <string name="controls_favorite_add_controls" msgid="1221420435546694004">"Ajouter des commandes"</string> <string name="controls_favorite_back_to_editing" msgid="184125114090062713">"Retour à la modification"</string> - <string name="controls_favorite_load_error" msgid="5126216176144877419">"Impossible de charger les commandes. Vérifiez l\'application <xliff:g id="APP">%s</xliff:g> pour vous assurer que les paramètres de l\'application n\'ont pas changé."</string> + <string name="controls_favorite_load_error" msgid="5126216176144877419">"Impossible de charger les commandes. Vérifiez l\'appli <xliff:g id="APP">%s</xliff:g> pour vous assurer que les paramètres de l\'appli n\'ont pas changé."</string> <string name="controls_favorite_load_none" msgid="7687593026725357775">"Les commandes compatibles ne sont pas accessibles"</string> <string name="controls_favorite_other_zone_header" msgid="9089613266575525252">"Autre"</string> <string name="controls_dialog_title" msgid="2343565267424406202">"Ajouter aux commandes des appareils"</string> @@ -1072,9 +1067,9 @@ <string name="controls_dialog_message" msgid="342066938390663844">"Suggestion de <xliff:g id="APP">%s</xliff:g>"</string> <string name="controls_tile_locked" msgid="731547768182831938">"Appareil verrouillé"</string> <string name="controls_settings_show_controls_dialog_title" msgid="3357852503553809554">"Afficher et contrôler les appareils à partir de l\'écran de verrouillage?"</string> - <string name="controls_settings_show_controls_dialog_message" msgid="7666211700524587969">"Vous pouvez ajouter des commandes pour vos appareils externes à l\'écran de verrouillage.\n\nL\'application de votre appareil peut vous permettre de contrôler certains appareils sans déverrouiller votre téléphone ou votre tablette.\n\nVous pouvez apporter des modifications à tout moment dans les paramètres."</string> + <string name="controls_settings_show_controls_dialog_message" msgid="7666211700524587969">"Vous pouvez ajouter des commandes pour vos appareils externes à l\'écran de verrouillage.\n\nL\'appli de votre appareil peut vous permettre de contrôler certains appareils sans déverrouiller votre téléphone ou votre tablette.\n\nVous pouvez apporter des modifications à tout moment dans les paramètres."</string> <string name="controls_settings_trivial_controls_dialog_title" msgid="7593188157655036677">"Contrôler les appareils à partir de l\'écran de verrouillage?"</string> - <string name="controls_settings_trivial_controls_dialog_message" msgid="397178734990952575">"Vous pouvez contrôler certains appareils sans déverrouiller votre téléphone ou votre tablette. L\'application de votre appareil détermine quels appareils peuvent être contrôlés de cette manière."</string> + <string name="controls_settings_trivial_controls_dialog_message" msgid="397178734990952575">"Vous pouvez contrôler certains appareils sans déverrouiller votre téléphone ou votre tablette. L\'appli de votre appareil détermine quels appareils peuvent être contrôlés de cette manière."</string> <string name="controls_settings_dialog_neutral_button" msgid="4514446354793124140">"Non merci"</string> <string name="controls_settings_dialog_positive_button" msgid="436070672551674863">"Oui"</string> <string name="controls_pin_use_alphanumeric" msgid="8478371861023048414">"Le NIP contient des lettres ou des symboles"</string> @@ -1117,14 +1112,14 @@ <string name="controls_error_timeout" msgid="794197289772728958">"Délai expiré, vérifiez l\'appli"</string> <string name="controls_error_removed" msgid="6675638069846014366">"Introuvable"</string> <string name="controls_error_removed_title" msgid="1207794911208047818">"La commande n\'est pas accessible"</string> - <string name="controls_error_removed_message" msgid="2885911717034750542">"Impossible d\'accéder à <xliff:g id="DEVICE">%1$s</xliff:g>. Vérifiez l\'application <xliff:g id="APPLICATION">%2$s</xliff:g> pour vous assurer que la commande est toujours offerte et que les paramètres de l\'application n\'ont pas changé."</string> - <string name="controls_open_app" msgid="483650971094300141">"Ouvrir l\'application"</string> + <string name="controls_error_removed_message" msgid="2885911717034750542">"Impossible d\'accéder à <xliff:g id="DEVICE">%1$s</xliff:g>. Vérifiez l\'appli <xliff:g id="APPLICATION">%2$s</xliff:g> pour vous assurer que la commande est toujours offerte et que les paramètres de l\'appli n\'ont pas changé."</string> + <string name="controls_open_app" msgid="483650971094300141">"Ouvrir l\'appli"</string> <string name="controls_error_generic" msgid="352500456918362905">"Impossible de charger l\'état"</string> <string name="controls_error_failed" msgid="960228639198558525">"Erreur. Veuillez réessayer."</string> <string name="controls_menu_add" msgid="4447246119229920050">"Ajouter des commandes"</string> <string name="controls_menu_edit" msgid="890623986951347062">"Modifier des commandes"</string> - <string name="controls_menu_add_another_app" msgid="8661172304650786705">"Ajouter une application"</string> - <string name="controls_menu_remove" msgid="3006525275966023468">"Retirer l\'application"</string> + <string name="controls_menu_add_another_app" msgid="8661172304650786705">"Ajouter une appli"</string> + <string name="controls_menu_remove" msgid="3006525275966023468">"Retirer l\'appli"</string> <string name="media_output_dialog_add_output" msgid="5642703238877329518">"Ajouter des sorties"</string> <string name="media_output_dialog_group" msgid="5571251347877452212">"Groupe"</string> <string name="media_output_dialog_single_device" msgid="3102758980643351058">"Un appareil sélectionné"</string> @@ -1132,8 +1127,8 @@ <string name="media_output_dialog_disconnected" msgid="7090512852817111185">"(déconnecté)"</string> <string name="media_output_dialog_connect_failed" msgid="3080972621975339387">"Changement impossible. Touchez pour réessayer."</string> <string name="media_output_dialog_pairing_new" msgid="5098212763195577270">"Connecter un appareil"</string> - <string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Pour diffuser cette session, veuillez ouvrir l\'application."</string> - <string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Application inconnue"</string> + <string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Pour diffuser cette session, veuillez ouvrir l\'appli."</string> + <string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Appli inconnue"</string> <string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Arrêter la diffusion"</string> <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Appareils disponibles pour la sortie audio."</string> <string name="media_output_dialog_accessibility_seekbar" msgid="5332843993805568978">"Volume"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Touchez pour en savoir plus"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Aucune alarme définie"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"entrer verrouillage de l\'écran"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toucher le capteur d\'empreintes digitales. Il s\'agit du bouton le plus court sur le côté du téléphone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Capteur d\'empreintes digitales"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"authentifier"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"accéder à l\'appareil"</string> @@ -1220,13 +1216,13 @@ <string name="wifi_wont_autoconnect_for_now" msgid="5782282612749867762">"Connexion automatique au Wi-Fi impossible pour le moment"</string> <string name="see_all_networks" msgid="3773666844913168122">"Tout afficher"</string> <string name="to_switch_networks_disconnect_ethernet" msgid="6698111101156951955">"Pour changer de réseau, débranchez le câble Ethernet"</string> - <string name="wifi_scan_notify_message" msgid="3753839537448621794">"Pour améliorer l\'expérience de l\'appareil, les applications et les services peuvent quand même rechercher des réseaux Wi-Fi en tout temps, même lorsque le Wi-Fi est désactivé. Vous pouvez modifier vos préférences dans les paramètres de recherche de réseaux Wi-Fi. "<annotation id="link">"Modifier"</annotation></string> + <string name="wifi_scan_notify_message" msgid="3753839537448621794">"Pour améliorer l\'expérience de l\'appareil, les applis et les services peuvent quand même rechercher des réseaux Wi-Fi en tout temps, même lorsque le Wi-Fi est désactivé. Vous pouvez modifier vos préférences dans les paramètres de recherche de réseaux Wi-Fi. "<annotation id="link">"Modifier"</annotation></string> <string name="turn_off_airplane_mode" msgid="8425587763226548579">"Désactiver le mode Avion"</string> - <string name="qs_tile_request_dialog_text" msgid="3501359944139877694">"L\'application <xliff:g id="APPNAME">%1$s</xliff:g> veut ajouter la tuile suivante au menu Paramètres rapides"</string> + <string name="qs_tile_request_dialog_text" msgid="3501359944139877694">"L\'appli <xliff:g id="APPNAME">%1$s</xliff:g> veut ajouter la tuile suivante au menu Paramètres rapides"</string> <string name="qs_tile_request_dialog_add" msgid="4888460910694986304">"Ajouter la tuile"</string> <string name="qs_tile_request_dialog_not_add" msgid="4168716573114067296">"Ne pas ajouter de tuile"</string> <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Choisir l\'utilisateur"</string> - <string name="fgs_manager_footer_label" msgid="8276763570622288231">"{count,plural, =1{# application est active}one{# application est active}many{# d\'applications sont actives}other{# applications sont actives}}"</string> + <string name="fgs_manager_footer_label" msgid="8276763570622288231">"{count,plural, =1{# appli est active}one{# appli est active}many{# d\'applis sont actives}other{# applis sont actives}}"</string> <string name="fgs_dot_content_description" msgid="2865071539464777240">"Nouvelle information"</string> <string name="fgs_manager_dialog_title" msgid="5879184257257718677">"Applis actives"</string> <string name="fgs_manager_dialog_message" msgid="2670045017200730076">"Ces applis sont actives et s\'exécutent même lorsque vous ne les utilisez pas. Cela améliore leur fonctionnalité, mais peut également affecter l\'autonomie de la pile."</string> @@ -1239,7 +1235,7 @@ <string name="clipboard_edit_text_description" msgid="805254383912962103">"Modifier le texte copié"</string> <string name="clipboard_edit_image_description" msgid="8904857948976041306">"Modifier l\'image copiée"</string> <string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Envoyer à un appareil à proximité"</string> - <string name="clipboard_text_hidden" msgid="7926899867471812305">"Touchez pour afficher"</string> + <string name="clipboard_text_hidden" msgid="7926899867471812305">"Touchez ceci pour afficher"</string> <string name="clipboard_text_copied" msgid="5100836834278976679">"Texte copié"</string> <string name="clipboard_image_copied" msgid="3793365360174328722">"Image copiée"</string> <string name="clipboard_content_copied" msgid="144452398567828145">"Contenu copié"</string> @@ -1272,16 +1268,16 @@ <string name="log_access_confirmation_title" msgid="4843557604739943395">"Autoriser <xliff:g id="LOG_ACCESS_APP_NAME">%s</xliff:g> à accéder à l\'ensemble des journaux de l\'appareil?"</string> <string name="log_access_confirmation_allow" msgid="752147861593202968">"Autoriser un accès unique"</string> <string name="log_access_confirmation_deny" msgid="2389461495803585795">"Ne pas autoriser"</string> - <string name="log_access_confirmation_body" msgid="6883031912003112634">"Les journaux de l\'appareil enregistrent ce qui se passe sur celui-ci. Les applications peuvent utiliser ces journaux pour trouver et résoudre des problèmes.\n\nCertains journaux peuvent contenir des renseignements confidentiels. N\'autorisez donc que les applications auxquelles vous faites confiance puisque celles-ci pourront accéder à l\'ensemble des journaux de l\'appareil. \n\nMême si vous n\'autorisez pas cette application à accéder à l\'ensemble des journaux de l\'appareil, elle aura toujours accès à ses propres journaux. Le fabricant de votre appareil pourrait toujours être en mesure d\'accéder à certains journaux ou renseignements sur votre appareil."</string> + <string name="log_access_confirmation_body" msgid="6883031912003112634">"Les journaux de l\'appareil enregistrent ce qui se passe sur celui-ci. Les applis peuvent utiliser ces journaux pour trouver et résoudre des problèmes.\n\nCertains journaux peuvent contenir des renseignements confidentiels. N\'autorisez donc que les applis auxquelles vous faites confiance puisque celles-ci pourront accéder à l\'ensemble des journaux de l\'appareil. \n\nMême si vous n\'autorisez pas cette appli à accéder à l\'ensemble des journaux de l\'appareil, elle aura toujours accès à ses propres journaux. Le fabricant de votre appareil pourrait toujours être en mesure d\'accéder à certains journaux ou renseignements sur votre appareil."</string> <string name="log_access_confirmation_learn_more" msgid="3134565480986328004">"En savoir plus"</string> <string name="log_access_confirmation_learn_more_at" msgid="5635666259505215905">"En savoir plus : <xliff:g id="URL">%s</xliff:g>"</string> <string name="keyguard_affordance_enablement_dialog_action_template" msgid="8164857863036314664">"Ouvrir <xliff:g id="APPNAME">%1$s</xliff:g>"</string> - <string name="wallet_quick_affordance_unavailable_install_the_app" msgid="7298552910007208368">"Pour ajouter l\'application portefeuille sous forme de raccourci, assurez-vous que l\'application est installée"</string> - <string name="wallet_quick_affordance_unavailable_configure_the_app" msgid="4387433357429873258">"Pour ajouter l\'application Portefeuille sous forme de raccourci, assurez-vous qu\'au moins une carte a été ajoutée"</string> - <string name="home_quick_affordance_unavailable_install_the_app" msgid="6187820778998446168">"Pour ajouter l\'application Home sous forme de raccourci, assurez-vous que l\'application est installée"</string> + <string name="wallet_quick_affordance_unavailable_install_the_app" msgid="7298552910007208368">"Pour ajouter l\'appli portefeuille sous forme de raccourci, assurez-vous que l\'appli est installée"</string> + <string name="wallet_quick_affordance_unavailable_configure_the_app" msgid="4387433357429873258">"Pour ajouter l\'appli Portefeuille sous forme de raccourci, assurez-vous qu\'au moins une carte a été ajoutée"</string> + <string name="home_quick_affordance_unavailable_install_the_app" msgid="6187820778998446168">"Pour ajouter l\'appli Home sous forme de raccourci, assurez-vous que l\'appli est installée"</string> <string name="home_quick_affordance_unavailable_configure_the_app" msgid="604424593994493281">"• Au moins un appareil ou un panneau d\'appareils est accessible"</string> - <string name="notes_app_quick_affordance_unavailable_explanation" msgid="4796955161600178530">"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="notes_app_quick_affordance_unavailable_explanation" msgid="4796955161600178530">"Sélectionnez une appli 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\'appli"</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> @@ -1298,10 +1294,10 @@ <string name="stylus_battery_low_subtitle" msgid="3583843128908823273">"Connectez votre stylet à un chargeur"</string> <string name="stylus_battery_low" msgid="7134370101603167096">"Pile du stylet faible"</string> <string name="video_camera" msgid="7654002575156149298">"Caméra"</string> - <string name="call_from_work_profile_title" msgid="5418253516453177114">"Impossible d\'appeler à partir d\'une application personnelle"</string> - <string name="call_from_work_profile_text" msgid="2856337395968118274">"Votre organisation vous autorise à passer des appels uniquement à partir d\'applications professionnelles"</string> + <string name="call_from_work_profile_title" msgid="5418253516453177114">"Impossible d\'appeler à partir d\'une appli personnelle"</string> + <string name="call_from_work_profile_text" msgid="2856337395968118274">"Votre organisation vous autorise à passer des appels uniquement à partir d\'applis professionnelles"</string> <string name="call_from_work_profile_action" msgid="2937701298133010724">"Passer au profil professionnel"</string> - <string name="install_dialer_on_work_profile_action" msgid="2014659711597862506">"Installer une application de téléphone professionnelle"</string> + <string name="install_dialer_on_work_profile_action" msgid="2014659711597862506">"Installer une appli de téléphone professionnelle"</string> <string name="call_from_work_profile_close" msgid="5830072964434474143">"Annuler"</string> <string name="lock_screen_settings" msgid="6152703934761402399">"Personn. l\'écran de verrouillage"</string> <string name="keyguard_unlock_to_customize_ls" msgid="2068542308086253819">"Déverrouiller pour personnaliser l\'écran de verrouillage"</string> @@ -1311,8 +1307,8 @@ <string name="microphone_blocked_dream_overlay_content_description" msgid="5466897982130007033">"Microphone bloqué"</string> <string name="priority_mode_dream_overlay_content_description" msgid="3361628029609329182">"Ne pas déranger"</string> <string name="assistant_attention_content_description" msgid="4166330881435263596">"La présence d\'un utilisateur est détectée"</string> - <string name="set_default_notes_app_toast_content" msgid="2812374329662610753">"Définir l\'application de prise de notes par défaut dans les Paramètres"</string> - <string name="install_app" msgid="5066668100199613936">"Installer l\'application"</string> + <string name="set_default_notes_app_toast_content" msgid="2812374329662610753">"Définir l\'appli de prise de notes par défaut dans les Paramètres"</string> + <string name="install_app" msgid="5066668100199613936">"Installer l\'appli"</string> <string name="dismissible_keyguard_swipe" msgid="8377597870094949432">"Balayer vers le haut pour continuer"</string> <string name="connected_display_dialog_start_mirroring" msgid="6237895789920854982">"Dupliquer l\'écran sur un moniteur externe?"</string> <string name="connected_display_dialog_dual_display_stop_warning" msgid="4174707498892447947">"Votre écran intérieur sera dupliqué. Votre écran frontal sera désactivé."</string> @@ -1320,12 +1316,12 @@ <string name="dismiss_dialog" msgid="2195508495854675882">"Fermer"</string> <string name="connected_display_icon_desc" msgid="6373560639989971997">"Écran connecté"</string> <string name="privacy_dialog_title" msgid="7839968133469098311">"Microphone et appareil photo"</string> - <string name="privacy_dialog_summary" msgid="2458769652125995409">"Utilisation récente par les applications"</string> + <string name="privacy_dialog_summary" msgid="2458769652125995409">"Utilisation récente par les applis"</string> <string name="privacy_dialog_more_button" msgid="7610604080293562345">"Afficher l\'accès récent"</string> <string name="privacy_dialog_done_button" msgid="4504330708531434263">"OK"</string> <string name="privacy_dialog_expand_action" msgid="9129262348628331377">"Développer et afficher les options"</string> <string name="privacy_dialog_collapse_action" msgid="277419962019466347">"Réduire"</string> - <string name="privacy_dialog_close_app_button" msgid="8006250171305878606">"Fermer cette application"</string> + <string name="privacy_dialog_close_app_button" msgid="8006250171305878606">"Fermer cette appli"</string> <string name="privacy_dialog_close_app_message" msgid="1316408652526310985">"<xliff:g id="APP_NAME">%1$s</xliff:g> fermé"</string> <string name="privacy_dialog_manage_service" msgid="8320590856621823604">"Gérer le service"</string> <string name="privacy_dialog_manage_permissions" msgid="2543451567190470413">"Gérer l\'accès"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icône Réduire"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icône Développer"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Geste de retour"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Geste d\'accès à l\'écran d\'accueil"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Touche d\'action"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"OK"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Rétroéclairage du clavier"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Niveau %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Domotique"</string> diff --git a/packages/SystemUI/res/values-fr-rCA/tiles_states_strings.xml b/packages/SystemUI/res/values-fr-rCA/tiles_states_strings.xml index 52b763b4028d..f12634faecbb 100644 --- a/packages/SystemUI/res/values-fr-rCA/tiles_states_strings.xml +++ b/packages/SystemUI/res/values-fr-rCA/tiles_states_strings.xml @@ -38,7 +38,7 @@ </string-array> <string-array name="tile_states_wifi"> <item msgid="8054147400538405410">"Non disponible"</item> - <item msgid="4293012229142257455">"Désactivé"</item> + <item msgid="4293012229142257455">"Désactivée"</item> <item msgid="6221288736127914861">"Activé"</item> </string-array> <string-array name="tile_states_cell"> @@ -53,7 +53,7 @@ </string-array> <string-array name="tile_states_dnd"> <item msgid="467587075903158357">"Non disponible"</item> - <item msgid="5376619709702103243">"Désactivé"</item> + <item msgid="5376619709702103243">"Désactivée"</item> <item msgid="4875147066469902392">"Activé"</item> </string-array> <string-array name="tile_states_flashlight"> @@ -68,12 +68,12 @@ </string-array> <string-array name="tile_states_bt"> <item msgid="5330252067413512277">"Non disponible"</item> - <item msgid="5315121904534729843">"Désactivé"</item> + <item msgid="5315121904534729843">"Désactivée"</item> <item msgid="503679232285959074">"Activé"</item> </string-array> <string-array name="tile_states_airplane"> <item msgid="1985366811411407764">"Non disponible"</item> - <item msgid="4801037224991420996">"Désactivé"</item> + <item msgid="4801037224991420996">"Désactivée"</item> <item msgid="1982293347302546665">"Activé"</item> </string-array> <string-array name="tile_states_location"> @@ -83,7 +83,7 @@ </string-array> <string-array name="tile_states_hotspot"> <item msgid="3145597331197351214">"Non disponible"</item> - <item msgid="5715725170633593906">"Désactivé"</item> + <item msgid="5715725170633593906">"Désactivée"</item> <item msgid="2075645297847971154">"Activé"</item> </string-array> <string-array name="tile_states_color_correction"> @@ -103,7 +103,7 @@ </string-array> <string-array name="tile_states_dark"> <item msgid="2762596907080603047">"Non disponible"</item> - <item msgid="400477985171353">"Désactivé"</item> + <item msgid="400477985171353">"Désactivée"</item> <item msgid="630890598801118771">"Activé"</item> </string-array> <string-array name="tile_states_work"> @@ -143,7 +143,7 @@ </string-array> <string-array name="tile_states_cameratoggle"> <item msgid="6680671247180519913">"Non disponible"</item> - <item msgid="4765607635752003190">"Désactivé"</item> + <item msgid="4765607635752003190">"Désactivée"</item> <item msgid="1697460731949649844">"Activé"</item> </string-array> <string-array name="tile_states_mictoggle"> @@ -153,7 +153,7 @@ </string-array> <string-array name="tile_states_controls"> <item msgid="8199009425335668294">"Non disponibles"</item> - <item msgid="4544919905196727508">"Désactivées"</item> + <item msgid="4544919905196727508">"Désactivée"</item> <item msgid="3422023746567004609">"Activées"</item> </string-array> <string-array name="tile_states_wallet"> diff --git a/packages/SystemUI/res/values-fr/strings.xml b/packages/SystemUI/res/values-fr/strings.xml index 98bfc7284045..1ca87f1db408 100644 --- a/packages/SystemUI/res/values-fr/strings.xml +++ b/packages/SystemUI/res/values-fr/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Vous arrêterez d\'enregistrer <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Arrêter l\'enregistrement"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Arrêter le partage d\'écran ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Vous arrêterez de partager <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Arrêter le partage"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Vous arrêterez de caster <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Arrêter de caster"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Fermer"</string> <string name="issuerecord_title" msgid="286627115110121849">"Enregistreur de problèmes"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Enregistrement du problème"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notification d\'activité en cours concernant la session d\'enregistrement d\'un problème"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Problème d\'enregistrement"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Enregistrement du problème"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Partager"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"Problème enregistré"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Appuyez pour afficher"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Erreur lors de l\'enregistrement du problème"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Erreur lors du démarrage de l\'enregistrement du problème"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Affichage en plein écran"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Pour quitter, balayez l\'écran de haut en bas"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Retour"</string> <string name="accessibility_home" msgid="5430449841237966217">"Accueil"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Déverrouillé par visage. Appuyez pour continuer."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Visage reconnu. Appuyez pour continuer."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Visage reconnu. Appuyez sur l\'icône de déverrouillage pour continuer."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Déverrouillé par le visage. Appuyez pour continuer."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Authentifié"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Annuler l\'authentification"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Plus d\'options"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Enregistré"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"dissocier"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activer"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activer automatiquement demain"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Certaines fonctionnalités, telles que Quick Share et Localiser mon appareil, utilisent le Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Le Bluetooth sera activé demain matin"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Partager le contenu audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audio partagé"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de batterie"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Casque"</string> @@ -378,8 +373,8 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Enregistr. écran"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Démarrer"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Arrêter"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Enregistrer le problème"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"Début"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Enreg. le problème"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"Lancer"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Arrêter"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Rapport de bug"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Quel problème avez-vous rencontré avec votre appareil ?"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Ajouter un widget"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"OK"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Ajouter des widgets"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Accéder rapidement aux widgets de vos applis préférées sans déverrouiller votre tablette."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Accédez rapidement aux widgets de vos applis préférées sans déverrouiller votre tablette."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Autoriser n\'importe quel widget sur l\'écran de verrouillage ?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Ouvrir les paramètres"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Réactiver les applis pro ?"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Appuyer pour en savoir plus"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Pas d\'alarme définie"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"accéder au verrouillage de l\'écran"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Appuyez sur le lecteur d\'empreinte digitale. Il s\'agit du plus petit bouton sur le côté du téléphone."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Lecteur d\'empreinte digitale"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"s\'authentifier"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"accéder à l\'appareil"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icône Réduire"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icône Développer"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Geste Retour"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Geste Accueil"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Touche d\'action"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"OK"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Rétroéclairage du clavier"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Niveau %1$d sur %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Contrôle de la maison"</string> diff --git a/packages/SystemUI/res/values-gl/strings.xml b/packages/SystemUI/res/values-gl/strings.xml index 28cf92a5585a..f391b34713d4 100644 --- a/packages/SystemUI/res/values-gl/strings.xml +++ b/packages/SystemUI/res/values-gl/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Deixarás de gravar a aplicación <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Deter gravación"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Queres deixar de compartir a pantalla?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Deixarás de compartir a aplicación <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Deixar de compartir"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Deixarás de emitir a aplicación <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Deter emisión"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Pechar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Gravadora de problemas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Procesando gravación problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificación de actividade en curso para unha sesión de rexistro dun problema"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Produciuse un erro ao gardar a gravación do problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Produciuse un erro ao iniciar a gravación do problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Vendo pantalla completa"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para saír, pasa o dedo cara abaixo desde a parte superior da pantalla"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entendido"</string> <string name="accessibility_back" msgid="6530104400086152611">"Volver"</string> <string name="accessibility_home" msgid="5430449841237966217">"Inicio"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Usouse o desbloqueo facial. Preme para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Recoñeceuse a cara. Preme para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Recoñeceuse a cara. Preme a icona de desbloquear."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Usouse o desbloqueo facial. Toca para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar a autenticación"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Máis opcións"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Gardouse"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconectar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activar mañá automaticamente"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"As funcións como Quick Share e Localizar o meu dispositivo utilizan o Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"O Bluetooth activarase mañá á mañá"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Compartir audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Compartindo audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de batería"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Auriculares"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Gravar pantalla"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Iniciar"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Deter"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Rexistrar problema"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Gravar problema"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Iniciar"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Deter"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Informe de erros"</string> @@ -469,7 +464,7 @@ <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Pechar"</string> <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Engadir, quitar e reordenar widgets neste espazo"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Engadir máis widgets"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Pulsación longa para personalizar os widgets"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Mantén premido para personalizar os widgets"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Personalizar widgets"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Icona da aplicación de widget desactivado"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Icona da aplicación para un widget que se está instalando"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toca para obter máis información"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Sen alarmas postas"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"introducir o bloqueo de pantalla"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toca o sensor de impresión dixital. É o botón máis pequeno no lateral do teléfono"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de impresión dixital"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"poñer o dispositivo"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icona de contraer"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icona de despregar"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Xesto para volver"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Xesto para ir ao inicio"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de acción"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Feito"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Retroiluminación do teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivel %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controis domóticos"</string> diff --git a/packages/SystemUI/res/values-gu/strings.xml b/packages/SystemUI/res/values-gu/strings.xml index 2914bad91ef5..ba451f7c1f8f 100644 --- a/packages/SystemUI/res/values-gu/strings.xml +++ b/packages/SystemUI/res/values-gu/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"તમે <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ને રેકોર્ડ કરવાનું બંધ કરશો"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"રેકોર્ડિંગ રોકો"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"સ્ક્રીન શેર કરવાનું રોકીએ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"તમે <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ને શેર કરવાનું બંધ કરશો"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"શેર કરવાનું રોકો"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"તમે <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ને કાસ્ટ કરવાનું બંધ કરશો"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"કાસ્ટ કરવાનું રોકો"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"બંધ કરો"</string> <string name="issuerecord_title" msgid="286627115110121849">"સમસ્યા રેકોર્ડર"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"સમસ્યા રેકોર્ડિંગ ચાલુ છે"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"કોઈ સમસ્યા સંગ્રહના સત્ર માટે ચાલુ નોટિફિકેશન"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"સમસ્યા રેકોર્ડિંગને સાચવવામાં ભૂલ આવી"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"સમસ્યા રેકોર્ડિંગને શરૂ કરવામાં ભૂલ આવી"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"પૂર્ણ સ્ક્રીન જોઈ રહ્યાં છે"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"બહાર નીકળવા માટે, તમારી સ્ક્રીનની સૌથી ઉપરથી નીચેની તરફ સ્વાઇપ કરો"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"સમજાઈ ગયું"</string> <string name="accessibility_back" msgid="6530104400086152611">"પાછળ"</string> <string name="accessibility_home" msgid="5430449841237966217">"હોમ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ચહેરા દ્વારા અનલૉક કર્યું. આગળ વધવા માટે દબાવો."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ચહેરો ઓળખ્યો. આગળ વધવા માટે દબાવો."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ચહેરો ઓળખ્યો. આગળ વધવા \'અનલૉક કરો\' આઇકન દબાવો."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ચહેરા દ્વારા અનલૉક કર્યું. ચાલુ રાખવા માટે ટૅપ કરો."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"પ્રમાણિત"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"પ્રમાણીકરણ રદ કરો"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"વધુ વિકલ્પો"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"સાચવેલું"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ડિસ્કનેક્ટ કરો"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"સક્રિય કરો"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"આવતીકાલે ઑટોમૅટિક રીતે ચાલુ કરો"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ક્વિક શેર અને Find My Device જેવી સુવિધાઓ બ્લૂટૂથનો ઉપયોગ કરે છે"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"બ્લૂટૂથ આવતીકાલે સવારે ચાલુ થશે"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ઑડિયો શેર કરો"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ઑડિયો શેર કરી રહ્યાં છીએ"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> બૅટરી"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ઑડિયો"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"હૅડસેટ"</string> @@ -375,7 +370,7 @@ <string name="quick_settings_nfc_label" msgid="1054317416221168085">"NFC"</string> <string name="quick_settings_nfc_off" msgid="3465000058515424663">"NFC અક્ષમ કરેલ છે"</string> <string name="quick_settings_nfc_on" msgid="1004976611203202230">"NFC સક્ષમ કરેલ છે"</string> - <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"સ્ક્રીન રેકૉર્ડ"</string> + <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"સ્ક્રીન રેકોર્ડ"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"શરૂ કરો"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"રોકો"</string> <string name="qs_record_issue_label" msgid="8166290137285529059">"રેકોર્ડિંગમાં સમસ્યા"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"કૉમ્યુનલ ટ્યૂટૉરિઅલ શરૂ કરવા માટે ડાબે સ્વાઇપ કરો"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"કસ્ટમાઇઝ કરો"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"છોડી દો"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"આ સ્પેસમાં તમારા વિજેટ ઉમેરો, તેને કાઢી નાખો અને ફરી તેને ક્રમમાં ગોઠવો"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"આ સ્પેસમાં તમારા વિજેટ ઉમેરો, કાઢી નાખો અને ફરીથી ક્રમમાં ગોઠવો"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"વધુ વિજેટ ઉમેરો"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"વિજેટ કસ્ટમાઇઝ કરવા માટે થોડીવાર દબાવી રાખો"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"વિજેટ કસ્ટમાઇઝ કરો"</string> @@ -568,13 +563,13 @@ <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"CA પ્રમાણપત્રો"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"પૉલિસીઓ જુઓ"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"નિયંત્રણો જુઓ"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"આ ડિવાઇસ <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>ની માલિકીનું છે.\n\nતમારા IT વ્યવસ્થાપક સેટિંગ, કૉર્પોરેટ ઍક્સેસ, ઍપ, તમારા ડિવાઇસ સાથે સંકળાયેલો ડેટા અને તમારા ડિવાઇસની સ્થાન માહિતીનું નિરીક્ષણ તેમજ તેને મેનેજ કરી શકે છે.\n\nવધુ માહિતી માટે, તમારા IT વ્યવસ્થાપકનો સંપર્ક કરો."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"આ ડિવાઇસ <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>ની માલિકીનું છે.\n\nતમારા IT ઍડમિન સેટિંગ, કૉર્પોરેટ ઍક્સેસ, ઍપ, તમારા ડિવાઇસ સાથે સંકળાયેલો ડેટા અને તમારા ડિવાઇસની લોકેશનની માહિતીને મૉનિટર તેમજ તેને મેનેજ કરી શકે છે.\n\nવધુ માહિતી માટે, તમારા IT ઍડમિનનો સંપર્ક કરો."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> આ ડિવાઇસ સાથે સંકળાયેલો ડેટા ઍક્સેસ કરી શકશે અને ઍપ મેનેજ કરી શકશે તેમજ આ ડિવાઇસના સેટિંગ બદલી શકશે.\n\nજો તમને કોઈ પ્રશ્ન હોય, તો <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>નો સંપર્ક કરો."</string> <string name="monitoring_description_management" msgid="4308879039175729014">"આ ડિવાઇસ તમારી સંસ્થાની માલિકીનું છે.\n\nતમારા IT વ્યવસ્થાપક સેટિંગ, કૉર્પોરેટ ઍક્સેસ, ઍપ, તમારા ડિવાઇસ સાથે સંકળાયેલો ડેટા અને તમારા ડિવાઇસની સ્થાન માહિતીનું નિરીક્ષણ તેમજ તેને મેનેજ કરી શકે છે.\n\nવધુ માહિતી માટે, તમારા IT વ્યવસ્થાપકનો સંપર્ક કરો."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"તમારી સંસ્થાએ આ ઉપકરણ પર પ્રમાણપત્ર સત્તાધિકારી ઇન્સ્ટૉલ કર્યું છે. તમારા સુરક્ષિત નેટવર્ક ટ્રાફિકનું નિયમન થઈ શકે છે અથવા તેમાં ફેરફાર કરવામાં આવી શકે છે."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"તમારી સંસ્થાએ તમારી કાર્ય પ્રોફાઇલમાં પ્રમાણપત્ર સત્તાધિકારી ઇન્સ્ટૉલ કર્યું છે. તમારા સુરક્ષિત નેટવર્ક ટ્રાફિકનું નિયમન થઈ શકે છે અથવા તેમાં ફેરફાર કરવામાં આવી શકે છે."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"આ ઉપકરણ પર પ્રમાણપત્ર સત્તાધિકારી ઇન્સ્ટૉલ કરેલ છે. તમારા સુરક્ષિત નેટવર્ક ટ્રાફિકનું નિયમન થઈ શકે છે અથવા તેમાં ફેરફાર કરવામાં આવી શકે છે."</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"તમારા વ્યવસ્થાપકે નેટવર્ક લૉગિંગ ચાલુ કર્યું છે, જે તમારા ઉપકરણ પર નેટવર્ક ટ્રાફિકનું નિયમન કરે છે."</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> @@ -1189,7 +1184,7 @@ <string name="people_tile_description" msgid="8154966188085545556">"તાજેતરના મેસેજ, ચૂકી ગયેલા કૉલ અને સ્ટેટસ અપડેટ જુઓ"</string> <string name="people_tile_title" msgid="6589377493334871272">"વાતચીત"</string> <string name="paused_by_dnd" msgid="7856941866433556428">"\'ખલેલ પાડશો નહીં\'ની સુવિધા દ્વારા થોભાવેલું"</string> - <string name="new_notification_text_content_description" msgid="2915029960094389291">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા કોઈ સંદેશ મોકલવામાં આવ્યો: <xliff:g id="NOTIFICATION">%2$s</xliff:g>"</string> + <string name="new_notification_text_content_description" msgid="2915029960094389291">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા કોઈ મેસેજ મોકલવામાં આવ્યો: <xliff:g id="NOTIFICATION">%2$s</xliff:g>"</string> <string name="new_notification_image_content_description" msgid="6017506886810813123">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા કોઈ છબી મોકલવામાં આવી"</string> <string name="new_status_content_description" msgid="6046637888641308327">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા નવી સ્ટેટસ અપડેટ પોસ્ટ કરવામાં આવી: <xliff:g id="STATUS">%2$s</xliff:g>"</string> <string name="person_available" msgid="2318599327472755472">"ઉપલબ્ધ છે"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"વધુ માહિતી માટે ટૅપ કરો"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"કોઈ અલાર્મ સેટ નથી"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"સ્ક્રીન લૉક દાખલ કરો"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ફિંગરપ્રિન્ટ સેન્સરને ટચ કરો. ફોનની બાજુમાં આવેલું આ કોઈ નાનું બટન છે"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ફિંગરપ્રિન્ટ સેન્સર"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ખાતરી કરો"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ડિવાઇસ અનલૉક કરો"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"\'નાનું કરો\'નું આઇકન"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"\'મોટું કરો\'નું આઇકન"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"અથવા"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"પાછળ જવાનો સંકેત"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"હોમ સ્ક્રીન પર જવાનો સંકેત"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ઍક્શન કી"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"થઈ ગયું"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"કીબોર્ડની બૅકલાઇટ"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$dમાંથી %1$d લેવલ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ઘરેલું સાધનોના નિયંત્રણો"</string> diff --git a/packages/SystemUI/res/values-hi/strings.xml b/packages/SystemUI/res/values-hi/strings.xml index a6bc9b5a5b45..eaf8d5910e3d 100644 --- a/packages/SystemUI/res/values-hi/strings.xml +++ b/packages/SystemUI/res/values-hi/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"इससे <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का कॉन्टेंट रिकॉर्ड होना बंद हो जाएगा"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"रिकॉर्ड करना बंद करें"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"स्क्रीन शेयर करना बंद करना है?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"इससे <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का कॉन्टेंट शेयर होना बंद हो जाएगा"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"शेयर करना बंद करें"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> - <string name="issuerecord_title" msgid="286627115110121849">"समस्या का डेटा सेव करने वाला टूल"</string> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"इससे <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का कॉन्टेंट कास्ट होना बंद हो जाएगा"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"कास्ट करना बंद करें"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"बंद करें"</string> + <string name="issuerecord_title" msgid="286627115110121849">"समस्या रिकॉर्ड करने वाला टूल"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"समस्या का डेटा प्रोसेस हो रहा"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"समस्या का डेटा इकट्ठा करने के लिए बैकग्राउंड में जारी गतिविधि की सूचना"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"समस्या का डेटा इकट्ठा किया जा रहा है"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"समस्या रिकॉर्ड की जा रही है"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"शेयर करें"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"समस्या का डेटा सेव किया गया"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"देखने के लिए टैप करें"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"समस्या का डेटा सेव करते समय गड़बड़ी हुई"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"समस्या का डेटा सेव करने की प्रोसेस शुरू करते समय गड़बड़ी हुई"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"फ़ुल स्क्रीन मोड पर देखा जा रहा है"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"बंद करने के लिए, स्क्रीन के सबसे ऊपरी हिस्से से नीचे की ओर स्वाइप करें"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ठीक है"</string> <string name="accessibility_back" msgid="6530104400086152611">"वापस जाएं"</string> <string name="accessibility_home" msgid="5430449841237966217">"होम"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"चेहरे से अनलॉक किया गया. जारी रखने के लिए टैप करें."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"चेहरे की पहचान हो गई. जारी रखने के लिए टैप करें."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"चेहरे की पहचान हो गई. जारी रखने के लिए अनलॉक आइकॉन को टैप करें."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"चेहरे से अनलॉक किया गया. जारी रखने के लिए टैप करें."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"पुष्टि हो गई"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"पुष्टि करने की प्रोसेस को रद्द करें"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ज़्यादा विकल्प"</string> @@ -248,7 +246,7 @@ <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> - <string name="accessibility_battery_level_charging" msgid="8892191177774027364">"बैटरी चार्ज हो रही है, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> प्रतिशत."</string> + <string name="accessibility_battery_level_charging" msgid="8892191177774027364">"बैटरी चार्ज हो रही है, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>%%."</string> <string name="accessibility_battery_level_charging_paused" msgid="3560711496775146763">"बैटरी <xliff:g id="PERCENTAGE">%d</xliff:g> प्रतिशत चार्ज हुई. बैटरी खराब होने से बचाने के लिए, चार्जिंग रोक दी गई है."</string> <string name="accessibility_battery_level_charging_paused_with_estimate" msgid="2223541217743647858">"बैटरी <xliff:g id="PERCENTAGE">%1$d</xliff:g> प्रतिशत चार्ज हुई, जो कि <xliff:g id="TIME">%2$s</xliff:g> चल जाएगी. बैटरी खराब होने से बचाने के लिए, चार्जिंग रोक दी गई है."</string> <string name="accessibility_overflow_action" msgid="8555835828182509104">"पूरी सूचनाएं देखें"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"सेव किया गया"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"डिसकनेक्ट करें"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"चालू करें"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ब्लूटूथ कल अपने-आप चालू हो जाएगा"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"क्विक शेयर और Find My Device जैसी सुविधाएं, ब्लूटूथ का इस्तेमाल करती हैं"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ब्लूटूथ कल सुबह चालू होगा"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ऑडियो शेयर करें"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ऑडियो शेयर किया जा रहा है"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> बैटरी"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ऑडियो"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"हेडसेट"</string> @@ -318,9 +313,9 @@ <string name="quick_settings_location_label" msgid="2621868789013389163">"जगह की जानकारी"</string> <string name="quick_settings_screensaver_label" msgid="1495003469366524120">"स्क्रीन सेवर"</string> <string name="quick_settings_camera_label" msgid="5612076679385269339">"कैमरे का ऐक्सेस"</string> - <string name="quick_settings_mic_label" msgid="8392773746295266375">"माइक्रोफ़ोन का ऐक्सेस"</string> + <string name="quick_settings_mic_label" msgid="8392773746295266375">"माइक का ऐक्सेस"</string> <string name="quick_settings_camera_mic_available" msgid="1453719768420394314">"उपलब्ध है"</string> - <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"ब्लॉक किया गया है"</string> + <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"ब्लॉक है"</string> <string name="quick_settings_media_device_label" msgid="8034019242363789941">"मीडिया डिवाइस"</string> <string name="quick_settings_user_title" msgid="8673045967216204537">"उपयोगकर्ता"</string> <string name="quick_settings_wifi_label" msgid="2879507532983487244">"वाई-फ़ाई"</string> @@ -382,7 +377,7 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"शुरू करें"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"रोकें"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"गड़बड़ी की रिपोर्ट"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"आपके डिवाइस की कौनसी सुविधा पर असर पड़ा था?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"आपके डिवाइस की किस सुविधा में समस्या आ रही थी?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"समस्या का टाइप चुनें"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"स्क्रीन रिकॉर्डर"</string> <string name="performance" msgid="6552785217174378320">"परफ़ॉर्मेंस"</string> @@ -393,7 +388,7 @@ <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"ऐक्टिव"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"डिसकनेक्ट हो गया"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"कान की मशीनें"</string> - <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"नया डिवाइस जोड़ें"</string> + <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"कान की नई मशीन जोड़ें"</string> <string name="accessibility_hearing_device_pair_new_device" msgid="8440082580186130090">"नया डिवाइस जोड़ने के लिए क्लिक करें"</string> <string name="hearing_devices_presets_error" msgid="350363093458408536">"प्रीसेट अपडेट नहीं किया जा सका"</string> <string name="hearing_devices_preset_label" msgid="7878267405046232358">"प्रीसेट"</string> @@ -467,10 +462,10 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"कम्यूनिटी ट्यूटोरियल शुरू करने के लिए, बाईं ओर स्वाइप करें"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"पसंद के मुताबिक बनाएं"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"खारिज करें"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"इस स्पेस में विजेट जोड़ें, हटाएं, और उन्हें फिर से क्रम में लगाएं"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"इस स्पेस में विजेट जोड़ें, हटाएं, और उन्हें नए क्रम में लगाएं"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"ज़्यादा विजेट जोड़ें"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"विजेट पसंद के मुताबिक बनाने के लिए उसे दबाकर रखें"</string> - <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"विजेट अपनी पसंद के मुताबिक बनाएं"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"विजेट को मनमुताबिक बनाने के लिए उसे दबाकर रखें"</string> + <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"विजेट को अपनी पसंद के मुताबिक बनाएं"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"बंद किए गए विजेट के लिए ऐप्लिकेशन आइकॉन"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"इंस्टॉल हो रहे विजेट के लिए ऐप्लिकेशन आइकॉन"</string> <string name="edit_widget" msgid="9030848101135393954">"विजेट में बदलाव करें"</string> @@ -598,8 +593,8 @@ <string name="sound_settings" msgid="8874581353127418308">"आवाज़ और वाइब्रेशन"</string> <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"सेटिंग"</string> <string name="volume_panel_captioning_title" msgid="5984936949147684357">"लाइव कैप्शन"</string> - <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"आवाज़ को कम करके, सुरक्षित लेवल पर सेट कर दिया गया है"</string> - <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"हेडफ़ोन की आवाज़ सुझाए गए समय से देर तक ज़्यादा रही"</string> + <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"आवाज़ को कम करके, सुरक्षित लेवल पर सेट किया गया"</string> + <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"हेडफ़ोन की आवाज़ सुझाए गए समय के बाद भी ज़्यादा रही"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"इस हफ़्ते के लिए हेडफ़ोन की आवाज़, सुझाई गई सीमा से ज़्यादा हो गई है"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"सुनना जारी रखें"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"आवाज़ कम करें"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ज़्यादा जानकारी के लिए टैप करें"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"कोई अलार्म सेट नहीं है"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"स्क्रीन लॉक डालें"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"फ़िंगरप्रिंट सेंसर को छुएं. यह फ़ोन की साइड में मौजूद एक छोटा बटन होता है"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"फ़िंगरप्रिंट सेंसर"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"पुष्टि करें"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"डिवाइस की होम स्क्रीन पर जाएं"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"छोटा करने का आइकॉन"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"बड़ा करने का आइकॉन"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"या"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"पीछे जाने का जेस्चर"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"होम स्क्रीन पर जाने का जेस्चर"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ऐक्शन बटन"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"हो गया"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"कीबोर्ड की बैकलाइट"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d में से %1$d लेवल"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"होम कंट्रोल"</string> diff --git a/packages/SystemUI/res/values-hr/strings.xml b/packages/SystemUI/res/values-hr/strings.xml index ba82bdd3660d..79ee3bc7ef9f 100644 --- a/packages/SystemUI/res/values-hr/strings.xml +++ b/packages/SystemUI/res/values-hr/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Zaustavit ćete snimanje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Zaustavi snimanje"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Želite li zaustaviti dijeljenje zaslona?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Zaustavit ćete dijeljenje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Zaustavi dijeljenje"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Zaustavit ćete emitiranje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Zaustavi emitiranje"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zatvori"</string> <string name="issuerecord_title" msgid="286627115110121849">"Snimač poteškoća"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Obrada snimke poteškoće"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Obavijest o aktivnosti u pozadini za sesiju prikupljanja poteškoća"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Pogreška pri spremanju snimke poteškoće"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Pogreška pri pokretanju snimke poteškoće"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Gledanje preko cijelog zaslona"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Za izlaz povucite prstom od vrha zaslona prema dolje"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Shvaćam"</string> <string name="accessibility_back" msgid="6530104400086152611">"Natrag"</string> <string name="accessibility_home" msgid="5430449841237966217">"Početna"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Otključano pomoću lica. Pritisnite da biste nastavili."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Lice je prepoznato. Pritisnite da biste nastavili."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Lice je prepoznato. Pritisnite ikonu otključavanja da biste nastavili."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Otključano licem. Dodirnite za nastavak."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentifikacija izvršena"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Otkaži autentifikaciju"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Više opcija"</string> @@ -299,8 +297,7 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Spremljeno"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"prekini vezu"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiviraj"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatski uključi sutra"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Značajke kao što su brzo dijeljenje i Pronađi moj uređaj koriste Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth će se uključiti sutra ujutro"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Dijeli zvuk"</string> @@ -376,16 +373,16 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Snimanje zaslona"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Početak"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Zaustavi"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Zabilježi poteškoću"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Snimite poteškoću"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Pokreni"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Zaustavi"</string> - <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Izvješće o pogrešci"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Na koji dio doživljaja na uređaju to utjecalo?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Odaberite vrstu problema"</string> + <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Izvješće o programskim pogreškama"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Na koji je dio doživljaja na uređaju to utjecalo?"</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Odaberite vrstu poteškoće"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Snimanje zaslona"</string> <string name="performance" msgid="6552785217174378320">"Izvedba"</string> <string name="user_interface" msgid="3712869377953950887">"Korisničko sučelje"</string> - <string name="thermal" msgid="6758074791325414831">"Termalno"</string> + <string name="thermal" msgid="6758074791325414831">"Pregrijavanje"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Način rada jednom rukom"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Slušna pomagala"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktivno"</string> @@ -597,7 +594,7 @@ <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"Postavke"</string> <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Automatski titlovi"</string> <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"Glasnoća je stišana na sigurniju razinu"</string> - <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Glasnoća u slušalicama pojačana je dulje nego što se preporučuje"</string> + <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Zvuk u slušalicama bio je preglasan dulje nego što se preporučuje"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Glasnoća slušalica premašila je sigurno ograničenje za ovaj tjedan"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"Nastavi slušati"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"Stišaj"</string> @@ -1195,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Dodirnite za više informacija"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nema nijednog alarma"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"unesite zaključavanje zaslona"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dodirnite senzor otiska prsta. To je kraća tipka s bočne strane telefona"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Senzor otiska prsta"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentificirali"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"pristupili uređaju"</string> @@ -1345,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona za sažimanje"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona za proširivanje"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ili"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Pokret za povratak"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Pokret za otvaranje početnog zaslona"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tipka za radnju"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotovo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Pozadinsko osvjetljenje tipkovnice"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Razina %1$d od %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Upravljanje uređajima"</string> diff --git a/packages/SystemUI/res/values-hu/strings.xml b/packages/SystemUI/res/values-hu/strings.xml index bb228079e764..bcfa112a3d2d 100644 --- a/packages/SystemUI/res/values-hu/strings.xml +++ b/packages/SystemUI/res/values-hu/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Le fogja állítani a(z) <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> rögzítését"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Felvétel leállítása"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Leállítja a képernyőmegosztást?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Le fogja állítani a(z) <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> megosztását"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Megosztás leállítása"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Le fogja állítani a(z) <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> átküldését"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Átküldés leállítása"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Bezárás"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problémafelvevő"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Problémafelvétel feldolgozása…"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Folyamatban lévő értesítés egy problémagyűjtési munkamenethez"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Problémafelvétel folyamatban…"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Probléma rögzítése folyamatban…"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Megosztás"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"Problémafelvétel mentve"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Koppintson a megtekintéshez"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Hiba történt a problémafelvétel mentésekor"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Hiba történt a problémafelvétel elindításakor"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Megtekintése teljes képernyőn"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"A kilépéshez csúsztasson gyorsan lefelé a képernyő tetejéről."</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Értem"</string> <string name="accessibility_back" msgid="6530104400086152611">"Vissza"</string> <string name="accessibility_home" msgid="5430449841237966217">"Főoldal"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Zárolás arccal feloldva. Koppintson a folytatáshoz."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Arc felismerve. Koppintson a folytatáshoz."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Arc felismerve. A folytatáshoz koppintson a Feloldásra."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Zárolás arccal feloldva. Koppintson a folytatáshoz."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Hitelesítve"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Hitelesítés megszakítása"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"További lehetőségek"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Mentve"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"leválasztás"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiválás"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatikus bekapcsolás holnap"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Egyes funkciók (például a Quick Share és a Készülékkereső) Bluetootht használnak"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"A Bluetooth holnap reggel bekapcsol"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Hang megosztása"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Hang megosztása…"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Akkumulátor: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Hang"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -325,7 +320,7 @@ <string name="quick_settings_user_title" msgid="8673045967216204537">"Felhasználó"</string> <string name="quick_settings_wifi_label" msgid="2879507532983487244">"Wi-Fi"</string> <string name="quick_settings_internet_label" msgid="6603068555872455463">"Internet"</string> - <string name="quick_settings_networks_available" msgid="1875138606855420438">"Használhatók hálózatok"</string> + <string name="quick_settings_networks_available" msgid="1875138606855420438">"Elérhető hálózatok"</string> <string name="quick_settings_networks_unavailable" msgid="1167847013337940082">"Nem használhatók hálózatok"</string> <string name="quick_settings_wifi_detail_empty_text" msgid="483130889414601732">"Nincs elérhető Wi-Fi-hálózat"</string> <string name="quick_settings_wifi_secondary_label_transient" msgid="7501659015509357887">"Bekapcsolás…"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Koppintással további információkat érhet el."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nincs ébresztés"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"képernyőzár megadása"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Érintse meg az ujjlenyomat-érzékelőt. Ez a rövidebb gomb a telefon oldalán."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Ujjlenyomat-érzékelő"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"a hitelesítéshez"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"eszköz megadásához"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Összecsukás ikon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Kibontás ikon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"vagy"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Vissza kézmozdulat"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Kezdőképernyő kézmozdulat"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Műveletbillentyű"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Kész"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"A billentyűzet háttérvilágítása"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Fényerő: %2$d/%1$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Otthon vezérlése"</string> diff --git a/packages/SystemUI/res/values-hy/strings.xml b/packages/SystemUI/res/values-hy/strings.xml index 14db87a61dea..61f0e28a29f3 100644 --- a/packages/SystemUI/res/values-hy/strings.xml +++ b/packages/SystemUI/res/values-hy/strings.xml @@ -122,41 +122,38 @@ <string name="screenrecord_stop_label" msgid="72699670052087989">"Կանգնեցնել"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"Կիսվել"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"Էկրանի տեսագրությունը պահվեց"</string> - <string name="screenrecord_save_text" msgid="3008973099800840163">"Հպեք՝ դիտելու համար"</string> + <string name="screenrecord_save_text" msgid="3008973099800840163">"Հպեք դիտելու համար"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"Չհաջողվեց պահել էկրանի տեսագրությունը"</string> <string name="screenrecord_start_error" msgid="2200660692479682368">"Չհաջողվեց սկսել տեսագրումը"</string> <!-- no translation found for screenrecord_stop_dialog_title (2685522129492260887) --> <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Դուք կկանգնեցնեք <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> հավելվածից բովանդակության տեսագրումը"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Կանգնեցնել տեսագրումը"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Դադարեցնե՞լ էկրանի ցուցադրումը"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Դուք կկանգնեցնեք <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> հավելվածից բովանդակության փոխանցումը"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Դադարեցնել էկրանի ցուցադրումը"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Դուք կկանգնեցնեք <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> հավելվածից բովանդակության հեռարձակումը"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Կանգնեցնել հեռարձակումը"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Փակել"</string> <string name="issuerecord_title" msgid="286627115110121849">"Խնդիրների տեսագրիչ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Մշակում ենք տեսագրությունը"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Խնդրի տեսագրման մասին ընթացիկ ծանուցում"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Տեսագրում ենք խնդիրը"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Կիսվել"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"Տեսագրությունը պահվեց"</string> - <string name="issuerecord_save_text" msgid="1205985304551521495">"Հպեք՝ դիտելու համար"</string> + <string name="issuerecord_save_text" msgid="1205985304551521495">"Հպեք դիտելու համար"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Չհաջողվեց պահել տեսագրությունը"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Չհաջողվեց սկսել տեսագրումը"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Լիաէկրան դիտակերպ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Դուրս գալու համար էկրանի վերևից մատը սահեցրեք ներքև"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Եղավ"</string> <string name="accessibility_back" msgid="6530104400086152611">"Հետ"</string> <string name="accessibility_home" msgid="5430449841237966217">"Տուն"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Ապակողպվել է դեմքով։ Սեղմեք շարունակելու համար։"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Դեմքը ճանաչվեց։ Սեղմեք շարունակելու համար։"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Դեմքը ճանաչվեց։ Սեղմեք ապակողպման պատկերակը։"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Ապակողպվել է դեմքով։ Հպեք շարունակելու համար:"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Նույնականացված է"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Չեղարկել իսկորոշումը"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Լրացուցիչ ընտրանքներ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Պահված է"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"անջատել"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ակտիվացնել"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ավտոմատ միացնել վաղը"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetooth-ն օգտագործում են, օրինակ, Quick Share և «Գտնել իմ սարքը» գործառույթները"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth-ը կմիանա վաղն առավոտյան"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Փոխանցել աուդիոն"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Աուդիոյի փոխանցում"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Մարտկոցի լիցքը՝ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Աուդիո"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Ականջակալ"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Էկրանի տեսագրում"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Սկսել"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Կանգնեցնել"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Ձայնագրել"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Խնդրի տեսագրում"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Սկսել"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Կանգնեցնել"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Հաղորդում սխալի մասին"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Էկրանի տեսագրում"</string> <string name="performance" msgid="6552785217174378320">"Արդյունավետություն"</string> <string name="user_interface" msgid="3712869377953950887">"Օգտատիրական ինտերֆեյս"</string> - <string name="thermal" msgid="6758074791325414831">"Ջերմատեսիլ"</string> + <string name="thermal" msgid="6758074791325414831">"Տաքացում"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Մեկ ձեռքի ռեժիմ"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Լսողական սարքեր"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ակտիվ է"</string> @@ -465,9 +460,9 @@ <string name="keyguard_indication_charging_time_dock" msgid="3149328898931741271">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • Լիցքավորում • Մնացել է <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>"</string> <string name="accessibility_action_open_communal_hub" msgid="3081702792413787849">"Վիջեթներ կողպէկրանին"</string> <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Թերթեք ձախ՝ ուղեցույցը գործարկելու համար"</string> - <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Անհատականացնել"</string> + <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Կարգավորել"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Փակել"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Ավելացնել վիջեթներ, ինչպես նաև հեռացնել և վերադասավորել դրանք այս տարածքում"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Ավելացրեք, հեռացրեք և դասավորեք վիջեթները այս տարածքում"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Ավելացնել վիջեթներ"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Երկար սեղմեք՝ վիջեթները հարմարեցնելու համար"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Հարմարեցնել վիջեթները"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Ավելացնել վիջեթ"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Պատրաստ է"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Ավելացնել վիջեթներ"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Արագ բացեք հավելվածների ձեր սիրելի վիջեթները առանց ապակողպելու պլանշետը։"</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Հեշտությամբ օգտվեք ձեր սիրելի հավելվածներից, նույնիսկ երբ պլանշետը կողպված է։"</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Թույլատրե՞լ վիջեթների ցուցադրումը կողպէկրանին"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Բացել կարգավորումները"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Վերսկսե՞լ աշխ. հավելվածները"</string> @@ -635,7 +630,7 @@ <string name="stream_alarm_unavailable" msgid="4059817189292197839">"Հասանելի չէ․ «Չանհանգստացնել» ռեժիմը միացված է"</string> <string name="stream_media_unavailable" msgid="6823020894438959853">"Հասանելի չէ․ «Չանհանգստացնել» ռեժիմը միացված է"</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_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> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Հպեք՝ ավելին իմանալու համար"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Զարթուցիչ դրված չէ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ապակողպել էկրանը"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Հպեք մատնահետքի սկաներին։ Այն հեռախոսի կողքի ավելի կարճ կոճակն է"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Մատնահետքի սկաներ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"նույնականացնել"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"նշել սարքը"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ծալել պատկերակը"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ծավալել պատկերակը"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"կամ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"«Հետ» ժեստ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Հիմնական էկրան անցնելու ժեստ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Գործողության ստեղն"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Պատրաստ է"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Հետին լուսավորությամբ ստեղնաշար"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d՝ %2$d-ից"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Տան կառավարման տարրեր"</string> diff --git a/packages/SystemUI/res/values-in/strings.xml b/packages/SystemUI/res/values-in/strings.xml index f9f63701e2d2..c1b65750bf78 100644 --- a/packages/SystemUI/res/values-in/strings.xml +++ b/packages/SystemUI/res/values-in/strings.xml @@ -119,7 +119,7 @@ <string name="screenrecord_ongoing_screen_only" msgid="4459670242451527727">"Merekam layar"</string> <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"Merekam layar dan audio"</string> <string name="screenrecord_taps_label" msgid="1595690528298857649">"Tampilkan lokasi sentuhan pada layar"</string> - <string name="screenrecord_stop_label" msgid="72699670052087989">"Stop"</string> + <string name="screenrecord_stop_label" msgid="72699670052087989">"Berhenti"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"Bagikan"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"Rekaman layar disimpan"</string> <string name="screenrecord_save_text" msgid="3008973099800840163">"Ketuk untuk melihat"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Anda akan berhenti merekam <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Berhenti merekam"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Hentikan berbagi layar?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Anda akan berhenti membagikan <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Berhenti berbagi"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Anda akan berhenti mentransmisikan <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Hentikan transmisi"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Tutup"</string> <string name="issuerecord_title" msgid="286627115110121849">"Perekam Masalah"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Memproses rekaman masalah"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notifikasi berkelanjutan untuk sesi pengumpulan masalah"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Terjadi error saat menyimpan rekaman masalah"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Terjadi error saat memulai perekaman masalah"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Melihat layar penuh"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Untuk keluar, geser ke bawah dari bagian atas layar"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Oke"</string> <string name="accessibility_back" msgid="6530104400086152611">"Kembali"</string> <string name="accessibility_home" msgid="5430449841237966217">"Utama"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Kunci dibuka dengan wajah. Tekan untuk melanjutkan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Wajah dikenali. Tekan untuk melanjutkan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Wajah dikenali. Tekan ikon buka kunci untuk melanjutkan."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Kunci dibuka dengan wajah. Ketuk untuk melanjutkan."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Diautentikasi"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Batalkan Autentikasi"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Opsi Lainnya"</string> @@ -290,23 +288,20 @@ <string name="quick_settings_dnd_label" msgid="7728690179108024338">"Jangan Ganggu"</string> <string name="quick_settings_bluetooth_label" msgid="7018763367142041481">"Bluetooth"</string> <string name="quick_settings_bluetooth_detail_empty_text" msgid="5760239584390514322">"Perangkat yang disandingkan tak tersedia"</string> - <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"Ketuk untuk memulai atau menghentikan koneksi perangkat"</string> + <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"Ketuk untuk mulai atau berhenti menghubungkan perangkat"</string> <string name="pair_new_bluetooth_devices" msgid="4601767620843349645">"Sambungkan perangkat baru"</string> <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"Lihat semua"</string> <string name="turn_on_bluetooth" msgid="5681370462180289071">"Gunakan Bluetooth"</string> <string name="quick_settings_bluetooth_device_connected" msgid="7884777006729260996">"Terhubung"</string> <string name="quick_settings_bluetooth_device_audio_sharing" msgid="1496358082943301670">"Berbagi Audio"</string> <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Disimpan"</string> - <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"putuskan koneksi"</string> + <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"berhenti hubungkan"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktifkan"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Aktifkan otomatis besok"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Fitur seperti Quick Share dan Temukan Perangkat Saya menggunakan Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth akan dinyalakan besok pagi"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Bagikan audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Berbagi audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Baterai <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -378,16 +373,16 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Perekam layar"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Mulai"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Berhenti"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Mencatat Masalah"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Rekam Masalah"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Mulai"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Berhenti"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Laporan Bug"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Bagian pengalaman perangkat mana yang terpengaruh?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Apa jenis masalah yang Anda alami pada perangkat?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Pilih jenis masalah"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Perekaman layar"</string> <string name="performance" msgid="6552785217174378320">"Performa"</string> <string name="user_interface" msgid="3712869377953950887">"Antarmuka Pengguna"</string> - <string name="thermal" msgid="6758074791325414831">"Termal"</string> + <string name="thermal" msgid="6758074791325414831">"Panas"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Mode satu tangan"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Alat bantu dengar"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktif"</string> @@ -756,7 +751,7 @@ <string name="keyboard_key_enter" msgid="8633362970109751646">"Enter"</string> <string name="keyboard_key_backspace" msgid="4095278312039628074">"Backspace"</string> <string name="keyboard_key_media_play_pause" msgid="8389984232732277478">"Play/Pause"</string> - <string name="keyboard_key_media_stop" msgid="1509943745250377699">"Stop"</string> + <string name="keyboard_key_media_stop" msgid="1509943745250377699">"Berhenti"</string> <string name="keyboard_key_media_next" msgid="8502476691227914952">"Next"</string> <string name="keyboard_key_media_previous" msgid="5637875709190955351">"Previous"</string> <string name="keyboard_key_media_rewind" msgid="3450387734224327577">"Rewind"</string> @@ -921,8 +916,8 @@ <string name="tuner_circle" msgid="5270591778160525693">"Lingkaran"</string> <string name="tuner_plus" msgid="4130366441154416484">"Plus"</string> <string name="tuner_minus" msgid="5258518368944598545">"Minus"</string> - <string name="tuner_left" msgid="5758862558405684490">"Kiri"</string> - <string name="tuner_right" msgid="8247571132790812149">"Kanan"</string> + <string name="tuner_left" msgid="5758862558405684490">"Kiri (L)"</string> + <string name="tuner_right" msgid="8247571132790812149">"Kanan (R)"</string> <string name="tuner_menu" msgid="363690665924769420">"Menu"</string> <string name="tuner_app" msgid="6949280415826686972">"Aplikasi <xliff:g id="APP">%1$s</xliff:g>"</string> <string name="notification_channel_alerts" msgid="3385787053375150046">"Notifikasi"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Ketuk untuk informasi selengkapnya"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Alarm tidak disetel"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"masukkan kunci layar"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Sentuh sensor sidik jari. Sensor terletak di tombol yang lebih pendek di samping layar ponsel"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor sidik jari"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentikasi"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"masukkan perangkat"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikon ciutkan"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikon luaskan"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"atau"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gestur kembali"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gestur layar utama"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tombol tindakan"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Selesai"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Lampu latar keyboard"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Tingkat %1$d dari %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kontrol Rumah"</string> diff --git a/packages/SystemUI/res/values-is/strings.xml b/packages/SystemUI/res/values-is/strings.xml index 0266cb202af1..0226d1515c78 100644 --- a/packages/SystemUI/res/values-is/strings.xml +++ b/packages/SystemUI/res/values-is/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Þú munt hætta upptöku úr <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stöðva upptöku"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Hætta að deila skjá?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Þú munt hætta að deila úr <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Hætta að deila"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Þú munt hætta vörpun úr <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Hætta að varpa"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Loka"</string> <string name="issuerecord_title" msgid="286627115110121849">"Upptökutæki fyrir vandamál"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Vinnur úr upptöku af vandamáli"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Áframhaldandi tilkynning fyrir lotu vandamálasafns"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Villa kom upp við að vista upptöku af vandamáli"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Villa kom upp við að hefja upptöku af vandamáli"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Notar allan skjáinn"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Strjúktu niður frá efsta hluta skjásins til að hætta"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Ég skil"</string> <string name="accessibility_back" msgid="6530104400086152611">"Til baka"</string> <string name="accessibility_home" msgid="5430449841237966217">"Heim"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Opnað með andliti. Ýttu til að halda áfram."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Andlitið var greint. Ýttu til að halda áfram."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Andlitið var greint. Ýttu á opnunartáknið til að halda áfr."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Opnað með andliti. Ýttu til að halda áfram."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Auðkennt"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Hætta við auðkenningu"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Fleiri valkostir"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Vistað"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"aftengja"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"virkja"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Kveikja sjálfkrafa á morgun"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Eiginleikar eins og Flýtideiling og Finna tækið mitt nota Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Kveikt verður á Bluetooth í fyrramálið"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Deila hljóði"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Deilir hljóði"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> rafhlöðuhleðsla"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Hljóð"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Höfuðtól"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Bæta græju við"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Lokið"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Bæta við græjum"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Fáðu skjótan aðgang að eftirlætis forritagræjunum án þess að taka spjaldtölvuna úr lás."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Fáðu skjótan aðgang að eftirlætisforritagræjunum án þess að taka spjaldtölvuna úr lás."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Leyfa allar græjur á lásskjá?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Opna stillingar"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Ljúka hléi vinnuforrita?"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Ýttu til að fá frekari upplýsingar"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Enginn vekjari"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"sláðu inn skjálás"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Snertu fingrafaralesarann. Það er styttri hnappurinn á hlið símans"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingrafaralesari"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"auðkenna"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"opna tæki"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Minnka tákn"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Stækka tákn"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"eða"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Bending til að fara til baka"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Bending til að fara á upphafsskjá"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Aðgerðalykill"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Lokið"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Baklýsing lyklaborðs"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Stig %1$d af %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Heimastýringar"</string> diff --git a/packages/SystemUI/res/values-it/strings.xml b/packages/SystemUI/res/values-it/strings.xml index 9cc5124d1508..ce646e390154 100644 --- a/packages/SystemUI/res/values-it/strings.xml +++ b/packages/SystemUI/res/values-it/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 sistema"</string> + <string name="app_label" msgid="4811759950673118541">"UI di sistema"</string> <string name="battery_low_title" msgid="5319680173344341779">"Attivare il risparmio energetico?"</string> <string name="battery_low_description" msgid="3282977755476423966">"Batteria rimanente: <xliff:g id="PERCENTAGE">%s</xliff:g>. Il risparmio energetico attiva il tema scuro, limita l\'attività in background e ritarda le notifiche."</string> <string name="battery_low_intro" msgid="5148725009653088790">"Il risparmio energetico attiva il tema scuro, limita l\'attività in background e ritarda le notifiche."</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Interromperai la registrazione di <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Interrompi registrazione"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vuoi interrompere la condivisione dello schermo?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Interromperai la condivisione di <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Interrompi condivisione"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Interromperai la trasmissione di <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Interrompi trasmissione"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Chiudi"</string> <string name="issuerecord_title" msgid="286627115110121849">"Registratore dei problemi"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Elaborazione registrazione…"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notifica continua per una sessione di raccolta di problemi"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Impossibile salvare la registrazione del problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Impossibile avviare la registrazione del problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualizzazione a schermo intero"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Per uscire, scorri verso il basso dalla parte superiore dello schermo"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Indietro"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Sbloccato con il volto. Premi per continuare."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Volto riconosciuto. Premi per continuare."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Volto riconosciuto. Premi l\'icona Sblocca e continua."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Sbloccato con il volto. Tocca per continuare."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticazione eseguita"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Annulla autenticazione"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Altre opzioni"</string> @@ -217,15 +215,15 @@ <string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Riconfigura lo Sblocco con l\'Impronta"</string> <string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Sblocco con l\'Impronta"</string> <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Configura lo Sblocco con l\'Impronta"</string> - <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Per riconfigurare lo Sblocco con l\'Impronta, i modelli e le immagini dell\'impronta correnti verranno eliminati.\n\nDopo la cancellazione, dovrai riconfigurare la funzionalità per usare l\'impronta per sbloccare il telefono o verificare la tua identità."</string> - <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"Per riconfigurare lo Sblocco con l\'Impronta, il modello e le immagini dell\'impronta correnti verranno eliminati.\n\nDopo la cancellazione, dovrai riconfigurare la funzionalità per usare l\'impronta per sbloccare il telefono o verificare la tua identità."</string> + <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Per riconfigurare lo Sblocco con l\'Impronta, i modelli e le immagini dell\'impronta correnti verranno eliminati.\n\nDopo la cancellazione, dovrai riconfigurare la funzionalità per usare l\'impronta per sbloccare lo smartphone o verificare la tua identità."</string> + <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"Per riconfigurare lo Sblocco con l\'Impronta, il modello e le immagini dell\'impronta correnti verranno eliminati.\n\nDopo la cancellazione, dovrai riconfigurare la funzionalità per usare l\'impronta per sbloccare lo smartphone o verificare la tua identità."</string> <string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Impossibile configurare lo Sblocco con l\'Impronta. Vai alle Impostazioni e riprova."</string> <string name="face_re_enroll_notification_title" msgid="1850838867718410520">"Riconfigura lo Sblocco con il Volto"</string> <string name="face_re_enroll_notification_name" msgid="7384545252206120659">"Sblocco con il Volto"</string> <string name="face_re_enroll_dialog_title" msgid="6392173708176069994">"Configura lo Sblocco con il Volto"</string> - <string name="face_re_enroll_dialog_content" msgid="7353502359464038511">"Per riconfigurare lo Sblocco con il Volto, l\'attuale modello del volto verrà eliminato.\n\nDovrai riconfigurare questa funzionalità per usare il volto per sbloccare il telefono."</string> + <string name="face_re_enroll_dialog_content" msgid="7353502359464038511">"Per riconfigurare lo Sblocco con il Volto, l\'attuale modello del volto verrà eliminato.\n\nDovrai riconfigurare questa funzionalità per usare il volto per sbloccare lo smartphone."</string> <string name="face_reenroll_failure_dialog_content" msgid="7073947334397236935">"Impossibile configurare lo Sblocco con il Volto. Vai alle Impostazioni e riprova."</string> - <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"Tocca il sensore di impronte"</string> + <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"Tocca il sensore di impronte digitali"</string> <string name="fingerprint_dialog_authenticated_confirmation" msgid="1603899612957562862">"Premi l\'icona Sblocca per continuare"</string> <string name="fingerprint_dialog_use_fingerprint_instead" msgid="5542430577183894219">"Volto non riconosciuto. Usa l\'impronta."</string> <!-- no translation found for keyguard_face_failed_use_fp (7140293906176164263) --> @@ -247,7 +245,7 @@ <string name="accessibility_airplane_mode" msgid="1899529214045998505">"Modalità aereo."</string> <string name="accessibility_vpn_on" msgid="8037549696057288731">"VPN attiva."</string> <string name="accessibility_battery_level" msgid="5143715405241138822">"Batteria: <xliff:g id="NUMBER">%d</xliff:g> percento."</string> - <string name="accessibility_battery_level_with_estimate" msgid="6548654589315074529">"Batteria a <xliff:g id="PERCENTAGE">%1$d</xliff:g> per cento, <xliff:g id="TIME">%2$s</xliff:g>"</string> + <string name="accessibility_battery_level_with_estimate" msgid="6548654589315074529">"Batteria rimanente: <xliff:g id="PERCENTAGE">%1$d</xliff:g> per cento, <xliff:g id="TIME">%2$s</xliff:g>"</string> <string name="accessibility_battery_level_charging" msgid="8892191177774027364">"Batteria in carica, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>%%."</string> <string name="accessibility_battery_level_charging_paused" msgid="3560711496775146763">"Batteria a <xliff:g id="PERCENTAGE">%d</xliff:g> per cento; ricarica in pausa per proteggere la batteria."</string> <string name="accessibility_battery_level_charging_paused_with_estimate" msgid="2223541217743647858">"Batteria a <xliff:g id="PERCENTAGE">%1$d</xliff:g> per cento, <xliff:g id="TIME">%2$s</xliff:g>; ricarica in pausa per proteggere la batteria."</string> @@ -281,7 +279,7 @@ <string name="accessibility_sensors_off_active" msgid="2619725434618911551">"Opzione Sensori disattivati attiva"</string> <string name="accessibility_clear_all" msgid="970525598287244592">"Cancella tutte le notifiche."</string> <string name="notification_group_overflow_indicator" msgid="7605120293801012648">"+ <xliff:g id="NUMBER">%s</xliff:g>"</string> - <string name="notification_group_overflow_description" msgid="7176322877233433278">"{count,plural, =1{# altra notifica nel gruppo.}many{Altre # notifiche nel gruppo.}other{Altre # notifiche nel gruppo.}}"</string> + <string name="notification_group_overflow_description" msgid="7176322877233433278">"{count,plural, =1{# altra notifica nel gruppo.}many{Altre # di notifiche nel gruppo.}other{Altre # notifiche nel gruppo.}}"</string> <string name="accessibility_rotation_lock_on_landscape" msgid="936972553861524360">"Lo schermo è bloccato in orientamento orizzontale."</string> <string name="accessibility_rotation_lock_on_portrait" msgid="2356633398683813837">"Lo schermo è bloccato in orientamento verticale."</string> <string name="dessert_case" msgid="9104973640704357717">"Vetrina di dolci"</string> @@ -293,14 +291,13 @@ <string name="quick_settings_bluetooth_tile_subtitle" msgid="212752719010829550">"Tocca per connettere o disconnettere un dispositivo"</string> <string name="pair_new_bluetooth_devices" msgid="4601767620843349645">"Accoppia nuovo dispositivo"</string> <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"Visualizza tutti"</string> - <string name="turn_on_bluetooth" msgid="5681370462180289071">"Usa Bluetooth"</string> + <string name="turn_on_bluetooth" msgid="5681370462180289071">"Usa il Bluetooth"</string> <string name="quick_settings_bluetooth_device_connected" msgid="7884777006729260996">"Dispositivo connesso"</string> <string name="quick_settings_bluetooth_device_audio_sharing" msgid="1496358082943301670">"Condivisione audio"</string> <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Dispositivo salvato"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"disconnetti"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"attiva"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Attiva automaticamente domani"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funzionalità come Quick Share e Trova il mio dispositivo usano il Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Il Bluetooth verrà attivato domani mattina"</string> <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Condividi audio"</string> @@ -313,7 +310,7 @@ <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Attivazione…"</string> <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotazione automatica"</string> <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotazione automatica dello schermo"</string> - <string name="quick_settings_location_label" msgid="2621868789013389163">"Geolocalizzazione"</string> + <string name="quick_settings_location_label" msgid="2621868789013389163">"Posizione"</string> <string name="quick_settings_screensaver_label" msgid="1495003469366524120">"Salvaschermo"</string> <string name="quick_settings_camera_label" msgid="5612076679385269339">"Accesso alla fotocamera"</string> <string name="quick_settings_mic_label" msgid="8392773746295266375">"Accesso al microfono"</string> @@ -380,9 +377,9 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"Avvia"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Interrompi"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Segnalazione di bug"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Quali problemi ha l\'esperienza del dispositivo?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Quali problemi ha l\'esperienza con il dispositivo?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Seleziona il tipo di problema"</string> - <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Regis. dello schermo"</string> + <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Registrazione schermo"</string> <string name="performance" msgid="6552785217174378320">"Prestazioni"</string> <string name="user_interface" msgid="3712869377953950887">"Interfaccia utente"</string> <string name="thermal" msgid="6758074791325414831">"Termico"</string> @@ -424,8 +421,8 @@ <string name="sensor_privacy_dialog_open_settings" msgid="5635865896053011859">"Apri Impostazioni"</string> <string name="media_seamless_other_device" msgid="4654849800789196737">"Altro dispositivo"</string> <string name="quick_step_accessibility_toggle_overview" msgid="7908949976727578403">"Attiva/disattiva la panoramica"</string> - <string name="zen_priority_introduction" msgid="3159291973383796646">"Non verrai disturbato da suoni e vibrazioni, ad eccezione di sveglie, promemoria, eventi, chiamate da contatti da te specificati ed elementi che hai scelto di continuare a riprodurre, inclusi video, musica e giochi."</string> - <string name="zen_alarms_introduction" msgid="3987266042682300470">"Non verrai disturbato da suoni e vibrazioni, ad eccezione delle sveglie e degli elementi che hai scelto di continuare a riprodurre, inclusi video, musica e giochi."</string> + <string name="zen_priority_introduction" msgid="3159291973383796646">"Suoni e vibrazioni non ti disturberanno, ad eccezione di sveglie, promemoria, eventi, chiamate da contatti da te specificati ed elementi che hai scelto di continuare a riprodurre, inclusi video, musica e giochi."</string> + <string name="zen_alarms_introduction" msgid="3987266042682300470">"Non riceverai distrazioni da suoni e vibrazioni, ad eccezione delle sveglie. Potrai comunque sentire qualunque cosa decidi di riprodurre, inclusi video, musica e giochi."</string> <string name="zen_priority_customize_button" msgid="4119213187257195047">"Personalizza"</string> <string name="zen_silence_introduction_voice" msgid="853573681302712348">"Verranno bloccati TUTTI i suoni e le vibrazioni, anche di sveglie, musica, video e giochi. Potrai ancora telefonare."</string> <string name="zen_silence_introduction" msgid="6117517737057344014">"Verranno bloccati TUTTI i suoni e le vibrazioni, anche di sveglie, musica, video e giochi."</string> @@ -465,11 +462,11 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Scorri a sinistra per iniziare il tutorial della community"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Personalizza"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Chiudi"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Aggiungi, rimuovi e riordina i tuoi widget in questo spazio"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Aggiungi, rimuovi e riordina i widget in questo spazio"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Aggiungi altri widget"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Premi a lungo per personalizzare i widget"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Personalizza widget"</string> - <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Icona dell\'app per widget disattivati"</string> + <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Icona dell\'app per widget disattivato"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Icona dell\'app per un widget in fase di installazione"</string> <string name="edit_widget" msgid="9030848101135393954">"Modifica widget"</string> <string name="button_to_remove_widget" msgid="3948204829181214098">"Rimuovi"</string> @@ -498,7 +495,7 @@ <string name="guest_notification_session_active" msgid="5567273684713471450">"Sei in modalità Ospite"</string> <string name="user_add_user_message_guest_remove" msgid="5589286604543355007">\n\n"Se aggiungi un nuovo utente, la modalità Ospite viene disattivata e vengono eliminati tutti i dati e le app della sessione Ospite corrente."</string> <string name="user_limit_reached_title" msgid="2429229448830346057">"Limite di utenti raggiunto"</string> - <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Può essere creato un solo utente.}many{Puoi aggiungere fino a # utenti.}other{Puoi aggiungere fino a # utenti.}}"</string> + <string name="user_limit_reached_message" msgid="1070703858915935796">"{count,plural, =1{Può essere creato un solo utente.}many{Puoi aggiungere fino a # di utenti.}other{Puoi aggiungere fino a # utenti.}}"</string> <string name="user_remove_user_title" msgid="9124124694835811874">"Rimuovere l\'utente?"</string> <string name="user_remove_user_message" msgid="6702834122128031833">"Tutte le app e i dati di questo utente verranno eliminati."</string> <string name="user_remove_user_remove" msgid="8387386066949061256">"Rimuovi"</string> @@ -574,9 +571,9 @@ <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Sul dispositivo è installata un\'autorità di certificazione. Il tuo traffico di rete protetto potrebbe essere monitorato o modificato."</string> <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"L\'amministratore ha attivato i log di rete, che consentono di monitorare il traffico sul dispositivo."</string> <string name="monitoring_description_managed_profile_network_logging" msgid="6932303843097006037">"L\'amministratore ha attivato i log di rete, che consentono di monitorare il traffico nel profilo di lavoro, ma non nel profilo personale."</string> - <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Questo dispositivo è connesso a internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile al provider VPN."</string> - <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Questo dispositivo è connesso a internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile all\'amministratore IT."</string> - <string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Questo dispositivo si connette a Internet tramite <xliff:g id="VPN_APP_0">%1$s</xliff:g> e <xliff:g id="VPN_APP_1">%2$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile all\'amministratore IT."</string> + <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Questo dispositivo si connette a internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile al provider VPN."</string> + <string name="monitoring_description_managed_device_named_vpn" msgid="7693648349547785255">"Questo dispositivo si connette a internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile all\'amministratore IT."</string> + <string name="monitoring_description_two_named_vpns" msgid="6726394451199620634">"Questo dispositivo si connette a internet tramite <xliff:g id="VPN_APP_0">%1$s</xliff:g> e <xliff:g id="VPN_APP_1">%2$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile all\'amministratore IT."</string> <string name="monitoring_description_managed_profile_named_vpn" msgid="7254359257263069766">"Le tue app di lavoro si connettono a Internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete nelle app di lavoro, inclusi email e dati di navigazione, è visibile all\'amministratore IT e al provider VPN."</string> <string name="monitoring_description_personal_profile_named_vpn" msgid="5083909710727365452">"Le tue app personali si connettono a Internet tramite <xliff:g id="VPN_APP">%1$s</xliff:g>. La tua attività di rete, inclusi email e dati di navigazione, è visibile al provider VPN."</string> <string name="monitoring_description_vpn_settings_separator" msgid="8292589617720435430">" "</string> @@ -743,8 +740,8 @@ <string name="snooze_undo" msgid="2738844148845992103">"Annulla"</string> <string name="snooze_undo_content_description" msgid="2711656788917580801">"Annulla ripetizione notifica"</string> <string name="snoozed_for_time" msgid="7586689374860469469">"Posticipato di <xliff:g id="TIME_AMOUNT">%1$s</xliff:g>"</string> - <string name="snoozeHourOptions" msgid="2332819756222425558">"{count,plural, =1{# ora}=2{# ore}many{# ore}other{# ore}}"</string> - <string name="snoozeMinuteOptions" msgid="2222082405822030979">"{count,plural, =1{# minuto}many{# minuti}other{# minuti}}"</string> + <string name="snoozeHourOptions" msgid="2332819756222425558">"{count,plural, =1{# ora}=2{# ore}many{# di ore}other{# ore}}"</string> + <string name="snoozeMinuteOptions" msgid="2222082405822030979">"{count,plural, =1{# minuto}many{# di minuti}other{# minuti}}"</string> <string name="battery_detail_switch_title" msgid="6940976502957380405">"Risparmio energetico"</string> <string name="keyboard_key_button_template" msgid="8005673627272051429">"Pulsante <xliff:g id="NAME">%1$s</xliff:g>"</string> <string name="keyboard_key_home" msgid="3734400625170020657">"Home page"</string> @@ -1029,7 +1026,7 @@ <string name="accessibility_floating_button_hidden_notification_title" msgid="4115036997406994799">"Pulsante Accessibilità nascosto"</string> <string name="accessibility_floating_button_hidden_notification_text" msgid="1457021647040915658">"Tocca per mostrare il pulsante Accessibilità"</string> <string name="accessibility_floating_button_undo_message_label_text" msgid="9017658016426242640">"Scorciatoia <xliff:g id="FEATURE_NAME">%s</xliff:g> rimossa"</string> - <string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{# scorciatoia rimossa}many{# scorciatoie rimosse}other{# scorciatoie rimosse}}"</string> + <string name="accessibility_floating_button_undo_message_number_text" msgid="4909270290725226075">"{count,plural, =1{# scorciatoia rimossa}many{# di scorciatoie rimosse}other{# scorciatoie rimosse}}"</string> <string name="accessibility_floating_button_action_move_top_left" msgid="6253520703618545705">"Sposta in alto a sinistra"</string> <string name="accessibility_floating_button_action_move_top_right" msgid="6106225581993479711">"Sposta in alto a destra"</string> <string name="accessibility_floating_button_action_move_bottom_left" msgid="8063394111137429725">"Sposta in basso a sinistra"</string> @@ -1179,7 +1176,7 @@ <string name="video_status" msgid="4548544654316843225">"Visione in corso"</string> <string name="audio_status" msgid="4237055636967709208">"Ascolto in corso"</string> <string name="game_status" msgid="1340694320630973259">"Gioco in corso"</string> - <string name="empty_user_name" msgid="3389155775773578300">"Amici"</string> + <string name="empty_user_name" msgid="3389155775773578300">"Amico"</string> <string name="empty_status" msgid="5938893404951307749">"Chattiamo stasera."</string> <string name="status_before_loading" msgid="1500477307859631381">"I contenuti verranno mostrati a breve"</string> <string name="missed_call" msgid="4228016077700161689">"Chiamata persa"</string> @@ -1195,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tocca per ulteriori informazioni"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nessuna"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"inserisci blocco schermo"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Tocca il sensore di impronte digitali. È il tasto più corto sul lato dello smartphone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensore di impronte digitali"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"effettuare l\'autenticazione"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"accedere al dispositivo"</string> @@ -1224,7 +1222,7 @@ <string name="qs_tile_request_dialog_add" msgid="4888460910694986304">"Aggiungi riquadro"</string> <string name="qs_tile_request_dialog_not_add" msgid="4168716573114067296">"Non aggiungerlo"</string> <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Seleziona utente"</string> - <string name="fgs_manager_footer_label" msgid="8276763570622288231">"{count,plural, =1{# app è attiva}many{# di app sono attive}other{# app sono attive}}"</string> + <string name="fgs_manager_footer_label" msgid="8276763570622288231">"{count,plural, =1{C\'è # app attiva}many{Ci sono # di app attive}other{Ci sono # app attive}}"</string> <string name="fgs_dot_content_description" msgid="2865071539464777240">"Nuove informazioni"</string> <string name="fgs_manager_dialog_title" msgid="5879184257257718677">"App attive"</string> <string name="fgs_manager_dialog_message" msgid="2670045017200730076">"Queste app sono attive e in esecuzione, anche quando non le utilizzi. Questo migliora la loro funzionalità, ma influisce sulla durata della batteria."</string> @@ -1254,7 +1252,7 @@ <string name="dream_overlay_status_bar_camera_off" msgid="5273073778969890823">"La fotocamera è disattivata"</string> <string name="dream_overlay_status_bar_mic_off" msgid="8366534415013819396">"Il microfono è disattivato"</string> <string name="dream_overlay_status_bar_camera_mic_off" msgid="3199425257833773569">"Fotocamera e microfono non attivi"</string> - <string name="dream_overlay_status_bar_notification_indicator" msgid="8091389255691081711">"{count,plural, =1{# notifica}many{# notifiche}other{# notifiche}}"</string> + <string name="dream_overlay_status_bar_notification_indicator" msgid="8091389255691081711">"{count,plural, =1{# notifica}many{# di notifiche}other{# notifiche}}"</string> <string name="dream_overlay_weather_complication_desc" msgid="824503662089783824">"<xliff:g id="WEATHER_CONDITION">%1$s</xliff:g>, <xliff:g id="TEMPERATURE">%2$s</xliff:g>"</string> <string name="note_task_button_label" msgid="230135078402003532">"Aggiunta di note"</string> <string name="note_task_shortcut_long_label" msgid="7729325091147319409">"Aggiunta di note, <xliff:g id="NOTE_TAKING_APP">%1$s</xliff:g>"</string> @@ -1345,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icona Comprimi"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icona Espandi"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"oppure"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto Indietro"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto Home"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tasto azione"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Fine"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Retroilluminazione della tastiera"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Livello %1$d di %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controlli della casa"</string> diff --git a/packages/SystemUI/res/values-it/tiles_states_strings.xml b/packages/SystemUI/res/values-it/tiles_states_strings.xml index aa76983ee211..2fd4f6d49aef 100644 --- a/packages/SystemUI/res/values-it/tiles_states_strings.xml +++ b/packages/SystemUI/res/values-it/tiles_states_strings.xml @@ -188,7 +188,7 @@ </string-array> <string-array name="tile_states_hearing_devices"> <item msgid="1235334096484287173">"Non disponibile"</item> - <item msgid="3079622119444911877">"Off"</item> - <item msgid="3028994095749238254">"On"</item> + <item msgid="3079622119444911877">"Disattivi"</item> + <item msgid="3028994095749238254">"Attivi"</item> </string-array> </resources> diff --git a/packages/SystemUI/res/values-iw/strings.xml b/packages/SystemUI/res/values-iw/strings.xml index 734e7da5cd49..91042c347662 100644 --- a/packages/SystemUI/res/values-iw/strings.xml +++ b/packages/SystemUI/res/values-iw/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"מתבצע עיבוד של הקלטת מסך"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"התראה מתמשכת לסשן הקלטת מסך"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"להתחיל את ההקלטה?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"בזמן ההקלטה, תהיה ל-Android גישה לכל מה שמופיע במסך שלך או מנוגן במכשיר שלך. מומלץ להיזהר עם סיסמאות, פרטי תשלום, הודעות, תמונות, אודיו וסרטונים."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"בזמן ההקלטה, תהיה ל-Android גישה לכל מה שמופיע במסך שלך או מופעל במכשיר שלך. מומלץ להיזהר עם סיסמאות, פרטי תשלום, הודעות, תמונות, אודיו וסרטונים."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"בזמן הקלטה של אפליקציה, תהיה ל-Android גישה לכל מה שגלוי באפליקציה או מופעל מהאפליקציה. כדאי להיזהר עם סיסמאות, פרטי תשלום, הודעות, תמונות, אודיו וסרטונים."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"התחלת ההקלטה"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"הקלטת אודיו"</string> @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ההקלטה של <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> תיפסק"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"הפסקת ההקלטה"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"להפסיק את שיתוף המסך?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"השיתוף של <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> יופסק"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"הפסקת השיתוף"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> - <string name="issuerecord_title" msgid="286627115110121849">"בעיה במכשיר ההקלטה"</string> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"הפעלת ה-Cast של <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> תיפסק"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"הפסקת ה-Cast"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"סגירה"</string> + <string name="issuerecord_title" msgid="286627115110121849">"תיעוד של בעיה"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"מתבצע עיבוד של בעיית ההקלטה"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"התראה מתמשכת לסשן איסוף הבעיה"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"בעיית הקלטה"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"הבעיה בתהליך הקלטה"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"שיתוף"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"בעיית ההקלטה נשמרה"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"הקלטת הבעיה נשמרה"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"אפשר להקיש כדי להציג"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"שגיאה בשמירה של בעיית ההקלטה"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"שגיאה בהפעלה של בעיית ההקלטה"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"צפייה במסך מלא"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"כדי לצאת, מחליקים למטה מהחלק העליון של המסך"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"הבנתי"</string> <string name="accessibility_back" msgid="6530104400086152611">"חזרה"</string> <string name="accessibility_home" msgid="5430449841237966217">"בית"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"הנעילה בוטלה באמצעות זיהוי הפנים. יש ללחוץ כדי להמשיך."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"הפנים זוהו. יש ללחוץ כדי להמשיך."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"הפנים זוהו. להמשך יש ללחוץ על סמל ביטול הנעילה."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"הנעילה בוטלה באמצעות זיהוי הפנים. צריך להקיש כדי להמשיך."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"מאומת"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ביטול האימות"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"אפשרויות נוספות"</string> @@ -215,17 +213,17 @@ <string name="biometric_re_enroll_dialog_cancel" msgid="93760939407091417">"לא עכשיו"</string> <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"הפעולה הזו נדרשת כדי לשפר את האבטחה והביצועים"</string> <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_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_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> - <string name="face_re_enroll_notification_name" msgid="7384545252206120659">"פתיחה ע\"י זיהוי הפנים"</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_reenroll_failure_dialog_content" msgid="7073947334397236935">"לא ניתן להגדיר פתיחה ע\"י זיהוי הפנים. צריך לעבור להגדרות כדי לנסות שוב."</string> - <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"יש לגעת בחיישן טביעות האצבע"</string> + <string name="fingerprint_dialog_touch_sensor" msgid="2817887108047658975">"צריך לגעת בחיישן טביעות האצבע"</string> <string name="fingerprint_dialog_authenticated_confirmation" msgid="1603899612957562862">"להמשך יש ללחוץ על סמל ביטול הנעילה"</string> <string name="fingerprint_dialog_use_fingerprint_instead" msgid="5542430577183894219">"הפנים לא זוהו. צריך להשתמש בטביעת אצבע במקום."</string> <!-- no translation found for keyguard_face_failed_use_fp (7140293906176164263) --> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"נשמר"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ניתוק"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"הפעלה"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"הפעלה אוטומטית מחר"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"תכונות כמו \'שיתוף מהיר\' ו\'איפה המכשיר שלי\' משתמשות ב-Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"חיבור ה-Bluetooth יופעל מחר בבוקר"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"שיתוף האודיו"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"מתבצע שיתוף של האודיו"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> סוללה"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"אודיו"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"אוזניות"</string> @@ -378,8 +373,8 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"הקלטת המסך"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"התחלה"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"עצירה"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"תיעוד הבעיה"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"התחלה"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"תיעוד בעיה"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"קדימה"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"עצירה"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"דיווח על באג"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"איזה חלק בחוויית השימוש שלך במכשיר הושפע?"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"הוספת ווידג\'ט"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"סיום"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"הוספת ווידג\'טים"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"קבלת גישה מהירה לווידג\'טים של האפליקציות המועדפות עליך בלי לבטל את נעילת הטאבלט."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"קבלת גישה מהירה לווידג\'טים של אפליקציות בלי לבטל את נעילת הטאבלט."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"לאפשר להציג כל ווידג\'ט במסך הנעילה?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"לפתיחת ההגדרות"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"להפעיל את האפליקציות לעבודה?"</string> @@ -566,15 +561,15 @@ <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"רישום התנועה ברשת"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"אישורי CA"</string> - <string name="monitoring_button_view_policies" msgid="3869724835853502410">"הצגת מדיניות"</string> + <string name="monitoring_button_view_policies" msgid="3869724835853502410">"צפייה במדיניות"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"לצפייה באמצעי בקרת ההורים"</string> <string name="monitoring_description_named_management" msgid="505833016545056036">"המכשיר הזה שייך לארגון <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nמנהל ה-IT יכול לנטר ולנהל הגדרות, גישה ארגונית, אפליקציות, נתונים המשויכים למכשיר ומידע על מיקום המכשיר.\n\nלמידע נוסף, יש לפנות למנהל ה-IT."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"ל-<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> תהיה אפשרות לגשת לנתונים המשויכים למכשיר הזה, לנהל אפליקציות ולשנות את הגדרות המכשיר.\n\nאם יש לך שאלות, ניתן ליצור קשר עם <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"המכשיר הזה שייך לארגון שלך.\n\nמנהל ה-IT יכול לנטר ולנהל הגדרות, גישה ארגונית, אפליקציות, נתונים המשויכים למכשיר ומידע על מיקום המכשיר.\n\nלמידע נוסף, יש לפנות למנהל ה-IT."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"המכשיר הזה שייך לארגון שלך.\n\nהאדמין ב-IT יכול לנטר ולנהל הגדרות, הרשאות גישה לארגון, אפליקציות, נתונים המשויכים למכשיר ומידע על מיקום המכשיר.\n\nלמידע נוסף, אפשר לפנות לאדמין ב-IT."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"הארגון שלך התקין רשות אישורים במכשיר. ניתן לעקוב אחר התנועה ברשת המאובטחת או לשנות אותה."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"הארגון שלך התקין רשות אישורים בפרופיל העבודה. ניתן לעקוב אחר התנועה ברשת המאובטחת או לשנות אותה."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"במכשיר זה מותקנת רשות אישורים. ניתן לעקוב אחר התנועה ברשת המאובטחת או לשנות אותה."</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"מנהל המערכת הפעיל את התכונה \'רישום התנועה ברשת\', שמנטרת את תנועת הנתונים במכשיר."</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> @@ -951,8 +946,8 @@ <string name="qs_dnd_prompt_auto_rule_app" msgid="1841469944118486580">"מצב \'נא לא להפריע\' הופעל על ידי אפליקציה או על ידי כלל אוטומטי."</string> <string name="running_foreground_services_title" msgid="5137313173431186685">"אפליקציות שפועלות ברקע"</string> <string name="running_foreground_services_msg" msgid="3009459259222695385">"אפשר להקיש לקבלת פרטים על צריכה של נתונים וסוללה"</string> - <string name="mobile_data_disable_title" msgid="5366476131671617790">"לכבות את חבילת הגלישה?"</string> - <string name="mobile_data_disable_message" msgid="8604966027899770415">"לא תהיה לך גישה לנתונים או לאינטרנט באמצעות <xliff:g id="CARRIER">%s</xliff:g>. אינטרנט יהיה זמין רק באמצעות Wi-Fi."</string> + <string name="mobile_data_disable_title" msgid="5366476131671617790">"לכבות את השימוש בחבילת הגלישה?"</string> + <string name="mobile_data_disable_message" msgid="8604966027899770415">"לא תהיה לך גישה לנתונים או לאינטרנט דרך <xliff:g id="CARRIER">%s</xliff:g>. אפשר יהיה לגשת לאינטרנט רק דרך Wi-Fi."</string> <string name="mobile_data_disable_message_default_carrier" msgid="6496033312431658238">"הספק שלך"</string> <string name="auto_data_switch_disable_title" msgid="5146527155665190652">"לחזור אל <xliff:g id="CARRIER">%s</xliff:g>?"</string> <string name="auto_data_switch_disable_message" msgid="5885533647399535852">"לא תתבצע החלפה אוטומטית של חבילת הגלישה על סמך זמינות"</string> @@ -963,7 +958,7 @@ <string name="slice_permission_text_1" msgid="6675965177075443714">"- תהיה לה אפשרות לקרוא מידע מאפליקציית <xliff:g id="APP">%1$s</xliff:g>"</string> <string name="slice_permission_text_2" msgid="6758906940360746983">"- תהיה לה יכולת לנקוט פעולה בתוך <xliff:g id="APP">%1$s</xliff:g>"</string> <string name="slice_permission_checkbox" msgid="4242888137592298523">"יש לאשר לאפליקציית <xliff:g id="APP">%1$s</xliff:g> להראות חלקים מכל אפליציה שהיא"</string> - <string name="slice_permission_allow" msgid="6340449521277951123">"אני רוצה לאשר"</string> + <string name="slice_permission_allow" msgid="6340449521277951123">"אישור"</string> <string name="slice_permission_deny" msgid="6870256451658176895">"אני לא מרשה"</string> <string name="auto_saver_title" msgid="6873691178754086596">"יש להקיש כדי לתזמן את מצב החיסכון בסוללה"</string> <string name="auto_saver_text" msgid="3214960308353838764">"מומלץ להפעיל את התכונה כשיש סבירות גבוהה שהסוללה תתרוקן"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"יש להקיש כדי להציג מידע נוסף"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"לא הוגדרה"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"הזנת קוד נעילת המסך"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"צריך לגעת בחיישן טביעות האצבע. זה הלחצן הקצר יותר בצד של הטלפון"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"חיישן טביעות אצבע"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"אימות"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"הזנת מכשיר"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"סמל הכיווץ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"סמל ההרחבה"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"או"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"תנועת חזרה"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"תנועת חזרה למסך הבית"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"מקש הפעולה"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"סיום"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"התאורה האחורית במקלדת"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"רמה %1$d מתוך %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"שליטה במכשירים"</string> diff --git a/packages/SystemUI/res/values-ja/strings.xml b/packages/SystemUI/res/values-ja/strings.xml index 6e629723771c..a51e8b1efe0a 100644 --- a/packages/SystemUI/res/values-ja/strings.xml +++ b/packages/SystemUI/res/values-ja/strings.xml @@ -44,8 +44,8 @@ <string name="usb_device_confirm_prompt" msgid="4091711472439910809">"<xliff:g id="APPLICATION">%1$s</xliff:g> を起動して <xliff:g id="USB_DEVICE">%2$s</xliff:g> を処理しますか?"</string> <string name="usb_device_confirm_prompt_warn" msgid="990208659736311769">"<xliff:g id="APPLICATION">%1$s</xliff:g> を開いて <xliff:g id="USB_DEVICE">%2$s</xliff:g>を利用しますか?\nこのアプリに録音権限は付与されていませんが、この USB デバイスから音声を収集できるようになります。"</string> <string name="usb_accessory_confirm_prompt" msgid="5728408382798643421">"<xliff:g id="APPLICATION">%1$s</xliff:g> を起動して <xliff:g id="USB_ACCESSORY">%2$s</xliff:g> を処理しますか?"</string> - <string name="usb_accessory_uri_prompt" msgid="6756649383432542382">"このUSBアクセサリを扱うアプリはインストールされていません。詳細: <xliff:g id="URL">%1$s</xliff:g>"</string> - <string name="title_usb_accessory" msgid="1236358027511638648">"USBアクセサリ"</string> + <string name="usb_accessory_uri_prompt" msgid="6756649383432542382">"このUSBアクセサリーを扱うアプリはインストールされていません。詳細: <xliff:g id="URL">%1$s</xliff:g>"</string> + <string name="title_usb_accessory" msgid="1236358027511638648">"USBアクセサリー"</string> <string name="label_view" msgid="6815442985276363364">"表示"</string> <string name="always_use_device" msgid="210535878779644679">"<xliff:g id="USB_DEVICE">%2$s</xliff:g> を接続している場合は常に <xliff:g id="APPLICATION">%1$s</xliff:g> を起動する"</string> <string name="always_use_accessory" msgid="1977225429341838444">"<xliff:g id="USB_ACCESSORY">%2$s</xliff:g> を接続している場合は常に <xliff:g id="APPLICATION">%1$s</xliff:g> を起動する"</string> @@ -67,8 +67,8 @@ <string name="wifi_debugging_secondary_user_title" msgid="2493201475880517725">"ワイヤレス デバッグは許可されていません"</string> <string name="wifi_debugging_secondary_user_message" msgid="9085779370142222881">"このデバイスに現在ログインしているユーザーはワイヤレス デバッグを ON にできません。この機能を使用するには、管理者ユーザーに切り替えてください。"</string> <string name="usb_contaminant_title" msgid="894052515034594113">"USB ポート無効"</string> - <string name="usb_contaminant_message" msgid="7730476585174719805">"液体やゴミからデバイスを保護するため、USB ポートは無効になっています。アクセサリの検出は行われません。\n\nUSB ポートを再び安全に使用できるようになりましたらお知らせします。"</string> - <string name="usb_port_enabled" msgid="531823867664717018">"USB ポートが有効になり、充電器やアクセサリを検出できるようになりました"</string> + <string name="usb_contaminant_message" msgid="7730476585174719805">"液体やゴミからデバイスを保護するため、USB ポートは無効になっています。アクセサリーの検出は行われません。\n\nUSB ポートを再び安全に使用できるようになりましたらお知らせします。"</string> + <string name="usb_port_enabled" msgid="531823867664717018">"USB ポートが有効になり、充電器やアクセサリーを検出できるようになりました"</string> <string name="usb_disable_contaminant_detection" msgid="3827082183595978641">"USB を有効にする"</string> <string name="learn_more" msgid="4690632085667273811">"詳細"</string> <string name="global_action_screenshot" msgid="2760267567509131654">"スクリーンショット"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> の記録を停止します"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"録画を停止"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"画面の共有を停止しますか?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> の共有を停止します"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"共有を停止"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> のキャストを停止します"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"キャストを停止"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"閉じる"</string> <string name="issuerecord_title" msgid="286627115110121849">"問題記録ツール"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"問題の記録を処理しています"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"問題の収集セッションに関する進行中の通知"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"問題の記録の保存中にエラーが発生しました"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"問題の記録の開始中にエラーが発生しました"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"全画面表示"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"終了するには画面の上部から下にスワイプします"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"戻る"</string> <string name="accessibility_home" msgid="5430449841237966217">"ホーム"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"顔でロック解除しました。押して続行してください。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"顔を認識しました。押して続行してください。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"顔を認識しました。ロック解除アイコンを押して続行します。"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"顔認証でロック解除しました。タップして続行します。"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"認証済み"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"認証をキャンセルします"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"その他のオプション"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"保存済み"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"接続を解除"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"有効化"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"明日自動的に ON にする"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share や「デバイスを探す」などの機能は Bluetooth を使用します"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"明日の朝に Bluetooth が ON になります"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"音声を共有"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"音声を共有中"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"バッテリー <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"オーディオ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ヘッドセット"</string> @@ -383,7 +378,7 @@ <string name="qs_record_issue_stop" msgid="3531747965741982657">"停止"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"バグレポート"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"デバイスのどの部分が影響を受けましたか?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"問題の種類を選択する"</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"問題の種類を選択"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"スクリーン レコード"</string> <string name="performance" msgid="6552785217174378320">"パフォーマンス"</string> <string name="user_interface" msgid="3712869377953950887">"ユーザー インターフェース"</string> @@ -909,7 +904,7 @@ <string name="thermal_shutdown_dialog_help_text" msgid="6413474593462902901">"取り扱いに関する手順をご覧ください"</string> <string name="high_temp_dialog_help_text" msgid="7380171287943345858">"取り扱いに関する手順をご覧ください"</string> <string name="high_temp_alarm_title" msgid="8654754369605452169">"デバイスを電源から外します"</string> - <string name="high_temp_alarm_notify_message" msgid="3917622943609118956">"充電ポートの近くにデバイスを置くと、本体が熱くなります。デバイスが充電器や USB アクセサリに接続されている場合は外してください。ケーブルが熱くなっていることもあるので注意してください。"</string> + <string name="high_temp_alarm_notify_message" msgid="3917622943609118956">"充電ポートの近くにデバイスを置くと、本体が熱くなります。デバイスが充電器や USB アクセサリーに接続されている場合は外してください。ケーブルが熱くなっていることもあるので注意してください。"</string> <string name="high_temp_alarm_help_care_steps" msgid="5017002218341329566">"取り扱いに関する手順をご覧ください"</string> <string name="lockscreen_shortcut_left" msgid="1238765178956067599">"左ショートカット"</string> <string name="lockscreen_shortcut_right" msgid="4138414674531853719">"右ショートカット"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"タップすると詳細が表示されます"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"アラーム未設定"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"画面ロックを設定"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"指紋認証センサーに触れてください。スマートフォンの側面にある高さが低い方のボタンです。"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"指紋認証センサー"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"認証"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"デバイスを入力"</string> @@ -1284,7 +1280,7 @@ <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> + <string name="rear_display_bottom_sheet_confirm" msgid="1507591562761552899">"画面を切り替える"</string> <string name="rear_display_folded_bottom_sheet_title" msgid="3930008746560711990">"スマートフォンを開いてください"</string> <string name="rear_display_unfolded_bottom_sheet_title" msgid="6291111173057304055">"画面を切り替えますか?"</string> <string name="rear_display_folded_bottom_sheet_description" msgid="6842767125783222695">"高解像度で撮るには背面カメラを使用してください"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"閉じるアイコン"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"開くアイコン"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"または"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"「戻る」ジェスチャー"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"「ホーム」ジェスチャー"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"アクションキー"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"完了"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"キーボード バックライト"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"レベル %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ホーム コントロール"</string> diff --git a/packages/SystemUI/res/values-ka/strings.xml b/packages/SystemUI/res/values-ka/strings.xml index 5914f127a8cd..28ebdd6988d4 100644 --- a/packages/SystemUI/res/values-ka/strings.xml +++ b/packages/SystemUI/res/values-ka/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"თქვენ შეწყვეტთ <b><xliff:g id="APP_NAME">%1$s</xliff:g>-ის</b> ჩაწერას"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ჩაწერის შეწყვეტა"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"გსურთ ეკრანის გაზიარების შეწყვეტა?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"თქვენ შეწყვეტთ <b><xliff:g id="APP_NAME">%1$s</xliff:g>-ის</b> გაზიარებას"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"გაზიარების შეწყვეტა"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"თქვენ შეწყვეტთ <b><xliff:g id="APP_NAME">%1$s</xliff:g>-ის</b> ტრანსლირებას"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ტრანსლირების შეწყვეტა"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"დახურვა"</string> <string name="issuerecord_title" msgid="286627115110121849">"ჩანაწერის რეკორდერი"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"პრობლემის ჩანაწერის დამუშავება"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"მიმდინარე შეტყობინება პრობლემების შეგროვების სესიისთვის"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"პრობლემის ჩანაწერის შენახვისას წარმოიქმნა შეცდომა"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"პრობლემის ჩაწერის დაწყებისას წარმოიქმნა შეცდომა"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"მიმდინარეობს სრულ ეკრანზე ნახვა"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"თქვენი ეკრანის ზემოდან გადაფურცლეთ ქვემოთ, რათა გამოხვიდეთ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"გასაგებია"</string> <string name="accessibility_back" msgid="6530104400086152611">"უკან"</string> <string name="accessibility_home" msgid="5430449841237966217">"საწყისი"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"განიბლოკა სახით. დააჭირეთ გასაგრძელებლად."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ამოცნობილია სახით. დააჭირეთ გასაგრძელებლად."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ამოცნობილია სახით. გასაგრძელებლად დააჭირეთ განბლოკვის ხატულას."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"განიბლოკა სახით. შეეხეთ გასაგრძელებლად."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ავტორიზებულია"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ავტორიზაციის გაუქმება"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"სხვა ვარიანტები"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"შენახული"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"კავშირის გაწყვეტა"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"გააქტიურება"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ხვალ ავტომატურად ჩართვა"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ისეთი ფუნქციები, როგორიცაა სწრაფი გაზიარება და ჩემი მოწყობილობის პოვნა, იყენებს Bluetooth-ს"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ჩაირთვება ხვალ დილით"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"აუდიოს გაზიარება"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"მიმდინარებოს აუდიოს გაზიარება"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ბატარეა"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"აუდიო"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ყურსაცვამი"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"შეეხეთ მეტი ინფორმაციისთვის"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"მაღვიძარა არ არის"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ეკრანის დაბლოკვის შეყვანა"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"შეეხეთ თითის ანაბეჭდის სენსორს. ის მოკლე ღილაკია ტელეფონის კიდეზე"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"თითის ანაბეჭდის სენსორი"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ავტორიზაცია"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"მოწყობილობის შეყვანა"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ხატულის ჩაკეცვა"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ხატულის გაფართოება"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ან"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"უკან დაბრუნების ჟესტი"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"მთავარ ეკრანზე გადასვლის ჟესტი"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"მოქმედების კლავიში"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"მზადაა"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"კლავიატურის შენათება"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"დონე: %1$d %2$d-დან"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"სახლის კონტროლი"</string> diff --git a/packages/SystemUI/res/values-kk/strings.xml b/packages/SystemUI/res/values-kk/strings.xml index 40b91499abff..428c32f7f917 100644 --- a/packages/SystemUI/res/values-kk/strings.xml +++ b/packages/SystemUI/res/values-kk/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Экран жазғыш бейнесін өңдеу"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Экранды бейнеге жазудың ағымдағы хабарландыруы"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Жазу басталсын ба?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Жазу кезінде Android жүйесі экраныңызда көрінетін не құрылғыңызда ойнатылатын барлық нәрсені пайдалана алады. Сондықтан құпия сөздерді, төлем туралы мәліметті, хабарларды немесе басқа құпия ақпаратты енгізген кезде сақ болыңыз."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Жазу кезінде Android жүйесі экраныңызда көрінетін не құрылғыңызда ойнатылатын барлық нәрсені пайдалана алады. Сондықтан құпия сөздерге, төлем туралы мәліметке, хабарларға, фотосуреттерге, аудиоконтент пен бейнелерге сақ болыңыз."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Қолданбаны жазу кезінде Android жүйесі қолданбада көрінетін не ойнатылатын барлық нәрсені пайдалана алады. Сондықтан құпия сөздерді, төлем туралы мәліметті, хабарларды немесе басқа құпия ақпаратты енгізген кезде сақ болыңыз."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Жазуды бастау"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Аудио жазу"</string> @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> қолданбасының контентін жазуды тоқтатасыз."</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Жазуды тоқтату"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Экранды бөлісуді тоқтатасыз ба?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> қолданбасының контентін бөлісуді тоқтатасыз."</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Бөлісуді тоқтату"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> - <string name="issuerecord_title" msgid="286627115110121849">"Мәселені жазу құралы"</string> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> қолданбасының контентін трансляциялауды тоқтатасыз."</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Трансляцияны тоқтату"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Жабу"</string> + <string name="issuerecord_title" msgid="286627115110121849">"Ақау жазу құралы"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Мәселе жазбасы өңделіп жатыр"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Мәселе туралы дерек жинау сеансына арналған ағымдағы хабарландыру"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Мәселе жазылып жатыр"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Ақау жазылып жатыр"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Бөлісу"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"Мәселе жазбасы сақталды"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"Ақау жазбасы сақталды."</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Көру үшін түртіңіз."</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Мәселе жазбасын сақтау кезінде қате шықты."</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Мәселені жазуды бастау кезінде қате шықты."</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Толық экранда көру"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Шығу үшін экранның жоғарғы жағынан төмен қарай сырғытыңыз."</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Түсінікті"</string> <string name="accessibility_back" msgid="6530104400086152611">"Артқа"</string> <string name="accessibility_home" msgid="5430449841237966217">"Үй"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Бетпен ашылды. Жалғастыру үшін басыңыз."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Бет танылды. Жалғастыру үшін басыңыз."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Бет танылды. Жалғастыру үшін құлыпты ашу белгішесін басыңыз."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Бетпен ашылды. Жалғастыру үшін түртіңіз."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Аутентификацияланған"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Аутентификациядан бас тарту"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Қосымша опциялар"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Сақталды"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ажырату"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"іске қосу"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ертең автоматты түрде қосу"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share және Find My Device сияқты функциялар Bluetooth-ты пайдаланады."</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ертең таңертең қосылады."</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Аудионы бөлісу"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Аудио беріліп жатыр"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Батарея деңгейі: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Aудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Гарнитура"</string> @@ -320,7 +315,7 @@ <string name="quick_settings_camera_label" msgid="5612076679385269339">"Камераны пайдалану"</string> <string name="quick_settings_mic_label" msgid="8392773746295266375">"Микрофонды пайдалану"</string> <string name="quick_settings_camera_mic_available" msgid="1453719768420394314">"Қолжетімді"</string> - <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"Бөгелген"</string> + <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"Блокталған"</string> <string name="quick_settings_media_device_label" msgid="8034019242363789941">"Meдиа құрылғысы"</string> <string name="quick_settings_user_title" msgid="8673045967216204537">"Пайдаланушы"</string> <string name="quick_settings_wifi_label" msgid="2879507532983487244">"Wi-Fi"</string> @@ -383,9 +378,9 @@ <string name="qs_record_issue_stop" msgid="3531747965741982657">"Тоқтату"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Қате туралы есеп"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Құрылғы қызметінің қандай түріне әсер етті?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Мәселе түрін таңдаңыз."</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Ақау түрін таңдаңыз"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Экранды жазу"</string> - <string name="performance" msgid="6552785217174378320">"Өнімділік режимі"</string> + <string name="performance" msgid="6552785217174378320">"Өнімділік"</string> <string name="user_interface" msgid="3712869377953950887">"Пайдаланушы интерфейсі"</string> <string name="thermal" msgid="6758074791325414831">"Термовизия"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Бір қолмен басқару режимі"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Ортақ оқулықты ашу үшін солға қарай сырғытыңыз."</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Бейімдеу"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Жабу"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Осы бөлмеде виджеттер қосыңыз, оларды өшіріңіз және ретін өзгертіңіз."</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Осында виджеттерді қосып, оларды реттеуге болады."</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Басқа виджеттер қосыңыз."</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Виджеттерді бейімдеу үшін ұзақ басып тұрыңыз."</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Виджеттерді реттеу"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Толығырақ ақпарат алу үшін түртіңіз."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Оятқыш орнатылмаған."</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"экран құлпын енгізу"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Саусақ ізін оқу сканерін түртіңіз. Ол – телефонның бүйіріндегі шағын түйме."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Саусақ ізін оқу сканері"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"аутентификациялау"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"құрылғыны енгізу"</string> @@ -1260,7 +1256,7 @@ <string name="dream_overlay_weather_complication_desc" msgid="824503662089783824">"<xliff:g id="WEATHER_CONDITION">%1$s</xliff:g>, <xliff:g id="TEMPERATURE">%2$s</xliff:g>"</string> <string name="note_task_button_label" msgid="230135078402003532">"Ескертпе жазу"</string> <string name="note_task_shortcut_long_label" msgid="7729325091147319409">"Ескертпе жазу, <xliff:g id="NOTE_TAKING_APP">%1$s</xliff:g>"</string> - <string name="audio_sharing_description" msgid="8849060142768870004">"Аудио бөлісу"</string> + <string name="audio_sharing_description" msgid="8849060142768870004">"Аудио беріліп жатыр"</string> <string name="broadcasting_description_is_broadcasting" msgid="765627502786404290">"Таратуда"</string> <string name="bt_le_audio_broadcast_dialog_title" msgid="3605428497924077811">"<xliff:g id="APP_NAME">%1$s</xliff:g> қолданбасын таратуды тоқтатасыз ба?"</string> <string name="bt_le_audio_broadcast_dialog_sub_title" msgid="7889684551194225793">"<xliff:g id="SWITCHAPP">%1$s</xliff:g> қолданбасын таратсаңыз немесе аудио шығысын өзгертсеңіз, қазіргі тарату сеансы тоқтайды."</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Жию белгішесі"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Жаю белгішесі"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"немесе"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Артқа қайтару қимылы"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Негізгі бетке қайтару қимылы"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Әрекет пернесі"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Дайын"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Пернетақта жарығы"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Деңгей: %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Үй басқару элементтері"</string> diff --git a/packages/SystemUI/res/values-km/strings.xml b/packages/SystemUI/res/values-km/strings.xml index 3836d7d96caa..36ab7984c720 100644 --- a/packages/SystemUI/res/values-km/strings.xml +++ b/packages/SystemUI/res/values-km/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"អ្នកនឹងឈប់ថត <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ឈប់ថត"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ឈប់បង្ហាញអេក្រង់ឬ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"អ្នកនឹងឈប់ចែករំលែក <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ឈប់បង្ហាញ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"អ្នកនឹងឈប់បញ្ជូន <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"បញ្ឈប់ការបញ្ជូន"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"បិទ"</string> <string name="issuerecord_title" msgid="286627115110121849">"កម្មវិធីកត់ត្រាបញ្ហា"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"កំពុងដំណើរការការកត់ត្រាបញ្ហា"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ការជូនដំណឹងដែលកំពុងបន្តសម្រាប់វគ្គប្រមូលបញ្ហា"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"មានបញ្ហាក្នុងការរក្សាទុកកំណត់ត្រាបញ្ហា"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"មានបញ្ហាក្នុងការចាប់ផ្ដើមកត់ត្រាបញ្ហា"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"កំពុងមើលពេញអេក្រង់"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ដើម្បីចេញ សូមអូសពីផ្នែកខាងលើនៃអេក្រង់របស់អ្នកចុះក្រោម"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"យល់ហើយ"</string> <string name="accessibility_back" msgid="6530104400086152611">"ថយក្រោយ"</string> <string name="accessibility_home" msgid="5430449841237966217">"គេហទំព័រ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"បានដោះសោដោយប្រើមុខ។ សូមចុច ដើម្បីបន្ត។"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"បានស្គាល់មុខ។ សូមចុច ដើម្បីបន្ត។"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"បានស្គាល់មុខ។ សូមចុចរូបដោះសោ ដើម្បីបន្ត។"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"បានដោះសោដោយប្រើមុខ។ ចុច ដើម្បីបន្ត។"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"បានផ្ទៀងផ្ទាត់"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"បោះបង់ការផ្ទៀងផ្ទាត់"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ជម្រើសច្រើនទៀត"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"បានរក្សាទុក"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ផ្ដាច់"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"បើកដំណើរការ"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"បើកនៅថ្ងៃស្អែកដោយស្វ័យប្រវត្តិ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"មុខងារដូចជា Quick Share និង \"រកឧបករណ៍របស់ខ្ញុំ\" ប្រើប៊្លូធូស"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ប៊្លូធូសនឹងបើកនៅព្រឹកស្អែក"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ស្ដាប់សំឡេងរួមគ្នា"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"កំពុងស្ដាប់សំឡេងរួមគ្នា"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"ថ្ម <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"សំឡេង"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"កាស"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ចុចដើម្បីទទួលបានព័ត៌មានបន្ថែម"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"មិនបានកំណត់ម៉ោងរោទ៍ទេ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"បញ្ចូលព័ត៌មានផ្ទៀងផ្ទាត់សម្រាប់ការចាក់សោអេក្រង់"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ប៉ះសេនស័រចាប់ស្នាមម្រាមដៃ។ វាជាប៊ូតុងខ្លីនៅចំហៀងទូរសព្ទ"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ឧបករណ៍ចាប់ស្នាមម្រាមដៃ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ផ្ទៀងផ្ទាត់"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"បញ្ចូលឧបករណ៍"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"រូបតំណាង \"បង្រួម\""</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"រូបតំណាង \"ពង្រីក\""</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ឬ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ចលនាថយក្រោយ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ចលនាទៅទំព័រដើម"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"គ្រាប់ចុចសកម្មភាព"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"រួចរាល់"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ពន្លឺក្រោយក្ដារចុច"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"កម្រិតទី %1$d នៃ %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ការគ្រប់គ្រងផ្ទះ"</string> diff --git a/packages/SystemUI/res/values-kn/strings.xml b/packages/SystemUI/res/values-kn/strings.xml index 85d67cda60df..6ae83c4189fe 100644 --- a/packages/SystemUI/res/values-kn/strings.xml +++ b/packages/SystemUI/res/values-kn/strings.xml @@ -45,7 +45,7 @@ <string name="usb_device_confirm_prompt_warn" msgid="990208659736311769">"<xliff:g id="USB_DEVICE">%2$s</xliff:g> ಅನ್ನು ನಿಯಂತ್ರಿಸಲು <xliff:g id="APPLICATION">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯುವುದೇ?\nಈ ಆ್ಯಪ್ಗೆ ರೆಕಾರ್ಡ್ ಅನುಮತಿಯನ್ನು ನೀಡಲಾಗಿಲ್ಲ, ಆದರೆ ಈ USB ಸಾಧನದ ಮೂಲಕ ಆಡಿಯೊವನ್ನು ಸೆರೆಹಿಡಿಯಬಹುದು."</string> <string name="usb_accessory_confirm_prompt" msgid="5728408382798643421">"<xliff:g id="USB_ACCESSORY">%2$s</xliff:g> ಅನ್ನು ನಿರ್ವಹಿಸಲು <xliff:g id="APPLICATION">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯುವುದೇ?"</string> <string name="usb_accessory_uri_prompt" msgid="6756649383432542382">"ಆಪ್ಗಳು USB ಪರಿಕರದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ. ಆ ಬಗ್ಗೆ <xliff:g id="URL">%1$s</xliff:g> ನಲ್ಲಿ ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</string> - <string name="title_usb_accessory" msgid="1236358027511638648">"USB ಪರಿಕರ"</string> + <string name="title_usb_accessory" msgid="1236358027511638648">"USB ಆ್ಯಕ್ಸೆಸರಿ"</string> <string name="label_view" msgid="6815442985276363364">"ವೀಕ್ಷಿಸು"</string> <string name="always_use_device" msgid="210535878779644679">"<xliff:g id="USB_DEVICE">%2$s</xliff:g> ಸಂಪರ್ಕಗೊಂಡಾಗ ಯಾವಾಗಲೂ <xliff:g id="APPLICATION">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯಿರಿ"</string> <string name="always_use_accessory" msgid="1977225429341838444">"<xliff:g id="USB_ACCESSORY">%2$s</xliff:g> ಸಂಪರ್ಕಗೊಂಡಾಗ ಯಾವಾಗಲೂ <xliff:g id="APPLICATION">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯಿರಿ"</string> @@ -74,8 +74,8 @@ <string name="global_action_screenshot" msgid="2760267567509131654">"ಸ್ಕ್ರೀನ್ಶಾಟ್"</string> <string name="global_action_smart_lock_disabled" msgid="6286551337177954859">"ಎಕ್ಸ್ಟೆಂಡ್ ಅನ್ಲಾಕ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string> <string name="remote_input_image_insertion_text" msgid="4850791636452521123">"ಚಿತ್ರವನ್ನು ಕಳುಹಿಸಲಾಗಿದೆ"</string> - <string name="screenshot_saving_title" msgid="2298349784913287333">"ಸ್ಕ್ರೀನ್ಶಾಟ್ ಉಳಿಸಲಾಗುತ್ತಿದೆ…"</string> - <string name="screenshot_saving_work_profile_title" msgid="5332829607308450880">"ಉದ್ಯೋಗ ಪ್ರೊಫೈಲ್ಗೆ ಸ್ಕ್ರೀನ್ಶಾಟ್ ಉಳಿಸಲಾಗುತ್ತಿದೆ…"</string> + <string name="screenshot_saving_title" msgid="2298349784913287333">"ಸ್ಕ್ರೀನ್ಶಾಟ್ ಸೇವ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string> + <string name="screenshot_saving_work_profile_title" msgid="5332829607308450880">"ಉದ್ಯೋಗ ಪ್ರೊಫೈಲ್ಗೆ ಸ್ಕ್ರೀನ್ಶಾಟ್ ಸೇವ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string> <string name="screenshot_saving_private_profile" msgid="8934706048497093297">"ಸ್ಕ್ರೀನ್ಶಾಟ್ ಅನ್ನು ಖಾಸಗಿ ಪ್ರೊಫೈಲ್ಗೆ ಸೇವ್ ಮಾಡಲಾಗುತ್ತಿದೆ"</string> <string name="screenshot_saved_title" msgid="8893267638659083153">"ಸ್ಕ್ರೀನ್ಶಾಟ್ ಅನ್ನು ಸೇವ್ ಮಾಡಲಾಗಿದೆ"</string> <string name="screenshot_failed_title" msgid="3259148215671936891">"ಸ್ಕ್ರೀನ್ಶಾಟ್ ಅನ್ನು ಉಳಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ಇದರಿಂದ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ನ ಕಂಟೆಂಟ್ ಅನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡುವುದು ನಿಂತುಹೋಗುತ್ತದೆ"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ರೆಕಾರ್ಡಿಂಗ್ ನಿಲ್ಲಿಸಿ"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ಸ್ಕ್ರೀನ್ ಹಂಚಿಕೊಳ್ಳುವಿಕೆಯನ್ನು ನಿಲ್ಲಿಸಬೇಕೆ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"ಇದರಿಂದ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ನ ಕಂಟೆಂಟ್ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುವುದು ನಿಂತುಹೋಗುತ್ತದೆ"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ಹಂಚಿಕೊಳ್ಳುವಿಕೆಯನ್ನು ನಿಲ್ಲಿಸಿ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"ಇದರಿಂದ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ನ ಕಂಟೆಂಟ್ ಅನ್ನು ಬಿತ್ತರಿಸುವುದು ನಿಂತುಹೋಗುತ್ತದೆ"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ಬಿತ್ತರಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಿ"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ಮುಚ್ಚಿರಿ"</string> <string name="issuerecord_title" msgid="286627115110121849">"ಸಮಸ್ಯೆ ರೆಕಾರ್ಡರ್"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ಸಮಸ್ಯೆ ರೆಕಾರ್ಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆ…"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ಸಮಸ್ಯೆ ಸಂಗ್ರಹಣೆಯ ಸೆಶನ್ಗಾಗಿ ಜರುಗುತ್ತಿರುವ ನೋಟಿಫಿಕೇಶನ್"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"ಸಮಸ್ಯೆಯ ರೆಕಾರ್ಡಿಂಗ್ ಅನ್ನು ಸೇವ್ ಮಾಡುವಾಗ ದೋಷ ಎದುರಾಗಿದೆ"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ಸಮಸ್ಯೆಯ ರೆಕಾರ್ಡಿಂಗ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸುವಲ್ಲಿ ದೋಷ ಎದುರಾಗಿದೆ"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ಪೂರ್ಣ ಸ್ಕ್ರೀನ್ನಲ್ಲಿ ವೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ನಿರ್ಗಮಿಸಲು, ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ನ ಮೇಲಿನಿಂದ ಕೆಳಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ಅರ್ಥವಾಯಿತು"</string> <string name="accessibility_back" msgid="6530104400086152611">"ಹಿಂದೆ"</string> <string name="accessibility_home" msgid="5430449841237966217">"ಮುಖಪುಟ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ಮುಖವನ್ನು ಬಳಸಿ ಅನ್ಲಾಕ್ ಮಾಡಲಾಗಿದೆ. ಮುಂದುವರಿಯಲು ಒತ್ತಿ."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ಮುಖ ಗುರುತಿಸಲಾಗಿದೆ. ಮುಂದುವರಿಯಲು ಒತ್ತಿ."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ಮುಖ ಗುರುತಿಸಲಾಗಿದೆ. ಮುಂದುವರಿಯಲು ಅನ್ಲಾಕ್ ಐಕಾನ್ ಅನ್ನು ಒತ್ತಿ."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ಮುಖವನ್ನು ಬಳಸಿ ಅನ್ಲಾಕ್ ಮಾಡಲಾಗಿದೆ. ಮುಂದುವರಿಯಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ದೃಢೀಕರಿಸಲಾಗಿದೆ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ದೃಢೀಕರಣವನ್ನು ರದ್ದುಗೊಳಿಸಿ"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ಇನ್ನಷ್ಟು ಆಯ್ಕೆಗಳು"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ಸೇವ್ ಮಾಡಲಾಗಿದೆ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ಡಿಸ್ಕನೆಕ್ಟ್ ಮಾಡಿ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ಸಕ್ರಿಯಗೊಳಿಸಿ"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ನಾಳೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆನ್ ಆಗಲಿ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ಕ್ವಿಕ್ ಶೇರ್ ಮತ್ತು Find My Device ನಂತಹ ಫೀಚರ್ಗಳು ಬ್ಲೂಟೂತ್ ಅನ್ನು ಬಳಸುತ್ತವೆ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ಬ್ಲೂಟೂತ್ ನಾಳೆ ಬೆಳಗ್ಗೆ ಆನ್ ಆಗುತ್ತದೆ"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ಆಡಿಯೋ ಹಂಚಿಕೊಳ್ಳಿ"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ಆಡಿಯೋವನ್ನು ಹಂಚಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ಬ್ಯಾಟರಿ"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ಆಡಿಯೋ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ಹೆಡ್ಸೆಟ್"</string> @@ -382,7 +377,7 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"ಪ್ರಾರಂಭಿಸಿ"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"ನಿಲ್ಲಿಸಿ"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"ಬಗ್ ವರದಿ ಮಾಡುವಿಕೆ"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"ಸಾಧನ ಬಳಸುವಾಗ ನೀವು ಯಾವ ರೀತಿಯ ಸಮಸ್ಯೆ ಎದುರಿಸುತ್ತೀರಿ?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"ನಿಮ್ಮ ಸಾಧನದ ಯಾವ ಭಾಗದಲ್ಲಿ ಸಮಸ್ಯೆ ಉಂಟಾಗಿದೆ?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"ಸಮಸ್ಯೆಯ ಪ್ರಕಾರವನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"ಸ್ಕ್ರೀನ್ ರೆಕಾರ್ಡ್"</string> <string name="performance" msgid="6552785217174378320">"ಪರ್ಫಾರ್ಮೆನ್ಸ್"</string> @@ -451,7 +446,7 @@ <string name="phone_hint" msgid="6682125338461375925">"ಫೋನ್ಗಾಗಿ ಐಕಾನ್ನಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string> <string name="voice_hint" msgid="7476017460191291417">"ಧ್ವನಿ ಸಹಾಯಕ್ಕಾಗಿ ಐಕಾನ್ನಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string> <string name="camera_hint" msgid="4519495795000658637">"ಕ್ಯಾಮರಾಗಾಗಿ ಐಕಾನ್ನಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string> - <string name="interruption_level_none_with_warning" msgid="8394434073508145437">"ಒಟ್ಟು ಮೌನ. ಇದು ಪರದೆ ರೀಡರ್ ಅನ್ನು ಮೌನವಾಗಿರಿಸುತ್ತದೆ."</string> + <string name="interruption_level_none_with_warning" msgid="8394434073508145437">"ಒಟ್ಟು ಮೌನ. ಇದು ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಅನ್ನು ಮೌನವಾಗಿರಿಸುತ್ತದೆ."</string> <string name="interruption_level_none" msgid="219484038314193379">"ಸಂಪೂರ್ಣ ನಿಶ್ಯಬ್ಧ"</string> <string name="interruption_level_priority" msgid="661294280016622209">"ಆದ್ಯತೆ ಮಾತ್ರ"</string> <string name="interruption_level_alarms" msgid="2457850481335846959">"ಅಲಾರಮ್ಗಳು ಮಾತ್ರ"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ಇನ್ನಷ್ಟು ಮಾಹಿತಿಗಾಗಿ ಟ್ಯಾಪ್ ಮಾಡಿ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ಅಲಾರಾಂ ಸೆಟ್ ಆಗಿಲ್ಲ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ಸ್ಕ್ರೀನ್ ಲಾಕ್ ನಮೂದಿಸಿ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್ ಅನ್ನು ಸ್ಪರ್ಶಿಸಿ. ಇದು ಫೋನ್ನ ಬದಿಯಲ್ಲಿರುವ ಚಿಕ್ಕ ಬಟನ್ ಆಗಿದೆ"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ದೃಢೀಕರಿಸಿ"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ಸಾಧನವನ್ನು ಪ್ರವೇಶಿಸಿ"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ಕುಗ್ಗಿಸುವ ಐಕಾನ್"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ವಿಸ್ತೃತಗೊಳಿಸುವ ಐಕಾನ್"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ಅಥವಾ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ಹಿಂಬದಿ ಗೆಸ್ಚರ್"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ಹೋಮ್ ಗೆಸ್ಚರ್"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ಆ್ಯಕ್ಷನ್ ಕೀ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ಮುಗಿದಿದೆ"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ಕೀಬೋರ್ಡ್ ಬ್ಯಾಕ್ಲೈಟ್"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d ರಲ್ಲಿ %1$d ಮಟ್ಟ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ಮನೆ ನಿಯಂತ್ರಣಗಳು"</string> diff --git a/packages/SystemUI/res/values-kn/tiles_states_strings.xml b/packages/SystemUI/res/values-kn/tiles_states_strings.xml index afc7c1a10e0e..c7cb2b16a2f3 100644 --- a/packages/SystemUI/res/values-kn/tiles_states_strings.xml +++ b/packages/SystemUI/res/values-kn/tiles_states_strings.xml @@ -188,7 +188,7 @@ </string-array> <string-array name="tile_states_hearing_devices"> <item msgid="1235334096484287173">"ಲಭ್ಯವಿಲ್ಲ"</item> - <item msgid="3079622119444911877">"ಆಫ್ ಆಗಿದೆ"</item> + <item msgid="3079622119444911877">"ಆಫ್"</item> <item msgid="3028994095749238254">"ಆನ್"</item> </string-array> </resources> diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml index 4c26ed21577a..db174a5532fc 100644 --- a/packages/SystemUI/res/values-ko/strings.xml +++ b/packages/SystemUI/res/values-ko/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> 녹화가 중단됩니다."</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"녹화 중지"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"화면 공유를 중지하시겠습니까?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> 공유가 중단됩니다."</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"공유 중지"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> 전송이 중단됩니다."</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"전송 중지"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"닫기"</string> <string name="issuerecord_title" msgid="286627115110121849">"문제 녹화 도구"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"문제 녹화 처리 중"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"문제 수집 섹션에 대한 진행 중 알림"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"문제 녹화 저장 중에 오류가 발생했습니다."</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"문제 녹화 시작 중에 오류가 발생했습니다."</string> <string name="immersive_cling_title" msgid="8372056499315585941">"전체 화면 모드"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"종료하려면 화면 상단에서 아래로 스와이프합니다."</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"확인"</string> <string name="accessibility_back" msgid="6530104400086152611">"뒤로"</string> <string name="accessibility_home" msgid="5430449841237966217">"홈"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"얼굴 인식으로 잠금 해제되었습니다. 계속하려면 누르세요."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"얼굴이 인식되었습니다. 계속하려면 누르세요."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"얼굴이 인식되었습니다. 계속하려면 아이콘을 누르세요."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"얼굴 인식으로 잠금 해제되었습니다. 계속하려면 탭하세요."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"인증됨"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"인증 취소"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"옵션 더보기"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"저장됨"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"연결 해제"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"실행"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"내일 자동으로 사용 설정"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share, 내 기기 찾기 등의 기능에서 블루투스를 사용합니다."</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"블루투스가 내일 아침에 켜집니다."</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"오디오 공유"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"오디오 공유 중"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"배터리 <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"오디오"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"헤드셋"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"공동 튜토리얼을 시작하려면 왼쪽으로 스와이프하세요"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"맞춤설정"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"닫기"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"이 공간에서 위젯 추가, 삭제 또는 다시 정렬"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"여기에서 위젯을 추가, 삭제 또는 다시 정렬하세요"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"더 많은 위젯 추가"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"위젯을 맞춤설정하려면 길게 누르기"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"위젯 맞춤설정"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"탭하여 자세한 정보를 확인하세요."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"설정된 알람 없음"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"화면 잠금 입력"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"지문 센서를 터치하세요. 휴대전화 측면에 있는 더 짧은 버튼입니다"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"지문 센서"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"인증"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"기기 입력"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"접기 아이콘"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"확장 아이콘"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"또는"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"뒤로 동작"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"홈 동작"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"작업 키"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"완료"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"키보드 백라이트"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d단계 중 %1$d단계"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"홈 컨트롤"</string> diff --git a/packages/SystemUI/res/values-ky/strings.xml b/packages/SystemUI/res/values-ky/strings.xml index ae91a7c48939..622cbec225d2 100644 --- a/packages/SystemUI/res/values-ky/strings.xml +++ b/packages/SystemUI/res/values-ky/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> колдонмосун жаздырууну токтотосуз"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Жаздырууну токтотуу"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Экранды бөлүшүүнү токтотосузбу?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> колдонмосун бөлүшүүнү токтотосуз"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Бөлүшүүнү токтотуу"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> колдонмосун тышкы экранга чыгарууну токтотосуз"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Тышкы экранга чыгарууну токтотуу"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Жабуу"</string> <string name="issuerecord_title" msgid="286627115110121849">"Маселе жаздыргыч"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Маселе жаздырылууда"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Маселе тууралуу маалымат чогултулуп жатканы жөнүндө учурдагы билдирме"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Жаздыруу маселеси"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Маселе жазылууда"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Бөлүшүү"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"Жаздырылган маселе сакталды"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"Маселе жаздырылды"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Көрүү үчүн таптаңыз"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Жаздырылган маселе сакталган жок"</string> - <string name="issuerecord_start_error" msgid="3402782952722871190">"Маселени жаздыруу башталбай койду"</string> + <string name="issuerecord_start_error" msgid="3402782952722871190">"Башталбай койду"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Толук экран режимин көрүү"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Чыгуу үчүн экранды өйдө жагынан ылдый сүрүп коюңуз"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Түшүндүм"</string> <string name="accessibility_back" msgid="6530104400086152611">"Артка"</string> <string name="accessibility_home" msgid="5430449841237966217">"Үйгө"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Кулпуну жүзүңүз менен ачтыңыз. Улантуу үчүн басыңыз."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Жүз таанылды. Улантуу үчүн басыңыз."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Жүз таанылды. Улантуу үчүн кулпусун ачуу сүрөтчөсүн басыңыз."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Кулпусун жүзүңүз менен ачтыңыз. Улантуу үчүн таптап коюңуз."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Аныктыгы текшерилди"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Аныктыгын текшерүүнү жокко чыгаруу"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Дагы параметрлер"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Сакталды"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ажыратуу"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"иштетүү"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Эртең автоматтык түрдө күйгүзүлсүн"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetooth Тез бөлүшүү жана Түзмөгүм кайда? сыяктуу функцияларда колдонулат"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth эртең таңда күйөт"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Чогуу угуу"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Чогуу угулууда"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Батареянын деңгээли <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Гарнитура"</string> @@ -382,15 +377,15 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"Баштоо"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Токтотуу"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Мүчүлүштүк тууралуу кабарлоо"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Түзмөгүңүздүн кайсы бөлүгүнө кедергиси тийди?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Маселенин түрүн тандоо"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Кандай маселеге кабылдыңыз?"</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Маселенин түрүн тандаңыз"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Экрандан видео жаздырып алуу"</string> <string name="performance" msgid="6552785217174378320">"Иштин майнаптуулугу"</string> <string name="user_interface" msgid="3712869377953950887">"Колдонуучунун интерфейси"</string> <string name="thermal" msgid="6758074791325414831">"Жылуулук"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Бир кол режими"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Угуу аппараттары"</string> - <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Жигердүү"</string> + <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Иштеп жатат"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"Ажыратылды"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"Угуу аппараттары"</string> <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"Жаңы түзмөк кошуу"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Виджет кошуу"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Бүттү"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Виджеттерди кошуу"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Тандалма колдонмолордун виджеттерин планшеттин кулпусун ачпастан эле, ыкчам колдонуңуз."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Планшет кулпуланып турса да, жакшы көргөн колдонмолордун виджеттери көрүнүп турат."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Бардык виджеттер кулпуланган экранда көрсөтүлсүнбү?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Параметрлерди ачуу"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Жумуш колдонмолорун иштетесизби?"</string> @@ -566,7 +561,7 @@ <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"Тармактын таржымалы"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Тастыктоочу борбордун тастыктамасы"</string> - <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Саясаттарды карап көрүү"</string> + <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Эрежелерди карап көрүү"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Башкаруу элементтерин көрүү"</string> <string name="monitoring_description_named_management" msgid="505833016545056036">"Бул түзмөк <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> уюмуна таандык.\n\nАдминистраторуңуз бул түзмөктөгү параметрлерди, корпоративдик ресурстарды пайдалануу мүмкүнчүлүгүн берген параметрлерди жана колдонмолорду, түзмөгүңүзгө байланыштуу маалыматтарды (мисалы, түзмөгүңүздүн жайгашкан жери сыяктуу) көзөмөлдөп башкара алат.\n\nТолугураак маалымат алуу үчүн IT администраторуңузга кайрылыңыз."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> бул түзмөк менен байланышкан маалыматты көрүп, колдонмолорду башкарып, анын параметрлерин өзгөртө алат.\n\nЭгер суроолоруңуз болсо, <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g> уюмуна кайрылыңыз."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Кеңири маалымат алуу үчүн таптап коюңуз"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ойготкуч коюлган жок"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"экран кулпусун киргизүү"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Манжа изинин сенсорун басыңыз. Ал телефондун капталындагы кыска баскыч"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Манжа изинин сенсору"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"аныктыгын текшерүү"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"түзмөккө кирүү"</string> @@ -1260,7 +1256,7 @@ <string name="dream_overlay_weather_complication_desc" msgid="824503662089783824">"<xliff:g id="WEATHER_CONDITION">%1$s</xliff:g>, <xliff:g id="TEMPERATURE">%2$s</xliff:g>"</string> <string name="note_task_button_label" msgid="230135078402003532">"Эскертме жазуу"</string> <string name="note_task_shortcut_long_label" msgid="7729325091147319409">"Эскертме жазуу (<xliff:g id="NOTE_TAKING_APP">%1$s</xliff:g>)"</string> - <string name="audio_sharing_description" msgid="8849060142768870004">"Аудиону бөлүшүү"</string> + <string name="audio_sharing_description" msgid="8849060142768870004">"Чогуу угуу"</string> <string name="broadcasting_description_is_broadcasting" msgid="765627502786404290">"Кеңири таратуу"</string> <string name="bt_le_audio_broadcast_dialog_title" msgid="3605428497924077811">"<xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосунда кабарлоо токтотулсунбу?"</string> <string name="bt_le_audio_broadcast_dialog_sub_title" msgid="7889684551194225793">"Эгер <xliff:g id="SWITCHAPP">%1$s</xliff:g> колдонмосунда кабарласаңыз же аудионун чыгуусун өзгөртсөңүз, учурдагы кабарлоо токтотулат"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Жыйыштыруу сүрөтчөсү"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Жайып көрсөтүү сүрөтчөсү"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"же"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Артка кайтуу жаңсоосу"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Башкы бетке өтүү жаңсоосу"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Аракет баскычы"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Бүттү"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Баскычтоптун жарыгы"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d ичинен %1$d-деңгээл"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Үйдөгү түзмөктөрдү тескөө"</string> diff --git a/packages/SystemUI/res/values-lo/strings.xml b/packages/SystemUI/res/values-lo/strings.xml index 30f8a656a2ef..3cf4ea8442ad 100644 --- a/packages/SystemUI/res/values-lo/strings.xml +++ b/packages/SystemUI/res/values-lo/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ທ່ານຈະຢຸດການບັນທຶກ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ຢຸດການບັນທຶກ"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ຢຸດການແບ່ງປັນໜ້າຈໍບໍ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"ທ່ານຈະຢຸດການແບ່ງປັນ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ຢຸດການແບ່ງປັນ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"ທ່ານຈະຢຸດການສົ່ງສັນຍານ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ຢຸດການສົ່ງສັນຍານ"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ປິດ"</string> <string name="issuerecord_title" msgid="286627115110121849">"ຕົວບັນທຶກບັນຫາ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ກຳລັງປະມວນຜົນການບັນທຶກບັນຫາ"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ການແຈ້ງເຕືອນທີ່ດຳເນີນຢູ່ສຳລັບເຊດຊັນການຮວບຮວມບັນຫາ"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"ເກີດຂໍ້ຜິດພາດໃນການບັນທຶກບັນຫາ"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ເກີດຂໍ້ຜິດພາດໃນການເລີ່ມຕົ້ນການບັນທຶກບັນຫາ"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ກຳລັງເບິ່ງເຕັມຈໍ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ເພື່ອອອກ, ໃຫ້ປັດລົງຈາກເທິງສຸດຂອງໜ້າຈໍຂອງທ່ານ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ເຂົ້າໃຈແລ້ວ"</string> <string name="accessibility_back" msgid="6530104400086152611">"ກັບຄືນ"</string> <string name="accessibility_home" msgid="5430449841237966217">"ໜ້າທຳອິດ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ປົດລັອກດ້ວຍໜ້າແລ້ວ. ກົດເພື່ອສືບຕໍ່."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ຈຳແນກໜ້າໄດ້ແລ້ວ. ກົດເພື່ອສືບຕໍ່."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ຈຳແນກໜ້າໄດ້ແລ້ວ. ກົດໄອຄອນປົດລັອກເພື່ອສືບຕໍ່."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ປົດລັອກດ້ວຍໃບໜ້າແລ້ວ. ແຕະເພື່ອສືບຕໍ່."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ຮັບຮອງຄວາມຖືກຕ້ອງແລ້ວ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ຍົກເລີກການພິສູດຢືນຢັນ"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ຕົວເລືອກເພີ່ມເຕີມ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ບັນທຶກແລ້ວ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ຕັດການເຊື່ອມຕໍ່"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ເປີດນຳໃຊ້"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ເປີດໂດຍອັດຕະໂນມັດໃນມື້ອື່ນ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ຄຸນສົມບັດຕ່າງໆໃຊ້ Bluetooth ເຊັ່ນ: ການແຊຣ໌ດ່ວນ ແລະ ຊອກຫາອຸປະກອນຂອງຂ້ອຍ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ຈະເປີດມື້ອື່ນເຊົ້າ"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ແບ່ງປັນສຽງ"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ກຳລັງແບ່ງປັນສຽງ"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"ແບັດເຕີຣີ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ສຽງ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ຊຸດຫູຟັງ"</string> @@ -570,7 +565,7 @@ <string name="monitoring_button_view_controls" msgid="8316440345340701117">"ເບິ່ງການຄວບຄຸມ"</string> <string name="monitoring_description_named_management" msgid="505833016545056036">"ອຸປະກອນນີ້ເປັນຂອງ <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານສາມາດເຝົ້າຕິດຕາມ ແລະ ຈັດການການຕັ້ງຄ່າ, ສິດເຂົ້າເຖິງອົງກອນ, ແອັບ, ຂໍ້ມູນທີ່ເຊື່ອມໂຍງກັບອຸປະກອນຂອງທ່ານ ແລະ ຂໍ້ມູນສະຖານທີ່ອຸປະກອນຂອງທ່ານໄດ້.\n\nສຳລັບຂໍ້ມູນເພີ່ມເຕີມ, ກະລຸນາຕິດຕໍ່ຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານ."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> ອາດສາມາດເຂົ້າເຖິງຂໍ້ມູນທີ່ເຊື່ອມໂຍງກັບອຸປະກອນນີ້, ຈັດການແອັບ ແລະ ປ່ຽນການຕັ້ງຄ່າອຸປະກອນນີ້ໄດ້.\n\nຫາກທ່ານມີຄຳຖາມ, ກະລຸນາຕິດຕໍ່ <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"ອຸປະກອນນີ້ເປັນຂອງອົງການທ່ານ.\n\nຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານສາມາດເຝົ້າຕິດຕາມ ແລະ ຈັດການການຕັ້ງຄ່າ, ສິດເຂົ້າເຖິງອົງກອນ, ແອັບ, ຂໍ້ມູນທີ່ເຊື່ອມໂຍງກັບອຸປະກອນຂອງທ່ານ ແລະ ຂໍ້ມູນສະຖານທີ່ອຸປະກອນຂອງທ່ານໄດ້.\n\nສຳລັບຂໍ້ມູນເພີ່ມເຕີມ, ກະລຸນາຕິດຕໍ່ຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານ."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"ອຸປະກອນນີ້ເປັນຂອງອົງກອນທ່ານ.\n\nຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານສາມາດເຝົ້າຕິດຕາມ ແລະ ຈັດການການຕັ້ງຄ່າ, ສິດເຂົ້າເຖິງອົງກອນ, ແອັບ, ຂໍ້ມູນທີ່ເຊື່ອມໂຍງກັບອຸປະກອນຂອງທ່ານ ແລະ ຂໍ້ມູນສະຖານທີ່ອຸປະກອນຂອງທ່ານໄດ້.\n\nສຳລັບຂໍ້ມູນເພີ່ມເຕີມ, ກະລຸນາຕິດຕໍ່ຜູ້ເບິ່ງແຍງໄອທີຂອງທ່ານ."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"ອົງກອນຂອງທ່ານຕິດຕັ້ງອຳນາດໃບຮັບຮອງໄວ້ໃນອຸປະກອນນີ້. ທຣາບຟິກເຄືອຂ່າຍທີ່ເຂົ້າລະຫັດໄວ້ຂອງທ່ານອາດຖືກຕິດຕາມ ຫຼື ແກ້ໄຂໄດ້."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"ອົງກອນຂອງທ່ານຕິດຕັ້ງອຳນາດໃບຮັບຮອງໄວ້ໃນໂປຣໄຟລ໌ບ່ອນເຮັດວຽກນີ້. ທຣາບຟິກເຄືອຂ່າຍທີ່ເຂົ້າລະຫັດໄວ້ຂອງທ່ານອາດຖືກຕິດຕາມ ຫຼື ແກ້ໄຂໄດ້."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ມີອຳນາດໃບຮັບຮອງຕິດຕັ້ງຢູ່ໃນອຸປະກອນນີ້. ທຣາບຟິກເຄືອຂ່າຍທີ່ເຂົ້າລະຫັດໄວ້ຂອງທ່ານອາດຖືກຕິດຕາມ ຫຼື ແກ້ໄຂໄດ້."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ແຕະເພື່ອເບິ່ງຂໍ້ມູນເພີ່ມເຕີມ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ບໍ່ໄດ້ຕັ້ງໂມງປຸກ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ໃສ່ຂໍ້ມູນການລັອກໜ້າຈໍ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ແຕະເຊັນເຊີລາຍນິ້ວມື. ໂດຍເປັນປຸ່ມທີ່ສັ້ນກວ່າເຊິ່ງຢູ່ທາງຂ້າງໂທລະສັບ"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ເຊັນເຊີລາຍນິ້ວມື"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ພິສູດຢືນຢັນ"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ເຂົ້າອຸປະກອນ"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ໄອຄອນຫຍໍ້ລົງ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ໄອຄອນຂະຫຍາຍ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ຫຼື"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ທ່າທາງສຳລັບກັບຄືນ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ທ່າທາງສຳລັບໜ້າຫຼັກ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ປຸ່ມຄຳສັ່ງ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ແລ້ວໆ"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ໄຟປຸ່ມແປ້ນພິມ"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"ລະດັບທີ %1$d ຈາກ %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ການຄວບຄຸມເຮືອນ"</string> diff --git a/packages/SystemUI/res/values-lt/strings.xml b/packages/SystemUI/res/values-lt/strings.xml index 4fffb3d904ce..2db05c70fb21 100644 --- a/packages/SystemUI/res/values-lt/strings.xml +++ b/packages/SystemUI/res/values-lt/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Programos (<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>) turinio įrašymas bus sustabdytas."</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Sustabdyti įrašymą"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Nebebendrinti ekrano?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Programos (<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>) turinio bendrinimas bus sustabdytas."</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Nebebendrinti"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Programos (<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>) turinio perdavimas bus sustabdytas."</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Sustabdyti perdavimą"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Uždaryti"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problemų įrašytuvas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Apdorojamas problemos įrašas"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Šiuo metu rodomas problemos duomenų rinkimo seanso pranešimas"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Išsaugant problemos įrašą įvyko klaida"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Pradedant problemos įrašą įvyko klaida"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Peržiūrima viso ekrano režimu"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Jei norite išeiti, perbraukite žemyn nuo ekrano viršaus"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Supratau"</string> <string name="accessibility_back" msgid="6530104400086152611">"Atgal"</string> <string name="accessibility_home" msgid="5430449841237966217">"Pagrindinis"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Atrakinta pagal veidą. Paspauskite, jei norite tęsti."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Veidas atpažintas. Paspauskite, jei norite tęsti."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Veidas atpažintas. Tęskite paspaudę atrakinimo piktogramą."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Atrakinta pagal veidą. Palieskite ir tęskite."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentifikuota"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Atšaukti autentifikavimą"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Daugiau parinkčių"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Išsaugota"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"atjungti"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"suaktyvinti"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatiškai įjungti rytoj"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Tokioms funkcijoms kaip „Spartusis bendrinimas“ ir „Rasti įrenginį“ naudojamas „Bluetooth“ ryšys"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"„Bluetooth“ ryšys bus įjungtas rytoj ryte"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Bendrinti garsą"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Bendrinamas garsas"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Akumuliatorius: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Garsas"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Virtualiosios realybės įrenginys"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Palieskite, kad sužinotumėte daugiau informacijos"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nenustatyta signalų"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"įvesti ekrano užraktą"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Palieskite piršto antspaudo jutiklį. Tai yra trumpesnis mygtukas telefono šone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Kontrolinio kodo jutiklis"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"nustatytumėte tapatybę"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"pasiektumėte įrenginį"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Sutraukimo piktograma"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Išskleidimo piktograma"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"arba"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Grįžimo atgal gestas"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Pagrindinio ekrano gestas"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Veiksmų klavišas"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Atlikta"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Klaviatūros foninis apšvietimas"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d lygis iš %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Namų sistemos valdymas"</string> diff --git a/packages/SystemUI/res/values-lv/strings.xml b/packages/SystemUI/res/values-lv/strings.xml index 28b15d0a7b1a..cde7d83ca570 100644 --- a/packages/SystemUI/res/values-lv/strings.xml +++ b/packages/SystemUI/res/values-lv/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Tiks pārtraukta lietotnes <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> satura ierakstīšana"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Apturēt ierakstīšanu"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vai apturēt ekrāna kopīgošanu?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Tiks pārtraukta lietotnes <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> satura kopīgošana"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Apturēt kopīgošanu"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Tiks pārtraukta lietotnes <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> satura apraide"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Apturēt apraidi"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Aizvērt"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problēmu ierakstītājs"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Apstrādā problēmas ierakstu"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Aktīvs paziņojums par problēmu vākšanas sesiju"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Saglabājot problēmas ierakstu, radās kļūda."</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Sākot problēmas ierakstīšanu, radās kļūda."</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Skatīšanās pilnekrāna režīmā"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Lai izietu, velciet lejup no ekrāna augšdaļas."</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Labi"</string> <string name="accessibility_back" msgid="6530104400086152611">"Atpakaļ"</string> <string name="accessibility_home" msgid="5430449841237966217">"Sākums"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Ierīce atbloķēta ar seju. Nospiediet, lai turpinātu."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Seja atpazīta. Nospiediet, lai turpinātu."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Seja atpazīta. Lai turpinātu, nospiediet atbloķēšanas ikonu."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Ierīce atbloķēta pēc sejas. Pieskarieties, lai turpinātu."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentifikācija veikta"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Atcelt autentificēšanu"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Citas opcijas"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saglabāta"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"atvienot"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivizēt"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automātiski ieslēgt rīt"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Tādas funkcijas kā “Ātrā kopīgošana” un “Atrast ierīci” izmanto Bluetooth savienojumu"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth savienojums tiks ieslēgts rīt no rīta"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Kopīgot audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Notiek audio kopīgošana…"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Akumulators: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Austiņas"</string> @@ -784,7 +779,7 @@ <string name="keyboard_shortcut_search_list_no_result" msgid="6819302191660875501">"Nav atrasti"</string> <string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"Sistēma"</string> <string name="keyboard_shortcut_search_category_input" msgid="5440558509904296233">"Ievade"</string> - <string name="keyboard_shortcut_search_category_open_apps" msgid="1450959949739257562">"Atvērtās"</string> + <string name="keyboard_shortcut_search_category_open_apps" msgid="1450959949739257562">"Atvērtās lietotnes"</string> <string name="keyboard_shortcut_search_category_current_app" msgid="2011953559133734491">"Pašreizējā"</string> <string name="keyboard_shortcut_a11y_show_search_results" msgid="2865241062981833705">"Tiek rādīti meklēšanas rezultāti"</string> <string name="keyboard_shortcut_a11y_filter_system" msgid="7744143131119370483">"Tiek rādīti sistēmas īsinājumtaustiņi"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Pieskarieties, lai iegūtu plašāku informāciju."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nav iestatīts signāls"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ievadīt ekrāna bloķēšanas informāciju"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Pieskarieties pirksta nospieduma sensoram. Tā ir īsākā poga tālruņa malā."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Pirksta nospieduma sensors"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"veiktu autentificēšanu"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"izmantotu ierīci"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Sakļaušanas ikona"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Izvēršanas ikona"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"vai"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Žests pāriešanai atpakaļ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Žests pāriešanai uz sākumu"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Darbību taustiņš"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gatavs"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Tastatūras fona apgaismojums"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Līmenis numur %1$d, kopā ir %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Mājas kontrolierīces"</string> diff --git a/packages/SystemUI/res/values-mk/strings.xml b/packages/SystemUI/res/values-mk/strings.xml index bf71f8eb29f1..683b9d750d3e 100644 --- a/packages/SystemUI/res/values-mk/strings.xml +++ b/packages/SystemUI/res/values-mk/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Ќе го сопрете снимањето на <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Сопри го снимањето"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Да се сопре споделувањето на екранот?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Ќе го сопрете споделувањето на <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Сопри го споделувањето"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Ќе го сопрете емитувањето на <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Сопри го емитувањето"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Затвори"</string> <string name="issuerecord_title" msgid="286627115110121849">"Проблем со „Диктафон“"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Се обработува проб. со снимање"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Тековно известување за сесија за проблем со прибирање"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Грешка при зачувување на проблемот со снимање"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Грешка при започнување на проблемот со снимање"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Се прикажува на цел екран"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"За да излезете, повлечете надолу од горниот дел на екранот"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Сфатив"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"Почетна страница"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Отклучено со лик. Притиснете за да продолжите."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Лицето е препознаено. Притиснете за да продолжите."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Лицето е препознаено. Притиснете ја иконата за отклучување за да продолжите."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Отклучено со лик. Допрете за да продолжите."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Проверена"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Откажување автентикација"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Повеќе опции"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Зачувано"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"прекини врска"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"активирај"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Автоматски вклучи го утре"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Функциите како „Брзо споделување“ и „Најди го мојот уред“ користат Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ќе се вклучи утре наутро"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Споделувај аудио"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Се споделува аудио"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Батерија: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Слушалки"</string> @@ -387,13 +382,13 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Снимање екран"</string> <string name="performance" msgid="6552785217174378320">"Изведба"</string> <string name="user_interface" msgid="3712869377953950887">"Кориснички интерфејс"</string> - <string name="thermal" msgid="6758074791325414831">"Термално"</string> + <string name="thermal" msgid="6758074791325414831">"Прегревање"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Режим со една рака"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Слушни апарати"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Активно"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"Не е поврзано"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"Слушни апарати"</string> - <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"Спари нов уред"</string> + <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"Спарете нов уред"</string> <string name="accessibility_hearing_device_pair_new_device" msgid="8440082580186130090">"Кликнете за да спарите нов уред"</string> <string name="hearing_devices_presets_error" msgid="350363093458408536">"Не можеше да се ажурира зададената вредност"</string> <string name="hearing_devices_preset_label" msgid="7878267405046232358">"Зададени вредности"</string> @@ -474,7 +469,7 @@ <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Икона за апликација за оневозможен виџет"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Икона за апликација за виџет што се инсталира"</string> <string name="edit_widget" msgid="9030848101135393954">"Изменување виџети"</string> - <string name="button_to_remove_widget" msgid="3948204829181214098">"Отстранува"</string> + <string name="button_to_remove_widget" msgid="3948204829181214098">"Отстрани"</string> <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Додајте виџет"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Готово"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Додајте виџети"</string> @@ -930,7 +925,7 @@ <string name="notification_channel_screenshot" msgid="7665814998932211997">"Слики од екранот"</string> <string name="notification_channel_instant" msgid="7556135423486752680">"Инстант апликации"</string> <string name="notification_channel_setup" msgid="7660580986090760350">"Поставување"</string> - <string name="notification_channel_storage" msgid="2720725707628094977">"Капацитет"</string> + <string name="notification_channel_storage" msgid="2720725707628094977">"Простор"</string> <string name="notification_channel_hints" msgid="7703783206000346876">"Совети"</string> <string name="notification_channel_accessibility" msgid="8956203986976245820">"Пристапност"</string> <string name="instant_apps" msgid="8337185853050247304">"Инстант апликации"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Допрете за повеќе информации"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Не е поставен аларм"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"внесете PIN/шема/лозинка"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Допрете го сензорот за отпечатоци. Тоа е пократкото копче отстрана на телефонот"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сензор за отпечатоци"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"автентицирате"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"внесете уред"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Икона за собирање"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Икона за проширување"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"или"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Движење за назад"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Движење за почетен екран"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Копче за дејство"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Осветлување на тастатура"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Ниво %1$d од %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Контроли за домот"</string> diff --git a/packages/SystemUI/res/values-ml/strings.xml b/packages/SystemUI/res/values-ml/strings.xml index 2031af047ebf..666afa3810c4 100644 --- a/packages/SystemUI/res/values-ml/strings.xml +++ b/packages/SystemUI/res/values-ml/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> റെക്കോർഡ് ചെയ്യുന്നത് നിങ്ങൾ അവസാനിപ്പിക്കും"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"റെക്കോർഡിംഗ് നിർത്തുക"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"സ്ക്രീൻ പങ്കിടുന്നത് നിർത്തണോ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> പങ്കിടുന്നത് നിങ്ങൾ അവസാനിപ്പിക്കും"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"പങ്കിടൽ നിർത്തുക"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> കാസ്റ്റ് ചെയ്യുന്നത് നിങ്ങൾ അവസാനിപ്പിക്കും"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"കാസ്റ്റ് ചെയ്യുന്നത് നിർത്തുക"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"അടയ്ക്കുക"</string> <string name="issuerecord_title" msgid="286627115110121849">"പ്രശ്ന റെക്കോർഡർ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"പ്രശ്ന റെക്കോർഡിംഗ് പ്രോസസ് ചെയ്യുന്നു"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ഒരു പ്രശ്ന ശേഖരണ സെഷന്റെ ഓൺഗോയിംഗ് അറിയിപ്പ്"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"പ്രശ്ന റെക്കോർഡിംഗ് സംരക്ഷിക്കുന്നതിൽ പിശക്"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"പ്രശ്ന റെക്കോർഡിംഗ് ആരംഭിക്കുന്നതിൽ പിശക്"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"പൂർണ്ണ സ്ക്രീനിൽ കാണുന്നു"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"പുറത്ത് കടക്കാൻ, സ്ക്രീനിന്റെ മുകളിൽ നിന്ന് താഴോട്ട് സ്വൈപ്പ് ചെയ്യുക"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"മനസ്സിലായി"</string> <string name="accessibility_back" msgid="6530104400086152611">"മടങ്ങുക"</string> <string name="accessibility_home" msgid="5430449841237966217">"ഹോം"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"മുഖം ഉപയോഗിച്ച് അൺലോക്ക് ചെയ്തു. തുടരാൻ അമർത്തുക."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"മുഖം തിരിച്ചറിഞ്ഞു. തുടരാൻ അമർത്തുക."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"മുഖം തിരിച്ചറിഞ്ഞു. തുടരാൻ അൺലോക്ക് ഐക്കൺ അമർത്തുക."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"മുഖം വഴി അൺലോക്കുചെയ്തു. തുടരാൻ ടാപ്പ് ചെയ്യുക."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"പരിശോധിച്ചുറപ്പിച്ചു"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"പരിശോധിച്ചുറപ്പിക്കൽ റദ്ദാക്കുക"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"കൂടുതൽ ഓപ്ഷനുകൾ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"സംരക്ഷിച്ചു"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"വിച്ഛേദിക്കുക"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"സജീവമാക്കുക"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"നാളെ സ്വയമേവ ഓണാക്കുക"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ക്വിക്ക് ഷെയർ, Find My Device പോലുള്ള ഫീച്ചറുകൾ Bluetooth ഉപയോഗിക്കുന്നു"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth നാളെ രാവിലെ ഓണാകും"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ഓഡിയോ പങ്കിടുക"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ഓഡിയോ പങ്കിടുന്നു"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ബാറ്ററി"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ഓഡിയോ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ഹെഡ്സെറ്റ്"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"കമ്മ്യൂണൽ ട്യൂട്ടോറിയൽ ആരംഭിക്കാൻ ഇടത്തോട്ട് സ്വൈപ്പ് ചെയ്യുക"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"ഇഷ്ടാനുസൃതമാക്കുക"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"ഡിസ്മിസ് ചെയ്യുക"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"ഈ സ്പെയ്സിൽ നിങ്ങളുടെ വിജറ്റുകൾ ചേർക്കുക, നീക്കം ചെയ്യുക, പുനഃക്രമീകരിക്കുക"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"വിജറ്റുകൾ ചേർക്കുക, നീക്കം ചെയ്യുക, പുനഃക്രമീകരിക്കുക"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"കൂടുതൽ വിജറ്റുകൾ ചേർക്കുക"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"വിജറ്റുകൾ ഇഷ്ടാനുസൃതമാക്കാൻ ദീർഘനേരം അമർത്തുക"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"വിജറ്റുകൾ ഇഷ്ടാനുസൃതമാക്കുക"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"കൂടുതൽ വിവരങ്ങൾക്ക് ടാപ്പ് ചെയ്യുക"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"അലാറം സജ്ജീകരിച്ചിട്ടില്ല"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"സ്ക്രീൻ ലോക്ക് നൽകുക"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ഫിംഗർപ്രിന്റ് സെൻസർ സ്പർശിക്കുക. ഇത് ഫോണിന്റെ വശത്തുള്ള ചെറിയ ബട്ടണാണ്"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ഫിംഗർപ്രിന്റ് സെൻസർ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"പരിശോധിച്ചുറപ്പിക്കുക"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ഉപകരണം നൽകുക"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ചുരുക്കൽ ഐക്കൺ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"വികസിപ്പിക്കൽ ഐക്കൺ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"അല്ലെങ്കിൽ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"\'മടങ്ങുക\' ജെസ്ച്ചർ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ഹോം ജെസ്ച്ചർ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ആക്ഷൻ കീ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"പൂർത്തിയായി"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"കീബോഡ് ബാക്ക്ലൈറ്റ്"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d-ൽ %1$d-ാമത്തെ ലെവൽ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ഹോം കൺട്രോളുകൾ"</string> diff --git a/packages/SystemUI/res/values-mn/strings.xml b/packages/SystemUI/res/values-mn/strings.xml index 556d205aa085..5aaaf1cfe065 100644 --- a/packages/SystemUI/res/values-mn/strings.xml +++ b/packages/SystemUI/res/values-mn/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Та <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>-г бичихээ болино"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Бичихийг зогсоох"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Дэлгэц хуваалцахыг зогсоох уу?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Та <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>-г хуваалцахаа болино"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Хуваалцахыг зогсоох"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Та <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>-г дамжуулахаа болино"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Дамжуулахыг зогсоох"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Хаах"</string> <string name="issuerecord_title" msgid="286627115110121849">"Асуудал бичигч"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Асуудлын бичлэгийг боловсруулж байна"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Асуудал цуглуулах харилцан үйлдлийн үргэлжилж буй мэдэгдэл"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Асуудлын бичлэгийг хадгалахад алдаа гарлаа"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Асуудлын бичлэгийг эхлүүлэхэд алдаа гарлаа"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Бүтэн дэлгэцээр үзэж байна"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Гарахын тулд дэлгэцийнхээ дээд талаас доош шударна уу"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Ойлголоо"</string> <string name="accessibility_back" msgid="6530104400086152611">"Буцах"</string> <string name="accessibility_home" msgid="5430449841237966217">"Гэрийн"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Царайгаар түгжээг тайлсан. Үргэлжлүүлэхийн тулд дарна уу."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Царайг таньсан. Үргэлжлүүлэхийн тулд дарна уу."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Царайг таньсан. Үргэлжлүүлэх бол түгжээг тайлах дүрсийг дар."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Царайгаар түгжээг тайлсан. Үргэлжлүүлэхийн тулд товшино уу."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Баталгаажуулагдсан"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Баталгаажуулалтыг цуцлах"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Бусад сонголт"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Хадгалсан"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"салгах"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"идэвхжүүлэх"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Маргааш автоматаар асаах"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Түргэн хуваалцах, Миний төхөөрөмжийг олох зэрэг онцлогууд Bluetooth-г ашигладаг"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth-г маргааш өглөө асаана"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Аудио хуваалцах"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Аудио хуваалцаж байна"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> батарей"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Чихэвч"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Дэлгэцийн үйлдэл бичих"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Эхлүүлэх"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Зогсоох"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Асуудлыг бичих"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Асуудлыг бүртгэх"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Эхлүүлэх"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Зогсоох"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Алдааны мэдээ"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Нэмэлт мэдээлэл авахын тулд товшино уу"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Сэрүүлэг тавиагүй"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"дэлгэцийн түгжээ оруулах"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Хурууны хээ мэдрэгчид хүрнэ үү. Энэ нь утасны хажуу талын арай богино товч юм"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Хурууны хээ мэдрэгч"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"баталгаажуулах"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"төхөөрөмж оруулах"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Хураах дүрс тэмдэг"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Дэлгэх дүрс тэмдэг"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"эсвэл"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Буцах зангаа"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Үндсэн нүүрний зангаа"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Тусгай товчлуур"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Болсон"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Гарын арын гэрэл"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d-с %1$d-р түвшин"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Гэрийн удирдлага"</string> diff --git a/packages/SystemUI/res/values-mr/strings.xml b/packages/SystemUI/res/values-mr/strings.xml index a009fe11f307..b69023c5586d 100644 --- a/packages/SystemUI/res/values-mr/strings.xml +++ b/packages/SystemUI/res/values-mr/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"तुम्ही <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> रेकॉर्ड करणे बंद कराल"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"रेकॉर्ड करणे थांबवा"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"स्क्रीन शेअर करणे थांबवायचे आहे का?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"तुम्ही <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> शेअर करणे बंद कराल"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"शेअर करणे थांबवा"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"तुम्ही <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> कास्ट करणे बंद कराल"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"कास्ट करणे थांबवा"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"बंद करा"</string> <string name="issuerecord_title" msgid="286627115110121849">"समस्या रेकॉर्डर"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"प्रक्रियेच्या समस्येचे रेकॉर्डिंग"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"समस्या गोळा करण्याच्या सेशनसाठीची सद्य सूचना"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"समस्येचे रेकॉर्डिंग सेव्ह करताना एरर आली"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"समस्येचे रेकॉर्डिंग सुरू करताना एरर आली"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"पूर्ण स्क्रीन पाहत आहात"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"बाहेर पडण्यासाठी, तुमच्या स्क्रीनच्या सर्वात वरून खाली स्वाइप करा"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"समजले"</string> <string name="accessibility_back" msgid="6530104400086152611">"मागे"</string> <string name="accessibility_home" msgid="5430449841237966217">"होम"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"चेहऱ्याने अनलॉक केले आहे. पुढे सुरू ठेवण्यासाठी प्रेस करा."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"चेहरा ओळखला आहे. पुढे सुरू ठेवण्यासाठी प्रेस करा."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"चेहरा ओळखला आहे. पुढे सुरू ठेवण्यासाठी अनलॉक करा आयकन प्रेस करा."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"चेहऱ्याने अनलॉक केले आहे. सुरू ठेवण्यासाठी टॅप करा."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ऑथेंटिकेशन केलेले"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ऑथेंटिकेशन रद्द करा"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"अधिक पर्याय"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"सेव्ह केले"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"डिस्कनेक्ट करा"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ॲक्टिव्हेट करा"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"उद्या आपोआप सुरू करा"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"क्विक शेअर आणि Find My Device यांसारखी वैशिष्ट्ये ब्लूटूथ वापरतात"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ब्लूटूथ उद्या सकाळी सुरू होईल"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ऑडिओ शेअर करा"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ऑडिओ शेअर करत आहे"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> बॅटरी"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ऑडिओ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"हेडसेट"</string> @@ -574,7 +569,7 @@ <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"आपल्या संस्थेने या डिव्हाइसवर प्रमाणपत्र अधिकार इंस्टॉल केला आहे. आपल्या सुरक्षित नेटवर्क रहदारीचे परीक्षण केले जाऊ शकते किंवा ती सुधारली जाऊ शकते."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"आपल्या संस्थेने आपल्या कार्य प्रोफाइलवर प्रमाणपत्र अधिकार इंस्टॉल केला आहे. आपल्या सुरक्षित नेटवर्क रहदारीचे परीक्षण केले जाऊ शकते किंवा ती सुधारली जाऊ शकते."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"या डिव्हाइसवर प्रमाणपत्र अधिकार इंस्टॉल केला आहे. आपल्या सुरक्षित नेटवर्क रहदारीचे परीक्षण केले जाऊ शकते किंवा ती सुधारली जाऊ शकते."</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"आपल्या प्रशासकाने नेटवर्क लॉगिंग सुरू केले आहे, जे आपल्या डिव्हाइसवरील रहदारीचे परीक्षण करते."</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> द्वारे इंटरनेटशी कनेक्ट केलेले आहे. ईमेल आणि ब्राउझिंग डेटाच्या समावेशासह, तुमची नेटवर्क अॅक्टिव्हिटी तुमच्या आयटी ॲडमिनला दिसते."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"अधिक माहितीसाठी टॅप करा"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"अलार्म सेट केला नाही"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"स्क्रीन लॉक एंटर करा"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"फिंगरप्रिंट सेन्सरला स्पर्श करा. हे फोनच्या बाजूला असलेले लहान बटण आहे"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"फिंगरप्रिंट सेन्सर"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ऑथेंटिकेट करा"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"डिव्हाइस एंटर करा"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"कोलॅप्स करा आयकन"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"विस्तार करा आयकन"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"किंवा"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"मागे जा जेश्चर"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"होम जेश्चर"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"अॅक्शन की"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"पूर्ण झाले"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"कीबोर्ड बॅकलाइट"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d पैकी %1$d पातळी"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"होम कंट्रोल"</string> diff --git a/packages/SystemUI/res/values-ms/strings.xml b/packages/SystemUI/res/values-ms/strings.xml index 59c4071f82d5..2e45f1db69e2 100644 --- a/packages/SystemUI/res/values-ms/strings.xml +++ b/packages/SystemUI/res/values-ms/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Memproses rakaman skrin"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Pemberitahuan breterusan untuk sesi rakaman skrin"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Mulakan Rakaman?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Apabila anda merakam, Android boleh mengakses apa-apa sahaja yang kelihatan pada skrin anda atau dimainkan pada peranti anda. Oleh hal yang demikian, berhati-hati apabila memasukkan kata laluan, butiran pembayaran, mesej, foto, audio dan video."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Semasa anda merakam, Android boleh mengakses apa-apa sahaja yang kelihatan pada skrin atau dimainkan pada peranti anda. Oleh hal yang demikian, berhati-hati apabila memasukkan kata laluan, butiran pembayaran, mesej, foto, audio dan video."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Semasa anda merakam apl, Android boleh mengakses apa-apa sahaja yang ditunjukkan atau dimainkan pada apl itu. Oleh hal yang demikian, berhati-hati ketika memasukkan kata laluan, butiran pembayaran, mesej, foto, audio dan video."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Mulakan rakaman"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Rakam audio"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Anda akan berhenti merakam <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Hentikan rakaman"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Hentikan perkongsian skrin?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Anda akan berhenti berkongsi <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Hentikan perkongsian"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Anda akan berhenti menghantar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Hentikan penghantaran"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Tutup"</string> <string name="issuerecord_title" msgid="286627115110121849">"Perakam Masalah"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Memproses rakaman masalah"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Pemberitahuan sedang berlangsung untuk sesi pengumpulan masalah"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Ralat menyimpan rakaman masalah"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Ralat memulakan rakaman masalah"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Melihat skrin penuh"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Untuk keluar, leret ke bawah daripada bahagian atas skrin anda"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Kembali"</string> <string name="accessibility_home" msgid="5430449841237966217">"Rumah"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Dibuka kunci dengan wajah. Tekan untuk meneruskan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Wajah dicam. Tekan untuk meneruskan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Wajah dicam. Tekan ikon buka kunci untuk meneruskan."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Dibuka kunci dengan wajah. Ketik untuk meneruskan proses."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Disahkan"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Batalkan Pengesahan"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Lagi Pilihan"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Disimpan"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"putuskan sambungan"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktifkan"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Hidupkan secara automatik pada hari esok"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Ciri seperti Quick Share dan Find My Device menggunakan Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth akan dihidupkan esok pagi"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Kongsi audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Perkongsian audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> bateri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Set Kepala"</string> @@ -378,11 +373,11 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Rakam skrin"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Mula"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Berhenti"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Rekodkan masalah"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Rakam Masalah"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Mula"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Hentikan"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Laporan Pepijat"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Pengalaman peranti yang manakah yang terjejas?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Apakah pengalaman peranti yang terjejas?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Pilih jenis masalah"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Rakam skrin"</string> <string name="performance" msgid="6552785217174378320">"Prestasi"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Tambahkan widget"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Selesai"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Tambahkan widget"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Dapatkan akses pantas kepada widget apl kegemaran anda tanpa membuka kunci tablet anda."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Dapatkan akses pantas kepada widget apl kegemaran anda tanpa perlu membuka kunci tablet."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Benarkan sebarang widget pada skrin kunci?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Buka tetapan"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Nyahjeda apl kerja?"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Ketik untuk mendapatkan maklumat lanjut"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Tiada penggera"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"masukkan kunci skrin"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Sentuh penderia cap jari. Penderia cap jari ialah butang yang lebih pendek di sisi telefon"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Penderia cap jari"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"sahkan"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"akses peranti"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Kuncupkan ikon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Kembangkan ikon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"atau"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gerak isyarat kembali"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gerak isyarat pergi ke laman utama"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Kekunci tindakan"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Selesai"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Cahaya latar papan kekunci"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Tahap %1$d daripada %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kawalan Rumah"</string> diff --git a/packages/SystemUI/res/values-my/strings.xml b/packages/SystemUI/res/values-my/strings.xml index d13ee635c682..5a5a9395d327 100644 --- a/packages/SystemUI/res/values-my/strings.xml +++ b/packages/SystemUI/res/values-my/strings.xml @@ -106,7 +106,7 @@ <string name="screenrecord_title" msgid="4257171601439507792">"ဖန်သားပြင်ရိုက်ကူးစက်"</string> <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"စကရင်ရိုက်ကူးမှု အပြီးသတ်နေသည်"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"ဖန်သားပြင် ရိုက်ကူးသည့် စက်ရှင်အတွက် ဆက်တိုက်လာနေသော အကြောင်းကြားချက်"</string> - <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"ရိုက်သံဖမ်းခြင်း စတင်မလား။"</string> + <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"ရုပ်သံဖမ်းခြင်း စတင်မလား။"</string> <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"ရုပ်သံဖမ်းနေစဉ် Android သည် သင့်ဖန်သားပြင်တွင် မြင်နိုင်သည့် (သို့) သင့်စက်တွင် ဖွင့်ထားသည့် အရာအားလုံးကို တွေ့နိုင်သည်။ စကားဝှက်၊ ငွေပေးချေမှု အချက်အလက်၊ မက်ဆေ့ဂျ်၊ ဓာတ်ပုံ၊ အသံနှင့် ဗီဒီယိုကဲ့သို့ အရာများကို ဂရုစိုက်ပါ။"</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"အက်ပ်တစ်ခုကို ရုပ်သံဖမ်းနေစဉ် Android သည် ယင်းအက်ပ်တွင် ပြထားသည့် (သို့) ဖွင့်ထားသည့် အရာအားလုံးကို တွေ့နိုင်သည်။ ထို့ကြောင့် စကားဝှက်၊ ငွေပေးချေမှု အချက်အလက်၊ မက်ဆေ့ဂျ်၊ ဓာတ်ပုံ၊ အသံနှင့် ဗီဒီယိုကဲ့သို့ အရာများကို ဂရုစိုက်ပါ။"</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"ရုပ်သံ စဖမ်းရန်"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ၏ အကြောင်းအရာ ရိုက်ကူးခြင်းကို ရပ်ပါမည်"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ရိုက်ကူးမှု ရပ်ရန်"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ဖန်သားပြင်မျှဝေခြင်း ရပ်မလား။"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ၏ အကြောင်းအရာ မျှဝေခြင်းကို ရပ်ပါမည်"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"မျှဝေခြင်း ရပ်ရန်"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ၏ အကြောင်းအရာ ကာစ်လုပ်ခြင်းကို ရပ်ပါမည်"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ကာစ် ရပ်ရန်"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ပိတ်ရန်"</string> <string name="issuerecord_title" msgid="286627115110121849">"ပြဿနာရိုက်ကူးစနစ်"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ပြဿနာရိုက်ကူးမှု လုပ်နေသည်"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ပြဿနာစုစည်းခြင်း စက်ရှင်အတွက် လုပ်ဆောင်နေဆဲ အကြောင်းကြားချက်"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"ပြဿနာရိုက်ကူးမှုကို သိမ်း၍မရပါ"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ပြဿနာရိုက်ကူးမှုကို စတင်၍မရပါ"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ဖန်သားပြင်အပြည့် ကြည့်နေသည်"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ထွက်ရန် သင့်ဖန်သားပြင်ထိပ်မှ အောက်သို့ ပွတ်ဆွဲပါ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"နားလည်ပြီ"</string> <string name="accessibility_back" msgid="6530104400086152611">"နောက်သို့"</string> <string name="accessibility_home" msgid="5430449841237966217">"ပင်မစာမျက်နှာ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"မျက်နှာဖြင့် ဖွင့်ထားသည်။ ရှေ့ဆက်ရန် နှိပ်ပါ။"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"မျက်နှာ မှတ်မိသည်။ ရှေ့ဆက်ရန် နှိပ်ပါ။"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"မျက်နှာ မှတ်မိသည်။ ရှေ့ဆက်ရန် လော့ခ်ဖွင့်သင်္ကေတကို နှိပ်ပါ။"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"မျက်နှာဖြင့် ဖွင့်ထားသည်။ ဆက်လုပ်ရန် တို့ပါ။"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"အထောက်အထားစိစစ်ပြီးပြီ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"အထောက်အထားစိစစ်ခြင်းကို ပယ်ဖျက်ရန်"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"နောက်ထပ်ရွေးစရာများ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"သိမ်းထားသည်"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ချိတ်ဆက်မှုဖြုတ်ရန်"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"စသုံးရန်"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"မနက်ဖြန် အလိုအလျောက်ဖွင့်ရန်"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"‘အမြန် မျှဝေပါ’ နှင့် Find My Device ကဲ့သို့ တူးလ်များသည် ဘလူးတုသ်သုံးသည်"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"မနက်ဖြန်နံနက်တွင် ဘလူးတုသ် ပွင့်ပါမည်"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"အသံမျှဝေရန်"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"အသံမျှဝေနေသည်"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ဘက်ထရီ"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"အသံ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"မိုက်ခွက်ပါနားကြပ်"</string> @@ -780,7 +775,7 @@ <string name="keyboard_shortcut_join" msgid="3578314570034512676">"သို့မဟုတ်"</string> <string name="keyboard_shortcut_clear_text" msgid="6631051796030377857">"ရှာဖွေစာလုံး ရှင်းထုတ်ရန်"</string> <string name="keyboard_shortcut_search_list_title" msgid="4271769465397671138">"လက်ကွက်ဖြတ်လမ်းများ"</string> - <string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"ဖြတ်လမ်းလင့်ခ်များ ရှာပါ"</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_input" msgid="5440558509904296233">"စာရိုက်ခြင်း"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"နောက်ထပ်အချက်အလက်များအတွက် တို့ပါ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"နှိုးစက်ပေးမထားပါ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ဖန်သားပြင်လော့ခ် ထည့်ရန်"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"လက်ဗွေ အာရုံခံကိရိယာကို တို့ပါ။ ၎င်းသည် ဖုန်းဘေးရှိ ခလုတ်အတို ဖြစ်သည်"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"လက်ဗွေ အာရုံခံကိရိယာ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"အထောက်အထားစိစစ်ရန်"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"စက်ပစ္စည်းသို့ ဝင်ရန်"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"လျှော့ပြရန် သင်္ကေတ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ပိုပြရန် သင်္ကေတ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"သို့မဟုတ်"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"နောက်သို့ လက်ဟန်"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ပင်မစာမျက်နှာ လက်ဟန်"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"လုပ်ဆောင်ချက်ကီး"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ပြီးပြီ"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ကီးဘုတ်နောက်မီး"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"အဆင့် %2$d အနက် %1$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"အိမ်ထိန်းချုပ်မှုများ"</string> diff --git a/packages/SystemUI/res/values-nb/strings.xml b/packages/SystemUI/res/values-nb/strings.xml index 91ef46672a0a..874bb2871737 100644 --- a/packages/SystemUI/res/values-nb/strings.xml +++ b/packages/SystemUI/res/values-nb/strings.xml @@ -71,28 +71,28 @@ <string name="usb_port_enabled" msgid="531823867664717018">"Registrering av ladere og tilbehør er slått på for USB-porten"</string> <string name="usb_disable_contaminant_detection" msgid="3827082183595978641">"Slå på USB"</string> <string name="learn_more" msgid="4690632085667273811">"Finn ut mer"</string> - <string name="global_action_screenshot" msgid="2760267567509131654">"Skjermdump"</string> + <string name="global_action_screenshot" msgid="2760267567509131654">"Skjermbilde"</string> <string name="global_action_smart_lock_disabled" msgid="6286551337177954859">"Hold ulåst er slått av"</string> <string name="remote_input_image_insertion_text" msgid="4850791636452521123">"har sendt et bilde"</string> - <string name="screenshot_saving_title" msgid="2298349784913287333">"Lagrer skjermdumpen …"</string> - <string name="screenshot_saving_work_profile_title" msgid="5332829607308450880">"Lagrer skjermdumpen i jobbprofilen …"</string> - <string name="screenshot_saving_private_profile" msgid="8934706048497093297">"Lagrer skjermdump i den private profilen"</string> + <string name="screenshot_saving_title" msgid="2298349784913287333">"Lagrer skjermbildet …"</string> + <string name="screenshot_saving_work_profile_title" msgid="5332829607308450880">"Lagrer skjermbildet i jobbprofilen …"</string> + <string name="screenshot_saving_private_profile" msgid="8934706048497093297">"Lagrer skjermbilde i den private profilen"</string> <string name="screenshot_saved_title" msgid="8893267638659083153">"Skjermdumpen er lagret"</string> - <string name="screenshot_failed_title" msgid="3259148215671936891">"Kunne ikke lagre skjermdump"</string> + <string name="screenshot_failed_title" msgid="3259148215671936891">"Kunne ikke lagre skjermbilde"</string> <string name="screenshot_failed_external_display_indication" msgid="6555673132061101936">"Ekstern skjerm"</string> - <string name="screenshot_failed_to_save_user_locked_text" msgid="6156607948256936920">"Enheten må være låst opp før skjermdumpen kan lagres"</string> - <string name="screenshot_failed_to_save_unknown_text" msgid="1506621600548684129">"Prøv å ta skjermdump på nytt"</string> - <string name="screenshot_failed_to_save_text" msgid="7232739948999195960">"Kan ikke lagre skjermdumpen"</string> - <string name="screenshot_failed_to_capture_text" msgid="7818288545874407451">"Appen eller organisasjonen din tillater ikke at du tar skjermdumper"</string> - <string name="screenshot_blocked_by_admin" msgid="5486757604822795797">"Funksjonen for å ta skjermdumper er blokkert av IT-administratoren din"</string> + <string name="screenshot_failed_to_save_user_locked_text" msgid="6156607948256936920">"Enheten må være låst opp før skjermbildet kan lagres"</string> + <string name="screenshot_failed_to_save_unknown_text" msgid="1506621600548684129">"Prøv å ta skjermbilde på nytt"</string> + <string name="screenshot_failed_to_save_text" msgid="7232739948999195960">"Kan ikke lagre skjermbildet"</string> + <string name="screenshot_failed_to_capture_text" msgid="7818288545874407451">"Appen eller organisasjonen din tillater ikke at du tar skjermbilder"</string> + <string name="screenshot_blocked_by_admin" msgid="5486757604822795797">"Funksjonen for å ta skjermbilder er blokkert av IT-administratoren din"</string> <string name="screenshot_edit_label" msgid="8754981973544133050">"Rediger"</string> - <string name="screenshot_edit_description" msgid="3333092254706788906">"Rediger skjermdumpen"</string> + <string name="screenshot_edit_description" msgid="3333092254706788906">"Rediger skjermbildet"</string> <string name="screenshot_share_label" msgid="1653061117238861559">"Del"</string> - <string name="screenshot_share_description" msgid="2861628935812656612">"Del skjermdumpen"</string> - <string name="screenshot_scroll_label" msgid="2930198809899329367">"Utvidet skjermdump"</string> - <string name="screenshot_dismiss_description" msgid="4702341245899508786">"Avvis skjermdumpen"</string> + <string name="screenshot_share_description" msgid="2861628935812656612">"Del skjermbildet"</string> + <string name="screenshot_scroll_label" msgid="2930198809899329367">"Utvidet skjermbilde"</string> + <string name="screenshot_dismiss_description" msgid="4702341245899508786">"Avvis skjermbildet"</string> <string name="screenshot_dismiss_work_profile" msgid="3101530842987697045">"Avvis melding fra jobbprofilen"</string> - <string name="screenshot_preview_description" msgid="7606510140714080474">"Forhåndsvisning av skjermdump"</string> + <string name="screenshot_preview_description" msgid="7606510140714080474">"Forhåndsvisning av skjermbilde"</string> <string name="screenshot_top_boundary_pct" msgid="2520148599096479332">"Øvre grense <xliff:g id="PERCENT">%1$d</xliff:g> prosent"</string> <string name="screenshot_bottom_boundary_pct" msgid="3880821519814946478">"Nedre grense <xliff:g id="PERCENT">%1$d</xliff:g> prosent"</string> <string name="screenshot_left_boundary_pct" msgid="8502323556112287469">"Venstre grense <xliff:g id="PERCENT">%1$d</xliff:g> prosent"</string> @@ -100,8 +100,8 @@ <string name="screenshot_work_profile_notification" msgid="203041724052970693">"Lagret i <xliff:g id="APP">%1$s</xliff:g> i jobbprofilen"</string> <string name="screenshot_private_profile_notification" msgid="1704440899154243171">"Lagret i <xliff:g id="APP">%1$s</xliff:g> i den private profilen"</string> <string name="screenshot_default_files_app_name" msgid="8721579578575161912">"Filer"</string> - <string name="screenshot_detected_template" msgid="7940376642921719915">"<xliff:g id="APPNAME">%1$s</xliff:g> har registrert denne skjermdumpen."</string> - <string name="screenshot_detected_multiple_template" msgid="7644827792093819241">"<xliff:g id="APPNAME">%1$s</xliff:g> og andre åpne apper har registrert denne skjermdumpen."</string> + <string name="screenshot_detected_template" msgid="7940376642921719915">"<xliff:g id="APPNAME">%1$s</xliff:g> har registrert dette skjermbildet."</string> + <string name="screenshot_detected_multiple_template" msgid="7644827792093819241">"<xliff:g id="APPNAME">%1$s</xliff:g> og andre åpne apper har registrert dette skjermbildet."</string> <string name="app_clips_save_add_to_note" msgid="3460200751278069445">"Legg til i notat"</string> <string name="screenrecord_title" msgid="4257171601439507792">"Skjermopptak"</string> <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Behandler skjermopptaket"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Du slutter å ta opp <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Stopp opptaket"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vil du slutte å dele skjermen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Du slutter å dele <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Slutt å dele"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Du slutter å caste <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Stopp castingen"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Lukk"</string> <string name="issuerecord_title" msgid="286627115110121849">"Funksjon for opptak av problemer"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Opptak, databehandlingsproblem"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Pågående varsel for en innsamlingsøkt for et problem"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Feil ved lagring av problemopptaket"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Feil ved start av problemopptaket"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visning i fullskjerm"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"For å gå ut, sveip ned fra toppen av skjermen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Greit"</string> <string name="accessibility_back" msgid="6530104400086152611">"Tilbake"</string> <string name="accessibility_home" msgid="5430449841237966217">"Startside"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Låst opp med ansiktet. Trykk for å fortsette."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Ansiktet er gjenkjent. Trykk for å fortsette."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Ansiktet er gjenkjent. Trykk på lås opp-ikon for å fortsette"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Låst opp med ansiktet. Trykk for å fortsette."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentisert"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Avbryt autentisering"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Flere alternativer"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Lagret"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"koble fra"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiver"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Slå på automatisk i morgen"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funksjoner som Quick Share og Finn enheten min bruker Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth slås på i morgen tidlig"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Del lyd"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Deler lyd"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batteri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Lyd"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Hodetelefoner"</string> @@ -529,7 +524,7 @@ <string name="media_projection_task_switcher_action_back" msgid="5324164224147845282">"Bytt tilbake"</string> <string name="media_projection_task_switcher_notification_channel" msgid="7613206306777814253">"Appbytte"</string> <string name="screen_capturing_disabled_by_policy_dialog_title" msgid="2113331792064527203">"Blokkert av IT-administratoren"</string> - <string name="screen_capturing_disabled_by_policy_dialog_description" msgid="6015975736747696431">"Skjermdumper er deaktivert av enhetsinnstillingene"</string> + <string name="screen_capturing_disabled_by_policy_dialog_description" msgid="6015975736747696431">"Skjermbilder er deaktivert av enhetsinnstillingene"</string> <string name="clear_all_notifications_text" msgid="348312370303046130">"Fjern alt"</string> <string name="manage_notifications_text" msgid="6885645344647733116">"Administrer"</string> <string name="manage_notifications_history_text" msgid="57055985396576230">"Logg"</string> @@ -792,7 +787,7 @@ <string name="keyboard_shortcut_a11y_filter_open_apps" msgid="6175417687221004059">"Viser snarveier som åpner apper"</string> <string name="keyboard_shortcut_a11y_filter_current_app" msgid="7944592357493737911">"Viser snarveier for den gjeldende appen"</string> <string name="group_system_access_notification_shade" msgid="1619028907006553677">"Se varsler"</string> - <string name="group_system_full_screenshot" msgid="5742204844232667785">"Ta skjermdump"</string> + <string name="group_system_full_screenshot" msgid="5742204844232667785">"Ta skjermbilde"</string> <string name="group_system_access_system_app_shortcuts" msgid="8562482996626694026">"Vis snarveier"</string> <string name="group_system_go_back" msgid="2730322046244918816">"Gå tilbake"</string> <string name="group_system_access_home_screen" msgid="4130366993484706483">"Gå til startskjermen"</string> @@ -927,7 +922,7 @@ <string name="tuner_app" msgid="6949280415826686972">"<xliff:g id="APP">%1$s</xliff:g>-appen"</string> <string name="notification_channel_alerts" msgid="3385787053375150046">"Varsler"</string> <string name="notification_channel_battery" msgid="9219995638046695106">"Batteri"</string> - <string name="notification_channel_screenshot" msgid="7665814998932211997">"Skjermdumper"</string> + <string name="notification_channel_screenshot" msgid="7665814998932211997">"Skjermbilder"</string> <string name="notification_channel_instant" msgid="7556135423486752680">"Instant Apps"</string> <string name="notification_channel_setup" msgid="7660580986090760350">"Konfigurering"</string> <string name="notification_channel_storage" msgid="2720725707628094977">"Lagring"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Trykk for å få mer informasjon"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ingen alarm angitt"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"legg inn skjermlåsen"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Trykk på fingeravtrykkssensoren. Det er den korte knappen på siden av telefonen."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingeravtrykkssensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentiser"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"åpne enheten"</string> @@ -1289,8 +1285,8 @@ <string name="rear_display_unfolded_bottom_sheet_title" msgid="6291111173057304055">"Vil du bytte skjerm?"</string> <string name="rear_display_folded_bottom_sheet_description" msgid="6842767125783222695">"Bruk baksidekameraet for å få høyere oppløsning"</string> <string name="rear_display_unfolded_bottom_sheet_description" msgid="7229961336309960201">"Brett ut telefonen for å få høyere oppløsning"</string> - <string name="rear_display_accessibility_folded_animation" msgid="1538121649587978179">"En sammenleggbar enhet blir brettet ut"</string> - <string name="rear_display_accessibility_unfolded_animation" msgid="1946153682258289040">"En sammenleggbar enhet blir snudd"</string> + <string name="rear_display_accessibility_folded_animation" msgid="1538121649587978179">"En foldbar enhet blir brettet ut"</string> + <string name="rear_display_accessibility_unfolded_animation" msgid="1946153682258289040">"En foldbar enhet blir snudd"</string> <string name="quick_settings_rotation_posture_folded" msgid="2430280856312528289">"lagt sammen"</string> <string name="quick_settings_rotation_posture_unfolded" msgid="6372316273574167114">"åpen"</string> <string name="rotation_tile_with_posture_secondary_label_template" msgid="7648496484163318886">"%1$s/%2$s"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Skjul-ikon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Vis-ikon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"eller"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Tilbakebevegelse"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Startskjermbevegelse"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Handlingstast"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Ferdig"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Bakgrunnslys for tastatur"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivå %1$d av %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Hjemkontroller"</string> diff --git a/packages/SystemUI/res/values-ne/strings.xml b/packages/SystemUI/res/values-ne/strings.xml index 10d64b79383a..40ec98b0f694 100644 --- a/packages/SystemUI/res/values-ne/strings.xml +++ b/packages/SystemUI/res/values-ne/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का सामग्री रेकर्ड हुन छाड्ने छन्"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"रेकर्ड गर्न छाड्नुहोस्"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"स्क्रिन सेयर गर्न छाड्ने हो?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का सामग्री सेयर हुन छाड्ने छन्"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"सेयर गर्न छाड्नुहोस्"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> का सामग्री कास्ट हुन छाड्ने छन्"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"कास्ट गर्न छाड्नुहोस्"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"बन्द गर्नुहोस्"</string> <string name="issuerecord_title" msgid="286627115110121849">"समस्यासम्बन्धी जानकारी रेकर्ड गर्ने रेकर्डर"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"समस्याको रेकर्डिङ प्रोसेस गरिँदै छ"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"समस्यासम्बन्धी जानकारी सङ्कलन गर्ने जारी सत्रसम्बन्धी सूचना"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"समस्याको रेकर्डिङ सेभ गर्ने क्रममा त्रुटि भयो"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"समस्यासम्बन्धी जानकारी रेकर्ड गर्न थाल्ने क्रममा त्रुटि भयो"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"फुल स्क्रिन हेरिँदै छ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"यहाँबाट बाहिरिन स्क्रिनको सिरानबाट तलतिर स्वाइप गर्नुहोस्"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"बुझेँ"</string> <string name="accessibility_back" msgid="6530104400086152611">"पछाडि"</string> <string name="accessibility_home" msgid="5430449841237966217">"गृह"</string> @@ -170,7 +167,7 @@ <string name="accessibility_wallet_button" msgid="1458258783460555507">"Wallet"</string> <string name="accessibility_qr_code_scanner_button" msgid="7521277927692910795">"QR कोड स्क्यानर"</string> <string name="accessibility_unlock_button" msgid="3613812140816244310">"अनलक गरिएको छ"</string> - <string name="accessibility_lock_icon" msgid="661492842417875775">"यन्त्र लक गरिएको छ"</string> + <string name="accessibility_lock_icon" msgid="661492842417875775">"डिभाइस लक गरिएको छ"</string> <string name="accessibility_scanning_face" msgid="3093828357921541387">"अनुहार स्क्यान गर्दै"</string> <string name="accessibility_send_smart_reply" msgid="8885032190442015141">"पठाउनुहोस्"</string> <string name="cancel" msgid="1089011503403416730">"रद्द गर्नुहोस्"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"अनुहार प्रयोग गरी अनलक गरियो। जारी राख्न थिच्नुहोस्।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"अनुहार पहिचान गरियो। जारी राख्न थिच्नुहोस्।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"अनुहार पहिचान गरियो। जारी राख्न अनलक आइकनमा थिच्नुहोस्।"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"अनुहार प्रयोग गरी अनलक गरिएको छ। जारी राख्न ट्याप गर्नुहोस्।"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"प्रमाणीकरण गरियो"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"प्रमाणीकरण रद्द गर्नुहोस्"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"थप विकल्पहरू"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"सेभ गरिएको छ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"डिस्कनेक्ट गर्नुहोस्"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"एक्टिभेट गर्नुहोस्"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"भोलि स्वतः अन गर्नुहोस्"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"क्विक सेयर र Find My Device जस्ता सुविधाहरू प्रयोग गर्न ब्लुटुथ चाहिन्छ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ब्लुटुथ भोलि बिहान अन हुने छ"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"अडियो सेयर गर्नुहोस्"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"अडियो सेयर गरिँदै छ"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ब्याट्री"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"अडियो"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"हेडसेट"</string> @@ -574,7 +569,7 @@ <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"तपाईंको संगठनले तपाईंको कार्य प्रोफाइलमा एउटा प्रमाणपत्र सम्बन्धी अख्तियार सुविधा स्थापित गऱ्यो। तपाईंको सुरक्षित नेटवर्क ट्राफिकको अनुगमन वा परिमार्जन हुनसक्छ।"</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"तपाईंको संगठनले तपाईंको कार्य प्रोफाइलमा एउटा प्रमाणपत्र सम्बन्धी अख्तियार सुविधा स्थापना गरेको छ। तपाईंको सुरक्षित नेटवर्क ट्राफिकको अनुगमन वा परिमार्जन हुनसक्छ।"</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"यस डिभाइसमा एउटा प्रमाणपत्र सम्बन्धी अख्तियार सुविधा स्थापना गरिएको छ। तपाईंको सुरक्षित नेटवर्कको ट्राफिकको अनुगमन वा परिमार्जन हुनसक्छ।"</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"तपाईंका प्रशासकले तपाईंको डिभाइसमा ट्राफिकको अनुगमन गर्ने नेटवर्क लग गर्ने प्रक्रियालाई सक्रिय गर्नुभएको छ।"</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> @@ -1070,7 +1065,7 @@ <string name="controls_dialog_ok" msgid="2770230012857881822">"थप्नुहोस्"</string> <string name="controls_dialog_remove" msgid="3775288002711561936">"हटाउनुहोस्"</string> <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_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_trivial_controls_dialog_title" msgid="7593188157655036677">"लक स्क्रिनबाटै डिभाइसहरू नियन्त्रण गर्ने हो?"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"थप जानकारी प्राप्त गर्न ट्याप गर्नुहोस्"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"अलार्म राखिएको छैन"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"स्क्रिन लक हाल्नुहोस्"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"फिंगरप्रिन्ट सेन्सरमा छुनुहोस्। यो फोनको साइडमा भएको अलि सानो चाहिँ बटन हो"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"फिंगरप्रिन्ट सेन्सर"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"प्रमाणित गर्नुहोस्"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"डिभाइस हाल्नुहोस्"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"\"कोल्याप्स गर्नुहोस्\" आइकन"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"\"एक्स्पान्ड गर्नुहोस्\" आइकन"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"वा"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ब्याक जेस्चर"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"होम जेस्चर"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"एक्सन की"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"सम्पन्न भयो"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"किबोर्ड ब्याकलाइट"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d मध्ये %1$d औँ स्तर"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"होम कन्ट्रोलहरू"</string> diff --git a/packages/SystemUI/res/values-night/colors.xml b/packages/SystemUI/res/values-night/colors.xml index d377e0196e98..21f1cfbe4c9e 100644 --- a/packages/SystemUI/res/values-night/colors.xml +++ b/packages/SystemUI/res/values-night/colors.xml @@ -104,10 +104,6 @@ <color name="people_tile_background">@color/material_dynamic_secondary20</color> - <!-- Internet Dialog --> - <color name="connected_network_primary_color">@color/material_dynamic_primary80</color> - <color name="connected_network_secondary_color">@color/material_dynamic_secondary80</color> - <!-- Keyboard shortcut helper dialog --> <color name="ksh_key_item_color">@*android:color/system_on_surface_variant_dark</color> </resources> diff --git a/packages/SystemUI/res/values-night/styles.xml b/packages/SystemUI/res/values-night/styles.xml index 546bf1c3ac95..e9dd039f38c2 100644 --- a/packages/SystemUI/res/values-night/styles.xml +++ b/packages/SystemUI/res/values-night/styles.xml @@ -60,18 +60,6 @@ <item name="android:windowOptOutEdgeToEdgeEnforcement">true</item> </style> - <style name="TextAppearance.InternetDialog.Active"> - <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item> - <item name="android:textSize">16sp</item> - <item name="android:textColor">@color/material_dynamic_primary80</item> - <item name="android:textDirection">locale</item> - </style> - - <style name="TextAppearance.InternetDialog.Secondary.Active"> - <item name="android:textSize">14sp</item> - <item name="android:textColor">@color/material_dynamic_secondary80</item> - </style> - <style name="ShortcutHelperTheme" parent="@style/ShortcutHelperThemeCommon"> <item name="android:windowLightNavigationBar">false</item> </style> diff --git a/packages/SystemUI/res/values-nl/strings.xml b/packages/SystemUI/res/values-nl/strings.xml index c990cab72e5b..7dcceab8e47c 100644 --- a/packages/SystemUI/res/values-nl/strings.xml +++ b/packages/SystemUI/res/values-nl/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Je stopt met het opnemen van <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Opname stoppen"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Scherm delen stoppen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Je stopt met het delen van <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Delen stoppen"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Je stopt met het casten van <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Casten stoppen"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Sluiten"</string> <string name="issuerecord_title" msgid="286627115110121849">"Problemen opnemen"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Probleemopname verwerken"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Melding over actieve activiteit voor een sessie voor probleemverzameling"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Fout bij opslaan van probleemopname"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Fout bij starten van probleemopname"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Volledig scherm wordt getoond"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Swipe omlaag vanaf de bovenkant van het scherm om af te sluiten"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Terug"</string> <string name="accessibility_home" msgid="5430449841237966217">"Startscherm"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Ontgrendeld via gezicht. Druk om door te gaan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Gezicht herkend. Druk om door te gaan."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Gezicht herkend. Druk op het ontgrendelicoon."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Ontgrendeld via gezicht. Tik om door te gaan."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Geverifieerd"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Verificatie annuleren"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Meer opties"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Opgeslagen"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"loskoppelen"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activeren"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Morgen automatisch aanzetten"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Functies zoals Quick Share en Vind mijn apparaat gebruiken bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth wordt morgenochtend aangezet"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Audio delen"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audio delen"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batterijniveau"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Schermopname"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Starten"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Stoppen"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Probleem vastleggen"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Probleem opnemen"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Starten"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Stoppen"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Bugrapport"</string> @@ -599,7 +594,7 @@ <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"Instellingen"</string> <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Live ondertiteling"</string> <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"Volume verlaagd naar een veiliger niveau"</string> - <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Het hoofdtelefoonvolume is langer dan de aanbevolen tijd hoog geweest"</string> + <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Het koptelefoonvolume is langer dan de aanbevolen tijd hoog geweest"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Het hoofdtelefoonvolume overschrijdt de veiligheidslimiet voor deze week"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"Blijven luisteren"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"Volume omlaag"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tik hier voor meer informatie"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Geen wekker gezet"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"schermvergrendeling invoeren"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Plaats je vinger op de vingerafdruksensor. Dat is de kortere knop aan de zijkant van de telefoon."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Vingerafdruksensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"verifiëren"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"apparaat opgeven"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Icoon voor samenvouwen"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Icoon voor uitvouwen"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"of"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gebaar voor terug"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gebaar voor startscherm"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Actietoets"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klaar"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Achtergrondverlichting van toetsenbord"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Niveau %1$d van %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Bediening voor in huis"</string> diff --git a/packages/SystemUI/res/values-or/strings.xml b/packages/SystemUI/res/values-or/strings.xml index 49a3268efca4..8ce40d43f2c1 100644 --- a/packages/SystemUI/res/values-or/strings.xml +++ b/packages/SystemUI/res/values-or/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ଆପଣ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>କୁ ରେକର୍ଡ କରିବା ବନ୍ଦ କରିବେ"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ରେକର୍ଡିଂ ବନ୍ଦ କରନ୍ତୁ"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ସ୍କ୍ରିନ ସେୟାର କରିବା ବନ୍ଦ କରିବେ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"ଆପଣ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>କୁ ସେୟାର କରିବା ବନ୍ଦ କରିବେ"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ସେୟାର କରିବା ବନ୍ଦ କରନ୍ତୁ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"ଆପଣ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>କୁ କାଷ୍ଟ କରିବା ବନ୍ଦ କରିବେ"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"କାଷ୍ଟ କରିବା ବନ୍ଦ କରନ୍ତୁ"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ବନ୍ଦ କରନ୍ତୁ"</string> <string name="issuerecord_title" msgid="286627115110121849">"ସମସ୍ୟା ରେକର୍ଡର"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ସମସ୍ୟାର ରେକର୍ଡିଂର ପ୍ରକ୍ରିୟାକରଣ"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ଏକ ସମସ୍ୟା ସଂଗ୍ରହ ସେସନ ପାଇଁ ଚାଲୁଥିବା ବିଜ୍ଞପ୍ତି"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"ରେକର୍ଡିଂରେ ସମସ୍ୟା"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"ସେୟାର କରନ୍ତୁ"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"ସମସ୍ୟାର ରେକର୍ଡିଂକୁ ସେଭ କରାଯାଇଛି"</string> - <string name="issuerecord_save_text" msgid="1205985304551521495">"ଦେଖିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string> + <string name="issuerecord_save_text" msgid="1205985304551521495">"ଭ୍ୟୁ କରିବାକୁ ଟାପ କରନ୍ତୁ"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"ସମସ୍ୟାର ରେକର୍ଡିଂ କରିବାରେ ତ୍ରୁଟି"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ସମସ୍ୟାର ରେକର୍ଡିଂ ଆରମ୍ଭ କରିବାରେ ତ୍ରୁଟି"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ପୂର୍ଣ୍ଣ ସ୍କ୍ରିନରେ ଦେଖିବା"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ବାହାରି ଯିବା ପାଇଁ ଆପଣଙ୍କ ସ୍କ୍ରିନର ଶୀର୍ଷରୁ ତଳକୁ ସ୍ୱାଇପ କରନ୍ତୁ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ବୁଝିଗଲି"</string> <string name="accessibility_back" msgid="6530104400086152611">"ଫେରନ୍ତୁ"</string> <string name="accessibility_home" msgid="5430449841237966217">"ହୋମ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ଫେସ ମାଧ୍ୟମରେ ଅନଲକ କରାଯାଇଛି। ଜାରି ରଖିବାକୁ ଦବାନ୍ତୁ।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ଫେସ ଚିହ୍ନଟ କରାଯାଇଛି। ଜାରି ରଖିବାକୁ ଦବାନ୍ତୁ।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ଫେସ ଚିହ୍ନଟ କରାଯାଇଛି। ଜାରି ରଖିବାକୁ ଅନଲକ ଆଇକନ ଦବାନ୍ତୁ।"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ଫେସ ମାଧ୍ୟମରେ ଅନଲକ କରାଯାଇଛି। ଜାରି ରଖିବାକୁ ଟାପ କରନ୍ତୁ।"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ପ୍ରାମାଣିକତା ହୋଇଛି"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ପ୍ରମାଣୀକରଣକୁ ବାତିଲ କରନ୍ତୁ"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ଅଧିକ ବିକଳ୍ପ"</string> @@ -225,7 +223,7 @@ <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_touch_sensor" msgid="2817887108047658975">"ଟିପଚିହ୍ନ ସେନସରକୁ ସ୍ପର୍ଶ କରନ୍ତୁ"</string> <string name="fingerprint_dialog_authenticated_confirmation" msgid="1603899612957562862">"ଜାରି ରଖିବାକୁ ଅନଲକ ଆଇକନ ଦବାନ୍ତୁ"</string> <string name="fingerprint_dialog_use_fingerprint_instead" msgid="5542430577183894219">"ଫେସ ଚିହ୍ନଟ କରାଯାଇନାହିଁ। ଟିପଚିହ୍ନ ବ୍ୟବହାର କରନ୍ତୁ।"</string> <!-- no translation found for keyguard_face_failed_use_fp (7140293906176164263) --> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ସେଭ କରାଯାଇଛି"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ଡିସକନେକ୍ଟ କରନ୍ତୁ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ଚାଲୁ କରନ୍ତୁ"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ଆସନ୍ତାକାଲି ସ୍ୱତଃ ଚାଲୁ ହେବ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share ଏବଂ Find My Device ପରି ଫିଚରଗୁଡ଼ିକ ବ୍ଲୁଟୁଥ ବ୍ୟବହାର କରେ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ବ୍ଲୁଟୁଥ ଆସନ୍ତା କାଲି ସକାଳେ ଚାଲୁ ହେବ"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ଅଡିଓ ସେୟାର କରନ୍ତୁ"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ଅଡିଓ ସେୟାର କରାଯାଉଛି"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ବ୍ୟାଟେରୀ"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ଅଡିଓ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ହେଡସେଟ୍"</string> @@ -381,7 +376,7 @@ <string name="qs_record_issue_label" msgid="8166290137285529059">"ସମସ୍ୟାର ରେକର୍ଡ କରନ୍ତୁ"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"ଆରମ୍ଭ କରନ୍ତୁ"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"ବନ୍ଦ କରନ୍ତୁ"</string> - <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"ବଗ୍ ରିପୋର୍ଟ୍"</string> + <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"ବଗ ରିପୋର୍ଟ"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"ଆପଣଙ୍କ ଡିଭାଇସ ଅନୁଭୂତିର କେଉଁ ଅଂଶ ପ୍ରଭାବିତ ହୋଇଛି?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"ସମସ୍ୟାର ପ୍ରକାର ଚୟନ କରନ୍ତୁ"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"ସ୍କ୍ରିନ ରେକର୍ଡ"</string> @@ -499,7 +494,7 @@ <string name="guest_notification_app_name" msgid="2110425506754205509">"ଅତିଥି ମୋଡ"</string> <string name="guest_notification_session_active" msgid="5567273684713471450">"ଆପଣ ଅତିଥି ମୋଡରେ ଅଛନ୍ତି"</string> <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_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_message" msgid="6702834122128031833">"ଏହି ୟୁଜରଙ୍କ ସମସ୍ତ ଆପ୍ ଓ ଡାଟା ଡିଲିଟ୍ ହେବ।"</string> @@ -566,7 +561,7 @@ <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"ନେଟୱାର୍କ ଲଗିଂ"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"CA ସର୍ଟିଫିକେଟ୍"</string> - <string name="monitoring_button_view_policies" msgid="3869724835853502410">"ପଲିସୀ ଦେଖନ୍ତୁ"</string> + <string name="monitoring_button_view_policies" msgid="3869724835853502410">"ନୀତିଗୁଡ଼ିକୁ ଭ୍ୟୁ କରନ୍ତୁ"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"ନିୟନ୍ତ୍ରଣଗୁଡ଼ିକୁ ଦେଖନ୍ତୁ"</string> <string name="monitoring_description_named_management" msgid="505833016545056036">"ଏହି ଡିଭାଇସଟି <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>ର ଅଟେ।\n\nଆପଣଙ୍କ IT ଆଡମିନ ସେଟିଂସ, କର୍ପୋରେଟ ଆକ୍ସେସ, ଆପ୍ସ, ଆପଣଙ୍କ ଡିଭାଇସ ସହ ସମ୍ବନ୍ଧିତ ଡାଟା ଏବଂ ଆପଣଙ୍କ ଡିଭାଇସର ଲୋକେସନ ସୂଚନାକୁ ନିରୀକ୍ଷଣ ଏବଂ ପରିଚାଳନା କରିପାରିବେ।\n\nଅଧିକ ସୂଚନା ପାଇଁ, ଆପଣଙ୍କ IT ଆଡମିନଙ୍କ ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।"</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> ଏହି ଡିଭାଇସ ସହ ସମ୍ବନ୍ଧିତ ଡାଟା ଆକ୍ସେସ କରିବା, ଆପଗୁଡ଼ିକୁ ପରିଚାଳନା କରିବା ଏବଂ ଏହି ଡିଭାଇସର ସେଟିଂସ ବଦଳାଇବାକୁ ସକ୍ଷମ ହୋଇପାରେ।\n\nଯଦି ଆପଣଙ୍କର କିଛି ପ୍ରଶ୍ନ ଅଛି, ତେବେ <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g> ସହ କଣ୍ଟାକ୍ଟ କରନ୍ତୁ।"</string> @@ -574,7 +569,7 @@ <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"ଏହି ଡିଭାଇସରେ ଆପଣଙ୍କ ସଂସ୍ଥା ଏକ ସର୍ଟିଫିକେଟ୍ ଅଥରିଟି ଇନଷ୍ଟଲ୍ କରିଛନ୍ତି। ଆପଣଙ୍କ ସୁରକ୍ଷିତ ନେଟୱର୍କ ଟ୍ରାଫିକ୍ ନୀରିକ୍ଷଣ କିମ୍ବା ସଂଶୋଧନ କରାଯାଇ ପାରେ।"</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"ଆପଣଙ୍କ ୱର୍କ ପ୍ରୋଫାଇଲରେ ଆପଣଙ୍କ ସଂସ୍ଥା ଏକ ସର୍ଟିଫିକେଟ୍ ଅଥରିଟି ଇନଷ୍ଟଲ୍ କରିଛନ୍ତି। ଆପଣଙ୍କ ସୁରକ୍ଷିତ ନେଟୱର୍କ ଟ୍ରାଫିକ୍ ନୀରିକ୍ଷଣ କିମ୍ବା ସଂଶୋଧନ କରାଯାଇ ପାରେ।"</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ଏହି ଡିଭାଇସରେ ଏକ ସର୍ଟିଫିକେଟ୍ ଅଥରିଟି ଇନଷ୍ଟଲ୍ କରାଯାଇଛି। ଆପଣଙ୍କ ସୁରକ୍ଷିତ ନେଟୱର୍କ ଟ୍ରାଫିକ୍ ନୀରିକ୍ଷଣ କିମ୍ବା ସଂଶୋଧନ କରାଯାଇ ପାରେ।"</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"ଆପଣଙ୍କ ଆଡମିନ୍ ନେଟୱର୍କ ଲଗଇନ୍ କରିବା ଅନ୍ କରିଛନ୍ତି, ଯାହା ଆପଣଙ୍କ ଡିଭାଇସରେ ଟ୍ରାଫିକ୍ ନୀରିକ୍ଷଣ କରେ।"</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> @@ -615,7 +610,7 @@ <string name="screen_pinning_toast_recents_invisible" msgid="6850978077443052594">"ଏହି ଆପକୁ ଅନପିନ କରିବାକୁ, \"ବ୍ୟାକ\" ଏବଂ \"ହୋମ\" ବଟନକୁ ସ୍ପର୍ଶ କରି ଦବାଇ ଧରନ୍ତୁ"</string> <string name="screen_pinning_toast_gesture_nav" msgid="170699893395336705">"ଏହି ଆପକୁ ଅନପିନ୍ କରିବାକୁ, ଉପରକୁ ସ୍ୱାଇପ୍ କରି ଧରି ରଖନ୍ତୁ"</string> <string name="screen_pinning_positive" msgid="3285785989665266984">"ବୁଝିଗଲି"</string> - <string name="screen_pinning_negative" msgid="6882816864569211666">"ନାହିଁ, ଥାଉ"</string> + <string name="screen_pinning_negative" msgid="6882816864569211666">"ନା, ଧନ୍ୟବାଦ"</string> <string name="screen_pinning_start" msgid="7483998671383371313">"ଆପ୍ ପିନ୍ କରାଯାଇଛି"</string> <string name="screen_pinning_exit" msgid="4553787518387346893">"ଆପ୍ ଅନପିନ୍ କରାଯାଇଛି"</string> <string name="stream_voice_call" msgid="7468348170702375660">"କଲ କରନ୍ତୁ"</string> @@ -811,7 +806,7 @@ <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରିବା ସମୟରେ ଡାହାଣପଟର ବା ତଳର ଆପକୁ ସୁଇଚ କରନ୍ତୁ"</string> <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରିବା ସମୟରେ ବାମପଟର ବା ଉପରର ଆପକୁ ସୁଇଚ କରନ୍ତୁ"</string> <string name="system_multitasking_replace" msgid="7410071959803642125">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ସମୟରେ: କୌଣସି ଆପକୁ ଗୋଟିଏରୁ ଅନ୍ୟ ଏକ ଆପରେ ବଦଳାନ୍ତୁ"</string> - <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"ଇନପୁଟ କରନ୍ତୁ"</string> + <string name="keyboard_shortcut_group_input" msgid="6888282716546625610">"ଇନପୁଟ"</string> <string name="input_switch_input_language_next" msgid="3782155659868227855">"ପରବର୍ତ୍ତୀ ଭାଷାକୁ ସୁଇଚ କରନ୍ତୁ"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"ପୂର୍ବବର୍ତ୍ତୀ ଭାଷାକୁ ସୁଇଚ କରନ୍ତୁ"</string> <string name="input_access_emoji" msgid="8105642858900406351">"ଇମୋଜି ଆକ୍ସେସ କରନ୍ତୁ"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ଅଧିକ ସୂଚନା ପାଇଁ ଟାପ୍ କରନ୍ତୁ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ଆଲାରାମ ସେଟ ହୋଇନାହିଁ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ସ୍କ୍ରିନ ଲକ ଲେଖନ୍ତୁ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ଟିପଚିହ୍ନ ସେନ୍ସରକୁ ସ୍ପର୍ଶ କରନ୍ତୁ ଏହା ଫୋନର ପାର୍ଶ୍ୱରେ ଥିବା ଛୋଟ ବଟନ ଅଟେ"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ଟିପଚିହ୍ନ ସେନ୍ସର୍"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ପ୍ରମାଣୀକରଣ କରନ୍ତୁ"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ଡିଭାଇସ୍ ବିଷୟରେ ସୂଚନା ଲେଖନ୍ତୁ"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ଆଇକନକୁ ସଙ୍କୁଚିତ କରନ୍ତୁ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ଆଇକନକୁ ବିସ୍ତାର କରନ୍ତୁ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"କିମ୍ବା"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ବେକ ଜେଶ୍ଚର"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ହୋମ ଜେଶ୍ଚର"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ଆକ୍ସନ କୀ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ହୋଇଗଲା"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"କୀବୋର୍ଡ ବେକଲାଇଟ"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$dରୁ %1$d ନମ୍ବର ଲେଭେଲ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ହୋମ କଣ୍ଟ୍ରୋଲ୍ସ"</string> diff --git a/packages/SystemUI/res/values-pa/strings.xml b/packages/SystemUI/res/values-pa/strings.xml index 6a7e9e839915..093c44e99a00 100644 --- a/packages/SystemUI/res/values-pa/strings.xml +++ b/packages/SystemUI/res/values-pa/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ਤੁਸੀਂ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ਨੂੰ ਰਿਕਾਰਡ ਕਰਨਾ ਬੰਦ ਕਰ ਦੇਵੋਗੇ"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ਰਿਕਾਰਡਿੰਗ ਬੰਦ ਕਰੋ"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"ਕੀ ਸਕ੍ਰੀਨ ਨੂੰ ਸਾਂਝਾ ਕਰਨਾ ਬੰਦ ਕਰਨਾ ਹੈ?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"ਤੁਸੀਂ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ਨੂੰ ਸਾਂਝਾ ਕਰਨਾ ਬੰਦ ਕਰ ਦੇਵੋਗੇ"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"ਸਾਂਝਾਕਰਨ ਬੰਦ ਕਰੋ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"ਤੁਸੀਂ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ਨੂੰ ਕਾਸਟ ਕਰਨਾ ਬੰਦ ਕਰ ਦੇਵੋਗੇ"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ਕਾਸਟ ਕਰਨਾ ਬੰਦ ਕਰੋ"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ਬੰਦ ਕਰੋ"</string> <string name="issuerecord_title" msgid="286627115110121849">"ਸਮੱਸਿਆ ਰਿਕਾਰਡਰ"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ਸਮੱਸਿਆ ਰਿਕਾਰਡਿੰਗ ਪ੍ਰਕਿਰਿਆ-ਅਧੀਨ ਹੈ"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ਸਮੱਸਿਆ ਬਾਰੇ ਜਾਣਕਾਰੀ ਇਕੱਤਰ ਕਰਨ ਵਾਲੇ ਸੈਸ਼ਨ ਸੰਬੰਧੀ ਨਿਰੰਤਰ ਸੂਚਨਾ"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"ਸਮੱਸਿਆ ਰਿਕਾਰਡਿੰਗ ਰੱਖਿਅਤ ਕਰਨ ਵੇਲੇ ਗੜਬੜ ਹੋ ਗਈ"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ਸਮੱਸਿਆ ਰਿਕਾਰਡਿੰਗ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਵੇਲੇ ਗੜਬੜ ਹੋ ਗਈ"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ਪੂਰੀ ਸਕ੍ਰੀਨ \'ਤੇ ਦੇਖਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ਬਾਹਰ ਜਾਣ ਲਈ, ਆਪਣੀ ਸਕ੍ਰੀਨ ਦੇ ਸਿਖਰ ਤੋਂ ਹੇਠਾਂ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ਸਮਝ ਲਿਆ"</string> <string name="accessibility_back" msgid="6530104400086152611">"ਪਿੱਛੇ"</string> <string name="accessibility_home" msgid="5430449841237966217">"ਘਰ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ਚਿਹਰੇ ਰਾਹੀਂ ਅਣਲਾਕ ਕੀਤਾ ਗਿਆ। ਜਾਰੀ ਰੱਖਣ ਲਈ ਦਬਾਓ।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ਚਿਹਰੇ ਦੀ ਪਛਾਣ ਹੋਈ। ਜਾਰੀ ਰੱਖਣ ਲਈ ਦਬਾਓ।"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ਚਿਹਰੇ ਦੀ ਪਛਾਣ ਹੋਈ। ਜਾਰੀ ਰੱਖਣ ਲਈ \'ਅਣਲਾਕ ਕਰੋ\' ਪ੍ਰਤੀਕ ਨੂੰ ਦਬਾਓ।"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ਚਿਹਰੇ ਰਾਹੀਂ ਅਣਲਾਕ ਕੀਤਾ ਗਿਆ। ਜਾਰੀ ਰੱਖਣ ਲਈ ਟੈਪ ਕਰੋ।"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ਪ੍ਰਮਾਣਿਤ ਹੋਇਆ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ਪ੍ਰਮਾਣੀਕਰਨ ਰੱਦ ਕਰੋ"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ਹੋਰ ਵਿਕਲਪ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"ਰੱਖਿਅਤ ਕੀਤਾ ਗਿਆ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ਡਿਸਕਨੈਕਟ ਕਰੋ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ਕਿਰਿਆਸ਼ੀਲ ਕਰੋ"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"ਕੱਲ੍ਹ ਨੂੰ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਚਾਲੂ ਹੋ ਜਾਵੇਗਾ"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ਕਵਿੱਕ ਸ਼ੇਅਰ ਅਤੇ Find My Device ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬਲੂਟੁੱਥ ਵਰਤਦੀਆਂ ਹਨ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"ਬਲੂਟੁੱਥ ਕੱਲ੍ਹ ਸਵੇਰੇ ਚਾਲੂ ਹੋ ਜਾਵੇਗਾ"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ਆਡੀਓ ਨੂੰ ਸਾਂਝਾ ਕਰੋ"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ਆਡੀਓ ਨੂੰ ਸਾਂਝਾ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ਬੈਟਰੀ"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ਆਡੀਓ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ਹੈੱਡਸੈੱਟ"</string> @@ -586,7 +581,7 @@ <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"ਇਸ ਡੀਵਾਈਸ ਦਾ ਪ੍ਰਬੰਧਨ ਤੁਹਾਡੇ ਮਾਂ-ਪਿਓ ਵੱਲੋਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਤੁਹਾਡੇ ਮਾਂ-ਪਿਓ ਤੁਹਾਡੀਆਂ ਐਪਾਂ ਦੀ ਵਰਤੋਂ, ਤੁਹਾਡੇ ਟਿਕਾਣੇ ਅਤੇ ਤੁਹਾਡੇ ਸਕ੍ਰੀਨ ਸਮੇਂ ਵਰਗੀ ਜਾਣਕਾਰੀ ਨੂੰ ਦੇਖ ਅਤੇ ਉਸਦਾ ਪ੍ਰਬੰਧਨ ਕਰ ਸਕਦੇ ਹਨ।"</string> <string name="legacy_vpn_name" msgid="4174223520162559145">"VPN"</string> <string name="keyguard_indication_trust_unlocked" msgid="7395154975733744547">"ਟਰੱਸਟ-ਏਜੰਟ ਵੱਲੋਂ ਅਣਲਾਕ ਰੱਖਿਆ ਗਿਆ"</string> - <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"ਡੀਵਾਈਸ ਲਾਕ ਕੀਤਾ ਗਿਆ ਸੀ, ਬਹੁਤ ਸਾਰੀਆਂ ਪ੍ਰਮਾਣੀਕਰਨ ਕੋਸ਼ਿਸ਼ਾਂ ਕੀਤੀਆਂ ਗਈਆਂ"</string> + <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"ਬਹੁਤ ਵਾਰੀ ਪ੍ਰਮਾਣੀਕਰਨ ਦੀਆਂ ਕੋਸ਼ਿਸ਼ਾਂ ਕਰਨ ਕਰਕੇ ਡੀਵਾਈਸ ਲਾਕ ਹੋ ਗਿਆ ਸੀ"</string> <string name="keyguard_indication_after_adaptive_auth_lock" msgid="2323400645470712787">"ਡੀਵਾਈਸ ਲਾਕ ਹੈ\nਪ੍ਰਮਾਣੀਕਰਨ ਅਸਫਲ ਰਿਹਾ"</string> <string name="zen_mode_and_condition" msgid="5043165189511223718">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string> <string name="accessibility_volume_settings" msgid="1458961116951564784">"ਧੁਨੀ ਸੈਟਿੰਗਾਂ"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ ਟੈਪ ਕਰੋ"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ਕੋਈ ਅਲਾਰਮ ਸੈੱਟ ਨਹੀਂ"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ਸਕ੍ਰੀਨ ਲਾਕ ਦਾਖਲ ਕਰੋ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ ਨੂੰ ਸਪਰਸ਼ ਕਰੋ। ਇਹ ਫ਼ੋਨ ਦੇ ਇੱਕ ਪਾਸੇ ਦਿੱਤਾ ਛੋਟਾ ਜਿਹਾ ਬਟਨ ਹੈ"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ਪ੍ਰਮਾਣਿਤ ਕਰੋ"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ਡੀਵਾਈਸ ਵਿੱਚ ਦਾਖਲ ਹੋਵੋ"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ਪ੍ਰਤੀਕ ਨੂੰ ਸਮੇਟੋ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ਪ੍ਰਤੀਕ ਦਾ ਵਿਸਤਾਰ ਕਰੋ"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ਜਾਂ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ਪਿੱਛੇ ਜਾਣ ਦਾ ਇਸ਼ਾਰਾ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ਹੋਮ \'ਤੇ ਜਾਣ ਦਾ ਇਸ਼ਾਰਾ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ਕਾਰਵਾਈ ਕੁੰਜੀ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ਹੋ ਗਿਆ"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ਕੀ-ਬੋਰਡ ਬੈਕਲਾਈਟ"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d ਵਿੱਚੋਂ %1$d ਪੱਧਰ"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ਹੋਮ ਕੰਟਰੋਲ"</string> diff --git a/packages/SystemUI/res/values-pl/strings.xml b/packages/SystemUI/res/values-pl/strings.xml index c154fc9bb2f3..2bab615a9140 100644 --- a/packages/SystemUI/res/values-pl/strings.xml +++ b/packages/SystemUI/res/values-pl/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 systemu"</string> + <string name="app_label" msgid="4811759950673118541">"Interfejs systemu"</string> <string name="battery_low_title" msgid="5319680173344341779">"Włączyć Oszczędzanie baterii?"</string> <string name="battery_low_description" msgid="3282977755476423966">"Masz już tylko <xliff:g id="PERCENTAGE">%s</xliff:g> baterii. Oszczędzanie baterii uruchamia ciemny motyw, ogranicza aktywność w tle i opóźnia powiadomienia."</string> <string name="battery_low_intro" msgid="5148725009653088790">"Oszczędzanie baterii uruchamia ciemny motyw, ogranicza aktywność w tle i opóźnia powiadomienia."</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Przestaniesz nagrywać treści z aplikacji <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Zatrzymaj nagrywanie"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Zatrzymać udostępnianie ekranu?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Przestaniesz udostępniać treści z aplikacji <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Zatrzymaj udostępnianie"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Przestaniesz przesyłać treści z aplikacji <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Zatrzymaj przesyłanie"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zamknij"</string> <string name="issuerecord_title" msgid="286627115110121849">"Rejestrator problemów"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Przetwarzam nagranie problemu"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Powiadomienie o trwającej aktywności sesji nagrywania ekranu"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Błąd podczas zapisywania nagrania problemu"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Błąd podczas rozpoczynania nagrania problemu"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Włączony pełny ekran"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Aby zamknąć, przesuń palcem w dół z góry ekranu"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Wróć"</string> <string name="accessibility_home" msgid="5430449841237966217">"Ekran główny"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Odblokowano rozpoznawaniem twarzy. Kliknij, aby kontynuować."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Twarz rozpoznana. Kliknij, aby kontynuować."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Twarz rozpoznana. Aby kontynuować, kliknij ikonę odblokowywania."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Odblokowano skanem twarzy. Kliknij, aby przejść dalej."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Uwierzytelniono"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Anuluj uwierzytelnianie"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Więcej opcji"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Zapisane"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"rozłącz"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktywuj"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automatycznie włącz jutro"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetootha używają funkcje takie jak szybkie udostępnianie czy Znajdź moje urządzenie"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth włączy się jutro rano"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Udostępnij dźwięk"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Udostępnia dźwięk"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> naładowania baterii"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Dźwięk"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Zestaw słuchawkowy"</string> @@ -375,22 +370,22 @@ <string name="quick_settings_nfc_label" msgid="1054317416221168085">"Komunikacja NFC"</string> <string name="quick_settings_nfc_off" msgid="3465000058515424663">"Komunikacja NFC jest wyłączona"</string> <string name="quick_settings_nfc_on" msgid="1004976611203202230">"Komunikacja NFC jest włączona"</string> - <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Nagrywanie ekranu"</string> + <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Nagraj ekran"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Rozpocznij"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Zatrzymaj"</string> <string name="qs_record_issue_label" msgid="8166290137285529059">"Zarejestruj problem"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Rozpocznij"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Zatrzymaj"</string> - <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Raport o błędzie"</string> + <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Zgłoś błąd"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Którego aspektu korzystania z urządzenia dotyczył problem?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Wybierz typ problemu"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Nagrywanie ekranu"</string> <string name="performance" msgid="6552785217174378320">"Wydajność"</string> <string name="user_interface" msgid="3712869377953950887">"Interfejs"</string> - <string name="thermal" msgid="6758074791325414831">"Termografia"</string> + <string name="thermal" msgid="6758074791325414831">"Temperatura"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Tryb jednej ręki"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Urządzenia słuchowe"</string> - <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktywny"</string> + <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktywne"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"Rozłączono"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"Urządzenia słuchowe"</string> <string name="quick_settings_pair_hearing_devices" msgid="5987105102207447322">"Sparuj nowe urządzenie"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Kliknij, aby uzyskać więcej informacji"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nie ustawiono alarmu"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"Wprowadź blokadę ekranu"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dotknij czytnika linii papilarnych. To ten krótszy przycisk z boku telefonu"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Czytnik linii papilarnych"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"uwierzytelnij"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"otwórz urządzenie"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona zwijania"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona rozwijania"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"lub"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gest przejścia wstecz"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gest przejścia na ekran główny"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Klawisz działania"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotowe"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Podświetlenie klawiatury"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Poziom %1$d z %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Sterowanie domem"</string> diff --git a/packages/SystemUI/res/values-pt-rBR/strings.xml b/packages/SystemUI/res/values-pt-rBR/strings.xml index 2e643910604d..4e7140da5492 100644 --- a/packages/SystemUI/res/values-pt-rBR/strings.xml +++ b/packages/SystemUI/res/values-pt-rBR/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Processando gravação de tela"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Notificação contínua para uma sessão de gravação de tela"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Iniciar gravação?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Enquanto você grava, o Android tem acesso a todas as informações na tela ou reproduzidas no dispositivo. Portanto, tenha cuidado com senhas, detalhes de pagamento, mensagens, fotos, áudios e vídeos."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Durante a gravação, o Android tem acesso às informações na tela ou reproduzidas no dispositivo. Portanto, tenha cuidado com senhas, detalhes de pagamento, mensagens, fotos, áudios e vídeos."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Enquanto você grava um app, o Android tem acesso a todas as informações visíveis ou reproduzidas nele. Tenha cuidado com senhas, detalhes de pagamento, mensagens fotos, áudios e vídeos."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Iniciar gravação"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Gravar áudio"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Você vai parar de gravar o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Parar gravação"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Parar o compartilhamento de tela?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Você vai parar de compartilhar o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Interromper compartilhamento"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Você vai parar de transmitir o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Interromper transmissão"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Fechar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Gravador de problemas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processando a gravação do problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificação em andamento para uma sessão de coleta de problemas"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Erro ao salvar a gravação do problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Erro ao iniciar a gravação do problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualização em tela cheia"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para sair, deslize de cima para baixo na tela"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entendi"</string> <string name="accessibility_back" msgid="6530104400086152611">"Voltar"</string> <string name="accessibility_home" msgid="5430449841237966217">"Página inicial"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Desbloqueado pelo rosto. Pressione para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Rosto reconhecido. Pressione para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Rosto reconhecido. Pressione o ícone para continuar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Desbloqueado pelo rosto. Toque para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar autenticação"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Mais opções"</string> @@ -216,7 +214,7 @@ <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"Ação necessária para melhorar a segurança e o desempenho"</string> <string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Configurar o Desbloqueio por impressão digital de novo"</string> <string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Desbloqueio por impressão digital"</string> - <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Configurar o Desbloqueio por impressão digital"</string> + <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Configurar o Desbloqueio por impressão digital"</string> <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Os modelos e as imagens atuais serão excluídos para reconfigurar o Desbloqueio por impressão digital.\n\nDepois disso, você vai precisar configurar esse recurso de novo para desbloquear o smartphone com o dedo ou confirmar sua identidade."</string> <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"O modelo e as imagens atuais serão excluídos para reconfigurar o Desbloqueio por impressão digital.\n\nDepois disso, você vai precisar configurar esse recurso de novo para desbloquear o smartphone com o dedo ou confirmar sua identidade."</string> <string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Não foi possível configurar o Desbloqueio por impressão digital. Acesse as Configurações e tente de novo."</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Salvo"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconectar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ativar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ativar automaticamente amanhã"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Recursos como o Quick Share e o Encontre Meu Dispositivo usam Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"O Bluetooth será ativado amanhã de manhã"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Compartilhar áudio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Compartilhando áudio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Bateria: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Áudio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Fone de ouvido"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Gravação de tela"</string> <string name="performance" msgid="6552785217174378320">"Desempenho"</string> <string name="user_interface" msgid="3712869377953950887">"Interface do usuário"</string> - <string name="thermal" msgid="6758074791325414831">"Térmico"</string> + <string name="thermal" msgid="6758074791325414831">"Temperatura"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Modo uma mão"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Aparelhos auditivos"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ativos"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Adicionar widget"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Concluído"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Adicionar widgets"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Tenha acesso rápido aos widgets de seus apps favoritos sem desbloquear o tablet."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Acesse os widgets dos seus apps favoritos sem desbloquear o tablet."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Permitir qualquer widget na tela de bloqueio?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Abrir as configurações"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Reativar apps de trabalho?"</string> @@ -623,7 +618,7 @@ <string name="stream_ring" msgid="7550670036738697526">"Toques"</string> <string name="stream_music" msgid="2188224742361847580">"Mídia"</string> <string name="stream_alarm" msgid="16058075093011694">"Alarme"</string> - <string name="stream_notification" msgid="7930294049046243939">"Notificação"</string> + <string name="stream_notification" msgid="7930294049046243939">"Notificações"</string> <string name="stream_bluetooth_sco" msgid="6234562365528664331">"Bluetooth"</string> <string name="stream_dtmf" msgid="7322536356554673067">"Multifrequência de dois tons"</string> <string name="stream_accessibility" msgid="3873610336741987152">"Acessibilidade"</string> @@ -1041,7 +1036,7 @@ <string name="accessibility_floating_button_action_remove_menu" msgid="6730432848162552135">"Remover"</string> <string name="accessibility_floating_button_action_double_tap_to_toggle" msgid="7976492639670692037">"alternar"</string> <string name="accessibility_floating_button_action_edit" msgid="1688227814600463987">"Editar"</string> - <string name="quick_controls_title" msgid="6839108006171302273">"Controles do dispositivo"</string> + <string name="quick_controls_title" msgid="6839108006171302273">"Controles do disp."</string> <string name="controls_providers_title" msgid="6879775889857085056">"Escolha um app para adicionar controles"</string> <string name="controls_number_of_favorites" msgid="4481806788981836355">"{count,plural, =1{# controle adicionado.}one{# controle adicionado.}many{# de controles adicionados.}other{# controles adicionados.}}"</string> <string name="controls_removed" msgid="3731789252222856959">"Removido"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toque para mais informações"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nenhum alarme definido"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"inserir bloqueio de tela"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toque no sensor de impressão digital. É o menor botão na lateral do smartphone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de impressão digital"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"acessar o dispositivo"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ícone \"Fechar\""</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ícone \"Abrir\""</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto de volta"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto de início"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de ação"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Concluído"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Luz de fundo do teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nível %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Automação residencial"</string> diff --git a/packages/SystemUI/res/values-pt-rPT/strings.xml b/packages/SystemUI/res/values-pt-rPT/strings.xml index ca0f1715afb5..6461db44bc37 100644 --- a/packages/SystemUI/res/values-pt-rPT/strings.xml +++ b/packages/SystemUI/res/values-pt-rPT/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Vai parar de gravar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Parar gravação"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Parar a partilha do ecrã?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Vai parar de partilhar <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Parar partilha"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Vai parar de transmitir <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Parar transmissão"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Fechar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Registador de problemas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"A proc. registo de problemas"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificação em curso de uma sessão de recolha de problemas"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Erro ao guardar o registo de problemas"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Erro ao iniciar o registo de problemas"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualização de ecrã inteiro"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para sair, deslize rapidamente para baixo a partir da parte superior do ecrã"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Anterior"</string> <string name="accessibility_home" msgid="5430449841237966217">"Página inicial"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Desbloqueado com o rosto. Prima para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Rosto reconhecido. Prima para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Rosto reconhecido. Prima ícone de desbloqueio para continuar"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Desbloqueado com o rosto. Toque para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar autenticação"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Mais opções"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Guardado"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desassociar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ativar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ativar automaticamente amanhã"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funcionalidades como a Partilha rápida e o serviço Localizar o meu dispositivo usam o Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"O Bluetooth vai ser ativado amanhã de manhã"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Partilhar áudio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"A partilhar áudio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> de bateria"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Áudio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Ausc. c/ mic. integ."</string> @@ -382,14 +377,14 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"Iniciar"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Parar"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Relatório de erro"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Que parte da experiência do disposit. foi afetada?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Que experiência com o dispositivo foi afetada?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Selecione o tipo de problema"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Gravação de ecrã"</string> <string name="performance" msgid="6552785217174378320">"Desempenho"</string> <string name="user_interface" msgid="3712869377953950887">"Interface do utilizador"</string> <string name="thermal" msgid="6758074791325414831">"Térmico"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Modo para uma mão"</string> - <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Dispositivos auditivos"</string> + <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Disp. auditivos"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ativos"</string> <string name="quick_settings_hearing_devices_disconnected" msgid="8907061223998176187">"Desligados"</string> <string name="quick_settings_hearing_devices_dialog_title" msgid="9004774017688484981">"Dispositivos auditivos"</string> @@ -445,7 +440,7 @@ <string name="keyguard_retry" msgid="886802522584053523">"Deslize rapidamente para cima para tentar novamente."</string> <string name="accesssibility_keyguard_retry" msgid="8880238862712870676">"Deslize para cima para tentar o Desbloqueio facial novamente"</string> <string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloquear para utilizar o NFC"</string> - <string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence à sua entidade."</string> + <string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence à sua organização."</string> <string name="do_disclosure_with_name" msgid="2091641464065004091">"Este dispositivo pertence à entidade <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>."</string> <string name="do_financed_disclosure_with_name" msgid="6723004643314467864">"Este dispositivo foi fornecido por <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>."</string> <string name="phone_hint" msgid="6682125338461375925">"Deslize rapid. a partir do ícone para aceder ao telemóvel"</string> @@ -469,7 +464,7 @@ <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Ignorar"</string> <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Adicionar, remover e reordenar widgets neste espaço"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Adicionar mais widgets"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Mantenha premido para personalizar os widgets"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Mantenha pressionado para personalizar os widgets"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Personalizar widgets"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Ícone da app do widget desativado"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Ícone da app para um widget que está a ser instalado"</string> @@ -549,7 +544,7 @@ <string name="quick_settings_financed_disclosure_named_management" msgid="2307703784594859524">"Este dispositivo foi fornecido pela <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>."</string> <string name="quick_settings_disclosure_management_named_vpn" msgid="4137564460025113168">"Este dispositivo pertence à sua organização e está ligado à Internet através da app <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="quick_settings_disclosure_named_management_named_vpn" msgid="2169227918166358741">"Este dispositivo pertence à organização <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> e está ligado à Internet através da app <xliff:g id="VPN_APP">%2$s</xliff:g>"</string> - <string name="quick_settings_disclosure_management" msgid="5515296598440684962">"Este dispositivo pertence à sua entidade."</string> + <string name="quick_settings_disclosure_management" msgid="5515296598440684962">"Este dispositivo pertence à sua organização."</string> <string name="quick_settings_disclosure_named_management" msgid="3476472755775165827">"Este dispositivo pertence à entidade <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>."</string> <string name="quick_settings_disclosure_management_vpns" msgid="929181757984262902">"Este dispositivo pertence à sua organização e está ligado à Internet através de VPNs"</string> <string name="quick_settings_disclosure_named_management_vpns" msgid="3312645578322079185">"Este dispositivo pertence à organização <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> e está ligado à Internet através de VPNs"</string> @@ -562,15 +557,15 @@ <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"As suas apps pessoais estão ligadas à Internet através da app <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"Este dispositivo está ligado à Internet através da app <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"Este dispositivo foi fornecido pela <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>."</string> - <string name="monitoring_title_device_owned" msgid="7029691083837606324">"Gestão de dispositivos"</string> + <string name="monitoring_title_device_owned" msgid="7029691083837606324">"Gestão do dispositivo"</string> <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"Registos de rede"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Certificados da AC"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Ver Políticas"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Ver controlos"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"Este dispositivo pertence à entidade <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nO administrador de TI pode monitorizar e gerir as definições, o acesso empresarial, as apps, os dados associados ao dispositivo e as informações de localização do mesmo.\n\nContacte o administrador de TI para obter mais informações."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"Este dispositivo pertence à entidade <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nO administrador de TI pode monitorizar e gerir as definições, o acesso empresarial, as apps, os dados associados ao dispositivo e as informações de localização do mesmo.\n\nContacte o administrador de TI para mais informações."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"A <xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> pode conseguir aceder aos dados associados a este dispositivo, gerir apps e alterar as definições do mesmo.\n\nSe tiver perguntas, contacte a <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"Este dispositivo pertence à sua entidade.\n\nO administrador de TI pode monitorizar e gerir as definições, o acesso empresarial, as apps, os dados associados ao dispositivo e as informações de localização do mesmo.\n\nContacte o administrador de TI para obter mais informações."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"Este dispositivo pertence à sua organização.\n\nO administrador de TI pode monitorizar e gerir as definições, o acesso empresarial, as apps, os dados associados ao dispositivo e as informações de localização do mesmo.\n\nContacte o administrador de TI para mais informações."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"A sua entidade instalou uma autoridade de certificação neste dispositivo. O tráfego da sua rede segura pode ser monitorizado ou alterado."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"A sua entidade instalou uma autoridade de certificação no seu perfil de trabalho. O tráfego da sua rede segura pode ser monitorizado ou alterado."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Está instalada uma autoridade de certificação neste dispositivo. O tráfego da sua rede segura pode ser monitorizado ou alterado."</string> @@ -621,7 +616,7 @@ <string name="stream_voice_call" msgid="7468348170702375660">"Chamada"</string> <string name="stream_system" msgid="7663148785370565134">"Sistema"</string> <string name="stream_ring" msgid="7550670036738697526">"Toque"</string> - <string name="stream_music" msgid="2188224742361847580">"Suporte de dados"</string> + <string name="stream_music" msgid="2188224742361847580">"Multimédia"</string> <string name="stream_alarm" msgid="16058075093011694">"Alarme"</string> <string name="stream_notification" msgid="7930294049046243939">"Notificação"</string> <string name="stream_bluetooth_sco" msgid="6234562365528664331">"Bluetooth"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toque para obter mais informações"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nenhum alarme definido"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"introduzir bloqueio de ecrã"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toque no sensor de impressões digitais. É o botão mais pequeno na parte lateral do telemóvel"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de impressões digitais"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"entrar no dispositivo"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ícone de reduzir"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ícone de expandir"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto para retroceder"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto para aceder ao ecrã principal"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de ação"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Concluir"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Luz do teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nível %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Controlos domésticos"</string> diff --git a/packages/SystemUI/res/values-pt/strings.xml b/packages/SystemUI/res/values-pt/strings.xml index 2e643910604d..4e7140da5492 100644 --- a/packages/SystemUI/res/values-pt/strings.xml +++ b/packages/SystemUI/res/values-pt/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Processando gravação de tela"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Notificação contínua para uma sessão de gravação de tela"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Iniciar gravação?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Enquanto você grava, o Android tem acesso a todas as informações na tela ou reproduzidas no dispositivo. Portanto, tenha cuidado com senhas, detalhes de pagamento, mensagens, fotos, áudios e vídeos."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Durante a gravação, o Android tem acesso às informações na tela ou reproduzidas no dispositivo. Portanto, tenha cuidado com senhas, detalhes de pagamento, mensagens, fotos, áudios e vídeos."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Enquanto você grava um app, o Android tem acesso a todas as informações visíveis ou reproduzidas nele. Tenha cuidado com senhas, detalhes de pagamento, mensagens fotos, áudios e vídeos."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Iniciar gravação"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Gravar áudio"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Você vai parar de gravar o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Parar gravação"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Parar o compartilhamento de tela?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Você vai parar de compartilhar o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Interromper compartilhamento"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Você vai parar de transmitir o app <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Interromper transmissão"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Fechar"</string> <string name="issuerecord_title" msgid="286627115110121849">"Gravador de problemas"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Processando a gravação do problema"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificação em andamento para uma sessão de coleta de problemas"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Erro ao salvar a gravação do problema"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Erro ao iniciar a gravação do problema"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visualização em tela cheia"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para sair, deslize de cima para baixo na tela"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Entendi"</string> <string name="accessibility_back" msgid="6530104400086152611">"Voltar"</string> <string name="accessibility_home" msgid="5430449841237966217">"Página inicial"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Desbloqueado pelo rosto. Pressione para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Rosto reconhecido. Pressione para continuar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Rosto reconhecido. Pressione o ícone para continuar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Desbloqueado pelo rosto. Toque para continuar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autenticado"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Cancelar autenticação"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Mais opções"</string> @@ -216,7 +214,7 @@ <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"Ação necessária para melhorar a segurança e o desempenho"</string> <string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Configurar o Desbloqueio por impressão digital de novo"</string> <string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Desbloqueio por impressão digital"</string> - <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Configurar o Desbloqueio por impressão digital"</string> + <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Configurar o Desbloqueio por impressão digital"</string> <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Os modelos e as imagens atuais serão excluídos para reconfigurar o Desbloqueio por impressão digital.\n\nDepois disso, você vai precisar configurar esse recurso de novo para desbloquear o smartphone com o dedo ou confirmar sua identidade."</string> <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"O modelo e as imagens atuais serão excluídos para reconfigurar o Desbloqueio por impressão digital.\n\nDepois disso, você vai precisar configurar esse recurso de novo para desbloquear o smartphone com o dedo ou confirmar sua identidade."</string> <string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Não foi possível configurar o Desbloqueio por impressão digital. Acesse as Configurações e tente de novo."</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Salvo"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"desconectar"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"ativar"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ativar automaticamente amanhã"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Recursos como o Quick Share e o Encontre Meu Dispositivo usam Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"O Bluetooth será ativado amanhã de manhã"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Compartilhar áudio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Compartilhando áudio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Bateria: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Áudio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Fone de ouvido"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Gravação de tela"</string> <string name="performance" msgid="6552785217174378320">"Desempenho"</string> <string name="user_interface" msgid="3712869377953950887">"Interface do usuário"</string> - <string name="thermal" msgid="6758074791325414831">"Térmico"</string> + <string name="thermal" msgid="6758074791325414831">"Temperatura"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Modo uma mão"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Aparelhos auditivos"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Ativos"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Adicionar widget"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Concluído"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Adicionar widgets"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Tenha acesso rápido aos widgets de seus apps favoritos sem desbloquear o tablet."</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Acesse os widgets dos seus apps favoritos sem desbloquear o tablet."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Permitir qualquer widget na tela de bloqueio?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Abrir as configurações"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Reativar apps de trabalho?"</string> @@ -623,7 +618,7 @@ <string name="stream_ring" msgid="7550670036738697526">"Toques"</string> <string name="stream_music" msgid="2188224742361847580">"Mídia"</string> <string name="stream_alarm" msgid="16058075093011694">"Alarme"</string> - <string name="stream_notification" msgid="7930294049046243939">"Notificação"</string> + <string name="stream_notification" msgid="7930294049046243939">"Notificações"</string> <string name="stream_bluetooth_sco" msgid="6234562365528664331">"Bluetooth"</string> <string name="stream_dtmf" msgid="7322536356554673067">"Multifrequência de dois tons"</string> <string name="stream_accessibility" msgid="3873610336741987152">"Acessibilidade"</string> @@ -1041,7 +1036,7 @@ <string name="accessibility_floating_button_action_remove_menu" msgid="6730432848162552135">"Remover"</string> <string name="accessibility_floating_button_action_double_tap_to_toggle" msgid="7976492639670692037">"alternar"</string> <string name="accessibility_floating_button_action_edit" msgid="1688227814600463987">"Editar"</string> - <string name="quick_controls_title" msgid="6839108006171302273">"Controles do dispositivo"</string> + <string name="quick_controls_title" msgid="6839108006171302273">"Controles do disp."</string> <string name="controls_providers_title" msgid="6879775889857085056">"Escolha um app para adicionar controles"</string> <string name="controls_number_of_favorites" msgid="4481806788981836355">"{count,plural, =1{# controle adicionado.}one{# controle adicionado.}many{# de controles adicionados.}other{# controles adicionados.}}"</string> <string name="controls_removed" msgid="3731789252222856959">"Removido"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Toque para mais informações"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nenhum alarme definido"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"inserir bloqueio de tela"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Toque no sensor de impressão digital. É o menor botão na lateral do smartphone"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor de impressão digital"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autenticar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"acessar o dispositivo"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ícone \"Fechar\""</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ícone \"Abrir\""</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ou"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto de volta"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto de início"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tecla de ação"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Concluído"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Luz de fundo do teclado"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nível %1$d de %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Automação residencial"</string> diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml index 36457fd8fbb7..f3f590b54309 100644 --- a/packages/SystemUI/res/values-ro/strings.xml +++ b/packages/SystemUI/res/values-ro/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Nu vei mai înregistra <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Oprește înregistrarea"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Oprești accesul la ecran?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Nu vei mai permite accesul la <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Nu mai permite accesul"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Nu vei mai proiecta <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Oprește proiectarea"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Închide"</string> <string name="issuerecord_title" msgid="286627115110121849">"Instrument de înregistrare a problemelor"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Se procesează înregistrarea problemei"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Notificare în curs pentru o sesiune de înregistrare a problemei"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Eroare la salvarea înregistrării problemei"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Eroare la începerea înregistrării problemei"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Vizualizare pe ecran complet"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Pentru a ieși, glisează în jos din partea de sus a ecranului"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Înapoi"</string> <string name="accessibility_home" msgid="5430449841237966217">"Ecranul de pornire"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"S-a deblocat cu ajutorul feței. Apasă pentru a continua."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Chipul a fost recunoscut. Apasă pentru a continua."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Chip recunoscut. Apasă pictograma Deblocare ca să continui."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"S-a deblocat folosind fața. Atinge pentru a continua."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentificat"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Anulează autentificarea"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Mai multe opțiuni"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Salvat"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"deconectează"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"activează"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Activează automat mâine"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funcții precum Quick Share și Găsește-mi dispozitivul folosesc Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth se va activa mâine dimineață"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Trimite audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Se permite accesul la conținutul audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Nivelul bateriei: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Căști"</string> @@ -555,7 +550,7 @@ <string name="quick_settings_disclosure_named_management_vpns" msgid="3312645578322079185">"Acest dispozitiv aparține organizației <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> și este conectat la internet prin rețele VPN."</string> <string name="quick_settings_disclosure_managed_profile_monitoring" msgid="1423899084754272514">"E posibil ca organizația ta să monitorizeze traficul de rețea în profilul de serviciu"</string> <string name="quick_settings_disclosure_named_managed_profile_monitoring" msgid="8321469176706219860">"E posibil ca <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g> să monitorizeze traficul de rețea din profilul tău de serviciu"</string> - <string name="quick_settings_disclosure_managed_profile_network_activity" msgid="2636594621387832827">"Adminul IT poate vedea profilul de serviciu"</string> + <string name="quick_settings_disclosure_managed_profile_network_activity" msgid="2636594621387832827">"Administratorul IT poate vedea profilul de serviciu"</string> <string name="quick_settings_disclosure_monitoring" msgid="8548019955631378680">"Este posibil ca rețeaua să fie monitorizată"</string> <string name="quick_settings_disclosure_vpns" msgid="3586175303518266301">"Acest dispozitiv este conectat la internet prin rețele VPN."</string> <string name="quick_settings_disclosure_managed_profile_named_vpn" msgid="153393105176944100">"Aplicațiile pentru lucru sunt conectate la internet prin <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Atinge pentru mai multe informații"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nicio alarmă setată"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"intră în blocarea ecranului"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Atinge senzorul de amprentă. Acesta este butonul mai scurt de pe partea laterală a telefonului"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Senzor de amprentă"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentifică-te"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"Accesează dispozitivul"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Pictograma de restrângere"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Pictograma de extindere"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"sau"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gestul Înapoi"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gestul Ecran de pornire"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tastă de acțiuni"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gata"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Iluminarea din spate a tastaturii"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivelul %1$d din %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Comenzi pentru locuință"</string> diff --git a/packages/SystemUI/res/values-ru/strings.xml b/packages/SystemUI/res/values-ru/strings.xml index fe0e8db7f0e0..d3e410a2567c 100644 --- a/packages/SystemUI/res/values-ru/strings.xml +++ b/packages/SystemUI/res/values-ru/strings.xml @@ -118,7 +118,7 @@ <string name="screenrecord_continue" msgid="4055347133700593164">"Начать"</string> <string name="screenrecord_ongoing_screen_only" msgid="4459670242451527727">"Идет запись видео с экрана"</string> <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"Идет запись видео с экрана и звука"</string> - <string name="screenrecord_taps_label" msgid="1595690528298857649">"Показывать прикосновения к экрану"</string> + <string name="screenrecord_taps_label" msgid="1595690528298857649">"Показывать прикосновения"</string> <string name="screenrecord_stop_label" msgid="72699670052087989">"Остановить"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"Поделиться"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"Видео с экрана сохранено"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Запись в приложении <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будет прекращена."</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Остановить запись"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Прекратить показ экрана?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Демонстрация экрана приложения <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будет прекращена."</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Прекратить показ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Трансляция из приложения <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> будет прекращена."</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Остановить трансляцию"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Закрыть"</string> <string name="issuerecord_title" msgid="286627115110121849">"Запись проблем на видео"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Обрабатываем запись"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Текущее уведомление о записи проблемы на видео"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Не удалось сохранить запись."</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Не удалось начать запись."</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Полноэкранный режим"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Чтобы выйти, проведите вниз от верхнего края экрана"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"ОК"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"Главный экран"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Разблокировано сканированием лица. Нажмите, чтобы продолжить."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Лицо распознано. Нажмите, чтобы продолжить."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Лицо распознано. Нажмите на значок разблокировки."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Сканирование лица выполнено. Нажмите, чтобы продолжить."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Аутентификация выполнена"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Отмена распознавания лица"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Ещё"</string> @@ -295,18 +293,15 @@ <string name="see_all_bluetooth_devices" msgid="1761596816620200433">"Все"</string> <string name="turn_on_bluetooth" msgid="5681370462180289071">"Использовать"</string> <string name="quick_settings_bluetooth_device_connected" msgid="7884777006729260996">"Подключено"</string> - <string name="quick_settings_bluetooth_device_audio_sharing" msgid="1496358082943301670">"Отправка аудио"</string> + <string name="quick_settings_bluetooth_device_audio_sharing" msgid="1496358082943301670">"Передача аудио"</string> <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Сохранено"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"отключить"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"активировать"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Включить автоматически завтра"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Bluetooth используется в таких функциях и сервисах, как \"Быстрая отправка\" и \"Найти устройство\""</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth включится завтра утром"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Отправить аудио"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Отправка аудио"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Заряд: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудиоустройство"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Гарнитура"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Запись видео с экрана"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Начать"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Остановить"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Запись неисправности"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Запись неполадки"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Начать"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Остановить"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Отчет об ошибке"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Запись экрана"</string> <string name="performance" msgid="6552785217174378320">"Производительность"</string> <string name="user_interface" msgid="3712869377953950887">"Интерфейс"</string> - <string name="thermal" msgid="6758074791325414831">"Тепловизор"</string> + <string name="thermal" msgid="6758074791325414831">"Нагрев"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Режим управления одной рукой"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Слуховые аппараты"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Активно"</string> @@ -397,7 +392,7 @@ <string name="accessibility_hearing_device_pair_new_device" msgid="8440082580186130090">"Нажмите, чтобы подключить новое устройство"</string> <string name="hearing_devices_presets_error" msgid="350363093458408536">"Не удалось обновить набор настроек."</string> <string name="hearing_devices_preset_label" msgid="7878267405046232358">"Набор настроек"</string> - <string name="live_caption_title" msgid="8916875614623730005">"Автоматические субтитры"</string> + <string name="live_caption_title" msgid="8916875614623730005">"Автосубтитры"</string> <string name="sensor_privacy_start_use_mic_dialog_title" msgid="563796653825944944">"Разблокировать микрофон устройства?"</string> <string name="sensor_privacy_start_use_camera_dialog_title" msgid="8807639852654305227">"Разблокировать камеру устройства?"</string> <string name="sensor_privacy_start_use_mic_camera_dialog_title" msgid="4316471859905020023">"Разблокировать камеру и микрофон устройства?"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Чтобы ознакомиться с руководством, проведите по экрану влево"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Настроить"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Закрыть"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Добавление, удаление и упорядочивание виджетов в этом пространстве"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Здесь можно добавить, удалить и переместить виджеты"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Добавить виджеты"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Нажмите и удерживайте, чтобы настроить виджеты."</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Настроить виджеты"</string> @@ -478,7 +473,7 @@ <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Добавить виджет"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Готово"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Добавить виджеты"</string> - <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Быстрый доступ к виджетам любимых приложений, даже когда планшет заблокирован"</string> + <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Добавьте виджеты любимых приложений на заблокированный экран, чтобы их всегда можно было быстро посмотреть."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Разрешить добавлять любые виджеты на заблокированный экран?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Открыть настройки"</string> <string name="work_mode_off_title" msgid="5794818421357835873">"Включить рабочие приложения?"</string> @@ -639,7 +634,7 @@ <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_panel_noise_control_title" msgid="7413949943872304474">"Контроль уровня шума"</string> + <string name="volume_panel_noise_control_title" msgid="7413949943872304474">"Контроль шума"</string> <string name="volume_panel_spatial_audio_title" msgid="3367048857932040660">"Пространственное звучание"</string> <string name="volume_panel_spatial_audio_off" msgid="4177490084606772989">"Отключено"</string> <string name="volume_panel_spatial_audio_fixed" msgid="3136080137827746046">"Без отслеживания"</string> @@ -657,8 +652,8 @@ <string name="volume_panel_hint_unmute" msgid="4831850937582282340">"Включить звук аудиопотока \"%s\""</string> <string name="volume_panel_hint_muted" msgid="1124844870181285320">"без звука"</string> <string name="volume_panel_hint_vibrate" msgid="4136223145435914132">"вибросигнал"</string> - <string name="media_output_label_title" msgid="872824698593182505">"<xliff:g id="LABEL">%s</xliff:g> – запущено здесь:"</string> - <string name="media_output_title_without_playing" msgid="3825663683169305013">"Проигрывание аудио:"</string> + <string name="media_output_label_title" msgid="872824698593182505">"<xliff:g id="LABEL">%s</xliff:g> – играет здесь:"</string> + <string name="media_output_title_without_playing" msgid="3825663683169305013">"Аудио будет звучать здесь"</string> <string name="media_output_title_ongoing_call" msgid="208426888064112006">"Настройки вызова"</string> <string name="system_ui_tuner" msgid="1471348823289954729">"System UI Tuner"</string> <string name="status_bar" msgid="4357390266055077437">"Строка состояния"</string> @@ -715,7 +710,7 @@ <string name="notification_channel_summary_automatic_silenced" msgid="7403004439649872047">"<b>Статус:</b> понижено до уровня \"Без звука\""</string> <string name="notification_channel_summary_automatic_promoted" msgid="1301710305149590426">"<b>Статус:</b> уровень важности повышен"</string> <string name="notification_channel_summary_automatic_demoted" msgid="1831303964660807700">"<b>Статус:</b> уровень важности понижен"</string> - <string name="notification_channel_summary_priority_baseline" msgid="46674690072551234">"Появляется в верхней части уведомлений о сообщениях, а также в качестве фото профиля на заблокированном экране"</string> + <string name="notification_channel_summary_priority_baseline" msgid="46674690072551234">"Вверху списка уведомлений о разговорах и в виде фото профиля на заблокированном экране"</string> <string name="notification_channel_summary_priority_bubble" msgid="1275413109619074576">"Появляется в верхней части уведомлений о сообщениях, в виде всплывающего чата, а также в качестве фото профиля на заблокированном экране."</string> <string name="notification_channel_summary_priority_dnd" msgid="6665395023264154361">"Появляется в верхней части уведомлений о сообщениях, а также в виде фото профиля на заблокированном экране, прерывает режим \"Не беспокоить\"."</string> <string name="notification_channel_summary_priority_all" msgid="7151752959650048285">"Появляется в верхней части уведомлений о сообщениях, в виде всплывающего чата, а также в качестве фото профиля на заблокированном экране, прерывает режим \"Не беспокоить\"."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Нажмите, чтобы узнать больше."</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Нет будильников"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"разблокировать экран"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Коснитесь сканера отпечатков пальцев. Это самая короткая кнопка сбоку на телефоне."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сканер отпечатков пальцев"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"выполнить аутентификацию"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"указать устройство"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Значок \"Свернуть\""</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Значок \"Развернуть\""</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"или"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Жест \"назад\""</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Жест \"на главный экран\""</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Клавиша действия"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Подсветка клавиатуры"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Уровень %1$d из %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Управление домом"</string> diff --git a/packages/SystemUI/res/values-si/strings.xml b/packages/SystemUI/res/values-si/strings.xml index 8357008283d4..0b50c2671987 100644 --- a/packages/SystemUI/res/values-si/strings.xml +++ b/packages/SystemUI/res/values-si/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"ඔබ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> පටිගත කිරීම නතර කරනු ඇත"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"පටිගත කිරීම නවත්වන්න"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"තිරය බෙදා ගැනීම නවත්වන්න ද?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"ඔබ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> බෙදා ගැනීම නතර කරනු ඇත"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"බෙදා ගැනීම නවත්වන්න"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"ඔබ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> විකාශය නතර කරනු ඇත"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"විකාශය නවතන්න"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"වසන්න"</string> <string name="issuerecord_title" msgid="286627115110121849">"ගැටලු රෙකෝඩරය"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ගැටලු වාර්තාව සැකසුම් කිරීම"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ගැටලු එකතු කිරීමේ සැසියක් සඳහා දැනට පවතින දැනුම්දීම"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"ගැටලුව සටහන් කිරීම සුරැකීමේ දෝෂය"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ගැටලුව වාර්තා කිරීම ආරම්භ කිරීමේ දෝෂය"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"මුළු තිරය බලමින්"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"පිටවීමට, ඔබේ තිරයෙහි ඉහළ සිට පහළට ස්වයිප් කරන්න"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"තේරුණා"</string> <string name="accessibility_back" msgid="6530104400086152611">"ආපසු"</string> <string name="accessibility_home" msgid="5430449841237966217">"මුල් පිටුව"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"මුහුණ මගින් අගුලු හරින ලදි. ඉදිරියට යාමට ඔබන්න."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"මුහුණ හඳුනා ගන්නා ලදි. ඉදිරියට යාමට ඔබන්න."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"මුහුණ හඳුනා ගන්නා ලදි. ඉදිරියට යාමට අගුලු හැරීමේ නිරූපකය ඔබන්න."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"මුහුණ මගින් අගුළු හරින ලදි. ඉදිරියට යාමට තට්ටු කරන්න."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"සත්යාපනය විය"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"සත්යාපනය අවලංගු කරන්න"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"තවත් විකල්ප"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"සුරැකිණි"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"විසන්ධි කරන්න"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"සක්රිය කරන්න"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"හෙට ස්වයංක්රීයව ක්රියාත්මක කරන්න"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ඉක්මන් බෙදා ගැනීම සහ මගේ උපාංගය සෙවීම වැනි විශේෂාංග බ්ලූටූත් භාවිත කරයි"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"බ්ලූටූත් හෙට උදේ සක්රීය වෙයි"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ශ්රව්ය බෙදා ගන්න"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ශ්රව්ය බෙදා ගැනීම"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"බැටරිය <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ශ්රව්ය"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"හෙඩ්සෙටය"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"තවත් තොරතුරු සඳහා තට්ටු කරන්න"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"එලාම සකසා නැත"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"තිර අගුල ඇතුළු කරන්න"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"ඇඟිලි සලකුණු සංවේදකය ස්පර්ශ කරන්න. එය දුරකථනයේ පැත්තේ ඇති කෙටි බොත්තමයි"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"ඇඟිලි සලකුණු සංවේදකය"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"සත්යාපනය කරන්න"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"උපාංගය ඇතුළු කරන්න"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"හැකුළුම් නිරූපකය"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"දිගහැරීම් නිරූපකය"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"හෝ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ආපසු අභිනය"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"නිවෙස් අභිනය"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ක්රියා යතුර"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"නිමයි"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"යතුරු පුවරු පසු ආලෝකය"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$dන් %1$d වැනි මට්ටම"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"නිවෙස් පාලන"</string> diff --git a/packages/SystemUI/res/values-sk/strings.xml b/packages/SystemUI/res/values-sk/strings.xml index 148b3909daa5..15099b3795bb 100644 --- a/packages/SystemUI/res/values-sk/strings.xml +++ b/packages/SystemUI/res/values-sk/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Prestante zaznamenávať obsah aplikácie <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Zastaviť nahrávanie"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Chcete prestať zdieľať obrazovku?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Prestanete zdieľať obsah aplikácie <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Prestať zdieľať"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Prestanete prenášať obsah aplikácie <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Zastaviť prenos"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zavrieť"</string> <string name="issuerecord_title" msgid="286627115110121849">"Nástroj na zaznamenávanie problémov"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Záznam problému sa spracúva"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Upozornenie na prebiehajúcu aktivitu týkajúcu sa relácie zhromažďovania problémov"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Pri ukladaní záznamu problému sa vyskytla chyba"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Pri spúšťaní záznamu problému sa vyskytla chyba"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Zobrazenie na celú obrazovku"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Ukončíte potiahnutím zhora obrazovky nadol"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Dobre"</string> <string name="accessibility_back" msgid="6530104400086152611">"Späť"</string> <string name="accessibility_home" msgid="5430449841237966217">"Plocha"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Odomknuté tvárou. Pokračujte stlačením."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Tvár bola rozpoznaná. Pokračujte stlačením."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Tvár bola rozpoznaná. Pokračujte stlačením ikony odomknutia"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Odomknuté tvárou. Pokračujte klepnutím."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Overené"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Zrušiť overenie"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Ďalšie možnosti"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Uložené"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"odpojiť"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivovať"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Automaticky zapnúť zajtra"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funkcie ako Quick Share a Nájdi moje zariadenie používajú Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth sa zapne zajtra ráno"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Zdieľať zvuk"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Zdieľa sa zvuk"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Batéria: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Zvuk"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Náhlavná súprava"</string> @@ -378,8 +373,8 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Rekordér obrazovky"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Začať"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Ukončiť"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Problém s nahrávaním"</string> - <string name="qs_record_issue_start" msgid="2979831312582567056">"Začnite"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Zaznamenať problém"</string> + <string name="qs_record_issue_start" msgid="2979831312582567056">"Začať"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Zastavte"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Hlásenie chyby"</string> <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Čo v zariadení bolo ovplyvnené?"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Rekordér obrazovky"</string> <string name="performance" msgid="6552785217174378320">"Výkon"</string> <string name="user_interface" msgid="3712869377953950887">"Používateľské rozhranie"</string> - <string name="thermal" msgid="6758074791325414831">"Termálne"</string> + <string name="thermal" msgid="6758074791325414831">"Teplota"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Režim jednej ruky"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Načúvacie zariadenia"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktívne"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Potiahnutím doľava spustite komunitný návod"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Prispôsobiť"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Zavrieť"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Pridávajte aj odstraňujte miniaplikácie a meňte ich poradie v tomto priestore"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Tu pridávajte, odstraňujte a presúvajte miniaplikácie"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Pridať ďalšie miniaplikácie"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Miniaplikácie prispôsobíte dlhým stlačením"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Prispôsobiť miniaplikácie"</string> @@ -562,7 +557,7 @@ <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"Vaše osobné aplikácie sú k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"Toto zariadenie je k internetu pripojené prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>"</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"Toto zariadenie poskytuje <xliff:g id="ORGANIZATION_NAME">%s</xliff:g>"</string> - <string name="monitoring_title_device_owned" msgid="7029691083837606324">"Správa zariadení"</string> + <string name="monitoring_title_device_owned" msgid="7029691083837606324">"Správa zariadenia"</string> <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"Zapisovanie do denníka siete"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Certifikáty CA"</string> @@ -574,7 +569,7 @@ <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"Organizácia nainštalovala pre toto zariadenie certifikačnú autoritu. Zabezpečená sieťová premávka môže byť sledovaná či upravená."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"Organizácia nainštalovala pre váš pracovný profil certifikačnú autoritu. Zabezpečená sieťová premávka môže byť sledovaná či upravená."</string> <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_management_network_logging" msgid="216983105036994771">"Správca aktivoval zapisovanie do denníka siete, ktoré sleduje sieťovú 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> <string name="monitoring_description_named_vpn" msgid="8220190039787149671">"Toto zariadenie je pripojené na internet prostredníctvom aplikácie <xliff:g id="VPN_APP">%1$s</xliff:g>. Vaša sieťová aktivita, ako sú e‑maily a dáta prehliadania, je viditeľná pre poskytovateľa 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> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Klepnutím si zobrazíte ďalšie informácie"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Žiadny budík"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"zadať zámku obrazovky"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dotknite sa senzora odtlačkov prstov. Ide o kratšie tlačidlo na boku telefónu."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Senzor odtlačkov prstov"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"overte"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"vstúpte do zariadenia"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona zbalenia"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona rozbalenia"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"alebo"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gesto prechodu späť"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gesto prechodu domov"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Akčný kláves"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hotovo"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Podsvietenie klávesnice"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d. úroveň z %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Ovládanie domácnosti"</string> diff --git a/packages/SystemUI/res/values-sl/strings.xml b/packages/SystemUI/res/values-sl/strings.xml index 489551d1c308..5f799acab64e 100644 --- a/packages/SystemUI/res/values-sl/strings.xml +++ b/packages/SystemUI/res/values-sl/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Ustavili boste snemanje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Ustavi snemanje"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Želite ustaviti deljenje zaslona?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Ustavili boste deljenje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Ustavi deljenje"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Ustavili boste predvajanje aplikacije <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Ustavi predvajanje"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Zapri"</string> <string name="issuerecord_title" msgid="286627115110121849">"Snemalnik težav"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Obdelovanje posnetka težave"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Obvestilo o aktivni dejavnosti za sejo zbiranja težav"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Napaka pri shranjevanju posnetka težave"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Napaka pri zagonu snemanja težave"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Vklopljen je celozaslonski način."</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Če želite zapreti, povlecite navzdol z vrha zaslona"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Razumem"</string> <string name="accessibility_back" msgid="6530104400086152611">"Nazaj"</string> <string name="accessibility_home" msgid="5430449841237966217">"Začetni zaslon"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Odklenjeno z obrazom. Pritisnite za nadaljevanje."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Obraz je prepoznan. Pritisnite za nadaljevanje."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Obraz je prepoznan. Za nadaljevanje pritisnite ikono za odklepanje."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Odklenjeno z obrazom. Dotaknite se, če želite nadaljevati."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Preverjena pristnost"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Prekliči preverjanje pristnosti"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Več možnosti"</string> @@ -216,7 +214,7 @@ <string name="biometric_re_enroll_notification_content" msgid="8685925877186288180">"To je potrebno, če želite izboljšati varnost in učinkovitost delovanja."</string> <string name="fingerprint_re_enroll_notification_title" msgid="4539432429683916604">"Vnovična nastavitev odklepanja s prstnim odtisom"</string> <string name="fingerprint_re_enroll_notification_name" msgid="630798657797645704">"Odklepanje s prstnim odtisom"</string> - <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Nastavitev odklepanja s prstnim odtisom"</string> + <string name="fingerprint_re_enroll_dialog_title" msgid="3526033128113925780">"Nastavite odklepanje s prstnim odtisom"</string> <string name="fingerprint_re_enroll_dialog_content" msgid="4866561176695984879">"Če želite znova nastaviti odklepanje s prstnim odtisom, bodo trenutne slike in modeli prstnih odtisov izbrisani.\n\nPo izbrisu boste morali znova nastaviti odklepanje s prstnim odtisom, da boste telefon lahko odklenili s prstnim odtisom ali potrdili svojo identiteto."</string> <string name="fingerprint_re_enroll_dialog_content_singular" msgid="3083663339787381218">"Če želite znova nastaviti odklepanje s prstnim odtisom, bodo trenutne slike in model prstnih odtisov izbrisani.\n\nPo izbrisu boste morali znova nastaviti odklepanje s prstnim odtisom, da boste telefon lahko odklenili s prstnim odtisom ali potrdili svojo identiteto."</string> <string name="fingerprint_reenroll_failure_dialog_content" msgid="4733768492747300666">"Odklepanja s prstnim odtisom ni bilo mogoče nastaviti. Odprite nastavitve in poskusite znova."</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Shranjeno"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"prekinitev povezave"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktiviranje"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Samodejno vklopi jutri"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funkcije, kot sta Hitro deljenje in Poišči mojo napravo, uporabljajo Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth se bo vklopil jutri zjutraj"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Deli zvok"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Poteka deljenje zvoka"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Baterija na <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Zvok"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Slušalke z mikrofonom"</string> @@ -387,7 +382,7 @@ <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Snemanje zaslona"</string> <string name="performance" msgid="6552785217174378320">"Učinkovitost delovanja"</string> <string name="user_interface" msgid="3712869377953950887">"Uporabniški vmesnik"</string> - <string name="thermal" msgid="6758074791325414831">"Toplotno"</string> + <string name="thermal" msgid="6758074791325414831">"Toplota"</string> <string name="quick_settings_onehanded_label" msgid="2416537930246274991">"Enoročni način"</string> <string name="quick_settings_hearing_devices_label" msgid="7277170419679404129">"Slušni pripomočki"</string> <string name="quick_settings_hearing_devices_connected" msgid="6519069502397037781">"Aktivno"</string> @@ -643,7 +638,7 @@ <string name="volume_panel_spatial_audio_title" msgid="3367048857932040660">"Prostorski zvok"</string> <string name="volume_panel_spatial_audio_off" msgid="4177490084606772989">"Izklopljeno"</string> <string name="volume_panel_spatial_audio_fixed" msgid="3136080137827746046">"Fiksno"</string> - <string name="volume_panel_spatial_audio_tracking" msgid="5711115234001762974">"Spremljanje položaja glave"</string> + <string name="volume_panel_spatial_audio_tracking" msgid="5711115234001762974">"Spremljanje premikov glave"</string> <string name="volume_ringer_change" msgid="3574969197796055532">"Dotaknite se, če želite spremeniti način zvonjenja."</string> <string name="volume_ringer_hint_mute" msgid="4263821214125126614">"izklop zvoka"</string> <string name="volume_ringer_hint_unmute" msgid="6119086890306456976">"vklop zvoka"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Dotaknite se za več informacij"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Ni nastavljenih alarmov"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"odklenite zaslon"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Dotaknite se tipala prstnih odtisov. To je krajši gumb ob strani telefona."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Tipalo prstnih odtisov"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"preverjanje pristnosti"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"vstop v napravo"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona za strnitev"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona za razširitev"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ali"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Poteza za pomik nazaj"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Poteza za začetni zaslon"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Gumb za dejanje"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Končano"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Osvetlitev tipkovnice"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Stopnja %1$d od %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kontrolniki za dom"</string> diff --git a/packages/SystemUI/res/values-sq/strings.xml b/packages/SystemUI/res/values-sq/strings.xml index 5b74b1e487e6..30e22e0c3319 100644 --- a/packages/SystemUI/res/values-sq/strings.xml +++ b/packages/SystemUI/res/values-sq/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Do të ndalosh regjistrimin me <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Ndalo regjistrimin"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Të ndalohet ndarja e ekranit?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Do të ndalosh ndarjen e <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Ndalo ndarjen"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Do të ndalosh transmetimin e <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Ndalo transmetimin"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Mbyll"</string> <string name="issuerecord_title" msgid="286627115110121849">"Regjistruesi i problemeve"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Regjistrimi i problemeve me përpunimin"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Njoftim në vazhdim për një seancë për mbledhjen e problemeve"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Gabim gjatë ruajtjes së regjistrimit të problemit"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Gabim gjatë nisjes së regjistrimit të problemit"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Po shikon ekranin e plotë"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Për të dalë, rrëshqit shpejt poshtë nga kreu i ekranit"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"E kuptova"</string> <string name="accessibility_back" msgid="6530104400086152611">"Prapa"</string> <string name="accessibility_home" msgid="5430449841237966217">"Faqja bazë"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"U shkyç me fytyrë. Shtyp për të vazhduar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Fytyra u njoh. Shtyp për të vazhduar."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Fytyra u njoh. Shtyp ikonën e shkyçjes për të vazhduar."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"U shkyç me fytyrë. Trokit për të vazhduar."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"U vërtetua"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Anulo vërtetimin"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Opsione të tjera"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Ruajtur"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"shkëput"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivizo"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Aktivizo automatikisht nesër"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Veçoritë e tilla si \"Ndarja e shpejtë\" dhe \"Gjej pajisjen time\" përdorin Bluetooth-in"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth-i do të aktivizohet nesër në mëngjes"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Ndaj audion"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audioja po ndahet"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> bateri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Kufje me mikrofon"</string> @@ -568,9 +563,9 @@ <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Certifikatat CA"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Shiko politikat"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Shiko kontrollet"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"Kjo pajisje i përket <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nAdministratori i teknologjisë së informacionit mund të monitorojë dhe menaxhojë cilësimet, qasjen e korporatës, aplikacionet, të dhënat e lidhura me pajisjen tënde, si dhe informacionet e vendndodhjes së pajisjes tënde.\n\nPër më shumë informacione, kontakto me administratorin e teknologjisë së informacionit."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"Kjo pajisje i përket <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>.\n\nAdministratori i teknologjisë së informacionit mund të monitorojë dhe menaxhojë cilësimet, qasjen e korporatës, aplikacionet, të dhënat e lidhura me pajisjen tënde, si dhe informacionet e vendndodhjes së pajisjes sate.\n\nPër më shumë informacione, kontakto me administratorin e teknologjisë së informacionit."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g> mund të arrijë të qaset te të dhënat e lidhura me këtë pajisje, të menaxhojë aplikacionet dhe të ndryshojë cilësimet e kësaj pajisjeje.\n\nNëse ke pyetje, kontakto me <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>."</string> - <string name="monitoring_description_management" msgid="4308879039175729014">"Kjo pajisje i përket organizatës sate.\n\nAdministratori i teknologjisë së informacionit mund të monitorojë dhe menaxhojë cilësimet, qasjen e korporatës, aplikacionet, të dhënat e lidhura me pajisjen tënde, si dhe informacionet e vendndodhjes së pajisjes tënde.\n\nPër më shumë informacione, kontakto me administratorin e teknologjisë së informacionit."</string> + <string name="monitoring_description_management" msgid="4308879039175729014">"Kjo pajisje i përket organizatës sate.\n\nAdministratori i teknologjisë së informacionit mund të monitorojë dhe menaxhojë cilësimet, qasjen e korporatës, aplikacionet, të dhënat e lidhura me pajisjen tënde, si dhe informacionet e vendndodhjes së pajisjes sate.\n\nPër më shumë informacione, kontakto me administratorin e teknologjisë së informacionit."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"Organizata jote instaloi një autoritet certifikate në këtë pajisje. Trafiku i rrjetit tënd të sigurt mund të monitorohet ose modifikohet."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"Organizata jote instaloi një autoritet certifikate në profilin tënd të punës. Trafiku i rrjetit tënd të sigurt mund të monitorohet ose modifikohet."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"Në këtë pajisje është instaluar një autoritet certifikate. Trafiku i rrjetit tënd të sigurt mund të monitorohet ose modifikohet."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Trokit për më shumë informacione"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Nuk është caktuar asnjë alarm"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"hyr te kyçja e ekranit"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Prek sensorin e gjurmës së gishtit. Është butoni më i shkurtër në pjesën anësore të telefonit"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensori i gjurmës së gishtit"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"për ta vërtetuar"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"për të hyrë në pajisje"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikona e palosjes"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikona e zgjerimit"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"ose"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Gjesti i kthimit prapa"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Gjesti për të shkuar tek ekrani bazë"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Tasti i veprimit"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"U krye"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Drita e sfondit e tastierës"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Niveli: %1$d nga %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Kontrollet e shtëpisë"</string> diff --git a/packages/SystemUI/res/values-sr/strings.xml b/packages/SystemUI/res/values-sr/strings.xml index 18772744d19d..8eac2d641318 100644 --- a/packages/SystemUI/res/values-sr/strings.xml +++ b/packages/SystemUI/res/values-sr/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Зауставићете снимање за: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Заустави снимање"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Желите да зауставите дељење екрана?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Зауставићете дељење за: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Заустави дељење"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Зауставићете пребацивање за: <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Заустави пребацивање"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Затвори"</string> <string name="issuerecord_title" msgid="286627115110121849">"Снимач проблема"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Обрађује се снимак проблема"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"обавештење о активности у току за сесију прикупљања података о проблему"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Грешка при чувању снимка проблема"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Грешка при покретању снимања проблема"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Приказује се цео екран"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Да бисте затворили, превуците надоле од врха екрана"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Важи"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"Почетна"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Откључано је лицем. Притисните да бисте наставили."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Лице је препознато. Притисните да бисте наставили."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Лице препознато. Притисните икону откључавања за наставак."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Откључано је лицем. Додирните да бисте наставили."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Идентитет је потврђен"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Откажите потврду идентитета"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Још опција"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Сачувано"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"прекините везу"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"активирајте"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Аутоматски укључи сутра"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Функције као што су Quick Share и Пронађи мој уређај користе Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ће се укључити сутра ујутру"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Дели звук"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Дели се звук"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Ниво батерије је <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудио"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Слушалице"</string> @@ -467,9 +462,9 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Превуците улево да бисте започели заједнички водич"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Прилагодите"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Одбаци"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Додајте, уклоните и преуредите виџете у овом простору"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Додајте, уклоните и преуредите виџете овде"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Додајте још виџета"</string> - <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Дуги притисак за прилагођавање виџета"</string> + <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Дуго притисните за прилагођавање виџета"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Прилагоди виџете"</string> <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"Икона апликације за онемогућен виџет"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"Икона апликације за виџет који се инсталира"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Додирните за више информација"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Није подешен"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"унесите откључавање екрана"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Додирните сензор за отисак прста. То је краће дугме на бочној страни телефона"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сензор за отисак прста"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"потврдите идентитет"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"унесите уређај"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Икона за скупљање"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Икона за проширивање"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"или"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Покрет за враћање"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Покрет за почетну страницу"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Тастер радњи"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Позадинско осветљење тастатуре"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%1$d. ниво од %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Контроле за дом"</string> diff --git a/packages/SystemUI/res/values-sv/strings.xml b/packages/SystemUI/res/values-sv/strings.xml index dc4dea1e4a1a..aa17101c79a1 100644 --- a/packages/SystemUI/res/values-sv/strings.xml +++ b/packages/SystemUI/res/values-sv/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Du slutar att spela in <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Sluta spela in"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Vill du sluta dela skärmen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Du slutar att dela <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Sluta dela"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Du slutar att casta <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Sluta casta"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Stäng"</string> <string name="issuerecord_title" msgid="286627115110121849">"Probleminspelare"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Behandlar probleminspelning"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Avisering om pågående probleminsamlingssession"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Det gick inte att spara probleminspelning"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Det gick inte att starta probleminspelning"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Visar på fullskärm"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Svep nedåt från skärmens överkant för att avsluta"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Tillbaka"</string> <string name="accessibility_home" msgid="5430449841237966217">"Startsida"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Upplåst med ansiktslås. Tryck för att fortsätta."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Ansiktet har identifierats. Tryck för att fortsätta."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Ansiktet har identifierats. Tryck på ikonen lås upp."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Upplåst med ansiktslås. Tryck för att fortsätta."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Autentiserad"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Avbryt autentiseringen"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Fler alternativ"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Sparad"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"koppla från"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"aktivera"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Aktivera automatiskt i morgon"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Funktioner som Snabbdelning och Hitta min enhet använder Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth aktiveras i morgon bitti"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Dela ljud"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Delar ljud"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> batteri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Ljud"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Skärminspelning"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Starta"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Stoppa"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Registrera problem"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Anmäl problem"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Starta"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Stoppa"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Felrapport"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Tryck för mer information"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Inget inställt alarm"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ange skärmlåset"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Tryck på fingeravtryckssensorn. Det är den mindre knappen på sidan av telefonen"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Fingeravtryckssensor"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentisera"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ange enhet"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Ikonen Komprimera"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Ikonen Utöka"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"eller"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Tillbaka-rörelse"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Rörelse för att öppna startskärmen"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Åtgärdstangent"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klar"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Bakgrundsbelysning för tangentbord"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Nivå %1$d av %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Hemstyrning"</string> diff --git a/packages/SystemUI/res/values-sw/strings.xml b/packages/SystemUI/res/values-sw/strings.xml index 7bfef43bf2cb..c72986adb3af 100644 --- a/packages/SystemUI/res/values-sw/strings.xml +++ b/packages/SystemUI/res/values-sw/strings.xml @@ -107,7 +107,7 @@ <string name="screenrecord_background_processing_label" msgid="7244617554884238898">"Inachakata rekodi ya skrini"</string> <string name="screenrecord_channel_description" msgid="4147077128486138351">"Arifa inayoendelea ya kipindi cha kurekodi skrini"</string> <string name="screenrecord_permission_dialog_title" msgid="303380743267672953">"Ungependa kuanza kurekodi?"</string> - <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Unaporekodi, Android inaweza kufikia kitu chochote kitakachoonekana kwenye skrini yako au kuchezwa kwenye kifaa chako. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha na sauti na video."</string> + <string name="screenrecord_permission_dialog_warning_entire_screen" msgid="4152602778470789965">"Unaporekodi, Android inaweza kufikia kitu chochote kitakachoonekana kwenye skrini yako au kuchezwa kwenye kifaa chako. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha, sauti na video."</string> <string name="screenrecord_permission_dialog_warning_single_app" msgid="6818309727772146138">"Unaporekodi programu, Android inaweza kufikia kitu chochote kitakachoonekana au kuchezwa kwenye programu hiyo. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha na sauti na video."</string> <string name="screenrecord_permission_dialog_continue" msgid="5811122652514424967">"Anza kurekodi"</string> <string name="screenrecord_audio_label" msgid="6183558856175159629">"Rekodi sauti"</string> @@ -120,7 +120,7 @@ <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"Inarekodi skrini na sauti"</string> <string name="screenrecord_taps_label" msgid="1595690528298857649">"Onyesha sehemu za kugusa kwenye skrini"</string> <string name="screenrecord_stop_label" msgid="72699670052087989">"Acha"</string> - <string name="screenrecord_share_label" msgid="5025590804030086930">"Shiriki"</string> + <string name="screenrecord_share_label" msgid="5025590804030086930">"Tuma"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"Imehifadhi rekodi ya skrini"</string> <string name="screenrecord_save_text" msgid="3008973099800840163">"Gusa ili uangalie"</string> <string name="screenrecord_save_error" msgid="5862648532560118815">"Hitilafu imetokea wakati wa kuhifadhi rekodi ya skrini"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Utaacha kurekodi maudhui ya <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Acha kurekodi"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ungependa kuacha kuonyesha skrini?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Utakomesha ufikiaji wa maudhui ya <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Acha kuonyesha skrini"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Utaacha kutuma maudhui ya <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Acha kutuma maudhui"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Funga"</string> <string name="issuerecord_title" msgid="286627115110121849">"Kifaa cha Kurekodi Hitilafu"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Mchakato wa kurekodi hitilafu unaendelea"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Arifa inayoendelea kuhusu kipindi cha ukusanyaji wa data ya hitilafu"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Hitilafu imetokea wakati wa kuhifadhi rekodi ya hitilafu"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Hitilafu imetokea wakati wa kuanza kurekodi hitilafu"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Unatazama kwenye skrini nzima"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Telezesha kidole chini kutoka sehemu ya juu ya skrini yako ili ufunge"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Nimeelewa"</string> <string name="accessibility_back" msgid="6530104400086152611">"Nyuma"</string> <string name="accessibility_home" msgid="5430449841237966217">"Nyumbani"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Imefunguliwa kwa kutumia uso wako. Bonyeza ili uendelee."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Uso umetambuliwa. Bonyeza ili uendelee."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Uso umetambuliwa. Bonyeza aikoni ya kufungua ili uendelee."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Imefunguliwa kwa kutumia uso wako. Gusa ili uendelee."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Umethibitishwa"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Ghairi Uthibitishaji"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Chaguo Zaidi"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Imehifadhiwa"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ondoa"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"anza kutumia"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Washa kesho kiotomatiki"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Vipengele kama vile Kutuma Haraka na Tafuta Kifaa Changu hutumia Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth itawaka kesho asubuhi"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Sikiliza pamoja na wengine"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Mnasikiliza pamoja"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Chaji ya betri ni <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Sauti"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Vifaa vya sauti"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Rekodi ya skrini"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Anza kurekodi"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Acha kurekodi"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Hitilafu ya Kurekodi"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Rekodi Hitilafu"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Anza"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Simamisha"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Ripoti ya Hitilafu"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Gusa ili upate maelezo zaidi"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Hujaweka kengele"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"weka kifunga skrini"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Gusa kitambuzi cha alama ya kidole. Ni kitufe kifupi zaidi kilicho pembeni mwa simu"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Kitambua alama ya kidole"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"thibitisha"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"weka kifaa"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Kunja aikoni"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Panua aikoni"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"au"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Ishara ya kurudi nyuma"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Mguso wa kurudi kwenye skrini ya kwanza"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Kitufe cha vitendo"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Nimemaliza"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Mwanga chini ya kibodi"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Kiwango cha %1$d kati ya %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Dhibiti Vifaa Nyumbani"</string> diff --git a/packages/SystemUI/res/values-ta/strings.xml b/packages/SystemUI/res/values-ta/strings.xml index 62983630f8d3..e54c07e18f4c 100644 --- a/packages/SystemUI/res/values-ta/strings.xml +++ b/packages/SystemUI/res/values-ta/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ஆப்ஸை ரெக்கார்டு செய்வதை நிறுத்துவீர்கள்"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ரெக்கார்டிங்கை நிறுத்து"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"திரையைப் பகிர்வதை நிறுத்தவா?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ஆப்ஸைப் பகிர்வதை நிறுத்துவீர்கள்"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"பகிர்வதை நிறுத்து"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ஆப்ஸை அலைபரப்புவதை நிறுத்துவீர்கள்"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"அலைபரப்புவதை நிறுத்து"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"மூடு"</string> <string name="issuerecord_title" msgid="286627115110121849">"சிக்கல் ரெக்கார்டர்"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"சிக்கல் ரெக்கார்டிங்கைச் செயலாக்குகிறது"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"சிக்கல் சேகரிப்பு அமர்வுக்கான பின்னணிச் செயல்பாட்டின் அறிவிப்பு"</string> @@ -155,13 +153,12 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"சிக்கல் தொடர்பான ரெக்கார்டிங்கைச் சேமிப்பதில் பிழை ஏற்பட்டது"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"சிக்கலை ரெக்கார்டிங் செய்யத் தொடங்குவதில் பிழை ஏற்பட்டது"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"முழுத் திரையில் காட்டுகிறது"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"வெளியேற, உங்கள் திரையின் மேலிருந்து கீழ்நோக்கி ஸ்வைப் செய்யவும்"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"சரி"</string> <string name="accessibility_back" msgid="6530104400086152611">"பின்செல்"</string> <string name="accessibility_home" msgid="5430449841237966217">"முகப்பு"</string> <string name="accessibility_menu" msgid="2701163794470513040">"மெனு"</string> - <string name="accessibility_accessibility_button" msgid="4089042473497107709">"அணுகல்தன்மை"</string> + <string name="accessibility_accessibility_button" msgid="4089042473497107709">"மாற்றுத்திறன் வசதி"</string> <string name="accessibility_rotate_button" msgid="1238584767612362586">"திரையைச் சுழற்று"</string> <string name="accessibility_recent" msgid="901641734769533575">"மேலோட்டப் பார்வை"</string> <string name="accessibility_camera_button" msgid="2938898391716647247">"கேமரா"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"முகம் மூலம் அன்லாக் செய்யப்பட்டது. தொடர அழுத்தவும்."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"முகம் அங்கீகரிக்கப்பட்டது. தொடர அழுத்தவும்."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"முகம் அங்கீகரிக்கப்பட்டது. தொடர அன்லாக் ஐகானை அழுத்தவும்."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"முகம் கொண்டு அன்லாக் செய்யப்பட்டது. தொடர தட்டவும்."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"அங்கீகரிக்கப்பட்டது"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"அங்கீகரிப்பை ரத்துசெய்"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"கூடுதல் விருப்பங்கள்"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"சேமிக்கப்பட்டது"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"இணைப்பு நீக்கும்"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"செயல்படுத்தும்"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"தானாகவே நாளை இயக்கப்படும்"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"விரைவுப் பகிர்தல், Find My Device போன்ற அம்சங்கள் புளூடூத்தைப் பயன்படுத்துகின்றன"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"நாளை காலை புளூடூத் இயக்கப்படும்"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ஆடியோவைப் பகிர்"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ஆடியோ பகிரப்படுகிறது"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> பேட்டரி"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ஆடியோ"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ஹெட்செட்"</string> @@ -474,7 +469,7 @@ <string name="icon_description_for_disabled_widget" msgid="4693151565003206943">"முடக்கப்பட்ட விட்ஜெட்டுக்கான ஆப்ஸ் ஐகான்"</string> <string name="icon_description_for_pending_widget" msgid="8413816401868001755">"நிறுவப்படும் விட்ஜெட்டுக்கான ஆப்ஸ் ஐகான்"</string> <string name="edit_widget" msgid="9030848101135393954">"விட்ஜெட்டைத் திருத்து"</string> - <string name="button_to_remove_widget" msgid="3948204829181214098">"அகற்றும்"</string> + <string name="button_to_remove_widget" msgid="3948204829181214098">"அகற்று"</string> <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"விட்ஜெட்டைச் சேர்"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"முடிந்தது"</string> <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"விட்ஜெட்களைச் சேர்"</string> @@ -626,7 +621,7 @@ <string name="stream_notification" msgid="7930294049046243939">"அறிவிப்பு"</string> <string name="stream_bluetooth_sco" msgid="6234562365528664331">"புளூடூத்"</string> <string name="stream_dtmf" msgid="7322536356554673067">"டூயல் டோன் மல்டி ஃப்ரீக்வென்சி"</string> - <string name="stream_accessibility" msgid="3873610336741987152">"அணுகல்தன்மை"</string> + <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> @@ -932,7 +927,7 @@ <string name="notification_channel_setup" msgid="7660580986090760350">"அமைவு"</string> <string name="notification_channel_storage" msgid="2720725707628094977">"சேமிப்பிடம்"</string> <string name="notification_channel_hints" msgid="7703783206000346876">"குறிப்புகள்"</string> - <string name="notification_channel_accessibility" msgid="8956203986976245820">"அணுகல்தன்மை"</string> + <string name="notification_channel_accessibility" msgid="8956203986976245820">"மாற்றுத்திறன் வசதி"</string> <string name="instant_apps" msgid="8337185853050247304">"Instant Apps"</string> <string name="instant_apps_title" msgid="8942706782103036910">"<xliff:g id="APP">%1$s</xliff:g> இயங்குகிறது"</string> <string name="instant_apps_message" msgid="6112428971833011754">"நிறுவ வேண்டிய தேவையில்லாமல் ஆப்ஸ் திறக்கப்பட்டது."</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"மேலும் தகவல்களுக்கு தட்டவும்"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"அலாரம் எதுவுமில்லை"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"திரைப் பூட்டை உள்ளிடலாம்"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"கைரேகை சென்சாரைத் தொடவும். இது மொபைலின் பக்கவாட்டில் உள்ள சிறிய பட்டன் ஆகும்"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"கைரேகை சென்சார்"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"அங்கீகரி"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"சாதனத்தைத் திற"</string> @@ -1341,20 +1337,16 @@ <string name="shortcut_helper_category_multitasking" msgid="7413381961404090136">"பல வேலைகளைச் செய்தல்"</string> <string name="shortcut_helper_category_input" msgid="8674018654124839566">"உள்ளீடு"</string> <string name="shortcut_helper_category_app_shortcuts" msgid="8010249408308587117">"ஆப்ஸ் ஷார்ட்கட்கள்"</string> - <string name="shortcut_helper_category_a11y" msgid="6314444792641773464">"அணுகல்தன்மை"</string> + <string name="shortcut_helper_category_a11y" msgid="6314444792641773464">"மாற்றுத்திறன் வசதி"</string> <string name="shortcut_helper_title" msgid="8567500639300970049">"கீபோர்டு ஷார்ட்கட்கள்"</string> <string name="shortcut_helper_search_placeholder" msgid="5488547526269871819">"தேடல் ஷார்ட்கட்கள்"</string> <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"சுருக்குவதற்கான ஐகான்"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"விரிவாக்குவதற்கான ஐகான்"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"அல்லது"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"பின்செல்வதற்கான சைகை"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"முகப்பிற்குச் செல்வதற்கான சைகை"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ஆக்ஷன் பட்டன்"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"முடிந்தது"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"கீபோர்டு பேக்லைட்"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"நிலை, %2$d இல் %1$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ஹோம் கன்ட்ரோல்கள்"</string> diff --git a/packages/SystemUI/res/values-te/strings.xml b/packages/SystemUI/res/values-te/strings.xml index e3238fe2b690..216ee6228770 100644 --- a/packages/SystemUI/res/values-te/strings.xml +++ b/packages/SystemUI/res/values-te/strings.xml @@ -119,7 +119,7 @@ <string name="screenrecord_ongoing_screen_only" msgid="4459670242451527727">"స్క్రీన్ రికార్డింగ్ చేయబడుతోంది"</string> <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"స్క్రీన్, ఆడియో రికార్డింగ్ చేయబడుతున్నాయి"</string> <string name="screenrecord_taps_label" msgid="1595690528298857649">"స్క్రీన్పై తాకే స్థానాలను చూపండి"</string> - <string name="screenrecord_stop_label" msgid="72699670052087989">"ఆపివేయి"</string> + <string name="screenrecord_stop_label" msgid="72699670052087989">"ఆపివేయండి"</string> <string name="screenrecord_share_label" msgid="5025590804030086930">"షేర్ చేయండి"</string> <string name="screenrecord_save_title" msgid="1886652605520893850">"స్క్రీన్ రికార్డింగ్ సేవ్ చేయబడింది"</string> <string name="screenrecord_save_text" msgid="3008973099800840163">"చూడటానికి ట్యాప్ చేయండి"</string> @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"మీరు <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ను రికార్డ్ చేయడం ఆపివేస్తారు"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"రికార్డింగ్ను ఆపివేయండి"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"స్క్రీన్ను షేర్ చేయడం ఆపివేయాలా?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"మీరు <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ను షేర్ చేయడం ఆపివేస్తారు"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"షేర్ చేయడాన్ని ఆపివేయండి"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"మీరు <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>ను ప్రసారం చేయడం ఆపివేస్తారు"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"ప్రసారాన్ని ఆపివేయండి"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"మూసివేయండి"</string> <string name="issuerecord_title" msgid="286627115110121849">"సమస్య రికార్డర్"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"సమస్య రికార్డింగ్ ప్రాసెసింగ్"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"సమస్య సేకరణ సెషన్ కోసం కొనసాగుతోన్న నోటిఫికేషన్"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"సమస్య రికార్డింగ్ను సేవ్ చేయడంలో ఎర్రర్ ఏర్పడింది"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"సమస్య రికార్డింగ్ను ప్రారంభించడంలో ఎర్రర్ ఏర్పడింది"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"ఫుల్ స్క్రీన్లో చూస్తున్నారు"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"ఎగ్జిట్ అవ్వడానికి, మీ స్క్రీన్ పై నుండి కిందికి స్వైప్ చేయండి"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"సరే"</string> <string name="accessibility_back" msgid="6530104400086152611">"వెనుకకు"</string> <string name="accessibility_home" msgid="5430449841237966217">"హోమ్"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ముఖం ద్వారా అన్లాక్ చేయబడింది. కొనసాగించడానికి నొక్కండి."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"ముఖం గుర్తించబడింది. కొనసాగించడానికి నొక్కండి."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"ముఖం గుర్తించబడింది. కొనసాగడానికి అన్లాక్ చిహ్నం నొక్కండి."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ముఖం ద్వారా అన్లాక్ అయింది. కొనసాగడానికి ట్యాప్ చేయండి."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ప్రామాణీకరించబడింది"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ప్రామాణీకరణను రద్దు చేయండి"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"మరిన్ని ఆప్షన్లు"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"సేవ్ అయ్యింది"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"డిస్కనెక్ట్ చేయండి"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"యాక్టివేట్ చేయండి"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"రేపు ఆటోమేటిక్గా ఆన్ చేస్తుంది"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"క్విక్ షేర్, Find My Device వంటి ఫీచర్లు బ్లూటూత్ను ఉపయోగిస్తాయి"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"బ్లూటూత్ రేపు ఉదయం ఆన్ అవుతుంది"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"ఆడియోను షేర్ చేయండి"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"ఆడియోను షేర్ చేస్తున్నారు"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> బ్యాటరీ"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"ఆడియో"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"హెడ్సెట్"</string> @@ -562,11 +557,11 @@ <string name="quick_settings_disclosure_personal_profile_named_vpn" msgid="451254750289172191">"మీ వ్యక్తిగత యాప్లు <xliff:g id="VPN_APP">%1$s</xliff:g> ద్వారా ఇంటర్నెట్కు కనెక్ట్ చేయబడ్డాయి"</string> <string name="quick_settings_disclosure_named_vpn" msgid="6191822916936028208">"ఈ పరికరం <xliff:g id="VPN_APP">%1$s</xliff:g> ద్వారా ఇంటర్నెట్కు కనెక్ట్ చేయబడింది"</string> <string name="monitoring_title_financed_device" msgid="3659962357973919387">"ఈ పరికరం <xliff:g id="ORGANIZATION_NAME">%s</xliff:g> ద్వారా అందించబడింది"</string> - <string name="monitoring_title_device_owned" msgid="7029691083837606324">"పరికర నిర్వహణ"</string> + <string name="monitoring_title_device_owned" msgid="7029691083837606324">"డివైజ్ మేనేజ్మెంట్"</string> <string name="monitoring_subtitle_vpn" msgid="800485258004629079">"VPN"</string> <string name="monitoring_subtitle_network_logging" msgid="2444199331891219596">"నెట్వర్క్ లాగింగ్"</string> <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"CA ప్రమాణపత్రాలు"</string> - <string name="monitoring_button_view_policies" msgid="3869724835853502410">"విధానాలను చూడండి"</string> + <string name="monitoring_button_view_policies" msgid="3869724835853502410">"పాలసీలను చూడండి"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"నియంత్రణలను చూడండి"</string> <string name="monitoring_description_named_management" msgid="505833016545056036">"ఈ పరికరం <xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>కు చెందినది.\n\nసెట్టింగ్లను, కార్పొరేట్ యాక్సెస్ను, యాప్లను, మీ పరికరానికి సంబంధించిన డేటాను, అలాగే మీ పరికరం యొక్క లొకేషన్ సమాచారాన్ని మీ IT అడ్మిన్ పర్యవేక్షించగలరు, మేనేజ్ చేయగలరు.\n\nమరింత సమాచారం కోసం, మీ IT అడ్మిన్ను సంప్రదించండి."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g>, ఈ పరికరంతో అనుబంధించబడిన డేటాను యాక్సెస్ చేయవచ్చు, యాప్లను మేనేజ్ చేయవచ్చు అలాగే ఈ పరికరాల సెట్టింగ్లను మార్చవచ్చు.\n\nమీకు ఏవైనా సందేహాలు ఉంటే, <xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>ను కాంటాక్ట్ చేయండి."</string> @@ -574,7 +569,7 @@ <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"ఈ పరికరంలో మీ సంస్థ ఒక ప్రమాణపత్ర అధికారాన్ని ఇన్స్టాల్ చేసింది. మీ సురక్షిత నెట్వర్క్ ట్రాఫిక్ పర్యవేక్షించబడవచ్చు లేదా సవరించబడవచ్చు."</string> <string name="monitoring_description_managed_profile_ca_certificate" msgid="7904323416598435647">"మీ కార్యాలయ ప్రొఫైల్లో మీ సంస్థ ఒక ప్రమాణపత్ర అధికారాన్ని ఇన్స్టాల్ చేసింది. మీ సురక్షిత నెట్వర్క్ ట్రాఫిక్ పర్యవేక్షించబడవచ్చు లేదా సవరించబడవచ్చు."</string> <string name="monitoring_description_ca_certificate" msgid="448923057059097497">"ఈ పరికరంలో ప్రమాణపత్ర అధికారం ఇన్స్టాల్ చేయబడింది. మీ సురక్షిత నెట్వర్క్ ట్రాఫిక్ పర్యవేక్షించబడవచ్చు లేదా సవరించబడవచ్చు."</string> - <string name="monitoring_description_management_network_logging" msgid="216983105036994771">"మీ నిర్వాహకులు మీ పరికరంలోని ట్రాఫిక్ని పర్యవేక్షించగల నెట్వర్క్ లాగింగ్ని ఆన్ చేశారు."</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> @@ -1070,7 +1065,7 @@ <string name="controls_dialog_ok" msgid="2770230012857881822">"జోడించండి"</string> <string name="controls_dialog_remove" msgid="3775288002711561936">"తీసివేయండి"</string> <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_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_trivial_controls_dialog_title" msgid="7593188157655036677">"లాక్ స్క్రీన్ నుండి పరికరాలను కంట్రోల్ చేయాలా?"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"మరింత సమాచారం కోసం ట్యాప్ చేయండి"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"అలారం సెట్ చేయలేదు"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"స్క్రీన్ లాక్ను ఎంటర్ చేయండి"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"వేలిముద్ర సెన్సార్ను తాకండి. ఇది ఫోన్కు పక్కన ఉండే బటన్లలో చిన్నది"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"వేలిముద్ర సెన్సార్"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ప్రామాణీకరించండి"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"పరికరాన్ని ఎంటర్ చేయండి"</string> @@ -1296,7 +1292,7 @@ <string name="rotation_tile_with_posture_secondary_label_template" msgid="7648496484163318886">"%1$s / %2$s"</string> <string name="stylus_battery_low_percentage" msgid="2564243323894629626">"స్టయిలస్ బ్యాటరీ <xliff:g id="PERCENTAGE">%s</xliff:g>"</string> <string name="stylus_battery_low_subtitle" msgid="3583843128908823273">"మీ స్టైలస్ను ఛార్జర్కి కనెక్ట్ చేయండి"</string> - <string name="stylus_battery_low" msgid="7134370101603167096">"తక్కువ స్టైలస్ బ్యాటరీ"</string> + <string name="stylus_battery_low" msgid="7134370101603167096">"తక్కువ స్టయిలస్ బ్యాటరీ"</string> <string name="video_camera" msgid="7654002575156149298">"వీడియో కెమెరా"</string> <string name="call_from_work_profile_title" msgid="5418253516453177114">"వ్యక్తిగత యాప్ నుండి కాల్ చేయడం సాధ్యం కాదు"</string> <string name="call_from_work_profile_text" msgid="2856337395968118274">"మీ సంస్థ, వర్క్ యాప్ల నుండి మాత్రమే కాల్స్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"కుదించండి చిహ్నం"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"విస్తరించండి చిహ్నం"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"లేదా"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"వెనుకకు పంపే సంజ్ఞ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"హోమ్కు పంపే సంజ్ఞ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"యాక్షన్ కీ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"పూర్తయింది"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"కీబోర్డ్ బ్యాక్లైట్"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$dలో %1$dవ స్థాయి"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"హోమ్ కంట్రోల్స్"</string> diff --git a/packages/SystemUI/res/values-th/strings.xml b/packages/SystemUI/res/values-th/strings.xml index d21bf5e2d3b7..e861769d8f80 100644 --- a/packages/SystemUI/res/values-th/strings.xml +++ b/packages/SystemUI/res/values-th/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"คุณจะหยุดการบันทึก <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"หยุดบันทึก"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"หยุดแชร์หน้าจอไหม"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"คุณจะหยุดการแชร์ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"หยุดแชร์"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"คุณจะหยุดการแคสต์ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"หยุดแคสต์"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"ปิด"</string> <string name="issuerecord_title" msgid="286627115110121849">"โปรแกรมบันทึกปัญหา"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"กำลังประมวลผลการบันทึกปัญหา"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"การแจ้งเตือนต่อเนื่องสำหรับเซสชันการรวบรวมปัญหา"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"กำลังบันทึกปัญหา"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"แชร์"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"บันทึกไฟล์บันทึกปัญหาแล้ว"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"จัดเก็บไฟล์บันทึกปัญหาแล้ว"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"แตะเพื่อดู"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"เกิดข้อผิดพลาดในการบันทึกไฟล์บันทึกปัญหา"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"เกิดข้อผิดพลาดในการเริ่มบันทึกปัญหา"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"กำลังดูแบบเต็มหน้าจอ"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"หากต้องการออก ให้ปัดลงจากด้านบนของหน้าจอ"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"รับทราบ"</string> <string name="accessibility_back" msgid="6530104400086152611">"กลับ"</string> <string name="accessibility_home" msgid="5430449841237966217">"หน้าแรก"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"ปลดล็อกด้วยใบหน้าแล้ว กดเพื่อดำเนินการต่อ"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"จดจำใบหน้าได้ กดเพื่อดำเนินการต่อ"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"จดจำใบหน้าได้ กดไอคอนปลดล็อกเพื่อดำเนินการต่อ"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"ปลดล็อกด้วยใบหน้าแล้ว แตะเพื่อดำเนินการต่อ"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"ตรวจสอบสิทธิ์แล้ว"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"ยกเลิกการตรวจสอบสิทธิ์"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"ตัวเลือกเพิ่มเติม"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"บันทึกแล้ว"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ยกเลิกการเชื่อมต่อ"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"เปิดใช้งาน"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"เปิดอัตโนมัติในวันพรุ่งนี้"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"ฟีเจอร์ต่างๆ เช่น Quick Share และ \"หาอุปกรณ์ของฉัน\" ใช้บลูทูธ"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"บลูทูธจะเปิดพรุ่งนี้เช้า"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"แชร์เสียง"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"กำลังแชร์เสียง"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"แบตเตอรี่ <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"เสียง"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ชุดหูฟัง"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"บันทึกหน้าจอ"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"เริ่ม"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"หยุด"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"ปัญหาการบันทึก"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"บันทึกปัญหา"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"เริ่ม"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"หยุด"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"รายงานข้อบกพร่อง"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"แตะดูข้อมูลเพิ่มเติม"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"ไม่มีการตั้งปลุก"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ป้อนข้อมูลการล็อกหน้าจอ"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"แตะเซ็นเซอร์ลายนิ้วมือ ซึ่งเป็นปุ่มสั้นๆ ที่อยู่ด้านข้างโทรศัพท์"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"เซ็นเซอร์ลายนิ้วมือ"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"ตรวจสอบสิทธิ์"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"เข้าถึงอุปกรณ์"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"ไอคอนยุบ"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"ไอคอนขยาย"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"หรือ"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"ท่าทางสัมผัสสำหรับย้อนกลับ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ท่าทางสัมผัสสำหรับหน้าแรก"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ปุ่มดำเนินการ"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"เสร็จสิ้น"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"ไฟแบ็กไลต์ของแป้นพิมพ์"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"ระดับที่ %1$d จาก %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ระบบควบคุมอุปกรณ์สมาร์ทโฮม"</string> diff --git a/packages/SystemUI/res/values-tl/strings.xml b/packages/SystemUI/res/values-tl/strings.xml index b63d282b3ffc..7fb8c08d4c56 100644 --- a/packages/SystemUI/res/values-tl/strings.xml +++ b/packages/SystemUI/res/values-tl/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Hihinto ka sa pag-record ng <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Huminto sa pag-record"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ihinto ang pagbabahagi ng screen?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Hihinto ka sa pagbabahagi ng <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Ihinto ang pagbabahagi"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Hihinto ka sa pag-cast ng <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Ihinto ang pag-cast"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Isara"</string> <string name="issuerecord_title" msgid="286627115110121849">"Recorder ng Isyu"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Pinoproseso: recording ng isyu"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Kasalukuyang notification para sa session ng pangongolekta ng isyu"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Nagkaroon ng error sa pag-save ng recording ng isyu"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Nagkaroon ng error sa pagsisimula ng pag-record ng isyu"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Nanonood sa full screen"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Para lumabas, mag-swipe pababa mula sa itaas ng iyong screen"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Bumalik"</string> <string name="accessibility_home" msgid="5430449841237966217">"Home"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Na-unlock gamit ang mukha. Pindutin para magpatuloy."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Nakilala ang mukha. Pindutin para magpatuloy."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Nakilala ang mukha. Pindutin ang unlock para magpatuloy."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Na-unlock gamit ang mukha. I-tap para magpatuloy."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Na-authenticate"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Kanselahin ang Pag-authenticate"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Higit Pang Opsyon"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Na-save"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"idiskonekta"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"i-activate"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Awtomatikong i-on bukas"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Gumagamit ng Bluetooth ang mga feature tulad ng Quick Share at Hanapin ang Aking Device"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Mag-o-on ang Bluetooth bukas ng umaga"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Ibahagi ang audio"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Ibinabahagi ang audio"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> na baterya"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Headset"</string> @@ -599,7 +594,7 @@ <string name="volume_panel_dialog_settings_button" msgid="2513228491513390310">"Mga Setting"</string> <string name="volume_panel_captioning_title" msgid="5984936949147684357">"Instant Caption"</string> <string name="csd_lowered_title" product="default" msgid="2464112924151691129">"Ibinaba sa mas ligtas na level ang volume"</string> - <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Naging malakas ang volume ng headphones nang mas matagal sa inirerekomenda"</string> + <string name="csd_system_lowered_text" product="default" msgid="1250251883692996888">"Malakas ang volume ng headphones nang mas matagal sa inirerekomenda"</string> <string name="csd_500_system_lowered_text" product="default" msgid="7414943302186884124">"Lampas na sa ligtas na limitasyon para sa linggong ito ang volume ng headphone"</string> <string name="csd_button_keep_listening" product="default" msgid="4093794049149286784">"Magpatuloy sa pakikinig"</string> <string name="csd_button_lower_volume" product="default" msgid="5347210412376264579">"Hinaan"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"I-tap para sa higit pang impormasyon"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Walang alarm"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ilagay ang lock ng screen"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Pindutin ang sensor para sa fingerprint. Ito ang mas maikling button sa gilid ng telepono"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Sensor para sa fingerprint"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"i-authenticate"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"ilagay ang device"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"I-collapse ang icon"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"I-expand ang icon"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"o"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Galaw para bumalik"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Galaw para sa Home"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Action key"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Tapos na"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Backlight ng keyboard"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Level %1$d sa %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Mga Home Control"</string> diff --git a/packages/SystemUI/res/values-tr/strings.xml b/packages/SystemUI/res/values-tr/strings.xml index f78afe44e0a0..41eba18727e1 100644 --- a/packages/SystemUI/res/values-tr/strings.xml +++ b/packages/SystemUI/res/values-tr/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> içeriğini kaydetmeyi durdurursunuz"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Kaydı durdur"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ekran paylaşımı durdurulsun mu?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> içeriğini paylaşmayı durdurursunuz"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Paylaşımı durdur"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> içeriğini yayınlamayı durdurursunuz"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Yayını durdur"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Kapat"</string> <string name="issuerecord_title" msgid="286627115110121849">"Sorun Kaydedici"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Sorun kaydı işleniyor"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Sorun toplama oturumuyla ilgili devam eden görev bildirimi"</string> <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Kayıt sorunu"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Paylaş"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"Sorun kaydı saklandı"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"Sorun kaydı kaydedildi"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Görüntülemek için dokunun"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Sorun kaydı saklanırken hata oluştu"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Sorun kaydı başlatılırken hata oluştu"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Tam ekran olarak görüntüleme"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Çıkmak için ekranın üst kısmından aşağı doğru kaydırın"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Anladım"</string> <string name="accessibility_back" msgid="6530104400086152611">"Geri"</string> <string name="accessibility_home" msgid="5430449841237966217">"Ana sayfa"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Cihazın kilidini yüzünüzle açtınız. Devam etmek için basın."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Yüzünüz tanındı. Devam etmek için basın."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Yüzünüz tanındı. Kilit açma simgesine basın."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Kilidi yüzünüzle açtınız. Devam etmek için dokunun."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Kimliği Doğrulandı"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Kimlik doğrulamayı iptal et"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Diğer Seçenekler"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Kaydedildi"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"bağlantıyı kes"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"etkinleştir"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Yarın otomatik olarak aç"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Quick Share ve Cihazımı Bul gibi özellikler Bluetooth\'u kullanır"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth yarın sabah açılacak"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Sesi paylaş"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Ses paylaşılıyor"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Pil düzeyi <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Ses"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Mikrofonlu kulaklık"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Ortak eğitimi başlatmak için sola kaydırın"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Özelleştir"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Kapat"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Bu alanda widget\'larınızı ekleyin, kaldırın ve yeniden sıralayın"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Burada widget\'larınızı ekleyin, kaldırın ve düzenleyin"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Daha fazla widget ekle"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Widget\'ları özelleştirmek için uzun basın"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Widget\'ları özelleştir"</string> @@ -477,7 +472,7 @@ <string name="button_to_remove_widget" msgid="3948204829181214098">"Kaldır"</string> <string name="hub_mode_add_widget_button_text" msgid="4831464661209971729">"Widget ekle"</string> <string name="hub_mode_editing_exit_button_text" msgid="3704686734192264771">"Bitti"</string> - <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Widget ekleme"</string> + <string name="label_for_button_in_empty_state_cta" msgid="7314975555382055823">"Widget ekle"</string> <string name="title_for_empty_state_cta" msgid="6161654421223450530">"Tabletinizin kilidini açmadan favori uygulama widget\'larınıza hızlıca erişin."</string> <string name="dialog_title_to_allow_any_widget" msgid="1004820948962675644">"Kilit ekranında tüm widget\'lara izin verilsin mi?"</string> <string name="button_text_to_open_settings" msgid="1987729256950941628">"Ayarları açın"</string> @@ -586,7 +581,7 @@ <string name="monitoring_description_parental_controls" msgid="8184693528917051626">"Bu cihaz ebeveyniniz tarafından yönetiliyor. Kullandığınız uygulamalar, konumunuz ve ekran başında kalma süreniz gibi bilgiler ebeveyniniz tarafından görülüp yönetilebilir."</string> <string name="legacy_vpn_name" msgid="4174223520162559145">"VPN"</string> <string name="keyguard_indication_trust_unlocked" msgid="7395154975733744547">"TrustAgent tarafından kilit açık tutuldu"</string> - <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"Cihaz kilitlendi. Çok fazla sayıda kimlik doğrulama denemesi yapıldı."</string> + <string name="kg_prompt_after_adaptive_auth_lock" msgid="2587481497846342760">"Çok fazla kimlik doğrulama denemesi yapıldığından cihaz kilitlendi."</string> <string name="keyguard_indication_after_adaptive_auth_lock" msgid="2323400645470712787">"Cihaz kilitli\nKimlik doğrulama yapılamadı"</string> <string name="zen_mode_and_condition" msgid="5043165189511223718">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string> <string name="accessibility_volume_settings" msgid="1458961116951564784">"Ses ayarları"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Daha fazla bilgi için dokunun"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Alarm yok"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ekran kilidini gir"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Parmak izi sensörüne dokunun. Sensör, telefonun yan tarafındaki daha kısa olan düğmedir."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Parmak izi sensörü"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"kimlik doğrulaması yapın"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"cihaz girin"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Daralt simgesi"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Genişlet simgesi"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"veya"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Geri hareketi"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Ana sayfa hareketi"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Eylem tuşu"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Bitti"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Klavye aydınlatması"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Seviye %1$d / %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Ev Kontrolleri"</string> diff --git a/packages/SystemUI/res/values-uk/strings.xml b/packages/SystemUI/res/values-uk/strings.xml index 46d061983f81..dcbffc807049 100644 --- a/packages/SystemUI/res/values-uk/strings.xml +++ b/packages/SystemUI/res/values-uk/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Ви зупините запис контенту з додатка <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Зупинити запис"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Зупинити показ екрана?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Ви зупините надсилання контенту з додатка <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Зупинити показ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Ви зупините трансляцію контенту з додатка <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Припинити трансляцію"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Закрити"</string> <string name="issuerecord_title" msgid="286627115110121849">"Засіб запису проблем"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Обробка запису проблеми"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Поточне сповіщення про сеанс збирання даних про проблему"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Не вдалося зберегти запис проблеми"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Не вдалося почати запис проблеми"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Перегляд на весь екран"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Щоб вийти, проведіть пальцем униз від верхнього краю екрана"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Назад"</string> <string name="accessibility_home" msgid="5430449841237966217">"Головна"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Розблоковано (фейс-контроль). Натисніть, щоб продовжити."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Обличчя розпізнано. Натисніть, щоб продовжити."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Обличчя розпізнано. Натисніть значок розблокування."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Розблоковано (фейс-контроль). Натисніть, щоб продовжити."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Автентифіковано"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Скасувати автентифікацію"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Інші опції"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Збережено"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"від’єднати"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"активувати"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Автоматично ввімкнути завтра"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Такі функції, як швидкий обмін і \"Знайти пристрій\", використовують Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth увімкнеться завтра вранці"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Поділитись аудіо"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Надсилання аудіо"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> заряду акумулятора"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Аудіопристрій"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Гарнітура"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Запис екрана"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Почати"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Зупинити"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Запис помилки"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Запис проблеми"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Почати"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Зупинити"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Звіт про помилку"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Проведіть пальцем уліво, щоб відкрити спільний навчальний посібник"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Налаштувати"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Закрити"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Додати, вилучити чи впорядкувати віджети в цьому просторі"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Додати, вилучити чи перемістити віджети"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Додати більше віджетів"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Утримуйте, щоб налаштувати віджети"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Налаштувати віджети"</string> @@ -568,7 +563,7 @@ <string name="monitoring_subtitle_ca_certificate" msgid="8588092029755175800">"Сертифікати центру сертифікації"</string> <string name="monitoring_button_view_policies" msgid="3869724835853502410">"Переглянути правила"</string> <string name="monitoring_button_view_controls" msgid="8316440345340701117">"Переглянути засоби контролю"</string> - <string name="monitoring_description_named_management" msgid="505833016545056036">"Цей пристрій належить організації \"<xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>\".\n\nIT-адміністратор може відстежувати й контролювати налаштування, корпоративний доступ, додатки, дані пристрою та інформацію про його місцезнаходження.\n\nЩоб дізнатися більше, зв\'яжіться з IT-адміністратором."</string> + <string name="monitoring_description_named_management" msgid="505833016545056036">"Цей пристрій належить організації \"<xliff:g id="ORGANIZATION_NAME">%1$s</xliff:g>\".\n\nСистемний адміністратор може відстежувати й контролювати налаштування, корпоративний доступ, додатки, дані пристрою і інформацію про його місцезнаходження.\n\nЩоб дізнатися більше, зв’яжіться з адміністратором."</string> <string name="monitoring_financed_description_named_management" msgid="6108439201399938668">"Компанія \"<xliff:g id="ORGANIZATION_NAME_0">%1$s</xliff:g>\" має доступ до даних, пов\'язаних із цим пристроєм, а також може змінювати його налаштування та керувати додатками.\n\nЯкщо у вас є запитання, зв\'яжіться з компанією \"<xliff:g id="ORGANIZATION_NAME_1">%2$s</xliff:g>\"."</string> <string name="monitoring_description_management" msgid="4308879039175729014">"Цей пристрій належить вашій організації.\n\nІТ-адміністратор може відстежувати й контролювати налаштування, корпоративний доступ, додатки, дані пристрою та інформацію про його місцезнаходження.\n\nЩоб дізнатися більше, зв\'яжіться з ІТ-адміністратором."</string> <string name="monitoring_description_management_ca_certificate" msgid="7785013130658110130">"Адміністратор організації встановив центр сертифікації на цьому пристрої. Захищений мережевий трафік може відстежуватися або змінюватися."</string> @@ -930,7 +925,7 @@ <string name="notification_channel_screenshot" msgid="7665814998932211997">"Знімки екрана"</string> <string name="notification_channel_instant" msgid="7556135423486752680">"Додатки з миттєвим запуском"</string> <string name="notification_channel_setup" msgid="7660580986090760350">"Налаштування"</string> - <string name="notification_channel_storage" msgid="2720725707628094977">"Пам’ять"</string> + <string name="notification_channel_storage" msgid="2720725707628094977">"Сховище"</string> <string name="notification_channel_hints" msgid="7703783206000346876">"Поради"</string> <string name="notification_channel_accessibility" msgid="8956203986976245820">"Доступність"</string> <string name="instant_apps" msgid="8337185853050247304">"Додатки з миттєвим запуском"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Натисніть, щоб дізнатися більше"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Немає будильників"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"показати способи розблокування екрана"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Торкніться сканера відбитків пальців. Це менша кнопка на бічній панелі телефона."</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Сканер відбитків пальців"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"пройти автентифікацію"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"відкрити пристрій"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Значок згортання"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Значок розгортання"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"або"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Жест \"Назад\""</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Жест переходу на головний екран"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Клавіша дії"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Підсвічування клавіатури"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Рівень %1$d з %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Автоматизація дому"</string> diff --git a/packages/SystemUI/res/values-ur/strings.xml b/packages/SystemUI/res/values-ur/strings.xml index 38bddf7ceaf7..d71da46eda5c 100644 --- a/packages/SystemUI/res/values-ur/strings.xml +++ b/packages/SystemUI/res/values-ur/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"آپ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> کو ریکارڈ نہیں کر پائیں گے"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"ریکارڈنگ روکیں"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"اسکرین کا اشتراک روکیں؟"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"آپ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> کا اشتراک نہیں کر پائیں گے"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"اشتراک کرنا روکیں"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"آپ <b><xliff:g id="APP_NAME">%1$s</xliff:g></b> کو کاسٹ نہیں کر پائیں گے"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"کاسٹ کرنا بند کریں"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"بند کریں"</string> <string name="issuerecord_title" msgid="286627115110121849">"ایشو ریکارڈر"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"ایشو ریکارڈنگ پروسیس ہو رہی ہے"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"ایشو کلیکشن سیشن کے لیے جاری اطلاع"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"ریکارڈنگ ایشو"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"مسئلہ ریکارڈ ہو رہا ہے"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"اشتراک کریں"</string> - <string name="issuerecord_save_title" msgid="4161043023696751591">"ایشو ریکارڈنگ محفوظ ہو گئی"</string> + <string name="issuerecord_save_title" msgid="4161043023696751591">"مسئلے کی ریکارڈنگ محفوظ ہو گئی"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"دیکھنے کیلئے تھپتھپائیں"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"ایشو ریکارڈنگ محفوظ کرنے میں خرابی"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"ایشو ریکارڈنگ شروع کرنے میں خرابی"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"فُل اسکرین میں دیکھ رہے ہیں"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"باہر نکلنے کے لیے اپنی اسکرین کے اوپری حصے سے نیچے کی طرف سوائپ کریں"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"سمجھ آ گئی"</string> <string name="accessibility_back" msgid="6530104400086152611">"واپس جائیں"</string> <string name="accessibility_home" msgid="5430449841237966217">"ہوم"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"چہرے سے انلاک کیا گیا۔ جاری رکھنے کے لیے دبائیں۔"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"چہرے کی شناخت ہو گئی۔ جاری رکھنے کے لیے دبائیں۔"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"چہرے کی شناخت ہو گئی۔ جاری رکھنے کیلئے انلاک آئیکن دبائیں۔"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"چہرے سے غیر مقفل کیا گیا۔ جاری رکھنے کیلئے تھپتھپائیں۔"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"تصدیق کردہ"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"تصدیق کو منسوخ کریں"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"مزید اختیارات"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"محفوظ ہے"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"غیر منسلک کریں"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"فعال کریں"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"خودکار طور پر کل آن کریں"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"فوری اشتراک اور \'میرا آلہ ڈھونڈیں\' جیسی خصوصیات بلوٹوتھ کا استعمال کرتی ہیں"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"بلوٹوتھ کل صبح آن ہو جائے گا"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"آڈیو کا اشتراک کریں"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"آڈیو کا اشتراک ہو رہا ہے"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> بیٹری"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"آڈیو"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"ہیڈ سیٹ"</string> @@ -653,12 +648,8 @@ <string name="volume_panel_enter_media_output_settings" msgid="8824244246272552669">"آؤٹ پٹ کی ترتیبات درج کریں"</string> <string name="volume_panel_expanded_sliders" msgid="1885750987768506271">"والیوم سلائیڈرز کو پھیلا دیا گیا"</string> <string name="volume_panel_collapsed_sliders" msgid="1413383759434791450">"والیوم سلائیڈرز سکیڑا گیا"</string> - <!-- String.format failed for translation --> - <!-- no translation found for volume_panel_hint_mute (2153922288568199077) --> - <skip /> - <!-- String.format failed for translation --> - <!-- no translation found for volume_panel_hint_unmute (4831850937582282340) --> - <skip /> + <string name="volume_panel_hint_mute" msgid="2153922288568199077">"%s خاموش کریں"</string> + <string name="volume_panel_hint_unmute" msgid="4831850937582282340">"%s غیر خاموش کریں"</string> <string name="volume_panel_hint_muted" msgid="1124844870181285320">"خاموش کردہ"</string> <string name="volume_panel_hint_vibrate" msgid="4136223145435914132">"وائبریٹ"</string> <string name="media_output_label_title" msgid="872824698593182505">"<xliff:g id="LABEL">%s</xliff:g> پر چل رہی ہے"</string> @@ -1201,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"مزید معلومات کے لیے تھپتھپائیں"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"کوئی الارم سیٹ نہیں ہے"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"اسکرین لاک درج کریں"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"فنگر پرنٹ سینسر کو ٹچ کریں۔ یہ فون کے سائیڈ میں چھوٹا سا بٹن ہے۔"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"فنگر پرنٹ سینسر"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"تصدیق کریں"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"آلہ درج کریں"</string> @@ -1351,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"آئیکن سکیڑیں"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"آئیکن پھیلائیں"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"یا"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"پیچھے جانے کا اشارہ"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"ہوم کا اشارہ"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"ایکشن کلید"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ہو گیا"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"کی بورڈ بیک لائٹ"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"%2$d میں سے %1$d کا لیول"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"ہوم کنٹرولز"</string> diff --git a/packages/SystemUI/res/values-uz/strings.xml b/packages/SystemUI/res/values-uz/strings.xml index 52ecbc360b40..01457dd5c6c2 100644 --- a/packages/SystemUI/res/values-uz/strings.xml +++ b/packages/SystemUI/res/values-uz/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> yozib olinishini toʻxtatasiz"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Yozuvni toʻxtatish"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Ekran namoyishi toʻxtatilsinmi?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> ulashuvini toʻxtatasiz"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Namoyishni toʻxtatish"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> translatsiyasini toʻxtatasiz"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Toʻxtatish"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Yopish"</string> <string name="issuerecord_title" msgid="286627115110121849">"Muammoni yozib olish vositasi"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Yozuv qayta ishlanmoqda"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Muammo toʻplash seansi uchun faol bildirishnoma"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Yozuv saqlanmadi"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Yozib olish boshlanmadi"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Butun ekran rejimi"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Chiqish uchun ekranning tepasidan pastga suring"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"OK"</string> <string name="accessibility_back" msgid="6530104400086152611">"Orqaga"</string> <string name="accessibility_home" msgid="5430449841237966217">"Uyga"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Yuz orqali ochildi. Davom etish uchun bosing."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Yuz aniqlandi. Davom etish uchun bosing."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Yuz aniqlandi. Davom etish uchun ochish belgisini bosing."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Yuz bilan ochildi. Davom etish uchun bosing."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Tasdiqlandi"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Autentifikatsiyani bekor qilish"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Boshqa parametrlar"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Saqlangan"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"uzish"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"faollashtirish"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Ertaga avtomatik yoqilsin"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Tezkor ulashuv va Qurilmamni top kabi funksiyalar Bluetooth ishlatadi"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth ertaga ertalab yoqiladi"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Audioni ulashish"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Audio ulashuvi yoniq"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"Batareya quvvati: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Audio"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Garnitura"</string> @@ -378,7 +373,7 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Ekran yozuvi"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Boshlash"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Toʻxtatish"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Yozib olishda xato"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Nosozlikni yozib olish"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Boshlash"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Toʻxtatish"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Xatoliklar hisoboti"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Batafsil axborot olish uchun bosing"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Signal sozlanmagan"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"ekran qulfini kiriting"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Barmoq izi skaneriga tegining. Bu – telefonning yon tomonidagi qisqa tugma"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Barmoq izi skaneri"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"autentifikatsiya"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"qurilmani ochish"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Yigʻish belgisi"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Yoyish belgisi"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"yoki"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Orqaga qaytish ishorasi"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Asosiy ekran ishorasi"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Amal tugmasi"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Tayyor"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Klaviatura orqa yoritkichi"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Daraja: %1$d / %2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Uy boshqaruvi"</string> diff --git a/packages/SystemUI/res/values-vi/strings.xml b/packages/SystemUI/res/values-vi/strings.xml index 041da411425f..61845480c708 100644 --- a/packages/SystemUI/res/values-vi/strings.xml +++ b/packages/SystemUI/res/values-vi/strings.xml @@ -129,34 +129,31 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Bạn sẽ dừng ghi âm nội dung của <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Dừng ghi"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Dừng chia sẻ màn hình?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Bạn sẽ dừng chia sẻ nội dung của <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Dừng chia sẻ"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Bạn sẽ dừng truyền nội dung của <b><xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Dừng truyền"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Đóng"</string> <string name="issuerecord_title" msgid="286627115110121849">"Trình ghi sự cố"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Đang xử lý bản ghi sự cố"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Thông báo hiển thị liên tục cho một phiên thu thập sự cố"</string> - <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Ghi sự cố"</string> + <string name="issuerecord_ongoing_screen_only" msgid="6248206059935015722">"Đang ghi sự cố"</string> <string name="issuerecord_share_label" msgid="3992657993619876199">"Chia sẻ"</string> <string name="issuerecord_save_title" msgid="4161043023696751591">"Đã lưu bản ghi sự cố"</string> <string name="issuerecord_save_text" msgid="1205985304551521495">"Nhấn để xem"</string> <string name="issuerecord_save_error" msgid="6913040083446722726">"Đã xảy ra lỗi khi lưu bản ghi sự cố"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Đã xảy ra lỗi khi bắt đầu ghi sự cố"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Xem toàn màn hình"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Để thoát, hãy vuốt xuống từ đầu màn hình"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Tôi hiểu"</string> <string name="accessibility_back" msgid="6530104400086152611">"Quay lại"</string> <string name="accessibility_home" msgid="5430449841237966217">"Trang chủ"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Đã mở khoá bằng khuôn mặt. Hãy nhấn để tiếp tục."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Đã nhận diện khuôn mặt. Hãy nhấn để tiếp tục."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Đã nhận diện khuôn mặt. Nhấn biểu tượng mở khoá để tiếp tục."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Đã mở khoá bằng khuôn mặt. Nhấn để tiếp tục."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Đã xác thực"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Huỷ quy trình xác thực"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Tuỳ chọn khác"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Đã lưu"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"ngắt kết nối"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"kích hoạt"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Tự động bật vào ngày mai"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Các tính năng như Chia sẻ nhanh và Tìm thiết bị của tôi đều sử dụng Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"Bluetooth sẽ bật vào sáng mai"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Chia sẻ âm thanh"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Đang chia sẻ âm thanh"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> pin"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Âm thanh"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Tai nghe"</string> @@ -378,12 +373,12 @@ <string name="quick_settings_screen_record_label" msgid="8650355346742003694">"Ghi màn hình"</string> <string name="quick_settings_screen_record_start" msgid="1574725369331638985">"Bắt đầu"</string> <string name="quick_settings_screen_record_stop" msgid="8087348522976412119">"Dừng"</string> - <string name="qs_record_issue_label" msgid="8166290137285529059">"Ghi lại vấn đề"</string> + <string name="qs_record_issue_label" msgid="8166290137285529059">"Ghi sự cố"</string> <string name="qs_record_issue_start" msgid="2979831312582567056">"Bắt đầu"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"Dừng"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"Báo cáo lỗi"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Bạn gặp loại vấn đề gì khi dùng thiết bị?"</string> - <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Chọn loại vấn đề"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"Bạn gặp loại sự cố gì khi dùng thiết bị?"</string> + <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"Chọn loại sự cố"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"Ghi màn hình"</string> <string name="performance" msgid="6552785217174378320">"Hiệu suất"</string> <string name="user_interface" msgid="3712869377953950887">"Giao diện người dùng"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"Vuốt sang trái để bắt đầu xem hướng dẫn chung"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"Tuỳ chỉnh"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"Đóng"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Thêm, xoá và sắp xếp lại các tiện ích trong không gian này."</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"Thêm, xoá và sắp xếp tiện ích trong không gian này."</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"Thêm tiện ích khác"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"Nhấn và giữ để tuỳ chỉnh tiện ích"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"Tuỳ chỉnh tiện ích"</string> @@ -780,7 +775,7 @@ <string name="keyboard_shortcut_join" msgid="3578314570034512676">"hoặc"</string> <string name="keyboard_shortcut_clear_text" msgid="6631051796030377857">"Xoá cụm từ tìm kiếm"</string> <string name="keyboard_shortcut_search_list_title" msgid="4271769465397671138">"Phím tắt"</string> - <string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"Lối tắt tìm kiếm"</string> + <string name="keyboard_shortcut_search_list_hint" msgid="5982623262974326746">"Tìm lối tắt"</string> <string name="keyboard_shortcut_search_list_no_result" msgid="6819302191660875501">"Không tìm thấy lối tắt"</string> <string name="keyboard_shortcut_search_category_system" msgid="1151182120757052669">"Hệ thống"</string> <string name="keyboard_shortcut_search_category_input" msgid="5440558509904296233">"Đầu vào"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Nhấn để biết thêm thông tin"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Chưa đặt chuông báo"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"nhập phương thức mở khoá màn hình"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Hãy chạm vào cảm biến vân tay. Đó là nút ngắn ở cạnh bên của điện thoại"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Cảm biến vân tay"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"xác thực"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"truy cập thiết bị"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Biểu tượng Thu gọn"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Biểu tượng Mở rộng"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"hoặc"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Cử chỉ quay lại"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Cử chỉ chuyển đến màn hình chính"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Phím hành động"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Xong"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Đèn nền bàn phím"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Độ sáng %1$d/%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Điều khiển nhà"</string> diff --git a/packages/SystemUI/res/values-zh-rCN/strings.xml b/packages/SystemUI/res/values-zh-rCN/strings.xml index 9df7a500aa2b..7942620e9762 100644 --- a/packages/SystemUI/res/values-zh-rCN/strings.xml +++ b/packages/SystemUI/res/values-zh-rCN/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"将停止录制<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>的内容"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"停止录制"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"要停止共享屏幕吗?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"将停止分享<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>的内容"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"停止共享"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"将停止投放<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>的内容"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"停止投屏"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"关闭"</string> <string name="issuerecord_title" msgid="286627115110121849">"问题录制器"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"正在处理问题录制"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"针对问题收集会话的持续性通知"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"保存问题录制内容时出错"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"启动问题录制时出错"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"目前处于全屏模式"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"若要退出,请从屏幕顶部向下滑动"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"知道了"</string> <string name="accessibility_back" msgid="6530104400086152611">"返回"</string> <string name="accessibility_home" msgid="5430449841237966217">"主屏幕"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"已通过面孔识别解锁。点按即可继续。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"识别出面孔。点按即可继续。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"识别出面孔。按下解锁图标即可继续。"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"已通过面孔识别解锁。点按即可继续。"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"已经过身份验证"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"取消身份验证"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"更多选项"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"已保存"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"断开连接"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"启用"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"明天自动开启"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"快速分享、查找我的设备等功能会使用蓝牙"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"蓝牙将在明天早上开启"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"分享音频"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"正在分享音频"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> 的电量"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"音频"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"耳机"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"点按即可了解详情"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"未设置闹钟"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"输入屏幕解锁信息"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"请轻触指纹传感器,即手机侧面较短的那个按钮"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"指纹传感器"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"身份验证"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"进入设备"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"收起图标"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"展开图标"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"或"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"返回手势"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"主屏幕手势"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"快捷操作按键"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"完成"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"键盘背光"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"第 %1$d 级,共 %2$d 级"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"家居控制"</string> diff --git a/packages/SystemUI/res/values-zh-rCN/tiles_states_strings.xml b/packages/SystemUI/res/values-zh-rCN/tiles_states_strings.xml index 9467b9b27f26..0446a1bc538b 100644 --- a/packages/SystemUI/res/values-zh-rCN/tiles_states_strings.xml +++ b/packages/SystemUI/res/values-zh-rCN/tiles_states_strings.xml @@ -188,7 +188,7 @@ </string-array> <string-array name="tile_states_hearing_devices"> <item msgid="1235334096484287173">"不可用"</item> - <item msgid="3079622119444911877">"关闭"</item> - <item msgid="3028994095749238254">"开启"</item> + <item msgid="3079622119444911877">"已关闭"</item> + <item msgid="3028994095749238254">"已开启"</item> </string-array> </resources> diff --git a/packages/SystemUI/res/values-zh-rHK/strings.xml b/packages/SystemUI/res/values-zh-rHK/strings.xml index fdb7759de125..fc314c69fd34 100644 --- a/packages/SystemUI/res/values-zh-rHK/strings.xml +++ b/packages/SystemUI/res/values-zh-rHK/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"你將停止錄影「<xliff:g id="APP_NAME">%1$s</xliff:g>」<b></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"停止錄製"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"要停止分享螢幕嗎?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"你將停止分享「<xliff:g id="APP_NAME">%1$s</xliff:g>」<b></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"停止分享"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"你將停止投放「<xliff:g id="APP_NAME">%1$s</xliff:g>」<b></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"停止投放"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"關閉"</string> <string name="issuerecord_title" msgid="286627115110121849">"問題記錄工具"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"正在處理問題記錄"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"問題收集工作階段的持續通知"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"儲存錄影問題時發生錯誤"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"開始記錄問題時發生錯誤"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"以全螢幕檢視"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"如要離開,請從螢幕頂部向下滑動"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"知道了"</string> <string name="accessibility_back" msgid="6530104400086152611">"返回"</string> <string name="accessibility_home" msgid="5430449841237966217">"首頁"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"已使用面孔解鎖。按下即可繼續操作。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"已識別面孔。按下即可繼續操作。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"已識別面孔。按解鎖圖示即可繼續。"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"已使用面孔解鎖,輕按即可繼續。"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"驗證咗"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"取消驗證"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"更多選項"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"已儲存"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"解除連結"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"啟動"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"明天自動開啟"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"「快速共享」和「尋找我的裝置」等功能都會使用藍牙"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"藍牙將於明天上午開啟"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"分享音訊"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"正在分享音訊"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"電量:<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"音訊"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"耳機"</string> @@ -348,7 +343,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> @@ -460,14 +455,14 @@ <string name="interruption_level_alarms_twoline" msgid="2045067991335708767">"僅限\n鬧鐘"</string> <string name="keyguard_indication_charging_time_wireless" msgid="577856646141738675">"<xliff:g id="PERCENTAGE">%2$s</xliff:g> • 無線充電中 • <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> • 充電中 • <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> • 快速充電中 • <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> • 快速充電中 • <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> • 慢速充電中 • <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> • 充電中 • <xliff:g id="CHARGING_TIME_LEFT">%1$s</xliff:g>後充滿電"</string> <string name="accessibility_action_open_communal_hub" msgid="3081702792413787849">"上鎖畫面上的小工具"</string> <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"向左滑動即可開始共用教學課程"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"自訂"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"關閉"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"增、移除小工具,以及調整小工具在此空間中的位置"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"在這個空間新增或移除小工具,以及調整小工具的位置"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"新增更多小工具"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"長按即可自訂小工具"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"自訂小工具"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"輕按即可瞭解詳情"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"未設定鬧鐘"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"輸入螢幕鎖定憑證"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"輕輕掂下指紋感應器,即係手機側邊短啲嗰粒掣"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"指紋感應器"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"驗證"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"進入裝置"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"收合圖示"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"展開圖示"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"或"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"返去手勢"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"主畫面手勢"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"快捷操作鍵"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"完成"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"鍵盤背光"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"第 %1$d 級,共 %2$d 級"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"智能家居"</string> diff --git a/packages/SystemUI/res/values-zh-rTW/strings.xml b/packages/SystemUI/res/values-zh-rTW/strings.xml index cbeb38a38c31..95a032c409ae 100644 --- a/packages/SystemUI/res/values-zh-rTW/strings.xml +++ b/packages/SystemUI/res/values-zh-rTW/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"系統將停止錄製「<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>」的內容"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"停止錄製"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"停止分享?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"系統將停止分享「<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>」的內容"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"停止分享"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"系統將停止投放「<b><xliff:g id="APP_NAME">%1$s</xliff:g></b>」的內容"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"停止投放"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"關閉"</string> <string name="issuerecord_title" msgid="286627115110121849">"問題記錄工具"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"正在處理問題記錄"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"問題收集工作階段的持續性通知"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"儲存問題記錄時發生錯誤"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"開始記錄問題時發生錯誤"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"以全螢幕檢視"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"如要離開,請從螢幕頂端向下滑動"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"我知道了"</string> <string name="accessibility_back" msgid="6530104400086152611">"返回"</string> <string name="accessibility_home" msgid="5430449841237966217">"主畫面"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"裝置已透過你的臉解鎖,按下即可繼續操作。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"臉孔辨識完成,按下即可繼續操作。"</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"臉孔辨識完成,按下「解鎖」圖示即可繼續操作。"</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"裝置已透過你的臉解鎖,輕觸這裡即可繼續。"</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"已通過驗證"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"取消驗證"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"更多選項"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"已儲存"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"取消連結"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"啟用"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> - <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"「快速分享」和「尋找我的裝置」等功能都需要使用藍牙技術"</string> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"明天自動開啟"</string> + <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"「快速分享」和「尋找我的裝置」等功能都會使用藍牙技術"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"藍牙會在明天早上開啟"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"分享音訊"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"正在分享音訊"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"電量:<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g>"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"音訊"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"耳機"</string> @@ -382,7 +377,7 @@ <string name="qs_record_issue_start" msgid="2979831312582567056">"開始"</string> <string name="qs_record_issue_stop" msgid="3531747965741982657">"停止"</string> <string name="qs_record_issue_bug_report" msgid="8229031766918650079">"錯誤報告"</string> - <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"哪些裝置使用體驗受到影響?"</string> + <string name="qs_record_issue_dropdown_header" msgid="5995983175678658329">"哪方面的裝置使用體驗受到影響?"</string> <string name="qs_record_issue_dropdown_prompt" msgid="2526949919167046219">"選取問題類型"</string> <string name="qs_record_issue_dropdown_screenrecord" msgid="6396141928484257626">"螢幕錄影"</string> <string name="performance" msgid="6552785217174378320">"效能"</string> @@ -467,7 +462,7 @@ <string name="communal_tutorial_indicator_text" msgid="4503010353591430123">"向左滑動即可啟動通用教學課程"</string> <string name="cta_tile_button_to_open_widget_editor" msgid="3871562362382963878">"自訂"</string> <string name="cta_tile_button_to_dismiss" msgid="3377597875997861754">"關閉"</string> - <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"新增、移除小工具,以及調整小工具在這個空間中的位置"</string> + <string name="cta_label_to_edit_widget" msgid="6496885074209203756">"新增和移除小工具,及調整小工具在此空間的位置"</string> <string name="cta_label_to_open_widget_picker" msgid="3874946756976360699">"新增更多小工具"</string> <string name="popup_on_dismiss_cta_tile_text" msgid="8292501780996070019">"長按即可自訂小工具"</string> <string name="button_to_configure_widgets_text" msgid="4191862850185256901">"自訂小工具"</string> @@ -815,7 +810,7 @@ <string name="input_switch_input_language_next" msgid="3782155659868227855">"切換到下一個語言"</string> <string name="input_switch_input_language_previous" msgid="6043341362202336623">"切換到上一個語言"</string> <string name="input_access_emoji" msgid="8105642858900406351">"存取表情符號"</string> - <string name="input_access_voice_typing" msgid="7291201476395326141">"存取語音輸入內容"</string> + <string name="input_access_voice_typing" msgid="7291201476395326141">"使用語音輸入功能"</string> <string name="keyboard_shortcut_group_applications" msgid="7386239431100651266">"應用程式"</string> <string name="keyboard_shortcut_group_applications_assist" msgid="6772492350416591448">"Google 助理"</string> <string name="keyboard_shortcut_group_applications_browser" msgid="2776211137869809251">"瀏覽器"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"輕觸即可瞭解詳情"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"未設定鬧鐘"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"輸入螢幕鎖定憑證"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"請輕觸指紋感應器,也就是手機側邊較短的按鈕"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"指紋感應器"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"驗證"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"進入裝置"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"收合圖示"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"展開圖示"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"或"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"返回手勢"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"主畫面手勢"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"快捷操作鍵"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"完成"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"鍵盤背光"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"第 %1$d 級,共 %2$d 級"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"居家控制"</string> diff --git a/packages/SystemUI/res/values-zu/strings.xml b/packages/SystemUI/res/values-zu/strings.xml index 2117568e0d7b..1d4290214ee7 100644 --- a/packages/SystemUI/res/values-zu/strings.xml +++ b/packages/SystemUI/res/values-zu/strings.xml @@ -129,22 +129,20 @@ <skip /> <!-- no translation found for screenrecord_stop_dialog_message (1926783607059442889) --> <skip /> - <!-- no translation found for screenrecord_stop_dialog_button (2883812564938194350) --> - <skip /> - <!-- no translation found for share_to_app_stop_dialog_title (9212915050910250438) --> - <skip /> + <string name="screenrecord_stop_dialog_message_specific_app" msgid="5285148796772616326">"Uzoyeka ukurekhoda <b>i-<xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="screenrecord_stop_dialog_button" msgid="2883812564938194350">"Misa ukurekhoda"</string> + <string name="share_to_app_stop_dialog_title" msgid="9212915050910250438">"Misa ukwabelana ngeskrini?"</string> <!-- no translation found for share_to_app_stop_dialog_message (3181723638915877339) --> <skip /> - <!-- no translation found for share_to_app_stop_dialog_button (6334056916284230217) --> - <skip /> + <string name="share_to_app_stop_dialog_message_specific_app" msgid="124371406810544777">"Uzoyeka ukwaba <b>i-<xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="share_to_app_stop_dialog_button" msgid="6334056916284230217">"Misa ukwabelana"</string> <!-- no translation found for cast_to_other_device_stop_dialog_title (1910372600290258193) --> <skip /> <!-- no translation found for cast_to_other_device_stop_dialog_message (1502520537030715412) --> <skip /> - <!-- no translation found for cast_to_other_device_stop_dialog_button (6420183747435521834) --> - <skip /> - <!-- no translation found for close_dialog_button (4749497706540104133) --> - <skip /> + <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="4891536209254041850">"Uzoyeka ukusakaza <b>i-<xliff:g id="APP_NAME">%1$s</xliff:g></b>"</string> + <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"Misa ukusakaza"</string> + <string name="close_dialog_button" msgid="4749497706540104133">"Vala"</string> <string name="issuerecord_title" msgid="286627115110121849">"Ushicilelo Lokurekhoda"</string> <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"Icubungula ushicilelo lokurekhoda"</string> <string name="issuerecord_channel_description" msgid="6142326363431474632">"Isaziso esiqhubekayo seqoqo leseshini yoshicilelo"</string> @@ -155,8 +153,7 @@ <string name="issuerecord_save_error" msgid="6913040083446722726">"Iphutha ekulondolozeni ushicilelo lokurekhoda"</string> <string name="issuerecord_start_error" msgid="3402782952722871190">"Iphutha lokuqalisa ushicilelo lokurekhoda"</string> <string name="immersive_cling_title" msgid="8372056499315585941">"Ukubuka isikrini esigcwele"</string> - <!-- no translation found for immersive_cling_description (2717426731830851921) --> - <skip /> + <string name="immersive_cling_description" msgid="2717426731830851921">"Ukuze uphume, swayiphela phansi kusukela phezulu esikrinini sakho"</string> <string name="immersive_cling_positive" msgid="3076681691468978568">"Ngiyezwa"</string> <string name="accessibility_back" msgid="6530104400086152611">"Emuva"</string> <string name="accessibility_home" msgid="5430449841237966217">"Ekhaya"</string> @@ -189,6 +186,7 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_1" msgid="439152621640507113">"Vula ngobuso. Cindezela ukuze uqhubeke."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_2" msgid="8586608186457385108">"Ubuso buyaziwa. Cindezela ukuze uqhubeke."</string> <string name="biometric_dialog_tap_confirm_with_face_alt_3" msgid="2192670471930606539">"Ubuso buyaziwa. Cindezela isithonjana sokuvula ukuze uqhubeke."</string> + <string name="biometric_dialog_tap_confirm_with_face_sfps" msgid="2499213248903257928">"Kuvulwe ngobuso. Thepha ukuze uqhubeke."</string> <string name="biometric_dialog_authenticated" msgid="7337147327545272484">"Kugunyaziwe"</string> <string name="biometric_dialog_cancel_authentication" msgid="981316588773442637">"Khansela Ukuqinisekisa"</string> <string name="biometric_dialog_content_view_more_options_button" msgid="2663810393874865475">"Okukhethwayo Okwengeziwe"</string> @@ -299,14 +297,11 @@ <string name="quick_settings_bluetooth_device_saved" msgid="7549938728928069477">"Ilondoloziwe"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect" msgid="415980329093277342">"nqamula"</string> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate" msgid="3724301751036877403">"yenza kusebenze"</string> - <!-- no translation found for turn_on_bluetooth_auto_tomorrow (3345758139235739006) --> - <skip /> + <string name="turn_on_bluetooth_auto_tomorrow" msgid="3345758139235739006">"Vula ngokuzenzekelayo kusasa"</string> <string name="turn_on_bluetooth_auto_info_disabled" msgid="682984290339848844">"Izakhi ezifana nokuthi Ukwabelana Ngokushesha kanye nokuthi Thola Idivayisi Yami zisebenzisa i-Bluetooth"</string> <string name="turn_on_bluetooth_auto_info_enabled" msgid="7440944034584560279">"IBluetooth izovuleka kusasa ekuseni"</string> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button (7545274861795853838) --> - <skip /> - <!-- no translation found for quick_settings_bluetooth_audio_sharing_button_sharing (3069309588231072128) --> - <skip /> + <string name="quick_settings_bluetooth_audio_sharing_button" msgid="7545274861795853838">"Yabelana ngomsindo"</string> + <string name="quick_settings_bluetooth_audio_sharing_button_sharing" msgid="3069309588231072128">"Yabelana ngomsindo"</string> <string name="quick_settings_bluetooth_secondary_label_battery_level" msgid="4182034939479344093">"<xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%s</xliff:g> ibhethri"</string> <string name="quick_settings_bluetooth_secondary_label_audio" msgid="780333390310051161">"Umsindo"</string> <string name="quick_settings_bluetooth_secondary_label_headset" msgid="2332093067553000852">"Ihedisethi"</string> @@ -1197,6 +1192,7 @@ <string name="battery_state_unknown_notification_text" msgid="13720937839460899">"Thepha ukuze uthole olunye ulwazi"</string> <string name="qs_alarm_tile_no_alarm" msgid="4826472008616807923">"Akukho alamu esethiwe"</string> <string name="accessibility_bouncer" msgid="5896923685673320070">"faka ukukhiya isikrini"</string> + <string name="accessibility_side_fingerprint_indicator_label" msgid="1673807833352363712">"Thinta inzwa yesigxivizo somunwe Inkinobho emfushane ehlangothini lwefoni"</string> <string name="accessibility_fingerprint_label" msgid="5255731221854153660">"Inzwa yesigxivizo somunwe"</string> <string name="accessibility_authenticate_hint" msgid="798914151813205721">"gunyaza"</string> <string name="accessibility_enter_hint" msgid="2617864063504824834">"faka idivayisi"</string> @@ -1347,14 +1343,10 @@ <string name="shortcut_helper_content_description_collapse_icon" msgid="8028015738431664954">"Goqa isithonjana"</string> <string name="shortcut_helper_content_description_expand_icon" msgid="1084435697860417390">"Nweba isithonjana"</string> <string name="shortcut_helper_key_combinations_or_separator" msgid="7082902112102125540">"noma"</string> - <!-- no translation found for touchpad_tutorial_back_gesture_button (2746834288077265946) --> - <skip /> - <!-- no translation found for touchpad_tutorial_home_gesture_button (7640544867625955304) --> - <skip /> - <!-- no translation found for touchpad_tutorial_action_key_button (3220074511852927267) --> - <skip /> - <!-- no translation found for touchpad_tutorial_done_button (176168488821755503) --> - <skip /> + <string name="touchpad_tutorial_back_gesture_button" msgid="2746834288077265946">"Ukunyakazisa umzimba kwangemuva"</string> + <string name="touchpad_tutorial_home_gesture_button" msgid="7640544867625955304">"Ukunyakazisa umzimba kwasekhaya"</string> + <string name="touchpad_tutorial_action_key_button" msgid="3220074511852927267">"Inkinobho yokufinyelela"</string> + <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Kwenziwe"</string> <string name="keyboard_backlight_dialog_title" msgid="8273102932345564724">"Ilambu lekhibhodi"</string> <string name="keyboard_backlight_value" msgid="7336398765584393538">"Ileveli %1$d ka-%2$d"</string> <string name="home_controls_dream_label" msgid="6567105701292324257">"Izilawuli Zasekhaya"</string> diff --git a/packages/SystemUI/res/values/colors.xml b/packages/SystemUI/res/values/colors.xml index ba59c2f99c52..5c62cce94c11 100644 --- a/packages/SystemUI/res/values/colors.xml +++ b/packages/SystemUI/res/values/colors.xml @@ -237,11 +237,8 @@ <!-- Internet Dialog --> <!-- Material next state on color--> <color name="settingslib_state_on_color">@color/settingslib_state_on</color> - <!-- Material next track on color--> - <color name="settingslib_track_on_color">@color/settingslib_track_on</color> <!-- Material next track off color--> <color name="settingslib_track_off_color">@color/settingslib_track_off</color> - <color name="connected_network_primary_color">#191C18</color> <color name="connected_network_secondary_color">#41493D</color> <color name="dream_overlay_camera_mic_off_dot_color">#FCBE03</color> diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index 838181252cb9..d51831b5730f 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -441,6 +441,8 @@ <string name="biometric_dialog_tap_confirm_with_face_alt_2">Face recognized. Press to continue.</string> <!-- Message shown when a biometric has authenticated with a user's face and is waiting for the user to confirm authentication [CHAR LIMIT=60]--> <string name="biometric_dialog_tap_confirm_with_face_alt_3">Face recognized. Press the unlock icon to continue.</string> + <!-- Message shown when a biometric has authenticated with a user's face and is waiting for the user to confirm authentication with SFPS [CHAR LIMIT=60]--> + <string name="biometric_dialog_tap_confirm_with_face_sfps">Unlocked by face. Tap to continue.</string> <!-- Talkback string when a biometric is authenticated [CHAR LIMIT=NONE] --> <string name="biometric_dialog_authenticated">Authenticated</string> <!-- Talkback string when a canceling authentication [CHAR LIMIT=NONE] --> diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml index 73b7586f1210..6bc674c474a1 100644 --- a/packages/SystemUI/res/values/styles.xml +++ b/packages/SystemUI/res/values/styles.xml @@ -192,11 +192,10 @@ <style name="TextAppearance.AuthCredential.LogoDescription" parent="TextAppearance.Material3.LabelLarge" > <item name="android:fontFamily">@*android:string/config_bodyFontFamilyMedium</item> - <item name="android:ellipsize">marquee</item> <item name="android:gravity">@integer/biometric_dialog_text_gravity</item> - <item name="android:marqueeRepeatLimit">1</item> - <item name="android:singleLine">true</item> + <item name="android:maxLines">1</item> <item name="android:textColor">?androidprv:attr/materialColorOnSurfaceVariant</item> + <item name="android:ellipsize">end</item> </style> <style name="TextAppearance.AuthCredential.Title" parent="TextAppearance.Material3.HeadlineSmall" > @@ -1315,7 +1314,7 @@ <item name="android:background">?android:attr/selectableItemBackground</item> </style> - <style name="MainSwitch.Settingslib" parent="@android:style/Theme.DeviceDefault"> + <style name="MainSwitch.Settingslib" parent="@android:style/Theme.DeviceDefault.DayNight"> <item name="android:switchMinWidth">@dimen/settingslib_min_switch_width</item> </style> @@ -1358,6 +1357,7 @@ <style name="InternetDialog.NetworkTitle.Active"> <item name="android:textAppearance">@style/TextAppearance.InternetDialog.Active</item> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> </style> <style name="InternetDialog.NetworkSummary"> @@ -1370,23 +1370,28 @@ <style name="InternetDialog.NetworkSummary.Active"> <item name="android:textAppearance">@style/TextAppearance.InternetDialog.Secondary.Active </item> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> </style> <style name="TextAppearance.InternetDialog"> <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item> <item name="android:textSize">16sp</item> - <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:textColor">?androidprv:attr/materialColorOnSurface</item> <item name="android:textDirection">locale</item> </style> <style name="TextAppearance.InternetDialog.Secondary"> <item name="android:textSize">14sp</item> - <item name="android:textColor">?android:attr/textColorSecondary</item> + <item name="android:textColor">?androidprv:attr/materialColorOnSurfaceVariant</item> </style> - <style name="TextAppearance.InternetDialog.Active"/> + <style name="TextAppearance.InternetDialog.Active"> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> + </style> - <style name="TextAppearance.InternetDialog.Secondary.Active"/> + <style name="TextAppearance.InternetDialog.Secondary.Active"> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> + </style> <style name="FgsManagerDialogTitle"> <item name="android:fontFamily">@*android:string/config_bodyFontFamily</item> @@ -1422,17 +1427,32 @@ <item name="android:orientation">horizontal</item> <item name="android:focusable">true</item> <item name="android:clickable">true</item> + <item name="android:textColor">?androidprv:attr/materialColorOnSurface</item> + </style> + + <style name="BluetoothTileDialog.Device.Active"> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> </style> <style name="BluetoothTileDialog.DeviceName"> <item name="android:textSize">14sp</item> <item name="android:textAppearance">@style/TextAppearance.Dialog.Title</item> + <item name="android:textColor">?androidprv:attr/materialColorOnSurface</item> </style> <style name="BluetoothTileDialog.DeviceSummary"> <item name="android:ellipsize">end</item> <item name="android:maxLines">2</item> <item name="android:textAppearance">@style/TextAppearance.Dialog.Body.Message</item> + <item name="android:textColor">?androidprv:attr/materialColorOnSurfaceVariant</item> + </style> + + <style name="BluetoothTileDialog.DeviceName.Active"> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> + </style> + + <style name="BluetoothTileDialog.DeviceSummary.Active"> + <item name="android:textColor">?androidprv:attr/materialColorOnPrimaryContainer</item> </style> <style name="BroadcastDialog"> diff --git a/packages/SystemUI/shared/src/com/android/systemui/dagger/qualifiers/DisplaySpecific.kt b/packages/SystemUI/shared/src/com/android/systemui/dagger/qualifiers/DisplaySpecific.kt index 57a49c83ae17..3e39ae9a3fe5 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/dagger/qualifiers/DisplaySpecific.kt +++ b/packages/SystemUI/shared/src/com/android/systemui/dagger/qualifiers/DisplaySpecific.kt @@ -15,10 +15,7 @@ */ package com.android.systemui.dagger.qualifiers -import java.lang.annotation.Documented -import java.lang.annotation.Retention -import java.lang.annotation.RetentionPolicy.RUNTIME import javax.inject.Qualifier /** Annotates a class that is display specific. */ -@Qualifier @Documented @Retention(RUNTIME) annotation class DisplaySpecific +@Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class DisplaySpecific diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java b/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java index 317201d2c2d9..f358ba2d3ccd 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java @@ -125,6 +125,7 @@ public class FloatingRotationButton implements RotationButton { taskbarMarginLeft, taskbarMarginBottom, floatingRotationButtonPositionLeft); final int diameter = res.getDimensionPixelSize(mButtonDiameterResource); + mKeyButtonView.setDiameter(diameter); mContainerSize = diameter + Math.max(defaultMargin, Math.max(taskbarMarginLeft, taskbarMarginBottom)); } @@ -195,6 +196,7 @@ public class FloatingRotationButton implements RotationButton { public void updateIcon(int lightIconColor, int darkIconColor) { mAnimatedDrawable = (AnimatedVectorDrawable) mKeyButtonView.getContext() .getDrawable(mRotationButtonController.getIconResId()); + mAnimatedDrawable.setBounds(0, 0, mKeyButtonView.getWidth(), mKeyButtonView.getHeight()); mKeyButtonView.setImageDrawable(mAnimatedDrawable); mKeyButtonView.setColors(lightIconColor, darkIconColor); } @@ -248,8 +250,14 @@ public class FloatingRotationButton implements RotationButton { updateDimensionResources(); if (mIsShowing) { + updateIcon(mRotationButtonController.getLightIconColor(), + mRotationButtonController.getDarkIconColor()); final LayoutParams layoutParams = adjustViewPositionAndCreateLayoutParams(); mWindowManager.updateViewLayout(mKeyButtonContainer, layoutParams); + if (mAnimatedDrawable != null) { + mAnimatedDrawable.reset(); + mAnimatedDrawable.start(); + } } } diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButtonView.java b/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButtonView.java index 2145166e9bc5..75412f94ccb1 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButtonView.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButtonView.java @@ -37,6 +37,7 @@ public class FloatingRotationButtonView extends ImageView { private static final float BACKGROUND_ALPHA = 0.92f; private KeyButtonRipple mRipple; + private int mDiameter; private final Paint mOvalBgPaint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG); private final Configuration mLastConfiguration; @@ -93,10 +94,25 @@ public class FloatingRotationButtonView extends ImageView { mRipple.setDarkIntensity(darkIntensity); } + /** + * Sets the view's diameter. + * + * @param diameter the diameter value for the view + */ + void setDiameter(int diameter) { + mDiameter = diameter; + } + @Override public void draw(Canvas canvas) { int d = Math.min(getWidth(), getHeight()); canvas.drawOval(0, 0, d, d, mOvalBgPaint); super.draw(canvas); } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(mDiameter, mDiameter); + } } diff --git a/packages/SystemUI/src/com/android/keyguard/ActiveUnlockConfig.kt b/packages/SystemUI/src/com/android/keyguard/ActiveUnlockConfig.kt index 5e76801aaca3..bf1f93f4693a 100644 --- a/packages/SystemUI/src/com/android/keyguard/ActiveUnlockConfig.kt +++ b/packages/SystemUI/src/com/android/keyguard/ActiveUnlockConfig.kt @@ -28,6 +28,7 @@ import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ACQUIRE_INFO import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ERRORS import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT +import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_WHEN_BIOMETRIC_ENROLLED import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_WAKE import android.provider.Settings.Secure.ACTIVE_UNLOCK_WAKEUPS_CONSIDERED_UNLOCK_INTENTS @@ -86,6 +87,12 @@ class ActiveUnlockConfig @Inject constructor( * Trigger ActiveUnlock when the assistant is triggered. */ ASSISTANT, + /** + * Trigger ActiveUnlock on legacy unlock intents. This includes tapping on the empty space + * of the notification shadse when face auth is enrolled and re-trying face auth on the + * primary bouncer. + */ + UNLOCK_INTENT_LEGACY, } /** @@ -99,6 +106,7 @@ class ActiveUnlockConfig @Inject constructor( } private var requestActiveUnlockOnWakeup = false + private var requestActiveUnlockOnUnlockIntentLegacy = false private var requestActiveUnlockOnUnlockIntent = false private var requestActiveUnlockOnBioFail = false @@ -110,6 +118,8 @@ class ActiveUnlockConfig @Inject constructor( private val settingsObserver = object : ContentObserver(handler) { private val wakeUri = secureSettings.getUriFor(ACTIVE_UNLOCK_ON_WAKE) + private val unlockIntentLegacyUri = + secureSettings.getUriFor(ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY) private val unlockIntentUri = secureSettings.getUriFor(ACTIVE_UNLOCK_ON_UNLOCK_INTENT) private val bioFailUri = secureSettings.getUriFor(ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL) private val faceErrorsUri = secureSettings.getUriFor(ACTIVE_UNLOCK_ON_FACE_ERRORS) @@ -164,6 +174,15 @@ class ActiveUnlockConfig @Inject constructor( ACTIVE_UNLOCK_ON_WAKE, 0, selectedUserInteractor.getSelectedUserId()) == 1 } + if (selfChange || uris.contains(unlockIntentLegacyUri)) { + requestActiveUnlockOnUnlockIntentLegacy = + secureSettings.getIntForUser( + ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY, + 0, + selectedUserInteractor.getSelectedUserId() + ) == 1 + } + if (selfChange || uris.contains(unlockIntentUri)) { requestActiveUnlockOnUnlockIntent = secureSettings.getIntForUser( ACTIVE_UNLOCK_ON_UNLOCK_INTENT, 0, @@ -257,7 +276,7 @@ class ActiveUnlockConfig @Inject constructor( */ fun isActiveUnlockEnabled(): Boolean { return requestActiveUnlockOnWakeup || requestActiveUnlockOnUnlockIntent || - requestActiveUnlockOnBioFail + requestActiveUnlockOnBioFail || requestActiveUnlockOnUnlockIntentLegacy } /** @@ -299,15 +318,18 @@ class ActiveUnlockConfig @Inject constructor( fun shouldAllowActiveUnlockFromOrigin(requestOrigin: ActiveUnlockRequestOrigin): Boolean { return when (requestOrigin) { ActiveUnlockRequestOrigin.WAKE -> requestActiveUnlockOnWakeup - + ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY -> + requestActiveUnlockOnUnlockIntentLegacy ActiveUnlockRequestOrigin.UNLOCK_INTENT -> - requestActiveUnlockOnUnlockIntent || requestActiveUnlockOnWakeup || - (shouldRequestActiveUnlockOnUnlockIntentFromBiometricEnrollment()) - + requestActiveUnlockOnUnlockIntent || + requestActiveUnlockOnUnlockIntentLegacy || + requestActiveUnlockOnWakeup || + (shouldRequestActiveUnlockOnUnlockIntentFromBiometricEnrollment()) ActiveUnlockRequestOrigin.BIOMETRIC_FAIL -> - requestActiveUnlockOnBioFail || requestActiveUnlockOnUnlockIntent || - requestActiveUnlockOnWakeup - + requestActiveUnlockOnBioFail || + requestActiveUnlockOnUnlockIntentLegacy || + requestActiveUnlockOnUnlockIntent || + requestActiveUnlockOnWakeup ActiveUnlockRequestOrigin.ASSISTANT -> isActiveUnlockEnabled() } } @@ -345,6 +367,9 @@ class ActiveUnlockConfig @Inject constructor( override fun dump(pw: PrintWriter, args: Array<out String>) { pw.println("Settings:") pw.println(" requestActiveUnlockOnWakeup=$requestActiveUnlockOnWakeup") + pw.println( + " requestActiveUnlockOnUnlockIntentLegacy=$requestActiveUnlockOnUnlockIntentLegacy" + ) pw.println(" requestActiveUnlockOnUnlockIntent=$requestActiveUnlockOnUnlockIntent") pw.println(" requestActiveUnlockOnBioFail=$requestActiveUnlockOnBioFail") diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java index 70465bc3d0b7..421782039043 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java @@ -1097,7 +1097,8 @@ public class KeyguardSecurityContainer extends ConstraintLayout { int yTranslation = mResources.getDimensionPixelSize(R.dimen.disappear_y_translation); AnimatorSet anims = new AnimatorSet(); - ObjectAnimator yAnim = ObjectAnimator.ofFloat(mView, View.TRANSLATION_Y, yTranslation); + ObjectAnimator yAnim = ObjectAnimator.ofFloat(mViewFlipper, View.TRANSLATION_Y, + yTranslation); ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(mUserSwitcherViewGroup, View.ALPHA, 0f); diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java index 42838aeddd6b..428cd0e7da0a 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java @@ -351,7 +351,7 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard mDeviceEntryFaceAuthInteractor.onSwipeUpOnBouncer(); if (mDeviceEntryFaceAuthInteractor.isFaceAuthEnabledAndEnrolled()) { mUpdateMonitor.requestActiveUnlock( - ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT, + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY, "swipeUpOnBouncer"); } } diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java b/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java index d6d40f28d288..b466f31cc509 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/AuthController.java @@ -995,6 +995,16 @@ public class AuthController implements } /** + * @return true if ultrasonic udfps HW is supported on this device. Can return true even if + * the user has not enrolled udfps. This may be false if called before + * onAllAuthenticatorsRegistered. + */ + public boolean isUltrasonicUdfpsSupported() { + return getUdfpsProps() != null && !getUdfpsProps().isEmpty() && getUdfpsProps() + .get(0).isUltrasonicUdfps(); + } + + /** * @return true if sfps HW is supported on this device. Can return true even if the user has * not enrolled sfps. This may be false if called before onAllAuthenticatorsRegistered. */ diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java index ad142a86fa03..3dd375846499 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java @@ -270,6 +270,7 @@ public class UdfpsController implements DozeReceiver, Dumpable { @Override public void showUdfpsOverlay(long requestId, int sensorId, int reason, @NonNull IUdfpsOverlayControllerCallback callback) { + mUdfpsOverlayInteractor.setRequestId(requestId); mFgExecutor.execute(() -> UdfpsController.this.showUdfpsOverlay( new UdfpsControllerOverlay( mContext, @@ -404,6 +405,15 @@ public class UdfpsController implements DozeReceiver, Dumpable { handler::post, authenticationCallback); } + + /** + * Debug to run setIgnoreDisplayTouches + */ + public void debugSetIgnoreDisplayTouches(boolean ignoreTouch) { + final long requestId = (mOverlay != null) ? mOverlay.getRequestId() : 0L; + UdfpsController.this.mFingerprintManager.setIgnoreDisplayTouches( + requestId, mSensorProps.sensorId, ignoreTouch); + } } /** @@ -558,7 +568,12 @@ public class UdfpsController implements DozeReceiver, Dumpable { Log.w(TAG, "onTouch down received without a preceding up"); } mActivePointerId = MotionEvent.INVALID_POINTER_ID; - mOnFingerDown = false; + + // It's possible on some devices to get duplicate touches from both doze and the + // normal touch listener. Don't reset the down in this case to avoid duplicate downs + if (!mIsAodInterruptActive) { + mOnFingerDown = false; + } } else if (!DeviceEntryUdfpsRefactor.isEnabled()) { if ((mLockscreenShadeTransitionController.getQSDragProgress() != 0f && !mAlternateBouncerInteractor.isVisibleState()) diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsShell.kt b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsShell.kt index f5e3d29cb878..97ece11b8fbb 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsShell.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsShell.kt @@ -75,6 +75,8 @@ class UdfpsShell @Inject constructor(commandRegistry: CommandRegistry) : Command simFingerUp() } else if (args.size == 1 && args[0] == "biometricPrompt") { launchBiometricPrompt() + } else if (args.size == 2 && args[0] == "setIgnoreDisplayTouches") { + setIgnoreDisplayTouches(args[1].toBoolean()) } else { invalidCommand(pw) } @@ -186,6 +188,11 @@ class UdfpsShell @Inject constructor(commandRegistry: CommandRegistry) : Command upEvent?.recycle() } + @VisibleForTesting + fun setIgnoreDisplayTouches(ignoreTouches: Boolean) { + udfpsOverlayController?.debugSetIgnoreDisplayTouches(ignoreTouches) + } + private fun obtainMotionEvent( action: Int, x: Float, diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/data/repository/BiometricStatusRepository.kt b/packages/SystemUI/src/com/android/systemui/biometrics/data/repository/BiometricStatusRepository.kt index ca03a00cca0c..da270c08f281 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/data/repository/BiometricStatusRepository.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/data/repository/BiometricStatusRepository.kt @@ -39,7 +39,6 @@ import com.android.systemui.biometrics.shared.model.AuthenticationReason import com.android.systemui.biometrics.shared.model.AuthenticationReason.SettingsOperations import com.android.systemui.biometrics.shared.model.AuthenticationState import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging -import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.keyguard.shared.model.AcquiredFingerprintAuthenticationStatus @@ -49,6 +48,7 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.channels.awaitClose import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.SharingStarted +import kotlinx.coroutines.flow.callbackFlow import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.filterIsInstance @@ -85,7 +85,7 @@ constructor( * onAcquired in [FingerprintManager.EnrollmentCallback] and [FaceManager.EnrollmentCallback] */ private val authenticationState: Flow<AuthenticationState> = - conflatedCallbackFlow { + callbackFlow { val updateAuthenticationState = { state: AuthenticationState -> Log.d(TAG, "authenticationState updated: $state") trySendWithFailureLogging(state, TAG, "Error sending AuthenticationState state") @@ -169,7 +169,9 @@ constructor( } } - updateAuthenticationState(AuthenticationState.Idle(AuthenticationReason.NotRunning)) + updateAuthenticationState( + AuthenticationState.Idle(requestReason = AuthenticationReason.NotRunning) + ) biometricManager?.registerAuthenticationStateListener(authenticationStateListener) awaitClose { biometricManager?.unregisterAuthenticationStateListener( @@ -180,23 +182,32 @@ constructor( .distinctUntilChanged() .shareIn(applicationScope, started = SharingStarted.Eagerly, replay = 1) - override val fingerprintAuthenticationReason: Flow<AuthenticationReason> = + private val fingerprintAuthenticationState: Flow<AuthenticationState> = authenticationState .filter { + it.biometricSourceType == null || + it.biometricSourceType == BiometricSourceType.FINGERPRINT + } + .onEach { Log.d(TAG, "fingerprintAuthenticationState updated: $it") } + + private val fingerprintRunningState: Flow<AuthenticationState> = + fingerprintAuthenticationState + .filter { it is AuthenticationState.Idle || - (it is AuthenticationState.Started && - it.biometricSourceType == BiometricSourceType.FINGERPRINT) || - (it is AuthenticationState.Stopped && - it.biometricSourceType == BiometricSourceType.FINGERPRINT) + it is AuthenticationState.Started || + it is AuthenticationState.Stopped } + .onEach { Log.d(TAG, "fingerprintRunningState updated: $it") } + + override val fingerprintAuthenticationReason: Flow<AuthenticationReason> = + fingerprintRunningState .map { it.requestReason } .onEach { Log.d(TAG, "fingerprintAuthenticationReason updated: $it") } override val fingerprintAcquiredStatus: Flow<FingerprintAuthenticationStatus> = - authenticationState - .filterIsInstance<AuthenticationState.Acquired>() - .filter { it.biometricSourceType == BiometricSourceType.FINGERPRINT } - .map { AcquiredFingerprintAuthenticationStatus(it.requestReason, it.acquiredInfo) } + fingerprintAuthenticationState.filterIsInstance<AuthenticationState.Acquired>().map { + AcquiredFingerprintAuthenticationStatus(it.requestReason, it.acquiredInfo) + } companion object { private const val TAG = "BiometricStatusRepositoryImpl" diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractor.kt b/packages/SystemUI/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractor.kt index a77cc1fea6a6..bb450c0b6d90 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractor.kt @@ -17,6 +17,7 @@ package com.android.systemui.biometrics.domain.interactor import android.content.Context +import android.hardware.fingerprint.FingerprintManager import android.util.Log import android.view.MotionEvent import com.android.systemui.biometrics.AuthController @@ -46,6 +47,7 @@ constructor( @Application private val context: Context, private val authController: AuthController, private val selectedUserInteractor: SelectedUserInteractor, + private val fingerprintManager: FingerprintManager?, @Application scope: CoroutineScope ) { private fun calculateIconSize(): Int { @@ -70,8 +72,25 @@ constructor( return isUdfpsEnrolled && isWithinOverlayBounds } + private var _requestId = MutableStateFlow(0L) + + /** RequestId of current AcquisitionClient */ + val requestId: StateFlow<Long> = _requestId.asStateFlow() + + fun setRequestId(requestId: Long) { + _requestId.value = requestId + } + /** Sets whether Udfps overlay should handle touches */ fun setHandleTouches(shouldHandle: Boolean = true) { + if (authController.isUltrasonicUdfpsSupported + && shouldHandle != _shouldHandleTouches.value) { + fingerprintManager?.setIgnoreDisplayTouches( + requestId.value, + authController.udfpsProps!!.get(0).sensorId, + !shouldHandle + ) + } _shouldHandleTouches.value = shouldHandle } diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/shared/model/AuthenticationState.kt b/packages/SystemUI/src/com/android/systemui/biometrics/shared/model/AuthenticationState.kt index 5ceae36dadb6..81ea6a9c15b0 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/shared/model/AuthenticationState.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/shared/model/AuthenticationState.kt @@ -27,6 +27,9 @@ import android.hardware.biometrics.BiometricSourceType * authentication. */ sealed interface AuthenticationState { + /** Indicates [BiometricSourceType] of authentication state update, null in idle auth state. */ + val biometricSourceType: BiometricSourceType? + /** * Indicates [AuthenticationReason] from [BiometricRequestConstants.RequestReason] for * requesting auth @@ -43,7 +46,7 @@ sealed interface AuthenticationState { * message. */ data class Acquired( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, override val requestReason: AuthenticationReason, val acquiredInfo: Int ) : AuthenticationState @@ -59,7 +62,7 @@ sealed interface AuthenticationState { * @param requestReason reason from [BiometricRequestConstants.RequestReason] for authentication */ data class Error( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, val errString: String?, val errCode: Int, override val requestReason: AuthenticationReason, @@ -73,7 +76,7 @@ sealed interface AuthenticationState { * @param userId The user id for the requested authentication */ data class Failed( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, override val requestReason: AuthenticationReason, val userId: Int ) : AuthenticationState @@ -87,7 +90,7 @@ sealed interface AuthenticationState { * @param requestReason reason from [BiometricRequestConstants.RequestReason] for authentication */ data class Help( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, val helpString: String?, val helpCode: Int, override val requestReason: AuthenticationReason, @@ -96,9 +99,13 @@ sealed interface AuthenticationState { /** * Authentication state when no auth is running * + * @param biometricSourceType null * @param requestReason [AuthenticationReason.NotRunning] */ - data class Idle(override val requestReason: AuthenticationReason) : AuthenticationState + data class Idle( + override val biometricSourceType: BiometricSourceType? = null, + override val requestReason: AuthenticationReason + ) : AuthenticationState /** * AuthenticationState when auth is started @@ -107,7 +114,7 @@ sealed interface AuthenticationState { * @param requestReason reason from [BiometricRequestConstants.RequestReason] for authentication */ data class Started( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, override val requestReason: AuthenticationReason ) : AuthenticationState @@ -118,7 +125,7 @@ sealed interface AuthenticationState { * @param requestReason [AuthenticationReason.NotRunning] */ data class Stopped( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, override val requestReason: AuthenticationReason ) : AuthenticationState @@ -131,7 +138,7 @@ sealed interface AuthenticationState { * @param userId The user id for the requested authentication */ data class Succeeded( - val biometricSourceType: BiometricSourceType, + override val biometricSourceType: BiometricSourceType, val isStrongBiometric: Boolean, override val requestReason: AuthenticationReason, val userId: Int diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/BiometricViewBinder.kt b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/BiometricViewBinder.kt index 408e2c2d65a1..8b0891568eea 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/BiometricViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/BiometricViewBinder.kt @@ -64,6 +64,7 @@ import kotlinx.coroutines.flow.map import kotlinx.coroutines.launch private const val TAG = "BiometricViewBinder" +private const val MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER = 30 /** Top-most view binder for BiometricPrompt views. */ object BiometricViewBinder { @@ -167,7 +168,10 @@ object BiometricViewBinder { } logoView.setImageDrawable(viewModel.logo.first()) - logoDescriptionView.text = viewModel.logoDescription.first() + // The ellipsize effect on xml happens only when the TextView does not have any free + // space on the screen to show the text. So we need to manually truncate. + logoDescriptionView.text = + viewModel.logoDescription.first().ellipsize(MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER) titleView.text = viewModel.title.first() subtitleView.text = viewModel.subtitle.first() descriptionView.text = viewModel.description.first() @@ -580,17 +584,22 @@ class Spaghetti( } } - private suspend fun getHelpForSuccessfulAuthentication( + private fun getHelpForSuccessfulAuthentication( authenticatedModality: BiometricModality, - ): Int? = - when { - // for coex, show a message when face succeeds after fingerprint has also started - modalities.hasFaceAndFingerprint && - (viewModel.fingerprintStartMode.first() != FingerprintStartMode.Pending) && - (authenticatedModality == BiometricModality.Face) -> - R.string.biometric_dialog_tap_confirm_with_face_alt_1 - else -> null + ): Int? { + // for coex, show a message when face succeeds after fingerprint has also started + if (authenticatedModality != BiometricModality.Face) { + return null + } + + if (modalities.hasUdfps) { + return R.string.biometric_dialog_tap_confirm_with_face_alt_1 } + if (modalities.hasSfps) { + return R.string.biometric_dialog_tap_confirm_with_face_sfps + } + return null + } fun onAuthenticationFailed( @BiometricAuthenticator.Modality modality: Int, @@ -679,6 +688,9 @@ private fun BiometricModalities.asDefaultHelpMessage(context: Context): String = else -> "" } +private fun String.ellipsize(cutOffLength: Int) = + if (length <= cutOffLength) this else replaceRange(cutOffLength, length, "...") + private fun Boolean.asVisibleOrGone(): Int = if (this) View.VISIBLE else View.GONE private fun Boolean.asVisibleOrHidden(): Int = if (this) View.VISIBLE else View.INVISIBLE diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt index 9cc46506cefb..9578da4238ee 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinder.kt @@ -139,6 +139,11 @@ constructor( overlayView!!.visibility = View.INVISIBLE Log.d(TAG, "show(): adding overlayView $overlayView") windowManager.get().addView(overlayView, overlayViewModel.defaultOverlayViewParams) + overlayView!!.announceForAccessibility( + applicationContext.resources.getString( + R.string.accessibility_side_fingerprint_indicator_label + ) + ) } /** Hide the side fingerprint sensor indicator */ diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt index 911145b62661..f5b9a050f33e 100644 --- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt +++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt @@ -37,6 +37,7 @@ import androidx.recyclerview.widget.AsyncListDiffer import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import com.android.internal.R as InternalR import com.android.internal.logging.UiEventLogger import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.res.R @@ -367,6 +368,7 @@ internal constructor( private val nameView = view.requireViewById<TextView>(R.id.bluetooth_device_name) private val summaryView = view.requireViewById<TextView>(R.id.bluetooth_device_summary) private val iconView = view.requireViewById<ImageView>(R.id.bluetooth_device_icon) + private val iconGear = view.requireViewById<ImageView>(R.id.gear_icon_image) private val gearView = view.requireViewById<View>(R.id.gear_icon) internal fun bind( @@ -380,6 +382,36 @@ internal constructor( mutableDeviceItemClick.tryEmit(item) uiEventLogger.log(BluetoothTileDialogUiEvent.DEVICE_CLICKED) } + + // updating icon colors + val tintColor = + com.android.settingslib.Utils.getColorAttr( + context, + if (item.isActive) InternalR.attr.materialColorOnPrimaryContainer + else InternalR.attr.materialColorOnSurface + ) + .defaultColor + + // update icons + iconView.apply { + item.iconWithDescription?.let { + setImageDrawable(it.first.apply { mutate()?.setTint(tintColor) }) + contentDescription = it.second + } + } + + iconGear.apply { drawable?.let { it.mutate()?.setTint(tintColor) } } + + // update text styles + nameView.setTextAppearance( + if (item.isActive) R.style.BluetoothTileDialog_DeviceName_Active + else R.style.BluetoothTileDialog_DeviceName + ) + summaryView.setTextAppearance( + if (item.isActive) R.style.BluetoothTileDialog_DeviceSummary_Active + else R.style.BluetoothTileDialog_DeviceSummary + ) + accessibilityDelegate = object : AccessibilityDelegate() { override fun onInitializeAccessibilityNodeInfo( @@ -398,12 +430,7 @@ internal constructor( } nameView.text = item.deviceName summaryView.text = item.connectionSummary - iconView.apply { - item.iconWithDescription?.let { - setImageDrawable(it.first) - contentDescription = it.second - } - } + gearView.setOnClickListener { deviceItemOnClickCallback.onDeviceItemGearClicked(item, it) } diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItem.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItem.kt index 0ea98d14bca3..a78130f1b041 100644 --- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItem.kt +++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItem.kt @@ -52,4 +52,5 @@ data class DeviceItem( val background: Int? = null, var isEnabled: Boolean = true, var actionAccessibilityLabel: String = "", + var isActive: Boolean = false ) diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItemFactory.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItemFactory.kt index 51b228026b03..d7893dbb0f90 100644 --- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItemFactory.kt +++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/DeviceItemFactory.kt @@ -55,7 +55,8 @@ internal abstract class DeviceItemFactory { type: DeviceItemType, connectionSummary: String, background: Int, - actionAccessibilityLabel: String + actionAccessibilityLabel: String, + isActive: Boolean ): DeviceItem { return DeviceItem( type = type, @@ -68,7 +69,8 @@ internal abstract class DeviceItemFactory { }, background = background, isEnabled = !cachedDevice.isBusy, - actionAccessibilityLabel = actionAccessibilityLabel + actionAccessibilityLabel = actionAccessibilityLabel, + isActive = isActive ) } } @@ -91,7 +93,8 @@ internal open class ActiveMediaDeviceItemFactory : DeviceItemFactory() { DeviceItemType.ACTIVE_MEDIA_BLUETOOTH_DEVICE, cachedDevice.connectionSummary ?: "", backgroundOn, - context.getString(actionAccessibilityLabelDisconnect) + context.getString(actionAccessibilityLabelDisconnect), + isActive = true ) } } @@ -116,7 +119,8 @@ internal class AudioSharingMediaDeviceItemFactory( cachedDevice.connectionSummary.takeUnless { it.isNullOrEmpty() } ?: context.getString(audioSharing), if (cachedDevice.isBusy) backgroundOffBusy else backgroundOn, - "" + "", + isActive = !cachedDevice.isBusy ) } } @@ -150,7 +154,8 @@ internal open class AvailableMediaDeviceItemFactory : DeviceItemFactory() { cachedDevice.connectionSummary.takeUnless { it.isNullOrEmpty() } ?: context.getString(connected), if (cachedDevice.isBusy) backgroundOffBusy else backgroundOff, - context.getString(actionAccessibilityLabelActivate) + context.getString(actionAccessibilityLabelActivate), + isActive = false ) } } @@ -188,7 +193,8 @@ internal class ConnectedDeviceItemFactory : DeviceItemFactory() { cachedDevice.connectionSummary.takeUnless { it.isNullOrEmpty() } ?: context.getString(connected), if (cachedDevice.isBusy) backgroundOffBusy else backgroundOff, - context.getString(actionAccessibilityLabelDisconnect) + context.getString(actionAccessibilityLabelDisconnect), + isActive = false ) } } @@ -216,7 +222,8 @@ internal open class SavedDeviceItemFactory : DeviceItemFactory() { cachedDevice.connectionSummary.takeUnless { it.isNullOrEmpty() } ?: context.getString(saved), if (cachedDevice.isBusy) backgroundOffBusy else backgroundOff, - context.getString(actionAccessibilityLabelActivate) + context.getString(actionAccessibilityLabelActivate), + isActive = false ) } } diff --git a/packages/SystemUI/src/com/android/systemui/display/ui/viewmodel/ConnectingDisplayViewModel.kt b/packages/SystemUI/src/com/android/systemui/display/ui/viewmodel/ConnectingDisplayViewModel.kt index 81ea2e74d799..62720a5b1377 100644 --- a/packages/SystemUI/src/com/android/systemui/display/ui/viewmodel/ConnectingDisplayViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/display/ui/viewmodel/ConnectingDisplayViewModel.kt @@ -79,7 +79,7 @@ constructor( .combine(concurrentDisplaysInProgessFlow) { pendingDisplay, concurrentDisplaysInProgress -> if (pendingDisplay == null) { - hideDialog() + dismissDialog() } else { showDialog(pendingDisplay, concurrentDisplaysInProgress) } @@ -88,17 +88,17 @@ constructor( } private fun showDialog(pendingDisplay: PendingDisplay, concurrentDisplaysInProgess: Boolean) { - hideDialog() + dismissDialog() dialog = bottomSheetFactory .createDialog( onStartMirroringClickListener = { scope.launch(bgDispatcher) { pendingDisplay.enable() } - hideDialog() + dismissDialog() }, onCancelMirroring = { scope.launch(bgDispatcher) { pendingDisplay.ignore() } - hideDialog() + dismissDialog() }, navbarBottomInsetsProvider = { Utils.getNavbarInsets(context).bottom }, showConcurrentDisplayInfo = concurrentDisplaysInProgess @@ -106,8 +106,8 @@ constructor( .apply { show() } } - private fun hideDialog() { - dialog?.hide() + private fun dismissDialog() { + dialog?.dismiss() dialog = null } diff --git a/packages/SystemUI/src/com/android/systemui/dreams/DreamOverlayAnimationsController.kt b/packages/SystemUI/src/com/android/systemui/dreams/DreamOverlayAnimationsController.kt index 3294c816d67c..b45ebd865c55 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/DreamOverlayAnimationsController.kt +++ b/packages/SystemUI/src/com/android/systemui/dreams/DreamOverlayAnimationsController.kt @@ -256,6 +256,7 @@ constructor( it.cancel() null } + mOverlayStateController.setExitAnimationsRunning(false) } private fun blurAnimator( diff --git a/packages/SystemUI/src/com/android/systemui/dreams/homecontrols/TaskFragmentComponent.kt b/packages/SystemUI/src/com/android/systemui/dreams/homecontrols/TaskFragmentComponent.kt index 297ad847caa6..befd822e14cd 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/homecontrols/TaskFragmentComponent.kt +++ b/packages/SystemUI/src/com/android/systemui/dreams/homecontrols/TaskFragmentComponent.kt @@ -161,5 +161,6 @@ constructor( TASK_FRAGMENT_TRANSIT_CLOSE, false ) + organizer.unregisterOrganizer() } } diff --git a/packages/SystemUI/src/com/android/systemui/dump/DumpManager.kt b/packages/SystemUI/src/com/android/systemui/dump/DumpManager.kt index 349236551ecf..b2fcc434630c 100644 --- a/packages/SystemUI/src/com/android/systemui/dump/DumpManager.kt +++ b/packages/SystemUI/src/com/android/systemui/dump/DumpManager.kt @@ -45,7 +45,7 @@ open class DumpManager @Inject constructor() { /** See [registerCriticalDumpable]. */ fun registerCriticalDumpable(module: Dumpable) { - registerCriticalDumpable(module::class.java.canonicalName, module) + registerCriticalDumpable(module::class.java.name, module) } /** @@ -62,7 +62,7 @@ open class DumpManager @Inject constructor() { /** See [registerNormalDumpable]. */ fun registerNormalDumpable(module: Dumpable) { - registerNormalDumpable(module::class.java.canonicalName, module) + registerNormalDumpable(module::class.java.name, module) } /** @@ -104,13 +104,10 @@ open class DumpManager @Inject constructor() { dumpables[name] = DumpableEntry(module, name, priority) } - /** - * Same as the above override, but automatically uses the canonical class name as the dumpable - * name. - */ + /** Same as the above override, but automatically uses the class name as the dumpable name. */ @Synchronized fun registerDumpable(module: Dumpable) { - registerDumpable(module::class.java.canonicalName, module) + registerDumpable(module::class.java.name, module) } /** Unregisters a previously-registered dumpable. */ diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/CustomizationProvider.kt b/packages/SystemUI/src/com/android/systemui/keyguard/CustomizationProvider.kt index 342325ffee91..ca358e180b0b 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/CustomizationProvider.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/CustomizationProvider.kt @@ -30,7 +30,7 @@ import android.net.Uri import android.os.Binder import android.os.Bundle import android.util.Log -import com.android.app.tracing.coroutines.runBlocking +import com.android.app.tracing.coroutines.runBlockingTraced as runBlocking import com.android.systemui.SystemUIAppComponentFactoryBase import com.android.systemui.SystemUIAppComponentFactoryBase.ContextAvailableCallback import com.android.systemui.dagger.qualifiers.Main diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java index 2d60fcca58cc..ed8d4263b212 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java @@ -42,6 +42,7 @@ import static com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STR import static com.android.systemui.DejankUtils.whitelistIpcs; import static com.android.systemui.Flags.notifyPowerManagerUserActivityBackground; import static com.android.systemui.Flags.refactorGetCurrentUser; +import static com.android.systemui.Flags.translucentOccludingActivityFix; import static com.android.systemui.keyguard.ui.viewmodel.LockscreenToDreamingTransitionViewModel.DREAMING_ANIMATION_DURATION_MS; import android.animation.Animator; @@ -1035,6 +1036,17 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, (int) (fullWidth - initialWidth) /* left */, fullWidth /* right */, mWindowCornerRadius, mWindowCornerRadius); + } else if (translucentOccludingActivityFix() + && mOccludingRemoteAnimationTarget != null + && mOccludingRemoteAnimationTarget.isTranslucent) { + // Animating in a transparent window looks really weird. Just let it be + // fullscreen and the app can do an internal animation if it wants to. + return new TransitionAnimator.State( + 0, + fullHeight, + 0, + fullWidth, + 0f, 0f); } else { final float initialHeight = fullHeight / 2f; final float initialWidth = fullWidth / 2f; @@ -1398,6 +1410,11 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, private final Lazy<DreamViewModel> mDreamViewModel; private final Lazy<CommunalTransitionViewModel> mCommunalTransitionViewModel; private RemoteAnimationTarget mRemoteAnimationTarget; + + /** + * The most recent RemoteAnimationTarget provided for an occluding activity animation. + */ + private RemoteAnimationTarget mOccludingRemoteAnimationTarget; private boolean mShowCommunalWhenUnoccluding = false; private final Lazy<WindowManagerLockscreenVisibilityManager> mWmLockscreenVisibilityManager; @@ -3930,6 +3947,13 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, public void onAnimationStart(int transit, RemoteAnimationTarget[] apps, RemoteAnimationTarget[] wallpapers, RemoteAnimationTarget[] nonApps, IRemoteAnimationFinishedCallback finishedCallback) throws RemoteException { + // Save mRemoteAnimationTarget for reference in the animation controller. Needs to be + // called prior to super.onAnimationStart() since that's the call that eventually asks + // the animation controller to configure the animation state. + if (apps.length > 0) { + mOccludingRemoteAnimationTarget = apps[0]; + } + super.onAnimationStart(transit, apps, wallpapers, nonApps, finishedCallback); mInteractionJankMonitor.begin( diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/OWNERS b/packages/SystemUI/src/com/android/systemui/keyguard/OWNERS new file mode 100644 index 000000000000..208a17c0a220 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/keyguard/OWNERS @@ -0,0 +1,12 @@ +set noparent + +# Bug component: 78010 + +amiko@google.com +beverlyt@google.com +bhinegardner@google.com +chandruis@google.com +jglazier@google.com +mpietal@google.com +tsuji@google.com +yuandizhou@google.com diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepository.kt b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepository.kt index 882f2315f6e8..dd3e6190ceaf 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepository.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepository.kt @@ -188,35 +188,33 @@ constructor( ) private val isFingerprintEnrolled: Flow<Boolean> = - selectedUserId - .flatMapLatest { currentUserId -> - conflatedCallbackFlow { - val callback = - object : AuthController.Callback { - override fun onEnrollmentsChanged( - sensorBiometricType: BiometricType, - userId: Int, - hasEnrollments: Boolean - ) { - if (sensorBiometricType.isFingerprint && userId == currentUserId) { - trySendWithFailureLogging( - hasEnrollments, - TAG, - "update fpEnrollment" - ) - } + selectedUserId.flatMapLatest { currentUserId -> + conflatedCallbackFlow { + val callback = + object : AuthController.Callback { + override fun onEnrollmentsChanged( + sensorBiometricType: BiometricType, + userId: Int, + hasEnrollments: Boolean + ) { + if (sensorBiometricType.isFingerprint && userId == currentUserId) { + trySendWithFailureLogging( + hasEnrollments, + TAG, + "update fpEnrollment" + ) } } - authController.addCallback(callback) - awaitClose { authController.removeCallback(callback) } - } + } + authController.addCallback(callback) + trySendWithFailureLogging( + authController.isFingerprintEnrolled(currentUserId), + TAG, + "Initial value of fingerprint enrollment" + ) + awaitClose { authController.removeCallback(callback) } } - .stateIn( - scope, - started = SharingStarted.Eagerly, - initialValue = - authController.isFingerprintEnrolled(userRepository.getSelectedUserInfo().id) - ) + } private val isFaceEnrolled: Flow<Boolean> = selectedUserId.flatMapLatest { selectedUserId: Int -> diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardTransitionRepository.kt b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardTransitionRepository.kt index 1b201ceda310..ac797feca550 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardTransitionRepository.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardTransitionRepository.kt @@ -23,7 +23,7 @@ import android.annotation.FloatRange import android.annotation.SuppressLint import android.os.Trace import android.util.Log -import com.android.app.tracing.coroutines.withContext +import com.android.app.tracing.coroutines.withContextTraced as withContext import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.keyguard.shared.model.KeyguardState diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt index 49d00af61a24..5573f0d5f644 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt @@ -40,6 +40,7 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.delay import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.distinctUntilChanged +import kotlinx.coroutines.flow.drop import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.flatMapLatest @@ -168,7 +169,9 @@ constructor( keyguardInteractor.isKeyguardGoingAway.filter { it }.map {}, // map to Unit keyguardInteractor.isKeyguardOccluded.flatMapLatest { keyguardOccluded -> if (keyguardOccluded) { - primaryBouncerInteractor.keyguardAuthenticatedBiometricsHandled + primaryBouncerInteractor.keyguardAuthenticatedBiometricsHandled.drop( + 1 + ) // drop the initial state } else { emptyFlow() } diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAodTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAodTransitionInteractor.kt index 2a9ee9fb8779..1e228eb5205d 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAodTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAodTransitionInteractor.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.domain.interactor import android.animation.ValueAnimator import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt index 7fa197c11e57..ab8075c7bcbf 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.domain.interactor import android.animation.ValueAnimator import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.Flags.communalHub import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGlanceableHubTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGlanceableHubTransitionInteractor.kt index e516fa3c44bb..26d1c25b6634 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGlanceableHubTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGlanceableHubTransitionInteractor.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.domain.interactor import android.animation.ValueAnimator import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.Flags import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt index f5b12a2ecfcf..a5b8ff034603 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.domain.interactor import android.animation.ValueAnimator import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.communal.domain.interactor.CommunalInteractor import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt index f30eef080ede..a2c9da0d70e5 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt @@ -19,7 +19,7 @@ package com.android.systemui.keyguard.domain.interactor import android.animation.ValueAnimator import android.util.MathUtils import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.Flags import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractor.kt index 65b42e657e75..fcf486b5696b 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractor.kt @@ -23,6 +23,7 @@ import com.android.systemui.back.domain.interactor.BackActionInteractor import com.android.systemui.dagger.SysUISingleton import com.android.systemui.keyevent.domain.interactor.SysUIKeyEventHandler.Companion.handleAction import com.android.systemui.media.controls.util.MediaSessionLegacyHelperWrapper +import com.android.systemui.plugins.ActivityStarter.OnDismissAction import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.shade.ShadeController @@ -105,7 +106,15 @@ constructor( (statusBarStateController.state != StatusBarState.SHADE) && statusBarKeyguardViewManager.shouldDismissOnMenuPressed() if (shouldUnlockOnMenuPressed) { - shadeController.animateCollapseShadeForced() + statusBarKeyguardViewManager.dismissWithAction( + object : OnDismissAction { + override fun onDismiss(): Boolean { + return false + } + }, + null, + false, + ) return true } return false diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt index ccce3bf1397c..a01a0e467f34 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt @@ -22,7 +22,7 @@ import android.app.admin.DevicePolicyManager import android.content.Context import android.content.Intent import android.util.Log -import com.android.app.tracing.coroutines.withContext +import com.android.app.tracing.coroutines.withContextTraced as withContext import com.android.compose.animation.scene.ObservableTransitionState import com.android.internal.widget.LockPatternUtils import com.android.systemui.animation.DialogTransitionAnimator diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerMessageAreaViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerMessageAreaViewBinder.kt index fe5f632c0b6a..23b7b664d4f1 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerMessageAreaViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerMessageAreaViewBinder.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.ui.binder import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.keyguard.AuthKeyguardMessageArea import com.android.systemui.keyguard.ui.viewmodel.AlternateBouncerMessageAreaViewModel import com.android.systemui.lifecycle.repeatWhenAttached diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerUdfpsViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerUdfpsViewBinder.kt index 9dc77d3dc9d3..53eefa7408c7 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerUdfpsViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerUdfpsViewBinder.kt @@ -21,7 +21,7 @@ import android.content.res.ColorStateList import android.view.View import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.deviceentry.shared.DeviceEntryUdfpsRefactor import com.android.systemui.keyguard.ui.view.DeviceEntryIconView import com.android.systemui.keyguard.ui.viewmodel.AlternateBouncerUdfpsIconViewModel diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerViewBinder.kt index 6550937d2db0..e7e4ed50bf7a 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/AlternateBouncerViewBinder.kt @@ -29,7 +29,7 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintSet import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.CoreStartable import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application @@ -86,7 +86,10 @@ constructor( privateFlags = WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY or WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION + // Avoid announcing window title. + accessibilityTitle = " " } + private var alternateBouncerView: ConstraintLayout? = null override fun start() { @@ -304,6 +307,7 @@ constructor( } } } + companion object { private const val TAG = "AlternateBouncerViewBinder" private const val swipeTag = "AlternateBouncer-SWIPE" diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/DeviceEntryIconViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/DeviceEntryIconViewBinder.kt index 1c7b4d996b36..646f0fde8cc0 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/DeviceEntryIconViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/DeviceEntryIconViewBinder.kt @@ -27,7 +27,7 @@ import androidx.compose.ui.graphics.toArgb import androidx.core.view.isInvisible import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.common.ui.view.LongPressHandlingView import com.android.systemui.deviceentry.shared.DeviceEntryUdfpsRefactor import com.android.systemui.keyguard.ui.view.DeviceEntryIconView @@ -91,6 +91,7 @@ object DeviceEntryIconViewBinder { launch("$TAG#viewModel.isVisible") { viewModel.isVisible.collect { isVisible -> longPressHandlingView.isInvisible = !isVisible + view.isClickable = isVisible } } launch("$TAG#viewModel.isLongPressEnabled") { diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt index bec8f3da9999..b684d196619a 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt @@ -22,7 +22,7 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintSet import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.KeyguardBottomAreaRefactor import com.android.systemui.keyguard.shared.model.KeyguardBlueprint import com.android.systemui.keyguard.ui.view.layout.blueprints.transitions.BaseBlueprintTransition diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBottomAreaViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBottomAreaViewBinder.kt index 660a650fb916..3bdf7dac75b3 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBottomAreaViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBottomAreaViewBinder.kt @@ -36,7 +36,7 @@ import androidx.core.view.updateLayoutParams import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle import com.android.app.animation.Interpolators -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.settingslib.Utils import com.android.systemui.animation.ActivityTransitionAnimator import com.android.systemui.animation.Expandable diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardIndicationAreaBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardIndicationAreaBinder.kt index 23c2491813f7..93499027140b 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardIndicationAreaBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardIndicationAreaBinder.kt @@ -22,7 +22,7 @@ import android.view.ViewGroup import android.widget.TextView import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.KeyguardBottomAreaRefactor import com.android.systemui.keyguard.MigrateClocksToBlueprint import com.android.systemui.keyguard.ui.viewmodel.KeyguardIndicationAreaViewModel diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardLongPressViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardLongPressViewBinder.kt index 09fe067f7724..762760e3a1e3 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardLongPressViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardLongPressViewBinder.kt @@ -20,7 +20,7 @@ package com.android.systemui.keyguard.ui.binder import android.view.View import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.common.ui.view.LongPressHandlingView import com.android.systemui.keyguard.ui.viewmodel.KeyguardLongPressViewModel import com.android.systemui.lifecycle.repeatWhenAttached diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt index 8386628f4c83..86dae0cbc6aa 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt @@ -33,7 +33,7 @@ import androidx.constraintlayout.widget.ConstraintSet.TOP import androidx.core.view.isVisible import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.internal.policy.SystemBarUtils import com.android.systemui.customization.R as customizationR import com.android.systemui.keyguard.shared.model.ClockSizeSetting diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewSmartspaceViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewSmartspaceViewBinder.kt index 4b75b804e52b..baa681282a0b 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewSmartspaceViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewSmartspaceViewBinder.kt @@ -22,7 +22,7 @@ import android.view.View import androidx.core.view.isInvisible import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.shared.model.ClockSizeSetting import com.android.systemui.keyguard.ui.viewmodel.KeyguardPreviewSmartspaceViewModel import com.android.systemui.lifecycle.repeatWhenAttached diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSettingsViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSettingsViewBinder.kt index fa5756522a6a..8df67d38d0f2 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSettingsViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSettingsViewBinder.kt @@ -22,7 +22,7 @@ import android.view.View import androidx.core.view.isVisible import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.animation.ActivityTransitionAnimator import com.android.systemui.common.ui.binder.IconViewBinder import com.android.systemui.common.ui.binder.TextViewBinder diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt index 191056c5578a..7a13d657973c 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt @@ -21,7 +21,7 @@ import androidx.constraintlayout.helper.widget.Layer import androidx.constraintlayout.widget.ConstraintLayout import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.MigrateClocksToBlueprint import com.android.systemui.keyguard.domain.interactor.KeyguardBlueprintInteractor import com.android.systemui.keyguard.ui.view.layout.blueprints.transitions.IntraBlueprintTransition.Config diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSurfaceBehindViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSurfaceBehindViewBinder.kt index fd27dc39299b..3934917d13c4 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSurfaceBehindViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSurfaceBehindViewBinder.kt @@ -16,7 +16,7 @@ package com.android.systemui.keyguard.ui.binder -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.WindowManagerLockscreenVisibilityManager import com.android.systemui.keyguard.ui.viewmodel.KeyguardSurfaceBehindViewModel import kotlinx.coroutines.CoroutineScope diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/LightRevealScrimViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/LightRevealScrimViewBinder.kt index b2ee68967878..2df17c39d90d 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/LightRevealScrimViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/LightRevealScrimViewBinder.kt @@ -18,7 +18,7 @@ package com.android.systemui.keyguard.ui.binder import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.ui.viewmodel.LightRevealScrimViewModel import com.android.systemui.lifecycle.repeatWhenAttached import com.android.systemui.statusbar.LightRevealScrim diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/WindowManagerLockscreenVisibilityViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/WindowManagerLockscreenVisibilityViewBinder.kt index ae46dd3a6ef3..b1ce47ee79e6 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/WindowManagerLockscreenVisibilityViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/WindowManagerLockscreenVisibilityViewBinder.kt @@ -16,7 +16,7 @@ package com.android.systemui.keyguard.ui.binder -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.keyguard.WindowManagerLockscreenVisibilityManager import com.android.systemui.keyguard.ui.viewmodel.WindowManagerLockscreenVisibilityViewModel import kotlinx.coroutines.CoroutineScope diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/DeviceEntryIconView.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/DeviceEntryIconView.kt index 215ac4662b55..1c6323594c70 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/DeviceEntryIconView.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/DeviceEntryIconView.kt @@ -73,14 +73,14 @@ constructor( AccessibilityNodeInfoCompat.ACTION_CLICK, resources.getString(R.string.accessibility_enter_hint) ) + override fun onInitializeAccessibilityNodeInfo( v: View, info: AccessibilityNodeInfo ) { super.onInitializeAccessibilityNodeInfo(v, info) when (accessibilityHintType) { - AccessibilityHintType.BOUNCER -> - info.addAction(accessibilityBouncerHint) + AccessibilityHintType.BOUNCER -> info.addAction(accessibilityBouncerHint) AccessibilityHintType.ENTER -> info.addAction(accessibilityEnterHint) AccessibilityHintType.NONE -> return } @@ -204,12 +204,12 @@ constructor( /* reversible */ false, ) - // LockscreenFingerprint <=> LockscreenLocked + // LockscreenFingerprint => LockscreenLocked animatedIconDrawable.addTransition( R.id.locked_fp, R.id.locked, context.getDrawable(R.drawable.fp_to_locked) as AnimatedVectorDrawable, - /* reversible */ true, + /* reversible */ false, ) // LockscreenUnlocked <=> AodLocked diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModel.kt index 4128c529644d..5cf100e78e6e 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModel.kt @@ -34,8 +34,8 @@ constructor( alternateBouncerInteractor: AlternateBouncerInteractor, keyguardTransitionInteractor: KeyguardTransitionInteractor, ) { - val canShowAlternateBouncer: Flow<Boolean> = alternateBouncerInteractor.canShowAlternateBouncer - + private val deviceSupportsAlternateBouncer: Flow<Boolean> = + alternateBouncerInteractor.alternateBouncerSupported private val isTransitioningToOrFromOrShowingAlternateBouncer: Flow<Boolean> = keyguardTransitionInteractor .transitionValue(KeyguardState.ALTERNATE_BOUNCER) @@ -43,8 +43,8 @@ constructor( .distinctUntilChanged() val alternateBouncerWindowRequired: Flow<Boolean> = - canShowAlternateBouncer.flatMapLatest { canShowAlternateBouncer -> - if (canShowAlternateBouncer) { + deviceSupportsAlternateBouncer.flatMapLatest { deviceSupportsAlternateBouncer -> + if (deviceSupportsAlternateBouncer) { isTransitioningToOrFromOrShowingAlternateBouncer } else { flowOf(false) diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt index 46880883ac70..5ce1b5e3dcc5 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt @@ -284,9 +284,9 @@ constructor( private fun DeviceEntryIconView.IconType.toAccessibilityHintType(): DeviceEntryIconView.AccessibilityHintType { return when (this) { + DeviceEntryIconView.IconType.FINGERPRINT, DeviceEntryIconView.IconType.LOCK -> DeviceEntryIconView.AccessibilityHintType.BOUNCER DeviceEntryIconView.IconType.UNLOCK -> DeviceEntryIconView.AccessibilityHintType.ENTER - DeviceEntryIconView.IconType.FINGERPRINT, DeviceEntryIconView.IconType.NONE -> DeviceEntryIconView.AccessibilityHintType.NONE } } diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt index aefff7d0f79b..edd7ae0733b3 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt @@ -20,7 +20,7 @@ package com.android.systemui.keyguard.ui.viewmodel import android.graphics.Point import android.util.MathUtils import android.view.View.VISIBLE -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.Flags.newAodTransition import com.android.systemui.common.shared.model.NotificationContainerBounds import com.android.systemui.communal.domain.interactor.CommunalInteractor diff --git a/packages/SystemUI/src/com/android/systemui/lifecycle/RepeatWhenAttached.kt b/packages/SystemUI/src/com/android/systemui/lifecycle/RepeatWhenAttached.kt index bf80e1870f1b..be32d108f676 100644 --- a/packages/SystemUI/src/com/android/systemui/lifecycle/RepeatWhenAttached.kt +++ b/packages/SystemUI/src/com/android/systemui/lifecycle/RepeatWhenAttached.kt @@ -26,7 +26,7 @@ import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.LifecycleRegistry import androidx.lifecycle.lifecycleScope import com.android.app.tracing.coroutines.createCoroutineTracingContext -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.Flags.coroutineTracing import com.android.systemui.util.Assert import com.android.systemui.util.Compile diff --git a/packages/SystemUI/src/com/android/systemui/log/dagger/BouncerTableLog.kt b/packages/SystemUI/src/com/android/systemui/log/dagger/BouncerTableLog.kt index 08df7db65af1..9f893e073cb1 100644 --- a/packages/SystemUI/src/com/android/systemui/log/dagger/BouncerTableLog.kt +++ b/packages/SystemUI/src/com/android/systemui/log/dagger/BouncerTableLog.kt @@ -16,10 +16,7 @@ package com.android.systemui.log.dagger -import java.lang.annotation.Documented -import java.lang.annotation.Retention -import java.lang.annotation.RetentionPolicy import javax.inject.Qualifier /** Logger for the primary and alternative bouncers. */ -@Qualifier @Documented @Retention(RetentionPolicy.RUNTIME) annotation class BouncerTableLog +@Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class BouncerTableLog diff --git a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt index 3aa9daac4866..d0f6f7961889 100644 --- a/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt +++ b/packages/SystemUI/src/com/android/systemui/notetask/NoteTaskController.kt @@ -37,7 +37,7 @@ import android.os.UserManager import android.provider.Settings import android.widget.Toast import androidx.annotation.VisibleForTesting -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background diff --git a/packages/SystemUI/src/com/android/systemui/qs/TEST_MAPPING b/packages/SystemUI/src/com/android/systemui/qs/TEST_MAPPING index 66f020f24e80..75140bee3cdd 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/TEST_MAPPING +++ b/packages/SystemUI/src/com/android/systemui/qs/TEST_MAPPING @@ -1,28 +1,12 @@ { "presubmit": [ { - "name": "CtsTileServiceTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTileServiceTestCases" } ], "postsubmit": [ { - "name": "QuickSettingsDeviceResetTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "QuickSettingsDeviceResetTests" } ] }
\ No newline at end of file diff --git a/packages/SystemUI/src/com/android/systemui/qs/pipeline/dagger/QSTileListLog.kt b/packages/SystemUI/src/com/android/systemui/qs/pipeline/dagger/QSTileListLog.kt index c56ca8c27a1f..d50374b3c24c 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/pipeline/dagger/QSTileListLog.kt +++ b/packages/SystemUI/src/com/android/systemui/qs/pipeline/dagger/QSTileListLog.kt @@ -15,9 +15,7 @@ */ package com.android.systemui.qs.pipeline.dagger -import java.lang.annotation.Retention -import java.lang.annotation.RetentionPolicy import javax.inject.Qualifier /** A [LogBuffer] for the new QS Pipeline for logging changes to the set of current tiles. */ -@Qualifier @MustBeDocumented @Retention(RetentionPolicy.RUNTIME) annotation class QSTileListLog +@Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class QSTileListLog diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegate.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegate.java index c971f547c302..b5942393f0d2 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegate.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegate.java @@ -489,6 +489,10 @@ public class InternetDialogDelegate implements mMobileDataToggle.setVisibility(mCanConfigMobileData ? View.VISIBLE : View.INVISIBLE); mMobileToggleDivider.setVisibility( mCanConfigMobileData ? View.VISIBLE : View.INVISIBLE); + int primaryColor = isNetworkConnected + ? R.color.connected_network_primary_color + : R.color.disconnected_network_primary_color; + mMobileToggleDivider.setBackgroundColor(dialog.getContext().getColor(primaryColor)); // Display the info for the non-DDS if it's actively being used int autoSwitchNonDdsSubId = mInternetDialogController.getActiveAutoSwitchNonDdsSubId(); diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ActionExecutor.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ActionExecutor.kt index 1868b4a29f20..a7b6ec7bb713 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ActionExecutor.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ActionExecutor.kt @@ -26,7 +26,7 @@ import android.os.UserHandle import android.util.Log import android.util.Pair import android.view.Window -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.internal.app.ChooserActivity import com.android.systemui.dagger.qualifiers.Application import dagger.assisted.Assisted diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentExecutor.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentExecutor.kt index 9e622801a01b..7b01c36489fb 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentExecutor.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentExecutor.kt @@ -31,7 +31,7 @@ import android.view.RemoteAnimationAdapter import android.view.RemoteAnimationTarget import android.view.WindowManager import android.view.WindowManagerGlobal -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.internal.infra.ServiceConnector import com.android.systemui.Flags import com.android.systemui.dagger.SysUISingleton diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/HeadlessScreenshotHandler.kt b/packages/SystemUI/src/com/android/systemui/screenshot/HeadlessScreenshotHandler.kt new file mode 100644 index 000000000000..6730d2d86d5f --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/screenshot/HeadlessScreenshotHandler.kt @@ -0,0 +1,114 @@ +/* + * Copyright (C) 2024 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.screenshot + +import android.net.Uri +import android.os.UserManager +import android.util.Log +import android.view.WindowManager +import com.android.internal.logging.UiEventLogger +import com.android.systemui.dagger.qualifiers.Main +import com.android.systemui.res.R +import com.google.common.util.concurrent.ListenableFuture +import java.util.UUID +import java.util.concurrent.Executor +import java.util.concurrent.Executors +import java.util.function.Consumer +import javax.inject.Inject + +/** + * A ScreenshotHandler that just saves the screenshot and calls back as appropriate, with no UI. + * + * Basically, ScreenshotController with all the UI bits ripped out. + */ +class HeadlessScreenshotHandler +@Inject +constructor( + private val imageExporter: ImageExporter, + @Main private val mainExecutor: Executor, + private val imageCapture: ImageCapture, + private val userManager: UserManager, + private val uiEventLogger: UiEventLogger, + private val notificationsControllerFactory: ScreenshotNotificationsController.Factory, +) : ScreenshotHandler { + + override fun handleScreenshot( + screenshot: ScreenshotData, + finisher: Consumer<Uri?>, + requestCallback: TakeScreenshotService.RequestCallback + ) { + if (screenshot.type == WindowManager.TAKE_SCREENSHOT_FULLSCREEN) { + screenshot.bitmap = imageCapture.captureDisplay(screenshot.displayId, crop = null) + } + + if (screenshot.bitmap == null) { + Log.e(TAG, "handleScreenshot: Screenshot bitmap was null") + notificationsControllerFactory + .create(screenshot.displayId) + .notifyScreenshotError(R.string.screenshot_failed_to_capture_text) + requestCallback.reportError() + return + } + + val future: ListenableFuture<ImageExporter.Result> = + imageExporter.export( + Executors.newSingleThreadExecutor(), + UUID.randomUUID(), + screenshot.bitmap, + screenshot.getUserOrDefault(), + screenshot.displayId + ) + future.addListener( + { + try { + val result = future.get() + Log.d(TAG, "Saved screenshot: $result") + logScreenshotResultStatus(result.uri, screenshot) + finisher.accept(result.uri) + requestCallback.onFinish() + } catch (e: Exception) { + Log.d(TAG, "Failed to store screenshot", e) + finisher.accept(null) + requestCallback.reportError() + } + }, + mainExecutor + ) + } + + private fun logScreenshotResultStatus(uri: Uri?, screenshot: ScreenshotData) { + if (uri == null) { + uiEventLogger.log(ScreenshotEvent.SCREENSHOT_NOT_SAVED, 0, screenshot.packageNameString) + notificationsControllerFactory + .create(screenshot.displayId) + .notifyScreenshotError(R.string.screenshot_failed_to_save_text) + } else { + uiEventLogger.log(ScreenshotEvent.SCREENSHOT_SAVED, 0, screenshot.packageNameString) + if (userManager.isManagedProfile(screenshot.getUserOrDefault().identifier)) { + uiEventLogger.log( + ScreenshotEvent.SCREENSHOT_SAVED_TO_WORK_PROFILE, + 0, + screenshot.packageNameString + ) + } + } + } + + companion object { + const val TAG = "HeadlessScreenshotHandler" + } +} diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsController.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsController.kt index 2ffb7835f400..5f1688650cb2 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsController.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsController.kt @@ -18,6 +18,7 @@ package com.android.systemui.screenshot import android.app.assist.AssistContent import com.android.systemui.screenshot.ui.viewmodel.ActionButtonAppearance +import com.android.systemui.screenshot.ui.viewmodel.PreviewAction import com.android.systemui.screenshot.ui.viewmodel.ScreenshotViewModel import dagger.assisted.Assisted import dagger.assisted.AssistedFactory @@ -84,9 +85,9 @@ constructor( } inner class ActionsCallback(private val screenshotId: UUID) { - fun providePreviewAction(onClick: () -> Unit) { + fun providePreviewAction(previewAction: PreviewAction) { if (screenshotId == currentScreenshotId) { - viewModel.setPreviewAction(onClick) + viewModel.setPreviewAction(previewAction) } } diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt index b8029c8b1cc3..c216f1da2dc1 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt @@ -29,6 +29,7 @@ import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_EDIT_TAPPED import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_PREVIEW_TAPPED import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_SHARE_TAPPED import com.android.systemui.screenshot.ui.viewmodel.ActionButtonAppearance +import com.android.systemui.screenshot.ui.viewmodel.PreviewAction import dagger.assisted.Assisted import dagger.assisted.AssistedFactory import dagger.assisted.AssistedInject @@ -40,7 +41,9 @@ import java.util.UUID */ interface ScreenshotActionsProvider { fun onScrollChipReady(onClick: Runnable) + fun onScrollChipInvalidated() + fun setCompletedScreenshot(result: ScreenshotSavedResult) /** @@ -75,17 +78,19 @@ constructor( private var result: ScreenshotSavedResult? = null init { - actionsCallback.providePreviewAction { - debugLog(LogConfig.DEBUG_ACTIONS) { "Preview tapped" } - uiEventLogger.log(SCREENSHOT_PREVIEW_TAPPED, 0, request.packageNameString) - onDeferrableActionTapped { result -> - actionExecutor.startSharedTransition( - createEdit(result.uri, context), - result.user, - true - ) + actionsCallback.providePreviewAction( + PreviewAction(context.resources.getString(R.string.screenshot_edit_description)) { + debugLog(LogConfig.DEBUG_ACTIONS) { "Preview tapped" } + uiEventLogger.log(SCREENSHOT_PREVIEW_TAPPED, 0, request.packageNameString) + onDeferrableActionTapped { result -> + actionExecutor.startSharedTransition( + createEdit(result.uri, context), + result.user, + true + ) + } } - } + ) actionsCallback.provideActionButton( ActionButtonAppearance( diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java index e8dfac868546..8891c166b837 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java @@ -101,7 +101,7 @@ import javax.inject.Provider; /** * Controls the state and flow for screenshots. */ -public class ScreenshotController { +public class ScreenshotController implements ScreenshotHandler { private static final String TAG = logTag(ScreenshotController.class); /** @@ -351,7 +351,8 @@ public class ScreenshotController { mShowUIOnExternalDisplay = showUIOnExternalDisplay; } - void handleScreenshot(ScreenshotData screenshot, Consumer<Uri> finisher, + @Override + public void handleScreenshot(ScreenshotData screenshot, Consumer<Uri> finisher, RequestCallback requestCallback) { Assert.isMainThread(); @@ -428,7 +429,9 @@ public class ScreenshotController { setWindowFocusable(true); mViewProxy.requestFocus(); - enqueueScrollCaptureRequest(requestId, screenshot.getUserHandle()); + if (screenshot.getType() != WindowManager.TAKE_SCREENSHOT_PROVIDED_IMAGE) { + enqueueScrollCaptureRequest(requestId, screenshot.getUserHandle()); + } attachWindow(); diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotProxyService.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotProxyService.kt index c8067df114fc..6df22f036273 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotProxyService.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotProxyService.kt @@ -21,7 +21,7 @@ import android.os.RemoteException import android.util.Log import androidx.lifecycle.LifecycleService import androidx.lifecycle.lifecycleScope -import com.android.app.tracing.coroutines.launch +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.plugins.ActivityStarter import com.android.systemui.shade.ShadeExpansionStateManager diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotSoundController.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotSoundController.kt index d3a7fc4a3e4a..7aeec47241cb 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotSoundController.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotSoundController.kt @@ -18,7 +18,7 @@ package com.android.systemui.screenshot import android.media.MediaPlayer import android.util.Log -import com.android.app.tracing.coroutines.async +import com.android.app.tracing.coroutines.asyncTraced as async import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import javax.inject.Inject diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotExecutor.kt b/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotExecutor.kt index 40d709d0ab25..6a9615081d72 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotExecutor.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotExecutor.kt @@ -1,3 +1,19 @@ +/* + * Copyright (C) 2024 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.screenshot import android.net.Uri @@ -12,6 +28,7 @@ import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.display.data.repository.DisplayRepository import com.android.systemui.res.R import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_CAPTURE_FAILED +import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_DISMISSED_OTHER import com.android.systemui.screenshot.TakeScreenshotService.RequestCallback import java.util.function.Consumer import javax.inject.Inject @@ -25,9 +42,13 @@ interface TakeScreenshotExecutor { onSaved: (Uri?) -> Unit, requestCallback: RequestCallback ) + fun onCloseSystemDialogsReceived() + fun removeWindows() + fun onDestroy() + fun executeScreenshotsAsync( screenshotRequest: ScreenshotRequest, onSaved: Consumer<Uri?>, @@ -35,6 +56,14 @@ interface TakeScreenshotExecutor { ) } +interface ScreenshotHandler { + fun handleScreenshot( + screenshot: ScreenshotData, + finisher: Consumer<Uri?>, + requestCallback: RequestCallback + ) +} + /** * Receives the signal to take a screenshot from [TakeScreenshotService], and calls back with the * result. @@ -51,10 +80,10 @@ constructor( private val screenshotRequestProcessor: ScreenshotRequestProcessor, private val uiEventLogger: UiEventLogger, private val screenshotNotificationControllerFactory: ScreenshotNotificationsController.Factory, + private val headlessScreenshotHandler: HeadlessScreenshotHandler, ) : TakeScreenshotExecutor { - private val displays = displayRepository.displays - private val screenshotControllers = mutableMapOf<Int, ScreenshotController>() + private var screenshotController: ScreenshotController? = null private val notificationControllers = mutableMapOf<Int, ScreenshotNotificationsController>() /** @@ -72,9 +101,15 @@ constructor( val resultCallbackWrapper = MultiResultCallbackWrapper(requestCallback) displays.forEach { display -> val displayId = display.displayId + var screenshotHandler: ScreenshotHandler = + if (displayId == Display.DEFAULT_DISPLAY) { + getScreenshotController(display) + } else { + headlessScreenshotHandler + } Log.d(TAG, "Executing screenshot for display $displayId") dispatchToController( - display = display, + screenshotHandler, rawScreenshotData = ScreenshotData.fromRequest(screenshotRequest, displayId), onSaved = if (displayId == Display.DEFAULT_DISPLAY) { @@ -87,7 +122,7 @@ constructor( /** All logging should be triggered only by this method. */ private suspend fun dispatchToController( - display: Display, + screenshotHandler: ScreenshotHandler, rawScreenshotData: ScreenshotData, onSaved: (Uri?) -> Unit, callback: RequestCallback @@ -101,13 +136,12 @@ constructor( logScreenshotRequested(rawScreenshotData) onFailedScreenshotRequest(rawScreenshotData, callback) } - .getOrNull() - ?: return + .getOrNull() ?: return logScreenshotRequested(screenshotData) Log.d(TAG, "Screenshot request: $screenshotData") try { - getScreenshotController(display).handleScreenshot(screenshotData, onSaved, callback) + screenshotHandler.handleScreenshot(screenshotData, onSaved, callback) } catch (e: IllegalStateException) { Log.e(TAG, "Error while ScreenshotController was handling ScreenshotData!", e) onFailedScreenshotRequest(screenshotData, callback) @@ -147,36 +181,24 @@ constructor( } } - /** Propagates the close system dialog signal to all controllers. */ + /** Propagates the close system dialog signal to the ScreenshotController. */ override fun onCloseSystemDialogsReceived() { - screenshotControllers.forEach { (_, screenshotController) -> - if (!screenshotController.isPendingSharedTransition) { - screenshotController.requestDismissal(ScreenshotEvent.SCREENSHOT_DISMISSED_OTHER) - } + if (screenshotController?.isPendingSharedTransition == false) { + screenshotController?.requestDismissal(SCREENSHOT_DISMISSED_OTHER) } } /** Removes all screenshot related windows. */ override fun removeWindows() { - screenshotControllers.forEach { (_, screenshotController) -> - screenshotController.removeWindow() - } + screenshotController?.removeWindow() } /** * Destroys the executor. Afterwards, this class is not expected to work as intended anymore. */ override fun onDestroy() { - screenshotControllers.forEach { (_, screenshotController) -> - screenshotController.onDestroy() - } - screenshotControllers.clear() - } - - private fun getScreenshotController(display: Display): ScreenshotController { - return screenshotControllers.computeIfAbsent(display.displayId) { - screenshotControllerFactory.create(display, /* showUIOnExternalDisplay= */ false) - } + screenshotController?.onDestroy() + screenshotController = null } private fun getNotificationController(id: Int): ScreenshotNotificationsController { @@ -196,6 +218,12 @@ constructor( } } + private fun getScreenshotController(display: Display): ScreenshotController { + val controller = screenshotController ?: screenshotControllerFactory.create(display, false) + screenshotController = controller + return controller + } + /** * Returns a [RequestCallback] that wraps [originalCallback]. * diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/policy/PolicyRequestProcessor.kt b/packages/SystemUI/src/com/android/systemui/screenshot/policy/PolicyRequestProcessor.kt index 4f27b9e4dbf0..b3d5c9e9691c 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/policy/PolicyRequestProcessor.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/policy/PolicyRequestProcessor.kt @@ -99,7 +99,7 @@ class PolicyRequestProcessor( original, updates.component, updates.owner, - type.displayId + type.displayId, ) } return updated @@ -120,6 +120,7 @@ class PolicyRequestProcessor( return replaceWithScreenshot( original = original, componentName = topMainRootTask?.topActivity ?: defaultComponent, + taskId = topMainRootTask?.taskId, owner = defaultOwner, displayId = original.displayId ) @@ -144,11 +145,12 @@ class PolicyRequestProcessor( ) } - suspend fun replaceWithScreenshot( + private suspend fun replaceWithScreenshot( original: ScreenshotData, componentName: ComponentName?, owner: UserHandle?, displayId: Int, + taskId: Int? = null, ): ScreenshotData { Log.i(TAG, "Capturing screenshot: $componentName / $owner") val screenshot = captureDisplay(displayId) @@ -157,7 +159,8 @@ class PolicyRequestProcessor( bitmap = screenshot, userHandle = owner, topComponent = componentName, - screenBounds = Rect(0, 0, screenshot?.width ?: 0, screenshot?.height ?: 0) + screenBounds = Rect(0, 0, screenshot?.width ?: 0, screenshot?.height ?: 0), + taskId = taskId ?: -1, ) } diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ui/binder/ScreenshotShelfViewBinder.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ui/binder/ScreenshotShelfViewBinder.kt index 442b3873be4d..0fefa0b7757a 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ui/binder/ScreenshotShelfViewBinder.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ui/binder/ScreenshotShelfViewBinder.kt @@ -128,8 +128,9 @@ constructor(private val buttonViewBinder: ActionButtonViewBinder) { } } launch { - viewModel.previewAction.collect { onClick -> - previewView.setOnClickListener { onClick?.invoke() } + viewModel.previewAction.collect { action -> + previewView.setOnClickListener { action?.onClick?.invoke() } + previewView.contentDescription = action?.contentDescription } } launch { diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ui/viewmodel/ScreenshotViewModel.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ui/viewmodel/ScreenshotViewModel.kt index 3f99bc4597cb..25420d44dc79 100644 --- a/packages/SystemUI/src/com/android/systemui/screenshot/ui/viewmodel/ScreenshotViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/screenshot/ui/viewmodel/ScreenshotViewModel.kt @@ -31,8 +31,8 @@ class ScreenshotViewModel(private val accessibilityManager: AccessibilityManager val scrollingScrim: StateFlow<Bitmap?> = _scrollingScrim private val _badge = MutableStateFlow<Drawable?>(null) val badge: StateFlow<Drawable?> = _badge - private val _previewAction = MutableStateFlow<(() -> Unit)?>(null) - val previewAction: StateFlow<(() -> Unit)?> = _previewAction + private val _previewAction = MutableStateFlow<PreviewAction?>(null) + val previewAction: StateFlow<PreviewAction?> = _previewAction private val _actions = MutableStateFlow(emptyList<ActionButtonViewModel>()) val actions: StateFlow<List<ActionButtonViewModel>> = _actions private val _animationState = MutableStateFlow(AnimationState.NOT_STARTED) @@ -57,8 +57,8 @@ class ScreenshotViewModel(private val accessibilityManager: AccessibilityManager _badge.value = badge } - fun setPreviewAction(onClick: () -> Unit) { - _previewAction.value = onClick + fun setPreviewAction(previewAction: PreviewAction) { + _previewAction.value = previewAction } fun addAction( @@ -149,6 +149,11 @@ class ScreenshotViewModel(private val accessibilityManager: AccessibilityManager } } +data class PreviewAction( + val contentDescription: CharSequence, + val onClick: () -> Unit, +) + enum class AnimationState { NOT_STARTED, ENTRANCE_STARTED, // The first 200ms of the entrance animation diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java index 262befc1e9ad..fff5e104a7ab 100644 --- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java @@ -1770,8 +1770,9 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump // the small clock here // With migrateClocksToBlueprint, weather clock will have behaviors similar to other clocks if (!MigrateClocksToBlueprint.isEnabled()) { + boolean bypassEnabled = mKeyguardBypassController.getBypassEnabled(); if (mKeyguardStatusViewController.isLargeClockBlockingNotificationShelf() - && hasVisibleNotifications() && isOnAod()) { + && hasVisibleNotifications() && (isOnAod() || bypassEnabled)) { return SMALL; } } @@ -3046,7 +3047,7 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump if (mDeviceEntryFaceAuthInteractor.canFaceAuthRun()) { mUpdateMonitor.requestActiveUnlock( - ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT, + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY, "lockScreenEmptySpaceTap"); } else { mLockscreenGestureLogger.write(MetricsEvent.ACTION_LS_HINT, diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java index c9126161c40f..fa3b09234589 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java @@ -62,6 +62,7 @@ import android.view.accessibility.Flags; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; +import com.android.internal.annotations.KeepForWeakReference; import com.android.internal.os.SomeArgs; import com.android.internal.statusbar.IAddTileResultCallback; import com.android.internal.statusbar.IStatusBar; @@ -191,10 +192,10 @@ public class CommandQueue extends IStatusBar.Stub implements private static final String SHOW_IME_SWITCHER_KEY = "showImeSwitcherKey"; private final Object mLock = new Object(); - private ArrayList<Callbacks> mCallbacks = new ArrayList<>(); - private Handler mHandler = new H(Looper.getMainLooper()); + private final ArrayList<Callbacks> mCallbacks = new ArrayList<>(); + private final Handler mHandler = new H(Looper.getMainLooper()); /** A map of display id - disable flag pair */ - private SparseArray<Pair<Integer, Integer>> mDisplayDisabled = new SparseArray<>(); + private final SparseArray<Pair<Integer, Integer>> mDisplayDisabled = new SparseArray<>(); /** * The last ID of the display where IME window for which we received setImeWindowStatus * event. @@ -205,6 +206,21 @@ public class CommandQueue extends IStatusBar.Stub implements private final @Nullable DumpHandler mDumpHandler; private final @Nullable Lazy<PowerInteractor> mPowerInteractor; + @KeepForWeakReference + private final DisplayTracker.Callback mDisplayTrackerCallback = new DisplayTracker.Callback() { + @Override + public void onDisplayRemoved(int displayId) { + synchronized (mLock) { + mDisplayDisabled.remove(displayId); + } + // This callback is registered with {@link #mHandler} that already posts to run on + // main thread, so it is safe to dispatch directly. + for (int i = mCallbacks.size() - 1; i >= 0; i--) { + mCallbacks.get(i).onDisplayRemoved(displayId); + } + } + }; + /** * These methods are called back on the main thread. */ @@ -574,19 +590,8 @@ public class CommandQueue extends IStatusBar.Stub implements mDisplayTracker = displayTracker; mRegistry = registry; mDumpHandler = dumpHandler; - mDisplayTracker.addDisplayChangeCallback(new DisplayTracker.Callback() { - @Override - public void onDisplayRemoved(int displayId) { - synchronized (mLock) { - mDisplayDisabled.remove(displayId); - } - // This callback is registered with {@link #mHandler} that already posts to run on - // main thread, so it is safe to dispatch directly. - for (int i = mCallbacks.size() - 1; i >= 0; i--) { - mCallbacks.get(i).onDisplayRemoved(displayId); - } - } - }, new HandlerExecutor(mHandler)); + mDisplayTracker.addDisplayChangeCallback(mDisplayTrackerCallback, + new HandlerExecutor(mHandler)); // We always have default display. setDisabled(mDisplayTracker.getDefaultDisplayId(), DISABLE_NONE, DISABLE2_NONE); mPowerInteractor = powerInteractor; diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/OWNERS b/packages/SystemUI/src/com/android/systemui/statusbar/OWNERS new file mode 100644 index 000000000000..9de229e2ddb8 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/statusbar/OWNERS @@ -0,0 +1,20 @@ +set noparent + +# Bug component: 78010 + +caitlinshk@google.com +evanlaird@google.com +pixel@google.com + +per-file *Biometrics* = set noparent +per-file *Biometrics* = file:../keyguard/OWNERS +per-file *Doze* = set noparent +per-file *Doze* = file:../keyguard/OWNERS +per-file *Keyboard* = set noparent +per-file *Keyboard* = file:../keyguard/OWNERS +per-file *Keyguard* = set noparent +per-file *Keyguard* = file:../keyguard/OWNERS +per-file *Lockscreen* = set noparent +per-file *Lockscreen* = file:../keyguard/OWNERS +per-file *Scrim* = set noparent +per-file *Scrim* = file:../keyguard/OWNERS
\ No newline at end of file diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/TEST_MAPPING b/packages/SystemUI/src/com/android/systemui/statusbar/TEST_MAPPING index 718c1c0f683b..323268440c4a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/TEST_MAPPING +++ b/packages/SystemUI/src/com/android/systemui/statusbar/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "CtsNotificationTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsNotificationTestCases_notification" } ], "postsubmit": [ diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/NetworkControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/NetworkControllerImpl.java index e3c47a43aad4..321593b6ada4 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/NetworkControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/NetworkControllerImpl.java @@ -596,7 +596,8 @@ public class NetworkControllerImpl extends BroadcastReceiver // NetworkCapabilities, but we need to convert it into TRANSPORT_WIFI in order to // distinguish it from VCN over Cellular. if (transportTypes[i] == NetworkCapabilities.TRANSPORT_CELLULAR - && Utils.tryGetWifiInfoForVcn(networkCapabilities) != null) { + && Utils.tryGetWifiInfoForVcn(mConnectivityManager, networkCapabilities) + != null) { transportTypes[i] = NetworkCapabilities.TRANSPORT_WIFI; break; } @@ -1112,7 +1113,9 @@ public class NetworkControllerImpl extends BroadcastReceiver continue; } if (transportType == NetworkCapabilities.TRANSPORT_CELLULAR - && Utils.tryGetWifiInfoForVcn(mLastDefaultNetworkCapabilities) != null) { + && Utils.tryGetWifiInfoForVcn( + mConnectivityManager, mLastDefaultNetworkCapabilities) + != null) { mConnectedTransports.set(NetworkCapabilities.TRANSPORT_WIFI); if (mLastDefaultNetworkCapabilities.hasCapability(NET_CAPABILITY_VALIDATED)) { mValidatedTransports.set(NetworkCapabilities.TRANSPORT_WIFI); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/OWNERS b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/OWNERS new file mode 100644 index 000000000000..4c349c4f86c3 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/OWNERS @@ -0,0 +1,3 @@ +set noparent + +file:../../keyguard/OWNERS diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java index 84e601848b91..0e5e98e250a9 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java @@ -439,13 +439,14 @@ public class KeyguardStatusBarView extends RelativeLayout { /** Should only be called from {@link KeyguardStatusBarViewController}. */ void onOverlayChanged() { - int theme = Utils.getThemeAttr(mContext, com.android.internal.R.attr.textAppearanceSmall); - mCarrierLabel.setTextAppearance(theme); + final int carrierTheme = R.style.TextAppearance_StatusBar_Clock; + mCarrierLabel.setTextAppearance(carrierTheme); mBatteryView.updatePercentView(); + final int userSwitcherTheme = R.style.TextAppearance_StatusBar_UserChip; TextView userSwitcherName = mUserSwitcherContainer.findViewById(R.id.current_user_name); if (userSwitcherName != null) { - userSwitcherName.setTextAppearance(theme); + userSwitcherName.setTextAppearance(userSwitcherTheme); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/OWNERS b/packages/SystemUI/src/com/android/systemui/statusbar/phone/OWNERS index 4657e9b84550..92a333e9ec2a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/OWNERS +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/OWNERS @@ -1,6 +1,6 @@ per-file *Notification* = set noparent per-file *Notification* = file:../notification/OWNERS -per-file NotificationIcon* = ccassidy@google.com, evanlaird@google.com, pixel@google.com +per-file NotificationIcon* = file:../OWNERS per-file NotificationShadeWindowControllerImpl.java = dupin@google.com, cinek@google.com, beverlyt@google.com, pixel@google.com, juliacr@google.com diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarTouchableRegionManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarTouchableRegionManager.java index 4b1ee58c2cc6..02187844d6da 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarTouchableRegionManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarTouchableRegionManager.java @@ -68,7 +68,7 @@ public final class StatusBarTouchableRegionManager implements Dumpable { private final UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController; private boolean mIsStatusBarExpanded = false; - private boolean mIsIdleOnGone = false; + private boolean mIsIdleOnGone = true; private boolean mShouldAdjustInsets = false; private View mNotificationShadeWindowView; private View mNotificationPanelView; @@ -282,7 +282,7 @@ public final class StatusBarTouchableRegionManager implements Dumpable { // since we don't want stray touches to go through the light reveal scrim to whatever is // underneath. return mIsStatusBarExpanded - || !mIsIdleOnGone + || (SceneContainerFlag.isEnabled() && !mIsIdleOnGone) || mPrimaryBouncerInteractor.isShowing().getValue() || mAlternateBouncerInteractor.isVisibleState() || mUnlockedScreenOffAnimationController.isAnimationPlaying(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImpl.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImpl.kt index ec3af87f2b9b..a7c5f78e5b69 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImpl.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImpl.kt @@ -345,32 +345,67 @@ constructor( orElse = flowOf(false), retrySignal = telephonyProcessCrashedEvent, ) - .stateIn(scope, SharingStarted.WhileSubscribed(), false) + .stateIn(scope, SharingStarted.Eagerly, false) private fun satelliteProvisioned(sm: SupportedSatelliteManager): Flow<Boolean> = conflatedCallbackFlow { - val callback = SatelliteProvisionStateCallback { provisioned -> - logBuffer.i { - "onSatelliteProvisionStateChanged: " + - if (provisioned) "provisioned" else "not provisioned" + // TODO(b/347992038): SatelliteManager should be sending the current provisioned + // status when we register a callback. Until then, we have to manually query here. + + // First, check to see what the current status is, and send the result to the output + trySend(queryIsSatelliteProvisioned(sm)) + + val callback = SatelliteProvisionStateCallback { provisioned -> + logBuffer.i { + "onSatelliteProvisionStateChanged: " + + if (provisioned) "provisioned" else "not provisioned" + } + trySend(provisioned) } - trySend(provisioned) - } - var registered = false - try { - sm.registerForProvisionStateChanged( - bgDispatcher.asExecutor(), - callback, - ) - registered = true - } catch (e: Exception) { - logBuffer.e("error registering for provisioning state callback", e) + var registered = false + try { + logBuffer.i { "registerForProvisionStateChanged" } + sm.registerForProvisionStateChanged( + bgDispatcher.asExecutor(), + callback, + ) + registered = true + } catch (e: Exception) { + logBuffer.e("error registering for provisioning state callback", e) + } + + awaitClose { + if (registered) { + sm.unregisterForProvisionStateChanged(callback) + } + } } + .flowOn(bgDispatcher) + + /** Check the current satellite provisioning status. */ + private suspend fun queryIsSatelliteProvisioned(sm: SupportedSatelliteManager): Boolean = + withContext(bgDispatcher) { + suspendCancellableCoroutine { continuation -> + val receiver = + object : OutcomeReceiver<Boolean, SatelliteManager.SatelliteException> { + override fun onResult(result: Boolean) { + logBuffer.i { "requestIsProvisioned.onResult: $result" } + continuation.resume(result) + } - awaitClose { - if (registered) { - sm.unregisterForProvisionStateChanged(callback) + override fun onError(exception: SatelliteManager.SatelliteException) { + logBuffer.e("requestIsProvisioned.onError:", exception) + continuation.resume(false) + } + } + + logBuffer.i { "Query for current satellite provisioned state." } + try { + sm.requestIsProvisioned(bgDispatcher.asExecutor(), receiver) + } catch (e: Exception) { + logBuffer.e("Exception while calling SatelliteManager.requestIsProvisioned:", e) + continuation.resume(false) } } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepository.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepository.kt index 1a55f7d90e97..e30286ddb744 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepository.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepository.kt @@ -26,6 +26,7 @@ import android.net.NetworkCapabilities.TRANSPORT_CELLULAR import android.net.NetworkCapabilities.TRANSPORT_ETHERNET import android.net.NetworkCapabilities.TRANSPORT_WIFI import android.net.vcn.VcnTransportInfo +import android.net.vcn.VcnUtils import android.net.wifi.WifiInfo import android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID import androidx.annotation.ArrayRes @@ -160,7 +161,9 @@ constructor( defaultNetworkCapabilities .map { networkCapabilities -> networkCapabilities?.run { - val subId = (transportInfo as? VcnTransportInfo)?.subId + val subId = + VcnUtils.getSubIdFromVcnCaps(connectivityManager, networkCapabilities) + // Never return an INVALID_SUBSCRIPTION_ID (-1) if (subId != INVALID_SUBSCRIPTION_ID) { subId @@ -244,9 +247,9 @@ constructor( * info. */ fun NetworkCapabilities.getMainOrUnderlyingWifiInfo( - connectivityManager: ConnectivityManager, + connectivityManager: ConnectivityManager ): WifiInfo? { - val mainWifiInfo = this.getMainWifiInfo() + val mainWifiInfo = this.getMainWifiInfo(connectivityManager) if (mainWifiInfo != null) { return mainWifiInfo } @@ -260,7 +263,9 @@ constructor( // eventually traced to a wifi or carrier merged connection. So, check those underlying // networks for possible wifi information as well. See b/225902574. return this.underlyingNetworks?.firstNotNullOfOrNull { underlyingNetwork -> - connectivityManager.getNetworkCapabilities(underlyingNetwork)?.getMainWifiInfo() + connectivityManager + .getNetworkCapabilities(underlyingNetwork) + ?.getMainWifiInfo(connectivityManager) } } @@ -268,7 +273,9 @@ constructor( * Checks the network capabilities for wifi info, but does *not* check the underlying * networks. See [getMainOrUnderlyingWifiInfo]. */ - private fun NetworkCapabilities.getMainWifiInfo(): WifiInfo? { + private fun NetworkCapabilities.getMainWifiInfo( + connectivityManager: ConnectivityManager + ): WifiInfo? { // Wifi info can either come from a WIFI Transport, or from a CELLULAR transport for // virtual networks like VCN. val canHaveWifiInfo = @@ -282,7 +289,7 @@ constructor( // [com.android.settingslib.Utils.tryGetWifiInfoForVcn]. It's copied instead of // re-used because it makes the logic here clearer, and because the method will be // removed once this pipeline is fully launched. - is VcnTransportInfo -> currentTransportInfo.wifiInfo + is VcnTransportInfo -> VcnUtils.getWifiInfoFromVcnCaps(connectivityManager, this) is WifiInfo -> currentTransportInfo else -> null } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/DevicePostureControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/DevicePostureControllerImpl.java index de0eb493c83d..528ef491f40c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/DevicePostureControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/DevicePostureControllerImpl.java @@ -31,8 +31,8 @@ import com.android.systemui.util.Assert; import kotlin.Unit; -import java.util.ArrayList; import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Executor; import javax.inject.Inject; @@ -42,7 +42,13 @@ import javax.inject.Inject; public class DevicePostureControllerImpl implements DevicePostureController { /** From androidx.window.common.COMMON_STATE_USE_BASE_STATE */ private static final int COMMON_STATE_USE_BASE_STATE = 1000; - private final List<Callback> mListeners = new ArrayList<>(); + /** + * Despite this is always used only from the main thread, it might be that some listener + * unregisters itself while we're sending the update, ending up modifying this while we're + * iterating it. + * Keeping a threadsafe list of listeners helps preventing ConcurrentModificationExceptions. + */ + private final List<Callback> mListeners = new CopyOnWriteArrayList<>(); private final List<DeviceState> mSupportedStates; private DeviceState mCurrentDeviceState; private int mCurrentDevicePosture = DEVICE_POSTURE_UNKNOWN; diff --git a/packages/SystemUI/src/com/android/systemui/util/AlphaTintDrawableWrapper.java b/packages/SystemUI/src/com/android/systemui/util/AlphaTintDrawableWrapper.java index 947746c94198..4b2fe49c41b4 100644 --- a/packages/SystemUI/src/com/android/systemui/util/AlphaTintDrawableWrapper.java +++ b/packages/SystemUI/src/com/android/systemui/util/AlphaTintDrawableWrapper.java @@ -45,8 +45,8 @@ import java.io.IOException; * This class should only be used in XML. * * @attr ref android.R.styleable#DrawableWrapper_drawable - * @attr ref R.styleable#AlphaTintDrawableWrapper_tint - * @attr ref R.styleable#AlphaTintDrawableWrapper_alpha + * @attr ref android.R.styleable#AlphaTintDrawableWrapper_tint + * @attr ref android.R.styleable#AlphaTintDrawableWrapper_alpha */ public class AlphaTintDrawableWrapper extends InsetDrawable { private ColorStateList mTint; diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java index aee441a13a5d..c45f98e5f4f5 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java @@ -567,7 +567,7 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa streamStateW(stream).levelMax = Math.max(1, getAudioManagerStreamMaxVolume(stream)); updateStreamMuteW(stream, mAudio.isStreamMute(stream)); final StreamState ss = streamStateW(stream); - ss.muteSupported = mAudio.isStreamAffectedByMute(stream); + ss.muteSupported = mAudio.isStreamMutableByUi(stream); ss.name = STREAMS.get(stream); checkRoutedToBluetoothW(stream); } diff --git a/packages/SystemUI/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractor.kt b/packages/SystemUI/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractor.kt index 7f1faeeb381d..cfcd6b14010d 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractor.kt @@ -16,15 +16,23 @@ package com.android.systemui.volume.panel.component.spatial.domain.interactor +import android.bluetooth.BluetoothProfile import android.media.AudioDeviceAttributes import android.media.AudioDeviceInfo +import android.media.AudioManager +import com.android.settingslib.bluetooth.CachedBluetoothDevice +import com.android.settingslib.bluetooth.LocalBluetoothProfile +import com.android.settingslib.flags.Flags import com.android.settingslib.media.domain.interactor.SpatializerInteractor +import com.android.settingslib.volume.data.repository.AudioRepository +import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.volume.domain.interactor.AudioOutputInteractor import com.android.systemui.volume.domain.model.AudioOutputDevice import com.android.systemui.volume.panel.component.spatial.domain.model.SpatialAudioAvailabilityModel import com.android.systemui.volume.panel.component.spatial.domain.model.SpatialAudioEnabledModel import com.android.systemui.volume.panel.dagger.scope.VolumePanelScope import javax.inject.Inject +import kotlin.coroutines.CoroutineContext import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.SharingStarted @@ -33,6 +41,7 @@ import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.stateIn +import kotlinx.coroutines.withContext /** * Provides an ability to access and update spatial audio and head tracking state. @@ -46,6 +55,8 @@ class SpatialAudioComponentInteractor constructor( audioOutputInteractor: AudioOutputInteractor, private val spatializerInteractor: SpatializerInteractor, + private val audioRepository: AudioRepository, + @Background private val backgroundCoroutineContext: CoroutineContext, @VolumePanelScope private val coroutineScope: CoroutineScope, ) { @@ -138,42 +149,85 @@ constructor( } private suspend fun AudioOutputDevice.getAudioDeviceAttributes(): AudioDeviceAttributes? { - when (this) { - is AudioOutputDevice.BuiltIn -> return builtinSpeaker + return when (this) { + is AudioOutputDevice.BuiltIn -> builtinSpeaker is AudioOutputDevice.Bluetooth -> { - return listOf( - AudioDeviceAttributes( - AudioDeviceAttributes.ROLE_OUTPUT, - AudioDeviceInfo.TYPE_BLE_HEADSET, - cachedBluetoothDevice.address, - ), - AudioDeviceAttributes( - AudioDeviceAttributes.ROLE_OUTPUT, - AudioDeviceInfo.TYPE_BLE_SPEAKER, - cachedBluetoothDevice.address, - ), - AudioDeviceAttributes( - AudioDeviceAttributes.ROLE_OUTPUT, - AudioDeviceInfo.TYPE_BLE_BROADCAST, - cachedBluetoothDevice.address, - ), - AudioDeviceAttributes( - AudioDeviceAttributes.ROLE_OUTPUT, - AudioDeviceInfo.TYPE_BLUETOOTH_A2DP, - cachedBluetoothDevice.address, - ), - AudioDeviceAttributes( - AudioDeviceAttributes.ROLE_OUTPUT, - AudioDeviceInfo.TYPE_HEARING_AID, - cachedBluetoothDevice.address, + if (Flags.enableDeterminingSpatialAudioAttributesByProfile()) { + getAudioDeviceAttributesByBluetoothProfile(cachedBluetoothDevice) + } else { + listOf( + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_BLE_HEADSET, + cachedBluetoothDevice.address, + ), + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_BLE_SPEAKER, + cachedBluetoothDevice.address, + ), + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_BLE_BROADCAST, + cachedBluetoothDevice.address, + ), + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_BLUETOOTH_A2DP, + cachedBluetoothDevice.address, + ), + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.TYPE_HEARING_AID, + cachedBluetoothDevice.address, + ) ) - ) - .firstOrNull { spatializerInteractor.isSpatialAudioAvailable(it) } + .firstOrNull { spatializerInteractor.isSpatialAudioAvailable(it) } + } } - else -> return null + else -> null } } + private suspend fun getAudioDeviceAttributesByBluetoothProfile( + cachedBluetoothDevice: CachedBluetoothDevice + ): AudioDeviceAttributes? = + withContext(backgroundCoroutineContext) { + cachedBluetoothDevice.profiles + .firstOrNull { + it.profileId in audioProfiles && it.isEnabled(cachedBluetoothDevice.device) + } + ?.let { profile: LocalBluetoothProfile -> + when (profile.profileId) { + BluetoothProfile.A2DP -> { + AudioDeviceInfo.TYPE_BLUETOOTH_A2DP + } + BluetoothProfile.LE_AUDIO -> { + when ( + audioRepository.getBluetoothAudioDeviceCategory( + cachedBluetoothDevice.address + ) + ) { + AudioManager.AUDIO_DEVICE_CATEGORY_SPEAKER -> + AudioDeviceInfo.TYPE_BLE_SPEAKER + else -> AudioDeviceInfo.TYPE_BLE_HEADSET + } + } + BluetoothProfile.HEARING_AID -> { + AudioDeviceInfo.TYPE_HEARING_AID + } + else -> null + } + } + ?.let { + AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + it, + cachedBluetoothDevice.address, + ) + } + } + private companion object { val builtinSpeaker = AudioDeviceAttributes( @@ -181,5 +235,7 @@ constructor( AudioDeviceInfo.TYPE_BUILTIN_SPEAKER, "" ) + val audioProfiles = + setOf(BluetoothProfile.A2DP, BluetoothProfile.LE_AUDIO, BluetoothProfile.HEARING_AID) } } diff --git a/packages/SystemUI/tests/Android.bp b/packages/SystemUI/tests/Android.bp index 88939a2ba67d..3e7596ccabf0 100644 --- a/packages/SystemUI/tests/Android.bp +++ b/packages/SystemUI/tests/Android.bp @@ -35,9 +35,9 @@ android_test { "libstaticjvmtiagent", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", "telephony-common", - "android.test.base", + "android.test.base.stubs.system", ], aaptflags: [ "--extra-packages com.android.systemui", @@ -50,3 +50,14 @@ android_test { additional_manifests: ["AndroidManifest.xml"], manifest: "AndroidManifest-base.xml", } + +test_module_config { + name: "SystemUITests_systemui_accessibility", + base: "SystemUITests", + test_suites: ["device-tests"], + include_filters: ["com.android.systemui.accessibility"], + exclude_annotations: [ + "android.platform.test.annotations.Postsubmit", + "android.platform.test.annotations.FlakyTest", + ], +} diff --git a/packages/SystemUI/tests/src/com/android/keyguard/ActiveUnlockConfigTest.kt b/packages/SystemUI/tests/src/com/android/keyguard/ActiveUnlockConfigTest.kt index 8858d132c4be..48f6cc4261a9 100644 --- a/packages/SystemUI/tests/src/com/android/keyguard/ActiveUnlockConfigTest.kt +++ b/packages/SystemUI/tests/src/com/android/keyguard/ActiveUnlockConfigTest.kt @@ -28,6 +28,7 @@ import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ACQUIRE_INFO import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ERRORS import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT +import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_WHEN_BIOMETRIC_ENROLLED import android.provider.Settings.Secure.ACTIVE_UNLOCK_ON_WAKE import android.provider.Settings.Secure.ACTIVE_UNLOCK_WAKEUPS_CONSIDERED_UNLOCK_INTENTS @@ -40,6 +41,7 @@ import com.android.systemui.util.mockito.capture import com.android.systemui.util.mockito.eq import com.android.systemui.util.mockito.whenever import com.android.systemui.util.settings.FakeSettings +import dagger.Lazy import java.io.PrintWriter import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue @@ -51,7 +53,6 @@ import org.mockito.Mock import org.mockito.Mockito.verify import org.mockito.Mockito.`when` import org.mockito.MockitoAnnotations -import dagger.Lazy @SmallTest class ActiveUnlockConfigTest : SysuiTestCase() { @@ -111,6 +112,48 @@ class ActiveUnlockConfigTest : SysuiTestCase() { ActiveUnlockConfig.ActiveUnlockRequestOrigin.WAKE ) ) + assertFalse( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY + ) + ) + assertTrue( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT + ) + ) + assertTrue( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.BIOMETRIC_FAIL + ) + ) + } + + @Test + fun onUnlockIntentLegacySettingChanged() { + // GIVEN no active unlock settings enabled + assertFalse( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY + ) + ) + + // WHEN unlock on unlock intent legacy is allowed + secureSettings.putIntForUser(ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY, 1, currentUser) + updateSetting(secureSettings.getUriFor(ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY)) + + // THEN active unlock triggers allowed on unlock_intent_legacy, unlock_intent, + // AND biometric fail + assertFalse( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.WAKE + ) + ) + assertTrue( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY + ) + ) assertTrue( activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT @@ -132,16 +175,21 @@ class ActiveUnlockConfigTest : SysuiTestCase() { ) ) - // WHEN unlock on biometric failed is allowed + // WHEN unlock on unlock intent is allowed secureSettings.putIntForUser(ACTIVE_UNLOCK_ON_UNLOCK_INTENT, 1, currentUser) updateSetting(secureSettings.getUriFor(ACTIVE_UNLOCK_ON_UNLOCK_INTENT)) - // THEN active unlock triggers allowed on: biometric failure ONLY + // THEN active unlock triggers allowed on: unlock intent AND biometric failure assertFalse( activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( ActiveUnlockConfig.ActiveUnlockRequestOrigin.WAKE ) ) + assertFalse( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY + ) + ) assertTrue( activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT @@ -184,6 +232,11 @@ class ActiveUnlockConfigTest : SysuiTestCase() { ) assertFalse( activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( + ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT_LEGACY + ) + ) + assertFalse( + activeUnlockConfig.shouldAllowActiveUnlockFromOrigin( ActiveUnlockConfig.ActiveUnlockRequestOrigin.UNLOCK_INTENT ) ) diff --git a/packages/SystemUI/tests/src/com/android/systemui/accessibility/floatingmenu/MenuViewTest.java b/packages/SystemUI/tests/src/com/android/systemui/accessibility/floatingmenu/MenuViewTest.java index 103449b6b0f7..ee8ce17cecd4 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/accessibility/floatingmenu/MenuViewTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/accessibility/floatingmenu/MenuViewTest.java @@ -26,6 +26,7 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.app.UiModeManager; +import android.content.res.Configuration; import android.graphics.Rect; import android.graphics.drawable.GradientDrawable; import android.platform.test.annotations.EnableFlags; @@ -78,6 +79,12 @@ public class MenuViewTest extends SysuiTestCase { mNightMode = mUiModeManager.getNightMode(); mUiModeManager.setNightMode(MODE_NIGHT_YES); + // Programmatically update the resource's configuration to night mode to reduce flakiness + Configuration nightConfig = new Configuration(mContext.getResources().getConfiguration()); + nightConfig.uiMode = Configuration.UI_MODE_NIGHT_YES; + mContext.getResources().updateConfiguration(nightConfig, + mContext.getResources().getDisplayMetrics(), null); + mSpyContext = spy(mContext); doNothing().when(mSpyContext).startActivity(any()); @@ -101,6 +108,8 @@ public class MenuViewTest extends SysuiTestCase { @Test public void insetsOnDarkTheme_menuOnLeft_matchInsets() { + // In dark theme, the inset is not 0 to avoid weird spacing issue between the menu and + // the edge of the screen. mMenuView.onConfigurationChanged(/* newConfig= */ null); final InstantInsetLayerDrawable insetLayerDrawable = (InstantInsetLayerDrawable) mMenuView.getBackground(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt index 9a99ed7bb512..1e3ee280204b 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt @@ -27,6 +27,7 @@ import android.hardware.biometrics.PromptContentViewWithMoreOptionsButton import android.hardware.biometrics.PromptInfo import android.hardware.biometrics.PromptVerticalListContentView import android.hardware.face.FaceSensorPropertiesInternal +import android.hardware.fingerprint.FingerprintManager import android.hardware.fingerprint.FingerprintSensorPropertiesInternal import android.os.Handler import android.os.IBinder @@ -88,9 +89,8 @@ import org.mockito.Mockito.eq import org.mockito.Mockito.never import org.mockito.Mockito.times import org.mockito.Mockito.verify -import org.mockito.junit.MockitoJUnit import org.mockito.Mockito.`when` as whenever - +import org.mockito.junit.MockitoJUnit private const val OP_PACKAGE_NAME = "biometric.testapp" @@ -99,33 +99,21 @@ private const val OP_PACKAGE_NAME = "biometric.testapp" @SmallTest open class AuthContainerViewTest : SysuiTestCase() { - @JvmField @Rule - var mockitoRule = MockitoJUnit.rule() - - @Mock - lateinit var callback: AuthDialogCallback - @Mock - lateinit var userManager: UserManager - @Mock - lateinit var lockPatternUtils: LockPatternUtils - @Mock - lateinit var wakefulnessLifecycle: WakefulnessLifecycle - @Mock - lateinit var panelInteractionDetector: AuthDialogPanelInteractionDetector - @Mock - lateinit var windowToken: IBinder - @Mock - lateinit var interactionJankMonitor: InteractionJankMonitor - @Mock - lateinit var vibrator: VibratorHelper - @Mock - lateinit var udfpsUtils: UdfpsUtils - @Mock - lateinit var authController: AuthController - @Mock - lateinit var selectedUserInteractor: SelectedUserInteractor - @Mock - private lateinit var packageManager: PackageManager + @JvmField @Rule var mockitoRule = MockitoJUnit.rule() + + @Mock lateinit var callback: AuthDialogCallback + @Mock lateinit var userManager: UserManager + @Mock lateinit var fingerprintManager: FingerprintManager + @Mock lateinit var lockPatternUtils: LockPatternUtils + @Mock lateinit var wakefulnessLifecycle: WakefulnessLifecycle + @Mock lateinit var panelInteractionDetector: AuthDialogPanelInteractionDetector + @Mock lateinit var windowToken: IBinder + @Mock lateinit var interactionJankMonitor: InteractionJankMonitor + @Mock lateinit var vibrator: VibratorHelper + @Mock lateinit var udfpsUtils: UdfpsUtils + @Mock lateinit var authController: AuthController + @Mock lateinit var selectedUserInteractor: SelectedUserInteractor + @Mock private lateinit var packageManager: PackageManager @Mock private lateinit var activityTaskManager: ActivityTaskManager private lateinit var displayRepository: FakeDisplayRepository @@ -141,11 +129,12 @@ open class AuthContainerViewTest : SysuiTestCase() { private val fingerprintRepository = FakeFingerprintPropertyRepository() private val displayStateRepository = FakeDisplayStateRepository() private val credentialInteractor = FakeCredentialInteractor() - private val bpCredentialInteractor = PromptCredentialInteractor( - Dispatchers.Main.immediate, - biometricPromptRepository, - credentialInteractor, - ) + private val bpCredentialInteractor = + PromptCredentialInteractor( + Dispatchers.Main.immediate, + biometricPromptRepository, + credentialInteractor, + ) private val promptSelectorInteractor by lazy { PromptSelectorInteractorImpl( fingerprintRepository, @@ -166,22 +155,26 @@ open class AuthContainerViewTest : SysuiTestCase() { displayStateInteractor = DisplayStateInteractorImpl( - testScope.backgroundScope, - mContext, - fakeExecutor, - displayStateRepository, - displayRepository, + testScope.backgroundScope, + mContext, + fakeExecutor, + displayStateRepository, + displayRepository, ) udfpsOverlayInteractor = - UdfpsOverlayInteractor( - context, - authController, - selectedUserInteractor, - testScope.backgroundScope, - ) + UdfpsOverlayInteractor( + context, + authController, + selectedUserInteractor, + fingerprintManager, + testScope.backgroundScope, + ) biometricStatusInteractor = - BiometricStatusInteractorImpl(activityTaskManager, biometricStatusRepository, - fingerprintRepository) + BiometricStatusInteractorImpl( + activityTaskManager, + biometricStatusRepository, + fingerprintRepository + ) iconProvider = IconProvider(context) // Set up default logo icon whenever(packageManager.getApplicationIcon(OP_PACKAGE_NAME)).thenReturn(defaultLogoIcon) @@ -198,10 +191,8 @@ open class AuthContainerViewTest : SysuiTestCase() { @Test fun testNotifiesAnimatedIn() { initializeFingerprintContainer() - verify(callback).onDialogAnimatedIn( - authContainer?.requestId ?: 0L, - true /* startFingerprintNow */ - ) + verify(callback) + .onDialogAnimatedIn(authContainer?.requestId ?: 0L, true /* startFingerprintNow */) } @Test @@ -246,10 +237,8 @@ open class AuthContainerViewTest : SysuiTestCase() { waitForIdleSync() // attaching the view resets the state and allows this to happen again - verify(callback).onDialogAnimatedIn( - authContainer?.requestId ?: 0L, - true /* startFingerprintNow */ - ) + verify(callback) + .onDialogAnimatedIn(authContainer?.requestId ?: 0L, true /* startFingerprintNow */) } @Test @@ -274,10 +263,8 @@ open class AuthContainerViewTest : SysuiTestCase() { // the first time is triggered by initializeFingerprintContainer() // the second time was triggered by dismissWithoutCallback() - verify(callback, times(2)).onDialogAnimatedIn( - authContainer?.requestId ?: 0L, - true /* startFingerprintNow */ - ) + verify(callback, times(2)) + .onDialogAnimatedIn(authContainer?.requestId ?: 0L, true /* startFingerprintNow */) } @Test @@ -288,18 +275,18 @@ open class AuthContainerViewTest : SysuiTestCase() { verify(panelInteractionDetector).disable() } - @Test fun testActionAuthenticated_sendsDismissedAuthenticated() { val container = initializeFingerprintContainer() container.mBiometricCallback.onAuthenticated() waitForIdleSync() - verify(callback).onDismissed( + verify(callback) + .onDismissed( eq(AuthDialogCallback.DISMISSED_BIOMETRIC_AUTHENTICATED), eq<ByteArray?>(null), /* credentialAttestation */ eq(authContainer?.requestId ?: 0L) - ) + ) assertThat(container.parent).isNull() } @@ -309,15 +296,17 @@ open class AuthContainerViewTest : SysuiTestCase() { container.mBiometricCallback.onUserCanceled() waitForIdleSync() - verify(callback).onSystemEvent( + verify(callback) + .onSystemEvent( eq(BiometricConstants.BIOMETRIC_SYSTEM_EVENT_EARLY_USER_CANCEL), eq(authContainer?.requestId ?: 0L) - ) - verify(callback).onDismissed( + ) + verify(callback) + .onDismissed( eq(AuthDialogCallback.DISMISSED_USER_CANCELED), eq<ByteArray?>(null), /* credentialAttestation */ eq(authContainer?.requestId ?: 0L) - ) + ) assertThat(container.parent).isNull() } @@ -327,19 +316,21 @@ open class AuthContainerViewTest : SysuiTestCase() { container.mBiometricCallback.onButtonNegative() waitForIdleSync() - verify(callback).onDismissed( + verify(callback) + .onDismissed( eq(AuthDialogCallback.DISMISSED_BUTTON_NEGATIVE), eq<ByteArray?>(null), /* credentialAttestation */ eq(authContainer?.requestId ?: 0L) - ) + ) assertThat(container.parent).isNull() } @Test fun testActionTryAgain_sendsTryAgain() { - val container = initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK - ) + val container = + initializeFingerprintContainer( + authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK + ) container.mBiometricCallback.onButtonTryAgain() waitForIdleSync() @@ -352,21 +343,24 @@ open class AuthContainerViewTest : SysuiTestCase() { container.mBiometricCallback.onError() waitForIdleSync() - verify(callback).onDismissed( + verify(callback) + .onDismissed( eq(AuthDialogCallback.DISMISSED_ERROR), eq<ByteArray?>(null), /* credentialAttestation */ eq(authContainer?.requestId ?: 0L) - ) + ) assertThat(authContainer!!.parent).isNull() } @Ignore("b/279650412") @Test fun testActionUseDeviceCredential_sendsOnDeviceCredentialPressed() { - val container = initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK or - BiometricManager.Authenticators.DEVICE_CREDENTIAL - ) + val container = + initializeFingerprintContainer( + authenticators = + BiometricManager.Authenticators.BIOMETRIC_WEAK or + BiometricManager.Authenticators.DEVICE_CREDENTIAL + ) container.mBiometricCallback.onUseDeviceCredential() waitForIdleSync() @@ -376,10 +370,12 @@ open class AuthContainerViewTest : SysuiTestCase() { @Test fun testAnimateToCredentialUI_invokesStartTransitionToCredentialUI() { - val container = initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK or - BiometricManager.Authenticators.DEVICE_CREDENTIAL - ) + val container = + initializeFingerprintContainer( + authenticators = + BiometricManager.Authenticators.BIOMETRIC_WEAK or + BiometricManager.Authenticators.DEVICE_CREDENTIAL + ) container.animateToCredentialUI(false) waitForIdleSync() @@ -395,10 +391,12 @@ open class AuthContainerViewTest : SysuiTestCase() { @Test fun testAnimateToCredentialUI_rotateCredentialUI() { - val container = initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.BIOMETRIC_WEAK or - BiometricManager.Authenticators.DEVICE_CREDENTIAL - ) + val container = + initializeFingerprintContainer( + authenticators = + BiometricManager.Authenticators.BIOMETRIC_WEAK or + BiometricManager.Authenticators.DEVICE_CREDENTIAL + ) container.animateToCredentialUI(false) waitForIdleSync() @@ -437,13 +435,12 @@ open class AuthContainerViewTest : SysuiTestCase() { mSetFlagsRule.enableFlags(FLAG_CUSTOM_BIOMETRIC_PROMPT) var isButtonClicked = false val contentView = - PromptContentViewWithMoreOptionsButton.Builder() - .setMoreOptionsButtonListener( - fakeExecutor) { _, _ -> isButtonClicked = true } - .build() + PromptContentViewWithMoreOptionsButton.Builder() + .setMoreOptionsButtonListener(fakeExecutor) { _, _ -> isButtonClicked = true } + .build() val container = - initializeFingerprintContainer(contentViewWithMoreOptionsButton = contentView) + initializeFingerprintContainer(contentViewWithMoreOptionsButton = contentView) waitForIdleSync() @@ -461,9 +458,9 @@ open class AuthContainerViewTest : SysuiTestCase() { @Test fun testShowCredentialUI_withDescription() { val container = - initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL - ) + initializeFingerprintContainer( + authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL + ) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() @@ -475,10 +472,10 @@ open class AuthContainerViewTest : SysuiTestCase() { mSetFlagsRule.enableFlags(FLAG_CONSTRAINT_BP) mSetFlagsRule.enableFlags(FLAG_CUSTOM_BIOMETRIC_PROMPT) val container = - initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL, - verticalListContentView = PromptVerticalListContentView.Builder().build() - ) + initializeFingerprintContainer( + authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL, + verticalListContentView = PromptVerticalListContentView.Builder().build() + ) // Two-step credential view should show - // 1. biometric prompt without sensor 2. credential view ui waitForIdleSync() @@ -497,14 +494,14 @@ open class AuthContainerViewTest : SysuiTestCase() { mSetFlagsRule.enableFlags(FLAG_CONSTRAINT_BP) mSetFlagsRule.enableFlags(FLAG_CUSTOM_BIOMETRIC_PROMPT) val contentView = - PromptContentViewWithMoreOptionsButton.Builder() - .setMoreOptionsButtonListener(fakeExecutor) { _, _ -> } - .build() + PromptContentViewWithMoreOptionsButton.Builder() + .setMoreOptionsButtonListener(fakeExecutor) { _, _ -> } + .build() val container = - initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL, - contentViewWithMoreOptionsButton = contentView - ) + initializeFingerprintContainer( + authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL, + contentViewWithMoreOptionsButton = contentView + ) waitForIdleSync() assertThat(container.hasCredentialView()).isTrue() @@ -514,13 +511,13 @@ open class AuthContainerViewTest : SysuiTestCase() { @Test fun testCredentialViewUsesEffectiveUserId() { whenever(userManager.getCredentialOwnerProfile(anyInt())).thenReturn(200) - whenever(lockPatternUtils.getKeyguardStoredPasswordQuality(eq(200))).thenReturn( - DevicePolicyManager.PASSWORD_QUALITY_SOMETHING - ) + whenever(lockPatternUtils.getKeyguardStoredPasswordQuality(eq(200))) + .thenReturn(DevicePolicyManager.PASSWORD_QUALITY_SOMETHING) - val container = initializeFingerprintContainer( - authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL - ) + val container = + initializeFingerprintContainer( + authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL + ) waitForIdleSync() assertThat(container.hasCredentialPatternView()).isTrue() @@ -531,9 +528,8 @@ open class AuthContainerViewTest : SysuiTestCase() { fun testCredentialUI_disablesClickingOnBackground() { val container = initializeCredentialPasswordContainer() assertThat(container.hasBiometricPrompt()).isFalse() - assertThat( - container.findViewById<View>(R.id.background)?.isImportantForAccessibility - ).isFalse() + assertThat(container.findViewById<View>(R.id.background)?.isImportantForAccessibility) + .isFalse() container.findViewById<View>(R.id.background)?.performClick() waitForIdleSync() @@ -552,7 +548,7 @@ open class AuthContainerViewTest : SysuiTestCase() { fun testLayoutParams_hasShowWhenLockedFlag() { val layoutParams = AuthContainerView.getLayoutParams(windowToken, "") assertThat((layoutParams.flags and WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED) != 0) - .isTrue() + .isTrue() } @Test @@ -590,20 +586,20 @@ open class AuthContainerViewTest : SysuiTestCase() { } private fun initializeCredentialPasswordContainer( - addToView: Boolean = true, + addToView: Boolean = true, ): TestAuthContainerView { whenever(userManager.getCredentialOwnerProfile(anyInt())).thenReturn(20) - whenever(lockPatternUtils.getKeyguardStoredPasswordQuality(eq(20))).thenReturn( - DevicePolicyManager.PASSWORD_QUALITY_NUMERIC - ) + whenever(lockPatternUtils.getKeyguardStoredPasswordQuality(eq(20))) + .thenReturn(DevicePolicyManager.PASSWORD_QUALITY_NUMERIC) // In the credential view, clicking on the background (to cancel authentication) is not // valid. Thus, the listener should be null, and it should not be in the accessibility // hierarchy. - val container = initializeFingerprintContainer( + val container = + initializeFingerprintContainer( authenticators = BiometricManager.Authenticators.DEVICE_CREDENTIAL, addToView = addToView, - ) + ) waitForIdleSync() assertThat(container.hasCredentialPasswordView()).isTrue() @@ -615,26 +611,28 @@ open class AuthContainerViewTest : SysuiTestCase() { addToView: Boolean = true, verticalListContentView: PromptVerticalListContentView? = null, contentViewWithMoreOptionsButton: PromptContentViewWithMoreOptionsButton? = null, - ) = initializeContainer( - TestAuthContainerView( - authenticators = authenticators, - fingerprintProps = fingerprintSensorPropertiesInternal(), + ) = + initializeContainer( + TestAuthContainerView( + authenticators = authenticators, + fingerprintProps = fingerprintSensorPropertiesInternal(), verticalListContentView = verticalListContentView, - ), - addToView - ) + ), + addToView + ) private fun initializeCoexContainer( authenticators: Int = BiometricManager.Authenticators.BIOMETRIC_WEAK, addToView: Boolean = true - ) = initializeContainer( - TestAuthContainerView( - authenticators = authenticators, - fingerprintProps = fingerprintSensorPropertiesInternal(), - faceProps = faceSensorPropertiesInternal() - ), - addToView - ) + ) = + initializeContainer( + TestAuthContainerView( + authenticators = authenticators, + fingerprintProps = fingerprintSensorPropertiesInternal(), + faceProps = faceSensorPropertiesInternal() + ), + addToView + ) private fun initializeContainer( view: TestAuthContainerView, @@ -655,47 +653,50 @@ open class AuthContainerViewTest : SysuiTestCase() { faceProps: List<FaceSensorPropertiesInternal> = listOf(), verticalListContentView: PromptVerticalListContentView? = null, contentViewWithMoreOptionsButton: PromptContentViewWithMoreOptionsButton? = null, - ) : AuthContainerView( - Config().apply { - mContext = this@AuthContainerViewTest.context - mCallback = callback - mSensorIds = (fingerprintProps.map { it.sensorId } + - faceProps.map { it.sensorId }).toIntArray() - mSkipAnimation = true - mPromptInfo = PromptInfo().apply { - this.authenticators = authenticators - if (verticalListContentView != null) { - this.contentView = verticalListContentView - } else if (contentViewWithMoreOptionsButton != null) { - this.contentView = contentViewWithMoreOptionsButton - } - } - mOpPackageName = OP_PACKAGE_NAME - }, - testScope.backgroundScope, - fingerprintProps, - faceProps, - wakefulnessLifecycle, - panelInteractionDetector, - userManager, - lockPatternUtils, - interactionJankMonitor, - { promptSelectorInteractor }, - PromptViewModel( - displayStateInteractor, - promptSelectorInteractor, - context, - udfpsOverlayInteractor, - biometricStatusInteractor, - udfpsUtils, - iconProvider, - activityTaskManager - ), - { credentialViewModel }, - Handler(TestableLooper.get(this).looper), - fakeExecutor, - vibrator - ) { + ) : + AuthContainerView( + Config().apply { + mContext = this@AuthContainerViewTest.context + mCallback = callback + mSensorIds = + (fingerprintProps.map { it.sensorId } + faceProps.map { it.sensorId }) + .toIntArray() + mSkipAnimation = true + mPromptInfo = + PromptInfo().apply { + this.authenticators = authenticators + if (verticalListContentView != null) { + this.contentView = verticalListContentView + } else if (contentViewWithMoreOptionsButton != null) { + this.contentView = contentViewWithMoreOptionsButton + } + } + mOpPackageName = OP_PACKAGE_NAME + }, + testScope.backgroundScope, + fingerprintProps, + faceProps, + wakefulnessLifecycle, + panelInteractionDetector, + userManager, + lockPatternUtils, + interactionJankMonitor, + { promptSelectorInteractor }, + PromptViewModel( + displayStateInteractor, + promptSelectorInteractor, + context, + udfpsOverlayInteractor, + biometricStatusInteractor, + udfpsUtils, + iconProvider, + activityTaskManager + ), + { credentialViewModel }, + Handler(TestableLooper.get(this).looper), + fakeExecutor, + vibrator + ) { override fun postOnAnimation(runnable: Runnable) { runnable.run() } @@ -717,8 +718,10 @@ open class AuthContainerViewTest : SysuiTestCase() { val layoutParams = AuthContainerView.getLayoutParams(windowToken, "") val lpFlags = layoutParams.flags - assertThat((lpFlags and WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS) - != 0).isTrue() + assertThat( + (lpFlags and WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS) != 0 + ) + .isTrue() } @Test diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/OWNERS b/packages/SystemUI/tests/src/com/android/systemui/biometrics/OWNERS index 5420c377be39..58ae2b2fa6df 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/OWNERS +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/OWNERS @@ -3,3 +3,4 @@ set noparent # Bug component: 879035 include /services/core/java/com/android/server/biometrics/OWNERS beverlyt@google.com +include /packages/SystemUI/TEST_OWNERS diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorTest.kt index 3d63c5b6d0f8..13f2c7212e36 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorTest.kt @@ -17,6 +17,7 @@ package com.android.systemui.biometrics.domain.interactor import android.graphics.Rect +import android.hardware.fingerprint.FingerprintManager import android.view.MotionEvent import android.view.Surface import androidx.test.ext.junit.runners.AndroidJUnit4 @@ -51,6 +52,7 @@ class UdfpsOverlayInteractorTest : SysuiTestCase() { private lateinit var testScope: TestScope + @Mock private lateinit var fingerprintManager: FingerprintManager @Mock private lateinit var authController: AuthController @Captor private lateinit var authControllerCallback: ArgumentCaptor<AuthController.Callback> @@ -111,6 +113,7 @@ class UdfpsOverlayInteractorTest : SysuiTestCase() { context, authController, selectedUserInteractor, + fingerprintManager, testScope.backgroundScope ) testScope.runCurrent() diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt index 42382540d401..7fa165c19f60 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/binder/SideFpsOverlayViewBinderTest.kt @@ -73,6 +73,7 @@ import org.mockito.Mockito.verify import org.mockito.Mockito.`when` import org.mockito.junit.MockitoJUnit import org.mockito.junit.MockitoRule +import org.mockito.kotlin.argumentCaptor @OptIn(ExperimentalCoroutinesApi::class) @SmallTest @@ -218,6 +219,13 @@ class SideFpsOverlayViewBinderTest : SysuiTestCase() { verify(kosmos.windowManager).addView(any(), any()) + var viewCaptor = argumentCaptor<View>() + verify(kosmos.windowManager).addView(viewCaptor.capture(), any()) + verify(viewCaptor.firstValue) + .announceForAccessibility( + mContext.getText(R.string.accessibility_side_fingerprint_indicator_label) + ) + // Hide alternate bouncer kosmos.keyguardBouncerRepository.setAlternateVisible(false) runCurrent() diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt index 93c6d9ee732c..314743c042c2 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt @@ -36,6 +36,7 @@ import android.hardware.biometrics.PromptContentViewWithMoreOptionsButton import android.hardware.biometrics.PromptInfo import android.hardware.biometrics.PromptVerticalListContentView import android.hardware.face.FaceSensorPropertiesInternal +import android.hardware.fingerprint.FingerprintManager import android.hardware.fingerprint.FingerprintSensorProperties import android.hardware.fingerprint.FingerprintSensorPropertiesInternal import android.platform.test.annotations.EnableFlags @@ -114,6 +115,7 @@ internal class PromptViewModelTest(private val testCase: TestCase) : SysuiTestCa @JvmField @Rule var mockitoRule = MockitoJUnit.rule() @Mock private lateinit var lockPatternUtils: LockPatternUtils + @Mock private lateinit var fingerprintManager: FingerprintManager @Mock private lateinit var authController: AuthController @Mock private lateinit var selectedUserInteractor: SelectedUserInteractor @Mock private lateinit var udfpsUtils: UdfpsUtils @@ -202,6 +204,7 @@ internal class PromptViewModelTest(private val testCase: TestCase) : SysuiTestCa context, authController, selectedUserInteractor, + fingerprintManager, testScope.backgroundScope ) biometricStatusRepository = FakeBiometricStatusRepository() diff --git a/packages/SystemUI/tests/src/com/android/systemui/dump/DumpManagerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/dump/DumpManagerTest.kt index 6d5226f35e97..08881a08b511 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/dump/DumpManagerTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/dump/DumpManagerTest.kt @@ -22,6 +22,7 @@ import com.android.systemui.SysuiTestCase import com.android.systemui.log.LogBuffer import com.android.systemui.log.table.TableLogBuffer import com.google.common.truth.Truth.assertThat +import java.io.PrintWriter import org.junit.Assert.assertThrows import org.junit.Before import org.junit.Test @@ -131,6 +132,21 @@ class DumpManagerTest : SysuiTestCase() { } @Test + fun registerDumpable_supportsAnonymousDumpables() { + val anonDumpable = + object : Dumpable { + override fun dump(pw: PrintWriter, args: Array<out String>) { + pw.println("AnonDumpable") + } + } + + // THEN registration with implicit names should succeed + dumpManager.registerCriticalDumpable(anonDumpable) + + // No exception thrown + } + + @Test fun getDumpables_returnsSafeCollection() { // GIVEN a variety of registered dumpables dumpManager.registerCriticalDumpable("dumpable1", dumpable1) diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractorTest.kt index 13f30f560cdf..945e44afa455 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractorTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardKeyEventInteractorTest.kt @@ -46,6 +46,7 @@ import org.mockito.Mockito.clearInvocations import org.mockito.Mockito.never import org.mockito.Mockito.verify import org.mockito.junit.MockitoJUnit +import org.mockito.kotlin.isNull @ExperimentalCoroutinesApi @SmallTest @@ -96,7 +97,7 @@ class KeyguardKeyEventInteractorTest : SysuiTestCase() { .sendVolumeKeyEvent( eq(actionDownVolumeDownKeyEvent), eq(AudioManager.USE_DEFAULT_STREAM_TYPE), - eq(true) + eq(true), ) assertThat(underTest.dispatchKeyEvent(actionDownVolumeUpKeyEvent)).isTrue() @@ -104,7 +105,7 @@ class KeyguardKeyEventInteractorTest : SysuiTestCase() { .sendVolumeKeyEvent( eq(actionDownVolumeUpKeyEvent), eq(AudioManager.USE_DEFAULT_STREAM_TYPE), - eq(true) + eq(true), ) } @@ -117,7 +118,7 @@ class KeyguardKeyEventInteractorTest : SysuiTestCase() { .sendVolumeKeyEvent( eq(actionDownVolumeDownKeyEvent), eq(AudioManager.USE_DEFAULT_STREAM_TYPE), - eq(true) + eq(true), ) assertThat(underTest.dispatchKeyEvent(actionDownVolumeUpKeyEvent)).isFalse() @@ -125,7 +126,7 @@ class KeyguardKeyEventInteractorTest : SysuiTestCase() { .sendVolumeKeyEvent( eq(actionDownVolumeUpKeyEvent), eq(AudioManager.USE_DEFAULT_STREAM_TYPE), - eq(true) + eq(true), ) } @@ -135,7 +136,9 @@ class KeyguardKeyEventInteractorTest : SysuiTestCase() { whenever(statusBarStateController.state).thenReturn(StatusBarState.SHADE_LOCKED) whenever(statusBarKeyguardViewManager.shouldDismissOnMenuPressed()).thenReturn(true) - verifyActionUpCollapsesTheShade(KeyEvent.KEYCODE_MENU) + val actionUpMenuKeyEvent = KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MENU) + assertThat(underTest.dispatchKeyEvent(actionUpMenuKeyEvent)).isTrue() + verify(statusBarKeyguardViewManager).dismissWithAction(any(), isNull(), eq(false)) } @Test diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModelTest.kt index 6398a5af52f1..c1bd37811787 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModelTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerWindowViewModelTest.kt @@ -19,26 +19,22 @@ package com.android.systemui.keyguard.ui.viewmodel import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.keyguard.keyguardUpdateMonitor import com.android.systemui.Flags import com.android.systemui.SysuiTestCase import com.android.systemui.biometrics.data.repository.fakeFingerprintPropertyRepository -import com.android.systemui.bouncer.data.repository.fakeKeyguardBouncerRepository import com.android.systemui.coroutines.collectLastValue -import com.android.systemui.keyguard.data.repository.fakeBiometricSettingsRepository import com.android.systemui.keyguard.data.repository.fakeKeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.kosmos.testScope -import com.android.systemui.statusbar.policy.keyguardStateController import com.android.systemui.testKosmos import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runTest import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.whenever +import org.junit.runners.JUnit4 @ExperimentalCoroutinesApi @RunWith(AndroidJUnit4::class) @@ -54,35 +50,13 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { fun alternateBouncerTransition_alternateBouncerWindowRequiredTrue() = testScope.runTest { mSetFlagsRule.enableFlags(Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR) - val canShowAlternateBouncer by collectLastValue(underTest.canShowAlternateBouncer) val alternateBouncerWindowRequired by collectLastValue(underTest.alternateBouncerWindowRequired) - givenCanShowAlternateBouncer() fingerprintPropertyRepository.supportsUdfps() transitionRepository.sendTransitionSteps( listOf( - stepToLockscreen(0f, TransitionState.STARTED), - stepToLockscreen(.4f), - stepToLockscreen(1f, TransitionState.FINISHED), - ), - testScope, - ) - assertThat(canShowAlternateBouncer).isTrue() - transitionRepository.sendTransitionSteps( - listOf( - stepFromLockscreenToAlternateBouncer(0f, TransitionState.STARTED), - stepFromLockscreenToAlternateBouncer(.4f), - stepFromLockscreenToAlternateBouncer(.6f), - ), - testScope, - ) - assertThat(canShowAlternateBouncer).isTrue() - assertThat(alternateBouncerWindowRequired).isTrue() - - transitionRepository.sendTransitionSteps( - listOf( stepFromAlternateBouncer(0f, TransitionState.STARTED), - stepFromAlternateBouncer(.2f), + stepFromAlternateBouncer(.4f), stepFromAlternateBouncer(.6f), ), testScope, @@ -104,21 +78,13 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { mSetFlagsRule.disableFlags(Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR) val alternateBouncerWindowRequired by collectLastValue(underTest.alternateBouncerWindowRequired) - givenCanShowAlternateBouncer() fingerprintPropertyRepository.supportsUdfps() transitionRepository.sendTransitionSteps( listOf( - stepToLockscreen(0f, TransitionState.STARTED), - stepToLockscreen(.4f), - stepToLockscreen(1f, TransitionState.FINISHED), - ), - testScope, - ) - transitionRepository.sendTransitionSteps( - listOf( - stepFromLockscreenToAlternateBouncer(0f, TransitionState.STARTED), - stepFromLockscreenToAlternateBouncer(.4f), - stepFromLockscreenToAlternateBouncer(.6f), + stepFromAlternateBouncer(0f, TransitionState.STARTED), + stepFromAlternateBouncer(.4f), + stepFromAlternateBouncer(.6f), + stepFromAlternateBouncer(1f), ), testScope, ) @@ -131,23 +97,13 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { mSetFlagsRule.enableFlags(Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR) val alternateBouncerWindowRequired by collectLastValue(underTest.alternateBouncerWindowRequired) - givenCanShowAlternateBouncer() fingerprintPropertyRepository.supportsUdfps() transitionRepository.sendTransitionSteps( listOf( - stepFromLockscreenToDozing(0f, TransitionState.STARTED), - stepFromLockscreenToDozing(.4f), - stepFromLockscreenToDozing(.6f), - stepFromLockscreenToDozing(1f, TransitionState.FINISHED), - ), - testScope, - ) - assertThat(alternateBouncerWindowRequired).isFalse() - transitionRepository.sendTransitionSteps( - listOf( stepFromDozingToLockscreen(0f, TransitionState.STARTED), stepFromDozingToLockscreen(.4f), stepFromDozingToLockscreen(.6f), + stepFromDozingToLockscreen(1f), ), testScope, ) @@ -160,39 +116,19 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { mSetFlagsRule.enableFlags(Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR) val alternateBouncerWindowRequired by collectLastValue(underTest.alternateBouncerWindowRequired) - givenCanShowAlternateBouncer() fingerprintPropertyRepository.supportsRearFps() transitionRepository.sendTransitionSteps( listOf( - stepToLockscreen(0f, TransitionState.STARTED), - stepToLockscreen(.4f), - stepToLockscreen(1f, TransitionState.FINISHED), - ), - testScope, - ) - transitionRepository.sendTransitionSteps( - listOf( - stepFromLockscreenToAlternateBouncer(0f, TransitionState.STARTED), - stepFromLockscreenToAlternateBouncer(.4f), - stepFromLockscreenToAlternateBouncer(.6f), + stepFromAlternateBouncer(0f, TransitionState.STARTED), + stepFromAlternateBouncer(.4f), + stepFromAlternateBouncer(.6f), + stepFromAlternateBouncer(1f), ), testScope, ) assertThat(alternateBouncerWindowRequired).isFalse() } - private fun stepToLockscreen( - value: Float, - state: TransitionState = TransitionState.RUNNING - ): TransitionStep { - return step( - from = KeyguardState.GONE, - to = KeyguardState.LOCKSCREEN, - value = value, - transitionState = state, - ) - } - private fun stepFromAlternateBouncer( value: Float, state: TransitionState = TransitionState.RUNNING @@ -205,18 +141,6 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { ) } - private fun stepFromLockscreenToAlternateBouncer( - value: Float, - state: TransitionState = TransitionState.RUNNING - ): TransitionStep { - return step( - from = KeyguardState.LOCKSCREEN, - to = KeyguardState.ALTERNATE_BOUNCER, - value = value, - transitionState = state, - ) - } - private fun stepFromDozingToLockscreen( value: Float, state: TransitionState = TransitionState.RUNNING @@ -229,18 +153,6 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { ) } - private fun stepFromLockscreenToDozing( - value: Float, - state: TransitionState = TransitionState.RUNNING - ): TransitionStep { - return step( - from = KeyguardState.LOCKSCREEN, - to = KeyguardState.DOZING, - value = value, - transitionState = state, - ) - } - private fun step( from: KeyguardState, to: KeyguardState, @@ -255,16 +167,4 @@ class AlternateBouncerWindowViewModelTest : SysuiTestCase() { ownerName = "AlternateBouncerViewModelTest" ) } - - /** - * Given the alternate bouncer parameters are set so that the alternate bouncer can show, aside - * from the fingerprint modality. - */ - private fun givenCanShowAlternateBouncer() { - kosmos.fakeKeyguardBouncerRepository.setPrimaryShow(false) - kosmos.fakeBiometricSettingsRepository.setIsFingerprintAuthEnrolledAndEnabled(true) - kosmos.fakeBiometricSettingsRepository.setIsFingerprintAuthCurrentlyAllowed(true) - whenever(kosmos.keyguardUpdateMonitor.isFingerprintLockedOut).thenReturn(false) - whenever(kosmos.keyguardStateController.isUnlocked).thenReturn(false) - } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt index 6f5c56eb9148..148a2e56f2a5 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt @@ -24,6 +24,7 @@ import android.testing.AndroidTestingRunner import androidx.test.filters.SmallTest import com.android.internal.logging.UiEventLogger import com.android.systemui.SysuiTestCase +import com.android.systemui.screenshot.ui.viewmodel.PreviewAction import com.google.common.truth.Truth.assertThat import java.util.UUID import kotlin.test.Test @@ -60,9 +61,9 @@ class DefaultScreenshotActionsProviderTest : SysuiTestCase() { fun previewActionAccessed_beforeScreenshotCompleted_doesNothing() { actionsProvider = createActionsProvider() - val previewActionCaptor = argumentCaptor<() -> Unit>() + val previewActionCaptor = argumentCaptor<PreviewAction>() verify(actionsCallback).providePreviewAction(previewActionCaptor.capture()) - previewActionCaptor.firstValue.invoke() + previewActionCaptor.firstValue.onClick.invoke() verifyNoMoreInteractions(actionExecutor) } @@ -102,14 +103,14 @@ class DefaultScreenshotActionsProviderTest : SysuiTestCase() { fun actionAccessed_whilePending_launchesMostRecentAction() = runTest { actionsProvider = createActionsProvider() - val previewActionCaptor = argumentCaptor<() -> Unit>() + val previewActionCaptor = argumentCaptor<PreviewAction>() verify(actionsCallback).providePreviewAction(previewActionCaptor.capture()) val actionButtonCaptor = argumentCaptor<() -> Unit>() verify(actionsCallback, times(2)) .provideActionButton(any(), any(), actionButtonCaptor.capture()) actionButtonCaptor.firstValue.invoke() - previewActionCaptor.firstValue.invoke() + previewActionCaptor.firstValue.onClick.invoke() actionButtonCaptor.secondValue.invoke() actionsProvider.setCompletedScreenshot(validResult) diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ScreenshotActionsControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ScreenshotActionsControllerTest.kt index 2a3c31aee6e7..a27c449fb86f 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ScreenshotActionsControllerTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ScreenshotActionsControllerTest.kt @@ -19,6 +19,7 @@ package com.android.systemui.screenshot import android.testing.AndroidTestingRunner import androidx.test.filters.SmallTest import com.android.systemui.SysuiTestCase +import com.android.systemui.screenshot.ui.viewmodel.PreviewAction import com.android.systemui.screenshot.ui.viewmodel.ScreenshotViewModel import java.util.UUID import kotlin.test.Test @@ -35,7 +36,7 @@ class ScreenshotActionsControllerTest : SysuiTestCase() { private val screenshotData = mock<ScreenshotData>() private val actionExecutor = mock<ActionExecutor>() private val viewModel = mock<ScreenshotViewModel>() - private val onClick = mock<() -> Unit>() + private val previewAction = PreviewAction("description", onClick = {}) private lateinit var actionsController: ScreenshotActionsController private lateinit var fakeActionsProvider1: FakeActionsProvider @@ -43,6 +44,7 @@ class ScreenshotActionsControllerTest : SysuiTestCase() { private val actionsProviderFactory = object : ScreenshotActionsProvider.Factory { var isFirstCall = true + override fun create( requestId: UUID, request: ScreenshotData, @@ -69,16 +71,16 @@ class ScreenshotActionsControllerTest : SysuiTestCase() { @Test fun setPreview_onCurrentScreenshot_updatesViewModel() { actionsController.setCurrentScreenshot(screenshotData) - fakeActionsProvider1.callPreview(onClick) + fakeActionsProvider1.callPreview(previewAction) - verify(viewModel).setPreviewAction(onClick) + verify(viewModel).setPreviewAction(previewAction) } @Test fun setPreview_onNonCurrentScreenshot_doesNotUpdateViewModel() { actionsController.setCurrentScreenshot(screenshotData) actionsController.setCurrentScreenshot(screenshotData) - fakeActionsProvider1.callPreview(onClick) + fakeActionsProvider1.callPreview(previewAction) verify(viewModel, never()).setPreviewAction(any()) } @@ -87,8 +89,8 @@ class ScreenshotActionsControllerTest : SysuiTestCase() { private val actionsCallback: ScreenshotActionsController.ActionsCallback ) : ScreenshotActionsProvider { - fun callPreview(onClick: () -> Unit) { - actionsCallback.providePreviewAction(onClick) + fun callPreview(previewAction: PreviewAction) { + actionsCallback.providePreviewAction(previewAction) } override fun onScrollChipReady(onClick: Runnable) {} diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/TakeScreenshotExecutorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenshot/TakeScreenshotExecutorTest.kt index bf7d909380df..aca63f4a9e02 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/TakeScreenshotExecutorTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/TakeScreenshotExecutorTest.kt @@ -22,7 +22,6 @@ import com.android.systemui.util.mockito.any import com.android.systemui.util.mockito.eq import com.android.systemui.util.mockito.kotlinArgumentCaptor as ArgumentCaptor import com.android.systemui.util.mockito.mock -import com.android.systemui.util.mockito.nullable import com.android.systemui.util.mockito.whenever import com.google.common.truth.Truth.assertThat import java.lang.IllegalStateException @@ -43,8 +42,7 @@ import org.mockito.Mockito.verifyNoMoreInteractions @SmallTest class TakeScreenshotExecutorTest : SysuiTestCase() { - private val controller0 = mock<ScreenshotController>() - private val controller1 = mock<ScreenshotController>() + private val controller = mock<ScreenshotController>() private val notificationsController0 = mock<ScreenshotNotificationsController>() private val notificationsController1 = mock<ScreenshotNotificationsController>() private val controllerFactory = mock<ScreenshotController.Factory>() @@ -56,6 +54,7 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { private val topComponent = ComponentName(mContext, TakeScreenshotExecutorTest::class.java) private val testScope = TestScope(UnconfinedTestDispatcher()) private val eventLogger = UiEventLoggerFake() + private val headlessHandler = mock<HeadlessScreenshotHandler>() private val screenshotExecutor = TakeScreenshotExecutorImpl( @@ -64,14 +63,13 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { testScope, requestProcessor, eventLogger, - notificationControllerFactory + notificationControllerFactory, + headlessHandler, ) @Before fun setUp() { - whenever(controllerFactory.create(any(), any())).thenAnswer { - if (it.getArgument<Display>(0).displayId == 0) controller0 else controller1 - } + whenever(controllerFactory.create(any(), any())).thenReturn(controller) whenever(notificationControllerFactory.create(eq(0))).thenReturn(notificationsController0) whenever(notificationControllerFactory.create(eq(1))).thenReturn(notificationsController1) } @@ -86,14 +84,14 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) verify(controllerFactory).create(eq(internalDisplay), any()) - verify(controllerFactory).create(eq(externalDisplay), any()) + verify(controllerFactory, never()).create(eq(externalDisplay), any()) val capturer = ArgumentCaptor<ScreenshotData>() - verify(controller0).handleScreenshot(capturer.capture(), any(), any()) + verify(controller).handleScreenshot(capturer.capture(), any(), any()) assertThat(capturer.value.displayId).isEqualTo(0) // OnSaved callback should be different. - verify(controller1).handleScreenshot(capturer.capture(), any(), any()) + verify(headlessHandler).handleScreenshot(capturer.capture(), any(), any()) assertThat(capturer.value.displayId).isEqualTo(1) assertThat(eventLogger.numLogs()).isEqualTo(2) @@ -125,10 +123,10 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { val capturer = ArgumentCaptor<ScreenshotData>() - verify(controller0).handleScreenshot(capturer.capture(), any(), any()) + verify(controller).handleScreenshot(capturer.capture(), any(), any()) assertThat(capturer.value.displayId).isEqualTo(0) // OnSaved callback should be different. - verify(controller1, never()).handleScreenshot(any(), any(), any()) + verify(headlessHandler, never()).handleScreenshot(any(), any(), any()) assertThat(eventLogger.numLogs()).isEqualTo(1) assertThat(eventLogger.get(0).eventId) @@ -146,13 +144,14 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) verifyNoMoreInteractions(controllerFactory) + verify(headlessHandler, never()).handleScreenshot(any(), any(), any()) screenshotExecutor.onDestroy() } @Test fun executeScreenshots_allowedTypes_allCaptured() = testScope.runTest { - whenever(controllerFactory.create(any(), any())).thenReturn(controller0) + whenever(controllerFactory.create(any(), any())).thenReturn(controller) setDisplays( display(TYPE_INTERNAL, id = 0), @@ -163,7 +162,8 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { val onSaved = { _: Uri? -> } screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) - verify(controller0, times(4)).handleScreenshot(any(), any(), any()) + verify(controller, times(1)).handleScreenshot(any(), any(), any()) + verify(headlessHandler, times(3)).handleScreenshot(any(), any(), any()) screenshotExecutor.onDestroy() } @@ -177,8 +177,8 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { val capturer0 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() val capturer1 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() - verify(controller0).handleScreenshot(any(), any(), capturer0.capture()) - verify(controller1).handleScreenshot(any(), any(), capturer1.capture()) + verify(controller).handleScreenshot(any(), any(), capturer0.capture()) + verify(headlessHandler).handleScreenshot(any(), any(), capturer1.capture()) verify(callback, never()).onFinish() @@ -202,8 +202,8 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { val capturer0 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() val capturer1 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() - verify(controller0).handleScreenshot(any(), any(), capturer0.capture()) - verify(controller1).handleScreenshot(any(), nullable(), capturer1.capture()) + verify(controller).handleScreenshot(any(), any(), capturer0.capture()) + verify(headlessHandler).handleScreenshot(any(), any(), capturer1.capture()) verify(callback, never()).onFinish() @@ -229,8 +229,8 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { val capturer0 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() val capturer1 = ArgumentCaptor<TakeScreenshotService.RequestCallback>() - verify(controller0).handleScreenshot(any(), any(), capturer0.capture()) - verify(controller1).handleScreenshot(any(), any(), capturer1.capture()) + verify(controller).handleScreenshot(any(), any(), capturer0.capture()) + verify(headlessHandler).handleScreenshot(any(), any(), capturer1.capture()) verify(callback, never()).onFinish() @@ -254,50 +254,45 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) screenshotExecutor.onDestroy() - verify(controller0).onDestroy() - verify(controller1).onDestroy() + verify(controller).onDestroy() } @Test - fun removeWindows_propagatedToControllers() = + fun removeWindows_propagatedToController() = testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) val onSaved = { _: Uri? -> } screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) screenshotExecutor.removeWindows() - verify(controller0).removeWindow() - verify(controller1).removeWindow() + verify(controller).removeWindow() screenshotExecutor.onDestroy() } @Test - fun onCloseSystemDialogsReceived_propagatedToControllers() = + fun onCloseSystemDialogsReceived_propagatedToController() = testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) val onSaved = { _: Uri? -> } screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) screenshotExecutor.onCloseSystemDialogsReceived() - verify(controller0).requestDismissal(any()) - verify(controller1).requestDismissal(any()) + verify(controller).requestDismissal(any()) screenshotExecutor.onDestroy() } @Test - fun onCloseSystemDialogsReceived_someControllerHavePendingTransitions() = + fun onCloseSystemDialogsReceived_controllerHasPendingTransitions() = testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) - whenever(controller0.isPendingSharedTransition).thenReturn(true) - whenever(controller1.isPendingSharedTransition).thenReturn(false) + whenever(controller.isPendingSharedTransition).thenReturn(true) val onSaved = { _: Uri? -> } screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) screenshotExecutor.onCloseSystemDialogsReceived() - verify(controller0, never()).requestDismissal(any()) - verify(controller1).requestDismissal(any()) + verify(controller, never()).requestDismissal(any()) screenshotExecutor.onDestroy() } @@ -317,7 +312,7 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { .isEqualTo(ScreenshotData.fromRequest(screenshotRequest)) val capturer = ArgumentCaptor<ScreenshotData>() - verify(controller0).handleScreenshot(capturer.capture(), any(), any()) + verify(controller).handleScreenshot(capturer.capture(), any(), any()) assertThat(capturer.value).isEqualTo(toBeReturnedByProcessor) screenshotExecutor.onDestroy() @@ -388,9 +383,9 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) val onSaved = { _: Uri? -> } - whenever(controller0.handleScreenshot(any(), any(), any())) + whenever(controller.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) - whenever(controller1.handleScreenshot(any(), any(), any())) + whenever(headlessHandler.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) @@ -408,9 +403,9 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) val onSaved = { _: Uri? -> } - whenever(controller0.handleScreenshot(any(), any(), any())) + whenever(controller.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) - whenever(controller1.handleScreenshot(any(), any(), any())) + whenever(headlessHandler.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) @@ -428,9 +423,9 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { testScope.runTest { setDisplays(display(TYPE_INTERNAL, id = 0), display(TYPE_EXTERNAL, id = 1)) val onSaved = { _: Uri? -> } - whenever(controller0.handleScreenshot(any(), any(), any())) + whenever(controller.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) - whenever(controller1.handleScreenshot(any(), any(), any())) + whenever(headlessHandler.handleScreenshot(any(), any(), any())) .thenThrow(IllegalStateException::class.java) screenshotExecutor.executeScreenshots(createScreenshotRequest(), onSaved, callback) @@ -449,7 +444,7 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { assertThat(it).isNull() onSavedCallCount += 1 } - whenever(controller0.handleScreenshot(any(), any(), any())).thenAnswer { + whenever(controller.handleScreenshot(any(), any(), any())).thenAnswer { (it.getArgument(1) as Consumer<Uri?>).accept(null) } @@ -478,6 +473,7 @@ class TakeScreenshotExecutorTest : SysuiTestCase() { var processed: ScreenshotData? = null var toReturn: ScreenshotData? = null var shouldThrowException = false + override suspend fun process(screenshot: ScreenshotData): ScreenshotData { if (shouldThrowException) throw RequestProcessorException("") processed = screenshot diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/policy/PolicyRequestProcessorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenshot/policy/PolicyRequestProcessorTest.kt index 4945ace3b88c..c5708287a967 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/policy/PolicyRequestProcessorTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/policy/PolicyRequestProcessorTest.kt @@ -22,6 +22,7 @@ import android.os.UserHandle import android.view.Display.DEFAULT_DISPLAY import android.view.WindowManager.ScreenshotSource.SCREENSHOT_KEY_CHORD import android.view.WindowManager.TAKE_SCREENSHOT_FULLSCREEN +import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.systemui.screenshot.ImageCapture import com.android.systemui.screenshot.ScreenshotData import com.android.systemui.screenshot.data.model.DisplayContentScenarios.ActivityNames.FILES @@ -37,20 +38,23 @@ import org.junit.Test class PolicyRequestProcessorTest { - val imageCapture = object : ImageCapture { - override fun captureDisplay(displayId: Int, crop: Rect?) = null - override suspend fun captureTask(taskId: Int) = null - } + val imageCapture = + object : ImageCapture { + override fun captureDisplay(displayId: Int, crop: Rect?) = null + + override suspend fun captureTask(taskId: Int) = null + } /** Tests behavior when no policies are applied */ @Test fun testProcess_defaultOwner_whenNoPolicyApplied() { val fullScreenWork = DisplayContentRepository { - singleFullScreen(TaskSpec(taskId = 1001, name = FILES, userId = WORK)) + singleFullScreen(TaskSpec(taskId = TASK_ID, name = FILES, userId = WORK)) } val request = - ScreenshotData(TAKE_SCREENSHOT_FULLSCREEN, + ScreenshotData( + TAKE_SCREENSHOT_FULLSCREEN, SCREENSHOT_KEY_CHORD, null, topComponent = null, @@ -58,24 +62,34 @@ class PolicyRequestProcessorTest { taskId = -1, insets = Insets.NONE, bitmap = null, - displayId = DEFAULT_DISPLAY) + displayId = DEFAULT_DISPLAY + ) /* Create a policy request processor with no capture policies */ val requestProcessor = - PolicyRequestProcessor(Dispatchers.Unconfined, + PolicyRequestProcessor( + Dispatchers.Unconfined, imageCapture, policies = emptyList(), defaultOwner = UserHandle.of(PERSONAL), defaultComponent = ComponentName("default", "Component"), - displayTasks = fullScreenWork) + displayTasks = fullScreenWork + ) val result = runBlocking { requestProcessor.process(request) } - assertWithMessage( - "With no policy, the screenshot should be assigned to the default user" - ).that(result.userHandle).isEqualTo(UserHandle.of(PERSONAL)) + assertWithMessage("With no policy, the screenshot should be assigned to the default user") + .that(result.userHandle) + .isEqualTo(UserHandle.of(PERSONAL)) + + assertWithMessage("The topComponent of the screenshot") + .that(result.topComponent) + .isEqualTo(ComponentName.unflattenFromString(FILES)) + + assertWithMessage("Task ID").that(result.taskId).isEqualTo(TASK_ID) + } - assertWithMessage("The topComponent of the screenshot").that(result.topComponent) - .isEqualTo(ComponentName.unflattenFromString(FILES)) + companion object { + const val TASK_ID = 1001 } }
\ No newline at end of file diff --git a/packages/SystemUI/tests/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepositoryTest.kt b/packages/SystemUI/tests/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepositoryTest.kt index 0dd988d424b9..40f7b7fb9968 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepositoryTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/shared/notifications/data/repository/NotificationSettingsRepositoryTest.kt @@ -56,7 +56,7 @@ class NotificationSettingsRepositoryTest : SysuiTestCase() { @Test fun testGetIsShowNotificationsOnLockscreenEnabled() = testScope.runTest { - val showNotifs by collectLastValue(underTest.isShowNotificationsOnLockScreenEnabled) + val showNotifs by collectLastValue(underTest.isShowNotificationsOnLockScreenEnabled()) secureSettingsRepository.setInt( name = Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, @@ -74,7 +74,7 @@ class NotificationSettingsRepositoryTest : SysuiTestCase() { @Test fun testSetIsShowNotificationsOnLockscreenEnabled() = testScope.runTest { - val showNotifs by collectLastValue(underTest.isShowNotificationsOnLockScreenEnabled) + val showNotifs by collectLastValue(underTest.isShowNotificationsOnLockScreenEnabled()) underTest.setShowNotificationsOnLockscreenEnabled(true) assertThat(showNotifs).isEqualTo(true) diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/OWNERS b/packages/SystemUI/tests/src/com/android/systemui/statusbar/OWNERS new file mode 100644 index 000000000000..48a20ddf8ca3 --- /dev/null +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/OWNERS @@ -0,0 +1,4 @@ +set noparent + +include /packages/SystemUI/src/com/android/systemui/statusbar/OWNERS +include /packages/SystemUI/TEST_OWNERS diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerBaseTest.java index 98315d0ca3c9..83dbfa0682ad 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerBaseTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerBaseTest.java @@ -95,6 +95,7 @@ import org.mockito.MockitoSession; import java.io.PrintWriter; import java.io.StringWriter; import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class NetworkControllerBaseTest extends SysuiTestCase { @@ -332,10 +333,15 @@ public class NetworkControllerBaseTest extends SysuiTestCase { } public void setConnectivityViaCallbackInNetworkControllerForVcn( - int networkType, boolean validated, boolean isConnected, VcnTransportInfo info) { + int networkType, + boolean validated, + boolean isConnected, + VcnTransportInfo info, + Network underlyingNetwork) { final NetworkCapabilities.Builder builder = new NetworkCapabilities.Builder(mNetCapabilities); - builder.setTransportInfo(info); + builder.setTransportInfo(info) + .setUnderlyingNetworks(Collections.singletonList(underlyingNetwork)); setConnectivityCommon(builder, networkType, validated, isConnected); mDefaultCallbackInNetworkController.onCapabilitiesChanged( mock(Network.class), builder.build()); @@ -385,10 +391,15 @@ public class NetworkControllerBaseTest extends SysuiTestCase { } public void setConnectivityViaCallbackInWifiTrackerForVcn( - int networkType, boolean validated, boolean isConnected, VcnTransportInfo info) { + int networkType, + boolean validated, + boolean isConnected, + VcnTransportInfo info, + Network underlyingNetwork) { final NetworkCapabilities.Builder builder = new NetworkCapabilities.Builder(mNetCapabilities); - builder.setTransportInfo(info); + builder.setTransportInfo(info) + .setUnderlyingNetworks(Collections.singletonList(underlyingNetwork)); setConnectivityCommon(builder, networkType, validated, isConnected); if (networkType == NetworkCapabilities.TRANSPORT_CELLULAR) { if (isConnected) { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerWifiTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerWifiTest.java index 6c80a97625a7..7a579bacc86d 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerWifiTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/connectivity/NetworkControllerWifiTest.java @@ -18,6 +18,7 @@ package com.android.systemui.statusbar.connectivity; import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED; import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR; +import static android.net.NetworkCapabilities.TRANSPORT_WIFI; import static junit.framework.Assert.assertEquals; @@ -57,7 +58,7 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { private static final int MIN_RSSI = -100; private static final int MAX_RSSI = -55; private WifiInfo mWifiInfo = mock(WifiInfo.class); - private VcnTransportInfo mVcnTransportInfo = mock(VcnTransportInfo.class); + private VcnTransportInfo mVcnTransportInfo = new VcnTransportInfo.Builder().build(); @Before public void setUp() throws Exception { @@ -250,6 +251,17 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { assertEquals(testSsid, mNetworkController.mWifiSignalController.mCurrentState.ssid); } + private Network newWifiNetwork(WifiInfo wifiInfo) { + final Network network = mock(Network.class); + final NetworkCapabilities wifiCaps = + new NetworkCapabilities.Builder() + .addTransportType(TRANSPORT_WIFI) + .setTransportInfo(wifiInfo) + .build(); + when(mMockCm.getNetworkCapabilities(network)).thenReturn(wifiCaps); + return network; + } + @Test public void testVcnWithUnderlyingWifi() { String testSsid = "Test VCN SSID"; @@ -266,11 +278,19 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { setWifiLevelForVcn(testLevel); setConnectivityViaCallbackInNetworkControllerForVcn( - NetworkCapabilities.TRANSPORT_CELLULAR, true, true, mVcnTransportInfo); + NetworkCapabilities.TRANSPORT_CELLULAR, + true, + true, + mVcnTransportInfo, + newWifiNetwork(mWifiInfo)); verifyLastMobileDataIndicatorsForVcn(true, testLevel, TelephonyIcons.ICON_CWF, true); setConnectivityViaCallbackInNetworkControllerForVcn( - NetworkCapabilities.TRANSPORT_CELLULAR, false, true, mVcnTransportInfo); + NetworkCapabilities.TRANSPORT_CELLULAR, + false, + true, + mVcnTransportInfo, + newWifiNetwork(mWifiInfo)); verifyLastMobileDataIndicatorsForVcn(true, testLevel, TelephonyIcons.ICON_CWF, false); } } @@ -391,13 +411,15 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { } protected void setWifiLevelForVcn(int level) { - when(mVcnTransportInfo.getWifiInfo()).thenReturn(mWifiInfo); - when(mVcnTransportInfo.makeCopy(anyLong())).thenReturn(mVcnTransportInfo); when(mWifiInfo.getRssi()).thenReturn(calculateRssiForLevel(level)); when(mWifiInfo.isCarrierMerged()).thenReturn(true); when(mWifiInfo.getSubscriptionId()).thenReturn(1); setConnectivityViaCallbackInWifiTrackerForVcn( - NetworkCapabilities.TRANSPORT_CELLULAR, false, true, mVcnTransportInfo); + NetworkCapabilities.TRANSPORT_CELLULAR, + false, + true, + mVcnTransportInfo, + newWifiNetwork(mWifiInfo)); } private int calculateRssiForLevel(int level) { @@ -409,13 +431,15 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { } protected void setWifiStateForVcn(boolean connected, String ssid) { - when(mVcnTransportInfo.getWifiInfo()).thenReturn(mWifiInfo); - when(mVcnTransportInfo.makeCopy(anyLong())).thenReturn(mVcnTransportInfo); when(mWifiInfo.getSSID()).thenReturn(ssid); when(mWifiInfo.isCarrierMerged()).thenReturn(true); when(mWifiInfo.getSubscriptionId()).thenReturn(1); setConnectivityViaCallbackInWifiTrackerForVcn( - NetworkCapabilities.TRANSPORT_CELLULAR, false, connected, mVcnTransportInfo); + NetworkCapabilities.TRANSPORT_CELLULAR, + false, + connected, + mVcnTransportInfo, + newWifiNetwork(mWifiInfo)); } protected void verifyLastQsDataDirection(boolean in, boolean out) { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/OWNERS b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/OWNERS index 7f5384d1dbf3..1da700770d4e 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/OWNERS +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/OWNERS @@ -1,3 +1,4 @@ set noparent -include /packages/SystemUI/src/com/android/systemui/statusbar/notification/OWNERS
\ No newline at end of file +include /packages/SystemUI/src/com/android/systemui/statusbar/notification/OWNERS +include /packages/SystemUI/TEST_OWNERS diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java index 12f3ef3cf553..f80fdc8ca458 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java @@ -428,8 +428,8 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase { ArgumentCaptor<FooterView> captor = ArgumentCaptor.forClass(FooterView.class); verify(mStackScroller).setFooterView(captor.capture()); - assertNotNull(captor.getValue().findViewById(R.id.manage_text).hasOnClickListeners()); - assertNotNull(captor.getValue().findViewById(R.id.dismiss_text).hasOnClickListeners()); + assertNotNull(captor.getValue().findViewById(R.id.manage_text)); + assertNotNull(captor.getValue().findViewById(R.id.dismiss_text)); } @Test diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionsRepositoryTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionsRepositoryTest.kt index 76982ae12516..00b6316ea89d 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionsRepositoryTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionsRepositoryTest.kt @@ -140,6 +140,7 @@ class MobileConnectionsRepositoryTest : SysuiTestCase() { private val wifiLogBuffer = LogBuffer("wifi", maxSize = 100, logcatEchoTracker = mock()) private val wifiPickerTrackerCallback = argumentCaptor<WifiPickerTracker.WifiPickerTrackerCallback>() + private val vcnTransportInfo = VcnTransportInfo.Builder().build() private val testDispatcher = StandardTestDispatcher() private val testScope = TestScope(testDispatcher) @@ -987,6 +988,18 @@ class MobileConnectionsRepositoryTest : SysuiTestCase() { assertThat(latest).isTrue() } + private fun newWifiNetwork(wifiInfo: WifiInfo): Network { + val network = mock<Network>() + val capabilities = + mock<NetworkCapabilities>().also { + whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) + whenever(it.transportInfo).thenReturn(wifiInfo) + } + whenever(connectivityManager.getNetworkCapabilities(network)).thenReturn(capabilities) + + return network + } + /** Regression test for b/272586234. */ @Test fun hasCarrierMergedConnection_carrierMergedViaWifiWithVcnTransport_isTrue() = @@ -996,10 +1009,12 @@ class MobileConnectionsRepositoryTest : SysuiTestCase() { whenever(this.isCarrierMerged).thenReturn(true) whenever(this.isPrimary).thenReturn(true) } + val underlyingWifi = newWifiNetwork(carrierMergedInfo) val caps = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } val latest by collectLastValue(underTest.hasCarrierMergedConnection) @@ -1018,10 +1033,12 @@ class MobileConnectionsRepositoryTest : SysuiTestCase() { whenever(this.isCarrierMerged).thenReturn(true) whenever(this.isPrimary).thenReturn(true) } + val underlyingWifi = newWifiNetwork(carrierMergedInfo) val caps = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } val latest by collectLastValue(underTest.hasCarrierMergedConnection) @@ -1078,10 +1095,15 @@ class MobileConnectionsRepositoryTest : SysuiTestCase() { whenever(this.isCarrierMerged).thenReturn(true) whenever(this.isPrimary).thenReturn(true) } + + // The Wifi network that is under the VCN network + val physicalWifiNetwork = newWifiNetwork(carrierMergedInfo) + val underlyingCapabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(physicalWifiNetwork)) } whenever(connectivityManager.getNetworkCapabilities(underlyingCarrierMergedNetwork)) .thenReturn(underlyingCapabilities) diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImplTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImplTest.kt index 890a2e40c94c..f7ff568332ca 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImplTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImplTest.kt @@ -32,6 +32,7 @@ import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_NOT_CO import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_OFF import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_UNAVAILABLE import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_UNKNOWN +import android.telephony.satellite.SatelliteManager.SATELLITE_RESULT_ERROR import android.telephony.satellite.SatelliteManager.SatelliteException import android.telephony.satellite.SatelliteModemStateCallback import android.telephony.satellite.SatelliteProvisionStateCallback @@ -62,6 +63,7 @@ import kotlinx.coroutines.test.runTest import org.junit.Before import org.mockito.Mock import org.mockito.Mockito +import org.mockito.Mockito.atLeastOnce import org.mockito.Mockito.doAnswer import org.mockito.Mockito.never import org.mockito.Mockito.times @@ -354,13 +356,142 @@ class DeviceBasedSatelliteRepositoryImplTest : SysuiTestCase() { } @Test - fun satelliteProvisioned_supported_tracksCallback() = + fun satelliteProvisioned_returnsException_defaultsToFalse() = + testScope.runTest { + // GIVEN satellite is supported on device + doAnswer { + val callback: OutcomeReceiver<Boolean, SatelliteException> = + it.getArgument(1) as OutcomeReceiver<Boolean, SatelliteException> + callback.onResult(true) + } + .whenever(satelliteManager) + .requestIsSupported(any(), any()) + + // GIVEN satellite returns an error when asked if provisioned + doAnswer { + val receiver = it.arguments[1] as OutcomeReceiver<Boolean, SatelliteException> + receiver.onError(SatelliteException(SATELLITE_RESULT_ERROR)) + null + } + .whenever(satelliteManager) + .requestIsProvisioned( + any(), + any<OutcomeReceiver<Boolean, SatelliteException>>() + ) + + // GIVEN we've been up long enough to start querying + systemClock.setUptimeMillis(Process.getStartUptimeMillis() + MIN_UPTIME) + + underTest = + DeviceBasedSatelliteRepositoryImpl( + Optional.of(satelliteManager), + telephonyManager, + dispatcher, + testScope.backgroundScope, + logBuffer = FakeLogBuffer.Factory.create(), + verboseLogBuffer = FakeLogBuffer.Factory.create(), + systemClock, + ) + + // WHEN we try to check for provisioned status + val provisioned by collectLastValue(underTest.isSatelliteProvisioned) + + // THEN well, first we don't throw... + // AND THEN we assume that it's not provisioned + assertThat(provisioned).isFalse() + } + + @Test + fun satelliteProvisioned_throwsWhenQuerying_defaultsToFalse() = + testScope.runTest { + // GIVEN satellite is supported on device + doAnswer { + val callback: OutcomeReceiver<Boolean, SatelliteException> = + it.getArgument(1) as OutcomeReceiver<Boolean, SatelliteException> + callback.onResult(true) + } + .whenever(satelliteManager) + .requestIsSupported(any(), any()) + + // GIVEN satellite throws when asked if provisioned + whenever(satelliteManager.requestIsProvisioned(any(), any())) + .thenThrow(SecurityException()) + + // GIVEN we've been up long enough to start querying + systemClock.setUptimeMillis(Process.getStartUptimeMillis() + MIN_UPTIME) + + underTest = + DeviceBasedSatelliteRepositoryImpl( + Optional.of(satelliteManager), + telephonyManager, + dispatcher, + testScope.backgroundScope, + logBuffer = FakeLogBuffer.Factory.create(), + verboseLogBuffer = FakeLogBuffer.Factory.create(), + systemClock, + ) + + // WHEN we try to check for provisioned status + val provisioned by collectLastValue(underTest.isSatelliteProvisioned) + + // THEN well, first we don't throw... + // AND THEN we assume that it's not provisioned + assertThat(provisioned).isFalse() + } + + @Test + fun satelliteProvisioned_supported_provisioned_queriesInitialStateBeforeCallbacks() = + testScope.runTest { + // GIVEN satellite is supported, and provisioned + setUpRepo( + uptime = MIN_UPTIME, + satMan = satelliteManager, + satelliteSupported = true, + initialSatelliteIsProvisioned = true, + ) + + val provisioned by collectLastValue(underTest.isSatelliteProvisioned) + + runCurrent() + + // THEN the current state is requested + verify(satelliteManager, atLeastOnce()).requestIsProvisioned(any(), any()) + + // AND the state is correct + assertThat(provisioned).isTrue() + } + + @Test + fun satelliteProvisioned_supported_notProvisioned_queriesInitialStateBeforeCallbacks() = + testScope.runTest { + // GIVEN satellite is supported, and provisioned + setUpRepo( + uptime = MIN_UPTIME, + satMan = satelliteManager, + satelliteSupported = true, + initialSatelliteIsProvisioned = false, + ) + + val provisioned by collectLastValue(underTest.isSatelliteProvisioned) + + runCurrent() + + // THEN the current state is requested + verify(satelliteManager, atLeastOnce()).requestIsProvisioned(any(), any()) + + // AND the state is correct + assertThat(provisioned).isFalse() + } + + @Test + fun satelliteProvisioned_supported_notInitiallyProvisioned_tracksCallback() = testScope.runTest { // GIVEN satellite is not supported setUpRepo( uptime = MIN_UPTIME, satMan = satelliteManager, satelliteSupported = true, + initialSatelliteIsProvisioned = false, ) val provisioned by collectLastValue(underTest.isSatelliteProvisioned) @@ -416,6 +547,8 @@ class DeviceBasedSatelliteRepositoryImplTest : SysuiTestCase() { // THEN listeners are re-registered verify(satelliteManager, times(2)).registerForProvisionStateChanged(any(), any()) + // AND the state is queried again + verify(satelliteManager, times(2)).requestIsProvisioned(any(), any()) } @Test @@ -632,6 +765,7 @@ class DeviceBasedSatelliteRepositoryImplTest : SysuiTestCase() { uptime: Long = MIN_UPTIME, satMan: SatelliteManager? = satelliteManager, satelliteSupported: Boolean = true, + initialSatelliteIsProvisioned: Boolean = true, ) { doAnswer { val callback: OutcomeReceiver<Boolean, SatelliteException> = @@ -641,6 +775,14 @@ class DeviceBasedSatelliteRepositoryImplTest : SysuiTestCase() { .whenever(satelliteManager) .requestIsSupported(any(), any()) + doAnswer { + val callback: OutcomeReceiver<Boolean, SatelliteException> = + it.getArgument(1) as OutcomeReceiver<Boolean, SatelliteException> + callback.onResult(initialSatelliteIsProvisioned) + } + .whenever(satelliteManager) + .requestIsProvisioned(any(), any()) + systemClock.setUptimeMillis(Process.getStartUptimeMillis() + uptime) underTest = diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepositoryImplTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepositoryImplTest.kt index fa4e91b68a5e..479a05b09fd4 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepositoryImplTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepositoryImplTest.kt @@ -22,6 +22,7 @@ import android.net.NetworkCapabilities import android.net.NetworkCapabilities.TRANSPORT_CELLULAR import android.net.NetworkCapabilities.TRANSPORT_ETHERNET import android.net.NetworkCapabilities.TRANSPORT_WIFI +import android.net.TelephonyNetworkSpecifier import android.net.vcn.VcnTransportInfo import android.net.wifi.WifiInfo import android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID @@ -68,6 +69,8 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { private lateinit var testScope: TestScope @Mock private lateinit var tunerService: TunerService + private val vcnTransportInfo = VcnTransportInfo.Builder().build() + @Before fun setUp() { MockitoAnnotations.initMocks(this) @@ -376,6 +379,30 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { job.cancel() } + private fun newWifiNetwork(wifiInfo: WifiInfo): Network { + val network = mock<Network>() + val capabilities = + mock<NetworkCapabilities>().also { + whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) + whenever(it.transportInfo).thenReturn(wifiInfo) + } + whenever(connectivityManager.getNetworkCapabilities(network)).thenReturn(capabilities) + + return network + } + + private fun newCellNetwork(subId: Int): Network { + val network = mock<Network>() + val capabilities = + mock<NetworkCapabilities>().also { + whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) + whenever(it.networkSpecifier).thenReturn(TelephonyNetworkSpecifier(subId)) + } + whenever(connectivityManager.getNetworkCapabilities(network)).thenReturn(capabilities) + + return network + } + @Test fun defaultConnections_carrierMergedViaWifiWithVcnTransport_wifiAndCarrierMergedDefault() = testScope.runTest { @@ -384,10 +411,12 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val carrierMergedInfo = mock<WifiInfo>().apply { whenever(this.isCarrierMerged).thenReturn(true) } + val underlyingWifi = newWifiNetwork(carrierMergedInfo) val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(false) whenever(it.hasTransport(TRANSPORT_ETHERNET)).thenReturn(false) } @@ -409,10 +438,12 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val carrierMergedInfo = mock<WifiInfo>().apply { whenever(this.isCarrierMerged).thenReturn(true) } + val underlyingWifi = newWifiNetwork(carrierMergedInfo) val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) whenever(it.hasTransport(TRANSPORT_ETHERNET)).thenReturn(false) whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(false) } @@ -572,10 +603,12 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val underlyingCarrierMergedNetwork = mock<Network>() val carrierMergedInfo = mock<WifiInfo>().apply { whenever(this.isCarrierMerged).thenReturn(true) } + val underlyingWifi = newWifiNetwork(carrierMergedInfo) val underlyingCapabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } whenever(connectivityManager.getNetworkCapabilities(underlyingCarrierMergedNetwork)) .thenReturn(underlyingCapabilities) @@ -664,7 +697,7 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { @Test fun vcnSubId_tracksVcnTransportInfo() = testScope.runTest { - val vcnInfo = VcnTransportInfo(SUB_1_ID) + val underlyingCell = newCellNetwork(SUB_1_ID) var latest: Int? = null val job = underTest.vcnSubId.onEach { latest = it }.launchIn(this) @@ -672,7 +705,8 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(vcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingCell)) } getDefaultNetworkCallback().onCapabilitiesChanged(NETWORK, capabilities) @@ -684,7 +718,7 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { @Test fun vcnSubId_filersOutInvalid() = testScope.runTest { - val vcnInfo = VcnTransportInfo(INVALID_SUBSCRIPTION_ID) + val underlyingCell = newCellNetwork(INVALID_SUBSCRIPTION_ID) var latest: Int? = null val job = underTest.vcnSubId.onEach { latest = it }.launchIn(this) @@ -692,7 +726,8 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(vcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingCell)) } getDefaultNetworkCallback().onCapabilitiesChanged(NETWORK, capabilities) @@ -729,11 +764,12 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val job = underTest.vcnSubId.onEach { latest = it }.launchIn(this) val wifiInfo = mock<WifiInfo>() - val vcnInfo = VcnTransportInfo(wifiInfo) + val underlyingWifi = newWifiNetwork(wifiInfo) val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(vcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } getDefaultNetworkCallback().onCapabilitiesChanged(NETWORK, capabilities) @@ -749,14 +785,15 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val job = underTest.vcnSubId.onEach { latest = it }.launchIn(this) val wifiInfo = mock<WifiInfo>() - val wifiVcnInfo = VcnTransportInfo(wifiInfo) - val sub1VcnInfo = VcnTransportInfo(SUB_1_ID) - val sub2VcnInfo = VcnTransportInfo(SUB_2_ID) + val underlyingWifi = newWifiNetwork(wifiInfo) + val underlyingCell1 = newCellNetwork(SUB_1_ID) + val underlyingCell2 = newCellNetwork(SUB_2_ID) val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(wifiVcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } // WIFI VCN info @@ -766,14 +803,16 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { // Cellular VCN info with subId 1 whenever(capabilities.hasTransport(eq(TRANSPORT_CELLULAR))).thenReturn(true) - whenever(capabilities.transportInfo).thenReturn(sub1VcnInfo) + whenever(capabilities.transportInfo).thenReturn(vcnTransportInfo) + whenever(capabilities.underlyingNetworks).thenReturn(listOf(underlyingCell1)) getDefaultNetworkCallback().onCapabilitiesChanged(NETWORK, capabilities) assertThat(latest).isEqualTo(SUB_1_ID) // Cellular VCN info with subId 2 - whenever(capabilities.transportInfo).thenReturn(sub2VcnInfo) + whenever(capabilities.transportInfo).thenReturn(vcnTransportInfo) + whenever(capabilities.underlyingNetworks).thenReturn(listOf(underlyingCell2)) getDefaultNetworkCallback().onCapabilitiesChanged(NETWORK, capabilities) @@ -806,11 +845,12 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { @Test fun getMainOrUnderlyingWifiInfo_vcnWithWifi_hasInfo() { val wifiInfo = mock<WifiInfo>() - val vcnInfo = VcnTransportInfo(wifiInfo) + val underlyingWifi = newWifiNetwork(wifiInfo) val capabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(vcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(underlyingWifi)) } val result = capabilities.getMainOrUnderlyingWifiInfo(connectivityManager) @@ -889,11 +929,15 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { fun getMainOrUnderlyingWifiInfo_cellular_underlyingVcnWithWifi_hasInfo() { val wifiInfo = mock<WifiInfo>() val underlyingNetwork = mock<Network>() - val underlyingVcnInfo = VcnTransportInfo(wifiInfo) + + // The Wifi network that is under the VCN network + val physicalWifiNetwork = newWifiNetwork(wifiInfo) + val underlyingWifiCapabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(underlyingVcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(physicalWifiNetwork)) } whenever(connectivityManager.getNetworkCapabilities(underlyingNetwork)) .thenReturn(underlyingWifiCapabilities) @@ -915,11 +959,15 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { @Test fun getMainOrUnderlyingWifiInfo_notCellular_underlyingVcnWithWifi_noInfo() { val underlyingNetwork = mock<Network>() - val underlyingVcnInfo = VcnTransportInfo(mock<WifiInfo>()) + + // The Wifi network that is under the VCN network + val physicalWifiNetwork = newWifiNetwork(mock<WifiInfo>()) + val underlyingWifiCapabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_WIFI)).thenReturn(true) - whenever(it.transportInfo).thenReturn(underlyingVcnInfo) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(physicalWifiNetwork)) } whenever(connectivityManager.getNetworkCapabilities(underlyingNetwork)) .thenReturn(underlyingWifiCapabilities) @@ -945,10 +993,15 @@ class ConnectivityRepositoryImplTest : SysuiTestCase() { val underlyingCarrierMergedNetwork = mock<Network>() val carrierMergedInfo = mock<WifiInfo>().apply { whenever(this.isCarrierMerged).thenReturn(true) } + + // The Wifi network that is under the VCN network + val physicalWifiNetwork = newWifiNetwork(carrierMergedInfo) + val underlyingCapabilities = mock<NetworkCapabilities>().also { whenever(it.hasTransport(TRANSPORT_CELLULAR)).thenReturn(true) - whenever(it.transportInfo).thenReturn(VcnTransportInfo(carrierMergedInfo)) + whenever(it.transportInfo).thenReturn(vcnTransportInfo) + whenever(it.underlyingNetworks).thenReturn(listOf(physicalWifiNetwork)) } whenever(connectivityManager.getNetworkCapabilities(underlyingCarrierMergedNetwork)) .thenReturn(underlyingCapabilities) diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/TestMocksModule.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/TestMocksModule.kt index 9dae44dc8053..7c53639a85a6 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/TestMocksModule.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/TestMocksModule.kt @@ -18,6 +18,7 @@ package com.android.systemui import android.app.ActivityManager import android.app.admin.DevicePolicyManager import android.app.trust.TrustManager +import android.hardware.fingerprint.FingerprintManager import android.os.UserManager import android.service.notification.NotificationListenerService import android.util.DisplayMetrics @@ -94,6 +95,7 @@ data class TestMocksModule( @get:Provides val deviceProvisionedController: DeviceProvisionedController = mock(), @get:Provides val dozeParameters: DozeParameters = mock(), @get:Provides val dumpManager: DumpManager = mock(), + @get:Provides val fingerprintManager: FingerprintManager = mock(), @get:Provides val headsUpManager: HeadsUpManager = mock(), @get:Provides val guestResumeSessionReceiver: GuestResumeSessionReceiver = mock(), @get:Provides val keyguardBypassController: KeyguardBypassController = mock(), diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorKosmos.kt index cbfc7686a896..ae592b968f8b 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/domain/interactor/UdfpsOverlayInteractorKosmos.kt @@ -17,17 +17,20 @@ package com.android.systemui.biometrics.domain.interactor import android.content.applicationContext +import android.hardware.fingerprint.FingerprintManager import com.android.systemui.biometrics.authController import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos.Fixture import com.android.systemui.kosmos.applicationCoroutineScope import com.android.systemui.user.domain.interactor.selectedUserInteractor +import com.android.systemui.util.mockito.mock val Kosmos.udfpsOverlayInteractor by Fixture { UdfpsOverlayInteractor( context = applicationContext, authController = authController, selectedUserInteractor = selectedUserInteractor, + fingerprintManager = mock<FingerprintManager>(), scope = applicationCoroutineScope, ) } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/data/repository/FakeAudioRepository.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/data/repository/FakeAudioRepository.kt index 21d59f09711c..135cb14a3497 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/data/repository/FakeAudioRepository.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/data/repository/FakeAudioRepository.kt @@ -22,7 +22,6 @@ import com.android.settingslib.volume.data.repository.AudioRepository import com.android.settingslib.volume.shared.model.AudioStream import com.android.settingslib.volume.shared.model.AudioStreamModel import com.android.settingslib.volume.shared.model.RingerMode -import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.asStateFlow @@ -42,6 +41,7 @@ class FakeAudioRepository : AudioRepository { private val models: MutableMap<AudioStream, MutableStateFlow<AudioStreamModel>> = mutableMapOf() private val lastAudibleVolumes: MutableMap<AudioStream, Int> = mutableMapOf() + private val deviceCategories: MutableMap<String, Int> = mutableMapOf() private fun getAudioStreamModelState( audioStream: AudioStream @@ -60,7 +60,7 @@ class FakeAudioRepository : AudioRepository { ) } - override fun getAudioStream(audioStream: AudioStream): Flow<AudioStreamModel> = + override fun getAudioStream(audioStream: AudioStream): StateFlow<AudioStreamModel> = getAudioStreamModelState(audioStream).asStateFlow() override suspend fun setVolume(audioStream: AudioStream, volume: Int) { @@ -103,4 +103,12 @@ class FakeAudioRepository : AudioRepository { override suspend fun setRingerMode(audioStream: AudioStream, mode: RingerMode) { mutableRingerMode.value = mode } + + fun setBluetoothAudioDeviceCategory(bluetoothAddress: String, category: Int) { + deviceCategories[bluetoothAddress] = category + } + + override suspend fun getBluetoothAudioDeviceCategory(bluetoothAddress: String): Int { + return deviceCategories[bluetoothAddress] ?: AudioManager.AUDIO_DEVICE_CATEGORY_UNKNOWN + } } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/mediaoutput/domain/interactor/TestMediaDevicesFactory.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/mediaoutput/domain/interactor/TestMediaDevicesFactory.kt index 141f2426f365..83adc799b471 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/mediaoutput/domain/interactor/TestMediaDevicesFactory.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/mediaoutput/domain/interactor/TestMediaDevicesFactory.kt @@ -18,9 +18,11 @@ package com.android.systemui.volume.panel.component.mediaoutput.domain.interacto import android.annotation.SuppressLint import android.bluetooth.BluetoothDevice +import android.bluetooth.BluetoothProfile import android.graphics.drawable.Drawable import android.graphics.drawable.TestStubDrawable import com.android.settingslib.bluetooth.CachedBluetoothDevice +import com.android.settingslib.bluetooth.LeAudioProfile import com.android.settingslib.media.BluetoothMediaDevice import com.android.settingslib.media.MediaDevice import com.android.settingslib.media.PhoneMediaDevice @@ -59,11 +61,17 @@ object TestMediaDevicesFactory { whenever(name).thenReturn(deviceName) whenever(address).thenReturn(deviceAddress) } + val leAudioProfile = + mock<LeAudioProfile> { + whenever(profileId).thenReturn(BluetoothProfile.LE_AUDIO) + whenever(isEnabled(bluetoothDevice)).thenReturn(true) + } val cachedBluetoothDevice: CachedBluetoothDevice = mock { whenever(isHearingAidDevice).thenReturn(true) whenever(address).thenReturn(deviceAddress) whenever(device).thenReturn(bluetoothDevice) whenever(name).thenReturn(deviceName) + whenever(profiles).thenReturn(listOf(leAudioProfile)) } return mock<BluetoothMediaDevice> { whenever(name).thenReturn(deviceName) diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorKosmos.kt index 95a7b9bb185b..6a46d56ba55a 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/panel/component/spatial/domain/interactor/SpatialAudioComponentInteractorKosmos.kt @@ -17,8 +17,10 @@ package com.android.systemui.volume.panel.component.spatial.domain.interactor import com.android.systemui.kosmos.Kosmos +import com.android.systemui.kosmos.backgroundCoroutineContext import com.android.systemui.kosmos.testScope import com.android.systemui.media.spatializerInteractor +import com.android.systemui.volume.data.repository.audioRepository import com.android.systemui.volume.domain.interactor.audioOutputInteractor val Kosmos.spatialAudioComponentInteractor by @@ -26,6 +28,8 @@ val Kosmos.spatialAudioComponentInteractor by SpatialAudioComponentInteractor( audioOutputInteractor, spatializerInteractor, + audioRepository, + backgroundCoroutineContext, testScope.backgroundScope, ) } diff --git a/packages/SystemUI/unfold/src/com/android/systemui/unfold/updates/RotationChangeProvider.kt b/packages/SystemUI/unfold/src/com/android/systemui/unfold/updates/RotationChangeProvider.kt index fec6ff17a608..0458f535c1eb 100644 --- a/packages/SystemUI/unfold/src/com/android/systemui/unfold/updates/RotationChangeProvider.kt +++ b/packages/SystemUI/unfold/src/com/android/systemui/unfold/updates/RotationChangeProvider.kt @@ -28,6 +28,9 @@ import dagger.assisted.Assisted import dagger.assisted.AssistedFactory import dagger.assisted.AssistedInject import java.util.concurrent.CopyOnWriteArrayList +import java.util.concurrent.atomic.AtomicInteger + +private const val INVALID_ROTATION = -1 /** * Allows to subscribe to rotation changes. Updates are provided for the display associated to @@ -45,7 +48,7 @@ constructor( private val listeners = CopyOnWriteArrayList<RotationListener>() private val displayListener = RotationDisplayListener() - private var lastRotation: Int? = null + private val lastRotation = AtomicInteger(INVALID_ROTATION) override fun addCallback(listener: RotationListener) { bgHandler.post { @@ -61,7 +64,7 @@ constructor( listeners -= listener if (listeners.isEmpty()) { unsubscribeToRotation() - lastRotation = null + lastRotation.set(INVALID_ROTATION) } } } @@ -100,9 +103,8 @@ constructor( if (displayId == display.displayId) { val currentRotation = display.rotation - if (lastRotation == null || lastRotation != currentRotation) { + if (lastRotation.compareAndSet(lastRotation.get(), currentRotation)) { listeners.forEach { it.onRotationChanged(currentRotation) } - lastRotation = currentRotation } } } finally { diff --git a/packages/Vcn/OWNERS b/packages/Vcn/OWNERS new file mode 100644 index 000000000000..ff2146e76b47 --- /dev/null +++ b/packages/Vcn/OWNERS @@ -0,0 +1,6 @@ +evitayan@google.com +nharold@google.com +benedictwong@google.com #{LAST_RESORT_SUGGESTION} +yangji@google.com #{LAST_RESORT_SUGGESTION} + +include platform/packages/modules/common:/MODULES_OWNERS
\ No newline at end of file diff --git a/packages/Vcn/TEST_MAPPING b/packages/Vcn/TEST_MAPPING new file mode 100644 index 000000000000..bde88fe9b717 --- /dev/null +++ b/packages/Vcn/TEST_MAPPING @@ -0,0 +1,10 @@ +{ + "postsubmit": [ + { + "name": "FrameworksVcnTests" + }, + { + "name": "CtsVcnTestCases" + } + ] +}
\ No newline at end of file diff --git a/packages/Vcn/framework-b/Android.bp b/packages/Vcn/framework-b/Android.bp new file mode 100644 index 000000000000..be64bb1ae404 --- /dev/null +++ b/packages/Vcn/framework-b/Android.bp @@ -0,0 +1,44 @@ +// +// Copyright (C) 2024 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 { + default_team: "trendy_team_enigma", + default_applicable_licenses: ["Android-Apache-2.0"], +} + +java_defaults { + name: "framework-connectivity-b-defaults", + sdk_version: "module_current", + min_sdk_version: "35", // TODO: Make it Android 25Q2 when this is included in mainline + defaults: ["framework-module-defaults"], // This is a boot jar + + srcs: [ + "src/**/*.java", + ], +} + +java_sdk_library { + name: "framework-connectivity-b", + defaults: [ + "framework-connectivity-b-defaults", + ], + + permitted_packages: [ + "android.net.vcn", + ], + + // TODO: b/375213246 Expose this library to Tethering module +} diff --git a/packages/Vcn/framework-b/api/current.txt b/packages/Vcn/framework-b/api/current.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/api/module-lib-current.txt b/packages/Vcn/framework-b/api/module-lib-current.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/module-lib-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/api/module-lib-removed.txt b/packages/Vcn/framework-b/api/module-lib-removed.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/module-lib-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/api/removed.txt b/packages/Vcn/framework-b/api/removed.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/api/system-current.txt b/packages/Vcn/framework-b/api/system-current.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/system-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/api/system-removed.txt b/packages/Vcn/framework-b/api/system-removed.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/packages/Vcn/framework-b/api/system-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/packages/Vcn/framework-b/src/android/net/vcn/Placeholder.java b/packages/Vcn/framework-b/src/android/net/vcn/Placeholder.java new file mode 100644 index 000000000000..fb5e15386cc7 --- /dev/null +++ b/packages/Vcn/framework-b/src/android/net/vcn/Placeholder.java @@ -0,0 +1,25 @@ +/* + * Copyright (C) 2024 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.net.vcn; + +/** + * Placeholder class so new framework-vcn isn't empty + * + * @hide + */ +// This class will be removed once source code is migrated +public class Placeholder {} diff --git a/packages/Vcn/service-b/Android.bp b/packages/Vcn/service-b/Android.bp new file mode 100644 index 000000000000..a462297c07af --- /dev/null +++ b/packages/Vcn/service-b/Android.bp @@ -0,0 +1,36 @@ +// +// Copyright (C) 2024 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 { + default_team: "trendy_team_enigma", + default_applicable_licenses: ["Android-Apache-2.0"], +} + +java_library { + name: "service-connectivity-b-pre-jarjar", + sdk_version: "system_server_current", + min_sdk_version: "35", // TODO: Make it Android 25Q2 when this is included in mainline + defaults: ["framework-system-server-module-defaults"], // This is a system server jar + + srcs: [ + "src/**/*.java", + ], + + // TODO: b/375213246 Expose this library to Tethering module + visibility: [ + "//frameworks/base/services", + ], +} diff --git a/packages/Vcn/service-b/src/com/android/server/vcn/Placeholder.java b/packages/Vcn/service-b/src/com/android/server/vcn/Placeholder.java new file mode 100644 index 000000000000..e79914531c38 --- /dev/null +++ b/packages/Vcn/service-b/src/com/android/server/vcn/Placeholder.java @@ -0,0 +1,25 @@ +/* + * Copyright (C) 2024 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.server.vcn; + +/** + * Placeholder class so new service-vcn isn't empty + * + * @hide + */ +// This class will be removed once source code is migrated +public class Placeholder {} diff --git a/packages/VpnDialogs/res/values-ar/strings.xml b/packages/VpnDialogs/res/values-ar/strings.xml index 9307a744c37f..4a0929f72e71 100644 --- a/packages/VpnDialogs/res/values-ar/strings.xml +++ b/packages/VpnDialogs/res/values-ar/strings.xml @@ -17,8 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="prompt" msgid="3183836924226407828">"طلب الاتصال"</string> - <string name="warning" msgid="809658604548412033">"يريد <xliff:g id="APP">%s</xliff:g> إعداد الاتصال بالشبكة الافتراضية الخاصة التي تتيح له مراقبة حركة المرور على الشبكة. فلا توافق إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر في الجزء العلوي من الشاشة عندما تكون الشبكة الافتراضية الخاصة نشطة."</string> - <string name="warning" product="tv" msgid="5188957997628124947">"يريد تطبيق <xliff:g id="APP">%s</xliff:g> إعداد اتصال شبكة افتراضية خاصة (VPN) يتيح له مراقبة حركة بيانات الشبكة. لا تقبل السماح بذلك إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر على شاشتك عندما تكون الشبكة الافتراضية الخاصة نشطة."</string> + <string name="warning" msgid="809658604548412033">"يريد <xliff:g id="APP">%s</xliff:g> إعداد الاتصال بشبكة VPN التي تتيح له مراقبة حركة المرور على الشبكة. فلا توافق إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر في الجزء العلوي من الشاشة عندما تكون شبكة VPN نشطة."</string> + <string name="warning" product="tv" msgid="5188957997628124947">"يريد تطبيق <xliff:g id="APP">%s</xliff:g> إعداد اتصال شبكة VPN يتيح له مراقبة حركة بيانات الشبكة. لا تقبل السماح بذلك إلا إذا كنت تثق في المصدر. <br /> <br /> <img src=vpn_icon /> يظهر على شاشتك عندما تكون شبكة VPN نشطة."</string> <string name="legacy_title" msgid="192936250066580964">"VPN متصلة"</string> <string name="session" msgid="6470628549473641030">"الجلسة"</string> <string name="duration" msgid="3584782459928719435">"المدة:"</string> @@ -27,9 +27,9 @@ <string name="data_value_format" msgid="2192466557826897580">"<xliff:g id="NUMBER_0">%1$s</xliff:g> بايت / <xliff:g id="NUMBER_1">%2$s</xliff:g> من الحزم"</string> <string name="always_on_disconnected_title" msgid="1906740176262776166">"يتعذّر الاتصال بشبكة VPN التي يتم تشغيلها دائمًا"</string> <string name="always_on_disconnected_message" msgid="555634519845992917">"تم إعداد شبكة <xliff:g id="VPN_APP_0">%1$s</xliff:g> بحيث تبقى متصلة بالإنترنت دائمًا، ومع ذلك يتعذّر اتصالها بالإنترنت الآن. سيستخدم هاتفك شبكة عامة إلى أن يتمكّن من إعادة الاتصال بشبكة <xliff:g id="VPN_APP_1">%1$s</xliff:g>."</string> - <string name="always_on_disconnected_message_lockdown" msgid="4232225539869452120">"تم إعداد شبكة <xliff:g id="VPN_APP">%1$s</xliff:g> بحيث تبقى متصلة بالإنترنت دائمًا، ومع ذلك يتعذّر اتصالها بالإنترنت الآن. لن تتوفر لديك إمكانية اتصال إلى أن تتمكّن الشبكة الافتراضية الخاصة (VPN) من إعادة الاتصال."</string> + <string name="always_on_disconnected_message_lockdown" msgid="4232225539869452120">"تم إعداد شبكة <xliff:g id="VPN_APP">%1$s</xliff:g> بحيث تبقى متصلة بالإنترنت دائمًا، ومع ذلك يتعذّر اتصالها بالإنترنت الآن. لن تتوفر لديك إمكانية اتصال إلى أن تتمكّن شبكة VPN من إعادة الاتصال."</string> <string name="always_on_disconnected_message_separator" msgid="3310614409322581371">" "</string> - <string name="always_on_disconnected_message_settings_link" msgid="6172280302829992412">"تغيير إعدادات الشبكة الافتراضية الخاصة (VPN)"</string> + <string name="always_on_disconnected_message_settings_link" msgid="6172280302829992412">"تغيير إعدادات شبكة VPN"</string> <string name="configure" msgid="4905518375574791375">"تهيئة"</string> <string name="disconnect" msgid="971412338304200056">"قطع الاتصال"</string> <string name="open_app" msgid="3717639178595958667">"فتح التطبيق"</string> diff --git a/packages/VpnDialogs/res/values-be/strings.xml b/packages/VpnDialogs/res/values-be/strings.xml index 54908f6d8ce7..58c6349db5ee 100644 --- a/packages/VpnDialogs/res/values-be/strings.xml +++ b/packages/VpnDialogs/res/values-be/strings.xml @@ -18,7 +18,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="prompt" msgid="3183836924226407828">"Запыт на падлучэнне"</string> <string name="warning" msgid="809658604548412033">"<xliff:g id="APP">%s</xliff:g> спрабуе наладзіць падлучэнне VPN, якое дазваляе сачыць за сеткавым трафікам. Прымайце толькі тады, калі вы давяраеце гэтай крыніцы. Калі VPN актыўны, у верхняй частцы экрана адлюстроўваецца <br /> <br /> <img src=vpn_icon />."</string> - <string name="warning" product="tv" msgid="5188957997628124947">"Праграма \"<xliff:g id="APP">%s</xliff:g>\" запытвае дазвол на падключэнне да сеткі VPN, каб адсочваць сеткавы трафік. Дайце дазвол, толькі калі вы давяраеце крыніцы. Калі адбудзецца падключэнне да VPN, на экране з\'явіцца значок <br /> <br /> <img src=vpn_icon />."</string> + <string name="warning" product="tv" msgid="5188957997628124947">"Праграма \"<xliff:g id="APP">%s</xliff:g>\" запытвае дазвол на падключэнне да сеткі VPN, каб адсочваць сеткавы трафік. Дайце дазвол, толькі калі вы давяраеце крыніцы. Калі адбудзецца падключэнне да VPN, на экране з’явіцца значок <br /> <br /> <img src=vpn_icon />."</string> <string name="legacy_title" msgid="192936250066580964">"VPN падключаны"</string> <string name="session" msgid="6470628549473641030">"Сессія"</string> <string name="duration" msgid="3584782459928719435">"Працягласць:"</string> diff --git a/packages/VpnDialogs/res/values-fr-rCA/strings.xml b/packages/VpnDialogs/res/values-fr-rCA/strings.xml index ad450b4c5f39..3118ffe6299d 100644 --- a/packages/VpnDialogs/res/values-fr-rCA/strings.xml +++ b/packages/VpnDialogs/res/values-fr-rCA/strings.xml @@ -24,7 +24,7 @@ <string name="duration" msgid="3584782459928719435">"Durée :"</string> <string name="data_transmitted" msgid="7988167672982199061">"Date d\'envoi :"</string> <string name="data_received" msgid="4062776929376067820">"Reçu le :"</string> - <string name="data_value_format" msgid="2192466557826897580">"<xliff:g id="NUMBER_0">%1$s</xliff:g> octets / <xliff:g id="NUMBER_1">%2$s</xliff:g> paquets"</string> + <string name="data_value_format" msgid="2192466557826897580">"<xliff:g id="NUMBER_0">%1$s</xliff:g> octets/<xliff:g id="NUMBER_1">%2$s</xliff:g> paquets"</string> <string name="always_on_disconnected_title" msgid="1906740176262776166">"Impossible de se connecter au RPV permanent"</string> <string name="always_on_disconnected_message" msgid="555634519845992917">"<xliff:g id="VPN_APP_0">%1$s</xliff:g> est configuré pour rester connecté en permanence, mais n\'arrive pas à se connecter en ce moment. Votre téléphone utilisera un réseau public jusqu\'à ce qu\'il puisse se reconnecter à <xliff:g id="VPN_APP_1">%1$s</xliff:g>."</string> <string name="always_on_disconnected_message_lockdown" msgid="4232225539869452120">"<xliff:g id="VPN_APP">%1$s</xliff:g> est configuré pour rester connecté en permanence, mais n\'arrive pas à se connecter en ce moment. Vous n\'aurez pas de connexion jusqu\'à ce que le RPV arrive à se reconnecter."</string> @@ -32,7 +32,7 @@ <string name="always_on_disconnected_message_settings_link" msgid="6172280302829992412">"Modifier les paramètres RPV"</string> <string name="configure" msgid="4905518375574791375">"Configurer"</string> <string name="disconnect" msgid="971412338304200056">"Déconnecter"</string> - <string name="open_app" msgid="3717639178595958667">"Ouvrir l\'application"</string> + <string name="open_app" msgid="3717639178595958667">"Ouvrir l\'appli"</string> <string name="dismiss" msgid="6192859333764711227">"Ignorer"</string> <string name="sanitized_vpn_label_with_ellipsis" msgid="7014327474633422235">"<xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_0">%1$s</xliff:g>… ( <xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_1">%2$s</xliff:g>)"</string> <string name="sanitized_vpn_label" msgid="1877415015009794766">"<xliff:g id="SANITIZED_VPN_LABEL_0">%1$s</xliff:g> ( <xliff:g id="SANITIZED_VPN_LABEL_1">%2$s</xliff:g>)"</string> diff --git a/packages/VpnDialogs/res/values-in/strings.xml b/packages/VpnDialogs/res/values-in/strings.xml index 342f403ef09f..c67e5db1601c 100644 --- a/packages/VpnDialogs/res/values-in/strings.xml +++ b/packages/VpnDialogs/res/values-in/strings.xml @@ -31,7 +31,7 @@ <string name="always_on_disconnected_message_separator" msgid="3310614409322581371">" "</string> <string name="always_on_disconnected_message_settings_link" msgid="6172280302829992412">"Ubah setelan VPN"</string> <string name="configure" msgid="4905518375574791375">"Konfigurasikan"</string> - <string name="disconnect" msgid="971412338304200056">"Putuskan koneksi"</string> + <string name="disconnect" msgid="971412338304200056">"Berhenti hubungkan"</string> <string name="open_app" msgid="3717639178595958667">"Buka aplikasi"</string> <string name="dismiss" msgid="6192859333764711227">"Tutup"</string> <string name="sanitized_vpn_label_with_ellipsis" msgid="7014327474633422235">"<xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_0">%1$s</xliff:g>… ( <xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_1">%2$s</xliff:g>)"</string> diff --git a/packages/VpnDialogs/res/values-or/strings.xml b/packages/VpnDialogs/res/values-or/strings.xml index 2f5a3dd06626..83a82aedb883 100644 --- a/packages/VpnDialogs/res/values-or/strings.xml +++ b/packages/VpnDialogs/res/values-or/strings.xml @@ -31,7 +31,7 @@ <string name="always_on_disconnected_message_separator" msgid="3310614409322581371">" "</string> <string name="always_on_disconnected_message_settings_link" msgid="6172280302829992412">"VPN ସେଟିଂସ ବଦଳାନ୍ତୁ"</string> <string name="configure" msgid="4905518375574791375">"କନଫିଗର୍ କରନ୍ତୁ"</string> - <string name="disconnect" msgid="971412338304200056">"ବିଚ୍ଛିନ୍ନ କରନ୍ତୁ"</string> + <string name="disconnect" msgid="971412338304200056">"ଡିସକନେକ୍ଟ କରନ୍ତୁ"</string> <string name="open_app" msgid="3717639178595958667">"ଆପ୍ ଖୋଲନ୍ତୁ"</string> <string name="dismiss" msgid="6192859333764711227">"ଖାରଜ କରନ୍ତୁ"</string> <string name="sanitized_vpn_label_with_ellipsis" msgid="7014327474633422235">"<xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_0">%1$s</xliff:g>… ( <xliff:g id="SANITIZED_VPN_LABEL_WITH_ELLIPSIS_1">%2$s</xliff:g>)"</string> diff --git a/packages/VpnDialogs/tests/Android.bp b/packages/VpnDialogs/tests/Android.bp index 68639bd1c4fe..409282efb714 100644 --- a/packages/VpnDialogs/tests/Android.bp +++ b/packages/VpnDialogs/tests/Android.bp @@ -22,8 +22,8 @@ android_test { // (e.g. VpnManager#prepareVpn()). certificate: "platform", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/packages/WAPPushManager/tests/Android.bp b/packages/WAPPushManager/tests/Android.bp index 0a179383fab6..973100248a2b 100644 --- a/packages/WAPPushManager/tests/Android.bp +++ b/packages/WAPPushManager/tests/Android.bp @@ -26,9 +26,9 @@ package { android_test { name: "WAPPushManagerTests", libs: [ - "android.test.runner", + "android.test.runner.stubs.system", "telephony-common", - "android.test.base", + "android.test.base.stubs.system", ], static_libs: ["junit"], // Include all test java files. diff --git a/packages/WallpaperBackup/Android.bp b/packages/WallpaperBackup/Android.bp index 18f783146c72..b8e0d427f3d8 100644 --- a/packages/WallpaperBackup/Android.bp +++ b/packages/WallpaperBackup/Android.bp @@ -42,8 +42,8 @@ android_test { "test/src/**/*.java", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/packages/overlays/Android.bp b/packages/overlays/Android.bp index 5075f6322d1b..44abb9ffb34f 100644 --- a/packages/overlays/Android.bp +++ b/packages/overlays/Android.bp @@ -21,6 +21,7 @@ package { phony { name: "frameworks-base-overlays", + product_specific: true, required: [ "DisplayCutoutEmulationCornerOverlay", "DisplayCutoutEmulationDoubleOverlay", diff --git a/packages/overlays/AvoidAppsInCutoutOverlay/res/values-fr-rCA/strings.xml b/packages/overlays/AvoidAppsInCutoutOverlay/res/values-fr-rCA/strings.xml index ea0a27b069da..4f922a57d4ad 100644 --- a/packages/overlays/AvoidAppsInCutoutOverlay/res/values-fr-rCA/strings.xml +++ b/packages/overlays/AvoidAppsInCutoutOverlay/res/values-fr-rCA/strings.xml @@ -17,5 +17,5 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="display_cutout_emulation_overlay" msgid="3814493834951357513">"Rendre les applications sous la zone de découpe"</string> + <string name="display_cutout_emulation_overlay" msgid="3814493834951357513">"Rendre les applis sous la zone de découpe"</string> </resources> diff --git a/packages/overlays/tests/Android.bp b/packages/overlays/tests/Android.bp index 0244c0fe0533..8bbe60059d45 100644 --- a/packages/overlays/tests/Android.bp +++ b/packages/overlays/tests/Android.bp @@ -26,8 +26,8 @@ android_test { certificate: "platform", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], platform_apis: true, static_libs: [ diff --git a/packages/services/CameraExtensionsProxy/src/com/android/cameraextensions/CameraExtensionsProxyService.java b/packages/services/CameraExtensionsProxy/src/com/android/cameraextensions/CameraExtensionsProxyService.java index 2c4bc7cb0d47..7bba28a0b7c4 100644 --- a/packages/services/CameraExtensionsProxy/src/com/android/cameraextensions/CameraExtensionsProxyService.java +++ b/packages/services/CameraExtensionsProxy/src/com/android/cameraextensions/CameraExtensionsProxyService.java @@ -22,6 +22,7 @@ import android.content.pm.PackageManager; import android.graphics.GraphicBuffer; import android.graphics.Rect; import android.hardware.HardwareBuffer; +import android.hardware.SyncFence; import android.hardware.camera2.CameraAccessException; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraExtensionCharacteristics; @@ -2525,6 +2526,19 @@ public class CameraExtensionsProxyService extends Service { } @Override + public SyncFence getFence() { + if (mParcelImage.fence != null) { + try { + return SyncFence.create(mParcelImage.fence.dup()); + } catch (IOException e) { + Log.e(TAG, "Failed to parcel buffer fence!"); + } + } + + return SyncFence.createEmpty(); + } + + @Override protected final void finalize() throws Throwable { try { close(); diff --git a/ravenwood/.gitignore b/ravenwood/.gitignore new file mode 100644 index 000000000000..751553b3acb9 --- /dev/null +++ b/ravenwood/.gitignore @@ -0,0 +1 @@ +*.bak diff --git a/ravenwood/Android.bp b/ravenwood/Android.bp index 48bc803f4a5c..0c2ce8dcb698 100644 --- a/ravenwood/Android.bp +++ b/ravenwood/Android.bp @@ -5,15 +5,18 @@ package { // to get the below license kinds: // SPDX-license-identifier-Apache-2.0 default_applicable_licenses: ["frameworks_base_license"], + + // OWNER: g/ravenwood + // Bug component: 25698 + default_team: "trendy_team_ravenwood", } filegroup { - name: "ravenwood-annotations", + name: "ravenwood-common-policies", srcs: [ - "annotations-src/**/*.java", + "texts/ravenwood-common-policies.txt", ], - path: "annotations-src", - visibility: ["//visibility:public"], + visibility: ["//visibility:private"], } filegroup { @@ -21,7 +24,7 @@ filegroup { srcs: [ "texts/ravenwood-services-policies.txt", ], - visibility: ["//visibility:public"], + visibility: ["//visibility:private"], } filegroup { @@ -29,7 +32,7 @@ filegroup { srcs: [ "texts/ravenwood-framework-policies.txt", ], - visibility: ["//visibility:public"], + visibility: ["//visibility:private"], } filegroup { @@ -37,7 +40,7 @@ filegroup { srcs: [ "texts/ravenwood-standard-options.txt", ], - visibility: ["//visibility:public"], + visibility: ["//visibility:private"], } filegroup { @@ -45,15 +48,7 @@ filegroup { srcs: [ "texts/ravenwood-annotation-allowed-classes.txt", ], - visibility: ["//visibility:public"], -} - -java_library { - name: "ravenwood-annotations-lib", - srcs: [":ravenwood-annotations"], - sdk_version: "core_current", - host_supported: true, - visibility: ["//visibility:public"], + visibility: ["//visibility:private"], } // This and the next module contain the same classes with different implementations. @@ -68,7 +63,10 @@ java_library { srcs: [ "runtime-common-ravenwood-src/**/*.java", ], - visibility: ["//frameworks/base"], + visibility: [ + // Some tests need to access the utilities. + ":__subpackages__", + ], } java_library { @@ -91,6 +89,9 @@ java_library { libs: [ "ravenwood-runtime-common-ravenwood", ], + static_libs: [ + "framework-annotations-lib", // should it be "libs" instead? + ], visibility: ["//visibility:private"], } @@ -99,6 +100,9 @@ java_library_host { srcs: [ "runtime-helper-src/libcore-fake/**/*.java", ], + libs: [ + "app-compat-annotations", + ], static_libs: [ "ravenwood-runtime-common", ], @@ -120,11 +124,14 @@ java_library { ], static_libs: [ "ravenwood-runtime-common", + "androidx.annotation_annotation", ], libs: [ "framework-minus-apex.ravenwood", - "ravenwood-junit", + "framework-configinfrastructure.ravenwood", + "ravenwood-helper-libcore-runtime", ], + sdk_version: "core_current", visibility: ["//visibility:private"], } @@ -152,17 +159,29 @@ java_library { "ravenwood-runtime-common", ], libs: [ - "android.test.mock", + "android.test.mock.impl", "framework-minus-apex.ravenwood", "ravenwood-framework", "services.core.ravenwood", "junit", + "framework-annotations-lib", + "ravenwood-helper-framework-runtime", + "ravenwood-helper-libcore-runtime", + "hoststubgen-helper-runtime.ravenwood", + "mockito-ravenwood-prebuilt", ], - sdk_version: "core_current", - visibility: ["//frameworks/base"], + visibility: [":__subpackages__"], jarjar_rules: ":ravenwood-services-jarjar-rules", } +java_device_for_host { + name: "ravenwood-junit-impl-for-ravenizer", + libs: [ + "ravenwood-junit-impl", + ], + visibility: [":__subpackages__"], +} + // Separated out from ravenwood-junit-impl since it needs to compile // against `module_current` java_library { @@ -178,10 +197,13 @@ java_library { visibility: ["//visibility:public"], } -// Carefully compiles against only test_current to support tests that +// Carefully compiles against only module_current to support tests that // want to verify they're unbundled. The "impl" library above is what // ships inside the Ravenwood environment to actually drive any API // access to implementation details. +// We can't use test_current here because this library needs to be statically +// linked to mainline tests as well, which can't use test APIs because they +// need to be able to run on multiple API levels. java_library { name: "ravenwood-junit", srcs: [ @@ -189,7 +211,7 @@ java_library { "junit-stub-src/**/*.java", "junit-flag-src/**/*.java", ], - sdk_version: "test_current", + sdk_version: "module_current", static_libs: [ "ravenwood-runtime-common", "ravenwood-runtime-common-device", @@ -197,6 +219,7 @@ java_library { libs: [ "junit", "flag-junit", + "framework-annotations-lib", ], visibility: ["//visibility:public"], } @@ -231,34 +254,62 @@ java_device_for_host { } filegroup { + name: "ravenwood-framework-jarjar-rules", + srcs: ["texts/ravenwood-framework-jarjar-rules.txt"], + visibility: ["//frameworks/base"], +} + +filegroup { name: "ravenwood-services-jarjar-rules", srcs: ["texts/ravenwood-services-jarjar-rules.txt"], visibility: ["//frameworks/base"], } -cc_library_shared { - name: "libravenwood_runtime", - host_supported: true, - +cc_defaults { + name: "ravenwood_jni_defaults", cflags: [ "-Wall", "-Werror", "-Wno-unused-parameter", "-Wthread-safety", ], + static_libs: [ + "libnativehelper_jvm", + ], + shared_libs: [ + "liblog", + ], + visibility: ["//visibility:private"], +} +cc_library_host_shared { + name: "libravenwood_initializer", + defaults: ["ravenwood_jni_defaults"], srcs: [ - "runtime-jni/*.cpp", + "runtime-jni/ravenwood_initializer.cpp", ], +} + +// We need this as a separate library because we need to overload the +// sysprop symbols before libbase is loaded into the process +cc_library_host_shared { + name: "libravenwood_sysprop", + defaults: ["ravenwood_jni_defaults"], + srcs: ["runtime-jni/ravenwood_sysprop.cpp"], +} +cc_library_host_shared { + name: "libravenwood_runtime", + defaults: ["ravenwood_jni_defaults"], + srcs: [ + "runtime-jni/ravenwood_runtime.cpp", + "runtime-jni/ravenwood_os_constants.cpp", + ], shared_libs: [ "libbase", - "liblog", - "libnativehelper", "libutils", "libcutils", ], - visibility: ["//frameworks/base"], } // For collecting the *stats.csv files in a known directory under out/host/linux-x86/testcases/. @@ -267,12 +318,376 @@ sh_test_host { name: "ravenwood-stats-checker", src: "scripts/ravenwood-stats-checker.sh", test_suites: ["general-tests"], - data: [ - ":framework-minus-apex.ravenwood.stats", - ":framework-minus-apex.ravenwood.apis", - ":framework-minus-apex.ravenwood.keep_all", - ":services.core.ravenwood.stats", - ":services.core.ravenwood.apis", - ":services.core.ravenwood.keep_all", + device_common_data: [ + ":framework-minus-apex.ravenwood-base_all{hoststubgen_framework-minus-apex_stats.csv}", + ":framework-minus-apex.ravenwood-base_all{hoststubgen_framework-minus-apex_apis.csv}", + ":framework-minus-apex.ravenwood-base_all{hoststubgen_framework-minus-apex_keep_all.txt}", + ":framework-minus-apex.ravenwood-base_all{hoststubgen_framework-minus-apex_dump.txt}", + ":services.core.ravenwood-base{hoststubgen_services.core_stats.csv}", + ":services.core.ravenwood-base{hoststubgen_services.core_apis.csv}", + ":services.core.ravenwood-base{hoststubgen_services.core_keep_all.txt}", + ":services.core.ravenwood-base{hoststubgen_services.core_dump.txt}", + + ":framework-configinfrastructure.ravenwood-base{framework-configinfrastructure_stats.csv}", + ":framework-configinfrastructure.ravenwood-base{framework-configinfrastructure_apis.csv}", + ":framework-configinfrastructure.ravenwood-base{framework-configinfrastructure_keep_all.txt}", + ":framework-configinfrastructure.ravenwood-base{framework-configinfrastructure_dump.txt}", + + ":framework-statsd.ravenwood-base{framework-statsd_stats.csv}", + ":framework-statsd.ravenwood-base{framework-statsd_apis.csv}", + ":framework-statsd.ravenwood-base{framework-statsd_keep_all.txt}", + ":framework-statsd.ravenwood-base{framework-statsd_dump.txt}", ], } + +java_library { + name: "services.fakes.ravenwood-jarjar", + installable: false, + srcs: [":services.fakes-sources"], + libs: [ + "ravenwood-framework", + "services.core.ravenwood", + ], + jarjar_rules: ":ravenwood-services-jarjar-rules", + visibility: ["//visibility:private"], +} + +java_library { + name: "mockito-ravenwood-prebuilt", + installable: false, + static_libs: [ + "mockito-robolectric-prebuilt", + ], +} + +java_library { + name: "inline-mockito-ravenwood-prebuilt", + installable: false, + static_libs: [ + "inline-mockito-robolectric-prebuilt", + ], +} + +filegroup { + name: "ravenwood-data", + device_common_srcs: [ + ":system-build.prop", + ":framework-res", + ":ravenwood-empty-res", + ":framework-platform-compat-config", + ":services-platform-compat-config", + "texts/ravenwood-build.prop", + ], + device_first_srcs: [ + ":apex_icu.dat", + ], + visibility: ["//visibility:private"], +} + +// Keep in sync with build/make/target/product/generic/Android.bp +filegroup { + name: "ravenwood-fonts", + device_common_srcs: [ + ":AndroidClock.ttf", + ":CarroisGothicSC-Regular.ttf", + ":ComingSoon.ttf", + ":CutiveMono.ttf", + ":DancingScript-Regular.ttf", + ":DroidSansMono.ttf", + ":NotoColorEmoji.ttf", + ":NotoColorEmojiFlags.ttf", + ":NotoNaskhArabic-Bold.ttf", + ":NotoNaskhArabic-Regular.ttf", + ":NotoNaskhArabicUI-Bold.ttf", + ":NotoNaskhArabicUI-Regular.ttf", + ":NotoSansAdlam-VF.ttf", + ":NotoSansAhom-Regular.otf", + ":NotoSansAnatolianHieroglyphs-Regular.otf", + ":NotoSansArmenian-VF.ttf", + ":NotoSansAvestan-Regular.ttf", + ":NotoSansBalinese-Regular.ttf", + ":NotoSansBamum-Regular.ttf", + ":NotoSansBassaVah-Regular.otf", + ":NotoSansBatak-Regular.ttf", + ":NotoSansBengali-VF.ttf", + ":NotoSansBengaliUI-VF.ttf", + ":NotoSansBhaiksuki-Regular.otf", + ":NotoSansBrahmi-Regular.ttf", + ":NotoSansBuginese-Regular.ttf", + ":NotoSansBuhid-Regular.ttf", + ":NotoSansCJK-Regular.ttc", + ":NotoSansCanadianAboriginal-Regular.ttf", + ":NotoSansCarian-Regular.ttf", + ":NotoSansChakma-Regular.otf", + ":NotoSansCham-Bold.ttf", + ":NotoSansCham-Regular.ttf", + ":NotoSansCherokee-Regular.ttf", + ":NotoSansCoptic-Regular.ttf", + ":NotoSansCuneiform-Regular.ttf", + ":NotoSansCypriot-Regular.ttf", + ":NotoSansDeseret-Regular.ttf", + ":NotoSansDevanagari-VF.ttf", + ":NotoSansDevanagariUI-VF.ttf", + ":NotoSansEgyptianHieroglyphs-Regular.ttf", + ":NotoSansElbasan-Regular.otf", + ":NotoSansEthiopic-VF.ttf", + ":NotoSansGeorgian-VF.ttf", + ":NotoSansGlagolitic-Regular.ttf", + ":NotoSansGothic-Regular.ttf", + ":NotoSansGrantha-Regular.ttf", + ":NotoSansGujarati-Bold.ttf", + ":NotoSansGujarati-Regular.ttf", + ":NotoSansGujaratiUI-Bold.ttf", + ":NotoSansGujaratiUI-Regular.ttf", + ":NotoSansGunjalaGondi-Regular.otf", + ":NotoSansGurmukhi-VF.ttf", + ":NotoSansGurmukhiUI-VF.ttf", + ":NotoSansHanifiRohingya-Regular.otf", + ":NotoSansHanunoo-Regular.ttf", + ":NotoSansHatran-Regular.otf", + ":NotoSansHebrew-Bold.ttf", + ":NotoSansHebrew-Regular.ttf", + ":NotoSansImperialAramaic-Regular.ttf", + ":NotoSansInscriptionalPahlavi-Regular.ttf", + ":NotoSansInscriptionalParthian-Regular.ttf", + ":NotoSansJavanese-Regular.otf", + ":NotoSansKaithi-Regular.ttf", + ":NotoSansKannada-VF.ttf", + ":NotoSansKannadaUI-VF.ttf", + ":NotoSansKayahLi-Regular.ttf", + ":NotoSansKharoshthi-Regular.ttf", + ":NotoSansKhmer-VF.ttf", + ":NotoSansKhmerUI-Bold.ttf", + ":NotoSansKhmerUI-Regular.ttf", + ":NotoSansKhojki-Regular.otf", + ":NotoSansLao-Bold.ttf", + ":NotoSansLao-Regular.ttf", + ":NotoSansLaoUI-Bold.ttf", + ":NotoSansLaoUI-Regular.ttf", + ":NotoSansLepcha-Regular.ttf", + ":NotoSansLimbu-Regular.ttf", + ":NotoSansLinearA-Regular.otf", + ":NotoSansLinearB-Regular.ttf", + ":NotoSansLisu-Regular.ttf", + ":NotoSansLycian-Regular.ttf", + ":NotoSansLydian-Regular.ttf", + ":NotoSansMalayalam-VF.ttf", + ":NotoSansMalayalamUI-VF.ttf", + ":NotoSansMandaic-Regular.ttf", + ":NotoSansManichaean-Regular.otf", + ":NotoSansMarchen-Regular.otf", + ":NotoSansMasaramGondi-Regular.otf", + ":NotoSansMedefaidrin-VF.ttf", + ":NotoSansMeeteiMayek-Regular.ttf", + ":NotoSansMeroitic-Regular.otf", + ":NotoSansMiao-Regular.otf", + ":NotoSansModi-Regular.ttf", + ":NotoSansMongolian-Regular.ttf", + ":NotoSansMro-Regular.otf", + ":NotoSansMultani-Regular.otf", + ":NotoSansMyanmar-Bold.otf", + ":NotoSansMyanmar-Medium.otf", + ":NotoSansMyanmar-Regular.otf", + ":NotoSansMyanmarUI-Bold.otf", + ":NotoSansMyanmarUI-Medium.otf", + ":NotoSansMyanmarUI-Regular.otf", + ":NotoSansNKo-Regular.ttf", + ":NotoSansNabataean-Regular.otf", + ":NotoSansNewTaiLue-Regular.ttf", + ":NotoSansNewa-Regular.otf", + ":NotoSansOgham-Regular.ttf", + ":NotoSansOlChiki-Regular.ttf", + ":NotoSansOldItalic-Regular.ttf", + ":NotoSansOldNorthArabian-Regular.otf", + ":NotoSansOldPermic-Regular.otf", + ":NotoSansOldPersian-Regular.ttf", + ":NotoSansOldSouthArabian-Regular.ttf", + ":NotoSansOldTurkic-Regular.ttf", + ":NotoSansOriya-Bold.ttf", + ":NotoSansOriya-Regular.ttf", + ":NotoSansOriyaUI-Bold.ttf", + ":NotoSansOriyaUI-Regular.ttf", + ":NotoSansOsage-Regular.ttf", + ":NotoSansOsmanya-Regular.ttf", + ":NotoSansPahawhHmong-Regular.otf", + ":NotoSansPalmyrene-Regular.otf", + ":NotoSansPauCinHau-Regular.otf", + ":NotoSansPhagsPa-Regular.ttf", + ":NotoSansPhoenician-Regular.ttf", + ":NotoSansRejang-Regular.ttf", + ":NotoSansRunic-Regular.ttf", + ":NotoSansSamaritan-Regular.ttf", + ":NotoSansSaurashtra-Regular.ttf", + ":NotoSansSharada-Regular.otf", + ":NotoSansShavian-Regular.ttf", + ":NotoSansSinhala-VF.ttf", + ":NotoSansSinhalaUI-VF.ttf", + ":NotoSansSoraSompeng-Regular.otf", + ":NotoSansSoyombo-VF.ttf", + ":NotoSansSundanese-Regular.ttf", + ":NotoSansSylotiNagri-Regular.ttf", + ":NotoSansSymbols-Regular-Subsetted.ttf", + ":NotoSansSymbols-Regular-Subsetted2.ttf", + ":NotoSansSyriacEastern-Regular.ttf", + ":NotoSansSyriacEstrangela-Regular.ttf", + ":NotoSansSyriacWestern-Regular.ttf", + ":NotoSansTagalog-Regular.ttf", + ":NotoSansTagbanwa-Regular.ttf", + ":NotoSansTaiLe-Regular.ttf", + ":NotoSansTaiTham-Regular.ttf", + ":NotoSansTaiViet-Regular.ttf", + ":NotoSansTakri-VF.ttf", + ":NotoSansTamil-VF.ttf", + ":NotoSansTamilUI-VF.ttf", + ":NotoSansTelugu-VF.ttf", + ":NotoSansTeluguUI-VF.ttf", + ":NotoSansThaana-Bold.ttf", + ":NotoSansThaana-Regular.ttf", + ":NotoSansThai-Bold.ttf", + ":NotoSansThai-Regular.ttf", + ":NotoSansThaiUI-Bold.ttf", + ":NotoSansThaiUI-Regular.ttf", + ":NotoSansTifinagh-Regular.otf", + ":NotoSansUgaritic-Regular.ttf", + ":NotoSansVai-Regular.ttf", + ":NotoSansWancho-Regular.otf", + ":NotoSansWarangCiti-Regular.otf", + ":NotoSansYi-Regular.ttf", + ":NotoSerif-Bold.ttf", + ":NotoSerif-BoldItalic.ttf", + ":NotoSerif-Italic.ttf", + ":NotoSerif-Regular.ttf", + ":NotoSerifArmenian-VF.ttf", + ":NotoSerifBengali-VF.ttf", + ":NotoSerifCJK-Regular.ttc", + ":NotoSerifDevanagari-VF.ttf", + ":NotoSerifDogra-Regular.ttf", + ":NotoSerifEthiopic-VF.ttf", + ":NotoSerifGeorgian-VF.ttf", + ":NotoSerifGujarati-VF.ttf", + ":NotoSerifGurmukhi-VF.ttf", + ":NotoSerifHebrew-Bold.ttf", + ":NotoSerifHebrew-Regular.ttf", + ":NotoSerifHentaigana.ttf", + ":NotoSerifKannada-VF.ttf", + ":NotoSerifKhmer-Bold.otf", + ":NotoSerifKhmer-Regular.otf", + ":NotoSerifLao-Bold.ttf", + ":NotoSerifLao-Regular.ttf", + ":NotoSerifMalayalam-VF.ttf", + ":NotoSerifMyanmar-Bold.otf", + ":NotoSerifMyanmar-Regular.otf", + ":NotoSerifNyiakengPuachueHmong-VF.ttf", + ":NotoSerifSinhala-VF.ttf", + ":NotoSerifTamil-VF.ttf", + ":NotoSerifTelugu-VF.ttf", + ":NotoSerifThai-Bold.ttf", + ":NotoSerifThai-Regular.ttf", + ":NotoSerifTibetan-VF.ttf", + ":NotoSerifYezidi-VF.ttf", + ":Roboto-Regular.ttf", + ":RobotoFlex-Regular.ttf", + ":RobotoStatic-Regular.ttf", + ":SourceSansPro-Bold.ttf", + ":SourceSansPro-BoldItalic.ttf", + ":SourceSansPro-Italic.ttf", + ":SourceSansPro-Regular.ttf", + ":SourceSansPro-SemiBold.ttf", + ":SourceSansPro-SemiBoldItalic.ttf", + ], + device_first_srcs: [ + ":font_fallback.xml", + ":fonts.xml", + ], + visibility: ["//visibility:private"], +} + +// JARs in "ravenwood-runtime" are set to the classpath, sorted alphabetically. +// Rename some of the dependencies to make sure they're included in the intended order. + +java_library { + name: "100-framework-minus-apex.ravenwood", + installable: false, + static_libs: ["framework-minus-apex.ravenwood"], + visibility: ["//visibility:private"], +} + +java_library { + name: "200-kxml2-android", + installable: false, + static_libs: ["kxml2-android"], + visibility: ["//visibility:private"], +} + +java_library { + name: "z00-all-updatable-modules-system-stubs", + installable: false, + static_libs: ["all-updatable-modules-system-stubs-for-host"], + visibility: ["//visibility:private"], +} + +android_ravenwood_libgroup { + name: "ravenwood-runtime", + data: [":ravenwood-data"], + fonts: [":ravenwood-fonts"], + libs: [ + "100-framework-minus-apex.ravenwood", + "200-kxml2-android", + + "ravenwood-runtime-common-ravenwood", + + "android.test.mock.ravenwood", + "ravenwood-helper-runtime", + "hoststubgen-helper-runtime.ravenwood", + "services.core.ravenwood-jarjar", + "services.fakes.ravenwood-jarjar", + + // ICU + "core-icu4j-for-host.ravenwood", + "icu4j-icudata-jarjar", + "icu4j-icutzdata-jarjar", + + // DeviceConfig + "framework-configinfrastructure.ravenwood", + + // StatsD + "framework-statsd.ravenwood", + + // Provide runtime versions of utils linked in below + "junit", + "truth", + "flag-junit", + "ravenwood-framework", + "ravenwood-junit-impl", + "ravenwood-junit-impl-flag", + "mockito-ravenwood-prebuilt", + "inline-mockito-ravenwood-prebuilt", + + // It's a stub, so it should be towards the end. + "z00-all-updatable-modules-system-stubs", + ], + jni_libs: [ + // Libraries has to be loaded in the following order + "libravenwood_initializer", + "libravenwood_sysprop", + "libravenwood_runtime", + "libandroid_runtime", + ], +} + +android_ravenwood_libgroup { + name: "ravenwood-utils", + libs: [ + "junit", + "truth", + "flag-junit", + "ravenwood-framework", + "ravenwood-junit", + "mockito-ravenwood-prebuilt", + "inline-mockito-ravenwood-prebuilt", + ], +} + +build = [ + "Framework.bp", +] diff --git a/ravenwood/Framework.bp b/ravenwood/Framework.bp new file mode 100644 index 000000000000..d20773844df3 --- /dev/null +++ b/ravenwood/Framework.bp @@ -0,0 +1,400 @@ +// Copyright (C) 2024 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. + +// This file hosts all the genrule and module definitions for all Android specific +// code that needs further post-processing by hoststubgen to support Ravenwood. + +///////////////////////// +// framework-minus-apex +///////////////////////// + +// Process framework-minus-apex with hoststubgen for Ravenwood. +// This step takes several tens of seconds, so we manually shard it to multiple modules. +// All the copies have to be kept in sync. +// TODO: Do the sharding better, either by making hostsubgen support sharding natively, or +// making a better build rule. + +genrule_defaults { + name: "framework-minus-apex.ravenwood-base_defaults", + tools: ["hoststubgen"], + srcs: [ + ":framework-minus-apex-for-host", + ":ravenwood-common-policies", + ":ravenwood-framework-policies", + ":ravenwood-standard-options", + ":ravenwood-annotation-allowed-classes", + ], + out: [ + "ravenwood.jar", + "hoststubgen_framework-minus-apex.log", + ], + visibility: ["//visibility:private"], +} + +framework_minus_apex_cmd = "$(location hoststubgen) " + + "@$(location :ravenwood-standard-options) " + + "--debug-log $(location hoststubgen_framework-minus-apex.log) " + + "--out-jar $(location ravenwood.jar) " + + "--in-jar $(location :framework-minus-apex-for-host) " + + "--policy-override-file $(location :ravenwood-common-policies) " + + "--policy-override-file $(location :ravenwood-framework-policies) " + + "--annotation-allowed-classes-file $(location :ravenwood-annotation-allowed-classes) " + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X0", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 0", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X1", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 1", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X2", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 2", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X3", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 3", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X4", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 4", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X5", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 5", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X6", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 6", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X7", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 7", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X8", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 8", +} + +java_genrule { + name: "framework-minus-apex.ravenwood-base_X9", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + " --num-shards 10 --shard-index 9", +} + +// Build framework-minus-apex.ravenwood-base without sharding. +// We extract the various dump files from this one, rather than the sharded ones, because +// some dumps use the output from other classes (e.g. base classes) which may not be in the +// same shard. Also some of the dump files ("apis") may be slow even when sharded, because +// the output contains the information from all the input classes, rather than the output classes. +// Not using sharding is fine for this module because it's only used for collecting the +// dump / stats files, which don't have to happen regularly. +java_genrule { + name: "framework-minus-apex.ravenwood-base_all", + defaults: ["framework-minus-apex.ravenwood-base_defaults"], + cmd: framework_minus_apex_cmd + + "--stats-file $(location hoststubgen_framework-minus-apex_stats.csv) " + + "--supported-api-list-file $(location hoststubgen_framework-minus-apex_apis.csv) " + + + "--gen-keep-all-file $(location hoststubgen_framework-minus-apex_keep_all.txt) " + + "--gen-input-dump-file $(location hoststubgen_framework-minus-apex_dump.txt) ", + + out: [ + "hoststubgen_framework-minus-apex_keep_all.txt", + "hoststubgen_framework-minus-apex_dump.txt", + "hoststubgen_framework-minus-apex_stats.csv", + "hoststubgen_framework-minus-apex_apis.csv", + ], +} + +// Marge all the sharded jars +java_genrule { + name: "framework-minus-apex.ravenwood", + defaults: ["ravenwood-internal-only-visibility-java"], + cmd: "$(location merge_zips) $(out) $(in)", + tools: ["merge_zips"], + srcs: [ + ":framework-minus-apex.ravenwood-base_X0{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X1{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X2{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X3{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X4{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X5{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X6{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X7{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X8{ravenwood.jar}", + ":framework-minus-apex.ravenwood-base_X9{ravenwood.jar}", + ], + out: [ + "framework-minus-apex.ravenwood.jar", + ], +} + +////////////////// +// services.core +////////////////// + +java_library { + name: "services.core-for-host", + installable: false, // host only jar. + static_libs: [ + "services.core", + ], + sdk_version: "core_platform", + visibility: ["//visibility:private"], +} + +java_genrule { + name: "services.core.ravenwood-base", + tools: ["hoststubgen"], + cmd: "$(location hoststubgen) " + + "@$(location :ravenwood-standard-options) " + + + "--debug-log $(location hoststubgen_services.core.log) " + + "--stats-file $(location hoststubgen_services.core_stats.csv) " + + "--supported-api-list-file $(location hoststubgen_services.core_apis.csv) " + + "--gen-keep-all-file $(location hoststubgen_services.core_keep_all.txt) " + + "--gen-input-dump-file $(location hoststubgen_services.core_dump.txt) " + + + "--out-jar $(location ravenwood.jar) " + + "--in-jar $(location :services.core-for-host) " + + + "--policy-override-file $(location :ravenwood-common-policies) " + + "--policy-override-file $(location :ravenwood-services-policies) " + + "--annotation-allowed-classes-file $(location :ravenwood-annotation-allowed-classes) ", + srcs: [ + ":services.core-for-host", + ":ravenwood-common-policies", + ":ravenwood-services-policies", + ":ravenwood-standard-options", + ":ravenwood-annotation-allowed-classes", + ], + out: [ + "ravenwood.jar", + + // Following files are created just as FYI. + "hoststubgen_services.core_keep_all.txt", + "hoststubgen_services.core_dump.txt", + + "hoststubgen_services.core.log", + "hoststubgen_services.core_stats.csv", + "hoststubgen_services.core_apis.csv", + ], + visibility: ["//visibility:private"], +} + +java_genrule { + name: "services.core.ravenwood", + defaults: ["ravenwood-internal-only-visibility-genrule"], + cmd: "cp $(in) $(out)", + srcs: [ + ":services.core.ravenwood-base{ravenwood.jar}", + ], + out: [ + "services.core.ravenwood.jar", + ], +} + +// TODO(b/313930116) This jarjar is a bit slow. We should use hoststubgen for renaming, +// but services.core.ravenwood has complex dependencies, so it'll take more than +// just using hoststubgen "rename"s. +java_library { + name: "services.core.ravenwood-jarjar", + defaults: ["ravenwood-internal-only-visibility-java"], + installable: false, + static_libs: [ + "services.core.ravenwood", + ], + jarjar_rules: ":ravenwood-services-jarjar-rules", +} + +/////////////// +// core-icu4j +/////////////// + +java_genrule { + name: "core-icu4j-for-host.ravenwood-base", + tools: ["hoststubgen"], + cmd: "$(location hoststubgen) " + + "@$(location :ravenwood-standard-options) " + + + "--debug-log $(location hoststubgen_core-icu4j-for-host.log) " + + "--stats-file $(location hoststubgen_core-icu4j-for-host_stats.csv) " + + "--supported-api-list-file $(location hoststubgen_core-icu4j-for-host_apis.csv) " + + "--gen-keep-all-file $(location hoststubgen_core-icu4j-for-host_keep_all.txt) " + + "--gen-input-dump-file $(location hoststubgen_core-icu4j-for-host_dump.txt) " + + + "--out-jar $(location ravenwood.jar) " + + "--in-jar $(location :core-icu4j-for-host) " + + + "--policy-override-file $(location :ravenwood-common-policies) " + + "--policy-override-file $(location :icu-ravenwood-policies) ", + srcs: [ + ":core-icu4j-for-host", + + ":ravenwood-common-policies", + ":icu-ravenwood-policies", + ":ravenwood-standard-options", + ], + out: [ + "ravenwood.jar", + + // Following files are created just as FYI. + "hoststubgen_core-icu4j-for-host_keep_all.txt", + "hoststubgen_core-icu4j-for-host_dump.txt", + + "hoststubgen_core-icu4j-for-host.log", + "hoststubgen_core-icu4j-for-host_stats.csv", + "hoststubgen_core-icu4j-for-host_apis.csv", + ], + visibility: ["//visibility:private"], +} + +java_genrule { + name: "core-icu4j-for-host.ravenwood", + defaults: ["ravenwood-internal-only-visibility-genrule"], + cmd: "cp $(in) $(out)", + srcs: [ + ":core-icu4j-for-host.ravenwood-base{ravenwood.jar}", + ], + out: [ + "core-icu4j-for-host.ravenwood.jar", + ], +} + +/////////////////////////////////// +// framework-configinfrastructure +/////////////////////////////////// + +java_genrule { + name: "framework-configinfrastructure.ravenwood-base", + tools: ["hoststubgen"], + cmd: "$(location hoststubgen) " + + "@$(location :ravenwood-standard-options) " + + + "--debug-log $(location framework-configinfrastructure.log) " + + "--stats-file $(location framework-configinfrastructure_stats.csv) " + + "--supported-api-list-file $(location framework-configinfrastructure_apis.csv) " + + "--gen-keep-all-file $(location framework-configinfrastructure_keep_all.txt) " + + "--gen-input-dump-file $(location framework-configinfrastructure_dump.txt) " + + + "--out-impl-jar $(location ravenwood.jar) " + + "--in-jar $(location :framework-configinfrastructure.impl{.jar}) " + + + "--policy-override-file $(location :ravenwood-common-policies) " + + "--policy-override-file $(location :framework-configinfrastructure-ravenwood-policies) ", + srcs: [ + ":framework-configinfrastructure.impl{.jar}", + + ":ravenwood-common-policies", + ":framework-configinfrastructure-ravenwood-policies", + ":ravenwood-standard-options", + ], + out: [ + "ravenwood.jar", + + // Following files are created just as FYI. + "framework-configinfrastructure_keep_all.txt", + "framework-configinfrastructure_dump.txt", + + "framework-configinfrastructure.log", + "framework-configinfrastructure_stats.csv", + "framework-configinfrastructure_apis.csv", + ], + visibility: ["//visibility:private"], +} + +java_genrule { + name: "framework-configinfrastructure.ravenwood", + defaults: ["ravenwood-internal-only-visibility-genrule"], + cmd: "cp $(in) $(out)", + srcs: [ + ":framework-configinfrastructure.ravenwood-base{ravenwood.jar}", + ], + out: [ + "framework-configinfrastructure.ravenwood.jar", + ], +} + +/////////////////////////////////// +// framework-statsd +/////////////////////////////////// + +java_genrule { + name: "framework-statsd.ravenwood-base", + tools: ["hoststubgen"], + cmd: "$(location hoststubgen) " + + "@$(location :ravenwood-standard-options) " + + + "--debug-log $(location framework-statsd.log) " + + "--stats-file $(location framework-statsd_stats.csv) " + + "--supported-api-list-file $(location framework-statsd_apis.csv) " + + "--gen-keep-all-file $(location framework-statsd_keep_all.txt) " + + "--gen-input-dump-file $(location framework-statsd_dump.txt) " + + + "--out-impl-jar $(location ravenwood.jar) " + + "--in-jar $(location :framework-statsd.impl{.jar}) " + + + "--policy-override-file $(location :ravenwood-common-policies) " + + "--policy-override-file $(location :framework-statsd-ravenwood-policies) ", + srcs: [ + ":framework-statsd.impl{.jar}", + + ":ravenwood-common-policies", + ":framework-statsd-ravenwood-policies", + ":ravenwood-standard-options", + ], + out: [ + "ravenwood.jar", + + // Following files are created just as FYI. + "framework-statsd_keep_all.txt", + "framework-statsd_dump.txt", + + "framework-statsd.log", + "framework-statsd_stats.csv", + "framework-statsd_apis.csv", + ], + visibility: ["//visibility:private"], +} + +java_genrule { + name: "framework-statsd.ravenwood", + defaults: ["ravenwood-internal-only-visibility-genrule"], + cmd: "cp $(in) $(out)", + srcs: [ + ":framework-statsd.ravenwood-base{ravenwood.jar}", + ], + out: [ + "framework-statsd.ravenwood.jar", + ], +} diff --git a/ravenwood/OWNERS b/ravenwood/OWNERS index badfca0a040e..8722ad92ff49 100644 --- a/ravenwood/OWNERS +++ b/ravenwood/OWNERS @@ -1,8 +1,10 @@ +# Bug component: 25698 set noparent -jsharkey@google.com omakoto@google.com -dplotnikov@google.com +topjohnwu@google.com +hackbod@google.com #{LAST_RESORT_SUGGESTION} + per-file ravenwood-annotation-allowed-classes.txt = dplotnikov@google.com per-file texts/ravenwood-annotation-allowed-classes.txt = dplotnikov@google.com diff --git a/ravenwood/TEST_MAPPING b/ravenwood/TEST_MAPPING index f6885e1e74ba..a1243e37003e 100644 --- a/ravenwood/TEST_MAPPING +++ b/ravenwood/TEST_MAPPING @@ -1,50 +1,99 @@ -// Keep the following two TEST_MAPPINGs in sync: -// frameworks/base/ravenwood/TEST_MAPPING -// frameworks/base/tools/hoststubgen/TEST_MAPPING { "presubmit": [ { "name": "tiny-framework-dump-test" }, { "name": "hoststubgentest" }, + { "name": "hoststubgen-test-tiny-test" }, { "name": "hoststubgen-invoke-test" }, - { - "name": "RavenwoodMockitoTest_device" - }, - { - "name": "RavenwoodBivalentTest_device" - }, + { "name": "RavenwoodMockitoTest_device" }, + { "name": "RavenwoodBivalentTest_device" }, + { "name": "RavenwoodBivalentTest_device_ravenizer" }, + + { "name": "RavenwoodBivalentInstTest_nonself_inst" }, + { "name": "RavenwoodBivalentInstTest_self_inst_device" }, + // The sysui tests should match vendor/unbundled_google/packages/SystemUIGoogle/TEST_MAPPING { - "name": "SystemUIGoogleTests", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "SystemUIGoogleTests" } ], "presubmit-large": [ { - "name": "SystemUITests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "SystemUITests" } ], "ravenwood-presubmit": [ + // AUTO-GENERATED-START + // DO NOT MODIFY MANUALLY + // Use scripts/update-test-mapping.sh to update it. { - "name": "RavenwoodMinimumTest", + "name": "AdServicesSharedLibrariesUnitTestsRavenwood", "host": true }, { - "name": "RavenwoodMockitoTest", + "name": "android.test.mock.ravenwood.tests", + "host": true + }, + { + "name": "CarLibHostUnitTest", + "keywords": ["automotive_code_coverage"], + "host": true + }, + { + "name": "CarServiceHostUnitTest", + "keywords": ["automotive_code_coverage"], + "host": true + }, + { + "name": "CarSystemUIRavenTests", + "keywords": ["automotive_code_coverage"], + "host": true + }, + { + "name": "CtsAccountManagerTestCasesRavenwood", + "host": true + }, + { + "name": "CtsAppTestCasesRavenwood", + "host": true + }, + { + "name": "CtsContentTestCasesRavenwood", + "host": true + }, + { + "name": "CtsDatabaseTestCasesRavenwood", + "host": true + }, + { + "name": "CtsDeviceConfigTestCasesRavenwood", + "host": true + }, + { + "name": "CtsGraphicsTestCasesRavenwood", + "host": true + }, + { + "name": "CtsIcuTestCasesRavenwood", + "host": true + }, + { + "name": "CtsInputMethodTestCasesRavenwood", + "host": true + }, + { + "name": "CtsOsTestCasesRavenwood", + "host": true + }, + { + "name": "CtsProtoTestCasesRavenwood", + "host": true + }, + { + "name": "CtsResourcesTestCasesRavenwood", + "host": true + }, + { + "name": "CtsTextTestCasesRavenwood", "host": true }, { @@ -52,12 +101,79 @@ "host": true }, { - "name": "RavenwoodCoreTest", + "name": "FrameworksCoreSystemPropertiesTestsRavenwood", + "host": true + }, + { + "name": "FrameworksCoreTestsRavenwood", + "host": true + }, + { + "name": "FrameworksInputMethodSystemServerTestsRavenwood", + "host": true + }, + { + "name": "FrameworksMockingServicesTestsRavenwood", + "host": true + }, + { + "name": "FrameworksServicesTestsRavenwood", + "host": true + }, + { + "name": "FrameworksUtilTestsRavenwood", + "host": true + }, + { + "name": "InternalTestsRavenwood", + "host": true + }, + { + "name": "PowerStatsTestsRavenwood", + "host": true + }, + { + "name": "RavenwoodBivalentInstTest_nonself_inst", + "host": true + }, + { + "name": "RavenwoodBivalentInstTest_self_inst", "host": true }, { "name": "RavenwoodBivalentTest", "host": true + }, + { + "name": "RavenwoodCoreTest", + "host": true + }, + { + "name": "RavenwoodMinimumTest", + "host": true + }, + { + "name": "RavenwoodMockitoTest", + "host": true + }, + { + "name": "RavenwoodResApkTest", + "host": true + }, + { + "name": "RavenwoodRuntimeTest", + "host": true + }, + { + "name": "RavenwoodServicesTest", + "host": true + } + // AUTO-GENERATED-END + ], + "ravenwood-postsubmit": [ + { + "name": "SystemUiRavenTests", + "host": true } ] } diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodClassLoadHook.java b/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodClassLoadHook.java deleted file mode 100644 index 7a3142b041d1..000000000000 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodClassLoadHook.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * 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.ravenwood.annotation; - -import static java.lang.annotation.ElementType.TYPE; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * Add this with a fully-specified method name (e.g. {@code "com.package.Class.methodName"}) - * of a callback to get a callback at the class load time. - * - * The method must be {@code public static} with a single argument that takes {@link Class}. - * - * Typically, this is used with {@link #LIBANDROID_LOADING_HOOK}, which will load the necessary - * native libraries. - * - * @hide - */ -@Target({TYPE}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodClassLoadHook { - String value(); - - /** - * Class load hook that loads <code>libandroid_runtime</code>. - */ - public static String LIBANDROID_LOADING_HOOK - = "com.android.platform.test.ravenwood.runtimehelper.ClassLoadHook.onClassLoaded"; -} diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodRemove.java b/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodRemove.java deleted file mode 100644 index 6727327c99be..000000000000 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodRemove.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * 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.ravenwood.annotation; - -import static java.lang.annotation.ElementType.CONSTRUCTOR; -import static java.lang.annotation.ElementType.FIELD; -import static java.lang.annotation.ElementType.METHOD; -import static java.lang.annotation.ElementType.TYPE; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * TODO: Javadoc - * - * @hide - */ -@Target({TYPE, FIELD, METHOD, CONSTRUCTOR}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodRemove { -} diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodReplace.java b/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodReplace.java deleted file mode 100644 index 83a7b6e54389..000000000000 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodReplace.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * 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.ravenwood.annotation; - -import static java.lang.annotation.ElementType.METHOD; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * TODO: Javadoc - * - * @hide - */ -@Target({METHOD}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodReplace { - /** - * One or more classes that aren't yet supported by Ravenwood, which is why this method is - * being replaced. - */ - Class<?>[] blockedBy() default {}; - - /** - * General free-form description of why this method is being replaced. - */ - String reason() default ""; -} diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodThrow.java b/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodThrow.java deleted file mode 100644 index 0bb1f39cd453..000000000000 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodThrow.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * 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.ravenwood.annotation; - -import static java.lang.annotation.ElementType.CONSTRUCTOR; -import static java.lang.annotation.ElementType.METHOD; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * TODO: Javadoc - * TODO: Create "whole-class-throw"? - * - * @hide - */ -@Target({METHOD, CONSTRUCTOR}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodThrow { - /** - * One or more classes that aren't yet supported by Ravenwood, which is why this method throws. - */ - Class<?>[] blockedBy() default {}; - - /** - * General free-form description of why this method throws. - */ - String reason() default ""; -} diff --git a/ravenwood/coretest/README.md b/ravenwood/coretest/README.md deleted file mode 100644 index b60bfbfcb6f4..000000000000 --- a/ravenwood/coretest/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# Ravenwood core test - -This test contains (non-bivalent) tests for Ravenwood itself -- e.g. tests for the ravenwood rules.
\ No newline at end of file diff --git a/ravenwood/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodTestRunnerValidationTest.java b/ravenwood/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodTestRunnerValidationTest.java deleted file mode 100644 index f1e33cb686f1..000000000000 --- a/ravenwood/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodTestRunnerValidationTest.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2024 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.ravenwoodtest.coretest; - -import android.platform.test.ravenwood.RavenwoodRule; - -import androidx.test.runner.AndroidJUnit4; // Intentionally use the deprecated one. - -import org.junit.Assume; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.ExpectedException; -import org.junit.rules.RuleChain; -import org.junit.runner.RunWith; - -/** - * Test for the test runner validator in RavenwoodRule. - */ -@RunWith(AndroidJUnit4.class) -public class RavenwoodTestRunnerValidationTest { - // Note the following rules don't have a @Rule, because they need to be applied in a specific - // order. So we use a RuleChain instead. - private ExpectedException mThrown = ExpectedException.none(); - private final RavenwoodRule mRavenwood = new RavenwoodRule(); - - @Rule - public final RuleChain chain = RuleChain.outerRule(mThrown).around(mRavenwood); - - public RavenwoodTestRunnerValidationTest() { - Assume.assumeTrue(RavenwoodRule._$RavenwoodPrivate.isOptionalValidationEnabled()); - // Because RavenwoodRule will throw this error before executing the test method, - // we can't do it in the test method itself. - // So instead, we initialize it here. - mThrown.expectMessage("Switch to androidx.test.ext.junit.runners.AndroidJUnit4"); - } - - @Test - public void testValidateTestRunner() { - } -} diff --git a/ravenwood/empty-res/Android.bp b/ravenwood/empty-res/Android.bp new file mode 100644 index 000000000000..3af769067d35 --- /dev/null +++ b/ravenwood/empty-res/Android.bp @@ -0,0 +1,4 @@ +android_app { + name: "ravenwood-empty-res", + sdk_version: "current", +} diff --git a/ravenwood/empty-res/AndroidManifest.xml b/ravenwood/empty-res/AndroidManifest.xml new file mode 100644 index 000000000000..f73460b42213 --- /dev/null +++ b/ravenwood/empty-res/AndroidManifest.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.ravenwood.emptyres"> +</manifest> diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java new file mode 100644 index 000000000000..869d854f7b23 --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java @@ -0,0 +1,390 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_VERBOSE_LOGGING; +import static com.android.ravenwood.common.RavenwoodCommonUtils.ensureIsPublicVoidMethod; + +import static org.junit.Assert.fail; +import static org.junit.Assume.assumeTrue; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.os.Bundle; +import android.platform.test.annotations.RavenwoodTestRunnerInitializing; +import android.platform.test.annotations.internal.InnerRunner; +import android.util.Log; + +import androidx.test.platform.app.InstrumentationRegistry; + +import org.junit.rules.TestRule; +import org.junit.runner.Description; +import org.junit.runner.Runner; +import org.junit.runner.manipulation.Filter; +import org.junit.runner.manipulation.Filterable; +import org.junit.runner.manipulation.NoTestsRemainException; +import org.junit.runner.notification.RunNotifier; +import org.junit.runners.BlockJUnit4ClassRunner; +import org.junit.runners.Suite; +import org.junit.runners.model.Statement; +import org.junit.runners.model.TestClass; + +import java.lang.annotation.Annotation; +import java.lang.reflect.InvocationTargetException; +import java.util.function.BiConsumer; + +/** + * A test runner used for Ravenwood. + * + * It will delegate to another runner specified with {@link InnerRunner} + * (default = {@link BlockJUnit4ClassRunner}) with the following features. + * - Add a called before the inner runner gets a chance to run. This can be used to initialize + * stuff used by the inner runner. + * - Add hook points with help from the four test rules such as {@link #sImplicitClassOuterRule}, + * which are also injected by the ravenizer tool. + * + * We use this runner to: + * - Initialize the Ravenwood environment. + * - Handle {@link android.platform.test.annotations.DisabledOnRavenwood}. + */ +public final class RavenwoodAwareTestRunner extends RavenwoodAwareTestRunnerBase { + public static final String TAG = "Ravenwood"; + + /** Scope of a hook. */ + public enum Scope { + Class, + Instance, + } + + /** Order of a hook. */ + public enum Order { + Outer, + Inner, + } + + private record HookRule(Scope scope, Order order) implements TestRule { + @Override + public Statement apply(Statement base, Description description) { + return getCurrentRunner().wrapWithHooks(base, description, scope, order); + } + } + + // The following four rule instances will be injected to tests by the Ravenizer tool. + public static final TestRule sImplicitClassOuterRule = new HookRule(Scope.Class, Order.Outer); + public static final TestRule sImplicitClassInnerRule = new HookRule(Scope.Class, Order.Inner); + public static final TestRule sImplicitInstOuterRule = new HookRule(Scope.Instance, Order.Outer); + public static final TestRule sImplicitInstInnerRule = new HookRule(Scope.Instance, Order.Inner); + + /** Keeps track of the runner on the current thread. */ + private static final ThreadLocal<RavenwoodAwareTestRunner> sCurrentRunner = new ThreadLocal<>(); + + private static RavenwoodAwareTestRunner getCurrentRunner() { + var runner = sCurrentRunner.get(); + if (runner == null) { + throw new RuntimeException("Current test runner not set!"); + } + return runner; + } + + final Class<?> mTestJavaClass; + private final Runner mRealRunner; + private TestClass mTestClass = null; + + /** + * Stores internal states / methods associated with this runner that's only needed in + * junit-impl. + */ + final RavenwoodRunnerState mState = new RavenwoodRunnerState(this); + + /** + * Constructor. + */ + public RavenwoodAwareTestRunner(Class<?> testClass) { + RavenwoodRuntimeEnvironmentController.globalInitOnce(); + mTestJavaClass = testClass; + + /* + * If the class has @DisabledOnRavenwood, then we'll delegate to + * ClassSkippingTestRunner, which simply skips it. + * + * We need to do it before instantiating TestClass for b/367694651. + */ + if (!RavenwoodEnablementChecker.shouldRunClassOnRavenwood(testClass, true)) { + mRealRunner = new ClassSkippingTestRunner(testClass); + return; + } + + mTestClass = new TestClass(testClass); + + Log.v(TAG, "RavenwoodAwareTestRunner starting for " + testClass.getCanonicalName()); + + // This is needed to make AndroidJUnit4ClassRunner happy. + InstrumentationRegistry.registerInstance(null, Bundle.EMPTY); + + // Hook point to allow more customization. + runAnnotatedMethodsOnRavenwood(RavenwoodTestRunnerInitializing.class, null); + + mRealRunner = instantiateRealRunner(mTestClass); + + mState.enterTestRunner(); + } + + @Override + Runner getRealRunner() { + return mRealRunner; + } + + private void runAnnotatedMethodsOnRavenwood(Class<? extends Annotation> annotationClass, + Object instance) { + Log.v(TAG, "runAnnotatedMethodsOnRavenwood() " + annotationClass.getName()); + + for (var method : mTestClass.getAnnotatedMethods(annotationClass)) { + ensureIsPublicVoidMethod(method.getMethod(), /* isStatic=*/ instance == null); + + var methodDesc = method.getDeclaringClass().getName() + "." + + method.getMethod().toString(); + try { + method.getMethod().invoke(instance); + } catch (IllegalAccessException | InvocationTargetException e) { + throw logAndFail("Caught exception while running method " + methodDesc, e); + } + } + } + + @Override + public void run(RunNotifier realNotifier) { + final var notifier = new RavenwoodRunNotifier(realNotifier); + final var description = getDescription(); + + RavenwoodTestStats.getInstance().attachToRunNotifier(notifier); + + if (mRealRunner instanceof ClassSkippingTestRunner) { + Log.i(TAG, "onClassSkipped: description=" + description); + mRealRunner.run(notifier); + return; + } + + Log.v(TAG, "Starting " + mTestJavaClass.getCanonicalName()); + if (RAVENWOOD_VERBOSE_LOGGING) { + dumpDescription(description); + } + + // TODO(b/365976974): handle nested classes better + final boolean skipRunnerHook = + mRealRunnerTakesRunnerBuilder && mRealRunner instanceof Suite; + + sCurrentRunner.set(this); + try { + if (!skipRunnerHook) { + try { + mState.enterTestClass(); + } catch (Throwable th) { + notifier.reportBeforeTestFailure(description, th); + return; + } + } + + // Delegate to the inner runner. + mRealRunner.run(notifier); + } finally { + sCurrentRunner.remove(); + + if (!skipRunnerHook) { + try { + mState.exitTestClass(); + } catch (Throwable th) { + notifier.reportAfterTestFailure(th); + } + } + } + } + + private Statement wrapWithHooks(Statement base, Description description, Scope scope, + Order order) { + return new Statement() { + @Override + public void evaluate() throws Throwable { + runWithHooks(description, scope, order, base); + } + }; + } + + private void runWithHooks(Description description, Scope scope, Order order, Statement s) + throws Throwable { + assumeTrue(onBefore(description, scope, order)); + try { + s.evaluate(); + onAfter(description, scope, order, null); + } catch (Throwable t) { + if (onAfter(description, scope, order, t)) { + throw t; + } + } + } + + /** + * A runner that simply skips a class. It still has to support {@link Filterable} + * because otherwise the result still says "SKIPPED" even when it's not included in the + * filter. + */ + private static class ClassSkippingTestRunner extends Runner implements Filterable { + private final Description mDescription; + private boolean mFilteredOut; + + ClassSkippingTestRunner(Class<?> testClass) { + mDescription = Description.createTestDescription(testClass, testClass.getSimpleName()); + mFilteredOut = false; + } + + @Override + public Description getDescription() { + return mDescription; + } + + @Override + public void run(RunNotifier notifier) { + if (mFilteredOut) { + return; + } + notifier.fireTestSuiteStarted(mDescription); + notifier.fireTestIgnored(mDescription); + notifier.fireTestSuiteFinished(mDescription); + } + + @Override + public void filter(Filter filter) throws NoTestsRemainException { + if (filter.shouldRun(mDescription)) { + mFilteredOut = false; + } else { + throw new NoTestsRemainException(); + } + } + } + + /** + * Called before a test / class. + * + * Return false if it should be skipped. + */ + private boolean onBefore(Description description, Scope scope, Order order) { + Log.v(TAG, "onBefore: description=" + description + ", " + scope + ", " + order); + + if (scope == Scope.Instance && order == Order.Outer) { + // Start of a test method. + mState.enterTestMethod(description); + } + + final var classDescription = getDescription(); + + // Class-level annotations are checked by the runner already, so we only check + // method-level annotations here. + if (scope == Scope.Instance && order == Order.Outer) { + if (!RavenwoodEnablementChecker.shouldEnableOnRavenwood(description, true)) { + return false; + } + } + return true; + } + + /** + * Called after a test / class. + * + * Return false if the exception should be ignored. + */ + private boolean onAfter(Description description, Scope scope, Order order, Throwable th) { + Log.v(TAG, "onAfter: description=" + description + ", " + scope + ", " + order + ", " + th); + + final var classDescription = getDescription(); + + if (scope == Scope.Instance && order == Order.Outer) { + // End of a test method. + mState.exitTestMethod(); + + } + + // If RUN_DISABLED_TESTS is set, and the method did _not_ throw, make it an error. + if (RavenwoodRule.private$ravenwood().isRunningDisabledTests() + && scope == Scope.Instance && order == Order.Outer) { + + boolean isTestEnabled = RavenwoodEnablementChecker.shouldEnableOnRavenwood( + description, false); + if (th == null) { + // Test passed. Is the test method supposed to be enabled? + if (isTestEnabled) { + // Enabled and didn't throw, okay. + return true; + } else { + // Disabled and didn't throw. We should report it. + fail("Test wasn't included under Ravenwood, but it actually " + + "passed under Ravenwood; consider updating annotations"); + return true; // unreachable. + } + } else { + // Test failed. + if (isTestEnabled) { + // Enabled but failed. We should throw the exception. + return true; + } else { + // Disabled and failed. Expected. Don't throw. + return false; + } + } + } + return true; + } + + /** + * Called by RavenwoodRule. + */ + static void onRavenwoodRuleEnter(Description description, RavenwoodRule rule) { + Log.v(TAG, "onRavenwoodRuleEnter: description=" + description); + getCurrentRunner().mState.enterRavenwoodRule(rule); + } + + /** + * Called by RavenwoodRule. + */ + static void onRavenwoodRuleExit(Description description, RavenwoodRule rule) { + Log.v(TAG, "onRavenwoodRuleExit: description=" + description); + getCurrentRunner().mState.exitRavenwoodRule(rule); + } + + private void dumpDescription(Description desc) { + dumpDescription(desc, "[TestDescription]=", " "); + } + + private void dumpDescription(Description desc, String header, String indent) { + Log.v(TAG, indent + header + desc); + + var children = desc.getChildren(); + var childrenIndent = " " + indent; + for (int i = 0; i < children.size(); i++) { + dumpDescription(children.get(i), "#" + i + ": ", childrenIndent); + } + } + + static volatile BiConsumer<String, Throwable> sCriticalErrorHandler = null; + + static void onCriticalError(@NonNull String message, @Nullable Throwable th) { + Log.e(TAG, "Critical error! " + message, th); + var handler = sCriticalErrorHandler; + if (handler == null) { + Log.e(TAG, "Ravenwood cannot continue. Killing self process.", th); + System.exit(1); + } + handler.accept(message, th); + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigPrivate.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigPrivate.java new file mode 100644 index 000000000000..ffb642d60dcc --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigPrivate.java @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.annotation.Nullable; + +import java.util.function.BiConsumer; + +/** + * Contains Ravenwood private APIs. + */ +public class RavenwoodConfigPrivate { + private RavenwoodConfigPrivate() { + } + + /** + * Set a listener for onCriticalError(), for testing. If a listener is set, we won't call + * System.exit(). + */ + public static void setCriticalErrorHandler(@Nullable BiConsumer<String, Throwable> handler) { + RavenwoodAwareTestRunner.sCriticalErrorHandler = handler; + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigState.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigState.java new file mode 100644 index 000000000000..870a10a1f57e --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodConfigState.java @@ -0,0 +1,85 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_EMPTY_RESOURCES_APK; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import android.annotation.Nullable; +import android.app.ResourcesManager; +import android.content.res.Resources; +import android.view.DisplayAdjustments; + +import java.io.File; +import java.util.HashMap; + +/** + * Used to store various states associated with {@link RavenwoodConfig} that's inly needed + * in junit-impl. + * + * We don't want to put it in junit-src to avoid having to recompile all the downstream + * dependencies after changing this class. + * + * All members must be called from the runner's main thread. + */ +public class RavenwoodConfigState { + private static final String TAG = "RavenwoodConfigState"; + + private final RavenwoodConfig mConfig; + + // TODO: Move the other contexts from RavenwoodConfig to here too? They're used by + // RavenwoodRule too, but RavenwoodRule can probably use InstrumentationRegistry? + RavenwoodContext mSystemServerContext; + + public RavenwoodConfigState(RavenwoodConfig config) { + mConfig = config; + } + + /** Map from path -> resources. */ + private final HashMap<File, Resources> mCachedResources = new HashMap<>(); + + /** + * Load {@link Resources} from an APK, with cache. + */ + public Resources loadResources(@Nullable File apkPath) { + var cached = mCachedResources.get(apkPath); + if (cached != null) { + return cached; + } + + var fileToLoad = apkPath != null ? apkPath : new File(RAVENWOOD_EMPTY_RESOURCES_APK); + + assertTrue("File " + fileToLoad + " doesn't exist.", fileToLoad.isFile()); + + final String path = fileToLoad.getAbsolutePath(); + final var emptyPaths = new String[0]; + + ResourcesManager.getInstance().initializeApplicationPaths(path, emptyPaths); + + final var ret = ResourcesManager.getInstance().getResources(null, path, + emptyPaths, emptyPaths, emptyPaths, + emptyPaths, null, null, + new DisplayAdjustments().getCompatibilityInfo(), + RavenwoodRuntimeEnvironmentController.class.getClassLoader(), null); + + assertNotNull(ret); + + mCachedResources.put(apkPath, ret); + return ret; + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodContext.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodContext.java index 1dd5e1ddd630..239c8061b757 100644 --- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodContext.java +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodContext.java @@ -16,8 +16,13 @@ package android.platform.test.ravenwood; +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_RESOURCE_APK; + import android.content.ClipboardManager; import android.content.Context; +import android.content.res.AssetManager; +import android.content.res.Resources; +import android.content.res.Resources.Theme; import android.hardware.ISerialManager; import android.hardware.SerialManager; import android.os.Handler; @@ -31,11 +36,18 @@ import android.ravenwood.example.RedManager; import android.util.ArrayMap; import android.util.Singleton; +import com.android.internal.annotations.GuardedBy; + +import java.io.File; +import java.io.IOException; import java.util.Objects; import java.util.concurrent.Executor; import java.util.function.Supplier; public class RavenwoodContext extends RavenwoodBaseContext { + private static final String TAG = "Ravenwood"; + + private final Object mLock = new Object(); private final String mPackageName; private final HandlerThread mMainThread; @@ -44,15 +56,31 @@ public class RavenwoodContext extends RavenwoodBaseContext { private final ArrayMap<Class<?>, String> mClassToName = new ArrayMap<>(); private final ArrayMap<String, Supplier<?>> mNameToFactory = new ArrayMap<>(); + private final File mFilesDir; + private final File mCacheDir; + private final Supplier<Resources> mResourcesSupplier; + + private RavenwoodContext mAppContext; + + @GuardedBy("mLock") + private Resources mResources; + + @GuardedBy("mLock") + private Resources.Theme mTheme; + private void registerService(Class<?> serviceClass, String serviceName, Supplier<?> serviceSupplier) { mClassToName.put(serviceClass, serviceName); mNameToFactory.put(serviceName, serviceSupplier); } - public RavenwoodContext(String packageName, HandlerThread mainThread) { + public RavenwoodContext(String packageName, HandlerThread mainThread, + Supplier<Resources> resourcesSupplier) throws IOException { mPackageName = packageName; mMainThread = mainThread; + mResourcesSupplier = resourcesSupplier; + mFilesDir = createTempDir(packageName + "_files-dir"); + mCacheDir = createTempDir(packageName + "_cache-dir"); // Services provided by a typical shipping device registerService(ClipboardManager.class, @@ -85,6 +113,11 @@ public class RavenwoodContext extends RavenwoodBaseContext { } } + void cleanUp() { + deleteDir(mFilesDir); + deleteDir(mCacheDir); + } + @Override public String getSystemServiceName(Class<?> serviceClass) { // TODO: pivot to using SystemServiceRegistry @@ -100,34 +133,35 @@ public class RavenwoodContext extends RavenwoodBaseContext { @Override public Looper getMainLooper() { Objects.requireNonNull(mMainThread, - "Test must request setProvideMainThread() via RavenwoodRule"); + "Test must request setProvideMainThread() via RavenwoodConfig"); return mMainThread.getLooper(); } @Override public Handler getMainThreadHandler() { Objects.requireNonNull(mMainThread, - "Test must request setProvideMainThread() via RavenwoodRule"); + "Test must request setProvideMainThread() via RavenwoodConfig"); return mMainThread.getThreadHandler(); } @Override public Executor getMainExecutor() { Objects.requireNonNull(mMainThread, - "Test must request setProvideMainThread() via RavenwoodRule"); + "Test must request setProvideMainThread() via RavenwoodConfig"); return mMainThread.getThreadExecutor(); } @Override public String getPackageName() { return Objects.requireNonNull(mPackageName, - "Test must request setPackageName() via RavenwoodRule"); + "Test must request setPackageName() (or setTargetPackageName())" + + " via RavenwoodConfig"); } @Override public String getOpPackageName() { return Objects.requireNonNull(mPackageName, - "Test must request setPackageName() via RavenwoodRule"); + "Test must request setPackageName() via RavenwoodConfig"); } @Override @@ -150,6 +184,61 @@ public class RavenwoodContext extends RavenwoodBaseContext { return Context.DEVICE_ID_DEFAULT; } + @Override + public File getFilesDir() { + return mFilesDir; + } + + @Override + public File getCacheDir() { + return mCacheDir; + } + + @Override + public boolean deleteFile(String name) { + File f = new File(name); + return f.delete(); + } + + @Override + public Resources getResources() { + synchronized (mLock) { + if (mResources == null) { + mResources = mResourcesSupplier.get(); + } + return mResources; + } + } + + @Override + public AssetManager getAssets() { + return getResources().getAssets(); + } + + @Override + public Theme getTheme() { + synchronized (mLock) { + if (mTheme == null) { + mTheme = getResources().newTheme(); + } + return mTheme; + } + } + + @Override + public String getPackageResourcePath() { + return new File(RAVENWOOD_RESOURCE_APK).getAbsolutePath(); + } + + public void setApplicationContext(RavenwoodContext appContext) { + mAppContext = appContext; + } + + @Override + public Context getApplicationContext() { + return mAppContext; + } + /** * Wrap the given {@link Supplier} to become memoized. * @@ -175,4 +264,26 @@ public class RavenwoodContext extends RavenwoodBaseContext { public interface ThrowingSupplier<T> { T get() throws Exception; } + + + static File createTempDir(String prefix) throws IOException { + // Create a temp file, delete it and recreate it as a directory. + final File dir = File.createTempFile(prefix + "-", ""); + dir.delete(); + dir.mkdirs(); + return dir; + } + + static void deleteDir(File dir) { + File[] children = dir.listFiles(); + if (children != null) { + for (File child : children) { + if (child.isDirectory()) { + deleteDir(child); + } else { + child.delete(); + } + } + } + } } diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodEnablementChecker.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodEnablementChecker.java new file mode 100644 index 000000000000..77275c445dd9 --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodEnablementChecker.java @@ -0,0 +1,117 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.annotations.EnabledOnRavenwood; +import android.platform.test.annotations.IgnoreUnderRavenwood; + +import org.junit.runner.Description; + +/** + * Calculates which tests need to be executed on Ravenwood. + */ +public class RavenwoodEnablementChecker { + private static final String TAG = "RavenwoodDisablementChecker"; + + private RavenwoodEnablementChecker() { + } + + /** + * Determine if the given {@link Description} should be enabled when running on the + * Ravenwood test environment. + * + * A more specific method-level annotation always takes precedence over any class-level + * annotation, and an {@link EnabledOnRavenwood} annotation always takes precedence over + * an {@link DisabledOnRavenwood} annotation. + */ + public static boolean shouldEnableOnRavenwood(Description description, + boolean takeIntoAccountRunDisabledTestsFlag) { + // First, consult any method-level annotations + if (description.isTest()) { + Boolean result = null; + + // Stopgap for http://g/ravenwood/EPAD-N5ntxM + if (description.getMethodName().endsWith("$noRavenwood")) { + result = false; + } else if (description.getAnnotation(EnabledOnRavenwood.class) != null) { + result = true; + } else if (description.getAnnotation(DisabledOnRavenwood.class) != null) { + result = false; + } else if (description.getAnnotation(IgnoreUnderRavenwood.class) != null) { + result = false; + } + if (result != null) { + if (takeIntoAccountRunDisabledTestsFlag + && RavenwoodRule.private$ravenwood().isRunningDisabledTests()) { + result = !shouldStillIgnoreInProbeIgnoreMode( + description.getTestClass(), description.getMethodName()); + } + } + if (result != null) { + return result; + } + } + + // Otherwise, consult any class-level annotations + return shouldRunClassOnRavenwood(description.getTestClass(), + takeIntoAccountRunDisabledTestsFlag); + } + + public static boolean shouldRunClassOnRavenwood(@NonNull Class<?> testClass, + boolean takeIntoAccountRunDisabledTestsFlag) { + boolean result = true; + if (testClass.getAnnotation(EnabledOnRavenwood.class) != null) { + result = true; + } else if (testClass.getAnnotation(DisabledOnRavenwood.class) != null) { + result = false; + } else if (testClass.getAnnotation(IgnoreUnderRavenwood.class) != null) { + result = false; + } + if (!result) { + if (takeIntoAccountRunDisabledTestsFlag + && RavenwoodRule.private$ravenwood().isRunningDisabledTests()) { + result = !shouldStillIgnoreInProbeIgnoreMode(testClass, null); + } + } + return result; + } + + /** + * Check if a test should _still_ disabled even if {@code RUN_DISABLED_TESTS} + * is true, using {@code REALLY_DISABLED_PATTERN}. + * + * This only works on tests, not on classes. + */ + static boolean shouldStillIgnoreInProbeIgnoreMode( + @NonNull Class<?> testClass, @Nullable String methodName) { + if (RavenwoodRule.private$ravenwood().getReallyDisabledPattern().pattern().isEmpty()) { + return false; + } + + final var fullname = testClass.getName() + (methodName != null ? "#" + methodName : ""); + + System.out.println("XXX=" + fullname); + + if (RavenwoodRule.private$ravenwood().getReallyDisabledPattern().matcher(fullname).find()) { + System.out.println("Still ignoring " + fullname); + return true; + } + return false; + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodNativeLoader.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodNativeLoader.java new file mode 100644 index 000000000000..a208d6dce2ce --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodNativeLoader.java @@ -0,0 +1,135 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import com.android.ravenwood.common.RavenwoodCommonUtils; + +import java.util.Arrays; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * We use this class to load libandroid_runtime. + * In the future, we may load other native libraries. + */ +public final class RavenwoodNativeLoader { + public static final String CORE_NATIVE_CLASSES = "core_native_classes"; + public static final String ICU_DATA_PATH = "icu.data.path"; + public static final String KEYBOARD_PATHS = "keyboard_paths"; + public static final String GRAPHICS_NATIVE_CLASSES = "graphics_native_classes"; + + public static final String LIBANDROID_RUNTIME_NAME = "android_runtime"; + + /** + * Classes with native methods that are backed by libandroid_runtime. + * + * See frameworks/base/core/jni/platform/host/HostRuntime.cpp + */ + private static final Class<?>[] sLibandroidClasses = { +// android.util.Log.class, // Not using native log: b/377377826 + android.os.Parcel.class, + android.os.Binder.class, + android.os.SystemProperties.class, + android.content.res.ApkAssets.class, + android.content.res.AssetManager.class, + android.content.res.StringBlock.class, + android.content.res.XmlBlock.class, + }; + + /** + * Classes with native methods that are backed by libhwui. + * + * See frameworks/base/libs/hwui/apex/LayoutlibLoader.cpp + */ + private static final Class<?>[] sLibhwuiClasses = { + android.graphics.Interpolator.class, + android.graphics.Matrix.class, + android.graphics.Path.class, + android.graphics.Color.class, + android.graphics.ColorSpace.class, + }; + + /** + * Extra strings needed to pass to register_android_graphics_classes(). + * + * `android.graphics.Graphics` is not actually a class, so we just hardcode it here. + */ + public final static String[] GRAPHICS_EXTRA_INIT_PARAMS = new String[] { + "android.graphics.Graphics" + }; + + private RavenwoodNativeLoader() { + } + + private static void log(String message) { + System.out.println("RavenwoodNativeLoader: " + message); + } + + private static void log(String fmt, Object... args) { + log(String.format(fmt, args)); + } + + private static void ensurePropertyNotSet(String key) { + if (System.getProperty(key) != null) { + throw new RuntimeException("System property \"" + key + "\" is set unexpectedly"); + } + } + + private static void setProperty(String key, String value) { + System.setProperty(key, value); + log("Property set: %s=\"%s\"", key, value); + } + + private static void dumpSystemProperties() { + for (var prop : System.getProperties().entrySet()) { + log(" %s=\"%s\"", prop.getKey(), prop.getValue()); + } + } + + /** + * libandroid_runtime uses Java's system properties to decide what JNI methods to set up. + * Set up these properties and load the native library + */ + public static void loadFrameworkNativeCode() { + if ("1".equals(System.getenv("RAVENWOOD_DUMP_PROPERTIES"))) { + log("Java system properties:"); + dumpSystemProperties(); + } + + // Make sure these properties are not set. + ensurePropertyNotSet(CORE_NATIVE_CLASSES); + ensurePropertyNotSet(ICU_DATA_PATH); + ensurePropertyNotSet(KEYBOARD_PATHS); + ensurePropertyNotSet(GRAPHICS_NATIVE_CLASSES); + + // Build the property values + final var joiner = Collectors.joining(","); + final var libandroidClasses = + Arrays.stream(sLibandroidClasses).map(Class::getName).collect(joiner); + final var libhwuiClasses = Stream.concat( + Arrays.stream(sLibhwuiClasses).map(Class::getName), + Arrays.stream(GRAPHICS_EXTRA_INIT_PARAMS) + ).collect(joiner); + + // Load the libraries + setProperty(CORE_NATIVE_CLASSES, libandroidClasses); + setProperty(GRAPHICS_NATIVE_CLASSES, libhwuiClasses); + log("Loading " + LIBANDROID_RUNTIME_NAME + " for '" + libandroidClasses + "' and '" + + libhwuiClasses + "'"); + RavenwoodCommonUtils.loadJniLibrary(LIBANDROID_RUNTIME_NAME); + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java deleted file mode 100644 index 49e793fcbddf..000000000000 --- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java +++ /dev/null @@ -1,303 +0,0 @@ -/* - * 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.platform.test.ravenwood; - -import static org.junit.Assert.assertFalse; - -import android.app.ActivityManager; -import android.app.Instrumentation; -import android.os.Build; -import android.os.Bundle; -import android.os.HandlerThread; -import android.os.Looper; -import android.os.ServiceManager; -import android.util.Log; - -import androidx.test.platform.app.InstrumentationRegistry; - -import com.android.internal.os.RuntimeInit; -import com.android.server.LocalServices; - -import org.junit.After; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.Description; -import org.junit.runner.RunWith; -import org.junit.runners.model.Statement; - -import java.io.PrintStream; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.ScheduledFuture; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicReference; - -public class RavenwoodRuleImpl { - private static final String MAIN_THREAD_NAME = "RavenwoodMain"; - - /** - * When enabled, attempt to dump all thread stacks just before we hit the - * overall Tradefed timeout, to aid in debugging deadlocks. - */ - private static final boolean ENABLE_TIMEOUT_STACKS = false; - private static final int TIMEOUT_MILLIS = 9_000; - - private static final ScheduledExecutorService sTimeoutExecutor = - Executors.newScheduledThreadPool(1); - - private static ScheduledFuture<?> sPendingTimeout; - - /** - * When enabled, attempt to detect uncaught exceptions from background threads. - */ - private static final boolean ENABLE_UNCAUGHT_EXCEPTION_DETECTION = false; - - /** - * When set, an unhandled exception was discovered (typically on a background thread), and we - * capture it here to ensure it's reported as a test failure. - */ - private static final AtomicReference<Throwable> sPendingUncaughtException = - new AtomicReference<>(); - - private static final Thread.UncaughtExceptionHandler sUncaughtExceptionHandler = - (thread, throwable) -> { - // Remember the first exception we discover - sPendingUncaughtException.compareAndSet(null, throwable); - }; - - public static void init(RavenwoodRule rule) { - if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) { - maybeThrowPendingUncaughtException(false); - Thread.setDefaultUncaughtExceptionHandler(sUncaughtExceptionHandler); - } - - RuntimeInit.redirectLogStreams(); - - android.os.Process.init$ravenwood(rule.mUid, rule.mPid); - android.os.Binder.init$ravenwood(); -// android.os.SystemProperties.init$ravenwood( -// rule.mSystemProperties.getValues(), -// rule.mSystemProperties.getKeyReadablePredicate(), -// rule.mSystemProperties.getKeyWritablePredicate()); - setSystemProperties(rule.mSystemProperties); - - ServiceManager.init$ravenwood(); - LocalServices.removeAllServicesForTest(); - - ActivityManager.init$ravenwood(rule.mCurrentUser); - - final HandlerThread main; - if (rule.mProvideMainThread) { - main = new HandlerThread(MAIN_THREAD_NAME); - main.start(); - Looper.setMainLooperForTest(main.getLooper()); - } else { - main = null; - } - - rule.mContext = new RavenwoodContext(rule.mPackageName, main); - rule.mInstrumentation = new Instrumentation(); - rule.mInstrumentation.basicInit(rule.mContext); - InstrumentationRegistry.registerInstance(rule.mInstrumentation, Bundle.EMPTY); - - RavenwoodSystemServer.init(rule); - - if (ENABLE_TIMEOUT_STACKS) { - sPendingTimeout = sTimeoutExecutor.schedule(RavenwoodRuleImpl::dumpStacks, - TIMEOUT_MILLIS, TimeUnit.MILLISECONDS); - } - - // Touch some references early to ensure they're <clinit>'ed - Objects.requireNonNull(Build.TYPE); - Objects.requireNonNull(Build.VERSION.SDK); - } - - public static void reset(RavenwoodRule rule) { - if (ENABLE_TIMEOUT_STACKS) { - sPendingTimeout.cancel(false); - } - - RavenwoodSystemServer.reset(rule); - - InstrumentationRegistry.registerInstance(null, Bundle.EMPTY); - rule.mInstrumentation = null; - rule.mContext = null; - - if (rule.mProvideMainThread) { - Looper.getMainLooper().quit(); - Looper.clearMainLooperForTest(); - } - - ActivityManager.reset$ravenwood(); - - LocalServices.removeAllServicesForTest(); - ServiceManager.reset$ravenwood(); - - setSystemProperties(RavenwoodSystemProperties.DEFAULT_VALUES); - android.os.Binder.reset$ravenwood(); - android.os.Process.reset$ravenwood(); - - if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) { - maybeThrowPendingUncaughtException(true); - } - } - - public static void logTestRunner(String label, Description description) { - // This message string carefully matches the exact format emitted by on-device tests, to - // aid developers in debugging raw text logs - Log.e("TestRunner", label + ": " + description.getMethodName() - + "(" + description.getTestClass().getName() + ")"); - } - - private static void dumpStacks() { - final PrintStream out = System.err; - out.println("-----BEGIN ALL THREAD STACKS-----"); - final Map<Thread, StackTraceElement[]> stacks = Thread.getAllStackTraces(); - for (Map.Entry<Thread, StackTraceElement[]> stack : stacks.entrySet()) { - out.println(); - Thread t = stack.getKey(); - out.println(t.toString() + " ID=" + t.getId()); - for (StackTraceElement e : stack.getValue()) { - out.println("\tat " + e); - } - } - out.println("-----END ALL THREAD STACKS-----"); - } - - /** - * If there's a pending uncaught exception, consume and throw it now. Typically used to - * report an exception on a background thread as a failure for the currently running test. - */ - private static void maybeThrowPendingUncaughtException(boolean duringReset) { - final Throwable pending = sPendingUncaughtException.getAndSet(null); - if (pending != null) { - if (duringReset) { - throw new IllegalStateException( - "Found an uncaught exception during this test", pending); - } else { - throw new IllegalStateException( - "Found an uncaught exception before this test started", pending); - } - } - } - - public static void validate(Statement base, Description description, - boolean enableOptionalValidation) { - validateTestRunner(base, description, enableOptionalValidation); - validateTestAnnotations(base, description, enableOptionalValidation); - } - - private static void validateTestRunner(Statement base, Description description, - boolean shouldFail) { - final var testClass = description.getTestClass(); - final var runWith = testClass.getAnnotation(RunWith.class); - if (runWith == null) { - return; - } - - // Due to build dependencies, we can't directly refer to androidx classes here, - // so just check the class name instead. - if (runWith.value().getCanonicalName().equals("androidx.test.runner.AndroidJUnit4")) { - var message = "Test " + testClass.getCanonicalName() + " uses deprecated" - + " test runner androidx.test.runner.AndroidJUnit4." - + " Switch to androidx.test.ext.junit.runners.AndroidJUnit4."; - if (shouldFail) { - Assert.fail(message); - } else { - System.err.println("Warning: " + message); - } - } - } - - private static void validateTestAnnotations(Statement base, Description description, - boolean enableOptionalValidation) { - final var testClass = description.getTestClass(); - - final var message = new StringBuilder(); - - boolean hasErrors = false; - for (Method m : collectMethods(testClass)) { - if (Modifier.isPublic(m.getModifiers()) && m.getName().startsWith("test")) { - if (m.getAnnotation(Test.class) == null) { - message.append("\nMethod " + m.getName() + "() doesn't have @Test"); - hasErrors = true; - } - } - if ("setUp".equals(m.getName())) { - if (m.getAnnotation(Before.class) == null) { - message.append("\nMethod " + m.getName() + "() doesn't have @Before"); - hasErrors = true; - } - if (!Modifier.isPublic(m.getModifiers())) { - message.append("\nMethod " + m.getName() + "() must be public"); - hasErrors = true; - } - } - if ("tearDown".equals(m.getName())) { - if (m.getAnnotation(After.class) == null) { - message.append("\nMethod " + m.getName() + "() doesn't have @After"); - hasErrors = true; - } - if (!Modifier.isPublic(m.getModifiers())) { - message.append("\nMethod " + m.getName() + "() must be public"); - hasErrors = true; - } - } - } - assertFalse("Problem(s) detected in class " + testClass.getCanonicalName() + ":" - + message, hasErrors); - } - - /** - * Collect all (public or private or any) methods in a class, including inherited methods. - */ - private static List<Method> collectMethods(Class<?> clazz) { - var ret = new ArrayList<Method>(); - collectMethods(clazz, ret); - return ret; - } - - private static void collectMethods(Class<?> clazz, List<Method> result) { - // Class.getMethods() only return public methods, so we need to use getDeclaredMethods() - // instead, and recurse. - for (var m : clazz.getDeclaredMethods()) { - result.add(m); - } - if (clazz.getSuperclass() != null) { - collectMethods(clazz.getSuperclass(), result); - } - } - - /** - * Set the current configuration to the actual SystemProperties. - */ - public static void setSystemProperties(RavenwoodSystemProperties ravenwoodSystemProperties) { - var clone = new RavenwoodSystemProperties(ravenwoodSystemProperties, true); - - android.os.SystemProperties.init$ravenwood( - clone.getValues(), - clone.getKeyReadablePredicate(), - clone.getKeyWritablePredicate()); - } -} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunNotifier.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunNotifier.java new file mode 100644 index 000000000000..69030350bf82 --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunNotifier.java @@ -0,0 +1,227 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.util.Log; + +import org.junit.AssumptionViolatedException; +import org.junit.runner.Description; +import org.junit.runner.Result; +import org.junit.runner.notification.Failure; +import org.junit.runner.notification.RunListener; +import org.junit.runner.notification.RunNotifier; +import org.junit.runner.notification.StoppedByUserException; +import org.junit.runners.model.MultipleFailureException; + +import java.util.ArrayList; +import java.util.Stack; + +/** + * A run notifier that wraps another notifier and provides the following features: + * - Handle a failure that happened before testStarted and testEnded (typically that means + * it's from @BeforeClass or @AfterClass, or a @ClassRule) and deliver it as if + * individual tests in the class reported it. This is for b/364395552. + * + * - Logging. + */ +class RavenwoodRunNotifier extends RunNotifier { + private final RunNotifier mRealNotifier; + + private final Stack<Description> mSuiteStack = new Stack<>(); + private Description mCurrentSuite = null; + private final ArrayList<Throwable> mOutOfTestFailures = new ArrayList<>(); + + private boolean mBeforeTest = true; + private boolean mAfterTest = false; + + RavenwoodRunNotifier(RunNotifier realNotifier) { + mRealNotifier = realNotifier; + } + + private boolean isInTest() { + return !mBeforeTest && !mAfterTest; + } + + @Override + public void addListener(RunListener listener) { + mRealNotifier.addListener(listener); + } + + @Override + public void removeListener(RunListener listener) { + mRealNotifier.removeListener(listener); + } + + @Override + public void addFirstListener(RunListener listener) { + mRealNotifier.addFirstListener(listener); + } + + @Override + public void fireTestRunStarted(Description description) { + Log.i(RavenwoodAwareTestRunner.TAG, "testRunStarted: " + description); + mRealNotifier.fireTestRunStarted(description); + } + + @Override + public void fireTestRunFinished(Result result) { + Log.i(RavenwoodAwareTestRunner.TAG, "testRunFinished: " + + result.getRunCount() + "," + + result.getFailureCount() + "," + + result.getAssumptionFailureCount() + "," + + result.getIgnoreCount()); + mRealNotifier.fireTestRunFinished(result); + } + + @Override + public void fireTestSuiteStarted(Description description) { + Log.i(RavenwoodAwareTestRunner.TAG, "testSuiteStarted: " + description); + mRealNotifier.fireTestSuiteStarted(description); + + mBeforeTest = true; + mAfterTest = false; + + // Keep track of the current suite, needed if the outer test is a Suite, + // in which case its children are test classes. (not test methods) + mCurrentSuite = description; + mSuiteStack.push(description); + + mOutOfTestFailures.clear(); + } + + @Override + public void fireTestSuiteFinished(Description description) { + Log.i(RavenwoodAwareTestRunner.TAG, "testSuiteFinished: " + description); + mRealNotifier.fireTestSuiteFinished(description); + + maybeHandleOutOfTestFailures(); + + mBeforeTest = true; + mAfterTest = false; + + // Restore the upper suite. + mSuiteStack.pop(); + mCurrentSuite = mSuiteStack.size() == 0 ? null : mSuiteStack.peek(); + } + + @Override + public void fireTestStarted(Description description) throws StoppedByUserException { + Log.i(RavenwoodAwareTestRunner.TAG, "testStarted: " + description); + mRealNotifier.fireTestStarted(description); + + mAfterTest = false; + mBeforeTest = false; + } + + @Override + public void fireTestFailure(Failure failure) { + Log.i(RavenwoodAwareTestRunner.TAG, "testFailure: " + failure); + + if (isInTest()) { + mRealNotifier.fireTestFailure(failure); + } else { + mOutOfTestFailures.add(failure.getException()); + } + } + + @Override + public void fireTestAssumptionFailed(Failure failure) { + Log.i(RavenwoodAwareTestRunner.TAG, "testAssumptionFailed: " + failure); + + if (isInTest()) { + mRealNotifier.fireTestAssumptionFailed(failure); + } else { + mOutOfTestFailures.add(failure.getException()); + } + } + + @Override + public void fireTestIgnored(Description description) { + Log.i(RavenwoodAwareTestRunner.TAG, "testIgnored: " + description); + mRealNotifier.fireTestIgnored(description); + } + + @Override + public void fireTestFinished(Description description) { + Log.i(RavenwoodAwareTestRunner.TAG, "testFinished: " + description); + mRealNotifier.fireTestFinished(description); + + mAfterTest = true; + } + + @Override + public void pleaseStop() { + Log.w(RavenwoodAwareTestRunner.TAG, "pleaseStop:"); + mRealNotifier.pleaseStop(); + } + + /** + * At the end of each Suite, we handle failures happened out of test methods. + * (typically in @BeforeClass or @AfterClasses) + * + * This is to work around b/364395552. + */ + private boolean maybeHandleOutOfTestFailures() { + if (mOutOfTestFailures.size() == 0) { + return false; + } + Throwable th; + if (mOutOfTestFailures.size() == 1) { + th = mOutOfTestFailures.get(0); + } else { + th = new MultipleFailureException(mOutOfTestFailures); + } + if (mBeforeTest) { + reportBeforeTestFailure(mCurrentSuite, th); + return true; + } + if (mAfterTest) { + reportAfterTestFailure(th); + return true; + } + return false; + } + + public void reportBeforeTestFailure(Description suiteDesc, Throwable th) { + // If a failure happens befere running any tests, we'll need to pretend + // as if each test in the suite reported the failure, to work around b/364395552. + for (var child : suiteDesc.getChildren()) { + if (child.isSuite()) { + // If the chiil is still a "parent" -- a test class or a test suite + // -- propagate to its children. + mRealNotifier.fireTestSuiteStarted(child); + reportBeforeTestFailure(child, th); + mRealNotifier.fireTestSuiteFinished(child); + } else { + mRealNotifier.fireTestStarted(child); + Failure f = new Failure(child, th); + if (th instanceof AssumptionViolatedException) { + mRealNotifier.fireTestAssumptionFailed(f); + } else { + mRealNotifier.fireTestFailure(f); + } + mRealNotifier.fireTestFinished(child); + } + } + } + + public void reportAfterTestFailure(Throwable th) { + // Unfortunately, there's no good way to report it, so kill the own process. + RavenwoodAwareTestRunner.onCriticalError( + "Failures detected in @AfterClass, which would be swallowed by tradefed", + th); + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java new file mode 100644 index 000000000000..ec00e8fea887 --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java @@ -0,0 +1,258 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import static com.android.ravenwood.common.RavenwoodCommonUtils.ensureIsPublicMember; + +import static org.junit.Assert.fail; + +import android.annotation.Nullable; +import android.util.Log; + +import com.android.ravenwood.common.RavenwoodRuntimeException; + +import org.junit.ClassRule; +import org.junit.Rule; +import org.junit.rules.TestRule; +import org.junit.runner.Description; + +import java.lang.reflect.Field; + +/** + * Used to store various states associated with the current test runner that's inly needed + * in junit-impl. + * + * We don't want to put it in junit-src to avoid having to recompile all the downstream + * dependencies after changing this class. + * + * All members must be called from the runner's main thread. + */ +public final class RavenwoodRunnerState { + private static final String TAG = "RavenwoodRunnerState"; + + private final RavenwoodAwareTestRunner mRunner; + + /** + * Ctor. + */ + public RavenwoodRunnerState(RavenwoodAwareTestRunner runner) { + mRunner = runner; + } + + /** + * The RavenwoodConfig used to configure the current Ravenwood environment. + * This can either come from mConfig or mRule. + */ + private RavenwoodConfig mCurrentConfig; + /** + * The RavenwoodConfig declared in the test class + */ + private RavenwoodConfig mConfig; + /** + * The RavenwoodRule currently in effect, declared in the test class + */ + private RavenwoodRule mRule; + private boolean mHasRavenwoodRule; + private Description mMethodDescription; + + public RavenwoodConfig getConfig() { + return mCurrentConfig; + } + + public void enterTestRunner() { + Log.i(TAG, "enterTestRunner: " + mRunner); + + mHasRavenwoodRule = hasRavenwoodRule(mRunner.mTestJavaClass); + mConfig = extractConfiguration(mRunner.mTestJavaClass); + + if (mConfig != null) { + if (mHasRavenwoodRule) { + fail("RavenwoodConfig and RavenwoodRule cannot be used in the same class." + + " Suggest migrating to RavenwoodConfig."); + } + mCurrentConfig = mConfig; + } else if (!mHasRavenwoodRule) { + // If no RavenwoodConfig and no RavenwoodRule, use a default config + mCurrentConfig = new RavenwoodConfig.Builder().build(); + } + + if (mCurrentConfig != null) { + RavenwoodRuntimeEnvironmentController.init(mRunner); + } + } + + public void enterTestClass() { + Log.i(TAG, "enterTestClass: " + mRunner.mTestJavaClass.getName()); + + if (mCurrentConfig != null) { + RavenwoodRuntimeEnvironmentController.init(mRunner); + } + } + + public void exitTestClass() { + Log.i(TAG, "exitTestClass: " + mRunner.mTestJavaClass.getName()); + try { + if (mCurrentConfig != null) { + RavenwoodRuntimeEnvironmentController.reset(); + } + } finally { + mConfig = null; + mRule = null; + } + } + + public void enterTestMethod(Description description) { + mMethodDescription = description; + } + + public void exitTestMethod() { + mMethodDescription = null; + RavenwoodRuntimeEnvironmentController.reinit(); + } + + public void enterRavenwoodRule(RavenwoodRule rule) { + if (!mHasRavenwoodRule) { + fail("If you have a RavenwoodRule in your test, make sure the field type is" + + " RavenwoodRule so Ravenwood can detect it."); + } + if (mRule != null) { + fail("Multiple nesting RavenwoodRule's are detected in the same class," + + " which is not supported."); + } + mRule = rule; + if (mCurrentConfig == null) { + mCurrentConfig = rule.getConfiguration(); + } + RavenwoodRuntimeEnvironmentController.init(mRunner); + } + + public void exitRavenwoodRule(RavenwoodRule rule) { + if (mRule != rule) { + fail("RavenwoodRule did not take effect."); + } + mRule = null; + } + + /** + * @return a configuration from a test class, if any. + */ + @Nullable + private static RavenwoodConfig extractConfiguration(Class<?> testClass) { + var field = findConfigurationField(testClass); + if (field == null) { + return null; + } + + try { + return (RavenwoodConfig) field.get(null); + } catch (IllegalAccessException e) { + throw new RavenwoodRuntimeException("Failed to fetch from the configuration field", e); + } + } + + /** + * @return true if the current target class (or its super classes) has any @Rule / @ClassRule + * fields of type RavenwoodRule. + * + * Note, this check won't detect cases where a Rule is of type + * {@link TestRule} and still be a {@link RavenwoodRule}. But that'll be detected at runtime + * as a failure, in {@link #enterRavenwoodRule}. + */ + private static boolean hasRavenwoodRule(Class<?> testClass) { + for (var field : testClass.getDeclaredFields()) { + if (!field.isAnnotationPresent(Rule.class) + && !field.isAnnotationPresent(ClassRule.class)) { + continue; + } + if (field.getType().equals(RavenwoodRule.class)) { + return true; + } + } + // JUnit supports rules as methods, so we need to check them too. + for (var method : testClass.getDeclaredMethods()) { + if (!method.isAnnotationPresent(Rule.class) + && !method.isAnnotationPresent(ClassRule.class)) { + continue; + } + if (method.getReturnType().equals(RavenwoodRule.class)) { + return true; + } + } + // Look into the super class. + if (!testClass.getSuperclass().equals(Object.class)) { + return hasRavenwoodRule(testClass.getSuperclass()); + } + return false; + } + + /** + * Find and return a field with @RavenwoodConfig.Config, which must be of type + * RavenwoodConfig. + */ + @Nullable + private static Field findConfigurationField(Class<?> testClass) { + Field foundField = null; + + for (var field : testClass.getDeclaredFields()) { + final var hasAnot = field.isAnnotationPresent(RavenwoodConfig.Config.class); + final var isType = field.getType().equals(RavenwoodConfig.class); + + if (hasAnot) { + if (isType) { + // Good, use this field. + if (foundField != null) { + fail(String.format( + "Class %s has multiple fields with %s", + testClass.getCanonicalName(), + "@RavenwoodConfig.Config")); + } + // Make sure it's static public + ensureIsPublicMember(field, true); + + foundField = field; + } else { + fail(String.format( + "Field %s.%s has %s but type is not %s", + testClass.getCanonicalName(), + field.getName(), + "@RavenwoodConfig.Config", + "RavenwoodConfig")); + return null; // unreachable + } + } else { + if (isType) { + fail(String.format( + "Field %s.%s does not have %s but type is %s", + testClass.getCanonicalName(), + field.getName(), + "@RavenwoodConfig.Config", + "RavenwoodConfig")); + return null; // unreachable + } else { + // Unrelated field, ignore. + continue; + } + } + } + if (foundField != null) { + return foundField; + } + if (!testClass.getSuperclass().equals(Object.class)) { + return findConfigurationField(testClass.getSuperclass()); + } + return null; + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java new file mode 100644 index 000000000000..c5a9c7b28ad3 --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java @@ -0,0 +1,518 @@ +/* + * 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.platform.test.ravenwood; + +import static android.platform.test.ravenwood.RavenwoodSystemServer.ANDROID_PACKAGE_NAME; + +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_INST_RESOURCE_APK; +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_RESOURCE_APK; +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_VERBOSE_LOGGING; +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_VERSION_JAVA_SYSPROP; + +import static org.junit.Assert.assertThrows; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; + +import android.annotation.Nullable; +import android.app.ActivityManager; +import android.app.Instrumentation; +import android.app.ResourcesManager; +import android.app.UiAutomation; +import android.content.res.Resources; +import android.os.Binder; +import android.os.Build; +import android.os.Bundle; +import android.os.HandlerThread; +import android.os.Looper; +import android.os.Process_ravenwood; +import android.os.ServiceManager; +import android.os.SystemProperties; +import android.provider.DeviceConfig_host; +import android.system.ErrnoException; +import android.system.Os; +import android.util.Log; + +import androidx.test.platform.app.InstrumentationRegistry; + +import com.android.hoststubgen.hosthelper.HostTestUtils; +import com.android.internal.annotations.GuardedBy; +import com.android.internal.os.RuntimeInit; +import com.android.ravenwood.RavenwoodRuntimeNative; +import com.android.ravenwood.RavenwoodRuntimeState; +import com.android.ravenwood.common.RavenwoodCommonUtils; +import com.android.ravenwood.common.RavenwoodRuntimeException; +import com.android.ravenwood.common.SneakyThrow; +import com.android.server.LocalServices; + +import org.junit.runner.Description; + +import java.io.File; +import java.io.IOException; +import java.io.PrintStream; +import java.util.Collections; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ScheduledFuture; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Supplier; + +/** + * Responsible for initializing and de-initializing the environment, according to a + * {@link RavenwoodConfig}. + */ +public class RavenwoodRuntimeEnvironmentController { + private static final String TAG = "RavenwoodRuntimeEnvironmentController"; + + private RavenwoodRuntimeEnvironmentController() { + } + + private static final String MAIN_THREAD_NAME = "RavenwoodMain"; + private static final String LIBRAVENWOOD_INITIALIZER_NAME = "ravenwood_initializer"; + private static final String RAVENWOOD_NATIVE_SYSPROP_NAME = "ravenwood_sysprop"; + private static final String RAVENWOOD_NATIVE_RUNTIME_NAME = "ravenwood_runtime"; + + /** + * When enabled, attempt to dump all thread stacks just before we hit the + * overall Tradefed timeout, to aid in debugging deadlocks. + */ + private static final boolean ENABLE_TIMEOUT_STACKS = + "1".equals(System.getenv("RAVENWOOD_ENABLE_TIMEOUT_STACKS")); + + private static final int TIMEOUT_MILLIS = 9_000; + + private static final ScheduledExecutorService sTimeoutExecutor = + Executors.newScheduledThreadPool(1); + + private static ScheduledFuture<?> sPendingTimeout; + + private static long sOriginalIdentityToken = -1; + + /** + * When enabled, attempt to detect uncaught exceptions from background threads. + */ + private static final boolean ENABLE_UNCAUGHT_EXCEPTION_DETECTION = + "1".equals(System.getenv("RAVENWOOD_ENABLE_UNCAUGHT_EXCEPTION_DETECTION")); + + /** + * When set, an unhandled exception was discovered (typically on a background thread), and we + * capture it here to ensure it's reported as a test failure. + */ + private static final AtomicReference<Throwable> sPendingUncaughtException = + new AtomicReference<>(); + + private static final Thread.UncaughtExceptionHandler sUncaughtExceptionHandler = + (thread, throwable) -> { + // Remember the first exception we discover + sPendingUncaughtException.compareAndSet(null, throwable); + }; + + // TODO: expose packCallingIdentity function in libbinder and use it directly + // See: packCallingIdentity in frameworks/native/libs/binder/IPCThreadState.cpp + private static long packBinderIdentityToken( + boolean hasExplicitIdentity, int callingUid, int callingPid) { + long res = ((long) callingUid << 32) | callingPid; + if (hasExplicitIdentity) { + res |= (0x1 << 30); + } else { + res &= ~(0x1 << 30); + } + return res; + } + + private static final Object sInitializationLock = new Object(); + + @GuardedBy("sInitializationLock") + private static boolean sInitialized = false; + + @GuardedBy("sInitializationLock") + private static Throwable sExceptionFromGlobalInit; + + private static RavenwoodAwareTestRunner sRunner; + private static RavenwoodSystemProperties sProps; + + /** + * Initialize the global environment. + */ + public static void globalInitOnce() { + synchronized (sInitializationLock) { + if (!sInitialized) { + // globalInitOnce() is called from class initializer, which cause + // this method to be called recursively, + sInitialized = true; + + // This is the first call. + try { + globalInitInner(); + } catch (Throwable th) { + Log.e(TAG, "globalInit() failed", th); + + sExceptionFromGlobalInit = th; + throw th; + } + } else { + // Subsequent calls. If the first call threw, just throw the same error, to prevent + // the test from running. + if (sExceptionFromGlobalInit != null) { + Log.e(TAG, "globalInit() failed re-throwing the same exception", + sExceptionFromGlobalInit); + + SneakyThrow.sneakyThrow(sExceptionFromGlobalInit); + } + } + } + } + + private static void globalInitInner() { + if (RAVENWOOD_VERBOSE_LOGGING) { + Log.v(TAG, "globalInit() called here...", new RuntimeException("NOT A CRASH")); + } + + // Some process-wide initialization. (maybe redirect stdout/stderr) + RavenwoodCommonUtils.loadJniLibrary(LIBRAVENWOOD_INITIALIZER_NAME); + + // We haven't initialized liblog yet, so directly write to System.out here. + RavenwoodCommonUtils.log(TAG, "globalInitInner()"); + + // Load libravenwood_sysprop before other libraries that may use SystemProperties. + var libProp = RavenwoodCommonUtils.getJniLibraryPath(RAVENWOOD_NATIVE_SYSPROP_NAME); + System.load(libProp); + RavenwoodRuntimeNative.reloadNativeLibrary(libProp); + + // Make sure libravenwood_runtime is loaded. + System.load(RavenwoodCommonUtils.getJniLibraryPath(RAVENWOOD_NATIVE_RUNTIME_NAME)); + + // Do the basic set up for the android sysprops. + RavenwoodSystemProperties.initialize(); + setSystemProperties(null); + + // Do this after loading RAVENWOOD_NATIVE_RUNTIME_NAME (which backs Os.setenv()), + // before loadFrameworkNativeCode() (which uses $ANDROID_LOG_TAGS). + if (RAVENWOOD_VERBOSE_LOGGING) { + RavenwoodCommonUtils.log(TAG, "Force enabling verbose logging"); + try { + Os.setenv("ANDROID_LOG_TAGS", "*:v", true); + } catch (ErrnoException e) { + throw new RuntimeException(e); + } + } + + // Make sure libandroid_runtime is loaded. + RavenwoodNativeLoader.loadFrameworkNativeCode(); + + // Redirect stdout/stdin to liblog. + RuntimeInit.redirectLogStreams(); + + // Touch some references early to ensure they're <clinit>'ed + Objects.requireNonNull(Build.TYPE); + Objects.requireNonNull(Build.VERSION.SDK); + + System.setProperty(RAVENWOOD_VERSION_JAVA_SYSPROP, "1"); + // This will let AndroidJUnit4 use the original runner. + System.setProperty("android.junit.runner", + "androidx.test.internal.runner.junit4.AndroidJUnit4ClassRunner"); + + assertMockitoVersion(); + } + + /** + * Initialize the environment. + */ + public static void init(RavenwoodAwareTestRunner runner) { + if (RAVENWOOD_VERBOSE_LOGGING) { + Log.v(TAG, "init() called here: " + runner, new RuntimeException("STACKTRACE")); + } + if (sRunner == runner) { + return; + } + if (sRunner != null) { + reset(); + } + sRunner = runner; + try { + initInner(runner.mState.getConfig()); + } catch (Exception th) { + Log.e(TAG, "init() failed", th); + reset(); + SneakyThrow.sneakyThrow(th); + } + } + + private static void initInner(RavenwoodConfig config) throws IOException { + if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) { + maybeThrowPendingUncaughtException(false); + Thread.setDefaultUncaughtExceptionHandler(sUncaughtExceptionHandler); + } + + RavenwoodRuntimeState.sUid = config.mUid; + RavenwoodRuntimeState.sPid = config.mPid; + RavenwoodRuntimeState.sTargetSdkLevel = config.mTargetSdkLevel; + sOriginalIdentityToken = Binder.clearCallingIdentity(); + reinit(); + setSystemProperties(config.mSystemProperties); + + ServiceManager.init$ravenwood(); + LocalServices.removeAllServicesForTest(); + + ActivityManager.init$ravenwood(config.mCurrentUser); + + final var main = new HandlerThread(MAIN_THREAD_NAME); + main.start(); + Looper.setMainLooperForTest(main.getLooper()); + + final boolean isSelfInstrumenting = + Objects.equals(config.mTestPackageName, config.mTargetPackageName); + + // This will load the resources from the apk set to `resource_apk` in the build file. + // This is supposed to be the "target app"'s resources. + final Supplier<Resources> targetResourcesLoader = () -> { + var file = new File(RAVENWOOD_RESOURCE_APK); + return config.mState.loadResources(file.exists() ? file : null); + }; + + // Set up test context's (== instrumentation context's) resources. + // If the target package name == test package name, then we use the main resources. + final Supplier<Resources> instResourcesLoader; + if (isSelfInstrumenting) { + instResourcesLoader = targetResourcesLoader; + } else { + instResourcesLoader = () -> { + var file = new File(RAVENWOOD_INST_RESOURCE_APK); + return config.mState.loadResources(file.exists() ? file : null); + }; + } + + var instContext = new RavenwoodContext( + config.mTestPackageName, main, instResourcesLoader); + var targetContext = new RavenwoodContext( + config.mTargetPackageName, main, targetResourcesLoader); + + // Set up app context. + var appContext = new RavenwoodContext( + config.mTargetPackageName, main, targetResourcesLoader); + appContext.setApplicationContext(appContext); + if (isSelfInstrumenting) { + instContext.setApplicationContext(appContext); + targetContext.setApplicationContext(appContext); + } else { + // When instrumenting into another APK, the test context doesn't have an app context. + targetContext.setApplicationContext(appContext); + } + config.mInstContext = instContext; + config.mTargetContext = targetContext; + + final Supplier<Resources> systemResourcesLoader = () -> config.mState.loadResources(null); + + config.mState.mSystemServerContext = + new RavenwoodContext(ANDROID_PACKAGE_NAME, main, systemResourcesLoader); + + // Prepare other fields. + config.mInstrumentation = new Instrumentation(); + config.mInstrumentation.basicInit(instContext, targetContext, createMockUiAutomation()); + InstrumentationRegistry.registerInstance(config.mInstrumentation, Bundle.EMPTY); + + RavenwoodSystemServer.init(config); + + if (ENABLE_TIMEOUT_STACKS) { + sPendingTimeout = sTimeoutExecutor.schedule( + RavenwoodRuntimeEnvironmentController::dumpStacks, + TIMEOUT_MILLIS, TimeUnit.MILLISECONDS); + } + } + + /** + * Partially re-initialize after each test method invocation + */ + public static void reinit() { + var config = sRunner.mState.getConfig(); + Binder.restoreCallingIdentity(packBinderIdentityToken(false, config.mUid, config.mPid)); + } + + /** + * De-initialize. + */ + public static void reset() { + if (RAVENWOOD_VERBOSE_LOGGING) { + Log.v(TAG, "reset() called here", new RuntimeException("STACKTRACE")); + } + if (sRunner == null) { + throw new RavenwoodRuntimeException("Internal error: reset() already called"); + } + var config = sRunner.mState.getConfig(); + sRunner = null; + + if (ENABLE_TIMEOUT_STACKS) { + sPendingTimeout.cancel(false); + } + + RavenwoodSystemServer.reset(config); + + InstrumentationRegistry.registerInstance(null, Bundle.EMPTY); + config.mInstrumentation = null; + if (config.mInstContext != null) { + ((RavenwoodContext) config.mInstContext).cleanUp(); + config.mInstContext = null; + } + if (config.mTargetContext != null) { + ((RavenwoodContext) config.mTargetContext).cleanUp(); + config.mTargetContext = null; + } + if (config.mState.mSystemServerContext != null) { + config.mState.mSystemServerContext.cleanUp(); + } + + Looper.getMainLooper().quit(); + Looper.clearMainLooperForTest(); + + ActivityManager.reset$ravenwood(); + + LocalServices.removeAllServicesForTest(); + ServiceManager.reset$ravenwood(); + + setSystemProperties(null); + if (sOriginalIdentityToken != -1) { + Binder.restoreCallingIdentity(sOriginalIdentityToken); + } + RavenwoodRuntimeState.reset(); + Process_ravenwood.reset(); + DeviceConfig_host.reset(); + + try { + ResourcesManager.setInstance(null); // Better structure needed. + } catch (Exception e) { + // AOSP-CHANGE: AOSP doesn't support resources yet. + } + + if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) { + maybeThrowPendingUncaughtException(true); + } + } + + public static void logTestRunner(String label, Description description) { + // This message string carefully matches the exact format emitted by on-device tests, to + // aid developers in debugging raw text logs + Log.e("TestRunner", label + ": " + description.getMethodName() + + "(" + description.getTestClass().getName() + ")"); + } + + private static void dumpStacks() { + final PrintStream out = System.err; + out.println("-----BEGIN ALL THREAD STACKS-----"); + final Map<Thread, StackTraceElement[]> stacks = Thread.getAllStackTraces(); + for (Map.Entry<Thread, StackTraceElement[]> stack : stacks.entrySet()) { + out.println(); + Thread t = stack.getKey(); + out.println(t.toString() + " ID=" + t.getId()); + for (StackTraceElement e : stack.getValue()) { + out.println("\tat " + e); + } + } + out.println("-----END ALL THREAD STACKS-----"); + } + + /** + * If there's a pending uncaught exception, consume and throw it now. Typically used to + * report an exception on a background thread as a failure for the currently running test. + */ + private static void maybeThrowPendingUncaughtException(boolean duringReset) { + final Throwable pending = sPendingUncaughtException.getAndSet(null); + if (pending != null) { + if (duringReset) { + throw new IllegalStateException( + "Found an uncaught exception during this test", pending); + } else { + throw new IllegalStateException( + "Found an uncaught exception before this test started", pending); + } + } + } + + /** + * Set the current configuration to the actual SystemProperties. + */ + private static void setSystemProperties(@Nullable RavenwoodSystemProperties systemProperties) { + SystemProperties.clearChangeCallbacksForTest(); + RavenwoodRuntimeNative.clearSystemProperties(); + if (systemProperties == null) systemProperties = new RavenwoodSystemProperties(); + sProps = new RavenwoodSystemProperties(systemProperties, true); + for (var entry : systemProperties.getValues().entrySet()) { + RavenwoodRuntimeNative.setSystemProperty(entry.getKey(), entry.getValue()); + } + } + + private static final String MOCKITO_ERROR = "FATAL: Unsupported Mockito detected!" + + " Your test or its dependencies use one of the \"mockito-target-*\"" + + " modules as static library, which is unusable on host side." + + " Please switch over to use \"mockito-ravenwood-prebuilt\" as shared library, or" + + " as a last resort, set `ravenizer: { strip_mockito: true }` in your test module."; + + /** + * Assert the Mockito version at runtime to ensure no incorrect Mockito classes are loaded. + */ + private static void assertMockitoVersion() { + // DexMaker should not exist + assertThrows( + MOCKITO_ERROR, + ClassNotFoundException.class, + () -> Class.forName("com.android.dx.DexMaker")); + // Mockito 2 should not exist + assertThrows( + MOCKITO_ERROR, + ClassNotFoundException.class, + () -> Class.forName("org.mockito.Matchers")); + } + + // TODO: use the real UiAutomation class instead of a mock + private static UiAutomation createMockUiAutomation() { + final Set[] adoptedPermission = { Collections.emptySet() }; + var mock = mock(UiAutomation.class, inv -> { + HostTestUtils.onThrowMethodCalled(); + return null; + }); + doAnswer(inv -> { + adoptedPermission[0] = UiAutomation.ALL_PERMISSIONS; + return null; + }).when(mock).adoptShellPermissionIdentity(); + doAnswer(inv -> { + if (inv.getArgument(0) == null) { + adoptedPermission[0] = UiAutomation.ALL_PERMISSIONS; + } else { + adoptedPermission[0] = Set.of(inv.getArguments()); + } + return null; + }).when(mock).adoptShellPermissionIdentity(any()); + doAnswer(inv -> { + adoptedPermission[0] = Collections.emptySet(); + return null; + }).when(mock).dropShellPermissionIdentity(); + doAnswer(inv -> adoptedPermission[0]).when(mock).getAdoptedShellPermissions(); + return mock; + } + + @SuppressWarnings("unused") // Called from native code (ravenwood_sysprop.cpp) + private static void checkSystemPropertyAccess(String key, boolean write) { + boolean result = write ? sProps.isKeyWritable(key) : sProps.isKeyReadable(key); + if (!result) { + throw new IllegalArgumentException((write ? "Write" : "Read") + + " access to system property '" + key + "' denied via RavenwoodConfig"); + } + } +} diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemServer.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemServer.java index cd6b61df392f..f198a08a50e3 100644 --- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemServer.java +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemServer.java @@ -33,6 +33,9 @@ import java.util.List; import java.util.Set; public class RavenwoodSystemServer { + + static final String ANDROID_PACKAGE_NAME = "android"; + /** * Set of services that we know how to provide under Ravenwood. We keep this set distinct * from {@code com.android.server.SystemServer} to give us the ability to choose either @@ -61,19 +64,19 @@ public class RavenwoodSystemServer { private static TimingsTraceAndSlog sTimings; private static SystemServiceManager sServiceManager; - public static void init(RavenwoodRule rule) { + public static void init(RavenwoodConfig config) { // Avoid overhead if no services required - if (rule.mServicesRequired.isEmpty()) return; + if (config.mServicesRequired.isEmpty()) return; sStartedServices = new ArraySet<>(); sTimings = new TimingsTraceAndSlog(); - sServiceManager = new SystemServiceManager(rule.mContext); + sServiceManager = new SystemServiceManager(config.mState.mSystemServerContext); sServiceManager.setStartInfo(false, SystemClock.elapsedRealtime(), SystemClock.uptimeMillis()); LocalServices.addService(SystemServiceManager.class, sServiceManager); - startServices(rule.mServicesRequired); + startServices(config.mServicesRequired); sServiceManager.sealStartedServices(); // TODO: expand to include additional boot phases when relevant @@ -81,7 +84,7 @@ public class RavenwoodSystemServer { sServiceManager.startBootPhase(sTimings, SystemService.PHASE_BOOT_COMPLETED); } - public static void reset(RavenwoodRule rule) { + public static void reset(RavenwoodConfig config) { // TODO: consider introducing shutdown boot phases LocalServices.removeServiceForTest(SystemServiceManager.class); diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodTestStats.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodTestStats.java new file mode 100644 index 000000000000..787058545fed --- /dev/null +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodTestStats.java @@ -0,0 +1,246 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.util.Log; + +import org.junit.runner.Description; +import org.junit.runner.notification.Failure; +import org.junit.runner.notification.RunListener; +import org.junit.runner.notification.RunNotifier; + +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * Collect test result stats and write them into a CSV file containing the test results. + * + * The output file is created as `/tmp/Ravenwood-stats_[TEST-MODULE=NAME]_[TIMESTAMP].csv`. + * A symlink to the latest result will be created as + * `/tmp/Ravenwood-stats_[TEST-MODULE=NAME]_latest.csv`. + */ +public class RavenwoodTestStats { + private static final String TAG = "RavenwoodTestStats"; + private static final String HEADER = "Module,Class,OuterClass,Passed,Failed,Skipped"; + + private static RavenwoodTestStats sInstance; + + /** + * @return a singleton instance. + */ + public static RavenwoodTestStats getInstance() { + if (sInstance == null) { + sInstance = new RavenwoodTestStats(); + } + return sInstance; + } + + /** + * Represents a test result. + */ + public enum Result { + Passed, + Failed, + Skipped, + } + + private final File mOutputFile; + private final PrintWriter mOutputWriter; + private final String mTestModuleName; + + public final Map<String, Map<String, Result>> mStats = new LinkedHashMap<>(); + + /** Ctor */ + public RavenwoodTestStats() { + mTestModuleName = guessTestModuleName(); + + var basename = "Ravenwood-stats_" + mTestModuleName + "_"; + + // Get the current time + LocalDateTime now = LocalDateTime.now(); + DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyyMMdd-HHmmss"); + + var tmpdir = System.getProperty("java.io.tmpdir"); + mOutputFile = new File(tmpdir, basename + now.format(fmt) + ".csv"); + + try { + mOutputWriter = new PrintWriter(mOutputFile); + } catch (IOException e) { + throw new RuntimeException("Failed to create logfile. File=" + mOutputFile, e); + } + + // Create the "latest" symlink. + Path symlink = Paths.get(tmpdir, basename + "latest.csv"); + try { + Files.deleteIfExists(symlink); + Files.createSymbolicLink(symlink, Paths.get(mOutputFile.getName())); + + } catch (IOException e) { + throw new RuntimeException("Failed to create logfile. File=" + mOutputFile, e); + } + + Log.i(TAG, "Test result stats file: " + mOutputFile); + + // Print the header. + mOutputWriter.println(HEADER); + mOutputWriter.flush(); + } + + private String guessTestModuleName() { + // Assume the current directory name is the test module name. + File cwd; + try { + cwd = new File(".").getCanonicalFile(); + } catch (IOException e) { + throw new RuntimeException("Failed to get the current directory", e); + } + return cwd.getName(); + } + + private void addResult(String className, String methodName, + Result result) { + mStats.compute(className, (className_, value) -> { + if (value == null) { + value = new LinkedHashMap<>(); + } + // If the result is already set, don't overwrite it. + if (!value.containsKey(methodName)) { + value.put(methodName, result); + } + return value; + }); + } + + /** + * Call it when a test method is finished. + */ + private void onTestFinished(String className, String testName, Result result) { + addResult(className, testName, result); + } + + /** + * Dump all the results and clear it. + */ + private void dumpAllAndClear() { + for (var entry : mStats.entrySet()) { + int passed = 0; + int skipped = 0; + int failed = 0; + var className = entry.getKey(); + + for (var e : entry.getValue().values()) { + switch (e) { + case Passed: + passed++; + break; + case Skipped: + skipped++; + break; + case Failed: + failed++; + break; + } + } + + mOutputWriter.printf("%s,%s,%s,%d,%d,%d\n", + mTestModuleName, className, getOuterClassName(className), + passed, failed, skipped); + } + mOutputWriter.flush(); + mStats.clear(); + } + + private static String getOuterClassName(String className) { + // Just delete the '$', because I'm not sure if the className we get here is actaully a + // valid class name that does exist. (it might have a parameter name, etc?) + int p = className.indexOf('$'); + if (p < 0) { + return className; + } + return className.substring(0, p); + } + + public void attachToRunNotifier(RunNotifier notifier) { + notifier.addListener(mRunListener); + } + + private final RunListener mRunListener = new RunListener() { + @Override + public void testSuiteStarted(Description description) { + Log.d(TAG, "testSuiteStarted: " + description); + } + + @Override + public void testSuiteFinished(Description description) { + Log.d(TAG, "testSuiteFinished: " + description); + } + + @Override + public void testRunStarted(Description description) { + Log.d(TAG, "testRunStarted: " + description); + } + + @Override + public void testRunFinished(org.junit.runner.Result result) { + Log.d(TAG, "testRunFinished: " + result); + + dumpAllAndClear(); + } + + @Override + public void testStarted(Description description) { + Log.d(TAG, " testStarted: " + description); + } + + @Override + public void testFinished(Description description) { + Log.d(TAG, " testFinished: " + description); + + // Send "Passed", but if there's already another result sent for this, this won't + // override it. + onTestFinished(description.getClassName(), description.getMethodName(), Result.Passed); + } + + @Override + public void testFailure(Failure failure) { + Log.d(TAG, " testFailure: " + failure); + + var description = failure.getDescription(); + onTestFinished(description.getClassName(), description.getMethodName(), Result.Failed); + } + + @Override + public void testAssumptionFailure(Failure failure) { + Log.d(TAG, " testAssumptionFailure: " + failure); + var description = failure.getDescription(); + onTestFinished(description.getClassName(), description.getMethodName(), Result.Skipped); + } + + @Override + public void testIgnored(Description description) { + Log.d(TAG, " testIgnored: " + description); + onTestFinished(description.getClassName(), description.getMethodName(), Result.Skipped); + } + }; +} diff --git a/ravenwood/junit-src/android/platform/test/annotations/DisabledOnNonRavenwood.java b/ravenwood/junit-src/android/platform/test/annotations/DisabledOnNonRavenwood.java deleted file mode 100644 index 2fb8074c850a..000000000000 --- a/ravenwood/junit-src/android/platform/test/annotations/DisabledOnNonRavenwood.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (C) 2024 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.platform.test.annotations; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Inherited; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Tests marked with this annotation are only executed when running on Ravenwood, but not - * on a device. - * - * This is basically equivalent to the opposite of {@link DisabledOnRavenwood}, but in order to - * avoid complex structure, and there's no equivalent to the opposite {@link EnabledOnRavenwood}, - * which means if a test class has this annotation, you can't negate it in subclasses or - * on a per-method basis. - * - * THIS ANNOTATION CANNOT BE ADDED TO CLASSES AT THIS PONINT. - * See {@link com.android.ravenwoodtest.bivalenttest.RavenwoodClassRuleRavenwoodOnlyTest} - * for the reason. - * - * The {@code RAVENWOOD_RUN_DISABLED_TESTS} environmental variable won't work because it won't be - * propagated to the device. (We may support it in the future, possibly using a debug. sysprop.) - * - * @hide - */ -@Inherited -@Target({ElementType.METHOD}) -@Retention(RetentionPolicy.RUNTIME) -public @interface DisabledOnNonRavenwood { - /** - * General free-form description of why this test is being ignored. - */ - String reason() default ""; -} diff --git a/ravenwood/junit-src/android/platform/test/annotations/DisabledOnRavenwood.java b/ravenwood/junit-src/android/platform/test/annotations/DisabledOnRavenwood.java index 1adb0f31da54..470165c6da43 100644 --- a/ravenwood/junit-src/android/platform/test/annotations/DisabledOnRavenwood.java +++ b/ravenwood/junit-src/android/platform/test/annotations/DisabledOnRavenwood.java @@ -51,4 +51,9 @@ public @interface DisabledOnRavenwood { * General free-form description of why this test is being ignored. */ String reason() default ""; + + /** + * Tracking bug number, if any. + */ + long bug() default 0; } diff --git a/ravenwood/junit-src/android/platform/test/annotations/IgnoreUnderRavenwood.java b/ravenwood/junit-src/android/platform/test/annotations/IgnoreUnderRavenwood.java index 7faa654b903c..1c06829dba06 100644 --- a/ravenwood/junit-src/android/platform/test/annotations/IgnoreUnderRavenwood.java +++ b/ravenwood/junit-src/android/platform/test/annotations/IgnoreUnderRavenwood.java @@ -51,4 +51,9 @@ public @interface IgnoreUnderRavenwood { * General free-form description of why this test is being ignored. */ String reason() default ""; + + /** + * Tracking bug number, if any. + */ + long bug() default 0; } diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepPartialClass.java b/ravenwood/junit-src/android/platform/test/annotations/NoRavenizer.java index 784727410188..a84f16f619d3 100644 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepPartialClass.java +++ b/ravenwood/junit-src/android/platform/test/annotations/NoRavenizer.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,22 +13,24 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.ravenwood.annotation; + +package android.platform.test.annotations; import java.lang.annotation.ElementType; +import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * TODO: Javadoc + * Disable the ravenizer preprocessor for a class. This should be only used for testing + * ravenizer itself, or to workaround issues with the preprocessor. A test class probably won't run + * properly if it's not preprocessed. * * @hide */ -@Target(ElementType.TYPE) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodKeepPartialClass { +@Inherited +@Target({ElementType.TYPE}) +@Retention(RetentionPolicy.RUNTIME) +public @interface NoRavenizer { } diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodNativeSubstitutionClass.java b/ravenwood/junit-src/android/platform/test/annotations/RavenwoodTestRunnerInitializing.java index 4b9cf85e16fa..3bba27ab8f1d 100644 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodNativeSubstitutionClass.java +++ b/ravenwood/junit-src/android/platform/test/annotations/RavenwoodTestRunnerInitializing.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,24 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.ravenwood.annotation; +package android.platform.test.annotations; -import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.ElementType.METHOD; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * TODO: Javadoc - * - * @hide + * An annotation similar to JUnit's BeforeClass, but this gets executed before + * the inner runner is instantiated, and only on Ravenwood. + * It can be used to initialize what's needed by the inner runner. */ -@Target({TYPE}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodNativeSubstitutionClass { - String value(); +@Target({METHOD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface RavenwoodTestRunnerInitializing { } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/LargeTest.java b/ravenwood/junit-src/android/platform/test/annotations/internal/InnerRunner.java index 76bbcad2ab26..dde53a5ea03c 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/LargeTest.java +++ b/ravenwood/junit-src/android/platform/test/annotations/internal/InnerRunner.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,16 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.hoststubgen.test.tinyframework; +package android.platform.test.annotations.internal; -import java.lang.annotation.ElementType; +import static java.lang.annotation.ElementType.TYPE; + +import org.junit.runner.Runner; + +import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -/** - * We don't want to use any android classes in this module, so we create our own copy of it here. - */ +@Inherited +@Target({TYPE}) @Retention(RetentionPolicy.RUNTIME) -@Target({ElementType.METHOD, ElementType.TYPE}) -public @interface LargeTest {} +public @interface InnerRunner { + Class<? extends Runner> value(); +} diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodAwareTestRunnerBase.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodAwareTestRunnerBase.java new file mode 100644 index 000000000000..31a14164bd51 --- /dev/null +++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodAwareTestRunnerBase.java @@ -0,0 +1,101 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.platform.test.annotations.internal.InnerRunner; +import android.util.Log; + +import org.junit.internal.builders.AllDefaultPossibilitiesBuilder; +import org.junit.runner.Description; +import org.junit.runner.Runner; +import org.junit.runner.manipulation.Filter; +import org.junit.runner.manipulation.Filterable; +import org.junit.runner.manipulation.InvalidOrderingException; +import org.junit.runner.manipulation.NoTestsRemainException; +import org.junit.runner.manipulation.Orderable; +import org.junit.runner.manipulation.Orderer; +import org.junit.runner.manipulation.Sortable; +import org.junit.runner.manipulation.Sorter; +import org.junit.runner.notification.RunNotifier; +import org.junit.runners.BlockJUnit4ClassRunner; +import org.junit.runners.model.RunnerBuilder; +import org.junit.runners.model.TestClass; + +abstract class RavenwoodAwareTestRunnerBase extends Runner implements Filterable, Orderable { + private static final String TAG = "Ravenwood"; + + boolean mRealRunnerTakesRunnerBuilder = false; + + abstract Runner getRealRunner(); + + final Runner instantiateRealRunner(TestClass testClass) { + // Find the real runner. + final Class<? extends Runner> runnerClass; + final InnerRunner innerRunnerAnnotation = testClass.getAnnotation(InnerRunner.class); + if (innerRunnerAnnotation != null) { + runnerClass = innerRunnerAnnotation.value(); + } else { + // Default runner. + runnerClass = BlockJUnit4ClassRunner.class; + } + + try { + Log.i(TAG, "Initializing the inner runner: " + runnerClass); + try { + return runnerClass.getConstructor(Class.class) + .newInstance(testClass.getJavaClass()); + } catch (NoSuchMethodException e) { + var constructor = runnerClass.getConstructor(Class.class, RunnerBuilder.class); + mRealRunnerTakesRunnerBuilder = true; + return constructor.newInstance( + testClass.getJavaClass(), new AllDefaultPossibilitiesBuilder()); + } + } catch (ReflectiveOperationException e) { + throw logAndFail("Failed to instantiate " + runnerClass, e); + } + } + + final Error logAndFail(String message, Throwable exception) { + Log.e(TAG, message, exception); + return new AssertionError(message, exception); + } + + @Override + public final Description getDescription() { + return getRealRunner().getDescription(); + } + + @Override + public final void filter(Filter filter) throws NoTestsRemainException { + if (getRealRunner() instanceof Filterable r) { + r.filter(filter); + } + } + + @Override + public final void order(Orderer orderer) throws InvalidOrderingException { + if (getRealRunner() instanceof Orderable r) { + r.order(orderer); + } + } + + @Override + public final void sort(Sorter sorter) { + if (getRealRunner() instanceof Sortable r) { + r.sort(sorter); + } + } +} diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodClassRule.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodClassRule.java index f4b7ec360dbf..85297fe96d6a 100644 --- a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodClassRule.java +++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodClassRule.java @@ -16,42 +16,20 @@ package android.platform.test.ravenwood; -import static android.platform.test.ravenwood.RavenwoodRule.ENABLE_PROBE_IGNORED; -import static android.platform.test.ravenwood.RavenwoodRule.IS_ON_RAVENWOOD; -import static android.platform.test.ravenwood.RavenwoodRule.shouldEnableOnDevice; -import static android.platform.test.ravenwood.RavenwoodRule.shouldEnableOnRavenwood; -import static android.platform.test.ravenwood.RavenwoodRule.shouldStillIgnoreInProbeIgnoreMode; - -import android.platform.test.annotations.DisabledOnRavenwood; -import android.platform.test.annotations.EnabledOnRavenwood; - -import org.junit.Assert; -import org.junit.Assume; import org.junit.rules.TestRule; import org.junit.runner.Description; import org.junit.runners.model.Statement; /** - * {@code @ClassRule} that respects Ravenwood-specific class annotations. This rule has no effect - * when tests are run on non-Ravenwood test environments. + * No longer needed. * - * By default, all tests are executed on Ravenwood, but annotations such as - * {@link DisabledOnRavenwood} and {@link EnabledOnRavenwood} can be used at both the method - * and class level to "ignore" tests that may not be ready. + * @deprecated this class used to be used to handle the class level annotation, which + * is now done by the test runner, so this class is not needed. */ +@Deprecated public class RavenwoodClassRule implements TestRule { @Override public Statement apply(Statement base, Description description) { - if (!IS_ON_RAVENWOOD) { - // This should be "Assume", not Assert, but if we use assume here, the device side - // test runner would complain. - // See the TODO comment in RavenwoodClassRuleRavenwoodOnlyTest. - Assert.assertTrue(shouldEnableOnDevice(description)); - } else if (ENABLE_PROBE_IGNORED) { - Assume.assumeFalse(shouldStillIgnoreInProbeIgnoreMode(description)); - } else { - Assume.assumeTrue(shouldEnableOnRavenwood(description)); - } return base; } } diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodConfig.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodConfig.java new file mode 100644 index 000000000000..3ed8b0a748e1 --- /dev/null +++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodConfig.java @@ -0,0 +1,212 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import static android.os.Process.FIRST_APPLICATION_UID; +import static android.os.UserHandle.SYSTEM; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.app.Instrumentation; +import android.content.Context; +import android.os.Build; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.concurrent.atomic.AtomicInteger; + +/** + * Represents how to configure the ravenwood environment for a test class. + * + * If a ravenwood test class has a public static field with the {@link Config} annotation, + * Ravenwood will extract the config from it and initializes the environment. The type of the + * field must be of {@link RavenwoodConfig}. + */ +public final class RavenwoodConfig { + /** + * Use this to mark a field as the configuration. + * @hide + */ + @Target({ElementType.FIELD}) + @Retention(RetentionPolicy.RUNTIME) + public @interface Config { + } + + private static final int NOBODY_UID = 9999; + + private static final AtomicInteger sNextPid = new AtomicInteger(100); + + int mCurrentUser = SYSTEM.getIdentifier(); + + /** + * Unless the test author requests differently, run as "nobody", and give each collection of + * tests its own unique PID. + */ + int mUid = FIRST_APPLICATION_UID; + int mPid = sNextPid.getAndIncrement(); + + String mTestPackageName; + String mTargetPackageName; + + int mTargetSdkLevel = Build.VERSION_CODES.CUR_DEVELOPMENT; + + final RavenwoodSystemProperties mSystemProperties = new RavenwoodSystemProperties(); + + final List<Class<?>> mServicesRequired = new ArrayList<>(); + + volatile Context mInstContext; + volatile Context mTargetContext; + volatile Instrumentation mInstrumentation; + + /** + * Stores internal states / methods associated with this config that's only needed in + * junit-impl. + */ + final RavenwoodConfigState mState = new RavenwoodConfigState(this); + private RavenwoodConfig() { + } + + /** + * Return if the current process is running on a Ravenwood test environment. + */ + public static boolean isOnRavenwood() { + return RavenwoodRule.isOnRavenwood(); + } + + private void setDefaults() { + if (mTargetPackageName == null) { + mTargetPackageName = mTestPackageName; + } + } + + public static class Builder { + private final RavenwoodConfig mConfig = new RavenwoodConfig(); + + public Builder() { + } + + /** + * @deprecated no longer used. We always use an app UID. + */ + @Deprecated + public Builder setProcessSystem() { + return this; + } + + /** + * @deprecated no longer used. We always use an app UID. + */ + @Deprecated + public Builder setProcessApp() { + return this; + } + + /** + * Configure the package name of the test, which corresponds to + * {@link Instrumentation#getContext()}. + */ + public Builder setPackageName(@NonNull String packageName) { + mConfig.mTestPackageName = Objects.requireNonNull(packageName); + return this; + } + + /** + * Configure the package name of the target app, which corresponds to + * {@link Instrumentation#getTargetContext()}. Defaults to {@link #setPackageName}. + */ + public Builder setTargetPackageName(@NonNull String packageName) { + mConfig.mTargetPackageName = Objects.requireNonNull(packageName); + return this; + } + + /** + * Configure the target SDK level of the test. + */ + public Builder setTargetSdkLevel(int sdkLevel) { + mConfig.mTargetSdkLevel = sdkLevel; + return this; + } + + /** + * @deprecated no longer used. Main thread is always available. + */ + @Deprecated + public Builder setProvideMainThread(boolean provideMainThread) { + return this; + } + + /** + * Configure the given system property as immutable for the duration of the test. + * Read access to the key is allowed, and write access will fail. When {@code value} is + * {@code null}, the value is left as undefined. + * + * All properties in the {@code debug.*} namespace are automatically mutable, with no + * developer action required. + * + * Has no effect on non-Ravenwood environments. + */ + public Builder setSystemPropertyImmutable(@NonNull String key, + @Nullable Object value) { + mConfig.mSystemProperties.setValue(key, value); + mConfig.mSystemProperties.setAccessReadOnly(key); + return this; + } + + /** + * Configure the given system property as mutable for the duration of the test. + * Both read and write access to the key is allowed, and its value will be reset between + * each test. When {@code value} is {@code null}, the value is left as undefined. + * + * All properties in the {@code debug.*} namespace are automatically mutable, with no + * developer action required. + * + * Has no effect on non-Ravenwood environments. + */ + public Builder setSystemPropertyMutable(@NonNull String key, + @Nullable Object value) { + mConfig.mSystemProperties.setValue(key, value); + mConfig.mSystemProperties.setAccessReadWrite(key); + return this; + } + + /** + * Configure the set of system services that are required for this test to operate. + * + * For example, passing {@code android.hardware.SerialManager.class} as an argument will + * ensure that the underlying service is created, initialized, and ready to use for the + * duration of the test. The {@code SerialManager} instance can be obtained via + * {@code RavenwoodRule.getContext()} and {@code Context.getSystemService()}, and + * {@code SerialManagerInternal} can be obtained via {@code LocalServices.getService()}. + */ + public Builder setServicesRequired(@NonNull Class<?>... services) { + mConfig.mServicesRequired.clear(); + for (Class<?> service : services) { + mConfig.mServicesRequired.add(service); + } + return this; + } + + public RavenwoodConfig build() { + mConfig.setDefaults(); + return mConfig; + } + } +} diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodRule.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodRule.java index 68b5aebe9c00..bfa3802ce583 100644 --- a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodRule.java +++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodRule.java @@ -16,56 +16,45 @@ package android.platform.test.ravenwood; -import static android.os.Process.FIRST_APPLICATION_UID; -import static android.os.Process.SYSTEM_UID; -import static android.os.UserHandle.USER_SYSTEM; - -import static org.junit.Assert.fail; +import static com.android.ravenwood.common.RavenwoodCommonUtils.log; +import android.annotation.NonNull; +import android.annotation.Nullable; import android.app.Instrumentation; import android.content.Context; -import android.platform.test.annotations.DisabledOnNonRavenwood; import android.platform.test.annotations.DisabledOnRavenwood; -import android.platform.test.annotations.EnabledOnRavenwood; -import android.platform.test.annotations.IgnoreUnderRavenwood; + +import androidx.test.platform.app.InstrumentationRegistry; import com.android.ravenwood.common.RavenwoodCommonUtils; -import org.junit.Assume; import org.junit.rules.TestRule; import org.junit.runner.Description; import org.junit.runners.model.Statement; -import java.util.ArrayList; -import java.util.List; import java.util.Objects; -import java.util.concurrent.atomic.AtomicInteger; import java.util.regex.Pattern; /** - * {@code @Rule} that configures the Ravenwood test environment. This rule has no effect when - * tests are run on non-Ravenwood test environments. - * - * This rule initializes and resets the Ravenwood environment between each test method to offer a - * hermetic testing environment. - * - * By default, all tests are executed on Ravenwood, but annotations such as - * {@link DisabledOnRavenwood} and {@link EnabledOnRavenwood} can be used at both the method - * and class level to "ignore" tests that may not be ready. When needed, a - * {@link RavenwoodClassRule} can be used in addition to a {@link RavenwoodRule} to ignore tests - * before a test class is fully initialized. + * @deprecated Use {@link RavenwoodConfig} to configure the ravenwood environment instead. + * A {@link RavenwoodRule} is no longer needed for {@link DisabledOnRavenwood}. To get the + * {@link Context} and {@link Instrumentation}, use + * {@link androidx.test.platform.app.InstrumentationRegistry} instead. */ -public class RavenwoodRule implements TestRule { +@Deprecated +public final class RavenwoodRule implements TestRule { + private static final String TAG = "RavenwoodRule"; + static final boolean IS_ON_RAVENWOOD = RavenwoodCommonUtils.isOnRavenwood(); /** - * When probing is enabled, all tests will be unconditionally run on Ravenwood to detect - * cases where a test is able to pass despite being marked as {@code IgnoreUnderRavenwood}. + * When this flag is enabled, all tests will be unconditionally run on Ravenwood to detect + * cases where a test is able to pass despite being marked as {@link DisabledOnRavenwood}. * * This is typically helpful for internal maintainers discovering tests that had previously * been ignored, but now have enough Ravenwood-supported functionality to be enabled. */ - static final boolean ENABLE_PROBE_IGNORED = "1".equals( + private static final boolean RUN_DISABLED_TESTS = "1".equals( System.getenv("RAVENWOOD_RUN_DISABLED_TESTS")); /** @@ -90,75 +79,51 @@ public class RavenwoodRule implements TestRule { * * Because we use a regex-find, setting "." would disable all tests. */ - private static final Pattern REALLY_DISABLE_PATTERN = Pattern.compile( - Objects.requireNonNullElse(System.getenv("RAVENWOOD_REALLY_DISABLE"), "")); + private static final Pattern REALLY_DISABLED_PATTERN = Pattern.compile( + Objects.requireNonNullElse(System.getenv("RAVENWOOD_REALLY_DISABLED"), "")); - private static final boolean ENABLE_REALLY_DISABLE_PATTERN = - !REALLY_DISABLE_PATTERN.pattern().isEmpty(); - - /** - * If true, enable optional validation on running tests. - */ - private static final boolean ENABLE_OPTIONAL_VALIDATION = "1".equals( - System.getenv("RAVENWOOD_OPTIONAL_VALIDATION")); + private static final boolean HAS_REALLY_DISABLE_PATTERN = + !REALLY_DISABLED_PATTERN.pattern().isEmpty(); static { - if (ENABLE_PROBE_IGNORED) { - System.out.println("$RAVENWOOD_RUN_DISABLED_TESTS enabled: force running all tests"); - if (ENABLE_REALLY_DISABLE_PATTERN) { - System.out.println("$RAVENWOOD_REALLY_DISABLE=" + REALLY_DISABLE_PATTERN.pattern()); + if (RUN_DISABLED_TESTS) { + log(TAG, "$RAVENWOOD_RUN_DISABLED_TESTS enabled: force running all tests"); + if (HAS_REALLY_DISABLE_PATTERN) { + log(TAG, "$RAVENWOOD_REALLY_DISABLED=" + REALLY_DISABLED_PATTERN.pattern()); } } } - private static final int NOBODY_UID = 9999; - - private static final AtomicInteger sNextPid = new AtomicInteger(100); - - int mCurrentUser = USER_SYSTEM; - - /** - * Unless the test author requests differently, run as "nobody", and give each collection of - * tests its own unique PID. - */ - int mUid = NOBODY_UID; - int mPid = sNextPid.getAndIncrement(); - - String mPackageName; - - boolean mProvideMainThread = false; - - final RavenwoodSystemProperties mSystemProperties = new RavenwoodSystemProperties(); - - final List<Class<?>> mServicesRequired = new ArrayList<>(); - - volatile Context mContext; - volatile Instrumentation mInstrumentation; + private final RavenwoodConfig mConfiguration; public RavenwoodRule() { + mConfiguration = new RavenwoodConfig.Builder().build(); + } + + private RavenwoodRule(RavenwoodConfig config) { + mConfiguration = config; } public static class Builder { - private RavenwoodRule mRule = new RavenwoodRule(); + private final RavenwoodConfig.Builder mBuilder = + new RavenwoodConfig.Builder(); public Builder() { } /** - * Configure the identity of this process to be the system UID for the duration of the - * test. Has no effect on non-Ravenwood environments. + * @deprecated no longer used. We always use an app UID. */ + @Deprecated public Builder setProcessSystem() { - mRule.mUid = SYSTEM_UID; return this; } /** - * Configure the identity of this process to be an app UID for the duration of the - * test. Has no effect on non-Ravenwood environments. + * @deprecated no longer used. We always use an app UID. */ + @Deprecated public Builder setProcessApp() { - mRule.mUid = FIRST_APPLICATION_UID; return this; } @@ -166,17 +131,16 @@ public class RavenwoodRule implements TestRule { * Configure the identity of this process to be the given package name for the duration * of the test. Has no effect on non-Ravenwood environments. */ - public Builder setPackageName(/* @NonNull */ String packageName) { - mRule.mPackageName = Objects.requireNonNull(packageName); + public Builder setPackageName(@NonNull String packageName) { + mBuilder.setPackageName(packageName); return this; } /** - * Configure a "main" thread to be available for the duration of the test, as defined - * by {@code Looper.getMainLooper()}. Has no effect on non-Ravenwood environments. + * @deprecated no longer used. Main thread is always available. */ + @Deprecated public Builder setProvideMainThread(boolean provideMainThread) { - mRule.mProvideMainThread = provideMainThread; return this; } @@ -190,10 +154,8 @@ public class RavenwoodRule implements TestRule { * * Has no effect on non-Ravenwood environments. */ - public Builder setSystemPropertyImmutable(/* @NonNull */ String key, - /* @Nullable */ Object value) { - mRule.mSystemProperties.setValue(key, value); - mRule.mSystemProperties.setAccessReadOnly(key); + public Builder setSystemPropertyImmutable(@NonNull String key, @Nullable Object value) { + mBuilder.setSystemPropertyImmutable(key, value); return this; } @@ -207,10 +169,8 @@ public class RavenwoodRule implements TestRule { * * Has no effect on non-Ravenwood environments. */ - public Builder setSystemPropertyMutable(/* @NonNull */ String key, - /* @Nullable */ Object value) { - mRule.mSystemProperties.setValue(key, value); - mRule.mSystemProperties.setAccessReadWrite(key); + public Builder setSystemPropertyMutable(@NonNull String key, @Nullable Object value) { + mBuilder.setSystemPropertyMutable(key, value); return this; } @@ -223,16 +183,13 @@ public class RavenwoodRule implements TestRule { * {@code RavenwoodRule.getContext()} and {@code Context.getSystemService()}, and * {@code SerialManagerInternal} can be obtained via {@code LocalServices.getService()}. */ - public Builder setServicesRequired(Class<?>... services) { - mRule.mServicesRequired.clear(); - for (Class<?> service : services) { - mRule.mServicesRequired.add(service); - } + public Builder setServicesRequired(@NonNull Class<?>... services) { + mBuilder.setServicesRequired(services); return this; } public RavenwoodRule build() { - return mRule; + return new RavenwoodRule(mBuilder.build()); } } @@ -252,184 +209,44 @@ public class RavenwoodRule implements TestRule { } /** - * Return a {@code Context} available for usage during the currently running test case. - * - * Each test should obtain needed information or references via this method; - * references must not be stored beyond the scope of a test case. + * @deprecated Use + * {@code androidx.test.platform.app.InstrumentationRegistry.getInstrumentation().getContext()} + * instead. */ + @Deprecated public Context getContext() { - return Objects.requireNonNull(mContext, - "Context is only available during @Test execution"); + return InstrumentationRegistry.getInstrumentation().getContext(); } /** - * Return a {@code Instrumentation} available for usage during the currently running test case. - * - * Each test should obtain needed information or references via this method; - * references must not be stored beyond the scope of a test case. + * @deprecated Use + * {@code androidx.test.platform.app.InstrumentationRegistry.getInstrumentation()} + * instead. */ + @Deprecated public Instrumentation getInstrumentation() { - return Objects.requireNonNull(mInstrumentation, - "Instrumentation is only available during @Test execution"); - } - - static boolean shouldEnableOnDevice(Description description) { - if (description.isTest()) { - if (description.getAnnotation(DisabledOnNonRavenwood.class) != null) { - return false; - } - } - final var clazz = description.getTestClass(); - if (clazz != null) { - if (clazz.getAnnotation(DisabledOnNonRavenwood.class) != null) { - return false; - } - } - return true; - } - - /** - * Determine if the given {@link Description} should be enabled when running on the - * Ravenwood test environment. - * - * A more specific method-level annotation always takes precedence over any class-level - * annotation, and an {@link EnabledOnRavenwood} annotation always takes precedence over - * an {@link DisabledOnRavenwood} annotation. - */ - static boolean shouldEnableOnRavenwood(Description description) { - // First, consult any method-level annotations - if (description.isTest()) { - // Stopgap for http://g/ravenwood/EPAD-N5ntxM - if (description.getMethodName().endsWith("$noRavenwood")) { - return false; - } - if (description.getAnnotation(EnabledOnRavenwood.class) != null) { - return true; - } - if (description.getAnnotation(DisabledOnRavenwood.class) != null) { - return false; - } - if (description.getAnnotation(IgnoreUnderRavenwood.class) != null) { - return false; - } - } - - // Otherwise, consult any class-level annotations - final var clazz = description.getTestClass(); - if (clazz != null) { - if (description.getTestClass().getAnnotation(EnabledOnRavenwood.class) != null) { - return true; - } - if (description.getTestClass().getAnnotation(DisabledOnRavenwood.class) != null) { - return false; - } - if (description.getTestClass().getAnnotation(IgnoreUnderRavenwood.class) != null) { - return false; - } - } - - // When no annotations have been requested, assume test should be included - return true; - } - - static boolean shouldStillIgnoreInProbeIgnoreMode(Description description) { - if (!ENABLE_REALLY_DISABLE_PATTERN) { - return false; - } - - final var fullname = description.getTestClass().getName() - + (description.isTest() ? "#" + description.getMethodName() : ""); - - if (REALLY_DISABLE_PATTERN.matcher(fullname).find()) { - System.out.println("Still ignoring " + fullname); - return true; - } - return false; + return InstrumentationRegistry.getInstrumentation(); } @Override public Statement apply(Statement base, Description description) { - // No special treatment when running outside Ravenwood; run tests as-is - if (!IS_ON_RAVENWOOD) { - Assume.assumeTrue(shouldEnableOnDevice(description)); + if (!RavenwoodConfig.isOnRavenwood()) { return base; } - - if (ENABLE_PROBE_IGNORED) { - return applyProbeIgnored(base, description); - } else { - return applyDefault(base, description); - } - } - - private void commonPrologue(Statement base, Description description) { - RavenwoodRuleImpl.logTestRunner("started", description); - RavenwoodRuleImpl.validate(base, description, ENABLE_OPTIONAL_VALIDATION); - RavenwoodRuleImpl.init(RavenwoodRule.this); - } - - /** - * Run the given {@link Statement} with no special treatment. - */ - private Statement applyDefault(Statement base, Description description) { return new Statement() { @Override public void evaluate() throws Throwable { - Assume.assumeTrue(shouldEnableOnRavenwood(description)); - - commonPrologue(base, description); + RavenwoodAwareTestRunner.onRavenwoodRuleEnter(description, RavenwoodRule.this); try { base.evaluate(); - RavenwoodRuleImpl.logTestRunner("finished", description); - } catch (Throwable t) { - RavenwoodRuleImpl.logTestRunner("failed", description); - throw t; } finally { - RavenwoodRuleImpl.reset(RavenwoodRule.this); + RavenwoodAwareTestRunner.onRavenwoodRuleExit(description, RavenwoodRule.this); } } }; } /** - * Run the given {@link Statement} with probing enabled. All tests will be unconditionally - * run on Ravenwood to detect cases where a test is able to pass despite being marked as - * {@code IgnoreUnderRavenwood}. - */ - private Statement applyProbeIgnored(Statement base, Description description) { - return new Statement() { - @Override - public void evaluate() throws Throwable { - Assume.assumeFalse(shouldStillIgnoreInProbeIgnoreMode(description)); - - commonPrologue(base, description); - try { - base.evaluate(); - } catch (Throwable t) { - // If the test isn't included, eat the exception and report the - // assumption failure that test authors expect; otherwise throw - Assume.assumeTrue(shouldEnableOnRavenwood(description)); - throw t; - } finally { - RavenwoodRuleImpl.logTestRunner("finished", description); - RavenwoodRuleImpl.reset(RavenwoodRule.this); - } - - if (!shouldEnableOnRavenwood(description)) { - fail("Test wasn't included under Ravenwood, but it actually " - + "passed under Ravenwood; consider updating annotations"); - } - } - }; - } - - public static class _$RavenwoodPrivate { - public static boolean isOptionalValidationEnabled() { - return ENABLE_OPTIONAL_VALIDATION; - } - } - - /** * Returns the "real" result from {@link System#currentTimeMillis()}. * * Currently, it's the same thing as calling {@link System#currentTimeMillis()}, @@ -439,4 +256,51 @@ public class RavenwoodRule implements TestRule { public long realCurrentTimeMillis() { return System.currentTimeMillis(); } + + // Below are internal to ravenwood. Don't use them from normal tests... + + public static class RavenwoodPrivate { + private RavenwoodPrivate() { + } + + private volatile Boolean mRunDisabledTestsOverride = null; + + private volatile Pattern mReallyDisabledPattern = null; + + public boolean isRunningDisabledTests() { + if (mRunDisabledTestsOverride != null) { + return mRunDisabledTestsOverride; + } + return RUN_DISABLED_TESTS; + } + + public Pattern getReallyDisabledPattern() { + if (mReallyDisabledPattern != null) { + return mReallyDisabledPattern; + } + return REALLY_DISABLED_PATTERN; + } + + public void overrideRunDisabledTest(boolean runDisabledTests, + @Nullable String reallyDisabledPattern) { + mRunDisabledTestsOverride = runDisabledTests; + mReallyDisabledPattern = + reallyDisabledPattern == null ? null : Pattern.compile(reallyDisabledPattern); + } + + public void resetRunDisabledTest() { + mRunDisabledTestsOverride = null; + mReallyDisabledPattern = null; + } + } + + private static final RavenwoodPrivate sRavenwoodPrivate = new RavenwoodPrivate(); + + public static RavenwoodPrivate private$ravenwood() { + return sRavenwoodPrivate; + } + + RavenwoodConfig getConfiguration() { + return mConfiguration; + } } diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java index 5f1b0c2c929f..3e4619f55c6d 100644 --- a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java +++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java @@ -16,22 +16,141 @@ package android.platform.test.ravenwood; -import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_SYSPROP; +import static com.android.ravenwood.common.RavenwoodCommonUtils.RAVENWOOD_VERBOSE_LOGGING; +import static com.android.ravenwood.common.RavenwoodCommonUtils.getRavenwoodRuntimePath; +import android.util.Log; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.HashMap; import java.util.HashSet; +import java.util.LinkedHashMap; import java.util.Map; import java.util.Set; -import java.util.function.Predicate; public class RavenwoodSystemProperties { + private static final String TAG = "RavenwoodSystemProperties"; + + /** We pull in propeties from this file. */ + private static final String RAVENWOOD_BUILD_PROP = "ravenwood-data/ravenwood-build.prop"; + + /** This is the actual build.prop we use to build the device (contents depends on lunch). */ + private static final String DEVICE_BUILD_PROP = "ravenwood-data/build.prop"; + + /** The default values. */ + private static final Map<String, String> sDefaultValues = new HashMap<>(); + + private static final String[] PARTITIONS = { + "bootimage", + "odm", + "product", + "system", + "system_ext", + "vendor", + "vendor_dlkm", + }; + + private static Map<String, String> readProperties(String propFile) { + // Use an ordered map just for cleaner dump log. + final Map<String, String> ret = new LinkedHashMap<>(); + try { + Files.readAllLines(Path.of(propFile)).stream() + .map(String::trim) + .filter(s -> !s.startsWith("#")) + .map(s -> s.split("\\s*=\\s*", 2)) + .filter(a -> a.length == 2) + .forEach(a -> ret.put(a[0], a[1])); + } catch (IOException e) { + throw new RuntimeException(e); + } + return ret; + } + + /** + * Load default sysprops from {@link #RAVENWOOD_BUILD_PROP}. We also pull in + * certain properties from the acutual device's build.prop {@link #DEVICE_BUILD_PROP} too. + * + * More info about property file loading: system/core/init/property_service.cpp + * In the following logic, the only partition we would need to consider is "system", + * since we only read from system-build.prop + */ + static void initialize() { + var path = getRavenwoodRuntimePath(); + var ravenwoodProps = readProperties(path + RAVENWOOD_BUILD_PROP); + var deviceProps = readProperties(path + DEVICE_BUILD_PROP); + + Log.i(TAG, "Default system properties:"); + ravenwoodProps.forEach((key, origValue) -> { + final String value; + + // If a value starts with "$$$", then this is a reference to the device-side value. + if (origValue.startsWith("$$$")) { + var deviceKey = origValue.substring(3); + var deviceValue = deviceProps.get(deviceKey); + if (deviceValue == null) { + throw new RuntimeException("Failed to initialize system properties. Key '" + + deviceKey + "' doesn't exist in the device side build.prop"); + } + value = deviceValue; + } else { + value = origValue; + } + Log.i(TAG, key + "=" + value); + sDefaultValues.put(key, value); + }); + + // Copy ro.product.* and ro.build.* to all partitions, just in case + // We don't want to log these because these are just a lot of duplicate values + for (var entry : Set.copyOf(sDefaultValues.entrySet())) { + var key = entry.getKey(); + if (key.startsWith("ro.product.") || key.startsWith("ro.build.")) { + var name = key.substring(3); + for (String partition : PARTITIONS) { + var newKey = "ro." + partition + "." + name; + if (!sDefaultValues.containsKey(newKey)) { + sDefaultValues.put(newKey, entry.getValue()); + } + } + } + } + if (RAVENWOOD_VERBOSE_LOGGING) { + // Dump all properties for local debugging. + Log.v(TAG, "All system properties:"); + for (var key : sDefaultValues.keySet().stream().sorted().toList()) { + Log.v(TAG, "" + key + "=" + sDefaultValues.get(key)); + } + } + } + private volatile boolean mIsImmutable; private final Map<String, String> mValues = new HashMap<>(); /** Set of additional keys that should be considered readable */ private final Set<String> mKeyReadable = new HashSet<>(); - private final Predicate<String> mKeyReadablePredicate = (key) -> { + + /** Set of additional keys that should be considered writable */ + private final Set<String> mKeyWritable = new HashSet<>(); + + public RavenwoodSystemProperties() { + mValues.putAll(sDefaultValues); + } + + /** Copy constructor */ + public RavenwoodSystemProperties(RavenwoodSystemProperties source, boolean immutable) { + mKeyReadable.addAll(source.mKeyReadable); + mKeyWritable.addAll(source.mKeyWritable); + mValues.putAll(source.mValues); + mIsImmutable = immutable; + } + + public Map<String, String> getValues() { + return new HashMap<>(mValues); + } + + public boolean isKeyReadable(String key) { final String root = getKeyRoot(key); if (root.startsWith("debug.")) return true; @@ -45,118 +164,45 @@ public class RavenwoodSystemProperties { if (root.startsWith("soc.")) return true; if (root.startsWith("system.")) return true; + // For PropertyInvalidatedCache + if (root.startsWith("cache_key.")) return true; + switch (key) { case "gsm.version.baseband": case "no.such.thing": + case "qemu.sf.lcd_density": case "ro.bootloader": case "ro.debuggable": case "ro.hardware": case "ro.hw_timeout_multiplier": case "ro.odm.build.media_performance_class": + case "ro.sf.lcd_density": case "ro.treble.enabled": case "ro.vndk.version": + case "ro.icu.data.path": return true; } return mKeyReadable.contains(key); - }; + } - /** Set of additional keys that should be considered writable */ - private final Set<String> mKeyWritable = new HashSet<>(); - private final Predicate<String> mKeyWritablePredicate = (key) -> { + public boolean isKeyWritable(String key) { final String root = getKeyRoot(key); if (root.startsWith("debug.")) return true; - return mKeyWritable.contains(key); - }; - - public RavenwoodSystemProperties() { - // TODO: load these values from build.prop generated files - setValueForPartitions("product.brand", "Android"); - setValueForPartitions("product.device", "Ravenwood"); - setValueForPartitions("product.manufacturer", "Android"); - setValueForPartitions("product.model", "Ravenwood"); - setValueForPartitions("product.name", "Ravenwood"); - - setValueForPartitions("product.cpu.abilist", "x86_64"); - setValueForPartitions("product.cpu.abilist32", ""); - setValueForPartitions("product.cpu.abilist64", "x86_64"); - - setValueForPartitions("build.date", "Thu Jan 01 00:00:00 GMT 2024"); - setValueForPartitions("build.date.utc", "1704092400"); - setValueForPartitions("build.id", "MAIN"); - setValueForPartitions("build.tags", "dev-keys"); - setValueForPartitions("build.type", "userdebug"); - setValueForPartitions("build.version.all_codenames", "REL"); - setValueForPartitions("build.version.codename", "REL"); - setValueForPartitions("build.version.incremental", "userdebug.ravenwood.20240101"); - setValueForPartitions("build.version.known_codenames", "REL"); - setValueForPartitions("build.version.release", "14"); - setValueForPartitions("build.version.release_or_codename", "VanillaIceCream"); - setValueForPartitions("build.version.sdk", "34"); - - setValue("ro.board.first_api_level", "1"); - setValue("ro.product.first_api_level", "1"); - - setValue("ro.soc.manufacturer", "Android"); - setValue("ro.soc.model", "Ravenwood"); - - setValue("ro.debuggable", "1"); - - setValue(RAVENWOOD_SYSPROP, "1"); - } - - /** Copy constructor */ - public RavenwoodSystemProperties(RavenwoodSystemProperties source, boolean immutable) { - this.mKeyReadable.addAll(source.mKeyReadable); - this.mKeyWritable.addAll(source.mKeyWritable); - this.mValues.putAll(source.mValues); - this.mIsImmutable = immutable; - } - - public Map<String, String> getValues() { - return new HashMap<>(mValues); - } + // For PropertyInvalidatedCache + if (root.startsWith("cache_key.")) return true; - public Predicate<String> getKeyReadablePredicate() { - return mKeyReadablePredicate; - } - - public Predicate<String> getKeyWritablePredicate() { - return mKeyWritablePredicate; + return mKeyWritable.contains(key); } - private static final String[] PARTITIONS = { - "bootimage", - "odm", - "product", - "system", - "system_ext", - "vendor", - "vendor_dlkm", - }; - private void ensureNotImmutable() { if (mIsImmutable) { throw new RuntimeException("Unable to update immutable instance"); } } - /** - * Set the given property for all possible partitions where it could be defined. For - * example, the value of {@code ro.build.type} is typically also mirrored under - * {@code ro.system.build.type}, etc. - */ - private void setValueForPartitions(String key, String value) { - ensureNotImmutable(); - - setValue("ro." + key, value); - for (String partition : PARTITIONS) { - setValue("ro." + partition + "." + key, value); - } - } - public void setValue(String key, Object value) { ensureNotImmutable(); @@ -199,11 +245,4 @@ public class RavenwoodSystemProperties { return key; } } - - /** - * Return an immutable, default instance. - */ - // Create a default instance, and make an immutable copy of it. - public static final RavenwoodSystemProperties DEFAULT_VALUES = - new RavenwoodSystemProperties(new RavenwoodSystemProperties(), true); -}
\ No newline at end of file +} diff --git a/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java b/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java new file mode 100644 index 000000000000..b4b751788c6e --- /dev/null +++ b/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +import android.util.Log; + +import org.junit.rules.TestRule; +import org.junit.runner.Description; +import org.junit.runner.Runner; +import org.junit.runner.notification.RunNotifier; +import org.junit.runners.model.Statement; +import org.junit.runners.model.TestClass; + +/** + * A simple pass-through runner that just delegates to the inner runner without doing + * anything special (no hooks, etc.). + * + * This is only used when a real device-side test has Ravenizer enabled. + */ +public class RavenwoodAwareTestRunner extends RavenwoodAwareTestRunnerBase { + private static final String TAG = "Ravenwood"; + + private static class NopRule implements TestRule { + @Override + public Statement apply(Statement base, Description description) { + return base; + } + } + + public static final TestRule sImplicitClassOuterRule = new NopRule(); + public static final TestRule sImplicitClassInnerRule = sImplicitClassOuterRule; + public static final TestRule sImplicitInstOuterRule = sImplicitClassOuterRule; + public static final TestRule sImplicitInstInnerRule = sImplicitClassOuterRule; + + private final Runner mRealRunner; + + public RavenwoodAwareTestRunner(Class<?> clazz) { + Log.v(TAG, "RavenwoodAwareTestRunner starting for " + clazz.getCanonicalName()); + mRealRunner = instantiateRealRunner(new TestClass(clazz)); + } + + @Override + Runner getRealRunner() { + return mRealRunner; + } + + @Override + public void run(RunNotifier notifier) { + mRealRunner.run(notifier); + } + + static void onRavenwoodRuleEnter(Description description, RavenwoodRule rule) { + } + + static void onRavenwoodRuleExit(Description description, RavenwoodRule rule) { + } +} diff --git a/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodConfigState.java b/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodConfigState.java new file mode 100644 index 000000000000..7d3d8b9f7974 --- /dev/null +++ b/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodConfigState.java @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood; + +/** Stub class. The actual implementation is in junit-impl-src. */ +public class RavenwoodConfigState { + public RavenwoodConfigState(RavenwoodConfig config) { + } +} diff --git a/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java b/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java deleted file mode 100644 index 483b98a96034..000000000000 --- a/ravenwood/junit-stub-src/android/platform/test/ravenwood/RavenwoodRuleImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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.platform.test.ravenwood; - -import org.junit.runner.Description; -import org.junit.runners.model.Statement; - -public class RavenwoodRuleImpl { - public static void init(RavenwoodRule rule) { - // No-op when running on a real device - } - - public static void reset(RavenwoodRule rule) { - // No-op when running on a real device - } - - public static void logTestRunner(String label, Description description) { - // No-op when running on a real device - } - - public static void validate(Statement base, Description description, - boolean enableOptionalValidation) { - } - - public static long realCurrentTimeMillis() { - return System.currentTimeMillis(); - } -} diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/JvmWorkaround.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/JvmWorkaround.java index ee280991216a..02153a757cd8 100644 --- a/ravenwood/runtime-common-src/com/android/ravenwood/common/JvmWorkaround.java +++ b/ravenwood/runtime-common-src/com/android/ravenwood/common/JvmWorkaround.java @@ -16,6 +16,7 @@ package com.android.ravenwood.common; import java.io.FileDescriptor; +import java.io.IOException; /** * Collection of methods to workaround limitation in the hostside JVM. @@ -37,13 +38,21 @@ public abstract class JvmWorkaround { */ public abstract void setFdInt(FileDescriptor fd, int fdInt); - /** * Equivalent to Android's FileDescriptor.getInt$(). */ public abstract int getFdInt(FileDescriptor fd); /** + * Equivalent to Android's Os.close(fd). + */ + public abstract void closeFd(FileDescriptor fd) throws IOException; + + public abstract long addressOf(Object o); + + public abstract <T> T fromAddress(long address); + + /** * Placeholder implementation for the host side. * * Even on the host side, we don't want to throw just because the class is loaded, @@ -64,5 +73,20 @@ public abstract class JvmWorkaround { public int getFdInt(FileDescriptor fd) { throw calledOnHostside(); } + + @Override + public void closeFd(FileDescriptor fd) { + throw calledOnHostside(); + } + + @Override + public long addressOf(Object o) { + throw calledOnHostside(); + } + + @Override + public <T> T fromAddress(long address) { + throw calledOnHostside(); + } } } diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/OpenJdkWorkaround.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/OpenJdkWorkaround.java index 9aedaab5b911..2323c65de5cf 100644 --- a/ravenwood/runtime-common-src/com/android/ravenwood/common/OpenJdkWorkaround.java +++ b/ravenwood/runtime-common-src/com/android/ravenwood/common/OpenJdkWorkaround.java @@ -16,8 +16,18 @@ package com.android.ravenwood.common; import java.io.FileDescriptor; +import java.io.IOException; +import java.lang.reflect.InvocationTargetException; +import java.util.Map; +import java.util.WeakHashMap; class OpenJdkWorkaround extends JvmWorkaround { + + // @GuardedBy("sAddressMap") + private static final Map<Object, Long> sAddressMap = new WeakHashMap<>(); + // @GuardedBy("sAddressMap") + private static long sCurrentAddress = 1; + @Override public void setFdInt(FileDescriptor fd, int fdInt) { try { @@ -43,4 +53,43 @@ class OpenJdkWorkaround extends JvmWorkaround { + " perhaps JRE has changed?", e); } } + + @Override + public void closeFd(FileDescriptor fd) throws IOException { + try { + final Object obj = Class.forName("jdk.internal.access.SharedSecrets").getMethod( + "getJavaIOFileDescriptorAccess").invoke(null); + Class.forName("jdk.internal.access.JavaIOFileDescriptorAccess").getMethod( + "close", FileDescriptor.class).invoke(obj, fd); + } catch (InvocationTargetException e) { + SneakyThrow.sneakyThrow(e.getTargetException()); + } catch (ReflectiveOperationException e) { + throw new RuntimeException("Failed to interact with raw FileDescriptor internals;" + + " perhaps JRE has changed?", e); + } + } + + @Override + public long addressOf(Object o) { + synchronized (sAddressMap) { + Long address = sAddressMap.get(o); + if (address == null) { + address = sCurrentAddress++; + sAddressMap.put(o, address); + } + return address; + } + } + + @Override + public <T> T fromAddress(long address) { + synchronized (sAddressMap) { + for (var e : sAddressMap.entrySet()) { + if (e.getValue() == address) { + return (T) e.getKey(); + } + } + } + return null; + } } diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java index c8cc8d9fe273..520f050f0655 100644 --- a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java +++ b/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java @@ -15,12 +15,20 @@ */ package com.android.ravenwood.common; +import android.annotation.NonNull; +import android.annotation.Nullable; + import com.android.ravenwood.common.divergence.RavenwoodDivergence; import java.io.File; import java.io.FileDescriptor; import java.io.FileInputStream; import java.io.PrintStream; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.lang.reflect.Member; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; import java.util.Arrays; public class RavenwoodCommonUtils { @@ -29,10 +37,13 @@ public class RavenwoodCommonUtils { private RavenwoodCommonUtils() { } - private static final Object sLock = new Object(); - - /** Name of `libravenwood_runtime` */ - private static final String RAVENWOOD_NATIVE_RUNTIME_NAME = "ravenwood_runtime"; + /** + * If set to "1", we enable the verbose logging. + * + * (See also InitLogging() in http://ac/system/libbase/logging.cpp) + */ + public static final boolean RAVENWOOD_VERBOSE_LOGGING = "1".equals(System.getenv( + "RAVENWOOD_VERBOSE")); /** Directory name of `out/host/linux-x86/testcases/ravenwood-runtime` */ private static final String RAVENWOOD_RUNTIME_DIR_NAME = "ravenwood-runtime"; @@ -42,12 +53,18 @@ public class RavenwoodCommonUtils { private static final boolean IS_ON_RAVENWOOD = RavenwoodDivergence.isOnRavenwood(); - private static final String RAVEWOOD_RUNTIME_PATH = getRavenwoodRuntimePathInternal(); + private static final String RAVENWOOD_RUNTIME_PATH = getRavenwoodRuntimePathInternal(); public static final String RAVENWOOD_SYSPROP = "ro.is_on_ravenwood"; - // @GuardedBy("sLock") - private static boolean sIntegrityChecked = false; + public static final String RAVENWOOD_RESOURCE_APK = "ravenwood-res-apks/ravenwood-res.apk"; + public static final String RAVENWOOD_INST_RESOURCE_APK = + "ravenwood-res-apks/ravenwood-inst-res.apk"; + + public static final String RAVENWOOD_EMPTY_RESOURCES_APK = + RAVENWOOD_RUNTIME_PATH + "ravenwood-data/ravenwood-empty-res.apk"; + + public static final String RAVENWOOD_VERSION_JAVA_SYSPROP = "android.ravenwood.version"; /** * @return if we're running on Ravenwood. @@ -72,12 +89,16 @@ public class RavenwoodCommonUtils { return sEnableExtraRuntimeCheck; } - /** - * Load the main runtime JNI library. - */ - public static void loadRavenwoodNativeRuntime() { - ensureOnRavenwood(); - loadJniLibrary(RAVENWOOD_NATIVE_RUNTIME_NAME); + /** Simple logging method. */ + public static void log(String tag, String message) { + // Avoid using Android's Log class, which could be broken for various reasons. + // (e.g. the JNI file doesn't exist for whatever reason) + System.out.print(tag + ": " + message + "\n"); + } + + /** Simple logging method. */ + private void log(String tag, String format, Object... args) { + log(tag, String.format(format, args)); } /** @@ -86,16 +107,16 @@ public class RavenwoodCommonUtils { */ public static void loadJniLibrary(String libname) { if (RavenwoodCommonUtils.isOnRavenwood()) { - loadJniLibraryInternal(libname); + System.load(getJniLibraryPath(libname)); } else { System.loadLibrary(libname); } } /** - * Function equivalent to ART's System.loadLibrary. See RavenwoodUtils for why we need it. + * Find the shared library path from java.library.path. */ - private static void loadJniLibraryInternal(String libname) { + public static String getJniLibraryPath(String libname) { var path = System.getProperty("java.library.path"); var filename = "lib" + libname + ".so"; @@ -103,22 +124,21 @@ public class RavenwoodCommonUtils { try { if (path == null) { - throw new UnsatisfiedLinkError("Cannot load library " + libname + "." + throw new UnsatisfiedLinkError("Cannot find library " + libname + "." + " Property java.library.path not set!"); } for (var dir : path.split(":")) { var file = new File(dir + "/" + filename); if (file.exists()) { - System.load(file.getAbsolutePath()); - return; + return file.getAbsolutePath(); } } - throw new UnsatisfiedLinkError("Library " + libname + " not found in " - + "java.library.path: " + path); } catch (Throwable e) { dumpFiles(System.out); throw e; } + throw new UnsatisfiedLinkError("Library " + libname + " not found in " + + "java.library.path: " + path); } private static void dumpFiles(PrintStream out) { @@ -176,7 +196,7 @@ public class RavenwoodCommonUtils { */ public static String getRavenwoodRuntimePath() { ensureOnRavenwood(); - return RAVEWOOD_RUNTIME_PATH; + return RAVENWOOD_RUNTIME_PATH; } private static String getRavenwoodRuntimePathInternal() { @@ -231,4 +251,37 @@ public class RavenwoodCommonUtils { var is = new FileInputStream(fd); RavenwoodCommonUtils.closeQuietly(is); } + + public static void ensureIsPublicVoidMethod(Method method, boolean isStatic) { + var ok = Modifier.isPublic(method.getModifiers()) + && (Modifier.isStatic(method.getModifiers()) == isStatic) + && (method.getReturnType() == void.class); + if (ok) { + return; // okay + } + throw new AssertionError(String.format( + "Method %s.%s() expected to be public %svoid", + method.getDeclaringClass().getName(), method.getName(), + (isStatic ? "static " : ""))); + } + + public static void ensureIsPublicMember(Member member, boolean isStatic) { + var ok = Modifier.isPublic(member.getModifiers()) + && (Modifier.isStatic(member.getModifiers()) == isStatic); + if (ok) { + return; // okay + } + throw new AssertionError(String.format( + "%s.%s expected to be public %s", + member.getDeclaringClass().getName(), member.getName(), + (isStatic ? "static" : ""))); + } + + @NonNull + public static String getStackTraceString(@Nullable Throwable th) { + StringWriter stringWriter = new StringWriter(); + PrintWriter writer = new PrintWriter(stringWriter); + th.printStackTrace(writer); + return stringWriter.toString(); + } } diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodRuntimeNative.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodRuntimeNative.java deleted file mode 100644 index 65402219ebee..000000000000 --- a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodRuntimeNative.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (C) 2024 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.ravenwood.common; - -import java.io.FileDescriptor; - -/** - * Class to host all the JNI methods used in ravenwood runtime. - */ -public class RavenwoodRuntimeNative { - private RavenwoodRuntimeNative() { - } - - static { - RavenwoodCommonUtils.ensureOnRavenwood(); - RavenwoodCommonUtils.loadRavenwoodNativeRuntime(); - } - - public static native void applyFreeFunction(long freeFunction, long nativePtr); - - public static native long nLseek(int fd, long offset, int whence); - - public static native int[] nPipe2(int flags); - - public static native int nDup(int oldfd); - - public static native int nFcntlInt(int fd, int cmd, int arg); - - public static long lseek(FileDescriptor fd, long offset, int whence) { - return nLseek(JvmWorkaround.getInstance().getFdInt(fd), offset, whence); - } - - public static FileDescriptor[] pipe2(int flags) { - var fds = nPipe2(flags); - var ret = new FileDescriptor[] { - new FileDescriptor(), - new FileDescriptor(), - }; - JvmWorkaround.getInstance().setFdInt(ret[0], fds[0]); - JvmWorkaround.getInstance().setFdInt(ret[1], fds[1]); - - return ret; - } - - public static FileDescriptor dup(FileDescriptor fd) { - var fdInt = nDup(JvmWorkaround.getInstance().getFdInt(fd)); - - var retFd = new java.io.FileDescriptor(); - JvmWorkaround.getInstance().setFdInt(retFd, fdInt); - return retFd; - } - - public static int fcntlInt(FileDescriptor fd, int cmd, int arg) { - var fdInt = JvmWorkaround.getInstance().getFdInt(fd); - - return nFcntlInt(fdInt, cmd, arg); - } -} diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/SneakyThrow.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/SneakyThrow.java new file mode 100644 index 000000000000..0dbf7df12bce --- /dev/null +++ b/ravenwood/runtime-common-src/com/android/ravenwood/common/SneakyThrow.java @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2024 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.ravenwood.common; + +public class SneakyThrow { + + private SneakyThrow() { + } + + /** + * Throw checked exceptions without the need to declare in method signature + */ + public static void sneakyThrow(Throwable t) { + SneakyThrow.<RuntimeException>sneakyThrow_(t); + } + + private static <T extends Throwable> void sneakyThrow_(Throwable t) throws T { + throw (T) t; + } +} diff --git a/ravenwood/runtime-helper-src/framework/android/os/Process_ravenwood.java b/ravenwood/runtime-helper-src/framework/android/os/Process_ravenwood.java new file mode 100644 index 000000000000..3c6a4d78d1d9 --- /dev/null +++ b/ravenwood/runtime-helper-src/framework/android/os/Process_ravenwood.java @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2024 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.os; + +import android.util.Pair; + +public class Process_ravenwood { + + private static volatile ThreadLocal<Pair<Integer, Boolean>> sThreadPriority; + + static { + reset(); + } + + public static void reset() { + // Reset the thread local variable + sThreadPriority = ThreadLocal.withInitial( + () -> Pair.create(Process.THREAD_PRIORITY_DEFAULT, true)); + } + + /** + * Called by {@link Process#setThreadPriority(int, int)} + */ + public static void setThreadPriority(int tid, int priority) { + if (Process.myTid() == tid) { + boolean backgroundOk = sThreadPriority.get().second; + if (priority >= Process.THREAD_PRIORITY_BACKGROUND && !backgroundOk) { + throw new IllegalArgumentException( + "Priority " + priority + " blocked by setCanSelfBackground()"); + } + sThreadPriority.set(Pair.create(priority, backgroundOk)); + } else { + throw new UnsupportedOperationException( + "Cross-thread priority management not yet available in Ravenwood"); + } + } + + /** + * Called by {@link Process#setCanSelfBackground(boolean)} + */ + public static void setCanSelfBackground(boolean backgroundOk) { + int priority = sThreadPriority.get().first; + sThreadPriority.set(Pair.create(priority, backgroundOk)); + } + + /** + * Called by {@link Process#getThreadPriority(int)} + */ + public static int getThreadPriority(int tid) { + if (Process.myTid() == tid) { + return sThreadPriority.get().first; + } else { + throw new UnsupportedOperationException( + "Cross-thread priority management not yet available in Ravenwood"); + } + } +} diff --git a/ravenwood/runtime-helper-src/framework/android/provider/DeviceConfig_host.java b/ravenwood/runtime-helper-src/framework/android/provider/DeviceConfig_host.java new file mode 100644 index 000000000000..9c2188fd377a --- /dev/null +++ b/ravenwood/runtime-helper-src/framework/android/provider/DeviceConfig_host.java @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2024 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.provider; + +public class DeviceConfig_host { + + /** + * Called by Ravenwood runtime to reset all local changes. + */ + public static void reset() { + RavenwoodConfigDataStore.getInstance().clearAll(); + } + + /** + * Called by {@link DeviceConfig#newDataStore()} + */ + public static DeviceConfigDataStore newDataStore() { + return RavenwoodConfigDataStore.getInstance(); + } +} diff --git a/ravenwood/runtime-helper-src/framework/android/provider/RavenwoodConfigDataStore.java b/ravenwood/runtime-helper-src/framework/android/provider/RavenwoodConfigDataStore.java new file mode 100644 index 000000000000..4bc3de79fe6b --- /dev/null +++ b/ravenwood/runtime-helper-src/framework/android/provider/RavenwoodConfigDataStore.java @@ -0,0 +1,253 @@ +/* + * Copyright (C) 2024 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.provider; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.ContentResolver; +import android.database.ContentObserver; +import android.net.Uri; +import android.os.Handler; +import android.os.Looper; +import android.provider.DeviceConfig.BadConfigException; +import android.provider.DeviceConfig.MonitorCallback; +import android.provider.DeviceConfig.Properties; + +import com.android.internal.annotations.GuardedBy; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.concurrent.Executor; + +/** + * {@link DeviceConfigDataStore} used only on Ravenwood. + * + * TODO(b/368591527) Support monitor callback related features + * TODO(b/368591527) Support "default" related features + */ +final class RavenwoodConfigDataStore implements DeviceConfigDataStore { + private static final RavenwoodConfigDataStore sInstance = new RavenwoodConfigDataStore(); + + private final Object mLock = new Object(); + + @GuardedBy("mLock") + private int mSyncDisabledMode = DeviceConfig.SYNC_DISABLED_MODE_NONE; + + @GuardedBy("mLock") + private final HashMap<String, HashMap<String, String>> mStore = new HashMap<>(); + + private record ObserverInfo(String namespace, ContentObserver observer) { + } + + @GuardedBy("mLock") + private final ArrayList<ObserverInfo> mObservers = new ArrayList<>(); + + static RavenwoodConfigDataStore getInstance() { + return sInstance; + } + + private static void shouldNotBeCalled() { + throw new RuntimeException("shouldNotBeCalled"); + } + + void clearAll() { + synchronized (mLock) { + mSyncDisabledMode = DeviceConfig.SYNC_DISABLED_MODE_NONE; + mStore.clear(); + } + } + + @GuardedBy("mLock") + private HashMap<String, String> getNamespaceLocked(@NonNull String namespace) { + Objects.requireNonNull(namespace); + return mStore.computeIfAbsent(namespace, k -> new HashMap<>()); + } + + /** {@inheritDoc} */ + @NonNull + @Override + public Map<String, String> getAllProperties() { + synchronized (mLock) { + var ret = new HashMap<String, String>(); + + for (var namespaceAndMap : mStore.entrySet()) { + for (var nameAndValue : namespaceAndMap.getValue().entrySet()) { + ret.put(namespaceAndMap.getKey() + "/" + nameAndValue.getKey(), + nameAndValue.getValue()); + } + } + return ret; + } + } + + /** {@inheritDoc} */ + @NonNull + @Override + public Properties getProperties(@NonNull String namespace, @NonNull String... names) { + Objects.requireNonNull(namespace); + + synchronized (mLock) { + var namespaceMap = getNamespaceLocked(namespace); + + if (names.length == 0) { + return new Properties(namespace, Map.copyOf(namespaceMap)); + } else { + var map = new HashMap<String, String>(); + for (var name : names) { + Objects.requireNonNull(name); + map.put(name, namespaceMap.get(name)); + } + return new Properties(namespace, map); + } + } + } + + /** {@inheritDoc} */ + @Override + public boolean setProperties(@NonNull Properties properties) throws BadConfigException { + Objects.requireNonNull(properties); + + synchronized (mLock) { + var namespaceMap = getNamespaceLocked(properties.getNamespace()); + for (var kv : properties.getPropertyValues().entrySet()) { + namespaceMap.put( + Objects.requireNonNull(kv.getKey()), + Objects.requireNonNull(kv.getValue()) + ); + } + notifyObserversLock(properties.getNamespace(), + properties.getKeyset().toArray(new String[0])); + } + return true; + } + + /** {@inheritDoc} */ + @Override + public boolean setProperty(@NonNull String namespace, @NonNull String name, + @Nullable String value, boolean makeDefault) { + Objects.requireNonNull(namespace); + Objects.requireNonNull(name); + + synchronized (mLock) { + var namespaceMap = getNamespaceLocked(namespace); + namespaceMap.put(name, value); + + // makeDefault not supported. + notifyObserversLock(namespace, new String[]{name}); + } + return true; + } + + /** {@inheritDoc} */ + @Override + public boolean deleteProperty(@NonNull String namespace, @NonNull String name) { + Objects.requireNonNull(namespace); + Objects.requireNonNull(name); + + synchronized (mLock) { + var namespaceMap = getNamespaceLocked(namespace); + if (namespaceMap.remove(name) != null) { + notifyObserversLock(namespace, new String[]{name}); + } + } + return true; + } + + /** {@inheritDoc} */ + @Override + public void resetToDefaults(int resetMode, @Nullable String namespace) { + // not supported in DeviceConfig.java + shouldNotBeCalled(); + } + + /** {@inheritDoc} */ + @Override + public void setSyncDisabledMode(int syncDisabledMode) { + synchronized (mLock) { + mSyncDisabledMode = syncDisabledMode; + } + } + + /** {@inheritDoc} */ + @Override + public int getSyncDisabledMode() { + synchronized (mLock) { + return mSyncDisabledMode; + } + } + + /** {@inheritDoc} */ + @Override + public void setMonitorCallback(@NonNull ContentResolver resolver, @NonNull Executor executor, + @NonNull MonitorCallback callback) { + // not supported in DeviceConfig.java + shouldNotBeCalled(); + } + + /** {@inheritDoc} */ + @Override + public void clearMonitorCallback(@NonNull ContentResolver resolver) { + // not supported in DeviceConfig.java + shouldNotBeCalled(); + } + + /** {@inheritDoc} */ + @Override + public void registerContentObserver(@NonNull String namespace, boolean notifyForescendants, + ContentObserver contentObserver) { + synchronized (mLock) { + mObservers.add(new ObserverInfo( + Objects.requireNonNull(namespace), + Objects.requireNonNull(contentObserver) + )); + } + } + + /** {@inheritDoc} */ + @Override + public void unregisterContentObserver(@NonNull ContentObserver contentObserver) { + synchronized (mLock) { + for (int i = mObservers.size() - 1; i >= 0; i--) { + if (mObservers.get(i).observer == contentObserver) { + mObservers.remove(i); + } + } + } + } + + private static final Uri CONTENT_URI = Uri.parse("content://settings/config"); + + @GuardedBy("mLock") + private void notifyObserversLock(@NonNull String namespace, String[] keys) { + var urib = CONTENT_URI.buildUpon().appendPath(namespace); + for (var key : keys) { + urib.appendEncodedPath(key); + } + var uri = urib.build(); + + final var copy = List.copyOf(mObservers); + new Handler(Looper.getMainLooper()).post(() -> { + for (int i = copy.size() - 1; i >= 0; i--) { + if (copy.get(i).namespace.equals(namespace)) { + copy.get(i).observer.dispatchChange(false, uri); + } + } + }); + } +} diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/EventLog_host.java b/ravenwood/runtime-helper-src/framework/android/util/EventLog_host.java index 55d4ffb41e78..878a0ff57a1d 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/EventLog_host.java +++ b/ravenwood/runtime-helper-src/framework/android/util/EventLog_host.java @@ -13,12 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package android.util; import com.android.internal.os.RuntimeInit; import java.io.PrintStream; -import java.util.Collection; public class EventLog_host { public static int writeEvent(int tag, int value) { @@ -58,15 +57,6 @@ public class EventLog_host { return sb.length(); } - public static void readEvents(int[] tags, Collection<android.util.EventLog.Event> output) { - throw new UnsupportedOperationException(); - } - - public static void readEventsOnWrapping(int[] tags, long timestamp, - Collection<android.util.EventLog.Event> output) { - throw new UnsupportedOperationException(); - } - /** * Return the "real" {@code System.out} if it's been swapped by {@code RavenwoodRuleImpl}, so * that we don't end up in a recursive loop. diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/Log_host.java b/ravenwood/runtime-helper-src/framework/android/util/Log_host.java index f301b9c46b0e..c85bd23db893 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/Log_host.java +++ b/ravenwood/runtime-helper-src/framework/android/util/Log_host.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.platform.test.ravenwood.nativesubstitution; +package android.util; -import android.util.Log; import android.util.Log.Level; import com.android.internal.os.RuntimeInit; +import com.android.ravenwood.common.RavenwoodCommonUtils; import java.io.PrintStream; @@ -36,6 +36,9 @@ public class Log_host { } public static int println_native(int bufID, int priority, String tag, String msg) { + if (priority < Log.INFO && !RavenwoodCommonUtils.RAVENWOOD_VERBOSE_LOGGING) { + return msg.length(); // No verbose logging. + } final String buffer; switch (bufID) { case Log.LOG_ID_MAIN: buffer = "main"; break; @@ -44,7 +47,7 @@ public class Log_host { case Log.LOG_ID_SYSTEM: buffer = "system"; break; case Log.LOG_ID_CRASH: buffer = "crash"; break; default: buffer = "buf:" + bufID; break; - }; + } final String prio; switch (priority) { @@ -55,7 +58,7 @@ public class Log_host { case Log.ERROR: prio = "E"; break; case Log.ASSERT: prio = "A"; break; default: prio = "prio:" + priority; break; - }; + } for (String s : msg.split("\\n")) { getRealOut().println(String.format("logd: [%s] %s %s: %s", buffer, prio, tag, s)); diff --git a/ravenwood/runtime-helper-src/framework/com/android/internal/ravenwood/RavenwoodEnvironment_host.java b/ravenwood/runtime-helper-src/framework/com/android/internal/ravenwood/RavenwoodEnvironment_host.java new file mode 100644 index 000000000000..b65668b67e03 --- /dev/null +++ b/ravenwood/runtime-helper-src/framework/com/android/internal/ravenwood/RavenwoodEnvironment_host.java @@ -0,0 +1,38 @@ +/* + * Copyright (C) 2024 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.internal.ravenwood; + +import com.android.ravenwood.common.JvmWorkaround; +import com.android.ravenwood.common.RavenwoodCommonUtils; + +public class RavenwoodEnvironment_host { + private RavenwoodEnvironment_host() { + } + + /** + * Called from {@link RavenwoodEnvironment#getRavenwoodRuntimePath()}. + */ + public static String getRavenwoodRuntimePath(RavenwoodEnvironment env) { + return RavenwoodCommonUtils.getRavenwoodRuntimePath(); + } + + /** + * Called from {@link RavenwoodEnvironment#fromAddress(long)}. + */ + public static <T> T fromAddress(RavenwoodEnvironment env, long address) { + return JvmWorkaround.getInstance().fromAddress(address); + } +} diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/ParcelFileDescriptor_host.java b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/ParcelFileDescriptor_host.java deleted file mode 100644 index 8fe6853abb45..000000000000 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/ParcelFileDescriptor_host.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Copyright (C) 2024 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.platform.test.ravenwood.nativesubstitution; - -import static android.os.ParcelFileDescriptor.MODE_APPEND; -import static android.os.ParcelFileDescriptor.MODE_CREATE; -import static android.os.ParcelFileDescriptor.MODE_READ_ONLY; -import static android.os.ParcelFileDescriptor.MODE_READ_WRITE; -import static android.os.ParcelFileDescriptor.MODE_TRUNCATE; -import static android.os.ParcelFileDescriptor.MODE_WORLD_READABLE; -import static android.os.ParcelFileDescriptor.MODE_WORLD_WRITEABLE; -import static android.os.ParcelFileDescriptor.MODE_WRITE_ONLY; - -import com.android.internal.annotations.GuardedBy; -import com.android.ravenwood.common.JvmWorkaround; - -import java.io.File; -import java.io.FileDescriptor; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.RandomAccessFile; -import java.util.HashMap; -import java.util.Map; - -public class ParcelFileDescriptor_host { - /** - * Since we don't have a great way to keep an unmanaged {@code FileDescriptor} reference - * alive, we keep a strong reference to the {@code RandomAccessFile} we used to open it. This - * gives us a way to look up the original parent object when closing later. - */ - @GuardedBy("sActive") - private static final Map<FileDescriptor, RandomAccessFile> sActive = new HashMap<>(); - - public static void native_setFdInt$ravenwood(FileDescriptor fd, int fdInt) { - JvmWorkaround.getInstance().setFdInt(fd, fdInt); - } - - public static int native_getFdInt$ravenwood(FileDescriptor fd) { - return JvmWorkaround.getInstance().getFdInt(fd); - } - - public static FileDescriptor native_open$ravenwood(File file, int pfdMode) throws IOException { - if ((pfdMode & MODE_CREATE) != 0 && !file.exists()) { - throw new FileNotFoundException(); - } - - final String modeString; - if ((pfdMode & MODE_READ_WRITE) == MODE_READ_WRITE) { - modeString = "rw"; - } else if ((pfdMode & MODE_WRITE_ONLY) == MODE_WRITE_ONLY) { - modeString = "rw"; - } else if ((pfdMode & MODE_READ_ONLY) == MODE_READ_ONLY) { - modeString = "r"; - } else { - throw new IllegalArgumentException(); - } - - final RandomAccessFile raf = new RandomAccessFile(file, modeString); - - // Now that we have a real file on disk, match requested flags - if ((pfdMode & MODE_TRUNCATE) != 0) { - raf.setLength(0); - } - if ((pfdMode & MODE_APPEND) != 0) { - raf.seek(raf.length()); - } - if ((pfdMode & MODE_WORLD_READABLE) != 0) { - file.setReadable(true, false); - } - if ((pfdMode & MODE_WORLD_WRITEABLE) != 0) { - file.setWritable(true, false); - } - - final FileDescriptor fd = raf.getFD(); - synchronized (sActive) { - sActive.put(fd, raf); - } - return fd; - } - - public static void native_close$ravenwood(FileDescriptor fd) { - final RandomAccessFile raf; - synchronized (sActive) { - raf = sActive.remove(fd); - } - try { - if (raf != null) { - raf.close(); - } else { - // Odd, we don't remember opening this ourselves, but let's release the - // underlying resource as requested - System.err.println("Closing unknown FileDescriptor: " + fd); - new FileOutputStream(fd).close(); - } - } catch (IOException ignored) { - } - } -} diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/Parcel_host.java b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/Parcel_host.java deleted file mode 100644 index 22e11e18ae31..000000000000 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/Parcel_host.java +++ /dev/null @@ -1,406 +0,0 @@ -/* - * 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.platform.test.ravenwood.nativesubstitution; - -import java.nio.ByteBuffer; -import java.nio.charset.StandardCharsets; -import java.util.Arrays; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.atomic.AtomicLong; - -/** - * Tentative, partial implementation of the Parcel native methods, using Java's - * {@code byte[]}. - * (We don't use a {@link ByteBuffer} because there's enough semantics differences between Parcel - * and {@link ByteBuffer}, and it didn't work out. - * e.g. Parcel seems to allow moving the data position to be beyond its size? Which - * {@link ByteBuffer} wouldn't allow...) - */ -public class Parcel_host { - private Parcel_host() { - } - - private static final AtomicLong sNextId = new AtomicLong(1); - - private static final Map<Long, Parcel_host> sInstances = new ConcurrentHashMap<>(); - - private boolean mDeleted = false; - - private byte[] mBuffer; - private int mSize; - private int mPos; - - private boolean mSensitive; - private boolean mAllowFds; - - // TODO Use the actual value from Parcel.java. - private static final int OK = 0; - - private void validate() { - if (mDeleted) { - // TODO: Put more info - throw new RuntimeException("Parcel already destroyed"); - } - } - - private static Parcel_host getInstance(long id) { - Parcel_host p = sInstances.get(id); - if (p == null) { - // TODO: Put more info - throw new RuntimeException("Parcel doesn't exist with id=" + id); - } - p.validate(); - return p; - } - - public static long nativeCreate() { - final long id = sNextId.getAndIncrement(); - final Parcel_host p = new Parcel_host(); - sInstances.put(id, p); - p.init(); - return id; - } - - private void init() { - mBuffer = new byte[0]; - mSize = 0; - mPos = 0; - mSensitive = false; - mAllowFds = false; - } - - private void updateSize() { - if (mSize < mPos) { - mSize = mPos; - } - } - - public static void nativeDestroy(long nativePtr) { - getInstance(nativePtr).mDeleted = true; - sInstances.remove(nativePtr); - } - - public static void nativeFreeBuffer(long nativePtr) { - getInstance(nativePtr).freeBuffer(); - } - - public void freeBuffer() { - init(); - } - - private int getCapacity() { - return mBuffer.length; - } - - private void ensureMoreCapacity(int size) { - ensureCapacity(mPos + size); - } - - private void ensureCapacity(int targetSize) { - if (targetSize <= getCapacity()) { - return; - } - var newSize = getCapacity() * 2; - if (newSize < targetSize) { - newSize = targetSize; - } - forceSetCapacity(newSize); - } - - private void forceSetCapacity(int newSize) { - var newBuf = new byte[newSize]; - - // Copy - System.arraycopy(mBuffer, 0, newBuf, 0, Math.min(newSize, getCapacity())); - - this.mBuffer = newBuf; - } - - private void ensureDataAvailable(int requestSize) { - if (mSize - mPos < requestSize) { - throw new RuntimeException(String.format( - "Pacel data underflow. size=%d, pos=%d, request=%d", mSize, mPos, requestSize)); - } - } - - public static void nativeMarkSensitive(long nativePtr) { - getInstance(nativePtr).mSensitive = true; - } - public static int nativeDataSize(long nativePtr) { - return getInstance(nativePtr).mSize; - } - public static int nativeDataAvail(long nativePtr) { - var p = getInstance(nativePtr); - return p.mSize - p.mPos; - } - public static int nativeDataPosition(long nativePtr) { - return getInstance(nativePtr).mPos; - } - public static int nativeDataCapacity(long nativePtr) { - return getInstance(nativePtr).mBuffer.length; - } - public static void nativeSetDataSize(long nativePtr, int size) { - var p = getInstance(nativePtr); - p.ensureCapacity(size); - getInstance(nativePtr).mSize = size; - } - public static void nativeSetDataPosition(long nativePtr, int pos) { - var p = getInstance(nativePtr); - // TODO: Should this change the size or the capacity?? - p.mPos = pos; - } - public static void nativeSetDataCapacity(long nativePtr, int size) { - if (size < 0) { - throw new IllegalArgumentException("size < 0: size=" + size); - } - var p = getInstance(nativePtr); - if (p.getCapacity() < size) { - p.forceSetCapacity(size); - } - } - - public static boolean nativePushAllowFds(long nativePtr, boolean allowFds) { - var p = getInstance(nativePtr); - var prev = p.mAllowFds; - p.mAllowFds = allowFds; - return prev; - } - public static void nativeRestoreAllowFds(long nativePtr, boolean lastValue) { - getInstance(nativePtr).mAllowFds = lastValue; - } - - public static void nativeWriteByteArray(long nativePtr, byte[] b, int offset, int len) { - nativeWriteBlob(nativePtr, b, offset, len); - } - - public static void nativeWriteBlob(long nativePtr, byte[] b, int offset, int len) { - var p = getInstance(nativePtr); - - if (b == null) { - nativeWriteInt(nativePtr, -1); - } else { - final var alignedSize = align4(len); - - nativeWriteInt(nativePtr, len); - - p.ensureMoreCapacity(alignedSize); - - System.arraycopy(b, offset, p.mBuffer, p.mPos, len); - p.mPos += alignedSize; - p.updateSize(); - } - } - - public static int nativeWriteInt(long nativePtr, int value) { - var p = getInstance(nativePtr); - p.ensureMoreCapacity(Integer.BYTES); - - p.mBuffer[p.mPos++] = (byte) ((value >> 24) & 0xff); - p.mBuffer[p.mPos++] = (byte) ((value >> 16) & 0xff); - p.mBuffer[p.mPos++] = (byte) ((value >> 8) & 0xff); - p.mBuffer[p.mPos++] = (byte) ((value >> 0) & 0xff); - - p.updateSize(); - - return OK; - } - - public static int nativeWriteLong(long nativePtr, long value) { - nativeWriteInt(nativePtr, (int) (value >>> 32)); - nativeWriteInt(nativePtr, (int) (value)); - return OK; - } - public static int nativeWriteFloat(long nativePtr, float val) { - return nativeWriteInt(nativePtr, Float.floatToIntBits(val)); - } - public static int nativeWriteDouble(long nativePtr, double val) { - return nativeWriteLong(nativePtr, Double.doubleToLongBits(val)); - } - - private static int align4(int val) { - return ((val + 3) / 4) * 4; - } - - public static void nativeWriteString8(long nativePtr, String val) { - if (val == null) { - nativeWriteBlob(nativePtr, null, 0, 0); - } else { - var bytes = val.getBytes(StandardCharsets.UTF_8); - nativeWriteBlob(nativePtr, bytes, 0, bytes.length); - } - } - public static void nativeWriteString16(long nativePtr, String val) { - // Just reuse String8 - nativeWriteString8(nativePtr, val); - } - - public static byte[] nativeCreateByteArray(long nativePtr) { - return nativeReadBlob(nativePtr); - } - - public static boolean nativeReadByteArray(long nativePtr, byte[] dest, int destLen) { - if (dest == null) { - return false; - } - var data = nativeReadBlob(nativePtr); - if (data == null) { - System.err.println("Percel has NULL, which is unexpected."); // TODO: Is this correct? - return false; - } - // TODO: Make sure the check logic is correct. - if (data.length != destLen) { - System.err.println("Byte array size mismatch: expected=" - + data.length + " given=" + destLen); - return false; - } - System.arraycopy(data, 0, dest, 0, data.length); - return true; - } - - public static byte[] nativeReadBlob(long nativePtr) { - var p = getInstance(nativePtr); - if (p.mSize - p.mPos < 4) { - // Match native impl that returns "null" when not enough data - return null; - } - final var size = nativeReadInt(nativePtr); - if (size == -1) { - return null; - } - try { - p.ensureDataAvailable(align4(size)); - } catch (Exception e) { - System.err.println(e.toString()); - return null; - } - - var bytes = new byte[size]; - System.arraycopy(p.mBuffer, p.mPos, bytes, 0, size); - - p.mPos += align4(size); - - return bytes; - } - public static int nativeReadInt(long nativePtr) { - var p = getInstance(nativePtr); - - if (p.mSize - p.mPos < 4) { - // Match native impl that returns "0" when not enough data - return 0; - } - - var ret = (((p.mBuffer[p.mPos++] & 0xff) << 24) - | ((p.mBuffer[p.mPos++] & 0xff) << 16) - | ((p.mBuffer[p.mPos++] & 0xff) << 8) - | ((p.mBuffer[p.mPos++] & 0xff) << 0)); - - return ret; - } - public static long nativeReadLong(long nativePtr) { - return (((long) nativeReadInt(nativePtr)) << 32) - | (((long) nativeReadInt(nativePtr)) & 0xffff_ffffL); - } - - public static float nativeReadFloat(long nativePtr) { - return Float.intBitsToFloat(nativeReadInt(nativePtr)); - } - - public static double nativeReadDouble(long nativePtr) { - return Double.longBitsToDouble(nativeReadLong(nativePtr)); - } - - public static String nativeReadString8(long nativePtr) { - final var bytes = nativeReadBlob(nativePtr); - if (bytes == null) { - return null; - } - return new String(bytes, StandardCharsets.UTF_8); - } - public static String nativeReadString16(long nativePtr) { - return nativeReadString8(nativePtr); - } - - public static byte[] nativeMarshall(long nativePtr) { - var p = getInstance(nativePtr); - return Arrays.copyOf(p.mBuffer, p.mSize); - } - public static void nativeUnmarshall( - long nativePtr, byte[] data, int offset, int length) { - var p = getInstance(nativePtr); - p.ensureMoreCapacity(length); - System.arraycopy(data, offset, p.mBuffer, p.mPos, length); - p.mPos += length; - p.updateSize(); - } - public static int nativeCompareData(long thisNativePtr, long otherNativePtr) { - var a = getInstance(thisNativePtr); - var b = getInstance(otherNativePtr); - if ((a.mSize == b.mSize) && Arrays.equals(a.mBuffer, b.mBuffer)) { - return 0; - } else { - return -1; - } - } - public static boolean nativeCompareDataInRange( - long ptrA, int offsetA, long ptrB, int offsetB, int length) { - var a = getInstance(ptrA); - var b = getInstance(ptrB); - if (offsetA < 0 || offsetA + length > a.mSize) { - throw new IllegalArgumentException(); - } - if (offsetB < 0 || offsetB + length > b.mSize) { - throw new IllegalArgumentException(); - } - return Arrays.equals(Arrays.copyOfRange(a.mBuffer, offsetA, offsetA + length), - Arrays.copyOfRange(b.mBuffer, offsetB, offsetB + length)); - } - public static void nativeAppendFrom( - long thisNativePtr, long otherNativePtr, int srcOffset, int length) { - var dst = getInstance(thisNativePtr); - var src = getInstance(otherNativePtr); - - dst.ensureMoreCapacity(length); - - System.arraycopy(src.mBuffer, srcOffset, dst.mBuffer, dst.mPos, length); - dst.mPos += length; // TODO: 4 byte align? - dst.updateSize(); - - // TODO: Update the other's position? - } - - public static boolean nativeHasFileDescriptors(long nativePtr) { - // Assume false for now, because we don't support writing FDs yet. - return false; - } - - public static boolean nativeHasFileDescriptorsInRange( - long nativePtr, int offset, int length) { - // Assume false for now, because we don't support writing FDs yet. - return false; - } - - public static boolean nativeHasBinders(long nativePtr) { - // Assume false for now, because we don't support adding binders. - return false; - } - - public static boolean nativeHasBindersInRange( - long nativePtr, int offset, int length) { - // Assume false for now, because we don't support writing FDs yet. - return false; - } -} diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/RavenwoodEnvironment_host.java b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/RavenwoodEnvironment_host.java deleted file mode 100644 index b00cee02f611..000000000000 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/RavenwoodEnvironment_host.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (C) 2024 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.platform.test.ravenwood.nativesubstitution; - -import android.platform.test.ravenwood.RavenwoodSystemProperties; -import android.util.Log; - -import com.android.internal.ravenwood.RavenwoodEnvironment; -import com.android.ravenwood.common.RavenwoodCommonUtils; - -public class RavenwoodEnvironment_host { - private static final String TAG = RavenwoodEnvironment.TAG; - - private static final Object sInitializeLock = new Object(); - - // @GuardedBy("sInitializeLock") - private static boolean sInitialized; - - private RavenwoodEnvironment_host() { - } - - /** - * Called from {@link RavenwoodEnvironment#ensureRavenwoodInitialized()}. - */ - public static void ensureRavenwoodInitializedInternal() { - synchronized (sInitializeLock) { - if (sInitialized) { - return; - } - Log.i(TAG, "Initializing Ravenwood environment"); - - // Set the default values. - var sysProps = RavenwoodSystemProperties.DEFAULT_VALUES; - - // We have a method that does it in RavenwoodRuleImpl, but we can't use that class - // here, So just inline it. - SystemProperties_host.initializeIfNeeded( - sysProps.getValues(), - sysProps.getKeyReadablePredicate(), - sysProps.getKeyWritablePredicate()); - - sInitialized = true; - } - } -}
\ No newline at end of file diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/SystemProperties_host.java b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/SystemProperties_host.java deleted file mode 100644 index e7479d313918..000000000000 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/nativesubstitution/SystemProperties_host.java +++ /dev/null @@ -1,210 +0,0 @@ -/* - * 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.platform.test.ravenwood.nativesubstitution; - -import android.util.SparseArray; - -import com.android.internal.annotations.GuardedBy; -import com.android.internal.util.Preconditions; - -import java.util.Map; -import java.util.Objects; -import java.util.function.Predicate; - -public class SystemProperties_host { - private static final Object sLock = new Object(); - - /** Active system property values */ - @GuardedBy("sLock") - private static Map<String, String> sValues; - /** Predicate tested to determine if a given key can be read. */ - @GuardedBy("sLock") - private static Predicate<String> sKeyReadablePredicate; - /** Predicate tested to determine if a given key can be written. */ - @GuardedBy("sLock") - private static Predicate<String> sKeyWritablePredicate; - /** Callback to trigger when values are changed */ - @GuardedBy("sLock") - private static Runnable sChangeCallback; - - /** - * Reverse mapping that provides a way back to an original key from the - * {@link System#identityHashCode(Object)} of {@link String#intern}. - */ - @GuardedBy("sLock") - private static SparseArray<String> sKeyHandles = new SparseArray<>(); - - /** - * Basically the same as {@link #native_init$ravenwood}, but it'll only run if no values are - * set yet. - */ - public static void initializeIfNeeded(Map<String, String> values, - Predicate<String> keyReadablePredicate, Predicate<String> keyWritablePredicate) { - synchronized (sLock) { - if (sValues != null) { - return; // Already initialized. - } - native_init$ravenwood(values, keyReadablePredicate, keyWritablePredicate, - () -> {}); - } - } - - public static void native_init$ravenwood(Map<String, String> values, - Predicate<String> keyReadablePredicate, Predicate<String> keyWritablePredicate, - Runnable changeCallback) { - synchronized (sLock) { - sValues = Objects.requireNonNull(values); - sKeyReadablePredicate = Objects.requireNonNull(keyReadablePredicate); - sKeyWritablePredicate = Objects.requireNonNull(keyWritablePredicate); - sChangeCallback = Objects.requireNonNull(changeCallback); - sKeyHandles.clear(); - } - } - - public static void native_reset$ravenwood() { - synchronized (sLock) { - sValues = null; - sKeyReadablePredicate = null; - sKeyWritablePredicate = null; - sChangeCallback = null; - sKeyHandles.clear(); - } - } - - public static void native_set(String key, String val) { - synchronized (sLock) { - Objects.requireNonNull(key); - Preconditions.requireNonNullViaRavenwoodRule(sValues); - if (!sKeyWritablePredicate.test(key)) { - throw new IllegalArgumentException( - "Write access to system property '" + key + "' denied via RavenwoodRule"); - } - if (key.startsWith("ro.") && sValues.containsKey(key)) { - throw new IllegalArgumentException( - "System property '" + key + "' already defined once; cannot redefine"); - } - if ((val == null) || val.isEmpty()) { - sValues.remove(key); - } else { - sValues.put(key, val); - } - sChangeCallback.run(); - } - } - - public static String native_get(String key, String def) { - synchronized (sLock) { - Objects.requireNonNull(key); - Preconditions.requireNonNullViaRavenwoodRule(sValues); - if (!sKeyReadablePredicate.test(key)) { - throw new IllegalArgumentException( - "Read access to system property '" + key + "' denied via RavenwoodRule"); - } - return sValues.getOrDefault(key, def); - } - } - - public static int native_get_int(String key, int def) { - try { - return Integer.parseInt(native_get(key, "")); - } catch (NumberFormatException ignored) { - return def; - } - } - - public static long native_get_long(String key, long def) { - try { - return Long.parseLong(native_get(key, "")); - } catch (NumberFormatException ignored) { - return def; - } - } - - public static boolean native_get_boolean(String key, boolean def) { - return parseBoolean(native_get(key, ""), def); - } - - public static long native_find(String name) { - synchronized (sLock) { - Preconditions.requireNonNullViaRavenwoodRule(sValues); - if (sValues.containsKey(name)) { - name = name.intern(); - final int handle = System.identityHashCode(name); - sKeyHandles.put(handle, name); - return handle; - } else { - return 0; - } - } - } - - public static String native_get(long handle) { - synchronized (sLock) { - return native_get(sKeyHandles.get((int) handle), ""); - } - } - - public static int native_get_int(long handle, int def) { - synchronized (sLock) { - return native_get_int(sKeyHandles.get((int) handle), def); - } - } - - public static long native_get_long(long handle, long def) { - synchronized (sLock) { - return native_get_long(sKeyHandles.get((int) handle), def); - } - } - - public static boolean native_get_boolean(long handle, boolean def) { - synchronized (sLock) { - return native_get_boolean(sKeyHandles.get((int) handle), def); - } - } - - public static void native_add_change_callback() { - // Ignored; callback always registered via init above - } - - public static void native_report_sysprop_change() { - // Report through callback always registered via init above - synchronized (sLock) { - Preconditions.requireNonNullViaRavenwoodRule(sValues); - sChangeCallback.run(); - } - } - - private static boolean parseBoolean(String val, boolean def) { - // Matches system/libbase/include/android-base/parsebool.h - if (val == null) return def; - switch (val) { - case "1": - case "on": - case "true": - case "y": - case "yes": - return true; - case "0": - case "false": - case "n": - case "no": - case "off": - return false; - default: - return def; - } - } -} diff --git a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/runtimehelper/ClassLoadHook.java b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/runtimehelper/ClassLoadHook.java index e198646d4e27..be8c44388435 100644 --- a/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/runtimehelper/ClassLoadHook.java +++ b/ravenwood/runtime-helper-src/framework/com/android/platform/test/ravenwood/runtimehelper/ClassLoadHook.java @@ -15,49 +15,10 @@ */ package com.android.platform.test.ravenwood.runtimehelper; -import com.android.ravenwood.common.RavenwoodCommonUtils; - -import java.io.File; -import java.lang.reflect.Modifier; -import java.util.ArrayList; - /** * Standard class loader hook. - * - * Currently, we use this class to load libandroid_runtime (if needed). In the future, we may - * load other JNI or do other set up here. */ public class ClassLoadHook { - /** - * If true, we won't load `libandroid_runtime` - * - * <p>Looks like there's some complexity in running a host test with JNI with `atest`, - * so we need a way to remove the dependency. - */ - private static final boolean SKIP_LOADING_LIBANDROID = "1".equals(System.getenv( - "RAVENWOOD_SKIP_LOADING_LIBANDROID")); - - public static final String CORE_NATIVE_CLASSES = "core_native_classes"; - public static final String ICU_DATA_PATH = "icu.data.path"; - public static final String KEYBOARD_PATHS = "keyboard_paths"; - public static final String GRAPHICS_NATIVE_CLASSES = "graphics_native_classes"; - - public static final String LIBANDROID_RUNTIME_NAME = "android_runtime"; - - /** - * Extra strings needed to pass to register_android_graphics_classes(). - * - * `android.graphics.Graphics` is not actually a class, so we can't use the same initialization - * strategy than the "normal" classes. So we just hardcode it here. - */ - public static final String GRAPHICS_EXTRA_INIT_PARAMS = ",android.graphics.Graphics"; - - private static String sInitialDir = new File("").getAbsolutePath(); - - static { - log("Initialized. Current dir=" + sInitialDir); - } - private ClassLoadHook() { } @@ -70,129 +31,12 @@ public class ClassLoadHook { public static void onClassLoaded(Class<?> clazz) { System.out.println("Framework class loaded: " + clazz.getCanonicalName()); - loadFrameworkNativeCode(); - } - - private static void log(String message) { - System.out.println("ClassLoadHook: " + message); - } - - private static void log(String fmt, Object... args) { - log(String.format(fmt, args)); - } - - private static void ensurePropertyNotSet(String key) { - if (System.getProperty(key) != null) { - throw new RuntimeException("System property \"" + key + "\" is set unexpectedly"); - } - } - - private static void setProperty(String key, String value) { - System.setProperty(key, value); - log("Property set: %s=\"%s\"", key, value); - } - - private static void dumpSystemProperties() { - for (var prop : System.getProperties().entrySet()) { - log(" %s=\"%s\"", prop.getKey(), prop.getValue()); + // Always try to initialize the environment in case classes are loaded before + // RavenwoodAwareTestRunner is initialized + try { + Class.forName("android.platform.test.ravenwood.RavenwoodRuntimeEnvironmentController") + .getMethod("globalInitOnce").invoke(null); + } catch (ReflectiveOperationException ignored) { } } - - private static boolean sLoadFrameworkNativeCodeCalled = false; - - /** - * Load `libandroid_runtime` if needed. - */ - private static void loadFrameworkNativeCode() { - // This is called from class-initializers, so no synchronization is needed. - if (sLoadFrameworkNativeCodeCalled) { - return; - } - sLoadFrameworkNativeCodeCalled = true; - - // libandroid_runtime uses Java's system properties to decide what JNI methods to set up. - // Set up these properties for host-side tests. - - if ("1".equals(System.getenv("RAVENWOOD_DUMP_PROPERTIES"))) { - log("Java system properties:"); - dumpSystemProperties(); - } - - if (SKIP_LOADING_LIBANDROID) { - log("Skip loading native runtime."); - return; - } - - // Make sure these properties are not set. - ensurePropertyNotSet(CORE_NATIVE_CLASSES); - ensurePropertyNotSet(ICU_DATA_PATH); - ensurePropertyNotSet(KEYBOARD_PATHS); - ensurePropertyNotSet(GRAPHICS_NATIVE_CLASSES); - - // Load the libraries, if needed. - final var libanrdoidClasses = getClassesWithNativeMethods(sLibandroidClasses); - final var libhwuiClasses = getClassesWithNativeMethods(sLibhwuiClasses); - if (libanrdoidClasses.isEmpty() && libhwuiClasses.isEmpty()) { - log("No classes require JNI methods, skip loading native runtime."); - return; - } - setProperty(CORE_NATIVE_CLASSES, libanrdoidClasses); - setProperty(GRAPHICS_NATIVE_CLASSES, libhwuiClasses + GRAPHICS_EXTRA_INIT_PARAMS); - - log("Loading " + LIBANDROID_RUNTIME_NAME + " for '" + libanrdoidClasses + "' and '" - + libhwuiClasses + "'"); - RavenwoodCommonUtils.loadJniLibrary(LIBANDROID_RUNTIME_NAME); - } - - /** - * Classes with native methods that are backed by libandroid_runtime. - * - * See frameworks/base/core/jni/platform/host/HostRuntime.cpp - */ - private static final Class<?>[] sLibandroidClasses = { - android.util.Log.class, - }; - - /** - * Classes with native methods that are backed by libhwui. - * - * See frameworks/base/libs/hwui/apex/LayoutlibLoader.cpp - */ - private static final Class<?>[] sLibhwuiClasses = { - android.graphics.Interpolator.class, - android.graphics.Matrix.class, - android.graphics.Path.class, - android.graphics.Color.class, - android.graphics.ColorSpace.class, - }; - - /** - * @return if a given class and its nested classes, if any, have any native method or not. - */ - private static boolean hasNativeMethod(Class<?> clazz) { - for (var nestedClass : clazz.getNestMembers()) { - for (var method : nestedClass.getDeclaredMethods()) { - if (Modifier.isNative(method.getModifiers())) { - return true; - } - } - } - return false; - } - /** - * Create a list of classes as comma-separated that require JNI methods to be set up from - * a given class list, ignoring classes with no native methods. - */ - private static String getClassesWithNativeMethods(Class<?>[] classes) { - final var coreNativeClassesToLoad = new ArrayList<String>(); - - for (var clazz : classes) { - if (hasNativeMethod(clazz)) { - log("Class %s has native methods", clazz.getCanonicalName()); - coreNativeClassesToLoad.add(clazz.getName()); - } - } - - return String.join(",", coreNativeClassesToLoad); - } } diff --git a/ravenwood/runtime-helper-src/libcore-fake/android/compat/Compatibility.java b/ravenwood/runtime-helper-src/libcore-fake/android/compat/Compatibility.java new file mode 100644 index 000000000000..c7376842d8f3 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/android/compat/Compatibility.java @@ -0,0 +1,359 @@ +/* + * Copyright (C) 2019 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.compat; + +// [Ravenwood] Copied from libcore, with "RAVENWOOD-CHANGE" + +import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; + +import android.annotation.SystemApi; +import android.compat.annotation.ChangeId; + +import libcore.api.IntraCoreApi; +import libcore.util.NonNull; + +import java.util.Collections; +import java.util.HashSet; +import java.util.Objects; +import java.util.Set; + +/** + * Internal APIs for logging and gating compatibility changes. + * + * @see ChangeId + * + * @hide + */ +@SystemApi(client = MODULE_LIBRARIES) +@IntraCoreApi +public final class Compatibility { + + private Compatibility() {} + + /** + * Reports that a compatibility change is affecting the current process now. + * + * <p>Calls to this method from a non-app process are ignored. This allows code implementing + * APIs that are used by apps and by other code (e.g. the system server) to report changes + * regardless of the process it's running in. When called in a non-app process, this method is + * a no-op. + * + * <p>Note: for changes that are gated using {@link #isChangeEnabled(long)}, you do not need to + * call this API directly. The change will be reported for you in the case that + * {@link #isChangeEnabled(long)} returns {@code true}. + * + * @param changeId The ID of the compatibility change taking effect. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public static void reportUnconditionalChange(@ChangeId long changeId) { + sCallbacks.onChangeReported(changeId); + } + + /** + * Query if a given compatibility change is enabled for the current process. This method should + * only be called by code running inside a process of the affected app. + * + * <p>If this method returns {@code true}, the calling code should implement the compatibility + * change, resulting in differing behaviour compared to earlier releases. If this method returns + * {@code false}, the calling code should behave as it did in earlier releases. + * + * <p>When this method returns {@code true}, it will also report the change as + * {@link #reportUnconditionalChange(long)} would, so there is no need to call that method + * directly. + * + * @param changeId The ID of the compatibility change in question. + * @return {@code true} if the change is enabled for the current app. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public static boolean isChangeEnabled(@ChangeId long changeId) { + return sCallbacks.isChangeEnabled(changeId); + } + + private static final BehaviorChangeDelegate DEFAULT_CALLBACKS = new BehaviorChangeDelegate(){}; + + private volatile static BehaviorChangeDelegate sCallbacks = DEFAULT_CALLBACKS; + + /** + * Sets the behavior change delegate. + * + * All changes reported via the {@link Compatibility} class will be forwarded to this class. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + public static void setBehaviorChangeDelegate(BehaviorChangeDelegate callbacks) { + sCallbacks = Objects.requireNonNull(callbacks); + } + + /** + * Removes a behavior change delegate previously set via {@link #setBehaviorChangeDelegate}. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + public static void clearBehaviorChangeDelegate() { + sCallbacks = DEFAULT_CALLBACKS; + } + + /** + * Return the behavior change delegate + * + * @hide + */ + // VisibleForTesting + @NonNull + public static BehaviorChangeDelegate getBehaviorChangeDelegate() { + return sCallbacks; + } + + /** + * For use by tests only. Causes values from {@code overrides} to be returned instead of the + * real value. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + public static void setOverrides(ChangeConfig overrides) { + // Setting overrides twice in a row does not need to be supported because + // this method is only for enabling/disabling changes for the duration of + // a single test. + // In production, the app is restarted when changes get enabled or disabled, + // and the ChangeConfig is then set exactly once on that app process. + if (sCallbacks instanceof OverrideCallbacks) { + throw new IllegalStateException("setOverrides has already been called!"); + } + sCallbacks = new OverrideCallbacks(sCallbacks, overrides); + } + + /** + * For use by tests only. Removes overrides set by {@link #setOverrides}. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + public static void clearOverrides() { + if (!(sCallbacks instanceof OverrideCallbacks)) { + throw new IllegalStateException("No overrides set"); + } + sCallbacks = ((OverrideCallbacks) sCallbacks).delegate; + } + + /** + * Base class for compatibility API implementations. The default implementation logs a warning + * to logcat. + * + * This is provided as a class rather than an interface to allow new methods to be added without + * breaking @SystemApi binary compatibility. + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + public interface BehaviorChangeDelegate { + /** + * Called when a change is reported via {@link Compatibility#reportUnconditionalChange} + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + default void onChangeReported(long changeId) { + // Do not use String.format here (b/160912695) + + // RAVENWOOD-CHANGE + System.out.println("No Compatibility callbacks set! Reporting change " + changeId); + } + + /** + * Called when a change is queried via {@link Compatibility#isChangeEnabled} + * + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + default boolean isChangeEnabled(long changeId) { + // Do not use String.format here (b/160912695) + // TODO(b/289900411): Rate limit this log if it's necessary in the release build. + // System.logW("No Compatibility callbacks set! Querying change " + changeId); + return true; + } + } + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public static final class ChangeConfig { + private final Set<Long> enabled; + private final Set<Long> disabled; + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public ChangeConfig(@NonNull Set<@NonNull Long> enabled, @NonNull Set<@NonNull Long> disabled) { + this.enabled = Objects.requireNonNull(enabled); + this.disabled = Objects.requireNonNull(disabled); + if (enabled.contains(null)) { + throw new NullPointerException(); + } + if (disabled.contains(null)) { + throw new NullPointerException(); + } + Set<Long> intersection = new HashSet<>(enabled); + intersection.retainAll(disabled); + if (!intersection.isEmpty()) { + throw new IllegalArgumentException("Cannot have changes " + intersection + + " enabled and disabled!"); + } + } + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public boolean isEmpty() { + return enabled.isEmpty() && disabled.isEmpty(); + } + + private static long[] toLongArray(Set<Long> values) { + long[] result = new long[values.size()]; + int idx = 0; + for (Long value: values) { + result[idx++] = value; + } + return result; + } + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public @NonNull long[] getEnabledChangesArray() { + return toLongArray(enabled); + } + + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public @NonNull long[] getDisabledChangesArray() { + return toLongArray(disabled); + } + + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public @NonNull Set<@NonNull Long> getEnabledSet() { + return Collections.unmodifiableSet(enabled); + } + + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public @NonNull Set<@NonNull Long> getDisabledSet() { + return Collections.unmodifiableSet(disabled); + } + + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public boolean isForceEnabled(long changeId) { + return enabled.contains(changeId); + } + + + /** + * @hide + */ + @SystemApi(client = MODULE_LIBRARIES) + @IntraCoreApi + public boolean isForceDisabled(long changeId) { + return disabled.contains(changeId); + } + + + /** + * @hide + */ + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof ChangeConfig)) { + return false; + } + ChangeConfig that = (ChangeConfig) o; + return enabled.equals(that.enabled) && + disabled.equals(that.disabled); + } + + /** + * @hide + */ + @Override + public int hashCode() { + return Objects.hash(enabled, disabled); + } + + + /** + * @hide + */ + @Override + public String toString() { + return "ChangeConfig{enabled=" + enabled + ", disabled=" + disabled + '}'; + } + } + + private static class OverrideCallbacks implements BehaviorChangeDelegate { + private final BehaviorChangeDelegate delegate; + private final ChangeConfig changeConfig; + + private OverrideCallbacks(BehaviorChangeDelegate delegate, ChangeConfig changeConfig) { + this.delegate = Objects.requireNonNull(delegate); + this.changeConfig = Objects.requireNonNull(changeConfig); + } + @Override + public boolean isChangeEnabled(long changeId) { + if (changeConfig.isForceEnabled(changeId)) { + return true; + } + if (changeConfig.isForceDisabled(changeId)) { + return false; + } + return delegate.isChangeEnabled(changeId); + } + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/android/system/Os.java b/ravenwood/runtime-helper-src/libcore-fake/android/system/Os.java index e031eb27513b..02981713674d 100644 --- a/ravenwood/runtime-helper-src/libcore-fake/android/system/Os.java +++ b/ravenwood/runtime-helper-src/libcore-fake/android/system/Os.java @@ -15,9 +15,16 @@ */ package android.system; -import com.android.ravenwood.common.RavenwoodRuntimeNative; +import com.android.ravenwood.RavenwoodRuntimeNative; +import com.android.ravenwood.RavenwoodRuntimeState; +import com.android.ravenwood.common.JvmWorkaround; import java.io.FileDescriptor; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InterruptedIOException; +import java.nio.ByteBuffer; +import java.nio.channels.AsynchronousCloseException; /** * OS class replacement used on Ravenwood. For now, we just implement APIs as we need them... @@ -30,11 +37,15 @@ public final class Os { return RavenwoodRuntimeNative.lseek(fd, offset, whence); } - public static FileDescriptor[] pipe2(int flags) throws ErrnoException { return RavenwoodRuntimeNative.pipe2(flags); } + /** Ravenwood version of the OS API. */ + public static FileDescriptor[] pipe() throws ErrnoException { + return RavenwoodRuntimeNative.pipe2(0); + } + public static FileDescriptor dup(FileDescriptor fd) throws ErrnoException { return RavenwoodRuntimeNative.dup(fd); } @@ -42,4 +53,61 @@ public final class Os { public static int fcntlInt(FileDescriptor fd, int cmd, int arg) throws ErrnoException { return RavenwoodRuntimeNative.fcntlInt(fd, cmd, arg); } + + public static StructStat fstat(FileDescriptor fd) throws ErrnoException { + return RavenwoodRuntimeNative.fstat(fd); + } + + public static StructStat lstat(String path) throws ErrnoException { + return RavenwoodRuntimeNative.lstat(path); + } + + public static StructStat stat(String path) throws ErrnoException { + return RavenwoodRuntimeNative.stat(path); + } + + /** Ravenwood version of the OS API. */ + public static void close(FileDescriptor fd) throws ErrnoException { + try { + JvmWorkaround.getInstance().closeFd(fd); + } catch (IOException e) { + // The only valid error on Linux that can happen is EIO + throw new ErrnoException("close", OsConstants.EIO); + } + } + + public static FileDescriptor open(String path, int flags, int mode) throws ErrnoException { + return RavenwoodRuntimeNative.open(path, flags, mode); + } + + /** Ravenwood version of the OS API. */ + public static int pread(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, + long offset) throws ErrnoException, InterruptedIOException { + var channel = new FileInputStream(fd).getChannel(); + var buf = ByteBuffer.wrap(bytes, byteOffset, byteCount); + try { + return channel.read(buf, offset); + } catch (AsynchronousCloseException e) { + throw new InterruptedIOException(e.getMessage()); + } catch (IOException e) { + // Most likely EIO + throw new ErrnoException("pread", OsConstants.EIO, e); + } + } + + public static void setenv(String name, String value, boolean overwrite) throws ErrnoException { + RavenwoodRuntimeNative.setenv(name, value, overwrite); + } + + public static int getpid() { + return RavenwoodRuntimeState.sPid; + } + + public static int getuid() { + return RavenwoodRuntimeState.sUid; + } + + public static int gettid() { + return RavenwoodRuntimeNative.gettid(); + } } diff --git a/ravenwood/runtime-helper-src/libcore-fake/android/system/OsConstants.java b/ravenwood/runtime-helper-src/libcore-fake/android/system/OsConstants.java index c56ec8a60f00..3fedc1a450b9 100644 --- a/ravenwood/runtime-helper-src/libcore-fake/android/system/OsConstants.java +++ b/ravenwood/runtime-helper-src/libcore-fake/android/system/OsConstants.java @@ -15,8 +15,6 @@ */ package android.system; -import com.android.ravenwood.common.RavenwoodCommonUtils; - /** * Copied from libcore's version, with the local changes: * - All the imports are removed. (they're only used in javadoc) @@ -1252,8 +1250,6 @@ public class OsConstants { private static int placeholder() { return 0; } // ...because we want to initialize them at runtime. static { - // [ravenwood-change] Load the JNI lib. - RavenwoodCommonUtils.loadRavenwoodNativeRuntime(); Native.initConstants(); } } diff --git a/ravenwood/runtime-helper-src/libcore-fake/android/system/StructStat.java b/ravenwood/runtime-helper-src/libcore-fake/android/system/StructStat.java new file mode 100644 index 000000000000..a8b1fca464dd --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/android/system/StructStat.java @@ -0,0 +1,121 @@ +/* + * Copyright (C) 2011 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.system; + +import libcore.util.Objects; + +/** + * File information returned by {@link Os#fstat}, {@link Os#lstat}, and {@link Os#stat}. + * Corresponds to C's {@code struct stat} from {@code <stat.h>}. + */ +public final class StructStat { + /** Device ID of device containing file. */ + public final long st_dev; /*dev_t*/ + + /** File serial number (inode). */ + public final long st_ino; /*ino_t*/ + + /** Mode (permissions) of file. */ + public final int st_mode; /*mode_t*/ + + /** Number of hard links to the file. */ + public final long st_nlink; /*nlink_t*/ + + /** User ID of file. */ + public final int st_uid; /*uid_t*/ + + /** Group ID of file. */ + public final int st_gid; /*gid_t*/ + + /** Device ID (if file is character or block special). */ + public final long st_rdev; /*dev_t*/ + + /** + * For regular files, the file size in bytes. + * For symbolic links, the length in bytes of the pathname contained in the symbolic link. + * For a shared memory object, the length in bytes. + * For a typed memory object, the length in bytes. + * For other file types, the use of this field is unspecified. + */ + public final long st_size; /*off_t*/ + + /** Seconds part of time of last access. */ + public final long st_atime; /*time_t*/ + + /** StructTimespec with time of last access. */ + public final StructTimespec st_atim; + + /** Seconds part of time of last data modification. */ + public final long st_mtime; /*time_t*/ + + /** StructTimespec with time of last modification. */ + public final StructTimespec st_mtim; + + /** Seconds part of time of last status change */ + public final long st_ctime; /*time_t*/ + + /** StructTimespec with time of last status change. */ + public final StructTimespec st_ctim; + + /** + * A file system-specific preferred I/O block size for this object. + * For some file system types, this may vary from file to file. + */ + public final long st_blksize; /*blksize_t*/ + + /** Number of blocks allocated for this object. */ + public final long st_blocks; /*blkcnt_t*/ + + /** + * Constructs an instance with the given field values. + */ + public StructStat(long st_dev, long st_ino, int st_mode, long st_nlink, int st_uid, int st_gid, + long st_rdev, long st_size, long st_atime, long st_mtime, long st_ctime, + long st_blksize, long st_blocks) { + this(st_dev, st_ino, st_mode, st_nlink, st_uid, st_gid, + st_rdev, st_size, new StructTimespec(st_atime, 0L), new StructTimespec(st_mtime, 0L), + new StructTimespec(st_ctime, 0L), st_blksize, st_blocks); + } + + /** + * Constructs an instance with the given field values. + */ + public StructStat(long st_dev, long st_ino, int st_mode, long st_nlink, int st_uid, int st_gid, + long st_rdev, long st_size, StructTimespec st_atim, StructTimespec st_mtim, + StructTimespec st_ctim, long st_blksize, long st_blocks) { + this.st_dev = st_dev; + this.st_ino = st_ino; + this.st_mode = st_mode; + this.st_nlink = st_nlink; + this.st_uid = st_uid; + this.st_gid = st_gid; + this.st_rdev = st_rdev; + this.st_size = st_size; + this.st_atime = st_atim.tv_sec; + this.st_mtime = st_mtim.tv_sec; + this.st_ctime = st_ctim.tv_sec; + this.st_atim = st_atim; + this.st_mtim = st_mtim; + this.st_ctim = st_ctim; + this.st_blksize = st_blksize; + this.st_blocks = st_blocks; + } + + @Override public String toString() { + return Objects.toString(this); + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/android/system/StructTimespec.java b/ravenwood/runtime-helper-src/libcore-fake/android/system/StructTimespec.java new file mode 100644 index 000000000000..c10678057eeb --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/android/system/StructTimespec.java @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2017 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.system; + +import libcore.util.Objects;; + +/** + * Corresponds to C's {@code struct timespec} from {@code <time.h>}. + */ +public final class StructTimespec implements Comparable<StructTimespec> { + /** Seconds part of time of last data modification. */ + public final long tv_sec; /*time_t*/ + + /** Nanoseconds (values are [0, 999999999]). */ + public final long tv_nsec; + + public StructTimespec(long tv_sec, long tv_nsec) { + this.tv_sec = tv_sec; + this.tv_nsec = tv_nsec; + if (tv_nsec < 0 || tv_nsec > 999_999_999) { + throw new IllegalArgumentException( + "tv_nsec value " + tv_nsec + " is not in [0, 999999999]"); + } + } + + @Override + public int compareTo(StructTimespec other) { + if (tv_sec > other.tv_sec) { + return 1; + } + if (tv_sec < other.tv_sec) { + return -1; + } + if (tv_nsec > other.tv_nsec) { + return 1; + } + if (tv_nsec < other.tv_nsec) { + return -1; + } + return 0; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + StructTimespec that = (StructTimespec) o; + + if (tv_sec != that.tv_sec) return false; + return tv_nsec == that.tv_nsec; + } + + @Override + public int hashCode() { + int result = (int) (tv_sec ^ (tv_sec >>> 32)); + result = 31 * result + (int) (tv_nsec ^ (tv_nsec >>> 32)); + return result; + } + + @Override + public String toString() { + return Objects.toString(this); + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodJdkPatch.java b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodJdkPatch.java new file mode 100644 index 000000000000..96aed4b3401d --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodJdkPatch.java @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2024 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.ravenwood; + +import com.android.ravenwood.common.JvmWorkaround; + +import java.io.FileDescriptor; +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * Class to host APIs that exist in libcore, but not in standard JRE. + */ +public class RavenwoodJdkPatch { + /** + * Implements FileDescriptor.getInt$() + */ + public static int getInt$(FileDescriptor fd) { + return JvmWorkaround.getInstance().getFdInt(fd); + } + + /** + * Implements FileDescriptor.setInt$(int) + */ + public static void setInt$(FileDescriptor fd, int rawFd) { + JvmWorkaround.getInstance().setFdInt(fd, rawFd); + } + + /** + * Implements LinkedHashMap.eldest() + */ + public static <K, V> Map.Entry<K, V> eldest(LinkedHashMap<K, V> map) { + final var it = map.entrySet().iterator(); + return it.hasNext() ? it.next() : null; + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeNative.java b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeNative.java new file mode 100644 index 000000000000..7b940b423b69 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeNative.java @@ -0,0 +1,106 @@ +/* + * Copyright (C) 2024 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.ravenwood; + +import android.system.ErrnoException; +import android.system.StructStat; + +import com.android.ravenwood.common.JvmWorkaround; + +import java.io.FileDescriptor; + +/** + * Class to host all the JNI methods used in ravenwood runtime. + */ +public class RavenwoodRuntimeNative { + private RavenwoodRuntimeNative() { + } + + public static native void applyFreeFunction(long freeFunction, long nativePtr); + + private static native long nLseek(int fd, long offset, int whence) throws ErrnoException; + + private static native int[] nPipe2(int flags) throws ErrnoException; + + private static native int nDup(int oldfd) throws ErrnoException; + + private static native int nFcntlInt(int fd, int cmd, int arg) throws ErrnoException; + + private static native StructStat nFstat(int fd) throws ErrnoException; + + public static native StructStat lstat(String path) throws ErrnoException; + + public static native StructStat stat(String path) throws ErrnoException; + + private static native int nOpen(String path, int flags, int mode) throws ErrnoException; + + public static native void setenv(String name, String value, boolean overwrite) + throws ErrnoException; + + public static native void reloadNativeLibrary(String libFile); + + public static native String getSystemProperty(String key); + + public static native boolean setSystemProperty(String key, String value); + + public static native void clearSystemProperties(); + + public static native int gettid(); + + public static long lseek(FileDescriptor fd, long offset, int whence) throws ErrnoException { + return nLseek(JvmWorkaround.getInstance().getFdInt(fd), offset, whence); + } + + public static FileDescriptor[] pipe2(int flags) throws ErrnoException { + var fds = nPipe2(flags); + var ret = new FileDescriptor[] { + new FileDescriptor(), + new FileDescriptor(), + }; + JvmWorkaround.getInstance().setFdInt(ret[0], fds[0]); + JvmWorkaround.getInstance().setFdInt(ret[1], fds[1]); + + return ret; + } + + public static FileDescriptor dup(FileDescriptor fd) throws ErrnoException { + var fdInt = nDup(JvmWorkaround.getInstance().getFdInt(fd)); + + var retFd = new FileDescriptor(); + JvmWorkaround.getInstance().setFdInt(retFd, fdInt); + return retFd; + } + + public static int fcntlInt(FileDescriptor fd, int cmd, int arg) throws ErrnoException { + var fdInt = JvmWorkaround.getInstance().getFdInt(fd); + + return nFcntlInt(fdInt, cmd, arg); + } + + public static StructStat fstat(FileDescriptor fd) throws ErrnoException { + var fdInt = JvmWorkaround.getInstance().getFdInt(fd); + + return nFstat(fdInt); + } + + public static FileDescriptor open(String path, int flags, int mode) throws ErrnoException { + int fd = nOpen(path, flags, mode); + if (fd < 0) return null; + var retFd = new FileDescriptor(); + JvmWorkaround.getInstance().setFdInt(retFd, fd); + return retFd; + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeState.java b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeState.java new file mode 100644 index 000000000000..175e020d61d6 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/com/android/ravenwood/RavenwoodRuntimeState.java @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2024 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.ravenwood; + +public class RavenwoodRuntimeState { + // This must match VMRuntime.SDK_VERSION_CUR_DEVELOPMENT. + public static final int CUR_DEVELOPMENT = 10000; + + public static volatile int sUid; + public static volatile int sPid; + public static volatile int sTargetSdkLevel; + + static { + reset(); + } + + public static void reset() { + sUid = -1; + sPid = -1; + sTargetSdkLevel = CUR_DEVELOPMENT; + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java b/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java index 7d2b00d9420d..eaadac6a8b92 100644 --- a/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java +++ b/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java @@ -19,6 +19,9 @@ package dalvik.system; // The original is here: // $ANDROID_BUILD_TOP/libcore/libart/src/main/java/dalvik/system/VMRuntime.java +import com.android.ravenwood.RavenwoodRuntimeState; +import com.android.ravenwood.common.JvmWorkaround; + import java.lang.reflect.Array; public class VMRuntime { @@ -32,14 +35,26 @@ public class VMRuntime { } public boolean is64Bit() { - return true; + return "amd64".equals(System.getProperty("os.arch")); } public static boolean is64BitAbi(String abi) { - return true; + return abi.contains("64"); } public Object newUnpaddedArray(Class<?> componentType, int minLength) { return Array.newInstance(componentType, minLength); } + + public Object newNonMovableArray(Class<?> componentType, int length) { + return Array.newInstance(componentType, length); + } + + public long addressOf(Object obj) { + return JvmWorkaround.getInstance().addressOf(obj); + } + + public int getTargetSdkVersion() { + return RavenwoodRuntimeState.sTargetSdkLevel; + } } diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/api/CorePlatformApi.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/CorePlatformApi.java new file mode 100644 index 000000000000..00730efc64b3 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/CorePlatformApi.java @@ -0,0 +1,69 @@ + +/* + * Copyright (C) 2018 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 libcore.api; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.ElementType.CONSTRUCTOR; +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.TYPE; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Indicates an API is part of a contract provided by the "core" set of + * libraries to select parts of the Android software stack. + * + * <p>This annotation should only appear on either (a) classes that are hidden by <pre>@hide</pre> + * javadoc tags or equivalent annotations, or (b) members of such classes. It is for use with + * metalava's {@code --show-single-annotation} option and so must be applied at the class level and + * applied again each member that is to be made part of the API. Members that are not part of the + * API do not have to be explicitly hidden. + * + * @hide + */ +@IntraCoreApi +@Target({TYPE, FIELD, METHOD, CONSTRUCTOR, ANNOTATION_TYPE}) +@Retention(RetentionPolicy.SOURCE) +public @interface CorePlatformApi { + + /** Enumeration of the possible statuses of the API in the core/platform API surface. */ + @IntraCoreApi + enum Status { + + /** + * This API is considered stable, and so present in both the stable and legacy version of + * the API surface. + */ + @IntraCoreApi + STABLE, + + /** + * This API is not (yet) considered stable, and so only present in the legacy version of + * the API surface. + */ + @IntraCoreApi + LEGACY_ONLY + } + + /** The status of the API in the core/platform API surface. */ + @IntraCoreApi + Status status() default Status.LEGACY_ONLY; +} diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStub.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/Hide.java index cabdfe0eeb77..f87ff11df0ab 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStub.java +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/Hide.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2018 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. @@ -13,8 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.hosttest.annotation; +package libcore.api; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; import static java.lang.annotation.ElementType.CONSTRUCTOR; import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.ElementType.METHOD; @@ -25,19 +27,21 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. + * Indicates that an API is hidden by default, in a similar fashion to the + * <pre>@hide</pre> javadoc tag. * - * Mark a class, field or a method as "Stub", meaning tests can see the APIs. - * When applied to a class, it will _not_ affect the visibility of its members. They need to be - * individually marked. + * <p>Note that, in order for this to work, metalava has to be invoked with + * the flag {@code --hide-annotation libcore.api.Hide}. * - * <p>In order to expose a class and all its members, use {@link HostSideTestWholeClassStub} - * instead. + * <p>This annotation should be used in {@code .annotated.java} stub files which + * contain API inclusion information about {@code libcore/ojluni} classes, to + * avoid patching the source files with <pre>@hide</pre> javadoc tags. All + * build targets which consume these stub files should also apply the above + * metalava flag. * * @hide */ -@Target({TYPE, FIELD, METHOD, CONSTRUCTOR}) -@Retention(RetentionPolicy.CLASS) -public @interface HostSideTestStub { +@Target({TYPE, FIELD, METHOD, CONSTRUCTOR, ANNOTATION_TYPE}) +@Retention(RetentionPolicy.SOURCE) +public @interface Hide { } diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepWholeClass.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/IntraCoreApi.java index d2c77c1b8566..87cfcff2474b 100644 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepWholeClass.java +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/api/IntraCoreApi.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2018 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. @@ -13,8 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.ravenwood.annotation; +package libcore.api; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; import static java.lang.annotation.ElementType.CONSTRUCTOR; import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.ElementType.METHOD; @@ -25,15 +27,19 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. + * Indicates an API is part of a contract within the "core" set of libraries, some of which may + * be mmodules. * - * TODO: Javadoc - * TODO: Create "whole-class-throw"? + * <p>This annotation should only appear on either (a) classes that are hidden by <pre>@hide</pre> + * javadoc tags or equivalent annotations, or (b) members of such classes. It is for use with + * metalava's {@code --show-single-annotation} option and so must be applied at the class level and + * applied again each member that is to be made part of the API. Members that are not part of the + * API do not have to be explicitly hidden. * * @hide */ -@Target({TYPE, FIELD, METHOD, CONSTRUCTOR}) -@Retention(RetentionPolicy.CLASS) -public @interface RavenwoodKeepWholeClass { +@IntraCoreApi // @IntraCoreApi is itself part of the intra-core API +@Target({TYPE, FIELD, METHOD, CONSTRUCTOR, ANNOTATION_TYPE}) +@Retention(RetentionPolicy.SOURCE) +public @interface IntraCoreApi { } diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/io/IoUtils.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/io/IoUtils.java index 65c285e06bf8..2bd1ae89c824 100644 --- a/ravenwood/runtime-helper-src/libcore-fake/libcore/io/IoUtils.java +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/io/IoUtils.java @@ -16,7 +16,13 @@ package libcore.io; +import android.system.ErrnoException; +import android.system.Os; + +import com.android.ravenwood.common.JvmWorkaround; + import java.io.File; +import java.io.FileDescriptor; import java.io.IOException; import java.net.Socket; @@ -47,6 +53,13 @@ public final class IoUtils { } } + public static void closeQuietly(FileDescriptor fd) { + try { + Os.close(fd); + } catch (ErrnoException ignored) { + } + } + public static void deleteContents(File dir) throws IOException { File[] files = dir.listFiles(); if (files != null) { @@ -58,4 +71,17 @@ public final class IoUtils { } } } + + /** + * FD owners currently unsupported under Ravenwood; ignored + */ + public static void setFdOwner(FileDescriptor fd, Object owner) { + } + + /** + * FD owners currently unsupported under Ravenwood; return FD directly + */ + public static int acquireRawFd(FileDescriptor fd) { + return JvmWorkaround.getInstance().getFdInt(fd); + } } diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/FP16.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/FP16.java new file mode 100644 index 000000000000..478503b699a0 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/FP16.java @@ -0,0 +1,814 @@ +/* + * Copyright (C) 2019 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 libcore.util; + +/** + * <p>The {@code FP16} class is a wrapper and a utility class to manipulate half-precision 16-bit + * <a href="https://en.wikipedia.org/wiki/Half-precision_floating-point_format">IEEE 754</a> + * floating point data types (also called fp16 or binary16). A half-precision float can be + * created from or converted to single-precision floats, and is stored in a short data type. + * + * <p>The IEEE 754 standard specifies an fp16 as having the following format:</p> + * <ul> + * <li>Sign bit: 1 bit</li> + * <li>Exponent width: 5 bits</li> + * <li>Significand: 10 bits</li> + * </ul> + * + * <p>The format is laid out as follows:</p> + * <pre> + * 1 11111 1111111111 + * ^ --^-- -----^---- + * sign | |_______ significand + * | + * -- exponent + * </pre> + * + * <p>Half-precision floating points can be useful to save memory and/or + * bandwidth at the expense of range and precision when compared to single-precision + * floating points (fp32).</p> + * <p>To help you decide whether fp16 is the right storage type for you need, please + * refer to the table below that shows the available precision throughout the range of + * possible values. The <em>precision</em> column indicates the step size between two + * consecutive numbers in a specific part of the range.</p> + * + * <table summary="Precision of fp16 across the range"> + * <tr><th>Range start</th><th>Precision</th></tr> + * <tr><td>0</td><td>1 ⁄ 16,777,216</td></tr> + * <tr><td>1 ⁄ 16,384</td><td>1 ⁄ 16,777,216</td></tr> + * <tr><td>1 ⁄ 8,192</td><td>1 ⁄ 8,388,608</td></tr> + * <tr><td>1 ⁄ 4,096</td><td>1 ⁄ 4,194,304</td></tr> + * <tr><td>1 ⁄ 2,048</td><td>1 ⁄ 2,097,152</td></tr> + * <tr><td>1 ⁄ 1,024</td><td>1 ⁄ 1,048,576</td></tr> + * <tr><td>1 ⁄ 512</td><td>1 ⁄ 524,288</td></tr> + * <tr><td>1 ⁄ 256</td><td>1 ⁄ 262,144</td></tr> + * <tr><td>1 ⁄ 128</td><td>1 ⁄ 131,072</td></tr> + * <tr><td>1 ⁄ 64</td><td>1 ⁄ 65,536</td></tr> + * <tr><td>1 ⁄ 32</td><td>1 ⁄ 32,768</td></tr> + * <tr><td>1 ⁄ 16</td><td>1 ⁄ 16,384</td></tr> + * <tr><td>1 ⁄ 8</td><td>1 ⁄ 8,192</td></tr> + * <tr><td>1 ⁄ 4</td><td>1 ⁄ 4,096</td></tr> + * <tr><td>1 ⁄ 2</td><td>1 ⁄ 2,048</td></tr> + * <tr><td>1</td><td>1 ⁄ 1,024</td></tr> + * <tr><td>2</td><td>1 ⁄ 512</td></tr> + * <tr><td>4</td><td>1 ⁄ 256</td></tr> + * <tr><td>8</td><td>1 ⁄ 128</td></tr> + * <tr><td>16</td><td>1 ⁄ 64</td></tr> + * <tr><td>32</td><td>1 ⁄ 32</td></tr> + * <tr><td>64</td><td>1 ⁄ 16</td></tr> + * <tr><td>128</td><td>1 ⁄ 8</td></tr> + * <tr><td>256</td><td>1 ⁄ 4</td></tr> + * <tr><td>512</td><td>1 ⁄ 2</td></tr> + * <tr><td>1,024</td><td>1</td></tr> + * <tr><td>2,048</td><td>2</td></tr> + * <tr><td>4,096</td><td>4</td></tr> + * <tr><td>8,192</td><td>8</td></tr> + * <tr><td>16,384</td><td>16</td></tr> + * <tr><td>32,768</td><td>32</td></tr> + * </table> + * + * <p>This table shows that numbers higher than 1024 lose all fractional precision.</p> + * + * @hide + */ + +public final class FP16 { + /** + * The number of bits used to represent a half-precision float value. + * + * @hide + */ + public static final int SIZE = 16; + + /** + * Epsilon is the difference between 1.0 and the next value representable + * by a half-precision floating-point. + * + * @hide + */ + public static final short EPSILON = (short) 0x1400; + + /** + * Maximum exponent a finite half-precision float may have. + * + * @hide + */ + public static final int MAX_EXPONENT = 15; + /** + * Minimum exponent a normalized half-precision float may have. + * + * @hide + */ + public static final int MIN_EXPONENT = -14; + + /** + * Smallest negative value a half-precision float may have. + * + * @hide + */ + public static final short LOWEST_VALUE = (short) 0xfbff; + /** + * Maximum positive finite value a half-precision float may have. + * + * @hide + */ + public static final short MAX_VALUE = (short) 0x7bff; + /** + * Smallest positive normal value a half-precision float may have. + * + * @hide + */ + public static final short MIN_NORMAL = (short) 0x0400; + /** + * Smallest positive non-zero value a half-precision float may have. + * + * @hide + */ + public static final short MIN_VALUE = (short) 0x0001; + /** + * A Not-a-Number representation of a half-precision float. + * + * @hide + */ + public static final short NaN = (short) 0x7e00; + /** + * Negative infinity of type half-precision float. + * + * @hide + */ + public static final short NEGATIVE_INFINITY = (short) 0xfc00; + /** + * Negative 0 of type half-precision float. + * + * @hide + */ + public static final short NEGATIVE_ZERO = (short) 0x8000; + /** + * Positive infinity of type half-precision float. + * + * @hide + */ + public static final short POSITIVE_INFINITY = (short) 0x7c00; + /** + * Positive 0 of type half-precision float. + * + * @hide + */ + public static final short POSITIVE_ZERO = (short) 0x0000; + + /** + * The offset to shift by to obtain the sign bit. + * + * @hide + */ + public static final int SIGN_SHIFT = 15; + + /** + * The offset to shift by to obtain the exponent bits. + * + * @hide + */ + public static final int EXPONENT_SHIFT = 10; + + /** + * The bitmask to AND a number with to obtain the sign bit. + * + * @hide + */ + public static final int SIGN_MASK = 0x8000; + + /** + * The bitmask to AND a number shifted by {@link #EXPONENT_SHIFT} right, to obtain exponent bits. + * + * @hide + */ + public static final int SHIFTED_EXPONENT_MASK = 0x1f; + + /** + * The bitmask to AND a number with to obtain significand bits. + * + * @hide + */ + public static final int SIGNIFICAND_MASK = 0x3ff; + + /** + * The bitmask to AND with to obtain exponent and significand bits. + * + * @hide + */ + public static final int EXPONENT_SIGNIFICAND_MASK = 0x7fff; + + /** + * The offset of the exponent from the actual value. + * + * @hide + */ + public static final int EXPONENT_BIAS = 15; + + private static final int FP32_SIGN_SHIFT = 31; + private static final int FP32_EXPONENT_SHIFT = 23; + private static final int FP32_SHIFTED_EXPONENT_MASK = 0xff; + private static final int FP32_SIGNIFICAND_MASK = 0x7fffff; + private static final int FP32_EXPONENT_BIAS = 127; + private static final int FP32_QNAN_MASK = 0x400000; + private static final int FP32_DENORMAL_MAGIC = 126 << 23; + private static final float FP32_DENORMAL_FLOAT = Float.intBitsToFloat(FP32_DENORMAL_MAGIC); + + /** Hidden constructor to prevent instantiation. */ + private FP16() {} + + /** + * <p>Compares the two specified half-precision float values. The following + * conditions apply during the comparison:</p> + * + * <ul> + * <li>{@link #NaN} is considered by this method to be equal to itself and greater + * than all other half-precision float values (including {@code #POSITIVE_INFINITY})</li> + * <li>{@link #POSITIVE_ZERO} is considered by this method to be greater than + * {@link #NEGATIVE_ZERO}.</li> + * </ul> + * + * @param x The first half-precision float value to compare. + * @param y The second half-precision float value to compare + * + * @return The value {@code 0} if {@code x} is numerically equal to {@code y}, a + * value less than {@code 0} if {@code x} is numerically less than {@code y}, + * and a value greater than {@code 0} if {@code x} is numerically greater + * than {@code y} + * + * @hide + */ + public static int compare(short x, short y) { + if (less(x, y)) return -1; + if (greater(x, y)) return 1; + + // Collapse NaNs, akin to halfToIntBits(), but we want to keep + // (signed) short value types to preserve the ordering of -0.0 + // and +0.0 + short xBits = isNaN(x) ? NaN : x; + short yBits = isNaN(y) ? NaN : y; + + return (xBits == yBits ? 0 : (xBits < yBits ? -1 : 1)); + } + + /** + * Returns the closest integral half-precision float value to the specified + * half-precision float value. Special values are handled in the + * following ways: + * <ul> + * <li>If the specified half-precision float is NaN, the result is NaN</li> + * <li>If the specified half-precision float is infinity (negative or positive), + * the result is infinity (with the same sign)</li> + * <li>If the specified half-precision float is zero (negative or positive), + * the result is zero (with the same sign)</li> + * </ul> + * + * @param h A half-precision float value + * @return The value of the specified half-precision float rounded to the nearest + * half-precision float value + * + * @hide + */ + public static short rint(short h) { + int bits = h & 0xffff; + int abs = bits & EXPONENT_SIGNIFICAND_MASK; + int result = bits; + + if (abs < 0x3c00) { + result &= SIGN_MASK; + if (abs > 0x3800){ + result |= 0x3c00; + } + } else if (abs < 0x6400) { + int exp = 25 - (abs >> 10); + int mask = (1 << exp) - 1; + result += ((1 << (exp - 1)) - (~(abs >> exp) & 1)); + result &= ~mask; + } + if (isNaN((short) result)) { + // if result is NaN mask with qNaN + // (i.e. mask the most significant mantissa bit with 1) + // to comply with hardware implementations (ARM64, Intel, etc). + result |= NaN; + } + + return (short) result; + } + + /** + * Returns the smallest half-precision float value toward negative infinity + * greater than or equal to the specified half-precision float value. + * Special values are handled in the following ways: + * <ul> + * <li>If the specified half-precision float is NaN, the result is NaN</li> + * <li>If the specified half-precision float is infinity (negative or positive), + * the result is infinity (with the same sign)</li> + * <li>If the specified half-precision float is zero (negative or positive), + * the result is zero (with the same sign)</li> + * </ul> + * + * @param h A half-precision float value + * @return The smallest half-precision float value toward negative infinity + * greater than or equal to the specified half-precision float value + * + * @hide + */ + public static short ceil(short h) { + int bits = h & 0xffff; + int abs = bits & EXPONENT_SIGNIFICAND_MASK; + int result = bits; + + if (abs < 0x3c00) { + result &= SIGN_MASK; + result |= 0x3c00 & -(~(bits >> 15) & (abs != 0 ? 1 : 0)); + } else if (abs < 0x6400) { + abs = 25 - (abs >> 10); + int mask = (1 << abs) - 1; + result += mask & ((bits >> 15) - 1); + result &= ~mask; + } + if (isNaN((short) result)) { + // if result is NaN mask with qNaN + // (i.e. mask the most significant mantissa bit with 1) + // to comply with hardware implementations (ARM64, Intel, etc). + result |= NaN; + } + + return (short) result; + } + + /** + * Returns the largest half-precision float value toward positive infinity + * less than or equal to the specified half-precision float value. + * Special values are handled in the following ways: + * <ul> + * <li>If the specified half-precision float is NaN, the result is NaN</li> + * <li>If the specified half-precision float is infinity (negative or positive), + * the result is infinity (with the same sign)</li> + * <li>If the specified half-precision float is zero (negative or positive), + * the result is zero (with the same sign)</li> + * </ul> + * + * @param h A half-precision float value + * @return The largest half-precision float value toward positive infinity + * less than or equal to the specified half-precision float value + * + * @hide + */ + public static short floor(short h) { + int bits = h & 0xffff; + int abs = bits & EXPONENT_SIGNIFICAND_MASK; + int result = bits; + + if (abs < 0x3c00) { + result &= SIGN_MASK; + result |= 0x3c00 & (bits > 0x8000 ? 0xffff : 0x0); + } else if (abs < 0x6400) { + abs = 25 - (abs >> 10); + int mask = (1 << abs) - 1; + result += mask & -(bits >> 15); + result &= ~mask; + } + if (isNaN((short) result)) { + // if result is NaN mask with qNaN + // i.e. (Mask the most significant mantissa bit with 1) + result |= NaN; + } + + return (short) result; + } + + /** + * Returns the truncated half-precision float value of the specified + * half-precision float value. Special values are handled in the following ways: + * <ul> + * <li>If the specified half-precision float is NaN, the result is NaN</li> + * <li>If the specified half-precision float is infinity (negative or positive), + * the result is infinity (with the same sign)</li> + * <li>If the specified half-precision float is zero (negative or positive), + * the result is zero (with the same sign)</li> + * </ul> + * + * @param h A half-precision float value + * @return The truncated half-precision float value of the specified + * half-precision float value + * + * @hide + */ + public static short trunc(short h) { + int bits = h & 0xffff; + int abs = bits & EXPONENT_SIGNIFICAND_MASK; + int result = bits; + + if (abs < 0x3c00) { + result &= SIGN_MASK; + } else if (abs < 0x6400) { + abs = 25 - (abs >> 10); + int mask = (1 << abs) - 1; + result &= ~mask; + } + + return (short) result; + } + + /** + * Returns the smaller of two half-precision float values (the value closest + * to negative infinity). Special values are handled in the following ways: + * <ul> + * <li>If either value is NaN, the result is NaN</li> + * <li>{@link #NEGATIVE_ZERO} is smaller than {@link #POSITIVE_ZERO}</li> + * </ul> + * + * @param x The first half-precision value + * @param y The second half-precision value + * @return The smaller of the two specified half-precision values + * + * @hide + */ + public static short min(short x, short y) { + if (isNaN(x)) return NaN; + if (isNaN(y)) return NaN; + + if ((x & EXPONENT_SIGNIFICAND_MASK) == 0 && (y & EXPONENT_SIGNIFICAND_MASK) == 0) { + return (x & SIGN_MASK) != 0 ? x : y; + } + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) < + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff) ? x : y; + } + + /** + * Returns the larger of two half-precision float values (the value closest + * to positive infinity). Special values are handled in the following ways: + * <ul> + * <li>If either value is NaN, the result is NaN</li> + * <li>{@link #POSITIVE_ZERO} is greater than {@link #NEGATIVE_ZERO}</li> + * </ul> + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return The larger of the two specified half-precision values + * + * @hide + */ + public static short max(short x, short y) { + if (isNaN(x)) return NaN; + if (isNaN(y)) return NaN; + + if ((x & EXPONENT_SIGNIFICAND_MASK) == 0 && (y & EXPONENT_SIGNIFICAND_MASK) == 0) { + return (x & SIGN_MASK) != 0 ? y : x; + } + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) > + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff) ? x : y; + } + + /** + * Returns true if the first half-precision float value is less (smaller + * toward negative infinity) than the second half-precision float value. + * If either of the values is NaN, the result is false. + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return True if x is less than y, false otherwise + * + * @hide + */ + public static boolean less(short x, short y) { + if (isNaN(x)) return false; + if (isNaN(y)) return false; + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) < + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff); + } + + /** + * Returns true if the first half-precision float value is less (smaller + * toward negative infinity) than or equal to the second half-precision + * float value. If either of the values is NaN, the result is false. + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return True if x is less than or equal to y, false otherwise + * + * @hide + */ + public static boolean lessEquals(short x, short y) { + if (isNaN(x)) return false; + if (isNaN(y)) return false; + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) <= + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff); + } + + /** + * Returns true if the first half-precision float value is greater (larger + * toward positive infinity) than the second half-precision float value. + * If either of the values is NaN, the result is false. + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return True if x is greater than y, false otherwise + * + * @hide + */ + public static boolean greater(short x, short y) { + if (isNaN(x)) return false; + if (isNaN(y)) return false; + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) > + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff); + } + + /** + * Returns true if the first half-precision float value is greater (larger + * toward positive infinity) than or equal to the second half-precision float + * value. If either of the values is NaN, the result is false. + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return True if x is greater than y, false otherwise + * + * @hide + */ + public static boolean greaterEquals(short x, short y) { + if (isNaN(x)) return false; + if (isNaN(y)) return false; + + return ((x & SIGN_MASK) != 0 ? 0x8000 - (x & 0xffff) : x & 0xffff) >= + ((y & SIGN_MASK) != 0 ? 0x8000 - (y & 0xffff) : y & 0xffff); + } + + /** + * Returns true if the two half-precision float values are equal. + * If either of the values is NaN, the result is false. {@link #POSITIVE_ZERO} + * and {@link #NEGATIVE_ZERO} are considered equal. + * + * @param x The first half-precision value + * @param y The second half-precision value + * + * @return True if x is equal to y, false otherwise + * + * @hide + */ + public static boolean equals(short x, short y) { + if (isNaN(x)) return false; + if (isNaN(y)) return false; + + return x == y || ((x | y) & EXPONENT_SIGNIFICAND_MASK) == 0; + } + + /** + * Returns true if the specified half-precision float value represents + * infinity, false otherwise. + * + * @param h A half-precision float value + * @return True if the value is positive infinity or negative infinity, + * false otherwise + * + * @hide + */ + public static boolean isInfinite(short h) { + return (h & EXPONENT_SIGNIFICAND_MASK) == POSITIVE_INFINITY; + } + + /** + * Returns true if the specified half-precision float value represents + * a Not-a-Number, false otherwise. + * + * @param h A half-precision float value + * @return True if the value is a NaN, false otherwise + * + * @hide + */ + public static boolean isNaN(short h) { + return (h & EXPONENT_SIGNIFICAND_MASK) > POSITIVE_INFINITY; + } + + /** + * Returns true if the specified half-precision float value is normalized + * (does not have a subnormal representation). If the specified value is + * {@link #POSITIVE_INFINITY}, {@link #NEGATIVE_INFINITY}, + * {@link #POSITIVE_ZERO}, {@link #NEGATIVE_ZERO}, NaN or any subnormal + * number, this method returns false. + * + * @param h A half-precision float value + * @return True if the value is normalized, false otherwise + * + * @hide + */ + public static boolean isNormalized(short h) { + return (h & POSITIVE_INFINITY) != 0 && (h & POSITIVE_INFINITY) != POSITIVE_INFINITY; + } + + /** + * <p>Converts the specified half-precision float value into a + * single-precision float value. The following special cases are handled:</p> + * <ul> + * <li>If the input is {@link #NaN}, the returned value is {@link Float#NaN}</li> + * <li>If the input is {@link #POSITIVE_INFINITY} or + * {@link #NEGATIVE_INFINITY}, the returned value is respectively + * {@link Float#POSITIVE_INFINITY} or {@link Float#NEGATIVE_INFINITY}</li> + * <li>If the input is 0 (positive or negative), the returned value is +/-0.0f</li> + * <li>Otherwise, the returned value is a normalized single-precision float value</li> + * </ul> + * + * @param h The half-precision float value to convert to single-precision + * @return A normalized single-precision float value + * + * @hide + */ + public static float toFloat(short h) { + int bits = h & 0xffff; + int s = bits & SIGN_MASK; + int e = (bits >>> EXPONENT_SHIFT) & SHIFTED_EXPONENT_MASK; + int m = (bits ) & SIGNIFICAND_MASK; + + int outE = 0; + int outM = 0; + + if (e == 0) { // Denormal or 0 + if (m != 0) { + // Convert denorm fp16 into normalized fp32 + float o = Float.intBitsToFloat(FP32_DENORMAL_MAGIC + m); + o -= FP32_DENORMAL_FLOAT; + return s == 0 ? o : -o; + } + } else { + outM = m << 13; + if (e == 0x1f) { // Infinite or NaN + outE = 0xff; + if (outM != 0) { // SNaNs are quieted + outM |= FP32_QNAN_MASK; + } + } else { + outE = e - EXPONENT_BIAS + FP32_EXPONENT_BIAS; + } + } + + int out = (s << 16) | (outE << FP32_EXPONENT_SHIFT) | outM; + return Float.intBitsToFloat(out); + } + + /** + * <p>Converts the specified single-precision float value into a + * half-precision float value. The following special cases are handled:</p> + * <ul> + * <li>If the input is NaN (see {@link Float#isNaN(float)}), the returned + * value is {@link #NaN}</li> + * <li>If the input is {@link Float#POSITIVE_INFINITY} or + * {@link Float#NEGATIVE_INFINITY}, the returned value is respectively + * {@link #POSITIVE_INFINITY} or {@link #NEGATIVE_INFINITY}</li> + * <li>If the input is 0 (positive or negative), the returned value is + * {@link #POSITIVE_ZERO} or {@link #NEGATIVE_ZERO}</li> + * <li>If the input is a less than {@link #MIN_VALUE}, the returned value + * is flushed to {@link #POSITIVE_ZERO} or {@link #NEGATIVE_ZERO}</li> + * <li>If the input is a less than {@link #MIN_NORMAL}, the returned value + * is a denorm half-precision float</li> + * <li>Otherwise, the returned value is rounded to the nearest + * representable half-precision float value</li> + * </ul> + * + * @param f The single-precision float value to convert to half-precision + * @return A half-precision float value + * + * @hide + */ + public static short toHalf(float f) { + int bits = Float.floatToRawIntBits(f); + int s = (bits >>> FP32_SIGN_SHIFT ); + int e = (bits >>> FP32_EXPONENT_SHIFT) & FP32_SHIFTED_EXPONENT_MASK; + int m = (bits ) & FP32_SIGNIFICAND_MASK; + + int outE = 0; + int outM = 0; + + if (e == 0xff) { // Infinite or NaN + outE = 0x1f; + outM = m != 0 ? 0x200 : 0; + } else { + e = e - FP32_EXPONENT_BIAS + EXPONENT_BIAS; + if (e >= 0x1f) { // Overflow + outE = 0x1f; + } else if (e <= 0) { // Underflow + if (e < -10) { + // The absolute fp32 value is less than MIN_VALUE, flush to +/-0 + } else { + // The fp32 value is a normalized float less than MIN_NORMAL, + // we convert to a denorm fp16 + m = m | 0x800000; + int shift = 14 - e; + outM = m >> shift; + + int lowm = m & ((1 << shift) - 1); + int hway = 1 << (shift - 1); + // if above halfway or exactly halfway and outM is odd + if (lowm + (outM & 1) > hway){ + // Round to nearest even + // Can overflow into exponent bit, which surprisingly is OK. + // This increment relies on the +outM in the return statement below + outM++; + } + } + } else { + outE = e; + outM = m >> 13; + // if above halfway or exactly halfway and outM is odd + if ((m & 0x1fff) + (outM & 0x1) > 0x1000) { + // Round to nearest even + // Can overflow into exponent bit, which surprisingly is OK. + // This increment relies on the +outM in the return statement below + outM++; + } + } + } + // The outM is added here as the +1 increments for outM above can + // cause an overflow in the exponent bit which is OK. + return (short) ((s << SIGN_SHIFT) | (outE << EXPONENT_SHIFT) + outM); + } + + /** + * <p>Returns a hexadecimal string representation of the specified half-precision + * float value. If the value is a NaN, the result is <code>"NaN"</code>, + * otherwise the result follows this format:</p> + * <ul> + * <li>If the sign is positive, no sign character appears in the result</li> + * <li>If the sign is negative, the first character is <code>'-'</code></li> + * <li>If the value is inifinity, the string is <code>"Infinity"</code></li> + * <li>If the value is 0, the string is <code>"0x0.0p0"</code></li> + * <li>If the value has a normalized representation, the exponent and + * significand are represented in the string in two fields. The significand + * starts with <code>"0x1."</code> followed by its lowercase hexadecimal + * representation. Trailing zeroes are removed unless all digits are 0, then + * a single zero is used. The significand representation is followed by the + * exponent, represented by <code>"p"</code>, itself followed by a decimal + * string of the unbiased exponent</li> + * <li>If the value has a subnormal representation, the significand starts + * with <code>"0x0."</code> followed by its lowercase hexadecimal + * representation. Trailing zeroes are removed unless all digits are 0, then + * a single zero is used. The significand representation is followed by the + * exponent, represented by <code>"p-14"</code></li> + * </ul> + * + * @param h A half-precision float value + * @return A hexadecimal string representation of the specified value + * + * @hide + */ + public static String toHexString(short h) { + StringBuilder o = new StringBuilder(); + + int bits = h & 0xffff; + int s = (bits >>> SIGN_SHIFT ); + int e = (bits >>> EXPONENT_SHIFT) & SHIFTED_EXPONENT_MASK; + int m = (bits ) & SIGNIFICAND_MASK; + + if (e == 0x1f) { // Infinite or NaN + if (m == 0) { + if (s != 0) o.append('-'); + o.append("Infinity"); + } else { + o.append("NaN"); + } + } else { + if (s == 1) o.append('-'); + if (e == 0) { + if (m == 0) { + o.append("0x0.0p0"); + } else { + o.append("0x0."); + String significand = Integer.toHexString(m); + o.append(significand.replaceFirst("0{2,}$", "")); + o.append("p-14"); + } + } else { + o.append("0x1."); + String significand = Integer.toHexString(m); + o.append(significand.replaceFirst("0{2,}$", "")); + o.append('p'); + o.append(Integer.toString(e - EXPONENT_BIAS)); + } + } + + return o.toString(); + } +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java index 14b5a4f0c1e0..ad86135de32e 100644 --- a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java @@ -15,7 +15,7 @@ */ package libcore.util; -import com.android.ravenwood.common.RavenwoodRuntimeNative; +import com.android.ravenwood.RavenwoodRuntimeNative; import java.lang.ref.Cleaner; import java.lang.ref.Reference; @@ -32,25 +32,20 @@ public class NativeAllocationRegistry { public static NativeAllocationRegistry createNonmalloced( ClassLoader classLoader, long freeFunction, long size) { - return new NativeAllocationRegistry(classLoader, freeFunction, size, false); + return new NativeAllocationRegistry(classLoader, freeFunction, size); } public static NativeAllocationRegistry createMalloced( ClassLoader classLoader, long freeFunction, long size) { - return new NativeAllocationRegistry(classLoader, freeFunction, size, true); + return new NativeAllocationRegistry(classLoader, freeFunction, size); } public static NativeAllocationRegistry createMalloced( ClassLoader classLoader, long freeFunction) { - return new NativeAllocationRegistry(classLoader, freeFunction, 0, true); + return new NativeAllocationRegistry(classLoader, freeFunction, 0); } public NativeAllocationRegistry(ClassLoader classLoader, long freeFunction, long size) { - this(classLoader, freeFunction, size, size == 0); - } - - private NativeAllocationRegistry(ClassLoader classLoader, long freeFunction, long size, - boolean mallocAllocation) { if (size < 0) { throw new IllegalArgumentException("Invalid native allocation size: " + size); } diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java new file mode 100644 index 000000000000..db3cd8ed712f --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java @@ -0,0 +1,48 @@ +/* + * Copyright (C) 2017 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 libcore.util; + +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE_USE; +import static java.lang.annotation.RetentionPolicy.SOURCE; + +import java.lang.annotation.Documented; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +/** + * Denotes that a type use can never be null. + * <p> + * This is a marker annotation and it has no specific attributes. + * @hide + */ +@Documented +@Retention(SOURCE) +@Target({FIELD, METHOD, PARAMETER, TYPE_USE}) +@libcore.api.IntraCoreApi +public @interface NonNull { + /** + * Min Android API level (inclusive) to which this annotation is applied. + */ + int from() default Integer.MIN_VALUE; + + /** + * Max Android API level to which this annotation is applied. + */ + int to() default Integer.MAX_VALUE; +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java new file mode 100644 index 000000000000..3371978b0568 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java @@ -0,0 +1,48 @@ +/* + * Copyright (C) 2017 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 libcore.util; + +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE_USE; +import static java.lang.annotation.RetentionPolicy.SOURCE; + +import java.lang.annotation.Documented; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +/** + * Denotes that a type use can be a null. + * <p> + * This is a marker annotation and it has no specific attributes. + * @hide + */ +@Documented +@Retention(SOURCE) +@Target({FIELD, METHOD, PARAMETER, TYPE_USE}) +@libcore.api.IntraCoreApi +public @interface Nullable { + /** + * Min Android API level (inclusive) to which this annotation is applied. + */ + int from() default Integer.MIN_VALUE; + + /** + * Max Android API level to which this annotation is applied. + */ + int to() default Integer.MAX_VALUE; +} diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Objects.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Objects.java new file mode 100644 index 000000000000..3781fcf4e891 --- /dev/null +++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Objects.java @@ -0,0 +1,85 @@ +/* + * Copyright (C) 2010 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 libcore.util; + +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; +import java.util.Arrays; + +public final class Objects { + private Objects() {} + + /** + * Returns a string reporting the value of each declared field, via reflection. + * Static and transient fields are automatically skipped. Produces output like + * "SimpleClassName[integer=1234,string="hello",character='c',intArray=[1,2,3]]". + */ + public static String toString(Object o) { + Class<?> c = o.getClass(); + StringBuilder sb = new StringBuilder(); + sb.append(c.getSimpleName()).append('['); + int i = 0; + for (Field f : c.getDeclaredFields()) { + if ((f.getModifiers() & (Modifier.STATIC | Modifier.TRANSIENT)) != 0) { + continue; + } + f.setAccessible(true); + try { + Object value = f.get(o); + + if (i++ > 0) { + sb.append(','); + } + + sb.append(f.getName()); + sb.append('='); + + if (value.getClass().isArray()) { + if (value.getClass() == boolean[].class) { + sb.append(Arrays.toString((boolean[]) value)); + } else if (value.getClass() == byte[].class) { + sb.append(Arrays.toString((byte[]) value)); + } else if (value.getClass() == char[].class) { + sb.append(Arrays.toString((char[]) value)); + } else if (value.getClass() == double[].class) { + sb.append(Arrays.toString((double[]) value)); + } else if (value.getClass() == float[].class) { + sb.append(Arrays.toString((float[]) value)); + } else if (value.getClass() == int[].class) { + sb.append(Arrays.toString((int[]) value)); + } else if (value.getClass() == long[].class) { + sb.append(Arrays.toString((long[]) value)); + } else if (value.getClass() == short[].class) { + sb.append(Arrays.toString((short[]) value)); + } else { + sb.append(Arrays.toString((Object[]) value)); + } + } else if (value.getClass() == Character.class) { + sb.append('\'').append(value).append('\''); + } else if (value.getClass() == String.class) { + sb.append('"').append(value).append('"'); + } else { + sb.append(value); + } + } catch (IllegalAccessException unexpected) { + throw new AssertionError(unexpected); + } + } + sb.append("]"); + return sb.toString(); + } +} diff --git a/ravenwood/runtime-jni/jni_helper.h b/ravenwood/runtime-jni/jni_helper.h new file mode 100644 index 000000000000..561fb3beda6b --- /dev/null +++ b/ravenwood/runtime-jni/jni_helper.h @@ -0,0 +1,99 @@ +/* + * Copyright (C) 2024 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. + */ + +#include <jni.h> +#include <log/log.h> +#include <nativehelper/JNIHelp.h> +#include <nativehelper/ScopedLocalRef.h> +#include <nativehelper/ScopedPrimitiveArray.h> +#include <nativehelper/ScopedUtfChars.h> + +#include <string> + +constexpr const char* kCommonUtils = "com/android/ravenwood/common/RavenwoodCommonUtils"; +constexpr const char* kRuntimeEnvController = + "android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController"; +constexpr const char* kRuntimeNative = "com/android/ravenwood/RavenwoodRuntimeNative"; + +// We have to explicitly decode the string to real UTF-8, because when using GetStringUTFChars +// we only get modified UTF-8, which is not the platform string type used in host JVM. +struct ScopedRealUtf8Chars { + ScopedRealUtf8Chars(JNIEnv* env, jstring s) : valid_(false) { + if (s == nullptr) { + jniThrowNullPointerException(env); + return; + } + jclass clazz = env->GetObjectClass(s); + jmethodID getBytes = env->GetMethodID(clazz, "getBytes", "(Ljava/lang/String;)[B"); + + ScopedLocalRef<jstring> utf8(env, env->NewStringUTF("UTF-8")); + ScopedLocalRef<jbyteArray> jbytes(env, + (jbyteArray)env->CallObjectMethod(s, getBytes, + utf8.get())); + + ScopedByteArrayRO bytes(env, jbytes.get()); + string_.append((const char*)bytes.get(), bytes.size()); + valid_ = true; + } + + const char* c_str() const { + return valid_ ? string_.c_str() : nullptr; + } + + size_t size() const { + return string_.size(); + } + + const char& operator[](size_t n) const { + return string_[n]; + } + +private: + std::string string_; + bool valid_; +}; + +static inline JNIEnv* GetJNIEnvOrDie(JavaVM* vm) { + JNIEnv* env = nullptr; + vm->GetEnv((void**)&env, JNI_VERSION_1_4); + LOG_ALWAYS_FATAL_IF(env == nullptr, "Could not retrieve JNIEnv."); + return env; +} + +static inline jclass FindClassOrDie(JNIEnv* env, const char* class_name) { + jclass clazz = env->FindClass(class_name); + LOG_ALWAYS_FATAL_IF(clazz == NULL, "Unable to find class %s", class_name); + return clazz; +} + +template <typename T> +static inline T MakeGlobalRefOrDie(JNIEnv* env, T in) { + jobject res = env->NewGlobalRef(in); + LOG_ALWAYS_FATAL_IF(res == NULL, "Unable to create global reference."); + return static_cast<T>(res); +} + +static inline jclass FindGlobalClassOrDie(JNIEnv* env, const char* class_name) { + return MakeGlobalRefOrDie(env, FindClassOrDie(env, class_name)); +} + +static inline jmethodID GetStaticMethodIDOrDie(JNIEnv* env, jclass clazz, const char* method_name, + const char* method_signature) { + jmethodID res = env->GetStaticMethodID(clazz, method_name, method_signature); + LOG_ALWAYS_FATAL_IF(res == NULL, "Unable to find static method %s with signature %s", + method_name, method_signature); + return res; +} diff --git a/ravenwood/runtime-jni/ravenwood_initializer.cpp b/ravenwood/runtime-jni/ravenwood_initializer.cpp new file mode 100644 index 000000000000..89fb7c3c3510 --- /dev/null +++ b/ravenwood/runtime-jni/ravenwood_initializer.cpp @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2024 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. + */ + + /* + * This file is compiled into a single SO file, which we load at the very first. + * We can do process-wide initialization here. + */ + +#include <fcntl.h> +#include <unistd.h> + +#include "jni_helper.h" + +static void maybeRedirectLog() { + auto ravenwoodLogOut = getenv("RAVENWOOD_LOG_OUT"); + if (ravenwoodLogOut == NULL) { + return; + } + ALOGI("RAVENWOOD_LOG_OUT set. Redirecting output to %s", ravenwoodLogOut); + + // Redirect stdin / stdout to /dev/tty. + int ttyFd = open(ravenwoodLogOut, O_WRONLY | O_APPEND); + if (ttyFd == -1) { + ALOGW("$RAVENWOOD_LOG_OUT is set to %s, but failed to open: %s ", ravenwoodLogOut, + strerror(errno)); + return; + } + dup2(ttyFd, 1); + dup2(ttyFd, 2); +} + +extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */) { + ALOGI("%s: JNI_OnLoad", __FILE__); + + maybeRedirectLog(); + return JNI_VERSION_1_4; +} diff --git a/ravenwood/runtime-jni/ravenwood_runtime.cpp b/ravenwood/runtime-jni/ravenwood_runtime.cpp index 34cf9f915677..c1993f691686 100644 --- a/ravenwood/runtime-jni/ravenwood_runtime.cpp +++ b/ravenwood/runtime-jni/ravenwood_runtime.cpp @@ -15,16 +15,15 @@ */ #include <fcntl.h> -#include <sys/stat.h> #include <string.h> +#include <sys/stat.h> +#include <sys/syscall.h> #include <unistd.h> -#include <nativehelper/JNIHelp.h> -#include "jni.h" -#include "utils/Log.h" -#include "utils/misc.h" +#include <utils/misc.h> + +#include <string> -// Defined in ravenwood_os_constants.cpp -void register_android_system_OsConstants(JNIEnv* env); +#include "jni_helper.h" // ---- Exception related ---- @@ -41,6 +40,65 @@ static rc_t throwIfMinusOne(JNIEnv* env, const char* name, rc_t rc) { return rc; } +// ---- Helper functions --- + +static jclass g_StructStat; +static jclass g_StructTimespecClass; + +static jobject makeStructTimespec(JNIEnv* env, const struct timespec& ts) { + static jmethodID ctor = env->GetMethodID(g_StructTimespecClass, "<init>", + "(JJ)V"); + if (ctor == NULL) { + return NULL; + } + return env->NewObject(g_StructTimespecClass, ctor, + static_cast<jlong>(ts.tv_sec), static_cast<jlong>(ts.tv_nsec)); +} + +static jobject makeStructStat(JNIEnv* env, const struct stat64& sb) { + static jmethodID ctor = env->GetMethodID(g_StructStat, "<init>", + "(JJIJIIJJLandroid/system/StructTimespec;Landroid/system/StructTimespec;Landroid/system/StructTimespec;JJ)V"); + if (ctor == NULL) { + return NULL; + } + + jobject atim_timespec = makeStructTimespec(env, sb.st_atim); + if (atim_timespec == NULL) { + return NULL; + } + jobject mtim_timespec = makeStructTimespec(env, sb.st_mtim); + if (mtim_timespec == NULL) { + return NULL; + } + jobject ctim_timespec = makeStructTimespec(env, sb.st_ctim); + if (ctim_timespec == NULL) { + return NULL; + } + + return env->NewObject(g_StructStat, ctor, + static_cast<jlong>(sb.st_dev), static_cast<jlong>(sb.st_ino), + static_cast<jint>(sb.st_mode), static_cast<jlong>(sb.st_nlink), + static_cast<jint>(sb.st_uid), static_cast<jint>(sb.st_gid), + static_cast<jlong>(sb.st_rdev), static_cast<jlong>(sb.st_size), + atim_timespec, mtim_timespec, ctim_timespec, + static_cast<jlong>(sb.st_blksize), static_cast<jlong>(sb.st_blocks)); +} + +static jobject doStat(JNIEnv* env, jstring javaPath, bool isLstat) { + ScopedRealUtf8Chars path(env, javaPath); + if (path.c_str() == NULL) { + return NULL; + } + struct stat64 sb; + int rc = isLstat ? TEMP_FAILURE_RETRY(lstat64(path.c_str(), &sb)) + : TEMP_FAILURE_RETRY(stat64(path.c_str(), &sb)); + if (rc == -1) { + throwErrnoException(env, isLstat ? "lstat" : "stat"); + return NULL; + } + return makeStructStat(env, sb); +} + // ---- JNI methods ---- typedef void (*FreeFunction)(void*); @@ -77,8 +135,55 @@ static jlong nDup(JNIEnv* env, jclass, jint fd) { return throwIfMinusOne(env, "fcntl", TEMP_FAILURE_RETRY(fcntl(fd, F_DUPFD_CLOEXEC, 0))); } +static jobject nFstat(JNIEnv* env, jobject, jint fd) { + struct stat64 sb; + int rc = TEMP_FAILURE_RETRY(fstat64(fd, &sb)); + if (rc == -1) { + throwErrnoException(env, "fstat"); + return NULL; + } + return makeStructStat(env, sb); +} + +static jobject Linux_lstat(JNIEnv* env, jobject, jstring javaPath) { + return doStat(env, javaPath, true); +} + +static jobject Linux_stat(JNIEnv* env, jobject, jstring javaPath) { + return doStat(env, javaPath, false); +} + +static jint Linux_open(JNIEnv* env, jobject, jstring javaPath, jint flags, jint mode) { + ScopedRealUtf8Chars path(env, javaPath); + if (path.c_str() == NULL) { + return -1; + } + return throwIfMinusOne(env, "open", TEMP_FAILURE_RETRY(open(path.c_str(), flags, mode))); +} + +static void Linux_setenv(JNIEnv* env, jobject, jstring javaName, jstring javaValue, + jboolean overwrite) { + ScopedRealUtf8Chars name(env, javaName); + if (name.c_str() == NULL) { + jniThrowNullPointerException(env); + } + ScopedRealUtf8Chars value(env, javaValue); + if (value.c_str() == NULL) { + jniThrowNullPointerException(env); + } + throwIfMinusOne(env, "setenv", setenv(name.c_str(), value.c_str(), overwrite ? 1 : 0)); +} + + +static jint Linux_gettid(JNIEnv* env, jobject) { + // gettid(2() was added in glibc 2.30 but Android uses an older version in prebuilt. + return syscall(__NR_gettid); +} + // ---- Registration ---- +extern void register_android_system_OsConstants(JNIEnv* env); + static const JNINativeMethod sMethods[] = { { "applyFreeFunction", "(JJ)V", (void*)nApplyFreeFunction }, @@ -86,23 +191,22 @@ static const JNINativeMethod sMethods[] = { "nLseek", "(IJI)J", (void*)nLseek }, { "nPipe2", "(I)[I", (void*)nPipe2 }, { "nDup", "(I)I", (void*)nDup }, + { "nFstat", "(I)Landroid/system/StructStat;", (void*)nFstat }, + { "lstat", "(Ljava/lang/String;)Landroid/system/StructStat;", (void*)Linux_lstat }, + { "stat", "(Ljava/lang/String;)Landroid/system/StructStat;", (void*)Linux_stat }, + { "nOpen", "(Ljava/lang/String;II)I", (void*)Linux_open }, + { "setenv", "(Ljava/lang/String;Ljava/lang/String;Z)V", (void*)Linux_setenv }, + { "gettid", "()I", (void*)Linux_gettid }, }; -extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */) -{ - JNIEnv* env = NULL; - jint result = -1; - - if (vm->GetEnv((void**) &env, JNI_VERSION_1_4) != JNI_OK) { - ALOGE("GetEnv failed!"); - return result; - } - ALOG_ASSERT(env, "Could not retrieve the env!"); - +extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */) { ALOGI("%s: JNI_OnLoad", __FILE__); - jint res = jniRegisterNativeMethods(env, "com/android/ravenwood/common/RavenwoodRuntimeNative", - sMethods, NELEM(sMethods)); + JNIEnv* env = GetJNIEnvOrDie(vm); + g_StructStat = FindGlobalClassOrDie(env, "android/system/StructStat"); + g_StructTimespecClass = FindGlobalClassOrDie(env, "android/system/StructTimespec"); + + jint res = jniRegisterNativeMethods(env, kRuntimeNative, sMethods, NELEM(sMethods)); if (res < 0) { return res; } diff --git a/ravenwood/runtime-jni/ravenwood_sysprop.cpp b/ravenwood/runtime-jni/ravenwood_sysprop.cpp new file mode 100644 index 000000000000..aafc4268d782 --- /dev/null +++ b/ravenwood/runtime-jni/ravenwood_sysprop.cpp @@ -0,0 +1,187 @@ +/* + * Copyright (C) 2024 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. + */ + +#include <dlfcn.h> + +#include <set> + +#include "jni_helper.h" + +// Implement a rudimentary system properties data store + +#define PROP_VALUE_MAX 92 + +namespace { + +struct prop_info { + std::string key; + mutable std::string value; + mutable uint32_t serial; + + prop_info(const char* key, const char* value) : key(key), value(value), serial(0) {} +}; + +struct prop_info_cmp { + using is_transparent = void; + bool operator()(const prop_info& lhs, const prop_info& rhs) { + return lhs.key < rhs.key; + } + bool operator()(std::string_view lhs, const prop_info& rhs) { + return lhs < rhs.key; + } + bool operator()(const prop_info& lhs, std::string_view rhs) { + return lhs.key < rhs; + } +}; + +} // namespace + +static auto& g_properties_lock = *new std::mutex; +static auto& g_properties = *new std::set<prop_info, prop_info_cmp>; + +static bool property_set(const char* key, const char* value) { + if (key == nullptr || *key == '\0') return false; + if (value == nullptr) value = ""; + bool read_only = !strncmp(key, "ro.", 3); + if (!read_only && strlen(value) >= PROP_VALUE_MAX) return false; + + std::lock_guard lock(g_properties_lock); + auto [it, success] = g_properties.emplace(key, value); + if (read_only) return success; + if (!success) { + it->value = value; + ++it->serial; + } + return true; +} + +template <typename Func> +static void property_get(const char* key, Func callback) { + std::lock_guard lock(g_properties_lock); + auto it = g_properties.find(key); + if (it != g_properties.end()) { + callback(*it); + } +} + +// Redefine the __system_property_XXX functions here so we can perform +// logging and access checks for all sysprops in native code. + +static void check_system_property_access(const char* key, bool write); + +extern "C" { + +int __system_property_set(const char* key, const char* value) { + check_system_property_access(key, true); + return property_set(key, value) ? 0 : -1; +} + +int __system_property_get(const char* key, char* value) { + check_system_property_access(key, false); + *value = '\0'; + property_get(key, [&](const prop_info& info) { + snprintf(value, PROP_VALUE_MAX, "%s", info.value.c_str()); + }); + return strlen(value); +} + +const prop_info* __system_property_find(const char* key) { + check_system_property_access(key, false); + const prop_info* pi = nullptr; + property_get(key, [&](const prop_info& info) { pi = &info; }); + return pi; +} + +void __system_property_read_callback(const prop_info* pi, + void (*callback)(void*, const char*, const char*, uint32_t), + void* cookie) { + std::lock_guard lock(g_properties_lock); + callback(cookie, pi->key.c_str(), pi->value.c_str(), pi->serial); +} + +} // extern "C" + +// ---- JNI ---- + +static JavaVM* gVM = nullptr; +static jclass gEnvController = nullptr; +static jmethodID gCheckSystemPropertyAccess; + +static void reloadNativeLibrary(JNIEnv* env, jclass, jstring javaPath) { + ScopedUtfChars path(env, javaPath); + // Force reload ourselves as global + dlopen(path.c_str(), RTLD_LAZY | RTLD_GLOBAL | RTLD_NOLOAD); +} + +// Call back into Java code to check property access +static void check_system_property_access(const char* key, bool write) { + if (gVM != nullptr && gEnvController != nullptr) { + JNIEnv* env; + if (gVM->GetEnv((void**)&env, JNI_VERSION_1_4) >= 0) { + ALOGI("%s access to system property '%s'", write ? "Write" : "Read", key); + env->CallStaticVoidMethod(gEnvController, gCheckSystemPropertyAccess, + env->NewStringUTF(key), write ? JNI_TRUE : JNI_FALSE); + return; + } + } + // Not on JVM thread, abort + LOG_ALWAYS_FATAL("Access to system property '%s' on non-JVM threads is not allowed.", key); +} + +static jstring getSystemProperty(JNIEnv* env, jclass, jstring javaKey) { + ScopedUtfChars key(env, javaKey); + jstring value = nullptr; + property_get(key.c_str(), + [&](const prop_info& info) { value = env->NewStringUTF(info.value.c_str()); }); + return value; +} + +static jboolean setSystemProperty(JNIEnv* env, jclass, jstring javaKey, jstring javaValue) { + ScopedUtfChars key(env, javaKey); + ScopedUtfChars value(env, javaValue); + return property_set(key.c_str(), value.c_str()) ? JNI_TRUE : JNI_FALSE; +} + +static void clearSystemProperties(JNIEnv*, jclass) { + std::lock_guard lock(g_properties_lock); + g_properties.clear(); +} + +static const JNINativeMethod sMethods[] = { + {"reloadNativeLibrary", "(Ljava/lang/String;)V", (void*)reloadNativeLibrary}, + {"getSystemProperty", "(Ljava/lang/String;)Ljava/lang/String;", (void*)getSystemProperty}, + {"setSystemProperty", "(Ljava/lang/String;Ljava/lang/String;)Z", (void*)setSystemProperty}, + {"clearSystemProperties", "()V", (void*)clearSystemProperties}, +}; + +extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */) { + ALOGI("%s: JNI_OnLoad", __FILE__); + + JNIEnv* env = GetJNIEnvOrDie(vm); + gVM = vm; + + // Fetch several references for future use + gEnvController = FindGlobalClassOrDie(env, kRuntimeEnvController); + gCheckSystemPropertyAccess = + GetStaticMethodIDOrDie(env, gEnvController, "checkSystemPropertyAccess", + "(Ljava/lang/String;Z)V"); + + // Expose raw property methods as JNI methods + jint res = jniRegisterNativeMethods(env, kRuntimeNative, sMethods, NELEM(sMethods)); + if (res < 0) return -1; + + return JNI_VERSION_1_4; +} diff --git a/ravenwood/runtime-test/test/com/android/ravenwood/runtimetest/OsTest.java b/ravenwood/runtime-test/test/com/android/ravenwood/runtimetest/OsTest.java deleted file mode 100644 index b5038e68516d..000000000000 --- a/ravenwood/runtime-test/test/com/android/ravenwood/runtimetest/OsTest.java +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (C) 2024 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.ravenwood.runtimetest; - -import static org.junit.Assert.assertEquals; - -import android.system.Os; -import android.system.OsConstants; - -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import com.android.ravenwood.common.JvmWorkaround; -import com.android.ravenwood.common.RavenwoodRuntimeNative; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import java.io.File; -import java.io.FileDescriptor; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.RandomAccessFile; - -@RunWith(AndroidJUnit4.class) -public class OsTest { - public interface ConsumerWithThrow<T> { - void accept(T var1) throws Exception; - } - - private void withTestFile(ConsumerWithThrow<FileDescriptor> consumer) throws Exception { - File file = File.createTempFile("osTest", "bin"); - try (var raf = new RandomAccessFile(file, "rw")) { - var fd = raf.getFD(); - - try (var os = new FileOutputStream(fd)) { - os.write(1); - os.write(2); - os.write(3); - os.write(4); - - consumer.accept(fd); - } - } - } - - @Test - public void testLseek() throws Exception { - withTestFile((fd) -> { - assertEquals(4, Os.lseek(fd, 4, OsConstants.SEEK_SET)); - assertEquals(4, Os.lseek(fd, 0, OsConstants.SEEK_CUR)); - assertEquals(6, Os.lseek(fd, 2, OsConstants.SEEK_CUR)); - }); - } - - @Test - public void testDup() throws Exception { - withTestFile((fd) -> { - var dup = Os.dup(fd); - - checkAreDup(fd, dup); - }); - } - - @Test - public void testPipe2() throws Exception { - var fds = Os.pipe2(0); - - write(fds[1], 123); - assertEquals(123, read(fds[0])); - } - - @Test - public void testFcntlInt() throws Exception { - withTestFile((fd) -> { - var dupInt = Os.fcntlInt(fd, 0, 0); - - var dup = new FileDescriptor(); - JvmWorkaround.getInstance().setFdInt(dup, dupInt); - - checkAreDup(fd, dup); - }); - } - - private static void write(FileDescriptor fd, int oneByte) throws IOException { - // Create a dup to avoid closing the FD. - try (var dup = new FileOutputStream(RavenwoodRuntimeNative.dup(fd))) { - dup.write(oneByte); - } - } - - private static int read(FileDescriptor fd) throws IOException { - // Create a dup to avoid closing the FD. - try (var dup = new FileInputStream(RavenwoodRuntimeNative.dup(fd))) { - return dup.read(); - } - } - - private static void checkAreDup(FileDescriptor fd1, FileDescriptor fd2) throws Exception { - assertEquals(4, Os.lseek(fd1, 4, OsConstants.SEEK_SET)); - assertEquals(4, Os.lseek(fd1, 0, OsConstants.SEEK_CUR)); - - // Dup'ed FD shares the same position. - assertEquals(4, Os.lseek(fd2, 0, OsConstants.SEEK_CUR)); - - assertEquals(6, Os.lseek(fd1, 2, OsConstants.SEEK_CUR)); - assertEquals(6, Os.lseek(fd2, 0, OsConstants.SEEK_CUR)); - } -} diff --git a/ravenwood/scripts/list-ravenwood-tests.sh b/ravenwood/scripts/list-ravenwood-tests.sh index fb9b823ee93b..05f3fdffdaa7 100755 --- a/ravenwood/scripts/list-ravenwood-tests.sh +++ b/ravenwood/scripts/list-ravenwood-tests.sh @@ -15,4 +15,4 @@ # List all the ravenwood test modules. -jq -r 'to_entries[] | select( .value.compatibility_suites | index("ravenwood-tests") ) | .key' "$OUT/module-info.json" +jq -r 'to_entries[] | select( .value.compatibility_suites | index("ravenwood-tests") ) | .key' "$OUT/module-info.json" | sort diff --git a/ravenwood/scripts/ravenwood-stats-collector.sh b/ravenwood/scripts/ravenwood-stats-collector.sh index 43b61a46b747..b83216af95fe 100755 --- a/ravenwood/scripts/ravenwood-stats-collector.sh +++ b/ravenwood/scripts/ravenwood-stats-collector.sh @@ -22,10 +22,12 @@ out_dir=/tmp/ravenwood stats=$out_dir/ravenwood-stats-all.csv apis=$out_dir/ravenwood-apis-all.csv keep_all_dir=$out_dir/ravenwood-keep-all/ +dump_dir=$out_dir/ravenwood-dump/ rm -fr $out_dir mkdir -p $out_dir mkdir -p $keep_all_dir +mkdir -p $dump_dir # Where the input files are. path=$ANDROID_BUILD_TOP/out/host/linux-x86/testcases/ravenwood-stats-checker/x86_64/ @@ -60,6 +62,8 @@ collect_stats() { dump "framework-minus-apex" hoststubgen_framework-minus-apex_stats.csv dump "service.core" hoststubgen_services.core_stats.csv + dump "framework-configinfrastructure" framework-configinfrastructure_stats.csv + dump "framework-statsd" framework-statsd_stats.csv } > "$out" echo "Stats CVS created at $out" @@ -74,6 +78,8 @@ collect_apis() { dump "framework-minus-apex" hoststubgen_framework-minus-apex_apis.csv dump "service.core" hoststubgen_services.core_apis.csv + dump "framework-configinfrastructure" framework-configinfrastructure_apis.csv + dump "framework-statsd" framework-statsd_apis.csv } > "$out" echo "API CVS created at $out" @@ -85,4 +91,8 @@ collect_apis $apis cp *keep_all.txt $keep_all_dir echo "Keep all files created at:" -find $keep_all_dir -type f
\ No newline at end of file +find $keep_all_dir -type f + +cp *dump.txt $dump_dir +echo "Dump files created at:" +find $dump_dir -type f
\ No newline at end of file diff --git a/ravenwood/scripts/ravenwood-test-summary b/ravenwood/scripts/ravenwood-test-summary new file mode 100755 index 000000000000..602fbff31ea3 --- /dev/null +++ b/ravenwood/scripts/ravenwood-test-summary @@ -0,0 +1,75 @@ +#!/usr/bin/env python3 +# +# Copyright (C) 2024 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. + +''' +Print the latest Ravenwood test execution summary + +Usage: /ravenwood-test-summary + +Example output: +Module Passed Failed Skipped +android.test.mock.ravenwood.tests 2 0 0 +CarLibHostUnitTest 565 0 7 +CarServiceHostUnitTest 364 0 0 +CtsAccountManagerTestCasesRavenwood 4 0 0 +CtsAppTestCasesRavenwood 21 0 0 + +Description: +This script finds all the test execution result from /tmp/Ravenwood-stats*, +and shows per-module summary. +''' + +import csv +import glob +import sys + +# Find the latest stats files. +stats_files = glob.glob('/tmp/Ravenwood-stats_*_latest.csv') + +if len(stats_files) == 0: + print("No log files found.", file=sys.stderr) + exit(1) + + +def parse_stats(file, result): + module = '(unknwon)' + passed = 0 + failed = 0 + skipped = 0 + with open(file) as csvfile: + reader = csv.reader(csvfile, delimiter=',') + + + for i, row in enumerate(reader): + if i == 0: continue # Skip header line + module = row[0] + passed += int(row[3]) + failed += int(row[4]) + skipped += int(row[5]) + + result[module] = (passed, failed, skipped) + + +result = {} + +for file in stats_files: + parse_stats(file, result) + +print('%-60s %8s %8s %8s' % ("Module", "Passed", "Failed", "Skipped")) + +for module in sorted(result.keys(), key=str.casefold): + r = result[module] + print('%-60s %8d %8d %8d' % (module, r[0], r[1], r[2])) diff --git a/ravenwood/scripts/remove-ravenizer-output.sh b/ravenwood/scripts/remove-ravenizer-output.sh new file mode 100755 index 000000000000..be15b711b980 --- /dev/null +++ b/ravenwood/scripts/remove-ravenizer-output.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# Copyright (C) 2024 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. + +# Delete all the ravenizer output jar files from Soong's intermediate directory. + +# `-a -prune` is needed because otherwise find would be confused if the directory disappears. + +find "${ANDROID_BUILD_TOP:?}/out/soong/.intermediates/" \ + -type d \ + -name 'ravenizer' \ + -print \ + -exec rm -fr \{\} \; \ + -a -prune diff --git a/ravenwood/scripts/run-ravenwood-tests.sh b/ravenwood/scripts/run-ravenwood-tests.sh index 926c08f4e689..fe2269a8dc38 100755 --- a/ravenwood/scripts/run-ravenwood-tests.sh +++ b/ravenwood/scripts/run-ravenwood-tests.sh @@ -14,15 +14,96 @@ # limitations under the License. # Run all the ravenwood tests + hoststubgen unit tests. +# +# Options: +# +# -s: "Smoke" test -- skip slow tests (SysUI, ICU) +# +# -x PCRE: Specify exclusion filter in PCRE +# Example: -x '^(Cts|hoststub)' # Exclude CTS and hoststubgen tests. +# +# -f PCRE: Specify inclusion filter in PCRE + -all_tests="hoststubgentest tiny-framework-dump-test hoststubgen-invoke-test ravenwood-stats-checker" +# Regex to identify slow tests, in PCRE +SLOW_TEST_RE='^(SystemUiRavenTests|CtsIcuTestCasesRavenwood|CarSystemUIRavenTests)$' -# "echo" is to remove the newlines -all_tests="$all_tests $(echo $(${0%/*}/list-ravenwood-tests.sh) )" +smoke=0 +include_re="" +exclude_re="" +smoke_exclude_re="" +dry_run="" +while getopts "sx:f:dt" opt; do +case "$opt" in + s) + # Remove slow tests. + smoke_exclude_re="$SLOW_TEST_RE" + ;; + x) + # Take a PCRE from the arg, and use it as an exclusion filter. + exclude_re="$OPTARG" + ;; + f) + # Take a PCRE from the arg, and use it as an inclusion filter. + include_re="$OPTARG" + ;; + d) + # Dry run + dry_run="echo" + ;; + t) + export RAVENWOOD_LOG_OUT=$(tty) + ;; + '?') + exit 1 + ;; +esac +done +shift $(($OPTIND - 1)) -run() { - echo "Running: $*" - "${@}" +all_tests=(hoststubgentest tiny-framework-dump-test hoststubgen-invoke-test ravenwood-stats-checker) +all_tests+=( $(${0%/*}/list-ravenwood-tests.sh) ) + +filter() { + local re="$1" + local grep_arg="$2" + if [[ "$re" == "" ]] ; then + cat # No filtering + else + grep $grep_arg -iP "$re" + fi +} + +filter_in() { + filter "$1" } -run ${ATEST:-atest} $all_tests +filter_out() { + filter "$1" -v +} + + +# Remove the slow tests. +targets=( $( + for t in "${all_tests[@]}"; do + echo $t | filter_in "$include_re" | filter_out "$smoke_exclude_re" | filter_out "$exclude_re" + done +) ) + +# Show the target tests + +echo "Target tests:" +for t in "${targets[@]}"; do + echo " $t" +done + +# Calculate the removed tests. + +diff="$(diff <(echo "${all_tests[@]}" | tr ' ' '\n') <(echo "${targets[@]}" | tr ' ' '\n') )" + +if [[ "$diff" != "" ]]; then + echo "Excluded tests:" + echo "$diff" +fi + +$dry_run ${ATEST:-atest} "${targets[@]}" diff --git a/ravenwood/scripts/shrink-systemui-test b/ravenwood/scripts/shrink-systemui-test new file mode 100755 index 000000000000..8589c1d433fc --- /dev/null +++ b/ravenwood/scripts/shrink-systemui-test @@ -0,0 +1,131 @@ +#!/bin/bash +# Copyright (C) 2024 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. + +set -e + +SCRIPT_NAME="${0##*/}" + +usage() { + cat <<"EOF" + +$SCRIPT_NAME: Shrink / unshrink SystemUiRavenTests. + + SystemUiRavenTests has a lot of kotlin source files, so it's slow to build, + which is painful when you want to run it after updating ravenwood code + that SystemUiRavenTests depends on. (example: junit-src/) + + This script basically removes the test files in SystemUI/multivalentTests + that don't have @EnabledOnRavenwood. But if we actaully remove them, + soong would re-generate the ninja file, which will take a long time, + so instead it'll truncate them. + + This script will also tell git to ignore these files, so they won't shw up + in `git status`. + (Use `git ls-files -v | sed -ne "s/^[a-zS] //p"` to show ignored filse.) + +Usage: + $SCRIPT_NAME -s # Shrink the test files. + + $SCRIPT_NAME -u # Undo it. + +EOF +} + +TEST_PATH=${ANDROID_BUILD_TOP}/frameworks/base/packages/SystemUI/multivalentTests +cd "$TEST_PATH" + +command="" +case "$1" in + "-s") command=shrink ;; + "-u") command=unshrink ;; + *) usage ; exit 1 ;; +esac + + +echo "Listing test files...." +files=( $(find . -name '*Test.kt' -o -name '*Test.java') ) + +exemption='(BaseHeadsUpManagerTest)' + +shrink() { + local target=() + for file in ${files[@]}; do + # Check for exemption + if echo $file | egrep -q "$exemption"; then + echo " Skip exempted file" + continue + fi + + echo "Checking $file" + if ! [[ -f $file ]] ; then + echo " Skip non regular file" + continue + fi + + if ! [[ -s $file ]] ; then + echo " Skip empty file" + continue + fi + + if grep -q '@EnabledOnRavenwood' $file ; then + echo " Skip ravenwood test file". + continue + fi + + # It's a non ravenwood test file. Empty it. + : > $file + + # Tell git to ignore the file + + target+=($file) + + echo " Emptied" + + done + if (( ${#target[@]} == 0 )) ; then + echo "No files emptied." + return 0 + fi + + git update-index --skip-worktree ${target[@]} + + echo "Emptied ${#target[@]} files" + return 0 +} + +unshrink() { + local target=() + + # Collect empty files + for file in ${files[@]}; do + if [[ -s $file ]] ; then + continue + fi + + target+=($file) + : > $file + done + if (( ${#target[@]} == 0 )) ; then + echo "No files to restore." + return 0 + fi + # Un-ignore the files, and check out the original files + echo "Restoring ${#target[@]} files..." + git update-index --no-skip-worktree ${target[@]} + git checkout goog/main ${target[@]} + return 0 +} + +$command diff --git a/ravenwood/scripts/update-test-mapping.sh b/ravenwood/scripts/update-test-mapping.sh new file mode 100755 index 000000000000..ab37baf01ea5 --- /dev/null +++ b/ravenwood/scripts/update-test-mapping.sh @@ -0,0 +1,97 @@ +#!/bin/bash +# Copyright (C) 2024 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. + +# Update f/b/r/TEST_MAPPING with all the ravenwood tests as presubmit. +# +# Note, before running it, make sure module-info.json is up-to-date by running +# (any) build. + +set -e + +# Tests that shouldn't be in presubmit. +EXEMPT='^(SystemUiRavenTests)$' + +is_car() { + local module="$1" + + # If the module name starts with "Car", then it's a test for "Car". + [[ "$module" =~ ^Car ]] + return $? +} + +main() { + local script_name="${0##*/}" + local script_dir="${0%/*}" + local test_mapping="$script_dir/../TEST_MAPPING" + local test_mapping_bak="$script_dir/../TEST_MAPPING.bak" + + local header="$(sed -ne '1,/AUTO-GENERATED-START/p' "$test_mapping")" + local footer="$(sed -ne '/AUTO-GENERATED-END/,$p' "$test_mapping")" + + echo "Getting all tests" + local tests=( $("$script_dir/list-ravenwood-tests.sh" | grep -vP "$EXEMPT") ) + + local num_tests="${#tests[@]}" + + if (( $num_tests == 0 )) ; then + echo "Something went wrong. No ravenwood tests detected." 1>&2 + return 1 + fi + + echo "Tests: ${tests[@]}" + + echo "Creating backup at $test_mapping_bak" + cp "$test_mapping" "$test_mapping_bak" + + echo "Updating $test_mapping" + { + echo "$header" + + echo " // DO NOT MODIFY MANUALLY" + echo " // Use scripts/$script_name to update it." + + local i=0 + while (( $i < $num_tests )) ; do + local comma="," + if (( $i == ($num_tests - 1) )); then + comma="" + fi + echo " {" + echo " \"name\": \"${tests[$i]}\"," + if is_car "${tests[$i]}"; then + echo ' "keywords": ["automotive_code_coverage"],' + fi + + echo " \"host\": true" + echo " }$comma" + + i=$(( $i + 1 )) + done + + echo "$footer" + } >"$test_mapping" + + if cmp "$test_mapping_bak" "$test_mapping" ; then + echo "No change detecetd." + return 0 + fi + echo "Updated $test_mapping" + + # `|| true` is needed because of `set -e`. + diff -u "$test_mapping_bak" "$test_mapping" || true + return 0 +} + +main diff --git a/ravenwood/test-authors.md b/ravenwood/test-authors.md index 0a0b200adabc..c29fb7f67e78 100644 --- a/ravenwood/test-authors.md +++ b/ravenwood/test-authors.md @@ -46,7 +46,7 @@ android_ravenwood_test { * Write your unit test just like you would for an Android device: ``` -import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import androidx.test.ext.junit.runners.AndroidJUnit4; @@ -66,7 +66,7 @@ public class MyCodeTest { * APIs available under Ravenwood are stateless by default. If your test requires explicit states (such as defining the UID you’re running under, or requiring a main `Looper` thread), add a `RavenwoodRule` to declare that: ``` -import android.platform.test.annotations.IgnoreUnderRavenwood; +import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import androidx.test.runner.AndroidJUnit4; @@ -165,7 +165,7 @@ public class MyCodeTest { } @Test - @IgnoreUnderRavenwood(blockedBy = PackageManager.class) + @DisabledOnRavenwood(blockedBy = PackageManager.class) public void testComplex() { // Complex test that runs on devices, but is ignored under Ravenwood } diff --git a/ravenwood/tests/bivalentinst/Android.bp b/ravenwood/tests/bivalentinst/Android.bp new file mode 100644 index 000000000000..41e45e5a6d95 --- /dev/null +++ b/ravenwood/tests/bivalentinst/Android.bp @@ -0,0 +1,148 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_ravenwood_test { + name: "RavenwoodBivalentInstTest_self_inst", + + srcs: [ + "test/**/*.java", + ], + exclude_srcs: [ + "test/**/*_nonself.java", + ], + + static_libs: [ + "RavenwoodBivalentInstTest_self_inst_device_R", + + "androidx.annotation_annotation", + "androidx.test.ext.junit", + "androidx.test.rules", + + "junit", + "truth", + ], + resource_apk: "RavenwoodBivalentInstTest_self_inst_device", + auto_gen_config: true, +} + +android_ravenwood_test { + name: "RavenwoodBivalentInstTest_nonself_inst", + + srcs: [ + "test/**/*.java", + ], + exclude_srcs: [ + "test/**/*_self.java", + ], + + static_libs: [ + "RavenwoodBivalentInstTestTarget_R", + "RavenwoodBivalentInstTest_nonself_inst_device_R", + + "androidx.annotation_annotation", + "androidx.test.ext.junit", + "androidx.test.rules", + + "junit", + "truth", + ], + resource_apk: "RavenwoodBivalentInstTestTarget", + inst_resource_apk: "RavenwoodBivalentInstTest_nonself_inst_device", + auto_gen_config: true, +} + +// We have 3 R.javas from the 3 packages (2 test apks below, and 1 target APK) +// RavenwoodBivalentInstTest needs to use all of them, but we can't add all the +// {.aapt.srcjar}'s together because that'd cause +// "duplicate declaration of androidx.test.core.R$string." +// So we build them as separate libraries, and include them as static_libs. +java_library { + name: "RavenwoodBivalentInstTestTarget_R", + srcs: [ + ":RavenwoodBivalentInstTestTarget{.aapt.srcjar}", + ], +} + +java_library { + name: "RavenwoodBivalentInstTest_self_inst_device_R", + srcs: [ + ":RavenwoodBivalentInstTest_self_inst_device{.aapt.srcjar}", + ], +} + +java_library { + name: "RavenwoodBivalentInstTest_nonself_inst_device_R", + srcs: [ + ":RavenwoodBivalentInstTest_nonself_inst_device{.aapt.srcjar}", + ], +} + +android_test { + name: "RavenwoodBivalentInstTest_self_inst_device", + + srcs: [ + "test/**/*.java", + ], + exclude_srcs: [ + "test/**/*_nonself.java", + ], + static_libs: [ + "junit", + "truth", + + "androidx.annotation_annotation", + "androidx.test.ext.junit", + "androidx.test.rules", + + "ravenwood-junit", + ], + test_suites: [ + "device-tests", + ], + use_resource_processor: false, + manifest: "AndroidManifest-self-inst.xml", + test_config: "AndroidTest-self-inst.xml", + optimize: { + enabled: false, + }, +} + +android_test { + name: "RavenwoodBivalentInstTest_nonself_inst_device", + + srcs: [ + "test/**/*.java", + ], + exclude_srcs: [ + "test/**/*_self.java", + ], + static_libs: [ + "junit", + "truth", + + "androidx.annotation_annotation", + "androidx.test.ext.junit", + "androidx.test.rules", + + "ravenwood-junit", + ], + data: [ + ":RavenwoodBivalentInstTestTarget", + ], + test_suites: [ + "device-tests", + ], + use_resource_processor: false, + manifest: "AndroidManifest-nonself-inst.xml", + test_config: "AndroidTest-nonself-inst.xml", + instrumentation_for: "RavenwoodBivalentInstTestTarget", + optimize: { + enabled: false, + }, +} diff --git a/ravenwood/tests/bivalentinst/AndroidManifest-nonself-inst.xml b/ravenwood/tests/bivalentinst/AndroidManifest-nonself-inst.xml new file mode 100644 index 000000000000..a5a1f17f5ec0 --- /dev/null +++ b/ravenwood/tests/bivalentinst/AndroidManifest-nonself-inst.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.ravenwood.bivalentinsttest_nonself_inst"> + + <application android:debuggable="true" > + <uses-library android:name="android.test.runner" /> + </application> + + <instrumentation + android:name="androidx.test.runner.AndroidJUnitRunner" + android:targetPackage="com.android.ravenwood.bivalentinst_target_app" + /> +</manifest> diff --git a/ravenwood/tests/bivalentinst/AndroidManifest-self-inst.xml b/ravenwood/tests/bivalentinst/AndroidManifest-self-inst.xml new file mode 100644 index 000000000000..3dc4c566220c --- /dev/null +++ b/ravenwood/tests/bivalentinst/AndroidManifest-self-inst.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.ravenwood.bivalentinsttest_self_inst"> + + <application android:debuggable="true" > + <uses-library android:name="android.test.runner" /> + </application> + + <instrumentation + android:name="androidx.test.runner.AndroidJUnitRunner" + android:targetPackage="com.android.ravenwood.bivalentinsttest_self_inst" + /> +</manifest> diff --git a/ravenwood/tests/bivalentinst/AndroidTest-nonself-inst.xml b/ravenwood/tests/bivalentinst/AndroidTest-nonself-inst.xml new file mode 100644 index 000000000000..9491c5315e2a --- /dev/null +++ b/ravenwood/tests/bivalentinst/AndroidTest-nonself-inst.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> +<configuration> + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="apct-instrumentation" /> + + <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> + <option name="cleanup-apks" value="true" /> + <option name="test-file-name" value="RavenwoodBivalentInstTestTarget.apk" /> + <option name="test-file-name" value="RavenwoodBivalentInstTest_nonself_inst_device.apk" /> + </target_preparer> + + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.ravenwood.bivalentinsttest_nonself_inst" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + </test> +</configuration> diff --git a/ravenwood/tests/bivalentinst/AndroidTest-self-inst.xml b/ravenwood/tests/bivalentinst/AndroidTest-self-inst.xml new file mode 100644 index 000000000000..3079c0612c3c --- /dev/null +++ b/ravenwood/tests/bivalentinst/AndroidTest-self-inst.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> +<configuration> + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="apct-instrumentation" /> + + <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> + <option name="cleanup-apks" value="true" /> + <option name="test-file-name" value="RavenwoodBivalentInstTest_self_inst_device.apk" /> + </target_preparer> + + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.ravenwood.bivalentinsttest_self_inst" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + </test> +</configuration> diff --git a/ravenwood/tests/bivalentinst/res/values/strings.xml b/ravenwood/tests/bivalentinst/res/values/strings.xml new file mode 100644 index 000000000000..73ef650a9780 --- /dev/null +++ b/ravenwood/tests/bivalentinst/res/values/strings.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Copyright (C) 2024 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. +--> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string translatable="false" name="test_string_in_test">String in test APK</string> +</resources> diff --git a/ravenwood/tests/bivalentinst/targetapp/Android.bp b/ravenwood/tests/bivalentinst/targetapp/Android.bp new file mode 100644 index 000000000000..7528a6270ae1 --- /dev/null +++ b/ravenwood/tests/bivalentinst/targetapp/Android.bp @@ -0,0 +1,20 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_app { + name: "RavenwoodBivalentInstTestTarget", + srcs: [ + "src/**/*.java", + ], + sdk_version: "current", + optimize: { + enabled: false, + }, + use_resource_processor: false, +} diff --git a/ravenwood/tests/bivalentinst/targetapp/AndroidManifest.xml b/ravenwood/tests/bivalentinst/targetapp/AndroidManifest.xml new file mode 100644 index 000000000000..0715f5d62654 --- /dev/null +++ b/ravenwood/tests/bivalentinst/targetapp/AndroidManifest.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.ravenwood.bivalentinst_target_app"> + <application> + </application> +</manifest> diff --git a/ravenwood/tests/bivalentinst/targetapp/res/values/strings.xml b/ravenwood/tests/bivalentinst/targetapp/res/values/strings.xml new file mode 100644 index 000000000000..395bc2ae37e2 --- /dev/null +++ b/ravenwood/tests/bivalentinst/targetapp/res/values/strings.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Copyright (C) 2024 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. +--> + +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string translatable="false" name="test_string_in_target">Test string in target APK</string> +</resources> diff --git a/ravenwood/tests/bivalentinst/targetapp/src/com/android/ravenwoodtest/bivalentinst/Empty.java b/ravenwood/tests/bivalentinst/targetapp/src/com/android/ravenwoodtest/bivalentinst/Empty.java new file mode 100644 index 000000000000..15e50ecd4e4a --- /dev/null +++ b/ravenwood/tests/bivalentinst/targetapp/src/com/android/ravenwoodtest/bivalentinst/Empty.java @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalentinst; + +/** + * Empty class. We need it because an instrumentation target APK must have code. + */ +public class Empty { +} diff --git a/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_nonself.java b/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_nonself.java new file mode 100644 index 000000000000..ed1992cdd1ea --- /dev/null +++ b/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_nonself.java @@ -0,0 +1,113 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalentinst; + +import static com.google.common.truth.Truth.assertThat; + +import android.app.Instrumentation; +import android.content.Context; +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.ravenwood.RavenwoodConfig; +import android.platform.test.ravenwood.RavenwoodConfig.Config; + +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; + +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Tests for the case where the instrumentation target is _not_ the test APK itself. + */ +@RunWith(AndroidJUnit4.class) +@DisabledOnRavenwood(reason="AOSP is missing resources support") +public class RavenwoodInstrumentationTest_nonself { + private static final String TARGET_PACKAGE_NAME = + "com.android.ravenwood.bivalentinst_target_app"; + private static final String TEST_PACKAGE_NAME = + "com.android.ravenwood.bivalentinsttest_nonself_inst"; + + @Config + public static final RavenwoodConfig sConfig = new RavenwoodConfig.Builder() + .setPackageName(TEST_PACKAGE_NAME) + .setTargetPackageName(TARGET_PACKAGE_NAME) + .build(); + + private static Instrumentation sInstrumentation; + private static Context sTestContext; + private static Context sTargetContext; + + @BeforeClass + public static void beforeClass() { + sInstrumentation = InstrumentationRegistry.getInstrumentation(); + sTestContext = sInstrumentation.getContext(); + sTargetContext = sInstrumentation.getTargetContext(); + } + + @Test + public void testTestContextPackageName() { + assertThat(sTestContext.getPackageName()).isEqualTo(TEST_PACKAGE_NAME); + } + + @Test + public void testTargetContextPackageName() { + assertThat(sTargetContext.getPackageName()).isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testTestAppContext() { + // Test context doesn't have an app context. + assertThat(sTestContext.getApplicationContext()).isNull(); + } + + @Test + public void testTargetAppContextPackageName() { + assertThat(sTargetContext.getApplicationContext().getPackageName()) + .isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testTargetAppAppContextPackageName() { + assertThat(sTargetContext.getApplicationContext() + .getApplicationContext().getPackageName()) + .isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testContextSameness() { + assertThat(sTargetContext).isNotSameInstanceAs(sTestContext); + + assertThat(sTargetContext).isNotSameInstanceAs(sTargetContext.getApplicationContext()); + + assertThat(sTargetContext.getApplicationContext()).isSameInstanceAs( + sTargetContext.getApplicationContext().getApplicationContext()); + } + + @Test + public void testTargetAppResource() { + assertThat(sTargetContext.getString( + com.android.ravenwood.bivalentinst_target_app.R.string.test_string_in_target)) + .isEqualTo("Test string in target APK"); + } + + @Test + public void testTestAppResource() { + assertThat(sTestContext.getString( + com.android.ravenwood.bivalentinsttest_nonself_inst.R.string.test_string_in_test)) + .isEqualTo("String in test APK"); + } +} diff --git a/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_self.java b/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_self.java new file mode 100644 index 000000000000..b5bafc435845 --- /dev/null +++ b/ravenwood/tests/bivalentinst/test/com/android/ravenwoodtest/bivalentinst/RavenwoodInstrumentationTest_self.java @@ -0,0 +1,125 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalentinst; + +import static com.google.common.truth.Truth.assertThat; + +import android.app.Instrumentation; +import android.content.Context; +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.ravenwood.RavenwoodConfig; +import android.platform.test.ravenwood.RavenwoodConfig.Config; + +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; + +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Tests for the case where the instrumentation target is the test APK itself. + */ +@RunWith(AndroidJUnit4.class) +@DisabledOnRavenwood(reason="AOSP is missing resources support") +public class RavenwoodInstrumentationTest_self { + + private static final String TARGET_PACKAGE_NAME = + "com.android.ravenwood.bivalentinsttest_self_inst"; + private static final String TEST_PACKAGE_NAME = + "com.android.ravenwood.bivalentinsttest_self_inst"; + + @Config + public static final RavenwoodConfig sConfig = new RavenwoodConfig.Builder() + .setPackageName(TEST_PACKAGE_NAME) + .setTargetPackageName(TARGET_PACKAGE_NAME) + .build(); + + + private static Instrumentation sInstrumentation; + private static Context sTestContext; + private static Context sTargetContext; + + @BeforeClass + public static void beforeClass() { + sInstrumentation = InstrumentationRegistry.getInstrumentation(); + sTestContext = sInstrumentation.getContext(); + sTargetContext = sInstrumentation.getTargetContext(); + } + + @Test + public void testTestContextPackageName() { + assertThat(sTestContext.getPackageName()).isEqualTo(TEST_PACKAGE_NAME); + } + + @Test + public void testTargetContextPackageName() { + assertThat(sTargetContext.getPackageName()).isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testTestAppContextPackageName() { + assertThat(sTestContext.getApplicationContext().getPackageName()) + .isEqualTo(TEST_PACKAGE_NAME); + } + + @Test + public void testTestAppAppContextPackageName() { + assertThat(sTestContext.getApplicationContext().getPackageName()) + .isEqualTo(TEST_PACKAGE_NAME); + } + + @Test + public void testTargetAppContextPackageName() { + assertThat(sTargetContext.getApplicationContext() + .getApplicationContext().getPackageName()) + .isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testTargetAppAppContextPackageName() { + assertThat(sTargetContext.getApplicationContext() + .getApplicationContext().getPackageName()) + .isEqualTo(TARGET_PACKAGE_NAME); + } + + @Test + public void testContextSameness() { + assertThat(sTargetContext).isNotSameInstanceAs(sTestContext); + + assertThat(sTestContext).isNotSameInstanceAs(sTestContext.getApplicationContext()); + assertThat(sTargetContext).isNotSameInstanceAs(sTargetContext.getApplicationContext()); + + assertThat(sTestContext.getApplicationContext()).isSameInstanceAs( + sTestContext.getApplicationContext().getApplicationContext()); + assertThat(sTargetContext.getApplicationContext()).isSameInstanceAs( + sTargetContext.getApplicationContext().getApplicationContext()); + } + + @Test + public void testTargetAppResource() { + assertThat(sTargetContext.getString( + com.android.ravenwood.bivalentinsttest_self_inst.R.string.test_string_in_test)) + .isEqualTo("String in test APK"); + } + + @Test + public void testTestAppResource() { + assertThat(sTestContext.getString( + com.android.ravenwood.bivalentinsttest_self_inst.R.string.test_string_in_test)) + .isEqualTo("String in test APK"); + } +} diff --git a/ravenwood/bivalenttest/Android.bp b/ravenwood/tests/bivalenttest/Android.bp index 2d94894c54be..4895a1a6d1a2 100644 --- a/ravenwood/bivalenttest/Android.bp +++ b/ravenwood/tests/bivalenttest/Android.bp @@ -31,46 +31,68 @@ cc_library_shared { ], } -android_ravenwood_test { - name: "RavenwoodBivalentTest", - +java_defaults { + name: "ravenwood-bivalent-defaults", static_libs: [ "androidx.annotation_annotation", "androidx.test.ext.junit", "androidx.test.rules", + + "junit-params", + "platform-parametric-runner-lib", + + // To make sure it won't cause VerifyError (b/324063814) + "platformprotosnano", + + "com.android.internal.os.flags-aconfig-java", ], srcs: [ "test/**/*.java", + "test/**/*.kt", ], jni_libs: [ "libravenwoodbivalenttest_jni", ], - auto_gen_config: true, } -android_test { - name: "RavenwoodBivalentTest_device", - - srcs: [ - "test/**/*.java", +java_defaults { + name: "ravenwood-bivalent-device-defaults", + defaults: ["ravenwood-bivalent-defaults"], + // TODO(b/371215487): migrate bivalenttest.ravenizer tests to another architecture + exclude_srcs: [ + "test/**/ravenizer/*.java", + "test/**/ravenizer/*.kt", ], static_libs: [ "junit", "truth", - - "androidx.annotation_annotation", - "androidx.test.ext.junit", - "androidx.test.rules", - + "flag-junit", "ravenwood-junit", ], - jni_libs: [ - "libravenwoodbivalenttest_jni", - ], test_suites: [ "device-tests", ], optimize: { enabled: false, }, + test_config_template: "AndroidTestTemplate.xml", +} + +android_ravenwood_test { + name: "RavenwoodBivalentTest", + defaults: ["ravenwood-bivalent-defaults"], + auto_gen_config: true, +} + +android_test { + name: "RavenwoodBivalentTest_device", + defaults: ["ravenwood-bivalent-device-defaults"], +} + +android_test { + name: "RavenwoodBivalentTest_device_ravenizer", + defaults: ["ravenwood-bivalent-device-defaults"], + ravenizer: { + enabled: true, + }, } diff --git a/ravenwood/bivalenttest/AndroidManifest.xml b/ravenwood/tests/bivalenttest/AndroidManifest.xml index 474c03f4f3c9..474c03f4f3c9 100644 --- a/ravenwood/bivalenttest/AndroidManifest.xml +++ b/ravenwood/tests/bivalenttest/AndroidManifest.xml diff --git a/ravenwood/bivalenttest/AndroidTest.xml b/ravenwood/tests/bivalenttest/AndroidTestTemplate.xml index 9e5dd11b60cb..8f1a92c0ae17 100644 --- a/ravenwood/bivalenttest/AndroidTest.xml +++ b/ravenwood/tests/bivalenttest/AndroidTestTemplate.xml @@ -19,7 +19,7 @@ <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> <option name="cleanup-apks" value="true" /> - <option name="test-file-name" value="RavenwoodBivalentTest_device.apk" /> + <option name="test-file-name" value="{MODULE}.apk"/> </target_preparer> <test class="com.android.tradefed.testtype.AndroidJUnitTest" > diff --git a/ravenwood/bivalenttest/README.md b/ravenwood/tests/bivalenttest/README.md index 71535556ec75..71535556ec75 100644 --- a/ravenwood/bivalenttest/README.md +++ b/ravenwood/tests/bivalenttest/README.md diff --git a/ravenwood/bivalenttest/jni/ravenwood_core_test_jni.cpp b/ravenwood/tests/bivalenttest/jni/ravenwood_core_test_jni.cpp index 956d79c0d25f..956d79c0d25f 100644 --- a/ravenwood/bivalenttest/jni/ravenwood_core_test_jni.cpp +++ b/ravenwood/tests/bivalenttest/jni/ravenwood_core_test_jni.cpp diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodAndroidApiTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodAndroidApiTest.java index d91e73438fa3..d91e73438fa3 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodAndroidApiTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodAndroidApiTest.java diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleDeviceOnlyTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleDeviceOnlyTest.java index 3a24c0e829a4..e8f59db86901 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleDeviceOnlyTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleDeviceOnlyTest.java @@ -26,6 +26,10 @@ import org.junit.ClassRule; import org.junit.Test; import org.junit.runner.RunWith; +/** + * Test to ensure @DisabledOnRavenwood works. Note, now the DisabledOnRavenwood annotation + * is handled by the test runner, so it won't really need the class rule. + */ @RunWith(AndroidJUnit4.class) @DisabledOnRavenwood public class RavenwoodClassRuleDeviceOnlyTest { diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodConfigTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodConfigTest.java new file mode 100644 index 000000000000..a5a16c14600b --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodConfigTest.java @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest; + +import static android.platform.test.ravenwood.RavenwoodConfig.isOnRavenwood; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assume.assumeTrue; + +import android.platform.test.ravenwood.RavenwoodConfig; + +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; + +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Test to make sure the config field is used. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodConfigTest { + private static final String PACKAGE_NAME = "com.test"; + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = + new RavenwoodConfig.Builder() + .setPackageName(PACKAGE_NAME) + .build(); + + @Test + public void testConfig() { + assumeTrue(isOnRavenwood()); + assertEquals(PACKAGE_NAME, + InstrumentationRegistry.getInstrumentation().getContext().getPackageName()); + } +} diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodJniTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodJniTest.java index 0cc2adc6b26b..0cc2adc6b26b 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodJniTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodJniTest.java diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodMultipleRuleTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodMultipleRuleTest.java new file mode 100644 index 000000000000..c25d2b4cbc4d --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodMultipleRuleTest.java @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest; + +import android.platform.test.ravenwood.RavenwoodConfig; +import android.platform.test.ravenwood.RavenwoodRule; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Assume; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; +import org.junit.runner.RunWith; + +/** + * Make sure having multiple RavenwoodRule's is detected. + * (But only when running on ravenwod. Otherwise it'll be ignored.) + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodMultipleRuleTest { + + @Rule(order = Integer.MIN_VALUE) + public final ExpectedException mExpectedException = ExpectedException.none(); + + @Rule + public final RavenwoodRule mRavenwood1 = new RavenwoodRule(); + + @Rule + public final RavenwoodRule mRavenwood2 = new RavenwoodRule(); + + public RavenwoodMultipleRuleTest() { + // We can't call it within the test method because the exception happens before + // calling the method, so set it up here. + if (RavenwoodConfig.isOnRavenwood()) { + mExpectedException.expectMessage("Multiple nesting RavenwoodRule"); + } + } + + @Test + public void testMultipleRulesNotAllowed() { + Assume.assumeTrue(RavenwoodConfig.isOnRavenwood()); + } +} diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNativeAllocationRegistryTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNativeAllocationRegistryTest.java index 415b4676f46b..415b4676f46b 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNativeAllocationRegistryTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNativeAllocationRegistryTest.java diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleRavenwoodOnlyTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNoConfigNoRuleTest.java index aa33dc3392b0..d47330568828 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodClassRuleRavenwoodOnlyTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodNoConfigNoRuleTest.java @@ -15,29 +15,22 @@ */ package com.android.ravenwoodtest.bivalenttest; -import android.platform.test.ravenwood.RavenwoodClassRule; -import android.platform.test.ravenwood.RavenwoodRule; +import static org.junit.Assert.assertNotNull; import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; -import org.junit.Assert; -import org.junit.ClassRule; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; +/** + * Test to make sure the environment is still initialized when no config and no rules are set. + */ @RunWith(AndroidJUnit4.class) -// TODO: atest RavenwoodBivalentTest_device fails with the following message. -// `RUNNER ERROR: Instrumentation reported numtests=7 but only ran 6` -// @android.platform.test.annotations.DisabledOnNonRavenwood -// Figure it out and then make DisabledOnNonRavenwood support TYPEs as well. -@Ignore -public class RavenwoodClassRuleRavenwoodOnlyTest { - @ClassRule - public static final RavenwoodClassRule sRavenwood = new RavenwoodClassRule(); +public class RavenwoodNoConfigNoRuleTest { @Test - public void testRavenwoodOnly() { - Assert.assertTrue(RavenwoodRule.isOnRavenwood()); + public void testInitialization() { + assertNotNull(InstrumentationRegistry.getInstrumentation()); } } diff --git a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodRuleTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodRuleTest.java index 01e90d8672e4..3de372e48e3a 100644 --- a/ravenwood/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodRuleTest.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodRuleTest.java @@ -15,7 +15,6 @@ */ package com.android.ravenwoodtest.bivalenttest; -import android.platform.test.annotations.DisabledOnNonRavenwood; import android.platform.test.annotations.DisabledOnRavenwood; import android.platform.test.ravenwood.RavenwoodRule; import android.util.Log; @@ -39,12 +38,6 @@ public class RavenwoodRuleTest { } @Test - @DisabledOnNonRavenwood - public void testRavenwoodOnly() { - Assert.assertTrue(RavenwoodRule.isOnRavenwood()); - } - - @Test public void testDumpSystemProperties() { Log.w("XXX", "System properties"); for (var sp : System.getProperties().entrySet()) { diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodUiAutomationTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodUiAutomationTest.java new file mode 100644 index 000000000000..eb948279109b --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/RavenwoodUiAutomationTest.java @@ -0,0 +1,84 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest; + +import static android.Manifest.permission.OVERRIDE_COMPAT_CHANGE_CONFIG; +import static android.Manifest.permission.READ_COMPAT_CHANGE_CONFIG; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThrows; +import static org.junit.Assert.assertTrue; +import static org.junit.Assume.assumeTrue; + +import android.app.Instrumentation; +import android.app.UiAutomation; + +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; + +import com.android.ravenwood.common.RavenwoodCommonUtils; + +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.util.Set; + +@RunWith(AndroidJUnit4.class) +public class RavenwoodUiAutomationTest { + + private Instrumentation mInstrumentation; + + @Before + public void setup() { + mInstrumentation = InstrumentationRegistry.getInstrumentation(); + } + + @Test + public void testGetUiAutomation() { + assertNotNull(mInstrumentation.getUiAutomation()); + } + + @Test + public void testGetUiAutomationWithFlags() { + assertNotNull(mInstrumentation.getUiAutomation(UiAutomation.FLAG_DONT_USE_ACCESSIBILITY)); + } + + @Test + public void testShellPermissionApis() { + var uiAutomation = mInstrumentation.getUiAutomation(); + assertTrue(uiAutomation.getAdoptedShellPermissions().isEmpty()); + uiAutomation.adoptShellPermissionIdentity(); + assertEquals(uiAutomation.getAdoptedShellPermissions(), UiAutomation.ALL_PERMISSIONS); + uiAutomation.adoptShellPermissionIdentity((String[]) null); + assertEquals(uiAutomation.getAdoptedShellPermissions(), UiAutomation.ALL_PERMISSIONS); + uiAutomation.adoptShellPermissionIdentity( + OVERRIDE_COMPAT_CHANGE_CONFIG, READ_COMPAT_CHANGE_CONFIG); + assertEquals(uiAutomation.getAdoptedShellPermissions(), + Set.of(OVERRIDE_COMPAT_CHANGE_CONFIG, READ_COMPAT_CHANGE_CONFIG)); + uiAutomation.dropShellPermissionIdentity(); + assertTrue(uiAutomation.getAdoptedShellPermissions().isEmpty()); + } + + @Test + public void testUnsupportedMethod() { + // Only unsupported on Ravenwood + assumeTrue(RavenwoodCommonUtils.isOnRavenwood()); + assertThrows(RuntimeException.class, + () -> mInstrumentation.getUiAutomation().executeShellCommand("echo ok")); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/aconfig/RavenwoodAconfigFlagTest.kt b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/aconfig/RavenwoodAconfigFlagTest.kt new file mode 100644 index 000000000000..fd6d6fb66465 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/aconfig/RavenwoodAconfigFlagTest.kt @@ -0,0 +1,102 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.aconfig + +import android.platform.test.annotations.EnableFlags +import android.platform.test.annotations.RequiresFlagsDisabled +import android.platform.test.annotations.RequiresFlagsEnabled +import android.platform.test.flag.junit.DeviceFlagsValueProvider +import android.platform.test.flag.junit.SetFlagsRule +import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.internal.os.Flags +import org.junit.Assert.assertFalse +import org.junit.Assert.assertTrue +import org.junit.Assert.fail +import org.junit.Ignore +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith + + +@RunWith(AndroidJUnit4::class) +class RavenwoodAconfigSimpleReadTests { + @Test + fun testFalseFlags() { + assertFalse(Flags.ravenwoodFlagRo1()) + assertFalse(Flags.ravenwoodFlagRw1()) + } + + @Test + @Ignore // TODO: Enable this test after rolling out the "2" flags. + fun testTrueFlags() { + assertTrue(Flags.ravenwoodFlagRo2()) + assertTrue(Flags.ravenwoodFlagRw2()) + } +} + +@RunWith(AndroidJUnit4::class) +class RavenwoodAconfigCheckFlagsRuleTests { + @Rule + @JvmField + val checkFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule() + + @Test + @RequiresFlagsEnabled(Flags.FLAG_RAVENWOOD_FLAG_RO_1) + fun testRequireFlagsEnabledRo() { + fail("This test shouldn't be executed") + } + + @Test + @RequiresFlagsEnabled(Flags.FLAG_RAVENWOOD_FLAG_RW_1) + fun testRequireFlagsEnabledRw() { + fail("This test shouldn't be executed") + } + + @Test + @RequiresFlagsDisabled(Flags.FLAG_RAVENWOOD_FLAG_RO_2) + @Ignore // TODO: Enable this test after rolling out the "2" flags. + fun testRequireFlagsDisabledRo() { + fail("This test shouldn't be executed") + } + + @Test + @RequiresFlagsDisabled(Flags.FLAG_RAVENWOOD_FLAG_RW_2) + @Ignore // TODO: Enable this test after rolling out the "2" flags. + fun testRequireFlagsDisabledRw() { + fail("This test shouldn't be executed") + } +} + +@RunWith(AndroidJUnit4::class) +class RavenwoodAconfigSetFlagsRuleWithDefaultTests { + @Rule + @JvmField + val setFlagsRule = SetFlagsRule() + + @Test + @EnableFlags(Flags.FLAG_RAVENWOOD_FLAG_RO_1) + fun testSetRoFlag() { + assertTrue(Flags.ravenwoodFlagRo1()) + assertFalse(Flags.ravenwoodFlagRw1()) + } + + @Test + @EnableFlags(Flags.FLAG_RAVENWOOD_FLAG_RW_1) + fun testSetRwFlag() { + assertFalse(Flags.ravenwoodFlagRo1()) + assertTrue(Flags.ravenwoodFlagRw1()) + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/CallTracker.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/CallTracker.java new file mode 100644 index 000000000000..09a0aa8dbaa2 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/CallTracker.java @@ -0,0 +1,110 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import static org.junit.Assert.fail; + +import static java.lang.StackWalker.Option.RETAIN_CLASS_REFERENCE; + +import android.util.Log; + +import java.lang.StackWalker.StackFrame; +import java.util.HashMap; + +/** + * Used to keep track of and count the number of calls. + */ +public class CallTracker { + public static final String TAG = "CallTracker"; + + private final HashMap<String, Integer> mNumCalled = new HashMap<>(); + + /** + * Call it when a method is called. It increments the count for the calling method. + */ + public void incrementMethodCallCount() { + var methodName = getCallingMethodName(1); + + Log.i(TAG, "Method called: " + methodName); + + mNumCalled.put(methodName, getNumCalled(methodName) + 1); + } + + /** + * Return the number of calls of a method. + */ + public int getNumCalled(String methodName) { + return mNumCalled.getOrDefault(methodName, 0); + } + + /** + * Return the current method name. (with the class name.) + */ + private static String getCallingMethodName(int frameOffset) { + var walker = StackWalker.getInstance(RETAIN_CLASS_REFERENCE); + var caller = walker.walk(frames -> + frames.skip(1 + frameOffset).findFirst().map(StackFrame::getMethodName) + ); + return caller.get(); + } + + /** + * Check the number of calls stored in {@link #mNumCalled}. + */ + public void assertCalls(Object... methodNameAndCountPairs) { + // Create a local copy + HashMap<String, Integer> counts = new HashMap<>(mNumCalled); + for (int i = 0; i < methodNameAndCountPairs.length - 1; i += 2) { + String methodName = (String) methodNameAndCountPairs[i]; + int expectedCount = (Integer) methodNameAndCountPairs[i + 1]; + + if (getNumCalled(methodName) != expectedCount) { + fail(String.format("Method %s: expected call count=%d, actual=%d", + methodName, expectedCount, getNumCalled(methodName))); + } + counts.remove(methodName); + } + // All other entries are expected to be 0. + var sb = new StringBuilder(); + for (var e : counts.entrySet()) { + if (e.getValue() == 0) { + continue; + } + sb.append(String.format("Method %s: expected call count=0, actual=%d", + e.getKey(), e.getValue())); + } + if (sb.length() > 0) { + fail(sb.toString()); + } + } + + /** + * Same as {@link #assertCalls(Object...)} but it kills the process if it fails. + * Only use in @AfterClass. + */ + public void assertCallsOrDie(Object... methodNameAndCountPairs) { + try { + assertCalls(methodNameAndCountPairs); + } catch (Throwable th) { + // TODO: I don't think it's by spec, but the exception here would be ignored both on + // ravenwood and on the device side. Look into it. + Log.e(TAG, "*** Failure detected in @AfterClass! ***", th); + Log.e(TAG, "JUnit seems to ignore exceptions from @AfterClass, so killing self."); + System.exit(7); + } + } + +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodAwareTestRunnerTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodAwareTestRunnerTest.java new file mode 100644 index 000000000000..4e21f8605163 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodAwareTestRunnerTest.java @@ -0,0 +1,107 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; + +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.annotations.RavenwoodTestRunnerInitializing; +import android.platform.test.ravenwood.RavenwoodRule; +import android.util.Log; + +import androidx.test.platform.app.InstrumentationRegistry; + +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; + +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.util.List; + +/** + * Make sure RavenwoodAwareTestRunnerTest properly delegates to the original runner, + * and also run the special annotated methods. + */ +@RunWith(JUnitParamsRunner.class) +public class RavenwoodAwareTestRunnerTest { + public static final String TAG = "RavenwoodAwareTestRunnerTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + private static int getExpectedRavenwoodRunnerInitializingNumCalls() { + return RavenwoodRule.isOnRavenwood() ? 1 : 0; + } + + @RavenwoodTestRunnerInitializing + public static void ravenwoodRunnerInitializing() { + // No other calls should have been made. + sCallTracker.assertCalls(); + + sCallTracker.incrementMethodCallCount(); + } + + @BeforeClass + public static void beforeClass() { + sCallTracker.assertCalls( + "ravenwoodRunnerInitializing", + getExpectedRavenwoodRunnerInitializingNumCalls() + ); + sCallTracker.incrementMethodCallCount(); + } + + public RavenwoodAwareTestRunnerTest() { + // Make sure the environment is already initialized when the constructor is called + assertNotNull(InstrumentationRegistry.getInstrumentation()); + } + + @Test + public void test1() { + sCallTracker.incrementMethodCallCount(); + } + + public static List<String> testParams() { + return List.of("foo", "bar"); + } + + @Test + @Parameters(method = "testParams") + public void testWithParams(String arg) { + sCallTracker.incrementMethodCallCount(); + } + + @Test + @DisabledOnRavenwood + public void testDeviceOnly() { + assertFalse(RavenwoodRule.isOnRavenwood()); + } + + @AfterClass + public static void afterClass() { + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "ravenwoodRunnerInitializing", + getExpectedRavenwoodRunnerInitializingNumCalls(), + "beforeClass", 1, + "test1", 1, + "testWithParams", 2 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitClassRuleDeviceOnlyTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitClassRuleDeviceOnlyTest.java new file mode 100644 index 000000000000..7ef672e80bee --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitClassRuleDeviceOnlyTest.java @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.ravenwood.RavenwoodRule; +import android.util.Log; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +@RunWith(AndroidJUnit4.class) +@DisabledOnRavenwood +public class RavenwoodImplicitClassRuleDeviceOnlyTest { + public static final String TAG = "RavenwoodImplicitClassRuleDeviceOnlyTest"; + + @BeforeClass + public static void beforeClass() { + // This method shouldn't be called -- unless RUN_DISABLED_TESTS is enabled. + + // If we're doing RUN_DISABLED_TESTS, don't throw here, because that'd confuse junit. + if (!RavenwoodRule.private$ravenwood().isRunningDisabledTests()) { + Assert.assertFalse(RavenwoodRule.isOnRavenwood()); + } + } + + @Test + public void testDeviceOnly() { + Assert.assertFalse(RavenwoodRule.isOnRavenwood()); + } + + @AfterClass + public static void afterClass() { + if (RavenwoodRule.isOnRavenwood()) { + Log.e(TAG, "Even @AfterClass shouldn't be executed!"); + + if (!RavenwoodRule.private$ravenwood().isRunningDisabledTests()) { + System.exit(1); + } + } + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleOrderRewriteTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleOrderRewriteTest.java new file mode 100644 index 000000000000..7ef40dc49e1a --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleOrderRewriteTest.java @@ -0,0 +1,136 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.fail; + +import android.platform.test.ravenwood.RavenwoodRule; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Assume; +import org.junit.ClassRule; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TestRule; +import org.junit.runner.RunWith; + +import java.util.HashMap; + +/** + * Make sure ravenizer will inject implicit rules and rewrite the existing rules' orders. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodImplicitRuleOrderRewriteTest { + + private static final TestRule sEmptyRule = (statement, description) -> statement; + + // We have two sets of 9 rules below, for class rules and instance rules. + // - Ravenizer will inject 2 more rules of each kind. + // - Ravenizer will adjust their order, so even though we'll add two sets of class and instance + // rules with a MIN / MAX order, there will still be no duplicate in the order. + + private static final int EXPECTED_RULE_COUNT = 9 + 2; + + @ClassRule(order = Integer.MIN_VALUE) + public static final TestRule sRule01 = sEmptyRule; + + @ClassRule(order = Integer.MIN_VALUE + 1) + public static final TestRule sRule02 = sEmptyRule; + + @ClassRule(order = -10) + public static final TestRule sRule03 = sEmptyRule; + + @ClassRule(order = -1) + public static final TestRule sRule04 = sEmptyRule; + + @ClassRule(order = 0) + public static final TestRule sRule05 = sEmptyRule; + + @ClassRule(order = 1) + public static final TestRule sRule06 = sEmptyRule; + + @ClassRule(order = 10) + public static final TestRule sRule07 = sEmptyRule; + + @ClassRule(order = Integer.MAX_VALUE - 1) + public static final TestRule sRule08 = sEmptyRule; + + @ClassRule(order = Integer.MAX_VALUE) + public static final TestRule sRule09 = sEmptyRule; + + @Rule(order = Integer.MIN_VALUE) + public final TestRule mRule01 = sEmptyRule; + + @Rule(order = Integer.MIN_VALUE + 1) + public final TestRule mRule02 = sEmptyRule; + + @Rule(order = -10) + public final TestRule mRule03 = sEmptyRule; + + @Rule(order = -1) + public final TestRule mRule04 = sEmptyRule; + + @Rule(order = 0) + public final TestRule mRule05 = sEmptyRule; + + @Rule(order = 1) + public final TestRule mRule06 = sEmptyRule; + + @Rule(order = 10) + public final TestRule mRule07 = sEmptyRule; + + @Rule(order = Integer.MAX_VALUE - 1) + public final TestRule mRule08 = sEmptyRule; + + @Rule(order = Integer.MAX_VALUE) + public final TestRule mRule09 = sEmptyRule; + + private void checkRules(boolean classRule) { + final var anotClass = classRule ? ClassRule.class : Rule.class; + + final HashMap<Integer, Integer> ordersUsed = new HashMap<>(); + + for (var field : this.getClass().getDeclaredFields()) { + if (!field.isAnnotationPresent(anotClass)) { + continue; + } + final var anot = field.getAnnotation(anotClass); + final int order = classRule ? ((ClassRule) anot).order() : ((Rule) anot).order(); + + if (ordersUsed.containsKey(order)) { + fail("Detected duplicate order=" + order); + } + ordersUsed.put(order, 1); + } + assertEquals(EXPECTED_RULE_COUNT, ordersUsed.size()); + } + + @Test + public void testClassRules() { + Assume.assumeTrue(RavenwoodRule.isOnRavenwood()); + + checkRules(true); + } + + @Test + public void testInstanceRules() { + Assume.assumeTrue(RavenwoodRule.isOnRavenwood()); + + checkRules(false); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleShadowingTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleShadowingTest.java new file mode 100644 index 000000000000..ae596b10848b --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleShadowingTest.java @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Test to make sure when a test class inherits another test class, the base class's + * implicit rules are shadowed and won't be executed. + * + * ... But for now, we don't have a way to programmatically check it, so for now we need to + * check the log file manually. + * + * TODO: Implement the test. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodImplicitRuleShadowingTest extends RavenwoodImplicitRuleShadowingTestBase { + @Test + public void testOkInSubClass() { + } +} diff --git a/services/core/java/com/android/server/integrity/serializer/RuleSerializeException.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleShadowingTestBase.java index 60cfc4876414..1ca97af632dd 100644 --- a/services/core/java/com/android/server/integrity/serializer/RuleSerializeException.java +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodImplicitRuleShadowingTestBase.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,20 +13,19 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +package com.android.ravenwoodtest.bivalenttest.ravenizer; -package com.android.server.integrity.serializer; +import androidx.test.ext.junit.runners.AndroidJUnit4; -import android.annotation.NonNull; +import org.junit.Test; +import org.junit.runner.RunWith; /** - * Thrown when rule serialization fails. + * A test class that's just inherited by RavenwoodImplicitRuleShadowingTest. */ -public class RuleSerializeException extends Exception { - public RuleSerializeException(@NonNull String message) { - super(message); - } - - public RuleSerializeException(@NonNull String message, @NonNull Throwable cause) { - super(message, cause); +@RunWith(AndroidJUnit4.class) +public abstract class RavenwoodImplicitRuleShadowingTestBase { + @Test + public void testOkInBaseClass() { } } diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodNoRavenizerTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodNoRavenizerTest.java new file mode 100644 index 000000000000..77a807d5e1e5 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodNoRavenizerTest.java @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.platform.test.annotations.NoRavenizer; +import android.platform.test.annotations.RavenwoodTestRunnerInitializing; + +import org.junit.Test; + +/** + * Test for {@link android.platform.test.annotations.NoRavenizer} + */ +@NoRavenizer +public class RavenwoodNoRavenizerTest { + public static final String TAG = "RavenwoodNoRavenizerTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + /** + * With @NoRavenizer, this method shouldn't be called. + */ + @RavenwoodTestRunnerInitializing + public static void ravenwoodRunnerInitializing() { + sCallTracker.incrementMethodCallCount(); + } + + /** + * Make sure ravenwoodRunnerInitializing() wasn't called. + */ + @Test + public void testNotRavenized() { + sCallTracker.assertCalls( + "ravenwoodRunnerInitializing", 0 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsReallyDisabledTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsReallyDisabledTest.java new file mode 100644 index 000000000000..e6e617b401b6 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsReallyDisabledTest.java @@ -0,0 +1,88 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import static org.junit.Assert.fail; + +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.annotations.RavenwoodTestRunnerInitializing; +import android.platform.test.ravenwood.RavenwoodRule; +import android.util.Log; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.AfterClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Test for "RAVENWOOD_RUN_DISABLED_TESTS" with "REALLY_DISABLED" set. + * + * This test is only executed on Ravenwood. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodRunDisabledTestsReallyDisabledTest { + private static final String TAG = "RavenwoodRunDisabledTestsTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + @RavenwoodTestRunnerInitializing + public static void ravenwoodRunnerInitializing() { + RavenwoodRule.private$ravenwood().overrideRunDisabledTest(true, + "\\#testReallyDisabled$"); + } + + /** + * This test gets to run with RAVENWOOD_RUN_DISABLED_TESTS set. + */ + @Test + @DisabledOnRavenwood + public void testDisabledTestGetsToRun() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + sCallTracker.incrementMethodCallCount(); + + fail("This test won't pass on Ravenwood."); + } + + /** + * This will still not be executed due to the "really disabled" pattern. + */ + @Test + @DisabledOnRavenwood + public void testReallyDisabled() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + sCallTracker.incrementMethodCallCount(); + + fail("This test won't pass on Ravenwood."); + } + + @AfterClass + public static void afterClass() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "testDisabledTestGetsToRun", 1, + "testReallyDisabled", 0 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsTest.java new file mode 100644 index 000000000000..ef18c82b6d79 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunDisabledTestsTest.java @@ -0,0 +1,87 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import static org.junit.Assert.fail; + +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.annotations.RavenwoodTestRunnerInitializing; +import android.platform.test.ravenwood.RavenwoodRule; +import android.util.Log; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.AfterClass; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; +import org.junit.runner.RunWith; + +/** + * Test for "RAVENWOOD_RUN_DISABLED_TESTS". (with no "REALLY_DISABLED" set.) + * + * This test is only executed on Ravenwood. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodRunDisabledTestsTest { + private static final String TAG = "RavenwoodRunDisabledTestsTest"; + + @Rule + public ExpectedException mExpectedException = ExpectedException.none(); + + private static final CallTracker sCallTracker = new CallTracker(); + + @RavenwoodTestRunnerInitializing + public static void ravenwoodRunnerInitializing() { + RavenwoodRule.private$ravenwood().overrideRunDisabledTest(true, null); + } + + @Test + @DisabledOnRavenwood + public void testDisabledTestGetsToRun() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + sCallTracker.incrementMethodCallCount(); + + fail("This test won't pass on Ravenwood."); + } + + @Test + @DisabledOnRavenwood + public void testDisabledButPass() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + sCallTracker.incrementMethodCallCount(); + + // When a @DisabledOnRavenwood actually passed, the runner should make fail(). + mExpectedException.expectMessage("it actually passed under Ravenwood"); + } + + @AfterClass + public static void afterClass() { + if (!RavenwoodRule.isOnRavenwood()) { + return; + } + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "testDisabledTestGetsToRun", 1, + "testDisabledButPass", 1 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithAndroidXRunnerTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithAndroidXRunnerTest.java new file mode 100644 index 000000000000..c042eb010558 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithAndroidXRunnerTest.java @@ -0,0 +1,75 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.util.Log; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Make sure ravenwood's test runner works with {@link AndroidJUnit4}. + */ +@RunWith(AndroidJUnit4.class) +public class RavenwoodRunnerWithAndroidXRunnerTest { + public static final String TAG = "RavenwoodRunnerWithAndroidXRunnerTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + @BeforeClass + public static void beforeClass() { + sCallTracker.incrementMethodCallCount(); + } + + @Before + public void beforeTest() { + sCallTracker.incrementMethodCallCount(); + } + + @After + public void afterTest() { + sCallTracker.incrementMethodCallCount(); + } + + @Test + public void test1() { + sCallTracker.incrementMethodCallCount(); + } + + @Test + public void test2() { + sCallTracker.incrementMethodCallCount(); + } + + @AfterClass + public static void afterClass() { + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "beforeClass", 1, + "beforeTest", 2, + "afterTest", 2, + "test1", 1, + "test2", 1 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithJUnitParamsRunnerTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithJUnitParamsRunnerTest.java new file mode 100644 index 000000000000..2feb5ba9aa01 --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithJUnitParamsRunnerTest.java @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.util.Log; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; + +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Make sure ravenwood's test runner works with {@link AndroidJUnit4}. + */ +@RunWith(JUnitParamsRunner.class) +public class RavenwoodRunnerWithJUnitParamsRunnerTest { + public static final String TAG = "RavenwoodRunnerTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + @BeforeClass + public static void beforeClass() { + sCallTracker.incrementMethodCallCount(); + } + + @Before + public void beforeTest() { + sCallTracker.incrementMethodCallCount(); + } + + @After + public void afterTest() { + sCallTracker.incrementMethodCallCount(); + } + + @Test + public void testWithNoParams() { + sCallTracker.incrementMethodCallCount(); + } + + @Test + @Parameters({"foo", "bar"}) + public void testWithParams(String arg) { + sCallTracker.incrementMethodCallCount(); + } + + @AfterClass + public static void afterClass() { + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "beforeClass", 1, + "beforeTest", 3, + "afterTest", 3, + "testWithNoParams", 1, + "testWithParams", 2 + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithParameterizedAndroidJunit4Test.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithParameterizedAndroidJunit4Test.java new file mode 100644 index 000000000000..7e3bc0fccd7f --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodRunnerWithParameterizedAndroidJunit4Test.java @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.util.Log; + +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; + +import platform.test.runner.parameterized.ParameterizedAndroidJunit4; +import platform.test.runner.parameterized.Parameters; + +import java.util.ArrayList; +import java.util.List; + +/** + * Make sure ravenwood's test runner works with {@link ParameterizedAndroidJunit4}. + */ +@RunWith(ParameterizedAndroidJunit4.class) +public class RavenwoodRunnerWithParameterizedAndroidJunit4Test { + public static final String TAG = "RavenwoodRunnerTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + private final String mParam; + + private static int sNumInsantiation = 0; + + public RavenwoodRunnerWithParameterizedAndroidJunit4Test(String param) { + mParam = param; + sNumInsantiation++; + } + + @BeforeClass + public static void beforeClass() { + // It seems like ParameterizedAndroidJunit4 calls the @BeforeTest / @AfterTest methods + // one time too many. + // With two parameters, this method should be called only twice, but it's actually + // called three times. + // So let's not check the number fo beforeClass calls. + } + + @Before + public void beforeTest() { + sCallTracker.incrementMethodCallCount(); + } + + @After + public void afterTest() { + sCallTracker.incrementMethodCallCount(); + } + + @Parameters + public static List<String> getParams() { + var params = new ArrayList<String>(); + params.add("foo"); + params.add("bar"); + return params; + } + + @Test + public void testWithParams() { + sCallTracker.incrementMethodCallCount(); + } + + @AfterClass + public static void afterClass() { + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "beforeTest", sNumInsantiation, + "afterTest", sNumInsantiation, + "testWithParams", sNumInsantiation + ); + } +} diff --git a/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodSuiteTest.java b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodSuiteTest.java new file mode 100644 index 000000000000..7e396c2080eb --- /dev/null +++ b/ravenwood/tests/bivalenttest/test/com/android/ravenwoodtest/bivalenttest/ravenizer/RavenwoodSuiteTest.java @@ -0,0 +1,69 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.bivalenttest.ravenizer; + +import android.util.Log; + +import org.junit.AfterClass; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; + +/** + * Test to make sure {@link Suite} works with the ravenwood test runner. + */ +@RunWith(Suite.class) +@Suite.SuiteClasses({ + RavenwoodSuiteTest.Test1.class, + RavenwoodSuiteTest.Test2.class +}) +public class RavenwoodSuiteTest { + public static final String TAG = "RavenwoodSuiteTest"; + + private static final CallTracker sCallTracker = new CallTracker(); + + @AfterClass + public static void afterClass() { + Log.i(TAG, "afterClass called"); + + sCallTracker.assertCallsOrDie( + "test1", 1, + "test2", 1 + ); + } + + /** + * Workaround for the issue where tradefed won't think a class is a test class + * if it has a @RunWith but no @Test methods, even if it is a Suite. + */ + @Test + public void testEmpty() { + } + + public static class Test1 { + @Test + public void test1() { + sCallTracker.incrementMethodCallCount(); + } + } + + public static class Test2 { + @Test + public void test2() { + sCallTracker.incrementMethodCallCount(); + } + } +} diff --git a/ravenwood/tests/coretest/Android.bp b/ravenwood/tests/coretest/Android.bp new file mode 100644 index 000000000000..9dd7cc683719 --- /dev/null +++ b/ravenwood/tests/coretest/Android.bp @@ -0,0 +1,35 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_ravenwood_test { + name: "RavenwoodCoreTest", + + static_libs: [ + "androidx.annotation_annotation", + "androidx.test.ext.junit", + "androidx.test.rules", + "junit-params", + "platform-parametric-runner-lib", + + // This library should be removed by Ravenizer + "mockito-target-minus-junit4", + ], + libs: [ + // We access internal private classes + "ravenwood-junit-impl", + ], + srcs: [ + "test/**/*.java", + "test/**/*.kt", + ], + ravenizer: { + strip_mockito: true, + }, + auto_gen_config: true, +} diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMockitoTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMockitoTest.java new file mode 100644 index 000000000000..31884b6bfc57 --- /dev/null +++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMockitoTest.java @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.coretest; + +import static org.junit.Assert.assertThrows; +import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.mock; + +import org.junit.Test; + +public class RavenwoodMockitoTest { + + private static class MockClass { + void foo() { + throw new RuntimeException("Unsupported!!"); + } + } + + @Test + public void checkMockitoClasses() { + // DexMaker should not exist + assertThrows( + ClassNotFoundException.class, + () -> Class.forName("com.android.dx.DexMaker")); + // Mockito 2 should not exist + assertThrows( + ClassNotFoundException.class, + () -> Class.forName("org.mockito.Matchers")); + } + + @Test + public void checkMockitoActuallyWorks() { + var mock = mock(MockClass.class); + doNothing().when(mock).foo(); + mock.foo(); + } +} diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodStatsDTest.kt b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodStatsDTest.kt new file mode 100644 index 000000000000..d5f5e297b396 --- /dev/null +++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodStatsDTest.kt @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.coretest + +import com.android.internal.util.FrameworkStatsLog +import org.junit.Test + +class RavenwoodStatsDTest { + @Test + fun testFrameworkStatsLog() { + FrameworkStatsLog.write(FrameworkStatsLog.PHONE_SIGNAL_STRENGTH_CHANGED, 123) + } +}
\ No newline at end of file diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerCallbackTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerCallbackTest.java new file mode 100644 index 000000000000..6720e45939fb --- /dev/null +++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerCallbackTest.java @@ -0,0 +1,458 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runnercallbacktests; + +import static org.junit.Assume.assumeTrue; + +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.annotations.NoRavenizer; +import android.platform.test.ravenwood.RavenwoodAwareTestRunner; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.Assume; +import org.junit.BeforeClass; +import org.junit.ClassRule; +import org.junit.Test; +import org.junit.rules.TestRule; +import org.junit.runner.Description; +import org.junit.runner.RunWith; +import org.junit.runners.BlockJUnit4ClassRunner; +import org.junit.runners.model.InitializationError; +import org.junit.runners.model.Statement; + +import java.util.ArrayList; +import java.util.List; + +import platform.test.runner.parameterized.ParameterizedAndroidJunit4; +import platform.test.runner.parameterized.Parameters; + + +/** + * Tests to make sure {@link RavenwoodAwareTestRunner} produces expected callbacks in various + * error situations in places such as @BeforeClass / @AfterClass / Constructors, which are + * out of test method bodies. + */ +@NoRavenizer // This class shouldn't be executed with RavenwoodAwareTestRunner. +public class RavenwoodRunnerCallbackTest extends RavenwoodRunnerTestBase { + + /** + * Throws an exception in @AfterClass. This should produce a critical error. + */ + @RunWith(BlockJUnit4ClassRunner.class) + // CHECKSTYLE:OFF Generated code + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest + testStarted: test1(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest) + testFinished: test1(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest) + testStarted: test2(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest) + testFinished: test2(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$AfterClassFailureTest + criticalError: Failures detected in @AfterClass, which would be swallowed by tradefed: FAILURE + testSuiteFinished: classes + testRunFinished: 2,0,0,0 + """) + // CHECKSTYLE:ON + public static class AfterClassFailureTest { + public AfterClassFailureTest() { + } + + @AfterClass + public static void afterClass() { + throw new RuntimeException("FAILURE"); + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + + } + + /** + * Assumption failure in @BeforeClass. + */ + @RunWith(ParameterizedAndroidJunit4.class) + // Because the test uses ParameterizedAndroidJunit4 with two parameters, + // the whole class is executed twice. + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest + testSuiteStarted: [0] + testStarted: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testStarted: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testSuiteFinished: [0] + testSuiteStarted: [1] + testStarted: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testStarted: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassAssumptionFailureTest) + testSuiteFinished: [1] + testSuiteFinished: classes + testRunFinished: 4,0,4,0 + """) + // CHECKSTYLE:ON + public static class BeforeClassAssumptionFailureTest { + public BeforeClassAssumptionFailureTest(String param) { + } + + @BeforeClass + public static void beforeClass() { + Assume.assumeTrue(false); + } + + @Parameters + public static List<String> getParams() { + var params = new ArrayList<String>(); + params.add("foo"); + params.add("bar"); + return params; + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * General exception in @BeforeClass. + */ + @RunWith(ParameterizedAndroidJunit4.class) + // Because the test uses ParameterizedAndroidJunit4 with two parameters, + // the whole class is executed twice. + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest + testSuiteStarted: [0] + testStarted: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testFailure: FAILURE + testFinished: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testStarted: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testFailure: FAILURE + testFinished: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testSuiteFinished: [0] + testSuiteStarted: [1] + testStarted: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testFailure: FAILURE + testFinished: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testStarted: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testFailure: FAILURE + testFinished: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BeforeClassExceptionTest) + testSuiteFinished: [1] + testSuiteFinished: classes + testRunFinished: 4,4,0,0 + """) + // CHECKSTYLE:ON + public static class BeforeClassExceptionTest { + public BeforeClassExceptionTest(String param) { + } + + @BeforeClass + public static void beforeClass() { + throw new RuntimeException("FAILURE"); + } + + @Parameters + public static List<String> getParams() { + var params = new ArrayList<String>(); + params.add("foo"); + params.add("bar"); + return params; + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * Assumption failure from a @ClassRule. + */ + @RunWith(ParameterizedAndroidJunit4.class) + // Because the test uses ParameterizedAndroidJunit4 with two parameters, + // the whole class is executed twice. + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest + testSuiteStarted: [0] + testStarted: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testStarted: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testSuiteFinished: [0] + testSuiteStarted: [1] + testStarted: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testStarted: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleAssumptionFailureTest) + testSuiteFinished: [1] + testSuiteFinished: classes + testRunFinished: 4,0,4,0 + """) + // CHECKSTYLE:ON + public static class ClassRuleAssumptionFailureTest { + @ClassRule + public static final TestRule sClassRule = new TestRule() { + @Override + public Statement apply(Statement base, Description description) { + assumeTrue(false); + return null; // unreachable + } + }; + + public ClassRuleAssumptionFailureTest(String param) { + } + + @Parameters + public static List<String> getParams() { + var params = new ArrayList<String>(); + params.add("foo"); + params.add("bar"); + return params; + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * General exception from a @ClassRule. + */ + @RunWith(ParameterizedAndroidJunit4.class) + // Because the test uses ParameterizedAndroidJunit4 with two parameters, + // the whole class is executed twice. + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest + testSuiteStarted: [0] + testStarted: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testStarted: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[0](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testSuiteFinished: [0] + testSuiteStarted: [1] + testStarted: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test1[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testStarted: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testAssumptionFailure: got: <false>, expected: is <true> + testFinished: test2[1](com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassRuleExceptionTest) + testSuiteFinished: [1] + testSuiteFinished: classes + testRunFinished: 4,0,4,0 + """) + // CHECKSTYLE:ON + public static class ClassRuleExceptionTest { + @ClassRule + public static final TestRule sClassRule = new TestRule() { + @Override + public Statement apply(Statement base, Description description) { + assumeTrue(false); + return null; // unreachable + } + }; + + public ClassRuleExceptionTest(String param) { + } + + @Parameters + public static List<String> getParams() { + var params = new ArrayList<String>(); + params.add("foo"); + params.add("bar"); + return params; + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * General exception from a @ClassRule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ExceptionFromInnerRunnerConstructorTest) + testFailure: Failed to instantiate class androidx.test.ext.junit.runners.AndroidJUnit4 + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ExceptionFromInnerRunnerConstructorTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class ExceptionFromInnerRunnerConstructorTest { + public ExceptionFromInnerRunnerConstructorTest(String arg1, String arg2) { + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * The test class is unloadable, but has a @DisabledOnRavenwood. + */ + @RunWith(AndroidJUnit4.class) + @DisabledOnRavenwood + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: ClassUnloadbleAndDisabledTest(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndDisabledTest) + testIgnored: ClassUnloadbleAndDisabledTest(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndDisabledTest) + testSuiteFinished: ClassUnloadbleAndDisabledTest(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndDisabledTest) + testSuiteFinished: classes + testRunFinished: 0,0,0,1 + """) + // CHECKSTYLE:ON + public static class ClassUnloadbleAndDisabledTest { + static { + Assert.fail("Class unloadable!"); + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + /** + * The test class is unloadable, but has a @DisabledOnRavenwood. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest + testStarted: test1(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest) + testFailure: Class unloadable! + testFinished: test1(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest) + testStarted: test2(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest) + testFailure: Class unloadable! + testFinished: test2(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$ClassUnloadbleAndEnabledTest) + testSuiteFinished: classes + testRunFinished: 2,2,0,0 + """) + // CHECKSTYLE:ON + public static class ClassUnloadbleAndEnabledTest { + static { + Assert.fail("Class unloadable!"); + } + + @Test + public void test1() { + } + + @Test + public void test2() { + } + } + + public static class BrokenTestRunner extends BlockJUnit4ClassRunner { + public BrokenTestRunner(Class<?> testClass) throws InitializationError { + super(testClass); + + if (true) { + throw new RuntimeException("This is a broken test runner!"); + } + } + } + + /** + * The test runner throws an exception from the ctor. + */ + @RunWith(BrokenTestRunner.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BrokenRunnerTest) + testFailure: Failed to instantiate class com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BrokenTestRunner + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerCallbackTest$BrokenRunnerTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class BrokenRunnerTest { + @Test + public void test1() { + } + + @Test + public void test2() { + } + } +} diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerConfigValidationTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerConfigValidationTest.java new file mode 100644 index 000000000000..02d10732245d --- /dev/null +++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerConfigValidationTest.java @@ -0,0 +1,475 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runnercallbacktests; + +import static com.google.common.truth.Truth.assertThat; + +import android.platform.test.annotations.NoRavenizer; +import android.platform.test.ravenwood.RavenwoodConfig; +import android.platform.test.ravenwood.RavenwoodRule; + +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TestRule; +import org.junit.runner.RunWith; + + +/** + * Test for @Config field extraction and validation. + */ +@NoRavenizer // This class shouldn't be executed with RavenwoodAwareTestRunner. +public class RavenwoodRunnerConfigValidationTest extends RavenwoodRunnerTestBase { + public abstract static class ConfigInBaseClass { + static String PACKAGE_NAME = "com.ConfigInBaseClass"; + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = new RavenwoodConfig.Builder() + .setPackageName(PACKAGE_NAME).build(); + } + + /** + * Make sure a config in the base class is detected. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigInBaseClassTest + testStarted: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigInBaseClassTest) + testFinished: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigInBaseClassTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigInBaseClassTest + testSuiteFinished: classes + testRunFinished: 1,0,0,0 + """) + // CHECKSTYLE:ON + public static class ConfigInBaseClassTest extends ConfigInBaseClass { + @Test + public void test() { + assertThat(InstrumentationRegistry.getInstrumentation().getContext().getPackageName()) + .isEqualTo(PACKAGE_NAME); + } + } + + /** + * Make sure a config in the base class is detected. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigOverridingTest + testStarted: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigOverridingTest) + testFinished: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigOverridingTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigOverridingTest + testSuiteFinished: classes + testRunFinished: 1,0,0,0 + """) + // CHECKSTYLE:ON + public static class ConfigOverridingTest extends ConfigInBaseClass { + static String PACKAGE_NAME_OVERRIDE = "com.ConfigOverridingTest"; + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = new RavenwoodConfig.Builder() + .setPackageName(PACKAGE_NAME_OVERRIDE).build(); + + @Test + public void test() { + assertThat(InstrumentationRegistry.getInstrumentation().getContext().getPackageName()) + .isEqualTo(PACKAGE_NAME_OVERRIDE); + } + } + + /** + * Test to make sure that if a test has a config error, the failure would be reported from + * each test method. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ErrorMustBeReportedFromEachTest) + testFailure: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ErrorMustBeReportedFromEachTest.sConfig expected to be public static + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ErrorMustBeReportedFromEachTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class ErrorMustBeReportedFromEachTest { + @RavenwoodConfig.Config + private static RavenwoodConfig sConfig = // Invalid because it's private. + new RavenwoodConfig.Builder().build(); + + @Test + public void testMethod1() { + } + + @Test + public void testMethod2() { + } + + @Test + public void testMethod3() { + } + } + + /** + * Invalid because there are two @Config's. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateConfigTest) + testFailure: Class com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest.DuplicateConfigTest has multiple fields with @RavenwoodConfig.Config + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateConfigTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class DuplicateConfigTest { + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig1 = + new RavenwoodConfig.Builder().build(); + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig2 = + new RavenwoodConfig.Builder().build(); + + @Test + public void testConfig() { + } + } + + /** + * @Config's must be static. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonStaticConfigTest) + testFailure: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonStaticConfigTest.sConfig expected to be public static + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonStaticConfigTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class NonStaticConfigTest { + + @RavenwoodConfig.Config + public RavenwoodConfig sConfig = + new RavenwoodConfig.Builder().build(); + + @Test + public void testConfig() { + } + } + + /** + * @Config's must be public. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonPublicConfigTest) + testFailure: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonPublicConfigTest.sConfig expected to be public static + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$NonPublicConfigTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class NonPublicConfigTest { + + @RavenwoodConfig.Config + RavenwoodConfig sConfig = + new RavenwoodConfig.Builder().build(); + + @Test + public void testConfig() { + } + } + + /** + * @Config's must be of type RavenwoodConfig. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeConfigTest) + testFailure: Field com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest.WrongTypeConfigTest.sConfig has @RavenwoodConfig.Config but type is not RavenwoodConfig + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeConfigTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class WrongTypeConfigTest { + + @RavenwoodConfig.Config + public static Object sConfig = + new RavenwoodConfig.Builder().build(); + + @Test + public void testConfig() { + } + + } + + /** + * @Rule must be of type RavenwoodRule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeRuleTest + testStarted: testConfig(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeRuleTest) + testFailure: If you have a RavenwoodRule in your test, make sure the field type is RavenwoodRule so Ravenwood can detect it. + testFinished: testConfig(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeRuleTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WrongTypeRuleTest + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class WrongTypeRuleTest { + + @Rule + public TestRule mRule = new RavenwoodRule.Builder().build(); + + @Test + public void testConfig() { + } + + } + + /** + * Config can't be used with a (instance) Rule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WithInstanceRuleTest) + testFailure: RavenwoodConfig and RavenwoodRule cannot be used in the same class. Suggest migrating to RavenwoodConfig. + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WithInstanceRuleTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class WithInstanceRuleTest { + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = + new RavenwoodConfig.Builder().build(); + + @Rule + public RavenwoodRule mRule = new RavenwoodRule.Builder().build(); + + @Test + public void testConfig() { + } + } + + /** + * Config can't be used with a (static) Rule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WithStaticRuleTest) + testFailure: Failed to instantiate class androidx.test.ext.junit.runners.AndroidJUnit4 + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$WithStaticRuleTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class WithStaticRuleTest { + + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = + new RavenwoodConfig.Builder().build(); + + @Rule + public static RavenwoodRule sRule = new RavenwoodRule.Builder().build(); + + @Test + public void testConfig() { + } + } + + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateRulesTest + testStarted: testMultipleRulesNotAllowed(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateRulesTest) + testFailure: Multiple nesting RavenwoodRule's are detected in the same class, which is not supported. + testFinished: testMultipleRulesNotAllowed(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateRulesTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$DuplicateRulesTest + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class DuplicateRulesTest { + + @Rule + public final RavenwoodRule mRavenwood1 = new RavenwoodRule(); + + @Rule + public final RavenwoodRule mRavenwood2 = new RavenwoodRule(); + + @Test + public void testMultipleRulesNotAllowed() { + } + } + + public static class RuleInBaseClass { + static String PACKAGE_NAME = "com.RuleInBaseClass"; + @Rule + public final RavenwoodRule mRavenwood1 = new RavenwoodRule.Builder() + .setPackageName(PACKAGE_NAME).build(); + } + + /** + * Make sure that RavenwoodRule in a base class takes effect. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleInBaseClassSuccessTest + testStarted: testRuleInBaseClass(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleInBaseClassSuccessTest) + testFinished: testRuleInBaseClass(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleInBaseClassSuccessTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleInBaseClassSuccessTest + testSuiteFinished: classes + testRunFinished: 1,0,0,0 + """) + // CHECKSTYLE:ON + public static class RuleInBaseClassSuccessTest extends RuleInBaseClass { + + @Test + public void testRuleInBaseClass() { + assertThat(InstrumentationRegistry.getInstrumentation().getContext().getPackageName()) + .isEqualTo(PACKAGE_NAME); + } + } + + /** + * Make sure that having a config and a rule in a base class should fail. + * RavenwoodRule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testStarted: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleInBaseClassTest) + testFailure: RavenwoodConfig and RavenwoodRule cannot be used in the same class. Suggest migrating to RavenwoodConfig. + testFinished: initializationError(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleInBaseClassTest) + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class ConfigWithRuleInBaseClassTest extends RuleInBaseClass { + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = new RavenwoodConfig.Builder().build(); + + @Test + public void test() { + } + } + + /** + * Same as {@link RuleInBaseClass}, but the type of the rule field is not {@link RavenwoodRule}. + */ + public abstract static class RuleWithDifferentTypeInBaseClass { + static String PACKAGE_NAME = "com.RuleWithDifferentTypeInBaseClass"; + @Rule + public final TestRule mRavenwood1 = new RavenwoodRule.Builder() + .setPackageName(PACKAGE_NAME).build(); + } + + /** + * Make sure that RavenwoodRule in a base class takes effect, even if the field type is not + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleWithDifferentTypeInBaseClassSuccessTest + testStarted: testRuleInBaseClass(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleWithDifferentTypeInBaseClassSuccessTest) + testFailure: If you have a RavenwoodRule in your test, make sure the field type is RavenwoodRule so Ravenwood can detect it. + testFinished: testRuleInBaseClass(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleWithDifferentTypeInBaseClassSuccessTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$RuleWithDifferentTypeInBaseClassSuccessTest + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class RuleWithDifferentTypeInBaseClassSuccessTest extends RuleWithDifferentTypeInBaseClass { + + @Test + public void testRuleInBaseClass() { + assertThat(InstrumentationRegistry.getInstrumentation().getContext().getPackageName()) + .isEqualTo(PACKAGE_NAME); + } + } + + /** + * Make sure that having a config and a rule in a base class should fail, even if the field type is not + * RavenwoodRule. + */ + @RunWith(AndroidJUnit4.class) + // CHECKSTYLE:OFF + @Expected(""" + testRunStarted: classes + testSuiteStarted: classes + testSuiteStarted: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleWithDifferentTypeInBaseClassTest + testStarted: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleWithDifferentTypeInBaseClassTest) + testFailure: If you have a RavenwoodRule in your test, make sure the field type is RavenwoodRule so Ravenwood can detect it. + testFinished: test(com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleWithDifferentTypeInBaseClassTest) + testSuiteFinished: com.android.ravenwoodtest.runnercallbacktests.RavenwoodRunnerConfigValidationTest$ConfigWithRuleWithDifferentTypeInBaseClassTest + testSuiteFinished: classes + testRunFinished: 1,1,0,0 + """) + // CHECKSTYLE:ON + public static class ConfigWithRuleWithDifferentTypeInBaseClassTest extends RuleWithDifferentTypeInBaseClass { + @RavenwoodConfig.Config + public static RavenwoodConfig sConfig = new RavenwoodConfig.Builder().build(); + + @Test + public void test() { + } + } +} diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerTestBase.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerTestBase.java new file mode 100644 index 000000000000..f7a2198a9bc4 --- /dev/null +++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/runnercallbacktests/RavenwoodRunnerTestBase.java @@ -0,0 +1,220 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runnercallbacktests; + +import static com.google.common.truth.Truth.assertThat; +import static com.google.common.truth.Truth.assertWithMessage; + +import android.platform.test.annotations.NoRavenizer; +import android.platform.test.ravenwood.RavenwoodAwareTestRunner; +import android.platform.test.ravenwood.RavenwoodConfigPrivate; +import android.util.Log; + +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; +import org.junit.Test; +import org.junit.runner.Description; +import org.junit.runner.JUnitCore; +import org.junit.runner.Result; +import org.junit.runner.RunWith; +import org.junit.runner.notification.Failure; +import org.junit.runner.notification.RunListener; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.function.BiConsumer; + + +/** + * Base class for tests to make sure {@link RavenwoodAwareTestRunner} produces expected callbacks + * in various situations. (most of them are error situations.) + * + * Subclasses must contain test classes as static inner classes with an {@link Expected} annotation. + * This class finds them using reflections and run them one by one directly using {@link JUnitCore}, + * and check the callbacks. + * + * Subclasses do no need to have any test methods. + * + * The {@link Expected} annotation must contain the expected result as a string. + * + * This test abuses the fact that atest + tradefed + junit won't run nested classes automatically. + * (So atest won't show any results directly from the nested classes.) + * + * The actual test method is {@link #doTest}, which is executed for each target test class, using + * junit-params. + */ +@RunWith(JUnitParamsRunner.class) +@NoRavenizer // This class shouldn't be executed with RavenwoodAwareTestRunner. +public abstract class RavenwoodRunnerTestBase { + private static final String TAG = "RavenwoodRunnerTestBase"; + + /** + * Annotation to specify the expected result for a class. + */ + @Target({ElementType.TYPE}) + @Retention(RetentionPolicy.RUNTIME) + public @interface Expected { + String value(); + } + + /** + * Take a multiline string, strip all of them, remove empty lines, and return it. + */ + private static String stripMultiLines(String resultString) { + var list = new ArrayList<String>(); + for (var line : resultString.split("\n")) { + var s = line.strip(); + if (s.length() > 0) { + list.add(s); + } + } + return String.join("\n", list); + } + + /** + * Extract the expected result from @Expected. + */ + private String getExpectedResult(Class<?> testClazz) { + var expect = testClazz.getAnnotation(Expected.class); + return stripMultiLines(expect.value()); + } + + /** + * List all the nested classrs with an {@link Expected} annotation in a given class. + */ + public Class<?>[] getTestClasses() { + var thisClass = this.getClass(); + var ret = Arrays.stream(thisClass.getNestMembers()) + .filter((c) -> c.getAnnotation(Expected.class) != null) + .toArray(Class[]::new); + + assertThat(ret.length).isGreaterThan(0); + + return ret; + } + + /** + * This is the actual test method. We use junit-params to run this method for each target + * test class, which are returned by {@link #getTestClasses}. + * + * It runs each test class, and compare the result collected with + * {@link ResultCollectingListener} to expected results (as strings). + */ + @Test + @Parameters(method = "getTestClasses") + public void doTest(Class<?> testClazz) { + doTest(testClazz, getExpectedResult(testClazz)); + } + + /** + * Run a given test class, and compare the result collected with + * {@link ResultCollectingListener} to expected results (as a string). + */ + private void doTest(Class<?> testClazz, String expectedResult) { + Log.i(TAG, "Running test for " + testClazz); + var junitCore = new JUnitCore(); + + // Create a listener. + var listener = new ResultCollectingListener(); + junitCore.addListener(listener); + + // Set a listener to critical errors. This will also prevent + // {@link RavenwoodAwareTestRunner} from calling System.exit() when there's + // a critical error. + RavenwoodConfigPrivate.setCriticalErrorHandler(listener.sCriticalErrorListener); + + try { + // Run the test class. + junitCore.run(testClazz); + } finally { + // Clear the critical error listener. + RavenwoodConfigPrivate.setCriticalErrorHandler(null); + } + + // Check the result. + assertWithMessage("Failure in test class: " + testClazz.getCanonicalName() + "]") + .that(listener.getResult()) + .isEqualTo(expectedResult); + } + + /** + * A JUnit RunListener that collects all the callbacks as a single string. + */ + private static class ResultCollectingListener extends RunListener { + private final ArrayList<String> mResult = new ArrayList<>(); + + public final BiConsumer<String, Throwable> sCriticalErrorListener = (message, th) -> { + mResult.add("criticalError: " + message + ": " + th.getMessage()); + }; + + @Override + public void testRunStarted(Description description) throws Exception { + mResult.add("testRunStarted: " + description); + } + + @Override + public void testRunFinished(Result result) throws Exception { + mResult.add("testRunFinished: " + + result.getRunCount() + "," + + result.getFailureCount() + "," + + result.getAssumptionFailureCount() + "," + + result.getIgnoreCount()); + } + + @Override + public void testSuiteStarted(Description description) throws Exception { + mResult.add("testSuiteStarted: " + description); + } + + @Override + public void testSuiteFinished(Description description) throws Exception { + mResult.add("testSuiteFinished: " + description); + } + + @Override + public void testStarted(Description description) throws Exception { + mResult.add("testStarted: " + description); + } + + @Override + public void testFinished(Description description) throws Exception { + mResult.add("testFinished: " + description); + } + + @Override + public void testFailure(Failure failure) throws Exception { + mResult.add("testFailure: " + failure.getException().getMessage()); + } + + @Override + public void testAssumptionFailure(Failure failure) { + mResult.add("testAssumptionFailure: " + failure.getException().getMessage()); + } + + @Override + public void testIgnored(Description description) throws Exception { + mResult.add("testIgnored: " + description); + } + + public String getResult() { + return String.join("\n", mResult); + } + } +} diff --git a/ravenwood/minimum-test/Android.bp b/ravenwood/tests/minimum-test/Android.bp index e4ed3d5b0b73..e4ed3d5b0b73 100644 --- a/ravenwood/minimum-test/Android.bp +++ b/ravenwood/tests/minimum-test/Android.bp diff --git a/ravenwood/minimum-test/README.md b/ravenwood/tests/minimum-test/README.md index 6b0abe968053..6b0abe968053 100644 --- a/ravenwood/minimum-test/README.md +++ b/ravenwood/tests/minimum-test/README.md diff --git a/ravenwood/minimum-test/test/com/android/ravenwood/RavenwoodMinimumTest.java b/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java index b4771171815a..30abaa2e7d38 100644 --- a/ravenwood/minimum-test/test/com/android/ravenwood/RavenwoodMinimumTest.java +++ b/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.ravenwood; +package com.android.ravenwoodtest; import android.platform.test.annotations.IgnoreUnderRavenwood; import android.platform.test.ravenwood.RavenwoodRule; diff --git a/ravenwood/mockito/Android.bp b/ravenwood/tests/mockito/Android.bp index 95c7394b19f3..d91537bbc334 100644 --- a/ravenwood/mockito/Android.bp +++ b/ravenwood/tests/mockito/Android.bp @@ -21,9 +21,9 @@ android_ravenwood_test { "truth", ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], auto_gen_config: true, } @@ -48,9 +48,9 @@ android_test { "mockito-target-extended-minus-junit4", ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ // Required by mockito diff --git a/ravenwood/mockito/AndroidManifest.xml b/ravenwood/tests/mockito/AndroidManifest.xml index 15f0a2934b5f..15f0a2934b5f 100644 --- a/ravenwood/mockito/AndroidManifest.xml +++ b/ravenwood/tests/mockito/AndroidManifest.xml diff --git a/ravenwood/mockito/AndroidTest.xml b/ravenwood/tests/mockito/AndroidTest.xml index 5ba9b1ff2cd8..5ba9b1ff2cd8 100644 --- a/ravenwood/mockito/AndroidTest.xml +++ b/ravenwood/tests/mockito/AndroidTest.xml diff --git a/ravenwood/mockito/README.md b/ravenwood/tests/mockito/README.md index 4ceb795fe14a..4ceb795fe14a 100644 --- a/ravenwood/mockito/README.md +++ b/ravenwood/tests/mockito/README.md diff --git a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoDeviceOnlyTest.java b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoDeviceOnlyTest.java index d566977bd15c..d566977bd15c 100644 --- a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoDeviceOnlyTest.java +++ b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoDeviceOnlyTest.java diff --git a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoRavenwoodOnlyTest.java b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoRavenwoodOnlyTest.java index aa2b7611da37..aa2b7611da37 100644 --- a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoRavenwoodOnlyTest.java +++ b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoRavenwoodOnlyTest.java diff --git a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoTest.java b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoTest.java index fcc6c9cc447d..fcc6c9cc447d 100644 --- a/ravenwood/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoTest.java +++ b/ravenwood/tests/mockito/test/com/android/ravenwoodtest/mockito/RavenwoodMockitoTest.java diff --git a/ravenwood/coretest/Android.bp b/ravenwood/tests/resapk_test/Android.bp index a78c5c1e8227..c14576550f78 100644 --- a/ravenwood/coretest/Android.bp +++ b/ravenwood/tests/resapk_test/Android.bp @@ -8,8 +8,15 @@ package { } android_ravenwood_test { - name: "RavenwoodCoreTest", + name: "RavenwoodResApkTest", + resource_apk: "RavenwoodResApkTest-apk", + + libs: [ + // Normally, tests shouldn't directly access it, but we need to access RavenwoodCommonUtils + // in this test. + "ravenwood-runtime-common-ravenwood", + ], static_libs: [ "androidx.annotation_annotation", "androidx.test.ext.junit", diff --git a/ravenwood/tests/resapk_test/apk/Android.bp b/ravenwood/tests/resapk_test/apk/Android.bp new file mode 100644 index 000000000000..10ed5e2f8410 --- /dev/null +++ b/ravenwood/tests/resapk_test/apk/Android.bp @@ -0,0 +1,14 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_app { + name: "RavenwoodResApkTest-apk", + + sdk_version: "current", +} diff --git a/ravenwood/tests/resapk_test/apk/AndroidManifest.xml b/ravenwood/tests/resapk_test/apk/AndroidManifest.xml new file mode 100644 index 000000000000..f34d8b2f4e81 --- /dev/null +++ b/ravenwood/tests/resapk_test/apk/AndroidManifest.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.ravenwood.restest_apk"> +</manifest> diff --git a/ravenwood/tests/resapk_test/apk/res/values/strings.xml b/ravenwood/tests/resapk_test/apk/res/values/strings.xml new file mode 100644 index 000000000000..23d4c0f21007 --- /dev/null +++ b/ravenwood/tests/resapk_test/apk/res/values/strings.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> +<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <!-- Test string 1 --> + <string name="test_string_1" translatable="false" >Test String 1</string> +</resources> diff --git a/ravenwood/tests/resapk_test/test/com/android/ravenwoodtest/resapk_test/RavenwoodResApkTest.java b/ravenwood/tests/resapk_test/test/com/android/ravenwoodtest/resapk_test/RavenwoodResApkTest.java new file mode 100644 index 000000000000..e547114bbe40 --- /dev/null +++ b/ravenwood/tests/resapk_test/test/com/android/ravenwoodtest/resapk_test/RavenwoodResApkTest.java @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.resapk_test; + + +import static junit.framework.TestCase.assertTrue; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import com.android.ravenwood.common.RavenwoodCommonUtils; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.io.File; + +@RunWith(AndroidJUnit4.class) +public class RavenwoodResApkTest { + /** + * Ensure the file "ravenwood-res.apk" exists. + * TODO Check the content of it, once Ravenwood supports resources. The file should + * be a copy of RavenwoodResApkTest-apk.apk + */ + @Test + public void testResApkExists() { + var file = "ravenwood-res-apks/ravenwood-res.apk"; + + assertTrue(new File(file).exists()); + } + + @Test + public void testFrameworkResExists() { + var file = "ravenwood-data/framework-res.apk"; + + assertTrue(new File( + RavenwoodCommonUtils.getRavenwoodRuntimePath() + "/" + file).exists()); + } +} diff --git a/ravenwood/runtime-test/Android.bp b/ravenwood/tests/runtime-test/Android.bp index 410292001670..0c0df1f993aa 100644 --- a/ravenwood/runtime-test/Android.bp +++ b/ravenwood/tests/runtime-test/Android.bp @@ -10,6 +10,9 @@ package { android_ravenwood_test { name: "RavenwoodRuntimeTest", + libs: [ + "ravenwood-helper-runtime", + ], static_libs: [ "androidx.annotation_annotation", "androidx.test.ext.junit", diff --git a/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/IdentityTest.java b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/IdentityTest.java new file mode 100644 index 000000000000..8e04b698c9d9 --- /dev/null +++ b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/IdentityTest.java @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runtimetest; + +import static android.os.Build.VERSION_CODES.UPSIDE_DOWN_CAKE; +import static android.os.Process.FIRST_APPLICATION_UID; + +import static org.junit.Assert.assertEquals; + +import android.os.Binder; +import android.os.Build; +import android.os.Process; +import android.platform.test.ravenwood.RavenwoodConfig; +import android.system.Os; + +import com.android.ravenwood.RavenwoodRuntimeState; + +import dalvik.system.VMRuntime; + +import org.junit.Test; + +public class IdentityTest { + + @RavenwoodConfig.Config + public static final RavenwoodConfig sConfig = + new RavenwoodConfig.Builder() + .setTargetSdkLevel(UPSIDE_DOWN_CAKE) + .setProcessApp() + .build(); + + @Test + public void testUid() { + assertEquals(FIRST_APPLICATION_UID, RavenwoodRuntimeState.sUid); + assertEquals(FIRST_APPLICATION_UID, Os.getuid()); + assertEquals(FIRST_APPLICATION_UID, Process.myUid()); + assertEquals(FIRST_APPLICATION_UID, Binder.getCallingUid()); + } + + @Test + public void testPid() { + int pid = RavenwoodRuntimeState.sPid; + assertEquals(pid, Os.getpid()); + assertEquals(pid, Process.myPid()); + assertEquals(pid, Binder.getCallingPid()); + } + + @Test + public void testTargetSdkLevel() { + assertEquals(Build.VERSION_CODES.CUR_DEVELOPMENT, RavenwoodRuntimeState.CUR_DEVELOPMENT); + assertEquals(UPSIDE_DOWN_CAKE, RavenwoodRuntimeState.sTargetSdkLevel); + assertEquals(UPSIDE_DOWN_CAKE, VMRuntime.getRuntime().getTargetSdkVersion()); + } +} diff --git a/ravenwood/runtime-test/test/com/android/ravenwood/runtimetest/OsConstantsTest.java b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/OsConstantsTest.java index 3332e24ea013..633ed4e9d10a 100644 --- a/ravenwood/runtime-test/test/com/android/ravenwood/runtimetest/OsConstantsTest.java +++ b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/OsConstantsTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.android.ravenwood.runtimetest; +package com.android.ravenwoodtest.runtimetest; // Copied from libcore/luni/src/test/java/libcore/android/system/OsConstantsTest.java diff --git a/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/OsTest.java b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/OsTest.java new file mode 100644 index 000000000000..c55506a0a10a --- /dev/null +++ b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/OsTest.java @@ -0,0 +1,258 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runtimetest; + +import static android.system.OsConstants.S_ISBLK; +import static android.system.OsConstants.S_ISCHR; +import static android.system.OsConstants.S_ISDIR; +import static android.system.OsConstants.S_ISFIFO; +import static android.system.OsConstants.S_ISLNK; +import static android.system.OsConstants.S_ISREG; +import static android.system.OsConstants.S_ISSOCK; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; +import static org.junit.Assert.assertTrue; + +import static java.nio.file.LinkOption.NOFOLLOW_LINKS; + +import android.system.Os; +import android.system.OsConstants; +import android.system.StructStat; +import android.system.StructTimespec; + +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import com.android.ravenwood.common.JvmWorkaround; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.io.File; +import java.io.FileDescriptor; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.RandomAccessFile; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.attribute.FileTime; +import java.nio.file.attribute.PosixFileAttributes; +import java.nio.file.attribute.PosixFilePermission; +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; + +@RunWith(AndroidJUnit4.class) +public class OsTest { + + public interface ConsumerWithThrow<T> { + void accept(T var1) throws Exception; + } + + private void withTestFileFD(ConsumerWithThrow<FileDescriptor> consumer) throws Exception { + File file = File.createTempFile("osTest", "bin"); + try (var raf = new RandomAccessFile(file, "rw")) { + var fd = raf.getFD(); + + try (var os = new FileOutputStream(fd)) { + os.write(1); + os.write(2); + os.write(3); + os.write(4); + + consumer.accept(fd); + } + } + } + + private void withTestFile(ConsumerWithThrow<Path> consumer) throws Exception { + var path = Files.createTempFile("osTest", "bin"); + try (var os = Files.newOutputStream(path)) { + os.write(1); + os.write(2); + os.write(3); + os.write(4); + } + consumer.accept(path); + } + + @Test + public void testLseek() throws Exception { + withTestFileFD((fd) -> { + assertEquals(4, Os.lseek(fd, 4, OsConstants.SEEK_SET)); + assertEquals(4, Os.lseek(fd, 0, OsConstants.SEEK_CUR)); + assertEquals(6, Os.lseek(fd, 2, OsConstants.SEEK_CUR)); + }); + } + + @Test + public void testDup() throws Exception { + withTestFileFD((fd) -> { + var dup = Os.dup(fd); + + checkAreDup(fd, dup); + }); + } + + @Test + public void testPipe2() throws Exception { + var fds = Os.pipe2(0); + + write(fds[1], 123); + assertEquals(123, read(fds[0])); + } + + @Test + public void testFcntlInt() throws Exception { + withTestFileFD((fd) -> { + var dupInt = Os.fcntlInt(fd, 0, 0); + + var dup = new FileDescriptor(); + JvmWorkaround.getInstance().setFdInt(dup, dupInt); + + checkAreDup(fd, dup); + }); + } + + @Test + public void testStat() throws Exception { + withTestFile(path -> { + var attr = Files.readAttributes(path, PosixFileAttributes.class); + var stat = Os.stat(path.toAbsolutePath().toString()); + assertAttributesEqual(attr, stat); + }); + } + + @Test + public void testLstat() throws Exception { + withTestFile(path -> { + // Create a symbolic link + var lnk = Files.createTempFile("osTest", "lnk"); + Files.delete(lnk); + Files.createSymbolicLink(lnk, path); + + // Test lstat + var attr = Files.readAttributes(lnk, PosixFileAttributes.class, NOFOLLOW_LINKS); + var stat = Os.lstat(lnk.toAbsolutePath().toString()); + assertAttributesEqual(attr, stat); + + // Test stat + var followAttr = Files.readAttributes(lnk, PosixFileAttributes.class); + var followStat = Os.stat(lnk.toAbsolutePath().toString()); + assertAttributesEqual(followAttr, followStat); + }); + } + + @Test + public void testFstat() throws Exception { + withTestFile(path -> { + var attr = Files.readAttributes(path, PosixFileAttributes.class); + try (var raf = new RandomAccessFile(path.toFile(), "r")) { + var fd = raf.getFD(); + var stat = Os.fstat(fd); + assertAttributesEqual(attr, stat); + } + }); + } + + private static class TestThread extends Thread { + + final CountDownLatch mLatch = new CountDownLatch(1); + int mTid; + + TestThread() { + setDaemon(true); + } + + @Override + public void run() { + mTid = Os.gettid(); + mLatch.countDown(); + } + } + + @Test + public void testGetTid() throws InterruptedException { + var t1 = new TestThread(); + var t2 = new TestThread(); + t1.start(); + t2.start(); + // Wait for thread execution + assertTrue(t1.mLatch.await(1, TimeUnit.SECONDS)); + assertTrue(t2.mLatch.await(1, TimeUnit.SECONDS)); + // Make sure the tid is unique per-thread + assertNotEquals(t1.mTid, t2.mTid); + } + + // Verify StructStat values from libcore against native JVM PosixFileAttributes + private static void assertAttributesEqual(PosixFileAttributes attr, StructStat stat) { + assertEquals(attr.lastModifiedTime(), convertTimespecToFileTime(stat.st_mtim)); + assertEquals(attr.size(), stat.st_size); + assertEquals(attr.isDirectory(), S_ISDIR(stat.st_mode)); + assertEquals(attr.isRegularFile(), S_ISREG(stat.st_mode)); + assertEquals(attr.isSymbolicLink(), S_ISLNK(stat.st_mode)); + assertEquals(attr.isOther(), S_ISCHR(stat.st_mode) + || S_ISBLK(stat.st_mode) || S_ISFIFO(stat.st_mode) || S_ISSOCK(stat.st_mode)); + assertEquals(attr.permissions(), convertModeToPosixPerms(stat.st_mode)); + + } + + private static FileTime convertTimespecToFileTime(StructTimespec ts) { + var nanos = TimeUnit.SECONDS.toNanos(ts.tv_sec); + nanos += ts.tv_nsec; + return FileTime.from(nanos, TimeUnit.NANOSECONDS); + } + + private static Set<PosixFilePermission> convertModeToPosixPerms(int mode) { + var set = new HashSet<PosixFilePermission>(); + if ((mode & OsConstants.S_IRUSR) != 0) set.add(PosixFilePermission.OWNER_READ); + if ((mode & OsConstants.S_IWUSR) != 0) set.add(PosixFilePermission.OWNER_WRITE); + if ((mode & OsConstants.S_IXUSR) != 0) set.add(PosixFilePermission.OWNER_EXECUTE); + if ((mode & OsConstants.S_IRGRP) != 0) set.add(PosixFilePermission.GROUP_READ); + if ((mode & OsConstants.S_IWGRP) != 0) set.add(PosixFilePermission.GROUP_WRITE); + if ((mode & OsConstants.S_IXGRP) != 0) set.add(PosixFilePermission.GROUP_EXECUTE); + if ((mode & OsConstants.S_IROTH) != 0) set.add(PosixFilePermission.OTHERS_READ); + if ((mode & OsConstants.S_IWOTH) != 0) set.add(PosixFilePermission.OTHERS_WRITE); + if ((mode & OsConstants.S_IXOTH) != 0) set.add(PosixFilePermission.OTHERS_EXECUTE); + return set; + } + + private static void write(FileDescriptor fd, int oneByte) throws Exception { + // Create a dup to avoid closing the FD. + try (var dup = new FileOutputStream(Os.dup(fd))) { + dup.write(oneByte); + } + } + + private static int read(FileDescriptor fd) throws Exception { + // Create a dup to avoid closing the FD. + try (var dup = new FileInputStream(Os.dup(fd))) { + return dup.read(); + } + } + + private static void checkAreDup(FileDescriptor fd1, FileDescriptor fd2) throws Exception { + assertEquals(4, Os.lseek(fd1, 4, OsConstants.SEEK_SET)); + assertEquals(4, Os.lseek(fd1, 0, OsConstants.SEEK_CUR)); + + // Dup'ed FD shares the same position. + assertEquals(4, Os.lseek(fd2, 0, OsConstants.SEEK_CUR)); + + assertEquals(6, Os.lseek(fd1, 2, OsConstants.SEEK_CUR)); + assertEquals(6, Os.lseek(fd2, 0, OsConstants.SEEK_CUR)); + } +} diff --git a/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/ProcessTest.java b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/ProcessTest.java new file mode 100644 index 000000000000..d25b5c19f351 --- /dev/null +++ b/ravenwood/tests/runtime-test/test/com/android/ravenwoodtest/runtimetest/ProcessTest.java @@ -0,0 +1,54 @@ +/* + * Copyright (C) 2024 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.ravenwoodtest.runtimetest; + +import static android.os.Process.THREAD_PRIORITY_BACKGROUND; +import static android.os.Process.THREAD_PRIORITY_DEFAULT; +import static android.os.Process.THREAD_PRIORITY_FOREGROUND; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThrows; + +import android.os.Process; +import android.system.Os; + +import org.junit.Test; + +public class ProcessTest { + + @Test + public void testGetUidPidTid() { + assertEquals(Os.getuid(), Process.myUid()); + assertEquals(Os.getpid(), Process.myPid()); + assertEquals(Os.gettid(), Process.myTid()); + } + + @Test + public void testThreadPriority() { + assertThrows(UnsupportedOperationException.class, + () -> Process.getThreadPriority(Process.myTid() + 1)); + assertThrows(UnsupportedOperationException.class, + () -> Process.setThreadPriority(Process.myTid() + 1, THREAD_PRIORITY_DEFAULT)); + assertEquals(THREAD_PRIORITY_DEFAULT, Process.getThreadPriority(Process.myTid())); + Process.setThreadPriority(THREAD_PRIORITY_FOREGROUND); + assertEquals(THREAD_PRIORITY_FOREGROUND, Process.getThreadPriority(Process.myTid())); + Process.setCanSelfBackground(false); + Process.setThreadPriority(THREAD_PRIORITY_DEFAULT); + assertEquals(THREAD_PRIORITY_DEFAULT, Process.getThreadPriority(Process.myTid())); + assertThrows(IllegalArgumentException.class, + () -> Process.setThreadPriority(THREAD_PRIORITY_BACKGROUND)); + } +} diff --git a/ravenwood/services-test/Android.bp b/ravenwood/tests/services-test/Android.bp index 39858f05e80d..39858f05e80d 100644 --- a/ravenwood/services-test/Android.bp +++ b/ravenwood/tests/services-test/Android.bp diff --git a/ravenwood/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesDependenciesTest.java b/ravenwood/tests/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesDependenciesTest.java index f833782bc8bb..f833782bc8bb 100644 --- a/ravenwood/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesDependenciesTest.java +++ b/ravenwood/tests/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesDependenciesTest.java diff --git a/ravenwood/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesTest.java b/ravenwood/tests/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesTest.java index 044239f06297..52bf92e25f19 100644 --- a/ravenwood/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesTest.java +++ b/ravenwood/tests/services-test/test/com/android/ravenwoodtest/servicestest/RavenwoodServicesTest.java @@ -16,19 +16,26 @@ package com.android.ravenwoodtest.servicestest; +import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.fail; import android.content.Context; import android.hardware.SerialManager; import android.hardware.SerialManagerInternal; -import android.platform.test.ravenwood.RavenwoodRule; +import android.platform.test.annotations.DisabledOnRavenwood; +import android.platform.test.ravenwood.RavenwoodConfig; +import android.platform.test.ravenwood.RavenwoodConfig.Config; import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; import com.android.server.LocalServices; -import org.junit.Rule; +import com.google.common.collect.Lists; + +import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -36,18 +43,25 @@ import org.junit.runner.RunWith; public class RavenwoodServicesTest { private static final String TEST_VIRTUAL_PORT = "virtual:example"; - @Rule - public final RavenwoodRule mRavenwood = new RavenwoodRule.Builder() + @Config + public static final RavenwoodConfig sRavenwood = new RavenwoodConfig.Builder() .setProcessSystem() .setServicesRequired(SerialManager.class) .build(); + private Context mContext; + + @Before + public void setUp() { + mContext = InstrumentationRegistry.getInstrumentation().getContext(); + } + @Test public void testDefined() { final SerialManager fromName = (SerialManager) - mRavenwood.getContext().getSystemService(Context.SERIAL_SERVICE); + mContext.getSystemService(Context.SERIAL_SERVICE); final SerialManager fromClass = - mRavenwood.getContext().getSystemService(SerialManager.class); + mContext.getSystemService(SerialManager.class); assertNotNull(fromName); assertNotNull(fromClass); assertEquals(fromName, fromClass); @@ -56,19 +70,22 @@ public class RavenwoodServicesTest { } @Test + @DisabledOnRavenwood(reason="AOSP is missing resources support") public void testSimple() { // Verify that we can obtain a manager, and talk to the backend service, and that no // serial ports are configured by default final SerialManager service = (SerialManager) - mRavenwood.getContext().getSystemService(Context.SERIAL_SERVICE); + mContext.getSystemService(Context.SERIAL_SERVICE); final String[] ports = service.getSerialPorts(); - assertEquals(0, ports.length); + final String[] refPorts = mContext.getResources().getStringArray( + com.android.internal.R.array.config_serialPorts); + assertArrayEquals(refPorts, ports); } @Test public void testDriven() { final SerialManager service = (SerialManager) - mRavenwood.getContext().getSystemService(Context.SERIAL_SERVICE); + mContext.getSystemService(Context.SERIAL_SERVICE); final SerialManagerInternal internal = LocalServices.getService( SerialManagerInternal.class); @@ -76,8 +93,17 @@ public class RavenwoodServicesTest { throw new UnsupportedOperationException( "Needs socketpair() to offer accurate emulation"); }); - final String[] ports = service.getSerialPorts(); - assertEquals(1, ports.length); - assertEquals(TEST_VIRTUAL_PORT, ports[0]); + try { + final String[] ports = service.getSerialPorts(); + for (var port : ports) { + if (TEST_VIRTUAL_PORT.equals(port)) { + return; // Pass + } + } + fail("Virtual port " + TEST_VIRTUAL_PORT + " not found. Actual=" + + Lists.newArrayList(ports)); + } finally { + internal.removeVirtualSerialPortForTest(TEST_VIRTUAL_PORT); + } } } diff --git a/ravenwood/texts/build.prop-sample-cuttlefish b/ravenwood/texts/build.prop-sample-cuttlefish new file mode 100644 index 000000000000..f78b727f5779 --- /dev/null +++ b/ravenwood/texts/build.prop-sample-cuttlefish @@ -0,0 +1,132 @@ +# This is file is generated with `aosp_cf_x86_64_phone-trunk_staging-eng` on 2024-11-06. +# We have this file here only as a reference. We don't actually use this file anywhere. + +#################################### +# from generate_common_build_props +# These properties identify this partition image. +#################################### +ro.product.system.brand=Android +ro.product.system.device=generic +ro.product.system.manufacturer=Android +ro.product.system.model=mainline +ro.product.system.name=mainline +ro.system.product.cpu.abilist=x86_64,x86,arm64-v8a,armeabi-v7a,armeabi +ro.system.product.cpu.abilist32=x86,armeabi-v7a,armeabi +ro.system.product.cpu.abilist64=x86_64,arm64-v8a +ro.system.build.date=Tue Nov 5 13:25:43 PST 2024 +ro.system.build.date.utc=1730841943 +ro.system.build.fingerprint=generic/aosp_cf_x86_64_phone/vsoc_x86_64:Baklava/MAIN/eng.omakot:eng/test-keys +ro.system.build.id=MAIN +ro.system.build.tags=test-keys +ro.system.build.type=eng +ro.system.build.version.incremental=eng.omakot +ro.system.build.version.release=15 +ro.system.build.version.release_or_codename=Baklava +ro.system.build.version.sdk=35 +#################################### +# from gen_build_prop.py:generate_build_info +#################################### +# begin build properties +ro.build.legacy.id=MAIN +ro.build.display.id=aosp_cf_x86_64_phone-eng Baklava MAIN eng.omakot test-keys +ro.build.version.incremental=eng.omakot +ro.build.version.sdk=35 +ro.build.version.preview_sdk=1 +ro.build.version.preview_sdk_fingerprint=2ef06129940d459014cf4dede3950d71 +ro.build.version.codename=Baklava +ro.build.version.all_codenames=Baklava +ro.build.version.known_codenames=Base,Base11,Cupcake,Donut,Eclair,Eclair01,EclairMr1,Froyo,Gingerbread,GingerbreadMr1,Honeycomb,HoneycombMr1,HoneycombMr2,IceCreamSandwich,IceCreamSandwichMr1,JellyBean,JellyBeanMr1,JellyBeanMr2,Kitkat,KitkatWatch,Lollipop,LollipopMr1,M,N,NMr1,O,OMr1,P,Q,R,S,Sv2,Tiramisu,UpsideDownCake,VanillaIceCream,Baklava +ro.build.version.release=15 +ro.build.version.release_or_codename=Baklava +ro.build.version.release_or_preview_display=Baklava +ro.build.version.security_patch=2024-08-05 +ro.build.version.base_os= +ro.build.version.min_supported_target_sdk=28 +ro.build.date=Tue Nov 5 13:25:43 PST 2024 +ro.build.date.utc=1730841943 +ro.build.type=eng +ro.build.user=omakoto +ro.build.host=omakoto-ct1.c.googlers.com +ro.build.tags=test-keys +ro.build.flavor=aosp_cf_x86_64_phone-eng +# ro.product.cpu.abi and ro.product.cpu.abi2 are obsolete, +# use ro.product.cpu.abilist instead. +ro.product.cpu.abi=x86_64 +ro.product.locale=en-US +ro.wifi.channels= +# ro.build.product is obsolete; use ro.product.device +ro.build.product=vsoc_x86_64 +# Do not try to parse description or thumbprint +ro.build.description=aosp_cf_x86_64_phone-eng Baklava MAIN eng.omakot test-keys +# end build properties +#################################### +# from variable ADDITIONAL_SYSTEM_PROPERTIES +#################################### +ro.treble.enabled=true +ro.llndk.api_level=202504 +ro.actionable_compatible_property.enabled=true +persist.debug.dalvik.vm.core_platform_api_policy=just-warn +ro.postinstall.fstab.prefix=/system +ro.kernel.android.checkjni=1 +ro.secure=0 +ro.allow.mock.location=1 +dalvik.vm.lockprof.threshold=500 +ro.debuggable=1 +dalvik.vm.image-dex2oat-filter=extract +init.svc_debug.no_fatal.zygote=true +net.bt.name=Android +ro.force.debuggable=0 +#################################### +# from variable PRODUCT_SYSTEM_PROPERTIES +#################################### +debug.atrace.tags.enableflags=0 +persist.traced.enable=1 +dalvik.vm.image-dex2oat-Xms=64m +dalvik.vm.image-dex2oat-Xmx=64m +dalvik.vm.dex2oat-Xms=64m +dalvik.vm.dex2oat-Xmx=512m +dalvik.vm.usejit=true +dalvik.vm.dexopt.secondary=true +dalvik.vm.dexopt.thermal-cutoff=2 +dalvik.vm.appimageformat=lz4 +ro.dalvik.vm.native.bridge=0 +pm.dexopt.post-boot=verify +pm.dexopt.first-boot=verify +pm.dexopt.boot-after-ota=verify +pm.dexopt.boot-after-mainline-update=verify +pm.dexopt.install=speed-profile +pm.dexopt.install-fast=skip +pm.dexopt.install-bulk=speed-profile +pm.dexopt.install-bulk-secondary=verify +pm.dexopt.install-bulk-downgraded=verify +pm.dexopt.install-bulk-secondary-downgraded=verify +pm.dexopt.bg-dexopt=speed-profile +pm.dexopt.ab-ota=speed-profile +pm.dexopt.inactive=verify +pm.dexopt.cmdline=verify +pm.dexopt.shared=speed +dalvik.vm.disable-art-service-dexopt=true +dalvik.vm.disable-odrefresh=true +dalvik.vm.dex2oat-resolve-startup-strings=true +dalvik.vm.dex2oat-max-image-block-size=524288 +dalvik.vm.minidebuginfo=true +dalvik.vm.dex2oat-minidebuginfo=true +dalvik.vm.madvise.vdexfile.size=104857600 +dalvik.vm.madvise.odexfile.size=104857600 +dalvik.vm.madvise.artfile.size=4294967295 +dalvik.vm.usap_pool_enabled=false +dalvik.vm.usap_refill_threshold=1 +dalvik.vm.usap_pool_size_max=3 +dalvik.vm.usap_pool_size_min=1 +dalvik.vm.usap_pool_refill_delay_ms=3000 +dalvik.vm.useartservice=true +dalvik.vm.enable_pr_dexopt=true +ro.cp_system_other_odex=1 +ro.apex.updatable=true +ro.launcher.depth.widget=0 +#################################### +# from variable PRODUCT_SYSTEM_DEFAULT_PROPERTIES +#################################### +# Auto-added by post_process_props.py +persist.sys.usb.config=adb +# end of file diff --git a/ravenwood/texts/ravenwood-annotation-allowed-classes.txt b/ravenwood/texts/ravenwood-annotation-allowed-classes.txt index f3172ae3090d..5d24c3aea728 100644 --- a/ravenwood/texts/ravenwood-annotation-allowed-classes.txt +++ b/ravenwood/texts/ravenwood-annotation-allowed-classes.txt @@ -9,17 +9,15 @@ com.android.internal.logging.testing.FakeMetricsLogger com.android.internal.logging.testing.UiEventLoggerFake com.android.internal.os.AndroidPrintStream com.android.internal.os.BatteryStatsHistory -com.android.internal.os.BatteryStatsHistory$TraceDelegate -com.android.internal.os.BatteryStatsHistory$VarintParceler com.android.internal.os.BatteryStatsHistoryIterator com.android.internal.os.Clock com.android.internal.os.LongArrayMultiStateCounter -com.android.internal.os.LongArrayMultiStateCounter$LongArrayContainer +com.android.internal.os.LongArrayMultiStateCounter_ravenwood com.android.internal.os.LongMultiStateCounter +com.android.internal.os.LongMultiStateCounter_ravenwood com.android.internal.os.MonotonicClock com.android.internal.os.PowerProfile com.android.internal.os.PowerStats -com.android.internal.os.PowerStats$Descriptor com.android.internal.os.RuntimeInit com.android.internal.power.EnergyConsumerStats com.android.internal.power.ModemPowerProfile @@ -39,12 +37,14 @@ android.util.ContainerHelpers android.util.DataUnit android.util.DayOfMonthCursor android.util.DebugUtils +android.util.DisplayMetrics android.util.Dumpable android.util.DumpableContainer android.util.EmptyArray android.util.EventLog android.util.FloatProperty android.util.FloatMath +android.util.Half android.util.IndentingPrintWriter android.util.IntArray android.util.IntProperty @@ -98,10 +98,12 @@ android.util.SparseDoubleArray android.util.SparseIntArray android.util.SparseLongArray android.util.SparseSetArray +android.util.StateSet android.util.StringBuilderPrinter android.util.TeeWriter android.util.TimeUtils android.util.TimingsTraceLog +android.util.TypedValue android.util.UtilConfig android.util.Xml @@ -119,15 +121,9 @@ android.os.BadTypeParcelableException android.os.BaseBundle android.os.BatteryConsumer android.os.BatteryStats -android.os.BatteryStats$HistoryItem -android.os.BatteryStats$HistoryStepDetails -android.os.BatteryStats$HistoryTag -android.os.BatteryStats$LongCounter -android.os.BatteryStats$ProcessStateChange android.os.BatteryUsageStats android.os.BatteryUsageStatsQuery android.os.Binder -android.os.Binder$IdentitySupplier android.os.BluetoothBatteryStats android.os.Broadcaster android.os.Build @@ -138,19 +134,18 @@ android.os.ConditionVariable android.os.DeadObjectException android.os.DeadSystemException android.os.FileUtils -android.os.FileUtils$MemoryPipe android.os.Handler android.os.HandlerExecutor android.os.HandlerThread android.os.IBinder +android.os.LocaleList android.os.Looper android.os.Message android.os.MessageQueue +android.os.MessageQueue_ravenwood android.os.PackageTagsList android.os.Parcel android.os.ParcelFileDescriptor -android.os.ParcelFileDescriptor$AutoCloseInputStream -android.os.ParcelFileDescriptor$AutoCloseOutputStream android.os.ParcelFormatException android.os.ParcelUuid android.os.Parcelable @@ -164,7 +159,6 @@ android.os.RemoteCallbackList android.os.RemoteException android.os.ResultReceiver android.os.ServiceManager -android.os.ServiceManager$ServiceNotFoundException android.os.ServiceSpecificException android.os.StrictMode android.os.SystemClock @@ -175,23 +169,20 @@ android.os.TimestampedValue android.os.Trace android.os.TransactionTooLargeException android.os.UserBatteryConsumer -android.os.UserBatteryConsumer$Builder android.os.UidBatteryConsumer -android.os.UidBatteryConsumer$Builder android.os.UserHandle android.os.UserManager android.os.VibrationAttributes -android.os.VibrationAttributes$Builder android.os.WakeLockStats android.os.WorkSource android.content.ClipData -android.content.ClipData$Item android.content.ClipDescription android.content.ClipboardManager android.content.ComponentName android.content.ContentUris android.content.ContentValues +android.content.Context android.content.ContextWrapper android.content.Intent android.content.IntentFilter @@ -202,11 +193,7 @@ android.content.pm.ApplicationInfo android.content.pm.ComponentInfo android.content.pm.PackageInfo android.content.pm.PackageItemInfo -android.content.pm.PackageManager$Flags -android.content.pm.PackageManager$PackageInfoFlags -android.content.pm.PackageManager$ApplicationInfoFlags -android.content.pm.PackageManager$ComponentInfoFlags -android.content.pm.PackageManager$ResolveInfoFlags +android.content.pm.PackageManager android.content.pm.PathPermission android.content.pm.ProviderInfo android.content.pm.ResolveInfo @@ -214,6 +201,32 @@ android.content.pm.ServiceInfo android.content.pm.Signature android.content.pm.UserInfo +android.content.res.ApkAssets +android.content.res.AssetFileDescriptor +android.content.res.AssetManager +android.content.res.ColorStateList +android.content.res.ConfigurationBoundResourceCache +android.content.res.Configuration +android.content.res.CompatibilityInfo +android.content.res.ComplexColor +android.content.res.ConstantState +android.content.res.DrawableCache +android.content.res.Element +android.content.res.FontResourcesParser +android.content.res.FontScaleConverter +android.content.res.FontScaleConverterImpl +android.content.res.FontScaleConverterFactory +android.content.res.Resources +android.content.res.ResourceId +android.content.res.ResourcesImpl +android.content.res.ResourcesKey +android.content.res.StringBlock +android.content.res.TagCounter +android.content.res.ThemedResourceCache +android.content.res.TypedArray +android.content.res.Validator +android.content.res.XmlBlock + android.database.AbstractCursor android.database.CharArrayBuffer android.database.ContentObservable @@ -222,11 +235,11 @@ android.database.Cursor android.database.CursorIndexOutOfBoundsException android.database.CursorJoiner android.database.CursorWindow +android.database.CursorWindow_ravenwood android.database.CursorWrapper android.database.DataSetObservable android.database.DataSetObserver android.database.MatrixCursor -android.database.MatrixCursor$RowBuilder android.database.MergeCursor android.database.Observable android.database.SQLException @@ -234,7 +247,6 @@ android.database.sqlite.SQLiteClosable android.database.sqlite.SQLiteException android.text.TextUtils -android.text.TextUtils$SimpleStringSplitter android.accounts.Account @@ -244,7 +256,11 @@ android.graphics.ColorSpace android.graphics.Insets android.graphics.Interpolator android.graphics.Matrix +android.graphics.Matrix44 +android.graphics.Outline +android.graphics.ParcelableColorSpace android.graphics.Path +android.graphics.PixelFormat android.graphics.Point android.graphics.PointF android.graphics.Rect @@ -254,15 +270,18 @@ android.content.ContentProvider android.app.ActivityManager android.app.ActivityOptions +android.app.ApplicationPackageManager android.app.BroadcastOptions android.app.ComponentOptions android.app.Instrumentation +android.app.LocaleConfig +android.app.ResourcesManager +android.app.WindowConfiguration android.metrics.LogMaker android.view.Display -android.view.Display$HdrCapabilities -android.view.Display$Mode +android.view.DisplayAdjustments android.view.DisplayInfo android.view.inputmethod.InputBinding @@ -274,10 +293,18 @@ android.telephony.CellSignalStrength android.telephony.ModemActivityInfo android.telephony.ServiceState +android.os.connectivity.CellularBatteryStats android.os.connectivity.WifiActivityEnergyInfo +android.os.connectivity.WifiBatteryStats com.android.server.LocalServices +com.android.internal.graphics.cam.Cam +com.android.internal.graphics.cam.CamUtils +com.android.internal.graphics.cam.Frame +com.android.internal.graphics.cam.HctSolver +com.android.internal.graphics.ColorUtils + com.android.internal.util.BitUtils com.android.internal.util.BitwiseInputStream com.android.internal.util.BitwiseOutputStream @@ -302,6 +329,7 @@ com.android.internal.util.ProcFileReader com.android.internal.util.QuickSelect com.android.internal.util.RingBuffer com.android.internal.util.SizedInputStream +com.android.internal.util.RateLimitingCache com.android.internal.util.StringPool com.android.internal.util.TokenBucket com.android.internal.util.XmlPullParserWrapper @@ -335,3 +363,6 @@ com.android.server.SystemService com.android.server.SystemServiceManager com.android.server.utils.TimingsTraceAndSlog + +android.os.IpcDataCache +android.app.PropertyInvalidatedCache diff --git a/ravenwood/texts/ravenwood-build.prop b/ravenwood/texts/ravenwood-build.prop new file mode 100644 index 000000000000..93a18cffec50 --- /dev/null +++ b/ravenwood/texts/ravenwood-build.prop @@ -0,0 +1,44 @@ +# This file contains system properties used on ravenwood. + +ro.is_on_ravenwood=1 + +ro.board.first_api_level=1 +ro.product.first_api_level=1 +ro.soc.manufacturer=Android +ro.soc.model=Ravenwood +ro.debuggable=1 + +# The ones starting with "ro.product" or "ro.bild" will be copied to all "partitions" too. +# See RavenwoodSystemProperties. +ro.product.brand=Android +ro.product.device=Ravenwood +ro.product.manufacturer=Android +ro.product.model=Ravenwood +ro.product.name=Ravenwood +ro.product.cpu.abilist=x86_64 +ro.product.cpu.abilist32= +ro.product.cpu.abilist64=x86_64 + +ro.build.date=Thu Jan 01 00:00:00 GMT 2024 +ro.build.date.utc=1704092400 +ro.build.id=MAIN +ro.build.tags=dev-keys +ro.build.type=userdebug +ro.build.version.incremental=userdebug.ravenwood.20240101 + +# These are what we used to use on Ravenwood, copied here as a reference. +#ro.build.version.codename=REL +#ro.build.version.all_codenames=REL +#ro.build.version.known_codenames=REL +#ro.build.version.release=14 +#ro.build.version.release_or_codename=VanillaIceCream +#ro.build.version.sdk=34 + +# We pull in the following values from the real build.prop file. +ro.build.version.codename=$$$ro.build.version.codename +ro.build.version.all_codenames=$$$ro.build.version.codename +ro.build.version.known_codenames=$$$ro.build.version.codename +ro.build.version.release=$$$ro.build.version.release +ro.build.version.release_or_codename=$$$ro.build.version.release_or_codename +ro.build.version.release_or_preview_display=$$$ro.build.version.release_or_preview_display +ro.build.version.sdk=$$$ro.build.version.sdk diff --git a/ravenwood/texts/ravenwood-common-policies.txt b/ravenwood/texts/ravenwood-common-policies.txt new file mode 100644 index 000000000000..08f5397730da --- /dev/null +++ b/ravenwood/texts/ravenwood-common-policies.txt @@ -0,0 +1,20 @@ +# Ravenwood "policy" that should apply to all code. + +# Keep all AIDL interfaces +class :aidl keepclass + +# Keep all feature flag implementations +class :feature_flags keepclass + +# Keep all sysprops generated code implementations +class :sysprops keepclass + +# Keep all resource R classes +class :r keepclass + +# Support APIs not available in standard JRE +class java.io.FileDescriptor keep + method getInt$ ()I @com.android.ravenwood.RavenwoodJdkPatch.getInt$ + method setInt$ (I)V @com.android.ravenwood.RavenwoodJdkPatch.setInt$ +class java.util.LinkedHashMap keep + method eldest ()Ljava/util/Map$Entry; @com.android.ravenwood.RavenwoodJdkPatch.eldest diff --git a/ravenwood/texts/ravenwood-framework-jarjar-rules.txt b/ravenwood/texts/ravenwood-framework-jarjar-rules.txt new file mode 100644 index 000000000000..afef56433d5b --- /dev/null +++ b/ravenwood/texts/ravenwood-framework-jarjar-rules.txt @@ -0,0 +1 @@ +# Applying jarjar on framework-minux-apex is too slow, so we don't use jarjar for now. b/313930116
\ No newline at end of file diff --git a/ravenwood/texts/ravenwood-framework-policies.txt b/ravenwood/texts/ravenwood-framework-policies.txt index 9d29a051d092..80126df1b8df 100644 --- a/ravenwood/texts/ravenwood-framework-policies.txt +++ b/ravenwood/texts/ravenwood-framework-policies.txt @@ -1,13 +1,12 @@ # Ravenwood "policy" file for framework-minus-apex. -# Keep all AIDL interfaces -class :aidl keepclass +# To avoid VerifyError on nano proto files (b/324063814), we rename nano proto classes. +# Note: The "rename" directive must use slashes (/) as a package name separator. +rename com/.*/nano/ devicenano/ +rename android/.*/nano/ devicenano/ -# Keep all feature flag implementations -class :feature_flags keepclass - -# Keep all sysprops generated code implementations -class :sysprops keepclass +# StatsD auto-generated +class com.android.internal.util.FrameworkStatsLog keepclass # Exported to Mainline modules; cannot use annotations class com.android.internal.util.FastXmlSerializer keepclass @@ -57,3 +56,7 @@ class android.content.pm.PackageManager keep method <init> ()V keep class android.text.ClipboardManager keep method <init> ()V keep + +# Just enough to allow ResourcesManager to run +class android.hardware.display.DisplayManagerGlobal keep + method getInstance ()Landroid/hardware/display/DisplayManagerGlobal; ignore diff --git a/ravenwood/texts/ravenwood-services-policies.txt b/ravenwood/texts/ravenwood-services-policies.txt index 5cdb4f74d7c0..cc2fa602b3c3 100644 --- a/ravenwood/texts/ravenwood-services-policies.txt +++ b/ravenwood/texts/ravenwood-services-policies.txt @@ -1,7 +1 @@ # Ravenwood "policy" file for services.core. - -# Keep all AIDL interfaces -class :aidl keepclass - -# Keep all feature flag implementations -class :feature_flags keepclass diff --git a/ravenwood/texts/ravenwood-standard-options.txt b/ravenwood/texts/ravenwood-standard-options.txt index f64f26d7962a..3ec3e3ce2946 100644 --- a/ravenwood/texts/ravenwood-standard-options.txt +++ b/ravenwood/texts/ravenwood-standard-options.txt @@ -6,8 +6,6 @@ --default-throw # Uncomment below lines to enable each feature. -# --enable-non-stub-method-check ---no-non-stub-method-check #--default-method-call-hook # com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -34,8 +32,11 @@ --substitute-annotation android.ravenwood.annotation.RavenwoodReplace ---native-substitute-annotation - android.ravenwood.annotation.RavenwoodNativeSubstitutionClass +--redirect-annotation + android.ravenwood.annotation.RavenwoodRedirect + +--redirection-class-annotation + android.ravenwood.annotation.RavenwoodRedirectionClass --class-load-hook-annotation android.ravenwood.annotation.RavenwoodClassLoadHook diff --git a/ravenwood/tools/hoststubgen/.gitignore b/ravenwood/tools/hoststubgen/.gitignore new file mode 100644 index 000000000000..82158c9b25e3 --- /dev/null +++ b/ravenwood/tools/hoststubgen/.gitignore @@ -0,0 +1,4 @@ +framework-all-stub-out +out/ +*-out/ +*.log diff --git a/tools/hoststubgen/hoststubgen/Android.bp b/ravenwood/tools/hoststubgen/Android.bp index 682adbc86d06..a5ff4964b0a4 100644 --- a/tools/hoststubgen/hoststubgen/Android.bp +++ b/ravenwood/tools/hoststubgen/Android.bp @@ -5,6 +5,10 @@ package { // to get the below license kinds: // SPDX-license-identifier-Apache-2.0 default_applicable_licenses: ["frameworks_base_license"], + + // OWNER: g/ravenwood + // Bug component: 25698 + default_team: "trendy_team_ravenwood", } // Visibility only for ravenwood prototype uses. @@ -118,7 +122,6 @@ java_binary_host { java_test_host { name: "hoststubgentest", - // main_class: "com.android.hoststubgen.Main", srcs: ["test/**/*.kt"], static_libs: [ "hoststubgen", @@ -143,8 +146,7 @@ hoststubgen_common_options = "$(location hoststubgen) " + // "--policy-override-file $(location framework-policy-override.txt) " + "@$(location :hoststubgen-standard-options) " + - "--out-stub-jar $(location host_stub.jar) " + - "--out-impl-jar $(location host_impl.jar) " + + "--out-jar $(location host.jar) " + // "--keep-all-classes " + // Used it for an experiment. See KeepAllClassesFilter. "--gen-keep-all-file $(location hoststubgen_keep_all.txt) " + @@ -159,10 +161,8 @@ genrule_defaults { srcs: [ ":hoststubgen-standard-options", ], - // Create two jar files. out: [ - "host_stub.jar", - "host_impl.jar", + "host.jar", // Following files are created just as FYI. "hoststubgen_keep_all.txt", diff --git a/tools/hoststubgen/README.md b/ravenwood/tools/hoststubgen/README.md index 1a895dc7dfce..615e7671bea1 100644 --- a/tools/hoststubgen/README.md +++ b/ravenwood/tools/hoststubgen/README.md @@ -11,7 +11,7 @@ used at runtime. - HostStubGen itself is design to be agnostic to Android. It doesn't use any Android APIs (hidden or not). But it may use Android specific knowledge -- e.g. as of now, -AndroidHeuristicsFilter has hardcoded heuristics to detect AIDL generated classes. +AndroidHeuristicsFilter has hardcoded heuristics to detect AIDL generated classes. - `test-tiny-framework/` contains basic tests that are agnostic to Android. @@ -20,19 +20,16 @@ AndroidHeuristicsFilter has hardcoded heuristics to detect AIDL generated classe ## Directories and files -- `hoststubgen/` - Contains source code of the "hoststubgen" tool and relevant code +- `src/` - - `src/` + HostStubGen tool source code. - HostStubGen tool source code. +- `annotations-src/` See `Android.bp`. +- `helper-framework-buildtime-src/` See `Android.bp`. +- `helper-framework-runtime-src/` See `Android.bp`. +- `helper-runtime-src/` See `Android.bp`. - - `annotations-src/` See `Android.bp`. - - `helper-framework-buildtime-src/` See `Android.bp`. - - `helper-framework-runtime-src/` See `Android.bp`. - - `helper-runtime-src/` See `Android.bp`. - - - `test-tiny-framework/` See `README.md` in it. +- `test-tiny-framework/` See `README.md` in it. - `scripts` - `dump-jar.sh` @@ -78,4 +75,4 @@ $ ./scripts/run-all-tests.sh - At some point, we can move or delete all Android specific code to `frameworks/base/ravenwood`. - `helper-framework-*-src` should be moved to `frameworks/base/ravenwood` - - `test-framework` should be deleted.
\ No newline at end of file + - `test-framework` should be deleted. diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestClassLoadHook.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestClassLoadHook.java index a774336a897c..a774336a897c 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestClassLoadHook.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestClassLoadHook.java diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeep.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestIgnore.java index f02f06c056bd..501fd652145e 100644 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeep.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestIgnore.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,10 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.ravenwood.annotation; +package android.hosttest.annotation; import static java.lang.annotation.ElementType.CONSTRUCTOR; -import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.ElementType.METHOD; import java.lang.annotation.Retention; @@ -27,11 +26,9 @@ import java.lang.annotation.Target; * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY * QUESTIONS ABOUT IT. * - * TODO: Javadoc - * * @hide */ -@Target({FIELD, METHOD, CONSTRUCTOR}) +@Target({METHOD, CONSTRUCTOR}) @Retention(RetentionPolicy.CLASS) -public @interface RavenwoodKeep { +public @interface HostSideTestIgnore { } diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestKeep.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestKeep.java index 06ad1c266a14..06ad1c266a14 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestKeep.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestKeep.java diff --git a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepStaticInitializer.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRedirect.java index eeebee985e4a..bc9471b84b97 100644 --- a/ravenwood/annotations-src/android/ravenwood/annotation/RavenwoodKeepStaticInitializer.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRedirect.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2023 The Android Open Source Project + * Copyright (C) 2024 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. @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package android.ravenwood.annotation; +package android.hosttest.annotation; -import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.ElementType.METHOD; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -24,10 +24,9 @@ import java.lang.annotation.Target; /** * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY * QUESTIONS ABOUT IT. - * * @hide */ -@Target(TYPE) +@Target({METHOD}) @Retention(RetentionPolicy.CLASS) -public @interface RavenwoodKeepStaticInitializer { +public @interface HostSideTestRedirect { } diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestNativeSubstitutionClass.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRedirectionClass.java index 9c8138351eb5..28ad236a66f3 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestNativeSubstitutionClass.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRedirectionClass.java @@ -30,6 +30,6 @@ import java.lang.annotation.Target; */ @Target({TYPE}) @Retention(RetentionPolicy.CLASS) -public @interface HostSideTestNativeSubstitutionClass { +public @interface HostSideTestRedirectionClass { String value(); } diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRemove.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRemove.java index 46e5078fb05d..46e5078fb05d 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRemove.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestRemove.java diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStaticInitializerKeep.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStaticInitializerKeep.java index eec72269e0d3..eec72269e0d3 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStaticInitializerKeep.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestStaticInitializerKeep.java diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestSubstitute.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestSubstitute.java index 510a67e0aaed..510a67e0aaed 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestSubstitute.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestSubstitute.java diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestThrow.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestThrow.java index cd1bef4be505..cd1bef4be505 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestThrow.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestThrow.java diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassKeep.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassKeep.java index 3d1ddea2cbb7..3d1ddea2cbb7 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassKeep.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassKeep.java diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/tests/HostSideTestSuppress.java b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/tests/HostSideTestSuppress.java index b10f0ff1a4b1..b10f0ff1a4b1 100644 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/tests/HostSideTestSuppress.java +++ b/ravenwood/tools/hoststubgen/annotations-src/android/hosttest/annotation/tests/HostSideTestSuppress.java diff --git a/tools/hoststubgen/common.sh b/ravenwood/tools/hoststubgen/common.sh index b49ee39a3142..b49ee39a3142 100644 --- a/tools/hoststubgen/common.sh +++ b/ravenwood/tools/hoststubgen/common.sh diff --git a/tools/hoststubgen/hoststubgen/framework-policy-override.txt b/ravenwood/tools/hoststubgen/framework-policy-override.txt index af3789e270a4..af3789e270a4 100644 --- a/tools/hoststubgen/hoststubgen/framework-policy-override.txt +++ b/ravenwood/tools/hoststubgen/framework-policy-override.txt diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsIgnore.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsIgnore.java index cb50404c96d9..b01710347537 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsIgnore.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsIgnore.java @@ -23,8 +23,6 @@ import java.lang.annotation.Target; /** * Annotation injected to all methods processed as "ignore". - * - * (This annotation is only added in the impl jar, but not the stub jar) */ @Target({METHOD}) @Retention(RetentionPolicy.RUNTIME) diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenKeptInImpl.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsKeep.java index 2cc500f527c0..18ef1bab203e 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenKeptInImpl.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsKeep.java @@ -25,11 +25,11 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * Annotation injected to all classes/methods/fields that are kept in the "impl" jar. + * Annotation injected to all classes/methods/fields that are kept in the processes jar. */ @Target({TYPE, METHOD, CONSTRUCTOR, FIELD}) @Retention(RetentionPolicy.RUNTIME) -public @interface HostStubGenKeptInImpl { - String CLASS_INTERNAL_NAME = HostTestUtils.getInternalName(HostStubGenKeptInImpl.class); +public @interface HostStubGenProcessedAsKeep { + String CLASS_INTERNAL_NAME = HostTestUtils.getInternalName(HostStubGenProcessedAsKeep.class); String CLASS_DESCRIPTOR = "L" + CLASS_INTERNAL_NAME + ";"; } diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsSubstitute.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsSubstitute.java index cfa4896fdfa0..99e38c0b1725 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsSubstitute.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsSubstitute.java @@ -26,8 +26,6 @@ import java.lang.annotation.Target; /** * Annotation injected to all methods that are processed as "substitute". - * - * (This annotation is only added in the impl jar, but not the stub jar) */ @Target({TYPE, METHOD, CONSTRUCTOR, FIELD}) @Retention(RetentionPolicy.RUNTIME) diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsThrow.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsThrow.java index 0d2da114da97..4933cf8784d9 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsThrow.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenProcessedAsThrow.java @@ -23,8 +23,6 @@ import java.lang.annotation.Target; /** * Annotation injected to all methods that are processed as "throw". - * - * (This annotation is only added in the impl jar, but not the stub jar) */ @Target({METHOD}) @Retention(RetentionPolicy.RUNTIME) diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestException.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestException.java index c54c2c111229..c54c2c111229 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestException.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestException.java diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestSuite.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestSuite.java index 29f7be008eef..29f7be008eef 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestSuite.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestSuite.java diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestUtils.java b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestUtils.java index 60eb47eea7c7..78fd8f7f960a 100644 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestUtils.java +++ b/ravenwood/tools/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostTestUtils.java @@ -16,12 +16,8 @@ package com.android.hoststubgen.hosthelper; import java.io.PrintStream; -import java.lang.StackWalker.Option; import java.lang.reflect.Method; import java.lang.reflect.Modifier; -import java.util.HashMap; - -import javax.annotation.concurrent.GuardedBy; /** * Utilities used in the host side test environment. @@ -101,68 +97,6 @@ public class HostTestUtils { + methodName + methodDescriptor); } - private static final StackWalker sStackWalker = - StackWalker.getInstance(Option.RETAIN_CLASS_REFERENCE); - - /** - * Return a {@link StackWalker} that supports {@link StackWalker#getCallerClass()}. - */ - public static StackWalker getStackWalker() { - return sStackWalker; - } - - /** - * Cache used by {@link #isClassAllowedToCallNonStubMethods}. - */ - @GuardedBy("sAllowedClasses") - private static final HashMap<Class, Boolean> sAllowedClasses = new HashMap(); - - /** - * Return true if a given class is allowed to access non-stub methods -- that is, if the class - * is in the hoststubgen generated JARs. (not in the test jar.) - */ - private static boolean isClassAllowedToCallNonStubMethods(Class<?> clazz) { - synchronized (sAllowedClasses) { - var cached = sAllowedClasses.get(clazz); - if (cached != null) { - return cached; - } - } - // All processed classes have this annotation. - var allowed = clazz.getAnnotation(HostStubGenKeptInImpl.class) != null; - - // Java classes should be able to access any methods. (via callbacks, etc.) - if (!allowed) { - if (clazz.getPackageName().startsWith("java.") - || clazz.getPackageName().startsWith("javax.")) { - allowed = true; - } - } - synchronized (sAllowedClasses) { - sAllowedClasses.put(clazz, allowed); - } - return allowed; - } - - /** - * Called when non-stub methods are called. We do a host-unsupported method direct call check - * in here. - */ - public static void onNonStubMethodCalled( - String methodClass, - String methodName, - String methodDescriptor, - Class<?> callerClass) { - if (SKIP_NON_STUB_METHOD_CHECK) { - return; - } - if (isClassAllowedToCallNonStubMethods(callerClass)) { - return; // Generated class is allowed to call framework class. - } - logPrintStream.println("! " + methodClass + "." + methodName + methodDescriptor - + " called by " + callerClass.getCanonicalName()); - } - /** * Called when any top level class (not nested classes) in the impl jar is loaded. * diff --git a/tools/hoststubgen/hoststubgen/hoststubgen-standard-options.txt b/ravenwood/tools/hoststubgen/hoststubgen-standard-options.txt index c371b5d54ebd..001943c18d6b 100644 --- a/tools/hoststubgen/hoststubgen/hoststubgen-standard-options.txt +++ b/ravenwood/tools/hoststubgen/hoststubgen-standard-options.txt @@ -3,8 +3,6 @@ --debug # Uncomment below lines to enable each feature. ---enable-non-stub-method-check -# --no-non-stub-method-check #--default-method-call-hook # com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -13,15 +11,10 @@ # Standard annotations. # Note, each line is a single argument, so we need newlines after each `--xxx-annotation`. ---stub-annotation - android.hosttest.annotation.HostSideTestStub --keep-annotation android.hosttest.annotation.HostSideTestKeep ---stub-class-annotation - android.hosttest.annotation.HostSideTestWholeClassStub - --keep-class-annotation android.hosttest.annotation.HostSideTestWholeClassKeep @@ -31,11 +24,17 @@ --remove-annotation android.hosttest.annotation.HostSideTestRemove +--ignore-annotation + android.hosttest.annotation.HostSideTestIgnore + --substitute-annotation android.hosttest.annotation.HostSideTestSubstitute ---native-substitute-annotation - android.hosttest.annotation.HostSideTestNativeSubstitutionClass +--redirect-annotation + android.hosttest.annotation.HostSideTestRedirect + +--redirection-class-annotation + android.hosttest.annotation.HostSideTestRedirectionClass --class-load-hook-annotation android.hosttest.annotation.HostSideTestClassLoadHook diff --git a/tools/hoststubgen/hoststubgen/invoketest/Android.bp b/ravenwood/tools/hoststubgen/invoketest/Android.bp index 7e90e421a1f9..7e90e421a1f9 100644 --- a/tools/hoststubgen/hoststubgen/invoketest/Android.bp +++ b/ravenwood/tools/hoststubgen/invoketest/Android.bp diff --git a/tools/hoststubgen/hoststubgen/invoketest/hoststubgen-invoke-test.sh b/ravenwood/tools/hoststubgen/invoketest/hoststubgen-invoke-test.sh index d97dd7c18045..084448d0a797 100755 --- a/tools/hoststubgen/hoststubgen/invoketest/hoststubgen-invoke-test.sh +++ b/ravenwood/tools/hoststubgen/invoketest/hoststubgen-invoke-test.sh @@ -43,9 +43,8 @@ cleanup_temp() { cleanup_temp -JAR=hoststubgen-test-tiny-framework.jar -STUB=$TEMP/stub.jar -IMPL=$TEMP/impl.jar +INJAR=hoststubgen-test-tiny-framework.jar +OUTJAR=$TEMP/host.jar ANNOTATION_FILTER=$TEMP/annotation-filter.txt @@ -81,27 +80,18 @@ run_hoststubgen() { cat $ANNOTATION_FILTER fi - local stub_arg="" - local impl_arg="" + local out_arg="" - if [[ "$STUB" != "" ]] ; then - stub_arg="--out-stub-jar $STUB" - fi - if [[ "$IMPL" != "" ]] ; then - impl_arg="--out-impl-jar $IMPL" + if [[ "$OUTJAR" != "" ]] ; then + out_arg="--out-jar $OUTJAR" fi hoststubgen \ --debug \ - --in-jar $JAR \ - $stub_arg \ - $impl_arg \ - --stub-annotation \ - android.hosttest.annotation.HostSideTestStub \ + --in-jar $INJAR \ + $out_arg \ --keep-annotation \ android.hosttest.annotation.HostSideTestKeep \ - --stub-class-annotation \ - android.hosttest.annotation.HostSideTestWholeClassStub \ --keep-class-annotation \ android.hosttest.annotation.HostSideTestWholeClassKeep \ --throw-annotation \ @@ -110,8 +100,10 @@ run_hoststubgen() { android.hosttest.annotation.HostSideTestRemove \ --substitute-annotation \ android.hosttest.annotation.HostSideTestSubstitute \ - --native-substitute-annotation \ - android.hosttest.annotation.HostSideTestNativeSubstitutionClass \ + --redirect-annotation \ + android.hosttest.annotation.HostSideTestRedirect \ + --redirection-class-annotation \ + android.hosttest.annotation.HostSideTestRedirectionClass \ --class-load-hook-annotation \ android.hosttest.annotation.HostSideTestClassLoadHook \ --keep-static-initializer-annotation \ @@ -213,9 +205,9 @@ com.unsupported.* " run_hoststubgen_for_failure "One specific class disallowed" \ - "TinyFrameworkClassAnnotations is not allowed to have Ravenwood annotations" \ + "TinyFrameworkAnnotations is not allowed to have Ravenwood annotations" \ " -!com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations +!com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations * # All other classes allowed " @@ -225,11 +217,7 @@ run_hoststubgen_for_success "One specific class disallowed, but it doesn't use a * # All other classes allowed " -STUB="" run_hoststubgen_for_success "No stub generation" "" - -IMPL="" run_hoststubgen_for_success "No impl generation" "" - -STUB="" IMPL="" run_hoststubgen_for_success "No stub, no impl generation" "" +OUTJAR="" run_hoststubgen_for_success "No output generation" "" EXTRA_ARGS="--in-jar abc" run_hoststubgen_for_failure "Duplicate arg" \ "Duplicate or conflicting argument found: --in-jar" \ @@ -237,4 +225,4 @@ EXTRA_ARGS="--in-jar abc" run_hoststubgen_for_failure "Duplicate arg" \ echo "All tests passed" -exit 0
\ No newline at end of file +exit 0 diff --git a/tools/hoststubgen/hoststubgen/jarjar-rules.txt b/ravenwood/tools/hoststubgen/jarjar-rules.txt index b1f2fc21c8e9..b1f2fc21c8e9 100644 --- a/tools/hoststubgen/hoststubgen/jarjar-rules.txt +++ b/ravenwood/tools/hoststubgen/jarjar-rules.txt diff --git a/tools/hoststubgen/scripts/Android.bp b/ravenwood/tools/hoststubgen/scripts/Android.bp index b1ba07ec540d..b1ba07ec540d 100644 --- a/tools/hoststubgen/scripts/Android.bp +++ b/ravenwood/tools/hoststubgen/scripts/Android.bp diff --git a/tools/hoststubgen/scripts/build-framework-hostside-jars-without-genrules.sh b/ravenwood/tools/hoststubgen/scripts/build-framework-hostside-jars-without-genrules.sh index c3605a9ffaa5..c3605a9ffaa5 100755 --- a/tools/hoststubgen/scripts/build-framework-hostside-jars-without-genrules.sh +++ b/ravenwood/tools/hoststubgen/scripts/build-framework-hostside-jars-without-genrules.sh diff --git a/tools/hoststubgen/scripts/dump-jar b/ravenwood/tools/hoststubgen/scripts/dump-jar index 992665ed58ee..87652451359d 100755 --- a/tools/hoststubgen/scripts/dump-jar +++ b/ravenwood/tools/hoststubgen/scripts/dump-jar @@ -26,12 +26,12 @@ help() { Dump a *.class file - dump-jar [-v] [-s] [-o OUTPUT-FILENAME] JAR-FILE[: filename regex] [...] + dump-jar [-v] [-s] [-o OUTPUT-FILENAME] JAR-FILE[: class internal name regex] [...] Dump a jar file. If a filename contains a ':', then the following part - will be used to filter files in the jar file. + will be used to filter files in the jar file that matches against class internal names. For example, "file.jar:/MyClass$" will only dump "MyClass" in file.jar. @@ -78,16 +78,6 @@ if (( $simple )) ; then JAVAP_OPTS="-p -c -v" fi - -# Normalize a java class name. -# Convert '.' to '/' -# Remove the *.class suffix. -normalize() { - local name="$1" - name="${name%.class}" # Remove the .class suffix. - echo "$name" | tr '.' '/' -} - # Convert the output for `-s` as needed. filter_output() { if (( $simple )) ; then @@ -97,6 +87,7 @@ filter_output() { # - Remove the constant pool # - Remove the line number table # - Some other transient lines + # - Sometimes the javap shows mysterious warnings, so remove them too. # # `/PATTERN-1/,/PATTERN-1/{//!d}` is a trick to delete lines between two patterns, without # the start and the end lines. @@ -106,7 +97,8 @@ filter_output() { -e '/^ *line *[0-9][0-9]*: *[0-9][0-9]*$/d' \ -e '/SHA-256 checksum/d' \ -e '/Last modified/d' \ - -e '/^Classfile jar/d' + -e '/^Classfile jar/d' \ + -e '/\[warning\]/d' else cat # Print as-is. fi @@ -122,6 +114,12 @@ write_to_out() { fi } +# Read jar file names and remove the .class suffix. +# Also remove non-class files. +to_internal_names() { + sed -ne 's/\.class$//p' +} + for file in "${@}"; do # *.class? @@ -134,7 +132,7 @@ for file in "${@}"; do # Take the regex. Remove everything up to : in $file regex="" if [[ "$file" =~ : ]] ; then - regex="$(normalize "${file##*:}")" + regex="${file##*:}" fi # Remove everything after ':', inclusively, in $file. @@ -149,13 +147,9 @@ for file in "${@}"; do echo fi - jar tf "$file" | grep '\.class$' | sort | while read -r class ; do - if normalize "$class" | grep -q -- "$regex" ; then - echo "## Class: $class" - javap $dump_code_opt $JAVAP_OPTS -cp $file ${class%.class} - else - (( $verbose )) && echo "## Skipping class: $class" - fi + jar tf "$file" | sort | to_internal_names | grep -- "$regex" | while read -r class ; do + echo "## Class: $class.class" + javap $dump_code_opt $JAVAP_OPTS -cp "$file" "${class}" done else diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/Exceptions.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/Exceptions.kt index 910bf59b3d8d..f59e143c1e4e 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/Exceptions.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/Exceptions.kt @@ -15,6 +15,8 @@ */ package com.android.hoststubgen +import java.io.File + /** * We will not print the stack trace for exceptions implementing it. */ @@ -49,4 +51,22 @@ class InvalidAnnotationException(message: String) : Exception(message), UserErro /** * We use this for general "user" errors. */ -class HostStubGenUserErrorException(message: String) : Exception(message), UserErrorException +class GeneralUserErrorException(message: String) : Exception(message), UserErrorException + +/** Base exception class for invalid command line arguments. */ +open class ArgumentsException(message: String?) : Exception(message), UserErrorException + +/** Thrown when the same annotation is used with different annotation arguments. */ +class DuplicateAnnotationException(annotationName: String?) : + ArgumentsException("Duplicate annotation specified: '$annotationName'") + +/** Thrown when an input file does not exist. */ +class InputFileNotFoundException(filename: String) : + ArgumentsException("File '$filename' not found") + +fun String.ensureFileExists(): String { + if (!File(this).exists()) { + throw InputFileNotFoundException(this) + } + return this +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGen.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGen.kt index 7212beb6ae4b..6d8d7b768b91 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGen.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGen.kt @@ -22,19 +22,18 @@ import com.android.hoststubgen.filters.ClassWidePolicyPropagatingFilter import com.android.hoststubgen.filters.ConstantFilter import com.android.hoststubgen.filters.DefaultHookInjectingFilter import com.android.hoststubgen.filters.FilterPolicy +import com.android.hoststubgen.filters.FilterRemapper import com.android.hoststubgen.filters.ImplicitOutputFilter +import com.android.hoststubgen.filters.KeepNativeFilter import com.android.hoststubgen.filters.OutputFilter -import com.android.hoststubgen.filters.StubIntersectingFilter -import com.android.hoststubgen.filters.createFilterFromTextPolicyFile +import com.android.hoststubgen.filters.SanitizationFilter +import com.android.hoststubgen.filters.TextFileFilterPolicyParser import com.android.hoststubgen.filters.printAsTextPolicy import com.android.hoststubgen.utils.ClassFilter import com.android.hoststubgen.visitors.BaseAdapter import com.android.hoststubgen.visitors.PackageRedirectRemapper -import org.objectweb.asm.ClassReader -import org.objectweb.asm.ClassVisitor -import org.objectweb.asm.ClassWriter -import org.objectweb.asm.util.CheckClassAdapter import java.io.BufferedInputStream +import java.io.BufferedOutputStream import java.io.FileOutputStream import java.io.InputStream import java.io.OutputStream @@ -42,6 +41,12 @@ import java.io.PrintWriter import java.util.zip.ZipEntry import java.util.zip.ZipFile import java.util.zip.ZipOutputStream +import org.objectweb.asm.ClassReader +import org.objectweb.asm.ClassVisitor +import org.objectweb.asm.ClassWriter +import org.objectweb.asm.commons.ClassRemapper +import org.objectweb.asm.commons.Remapper +import org.objectweb.asm.util.CheckClassAdapter /** * Actual main class. @@ -56,46 +61,54 @@ class HostStubGen(val options: HostStubGenOptions) { // Dump the classes, if specified. options.inputJarDumpFile.ifSet { - PrintWriter(it).use { pw -> allClasses.dump(pw) } - log.i("Dump file created at $it") + log.iTime("Dump file created at $it") { + PrintWriter(it).use { pw -> allClasses.dump(pw) } + } } options.inputJarAsKeepAllFile.ifSet { - PrintWriter(it).use { - pw -> allClasses.forEach { - classNode -> printAsTextPolicy(pw, classNode) + log.iTime("Dump file created at $it") { + PrintWriter(it).use { pw -> + allClasses.forEach { classNode -> + printAsTextPolicy(pw, classNode) + } } } - log.i("Dump file created at $it") } // Build the filters. val filter = buildFilter(errors, allClasses, options) + val filterRemapper = FilterRemapper(filter) + // Transform the jar. convert( - options.inJar.get, - options.outStubJar.get, - options.outImplJar.get, - filter, - options.enableClassChecker.get, - allClasses, - errors, - stats, + options.inJar.get, + options.outJar.get, + filter, + options.enableClassChecker.get, + allClasses, + errors, + stats, + filterRemapper, + options.numShards.get, + options.shard.get, ) // Dump statistics, if specified. options.statsFile.ifSet { - PrintWriter(it).use { pw -> stats.dumpOverview(pw) } - log.i("Dump file created at $it") + log.iTime("Dump file created at $it") { + PrintWriter(it).use { pw -> stats.dumpOverview(pw) } + } } options.apiListFile.ifSet { - PrintWriter(it).use { pw -> - // TODO, when dumping a jar that's not framework-minus-apex.jar, we need to feed - // framework-minus-apex.jar so that we can dump inherited methods from it. - ApiDumper(pw, allClasses, null, filter).dump() + log.iTime("API list file created at $it") { + PrintWriter(it).use { pw -> + // TODO, when dumping a jar that's not framework-minus-apex.jar, we need to feed + // framework-minus-apex.jar so that we can dump inherited methods from it. + ApiDumper(pw, allClasses, null, filter).dump() + } } - log.i("API list file created at $it") } } @@ -104,10 +117,10 @@ class HostStubGen(val options: HostStubGenOptions) { * jars, and "how". (e.g. with substitution?) */ private fun buildFilter( - errors: HostStubGenErrors, - allClasses: ClassNodes, - options: HostStubGenOptions, - ): OutputFilter { + errors: HostStubGenErrors, + allClasses: ClassNodes, + options: HostStubGenOptions, + ): OutputFilter { // We build a "chain" of multiple filters here. // // The filters are build in from "inside", meaning the first filter created here is @@ -121,6 +134,9 @@ class HostStubGen(val options: HostStubGenOptions) { // The first filter is for the default policy from the command line options. var filter: OutputFilter = ConstantFilter(options.defaultPolicy.get, "default-by-options") + // Next, we build a filter that preserves all native methods by default + filter = KeepNativeFilter(allClasses, filter) + // Next, we need a filter that resolves "class-wide" policies. // This is used when a member (methods, fields, nested classes) don't get any polices // from upper filters. e.g. when a method has no annotations, then this filter will apply @@ -146,118 +162,118 @@ class HostStubGen(val options: HostStubGenOptions) { filter = AnnotationBasedFilter( errors, allClasses, - options.stubAnnotations, options.keepAnnotations, - options.stubClassAnnotations, options.keepClassAnnotations, options.throwAnnotations, options.removeAnnotations, + options.ignoreAnnotations, options.substituteAnnotations, - options.nativeSubstituteAnnotations, + options.redirectAnnotations, + options.redirectionClassAnnotations, options.classLoadHookAnnotations, options.keepStaticInitializerAnnotations, annotationAllowedClassesFilter, - filter, + filter ) // Next, "text based" filter, which allows to override polices without touching // the target code. - options.policyOverrideFile.ifSet { - filter = createFilterFromTextPolicyFile(it, allClasses, filter) - } - - // If `--intersect-stub-jar` is provided, load from these jar files too. - // We use this to restrict stub APIs to public/system/test APIs, - // by intersecting with a stub jar file created by metalava. - if (options.intersectStubJars.size > 0) { - val intersectingJars = loadIntersectingJars(options.intersectStubJars) - - filter = StubIntersectingFilter(errors, intersectingJars, filter) + if (options.policyOverrideFiles.isNotEmpty()) { + val parser = TextFileFilterPolicyParser(allClasses, filter) + options.policyOverrideFiles.forEach(parser::parse) + filter = parser.createOutputFilter() } // Apply the implicit filter. filter = ImplicitOutputFilter(errors, allClasses, filter) - return filter - } - - /** - * Load jar files specified with "--intersect-stub-jar". - */ - private fun loadIntersectingJars(filenames: Set<String>): Map<String, ClassNodes> { - val intersectingJars = mutableMapOf<String, ClassNodes>() + // Add a final sanitization step. + filter = SanitizationFilter(errors, allClasses, filter) - filenames.forEach { filename -> - intersectingJars[filename] = ClassNodes.loadClassStructures(filename) - } - return intersectingJars + return filter } /** * Convert a JAR file into "stub" and "impl" JAR files. */ private fun convert( - inJar: String, - outStubJar: String?, - outImplJar: String?, - filter: OutputFilter, - enableChecker: Boolean, - classes: ClassNodes, - errors: HostStubGenErrors, - stats: HostStubGenStats, - ) { - log.i("Converting %s into [stub: %s, impl: %s] ...", inJar, outStubJar, outImplJar) + inJar: String, + outJar: String?, + filter: OutputFilter, + enableChecker: Boolean, + classes: ClassNodes, + errors: HostStubGenErrors, + stats: HostStubGenStats, + remapper: Remapper?, + numShards: Int, + shard: Int + ) { + log.i("Converting %s into %s ...", inJar, outJar) log.i("ASM CheckClassAdapter is %s", if (enableChecker) "enabled" else "disabled") - val start = System.currentTimeMillis() + log.iTime("Transforming jar") { + val packageRedirector = PackageRedirectRemapper(options.packageRedirects) - val packageRedirector = PackageRedirectRemapper(options.packageRedirects) + var itemIndex = 0 + var numItemsProcessed = 0 + var numItems = -1 // == Unknown - log.withIndent { - // Open the input jar file and process each entry. - ZipFile(inJar).use { inZip -> - maybeWithZipOutputStream(outStubJar) { stubOutStream -> - maybeWithZipOutputStream(outImplJar) { implOutStream -> + log.withIndent { + // Open the input jar file and process each entry. + ZipFile(inJar).use { inZip -> + + numItems = inZip.size() + val shardStart = numItems * shard / numShards + val shardNextStart = numItems * (shard + 1) / numShards + + maybeWithZipOutputStream(outJar) { outStream -> val inEntries = inZip.entries() while (inEntries.hasMoreElements()) { val entry = inEntries.nextElement() - convertSingleEntry(inZip, entry, stubOutStream, implOutStream, - filter, packageRedirector, enableChecker, classes, errors, - stats) + val inShard = (shardStart <= itemIndex) + && (itemIndex < shardNextStart) + itemIndex++ + if (!inShard) { + continue + } + convertSingleEntry( + inZip, entry, outStream, filter, + packageRedirector, remapper, enableChecker, + classes, errors, stats + ) + numItemsProcessed++ } log.i("Converted all entries.") } + outJar?.let { log.i("Created: $it") } } - outStubJar?.let { log.i("Created stub: $it") } - outImplJar?.let { log.i("Created impl: $it") } } + log.i("%d / %d item(s) processed.", numItemsProcessed, numItems) } - val end = System.currentTimeMillis() - log.i("Done transforming the jar in %.1f second(s).", (end - start) / 1000.0) } private fun <T> maybeWithZipOutputStream(filename: String?, block: (ZipOutputStream?) -> T): T { if (filename == null) { return block(null) } - return ZipOutputStream(FileOutputStream(filename)).use(block) + return ZipOutputStream(BufferedOutputStream(FileOutputStream(filename))).use(block) } /** * Convert a single ZIP entry, which may or may not be a class file. */ private fun convertSingleEntry( - inZip: ZipFile, - entry: ZipEntry, - stubOutStream: ZipOutputStream?, - implOutStream: ZipOutputStream?, - filter: OutputFilter, - packageRedirector: PackageRedirectRemapper, - enableChecker: Boolean, - classes: ClassNodes, - errors: HostStubGenErrors, - stats: HostStubGenStats, - ) { + inZip: ZipFile, + entry: ZipEntry, + outStream: ZipOutputStream?, + filter: OutputFilter, + packageRedirector: PackageRedirectRemapper, + remapper: Remapper?, + enableChecker: Boolean, + classes: ClassNodes, + errors: HostStubGenErrors, + stats: HostStubGenStats + ) { log.d("Entry: %s", entry.name) log.withIndent { val name = entry.name @@ -269,8 +285,10 @@ class HostStubGen(val options: HostStubGenOptions) { // If it's a class, convert it. if (name.endsWith(".class")) { - processSingleClass(inZip, entry, stubOutStream, implOutStream, filter, - packageRedirector, enableChecker, classes, errors, stats) + processSingleClass( + inZip, entry, outStream, filter, packageRedirector, + remapper, enableChecker, classes, errors, stats + ) return } @@ -278,17 +296,14 @@ class HostStubGen(val options: HostStubGenOptions) { // - *.uau seems to contain hidden API information. // - *_compat_config.xml is also about compat-framework. - if (name.endsWith(".uau") || - name.endsWith("_compat_config.xml")) { + if (name.endsWith(".uau") || name.endsWith("_compat_config.xml")) { log.d("Not needed: %s", entry.name) return } // Unknown type, we just copy it to both output zip files. - // TODO: We probably shouldn't do it for stub jar? log.v("Copying: %s", entry.name) - stubOutStream?.let { copyZipEntry(inZip, entry, it) } - implOutStream?.let { copyZipEntry(inZip, entry, it) } + outStream?.let { copyZipEntry(inZip, entry, it) } } } @@ -296,17 +311,18 @@ class HostStubGen(val options: HostStubGenOptions) { * Copy a single ZIP entry to the output. */ private fun copyZipEntry( - inZip: ZipFile, - entry: ZipEntry, - out: ZipOutputStream, - ) { - BufferedInputStream(inZip.getInputStream(entry)).use { bis -> + inZip: ZipFile, + entry: ZipEntry, + out: ZipOutputStream, + ) { + // TODO: It seems like copying entries this way is _very_ slow, + // even with out.setLevel(0). Look for other ways to do it. + + inZip.getInputStream(entry).use { ins -> // Copy unknown entries as is to the impl out. (but not to the stub out.) val outEntry = ZipEntry(entry.name) out.putNextEntry(outEntry) - while (bis.available() > 0) { - out.write(bis.read()) - } + ins.transferTo(out) out.closeEntry() } } @@ -315,47 +331,44 @@ class HostStubGen(val options: HostStubGenOptions) { * Convert a single class to "stub" and "impl". */ private fun processSingleClass( - inZip: ZipFile, - entry: ZipEntry, - stubOutStream: ZipOutputStream?, - implOutStream: ZipOutputStream?, - filter: OutputFilter, - packageRedirector: PackageRedirectRemapper, - enableChecker: Boolean, - classes: ClassNodes, - errors: HostStubGenErrors, - stats: HostStubGenStats, - ) { + inZip: ZipFile, + entry: ZipEntry, + outStream: ZipOutputStream?, + filter: OutputFilter, + packageRedirector: PackageRedirectRemapper, + remapper: Remapper?, + enableChecker: Boolean, + classes: ClassNodes, + errors: HostStubGenErrors, + stats: HostStubGenStats + ) { val classInternalName = entry.name.replaceFirst("\\.class$".toRegex(), "") val classPolicy = filter.getPolicyForClass(classInternalName) if (classPolicy.policy == FilterPolicy.Remove) { log.d("Removing class: %s %s", classInternalName, classPolicy) return } - // Generate stub first. - if (stubOutStream != null && classPolicy.policy.needsInStub) { - log.v("Creating stub class: %s Policy: %s", classInternalName, classPolicy) - log.withIndent { - BufferedInputStream(inZip.getInputStream(entry)).use { bis -> - val newEntry = ZipEntry(entry.name) - stubOutStream.putNextEntry(newEntry) - convertClass(classInternalName, /*forImpl=*/false, bis, - stubOutStream, filter, packageRedirector, enableChecker, classes, - errors, null) - stubOutStream.closeEntry() - } + // If we're applying a remapper, we need to rename the file too. + var newName = entry.name + remapper?.mapType(classInternalName)?.let { remappedName -> + if (remappedName != classInternalName) { + log.d("Renaming class file: %s -> %s", classInternalName, remappedName) + newName = "$remappedName.class" } } - if (implOutStream != null && classPolicy.policy.needsInImpl) { - log.v("Creating impl class: %s Policy: %s", classInternalName, classPolicy) + + if (outStream != null) { + log.v("Creating class: %s Policy: %s", classInternalName, classPolicy) log.withIndent { BufferedInputStream(inZip.getInputStream(entry)).use { bis -> - val newEntry = ZipEntry(entry.name) - implOutStream.putNextEntry(newEntry) - convertClass(classInternalName, /*forImpl=*/true, bis, - implOutStream, filter, packageRedirector, enableChecker, classes, - errors, stats) - implOutStream.closeEntry() + val newEntry = ZipEntry(newName) + outStream.putNextEntry(newEntry) + convertClass( + classInternalName, bis, + outStream, filter, packageRedirector, remapper, + enableChecker, classes, errors, stats + ) + outStream.closeEntry() } } } @@ -365,17 +378,17 @@ class HostStubGen(val options: HostStubGenOptions) { * Convert a single class to either "stub" or "impl". */ private fun convertClass( - classInternalName: String, - forImpl: Boolean, - input: InputStream, - out: OutputStream, - filter: OutputFilter, - packageRedirector: PackageRedirectRemapper, - enableChecker: Boolean, - classes: ClassNodes, - errors: HostStubGenErrors, - stats: HostStubGenStats?, - ) { + classInternalName: String, + input: InputStream, + out: OutputStream, + filter: OutputFilter, + packageRedirector: PackageRedirectRemapper, + remapper: Remapper?, + enableChecker: Boolean, + classes: ClassNodes, + errors: HostStubGenErrors, + stats: HostStubGenStats? + ) { val cr = ClassReader(input) // COMPUTE_FRAMES wouldn't be happy if code uses @@ -387,15 +400,22 @@ class HostStubGen(val options: HostStubGenOptions) { if (enableChecker) { outVisitor = CheckClassAdapter(outVisitor) } + + // Remapping should happen at the end. + remapper?.let { + outVisitor = ClassRemapper(outVisitor, remapper) + } + val visitorOptions = BaseAdapter.Options( - enablePreTrace = options.enablePreTrace.get, - enablePostTrace = options.enablePostTrace.get, - enableNonStubMethodCallDetection = options.enableNonStubMethodCallDetection.get, - errors = errors, - stats = stats, + errors = errors, + stats = stats, + enablePreTrace = options.enablePreTrace.get, + enablePostTrace = options.enablePostTrace.get, + ) + outVisitor = BaseAdapter.getVisitor( + classInternalName, classes, outVisitor, filter, + packageRedirector, visitorOptions ) - outVisitor = BaseAdapter.getVisitor(classInternalName, classes, outVisitor, filter, - packageRedirector, forImpl, visitorOptions) cr.accept(outVisitor, ClassReader.EXPAND_FRAMES) val data = cw.toByteArray() diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenErrors.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenErrors.kt index 6b01d48b52b1..a218c5599553 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenErrors.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenErrors.kt @@ -19,6 +19,6 @@ open class HostStubGenErrors { open fun onErrorFound(message: String) { // TODO: For now, we just throw as soon as any error is found, but eventually we should keep // all errors and print them at the end. - throw HostStubGenUserErrorException(message) + throw GeneralUserErrorException(message) } }
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenLogger.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenLogger.kt index 18065ba56c52..4bcee409aaec 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenLogger.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenLogger.kt @@ -89,6 +89,8 @@ class HostStubGenLogger { addPrinter(StreamPrinter(level, PrintWriter(BufferedOutputStream( FileOutputStream(logFilename))))) + log.i("Log file set: $logFilename for $level") + return this } @@ -121,7 +123,10 @@ class HostStubGenLogger { return level.ordinal <= maxLogLevel.ordinal } - private fun println(level: LogLevel, message: String) { + fun println(level: LogLevel, message: String) { + if (message.isEmpty()) { + return // Don't print an empty message. + } printers.forEach { if (it.logLevel.ordinal >= level.ordinal) { it.println(level, indent, message) @@ -129,7 +134,7 @@ class HostStubGenLogger { } } - private fun println(level: LogLevel, format: String, vararg args: Any?) { + fun println(level: LogLevel, format: String, vararg args: Any?) { if (isEnabled(level)) { println(level, String.format(format, *args)) } @@ -185,6 +190,45 @@ class HostStubGenLogger { println(LogLevel.Debug, format, *args) } + inline fun <T> logTime(level: LogLevel, message: String, block: () -> T): Double { + var ret: Double = -1.0 + val start = System.currentTimeMillis() + try { + block() + } finally { + val end = System.currentTimeMillis() + ret = (end - start) / 1000.0 + if (isEnabled(level)) { + println(level, + String.format("%s: took %.1f second(s).", message, (end - start) / 1000.0)) + } + } + return ret + } + + /** Do an "i" log with how long it took. */ + inline fun <T> iTime(message: String, block: () -> T): Double { + return logTime(LogLevel.Info, message, block) + } + + /** Do a "v" log with how long it took. */ + inline fun <T> vTime(message: String, block: () -> T): Double { + return logTime(LogLevel.Verbose, message, block) + } + + /** Do a "d" log with how long it took. */ + inline fun <T> dTime(message: String, block: () -> T): Double { + return logTime(LogLevel.Debug, message, block) + } + + /** + * Similar to the other "xTime" methods, but the message is not supposed to be printed. + * It's only used to measure the duration with the same interface as other log methods. + */ + inline fun <T> nTime(block: () -> T): Double { + return logTime(LogLevel.Debug, "", block) + } + inline fun forVerbose(block: () -> Unit) { if (isEnabled(LogLevel.Verbose)) { block() @@ -228,6 +272,21 @@ class HostStubGenLogger { } } } + + /** + * Handle log-related command line arguments. + */ + fun maybeHandleCommandLineArg(currentArg: String, nextArgProvider: () -> String): Boolean { + when (currentArg) { + "-v", "--verbose" -> setConsoleLogLevel(LogLevel.Verbose) + "-d", "--debug" -> setConsoleLogLevel(LogLevel.Debug) + "-q", "--quiet" -> setConsoleLogLevel(LogLevel.None) + "--verbose-log" -> addFilePrinter(LogLevel.Verbose, nextArgProvider()) + "--debug-log" -> addFilePrinter(LogLevel.Debug, nextArgProvider()) + else -> return false + } + return true + } } private interface LogPrinter { diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenMain.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenMain.kt index 45e7e301c0d1..85064661cd2b 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenMain.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenMain.kt @@ -24,20 +24,32 @@ import java.io.PrintWriter */ fun main(args: Array<String>) { executableName = "HostStubGen" + runMainWithBoilerplate { + // Parse the command line arguments. + var clanupOnError = false + try { + val options = HostStubGenOptions.parseArgs(args) + clanupOnError = options.cleanUpOnError.get - var success = false - var clanupOnError = false + log.v("$executableName started") + log.v("Options: $options") - try { - // Parse the command line arguments. - val options = HostStubGenOptions.parseArgs(args) - clanupOnError = options.cleanUpOnError.get + // Run. + HostStubGen(options).run() + } catch (e: Throwable) { + if (clanupOnError) { + TODO("Remove output jars here") + } + throw e + } + } +} - log.v("$executableName started") - log.v("Options: $options") +inline fun runMainWithBoilerplate(realMain: () -> Unit) { + var success = false - // Run. - HostStubGen(options).run() + try { + realMain() success = true } catch (e: Throwable) { @@ -45,9 +57,6 @@ fun main(args: Array<String>) { if (e !is UserErrorException) { e.printStackTrace(PrintWriter(log.getWriter(LogLevel.Error))) } - if (clanupOnError) { - TODO("Remove output jars here") - } } finally { log.i("$executableName finished") log.flush() diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenOptions.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenOptions.kt index e192516d334d..55e853e3e2fb 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenOptions.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenOptions.kt @@ -17,20 +17,17 @@ package com.android.hoststubgen import com.android.hoststubgen.filters.FilterPolicy import java.io.BufferedReader -import java.io.File import java.io.FileReader /** * A single value that can only set once. */ -class SetOnce<T>( - private var value: T, -) { +open class SetOnce<T>(private var value: T) { class SetMoreThanOnceException : Exception() private var set = false - fun set(v: T) { + fun set(v: T): T { if (set) { throw SetMoreThanOnceException() } @@ -39,6 +36,7 @@ class SetOnce<T>( } set = true value = v + return v } val get: T @@ -59,6 +57,16 @@ class SetOnce<T>( } } +class IntSetOnce(value: Int) : SetOnce<Int>(value) { + fun set(v: String): Int { + try { + return this.set(v.toInt()) + } catch (e: NumberFormatException) { + throw ArgumentsException("Invalid integer $v") + } + } +} + /** * Options that can be set from command line arguments. */ @@ -66,25 +74,22 @@ class HostStubGenOptions( /** Input jar file*/ var inJar: SetOnce<String> = SetOnce(""), - /** Output stub jar file */ - var outStubJar: SetOnce<String?> = SetOnce(null), - - /** Output implementation jar file */ - var outImplJar: SetOnce<String?> = SetOnce(null), + /** Output jar file */ + var outJar: SetOnce<String?> = SetOnce(null), var inputJarDumpFile: SetOnce<String?> = SetOnce(null), var inputJarAsKeepAllFile: SetOnce<String?> = SetOnce(null), - var stubAnnotations: MutableSet<String> = mutableSetOf(), var keepAnnotations: MutableSet<String> = mutableSetOf(), var throwAnnotations: MutableSet<String> = mutableSetOf(), var removeAnnotations: MutableSet<String> = mutableSetOf(), - var stubClassAnnotations: MutableSet<String> = mutableSetOf(), + var ignoreAnnotations: MutableSet<String> = mutableSetOf(), var keepClassAnnotations: MutableSet<String> = mutableSetOf(), + var redirectAnnotations: MutableSet<String> = mutableSetOf(), var substituteAnnotations: MutableSet<String> = mutableSetOf(), - var nativeSubstituteAnnotations: MutableSet<String> = mutableSetOf(), + var redirectionClassAnnotations: MutableSet<String> = mutableSetOf(), var classLoadHookAnnotations: MutableSet<String> = mutableSetOf(), var keepStaticInitializerAnnotations: MutableSet<String> = mutableSetOf(), @@ -95,9 +100,7 @@ class HostStubGenOptions( var defaultClassLoadHook: SetOnce<String?> = SetOnce(null), var defaultMethodCallHook: SetOnce<String?> = SetOnce(null), - var intersectStubJars: MutableSet<String> = mutableSetOf(), - - var policyOverrideFile: SetOnce<String?> = SetOnce(null), + var policyOverrideFiles: MutableList<String> = mutableListOf(), var defaultPolicy: SetOnce<FilterPolicy> = SetOnce(FilterPolicy.Remove), @@ -107,21 +110,15 @@ class HostStubGenOptions( var enablePreTrace: SetOnce<Boolean> = SetOnce(false), var enablePostTrace: SetOnce<Boolean> = SetOnce(false), - var enableNonStubMethodCallDetection: SetOnce<Boolean> = SetOnce(false), - var statsFile: SetOnce<String?> = SetOnce(null), var apiListFile: SetOnce<String?> = SetOnce(null), + + var numShards: IntSetOnce = IntSetOnce(1), + var shard: IntSetOnce = IntSetOnce(0), ) { companion object { - private fun String.ensureFileExists(): String { - if (!File(this).exists()) { - throw InputFileNotFoundException(this) - } - return this - } - private fun parsePackageRedirect(fromColonTo: String): Pair<String, String> { val colon = fromColonTo.indexOf(':') if ((colon < 1) || (colon + 1 >= fromColonTo.length)) { @@ -134,7 +131,7 @@ class HostStubGenOptions( fun parseArgs(args: Array<String>): HostStubGenOptions { val ret = HostStubGenOptions() - val ai = ArgIterator(expandAtFiles(args)) + val ai = ArgIterator.withAtFiles(args) var allAnnotations = mutableSetOf<String>() @@ -145,39 +142,29 @@ class HostStubGenOptions( return name } - fun setLogFile(level: LogLevel, filename: String) { - log.addFilePrinter(level, filename) - log.i("$level log file: $filename") - } - while (true) { - val arg = ai.nextArgOptional() - if (arg == null) { - break - } + val arg = ai.nextArgOptional() ?: break // Define some shorthands... fun nextArg(): String = ai.nextArgRequired(arg) - fun SetOnce<String>.setNextStringArg(): String = nextArg().also { this.set(it) } - fun SetOnce<String?>.setNextStringArg(): String = nextArg().also { this.set(it) } fun MutableSet<String>.addUniqueAnnotationArg(): String = nextArg().also { this += ensureUniqueAnnotation(it) } + if (log.maybeHandleCommandLineArg(arg) { nextArg() }) { + continue + } try { when (arg) { // TODO: Write help "-h", "--help" -> TODO("Help is not implemented yet") - "-v", "--verbose" -> log.setConsoleLogLevel(LogLevel.Verbose) - "-d", "--debug" -> log.setConsoleLogLevel(LogLevel.Debug) - "-q", "--quiet" -> log.setConsoleLogLevel(LogLevel.None) - - "--in-jar" -> ret.inJar.setNextStringArg().ensureFileExists() - "--out-stub-jar" -> ret.outStubJar.setNextStringArg() - "--out-impl-jar" -> ret.outImplJar.setNextStringArg() + "--in-jar" -> ret.inJar.set(nextArg()).ensureFileExists() + // We support both arguments because some AOSP dependencies + // still use the old argument + "--out-jar", "--out-impl-jar" -> ret.outJar.set(nextArg()) "--policy-override-file" -> - ret.policyOverrideFile.setNextStringArg().ensureFileExists() + ret.policyOverrideFiles.add(nextArg().ensureFileExists()) "--clean-up-on-error" -> ret.cleanUpOnError.set(true) "--no-clean-up-on-error" -> ret.cleanUpOnError.set(false) @@ -185,17 +172,10 @@ class HostStubGenOptions( "--default-remove" -> ret.defaultPolicy.set(FilterPolicy.Remove) "--default-throw" -> ret.defaultPolicy.set(FilterPolicy.Throw) "--default-keep" -> ret.defaultPolicy.set(FilterPolicy.Keep) - "--default-stub" -> ret.defaultPolicy.set(FilterPolicy.Stub) - - "--stub-annotation" -> - ret.stubAnnotations.addUniqueAnnotationArg() "--keep-annotation" -> ret.keepAnnotations.addUniqueAnnotationArg() - "--stub-class-annotation" -> - ret.stubClassAnnotations.addUniqueAnnotationArg() - "--keep-class-annotation" -> ret.keepClassAnnotations.addUniqueAnnotationArg() @@ -205,11 +185,17 @@ class HostStubGenOptions( "--remove-annotation" -> ret.removeAnnotations.addUniqueAnnotationArg() + "--ignore-annotation" -> + ret.ignoreAnnotations.addUniqueAnnotationArg() + "--substitute-annotation" -> ret.substituteAnnotations.addUniqueAnnotationArg() - "--native-substitute-annotation" -> - ret.nativeSubstituteAnnotations.addUniqueAnnotationArg() + "--redirect-annotation" -> + ret.redirectAnnotations.addUniqueAnnotationArg() + + "--redirection-class-annotation" -> + ret.redirectionClassAnnotations.addUniqueAnnotationArg() "--class-load-hook-annotation" -> ret.classLoadHookAnnotations.addUniqueAnnotationArg() @@ -221,19 +207,16 @@ class HostStubGenOptions( ret.packageRedirects += parsePackageRedirect(nextArg()) "--annotation-allowed-classes-file" -> - ret.annotationAllowedClassesFile.setNextStringArg() + ret.annotationAllowedClassesFile.set(nextArg()) "--default-class-load-hook" -> - ret.defaultClassLoadHook.setNextStringArg() + ret.defaultClassLoadHook.set(nextArg()) "--default-method-call-hook" -> - ret.defaultMethodCallHook.setNextStringArg() - - "--intersect-stub-jar" -> - ret.intersectStubJars += nextArg().ensureFileExists() + ret.defaultMethodCallHook.set(nextArg()) "--gen-keep-all-file" -> - ret.inputJarAsKeepAllFile.setNextStringArg() + ret.inputJarAsKeepAllFile.set(nextArg()) // Following options are for debugging. "--enable-class-checker" -> ret.enableClassChecker.set(true) @@ -245,19 +228,21 @@ class HostStubGenOptions( "--enable-post-trace" -> ret.enablePostTrace.set(true) "--no-post-trace" -> ret.enablePostTrace.set(false) - "--enable-non-stub-method-check" -> - ret.enableNonStubMethodCallDetection.set(true) - - "--no-non-stub-method-check" -> - ret.enableNonStubMethodCallDetection.set(false) + "--gen-input-dump-file" -> ret.inputJarDumpFile.set(nextArg()) - "--gen-input-dump-file" -> ret.inputJarDumpFile.setNextStringArg() + "--stats-file" -> ret.statsFile.set(nextArg()) + "--supported-api-list-file" -> ret.apiListFile.set(nextArg()) - "--verbose-log" -> setLogFile(LogLevel.Verbose, nextArg()) - "--debug-log" -> setLogFile(LogLevel.Debug, nextArg()) - - "--stats-file" -> ret.statsFile.setNextStringArg() - "--supported-api-list-file" -> ret.apiListFile.setNextStringArg() + "--num-shards" -> ret.numShards.set(nextArg()).also { + if (it < 1) { + throw ArgumentsException("$arg must be positive integer") + } + } + "--shard-index" -> ret.shard.set(nextArg()).also { + if (it < 0) { + throw ArgumentsException("$arg must be positive integer or zero") + } + } else -> throw ArgumentsException("Unknown option: $arg") } @@ -269,98 +254,20 @@ class HostStubGenOptions( if (!ret.inJar.isSet) { throw ArgumentsException("Required option missing: --in-jar") } - if (!ret.outStubJar.isSet && !ret.outImplJar.isSet) { - log.w("Neither --out-stub-jar nor --out-impl-jar is set." + - " $executableName will not generate jar files.") + if (!ret.outJar.isSet) { + log.w("--out-jar is not set. $executableName will not generate jar files.") } - - if (ret.enableNonStubMethodCallDetection.get) { - log.w("--enable-non-stub-method-check is not fully implemented yet." + - " See the todo in doesMethodNeedNonStubCallCheck().") + if (ret.numShards.isSet != ret.shard.isSet) { + throw ArgumentsException("--num-shards and --shard-index must be used together") } - return ret - } - - /** - * Scan the arguments, and if any of them starts with an `@`, then load from the file - * and use its content as arguments. - * - * In this file, each line is treated as a single argument. - * - * The file can contain '#' as comments. - */ - private fun expandAtFiles(args: Array<String>): List<String> { - val ret = mutableListOf<String>() - - args.forEach { arg -> - if (!arg.startsWith('@')) { - ret += arg - return@forEach + if (ret.numShards.isSet) { + if (ret.shard.get >= ret.numShards.get) { + throw ArgumentsException("--shard-index must be smaller than --num-shards") } - // Read from the file, and add each line to the result. - val filename = arg.substring(1).ensureFileExists() - - log.v("Expanding options file $filename") - - BufferedReader(FileReader(filename)).use { reader -> - while (true) { - var line = reader.readLine() - if (line == null) { - break // EOF - } - - line = normalizeTextLine(line) - if (line.isNotEmpty()) { - ret += line - } - } - } - } - return ret - } - } - - open class ArgumentsException(message: String?) : Exception(message), UserErrorException - - /** Thrown when the same annotation is used with different annotation arguments. */ - class DuplicateAnnotationException(annotationName: String?) : - ArgumentsException("Duplicate annotation specified: '$annotationName'") - - /** Thrown when an input file does not exist. */ - class InputFileNotFoundException(filename: String) : - ArgumentsException("File '$filename' not found") - - private class ArgIterator( - private val args: List<String>, - private var currentIndex: Int = -1 - ) { - val current: String - get() = args.get(currentIndex) - - /** - * Get the next argument, or [null] if there's no more arguments. - */ - fun nextArgOptional(): String? { - if ((currentIndex + 1) >= args.size) { - return null } - return args.get(++currentIndex) - } - /** - * Get the next argument, or throw if - */ - fun nextArgRequired(argName: String): String { - nextArgOptional().let { - if (it == null) { - throw ArgumentsException("Missing parameter for option $argName") - } - if (it.isEmpty()) { - throw ArgumentsException("Parameter can't be empty for option $argName") - } - return it - } + return ret } } @@ -368,35 +275,110 @@ class HostStubGenOptions( return """ HostStubGenOptions{ inJar='$inJar', - outStubJar='$outStubJar', - outImplJar='$outImplJar', + outJar='$outJar', inputJarDumpFile=$inputJarDumpFile, inputJarAsKeepAllFile=$inputJarAsKeepAllFile, - stubAnnotations=$stubAnnotations, keepAnnotations=$keepAnnotations, throwAnnotations=$throwAnnotations, removeAnnotations=$removeAnnotations, - stubClassAnnotations=$stubClassAnnotations, + ignoreAnnotations=$ignoreAnnotations, keepClassAnnotations=$keepClassAnnotations, substituteAnnotations=$substituteAnnotations, - nativeSubstituteAnnotations=$nativeSubstituteAnnotations, + nativeSubstituteAnnotations=$redirectionClassAnnotations, classLoadHookAnnotations=$classLoadHookAnnotations, keepStaticInitializerAnnotations=$keepStaticInitializerAnnotations, packageRedirects=$packageRedirects, - $annotationAllowedClassesFile=$annotationAllowedClassesFile, + annotationAllowedClassesFile=$annotationAllowedClassesFile, defaultClassLoadHook=$defaultClassLoadHook, defaultMethodCallHook=$defaultMethodCallHook, - intersectStubJars=$intersectStubJars, - policyOverrideFile=$policyOverrideFile, + policyOverrideFiles=${policyOverrideFiles.toTypedArray().contentToString()}, defaultPolicy=$defaultPolicy, cleanUpOnError=$cleanUpOnError, enableClassChecker=$enableClassChecker, enablePreTrace=$enablePreTrace, enablePostTrace=$enablePostTrace, - enableNonStubMethodCallDetection=$enableNonStubMethodCallDetection, statsFile=$statsFile, apiListFile=$apiListFile, + numShards=$numShards, + shard=$shard, } """.trimIndent() } } + +class ArgIterator( + private val args: List<String>, + private var currentIndex: Int = -1 +) { + val current: String + get() = args.get(currentIndex) + + /** + * Get the next argument, or [null] if there's no more arguments. + */ + fun nextArgOptional(): String? { + if ((currentIndex + 1) >= args.size) { + return null + } + return args.get(++currentIndex) + } + + /** + * Get the next argument, or throw if + */ + fun nextArgRequired(argName: String): String { + nextArgOptional().let { + if (it == null) { + throw ArgumentsException("Missing parameter for option $argName") + } + if (it.isEmpty()) { + throw ArgumentsException("Parameter can't be empty for option $argName") + } + return it + } + } + + companion object { + fun withAtFiles(args: Array<String>): ArgIterator { + return ArgIterator(expandAtFiles(args)) + } + } +} + +/** + * Scan the arguments, and if any of them starts with an `@`, then load from the file + * and use its content as arguments. + * + * In this file, each line is treated as a single argument. + * + * The file can contain '#' as comments. + */ +private fun expandAtFiles(args: Array<String>): List<String> { + val ret = mutableListOf<String>() + + args.forEach { arg -> + if (!arg.startsWith('@')) { + ret += arg + return@forEach + } + // Read from the file, and add each line to the result. + val filename = arg.substring(1).ensureFileExists() + + log.v("Expanding options file $filename") + + BufferedReader(FileReader(filename)).use { reader -> + while (true) { + var line = reader.readLine() + if (line == null) { + break // EOF + } + + line = normalizeTextLine(line) + if (line.isNotEmpty()) { + ret += line + } + } + } + } + return ret +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenStats.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenStats.kt index 9045db210495..9045db210495 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/HostStubGenStats.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/HostStubGenStats.kt diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/Utils.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/Utils.kt index 10179eefcb95..10179eefcb95 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/Utils.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/Utils.kt diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/asm/AsmUtils.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/asm/AsmUtils.kt index 3f2b13aed5c0..f47aaba8ef22 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/asm/AsmUtils.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/asm/AsmUtils.kt @@ -29,36 +29,65 @@ import org.objectweb.asm.tree.MethodNode /** Name of the class initializer method. */ -val CLASS_INITIALIZER_NAME = "<clinit>" +const val CLASS_INITIALIZER_NAME = "<clinit>" /** Descriptor of the class initializer method. */ -val CLASS_INITIALIZER_DESC = "()V" +const val CLASS_INITIALIZER_DESC = "()V" /** Name of constructors. */ -val CTOR_NAME = "<init>" +const val CTOR_NAME = "<init>" /** - * Find any of [anyAnnotations] from the list of visible / invisible annotations. + * Find any of [set] from the list of visible / invisible annotations. */ fun findAnyAnnotation( - anyAnnotations: Set<String>, - visibleAnnotations: List<AnnotationNode>?, - invisibleAnnotations: List<AnnotationNode>?, - ): AnnotationNode? { - for (an in visibleAnnotations ?: emptyList()) { - if (anyAnnotations.contains(an.desc)) { - return an - } - } - for (an in invisibleAnnotations ?: emptyList()) { - if (anyAnnotations.contains(an.desc)) { - return an - } - } - return null + set: Set<String>, + visibleAnnotations: List<AnnotationNode>?, + invisibleAnnotations: List<AnnotationNode>?, +): AnnotationNode? { + return visibleAnnotations?.find { it.desc in set } + ?: invisibleAnnotations?.find { it.desc in set } } -fun findAnnotationValueAsString(an: AnnotationNode, propertyName: String): String? { +fun ClassNode.findAnyAnnotation(set: Set<String>): AnnotationNode? { + return findAnyAnnotation(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun MethodNode.findAnyAnnotation(set: Set<String>): AnnotationNode? { + return findAnyAnnotation(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun FieldNode.findAnyAnnotation(set: Set<String>): AnnotationNode? { + return findAnyAnnotation(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun findAllAnnotations( + set: Set<String>, + visibleAnnotations: List<AnnotationNode>?, + invisibleAnnotations: List<AnnotationNode>? +): List<AnnotationNode> { + return (visibleAnnotations ?: emptyList()).filter { it.desc in set } + + (invisibleAnnotations ?: emptyList()).filter { it.desc in set } +} + +fun ClassNode.findAllAnnotations(set: Set<String>): List<AnnotationNode> { + return findAllAnnotations(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun MethodNode.findAllAnnotations(set: Set<String>): List<AnnotationNode> { + return findAllAnnotations(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun FieldNode.findAllAnnotations(set: Set<String>): List<AnnotationNode> { + return findAllAnnotations(set, this.visibleAnnotations, this.invisibleAnnotations) +} + +fun <T> findAnnotationValueAsObject( + an: AnnotationNode, + propertyName: String, + expectedTypeHumanReadableName: String, + converter: (Any?) -> T?, +): T? { for (i in 0..(an.values?.size ?: 0) - 2 step 2) { val name = an.values[i] @@ -66,16 +95,30 @@ fun findAnnotationValueAsString(an: AnnotationNode, propertyName: String): Strin continue } val value = an.values[i + 1] - if (value is String) { - return value + if (value == null) { + return null + } + + try { + return converter(value) + } catch (e: ClassCastException) { + throw ClassParseException( + "The type of '$propertyName' in annotation @${an.desc} must be " + + "$expectedTypeHumanReadableName, but is ${value?.javaClass?.canonicalName}") } - throw ClassParseException( - "The type of '$name' in annotation \"${an.desc}\" must be String" + - ", but is ${value?.javaClass?.canonicalName}") } return null } +fun findAnnotationValueAsString(an: AnnotationNode, propertyName: String): String? { + return findAnnotationValueAsObject(an, propertyName, "String", {it as String}) +} + +fun findAnnotationValueAsType(an: AnnotationNode, propertyName: String): Type? { + return findAnnotationValueAsObject(an, propertyName, "Class", {it as Type}) +} + + val periodOrSlash = charArrayOf('.', '/') fun getPackageNameFromFullClassName(fullClassName: String): String { @@ -117,6 +160,32 @@ fun resolveClassNameWithDefaultPackage(className: String, defaultPackageName: St return "$defaultPackageName.$className" } +fun splitWithLastPeriod(name: String): Pair<String, String>? { + val pos = name.lastIndexOf('.') + if (pos < 0) { + return null + } + return Pair(name.substring(0, pos), name.substring(pos + 1)) +} + +fun String.startsWithAny(vararg prefixes: String): Boolean { + prefixes.forEach { + if (this.startsWith(it)) { + return true + } + } + return false +} + +fun String.endsWithAny(vararg suffixes: String): Boolean { + suffixes.forEach { + if (this.endsWith(it)) { + return true + } + } + return false +} + fun String.toJvmClassName(): String { return this.replace('.', '/') } @@ -129,6 +198,14 @@ fun String.toHumanReadableMethodName(): String { return this.replace('/', '.') } +fun zipEntryNameToClassName(entryFilename: String): String? { + val suffix = ".class" + if (!entryFilename.endsWith(suffix)) { + return null + } + return entryFilename.substring(0, entryFilename.length - suffix.length) +} + private val numericalInnerClassName = """.*\$\d+$""".toRegex() fun isAnonymousInnerClass(cn: ClassNode): Boolean { @@ -137,18 +214,6 @@ fun isAnonymousInnerClass(cn: ClassNode): Boolean { } /** - * Take a class name. If it's a nested class, then return the name of its direct outer class name. - * Otherwise, return null. - */ -fun getDirectOuterClassName(className: String): String? { - val pos = className.lastIndexOf('$') - if (pos < 0) { - return null - } - return className.substring(0, pos) -} - -/** * Write bytecode to push all the method arguments to the stack. * The number of arguments and their type are taken from [methodDescriptor]. */ @@ -198,11 +263,11 @@ fun writeByteCodeToReturn(methodDescriptor: String, writer: MethodVisitor) { /** * Given a method descriptor, insert an [argType] as the first argument to it. */ -fun prependArgTypeToMethodDescriptor(methodDescriptor: String, argType: Type): String { +fun prependArgTypeToMethodDescriptor(methodDescriptor: String, classInternalName: String): String { val returnType = Type.getReturnType(methodDescriptor) val argTypes = Type.getArgumentTypes(methodDescriptor).toMutableList() - argTypes.add(0, argType) + argTypes.add(0, Type.getType("L" + classInternalName + ";")) return Type.getMethodDescriptor(returnType, *argTypes.toTypedArray()) } @@ -262,6 +327,10 @@ fun ClassNode.isSynthetic(): Boolean { return (this.access and Opcodes.ACC_SYNTHETIC) != 0 } +fun ClassNode.isAbstract(): Boolean { + return (this.access and Opcodes.ACC_ABSTRACT) != 0 +} + fun MethodNode.isSynthetic(): Boolean { return (this.access and Opcodes.ACC_SYNTHETIC) != 0 } @@ -270,6 +339,18 @@ fun MethodNode.isStatic(): Boolean { return (this.access and Opcodes.ACC_STATIC) != 0 } +fun MethodNode.isPublic(): Boolean { + return (this.access and Opcodes.ACC_PUBLIC) != 0 +} + +fun MethodNode.isNative(): Boolean { + return (this.access and Opcodes.ACC_NATIVE) != 0 +} + +fun MethodNode.isSpecial(): Boolean { + return CTOR_NAME == this.name || CLASS_INITIALIZER_NAME == this.name +} + fun FieldNode.isEnum(): Boolean { return (this.access and Opcodes.ACC_ENUM) != 0 } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/asm/ClassNodes.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/asm/ClassNodes.kt index 92906a75b93a..e2647eb13ed3 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/asm/ClassNodes.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/asm/ClassNodes.kt @@ -27,6 +27,11 @@ import org.objectweb.asm.tree.TypeAnnotationNode import java.io.BufferedInputStream import java.io.PrintWriter import java.util.Arrays +import java.util.concurrent.Executors +import java.util.concurrent.TimeUnit +import java.util.concurrent.atomic.AtomicReference +import java.util.function.Consumer +import java.util.zip.ZipEntry import java.util.zip.ZipFile /** @@ -183,49 +188,85 @@ class ClassNodes { /** * Load all the classes, without code. */ - fun loadClassStructures(inJar: String): ClassNodes { - log.i("Reading class structure from $inJar ...") - val start = System.currentTimeMillis() - + fun loadClassStructures( + inJar: String, + timeCollector: Consumer<Double>? = null, + ): ClassNodes { val allClasses = ClassNodes() - log.withIndent { - ZipFile(inJar).use { inZip -> - val inEntries = inZip.entries() + // Load classes in parallel. + val executor = Executors.newFixedThreadPool(4) + + // First exception defected. + val exception = AtomicReference<Throwable>() + + // Called on a BG thread. Read a single jar entry and add it to [allClasses]. + fun parseClass(inZip: ZipFile, entry: ZipEntry) { + try { + inZip.getInputStream(entry).use { ins -> + val cr = ClassReader(BufferedInputStream(ins)) + val cn = ClassNode() + cr.accept( + cn, ClassReader.SKIP_CODE + or ClassReader.SKIP_DEBUG + or ClassReader.SKIP_FRAMES + ) + synchronized(allClasses) { + if (!allClasses.addClass(cn)) { + log.w("Duplicate class found: ${cn.name}") + } + } + } + } catch (e: Throwable) { + log.e("Failed to load class: $e") + exception.compareAndSet(null, e) + } + } + + // Actually open the jar and read it on worker threads. + val time = log.iTime("Reading class structure from $inJar") { + log.withIndent { + ZipFile(inJar).use { inZip -> + val inEntries = inZip.entries() - while (inEntries.hasMoreElements()) { - val entry = inEntries.nextElement() + while (inEntries.hasMoreElements()) { + val entry = inEntries.nextElement() - BufferedInputStream(inZip.getInputStream(entry)).use { bis -> if (entry.name.endsWith(".class")) { - val cr = ClassReader(bis) - val cn = ClassNode() - cr.accept(cn, ClassReader.SKIP_CODE or ClassReader.SKIP_DEBUG - or ClassReader.SKIP_FRAMES) - if (!allClasses.addClass(cn)) { - log.w("Duplicate class found: ${cn.name}") + executor.submit { + parseClass(inZip, entry) } } else if (entry.name.endsWith(".dex")) { // Seems like it's an ART jar file. We can't process it. // It's a fatal error. throw InvalidJarFileException( - "$inJar is not a desktop jar file. It contains a *.dex file.") + "$inJar is not a desktop jar file." + + " It contains a *.dex file." + ) } else { // Unknown file type. Skip. - while (bis.available() > 0) { - bis.skip((1024 * 1024).toLong()) - } } } + // Wait for all the work to complete. (must do it before closing the zip) + log.i("Waiting for all loaders to finish...") + executor.shutdown() + executor.awaitTermination(5, TimeUnit.MINUTES) + log.i("All loaders to finished.") } } - } - if (allClasses.size == 0) { - log.w("$inJar contains no *.class files.") - } - val end = System.currentTimeMillis() - log.i("Done reading class structure in %.1f second(s).", (end - start) / 1000.0) + // If any exception is detected, throw it. + exception.get()?.let { + throw it + } + + if (allClasses.size == 0) { + log.w("$inJar contains no *.class files.") + } else { + log.i("Loaded ${allClasses.size} classes from $inJar.") + } + } + timeCollector?.accept(time) return allClasses } } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/dumper/ApiDumper.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/dumper/ApiDumper.kt index aaefee4f71e8..5e4e70f0cbaa 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/dumper/ApiDumper.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/dumper/ApiDumper.kt @@ -44,7 +44,7 @@ class ApiDumper( val descriptor: String, ) - val javaStandardApiPolicy = FilterPolicy.Stub.withReason("Java standard API") + private val javaStandardApiPolicy = FilterPolicy.Keep.withReason("Java standard API") private val shownMethods = mutableSetOf<MethodKey>() diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt index 6b360b79c327..6b360b79c327 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt new file mode 100644 index 000000000000..36adf0626415 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt @@ -0,0 +1,366 @@ +/* + * 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.hoststubgen.filters + +import com.android.hoststubgen.ClassParseException +import com.android.hoststubgen.HostStubGenErrors +import com.android.hoststubgen.InvalidAnnotationException +import com.android.hoststubgen.addLists +import com.android.hoststubgen.asm.CLASS_INITIALIZER_DESC +import com.android.hoststubgen.asm.CLASS_INITIALIZER_NAME +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.findAllAnnotations +import com.android.hoststubgen.asm.findAnnotationValueAsString +import com.android.hoststubgen.asm.findAnyAnnotation +import com.android.hoststubgen.asm.getPackageNameFromFullClassName +import com.android.hoststubgen.asm.resolveClassNameWithDefaultPackage +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.asm.toHumanReadableMethodName +import com.android.hoststubgen.asm.toJvmClassName +import com.android.hoststubgen.log +import com.android.hoststubgen.utils.ClassFilter +import org.objectweb.asm.tree.AnnotationNode +import org.objectweb.asm.tree.ClassNode + +// TODO: Detect invalid cases, such as... +// - Class's visibility is lower than the members'. + +/** + * [OutputFilter] using Java annotations. + */ +class AnnotationBasedFilter( + private val errors: HostStubGenErrors, + private val classes: ClassNodes, + keepAnnotations_: Set<String>, + keepClassAnnotations_: Set<String>, + throwAnnotations_: Set<String>, + removeAnnotations_: Set<String>, + ignoreAnnotations_: Set<String>, + substituteAnnotations_: Set<String>, + redirectAnnotations_: Set<String>, + redirectionClassAnnotations_: Set<String>, + classLoadHookAnnotations_: Set<String>, + keepStaticInitializerAnnotations_: Set<String>, + private val annotationAllowedClassesFilter: ClassFilter, + fallback: OutputFilter, +) : DelegatingFilter(fallback) { + private val keepAnnotations = convertToInternalNames(keepAnnotations_) + private val keepClassAnnotations = convertToInternalNames(keepClassAnnotations_) + private val throwAnnotations = convertToInternalNames(throwAnnotations_) + private val removeAnnotations = convertToInternalNames(removeAnnotations_) + private val ignoreAnnotations = convertToInternalNames(ignoreAnnotations_) + private val redirectAnnotations = convertToInternalNames(redirectAnnotations_) + private val substituteAnnotations = convertToInternalNames(substituteAnnotations_) + private val redirectionClassAnnotations = + convertToInternalNames(redirectionClassAnnotations_) + private val classLoadHookAnnotations = convertToInternalNames(classLoadHookAnnotations_) + private val keepStaticInitializerAnnotations = + convertToInternalNames(keepStaticInitializerAnnotations_) + + /** Annotations that control API visibility. */ + private val visibilityAnnotations = keepAnnotations + + keepClassAnnotations + + throwAnnotations + + removeAnnotations + + ignoreAnnotations + + redirectAnnotations + + substituteAnnotations + + /** All the annotations we use. */ + private val allAnnotations = visibilityAnnotations + + redirectionClassAnnotations + + classLoadHookAnnotations + + keepStaticInitializerAnnotations + + /** + * All the annotations we use. Note, this one is in a [convertToJvmNames] format unlike + * other ones, because of how it's used. + */ + private val allAnnotationClasses: Set<String> = convertToJvmNames( + keepAnnotations_ + + keepClassAnnotations_ + + throwAnnotations_ + + removeAnnotations_ + + redirectAnnotations_ + + substituteAnnotations_ + + redirectionClassAnnotations_ + + classLoadHookAnnotations_ + + keepStaticInitializerAnnotations_ + ) + + private val policyCache = mutableMapOf<String, ClassAnnotations>() + + private val AnnotationNode.policy: FilterPolicyWithReason? get() { + return when (desc) { + in keepAnnotations -> FilterPolicy.Keep.withReason(REASON_ANNOTATION) + in keepClassAnnotations -> FilterPolicy.KeepClass.withReason(REASON_CLASS_ANNOTATION) + in substituteAnnotations -> FilterPolicy.Substitute.withReason(REASON_ANNOTATION) + in throwAnnotations -> FilterPolicy.Throw.withReason(REASON_ANNOTATION) + in removeAnnotations -> FilterPolicy.Remove.withReason(REASON_ANNOTATION) + in ignoreAnnotations -> FilterPolicy.Ignore.withReason(REASON_ANNOTATION) + in redirectAnnotations -> FilterPolicy.Redirect.withReason(REASON_ANNOTATION) + else -> null + } + } + + private fun getAnnotationPolicy(cn: ClassNode): ClassAnnotations { + return policyCache.getOrPut(cn.name) { ClassAnnotations(cn) } + } + + override fun getPolicyForClass(className: String): FilterPolicyWithReason { + // If it's any of the annotations, then always keep it. + if (allAnnotationClasses.contains(className)) { + return FilterPolicy.KeepClass.withReason("HostStubGen Annotation") + } + + val cn = classes.getClass(className) + return getAnnotationPolicy(cn).classPolicy ?: super.getPolicyForClass(className) + } + + override fun getPolicyForField(className: String, fieldName: String): FilterPolicyWithReason { + val cn = classes.getClass(className) + return getAnnotationPolicy(cn).fieldPolicies[fieldName] + ?: super.getPolicyForField(className, fieldName) + } + + override fun getPolicyForMethod( + className: String, + methodName: String, + descriptor: String + ): FilterPolicyWithReason { + val cn = classes.getClass(className) + return getAnnotationPolicy(cn).methodPolicies[MethodKey(methodName, descriptor)] + ?: super.getPolicyForMethod(className, methodName, descriptor) + } + + override fun getRenameTo( + className: String, + methodName: String, + descriptor: String + ): String? { + val cn = classes.getClass(className) + return getAnnotationPolicy(cn).renamedMethods[MethodKey(methodName, descriptor)] + ?: super.getRenameTo(className, methodName, descriptor) + } + + override fun getRedirectionClass(className: String): String? { + val cn = classes.getClass(className) + return getAnnotationPolicy(cn).redirectionClass + } + + override fun getClassLoadHooks(className: String): List<String> { + val cn = classes.getClass(className) + return addLists(super.getClassLoadHooks(className), getAnnotationPolicy(cn).classLoadHooks) + } + + private data class MethodKey(val name: String, val desc: String) + + /** + * Every time we see a class, we scan all its methods for substitution attributes, + * and compute (implicit) policies caused by them. + * + * For example, for the following methods: + * + * @Substitute(suffix = "_host") + * private void foo() { + * // This isn't supported on the host side. + * } + * private void foo_host() { + * // Host side implementation + * } + * + * We internally handle them as: + * + * foo() -> Substitute + * foo_host() -> Stub, and then rename it to foo(). + */ + private inner class ClassAnnotations(cn: ClassNode) { + + val classPolicy: FilterPolicyWithReason? + val fieldPolicies = mutableMapOf<String, FilterPolicyWithReason>() + val methodPolicies = mutableMapOf<MethodKey, FilterPolicyWithReason>() + val renamedMethods = mutableMapOf<MethodKey, String>() + val redirectionClass: String? + val classLoadHooks: List<String> + + init { + val allowAnnotation = annotationAllowedClassesFilter.matches(cn.name) + detectInvalidAnnotations( + cn.name, allowAnnotation, + cn.visibleAnnotations, cn.invisibleAnnotations, + "class", cn.name + ) + classPolicy = cn.findAnyAnnotation(visibilityAnnotations)?.policy + redirectionClass = cn.findAnyAnnotation(redirectionClassAnnotations)?.let { an -> + getAnnotationField(an, "value")?.let { resolveRelativeClass(cn, it) } + } + classLoadHooks = cn.findAllAnnotations(classLoadHookAnnotations).mapNotNull { an -> + getAnnotationField(an, "value")?.toHumanReadableMethodName() + } + if (cn.findAnyAnnotation(keepStaticInitializerAnnotations) != null) { + methodPolicies[MethodKey(CLASS_INITIALIZER_NAME, CLASS_INITIALIZER_DESC)] = + FilterPolicy.Keep.withReason(REASON_ANNOTATION) + } + + for (fn in cn.fields ?: emptyList()) { + detectInvalidAnnotations( + cn.name, allowAnnotation, + fn.visibleAnnotations, fn.invisibleAnnotations, + "field", cn.name, fn.name + ) + fn.findAnyAnnotation(visibilityAnnotations)?.policy?.let { + fieldPolicies[fn.name] = it + } + } + + for (mn in cn.methods ?: emptyList()) { + detectInvalidAnnotations( + cn.name, allowAnnotation, + mn.visibleAnnotations, mn.invisibleAnnotations, + "method", cn.name, mn.name, mn.desc + ) + + val an = mn.findAnyAnnotation(visibilityAnnotations) ?: continue + val policy = an.policy ?: continue + methodPolicies[MethodKey(mn.name, mn.desc)] = policy + + if (policy.policy != FilterPolicy.Substitute) continue + + // Handle substitution + val suffix = getAnnotationField(an, "suffix", false) ?: "\$ravenwood" + val replacement = mn.name + suffix + + if (replacement == mn.name) { + errors.onErrorFound("@SubstituteWith require a different name") + } else { + // The replacement method has to be renamed + methodPolicies[MethodKey(replacement, mn.desc)] = + FilterPolicy.Keep.withReason(REASON_ANNOTATION) + renamedMethods[MethodKey(replacement, mn.desc)] = mn.name + + log.v("Substitution found: %s%s -> %s", replacement, mn.desc, mn.name) + } + } + } + + /** + * Throw if an item has more than one visibility annotations, or the class is not allowed + * + * name1 - 4 are only used in exception messages. We take them as separate strings + * to avoid unnecessary string concatenations. + */ + private fun detectInvalidAnnotations( + className: String, + allowAnnotation: Boolean, + visibles: List<AnnotationNode>?, + invisibles: List<AnnotationNode>?, + type: String, + name1: String, + name2: String = "", + name3: String = "", + ) { + var count = 0 + var visibleCount = 0 + for (an in visibles ?: emptyList()) { + if (visibilityAnnotations.contains(an.desc)) { + visibleCount++ + } + if (allAnnotations.contains(an.desc)) { + count++ + } + } + for (an in invisibles ?: emptyList()) { + if (visibilityAnnotations.contains(an.desc)) { + visibleCount++ + } + if (allAnnotations.contains(an.desc)) { + count++ + } + } + if (count > 0 && !allowAnnotation) { + throw InvalidAnnotationException( + "Class ${className.toHumanReadableClassName()} is not allowed to have " + + "Ravenwood annotations. Contact g/ravenwood for more details." + ) + } + if (visibleCount > 1) { + val description = if (name2 == "" && name3 == "") { + "$type $name1" + } else { + "$type $name1.$name2$name3" + } + throw InvalidAnnotationException( + "Found more than one visibility annotations on $description" + ) + } + } + + /** + * Return the (String) value of 'value' parameter from an annotation. + */ + private fun getAnnotationField( + an: AnnotationNode, + name: String, + required: Boolean = true + ): String? { + try { + val suffix = findAnnotationValueAsString(an, name) + if (suffix == null && required) { + errors.onErrorFound("Annotation \"${an.desc}\" must have field $name") + } + return suffix + } catch (e: ClassParseException) { + errors.onErrorFound(e.message!!) + return null + } + } + + /** + * Resolve the full class name if the class is relative + */ + private fun resolveRelativeClass( + cn: ClassNode, + name: String + ): String { + val packageName = getPackageNameFromFullClassName(cn.name) + return resolveClassNameWithDefaultPackage(name, packageName).toJvmClassName() + } + } + + companion object { + private const val REASON_ANNOTATION = "annotation" + private const val REASON_CLASS_ANNOTATION = "class-annotation" + + /** + * Convert from human-readable type names (e.g. "com.android.TypeName") to the internal type + * names (e.g. "Lcom/android/TypeName). + */ + private fun convertToInternalNames(input: Set<String>): Set<String> { + val ret = mutableSetOf<String>() + input.forEach { ret.add("L" + it.toJvmClassName() + ";") } + return ret + } + + /** + * Convert from human-readable type names to JVM type names. + */ + private fun convertToJvmNames(input: Set<String>): Set<String> { + val ret = mutableSetOf<String>() + input.forEach { ret.add(it.toJvmClassName()) } + return ret + } + } +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt new file mode 100644 index 000000000000..f8bb526d0a86 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt @@ -0,0 +1,93 @@ +/* + * 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.hoststubgen.filters + +import com.android.hoststubgen.asm.ClassNodes + +/** + * This is used as the second last fallback filter. This filter propagates the class-wide policy + * (obtained from [outermostFilter]) to the fields and methods. + */ +class ClassWidePolicyPropagatingFilter( + private val classes: ClassNodes, + fallback: OutputFilter +) : DelegatingFilter(fallback) { + + /** + * We don't use ClassNode.outerClass, because it gives as the top-level + * outer class (A$B$C -> A), not the direct outer class (A$B$C -> A$B). + * + * Sometimes a class name includes `$`, but is not as a nested class name separator + * (e.g. a class name like `MyClass$$`). In this case, `MyClass$` is not actually a class. + * + * So before getting the class policy on a nonexistent class, which may cause an + * incorrect result, we make sure the class actually exists. + */ + private fun getDirectOuterClass(className: String): String? { + var currentClass = className + while (true) { + val pos = currentClass.lastIndexOf('$') + if (pos < 0) { + return null + } + currentClass = currentClass.substring(0, pos) + if (classes.hasClass(currentClass)) { + return currentClass + } + } + } + + private fun getClassWidePolicy(className: String, resolve: Boolean): FilterPolicyWithReason? { + outermostFilter.getPolicyForClass(className).let { policy -> + if (policy.policy == FilterPolicy.KeepClass) { + val p = if (resolve) { + policy.policy.resolveClassWidePolicy() + } else { + policy.policy + } + + return p.withReason(policy.reason) + .wrapReason("class-wide in $className") + } + // If the class's policy is remove, then remove it. + if (policy.policy == FilterPolicy.Remove) { + return FilterPolicy.Remove.withReason("class-wide in $className") + } + } + return null + } + + override fun getPolicyForClass(className: String): FilterPolicyWithReason { + // If the class name is `a.b.c.A$B$C`, then we try to get the class wide policy + // from a.b.c.A$B$C, then a.b.c.A$B, and then a.b.c.A, recursively + return getDirectOuterClass(className)?.let { getClassWidePolicy(it, resolve = false) } + ?: super.getPolicyForClass(className) + } + + override fun getPolicyForField(className: String, fieldName: String): FilterPolicyWithReason { + return getClassWidePolicy(className, resolve = true) + ?: super.getPolicyForField(className, fieldName) + } + + override fun getPolicyForMethod( + className: String, + methodName: String, + descriptor: String + ): FilterPolicyWithReason { + return getClassWidePolicy(className, resolve = true) + ?: super.getPolicyForMethod(className, methodName, descriptor) + } +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ConstantFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ConstantFilter.kt index 678e6eae0be6..be3c59c80152 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ConstantFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ConstantFilter.kt @@ -26,23 +26,17 @@ import com.android.hoststubgen.HostStubGenInternalException * @param policy the policy. Cannot be a "substitute" policy. */ class ConstantFilter( - policy: FilterPolicy, - val reason: String + policy: FilterPolicy, + private val reason: String ) : OutputFilter() { - val classPolicy: FilterPolicy - val fieldPolicy: FilterPolicy - val methodPolicy: FilterPolicy + + private val classPolicy: FilterPolicy + private val fieldPolicy: FilterPolicy + private val methodPolicy: FilterPolicy init { - if (policy.isSubstitute) { - throw HostStubGenInternalException( - "ConstantFilter doesn't allow substitution policies.") - } - if (policy.isClassWidePolicy) { - // We prevent it, because there's no point in using class-wide policies because - // all members get othe same policy too anyway. - throw HostStubGenInternalException( - "ConstantFilter doesn't allow class-wide policies.") + if (!policy.isUsableWithDefault) { + throw HostStubGenInternalException("ConstantFilter doesn't support $policy.") } methodPolicy = policy @@ -63,10 +57,10 @@ class ConstantFilter( } override fun getPolicyForMethod( - className: String, - methodName: String, - descriptor: String, - ): FilterPolicyWithReason { + className: String, + methodName: String, + descriptor: String, + ): FilterPolicyWithReason { return methodPolicy.withReason(reason) } } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/DefaultHookInjectingFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/DefaultHookInjectingFilter.kt index d771003a955d..d771003a955d 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/DefaultHookInjectingFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/DefaultHookInjectingFilter.kt diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/DelegatingFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/DelegatingFilter.kt index cdd24e809ff8..b8b0d8a31268 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/DelegatingFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/DelegatingFilter.kt @@ -72,8 +72,8 @@ abstract class DelegatingFilter( return fallback.getRenameTo(className, methodName, descriptor) } - override fun getNativeSubstitutionClass(className: String): String? { - return fallback.getNativeSubstitutionClass(className) + override fun getRedirectionClass(className: String): String? { + return fallback.getRedirectionClass(className) } override fun getClassLoadHooks(className: String): List<String> { @@ -87,4 +87,23 @@ abstract class DelegatingFilter( ): List<String> { return fallback.getMethodCallHooks(className, methodName, descriptor) } + + override fun remapType(className: String): String? { + return fallback.remapType(className) + } + + override fun hasAnyMethodCallReplace(): Boolean { + return fallback.hasAnyMethodCallReplace() + } + + override fun getMethodCallReplaceTo( + callerClassName: String, + callerMethodName: String, + className: String, + methodName: String, + descriptor: String, + ): MethodReplaceTarget? { + return fallback.getMethodCallReplaceTo( + callerClassName, callerMethodName, className, methodName, descriptor) + } } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicy.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicy.kt index 4d211065f1c8..2f2f81b05ad1 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicy.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicy.kt @@ -17,37 +17,25 @@ package com.android.hoststubgen.filters enum class FilterPolicy { /** - * Keep the item in the stub jar file, so tests can use it. - */ - Stub, - - /** - * Keep the item in the impl jar file, but not in the stub file. Tests cannot use it directly, - * but indirectly. + * Keep the item in the jar file. */ Keep, /** - * Only used for types. Keep the class in the stub, and also all its members. - * But each member can have another annotations to override it. - */ - StubClass, - - /** - * Only used for types. Keep the class in the impl, not in the stub, and also all its members. - * But each member can have another annotations to override it. + * Only usable with classes. Keep the class in the jar, and also all its members. + * Each member can have another policy to override it. */ KeepClass, /** - * Same as [Stub], but replace it with a "substitution" method. Only usable with methods. + * Only usable with methods. Replace a method with a "substitution" method. */ - SubstituteAndStub, + Substitute, /** - * Same as [Keep], but replace it with a "substitution" method. Only usable with methods. + * Only usable with methods. Redirect a method to a method in the substitution class. */ - SubstituteAndKeep, + Redirect, /** * Only usable with methods. The item will be kept in the impl jar file, but when called, @@ -57,7 +45,7 @@ enum class FilterPolicy { /** * Only usable with methods. The item will be kept in the impl jar file, but when called, - * it'll no-op. Currently only supported for methods returning `void`. + * it'll no-op. */ Ignore, @@ -66,20 +54,19 @@ enum class FilterPolicy { */ Remove; - val isSubstitute: Boolean - get() = this == SubstituteAndStub || this == SubstituteAndKeep - - val needsInStub: Boolean - get() = this == Stub || this == StubClass || this == SubstituteAndStub - - val needsInImpl: Boolean - get() = this != Remove + val needsInOutput: Boolean + get() { + return when (this) { + Remove -> false + else -> true + } + } /** Returns whether a policy can be used with classes */ val isUsableWithClasses: Boolean get() { return when (this) { - Stub, StubClass, Keep, KeepClass, Remove -> true + Keep, KeepClass, Remove -> true else -> false } } @@ -88,7 +75,7 @@ enum class FilterPolicy { val isUsableWithFields: Boolean get() { return when (this) { - Stub, Keep, Remove -> true + Keep, Remove -> true else -> false } } @@ -97,16 +84,16 @@ enum class FilterPolicy { val isUsableWithMethods: Boolean get() { return when (this) { - StubClass, KeepClass -> false + KeepClass -> false else -> true } } - /** Returns whether a policy is a class-wide one. */ - val isClassWidePolicy: Boolean + /** Returns whether a policy can be used as default policy. */ + val isUsableWithDefault: Boolean get() { return when (this) { - StubClass, KeepClass -> true + Keep, Throw, Remove -> true else -> false } } @@ -115,26 +102,24 @@ enum class FilterPolicy { val isSupported: Boolean get() { return when (this) { - // TODO: handle native method with no substitution as being unsupported - Stub, StubClass, Keep, KeepClass, SubstituteAndStub, SubstituteAndKeep -> true + Keep, KeepClass, Substitute, Redirect -> true else -> false } } - fun getSubstitutionBasePolicy(): FilterPolicy { - return when (this) { - SubstituteAndKeep -> Keep - SubstituteAndStub -> Stub - else -> this + val isMethodRewriteBody: Boolean + get() { + return when (this) { + Redirect, Throw, Ignore -> true + else -> false + } } - } /** - * Convert {Stub,Keep}Class to the corresponding Stub or Keep. + * Convert KeepClass to Keep, or return itself. */ fun resolveClassWidePolicy(): FilterPolicy { return when (this) { - StubClass -> Stub KeepClass -> Keep else -> this } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicyWithReason.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicyWithReason.kt index eb03f66b5afa..b10165b835f2 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicyWithReason.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterPolicyWithReason.kt @@ -30,36 +30,6 @@ data class FilterPolicyWithReason ( return FilterPolicyWithReason(policy, "$reason [inner-reason: ${this.reason}]") } - /** - * If the visibility is lower than "Keep" (meaning if it's "remove"), - * then return a new [FilterPolicy] with "Keep". - * Otherwise, return itself - */ - fun promoteToKeep(promotionReason: String): FilterPolicyWithReason { - if (policy.needsInImpl) { - return this - } - val newPolicy = if (policy.isClassWidePolicy) FilterPolicy.KeepClass else FilterPolicy.Keep - - return FilterPolicyWithReason(newPolicy, - "$promotionReason [original remove reason: ${this.reason}]") - } - - /** - * If the visibility is above "Keep" (meaning if it's "stub"), - * then return a new [FilterPolicy] with "Keep". - * Otherwise, return itself - */ - fun demoteToKeep(promotionReason: String): FilterPolicyWithReason { - if (!policy.needsInStub) { - return this - } - val newPolicy = if (policy.isClassWidePolicy) FilterPolicy.KeepClass else FilterPolicy.Keep - - return FilterPolicyWithReason(newPolicy, - "$promotionReason [original stub reason: ${this.reason}]") - } - override fun toString(): String { return "[$policy - reason: $reason]" } diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt new file mode 100644 index 000000000000..c5a2f9ff5e96 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import org.objectweb.asm.commons.Remapper + +/** + * A [Remapper] that uses [OutputFilter.remapType] + */ +class FilterRemapper(val filter: OutputFilter) : Remapper() { + private val cache = mutableMapOf<String, String>() + + override fun mapType(typeInternalName: String?): String? { + if (typeInternalName == null) { + return null + } + + cache[typeInternalName]?.let { + return it + } + + var mapped = filter.remapType(typeInternalName) ?: typeInternalName + cache[typeInternalName] = mapped + return mapped + } + + // TODO Do we need to implement mapPackage(), etc too? +}
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ImplicitOutputFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ImplicitOutputFilter.kt index 5a26fc69d473..474da6dfa1b9 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ImplicitOutputFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/ImplicitOutputFilter.kt @@ -25,7 +25,6 @@ import com.android.hoststubgen.asm.isAnonymousInnerClass import com.android.hoststubgen.asm.isAutoGeneratedEnumMember import com.android.hoststubgen.asm.isEnum import com.android.hoststubgen.asm.isSynthetic -import com.android.hoststubgen.asm.isVisibilityPrivateOrPackagePrivate import com.android.hoststubgen.log import org.objectweb.asm.tree.ClassNode @@ -53,7 +52,7 @@ class ImplicitOutputFilter( } // If the outer class needs to be in impl, it should be in impl too. val outerPolicy = outermostFilter.getPolicyForClass(cn.outerClass) - if (outerPolicy.policy.needsInImpl) { + if (outerPolicy.policy.needsInOutput) { return FilterPolicy.KeepClass.withReason("anonymous-inner-class") } } @@ -79,19 +78,6 @@ class ImplicitOutputFilter( val fallback = super.getPolicyForMethod(className, methodName, descriptor) val classPolicy = outermostFilter.getPolicyForClass(className) - // If the class is in the stub, then we need to put the private constructor in the stub too, - // to prevent the class from getting instantiated. - if (classPolicy.policy.needsInStub && - !fallback.policy.needsInStub && - (methodName == "<init>") && // Constructor? - (descriptor == "()V")) { // Has zero parameters? - classes.findMethod(className, methodName, descriptor)?.let { mn -> - if (isVisibilityPrivateOrPackagePrivate(mn.access)) { - return FilterPolicy.Stub.withReason("private constructor in stub class") - } - } - } - val cn = classes.getClass(className) // If we throw from the static initializer, the class would be useless, so we convert it @@ -107,7 +93,7 @@ class ImplicitOutputFilter( } log.d("Class ${cn.name} Class policy: $classPolicy") - if (classPolicy.policy.needsInImpl) { + if (classPolicy.policy.needsInOutput) { // Do it only when the class needs to be kept... // Member policy should be "keep" or "stub". @@ -152,7 +138,7 @@ class ImplicitOutputFilter( val classPolicy = outermostFilter.getPolicyForClass(className) log.d("Class ${cn.name} Class policy: $classPolicy") - if (classPolicy.policy.needsInImpl) { + if (classPolicy.policy.needsInOutput) { // Do it only when the class needs to be kept... // Member policy should be "keep" or "stub". diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/InMemoryOutputFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/InMemoryOutputFilter.kt index 2e144f5513bc..59fa464a7212 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/InMemoryOutputFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/InMemoryOutputFilter.kt @@ -19,6 +19,7 @@ import com.android.hoststubgen.addNonNullElement import com.android.hoststubgen.asm.ClassNodes import com.android.hoststubgen.asm.toHumanReadableClassName import com.android.hoststubgen.asm.toHumanReadableMethodName +import com.android.hoststubgen.asm.toJvmClassName import com.android.hoststubgen.log // TODO: Validate all input names. @@ -29,7 +30,7 @@ class InMemoryOutputFilter( ) : DelegatingFilter(fallback) { private val mPolicies: MutableMap<String, FilterPolicyWithReason> = mutableMapOf() private val mRenames: MutableMap<String, String> = mutableMapOf() - private val mNativeSubstitutionClasses: MutableMap<String, String> = mutableMapOf() + private val mRedirectionClasses: MutableMap<String, String> = mutableMapOf() private val mClassLoadHooks: MutableMap<String, String> = mutableMapOf() private fun getClassKey(className: String): String { @@ -115,17 +116,17 @@ class InMemoryOutputFilter( mRenames[getMethodKey(className, methodName, descriptor)] = toName } - override fun getNativeSubstitutionClass(className: String): String? { - return mNativeSubstitutionClasses[getClassKey(className)] - ?: super.getNativeSubstitutionClass(className) + override fun getRedirectionClass(className: String): String? { + return mRedirectionClasses[getClassKey(className)] + ?: super.getRedirectionClass(className) } - fun setNativeSubstitutionClass(from: String, to: String) { + fun setRedirectionClass(from: String, to: String) { checkClass(from) - // Native substitute classes may be provided from other jars, so we can't do this check. + // Redirection classes may be provided from other jars, so we can't do this check. // ensureClassExists(to) - mNativeSubstitutionClasses[getClassKey(from)] = to.toHumanReadableClassName() + mRedirectionClasses[getClassKey(from)] = to.toJvmClassName() } override fun getClassLoadHooks(className: String): List<String> { @@ -136,4 +137,4 @@ class InMemoryOutputFilter( fun setClassLoadHook(className: String, methodName: String) { mClassLoadHooks[getClassKey(className)] = methodName.toHumanReadableMethodName() } -}
\ No newline at end of file +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/KeepNativeFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/KeepNativeFilter.kt new file mode 100644 index 000000000000..00e7d77fa6e7 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/KeepNativeFilter.kt @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.isNative + +/** + * For native methods that weren't handled by outer filters, we keep it so that + * native method registration will not crash at runtime. Ideally we shouldn't need + * this, but in practice unsupported native method registrations do occur. + */ +class KeepNativeFilter( + private val classes: ClassNodes, + fallback: OutputFilter +) : DelegatingFilter(fallback) { + override fun getPolicyForMethod( + className: String, + methodName: String, + descriptor: String, + ): FilterPolicyWithReason { + return classes.findMethod(className, methodName, descriptor)?.let { mn -> + if (mn.isNative()) { + FilterPolicy.Keep.withReason("native-preserve") + } else { + null + } + } ?: super.getPolicyForMethod(className, methodName, descriptor) + } +}
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/OutputFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/OutputFilter.kt index 3df16ffa99b3..f99ce906240a 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/OutputFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/OutputFilter.kt @@ -35,10 +35,6 @@ abstract class OutputFilter { * using it. */ open var outermostFilter: OutputFilter = this - get() = field - set(value) { - field = value - } abstract fun getPolicyForClass(className: String): FilterPolicyWithReason @@ -60,13 +56,13 @@ abstract class OutputFilter { } /** - * Return a "native substitution class" name for a given class. + * Return a "redirection class" name for a given class. * - * The result will be in a "human readable" form. (e.g. uses '.'s instead of '/'s) + * The result will be in a JVM internal form. (e.g. uses '/'s instead of '.'s) * - * (which corresponds to @HostSideTestNativeSubstitutionClass of the standard annotations.) + * (which corresponds to @HostSideTestRedirectClass of the standard annotations.) */ - open fun getNativeSubstitutionClass(className: String): String? { + open fun getRedirectionClass(className: String): String? { return null } @@ -89,4 +85,35 @@ abstract class OutputFilter { List<String> { return emptyList() } -}
\ No newline at end of file + + /** + * Take a class (internal) name. If the class needs to be renamed, return the new name. + * This is used by [FilterRemapper]. + */ + open fun remapType(className: String): String? { + return null + } + + data class MethodReplaceTarget(val className: String, val methodName: String) + + /** + * Return if this filter may return non-null from [getMethodCallReplaceTo]. + * (Used for a small optimization) + */ + open fun hasAnyMethodCallReplace(): Boolean { + return false + } + + /** + * If a method call should be forwarded to another method, return the target's class / method. + */ + open fun getMethodCallReplaceTo( + callerClassName: String, + callerMethodName: String, + className: String, + methodName: String, + descriptor: String, + ): MethodReplaceTarget? { + return null + } +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/PackageFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/PackageFilter.kt new file mode 100644 index 000000000000..c67e6714d4c2 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/PackageFilter.kt @@ -0,0 +1,61 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.utils.Trie + +/** + * Filter to apply a policy to classes inside a package, either directly or indirectly. + */ +class PackageFilter( + fallback: OutputFilter +) : DelegatingFilter(fallback) { + + private val mPackagePolicies = PackagePolicyTrie() + + // We want to pick the most specific filter for a package name. + // Since any package with a matching prefix is a valid match, we can use a prefix tree + // to help us find the nearest matching filter. + private class PackagePolicyTrie : Trie<String, String, FilterPolicyWithReason>() { + // Split package name into individual component + override fun splitToComponents(key: String): Iterator<String> { + return key.split('.').iterator() + } + } + + private fun getPackageKey(packageName: String): String { + return packageName.toHumanReadableClassName() + } + + private fun getPackageKeyFromClass(className: String): String { + val clazz = className.toHumanReadableClassName() + val idx = clazz.lastIndexOf('.') + return if (idx >= 0) clazz.substring(0, idx) else "" + } + + /** + * Add a policy to all classes inside a package, either directly or indirectly. + */ + fun addPolicy(packageName: String, policy: FilterPolicyWithReason) { + mPackagePolicies[getPackageKey(packageName)] = policy + } + + override fun getPolicyForClass(className: String): FilterPolicyWithReason { + return mPackagePolicies[getPackageKeyFromClass(className)] + ?: super.getPolicyForClass(className) + } +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/SanitizationFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/SanitizationFilter.kt new file mode 100644 index 000000000000..18a1e16bcf3a --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/SanitizationFilter.kt @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import com.android.hoststubgen.HostStubGenErrors +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.log + +/** + * Check whether the policies in the inner layers make sense, and sanitize the results. + */ +class SanitizationFilter( + private val errors: HostStubGenErrors, + private val classes: ClassNodes, + fallback: OutputFilter +) : DelegatingFilter(fallback) { + override fun getPolicyForMethod( + className: String, + methodName: String, + descriptor: String + ): FilterPolicyWithReason { + val policy = super.getPolicyForMethod(className, methodName, descriptor) + if (policy.policy == FilterPolicy.Redirect) { + // Check whether the hosting class has a redirection class + if (getRedirectionClass(className) == null) { + errors.onErrorFound("Method $methodName$descriptor requires a redirection " + + "class set on ${className.toHumanReadableClassName()}") + } + } + return policy + } + + override fun getRedirectionClass(className: String): String? { + return super.getRedirectionClass(className)?.also { clazz -> + if (classes.findClass(clazz) == null) { + log.w("Redirection class $clazz not found. Class must be available at runtime.") + } else if (outermostFilter.getPolicyForClass(clazz).policy != FilterPolicy.KeepClass) { + // If the class exists, it must have a KeepClass policy. + errors.onErrorFound("Redirection class $clazz must have @KeepWholeClass.") + } + } + } +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/SubclassFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/SubclassFilter.kt index fd7474b55fa6..fd7474b55fa6 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/SubclassFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/SubclassFilter.kt diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt new file mode 100644 index 000000000000..caf80ebec0c9 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt @@ -0,0 +1,376 @@ +/* + * 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.hoststubgen.filters + +import com.android.hoststubgen.ParseException +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.splitWithLastPeriod +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.asm.toJvmClassName +import com.android.hoststubgen.log +import com.android.hoststubgen.normalizeTextLine +import com.android.hoststubgen.whitespaceRegex +import java.io.File +import java.io.PrintWriter +import java.util.regex.Pattern +import org.objectweb.asm.tree.ClassNode + +/** + * Print a class node as a "keep" policy. + */ +fun printAsTextPolicy(pw: PrintWriter, cn: ClassNode) { + pw.printf("class %s %s\n", cn.name.toHumanReadableClassName(), "keep") + + cn.fields?.let { + for (f in it.sortedWith(compareBy({ it.name }))) { + pw.printf(" field %s %s\n", f.name, "keep") + } + } + cn.methods?.let { + for (m in it.sortedWith(compareBy({ it.name }, { it.desc }))) { + pw.printf(" method %s %s %s\n", m.name, m.desc, "keep") + } + } +} + +private const val FILTER_REASON = "file-override" + +private enum class SpecialClass { + NotSpecial, + Aidl, + FeatureFlags, + Sysprops, + RFile, +} + +class TextFileFilterPolicyParser( + private val classes: ClassNodes, + fallback: OutputFilter +) { + private val subclassFilter = SubclassFilter(classes, fallback) + private val packageFilter = PackageFilter(subclassFilter) + private val imf = InMemoryOutputFilter(classes, packageFilter) + private var aidlPolicy: FilterPolicyWithReason? = null + private var featureFlagsPolicy: FilterPolicyWithReason? = null + private var syspropsPolicy: FilterPolicyWithReason? = null + private var rFilePolicy: FilterPolicyWithReason? = null + private val typeRenameSpec = mutableListOf<TextFilePolicyRemapperFilter.TypeRenameSpec>() + private val methodReplaceSpec = + mutableListOf<TextFilePolicyMethodReplaceFilter.MethodCallReplaceSpec>() + + private lateinit var currentClassName: String + + /** + * Read a given "policy" file and return as an [OutputFilter] + */ + fun parse(file: String) { + log.i("Loading offloaded annotations from $file ...") + log.withIndent { + var lineNo = 0 + try { + File(file).forEachLine { + lineNo++ + val line = normalizeTextLine(it) + if (line.isEmpty()) { + return@forEachLine // skip empty lines. + } + parseLine(line) + } + } catch (e: ParseException) { + throw e.withSourceInfo(file, lineNo) + } + } + } + + fun createOutputFilter(): OutputFilter { + var ret: OutputFilter = imf + if (typeRenameSpec.isNotEmpty()) { + ret = TextFilePolicyRemapperFilter(typeRenameSpec, ret) + } + if (methodReplaceSpec.isNotEmpty()) { + ret = TextFilePolicyMethodReplaceFilter(methodReplaceSpec, classes, ret) + } + + // Wrap the in-memory-filter with AHF. + ret = AndroidHeuristicsFilter( + classes, aidlPolicy, featureFlagsPolicy, syspropsPolicy, rFilePolicy, ret + ) + + return ret + } + + private fun parseLine(line: String) { + val fields = line.split(whitespaceRegex).toTypedArray() + when (fields[0].lowercase()) { + "p", "package" -> parsePackage(fields) + "c", "class" -> parseClass(fields) + "f", "field" -> parseField(fields) + "m", "method" -> parseMethod(fields) + "r", "rename" -> parseRename(fields) + else -> throw ParseException("Unknown directive \"${fields[0]}\"") + } + } + + private fun resolveSpecialClass(className: String): SpecialClass { + if (!className.startsWith(":")) { + return SpecialClass.NotSpecial + } + when (className.lowercase()) { + ":aidl" -> return SpecialClass.Aidl + ":feature_flags" -> return SpecialClass.FeatureFlags + ":sysprops" -> return SpecialClass.Sysprops + ":r" -> return SpecialClass.RFile + } + throw ParseException("Invalid special class name \"$className\"") + } + + private fun resolveExtendingClass(className: String): String? { + if (!className.startsWith("*")) { + return null + } + return className.substring(1) + } + + private fun parsePolicy(s: String): FilterPolicy { + return when (s.lowercase()) { + "k", "keep" -> FilterPolicy.Keep + "t", "throw" -> FilterPolicy.Throw + "r", "remove" -> FilterPolicy.Remove + "kc", "keepclass" -> FilterPolicy.KeepClass + "i", "ignore" -> FilterPolicy.Ignore + "rdr", "redirect" -> FilterPolicy.Redirect + else -> { + if (s.startsWith("@")) { + FilterPolicy.Substitute + } else { + throw ParseException("Invalid policy \"$s\"") + } + } + } + } + + private fun parsePackage(fields: Array<String>) { + if (fields.size < 3) { + throw ParseException("Package ('p') expects 2 fields.") + } + val name = fields[1] + val rawPolicy = fields[2] + if (resolveExtendingClass(name) != null) { + throw ParseException("Package can't be a super class type") + } + if (resolveSpecialClass(name) != SpecialClass.NotSpecial) { + throw ParseException("Package can't be a special class type") + } + if (rawPolicy.startsWith("!")) { + throw ParseException("Package can't have a substitution") + } + if (rawPolicy.startsWith("~")) { + throw ParseException("Package can't have a class load hook") + } + val policy = parsePolicy(rawPolicy) + if (!policy.isUsableWithClasses) { + throw ParseException("Package can't have policy '$policy'") + } + packageFilter.addPolicy(name, policy.withReason(FILTER_REASON)) + } + + private fun parseClass(fields: Array<String>) { + if (fields.size < 3) { + throw ParseException("Class ('c') expects 2 fields.") + } + currentClassName = fields[1] + + // superClass is set when the class name starts with a "*". + val superClass = resolveExtendingClass(currentClassName) + + // :aidl, etc? + val classType = resolveSpecialClass(currentClassName) + + if (fields[2].startsWith("!")) { + if (classType != SpecialClass.NotSpecial) { + // We could support it, but not needed at least for now. + throw ParseException( + "Special class can't have a substitution" + ) + } + // It's a redirection class. + val toClass = fields[2].substring(1) + imf.setRedirectionClass(currentClassName, toClass) + } else if (fields[2].startsWith("~")) { + if (classType != SpecialClass.NotSpecial) { + // We could support it, but not needed at least for now. + throw ParseException( + "Special class can't have a class load hook" + ) + } + // It's a class-load hook + val callback = fields[2].substring(1) + imf.setClassLoadHook(currentClassName, callback) + } else { + val policy = parsePolicy(fields[2]) + if (!policy.isUsableWithClasses) { + throw ParseException("Class can't have policy '$policy'") + } + + when (classType) { + SpecialClass.NotSpecial -> { + // TODO: Duplicate check, etc + if (superClass == null) { + imf.setPolicyForClass( + currentClassName, policy.withReason(FILTER_REASON) + ) + } else { + subclassFilter.addPolicy( + superClass, + policy.withReason("extends $superClass") + ) + } + } + + SpecialClass.Aidl -> { + if (aidlPolicy != null) { + throw ParseException( + "Policy for AIDL classes already defined" + ) + } + aidlPolicy = policy.withReason( + "$FILTER_REASON (special-class AIDL)" + ) + } + + SpecialClass.FeatureFlags -> { + if (featureFlagsPolicy != null) { + throw ParseException( + "Policy for feature flags already defined" + ) + } + featureFlagsPolicy = policy.withReason( + "$FILTER_REASON (special-class feature flags)" + ) + } + + SpecialClass.Sysprops -> { + if (syspropsPolicy != null) { + throw ParseException( + "Policy for sysprops already defined" + ) + } + syspropsPolicy = policy.withReason( + "$FILTER_REASON (special-class sysprops)" + ) + } + + SpecialClass.RFile -> { + if (rFilePolicy != null) { + throw ParseException( + "Policy for R file already defined" + ) + } + rFilePolicy = policy.withReason( + "$FILTER_REASON (special-class R file)" + ) + } + } + } + } + + private fun parseField(fields: Array<String>) { + if (fields.size < 3) { + throw ParseException("Field ('f') expects 2 fields.") + } + val name = fields[1] + val policy = parsePolicy(fields[2]) + if (!policy.isUsableWithFields) { + throw ParseException("Field can't have policy '$policy'") + } + require(this::currentClassName.isInitialized) + + // TODO: Duplicate check, etc + imf.setPolicyForField(currentClassName, name, policy.withReason(FILTER_REASON)) + } + + private fun parseMethod(fields: Array<String>) { + if (fields.size < 4) { + throw ParseException("Method ('m') expects 3 fields.") + } + val name = fields[1] + val signature = fields[2] + val policy = parsePolicy(fields[3]) + + if (!policy.isUsableWithMethods) { + throw ParseException("Method can't have policy '$policy'") + } + + require(this::currentClassName.isInitialized) + + imf.setPolicyForMethod( + currentClassName, name, signature, + policy.withReason(FILTER_REASON) + ) + if (policy == FilterPolicy.Substitute) { + val fromName = fields[3].substring(1) + + if (fromName == name) { + throw ParseException( + "Substitution must have a different name" + ) + } + + // Set the policy for the "from" method. + imf.setPolicyForMethod( + currentClassName, fromName, signature, + FilterPolicy.Keep.withReason(FILTER_REASON) + ) + + val classAndMethod = splitWithLastPeriod(fromName) + if (classAndMethod != null) { + // If the substitution target contains a ".", then + // it's a method call redirect. + methodReplaceSpec.add( + TextFilePolicyMethodReplaceFilter.MethodCallReplaceSpec( + currentClassName.toJvmClassName(), + name, + signature, + classAndMethod.first.toJvmClassName(), + classAndMethod.second, + ) + ) + } else { + // It's an in-class replace. + // ("@RavenwoodReplace" equivalent) + imf.setRenameTo(currentClassName, fromName, signature, name) + } + } + } + + private fun parseRename(fields: Array<String>) { + if (fields.size < 3) { + throw ParseException("Rename ('r') expects 2 fields.") + } + // Add ".*" to make it a prefix match. + val pattern = Pattern.compile(fields[1] + ".*") + + // Removing the leading /'s from the prefix. This allows + // using a single '/' as an empty suffix, which is useful to have a + // "negative" rename rule to avoid subsequent raname's from getting + // applied. (Which is needed for services.jar) + val prefix = fields[2].trimStart('/') + + typeRenameSpec += TextFilePolicyRemapperFilter.TypeRenameSpec( + pattern, prefix + ) + } +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyMethodReplaceFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyMethodReplaceFilter.kt new file mode 100644 index 000000000000..d45f41407a52 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyMethodReplaceFilter.kt @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import com.android.hoststubgen.asm.ClassNodes + +/** + * Filter used by TextFileFilterPolicyParser for "method call relacement". + */ +class TextFilePolicyMethodReplaceFilter( + val spec: List<MethodCallReplaceSpec>, + val classes: ClassNodes, + val fallback: OutputFilter, +) : DelegatingFilter(fallback) { + + data class MethodCallReplaceSpec( + val fromClass: String, + val fromMethod: String, + val fromDescriptor: String, + val toClass: String, + val toMethod: String, + ) + + override fun hasAnyMethodCallReplace(): Boolean { + return true + } + + override fun getMethodCallReplaceTo( + callerClassName: String, + callerMethodName: String, + className: String, + methodName: String, + descriptor: String, + ): MethodReplaceTarget? { + // Maybe use 'Tri' if we end up having too many replacements. + spec.forEach { + if (className == it.fromClass && + methodName == it.fromMethod && + descriptor == it.fromDescriptor + ) { + return MethodReplaceTarget(it.toClass, it.toMethod) + } + } + return null + } +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt new file mode 100644 index 000000000000..a78c6552b8d0 --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2024 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.hoststubgen.filters + +import com.android.hoststubgen.log +import java.util.regex.Pattern + +/** + * A filter that provides a simple "jarjar" functionality via [mapType] + */ +class TextFilePolicyRemapperFilter( + val typeRenameSpecs: List<TypeRenameSpec>, + fallback: OutputFilter, +) : DelegatingFilter(fallback) { + /** + * When a package name matches [typeInternalNamePattern], we prepend [typeInternalNamePrefix] + * to it. + */ + data class TypeRenameSpec( + val typeInternalNamePattern: Pattern, + val typeInternalNamePrefix: String, + ) + + private val cache = mutableMapOf<String, String>() + + override fun remapType(className: String): String? { + var mapped: String = className + typeRenameSpecs.forEach { + if (it.typeInternalNamePattern.matcher(className).matches()) { + mapped = it.typeInternalNamePrefix + className + log.d("Renaming type $className to $mapped") + } + } + cache[className] = mapped + return mapped + } +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/utils/ClassFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/utils/ClassFilter.kt index 01a7ab3eacfa..d6aa7617fd59 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/utils/ClassFilter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/utils/ClassFilter.kt @@ -24,19 +24,25 @@ import java.io.File /** * General purpose filter for class names. */ -class ClassFilter private constructor ( - val defaultResult: Boolean, +class ClassFilter private constructor( + private val defaultResult: Boolean, ) { - private data class FilterElement( - val allowed: Boolean, - val internalName: String, - val isPrefix: Boolean, + private enum class MatchType { + Full, + Prefix, + Suffix, + } + + private class FilterElement( + val allowed: Boolean, + val internalName: String, + val matchType: MatchType, ) { fun matches(classInternalName: String): Boolean { - if (isPrefix) { - return classInternalName.startsWith(internalName) - } else { - return classInternalName == internalName + return when (matchType) { + MatchType.Full -> classInternalName == internalName + MatchType.Prefix -> classInternalName.startsWith(internalName) + MatchType.Suffix -> classInternalName.endsWith(internalName) } } } @@ -54,15 +60,16 @@ class ClassFilter private constructor ( return it } - var result = defaultResult - run outer@{ - elements.forEach { e -> - if (e.matches(classInternalName)) { - result = e.allowed - return@outer // break equivalent. - } + val testClasses = sequence { + // Yield itself and its outer class(es) one by one + var idx = classInternalName.length + while (idx > 0) { + yield(classInternalName.substring(0, idx)) + idx = classInternalName.lastIndexOf('$', idx - 1) } } + + val result = elements.find { testClasses.any(it::matches) }?.allowed ?: defaultResult cache[classInternalName] = result return result @@ -87,9 +94,9 @@ class ClassFilter private constructor ( /** Build a filter from a string (for unit tests). */ fun buildFromString( - filterString: String, - defaultResult: Boolean, - filenameForErrorMessage: String + filterString: String, + defaultResult: Boolean, + filenameForErrorMessage: String ): ClassFilter { val ret = ClassFilter(defaultResult) @@ -113,29 +120,46 @@ class ClassFilter private constructor ( // Special case -- matches any class names. if (line == "*") { - ret.elements.add(FilterElement(allow, "", true)) + ret.elements.add(FilterElement(allow, "", MatchType.Prefix)) return@forEach } - // Handle wildcard -- e.g. "package.name.*" + // Handle prefix match -- e.g. "package.name.*" if (line.endsWith(".*")) { - ret.elements.add(FilterElement( - allow, line.substring(0, line.length - 2).toJvmClassName(), true)) + ret.elements.add( + FilterElement( + allow, + line.substring(0, line.length - 2).toJvmClassName() + "/", + MatchType.Prefix + ) + ) + return@forEach + } + + // Handle suffix match -- e.g. "*.Flags" + if (line.startsWith("*.")) { + ret.elements.add( + FilterElement( + allow, + "/" + line.substring(2, line.length).toJvmClassName(), + MatchType.Suffix + ) + ) return@forEach } // Any other uses of "*" would be an error. if (line.contains('*')) { throw ParseException( - "Wildcard (*) can only show up as the last element", - filenameForErrorMessage, - lineNo + "Wildcard (*) can only show up as the last element", + filenameForErrorMessage, + lineNo ) } - ret.elements.add(FilterElement(allow, line.toJvmClassName(), false)) + ret.elements.add(FilterElement(allow, line.toJvmClassName(), MatchType.Suffix)) } return ret } } -}
\ No newline at end of file +} diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/utils/Trie.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/utils/Trie.kt new file mode 100644 index 000000000000..1b3d79cddb8e --- /dev/null +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/utils/Trie.kt @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2024 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.hoststubgen.utils + +abstract class Trie<Key, Component, Value> { + + private val root = TrieNode<Component, Value>() + + abstract fun splitToComponents(key: Key): Iterator<Component> + + operator fun set(key: Key, value: Value) { + val node = root.getExactNode(splitToComponents(key)) + node.value = value + } + + operator fun get(key: Key): Value? { + return root.getNearestValue(null, splitToComponents(key)) + } + + private class TrieNode<Component, Value> { + private val children = mutableMapOf<Component, TrieNode<Component, Value>>() + var value: Value? = null + + fun getExactNode(components: Iterator<Component>): TrieNode<Component, Value> { + val n = components.next() + val child = children.getOrPut(n) { TrieNode() } + return if (components.hasNext()) { + child.getExactNode(components) + } else { + child + } + } + + fun getNearestValue(current: Value?, components: Iterator<Component>): Value? { + val n = components.next() + val child = children[n] ?: return current + val newValue = child.value ?: current + return if (components.hasNext()) { + child.getNearestValue(newValue, components) + } else { + newValue + } + } + } +} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/BaseAdapter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/BaseAdapter.kt index c99ff0e5d990..261ef59c45c7 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/BaseAdapter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/BaseAdapter.kt @@ -21,102 +21,64 @@ import com.android.hoststubgen.LogLevel import com.android.hoststubgen.asm.ClassNodes import com.android.hoststubgen.asm.UnifiedVisitor import com.android.hoststubgen.asm.getPackageNameFromFullClassName -import com.android.hoststubgen.asm.resolveClassNameWithDefaultPackage -import com.android.hoststubgen.asm.toJvmClassName import com.android.hoststubgen.filters.FilterPolicy import com.android.hoststubgen.filters.FilterPolicyWithReason import com.android.hoststubgen.filters.OutputFilter -import com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -import com.android.hoststubgen.hosthelper.HostStubGenKeptInStub +import com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep import com.android.hoststubgen.log +import java.io.PrintWriter import org.objectweb.asm.ClassVisitor import org.objectweb.asm.FieldVisitor import org.objectweb.asm.MethodVisitor import org.objectweb.asm.Opcodes import org.objectweb.asm.commons.ClassRemapper import org.objectweb.asm.util.TraceClassVisitor -import java.io.PrintWriter -val OPCODE_VERSION = Opcodes.ASM9 +const val OPCODE_VERSION = Opcodes.ASM9 -abstract class BaseAdapter ( - protected val classes: ClassNodes, - nextVisitor: ClassVisitor, - protected val filter: OutputFilter, - protected val options: Options, +abstract class BaseAdapter( + protected val classes: ClassNodes, + nextVisitor: ClassVisitor, + protected val filter: OutputFilter, + protected val options: Options, ) : ClassVisitor(OPCODE_VERSION, nextVisitor) { /** * Options to control the behavior. */ - data class Options ( - val errors: HostStubGenErrors, - val stats: HostStubGenStats?, - val enablePreTrace: Boolean, - val enablePostTrace: Boolean, - val enableNonStubMethodCallDetection: Boolean, - ) + data class Options( + val errors: HostStubGenErrors, + val stats: HostStubGenStats?, + val enablePreTrace: Boolean, + val enablePostTrace: Boolean + ) protected lateinit var currentPackageName: String protected lateinit var currentClassName: String - protected var nativeSubstitutionClass: String? = null + protected var redirectionClass: String? = null protected lateinit var classPolicy: FilterPolicyWithReason - /** - * Return whether an item with a given policy should be included in the output. - */ - protected abstract fun shouldEmit(policy: FilterPolicy): Boolean - - /** - * Inject [HostStubGenKeptInStub] and [HostStubGenKeptInImpl] as needed to an item. - */ - protected fun injectInStubAndKeepAnnotations(policy: FilterPolicy, v: UnifiedVisitor) { - if (policy.needsInStub) { - v.visitAnnotation(HostStubGenKeptInStub.CLASS_DESCRIPTOR, true) - } - if (policy.needsInImpl) { - v.visitAnnotation(HostStubGenKeptInImpl.CLASS_DESCRIPTOR, true) - } - } - override fun visit( - version: Int, - access: Int, - name: String, - signature: String?, - superName: String?, - interfaces: Array<String>, + version: Int, + access: Int, + name: String, + signature: String?, + superName: String?, + interfaces: Array<String>, ) { super.visit(version, access, name, signature, superName, interfaces) currentClassName = name currentPackageName = getPackageNameFromFullClassName(name) classPolicy = filter.getPolicyForClass(currentClassName) + redirectionClass = filter.getRedirectionClass(currentClassName) log.d("[%s] visit: %s (package: %s)", this.javaClass.simpleName, name, currentPackageName) log.indent() log.v("Emitting class: %s", name) log.indent() - filter.getNativeSubstitutionClass(currentClassName)?.let { className -> - val fullClassName = resolveClassNameWithDefaultPackage(className, currentPackageName) - .toJvmClassName() - log.d(" NativeSubstitutionClass: $fullClassName") - if (classes.findClass(fullClassName) == null) { - log.w("Native substitution class $fullClassName not found. Class must be " + - "available at runtime.") - } else { - // If the class exists, it must have a KeepClass policy. - if (filter.getPolicyForClass(fullClassName).policy != FilterPolicy.KeepClass) { - // TODO: Use real annotation name. - options.errors.onErrorFound( - "Native substitution class $fullClassName should have @Keep.") - } - } - - nativeSubstitutionClass = fullClassName - } // Inject annotations to generated classes. - injectInStubAndKeepAnnotations(classPolicy.policy, UnifiedVisitor.on(this)) + UnifiedVisitor.on(this).visitAnnotation(HostStubGenProcessedAsKeep.CLASS_DESCRIPTOR, true) } override fun visitEnd() { @@ -140,11 +102,11 @@ abstract class BaseAdapter ( } override fun visitField( - access: Int, - name: String, - descriptor: String, - signature: String?, - value: Any?, + access: Int, + name: String, + descriptor: String, + signature: String?, + value: Any?, ): FieldVisitor? { if (skipMemberModificationNestCount > 0) { return super.visitField(access, name, descriptor, signature, value) @@ -153,7 +115,7 @@ abstract class BaseAdapter ( log.d("visitField: %s %s [%x] Policy: %s", name, descriptor, access, policy) log.withIndent { - if (!shouldEmit(policy.policy)) { + if (policy.policy == FilterPolicy.Remove) { log.d("Removing %s %s", name, policy) return null } @@ -161,18 +123,19 @@ abstract class BaseAdapter ( log.v("Emitting field: %s %s %s", name, descriptor, policy) val ret = super.visitField(access, name, descriptor, signature, value) - injectInStubAndKeepAnnotations(policy.policy, UnifiedVisitor.on(ret)) + UnifiedVisitor.on(ret) + .visitAnnotation(HostStubGenProcessedAsKeep.CLASS_DESCRIPTOR, true) return ret } } override fun visitMethod( - access: Int, - name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, + access: Int, + name: String, + descriptor: String, + signature: String?, + exceptions: Array<String>?, ): MethodVisitor? { if (skipMemberModificationNestCount > 0) { return super.visitMethod(access, name, descriptor, signature, exceptions) @@ -186,11 +149,11 @@ abstract class BaseAdapter ( // Instead of this method, we rename the substitute-to method with the original // name, in the "Maybe rename the method" part below. val policy = filter.getPolicyForMethod(currentClassName, name, descriptor) - if (policy.policy.isSubstitute) { + if (policy.policy == FilterPolicy.Substitute) { log.d("Skipping %s%s %s", name, descriptor, policy) return null } - if (!shouldEmit(p.policy)) { + if (p.policy == FilterPolicy.Remove) { log.d("Removing %s%s %s", name, descriptor, policy) return null } @@ -208,13 +171,16 @@ abstract class BaseAdapter ( // `name` is the name of the method we're currently visiting, so it's usually a // "...$ravewnwood" name. newAccess = checkSubstitutionMethodCompatibility( - classes, currentClassName, newName, name, descriptor, options.errors) + classes, currentClassName, newName, name, descriptor, options.errors + ) if (newAccess == NOT_COMPATIBLE) { return null } - log.v("Emitting %s.%s%s as %s %s", currentClassName, name, descriptor, - newName, policy) + log.v( + "Emitting %s.%s%s as %s %s", currentClassName, name, descriptor, + newName, policy + ) } else { log.v("Emitting method: %s%s %s", name, descriptor, policy) newName = name @@ -224,14 +190,17 @@ abstract class BaseAdapter ( // But note, we only use it when calling the super's method, // but not for visitMethodInner(), because when subclass wants to change access, // it can do so inside visitMethodInner(). - newAccess = updateAccessFlags(newAccess, name, descriptor) + newAccess = updateAccessFlags(newAccess, name, descriptor, policy.policy) - val ret = visitMethodInner(access, newName, descriptor, signature, exceptions, policy, + val ret = visitMethodInner( + access, newName, descriptor, signature, exceptions, policy, renameTo != null, - super.visitMethod(newAccess, newName, descriptor, signature, exceptions)) + super.visitMethod(newAccess, newName, descriptor, signature, exceptions) + ) ret?.let { - injectInStubAndKeepAnnotations(policy.policy, UnifiedVisitor.on(ret)) + UnifiedVisitor.on(ret) + .visitAnnotation(HostStubGenProcessedAsKeep.CLASS_DESCRIPTOR, true) } return ret @@ -239,9 +208,10 @@ abstract class BaseAdapter ( } open fun updateAccessFlags( - access: Int, - name: String, - descriptor: String, + access: Int, + name: String, + descriptor: String, + policy: FilterPolicy, ): Int { return access } @@ -255,17 +225,16 @@ abstract class BaseAdapter ( policy: FilterPolicyWithReason, substituted: Boolean, superVisitor: MethodVisitor?, - ): MethodVisitor? + ): MethodVisitor? companion object { fun getVisitor( - classInternalName: String, - classes: ClassNodes, - nextVisitor: ClassVisitor, - filter: OutputFilter, - packageRedirector: PackageRedirectRemapper, - forImpl: Boolean, - options: Options, + classInternalName: String, + classes: ClassNodes, + nextVisitor: ClassVisitor, + filter: OutputFilter, + packageRedirector: PackageRedirectRemapper, + options: Options, ): ClassVisitor { var next = nextVisitor @@ -287,23 +256,20 @@ abstract class BaseAdapter ( if (!packageRedirector.isTarget(classInternalName)) { next = ClassRemapper(next, packageRedirector) } else { - log.v("Class $classInternalName is a redirect-from class, not applying" + - " --package-redirect") + log.v( + "Class $classInternalName is a redirect-from class, not applying" + + " --package-redirect" + ) } } - var ret: ClassVisitor - if (forImpl) { - ret = ImplGeneratingAdapter(classes, next, filter, options) - } else { - ret = StubGeneratingAdapter(classes, next, filter, options) - } + next = ImplGeneratingAdapter(classes, next, filter, options) // Inject TraceClassVisitor for debugging. if (options.enablePreTrace) { - ret = TraceClassVisitor(ret, verbosePrinter) + next = TraceClassVisitor(next, verbosePrinter) } - return ret + return next } } } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/BodyReplacingMethodVisitor.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/BodyReplacingMethodVisitor.kt index 8250412b3717..55d0c0e555f1 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/BodyReplacingMethodVisitor.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/BodyReplacingMethodVisitor.kt @@ -20,38 +20,23 @@ import org.objectweb.asm.Attribute import org.objectweb.asm.Handle import org.objectweb.asm.Label import org.objectweb.asm.MethodVisitor -import org.objectweb.asm.Opcodes import org.objectweb.asm.TypePath /** - * A method visitor that removes everything from method body. + * A method visitor that creates or replaces a method body. * - * To inject a method body, override [visitCode] and create the opcodes there. + * Override [emitNewCode] to build the method body. */ abstract class BodyReplacingMethodVisitor( - access: Int, - name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor?, + private val createBody: Boolean, + next: MethodVisitor? ) : MethodVisitor(OPCODE_VERSION, next) { - val isVoid: Boolean - val isStatic: Boolean - - init { - isVoid = descriptor.endsWith(")V") - isStatic = access and Opcodes.ACC_STATIC != 0 - } // Following methods are for things that we need to keep. // Since they're all calling the super method, we can just remove them, but we keep them // just to clarify what we're keeping. - final override fun visitParameter( - name: String?, - access: Int - ) { + final override fun visitParameter(name: String?, access: Int) { super.visitParameter(name, access) } @@ -59,10 +44,7 @@ abstract class BodyReplacingMethodVisitor( return super.visitAnnotationDefault() } - final override fun visitAnnotation( - descriptor: String?, - visible: Boolean - ): AnnotationVisitor? { + final override fun visitAnnotation(descriptor: String?, visible: Boolean): AnnotationVisitor? { return super.visitAnnotation(descriptor, visible) } @@ -75,17 +57,14 @@ abstract class BodyReplacingMethodVisitor( return super.visitTypeAnnotation(typeRef, typePath, descriptor, visible) } - final override fun visitAnnotableParameterCount( - parameterCount: Int, - visible: Boolean - ) { + final override fun visitAnnotableParameterCount(parameterCount: Int, visible: Boolean) { super.visitAnnotableParameterCount(parameterCount, visible) } final override fun visitParameterAnnotation( - parameter: Int, - descriptor: String?, - visible: Boolean + parameter: Int, + descriptor: String?, + visible: Boolean ): AnnotationVisitor? { return super.visitParameterAnnotation(parameter, descriptor, visible) } @@ -94,10 +73,6 @@ abstract class BodyReplacingMethodVisitor( super.visitAttribute(attribute) } - override fun visitEnd() { - super.visitEnd() - } - /** * Control when to emit the code. We use this to ignore all visitXxx method calls caused by * the original method, so we'll remove all the original code. @@ -108,9 +83,18 @@ abstract class BodyReplacingMethodVisitor( * (See also https://asm.ow2.io/asm4-guide.pdf section 3.2.1 about the MethovVisitor * call order.) */ - var emitCode = false + private var emitCode = false + + /** + * This value will be set as true when [visitCode] is called. In [visitEnd], if this value + * is still false, this means that the original method does not have a body. + * + * We want to forcefully inject a method body in [visitEnd] if [createBody] is true. + */ + private var visitedCode = false final override fun visitCode() { + visitedCode = true super.visitCode() try { @@ -122,15 +106,19 @@ abstract class BodyReplacingMethodVisitor( } } + final override fun visitEnd() { + if (!visitedCode && createBody) { + visitCode() + } + super.visitEnd() + } + /** * Subclass must implement it and emit code, and call [visitMaxs] at the end. */ abstract fun emitNewCode() - final override fun visitMaxs( - maxStack: Int, - maxLocals: Int - ) { + final override fun visitMaxs(maxStack: Int, maxLocals: Int) { if (emitCode) { super.visitMaxs(maxStack, maxLocals) } @@ -140,11 +128,11 @@ abstract class BodyReplacingMethodVisitor( // emit any of them, so they are all no-op. final override fun visitFrame( - type: Int, - numLocal: Int, - local: Array<out Any>?, - numStack: Int, - stack: Array<out Any>? + type: Int, + numLocal: Int, + local: Array<out Any>?, + numStack: Int, + stack: Array<out Any>? ) { if (emitCode) { super.visitFrame(type, numLocal, local, numStack, stack) @@ -157,38 +145,29 @@ abstract class BodyReplacingMethodVisitor( } } - final override fun visitIntInsn( - opcode: Int, - operand: Int - ) { + final override fun visitIntInsn(opcode: Int, operand: Int) { if (emitCode) { super.visitIntInsn(opcode, operand) } } - final override fun visitVarInsn( - opcode: Int, - varIndex: Int - ) { + final override fun visitVarInsn(opcode: Int, varIndex: Int) { if (emitCode) { super.visitVarInsn(opcode, varIndex) } } - final override fun visitTypeInsn( - opcode: Int, - type: String? - ) { + final override fun visitTypeInsn(opcode: Int, type: String?) { if (emitCode) { super.visitTypeInsn(opcode, type) } } final override fun visitFieldInsn( - opcode: Int, - owner: String?, - name: String?, - descriptor: String? + opcode: Int, + owner: String?, + name: String?, + descriptor: String? ) { if (emitCode) { super.visitFieldInsn(opcode, owner, name, descriptor) @@ -196,11 +175,11 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitMethodInsn( - opcode: Int, - owner: String?, - name: String?, - descriptor: String?, - isInterface: Boolean + opcode: Int, + owner: String?, + name: String?, + descriptor: String?, + isInterface: Boolean ) { if (emitCode) { super.visitMethodInsn(opcode, owner, name, descriptor, isInterface) @@ -208,21 +187,20 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitInvokeDynamicInsn( - name: String?, - descriptor: String?, - bootstrapMethodHandle: Handle?, - vararg bootstrapMethodArguments: Any? + name: String?, + descriptor: String?, + bootstrapMethodHandle: Handle?, + vararg bootstrapMethodArguments: Any? ) { if (emitCode) { - super.visitInvokeDynamicInsn(name, descriptor, bootstrapMethodHandle, - *bootstrapMethodArguments) + super.visitInvokeDynamicInsn( + name, descriptor, bootstrapMethodHandle, + *bootstrapMethodArguments + ) } } - final override fun visitJumpInsn( - opcode: Int, - label: Label? - ) { + final override fun visitJumpInsn(opcode: Int, label: Label?) { if (emitCode) { super.visitJumpInsn(opcode, label) } @@ -240,20 +218,17 @@ abstract class BodyReplacingMethodVisitor( } } - final override fun visitIincInsn( - varIndex: Int, - increment: Int - ) { + final override fun visitIincInsn(varIndex: Int, increment: Int) { if (emitCode) { super.visitIincInsn(varIndex, increment) } } final override fun visitTableSwitchInsn( - min: Int, - max: Int, - dflt: Label?, - vararg labels: Label? + min: Int, + max: Int, + dflt: Label?, + vararg labels: Label? ) { if (emitCode) { super.visitTableSwitchInsn(min, max, dflt, *labels) @@ -261,29 +236,26 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitLookupSwitchInsn( - dflt: Label?, - keys: IntArray?, - labels: Array<out Label>? + dflt: Label?, + keys: IntArray?, + labels: Array<out Label>? ) { if (emitCode) { super.visitLookupSwitchInsn(dflt, keys, labels) } } - final override fun visitMultiANewArrayInsn( - descriptor: String?, - numDimensions: Int - ) { + final override fun visitMultiANewArrayInsn(descriptor: String?, numDimensions: Int) { if (emitCode) { super.visitMultiANewArrayInsn(descriptor, numDimensions) } } final override fun visitInsnAnnotation( - typeRef: Int, - typePath: TypePath?, - descriptor: String?, - visible: Boolean + typeRef: Int, + typePath: TypePath?, + descriptor: String?, + visible: Boolean ): AnnotationVisitor? { if (emitCode) { return super.visitInsnAnnotation(typeRef, typePath, descriptor, visible) @@ -292,10 +264,10 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitTryCatchBlock( - start: Label?, - end: Label?, - handler: Label?, - type: String? + start: Label?, + end: Label?, + handler: Label?, + type: String? ) { if (emitCode) { super.visitTryCatchBlock(start, end, handler, type) @@ -303,10 +275,10 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitTryCatchAnnotation( - typeRef: Int, - typePath: TypePath?, - descriptor: String?, - visible: Boolean + typeRef: Int, + typePath: TypePath?, + descriptor: String?, + visible: Boolean ): AnnotationVisitor? { if (emitCode) { return super.visitTryCatchAnnotation(typeRef, typePath, descriptor, visible) @@ -315,12 +287,12 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitLocalVariable( - name: String?, - descriptor: String?, - signature: String?, - start: Label?, - end: Label?, - index: Int + name: String?, + descriptor: String?, + signature: String?, + start: Label?, + end: Label?, + index: Int ) { if (emitCode) { super.visitLocalVariable(name, descriptor, signature, start, end, index) @@ -328,25 +300,23 @@ abstract class BodyReplacingMethodVisitor( } final override fun visitLocalVariableAnnotation( - typeRef: Int, - typePath: TypePath?, - start: Array<out Label>?, - end: Array<out Label>?, - index: IntArray?, - descriptor: String?, - visible: Boolean + typeRef: Int, + typePath: TypePath?, + start: Array<out Label>?, + end: Array<out Label>?, + index: IntArray?, + descriptor: String?, + visible: Boolean ): AnnotationVisitor? { if (emitCode) { return super.visitLocalVariableAnnotation( - typeRef, typePath, start, end, index, descriptor, visible) + typeRef, typePath, start, end, index, descriptor, visible + ) } return null } - final override fun visitLineNumber( - line: Int, - start: Label? - ) { + final override fun visitLineNumber(line: Int, start: Label?) { if (emitCode) { super.visitLineNumber(line, start) } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/Helper.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/Helper.kt index dc4f26bdda34..dc4f26bdda34 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/Helper.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/Helper.kt diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/ImplGeneratingAdapter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/ImplGeneratingAdapter.kt index 416b78242899..567a69e43b58 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/ImplGeneratingAdapter.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/ImplGeneratingAdapter.kt @@ -18,7 +18,6 @@ package com.android.hoststubgen.visitors import com.android.hoststubgen.asm.CLASS_INITIALIZER_DESC import com.android.hoststubgen.asm.CLASS_INITIALIZER_NAME import com.android.hoststubgen.asm.ClassNodes -import com.android.hoststubgen.asm.isVisibilityPrivateOrPackagePrivate import com.android.hoststubgen.asm.prependArgTypeToMethodDescriptor import com.android.hoststubgen.asm.writeByteCodeToPushArguments import com.android.hoststubgen.asm.writeByteCodeToReturn @@ -33,22 +32,21 @@ import com.android.hoststubgen.log import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor import org.objectweb.asm.Opcodes +import org.objectweb.asm.Opcodes.INVOKEINTERFACE +import org.objectweb.asm.Opcodes.INVOKESTATIC +import org.objectweb.asm.Opcodes.INVOKEVIRTUAL import org.objectweb.asm.Type /** * An adapter that generates the "impl" class file from an input class file. */ class ImplGeneratingAdapter( - classes: ClassNodes, - nextVisitor: ClassVisitor, - filter: OutputFilter, - options: Options, + classes: ClassNodes, + nextVisitor: ClassVisitor, + filter: OutputFilter, + options: Options, ) : BaseAdapter(classes, nextVisitor, filter, options) { - override fun shouldEmit(policy: FilterPolicy): Boolean { - return policy.needsInImpl - } - private var classLoadHooks: List<String> = emptyList() override fun visit( @@ -104,14 +102,14 @@ class ImplGeneratingAdapter( private fun writeClassLoadHookCalls(mv: MethodVisitor) { classLoadHooks.forEach { classLoadHook -> // First argument: the class type. - mv.visitLdcInsn(Type.getType("L" + currentClassName + ";")) + mv.visitLdcInsn(Type.getType("L$currentClassName;")) // Second argument: method name mv.visitLdcInsn(classLoadHook) // Call HostTestUtils.onClassLoaded(). mv.visitMethodInsn( - Opcodes.INVOKESTATIC, + INVOKESTATIC, HostTestUtils.CLASS_INTERNAL_NAME, "onClassLoaded", "(Ljava/lang/Class;Ljava/lang/String;)V", @@ -121,69 +119,49 @@ class ImplGeneratingAdapter( } override fun updateAccessFlags( - access: Int, - name: String, - descriptor: String, + access: Int, + name: String, + descriptor: String, + policy: FilterPolicy, ): Int { - if ((access and Opcodes.ACC_NATIVE) != 0 && nativeSubstitutionClass != null) { + if (policy.isMethodRewriteBody) { + // If we are rewriting the entire method body, we need + // to convert native methods to non-native return access and Opcodes.ACC_NATIVE.inv() } return access } override fun visitMethodInner( - access: Int, - name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - policy: FilterPolicyWithReason, - substituted: Boolean, - superVisitor: MethodVisitor?, + access: Int, + name: String, + descriptor: String, + signature: String?, + exceptions: Array<String>?, + policy: FilterPolicyWithReason, + substituted: Boolean, + superVisitor: MethodVisitor?, ): MethodVisitor? { - // Inject method log, if needed. var innerVisitor = superVisitor // If method logging is enabled, inject call to the logging method. val methodCallHooks = filter.getMethodCallHooks(currentClassName, name, descriptor) if (methodCallHooks.isNotEmpty()) { innerVisitor = MethodCallHookInjectingAdapter( - access, name, descriptor, - signature, - exceptions, - innerVisitor, methodCallHooks, - ) + innerVisitor, + ) } // If this class already has a class initializer and a class load hook is needed, then // we inject code. if (classLoadHooks.isNotEmpty() && name == CLASS_INITIALIZER_NAME && - descriptor == CLASS_INITIALIZER_DESC) { - innerVisitor = ClassLoadHookInjectingMethodAdapter( - access, - name, - descriptor, - signature, - exceptions, - innerVisitor, - ) - } - - // If non-stub method call detection is enabled, then inject a call to the checker. - if (options.enableNonStubMethodCallDetection && doesMethodNeedNonStubCallCheck( - access, name, descriptor, policy) ) { - innerVisitor = NonStubMethodCallDetectingAdapter( - access, - name, - descriptor, - signature, - exceptions, - innerVisitor, - ) + descriptor == CLASS_INITIALIZER_DESC + ) { + innerVisitor = ClassLoadHookInjectingMethodAdapter(innerVisitor) } fun MethodVisitor.withAnnotation(descriptor: String): MethodVisitor { @@ -192,38 +170,35 @@ class ImplGeneratingAdapter( } log.withIndent { - var willThrow = false - if (policy.policy == FilterPolicy.Throw) { - log.v("Making method throw...") - willThrow = true - innerVisitor = ThrowingMethodAdapter( - access, name, descriptor, signature, exceptions, innerVisitor) - .withAnnotation(HostStubGenProcessedAsThrow.CLASS_DESCRIPTOR) - } - if ((access and Opcodes.ACC_NATIVE) != 0 && nativeSubstitutionClass != null) { - log.v("Rewriting native method...") - return NativeSubstitutingMethodAdapter( - access, name, descriptor, signature, exceptions, innerVisitor) - .withAnnotation(HostStubGenProcessedAsSubstitute.CLASS_DESCRIPTOR) - } - if (willThrow) { - return innerVisitor - } - - if (policy.policy == FilterPolicy.Ignore) { - when (Type.getReturnType(descriptor)) { - Type.VOID_TYPE -> { - log.v("Making method ignored...") - return IgnoreMethodAdapter( - access, name, descriptor, signature, exceptions, innerVisitor) - .withAnnotation(HostStubGenProcessedAsIgnore.CLASS_DESCRIPTOR) - } - else -> { - throw RuntimeException("Ignored policy only allowed for void methods") - } + // When we encounter native methods, we want to forcefully + // inject a method body. Also see [updateAccessFlags]. + val forceCreateBody = (access and Opcodes.ACC_NATIVE) != 0 + when (policy.policy) { + FilterPolicy.Throw -> { + log.v("Making method throw...") + return ThrowingMethodAdapter(forceCreateBody, innerVisitor) + .withAnnotation(HostStubGenProcessedAsThrow.CLASS_DESCRIPTOR) + } + FilterPolicy.Ignore -> { + log.v("Making method ignored...") + return IgnoreMethodAdapter(descriptor, forceCreateBody, innerVisitor) + .withAnnotation(HostStubGenProcessedAsIgnore.CLASS_DESCRIPTOR) + } + FilterPolicy.Redirect -> { + log.v("Redirecting method...") + return RedirectMethodAdapter( + access, name, descriptor, + forceCreateBody, innerVisitor + ) + .withAnnotation(HostStubGenProcessedAsSubstitute.CLASS_DESCRIPTOR) } + else -> {} } } + + if (filter.hasAnyMethodCallReplace()) { + innerVisitor = MethodCallReplacingAdapter(name, innerVisitor) + } if (substituted) { innerVisitor?.withAnnotation(HostStubGenProcessedAsSubstitute.CLASS_DESCRIPTOR) } @@ -231,53 +206,32 @@ class ImplGeneratingAdapter( return innerVisitor } - fun doesMethodNeedNonStubCallCheck( - access: Int, - name: String, - descriptor: String, - policy: FilterPolicyWithReason, - ): Boolean { - // If a method is in the stub, then no need to check. - if (policy.policy.needsInStub) { - return false - } - // If a method is private or package-private, no need to check. - // Technically test code can use framework package name, so it's a bit too lenient. - if (isVisibilityPrivateOrPackagePrivate(access)) { - return false - } - // TODO: If the method overrides a method that's accessible by tests, then we shouldn't - // do the check. (e.g. overrides a stub method or java standard method.) - - return true - } - /** * A method adapter that replaces the method body with a HostTestUtils.onThrowMethodCalled() * call. */ private inner class ThrowingMethodAdapter( - access: Int, - val name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor? - ) : BodyReplacingMethodVisitor(access, name, descriptor, signature, exceptions, next) { + createBody: Boolean, + next: MethodVisitor? + ) : BodyReplacingMethodVisitor(createBody, next) { override fun emitNewCode() { - visitMethodInsn(Opcodes.INVOKESTATIC, - HostTestUtils.CLASS_INTERNAL_NAME, - "onThrowMethodCalled", - "()V", - false) + visitMethodInsn( + INVOKESTATIC, + HostTestUtils.CLASS_INTERNAL_NAME, + "onThrowMethodCalled", + "()V", + false + ) // We still need a RETURN opcode for the return type. // For now, let's just inject a `throw`. visitTypeInsn(Opcodes.NEW, "java/lang/RuntimeException") visitInsn(Opcodes.DUP) visitLdcInsn("Unreachable") - visitMethodInsn(Opcodes.INVOKESPECIAL, "java/lang/RuntimeException", - "<init>", "(Ljava/lang/String;)V", false) + visitMethodInsn( + Opcodes.INVOKESPECIAL, "java/lang/RuntimeException", + "<init>", "(Ljava/lang/String;)V", false + ) visitInsn(Opcodes.ATHROW) // visitMaxs(3, if (isStatic) 0 else 1) @@ -289,54 +243,67 @@ class ImplGeneratingAdapter( * A method adapter that replaces the method body with a no-op return. */ private inner class IgnoreMethodAdapter( - access: Int, - val name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor? - ) : BodyReplacingMethodVisitor(access, name, descriptor, signature, exceptions, next) { + val descriptor: String, + createBody: Boolean, + next: MethodVisitor? + ) : BodyReplacingMethodVisitor(createBody, next) { override fun emitNewCode() { - visitInsn(Opcodes.RETURN) + when (Type.getReturnType(descriptor)) { + Type.VOID_TYPE -> visitInsn(Opcodes.RETURN) + Type.BOOLEAN_TYPE, Type.BYTE_TYPE, Type.CHAR_TYPE, Type.SHORT_TYPE, + Type.INT_TYPE -> { + visitInsn(Opcodes.ICONST_0) + visitInsn(Opcodes.IRETURN) + } + Type.LONG_TYPE -> { + visitInsn(Opcodes.LCONST_0) + visitInsn(Opcodes.LRETURN) + } + Type.FLOAT_TYPE -> { + visitInsn(Opcodes.FCONST_0) + visitInsn(Opcodes.FRETURN) + } + Type.DOUBLE_TYPE -> { + visitInsn(Opcodes.DCONST_0) + visitInsn(Opcodes.DRETURN) + } + else -> { + visitInsn(Opcodes.ACONST_NULL) + visitInsn(Opcodes.ARETURN) + } + } visitMaxs(0, 0) // We let ASM figure them out. } } /** - * A method adapter that replaces a native method call with a call to the "native substitution" - * class. + * A method adapter that rewrite a method body with a + * call to a method in the redirection class. */ - private inner class NativeSubstitutingMethodAdapter( - val access: Int, - private val name: String, - private val descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor? - ) : MethodVisitor(OPCODE_VERSION, next) { - override fun visitCode() { - throw RuntimeException("NativeSubstitutingMethodVisitor should be called on " + - " native method, where visitCode() shouldn't be called.") - } + private inner class RedirectMethodAdapter( + access: Int, + private val name: String, + private val descriptor: String, + createBody: Boolean, + next: MethodVisitor? + ) : BodyReplacingMethodVisitor(createBody, next) { - override fun visitEnd() { - super.visitCode() + private val isStatic = (access and Opcodes.ACC_STATIC) != 0 + override fun emitNewCode() { var targetDescriptor = descriptor var argOffset = 0 - // For non-static native method, we need to tweak it a bit. - if ((access and Opcodes.ACC_STATIC) == 0) { + // For non-static method, we need to tweak it a bit. + if (!isStatic) { // Push `this` as the first argument. this.visitVarInsn(Opcodes.ALOAD, 0) // Update the descriptor -- add this class's type as the first argument // to the method descriptor. - val thisType = Type.getType("L" + currentClassName + ";") - targetDescriptor = prependArgTypeToMethodDescriptor( - descriptor, - thisType, + descriptor, + currentClassName, ) // Shift the original arguments by one. @@ -345,16 +312,17 @@ class ImplGeneratingAdapter( writeByteCodeToPushArguments(descriptor, this, argOffset) - visitMethodInsn(Opcodes.INVOKESTATIC, - nativeSubstitutionClass, - name, - targetDescriptor, - false) + visitMethodInsn( + INVOKESTATIC, + redirectionClass, + name, + targetDescriptor, + false + ) writeByteCodeToReturn(descriptor, this) visitMaxs(99, 0) // We let ASM figure them out. - super.visitEnd() } } @@ -365,25 +333,22 @@ class ImplGeneratingAdapter( * `this(...)`. The logging code will be injected *before* such calls. */ private inner class MethodCallHookInjectingAdapter( - access: Int, - val name: String, - val descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor?, - val hooks: List<String>, + val name: String, + val descriptor: String, + val hooks: List<String>, + next: MethodVisitor?, ) : MethodVisitor(OPCODE_VERSION, next) { override fun visitCode() { super.visitCode() hooks.forEach { hook -> - mv.visitLdcInsn(Type.getType("L" + currentClassName + ";")) + mv.visitLdcInsn(Type.getType("L$currentClassName;")) visitLdcInsn(name) visitLdcInsn(descriptor) visitLdcInsn(hook) visitMethodInsn( - Opcodes.INVOKESTATIC, + INVOKESTATIC, HostTestUtils.CLASS_INTERNAL_NAME, "callMethodCallHook", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", @@ -397,11 +362,6 @@ class ImplGeneratingAdapter( * Inject a class load hook call. */ private inner class ClassLoadHookInjectingMethodAdapter( - access: Int, - val name: String, - val descriptor: String, - signature: String?, - exceptions: Array<String>?, next: MethodVisitor? ) : MethodVisitor(OPCODE_VERSION, next) { override fun visitCode() { @@ -411,44 +371,57 @@ class ImplGeneratingAdapter( } } - /** - * A method adapter that detects calls to non-stub methods. - */ - private inner class NonStubMethodCallDetectingAdapter( - access: Int, - val name: String, - val descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor? + private inner class MethodCallReplacingAdapter( + val callerMethodName: String, + next: MethodVisitor?, ) : MethodVisitor(OPCODE_VERSION, next) { - override fun visitCode() { - super.visitCode() + override fun visitMethodInsn( + opcode: Int, + owner: String?, + name: String?, + descriptor: String?, + isInterface: Boolean, + ) { + when (opcode) { + INVOKESTATIC, INVOKEVIRTUAL, INVOKEINTERFACE -> {} + else -> { + // Don't touch other opcodes. + super.visitMethodInsn(opcode, owner, name, descriptor, isInterface) + return + } + } + val to = filter.getMethodCallReplaceTo( + currentClassName, callerMethodName, owner!!, name!!, descriptor!! + ) - // First three arguments to HostTestUtils.onNonStubMethodCalled(). - visitLdcInsn(currentClassName) - visitLdcInsn(name) - visitLdcInsn(descriptor) + if (to == null + // Don't replace if the target is the callsite. + || (to.className == currentClassName && to.methodName == callerMethodName) + ) { + super.visitMethodInsn(opcode, owner, name, descriptor, isInterface) + return + } - // Call: HostTestUtils.getStackWalker().getCallerClass(). - // This push the caller Class in the stack. - visitMethodInsn(Opcodes.INVOKESTATIC, - HostTestUtils.CLASS_INTERNAL_NAME, - "getStackWalker", - "()Ljava/lang/StackWalker;", - false) - visitMethodInsn(Opcodes.INVOKEVIRTUAL, - "java/lang/StackWalker", - "getCallerClass", - "()Ljava/lang/Class;", - false) - - // Then call onNonStubMethodCalled(). - visitMethodInsn(Opcodes.INVOKESTATIC, - HostTestUtils.CLASS_INTERNAL_NAME, - "onNonStubMethodCalled", - "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V", - false) + // Replace the method call with a (static) call to the target method. + // If it's a non-static call, the target method's first argument will receive "this". + // (Because of that, we don't need to manipulate the stack. Just replace the + // method call.) + + val toDesc = if (opcode == INVOKESTATIC) { + // Static call to static call, no need to change the desc. + descriptor + } else { + // Need to prepend the "this" type to the descriptor. + prependArgTypeToMethodDescriptor(descriptor, owner) + } + + mv.visitMethodInsn( + INVOKESTATIC, + to.className, + to.methodName, + toDesc, + false + ) } } } diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/PackageRedirectRemapper.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/PackageRedirectRemapper.kt index b3790e12a111..e90ecd7ef678 100644 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/PackageRedirectRemapper.kt +++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/visitors/PackageRedirectRemapper.kt @@ -20,6 +20,18 @@ import org.objectweb.asm.commons.Remapper /** * A [Remapper] for `--package-redirect` + * + * This is a feature to update all calls to specific packages to another package, which allows + * implementing a class in a different package, when the original package isn't allowed to modify. + * + * For example, using this, we can implement `dalvik.*` APIs in a separate package, and update + * all calls to the `dalvik` package to a different package. + * + * For this purpose, we don't expect the "renamed-from" classes to be in the target jar, + * so we don't apply the remapper to them. (The exclusion happens at the callsite of this class) + * + * TODO: Currently it's not used. Maybe remove, or just unify with the other remapper feature + * with TextFileFilterPolicyParser.kt. */ class PackageRedirectRemapper( packageRedirects: List<Pair<String, String>>, diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/Android.bp b/ravenwood/tools/hoststubgen/test-tiny-framework/Android.bp index e7873d6eecc3..1570549ec27d 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/Android.bp +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/Android.bp @@ -16,12 +16,12 @@ java_library { static_libs: [ "hoststubgen-annotations", ], - visibility: ["//frameworks/base/tools/hoststubgen:__subpackages__"], + visibility: ["//frameworks/base/ravenwood/tools/hoststubgen:__subpackages__"], } // Create stub/impl jars from "hoststubgen-test-tiny-framework", using the following 3 rules. java_genrule_host { - name: "hoststubgen-test-tiny-framework-host", + name: "hoststubgen-test-tiny-framework-host-base", defaults: ["hoststubgen-command-defaults"], cmd: hoststubgen_common_options + "--in-jar $(location :hoststubgen-test-tiny-framework) " + @@ -35,25 +35,13 @@ java_genrule_host { } java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-stub", - cmd: "cp $(in) $(out)", - srcs: [ - ":hoststubgen-test-tiny-framework-host{host_stub.jar}", - ], - out: [ - "host_stub.jar", - ], - visibility: ["//visibility:private"], -} - -java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-impl", + name: "hoststubgen-test-tiny-framework-host", cmd: "cp $(in) $(out)", srcs: [ - ":hoststubgen-test-tiny-framework-host{host_impl.jar}", + ":hoststubgen-test-tiny-framework-host-base{host.jar}", ], out: [ - "host_impl.jar", + "host.jar", ], visibility: ["//visibility:private"], } @@ -61,7 +49,7 @@ java_genrule_host { // Same as "hoststubgen-test-tiny-framework-host", but with more options, to test more hoststubgen // features. java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-ext", + name: "hoststubgen-test-tiny-framework-host-ext-base", defaults: ["hoststubgen-command-defaults"], cmd: hoststubgen_common_options + "--in-jar $(location :hoststubgen-test-tiny-framework) " + @@ -79,37 +67,25 @@ java_genrule_host { } java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-ext-stub", - cmd: "cp $(in) $(out)", - srcs: [ - ":hoststubgen-test-tiny-framework-host-ext{host_stub.jar}", - ], - out: [ - "host_stub.jar", - ], - visibility: ["//visibility:private"], -} - -java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-ext-impl", + name: "hoststubgen-test-tiny-framework-host-ext", cmd: "cp $(in) $(out)", srcs: [ - ":hoststubgen-test-tiny-framework-host-ext{host_impl.jar}", + ":hoststubgen-test-tiny-framework-host-ext-base{host.jar}", ], out: [ - "host_impl.jar", + "host.jar", ], visibility: ["//visibility:private"], } // Compile the test jar, using 2 rules. -// 1. Build the test against the stub. +// 1. Build the test against the original framework. java_library_host { name: "hoststubgen-test-tiny-test-lib", srcs: ["tiny-test/src/**/*.java"], libs: [ - "hoststubgen-test-tiny-framework-host-stub", + "hoststubgen-test-tiny-framework", ], static_libs: [ "junit", @@ -129,7 +105,7 @@ java_test_host { static_libs: [ "hoststubgen-test-tiny-test-lib", "hoststubgen-helper-runtime", - "hoststubgen-test-tiny-framework-host-impl", + "hoststubgen-test-tiny-framework-host", ], test_suites: ["general-tests"], } @@ -149,49 +125,25 @@ java_genrule_host { } java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-stub-dump", - defaults: ["hoststubgen-jar-dump-defaults"], - srcs: [ - ":hoststubgen-test-tiny-framework-host-stub", - ], - out: [ - "02-hoststubgen-test-tiny-framework-host-stub-dump.txt", - ], - visibility: ["//visibility:private"], -} - -java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-impl-dump", - defaults: ["hoststubgen-jar-dump-defaults"], - srcs: [ - ":hoststubgen-test-tiny-framework-host-impl", - ], - out: [ - "03-hoststubgen-test-tiny-framework-host-impl-dump.txt", - ], - visibility: ["//visibility:private"], -} - -java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-ext-stub-dump", + name: "hoststubgen-test-tiny-framework-host-dump", defaults: ["hoststubgen-jar-dump-defaults"], srcs: [ - ":hoststubgen-test-tiny-framework-host-ext-stub", + ":hoststubgen-test-tiny-framework-host", ], out: [ - "12-hoststubgen-test-tiny-framework-host-ext-stub-dump.txt", + "03-hoststubgen-test-tiny-framework-host-dump.txt", ], visibility: ["//visibility:private"], } java_genrule_host { - name: "hoststubgen-test-tiny-framework-host-ext-impl-dump", + name: "hoststubgen-test-tiny-framework-host-ext-dump", defaults: ["hoststubgen-jar-dump-defaults"], srcs: [ - ":hoststubgen-test-tiny-framework-host-ext-impl", + ":hoststubgen-test-tiny-framework-host-ext", ], out: [ - "13-hoststubgen-test-tiny-framework-host-ext-impl-dump.txt", + "13-hoststubgen-test-tiny-framework-host-ext-dump.txt", ], visibility: ["//visibility:private"], } @@ -206,11 +158,9 @@ python_test_host { "golden-output/*.txt", ], java_data: [ - "hoststubgen-test-tiny-framework-host-stub-dump", - "hoststubgen-test-tiny-framework-host-impl-dump", "hoststubgen-test-tiny-framework-orig-dump", - "hoststubgen-test-tiny-framework-host-ext-stub-dump", - "hoststubgen-test-tiny-framework-host-ext-impl-dump", + "hoststubgen-test-tiny-framework-host-dump", + "hoststubgen-test-tiny-framework-host-ext-dump", ], test_suites: ["general-tests"], } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/AndroidTest-host.xml b/ravenwood/tools/hoststubgen/test-tiny-framework/AndroidTest-host.xml index 84aad69c33bc..84aad69c33bc 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/AndroidTest-host.xml +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/AndroidTest-host.xml diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/README.md b/ravenwood/tools/hoststubgen/test-tiny-framework/README.md index 344b4e953b23..344b4e953b23 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/README.md +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/README.md diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/annotation-allowed-classes-tiny-framework.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/annotation-allowed-classes-tiny-framework.txt index bd9e85e17890..de4cb0c536c1 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/annotation-allowed-classes-tiny-framework.txt +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/annotation-allowed-classes-tiny-framework.txt @@ -6,10 +6,10 @@ # To allow a specific class to use annotations: -# com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations +# com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations # To disallow a specific class to use annotations: -# !com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations +# !com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations # To allow a specific package to use annotations: # com.android.hoststubgen.test.* diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/diff-and-update-golden.sh b/ravenwood/tools/hoststubgen/test-tiny-framework/diff-and-update-golden.sh index 00cbfe38e815..3726ca972564 100755 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/diff-and-update-golden.sh +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/diff-and-update-golden.sh @@ -63,7 +63,7 @@ shift $(($OPTIND - 1)) # Build the dump files, which are the input of this test. -run m tiny-framework-dump-test +run m dump-jar tiny-framework-dump-test # Get the path to the generate text files. (not the golden files.) diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt index dd638925a5bc..103e152c7e39 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt @@ -21,6 +21,26 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) +## Class: android/hosttest/annotation/HostSideTestIgnore.class + Compiled from "HostSideTestIgnore.java" +public interface android.hosttest.annotation.HostSideTestIgnore extends java.lang.annotation.Annotation + minor version: 0 + major version: 61 + flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION + this_class: #x // android/hosttest/annotation/HostSideTestIgnore + super_class: #x // java/lang/Object + interfaces: 1, fields: 0, methods: 0, attributes: 2 +} +SourceFile: "HostSideTestIgnore.java" +RuntimeVisibleAnnotations: + x: #x(#x=[e#x.#x,e#x.#x]) + java.lang.annotation.Target( + value=[Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] + ) + x: #x(#x=e#x.#x) + java.lang.annotation.Retention( + value=Ljava/lang/annotation/RetentionPolicy;.CLASS + ) ## Class: android/hosttest/annotation/HostSideTestKeep.class Compiled from "HostSideTestKeep.java" public interface android.hosttest.annotation.HostSideTestKeep extends java.lang.annotation.Annotation @@ -41,20 +61,40 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestNativeSubstitutionClass.class - Compiled from "HostSideTestNativeSubstitutionClass.java" -public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass extends java.lang.annotation.Annotation +## Class: android/hosttest/annotation/HostSideTestRedirect.class + Compiled from "HostSideTestRedirect.java" +public interface android.hosttest.annotation.HostSideTestRedirect extends java.lang.annotation.Annotation + minor version: 0 + major version: 61 + flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION + this_class: #x // android/hosttest/annotation/HostSideTestRedirect + super_class: #x // java/lang/Object + interfaces: 1, fields: 0, methods: 0, attributes: 2 +} +SourceFile: "HostSideTestRedirect.java" +RuntimeVisibleAnnotations: + x: #x(#x=[e#x.#x]) + java.lang.annotation.Target( + value=[Ljava/lang/annotation/ElementType;.METHOD] + ) + x: #x(#x=e#x.#x) + java.lang.annotation.Retention( + value=Ljava/lang/annotation/RetentionPolicy;.CLASS + ) +## Class: android/hosttest/annotation/HostSideTestRedirectionClass.class + Compiled from "HostSideTestRedirectionClass.java" +public interface android.hosttest.annotation.HostSideTestRedirectionClass extends java.lang.annotation.Annotation minor version: 0 major version: 61 flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestNativeSubstitutionClass + this_class: #x // android/hosttest/annotation/HostSideTestRedirectionClass super_class: #x // java/lang/Object interfaces: 1, fields: 0, methods: 1, attributes: 2 public abstract java.lang.String value(); descriptor: ()Ljava/lang/String; flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT } -SourceFile: "HostSideTestNativeSubstitutionClass.java" +SourceFile: "HostSideTestRedirectionClass.java" RuntimeVisibleAnnotations: x: #x(#x=[e#x.#x]) java.lang.annotation.Target( @@ -104,26 +144,6 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestStub.class - Compiled from "HostSideTestStub.java" -public interface android.hosttest.annotation.HostSideTestStub extends java.lang.annotation.Annotation - minor version: 0 - major version: 61 - flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestStub - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "HostSideTestStub.java" -RuntimeVisibleAnnotations: - x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) - java.lang.annotation.Target( - value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] - ) - x: #x(#x=e#x.#x) - java.lang.annotation.Retention( - value=Ljava/lang/annotation/RetentionPolicy;.CLASS - ) ## Class: android/hosttest/annotation/HostSideTestSubstitute.class Compiled from "HostSideTestSubstitute.java" public interface android.hosttest.annotation.HostSideTestSubstitute extends java.lang.annotation.Annotation @@ -187,26 +207,6 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestWholeClassStub.class - Compiled from "HostSideTestWholeClassStub.java" -public interface android.hosttest.annotation.HostSideTestWholeClassStub extends java.lang.annotation.Annotation - minor version: 0 - major version: 61 - flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestWholeClassStub - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "HostSideTestWholeClassStub.java" -RuntimeVisibleAnnotations: - x: #x(#x=[e#x.#x]) - java.lang.annotation.Target( - value=[Ljava/lang/annotation/ElementType;.TYPE] - ) - x: #x(#x=e#x.#x) - java.lang.annotation.Retention( - value=Ljava/lang/annotation/RetentionPolicy;.CLASS - ) ## Class: android/hosttest/annotation/tests/HostSideTestSuppress.class Compiled from "HostSideTestSuppress.java" public interface android.hosttest.annotation.tests.HostSideTestSuppress extends java.lang.annotation.Annotation @@ -394,120 +394,15 @@ NestMembers: com/android/hoststubgen/test/tinyframework/R$Nested InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.class - Compiled from "TinyFrameworkCallerCheck.java" -class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl - minor version: 0 - major version: 61 - flags: (0x0020) ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 3 - private com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl; - - public static int getOneKeep(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestKeep - - public static int getOneStub(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -SourceFile: "TinyFrameworkCallerCheck.java" -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.class - Compiled from "TinyFrameworkCallerCheck.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 4 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck; - - public static int getOne_withCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneKeep:()I - x: ireturn - LineNumberTable: - - public static int getOne_noCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneStub:()I - x: ireturn - LineNumberTable: -} -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.class - Compiled from "TinyFrameworkClassAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations.class + Compiled from "TinyFrameworkAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 10, attributes: 2 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - + interfaces: 0, fields: 2, methods: 9, attributes: 2 public int keep; descriptor: I flags: (0x0001) ACC_PUBLIC @@ -519,7 +414,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota descriptor: I flags: (0x0001) ACC_PUBLIC - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations(); + public com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: @@ -528,42 +423,21 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: putfield #x // Field keep:I + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 - x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; - 0 6 1 value I - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=2, locals=2, args_size=2 x: iload_1 x: iconst_1 x: iadd @@ -571,7 +445,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 0 4 1 value I RuntimeInvisibleAnnotations: x: #x() @@ -589,7 +463,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 0 8 1 foo Ljava/lang/String; RuntimeInvisibleAnnotations: x: #x() @@ -608,11 +482,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 0 10 1 value I RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub x: #x(#x=s#x) android.hosttest.annotation.HostSideTestSubstitute( suffix="_host" @@ -630,15 +502,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 0 4 1 value I public static native int nativeAddThree(int); descriptor: (I)I flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub x: #x(#x=s#x) android.hosttest.annotation.HostSideTestSubstitute( suffix="_host" @@ -668,48 +538,108 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestThrow - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; + public int toBeIgnored(); + descriptor: ()I flags: (0x0001) ACC_PUBLIC Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn + stack=3, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: ldc #x // String not supported on host side + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + x: athrow LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestIgnore } -SourceFile: "TinyFrameworkClassAnnotations.java" +SourceFile: "TinyFrameworkAnnotations.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x(#x=s#x) android.hosttest.annotation.HostSideTestClassLoadHook( value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.class - Compiled from "TinyFrameworkClassClassWideAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class + Compiled from "TinyFrameworkClassLoadHook.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 10, attributes: 2 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC + interfaces: 0, fields: 1, methods: 3, attributes: 2 + public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; + descriptor: Ljava/util/Set; + flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL + Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; + + private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); + descriptor: ()V + flags: (0x0002) ACC_PRIVATE + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; + public static void onClassLoaded(java.lang.Class<?>); + descriptor: (Ljava/lang/Class;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=1, args_size=1 + x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; + x: aload_0 + x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z + x: pop + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 11 0 clazz Ljava/lang/Class; + LocalVariableTypeTable: + Start Length Slot Name Signature + 0 11 0 clazz Ljava/lang/Class<*>; + Signature: #x // (Ljava/lang/Class<*>;)V + + static {}; + descriptor: ()V + flags: (0x0008) ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: new #x // class java/util/HashSet + x: dup + x: invokespecial #x // Method java/util/HashSet."<init>":()V + x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; + x: return + LineNumberTable: +} +SourceFile: "TinyFrameworkClassLoadHook.java" +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations.class + Compiled from "TinyFrameworkClassWideAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations + super_class: #x // java/lang/Object + interfaces: 0, fields: 2, methods: 6, attributes: 2 public int keep; descriptor: I flags: (0x0001) ACC_PUBLIC @@ -717,8 +647,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW public int remove; descriptor: I flags: (0x0001) ACC_PUBLIC + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRemove - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations(); + public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: @@ -727,36 +660,18 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: putfield #x // Field keep:I + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 - x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 0 6 1 value I - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=2, locals=2, args_size=2 x: iload_1 x: iconst_1 x: iadd @@ -764,24 +679,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 0 4 1 value I - public void toBeRemoved(java.lang.String); - descriptor: (Ljava/lang/String;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=2, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V - x: athrow - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 0 8 1 foo Ljava/lang/String; - public int addTwo(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC @@ -795,11 +695,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 0 10 1 value I RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub x: #x(#x=s#x) android.hosttest.annotation.HostSideTestSubstitute( suffix="_host" @@ -817,33 +715,26 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 0 4 1 value I - public static native int nativeAddThree(int); - descriptor: (I)I - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestSubstitute( - suffix="_host" - ) - - public static int nativeAddThree_host(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC + public void toBeRemoved(java.lang.String); + descriptor: (Ljava/lang/String;)V + flags: (0x0001) ACC_PUBLIC Code: - stack=2, locals=1, args_size=1 - x: iload_0 - x: iconst_3 - x: iadd - x: ireturn + stack=2, locals=2, args_size=2 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 value I + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; + 0 8 1 foo Ljava/lang/String; + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRemove public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; @@ -855,87 +746,15 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; -} -SourceFile: "TinyFrameworkClassClassWideAnnotations.java" -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class - Compiled from "TinyFrameworkClassLoadHook.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 2 - public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; - descriptor: Ljava/util/Set; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; - - public static void onClassLoaded(java.lang.Class<?>); - descriptor: (Ljava/lang/Class;)V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=2, locals=1, args_size=1 - x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: aload_0 - x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z - x: pop - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 11 0 clazz Ljava/lang/Class; - LocalVariableTypeTable: - Start Length Slot Name Signature - 0 11 0 clazz Ljava/lang/Class<*>; - Signature: #x // (Ljava/lang/Class<*>;)V - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=2, locals=0, args_size=0 - x: new #x // class java/util/HashSet - x: dup - x: invokespecial #x // Method java/util/HashSet."<init>":()V - x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: return - LineNumberTable: + 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestThrow } -SourceFile: "TinyFrameworkClassLoadHook.java" +SourceFile: "TinyFrameworkClassWideAnnotations.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.class Compiled from "TinyFrameworkClassWithInitializerDefault.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault @@ -950,14 +769,14 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault(); descriptor: ()V @@ -989,7 +808,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn SourceFile: "TinyFrameworkClassWithInitializerDefault.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.class Compiled from "TinyFrameworkClassWithInitializerStub.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub @@ -1004,14 +823,14 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub(); descriptor: ()V @@ -1047,7 +866,7 @@ RuntimeInvisibleAnnotations: value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.class @@ -1064,21 +883,21 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex GREEN; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex BLUE; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private final java.lang.String mLongName; descriptor: Ljava/lang/String; @@ -1158,7 +977,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC Signature: #x // (Ljava/lang/String;Ljava/lang/String;)V RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.lang.String getLongName(); descriptor: ()Ljava/lang/String; @@ -1174,7 +993,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.lang.String getShortName(); descriptor: ()Ljava/lang/String; @@ -1190,7 +1009,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1252,7 +1071,7 @@ Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubg SourceFile: "TinyFrameworkEnumComplex.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.class Compiled from "TinyFrameworkEnumSimple.java" public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple> @@ -1267,14 +1086,14 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple DOG; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $VALUES; descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; @@ -1373,7 +1192,7 @@ Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubg SourceFile: "TinyFrameworkEnumSimple.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.class Compiled from "TinyFrameworkExceptionTester.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester @@ -1427,7 +1246,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe SourceFile: "TinyFrameworkExceptionTester.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class Compiled from "TinyFrameworkForTextPolicy.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy @@ -1436,15 +1255,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 10, attributes: 1 + interfaces: 0, fields: 2, methods: 17, attributes: 1 public int stub; descriptor: I flags: (0x0001) ACC_PUBLIC - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - public int remove; descriptor: I flags: (0x0001) ACC_PUBLIC @@ -1459,35 +1274,17 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: aload_0 x: iconst_1 x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 - x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - 0 6 1 value I - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=2, locals=2, args_size=2 x: iload_1 x: iconst_1 x: iadd @@ -1513,6 +1310,132 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; 0 8 1 foo Ljava/lang/String; + public java.lang.String toBeIgnoredObj(); + descriptor: ()Ljava/lang/String; + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public void toBeIgnoredV(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public boolean toBeIgnoredZ(); + descriptor: ()Z + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public byte toBeIgnoredB(); + descriptor: ()B + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public char toBeIgnoredC(); + descriptor: ()C + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public short toBeIgnoredS(); + descriptor: ()S + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public int toBeIgnoredI(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public float toBeIgnoredF(); + descriptor: ()F + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + + public double toBeIgnoredD(); + descriptor: ()D + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + public int addTwo(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC @@ -1573,19 +1496,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli LocalVariableTable: Start Length Slot Name Signature 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; } SourceFile: "TinyFrameworkForTextPolicy.java" ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested.class @@ -1603,7 +1513,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -1611,7 +1521,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested(); descriptor: ()V @@ -1630,7 +1540,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes 0 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -1646,7 +1556,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -1659,7 +1569,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -1714,7 +1624,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes SourceFile: "TinyFrameworkLambdas.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas @@ -1757,7 +1667,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -1765,7 +1675,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas(); descriptor: ()V @@ -1784,7 +1694,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas 0 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -1800,7 +1710,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -1813,7 +1723,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -1868,7 +1778,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas SourceFile: "TinyFrameworkLambdas.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep NestMembers: @@ -1897,6 +1807,174 @@ BootstrapMethods: InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 3, attributes: 3 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo; + + public static void startThread(java.lang.Thread); + descriptor: (Ljava/lang/Thread;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: iconst_1 + x: invokevirtual #x // Method java/lang/Thread.setDaemon:(Z)V + x: aload_0 + x: invokevirtual #x // Method java/lang/Thread.start:()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 10 0 thread Ljava/lang/Thread; + + public static int add(int, int); + descriptor: (II)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=2, args_size=2 + x: iload_0 + x: iload_1 + x: iadd + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 4 0 a I + 0 4 1 b I +} +SourceFile: "TinyFrameworkMethodCallReplace.java" +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 5, attributes: 5 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace; + + public static boolean nonStaticMethodCallReplaceTester() throws java.lang.Exception; + descriptor: ()Z + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=3, locals=2, args_size=0 + x: new #x // class java/util/concurrent/atomic/AtomicBoolean + x: dup + x: iconst_0 + x: invokespecial #x // Method java/util/concurrent/atomic/AtomicBoolean."<init>":(Z)V + x: astore_0 + x: new #x // class java/lang/Thread + x: dup + x: aload_0 + x: invokedynamic #x, 0 // InvokeDynamic #x:run:(Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/lang/Runnable; + x: invokespecial #x // Method java/lang/Thread."<init>":(Ljava/lang/Runnable;)V + x: astore_1 + x: aload_1 + x: invokevirtual #x // Method java/lang/Thread.start:()V + x: aload_1 + x: invokevirtual #x // Method java/lang/Thread.join:()V + x: aload_0 + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.get:()Z + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 9 27 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; + 23 13 1 th Ljava/lang/Thread; + Exceptions: + throws java.lang.Exception + + public static int staticMethodCallReplaceTester(); + descriptor: ()I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: iconst_1 + x: iconst_2 + x: invokestatic #x // Method originalAdd:(II)I + x: ireturn + LineNumberTable: + + private static int originalAdd(int, int); + descriptor: (II)I + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=2, args_size=2 + x: iload_0 + x: iload_1 + x: iadd + x: iconst_1 + x: isub + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 6 0 a I + 0 6 1 b I + + private static void lambda$nonStaticMethodCallReplaceTester$0(java.util.concurrent.atomic.AtomicBoolean); + descriptor: (Ljava/util/concurrent/atomic/AtomicBoolean;)V + flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: invokestatic #x // Method java/lang/Thread.currentThread:()Ljava/lang/Thread; + x: invokevirtual #x // Method java/lang/Thread.isDaemon:()Z + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.set:(Z)V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 11 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; +} +SourceFile: "TinyFrameworkMethodCallReplace.java" +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +NestMembers: + com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo +BootstrapMethods: + x: #x REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; + Method arguments: + #x ()V + #x REF_invokeStatic com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.lambda$nonStaticMethodCallReplaceTester$0:(Ljava/util/concurrent/atomic/AtomicBoolean;)V + #x ()V +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.class Compiled from "TinyFrameworkNative.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative @@ -1905,7 +1983,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 11, attributes: 2 + interfaces: 0, fields: 1, methods: 14, attributes: 2 int value; descriptor: I flags: (0x0000) @@ -1926,6 +2004,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative public static native int nativeAddTwo(int); descriptor: (I)I flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect public static int nativeAddTwo_should_be_like_this(int); descriptor: (I)I @@ -1943,6 +2024,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative public static native long nativeLongPlus(long, long); descriptor: (JJ)J flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect public static long nativeLongPlus_should_be_like_this(long, long); descriptor: (JJ)J @@ -1977,6 +2061,9 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative public native int nativeNonStaticAddToValue(int); descriptor: (I)I flags: (0x0101) ACC_PUBLIC, ACC_NATIVE + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect public int nativeNonStaticAddToValue_should_be_like_this(int); descriptor: (I)I @@ -2000,6 +2087,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() android.hosttest.annotation.HostSideTestThrow + public static native void nativeStillKeep(); + descriptor: ()V + flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + public static void nativeStillNotSupported_should_be_like_this(); descriptor: ()V flags: (0x0009) ACC_PUBLIC, ACC_STATIC @@ -2014,13 +2105,47 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative public static native byte nativeBytePlus(byte, byte); descriptor: (BB)B flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect + + public void notNativeRedirected(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: new #x // class java/lang/RuntimeException + x: dup + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: athrow + LineNumberTable: + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect } SourceFile: "TinyFrameworkNative.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestNativeSubstitutionClass( + android.hosttest.annotation.HostSideTestRedirectionClass( value="TinyFrameworkNative_host" ) ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.class @@ -2031,7 +2156,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 5, attributes: 2 + interfaces: 0, fields: 0, methods: 7, attributes: 2 public com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host(); descriptor: ()V flags: (0x0001) ACC_PUBLIC @@ -2105,6 +2230,25 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host Start Length Slot Name Signature 0 5 0 arg1 B 0 5 1 arg2 B + + public static void notNativeRedirected(com.android.hoststubgen.test.tinyframework.TinyFrameworkNative); + descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=0, locals=1, args_size=1 + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 1 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=0, locals=0, args_size=0 + x: return + LineNumberTable: } SourceFile: "TinyFrameworkNative_host.java" RuntimeInvisibleAnnotations: @@ -2390,7 +2534,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 1, attributes: 4 + interfaces: 0, fields: 2, methods: 1, attributes: 3 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC @@ -2423,9 +2567,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass <no name> final mandated } SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses InnerClasses: public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses @@ -2484,6 +2625,40 @@ NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedCl InnerClasses: public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass.class + Compiled from "TinyFrameworkNestedClasses.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 1, attributes: 3 + public int value; + descriptor: I + flags: (0x0001) ACC_PUBLIC + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: bipush 8 + x: putfield #x // Field value:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 11 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass; +} +SourceFile: "TinyFrameworkNestedClasses.java" +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses +InnerClasses: + public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass.class Compiled from "TinyFrameworkNestedClasses.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass @@ -2492,7 +2667,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 4 + interfaces: 0, fields: 1, methods: 2, attributes: 3 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC @@ -2526,13 +2701,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; } SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses InnerClasses: public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass.class Compiled from "TinyFrameworkNestedClasses.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$SubClass extends com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass @@ -2643,11 +2816,12 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass SourceFile: "TinyFrameworkNestedClasses.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep NestMembers: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass + com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 @@ -2663,6 +2837,7 @@ InnerClasses: public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.class Compiled from "TinyFrameworkPackageRedirect.java" @@ -2705,7 +2880,188 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi SourceFile: "TinyFrameworkPackageRedirect.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.class + Compiled from "TinyFrameworkRenamedClassCaller.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 2, attributes: 2 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller; + + public static int foo(int); + descriptor: (I)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=3, locals=1, args_size=1 + x: new #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: dup + x: iload_0 + x: invokespecial #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed."<init>":(I)V + x: invokevirtual #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 12 0 value I +} +SourceFile: "TinyFrameworkRenamedClassCaller.java" +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.class + Compiled from "TinyFrameworkToBeRenamed.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 2, attributes: 2 + private final int mValue; + descriptor: I + flags: (0x0012) ACC_PRIVATE, ACC_FINAL + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed(int); + descriptor: (I)V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=2, args_size=2 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: iload_1 + x: putfield #x // Field mValue:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; + 0 10 1 value I + + public int getValue(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: getfield #x // Field mValue:I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; +} +SourceFile: "TinyFrameworkToBeRenamed.java" +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/packagetest/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 1 + public com.android.hoststubgen.test.tinyframework.packagetest.A(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/packagetest/A; +} +SourceFile: "A.java" +## Class: com/android/hoststubgen/test/tinyframework/packagetest/B.class + Compiled from "B.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.B + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/B + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 1 + public com.android.hoststubgen.test.tinyframework.packagetest.B(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/packagetest/B; +} +SourceFile: "B.java" +## Class: com/android/hoststubgen/test/tinyframework/packagetest/sub/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.sub.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/sub/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 1 + public com.android.hoststubgen.test.tinyframework.packagetest.sub.A(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/packagetest/sub/A; +} +SourceFile: "A.java" +## Class: com/android/hoststubgen/test/tinyframework/packagetest/sub/B.class + Compiled from "B.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.sub.B + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/sub/B + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 1 + public com.android.hoststubgen.test.tinyframework.packagetest.sub.B(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/packagetest/sub/B; +} +SourceFile: "B.java" ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C1.class Compiled from "C1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -3359,4 +3715,4 @@ public class com.unsupported.UnsupportedClass SourceFile: "UnsupportedClass.java" RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-impl-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt index 10bc91da2544..eeec554e954c 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-impl-dump.txt +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt @@ -12,12 +12,12 @@ public interface android.hosttest.annotation.HostSideTestClassLoadHook extends j flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "HostSideTestClassLoadHook.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -39,7 +39,7 @@ public interface android.hosttest.annotation.HostSideTestKeep extends java.lang. SourceFile: "HostSideTestKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -48,13 +48,35 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestNativeSubstitutionClass.class - Compiled from "HostSideTestNativeSubstitutionClass.java" -public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass extends java.lang.annotation.Annotation +## Class: android/hosttest/annotation/HostSideTestRedirect.class + Compiled from "HostSideTestRedirect.java" +public interface android.hosttest.annotation.HostSideTestRedirect extends java.lang.annotation.Annotation minor version: 0 major version: 61 flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestNativeSubstitutionClass + this_class: #x // android/hosttest/annotation/HostSideTestRedirect + super_class: #x // java/lang/Object + interfaces: 1, fields: 0, methods: 0, attributes: 2 +} +SourceFile: "HostSideTestRedirect.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + x: #x(#x=[e#x.#x]) + java.lang.annotation.Target( + value=[Ljava/lang/annotation/ElementType;.METHOD] + ) + x: #x(#x=e#x.#x) + java.lang.annotation.Retention( + value=Ljava/lang/annotation/RetentionPolicy;.CLASS + ) +## Class: android/hosttest/annotation/HostSideTestRedirectionClass.class + Compiled from "HostSideTestRedirectionClass.java" +public interface android.hosttest.annotation.HostSideTestRedirectionClass extends java.lang.annotation.Annotation + minor version: 0 + major version: 61 + flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION + this_class: #x // android/hosttest/annotation/HostSideTestRedirectionClass super_class: #x // java/lang/Object interfaces: 1, fields: 0, methods: 1, attributes: 2 public abstract java.lang.String value(); @@ -62,12 +84,12 @@ public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } -SourceFile: "HostSideTestNativeSubstitutionClass.java" +SourceFile: "HostSideTestRedirectionClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -89,7 +111,7 @@ public interface android.hosttest.annotation.HostSideTestRemove extends java.lan SourceFile: "HostSideTestRemove.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -98,20 +120,20 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestStub.class - Compiled from "HostSideTestStub.java" -public interface android.hosttest.annotation.HostSideTestStub extends java.lang.annotation.Annotation +## Class: android/hosttest/annotation/HostSideTestStaticInitializerKeep.class + Compiled from "HostSideTestStaticInitializerKeep.java" +public interface android.hosttest.annotation.HostSideTestStaticInitializerKeep extends java.lang.annotation.Annotation minor version: 0 major version: 61 flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestStub + this_class: #x // android/hosttest/annotation/HostSideTestStaticInitializerKeep super_class: #x // java/lang/Object interfaces: 1, fields: 0, methods: 0, attributes: 2 } -SourceFile: "HostSideTestStub.java" +SourceFile: "HostSideTestStaticInitializerKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -134,12 +156,12 @@ public interface android.hosttest.annotation.HostSideTestSubstitute extends java flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "HostSideTestSubstitute.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.METHOD] @@ -161,7 +183,7 @@ public interface android.hosttest.annotation.HostSideTestThrow extends java.lang SourceFile: "HostSideTestThrow.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -183,29 +205,7 @@ public interface android.hosttest.annotation.HostSideTestWholeClassKeep extends SourceFile: "HostSideTestWholeClassKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - x: #x(#x=[e#x.#x]) - java.lang.annotation.Target( - value=[Ljava/lang/annotation/ElementType;.TYPE] - ) - x: #x(#x=e#x.#x) - java.lang.annotation.Retention( - value=Ljava/lang/annotation/RetentionPolicy;.CLASS - ) -## Class: android/hosttest/annotation/HostSideTestWholeClassStub.class - Compiled from "HostSideTestWholeClassStub.java" -public interface android.hosttest.annotation.HostSideTestWholeClassStub extends java.lang.annotation.Annotation - minor version: 0 - major version: 61 - flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestWholeClassStub - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "HostSideTestWholeClassStub.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -237,9 +237,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Pro 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int addTwo(int); descriptor: (I)I @@ -256,9 +254,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Pro 0 4 0 a I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl @@ -266,9 +262,7 @@ InnerClasses: SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl ## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub.class Compiled from "IPretendingAidl.java" @@ -293,9 +287,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int addOne(int); descriptor: (I)I @@ -312,19 +304,15 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub 0 4 0 a I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl + public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl ## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl.class Compiled from "IPretendingAidl.java" @@ -342,9 +330,7 @@ InnerClasses: SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestMembers: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy @@ -362,9 +348,7 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.R$Nested(); descriptor: ()V @@ -380,9 +364,7 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/R$Nested; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -400,18 +382,14 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R + public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R SourceFile: "R.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/R ## Class: com/android/hoststubgen/test/tinyframework/R.class Compiled from "R.java" @@ -436,189 +414,31 @@ public class com.android.hoststubgen.test.tinyframework.R 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/R; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R + public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R SourceFile: "R.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestMembers: com/android/hoststubgen/test/tinyframework/R$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.class - Compiled from "TinyFrameworkCallerCheck.java" -class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl - minor version: 0 - major version: 61 - flags: (0x0020) ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 4 - private com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOneKeep(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String getOneKeep - x: ldc #x // String ()I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestKeep - - public static int getOneStub(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.class - Compiled from "TinyFrameworkCallerCheck.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations.class + Compiled from "TinyFrameworkAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 5 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_withCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneKeep:()I - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_noCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=1, locals=0, args_size=0 - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneStub:()I - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.class - Compiled from "TinyFrameworkClassAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 8, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - + interfaces: 0, fields: 1, methods: 7, attributes: 3 public int keep; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -628,12 +448,12 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota flags: (0x000a) ACC_PRIVATE, ACC_STATIC Code: stack=2, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations + x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations(); + public com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: @@ -642,70 +462,36 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: putfield #x // Field keep:I + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 - x: aload_0 x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I + x: iconst_1 + x: iadd x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; - 0 6 1 value I - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=2, args_size=2 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iload_1 - x: iconst_1 - x: iadd - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 15 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; - 15 4 1 value I + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; + 0 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -722,15 +508,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 0 4 1 value I RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddThree(int); descriptor: (I)I @@ -749,364 +533,232 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String unsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Unreachable - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + stack=3, locals=1, args_size=1 + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V + x: new #x // class java/lang/RuntimeException + x: dup + x: ldc #x // String Unreachable + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V x: athrow RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestThrow - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; + public int toBeIgnored(); + descriptor: ()I flags: (0x0001) ACC_PUBLIC Code: stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + x: iconst_0 + x: ireturn RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestIgnore } -SourceFile: "TinyFrameworkClassAnnotations.java" +SourceFile: "TinyFrameworkAnnotations.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x(#x=s#x) android.hosttest.annotation.HostSideTestClassLoadHook( value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.class - Compiled from "TinyFrameworkClassClassWideAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class + Compiled from "TinyFrameworkClassLoadHook.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 8, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int remove; - descriptor: I - flags: (0x0001) ACC_PUBLIC + interfaces: 0, fields: 1, methods: 3, attributes: 3 + public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; + descriptor: Ljava/util/Set; + flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL + Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations(); + private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); descriptor: ()V - flags: (0x0001) ACC_PUBLIC + flags: (0x0002) ACC_PRIVATE Code: - stack=2, locals=1, args_size=1 + stack=1, locals=1, args_size=1 x: aload_0 x: invokespecial #x // Method java/lang/Object."<init>":()V - x: aload_0 - x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC + public static void onClassLoaded(java.lang.Class<?>); + descriptor: (Ljava/lang/Class;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: - stack=2, locals=2, args_size=2 + stack=2, locals=1, args_size=1 + x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn + x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z + x: pop + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 0 6 1 value I + 0 11 0 clazz Ljava/lang/Class; + LocalVariableTypeTable: + Start Length Slot Name Signature + 0 11 0 clazz Ljava/lang/Class<*>; + Signature: #x // (Ljava/lang/Class<*>;)V RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC + static {}; + descriptor: ()V + flags: (0x0008) ACC_STATIC Code: - stack=2, locals=2, args_size=2 - x: iload_1 - x: iconst_1 - x: iadd - x: ireturn + stack=2, locals=0, args_size=0 + x: new #x // class java/util/HashSet + x: dup + x: invokespecial #x // Method java/util/HashSet."<init>":()V + x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; + x: return LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 0 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkClassLoadHook.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations.class + Compiled from "TinyFrameworkClassWideAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 4, attributes: 3 + public int keep; + descriptor: I + flags: (0x0001) ACC_PUBLIC + RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public void toBeRemoved(java.lang.String); - descriptor: (Ljava/lang/String;)V + public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations(); + descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: - stack=2, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V - x: athrow + stack=2, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: iconst_1 + x: putfield #x // Field keep:I + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 0 8 1 foo Ljava/lang/String; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int addTwo(int); + public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 x: iload_1 - x: iconst_2 + x: iconst_1 x: iadd x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 0 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public static int nativeAddThree(int); + public int addTwo(int); descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC + flags: (0x0001) ACC_PUBLIC Code: - stack=2, locals=1, args_size=1 - x: iload_0 - x: iconst_3 + stack=2, locals=2, args_size=2 + x: iload_1 + x: iconst_2 x: iadd x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 4 0 value I + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; + 0 4 1 value I RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; flags: (0x0001) ACC_PUBLIC Code: - stack=1, locals=1, args_size=1 - x: ldc #x // String This value shouldn\'t be seen on the host side. - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassClassWideAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class - Compiled from "TinyFrameworkClassLoadHook.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 3 - public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; - descriptor: Ljava/util/Set; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void onClassLoaded(java.lang.Class<?>); - descriptor: (Ljava/lang/Class;)V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=2, locals=1, args_size=1 - x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: aload_0 - x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z - x: pop - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 11 0 clazz Ljava/lang/Class; - LocalVariableTypeTable: - Start Length Slot Name Signature - 0 11 0 clazz Ljava/lang/Class<*>; - Signature: #x // (Ljava/lang/Class<*>;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=2, locals=0, args_size=0 - x: new #x // class java/util/HashSet + stack=3, locals=1, args_size=1 + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V + x: new #x // class java/lang/RuntimeException x: dup - x: invokespecial #x // Method java/util/HashSet."<init>":()V - x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: return - LineNumberTable: + x: ldc #x // String Unreachable + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + x: athrow RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestThrow } -SourceFile: "TinyFrameworkClassLoadHook.java" +SourceFile: "TinyFrameworkClassWideAnnotations.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.class Compiled from "TinyFrameworkClassWithInitializerDefault.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault @@ -1121,35 +773,29 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep } SourceFile: "TinyFrameworkClassWithInitializerDefault.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.class Compiled from "TinyFrameworkClassWithInitializerStub.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub @@ -1164,24 +810,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep static {}; descriptor: ()V @@ -1201,21 +843,19 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkClassWithInitializerStub.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x(#x=s#x) android.hosttest.annotation.HostSideTestClassLoadHook( value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.class @@ -1232,43 +872,37 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex GREEN; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex BLUE; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private final java.lang.String mLongName; descriptor: Ljava/lang/String; flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -1278,7 +912,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -1288,9 +922,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1304,9 +936,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex valueOf(java.lang.String); descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1324,9 +954,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 0 10 0 name Ljava/lang/String; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> mandated @@ -1356,12 +984,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC Signature: #x // (Ljava/lang/String;Ljava/lang/String;)V RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep MethodParameters: Name Flags <no name> synthetic @@ -1383,12 +1009,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.lang.String getShortName(); descriptor: ()Ljava/lang/String; @@ -1404,12 +1028,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1434,9 +1056,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -1473,20 +1093,16 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex;>; SourceFile: "TinyFrameworkEnumComplex.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.class Compiled from "TinyFrameworkEnumSimple.java" public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple> @@ -1501,33 +1117,27 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple DOG; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $VALUES; descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; @@ -1541,9 +1151,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple valueOf(java.lang.String); descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; @@ -1561,9 +1169,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS 0 10 0 name Ljava/lang/String; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> mandated @@ -1585,9 +1191,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS Signature: #x // ()V RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> synthetic @@ -1612,9 +1216,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -1639,20 +1241,16 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple;>; SourceFile: "TinyFrameworkEnumSimple.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.class Compiled from "TinyFrameworkExceptionTester.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester @@ -1676,9 +1274,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int testException(); descriptor: ()I @@ -1709,19 +1305,15 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe 11 11 0 e Ljava/lang/Exception; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkExceptionTester.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class Compiled from "TinyFrameworkForTextPolicy.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy @@ -1730,22 +1322,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 8, attributes: 2 + interfaces: 0, fields: 1, methods: 15, attributes: 2 public int stub; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -1753,7 +1336,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded + x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -1767,63 +1350,148 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: aload_0 x: iconst_1 x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I - x: return + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=2, locals=2, args_size=2 - x: aload_0 x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I + x: iconst_1 + x: iadd x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - 0 6 1 value I + 0 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + 0 4 1 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public java.lang.String toBeIgnoredObj(); + descriptor: ()Ljava/lang/String; + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aconst_null + x: areturn RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int addOneInner(int); - descriptor: (I)I + public void toBeIgnoredV(); + descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=2, args_size=2 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iload_1 - x: iconst_1 - x: iadd - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 15 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - 15 4 1 value I + stack=0, locals=1, args_size=1 + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public boolean toBeIgnoredZ(); + descriptor: ()Z + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public byte toBeIgnoredB(); + descriptor: ()B + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public char toBeIgnoredC(); + descriptor: ()C + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public short toBeIgnoredS(); + descriptor: ()S + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public int toBeIgnoredI(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public float toBeIgnoredF(); + descriptor: ()F + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: fconst_0 + x: freturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public double toBeIgnoredD(); + descriptor: ()D + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: dconst_0 + x: dreturn RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addTwo(int); descriptor: (I)I @@ -1843,9 +1511,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddThree(int); descriptor: (I)I @@ -1864,57 +1530,29 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String unsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Unreachable - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + stack=3, locals=1, args_size=1 + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V + x: new #x // class java/lang/RuntimeException + x: dup + x: ldc #x // String Unreachable + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V x: athrow RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=1, locals=1, args_size=1 - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkForTextPolicy.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested.class Compiled from "TinyFrameworkLambdas.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested @@ -1930,12 +1568,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -1943,12 +1579,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested(); descriptor: ()V @@ -1967,12 +1601,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes 0 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -1988,12 +1620,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -2006,12 +1636,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -2024,9 +1652,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$getSupplier$2(); descriptor: ()Ljava/lang/Integer; @@ -2039,9 +1665,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$static$1(); descriptor: ()Ljava/lang/Integer; @@ -2054,9 +1678,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$new$0(); descriptor: ()Ljava/lang/Integer; @@ -2069,9 +1691,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -2084,7 +1704,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas @@ -2092,12 +1712,10 @@ InnerClasses: SourceFile: "TinyFrameworkLambdas.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep BootstrapMethods: @@ -2137,12 +1755,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -2150,12 +1766,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas(); descriptor: ()V @@ -2174,12 +1788,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas 0 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -2195,12 +1807,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -2213,12 +1823,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -2231,9 +1839,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$getSupplier$2(); descriptor: ()Ljava/lang/Integer; @@ -2246,9 +1852,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$static$1(); descriptor: ()Ljava/lang/Integer; @@ -2261,9 +1865,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$new$0(); descriptor: ()Ljava/lang/Integer; @@ -2276,9 +1878,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -2291,7 +1891,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas @@ -2299,12 +1899,10 @@ InnerClasses: SourceFile: "TinyFrameworkLambdas.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep BootstrapMethods: @@ -2330,6 +1928,184 @@ BootstrapMethods: #x ()Ljava/lang/Integer; NestMembers: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 3, attributes: 4 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void startThread(java.lang.Thread); + descriptor: (Ljava/lang/Thread;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: iconst_1 + x: invokevirtual #x // Method java/lang/Thread.setDaemon:(Z)V + x: aload_0 + x: invokevirtual #x // Method java/lang/Thread.start:()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 10 0 thread Ljava/lang/Thread; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int add(int, int); + descriptor: (II)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=2, args_size=2 + x: iload_0 + x: iload_1 + x: iadd + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 4 0 a I + 0 4 1 b I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +SourceFile: "TinyFrameworkMethodCallReplace.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 4, attributes: 6 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static boolean nonStaticMethodCallReplaceTester() throws java.lang.Exception; + descriptor: ()Z + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=3, locals=2, args_size=0 + x: new #x // class java/util/concurrent/atomic/AtomicBoolean + x: dup + x: iconst_0 + x: invokespecial #x // Method java/util/concurrent/atomic/AtomicBoolean."<init>":(Z)V + x: astore_0 + x: new #x // class java/lang/Thread + x: dup + x: aload_0 + x: invokedynamic #x, 0 // InvokeDynamic #x:run:(Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/lang/Runnable; + x: invokespecial #x // Method java/lang/Thread."<init>":(Ljava/lang/Runnable;)V + x: astore_1 + x: aload_1 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.startThread:(Ljava/lang/Thread;)V + x: aload_1 + x: invokevirtual #x // Method java/lang/Thread.join:()V + x: aload_0 + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.get:()Z + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 9 27 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; + 23 13 1 th Ljava/lang/Thread; + Exceptions: + throws java.lang.Exception + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int staticMethodCallReplaceTester(); + descriptor: ()I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: iconst_1 + x: iconst_2 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.add:(II)I + x: ireturn + LineNumberTable: + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + private static void lambda$nonStaticMethodCallReplaceTester$0(java.util.concurrent.atomic.AtomicBoolean); + descriptor: (Ljava/util/concurrent/atomic/AtomicBoolean;)V + flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: invokestatic #x // Method java/lang/Thread.currentThread:()Ljava/lang/Thread; + x: invokevirtual #x // Method java/lang/Thread.isDaemon:()Z + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.set:(Z)V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 11 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles +SourceFile: "TinyFrameworkMethodCallReplace.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +BootstrapMethods: + x: #x REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; + Method arguments: + #x ()V + #x REF_invokeStatic com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.lambda$nonStaticMethodCallReplaceTester$0:(Ljava/util/concurrent/atomic/AtomicBoolean;)V + #x ()V +NestMembers: + com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.class Compiled from "TinyFrameworkNative.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative @@ -2338,15 +2114,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 11, attributes: 3 + interfaces: 0, fields: 1, methods: 14, attributes: 3 int value; descriptor: I flags: (0x0000) RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNative(); descriptor: ()V @@ -2362,9 +2136,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddTwo(int); descriptor: (I)I @@ -2378,9 +2150,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public static int nativeAddTwo_should_be_like_this(int); descriptor: (I)I @@ -2396,9 +2169,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 0 5 0 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static long nativeLongPlus(long, long); descriptor: (JJ)J @@ -2413,9 +2184,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public static long nativeLongPlus_should_be_like_this(long, long); descriptor: (JJ)J @@ -2433,9 +2205,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 0 6 2 arg2 J RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public void setValue(int); descriptor: (I)V @@ -2453,9 +2223,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 0 6 1 v I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int nativeNonStaticAddToValue(int); descriptor: (I)I @@ -2470,9 +2238,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public int nativeNonStaticAddToValue_should_be_like_this(int); descriptor: (I)I @@ -2490,38 +2259,35 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 0 6 1 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static void nativeStillNotSupported(); descriptor: ()V flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: - stack=4, locals=0, args_size=0 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - x: ldc #x // String nativeStillNotSupported - x: ldc #x // String ()V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Unreachable - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + stack=3, locals=0, args_size=0 + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V + x: new #x // class java/lang/RuntimeException + x: dup + x: ldc #x // String Unreachable + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V x: athrow RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestThrow + public static native void nativeStillKeep(); + descriptor: ()V + flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + public static void nativeStillNotSupported_should_be_like_this(); descriptor: ()V flags: (0x0009) ACC_PUBLIC, ACC_STATIC @@ -2534,9 +2300,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static byte nativeBytePlus(byte, byte); descriptor: (BB)B @@ -2551,21 +2315,53 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect + + public void notNativeRedirected(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.notNativeRedirected:(Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=0, locals=0, args_size=0 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.notNativeStaticRedirected:()V + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect } SourceFile: "TinyFrameworkNative.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestNativeSubstitutionClass( + android.hosttest.annotation.HostSideTestRedirectionClass( value="TinyFrameworkNative_host" ) ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.class @@ -2576,130 +2372,125 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 5, attributes: 3 + interfaces: 0, fields: 0, methods: 7, attributes: 3 public com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String <init> - x: ldc #x // String ()V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddTwo(int); descriptor: (I)I flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeAddTwo - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iload_0 - x: iconst_2 - x: iadd - x: ireturn + stack=2, locals=1, args_size=1 + x: iload_0 + x: iconst_2 + x: iadd + x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 4 0 arg I + 0 4 0 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static long nativeLongPlus(long, long); descriptor: (JJ)J flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: stack=4, locals=4, args_size=2 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeLongPlus - x: ldc #x // String (JJ)J - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: lload_0 - x: lload_2 - x: ladd - x: lreturn + x: lload_0 + x: lload_2 + x: ladd + x: lreturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 4 0 arg1 J - 15 4 2 arg2 J + 0 4 0 arg1 J + 0 4 2 arg2 J RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeNonStaticAddToValue(com.android.hoststubgen.test.tinyframework.TinyFrameworkNative, int); descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;I)I flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: - stack=4, locals=2, args_size=2 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeNonStaticAddToValue - x: ldc #x // String (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: getfield #x // Field com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.value:I - x: iload_1 - x: iadd - x: ireturn + stack=2, locals=2, args_size=2 + x: aload_0 + x: getfield #x // Field com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.value:I + x: iload_1 + x: iadd + x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 7 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; - 15 7 1 arg I + 0 7 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; + 0 7 1 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static byte nativeBytePlus(byte, byte); descriptor: (BB)B flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: - stack=4, locals=2, args_size=2 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeBytePlus - x: ldc #x // String (BB)B - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iload_0 - x: iload_1 - x: iadd - x: i2b - x: ireturn + stack=2, locals=2, args_size=2 + x: iload_0 + x: iload_1 + x: iadd + x: i2b + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 arg1 B + 0 5 1 arg2 B + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void notNativeRedirected(com.android.hoststubgen.test.tinyframework.TinyFrameworkNative); + descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=0, locals=1, args_size=1 + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 arg1 B - 15 5 1 arg2 B + 0 1 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=0, locals=0, args_size=0 + x: return + LineNumberTable: + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkNative_host.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestWholeClassKeep @@ -2717,7 +2508,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1(com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses); descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses;)V @@ -2737,7 +2528,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex 0 10 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated @@ -2746,45 +2537,33 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex descriptor: ()Ljava/lang/Integer; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_1 - x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: iconst_1 + x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokevirtual #x // Method get:()Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokevirtual #x // Method get:()Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 @@ -2793,7 +2572,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2.class Compiled from "TinyFrameworkNestedClasses.java" @@ -2818,51 +2597,39 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$2 ex 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_2 - x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: iconst_2 + x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokevirtual #x // Method get:()Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokevirtual #x // Method get:()Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 @@ -2871,7 +2638,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3.class Compiled from "TinyFrameworkNestedClasses.java" @@ -2887,7 +2654,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3(com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses); descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses;)V @@ -2907,7 +2674,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex 0 10 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated @@ -2916,45 +2683,33 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex descriptor: ()Ljava/lang/Integer; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_3 - x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: iconst_3 + x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokevirtual #x // Method get:()Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokevirtual #x // Method get:()Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 @@ -2963,7 +2718,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4.class Compiled from "TinyFrameworkNestedClasses.java" @@ -2988,51 +2743,39 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$4 ex 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_4 - x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: iconst_4 + x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokevirtual #x // Method get:()Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokevirtual #x // Method get:()Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 @@ -3041,7 +2784,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3057,9 +2800,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass(int); descriptor: (I)V @@ -3079,18 +2820,14 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 0 10 1 x I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3100,24 +2837,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 1, attributes: 5 + interfaces: 0, fields: 2, methods: 1, attributes: 4 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep final com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses this$0; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$InnerClass(com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses); descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses;)V @@ -3140,24 +2873,17 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 0 15 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated } InnerClasses: - public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3182,51 +2908,39 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$Stat 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: bipush 7 - x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: bipush 7 + x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; + 0 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokevirtual #x // Method get:()Ljava/lang/Integer; - x: areturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokevirtual #x // Method get:()Ljava/lang/Integer; + x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses @@ -3236,7 +2950,50 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass.class + Compiled from "TinyFrameworkNestedClasses.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 1, attributes: 4 + public int value; + descriptor: I + flags: (0x0001) ACC_PUBLIC + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: bipush 8 + x: putfield #x // Field value:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 11 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass +SourceFile: "TinyFrameworkNestedClasses.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3246,15 +3003,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 5 + interfaces: 0, fields: 1, methods: 2, attributes: 4 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass(); descriptor: ()V @@ -3273,9 +3028,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 0 11 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -3290,22 +3043,16 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3332,19 +3079,15 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 0 6 1 x I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3361,9 +3104,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -3371,9 +3112,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses(); descriptor: ()V @@ -3395,9 +3134,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 0 17 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -3416,9 +3153,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -3433,9 +3168,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -3450,33 +3183,31 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep NestMembers: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass + com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 @@ -3506,9 +3237,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int foo(int); descriptor: (I)I @@ -3527,19 +3256,94 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi 0 12 0 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkPackageRedirect.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.class + Compiled from "TinyFrameworkRenamedClassCaller.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 2, attributes: 3 + public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int foo(int); + descriptor: (I)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=3, locals=1, args_size=1 + x: new #x // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: dup + x: iload_0 + x: invokespecial #x // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed."<init>":(I)V + x: invokevirtual #x // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 12 0 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkRenamedClassCaller.java" +RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/packagetest/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 0, attributes: 2 +} +SourceFile: "A.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +## Class: com/android/hoststubgen/test/tinyframework/packagetest/sub/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.sub.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/sub/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 0, attributes: 2 +} +SourceFile: "A.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C1.class Compiled from "C1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -3553,9 +3357,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 SourceFile: "C1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C2.class Compiled from "C2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -3569,9 +3371,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends SourceFile: "C2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C3.class Compiled from "C3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 @@ -3585,9 +3385,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends SourceFile: "C3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CA.class Compiled from "CA.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.CA @@ -3601,9 +3399,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.CA SourceFile: "CA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CB.class Compiled from "CB.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.CB @@ -3617,9 +3413,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.CB SourceFile: "CB.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.class Compiled from "Class_C1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C1 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -3633,7 +3427,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C1 ex SourceFile: "Class_C1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.class Compiled from "Class_C2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 @@ -3647,7 +3441,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C2 ex SourceFile: "Class_C2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.class Compiled from "Class_C3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C3 @@ -3661,7 +3455,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C3 ex SourceFile: "Class_C3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.class Compiled from "Class_I1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1 implements com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -3675,7 +3469,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1 im SourceFile: "Class_I1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.class Compiled from "Class_I1_IA.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1_IA implements com.android.hoststubgen.test.tinyframework.subclasstest.I1,com.android.hoststubgen.test.tinyframework.subclasstest.IA @@ -3689,7 +3483,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1_IA SourceFile: "Class_I1_IA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.class Compiled from "Class_I2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I2 implements com.android.hoststubgen.test.tinyframework.subclasstest.I2 @@ -3703,7 +3497,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I2 im SourceFile: "Class_I2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.class Compiled from "Class_I3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I3 implements com.android.hoststubgen.test.tinyframework.subclasstest.I3 @@ -3717,7 +3511,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I3 im SourceFile: "Class_I3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I1.class Compiled from "I1.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -3731,9 +3525,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 SourceFile: "I1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I2.class Compiled from "I2.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 extends com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -3747,9 +3539,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 exte SourceFile: "I2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I3.class Compiled from "I3.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 extends com.android.hoststubgen.test.tinyframework.subclasstest.I2 @@ -3763,9 +3553,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 exte SourceFile: "I3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IA.class Compiled from "IA.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA @@ -3779,9 +3567,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA SourceFile: "IA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IB.class Compiled from "IB.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB @@ -3795,9 +3581,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB SourceFile: "IB.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/supported/UnsupportedClass.class Compiled from "UnsupportedClass.java" public class com.supported.UnsupportedClass @@ -3812,60 +3596,48 @@ public class com.supported.UnsupportedClass flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.supported.UnsupportedClass(int); descriptor: (I)V flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=2, args_size=2 - x: ldc #x // String com/supported/UnsupportedClass - x: ldc #x // String <init> - x: ldc #x // String (I)V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: aload_0 - x: iload_1 - x: putfield #x // Field mValue:I - x: return + stack=2, locals=2, args_size=2 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: iload_1 + x: putfield #x // Field mValue:I + x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 10 0 this Lcom/supported/UnsupportedClass; - 15 10 1 value I + 0 10 0 this Lcom/supported/UnsupportedClass; + 0 10 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int getValue(); descriptor: ()I flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=1, args_size=1 - x: ldc #x // String com/supported/UnsupportedClass - x: ldc #x // String getValue - x: ldc #x // String ()I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: aload_0 - x: getfield #x // Field mValue:I - x: ireturn + stack=1, locals=1, args_size=1 + x: aload_0 + x: getfield #x // Field mValue:I + x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 15 5 0 this Lcom/supported/UnsupportedClass; + 0 5 0 this Lcom/supported/UnsupportedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "UnsupportedClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestWholeClassKeep @@ -3897,9 +3669,7 @@ public class com.unsupported.UnsupportedClass 0 14 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int getValue(); descriptor: ()I @@ -3917,16 +3687,71 @@ public class com.unsupported.UnsupportedClass 0 10 0 this Lcom/unsupported/UnsupportedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "UnsupportedClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.class + Compiled from "TinyFrameworkToBeRenamed.java" +public class rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 2, attributes: 3 + private final int mValue; + descriptor: I + flags: (0x0012) ACC_PRIVATE, ACC_FINAL + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed(int); + descriptor: (I)V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=2, args_size=2 + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: iload_1 + x: putfield #x // Field mValue:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; + 0 10 1 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public int getValue(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=1, locals=1, args_size=1 + x: aload_0 + x: getfield #x // Field mValue:I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 0 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkToBeRenamed.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-impl-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt index fcf9a8c663ad..0f8af92dc486 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-impl-dump.txt +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt @@ -22,12 +22,12 @@ public interface android.hosttest.annotation.HostSideTestClassLoadHook extends j flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "HostSideTestClassLoadHook.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -58,7 +58,7 @@ public interface android.hosttest.annotation.HostSideTestKeep extends java.lang. SourceFile: "HostSideTestKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -67,13 +67,44 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestNativeSubstitutionClass.class - Compiled from "HostSideTestNativeSubstitutionClass.java" -public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass extends java.lang.annotation.Annotation +## Class: android/hosttest/annotation/HostSideTestRedirect.class + Compiled from "HostSideTestRedirect.java" +public interface android.hosttest.annotation.HostSideTestRedirect extends java.lang.annotation.Annotation minor version: 0 major version: 61 flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestNativeSubstitutionClass + this_class: #x // android/hosttest/annotation/HostSideTestRedirect + super_class: #x // java/lang/Object + interfaces: 1, fields: 0, methods: 1, attributes: 2 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class android/hosttest/annotation/HostSideTestRedirect + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return +} +SourceFile: "HostSideTestRedirect.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + x: #x(#x=[e#x.#x]) + java.lang.annotation.Target( + value=[Ljava/lang/annotation/ElementType;.METHOD] + ) + x: #x(#x=e#x.#x) + java.lang.annotation.Retention( + value=Ljava/lang/annotation/RetentionPolicy;.CLASS + ) +## Class: android/hosttest/annotation/HostSideTestRedirectionClass.class + Compiled from "HostSideTestRedirectionClass.java" +public interface android.hosttest.annotation.HostSideTestRedirectionClass extends java.lang.annotation.Annotation + minor version: 0 + major version: 61 + flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION + this_class: #x // android/hosttest/annotation/HostSideTestRedirectionClass super_class: #x // java/lang/Object interfaces: 1, fields: 0, methods: 2, attributes: 2 private static {}; @@ -81,7 +112,7 @@ public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass flags: (0x000a) ACC_PRIVATE, ACC_STATIC Code: stack=2, locals=0, args_size=0 - x: ldc #x // class android/hosttest/annotation/HostSideTestNativeSubstitutionClass + x: ldc #x // class android/hosttest/annotation/HostSideTestRedirectionClass x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -91,12 +122,12 @@ public interface android.hosttest.annotation.HostSideTestNativeSubstitutionClass flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } -SourceFile: "HostSideTestNativeSubstitutionClass.java" +SourceFile: "HostSideTestRedirectionClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -127,7 +158,7 @@ public interface android.hosttest.annotation.HostSideTestRemove extends java.lan SourceFile: "HostSideTestRemove.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -136,13 +167,13 @@ RuntimeVisibleAnnotations: java.lang.annotation.Retention( value=Ljava/lang/annotation/RetentionPolicy;.CLASS ) -## Class: android/hosttest/annotation/HostSideTestStub.class - Compiled from "HostSideTestStub.java" -public interface android.hosttest.annotation.HostSideTestStub extends java.lang.annotation.Annotation +## Class: android/hosttest/annotation/HostSideTestStaticInitializerKeep.class + Compiled from "HostSideTestStaticInitializerKeep.java" +public interface android.hosttest.annotation.HostSideTestStaticInitializerKeep extends java.lang.annotation.Annotation minor version: 0 major version: 61 flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestStub + this_class: #x // android/hosttest/annotation/HostSideTestStaticInitializerKeep super_class: #x // java/lang/Object interfaces: 1, fields: 0, methods: 1, attributes: 2 private static {}; @@ -150,15 +181,15 @@ public interface android.hosttest.annotation.HostSideTestStub extends java.lang. flags: (0x000a) ACC_PRIVATE, ACC_STATIC Code: stack=2, locals=0, args_size=0 - x: ldc #x // class android/hosttest/annotation/HostSideTestStub + x: ldc #x // class android/hosttest/annotation/HostSideTestStaticInitializerKeep x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } -SourceFile: "HostSideTestStub.java" +SourceFile: "HostSideTestStaticInitializerKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x,e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -191,12 +222,12 @@ public interface android.hosttest.annotation.HostSideTestSubstitute extends java flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "HostSideTestSubstitute.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.METHOD] @@ -227,7 +258,7 @@ public interface android.hosttest.annotation.HostSideTestThrow extends java.lang SourceFile: "HostSideTestThrow.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x,e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.CONSTRUCTOR] @@ -258,38 +289,7 @@ public interface android.hosttest.annotation.HostSideTestWholeClassKeep extends SourceFile: "HostSideTestWholeClassKeep.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - x: #x(#x=[e#x.#x]) - java.lang.annotation.Target( - value=[Ljava/lang/annotation/ElementType;.TYPE] - ) - x: #x(#x=e#x.#x) - java.lang.annotation.Retention( - value=Ljava/lang/annotation/RetentionPolicy;.CLASS - ) -## Class: android/hosttest/annotation/HostSideTestWholeClassStub.class - Compiled from "HostSideTestWholeClassStub.java" -public interface android.hosttest.annotation.HostSideTestWholeClassStub extends java.lang.annotation.Annotation - minor version: 0 - major version: 61 - flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION - this_class: #x // android/hosttest/annotation/HostSideTestWholeClassStub - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 1, attributes: 2 - private static {}; - descriptor: ()V - flags: (0x000a) ACC_PRIVATE, ACC_STATIC - Code: - stack=2, locals=0, args_size=0 - x: ldc #x // class android/hosttest/annotation/HostSideTestWholeClassStub - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V - x: return -} -SourceFile: "HostSideTestWholeClassStub.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep x: #x(#x=[e#x.#x]) java.lang.annotation.Target( value=[Ljava/lang/annotation/ElementType;.TYPE] @@ -313,7 +313,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Pro Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -336,9 +336,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Pro 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int addTwo(int); descriptor: (I)I @@ -360,9 +358,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Pro 11 4 0 a I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl @@ -370,9 +366,7 @@ InnerClasses: SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl ## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub.class Compiled from "IPretendingAidl.java" @@ -389,7 +383,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -412,9 +406,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int addOne(int); descriptor: (I)I @@ -436,9 +428,7 @@ public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub 11 4 0 a I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl @@ -446,9 +436,7 @@ InnerClasses: SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl ## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl.class Compiled from "IPretendingAidl.java" @@ -465,7 +453,7 @@ public interface com.android.hoststubgen.test.tinyframework.IPretendingAidl Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/IPretendingAidl - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } @@ -475,9 +463,7 @@ InnerClasses: SourceFile: "IPretendingAidl.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestMembers: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy @@ -495,9 +481,7 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.R$Nested(); descriptor: ()V @@ -518,9 +502,7 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/R$Nested; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -546,18 +528,14 @@ public class com.android.hoststubgen.test.tinyframework.R$Nested LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R + public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R SourceFile: "R.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/R ## Class: com/android/hoststubgen/test/tinyframework/R.class Compiled from "R.java" @@ -574,7 +552,7 @@ public class com.android.hoststubgen.test.tinyframework.R Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/R - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -597,239 +575,31 @@ public class com.android.hoststubgen.test.tinyframework.R 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/R; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R SourceFile: "R.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestMembers: com/android/hoststubgen/test/tinyframework/R$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.class - Compiled from "TinyFrameworkCallerCheck.java" -class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl - minor version: 0 - major version: 61 - flags: (0x0020) ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 4, attributes: 4 - private static {}; - descriptor: ()V - flags: (0x000a) ACC_PRIVATE, ACC_STATIC - Code: - stack=2, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V - x: return - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String <init> - x: ldc #x // String ()V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOneKeep(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String getOneKeep - x: ldc #x // String ()I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String getOneKeep - x: ldc #x // String ()I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestKeep - - public static int getOneStub(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - x: ldc #x // String getOneStub - x: ldc #x // String ()I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: iconst_1 - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.class - Compiled from "TinyFrameworkCallerCheck.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations.class + Compiled from "TinyFrameworkAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 4, attributes: 5 - private static {}; - descriptor: ()V - flags: (0x000a) ACC_PRIVATE, ACC_STATIC - Code: - stack=2, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V - x: return - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - x: ldc #x // String <init> - x: ldc #x // String ()V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_withCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - x: ldc #x // String getOne_withCheck - x: ldc #x // String ()I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneKeep:()I - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_noCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - x: ldc #x // String getOne_noCheck - x: ldc #x // String ()I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.getOneStub:()I - x: ireturn - LineNumberTable: - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.class - Compiled from "TinyFrameworkClassAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 8, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - + interfaces: 0, fields: 1, methods: 7, attributes: 3 public int keep; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -839,20 +609,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota flags: (0x000a) ACC_PRIVATE, ACC_STATIC Code: stack=2, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations(); + public com.android.hoststubgen.test.tinyframework.TinyFrameworkAnnotations(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String <init> x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -861,68 +631,29 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 x: putfield #x // Field keep:I x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 11 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String addOne x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; - 11 6 1 value I - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iload_1 x: iconst_1 x: iadd @@ -930,11 +661,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; - 26 4 1 value I + 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; + 11 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -944,7 +675,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String addTwo x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -956,22 +687,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations; 11 4 1 value I RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddThree(int); descriptor: (I)I flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String nativeAddThree x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -988,26 +717,18 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations x: ldc #x // String unsupportedMethod x: ldc #x // String ()Ljava/lang/String; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String unsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V x: new #x // class java/lang/RuntimeException x: dup @@ -1018,102 +739,170 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnota x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestThrow - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; + public int toBeIgnored(); + descriptor: ()I flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - x: ldc #x // String visibleButUsesUnsupportedMethod - x: ldc #x // String ()Ljava/lang/String; + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations + x: ldc #x // String toBeIgnored + x: ldc #x // String ()I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations; + x: iconst_0 + x: ireturn RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestIgnore } -SourceFile: "TinyFrameworkClassAnnotations.java" +SourceFile: "TinyFrameworkAnnotations.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x(#x=s#x) android.hosttest.annotation.HostSideTestClassLoadHook( value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.class - Compiled from "TinyFrameworkClassClassWideAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class + Compiled from "TinyFrameworkClassLoadHook.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook minor version: 0 major version: 61 flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 9, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC + interfaces: 0, fields: 1, methods: 3, attributes: 3 + public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; + descriptor: Ljava/util/Set; + flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL + Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC + private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); + descriptor: ()V + flags: (0x0002) ACC_PRIVATE + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook + x: ldc #x // String <init> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void onClassLoaded(java.lang.Class<?>); + descriptor: (Ljava/lang/Class;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook + x: ldc #x // String onClassLoaded + x: ldc #x // String (Ljava/lang/Class;)V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; + x: aload_0 + x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z + x: pop + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 11 0 clazz Ljava/lang/Class; + LocalVariableTypeTable: + Start Length Slot Name Signature + 11 11 0 clazz Ljava/lang/Class<*>; + Signature: #x // (Ljava/lang/Class<*>;)V + RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int remove; + static {}; + descriptor: ()V + flags: (0x0008) ACC_STATIC + Code: + stack=4, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook + x: ldc #x // String <clinit> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: new #x // class java/util/HashSet + x: dup + x: invokespecial #x // Method java/util/HashSet."<init>":()V + x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; + x: return + LineNumberTable: + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkClassLoadHook.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations.class + Compiled from "TinyFrameworkClassWideAnnotations.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 5, attributes: 3 + public int keep; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V flags: (0x000a) ACC_PRIVATE, ACC_STATIC Code: stack=2, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations(); + public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWideAnnotations(); descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations x: ldc #x // String <init> x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -1122,56 +911,26 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 x: iconst_1 - x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 x: putfield #x // Field keep:I x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 11 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addOne(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations x: ldc #x // String addOne x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 11 6 1 value I - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V x: iload_1 x: iconst_1 x: iadd @@ -1179,45 +938,18 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 11 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public void toBeRemoved(java.lang.String); - descriptor: (Ljava/lang/String;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - x: ldc #x // String toBeRemoved - x: ldc #x // String (Ljava/lang/String;)V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: new #x // class java/lang/RuntimeException - x: dup - x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V - x: athrow - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 8 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - 11 8 1 foo Ljava/lang/String; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addTwo(int); descriptor: (I)I flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=2, args_size=2 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations x: ldc #x // String addTwo x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall @@ -1229,201 +961,46 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassW LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; + 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations; 11 4 1 value I RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - x: ldc #x // String nativeAddThree - x: ldc #x // String (I)I - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: iload_0 - x: iconst_3 - x: iadd - x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 4 0 value I - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; flags: (0x0001) ACC_PUBLIC Code: stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations x: ldc #x // String unsupportedMethod x: ldc #x // String ()Ljava/lang/String; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String This value shouldn\'t be seen on the host side. - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 3 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - x: ldc #x // String visibleButUsesUnsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassClassWideAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class - Compiled from "TinyFrameworkClassLoadHook.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 3 - public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; - descriptor: Ljava/util/Set; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - x: ldc #x // String <init> - x: ldc #x // String ()V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokespecial #x // Method java/lang/Object."<init>":()V - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void onClassLoaded(java.lang.Class<?>); - descriptor: (Ljava/lang/Class;)V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - x: ldc #x // String onClassLoaded - x: ldc #x // String (Ljava/lang/Class;)V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: getstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: aload_0 - x: invokeinterface #x, 2 // InterfaceMethod java/util/Set.add:(Ljava/lang/Object;)Z - x: pop - x: return - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 11 0 clazz Ljava/lang/Class; - LocalVariableTypeTable: - Start Length Slot Name Signature - 11 11 0 clazz Ljava/lang/Class<*>; - Signature: #x // (Ljava/lang/Class<*>;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=4, locals=0, args_size=0 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - x: ldc #x // String <clinit> - x: ldc #x // String ()V - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V - x: new #x // class java/util/HashSet + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V + x: new #x // class java/lang/RuntimeException x: dup - x: invokespecial #x // Method java/util/HashSet."<init>":()V - x: putstatic #x // Field sLoadedClasses:Ljava/util/Set; - x: return - LineNumberTable: + x: ldc #x // String Unreachable + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + x: athrow RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestThrow } -SourceFile: "TinyFrameworkClassLoadHook.java" +SourceFile: "TinyFrameworkClassWideAnnotations.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.class Compiled from "TinyFrameworkClassWithInitializerDefault.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault @@ -1438,35 +1015,29 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep } SourceFile: "TinyFrameworkClassWithInitializerDefault.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.class Compiled from "TinyFrameworkClassWithInitializerStub.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub @@ -1481,24 +1052,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.lang.Object sObject; descriptor: Ljava/lang/Object; flags: (0x0009) ACC_PUBLIC, ACC_STATIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep static {}; descriptor: ()V @@ -1526,21 +1093,19 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithIn LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkClassWithInitializerStub.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x(#x=s#x) android.hosttest.annotation.HostSideTestClassLoadHook( value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" ) x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.class @@ -1557,43 +1122,37 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex GREEN; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex BLUE; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private final java.lang.String mLongName; descriptor: Ljava/lang/String; flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -1603,7 +1162,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestKeep @@ -1613,9 +1172,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1634,9 +1191,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex valueOf(java.lang.String); descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1659,9 +1214,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 11 10 0 name Ljava/lang/String; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> mandated @@ -1696,12 +1249,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC Signature: #x // (Ljava/lang/String;Ljava/lang/String;)V RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep MethodParameters: Name Flags <no name> synthetic @@ -1728,12 +1279,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.lang.String getShortName(); descriptor: ()Ljava/lang/String; @@ -1754,12 +1303,10 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1789,9 +1336,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -1826,7 +1371,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC x: dup x: ldc #x // String BLUE x: iconst_2 - x: ldc #x // String Blue + x: ldc #x // String Blue x: ldc #x // String B x: invokespecial #x // Method "<init>":(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V x: putstatic #x // Field BLUE:Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; @@ -1836,20 +1381,16 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumC LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex;>; SourceFile: "TinyFrameworkEnumComplex.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.class Compiled from "TinyFrameworkEnumSimple.java" public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple> @@ -1864,33 +1405,27 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple DOG; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $VALUES; descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] values(); descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; @@ -1909,9 +1444,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple valueOf(java.lang.String); descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; @@ -1934,9 +1467,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS 11 10 0 name Ljava/lang/String; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> mandated @@ -1963,9 +1494,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS Signature: #x // ()V RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> synthetic @@ -1995,9 +1524,7 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -2030,20 +1557,16 @@ public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumS LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple;>; SourceFile: "TinyFrameworkEnumSimple.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.class Compiled from "TinyFrameworkExceptionTester.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester @@ -2059,7 +1582,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -2082,9 +1605,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int testException(); descriptor: ()I @@ -2120,19 +1641,15 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTe 22 11 0 e Ljava/lang/Exception; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkExceptionTester.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class Compiled from "TinyFrameworkForTextPolicy.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy @@ -2141,22 +1658,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 8, attributes: 2 + interfaces: 0, fields: 1, methods: 15, attributes: 2 public int stub; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -2164,7 +1672,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy x: ldc #x // String com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded @@ -2186,19 +1694,14 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: aload_0 x: iconst_1 x: putfield #x // Field stub:I - x: aload_0 - x: iconst_2 - x: putfield #x // Field keep:I x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 15 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + 11 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addOne(int); descriptor: (I)I @@ -2210,49 +1713,179 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 x: iload_1 - x: invokevirtual #x // Method addOneInner:(I)I + x: iconst_1 + x: iadd x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 11 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - 11 6 1 value I + 11 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; + 11 4 1 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public java.lang.String toBeIgnoredObj(); + descriptor: ()Ljava/lang/String; + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredObj + x: ldc #x // String ()Ljava/lang/String; + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aconst_null + x: areturn RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep - public int addOneInner(int); - descriptor: (I)I + public void toBeIgnoredV(); + descriptor: ()V flags: (0x0001) ACC_PUBLIC Code: - stack=4, locals=2, args_size=2 + stack=4, locals=1, args_size=1 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String addOneInner - x: ldc #x // String (I)I + x: ldc #x // String toBeIgnoredV + x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String addOneInner - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V - x: iload_1 - x: iconst_1 - x: iadd + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public boolean toBeIgnoredZ(); + descriptor: ()Z + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredZ + x: ldc #x // String ()Z + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_0 x: ireturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 26 4 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - 26 4 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public byte toBeIgnoredB(); + descriptor: ()B + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredB + x: ldc #x // String ()B + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public char toBeIgnoredC(); + descriptor: ()C + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredC + x: ldc #x // String ()C + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public short toBeIgnoredS(); + descriptor: ()S + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredS + x: ldc #x // String ()S + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public int toBeIgnoredI(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredI + x: ldc #x // String ()I + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_0 + x: ireturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public float toBeIgnoredF(); + descriptor: ()F + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredF + x: ldc #x // String ()F + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: fconst_0 + x: freturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public double toBeIgnoredD(); + descriptor: ()D + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy + x: ldc #x // String toBeIgnoredD + x: ldc #x // String ()D + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: dconst_0 + x: dreturn + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsIgnore + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int addTwo(int); descriptor: (I)I @@ -2277,9 +1910,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddThree(int); descriptor: (I)I @@ -2303,9 +1934,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.String unsupportedMethod(); descriptor: ()Ljava/lang/String; @@ -2317,12 +1946,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: ldc #x // String ()Ljava/lang/String; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String unsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V x: new #x // class java/lang/RuntimeException x: dup @@ -2333,37 +1956,12 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPoli x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=4, locals=1, args_size=1 - x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - x: ldc #x // String visibleButUsesUnsupportedMethod - x: ldc #x // String ()Ljava/lang/String; - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: aload_0 - x: invokevirtual #x // Method unsupportedMethod:()Ljava/lang/String; - x: areturn - LineNumberTable: - LocalVariableTable: - Start Length Slot Name Signature - 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkForTextPolicy.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested.class Compiled from "TinyFrameworkLambdas.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested @@ -2379,12 +1977,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -2392,12 +1988,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested(); descriptor: ()V @@ -2421,12 +2015,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes 11 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -2447,12 +2039,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -2470,12 +2060,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -2493,9 +2081,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$getSupplier$2(); descriptor: ()Ljava/lang/Integer; @@ -2513,9 +2099,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$static$1(); descriptor: ()Ljava/lang/Integer; @@ -2533,9 +2117,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$new$0(); descriptor: ()Ljava/lang/Integer; @@ -2553,9 +2135,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -2571,12 +2151,12 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nes x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: invokedynamic #x, 0 // InvokeDynamic #x:get:()Ljava/util/function/Supplier; - x: putstatic #x // Field sSupplier:Ljava/util/function/Supplier; + x: putstatic #x // Field sSupplier:Ljava/util/function/Supplier; x: return LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas @@ -2584,12 +2164,10 @@ InnerClasses: SourceFile: "TinyFrameworkLambdas.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep BootstrapMethods: @@ -2629,12 +2207,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -2642,12 +2218,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas(); descriptor: ()V @@ -2671,12 +2245,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas 11 14 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -2697,12 +2269,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -2720,12 +2290,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep private static java.lang.Integer lambda$getSupplier_static$3(); descriptor: ()Ljava/lang/Integer; @@ -2743,9 +2311,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$getSupplier$2(); descriptor: ()Ljava/lang/Integer; @@ -2763,9 +2329,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$static$1(); descriptor: ()Ljava/lang/Integer; @@ -2783,9 +2347,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static java.lang.Integer lambda$new$0(); descriptor: ()Ljava/lang/Integer; @@ -2803,9 +2365,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -2821,12 +2381,12 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: invokedynamic #x, 0 // InvokeDynamic #x:get:()Ljava/util/function/Supplier; - x: putstatic #x // Field sSupplier:Ljava/util/function/Supplier; + x: putstatic #x // Field sSupplier:Ljava/util/function/Supplier; x: return LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas @@ -2834,12 +2394,10 @@ InnerClasses: SourceFile: "TinyFrameworkLambdas.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestStub + android.hosttest.annotation.HostSideTestKeep x: #x() android.hosttest.annotation.HostSideTestStaticInitializerKeep BootstrapMethods: @@ -2865,6 +2423,239 @@ BootstrapMethods: #x ()Ljava/lang/Integer; NestMembers: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 4, attributes: 4 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + x: ldc #x // String <init> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void startThread(java.lang.Thread); + descriptor: (Ljava/lang/Thread;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + x: ldc #x // String startThread + x: ldc #x // String (Ljava/lang/Thread;)V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: iconst_1 + x: invokevirtual #x // Method java/lang/Thread.setDaemon:(Z)V + x: aload_0 + x: invokevirtual #x // Method java/lang/Thread.start:()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 10 0 thread Ljava/lang/Thread; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int add(int, int); + descriptor: (II)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=2, args_size=2 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo + x: ldc #x // String add + x: ldc #x // String (II)I + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iload_0 + x: iload_1 + x: iadd + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 4 0 a I + 11 4 1 b I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +SourceFile: "TinyFrameworkMethodCallReplace.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.class + Compiled from "TinyFrameworkMethodCallReplace.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 5, attributes: 6 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + x: ldc #x // String <init> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static boolean nonStaticMethodCallReplaceTester() throws java.lang.Exception; + descriptor: ()Z + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=2, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + x: ldc #x // String nonStaticMethodCallReplaceTester + x: ldc #x // String ()Z + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: new #x // class java/util/concurrent/atomic/AtomicBoolean + x: dup + x: iconst_0 + x: invokespecial #x // Method java/util/concurrent/atomic/AtomicBoolean."<init>":(Z)V + x: astore_0 + x: new #x // class java/lang/Thread + x: dup + x: aload_0 + x: invokedynamic #x, 0 // InvokeDynamic #x:run:(Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/lang/Runnable; + x: invokespecial #x // Method java/lang/Thread."<init>":(Ljava/lang/Runnable;)V + x: astore_1 + x: aload_1 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.startThread:(Ljava/lang/Thread;)V + x: aload_1 + x: invokevirtual #x // Method java/lang/Thread.join:()V + x: aload_0 + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.get:()Z + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 20 27 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; + 34 13 1 th Ljava/lang/Thread; + Exceptions: + throws java.lang.Exception + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int staticMethodCallReplaceTester(); + descriptor: ()I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + x: ldc #x // String staticMethodCallReplaceTester + x: ldc #x // String ()I + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: iconst_1 + x: iconst_2 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo.add:(II)I + x: ireturn + LineNumberTable: + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + private static void lambda$nonStaticMethodCallReplaceTester$0(java.util.concurrent.atomic.AtomicBoolean); + descriptor: (Ljava/util/concurrent/atomic/AtomicBoolean;)V + flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + x: ldc #x // String lambda$nonStaticMethodCallReplaceTester$0 + x: ldc #x // String (Ljava/util/concurrent/atomic/AtomicBoolean;)V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokestatic #x // Method java/lang/Thread.currentThread:()Ljava/lang/Thread; + x: invokevirtual #x // Method java/lang/Thread.isDaemon:()Z + x: invokevirtual #x // Method java/util/concurrent/atomic/AtomicBoolean.set:(Z)V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 11 0 ab Ljava/util/concurrent/atomic/AtomicBoolean; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // ReplaceTo=class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo of class com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace + public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles +SourceFile: "TinyFrameworkMethodCallReplace.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +BootstrapMethods: + x: #x REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; + Method arguments: + #x ()V + #x REF_invokeStatic com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.lambda$nonStaticMethodCallReplaceTester$0:(Ljava/util/concurrent/atomic/AtomicBoolean;)V + #x ()V +NestMembers: + com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace$ReplaceTo ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.class Compiled from "TinyFrameworkNative.java" public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative @@ -2873,15 +2664,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 12, attributes: 3 + interfaces: 0, fields: 1, methods: 15, attributes: 3 int value; descriptor: I flags: (0x0000) RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -2889,7 +2678,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -2912,9 +2701,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddTwo(int); descriptor: (I)I @@ -2933,9 +2720,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public static int nativeAddTwo_should_be_like_this(int); descriptor: (I)I @@ -2956,9 +2744,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 11 5 0 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static long nativeLongPlus(long, long); descriptor: (JJ)J @@ -2978,9 +2764,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public static long nativeLongPlus_should_be_like_this(long, long); descriptor: (JJ)J @@ -3003,9 +2790,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 11 6 2 arg2 J RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public void setValue(int); descriptor: (I)V @@ -3028,9 +2813,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 11 6 1 v I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int nativeNonStaticAddToValue(int); descriptor: (I)I @@ -3050,9 +2833,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect public int nativeNonStaticAddToValue_should_be_like_this(int); descriptor: (I)I @@ -3075,9 +2859,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative 11 6 1 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static void nativeStillNotSupported(); descriptor: ()V @@ -3089,49 +2871,46 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - x: ldc #x // String nativeStillNotSupported - x: ldc #x // String ()V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onThrowMethodCalled:()V x: new #x // class java/lang/RuntimeException x: dup x: ldc #x // String Unreachable - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V + x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V x: athrow RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsThrow x: #x() - com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestThrow + public static native void nativeStillKeep(); + descriptor: ()V + flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + public static void nativeStillNotSupported_should_be_like_this(); descriptor: ()V flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: stack=4, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - x: ldc #x // String nativeStillNotSupported_should_be_like_this + x: ldc #x // String nativeStillNotSupported_should_be_like_this x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V x: new #x // class java/lang/RuntimeException x: dup - x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V + x: invokespecial #x // Method java/lang/RuntimeException."<init>":()V x: athrow LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static byte nativeBytePlus(byte, byte); descriptor: (BB)B @@ -3139,33 +2918,75 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative Code: stack=4, locals=2, args_size=2 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - x: ldc #x // String nativeBytePlus - x: ldc #x // String (BB)B + x: ldc #x // String nativeBytePlus + x: ldc #x // String (BB)B x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V x: iload_0 x: iload_1 - x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.nativeBytePlus:(BB)B + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.nativeBytePlus:(BB)B x: ireturn RuntimeVisibleAnnotations: x: #x() com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect + + public void notNativeRedirected(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative + x: ldc #x // String notNativeRedirected + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.notNativeRedirected:(Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + android.hosttest.annotation.HostSideTestRedirect + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative + x: ldc #x // String notNativeStaticRedirected + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: invokestatic #x // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.notNativeStaticRedirected:()V + x: return + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsSubstitute + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestRedirect } SourceFile: "TinyFrameworkNative.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestNativeSubstitutionClass( + android.hosttest.annotation.HostSideTestRedirectionClass( value="TinyFrameworkNative_host" ) ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.class @@ -3176,7 +2997,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 6, attributes: 3 + interfaces: 0, fields: 0, methods: 8, attributes: 3 private static {}; descriptor: ()V flags: (0x000a) ACC_PRIVATE, ACC_STATIC @@ -3197,22 +3018,16 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host x: ldc #x // String ()V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String <init> - x: ldc #x // String ()V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokespecial #x // Method java/lang/Object."<init>":()V x: return LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeAddTwo(int); descriptor: (I)I @@ -3224,12 +3039,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host x: ldc #x // String (I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeAddTwo - x: ldc #x // String (I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iload_0 x: iconst_2 x: iadd @@ -3237,10 +3046,10 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 4 0 arg I + 11 4 0 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static long nativeLongPlus(long, long); descriptor: (JJ)J @@ -3252,12 +3061,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host x: ldc #x // String (JJ)J x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeLongPlus - x: ldc #x // String (JJ)J - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: lload_0 x: lload_2 x: ladd @@ -3265,11 +3068,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 4 0 arg1 J - 26 4 2 arg2 J + 11 4 0 arg1 J + 11 4 2 arg2 J RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int nativeNonStaticAddToValue(com.android.hoststubgen.test.tinyframework.TinyFrameworkNative, int); descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;I)I @@ -3281,12 +3084,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host x: ldc #x // String (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;I)I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeNonStaticAddToValue - x: ldc #x // String (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;I)I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: getfield #x // Field com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.value:I x: iload_1 @@ -3295,11 +3092,11 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 7 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; - 26 7 1 arg I + 11 7 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; + 11 7 1 arg I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static byte nativeBytePlus(byte, byte); descriptor: (BB)B @@ -3311,12 +3108,6 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host x: ldc #x // String (BB)B x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host - x: ldc #x // String nativeBytePlus - x: ldc #x // String (BB)B - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iload_0 x: iload_1 x: iadd @@ -3325,16 +3116,51 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative_host LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 arg1 B - 26 5 1 arg2 B + 11 5 0 arg1 B + 11 5 1 arg2 B + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void notNativeRedirected(com.android.hoststubgen.test.tinyframework.TinyFrameworkNative); + descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host + x: ldc #x // String notNativeRedirected + x: ldc #x // String (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative;)V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 1 0 source Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNative; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static void notNativeStaticRedirected(); + descriptor: ()V + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host + x: ldc #x // String notNativeStaticRedirected + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: return + LineNumberTable: + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkNative_host.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestWholeClassKeep @@ -3352,7 +3178,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -3387,7 +3213,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex 11 10 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated @@ -3402,22 +3228,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex x: ldc #x // String ()Ljava/lang/Integer; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iconst_1 x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; @@ -3429,22 +3249,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$1 ex x: ldc #x // String ()Ljava/lang/Object; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokevirtual #x // Method get:()Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 @@ -3453,7 +3267,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3493,7 +3307,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$2 ex 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; @@ -3505,22 +3319,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$2 ex x: ldc #x // String ()Ljava/lang/Integer; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iconst_2 x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; @@ -3532,22 +3340,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$2 ex x: ldc #x // String ()Ljava/lang/Object; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokevirtual #x // Method get:()Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 @@ -3556,7 +3358,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3572,7 +3374,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -3607,7 +3409,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex 11 10 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated @@ -3622,22 +3424,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex x: ldc #x // String ()Ljava/lang/Integer; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iconst_3 x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; @@ -3649,22 +3445,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$3 ex x: ldc #x // String ()Ljava/lang/Object; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokevirtual #x // Method get:()Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 @@ -3673,7 +3463,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3713,7 +3503,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$4 ex 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; @@ -3725,22 +3515,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$4 ex x: ldc #x // String ()Ljava/lang/Integer; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: iconst_4 x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; @@ -3752,22 +3536,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$4 ex x: ldc #x // String ()Ljava/lang/Object; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokevirtual #x // Method get:()Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 @@ -3776,7 +3554,7 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3792,9 +3570,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -3802,7 +3578,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -3829,18 +3605,14 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 11 10 1 x I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3850,24 +3622,20 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 2, attributes: 5 + interfaces: 0, fields: 2, methods: 2, attributes: 4 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep final com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses this$0; descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -3875,7 +3643,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -3905,9 +3673,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 11 15 1 this$0 Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep MethodParameters: Name Flags <no name> final mandated @@ -3917,12 +3683,7 @@ InnerClasses: SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1.class Compiled from "TinyFrameworkNestedClasses.java" @@ -3962,7 +3723,7 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$Stat 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Integer get(); descriptor: ()Ljava/lang/Integer; @@ -3974,22 +3735,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$Stat x: ldc #x // String ()Ljava/lang/Integer; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Integer; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: bipush 7 x: invokestatic #x // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; + 11 6 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.lang.Object get(); descriptor: ()Ljava/lang/Object; @@ -4001,22 +3756,16 @@ class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$Stat x: ldc #x // String ()Ljava/lang/Object; x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - x: ldc #x // String get - x: ldc #x // String ()Ljava/lang/Object; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokevirtual #x // Method get:()Ljava/lang/Integer; x: areturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses @@ -4026,7 +3775,65 @@ Signature: #x // Ljava/lang/Object;Ljava/util/function SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass.class + Compiled from "TinyFrameworkNestedClasses.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 2, attributes: 4 + public int value; + descriptor: I + flags: (0x0001) ACC_PUBLIC + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass + x: ldc #x // String <init> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: bipush 8 + x: putfield #x // Field value:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 11 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +InnerClasses: + public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass +SourceFile: "TinyFrameworkNestedClasses.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -4036,15 +3843,13 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass flags: (0x0021) ACC_PUBLIC, ACC_SUPER this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 5 + interfaces: 0, fields: 1, methods: 3, attributes: 4 public int value; descriptor: I flags: (0x0001) ACC_PUBLIC RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -4052,7 +3857,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -4078,9 +3883,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 11 11 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -4100,22 +3903,16 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass.class Compiled from "TinyFrameworkNestedClasses.java" @@ -4132,7 +3929,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -4157,9 +3954,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 11 6 1 x I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses @@ -4167,9 +3962,7 @@ InnerClasses: SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses ## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.class Compiled from "TinyFrameworkNestedClasses.java" @@ -4186,9 +3979,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static final java.util.function.Supplier<java.lang.Integer> sSupplier; descriptor: Ljava/util/function/Supplier; @@ -4196,9 +3987,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses(); descriptor: ()V @@ -4225,9 +4014,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass 11 17 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public java.util.function.Supplier<java.lang.Integer> getSupplier(); descriptor: ()Ljava/util/function/Supplier; @@ -4251,9 +4038,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); descriptor: ()Ljava/util/function/Supplier; @@ -4273,9 +4058,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep static {}; descriptor: ()V @@ -4298,33 +4081,31 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClass LineNumberTable: RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } InnerClasses: #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses + public static #x= #x of #x; // Double$NestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 SourceFile: "TinyFrameworkNestedClasses.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep NestMembers: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass + com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$Double$NestedClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 @@ -4346,7 +4127,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -4369,9 +4150,7 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public static int foo(int); descriptor: (I)I @@ -4395,19 +4174,132 @@ public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedi 11 12 0 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "TinyFrameworkPackageRedirect.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.class + Compiled from "TinyFrameworkRenamedClassCaller.java" +public class com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 3, attributes: 3 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return + + public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + x: ldc #x // String <init> + x: ldc #x // String ()V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public static int foo(int); + descriptor: (I)I + flags: (0x0009) ACC_PUBLIC, ACC_STATIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller + x: ldc #x // String foo + x: ldc #x // String (I)I + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: new #x // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: dup + x: iload_0 + x: invokespecial #x // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed."<init>":(I)V + x: invokevirtual #x // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 12 0 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkRenamedClassCaller.java" +RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: com/android/hoststubgen/test/tinyframework/packagetest/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 2 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/packagetest/A + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return +} +SourceFile: "A.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +## Class: com/android/hoststubgen/test/tinyframework/packagetest/sub/A.class + Compiled from "A.java" +public class com.android.hoststubgen.test.tinyframework.packagetest.sub.A + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // com/android/hoststubgen/test/tinyframework/packagetest/sub/A + super_class: #x // java/lang/Object + interfaces: 0, fields: 0, methods: 1, attributes: 2 + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/packagetest/sub/A + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return +} +SourceFile: "A.java" +RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C1.class Compiled from "C1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -4423,16 +4315,14 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/C1 - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "C1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C2.class Compiled from "C2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -4448,16 +4338,14 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/C2 - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "C2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C3.class Compiled from "C3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 @@ -4473,16 +4361,14 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/C3 - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "C3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CA.class Compiled from "CA.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.CA @@ -4498,16 +4384,14 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.CA Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/CA - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "CA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CB.class Compiled from "CB.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.CB @@ -4523,16 +4407,14 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.CB Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/CB - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "CB.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.class Compiled from "Class_C1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C1 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 @@ -4555,7 +4437,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C1 ex SourceFile: "Class_C1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.class Compiled from "Class_C2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 @@ -4578,7 +4460,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C2 ex SourceFile: "Class_C2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.class Compiled from "Class_C3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C3 @@ -4601,7 +4483,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_C3 ex SourceFile: "Class_C3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.class Compiled from "Class_I1.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1 implements com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -4624,7 +4506,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1 im SourceFile: "Class_I1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.class Compiled from "Class_I1_IA.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1_IA implements com.android.hoststubgen.test.tinyframework.subclasstest.I1,com.android.hoststubgen.test.tinyframework.subclasstest.IA @@ -4647,7 +4529,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I1_IA SourceFile: "Class_I1_IA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.class Compiled from "Class_I2.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I2 implements com.android.hoststubgen.test.tinyframework.subclasstest.I2 @@ -4670,7 +4552,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I2 im SourceFile: "Class_I2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.class Compiled from "Class_I3.java" public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I3 implements com.android.hoststubgen.test.tinyframework.subclasstest.I3 @@ -4693,7 +4575,7 @@ public class com.android.hoststubgen.test.tinyframework.subclasstest.Class_I3 im SourceFile: "Class_I3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I1.class Compiled from "I1.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -4709,16 +4591,14 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/I1 - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "I1.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I2.class Compiled from "I2.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 extends com.android.hoststubgen.test.tinyframework.subclasstest.I1 @@ -4741,9 +4621,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 exte SourceFile: "I2.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I3.class Compiled from "I3.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 extends com.android.hoststubgen.test.tinyframework.subclasstest.I2 @@ -4766,9 +4644,7 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 exte SourceFile: "I3.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IA.class Compiled from "IA.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA @@ -4784,16 +4660,14 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/IA - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "IA.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IB.class Compiled from "IB.java" public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB @@ -4809,16 +4683,14 @@ public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/android/hoststubgen/test/tinyframework/subclasstest/IB - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return } SourceFile: "IB.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep ## Class: com/supported/UnsupportedClass.class Compiled from "UnsupportedClass.java" public class com.supported.UnsupportedClass @@ -4833,7 +4705,7 @@ public class com.supported.UnsupportedClass flags: (0x0012) ACC_PRIVATE, ACC_FINAL RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep private static {}; descriptor: ()V @@ -4855,12 +4727,6 @@ public class com.supported.UnsupportedClass x: ldc #x // String (I)V x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/supported/UnsupportedClass - x: ldc #x // String <init> - x: ldc #x // String (I)V - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: invokespecial #x // Method java/lang/Object."<init>":()V x: aload_0 @@ -4870,11 +4736,11 @@ public class com.supported.UnsupportedClass LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 10 0 this Lcom/supported/UnsupportedClass; - 26 10 1 value I + 11 10 0 this Lcom/supported/UnsupportedClass; + 11 10 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int getValue(); descriptor: ()I @@ -4886,27 +4752,21 @@ public class com.supported.UnsupportedClass x: ldc #x // String ()I x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V - x: ldc #x // String com/supported/UnsupportedClass - x: ldc #x // String getValue - x: ldc #x // String ()I - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.getStackWalker:()Ljava/lang/StackWalker; - x: invokevirtual #x // Method java/lang/StackWalker.getCallerClass:()Ljava/lang/Class; - x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onNonStubMethodCalled:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)V x: aload_0 x: getfield #x // Field mValue:I x: ireturn LineNumberTable: LocalVariableTable: Start Length Slot Name Signature - 26 5 0 this Lcom/supported/UnsupportedClass; + 11 5 0 this Lcom/supported/UnsupportedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "UnsupportedClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() android.hosttest.annotation.HostSideTestWholeClassKeep @@ -4925,7 +4785,7 @@ public class com.unsupported.UnsupportedClass Code: stack=2, locals=0, args_size=0 x: ldc #x // class com/unsupported/UnsupportedClass - x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V x: return @@ -4953,9 +4813,7 @@ public class com.unsupported.UnsupportedClass 11 14 1 value I RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep public int getValue(); descriptor: ()I @@ -4978,16 +4836,91 @@ public class com.unsupported.UnsupportedClass 11 10 0 this Lcom/unsupported/UnsupportedClass; RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep } SourceFile: "UnsupportedClass.java" RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +RuntimeInvisibleAnnotations: + x: #x() + android.hosttest.annotation.HostSideTestWholeClassKeep +## Class: rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.class + Compiled from "TinyFrameworkToBeRenamed.java" +public class rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed + minor version: 0 + major version: 61 + flags: (0x0021) ACC_PUBLIC, ACC_SUPER + this_class: #x // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + super_class: #x // java/lang/Object + interfaces: 0, fields: 1, methods: 3, attributes: 3 + private final int mValue; + descriptor: I + flags: (0x0012) ACC_PRIVATE, ACC_FINAL + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + private static {}; + descriptor: ()V + flags: (0x000a) ACC_PRIVATE, ACC_STATIC + Code: + stack=2, locals=0, args_size=0 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V + x: return + + public rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed(int); + descriptor: (I)V + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=2, args_size=2 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: ldc #x // String <init> + x: ldc #x // String (I)V + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: invokespecial #x // Method java/lang/Object."<init>":()V + x: aload_0 + x: iload_1 + x: putfield #x // Field mValue:I + x: return + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 10 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; + 11 10 1 value I + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep + + public int getValue(); + descriptor: ()I + flags: (0x0001) ACC_PUBLIC + Code: + stack=4, locals=1, args_size=1 + x: ldc #x // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed + x: ldc #x // String getValue + x: ldc #x // String ()I + x: ldc #x // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall + x: invokestatic #x // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + x: aload_0 + x: getfield #x // Field mValue:I + x: ireturn + LineNumberTable: + LocalVariableTable: + Start Length Slot Name Signature + 11 5 0 this Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed; + RuntimeVisibleAnnotations: + x: #x() + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep +} +SourceFile: "TinyFrameworkToBeRenamed.java" +RuntimeVisibleAnnotations: x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl + com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep RuntimeInvisibleAnnotations: x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub + android.hosttest.annotation.HostSideTestWholeClassKeep diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt new file mode 100644 index 000000000000..3c138d21b75d --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt @@ -0,0 +1,75 @@ +class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy keep + field stub keep + # field remove remove # Implicitly remove + method <init> ()V keep + method addOne (I)I keep + method addOneInner (I)I keep + method toBeRemoved (Ljava/lang/String;)V remove + method addTwo (I)I @addTwo_host + # method addTwo_host (I)I # used as a substitute + method nativeAddThree (I)I @addThree_host + # method addThree_host (I)I # used as a substitute + method unsupportedMethod ()Ljava/lang/String; throw + method visibleButUsesUnsupportedMethod ()Ljava/lang/String; keep + method toBeIgnoredObj ()Ljava/lang/String; ignore + method toBeIgnoredV ()V ignore + method toBeIgnoredZ ()Z ignore + method toBeIgnoredB ()B ignore + method toBeIgnoredC ()C ignore + method toBeIgnoredS ()S ignore + method toBeIgnoredI ()I ignore + method toBeIgnoredL ()L ignore + method toBeIgnoredF ()F ignore + method toBeIgnoredD ()D ignore + +# Class load hook +class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy ~com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded + +# Heuristics rule: Stub all the AIDL classes. +class :aidl keepclass + +# Heuristics rule: Stub all the R classes. +class :r keepclass + +# Default is "remove", so let's put all the base classes / interfaces in the stub first. +class com.android.hoststubgen.test.tinyframework.subclasstest.C1 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.C2 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.C3 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.CA keep +class com.android.hoststubgen.test.tinyframework.subclasstest.CB keep +class com.android.hoststubgen.test.tinyframework.subclasstest.I1 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.I2 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.I3 keep +class com.android.hoststubgen.test.tinyframework.subclasstest.IA keep +class com.android.hoststubgen.test.tinyframework.subclasstest.IB keep + +# Then define inheritance based policies. +class *com.android.hoststubgen.test.tinyframework.subclasstest.C1 keep +class *com.android.hoststubgen.test.tinyframework.subclasstest.CA remove + +class *com.android.hoststubgen.test.tinyframework.subclasstest.I1 keep +class *com.android.hoststubgen.test.tinyframework.subclasstest.IA remove + +# Test package directive +package com.android.hoststubgen.test.tinyframework.packagetest keep +class com.android.hoststubgen.test.tinyframework.packagetest.B remove +class com.android.hoststubgen.test.tinyframework.packagetest.sub.B remove +# The following rules are the same as above +# class com.android.hoststubgen.test.tinyframework.packagetest.A keep +# class com.android.hoststubgen.test.tinyframework.packagetest.sub.A keep + +# Used to test method call replacement. +class com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace keepclass + method originalAdd (II)I @com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo.add + +# Used to test method call replacement. +# Note because java.lang.Thread is _not_ within the tiny-framework jar, the policy ("keep") +# doesn't realy matter. +class java.lang.Thread keep + method start ()V @com.android.hoststubgen.test.tinyframework.TinyFrameworkMethodCallReplace$ReplaceTo.startThread + + +# "rename" takes a type internal name, so '/'s is used as a separator. +# The leading / in the prefix is not needed (it'll be stripped), but it's added to make +# sure the stripping works. +rename ^.*/TinyFrameworkToBeRenamed$ /rename_prefix/ diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/run-test-manually.sh b/ravenwood/tools/hoststubgen/test-tiny-framework/run-test-manually.sh index 872bbf878de4..80ebf3adab3d 100755 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/run-test-manually.sh +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/run-test-manually.sh @@ -43,8 +43,7 @@ run m $HOSTSTUBGEN hoststubgen-annotations hoststubgen-helper-runtime truth juni tiny_framework_classes=$out/tiny-framework/classes/ tiny_framework_jar=$out/tiny-framework.jar -tiny_framework_host_stub_jar=$out/tiny-framework_host_stub.jar -tiny_framework_host_impl_jar=$out/tiny-framework_host_impl.jar +tiny_framework_host_jar=$out/tiny-framework_host.jar tiny_test_classes=$out/tiny-test/classes/ tiny_test_jar=$out/tiny-test.jar @@ -87,8 +86,7 @@ echo "# Generating the stub and impl jars..." run $HOSTSTUBGEN \ @../hoststubgen-standard-options.txt \ --in-jar $tiny_framework_jar \ - --out-stub-jar $tiny_framework_host_stub_jar \ - --out-impl-jar $tiny_framework_host_impl_jar \ + --out-jar $tiny_framework_host_jar \ --policy-override-file policy-override-tiny-framework.txt \ --gen-keep-all-file out/tiny-framework_keep_all.txt \ --gen-input-dump-file out/tiny-framework_dump.txt \ @@ -97,14 +95,14 @@ run $HOSTSTUBGEN \ $HOSTSTUBGEN_OPTS # Extract the jar files, so we can look into them. -extract $tiny_framework_host_stub_jar $tiny_framework_host_impl_jar +extract $tiny_framework_host_jar # Build the test echo "# Building tiny-test..." run $JAVAC \ -cp $( \ join : \ - $tiny_framework_host_stub_jar \ + $tiny_framework_jar \ "${test_compile_classpaths[@]}" \ ) \ -d $tiny_test_classes \ @@ -124,7 +122,7 @@ run $JAVA \ -cp $( \ join : \ $tiny_test_jar \ - $tiny_framework_host_impl_jar \ + $tiny_framework_host_jar \ "${test_compile_classpaths[@]}" \ "${test_runtime_classpaths[@]}" \ ) \ diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework-dump-test.py b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework-dump-test.py index cee29dcd1d59..cee29dcd1d59 100755 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework-dump-test.py +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework-dump-test.py diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/IPretendingAidl.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/IPretendingAidl.java index 0a07c2b91fc3..0a07c2b91fc3 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/IPretendingAidl.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/IPretendingAidl.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/R.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/R.java index b1bedf4b6853..b1bedf4b6853 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/R.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/R.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations.java index 6d8a48a37fea..3415deb957ed 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotations.java @@ -16,41 +16,33 @@ package com.android.hoststubgen.test.tinyframework; import android.hosttest.annotation.HostSideTestClassLoadHook; +import android.hosttest.annotation.HostSideTestIgnore; import android.hosttest.annotation.HostSideTestKeep; import android.hosttest.annotation.HostSideTestRemove; -import android.hosttest.annotation.HostSideTestStub; import android.hosttest.annotation.HostSideTestSubstitute; import android.hosttest.annotation.HostSideTestThrow; /** * Test without class-wide annotations. */ -@HostSideTestStub +@HostSideTestKeep @HostSideTestClassLoadHook( "com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded") -public class TinyFrameworkClassAnnotations { - @HostSideTestStub - public TinyFrameworkClassAnnotations() { +public class TinyFrameworkAnnotations { + @HostSideTestKeep + public TinyFrameworkAnnotations() { } - @HostSideTestStub - public int stub = 1; - @HostSideTestKeep - public int keep = 2; + public int keep = 1; // Members will be deleted by default. // Deleted fields cannot have an initial value, because otherwise .ctor will fail to set it at // runtime. public int remove; - @HostSideTestStub - public int addOne(int value) { - return addOneInner(value); - } - @HostSideTestKeep - public int addOneInner(int value) { + public int addOne(int value) { return value + 1; } @@ -59,7 +51,6 @@ public class TinyFrameworkClassAnnotations { throw new RuntimeException(); } - @HostSideTestStub @HostSideTestSubstitute(suffix = "_host") public int addTwo(int value) { throw new RuntimeException("not supported on host side"); @@ -69,7 +60,6 @@ public class TinyFrameworkClassAnnotations { return value + 2; } - @HostSideTestStub @HostSideTestSubstitute(suffix = "_host") public static native int nativeAddThree(int value); @@ -83,8 +73,8 @@ public class TinyFrameworkClassAnnotations { return "This value shouldn't be seen on the host side."; } - @HostSideTestStub - public String visibleButUsesUnsupportedMethod() { - return unsupportedMethod(); + @HostSideTestIgnore + public int toBeIgnored() { + throw new RuntimeException("not supported on host side"); } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.java index 98fc6349cdc9..f734790c8dd9 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.java @@ -15,12 +15,12 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; import java.util.HashSet; import java.util.Set; -@HostSideTestWholeClassStub +@HostSideTestWholeClassKeep public class TinyFrameworkClassLoadHook { private TinyFrameworkClassLoadHook() { } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations.java index 145b65a98d7b..e83163edb5e5 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotations.java @@ -15,38 +15,25 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestStub; +import android.hosttest.annotation.HostSideTestRemove; import android.hosttest.annotation.HostSideTestSubstitute; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestThrow; +import android.hosttest.annotation.HostSideTestWholeClassKeep; -@HostSideTestWholeClassStub -public class TinyFrameworkClassClassWideAnnotations { - public TinyFrameworkClassClassWideAnnotations() { +@HostSideTestWholeClassKeep +public class TinyFrameworkClassWideAnnotations { + public TinyFrameworkClassWideAnnotations() { } - public int stub = 1; + public int keep = 1; - public int keep = 2; - - // Cannot have an initial value, because otherwise .ctor will fail to set it at runtime. + @HostSideTestRemove public int remove; - // @Stub public int addOne(int value) { - return addOneInner(value); - } - - // @Keep - public int addOneInner(int value) { return value + 1; } - // @Remove - public void toBeRemoved(String foo) { - throw new RuntimeException(); - } - - @HostSideTestStub @HostSideTestSubstitute(suffix = "_host") public int addTwo(int value) { throw new RuntimeException("not supported on host side"); @@ -56,19 +43,13 @@ public class TinyFrameworkClassClassWideAnnotations { return value + 2; } - @HostSideTestStub - @HostSideTestSubstitute(suffix = "_host") - public static native int nativeAddThree(int value); - - public static int nativeAddThree_host(int value) { - return value + 3; + @HostSideTestRemove + public void toBeRemoved(String foo) { + throw new RuntimeException(); } + @HostSideTestThrow public String unsupportedMethod() { return "This value shouldn't be seen on the host side."; } - - public String visibleButUsesUnsupportedMethod() { - return unsupportedMethod(); - } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.java index 8324ed93bf26..3df21d9a5647 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.java @@ -15,18 +15,16 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestClassLoadHook; -import android.hosttest.annotation.HostSideTestStub; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestKeep; -@HostSideTestStub +@HostSideTestKeep public class TinyFrameworkClassWithInitializerDefault { static { sInitialized = true; } - @HostSideTestStub + @HostSideTestKeep public static boolean sInitialized; - @HostSideTestStub + @HostSideTestKeep public static Object sObject = new Object(); } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.java index ea1ad93b21b4..cc665de9cd01 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.java @@ -16,20 +16,20 @@ package com.android.hoststubgen.test.tinyframework; import android.hosttest.annotation.HostSideTestClassLoadHook; +import android.hosttest.annotation.HostSideTestKeep; import android.hosttest.annotation.HostSideTestStaticInitializerKeep; -import android.hosttest.annotation.HostSideTestStub; @HostSideTestClassLoadHook( "com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded") -@HostSideTestStub +@HostSideTestKeep @HostSideTestStaticInitializerKeep public class TinyFrameworkClassWithInitializerStub { static { sInitialized = true; } - @HostSideTestStub + @HostSideTestKeep public static boolean sInitialized; - @HostSideTestStub + @HostSideTestKeep public static Object sObject = new Object(); } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.java index 51f48188fe74..f833ad814513 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.java @@ -16,15 +16,14 @@ package com.android.hoststubgen.test.tinyframework; import android.hosttest.annotation.HostSideTestKeep; -import android.hosttest.annotation.HostSideTestStub; -@HostSideTestStub +@HostSideTestKeep public enum TinyFrameworkEnumComplex { - @HostSideTestStub + @HostSideTestKeep RED("Red", "R"), - @HostSideTestStub + @HostSideTestKeep GREEN("Green", "G"), - @HostSideTestStub + @HostSideTestKeep BLUE("Blue", "B"); @HostSideTestKeep @@ -33,18 +32,18 @@ public enum TinyFrameworkEnumComplex { @HostSideTestKeep private final String mShortName; - @HostSideTestStub + @HostSideTestKeep TinyFrameworkEnumComplex(String longName, String shortName) { mLongName = longName; mShortName = shortName; } - @HostSideTestStub + @HostSideTestKeep public String getLongName() { return mLongName; } - @HostSideTestStub + @HostSideTestKeep public String getShortName() { return mShortName; } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.java index f440d8667fb4..c023169b5601 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.java @@ -15,12 +15,12 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestStub; +import android.hosttest.annotation.HostSideTestKeep; -@HostSideTestStub +@HostSideTestKeep public enum TinyFrameworkEnumSimple { - @HostSideTestStub + @HostSideTestKeep CAT, - @HostSideTestStub + @HostSideTestKeep DOG, } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.java index 909d3b440f50..f7cae7d255fe 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.java @@ -15,9 +15,9 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; -@HostSideTestWholeClassStub +@HostSideTestWholeClassKeep public class TinyFrameworkExceptionTester { public static int testException() { try { diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.java index bde7c35dc294..ec1efba99c77 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.java @@ -24,17 +24,11 @@ public class TinyFrameworkForTextPolicy { public int stub = 1; - public int keep = 2; - // Removed fields cannot have an initial value, because otherwise .ctor will fail to set it at // runtime. public int remove; public int addOne(int value) { - return addOneInner(value); - } - - public int addOneInner(int value) { return value + 1; } @@ -42,6 +36,42 @@ public class TinyFrameworkForTextPolicy { throw new RuntimeException(); } + public String toBeIgnoredObj() { + throw new RuntimeException(); + } + + public void toBeIgnoredV() { + throw new RuntimeException(); + } + + public boolean toBeIgnoredZ() { + throw new RuntimeException(); + } + + public byte toBeIgnoredB() { + throw new RuntimeException(); + } + + public char toBeIgnoredC() { + throw new RuntimeException(); + } + + public short toBeIgnoredS() { + throw new RuntimeException(); + } + + public int toBeIgnoredI() { + throw new RuntimeException(); + } + + public float toBeIgnoredF() { + throw new RuntimeException(); + } + + public double toBeIgnoredD() { + throw new RuntimeException(); + } + public int addTwo(int value) { throw new RuntimeException("not supported on host side"); } @@ -59,8 +89,4 @@ public class TinyFrameworkForTextPolicy { public String unsupportedMethod() { return "This value shouldn't be seen on the host side."; } - - public String visibleButUsesUnsupportedMethod() { - return unsupportedMethod(); - } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.java index 0d1203b0dedc..1ca653ec7da6 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.java @@ -15,8 +15,8 @@ */ package com.android.hoststubgen.test.tinyframework; +import android.hosttest.annotation.HostSideTestKeep; import android.hosttest.annotation.HostSideTestStaticInitializerKeep; -import android.hosttest.annotation.HostSideTestStub; import java.util.function.Supplier; @@ -28,48 +28,48 @@ import java.util.function.Supplier; * * Implicit filter should take care of them. */ -@HostSideTestStub +@HostSideTestKeep @HostSideTestStaticInitializerKeep public class TinyFrameworkLambdas { - @HostSideTestStub + @HostSideTestKeep public TinyFrameworkLambdas() { } - @HostSideTestStub + @HostSideTestKeep public final Supplier<Integer> mSupplier = () -> 1; - @HostSideTestStub + @HostSideTestKeep public static final Supplier<Integer> sSupplier = () -> 2; - @HostSideTestStub + @HostSideTestKeep public Supplier<Integer> getSupplier() { return () -> 3; } - @HostSideTestStub + @HostSideTestKeep public static Supplier<Integer> getSupplier_static() { return () -> 4; } - @HostSideTestStub + @HostSideTestKeep @HostSideTestStaticInitializerKeep public static class Nested { - @HostSideTestStub + @HostSideTestKeep public Nested() { } - @HostSideTestStub + @HostSideTestKeep public final Supplier<Integer> mSupplier = () -> 5; - @HostSideTestStub + @HostSideTestKeep public static final Supplier<Integer> sSupplier = () -> 6; - @HostSideTestStub + @HostSideTestKeep public Supplier<Integer> getSupplier() { return () -> 7; } - @HostSideTestStub + @HostSideTestKeep public static Supplier<Integer> getSupplier_static() { return () -> 8; } diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.java new file mode 100644 index 000000000000..57c69a336654 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkMethodCallReplace.java @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework; + +import android.hosttest.annotation.HostSideTestWholeClassKeep; + +import java.util.concurrent.atomic.AtomicBoolean; + +@HostSideTestWholeClassKeep +public class TinyFrameworkMethodCallReplace { + // This method should return true. + public static boolean nonStaticMethodCallReplaceTester() throws Exception { + final AtomicBoolean ab = new AtomicBoolean(false); + + Thread th = new Thread(() -> { + ab.set(Thread.currentThread().isDaemon()); + }); + // This Thread.start() call will be redirected to ReplaceTo.startThread() + // (because of the policy file directive) which will make the thread "daemon" and start it. + th.start(); + th.join(); + + return ab.get(); // This should be true. + } + + public static int staticMethodCallReplaceTester() { + // This method call will be replaced with ReplaceTo.add(). + return originalAdd(1, 2); + } + + private static int originalAdd(int a, int b) { + return a + b - 1; // Original is broken. + } + + public static class ReplaceTo { + public static void startThread(Thread thread) { + thread.setDaemon(true); + thread.start(); + } + + public static int add(int a, int b) { + return a + b; + } + } +} diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.java index 09ee183a2dcc..04a551c8c46e 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.java @@ -15,19 +15,23 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestNativeSubstitutionClass; +import android.hosttest.annotation.HostSideTestRedirect; +import android.hosttest.annotation.HostSideTestRedirectionClass; import android.hosttest.annotation.HostSideTestThrow; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; -@HostSideTestWholeClassStub -@HostSideTestNativeSubstitutionClass("TinyFrameworkNative_host") +@HostSideTestWholeClassKeep +@HostSideTestRedirectionClass("TinyFrameworkNative_host") public class TinyFrameworkNative { + + @HostSideTestRedirect public static native int nativeAddTwo(int arg); public static int nativeAddTwo_should_be_like_this(int arg) { return TinyFrameworkNative_host.nativeAddTwo(arg); } + @HostSideTestRedirect public static native long nativeLongPlus(long arg1, long arg2); public static long nativeLongPlus_should_be_like_this(long arg1, long arg2) { @@ -40,6 +44,7 @@ public class TinyFrameworkNative { this.value = v; } + @HostSideTestRedirect public native int nativeNonStaticAddToValue(int arg); public int nativeNonStaticAddToValue_should_be_like_this(int arg) { @@ -49,9 +54,22 @@ public class TinyFrameworkNative { @HostSideTestThrow public static native void nativeStillNotSupported(); + public static native void nativeStillKeep(); + public static void nativeStillNotSupported_should_be_like_this() { throw new RuntimeException(); } + @HostSideTestRedirect public static native byte nativeBytePlus(byte arg1, byte arg2); + + @HostSideTestRedirect + public void notNativeRedirected() { + throw new RuntimeException(); + } + + @HostSideTestRedirect + public static void notNativeStaticRedirected() { + throw new RuntimeException(); + } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.java index b23c21602967..c7a29a1cc0f9 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNative_host.java @@ -17,8 +17,6 @@ package com.android.hoststubgen.test.tinyframework; import android.hosttest.annotation.HostSideTestWholeClassKeep; -// TODO: This annotation shouldn't be needed. -// We should infer it from HostSideTestNativeSubstitutionClass. @HostSideTestWholeClassKeep public class TinyFrameworkNative_host { public static int nativeAddTwo(int arg) { @@ -38,4 +36,10 @@ public class TinyFrameworkNative_host { public static byte nativeBytePlus(byte arg1, byte arg2) { return (byte) (arg1 + arg2); } + + public static void notNativeRedirected(TinyFrameworkNative source) { + } + + public static void notNativeStaticRedirected() { + } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.java index e1c48bb85563..c1ea2ee59fbb 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.java @@ -15,11 +15,11 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; import java.util.function.Supplier; -@HostSideTestWholeClassStub +@HostSideTestWholeClassKeep public class TinyFrameworkNestedClasses { public final Supplier<Integer> mSupplier = new Supplier<Integer>() { @Override @@ -34,6 +34,7 @@ public class TinyFrameworkNestedClasses { return 2; } }; + public Supplier<Integer> getSupplier() { return new Supplier<Integer>() { @Override @@ -52,12 +53,10 @@ public class TinyFrameworkNestedClasses { }; } - @HostSideTestWholeClassStub public class InnerClass { public int value = 5; } - @HostSideTestWholeClassStub public static class StaticNestedClass { public int value = 6; @@ -70,6 +69,10 @@ public class TinyFrameworkNestedClasses { } }; } + + public static class Double$NestedClass { + public int value = 8; + } } public static class BaseClass { diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.java index a82be5453b1e..941fcff31d8e 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.java @@ -15,9 +15,9 @@ */ package com.android.hoststubgen.test.tinyframework; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; -@HostSideTestWholeClassStub +@HostSideTestWholeClassKeep public class TinyFrameworkPackageRedirect { /** * A method that uses "unsupported" class. HostStubGen will redirect them to the "supported" diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java new file mode 100644 index 000000000000..707bc0ebb4db --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java @@ -0,0 +1,28 @@ +/* + * 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.hoststubgen.test.tinyframework; + +import android.hosttest.annotation.HostSideTestWholeClassKeep; + +@HostSideTestWholeClassKeep +public class TinyFrameworkRenamedClassCaller { + /** Calls the class that'll be renamed. */ + public static int foo(int value) { + // When TinyFrameworkToBeRenamed gets renamed, this callsite should be updated too, + // so this code should work as-is. + return new TinyFrameworkToBeRenamed(value).getValue(); + } +} diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java new file mode 100644 index 000000000000..8319ced6109a --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java @@ -0,0 +1,34 @@ +/* + * 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.hoststubgen.test.tinyframework; + +import android.hosttest.annotation.HostSideTestWholeClassKeep; + +/** + * This class will be renamed by the "rename" directive in the policy file. + */ +@HostSideTestWholeClassKeep +public class TinyFrameworkToBeRenamed { + private final int mValue; + + public TinyFrameworkToBeRenamed(int value) { + mValue = value; + } + + public int getValue() { + return mValue; + } +} diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/A.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/A.java new file mode 100644 index 000000000000..6a52e4401b45 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/A.java @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework.packagetest; + +public class A { +} diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/B.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/B.java new file mode 100644 index 000000000000..1374a288f7aa --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/B.java @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework.packagetest; + +public class B { +} diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/A.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/A.java new file mode 100644 index 000000000000..361a7fd04842 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/A.java @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework.packagetest.sub; + +public class A { +} diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/B.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/B.java new file mode 100644 index 000000000000..716595a44243 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/packagetest/sub/B.java @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework.packagetest.sub; + +public class B { +} diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C1.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C1.java index 03c9e2a7b5bb..03c9e2a7b5bb 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C1.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C1.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C2.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C2.java index 3ca8f1f172bd..3ca8f1f172bd 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C2.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C2.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C3.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C3.java index a6c14f09b680..a6c14f09b680 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C3.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/C3.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CA.java index 2e353709fd1e..2e353709fd1e 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CB.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CB.java index fe4cee64b2f9..fe4cee64b2f9 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CB.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/CB.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.java index 12012fcdf6ca..12012fcdf6ca 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C1.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.java index 8d48ee6f6858..8d48ee6f6858 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C2.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.java index 6748430a8e6f..6748430a8e6f 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_C3.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CA.java index 58aa5c3b74eb..58aa5c3b74eb 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB.java index c1c3d624b126..c1c3d624b126 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB_IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB_IA.java index 398b56975f1c..398b56975f1c 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB_IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_CB_IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.java index 44cbd8f9bffa..44cbd8f9bffa 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.java index 42355a34b65c..42355a34b65c 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I1_IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.java index 09c80992e450..09c80992e450 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I2.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.java index 0806a478d756..0806a478d756 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3_IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3_IA.java index eaa8528a3f31..eaa8528a3f31 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3_IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_I3_IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA.java index 778c5aaf27f0..778c5aaf27f0 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I1.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I1.java index 493f7c83c0f0..493f7c83c0f0 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I1.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I1.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I3.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I3.java index 2aa1de18b7f4..2aa1de18b7f4 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I3.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IA_I3.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB.java index d9eae0934c42..d9eae0934c42 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB_IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB_IA.java index 9ee42836ac9a..9ee42836ac9a 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB_IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_IB_IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_None.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_None.java index 50ec2cbc9c6e..50ec2cbc9c6e 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_None.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/Class_None.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I1.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I1.java index 3f3659644a80..3f3659644a80 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I1.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I1.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I2.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I2.java index 960060c8a036..960060c8a036 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I2.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I2.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I3.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I3.java index c678eaa789b0..c678eaa789b0 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I3.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/I3.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IA.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IA.java index 1cff484c3cd8..1cff484c3cd8 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IA.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IA.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IB.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IB.java index 84e7173c71b8..84e7173c71b8 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IB.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/subclasstest/IB.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/supported/UnsupportedClass.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/supported/UnsupportedClass.java index fa5866451e83..fa5866451e83 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/supported/UnsupportedClass.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/supported/UnsupportedClass.java diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/unsupported/UnsupportedClass.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/unsupported/UnsupportedClass.java index 0409b02b0f5d..92f41ac63cdb 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/unsupported/UnsupportedClass.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/unsupported/UnsupportedClass.java @@ -15,10 +15,10 @@ */ package com.unsupported; -import android.hosttest.annotation.HostSideTestWholeClassStub; +import android.hosttest.annotation.HostSideTestWholeClassKeep; // Used for testing --package-redirect. -@HostSideTestWholeClassStub +@HostSideTestWholeClassKeep public class UnsupportedClass { public UnsupportedClass(int value) { throw new RuntimeException("This class is not supported"); diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithAnnotTest.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotationsTest.java index 288c7162aa58..1ae049371229 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithAnnotTest.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkAnnotationsTest.java @@ -17,50 +17,48 @@ package com.android.hoststubgen.test.tinyframework; import static com.google.common.truth.Truth.assertThat; +import static org.junit.Assert.assertThrows; + import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; -public class TinyFrameworkClassWithAnnotTest { +public class TinyFrameworkAnnotationsTest { @Rule public ExpectedException thrown = ExpectedException.none(); @Test public void testSimple() { - TinyFrameworkClassAnnotations tfc = new TinyFrameworkClassAnnotations(); + TinyFrameworkAnnotations tfc = new TinyFrameworkAnnotations(); assertThat(tfc.addOne(1)).isEqualTo(2); - assertThat(tfc.stub).isEqualTo(1); + assertThat(tfc.keep).isEqualTo(1); } -// @Test -// public void testDoesntCompile() { -// TinyFrameworkClassWithAnnot tfc = new TinyFrameworkClassWithAnnot(); -// -// tfc.addOneInner(1); // Shouldn't compile. -// tfc.toBeRemoved("abc"); // Shouldn't compile. -// tfc.unsupportedMethod(); // Shouldn't compile. -// int a = tfc.keep; // Shouldn't compile -// int b = tfc.remove; // Shouldn't compile -// } + @Test + public void testRemove() { + TinyFrameworkAnnotations tfc = new TinyFrameworkAnnotations(); + assertThrows(NoSuchMethodError.class, () -> tfc.toBeRemoved("abc")); + assertThrows(NoSuchFieldError.class, () -> tfc.remove = 1); + } @Test public void testSubstitute() { - TinyFrameworkClassAnnotations tfc = new TinyFrameworkClassAnnotations(); + TinyFrameworkAnnotations tfc = new TinyFrameworkAnnotations(); assertThat(tfc.addTwo(1)).isEqualTo(3); } @Test public void testSubstituteNative() { - TinyFrameworkClassAnnotations tfc = new TinyFrameworkClassAnnotations(); + TinyFrameworkAnnotations tfc = new TinyFrameworkAnnotations(); assertThat(tfc.nativeAddThree(1)).isEqualTo(4); } @Test - public void testVisibleButUsesUnsupportedMethod() { - TinyFrameworkClassAnnotations tfc = new TinyFrameworkClassAnnotations(); + public void testUnsupportedMethod() { + TinyFrameworkAnnotations tfc = new TinyFrameworkAnnotations(); thrown.expect(RuntimeException.class); thrown.expectMessage("not yet supported"); - tfc.visibleButUsesUnsupportedMethod(); + tfc.unsupportedMethod(); } } diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java index 37925e82bdb6..68673dc2a5b8 100644 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java @@ -17,10 +17,9 @@ package com.android.hoststubgen.test.tinyframework; import static com.google.common.truth.Truth.assertThat; -import static org.junit.Assert.fail; +import static org.junit.Assert.assertThrows; import com.android.hoststubgen.test.tinyframework.R.Nested; -import com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses.SubClass; import org.junit.Rule; import org.junit.Test; @@ -41,16 +40,26 @@ public class TinyFrameworkClassTest { assertThat(tfc.stub).isEqualTo(1); } -// @Test -// public void testDoesntCompile() { -// TinyFrameworkClass tfc = new TinyFrameworkClass(); -// -// tfc.addOneInner(1); // Shouldn't compile. -// tfc.toBeRemoved("abc"); // Shouldn't compile. -// tfc.unsupportedMethod(); // Shouldn't compile. -// int a = tfc.keep; // Shouldn't compile -// int b = tfc.remove; // Shouldn't compile -// } + @Test + public void testRemove() { + TinyFrameworkForTextPolicy tfc = new TinyFrameworkForTextPolicy(); + assertThrows(NoSuchMethodError.class, () -> tfc.toBeRemoved("abc")); + assertThrows(NoSuchFieldError.class, () -> tfc.remove = 1); + } + + @Test + public void testIgnore() { + TinyFrameworkForTextPolicy tfc = new TinyFrameworkForTextPolicy(); + tfc.toBeIgnoredV(); + assertThat(tfc.toBeIgnoredZ()).isEqualTo(false); + assertThat(tfc.toBeIgnoredB()).isEqualTo(0); + assertThat(tfc.toBeIgnoredC()).isEqualTo(0); + assertThat(tfc.toBeIgnoredS()).isEqualTo(0); + assertThat(tfc.toBeIgnoredI()).isEqualTo(0); + assertThat(tfc.toBeIgnoredF()).isEqualTo(0); + assertThat(tfc.toBeIgnoredD()).isEqualTo(0); + assertThat(tfc.toBeIgnoredObj()).isEqualTo(null); + } @Test public void testSubstitute() { @@ -65,48 +74,12 @@ public class TinyFrameworkClassTest { } @Test - public void testVisibleButUsesUnsupportedMethod() { + public void testUnsupportedMethod() { TinyFrameworkForTextPolicy tfc = new TinyFrameworkForTextPolicy(); thrown.expect(RuntimeException.class); thrown.expectMessage("not yet supported"); - tfc.visibleButUsesUnsupportedMethod(); - } - - @Test - public void testNestedClass1() { - assertThat(new TinyFrameworkNestedClasses().mSupplier.get()).isEqualTo(1); - } - - @Test - public void testNestedClass2() { - assertThat(TinyFrameworkNestedClasses.sSupplier.get()).isEqualTo(2); - } - - @Test - public void testNestedClass3() { - assertThat(new TinyFrameworkNestedClasses().getSupplier().get()).isEqualTo(3); - } - - @Test - public void testNestedClass4() { - assertThat(TinyFrameworkNestedClasses.getSupplier_static().get()).isEqualTo(4); - } - - @Test - public void testNestedClass5() { - assertThat((new TinyFrameworkNestedClasses()).new InnerClass().value).isEqualTo(5); - } - - @Test - public void testNestedClass6() { - assertThat(new TinyFrameworkNestedClasses.StaticNestedClass().value).isEqualTo(6); - } - - @Test - public void testNestedClass7() { - assertThat(TinyFrameworkNestedClasses.StaticNestedClass.getSupplier_static().get()) - .isEqualTo(7); + tfc.unsupportedMethod(); } @Test @@ -172,28 +145,28 @@ public class TinyFrameworkClassTest { } @Test - public void testSubstituteNativeWithThrow() throws Exception { - // We can't use TinyFrameworkNative.nativeStillNotSupported() directly in this class, - // because @Throw implies @Keep (not @Stub), and we currently compile this test - // against the stub jar (so it won't contain @Throw methods). - // - // But the method exists at runtime, so we can use reflections to call it. - // - // In the real Ravenwood environment, we don't use HostStubGen's stub jar at all, - // so it's not a problem. + public void testSubstituteNativeWithThrow() { + thrown.expect(RuntimeException.class); + thrown.expectMessage("not yet supported"); - final var clazz = TinyFrameworkNative.class; - final var method = clazz.getMethod("nativeStillNotSupported"); + TinyFrameworkNative.nativeStillNotSupported(); + } - try { - method.invoke(null); + @Test + public void testSubstituteNativeWithKeep() { + // We don't want to complicate the test by setting up JNI, + // so to test out whether the native method is preserved, we + // check whether calling it will throw UnsatisfiedLinkError, + // which would only happen on native methods. + thrown.expect(UnsatisfiedLinkError.class); - fail("java.lang.reflect.InvocationTargetException expected"); + TinyFrameworkNative.nativeStillKeep(); + } - } catch (java.lang.reflect.InvocationTargetException e) { - var inner = e.getCause(); - assertThat(inner.getMessage()).contains("not yet supported"); - } + @Test + public void testNotNativeRedirect() { + TinyFrameworkNative.notNativeStaticRedirected(); + new TinyFrameworkNative().notNativeRedirected(); } @Test @@ -202,12 +175,6 @@ public class TinyFrameworkClassTest { thrown.expectMessage("Outer exception"); TinyFrameworkExceptionTester.testException(); - - } - - @Test - public void testMethodCallBeforeSuperCall() { - assertThat(new SubClass(3).value).isEqualTo(3); } @Test @@ -217,7 +184,7 @@ public class TinyFrameworkClassTest { // Having this line before assertThat() will ensure these class are already loaded. var classes = new Class[]{ TinyFrameworkClassWithInitializerStub.class, - TinyFrameworkClassAnnotations.class, + TinyFrameworkAnnotations.class, TinyFrameworkForTextPolicy.class, }; @@ -334,4 +301,21 @@ public class TinyFrameworkClassTest { public void testRFileHeuristics() { assertThat(Nested.ARRAY.length).isEqualTo(1); } + + @Test + public void testTypeRename() { + assertThat(TinyFrameworkRenamedClassCaller.foo(1)).isEqualTo(1); + } + + @Test + public void testMethodCallReplaceNonStatic() throws Exception { + assertThat(TinyFrameworkMethodCallReplace.nonStaticMethodCallReplaceTester()) + .isEqualTo(true); + } + + @Test + public void testMethodCallReplaceStatic() throws Exception { + assertThat(TinyFrameworkMethodCallReplace.staticMethodCallReplaceTester()) + .isEqualTo(3); + } } diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotationsTest.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotationsTest.java new file mode 100644 index 000000000000..1816b383f6f7 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWideAnnotationsTest.java @@ -0,0 +1,112 @@ +/* + * Copyright (C) 2024 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.hoststubgen.test.tinyframework; + +import static com.google.common.truth.Truth.assertThat; + +import static org.junit.Assert.assertThrows; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; + +public class TinyFrameworkClassWideAnnotationsTest { + @Rule + public ExpectedException thrown = ExpectedException.none(); + + @Test + public void testSimple() { + var tfc = new TinyFrameworkClassWideAnnotations(); + assertThat(tfc.addOne(1)).isEqualTo(2); + assertThat(tfc.keep).isEqualTo(1); + } + + @Test + public void testRemove() { + var tfc = new TinyFrameworkClassWideAnnotations(); + assertThrows(NoSuchMethodError.class, () -> tfc.toBeRemoved("abc")); + assertThrows(NoSuchFieldError.class, () -> tfc.remove = 1); + } + + @Test + public void testSubstitute() { + var tfc = new TinyFrameworkClassWideAnnotations(); + assertThat(tfc.addTwo(1)).isEqualTo(3); + } + + @Test + public void testUnsupportedMethod() { + var tfc = new TinyFrameworkClassWideAnnotations(); + + thrown.expect(RuntimeException.class); + thrown.expectMessage("not yet supported"); + tfc.unsupportedMethod(); + } + + @Test + public void testMethodCallBeforeSuperCall() { + assertThat(new TinyFrameworkNestedClasses.SubClass(3).value).isEqualTo(3); + } + + @Test + public void testNestedClass1() { + assertThat(new TinyFrameworkNestedClasses().mSupplier.get()).isEqualTo(1); + } + + @Test + public void testNestedClass2() { + assertThat(TinyFrameworkNestedClasses.sSupplier.get()).isEqualTo(2); + } + + @Test + public void testNestedClass3() { + assertThat(new TinyFrameworkNestedClasses().getSupplier().get()).isEqualTo(3); + } + + @Test + public void testNestedClass4() { + assertThat(TinyFrameworkNestedClasses.getSupplier_static().get()).isEqualTo(4); + } + + @Test + public void testNestedClass5() { + assertThat((new TinyFrameworkNestedClasses()).new InnerClass().value).isEqualTo(5); + } + + @Test + public void testNestedClass6() { + assertThat(new TinyFrameworkNestedClasses.StaticNestedClass().value).isEqualTo(6); + } + + @Test + public void testNestedClass7() { + assertThat(TinyFrameworkNestedClasses.StaticNestedClass.getSupplier_static().get()) + .isEqualTo(7); + } + + @Test + public void testNestedClass8() { + assertThat(new TinyFrameworkNestedClasses.StaticNestedClass.Double$NestedClass().value) + .isEqualTo(8); + } + + @Test + public void testIgnoreAnnotation() { + // The actual method will throw, but because of @Ignore, it'll return 0. + assertThat(new TinyFrameworkAnnotations().toBeIgnored()) + .isEqualTo(0); + } +} diff --git a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/asm/AsmUtilsTest.kt b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/asm/AsmUtilsTest.kt index 6b46c84bd0bb..5b2795c4cff2 100644 --- a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/asm/AsmUtilsTest.kt +++ b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/asm/AsmUtilsTest.kt @@ -23,18 +23,6 @@ import org.objectweb.asm.Opcodes.ACC_PUBLIC import org.objectweb.asm.Opcodes.ACC_STATIC class AsmUtilsTest { - private fun checkGetDirectOuterClassName(input: String, expected: String?) { - assertThat(getDirectOuterClassName(input)).isEqualTo(expected) - } - - @Test - fun testGetDirectOuterClassName() { - checkGetDirectOuterClassName("a", null) - checkGetDirectOuterClassName("a\$x", "a") - checkGetDirectOuterClassName("a.b.c\$x", "a.b.c") - checkGetDirectOuterClassName("a.b.c\$x\$y", "a.b.c\$x") - } - @Test fun testVisibility() { fun test(access: Int, expected: Visibility) { diff --git a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/utils/ClassFilterTest.kt b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/utils/ClassFilterTest.kt index f6515142ccdb..d4e75d43a54a 100644 --- a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/utils/ClassFilterTest.kt +++ b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/utils/ClassFilterTest.kt @@ -69,6 +69,20 @@ class ClassFilterTest { assertThat(f.matches("d/e/f")).isEqualTo(false) assertThat(f.matches("d/e/f/g")).isEqualTo(true) assertThat(f.matches("x")).isEqualTo(true) + + assertThat(f.matches("ab/x")).isEqualTo(true) + } + + @Test + fun testNestedClass() { + val f = ClassFilter.buildFromString("a.b.c\nm.n.o\$p\n", false, "X") + assertThat(f.matches("a/b/c")).isEqualTo(true) + assertThat(f.matches("a/b/c\$d")).isEqualTo(true) + assertThat(f.matches("a/b/c\$d\$e")).isEqualTo(true) + assertThat(f.matches("m/n/o")).isEqualTo(false) + assertThat(f.matches("m/n/o\$p")).isEqualTo(true) + assertThat(f.matches("m/n/o\$p\$r")).isEqualTo(true) + assertThat(f.matches("m/n/o\$p\$r\$")).isEqualTo(true) } @Test @@ -84,4 +98,18 @@ class ClassFilterTest { assertThat(e.message).contains("line 1") } } + + @Test + fun testSuffix() { + val f = ClassFilter.buildFromString(""" + *.Abc # allow + !* # Disallow by default + """.trimIndent(), true, "X") + assertThat(f.matches("a/b/c")).isEqualTo(false) + assertThat(f.matches("a/Abc")).isEqualTo(true) + assertThat(f.matches("a/b/c/Abc")).isEqualTo(true) + assertThat(f.matches("a/b/c/Abc\$Nested")).isEqualTo(true) + + assertThat(f.matches("a/XyzAbc")).isEqualTo(false) + } }
\ No newline at end of file diff --git a/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/utils/TrieTest.kt b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/utils/TrieTest.kt new file mode 100644 index 000000000000..081d03909926 --- /dev/null +++ b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/utils/TrieTest.kt @@ -0,0 +1,47 @@ +/* + * Copyright (C) 2024 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.hoststubgen.utils + +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNull +import org.junit.Test + +class TrieTest { + + private class TestTrie : Trie<String, Char, Int>() { + override fun splitToComponents(key: String): Iterator<Char> { + return key.toCharArray().iterator() + } + } + + @Test + fun testPrefixTree() { + val trie = TestTrie() + trie["ab"] = 1 + trie["abc"] = 2 + trie["ab123"] = 3 + assertNull(trie["a"]) + assertNull(trie["x"]) + assertNull(trie["a1"]) + assertEquals(1, trie["ab"]) + assertEquals(2, trie["abc"]) + assertEquals(2, trie["abcd"]) + assertEquals(1, trie["ab1"]) + assertEquals(1, trie["ab12"]) + assertEquals(3, trie["ab123"]) + assertEquals(1, trie["ab@"]) + } +} diff --git a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/visitors/HelperTest.kt b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/visitors/HelperTest.kt index 75e2536a98fa..75e2536a98fa 100644 --- a/tools/hoststubgen/hoststubgen/test/com/android/hoststubgen/visitors/HelperTest.kt +++ b/ravenwood/tools/hoststubgen/test/com/android/hoststubgen/visitors/HelperTest.kt diff --git a/ravenwood/tools/ravenizer/Android.bp b/ravenwood/tools/ravenizer/Android.bp new file mode 100644 index 000000000000..2892d0778ec6 --- /dev/null +++ b/ravenwood/tools/ravenizer/Android.bp @@ -0,0 +1,25 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +java_binary_host { + name: "ravenizer", + main_class: "com.android.platform.test.ravenwood.ravenizer.RavenizerMain", + srcs: ["src/**/*.kt"], + static_libs: [ + "hoststubgen-lib", + "ow2-asm", + "ow2-asm-analysis", + "ow2-asm-commons", + "ow2-asm-tree", + "ow2-asm-util", + "junit", + "ravenwood-junit-impl-for-ravenizer", + ], + visibility: ["//visibility:public"], +} diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Exceptions.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Exceptions.kt new file mode 100644 index 000000000000..0dcd271562d1 --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Exceptions.kt @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2024 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:Suppress("ktlint:standard:filename") + +package com.android.platform.test.ravenwood.ravenizer + +import com.android.hoststubgen.UserErrorException + +/** + * Use it for internal exception that really shouldn't happen. + */ +class RavenizerInternalException(message: String) : Exception(message) + +/** + * Thrown when an invalid test is detected in the target jar. (e.g. JUni3 tests) + */ +class RavenizerInvalidTestException(message: String) : Exception(message), UserErrorException diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Ravenizer.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Ravenizer.kt new file mode 100644 index 000000000000..e67c730df069 --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Ravenizer.kt @@ -0,0 +1,257 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood.ravenizer + +import com.android.hoststubgen.GeneralUserErrorException +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.zipEntryNameToClassName +import com.android.hoststubgen.executableName +import com.android.hoststubgen.log +import com.android.platform.test.ravenwood.ravenizer.adapter.RunnerRewritingAdapter +import org.objectweb.asm.ClassReader +import org.objectweb.asm.ClassVisitor +import org.objectweb.asm.ClassWriter +import org.objectweb.asm.util.CheckClassAdapter +import java.io.BufferedInputStream +import java.io.BufferedOutputStream +import java.io.FileOutputStream +import java.io.InputStream +import java.io.OutputStream +import java.util.zip.ZipEntry +import java.util.zip.ZipFile +import java.util.zip.ZipOutputStream + +/** + * Various stats on Ravenizer. + */ +data class RavenizerStats( + /** Total end-to-end time. */ + var totalTime: Double = .0, + + /** Time took to build [ClasNodes] */ + var loadStructureTime: Double = .0, + + /** Time took to validate the classes */ + var validationTime: Double = .0, + + /** Total real time spent for converting the jar file */ + var totalProcessTime: Double = .0, + + /** Total real time spent for converting class files (except for I/O time). */ + var totalConversionTime: Double = .0, + + /** Total real time spent for copying class files without modification. */ + var totalCopyTime: Double = .0, + + /** # of entries in the input jar file */ + var totalEntiries: Int = 0, + + /** # of *.class files in the input jar file */ + var totalClasses: Int = 0, + + /** # of *.class files that have been processed. */ + var processedClasses: Int = 0, +) { + override fun toString(): String { + return """ + RavenizerStats{ + totalTime=$totalTime, + loadStructureTime=$loadStructureTime, + validationTime=$validationTime, + totalProcessTime=$totalProcessTime, + totalConversionTime=$totalConversionTime, + totalCopyTime=$totalCopyTime, + totalEntiries=$totalEntiries, + totalClasses=$totalClasses, + processedClasses=$processedClasses, + } + """.trimIndent() + } +} + +/** + * Main class. + */ +class Ravenizer { + fun run(options: RavenizerOptions) { + val stats = RavenizerStats() + + stats.totalTime = log.nTime { + process( + options.inJar.get, + options.outJar.get, + options.enableValidation.get, + options.fatalValidation.get, + options.stripMockito.get, + stats, + ) + } + log.i(stats.toString()) + } + + private fun process( + inJar: String, + outJar: String, + enableValidation: Boolean, + fatalValidation: Boolean, + stripMockito: Boolean, + stats: RavenizerStats, + ) { + var allClasses = ClassNodes.loadClassStructures(inJar) { + time -> stats.loadStructureTime = time + } + if (enableValidation) { + stats.validationTime = log.iTime("Validating classes") { + if (!validateClasses(allClasses)) { + var message = "Invalid test class(es) detected." + + " See error log for details." + if (fatalValidation) { + throw RavenizerInvalidTestException(message) + } else { + log.w("Warning: $message") + } + } + } + } + if (includeUnsupportedMockito(allClasses)) { + log.w("Unsupported Mockito detected in $inJar!") + } + + stats.totalProcessTime = log.vTime("$executableName processing $inJar") { + ZipFile(inJar).use { inZip -> + val inEntries = inZip.entries() + + stats.totalEntiries = inZip.size() + + ZipOutputStream(BufferedOutputStream(FileOutputStream(outJar))).use { outZip -> + while (inEntries.hasMoreElements()) { + val entry = inEntries.nextElement() + + if (entry.name.endsWith(".dex")) { + // Seems like it's an ART jar file. We can't process it. + // It's a fatal error. + throw GeneralUserErrorException( + "$inJar is not a desktop jar file. It contains a *.dex file." + ) + } + + if (stripMockito && entry.name.isMockitoFile()) { + // Skip this entry + continue + } + + val className = zipEntryNameToClassName(entry.name) + + if (className != null) { + stats.totalClasses += 1 + } + + if (className != null && shouldProcessClass(allClasses, className)) { + stats.processedClasses += 1 + processSingleClass(inZip, entry, outZip, allClasses, stats) + } else { + // Too slow, let's use merge_zips to bring back the original classes. + copyZipEntry(inZip, entry, outZip, stats) + } + } + } + } + } + } + + /** + * Copy a single ZIP entry to the output. + */ + private fun copyZipEntry( + inZip: ZipFile, + entry: ZipEntry, + out: ZipOutputStream, + stats: RavenizerStats, + ) { + stats.totalCopyTime += log.nTime { + inZip.getInputStream(entry).use { ins -> + // Copy unknown entries as is to the impl out. (but not to the stub out.) + val outEntry = ZipEntry(entry.name) + outEntry.method = 0 + outEntry.size = entry.size + outEntry.crc = entry.crc + out.putNextEntry(outEntry) + + ins.transferTo(out) + + out.closeEntry() + } + } + } + + private fun processSingleClass( + inZip: ZipFile, + entry: ZipEntry, + outZip: ZipOutputStream, + allClasses: ClassNodes, + stats: RavenizerStats, + ) { + val newEntry = ZipEntry(entry.name) + outZip.putNextEntry(newEntry) + + BufferedInputStream(inZip.getInputStream(entry)).use { bis -> + processSingleClass(entry, bis, outZip, allClasses, stats) + } + outZip.closeEntry() + } + + /** + * Whether a class needs to be processed. This must be kept in sync with [processSingleClass]. + */ + private fun shouldProcessClass(classes: ClassNodes, classInternalName: String): Boolean { + return !classInternalName.shouldByBypassed() + && RunnerRewritingAdapter.shouldProcess(classes, classInternalName) + } + + private fun processSingleClass( + entry: ZipEntry, + input: InputStream, + output: OutputStream, + allClasses: ClassNodes, + stats: RavenizerStats, + ) { + val cr = ClassReader(input) + + lateinit var data: ByteArray + stats.totalConversionTime += log.vTime("Modify ${entry.name}") { + + val classInternalName = zipEntryNameToClassName(entry.name) + ?: throw RavenizerInternalException("Unexpected zip entry name: ${entry.name}") + val flags = ClassWriter.COMPUTE_MAXS + val cw = ClassWriter(flags) + var outVisitor: ClassVisitor = cw + + val enableChecker = false + if (enableChecker) { + outVisitor = CheckClassAdapter(outVisitor) + } + + // This must be kept in sync with shouldProcessClass. + outVisitor = RunnerRewritingAdapter.maybeApply( + classInternalName, allClasses, outVisitor) + + cr.accept(outVisitor, ClassReader.EXPAND_FRAMES) + + data = cw.toByteArray() + } + output.write(data) + } +} diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerMain.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerMain.kt new file mode 100644 index 000000000000..aee453020fb4 --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerMain.kt @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2024 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:JvmName("RavenizerMain") + +package com.android.platform.test.ravenwood.ravenizer + +import com.android.hoststubgen.LogLevel +import com.android.hoststubgen.executableName +import com.android.hoststubgen.log +import com.android.hoststubgen.runMainWithBoilerplate + +/** + * Entry point. + */ +fun main(args: Array<String>) { + executableName = "Ravenizer" + log.setConsoleLogLevel(LogLevel.Info) + + runMainWithBoilerplate { + val options = RavenizerOptions.parseArgs(args) + + log.i("$executableName started") + log.v("Options: $options") + + // Run. + Ravenizer().run(options) + } +} diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerOptions.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerOptions.kt new file mode 100644 index 000000000000..a0e5599c0a7c --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/RavenizerOptions.kt @@ -0,0 +1,121 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood.ravenizer + +import com.android.hoststubgen.ArgIterator +import com.android.hoststubgen.ArgumentsException +import com.android.hoststubgen.SetOnce +import com.android.hoststubgen.ensureFileExists +import com.android.hoststubgen.log +import java.nio.file.Paths +import kotlin.io.path.exists + +/** + * If this file exits, we also read options from it. This is "unsafe" because it could break + * incremental builds, if it sets any flag that affects the output file. + * (however, for now, there's no such options.) + * + * For example, to enable verbose logging, do `echo '-v' > ~/.raveniezr-unsafe` + * + * (but even the content of this file changes, soong won't rerun the command, so you need to + * remove the output first and then do a build again.) + */ +private val RAVENIZER_DOTFILE = System.getenv("HOME") + "/.raveniezr-unsafe" + +class RavenizerOptions( + /** Input jar file*/ + var inJar: SetOnce<String> = SetOnce(""), + + /** Output jar file */ + var outJar: SetOnce<String> = SetOnce(""), + + /** Whether to enable test validation. */ + var enableValidation: SetOnce<Boolean> = SetOnce(true), + + /** Whether the validation failure is fatal or not. */ + var fatalValidation: SetOnce<Boolean> = SetOnce(true), + + /** Whether to remove mockito and dexmaker classes. */ + var stripMockito: SetOnce<Boolean> = SetOnce(false), +) { + companion object { + + fun parseArgs(origArgs: Array<String>): RavenizerOptions { + val args = origArgs.toMutableList() + if (Paths.get(RAVENIZER_DOTFILE).exists()) { + log.i("Reading options from $RAVENIZER_DOTFILE") + args.add(0, "@$RAVENIZER_DOTFILE") + } + + val ret = RavenizerOptions() + val ai = ArgIterator.withAtFiles(args.toTypedArray()) + + while (true) { + val arg = ai.nextArgOptional() + if (arg == null) { + break + } + + fun nextArg(): String = ai.nextArgRequired(arg) + + if (log.maybeHandleCommandLineArg(arg) { nextArg() }) { + continue + } + try { + when (arg) { + // TODO: Write help + "-h", "--help" -> TODO("Help is not implemented yet") + + "--in-jar" -> ret.inJar.set(nextArg()).ensureFileExists() + "--out-jar" -> ret.outJar.set(nextArg()) + + "--enable-validation" -> ret.enableValidation.set(true) + "--disable-validation" -> ret.enableValidation.set(false) + + "--fatal-validation" -> ret.fatalValidation.set(true) + "--no-fatal-validation" -> ret.fatalValidation.set(false) + + "--strip-mockito" -> ret.stripMockito.set(true) + "--no-strip-mockito" -> ret.stripMockito.set(false) + + else -> throw ArgumentsException("Unknown option: $arg") + } + } catch (e: SetOnce.SetMoreThanOnceException) { + throw ArgumentsException("Duplicate or conflicting argument found: $arg") + } + } + + if (!ret.inJar.isSet) { + throw ArgumentsException("Required option missing: --in-jar") + } + if (!ret.outJar.isSet) { + throw ArgumentsException("Required option missing: --out-jar") + } + return ret + } + } + + override fun toString(): String { + return """ + RavenizerOptions{ + inJar=$inJar, + outJar=$outJar, + enableValidation=$enableValidation, + fatalValidation=$fatalValidation, + } + """.trimIndent() + } +} diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Utils.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Utils.kt new file mode 100644 index 000000000000..6092fcc9402d --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Utils.kt @@ -0,0 +1,119 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood.ravenizer + +import android.platform.test.annotations.internal.InnerRunner +import android.platform.test.annotations.NoRavenizer +import android.platform.test.ravenwood.RavenwoodAwareTestRunner +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.findAnyAnnotation +import com.android.hoststubgen.asm.startsWithAny +import com.android.hoststubgen.asm.toHumanReadableClassName +import org.junit.rules.TestRule +import org.junit.runner.RunWith +import org.objectweb.asm.Type + +data class TypeHolder( + val clazz: Class<*>, +) { + val type = Type.getType(clazz) + val desc = type.descriptor + val descAsSet = setOf<String>(desc) + val internlName = type.internalName + val humanReadableName = type.internalName.toHumanReadableClassName() +} + +val testAnotType = TypeHolder(org.junit.Test::class.java) +val ruleAnotType = TypeHolder(org.junit.Rule::class.java) +val classRuleAnotType = TypeHolder(org.junit.ClassRule::class.java) +val runWithAnotType = TypeHolder(RunWith::class.java) +val innerRunnerAnotType = TypeHolder(InnerRunner::class.java) +val noRavenizerAnotType = TypeHolder(NoRavenizer::class.java) + +val testRuleType = TypeHolder(TestRule::class.java) +val ravenwoodTestRunnerType = TypeHolder(RavenwoodAwareTestRunner::class.java) + +/** + * Returns true, if a test looks like it's a test class which needs to be processed. + */ +fun isTestLookingClass(classes: ClassNodes, className: String): Boolean { + // Similar to com.android.tradefed.lite.HostUtils.testLoadClass(), except it's more lenient, + // and accept non-public and/or abstract classes. + // HostUtils also checks "Suppress" or "SuiteClasses" but this one doesn't. + // TODO: SuiteClasses may need to be supported. + + val cn = classes.findClass(className) ?: return false + + if (cn.findAnyAnnotation(runWithAnotType.descAsSet) != null) { + return true + } + cn.methods?.forEach { method -> + if (method.findAnyAnnotation(testAnotType.descAsSet) != null) { + return true + } + } + + // Check the super class. + if (cn.superName == null) { + return false + } + return isTestLookingClass(classes, cn.superName) +} + +fun String.isRavenwoodClass(): Boolean { + return this.startsWithAny( + "com/android/hoststubgen/", + "android/platform/test/ravenwood", + "com/android/ravenwood/", + "com/android/platform/test/ravenwood/", + ) +} + +/** + * Classes that should never be modified. + */ +fun String.shouldByBypassed(): Boolean { + if (this.isRavenwoodClass()) { + return true + } + return this.startsWithAny( + "java/", // just in case... + "javax/", + "junit/", + "org/junit/", + "org/mockito/", + "kotlin/", + "androidx/", + "android/support/", + // TODO -- anything else? + ) +} + +/** + * Files that should be removed when "--strip-mockito" is set. + */ +fun String.isMockitoFile(): Boolean { + return this.startsWithAny( + "org/mockito/", // Mockito + "com/android/dx/", // DexMaker + "mockito-extensions/", // DexMaker overrides + ) +} + +fun includeUnsupportedMockito(classes: ClassNodes): Boolean { + return classes.findClass("com/android/dx/DexMaker") != null + || classes.findClass("org/mockito/Matchers") != null +} diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Validator.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Validator.kt new file mode 100644 index 000000000000..8ec0932d89dd --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/Validator.kt @@ -0,0 +1,148 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood.ravenizer + +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.isAbstract +import com.android.hoststubgen.asm.startsWithAny +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.log +import org.objectweb.asm.tree.ClassNode +import java.util.regex.Pattern + +fun validateClasses(classes: ClassNodes): Boolean { + var allOk = true + classes.forEach { allOk = checkClass(it, classes) && allOk } + + return allOk +} + +/** + * Validate a class. + * + * - A test class shouldn't extend + * + */ +fun checkClass(cn: ClassNode, classes: ClassNodes): Boolean { + if (cn.name.shouldByBypassed()) { + // Class doesn't need to be checked. + return true + } + var allOk = true + + log.i("Checking ${cn.name.toHumanReadableClassName()}") + + // See if there's any class that extends a legacy base class. + // But ignore the base classes in android.test. + if (!cn.isAbstract() && !cn.name.startsWith("android/test/") + && !isAllowListedLegacyTest(cn) + ) { + allOk = checkSuperClassForJunit3(cn, cn, classes) && allOk + } + return allOk +} + +fun checkSuperClassForJunit3( + targetClass: ClassNode, + currentClass: ClassNode, + classes: ClassNodes, +): Boolean { + if (currentClass.superName == null || currentClass.superName == "java/lang/Object") { + return true // No parent class + } + // Make sure the class doesn't extend a junit3 TestCase class. + if (currentClass.superName.isLegacyTestBaseClass()) { + log.e("Error: Class ${targetClass.name.toHumanReadableClassName()} extends" + + " a legacy test class ${currentClass.superName.toHumanReadableClassName()}" + + ", which is not supported on Ravenwood. Please migrate to Junit4 syntax.") + return false + } + classes.findClass(currentClass.superName)?.let { + return checkSuperClassForJunit3(targetClass, it, classes) + } + // Super class not found. + // log.w("Class ${currentClass.superName} not found.") + return true +} + +/** + * Check if a class internal name is a known legacy test base class. + */ +fun String.isLegacyTestBaseClass(): Boolean { + return this.startsWithAny( + "junit/framework/TestCase", + + // In case the test doesn't statically include JUnit, we need the following. + "android/test/AndroidTestCase", + "android/test/InstrumentationTestCase", + "android/test/InstrumentationTestSuite", + ) +} + +private val allowListedLegacyTests = setOf( +// List of existing test classes that use the JUnit3 syntax. We exempt them for now, but +// will reject any more of them. +// +// Note, we want internal class names, but for convenience, we use '.'s and '%'s here +// and replace them later. (a '$' would be parsed as a string template.) + *""" +android.util.proto.cts.DebuggingTest +android.util.proto.cts.EncodedBufferTest +android.util.proto.cts.ProtoOutputStreamBoolTest +android.util.proto.cts.ProtoOutputStreamBytesTest +android.util.proto.cts.ProtoOutputStreamDoubleTest +android.util.proto.cts.ProtoOutputStreamEnumTest +android.util.proto.cts.ProtoOutputStreamFixed32Test +android.util.proto.cts.ProtoOutputStreamFixed64Test +android.util.proto.cts.ProtoOutputStreamFloatTest +android.util.proto.cts.ProtoOutputStreamInt32Test +android.util.proto.cts.ProtoOutputStreamInt64Test +android.util.proto.cts.ProtoOutputStreamObjectTest +android.util.proto.cts.ProtoOutputStreamSFixed32Test +android.util.proto.cts.ProtoOutputStreamSFixed64Test +android.util.proto.cts.ProtoOutputStreamSInt32Test +android.util.proto.cts.ProtoOutputStreamSInt64Test +android.util.proto.cts.ProtoOutputStreamStringTest +android.util.proto.cts.ProtoOutputStreamSwitchedWriteTest +android.util.proto.cts.ProtoOutputStreamTagTest +android.util.proto.cts.ProtoOutputStreamUInt32Test +android.util.proto.cts.ProtoOutputStreamUInt64Test + +android.os.cts.BadParcelableExceptionTest +android.os.cts.DeadObjectExceptionTest +android.os.cts.ParcelFormatExceptionTest +android.os.cts.PatternMatcherTest +android.os.cts.RemoteExceptionTest + +android.os.storage.StorageManagerBaseTest +android.os.storage.StorageManagerIntegrationTest +android.util.LogTest%PerformanceTest + +com.android.server.power.stats.BatteryStatsCounterTest +com.android.server.power.stats.BatteryStatsDualTimerTest +com.android.server.power.stats.BatteryStatsDurationTimerTest +com.android.server.power.stats.BatteryStatsSamplingTimerTest +com.android.server.power.stats.BatteryStatsStopwatchTimerTest +com.android.server.power.stats.BatteryStatsTimeBaseTest +com.android.server.power.stats.BatteryStatsTimerTest + + """.trim().replace('%', '$').replace('.', '/') + .split(Pattern.compile("""\s+""")).toTypedArray() +) + +private fun isAllowListedLegacyTest(targetClass: ClassNode): Boolean { + return allowListedLegacyTests.contains(targetClass.name) +}
\ No newline at end of file diff --git a/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/adapter/RunnerRewritingAdapter.kt b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/adapter/RunnerRewritingAdapter.kt new file mode 100644 index 000000000000..81fe3da8d954 --- /dev/null +++ b/ravenwood/tools/ravenizer/src/com/android/platform/test/ravenwood/ravenizer/adapter/RunnerRewritingAdapter.kt @@ -0,0 +1,470 @@ +/* + * Copyright (C) 2024 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.platform.test.ravenwood.ravenizer.adapter + +import com.android.hoststubgen.ClassParseException +import com.android.hoststubgen.asm.CLASS_INITIALIZER_DESC +import com.android.hoststubgen.asm.CLASS_INITIALIZER_NAME +import com.android.hoststubgen.asm.CTOR_NAME +import com.android.hoststubgen.asm.ClassNodes +import com.android.hoststubgen.asm.findAnnotationValueAsType +import com.android.hoststubgen.asm.findAnyAnnotation +import com.android.hoststubgen.asm.toHumanReadableClassName +import com.android.hoststubgen.log +import com.android.hoststubgen.visitors.OPCODE_VERSION +import com.android.platform.test.ravenwood.ravenizer.RavenizerInternalException +import com.android.platform.test.ravenwood.ravenizer.classRuleAnotType +import com.android.platform.test.ravenwood.ravenizer.innerRunnerAnotType +import com.android.platform.test.ravenwood.ravenizer.isTestLookingClass +import com.android.platform.test.ravenwood.ravenizer.noRavenizerAnotType +import com.android.platform.test.ravenwood.ravenizer.ravenwoodTestRunnerType +import com.android.platform.test.ravenwood.ravenizer.ruleAnotType +import com.android.platform.test.ravenwood.ravenizer.runWithAnotType +import com.android.platform.test.ravenwood.ravenizer.testRuleType +import org.objectweb.asm.AnnotationVisitor +import org.objectweb.asm.ClassVisitor +import org.objectweb.asm.FieldVisitor +import org.objectweb.asm.MethodVisitor +import org.objectweb.asm.Opcodes +import org.objectweb.asm.Opcodes.ACC_FINAL +import org.objectweb.asm.Opcodes.ACC_PUBLIC +import org.objectweb.asm.Opcodes.ACC_STATIC +import org.objectweb.asm.commons.AdviceAdapter +import org.objectweb.asm.tree.ClassNode + +/** + * Class visitor to update the RunWith and inject some necessary rules. + * + * - Change the @RunWith(RavenwoodAwareTestRunner.class). + * - If the original class has a @RunWith(...), then change it to an @InnerRunner(...). + * - Add RavenwoodAwareTestRunner's member rules as junit rules. + * - Update the order of the existing JUnit rules to make sure they don't use the MIN or MAX. + */ +class RunnerRewritingAdapter private constructor( + protected val classes: ClassNodes, + nextVisitor: ClassVisitor, +) : ClassVisitor(OPCODE_VERSION, nextVisitor) { + /** Arbitrary cut-off point when deciding whether to change the order or an existing rule.*/ + val RULE_ORDER_TWEAK_CUTOFF = 1973020500 + + /** Current class's internal name */ + lateinit var classInternalName: String + + /** [ClassNode] for the current class */ + lateinit var classNode: ClassNode + + /** True if this visitor is generating code. */ + var isGeneratingCode = false + + /** Run a [block] with [isGeneratingCode] set to true. */ + private inline fun <T> generateCode(block: () -> T): T { + isGeneratingCode = true + try { + return block() + } finally { + isGeneratingCode = false + } + } + + override fun visit( + version: Int, + access: Int, + name: String?, + signature: String?, + superName: String?, + interfaces: Array<out String>?, + ) { + classInternalName = name!! + classNode = classes.getClass(name) + if (!isTestLookingClass(classes, name)) { + throw RavenizerInternalException("This adapter shouldn't be used for non-test class") + } + super.visit(version, access, name, signature, superName, interfaces) + + generateCode { + injectRunWithAnnotation() + if (!classes.hasClassInitializer(classInternalName)) { + injectStaticInitializer() + } + injectRules() + } + } + + /** + * Remove the original @RunWith annotation. + */ + override fun visitAnnotation(descriptor: String?, visible: Boolean): AnnotationVisitor? { + if (!isGeneratingCode && runWithAnotType.desc == descriptor) { + return null + } + return super.visitAnnotation(descriptor, visible) + } + + override fun visitField( + access: Int, + name: String, + descriptor: String, + signature: String?, + value: Any? + ): FieldVisitor { + val fallback = super.visitField(access, name, descriptor, signature, value) + if (isGeneratingCode) { + return fallback + } + return FieldRuleOrderRewriter(name, fallback) + } + + /** Inject an empty <clinit>. The body will be injected by [visitMethod]. */ + private fun injectStaticInitializer() { + visitMethod( + Opcodes.ACC_PRIVATE or Opcodes.ACC_STATIC, + CLASS_INITIALIZER_NAME, + CLASS_INITIALIZER_DESC, + null, + null + )!!.let { mv -> + mv.visitCode() + mv.visitInsn(Opcodes.RETURN) + mv.visitMaxs(0, 0) + mv.visitEnd() + } + } + + /** + * Inject `@RunWith(RavenwoodAwareTestRunner.class)`. If the class already has + * a `@RunWith`, then change it to add a `@InnerRunner`. + */ + private fun injectRunWithAnnotation() { + // Extract the original RunWith annotation and its value. + val runWith = classNode.findAnyAnnotation(runWithAnotType.descAsSet) + val runWithClass = runWith?.let { an -> + findAnnotationValueAsType(an, "value") + } + + if (runWith != null) { + if (runWithClass == ravenwoodTestRunnerType.type) { + // It already uses RavenwoodTestRunner. We'll just keep it, but we need to + // inject it again because the original one is removed by visitAnnotation(). + log.d("Class ${classInternalName.toHumanReadableClassName()}" + + " already uses RavenwoodTestRunner.") + visitAnnotation(runWithAnotType.desc, true)!!.let { av -> + av.visit("value", ravenwoodTestRunnerType) + av.visitEnd() + } + return + } + if (runWithClass == null) { + throw ClassParseException("@RunWith annotation doesn't have a property \"value\"" + + " in class ${classInternalName.toHumanReadableClassName()}") + } + + // Inject an @InnerRunner. + visitAnnotation(innerRunnerAnotType.desc, true)!!.let { av -> + av.visit("value", runWithClass) + av.visitEnd() + } + } + + // Inject a @RunWith(RavenwoodAwareTestRunner.class). + visitAnnotation(runWithAnotType.desc, true)!!.let { av -> + av.visit("value", ravenwoodTestRunnerType.type) + av.visitEnd() + } + log.v("Update the @RunWith: ${classInternalName.toHumanReadableClassName()}") + } + + /* + Generate the fields and the ctor, which should looks like this: + + public static final org.junit.rules.TestRule sRavenwoodImplicitClassMinRule; + descriptor: Lorg/junit/rules/TestRule; + flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL + RuntimeVisibleAnnotations: + 0: #49(#50=I#51) + org.junit.ClassRule( + order=-2147483648 + ) + + public static final org.junit.rules.TestRule sRavenwoodImplicitClassMaxRule; + descriptor: Lorg/junit/rules/TestRule; + flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL + RuntimeVisibleAnnotations: + 0: #49(#50=I#52) + org.junit.ClassRule( + order=2147483647 + ) + + public final org.junit.rules.TestRule sRavenwoodImplicitInstanceMinRule; + descriptor: Lorg/junit/rules/TestRule; + flags: (0x0011) ACC_PUBLIC, ACC_FINAL + RuntimeVisibleAnnotations: + 0: #53(#50=I#51) + org.junit.Rule( + order=-2147483648 + ) + + public final org.junit.rules.TestRule sRavenwoodImplicitInstanceMaxRule; + descriptor: Lorg/junit/rules/TestRule; + flags: (0x0011) ACC_PUBLIC, ACC_FINAL + RuntimeVisibleAnnotations: + 0: #53(#50=I#52) + org.junit.Rule( + order=2147483647 + ) + */ + + val sRavenwood_ClassRuleMin = "sRavenwood_ClassRuleMin" + val sRavenwood_ClassRuleMax = "sRavenwood_ClassRuleMax" + val mRavenwood_InstRuleMin = "mRavenwood_InstRuleMin" + val mRavenwood_InstRuleMax = "mRavenwood_InstRuleMax" + + private fun injectRules() { + injectRule(sRavenwood_ClassRuleMin, true, Integer.MIN_VALUE) + injectRule(sRavenwood_ClassRuleMax, true, Integer.MAX_VALUE) + injectRule(mRavenwood_InstRuleMin, false, Integer.MIN_VALUE) + injectRule(mRavenwood_InstRuleMax, false, Integer.MAX_VALUE) + } + + private fun injectRule(fieldName: String, isStatic: Boolean, order: Int) { + visitField( + ACC_PUBLIC or ACC_FINAL or (if (isStatic) ACC_STATIC else 0), + fieldName, + testRuleType.desc, + null, + null, + ).let { fv -> + val anot = if (isStatic) { classRuleAnotType } else { ruleAnotType } + fv.visitAnnotation(anot.desc, true).let { + it.visit("order", order) + it.visitEnd() + } + fv.visitEnd() + } + } + + override fun visitMethod( + access: Int, + name: String, + descriptor: String, + signature: String?, + exceptions: Array<String>?, + ): MethodVisitor { + val next = super.visitMethod(access, name, descriptor, signature, exceptions) + if (name == CLASS_INITIALIZER_NAME && descriptor == CLASS_INITIALIZER_DESC) { + return ClassInitializerVisitor( + access, name, descriptor, signature, exceptions, next) + } + if (name == CTOR_NAME) { + return ConstructorVisitor( + access, name, descriptor, signature, exceptions, next) + } + return next + } + + /* + + static {}; + descriptor: ()V + flags: (0x0008) ACC_STATIC + Code: + stack=1, locals=0, args_size=0 + 0: getstatic #36 // Field android/platform/test/ravenwood/RavenwoodAwareTestRunner.RavenwoodImplicitClassMinRule:Lorg/junit/rules/TestRule; + 3: putstatic #39 // Field sRavenwoodImplicitClassMinRule:Lorg/junit/rules/TestRule; + 6: getstatic #42 // Field android/platform/test/ravenwood/RavenwoodAwareTestRunner.RavenwoodImplicitClassMaxRule:Lorg/junit/rules/TestRule; + 9: putstatic #45 // Field sRavenwoodImplicitClassMaxRule:Lorg/junit/rules/TestRule; + 12: return + LineNumberTable: + line 33: 0 + line 36: 6 + */ + private inner class ClassInitializerVisitor( + access: Int, + val name: String, + val descriptor: String, + signature: String?, + exceptions: Array<String>?, + next: MethodVisitor?, + ) : MethodVisitor(OPCODE_VERSION, next) { + override fun visitCode() { + visitFieldInsn(Opcodes.GETSTATIC, + ravenwoodTestRunnerType.internlName, + IMPLICIT_CLASS_OUTER_RULE_NAME, + testRuleType.desc + ) + visitFieldInsn(Opcodes.PUTSTATIC, + classInternalName, + sRavenwood_ClassRuleMin, + testRuleType.desc + ) + + visitFieldInsn(Opcodes.GETSTATIC, + ravenwoodTestRunnerType.internlName, + IMPLICIT_CLASS_INNER_RULE_NAME, + testRuleType.desc + ) + visitFieldInsn(Opcodes.PUTSTATIC, + classInternalName, + sRavenwood_ClassRuleMax, + testRuleType.desc + ) + + super.visitCode() + } + } + + /* + public com.android.ravenwoodtest.bivalenttest.runnertest.RavenwoodRunnerTest(); + descriptor: ()V + flags: (0x0001) ACC_PUBLIC + Code: + stack=2, locals=1, args_size=1 + 0: aload_0 + 1: invokespecial #1 // Method java/lang/Object."<init>":()V + 4: aload_0 + 5: getstatic #7 // Field android/platform/test/ravenwood/RavenwoodAwareTestRunner.RavenwoodImplicitInstanceMinRule:Lorg/junit/rules/TestRule; + 8: putfield #13 // Field sRavenwoodImplicitInstanceMinRule:Lorg/junit/rules/TestRule; + 11: aload_0 + 12: getstatic #18 // Field android/platform/test/ravenwood/RavenwoodAwareTestRunner.RavenwoodImplicitInstanceMaxRule:Lorg/junit/rules/TestRule; + 15: putfield #21 // Field sRavenwoodImplicitInstanceMaxRule:Lorg/junit/rules/TestRule; + 18: return + LineNumberTable: + line 31: 0 + line 38: 4 + line 41: 11 + LocalVariableTable: + Start Length Slot Name Signature + 0 19 0 this Lcom/android/ravenwoodtest/bivalenttest/runnertest/RavenwoodRunnerTest; + */ + private inner class ConstructorVisitor( + access: Int, + name: String, + descriptor: String, + signature: String?, + exceptions: Array<String>?, + next: MethodVisitor?, + ) : AdviceAdapter(OPCODE_VERSION, next, ACC_ENUM, name, descriptor) { + override fun onMethodEnter() { + visitVarInsn(ALOAD, 0) + visitFieldInsn(Opcodes.GETSTATIC, + ravenwoodTestRunnerType.internlName, + IMPLICIT_INST_OUTER_RULE_NAME, + testRuleType.desc + ) + visitFieldInsn(Opcodes.PUTFIELD, + classInternalName, + mRavenwood_InstRuleMin, + testRuleType.desc + ) + + visitVarInsn(ALOAD, 0) + visitFieldInsn(Opcodes.GETSTATIC, + ravenwoodTestRunnerType.internlName, + IMPLICIT_INST_INNER_RULE_NAME, + testRuleType.desc + ) + visitFieldInsn(Opcodes.PUTFIELD, + classInternalName, + mRavenwood_InstRuleMax, + testRuleType.desc + ) + } + } + + /** + * Rewrite "order" of the existing junit rules to make sure no rules use a MAX or MIN order. + * + * Currently, we do it a hacky way -- use an arbitrary cut-off point, and if the order + * is larger than that, decrement by 1, and if it's smaller than the negative cut-off point, + * increment it by 1. + * + * (or the arbitrary number is already used.... then we're unlucky, let's change the cut-off + * point.) + */ + private inner class FieldRuleOrderRewriter( + val fieldName: String, + next: FieldVisitor, + ) : FieldVisitor(OPCODE_VERSION, next) { + override fun visitAnnotation(descriptor: String?, visible: Boolean): AnnotationVisitor { + val fallback = super.visitAnnotation(descriptor, visible) + if (descriptor != ruleAnotType.desc && descriptor != classRuleAnotType.desc) { + return fallback + } + return RuleOrderRewriter(fallback) + } + + private inner class RuleOrderRewriter( + next: AnnotationVisitor, + ) : AnnotationVisitor(OPCODE_VERSION, next) { + override fun visit(name: String?, origValue: Any?) { + if (name != "order") { + return super.visit(name, origValue) + } + var order = origValue as Int + if (order == RULE_ORDER_TWEAK_CUTOFF || order == -RULE_ORDER_TWEAK_CUTOFF) { + // Oops. If this happens, we'll need to change RULE_ORDER_TWEAK_CUTOFF. + // Or, we could scan all the rules in the target jar and find an unused number. + // Because rules propagate to subclasses, we'll at least check all the + // super classes of the current class. + throw RavenizerInternalException( + "OOPS: Field $classInternalName.$fieldName uses $order." + + " We can't update it.") + } + if (order > RULE_ORDER_TWEAK_CUTOFF) { + order -= 1 + } + if (order < -RULE_ORDER_TWEAK_CUTOFF) { + order += 1 + } + super.visit(name, order) + } + } + } + + companion object { + const val IMPLICIT_CLASS_OUTER_RULE_NAME = "sImplicitClassOuterRule" + const val IMPLICIT_CLASS_INNER_RULE_NAME = "sImplicitClassInnerRule" + const val IMPLICIT_INST_OUTER_RULE_NAME = "sImplicitInstOuterRule" + const val IMPLICIT_INST_INNER_RULE_NAME = "sImplicitInstInnerRule" + + fun shouldProcess(classes: ClassNodes, className: String): Boolean { + if (!isTestLookingClass(classes, className)) { + return false + } + // Don't process a class if it has a @NoRavenizer annotation. + classes.findClass(className)?.let { cn -> + if (cn.findAnyAnnotation(noRavenizerAnotType.descAsSet) != null) { + log.i("Class ${className.toHumanReadableClassName()} has" + + " @${noRavenizerAnotType.humanReadableName}. Skipping." + ) + return false + } + } + return true + } + + fun maybeApply( + className: String, + classes: ClassNodes, + nextVisitor: ClassVisitor, + ): ClassVisitor { + if (!shouldProcess(classes, className)) { + return nextVisitor + } else { + return RunnerRewritingAdapter(classes, nextVisitor) + } + } + } +} diff --git a/sax/tests/saxtests/Android.bp b/sax/tests/saxtests/Android.bp index 446ee9394179..29c742f47868 100644 --- a/sax/tests/saxtests/Android.bp +++ b/sax/tests/saxtests/Android.bp @@ -12,8 +12,8 @@ android_test { // Include all test java files. srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "junit", diff --git a/services/Android.bp b/services/Android.bp index cd974c5f562d..d99ed3dbdba8 100644 --- a/services/Android.bp +++ b/services/Android.bp @@ -108,6 +108,8 @@ filegroup { filegroup { name: "services-non-updatable-sources", srcs: [ + ":incremental_aidl", + ":services.core-aidl-sources", ":services.core-sources", ":services.core-sources-am-wm", "core/java/com/android/server/am/package.html", @@ -184,6 +186,11 @@ art_profile_java_defaults { }, } +vintf_fragment { + name: "manifest_services.xml", + src: "manifest_services.xml", +} + // merge all required services into one jar // ============================================================ java_library { @@ -235,6 +242,7 @@ java_library { "services.wifi", "service-blobstore", "service-jobscheduler", + "service-connectivity-b-pre-jarjar", // Move it to mainline module "android.hidl.base-V1.0-java", ], @@ -248,7 +256,7 @@ java_library { "service-sdksandbox.stubs.system_server", ], - vintf_fragments: [ + vintf_fragment_modules: [ "manifest_services.xml", ], @@ -359,4 +367,8 @@ non_updatable_exportable_droidstubs { }, }, api_surface: "system-server", + sdk_version: "module_current", + libs: [ + "framework-annotations-lib", + ], } diff --git a/services/accessibility/Android.bp b/services/accessibility/Android.bp index 7a99b605c4fb..8ea8c9a40a0c 100644 --- a/services/accessibility/Android.bp +++ b/services/accessibility/Android.bp @@ -19,11 +19,6 @@ java_library_static { defaults: [ "platform_service_defaults", ], - lint: { - error_checks: ["MissingPermissionAnnotation"], - baseline_filename: "lint-baseline.xml", - - }, srcs: [ ":services.accessibility-sources", "//frameworks/base/packages/SettingsLib/RestrictedLockUtils:SettingsLibRestrictedLockUtilsSrc", diff --git a/services/accessibility/OWNERS b/services/accessibility/OWNERS index 0e35a409c82c..4e1175034b5b 100644 --- a/services/accessibility/OWNERS +++ b/services/accessibility/OWNERS @@ -2,10 +2,11 @@ # Android Accessibility Framework owners danielnorman@google.com -aarmaly@google.com chunkulin@google.com fuego@google.com sallyyuen@google.com +yingleiw@google.com +caseyburkhardt@google.com # Android Accessibility members who have OWNERS but should not be sent # day-to-day changes for code review: diff --git a/services/accessibility/TEST_MAPPING b/services/accessibility/TEST_MAPPING index 299d33fbbe6d..0bc25e2dd3c4 100644 --- a/services/accessibility/TEST_MAPPING +++ b/services/accessibility/TEST_MAPPING @@ -1,56 +1,19 @@ { "presubmit": [ { - "name": "CtsAccessibilityServiceTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAccessibilityServiceTestCases" }, { - "name": "CtsAccessibilityTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAccessibilityTestCases" }, { - "name": "CtsUiAutomationTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsUiAutomationTestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.accessibility" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksServicesTests_accessibility" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.accessibilityservice" - }, - { - "include-filter": "android.view.accessibility" - }, - { - "include-filter": "com.android.internal.accessibility" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksCoreTests_accessibility" } ], "postsubmit": [ @@ -67,26 +30,10 @@ "name": "CtsUiAutomationTestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.accessibility" - } - ] + "name": "FrameworksServicesTests_accessibility" }, { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.accessibilityservice" - }, - { - "include-filter": "android.view.accessibility" - }, - { - "include-filter": "com.android.internal.accessibility" - } - ] + "name": "FrameworksCoreTests_accessibility" } ] } diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java index f9196f3e0e0e..754965533d0f 100644 --- a/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java +++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java @@ -62,7 +62,6 @@ import java.util.StringJoiner; * * NOTE: This class has to be created and poked only from the main thread. */ -@SuppressWarnings("MissingPermissionAnnotation") class AccessibilityInputFilter extends InputFilter implements EventStreamTransformation { private static final String TAG = AccessibilityInputFilter.class.getSimpleName(); diff --git a/services/accessibility/java/com/android/server/accessibility/FingerprintGestureDispatcher.java b/services/accessibility/java/com/android/server/accessibility/FingerprintGestureDispatcher.java index e10e87c51d59..c9ec16edc54e 100644 --- a/services/accessibility/java/com/android/server/accessibility/FingerprintGestureDispatcher.java +++ b/services/accessibility/java/com/android/server/accessibility/FingerprintGestureDispatcher.java @@ -33,7 +33,6 @@ import java.util.List; /** * Encapsulate fingerprint gesture logic */ -@SuppressWarnings("MissingPermissionAnnotation") public class FingerprintGestureDispatcher extends IFingerprintClientActiveCallback.Stub implements Handler.Callback{ private static final int MSG_REGISTER = 1; diff --git a/services/appfunctions/OWNERS b/services/appfunctions/OWNERS new file mode 100644 index 000000000000..b3108944a3ce --- /dev/null +++ b/services/appfunctions/OWNERS @@ -0,0 +1 @@ +include /core/java/android/app/appfunctions/OWNERS diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java index 55677078f939..0c99fcfd221a 100644 --- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java +++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java @@ -209,6 +209,10 @@ class AppWidgetServiceImpl extends IAppWidgetService.Stub implements WidgetBacku @Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); + if (action == null) { + return; + } + final int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, UserHandle.USER_NULL); if (DEBUG) { diff --git a/services/art-profile b/services/art-profile index 755f8a52413f..6fa4c88cb1f6 100644 --- a/services/art-profile +++ b/services/art-profile @@ -14,187 +14,172 @@ # limitations under the License. # HSPLandroid/content/pm/PackageManagerInternal;->filterAppAccess(Ljava/lang/String;II)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLandroid/hardware/health/DiskStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/DiskStats;+]Landroid/hardware/health/DiskStats;Landroid/hardware/health/DiskStats; +HSPLandroid/hardware/health/DiskStats$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/DiskStats; HSPLandroid/hardware/health/DiskStats;-><init>()V -HSPLandroid/hardware/health/DiskStats;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/hardware/health/HealthInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/HealthInfo;+]Landroid/hardware/health/HealthInfo;Landroid/hardware/health/HealthInfo; +HSPLandroid/hardware/health/DiskStats;->readFromParcel(Landroid/os/Parcel;)V +HSPLandroid/hardware/health/HealthInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/HealthInfo; HSPLandroid/hardware/health/HealthInfo;-><init>()V -HSPLandroid/hardware/health/HealthInfo;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/hardware/health/HealthInfo;->readFromParcel(Landroid/os/Parcel;)V HPLandroid/hardware/health/IHealth$Stub$Proxy;->getCapacity()I+]Landroid/hardware/health/IHealth$Stub$Proxy;Landroid/hardware/health/IHealth$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy; HPLandroid/hardware/health/IHealth$Stub$Proxy;->getChargeCounterUah()I+]Landroid/hardware/health/IHealth$Stub$Proxy;Landroid/hardware/health/IHealth$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy; -HSPLandroid/hardware/health/IHealthInfoCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/hardware/health/IHealthInfoCallback;Lcom/android/server/health/HealthRegCallbackAidl$HalInfoCallback;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/hardware/health/StorageInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/StorageInfo;+]Landroid/hardware/health/StorageInfo;Landroid/hardware/health/StorageInfo; +HSPLandroid/hardware/health/IHealthInfoCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/hardware/health/IHealthInfoCallback;Lcom/android/server/health/HealthRegCallbackAidl$HalInfoCallback; +HSPLandroid/hardware/health/StorageInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/health/StorageInfo; HSPLandroid/hardware/health/StorageInfo;-><init>()V -HSPLandroid/hardware/health/StorageInfo;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HSPLandroid/hardware/health/StorageInfo;->readFromParcel(Landroid/os/Parcel;)V HSPLandroid/hardware/power/stats/EnergyConsumerResult;->readFromParcel(Landroid/os/Parcel;)V -HPLandroid/hardware/power/stats/EnergyMeasurement;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; +HPLandroid/hardware/power/stats/EnergyMeasurement;->readFromParcel(Landroid/os/Parcel;)V HPLandroid/hardware/power/stats/IPowerStats$Stub$Proxy;->readEnergyMeter([I)[Landroid/hardware/power/stats/EnergyMeasurement;+]Landroid/hardware/power/stats/IPowerStats$Stub$Proxy;Landroid/hardware/power/stats/IPowerStats$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy; -HPLandroid/hardware/power/stats/StateResidency$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/power/stats/StateResidency;+]Landroid/hardware/power/stats/StateResidency;Landroid/hardware/power/stats/StateResidency; +HPLandroid/hardware/power/stats/StateResidency$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/power/stats/StateResidency; HPLandroid/hardware/power/stats/StateResidency$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/hardware/power/stats/StateResidency$1;Landroid/hardware/power/stats/StateResidency$1; -HPLandroid/hardware/power/stats/StateResidency;->readFromParcel(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/net/INetdUnsolicitedEventListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/net/INetdUnsolicitedEventListener;Lcom/android/server/net/NetworkManagementService$NetdUnsolicitedEventListener;]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLandroid/net/metrics/INetdEventListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/net/metrics/INetdEventListener;Lcom/android/server/connectivity/NetdEventListenerService;]Landroid/os/Parcel;Landroid/os/Parcel; +HPLandroid/hardware/power/stats/StateResidency;->readFromParcel(Landroid/os/Parcel;)V +HSPLandroid/net/INetdUnsolicitedEventListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/net/INetdUnsolicitedEventListener;Lcom/android/server/net/NetworkManagementService$NetdUnsolicitedEventListener; +HSPLandroid/net/metrics/INetdEventListener$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z+]Landroid/net/metrics/INetdEventListener;Lcom/android/server/connectivity/NetdEventListenerService; HSPLcom/android/internal/util/jobs/ArrayUtils;->contains([II)Z HPLcom/android/internal/util/jobs/FastXmlSerializer;->append(C)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->append(Ljava/lang/String;)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->append(Ljava/lang/String;II)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer;]Ljava/lang/String;Ljava/lang/String; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->appendIndent(I)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->escapeAndAppendString(Ljava/lang/String;)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; -HPLcom/android/internal/util/jobs/FastXmlSerializer;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; +HPLcom/android/internal/util/jobs/FastXmlSerializer;->append(Ljava/lang/String;)V +HPLcom/android/internal/util/jobs/FastXmlSerializer;->append(Ljava/lang/String;II)V+]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer; +HPLcom/android/internal/util/jobs/FastXmlSerializer;->appendIndent(I)V +HPLcom/android/internal/util/jobs/FastXmlSerializer;->attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; +HPLcom/android/internal/util/jobs/FastXmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; +HPLcom/android/internal/util/jobs/FastXmlSerializer;->escapeAndAppendString(Ljava/lang/String;)V +HPLcom/android/internal/util/jobs/FastXmlSerializer;->startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer; HSPLcom/android/internal/util/jobs/RingBufferIndices;->add()I HSPLcom/android/internal/util/jobs/StatLogger;->getTime()J HSPLcom/android/internal/util/jobs/StatLogger;->logDurationStat(IJ)J+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger; -HSPLcom/android/server/AppSchedulingModuleThread;->getHandler()Landroid/os/Handler; HSPLcom/android/server/AppStateTrackerImpl$3;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/net/Uri;Landroid/net/Uri$OpaqueUri;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray; HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler; HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->handleUidCached(IZ)V+]Lcom/android/server/AppStateTrackerImpl$Listener;Lcom/android/server/AppStateTrackerImpl$1;,Lcom/android/server/alarm/AlarmManagerService$7;,Lcom/android/server/job/controllers/BackgroundJobsController$2; -HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->removeUid(IZ)V+]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler; HPLcom/android/server/AppStateTrackerImpl;->areAlarmsRestrictedByBatterySaver(ILjava/lang/String;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/AppStateTrackerImpl;->areJobsRestricted(ILjava/lang/String;Z)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/AppStateTrackerImpl;->cloneListeners()[Lcom/android/server/AppStateTrackerImpl$Listener; -HSPLcom/android/server/AppStateTrackerImpl;->findForcedAppStandbyUidPackageIndexLocked(ILjava/lang/String;)I+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/AppStateTrackerImpl;->findForcedAppStandbyUidPackageIndexLocked(ILjava/lang/String;)I HSPLcom/android/server/AppStateTrackerImpl;->isAppBackgroundRestricted(ILjava/lang/String;)Z+]Ljava/util/Set;Ljava/util/Collections$EmptySet;,Ljava/util/Collections$UnmodifiableSet; HSPLcom/android/server/AppStateTrackerImpl;->isRunAnyInBackgroundAppOpsAllowed(ILjava/lang/String;)Z+]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl; -HSPLcom/android/server/AppStateTrackerImpl;->isRunAnyRestrictedLocked(ILjava/lang/String;)Z+]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl; +HSPLcom/android/server/AppStateTrackerImpl;->isRunAnyRestrictedLocked(ILjava/lang/String;)Z HSPLcom/android/server/AppStateTrackerImpl;->isUidActive(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HPLcom/android/server/AppStateTrackerImpl;->isUidPowerSaveUserExempt(I)Z HSPLcom/android/server/AppStateTrackerImpl;->setPowerSaveExemptionListAppIds([I[I[I)V+]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler; -HSPLcom/android/server/BatteryService$BatteryPropertiesRegistrar;->getProperty(ILandroid/os/BatteryProperty;)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/health/HealthServiceWrapper;Lcom/android/server/health/HealthServiceWrapperAidl; +HPLcom/android/server/BatteryService$BatteryPropertiesRegistrar;->getProperty(ILandroid/os/BatteryProperty;)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/health/HealthServiceWrapper;Lcom/android/server/health/HealthServiceWrapperAidl; HSPLcom/android/server/BatteryService$Led;->updateLightsLocked()V+]Lcom/android/server/lights/LogicalLight;Lcom/android/server/lights/LightsService$LightImpl; -HSPLcom/android/server/BatteryService;->processValuesLocked(Z)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/internal/logging/MetricsLogger;Lcom/android/internal/logging/MetricsLogger;]Lcom/android/server/BatteryService$Led;Lcom/android/server/BatteryService$Led;]Lcom/android/server/BatteryService;Lcom/android/server/BatteryService; -HSPLcom/android/server/BatteryService;->sendBatteryChangedIntentLocked()V -HSPLcom/android/server/BatteryService;->update(Landroid/hardware/health/HealthInfo;)V+]Lcom/android/server/BatteryService;Lcom/android/server/BatteryService;]Ljava/lang/Object;Ljava/lang/Object; +HSPLcom/android/server/BatteryService;->broadcastBatteryChangedIntent(Landroid/content/Context;Landroid/content/Intent;Landroid/os/Bundle;Z)V+]Landroid/content/Context;Landroid/app/ContextImpl; +HSPLcom/android/server/BatteryService;->isPoweredLocked(I)Z +HSPLcom/android/server/BatteryService;->lambda$new$0(Landroid/os/Message;)Z +HSPLcom/android/server/BatteryService;->processValuesLocked(Z)V+]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/internal/logging/MetricsLogger;Lcom/android/internal/logging/MetricsLogger; +HSPLcom/android/server/BatteryService;->sendBatteryChangedIntentLocked(Z)V +HSPLcom/android/server/BatteryService;->sendBatteryLevelChangedIntentLocked()V +HSPLcom/android/server/BatteryService;->traceBatteryChangedBroadcastEvent(Landroid/content/Intent;Z)V+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/BatteryService;->update(Landroid/hardware/health/HealthInfo;)V HSPLcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;->getCallingUid()I -HSPLcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;->resolveWorkSourceUid(I)I+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;Lcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider; +HSPLcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;->resolveWorkSourceUid(I)I+]Lcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;Lcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider; HSPLcom/android/server/CachedDeviceStateService$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/internal/os/CachedDeviceState;Lcom/android/internal/os/CachedDeviceState; HSPLcom/android/server/DeviceIdleController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/net/Uri;Landroid/net/Uri$OpaqueUri;]Lcom/android/server/DeviceIdleController;Lcom/android/server/DeviceIdleController; -HSPLcom/android/server/DeviceIdleController$MyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/INetworkPolicyManager;Lcom/android/server/net/NetworkPolicyManagerService;]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/DeviceIdleController;Lcom/android/server/DeviceIdleController;]Lcom/android/server/DeviceIdleInternal$StationaryListener;Lcom/android/server/location/provider/StationaryThrottlingLocationProvider;]Lcom/android/server/PowerAllowlistInternal$TempAllowlistChangeListener;Lcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;]Lcom/android/server/SystemService;Lcom/android/server/DeviceIdleController;]Lcom/android/server/net/NetworkPolicyManagerInternal;Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl; -HSPLcom/android/server/DeviceIdleController;->addPowerSaveTempWhitelistAppDirectInternal(IIJIZILjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/Handler;Lcom/android/server/DeviceIdleController$MyHandler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/DeviceIdleController;Lcom/android/server/DeviceIdleController;]Lcom/android/server/net/NetworkPolicyManagerInternal;Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl; +HSPLcom/android/server/DeviceIdleController$MyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/INetworkPolicyManager;Lcom/android/server/net/NetworkPolicyManagerService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/DeviceIdleController;Lcom/android/server/DeviceIdleController;]Lcom/android/server/DeviceIdleInternal$StationaryListener;Lcom/android/server/location/provider/StationaryThrottlingLocationProvider;]Lcom/android/server/PowerAllowlistInternal$TempAllowlistChangeListener;Lcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;]Lcom/android/server/net/NetworkPolicyManagerInternal;Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl; +HSPLcom/android/server/DeviceIdleController;->addPowerSaveTempWhitelistAppDirectInternal(IIJIZILjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/net/NetworkPolicyManagerInternal;Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl; HPLcom/android/server/DeviceIdleController;->checkTempAppWhitelistTimeout(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/DeviceIdleController;->reportTempWhitelistChangedLocked(IZ)V+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/DeviceIdleController;->updateTempWhitelistAppIdsLocked(IZJIILjava/lang/String;I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/DeviceIdleController;Lcom/android/server/DeviceIdleController; -HSPLcom/android/server/DropBoxManagerService$EntryFile;->compareTo(Lcom/android/server/DropBoxManagerService$EntryFile;)I+]Ljava/lang/Object;Lcom/android/server/DropBoxManagerService$EntryFile; +HSPLcom/android/server/DeviceIdleController;->updateTempWhitelistAppIdsLocked(IZJIILjava/lang/String;I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/DropBoxManagerService$EntryFile;->compareTo(Lcom/android/server/DropBoxManagerService$EntryFile;)I HSPLcom/android/server/DropBoxManagerService$EntryFile;->getExtension()Ljava/lang/String; HSPLcom/android/server/DropBoxManagerService$EntryFile;->getFilename()Ljava/lang/String; HSPLcom/android/server/DropBoxManagerService;->addEntry(Ljava/lang/String;Lcom/android/server/DropBoxManagerInternal$EntrySource;I)V -HPLcom/android/server/DropBoxManagerService;->checkPermission(ILjava/lang/String;Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/DropBoxManagerService;->enrollEntry(Lcom/android/server/DropBoxManagerService$EntryFile;)V+]Ljava/util/TreeSet;Ljava/util/TreeSet; +HSPLcom/android/server/DropBoxManagerService;->enrollEntry(Lcom/android/server/DropBoxManagerService$EntryFile;)V HPLcom/android/server/DropBoxManagerService;->getNextEntry(Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;)Landroid/os/DropBoxManager$Entry;+]Ljava/util/Iterator;Ljava/util/TreeMap$NavigableSubMap$SubMapKeyIterator;]Ljava/util/SortedSet;Ljava/util/TreeSet;]Ljava/util/TreeSet;Ljava/util/TreeSet; HSPLcom/android/server/DropBoxManagerService;->isTagEnabled(Ljava/lang/String;)Z+]Ljava/util/List;Ljava/util/ImmutableCollections$ListN; HSPLcom/android/server/DropBoxManagerService;->trimToFit()J+]Landroid/os/StatFs;Landroid/os/StatFs;]Ljava/io/File;Ljava/io/File;]Ljava/util/TreeSet;Ljava/util/TreeSet; HSPLcom/android/server/FgThread;->ensureThreadLocked()V HSPLcom/android/server/FgThread;->getHandler()Landroid/os/Handler; HPLcom/android/server/HardwarePropertiesManagerService;->enforceHardwarePropertiesRetrievalAllowed(Ljava/lang/String;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/IntentResolver$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I+]Landroid/content/IntentFilter;Lcom/android/server/am/BroadcastFilter; +HSPLcom/android/server/IntentResolver$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I HSPLcom/android/server/IntentResolver;-><init>()V -HSPLcom/android/server/IntentResolver;->addFilter(Landroid/util/ArrayMap;Ljava/lang/String;Ljava/lang/Object;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->addFilter(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Ljava/lang/Object;)V+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Landroid/content/pm/AuxiliaryResolveInfo$AuxiliaryFilter;,Lcom/android/server/am/BroadcastFilter;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->buildResolveList(Lcom/android/server/pm/Computer;Landroid/content/Intent;Landroid/util/FastImmutableArraySet;ZZLjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/util/List;IJ)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Lcom/android/server/am/BroadcastFilter;]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/IntentResolver;->addFilter(Landroid/util/ArrayMap;Ljava/lang/String;Ljava/lang/Object;)V+]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->addFilter(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Ljava/lang/Object;)V+]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->buildResolveList(Lcom/android/server/pm/Computer;Landroid/content/Intent;Landroid/util/FastImmutableArraySet;ZZLjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/util/List;IJ)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/IntentResolver;->copyFrom(Lcom/android/server/IntentResolver;)V+]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->copyInto(Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->copyInto(Landroid/util/ArraySet;Landroid/util/ArraySet;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->findFilters(Landroid/content/IntentFilter;)Ljava/util/ArrayList;+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/IntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver;,Lcom/android/server/pm/PreferredIntentResolver;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; +HSPLcom/android/server/IntentResolver;->copyInto(Landroid/util/ArrayMap;Landroid/util/ArrayMap;)V+]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->copyInto(Landroid/util/ArraySet;Landroid/util/ArraySet;)V+]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->filterResults(Ljava/util/List;)V +HSPLcom/android/server/IntentResolver;->findFilters(Landroid/content/IntentFilter;)Ljava/util/ArrayList;+]Lcom/android/server/IntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; HSPLcom/android/server/IntentResolver;->getFastIntentCategories(Landroid/content/Intent;)Landroid/util/FastImmutableArraySet;+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/Set;Landroid/util/ArraySet; -HPLcom/android/server/IntentResolver;->intentMatchesFilter(Landroid/content/IntentFilter;Landroid/content/Intent;Ljava/lang/String;)Z+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/IntentFilter;Landroid/content/IntentFilter; -HSPLcom/android/server/IntentResolver;->queryIntent(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Landroid/content/Intent;Ljava/lang/String;ZI)Ljava/util/List;+]Lcom/android/server/IntentResolver;Lcom/android/server/am/ActivityManagerService$3;,Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;,Lcom/android/server/pm/CrossProfileIntentResolver;,Lcom/android/server/pm/PreferredIntentResolver; -HSPLcom/android/server/IntentResolver;->queryIntent(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Landroid/content/Intent;Ljava/lang/String;ZIJ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/server/IntentResolver;->queryIntentFromList(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;ZLjava/util/ArrayList;IJ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/IntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ProviderIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/IntentResolver;->register_intent_filter(Ljava/lang/Object;Ljava/util/Iterator;Landroid/util/ArrayMap;Ljava/lang/String;)I+]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr; -HSPLcom/android/server/IntentResolver;->register_mime_types(Ljava/lang/Object;Ljava/lang/String;)I+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Landroid/content/pm/AuxiliaryResolveInfo$AuxiliaryFilter;,Lcom/android/server/am/BroadcastFilter;]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HPLcom/android/server/IntentResolver;->intentMatchesFilter(Landroid/content/IntentFilter;Landroid/content/Intent;Ljava/lang/String;)Z+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/IntentResolver;->queryIntent(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Landroid/content/Intent;Ljava/lang/String;ZI)Ljava/util/List; +HSPLcom/android/server/IntentResolver;->queryIntent(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Landroid/content/Intent;Ljava/lang/String;ZIJ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->queryIntentFromList(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;ZLjava/util/ArrayList;IJ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/IntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ProviderIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/IntentResolver;->register_intent_filter(Ljava/lang/Object;Ljava/util/Iterator;Landroid/util/ArrayMap;Ljava/lang/String;)I+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr; +HSPLcom/android/server/IntentResolver;->register_mime_types(Ljava/lang/Object;Ljava/lang/String;)I+]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HSPLcom/android/server/IntentResolver;->removeFilter(Ljava/lang/Object;)V+]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->removeFilterInternal(Ljava/lang/Object;)V+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Lcom/android/server/am/BroadcastFilter;]Lcom/android/server/IntentResolver;megamorphic_types -HSPLcom/android/server/IntentResolver;->remove_all_objects(Landroid/util/ArrayMap;Ljava/lang/String;Ljava/lang/Object;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->removeFilterInternal(Ljava/lang/Object;)V+]Lcom/android/server/IntentResolver;megamorphic_types +HSPLcom/android/server/IntentResolver;->remove_all_objects(Landroid/util/ArrayMap;Ljava/lang/String;Ljava/lang/Object;)V+]Lcom/android/server/IntentResolver;megamorphic_types HSPLcom/android/server/IntentResolver;->snapshot(Ljava/lang/Object;)Ljava/lang/Object; HSPLcom/android/server/IntentResolver;->sortResults(Ljava/util/List;)V -HSPLcom/android/server/IntentResolver;->unregister_intent_filter(Ljava/lang/Object;Ljava/util/Iterator;Landroid/util/ArrayMap;Ljava/lang/String;)I+]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr; -HSPLcom/android/server/IntentResolver;->unregister_mime_types(Ljava/lang/Object;Ljava/lang/String;)I+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Lcom/android/server/am/BroadcastFilter;]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HSPLcom/android/server/IntentResolver;->unregister_intent_filter(Ljava/lang/Object;Ljava/util/Iterator;Landroid/util/ArrayMap;Ljava/lang/String;)I+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr; +HSPLcom/android/server/IntentResolver;->unregister_mime_types(Ljava/lang/Object;Ljava/lang/String;)I+]Lcom/android/server/IntentResolver;megamorphic_types]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HSPLcom/android/server/LocalManagerRegistry;->getManager(Ljava/lang/Class;)Ljava/lang/Object;+]Ljava/util/Map;Landroid/util/ArrayMap; HSPLcom/android/server/LockGuard;->guard(I)V -HSPLcom/android/server/NetworkScoreService;->enforceSystemOrHasScoreNetworks()V+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/NetworkScoreService;->getActiveScorerPackage()Ljava/lang/String;+]Lcom/android/server/NetworkScorerAppManager;Lcom/android/server/NetworkScorerAppManager; -HSPLcom/android/server/NetworkScorerAppManager;->getActiveScorer()Landroid/net/NetworkScorerAppData; -HSPLcom/android/server/NetworkScorerAppManager;->getAllValidScorers()Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/NetworkScorerAppManager;Lcom/android/server/NetworkScorerAppManager;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/NetworkScorerAppManager;->getNetworkRecommendationsEnabledSetting()I -HSPLcom/android/server/NetworkScorerAppManager;->getNetworkRecommendationsPackage()Ljava/lang/String; -HSPLcom/android/server/NetworkScorerAppManager;->getScorer(Ljava/lang/String;)Landroid/net/NetworkScorerAppData;+]Lcom/android/server/NetworkScorerAppManager;Lcom/android/server/NetworkScorerAppManager;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/PackageWatchdog$MonitoredPackage;->updateHealthCheckStateLocked()I+]Lcom/android/server/PackageWatchdog$MonitoredPackage;Lcom/android/server/PackageWatchdog$MonitoredPackage;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/NetworkScorerAppManager;->getAllValidScorers()Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/StorageManagerService$StorageManagerInternalImpl;->getExternalStorageMountMode(ILjava/lang/String;)I HSPLcom/android/server/StorageManagerService$StorageManagerInternalImpl;->isExternalStorageService(I)Z HSPLcom/android/server/StorageManagerService$WatchedUnlockedUsers;->contains(I)Z -HSPLcom/android/server/StorageManagerService;->getMountModeInternal(ILjava/lang/String;)I+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/internal/app/IAppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/StorageManagerService$StorageManagerInternalImpl;Lcom/android/server/StorageManagerService$StorageManagerInternalImpl; -HSPLcom/android/server/StorageManagerService;->getVolumeList(ILjava/lang/String;I)[Landroid/os/storage/StorageVolume;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/storage/StorageVolume;Landroid/os/storage/StorageVolume;]Landroid/os/storage/VolumeInfo;Landroid/os/storage/VolumeInfo;]Landroid/os/storage/VolumeRecord;Landroid/os/storage/VolumeRecord;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/StorageManagerService$StorageManagerInternalImpl;Lcom/android/server/StorageManagerService$StorageManagerInternalImpl;]Lcom/android/server/StorageManagerService;Lcom/android/server/StorageManagerService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/StorageManagerService;->getVolumes(I)[Landroid/os/storage/VolumeInfo;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/StorageManagerService;->getMountModeInternal(ILjava/lang/String;)I+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/internal/app/IAppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/StorageManagerService;->getVolumeList(ILjava/lang/String;I)[Landroid/os/storage/StorageVolume;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/storage/VolumeInfo;Landroid/os/storage/VolumeInfo;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/StorageManagerService;Lcom/android/server/StorageManagerService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HSPLcom/android/server/StorageManagerService;->getVolumes(I)[Landroid/os/storage/VolumeInfo; HSPLcom/android/server/StorageManagerService;->isCeStorageUnlocked(I)Z+]Lcom/android/server/StorageManagerService$WatchedUnlockedUsers;Lcom/android/server/StorageManagerService$WatchedUnlockedUsers; -HSPLcom/android/server/StorageManagerService;->isUidOwnerOfPackageOrSystem(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HPLcom/android/server/StorageManagerService;->monitor()V+]Landroid/os/IVold;Landroid/os/IVold$Stub$Proxy; -HSPLcom/android/server/StorageManagerService;->updateLegacyStorageApps(Ljava/lang/String;IZ)V+]Ljava/util/Set;Landroid/util/ArraySet; HSPLcom/android/server/SystemConfig;->getInstance()Lcom/android/server/SystemConfig; HSPLcom/android/server/SystemConfig;->readPermissionAllowlist(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/ArrayMap;Ljava/lang/String;)V HSPLcom/android/server/SystemConfig;->readPermissionsFromXml(Lorg/xmlpull/v1/XmlPullParser;Ljava/io/File;I)V -HSPLcom/android/server/SystemServiceManager;->onUser(Lcom/android/server/utils/TimingsTraceAndSlog;Ljava/lang/String;Lcom/android/server/SystemService$TargetUser;Lcom/android/server/SystemService$TargetUser;Lcom/android/server/SystemService$UserCompletedEventType;)V+]Lcom/android/server/SystemService;megamorphic_types]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/concurrent/ExecutorService;Ljava/util/concurrent/ThreadPoolExecutor; +HSPLcom/android/server/SystemService;->getContext()Landroid/content/Context; HSPLcom/android/server/SystemServiceManager;->startBootPhase(Lcom/android/server/utils/TimingsTraceAndSlog;I)V -HPLcom/android/server/TelephonyRegistry$Record;->matchTelephonyCallbackEvent(I)Z+]Ljava/util/Set;Ljava/util/HashSet; -HSPLcom/android/server/TelephonyRegistry;->add(Landroid/os/IBinder;IIZ)Lcom/android/server/TelephonyRegistry$Record;+]Landroid/os/IBinder;megamorphic_types]Lcom/android/server/TelephonyRegistry$ConfigurationProvider;Lcom/android/server/TelephonyRegistry$ConfigurationProvider;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/TelephonyRegistry;->listen(ZZLjava/lang/String;Ljava/lang/String;Lcom/android/internal/telephony/IPhoneStateListener;Ljava/util/Set;ZI)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/telephony/IPhoneStateListener;Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;,Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;,Lcom/android/internal/telephony/IPhoneStateListener$Stub$Proxy;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Ljava/util/HashSet; +HSPLcom/android/server/SystemServiceManager;->startService(Ljava/lang/Class;)Lcom/android/server/SystemService; +HSPLcom/android/server/TelephonyRegistry;->add(Landroid/os/IBinder;IIZ)Lcom/android/server/TelephonyRegistry$Record;+]Landroid/os/IBinder;Landroid/os/BinderProxy;,Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;,Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;,Landroid/telephony/TelephonyRegistryManager$3;,Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper;]Lcom/android/server/TelephonyRegistry$ConfigurationProvider;Lcom/android/server/TelephonyRegistry$ConfigurationProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/TelephonyRegistry;->listen(ZZLjava/lang/String;Ljava/lang/String;Lcom/android/internal/telephony/IPhoneStateListener;Ljava/util/Set;ZI)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/telephony/IPhoneStateListener;Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;,Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;,Lcom/android/internal/telephony/IPhoneStateListener$Stub$Proxy;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Ljava/util/HashSet; HSPLcom/android/server/ThreadPriorityBooster;->boost()V+]Ljava/lang/ThreadLocal;Lcom/android/server/ThreadPriorityBooster$1; HSPLcom/android/server/ThreadPriorityBooster;->reset()V+]Ljava/lang/ThreadLocal;Lcom/android/server/ThreadPriorityBooster$1; HSPLcom/android/server/UiModeManagerService$4;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent; -HSPLcom/android/server/UiModeManagerService;->updateComputedNightModeLocked(Z)V+]Lcom/android/server/UiModeManagerService$NightMode;Lcom/android/server/UiModeManagerService$1;]Lcom/android/server/twilight/TwilightManager;Lcom/android/server/twilight/TwilightService$1; -HSPLcom/android/server/UiModeManagerService;->updateConfigurationLocked()V+]Lcom/android/server/UiModeManagerService$NightMode;Lcom/android/server/UiModeManagerService$1;]Lcom/android/server/twilight/TwilightManager;Lcom/android/server/twilight/TwilightService$1; +HSPLcom/android/server/UiModeManagerService;->updateComputedNightModeLocked(Z)V+]Lcom/android/server/twilight/TwilightManager;Lcom/android/server/twilight/TwilightService$1; +HSPLcom/android/server/UiModeManagerService;->updateConfigurationLocked()V+]Lcom/android/server/twilight/TwilightManager;Lcom/android/server/twilight/TwilightService$1; HSPLcom/android/server/UiModeManagerService;->updateLocked(II)V+]Landroid/content/Context;Landroid/app/ContextImpl; HPLcom/android/server/Watchdog$HandlerChecker;->getCompletionStateLocked()I+]Ljava/time/Clock;Landroid/os/SystemClock$1; HSPLcom/android/server/Watchdog$HandlerChecker;->isHandlerPolling()Z HSPLcom/android/server/Watchdog$HandlerChecker;->run()V+]Lcom/android/server/Watchdog$Monitor;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/Watchdog$HandlerChecker;->scheduleCheckLocked(J)V+]Landroid/os/Handler;Landroid/os/Handler;,Lcom/android/server/am/ActivityManagerService$MainHandler;,Lcom/android/server/pm/PackageHandler;]Lcom/android/server/Watchdog$HandlerChecker;Lcom/android/server/Watchdog$HandlerChecker;]Ljava/time/Clock;Landroid/os/SystemClock$1;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/Watchdog;->evaluateCheckerCompletionLocked()I+]Lcom/android/server/Watchdog$HandlerChecker;Lcom/android/server/Watchdog$HandlerChecker;]Lcom/android/server/Watchdog$HandlerCheckerAndTimeout;Lcom/android/server/Watchdog$HandlerCheckerAndTimeout;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/Watchdog$HandlerChecker;->scheduleCheckLocked(J)V+]Lcom/android/server/Watchdog$HandlerChecker;Lcom/android/server/Watchdog$HandlerChecker;]Ljava/time/Clock;Landroid/os/SystemClock$1;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/Watchdog$HandlerCheckerAndTimeout;->checker()Lcom/android/server/Watchdog$HandlerChecker; +HSPLcom/android/server/Watchdog$HandlerCheckerAndTimeout;->customTimeoutMillis()Ljava/util/Optional; +HPLcom/android/server/Watchdog;->evaluateCheckerCompletionLocked()I+]Lcom/android/server/Watchdog$HandlerChecker;Lcom/android/server/Watchdog$HandlerChecker;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/Watchdog;->run()V -HSPLcom/android/server/accessibility/AccessibilityManagerService;->getEnabledAccessibilityServiceList(II)Ljava/util/List;+]Lcom/android/server/accessibility/AccessibilitySecurityPolicy;Lcom/android/server/accessibility/AccessibilitySecurityPolicy;]Lcom/android/server/accessibility/AccessibilityServiceConnection;Lcom/android/server/accessibility/AccessibilityServiceConnection;]Lcom/android/server/accessibility/AccessibilityTraceManager;Lcom/android/server/accessibility/AccessibilityTraceManager;]Lcom/android/server/accessibility/ProxyManager;Lcom/android/server/accessibility/ProxyManager;]Lcom/android/server/accessibility/UiAutomationManager;Lcom/android/server/accessibility/UiAutomationManager;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/accessibility/AccessibilityManagerService;->getUserStateLocked(I)Lcom/android/server/accessibility/AccessibilityUserState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/accessibility/AccessibilitySecurityPolicy;->resolveCallingUserIdEnforcingPermissionsLocked(I)I+]Lcom/android/server/accessibility/AccessibilitySecurityPolicy$AccessibilityUserManager;Lcom/android/server/accessibility/AccessibilityManagerService;]Lcom/android/server/accessibility/AccessibilitySecurityPolicy;Lcom/android/server/accessibility/AccessibilitySecurityPolicy; -HSPLcom/android/server/accessibility/ProxyManager;->getFirstDeviceIdForUidLocked(I)I+]Lcom/android/server/accessibility/ProxyManager;Lcom/android/server/accessibility/ProxyManager;]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/ArraySet; -HPLcom/android/server/accounts/AccountManagerService$8;->onResult(Landroid/os/Bundle;)V -HPLcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;->sendResult()V+]Landroid/accounts/IAccountManagerResponse;Landroid/accounts/IAccountManagerResponse$Stub$Proxy;]Lcom/android/server/accounts/AccountManagerService$Session;Lcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/accounts/AccountManagerService$Session;-><init>(Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;ZZLjava/lang/String;ZZ)V+]Landroid/accounts/IAccountManagerResponse;Landroid/accounts/AccountManager$BaseFutureTask$Response;,Landroid/accounts/IAccountManagerResponse$Stub$Proxy;]Landroid/os/IBinder;Landroid/accounts/AccountManager$BaseFutureTask$Response;,Landroid/os/BinderProxy;]Ljava/lang/Object;megamorphic_types]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap; HPLcom/android/server/accounts/AccountManagerService$Session;->bindToAuthenticator(Ljava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache; HPLcom/android/server/accounts/AccountManagerService$Session;->close()V+]Landroid/accounts/IAccountManagerResponse;Landroid/accounts/AccountManager$BaseFutureTask$Response;,Landroid/accounts/IAccountManagerResponse$Stub$Proxy;]Landroid/os/IBinder;Landroid/accounts/AccountManager$BaseFutureTask$Response;,Landroid/os/BinderProxy;]Lcom/android/server/accounts/AccountManagerService$Session;megamorphic_types]Ljava/lang/Object;megamorphic_types]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap; -HPLcom/android/server/accounts/AccountManagerService$Session;->onResult(Landroid/os/Bundle;)V+]Landroid/accounts/IAccountManagerResponse;Landroid/accounts/IAccountManagerResponse$Stub$Proxy;]Lcom/android/server/accounts/AccountManagerService$Session;Lcom/android/server/accounts/AccountManagerService$13;,Lcom/android/server/accounts/AccountManagerService$8;,Lcom/android/server/accounts/AccountManagerService$9;,Lcom/android/server/accounts/AccountManagerService$RemoveAccountSession; -HPLcom/android/server/accounts/AccountManagerService$Session;->unbind()V+]Landroid/content/Context;Landroid/app/ContextImpl; -HPLcom/android/server/accounts/AccountManagerService;->accountExistsCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;)Z+]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/HashMap;Ljava/util/LinkedHashMap; +HPLcom/android/server/accounts/AccountManagerService$Session;->getResponseAndClose()Landroid/accounts/IAccountManagerResponse; +HPLcom/android/server/accounts/AccountManagerService;->accountExistsCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;)Z+]Ljava/util/HashMap;Ljava/util/LinkedHashMap; HPLcom/android/server/accounts/AccountManagerService;->calculatePackageSignatureDigest(Ljava/lang/String;I)[B+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate; -HSPLcom/android/server/accounts/AccountManagerService;->cancelNotification(Lcom/android/server/accounts/AccountManagerService$NotificationId;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)V+]Landroid/app/INotificationManager;Lcom/android/server/notification/NotificationManagerService$12;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/accounts/AccountManagerService$Injector;Lcom/android/server/accounts/AccountManagerService$Injector; -HSPLcom/android/server/accounts/AccountManagerService;->checkPackageSignature(Ljava/lang/String;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; -HSPLcom/android/server/accounts/AccountManagerService;->filterAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;[Landroid/accounts/Account;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/Map;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet; -HSPLcom/android/server/accounts/AccountManagerService;->filterSharedAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/util/Map;ILjava/lang/String;)Ljava/util/Map;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; -HSPLcom/android/server/accounts/AccountManagerService;->getAccountVisibilityFromCache(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)I+]Ljava/util/Map;Ljava/util/HashMap; -HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUser(Ljava/lang/String;ILjava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; -HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUserForPackage(Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/accounts/AccountManagerService;->cancelNotification(Lcom/android/server/accounts/AccountManagerService$NotificationId;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)V+]Landroid/app/INotificationManager;Lcom/android/server/notification/NotificationManagerService$12;]Lcom/android/server/accounts/AccountManagerService$Injector;Lcom/android/server/accounts/AccountManagerService$Injector; +HPLcom/android/server/accounts/AccountManagerService;->checkPackageSignature(Ljava/lang/String;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; +HSPLcom/android/server/accounts/AccountManagerService;->filterAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;[Landroid/accounts/Account;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Ljava/util/Map;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet; +HSPLcom/android/server/accounts/AccountManagerService;->filterSharedAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/util/Map;ILjava/lang/String;)Ljava/util/Map;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager; +HPLcom/android/server/accounts/AccountManagerService;->getAccountVisibilityFromCache(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)I+]Ljava/util/Map;Ljava/util/HashMap; +HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUser(Ljava/lang/String;ILjava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager; +HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUserForPackage(Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/accounts/AccountManagerService;->getAccountsByFeatures(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/accounts/AccountManagerService;->getAccountsByTypeForPackage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; -HSPLcom/android/server/accounts/AccountManagerService;->getAccountsFromCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/Collection;Ljava/util/LinkedHashMap$LinkedValues;]Ljava/util/HashMap;Ljava/util/LinkedHashMap;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedValueIterator; -HSPLcom/android/server/accounts/AccountManagerService;->getAccountsInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;ILjava/lang/String;Ljava/util/List;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/accounts/AccountManagerService;->getAccountsByTypeForPackage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; +HSPLcom/android/server/accounts/AccountManagerService;->getAccountsFromCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Ljava/util/Collection;Ljava/util/LinkedHashMap$LinkedValues;]Ljava/util/HashMap;Ljava/util/LinkedHashMap;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedValueIterator; +HSPLcom/android/server/accounts/AccountManagerService;->getAccountsInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;ILjava/lang/String;Ljava/util/List;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/accounts/AccountManagerService;->getAuthToken(Landroid/accounts/IAccountManagerResponse;Landroid/accounts/Account;Ljava/lang/String;ZZLandroid/os/Bundle;)V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache; -HSPLcom/android/server/accounts/AccountManagerService;->getPackagesAndVisibilityForAccountLocked(Landroid/accounts/Account;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/util/Map;+]Ljava/util/Map;Ljava/util/HashMap; -HSPLcom/android/server/accounts/AccountManagerService;->getTypesForCaller(IIZ)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/accounts/AccountManagerService;->getUserAccounts(I)Lcom/android/server/accounts/AccountManagerService$UserAccounts;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; -HSPLcom/android/server/accounts/AccountManagerService;->getUserAccountsNotChecked(I)Lcom/android/server/accounts/AccountManagerService$UserAccounts;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/accounts/AccountManagerService$Injector;Lcom/android/server/accounts/AccountManagerService$Injector;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/accounts/AccountManagerService;->getPackagesAndVisibilityForAccountLocked(Landroid/accounts/Account;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/util/Map;+]Ljava/util/Map;Ljava/util/HashMap; +HSPLcom/android/server/accounts/AccountManagerService;->getTypesForCaller(IIZ)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; +HSPLcom/android/server/accounts/AccountManagerService;->getUserAccounts(I)Lcom/android/server/accounts/AccountManagerService$UserAccounts; +HSPLcom/android/server/accounts/AccountManagerService;->getUserAccountsNotChecked(I)Lcom/android/server/accounts/AccountManagerService$UserAccounts;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/accounts/AccountManagerService$Injector;Lcom/android/server/accounts/AccountManagerService$Injector;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb; HPLcom/android/server/accounts/AccountManagerService;->getUserData(Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; HSPLcom/android/server/accounts/AccountManagerService;->getUserManager()Landroid/os/UserManager; -HSPLcom/android/server/accounts/AccountManagerService;->hasAccountAccess(Landroid/accounts/Account;Ljava/lang/String;I)Z+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/accounts/AccountManagerService;->hasAccountAccess(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/UserHandle;)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; HPLcom/android/server/accounts/AccountManagerService;->invalidateAuthToken(Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Lcom/android/server/accounts/TokenCache;Lcom/android/server/accounts/TokenCache;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/accounts/AccountManagerService;->invalidateAuthTokenLocked(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;+]Landroid/database/Cursor;Landroid/database/sqlite/SQLiteCursor;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb; -HSPLcom/android/server/accounts/AccountManagerService;->isPermittedForPackage(Ljava/lang/String;I[Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; -HSPLcom/android/server/accounts/AccountManagerService;->isPreOApplication(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/accounts/AccountManagerService;->isPrivileged(I)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/accounts/AccountManagerService;->isProfileOwner(I)Z+]Landroid/app/admin/DevicePolicyManagerInternal;Lcom/android/server/devicepolicy/DevicePolicyManagerService$LocalService; +HPLcom/android/server/accounts/AccountManagerService;->isPermittedForPackage(Ljava/lang/String;I[Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; +HPLcom/android/server/accounts/AccountManagerService;->isPrivileged(I)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HPLcom/android/server/accounts/AccountManagerService;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HPLcom/android/server/accounts/AccountManagerService;->peekAuthToken(Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; -HSPLcom/android/server/accounts/AccountManagerService;->permissionIsGranted(Landroid/accounts/Account;Ljava/lang/String;II)Z+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; +HPLcom/android/server/accounts/AccountManagerService;->permissionIsGranted(Landroid/accounts/Account;Ljava/lang/String;II)Z HPLcom/android/server/accounts/AccountManagerService;->readAuthTokenInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Ljava/util/Map;Ljava/util/HashMap; HPLcom/android/server/accounts/AccountManagerService;->readUserDataInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Ljava/util/Map;Ljava/util/HashMap; -HSPLcom/android/server/accounts/AccountManagerService;->resolveAccountVisibility(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/lang/Integer;+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/accounts/AccountManagerService;->resolveAccountVisibility(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/lang/Integer;+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HPLcom/android/server/accounts/AccountManagerService;->saveAuthTokenToDatabase(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb; HPLcom/android/server/accounts/AccountManagerService;->setAuthToken(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; HPLcom/android/server/accounts/AccountManagerService;->setUserData(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService; @@ -206,29 +191,34 @@ HPLcom/android/server/accounts/AccountsDb;->insertAuthToken(JLjava/lang/String;L HSPLcom/android/server/accounts/AccountsDb;->isCeDatabaseAttached()Z HPLcom/android/server/accounts/AccountsDb;->setTransactionSuccessful()V+]Landroid/database/sqlite/SQLiteOpenHelper;Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper; HPLcom/android/server/accounts/AccountsDb;->updateExtra(JLjava/lang/String;)Z+]Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper;Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper; +HPLcom/android/server/accounts/TokenCache$Key;->equals(Ljava/lang/Object;)Z HPLcom/android/server/accounts/TokenCache$Key;->hashCode()I+]Landroid/accounts/Account;Landroid/accounts/Account; -HSPLcom/android/server/alarm/Alarm$Snapshot;-><init>(Lcom/android/server/alarm/Alarm;)V -HSPLcom/android/server/alarm/Alarm;-><init>(IJJJJLandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;Landroid/os/WorkSource;ILandroid/app/AlarmManager$AlarmClockInfo;ILjava/lang/String;Landroid/os/Bundle;I)V+]Landroid/app/PendingIntent;Landroid/app/PendingIntent; -HSPLcom/android/server/alarm/Alarm;->makeTag(Landroid/app/PendingIntent;Ljava/lang/String;I)Ljava/lang/String;+]Landroid/app/PendingIntent;Landroid/app/PendingIntent;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/alarm/Alarm;->matches(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)Z+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/app/PendingIntent;Landroid/app/PendingIntent;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Ljava/lang/Object;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2; -HSPLcom/android/server/alarm/Alarm;->setPolicyElapsed(IJ)Z+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm; +HPLcom/android/server/alarm/Alarm$Snapshot;-><init>(Lcom/android/server/alarm/Alarm;)V +HSPLcom/android/server/alarm/Alarm;-><init>(IJJJJLandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;Landroid/os/WorkSource;ILandroid/app/AlarmManager$AlarmClockInfo;ILjava/lang/String;Landroid/os/Bundle;I)V +HSPLcom/android/server/alarm/Alarm;->getMaxWhenElapsed()J +HSPLcom/android/server/alarm/Alarm;->getWhenElapsed()J +HSPLcom/android/server/alarm/Alarm;->makeTag(Landroid/app/PendingIntent;Ljava/lang/String;I)Ljava/lang/String; +HSPLcom/android/server/alarm/Alarm;->matches(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)Z+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2; +HSPLcom/android/server/alarm/Alarm;->setPolicyElapsed(IJ)Z HSPLcom/android/server/alarm/Alarm;->updateWhenElapsed()Z HSPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda13;->test(Ljava/lang/Object;)Z -HSPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda15;->updateAlarmDelivery(Lcom/android/server/alarm/Alarm;)Z +HPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda15;->updateAlarmDelivery(Lcom/android/server/alarm/Alarm;)Z HPLcom/android/server/alarm/AlarmManagerService$4;->canScheduleExactAlarms(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HSPLcom/android/server/alarm/AlarmManagerService$4;->remove(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)V+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; -HSPLcom/android/server/alarm/AlarmManagerService$4;->set(Ljava/lang/String;IJJJILandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;Landroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/SystemService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; -HSPLcom/android/server/alarm/AlarmManagerService$AlarmHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/alarm/AlarmManagerService$4;->set(Ljava/lang/String;IJJJILandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;Landroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; +HSPLcom/android/server/alarm/AlarmManagerService$7$$ExternalSyntheticLambda0;->updateAlarmDelivery(Lcom/android/server/alarm/Alarm;)Z +HSPLcom/android/server/alarm/AlarmManagerService$7;->updateAlarmsForUid(I)V+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore; +HPLcom/android/server/alarm/AlarmManagerService$AlarmHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HSPLcom/android/server/alarm/AlarmManagerService$AlarmThread;->run()V HPLcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;->getTotalWakeupsInWindow(Ljava/lang/String;I)I+]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue; HSPLcom/android/server/alarm/AlarmManagerService$ClockReceiver;->scheduleTimeTickEvent()V+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->alarmComplete(Landroid/os/IBinder;)V -HSPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->deliverLocked(Lcom/android/server/alarm/Alarm;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/app/PendingIntent;Landroid/app/PendingIntent;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/Handler;Lcom/android/server/alarm/AlarmManagerService$AlarmHandler;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/Message;Landroid/os/Message;]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/SystemService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService$InFlight;Lcom/android/server/alarm/AlarmManagerService$InFlight;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->deliverLocked(Lcom/android/server/alarm/Alarm;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->removeLocked(Landroid/app/PendingIntent;Landroid/content/Intent;)Lcom/android/server/alarm/AlarmManagerService$InFlight;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->removeLocked(Landroid/os/IBinder;)Lcom/android/server/alarm/AlarmManagerService$InFlight;+]Lcom/android/internal/util/LocalLog;Lcom/android/internal/util/LocalLog;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->removeLocked(Landroid/os/IBinder;)Lcom/android/server/alarm/AlarmManagerService$InFlight;+]Lcom/android/internal/util/LocalLog;Lcom/android/internal/util/LocalLog;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->updateStatsLocked(Lcom/android/server/alarm/AlarmManagerService$InFlight;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector; -HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->updateTrackingLocked(Lcom/android/server/alarm/AlarmManagerService$InFlight;)V+]Landroid/os/Handler;Lcom/android/server/alarm/AlarmManagerService$AlarmHandler;]Landroid/os/Message;Landroid/os/Message;]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/alarm/AlarmManagerService$InFlight;-><init>(Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/Alarm;J)V+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->updateTrackingLocked(Lcom/android/server/alarm/AlarmManagerService$InFlight;)V+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/alarm/AlarmManagerService$InFlight;-><init>(Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/Alarm;J)V+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2; HSPLcom/android/server/alarm/AlarmManagerService$Injector;->getCallingUid()I HSPLcom/android/server/alarm/AlarmManagerService$Injector;->getCurrentTimeMillis()J HSPLcom/android/server/alarm/AlarmManagerService$Injector;->getElapsedRealtimeMillis()J @@ -236,128 +226,124 @@ HSPLcom/android/server/alarm/AlarmManagerService$Injector;->isAlarmDriverPresent HSPLcom/android/server/alarm/AlarmManagerService$Injector;->setAlarm(IJ)V HPLcom/android/server/alarm/AlarmManagerService$LocalService;->remove(Landroid/app/PendingIntent;)V HSPLcom/android/server/alarm/AlarmManagerService$LocalService;->shouldGetBucketElevation(Ljava/lang/String;I)Z+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; -HSPLcom/android/server/alarm/AlarmManagerService$RemovedAlarm;-><init>(Lcom/android/server/alarm/Alarm;IJJ)V +HPLcom/android/server/alarm/AlarmManagerService$RemovedAlarm;-><init>(Lcom/android/server/alarm/Alarm;IJJ)V HSPLcom/android/server/alarm/AlarmManagerService;->-$$Nest$fgetmInjector(Lcom/android/server/alarm/AlarmManagerService;)Lcom/android/server/alarm/AlarmManagerService$Injector; HSPLcom/android/server/alarm/AlarmManagerService;->-$$Nest$fgetmPackageManagerInternal(Lcom/android/server/alarm/AlarmManagerService;)Landroid/content/pm/PackageManagerInternal; HSPLcom/android/server/alarm/AlarmManagerService;->adjustDeliveryTimeBasedOnBatterySaver(Lcom/android/server/alarm/Alarm;)Z+]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector; HSPLcom/android/server/alarm/AlarmManagerService;->adjustDeliveryTimeBasedOnBucketLocked(Lcom/android/server/alarm/Alarm;)Z+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService$TemporaryQuotaReserve;Lcom/android/server/alarm/AlarmManagerService$TemporaryQuotaReserve;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HPLcom/android/server/alarm/AlarmManagerService;->adjustDeliveryTimeBasedOnDeviceIdle(Lcom/android/server/alarm/Alarm;)Z+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector; -HSPLcom/android/server/alarm/AlarmManagerService;->calculateDeliveryPriorities(Ljava/util/ArrayList;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/alarm/AlarmManagerService;->calculateDeliveryPriorities(Ljava/util/ArrayList;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/alarm/AlarmManagerService;->convertToElapsed(JI)J+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector; -HSPLcom/android/server/alarm/AlarmManagerService;->decrementAlarmCount(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/alarm/AlarmManagerService;->deliverAlarmsLocked(Ljava/util/ArrayList;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/alarm/AlarmManagerService;->getQuotaForBucketLocked(I)I -HSPLcom/android/server/alarm/AlarmManagerService;->hasScheduleExactAlarmInternal(Ljava/lang/String;I)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/SystemService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/alarm/AlarmManagerService;->hasUseExactAlarmInternal(Ljava/lang/String;I)Z+]Lcom/android/server/SystemService;Lcom/android/server/alarm/AlarmManagerService; +HSPLcom/android/server/alarm/AlarmManagerService;->decrementAlarmCount(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/alarm/AlarmManagerService;->deliverAlarmsLocked(Ljava/util/ArrayList;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/alarm/AlarmManagerService;->hasScheduleExactAlarmInternal(Ljava/lang/String;I)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; +HSPLcom/android/server/alarm/AlarmManagerService;->hasUseExactAlarmInternal(Ljava/lang/String;I)Z HSPLcom/android/server/alarm/AlarmManagerService;->increment(Landroid/util/SparseIntArray;I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/alarm/AlarmManagerService;->incrementAlarmCount(I)V HSPLcom/android/server/alarm/AlarmManagerService;->isExactAlarmChangeEnabled(Ljava/lang/String;I)Z HSPLcom/android/server/alarm/AlarmManagerService;->isExemptFromAppStandby(Lcom/android/server/alarm/Alarm;)Z -HSPLcom/android/server/alarm/AlarmManagerService;->isExemptFromBatterySaver(Lcom/android/server/alarm/Alarm;)Z+]Landroid/app/PendingIntent;Landroid/app/PendingIntent; -HSPLcom/android/server/alarm/AlarmManagerService;->isExemptFromExactAlarmPermissionNoLock(I)Z+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService; -HSPLcom/android/server/alarm/AlarmManagerService;->lambda$reorderAlarmsBasedOnStandbyBuckets$5(Landroid/util/ArraySet;Lcom/android/server/alarm/Alarm;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; -HSPLcom/android/server/alarm/AlarmManagerService;->logAlarmBatchDelivered(IILandroid/util/SparseIntArray;Landroid/util/SparseIntArray;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/alarm/AlarmManagerService;->isExemptFromBatterySaver(Lcom/android/server/alarm/Alarm;)Z +HPLcom/android/server/alarm/AlarmManagerService;->isExemptFromExactAlarmPermissionNoLock(I)Z+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService; +HPLcom/android/server/alarm/AlarmManagerService;->lambda$onStart$6([I[I)V +HPLcom/android/server/alarm/AlarmManagerService;->lambda$removeExactListenerAlarms$7([ILcom/android/server/alarm/Alarm;)Z +HPLcom/android/server/alarm/AlarmManagerService;->lambda$reorderAlarmsBasedOnStandbyBuckets$5(Landroid/util/ArraySet;Lcom/android/server/alarm/Alarm;)Z HSPLcom/android/server/alarm/AlarmManagerService;->maxTriggerTime(JJJ)J HSPLcom/android/server/alarm/AlarmManagerService;->removeAlarmsInternalLocked(Ljava/util/function/Predicate;I)V+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/function/Predicate;megamorphic_types -HSPLcom/android/server/alarm/AlarmManagerService;->removeLocked(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;I)V+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; -HSPLcom/android/server/alarm/AlarmManagerService;->reorderAlarmsBasedOnStandbyBuckets(Landroid/util/ArraySet;)Z+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore; -HSPLcom/android/server/alarm/AlarmManagerService;->rescheduleKernelAlarmsLocked()V+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/alarm/AlarmManagerService;->setImpl(IJJJLandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;ILandroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;ILjava/lang/String;Landroid/os/Bundle;I)V+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/alarm/AlarmManagerService;->removeLocked(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;I)V +HPLcom/android/server/alarm/AlarmManagerService;->reorderAlarmsBasedOnStandbyBuckets(Landroid/util/ArraySet;)Z+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore; +HSPLcom/android/server/alarm/AlarmManagerService;->rescheduleKernelAlarmsLocked()V+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Lcom/android/server/alarm/UserWakeupStore;Lcom/android/server/alarm/UserWakeupStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/alarm/AlarmManagerService;->setImpl(IJJJLandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;ILandroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;ILjava/lang/String;Landroid/os/Bundle;I)V+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HSPLcom/android/server/alarm/AlarmManagerService;->setImplLocked(IJJJJLandroid/app/PendingIntent;Landroid/app/IAlarmListener;Ljava/lang/String;ILandroid/os/WorkSource;Landroid/app/AlarmManager$AlarmClockInfo;ILjava/lang/String;Landroid/os/Bundle;I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService; HSPLcom/android/server/alarm/AlarmManagerService;->setImplLocked(Lcom/android/server/alarm/Alarm;)V+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore; HSPLcom/android/server/alarm/AlarmManagerService;->setLocked(IJ)V+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector; -HSPLcom/android/server/alarm/AlarmManagerService;->setWakelockWorkSource(Landroid/os/WorkSource;ILjava/lang/String;Z)V+]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock; -HSPLcom/android/server/alarm/AlarmManagerService;->triggerAlarmsLocked(Ljava/util/ArrayList;J)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; -HSPLcom/android/server/alarm/AlarmManagerService;->updateNextAlarmClockLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/lang/Object;Landroid/app/AlarmManager$AlarmClockInfo;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HPLcom/android/server/alarm/AlarmManagerService;->setWakelockWorkSource(Landroid/os/WorkSource;ILjava/lang/String;Z)V +HPLcom/android/server/alarm/AlarmManagerService;->triggerAlarmsLocked(Ljava/util/ArrayList;J)I+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HSPLcom/android/server/alarm/AlarmManagerService;->updateNextAlarmClockLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HSPLcom/android/server/alarm/LazyAlarmStore$$ExternalSyntheticLambda0;->applyAsLong(Ljava/lang/Object;)J+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm; HSPLcom/android/server/alarm/LazyAlarmStore;->add(Lcom/android/server/alarm/Alarm;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/alarm/LazyAlarmStore;->getNextDeliveryTime()J+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/alarm/LazyAlarmStore;->getNextWakeupDeliveryTime()J+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/alarm/LazyAlarmStore;->remove(Ljava/util/function/Predicate;)Ljava/util/ArrayList;+]Ljava/lang/Runnable;Lcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda3;,Lcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda4;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;megamorphic_types -HSPLcom/android/server/alarm/LazyAlarmStore;->removePendingAlarms(J)Ljava/util/ArrayList;+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/LazyAlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/alarm/LazyAlarmStore;->remove(Ljava/util/function/Predicate;)Ljava/util/ArrayList;+]Ljava/lang/Runnable;Lcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda4;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;megamorphic_types +HPLcom/android/server/alarm/LazyAlarmStore;->removePendingAlarms(J)Ljava/util/ArrayList;+]Lcom/android/server/alarm/Alarm;Lcom/android/server/alarm/Alarm;]Lcom/android/server/alarm/LazyAlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/alarm/LazyAlarmStore;->size()I+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/alarm/LazyAlarmStore;->updateAlarmDeliveries(Lcom/android/server/alarm/AlarmStore$AlarmDeliveryCalculator;)Z+]Lcom/android/server/alarm/AlarmStore$AlarmDeliveryCalculator;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HSPLcom/android/server/alarm/MetricsHelper;->pushAlarmScheduled(Lcom/android/server/alarm/Alarm;I)V -HSPLcom/android/server/am/ActiveServices$$ExternalSyntheticLambda8;->apply(Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/alarm/UserWakeupStore;->getNextWakeupTime()J+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray; +HSPLcom/android/server/am/ActiveServices$$ExternalSyntheticLambda7;->apply(Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getPid(Lcom/android/server/am/ProcessRecord;)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getPid(Ljava/lang/Object;)I+]Lcom/android/server/am/ActiveServices$ProcessAnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer; +HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getUid(Lcom/android/server/am/ProcessRecord;)I +HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getUid(Ljava/lang/Object;)I+]Lcom/android/server/am/ActiveServices$ProcessAnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer; HSPLcom/android/server/am/ActiveServices$ServiceLookupResult;-><init>(Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ServiceRecord;Landroid/content/ComponentName;)V -HSPLcom/android/server/am/ActiveServices$ServiceMap;->ensureNotStartingBackgroundLocked(Lcom/android/server/am/ServiceRecord;)V+]Landroid/os/Handler;Lcom/android/server/am/ActiveServices$ServiceMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ActiveServices$ServiceMap;->rescheduleDelayedStartsLocked()V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices$ServiceRestarter;-><init>(Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices$ServiceRestarter-IA;)V +HSPLcom/android/server/am/ActiveServices$ServiceMap;->ensureNotStartingBackgroundLocked(Lcom/android/server/am/ServiceRecord;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices$ServiceRestarter;-><init>(Lcom/android/server/am/ActiveServices;)V +HSPLcom/android/server/am/ActiveServices$ServiceRestarter;-><init>(Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices-IA;)V +HSPLcom/android/server/am/ActiveServices$ServiceRestarter;->setService(Lcom/android/server/am/ServiceRecord;)V HSPLcom/android/server/am/ActiveServices;->attachApplicationLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->bindServiceLocked(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;ZILjava/lang/String;Landroid/app/IApplicationThread;Ljava/lang/String;I)I+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices$ServiceMap;Lcom/android/server/am/ActiveServices$ServiceMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->bringDownServiceIfNeededLocked(Lcom/android/server/am/ServiceRecord;ZZZLjava/lang/String;)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->bringDownServiceLocked(Lcom/android/server/am/ServiceRecord;Z)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent$FilterComparison;Landroid/content/Intent$FilterComparison;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices$ServiceMap;Lcom/android/server/am/ActiveServices$ServiceMap;]Lcom/android/server/am/ActiveServices$ServiceRestarter;Lcom/android/server/am/ActiveServices$ServiceRestarter;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ForegroundServiceTypeLoggerModule;Lcom/android/server/am/ForegroundServiceTypeLoggerModule;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->bringUpServiceInnerLocked(Lcom/android/server/am/ServiceRecord;IZZZZZI)Ljava/lang/String;+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Intent$FilterComparison;Landroid/content/Intent$FilterComparison;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppStartInfoTracker;Lcom/android/server/am/AppStartInfoTracker;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->bringUpServiceLocked(Lcom/android/server/am/ServiceRecord;IZZZZZI)Ljava/lang/String;+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActiveServices;->bumpServiceExecutingLocked(Lcom/android/server/am/ServiceRecord;ZLjava/lang/String;IZ)V+]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HPLcom/android/server/am/ActiveServices;->canBindingClientStartFgsLocked(I)Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->cancelForegroundNotificationLocked(Lcom/android/server/am/ServiceRecord;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->deferServiceBringupIfFrozenLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;IZZILandroid/app/BackgroundStartPrivileges;ZLandroid/app/IServiceConnection;)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->dropFgsNotificationStateLocked(Lcom/android/server/am/ServiceRecord;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->generateAdditionalSeInfoFromService(Landroid/content/Intent;)Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->getAllowMode(Landroid/content/Intent;Ljava/lang/String;)I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->getHostingRecordTriggerType(Lcom/android/server/am/ServiceRecord;)Ljava/lang/String;+]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->getProcessNameForService(Landroid/content/pm/ServiceInfo;Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;ZZZ)Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ActiveServices;->bindServiceLocked(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;ZILjava/lang/String;Landroid/app/IApplicationThread;Ljava/lang/String;I)I+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->bringDownServiceIfNeededLocked(Lcom/android/server/am/ServiceRecord;ZZZLjava/lang/String;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->bringDownServiceLocked(Lcom/android/server/am/ServiceRecord;Z)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Lcom/android/server/am/ActiveServices$ServiceRestarter;Lcom/android/server/am/ActiveServices$ServiceRestarter;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ForegroundServiceTypeLoggerModule;Lcom/android/server/am/ForegroundServiceTypeLoggerModule;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->bringUpServiceInnerLocked(Lcom/android/server/am/ServiceRecord;IZZZZZI)Ljava/lang/String;+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->bringUpServiceLocked(Lcom/android/server/am/ServiceRecord;IZZZZZI)Ljava/lang/String; +HSPLcom/android/server/am/ActiveServices;->bumpServiceExecutingLocked(Lcom/android/server/am/ServiceRecord;ZLjava/lang/String;IZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HSPLcom/android/server/am/ActiveServices;->cancelForegroundNotificationLocked(Lcom/android/server/am/ServiceRecord;)V +HSPLcom/android/server/am/ActiveServices;->deferServiceBringupIfFrozenLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;IZZILandroid/app/BackgroundStartPrivileges;ZLandroid/app/IServiceConnection;)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->dropFgsNotificationStateLocked(Lcom/android/server/am/ServiceRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/ActiveServices;->generateAdditionalSeInfoFromService(Landroid/content/Intent;)Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/ActiveServices;->getAllowMode(Landroid/content/Intent;Ljava/lang/String;)I+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/ActiveServices;->getHostingRecordTriggerType(Lcom/android/server/am/ServiceRecord;)Ljava/lang/String; +HSPLcom/android/server/am/ActiveServices;->getProcessNameForService(Landroid/content/pm/ServiceInfo;Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;ZZZ)Ljava/lang/String; +HPLcom/android/server/am/ActiveServices;->getRunningServiceInfoLocked(IIIZZ)Ljava/util/List;+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ActiveServices;->getServiceBindingOomAdjPolicyForAddLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ConnectionRecord;)I+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ActiveServices;->getServiceBindingOomAdjPolicyForRemovalLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ConnectionRecord;)I+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/ActiveServices;->getServiceMapLocked(I)Lcom/android/server/am/ActiveServices$ServiceMap;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/ActiveServices;->getShortProcessNameForStats(ILjava/lang/String;)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->getShortServiceNameForStats(Lcom/android/server/am/ServiceRecord;)Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HSPLcom/android/server/am/ActiveServices;->isServiceNeededLocked(Lcom/android/server/am/ServiceRecord;ZZ)Z+]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HSPLcom/android/server/am/ActiveServices;->killServicesLocked(Lcom/android/server/am/ProcessRecord;Z)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ActiveServices;->lambda$canBindingClientStartFgsLocked$6(ILandroid/util/ArraySet;Lcom/android/server/am/ProcessRecord;)Landroid/util/Pair;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ActiveServices;->lambda$shouldAllowFgsStartForegroundNoBindingCheckLocked$7(IZLcom/android/server/am/ProcessRecord;)Ljava/lang/Integer;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/ActiveServices;->lambda$shouldAllowFgsWhileInUsePermissionByBindingsLocked$5(ILandroid/util/ArraySet;Lcom/android/server/am/ProcessRecord;)Ljava/lang/Integer;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ActiveServices;->makeRunningServiceInfoLocked(Lcom/android/server/am/ServiceRecord;)Landroid/app/ActivityManager$RunningServiceInfo;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->maybeLogBindCrossProfileService(ILjava/lang/String;I)V+]Landroid/app/admin/DevicePolicyEventLogger;Landroid/app/admin/DevicePolicyEventLogger;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; -HSPLcom/android/server/am/ActiveServices;->maybeStopFgsTimeoutLocked(Lcom/android/server/am/ServiceRecord;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ServiceRecord$TimeLimitedFgsInfo;Lcom/android/server/am/ServiceRecord$TimeLimitedFgsInfo;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ServiceAnrTimer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActiveServices;->notifyBindingServiceEventLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/os/Message;Landroid/os/Message; -HSPLcom/android/server/am/ActiveServices;->publishServiceLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;Landroid/os/IBinder;)V+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/content/Intent$FilterComparison;Landroid/content/Intent$FilterComparison;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->realStartServiceLocked(Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ProcessRecord;Landroid/app/IApplicationThread;ILcom/android/server/am/UidRecord;ZZI)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->removeConnectionLocked(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/wm/ActivityServiceConnectionsHolder;Z)I+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/content/Intent$FilterComparison;Landroid/content/Intent$FilterComparison;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->requestServiceBindingLocked(Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/IntentBindRecord;ZZI)Z+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/Intent$FilterComparison;Landroid/content/Intent$FilterComparison;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->requestServiceBindingsLocked(Lcom/android/server/am/ServiceRecord;ZI)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; +HSPLcom/android/server/am/ActiveServices;->getShortProcessNameForStats(ILjava/lang/String;)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; +HSPLcom/android/server/am/ActiveServices;->getShortServiceNameForStats(Lcom/android/server/am/ServiceRecord;)Ljava/lang/String; +HSPLcom/android/server/am/ActiveServices;->isServiceNeededLocked(Lcom/android/server/am/ServiceRecord;ZZ)Z +HSPLcom/android/server/am/ActiveServices;->killServicesLocked(Lcom/android/server/am/ProcessRecord;Z)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/am/ActiveServices;->lambda$canBindingClientStartFgsLocked$6(ILandroid/util/ArraySet;Lcom/android/server/am/ProcessRecord;)Landroid/util/Pair;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/am/ActiveServices;->lambda$shouldAllowFgsStartForegroundNoBindingCheckLocked$7(IZLcom/android/server/am/ProcessRecord;)Ljava/lang/Integer;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActiveServices;->lambda$shouldAllowFgsWhileInUsePermissionByBindingsLocked$5(ILandroid/util/ArraySet;Lcom/android/server/am/ProcessRecord;)Ljava/lang/Integer;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/am/ActiveServices;->makeRunningServiceInfoLocked(Lcom/android/server/am/ServiceRecord;)Landroid/app/ActivityManager$RunningServiceInfo;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->maybeLogBindCrossProfileService(ILjava/lang/String;I)V+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; +HSPLcom/android/server/am/ActiveServices;->notifyBindingServiceEventLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;)V +HSPLcom/android/server/am/ActiveServices;->publishServiceLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;Landroid/os/IBinder;)V+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->realStartServiceLocked(Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ProcessRecord;Landroid/app/IApplicationThread;ILcom/android/server/am/UidRecord;ZZI)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->removeConnectionLocked(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/wm/ActivityServiceConnectionsHolder;Z)I+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->requestServiceBindingLocked(Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/IntentBindRecord;ZZI)Z+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->requestServiceBindingsLocked(Lcom/android/server/am/ServiceRecord;ZI)V HSPLcom/android/server/am/ActiveServices;->requestStartTargetPermissionsReviewIfNeededLocked(Lcom/android/server/am/ServiceRecord;Ljava/lang/String;Ljava/lang/String;ILandroid/content/Intent;ZIZLandroid/app/IServiceConnection;)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActiveServices;->resetFgsRestrictionLocked(Lcom/android/server/am/ServiceRecord;)V+]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HSPLcom/android/server/am/ActiveServices;->retrieveServiceLocked(Landroid/content/Intent;Ljava/lang/String;ZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIZZZZLandroid/app/ForegroundServiceDelegationOptions;ZZ)Lcom/android/server/am/ActiveServices$ServiceLookupResult;+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActiveServices;->retrieveServiceLocked(Landroid/content/Intent;Ljava/lang/String;ZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIZZZZLandroid/app/ForegroundServiceDelegationOptions;ZZZ)Lcom/android/server/am/ActiveServices$ServiceLookupResult;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices$ServiceRestarter;Lcom/android/server/am/ActiveServices$ServiceRestarter;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->scheduleServiceTimeoutLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ActiveServices$ProcessAnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer; -HSPLcom/android/server/am/ActiveServices;->sendServiceArgsLocked(Lcom/android/server/am/ServiceRecord;ZZ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->serviceDoneExecutingLocked(Lcom/android/server/am/ServiceRecord;IIIZLandroid/content/Intent;)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->serviceDoneExecutingLocked(Lcom/android/server/am/ServiceRecord;ZZZI)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->setFgsRestrictionLocked(Ljava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;ILandroid/app/BackgroundStartPrivileges;Z)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActiveServices;->setFgsRestrictionLocked(Ljava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;ILandroid/app/BackgroundStartPrivileges;ZZ)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsStartForegroundNoBindingCheckLocked(IIILjava/lang/String;Lcom/android/server/am/ServiceRecord;Landroid/app/BackgroundStartPrivileges;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsStartForegroundWithBindingCheckLocked(ILjava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;Landroid/app/BackgroundStartPrivileges;Z)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ActiveServices;->resetFgsRestrictionLocked(Lcom/android/server/am/ServiceRecord;)V +HSPLcom/android/server/am/ActiveServices;->retrieveServiceLocked(Landroid/content/Intent;Ljava/lang/String;ZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIZZZZLandroid/app/ForegroundServiceDelegationOptions;ZZ)Lcom/android/server/am/ActiveServices$ServiceLookupResult; +HSPLcom/android/server/am/ActiveServices;->retrieveServiceLocked(Landroid/content/Intent;Ljava/lang/String;ZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIZZZZLandroid/app/ForegroundServiceDelegationOptions;ZZZ)Lcom/android/server/am/ActiveServices$ServiceLookupResult;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->scheduleServiceTimeoutLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer; +HSPLcom/android/server/am/ActiveServices;->sendServiceArgsLocked(Lcom/android/server/am/ServiceRecord;ZZ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->serviceDoneExecutingLocked(Lcom/android/server/am/ServiceRecord;IIIZLandroid/content/Intent;)V+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->serviceDoneExecutingLocked(Lcom/android/server/am/ServiceRecord;ZZZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->setFgsRestrictionLocked(Ljava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;ILandroid/app/BackgroundStartPrivileges;Z)V +HSPLcom/android/server/am/ActiveServices;->setFgsRestrictionLocked(Ljava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;ILandroid/app/BackgroundStartPrivileges;ZZ)V +HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsStartForegroundNoBindingCheckLocked(IIILjava/lang/String;Lcom/android/server/am/ServiceRecord;Landroid/app/BackgroundStartPrivileges;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsStartForegroundWithBindingCheckLocked(ILjava/lang/String;IILandroid/content/Intent;Lcom/android/server/am/ServiceRecord;Landroid/app/BackgroundStartPrivileges;Z)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsWhileInUsePermissionByBindingsLocked(I)I -HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsWhileInUsePermissionLocked(Ljava/lang/String;IILcom/android/server/am/ProcessRecord;Landroid/app/BackgroundStartPrivileges;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActiveServices;->startServiceInnerLocked(Lcom/android/server/am/ActiveServices$ServiceMap;Landroid/content/Intent;Lcom/android/server/am/ServiceRecord;ZZILjava/lang/String;IZLjava/lang/String;)Landroid/content/ComponentName;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices$ServiceMap;Lcom/android/server/am/ActiveServices$ServiceMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->startServiceInnerLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;IILjava/lang/String;IZZLandroid/app/BackgroundStartPrivileges;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->startServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IIZLjava/lang/String;Ljava/lang/String;ILandroid/app/BackgroundStartPrivileges;ZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActiveServices;->startServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IIZLjava/lang/String;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HPLcom/android/server/am/ActiveServices;->stopInBackgroundLocked(I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActiveServices$ServiceMap;Lcom/android/server/am/ActiveServices$ServiceMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->stopServiceAndUpdateAllowlistManagerLocked(Lcom/android/server/am/ServiceRecord;)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; +HSPLcom/android/server/am/ActiveServices;->shouldAllowFgsWhileInUsePermissionLocked(Ljava/lang/String;IILcom/android/server/am/ProcessRecord;Landroid/app/BackgroundStartPrivileges;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/ActiveServices;->startServiceInnerLocked(Lcom/android/server/am/ActiveServices$ServiceMap;Landroid/content/Intent;Lcom/android/server/am/ServiceRecord;ZZILjava/lang/String;IZLjava/lang/String;)Landroid/content/ComponentName;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->startServiceInnerLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;IILjava/lang/String;IZZLandroid/app/BackgroundStartPrivileges;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->startServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IIZLjava/lang/String;Ljava/lang/String;ILandroid/app/BackgroundStartPrivileges;ZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; +HSPLcom/android/server/am/ActiveServices;->startServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IIZLjava/lang/String;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName; +HPLcom/android/server/am/ActiveServices;->stopInBackgroundLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HSPLcom/android/server/am/ActiveServices;->stopServiceAndUpdateAllowlistManagerLocked(Lcom/android/server/am/ServiceRecord;)V HPLcom/android/server/am/ActiveServices;->stopServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HPLcom/android/server/am/ActiveServices;->stopServiceLocked(Lcom/android/server/am/ServiceRecord;Z)V HPLcom/android/server/am/ActiveServices;->stopServiceTokenLocked(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->traceInstant(Ljava/lang/String;Lcom/android/server/am/ServiceRecord;)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ActiveServices;->traceInstant(Ljava/lang/String;Lcom/android/server/am/ServiceRecord;)V HPLcom/android/server/am/ActiveServices;->unbindFinishedLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;Z)V+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->unbindServiceLocked(Landroid/app/IServiceConnection;)Z+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->unscheduleServiceRestartLocked(Lcom/android/server/am/ServiceRecord;IZ)Z+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->updateServiceClientActivitiesLocked(Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ConnectionRecord;Z)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActiveServices;->updateServiceForegroundLocked(Lcom/android/server/am/ProcessServiceRecord;Z)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; -HPLcom/android/server/am/ActiveServices;->verifyPackage(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HSPLcom/android/server/am/ActiveServices;->unbindServiceLocked(Landroid/app/IServiceConnection;)Z+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->unscheduleServiceRestartLocked(Lcom/android/server/am/ServiceRecord;IZ)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->updateServiceClientActivitiesLocked(Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ConnectionRecord;Z)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActiveServices;->updateServiceForegroundLocked(Lcom/android/server/am/ProcessServiceRecord;Z)V HSPLcom/android/server/am/ActiveUids;->get(I)Lcom/android/server/am/UidRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/ActiveUids;->put(ILcom/android/server/am/UidRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/ActiveUids;->put(ILcom/android/server/am/UidRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/am/ActivityManagerConstants;->shouldDebugUidForProcState(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/am/ActivityManagerService$3;->allowFilterResult(Lcom/android/server/am/BroadcastFilter;Ljava/util/List;)Z+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService$3;->allowFilterResult(Ljava/lang/Object;Ljava/util/List;)Z+]Lcom/android/server/am/ActivityManagerService$3;Lcom/android/server/am/ActivityManagerService$3; -HSPLcom/android/server/am/ActivityManagerService$3;->getIntentFilter(Lcom/android/server/am/BroadcastFilter;)Landroid/content/IntentFilter; -HSPLcom/android/server/am/ActivityManagerService$3;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter;+]Lcom/android/server/am/ActivityManagerService$3;Lcom/android/server/am/ActivityManagerService$3; -HSPLcom/android/server/am/ActivityManagerService$3;->isPackageForFilter(Ljava/lang/String;Lcom/android/server/am/BroadcastFilter;)Z+]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActivityManagerService$3;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z+]Lcom/android/server/am/ActivityManagerService$3;Lcom/android/server/am/ActivityManagerService$3; -HSPLcom/android/server/am/ActivityManagerService$3;->newResult(Lcom/android/server/pm/Computer;Lcom/android/server/am/BroadcastFilter;IIJ)Lcom/android/server/am/BroadcastFilter; -HSPLcom/android/server/am/ActivityManagerService$3;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object;+]Lcom/android/server/am/ActivityManagerService$3;Lcom/android/server/am/ActivityManagerService$3; HSPLcom/android/server/am/ActivityManagerService$Injector;->clearCallingIdentity()J HSPLcom/android/server/am/ActivityManagerService$Injector;->ensureHasNetworkManagementInternal()Z HSPLcom/android/server/am/ActivityManagerService$Injector;->getCallingPid()I @@ -367,269 +353,272 @@ HSPLcom/android/server/am/ActivityManagerService$Injector;->restoreCallingIdenti HSPLcom/android/server/am/ActivityManagerService$LocalService;->checkContentProviderAccess(Ljava/lang/String;I)Ljava/lang/String;+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; HSPLcom/android/server/am/ActivityManagerService$LocalService;->deletePendingTopUid(IJ)V HSPLcom/android/server/am/ActivityManagerService$LocalService;->getCurrentUserId()I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; -HSPLcom/android/server/am/ActivityManagerService$LocalService;->getRestrictionLevel(I)I+]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; +HSPLcom/android/server/am/ActivityManagerService$LocalService;->getRestrictionLevel(I)I HSPLcom/android/server/am/ActivityManagerService$LocalService;->getUidProcessState(I)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService$LocalService;->handleIncomingUser(IIIZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAppBad(Ljava/lang/String;I)Z HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAppStartModeDisabled(ILjava/lang/String;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HPLcom/android/server/am/ActivityManagerService$LocalService;->isAssociatedCompanionApp(II)Z+]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLcom/android/server/am/ActivityManagerService$LocalService;->isBgAutoRestrictedBucketFeatureFlagEnabled()Z+]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; +HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAssociatedCompanionApp(II)Z+]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/am/ActivityManagerService$LocalService;->isBgAutoRestrictedBucketFeatureFlagEnabled()Z HSPLcom/android/server/am/ActivityManagerService$LocalService;->isDeviceOwner(I)Z -HSPLcom/android/server/am/ActivityManagerService$LocalService;->isPendingTopUid(I)Z+]Lcom/android/server/am/PendingStartActivityUids;Lcom/android/server/am/PendingStartActivityUids; -HSPLcom/android/server/am/ActivityManagerService$LocalService;->isProfileOwner(I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/ActivityManagerService$LocalService;->isPendingTopUid(I)Z +HSPLcom/android/server/am/ActivityManagerService$LocalService;->isProfileOwner(I)Z HPLcom/android/server/am/ActivityManagerService$LocalService;->isTempAllowlistedForFgsWhileInUse(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; HSPLcom/android/server/am/ActivityManagerService$LocalService;->isUidActive(I)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService$LocalService;->notifyNetworkPolicyRulesUpdated(IJ)V HSPLcom/android/server/am/ActivityManagerService$LocalService;->onUidBlockedReasonsChanged(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HPLcom/android/server/am/ActivityManagerService$LocalService;->startServiceInPackage(ILandroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;ILandroid/app/BackgroundStartPrivileges;)Landroid/content/ComponentName; -HSPLcom/android/server/am/ActivityManagerService$LocalService;->updateDeviceIdleTempAllowlist([IIZJIILjava/lang/String;I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; +HSPLcom/android/server/am/ActivityManagerService$LocalService;->updateDeviceIdleTempAllowlist([IIZJIILjava/lang/String;I)V+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; HSPLcom/android/server/am/ActivityManagerService$MainHandler$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V HSPLcom/android/server/am/ActivityManagerService$MainHandler$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V -HSPLcom/android/server/am/ActivityManagerService$MainHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/IUiAutomationConnection;Landroid/app/IUiAutomationConnection$Stub$Proxy;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/Thread;Lcom/android/server/am/ActivityManagerService$MainHandler$1;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; +HSPLcom/android/server/am/ActivityManagerService$MainHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; HSPLcom/android/server/am/ActivityManagerService$MainHandler;->lambda$handleMessage$1(Landroid/os/Message;Landroid/app/ActivityManagerInternal$BroadcastEventListener;)V+]Landroid/app/ActivityManagerInternal$BroadcastEventListener;Lcom/android/server/am/AppBroadcastEventsTracker; -HSPLcom/android/server/am/ActivityManagerService$MainHandler;->lambda$handleMessage$2(Landroid/os/Message;Landroid/app/ActivityManagerInternal$BindServiceEventListener;)V+]Landroid/app/ActivityManagerInternal$BindServiceEventListener;Lcom/android/server/am/AppBindServiceEventsTracker; HSPLcom/android/server/am/ActivityManagerService$PendingTempAllowlist;-><init>(IJILjava/lang/String;II)V HSPLcom/android/server/am/ActivityManagerService$PidMap;->get(I)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/ActivityManagerService;->addErrorToDropBox(Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;Landroid/app/ApplicationErrorReport$CrashInfo;Ljava/lang/Float;Landroid/os/incremental/IncrementalMetrics;Ljava/util/UUID;Lcom/android/server/am/ActivityManagerService$VolatileDropboxEntryStates;)V+]Landroid/os/DropBoxManager;Landroid/os/DropBoxManager;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/DropboxRateLimiter$RateLimitResult;Lcom/android/server/am/DropboxRateLimiter$RateLimitResult;]Lcom/android/server/am/DropboxRateLimiter;Lcom/android/server/am/DropboxRateLimiter;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ActivityManagerService;->addPidLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/am/ActivityManagerService;->appDiedLocked(Lcom/android/server/am/ProcessRecord;ILandroid/app/IApplicationThread;ZLjava/lang/String;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ActivityManagerService;->attachApplication(Landroid/app/IApplicationThread;J)V -HSPLcom/android/server/am/ActivityManagerService;->attachApplicationLocked(Landroid/app/IApplicationThread;IIJ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/autofill/AutofillManagerInternal;Lcom/android/server/autofill/AutofillManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/contentcapture/ContentCaptureManagerInternal;Lcom/android/server/contentcapture/ContentCaptureManagerService$LocalService;]Lcom/android/server/graphics/fonts/FontManagerInternal;Lcom/android/server/graphics/fonts/FontManagerService$Lifecycle$1;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;ZILjava/lang/String;Landroid/app/IApplicationThread;Ljava/lang/String;I)I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ActivityManagerService;->addStartInfoTimestampInternal(IJII)V +HSPLcom/android/server/am/ActivityManagerService;->appDiedLocked(Lcom/android/server/am/ProcessRecord;ILandroid/app/IApplicationThread;ZLjava/lang/String;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActivityManagerService;->attachApplicationLocked(Landroid/app/IApplicationThread;IIJ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/autofill/AutofillManagerInternal;Lcom/android/server/autofill/AutofillManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/contentcapture/ContentCaptureManagerInternal;Lcom/android/server/contentcapture/ContentCaptureManagerService$LocalService;]Lcom/android/server/graphics/fonts/FontManagerInternal;Lcom/android/server/graphics/fonts/FontManagerService$Lifecycle$1;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;Ljava/lang/String;I)I +HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;ZILjava/lang/String;Landroid/app/IApplicationThread;Ljava/lang/String;I)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->boostPriorityForLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster; HSPLcom/android/server/am/ActivityManagerService;->boostPriorityForProcLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster; -HSPLcom/android/server/am/ActivityManagerService;->broadcastIntentLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->broadcastIntentLockedTraced(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/app/BroadcastOptions;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;)I+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;megamorphic_types]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/IntentFilter;Lcom/android/server/am/BroadcastFilter;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/net/Uri;Landroid/net/Uri$OpaqueUri;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/ActivityManagerService$3;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HPLcom/android/server/am/ActivityManagerService;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController; -HSPLcom/android/server/am/ActivityManagerService;->checkBroadcastFromSystem(Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;IZLjava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActivityManagerService;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController; HSPLcom/android/server/am/ActivityManagerService;->checkCallingPermission(Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->checkComponentPermission(Ljava/lang/String;IIIIZ)I+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/ActivityManagerService;->checkComponentPermission(Ljava/lang/String;IIIIZ)I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/ActivityManagerService;->checkComponentPermission(Ljava/lang/String;IIIZ)I HSPLcom/android/server/am/ActivityManagerService;->checkPermission(Ljava/lang/String;II)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->checkPermissionForDevice(Ljava/lang/String;III)I -HSPLcom/android/server/am/ActivityManagerService;->cleanUpApplicationRecordLocked(Lcom/android/server/am/ProcessRecord;IZZIZZ)Z+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/PhantomProcessList;Lcom/android/server/am/PhantomProcessList;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->collectReceiverComponents(Landroid/content/Intent;Ljava/lang/String;I[I[I)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/am/ActivityManagerService;->cleanUpApplicationRecordLocked(Lcom/android/server/am/ProcessRecord;IZZIZZ)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ActivityManagerService;->enforceAllowedToStartOrBindServiceIfSdkSandbox(Landroid/content/Intent;)V+]Lcom/android/server/sdksandbox/SdkSandboxManagerLocal;Lcom/android/server/sdksandbox/SdkSandboxManagerService$LocalImpl; -HSPLcom/android/server/am/ActivityManagerService;->enforceBroadcastOptionPermissionsInternal(Landroid/app/BroadcastOptions;I)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions; -HSPLcom/android/server/am/ActivityManagerService;->enforceBroadcastOptionPermissionsInternal(Landroid/os/Bundle;I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->enforceNotIsolatedCaller(Ljava/lang/String;)V -HSPLcom/android/server/am/ActivityManagerService;->enqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/ActivityManagerService;->enqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/ActivityManagerService;->enqueuePendingTopAppIfNecessaryLocked()V -HSPLcom/android/server/am/ActivityManagerService;->enqueueUidChangeLocked(Lcom/android/server/am/UidRecord;II)V+]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/UidObserverController;Lcom/android/server/am/UidObserverController;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; +HSPLcom/android/server/am/ActivityManagerService;->enqueueUidChangeLocked(Lcom/android/server/am/UidRecord;II)V+]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/am/UidObserverController;Lcom/android/server/am/UidObserverController; HSPLcom/android/server/am/ActivityManagerService;->ensureAllowedAssociations()V -HSPLcom/android/server/am/ActivityManagerService;->filterNonExportedComponents(Landroid/content/Intent;IILjava/util/List;Lcom/android/server/compat/PlatformCompat;Ljava/lang/String;Ljava/lang/String;)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ComponentInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->finishAttachApplicationInner(JII)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/am/ActivityManagerService;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActivityManagerService;->getAppInfoForUser(Landroid/content/pm/ApplicationInfo;I)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo; -HSPLcom/android/server/am/ActivityManagerService;->getAppStartModeLOSP(ILjava/lang/String;IIZZZ)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/ActivityManagerService;->getBackgroundLaunchBroadcasts()Landroid/util/ArraySet; +HSPLcom/android/server/am/ActivityManagerService;->finishAttachApplication(JJ)V +HSPLcom/android/server/am/ActivityManagerService;->finishAttachApplicationInner(JII)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/ActivityManagerService;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl; +HSPLcom/android/server/am/ActivityManagerService;->getAppStartModeLOSP(ILjava/lang/String;IIZZZ)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder;+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; -HSPLcom/android/server/am/ActivityManagerService;->getCurrentUserId()I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/ActivityManagerService;->getHistoricalProcessExitReasons(Ljava/lang/String;III)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/ActivityManagerService;->getInfoForIntentSender(Landroid/content/IIntentSender;)Landroid/app/ActivityManager$PendingIntentInfo;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->getIntentSenderWithFeature(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;I)Landroid/content/IIntentSender;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->getIntentSenderWithFeatureAsApp(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;II)Landroid/content/IIntentSender;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; +HSPLcom/android/server/am/ActivityManagerService;->getIntentSenderWithFeatureAsApp(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;II)Landroid/content/IIntentSender;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/ActivityManagerService;->getMemoryTrimLevel()I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler; -HSPLcom/android/server/am/ActivityManagerService;->getMyMemoryState(Landroid/app/ActivityManager$RunningAppProcessInfo;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; +HPLcom/android/server/am/ActivityManagerService;->getMyMemoryState(Landroid/app/ActivityManager$RunningAppProcessInfo;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->getPackageManagerInternal()Landroid/content/pm/PackageManagerInternal; -HSPLcom/android/server/am/ActivityManagerService;->getPackageProcessState(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ActivityManagerService;->getProcessRecordLocked(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ActivityManagerService;->getRealProcessStateLocked(Lcom/android/server/am/ProcessRecord;I)I+]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/ActivityManagerService;->getProcessRecordLocked(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ActivityManagerService;->getRecordForAppLOSP(Landroid/app/IApplicationThread;)Lcom/android/server/am/ProcessRecord;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->getRecordForAppLOSP(Landroid/os/IBinder;)Lcom/android/server/am/ProcessRecord;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/ProcessMap;Lcom/android/server/am/ProcessList$MyProcessMap;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActivityManagerService;->getRecordForAppLOSP(Landroid/os/IBinder;)Lcom/android/server/am/ProcessRecord;+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ActivityManagerService;->getRunningAppProcesses()Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/am/ActivityManagerService;->getShortAction(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; +HSPLcom/android/server/am/ActivityManagerService;->getShortAction(Ljava/lang/String;)Ljava/lang/String; HSPLcom/android/server/am/ActivityManagerService;->getTagForIntentSender(Landroid/content/IIntentSender;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->getTagForIntentSenderLocked(Lcom/android/server/am/PendingIntentRecord;Ljava/lang/String;)Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActivityManagerService;->getTopApp()Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActivityManagerService;->getUidProcessCapabilityLocked(I)I+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ActivityManagerService;->getUidState(I)I+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ActivityManagerService;->getUidStateLocked(I)I+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; +HSPLcom/android/server/am/ActivityManagerService;->getTagForIntentSenderLocked(Lcom/android/server/am/PendingIntentRecord;Ljava/lang/String;)Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/ActivityManagerService;->getTopApp()Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/ActivityManagerService;->getUidProcessCapabilityLocked(I)I +HSPLcom/android/server/am/ActivityManagerService;->getUidState(I)I +HSPLcom/android/server/am/ActivityManagerService;->getUidStateLocked(I)I HSPLcom/android/server/am/ActivityManagerService;->grantImplicitAccess(ILandroid/content/Intent;II)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->handleIncomingUser(IIIZZLjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; -HSPLcom/android/server/am/ActivityManagerService;->hasUsageStatsPermission(Ljava/lang/String;II)Z+]Landroid/app/SyncNotedAppOp;Landroid/app/SyncNotedAppOp;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/am/ActivityManagerService;->hasUsageStatsPermission(Ljava/lang/String;II)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; HSPLcom/android/server/am/ActivityManagerService;->isAllowlistedForFgsStartLOSP(I)Lcom/android/server/am/ActivityManagerService$FgsTempAllowListItem;+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; -HSPLcom/android/server/am/ActivityManagerService;->isAppBad(Ljava/lang/String;I)Z+]Lcom/android/server/am/AppErrors;Lcom/android/server/am/AppErrors; HSPLcom/android/server/am/ActivityManagerService;->isAppStartModeDisabled(ILjava/lang/String;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->isInstantApp(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;I)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; HSPLcom/android/server/am/ActivityManagerService;->isReceivingBroadcastLocked(Lcom/android/server/am/ProcessRecord;[I)Z+]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl; -HSPLcom/android/server/am/ActivityManagerService;->isSingleton(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;I)Z+]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ActivityManagerService;->isUidActiveLOSP(I)Z+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/ActivityManagerService;->lambda$getPackageProcessState$0([ILjava/lang/String;Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/ActivityManagerService;->maybeSendBootCompletedLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ActivityManagerService;->noteUidProcessState(III)V+]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/stats/pull/StatsPullAtomServiceInternal;Lcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomServiceInternalImpl; -HPLcom/android/server/am/ActivityManagerService;->noteWakeupAlarm(Landroid/content/IIntentSender;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/os/WorkSource;Landroid/os/WorkSource; -HSPLcom/android/server/am/ActivityManagerService;->notifyBroadcastFinishedLocked(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/os/Message;Landroid/os/Message; +HSPLcom/android/server/am/ActivityManagerService;->isSingleton(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;I)Z +HSPLcom/android/server/am/ActivityManagerService;->isUidActiveLOSP(I)Z +HPLcom/android/server/am/ActivityManagerService;->lambda$checkExcessivePowerUsage$20(JJZZLcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActivityManagerService;->lambda$getPackageProcessState$0([ILjava/lang/String;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActivityManagerService;->maybeSendBootCompletedLocked(Lcom/android/server/am/ProcessRecord;Z)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ActivityManagerService;->noteUidProcessState(III)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/stats/pull/StatsPullAtomServiceInternal;Lcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomServiceInternalImpl; HSPLcom/android/server/am/ActivityManagerService;->notifyPackageUse(Ljava/lang/String;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HPLcom/android/server/am/ActivityManagerService;->onProcessFreezableChangedLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/ActivityManagerService;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z -HSPLcom/android/server/am/ActivityManagerService;->publishContentProviders(Landroid/app/IApplicationThread;Ljava/util/List;)V+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->publishService(Landroid/os/IBinder;Landroid/content/Intent;Landroid/os/IBinder;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActivityManagerService;->pushTempAllowlist()V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/am/PendingTempAllowlists;Lcom/android/server/am/PendingTempAllowlists; +HSPLcom/android/server/am/ActivityManagerService;->publishContentProviders(Landroid/app/IApplicationThread;Ljava/util/List;)V+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActivityManagerService;->publishService(Landroid/os/IBinder;Landroid/content/Intent;Landroid/os/IBinder;)V+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/ActivityManagerService;->pushTempAllowlist()V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService; HSPLcom/android/server/am/ActivityManagerService;->refContentProvider(Landroid/os/IBinder;II)Z+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; -HSPLcom/android/server/am/ActivityManagerService;->registerReceiverWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/IntentFilter;Landroid/content/IntentFilter;,Lcom/android/server/am/BroadcastFilter;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/ActivityManagerService$3;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessReceiverRecord;Lcom/android/server/am/ProcessReceiverRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ReceiverList;Lcom/android/server/am/ReceiverList;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/sdksandbox/SdkSandboxManagerLocal;Lcom/android/server/sdksandbox/SdkSandboxManagerService$LocalImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Lcom/android/server/am/ReceiverList;,Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HSPLcom/android/server/am/ActivityManagerService;->registerReceiverWithFeatureTraced(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/ActivityManagerService$3;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HSPLcom/android/server/am/ActivityManagerService;->removeContentProvider(Landroid/os/IBinder;Z)V+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; -HPLcom/android/server/am/ActivityManagerService;->removeReceiverLocked(Lcom/android/server/am/ReceiverList;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/IntentResolver;Lcom/android/server/am/ActivityManagerService$3;]Ljava/util/ArrayList;Lcom/android/server/am/ReceiverList;]Ljava/util/HashMap;Ljava/util/HashMap; -HPLcom/android/server/am/ActivityManagerService;->reportUidFrozenStateChanged([I[I)V+]Landroid/app/IUidFrozenStateChangedCallback;Landroid/app/ActivityManager$1;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList; +HSPLcom/android/server/am/ActivityManagerService;->registerReceiverWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController; +HPLcom/android/server/am/ActivityManagerService;->removeContentProvider(Landroid/os/IBinder;Z)V+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; +HPLcom/android/server/am/ActivityManagerService;->reportUidFrozenStateChanged([I[I)V+]Landroid/app/IUidFrozenStateChangedCallback;Landroid/app/ActivityManager$1;,Landroid/app/ActivityManager$2;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList; HSPLcom/android/server/am/ActivityManagerService;->resetPriorityAfterLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster; HSPLcom/android/server/am/ActivityManagerService;->resetPriorityAfterProcLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster; -HSPLcom/android/server/am/ActivityManagerService;->rotateBroadcastStatsIfNeededLocked()V -HPLcom/android/server/am/ActivityManagerService;->sendIntentSender(Landroid/app/IApplicationThread;Landroid/content/IIntentSender;Landroid/os/IBinder;ILandroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;Ljava/lang/String;Landroid/os/Bundle;)I+]Landroid/content/IIntentSender;Lcom/android/server/pm/PackageManagerShellCommand$LocalIntentReceiver$1;]Lcom/android/server/am/PendingIntentRecord;Lcom/android/server/am/PendingIntentRecord; -HSPLcom/android/server/am/ActivityManagerService;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActivityManagerService;->setProcessTrackerStateLOSP(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/ActivityManagerService;->shouldIgnoreDeliveryGroupPolicy(Ljava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HPLcom/android/server/am/ActivityManagerService;->sendIntentSender(Landroid/app/IApplicationThread;Landroid/content/IIntentSender;Landroid/os/IBinder;ILandroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;Ljava/lang/String;Landroid/os/Bundle;)I+]Landroid/content/IIntentSender;Lcom/android/server/pm/PackageManagerShellCommand$LocalIntentReceiver$1; +HSPLcom/android/server/am/ActivityManagerService;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V +HSPLcom/android/server/am/ActivityManagerService;->setProcessTrackerStateLOSP(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ActivityManagerService;->shouldIgnoreDeliveryGroupPolicy(Ljava/lang/String;)Z HSPLcom/android/server/am/ActivityManagerService;->startAssociationLocked(ILjava/lang/String;IIJLandroid/content/ComponentName;Ljava/lang/String;)Lcom/android/server/am/ActivityManagerService$Association; -HSPLcom/android/server/am/ActivityManagerService;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;I)Landroid/content/ComponentName;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ActivityManagerService;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;I)Landroid/content/ComponentName; +HSPLcom/android/server/am/ActivityManagerService;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ActivityManagerService;->stopAssociationLocked(ILjava/lang/String;IJLandroid/content/ComponentName;Ljava/lang/String;)V HPLcom/android/server/am/ActivityManagerService;->stopService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HPLcom/android/server/am/ActivityManagerService;->stopServiceToken(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z -HSPLcom/android/server/am/ActivityManagerService;->tempAllowlistUidLocked(IJILjava/lang/String;II)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$UiHandler;]Landroid/os/Message;Landroid/os/Message;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;]Lcom/android/server/am/PendingTempAllowlists;Lcom/android/server/am/PendingTempAllowlists; -HSPLcom/android/server/am/ActivityManagerService;->traceBegin(JLjava/lang/String;Ljava/lang/String;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ActivityManagerService;->trimApplicationsLocked(ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessReceiverRecord;Lcom/android/server/am/ProcessReceiverRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->unbindService(Landroid/app/IServiceConnection;)Z+]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices; -HSPLcom/android/server/am/ActivityManagerService;->updateLruProcessLocked(Lcom/android/server/am/ProcessRecord;ZLcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ActivityManagerService;->updateOomAdjLocked(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/ActivityManagerService;->updateOomAdjPendingTargetsLocked(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/ActivityManagerService;->updateProcessForegroundLocked(Lcom/android/server/am/ProcessRecord;ZIZZ)V+]Landroid/app/ActivityManagerInternal$ForegroundServiceStateListener;Lcom/android/server/am/AppFGSTracker;]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ActivityManagerService;->validateAssociationAllowedLocked(Ljava/lang/String;ILjava/lang/String;I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActivityManagerService$PackageAssociationInfo;Lcom/android/server/am/ActivityManagerService$PackageAssociationInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ActivityManagerService;->verifyBroadcastLocked(Landroid/content/Intent;)Landroid/content/Intent;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/ActivityManagerService;->tempAllowlistUidLocked(IJILjava/lang/String;II)V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; +HSPLcom/android/server/am/ActivityManagerService;->traceBegin(JLjava/lang/String;Ljava/lang/String;)V +HSPLcom/android/server/am/ActivityManagerService;->trimApplicationsLocked(ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActivityManagerService;->unbindService(Landroid/app/IServiceConnection;)Z +HSPLcom/android/server/am/ActivityManagerService;->updateLruProcessLocked(Lcom/android/server/am/ProcessRecord;ZLcom/android/server/am/ProcessRecord;)V +HSPLcom/android/server/am/ActivityManagerService;->updateOomAdjLocked(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/ActivityManagerService;->updateOomAdjPendingTargetsLocked(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/ActivityManagerService;->updateProcessForegroundLocked(Lcom/android/server/am/ProcessRecord;ZIZZ)V+]Landroid/app/ActivityManagerInternal$ForegroundServiceStateListener;Lcom/android/server/am/AppFGSTracker;]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ActivityManagerService;->validateAssociationAllowedLocked(Ljava/lang/String;ILjava/lang/String;I)Z HSPLcom/android/server/am/AppBindRecord;-><init>(Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/IntentBindRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)V -HSPLcom/android/server/am/AppBindServiceEventsTracker;->onBindingService(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStatePolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; -HSPLcom/android/server/am/AppBroadcastEventsTracker;->onSendingBroadcast(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStatePolicy;Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker;Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; +HSPLcom/android/server/am/AppBindServiceEventsTracker;->onBindingService(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; +HSPLcom/android/server/am/AppBroadcastEventsTracker;->onSendingBroadcast(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; HSPLcom/android/server/am/AppErrors;->isBadProcess(Ljava/lang/String;I)Z+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap; -HSPLcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->addInfoLocked(Landroid/util/SparseArray;Landroid/app/ApplicationExitInfo;)V+]Landroid/app/ApplicationExitInfo;Landroid/app/ApplicationExitInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/io/File;Ljava/io/File; -HSPLcom/android/server/am/AppExitInfoTracker$KillHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/AppExitInfoTracker$AppExitInfoExternalSource;Lcom/android/server/am/AppExitInfoTracker$AppExitInfoExternalSource;]Lcom/android/server/am/AppExitInfoTracker;Lcom/android/server/am/AppExitInfoTracker; -HSPLcom/android/server/am/AppExitInfoTracker;->forEachPackageLocked(Ljava/util/function/BiFunction;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/function/BiFunction;Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda0;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda14;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda17;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda8; -HSPLcom/android/server/am/AppExitInfoTracker;->getExitInfo(Ljava/lang/String;IIILjava/util/ArrayList;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;]Lcom/android/server/am/AppExitInfoTracker;Lcom/android/server/am/AppExitInfoTracker;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/AppExitInfoTracker;->handleNoteProcessDiedLocked(Landroid/app/ApplicationExitInfo;)V -HSPLcom/android/server/am/AppExitInfoTracker;->lambda$getExitInfo$3(ILjava/util/ArrayList;ILjava/lang/String;Landroid/util/SparseArray;)Ljava/lang/Integer;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/AppExitInfoTracker;->lambda$updateExitInfoIfNecessaryLocked$2(ILjava/util/ArrayList;ILjava/lang/Integer;Ljava/lang/Integer;Ljava/lang/String;Landroid/util/SparseArray;)Ljava/lang/Integer;+]Landroid/app/ApplicationExitInfo;Landroid/app/ApplicationExitInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;Lcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;]Lcom/android/server/am/AppExitInfoTracker;Lcom/android/server/am/AppExitInfoTracker;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->addExitInfoLocked(Landroid/app/ApplicationExitInfo;)V+]Ljava/io/File;Ljava/io/File;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->getExitInfosLocked(IILjava/util/List;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->writeToProto(Landroid/util/proto/ProtoOutputStream;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppExitInfoTracker$KillHandler;->handleMessage(Landroid/os/Message;)V +HSPLcom/android/server/am/AppExitInfoTracker;->forEachPackageLocked(Ljava/util/function/BiFunction;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/function/BiFunction;Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda0;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda10;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda14;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda16;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda17;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda6;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda8; +HSPLcom/android/server/am/AppExitInfoTracker;->getExitInfo(Ljava/lang/String;IIILjava/util/List;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppExitInfoTracker;->lambda$getExitInfo$3(IILjava/util/List;Ljava/lang/String;Landroid/util/SparseArray;)Ljava/lang/Integer;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/AppExitInfoTracker;->lambda$updateExitInfoIfNecessaryLocked$2(II[ZLjava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Long;Ljava/lang/String;Landroid/util/SparseArray;)Ljava/lang/Integer;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/AppExitInfoTracker;->obtainRawRecord(Lcom/android/server/am/ProcessRecord;J)Landroid/app/ApplicationExitInfo;+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/AppFGSTracker;->hasForegroundServices(Ljava/lang/String;I)Z+]Lcom/android/server/am/AppFGSTracker$PackageDurations;Lcom/android/server/am/AppFGSTracker$PackageDurations;]Lcom/android/server/am/UidProcessMap;Lcom/android/server/am/UidProcessMap; HPLcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState;-><init>(Lcom/android/server/am/AppPermissionTracker;ILjava/lang/String;I)V+]Lcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState;Lcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState; HPLcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState;->updateAppOps()V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/internal/app/IAppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; -HPLcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState;->updatePermissionState()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; +HPLcom/android/server/am/AppPermissionTracker$UidGrantedPermissionState;->updatePermissionState()V+]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector; HPLcom/android/server/am/AppPermissionTracker;->handlePermissionsInit()V HSPLcom/android/server/am/AppProfiler$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V -HSPLcom/android/server/am/AppProfiler$CachedAppsWatermarkData;->updateCachedAppsHighWatermarkIfNecessaryLocked(IJ)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/os/Message;Landroid/os/Message; -HSPLcom/android/server/am/AppProfiler$CachedAppsWatermarkData;->updateCachedAppsSnapshot(J)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/am/AppProfiler$CachedAppsWatermarkData;->lambda$updateCachedAppsSnapshot$0(JLcom/android/server/am/ProcessRecord;)V +HSPLcom/android/server/am/AppProfiler$CachedAppsWatermarkData;->updateCachedAppsHighWatermarkIfNecessaryLocked(IJ)V +HPLcom/android/server/am/AppProfiler$CachedAppsWatermarkData;->updateCachedAppsSnapshot(J)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/am/AppProfiler;->collectRssInBackground()V+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/am/AppProfiler;->getCpuDelayTimeForPid(I)J+]Lcom/android/internal/os/ProcessCpuTracker;Lcom/android/internal/os/ProcessCpuTracker; -HPLcom/android/server/am/AppProfiler;->isProfilingPss()Z -HSPLcom/android/server/am/AppProfiler;->lambda$updateLowMemStateLSP$3(Lcom/android/server/am/ProcessRecord;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HPLcom/android/server/am/AppProfiler;->requestPssLPf(Lcom/android/server/am/ProcessProfileRecord;I)Z+]Landroid/os/Handler;Lcom/android/server/am/AppProfiler$BgHandler;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppProfiler;->lambda$updateLowMemStateLSP$3(Lcom/android/server/am/ProcessRecord;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/AppProfiler;->requestPssLPf(Lcom/android/server/am/ProcessProfileRecord;I)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/AppProfiler;->setupProfilerInfoLocked(Landroid/app/IApplicationThread;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ActiveInstrumentation;)Landroid/app/ProfilerInfo;+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/AppProfiler$ProfileData;Lcom/android/server/am/AppProfiler$ProfileData;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/AppProfiler;->updateCpuStatsNow()V+]Lcom/android/internal/os/ProcessCpuTracker;Lcom/android/internal/os/ProcessCpuTracker;]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/BatteryStatsService;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/am/PhantomProcessList;Lcom/android/server/am/PhantomProcessList;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean;]Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong; +HSPLcom/android/server/am/AppProfiler;->updateCpuStatsNow()V+]Lcom/android/internal/os/ProcessCpuTracker;Lcom/android/internal/os/ProcessCpuTracker;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/am/AppProfiler;->updateLowMemStateLSP(IIIJ)V+]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/am/AppProfiler;->updateNextPssTimeLPf(ILcom/android/server/am/ProcessProfileRecord;JZ)V+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/am/AppRestrictionController$BgHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/am/AppRestrictionController$RestrictionSettings;Lcom/android/server/am/AppRestrictionController$RestrictionSettings;]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; +HSPLcom/android/server/am/AppProfiler;->updateNextPssTimeLPf(ILcom/android/server/am/ProcessProfileRecord;JZ)V+]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +HSPLcom/android/server/am/AppRestrictionController$BgHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector; +HSPLcom/android/server/am/AppRestrictionController$Injector;->getActivityManagerService()Lcom/android/server/am/ActivityManagerService; +HSPLcom/android/server/am/AppRestrictionController$Injector;->getAppFGSTracker()Lcom/android/server/am/AppFGSTracker; HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings$PkgSettings;->update(III)I -HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->forEachPackageInUidLocked(ILcom/android/internal/util/function/TriConsumer;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/internal/util/function/TriConsumer;Lcom/android/server/am/AppRestrictionController$$ExternalSyntheticLambda3; -HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->getRestrictionLevel(I)I+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/am/AppRestrictionController$RestrictionSettings$PkgSettings;Lcom/android/server/am/AppRestrictionController$RestrictionSettings$PkgSettings; +HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->getRestrictionLevel(I)I+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->loadOneFromXml(Lcom/android/modules/utils/TypedXmlPullParser;J[JZ)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/am/AppRestrictionController;->applyRestrictionLevel(Ljava/lang/String;IILcom/android/server/am/AppRestrictionController$TrackerInfo;IZII)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/am/AppRestrictionController;->calcAppRestrictionLevel(IILjava/lang/String;IZZ)Landroid/util/Pair;+]Lcom/android/server/AppStateTracker;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/apphibernation/AppHibernationManagerInternal;Lcom/android/server/apphibernation/AppHibernationService$LocalService; -HSPLcom/android/server/am/AppRestrictionController;->getBackgroundRestrictionExemptionReason(I)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; -HSPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(I)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; -HPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(ILjava/lang/String;)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Ljava/util/Set;Ljava/util/Collections$EmptySet; -HPLcom/android/server/am/AppRestrictionController;->getPotentialUserAllowedExemptionReason(ILjava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; -HSPLcom/android/server/am/AppRestrictionController;->isBgAutoRestrictedBucketFeatureFlagEnabled()Z -HPLcom/android/server/am/AppRestrictionController;->isCarrierApp(Ljava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/am/AppRestrictionController;->isOnSystemDeviceIdleAllowlist(I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HPLcom/android/server/am/AppRestrictionController;->isRoleHeldByUid(Ljava/lang/String;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/AppRestrictionController;->isSystemModule(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Ljava/io/File;Ljava/io/File;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLcom/android/server/am/AppRestrictionController;->refreshAppRestrictionLevelForUser(III)V +HSPLcom/android/server/am/AppRestrictionController;->getBackgroundRestrictionExemptionReason(I)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector; +HSPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(I)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HSPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(ILjava/lang/String;)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Ljava/util/Set;Ljava/util/Collections$EmptySet; +HSPLcom/android/server/am/AppRestrictionController;->getPotentialUserAllowedExemptionReason(ILjava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector; +HSPLcom/android/server/am/AppRestrictionController;->isCarrierApp(Ljava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; +HSPLcom/android/server/am/AppRestrictionController;->isOnDeviceIdleAllowlist(I)Z +HSPLcom/android/server/am/AppRestrictionController;->isOnSystemDeviceIdleAllowlist(I)Z +HSPLcom/android/server/am/AppRestrictionController;->isSystemModule(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Ljava/io/File;Ljava/io/File;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->addStartInfoLocked(Landroid/app/ApplicationStartInfo;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->addTimestampToStartLocked(IJ)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->isAddTimestampAllowed(Landroid/app/ApplicationStartInfo;IJ)Z +HPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->writeToProto(Landroid/util/proto/ProtoOutputStream;J)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/AppStartInfoTracker;->addBaseFieldsFromProcessRecord(Landroid/app/ApplicationStartInfo;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/AppStartInfoTracker;->addStartInfoLocked(Landroid/app/ApplicationStartInfo;)Landroid/app/ApplicationStartInfo;+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap; +HSPLcom/android/server/am/AppStartInfoTracker;->addTimestampToStart(Ljava/lang/String;IJI)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap; +HSPLcom/android/server/am/ApplicationThreadDeferred;-><init>(Landroid/app/IApplicationThread;Z)V +HSPLcom/android/server/am/ApplicationThreadDeferred;->asBinder()Landroid/os/IBinder;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy; HSPLcom/android/server/am/BaseAppStateEventsTracker$BaseAppStateEventsPolicy;->getMaxTrackingDuration()J -HSPLcom/android/server/am/BaseAppStateEventsTracker;->isUidOnTop(I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/BaseAppStateEventsTracker;->isUidOnTop(I)Z HSPLcom/android/server/am/BaseAppStatePolicy;->isEnabled()Z -HSPLcom/android/server/am/BaseAppStatePolicy;->shouldExemptUid(I)I+]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController; -HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->addEvent(JI)V+]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/LinkedList;Ljava/util/LinkedList; -HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->getTotalEventsSince(JJI)I+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/Iterator;Ljava/util/LinkedList$DescendingIterator;]Ljava/util/LinkedList;Ljava/util/LinkedList; -HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->trimEvents(JI)V+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList; -HPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->getNumOfEventsThreshold()I -HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->shouldExempt(Ljava/lang/String;I)I+]Lcom/android/server/am/AppRestrictionController;Lcom/android/server/am/AppRestrictionController;]Lcom/android/server/am/BaseAppStateEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStatePolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy; +HSPLcom/android/server/am/BaseAppStatePolicy;->shouldExemptUid(I)I +HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->addEvent(JI)V+]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList; +HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->getTotalEventsSince(JJI)I+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/Iterator;Ljava/util/LinkedList$DescendingIterator;]Ljava/util/LinkedList;Ljava/util/LinkedList; +HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->trimEvents(JI)V+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList; +HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->getNumOfEventsThreshold()I +HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->shouldExempt(Ljava/lang/String;I)I+]Lcom/android/server/am/BaseAppStateEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStatePolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy; HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$H;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker; HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker;->handleNewEvent(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStateEvents$Factory;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector;]Lcom/android/server/am/UidProcessMap;Lcom/android/server/am/UidProcessMap; +HSPLcom/android/server/am/BaseAppStateTracker$Injector;->getPolicy()Lcom/android/server/am/BaseAppStatePolicy; HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda11;-><init>(Lcom/android/server/am/BatteryStatsService;IIIIIIIIJJJJ)V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda11;->run()V -HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda19;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda19;->run()V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/am/BatteryStatsService;IILjava/lang/String;Ljava/lang/String;IZJJ)V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda1;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda20;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda20;->run()V -HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda32;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;ILandroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda32;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda35;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda38;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda38;->run()V -HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V -HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;->run()V -HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda61;-><init>(Lcom/android/server/am/BatteryStatsService;Ljava/lang/String;Landroid/os/WorkSource;IJJ)V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda37;->run()V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;->run()V HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda61;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda76;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;IJJ)V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda67;->run()V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda76;->run()V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda79;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda96;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda96;->run()V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda98;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V -HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda98;->run()V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda97;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda97;->run()V +HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda99;->run()V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda9;-><init>(Lcom/android/server/am/BatteryStatsService;IILjava/lang/String;Ljava/lang/String;IJJ)V HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda9;->run()V +HPLcom/android/server/am/BatteryStatsService$StatsPerUidLogger;->addStatsForPowerComponent(Ljava/util/List;Lcom/android/server/am/BatteryStatsService$StatsPerUidLogger$SessionInfo;IIFJLandroid/os/BatteryConsumer;I)Z+]Landroid/os/BatteryConsumer;Landroid/os/AggregateBatteryConsumer;,Landroid/os/UidBatteryConsumer; +HPLcom/android/server/am/BatteryStatsService$StatsPerUidLogger;->logStats(Landroid/os/BatteryUsageStats;Ljava/util/List;)I+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/am/BatteryStatsService$WakeupReasonThread;->run()V -HSPLcom/android/server/am/BatteryStatsService$WakeupReasonThread;->waitWakeup()Ljava/lang/String;+]Ljava/nio/ByteBuffer;Ljava/nio/DirectByteBuffer;]Ljava/nio/CharBuffer;Ljava/nio/HeapCharBuffer;]Ljava/nio/charset/CharsetDecoder;Lcom/android/icu/charset/CharsetDecoderICU; -HPLcom/android/server/am/BatteryStatsService;->awaitCompletion()V+]Landroid/os/Handler;Landroid/os/Handler;]Ljava/util/concurrent/CountDownLatch;Ljava/util/concurrent/CountDownLatch; -HSPLcom/android/server/am/BatteryStatsService;->fillLowPowerStats(Lcom/android/internal/os/RpmStats;)V+]Landroid/power/PowerStatsInternal;Lcom/android/server/powerstats/PowerStatsService$LocalService;]Lcom/android/internal/os/RpmStats$PowerStateSubsystem;Lcom/android/internal/os/RpmStats$PowerStateSubsystem;]Lcom/android/internal/os/RpmStats;Lcom/android/internal/os/RpmStats;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStartLaunch$105(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStartRunning$103(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStopLaunch$106(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStartWakelock$23(IILjava/lang/String;Ljava/lang/String;IZJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStartWakelockFromSource$25(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStopWakelock$24(IILjava/lang/String;Ljava/lang/String;IJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStopWakelockFromSource$27(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/am/BatteryStatsService;->lambda$noteUidProcessState$13(IIJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/wakeups/CpuWakeupStats;Lcom/android/server/power/stats/wakeups/CpuWakeupStats; +HSPLcom/android/server/am/BatteryStatsService$WakeupReasonThread;->waitWakeup()Ljava/lang/String;+]Ljava/nio/ByteBuffer;Ljava/nio/DirectByteBuffer;]Ljava/nio/CharBuffer;Ljava/nio/HeapCharBuffer; +HSPLcom/android/server/am/BatteryStatsService;->fillLowPowerStats(Lcom/android/internal/os/RpmStats;)V+]Landroid/power/PowerStatsInternal;Lcom/android/server/powerstats/PowerStatsService$LocalService;]Lcom/android/internal/os/RpmStats$PowerStateSubsystem;Lcom/android/internal/os/RpmStats$PowerStateSubsystem;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; HPLcom/android/server/am/BatteryStatsService;->monitor()V -HPLcom/android/server/am/BatteryStatsService;->noteAlarmFinish(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteAlarmStart(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/Handler;Landroid/os/Handler; +HPLcom/android/server/am/BatteryStatsService;->noteAlarmFinish(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl; +HPLcom/android/server/am/BatteryStatsService;->noteAlarmStart(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl; HPLcom/android/server/am/BatteryStatsService;->noteChangeWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;ILandroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZ)V HSPLcom/android/server/am/BatteryStatsService;->noteEvent(ILjava/lang/String;I)V -HPLcom/android/server/am/BatteryStatsService;->noteJobFinish(Ljava/lang/String;II)V +HSPLcom/android/server/am/BatteryStatsService;->noteJobFinish(Ljava/lang/String;II)V HSPLcom/android/server/am/BatteryStatsService;->noteJobStart(Ljava/lang/String;I)V -HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartLaunch(ILjava/lang/String;Ljava/lang/String;)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartRunning(ILjava/lang/String;Ljava/lang/String;)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteServiceStopLaunch(ILjava/lang/String;Ljava/lang/String;)V+]Landroid/os/Handler;Landroid/os/Handler; +HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartLaunch(ILjava/lang/String;Ljava/lang/String;)V +HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartRunning(ILjava/lang/String;Ljava/lang/String;)V +HSPLcom/android/server/am/BatteryStatsService;->noteServiceStopLaunch(ILjava/lang/String;Ljava/lang/String;)V HPLcom/android/server/am/BatteryStatsService;->noteServiceStopRunning(ILjava/lang/String;Ljava/lang/String;)V -HSPLcom/android/server/am/BatteryStatsService;->noteStartSensor(II)V -HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelock(IILjava/lang/String;Ljava/lang/String;IZ)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZ)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteStopSensor(II)V -HSPLcom/android/server/am/BatteryStatsService;->noteStopWakelock(IILjava/lang/String;Ljava/lang/String;I)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteStopWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;I)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BatteryStatsService;->noteUidProcessState(II)V+]Landroid/os/Handler;Landroid/os/Handler; +HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelock(IILjava/lang/String;Ljava/lang/String;IZ)V +HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZ)V +HSPLcom/android/server/am/BatteryStatsService;->noteStopWakelock(IILjava/lang/String;Ljava/lang/String;I)V +HSPLcom/android/server/am/BatteryStatsService;->noteStopWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;I)V +HSPLcom/android/server/am/BatteryStatsService;->noteUidProcessState(II)V HPLcom/android/server/am/BatteryStatsService;->noteWakupAlarm(Ljava/lang/String;ILandroid/os/WorkSource;Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/am/BatteryStatsService;->setBatteryState(IIIIIIIIJ)V+]Landroid/os/Handler;Landroid/os/Handler; +HSPLcom/android/server/am/BatteryStatsService;->setBatteryState(IIIIIIIIJ)V +HSPLcom/android/server/am/BroadcastController$1;->allowFilterResult(Lcom/android/server/am/BroadcastFilter;Ljava/util/List;)Z+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastController$1;->allowFilterResult(Ljava/lang/Object;Ljava/util/List;)Z+]Lcom/android/server/am/BroadcastController$1;Lcom/android/server/am/BroadcastController$1; +HSPLcom/android/server/am/BroadcastController$1;->getIntentFilter(Lcom/android/server/am/BroadcastFilter;)Landroid/content/IntentFilter; +HSPLcom/android/server/am/BroadcastController$1;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter;+]Lcom/android/server/am/BroadcastController$1;Lcom/android/server/am/BroadcastController$1; +HSPLcom/android/server/am/BroadcastController$1;->isPackageForFilter(Ljava/lang/String;Lcom/android/server/am/BroadcastFilter;)Z +HSPLcom/android/server/am/BroadcastController$1;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z+]Lcom/android/server/am/BroadcastController$1;Lcom/android/server/am/BroadcastController$1; +HSPLcom/android/server/am/BroadcastController$1;->newResult(Lcom/android/server/pm/Computer;Lcom/android/server/am/BroadcastFilter;IIJ)Lcom/android/server/am/BroadcastFilter; +HSPLcom/android/server/am/BroadcastController$1;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object;+]Lcom/android/server/am/BroadcastController$1;Lcom/android/server/am/BroadcastController$1; +HSPLcom/android/server/am/BroadcastController$StickyBroadcast;->create(Landroid/content/Intent;ZIILjava/lang/String;)Lcom/android/server/am/BroadcastController$StickyBroadcast; +HSPLcom/android/server/am/BroadcastController;->broadcastIntentLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;)I +HSPLcom/android/server/am/BroadcastController;->broadcastIntentLockedTraced(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/app/BroadcastOptions;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;Lcom/android/server/am/BroadcastSentEventRecord;)I+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;megamorphic_types]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/net/Uri;Landroid/net/Uri$OpaqueUri;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastController;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController; +HSPLcom/android/server/am/BroadcastController;->checkBroadcastFromSystem(Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;IZLjava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastController;->collectReceiverComponents(Landroid/content/Intent;Ljava/lang/String;II[I[I)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/am/BroadcastController;->enforceBroadcastOptionPermissionsInternal(Landroid/os/Bundle;I)V +HSPLcom/android/server/am/BroadcastController;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl; +HSPLcom/android/server/am/BroadcastController;->getBackgroundLaunchBroadcasts()Landroid/util/ArraySet; +HSPLcom/android/server/am/BroadcastController;->getRealProcessStateLocked(Lcom/android/server/am/ProcessRecord;I)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastController;->getRealUidStateLocked(Lcom/android/server/am/ProcessRecord;I)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastController;->isInstantApp(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;I)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/am/BroadcastController;->notifyBroadcastFinishedLocked(Lcom/android/server/am/BroadcastRecord;)V +HSPLcom/android/server/am/BroadcastController;->registerReceiverWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent; +HSPLcom/android/server/am/BroadcastController;->registerReceiverWithFeatureTraced(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; +HPLcom/android/server/am/BroadcastController;->removeReceiverLocked(Lcom/android/server/am/ReceiverList;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/BroadcastController;->rotateBroadcastStatsIfNeededLocked()V +HSPLcom/android/server/am/BroadcastController;->traceBroadcastIntentBegin(Landroid/content/Intent;Landroid/content/IIntentReceiver;ZZIII)I+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/BroadcastController;->traceBroadcastIntentEnd(I)V +HSPLcom/android/server/am/BroadcastController;->traceRegistrationBegin(Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;I)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy; +HPLcom/android/server/am/BroadcastController;->traceUnregistrationBegin(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy; +HPLcom/android/server/am/BroadcastController;->unregisterReceiverTraced(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/BroadcastController;->verifyBroadcastLocked(Landroid/content/Intent;)Landroid/content/Intent;+]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/BroadcastFilter;-><init>(Landroid/content/IntentFilter;Lcom/android/server/am/ReceiverList;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IIZZZ)V -HSPLcom/android/server/am/BroadcastHistory;->addBroadcastToHistoryLocked(Lcom/android/server/am/BroadcastRecord;)V+]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; +HSPLcom/android/server/am/BroadcastHistory;->addBroadcastToHistoryLocked(Lcom/android/server/am/BroadcastRecord;)V HSPLcom/android/server/am/BroadcastHistory;->onBroadcastEnqueuedLocked(Lcom/android/server/am/BroadcastRecord;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/BroadcastHistory;->onBroadcastFinishedLocked(Lcom/android/server/am/BroadcastRecord;)V+]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastLoopers;->addMyLooper()V+]Landroid/os/Looper;Landroid/os/Looper;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/BroadcastLoopers;->addMyLooper()V HSPLcom/android/server/am/BroadcastProcessQueue;-><init>(Lcom/android/server/am/BroadcastConstants;Ljava/lang/String;I)V -HSPLcom/android/server/am/BroadcastProcessQueue;->assertHealthLocked(Ljava/util/ArrayDeque;)V+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DescendingIterator; -HSPLcom/android/server/am/BroadcastProcessQueue;->enqueueOrReplaceBroadcast(Lcom/android/server/am/BroadcastRecord;ILcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;)Lcom/android/server/am/BroadcastRecord;+]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda15;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/am/BroadcastProcessQueue;->forEachMatchingBroadcast(Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->forEachMatchingBroadcastInQueue(Ljava/util/ArrayDeque;Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z+]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;megamorphic_types]Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;megamorphic_types]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DeqIterator; +HSPLcom/android/server/am/BroadcastProcessQueue;->assertHealthLocked()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; +HSPLcom/android/server/am/BroadcastProcessQueue;->assertHealthLocked(Ljava/util/ArrayDeque;)V+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DescendingIterator; +HSPLcom/android/server/am/BroadcastProcessQueue;->enqueueOrReplaceBroadcast(Lcom/android/server/am/BroadcastRecord;ILcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;)Lcom/android/server/am/BroadcastRecord;+]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda15;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/am/BroadcastProcessQueue;->forEachMatchingBroadcast(Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z +HSPLcom/android/server/am/BroadcastProcessQueue;->forEachMatchingBroadcastInQueue(Ljava/util/ArrayDeque;Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z+]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda13;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda14;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda15;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda16;]Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;megamorphic_types]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DeqIterator; HSPLcom/android/server/am/BroadcastProcessQueue;->getActive()Lcom/android/server/am/BroadcastRecord; HSPLcom/android/server/am/BroadcastProcessQueue;->getActiveCountSinceIdle()I +HSPLcom/android/server/am/BroadcastProcessQueue;->getActiveFirstLaunch()Z HSPLcom/android/server/am/BroadcastProcessQueue;->getActiveIndex()I HSPLcom/android/server/am/BroadcastProcessQueue;->getActiveViaColdStart()Z HSPLcom/android/server/am/BroadcastProcessQueue;->getActiveWasStopped()Z -HSPLcom/android/server/am/BroadcastProcessQueue;->getPreferredSchedulingGroupLocked()I+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->getQueueForBroadcast(Lcom/android/server/am/BroadcastRecord;)Ljava/util/ArrayDeque;+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; +HSPLcom/android/server/am/BroadcastProcessQueue;->getPreferredSchedulingGroupLocked()I +HSPLcom/android/server/am/BroadcastProcessQueue;->getQueueForBroadcast(Lcom/android/server/am/BroadcastRecord;)Ljava/util/ArrayDeque; HSPLcom/android/server/am/BroadcastProcessQueue;->getRunnableAt()J+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->insertIntoRunnableList(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;)Lcom/android/server/am/BroadcastProcessQueue;+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->invalidateRunnableAt()V @@ -637,96 +626,98 @@ HSPLcom/android/server/am/BroadcastProcessQueue;->isActive()Z HSPLcom/android/server/am/BroadcastProcessQueue;->isEmpty()Z+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; HSPLcom/android/server/am/BroadcastProcessQueue;->isPendingManifest()Z HSPLcom/android/server/am/BroadcastProcessQueue;->isProcessWarm()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/BroadcastProcessQueue;->isQueueEmpty(Ljava/util/ArrayDeque;)Z+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; HSPLcom/android/server/am/BroadcastProcessQueue;->isRunnable()Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->makeActiveIdle()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->makeActiveNextPending()V+]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; -HSPLcom/android/server/am/BroadcastProcessQueue;->onBroadcastDequeued(Lcom/android/server/am/BroadcastRecord;I)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastProcessQueue;->onBroadcastEnqueued(Lcom/android/server/am/BroadcastRecord;I)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastProcessQueue;->makeActiveNextPending()V +HSPLcom/android/server/am/BroadcastProcessQueue;->onBroadcastDequeued(Lcom/android/server/am/BroadcastRecord;I)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastProcessQueue;->onBroadcastEnqueued(Lcom/android/server/am/BroadcastRecord;I)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/am/BroadcastProcessQueue;->peekNextBroadcast()Lcom/android/internal/os/SomeArgs;+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HPLcom/android/server/am/BroadcastProcessQueue;->peekNextBroadcastRecord()Lcom/android/server/am/BroadcastRecord;+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/am/BroadcastProcessQueue;->queueForNextBroadcast()Ljava/util/ArrayDeque;+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->queueForNextBroadcast(Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;II)Ljava/util/ArrayDeque;+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/am/BroadcastProcessQueue;->queueForNextBroadcast()Ljava/util/ArrayDeque; +HSPLcom/android/server/am/BroadcastProcessQueue;->queueForNextBroadcast(Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;II)Ljava/util/ArrayDeque;+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; HSPLcom/android/server/am/BroadcastProcessQueue;->removeFromRunnableList(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;)Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->removeNextBroadcast()Lcom/android/internal/os/SomeArgs;+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/am/BroadcastProcessQueue;->setProcessAndUidState(Lcom/android/server/am/ProcessRecord;ZZ)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastProcessQueue;->setActiveFirstLaunch(Z)V +HSPLcom/android/server/am/BroadcastProcessQueue;->setActiveWasStopped(Z)V +HSPLcom/android/server/am/BroadcastProcessQueue;->setProcessAndUidState(Lcom/android/server/am/ProcessRecord;ZZ)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/BroadcastProcessQueue;->setTimeoutScheduled(Z)V HSPLcom/android/server/am/BroadcastProcessQueue;->shouldBeDeferred()Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->timeoutScheduled()Z -HSPLcom/android/server/am/BroadcastProcessQueue;->toShortString()Ljava/lang/String;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/BroadcastProcessQueue;->traceActiveBegin()V+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/BroadcastProcessQueue;->toShortString()Ljava/lang/String;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastProcessQueue;->traceActiveBegin()V+]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->traceActiveEnd()V+]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->traceProcessEnd()V+]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->traceProcessRunningBegin()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/BroadcastProcessQueue;->traceProcessRunningBegin()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/lang/Object;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastProcessQueue;->updateDeferredStates(Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastProcessQueue;->updateRunnableAt()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/am/BroadcastQueue;->traceBegin(Ljava/lang/String;)I+]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/am/BroadcastProcessQueue;->updateRunnableAt()V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/am/BroadcastQueue;->traceBegin(Ljava/lang/String;)I HSPLcom/android/server/am/BroadcastQueue;->traceEnd(I)V HSPLcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda12;->handleMessage(Landroid/os/Message;)Z HSPLcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda19;->test(Lcom/android/server/am/BroadcastRecord;I)Z HSPLcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda6;->test(Ljava/lang/Object;)Z -HSPLcom/android/server/am/BroadcastQueueModernImpl;->applyDeliveryGroupPolicy(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->assertHealthLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->applyDeliveryGroupPolicy(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->assertHealthLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastQueueModernImpl;->cancelDeliveryTimeoutLocked(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer; HSPLcom/android/server/am/BroadcastQueueModernImpl;->checkAndRemoveWaitingFor()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->checkPendingColdStartValidityLocked()V+]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->demoteFromRunningLocked(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->dispatchReceivers(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastRecord;I)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/SameProcessApplicationThread;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->enqueueBroadcastLocked(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->enqueueUpdateRunningList()V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->finishReceiverActiveLocked(Lcom/android/server/am/BroadcastProcessQueue;ILjava/lang/String;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->finishReceiverLocked(Lcom/android/server/am/ProcessRecord;ILjava/lang/String;Landroid/os/Bundle;ZZ)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->forEachMatchingBroadcast(Ljava/util/function/Predicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/util/function/Predicate;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda2;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda5;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda6; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->getOrCreateProcessQueue(Ljava/lang/String;I)Lcom/android/server/am/BroadcastProcessQueue;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->checkPendingColdStartValidityLocked()V +HSPLcom/android/server/am/BroadcastQueueModernImpl;->demoteFromRunningLocked(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->dispatchReceivers(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastRecord;I)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;,Lcom/android/server/am/SameProcessApplicationThread;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->enqueueBroadcastLocked(Lcom/android/server/am/BroadcastRecord;)V+]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->enqueueUpdateRunningList()V +HSPLcom/android/server/am/BroadcastQueueModernImpl;->finishReceiverActiveLocked(Lcom/android/server/am/BroadcastProcessQueue;ILjava/lang/String;)V+]Lcom/android/internal/os/TimeoutRecord;Lcom/android/internal/os/TimeoutRecord;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->finishReceiverLocked(Lcom/android/server/am/ProcessRecord;ILjava/lang/String;Landroid/os/Bundle;ZZ)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->forEachMatchingBroadcast(Ljava/util/function/Predicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate;Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/function/Predicate;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda2;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda5;,Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda6; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->getOrCreateProcessQueue(Ljava/lang/String;I)Lcom/android/server/am/BroadcastProcessQueue;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/BroadcastQueueModernImpl;->getPreferredSchedulingGroupLocked(Lcom/android/server/am/ProcessRecord;)I+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/BroadcastQueueModernImpl;->getProcessQueue(Lcom/android/server/am/ProcessRecord;)Lcom/android/server/am/BroadcastProcessQueue;+]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/BroadcastQueueModernImpl;->getProcessQueue(Ljava/lang/String;I)Lcom/android/server/am/BroadcastProcessQueue;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/BroadcastQueueModernImpl;->getRecordsLookupCache()Landroid/util/ArrayMap; HSPLcom/android/server/am/BroadcastQueueModernImpl;->getRunningIndexOf(Lcom/android/server/am/BroadcastProcessQueue;)I HSPLcom/android/server/am/BroadcastQueueModernImpl;->getRunningSize()I -HSPLcom/android/server/am/BroadcastQueueModernImpl;->handleProcessFreezableChanged(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->getRunningUrgentCount()I+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; +HPLcom/android/server/am/BroadcastQueueModernImpl;->handleProcessFreezableChanged(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/BroadcastQueueModernImpl;->isPendingColdStartValid()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->isProcessFreezable(Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->lambda$applyDeliveryGroupPolicy$3(Lcom/android/server/am/BroadcastRecord;Landroid/util/ArrayMap;Lcom/android/server/am/BroadcastRecord;I)Z+]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->lambda$new$0(Landroid/os/Message;)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->isProcessFreezable(Lcom/android/server/am/ProcessRecord;)Z +HSPLcom/android/server/am/BroadcastQueueModernImpl;->lambda$applyDeliveryGroupPolicy$3(Lcom/android/server/am/BroadcastRecord;Landroid/util/ArrayMap;Lcom/android/server/am/BroadcastRecord;I)Z+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->lambda$new$0(Landroid/os/Message;)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/BroadcastQueueModernImpl;->logBootCompletedBroadcastCompletionLatencyIfPossible(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->logBroadcastDeliveryEventReported(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;ILjava/lang/Object;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyFinishBroadcast(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->logBroadcastDeliveryEventReported(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;ILjava/lang/Object;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyFinishBroadcast(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/BroadcastHistory;Lcom/android/server/am/BroadcastHistory;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyFinishReceiver(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;ILjava/lang/Object;)V+]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyScheduleReceiver(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;Landroid/content/pm/ResolveInfo;)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyScheduleRegisteredReceiver(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastFilter;)V+]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyStartedRunning(Lcom/android/server/am/BroadcastProcessQueue;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessReceiverRecord;Lcom/android/server/am/ProcessReceiverRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyScheduleReceiver(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;Landroid/content/pm/ResolveInfo;)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyScheduleRegisteredReceiver(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastFilter;)V +HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyStartedRunning(Lcom/android/server/am/BroadcastProcessQueue;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/BroadcastQueueModernImpl;->notifyStoppedRunning(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->onProcessFreezableChangedLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/os/Message;Landroid/os/Message; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->promoteToRunningLocked(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/am/BroadcastQueueModernImpl;->onProcessFreezableChangedLocked(Lcom/android/server/am/ProcessRecord;)V +HSPLcom/android/server/am/BroadcastQueueModernImpl;->promoteToRunningLocked(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; HSPLcom/android/server/am/BroadcastQueueModernImpl;->reportUsageStatsBroadcastDispatched(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleReceiverColdLocked(Lcom/android/server/am/BroadcastProcessQueue;)Z+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleReceiverWarmLocked(Lcom/android/server/am/BroadcastProcessQueue;)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleResultTo(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/SameProcessApplicationThread;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->setDeliveryState(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;ILjava/lang/Object;ILjava/lang/String;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleReceiverColdLocked(Lcom/android/server/am/BroadcastProcessQueue;)Z+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleReceiverWarmLocked(Lcom/android/server/am/BroadcastProcessQueue;)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->scheduleResultTo(Lcom/android/server/am/BroadcastRecord;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;,Lcom/android/server/am/SameProcessApplicationThread;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->setDeliveryState(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/BroadcastRecord;ILjava/lang/Object;ILjava/lang/String;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/am/BroadcastQueueModernImpl;->setQueueProcess(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/BroadcastQueueModernImpl;->shouldRetire(Lcom/android/server/am/BroadcastProcessQueue;)Z+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->shouldSkipReceiver(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastRecord;I)Ljava/lang/String;+]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->skipAndCancelReplacedBroadcasts(Landroid/util/ArraySet;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda14;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->startDeliveryTimeoutLocked(Lcom/android/server/am/BroadcastProcessQueue;I)V+]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->shouldSkipReceiver(Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastRecord;I)Ljava/lang/String;+]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->skipAndCancelReplacedBroadcasts(Landroid/util/ArraySet;)V+]Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer;Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda14;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->startDeliveryTimeoutLocked(Lcom/android/server/am/BroadcastProcessQueue;I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer; HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateRunnableList(Lcom/android/server/am/BroadcastProcessQueue;)V+]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateRunningList()V -HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateRunningListLocked()V+]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateWarmProcess(Lcom/android/server/am/BroadcastProcessQueue;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateRunningListLocked()V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/BroadcastQueueModernImpl;->updateWarmProcess(Lcom/android/server/am/BroadcastProcessQueue;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/am/BroadcastProcessQueue;Lcom/android/server/am/BroadcastProcessQueue;]Lcom/android/server/am/BroadcastQueueModernImpl;Lcom/android/server/am/BroadcastQueueModernImpl; HSPLcom/android/server/am/BroadcastRecord;-><init>(Lcom/android/server/am/BroadcastQueue;Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;IIZLjava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/app/BroadcastOptions;Ljava/util/List;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;ZZZIILandroid/app/BackgroundStartPrivileges;ZLjava/util/function/BiFunction;I)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/am/BroadcastRecord;-><init>(Lcom/android/server/am/BroadcastQueue;Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;IIZLjava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/app/BroadcastOptions;Ljava/util/List;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;ZZZILandroid/app/BackgroundStartPrivileges;ZLjava/util/function/BiFunction;I)V HSPLcom/android/server/am/BroadcastRecord;-><init>(Lcom/android/server/am/BroadcastRecord;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/BroadcastRecord;->applySingletonPolicy(Lcom/android/server/am/ActivityManagerService;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; HSPLcom/android/server/am/BroadcastRecord;->calculateBlockedUntilBeyondCount(Ljava/util/List;Z)[I+]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; HSPLcom/android/server/am/BroadcastRecord;->calculateDeferUntilActive(ILandroid/app/BroadcastOptions;Landroid/content/IIntentReceiver;ZZ)Z+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions; -HSPLcom/android/server/am/BroadcastRecord;->calculateTypeForLogging()I+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; +HSPLcom/android/server/am/BroadcastRecord;->calculateTypeForLogging()I +HSPLcom/android/server/am/BroadcastRecord;->calculateTypesForLogging()[I HSPLcom/android/server/am/BroadcastRecord;->calculateUrgent(Landroid/content/Intent;Landroid/app/BroadcastOptions;)Z+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/BroadcastRecord;->getDeliveryGroupMatchingKeyFragment(Lcom/android/server/am/BroadcastRecord;)Ljava/lang/String;+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions; HSPLcom/android/server/am/BroadcastRecord;->getDeliveryGroupMatchingNamespaceFragment(Lcom/android/server/am/BroadcastRecord;)Ljava/lang/String;+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions; HSPLcom/android/server/am/BroadcastRecord;->getDeliveryGroupPolicy()I+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions; HSPLcom/android/server/am/BroadcastRecord;->getDeliveryState(I)I HSPLcom/android/server/am/BroadcastRecord;->getReceiverIntent(Ljava/lang/Object;)Landroid/content/Intent;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Ljava/util/function/BiFunction;Lcom/android/server/om/OverlayManagerService$$ExternalSyntheticLambda4;,Lcom/android/server/pm/BroadcastHelper$$ExternalSyntheticLambda8; -HSPLcom/android/server/am/BroadcastRecord;->getReceiverPriority(Ljava/lang/Object;)I+]Landroid/content/IntentFilter;Lcom/android/server/am/BroadcastFilter; +HSPLcom/android/server/am/BroadcastRecord;->getReceiverPriority(Ljava/lang/Object;)I HSPLcom/android/server/am/BroadcastRecord;->getReceiverProcessName(Ljava/lang/Object;)Ljava/lang/String; HSPLcom/android/server/am/BroadcastRecord;->getReceiverUid(Ljava/lang/Object;)I HSPLcom/android/server/am/BroadcastRecord;->isAssumedDelivered(I)Z+]Ljava/util/List;Ljava/util/ArrayList; @@ -740,264 +731,298 @@ HSPLcom/android/server/am/BroadcastRecord;->isReplacePending()Z+]Landroid/conten HSPLcom/android/server/am/BroadcastRecord;->isUrgent()Z HSPLcom/android/server/am/BroadcastRecord;->matchesDeliveryGroup(Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;)Z+]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/BroadcastRecord;->maybeStripForHistory()Lcom/android/server/am/BroadcastRecord;+]Landroid/content/Intent;Landroid/content/Intent; -HSPLcom/android/server/am/BroadcastRecord;->setDeliveryState(IILjava/lang/String;)Z+]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord; -HSPLcom/android/server/am/BroadcastRecord;->toShortString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/BroadcastRecord;->toString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/BroadcastRecord;->setDeliveryState(IILjava/lang/String;)Z +HSPLcom/android/server/am/BroadcastRecord;->toShortString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/BroadcastRecord;->toString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/BroadcastSentEventRecord;->calculateTypesForLogging()[I +HSPLcom/android/server/am/BroadcastSentEventRecord;->logToStatsd()V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$ListN; HSPLcom/android/server/am/BroadcastSkipPolicy;->createAttributionSourcesForResolveInfo(Landroid/content/pm/ResolveInfo;)[Landroid/content/AttributionSource; HSPLcom/android/server/am/BroadcastSkipPolicy;->disallowBackgroundStart(Lcom/android/server/am/BroadcastRecord;)Z+]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/BroadcastSkipPolicy;->requestStartTargetPermissionsReviewIfNeededLocked(Lcom/android/server/am/BroadcastRecord;Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Landroid/content/pm/ResolveInfo;)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastFilter;)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Ljava/lang/Object;)Ljava/lang/String;+]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy; -HSPLcom/android/server/am/BroadcastStats;->addBroadcast(Ljava/lang/String;Ljava/lang/String;IIJ)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HPLcom/android/server/am/CachedAppOptimizer$FreezeHandler;->freezeProcess(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Random;Ljava/util/Random; -HPLcom/android/server/am/CachedAppOptimizer$FreezeHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/os/Handler;Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/ProcLocksReader;Lcom/android/internal/os/ProcLocksReader;]Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Landroid/content/pm/ResolveInfo;)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastSkipPolicy;Lcom/android/server/am/BroadcastSkipPolicy;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall; +HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Lcom/android/server/am/BroadcastFilter;)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall; +HSPLcom/android/server/am/BroadcastSkipPolicy;->shouldSkipMessage(Lcom/android/server/am/BroadcastRecord;Ljava/lang/Object;)Ljava/lang/String; +HSPLcom/android/server/am/BroadcastStats;->addBroadcast(Ljava/lang/String;Ljava/lang/String;IIJ)V +HPLcom/android/server/am/CachedAppOptimizer$FreezeHandler;->freezeProcess(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/Freezer;Lcom/android/server/am/Freezer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/Random;Ljava/util/Random; +HPLcom/android/server/am/CachedAppOptimizer$FreezeHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/ProcLocksReader;Lcom/android/internal/os/ProcLocksReader; HPLcom/android/server/am/CachedAppOptimizer$FreezeHandler;->reportUnfreeze(Lcom/android/server/am/ProcessRecord;IILjava/lang/String;I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/Random;Ljava/util/Random; -HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/CachedAppOptimizer$AggregatedCompactionStats;Lcom/android/server/am/CachedAppOptimizer$AggregatedProcessCompactionStats;,Lcom/android/server/am/CachedAppOptimizer$AggregatedSourceCompactionStats;]Lcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;Lcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;]Lcom/android/server/am/CachedAppOptimizer$ProcessDependencies;Lcom/android/server/am/CachedAppOptimizer$DefaultProcessDependencies;]Lcom/android/server/am/CachedAppOptimizer$SingleCompactionStats;Lcom/android/server/am/CachedAppOptimizer$SingleCompactionStats;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Enum;Lcom/android/server/am/CachedAppOptimizer$CompactProfile;,Lcom/android/server/am/CachedAppOptimizer$CompactSource;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/LinkedHashMap;Lcom/android/server/am/CachedAppOptimizer$3;]Ljava/util/LinkedList;Lcom/android/server/am/CachedAppOptimizer$4; -HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->shouldRssThrottleCompaction(Lcom/android/server/am/CachedAppOptimizer$CompactProfile;ILjava/lang/String;[J)Z+]Lcom/android/server/am/CachedAppOptimizer$SingleCompactionStats;Lcom/android/server/am/CachedAppOptimizer$SingleCompactionStats;]Ljava/util/LinkedHashMap;Lcom/android/server/am/CachedAppOptimizer$3; -HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->shouldTimeThrottleCompaction(Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/CachedAppOptimizer$CompactProfile;Lcom/android/server/am/CachedAppOptimizer$CompactSource;)Z+]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; -HSPLcom/android/server/am/CachedAppOptimizer;->cancelCompactionForProcess(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/CachedAppOptimizer$CancelCompactReason;)V+]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/EnumMap;Ljava/util/EnumMap; -HPLcom/android/server/am/CachedAppOptimizer;->compactApp(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/CachedAppOptimizer$CompactProfile;Lcom/android/server/am/CachedAppOptimizer$CompactSource;Z)Z+]Landroid/os/Handler;Lcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/lang/Enum;Lcom/android/server/am/CachedAppOptimizer$CompactProfile;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/CachedAppOptimizer;->freezeAppAsyncInternalLSP(Lcom/android/server/am/ProcessRecord;JZ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/os/Handler;Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/CachedAppOptimizer$AggregatedCompactionStats;Lcom/android/server/am/CachedAppOptimizer$AggregatedProcessCompactionStats;,Lcom/android/server/am/CachedAppOptimizer$AggregatedSourceCompactionStats;]Lcom/android/server/am/CachedAppOptimizer$ProcessDependencies;Lcom/android/server/am/CachedAppOptimizer$DefaultProcessDependencies;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/LinkedHashMap;Lcom/android/server/am/CachedAppOptimizer$3;]Ljava/util/LinkedList;Lcom/android/server/am/CachedAppOptimizer$4; +HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->shouldRssThrottleCompaction(Lcom/android/server/am/CachedAppOptimizer$CompactProfile;ILjava/lang/String;[J)Z+]Ljava/util/LinkedHashMap;Lcom/android/server/am/CachedAppOptimizer$3; +HPLcom/android/server/am/CachedAppOptimizer$MemCompactionHandler;->shouldTimeThrottleCompaction(Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/CachedAppOptimizer$CompactProfile;Lcom/android/server/am/CachedAppOptimizer$CompactSource;)Z +HPLcom/android/server/am/CachedAppOptimizer;->binderError(ILcom/android/server/am/ProcessRecord;III)V +HSPLcom/android/server/am/CachedAppOptimizer;->cancelCompactionForProcess(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/CachedAppOptimizer$CancelCompactReason;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/EnumMap;Ljava/util/EnumMap; +HPLcom/android/server/am/CachedAppOptimizer;->compactApp(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/CachedAppOptimizer$CompactProfile;Lcom/android/server/am/CachedAppOptimizer$CompactSource;Z)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/am/CachedAppOptimizer;->freezeAppAsyncInternalLSP(Lcom/android/server/am/ProcessRecord;JZ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/CachedAppOptimizer;->getUnfreezeReasonCodeFromOomAdjReason(I)I +HPLcom/android/server/am/CachedAppOptimizer;->lambda$binderErrorInternal$3(Ljava/lang/Integer;Ljava/lang/Integer;)V HSPLcom/android/server/am/CachedAppOptimizer;->onCleanupApplicationRecordLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HPLcom/android/server/am/CachedAppOptimizer;->onProcessFrozen(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/CachedAppOptimizer;->onOomAdjustChanged(IILcom/android/server/am/ProcessRecord;)V HPLcom/android/server/am/CachedAppOptimizer;->postUidFrozenMessage(IZ)V -HPLcom/android/server/am/CachedAppOptimizer;->traceAppFreeze(Ljava/lang/String;II)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/CachedAppOptimizer;->unfreezeAppInternalLSP(Lcom/android/server/am/ProcessRecord;IZ)V+]Landroid/os/Handler;Lcom/android/server/am/CachedAppOptimizer$FreezeHandler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/am/CachedAppOptimizer;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;IJ)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; -HSPLcom/android/server/am/CachedAppOptimizer;->updateEarliestFreezableTime(Lcom/android/server/am/ProcessRecord;J)J+]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; +HPLcom/android/server/am/CachedAppOptimizer;->traceAppFreeze(Ljava/lang/String;II)V +HSPLcom/android/server/am/CachedAppOptimizer;->unfreezeAppInternalLSP(Lcom/android/server/am/ProcessRecord;IZ)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/Freezer;Lcom/android/server/am/Freezer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/CachedAppOptimizer;->unfreezeAppLSP(Lcom/android/server/am/ProcessRecord;IZ)V +HPLcom/android/server/am/CachedAppOptimizer;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;IJ)V +HPLcom/android/server/am/CachedAppOptimizer;->updateEarliestFreezableTime(Lcom/android/server/am/ProcessRecord;J)J HSPLcom/android/server/am/CachedAppOptimizer;->useCompaction()Z HSPLcom/android/server/am/ComponentAliasResolver$$ExternalSyntheticLambda1;-><init>(Landroid/content/Intent;Ljava/lang/String;III)V HSPLcom/android/server/am/ComponentAliasResolver$Resolution;->getAlias()Ljava/lang/Object;+]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution; HSPLcom/android/server/am/ComponentAliasResolver$Resolution;->isAlias()Z HSPLcom/android/server/am/ComponentAliasResolver;->resolveComponentAlias(Ljava/util/function/Supplier;)Lcom/android/server/am/ComponentAliasResolver$Resolution; -HSPLcom/android/server/am/ComponentAliasResolver;->resolveReceiver(Landroid/content/Intent;Landroid/content/pm/ResolveInfo;Ljava/lang/String;JIIZ)Lcom/android/server/am/ComponentAliasResolver$Resolution;+]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver; +HSPLcom/android/server/am/ComponentAliasResolver;->resolveReceiver(Landroid/content/Intent;Landroid/content/pm/ResolveInfo;Ljava/lang/String;JIII)Lcom/android/server/am/ComponentAliasResolver$Resolution;+]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver; HSPLcom/android/server/am/ComponentAliasResolver;->resolveService(Landroid/content/Intent;Ljava/lang/String;III)Lcom/android/server/am/ComponentAliasResolver$Resolution;+]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver; HSPLcom/android/server/am/ConnectionRecord;-><init>(Lcom/android/server/am/AppBindRecord;Lcom/android/server/wm/ActivityServiceConnectionsHolder;Landroid/app/IServiceConnection;JILandroid/app/PendingIntent;ILjava/lang/String;Ljava/lang/String;Landroid/content/ComponentName;)V HSPLcom/android/server/am/ConnectionRecord;->computeHostOomAdjLSP(Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZII)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/ConnectionRecord;->hasFlag(I)Z -HSPLcom/android/server/am/ConnectionRecord;->notHasFlag(I)Z+]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord; -HSPLcom/android/server/am/ConnectionRecord;->startAssociationIfNeeded()V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/internal/app/procstats/AssociationState;Lcom/android/internal/app/procstats/AssociationState;]Lcom/android/internal/app/procstats/ProcessStats$PackageState;Lcom/android/internal/app/procstats/ProcessStats$PackageState;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ConnectionRecord;->stopAssociation()V+]Lcom/android/internal/app/procstats/AssociationState$SourceState;Lcom/android/internal/app/procstats/AssociationState$SourceState; -HSPLcom/android/server/am/ConnectionRecord;->trackProcState(II)V+]Lcom/android/internal/app/procstats/AssociationState$SourceState;Lcom/android/internal/app/procstats/AssociationState$SourceState; +HSPLcom/android/server/am/ConnectionRecord;->notHasFlag(I)Z +HSPLcom/android/server/am/ConnectionRecord;->startAssociationIfNeeded()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ConnectionRecord;->stopAssociation()V +HSPLcom/android/server/am/ConnectionRecord;->trackProcState(II)V HSPLcom/android/server/am/ContentProviderConnection;-><init>(Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;I)V -HSPLcom/android/server/am/ContentProviderConnection;->adjustCounts(II)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ContentProviderConnection;->adjustCounts(II)V +HSPLcom/android/server/am/ContentProviderConnection;->computeHostOomAdjLSP(Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZII)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HPLcom/android/server/am/ContentProviderConnection;->decrementCount(Z)I HPLcom/android/server/am/ContentProviderConnection;->incrementCount(Z)I HSPLcom/android/server/am/ContentProviderConnection;->initializeCount(Z)V -HSPLcom/android/server/am/ContentProviderConnection;->startAssociationIfNeeded()V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/internal/app/procstats/AssociationState;Lcom/android/internal/app/procstats/AssociationState;]Lcom/android/internal/app/procstats/ProcessStats$PackageState;Lcom/android/internal/app/procstats/ProcessStats$PackageState;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/am/ContentProviderConnection;->stopAssociation()V+]Lcom/android/internal/app/procstats/AssociationState$SourceState;Lcom/android/internal/app/procstats/AssociationState$SourceState; -HSPLcom/android/server/am/ContentProviderConnection;->trackProcState(II)V+]Lcom/android/internal/app/procstats/AssociationState$SourceState;Lcom/android/internal/app/procstats/AssociationState$SourceState; +HSPLcom/android/server/am/ContentProviderConnection;->startAssociationIfNeeded()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/ContentProviderConnection;->stopAssociation()V +HSPLcom/android/server/am/ContentProviderConnection;->trackProcState(II)V HSPLcom/android/server/am/ContentProviderHelper$$ExternalSyntheticLambda2;->apply(Ljava/lang/Object;)Ljava/lang/Object; -HSPLcom/android/server/am/ContentProviderHelper;->canAccessContentProviderFromSdkSandbox(Landroid/content/pm/ProviderInfo;I)Z+]Lcom/android/server/sdksandbox/SdkSandboxManagerLocal;Lcom/android/server/sdksandbox/SdkSandboxManagerService$LocalImpl; -HSPLcom/android/server/am/ContentProviderHelper;->checkAssociationAndPermissionLocked(Lcom/android/server/am/ProcessRecord;Landroid/content/pm/ProviderInfo;IIZLjava/lang/String;J)V+]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderAccess(Ljava/lang/String;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderAssociation(Lcom/android/server/am/ProcessRecord;ILandroid/content/pm/ProviderInfo;)Ljava/lang/String;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderPermission(Landroid/content/pm/ProviderInfo;IIIZLjava/lang/String;)Ljava/lang/String;+]Landroid/content/pm/PathPermission;Landroid/content/pm/PathPermission;]Landroid/content/pm/ProviderInfo;Landroid/content/pm/ProviderInfo;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ContentProviderHelper;->checkTime(JLjava/lang/String;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ContentProviderHelper;->decProviderCountLocked(Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderRecord;Landroid/os/IBinder;ZZZ)Z+]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; -HSPLcom/android/server/am/ContentProviderHelper;->generateApplicationProvidersLocked(Lcom/android/server/am/ProcessRecord;)Ljava/util/List;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/am/ContentProviderHelper;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/am/ContentProviderHelper;->getContentProviderImpl(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;ZI)Landroid/app/ContentProviderHolder;+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/UserProperties;Landroid/content/pm/UserProperties;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/lang/Object;Lcom/android/server/am/ContentProviderRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ContentProviderHelper;->handleProviderRemoval(Lcom/android/server/am/ContentProviderConnection;ZZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ContentProviderHelper;->hasProviderConnectionLocked(Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ContentProviderHelper;->incProviderCountLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ContentProviderRecord;Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;ZZJLcom/android/server/am/ProcessList;I)Lcom/android/server/am/ContentProviderConnection;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ContentProviderHelper;->isAuthorityRedirectedForCloneProfileCached(Ljava/lang/String;)Z+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/util/Map;Ljava/util/HashMap; -HSPLcom/android/server/am/ContentProviderHelper;->isProcessAliveLocked(Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ContentProviderHelper;->canAccessContentProviderFromSdkSandbox(Landroid/content/pm/ProviderInfo;I)Z +HSPLcom/android/server/am/ContentProviderHelper;->checkAssociationAndPermissionLocked(Lcom/android/server/am/ProcessRecord;Landroid/content/pm/ProviderInfo;IIZLjava/lang/String;J)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderAccess(Ljava/lang/String;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderAssociation(Lcom/android/server/am/ProcessRecord;ILandroid/content/pm/ProviderInfo;)Ljava/lang/String;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ContentProviderHelper;->checkContentProviderPermission(Landroid/content/pm/ProviderInfo;IIIZLjava/lang/String;)Ljava/lang/String;+]Landroid/content/pm/PathPermission;Landroid/content/pm/PathPermission;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService; +HSPLcom/android/server/am/ContentProviderHelper;->checkTime(JLjava/lang/String;)V +HPLcom/android/server/am/ContentProviderHelper;->decProviderCountLocked(Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderRecord;Landroid/os/IBinder;ZZZ)Z +HSPLcom/android/server/am/ContentProviderHelper;->generateApplicationProvidersLocked(Lcom/android/server/am/ProcessRecord;)Ljava/util/List;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/am/ContentProviderHelper;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/am/ContentProviderHelper;->getContentProviderImpl(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;ZI)Landroid/app/ContentProviderHolder;+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/am/ContentProviderHelper;->handleProviderRemoval(Lcom/android/server/am/ContentProviderConnection;ZZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ContentProviderHelper;->hasProviderConnectionLocked(Lcom/android/server/am/ProcessRecord;)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ContentProviderHelper;->incProviderCountLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ContentProviderRecord;Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;ZZJLcom/android/server/am/ProcessList;I)Lcom/android/server/am/ContentProviderConnection;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ContentProviderHelper;->isAuthorityRedirectedForCloneProfileCached(Ljava/lang/String;)Z+]Ljava/util/Map;Ljava/util/HashMap; +HSPLcom/android/server/am/ContentProviderHelper;->isProcessAliveLocked(Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ContentProviderHelper;->isSingletonOrSystemUserOnly(Landroid/content/pm/ProviderInfo;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/ContentProviderHelper;->lambda$checkContentProviderAssociation$4(Lcom/android/server/am/ProcessRecord;Landroid/content/pm/ProviderInfo;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/am/ContentProviderHelper;->maybeUpdateProviderUsageStatsLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/lang/Long;Ljava/lang/Long; -HSPLcom/android/server/am/ContentProviderHelper;->publishContentProviders(Landroid/app/IApplicationThread;Ljava/util/List;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/lang/Object;Lcom/android/server/am/ContentProviderRecord;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ContentProviderHelper;->refContentProvider(Landroid/os/IBinder;II)Z+]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection; -HSPLcom/android/server/am/ContentProviderHelper;->removeContentProvider(Landroid/os/IBinder;Z)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper; -HPLcom/android/server/am/ContentProviderHelper;->removeDyingProviderLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ContentProviderRecord;Z)Z+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/IContentProvider;Landroid/content/ContentProviderProxy;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/lang/Object;Lcom/android/server/am/ContentProviderRecord;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ContentProviderRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/pm/ProviderInfo;Landroid/content/pm/ApplicationInfo;Landroid/content/ComponentName;Z)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/am/ContentProviderRecord;->canRunHere(Lcom/android/server/am/ProcessRecord;)Z+]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/am/ContentProviderHelper;->maybeUpdateProviderUsageStatsLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; +HSPLcom/android/server/am/ContentProviderHelper;->publishContentProviders(Landroid/app/IApplicationThread;Ljava/util/List;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/am/ContentProviderHelper;->refContentProvider(Landroid/os/IBinder;II)Z +HPLcom/android/server/am/ContentProviderHelper;->removeContentProvider(Landroid/os/IBinder;Z)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HPLcom/android/server/am/ContentProviderHelper;->removeDyingProviderLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ContentProviderRecord;Z)Z+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/content/IContentProvider;Landroid/content/ContentProviderProxy;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ContentProviderRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/pm/ProviderInfo;Landroid/content/pm/ApplicationInfo;Landroid/content/ComponentName;Z)V +HSPLcom/android/server/am/ContentProviderRecord;->canRunHere(Lcom/android/server/am/ProcessRecord;)Z HSPLcom/android/server/am/ContentProviderRecord;->hasExternalProcessHandles()Z HSPLcom/android/server/am/ContentProviderRecord;->newHolder(Lcom/android/server/am/ContentProviderConnection;Z)Landroid/app/ContentProviderHolder; -HSPLcom/android/server/am/FgsTempAllowList;->add(IJLjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Long;Ljava/lang/Long; -HSPLcom/android/server/am/FgsTempAllowList;->get(I)Landroid/util/Pair;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Long;Ljava/lang/Long; -HPLcom/android/server/am/FgsTempAllowList;->isAllowed(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList; -HSPLcom/android/server/am/Flags;->serviceBindingOomAdjPolicy()Z+]Lcom/android/server/am/FeatureFlags;Lcom/android/server/am/FeatureFlagsImpl; -HPLcom/android/server/am/HealthStatsBatteryStatsWriter;->writeUid(Landroid/os/health/HealthStatsWriter;Landroid/os/BatteryStats;Landroid/os/BatteryStats$Uid;)V+]Landroid/os/BatteryStats$ControllerActivityCounter;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Landroid/os/BatteryStats$LongCounter;Lcom/android/server/power/stats/BatteryStatsImpl$1;,Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;,Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Landroid/os/BatteryStats$Uid$Sensor;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;]Landroid/os/BatteryStats$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl;]Landroid/os/health/HealthStatsWriter;Landroid/os/health/HealthStatsWriter;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/HealthStatsBatteryStatsWriter;Lcom/android/server/am/HealthStatsBatteryStatsWriter;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; -HSPLcom/android/server/am/HostingRecord;-><init>(Ljava/lang/String;Landroid/content/ComponentName;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Landroid/content/ComponentName;Landroid/content/ComponentName; +HPLcom/android/server/am/EventLogTags;->writeAmPss(IILjava/lang/String;JJJJIIJ)V +HSPLcom/android/server/am/FgsTempAllowList;->add(IJLjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/FgsTempAllowList;->get(I)Landroid/util/Pair;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/am/HealthStatsBatteryStatsWriter;->writeUid(Landroid/os/health/HealthStatsWriter;Landroid/os/BatteryStats;Landroid/os/BatteryStats$Uid;)V+]Landroid/os/BatteryStats$ControllerActivityCounter;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Landroid/os/BatteryStats$LongCounter;Lcom/android/server/power/stats/BatteryStatsImpl$1;,Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;,Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Landroid/os/BatteryStats$Uid$Sensor;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;]Landroid/os/BatteryStats$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl;]Landroid/os/health/HealthStatsWriter;Landroid/os/health/HealthStatsWriter;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/HealthStatsBatteryStatsWriter;Lcom/android/server/am/HealthStatsBatteryStatsWriter;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; +HSPLcom/android/server/am/HostingRecord;-><init>(Ljava/lang/String;Landroid/content/ComponentName;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V HSPLcom/android/server/am/HostingRecord;-><init>(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HSPLcom/android/server/am/IntentBindRecord;-><init>(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent$FilterComparison;)V -HSPLcom/android/server/am/LmkdConnection;->exchange(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Z+]Lcom/android/server/am/LmkdConnection;Lcom/android/server/am/LmkdConnection;]Ljava/lang/Object;Ljava/lang/Object; +HSPLcom/android/server/am/LmkdConnection;->exchange(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Z HSPLcom/android/server/am/LmkdConnection;->isConnected()Z -HSPLcom/android/server/am/LmkdConnection;->write(Ljava/nio/ByteBuffer;)Z+]Ljava/io/OutputStream;Landroid/net/LocalSocketImpl$SocketOutputStream;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer; +HSPLcom/android/server/am/LmkdConnection;->write(Ljava/nio/ByteBuffer;)Z+]Ljava/io/OutputStream;Landroid/net/LocalSocketImpl$SocketOutputStream; HPLcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;->initialize(Lcom/android/server/am/ProcessRecord;IZZIIIII)V -HPLcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;->onOtherActivity()V -HSPLcom/android/server/am/OomAdjuster;->applyOomAdjLSP(Lcom/android/server/am/ProcessRecord;ZJJI)Z+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/os/Handler;Landroid/os/Handler;,Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong; -HSPLcom/android/server/am/OomAdjuster;->assignCachedAdjIfNecessary(Ljava/util/ArrayList;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster$Injector;->batchSetOomAdj(Ljava/util/ArrayList;)V +HSPLcom/android/server/am/OomAdjuster$Injector;->getElapsedRealtimeMillis()J +HSPLcom/android/server/am/OomAdjuster$Injector;->getUptimeMillis()J +HSPLcom/android/server/am/OomAdjuster;->applyOomAdjLSP(Lcom/android/server/am/ProcessRecord;ZJJIZ)Z+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster;->assignCachedAdjIfNecessary(Ljava/util/ArrayList;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/OomAdjuster;->checkAndEnqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)Z -HSPLcom/android/server/am/OomAdjuster;->collectReachableProcessesLocked(Landroid/util/ArraySet;Ljava/util/ArrayList;Lcom/android/server/am/ActiveUids;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/OomAdjuster;->computeOomAdjLSP(Lcom/android/server/am/ProcessRecord;ILcom/android/server/am/ProcessRecord;ZJZZIZ)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; -HSPLcom/android/server/am/OomAdjuster;->computeProviderHostOomAdjLSP(Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ContentProviderConnection;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/OomAdjuster;->computeServiceHostOomAdjLSP(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; -HSPLcom/android/server/am/OomAdjuster;->enqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HPLcom/android/server/am/OomAdjuster;->collectReachableProcessesLocked(Landroid/util/ArraySet;Ljava/util/ArrayList;Lcom/android/server/am/ActiveUids;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster;->computeOomAdjLSP(Lcom/android/server/am/ProcessRecord;ILcom/android/server/am/ProcessRecord;ZJZZIZ)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/OomAdjuster;->computeProviderHostOomAdjLSP(Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->computeServiceHostOomAdjLSP(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->enqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)V HSPLcom/android/server/am/OomAdjuster;->enqueuePendingTopAppIfNecessaryLSP()I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/am/OomAdjuster;->evaluateConnectionPrelude(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/OomAdjuster;->evaluateProviderConnectionAdd(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/OomAdjuster;->evaluateServiceConnectionAdd(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ConnectionRecord;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/OomAdjuster;->getBfslCapabilityFromClient(Lcom/android/server/am/ProcessRecord;)I+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/OomAdjuster;->evaluateProviderConnectionAdd(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/OomAdjuster;->evaluateProviderConnectionRemoval(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->evaluateServiceConnectionAdd(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ConnectionRecord;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->evaluateServiceConnectionRemoval(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ConnectionRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->getBfslCapabilityFromClient(Lcom/android/server/am/ProcessRecord;)I HSPLcom/android/server/am/OomAdjuster;->getDefaultCapability(Lcom/android/server/am/ProcessRecord;I)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HPLcom/android/server/am/OomAdjuster;->idleUidsLocked()V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/OomAdjuster;->lambda$new$0(Landroid/os/Message;)Z+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/OomAdjuster;->maybeUpdateLastTopTime(Lcom/android/server/am/ProcessStateRecord;J)V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/OomAdjuster;->maybeUpdateUsageStatsLSP(Lcom/android/server/am/ProcessRecord;J)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HPLcom/android/server/am/OomAdjuster;->idleUidsLocked()V+]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger; +HSPLcom/android/server/am/OomAdjuster;->lambda$new$0(Landroid/os/Message;)Z +HPLcom/android/server/am/OomAdjuster;->maybeSetProcessFollowUpUpdateLocked(Lcom/android/server/am/ProcessRecord;JJ)V +HSPLcom/android/server/am/OomAdjuster;->maybeUpdateLastTopTime(Lcom/android/server/am/ProcessStateRecord;J)V +HSPLcom/android/server/am/OomAdjuster;->maybeUpdateUsageStatsLSP(Lcom/android/server/am/ProcessRecord;J)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/OomAdjuster;->oomAdjReasonToString(I)Ljava/lang/String; -HSPLcom/android/server/am/OomAdjuster;->postUpdateOomAdjInnerLSP(ILcom/android/server/am/ActiveUids;JJJZ)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/OomAdjuster;->setAttachingProcessStatesLSP(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/OomAdjuster;->setIntermediateAdjLSP(Lcom/android/server/am/ProcessRecord;III)I+]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/OomAdjuster;->setIntermediateProcStateLSP(Lcom/android/server/am/ProcessRecord;II)V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/OomAdjuster;->setIntermediateSchedGroupLSP(Lcom/android/server/am/ProcessStateRecord;I)V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; +HSPLcom/android/server/am/OomAdjuster;->postUpdateOomAdjInnerLSP(ILcom/android/server/am/ActiveUids;JJJZ)V+]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HPLcom/android/server/am/OomAdjuster;->scheduleFollowUpOomAdjusterUpdateLocked(JJ)V +HSPLcom/android/server/am/OomAdjuster;->setAttachingProcessStatesLSP(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/OomAdjuster;->setIntermediateAdjLSP(Lcom/android/server/am/ProcessRecord;III)I +HSPLcom/android/server/am/OomAdjuster;->setIntermediateProcStateLSP(Lcom/android/server/am/ProcessRecord;II)V +HSPLcom/android/server/am/OomAdjuster;->setIntermediateSchedGroupLSP(Lcom/android/server/am/ProcessStateRecord;I)V HSPLcom/android/server/am/OomAdjuster;->setUidTempAllowlistStateLSP(IZ)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/OomAdjuster;->shouldKillExcessiveProcesses(J)Z+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; -HSPLcom/android/server/am/OomAdjuster;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;I)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/OomAdjuster;->updateAndTrimProcessLSP(JJJLcom/android/server/am/ActiveUids;IZ)V+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/OomAdjuster;->updateAppFreezeStateLSP(Lcom/android/server/am/ProcessRecord;IZ)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/OomAdjuster;->updateAppUidRecIfNecessaryLSP(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; -HSPLcom/android/server/am/OomAdjuster;->updateAppUidRecLSP(Lcom/android/server/am/ProcessRecord;)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLSP(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLSP(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/OomAdjuster;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster;->updateAndTrimProcessLSP(JJJLcom/android/server/am/ActiveUids;IZ)V+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster;->updateAppFreezeStateLSP(Lcom/android/server/am/ProcessRecord;IZI)V +HSPLcom/android/server/am/OomAdjuster;->updateAppUidRecIfNecessaryLSP(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->updateAppUidRecLSP(Lcom/android/server/am/ProcessRecord;)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/OomAdjuster;->updateOomAdjFollowUpTargetsLocked()V+]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLSP(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLSP(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLocked(I)V -HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLocked(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster; -HSPLcom/android/server/am/OomAdjuster;->updateOomAdjPendingTargetsLocked(I)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/OomAdjuster;->updateUidsLSP(Lcom/android/server/am/ActiveUids;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/am/ActiveServices;Lcom/android/server/am/ActiveServices;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjuster;->updateOomAdjLocked(Lcom/android/server/am/ProcessRecord;I)Z +HSPLcom/android/server/am/OomAdjuster;->updateOomAdjPendingTargetsLocked(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/OomAdjuster;->updateUidsLSP(Lcom/android/server/am/ActiveUids;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjusterDebugLogger;Lcom/android/server/am/OomAdjusterDebugLogger;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/OomAdjusterDebugLogger;->shouldLog(I)Z HSPLcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer;->accept(Lcom/android/server/am/OomAdjusterModernImpl$Connection;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjusterModernImpl$Connection;Lcom/android/server/am/ConnectionRecord;,Lcom/android/server/am/ContentProviderConnection; +HSPLcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer;->init(Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;)V HSPLcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionsConsumer;->accept(Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/OomAdjusterModernImpl$ComputeHostConsumer;->accept(Lcom/android/server/am/OomAdjusterModernImpl$Connection;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjusterModernImpl$Connection;Lcom/android/server/am/ConnectionRecord;,Lcom/android/server/am/ContentProviderConnection; HSPLcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;->update(Lcom/android/server/am/ProcessRecord;JIILcom/android/server/am/ActiveUids;Z)V HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;->unlink()V -HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->resetLastNodes()V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList; -HSPLcom/android/server/am/OomAdjusterModernImpl;->adjToSlot(I)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda0;->applyAsInt(Ljava/lang/Object;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda1;->applyAsInt(Ljava/lang/Object;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda2;->applyAsInt(Ljava/lang/Object;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;->offer(Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;)V+]Ljava/util/function/ToIntFunction;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda0;,Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda2; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;->poll()Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;->reset()V +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->lambda$new$1(Lcom/android/server/am/ProcessRecord;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->lambda$new$2(Lcom/android/server/am/ProcessRecord;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->lambda$new$3(Lcom/android/server/am/ProcessRecord;)I +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->offer(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;]Ljava/util/function/ToIntFunction;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda1;,Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda3; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->poll()Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->reset()V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->resetLastNodes()V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; +HSPLcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;->setLastNodeToHead(I)V +HSPLcom/android/server/am/OomAdjusterModernImpl$ReachableCollectingConsumer;->accept(Lcom/android/server/am/OomAdjusterModernImpl$Connection;Lcom/android/server/am/ProcessRecord;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/OomAdjusterModernImpl;->collectAndMarkReachableProcessesLSP(Ljava/util/ArrayList;)V+]Lcom/android/server/am/OomAdjusterModernImpl$ReachableCollectingConsumer;Lcom/android/server/am/OomAdjusterModernImpl$ReachableCollectingConsumer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/OomAdjusterModernImpl;->computeConnectionsLSP()V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; +HSPLcom/android/server/am/OomAdjusterModernImpl;->computeConnectionsLSP()V+]Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionsConsumer;Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionsConsumer;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; +HSPLcom/android/server/am/OomAdjusterModernImpl;->computeOomAdjIgnoringReachablesLSP(Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer;Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer; HSPLcom/android/server/am/OomAdjusterModernImpl;->forEachClientConnectionLSP(Lcom/android/server/am/ProcessRecord;Ljava/util/function/BiConsumer;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/BiConsumer;Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer; HSPLcom/android/server/am/OomAdjusterModernImpl;->forEachConnectionLSP(Lcom/android/server/am/ProcessRecord;Ljava/util/function/BiConsumer;)V+]Ljava/util/function/BiConsumer;Lcom/android/server/am/OomAdjusterModernImpl$ComputeHostConsumer;,Lcom/android/server/am/OomAdjusterModernImpl$ReachableCollectingConsumer; -HSPLcom/android/server/am/OomAdjusterModernImpl;->fullUpdateLSP(I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/OomAdjusterModernImpl;->partialUpdateLSP(ILandroid/util/ArraySet;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjusterModernImpl;->fullUpdateLSP(I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjusterModernImpl;->initReachableStatesLSP(Ljava/util/ArrayList;ILcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/OomAdjusterModernImpl;->partialUpdateLSP(ILandroid/util/ArraySet;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs;]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/OomAdjusterModernImpl;->performUpdateOomAdjLSP(I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/am/OomAdjusterModernImpl;->performUpdateOomAdjLSP(Lcom/android/server/am/ProcessRecord;I)Z+]Lcom/android/server/am/OomAdjusterModernImpl;Lcom/android/server/am/OomAdjusterModernImpl; HSPLcom/android/server/am/OomAdjusterModernImpl;->performUpdateOomAdjPendingTargetsLocked(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/OomAdjusterModernImpl;->updateAdjSlot(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; HSPLcom/android/server/am/OomAdjusterModernImpl;->updateAdjSlotIfNecessary(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; -HSPLcom/android/server/am/OomAdjusterModernImpl;->updateProcStateSlot(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; HSPLcom/android/server/am/OomAdjusterModernImpl;->updateProcStateSlotIfNecessary(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes;Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; -HSPLcom/android/server/am/PackageList;->containsKey(Ljava/lang/Object;)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/am/PackageList;->forEachPackage(Ljava/util/function/BiConsumer;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/function/BiConsumer;Lcom/android/server/am/ProcessProfileRecord$$ExternalSyntheticLambda1; -HSPLcom/android/server/am/PackageList;->getPackageList()[Ljava/lang/String;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/am/PackageList;->searchEachPackage(Ljava/util/function/Function;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/function/Function;Lcom/android/server/am/ContentProviderHelper$$ExternalSyntheticLambda2; +HSPLcom/android/server/am/PackageList;->containsKey(Ljava/lang/Object;)Z +HSPLcom/android/server/am/PackageList;->forEachPackage(Ljava/util/function/BiConsumer;)V+]Ljava/util/function/BiConsumer;Lcom/android/server/am/ProcessProfileRecord$$ExternalSyntheticLambda1; +HSPLcom/android/server/am/PackageList;->getPackageList()[Ljava/lang/String; +HSPLcom/android/server/am/PackageList;->searchEachPackage(Ljava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/function/Function;Lcom/android/server/am/ContentProviderHelper$$ExternalSyntheticLambda2; HPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController; -HSPLcom/android/server/am/PendingIntentController;->decrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Lcom/android/server/am/PendingIntentRecord;ZI)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/PendingIntentController;->decrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/am/PendingIntentController;->getIntentSender(ILjava/lang/String;Ljava/lang/String;IILandroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;)Lcom/android/server/am/PendingIntentRecord;+]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLcom/android/server/am/PendingIntentController;->incrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer; -HSPLcom/android/server/am/PendingIntentRecord$Key;-><init>(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILcom/android/server/wm/SafeActivityOptions;I)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/IBinder;Lcom/android/server/wm/ActivityRecord$Token;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/am/PendingIntentController;->incrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/am/PendingIntentController;->makeIntentSenderCanceled(Lcom/android/server/am/PendingIntentRecord;I)V+]Lcom/android/server/AlarmManagerInternal;Lcom/android/server/alarm/AlarmManagerService$LocalService; +HSPLcom/android/server/am/PendingIntentRecord$Key;-><init>(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILcom/android/server/wm/SafeActivityOptions;I)V+]Landroid/content/Intent;Landroid/content/Intent; HSPLcom/android/server/am/PendingIntentRecord$Key;->equals(Ljava/lang/Object;)Z+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/am/PendingIntentRecord$Key;->hashCode()I HSPLcom/android/server/am/PendingIntentRecord;-><init>(Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentRecord$Key;I)V HSPLcom/android/server/am/PendingIntentRecord;->completeFinalize()V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/util/HashMap;Ljava/util/HashMap; -HPLcom/android/server/am/PendingIntentRecord;->getBackgroundStartPrivilegesForActivitySender(Landroid/util/ArraySet;Landroid/os/IBinder;Landroid/os/Bundle;I)Landroid/app/BackgroundStartPrivileges;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HPLcom/android/server/am/PendingIntentRecord;->sendInner(Landroid/app/IApplicationThread;ILandroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Landroid/content/IIntentReceiver;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IIILandroid/os/Bundle;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/IIntentReceiver;Landroid/app/PendingIntent$FinishedDispatcher;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Lcom/android/server/am/PendingIntentRecord;Lcom/android/server/am/PendingIntentRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/SafeActivityOptions;Lcom/android/server/wm/SafeActivityOptions;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/PendingStartActivityUids;->delete(IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/am/PendingIntentRecord;->sendInner(Landroid/app/IApplicationThread;ILandroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Landroid/content/IIntentReceiver;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IIILandroid/os/Bundle;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/content/IIntentReceiver;Landroid/app/PendingIntent$FinishedDispatcher;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/SafeActivityOptions;Lcom/android/server/wm/SafeActivityOptions; +HSPLcom/android/server/am/PendingStartActivityUids;->delete(IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/PendingStartActivityUids;->enqueuePendingTopAppIfNecessaryLocked(Lcom/android/server/am/ActivityManagerService;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; HSPLcom/android/server/am/PendingStartActivityUids;->isPendingTopUid(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/am/PhantomProcessList;->getOrCreatePhantomProcessIfNeededLocked(Ljava/lang/String;IIZ)Lcom/android/server/am/PhantomProcessRecord;+]Landroid/os/Handler;Lcom/android/server/am/ProcessList$KillHandler;]Landroid/os/Looper;Landroid/os/Looper;]Landroid/os/MessageQueue;Landroid/os/MessageQueue;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/PhantomProcessList;Lcom/android/server/am/PhantomProcessList;]Lcom/android/server/am/PhantomProcessRecord;Lcom/android/server/am/PhantomProcessRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/io/FileDescriptor;Ljava/io/FileDescriptor;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/am/PhantomProcessList;->isAppProcess(I)Z+]Lcom/android/server/am/ActivityManagerService$PidMap;Lcom/android/server/am/ActivityManagerService$PidMap; -HPLcom/android/server/am/PhantomProcessList;->lookForPhantomProcessesLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/PhantomProcessList$Injector;Lcom/android/server/am/PhantomProcessList$Injector;]Lcom/android/server/am/PhantomProcessList;Lcom/android/server/am/PhantomProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/io/InputStream;Ljava/io/FileInputStream; -HPLcom/android/server/am/PhantomProcessList;->updateProcessCpuStatesLocked(Lcom/android/internal/os/ProcessCpuTracker;)V+]Lcom/android/internal/os/ProcessCpuTracker;Lcom/android/internal/os/ProcessCpuTracker;]Lcom/android/server/am/PhantomProcessList;Lcom/android/server/am/PhantomProcessList;]Lcom/android/server/am/PhantomProcessRecord;Lcom/android/server/am/PhantomProcessRecord; +HPLcom/android/server/am/PhantomProcessList;->getOrCreatePhantomProcessIfNeededLocked(Ljava/lang/String;IIZ)Lcom/android/server/am/PhantomProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/PhantomProcessList;->isAppProcess(I)Z +HPLcom/android/server/am/PhantomProcessList;->lookForPhantomProcessesLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/am/PhantomProcessList;->lookForPhantomProcessesLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/PhantomProcessList$Injector;Lcom/android/server/am/PhantomProcessList$Injector;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/io/InputStream;Ljava/io/FileInputStream; +HPLcom/android/server/am/PhantomProcessList;->updateProcessCpuStatesLocked(Lcom/android/internal/os/ProcessCpuTracker;)V HSPLcom/android/server/am/PlatformCompatCache$CacheItem;->fetchLocked(Landroid/content/pm/ApplicationInfo;I)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; -HSPLcom/android/server/am/PlatformCompatCache$CacheItem;->isChangeEnabled(Landroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/am/PlatformCompatCache$CacheItem;Lcom/android/server/am/PlatformCompatCache$CacheItem;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLcom/android/server/am/ProcessCachedOptimizerRecord;->setShouldNotFreeze(Z)V+]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; -HSPLcom/android/server/am/ProcessCachedOptimizerRecord;->setShouldNotFreeze(ZZ)Z +HSPLcom/android/server/am/ProcessCachedOptimizerRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V +HSPLcom/android/server/am/ProcessCachedOptimizerRecord;->setShouldNotFreeze(ZII)V +HSPLcom/android/server/am/ProcessCachedOptimizerRecord;->setShouldNotFreeze(ZZII)Z HSPLcom/android/server/am/ProcessErrorStateRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V HSPLcom/android/server/am/ProcessErrorStateRecord;->isCrashing()Z HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda1;->run()V HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V -HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda5;->run()V HSPLcom/android/server/am/ProcessList$MyProcessMap;->put(Ljava/lang/String;ILcom/android/server/am/ProcessRecord;)Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/am/ProcessList$MyProcessMap;->remove(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/am/ProcessList$ProcStateMemTracker;-><init>()V HSPLcom/android/server/am/ProcessList;->addProcessNameLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->checkSlow(JLjava/lang/String;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ProcessList;->computeGidsForProcess(II[IZ)[I+]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->batchSetOomAdj(Ljava/util/ArrayList;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->checkSlow(JLjava/lang/String;)V +HSPLcom/android/server/am/ProcessList;->computeGidsForProcess(II[IZ)[I HSPLcom/android/server/am/ProcessList;->computeNextPssTime(ILcom/android/server/am/ProcessList$ProcStateMemTracker;ZZJJ)J -HSPLcom/android/server/am/ProcessList;->fillInProcMemInfoLOSP(Lcom/android/server/am/ProcessRecord;Landroid/app/ActivityManager$RunningAppProcessInfo;I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessList;->fillInProcMemInfoLOSP(Lcom/android/server/am/ProcessRecord;Landroid/app/ActivityManager$RunningAppProcessInfo;I)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessList;->forEachLruProcessesLOSP(ZLjava/util/function/Consumer;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types HSPLcom/android/server/am/ProcessList;->getBlockStateForUid(Lcom/android/server/am/UidRecord;)I -HSPLcom/android/server/am/ProcessList;->getLRURecordForAppLOSP(Landroid/os/IBinder;)Lcom/android/server/am/ProcessRecord;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->getLRURecordForAppLOSP(Landroid/os/IBinder;)Lcom/android/server/am/ProcessRecord;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ProcessList;->getMemLevel(I)J -HSPLcom/android/server/am/ProcessList;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList; -HSPLcom/android/server/am/ProcessList;->getNumForegroundServices()Landroid/util/Pair;+]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->getProcessRecordLocked(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/ProcessMap;Lcom/android/server/am/ProcessList$MyProcessMap; -HSPLcom/android/server/am/ProcessList;->getRunningAppProcessesLOSP(ZIZII)Ljava/util/List;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->getUidProcStateLOSP(I)I+]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/ProcessList;->getUidProcessCapabilityLOSP(I)I+]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord; -HSPLcom/android/server/am/ProcessList;->getUidRecordLOSP(I)Lcom/android/server/am/UidRecord;+]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids; +HSPLcom/android/server/am/ProcessList;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V +HSPLcom/android/server/am/ProcessList;->getNumForegroundServices()Landroid/util/Pair;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->getPackageAppDataInfoMap(Landroid/content/pm/PackageManagerInternal;[Ljava/lang/String;I)Ljava/util/Map;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/am/ProcessList;->getProcessRecordLocked(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/ProcessList;->getRunningAppProcessesLOSP(ZIZII)Ljava/util/List;+]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->getUidProcStateLOSP(I)I +HSPLcom/android/server/am/ProcessList;->getUidProcessCapabilityLOSP(I)I +HSPLcom/android/server/am/ProcessList;->getUidRecordLOSP(I)Lcom/android/server/am/UidRecord; HSPLcom/android/server/am/ProcessList;->handleProcessStartedLocked(Lcom/android/server/am/ProcessRecord;IZJZ)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/Watchdog;Lcom/android/server/Watchdog;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessList;->incrementProcStateSeqAndNotifyAppsLOSP(Lcom/android/server/am/ActiveUids;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->incrementProcStateSeqAndNotifyAppsLOSP(Lcom/android/server/am/ActiveUids;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ProcessList;->isProcStartValidLocked(Lcom/android/server/am/ProcessRecord;J)Ljava/lang/String;+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ProcessList;->killAppIfBgRestrictedAndCachedIdleLocked(Lcom/android/server/am/ProcessRecord;J)J+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessList;->newProcessRecordLocked(Landroid/content/pm/ApplicationInfo;Ljava/lang/String;ZIZILjava/lang/String;Lcom/android/server/am/HostingRecord;)Lcom/android/server/am/ProcessRecord;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessList;->newProcessRecordLocked(Landroid/content/pm/ApplicationInfo;Ljava/lang/String;ZIZILjava/lang/String;Lcom/android/server/am/HostingRecord;)Lcom/android/server/am/ProcessRecord;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessList;->noteProcessDiedLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/Watchdog;Lcom/android/server/Watchdog;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessList;->procStateToImportance(IILandroid/app/ActivityManager$RunningAppProcessInfo;I)I HSPLcom/android/server/am/ProcessList;->removeLruProcessLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->removeProcessNameLocked(Ljava/lang/String;ILcom/android/server/am/ProcessRecord;)Lcom/android/server/am/ProcessRecord;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/ProcessMap;Lcom/android/server/am/ProcessList$MyProcessMap;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;]Lcom/android/server/am/ProcessList$IsolatedUidRange;Lcom/android/server/am/ProcessList$IsolatedUidRange;]Lcom/android/server/am/ProcessList$MyProcessMap;Lcom/android/server/am/ProcessList$MyProcessMap;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->searchEachLruProcessesLOSP(ZLjava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Function;Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda0;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda1;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda2;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda5;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda6;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda8; -HSPLcom/android/server/am/ProcessList;->sendPackageBroadcastLocked(I[Ljava/lang/String;I)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->setOomAdj(III)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/nio/ByteBuffer;Ljava/nio/HeapByteBuffer; -HSPLcom/android/server/am/ProcessList;->startProcess(Lcom/android/server/am/HostingRecord;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;I[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)Landroid/os/Process$ProcessStartResult;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/AppZygote;Landroid/os/AppZygote;]Landroid/os/ChildZygoteProcess;Landroid/os/ChildZygoteProcess;]Lcom/android/server/AppStateTracker;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/HostingRecord;Lcom/android/server/am/HostingRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/am/ProcessList;->removeProcessNameLocked(Ljava/lang/String;ILcom/android/server/am/ProcessRecord;)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->searchEachLruProcessesLOSP(ZLjava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Function;Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda1;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda5;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda6;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda7;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda8; +HPLcom/android/server/am/ProcessList;->sendPackageBroadcastLocked(I[Ljava/lang/String;I)V+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->startProcess(Lcom/android/server/am/HostingRecord;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;I[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)Landroid/os/Process$ProcessStartResult;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/AppZygote;Landroid/os/AppZygote;]Lcom/android/server/AppStateTracker;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; HSPLcom/android/server/am/ProcessList;->startProcessLocked(Lcom/android/server/am/HostingRecord;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;I[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;JJ)Z+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; HSPLcom/android/server/am/ProcessList;->startProcessLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/HostingRecord;IZZLjava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/storage/StorageManagerInternal;Lcom/android/server/StorageManagerService$StorageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService$HiddenApiSettings;Lcom/android/server/am/ActivityManagerService$HiddenApiSettings;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ProcessList;->startProcessLocked(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;ZILcom/android/server/am/HostingRecord;IZZIZILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/Runnable;)Lcom/android/server/am/ProcessRecord;+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/am/AppErrors;Lcom/android/server/am/AppErrors;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessList;->updateClientActivitiesOrderingLSP(Lcom/android/server/am/ProcessRecord;III)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/am/ProcessList;->updateLruProcessInternalLSP(Lcom/android/server/am/ProcessRecord;JIILjava/lang/String;Ljava/lang/Object;Lcom/android/server/am/ProcessRecord;)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->updateLruProcessLSP(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;ZZ)V+]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessProviderRecord;Lcom/android/server/am/ProcessProviderRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessList;->updateLruProcessLocked(Lcom/android/server/am/ProcessRecord;ZLcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; +HSPLcom/android/server/am/ProcessList;->updateClientActivitiesOrderingLSP(Lcom/android/server/am/ProcessRecord;III)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->updateLruProcessLSP(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;ZZ)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessList;->updateLruProcessLocked(Lcom/android/server/am/ProcessRecord;ZLcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ProcessList;->updateSeInfo(Lcom/android/server/am/ProcessRecord;)Ljava/lang/String;+]Lcom/android/server/am/ProcessList$ProcessListSettingsListener;Lcom/android/server/am/ProcessList$ProcessListSettingsListener; HSPLcom/android/server/am/ProcessList;->writeLmkd(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Z+]Lcom/android/server/am/LmkdConnection;Lcom/android/server/am/LmkdConnection; HSPLcom/android/server/am/ProcessProfileRecord$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;)V HSPLcom/android/server/am/ProcessProfileRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V -HSPLcom/android/server/am/ProcessProfileRecord;->addHostingComponentType(I)V+]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; +HSPLcom/android/server/am/ProcessProfileRecord;->addHostingComponentType(I)V HSPLcom/android/server/am/ProcessProfileRecord;->computeNextPssTime(IZZJ)J HSPLcom/android/server/am/ProcessProfileRecord;->lambda$onProcessActive$0(Lcom/android/internal/app/procstats/ProcessState;Lcom/android/server/am/ProcessStatsService;ILcom/android/internal/app/procstats/ProcessState;Ljava/lang/String;Lcom/android/internal/app/procstats/ProcessStats$ProcessStateHolder;)V HSPLcom/android/server/am/ProcessProfileRecord;->onProcessActive(Landroid/app/IApplicationThread;Lcom/android/server/am/ProcessStatsService;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HPLcom/android/server/am/ProcessProfileRecord;->onProcessFrozen()V+]Lcom/android/internal/app/procstats/ProcessState;Lcom/android/internal/app/procstats/ProcessState;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/ProcessProfileRecord;->onProcessFrozen()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ProcessProfileRecord;->onProcessInactive(Lcom/android/server/am/ProcessStatsService;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessProfileRecord;->setProcessTrackerState(II)V+]Lcom/android/internal/app/procstats/ProcessState;Lcom/android/internal/app/procstats/ProcessState;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessProfileRecord;->updateProcState(Lcom/android/server/am/ProcessStateRecord;)V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HPLcom/android/server/am/ProcessProfileRecord;->onProcessUnfrozen()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ProcessProfileRecord;->setProcessTrackerState(II)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ProcessProfileRecord;->updateProcState(Lcom/android/server/am/ProcessStateRecord;)V HSPLcom/android/server/am/ProcessProviderRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V HSPLcom/android/server/am/ProcessProviderRecord;->addProviderConnection(Lcom/android/server/am/ContentProviderConnection;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessProviderRecord;->getProviderAt(I)Lcom/android/server/am/ContentProviderRecord;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/am/ProcessProviderRecord;->getProviderAt(I)Lcom/android/server/am/ContentProviderRecord; HSPLcom/android/server/am/ProcessProviderRecord;->getProviderConnectionAt(I)Lcom/android/server/am/ContentProviderConnection;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ProcessProviderRecord;->numberOfProviderConnections()I+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessProviderRecord;->numberOfProviders()I+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/am/ProcessProviderRecord;->onCleanupApplicationRecordLocked(Z)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ContentProviderRecord;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessList;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessProviderRecord;->numberOfProviders()I +HSPLcom/android/server/am/ProcessProviderRecord;->onCleanupApplicationRecordLocked(Z)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ProcessReceiverRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V -HSPLcom/android/server/am/ProcessReceiverRecord;->addReceiver(Lcom/android/server/am/ReceiverList;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/am/ProcessReceiverRecord;->numberOfReceivers()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/ProcessReceiverRecord;->addReceiver(Lcom/android/server/am/ReceiverList;)V +HSPLcom/android/server/am/ProcessReceiverRecord;->numberOfReceivers()I HSPLcom/android/server/am/ProcessRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessRecord;->addPackage(Ljava/lang/String;JLcom/android/server/am/ProcessStatsService;)Z+]Lcom/android/internal/app/procstats/ProcessState;Lcom/android/internal/app/procstats/ProcessState;]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService; +HSPLcom/android/server/am/ProcessRecord;->addPackage(Ljava/lang/String;JLcom/android/server/am/ProcessStatsService;)Z +HSPLcom/android/server/am/ProcessRecord;->forEachConnectionHost(Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;Lcom/android/server/am/ActivityManagerService$$ExternalSyntheticLambda12; +HSPLcom/android/server/am/ProcessRecord;->getActiveInstrumentation()Lcom/android/server/am/ActiveInstrumentation; HSPLcom/android/server/am/ProcessRecord;->getCpuDelayTime()J+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler; HSPLcom/android/server/am/ProcessRecord;->getHostingRecord()Lcom/android/server/am/HostingRecord; HSPLcom/android/server/am/ProcessRecord;->getLastActivityTime()J HSPLcom/android/server/am/ProcessRecord;->getLruSeq()I -HSPLcom/android/server/am/ProcessRecord;->getPackageList()[Ljava/lang/String;+]Lcom/android/server/am/PackageList;Lcom/android/server/am/PackageList; +HSPLcom/android/server/am/ProcessRecord;->getOnewayThread()Landroid/app/IApplicationThread; +HSPLcom/android/server/am/ProcessRecord;->getPackageList()[Ljava/lang/String; HSPLcom/android/server/am/ProcessRecord;->getPid()I HSPLcom/android/server/am/ProcessRecord;->getPkgDeps()Landroid/util/ArraySet; HSPLcom/android/server/am/ProcessRecord;->getPkgList()Lcom/android/server/am/PackageList; HSPLcom/android/server/am/ProcessRecord;->getSetAdj()I +HSPLcom/android/server/am/ProcessRecord;->getSetCapability()I HSPLcom/android/server/am/ProcessRecord;->getSetProcState()I HSPLcom/android/server/am/ProcessRecord;->getStartUid()I HSPLcom/android/server/am/ProcessRecord;->getThread()Landroid/app/IApplicationThread; HSPLcom/android/server/am/ProcessRecord;->getUidRecord()Lcom/android/server/am/UidRecord; +HSPLcom/android/server/am/ProcessRecord;->getWaitingToKill()Ljava/lang/String; HSPLcom/android/server/am/ProcessRecord;->getWindowProcessController()Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessRecord;->hasActivities()Z+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessRecord;->hasActivitiesOrRecentTasks()Z+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessRecord;->isCached()Z +HPLcom/android/server/am/ProcessRecord;->isFreezable()Z HSPLcom/android/server/am/ProcessRecord;->isInFullBackup()Z HSPLcom/android/server/am/ProcessRecord;->isKilled()Z HSPLcom/android/server/am/ProcessRecord;->isKilledByAm()Z @@ -1005,126 +1030,123 @@ HSPLcom/android/server/am/ProcessRecord;->isPendingFinishAttach()Z HSPLcom/android/server/am/ProcessRecord;->isPersistent()Z HSPLcom/android/server/am/ProcessRecord;->isRemoved()Z HSPLcom/android/server/am/ProcessRecord;->isThreadReady()Z -HPLcom/android/server/am/ProcessRecord;->killLocked(Ljava/lang/String;Ljava/lang/String;IIZZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/ProcessRecord;->makeActive(Landroid/app/IApplicationThread;Lcom/android/server/am/ProcessStatsService;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessRecord;->onCleanupApplicationRecordLSP(Lcom/android/server/am/ProcessStatsService;ZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/ProcessRecord;->killLocked(Ljava/lang/String;Ljava/lang/String;IIZZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ProcessRecord;->makeActive(Lcom/android/server/am/ApplicationThreadDeferred;Lcom/android/server/am/ProcessStatsService;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessRecord;->onCleanupApplicationRecordLSP(Lcom/android/server/am/ProcessStatsService;ZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HPLcom/android/server/am/ProcessRecord;->onProcessUnfrozen()V HSPLcom/android/server/am/ProcessRecord;->removeBackgroundStartPrivileges(Landroid/os/Binder;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessRecord;->resetPackageList(Lcom/android/server/am/ProcessStatsService;)V -HSPLcom/android/server/am/ProcessRecord;->setBackgroundStartPrivileges(Landroid/os/Binder;Landroid/app/BackgroundStartPrivileges;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/am/ProcessRecord;->setBackgroundStartPrivileges(Landroid/os/Binder;Landroid/app/BackgroundStartPrivileges;)V HSPLcom/android/server/am/ProcessRecord;->setLastActivityTime(J)V HSPLcom/android/server/am/ProcessRecord;->setLruSeq(I)V -HSPLcom/android/server/am/ProcessRecord;->setPid(I)V+]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessRecord;->toShortString(Ljava/lang/StringBuilder;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/am/ProcessRecord;->toString()Ljava/lang/String;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ProcessRecord;->setPid(I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessRecord;->toShortString(Ljava/lang/StringBuilder;)V +HSPLcom/android/server/am/ProcessRecord;->toString()Ljava/lang/String;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ProcessServiceRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V HSPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUid(ILjava/lang/String;J)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUidsOfNewService(Lcom/android/server/am/ServiceRecord;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessServiceRecord;->addConnection(Lcom/android/server/am/ConnectionRecord;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; -HSPLcom/android/server/am/ProcessServiceRecord;->addSdkSandboxConnectionIfNecessary(Lcom/android/server/am/ConnectionRecord;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUidsOfNewService(Lcom/android/server/am/ServiceRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessServiceRecord;->addConnection(Lcom/android/server/am/ConnectionRecord;)V +HSPLcom/android/server/am/ProcessServiceRecord;->addSdkSandboxConnectionIfNecessary(Lcom/android/server/am/ConnectionRecord;)V HSPLcom/android/server/am/ProcessServiceRecord;->areForegroundServiceTypesSame(IZ)Z HSPLcom/android/server/am/ProcessServiceRecord;->clearBoundClientUids()V -HSPLcom/android/server/am/ProcessServiceRecord;->getNumForegroundServices()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/am/ProcessServiceRecord;->getRunningServiceAt(I)Lcom/android/server/am/ServiceRecord;+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/ProcessServiceRecord;->getNumForegroundServices()I +HSPLcom/android/server/am/ProcessServiceRecord;->getRunningServiceAt(I)Lcom/android/server/am/ServiceRecord; HSPLcom/android/server/am/ProcessServiceRecord;->hasNonShortForegroundServices()Z HSPLcom/android/server/am/ProcessServiceRecord;->hasTopStartedAlmostPerceptibleServices()Z HSPLcom/android/server/am/ProcessServiceRecord;->modifyRawOomAdj(I)I -HSPLcom/android/server/am/ProcessServiceRecord;->numberOfConnections()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/am/ProcessServiceRecord;->numberOfExecutingServices()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/am/ProcessServiceRecord;->numberOfRunningServices()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/am/ProcessServiceRecord;->numberOfConnections()I +HSPLcom/android/server/am/ProcessServiceRecord;->numberOfExecutingServices()I +HSPLcom/android/server/am/ProcessServiceRecord;->numberOfRunningServices()I HSPLcom/android/server/am/ProcessServiceRecord;->removeSdkSandboxConnectionIfNecessary(Lcom/android/server/am/ConnectionRecord;)V -HSPLcom/android/server/am/ProcessServiceRecord;->startService(Lcom/android/server/am/ServiceRecord;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessServiceRecord;->stopService(Lcom/android/server/am/ServiceRecord;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord; -HSPLcom/android/server/am/ProcessServiceRecord;->updateBoundClientUids()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ProcessServiceRecord;->updateHostingComonentTypeForBindingsLocked()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; +HSPLcom/android/server/am/ProcessServiceRecord;->startService(Lcom/android/server/am/ServiceRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessServiceRecord;->stopService(Lcom/android/server/am/ServiceRecord;)Z +HSPLcom/android/server/am/ProcessServiceRecord;->updateBoundClientUids()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ProcessServiceRecord;->updateHostingComonentTypeForBindingsLocked()V HSPLcom/android/server/am/ProcessStateRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V -HPLcom/android/server/am/ProcessStateRecord;->computeOomAdjFromActivitiesIfNecessary(Lcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;IZZIIIII)V+]Lcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;Lcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessStateRecord;->forceProcessStateUpTo(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; -HSPLcom/android/server/am/ProcessStateRecord;->getCachedCompatChange(I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjuster;,Lcom/android/server/am/OomAdjusterModernImpl; -HSPLcom/android/server/am/ProcessStateRecord;->getCachedHasActivities()Z+]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HPLcom/android/server/am/ProcessStateRecord;->computeOomAdjFromActivitiesIfNecessary(Lcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback;IZZIIIII)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessStateRecord;->forceProcessStateUpTo(I)V+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/ProcessStateRecord;->getCachedCompatChange(I)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl; +HSPLcom/android/server/am/ProcessStateRecord;->getCachedHasActivities()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->getCachedHasRecentTasks()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->getCachedHasVisibleActivities()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsHeavyWeight()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsHomeProcess()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsPreviousProcess()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsReceivingBroadcast([I)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord; +HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsReceivingBroadcast([I)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HSPLcom/android/server/am/ProcessStateRecord;->getCurAdj()I HSPLcom/android/server/am/ProcessStateRecord;->getCurProcState()I +HSPLcom/android/server/am/ProcessStateRecord;->getCurRawAdj()I HSPLcom/android/server/am/ProcessStateRecord;->getSetAdj()I HSPLcom/android/server/am/ProcessStateRecord;->getSetProcState()I HSPLcom/android/server/am/ProcessStateRecord;->isCached()Z -HSPLcom/android/server/am/ProcessStateRecord;->onCleanupApplicationRecordLSP()V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/ProcessStateRecord;->onCleanupApplicationRecordLSP()V HSPLcom/android/server/am/ProcessStateRecord;->resetCachedInfo()V HSPLcom/android/server/am/ProcessStateRecord;->setCurAdj(I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->setCurProcState(I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessStateRecord;->setCurRawAdj(I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/am/ProcessStateRecord;->setCurRawAdj(I)V HSPLcom/android/server/am/ProcessStateRecord;->setCurRawAdj(IZ)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessStateRecord;->setCurRawProcState(I)V+]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/ProcessStateRecord;->setCurRawProcState(I)V HSPLcom/android/server/am/ProcessStateRecord;->setCurRawProcState(IZ)Z HSPLcom/android/server/am/ProcessStateRecord;->setCurrentSchedulingGroup(I)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/am/ProcessStateRecord;->setHasStartedServices(Z)V+]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord; +HSPLcom/android/server/am/ProcessStateRecord;->setHasStartedServices(Z)V HSPLcom/android/server/am/ProcessStateRecord;->setSetProcState(I)V -HPLcom/android/server/am/ProcessStateRecord;->setWhenUnimportant(J)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/am/ProcessStateRecord;->updateLastInvisibleTime(Z)V HSPLcom/android/server/am/ProcessStatsService;->getMemFactorLocked()I HSPLcom/android/server/am/ProcessStatsService;->getServiceState(Ljava/lang/String;IJLjava/lang/String;Ljava/lang/String;)Lcom/android/internal/app/procstats/ServiceState; -HSPLcom/android/server/am/ProcessStatsService;->setMemFactorLocked(IZJ)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState; +HSPLcom/android/server/am/ProcessStatsService;->setMemFactorLocked(IZJ)Z+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap; HSPLcom/android/server/am/ProcessStatsService;->shouldWriteNowLocked(J)Z -HSPLcom/android/server/am/ProcessStatsService;->updateProcessStateHolderLocked(Lcom/android/internal/app/procstats/ProcessStats$ProcessStateHolder;Ljava/lang/String;IJLjava/lang/String;)V -HSPLcom/android/server/am/ProviderMap;->getProviderByClass(Landroid/content/ComponentName;I)Lcom/android/server/am/ContentProviderRecord;+]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLcom/android/server/am/ProviderMap;->getProviderByName(Ljava/lang/String;I)Lcom/android/server/am/ContentProviderRecord;+]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/ProviderMap;->getProviderByClass(Landroid/content/ComponentName;I)Lcom/android/server/am/ContentProviderRecord;+]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/ProviderMap;->getProviderByName(Ljava/lang/String;I)Lcom/android/server/am/ContentProviderRecord;+]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/am/ProviderMap;->getProvidersByClass(I)Ljava/util/HashMap;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/ProviderMap;->getProvidersByName(I)Ljava/util/HashMap;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/ProviderMap;->putProviderByClass(Landroid/content/ComponentName;Lcom/android/server/am/ContentProviderRecord;)V+]Lcom/android/server/am/ProviderMap;Lcom/android/server/am/ProviderMap;]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLcom/android/server/am/ProviderMap;->putProviderByName(Ljava/lang/String;Lcom/android/server/am/ContentProviderRecord;)V+]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/am/ProviderMap;->putProviderByClass(Landroid/content/ComponentName;Lcom/android/server/am/ContentProviderRecord;)V+]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/am/ReceiverList;-><init>(Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ProcessRecord;IIILandroid/content/IIntentReceiver;)V -HSPLcom/android/server/am/ReceiverList;->containsFilter(Landroid/content/IntentFilter;)Z+]Ljava/util/ArrayList;Lcom/android/server/am/ReceiverList; +HSPLcom/android/server/am/ReceiverList;->containsFilter(Landroid/content/IntentFilter;)Z HSPLcom/android/server/am/ReceiverList;->hashCode()I HSPLcom/android/server/am/SameProcessApplicationThread$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/am/SameProcessApplicationThread;Landroid/content/IIntentReceiver;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIIILjava/lang/String;)V HSPLcom/android/server/am/SameProcessApplicationThread$$ExternalSyntheticLambda1;->run()V -HSPLcom/android/server/am/SameProcessApplicationThread;->scheduleRegisteredReceiver(Landroid/content/IIntentReceiver;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIIILjava/lang/String;)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/am/ServiceRecord$1;->run()V+]Lcom/android/server/notification/NotificationManagerInternal;Lcom/android/server/notification/NotificationManagerService$12;,Lcom/android/server/notification/NotificationManagerService$13; +HSPLcom/android/server/am/SameProcessApplicationThread;->scheduleRegisteredReceiver(Landroid/content/IIntentReceiver;Landroid/content/Intent;ILjava/lang/String;Landroid/os/Bundle;ZZZIIILjava/lang/String;)V +HSPLcom/android/server/am/ServiceRecord$1;->run()V+]Lcom/android/server/notification/NotificationManagerInternal;Lcom/android/server/notification/NotificationManagerService$13; HSPLcom/android/server/am/ServiceRecord$StartItem;-><init>(Lcom/android/server/am/ServiceRecord;ZILandroid/content/Intent;Lcom/android/server/uri/NeededUriGrants;ILjava/lang/String;Ljava/lang/String;I)V -HSPLcom/android/server/am/ServiceRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/ComponentName;Landroid/content/ComponentName;Ljava/lang/String;ILandroid/content/Intent$FilterComparison;Landroid/content/pm/ServiceInfo;ZLjava/lang/Runnable;Ljava/lang/String;ILjava/lang/String;Z)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HSPLcom/android/server/am/ServiceRecord;->addConnection(Landroid/os/IBinder;Lcom/android/server/am/ConnectionRecord;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessProfileRecord;Lcom/android/server/am/ProcessProfileRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ServiceRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/ComponentName;Landroid/content/ComponentName;Ljava/lang/String;ILandroid/content/Intent$FilterComparison;Landroid/content/pm/ServiceInfo;ZLjava/lang/Runnable;Ljava/lang/String;ILjava/lang/String;Z)V +HSPLcom/android/server/am/ServiceRecord;->addConnection(Landroid/os/IBinder;Lcom/android/server/am/ConnectionRecord;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ServiceRecord;->clearDeliveredStartsLocked()V+]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ServiceRecord;->findDeliveredStart(IZZ)Lcom/android/server/am/ServiceRecord$StartItem;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ServiceRecord;->getBackgroundStartPrivilegesWithExclusiveToken()Landroid/app/BackgroundStartPrivileges;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ServiceRecord;->getFgsAllowWiu_forStart()I+]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord; -HSPLcom/android/server/am/ServiceRecord;->getFgsAllowWiu_legacy()I -HSPLcom/android/server/am/ServiceRecord;->getTracker()Lcom/android/internal/app/procstats/ServiceState;+]Lcom/android/internal/app/procstats/ServiceState;Lcom/android/internal/app/procstats/ServiceState;]Lcom/android/server/am/ProcessStatsService;Lcom/android/server/am/ProcessStatsService; -HSPLcom/android/server/am/ServiceRecord;->hasAutoCreateConnections()Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ServiceRecord;->getFgsAllowWiu_forStart()I +HSPLcom/android/server/am/ServiceRecord;->getFgsAllowWiu_new()I +HSPLcom/android/server/am/ServiceRecord;->getTracker()Lcom/android/internal/app/procstats/ServiceState; +HSPLcom/android/server/am/ServiceRecord;->hasAutoCreateConnections()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/am/ServiceRecord;->isShortFgs()Z -HSPLcom/android/server/am/ServiceRecord;->postNotification(Z)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; +HSPLcom/android/server/am/ServiceRecord;->postNotification(Z)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ServiceRecord;->removeConnection(Landroid/os/IBinder;)V -HSPLcom/android/server/am/ServiceRecord;->retrieveAppBindingLocked(Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Lcom/android/server/am/AppBindRecord;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/am/ServiceRecord;->setProcess(Lcom/android/server/am/ProcessRecord;Landroid/app/IApplicationThread;ILcom/android/server/am/UidRecord;)V+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ConnectionRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessServiceRecord;Lcom/android/server/am/ProcessServiceRecord;]Lcom/android/server/am/ServiceRecord;Lcom/android/server/am/ServiceRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/ServiceRecord;->toString()Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/ServiceRecord;->retrieveAppBindingLocked(Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Lcom/android/server/am/AppBindRecord; +HSPLcom/android/server/am/ServiceRecord;->setProcess(Lcom/android/server/am/ProcessRecord;Landroid/app/IApplicationThread;ILcom/android/server/am/UidRecord;)V+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/ServiceRecord;->toString()Ljava/lang/String; HSPLcom/android/server/am/ServiceRecord;->updateFgsHasNotificationPermission()V -HSPLcom/android/server/am/ServiceRecord;->updateKeepWarmLocked()V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; +HSPLcom/android/server/am/ServiceRecord;->updateKeepWarmLocked()V+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/ServiceRecord;->updateOomAdjSeq()V -HSPLcom/android/server/am/ServiceRecord;->updateProcessStateOnRequest()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateRecord;Lcom/android/server/am/ProcessStateRecord; +HSPLcom/android/server/am/ServiceRecord;->updateProcessStateOnRequest()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/ServiceRecord;->useNewWiuLogic_forStart()Z HSPLcom/android/server/am/ServiceRecord;->wasOomAdjUpdated()Z HSPLcom/android/server/am/UidObserverController$$ExternalSyntheticLambda0;->run()V+]Lcom/android/server/am/UidObserverController;Lcom/android/server/am/UidObserverController; HSPLcom/android/server/am/UidObserverController$ChangeRecord;->copyTo(Lcom/android/server/am/UidObserverController$ChangeRecord;)V -HSPLcom/android/server/am/UidObserverController;->dispatchUidsChanged()V+]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Lcom/android/server/am/ActiveUids;Lcom/android/server/am/ActiveUids;]Lcom/android/server/am/UidObserverController$ChangeRecord;Lcom/android/server/am/UidObserverController$ChangeRecord;]Lcom/android/server/am/UidObserverController;Lcom/android/server/am/UidObserverController;]Lcom/android/server/am/UidRecord;Lcom/android/server/am/UidRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/UidObserverController;->dispatchUidsChangedForObserver(Landroid/app/IUidObserver;Lcom/android/server/am/UidObserverController$UidObserverRegistration;I)V+]Landroid/app/IUidObserver;megamorphic_types]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/am/UidObserverController$UidObserverRegistration;Lcom/android/server/am/UidObserverController$UidObserverRegistration; -HSPLcom/android/server/am/UidObserverController;->enqueueUidChange(Lcom/android/server/am/UidObserverController$ChangeRecord;IIIIJIZ)I+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$UiHandler;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/am/UidProcessMap;->get(ILjava/lang/String;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/am/UidObserverController;->dispatchUidsChanged()V+]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/UidObserverController;->dispatchUidsChangedForObserver(Landroid/app/IUidObserver;Lcom/android/server/am/UidObserverController$UidObserverRegistration;I)V+]Landroid/app/IUidObserver;megamorphic_types]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/am/UidObserverController;->enqueueUidChange(Lcom/android/server/am/UidObserverController$ChangeRecord;IIIIJIZ)I+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/am/UidProcessMap;->get(ILjava/lang/String;)Ljava/lang/Object;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/am/UidRecord;-><init>(ILcom/android/server/am/ActivityManagerService;)V -HPLcom/android/server/am/UidRecord;->areAllProcessesFrozen(Lcom/android/server/am/ProcessRecord;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessCachedOptimizerRecord;Lcom/android/server/am/ProcessCachedOptimizerRecord; -HSPLcom/android/server/am/UidRecord;->getMinProcAdj()I+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; -HSPLcom/android/server/am/UserController$Injector;->checkCallingPermission(Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService; +HPLcom/android/server/am/UidRecord;->areAllProcessesFrozen(Lcom/android/server/am/ProcessRecord;)Z +HSPLcom/android/server/am/UidRecord;->forEachProcess(Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;Lcom/android/server/am/ActiveUids$$ExternalSyntheticLambda0;,Lcom/android/server/am/ProcessList$$ExternalSyntheticLambda3; +HSPLcom/android/server/am/UidRecord;->getMinProcAdj()I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord; HSPLcom/android/server/am/UserController$Injector;->getUserManager()Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/am/UserController;->checkGetCurrentUserPermissions()V+]Lcom/android/server/am/UserController$Injector;Lcom/android/server/am/UserController$Injector; HSPLcom/android/server/am/UserController;->exists(I)Z+]Lcom/android/server/am/UserController$Injector;Lcom/android/server/am/UserController$Injector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/am/UserController;->getCurrentUserId()I -HSPLcom/android/server/am/UserController;->getCurrentUserIdChecked()I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/UserController;->getLastUserUnlockingUptime()J HSPLcom/android/server/am/UserController;->getStartedUserArray()[I HSPLcom/android/server/am/UserController;->getStartedUserState(I)Lcom/android/server/am/UserState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/UserController;->handleIncomingUser(IIIZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/UserController$Injector;Lcom/android/server/am/UserController$Injector;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/am/UserController;->handleIncomingUser(IIIZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/UserController$Injector;Lcom/android/server/am/UserController$Injector;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/UserController;->hasStartedUserState(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/am/UserController;->isSameProfileGroup(II)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/am/UserController;->isUserOrItsParentRunning(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/UserController;->isUserRunning(II)Z+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; HSPLcom/android/server/am/UserController;->unsafeConvertIncomingUser(I)I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController; @@ -1133,436 +1155,469 @@ HSPLcom/android/server/app/GameManagerService;->getConfig(Ljava/lang/String;I)Lc HSPLcom/android/server/app/GameManagerService;->getGameModeFromSettingsUnchecked(Ljava/lang/String;I)I+]Lcom/android/server/app/GameManagerSettings;Lcom/android/server/app/GameManagerSettings; HSPLcom/android/server/apphibernation/AppHibernationService;->checkUserStatesExist(ILjava/lang/String;Z)Z+]Landroid/os/UserManager;Landroid/os/UserManager;]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/apphibernation/AppHibernationService;->handleIncomingUser(ILjava/lang/String;)I+]Landroid/app/IActivityManager;Lcom/android/server/am/ActivityManagerService; -HSPLcom/android/server/apphibernation/AppHibernationService;->isHibernatingForUser(Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/SystemService;Lcom/android/server/apphibernation/AppHibernationService;]Lcom/android/server/apphibernation/AppHibernationService;Lcom/android/server/apphibernation/AppHibernationService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Map;Landroid/util/ArrayMap; +HSPLcom/android/server/apphibernation/AppHibernationService;->isHibernatingForUser(Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Map;Landroid/util/ArrayMap; HSPLcom/android/server/apphibernation/AppHibernationService;->isHibernatingGlobally(Ljava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/Map;Landroid/util/ArrayMap; -HPLcom/android/server/apphibernation/AppHibernationService;->lambda$new$6(ILandroid/app/usage/UsageEvents$Event;)V+]Lcom/android/server/apphibernation/AppHibernationService;Lcom/android/server/apphibernation/AppHibernationService; -HPLcom/android/server/apphibernation/AppHibernationService;->setHibernatingForUser(Ljava/lang/String;IZ)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/SystemService;Lcom/android/server/apphibernation/AppHibernationService;]Lcom/android/server/apphibernation/AppHibernationService;Lcom/android/server/apphibernation/AppHibernationService;]Lcom/android/server/apphibernation/HibernationStateDiskStore;Lcom/android/server/apphibernation/HibernationStateDiskStore;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; -HPLcom/android/server/apphibernation/AppHibernationService;->setHibernatingGlobally(Ljava/lang/String;Z)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/SystemService;Lcom/android/server/apphibernation/AppHibernationService;]Lcom/android/server/apphibernation/HibernationStateDiskStore;Lcom/android/server/apphibernation/HibernationStateDiskStore;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; +HPLcom/android/server/apphibernation/AppHibernationService;->setHibernatingForUser(Ljava/lang/String;IZ)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/apphibernation/HibernationStateDiskStore;Lcom/android/server/apphibernation/HibernationStateDiskStore;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; +HPLcom/android/server/apphibernation/AppHibernationService;->setHibernatingGlobally(Ljava/lang/String;Z)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/apphibernation/HibernationStateDiskStore;Lcom/android/server/apphibernation/HibernationStateDiskStore;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; HSPLcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;->getForegroundOps(ILjava/lang/String;)Landroid/util/SparseBooleanArray;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/permission/access/appop/AppOpService; -HSPLcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;->getPackageMode(Ljava/lang/String;II)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceImpl;,Lcom/android/server/permission/access/appop/AppOpService; -HSPLcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;->getUidMode(ILjava/lang/String;I)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceImpl;,Lcom/android/server/permission/access/appop/AppOpService; -HSPLcom/android/server/appop/AppOpsRestrictionsImpl;->getUserRestriction(Ljava/lang/Object;II)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/appop/AppOpsRestrictionsImpl;->getUserRestriction(Ljava/lang/Object;IILjava/lang/String;Ljava/lang/String;Z)Z+]Landroid/os/PackageTagsList;Landroid/os/PackageTagsList;]Lcom/android/server/appop/AppOpsRestrictionsImpl;Lcom/android/server/appop/AppOpsRestrictionsImpl; -HPLcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda13;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda9;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;->getPackageMode(Ljava/lang/String;II)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/permission/access/appop/AppOpService; +HSPLcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;->getUidMode(ILjava/lang/String;I)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/permission/access/appop/AppOpService; +HSPLcom/android/server/appop/AppOpsRestrictionsImpl;->getUserRestriction(Ljava/lang/Object;II)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/appop/AppOpsRestrictionsImpl;->getUserRestriction(Ljava/lang/Object;IILjava/lang/String;Ljava/lang/String;Z)Z+]Lcom/android/server/appop/AppOpsRestrictionsImpl;Lcom/android/server/appop/AppOpsRestrictionsImpl; +HSPLcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda11;->execute(Ljava/lang/Runnable;)V +HPLcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda13;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V +HSPLcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda7;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V +HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V +HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda9;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;->checkOperation(IILjava/lang/String;Ljava/lang/String;IZ)I+]Landroid/app/AppOpsManagerInternal$CheckOpsDelegate;Lcom/android/server/policy/AppOpsPolicy; HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V+]Landroid/app/AppOpsManagerInternal$CheckOpsDelegate;Lcom/android/server/policy/AppOpsPolicy; HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;->noteOperation(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp;+]Landroid/app/AppOpsManagerInternal$CheckOpsDelegate;Lcom/android/server/policy/AppOpsPolicy; HSPLcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Landroid/app/AppOpsManagerInternal$CheckOpsDelegate;Lcom/android/server/policy/AppOpsPolicy; HSPLcom/android/server/appop/AppOpsService$ClientUserRestrictionState;->hasRestriction(ILjava/lang/String;Ljava/lang/String;IZ)Z+]Lcom/android/server/appop/AppOpsRestrictions;Lcom/android/server/appop/AppOpsRestrictionsImpl; -HSPLcom/android/server/appop/AppOpsService$Op;->createEntryLocked(Ljava/lang/String;)Landroid/app/AppOpsManager$OpEntry;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp; -HSPLcom/android/server/appop/AppOpsService$Op;->getOrCreateAttribution(Lcom/android/server/appop/AppOpsService$Op;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/appop/AttributedOp;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/appop/AppOpsService$Op;->isRunning()Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp; +HSPLcom/android/server/appop/AppOpsService$Op;-><init>(Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService$UidState;Ljava/lang/String;II)V +HSPLcom/android/server/appop/AppOpsService$Op;->createEntryLocked(Ljava/lang/String;)Landroid/app/AppOpsManager$OpEntry;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +HSPLcom/android/server/appop/AppOpsService$Op;->getOrCreateAttribution(Lcom/android/server/appop/AppOpsService$Op;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/appop/AttributedOp; +HSPLcom/android/server/appop/AppOpsService$Op;->isRunning()Z HSPLcom/android/server/appop/AppOpsService$UidState;->evalMode(II)I+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AppOpsUidStateTracker;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; HSPLcom/android/server/appop/AppOpsService$UidState;->getState()I+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AppOpsUidStateTracker;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsService;->checkOperation(IILjava/lang/String;)I+]Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; -HSPLcom/android/server/appop/AppOpsService;->checkOperationImpl(IILjava/lang/String;Ljava/lang/String;IZ)I+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->checkOperationRaw(IILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; -HSPLcom/android/server/appop/AppOpsService;->checkOperationUnchecked(IILjava/lang/String;Ljava/lang/String;IZ)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AppOpsService$UidState;Lcom/android/server/appop/AppOpsService$UidState;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->checkPackage(ILjava/lang/String;)I+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->collectAsyncNotedOp(ILjava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)V+]Landroid/os/RemoteCallbackList;Lcom/android/server/appop/AppOpsService$8;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/appop/AppOpsService;->collectOps(Lcom/android/server/appop/AppOpsService$Ops;[ILjava/lang/String;)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Lcom/android/server/appop/AppOpsService$Ops;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/appop/AppOpsService;->checkOperation(IILjava/lang/String;)I +HSPLcom/android/server/appop/AppOpsService;->checkOperationImpl(IILjava/lang/String;Ljava/lang/String;IZ)I +HSPLcom/android/server/appop/AppOpsService;->checkOperationRaw(IILjava/lang/String;Ljava/lang/String;)I +HSPLcom/android/server/appop/AppOpsService;->checkOperationUnchecked(IILjava/lang/String;Ljava/lang/String;IZ)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +HSPLcom/android/server/appop/AppOpsService;->checkPackage(ILjava/lang/String;)I +HSPLcom/android/server/appop/AppOpsService;->collectAsyncNotedOp(ILjava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)V+]Landroid/os/RemoteCallbackList;Lcom/android/server/appop/AppOpsService$8;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/appop/AppOpsService;->collectOps(Lcom/android/server/appop/AppOpsService$Ops;[ILjava/lang/String;)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl; +HPLcom/android/server/appop/AppOpsService;->doForAllAttributedOpsInUidLocked(ILjava/util/function/Consumer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda17;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda18; HSPLcom/android/server/appop/AppOpsService;->enforceManageAppOpsModes(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/appop/AppOpsService;->filterAppAccessUnlocked(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/appop/AppOpsService;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; -HSPLcom/android/server/appop/AppOpsService;->finishOperationImpl(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->finishOperationUnchecked(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/appop/AppOpsService;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;)V +HSPLcom/android/server/appop/AppOpsService;->finishOperationImpl(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V +HSPLcom/android/server/appop/AppOpsService;->finishOperationUnchecked(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V HSPLcom/android/server/appop/AppOpsService;->getAsyncNotedOpsKey(Ljava/lang/String;I)Landroid/util/Pair; HSPLcom/android/server/appop/AppOpsService;->getBypassforPackage(Lcom/android/server/pm/pkg/PackageState;)Landroid/app/AppOpsManager$RestrictionBypass;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/appop/AppOpsService;->getOpLocked(IILjava/lang/String;Ljava/lang/String;ZLandroid/app/AppOpsManager$RestrictionBypass;Z)Lcom/android/server/appop/AppOpsService$Op;+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->getOpLocked(Lcom/android/server/appop/AppOpsService$Ops;IIZ)Lcom/android/server/appop/AppOpsService$Op;+]Landroid/util/SparseArray;Lcom/android/server/appop/AppOpsService$Ops;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->getOpsLocked(ILjava/lang/String;Ljava/lang/String;ZLandroid/app/AppOpsManager$RestrictionBypass;Z)Lcom/android/server/appop/AppOpsService$Ops;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/appop/AppOpsService;->getOpLocked(IILjava/lang/String;Ljava/lang/String;ZLandroid/app/AppOpsManager$RestrictionBypass;Z)Lcom/android/server/appop/AppOpsService$Op; +HSPLcom/android/server/appop/AppOpsService;->getOpLocked(Lcom/android/server/appop/AppOpsService$Ops;IIZ)Lcom/android/server/appop/AppOpsService$Op; +HSPLcom/android/server/appop/AppOpsService;->getOpsLocked(ILjava/lang/String;Ljava/lang/String;ZLandroid/app/AppOpsManager$RestrictionBypass;Z)Lcom/android/server/appop/AppOpsService$Ops; HSPLcom/android/server/appop/AppOpsService;->getPackageManagerInternal()Landroid/content/pm/PackageManagerInternal; -HSPLcom/android/server/appop/AppOpsService;->getPackagesForOpsForDevice([ILjava/lang/String;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/appop/AppOpsService;->getPersistentId(I)Ljava/lang/String;+]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService; +HSPLcom/android/server/appop/AppOpsService;->getPackagesForOpsForDevice([ILjava/lang/String;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/appop/AppOpsService;->getPersistentId(I)Ljava/lang/String; HSPLcom/android/server/appop/AppOpsService;->getUidStateLocked(IZ)Lcom/android/server/appop/AppOpsService$UidState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/appop/AppOpsService;->getUidStateTracker()Lcom/android/server/appop/AppOpsUidStateTracker; -HSPLcom/android/server/appop/AppOpsService;->isAttributionInPackage(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/lang/String;)Z+]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; -HSPLcom/android/server/appop/AppOpsService;->isIncomingPackageValid(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/appop/AppOpsService;->isAttributionInPackage(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/lang/String;)Z+]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; +HSPLcom/android/server/appop/AppOpsService;->isIncomingPackageValid(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HSPLcom/android/server/appop/AppOpsService;->isOpAllowedForUid(I)Z HSPLcom/android/server/appop/AppOpsService;->isOpRestrictedDueToSuspend(ILjava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/appop/AppOpsService;->isOpRestrictedLocked(IILjava/lang/String;Ljava/lang/String;ILandroid/app/AppOpsManager$RestrictionBypass;Z)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AppOpsService$ClientGlobalRestrictionState;Lcom/android/server/appop/AppOpsService$ClientGlobalRestrictionState;]Lcom/android/server/appop/AppOpsService$ClientUserRestrictionState;Lcom/android/server/appop/AppOpsService$ClientUserRestrictionState;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/appop/AppOpsService;->isOpRestrictedLocked(IILjava/lang/String;Ljava/lang/String;ILandroid/app/AppOpsManager$RestrictionBypass;Z)Z HSPLcom/android/server/appop/AppOpsService;->isSpecialPackage(ILjava/lang/String;)Z HSPLcom/android/server/appop/AppOpsService;->isValidVirtualDeviceId(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService; -HSPLcom/android/server/appop/AppOpsService;->noteOperation(IILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; -HSPLcom/android/server/appop/AppOpsService;->noteOperationImpl(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->notifyOpChanged(Lcom/android/server/appop/OnOpModeChangedListener;IILjava/lang/String;Ljava/lang/String;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; -HSPLcom/android/server/appop/AppOpsService;->notifyOpChangedForAllPkgsInUid(IIZLjava/lang/String;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/IAppOpsCallback;Lcom/android/server/policy/PermissionPolicyService$2;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; -HPLcom/android/server/appop/AppOpsService;->notifyOpChecked(Landroid/util/ArraySet;IILjava/lang/String;Ljava/lang/String;III)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/app/IAppOpsNotedCallback;Landroid/app/AppOpsManager$5;,Lcom/android/internal/app/IAppOpsNotedCallback$Stub$Proxy;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->onUidStateChanged(IIZ)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;,Lcom/android/server/appop/AppOpsService$Ops;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; +HSPLcom/android/server/appop/AppOpsService;->noteOperation(IILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp; +HSPLcom/android/server/appop/AppOpsService;->noteOperationImpl(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp; +HSPLcom/android/server/appop/AppOpsService;->noteOperationUnchecked(IILjava/lang/String;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;IIZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +HSPLcom/android/server/appop/AppOpsService;->notifyOpChanged(Lcom/android/server/appop/OnOpModeChangedListener;IILjava/lang/String;Ljava/lang/String;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; +HSPLcom/android/server/appop/AppOpsService;->notifyOpChangedForAllPkgsInUid(IIZLjava/lang/String;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/IAppOpsCallback;Lcom/android/server/policy/PermissionPolicyService$2;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; +HPLcom/android/server/appop/AppOpsService;->notifyOpChecked(Landroid/util/ArraySet;IILjava/lang/String;Ljava/lang/String;III)V+]Lcom/android/internal/app/IAppOpsNotedCallback;Landroid/app/AppOpsManager$5;,Lcom/android/internal/app/IAppOpsNotedCallback$Stub$Proxy; +HSPLcom/android/server/appop/AppOpsService;->onUidStateChanged(IIZ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/OnOpModeChangedListener;Lcom/android/server/appop/AppOpsService$ModeCallback; HSPLcom/android/server/appop/AppOpsService;->readAttributionOp(Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/server/appop/AppOpsService$Op;Ljava/lang/String;)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; HSPLcom/android/server/appop/AppOpsService;->readOp(Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/server/appop/AppOpsService$UidState;Ljava/lang/String;)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; -HSPLcom/android/server/appop/AppOpsService;->reportRuntimeAppOpAccessMessageAsyncLocked(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->resolveUid(Ljava/lang/String;)I+]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/appop/AppOpsService;->scheduleOpActiveChangedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IZII)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/appop/AppOpsService;->scheduleOpNotedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;III)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/appop/AppOpsService;->scheduleOpStartedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IIIIII)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/appop/AppOpsService;->reportRuntimeAppOpAccessMessageAsyncLocked(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)V +HSPLcom/android/server/appop/AppOpsService;->resolveUid(Ljava/lang/String;)I +HSPLcom/android/server/appop/AppOpsService;->scheduleOpActiveChangedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IZII)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/appop/AppOpsService;->scheduleOpNotedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;III)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/appop/AppOpsService;->scheduleOpStartedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IIIIII)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/appop/AppOpsService;->scheduleWriteLocked()V -HSPLcom/android/server/appop/AppOpsService;->setUidMode(IIILcom/android/internal/app/IAppOpsCallback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/appop/AppOpsService;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; +HSPLcom/android/server/appop/AppOpsService;->setMode(IILjava/lang/String;ILcom/android/internal/app/IAppOpsCallback;)V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +HPLcom/android/server/appop/AppOpsService;->setUidMode(IIILcom/android/internal/app/IAppOpsCallback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +HSPLcom/android/server/appop/AppOpsService;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp; HSPLcom/android/server/appop/AppOpsService;->startOperationImpl(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->startWatchingModeWithFlags(ILjava/lang/String;ILcom/android/internal/app/IAppOpsCallback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/app/IAppOpsCallback;megamorphic_types -HSPLcom/android/server/appop/AppOpsService;->switchPackageIfBootTimeOrRarelyUsedLocked(Ljava/lang/String;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/concurrent/ThreadLocalRandom;Ljava/util/concurrent/ThreadLocalRandom; -HSPLcom/android/server/appop/AppOpsService;->updatePermissionRevokedCompat(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/appop/AppOpsService;->startOperationUnchecked(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;IIZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/appop/AppOpsService;->switchPackageIfBootTimeOrRarelyUsedLocked(Ljava/lang/String;)V+]Ljava/util/concurrent/ThreadLocalRandom;Ljava/util/concurrent/ThreadLocalRandom; +HPLcom/android/server/appop/AppOpsService;->updatePermissionRevokedCompat(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/appop/AppOpsService;->updateUidProcState(III)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AppOpsUidStateTracker;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/appop/AppOpsService$PackageVerificationResult;+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; -HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lcom/android/server/appop/AppOpsService$PackageVerificationResult;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/compat/IPlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/appop/AppOpsService$PackageVerificationResult; +HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lcom/android/server/appop/AppOpsService$PackageVerificationResult;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/compat/IPlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/appop/AppOpsService;->verifyIncomingOp(I)V+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/server/appop/AppOpsService;->verifyIncomingUid(I)V+]Landroid/content/Context;Landroid/app/ContextImpl; -HPLcom/android/server/appop/AppOpsService;->writeRecentAccesses()V+]Landroid/app/AppOpsManager$AttributedOpEntry;Landroid/app/AppOpsManager$AttributedOpEntry;]Landroid/app/AppOpsManager$OpEntry;Landroid/app/AppOpsManager$OpEntry;]Landroid/app/AppOpsManager$OpEventProxyInfo;Landroid/app/AppOpsManager$OpEventProxyInfo;]Landroid/app/AppOpsManager$PackageOps;Landroid/app/AppOpsManager$PackageOps;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTracker$UidStateChangedCallback;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda10;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda12;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; +HPLcom/android/server/appop/AppOpsService;->writeRecentAccesses()V+]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;Ljava/lang/Object;)V +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTracker$UidStateChangedCallback;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda12; HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1$$ExternalSyntheticLambda0;->run()V -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->execute(Ljava/lang/Runnable;)V+]Landroid/os/Handler;Lcom/android/server/am/ActivityManagerService$MainHandler; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->executeDelayed(Ljava/lang/Runnable;J)V -HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->execute(Ljava/lang/Runnable;)V +HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->executeDelayed(Ljava/lang/Runnable;J)V HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog; HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logCommitUidState(IIIZZ)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$DelayableExecutor;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$1; HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logCommitUidStateAsync(JIIIZZ)V HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logEvalForegroundMode(IIIII)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$DelayableExecutor;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$1; -HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logEvalForegroundModeAsync(JIIIII)V HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logUpdateUidProcState(III)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$DelayableExecutor;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$1; HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;->logUpdateUidProcStateAsync(JIII)V -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->commitUidPendingState(I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Ljava/util/concurrent/Executor;Landroid/os/HandlerExecutor; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->commitUidPendingState(I)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Ljava/util/concurrent/Executor;Landroid/os/HandlerExecutor; HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->evalMode(III)I+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->evalModeInternal(IIII)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->getUidState(I)I+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->getUidStateLocked(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->updateUidPendingStateIfNeededLocked(I)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; -HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->updateUidProcState(III)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$DelayableExecutor;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$1;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl;Lcom/android/server/appop/AppOpsUidStateTrackerImpl; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->getUidState(I)I +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->getUidStateLocked(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->updateUidPendingStateIfNeededLocked(I)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1; +HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl;->updateUidProcState(III)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$DelayableExecutor;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$1;]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog; HSPLcom/android/server/appop/AttributedOp$InProgressStartOpEvent;->reinit(JJLandroid/os/IBinder;Ljava/lang/String;ILjava/lang/Runnable;IILandroid/app/AppOpsManager$OpEventProxyInfo;IILandroid/util/Pools$Pool;)V+]Landroid/os/IBinder;Landroid/os/Binder;,Landroid/os/BinderProxy;]Landroid/util/Pools$Pool;Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool; -HPLcom/android/server/appop/AttributedOp;->createAttributedOpEntryLocked()Landroid/app/AppOpsManager$AttributedOpEntry;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp; +HSPLcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;->acquire(JJLandroid/os/IBinder;Ljava/lang/String;ILjava/lang/Runnable;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIII)Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;+]Landroid/util/Pools$SimplePool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;]Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool;Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool; +HSPLcom/android/server/appop/AttributedOp;->accessed(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V +HSPLcom/android/server/appop/AttributedOp;->accessed(JJILjava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool;Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool; +HPLcom/android/server/appop/AttributedOp;->createAttributedOpEntryLocked()Landroid/app/AppOpsManager$AttributedOpEntry;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; HPLcom/android/server/appop/AttributedOp;->deepClone(Landroid/util/LongSparseArray;)Landroid/util/LongSparseArray;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HSPLcom/android/server/appop/AttributedOp;->finishOrPause(Landroid/os/IBinder;ZZ)V+]Landroid/app/AppOpsManager$NoteOpEvent;Landroid/app/AppOpsManager$NoteOpEvent;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/Pools$SimplePool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;]Lcom/android/server/appop/AppOpsService$Op;Lcom/android/server/appop/AppOpsService$Op;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HSPLcom/android/server/appop/AttributedOp;->isRunning()Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/appop/AttributedOp;->onUidStateChanged(I)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;Lcom/android/server/appop/AttributedOp$InProgressStartOpEvent;]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/appop/AttributedOp;->rejected(II)V+]Lcom/android/server/appop/AttributedOp;Lcom/android/server/appop/AttributedOp;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HSPLcom/android/server/appop/AttributedOp;->rejected(JII)V+]Landroid/app/AppOpsManager$NoteOpEvent;Landroid/app/AppOpsManager$NoteOpEvent;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; -HPLcom/android/server/appop/DiscreteRegistry$DiscreteOp;->addDiscreteAccess(Ljava/lang/String;IIJJII)V+]Lcom/android/server/appop/DiscreteRegistry$DiscreteOp;Lcom/android/server/appop/DiscreteRegistry$DiscreteOp;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/appop/AttributedOp;->finishOrPause(Landroid/os/IBinder;ZZ)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/Pools$SimplePool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService; +HSPLcom/android/server/appop/AttributedOp;->isRunning()Z +HSPLcom/android/server/appop/AttributedOp;->onUidStateChanged(I)V +HSPLcom/android/server/appop/AttributedOp;->rejected(II)V +HSPLcom/android/server/appop/AttributedOp;->rejected(JII)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; +HSPLcom/android/server/appop/AttributedOp;->startedOrPaused(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIIZZ)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool; HSPLcom/android/server/appop/DiscreteRegistry;->isDiscreteOp(II)Z -HSPLcom/android/server/appop/DiscreteRegistry;->recordDiscreteAccess(ILjava/lang/String;ILjava/lang/String;IIJJII)V+]Lcom/android/server/appop/DiscreteRegistry$DiscreteOps;Lcom/android/server/appop/DiscreteRegistry$DiscreteOps; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->handlePersistHistoricalOpsRecursiveDLocked(Ljava/io/File;Ljava/io/File;Ljava/util/List;Ljava/util/Set;I)V+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;,Ljava/util/LinkedList;]Ljava/util/Set;Landroid/util/ArraySet;,Ljava/util/Collections$EmptySet; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalAttributionOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalPackageOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalUidOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;Lcom/android/modules/utils/TypedXmlPullParser;ILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readStateDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Ljava/lang/String;ILcom/android/modules/utils/TypedXmlPullParser;ID)Landroid/app/AppOpsManager$HistoricalOps;+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readeHistoricalOpsDLocked(Lcom/android/modules/utils/TypedXmlPullParser;ILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;IJJI[J)Landroid/app/AppOpsManager$HistoricalOps;+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalAttributionOpsDLocked(Landroid/app/AppOpsManager$AttributedHistoricalOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$AttributedHistoricalOps;Landroid/app/AppOpsManager$AttributedHistoricalOps;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOp;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$HistoricalOp;Landroid/app/AppOpsManager$HistoricalOp;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalPackageOpsDLocked(Landroid/app/AppOpsManager$HistoricalPackageOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$HistoricalPackageOps;Landroid/app/AppOpsManager$HistoricalPackageOps;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalUidOpsDLocked(Landroid/app/AppOpsManager$HistoricalUidOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$HistoricalUidOps;Landroid/app/AppOpsManager$HistoricalUidOps;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/HistoricalRegistry$Persistence;Lcom/android/server/appop/HistoricalRegistry$Persistence; -HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeStateOnLocked(Landroid/app/AppOpsManager$HistoricalOp;JLcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/AppOpsManager$HistoricalOp;Landroid/app/AppOpsManager$HistoricalOp;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; -HSPLcom/android/server/appop/HistoricalRegistry;->getUpdatedPendingHistoricalOpsMLocked(J)Landroid/app/AppOpsManager$HistoricalOps;+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HSPLcom/android/server/appop/HistoricalRegistry;->increaseOpAccessDuration(IILjava/lang/String;Ljava/lang/String;IIJJII)V+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/server/appop/DiscreteRegistry;Lcom/android/server/appop/DiscreteRegistry;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HSPLcom/android/server/appop/HistoricalRegistry;->incrementOpAccessedCount(IILjava/lang/String;Ljava/lang/String;IIJII)V+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/server/appop/DiscreteRegistry;Lcom/android/server/appop/DiscreteRegistry;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HSPLcom/android/server/appop/HistoricalRegistry;->incrementOpRejected(IILjava/lang/String;Ljava/lang/String;II)V+]Landroid/app/AppOpsManager$HistoricalOps;Landroid/app/AppOpsManager$HistoricalOps;]Lcom/android/server/appop/HistoricalRegistry;Lcom/android/server/appop/HistoricalRegistry; -HPLcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;->equals(Ljava/lang/Object;)Z+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Ljava/lang/Object;Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId; +HSPLcom/android/server/appop/DiscreteRegistry;->recordDiscreteAccess(ILjava/lang/String;Ljava/lang/String;ILjava/lang/String;IIJJIII)V +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->handlePersistHistoricalOpsRecursiveDLocked(Ljava/io/File;Ljava/io/File;Ljava/util/List;Ljava/util/Set;I)V+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;,Ljava/util/LinkedList;]Ljava/util/Set;Landroid/util/ArraySet;,Ljava/util/Collections$EmptySet; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalAttributionOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalPackageOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalUidOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;Lcom/android/modules/utils/TypedXmlPullParser;ILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readStateDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Ljava/lang/String;ILcom/android/modules/utils/TypedXmlPullParser;ID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readeHistoricalOpsDLocked(Lcom/android/modules/utils/TypedXmlPullParser;ILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;IJJI[J)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalAttributionOpsDLocked(Landroid/app/AppOpsManager$AttributedHistoricalOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOp;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalPackageOpsDLocked(Landroid/app/AppOpsManager$HistoricalPackageOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeHistoricalUidOpsDLocked(Landroid/app/AppOpsManager$HistoricalUidOps;Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appop/HistoricalRegistry$Persistence;->writeStateOnLocked(Landroid/app/AppOpsManager$HistoricalOp;JLcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HSPLcom/android/server/appop/HistoricalRegistry;->getUpdatedPendingHistoricalOpsMLocked(J)Landroid/app/AppOpsManager$HistoricalOps; +HSPLcom/android/server/appop/HistoricalRegistry;->increaseOpAccessDuration(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIJJIII)V +HSPLcom/android/server/appop/HistoricalRegistry;->incrementOpAccessedCount(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIJIII)V +HSPLcom/android/server/appop/HistoricalRegistry;->incrementOpRejected(IILjava/lang/String;Ljava/lang/String;II)V +HPLcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;->equals(Ljava/lang/Object;)Z HPLcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;->getEnabledGroupProfileIds(I)[I+]Landroid/os/UserManager;Landroid/os/UserManager; HPLcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;->getGroupParent(I)I -HPLcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;->getProfileParent(I)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/os/UserManager;Landroid/os/UserManager; -HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->ensureGroupStateLoadedLocked(IZ)V+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;]Lcom/android/server/appwidget/AppWidgetServiceImpl;Lcom/android/server/appwidget/AppWidgetServiceImpl; -HPLcom/android/server/appwidget/AppWidgetServiceImpl;->getAppWidgetIds(Landroid/content/ComponentName;)[I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;]Lcom/android/server/appwidget/AppWidgetServiceImpl;Lcom/android/server/appwidget/AppWidgetServiceImpl; -HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->getInstalledProvidersForProfile(IILjava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Landroid/appwidget/AppWidgetProviderInfo;Landroid/appwidget/AppWidgetProviderInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;]Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;Lcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;]Lcom/android/server/appwidget/AppWidgetServiceImpl;Lcom/android/server/appwidget/AppWidgetServiceImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->isBoundWidgetPackage(Ljava/lang/String;I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/appwidget/AppWidgetServiceImpl;->isProfileWithLockedParent(I)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/appwidget/AppWidgetServiceImpl;Lcom/android/server/appwidget/AppWidgetServiceImpl; -HPLcom/android/server/appwidget/AppWidgetServiceImpl;->lookupProviderLocked(Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;)Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;+]Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/appwidget/AppWidgetServiceImpl;->serializeProvider(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;Z)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer; -HPLcom/android/server/appwidget/AppWidgetServiceImpl;->writeProfileStateToStreamLocked(Ljava/io/OutputStream;I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appwidget/AppWidgetServiceImpl$Host;Lcom/android/server/appwidget/AppWidgetServiceImpl$Host;]Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HPLcom/android/server/appwidget/AppWidgetXmlUtil;->writeAppWidgetProviderInfoLocked(Lcom/android/modules/utils/TypedXmlSerializer;Landroid/appwidget/AppWidgetProviderInfo;)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/appwidget/AppWidgetServiceImpl$SecurityPolicy;->getProfileParent(I)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager; +HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->ensureGroupStateLoadedLocked(IZ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HPLcom/android/server/appwidget/AppWidgetServiceImpl;->getAppWidgetIds(Landroid/content/ComponentName;)[I +HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->getInstalledProvidersForProfile(IILjava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->isBoundWidgetPackage(Ljava/lang/String;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/appwidget/AppWidgetServiceImpl;->isProfileWithLockedParent(I)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager; +HPLcom/android/server/appwidget/AppWidgetServiceImpl;->lookupProviderLocked(Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;)Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/appwidget/AppWidgetXmlUtil;->writeAppWidgetProviderInfoLocked(Lcom/android/modules/utils/TypedXmlSerializer;Landroid/appwidget/AppWidgetProviderInfo;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/audio/AudioService$VolumeStreamState$1;->record(Ljava/lang/String;II)V+]Landroid/media/MediaMetrics$Item;Landroid/media/MediaMetrics$Item; -HSPLcom/android/server/audio/AudioService$VolumeStreamState;->observeDevicesForStream_syncVSS(Z)Ljava/util/Set;+]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;]Lcom/android/server/audio/SystemServerAdapter;Lcom/android/server/audio/SystemServerAdapter;]Ljava/lang/Object;Ljava/util/TreeSet;]Ljava/util/Set;Ljava/util/TreeSet; +HSPLcom/android/server/audio/AudioService$VolumeStreamState;->observeDevicesForStream_syncVSS(Z)Ljava/util/Set;+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;]Lcom/android/server/audio/SystemServerAdapter;Lcom/android/server/audio/SystemServerAdapter;]Ljava/util/Set;Ljava/util/TreeSet; HSPLcom/android/server/audio/AudioService;->getDeviceSetForStream(I)Ljava/util/Set;+]Lcom/android/server/audio/AudioService$VolumeStreamState;Lcom/android/server/audio/AudioService$VolumeStreamState;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService; -HSPLcom/android/server/audio/AudioService;->getDevicesForAttributesInt(Landroid/media/AudioAttributes;Z)Ljava/util/ArrayList;+]Lcom/android/server/audio/AudioSystemAdapter;Lcom/android/server/audio/AudioSystemAdapter; -HPLcom/android/server/audio/AudioService;->getStreamVolume(II)I+]Lcom/android/server/audio/AudioService$VolumeStreamState;Lcom/android/server/audio/AudioService$VolumeStreamState;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService; -HSPLcom/android/server/audio/AudioService;->selectOneAudioDevice(Ljava/util/Set;)I+]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/Iterator;Ljava/util/TreeMap$KeyIterator;]Ljava/util/Set;Ljava/util/TreeSet; +HSPLcom/android/server/audio/AudioService;->selectOneAudioDevice(Ljava/util/Set;)I+]Ljava/util/Iterator;Ljava/util/TreeMap$KeyIterator;]Ljava/util/Set;Ljava/util/TreeSet; HSPLcom/android/server/audio/AudioSystemAdapter;->getDevicesForAttributesImpl(Landroid/media/AudioAttributes;Z)Ljava/util/ArrayList;+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/autofill/AutofillManagerService$LocalService;->getAutofillOptions(Ljava/lang/String;JI)Landroid/content/AutofillOptions; HSPLcom/android/server/autofill/AutofillManagerService$LocalService;->injectDisableAppInfo(Landroid/content/AutofillOptions;ILjava/lang/String;)V +HPLcom/android/server/backup/BackupManagerService;->getServiceForUserIfCallerHasPermission(ILjava/lang/String;)Lcom/android/server/backup/UserBackupManagerService;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/backup/BackupManagerService;Lcom/android/server/backup/BackupManagerService; HSPLcom/android/server/backup/BackupManagerService;->isUserReadyForBackup(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/backup/BackupManagerService;Lcom/android/server/backup/BackupManagerService; -HPLcom/android/server/backup/UserBackupManagerService;->dataChangedTargets(Ljava/lang/String;)Ljava/util/HashSet;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/backup/utils/SparseArrayUtils;->union(Landroid/util/SparseArray;)Ljava/util/HashSet;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/HashSet;Ljava/util/HashSet; +HPLcom/android/server/backup/TransportManager;->updateTransportAttributes(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/CharSequence;)V+]Ljava/util/Map;Landroid/util/ArrayMap; +HPLcom/android/server/backup/UserBackupManagerService;->isAppEligibleForBackup(Ljava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/backup/TransportManager;Lcom/android/server/backup/TransportManager;]Lcom/android/server/backup/utils/BackupEligibilityRules;Lcom/android/server/backup/utils/BackupEligibilityRules; +HPLcom/android/server/backup/UserBackupManagerService;->updateTransportAttributes(ILandroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/CharSequence;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/backup/TransportManager;Lcom/android/server/backup/TransportManager; +HPLcom/android/server/backup/transport/TransportConnection;-><init>(ILandroid/content/Context;Lcom/android/server/backup/transport/TransportStats;Landroid/content/Intent;Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;Landroid/os/Handler;)V +HPLcom/android/server/backup/transport/TransportConnection;->checkStateIntegrityLocked()V+]Ljava/util/Map;Landroid/util/ArrayMap; +HPLcom/android/server/backup/transport/TransportConnection;->connect(Ljava/lang/String;)Lcom/android/server/backup/transport/BackupTransportClient;+]Lcom/android/server/backup/transport/TransportConnection;Lcom/android/server/backup/transport/TransportConnection;]Lcom/android/server/backup/transport/TransportStats;Lcom/android/server/backup/transport/TransportStats; +HPLcom/android/server/backup/transport/TransportConnection;->saveLogEntry(Ljava/lang/String;)V+]Ljava/util/List;Ljava/util/LinkedList; +HPLcom/android/server/backup/transport/TransportConnection;->setStateLocked(ILcom/android/server/backup/transport/BackupTransportClient;)V +HPLcom/android/server/backup/transport/TransportConnection;->toString()Ljava/lang/String; +HPLcom/android/server/backup/transport/TransportConnection;->unbind(Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl; +HPLcom/android/server/backup/transport/TransportConnectionManager;->disposeOfTransportClient(Lcom/android/server/backup/transport/TransportConnection;Ljava/lang/String;)V+]Lcom/android/server/backup/transport/TransportConnection;Lcom/android/server/backup/transport/TransportConnection;]Ljava/util/Map;Ljava/util/WeakHashMap; +HPLcom/android/server/backup/transport/TransportConnectionManager;->getTransportClient(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;)Lcom/android/server/backup/transport/TransportConnection;+]Ljava/util/Map;Ljava/util/WeakHashMap; +HPLcom/android/server/backup/transport/TransportUtils;->formatMessage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; HPLcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter;->augmentStatsForPackageForUser(Landroid/content/pm/PackageStats;Ljava/lang/String;Landroid/os/UserHandle;Z)V -HPLcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter;->augmentStatsForUid(Landroid/content/pm/PackageStats;IZ)V+]Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong; -HPLcom/android/server/blob/BlobStoreManagerService;->forEachBlobLocked(Ljava/util/function/Consumer;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/function/Consumer;megamorphic_types -HPLcom/android/server/blob/BlobStoreManagerService;->forEachSessionInUser(Ljava/util/function/Consumer;I)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/blob/BlobStoreManagerService;Lcom/android/server/blob/BlobStoreManagerService;]Ljava/util/function/Consumer;Lcom/android/server/blob/BlobStoreManagerService$$ExternalSyntheticLambda16;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda0;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda2;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda4; +HPLcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter;->augmentStatsForUid(Landroid/content/pm/PackageStats;IZ)V +HPLcom/android/server/blob/BlobStoreManagerService;->forEachBlobLocked(Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;megamorphic_types +HPLcom/android/server/blob/BlobStoreManagerService;->forEachSessionInUser(Ljava/util/function/Consumer;I)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Ljava/util/function/Consumer;Lcom/android/server/blob/BlobStoreManagerService$$ExternalSyntheticLambda16;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda0;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda2;,Lcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter$$ExternalSyntheticLambda4; HPLcom/android/server/blob/BlobStoreManagerService;->getUserSessionsLocked(I)Landroid/util/LongSparseArray;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService;->getDeviceIdsForUid(I)Landroid/util/ArraySet;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/companion/virtual/VirtualDeviceManagerService;->getVirtualDevicesSnapshot()Ljava/util/ArrayList;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/compat/CompatChange;->isEnabled(Landroid/content/pm/ApplicationInfo;Lcom/android/internal/compat/AndroidBuildClassifier;)Z+]Lcom/android/internal/compat/AndroidBuildClassifier;Lcom/android/internal/compat/AndroidBuildClassifier;]Lcom/android/internal/compat/CompatibilityChangeInfo;Lcom/android/server/compat/CompatChange;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/compat/CompatConfig;->getDisabledChanges(Landroid/content/pm/ApplicationInfo;)[J+]Landroid/util/LongArray;Landroid/util/LongArray;]Lcom/android/internal/compat/CompatibilityChangeInfo;Lcom/android/server/compat/CompatChange;]Lcom/android/server/compat/CompatChange;Lcom/android/server/compat/CompatChange;]Ljava/util/Collection;Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/compat/CompatChange;->isEnabled(Landroid/content/pm/ApplicationInfo;Lcom/android/internal/compat/AndroidBuildClassifier;)Z+]Lcom/android/internal/compat/AndroidBuildClassifier;Lcom/android/internal/compat/AndroidBuildClassifier;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/compat/CompatConfig;->getDisabledChanges(Landroid/content/pm/ApplicationInfo;)[J+]Ljava/util/Collection;Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/compat/CompatConfig;->getLoggableChanges(Landroid/content/pm/ApplicationInfo;)[J+]Ljava/util/Collection;Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/compat/CompatConfig;->isChangeEnabled(JLandroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/compat/CompatChange;Lcom/android/server/compat/CompatChange;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/compat/CompatConfig;->isChangeEnabled(JLandroid/content/pm/ApplicationInfo;)Z+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/compat/CompatConfig;->isChangeTargetingLatestSdk(Lcom/android/server/compat/CompatChange;I)Z +HPLcom/android/server/compat/CompatConfig;->isLoggingOnly(J)Z+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/compat/CompatConfig;->maxTargetSdkForCompatChange(Lcom/android/server/compat/CompatChange;)I +HPLcom/android/server/compat/OverrideValidatorImpl;->getOverrideAllowedStateInternal(JLjava/lang/String;Z)Lcom/android/internal/compat/OverrideAllowedState;+]Lcom/android/internal/compat/AndroidBuildClassifier;Lcom/android/internal/compat/AndroidBuildClassifier; HSPLcom/android/server/compat/PlatformCompat;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByPackageName(JLjava/lang/String;I)Z+]Lcom/android/server/compat/CompatConfig;Lcom/android/server/compat/CompatConfig;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabled(JLandroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByPackageName(JLjava/lang/String;I)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUid(JI)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; -HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUidInternal(JI)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/compat/CompatConfig;Lcom/android/server/compat/CompatConfig;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; -HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternal(JLandroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; -HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternalNoLogging(JLandroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/compat/CompatConfig;Lcom/android/server/compat/CompatConfig; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUidInternal(JI)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUidInternalNoLogging(JI)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternal(JLandroid/content/pm/ApplicationInfo;)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/internal/compat/ChangeReporter;Lcom/android/internal/compat/ChangeReporter; +HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternalNoLogging(JLandroid/content/pm/ApplicationInfo;)Z HSPLcom/android/server/compat/config/Change;->read(Lorg/xmlpull/v1/XmlPullParser;)Lcom/android/server/compat/config/Change; HPLcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;->getNetworkCapabilities(I)Landroid/net/NetworkCapabilities;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HPLcom/android/server/connectivity/NetdEventListenerService;->collectPendingMetricsSnapshot(JZ)V+]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/connectivity/NetdEventListenerService;->getMetricsForNetwork(JI)Landroid/net/metrics/NetworkMetrics;+]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;]Lcom/android/server/connectivity/NetdEventListenerService;Lcom/android/server/connectivity/NetdEventListenerService; -HPLcom/android/server/connectivity/NetdEventListenerService;->onConnectEvent(IIILjava/lang/String;II)V+]Landroid/net/INetdEventCallback;Lcom/android/server/devicepolicy/NetworkLogger$1;,Lcom/android/server/net/watchlist/NetworkWatchlistService$1;]Landroid/net/metrics/NetworkMetrics;Landroid/net/metrics/NetworkMetrics;]Lcom/android/server/connectivity/NetdEventListenerService;Lcom/android/server/connectivity/NetdEventListenerService; -HPLcom/android/server/connectivity/NetdEventListenerService;->onDnsEvent(IIIILjava/lang/String;[Ljava/lang/String;II)V+]Landroid/net/INetdEventCallback;Lcom/android/server/devicepolicy/NetworkLogger$1;,Lcom/android/server/net/watchlist/NetworkWatchlistService$1;]Landroid/net/metrics/NetworkMetrics;Landroid/net/metrics/NetworkMetrics;]Lcom/android/server/connectivity/NetdEventListenerService;Lcom/android/server/connectivity/NetdEventListenerService; -HPLcom/android/server/connectivity/NetdEventListenerService;->onWakeupEvent(Ljava/lang/String;III[BLjava/lang/String;Ljava/lang/String;IIJ)V+]Landroid/os/BatteryStatsInternal;Lcom/android/server/am/BatteryStatsService$LocalService;]Lcom/android/server/connectivity/NetdEventListenerService;Lcom/android/server/connectivity/NetdEventListenerService;]Ljava/lang/String;Ljava/lang/String; +HPLcom/android/server/connectivity/NetdEventListenerService;->getMetricsForNetwork(JI)Landroid/net/metrics/NetworkMetrics;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback; +HPLcom/android/server/connectivity/NetdEventListenerService;->onConnectEvent(IIILjava/lang/String;II)V+]Landroid/net/INetdEventCallback;Lcom/android/server/devicepolicy/NetworkLogger$1;,Lcom/android/server/net/watchlist/NetworkWatchlistService$1;]Landroid/net/metrics/NetworkMetrics;Landroid/net/metrics/NetworkMetrics; +HPLcom/android/server/connectivity/NetdEventListenerService;->onDnsEvent(IIIILjava/lang/String;[Ljava/lang/String;II)V+]Landroid/net/INetdEventCallback;Lcom/android/server/devicepolicy/NetworkLogger$1;,Lcom/android/server/net/watchlist/NetworkWatchlistService$1;]Landroid/net/metrics/NetworkMetrics;Landroid/net/metrics/NetworkMetrics; +HPLcom/android/server/connectivity/NetdEventListenerService;->onWakeupEvent(Ljava/lang/String;III[BLjava/lang/String;Ljava/lang/String;IIJ)V+]Landroid/os/BatteryStatsInternal;Lcom/android/server/am/BatteryStatsService$LocalService; HSPLcom/android/server/content/ContentService$ObserverCollector$Key;->hashCode()I HSPLcom/android/server/content/ContentService$ObserverCollector;-><init>()V -HSPLcom/android/server/content/ContentService$ObserverCollector;->collect(Landroid/database/IContentObserver;IZLandroid/net/Uri;II)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/content/ContentService$ObserverCollector;->dispatch()V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/Handler;Landroid/os/Handler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Runnable;Lcom/android/server/content/ContentService$ObserverCollector$$ExternalSyntheticLambda0; +HSPLcom/android/server/content/ContentService$ObserverCollector;->collect(Landroid/database/IContentObserver;IZLandroid/net/Uri;II)V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/content/ContentService$ObserverCollector;->dispatch()V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService; HSPLcom/android/server/content/ContentService$ObserverCollector;->lambda$dispatch$0(Lcom/android/server/content/ContentService$ObserverCollector$Key;Ljava/util/List;)V+]Landroid/database/IContentObserver;Landroid/database/ContentObserver$Transport;,Landroid/database/IContentObserver$Stub$Proxy;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/content/ContentService$ObserverNode$ObserverEntry;-><init>(Lcom/android/server/content/ContentService$ObserverNode;Landroid/database/IContentObserver;ZLjava/lang/Object;IIILandroid/net/Uri;)V+]Lcom/android/internal/os/BinderDeathDispatcher;Lcom/android/internal/os/BinderDeathDispatcher; HSPLcom/android/server/content/ContentService$ObserverNode;-><init>(Ljava/lang/String;)V -HSPLcom/android/server/content/ContentService$ObserverNode;->addObserverLocked(Landroid/net/Uri;ILandroid/database/IContentObserver;ZLjava/lang/Object;III)V+]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/content/ContentService$ObserverNode;->addObserverLocked(Landroid/net/Uri;ILandroid/database/IContentObserver;ZLjava/lang/Object;III)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/content/ContentService$ObserverNode;->collectMyObserversLocked(Landroid/net/Uri;ZLandroid/database/IContentObserver;ZIILcom/android/server/content/ContentService$ObserverCollector;)V+]Landroid/database/IContentObserver;Landroid/database/ContentObserver$Transport;,Landroid/database/IContentObserver$Stub$Proxy;]Lcom/android/server/content/ContentService$ObserverCollector;Lcom/android/server/content/ContentService$ObserverCollector;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/content/ContentService$ObserverNode;->collectObserversLocked(Landroid/net/Uri;IILandroid/database/IContentObserver;ZIILcom/android/server/content/ContentService$ObserverCollector;)V+]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/content/ContentService$ObserverNode;->collectObserversLocked(Landroid/net/Uri;IILandroid/database/IContentObserver;ZIILcom/android/server/content/ContentService$ObserverCollector;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/content/ContentService$ObserverNode;->countUriSegments(Landroid/net/Uri;)I+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Ljava/util/List;Landroid/net/Uri$PathSegments; HSPLcom/android/server/content/ContentService$ObserverNode;->getUriSegment(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Ljava/util/List;Landroid/net/Uri$PathSegments; -HSPLcom/android/server/content/ContentService$ObserverNode;->removeObserverLocked(Landroid/database/IContentObserver;)Z+]Landroid/database/IContentObserver;Landroid/database/ContentObserver$Transport;,Landroid/database/IContentObserver$Stub$Proxy;]Lcom/android/internal/os/BinderDeathDispatcher;Lcom/android/internal/os/BinderDeathDispatcher;]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/content/ContentService$ObserverNode;->removeObserverLocked(Landroid/database/IContentObserver;)Z+]Landroid/database/IContentObserver;Landroid/database/ContentObserver$Transport;,Landroid/database/IContentObserver$Stub$Proxy;]Lcom/android/internal/os/BinderDeathDispatcher;Lcom/android/internal/os/BinderDeathDispatcher;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/content/ContentService;->getProviderPackageName(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri; HPLcom/android/server/content/ContentService;->getSyncAdapterPackageAsUser(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;+]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager; HSPLcom/android/server/content/ContentService;->getSyncAdapterPackagesForAuthorityAsUser(Ljava/lang/String;I)[Ljava/lang/String;+]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager; HPLcom/android/server/content/ContentService;->getSyncAutomaticallyAsUser(Landroid/accounts/Account;Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine; -HSPLcom/android/server/content/ContentService;->getSyncExemptionAndCleanUpExtrasForCaller(ILandroid/os/Bundle;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/content/ContentService;Lcom/android/server/content/ContentService; +HSPLcom/android/server/content/ContentService;->getSyncExemptionAndCleanUpExtrasForCaller(ILandroid/os/Bundle;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService; HSPLcom/android/server/content/ContentService;->getSyncManager()Lcom/android/server/content/SyncManager; -HSPLcom/android/server/content/ContentService;->handleIncomingUser(Landroid/net/Uri;IIIZI)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/content/ContentService;Lcom/android/server/content/ContentService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/content/ContentService;->invalidateCacheLocked(ILjava/lang/String;Landroid/net/Uri;)V+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/server/content/ContentService;->notifyChange([Landroid/net/Uri;Landroid/database/IContentObserver;ZIIILjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/content/ContentService$ObserverCollector;Lcom/android/server/content/ContentService$ObserverCollector;]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode;]Lcom/android/server/content/ContentService;Lcom/android/server/content/ContentService;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/content/ContentService;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/IContentObserver;II)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode;]Lcom/android/server/content/ContentService;Lcom/android/server/content/ContentService; -HSPLcom/android/server/content/ContentService;->unregisterContentObserver(Landroid/database/IContentObserver;)V+]Lcom/android/server/content/ContentService$ObserverNode;Lcom/android/server/content/ContentService$ObserverNode; -HPLcom/android/server/content/SyncJobService;->onStartJob(Landroid/app/job/JobParameters;)Z+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger; -HSPLcom/android/server/content/SyncLogger$RotatingFileLogger$MyHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/content/SyncLogger$RotatingFileLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger; +HSPLcom/android/server/content/ContentService;->handleIncomingUser(Landroid/net/Uri;IIIZI)I+]Landroid/content/Context;Landroid/app/ContextImpl; +HSPLcom/android/server/content/ContentService;->invalidateCacheLocked(ILjava/lang/String;Landroid/net/Uri;)V+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/content/ContentService;->notifyChange([Landroid/net/Uri;Landroid/database/IContentObserver;ZIIILjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager; +HSPLcom/android/server/content/ContentService;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/IContentObserver;II)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri; +HSPLcom/android/server/content/ContentService;->unregisterContentObserver(Landroid/database/IContentObserver;)V +HPLcom/android/server/content/SyncJobService;->onStartJob(Landroid/app/job/JobParameters;)Z HSPLcom/android/server/content/SyncLogger$RotatingFileLogger$MyHandler;->log(J[Ljava/lang/Object;)V -HSPLcom/android/server/content/SyncLogger$RotatingFileLogger;->logInner(J[Ljava/lang/Object;)V+]Lcom/android/server/content/SyncLogger$RotatingFileLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger;]Ljava/io/Writer;Ljava/io/FileWriter;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/text/SimpleDateFormat;Ljava/text/SimpleDateFormat;]Ljava/util/Date;Ljava/util/Date; +HSPLcom/android/server/content/SyncLogger$RotatingFileLogger;->logInner(J[Ljava/lang/Object;)V+]Ljava/io/Writer;Ljava/io/FileWriter;]Ljava/util/Date;Ljava/util/Date; HSPLcom/android/server/content/SyncLogger$RotatingFileLogger;->openLogLocked(J)V+]Ljava/io/File;Ljava/io/File;]Ljava/util/Date;Ljava/util/Date; -HPLcom/android/server/content/SyncManager$ActiveSyncContext;->bindToSyncAdapter(Landroid/content/ComponentName;I)Z -HPLcom/android/server/content/SyncManager$SyncHandler;->dispatchSyncOperation(Lcom/android/server/content/SyncOperation;)Z HPLcom/android/server/content/SyncManager$SyncHandler;->handleSyncMessage(Landroid/os/Message;)V+]Landroid/content/ISyncAdapter;Landroid/content/ISyncAdapter$Stub$Proxy;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger;]Lcom/android/server/content/SyncManager$SyncTimeTracker;Lcom/android/server/content/SyncManager$SyncTimeTracker; HPLcom/android/server/content/SyncManager$SyncHandler;->runBoundToAdapterH(Lcom/android/server/content/SyncManager$ActiveSyncContext;Landroid/os/IBinder;)V HPLcom/android/server/content/SyncManager$SyncHandler;->runSyncFinishedOrCanceledH(Landroid/content/SyncResult;Lcom/android/server/content/SyncManager$ActiveSyncContext;)V HPLcom/android/server/content/SyncManager;->computeSyncable(Landroid/accounts/Account;ILjava/lang/String;ZZ)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache; -HPLcom/android/server/content/SyncManager;->getAllPendingSyncs()Ljava/util/List;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobScheduler;Landroid/app/JobSchedulerImpl;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/content/SyncManager;->getIsSyncable(Landroid/accounts/Account;ILjava/lang/String;)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine; +HPLcom/android/server/content/SyncManager;->getAllPendingSyncs()Ljava/util/List;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobScheduler;Landroid/app/JobSchedulerImpl;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/content/SyncManager;->getSyncAdapterPackageAsUser(Ljava/lang/String;Ljava/lang/String;II)Ljava/lang/String;+]Landroid/content/SyncAdapterType;Landroid/content/SyncAdapterType;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/content/SyncManager;->getSyncAdapterPackagesForAuthorityAsUser(Ljava/lang/String;II)[Ljava/lang/String;+]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/content/SyncManager;->scheduleLocalSync(Landroid/accounts/Account;IILjava/lang/String;IIILjava/lang/String;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager; -HSPLcom/android/server/content/SyncManager;->scheduleSync(Landroid/accounts/Account;IILjava/lang/String;Landroid/os/Bundle;IJZIIILjava/lang/String;)V+]Landroid/accounts/AccountManagerInternal;Lcom/android/server/accounts/AccountManagerService$AccountManagerInternalImpl;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/SyncAdapterType;Landroid/content/SyncAdapterType;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;,Ljava/util/HashMap$KeyIterator; -HPLcom/android/server/content/SyncManager;->scheduleSyncOperationH(Lcom/android/server/content/SyncOperation;J)V+]Landroid/app/job/JobInfo$Builder;Landroid/app/job/JobInfo$Builder;]Landroid/app/job/JobScheduler;Landroid/app/JobSchedulerImpl;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncManagerConstants;Lcom/android/server/content/SyncManagerConstants;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/content/SyncOperation;-><init>(Lcom/android/server/content/SyncStorageEngine$EndPoint;ILjava/lang/String;IILandroid/os/Bundle;ZZIJJI)V+]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation; +HSPLcom/android/server/content/SyncManager;->getSyncAdapterPackagesForAuthorityAsUser(Ljava/lang/String;II)[Ljava/lang/String;+]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; +HSPLcom/android/server/content/SyncManager;->scheduleLocalSync(Landroid/accounts/Account;IILjava/lang/String;IIILjava/lang/String;)V +HSPLcom/android/server/content/SyncManager;->scheduleSync(Landroid/accounts/Account;IILjava/lang/String;Landroid/os/Bundle;IJZIIILjava/lang/String;)V+]Landroid/content/SyncAdapterType;Landroid/content/SyncAdapterType;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger$RotatingFileLogger;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;,Ljava/util/HashMap$KeyIterator; +HPLcom/android/server/content/SyncManager;->scheduleSyncOperationH(Lcom/android/server/content/SyncOperation;J)V+]Landroid/app/job/JobScheduler;Landroid/app/JobSchedulerImpl;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncManagerConstants;Lcom/android/server/content/SyncManagerConstants;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/content/SyncOperation;-><init>(Lcom/android/server/content/SyncStorageEngine$EndPoint;ILjava/lang/String;IILandroid/os/Bundle;ZZIJJI)V HPLcom/android/server/content/SyncOperation;->dump(Landroid/content/pm/PackageManager;ZLcom/android/server/content/SyncAdapterStateFetcher;Z)Ljava/lang/String;+]Lcom/android/server/content/SyncAdapterStateFetcher;Lcom/android/server/content/SyncAdapterStateFetcher;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HPLcom/android/server/content/SyncOperation;->extrasToStringBuilder(Landroid/os/Bundle;Ljava/lang/StringBuilder;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HPLcom/android/server/content/SyncOperation;->maybeCreateFromJobExtras(Landroid/os/PersistableBundle;)Lcom/android/server/content/SyncOperation;+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/PersistableBundle;Landroid/os/PersistableBundle;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HPLcom/android/server/content/SyncOperation;->extrasToStringBuilder(Landroid/os/Bundle;Ljava/lang/StringBuilder;)V+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HPLcom/android/server/content/SyncOperation;->maybeCreateFromJobExtras(Landroid/os/PersistableBundle;)Lcom/android/server/content/SyncOperation;+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; HPLcom/android/server/content/SyncOperation;->toJobInfoExtras()Landroid/os/PersistableBundle;+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; -HPLcom/android/server/content/SyncOperation;->toKey()Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/content/SyncOperation;->wakeLockName()Ljava/lang/String; +HPLcom/android/server/content/SyncOperation;->toKey()Ljava/lang/String; HSPLcom/android/server/content/SyncStorageEngine$EndPoint;-><init>(Landroid/accounts/Account;Ljava/lang/String;I)V HPLcom/android/server/content/SyncStorageEngine;->getAuthorityLocked(Lcom/android/server/content/SyncStorageEngine$EndPoint;Ljava/lang/String;)Lcom/android/server/content/SyncStorageEngine$AuthorityInfo;+]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/content/SyncStorageEngine;->getOrCreateAuthorityLocked(Lcom/android/server/content/SyncStorageEngine$EndPoint;IZ)Lcom/android/server/content/SyncStorageEngine$AuthorityInfo;+]Ljava/util/HashMap;Ljava/util/HashMap; -HPLcom/android/server/content/SyncStorageEngine;->insertStartSyncEvent(Lcom/android/server/content/SyncOperation;J)J+]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/content/SyncStorageEngine;->reportChange(ILjava/lang/String;I)V+]Landroid/content/ISyncStatusObserver;Landroid/content/ISyncStatusObserver$Stub$Proxy;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/content/SyncStorageEngine;->stopSyncEvent(JJLjava/lang/String;JJLjava/lang/String;I)V+]Landroid/content/SyncStatusInfo;Landroid/content/SyncStatusInfo;]Landroid/os/Handler;Lcom/android/server/content/SyncStorageEngine$MyHandler;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/content/SyncStorageEngine;->writeStatusInfoLocked(Ljava/io/OutputStream;)V+]Landroid/content/SyncStatusInfo;Landroid/content/SyncStatusInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/proto/ProtoOutputStream;Landroid/util/proto/ProtoOutputStream;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine; +HPLcom/android/server/content/SyncStorageEngine;->insertStartSyncEvent(Lcom/android/server/content/SyncOperation;J)J +HPLcom/android/server/content/SyncStorageEngine;->reportChange(ILjava/lang/String;I)V+]Landroid/content/ISyncStatusObserver;Landroid/content/ISyncStatusObserver$Stub$Proxy;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList; +HPLcom/android/server/content/SyncStorageEngine;->stopSyncEvent(JJLjava/lang/String;JJLjava/lang/String;I)V+]Landroid/content/SyncStatusInfo;Landroid/content/SyncStatusInfo;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/content/SyncStorageEngine;->writeStatusInfoLocked(Ljava/io/OutputStream;)V+]Landroid/content/SyncStatusInfo;Landroid/content/SyncStatusInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/contentcapture/ContentCaptureManagerService$ContentCaptureManagerServiceStub;->registerContentCaptureOptionsCallback(Ljava/lang/String;Landroid/view/contentcapture/IContentCaptureOptionsCallback;)V+]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/view/contentcapture/IContentCaptureOptionsCallback;Landroid/view/contentcapture/IContentCaptureOptionsCallback$Stub$Proxy;]Lcom/android/server/contentcapture/ContentCaptureManagerService;Lcom/android/server/contentcapture/ContentCaptureManagerService; HSPLcom/android/server/contentcapture/ContentCaptureManagerService$GlobalContentCaptureOptions;->getOptions(ILjava/lang/String;)Landroid/content/ContentCaptureOptions;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/contentcapture/ContentCaptureManagerService$GlobalContentCaptureOptions;->isContentProtectionReceiverEnabled(ILjava/lang/String;)Z+]Lcom/android/server/contentprotection/ContentProtectionAllowlistManager;Lcom/android/server/contentprotection/ContentProtectionAllowlistManager;]Lcom/android/server/contentprotection/ContentProtectionConsentManager;Lcom/android/server/contentprotection/ContentProtectionConsentManager; HSPLcom/android/server/contentcapture/ContentCaptureManagerService;->isContentProtectionEnabledLocked()Z+]Ljava/util/List;Ljava/util/ImmutableCollections$ListN; -HSPLcom/android/server/cpu/CpuAvailabilityInfo;-><init>(IJIIJ)V HSPLcom/android/server/cpu/CpuInfoReader$CpuUsageStats;-><init>(JJJJJJJJJJ)V HPLcom/android/server/cpu/CpuInfoReader$CpuUsageStats;->delta(Lcom/android/server/cpu/CpuInfoReader$CpuUsageStats;)Lcom/android/server/cpu/CpuInfoReader$CpuUsageStats; -HSPLcom/android/server/cpu/CpuInfoReader;->calculateAvgCpuFreq(Landroid/util/LongSparseLongArray;)J+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray; -HSPLcom/android/server/cpu/CpuInfoReader;->readAvgTimeInStateCpuFrequency(ILjava/io/File;)J+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/cpu/CpuInfoReader;->readCpuCores(Ljava/io/File;)Landroid/util/IntArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Ljava/io/File;Ljava/io/File;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/cpu/CpuInfoReader;->readCpuInfos()Landroid/util/SparseArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/cpu/CpuInfoReader;Lcom/android/server/cpu/CpuInfoReader; -HSPLcom/android/server/cpu/CpuInfoReader;->readCumulativeCpuUsageStats()Landroid/util/SparseArray;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/io/File;Ljava/io/File;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/regex/Matcher;Ljava/util/regex/Matcher;]Ljava/util/regex/Pattern;Ljava/util/regex/Pattern; +HSPLcom/android/server/cpu/CpuInfoReader;->readCpuCores(Ljava/io/File;)Landroid/util/IntArray;+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/cpu/CpuInfoReader;->readCpuFreqKHz(Ljava/io/File;)J+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/cpu/CpuInfoReader;->readCpuInfos()Landroid/util/SparseArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/cpu/CpuInfoReader;->readCumulativeCpuUsageStats()Landroid/util/SparseArray;+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/cpu/CpuInfoReader;->readDynamicPolicyInfo()Landroid/util/SparseArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/cpu/CpuInfoReader;->readTimeInState(Ljava/io/File;)Landroid/util/LongSparseLongArray;+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Ljava/io/File;Ljava/io/File;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/regex/Matcher;Ljava/util/regex/Matcher;]Ljava/util/regex/Pattern;Ljava/util/regex/Pattern; -HSPLcom/android/server/cpu/CpuMonitorService$CpusetInfo;->appendCpuInfo(JLcom/android/server/cpu/CpuInfoReader$CpuInfo;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/cpu/CpuMonitorService$CpusetInfo$Snapshot;Lcom/android/server/cpu/CpuMonitorService$CpusetInfo$Snapshot; -HSPLcom/android/server/cpu/CpuMonitorService;->monitorCpuStats()V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/cpu/CpuInfoReader;Lcom/android/server/cpu/CpuInfoReader;]Lcom/android/server/cpu/CpuMonitorService$CpusetInfo;Lcom/android/server/cpu/CpuMonitorService$CpusetInfo;]Lcom/android/server/cpu/CpuMonitorService;Lcom/android/server/cpu/CpuMonitorService; -HSPLcom/android/server/devicepolicy/ActiveAdmin;->getUid()I +HSPLcom/android/server/cpu/CpuInfoReader;->readTimeInState(Ljava/io/File;)Landroid/util/LongSparseLongArray;+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/cpu/CpuMonitorService;->monitorCpuStats()V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/devicepolicy/ActiveAdmin;->getUid()I HSPLcom/android/server/devicepolicy/ActiveAdmin;->getUserHandle()Landroid/os/UserHandle; HPLcom/android/server/devicepolicy/ActiveAdmin;->writeToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/ArraySet; HSPLcom/android/server/devicepolicy/CallerIdentity;-><init>(ILjava/lang/String;Landroid/content/ComponentName;)V HSPLcom/android/server/devicepolicy/CallerIdentity;->getUserId()I HPLcom/android/server/devicepolicy/CallerIdentity;->toString()Ljava/lang/String; HPLcom/android/server/devicepolicy/DevicePolicyData;->store(Lcom/android/server/devicepolicy/DevicePolicyData;Lcom/android/internal/util/JournaledFile;)Z+]Lcom/android/internal/util/JournaledFile;Lcom/android/internal/util/JournaledFile;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/ArraySet; -HPLcom/android/server/devicepolicy/DevicePolicyEngine$DevicePoliciesReaderWriter;->writeLocalPoliciesInner(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/admin/PolicyKey;Landroid/app/admin/IntentFilterPolicyKey;,Landroid/app/admin/NoArgsPolicyKey;,Landroid/app/admin/PackagePolicyKey;,Landroid/app/admin/UserRestrictionPolicyKey;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/PolicyState;Lcom/android/server/devicepolicy/PolicyState;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; +HPLcom/android/server/devicepolicy/DevicePolicyEngine$DevicePoliciesReaderWriter;->writeEnforcingAdminSizeInner(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/HashMap$KeyIterator;]Ljava/util/Set;Ljava/util/HashMap$KeySet; +HPLcom/android/server/devicepolicy/DevicePolicyEngine$DevicePoliciesReaderWriter;->writeLocalPoliciesInner(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/admin/PolicyKey;Landroid/app/admin/NoArgsPolicyKey;,Landroid/app/admin/PackagePolicyKey;,Landroid/app/admin/UserRestrictionPolicyKey;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; +HPLcom/android/server/devicepolicy/DevicePolicyEngine;->getDevicePolicyState()Landroid/app/admin/DevicePolicyState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Iterator;Ljava/util/HashMap$KeyIterator;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$KeySet; HPLcom/android/server/devicepolicy/DevicePolicyEngine;->getLocalPolicyStateLocked(Lcom/android/server/devicepolicy/PolicyDefinition;I)Lcom/android/server/devicepolicy/PolicyState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Map;Ljava/util/HashMap; HSPLcom/android/server/devicepolicy/DevicePolicyEngine;->hasLocalPolicyLocked(Lcom/android/server/devicepolicy/PolicyDefinition;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Map;Ljava/util/HashMap; HPLcom/android/server/devicepolicy/DevicePolicyEngine;->lambda$forceEnforcementRefreshLocked$0(Lcom/android/server/devicepolicy/PolicyDefinition;)V+]Landroid/os/UserManager;Landroid/os/UserManager;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda203;->runOrThrow()V +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda40;->getOrThrow()Ljava/lang/Object; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda6;->getOrThrow()Ljava/lang/Object; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderClearCallingIdentity()J +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda70;->getOrThrow()Ljava/lang/Object; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda81;->getOrThrow()Ljava/lang/Object; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda84;->getOrThrow()Ljava/lang/Object; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderGetCallingUid()I HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderRestoreCallingIdentity(J)V -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderWithCleanCallingIdentity(Lcom/android/internal/util/FunctionalUtils$ThrowingRunnable;)V -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderWithCleanCallingIdentity(Lcom/android/internal/util/FunctionalUtils$ThrowingSupplier;)Ljava/lang/Object; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->getAppOpsManager()Landroid/app/AppOpsManager; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->getPackageManager()Landroid/content/pm/PackageManager;+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->getPackageManagerLocal()Lcom/android/server/pm/PackageManagerLocal; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$LocalService;->isActiveDeviceOwner(I)Z -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$LocalService;->isActiveProfileOwner(I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->ensureLocked()V HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminUncheckedLocked(Landroid/content/ComponentName;I)Lcom/android/server/devicepolicy/ActiveAdmin;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdmins(I)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminsForLockscreenPoliciesLocked(I)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminsForUserAndItsManagedProfilesLocked(ILjava/util/function/Predicate;)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector; HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getBindDeviceAdminTargetUsers(Landroid/content/ComponentName;)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getCallerIdentity(Landroid/content/ComponentName;Ljava/lang/String;)Lcom/android/server/devicepolicy/CallerIdentity;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getCallerIdentity(Landroid/content/ComponentName;Ljava/lang/String;)Lcom/android/server/devicepolicy/CallerIdentity;+]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDelegatedScopes(Landroid/content/ComponentName;Ljava/lang/String;)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerAdminLocked()Lcom/android/server/devicepolicy/ActiveAdmin;+]Landroid/app/admin/DeviceAdminInfo;Landroid/app/admin/DeviceAdminInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponent(Z)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getKeyguardDisabledFeatures(Landroid/content/ComponentName;IZ)I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerAdminLocked()Lcom/android/server/devicepolicy/ActiveAdmin;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponent(Z)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponentOnUser(I)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getKeyguardDisabledFeatures(Landroid/content/ComponentName;IZ)I+]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getLockObject()Ljava/lang/Object;+]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPermissionGrantState(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/lang/Integer;Ljava/lang/Integer; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPermissionGrantStateForUser(Ljava/lang/String;Ljava/lang/String;Lcom/android/server/devicepolicy/CallerIdentity;I)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getProfileOwnerAdminLocked(I)Lcom/android/server/devicepolicy/ActiveAdmin;+]Landroid/app/admin/DeviceAdminInfo;Landroid/app/admin/DeviceAdminInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getProfileOwnerAsUser(I)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getProfileParentId(I)I+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Ljava/lang/Integer;Ljava/lang/Integer; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPackageInfoWithNullCheck(Ljava/lang/String;Lcom/android/server/devicepolicy/CallerIdentity;)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPermissionGrantState(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPermissionGrantStateForUser(Ljava/lang/String;Ljava/lang/String;Lcom/android/server/devicepolicy/CallerIdentity;I)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getProfileOwnerAsUser(I)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getProfileParentId(I)I HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getTargetSdk(Ljava/lang/String;I)I+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserData(I)Lcom/android/server/devicepolicy/DevicePolicyData;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/DeviceStateCacheImpl;Lcom/android/server/devicepolicy/DeviceStateCacheImpl; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserData(I)Lcom/android/server/devicepolicy/DevicePolicyData;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserDataUnchecked(I)Lcom/android/server/devicepolicy/DevicePolicyData; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserInfo(I)Landroid/content/pm/UserInfo;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getWifiSsidPolicy(Ljava/lang/String;)Landroid/app/admin/WifiSsidPolicy;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasCrossUsersPermission(Lcom/android/server/devicepolicy/CallerIdentity;I)Z+]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasFullCrossUsersPermission(Lcom/android/server/devicepolicy/CallerIdentity;I)Z+]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserInfo(I)Landroid/content/pm/UserInfo; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasCrossUsersPermission(Lcom/android/server/devicepolicy/CallerIdentity;I)Z HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isAdminActive(Landroid/content/ComponentName;I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isCallingFromPackage(Ljava/lang/String;I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDefaultDeviceOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDeviceOwnerLocked(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isFinancedDeviceOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isManagedProfile(I)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isPackageSuspended(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDefaultDeviceOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDeviceOwnerLocked(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isFinancedDeviceOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isPackageSuspended(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isPermissionCheckFlagEnabled()Z -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isProfileOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; -HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isSeparateProfileChallengeEnabled(I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Ljava/lang/Boolean;Ljava/lang/Boolean; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isUninstallBlocked(Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isProfileOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z +HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isSeparateProfileChallengeEnabled(I)Z +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isUninstallBlocked(Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->logUserRestrictionCall(Ljava/lang/String;ZZLcom/android/server/devicepolicy/CallerIdentity;I)V HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->packageHasActiveAdmins(Ljava/lang/String;I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->setApplicationExemptions(Ljava/lang/String;Ljava/lang/String;[I)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/admin/DevicePolicyEventLogger;Landroid/app/admin/DevicePolicyEventLogger;]Lcom/android/server/devicepolicy/CallerIdentity;Lcom/android/server/devicepolicy/CallerIdentity;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; -HSPLcom/android/server/devicepolicy/DeviceStateCacheImpl;->isUserOrganizationManaged(I)Z+]Lcom/android/server/devicepolicy/DeviceStateCacheImpl;Lcom/android/server/devicepolicy/DeviceStateCacheImpl;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->setApplicationExemptions(Ljava/lang/String;Ljava/lang/String;[I)V+]Landroid/app/admin/DevicePolicyEventLogger;Landroid/app/admin/DevicePolicyEventLogger;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector; +HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->setUserRestriction(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;ZZ)V+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService; +HSPLcom/android/server/devicepolicy/DeviceStateCacheImpl;->isUserOrganizationManaged(I)Z+]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/devicepolicy/EnforcingAdmin;-><init>(Ljava/lang/String;Landroid/content/ComponentName;Ljava/util/Set;ILcom/android/server/devicepolicy/ActiveAdmin;)V -HSPLcom/android/server/devicepolicy/EnforcingAdmin;->hashCode()I+]Lcom/android/server/devicepolicy/EnforcingAdmin;Lcom/android/server/devicepolicy/EnforcingAdmin; -HPLcom/android/server/devicepolicy/EnforcingAdmin;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/EnforcingAdmin;Lcom/android/server/devicepolicy/EnforcingAdmin; +HPLcom/android/server/devicepolicy/EnforcingAdmin;->equals(Ljava/lang/Object;)Z +HSPLcom/android/server/devicepolicy/EnforcingAdmin;->hashCode()I +HPLcom/android/server/devicepolicy/EnforcingAdmin;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/devicepolicy/Owners;->getDeviceOwnerComponent()Landroid/content/ComponentName; HSPLcom/android/server/devicepolicy/Owners;->getDeviceOwnerUserId()I -HSPLcom/android/server/devicepolicy/Owners;->getProfileOwnerComponent(I)Landroid/content/ComponentName;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/devicepolicy/Owners;->getProfileOwnerComponent(I)Landroid/content/ComponentName; HSPLcom/android/server/devicepolicy/Owners;->hasDeviceOwner()Z -HSPLcom/android/server/devicepolicy/Owners;->isProfileOwnerOfOrganizationOwnedDevice(I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HPLcom/android/server/devicepolicy/PolicyState;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/admin/PolicyValue;Landroid/app/admin/BooleanPolicyValue;,Landroid/app/admin/ComponentNamePolicyValue;,Landroid/app/admin/LockTaskPolicy;,Landroid/app/admin/PackageSetPolicyValue;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/EnforcingAdmin;Lcom/android/server/devicepolicy/EnforcingAdmin;]Lcom/android/server/devicepolicy/PolicyDefinition;Lcom/android/server/devicepolicy/PolicyDefinition;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedKeyIterator;]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet; +HSPLcom/android/server/devicepolicy/PolicyDefinition$$ExternalSyntheticLambda18;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/devicepolicy/PolicyEnforcerCallbacks;->lambda$setUserRestriction$7(Landroid/app/admin/PolicyKey;ILjava/lang/Boolean;)Ljava/lang/Boolean;+]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HPLcom/android/server/devicepolicy/PolicyState;->getParcelablePolicyState()Landroid/app/admin/PolicyState;+]Lcom/android/server/devicepolicy/ResolutionMechanism;Lcom/android/server/devicepolicy/MostRecent;,Lcom/android/server/devicepolicy/MostRestrictive;,Lcom/android/server/devicepolicy/PackageSetUnion;,Lcom/android/server/devicepolicy/TopPriority;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedKeyIterator;]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet; +HPLcom/android/server/devicepolicy/PolicyState;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/admin/PolicyValue;Landroid/app/admin/BooleanPolicyValue;,Landroid/app/admin/LockTaskPolicy;,Landroid/app/admin/PackageSetPolicyValue;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedKeyIterator;]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet; +HSPLcom/android/server/display/AmbientBrightnessStatsTracker$$ExternalSyntheticLambda0;->elapsedTimeMillis()J HSPLcom/android/server/display/AmbientBrightnessStatsTracker;->add(IF)V+]Lcom/android/server/display/AmbientBrightnessStatsTracker$AmbientBrightnessStats;Lcom/android/server/display/AmbientBrightnessStatsTracker$AmbientBrightnessStats;]Lcom/android/server/display/AmbientBrightnessStatsTracker$Injector;Lcom/android/server/display/AmbientBrightnessStatsTracker$Injector;]Lcom/android/server/display/AmbientBrightnessStatsTracker$Timer;Lcom/android/server/display/AmbientBrightnessStatsTracker$Timer; +HPLcom/android/server/display/AutomaticBrightnessController$2;->onSensorChanged(Landroid/hardware/SensorEvent;)V+]Lcom/android/server/display/AutomaticBrightnessController$Clock;Lcom/android/server/display/AutomaticBrightnessController$RealClock;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; HPLcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;->offsetOf(I)I -HPLcom/android/server/display/AutomaticBrightnessController;->calculateAmbientLux(JJ)F+]Lcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;Lcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController; -HPLcom/android/server/display/AutomaticBrightnessController;->nextAmbientLightDarkeningTransition(J)J+]Lcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;Lcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController; -HPLcom/android/server/display/AutomaticBrightnessController;->updateAmbientLux(J)V+]Landroid/os/Handler;Lcom/android/server/display/AutomaticBrightnessController$AutomaticBrightnessHandler;]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController; +HPLcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;->prune(J)V +HPLcom/android/server/display/AutomaticBrightnessController$AmbientLightRingBuffer;->push(JF)V +HPLcom/android/server/display/AutomaticBrightnessController;->calculateAmbientLux(JJ)F +HPLcom/android/server/display/AutomaticBrightnessController;->handleLightSensorEvent(JF)V +HPLcom/android/server/display/AutomaticBrightnessController;->nextAmbientLightBrighteningTransition(J)J+]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController; +HPLcom/android/server/display/AutomaticBrightnessController;->nextAmbientLightDarkeningTransition(J)J+]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController; +HPLcom/android/server/display/AutomaticBrightnessController;->updateAmbientLux(J)V HSPLcom/android/server/display/BrightnessRangeController;->getCurrentBrightnessMax()F+]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/NormalBrightnessModeController;Lcom/android/server/display/NormalBrightnessModeController; -HSPLcom/android/server/display/BrightnessTracker$Receiver;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/display/BrightnessTracker;Lcom/android/server/display/BrightnessTracker; +HSPLcom/android/server/display/BrightnessRangeController;->setAutoBrightnessEnabled(I)V+]Lcom/android/server/display/brightness/clamper/HdrClamper;Lcom/android/server/display/brightness/clamper/HdrClamper; +HSPLcom/android/server/display/BrightnessTracker$Receiver;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/display/BrightnessTracker;->recordAmbientBrightnessStats(Landroid/hardware/SensorEvent;)V+]Lcom/android/server/display/AmbientBrightnessStatsTracker;Lcom/android/server/display/AmbientBrightnessStatsTracker; +HSPLcom/android/server/display/DisplayBrightnessState$Builder;-><init>()V HSPLcom/android/server/display/DisplayBrightnessState$Builder;->from(Lcom/android/server/display/DisplayBrightnessState;)Lcom/android/server/display/DisplayBrightnessState$Builder; HSPLcom/android/server/display/DisplayBrightnessState;-><init>(Lcom/android/server/display/DisplayBrightnessState$Builder;)V+]Lcom/android/server/display/DisplayBrightnessState$Builder;Lcom/android/server/display/DisplayBrightnessState$Builder; HSPLcom/android/server/display/DisplayDevice;->populateViewportLocked(Landroid/hardware/display/DisplayViewport;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice; HSPLcom/android/server/display/DisplayDeviceInfo;-><init>()V HSPLcom/android/server/display/DisplayDeviceInfo;->diff(Lcom/android/server/display/DisplayDeviceInfo;)I +HSPLcom/android/server/display/DisplayDeviceInfo;->flagsToString(I)Ljava/lang/String; HSPLcom/android/server/display/DisplayDeviceInfo;->toString()Ljava/lang/String; HSPLcom/android/server/display/DisplayDeviceRepository;->handleDisplayDeviceChanged(Lcom/android/server/display/DisplayDevice;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/display/DisplayGroup;->getIdLocked(I)I+]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/display/DisplayGroup;->getSizeLocked()I+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/display/DisplayInfoProxy;->get()Landroid/view/DisplayInfo; HSPLcom/android/server/display/DisplayManagerService$1;->requestDisplayState(IIFF)V+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerCallbacks;Lcom/android/server/power/PowerManagerService$1;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/display/DisplayManagerService$BinderService;->getBrightnessInfo(I)Landroid/hardware/display/BrightnessInfo;+]Landroid/hardware/display/IDisplayManager$Stub;Lcom/android/server/display/DisplayManagerService$BinderService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayPowerControllerInterface;Lcom/android/server/display/DisplayPowerController;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; +HSPLcom/android/server/display/DisplayManagerService$BinderService;->getBrightnessInfo(I)Landroid/hardware/display/BrightnessInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; HSPLcom/android/server/display/DisplayManagerService$BinderService;->getDisplayIds(Z)[I+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; HSPLcom/android/server/display/DisplayManagerService$BinderService;->getDisplayInfo(I)Landroid/view/DisplayInfo; HSPLcom/android/server/display/DisplayManagerService$BinderService;->getOverlaySupport()Landroid/hardware/OverlayProperties; HSPLcom/android/server/display/DisplayManagerService$BinderService;->getPreferredWideGamutColorSpaceId()I -HSPLcom/android/server/display/DisplayManagerService$CallbackRecord;->notifyDisplayEventAsync(II)Z+]Landroid/hardware/display/IDisplayManagerCallback;Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;,Landroid/hardware/display/IDisplayManagerCallback$Stub$Proxy;]Lcom/android/server/display/DisplayManagerService$CallbackRecord;Lcom/android/server/display/DisplayManagerService$CallbackRecord;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/display/DisplayManagerService$DisplayManagerHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/hardware/display/DisplayViewport;Landroid/hardware/display/DisplayViewport;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/input/InputManagerInternal;Lcom/android/server/input/InputManagerService$LocalService;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; -HSPLcom/android/server/display/DisplayManagerService$LocalService;->getDisplayIdToMirror(I)I+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; -HSPLcom/android/server/display/DisplayManagerService$LocalService;->getRefreshRateSwitchingType()I+]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService; -HSPLcom/android/server/display/DisplayManagerService$LocalService;->performTraversal(Landroid/view/SurfaceControl$Transaction;Landroid/util/SparseArray;)V+]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService; -HSPLcom/android/server/display/DisplayManagerService$LocalService;->requestPowerState(ILandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/DisplayPowerControllerInterface;Lcom/android/server/display/DisplayPowerController;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; -HSPLcom/android/server/display/DisplayManagerService$LocalService;->setDisplayProperties(IZFIFFZZZ)V+]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService; -HPLcom/android/server/display/DisplayManagerService$PendingCallback;->addDisplayEvent(II)V+]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/display/DisplayManagerService$UidImportanceListener;->onUidImportance(II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayManagerService$PendingCallback;Lcom/android/server/display/DisplayManagerService$PendingCallback;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/display/DisplayManagerService;->deliverDisplayEvent(ILandroid/util/ArraySet;I)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayManagerService$CallbackRecord;Lcom/android/server/display/DisplayManagerService$CallbackRecord;]Lcom/android/server/display/DisplayManagerService$PendingCallback;Lcom/android/server/display/DisplayManagerService$PendingCallback;]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoForFrameRateOverride([Landroid/view/DisplayEventReceiver$FrameRateOverride;Landroid/view/DisplayInfo;I)Landroid/view/DisplayInfo;+]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo; -HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoInternal(II)Landroid/view/DisplayInfo;+]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; -HSPLcom/android/server/display/DisplayManagerService;->isMinimalPostProcessingAllowed()Z -HSPLcom/android/server/display/DisplayManagerService;->performTraversalInternal(Landroid/view/SurfaceControl$Transaction;Landroid/util/SparseArray;)V+]Landroid/hardware/display/DisplayManagerInternal$DisplayTransactionListener;Lcom/android/server/display/ColorFade$NaturalSurfaceLayout;]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HSPLcom/android/server/display/DisplayManagerService;->requestDisplayStateInternal(IIFF)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Ljava/lang/Runnable;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/display/DisplayManagerService$CallbackRecord;->notifyDisplayEventAsync(II)Z+]Landroid/hardware/display/IDisplayManagerCallback;Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;,Landroid/hardware/display/IDisplayManagerCallback$Stub$Proxy; +HSPLcom/android/server/display/DisplayManagerService$DisplayManagerHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/input/InputManagerInternal;Lcom/android/server/input/InputManagerService$LocalService;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HSPLcom/android/server/display/DisplayManagerService$LocalService;->getDisplayIdToMirror(I)I+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; +HSPLcom/android/server/display/DisplayManagerService$LocalService;->getDisplayInfo(I)Landroid/view/DisplayInfo; +HSPLcom/android/server/display/DisplayManagerService$LocalService;->getRefreshRateSwitchingType()I +HSPLcom/android/server/display/DisplayManagerService$LocalService;->requestPowerState(ILandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; +HSPLcom/android/server/display/DisplayManagerService;->deliverDisplayEvent(ILandroid/util/ArraySet;I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoForFrameRateOverride([Landroid/view/DisplayEventReceiver$FrameRateOverride;Landroid/view/DisplayInfo;I)Landroid/view/DisplayInfo; +HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoInternal(II)Landroid/view/DisplayInfo;+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; +HSPLcom/android/server/display/DisplayManagerService;->performTraversalInternal(Landroid/view/SurfaceControl$Transaction;Landroid/util/SparseArray;)V+]Landroid/hardware/display/DisplayManagerInternal$DisplayTransactionListener;Lcom/android/server/display/ColorFade$NaturalSurfaceLayout;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; +HSPLcom/android/server/display/DisplayManagerService;->requestDisplayStateInternal(IIFF)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Ljava/lang/Runnable;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1; HSPLcom/android/server/display/DisplayManagerService;->scheduleTraversalLocked(Z)V HSPLcom/android/server/display/DisplayManagerService;->sendDisplayEventIfEnabledLocked(Lcom/android/server/display/LogicalDisplay;I)V HSPLcom/android/server/display/DisplayManagerService;->sendDisplayEventLocked(Lcom/android/server/display/LogicalDisplay;I)V -HSPLcom/android/server/display/DisplayManagerService;->setDisplayPropertiesInternal(IZFIFFZZZ)V+]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;]Lcom/android/server/display/DisplayManagerService;Lcom/android/server/display/DisplayManagerService;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;Lcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;]Lcom/android/server/display/mode/DisplayModeDirector;Lcom/android/server/display/mode/DisplayModeDirector; -HSPLcom/android/server/display/DisplayManagerService;->updateDisplayStateLocked(Lcom/android/server/display/DisplayDevice;)Ljava/lang/Runnable;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; -HSPLcom/android/server/display/DisplayManagerService;->updateViewportPowerStateLocked(Lcom/android/server/display/LogicalDisplay;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HSPLcom/android/server/display/DisplayManagerService;->setDisplayPropertiesInternal(IZFIFFZZZ)V+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/mode/DisplayModeDirector;Lcom/android/server/display/mode/DisplayModeDirector; +HSPLcom/android/server/display/DisplayManagerService;->updateDisplayStateLocked(Lcom/android/server/display/DisplayDevice;)Ljava/lang/Runnable;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; +HSPLcom/android/server/display/DisplayPowerController;->animateScreenStateChange(IIZ)V+]Lcom/android/server/display/RampAnimator$DualRampAnimator;Lcom/android/server/display/RampAnimator$DualRampAnimator; +HSPLcom/android/server/display/DisplayPowerController;->clampScreenBrightness(F)F+]Lcom/android/server/display/BrightnessRangeController;Lcom/android/server/display/BrightnessRangeController; HSPLcom/android/server/display/DisplayPowerController;->getBrightnessInfo()Landroid/hardware/display/BrightnessInfo; -HSPLcom/android/server/display/DisplayPowerController;->logBrightnessEvent(Lcom/android/server/display/brightness/BrightnessEvent;F)V+]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController; HSPLcom/android/server/display/DisplayPowerController;->notifyBrightnessTrackerChanged(FZZZZZ)V+]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController;]Lcom/android/server/display/BrightnessTracker;Lcom/android/server/display/BrightnessTracker; -HSPLcom/android/server/display/DisplayPowerController;->onDisplayChanged(Lcom/android/server/display/HighBrightnessModeMetadata;I)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;]Lcom/android/server/display/DisplayPowerController$Clock;Lcom/android/server/display/DisplayPowerController$Injector$$ExternalSyntheticLambda0; -HSPLcom/android/server/display/DisplayPowerController;->requestPowerState(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Z)Z+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;]Lcom/android/server/display/DisplayPowerController;Lcom/android/server/display/DisplayPowerController;]Lcom/android/server/display/DisplayPowerProximityStateController;Lcom/android/server/display/DisplayPowerProximityStateController; -HSPLcom/android/server/display/DisplayPowerController;->saveBrightnessInfo(FFLcom/android/server/display/DisplayBrightnessState;)Z+]Lcom/android/server/display/BrightnessRangeController;Lcom/android/server/display/BrightnessRangeController;]Lcom/android/server/display/DisplayPowerController$CachedBrightnessInfo;Lcom/android/server/display/DisplayPowerController$CachedBrightnessInfo;]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController; -HSPLcom/android/server/display/DisplayPowerController;->updatePowerStateInternal()V+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController;]Lcom/android/server/display/BrightnessRangeController;Lcom/android/server/display/BrightnessRangeController;]Lcom/android/server/display/DisplayPowerControllerInterface;Lcom/android/server/display/DisplayPowerController;]Lcom/android/server/display/RampAnimator$DualRampAnimator;Lcom/android/server/display/RampAnimator$DualRampAnimator;]Lcom/android/server/display/ScreenOffBrightnessSensorController;Lcom/android/server/display/ScreenOffBrightnessSensorController;]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController;]Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy2;Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy2;]Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;]Lcom/android/server/display/state/DisplayStateController;Lcom/android/server/display/state/DisplayStateController;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; +HSPLcom/android/server/display/DisplayPowerController;->requestPowerState(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Z)Z+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest; +HSPLcom/android/server/display/DisplayPowerController;->saveBrightnessInfo(FFLcom/android/server/display/DisplayBrightnessState;)Z+]Lcom/android/server/display/BrightnessRangeController;Lcom/android/server/display/BrightnessRangeController;]Lcom/android/server/display/DisplayPowerController$CachedBrightnessInfo;Lcom/android/server/display/DisplayPowerController$CachedBrightnessInfo; +HSPLcom/android/server/display/DisplayPowerController;->sendUpdatePowerStateLocked()V+]Lcom/android/server/display/DisplayPowerController$Clock;Lcom/android/server/display/DisplayPowerController$Injector$$ExternalSyntheticLambda0; +HSPLcom/android/server/display/DisplayPowerController;->setScreenState(IIZ)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; +HSPLcom/android/server/display/DisplayPowerController;->updatePowerStateInternal()V+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController;]Lcom/android/server/display/BrightnessRangeController;Lcom/android/server/display/BrightnessRangeController;]Lcom/android/server/display/RampAnimator$DualRampAnimator;Lcom/android/server/display/RampAnimator$DualRampAnimator;]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController;]Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy2;Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy;]Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;]Lcom/android/server/display/state/DisplayStateController;Lcom/android/server/display/state/DisplayStateController;]Lcom/android/server/display/whitebalance/DisplayWhiteBalanceController;Lcom/android/server/display/whitebalance/DisplayWhiteBalanceController;]Lcom/android/server/display/whitebalance/DisplayWhiteBalanceSettings;Lcom/android/server/display/whitebalance/DisplayWhiteBalanceSettings;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; HSPLcom/android/server/display/DisplayPowerProximityStateController;->setPendingWaitForNegativeProximityLocked(Z)Z -HSPLcom/android/server/display/DisplayPowerState$4;->run()V+]Lcom/android/server/display/DisplayPowerState$PhotonicModulator;Lcom/android/server/display/DisplayPowerState$PhotonicModulator; -HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->run()V+]Lcom/android/server/display/DisplayBlanker;Lcom/android/server/display/DisplayManagerService$1; -HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->setState(IFF)Z+]Ljava/lang/Object;Ljava/lang/Object; +HSPLcom/android/server/display/DisplayPowerProximityStateController;->updateProximityState(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;I)V +HSPLcom/android/server/display/DisplayPowerState$4;->run()V +HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->run()V +HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->setState(IFF)Z HSPLcom/android/server/display/DisplayPowerState;->postScreenUpdateThreadSafe()V -HSPLcom/android/server/display/DisplayPowerState;->setSdrScreenBrightness(F)V+]Lcom/android/server/display/DisplayPowerState;Lcom/android/server/display/DisplayPowerState; -HSPLcom/android/server/display/HighBrightnessModeController;->calculateRemainingTime(J)J+]Lcom/android/server/display/HbmEvent;Lcom/android/server/display/HbmEvent;]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DeqIterator; -HSPLcom/android/server/display/HighBrightnessModeController;->onBrightnessChanged(FFI)V+]Lcom/android/server/display/DisplayManagerService$Clock;Lcom/android/server/display/HighBrightnessModeController$Injector$$ExternalSyntheticLambda0;]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata; -HSPLcom/android/server/display/HighBrightnessModeController;->recalculateTimeAllowance()V+]Lcom/android/server/display/DisplayManagerService$Clock;Lcom/android/server/display/HighBrightnessModeController$Injector$$ExternalSyntheticLambda0;]Lcom/android/server/display/HbmEvent;Lcom/android/server/display/HbmEvent;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/display/LocalDisplayAdapter$DisplayModeRecord;->hasMatchingMode(Landroid/view/SurfaceControl$DisplayMode;)Z+]Landroid/view/Display$Mode;Landroid/view/Display$Mode; -HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;->run()V+]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1; -HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;->setDisplayBrightness(FF)V+]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/display/HighBrightnessModeController;->getCurrentBrightnessMax()F+]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController; +HSPLcom/android/server/display/LocalDisplayAdapter$DisplayModeRecord;->hasMatchingMode(Landroid/view/SurfaceControl$DisplayMode;)Z +HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;->run()V +HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;->setDisplayBrightness(FF)V+]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getDisplayDeviceConfig()Lcom/android/server/display/DisplayDeviceConfig; -HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getDisplayDeviceInfoLocked()Lcom/android/server/display/DisplayDeviceInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Lcom/android/server/display/DisplayAdapter;Lcom/android/server/display/LocalDisplayAdapter;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;]Lcom/android/server/display/LocalDisplayAdapter;Lcom/android/server/display/LocalDisplayAdapter;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getDisplayDeviceInfoLocked()Lcom/android/server/display/DisplayDeviceInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getLogicalDensity()I+]Lcom/android/server/display/DensityMapping;Lcom/android/server/display/DensityMapping;]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig; HSPLcom/android/server/display/LogicalDisplay;->configureDisplayLocked(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/display/DisplayDevice;Z)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice; -HSPLcom/android/server/display/LogicalDisplay;->getDisplayIdLocked()I HSPLcom/android/server/display/LogicalDisplay;->getDisplayInfoLocked()Landroid/view/DisplayInfo;+]Lcom/android/server/display/DisplayInfoProxy;Lcom/android/server/display/DisplayInfoProxy; HSPLcom/android/server/display/LogicalDisplay;->getMaskingInsets(Lcom/android/server/display/DisplayDeviceInfo;)Landroid/graphics/Rect; -HSPLcom/android/server/display/LogicalDisplay;->updateFrameRateOverrides(Lcom/android/server/display/DisplayDeviceInfo;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Float;Ljava/lang/Float; +HSPLcom/android/server/display/LogicalDisplay;->getPrimaryDisplayDeviceLocked()Lcom/android/server/display/DisplayDevice; +HSPLcom/android/server/display/LogicalDisplay;->updateFrameRateOverrides(Lcom/android/server/display/DisplayDeviceInfo;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/display/LogicalDisplay;->updateLocked(Lcom/android/server/display/DisplayDeviceRepository;Lcom/android/server/display/mode/SyntheticModeManager;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayDeviceRepository;Lcom/android/server/display/DisplayDeviceRepository;]Lcom/android/server/display/DisplayInfoProxy;Lcom/android/server/display/DisplayInfoProxy;]Lcom/android/server/display/mode/SyntheticModeManager;Lcom/android/server/display/mode/SyntheticModeManager; HSPLcom/android/server/display/LogicalDisplayMapper;->assignDisplayGroupLocked(Lcom/android/server/display/LogicalDisplay;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayGroupIdFromDisplayIdLocked(I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayGroupLocked(I)Lcom/android/server/display/DisplayGroup;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayIdsLocked(IZ)[I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay; +HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayIdsLocked(IZ)[I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(I)Lcom/android/server/display/LogicalDisplay;+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper; -HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(IZ)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay; -HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(Lcom/android/server/display/DisplayDevice;Z)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay; +HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(IZ)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(Lcom/android/server/display/DisplayDevice;Z)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/display/LogicalDisplayMapper;->sendUpdatesForDisplaysLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper$Listener;Lcom/android/server/display/DisplayManagerService$LogicalDisplayListener;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; -HSPLcom/android/server/display/LogicalDisplayMapper;->updateLogicalDisplaysLocked(IZ)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplay;Lcom/android/server/display/LogicalDisplay;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; -HPLcom/android/server/display/RampAnimator$DualRampAnimator$1;->run()V+]Landroid/view/Choreographer;Landroid/view/Choreographer;]Lcom/android/server/display/RampAnimator$DualRampAnimator;Lcom/android/server/display/RampAnimator$DualRampAnimator;]Lcom/android/server/display/RampAnimator$Listener;Lcom/android/server/display/DisplayPowerController$3;]Lcom/android/server/display/RampAnimator;Lcom/android/server/display/RampAnimator; -HPLcom/android/server/display/RampAnimator;->performNextAnimationStep(J)V+]Lcom/android/server/display/RampAnimator;Lcom/android/server/display/RampAnimator; +HSPLcom/android/server/display/LogicalDisplayMapper;->updateLogicalDisplaysLocked(IZ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; +HPLcom/android/server/display/RampAnimator;->performNextAnimationStep(J)V +HSPLcom/android/server/display/RampAnimator;->setPropertyValue(F)V+]Landroid/util/FloatProperty;Lcom/android/server/display/DisplayPowerState$2;,Lcom/android/server/display/DisplayPowerState$3; HSPLcom/android/server/display/brightness/BrightnessEvent;->copyFrom(Lcom/android/server/display/brightness/BrightnessEvent;)V HSPLcom/android/server/display/brightness/BrightnessEvent;->equalsMainData(Lcom/android/server/display/brightness/BrightnessEvent;)Z HSPLcom/android/server/display/brightness/BrightnessEvent;->reset()V HSPLcom/android/server/display/brightness/BrightnessEvent;->toString(Z)Ljava/lang/String; -HSPLcom/android/server/display/brightness/BrightnessReason;->toString(I)Ljava/lang/String; -HSPLcom/android/server/display/brightness/BrightnessUtils;->constructDisplayBrightnessState(IFFLjava/lang/String;Z)Lcom/android/server/display/DisplayBrightnessState; -HSPLcom/android/server/display/brightness/clamper/BrightnessClamperController;->clamp(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;FZ)Lcom/android/server/display/DisplayBrightnessState;+]Lcom/android/server/display/DisplayBrightnessState$Builder;Lcom/android/server/display/DisplayBrightnessState$Builder;]Lcom/android/server/display/brightness/BrightnessReason;Lcom/android/server/display/brightness/BrightnessReason;]Lcom/android/server/display/brightness/clamper/BrightnessStateModifier;Lcom/android/server/display/brightness/clamper/BrightnessLowPowerModeModifier;,Lcom/android/server/display/brightness/clamper/DisplayDimModifier;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/display/feature/DisplayManagerFlags$FlagState;->-$$Nest$misEnabled(Lcom/android/server/display/feature/DisplayManagerFlags$FlagState;)Z+]Lcom/android/server/display/feature/DisplayManagerFlags$FlagState;Lcom/android/server/display/feature/DisplayManagerFlags$FlagState; +HSPLcom/android/server/display/brightness/BrightnessReason;->equals(Ljava/lang/Object;)Z+]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLcom/android/server/display/brightness/BrightnessReason;->set(Lcom/android/server/display/brightness/BrightnessReason;)V +HSPLcom/android/server/display/brightness/DisplayBrightnessController;->getScreenBrightnessSetting()F+]Lcom/android/server/display/BrightnessSetting;Lcom/android/server/display/BrightnessSetting; +HSPLcom/android/server/display/brightness/DisplayBrightnessController;->updateBrightness(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;ILandroid/hardware/display/DisplayManagerInternal$DisplayOffloadSession;)Lcom/android/server/display/DisplayBrightnessState;+]Lcom/android/server/display/brightness/DisplayBrightnessStrategySelector;Lcom/android/server/display/brightness/DisplayBrightnessStrategySelector;]Lcom/android/server/display/brightness/strategy/DisplayBrightnessStrategy;megamorphic_types +HSPLcom/android/server/display/brightness/DisplayBrightnessStrategySelector;->selectStrategy(Lcom/android/server/display/brightness/StrategySelectionRequest;)Lcom/android/server/display/brightness/strategy/DisplayBrightnessStrategy;+]Lcom/android/server/display/brightness/DisplayBrightnessStrategySelector;Lcom/android/server/display/brightness/DisplayBrightnessStrategySelector;]Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy2;Lcom/android/server/display/brightness/strategy/AutomaticBrightnessStrategy;]Lcom/android/server/display/brightness/strategy/DisplayBrightnessStrategy;megamorphic_types]Lcom/android/server/display/brightness/strategy/FollowerBrightnessStrategy;Lcom/android/server/display/brightness/strategy/FollowerBrightnessStrategy;]Lcom/android/server/display/brightness/strategy/OffloadBrightnessStrategy;Lcom/android/server/display/brightness/strategy/OffloadBrightnessStrategy;]Lcom/android/server/display/brightness/strategy/TemporaryBrightnessStrategy;Lcom/android/server/display/brightness/strategy/TemporaryBrightnessStrategy;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags; +HSPLcom/android/server/display/brightness/clamper/BrightnessClamperController;->clamp(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;FZI)Lcom/android/server/display/DisplayBrightnessState;+]Lcom/android/server/display/brightness/clamper/BrightnessStateModifier;Lcom/android/server/display/brightness/clamper/BrightnessLowPowerModeModifier;,Lcom/android/server/display/brightness/clamper/BrightnessThermalModifier;,Lcom/android/server/display/brightness/clamper/BrightnessWearBedtimeModeModifier;,Lcom/android/server/display/brightness/clamper/DisplayDimModifier;]Lcom/android/server/display/brightness/clamper/LightSensorController;Lcom/android/server/display/brightness/clamper/LightSensorController;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/display/feature/DisplayManagerFlags$FlagState;->-$$Nest$misEnabled(Lcom/android/server/display/feature/DisplayManagerFlags$FlagState;)Z HSPLcom/android/server/display/feature/DisplayManagerFlags$FlagState;->isEnabled()Z -HSPLcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;->setAppPreferredRefreshRateRangeLocked(IFF)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/mode/VotesStorage;Lcom/android/server/display/mode/VotesStorage; -HSPLcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;->setAppRequestedModeLocked(II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Lcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;Lcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;]Lcom/android/server/display/mode/VotesStorage;Lcom/android/server/display/mode/VotesStorage; -HSPLcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver;->onBrightnessChangedLocked()V+]Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver;Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver;]Lcom/android/server/display/mode/VotesStorage;Lcom/android/server/display/mode/VotesStorage; +HSPLcom/android/server/display/feature/DisplayManagerFlags;->areAutoBrightnessModesEnabled()Z +HSPLcom/android/server/display/feature/DisplayManagerFlags;->isConnectedDisplayManagementEnabled()Z +HSPLcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;->setAppRequest(IIFFF)V+]Lcom/android/server/display/mode/VotesStorage;Lcom/android/server/display/mode/VotesStorage; HSPLcom/android/server/display/mode/DisplayModeDirector;->getModeSwitchingType()I HSPLcom/android/server/display/mode/VotesStorage;->updateVote(IILcom/android/server/display/mode/Vote;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/mode/VotesStatsReporter;Lcom/android/server/display/mode/VotesStatsReporter;]Lcom/android/server/display/mode/VotesStorage$Listener;Lcom/android/server/display/mode/DisplayModeDirector$$ExternalSyntheticLambda0;]Ljava/lang/Object;megamorphic_types +HSPLcom/android/server/display/state/DisplayStateController;->updateDisplayState(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;ZZ)Landroid/util/Pair; +HSPLcom/android/server/display/utils/SensorUtils;->findSensor(Landroid/hardware/SensorManager;Ljava/lang/String;Ljava/lang/String;I)Landroid/hardware/Sensor;+]Landroid/hardware/SensorManager;Landroid/hardware/SystemSensorManager;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/dreams/DreamManagerService$LocalService;->isDreaming()Z HSPLcom/android/server/dreams/DreamManagerService;->isDreamingInternal()Z HSPLcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;->queryByComponent(Landroid/content/ComponentName;Ljava/util/List;)V +HSPLcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;->sortResults(Ljava/util/List;)V HSPLcom/android/server/firewall/IntentFirewall;->checkBroadcast(Landroid/content/Intent;IILjava/lang/String;I)Z+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall; HSPLcom/android/server/firewall/IntentFirewall;->checkIntent(Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;Landroid/content/ComponentName;ILandroid/content/Intent;IILjava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/IntentResolver;Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;]Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/firewall/IntentFirewall;->checkService(Landroid/content/ComponentName;Landroid/content/Intent;IILjava/lang/String;Landroid/content/pm/ApplicationInfo;)Z+]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall; HSPLcom/android/server/firewall/IntentFirewall;->getPackageManager()Landroid/content/pm/PackageManagerInternal; -HSPLcom/android/server/health/HealthServiceWrapperAidl;->getProperty(ILandroid/os/BatteryProperty;)I+]Lcom/android/server/health/HealthServiceWrapperAidl;Lcom/android/server/health/HealthServiceWrapperAidl; -HSPLcom/android/server/health/HealthServiceWrapperAidl;->getPropertyInternal(ILandroid/os/BatteryProperty;)I+]Landroid/hardware/health/IHealth;Landroid/hardware/health/IHealth$Stub$Proxy;]Landroid/os/BatteryProperty;Landroid/os/BatteryProperty;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; -HSPLcom/android/server/infra/AbstractMasterSystemService;->getServiceForUserLocked(I)Lcom/android/server/infra/AbstractPerUserSystemService;+]Lcom/android/server/infra/AbstractMasterSystemService;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/grammaticalinflection/GrammaticalInflectionUtils;->checkSystemGrammaticalGenderPermission(Landroid/permission/PermissionManager;Landroid/content/AttributionSource;)Z +HSPLcom/android/server/health/HealthRegCallbackAidl$HalInfoCallback;->healthInfoChanged(Landroid/hardware/health/HealthInfo;)V+]Lcom/android/server/health/HealthInfoCallback;Lcom/android/server/BatteryService$$ExternalSyntheticLambda5; +HPLcom/android/server/health/HealthServiceWrapperAidl;->getProperty(ILandroid/os/BatteryProperty;)I +HPLcom/android/server/health/HealthServiceWrapperAidl;->getPropertyInternal(ILandroid/os/BatteryProperty;)I+]Landroid/hardware/health/IHealth;Landroid/hardware/health/IHealth$Stub$Proxy;]Landroid/os/BatteryProperty;Landroid/os/BatteryProperty; +HSPLcom/android/server/infra/AbstractMasterSystemService;->assertCalledByPackageOwner(Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HSPLcom/android/server/infra/AbstractMasterSystemService;->getServiceListForUserLocked(I)Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/infra/AbstractMasterSystemService;megamorphic_types]Lcom/android/server/infra/ServiceNameResolver;Lcom/android/server/infra/FrameworkResourcesServiceNameResolver;,Lcom/android/server/infra/SecureSettingsServiceNameResolver;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/input/InputManagerService;->monitor()V+]Lcom/android/server/input/NativeInputManagerService;Lcom/android/server/input/NativeInputManagerService$NativeImpl; HSPLcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutDescriptor;->format(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -HSPLcom/android/server/input/KeyboardLayoutManager;->getLocalesFromLanguageTags(Ljava/lang/String;)Landroid/os/LocaleList; -HSPLcom/android/server/input/KeyboardLayoutManager;->visitKeyboardLayoutsInPackage(Landroid/content/pm/PackageManager;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;)V+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda0;,Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda1;,Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda5;,Lcom/android/server/input/KeyboardLayoutManager$2;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/inputmethod/InputMethodSettings;->createEnabledInputMethodList(Ljava/util/List;Ljava/util/function/Predicate;)Ljava/util/ArrayList;+]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Predicate;Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda11;,Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda12;,Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda19;,Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda20;,Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda21; -HSPLcom/android/server/inputmethod/InputMethodSettings;->getEnabledInputMethodSubtypeList(Landroid/view/inputmethod/InputMethodInfo;)Ljava/util/List;+]Landroid/view/inputmethod/InputMethodInfo;Landroid/view/inputmethod/InputMethodInfo;]Landroid/view/inputmethod/InputMethodSubtype;Landroid/view/inputmethod/InputMethodSubtype;]Lcom/android/server/inputmethod/InputMethodMap;Lcom/android/server/inputmethod/InputMethodMap;]Lcom/android/server/inputmethod/InputMethodSettings;Lcom/android/server/inputmethod/InputMethodSettings;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/inputmethod/InputMethodSettings;->getEnabledInputMethodsAndSubtypeList()Ljava/util/List;+]Landroid/text/TextUtils$SimpleStringSplitter;Landroid/text/TextUtils$SimpleStringSplitter;]Lcom/android/server/inputmethod/InputMethodSettings;Lcom/android/server/inputmethod/InputMethodSettings;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/input/KeyboardLayoutManager;->visitKeyboardLayoutsInPackage(Landroid/content/pm/PackageManager;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;)V+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda0;,Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda1;,Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda5;,Lcom/android/server/input/KeyboardLayoutManager$2;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLcom/android/server/inputmethod/InputMethodSettings;->createEnabledInputMethodList(Ljava/util/List;Ljava/util/function/Predicate;)Ljava/util/ArrayList;+]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Predicate;Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda10;,Lcom/android/server/inputmethod/InputMethodManagerService$$ExternalSyntheticLambda19; +HSPLcom/android/server/inputmethod/InputMethodSettings;->getEnabledInputMethodSubtypeList(Landroid/view/inputmethod/InputMethodInfo;)Ljava/util/List;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/inputmethod/InputMethodSettings;->getEnabledInputMethodsAndSubtypeList()Ljava/util/List; +HSPLcom/android/server/inputmethod/InputMethodSubtypeSwitchingController;->getSortedInputMethodAndSubtypeList(ZZZLandroid/content/Context;Lcom/android/server/inputmethod/InputMethodSettings;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/inputmethod/SecureSettingsWrapper;->get(I)Lcom/android/server/inputmethod/SecureSettingsWrapper$ReaderWriter;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/JobConcurrencyManager$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V HPLcom/android/server/job/JobConcurrencyManager$$ExternalSyntheticLambda2;->compare(Ljava/lang/Object;Ljava/lang/Object;)I HSPLcom/android/server/job/JobConcurrencyManager$ContextAssignment;->clear()V @@ -1574,424 +1629,399 @@ HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->canJobStart( HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->getRunningJobCount(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->incrementPendingJobCount(I)V HPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->incrementRunningJobCount(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->maybeAdjustReservations(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->maybeAdjustReservations(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->onCountDone()V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->onJobFinished(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->onJobFinished(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->onJobStarted(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->resetCounts()V +HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->resetStagingCount()V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->setConfig(Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig; HSPLcom/android/server/job/JobConcurrencyManager$WorkCountTracker;->stageJob(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker; +HSPLcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;->getMaxTotal()I HSPLcom/android/server/job/JobConcurrencyManager;->assignJobsToContextsInternalLocked()V+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; -HSPLcom/android/server/job/JobConcurrencyManager;->assignJobsToContextsLocked()V+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager; -HSPLcom/android/server/job/JobConcurrencyManager;->carryOutAssignmentChangesLocked(Landroid/util/ArraySet;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext; -HSPLcom/android/server/job/JobConcurrencyManager;->cleanUpAfterAssignmentChangesLocked(Landroid/util/ArraySet;Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;Landroid/util/SparseIntArray;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;]Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobConcurrencyManager;->determineAssignmentsLocked(Landroid/util/ArraySet;Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobConcurrencyManager;->getJobWorkTypes(Lcom/android/server/job/controllers/JobStatus;)I+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/JobConcurrencyManager;->assignJobsToContextsLocked()V+]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger; +HSPLcom/android/server/job/JobConcurrencyManager;->carryOutAssignmentChangesLocked(Landroid/util/ArraySet;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool; +HSPLcom/android/server/job/JobConcurrencyManager;->cleanUpAfterAssignmentChangesLocked(Landroid/util/ArraySet;Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;Landroid/util/SparseIntArray;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->determineAssignmentsLocked(Landroid/util/ArraySet;Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->getJobWorkTypes(Lcom/android/server/job/controllers/JobStatus;)I+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager; HSPLcom/android/server/job/JobConcurrencyManager;->getPkgStatsLocked(ILjava/lang/String;)Lcom/android/server/job/JobConcurrencyManager$PackageStats;+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; HSPLcom/android/server/job/JobConcurrencyManager;->getRunningJobsLocked()Landroid/util/ArraySet; -HSPLcom/android/server/job/JobConcurrencyManager;->hasImmediacyPrivilegeLocked(Lcom/android/server/job/controllers/JobStatus;Landroid/util/SparseIntArray;)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobConcurrencyManager;->isJobRunningLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/job/JobConcurrencyManager;->isPkgConcurrencyLimitedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/JobConcurrencyManager;->lambda$static$0(Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;)I+]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext; -HSPLcom/android/server/job/JobConcurrencyManager;->noteConcurrency(Z)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/modules/expresslog/Histogram;Lcom/android/modules/expresslog/Histogram;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobConcurrencyManager;->onJobCompletedLocked(Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/controllers/JobStatus;I)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobConcurrencyManager;->prepareForAssignmentDeterminationLocked(Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->hasImmediacyPrivilegeLocked(Lcom/android/server/job/controllers/JobStatus;Landroid/util/SparseIntArray;)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/job/JobConcurrencyManager;->isJobRunningLocked(Lcom/android/server/job/controllers/JobStatus;)Z +HSPLcom/android/server/job/JobConcurrencyManager;->isPkgConcurrencyLimitedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HPLcom/android/server/job/JobConcurrencyManager;->lambda$static$0(Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;Lcom/android/server/job/JobConcurrencyManager$ContextAssignment;)I +HSPLcom/android/server/job/JobConcurrencyManager;->noteConcurrency(Z)V+]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->onJobCompletedLocked(Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/controllers/JobStatus;I)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->prepareForAssignmentDeterminationLocked(Landroid/util/ArraySet;Ljava/util/List;Ljava/util/List;Lcom/android/server/job/JobConcurrencyManager$AssignmentInfo;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/JobConcurrencyManager;->refreshSystemStateLocked()Z+]Landroid/app/IActivityManager;Lcom/android/server/am/ActivityManagerService;]Lcom/android/internal/util/jobs/StatLogger;Lcom/android/internal/util/jobs/StatLogger;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; HSPLcom/android/server/job/JobConcurrencyManager;->shouldRunAsFgUserJob(Lcom/android/server/job/controllers/JobStatus;)Z -HPLcom/android/server/job/JobConcurrencyManager;->shouldStopRunningJobLocked(Lcom/android/server/job/JobServiceContext;)Ljava/lang/String;+]Landroid/os/PowerManager;Landroid/os/PowerManager;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/job/JobConcurrencyManager;->startJobLocked(Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/controllers/JobStatus;I)V+]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock;]Landroid/os/PowerManager;Landroid/os/PowerManager;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobConcurrencyManager;->stopJobOnServiceContextLocked(Lcom/android/server/job/controllers/JobStatus;IILjava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobConcurrencyManager;->updateCounterConfigLocked()V+]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager; -HSPLcom/android/server/job/JobConcurrencyManager;->updateNonRunningPrioritiesLocked(Lcom/android/server/job/PendingJobQueue;Z)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; -HPLcom/android/server/job/JobNotificationCoordinator;->removeNotificationAssociation(Lcom/android/server/job/JobServiceContext;ILcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/notification/NotificationManagerInternal;Lcom/android/server/notification/NotificationManagerService$13; -HPLcom/android/server/job/JobPackageTracker$DataSet;->decActive(ILjava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/job/JobConcurrencyManager;->shouldStopRunningJobLocked(Lcom/android/server/job/JobServiceContext;)Ljava/lang/String;+]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;Lcom/android/server/job/JobConcurrencyManager$WorkTypeConfig;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HSPLcom/android/server/job/JobConcurrencyManager;->startJobLocked(Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/controllers/JobStatus;I)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/job/JobConcurrencyManager;->stopJobOnServiceContextLocked(Lcom/android/server/job/controllers/JobStatus;IILjava/lang/String;)Z+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobConcurrencyManager;->updateCounterConfigLocked()V+]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker; +HSPLcom/android/server/job/JobConcurrencyManager;->updateNonRunningPrioritiesLocked(Lcom/android/server/job/PendingJobQueue;Z)V+]Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;Lcom/android/server/job/JobConcurrencyManager$WorkCountTracker;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HSPLcom/android/server/job/JobNotificationCoordinator;->removeNotificationAssociation(Lcom/android/server/job/JobServiceContext;ILcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/notification/NotificationManagerInternal;Lcom/android/server/notification/NotificationManagerService$13; +HSPLcom/android/server/job/JobPackageTracker$DataSet;->decActive(ILjava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobPackageTracker$DataSet;->decPending(ILjava/lang/String;J)V -HSPLcom/android/server/job/JobPackageTracker$DataSet;->getEntry(ILjava/lang/String;)Lcom/android/server/job/JobPackageTracker$PackageEntry;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/job/JobPackageTracker$DataSet;->getOrCreateEntry(ILjava/lang/String;)Lcom/android/server/job/JobPackageTracker$PackageEntry;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobPackageTracker$DataSet;->getEntry(ILjava/lang/String;)Lcom/android/server/job/JobPackageTracker$PackageEntry;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobPackageTracker$DataSet;->getOrCreateEntry(ILjava/lang/String;)Lcom/android/server/job/JobPackageTracker$PackageEntry;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/JobPackageTracker$DataSet;->getTotalTime(J)J HSPLcom/android/server/job/JobPackageTracker$DataSet;->incActive(ILjava/lang/String;J)V HSPLcom/android/server/job/JobPackageTracker$DataSet;->incPending(ILjava/lang/String;J)V HSPLcom/android/server/job/JobPackageTracker;->addEvent(IILjava/lang/String;IILjava/lang/String;)V+]Lcom/android/internal/util/jobs/RingBufferIndices;Lcom/android/internal/util/jobs/RingBufferIndices;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/JobPackageTracker;->getLoadFactor(Lcom/android/server/job/controllers/JobStatus;)F+]Lcom/android/server/job/JobPackageTracker$DataSet;Lcom/android/server/job/JobPackageTracker$DataSet;]Lcom/android/server/job/JobPackageTracker$PackageEntry;Lcom/android/server/job/JobPackageTracker$PackageEntry;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; +HSPLcom/android/server/job/JobPackageTracker;->getLoadFactor(Lcom/android/server/job/controllers/JobStatus;)F+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; HSPLcom/android/server/job/JobPackageTracker;->noteActive(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; HSPLcom/android/server/job/JobPackageTracker;->noteConcurrency(II)V -HPLcom/android/server/job/JobPackageTracker;->noteInactive(Lcom/android/server/job/controllers/JobStatus;ILjava/lang/String;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; +HSPLcom/android/server/job/JobPackageTracker;->noteInactive(Lcom/android/server/job/controllers/JobStatus;ILjava/lang/String;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; HSPLcom/android/server/job/JobPackageTracker;->noteNonpending(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; -HSPLcom/android/server/job/JobPackageTracker;->notePending(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobPackageTracker$DataSet;Lcom/android/server/job/JobPackageTracker$DataSet;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; -HSPLcom/android/server/job/JobPackageTracker;->rebatchIfNeeded(J)V+]Lcom/android/server/job/JobPackageTracker$DataSet;Lcom/android/server/job/JobPackageTracker$DataSet; +HSPLcom/android/server/job/JobPackageTracker;->notePending(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; +HSPLcom/android/server/job/JobPackageTracker;->rebatchIfNeeded(J)V HPLcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda1;->test(Ljava/lang/Object;)Z HSPLcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda4;->getCategory(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/Category; HSPLcom/android/server/job/JobSchedulerService$1;->millis()J HSPLcom/android/server/job/JobSchedulerService$2;->millis()J -HSPLcom/android/server/job/JobSchedulerService$4;->onUidStateChanged(IIJI)V+]Landroid/os/Handler;Lcom/android/server/job/JobSchedulerService$JobHandler;]Landroid/os/Message;Landroid/os/Message; +HSPLcom/android/server/job/JobSchedulerService$4;->onUidStateChanged(IIJI)V HSPLcom/android/server/job/JobSchedulerService$BatteryStateTracker;->isConsideredCharging()Z -HSPLcom/android/server/job/JobSchedulerService$JobHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/job/IUserVisibleJobObserver;Landroid/app/job/IUserVisibleJobObserver$Stub$Proxy;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/DeviceIdleJobsController;Lcom/android/server/job/controllers/DeviceIdleJobsController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService$JobHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/job/IUserVisibleJobObserver;Landroid/app/job/IUserVisibleJobObserver$Stub$Proxy;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->cancel(Ljava/lang/String;I)V HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->enforceBuilderApiPermissions(IILandroid/app/job/JobInfo;)Landroid/app/job/JobInfo;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->enforceValidJobRequest(IILandroid/app/job/JobInfo;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/SystemService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->enforceValidJobRequest(IILandroid/app/job/JobInfo;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->enqueue(Ljava/lang/String;Landroid/app/job/JobInfo;Landroid/app/job/JobWorkItem;)I+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->getAllPendingJobsInNamespace(Ljava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;Lcom/android/server/job/JobSchedulerService$JobSchedulerStub; +HPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->getAllPendingJobsInNamespace(Ljava/lang/String;)Landroid/content/pm/ParceledListSlice; HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->getPendingJob(Ljava/lang/String;I)Landroid/app/job/JobInfo; -HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->schedule(Ljava/lang/String;Landroid/app/job/JobInfo;)I+]Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->scheduleAsPackage(Ljava/lang/String;Landroid/app/job/JobInfo;Ljava/lang/String;ILjava/lang/String;)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->validateJob(Landroid/app/job/JobInfo;IIILjava/lang/String;Landroid/app/job/JobWorkItem;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobWorkItem;Landroid/app/job/JobWorkItem;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;Lcom/android/server/job/JobSchedulerService$JobSchedulerStub;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->validateNamespace(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String; +HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->schedule(Ljava/lang/String;Landroid/app/job/JobInfo;)I+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->validateJob(Landroid/app/job/JobInfo;IIILjava/lang/String;Landroid/app/job/JobWorkItem;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/Context;Landroid/app/ContextImpl; +HSPLcom/android/server/job/JobSchedulerService$JobSchedulerStub;->validateNamespace(Ljava/lang/String;)Ljava/lang/String; HSPLcom/android/server/job/JobSchedulerService$LocalService;->isAppConsideredBuggy(ILjava/lang/String;ILjava/lang/String;)Z+]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; -HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController;]Lcom/android/server/job/restrictions/JobRestriction;Lcom/android/server/job/restrictions/ThermalStatusRestriction;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->accept(Ljava/lang/Object;)V+]Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor; -HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->postProcessLocked()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->postProcessLocked()V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;->reset()V+]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService$ReadyJobQueueFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService$ReadyJobQueueFunctor;->accept(Ljava/lang/Object;)V+]Lcom/android/server/job/JobSchedulerService$ReadyJobQueueFunctor;Lcom/android/server/job/JobSchedulerService$ReadyJobQueueFunctor; -HSPLcom/android/server/job/JobSchedulerService;->adjustJobBias(ILcom/android/server/job/controllers/JobStatus;)I+]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker; -HSPLcom/android/server/job/JobSchedulerService;->areComponentsInPlaceLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobSchedulerService;->areUsersStartedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HPLcom/android/server/job/JobSchedulerService$ReadyJobQueueFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/JobSchedulerService;->adjustJobBias(ILcom/android/server/job/controllers/JobStatus;)I +HSPLcom/android/server/job/JobSchedulerService;->areComponentsInPlaceLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/JobSchedulerService;->areUsersStartedLocked(Lcom/android/server/job/controllers/JobStatus;)Z HPLcom/android/server/job/JobSchedulerService;->cancelJob(ILjava/lang/String;III)Z -HPLcom/android/server/job/JobSchedulerService;->cancelJobImplLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;IILjava/lang/String;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobSchedulerService;->checkChangedJobListLocked()V+]Landroid/os/Handler;Lcom/android/server/job/JobSchedulerService$JobHandler;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor;Lcom/android/server/job/JobSchedulerService$MaybeReadyJobQueueFunctor; +HPLcom/android/server/job/JobSchedulerService;->cancelJobImplLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;IILjava/lang/String;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HSPLcom/android/server/job/JobSchedulerService;->checkChangedJobListLocked()V HSPLcom/android/server/job/JobSchedulerService;->checkIfRestricted(Lcom/android/server/job/controllers/JobStatus;)Lcom/android/server/job/restrictions/JobRestriction;+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/restrictions/JobRestriction;Lcom/android/server/job/restrictions/ThermalStatusRestriction;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobSchedulerService;->deriveWorkSource(ILjava/lang/String;)Landroid/os/WorkSource;+]Lcom/android/server/SystemService;Lcom/android/server/job/JobSchedulerService; -HSPLcom/android/server/job/JobSchedulerService;->evaluateControllerStatesLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobSchedulerService;->evaluateJobBiasLocked(Lcom/android/server/job/controllers/JobStatus;)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobSchedulerService;->getMaxJobExecutionTimeMs(Lcom/android/server/job/controllers/JobStatus;)J+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; -HSPLcom/android/server/job/JobSchedulerService;->getMinJobExecutionGuaranteeMs(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; -HSPLcom/android/server/job/JobSchedulerService;->getPendingJob(ILjava/lang/String;I)Landroid/app/job/JobInfo;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/JobSchedulerService;->deriveWorkSource(ILjava/lang/String;)Landroid/os/WorkSource; +HSPLcom/android/server/job/JobSchedulerService;->evaluateControllerStatesLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService;->evaluateJobBiasLocked(Lcom/android/server/job/controllers/JobStatus;)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/job/JobSchedulerService;->getMaxJobExecutionTimeMs(Lcom/android/server/job/controllers/JobStatus;)J+]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; +HSPLcom/android/server/job/JobSchedulerService;->getMinJobExecutionGuaranteeMs(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; +HSPLcom/android/server/job/JobSchedulerService;->getPendingJob(ILjava/lang/String;I)Landroid/app/job/JobInfo; HSPLcom/android/server/job/JobSchedulerService;->getPendingJobQueue()Lcom/android/server/job/PendingJobQueue; -HPLcom/android/server/job/JobSchedulerService;->getPendingJobsInNamespace(ILjava/lang/String;)Ljava/util/List;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService;->getRescheduleJobForFailureLocked(Lcom/android/server/job/controllers/JobStatus;II)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService;->getRescheduleJobForPeriodic(Lcom/android/server/job/controllers/JobStatus;)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock; +HPLcom/android/server/job/JobSchedulerService;->getPendingJobsInNamespace(ILjava/lang/String;)Ljava/util/List; +HSPLcom/android/server/job/JobSchedulerService;->getRescheduleJobForPeriodic(Lcom/android/server/job/controllers/JobStatus;)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock; HSPLcom/android/server/job/JobSchedulerService;->getUidBias(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/job/JobSchedulerService;->getUidProcState(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HPLcom/android/server/job/JobSchedulerService;->hasPermission(IILjava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; -HSPLcom/android/server/job/JobSchedulerService;->isBatteryCharging()Z+]Lcom/android/server/job/JobSchedulerService$BatteryStateTracker;Lcom/android/server/job/JobSchedulerService$BatteryStateTracker; -HSPLcom/android/server/job/JobSchedulerService;->isBatteryNotLow()Z+]Lcom/android/server/job/JobSchedulerService$BatteryStateTracker;Lcom/android/server/job/JobSchedulerService$BatteryStateTracker; -HSPLcom/android/server/job/JobSchedulerService;->isComponentUsable(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/JobSchedulerService;->isBatteryCharging()Z +HSPLcom/android/server/job/JobSchedulerService;->isBatteryNotLow()Z +HSPLcom/android/server/job/JobSchedulerService;->isComponentUsable(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService; HSPLcom/android/server/job/JobSchedulerService;->isCurrentlyRunningLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager; HSPLcom/android/server/job/JobSchedulerService;->isReadyToBeExecutedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HSPLcom/android/server/job/JobSchedulerService;->isReadyToBeExecutedLocked(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/job/JobSchedulerService;->lambda$new$2(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/Category;+]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/job/JobSchedulerService;->lambda$onBootPhase$4(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService;->maybeProcessBuggyJob(Lcom/android/server/job/controllers/JobStatus;I)V+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; +HSPLcom/android/server/job/JobSchedulerService;->isReadyToBeExecutedLocked(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HSPLcom/android/server/job/JobSchedulerService;->lambda$new$2(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/Category; +HSPLcom/android/server/job/JobSchedulerService;->maybeProcessBuggyJob(Lcom/android/server/job/controllers/JobStatus;I)V+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1; HSPLcom/android/server/job/JobSchedulerService;->maybeRunPendingJobsLocked()V+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HSPLcom/android/server/job/JobSchedulerService;->onControllerStateChanged(Landroid/util/ArraySet;)V+]Landroid/os/Handler;Lcom/android/server/job/JobSchedulerService$JobHandler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; -HPLcom/android/server/job/JobSchedulerService;->onJobCompletedLocked(Lcom/android/server/job/controllers/JobStatus;IIZ)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/JobSchedulerService;->reportActiveLocked()V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobSchedulerService;->resetPendingJobReasonCache(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobSchedulerService;->scheduleAsPackage(Landroid/app/job/JobInfo;Landroid/app/job/JobWorkItem;ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobWorkItem;Landroid/app/job/JobWorkItem;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/modules/expresslog/Histogram;Lcom/android/modules/expresslog/Histogram;]Lcom/android/server/job/JobPackageTracker;Lcom/android/server/job/JobPackageTracker;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/job/JobSchedulerService;->onControllerStateChanged(Landroid/util/ArraySet;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/JobSchedulerService;->onJobCompletedLocked(Lcom/android/server/job/controllers/JobStatus;IIZ)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/JobSchedulerService;->reportActiveLocked()V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue; +HSPLcom/android/server/job/JobSchedulerService;->resetPendingJobReasonCache(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/job/JobSchedulerService;->scheduleAsPackage(Landroid/app/job/JobInfo;Landroid/app/job/JobWorkItem;ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; HSPLcom/android/server/job/JobSchedulerService;->standbyBucketForPackage(Ljava/lang/String;IJ)I+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService; -HSPLcom/android/server/job/JobSchedulerService;->startTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobSchedulerService;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService;->startTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobSchedulerService;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/JobSchedulerService;->updateUidState(III)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/JobServiceContext;->applyStoppedReasonLocked(Ljava/lang/String;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/JobServiceContext$JobCallback;-><init>(Lcom/android/server/job/JobServiceContext;)V +HSPLcom/android/server/job/JobServiceContext;->applyStoppedReasonLocked(Ljava/lang/String;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HSPLcom/android/server/job/JobServiceContext;->canGetNetworkInformation(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HPLcom/android/server/job/JobServiceContext;->closeAndCleanupJobLocked(ZLjava/lang/String;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/job/JobCompletedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobNotificationCoordinator;Lcom/android/server/job/JobNotificationCoordinator;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/JobServiceContext;->doCallback(Lcom/android/server/job/JobServiceContext$JobCallback;ZLjava/lang/String;)V+]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext; -HPLcom/android/server/job/JobServiceContext;->doCallbackLocked(ZLjava/lang/String;)V+]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext; +HSPLcom/android/server/job/JobServiceContext;->closeAndCleanupJobLocked(ZLjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/job/JobCompletedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobNotificationCoordinator;Lcom/android/server/job/JobNotificationCoordinator;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/JobServiceContext;->doCallback(Lcom/android/server/job/JobServiceContext$JobCallback;ZLjava/lang/String;)V +HSPLcom/android/server/job/JobServiceContext;->doCallbackLocked(ZLjava/lang/String;)V HPLcom/android/server/job/JobServiceContext;->doDequeueWork(Lcom/android/server/job/JobServiceContext$JobCallback;I)Landroid/app/job/JobWorkItem;+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters; -HPLcom/android/server/job/JobServiceContext;->doJobFinished(Lcom/android/server/job/JobServiceContext$JobCallback;IZ)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters; -HSPLcom/android/server/job/JobServiceContext;->executeRunnableJob(Lcom/android/server/job/controllers/JobStatus;I)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/JobServiceContext;->handleFinishedLocked(ZLjava/lang/String;)V -HPLcom/android/server/job/JobServiceContext;->handleServiceBoundLocked()V+]Landroid/app/job/IJobService;Landroid/app/job/IJobService$Stub$Proxy;,Landroid/app/job/JobServiceEngine$JobInterface; -HPLcom/android/server/job/JobServiceContext;->handleStartedLocked(Z)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/JobServiceContext;->doJobFinished(Lcom/android/server/job/JobServiceContext$JobCallback;IZ)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters; +HSPLcom/android/server/job/JobServiceContext;->executeRunnableJob(Lcom/android/server/job/controllers/JobStatus;I)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/JobServiceContext;->handleFinishedLocked(ZLjava/lang/String;)V +HSPLcom/android/server/job/JobServiceContext;->handleServiceBoundLocked()V+]Landroid/app/job/IJobService;Landroid/app/job/IJobService$Stub$Proxy;,Landroid/app/job/JobServiceEngine$JobInterface; +HSPLcom/android/server/job/JobServiceContext;->handleStartedLocked(Z)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; HPLcom/android/server/job/JobServiceContext;->isWithinExecutionGuaranteeTime()Z+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/JobServiceContext;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V -HSPLcom/android/server/job/JobServiceContext;->removeOpTimeOutLocked()V+]Landroid/os/Handler;Lcom/android/server/job/JobServiceContext$JobServiceHandler; -HSPLcom/android/server/job/JobServiceContext;->scheduleOpTimeOutLocked()V+]Landroid/os/Handler;Lcom/android/server/job/JobServiceContext$JobServiceHandler;]Lcom/android/server/job/JobServiceContext;Lcom/android/server/job/JobServiceContext;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/JobStore$2$CopyConsumer;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobServiceContext;->onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V +HSPLcom/android/server/job/JobServiceContext;->removeOpTimeOutLocked()V +HSPLcom/android/server/job/JobServiceContext;->scheduleOpTimeOutLocked()V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/JobServiceContext;->verifyCallerLocked(Lcom/android/server/job/JobServiceContext$JobCallback;)Z +HPLcom/android/server/job/JobStore$2$CopyConsumer;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/job/JobStore$2$CopyConsumer;->accept(Ljava/lang/Object;)V+]Lcom/android/server/job/JobStore$2$CopyConsumer;Lcom/android/server/job/JobStore$2$CopyConsumer; HPLcom/android/server/job/JobStore$2$CopyConsumer;->prepare()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HPLcom/android/server/job/JobStore$2;->addAttributesToJobTag(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/JobStore$2;->deepCopyBundle(Landroid/os/PersistableBundle;I)Landroid/os/PersistableBundle;+]Landroid/os/PersistableBundle;Landroid/os/PersistableBundle;]Lcom/android/server/job/JobStore$2;Lcom/android/server/job/JobStore$2;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HPLcom/android/server/job/JobStore$2;->addAttributesToJobTag(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/job/JobStore$2;->deepCopyBundle(Landroid/os/PersistableBundle;I)Landroid/os/PersistableBundle;+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; HPLcom/android/server/job/JobStore$2;->run()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/io/File;Ljava/io/File;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock; -HPLcom/android/server/job/JobStore$2;->writeBundleToXml(Landroid/os/PersistableBundle;Lorg/xmlpull/v1/XmlSerializer;)V+]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; -HPLcom/android/server/job/JobStore$2;->writeConstraintsToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/JobStore$2;->writeDebugInfoToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/JobStore$2;->writeExecutionCriteriaToXml(Lorg/xmlpull/v1/XmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; -HPLcom/android/server/job/JobStore$2;->writeJobsMapImpl(Landroid/util/AtomicFile;Ljava/util/List;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Landroid/util/SystemConfigFileCommitEventLogger;Landroid/util/SystemConfigFileCommitEventLogger;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/job/JobStore$2;Lcom/android/server/job/JobStore$2;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/io/FileOutputStream;Ljava/io/FileOutputStream;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/JobStore$JobSet;->add(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobStore$JobSet;->contains(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobStore$JobSet;->countJobsForUid(I)I+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobStore$JobSet;->forEachJob(Ljava/util/function/Predicate;Ljava/util/function/Consumer;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;megamorphic_types]Ljava/util/function/Predicate;megamorphic_types -HSPLcom/android/server/job/JobStore$JobSet;->forEachJobForSourceUid(ILjava/util/function/Consumer;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;Lcom/android/server/job/JobSchedulerService$DeferredJobCounter;,Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;,Lcom/android/server/job/controllers/DeviceIdleJobsController$DeviceIdleUpdateFunctor;,Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater; -HSPLcom/android/server/job/JobStore$JobSet;->get(ILjava/lang/String;I)Lcom/android/server/job/controllers/JobStatus;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/JobStore$JobSet;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HPLcom/android/server/job/JobStore$2;->writeConstraintsToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/job/JobStore$2;->writeDebugInfoToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HPLcom/android/server/job/JobStore$2;->writeExecutionCriteriaToXml(Lorg/xmlpull/v1/XmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; +HPLcom/android/server/job/JobStore$2;->writeJobsMapImpl(Landroid/util/AtomicFile;Ljava/util/List;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Landroid/util/SystemConfigFileCommitEventLogger;Landroid/util/SystemConfigFileCommitEventLogger;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/io/FileOutputStream;Ljava/io/FileOutputStream;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/JobStore$JobSet;->add(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobStore$JobSet;->contains(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobStore$JobSet;->countJobsForUid(I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobStore$JobSet;->forEachJob(Ljava/util/function/Predicate;Ljava/util/function/Consumer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;megamorphic_types]Ljava/util/function/Predicate;megamorphic_types +HSPLcom/android/server/job/JobStore$JobSet;->forEachJobForSourceUid(ILjava/util/function/Consumer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;Lcom/android/server/job/JobSchedulerService$DeferredJobCounter;,Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;,Lcom/android/server/job/controllers/DeviceIdleJobsController$DeviceIdleUpdateFunctor;,Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater; +HSPLcom/android/server/job/JobStore$JobSet;->get(ILjava/lang/String;I)Lcom/android/server/job/controllers/JobStatus;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/JobStore$JobSet;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/JobStore$ReadJobMapFromDiskRunnable;->buildConstraintsFromXml(Landroid/app/job/JobInfo$Builder;Lcom/android/modules/utils/TypedXmlPullParser;)V HSPLcom/android/server/job/JobStore$ReadJobMapFromDiskRunnable;->restoreJobFromXml(ZLcom/android/modules/utils/TypedXmlPullParser;IJ)Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobStore;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobStore$JobSet;Lcom/android/server/job/JobStore$JobSet;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/JobStore;->countJobsForUid(I)I+]Lcom/android/server/job/JobStore$JobSet;Lcom/android/server/job/JobStore$JobSet; -HSPLcom/android/server/job/JobStore;->getJobByUidAndJobId(ILjava/lang/String;I)Lcom/android/server/job/controllers/JobStatus;+]Lcom/android/server/job/JobStore$JobSet;Lcom/android/server/job/JobStore$JobSet; -HPLcom/android/server/job/JobStore;->intArrayToString([I)Ljava/lang/String;+]Ljava/lang/Object;Ljava/util/StringJoiner;]Ljava/util/StringJoiner;Ljava/util/StringJoiner; +HSPLcom/android/server/job/JobStore;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/job/JobStore;->countJobsForUid(I)I +HSPLcom/android/server/job/JobStore;->getJobByUidAndJobId(ILjava/lang/String;I)Lcom/android/server/job/controllers/JobStatus; +HPLcom/android/server/job/JobStore;->intArrayToString([I)Ljava/lang/String; HPLcom/android/server/job/JobStore;->maybeWriteStatusToDiskAsync()V -HPLcom/android/server/job/JobStore;->remove(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobStore$JobSet;Lcom/android/server/job/JobStore$JobSet;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/JobStore;->remove(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HPLcom/android/server/job/PendingJobQueue$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I HSPLcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;->clear()V HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->addAll(Ljava/util/List;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->indexOf(Lcom/android/server/job/controllers/JobStatus;)I+]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->lambda$static$0(Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->lambda$static$0(Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->next()Lcom/android/server/job/controllers/JobStatus;+]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->peekNextOverrideState()I+]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->peekNextTimestamp()J+]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;]Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->resetIterator(J)V HPLcom/android/server/job/PendingJobQueue;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HSPLcom/android/server/job/PendingJobQueue;->addAll(Landroid/util/ArraySet;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/PendingJobQueue;->addAll(Landroid/util/ArraySet;)V+]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; HSPLcom/android/server/job/PendingJobQueue;->contains(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/PendingJobQueue;->getAppJobQueue(IZ)Lcom/android/server/job/PendingJobQueue$AppJobQueue;+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/job/PendingJobQueue;->lambda$new$0(Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;)I+]Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue; -HSPLcom/android/server/job/PendingJobQueue;->next()Lcom/android/server/job/controllers/JobStatus;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HSPLcom/android/server/job/PendingJobQueue;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HSPLcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/BackgroundJobsController;Lcom/android/server/job/controllers/BackgroundJobsController; -HSPLcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;->accept(Ljava/lang/Object;)V+]Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor; +HPLcom/android/server/job/PendingJobQueue;->lambda$new$0(Lcom/android/server/job/PendingJobQueue$AppJobQueue;Lcom/android/server/job/PendingJobQueue$AppJobQueue;)I +HSPLcom/android/server/job/PendingJobQueue;->next()Lcom/android/server/job/controllers/JobStatus;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/PendingJobQueue;->remove(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/PendingJobQueue;->size()I +HSPLcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;->accept(Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;->accept(Ljava/lang/Object;)V HSPLcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;->prepare(I)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/BackgroundJobsController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/BackgroundJobsController;Lcom/android/server/job/controllers/BackgroundJobsController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/BackgroundJobsController;->isPackageStoppedLocked(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/job/controllers/BackgroundJobsController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/BackgroundJobsController;Lcom/android/server/job/controllers/BackgroundJobsController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/BackgroundJobsController;->updateJobRestrictionsLocked(II)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor;Lcom/android/server/job/controllers/BackgroundJobsController$UpdateJobFunctor; -HSPLcom/android/server/job/controllers/BackgroundJobsController;->updateSingleJobRestrictionLocked(Lcom/android/server/job/controllers/JobStatus;JI)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/job/controllers/BackgroundJobsController;Lcom/android/server/job/controllers/BackgroundJobsController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/BatteryController;->hasTopExemptionLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/BatteryController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/BatteryController;Lcom/android/server/job/controllers/BatteryController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/BatteryController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/ComponentController;->getServiceProcessLocked(Lcom/android/server/job/controllers/JobStatus;)Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/job/controllers/ComponentController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/ComponentController;Lcom/android/server/job/controllers/ComponentController; -HSPLcom/android/server/job/controllers/ComponentController;->updateComponentEnabledStateLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/ComponentController;Lcom/android/server/job/controllers/ComponentController; +HSPLcom/android/server/job/controllers/BackgroundJobsController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/BackgroundJobsController;->isPackageStoppedLocked(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; +HSPLcom/android/server/job/controllers/BackgroundJobsController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/BackgroundJobsController;->updateJobRestrictionsLocked(II)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/BackgroundJobsController;->updateSingleJobRestrictionLocked(Lcom/android/server/job/controllers/JobStatus;JI)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl; +HSPLcom/android/server/job/controllers/BatteryController;->hasTopExemptionLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/BatteryController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/BatteryController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/ComponentController;->getServiceProcessLocked(Lcom/android/server/job/controllers/JobStatus;)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/ComponentController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/ComponentController;->updateComponentEnabledStateLocked(Lcom/android/server/job/controllers/JobStatus;)Z HSPLcom/android/server/job/controllers/ConnectivityController$CcHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HPLcom/android/server/job/controllers/ConnectivityController$UidDefaultNetworkCallback;->onBlockedStatusChanged(Landroid/net/Network;I)V -HSPLcom/android/server/job/controllers/ConnectivityController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/ConnectivityController; -HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkLocked(Lcom/android/server/job/controllers/JobStatus;)Landroid/net/Network;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkMetadata(Landroid/net/Network;)Lcom/android/server/job/controllers/ConnectivityController$CachedNetworkMetadata;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/job/controllers/ConnectivityController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkLocked(Lcom/android/server/job/controllers/JobStatus;)Landroid/net/Network;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkMetadata(Landroid/net/Network;)Lcom/android/server/job/controllers/ConnectivityController$CachedNetworkMetadata; HSPLcom/android/server/job/controllers/ConnectivityController;->getUidStats(ILjava/lang/String;Z)Lcom/android/server/job/controllers/ConnectivityController$UidStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HPLcom/android/server/job/controllers/ConnectivityController;->isCongestionDelayed(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z -HPLcom/android/server/job/controllers/ConnectivityController;->isInsane(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/ConnectivityController;->isMeteredAllowed(Lcom/android/server/job/controllers/JobStatus;Landroid/net/NetworkCapabilities;)Z+]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Landroid/net/NetworkPolicyManager;Landroid/net/NetworkPolicyManager;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/ConnectivityController;->isSatisfied(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController; -HSPLcom/android/server/job/controllers/ConnectivityController;->isStandbyExceptionRequestedLocked(I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/job/controllers/ConnectivityController;->isStrictSatisfied(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/net/NetworkCapabilities$Builder;Landroid/net/NetworkCapabilities$Builder;]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/ConnectivityController;->isStrongEnough(Lcom/android/server/job/controllers/JobStatus;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLcom/android/server/job/controllers/ConnectivityController;->maybeAdjustRegisteredCallbacksLocked()V+]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/os/Handler;Lcom/android/server/job/controllers/ConnectivityController$CcHandler;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/ConnectivityController;->maybeRevokeStandbyExceptionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/ConnectivityController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/ConnectivityController; -HPLcom/android/server/job/controllers/ConnectivityController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HPLcom/android/server/job/controllers/ConnectivityController;->isInsane(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HPLcom/android/server/job/controllers/ConnectivityController;->isMeteredAllowed(Lcom/android/server/job/controllers/JobStatus;Landroid/net/NetworkCapabilities;)Z+]Landroid/net/NetworkPolicyManager;Landroid/net/NetworkPolicyManager;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/ConnectivityController;->isSatisfied(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z +HSPLcom/android/server/job/controllers/ConnectivityController;->isStandbyExceptionRequestedLocked(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/job/controllers/ConnectivityController;->isStrictSatisfied(Lcom/android/server/job/controllers/JobStatus;Landroid/net/Network;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest; +HPLcom/android/server/job/controllers/ConnectivityController;->isStrongEnough(Lcom/android/server/job/controllers/JobStatus;Landroid/net/NetworkCapabilities;Lcom/android/server/job/JobSchedulerService$Constants;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; +HSPLcom/android/server/job/controllers/ConnectivityController;->maybeAdjustRegisteredCallbacksLocked()V+]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/ConnectivityController;->maybeRevokeStandbyExceptionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/controllers/ConnectivityController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/job/controllers/ConnectivityController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/controllers/ConnectivityController;->prepareForExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V HSPLcom/android/server/job/controllers/ConnectivityController;->updateConstraintsSatisfied(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/ConnectivityController;->updateConstraintsSatisfied(Lcom/android/server/job/controllers/JobStatus;JLandroid/net/Network;Lcom/android/server/job/controllers/ConnectivityController$CachedNetworkMetadata;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/ConnectivityController;->updateTrackedJobsLocked(ILandroid/net/Network;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController; -HPLcom/android/server/job/controllers/ConnectivityController;->updateTrackedJobsLocked(Landroid/util/ArraySet;Landroid/net/Network;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/controllers/ConnectivityController;Lcom/android/server/job/controllers/ConnectivityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Object;Landroid/net/Network;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/ConnectivityController;->updateConstraintsSatisfied(Lcom/android/server/job/controllers/JobStatus;JLandroid/net/Network;Lcom/android/server/job/controllers/ConnectivityController$CachedNetworkMetadata;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService; +HPLcom/android/server/job/controllers/ConnectivityController;->updateTrackedJobsLocked(ILandroid/net/Network;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService; +HPLcom/android/server/job/controllers/ConnectivityController;->updateTrackedJobsLocked(Landroid/util/ArraySet;Landroid/net/Network;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Object;Landroid/net/Network;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HPLcom/android/server/job/controllers/ContentObserverController$JobInstance;-><init>(Lcom/android/server/job/controllers/ContentObserverController;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/ContentObserverController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/ContentObserverController$JobInstance;Lcom/android/server/job/controllers/ContentObserverController$JobInstance;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HPLcom/android/server/job/controllers/ContentObserverController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/ContentObserverController$JobInstance;Lcom/android/server/job/controllers/ContentObserverController$JobInstance;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/DeviceIdleJobsController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/PowerManager;Landroid/os/PowerManager;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/DeviceIdleJobsController;Lcom/android/server/job/controllers/DeviceIdleJobsController;]Ljava/lang/Object;Ljava/lang/String;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->isWhitelistedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/DeviceIdleJobsController;Lcom/android/server/job/controllers/DeviceIdleJobsController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/DeviceIdleJobsController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->setUidActiveLocked(IZ)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/DeviceIdleJobsController$DeviceIdleUpdateFunctor;Lcom/android/server/job/controllers/DeviceIdleJobsController$DeviceIdleUpdateFunctor; -HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->updateTaskStateLocked(Lcom/android/server/job/controllers/JobStatus;J)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/controllers/DeviceIdleJobsController;Lcom/android/server/job/controllers/DeviceIdleJobsController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;->scheduleDropNumConstraintsAlarm(Lcom/android/server/job/controllers/JobStatus;J)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/os/Handler;Lcom/android/server/job/controllers/FlexibilityController$FcHandler;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/job/controllers/ContentObserverController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; +HSPLcom/android/server/job/controllers/ContentObserverController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/DeviceIdleJobsController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->isWhitelistedLocked(Lcom/android/server/job/controllers/JobStatus;)Z +HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->setUidActiveLocked(IZ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->updateTaskStateLocked(Lcom/android/server/job/controllers/JobStatus;J)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;->scheduleDropNumConstraintsAlarm(Lcom/android/server/job/controllers/JobStatus;J)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue; HSPLcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;->remove(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;->remove(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;->addScore(IJ)V+]Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker; -HPLcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;->getScore(J)I -HSPLcom/android/server/job/controllers/FlexibilityController;->getLifeCycleBeginningElapsedLocked(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController;]Ljava/lang/Long;Ljava/lang/Long; -HSPLcom/android/server/job/controllers/FlexibilityController;->getLifeCycleEndElapsedLocked(Lcom/android/server/job/controllers/JobStatus;JJ)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController; -HSPLcom/android/server/job/controllers/FlexibilityController;->getNextConstraintDropTimeElapsedLocked(Lcom/android/server/job/controllers/JobStatus;JJ)J+]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;->getScore(J)I +HSPLcom/android/server/job/controllers/FlexibilityController;->getLifeCycleBeginningElapsedLocked(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController; +HSPLcom/android/server/job/controllers/FlexibilityController;->getLifeCycleEndElapsedLocked(Lcom/android/server/job/controllers/JobStatus;JJ)J+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController; +HSPLcom/android/server/job/controllers/FlexibilityController;->getNextConstraintDropTimeElapsedLocked(Lcom/android/server/job/controllers/JobStatus;JJ)J HSPLcom/android/server/job/controllers/FlexibilityController;->getPercentsToDropConstraints(I)[I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/job/controllers/FlexibilityController;->getRelevantAppliedConstraintsLocked(Lcom/android/server/job/controllers/JobStatus;)I HSPLcom/android/server/job/controllers/FlexibilityController;->getScoreLocked(ILjava/lang/String;J)I+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker; HSPLcom/android/server/job/controllers/FlexibilityController;->isFlexibilitySatisfiedLocked(Lcom/android/server/job/controllers/JobStatus;)Z -HSPLcom/android/server/job/controllers/FlexibilityController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/FlexibilityController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue; -HSPLcom/android/server/job/controllers/FlexibilityController;->onUidBiasChangedLocked(III)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/FlexibilityController;Lcom/android/server/job/controllers/FlexibilityController;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/FlexibilityController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/FlexibilityController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityTracker;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue; +HSPLcom/android/server/job/controllers/FlexibilityController;->onUidBiasChangedLocked(III)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HSPLcom/android/server/job/controllers/FlexibilityController;->prepareForExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;Lcom/android/server/job/controllers/FlexibilityController$JobScoreTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/IdleController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/idle/IdlenessTracker;Lcom/android/server/job/controllers/idle/DeviceIdlenessTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/IdleController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;-><init>(Landroid/app/job/JobInfo;ILjava/lang/String;IILjava/lang/String;Ljava/lang/String;IIJJJJJII)V+]Landroid/app/job/JobInfo$Builder;Landroid/app/job/JobInfo$Builder;]Landroid/app/job/JobInfo$TriggerContentUri;Landroid/app/job/JobInfo$TriggerContentUri;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/net/NetworkRequest$Builder;Landroid/net/NetworkRequest$Builder;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/job/controllers/JobStatus;-><init>(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/JobStatus;-><init>(Lcom/android/server/job/controllers/JobStatus;JJIIJJJ)V -HSPLcom/android/server/job/controllers/JobStatus;->addDynamicConstraints(I)V+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->canRunInBatterySaver()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->canRunInDoze()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/IdleController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/idle/IdlenessTracker;Lcom/android/server/job/controllers/idle/DeviceIdlenessTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/IdleController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/JobStatus;-><init>(Landroid/app/job/JobInfo;ILjava/lang/String;IILjava/lang/String;Ljava/lang/String;IIJJJJJII)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/net/NetworkRequest$Builder;Landroid/net/NetworkRequest$Builder;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest; +HPLcom/android/server/job/controllers/JobStatus;-><init>(Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/JobStatus;-><init>(Lcom/android/server/job/controllers/JobStatus;JJIIJJJ)V +HSPLcom/android/server/job/controllers/JobStatus;->addDynamicConstraints(I)V +HPLcom/android/server/job/controllers/JobStatus;->applyBasicPiiFilters(Ljava/lang/String;)Ljava/lang/String; +HSPLcom/android/server/job/controllers/JobStatus;->canRunInBatterySaver()Z +HSPLcom/android/server/job/controllers/JobStatus;->canRunInDoze()Z HSPLcom/android/server/job/controllers/JobStatus;->clearTrackingController(I)Z -HSPLcom/android/server/job/controllers/JobStatus;->createFromJobInfo(Landroid/app/job/JobInfo;ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HPLcom/android/server/job/controllers/JobStatus;->computeSystemTraceTag()Ljava/lang/String; +HPLcom/android/server/job/controllers/JobStatus;->computeSystemTraceTagInner()Ljava/lang/String; +HSPLcom/android/server/job/controllers/JobStatus;->createFromJobInfo(Landroid/app/job/JobInfo;ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HPLcom/android/server/job/controllers/JobStatus;->dequeueWorkLocked()Landroid/app/job/JobWorkItem;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/job/controllers/JobStatus;->enqueueWorkLocked(Landroid/app/job/JobWorkItem;)V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/JobStatus;->generateNamespaceHash(Ljava/lang/String;)Ljava/lang/String;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate; +HSPLcom/android/server/job/controllers/JobStatus;->generateNamespaceHash(Ljava/lang/String;)Ljava/lang/String;+]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate; HSPLcom/android/server/job/controllers/JobStatus;->getAppTraceTag()Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HSPLcom/android/server/job/controllers/JobStatus;->getBias()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getEarliestRunTime()J -HSPLcom/android/server/job/controllers/JobStatus;->getEffectivePriority()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->getEffectiveStandbyBucket()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->getFilteredDebugTags()[Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/job/controllers/JobStatus;->getEffectivePriority()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HSPLcom/android/server/job/controllers/JobStatus;->getEffectiveStandbyBucket()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService; +HSPLcom/android/server/job/controllers/JobStatus;->getFilteredDebugTags()[Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getFilteredTraceTag()Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getFlags()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HSPLcom/android/server/job/controllers/JobStatus;->getJob()Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getJobId()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getLatestRunTimeElapsed()J HSPLcom/android/server/job/controllers/JobStatus;->getServiceComponent()Landroid/content/ComponentName;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; HSPLcom/android/server/job/controllers/JobStatus;->getSourcePackageName()Ljava/lang/String; HSPLcom/android/server/job/controllers/JobStatus;->getSourceUid()I -HSPLcom/android/server/job/controllers/JobStatus;->getSourceUserId()I -HSPLcom/android/server/job/controllers/JobStatus;->getTimeoutBlamePackageName()Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->getTimeoutBlameUserId()I+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/JobStatus;->getTimeoutBlamePackageName()Ljava/lang/String; +HSPLcom/android/server/job/controllers/JobStatus;->getTimeoutBlameUserId()I HSPLcom/android/server/job/controllers/JobStatus;->getUid()I HSPLcom/android/server/job/controllers/JobStatus;->getUserId()I -HSPLcom/android/server/job/controllers/JobStatus;->getWakelockTag()Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/job/controllers/JobStatus;->getWakelockTag()Ljava/lang/String; HSPLcom/android/server/job/controllers/JobStatus;->getWorkCount()I+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/JobStatus;->hasBatteryNotLowConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->hasChargingConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/JobStatus;->hasBatteryNotLowConstraint()Z +HSPLcom/android/server/job/controllers/JobStatus;->hasChargingConstraint()Z HSPLcom/android/server/job/controllers/JobStatus;->hasConstraint(I)Z HSPLcom/android/server/job/controllers/JobStatus;->hasContentTriggerConstraint()Z -HSPLcom/android/server/job/controllers/JobStatus;->hasDeadlineConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->hasIdleConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->hasStorageNotLowConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->hasTimingDelayConstraint()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->isConstraintSatisfied(I)Z +HSPLcom/android/server/job/controllers/JobStatus;->hasDeadlineConstraint()Z +HSPLcom/android/server/job/controllers/JobStatus;->hasIdleConstraint()Z +HSPLcom/android/server/job/controllers/JobStatus;->hasStorageNotLowConstraint()Z +HSPLcom/android/server/job/controllers/JobStatus;->hasTimingDelayConstraint()Z HSPLcom/android/server/job/controllers/JobStatus;->isConstraintsSatisfied(I)Z HSPLcom/android/server/job/controllers/JobStatus;->isPersisted()Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HSPLcom/android/server/job/controllers/JobStatus;->isReady(I)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->isRequestedExpeditedJob()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->isUserVisibleJob()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->maybeAddForegroundExemption(Ljava/util/function/Predicate;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/function/Predicate;Lcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda1; +HSPLcom/android/server/job/controllers/JobStatus;->isReady(I)Z +HSPLcom/android/server/job/controllers/JobStatus;->isRequestedExpeditedJob()Z +HSPLcom/android/server/job/controllers/JobStatus;->isUserVisibleJob()Z +HSPLcom/android/server/job/controllers/JobStatus;->maybeAddForegroundExemption(Ljava/util/function/Predicate;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/util/function/Predicate;Lcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda1; HSPLcom/android/server/job/controllers/JobStatus;->prepareLocked()V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HSPLcom/android/server/job/controllers/JobStatus;->readinessStatusWithConstraint(IZ)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/JobStatus;->readinessStatusWithConstraint(IZ)Z HSPLcom/android/server/job/controllers/JobStatus;->setBackgroundNotRestrictedConstraintSatisfied(JZZ)Z -HSPLcom/android/server/job/controllers/JobStatus;->setConstraintSatisfied(IJZ)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; +HSPLcom/android/server/job/controllers/JobStatus;->setConstraintSatisfied(IJZ)Z HSPLcom/android/server/job/controllers/JobStatus;->setDeviceNotDozingConstraintSatisfied(JZZ)Z -HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsExpeditedJob()Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsUserInitiatedJob()Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/JobStatus;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsExpeditedJob()Z +HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsUserInitiatedJob()Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; +HSPLcom/android/server/job/controllers/JobStatus;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/job/controllers/JobStatus;->toShortString()Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HPLcom/android/server/job/controllers/JobStatus;->unprepareLocked()V+]Ljava/lang/Throwable;Ljava/lang/Throwable; +HSPLcom/android/server/job/controllers/JobStatus;->unprepareLocked()V HSPLcom/android/server/job/controllers/JobStatus;->updateMediaBackupExemptionStatus()Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo; -HSPLcom/android/server/job/controllers/JobStatus;->updateNetworkBytesLocked()V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobWorkItem;Landroid/app/job/JobWorkItem;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/PrefetchController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/PrefetchController;Lcom/android/server/job/controllers/PrefetchController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock; -HPLcom/android/server/job/controllers/PrefetchController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/PrefetchController$ThresholdAlarmListener; -HSPLcom/android/server/job/controllers/QuotaController$QcHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/usage/UsageEvents$Event;Landroid/app/usage/UsageEvents$Event;]Landroid/os/Handler;Lcom/android/server/job/controllers/QuotaController$QcHandler;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Lcom/android/server/job/controllers/QuotaController$TopAppTimer;Lcom/android/server/job/controllers/QuotaController$TopAppTimer;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;->onAppAdded(I)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/JobStatus;->updateNetworkBytesLocked()V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/PrefetchController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock; +HSPLcom/android/server/job/controllers/PrefetchController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/PrefetchController$ThresholdAlarmListener; +HSPLcom/android/server/job/controllers/QuotaController$QcHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;->onAppAdded(I)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HPLcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;->onAppRemoved(I)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/QuotaController$Timer;->cancelCutoff()V HPLcom/android/server/job/controllers/QuotaController$Timer;->emitSessionLocked(J)V HPLcom/android/server/job/controllers/QuotaController$Timer;->getCurrentDuration(J)J HPLcom/android/server/job/controllers/QuotaController$Timer;->isActive()Z HPLcom/android/server/job/controllers/QuotaController$Timer;->scheduleCutoff()V HSPLcom/android/server/job/controllers/QuotaController$Timer;->shouldTrackLocked()Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HSPLcom/android/server/job/controllers/QuotaController$Timer;->startTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/QuotaController$Timer;->stopTrackingJob(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/QuotaController$TimingSession;-><init>(JJI)V -HSPLcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; -HSPLcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;->postProcess()V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/job/controllers/QuotaController$Timer;->stopTrackingJob(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;->accept(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; +HSPLcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;->postProcess()V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; HSPLcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;->prepare()V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/QuotaController;->calculateTimeUntilQuotaConsumedLocked(Ljava/util/List;JJZ)J+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/QuotaController;->getEJDebitsLocked(ILjava/lang/String;)Lcom/android/server/job/controllers/QuotaController$ShrinkableDebits;+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/QuotaController;->getExecutionStatsLocked(ILjava/lang/String;IZ)Lcom/android/server/job/controllers/QuotaController$ExecutionStats;+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/QuotaController;->getMaxJobExecutionTimeMsLocked(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController; -HSPLcom/android/server/job/controllers/QuotaController;->getRemainingEJExecutionTimeLocked(ILjava/lang/String;)J+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController$ShrinkableDebits;Lcom/android/server/job/controllers/QuotaController$ShrinkableDebits;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Lcom/android/server/job/controllers/QuotaController$TopAppTimer;Lcom/android/server/job/controllers/QuotaController$TopAppTimer;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/QuotaController;->getExecutionStatsLocked(ILjava/lang/String;IZ)Lcom/android/server/job/controllers/QuotaController$ExecutionStats;+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->getMaxJobExecutionTimeMsLocked(Lcom/android/server/job/controllers/JobStatus;)J+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/QuotaController;->getRemainingEJExecutionTimeLocked(ILjava/lang/String;)J+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/job/controllers/QuotaController;->getRemainingExecutionTimeLocked(Lcom/android/server/job/controllers/QuotaController$ExecutionStats;)J -HPLcom/android/server/job/controllers/QuotaController;->getTimeUntilQuotaConsumedLocked(ILjava/lang/String;)J+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/job/controllers/QuotaController;->getTimeUntilQuotaConsumedLocked(ILjava/lang/String;)J+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/job/controllers/QuotaController;->incrementJobCountLocked(ILjava/lang/String;I)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HPLcom/android/server/job/controllers/QuotaController;->incrementTimingSessionCountLocked(ILjava/lang/String;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; HPLcom/android/server/job/controllers/QuotaController;->invalidateAllExecutionStatsLocked(ILjava/lang/String;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->isQuotaFreeLocked(I)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; HSPLcom/android/server/job/controllers/QuotaController;->isUidInForeground(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/job/controllers/QuotaController;->isWithinQuotaLocked(ILjava/lang/String;I)Z+]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController; -HSPLcom/android/server/job/controllers/QuotaController;->isWithinQuotaLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController; -HSPLcom/android/server/job/controllers/QuotaController;->maybeScheduleStartAlarmLocked(ILjava/lang/String;I)V+]Landroid/os/Handler;Lcom/android/server/job/controllers/QuotaController$QcHandler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/QuotaController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/QuotaController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; -HSPLcom/android/server/job/controllers/QuotaController;->maybeUpdateConstraintForPkgLocked(JILjava/lang/String;)Landroid/util/ArraySet;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController;Lcom/android/server/job/controllers/QuotaController;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; -HSPLcom/android/server/job/controllers/QuotaController;->maybeUpdateConstraintForUidLocked(I)Landroid/util/ArraySet;+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/JobStore;Lcom/android/server/job/JobStore;]Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater; +HSPLcom/android/server/job/controllers/QuotaController;->isUnderJobCountQuotaLocked(Lcom/android/server/job/controllers/QuotaController$ExecutionStats;)Z+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->isUnderSessionCountQuotaLocked(Lcom/android/server/job/controllers/QuotaController$ExecutionStats;)Z+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->isWithinQuotaLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/QuotaController;->maybeScheduleStartAlarmLocked(ILjava/lang/String;I)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/QuotaController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; +HSPLcom/android/server/job/controllers/QuotaController;->maybeUpdateConstraintForPkgLocked(JILjava/lang/String;)Landroid/util/ArraySet;+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; +HSPLcom/android/server/job/controllers/QuotaController;->maybeUpdateConstraintForUidLocked(I)Landroid/util/ArraySet;+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater;Lcom/android/server/job/controllers/QuotaController$UidConstraintUpdater; HSPLcom/android/server/job/controllers/QuotaController;->prepareForExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HPLcom/android/server/job/controllers/QuotaController;->saveTimingSession(ILjava/lang/String;Lcom/android/server/job/controllers/QuotaController$TimingSession;ZJ)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/QuotaController;->setConstraintSatisfied(Lcom/android/server/job/controllers/JobStatus;JZZ)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/QuotaController;->unprepareFromExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer; -HSPLcom/android/server/job/controllers/QuotaController;->updateExecutionStatsLocked(ILjava/lang/String;Lcom/android/server/job/controllers/QuotaController$ExecutionStats;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController$TimedEvent;Lcom/android/server/job/controllers/QuotaController$TimingSession;]Lcom/android/server/job/controllers/QuotaController$Timer;Lcom/android/server/job/controllers/QuotaController$Timer;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/job/controllers/QuotaController;->updateStandbyBucket(ILjava/lang/String;I)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HSPLcom/android/server/job/controllers/StateController;->wouldBeReadyWithConstraintLocked(Lcom/android/server/job/controllers/JobStatus;I)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/StorageController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StorageController$StorageTracker;Lcom/android/server/job/controllers/StorageController$StorageTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; -HPLcom/android/server/job/controllers/StorageController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HSPLcom/android/server/job/controllers/TimeController;->canStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus; -HPLcom/android/server/job/controllers/TimeController;->checkExpiredDeadlinesAndResetAlarm()V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/TimeController;]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Ljava/util/PriorityQueue$Itr;]Ljava/util/List;Ljava/util/LinkedList;]Ljava/util/ListIterator;Ljava/util/LinkedList$ListItr;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HPLcom/android/server/job/controllers/TimeController;->checkExpiredDelaysAndResetAlarm()V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/TimeController;]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Ljava/util/LinkedList$ListItr;,Ljava/util/PriorityQueue$Itr;]Ljava/util/List;Ljava/util/LinkedList;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/controllers/QuotaController;->setConstraintSatisfied(Lcom/android/server/job/controllers/JobStatus;JZZ)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/QuotaController;->unprepareFromExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; +HSPLcom/android/server/job/controllers/QuotaController;->updateExecutionStatsLocked(ILjava/lang/String;Lcom/android/server/job/controllers/QuotaController$ExecutionStats;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/QuotaController$TimedEvent;Lcom/android/server/job/controllers/QuotaController$TimingSession;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/job/controllers/StateController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/StateController;->wouldBeReadyWithConstraintLocked(Lcom/android/server/job/controllers/JobStatus;I)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; +HSPLcom/android/server/job/controllers/StorageController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2; +HSPLcom/android/server/job/controllers/StorageController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V +HSPLcom/android/server/job/controllers/TimeController$1;->compare(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)I +HSPLcom/android/server/job/controllers/TimeController$1;->compare(Ljava/lang/Object;Ljava/lang/Object;)I+]Lcom/android/server/job/controllers/TimeController$1;Lcom/android/server/job/controllers/TimeController$1; +HSPLcom/android/server/job/controllers/TimeController;->canStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)Z +HSPLcom/android/server/job/controllers/TimeController;->checkExpiredDeadlinesAndResetAlarm()V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Ljava/util/PriorityQueue$Itr;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/controllers/TimeController;->checkExpiredDelaysAndResetAlarm()V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Ljava/util/PriorityQueue$Itr;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; HSPLcom/android/server/job/controllers/TimeController;->evaluateDeadlineConstraint(Lcom/android/server/job/controllers/JobStatus;J)Z -HSPLcom/android/server/job/controllers/TimeController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/TimeController;]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/LinkedList;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/controllers/TimeController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; HSPLcom/android/server/job/controllers/TimeController;->evaluateTimingDelayConstraint(Lcom/android/server/job/controllers/JobStatus;J)Z -HSPLcom/android/server/job/controllers/TimeController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/StateController;Lcom/android/server/job/controllers/TimeController;]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/LinkedList;]Ljava/util/ListIterator;Ljava/util/LinkedList$ListItr;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HSPLcom/android/server/job/controllers/TimeController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController;]Ljava/util/List;Ljava/util/LinkedList;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; -HSPLcom/android/server/job/controllers/TimeController;->setDelayExpiredAlarmLocked(JLandroid/os/WorkSource;)V+]Lcom/android/server/job/controllers/TimeController;Lcom/android/server/job/controllers/TimeController; +HSPLcom/android/server/job/controllers/TimeController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/controllers/TimeController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/PriorityQueue;Ljava/util/PriorityQueue; +HSPLcom/android/server/job/controllers/TimeController;->setDelayExpiredAlarmLocked(JLandroid/os/WorkSource;)V +HSPLcom/android/server/job/restrictions/ThermalStatusRestriction;->isJobRestricted(Lcom/android/server/job/controllers/JobStatus;I)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService; HSPLcom/android/server/lights/LightsService$LightImpl;->setLightLocked(IIIII)V -HSPLcom/android/server/location/LocationManagerService;->getLocationProviderManager(Ljava/lang/String;)Lcom/android/server/location/provider/LocationProviderManager;+]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; HSPLcom/android/server/location/LocationManagerService;->isLocationEnabledForUser(I)Z+]Lcom/android/server/location/injector/Injector;Lcom/android/server/location/LocationManagerService$SystemInjector;]Lcom/android/server/location/injector/SettingsHelper;Lcom/android/server/location/injector/SystemSettingsHelper; -HSPLcom/android/server/location/contexthub/ConcurrentLinkedEvictingDeque;->add(Ljava/lang/Object;)Z+]Ljava/util/concurrent/ConcurrentLinkedDeque;Lcom/android/server/location/contexthub/ConcurrentLinkedEvictingDeque; -HPLcom/android/server/location/contexthub/ContextHubClientBroker;->doSendMessageToNanoApp(Landroid/hardware/location/NanoAppMessage;Landroid/hardware/location/IContextHubTransactionCallback;)I+]Landroid/hardware/location/ContextHubInfo;Landroid/hardware/location/ContextHubInfo;]Lcom/android/server/location/contexthub/ContextHubEventLogger;Lcom/android/server/location/contexthub/ContextHubEventLogger;]Lcom/android/server/location/contexthub/IContextHubWrapper;Lcom/android/server/location/contexthub/IContextHubWrapper$ContextHubWrapperAidl;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/location/contexthub/ContextHubClientBroker;->sendMessageToClient(Landroid/hardware/location/NanoAppMessage;Ljava/util/List;Ljava/util/List;)B+]Landroid/hardware/location/NanoAppMessage;Landroid/hardware/location/NanoAppMessage;]Lcom/android/server/location/contexthub/ContextHubClientBroker;Lcom/android/server/location/contexthub/ContextHubClientBroker;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/location/contexthub/ContextHubServiceTransaction;->toString()Ljava/lang/String; -HPLcom/android/server/location/contexthub/ContextHubServiceUtil;->createAidlContextHubMessage(SLandroid/hardware/location/NanoAppMessage;)Landroid/hardware/contexthub/ContextHubMessage; -HSPLcom/android/server/location/contexthub/ContextHubServiceUtil;->createNanoAppStateList([Landroid/hardware/contexthub/NanoappInfo;)Ljava/util/List;+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/location/contexthub/ContextHubTransactionManager;->addTransaction(Lcom/android/server/location/contexthub/ContextHubServiceTransaction;)V+]Lcom/android/server/location/contexthub/ConcurrentLinkedEvictingDeque;Lcom/android/server/location/contexthub/ConcurrentLinkedEvictingDeque;]Lcom/android/server/location/contexthub/ContextHubServiceTransaction;Lcom/android/server/location/contexthub/ContextHubTransactionManager$6;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; -HSPLcom/android/server/location/contexthub/ContextHubTransactionManager;->startNextTransaction()V+]Lcom/android/server/location/contexthub/ContextHubServiceTransaction;Lcom/android/server/location/contexthub/ContextHubTransactionManager$6;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/concurrent/ScheduledThreadPoolExecutor;Ljava/util/concurrent/ScheduledThreadPoolExecutor; -HSPLcom/android/server/location/contexthub/NanoAppStateManager;->getNanoAppHandle(IJ)I+]Landroid/hardware/location/NanoAppInstanceInfo;Landroid/hardware/location/NanoAppInstanceInfo;]Ljava/util/Collection;Ljava/util/HashMap$Values;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/HashMap$ValueIterator; -HSPLcom/android/server/location/contexthub/NanoAppStateManager;->updateCache(ILjava/util/List;)V+]Landroid/hardware/location/NanoAppInstanceInfo;Landroid/hardware/location/NanoAppInstanceInfo;]Landroid/hardware/location/NanoAppState;Landroid/hardware/location/NanoAppState;]Lcom/android/server/location/contexthub/NanoAppStateManager;Lcom/android/server/location/contexthub/NanoAppStateManager;]Ljava/util/Collection;Ljava/util/HashMap$Values;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;,Ljava/util/HashMap$ValueIterator;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/location/eventlog/LocalEventLog;->addLog(JLjava/lang/Object;)V+]Lcom/android/server/location/eventlog/LocalEventLog;Lcom/android/server/location/eventlog/LocationEventLog$LocationsEventLog;,Lcom/android/server/location/eventlog/LocationEventLog; -HSPLcom/android/server/location/eventlog/LocalEventLog;->addLogEventInternal(ZILjava/lang/Object;)V+]Lcom/android/server/location/eventlog/LocalEventLog;Lcom/android/server/location/eventlog/LocationEventLog$LocationsEventLog;,Lcom/android/server/location/eventlog/LocationEventLog; -HSPLcom/android/server/location/injector/AppForegroundHelper;->notifyAppForeground(IZ)V+]Lcom/android/server/location/injector/AppForegroundHelper$AppForegroundListener;Lcom/android/server/location/gnss/GnssListenerMultiplexer$$ExternalSyntheticLambda4;,Lcom/android/server/location/provider/LocationProviderManager$$ExternalSyntheticLambda6;,Lcom/android/server/location/provider/LocationProviderManager$$ExternalSyntheticLambda7;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList; -HPLcom/android/server/location/injector/SystemAppOpsHelper;->noteOpNoThrow(ILandroid/location/util/identity/CallerIdentity;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/location/util/identity/CallerIdentity;Landroid/location/util/identity/CallerIdentity; -HSPLcom/android/server/location/injector/SystemSettingsHelper$IntegerSecureSetting;->getValueForUser(II)I+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;->acquire()Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard; -HSPLcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;->close()V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;Lcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;]Lcom/android/server/location/listeners/ListenerMultiplexer;Lcom/android/server/location/gnss/GnssStatusProvider;,Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager;]Ljava/util/Map$Entry;Ljava/util/AbstractMap$SimpleImmutableEntry; -HSPLcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;->close()V+]Lcom/android/server/location/listeners/ListenerMultiplexer;megamorphic_types -HPLcom/android/server/location/listeners/ListenerMultiplexer;->deliverToListeners(Ljava/util/function/Function;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;]Lcom/android/server/location/listeners/ListenerRegistration;Lcom/android/server/location/gnss/GnssListenerMultiplexer$GnssListenerRegistration;,Lcom/android/server/location/gnss/GnssMeasurementsProvider$GnssMeasurementListenerRegistration;,Lcom/android/server/location/provider/LocationProviderManager$LocationListenerRegistration;,Lcom/android/server/location/provider/LocationProviderManager$LocationPendingIntentRegistration;]Ljava/util/function/Function;Lcom/android/server/location/gnss/GnssMeasurementsProvider$$ExternalSyntheticLambda0;,Lcom/android/server/location/gnss/GnssNmeaProvider$1;,Lcom/android/server/location/gnss/GnssStatusProvider$$ExternalSyntheticLambda1;,Lcom/android/server/location/provider/LocationProviderManager$$ExternalSyntheticLambda12;,Lcom/android/server/location/provider/LocationProviderManager$$ExternalSyntheticLambda13; -HSPLcom/android/server/location/listeners/ListenerMultiplexer;->updateRegistrations(Ljava/util/function/Predicate;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;]Lcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;Lcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;]Lcom/android/server/location/listeners/ListenerMultiplexer;Lcom/android/server/location/gnss/GnssStatusProvider;,Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager;]Ljava/util/function/Predicate;megamorphic_types -HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration$1;->test(Landroid/location/Location;)Z+]Landroid/location/Location;Landroid/location/Location;]Landroid/location/LocationRequest;Landroid/location/LocationRequest;]Lcom/android/server/location/provider/LocationProviderManager$Registration;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerRegistration;,Lcom/android/server/location/provider/LocationProviderManager$LocationPendingIntentRegistration; -HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration$2;->operate(Lcom/android/server/location/provider/LocationProviderManager$LocationTransport;)V+]Landroid/location/LocationResult;Landroid/location/LocationResult;]Landroid/location/util/identity/CallerIdentity;Landroid/location/util/identity/CallerIdentity;]Lcom/android/server/location/eventlog/LocationEventLog;Lcom/android/server/location/eventlog/LocationEventLog;]Lcom/android/server/location/provider/LocationProviderManager$LocationTransport;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerTransport;,Lcom/android/server/location/provider/LocationProviderManager$LocationPendingIntentTransport;]Lcom/android/server/location/provider/LocationProviderManager$Registration;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerRegistration;,Lcom/android/server/location/provider/LocationProviderManager$LocationPendingIntentRegistration; -HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration;->acceptLocationChange(Landroid/location/LocationResult;)Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;+]Landroid/location/LocationRequest;Landroid/location/LocationRequest;]Landroid/location/LocationResult;Landroid/location/LocationResult;]Lcom/android/server/location/injector/AppOpsHelper;Lcom/android/server/location/injector/SystemAppOpsHelper;]Lcom/android/server/location/provider/LocationProviderManager$Registration;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerRegistration;,Lcom/android/server/location/provider/LocationProviderManager$LocationPendingIntentRegistration;]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager; -HSPLcom/android/server/location/provider/LocationProviderManager;->isEnabled(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;->close()V+]Ljava/util/Map$Entry;Ljava/util/AbstractMap$SimpleImmutableEntry; +HSPLcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;->close()V +HSPLcom/android/server/location/listeners/ListenerMultiplexer;->updateRegistrations(Ljava/util/function/Predicate;)V+]Ljava/util/function/Predicate;megamorphic_types +HSPLcom/android/server/location/provider/LocationProviderManager$Registration;->onForegroundChanged(IZ)Z+]Lcom/android/server/location/eventlog/LocationEventLog;Lcom/android/server/location/eventlog/LocationEventLog;]Lcom/android/server/location/injector/LocationPowerSaveModeHelper;Lcom/android/server/location/injector/SystemLocationPowerSaveModeHelper; HSPLcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;->equals(Ljava/lang/Object;)Z -HSPLcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;->hashCode()I -HSPLcom/android/server/locksettings/LockSettingsStorage$Cache;->contains(ILjava/lang/String;I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;Lcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey; -HSPLcom/android/server/locksettings/LockSettingsStorage$Cache;->peek(ILjava/lang/String;I)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;Lcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey; -HSPLcom/android/server/locksettings/LockSettingsStorage$Cache;->peekKeyValue(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String; -HSPLcom/android/server/locksettings/LockSettingsStorage;->readKeyValue(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;+]Landroid/database/Cursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteDatabase;]Landroid/database/sqlite/SQLiteOpenHelper;Lcom/android/server/locksettings/LockSettingsStorage$DatabaseHelper;]Lcom/android/server/locksettings/LockSettingsStorage$Cache;Lcom/android/server/locksettings/LockSettingsStorage$Cache; -HPLcom/android/server/media/MediaRouter2ServiceImpl$UserHandler;->maybeUpdateDiscoveryPreferenceForUid(I)V+]Landroid/os/Handler;Lcom/android/server/media/MediaRouter2ServiceImpl$UserHandler;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/stream/Stream;Ljava/util/stream/ReferencePipeline$Head; +HSPLcom/android/server/locksettings/LockSettingsStorage;->readKeyValue(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;+]Landroid/database/Cursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/sqlite/SQLiteOpenHelper;Lcom/android/server/locksettings/LockSettingsStorage$DatabaseHelper;]Lcom/android/server/locksettings/LockSettingsStorage$Cache;Lcom/android/server/locksettings/LockSettingsStorage$Cache; +HPLcom/android/server/media/MediaRouter2ServiceImpl$UserHandler;->maybeUpdateDiscoveryPreferenceForUid(I)V+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/stream/Stream;Ljava/util/stream/ReferencePipeline$Head; HSPLcom/android/server/net/NetworkManagementService$Dependencies;->getCallingUid()I HSPLcom/android/server/net/NetworkManagementService$LocalService;->isNetworkRestrictedForUid(I)Z -HPLcom/android/server/net/NetworkManagementService$NetdUnsolicitedEventListener$$ExternalSyntheticLambda3;->run()V HSPLcom/android/server/net/NetworkManagementService;->enforceSystemUid()V+]Lcom/android/server/net/NetworkManagementService$Dependencies;Lcom/android/server/net/NetworkManagementService$Dependencies; HSPLcom/android/server/net/NetworkManagementService;->getFirewallChainState(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/net/NetworkManagementService;->getFirewallRuleName(II)Ljava/lang/String; HSPLcom/android/server/net/NetworkManagementService;->getUidFirewallRulesLR(I)Landroid/util/SparseIntArray; -HSPLcom/android/server/net/NetworkManagementService;->isNetworkRestrictedInternal(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkManagementService;Lcom/android/server/net/NetworkManagementService; -HSPLcom/android/server/net/NetworkManagementService;->setFirewallUidRule(III)V+]Lcom/android/server/net/NetworkManagementService;Lcom/android/server/net/NetworkManagementService; -HSPLcom/android/server/net/NetworkManagementService;->setFirewallUidRuleLocked(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Lcom/android/server/net/NetworkManagementService;Lcom/android/server/net/NetworkManagementService; +HSPLcom/android/server/net/NetworkManagementService;->isNetworkRestrictedInternal(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/net/NetworkManagementService;->setFirewallUidRule(III)V +HSPLcom/android/server/net/NetworkManagementService;->setFirewallUidRuleLocked(III)V+]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager; HSPLcom/android/server/net/NetworkManagementService;->setUidCleartextNetworkPolicy(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkManagementService$Dependencies;Lcom/android/server/net/NetworkManagementService$Dependencies; -HSPLcom/android/server/net/NetworkManagementService;->setUidOnMeteredNetworkList(IZZ)V+]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/net/NetworkManagementService;->updateFirewallUidRuleLocked(III)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkManagementService;Lcom/android/server/net/NetworkManagementService;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->appIdleStateChanged(IZ)V +HSPLcom/android/server/net/NetworkManagementService;->updateFirewallUidRuleLocked(III)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->tempPowerSaveWlChanged(IZILjava/lang/String;)V -HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->uidFirewallRuleChanged(III)V+]Lcom/android/internal/util/RingBuffer;Lcom/android/server/net/NetworkPolicyLogger$LogBuffer;]Lcom/android/server/net/NetworkPolicyLogger$Data;Lcom/android/server/net/NetworkPolicyLogger$Data; +HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->uidFirewallRuleChanged(III)V HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->uidStateChanged(IIJI)V -HSPLcom/android/server/net/NetworkPolicyLogger;->uidFirewallRuleChanged(III)V+]Lcom/android/server/net/NetworkPolicyLogger$LogBuffer;Lcom/android/server/net/NetworkPolicyLogger$LogBuffer; -HSPLcom/android/server/net/NetworkPolicyManagerService$15;->handleMessage(Landroid/os/Message;)Z+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/SomeArgs;Lcom/android/internal/os/SomeArgs;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long; +HSPLcom/android/server/net/NetworkPolicyLogger;->uidFirewallRuleChanged(III)V +HSPLcom/android/server/net/NetworkPolicyLogger;->uidStateChanged(IIJI)V +HSPLcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda5;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/net/NetworkPolicyManagerService$15;->handleMessage(Landroid/os/Message;)Z+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; HSPLcom/android/server/net/NetworkPolicyManagerService$4;->isUidStateChangeRelevant(Lcom/android/server/net/NetworkPolicyManagerService$UidStateCallbackInfo;IJI)Z -HSPLcom/android/server/net/NetworkPolicyManagerService$4;->onUidStateChanged(IIJI)V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/net/NetworkPolicyManagerService$4;Lcom/android/server/net/NetworkPolicyManagerService$4;]Lcom/android/server/net/NetworkPolicyManagerService$UidStateCallbackInfo;Lcom/android/server/net/NetworkPolicyManagerService$UidStateCallbackInfo; -HSPLcom/android/server/net/NetworkPolicyManagerService$NetPolicyAppIdleStateChangeListener;->onAppIdleStateChanged(Ljava/lang/String;IZII)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; +HSPLcom/android/server/net/NetworkPolicyManagerService$4;->onUidStateChanged(IIJI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl;->onTempPowerSaveWhitelistChange(IZILjava/lang/String;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger; +HSPLcom/android/server/net/NetworkPolicyManagerService$UidBlockedState;->deriveUidRules()I HSPLcom/android/server/net/NetworkPolicyManagerService$UidBlockedState;->updateEffectiveBlockedReasons()V HSPLcom/android/server/net/NetworkPolicyManagerService;->getOrCreateUidBlockedStateForUid(Landroid/util/SparseArray;I)Lcom/android/server/net/NetworkPolicyManagerService$UidBlockedState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/net/NetworkPolicyManagerService;->handleUidChanged(I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; +HSPLcom/android/server/net/NetworkPolicyManagerService;->handleUidChanged(I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger; HSPLcom/android/server/net/NetworkPolicyManagerService;->hasInternetPermissionUL(I)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/net/NetworkPolicyManagerService;->isAllowlistedFromPowerSaveUL(IZ)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; +HSPLcom/android/server/net/NetworkPolicyManagerService;->isAllowlistedFromPowerSaveUL(IZ)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidExemptFromBackgroundRestrictions(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray; HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidForegroundOnRestrictPowerUL(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidIdle(II)Z+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForAllowlistRulesUL(I)Z+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; -HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForDenylistRulesUL(I)Z+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; -HSPLcom/android/server/net/NetworkPolicyManagerService;->lambda$forEachUid$7(Landroid/util/SparseBooleanArray;ILjava/util/function/IntConsumer;Lcom/android/server/pm/pkg/AndroidPackage;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/function/IntConsumer;Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda0;,Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda2;,Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda3;,Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda7; +HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForDenylistRulesUL(I)Z +HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForRulesUL(I)Z HSPLcom/android/server/net/NetworkPolicyManagerService;->postBlockedReasonsChangedMsg(III)V -HSPLcom/android/server/net/NetworkPolicyManagerService;->setUidFirewallRuleUL(III)V+]Landroid/os/INetworkManagementService;Lcom/android/server/net/NetworkManagementService;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkRulesNL()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/net/Network;Landroid/net/Network;]Landroid/net/NetworkCapabilities;Landroid/net/NetworkCapabilities;]Landroid/net/NetworkIdentity$Builder;Landroid/net/NetworkIdentity$Builder;]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Landroid/net/NetworkStateSnapshot;Landroid/net/NetworkStateSnapshot;]Landroid/net/NetworkTemplate;Landroid/net/NetworkTemplate;]Landroid/os/Handler;Landroid/os/Handler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;]Ljava/time/Instant;Ljava/time/Instant;]Ljava/time/ZonedDateTime;Ljava/time/ZonedDateTime;]Ljava/util/Iterator;Landroid/net/NetworkPolicyManager$1;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkStats(IZ)V+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/net/NetworkPolicyManagerService;->setUidFirewallRuleUL(III)V+]Landroid/os/INetworkManagementService;Lcom/android/server/net/NetworkManagementService;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger; +HPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkRulesNL()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/net/Network;Landroid/net/Network;]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkStats(IZ)V+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager; HSPLcom/android/server/net/NetworkPolicyManagerService;->updateNotificationsNL()V+]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/time/Clock;Landroid/os/BestClock; -HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRuleForAppIdleUL(II)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRuleForAppIdleUL(II)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRuleForBackgroundUL(I)V HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForDataUsageRestrictionsULInner(I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; -HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForPowerRestrictionsUL(II)V+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; -HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForPowerRestrictionsUL(IZ)V+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForPowerRestrictionsULInner(IZ)V+]Lcom/android/server/net/NetworkPolicyManagerService$UidBlockedState;Lcom/android/server/net/NetworkPolicyManagerService$UidBlockedState;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; +HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForPowerRestrictionsUL(IZ)V +HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForPowerRestrictionsULInner(IZ)V+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; HSPLcom/android/server/net/NetworkPolicyManagerService;->updateRulesForTempAllowlistChangeUL(I)V+]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/net/NetworkPolicyManagerService;->updateUidStateUL(IIJI)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService; HSPLcom/android/server/net/watchlist/DigestUtils;->getSha256Hash(Ljava/io/InputStream;)[B+]Ljava/io/InputStream;Ljava/io/FileInputStream;]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate; @@ -1999,207 +2029,226 @@ HPLcom/android/server/net/watchlist/NetworkWatchlistService$1;->onConnectEvent(L HPLcom/android/server/net/watchlist/NetworkWatchlistService$1;->onDnsEvent(IIILjava/lang/String;[Ljava/lang/String;IJI)V+]Lcom/android/server/net/watchlist/WatchlistLoggingHandler;Lcom/android/server/net/watchlist/WatchlistLoggingHandler; HPLcom/android/server/net/watchlist/WatchlistConfig;->containsDomain(Ljava/lang/String;)Z HPLcom/android/server/net/watchlist/WatchlistConfig;->containsIp(Ljava/lang/String;)Z -HPLcom/android/server/net/watchlist/WatchlistLoggingHandler;->asyncNetworkEvent(Ljava/lang/String;[Ljava/lang/String;I)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/Handler;Lcom/android/server/net/watchlist/WatchlistLoggingHandler;]Landroid/os/Message;Landroid/os/Message; -HSPLcom/android/server/notification/BadgeExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/Notification$BubbleMetadata;Landroid/app/Notification$BubbleMetadata;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; -HSPLcom/android/server/notification/BubbleExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/BubbleExtractor;Lcom/android/server/notification/BubbleExtractor;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; +HPLcom/android/server/net/watchlist/WatchlistLoggingHandler;->asyncNetworkEvent(Ljava/lang/String;[Ljava/lang/String;I)V +HSPLcom/android/server/net/watchlist/WatchlistLoggingHandler;->handleMessage(Landroid/os/Message;)V +HSPLcom/android/server/notification/BadgeExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; +HSPLcom/android/server/notification/BubbleExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/BubbleExtractor;Lcom/android/server/notification/BubbleExtractor;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->enabledAndUserMatches(I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles; +HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->getService()Landroid/os/IInterface; HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->hashCode()I -HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isEnabledForCurrentProfiles()Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isPermittedForProfile(I)Z+]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles; +HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isEnabledForCurrentProfiles()Z HPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isSameUser(I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo; -HSPLcom/android/server/notification/ManagedServices$UserProfiles;->isCurrentProfile(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/notification/ManagedServices;->getServiceFromTokenLocked(Landroid/os/IInterface;)Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;+]Landroid/os/IInterface;Landroid/service/notification/ConditionProviderService$Provider;,Landroid/service/notification/IConditionProvider$Stub$Proxy;,Landroid/service/notification/INotificationListener$Stub$Proxy;,Landroid/service/notification/NotificationListenerService$NotificationListenerWrapper;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/notification/ManagedServices;->getServices()Ljava/util/List; -HSPLcom/android/server/notification/ManagedServices;->isPackageOrComponentAllowed(Ljava/lang/String;I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/notification/ManagedServices;->isServiceTokenValidLocked(Landroid/os/IInterface;)Z+]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants; -HSPLcom/android/server/notification/ManagedServices;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/ConditionProviders;,Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;,Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/notification/NotificationAttentionHelper;->buzzBeepBlinkLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationAttentionHelper$Signals;)I+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/media/AudioManager;Landroid/media/AudioManager;]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/view/accessibility/AccessibilityManager;Landroid/view/accessibility/AccessibilityManager;]Lcom/android/server/notification/NotificationAttentionHelper;Lcom/android/server/notification/NotificationAttentionHelper;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationChannelExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; -HPLcom/android/server/notification/NotificationComparator;->compare(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;)I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationComparator;Lcom/android/server/notification/NotificationComparator;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationIntrusivenessExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HPLcom/android/server/notification/NotificationManagerService$12;->applyEnqueuedAdjustmentFromAssistant(Landroid/service/notification/INotificationListener;Landroid/service/notification/Adjustment;)V+]Landroid/service/notification/Adjustment;Landroid/service/notification/Adjustment;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/Integer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService$12;->areNotificationsEnabledForPackage(Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12; -HPLcom/android/server/notification/NotificationManagerService$12;->canNotifyAsPackage(Ljava/lang/String;Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/notification/ManagedServices;->isPackageOrComponentAllowed(Ljava/lang/String;I)Z +HSPLcom/android/server/notification/ManagedServices;->isServiceTokenValidLocked(Landroid/os/IInterface;)Z +HSPLcom/android/server/notification/ManagedServices;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/ConditionProviders;,Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;,Lcom/android/server/notification/NotificationManagerService$NotificationListeners; +HSPLcom/android/server/notification/NotificationAttentionHelper;->buzzBeepBlinkLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationAttentionHelper$Signals;)I+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/media/AudioManager;Landroid/media/AudioManager;]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationChannelExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/media/AudioAttributes$Builder;Landroid/media/AudioAttributes$Builder;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; +HSPLcom/android/server/notification/NotificationIntrusivenessExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration; +HPLcom/android/server/notification/NotificationManagerService$12;->applyEnqueuedAdjustmentFromAssistant(Landroid/service/notification/INotificationListener;Landroid/service/notification/Adjustment;)V+]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/notification/NotificationManagerService$12;->areNotificationsEnabled(Ljava/lang/String;)Z+]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12; +HPLcom/android/server/notification/NotificationManagerService$12;->areNotificationsEnabledForPackage(Ljava/lang/String;I)Z +HPLcom/android/server/notification/NotificationManagerService$12;->canNotifyAsPackage(Ljava/lang/String;Ljava/lang/String;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; HSPLcom/android/server/notification/NotificationManagerService$12;->cancelNotificationWithTag(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; HSPLcom/android/server/notification/NotificationManagerService$12;->createNotificationChannels(Ljava/lang/String;Landroid/content/pm/ParceledListSlice;)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; HSPLcom/android/server/notification/NotificationManagerService$12;->createNotificationChannelsImpl(Ljava/lang/String;ILandroid/content/pm/ParceledListSlice;I)V+]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/ConditionProviders;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Arrays$ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/notification/NotificationManagerService$12;->getAppActiveNotifications(Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/SnoozeHelper;Lcom/android/server/notification/SnoozeHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; +HPLcom/android/server/notification/NotificationManagerService$12;->enforceSystemOrSystemUIOrSamePackage(Ljava/lang/String;Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl; +HSPLcom/android/server/notification/NotificationManagerService$12;->getAppActiveNotifications(Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HPLcom/android/server/notification/NotificationManagerService$12;->getConversationNotificationChannel(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Landroid/app/NotificationChannel;+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; HPLcom/android/server/notification/NotificationManagerService$12;->getNotificationChannelGroup(Ljava/lang/String;Ljava/lang/String;)Landroid/app/NotificationChannelGroup;+]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; +HPLcom/android/server/notification/NotificationManagerService$12;->getNotificationChannelGroups(Ljava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; HPLcom/android/server/notification/NotificationManagerService$12;->getNotificationChannels(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice;+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/notification/NotificationManagerService$12;Lcom/android/server/notification/NotificationManagerService$12;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; -HPLcom/android/server/notification/NotificationManagerService$12;->sanitizeSbn(Ljava/lang/String;ILandroid/service/notification/StatusBarNotification;)Landroid/service/notification/StatusBarNotification;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/notification/NotificationManagerService$13;->areNotificationsEnabledForPackage(Ljava/lang/String;I)Z +HPLcom/android/server/notification/NotificationManagerService$12;->sanitizeSbn(Ljava/lang/String;ILandroid/service/notification/StatusBarNotification;)Landroid/service/notification/StatusBarNotification;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; HSPLcom/android/server/notification/NotificationManagerService$CancelNotificationRunnable;-><init>(Lcom/android/server/notification/NotificationManagerService;IILjava/lang/String;Ljava/lang/String;IIIZIIIILcom/android/server/notification/ManagedServices$ManagedServiceInfo;J)V -HSPLcom/android/server/notification/NotificationManagerService$CancelNotificationRunnable;->run()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/notification/NotificationAttentionHelper;Lcom/android/server/notification/NotificationAttentionHelper;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Lcom/android/server/notification/SnoozeHelper;Lcom/android/server/notification/SnoozeHelper; -HSPLcom/android/server/notification/NotificationManagerService$EnqueueNotificationRunnable;->enqueueNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/os/Handler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/SnoozeHelper;Lcom/android/server/notification/SnoozeHelper;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/notification/NotificationManagerService$NotificationAssistants;->onNotificationEnqueuedLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/service/notification/INotificationListener;Landroid/service/notification/INotificationListener$Stub$Proxy;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService$TrimCache;Lcom/android/server/notification/NotificationManagerService$TrimCache;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->getNotificationListenerFilter(Landroid/util/Pair;)Landroid/service/notification/NotificationListenerFilter;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->isListenerPackage(Ljava/lang/String;)Z+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService$CancelNotificationRunnable;->run()V+]Landroid/app/Notification;Landroid/app/Notification;]Lcom/android/server/notification/NotificationDelegate;Lcom/android/server/notification/NotificationManagerService$1;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper; +HSPLcom/android/server/notification/NotificationManagerService$EnqueueNotificationRunnable;->enqueueNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/TimeToLiveHelper;Lcom/android/server/notification/TimeToLiveHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/notification/NotificationManagerService$NotificationAssistants;->onNotificationEnqueuedLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/service/notification/INotificationListener;Landroid/service/notification/INotificationListener$Stub$Proxy;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->getNotificationListenerFilter(Landroid/util/Pair;)Landroid/service/notification/NotificationListenerFilter; HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->isUidTrusted(I)Z -HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->prepareNotifyPostedLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Z)Ljava/util/List;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService$TrimCache;Lcom/android/server/notification/NotificationManagerService$TrimCache;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService$PostNotificationRunnable;->postNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/os/Handler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/logging/InstanceIdSequence;Lcom/android/internal/logging/InstanceIdSequence;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles;]Lcom/android/server/notification/NotificationAttentionHelper;Lcom/android/server/notification/NotificationAttentionHelper;]Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->notifyNotificationChannelGroupChanged(Ljava/lang/String;Landroid/os/UserHandle;Landroid/app/NotificationChannelGroup;I)V+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->prepareNotifyPostedLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Z)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService$PostNotificationRunnable;->postNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/internal/logging/InstanceIdSequence;Lcom/android/internal/logging/InstanceIdSequence;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles;]Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/notification/NotificationManagerService$StrongAuthTracker;->isInLockDownMode(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HSPLcom/android/server/notification/NotificationManagerService$TrimCache;->ForListener(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Landroid/service/notification/StatusBarNotification;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners; -HSPLcom/android/server/notification/NotificationManagerService;->areNotificationsEnabledForPackageInt(Ljava/lang/String;I)Z+]Lcom/android/server/notification/PermissionHelper;Lcom/android/server/notification/PermissionHelper; +HSPLcom/android/server/notification/NotificationManagerService$WorkerHandler;->scheduleCancelNotification(Lcom/android/server/notification/NotificationManagerService$CancelNotificationRunnable;I)V +HPLcom/android/server/notification/NotificationManagerService;->applyAdjustmentLocked(Lcom/android/server/notification/NotificationRecord;Landroid/service/notification/Adjustment;Z)V+]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLcom/android/server/notification/NotificationManagerService;->areNotificationsEnabledForPackageInt(Ljava/lang/String;I)Z HSPLcom/android/server/notification/NotificationManagerService;->cancelNotification(IILjava/lang/String;Ljava/lang/String;IIIZIIIILcom/android/server/notification/ManagedServices$ManagedServiceInfo;)V+]Lcom/android/server/notification/NotificationManagerService$WorkerHandler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler; HSPLcom/android/server/notification/NotificationManagerService;->cancelNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;III)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; -HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; -HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;II)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;)V +HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;II)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSystemOrSameApp(Ljava/lang/String;)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; -HSPLcom/android/server/notification/NotificationManagerService;->checkDisqualifyingFeatures(IIILjava/lang/String;Lcom/android/server/notification/NotificationRecord;ZZ)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification$Action;Landroid/app/Notification$Action;]Landroid/app/Notification$BubbleMetadata;Landroid/app/Notification$BubbleMetadata;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/PendingIntent;Landroid/app/PendingIntent;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/SnoozeHelper;Lcom/android/server/notification/SnoozeHelper;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/notification/NotificationManagerService;->enqueueNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;ILandroid/app/Notification;IZLcom/android/server/notification/NotificationManagerService$PostNotificationTracker;Z)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/app/PendingIntent;Landroid/app/PendingIntent;]Landroid/os/Handler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/SystemService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/PermissionHelper;Lcom/android/server/notification/PermissionHelper;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Set;Ljava/util/ImmutableCollections$SetN; -HSPLcom/android/server/notification/NotificationManagerService;->findNotificationByListLocked(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;II)Lcom/android/server/notification/NotificationRecord;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService;->findNotificationLocked(Ljava/lang/String;Ljava/lang/String;II)Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationManagerService;->fixNotification(Landroid/app/Notification;Ljava/lang/String;Ljava/lang/String;IIILandroid/app/ActivityManagerInternal$ServiceNotificationPolicy;Z)V+]Landroid/app/Notification$Builder;Landroid/app/Notification$Builder;]Landroid/app/Notification$CallStyle;Landroid/app/Notification$CallStyle;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/content/AttributionSource$Builder;Landroid/content/AttributionSource$Builder;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/SystemService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/notification/NotificationManagerService;->getNotificationCount(Ljava/lang/String;IILjava/lang/String;)I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService;->handleRankingSort()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/NotificationManagerService$WorkerHandler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationRecordExtractorData;Lcom/android/server/notification/NotificationRecordExtractorData;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService;->checkDisqualifyingFeatures(IIILjava/lang/String;Lcom/android/server/notification/NotificationRecord;ZZ)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification$Action;Landroid/app/Notification$Action;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats; +HSPLcom/android/server/notification/NotificationManagerService;->enqueueNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;ILandroid/app/Notification;IZLcom/android/server/notification/NotificationManagerService$PostNotificationTracker;ZZ)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/util/Set;Ljava/util/ImmutableCollections$SetN; +HSPLcom/android/server/notification/NotificationManagerService;->findNotificationByListLocked(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;II)Lcom/android/server/notification/NotificationRecord;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService;->fixNotification(Landroid/app/Notification;Ljava/lang/String;Ljava/lang/String;IIILandroid/app/ActivityManagerInternal$ServiceNotificationPolicy;Z)V+]Landroid/app/Notification$Builder;Landroid/app/Notification$Builder;]Landroid/app/Notification$CallStyle;Landroid/app/Notification$CallStyle;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService;->handleRankingSort()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$WorkerHandler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/notification/NotificationManagerService;->isCallerSystemOrPhone()Z+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; HSPLcom/android/server/notification/NotificationManagerService;->isInLockDownMode(I)Z+]Lcom/android/server/notification/NotificationManagerService$StrongAuthTracker;Lcom/android/server/notification/NotificationManagerService$StrongAuthTracker; -HSPLcom/android/server/notification/NotificationManagerService;->isInteractionVisibleToListener(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; -HSPLcom/android/server/notification/NotificationManagerService;->isRecordBlockedLocked(Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; +HSPLcom/android/server/notification/NotificationManagerService;->isInteractionVisibleToListener(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo; +HSPLcom/android/server/notification/NotificationManagerService;->isRecordBlockedLocked(Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; HSPLcom/android/server/notification/NotificationManagerService;->isServiceTokenValid(Landroid/os/IInterface;)Z+]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants; HSPLcom/android/server/notification/NotificationManagerService;->isUidSystemOrPhone(I)Z -HSPLcom/android/server/notification/NotificationManagerService;->isVisibleToListener(Landroid/service/notification/StatusBarNotification;ILcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Z+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; -HSPLcom/android/server/notification/NotificationManagerService;->isVisuallyInterruptive(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/SystemService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/notification/NotificationManagerService;->makeRankingUpdateLocked(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Landroid/service/notification/NotificationRankingUpdate;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/service/notification/NotificationListenerService$Ranking;Landroid/service/notification/NotificationListenerService$Ranking;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationManagerService;->maybeRecordInterruptionLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/app/NotificationHistory$HistoricalNotification$Builder;Landroid/app/NotificationHistory$HistoricalNotification$Builder;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationHistoryManager;Lcom/android/server/notification/NotificationHistoryManager;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/CharSequence;Ljava/lang/String; -HPLcom/android/server/notification/NotificationManagerService;->notificationMatchesUserId(Lcom/android/server/notification/NotificationRecord;IZ)Z+]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationManagerService;->resolveNotificationUid(Ljava/lang/String;Ljava/lang/String;II)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; -HSPLcom/android/server/notification/NotificationManagerService;->updateUriPermissions(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Ljava/lang/String;IZ)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/notification/NotificationRecord;-><init>(Landroid/content/Context;Landroid/service/notification/StatusBarNotification;Landroid/app/NotificationChannel;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->applyAdjustments()V+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/service/notification/Adjustment;Landroid/service/notification/Adjustment;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/notification/NotificationRecord;->calculateGrantableUris()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->calculateImportance()V+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->calculateInitialImportance()I+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->calculateLights()Lcom/android/server/notification/NotificationRecord$Light;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->calculateVibration()Landroid/os/VibrationEffect;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->getFlags()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->getImportance()I +HSPLcom/android/server/notification/NotificationManagerService;->isVisibleToListener(Landroid/service/notification/StatusBarNotification;ILcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Z+]Landroid/service/notification/NotificationListenerFilter;Landroid/service/notification/NotificationListenerFilter;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService; +HSPLcom/android/server/notification/NotificationManagerService;->isVisuallyInterruptive(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationManagerService;->lambda$acquireWakeLockForPost$7(Ljava/lang/String;I)Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;+]Lcom/android/server/notification/NotificationManagerService$PostNotificationTrackerFactory;Lcom/android/server/notification/NotificationManagerService$10; +HSPLcom/android/server/notification/NotificationManagerService;->makeRankingUpdateLocked(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Landroid/service/notification/NotificationRankingUpdate;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationManagerService;->maybeRecordInterruptionLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationHistoryManager;Lcom/android/server/notification/NotificationHistoryManager; +HPLcom/android/server/notification/NotificationManagerService;->notificationMatchesUserId(Lcom/android/server/notification/NotificationRecord;IZ)Z +HSPLcom/android/server/notification/NotificationManagerService;->resolveNotificationUid(Ljava/lang/String;Ljava/lang/String;II)I +HSPLcom/android/server/notification/NotificationManagerService;->updateUriPermissions(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Ljava/lang/String;IZ)V+]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService; +HSPLcom/android/server/notification/NotificationRecord;-><init>(Landroid/content/Context;Landroid/service/notification/StatusBarNotification;Landroid/app/NotificationChannel;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->applyAdjustments()V+]Ljava/lang/Object;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/notification/NotificationRecord;->calculateGrantableUris()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->calculateImportance()V +HSPLcom/android/server/notification/NotificationRecord;->calculateInitialImportance()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->calculateLights()Lcom/android/server/notification/NotificationRecord$Light;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources; +HSPLcom/android/server/notification/NotificationRecord;->calculateVibration()Landroid/os/VibrationEffect;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; HSPLcom/android/server/notification/NotificationRecord;->getImportanceExplanation()Ljava/lang/CharSequence; -HSPLcom/android/server/notification/NotificationRecord;->getKey()Ljava/lang/String;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->getLogMaker(J)Landroid/metrics/LogMaker;+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/notification/NotificationRecord;->getNotification()Landroid/app/Notification;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->getNotificationType()I+]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; +HSPLcom/android/server/notification/NotificationRecord;->getLogMaker(J)Landroid/metrics/LogMaker;+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->getNotification()Landroid/app/Notification;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->getNotificationType()I HSPLcom/android/server/notification/NotificationRecord;->getSbn()Landroid/service/notification/StatusBarNotification; -HSPLcom/android/server/notification/NotificationRecord;->getUser()Landroid/os/UserHandle;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->getUserId()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecord;->isConversation()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/content/pm/ShortcutInfo;Landroid/content/pm/ShortcutInfo;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HPLcom/android/server/notification/NotificationRecord;->visitGrantableUri(Landroid/net/Uri;ZZ)V+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;->shouldLogReported(I)Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord; -HSPLcom/android/server/notification/NotificationRecordLogger$NotificationReported;-><init>(Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;Lcom/android/server/notification/NotificationRecordLogger$NotificationReportedEvent;IILcom/android/internal/logging/InstanceId;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair; -HSPLcom/android/server/notification/NotificationUsageStats$AggregatedStats;->countApiUse(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLcom/android/server/notification/NotificationRecord;->getUser()Landroid/os/UserHandle;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->getUserId()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecord;->isConversation()Z+]Landroid/app/Notification;Landroid/app/Notification; +HSPLcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;->shouldLogReported(I)Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification; +HSPLcom/android/server/notification/NotificationRecordLogger$NotificationReported;-><init>(Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;Lcom/android/server/notification/NotificationRecordLogger$NotificationReportedEvent;IILcom/android/internal/logging/InstanceId;)V +HSPLcom/android/server/notification/NotificationUsageStats$AggregatedStats;->countApiUse(Lcom/android/server/notification/NotificationRecord;)V+]Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; HSPLcom/android/server/notification/NotificationUsageStats$SingleNotificationStats;-><init>()V -HSPLcom/android/server/notification/NotificationUsageStats;->getAggregatedStatsLocked(Ljava/lang/String;)[Lcom/android/server/notification/NotificationUsageStats$AggregatedStats;+]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/notification/NotificationUsageStats;->getAggregatedStatsLocked(Ljava/lang/String;)[Lcom/android/server/notification/NotificationUsageStats$AggregatedStats;+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; HSPLcom/android/server/notification/NotificationUsageStats;->getOrCreateAggregatedStatsLocked(Ljava/lang/String;)Lcom/android/server/notification/NotificationUsageStats$AggregatedStats;+]Ljava/util/Map;Ljava/util/HashMap; HSPLcom/android/server/notification/PermissionHelper;->hasPermission(I)Z+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/notification/PermissionHelper;->isPermissionFixed(Ljava/lang/String;I)Z+]Landroid/permission/IPermissionManager;Lcom/android/server/pm/permission/PermissionManagerService; HSPLcom/android/server/notification/PreferencesHelper$PackagePreferences;-><init>()V -HSPLcom/android/server/notification/PreferencesHelper;->createNotificationChannel(Ljava/lang/String;ILandroid/app/NotificationChannel;ZZIZ)Z+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Lcom/android/server/notification/NotificationChannelLogger;Lcom/android/server/notification/NotificationChannelLoggerImpl;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/notification/PreferencesHelper;->getConversationNotificationChannel(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;ZZ)Landroid/app/NotificationChannel;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; -HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroupWithChannels(Ljava/lang/String;ILjava/lang/String;Z)Landroid/app/NotificationChannelGroup;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/app/NotificationChannelGroup;Landroid/app/NotificationChannelGroup;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; -HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroups(Ljava/lang/String;IZZZZLjava/util/Set;)Landroid/content/pm/ParceledListSlice;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/app/NotificationChannelGroup;Landroid/app/NotificationChannelGroup;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/notification/PreferencesHelper;->getNotificationChannels(Ljava/lang/String;IZ)Landroid/content/pm/ParceledListSlice;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/notification/PreferencesHelper;->getOrCreatePackagePreferencesLocked(Ljava/lang/String;I)Lcom/android/server/notification/PreferencesHelper$PackagePreferences;+]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/time/Clock;Ljava/time/Clock$SystemClock; +HSPLcom/android/server/notification/PreferencesHelper;->createNotificationChannel(Ljava/lang/String;ILandroid/app/NotificationChannel;ZZIZ)Z+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Lcom/android/server/notification/NotificationChannelLogger;Lcom/android/server/notification/NotificationChannelLoggerImpl;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/notification/PreferencesHelper;->getConversationNotificationChannel(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;ZZ)Landroid/app/NotificationChannel; +HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroupWithChannels(Ljava/lang/String;ILjava/lang/String;Z)Landroid/app/NotificationChannelGroup;+]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap; +HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroups(Ljava/lang/String;IZZZZLjava/util/Set;)Landroid/content/pm/ParceledListSlice;+]Ljava/util/Collection;Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;]Ljava/util/Set;Ljava/util/HashSet; +HSPLcom/android/server/notification/PreferencesHelper;->getOrCreatePackagePreferencesLocked(Ljava/lang/String;I)Lcom/android/server/notification/PreferencesHelper$PackagePreferences;+]Ljava/time/Clock;Ljava/time/Clock$SystemClock; HSPLcom/android/server/notification/PreferencesHelper;->getOrCreatePackagePreferencesLocked(Ljava/lang/String;IIIIIZIJ)Lcom/android/server/notification/PreferencesHelper$PackagePreferences; HSPLcom/android/server/notification/PreferencesHelper;->getPackagePreferencesLocked(Ljava/lang/String;I)Lcom/android/server/notification/PreferencesHelper$PackagePreferences; -HSPLcom/android/server/notification/PreferencesHelper;->packagePreferencesKey(Ljava/lang/String;I)Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/notification/PreferencesHelper;->packagePreferencesKey(Ljava/lang/String;I)Ljava/lang/String; HPLcom/android/server/notification/PreferencesHelper;->pullPackagePreferencesStats(Ljava/util/List;Landroid/util/ArrayMap;)V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; HSPLcom/android/server/notification/PreferencesHelper;->restoreChannel(Lcom/android/modules/utils/TypedXmlPullParser;ZLcom/android/server/notification/PreferencesHelper$PackagePreferences;)V HSPLcom/android/server/notification/PreferencesHelper;->restorePackage(Lcom/android/modules/utils/TypedXmlPullParser;ZILjava/lang/String;ZZ)V HSPLcom/android/server/notification/PreferencesHelper;->writePackageXml(Lcom/android/server/notification/PreferencesHelper$PackagePreferences;Lcom/android/modules/utils/TypedXmlSerializer;Landroid/util/ArrayMap;Z)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/notification/PreferencesHelper;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Landroid/app/NotificationChannelGroup;Landroid/app/NotificationChannelGroup;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/PermissionHelper;Lcom/android/server/notification/PermissionHelper;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/notification/RankingHelper;->sort(Ljava/util/ArrayList;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/SnoozeHelper;->cancel(ILjava/lang/String;Ljava/lang/String;I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; +HSPLcom/android/server/notification/PreferencesHelper;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper; +HSPLcom/android/server/notification/RankingHelper;->sort(Ljava/util/ArrayList;)V+]Landroid/app/Notification;Landroid/app/Notification;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/SnoozeHelper;->cancel(ILjava/lang/String;Ljava/lang/String;I)Z+]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; HSPLcom/android/server/notification/SnoozeHelper;->getSnoozed(ILjava/lang/String;)Ljava/util/Collection;+]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HPLcom/android/server/notification/ValidateNotificationPeople;->getExtraPeopleForKey(Landroid/os/Bundle;Ljava/lang/String;)[Ljava/lang/String;+]Landroid/app/Person;Landroid/app/Person;]Landroid/os/Bundle;Landroid/os/Bundle;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/notification/ValidateNotificationPeople;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/ValidateNotificationPeople;Lcom/android/server/notification/ValidateNotificationPeople; -HPLcom/android/server/notification/ValidateNotificationPeople;->validatePeople(Landroid/content/Context;Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;]Lcom/android/server/notification/ValidateNotificationPeople;Lcom/android/server/notification/ValidateNotificationPeople; -HPLcom/android/server/notification/ValidateNotificationPeople;->validatePeople(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;Ljava/util/List;[FLandroid/util/ArraySet;)Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/LruCache;Landroid/util/LruCache;]Lcom/android/server/notification/ValidateNotificationPeople$LookupResult;Lcom/android/server/notification/ValidateNotificationPeople$LookupResult;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/LinkedList;Ljava/util/LinkedList;]Ljava/util/Set;Landroid/util/ArraySet; +HPLcom/android/server/notification/ValidateNotificationPeople;->validatePeople(Landroid/content/Context;Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration; HSPLcom/android/server/notification/VibratorHelper;-><init>(Landroid/content/Context;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HSPLcom/android/server/notification/VisibilityExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/NotificationChannel;Landroid/app/NotificationChannel;]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper;]Lcom/android/server/notification/VisibilityExtractor;Lcom/android/server/notification/VisibilityExtractor; -HSPLcom/android/server/notification/ZenModeExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;]Lcom/android/server/notification/ZenModeHelper;Lcom/android/server/notification/ZenModeHelper; -HSPLcom/android/server/om/OverlayManagerServiceImpl;->updateState(Landroid/content/om/CriticalOverlayInfo;II)Z -HSPLcom/android/server/om/OverlayManagerSettings$SettingsItem;->-$$Nest$fgetmUserId(Lcom/android/server/om/OverlayManagerSettings$SettingsItem;)I -HSPLcom/android/server/om/OverlayManagerSettings;->forEachMatching(ILjava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V+]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;Lcom/android/server/om/OverlayManagerServiceImpl$$ExternalSyntheticLambda1; -HSPLcom/android/server/om/OverlayManagerSettings;->select(Landroid/content/om/OverlayIdentifier;I)I+]Landroid/content/om/OverlayIdentifier;Landroid/content/om/OverlayIdentifier;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/notification/VisibilityExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper; HSPLcom/android/server/om/OverlayReferenceMapper$1;->getTargetToOverlayables(Lcom/android/server/pm/pkg/AndroidPackage;)Ljava/util/Map;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; HSPLcom/android/server/om/OverlayReferenceMapper;->addPkg(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/Map;)Landroid/util/ArraySet; HSPLcom/android/server/om/OverlayReferenceMapper;->addTarget(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/Map;Ljava/util/Collection;)V+]Lcom/android/server/om/OverlayReferenceMapper$Provider;Lcom/android/server/om/OverlayReferenceMapper$1;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/Collections$EmptyMap;,Ljava/util/Collections$UnmodifiableMap;,Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;,Ljava/util/HashSet; HSPLcom/android/server/om/OverlayReferenceMapper;->ensureMapBuilt()V -HSPLcom/android/server/om/OverlayReferenceMapper;->isValidActor(Ljava/lang/String;Ljava/lang/String;)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper; +HSPLcom/android/server/om/OverlayReferenceMapper;->isValidActor(Ljava/lang/String;Ljava/lang/String;)Z HSPLcom/android/server/os/NativeTombstoneManager;->collectTombstones(Ljava/util/ArrayList;III)V HSPLcom/android/server/permission/access/AccessCheckingService;->access$getState$p(Lcom/android/server/permission/access/AccessCheckingService;)Lcom/android/server/permission/access/AccessState; HSPLcom/android/server/permission/access/AccessPersistence;->write(Lcom/android/server/permission/access/AccessState;)V HSPLcom/android/server/permission/access/AccessPersistence;->write(Lcom/android/server/permission/access/WritableState;Lcom/android/server/permission/access/AccessState;I)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/permission/access/WritableState;Lcom/android/server/permission/access/MutableSystemState;,Lcom/android/server/permission/access/MutableUserState; +HSPLcom/android/server/permission/access/AccessPersistence;->writeUserState(Lcom/android/server/permission/access/AccessState;I)V HSPLcom/android/server/permission/access/AccessPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/SchemePolicy;Lcom/android/server/permission/access/appop/AppIdAppOpPolicy;,Lcom/android/server/permission/access/appop/PackageAppOpPolicy;,Lcom/android/server/permission/access/permission/AppIdPermissionPolicy;,Lcom/android/server/permission/access/permission/DevicePermissionPolicy; HSPLcom/android/server/permission/access/AccessPolicy;->serializePackageVersions(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IndexedMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/AccessState;->getExternalState()Lcom/android/server/permission/access/ExternalState; +HSPLcom/android/server/permission/access/AccessState;->getSystemState()Lcom/android/server/permission/access/SystemState; HSPLcom/android/server/permission/access/AccessState;->getUserStates()Lcom/android/server/permission/access/immutable/IntReferenceMap; -HSPLcom/android/server/permission/access/ExternalState;->getAppIdPackageNames()Lcom/android/server/permission/access/immutable/IntReferenceMap; +HSPLcom/android/server/permission/access/AccessState;->toMutable()Lcom/android/server/permission/access/MutableAccessState; +HSPLcom/android/server/permission/access/GetStateScope;-><init>(Lcom/android/server/permission/access/AccessState;)V +HSPLcom/android/server/permission/access/GetStateScope;->getState()Lcom/android/server/permission/access/AccessState; HSPLcom/android/server/permission/access/MutableAccessState;-><init>(Lcom/android/server/permission/access/AccessState;)V +HSPLcom/android/server/permission/access/MutableAccessState;->mutateSystemState$default(Lcom/android/server/permission/access/MutableAccessState;IILjava/lang/Object;)Lcom/android/server/permission/access/MutableSystemState; HSPLcom/android/server/permission/access/MutableAccessState;->mutateSystemState(I)Lcom/android/server/permission/access/MutableSystemState; +HSPLcom/android/server/permission/access/MutableSystemState;->requestWriteMode(I)V +HSPLcom/android/server/permission/access/MutateStateScope;->getNewState()Lcom/android/server/permission/access/MutableAccessState; +HSPLcom/android/server/permission/access/SystemState;->getPermissions()Lcom/android/server/permission/access/immutable/IndexedMap; +HSPLcom/android/server/permission/access/SystemState;->getWriteMode()I +HSPLcom/android/server/permission/access/SystemState;->setWriteMode(I)V +HSPLcom/android/server/permission/access/UserState;->getAppIdAppOpModes()Lcom/android/server/permission/access/immutable/IntReferenceMap; +HSPLcom/android/server/permission/access/UserState;->getAppIdPermissionFlags()Lcom/android/server/permission/access/immutable/IntReferenceMap; +HSPLcom/android/server/permission/access/appop/AppIdAppOpPersistence;->serializeAppIdAppOps(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IntReferenceMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer; HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->getAppOpMode(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer; +HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->getAppOpModes(Lcom/android/server/permission/access/GetStateScope;II)Lcom/android/server/permission/access/immutable/IndexedMap; HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/appop/AppIdAppOpPolicy$OnAppOpModeChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener; HSPLcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener;->onStateMutated()V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/appop/AppOpService$OnPackageAppOpModeChangedListener;->onStateMutated()V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer; -HSPLcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;->onStateMutated()V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer; +HPLcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;->onStateMutated()V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer; +HSPLcom/android/server/permission/access/appop/AppOpService;->access$getListeners$p(Lcom/android/server/permission/access/appop/AppOpService;)Landroid/util/ArraySet; HSPLcom/android/server/permission/access/appop/AppOpService;->evaluateModeFromPermissionFlags(II)I HSPLcom/android/server/permission/access/appop/AppOpService;->getForegroundOps(ILjava/lang/String;)Landroid/util/SparseBooleanArray;+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/lang/Number;Ljava/lang/Integer; +HSPLcom/android/server/permission/access/appop/AppOpService;->getForegroundOps(Ljava/lang/String;I)Landroid/util/SparseBooleanArray;+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/appop/AppOpService;->getPackageMode(Ljava/lang/String;II)I +HSPLcom/android/server/permission/access/appop/AppOpService;->getPackageModes(Ljava/lang/String;I)Landroid/util/ArrayMap; HSPLcom/android/server/permission/access/appop/AppOpService;->getUidMode(ILjava/lang/String;I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/permission/access/appop/AppOpService;->getUidModeFromPermissionState(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;Ljava/lang/String;)I -HSPLcom/android/server/permission/access/appop/AppOpService;->setUidMode(ILjava/lang/String;II)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState; +HSPLcom/android/server/permission/access/appop/AppOpService;->getUidModes(I)Landroid/util/ArrayMap; +HPLcom/android/server/permission/access/appop/AppOpService;->setUidMode(ILjava/lang/String;II)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState; HSPLcom/android/server/permission/access/appop/BaseAppOpPersistence;->serializeAppOp(Lcom/android/modules/utils/BinaryXmlSerializer;Ljava/lang/String;I)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer; HSPLcom/android/server/permission/access/appop/BaseAppOpPersistence;->serializeAppOps(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IndexedMap;)V+]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/appop/PackageAppOpPolicy;->getAppOpMode(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;ILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/appop/PackageAppOpPolicy;->getAppOpModes(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;I)Lcom/android/server/permission/access/immutable/IndexedMap; HSPLcom/android/server/permission/access/appop/PackageAppOpPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/appop/PackageAppOpPolicy$OnAppOpModeChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnPackageAppOpModeChangedListener; +HSPLcom/android/server/permission/access/immutable/IndexedList;-><init>(Ljava/util/ArrayList;)V HSPLcom/android/server/permission/access/immutable/IndexedListSet;->elementAt(I)Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/permission/access/immutable/IndexedListSet;->getSize()I+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/permission/access/immutable/IndexedMap;->get(Ljava/lang/Object;)Ljava/lang/Object; HSPLcom/android/server/permission/access/immutable/IndexedMap;->getSize()I HSPLcom/android/server/permission/access/immutable/IndexedMap;->keyAt(I)Ljava/lang/Object; HSPLcom/android/server/permission/access/immutable/IndexedMap;->valueAt(I)Ljava/lang/Object; HSPLcom/android/server/permission/access/immutable/IndexedReferenceMap;->get(Ljava/lang/Object;)Lcom/android/server/permission/access/immutable/Immutable; +HSPLcom/android/server/permission/access/immutable/IndexedSetExtensionsKt;->plusAssign(Lcom/android/server/permission/access/immutable/MutableIndexedSet;Ljava/util/Collection;)V+]Ljava/lang/Iterable;Ljava/util/Collections$UnmodifiableSet;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; HSPLcom/android/server/permission/access/immutable/IntReferenceMap;->get(I)Lcom/android/server/permission/access/immutable/Immutable;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/permission/access/immutable/IntReferenceMap;->keyAt(I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/permission/access/immutable/IntReferenceMap;->valueAt(I)Lcom/android/server/permission/access/immutable/Immutable;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/permission/access/immutable/MutableIndexedMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/permission/access/immutable/MutableReference;->get()Lcom/android/server/permission/access/immutable/Immutable; HSPLcom/android/server/permission/access/immutable/MutableReference;->mutate()Lcom/android/server/permission/access/immutable/Immutable;+]Lcom/android/server/permission/access/immutable/Immutable;megamorphic_types +HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->parsePermission(Lcom/android/modules/utils/BinaryXmlPullParser;Lcom/android/server/permission/access/immutable/MutableIndexedMap;)V HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializeAppId(Lcom/android/modules/utils/BinaryXmlSerializer;ILcom/android/server/permission/access/immutable/IndexedMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializeAppIdPermission(Lcom/android/modules/utils/BinaryXmlSerializer;Ljava/lang/String;I)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer; -HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializePermission(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/permission/Permission;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializePermission(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/permission/Permission;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer; HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializePermissions(Lcom/android/modules/utils/BinaryXmlSerializer;Ljava/lang/String;Lcom/android/server/permission/access/immutable/IndexedMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->addPermissions(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/immutable/MutableIndexedSet;)V -HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->checkPrivilegedPermissionAllowlist(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->checkPrivilegedPermissionAllowlistIfNeeded(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->evaluateAllPermissionStatesForPackageAndUser(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;ILcom/android/server/pm/pkg/PackageState;)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Iterable;Ljava/util/Collections$UnmodifiableSet;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->evaluatePermissionState(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Lcom/android/server/pm/pkg/PackageState;)V+]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->findPermissionTree(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;)Lcom/android/server/permission/access/permission/Permission; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissionFlags(Lcom/android/server/permission/access/AccessState;IILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissionFlags(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;)I HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissions(Lcom/android/server/permission/access/GetStateScope;)Lcom/android/server/permission/access/immutable/IndexedMap; -HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPrivilegedPermissionAllowlistState(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Ljava/lang/String;)Ljava/lang/Boolean;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPrivilegedPermissionAllowlistState(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Ljava/lang/String;)Ljava/lang/Boolean; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getUidPermissionFlags(Lcom/android/server/permission/access/GetStateScope;II)Lcom/android/server/permission/access/immutable/IndexedMap; -HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->inheritImplicitPermissionStates(Lcom/android/server/permission/access/MutateStateScope;II)V HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/permission/AppIdPermissionPolicy$OnPermissionFlagsChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;,Lcom/android/server/permission/access/permission/PermissionService$OnPermissionFlagsChangedListener; -HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->revokePermissionsOnPackageUpdate(Lcom/android/server/permission/access/MutateStateScope;I)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Number;Ljava/lang/Integer;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->onStorageVolumeMounted(Lcom/android/server/permission/access/MutateStateScope;Ljava/lang/String;Ljava/util/List;Z)V +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->revokePermissionsOnPackageUpdate(Lcom/android/server/permission/access/MutateStateScope;I)V HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->shouldGrantPermissionByProtectionFlags(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z+]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->shouldGrantPermissionBySignature(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; -HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->shouldGrantPrivilegedOrOemPermission(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z+]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->shouldGrantPrivilegedOrOemPermission(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/permission/access/permission/Permission;)Z HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->trimPermissionStates(Lcom/android/server/permission/access/MutateStateScope;I)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Number;Ljava/lang/Integer;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->trimPermissions(Lcom/android/server/permission/access/MutateStateScope;Ljava/lang/String;Lcom/android/server/permission/access/immutable/MutableIndexedSet;)V+]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->updatePermissionFlags(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;II)Z+]Lcom/android/server/permission/access/permission/AppIdPermissionPolicy$OnPermissionFlagsChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;,Lcom/android/server/permission/access/permission/PermissionService$OnPermissionFlagsChangedListener;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->updatePermissionIfDynamic(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/permission/access/permission/Permission;)Lcom/android/server/permission/access/permission/Permission; HSPLcom/android/server/permission/access/permission/DevicePermissionPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/permission/DevicePermissionPolicy$OnDevicePermissionFlagsChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;,Lcom/android/server/permission/access/permission/PermissionService$OnPermissionFlagsChangedListener; +HSPLcom/android/server/permission/access/permission/DevicePermissionPolicy;->trimPermissionStates(Lcom/android/server/permission/access/MutateStateScope;I)V HSPLcom/android/server/permission/access/permission/Permission;-><init>(Landroid/content/pm/PermissionInfo;ZII[IZ)V HSPLcom/android/server/permission/access/permission/Permission;->getGidsForUser(I)[I +HSPLcom/android/server/permission/access/permission/Permission;->getPermissionInfo()Landroid/content/pm/PermissionInfo; +HSPLcom/android/server/permission/access/permission/Permission;->getType()I HSPLcom/android/server/permission/access/permission/PermissionFlags;->fromApiFlags(ILcom/android/server/permission/access/permission/Permission;I)I HSPLcom/android/server/permission/access/permission/PermissionFlags;->isAppOpGranted(I)Z HSPLcom/android/server/permission/access/permission/PermissionFlags;->isPermissionGranted(I)Z HSPLcom/android/server/permission/access/permission/PermissionFlags;->toApiFlags(I)I +HSPLcom/android/server/permission/access/permission/PermissionFlags;->updateFlags(Lcom/android/server/permission/access/permission/Permission;III)I HSPLcom/android/server/permission/access/permission/PermissionService$OnPermissionFlagsChangedListener;->onStateMutated()V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/lang/Iterable;Ljava/util/LinkedHashSet;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedKeyIterator; HSPLcom/android/server/permission/access/permission/PermissionService;->checkPermission(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; HSPLcom/android/server/permission/access/permission/PermissionService;->checkUidPermission(ILjava/lang/String;Ljava/lang/String;)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->enforceCallingOrSelfAnyPermission(Ljava/lang/String;[Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->enforceCallingOrSelfCrossUserPermission(IZZLjava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->generatePermissionInfo(Lcom/android/server/permission/access/permission/Permission;II)Landroid/content/pm/PermissionInfo; -HSPLcom/android/server/permission/access/permission/PermissionService;->getAllowlistedRestrictedPermissions(Ljava/lang/String;II)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/permission/access/permission/PermissionService;->getAllowlistedRestrictedPermissionsUnchecked(III)Ljava/util/ArrayList;+]Ljava/lang/Number;Ljava/lang/Integer; +HPLcom/android/server/permission/access/permission/PermissionService;->getAllowlistedRestrictedPermissions(Ljava/lang/String;II)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HPLcom/android/server/permission/access/permission/PermissionService;->getAllowlistedRestrictedPermissionsUnchecked(III)Ljava/util/ArrayList;+]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/permission/PermissionService;->getGidsForUid(I)[I+]Lcom/android/server/SystemConfig;Lcom/android/server/SystemConfig;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/permission/PermissionService;->getGrantedPermissions(Ljava/lang/String;I)Ljava/util/Set;+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Number;Ljava/lang/Integer; HSPLcom/android/server/permission/access/permission/PermissionService;->getInstalledPermissions(Ljava/lang/String;)Ljava/util/Set; @@ -2209,210 +2258,199 @@ HSPLcom/android/server/permission/access/permission/PermissionService;->getPermi HSPLcom/android/server/permission/access/permission/PermissionService;->isPackageVisibleToUid(Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Ljava/lang/String;II)Z+]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->isPermissionGranted(Lcom/android/server/permission/access/GetStateScope;Lcom/android/server/pm/pkg/PackageState;ILjava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->isPermissionsReviewRequired(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Number;Ljava/lang/Integer; +HSPLcom/android/server/permission/access/permission/PermissionService;->isRootOrSystemOrShellUid(I)Z HSPLcom/android/server/permission/access/permission/PermissionService;->isSinglePermissionGranted(Lcom/android/server/permission/access/GetStateScope;IIZLjava/lang/String;Ljava/lang/String;)Z+]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo; +HSPLcom/android/server/permission/access/permission/PermissionService;->isSystemUidPermissionGranted(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/SystemConfig;Lcom/android/server/SystemConfig; HSPLcom/android/server/permission/access/permission/PermissionService;->isUidInstantApp(Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HSPLcom/android/server/permission/access/permission/PermissionService;->onPackageAdded(Lcom/android/server/pm/pkg/PackageState;ZLcom/android/server/pm/pkg/AndroidPackage;)V -HSPLcom/android/server/permission/access/permission/PermissionService;->queryPermissionsByGroup(Ljava/lang/String;I)Ljava/util/List;+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl; -HSPLcom/android/server/permission/access/permission/PermissionService;->setPermissionFlagsWithPolicy(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Ljava/lang/String;I)Z -HSPLcom/android/server/permission/access/permission/PermissionService;->updatePermissionFlags(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Ljava/lang/String;IIZZZLjava/lang/String;Ljava/lang/String;)V -HSPLcom/android/server/permission/access/permission/PermissionService;->updatePermissionFlags(Ljava/lang/String;Ljava/lang/String;IIZLjava/lang/String;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; +HPLcom/android/server/permission/access/permission/PermissionService;->queryPermissionsByGroup(Ljava/lang/String;I)Ljava/util/List;+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl; +HPLcom/android/server/permission/access/permission/PermissionService;->setPermissionFlagsWithPolicy(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Ljava/lang/String;I)Z +HPLcom/android/server/permission/access/permission/PermissionService;->updatePermissionFlags(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Ljava/lang/String;IIZZZLjava/lang/String;Ljava/lang/String;)V +HPLcom/android/server/permission/access/permission/PermissionService;->updatePermissionFlags(Ljava/lang/String;Ljava/lang/String;IIZLjava/lang/String;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; HSPLcom/android/server/permission/access/util/IntExtensionsKt;->hasBits(II)Z HSPLcom/android/server/permission/jarjar/kotlin/jdk7/AutoCloseableKt;->closeFinally(Ljava/lang/AutoCloseable;Ljava/lang/Throwable;)V+]Ljava/lang/AutoCloseable;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;,Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl; -HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/content/pm/SigningDetails;,Ljava/lang/Integer;,Ljava/lang/String; +HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z+]Ljava/lang/Object;Ljava/lang/Integer;,Ljava/lang/String; HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V HSPLcom/android/server/pm/ApexManager$ApexManagerImpl;->getActivePackageNameForApexModuleName(Ljava/lang/String;)Ljava/lang/String; +HSPLcom/android/server/pm/AppDataHelper$$ExternalSyntheticLambda3;->accept(Ljava/lang/Object;Ljava/lang/Object;)V HSPLcom/android/server/pm/AppDataHelper;->prepareAppData(Lcom/android/server/pm/Installer$Batch;Lcom/android/server/pm/PackageSetting;III)Ljava/util/concurrent/CompletableFuture;+]Lcom/android/server/pm/Installer$Batch;Lcom/android/server/pm/Installer$Batch;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; -HSPLcom/android/server/pm/AppDataHelper;->prepareAppDataAndMigrate(Lcom/android/server/pm/Installer$Batch;Lcom/android/server/pm/pkg/AndroidPackage;IIZ)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; HSPLcom/android/server/pm/AppIdSettingMap;-><init>(Lcom/android/server/pm/AppIdSettingMap;)V HSPLcom/android/server/pm/AppIdSettingMap;->getSetting(I)Lcom/android/server/pm/SettingBase;+]Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;]Lcom/android/server/utils/WatchedSparseArray;Lcom/android/server/utils/WatchedSparseArray; HSPLcom/android/server/pm/AppsFilterBase;-><init>()V -HSPLcom/android/server/pm/AppsFilterBase;->getVisibilityAllowList(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Lcom/android/server/pm/pkg/PackageStateInternal;[ILandroid/util/ArrayMap;)Landroid/util/SparseArray;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HPLcom/android/server/pm/AppsFilterBase;->getVisibilityAllowList(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Lcom/android/server/pm/pkg/PackageStateInternal;[ILandroid/util/ArrayMap;)Landroid/util/SparseArray;+]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/AppsFilterBase;->isForceQueryable(I)Z+]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; HSPLcom/android/server/pm/AppsFilterBase;->isImplicitlyQueryable(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; -HSPLcom/android/server/pm/AppsFilterBase;->isQueryableViaUsesLibrary(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; HSPLcom/android/server/pm/AppsFilterBase;->isQueryableViaUsesPermission(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; HSPLcom/android/server/pm/AppsFilterBase;->isRetainedImplicitlyQueryable(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplication(Lcom/android/server/pm/snapshot/PackageDataSnapshot;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationInternal(Lcom/android/server/pm/Computer;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting;]Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean; +HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationInternal(Lcom/android/server/pm/Computer;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting; HPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationUsingCache(III)Z+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;-><init>(Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;)V HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->isGloballyEnabled()Z -HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->packageIsEnabled(Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->packageIsEnabled(Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->updateEnabledState(Lcom/android/server/pm/pkg/AndroidPackage;)V HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->updatePackageState(Lcom/android/server/pm/pkg/PackageStateInternal;Z)V HSPLcom/android/server/pm/AppsFilterImpl;->addPackage(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/PackageStateInternal;ZZ)V -HSPLcom/android/server/pm/AppsFilterImpl;->addPackageInternal(Lcom/android/server/pm/pkg/PackageStateInternal;Landroid/util/ArrayMap;)Landroid/util/ArraySet;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean; +HSPLcom/android/server/pm/AppsFilterImpl;->addPackageInternal(Lcom/android/server/pm/pkg/PackageStateInternal;Landroid/util/ArrayMap;)Landroid/util/ArraySet;+]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/AppsFilterImpl;->grantImplicitAccess(IIZ)Z+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix;]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; -HSPLcom/android/server/pm/AppsFilterImpl;->pkgInstruments(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/internal/pm/pkg/component/ParsedInstrumentation;Lcom/android/internal/pm/pkg/component/ParsedInstrumentationImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; -HPLcom/android/server/pm/AppsFilterImpl;->updateShouldFilterCacheForPackage(Lcom/android/server/pm/Computer;Ljava/lang/String;Lcom/android/server/pm/pkg/PackageStateInternal;Landroid/util/ArrayMap;[Landroid/content/pm/UserInfo;II)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/AppsFilterImpl;Lcom/android/server/pm/AppsFilterImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; -HPLcom/android/server/pm/AppsFilterImpl;->updateShouldFilterCacheForUser(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/PackageStateInternal;[Landroid/content/pm/UserInfo;Lcom/android/server/pm/pkg/PackageStateInternal;I)V+]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; -HSPLcom/android/server/pm/AppsFilterLocked;->isForceQueryable(I)Z +HSPLcom/android/server/pm/AppsFilterImpl;->pkgInstruments(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HPLcom/android/server/pm/AppsFilterImpl;->updateShouldFilterCacheForPackage(Lcom/android/server/pm/Computer;Ljava/lang/String;Lcom/android/server/pm/pkg/PackageStateInternal;Landroid/util/ArrayMap;[Landroid/content/pm/UserInfo;II)V+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; +HPLcom/android/server/pm/AppsFilterImpl;->updateShouldFilterCacheForUser(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/PackageStateInternal;[Landroid/content/pm/UserInfo;Lcom/android/server/pm/pkg/PackageStateInternal;I)V+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; +HPLcom/android/server/pm/AppsFilterLocked;->isForceQueryable(I)Z HPLcom/android/server/pm/AppsFilterLocked;->isImplicitlyQueryable(II)Z HPLcom/android/server/pm/AppsFilterLocked;->isQueryableViaComponent(II)Z HPLcom/android/server/pm/AppsFilterLocked;->isQueryableViaPackage(II)Z HPLcom/android/server/pm/AppsFilterLocked;->isQueryableViaUsesLibrary(II)Z HPLcom/android/server/pm/AppsFilterLocked;->isQueryableViaUsesPermission(II)Z HPLcom/android/server/pm/AppsFilterLocked;->isRetainedImplicitlyQueryable(II)Z -HSPLcom/android/server/pm/AppsFilterSnapshotImpl;-><init>(Lcom/android/server/pm/AppsFilterImpl;)V+]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl; -HPLcom/android/server/pm/AppsFilterUtils$ParallelComputeComponentVisibility;->getVisibleListOfQueryViaComponents(Lcom/android/server/pm/pkg/PackageStateInternal;)Landroid/util/ArraySet;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/AppsFilterUtils;->canQueryAsInstaller(Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/AppsFilterUtils;->canQueryAsUpdateOwner(Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/pm/AppsFilterSnapshotImpl;-><init>(Lcom/android/server/pm/AppsFilterImpl;)V +HPLcom/android/server/pm/AppsFilterUtils$ParallelComputeComponentVisibility;->getVisibleListOfQueryViaComponents(Lcom/android/server/pm/pkg/PackageStateInternal;)Landroid/util/ArraySet;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/AppsFilterUtils;->canQueryAsInstaller(Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/AppsFilterUtils;->canQueryAsUpdateOwner(Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/AppsFilterUtils;->canQueryViaComponents(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/utils/WatchedArraySet;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; HSPLcom/android/server/pm/AppsFilterUtils;->canQueryViaPackage(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/AppsFilterUtils;->canQueryViaUsesLibrary(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HPLcom/android/server/pm/AppsFilterUtils;->matchesAnyComponents(Landroid/content/Intent;Ljava/util/List;Lcom/android/server/utils/WatchedArraySet;)Z+]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HPLcom/android/server/pm/AppsFilterUtils;->matchesAnyFilter(Landroid/content/Intent;Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/server/utils/WatchedArraySet;)Z+]Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/pm/AppsFilterUtils;->matchesIntentFilter(Landroid/content/Intent;Landroid/content/IntentFilter;Lcom/android/server/utils/WatchedArraySet;)Z+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; +HPLcom/android/server/pm/AppsFilterUtils;->matchesIntentFilter(Landroid/content/Intent;Landroid/content/IntentFilter;Lcom/android/server/utils/WatchedArraySet;)Z+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; HPLcom/android/server/pm/AppsFilterUtils;->matchesPackage(Landroid/content/Intent;Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/utils/WatchedArraySet;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HPLcom/android/server/pm/AppsFilterUtils;->matchesProviders(Ljava/util/Set;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;]Ljava/util/StringTokenizer;Ljava/util/StringTokenizer; +HPLcom/android/server/pm/AppsFilterUtils;->matchesProviders(Ljava/util/Set;Lcom/android/server/pm/pkg/AndroidPackage;)Z+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; HSPLcom/android/server/pm/ComputerEngine$Settings;->getComponentEnabledSetting(Landroid/content/ComponentName;I)I -HSPLcom/android/server/pm/ComputerEngine$Settings;->getCrossProfileIntentResolver(I)Lcom/android/server/pm/CrossProfileIntentResolver;+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings; -HSPLcom/android/server/pm/ComputerEngine$Settings;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings; -HSPLcom/android/server/pm/ComputerEngine$Settings;->getPackages()Landroid/util/ArrayMap;+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine$Settings;->getRenamedPackageLPr(Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings; -HSPLcom/android/server/pm/ComputerEngine$Settings;->getSettingBase(I)Lcom/android/server/pm/SettingBase;+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings; +HSPLcom/android/server/pm/ComputerEngine$Settings;->getCrossProfileIntentResolver(I)Lcom/android/server/pm/CrossProfileIntentResolver; +HSPLcom/android/server/pm/ComputerEngine$Settings;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal; +HSPLcom/android/server/pm/ComputerEngine$Settings;->getPackages()Landroid/util/ArrayMap;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine$Settings;->getRenamedPackageLPr(Ljava/lang/String;)Ljava/lang/String; +HSPLcom/android/server/pm/ComputerEngine$Settings;->getSettingBase(I)Lcom/android/server/pm/SettingBase; HSPLcom/android/server/pm/ComputerEngine$Settings;->isEnabledAndMatch(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;JI)Z+]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;-><init>(Lcom/android/server/pm/PackageManagerService$Snapshot;I)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; -HSPLcom/android/server/pm/ComputerEngine;->addPackageHoldingPermissions(Ljava/util/ArrayList;Lcom/android/server/pm/pkg/PackageStateInternal;[Ljava/lang/String;[ZJI)V+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/pm/ComputerEngine;->applyPostResolutionFilter(Ljava/util/List;Ljava/lang/String;ZIZILandroid/content/Intent;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/AppsFilterSnapshot;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; HSPLcom/android/server/pm/ComputerEngine;->applyPostServiceResolutionFilter(Ljava/util/List;Ljava/lang/String;II)Ljava/util/List;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/pm/AppsFilterSnapshot;Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->canQueryPackage(ILjava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/AppsFilterSnapshot;Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HPLcom/android/server/pm/ComputerEngine;->canQueryPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/AppsFilterSnapshot;Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;->canViewInstantApps(II)Z+]Landroid/content/Context;Landroid/app/ContextImpl; -HSPLcom/android/server/pm/ComputerEngine;->checkSignatures(Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->checkSignatures(Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/ComputerEngine;->checkUidPermission(Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl; -HPLcom/android/server/pm/ComputerEngine;->createForwardingResolveInfoUnchecked(Lcom/android/server/pm/WatchedIntentFilter;II)Landroid/content/pm/ResolveInfo;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/WatchedIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter; HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserOrProfilePermission(IIZZLjava/lang/String;)V+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZLjava/lang/String;)V+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZZLjava/lang/String;)V+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector; -HSPLcom/android/server/pm/ComputerEngine;->filterAppAccess(Ljava/lang/String;IIZ)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZLjava/lang/String;)V +HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZZLjava/lang/String;)V+]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector; +HSPLcom/android/server/pm/ComputerEngine;->filterAppAccess(Ljava/lang/String;IIZ)Z HSPLcom/android/server/pm/ComputerEngine;->filterIfNotSystemUser(Ljava/util/List;I)Ljava/util/List;+]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->filterSdkLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z+]Landroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/ComputerEngine;->filterSharedLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->filterStaticSharedLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z+]Landroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/ComputerEngine;->generatePackageInfo(Lcom/android/server/pm/pkg/PackageStateInternal;JI)Landroid/content/pm/PackageInfo;+]Landroid/content/pm/PackageInfo;Landroid/content/pm/PackageInfo;]Lcom/android/server/pm/ApexManager;Lcom/android/server/pm/ApexManager$ApexManagerImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/permission/LegacyPermissionDataProvider;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/ComputerEngine;->filterSdkLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->filterSharedLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z +HSPLcom/android/server/pm/ComputerEngine;->filterStaticSharedLibPackage(Lcom/android/server/pm/pkg/PackageStateInternal;IIJ)Z+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->generatePackageInfo(Lcom/android/server/pm/pkg/PackageStateInternal;JI)Landroid/content/pm/PackageInfo;+]Landroid/content/pm/PackageInfo;Landroid/content/pm/PackageInfo;]Lcom/android/server/pm/ApexManager;Lcom/android/server/pm/ApexManager$ApexManagerImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/permission/LegacyPermissionDataProvider;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/ComputerEngine;->getActivityInfoInternal(Landroid/content/ComponentName;JII)Landroid/content/pm/ActivityInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getActivityInfoInternalBody(Landroid/content/ComponentName;JII)Landroid/content/pm/ActivityInfo;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolver;,Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getActivityInfoInternalBody(Landroid/content/ComponentName;JII)Landroid/content/pm/ActivityInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/ComputerEngine;->getApplicationEnabledSetting(Ljava/lang/String;I)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo; HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfoInternal(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfoInternalBody(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/lang/Object;Ljava/lang/String; -HPLcom/android/server/pm/ComputerEngine;->getBlockUninstallForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSetting(Landroid/content/ComponentName;II)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSettingInternal(Landroid/content/ComponentName;II)I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/ComputerEngine;->getDeclaredSharedLibraries(Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;]Landroid/content/pm/VersionedPackage;Landroid/content/pm/VersionedPackage;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedLongSparseArray;Lcom/android/server/utils/WatchedLongSparseArray;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfoInternalBody(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HPLcom/android/server/pm/ComputerEngine;->getBlockUninstallForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; +HPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSetting(Landroid/content/ComponentName;II)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSettingInternal(Landroid/content/ComponentName;II)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/ComputerEngine;->getComponentResolver()Lcom/android/server/pm/resolution/ComponentResolverApi; +HPLcom/android/server/pm/ComputerEngine;->getDeclaredSharedLibraries(Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedLongSparseArray;Lcom/android/server/utils/WatchedLongSparseArray; HSPLcom/android/server/pm/ComputerEngine;->getInstallSource(Ljava/lang/String;II)Lcom/android/server/pm/InstallSource;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;->getInstallSourceInfo(Ljava/lang/String;I)Landroid/content/pm/InstallSourceInfo;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->getInstalledApplications(JIIZ)Ljava/util/List;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; +HSPLcom/android/server/pm/ComputerEngine;->getInstalledApplications(JIIZ)Ljava/util/List;+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; HSPLcom/android/server/pm/ComputerEngine;->getInstalledPackages(JI)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getInstalledPackagesBody(JII)Landroid/content/pm/ParceledListSlice;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1; +HSPLcom/android/server/pm/ComputerEngine;->getInstalledPackagesBody(JII)Landroid/content/pm/ParceledListSlice;+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1; HPLcom/android/server/pm/ComputerEngine;->getInstallerPackageName(Ljava/lang/String;I)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; HSPLcom/android/server/pm/ComputerEngine;->getInstantAppPackageName(I)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/ComputerEngine;->getMatchingCrossProfileIntentFilters(Landroid/content/Intent;Ljava/lang/String;I)Ljava/util/List;+]Lcom/android/server/IntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; -HSPLcom/android/server/pm/ComputerEngine;->getNameForUid(I)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal$HotwordDetectionServiceProvider;Lcom/android/server/voiceinteraction/HotwordDetectionConnection$2$$ExternalSyntheticLambda0;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/ComputerEngine;->getPackage(I)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getNameForUid(I)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->getPackage(I)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/ComputerEngine;->getPackageGids(Ljava/lang/String;JI)[I+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/permission/LegacyPermissionDataProvider;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/ComputerEngine;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo; HSPLcom/android/server/pm/ComputerEngine;->getPackageInfoInternal(Ljava/lang/String;JJII)Landroid/content/pm/PackageInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getPackageInfoInternalBody(Ljava/lang/String;JJII)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->getPackageStartability(ZLjava/lang/String;II)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->getPackageStateFiltered(Ljava/lang/String;II)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->getPackageStateForInstalledAndFiltered(Ljava/lang/String;II)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->getPackageInfoInternalBody(Ljava/lang/String;JJII)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getPackageStartability(ZLjava/lang/String;II)I+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getPackageStateFiltered(Ljava/lang/String;II)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; +HSPLcom/android/server/pm/ComputerEngine;->getPackageStateForInstalledAndFiltered(Ljava/lang/String;II)Lcom/android/server/pm/pkg/PackageStateInternal; HSPLcom/android/server/pm/ComputerEngine;->getPackageStateInternal(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->getPackageStateInternal(Ljava/lang/String;I)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/ComputerEngine;->getPackageStateInternal(Ljava/lang/String;I)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; HSPLcom/android/server/pm/ComputerEngine;->getPackageStates()Landroid/util/ArrayMap;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings; HSPLcom/android/server/pm/ComputerEngine;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getPackageUidInternal(Ljava/lang/String;JII)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUid(I)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/ComputerEngine;->getPackageUidInternal(Ljava/lang/String;JII)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUid(I)[Ljava/lang/String; HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUidInternal(II)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUidInternalBody(IIIZ)[Ljava/lang/String;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/ComputerEngine;->getPackagesHoldingPermissions([Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HSPLcom/android/server/pm/ComputerEngine;->getPackagesUsingSharedLibrary(Landroid/content/pm/SharedLibraryInfo;JII)Landroid/util/Pair;+]Landroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUidInternalBody(IIIZ)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/ComputerEngine;->getPackagesUsingSharedLibrary(Landroid/content/pm/SharedLibraryInfo;JII)Landroid/util/Pair;+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;->getProcessesForUid(I)Landroid/util/ArrayMap;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/pm/ComputerEngine;->getReceiverInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ActivityInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot; +HSPLcom/android/server/pm/ComputerEngine;->getReceiverInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ActivityInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot; HSPLcom/android/server/pm/ComputerEngine;->getServiceInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ServiceInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->getServiceInfoBody(Landroid/content/ComponentName;JII)Landroid/content/pm/ServiceInfo;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->getSharedUserPackagesForPackage(Ljava/lang/String;I)[Ljava/lang/String;+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting; +HSPLcom/android/server/pm/ComputerEngine;->getServiceInfoBody(Landroid/content/ComponentName;JII)Landroid/content/pm/ServiceInfo;+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->getSharedUserPackagesForPackage(Ljava/lang/String;I)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting; HSPLcom/android/server/pm/ComputerEngine;->getSigningDetails(I)Landroid/content/pm/SigningDetails;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/ComputerEngine;->getTargetSdkVersion(Ljava/lang/String;)I+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/ComputerEngine;->getUidTargetSdkVersion(I)I+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/ComputerEngine;->getUserStateOrDefaultForUser(Ljava/lang/String;I)Lcom/android/server/pm/pkg/PackageUserStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/ComputerEngine;->getTargetSdkVersion(Ljava/lang/String;)I+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->getUidTargetSdkVersion(I)I+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->getUserStateOrDefaultForUser(Ljava/lang/String;I)Lcom/android/server/pm/pkg/PackageUserStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;->getVersion()I -HSPLcom/android/server/pm/ComputerEngine;->hasCrossUserPermission(IIIZZ)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->hasCrossUserPermission(IIIZZ)Z HSPLcom/android/server/pm/ComputerEngine;->hasNonNegativePriority(Ljava/util/List;)Z+]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/pm/ComputerEngine;->hasSigningCertificate(Ljava/lang/String;[BI)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/ComputerEngine;->instantAppInstallerActivity()Landroid/content/pm/ActivityInfo; HSPLcom/android/server/pm/ComputerEngine;->isApexPackage(Ljava/lang/String;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->isCallerInstallerOfRecord(Lcom/android/server/pm/pkg/AndroidPackage;I)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/ComputerEngine;->isCallerSameApp(Ljava/lang/String;IZ)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->isImplicitImageCaptureIntentAndNotSetByDpc(Landroid/content/Intent;ILjava/lang/String;J)Z+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/ComputerEngine;->isInstantApp(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->isInstantAppInternal(Ljava/lang/String;II)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->isInstantAppInternalBody(Ljava/lang/String;II)Z+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/InstantAppRegistry;Lcom/android/server/pm/InstantAppRegistry;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/ComputerEngine;->isImplicitImageCaptureIntentAndNotSetByDpc(Landroid/content/Intent;ILjava/lang/String;J)Z+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/pm/ComputerEngine;->isInstantApp(Ljava/lang/String;I)Z +HSPLcom/android/server/pm/ComputerEngine;->isInstantAppInternal(Ljava/lang/String;II)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->isInstantAppInternalBody(Ljava/lang/String;II)Z+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/InstantAppRegistry;Lcom/android/server/pm/InstantAppRegistry;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/ComputerEngine;->isInstantAppResolutionAllowed(Landroid/content/Intent;Ljava/util/List;IZJ)Z+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$OpaqueUri;,Landroid/net/Uri$StringUri;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->isPackageAvailable(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/ComputerEngine;->isPackageSuspendedForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/ComputerEngine;->isKnownIsolatedComputeApp(I)Z+]Lcom/android/server/ondeviceintelligence/OnDeviceIntelligenceManagerInternal;Lcom/android/server/ondeviceintelligence/OnDeviceIntelligenceManagerService$$ExternalSyntheticLambda2;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal$HotwordDetectionServiceProvider;Lcom/android/server/voiceinteraction/HotwordDetectionConnection$2$$ExternalSyntheticLambda0;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl; +HSPLcom/android/server/pm/ComputerEngine;->isPackageAvailable(Ljava/lang/String;I)Z+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/ComputerEngine;->isPackageSuspendedForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/ComputerEngine;->isRecentsAccessingChildProfiles(II)Z+]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService; -HSPLcom/android/server/pm/ComputerEngine;->queryContentProviders(Ljava/lang/String;IJLjava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ComputerEngine;->queryContentProviders(Ljava/lang/String;IJLjava/lang/String;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/ComputerEngine;->queryIntentActivitiesInternal(Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List; -HSPLcom/android/server/pm/ComputerEngine;->queryIntentActivitiesInternal(Landroid/content/Intent;Ljava/lang/String;JJIIZZ)Ljava/util/List;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->queryIntentActivitiesInternalBody(Landroid/content/Intent;Ljava/lang/String;JIIZZLjava/lang/String;Ljava/lang/String;)Lcom/android/server/pm/QueryIntentActivitiesResult;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolver;,Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->queryIntentServicesInternal(Landroid/content/Intent;Ljava/lang/String;JIIZ)Ljava/util/List;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ComputerEngine;->queryIntentServicesInternalBody(Landroid/content/Intent;Ljava/lang/String;JIILjava/lang/String;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/ComputerEngine;->resolveContentProvider(Ljava/lang/String;JII)Landroid/content/pm/ProviderInfo;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService; +HSPLcom/android/server/pm/ComputerEngine;->queryIntentActivitiesInternal(Landroid/content/Intent;Ljava/lang/String;JJIIIZZ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ComputerEngine;->queryIntentActivitiesInternalBody(Landroid/content/Intent;Ljava/lang/String;JIIZZLjava/lang/String;Ljava/lang/String;)Lcom/android/server/pm/QueryIntentActivitiesResult;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolver;,Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ComputerEngine;->queryIntentServicesInternal(Landroid/content/Intent;Ljava/lang/String;JIIIZZ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/ComputerEngine;->queryIntentServicesInternalBody(Landroid/content/Intent;Ljava/lang/String;JIILjava/lang/String;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/ComputerEngine;->resolveContentProvider(Ljava/lang/String;JII)Landroid/content/pm/ProviderInfo;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService; HSPLcom/android/server/pm/ComputerEngine;->resolveExternalPackageName(Lcom/android/server/pm/pkg/AndroidPackage;)Ljava/lang/String;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/pm/ComputerEngine;->resolveInternalPackageName(Ljava/lang/String;J)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->resolveInternalPackageNameInternalLocked(Ljava/lang/String;JI)Ljava/lang/String;+]Landroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;]Landroid/content/pm/VersionedPackage;Landroid/content/pm/VersionedPackage;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/SharedLibrariesRead;Lcom/android/server/pm/SharedLibrariesImpl;]Lcom/android/server/utils/WatchedLongSparseArray;Lcom/android/server/utils/WatchedLongSparseArray; -HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/SharedUserSetting;II)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting; -HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/pkg/PackageStateInternal;II)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/pkg/PackageStateInternal;ILandroid/content/ComponentName;IIZ)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/ComputerEngine;->resolveInternalPackageNameInternalLocked(Ljava/lang/String;JI)Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/SharedLibrariesRead;Lcom/android/server/pm/SharedLibrariesImpl;]Lcom/android/server/utils/WatchedLongSparseArray;Lcom/android/server/utils/WatchedLongSparseArray; +HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/SharedUserSetting;II)Z +HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/pkg/PackageStateInternal;II)Z +HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/pkg/PackageStateInternal;ILandroid/content/ComponentName;IIZ)Z HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplication(Lcom/android/server/pm/pkg/PackageStateInternal;ILandroid/content/ComponentName;IIZZ)Z+]Lcom/android/server/pm/AppsFilterSnapshot;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/InstantAppRegistry;Lcom/android/server/pm/InstantAppRegistry;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplicationIncludingUninstalled(Lcom/android/server/pm/SharedUserSetting;II)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplicationIncludingUninstalled(Lcom/android/server/pm/pkg/PackageStateInternal;II)Z+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplicationIncludingUninstalled(Lcom/android/server/pm/SharedUserSetting;II)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/ComputerEngine;->shouldFilterApplicationIncludingUninstalled(Lcom/android/server/pm/pkg/PackageStateInternal;II)Z HSPLcom/android/server/pm/ComputerEngine;->updateFlags(JI)J+]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; -HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForComponent(JI)J+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; -HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForPackage(JI)J+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForResolve(JIIZZ)J+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForPackage(JI)J+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForResolve(JIIZZ)J HSPLcom/android/server/pm/ComputerEngine;->updateFlagsForResolve(JIIZZZ)J+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; HSPLcom/android/server/pm/ComputerEngine;->use()Lcom/android/server/pm/Computer; -HPLcom/android/server/pm/CrossProfileAppsServiceImpl;->lambda$getTargetUserProfilesUnchecked$3(ILjava/lang/String;)Ljava/util/List;+]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/pm/CrossProfileAppsServiceImpl$Injector;Lcom/android/server/pm/CrossProfileAppsServiceImpl$InjectorImpl;]Lcom/android/server/pm/CrossProfileAppsServiceImpl;Lcom/android/server/pm/CrossProfileAppsServiceImpl;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/CrossProfileIntentFilter;->snapshot()Lcom/android/server/pm/CrossProfileIntentFilter; -HSPLcom/android/server/pm/CrossProfileIntentResolver;->getIntentFilter(Lcom/android/server/pm/CrossProfileIntentFilter;)Landroid/content/IntentFilter;+]Lcom/android/server/pm/WatchedIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter; -HSPLcom/android/server/pm/CrossProfileIntentResolver;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter;+]Lcom/android/server/pm/CrossProfileIntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver; -HSPLcom/android/server/pm/CrossProfileIntentResolver;->isPackageForFilter(Ljava/lang/String;Lcom/android/server/pm/CrossProfileIntentFilter;)Z -HSPLcom/android/server/pm/CrossProfileIntentResolver;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z+]Lcom/android/server/pm/CrossProfileIntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver; -HSPLcom/android/server/pm/CrossProfileIntentResolver;->snapshot(Lcom/android/server/pm/CrossProfileIntentFilter;)Lcom/android/server/pm/CrossProfileIntentFilter;+]Lcom/android/server/pm/CrossProfileIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter; -HSPLcom/android/server/pm/CrossProfileIntentResolver;->snapshot(Ljava/lang/Object;)Ljava/lang/Object;+]Lcom/android/server/pm/CrossProfileIntentResolver;Lcom/android/server/pm/CrossProfileIntentResolver; HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;-><init>(Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/DefaultAppProvider;Landroid/content/Context;)V -HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->combineFilterAndCreateQueryActivitiesResponse(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJIIZLjava/util/List;Ljava/util/List;ZZZLjava/util/function/Function;)Lcom/android/server/pm/QueryIntentActivitiesResult;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->combineFilterAndCreateQueryActivitiesResponse(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJIIZLjava/util/List;Ljava/util/List;ZZZLjava/util/function/Function;)Lcom/android/server/pm/QueryIntentActivitiesResult;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/pm/CrossProfileIntentResolverEngine;->filterCandidatesWithDomainPreferredActivitiesLPrBody(Lcom/android/server/pm/Computer;Landroid/content/Intent;JLjava/util/List;Ljava/util/List;IZZZLjava/util/function/Function;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/DefaultAppProvider;Lcom/android/server/pm/DefaultAppProvider;]Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/verify/domain/DomainVerificationService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveInfoFromCrossProfileDomainInfo(Ljava/util/List;)Ljava/util/List;+]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntent(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IJLjava/lang/String;ZZLjava/util/function/Function;)Ljava/util/List;+]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine; -HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntentInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IIJLjava/lang/String;ZZLjava/util/function/Function;Ljava/util/Set;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentResolverEngine;Lcom/android/server/pm/CrossProfileIntentResolverEngine;]Lcom/android/server/pm/CrossProfileResolver;Lcom/android/server/pm/DefaultCrossProfileResolver;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Ljava/util/HashSet; +HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntent(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IJLjava/lang/String;ZZLjava/util/function/Function;)Ljava/util/List; +HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntentInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IIJLjava/lang/String;ZZLjava/util/function/Function;Ljava/util/Set;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileResolver;Lcom/android/server/pm/DefaultCrossProfileResolver;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Ljava/util/HashSet; HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->shouldSkipCurrentProfile(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/DefaultCrossProfileResolver;->createForwardingResolveInfo(Lcom/android/server/pm/Computer;Lcom/android/server/pm/CrossProfileIntentFilter;Landroid/content/Intent;Ljava/lang/String;JILjava/util/function/Function;)Lcom/android/server/pm/CrossProfileDomainInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolver;,Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/verify/domain/DomainVerificationService;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Function;Lcom/android/server/pm/ComputerEngine$$ExternalSyntheticLambda0; -HSPLcom/android/server/pm/DexOptHelper;->getDexUseManagerLocal()Lcom/android/server/art/DexUseManagerLocal; -HSPLcom/android/server/pm/GentleUpdateHelper;->onUidImportance(II)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/pm/IPackageManagerBase;->checkPermission(Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; +HPLcom/android/server/pm/DexOptHelper$DexoptDoneHandler;->onDexoptDone(Lcom/android/server/art/model/DexoptResult;)V+]Lcom/android/server/art/model/DexoptResult$DexContainerFileDexoptResult;Lcom/android/server/art/model/AutoValue_DexoptResult_DexContainerFileDexoptResult;]Lcom/android/server/art/model/DexoptResult$PackageDexoptResult;Lcom/android/server/art/model/AutoValue_DexoptResult_PackageDexoptResult;]Lcom/android/server/art/model/DexoptResult;Lcom/android/server/art/model/AutoValue_DexoptResult;]Lcom/android/server/pm/AbstractStatsBase;Lcom/android/server/pm/PackageUsage;]Lcom/android/server/pm/CompilerStats$PackageStats;Lcom/android/server/pm/CompilerStats$PackageStats;]Lcom/android/server/pm/CompilerStats;Lcom/android/server/pm/CompilerStats;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/GentleUpdateHelper;->onUidImportance(II)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->checkUidPermission(Ljava/lang/String;I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HPLcom/android/server/pm/IPackageManagerBase;->getBlockUninstallForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; -HSPLcom/android/server/pm/IPackageManagerBase;->getComponentEnabledSetting(Landroid/content/ComponentName;I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; +HPLcom/android/server/pm/IPackageManagerBase;->getComponentEnabledSetting(Landroid/content/ComponentName;I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getInstallSourceInfo(Ljava/lang/String;I)Landroid/content/pm/InstallSourceInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getNameForUid(I)Ljava/lang/String;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getPackageInfo(Ljava/lang/String;JI)Landroid/content/pm/PackageInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getPackagesForUid(I)[Ljava/lang/String;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; +HSPLcom/android/server/pm/IPackageManagerBase;->getPropertyAsUser(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/PackageManager$Property;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/PackageProperty;Lcom/android/server/pm/PackageProperty; HSPLcom/android/server/pm/IPackageManagerBase;->getServiceInfo(Landroid/content/ComponentName;JI)Landroid/content/pm/ServiceInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->getTargetSdkVersion(Ljava/lang/String;)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->hasSystemFeature(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; HSPLcom/android/server/pm/IPackageManagerBase;->isInstantApp(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->isPackageAvailable(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; -HSPLcom/android/server/pm/IPackageManagerBase;->isPackageSuspendedForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/IPackageManagerBase;->isPackageSuspendedForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->queryIntentActivities(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; -HSPLcom/android/server/pm/IPackageManagerBase;->queryIntentReceivers(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/ResolveIntentHelper;Lcom/android/server/pm/ResolveIntentHelper; +HSPLcom/android/server/pm/IPackageManagerBase;->queryIntentReceivers(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->queryIntentServices(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->resolveContentProvider(Ljava/lang/String;JI)Landroid/content/pm/ProviderInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; -HSPLcom/android/server/pm/IPackageManagerBase;->resolveIntent(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/ResolveIntentHelper;Lcom/android/server/pm/ResolveIntentHelper; +HSPLcom/android/server/pm/IPackageManagerBase;->resolveIntent(Landroid/content/Intent;Ljava/lang/String;JI)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; HSPLcom/android/server/pm/IPackageManagerBase;->snapshot()Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; HSPLcom/android/server/pm/InstallPackageHelper;->addForInitLI(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IILandroid/os/UserHandle;Lcom/android/server/pm/ApexManager$ActiveApexInfo;)Lcom/android/server/pm/pkg/AndroidPackage; HSPLcom/android/server/pm/InstallPackageHelper;->assertPackageIsValid(Lcom/android/server/pm/pkg/AndroidPackage;II)V @@ -2420,207 +2458,217 @@ HSPLcom/android/server/pm/InstallPackageHelper;->commitPackageSettings(Lcom/andr HSPLcom/android/server/pm/InstallPackageHelper;->commitReconciledScanResultLocked(Lcom/android/server/pm/ReconciledPackage;[I)Lcom/android/server/pm/pkg/AndroidPackage; HSPLcom/android/server/pm/InstallPackageHelper;->installPackagesFromDir(Ljava/io/File;IILcom/android/internal/pm/parsing/PackageParser2;Ljava/util/concurrent/ExecutorService;Lcom/android/server/pm/ApexManager$ActiveApexInfo;)V HSPLcom/android/server/pm/InstallPackageHelper;->prepareInitialScanRequest(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IILandroid/os/UserHandle;Ljava/lang/String;)Lcom/android/server/pm/ScanRequest; +HSPLcom/android/server/pm/InstallPackageHelper;->scanPackageForInitLI(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IILandroid/os/UserHandle;)Landroid/util/Pair; HSPLcom/android/server/pm/InstallPackageHelper;->scanPackageNewLI(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IIJLandroid/os/UserHandle;Ljava/lang/String;)Lcom/android/server/pm/ScanResult; -HSPLcom/android/server/pm/InstallPackageHelper;->scanSystemPackageLI(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IILandroid/os/UserHandle;)Landroid/util/Pair; HSPLcom/android/server/pm/InstallRequest;-><init>(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;IILandroid/os/UserHandle;Lcom/android/server/pm/ScanResult;Lcom/android/server/pm/PackageSetting;)V HSPLcom/android/server/pm/Installer;->checkBeforeRemote()Z+]Ljava/util/concurrent/CountDownLatch;Ljava/util/concurrent/CountDownLatch; -HPLcom/android/server/pm/Installer;->getAppSize(Ljava/lang/String;[Ljava/lang/String;III[J[Ljava/lang/String;Landroid/content/pm/PackageStats;)V+]Landroid/os/IInstalld;Landroid/os/IInstalld$Stub$Proxy;]Lcom/android/server/pm/Installer;Lcom/android/server/pm/Installer;]Ldalvik/system/BlockGuard$VmPolicy;Landroid/os/StrictMode$5;,Ldalvik/system/BlockGuard$2; +HPLcom/android/server/pm/Installer;->getAppSize(Ljava/lang/String;[Ljava/lang/String;III[J[Ljava/lang/String;Landroid/content/pm/PackageStats;)V+]Landroid/os/IInstalld;Landroid/os/IInstalld$Stub$Proxy;]Ldalvik/system/BlockGuard$VmPolicy;Landroid/os/StrictMode$5; HSPLcom/android/server/pm/InstantAppRegistry;->snapshot()Lcom/android/server/pm/InstantAppRegistry; -HSPLcom/android/server/pm/InstructionSets;->getDexCodeInstructionSet(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/InstructionSets;->getDexCodeInstructionSet(Ljava/lang/String;)Ljava/lang/String; HSPLcom/android/server/pm/KeySetManagerService;-><init>(Lcom/android/server/pm/KeySetManagerService;Lcom/android/server/utils/WatchedArrayMap;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; HSPLcom/android/server/pm/KeySetManagerService;->addDefinedKeySetsToPackageLPw(Lcom/android/server/pm/PackageSetting;Ljava/util/Map;)V HSPLcom/android/server/pm/KeySetManagerService;->addScannedPackageLPw(Lcom/android/server/pm/pkg/AndroidPackage;)V HSPLcom/android/server/pm/KeySetManagerService;->assertScannedPackageValid(Lcom/android/server/pm/pkg/AndroidPackage;)V HSPLcom/android/server/pm/KeySetManagerService;->getPublicKeysFromKeySetLPr(J)Landroid/util/ArraySet; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl$$ExternalSyntheticLambda2;->getOrThrow()Ljava/lang/Object; HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl$MyPackageMonitor;->onShortcutChangedInner(Ljava/lang/String;I)V+]Landroid/content/pm/IOnAppsChangedListener;Landroid/content/pm/IOnAppsChangedListener$Stub$Proxy;]Landroid/content/pm/ShortcutServiceInternal;Lcom/android/server/pm/ShortcutService$LocalService;]Landroid/os/RemoteCallbackList;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl$PackageCallbackList;]Ljava/lang/RuntimeException;Ljava/lang/IllegalStateException; HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->canAccessProfile(ILjava/lang/String;)Z+]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl; -HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getLauncherActivities(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/LauncherActivityInfoInternal;Landroid/content/pm/LauncherActivityInfoInternal;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashSet;Ljava/util/HashSet;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getShortcuts(Ljava/lang/String;Landroid/content/pm/ShortcutQueryWrapper;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/content/pm/ShortcutServiceInternal;Lcom/android/server/pm/ShortcutService$LocalService;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->generateLauncherActivitiesForArchivedApp(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getApplicationInfoForArchivedApp(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List;+]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getLauncherActivities(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/LauncherActivityInfoInternal;Landroid/content/pm/LauncherActivityInfoInternal;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->injectBinderCallingUid()I -HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryActivitiesForUser(Ljava/lang/String;Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl; -HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryIntentLauncherActivities(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryActivitiesForUser(Ljava/lang/String;Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl; +HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryIntentLauncherActivities(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/PackageAbiHelper$NativeLibraryPaths;->applyTo(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;)V HSPLcom/android/server/pm/PackageAbiHelperImpl;->calculateBundledApkRoot(Ljava/lang/String;)Ljava/lang/String; HSPLcom/android/server/pm/PackageAbiHelperImpl;->deriveNativeLibraryPaths(Lcom/android/server/pm/PackageAbiHelper$Abis;Ljava/io/File;Ljava/lang/String;Ljava/lang/String;ZZ)Lcom/android/server/pm/PackageAbiHelper$NativeLibraryPaths; HSPLcom/android/server/pm/PackageAbiHelperImpl;->derivePackageAbi(Lcom/android/server/pm/pkg/AndroidPackage;ZZLjava/lang/String;Ljava/io/File;)Landroid/util/Pair; +HSPLcom/android/server/pm/PackageAbiHelperImpl;->getBundledAppAbi(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/pm/PackageAbiHelper$Abis; HSPLcom/android/server/pm/PackageArchiver;->isArchived(Lcom/android/server/pm/pkg/PackageUserState;)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; HPLcom/android/server/pm/PackageInstallerSession;->generateInfoInternal(ZZ)Landroid/content/pm/PackageInstaller$SessionInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageInstaller$SessionParams;Landroid/content/pm/PackageInstaller$SessionParams;]Lcom/android/server/pm/PackageInstallerSession;Lcom/android/server/pm/PackageInstallerSession;]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/PackageInstallerSession;->write(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/io/File;)V+]Landroid/content/pm/Checksum;Landroid/content/pm/Checksum;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;]Lcom/android/server/pm/PackageInstallerSession;Lcom/android/server/pm/PackageInstallerSession;]Ljava/io/File;Ljava/io/File; +HSPLcom/android/server/pm/PackageInstallerSession;->write(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/io/File;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;]Lcom/android/server/pm/PackageInstallerSession;Lcom/android/server/pm/PackageInstallerSession;]Ljava/io/File;Ljava/io/File; +HSPLcom/android/server/pm/PackageInstallerSession;->writeAutoRevokePermissionsMode(Lcom/android/modules/utils/TypedXmlSerializer;I)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/pm/PackageKeySetData;-><init>()V HSPLcom/android/server/pm/PackageKeySetData;-><init>(Lcom/android/server/pm/PackageKeySetData;)V -HPLcom/android/server/pm/PackageManagerInternalBase;->canQueryPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->filterAppAccess(Ljava/lang/String;IIZ)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getApplicationInfo(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getInstantAppPackageName(I)Ljava/lang/String;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackage(I)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageStateInternal(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->getUidTargetSdkVersion(I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZ)V+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZZ)V+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; -HSPLcom/android/server/pm/PackageManagerInternalBase;->isInstantApp(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; -HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageEphemeral(ILjava/lang/String;)Z+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageFrozen(Ljava/lang/String;II)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; +HPLcom/android/server/pm/PackageManagerInternalBase;->canQueryPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerInternalBase;->filterAppAccess(Ljava/lang/String;IIZ)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getApplicationInfo(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getInstantAppPackageName(I)Ljava/lang/String;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackage(I)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageStateInternal(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerInternalBase;->getUidTargetSdkVersion(I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZ)V +HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZZ)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; +HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageEphemeral(ILjava/lang/String;)Z+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageFrozen(Ljava/lang/String;II)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageSuspended(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HSPLcom/android/server/pm/PackageManagerInternalBase;->isPermissionsReviewRequired(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->notifyComponentUsed(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; -HSPLcom/android/server/pm/PackageManagerInternalBase;->queryIntentReceivers(Landroid/content/Intent;Ljava/lang/String;JIIZ)Ljava/util/List;+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerInternalBase;->resolveService(Landroid/content/Intent;Ljava/lang/String;JII)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/ResolveIntentHelper;Lcom/android/server/pm/ResolveIntentHelper; +HSPLcom/android/server/pm/PackageManagerInternalBase;->notifyComponentUsed(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; +HSPLcom/android/server/pm/PackageManagerInternalBase;->queryIntentReceivers(Landroid/content/Intent;Ljava/lang/String;JIIIZ)Ljava/util/List;+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; +HSPLcom/android/server/pm/PackageManagerInternalBase;->resolveService(Landroid/content/Intent;Ljava/lang/String;JIII)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; HSPLcom/android/server/pm/PackageManagerInternalBase;->snapshot()Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; -HSPLcom/android/server/pm/PackageManagerInternalBase;->snapshot()Lcom/android/server/pm/snapshot/PackageDataSnapshot;+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda23;->produce(Ljava/lang/Class;)Ljava/lang/Object; -HSPLcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda55;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/pm/PackageManagerInternalBase;->snapshot()Lcom/android/server/pm/snapshot/PackageDataSnapshot; +HSPLcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda52;->accept(Ljava/lang/Object;)V HSPLcom/android/server/pm/PackageManagerService$1;->onChange(Lcom/android/server/utils/Watchable;)V -HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->isProtectedBroadcast(Ljava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/lang/String;Ljava/lang/String; -HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->notifyDexLoad(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)V+]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/art/DexUseManagerLocal;Lcom/android/server/art/DexUseManagerLocal;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->isProtectedBroadcast(Ljava/lang/String;)Z +HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->notifyDexLoad(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)V+]Lcom/android/server/art/DexUseManagerLocal;Lcom/android/server/art/DexUseManagerLocal;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z HSPLcom/android/server/pm/PackageManagerService$IPackageManagerImpl;->setComponentEnabledSetting(Landroid/content/ComponentName;IIILjava/lang/String;)V+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->getIncrementalStatesInfo(Ljava/lang/String;II)Landroid/content/pm/IncrementalStatesInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->getPermissionManager()Lcom/android/server/pm/permission/PermissionManagerServiceInternal; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->getResolveIntentHelper()Lcom/android/server/pm/ResolveIntentHelper; -HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->getSuspendPackageHelper()Lcom/android/server/pm/SuspendPackageHelper; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->hasSignatureCapability(III)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->isSameApp(Ljava/lang/String;II)Z+]Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->isSameApp(Ljava/lang/String;JII)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->isSameApp(Ljava/lang/String;JII)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; HSPLcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;->notifyPackageUse(Ljava/lang/String;I)V HSPLcom/android/server/pm/PackageManagerService$Snapshot;-><init>(Lcom/android/server/pm/PackageManagerService;I)V+]Lcom/android/server/pm/InstantAppRegistry;Lcom/android/server/pm/InstantAppRegistry;]Lcom/android/server/pm/resolution/ComponentResolver;Lcom/android/server/pm/resolution/ComponentResolver;]Lcom/android/server/utils/WatchedSparseBooleanArray;Lcom/android/server/utils/WatchedSparseBooleanArray; -HSPLcom/android/server/pm/PackageManagerService;->checkPackageStartable(Lcom/android/server/pm/Computer;Ljava/lang/String;I)V+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/PackageManagerService;->checkPermission(Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl; -HSPLcom/android/server/pm/PackageManagerService;->forEachPackageState(Landroid/util/ArrayMap;Ljava/util/function/Consumer;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/function/Consumer;megamorphic_types +HSPLcom/android/server/pm/PackageManagerService;->boostPriorityForPackageManagerTracedLockedSection()V +HSPLcom/android/server/pm/PackageManagerService;->checkPackageStartable(Lcom/android/server/pm/Computer;Ljava/lang/String;I)V+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/PackageManagerService;->forEachPackageState(Landroid/util/ArrayMap;Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;Lcom/android/server/BinaryTransparencyService$BinaryTransparencyServiceImpl$$ExternalSyntheticLambda0;,Lcom/android/server/pm/DexOptHelper$$ExternalSyntheticLambda8;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda52;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda53;,Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl$$ExternalSyntheticLambda3;,Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl$$ExternalSyntheticLambda4; HSPLcom/android/server/pm/PackageManagerService;->getSafeMode()Z -HSPLcom/android/server/pm/PackageManagerService;->grantImplicitAccess(Lcom/android/server/pm/Computer;ILandroid/content/Intent;IIZZ)V+]Lcom/android/server/pm/AppsFilterImpl;Lcom/android/server/pm/AppsFilterImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/InstantAppRegistry;Lcom/android/server/pm/InstantAppRegistry;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/pm/PackageManagerService;->hasSystemFeature(Ljava/lang/String;I)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/pm/PackageManagerService;->lambda$forEachInstalledPackage$60(ILjava/util/function/Consumer;Lcom/android/server/pm/pkg/PackageStateInternal;)V+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/function/Consumer;Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda5;,Lcom/android/server/people/data/DataManager$$ExternalSyntheticLambda11;,Lcom/android/server/people/data/DataManager$$ExternalSyntheticLambda12;,Lcom/android/server/policy/role/RoleServicePlatformHelperImpl$$ExternalSyntheticLambda0; -HSPLcom/android/server/pm/PackageManagerService;->notifyComponentUsed(Lcom/android/server/pm/Computer;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/PackageManagerService;->notifyPackageUseInternal(Ljava/lang/String;I)V+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; -HSPLcom/android/server/pm/PackageManagerService;->onChange(Lcom/android/server/utils/Watchable;)V+]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; +HSPLcom/android/server/pm/PackageManagerService;->grantImplicitAccess(Lcom/android/server/pm/Computer;ILandroid/content/Intent;IIZZ)V+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HSPLcom/android/server/pm/PackageManagerService;->hasSystemFeature(Ljava/lang/String;I)Z +HSPLcom/android/server/pm/PackageManagerService;->lambda$forEachInstalledPackage$58(ILjava/util/function/Consumer;Lcom/android/server/pm/pkg/PackageStateInternal;)V+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/function/Consumer;Lcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda5;,Lcom/android/server/people/data/DataManager$$ExternalSyntheticLambda11;,Lcom/android/server/policy/role/RoleServicePlatformHelperImpl$$ExternalSyntheticLambda0; +HSPLcom/android/server/pm/PackageManagerService;->notifyComponentUsed(Lcom/android/server/pm/Computer;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/PackageManagerService;->notifyPackageUseInternal(Ljava/lang/String;I)V+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; +HSPLcom/android/server/pm/PackageManagerService;->onChange(Lcom/android/server/utils/Watchable;)V HSPLcom/android/server/pm/PackageManagerService;->rebuildSnapshot(Lcom/android/server/pm/Computer;I)Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerService;->resetPriorityAfterPackageManagerTracedLockedSection()V HSPLcom/android/server/pm/PackageManagerService;->setEnabledSettingInternalLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/PackageSetting;Landroid/content/pm/PackageManager$ComponentEnabledSetting;ILjava/lang/String;)Z+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/PackageManagerService;->setEnabledSettings(Ljava/util/List;ILjava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager$ComponentEnabledSetting;Landroid/content/pm/PackageManager$ComponentEnabledSetting;]Landroid/os/Handler;Lcom/android/server/pm/PackageHandler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/BroadcastHelper;Lcom/android/server/pm/BroadcastHelper;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/PendingPackageBroadcasts;Lcom/android/server/pm/PendingPackageBroadcasts;]Lcom/android/server/pm/ProtectedPackages;Lcom/android/server/pm/ProtectedPackages;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$List12;]Ljava/util/Map;Landroid/util/ArrayMap; -HSPLcom/android/server/pm/PackageManagerService;->setPackageStoppedState(Lcom/android/server/pm/Computer;Ljava/lang/String;ZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/Handler;Lcom/android/server/pm/PackageHandler;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/PackageMonitorCallbackHelper;Lcom/android/server/pm/PackageMonitorCallbackHelper;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/PackageManagerService;->setEnabledSettings(Ljava/util/List;ILjava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/ProtectedPackages;Lcom/android/server/pm/ProtectedPackages;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/ImmutableCollections$List12; +HSPLcom/android/server/pm/PackageManagerService;->setPackageStoppedState(Lcom/android/server/pm/Computer;Ljava/lang/String;ZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/PackageMonitorCallbackHelper;Lcom/android/server/pm/PackageMonitorCallbackHelper;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/PackageManagerService;->snapshotComputer()Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService; -HSPLcom/android/server/pm/PackageManagerService;->snapshotComputer(Z)Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger;]Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/atomic/AtomicReference; -HSPLcom/android/server/pm/PackageManagerServiceInjector$Singleton;->get(Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerService;)Ljava/lang/Object;+]Lcom/android/server/pm/PackageManagerServiceInjector$Producer;megamorphic_types +HSPLcom/android/server/pm/PackageManagerService;->snapshotComputer(Z)Lcom/android/server/pm/Computer;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine; +HSPLcom/android/server/pm/PackageManagerServiceInjector$Singleton;->get(Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerService;)Ljava/lang/Object;+]Lcom/android/server/pm/PackageManagerServiceInjector$Producer;Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda15;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda16;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda18;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda19;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda26; HSPLcom/android/server/pm/PackageManagerServiceInjector;->getCompatibility()Lcom/android/server/compat/PlatformCompat;+]Lcom/android/server/pm/PackageManagerServiceInjector$Singleton;Lcom/android/server/pm/PackageManagerServiceInjector$Singleton; HSPLcom/android/server/pm/PackageManagerServiceInjector;->getLocalService(Ljava/lang/Class;)Ljava/lang/Object;+]Lcom/android/server/pm/PackageManagerServiceInjector$ServiceProducer;Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda22;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda23; +HSPLcom/android/server/pm/PackageManagerServiceInjector;->getSystemConfig()Lcom/android/server/SystemConfig; HSPLcom/android/server/pm/PackageManagerServiceInjector;->getUserManagerInternal()Lcom/android/server/pm/UserManagerInternal;+]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/pm/PackageManagerServiceInjector;->getUserManagerService()Lcom/android/server/pm/UserManagerService;+]Lcom/android/server/pm/PackageManagerServiceInjector$Singleton;Lcom/android/server/pm/PackageManagerServiceInjector$Singleton; -HSPLcom/android/server/pm/PackageManagerServiceUtils;->applyEnforceIntentFilterMatching(Lcom/android/server/compat/PlatformCompat;Lcom/android/server/pm/snapshot/PackageDataSnapshot;Ljava/util/List;ZLandroid/content/Intent;Ljava/lang/String;I)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/PackageManagerServiceUtils;->applyNullActionBlocking(Lcom/android/server/compat/PlatformCompat;Lcom/android/server/pm/snapshot/PackageDataSnapshot;Ljava/util/List;ZLandroid/content/Intent;I)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/pm/PackageManagerServiceUtils;->compareSignatures(Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails;)I+]Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails; -HSPLcom/android/server/pm/PackageManagerServiceUtils;->componentInfoToComponent(Landroid/content/pm/ComponentInfo;Lcom/android/server/pm/resolution/ComponentResolverApi;Z)Lcom/android/internal/pm/pkg/component/ParsedMainComponent;+]Landroid/content/pm/ComponentInfo;Landroid/content/pm/ActivityInfo;,Landroid/content/pm/ServiceInfo;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolver;,Lcom/android/server/pm/resolution/ComponentResolverSnapshot; -HSPLcom/android/server/pm/PackageManagerServiceUtils;->getLastModifiedTime(Lcom/android/server/pm/pkg/AndroidPackage;)J+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HSPLcom/android/server/pm/PackageManagerServiceUtils;->compareSignatures(Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails;)I +HSPLcom/android/server/pm/PackageManagerServiceUtils;->getLastModifiedTime(Lcom/android/server/pm/pkg/AndroidPackage;)J +HSPLcom/android/server/pm/PackageMetrics$ComponentStateMetrics;-><init>(Landroid/content/pm/PackageManager$ComponentEnabledSetting;III)V HSPLcom/android/server/pm/PackageProperty;->addAllProperties(Lcom/android/server/pm/pkg/AndroidPackage;)V -HSPLcom/android/server/pm/PackageProperty;->addComponentProperties(Ljava/util/List;Landroid/util/ArrayMap;)Landroid/util/ArrayMap;+]Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/Collections$EmptyMap;,Ljava/util/HashMap; -HSPLcom/android/server/pm/PackageSetting$1;->createSnapshot()Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;-><init>(Lcom/android/server/pm/PackageSetting;Z)V+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/io/File;IILjava/util/UUID;)V -HSPLcom/android/server/pm/PackageSetting;->copyMimeGroups(Ljava/util/Map;)V+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$EmptyIterator;]Ljava/util/Map;Landroid/util/ArrayMap;,Lcom/android/server/pm/Settings$KeySetToValueMap;,Ljava/util/Collections$EmptyMap;]Ljava/util/Set;Landroid/util/ArraySet;,Landroid/util/MapCollections$KeySet;,Ljava/util/Collections$EmptySet; -HSPLcom/android/server/pm/PackageSetting;->copyPackageSetting(Lcom/android/server/pm/PackageSetting;Z)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl;][B[B -HSPLcom/android/server/pm/PackageSetting;->enableComponentLPw(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; +HSPLcom/android/server/pm/PackageSetting;->copyMimeGroups(Ljava/util/Map;)V+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$EmptyIterator;]Ljava/util/Map;Landroid/util/ArrayMap;,Lcom/android/server/pm/Settings$KeySetToValueMap;,Ljava/util/Collections$EmptyMap;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;,Ljava/util/Collections$EmptySet; +HSPLcom/android/server/pm/PackageSetting;->copyPackageSetting(Lcom/android/server/pm/PackageSetting;Z)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/PackageSetting;->getAndroidPackage()Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;->getApexModuleName()Ljava/lang/String;+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/PackageSetting;->getAppId()I +HSPLcom/android/server/pm/PackageSetting;->getBaseRevisionCode()I HSPLcom/android/server/pm/PackageSetting;->getBoolean(I)Z HSPLcom/android/server/pm/PackageSetting;->getCategoryOverride()I +HSPLcom/android/server/pm/PackageSetting;->getCpuAbiOverride()Ljava/lang/String; HSPLcom/android/server/pm/PackageSetting;->getCurrentEnabledStateLPr(Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; -HSPLcom/android/server/pm/PackageSetting;->getEnabled(I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/PackageSetting;->getInstallSource()Lcom/android/server/pm/InstallSource; +HSPLcom/android/server/pm/PackageSetting;->getKeySetData()Lcom/android/server/pm/PackageKeySetData; HSPLcom/android/server/pm/PackageSetting;->getLastUpdateTime()J -HSPLcom/android/server/pm/PackageSetting;->getLoadingCompletedTime()J +HSPLcom/android/server/pm/PackageSetting;->getLoadingProgress()F HSPLcom/android/server/pm/PackageSetting;->getMimeGroups()Ljava/util/Map; +HSPLcom/android/server/pm/PackageSetting;->getPackageName()Ljava/lang/String; HSPLcom/android/server/pm/PackageSetting;->getPkg()Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal; HSPLcom/android/server/pm/PackageSetting;->getPkgState()Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/PackageSetting;->getPrimaryCpuAbi()Ljava/lang/String; +HSPLcom/android/server/pm/PackageSetting;->getPrimaryCpuAbiLegacy()Ljava/lang/String; HSPLcom/android/server/pm/PackageSetting;->getSeInfo()Ljava/lang/String;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/PackageSetting;->getSecondaryCpuAbi()Ljava/lang/String; HSPLcom/android/server/pm/PackageSetting;->getSharedLibraryDependencies()Ljava/util/List;+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; +HSPLcom/android/server/pm/PackageSetting;->getSignatures()Lcom/android/server/pm/PackageSignatures; HSPLcom/android/server/pm/PackageSetting;->getSigningDetails()Landroid/content/pm/SigningDetails; HSPLcom/android/server/pm/PackageSetting;->getStateForUser(Landroid/os/UserHandle;)Lcom/android/server/pm/pkg/PackageUserState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;->getTransientState()Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/PackageSetting;->getUserStates()Landroid/util/SparseArray; HSPLcom/android/server/pm/PackageSetting;->getUsesSdkLibraries()[Ljava/lang/String; -HSPLcom/android/server/pm/PackageSetting;->getUsesStaticLibraries()[Ljava/lang/String; -HSPLcom/android/server/pm/PackageSetting;->getVersionCode()J HSPLcom/android/server/pm/PackageSetting;->getVolumeUuid()Ljava/lang/String; HSPLcom/android/server/pm/PackageSetting;->hasSharedUser()Z HSPLcom/android/server/pm/PackageSetting;->isApex()Z+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/pm/PackageSetting;->isLoading()Z +HSPLcom/android/server/pm/PackageSetting;->isDebuggable()Z HSPLcom/android/server/pm/PackageSetting;->isPrivileged()Z+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/PackageSetting;->isScannedAsStoppedSystemApp()Z+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/PackageSetting;->isScannedAsStoppedSystemApp()Z HSPLcom/android/server/pm/PackageSetting;->isSystem()Z+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;->isUpdatedSystemApp()Z+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/PackageSetting;->modifyUserState(I)Lcom/android/server/pm/pkg/PackageUserStateImpl;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/PackageSetting;->modifyUserStateComponents(IZZ)Lcom/android/server/pm/pkg/PackageUserStateImpl;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/PackageSetting;->modifyUserStateComponents(IZZ)Lcom/android/server/pm/pkg/PackageUserStateImpl;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/PackageSetting;->readUserState(I)Lcom/android/server/pm/pkg/PackageUserStateInternal;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/PackageSetting;->setUserState(IJJIZZZZILandroid/util/ArrayMap;ZZLjava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;IILjava/lang/String;Ljava/lang/String;JILcom/android/server/pm/pkg/ArchiveState;)V -HSPLcom/android/server/pm/PackageSetting;->snapshot()Lcom/android/server/pm/PackageSetting;+]Lcom/android/server/utils/SnapshotCache;Lcom/android/server/pm/PackageSetting$1; +HSPLcom/android/server/pm/PackageSetting;->snapshot()Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;->snapshot()Ljava/lang/Object;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSetting;->updateMimeGroups(Ljava/util/Set;)Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/PackageSignatures;->readCertsListXml(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/util/ArrayList;Ljava/util/ArrayList;IZLandroid/content/pm/SigningDetails$Builder;)I HSPLcom/android/server/pm/PackageSignatures;->readXml(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/util/ArrayList;)V HSPLcom/android/server/pm/PackageSignatures;->writeCertsListXml(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/util/ArrayList;[Landroid/content/pm/Signature;Z)V+]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/pm/PackageSignatures;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/lang/String;Ljava/util/ArrayList;)V+]Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSignatures;Lcom/android/server/pm/PackageSignatures; +HSPLcom/android/server/pm/PackageSignatures;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/lang/String;Ljava/util/ArrayList;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/pm/ParallelPackageParser;->lambda$submit$0(Ljava/io/File;I)V HSPLcom/android/server/pm/Policy;->getMatchedSeInfo(Lcom/android/server/pm/pkg/AndroidPackage;)Ljava/lang/String;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/pm/PreferredActivityHelper;->replacePreferredActivity(Lcom/android/server/pm/Computer;Lcom/android/server/pm/WatchedIntentFilter;I[Landroid/content/ComponentName;Landroid/content/ComponentName;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PreferredComponent;Lcom/android/server/pm/PreferredComponent;]Lcom/android/server/pm/WatchedIntentResolver;Lcom/android/server/pm/PreferredIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ProtectedPackages;->hasDeviceOwnerOrProfileOwner(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/ProtectedPackages;->isOwnerProtectedPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/ProtectedPackages;Lcom/android/server/pm/ProtectedPackages; +HPLcom/android/server/pm/PreferredActivityHelper;->replacePreferredActivity(Lcom/android/server/pm/Computer;Lcom/android/server/pm/WatchedIntentFilter;I[Landroid/content/ComponentName;Landroid/content/ComponentName;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PreferredComponent;Lcom/android/server/pm/PreferredComponent;]Lcom/android/server/pm/WatchedIntentResolver;Lcom/android/server/pm/PreferredIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/pm/ProtectedPackages;->hasDeviceOwnerOrProfileOwner(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/pm/ProtectedPackages;->isOwnerProtectedPackage(ILjava/lang/String;)Z HSPLcom/android/server/pm/ProtectedPackages;->isPackageProtectedForUser(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLcom/android/server/pm/ProtectedPackages;->isProtectedPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/ProtectedPackages;Lcom/android/server/pm/ProtectedPackages;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/pm/ProtectedPackages;->isPackageStateProtected(ILjava/lang/String;)Z +HSPLcom/android/server/pm/ProtectedPackages;->isProtectedPackage(ILjava/lang/String;)Z HSPLcom/android/server/pm/ReconcilePackageUtils;->reconcilePackages(Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Lcom/android/server/pm/SharedLibrariesImpl;Lcom/android/server/pm/KeySetManagerService;Lcom/android/server/pm/Settings;Lcom/android/server/SystemConfig;)Ljava/util/List; HSPLcom/android/server/pm/ReconciledPackage;-><init>(Ljava/util/List;Ljava/util/Map;Lcom/android/server/pm/InstallRequest;Lcom/android/server/pm/DeletePackageAction;Ljava/util/List;Landroid/content/pm/SigningDetails;ZZ)V HSPLcom/android/server/pm/ReconciledPackage;->getCombinedAvailablePackages()Ljava/util/Map; HSPLcom/android/server/pm/ResilientAtomicFile;-><init>(Ljava/io/File;Ljava/io/File;Ljava/io/File;ILjava/lang/String;Lcom/android/server/pm/ResilientAtomicFile$ReadEventLogger;)V HSPLcom/android/server/pm/ResilientAtomicFile;->close()V -HSPLcom/android/server/pm/ResilientAtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V+]Landroid/os/ParcelFileDescriptor;Landroid/os/ParcelFileDescriptor;]Ljava/io/File;Ljava/io/File;]Ljava/io/FileInputStream;Ljava/io/FileInputStream;]Ljava/io/FileOutputStream;Ljava/io/FileOutputStream; -HSPLcom/android/server/pm/ResilientAtomicFile;->startWrite()Ljava/io/FileOutputStream;+]Ljava/io/File;Ljava/io/File; -HSPLcom/android/server/pm/ResolveIntentHelper;->chooseBestActivity(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JJLjava/util/List;IZ)Landroid/content/pm/ResolveInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/server/pm/PreferredActivityHelper;Lcom/android/server/pm/PreferredActivityHelper;]Lcom/android/server/pm/ResolveIntentHelper;Lcom/android/server/pm/ResolveIntentHelper;]Lcom/android/server/pm/UserNeedsBadgingCache;Lcom/android/server/pm/UserNeedsBadgingCache;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;]Ljava/util/function/Supplier;Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda41;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda42; -HSPLcom/android/server/pm/ResolveIntentHelper;->queryIntentReceiversInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JIIZ)Ljava/util/List;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/ResolveIntentHelper;->resolveIntentInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JJIZIZI)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/ResolveIntentHelper;Lcom/android/server/pm/ResolveIntentHelper;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/ResolveIntentHelper;->resolveServiceInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JII)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/pm/ResilientAtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V +HSPLcom/android/server/pm/ResilientAtomicFile;->startWrite()Ljava/io/FileOutputStream; +HSPLcom/android/server/pm/ResolveIntentHelper;->chooseBestActivity(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JJLjava/util/List;IZ)Landroid/content/pm/ResolveInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/pm/UserNeedsBadgingCache;Lcom/android/server/pm/UserNeedsBadgingCache;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;]Ljava/util/function/Supplier;Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda38;,Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda39; +HSPLcom/android/server/pm/ResolveIntentHelper;->queryIntentReceiversInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JIIIZ)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot; +HSPLcom/android/server/pm/ResolveIntentHelper;->resolveIntentInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JJIZII)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/ResolveIntentHelper;->resolveServiceInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JIIIZ)Landroid/content/pm/ResolveInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; HSPLcom/android/server/pm/RestrictionsSet;->getRestrictions(I)Landroid/os/Bundle;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/RestrictionsSet;->updateRestrictions(ILandroid/os/Bundle;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/SELinuxMMAC;->getSeInfo(Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/pkg/AndroidPackage;ZI)Ljava/lang/String;+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/SaferIntentUtils$IntentArgs;-><init>(Landroid/content/Intent;Ljava/lang/String;ZZII)V +HSPLcom/android/server/pm/SaferIntentUtils$IntentArgs;->isChangeEnabled(J)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat; +HSPLcom/android/server/pm/SaferIntentUtils;->blockNullAction(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/pm/SaferIntentUtils;->enforceIntentFilterMatching(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/SaferIntentUtils;->filterNonExportedComponents(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/SaferIntentUtils;->infoToComponent(Landroid/content/pm/ComponentInfo;Lcom/android/server/pm/resolution/ComponentResolverApi;Z)Lcom/android/internal/pm/pkg/component/ParsedMainComponent;+]Landroid/content/pm/ComponentInfo;Landroid/content/pm/ActivityInfo;,Landroid/content/pm/ServiceInfo;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot; HSPLcom/android/server/pm/ScanPackageUtils;->applyPolicy(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;ILcom/android/server/pm/pkg/AndroidPackage;Z)V HSPLcom/android/server/pm/ScanPackageUtils;->collectCertificatesLI(Lcom/android/server/pm/PackageSetting;Lcom/android/internal/pm/parsing/pkg/ParsedPackage;Lcom/android/server/pm/Settings$VersionInfo;ZZZ)V HSPLcom/android/server/pm/ScanPackageUtils;->scanPackageOnlyLI(Lcom/android/server/pm/ScanRequest;Lcom/android/server/pm/PackageManagerServiceInjector;ZJ)Lcom/android/server/pm/ScanResult; HSPLcom/android/server/pm/ScanRequest;-><init>(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;Ljava/lang/String;IIZLandroid/os/UserHandle;Ljava/lang/String;)V HSPLcom/android/server/pm/ScanResult;-><init>(Lcom/android/server/pm/ScanRequest;Lcom/android/server/pm/PackageSetting;Ljava/util/List;ZILandroid/content/pm/SharedLibraryInfo;Landroid/content/pm/SharedLibraryInfo;Ljava/util/List;)V HSPLcom/android/server/pm/SettingBase;-><init>(II)V -HSPLcom/android/server/pm/SettingBase;-><init>(Lcom/android/server/pm/SettingBase;)V+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting; -HSPLcom/android/server/pm/SettingBase;->copySettingBase(Lcom/android/server/pm/SettingBase;)V+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting;]Lcom/android/server/pm/permission/LegacyPermissionState;Lcom/android/server/pm/permission/LegacyPermissionState; +HSPLcom/android/server/pm/SettingBase;-><init>(Lcom/android/server/pm/SettingBase;)V +HSPLcom/android/server/pm/SettingBase;->copySettingBase(Lcom/android/server/pm/SettingBase;)V+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting; HSPLcom/android/server/pm/SettingBase;->dispatchChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/utils/WatchableImpl; +HSPLcom/android/server/pm/SettingBase;->getFlags()I +HSPLcom/android/server/pm/SettingBase;->getPrivateFlags()I HSPLcom/android/server/pm/SettingBase;->onChanged()V+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting; -HSPLcom/android/server/pm/SettingBase;->registerObserver(Lcom/android/server/utils/Watcher;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/utils/WatchableImpl; -HSPLcom/android/server/pm/Settings$1;->onChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings; +HSPLcom/android/server/pm/SettingBase;->registerObserver(Lcom/android/server/utils/Watcher;)V +HSPLcom/android/server/pm/Settings$1;->onChange(Lcom/android/server/utils/Watchable;)V HSPLcom/android/server/pm/Settings$2;->createSnapshot()Lcom/android/server/pm/Settings;+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchableImpl; -HSPLcom/android/server/pm/Settings$RuntimePermissionPersistence;->getPermissionsFromPermissionsState(Lcom/android/server/pm/permission/LegacyPermissionState;I)Ljava/util/List;+]Lcom/android/server/pm/permission/LegacyPermissionState$PermissionState;Lcom/android/server/pm/permission/LegacyPermissionState$PermissionState;]Lcom/android/server/pm/permission/LegacyPermissionState;Lcom/android/server/pm/permission/LegacyPermissionState;]Ljava/util/Collection;Ljava/util/Collections$EmptyList;,Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$EmptyIterator;,Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/Settings;-><init>(Lcom/android/server/pm/Settings;)V +HSPLcom/android/server/pm/Settings;->dispatchChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchableImpl; HSPLcom/android/server/pm/Settings;->getApplicationEnabledSettingLPr(Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/Settings;->getComponentEnabledSettingLPr(Landroid/content/ComponentName;I)I+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HPLcom/android/server/pm/Settings;->getBlockUninstallLPr(ILjava/lang/String;)Z+]Lcom/android/server/utils/WatchedSparseArray;Lcom/android/server/utils/WatchedSparseArray; +HSPLcom/android/server/pm/Settings;->getComponentEnabledSettingLPr(Landroid/content/ComponentName;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/Settings;->getCrossProfileIntentResolver(I)Lcom/android/server/pm/CrossProfileIntentResolver;+]Lcom/android/server/utils/WatchedSparseArray;Lcom/android/server/utils/WatchedSparseArray; HSPLcom/android/server/pm/Settings;->getDisabledSystemPkgLPr(Ljava/lang/String;)Lcom/android/server/pm/PackageSetting;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/Settings;->getPackageLPr(Ljava/lang/String;)Lcom/android/server/pm/PackageSetting;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/Settings;->getRenamedPackageLPr(Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/pm/Settings;->getSettingLPr(I)Lcom/android/server/pm/SettingBase;+]Lcom/android/server/pm/AppIdSettingMap;Lcom/android/server/pm/AppIdSettingMap; +HSPLcom/android/server/pm/Settings;->getSettingLPr(I)Lcom/android/server/pm/SettingBase; HSPLcom/android/server/pm/Settings;->getSharedUserSettingLPr(Lcom/android/server/pm/PackageSetting;)Lcom/android/server/pm/SharedUserSetting;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/Settings;->readPackageLPw(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/util/ArrayList;Landroid/util/ArrayMap;Ljava/util/List;Landroid/util/ArrayMap;)V HSPLcom/android/server/pm/Settings;->readPackageRestrictionsLPr(ILandroid/util/ArrayMap;)V HSPLcom/android/server/pm/Settings;->updatePackageSetting(Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/SharedUserSetting;Lcom/android/server/pm/SharedUserSetting;Ljava/io/File;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILcom/android/server/pm/UserManagerService;[Ljava/lang/String;[J[Z[Ljava/lang/String;[JLjava/util/Set;Ljava/util/UUID;I[BZ)V HSPLcom/android/server/pm/Settings;->writeDisabledSysPackageLPr(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/pm/PackageSetting;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/Settings;->writeKeySetAliasesLPr(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/pm/PackageKeySetData;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/PackageKeySetData;Lcom/android/server/pm/PackageKeySetData;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; -HSPLcom/android/server/pm/Settings;->writeLPr(Lcom/android/server/pm/Computer;Z)V+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/KeySetManagerService;Lcom/android/server/pm/KeySetManagerService;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/PackageSignatures;Lcom/android/server/pm/PackageSignatures;]Lcom/android/server/pm/ResilientAtomicFile;Lcom/android/server/pm/ResilientAtomicFile;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/permission/LegacyPermissionSettings;Lcom/android/server/pm/permission/LegacyPermissionSettings;]Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/verify/domain/DomainVerificationService;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; -HSPLcom/android/server/pm/Settings;->writePackageLPr(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/util/ArrayList;Lcom/android/server/pm/PackageSetting;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/PackageSignatures;Lcom/android/server/pm/PackageSignatures;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/lang/Object;Ljava/util/UUID; -HSPLcom/android/server/pm/Settings;->writePackageListLPrInternal(I)V+]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/internal/util/JournaledFile;Lcom/android/internal/util/JournaledFile;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/permission/LegacyPermissionDataProvider;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/io/BufferedWriter;Ljava/io/BufferedWriter;]Ljava/io/File;Ljava/io/File;]Ljava/io/FileOutputStream;Ljava/io/FileOutputStream;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/Settings;->writePackageRestrictions(IJZ)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/ResilientAtomicFile;Lcom/android/server/pm/ResilientAtomicFile;]Lcom/android/server/pm/Settings;Lcom/android/server/pm/Settings;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/SuspendParams;Lcom/android/server/pm/pkg/SuspendParams;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; +HSPLcom/android/server/pm/Settings;->writeKeySetAliasesLPr(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/pm/PackageKeySetData;)V+]Lcom/android/server/pm/PackageKeySetData;Lcom/android/server/pm/PackageKeySetData;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; +HSPLcom/android/server/pm/Settings;->writeLPr(Lcom/android/server/pm/Computer;Z)V+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/KeySetManagerService;Lcom/android/server/pm/KeySetManagerService;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/PackageSignatures;Lcom/android/server/pm/PackageSignatures;]Lcom/android/server/pm/permission/LegacyPermissionSettings;Lcom/android/server/pm/permission/LegacyPermissionSettings;]Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/verify/domain/DomainVerificationService;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; +HSPLcom/android/server/pm/Settings;->writePackageLPr(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/util/ArrayList;Lcom/android/server/pm/PackageSetting;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/PackageSignatures;Lcom/android/server/pm/PackageSignatures;]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HSPLcom/android/server/pm/Settings;->writePackageListLPrInternal(I)V+]Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/permission/LegacyPermissionDataProvider;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/io/File;Ljava/io/File;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/Settings;->writePackageRestrictions(IJZ)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1; HSPLcom/android/server/pm/Settings;->writeSigningKeySetLPr(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/pm/PackageKeySetData;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageKeySetData;Lcom/android/server/pm/PackageKeySetData; HSPLcom/android/server/pm/Settings;->writeUserRestrictionsLPw(Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;)V HSPLcom/android/server/pm/SettingsXml$ReadSectionImpl;->moveToNextInternal(Ljava/lang/String;)Z+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Ljava/util/Stack;Ljava/util/Stack; HSPLcom/android/server/pm/SettingsXml$WriteSectionImpl;->attribute(Ljava/lang/String;I)Lcom/android/server/pm/SettingsXml$WriteSection;+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/pm/SettingsXml$WriteSectionImpl;->attribute(Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/pm/SettingsXml$WriteSection;+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; HSPLcom/android/server/pm/SettingsXml$WriteSectionImpl;->close()V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/Stack;Ljava/util/Stack; -HSPLcom/android/server/pm/SettingsXml$WriteSectionImpl;->finish()V+]Lcom/android/server/pm/SettingsXml$WriteSectionImpl;Lcom/android/server/pm/SettingsXml$WriteSectionImpl; HSPLcom/android/server/pm/SettingsXml$WriteSectionImpl;->startSection(Ljava/lang/String;)Lcom/android/server/pm/SettingsXml$WriteSection;+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/Stack;Ljava/util/Stack; HSPLcom/android/server/pm/SharedLibrariesImpl;->collectSharedLibraryInfos(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/Map;Ljava/util/Map;)Ljava/util/ArrayList; HSPLcom/android/server/pm/SharedLibrariesImpl;->executeSharedLibrariesUpdateLPw(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/PackageSetting;Ljava/util/ArrayList;[I)V @@ -2631,28 +2679,28 @@ HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda29;-><init>(Lco HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda29;->accept(Ljava/lang/Object;)V HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda36;->apply(Ljava/lang/Object;)Ljava/lang/Object; HPLcom/android/server/pm/ShortcutPackage;-><init>(Lcom/android/server/pm/ShortcutUser;ILjava/lang/String;Lcom/android/server/pm/ShortcutPackageInfo;)V -HPLcom/android/server/pm/ShortcutPackage;->findAll(Ljava/util/List;Ljava/util/function/Predicate;ILjava/lang/String;IZ)V+]Lcom/android/server/pm/ShortcutLauncher;Lcom/android/server/pm/ShortcutLauncher;]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService; -HPLcom/android/server/pm/ShortcutPackage;->forEachShortcutStopWhen(Ljava/util/function/Function;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/lang/Boolean;Ljava/lang/Boolean;]Ljava/util/function/Function;Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda28;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda36;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda3; -HPLcom/android/server/pm/ShortcutPackage;->fromAppSearch()Lcom/android/internal/infra/AndroidFuture;+]Lcom/android/internal/infra/AndroidFuture;Lcom/android/internal/infra/AndroidFuture;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser; -HPLcom/android/server/pm/ShortcutPackage;->parseShortcut(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;IZ)Landroid/content/pm/ShortcutInfo;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser; +HPLcom/android/server/pm/ShortcutPackage;->findAll(Ljava/util/List;Ljava/util/function/Predicate;ILjava/lang/String;IZ)V+]Lcom/android/server/pm/ShortcutLauncher;Lcom/android/server/pm/ShortcutLauncher;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService; +HPLcom/android/server/pm/ShortcutPackage;->forEachShortcutStopWhen(Ljava/util/function/Function;)V+]Ljava/util/function/Function;Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda28;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda36;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda3; +HPLcom/android/server/pm/ShortcutPackage;->parseShortcut(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;IZ)Landroid/content/pm/ShortcutInfo; HPLcom/android/server/pm/ShortcutPackage;->rescanPackageIfNeeded(ZZ)Z+]Landroid/content/pm/PackageInfo;Landroid/content/pm/PackageInfo;]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/pm/ShortcutPackage;->saveShortcut(Lcom/android/modules/utils/TypedXmlSerializer;Landroid/content/pm/ShortcutInfo;ZZ)V+]Landroid/app/Person;Landroid/app/Person;]Landroid/content/LocusId;Landroid/content/LocusId;]Landroid/content/pm/ShortcutInfo;Landroid/content/pm/ShortcutInfo;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Ljava/util/Set;Landroid/util/ArraySet; -HPLcom/android/server/pm/ShortcutPackage;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;Z)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/pm/ShareTargetInfo;Lcom/android/server/pm/ShareTargetInfo;]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/pm/ShortcutPackage;->saveShortcut(Lcom/android/modules/utils/TypedXmlSerializer;Landroid/content/pm/ShortcutInfo;ZZ)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage; +HPLcom/android/server/pm/ShortcutPackage;->saveShortcutsAsync(Ljava/util/Collection;)V +HPLcom/android/server/pm/ShortcutPackage;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;Z)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/pm/ShareTargetInfo;Lcom/android/server/pm/ShareTargetInfo;]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/pm/ShortcutPackageInfo;->saveToXml(Lcom/android/server/pm/ShortcutService;Lcom/android/modules/utils/TypedXmlSerializer;Z)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Base64$Encoder;Ljava/util/Base64$Encoder; -HPLcom/android/server/pm/ShortcutPackageItem;-><init>(Lcom/android/server/pm/ShortcutUser;ILjava/lang/String;Lcom/android/server/pm/ShortcutPackageInfo;)V -HPLcom/android/server/pm/ShortcutPackageItem;->getResilientFile(Ljava/io/File;)Lcom/android/server/pm/ResilientAtomicFile;+]Ljava/io/File;Ljava/io/File; -HPLcom/android/server/pm/ShortcutParser;->parseShortcutsOneFile(Lcom/android/server/pm/ShortcutService;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILjava/util/List;Ljava/util/List;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/pm/ShortcutPackageItem;->getResilientFile(Ljava/io/File;)Lcom/android/server/pm/ResilientAtomicFile; +HPLcom/android/server/pm/ShortcutParser;->parseShortcutsOneFile(Lcom/android/server/pm/ShortcutService;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILjava/util/List;Ljava/util/List;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/ShortcutService$4;->onUidStateChanged(IIJI)V+]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService; +HPLcom/android/server/pm/ShortcutService$LocalService$$ExternalSyntheticLambda10;-><init>(JLandroid/util/ArraySet;Landroid/util/ArraySet;Landroid/content/ComponentName;ZZZZZ)V +HPLcom/android/server/pm/ShortcutService$LocalService$$ExternalSyntheticLambda10;->test(Ljava/lang/Object;)Z HPLcom/android/server/pm/ShortcutService$LocalService;->getShortcuts(ILjava/lang/String;JLjava/lang/String;Ljava/util/List;Ljava/util/List;Landroid/content/ComponentName;IIII)Ljava/util/List;+]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutLauncher;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser; -HPLcom/android/server/pm/ShortcutService$LocalService;->getShortcutsInnerLocked(ILjava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;JLandroid/content/ComponentName;IILjava/util/ArrayList;III)V+]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService$LocalService;Lcom/android/server/pm/ShortcutService$LocalService;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser; -HPLcom/android/server/pm/ShortcutService$LocalService;->lambda$getFilterFromQuery$1(JLandroid/util/ArraySet;Landroid/util/ArraySet;Landroid/content/ComponentName;ZZZZZLandroid/content/pm/ShortcutInfo;)Z+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/pm/ShortcutInfo;Landroid/content/pm/ShortcutInfo;]Landroid/util/ArraySet;Landroid/util/ArraySet; +HPLcom/android/server/pm/ShortcutService$LocalService;->lambda$getFilterFromQuery$1(JLandroid/util/ArraySet;Landroid/util/ArraySet;Landroid/content/ComponentName;ZZZZZLandroid/content/pm/ShortcutInfo;)Z HPLcom/android/server/pm/ShortcutService;->getUserShortcutsLocked(I)Lcom/android/server/pm/ShortcutUser;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService; -HSPLcom/android/server/pm/ShortcutService;->injectPostToHandler(Ljava/lang/Runnable;)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/pm/ShortcutService;->isUserUnlockedL(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; -HPLcom/android/server/pm/ShortcutService;->queryActivities(Landroid/content/Intent;IZ)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/pm/ShortcutService;->injectPostToHandler(Ljava/lang/Runnable;)V +HPLcom/android/server/pm/ShortcutService;->isUserUnlockedL(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HPLcom/android/server/pm/ShortcutService;->queryActivities(Landroid/content/Intent;IZ)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/pm/ShortcutUser;->getAppSearch(Landroid/app/appsearch/AppSearchManager$SearchContext;)Lcom/android/internal/infra/AndroidFuture;+]Landroid/app/appsearch/AppSearchManager;Landroid/app/appsearch/AppSearchManager;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/pm/ShortcutUser;->getLauncherShortcuts(Ljava/lang/String;I)Lcom/android/server/pm/ShortcutLauncher;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutLauncher; -HPLcom/android/server/pm/ShortcutUser;->getPackageShortcutsIfExists(Ljava/lang/String;)Lcom/android/server/pm/ShortcutPackage;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage; +HPLcom/android/server/pm/ShortcutUser;->getLauncherShortcuts(Ljava/lang/String;I)Lcom/android/server/pm/ShortcutLauncher;+]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutLauncher; +HPLcom/android/server/pm/ShortcutUser;->getPackageShortcutsIfExists(Ljava/lang/String;)Lcom/android/server/pm/ShortcutPackage;+]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage; HPLcom/android/server/pm/ShortcutUser;->rescanPackageIfNeeded(Ljava/lang/String;Z)V+]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser; HSPLcom/android/server/pm/SnapshotStatistics$BinMap;->getBin(I)I HSPLcom/android/server/pm/SnapshotStatistics$Stats;-><init>(Lcom/android/server/pm/SnapshotStatistics;J)V+]Lcom/android/server/pm/SnapshotStatistics$BinMap;Lcom/android/server/pm/SnapshotStatistics$BinMap; @@ -2664,72 +2712,64 @@ HSPLcom/android/server/pm/UserManagerService$LocalService;->exists(I)Z HSPLcom/android/server/pm/UserManagerService$LocalService;->getUserInfo(I)Landroid/content/pm/UserInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/UserManagerService$LocalService;->getUserInfos()[Landroid/content/pm/UserInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/UserManagerService$LocalService;->getUserProperties(I)Landroid/content/pm/UserProperties; -HSPLcom/android/server/pm/UserManagerService$LocalService;->hasUserRestriction(Ljava/lang/String;I)Z+]Landroid/os/Bundle;Landroid/os/Bundle; -HPLcom/android/server/pm/UserManagerService$LocalService;->isProfileAccessible(IILjava/lang/String;Z)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/UserManagerService$LocalService;->hasUserRestriction(Ljava/lang/String;I)Z HSPLcom/android/server/pm/UserManagerService$LocalService;->isUserRunning(I)Z+]Lcom/android/server/pm/UserManagerService$WatchedUserStates;Lcom/android/server/pm/UserManagerService$WatchedUserStates; HSPLcom/android/server/pm/UserManagerService$LocalService;->isUserUnlockingOrUnlocked(I)Z+]Lcom/android/server/pm/UserManagerService$WatchedUserStates;Lcom/android/server/pm/UserManagerService$WatchedUserStates; -HSPLcom/android/server/pm/UserManagerService$LocalService;->isUserVisible(I)Z+]Lcom/android/server/pm/UserVisibilityMediator;Lcom/android/server/pm/UserVisibilityMediator; +HSPLcom/android/server/pm/UserManagerService$LocalService;->isUserVisible(I)Z HSPLcom/android/server/pm/UserManagerService$WatchedUserStates;->get(II)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/pm/UserManagerService;->-$$Nest$mgetUserInfoNoChecks(Lcom/android/server/pm/UserManagerService;I)Landroid/content/pm/UserInfo;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/pm/UserManagerService;->checkCreateUsersPermission(Ljava/lang/String;)V -HSPLcom/android/server/pm/UserManagerService;->checkManageOrInteractPermissionIfCallerInOtherProfileGroup(ILjava/lang/String;)V+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->checkQueryOrCreateUsersPermission(Ljava/lang/String;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/UserManagerService;->checkQueryOrInteractPermissionIfCallerInOtherProfileGroup(ILjava/lang/String;)V+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/UserManagerService;->checkManageOrInteractPermissionIfCallerInOtherProfileGroup(ILjava/lang/String;)V +HSPLcom/android/server/pm/UserManagerService;->checkQueryOrCreateUsersPermission(Ljava/lang/String;)V +HSPLcom/android/server/pm/UserManagerService;->checkQueryOrInteractPermissionIfCallerInOtherProfileGroup(ILjava/lang/String;)V HSPLcom/android/server/pm/UserManagerService;->exists(I)Z+]Lcom/android/server/pm/UserManagerService$LocalService;Lcom/android/server/pm/UserManagerService$LocalService; -HPLcom/android/server/pm/UserManagerService;->getApplicationRestrictionsForUser(Ljava/lang/String;I)Landroid/os/Bundle;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/pm/UserManagerService;->getApplicationRestrictionsForUser(Ljava/lang/String;I)Landroid/os/Bundle; HSPLcom/android/server/pm/UserManagerService;->getEffectiveUserRestrictions(I)Landroid/os/Bundle;+]Lcom/android/server/pm/RestrictionsSet;Lcom/android/server/pm/RestrictionsSet; HSPLcom/android/server/pm/UserManagerService;->getInternalForInjectorOnly()Lcom/android/server/pm/UserManagerInternal; -HSPLcom/android/server/pm/UserManagerService;->getProfileIds(ILjava/lang/String;ZZ)[I+]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/UserManagerService;->getProfileIds(ILjava/lang/String;ZZ)[I+]Landroid/util/IntArray;Landroid/util/IntArray; HSPLcom/android/server/pm/UserManagerService;->getProfileIds(IZ)[I+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getProfileIdsLU(ILjava/lang/String;ZZ)Landroid/util/IntArray;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getProfileParent(I)Landroid/content/pm/UserInfo;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getProfileParentLU(I)Landroid/content/pm/UserInfo;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getProfileType(I)Ljava/lang/String;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getProfiles(IZ)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/UserManagerService;->getProfilesLU(ILjava/lang/String;ZZ)Ljava/util/List;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/pm/UserManagerService;->getProfileIdsLU(ILjava/lang/String;ZZ)Landroid/util/IntArray;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; +HSPLcom/android/server/pm/UserManagerService;->getProfileParent(I)Landroid/content/pm/UserInfo; +HSPLcom/android/server/pm/UserManagerService;->getProfileParentLU(I)Landroid/content/pm/UserInfo; +HSPLcom/android/server/pm/UserManagerService;->getProfileType(I)Ljava/lang/String;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo; +HSPLcom/android/server/pm/UserManagerService;->getProfiles(IZ)Ljava/util/List; +HSPLcom/android/server/pm/UserManagerService;->getProfilesLU(ILjava/lang/String;ZZ)Ljava/util/List;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray; HPLcom/android/server/pm/UserManagerService;->getUidForPackage(Ljava/lang/String;)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HSPLcom/android/server/pm/UserManagerService;->getUserDataLU(I)Lcom/android/server/pm/UserManagerService$UserData;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/pm/UserManagerService;->getUserHandle(I)I -HSPLcom/android/server/pm/UserManagerService;->getUserInfo(I)Landroid/content/pm/UserInfo;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getUserInfoLU(I)Landroid/content/pm/UserInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/UserManagerService;->getUserInfo(I)Landroid/content/pm/UserInfo; +HSPLcom/android/server/pm/UserManagerService;->getUserInfoLU(I)Landroid/content/pm/UserInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/pm/UserManagerService;->getUserInfoNoChecks(I)Landroid/content/pm/UserInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/pm/UserManagerService;->getUserPropertiesCopy(I)Landroid/content/pm/UserProperties;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getUserPropertiesInternal(I)Landroid/content/pm/UserProperties;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getUserSerialNumber(I)I -HPLcom/android/server/pm/UserManagerService;->getUserStartRealtime()J+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HPLcom/android/server/pm/UserManagerService;->getUserUnlockRealtime()J+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getUsers(ZZZ)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->getUsersInternal(ZZZ)Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/pm/UserManagerService;->getUserPropertiesCopy(I)Landroid/content/pm/UserProperties; +HSPLcom/android/server/pm/UserManagerService;->getUserPropertiesInternal(I)Landroid/content/pm/UserProperties; +HPLcom/android/server/pm/UserManagerService;->getUserStartRealtime()J +HPLcom/android/server/pm/UserManagerService;->getUserUnlockRealtime()J +HSPLcom/android/server/pm/UserManagerService;->getUsers(ZZZ)Ljava/util/List; +HSPLcom/android/server/pm/UserManagerService;->getUsersInternal(ZZZ)Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HSPLcom/android/server/pm/UserManagerService;->hasCreateUsersPermission()Z HSPLcom/android/server/pm/UserManagerService;->hasManageUsersOrPermission(Ljava/lang/String;)Z HSPLcom/android/server/pm/UserManagerService;->hasManageUsersPermission(I)Z -HSPLcom/android/server/pm/UserManagerService;->hasProfile(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/pm/UserManagerService;->hasQueryOrCreateUsersPermission()Z HSPLcom/android/server/pm/UserManagerService;->hasUserRestriction(Ljava/lang/String;I)Z+]Lcom/android/server/pm/UserManagerService$LocalService;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; HSPLcom/android/server/pm/UserManagerService;->isProfileOf(Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;)Z -HSPLcom/android/server/pm/UserManagerService;->isSameProfileGroupNoChecks(II)Z+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserManagerService;->isUserRunning(I)Z+]Lcom/android/server/pm/UserManagerService$LocalService;Lcom/android/server/pm/UserManagerService$LocalService; -HPLcom/android/server/pm/UserManagerService;->packageToRestrictionsFileName(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/pm/UserManagerService;->packageToRestrictionsFileName(Ljava/lang/String;)Ljava/lang/String; HPLcom/android/server/pm/UserManagerService;->readApplicationRestrictionsLAr(Landroid/util/AtomicFile;)Landroid/os/Bundle;+]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Ljava/io/File;Ljava/io/File; HPLcom/android/server/pm/UserManagerService;->readApplicationRestrictionsLAr(Ljava/lang/String;I)Landroid/os/Bundle; -HPLcom/android/server/pm/UserManagerService;->readEntry(Landroid/os/Bundle;Ljava/util/ArrayList;Lcom/android/modules/utils/TypedXmlPullParser;)V+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/pm/UserManagerService;->readEntry(Landroid/os/Bundle;Ljava/util/ArrayList;Lcom/android/modules/utils/TypedXmlPullParser;)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/pm/UserManagerService;->setUserRestrictionInner(ILjava/lang/String;Z)V+]Lcom/android/server/pm/RestrictionsSet;Lcom/android/server/pm/RestrictionsSet; -HSPLcom/android/server/pm/UserManagerService;->userExists(I)Z -HSPLcom/android/server/pm/UserManagerService;->userWithName(Landroid/content/pm/UserInfo;)Landroid/content/pm/UserInfo;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; +HSPLcom/android/server/pm/UserManagerService;->userWithName(Landroid/content/pm/UserInfo;)Landroid/content/pm/UserInfo; HSPLcom/android/server/pm/UserNeedsBadgingCache;->get(I)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/UserRestrictionsUtils;->areEqual(Landroid/os/Bundle;Landroid/os/Bundle;)Z+]Landroid/os/Bundle;Landroid/os/Bundle;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; +HSPLcom/android/server/pm/UserRestrictionsUtils;->areEqual(Landroid/os/Bundle;Landroid/os/Bundle;)Z+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet; HSPLcom/android/server/pm/UserRestrictionsUtils;->isSettingRestrictedForUser(Landroid/content/Context;Ljava/lang/String;ILjava/lang/String;I)Z+]Landroid/os/UserManager;Landroid/os/UserManager; -HSPLcom/android/server/pm/UserRestrictionsUtils;->isValidRestriction(Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/pm/UserRestrictionsUtils;->isValidRestriction(Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Ljava/util/Set;Landroid/util/ArraySet; HSPLcom/android/server/pm/UserVisibilityMediator;->isCurrentUserOrRunningProfileOfCurrentUser(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/pm/UserVisibilityMediator;->isUserVisible(I)Z+]Lcom/android/server/pm/UserVisibilityMediator;Lcom/android/server/pm/UserVisibilityMediator; +HSPLcom/android/server/pm/UserVisibilityMediator;->isUserVisible(I)Z +HSPLcom/android/server/pm/WatchedIntentFilter;->getIntentFilter()Landroid/content/IntentFilter; HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;-><init>(Lcom/android/server/pm/snapshot/PackageDataSnapshot;)V HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;->checkClosed()V HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;->close()V -HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;-><init>(ILandroid/os/UserHandle;Lcom/android/server/pm/snapshot/PackageDataSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;)V+]Landroid/os/UserHandle;Landroid/os/UserHandle; HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;->checkClosed()V+]Lcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl; HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;->close()V HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;->getPackageState(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageState;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl; -HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;->getPackageStates()Ljava/util/Map;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl; +HSPLcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;->getPackageStates()Ljava/util/Map;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl; HSPLcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;->close()V HSPLcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;->filtered(ILandroid/os/UserHandle;)Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot; HSPLcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;->getPackageStates()Ljava/util/Map;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl; @@ -2746,73 +2786,75 @@ HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoFlags(Lcom/android/s HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoPrivateFlags(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;)I HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoPrivateFlagsExt(ILcom/android/server/pm/pkg/PackageStateInternal;)I+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsComponentInfoParsedMainComponent(Landroid/content/pm/ComponentInfo;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;)V+]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsComponentInfoParsedMainComponent(Landroid/content/pm/ComponentInfo;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/server/pm/pkg/PackageStateInternal;I)V+]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsComponentInfoParsedMainComponent(Landroid/content/pm/ComponentInfo;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/server/pm/pkg/PackageStateInternal;I)V HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsPackageItemInfoParsedComponent(Landroid/content/pm/PackageItemInfo;Lcom/android/internal/pm/pkg/component/ParsedComponent;)V+]Lcom/android/internal/pm/pkg/component/ParsedComponent;megamorphic_types HSPLcom/android/server/pm/parsing/PackageInfoUtils;->checkUseInstalledOrHidden(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/pkg/PackageUserStateInternal;J)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateActivityInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedActivity;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ActivityInfo;+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateApplicationInfo(Lcom/android/server/pm/pkg/AndroidPackage;JLcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;]Lcom/android/server/pm/pkg/SharedLibraryWrapper;Lcom/android/server/pm/pkg/SharedLibraryWrapper;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generatePermissionInfo(Lcom/android/internal/pm/pkg/component/ParsedPermission;J)Landroid/content/pm/PermissionInfo;+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateProviderInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedProvider;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ProviderInfo;+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateServiceInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedService;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ServiceInfo;+]Landroid/os/Bundle;Landroid/os/Bundle;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateWithComponents(Lcom/android/server/pm/pkg/AndroidPackage;[IJJJLjava/util/Set;Ljava/util/Set;Lcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Landroid/util/ArraySet;,Lcom/android/server/permission/jarjar/kotlin/collections/EmptySet;,Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDataDir(Lcom/android/server/pm/pkg/PackageStateInternal;I)Ljava/io/File;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDeprecatedSignatures(Landroid/content/pm/SigningDetails;J)[Landroid/content/pm/Signature;+]Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails; -HSPLcom/android/server/pm/parsing/PackageInfoUtils;->initForUser(Landroid/content/pm/ApplicationInfo;Lcom/android/server/pm/pkg/AndroidPackage;ILcom/android/server/pm/pkg/PackageUserStateInternal;)V+]Lcom/android/internal/pm/parsing/pkg/PackageImpl;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateActivityInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedActivity;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ActivityInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateApplicationInfo(Lcom/android/server/pm/pkg/AndroidPackage;JLcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;]Lcom/android/server/pm/pkg/SharedLibraryWrapper;Lcom/android/server/pm/pkg/SharedLibraryWrapper;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generatePermissionInfo(Lcom/android/internal/pm/pkg/component/ParsedPermission;J)Landroid/content/pm/PermissionInfo;+]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateProviderInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedProvider;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ProviderInfo;+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateServiceInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedService;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ServiceInfo;+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateWithComponents(Lcom/android/server/pm/pkg/AndroidPackage;[IJJJLjava/util/Set;Ljava/util/Set;Lcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Landroid/util/ArraySet;,Lcom/android/server/permission/jarjar/kotlin/collections/EmptySet;,Ljava/util/Collections$UnmodifiableSet; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDataDir(Lcom/android/server/pm/pkg/PackageStateInternal;I)Ljava/io/File;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDeprecatedSignatures(Landroid/content/pm/SigningDetails;J)[Landroid/content/pm/Signature; +HSPLcom/android/server/pm/parsing/PackageInfoUtils;->initForUser(Landroid/content/pm/ApplicationInfo;Lcom/android/server/pm/pkg/AndroidPackage;ILcom/android/server/pm/pkg/PackageUserStateInternal;)V+]Lcom/android/internal/pm/parsing/pkg/PackageImpl;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/parsing/PackageInfoUtils;->updateApplicationInfo(Landroid/content/pm/ApplicationInfo;JLcom/android/server/pm/pkg/PackageUserState;)V+]Landroid/content/pm/overlay/OverlayPaths;Landroid/content/pm/overlay/OverlayPaths;]Lcom/android/server/pm/pkg/ArchiveState$ArchiveActivityInfo;Lcom/android/server/pm/pkg/ArchiveState$ArchiveActivityInfo;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/parsing/ParsedComponentStateUtils;->getNonLocalizedLabelAndIcon(Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/server/pm/pkg/PackageStateInternal;I)Landroid/util/Pair;+]Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedInstrumentationImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/pm/parsing/ParsedComponentStateUtils;->getNonLocalizedLabelAndIcon(Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/server/pm/pkg/PackageStateInternal;I)Landroid/util/Pair;+]Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedInstrumentationImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/parsing/library/ApexSharedLibraryUpdater;->updatePackage(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;ZZ)V HSPLcom/android/server/pm/parsing/pkg/AndroidPackageUtils;->fillVersionCodes(Lcom/android/server/pm/pkg/AndroidPackage;Landroid/content/pm/PackageInfo;)V+]Lcom/android/internal/pm/pkg/parsing/ParsingPackageHidden;Lcom/android/internal/pm/parsing/pkg/PackageImpl; +HSPLcom/android/server/pm/parsing/pkg/AndroidPackageUtils;->getRawSecondaryCpuAbi(Lcom/android/server/pm/pkg/AndroidPackage;)Ljava/lang/String; HSPLcom/android/server/pm/parsing/pkg/AndroidPackageUtils;->hasComponentClassName(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/lang/String;)Z+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/parsing/pkg/AndroidPackageUtils;->isMatchForSystemOnly(Lcom/android/server/pm/pkg/PackageState;J)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/permission/DefaultPermissionGrantPolicy;->grantRuntimePermissions(Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper;Landroid/content/pm/PackageInfo;Ljava/util/Set;ZZZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/permission/PermissionManager$SplitPermissionInfo;Landroid/permission/PermissionManager$SplitPermissionInfo;]Landroid/permission/PermissionManager;Landroid/permission/PermissionManager;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper;Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$1;,Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache;]Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy;Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/ArraySet; +HPLcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache;->getPermissionInfo(Ljava/lang/String;)Landroid/content/pm/PermissionInfo;+]Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper;Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$1; +HPLcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache;->getPermissionState(Ljava/lang/String;Landroid/content/pm/PackageInfo;Landroid/os/UserHandle;)Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache$PermissionState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/pm/permission/DefaultPermissionGrantPolicy;->grantRuntimePermissions(Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper;Landroid/content/pm/PackageInfo;Ljava/util/Set;ZZZI)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper;Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$1;,Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/ArraySet; HSPLcom/android/server/pm/permission/LegacyPermission;->write(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer; -HSPLcom/android/server/pm/permission/LegacyPermissionManagerService;->checkDeviceIdentifierAccess(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector; HSPLcom/android/server/pm/permission/LegacyPermissionManagerService;->verifyCallerCanCheckAccess(Ljava/lang/String;Ljava/lang/String;II)V+]Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector; -HSPLcom/android/server/pm/permission/LegacyPermissionState$PermissionState;-><init>(Lcom/android/server/pm/permission/LegacyPermissionState$PermissionState;)V -HSPLcom/android/server/pm/permission/LegacyPermissionState$PermissionState;-><init>(Ljava/lang/String;ZZI)V -HSPLcom/android/server/pm/permission/LegacyPermissionState$UserState;-><init>(Lcom/android/server/pm/permission/LegacyPermissionState$UserState;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/pm/permission/LegacyPermissionSettings;->writePermissions(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; HSPLcom/android/server/pm/permission/LegacyPermissionState;-><init>()V HSPLcom/android/server/pm/permission/LegacyPermissionState;->copyFrom(Lcom/android/server/pm/permission/LegacyPermissionState;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; -HSPLcom/android/server/pm/permission/LegacyPermissionState;->putPermissionState(Lcom/android/server/pm/permission/LegacyPermissionState$PermissionState;I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/permission/LegacyPermissionState$UserState;Lcom/android/server/pm/permission/LegacyPermissionState$UserState; -HSPLcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry;->isRegisteredAttributionSource(Landroid/content/AttributionSource;)Z+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkAppOpPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZ)I+]Landroid/content/AttributionSource;Landroid/content/AttributionSource; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;)Z+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal$HotwordDetectionServiceProvider;Lcom/android/server/voiceinteraction/HotwordDetectionConnection$2$$ExternalSyntheticLambda0;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/Set;Landroid/util/ArraySet;,Ljava/util/Collections$EmptySet; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZZI)I+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry;->isRegisteredAttributionSource(Landroid/content/AttributionSource;)Z+]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap; +HPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkAppOpPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZ)I +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal$HotwordDetectionServiceProvider;Lcom/android/server/voiceinteraction/HotwordDetectionConnection$2$$ExternalSyntheticLambda0;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;]Ljava/util/Set;Landroid/util/ArraySet;,Ljava/util/Collections$EmptySet; +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkPermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZZI)I+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkPermission(Ljava/lang/String;Landroid/content/AttributionSourceState;Ljava/lang/String;ZZZI)I -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkRuntimePermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZZI)I+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->getAttributionChainId(ZLandroid/content/AttributionSource;)I+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->performOpTransaction(Landroid/content/Context;Landroid/os/IBinder;ILandroid/content/AttributionSource;Ljava/lang/String;ZZZZZIIII)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->resolveAttributionSource(Landroid/content/Context;Landroid/content/AttributionSource;)Landroid/content/AttributionSource;+]Landroid/content/AttributionSource;Landroid/content/AttributionSource; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->resolvePackageName(Landroid/content/Context;Landroid/content/AttributionSource;)Ljava/lang/String;+]Landroid/content/AttributionSource;Landroid/content/AttributionSource;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->checkRuntimePermission(Landroid/content/Context;Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Ljava/lang/String;Landroid/content/AttributionSource;Ljava/lang/String;ZZZI)I+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap; +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->getAttributionChainId(ZLandroid/content/AttributionSource;)I +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->performOpTransaction(Landroid/content/Context;Landroid/os/IBinder;ILandroid/content/AttributionSource;Ljava/lang/String;ZZZZZIIII)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager; +HPLcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService;->resolvePackageName(Landroid/content/Context;Landroid/content/AttributionSource;)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager; HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->checkPermission(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerService;Lcom/android/server/pm/permission/PermissionManagerService; HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->checkUidPermission(ILjava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerService;Lcom/android/server/pm/permission/PermissionManagerService; HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->getGidsForUid(I)[I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->getGrantedPermissions(Ljava/lang/String;I)Ljava/util/Set;+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->getInstalledPermissions(Ljava/lang/String;)Ljava/util/Set;+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; -HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->isPermissionsReviewRequired(Ljava/lang/String;I)Z+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;,Lcom/android/server/pm/permission/PermissionManagerServiceImpl; +HSPLcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;->isPermissionsReviewRequired(Ljava/lang/String;I)Z+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; HSPLcom/android/server/pm/permission/PermissionManagerService;->-$$Nest$fgetmPermissionManagerServiceImpl(Lcom/android/server/pm/permission/PermissionManagerService;)Lcom/android/server/pm/permission/PermissionManagerServiceInterface; -HSPLcom/android/server/pm/permission/PermissionManagerService;->checkPermission(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;,Lcom/android/server/pm/permission/PermissionManagerServiceImpl; -HSPLcom/android/server/pm/permission/PermissionManagerService;->checkUidPermission(ILjava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerService;Lcom/android/server/pm/permission/PermissionManagerService;]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;,Lcom/android/server/pm/permission/PermissionManagerServiceImpl; -HSPLcom/android/server/pm/permission/PermissionManagerService;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;,Lcom/android/server/pm/permission/PermissionManagerServiceImpl; -HSPLcom/android/server/pm/permission/PermissionManagerService;->getPermissionInfo(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/PermissionInfo;+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;,Lcom/android/server/pm/permission/PermissionManagerServiceImpl; +HSPLcom/android/server/pm/permission/PermissionManagerService;->checkPermission(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; +HSPLcom/android/server/pm/permission/PermissionManagerService;->checkUidPermission(ILjava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; +HSPLcom/android/server/pm/permission/PermissionManagerService;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; +HSPLcom/android/server/pm/permission/PermissionManagerService;->getPermissionInfo(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/PermissionInfo;+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService; HSPLcom/android/server/pm/permission/PermissionManagerService;->getPersistentDeviceId(I)Ljava/lang/String;+]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService; -HSPLcom/android/server/pm/permission/PermissionManagerService;->isRegisteredAttributionSource(Landroid/content/AttributionSourceState;)Z+]Lcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry;Lcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry; +HSPLcom/android/server/pm/permission/PermissionManagerService;->isRegisteredAttributionSource(Landroid/content/AttributionSourceState;)Z HSPLcom/android/server/pm/pkg/PackageStateInternal;->getUserStateOrDefault(I)Lcom/android/server/pm/pkg/PackageUserState;+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/pkg/PackageStateInternal;->getUserStateOrDefault(I)Lcom/android/server/pm/pkg/PackageUserStateInternal;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/pkg/PackageStateUnserialized;-><init>(Lcom/android/server/pm/PackageSetting;)V -HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getLastPackageUsageTimeInMills()[J+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getApexModuleName()Ljava/lang/String; +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getLastPackageUsageTimeInMills()[J +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getOverrideSeInfo()Ljava/lang/String; +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getSeInfo()Ljava/lang/String; +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getUsesLibraryFiles()Ljava/util/List; +HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getUsesLibraryInfos()Ljava/util/List; HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->isHiddenUntilInstalled()Z HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->isUpdatedSystemApp()Z HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->setLastPackageUsageTimeInMills(IJ)Lcom/android/server/pm/pkg/PackageStateUnserialized;+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized; HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->updateFrom(Lcom/android/server/pm/pkg/PackageStateUnserialized;)V+]Lcom/android/server/pm/SettingBase;Lcom/android/server/pm/PackageSetting;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; HSPLcom/android/server/pm/pkg/PackageStateUtils;->isEnabledAndMatches(Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;JI)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/pkg/PackageUserStateImpl$1;->createSnapshot()Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;-><init>(Lcom/android/server/utils/Watchable;)V HSPLcom/android/server/pm/pkg/PackageUserStateImpl;-><init>(Lcom/android/server/utils/Watchable;Lcom/android/server/pm/pkg/PackageUserStateImpl;)V+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; -HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getAllOverlayPaths()Landroid/content/pm/overlay/OverlayPaths;+]Landroid/content/pm/overlay/OverlayPaths$Builder;Landroid/content/pm/overlay/OverlayPaths$Builder; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getAllOverlayPaths()Landroid/content/pm/overlay/OverlayPaths; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getArchiveState()Lcom/android/server/pm/pkg/ArchiveState; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getBoolean(I)Z -HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getDisabledComponents()Landroid/util/ArraySet;+]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getDisabledComponentsNoCopy()Lcom/android/server/utils/WatchedArraySet; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getEnabledComponents()Landroid/util/ArraySet;+]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getEnabledComponentsNoCopy()Lcom/android/server/utils/WatchedArraySet; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getEnabledState()I HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getFirstInstallTimeMillis()J HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->getOverrideLabelIconForComponent(Landroid/content/ComponentName;)Landroid/util/Pair;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; @@ -2821,94 +2863,93 @@ HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isComponentEnabled(Ljava/la HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isHidden()Z HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isInstalled()Z HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isInstantApp()Z -HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isQuarantined()Z+]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/pm/pkg/SuspendParams;Lcom/android/server/pm/pkg/SuspendParams;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isNotLaunched()Z +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isQuarantined()Z+]Lcom/android/server/pm/pkg/PackageUserStateImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isStopped()Z HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isSuspended()Z HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isVirtualPreload()Z HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->onChanged()V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setBoolean(IZ)V HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setDisabledComponents(Landroid/util/ArraySet;)Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setEnabledComponents(Landroid/util/ArraySet;)Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->snapshot()Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isAvailable(Lcom/android/server/pm/pkg/PackageUserState;J)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isEnabled(Lcom/android/server/pm/pkg/PackageUserState;ZZLjava/lang/String;J)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isMatch(Lcom/android/server/pm/pkg/PackageUserState;Landroid/content/pm/ComponentInfo;J)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo; HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isMatch(Lcom/android/server/pm/pkg/PackageUserState;ZZLcom/android/internal/pm/pkg/component/ParsedMainComponent;J)Z+]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl; HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isMatch(Lcom/android/server/pm/pkg/PackageUserState;ZZZZLjava/lang/String;J)Z -HSPLcom/android/server/pm/pkg/mutate/PackageStateMutator;->onPackageStateChanged()V+]Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong; +HSPLcom/android/server/pm/pkg/SharedLibraryWrapper;->getInfo()Landroid/content/pm/SharedLibraryInfo; HSPLcom/android/server/pm/resolution/ComponentResolver$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->addActivity(Lcom/android/server/pm/Computer;Lcom/android/internal/pm/pkg/component/ParsedActivity;Ljava/lang/String;Ljava/util/List;)V+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->addActivity(Lcom/android/server/pm/Computer;Lcom/android/internal/pm/pkg/component/ParsedActivity;Ljava/lang/String;Ljava/util/List;)V+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->allowFilterResult(Landroid/util/Pair;Ljava/util/List;)Z+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->allowFilterResult(Ljava/lang/Object;Ljava/util/List;)Z+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->getIntentFilter(Landroid/util/Pair;)Landroid/content/IntentFilter;+]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter;+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver; -HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->isPackageForFilter(Ljava/lang/String;Landroid/util/Pair;)Z+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->isPackageForFilter(Ljava/lang/String;Landroid/util/Pair;)Z+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->newResult(Lcom/android/server/pm/Computer;Landroid/util/Pair;IIJ)Landroid/content/pm/ResolveInfo;+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/UserNeedsBadgingCache;Lcom/android/server/pm/UserNeedsBadgingCache;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object;+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->queryIntent(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->queryIntentForPackage(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList; +HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->queryIntentForPackage(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;->sortResults(Ljava/util/List;)V+]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/resolution/ComponentResolver$MimeGroupsAwareIntentResolver;->addFilter(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Landroid/util/Pair;)V+]Lcom/android/server/IntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ProviderIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolver$MimeGroupsAwareIntentResolver;->isFilterStopped(Lcom/android/server/pm/Computer;Landroid/util/Pair;I)Z+]Lcom/android/internal/pm/pkg/component/ParsedComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; HSPLcom/android/server/pm/resolution/ComponentResolver$MimeGroupsAwareIntentResolver;->isFilterStopped(Lcom/android/server/pm/Computer;Ljava/lang/Object;I)Z+]Lcom/android/server/pm/resolution/ComponentResolver$MimeGroupsAwareIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;,Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->addService(Lcom/android/server/pm/Computer;Lcom/android/internal/pm/pkg/component/ParsedService;)V+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->allowFilterResult(Landroid/util/Pair;Ljava/util/List;)Z+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->allowFilterResult(Ljava/lang/Object;Ljava/util/List;)Z+]Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->allowFilterResult(Ljava/lang/Object;Ljava/util/List;)Z HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->getIntentFilter(Landroid/util/Pair;)Landroid/content/IntentFilter;+]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter;+]Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->isPackageForFilter(Ljava/lang/String;Landroid/util/Pair;)Z+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z+]Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->newResult(Lcom/android/server/pm/Computer;Landroid/util/Pair;IIJ)Landroid/content/pm/ResolveInfo;+]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object;+]Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->getIntentFilter(Ljava/lang/Object;)Landroid/content/IntentFilter; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->isPackageForFilter(Ljava/lang/String;Landroid/util/Pair;)Z+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->isPackageForFilter(Ljava/lang/String;Ljava/lang/Object;)Z +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->newResult(Lcom/android/server/pm/Computer;Landroid/util/Pair;IIJ)Landroid/content/pm/ResolveInfo;+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object; HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->queryIntent(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService; -HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->queryIntentForPackage(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List;+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList; +HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->queryIntentForPackage(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List;+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver;->sortResults(Ljava/util/List;)V+]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/pm/resolution/ComponentResolver;->addActivitiesLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/List;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver;->addAllComponents(Lcom/android/server/pm/pkg/AndroidPackage;ZLjava/lang/String;Lcom/android/server/pm/Computer;)V+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/resolution/ComponentResolver;->addProvidersLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver;->addReceiversLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver;->addServicesLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; +HSPLcom/android/server/pm/resolution/ComponentResolver;->findMatchingActivity(Ljava/util/List;Lcom/android/internal/pm/pkg/component/ParsedActivity;)Lcom/android/internal/pm/pkg/component/ParsedActivity;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/pm/resolution/ComponentResolver;->lambda$static$0(Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;)I HSPLcom/android/server/pm/resolution/ComponentResolver;->snapshot()Lcom/android/server/pm/resolution/ComponentResolverApi; -HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getActivity(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getReceiver(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getService(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedService;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getActivity(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity; +HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getReceiver(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity; +HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getService(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedService; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryActivities(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List;+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryActivities(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List;+]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver; -HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryProvider(Lcom/android/server/pm/Computer;Ljava/lang/String;JI)Landroid/content/pm/ProviderInfo;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; -HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryProviders(Lcom/android/server/pm/Computer;Ljava/lang/String;Ljava/lang/String;IJI)Ljava/util/List;+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/parsing/PackageInfoUtils$CachedApplicationInfoGenerator;Lcom/android/server/pm/parsing/PackageInfoUtils$CachedApplicationInfoGenerator;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryProvider(Lcom/android/server/pm/Computer;Ljava/lang/String;JI)Landroid/content/pm/ProviderInfo;+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; +HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryProviders(Lcom/android/server/pm/Computer;Ljava/lang/String;Ljava/lang/String;IJI)Ljava/util/List;+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryReceivers(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryReceivers(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryServices(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JI)Ljava/util/List; HSPLcom/android/server/pm/resolution/ComponentResolverBase;->queryServices(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JLjava/util/List;I)Ljava/util/List; -HSPLcom/android/server/pm/verify/domain/DomainVerificationCollector;->collectDomainsInternal(Lcom/android/server/pm/pkg/AndroidPackage;ZZLjava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;+]Landroid/content/IntentFilter$AuthorityEntry;Landroid/content/IntentFilter$AuthorityEntry;]Landroid/content/IntentFilter;Landroid/content/IntentFilter;]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/verify/domain/DomainVerificationCollector;Lcom/android/server/pm/verify/domain/DomainVerificationCollector;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/function/BiFunction;Lcom/android/server/pm/verify/domain/DomainVerificationCollector$$ExternalSyntheticLambda0; -HSPLcom/android/server/pm/verify/domain/DomainVerificationCollector;->isValidHost(Ljava/lang/String;)Z +HSPLcom/android/server/pm/verify/domain/DomainVerificationCollector;->collectDomainsInternal(Lcom/android/server/pm/pkg/AndroidPackage;ZZLjava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/function/BiFunction;Lcom/android/server/pm/verify/domain/DomainVerificationCollector$$ExternalSyntheticLambda0; HSPLcom/android/server/pm/verify/domain/DomainVerificationEnforcer;->callerIsLegacyUserSelector(IILjava/lang/String;I)Z -HSPLcom/android/server/pm/verify/domain/DomainVerificationLegacySettings;->writeSettings(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/pm/SettingsXml$Serializer;Lcom/android/server/pm/SettingsXml$Serializer;]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl;]Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings$LegacyState;Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings$LegacyState; +HSPLcom/android/server/pm/verify/domain/DomainVerificationLegacySettings;->writeSettings(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl;]Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings$LegacyState;Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings$LegacyState; HSPLcom/android/server/pm/verify/domain/DomainVerificationPersistence;->createPkgStateFromXml(Lcom/android/server/pm/SettingsXml$ReadSection;)Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState; -HSPLcom/android/server/pm/verify/domain/DomainVerificationPersistence;->writePkgStateToXml(Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;ILjava/util/function/Function;)V+]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl;]Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;]Ljava/lang/Object;Ljava/util/UUID;]Ljava/util/function/Function;Lcom/android/server/pm/verify/domain/DomainVerificationService$$ExternalSyntheticLambda0;,Lcom/android/server/pm/verify/domain/DomainVerificationService$$ExternalSyntheticLambda1; -HSPLcom/android/server/pm/verify/domain/DomainVerificationPersistence;->writeStateMap(Lcom/android/server/pm/SettingsXml$WriteSection;Landroid/util/ArrayMap;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/pm/verify/domain/DomainVerificationPersistence;->writePkgStateToXml(Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;ILjava/util/function/Function;)V+]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl;]Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;]Ljava/util/function/Function;Lcom/android/server/pm/verify/domain/DomainVerificationService$$ExternalSyntheticLambda1; +HSPLcom/android/server/pm/verify/domain/DomainVerificationPersistence;->writeStateMap(Lcom/android/server/pm/SettingsXml$WriteSection;Landroid/util/ArrayMap;)V+]Lcom/android/server/pm/SettingsXml$WriteSection;Lcom/android/server/pm/SettingsXml$WriteSectionImpl; HSPLcom/android/server/pm/verify/domain/DomainVerificationService;->addPackage(Lcom/android/server/pm/pkg/PackageStateInternal;Landroid/content/pm/verify/domain/DomainSet;)V HSPLcom/android/server/pm/verify/domain/DomainVerificationService;->setLegacyUserState(Ljava/lang/String;II)Z HSPLcom/android/server/pm/verify/domain/DomainVerificationUtils;->buildMockAppInfo(Lcom/android/server/pm/pkg/AndroidPackage;)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; HSPLcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;-><init>(Ljava/lang/String;Ljava/util/UUID;ZLandroid/util/ArrayMap;Landroid/util/SparseArray;Ljava/lang/String;Landroid/util/ArrayMap;)V -HSPLcom/android/server/policy/AppOpsPolicy;->checkOperation(IILjava/lang/String;Ljava/lang/String;IZLcom/android/internal/util/function/HexFunction;)I+]Lcom/android/internal/util/function/HexFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda9;]Lcom/android/server/policy/AppOpsPolicy;Lcom/android/server/policy/AppOpsPolicy;]Ljava/lang/Integer;Ljava/lang/Integer; -HSPLcom/android/server/policy/AppOpsPolicy;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ILcom/android/internal/util/function/HexConsumer;)V+]Lcom/android/internal/util/function/HexConsumer;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11;]Lcom/android/server/policy/AppOpsPolicy;Lcom/android/server/policy/AppOpsPolicy; -HSPLcom/android/server/policy/AppOpsPolicy;->noteOperation(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;ZLcom/android/internal/util/function/OctFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/OctFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda1;]Lcom/android/server/policy/AppOpsPolicy;Lcom/android/server/policy/AppOpsPolicy; -HSPLcom/android/server/policy/AppOpsPolicy;->resolveDatasourceOp(IILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/policy/AppOpsPolicy;Lcom/android/server/policy/AppOpsPolicy; -HSPLcom/android/server/policy/AppOpsPolicy;->resolveRecordAudioOp(II)I+]Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;]Landroid/service/voice/VoiceInteractionManagerInternal;Lcom/android/server/voiceinteraction/VoiceInteractionManagerService$LocalService; +HSPLcom/android/server/pm/verify/domain/models/DomainVerificationPkgState;->getPackageName()Ljava/lang/String; +HSPLcom/android/server/policy/AppOpsPolicy;->checkOperation(IILjava/lang/String;Ljava/lang/String;IZLcom/android/internal/util/function/HexFunction;)I+]Lcom/android/internal/util/function/HexFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda9; +HSPLcom/android/server/policy/AppOpsPolicy;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ILcom/android/internal/util/function/HexConsumer;)V+]Lcom/android/internal/util/function/HexConsumer;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11; +HSPLcom/android/server/policy/AppOpsPolicy;->noteOperation(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;ZLcom/android/internal/util/function/OctFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/OctFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda1; +HSPLcom/android/server/policy/AppOpsPolicy;->resolveDatasourceOp(IILjava/lang/String;Ljava/lang/String;)I HSPLcom/android/server/policy/AppOpsPolicy;->resolveSandboxedServiceOp(II)I HSPLcom/android/server/policy/AppOpsPolicy;->resolveUid(II)I+]Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;]Landroid/service/voice/VoiceInteractionManagerInternal;Lcom/android/server/voiceinteraction/VoiceInteractionManagerService$LocalService; -HSPLcom/android/server/policy/AppOpsPolicy;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZIILcom/android/internal/util/function/DodecFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/DodecFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7;]Lcom/android/server/policy/AppOpsPolicy;Lcom/android/server/policy/AppOpsPolicy; -HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->addPackage(Ljava/lang/String;)V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser; -HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->addPermissionAppOp(Landroid/content/pm/PackageInfo;Lcom/android/server/pm/pkg/AndroidPackage;Landroid/content/pm/PermissionInfo;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/policy/AppOpsPolicy;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZIILcom/android/internal/util/function/DodecFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/DodecFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7; +HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->addPermissionAppOp(Landroid/content/pm/PackageInfo;Lcom/android/server/pm/pkg/AndroidPackage;Landroid/content/pm/PermissionInfo;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->shouldGrantAppOp(Landroid/content/pm/PackageInfo;Lcom/android/server/pm/pkg/AndroidPackage;Landroid/content/pm/PermissionInfo;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Lcom/android/server/policy/SoftRestrictedPermissionPolicy;Lcom/android/server/policy/SoftRestrictedPermissionPolicy$2;,Lcom/android/server/policy/SoftRestrictedPermissionPolicy$3; -HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->syncPackages()V+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;]Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;Lcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/policy/PhoneWindowManager;->isKeyguardOccluded()Z+]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate; +HSPLcom/android/server/policy/PermissionPolicyService$PermissionToOpSynchroniser;->syncPackages()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/policy/PhoneWindowManager;->isKeyguardShowing()Z+]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate; HSPLcom/android/server/policy/PhoneWindowManager;->isKeyguardShowingAndNotOccluded()Z+]Lcom/android/server/policy/PhoneWindowManager;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate; HSPLcom/android/server/policy/PhoneWindowManager;->setAllowLockscreenWhenOn(IZ)V+]Ljava/util/HashSet;Ljava/util/HashSet; -HSPLcom/android/server/policy/PhoneWindowManager;->updateLockScreenTimeout()V+]Landroid/os/Handler;Lcom/android/server/policy/PhoneWindowManager$PolicyHandler;]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Ljava/util/HashSet;Ljava/util/HashSet; +HSPLcom/android/server/policy/PhoneWindowManager;->updateLockScreenTimeout()V+]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Ljava/util/HashSet;Ljava/util/HashSet; HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerFromTypeLw(I)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerFromTypeLw(IZ)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerLw(Lcom/android/server/policy/WindowManagerPolicy$WindowState;)I+]Lcom/android/server/policy/WindowManagerPolicy$WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; @@ -2917,15 +2958,32 @@ HSPLcom/android/server/policy/keyguard/KeyguardServiceDelegate;->isSecure(I)Z+]L HSPLcom/android/server/policy/keyguard/KeyguardServiceDelegate;->isShowing()Z+]Lcom/android/server/policy/keyguard/KeyguardServiceWrapper;Lcom/android/server/policy/keyguard/KeyguardServiceWrapper; HPLcom/android/server/policy/keyguard/KeyguardServiceWrapper;->isShowing()Z+]Lcom/android/server/policy/keyguard/KeyguardStateMonitor;Lcom/android/server/policy/keyguard/KeyguardStateMonitor; HPLcom/android/server/policy/keyguard/KeyguardStateMonitor;->isShowing()Z -HSPLcom/android/server/policy/role/RoleServicePlatformHelperImpl;->lambda$computePackageStateHash$0(Ljava/io/DataOutputStream;Landroid/content/pm/PackageManagerInternal;ILcom/android/server/pm/pkg/AndroidPackage;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Landroid/content/pm/SigningDetails;Landroid/content/pm/SigningDetails;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/io/DataOutputStream;Ljava/io/DataOutputStream;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/power/AttentionDetector;->updateUserActivity(JJ)J+]Landroid/attention/AttentionManagerInternal;Lcom/android/server/attention/AttentionManagerService$LocalService;]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean; -HSPLcom/android/server/power/FaceDownDetector;->onSensorChanged(Landroid/hardware/SensorEvent;)V+]Landroid/hardware/Sensor;Landroid/hardware/Sensor;]Lcom/android/server/power/FaceDownDetector$ExponentialMovingAverage;Lcom/android/server/power/FaceDownDetector$ExponentialMovingAverage;]Lcom/android/server/power/FaceDownDetector;Lcom/android/server/power/FaceDownDetector;]Ljava/time/Duration;Ljava/time/Duration; -HSPLcom/android/server/power/Notifier$NotifierHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/os/Handler;Lcom/android/server/power/Notifier$NotifierHandler; -HSPLcom/android/server/power/Notifier;->getBatteryStatsWakeLockMonitorType(I)I -HSPLcom/android/server/power/Notifier;->onScreenPolicyUpdate(II)V+]Landroid/os/Handler;Lcom/android/server/power/Notifier$NotifierHandler;]Landroid/os/Message;Landroid/os/Message; -HSPLcom/android/server/power/Notifier;->onWakeLockAcquired(ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/WakeLockLog;Lcom/android/server/power/WakeLockLog;]Lcom/android/server/power/WakefulnessSessionObserver;Lcom/android/server/power/WakefulnessSessionObserver;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags; +HSPLcom/android/server/policy/role/RoleServicePlatformHelperImpl;->lambda$computePackageStateHash$0(Ljava/io/DataOutputStream;Landroid/content/pm/PackageManagerInternal;ILcom/android/server/pm/pkg/AndroidPackage;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/io/DataOutputStream;Ljava/io/DataOutputStream;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; +HSPLcom/android/server/power/AttentionDetector;->updateUserActivity(JJ)J+]Landroid/attention/AttentionManagerInternal;Lcom/android/server/attention/AttentionManagerService$LocalService;]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService; +HSPLcom/android/server/power/FaceDownDetector;->onSensorChanged(Landroid/hardware/SensorEvent;)V +HSPLcom/android/server/power/InattentiveSleepWarningController;->isShown()Z +HSPLcom/android/server/power/Notifier$$ExternalSyntheticLambda2;-><init>(Lcom/android/server/power/Notifier;ZLjava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;JLandroid/os/IWakeLockCallback;)V +HSPLcom/android/server/power/Notifier$$ExternalSyntheticLambda2;->run()V +HPLcom/android/server/power/Notifier$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/power/Notifier;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;ILandroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZ)V +HPLcom/android/server/power/Notifier$$ExternalSyntheticLambda5;->run()V +HSPLcom/android/server/power/Notifier$NotifierHandler;->handleMessage(Landroid/os/Message;)V +HSPLcom/android/server/power/Notifier$RealInjector;->currentTimeMillis()J +HSPLcom/android/server/power/Notifier;->lambda$notifyWakeLockListener$9(ZLjava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;JLandroid/os/IWakeLockCallback;)V+]Landroid/os/IWakeLockCallback;Landroid/os/IWakeLockCallback$Stub$Proxy;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags; +HSPLcom/android/server/power/Notifier;->notifyWakeLockListener(Landroid/os/IWakeLockCallback;Ljava/lang/String;ZIIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/power/Notifier$Injector;Lcom/android/server/power/Notifier$RealInjector; +HSPLcom/android/server/power/Notifier;->notifyWakelockAcquisition(Ljava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;J)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService; +HSPLcom/android/server/power/Notifier;->notifyWakelockRelease(Ljava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;J)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService; +HSPLcom/android/server/power/Notifier;->onScreenPolicyUpdate(II)V+]Lcom/android/server/power/WakefulnessSessionObserver;Lcom/android/server/power/WakefulnessSessionObserver; +HSPLcom/android/server/power/Notifier;->onUserActivity(III)V+]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/power/WakefulnessSessionObserver;Lcom/android/server/power/WakefulnessSessionObserver; +HSPLcom/android/server/power/Notifier;->onWakeLockAcquired(ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/power/WakefulnessSessionObserver;Lcom/android/server/power/WakefulnessSessionObserver;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags; HSPLcom/android/server/power/Notifier;->onWakeLockChanging(ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;)V+]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; +HSPLcom/android/server/power/Notifier;->onWakeLockReleased(ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;I)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/power/WakefulnessSessionObserver;Lcom/android/server/power/WakefulnessSessionObserver;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags; +HSPLcom/android/server/power/Notifier;->sendUserActivity(II)V+]Landroid/telephony/TelephonyManager;Landroid/telephony/TelephonyManager;]Lcom/android/server/input/InputManagerInternal;Lcom/android/server/input/InputManagerService$LocalService;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/power/FaceDownDetector;Lcom/android/server/power/FaceDownDetector;]Lcom/android/server/power/ScreenUndimDetector;Lcom/android/server/power/ScreenUndimDetector; HSPLcom/android/server/power/PowerGroup;->getDesiredScreenPolicyLocked(ZZZZZ)I+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; +HSPLcom/android/server/power/PowerGroup;->getGroupId()I +HSPLcom/android/server/power/PowerGroup;->getLastUserActivityTimeLocked()J +HSPLcom/android/server/power/PowerGroup;->getLastUserActivityTimeNoChangeLightsLocked()J +HSPLcom/android/server/power/PowerGroup;->getLastWakeTimeLocked()J +HPLcom/android/server/power/PowerGroup;->getUserActivitySummaryLocked()I HSPLcom/android/server/power/PowerGroup;->getWakeLockSummaryLocked()I HSPLcom/android/server/power/PowerGroup;->getWakefulnessLocked()I HSPLcom/android/server/power/PowerGroup;->isBrightOrDimLocked()Z+]Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest; @@ -2934,122 +2992,129 @@ HSPLcom/android/server/power/PowerGroup;->isReadyLocked()Z HSPLcom/android/server/power/PowerGroup;->isSandmanSummonedLocked()Z HSPLcom/android/server/power/PowerGroup;->needSuspendBlockerLocked(ZZ)Z+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; HSPLcom/android/server/power/PowerGroup;->setReadyLocked(Z)Z +HSPLcom/android/server/power/PowerGroup;->setUserActivitySummaryLocked(I)V HSPLcom/android/server/power/PowerGroup;->supportsSandmanLocked()Z -HSPLcom/android/server/power/PowerGroup;->updateLocked(FZZIIFZLandroid/os/PowerSaveState;ZZZZZZ)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; -HSPLcom/android/server/power/PowerManagerService$BinderService;->acquireWakeLock(Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;ILandroid/os/IWakeLockCallback;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/WorkSource;Landroid/os/WorkSource; -HSPLcom/android/server/power/PowerManagerService$BinderService;->isDeviceIdleMode()Z+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerGroup;->updateLocked(FLjava/lang/CharSequence;ZZIIFZZLandroid/os/PowerSaveState;ZZZZZZ)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; +HSPLcom/android/server/power/PowerManagerService$BinderService;->acquireWakeLock(Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;ILandroid/os/IWakeLockCallback;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags; +HSPLcom/android/server/power/PowerManagerService$BinderService;->isDeviceIdleMode()Z HSPLcom/android/server/power/PowerManagerService$BinderService;->isInteractive()Z HSPLcom/android/server/power/PowerManagerService$BinderService;->isLightDeviceIdleMode()Z HSPLcom/android/server/power/PowerManagerService$BinderService;->releaseWakeLock(Landroid/os/IBinder;I)V+]Landroid/content/Context;Landroid/app/ContextImpl; HSPLcom/android/server/power/PowerManagerService$BinderService;->updateWakeLockWorkSource(Landroid/os/IBinder;Landroid/os/WorkSource;Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/WorkSource;Landroid/os/WorkSource; HSPLcom/android/server/power/PowerManagerService$Injector$2;->uptimeMillis()J -HSPLcom/android/server/power/PowerManagerService$LocalService;->finishUidChanges()V+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService$LocalService;->startUidChanges()V+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService$LocalService;->updateUidProcState(II)V+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService$NativeWrapper;->nativeAcquireSuspendBlocker(Ljava/lang/String;)V -HSPLcom/android/server/power/PowerManagerService$PowerManagerHandlerCallback;->handleMessage(Landroid/os/Message;)Z+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->acquire(Ljava/lang/String;)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper;]Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl;Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl; -HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->recordReferenceLocked(Ljava/lang/String;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongArray;Landroid/util/LongArray; -HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->release(Ljava/lang/String;)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper;]Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl;Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl; -HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->removeReferenceLocked(Ljava/lang/String;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongArray;Landroid/util/LongArray; -HSPLcom/android/server/power/PowerManagerService$WakeLock;-><init>(Lcom/android/server/power/PowerManagerService;Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;IILcom/android/server/power/PowerManagerService$UidState;Landroid/os/IWakeLockCallback;)V+]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock; +HSPLcom/android/server/power/PowerManagerService$LocalService;->finishUidChanges()V +HSPLcom/android/server/power/PowerManagerService$LocalService;->startUidChanges()V +HSPLcom/android/server/power/PowerManagerService$LocalService;->updateUidProcState(II)V +HSPLcom/android/server/power/PowerManagerService$PowerManagerHandlerCallback;->handleMessage(Landroid/os/Message;)Z +HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->acquire(Ljava/lang/String;)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper; +HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->recordReferenceLocked(Ljava/lang/String;)V+]Landroid/util/LongArray;Landroid/util/LongArray; +HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->release(Ljava/lang/String;)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper; +HSPLcom/android/server/power/PowerManagerService$SuspendBlockerImpl;->removeReferenceLocked(Ljava/lang/String;)V+]Landroid/util/LongArray;Landroid/util/LongArray; +HSPLcom/android/server/power/PowerManagerService$WakeLock;-><init>(Lcom/android/server/power/PowerManagerService;Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;IILcom/android/server/power/PowerManagerService$UidState;Landroid/os/IWakeLockCallback;)V HSPLcom/android/server/power/PowerManagerService$WakeLock;->getPowerGroupId()Ljava/lang/Integer;+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService; HSPLcom/android/server/power/PowerManagerService$WakeLock;->linkToDeath()V+]Landroid/os/IBinder;Landroid/os/Binder;,Landroid/os/BinderProxy; HSPLcom/android/server/power/PowerManagerService$WakeLock;->unlinkToDeath()V+]Landroid/os/IBinder;Landroid/os/Binder;,Landroid/os/BinderProxy; -HSPLcom/android/server/power/PowerManagerService;->acquireWakeLockInternal(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;IILandroid/os/IWakeLockCallback;)V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/power/PowerManagerService;->acquireWakeLockInternal(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;IILandroid/os/IWakeLockCallback;)V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/power/PowerManagerService;->adjustWakeLockSummary(II)I -HSPLcom/android/server/power/PowerManagerService;->applyWakeLockFlagsOnAcquireLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Ljava/lang/Integer;Ljava/lang/Integer; +HSPLcom/android/server/power/PowerManagerService;->applyWakeLockFlagsOnAcquireLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; HSPLcom/android/server/power/PowerManagerService;->applyWakeLockFlagsOnReleaseLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; HSPLcom/android/server/power/PowerManagerService;->areAllPowerGroupsReadyLocked()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; -HSPLcom/android/server/power/PowerManagerService;->doesIdleStateBlockWakeLocksLocked()Z HSPLcom/android/server/power/PowerManagerService;->findWakeLockIndexLocked(Landroid/os/IBinder;)I+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/PowerManagerService;->finishUidChangesInternal()V+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->finishWakefulnessChangeIfNeededLocked()V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->finishUidChangesInternal()V +HSPLcom/android/server/power/PowerManagerService;->finishWakefulnessChangeIfNeededLocked()V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; HSPLcom/android/server/power/PowerManagerService;->getAttentiveTimeoutLocked()J HSPLcom/android/server/power/PowerManagerService;->getNextProfileTimeoutLocked(J)J+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/power/PowerManagerService;->getScreenOffTimeoutLocked(JJ)J+]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->getScreenOffTimeoutLocked(JJ)J HSPLcom/android/server/power/PowerManagerService;->getScreenOffTimeoutOverrideLocked(JJ)J HSPLcom/android/server/power/PowerManagerService;->getSleepTimeoutLocked(J)J HSPLcom/android/server/power/PowerManagerService;->getWakeLockSummaryFlags(Lcom/android/server/power/PowerManagerService$WakeLock;)I -HSPLcom/android/server/power/PowerManagerService;->handleSandman(I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/service/dreams/DreamManagerInternal;Lcom/android/server/dreams/DreamManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->isAttentiveTimeoutExpired(Lcom/android/server/power/PowerGroup;J)Z+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->handleSandman(I)V+]Landroid/service/dreams/DreamManagerInternal;Lcom/android/server/dreams/DreamManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; +HSPLcom/android/server/power/PowerManagerService;->isAttentiveTimeoutExpired(Lcom/android/server/power/PowerGroup;J)Z+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; HPLcom/android/server/power/PowerManagerService;->isBeingKeptAwakeLocked(Lcom/android/server/power/PowerGroup;)Z+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; HSPLcom/android/server/power/PowerManagerService;->isDeviceIdleModeInternal()Z HSPLcom/android/server/power/PowerManagerService;->isGloballyInteractiveInternal()Z HSPLcom/android/server/power/PowerManagerService;->isItBedTimeYetLocked(Lcom/android/server/power/PowerGroup;)Z+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; HSPLcom/android/server/power/PowerManagerService;->isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()Z -HSPLcom/android/server/power/PowerManagerService;->maybeHideInattentiveSleepWarningLocked(JJ)Z+]Lcom/android/server/power/InattentiveSleepWarningController;Lcom/android/server/power/InattentiveSleepWarningController;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->needSuspendBlockerLocked()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockAcquiredLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockChangingLocked(Lcom/android/server/power/PowerManagerService$WakeLock;ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->maybeHideInattentiveSleepWarningLocked(JJ)Z+]Lcom/android/server/power/InattentiveSleepWarningController;Lcom/android/server/power/InattentiveSleepWarningController; +HSPLcom/android/server/power/PowerManagerService;->needSuspendBlockerLocked()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; +HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockAcquiredLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; +HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockChangingLocked(Lcom/android/server/power/PowerManagerService$WakeLock;ILjava/lang/String;Ljava/lang/String;IILandroid/os/WorkSource;Ljava/lang/String;Landroid/os/IWakeLockCallback;)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockLongFinishedLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; -HSPLcom/android/server/power/PowerManagerService;->releaseWakeLockInternal(Landroid/os/IBinder;I)V+]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/PowerManagerService;->restartNofifyLongTimerLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->scheduleSandmanLocked()V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; +HSPLcom/android/server/power/PowerManagerService;->notifyWakeLockReleasedLocked(Lcom/android/server/power/PowerManagerService$WakeLock;I)V+]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier; +HSPLcom/android/server/power/PowerManagerService;->releaseWakeLockInternal(Landroid/os/IBinder;I)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/power/PowerManagerService;->removeWakeLockNoUpdateLocked(Lcom/android/server/power/PowerManagerService$WakeLock;II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/power/PowerManagerService;->restartNofifyLongTimerLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)V+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; +HSPLcom/android/server/power/PowerManagerService;->scheduleSandmanLocked()V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; HSPLcom/android/server/power/PowerManagerService;->scheduleUserInactivityTimeout(J)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/power/PowerManagerService;->setHalAutoSuspendModeLocked(Z)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/power/PowerManagerService;->setHalInteractiveModeLocked(Z)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/power/PowerManagerService;->setWakeLockDisabledStateLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)Z+]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->setHalAutoSuspendModeLocked(Z)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper; +HSPLcom/android/server/power/PowerManagerService;->setHalInteractiveModeLocked(Z)V+]Lcom/android/server/power/PowerManagerService$NativeWrapper;Lcom/android/server/power/PowerManagerService$NativeWrapper; +HSPLcom/android/server/power/PowerManagerService;->setWakeLockDisabledStateLocked(Lcom/android/server/power/PowerManagerService$WakeLock;)Z HSPLcom/android/server/power/PowerManagerService;->shouldUseProximitySensorLocked()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; -HSPLcom/android/server/power/PowerManagerService;->startUidChangesInternal()V HSPLcom/android/server/power/PowerManagerService;->uidActiveInternal(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; HSPLcom/android/server/power/PowerManagerService;->uidIdleInternal(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/power/PowerManagerService;->updateAttentiveStateLocked(JI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->updateAttentiveStateLocked(JI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; HSPLcom/android/server/power/PowerManagerService;->updateDreamLocked(IZ)V -HSPLcom/android/server/power/PowerManagerService;->updateIsPoweredLocked(I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/BatteryManagerInternal;Lcom/android/server/BatteryService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Lcom/android/server/power/WirelessChargerDetector;Lcom/android/server/power/WirelessChargerDetector;]Lcom/android/server/power/batterysaver/BatterySaverStateMachine;Lcom/android/server/power/batterysaver/BatterySaverStateMachine;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/power/PowerManagerService;->updatePowerGroupsLocked(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/util/LatencyTracker;Lcom/android/internal/util/LatencyTracker;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Lcom/android/server/power/batterysaver/BatterySaverPolicy;Lcom/android/server/power/batterysaver/BatterySaverPolicy;]Lcom/android/server/power/batterysaver/BatterySaverStateMachine;Lcom/android/server/power/batterysaver/BatterySaverStateMachine;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/power/PowerManagerService;->updatePowerStateLocked()V+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->updateIsPoweredLocked(I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/BatteryManagerInternal;Lcom/android/server/BatteryService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/WirelessChargerDetector;Lcom/android/server/power/WirelessChargerDetector;]Lcom/android/server/power/batterysaver/BatterySaverStateMachine;Lcom/android/server/power/batterysaver/BatterySaverStateMachine; +HSPLcom/android/server/power/PowerManagerService;->updatePowerGroupsLocked(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/util/LatencyTracker;Lcom/android/internal/util/LatencyTracker;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/batterysaver/BatterySaverPolicy;Lcom/android/server/power/batterysaver/BatterySaverPolicy;]Lcom/android/server/power/batterysaver/BatterySaverStateMachine;Lcom/android/server/power/batterysaver/BatterySaverStateMachine; +HSPLcom/android/server/power/PowerManagerService;->updatePowerStateLocked()V+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; HSPLcom/android/server/power/PowerManagerService;->updateProfilesLocked(J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/power/PowerManagerService;->updateStayOnLocked(I)V -HSPLcom/android/server/power/PowerManagerService;->updateSuspendBlockerLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Lcom/android/server/power/SuspendBlocker;Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl; -HSPLcom/android/server/power/PowerManagerService;->updateUidProcStateInternal(II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->updateUserActivitySummaryLocked(JI)V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->updateWakeLockSummaryLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/PowerManagerService;->updateWakeLockWorkSourceInternal(Landroid/os/IBinder;Landroid/os/WorkSource;Ljava/lang/String;I)V+]Lcom/android/server/power/PowerManagerService$WakeLock;Lcom/android/server/power/PowerManagerService$WakeLock;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/PowerManagerService;->updateWakefulnessLocked(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; -HSPLcom/android/server/power/PowerManagerService;->userActivityNoUpdateLocked(Lcom/android/server/power/PowerGroup;JIII)Z+]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService;Lcom/android/server/power/PowerManagerService; +HSPLcom/android/server/power/PowerManagerService;->updateStayOnLocked(I)V+]Landroid/os/BatteryManagerInternal;Lcom/android/server/BatteryService$LocalService; +HSPLcom/android/server/power/PowerManagerService;->updateSuspendBlockerLocked()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/SuspendBlocker;Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl; +HSPLcom/android/server/power/PowerManagerService;->updateUidProcStateInternal(II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/power/PowerManagerService;->updateUserActivitySummaryLocked(JI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; +HSPLcom/android/server/power/PowerManagerService;->updateWakeLockSummaryLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/power/PowerManagerService;->updateWakeLockWorkSourceInternal(Landroid/os/IBinder;Landroid/os/WorkSource;Ljava/lang/String;I)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/power/PowerManagerService;->updateWakefulnessLocked(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2; +HSPLcom/android/server/power/PowerManagerService;->userActivityNoUpdateLocked(Lcom/android/server/power/PowerGroup;JIII)Z+]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup; +HSPLcom/android/server/power/ScreenTimeoutOverridePolicy;->getScreenTimeoutOverrideLocked(IJ)J HSPLcom/android/server/power/ScreenUndimDetector;->recordScreenPolicy(II)V -HSPLcom/android/server/power/ThermalManagerService$1;->getCurrentThermalStatus()I+]Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean; -HSPLcom/android/server/power/WakeLockLog$EntryByteTranslator;->fromBytes([BJLcom/android/server/power/WakeLockLog$LogEntry;)Lcom/android/server/power/WakeLockLog$LogEntry;+]Lcom/android/server/power/WakeLockLog$LogEntry;Lcom/android/server/power/WakeLockLog$LogEntry;]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase; -HSPLcom/android/server/power/WakeLockLog$EntryByteTranslator;->toBytes(Lcom/android/server/power/WakeLockLog$LogEntry;[BJ)I+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator;]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase; -HSPLcom/android/server/power/WakeLockLog$Injector;->currentTimeMillis()J +HSPLcom/android/server/power/ThermalManagerService$1;->getCurrentThermalStatus()I +HPLcom/android/server/power/WakeLockLog$EntryByteTranslator;->fromBytes([BJLcom/android/server/power/WakeLockLog$LogEntry;)Lcom/android/server/power/WakeLockLog$LogEntry;+]Lcom/android/server/power/WakeLockLog$LogEntry;Lcom/android/server/power/WakeLockLog$LogEntry;]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase; +HSPLcom/android/server/power/WakeLockLog$EntryByteTranslator;->toBytes(Lcom/android/server/power/WakeLockLog$LogEntry;[BJ)I+]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase; HSPLcom/android/server/power/WakeLockLog$LogEntry;->set(JILcom/android/server/power/WakeLockLog$TagData;I)V HSPLcom/android/server/power/WakeLockLog$TagData;->equals(Ljava/lang/Object;)Z -HSPLcom/android/server/power/WakeLockLog$TagDatabase;->findOrCreateTag(Ljava/lang/String;IZ)Lcom/android/server/power/WakeLockLog$TagData;+]Lcom/android/server/power/WakeLockLog$TagData;Lcom/android/server/power/WakeLockLog$TagData;]Lcom/android/server/power/WakeLockLog$TagDatabase$Callback;Lcom/android/server/power/WakeLockLog$TheLog$1;]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase; -HSPLcom/android/server/power/WakeLockLog$TagDatabase;->getTag(I)Lcom/android/server/power/WakeLockLog$TagData; +HSPLcom/android/server/power/WakeLockLog$TagDatabase;->findOrCreateTag(Ljava/lang/String;IZ)Lcom/android/server/power/WakeLockLog$TagData;+]Lcom/android/server/power/WakeLockLog$TagDatabase$Callback;Lcom/android/server/power/WakeLockLog$TheLog$1; +HPLcom/android/server/power/WakeLockLog$TagDatabase;->getTag(I)Lcom/android/server/power/WakeLockLog$TagData; HSPLcom/android/server/power/WakeLockLog$TheLog;->addEntry(Lcom/android/server/power/WakeLockLog$LogEntry;)V+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator;]Lcom/android/server/power/WakeLockLog$TheLog;Lcom/android/server/power/WakeLockLog$TheLog; HSPLcom/android/server/power/WakeLockLog$TheLog;->getAvailableSpace()I -HSPLcom/android/server/power/WakeLockLog$TheLog;->makeSpace(I)Z+]Lcom/android/server/power/WakeLockLog$TheLog;Lcom/android/server/power/WakeLockLog$TheLog; -HSPLcom/android/server/power/WakeLockLog$TheLog;->readEntryAt(IJLcom/android/server/power/WakeLockLog$LogEntry;)Lcom/android/server/power/WakeLockLog$LogEntry;+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator; -HPLcom/android/server/power/WakeLockLog$TheLog;->removeOldestItem()V+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator;]Lcom/android/server/power/WakeLockLog$TheLog;Lcom/android/server/power/WakeLockLog$TheLog;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/power/WakeLockLog$TheLog;->removeTagIndex(I)V+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator;]Lcom/android/server/power/WakeLockLog$TheLog;Lcom/android/server/power/WakeLockLog$TheLog; +HSPLcom/android/server/power/WakeLockLog$TheLog;->makeSpace(I)Z +HPLcom/android/server/power/WakeLockLog$TheLog;->readEntryAt(IJLcom/android/server/power/WakeLockLog$LogEntry;)Lcom/android/server/power/WakeLockLog$LogEntry;+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator; +HPLcom/android/server/power/WakeLockLog$TheLog;->removeOldestItem()V+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/power/WakeLockLog$TheLog;->removeTagIndex(I)V+]Lcom/android/server/power/WakeLockLog$EntryByteTranslator;Lcom/android/server/power/WakeLockLog$EntryByteTranslator; HSPLcom/android/server/power/WakeLockLog$TheLog;->writeBytesAt(I[BI)V HSPLcom/android/server/power/WakeLockLog;->handleWakeLockEventInternal(ILjava/lang/String;IIJ)V+]Lcom/android/server/power/WakeLockLog$TagDatabase;Lcom/android/server/power/WakeLockLog$TagDatabase;]Lcom/android/server/power/WakeLockLog$TheLog;Lcom/android/server/power/WakeLockLog$TheLog; -HSPLcom/android/server/power/WakeLockLog;->tagNameReducer(Ljava/lang/String;)Ljava/lang/String;+]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/power/WakeLockLog;->onWakeLockEvent(ILjava/lang/String;IIJ)V+]Lcom/android/server/power/WakeLockLog$Injector;Lcom/android/server/power/WakeLockLog$Injector; +HSPLcom/android/server/power/WakeLockLog;->tagNameReducer(Ljava/lang/String;)Ljava/lang/String; +HSPLcom/android/server/power/WakefulnessSessionObserver$WakefulnessSessionPowerGroup;->onScreenPolicyUpdate(JI)V +HSPLcom/android/server/power/WakefulnessSessionObserver;->onScreenPolicyUpdate(JII)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/WakefulnessSessionObserver$WakefulnessSessionPowerGroup;Lcom/android/server/power/WakefulnessSessionObserver$WakefulnessSessionPowerGroup; HSPLcom/android/server/power/batterysaver/BatterySaverController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/power/batterysaver/BatterySaverController$MyHandler;Lcom/android/server/power/batterysaver/BatterySaverController$MyHandler; +HSPLcom/android/server/power/batterysaver/BatterySaverController;->getBatterySaverPolicy()Lcom/android/server/power/batterysaver/BatterySaverPolicy; HSPLcom/android/server/power/batterysaver/BatterySaverController;->updateBatterySavingStats()V+]Lcom/android/server/power/batterysaver/BatterySavingStats;Lcom/android/server/power/batterysaver/BatterySavingStats; HSPLcom/android/server/power/batterysaver/BatterySaverPolicy$Policy;-><init>(FZZZZZZZZZZZZZZZII)V -HSPLcom/android/server/power/batterysaver/BatterySaverPolicy;->getBatterySaverPolicy(I)Landroid/os/PowerSaveState;+]Landroid/os/PowerSaveState$Builder;Landroid/os/PowerSaveState$Builder;]Lcom/android/server/power/batterysaver/BatterySaverPolicy;Lcom/android/server/power/batterysaver/BatterySaverPolicy; +HSPLcom/android/server/power/batterysaver/BatterySaverPolicy;->getBatterySaverPolicy(I)Landroid/os/PowerSaveState; HSPLcom/android/server/power/batterysaver/BatterySaverStateMachine;->getBatterySaverPolicy()Lcom/android/server/power/batterysaver/BatterySaverPolicy;+]Lcom/android/server/power/batterysaver/BatterySaverController;Lcom/android/server/power/batterysaver/BatterySaverController; +HSPLcom/android/server/power/feature/PowerManagerFlags$FlagState;->isEnabled()Z +HSPLcom/android/server/power/feature/PowerManagerFlags;->improveWakelockLatency()Z +HPLcom/android/server/power/hint/HintManagerService$AppHintSession;->close()V+]Landroid/os/IBinder;Landroid/os/BinderProxy;]Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/power/hint/HintManagerService$AppHintSession;->isHintAllowed()Z +HSPLcom/android/server/power/hint/HintManagerService$AppHintSession;->reportActualWorkDuration2([Landroid/hardware/power/WorkDuration;)V+]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper; HSPLcom/android/server/power/hint/HintManagerService$AppHintSession;->sendHint(I)V+]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper; -HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver$$ExternalSyntheticLambda0;->run()V -HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver;->isUidForeground(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver;->lambda$onUidStateChanged$1(II)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/hint/HintManagerService$MyUidObserver;Lcom/android/server/power/hint/HintManagerService$MyUidObserver;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator; -HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver;->onUidStateChanged(IIJI)V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/power/stats/AggregatedPowerStats;->setUidState(IIIJ)V+]Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/hint/HintManagerService$AppHintSession;->validateWorkDuration(Landroid/hardware/power/WorkDuration;)V +HSPLcom/android/server/power/hint/HintManagerService$BinderService;->createHintSessionWithConfig(Landroid/os/IBinder;[IJILandroid/hardware/power/SessionConfig;)Landroid/os/IHintSession;+]Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver;->lambda$onUidStateChanged$1(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HSPLcom/android/server/power/hint/HintManagerService$MyUidObserver;->onUidStateChanged(IIJI)V HSPLcom/android/server/power/stats/BatteryExternalStatsWorker$1;->run()V+]Lcom/android/server/power/stats/BatteryExternalStatsWorker;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->awaitControllerInfo(Landroid/os/SynchronousResultReceiver;)Landroid/os/Parcelable;+]Landroid/os/Bundle;Landroid/os/Bundle;]Landroid/os/SynchronousResultReceiver;Landroid/os/SynchronousResultReceiver; -HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->extractDeltaLocked(Landroid/os/connectivity/WifiActivityEnergyInfo;)Landroid/os/connectivity/WifiActivityEnergyInfo; +HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->awaitControllerInfo(Landroid/os/SynchronousResultReceiver;)Landroid/os/Parcelable;+]Landroid/os/SynchronousResultReceiver;Landroid/os/SynchronousResultReceiver; +HPLcom/android/server/power/stats/BatteryExternalStatsWorker;->extractDeltaLocked(Landroid/os/connectivity/WifiActivityEnergyInfo;)Landroid/os/connectivity/WifiActivityEnergyInfo; HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->getEnergyConsumersLocked(I)Ljava/util/concurrent/CompletableFuture; -HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->scheduleCpuSyncDueToWakelockChange(J)Ljava/util/concurrent/Future;+]Lcom/android/server/power/stats/BatteryExternalStatsWorker;Lcom/android/server/power/stats/BatteryExternalStatsWorker; HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->scheduleDelayedSyncLocked(Ljava/util/concurrent/Future;Ljava/lang/Runnable;J)Ljava/util/concurrent/Future;+]Ljava/util/concurrent/Future;Ljava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;]Ljava/util/concurrent/ScheduledExecutorService;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; -HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->scheduleSyncDueToProcessStateChange(IJ)V+]Lcom/android/server/power/stats/BatteryExternalStatsWorker;Lcom/android/server/power/stats/BatteryExternalStatsWorker; +HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->scheduleSyncDueToProcessStateChange(IJ)V HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->scheduleSyncLocked(Ljava/lang/String;I)Ljava/util/concurrent/Future;+]Ljava/util/concurrent/ScheduledExecutorService;Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService; HSPLcom/android/server/power/stats/BatteryExternalStatsWorker;->updateExternalStatsLocked(Ljava/lang/String;IZZI[IZ)V+]Landroid/net/wifi/WifiManager;Landroid/net/wifi/WifiManager;]Landroid/telephony/TelephonyManager;Landroid/telephony/TelephonyManager;]Lcom/android/server/power/stats/BatteryExternalStatsWorker$Injector;Lcom/android/server/power/stats/BatteryExternalStatsWorker$Injector;]Lcom/android/server/power/stats/BatteryExternalStatsWorker;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/EnergyConsumerSnapshot;Lcom/android/server/power/stats/EnergyConsumerSnapshot;]Lcom/android/server/power/stats/PowerStatsCollector;Lcom/android/server/power/stats/BluetoothPowerStatsCollector;,Lcom/android/server/power/stats/MobileRadioPowerStatsCollector;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Counter;->writeSummaryFromParcelLocked(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; -HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->addCpuClusterSpeedDurationsMs(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;IIJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;]Lcom/android/server/power/stats/CpuPowerCalculator;Lcom/android/server/power/stats/CpuPowerCalculator; -HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->getOrCreateUidCpuClusterCharges(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;)[D+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;-><init>(Lcom/android/internal/os/Clock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;ILjava/util/ArrayList;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;)V +HPLcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda1;->onUidCpuTime(ILjava/lang/Object;)V +HSPLcom/android/server/power/stats/BatteryStatsImpl$Counter;->writeSummaryFromParcelLocked(Landroid/os/Parcel;)V +HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->addCpuClusterSpeedDurationsMs(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;IIJ)V+]Lcom/android/server/power/stats/CpuPowerCalculator;Lcom/android/server/power/stats/CpuPowerCalculator; +HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->getOrCreateUidCpuClusterCharges(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;)[D HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; @@ -3058,20 +3123,18 @@ HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->getMaxDurati HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->getTotalDurationMsLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; -HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; -HSPLcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;->uidProcessStateChanged(II)V -HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->addCountLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; -HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->addCountLocked(JZ)V -HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->writeSummaryFromParcelLocked(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel; -HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;->addCountLocked([JZ)V -HSPLcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;->startObject(Ljava/lang/String;J)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3; -HSPLcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;->stopObject(Ljava/lang/String;J)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;->computeCurrentCountLocked()I -HSPLcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;->computeRunTimeLocked(JJ)J +HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; +HSPLcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;->wakelockStateChanged(ILandroid/os/WorkSource$WorkChain;Ljava/lang/String;IZI)V +HPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->addCountLocked(JZ)V +HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->writeSummaryFromParcelLocked(Landroid/os/Parcel;)V +HPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;->addCountLocked([JZ)V +HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;->writeSummaryToParcelLocked(Landroid/os/Parcel;)V +HSPLcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;->getMap()Landroid/util/ArrayMap; +HSPLcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;->startObject(Ljava/lang/String;J)Ljava/lang/Object;+]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3; +HSPLcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;->stopObject(Ljava/lang/String;J)Ljava/lang/Object; HSPLcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;->update(JJIJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer; -HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;-><init>(Lcom/android/internal/os/Clock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;ILjava/util/ArrayList;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;)V +HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->computeCurrentCountLocked()I HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->computeRunTimeLocked(JJ)J+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->onTimeStopped(JJJ)V HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->readSummaryFromParcelLocked(Landroid/os/Parcel;)V HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->refreshTimersLocked(JLjava/util/ArrayList;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;)J+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Ljava/util/ArrayList;Ljava/util/ArrayList; @@ -3082,243 +3145,338 @@ HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->computeUptime(JI) HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->getRealtime(J)J HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->getUptime(J)J HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->init(JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; +HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->isRunning()Z HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->setRunning(ZJJ)Z+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBaseObs;megamorphic_types]Ljava/util/Collection;Ljava/util/ArrayList;,Ljava/util/HashSet;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;,Ljava/util/HashMap$KeyIterator; -HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->writeSummaryToParcel(Landroid/os/Parcel;JJ)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; +HSPLcom/android/server/power/stats/BatteryStatsImpl$TimeBase;->writeSummaryToParcel(Landroid/os/Parcel;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;-><init>(Lcom/android/internal/os/Clock;ILcom/android/server/power/stats/BatteryStatsImpl$TimeBase;)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->getTimeSinceMarkLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; -HPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->getTotalTimeLocked(JI)J+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;megamorphic_types +HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->getTotalTimeLocked(JI)J+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;megamorphic_types HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->readSummaryFromParcelLocked(Landroid/os/Parcel;)V -HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;megamorphic_types +HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;megamorphic_types HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->getStartTimeToNowLocked(J)J HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->startLaunchedLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->stopLaunchedLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;->writeExcessivePowerToParcelLocked(Landroid/os/Parcel;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;-><init>(Lcom/android/server/power/stats/BatteryStatsImpl;IJJ)V HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->createAggregatedPartialWakelockTimerLocked()Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->ensureNetworkActivityLocked()V HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getCpuActiveTimeCounter()Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1; -HPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getEnergyConsumptionUC(I)J+]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getMobileRadioActiveTimeCounter()Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getOrCreateEnergyConsumerStatsIfSupportedLocked()Lcom/android/internal/power/EnergyConsumerStats; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getPackageStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getPackageStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getPidStatsLocked(I)Landroid/os/BatteryStats$Uid$Pid;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStateTime(IJI)J+]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getSensorTimerLocked(IZ)Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getServiceStatsLocked(Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getUid()I +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStateTime(IJI)J+]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getServiceStatsLocked(Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWakelockTimerLocked(Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;I)Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWifiControllerActivity()Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWifiBatchedScanTime(IJI)J HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->maybeScheduleExternalStatsSync(II)V+]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStartWakeLocked(ILjava/lang/String;IJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; -HPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopJobLocked(Ljava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopJobLocked(Ljava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopWakeLocked(ILjava/lang/String;IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateOnBatteryBgTimeBase(JJ)Z+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateOnBatteryScreenOffBgTimeBase(JJ)Z+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateUidProcessStateLocked(IJJ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/LongArrayMultiStateCounter;Lcom/android/internal/os/LongArrayMultiStateCounter;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->writeJobCompletionsToParcelLocked(Landroid/os/Parcel;)V+]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/power/stats/BatteryStatsImpl$UserInfoProvider;->exists(I)Z +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateUidProcessStateLocked(IJJ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid; +HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->writeJobCompletionsToParcelLocked(Landroid/os/Parcel;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/power/stats/BatteryStatsImpl;->clearPendingRemovedUidsLocked()V+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Ljava/util/Queue;Ljava/util/LinkedList; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->computeDelta(Landroid/net/NetworkStats;Landroid/net/NetworkStats;)Ljava/util/List;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->computeDelta(Landroid/net/NetworkStats;Landroid/net/NetworkStats;)Ljava/util/List;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry; HSPLcom/android/server/power/stats/BatteryStatsImpl;->getBatteryUptimeLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; HSPLcom/android/server/power/stats/BatteryStatsImpl;->getRpmTimerLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;+]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/power/stats/BatteryStatsImpl;->getServiceStatsLocked(ILjava/lang/String;Ljava/lang/String;JJ)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->getUidStatsLocked(IJJ)Lcom/android/server/power/stats/BatteryStatsImpl$Uid;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/power/stats/BatteryStatsImpl;->lambda$readKernelUidCpuActiveTimesLocked$5(JJILjava/lang/Long;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BatteryStatsImpl$UserInfoProvider;Lcom/android/server/am/BatteryStatsService$3;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HPLcom/android/server/power/stats/BatteryStatsImpl;->lambda$readKernelUidCpuFreqTimesLocked$4(JJZZZII[ILcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;I[J)V+]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;]Lcom/android/server/power/stats/BatteryStatsImpl$UserInfoProvider;Lcom/android/server/am/BatteryStatsService$3;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->mapUid(I)I+]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver; HSPLcom/android/server/power/stats/BatteryStatsImpl;->markPartialTimersAsEligible()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteEventLocked(ILjava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory; -HPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobFinishLocked(Ljava/lang/String;IIJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobFinishLocked(Ljava/lang/String;IIJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobStartLocked(Ljava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HPLcom/android/server/power/stats/BatteryStatsImpl;->noteModemControllerActivity(Landroid/telephony/ModemActivityInfo;JJJLandroid/app/usage/NetworkStatsManager;)V+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Landroid/telephony/ModemActivityInfo;Landroid/telephony/ModemActivityInfo;]Landroid/util/SparseDoubleArray;Landroid/util/SparseDoubleArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/PowerProfile;Lcom/android/internal/os/PowerProfile;]Lcom/android/internal/os/RailStats;Lcom/android/internal/os/RailStats;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/MobileRadioPowerCalculator;Lcom/android/server/power/stats/MobileRadioPowerCalculator;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IZJJ)V+]Landroid/os/BatteryStats$HistoryEventTracker;Landroid/os/BatteryStats$HistoryEventTracker;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IJJ)V+]Landroid/os/BatteryStats$HistoryEventTracker;Landroid/os/BatteryStats$HistoryEventTracker;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IZJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteUidProcessStateLocked(IIJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HPLcom/android/server/power/stats/BatteryStatsImpl;->noteWakeupReasonLocked(Ljava/lang/String;JJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->readSummaryFromParcel(Landroid/os/Parcel;)V -HSPLcom/android/server/power/stats/BatteryStatsImpl;->setBatteryStateLocked(IIIIIIIIJJJJ)V+]Landroid/os/BatteryStats$LevelStepTracker;Landroid/os/BatteryStats$LevelStepTracker;]Landroid/os/Handler;Lcom/android/server/power/stats/BatteryStatsImpl$MyHandler;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->retrieveBluetoothScanTimesLocked(Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever$Callback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever$Callback;Lcom/android/server/power/stats/BluetoothPowerStatsCollector$$ExternalSyntheticLambda0; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->retrieveWifiScanTimesLocked(Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiStatsRetriever$Callback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiStatsRetriever$Callback;Lcom/android/server/power/stats/WifiPowerStatsCollector$$ExternalSyntheticLambda1; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->setBatteryStateLocked(IIIIIIIIJJJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateClusterSpeedTimes(Landroid/util/SparseLongArray;ZLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/internal/os/KernelCpuSpeedReader;Lcom/android/internal/os/KernelCpuSpeedReader;]Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl; -HPLcom/android/server/power/stats/BatteryStatsImpl;->updateCpuEnergyConsumerStatsLocked([JLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats; +HPLcom/android/server/power/stats/BatteryStatsImpl;->updateCpuEnergyConsumerStatsLocked([JLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;)V+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats; HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateCpuTimeLocked(ZZ[J)V+]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/internal/os/KernelCpuSpeedReader;Lcom/android/internal/os/KernelCpuSpeedReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidActiveTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidActiveTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidClusterTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidClusterTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidUserSysTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidUserSysTimeReader;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateKernelWakelocksLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;,Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateRpmStatsLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateWifiState(Landroid/os/connectivity/WifiActivityEnergyInfo;JJJLandroid/app/usage/NetworkStatsManager;)V+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Landroid/os/connectivity/WifiActivityEnergyInfo;Landroid/os/connectivity/WifiActivityEnergyInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/PowerProfile;Lcom/android/internal/os/PowerProfile;]Lcom/android/internal/os/RailStats;Lcom/android/internal/os/RailStats;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/PowerStatsCollector;Lcom/android/server/power/stats/WifiPowerStatsCollector;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/power/stats/BatteryStatsImpl;->writeSummaryToParcel(Landroid/os/Parcel;Z)V+]Landroid/os/BatteryStats$LevelStepTracker;Landroid/os/BatteryStats$LevelStepTracker;]Landroid/os/Parcel;Landroid/os/Parcel;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/os/MonotonicClock;Lcom/android/internal/os/MonotonicClock;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$Counter;Lcom/android/server/power/stats/BatteryStatsImpl$Counter;]Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$Node;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;,Ljava/util/HashMap$EntrySet; -HPLcom/android/server/power/stats/BatteryUsageStatsProvider;->getCurrentBatteryUsageStats(Lcom/android/server/power/stats/BatteryStatsImpl;Landroid/os/BatteryUsageStatsQuery;J)Landroid/os/BatteryUsageStats;+]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryUsageStats$Builder;]Landroid/os/BatteryUsageStatsQuery;Landroid/os/BatteryUsageStatsQuery;]Landroid/os/UidBatteryConsumer$Builder;Landroid/os/UidBatteryConsumer$Builder;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/BatteryUsageStatsProvider;Lcom/android/server/power/stats/BatteryUsageStatsProvider;]Lcom/android/server/power/stats/PowerCalculator;megamorphic_types]Lcom/android/server/power/stats/PowerStatsExporter;Lcom/android/server/power/stats/PowerStatsExporter;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/power/stats/BatteryUsageStatsProvider;->verify(Landroid/os/BatteryUsageStats;)V+]Landroid/os/BatteryUsageStats;Landroid/os/BatteryUsageStats;]Landroid/os/UidBatteryConsumer;Landroid/os/UidBatteryConsumer;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/power/stats/BluetoothPowerCalculator;->calculateApp(Landroid/os/UidBatteryConsumer$Builder;Lcom/android/server/power/stats/BluetoothPowerCalculator$PowerAndDuration;Landroid/os/BatteryUsageStatsQuery;)V+]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryUsageStatsQuery;Landroid/os/BatteryUsageStatsQuery;]Landroid/os/UidBatteryConsumer$Builder;Landroid/os/UidBatteryConsumer$Builder;]Lcom/android/server/power/stats/BluetoothPowerCalculator;Lcom/android/server/power/stats/BluetoothPowerCalculator; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateRpmStatsLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateWifiBatteryStats(Landroid/os/connectivity/WifiActivityEnergyInfo;Ljava/util/List;JJJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/PowerProfile;Lcom/android/internal/os/PowerProfile;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;Lcom/android/server/power/stats/BatteryStatsImpl$NetworkStatsDelta;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/BatteryStatsImpl;->writeSummaryToParcel(Landroid/os/Parcel;Z)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/os/MonotonicClock;Lcom/android/internal/os/MonotonicClock;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$Counter;Lcom/android/server/power/stats/BatteryStatsImpl$Counter;]Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$Node;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;,Ljava/util/HashMap$EntrySet; +HPLcom/android/server/power/stats/BatteryUsageStatsProvider;->getCurrentBatteryUsageStats(Lcom/android/server/power/stats/BatteryStatsImpl;Landroid/os/BatteryUsageStatsQuery;J)Landroid/os/BatteryUsageStats;+]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/PowerAttributor;Lcom/android/server/power/stats/processor/MultiStatePowerAttributor;]Lcom/android/server/power/stats/PowerCalculator;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/power/stats/BatteryUsageStatsProvider;->verify(Landroid/os/BatteryUsageStats;)V+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/BluetoothPowerStatsCollector;->collectBluetoothActivityInfo()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever;Lcom/android/server/power/stats/BatteryStatsImpl$BluetoothStatsRetrieverImpl;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/power/stats/CpuPowerCalculator;->calculatePerCpuFreqPowerMah(IIJ)D+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator; -HSPLcom/android/server/power/stats/CpuPowerStatsProcessor;->estimateUidPowerConsumption(Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/CpuPowerStatsLayout;Lcom/android/server/power/stats/CpuPowerStatsLayout;]Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/PowerStatsLayout;Lcom/android/server/power/stats/CpuPowerStatsLayout;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/CpuPowerStatsCollector;->collectStats()Lcom/android/internal/os/PowerStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/CpuPowerStatsCollector$KernelCpuStatsReader;Lcom/android/server/power/stats/CpuPowerStatsCollector$KernelCpuStatsReader;]Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;]Lcom/android/server/power/stats/format/CpuPowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout; +HSPLcom/android/server/power/stats/CpuPowerStatsCollector;->processUidStats(I[J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/CpuPowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout; HSPLcom/android/server/power/stats/EnergyConsumerSnapshot;->updateAndGetDelta([Landroid/hardware/power/stats/EnergyConsumerResult;I)Lcom/android/server/power/stats/EnergyConsumerSnapshot$EnergyConsumerDeltaData;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray; HSPLcom/android/server/power/stats/KernelWakelockReader;->getWakelockStatsFromSystemSuspend(Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Landroid/system/suspend/internal/ISuspendControlServiceInternal;Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub$Proxy;]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader; HSPLcom/android/server/power/stats/KernelWakelockReader;->readKernelWakelockStats(Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader; HSPLcom/android/server/power/stats/KernelWakelockReader;->removeOldStats(Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Ljava/util/Collection;Ljava/util/HashMap$Values;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;]Ljava/util/Iterator;Ljava/util/HashMap$ValueIterator; HSPLcom/android/server/power/stats/KernelWakelockReader;->updateWakelockStats([Landroid/system/suspend/internal/WakeLockInfo;Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats; -HPLcom/android/server/power/stats/MobileRadioPowerCalculator;->calculate(Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryStats;JJLandroid/os/BatteryUsageStatsQuery;)V+]Landroid/os/AggregateBatteryConsumer$Builder;Landroid/os/AggregateBatteryConsumer$Builder;]Landroid/os/BatteryStats$ControllerActivityCounter;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Landroid/os/BatteryStats$LongCounter;Lcom/android/server/power/stats/BatteryStatsImpl$1;,Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;,Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl;]Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryUsageStats$Builder;]Landroid/os/BatteryUsageStatsQuery;Landroid/os/BatteryUsageStatsQuery;]Landroid/os/UidBatteryConsumer$Builder;Landroid/os/UidBatteryConsumer$Builder;]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/MobileRadioPowerCalculator;Lcom/android/server/power/stats/MobileRadioPowerCalculator;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/power/stats/MultiStateStats$Factory;->getSerialState([I)I+]Lcom/android/server/power/stats/MultiStateStats$Factory;Lcom/android/server/power/stats/MultiStateStats$Factory; -HSPLcom/android/server/power/stats/MultiStateStats$Factory;->setStateInComposite(III)I -HSPLcom/android/server/power/stats/MultiStateStats$States;->forEachTrackedStateCombination(Ljava/util/function/Consumer;[Lcom/android/server/power/stats/MultiStateStats$States;[II)V+]Ljava/util/function/Consumer;Lcom/android/server/power/stats/MultiStateStats$$ExternalSyntheticLambda0;,Lcom/android/server/power/stats/MultiStateStats$$ExternalSyntheticLambda1;,Lcom/android/server/power/stats/PowerStatsExporter$$ExternalSyntheticLambda1;,Lcom/android/server/power/stats/PowerStatsExporter$$ExternalSyntheticLambda2; -HSPLcom/android/server/power/stats/MultiStateStats;->getStats([J[I)V+]Lcom/android/server/power/stats/MultiStateStats$Factory;Lcom/android/server/power/stats/MultiStateStats$Factory; -HSPLcom/android/server/power/stats/MultiStateStats;->setState(IIJ)V+]Lcom/android/server/power/stats/MultiStateStats$Factory;Lcom/android/server/power/stats/MultiStateStats$Factory; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->addPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/MultiStateStats;Lcom/android/server/power/stats/MultiStateStats; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->createUidStats(Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats$UidStats;J)V+]Lcom/android/server/power/stats/MultiStateStats$Factory;Lcom/android/server/power/stats/MultiStateStats$Factory;]Lcom/android/server/power/stats/MultiStateStats;Lcom/android/server/power/stats/MultiStateStats; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->getUidStats(I)Lcom/android/server/power/stats/PowerComponentAggregatedPowerStats$UidStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/MultiStateStats$States;Lcom/android/server/power/stats/MultiStateStats$States; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->getUidStats([JI[I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/MultiStateStats;Lcom/android/server/power/stats/MultiStateStats; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->setState(IIJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/MultiStateStats$States;Lcom/android/server/power/stats/MultiStateStats$States;]Lcom/android/server/power/stats/MultiStateStats;Lcom/android/server/power/stats/MultiStateStats; -HSPLcom/android/server/power/stats/PowerComponentAggregatedPowerStats;->setUidState(IIIJ)V+]Lcom/android/server/power/stats/MultiStateStats$States;Lcom/android/server/power/stats/MultiStateStats$States;]Lcom/android/server/power/stats/MultiStateStats;Lcom/android/server/power/stats/MultiStateStats; -HSPLcom/android/server/power/stats/PowerStatsAggregator;->aggregatePowerStats(JJLjava/util/function/Consumer;)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/BatteryStatsHistoryIterator;Lcom/android/internal/os/BatteryStatsHistoryIterator;]Lcom/android/server/power/stats/AggregatedPowerStats;Lcom/android/server/power/stats/AggregatedPowerStats;]Ljava/util/function/Consumer;Lcom/android/server/power/stats/PowerStatsExporter$$ExternalSyntheticLambda0;,Lcom/android/server/power/stats/PowerStatsScheduler$$ExternalSyntheticLambda2; +HSPLcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;->collectConsumedEnergy(Lcom/android/internal/os/PowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;)Z+]Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyRetriever;Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyRetrieverImpl; +HSPLcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;->populatePowerStats(Lcom/android/internal/os/PowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;[Landroid/hardware/power/stats/EnergyConsumerResult;II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/PowerStatsLayout;megamorphic_types HSPLcom/android/server/power/stats/PowerStatsUidResolver;->mapUid(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HPLcom/android/server/power/stats/UsageBasedPowerEstimator;->calculatePower(J)D -HPLcom/android/server/power/stats/WifiPowerCalculator;->calculate(Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryStats;JJLandroid/os/BatteryUsageStatsQuery;)V+]Landroid/os/AggregateBatteryConsumer$Builder;Landroid/os/AggregateBatteryConsumer$Builder;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl;]Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryUsageStats$Builder;]Landroid/os/BatteryUsageStatsQuery;Landroid/os/BatteryUsageStatsQuery;]Landroid/os/UidBatteryConsumer$Builder;Landroid/os/UidBatteryConsumer$Builder;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/WifiPowerCalculator;Lcom/android/server/power/stats/WifiPowerCalculator; -HPLcom/android/server/power/stats/WifiPowerCalculator;->calculateApp(Lcom/android/server/power/stats/WifiPowerCalculator$PowerDurationAndTraffic;Landroid/os/BatteryStats$Uid;IJIZJ)V+]Landroid/os/BatteryStats$ControllerActivityCounter;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Landroid/os/BatteryStats$LongCounter;Lcom/android/server/power/stats/BatteryStatsImpl$1;,Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/WifiPowerCalculator;Lcom/android/server/power/stats/WifiPowerCalculator; -HPLcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;->parseWakeup(Ljava/lang/String;JJLcom/android/server/power/stats/wakeups/IrqDeviceMap;)Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/power/stats/wakeups/IrqDeviceMap;Lcom/android/server/power/stats/wakeups/IrqDeviceMap;]Ljava/lang/String;Ljava/lang/String;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/regex/Matcher;Ljava/util/regex/Matcher;]Ljava/util/regex/Pattern;Ljava/util/regex/Pattern; +HSPLcom/android/server/power/stats/ScreenPowerStatsCollector;->collectStats()Lcom/android/internal/os/PowerStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;]Lcom/android/server/power/stats/ScreenPowerStatsCollector$ScreenUsageTimeRetriever;Lcom/android/server/power/stats/BatteryStatsImpl$2;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout; +HSPLcom/android/server/power/stats/UsageBasedPowerEstimator;->calculatePower(J)D +HPLcom/android/server/power/stats/WakelockPowerCalculator;->calculate(Landroid/os/BatteryUsageStats$Builder;Landroid/os/BatteryStats;JJLandroid/os/BatteryUsageStatsQuery;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/power/stats/WakelockPowerCalculator;->calculateApp(Lcom/android/server/power/stats/WakelockPowerCalculator$PowerAndDuration;Landroid/os/BatteryStats$Uid;JI)V+]Landroid/os/BatteryStats$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Landroid/os/BatteryStats$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator; +HSPLcom/android/server/power/stats/format/BluetoothPowerStatsLayout;->getUidRxBytes([J)J +HSPLcom/android/server/power/stats/format/CpuPowerStatsLayout;->getCpuPowerBracketCount()I +HSPLcom/android/server/power/stats/format/CpuPowerStatsLayout;->getTimeByScalingStep([JI)J +HSPLcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;->getUidRxPackets([J)J +HSPLcom/android/server/power/stats/format/PowerStatsLayout;-><init>()V +HSPLcom/android/server/power/stats/format/PowerStatsLayout;-><init>(Lcom/android/internal/os/PowerStats$Descriptor;)V +HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUidConsumedEnergy([JI)J +HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUidUsageDuration([J)J +HSPLcom/android/server/power/stats/format/PowerStatsLayout;->setUidPowerEstimate([JD)V +HSPLcom/android/server/power/stats/format/PowerStatsLayout;->toExtras(Landroid/os/PersistableBundle;)V +HSPLcom/android/server/power/stats/format/ScreenPowerStatsLayout;-><init>(Lcom/android/internal/os/PowerStats$Descriptor;)V +HSPLcom/android/server/power/stats/format/WifiPowerStatsLayout;->getUidRxPackets([J)J +HSPLcom/android/server/power/stats/format/WifiPowerStatsLayout;->getUidTxPackets([J)J +HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->addPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HPLcom/android/server/power/stats/processor/AggregatedPowerStats;->getPowerComponentStats()Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->noteStateChange(Landroid/os/BatteryStats$HistoryItem;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->reset()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->setUidState(IIIJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;->getDeviceStateConfig()[Lcom/android/server/power/stats/processor/MultiStateStats$States; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;->getUidStateConfig()[Lcom/android/server/power/stats/processor/MultiStateStats$States; +HSPLcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;->isTracked([II)Z +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->combineDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Z)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeUidActivityTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;megamorphic_types]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->flushPowerStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V+]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;megamorphic_types +HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->recordUsageDuration(Lcom/android/internal/os/PowerStats;IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout; +HSPLcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor;->combineDeviceStateEstimates()V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[ILcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor$Intermediates;)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor;->computeUidActivityTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CpuPowerStatsProcessor;->adjustEstimatesUsingEnergyConsumers(Lcom/android/server/power/stats/processor/CpuPowerStatsProcessor$Intermediates;Lcom/android/server/power/stats/processor/CpuPowerStatsProcessor$DeviceStatsIntermediates;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout; +HSPLcom/android/server/power/stats/processor/CpuPowerStatsProcessor;->combineDeviceStateEstimates()V+]Lcom/android/server/power/stats/format/CpuPowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CpuPowerStatsProcessor;->computeTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/CpuPowerStatsProcessor$Intermediates;)V+]Lcom/android/server/power/stats/format/CpuPowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CpuPowerStatsProcessor;->estimatePowerByScalingStep(Lcom/android/server/power/stats/processor/CpuPowerStatsProcessor$Intermediates;)V +HSPLcom/android/server/power/stats/processor/CpuPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/format/CpuPowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/CpuPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CustomEnergyConsumerPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/EnergyConsumerPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CustomEnergyConsumerPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/EnergyConsumerPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/CustomEnergyConsumerPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/GnssPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Z)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/GnssPowerStatsLayout;Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/GnssPowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V +HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->combineDeviceStateEstimates()V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[ILcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor$Intermediates;)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->computeUidRxTxTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->lambda$computeDevicePowerEstimates$0(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[ILcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor$Intermediates;I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/MultiStateStats$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;-><init>(I[Lcom/android/server/power/stats/processor/MultiStateStats$States;)V +HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->create()Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->getSerialState([I)I+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory; +HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->isValidCompositeState(I)Z +HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->setStateInComposite(III)I +HSPLcom/android/server/power/stats/processor/MultiStateStats$States;-><init>(Ljava/lang/String;Z[Ljava/lang/String;)V +HSPLcom/android/server/power/stats/processor/MultiStateStats$States;->forEachTrackedStateCombination(Ljava/util/function/Consumer;[Lcom/android/server/power/stats/processor/MultiStateStats$States;[II)V+]Ljava/util/function/Consumer;megamorphic_types +HSPLcom/android/server/power/stats/processor/MultiStateStats$States;->getLabels()[Ljava/lang/String; +HSPLcom/android/server/power/stats/processor/MultiStateStats$States;->isTracked()Z +HSPLcom/android/server/power/stats/processor/MultiStateStats;-><init>(Lcom/android/server/power/stats/processor/MultiStateStats$Factory;I)V +HSPLcom/android/server/power/stats/processor/MultiStateStats;->getStats([J[I)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory; +HSPLcom/android/server/power/stats/processor/MultiStateStats;->increment([JJ)V +HSPLcom/android/server/power/stats/processor/MultiStateStats;->setState(IIJ)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory; +HSPLcom/android/server/power/stats/processor/MultiStateStats;->setStats([I[J)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory; +HSPLcom/android/server/power/stats/processor/MultiStateStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V +HSPLcom/android/server/power/stats/processor/MultiStateStats;->writeXmlForStates(Lcom/android/modules/utils/TypedXmlSerializer;[I[J)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->addProcessedPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->collectUids(Ljava/util/Collection;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Collection;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->createDeviceStats(J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->createUidStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats$UidStats;J)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getDeviceStats([J[I)Z+]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getUidStats(I)Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats$UidStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getUidStats([JI[I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->noteStateChange(Landroid/os/BatteryStats$HistoryItem;)V+]Lcom/android/server/power/stats/processor/PowerStatsProcessor;megamorphic_types +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->reset()V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setDeviceStats([I[J)V+]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setState(IIJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setUidState(IIIJ)V+]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setUidStats(I[I[J)V+]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/PowerStats$Descriptor;Lcom/android/internal/os/PowerStats$Descriptor;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats; +HSPLcom/android/server/power/stats/processor/PowerStatsAggregator;->aggregatePowerStats(Lcom/android/internal/os/BatteryStatsHistory;JJLjava/util/function/Consumer;)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/BatteryStatsHistoryIterator;Lcom/android/internal/os/BatteryStatsHistoryIterator;]Lcom/android/server/power/stats/processor/AggregatedPowerStats;Lcom/android/server/power/stats/processor/AggregatedPowerStats;]Ljava/util/function/Consumer;Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda15;,Lcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda0; +HPLcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V +HPLcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V +HPLcom/android/server/power/stats/processor/PowerStatsExporter;->areMatchingStates([III)Z +HPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateBatteryConsumers(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateBatteryUsageStatsBuilder(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateUidBatteryConsumers(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;Ljava/util/List;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;[JZII)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->addUidStateEstimations()V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->getCombinedDeviceStateEstimate([Lcom/android/server/power/stats/processor/MultiStateStats$States;[I)Lcom/android/server/power/stats/processor/PowerStatsProcessor$CombinedDeviceStateEstimate;+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->getUidStateEstimate(Lcom/android/server/power/stats/processor/PowerStatsProcessor$CombinedDeviceStateEstimate;)Lcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->resetIntermediates()V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->concatLabels([Lcom/android/server/power/stats/processor/MultiStateStats$States;[I)Ljava/lang/String;+]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States; +HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V +HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->combineDeviceStateEstimates()V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan; +HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->unpackPowerStatsDescriptor(Lcom/android/internal/os/PowerStats$Descriptor;)Z+]Lcom/android/internal/os/PowerStats$Descriptor;Lcom/android/internal/os/PowerStats$Descriptor; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Landroid/hardware/SensorManager;Landroid/hardware/SystemSensorManager;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;]Lcom/android/server/power/stats/format/SensorPowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->flushPowerStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor; +HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->recordUsageDuration(Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor$SensorState;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/format/SensorPowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout; +HSPLcom/android/server/power/stats/processor/WifiPowerStatsProcessor;->combineDeviceStateEstimates()V+]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/WifiPowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[ILcom/android/server/power/stats/processor/WifiPowerStatsProcessor$Intermediates;)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/format/WifiPowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats; +HSPLcom/android/server/power/stats/processor/WifiPowerStatsProcessor;->computeUidActivityTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/WifiPowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/WifiPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/format/WifiPowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/power/stats/processor/WifiPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;->parseWakeup(Ljava/lang/String;JJLcom/android/server/power/stats/wakeups/IrqDeviceMap;)Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;+]Lcom/android/server/power/stats/wakeups/IrqDeviceMap;Lcom/android/server/power/stats/wakeups/IrqDeviceMap;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList; HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory;->recordActivity(IJLandroid/util/SparseIntArray;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Ljava/util/function/LongSupplier;Lcom/android/server/power/stats/wakeups/CpuWakeupStats$$ExternalSyntheticLambda0; -HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->attemptAttributionFor(Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory;Lcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory; +HPLcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory;->removeBetween(IJJ)Landroid/util/SparseIntArray;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->attemptAttributionFor(Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray; HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->attemptAttributionWith(IJLandroid/util/SparseIntArray;)Z+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->logWakeupAttribution(Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Ljava/lang/String;Ljava/lang/String;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->logWakeupAttribution(Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteUidProcessState(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteWakingActivity(IJ[I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory;Lcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory;]Lcom/android/server/power/stats/wakeups/CpuWakeupStats;Lcom/android/server/power/stats/wakeups/CpuWakeupStats; +HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteWakeupTimeAndReason(JJLjava/lang/String;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; +HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteWakingActivity(IJ[I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HPLcom/android/server/powerstats/BatteryTrigger$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/powerstats/PowerStatsHALWrapper$VintfHalCache;->get()Ljava/lang/Object;+]Lcom/android/server/powerstats/PowerStatsHALWrapper$VintfHalCache;Lcom/android/server/powerstats/PowerStatsHALWrapper$VintfHalCache; HSPLcom/android/server/powerstats/PowerStatsService;->getHandler()Landroid/os/Handler; HPLcom/android/server/powerstats/StatsPullAtomCallbackImpl;->pullOnDevicePowerMeasurement(ILjava/util/List;)I+]Landroid/power/PowerStatsInternal;Lcom/android/server/powerstats/PowerStatsService$LocalService;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture; -HPLcom/android/server/slice/SliceClientPermissions$SliceAuthority;->addPath(Ljava/util/List;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/slice/DirtyTracker;Lcom/android/server/slice/SliceClientPermissions;]Lcom/android/server/slice/SliceClientPermissions$SliceAuthority;Lcom/android/server/slice/SliceClientPermissions$SliceAuthority;]Ljava/util/List;Landroid/net/Uri$PathSegments; +HPLcom/android/server/slice/SliceClientPermissions$SliceAuthority;->addPath(Ljava/util/List;)V+]Lcom/android/server/slice/DirtyTracker;Lcom/android/server/slice/SliceClientPermissions;]Ljava/util/List;Landroid/net/Uri$PathSegments; HPLcom/android/server/slice/SliceClientPermissions$SliceAuthority;->isPathPrefixMatch([Ljava/lang/String;[Ljava/lang/String;)Z HPLcom/android/server/slice/SliceManagerService;->getProviderPkg(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri; -HPLcom/android/server/slice/SlicePermissionManager$PkgUser;->equals(Ljava/lang/Object;)Z+]Ljava/lang/Object;Lcom/android/server/slice/SlicePermissionManager$PkgUser;,Ljava/lang/Class; -HPLcom/android/server/slice/SlicePermissionManager$PkgUser;->hashCode()I+]Ljava/lang/Object;Ljava/lang/String; +HPLcom/android/server/slice/SlicePermissionManager$PkgUser;->equals(Ljava/lang/Object;)Z +HPLcom/android/server/slice/SlicePermissionManager$PkgUser;->hashCode()I HPLcom/android/server/slice/SlicePermissionManager;->grantSliceAccess(Ljava/lang/String;ILjava/lang/String;ILandroid/net/Uri;)V+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Lcom/android/server/slice/SliceClientPermissions;Lcom/android/server/slice/SliceClientPermissions;]Lcom/android/server/slice/SliceProviderPermissions$SliceAuthority;Lcom/android/server/slice/SliceProviderPermissions$SliceAuthority;]Lcom/android/server/slice/SliceProviderPermissions;Lcom/android/server/slice/SliceProviderPermissions; HSPLcom/android/server/smartspace/SmartspaceManagerService$SmartspaceManagerStub;->runForUserLocked(Ljava/lang/String;Landroid/app/smartspace/SmartspaceSessionId;Ljava/util/function/Consumer;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/infra/ServiceNameResolver;Lcom/android/server/infra/FrameworkResourcesServiceNameResolver;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/function/Consumer;megamorphic_types HSPLcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;->noteUidProcessState(IIJJ)V -HPLcom/android/server/stats/pull/ProcfsMemoryUtil;->readMemorySnapshotFromProcfs(I)Lcom/android/server/stats/pull/ProcfsMemoryUtil$MemorySnapshot;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda16;->onUidCpuTime(ILjava/lang/Object;)V -HPLcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomCallbackImpl;->onPullAtom(ILjava/util/List;)I+]Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;]Lcom/android/server/stats/pull/StatsPullAtomService;Lcom/android/server/stats/pull/StatsPullAtomService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/stats/pull/ProcfsMemoryUtil;->readMemorySnapshotFromProcfs(I)Lcom/android/server/stats/pull/ProcfsMemoryUtil$MemorySnapshot; +HPLcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomCallbackImpl;->onPullAtom(ILjava/util/List;)I+]Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;]Lcom/android/server/stats/pull/StatsPullAtomService;Lcom/android/server/stats/pull/StatsPullAtomService; HSPLcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomServiceInternalImpl;->noteUidProcessState(II)V+]Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller; -HPLcom/android/server/stats/pull/StatsPullAtomService;->addNetworkStats(ILjava/util/List;Lcom/android/server/stats/pull/netstats/NetworkStatsExt;)V+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/stats/pull/StatsPullAtomService;->collectNetworkStatsSnapshotForAtom(I)Ljava/util/List;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; -HSPLcom/android/server/stats/pull/StatsPullAtomService;->getUidNetworkStatsSnapshotForTemplate(Landroid/net/NetworkTemplate;Z)Landroid/net/NetworkStats;+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/content/Context;Landroid/app/ContextImpl; -HPLcom/android/server/stats/pull/StatsPullAtomService;->lambda$pullCpuCyclesPerUidClusterLocked$13(Landroid/util/SparseArray;I[I[J[DI[J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HPLcom/android/server/stats/pull/StatsPullAtomService;->pullCpuCyclesPerUidClusterLocked(ILjava/util/List;)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;]Lcom/android/internal/os/PowerProfile;Lcom/android/internal/os/PowerProfile;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/stats/pull/StatsPullAtomService;->pullDataBytesTransferLocked(ILjava/util/List;)I+]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Lcom/android/server/stats/pull/StatsPullAtomService;Lcom/android/server/stats/pull/StatsPullAtomService;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/stats/pull/StatsPullAtomService;->getUidNetworkStatsSnapshotForTemplateLocked(Landroid/net/NetworkTemplate;Z)Landroid/net/NetworkStats;+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/content/Context;Landroid/app/ContextImpl; +HPLcom/android/server/stats/pull/StatsPullAtomService;->pullCpuCyclesPerUidClusterLocked(ILjava/util/List;)I+]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/stats/pull/StatsPullAtomService;->pullDataBytesTransferLocked(ILjava/util/List;)I+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/stats/pull/StatsPullAtomService;->pullKernelWakelockLocked(ILjava/util/List;)I+]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet; -HPLcom/android/server/stats/pull/StatsPullAtomService;->pullModemActivityInfoLocked(ILjava/util/List;)I+]Landroid/telephony/TelephonyManager;Landroid/telephony/TelephonyManager;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/stats/pull/StatsPullAtomService;->removeEmptyEntries(Landroid/net/NetworkStats;)Landroid/net/NetworkStats;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Ljava/util/Iterator;Landroid/net/NetworkStats$1; -HSPLcom/android/server/stats/pull/StatsPullAtomService;->sliceNetworkStats(Landroid/net/NetworkStats;Ljava/util/function/Function;)Landroid/net/NetworkStats;+]Landroid/net/NetworkStats;Landroid/net/NetworkStats;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;]Ljava/util/function/Function;Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda2;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda3;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda4;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda5; +HPLcom/android/server/stats/pull/StatsPullAtomService;->pullModemActivityInfoLocked(ILjava/util/List;)I +HPLcom/android/server/stats/pull/StatsPullAtomService;->pullProcessMemorySnapshot(ILjava/util/List;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/stats/pull/StatsPullAtomService;->removeEmptyEntries(Landroid/net/NetworkStats;)Landroid/net/NetworkStats;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry; +HSPLcom/android/server/stats/pull/StatsPullAtomService;->sliceNetworkStats(Landroid/net/NetworkStats;Ljava/util/function/Function;)Landroid/net/NetworkStats;+]Ljava/util/function/Function;Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda2;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda3;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda4;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda5; HSPLcom/android/server/stats/pull/netstats/NetworkStatsExt;-><init>(Landroid/net/NetworkStats;[IZZZILcom/android/server/stats/pull/netstats/SubInfo;IZ)V HPLcom/android/server/stats/pull/netstats/NetworkStatsExt;->hasSameSlicing(Lcom/android/server/stats/pull/netstats/NetworkStatsExt;)Z -HPLcom/android/server/statusbar/StatusBarManagerService$1;->setTopAppHidesStatusBar(Z)V+]Lcom/android/internal/statusbar/IStatusBar;Lcom/android/internal/statusbar/IStatusBar$Stub$Proxy; -HPLcom/android/server/storage/CacheQuotaStrategy;->getUnfulfilledRequests()Ljava/util/List;+]Landroid/app/usage/CacheQuotaHint$Builder;Landroid/app/usage/CacheQuotaHint$Builder;]Landroid/app/usage/UsageStats;Landroid/app/usage/UsageStats;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/os/UserManager;Landroid/os/UserManager;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/timedetector/TimeDetectorService;->latestNetworkTime()Landroid/app/time/UnixEpochTime;+]Lcom/android/server/timedetector/NetworkTimeSuggestion;Lcom/android/server/timedetector/NetworkTimeSuggestion;]Lcom/android/server/timedetector/TimeDetectorStrategy;Lcom/android/server/timedetector/TimeDetectorStrategyImpl; -HSPLcom/android/server/timezonedetector/ReferenceWithHistory;->get()Ljava/lang/Object;+]Landroid/os/TimestampedValue;Landroid/os/TimestampedValue;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/stats/pull/netstats/NetworkStatsUtils;->fromBucket(Landroid/app/usage/NetworkStats$Bucket;)Landroid/net/NetworkStats$Entry;+]Landroid/app/usage/NetworkStats$Bucket;Landroid/app/usage/NetworkStats$Bucket; +HSPLcom/android/server/stats/pull/netstats/NetworkStatsUtils;->fromPublicNetworkStats(Landroid/app/usage/NetworkStats;)Landroid/net/NetworkStats; +HPLcom/android/server/statusbar/StatusBarManagerService$1;->setTopAppHidesStatusBar(IZ)V+]Lcom/android/internal/statusbar/IStatusBar;Lcom/android/internal/statusbar/IStatusBar$Stub$Proxy; +HSPLcom/android/server/timedetector/TimeDetectorService;->latestNetworkTime()Landroid/app/time/UnixEpochTime;+]Lcom/android/server/timedetector/TimeDetectorStrategy;Lcom/android/server/timedetector/TimeDetectorStrategyImpl; +HSPLcom/android/server/timedetector/TimeDetectorStrategyImpl;->getLatestNetworkSuggestion()Lcom/android/server/timedetector/NetworkTimeSuggestion; +HSPLcom/android/server/timezonedetector/ReferenceWithHistory;->get()Ljava/lang/Object;+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque; +HSPLcom/android/server/trust/TrustManagerService$3;->isDeviceLocked(II)Z+]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils;]Lcom/android/server/trust/TrustManagerService;Lcom/android/server/trust/TrustManagerService; +HSPLcom/android/server/trust/TrustManagerService$3;->isDeviceSecure(II)Z+]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils; HSPLcom/android/server/trust/TrustManagerService;->refreshAgentList(I)V+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils;]Lcom/android/server/trust/TrustAgentWrapper;Lcom/android/server/trust/TrustAgentWrapper;]Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;]Lcom/android/server/trust/TrustManagerService;Lcom/android/server/trust/TrustManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/trust/TrustManagerService;->resolveProfileParent(I)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Landroid/os/UserManager;Landroid/os/UserManager; -HSPLcom/android/server/uri/GrantUri;-><init>(ILandroid/net/Uri;I)V -HSPLcom/android/server/uri/UriGrantsManagerService$LocalService;->checkGrantUriPermissionFromIntent(Landroid/content/Intent;ILjava/lang/String;I)Lcom/android/server/uri/NeededUriGrants;+]Lcom/android/server/uri/UriGrantsManagerService$LocalService;Lcom/android/server/uri/UriGrantsManagerService$LocalService; -HSPLcom/android/server/uri/UriGrantsManagerService$LocalService;->internalCheckGrantUriPermissionFromIntent(Landroid/content/Intent;ILjava/lang/String;ILjava/lang/Integer;)Lcom/android/server/uri/NeededUriGrants;+]Landroid/content/Intent;Landroid/content/Intent; -HSPLcom/android/server/uri/UriGrantsManagerService;->checkGrantUriPermissionFromIntentUnlocked(ILjava/lang/String;Landroid/content/Intent;ILcom/android/server/uri/NeededUriGrants;ILjava/lang/Integer;)Lcom/android/server/uri/NeededUriGrants;+]Landroid/content/ClipData$Item;Landroid/content/ClipData$Item;]Landroid/content/ClipData;Landroid/content/ClipData;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/uri/UriGrantsManagerService;Lcom/android/server/uri/UriGrantsManagerService; -HPLcom/android/server/uri/UriGrantsManagerService;->checkGrantUriPermissionUnlocked(ILjava/lang/String;Lcom/android/server/uri/GrantUri;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Landroid/os/PatternMatcher;Landroid/os/PatternMatcher;]Lcom/android/server/uri/UriGrantsManagerService;Lcom/android/server/uri/UriGrantsManagerService; -HSPLcom/android/server/uri/UriGrantsManagerService;->enforceRequireContentUriPermissionFromCallerOnIntentExtraStream(Landroid/content/Intent;IIILjava/lang/Integer;)V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/usage/AppIdleHistory;->getAppStandbyBucket(Ljava/lang/String;IJ)I+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; +HSPLcom/android/server/trust/TrustManagerService;->resolveProfileParent(I)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager; +HSPLcom/android/server/twilight/TwilightService$1;->unregisterListener(Lcom/android/server/twilight/TwilightListener;)V +HPLcom/android/server/uri/GrantUri;-><init>(ILandroid/net/Uri;I)V +HSPLcom/android/server/uri/UriGrantsManagerService$LocalService;->internalCheckGrantUriPermissionFromIntent(Landroid/content/Intent;ILjava/lang/String;ILjava/lang/Integer;Ljava/lang/Integer;)Lcom/android/server/uri/NeededUriGrants;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/uri/UriGrantsManagerService;->checkGrantUriPermissionFromIntentUnlocked(ILjava/lang/String;Landroid/content/Intent;ILcom/android/server/uri/NeededUriGrants;ILjava/lang/Integer;Ljava/lang/Integer;)Lcom/android/server/uri/NeededUriGrants;+]Landroid/content/ClipData$Item;Landroid/content/ClipData$Item;]Landroid/content/ClipData;Landroid/content/ClipData;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; +HPLcom/android/server/uri/UriGrantsManagerService;->checkGrantUriPermissionUnlocked(ILjava/lang/String;Lcom/android/server/uri/GrantUri;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/PathPermission;Landroid/content/pm/PathPermission;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Landroid/os/PatternMatcher;Landroid/os/PatternMatcher; +HSPLcom/android/server/uri/UriGrantsManagerService;->enforceRequireContentUriPermissionFromCallerOnIntentExtraStreamUnlocked(Landroid/content/Intent;IIILjava/lang/Integer;Ljava/lang/Integer;)V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/usage/AppIdleHistory;->getAppStandbyBucket(Ljava/lang/String;IJ)I HSPLcom/android/server/usage/AppIdleHistory;->getElapsedTime(J)J -HSPLcom/android/server/usage/AppIdleHistory;->getPackageHistory(Landroid/util/ArrayMap;Ljava/lang/String;JZ)Lcom/android/server/usage/AppIdleHistory$AppUsageHistory;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/usage/AppIdleHistory;->getUserHistory(I)Landroid/util/ArrayMap;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; -HSPLcom/android/server/usage/AppIdleHistory;->isIdle(Ljava/lang/String;IJ)Z+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; +HSPLcom/android/server/usage/AppIdleHistory;->getPackageHistory(Landroid/util/ArrayMap;Ljava/lang/String;JZ)Lcom/android/server/usage/AppIdleHistory$AppUsageHistory; +HSPLcom/android/server/usage/AppIdleHistory;->getUserHistory(I)Landroid/util/ArrayMap;+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/usage/AppIdleHistory;->isIdle(Ljava/lang/String;IJ)Z HSPLcom/android/server/usage/AppIdleHistory;->readAppIdleTimes(ILandroid/util/ArrayMap;)V -HPLcom/android/server/usage/AppIdleHistory;->removeElapsedExpiryTimes(Lcom/android/server/usage/AppIdleHistory$AppUsageHistory;J)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray; HPLcom/android/server/usage/AppIdleHistory;->reportUsage(Lcom/android/server/usage/AppIdleHistory$AppUsageHistory;Ljava/lang/String;IIIJJ)Lcom/android/server/usage/AppIdleHistory$AppUsageHistory;+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; -HSPLcom/android/server/usage/AppIdleHistory;->setAppStandbyBucket(Ljava/lang/String;IJIIZ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; +HPLcom/android/server/usage/AppIdleHistory;->setAppStandbyBucket(Ljava/lang/String;IJIIZ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; HSPLcom/android/server/usage/AppIdleHistory;->setLastJobRunTime(Ljava/lang/String;IJ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; -HSPLcom/android/server/usage/AppIdleHistory;->shouldInformListeners(Ljava/lang/String;IJI)Z -HPLcom/android/server/usage/AppIdleHistory;->writeAppIdleTimes(IJ)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/util/jobs/FastXmlSerializer;Lcom/android/internal/util/jobs/FastXmlSerializer;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;]Ljava/nio/charset/Charset;Lcom/android/icu/charset/CharsetICU; +HPLcom/android/server/usage/AppIdleHistory;->shouldInformListeners(Ljava/lang/String;IJI)Z +HPLcom/android/server/usage/AppIdleHistory;->writeAppIdleTimes(IJ)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; HSPLcom/android/server/usage/AppStandbyController$AppStandbyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/usage/AppStandbyController$ContentProviderUsageRecord;Lcom/android/server/usage/AppStandbyController$ContentProviderUsageRecord;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController$StandbyUpdateRecord;Lcom/android/server/usage/AppStandbyController$StandbyUpdateRecord;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController; -HSPLcom/android/server/usage/AppStandbyController$ContentProviderUsageRecord;->obtain(Ljava/lang/String;Ljava/lang/String;I)Lcom/android/server/usage/AppStandbyController$ContentProviderUsageRecord;+]Lcom/android/server/usage/AppStandbyController$Pool;Lcom/android/server/usage/AppStandbyController$Pool; HSPLcom/android/server/usage/AppStandbyController$Injector;->getActiveNetworkScorer()Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/NetworkScoreManager;Landroid/net/NetworkScoreManager; HPLcom/android/server/usage/AppStandbyController$Injector;->getValidCrossProfileTargets(Ljava/lang/String;I)Ljava/util/List;+]Landroid/content/pm/CrossProfileAppsInternal;Lcom/android/server/pm/CrossProfileAppsServiceImpl$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl; -HSPLcom/android/server/usage/AppStandbyController$Injector;->isNonIdleWhitelisted(Ljava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/usage/AppStandbyController$Injector;->isWellbeingPackage(Ljava/lang/String;)Z -HSPLcom/android/server/usage/AppStandbyController$Injector;->shouldGetExactAlarmBucketElevation(Ljava/lang/String;I)Z+]Lcom/android/server/AlarmManagerInternal;Lcom/android/server/alarm/AlarmManagerService$LocalService; -HSPLcom/android/server/usage/AppStandbyController$StandbyUpdateRecord;->obtain(Ljava/lang/String;IIIZ)Lcom/android/server/usage/AppStandbyController$StandbyUpdateRecord;+]Lcom/android/server/usage/AppStandbyController$Pool;Lcom/android/server/usage/AppStandbyController$Pool; -HSPLcom/android/server/usage/AppStandbyController;->checkAndUpdateStandbyState(Ljava/lang/String;IIJ)V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController; -HSPLcom/android/server/usage/AppStandbyController;->checkIdleStates(I)Z+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/usage/AppStandbyController;->getAppMinBucket(Ljava/lang/String;II)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/usage/AppStandbyController$Injector;->isNonIdleWhitelisted(Ljava/lang/String;)Z +HPLcom/android/server/usage/AppStandbyController;->checkAndUpdateStandbyState(Ljava/lang/String;IIJ)V+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector; +HSPLcom/android/server/usage/AppStandbyController;->getAppMinBucket(Ljava/lang/String;II)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/usage/AppStandbyController;->getAppStandbyBucket(Ljava/lang/String;IJZ)I+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; -HPLcom/android/server/usage/AppStandbyController;->getCrossProfileTargets(Ljava/lang/String;I)Ljava/util/List;+]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector; -HSPLcom/android/server/usage/AppStandbyController;->informListeners(Ljava/lang/String;IIIZ)V+]Lcom/android/server/usage/AppStandbyInternal$AppIdleStateChangeListener;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr; HSPLcom/android/server/usage/AppStandbyController;->isActiveDeviceAdmin(Ljava/lang/String;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLcom/android/server/usage/AppStandbyController;->isActiveNetworkScorer(Ljava/lang/String;)Z+]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/usage/AppStandbyController;->isActiveNetworkScorer(Ljava/lang/String;)Z+]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector; HSPLcom/android/server/usage/AppStandbyController;->isAdminProtectedPackages(Ljava/lang/String;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Landroid/util/ArraySet; HSPLcom/android/server/usage/AppStandbyController;->isAppIdleEnabled()Z HSPLcom/android/server/usage/AppStandbyController;->isAppIdleFiltered(Ljava/lang/String;IIJ)Z HSPLcom/android/server/usage/AppStandbyController;->isCarrierApp(Ljava/lang/String;)Z+]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; -HSPLcom/android/server/usage/AppStandbyController;->isDeviceProvisioningPackage(Ljava/lang/String;)Z HSPLcom/android/server/usage/AppStandbyController;->isInParole()Z -HSPLcom/android/server/usage/AppStandbyController;->maybeInformListeners(Ljava/lang/String;IJIIZ)V+]Landroid/os/Handler;Lcom/android/server/usage/AppStandbyController$AppStandbyHandler;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; -HPLcom/android/server/usage/AppStandbyController;->onUsageEvent(ILandroid/app/usage/UsageEvents$Event;)V+]Landroid/app/usage/UsageEvents$Event;Landroid/app/usage/UsageEvents$Event;]Landroid/os/UserHandle;Landroid/os/UserHandle;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; +HPLcom/android/server/usage/AppStandbyController;->maybeInformListeners(Ljava/lang/String;IJIIZ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; +HPLcom/android/server/usage/AppStandbyController;->onUsageEvent(ILandroid/app/usage/UsageEvents$Event;)V+]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList; HSPLcom/android/server/usage/AppStandbyController;->reportContentProviderUsage(Ljava/lang/String;Ljava/lang/String;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/usage/AppStandbyController;->reportEventLocked(Ljava/lang/String;IJI)V+]Landroid/os/Handler;Lcom/android/server/usage/AppStandbyController$AppStandbyHandler;]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;]Lcom/android/server/usage/AppStandbyController;Lcom/android/server/usage/AppStandbyController; +HPLcom/android/server/usage/AppStandbyController;->reportEventLocked(Ljava/lang/String;IJI)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; HSPLcom/android/server/usage/AppStandbyController;->setLastJobRunTime(Ljava/lang/String;IJ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory; HPLcom/android/server/usage/IntervalStats;-><init>()V -HPLcom/android/server/usage/IntervalStats;->addEvent(Landroid/app/usage/UsageEvents$Event;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList; -HPLcom/android/server/usage/IntervalStats;->deobfuscateEvents(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/usage/PackagesTokenData;Lcom/android/server/usage/PackagesTokenData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/usage/IntervalStats;->deobfuscateUsageStats(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/usage/PackagesTokenData;Lcom/android/server/usage/PackagesTokenData;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/usage/IntervalStats;->getOrCreateUsageStats(Ljava/lang/String;)Landroid/app/usage/UsageStats;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats; -HPLcom/android/server/usage/IntervalStats;->obfuscateEventsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Lcom/android/server/usage/PackagesTokenData;Lcom/android/server/usage/PackagesTokenData; -HPLcom/android/server/usage/IntervalStats;->obfuscateUsageStatsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/usage/PackagesTokenData;Lcom/android/server/usage/PackagesTokenData;]Ljava/lang/Integer;Ljava/lang/Integer; -HPLcom/android/server/usage/IntervalStats;->update(Ljava/lang/String;Ljava/lang/String;JII)V+]Landroid/app/usage/UsageStats;Landroid/app/usage/UsageStats;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats; +HPLcom/android/server/usage/IntervalStats;->deobfuscateEvents(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList; +HPLcom/android/server/usage/IntervalStats;->deobfuscateUsageStats(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/usage/IntervalStats;->obfuscateEventsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList; +HPLcom/android/server/usage/IntervalStats;->obfuscateUsageStatsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/usage/IntervalStats;->update(Ljava/lang/String;Ljava/lang/String;JII)V+]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats; HPLcom/android/server/usage/PackagesTokenData;->getPackageString(I)Ljava/lang/String;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/usage/PackagesTokenData;->getPackageTokenOrAdd(Ljava/lang/String;J)I+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/usage/PackagesTokenData;->getPackageTokenOrAdd(Ljava/lang/String;J)I+]Landroid/util/SparseArray;Landroid/util/SparseArray; HPLcom/android/server/usage/PackagesTokenData;->getString(II)Ljava/lang/String;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V HSPLcom/android/server/usage/StorageStatsService$H;->handleMessage(Landroid/os/Message;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/StatFs;Landroid/os/StatFs;]Lcom/android/server/usage/StorageStatsService;Lcom/android/server/usage/StorageStatsService;]Ljava/io/File;Ljava/io/File; -HPLcom/android/server/usage/StorageStatsService;->checkStatsPermission(ILjava/lang/String;Z)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HPLcom/android/server/usage/StorageStatsService;->checkStatsPermission(ILjava/lang/String;Z)Ljava/lang/String;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl; HPLcom/android/server/usage/StorageStatsService;->computeAppStatsByDataTypes(Landroid/content/pm/PackageStats;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/art/model/ArtManagedFileStats;Lcom/android/server/art/model/ArtManagedFileStats;]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl; -HPLcom/android/server/usage/StorageStatsService;->forEachStorageStatsAugmenter(Ljava/util/function/Consumer;Ljava/lang/String;)V+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;]Ljava/util/function/Consumer;Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda0;,Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda1;,Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda2; +HPLcom/android/server/usage/StorageStatsService;->forEachStorageStatsAugmenter(Ljava/util/function/Consumer;Ljava/lang/String;)V+]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;]Ljava/util/function/Consumer;Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda0;,Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda1;,Lcom/android/server/usage/StorageStatsService$$ExternalSyntheticLambda2; +HPLcom/android/server/usage/StorageStatsService;->getDirBytes(Ljava/io/File;)J+]Ljava/io/File;Ljava/io/File; +HPLcom/android/server/usage/StorageStatsService;->getFileBytesInDir(Ljava/io/File;Ljava/lang/String;)J+]Ljava/io/File;Ljava/io/File; HPLcom/android/server/usage/StorageStatsService;->queryStatsForPackage(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Landroid/app/usage/StorageStats;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/pm/Installer;Lcom/android/server/pm/Installer;]Lcom/android/server/usage/StorageStatsService;Lcom/android/server/usage/StorageStatsService; HPLcom/android/server/usage/StorageStatsService;->queryStatsForUid(Ljava/lang/String;ILjava/lang/String;)Landroid/app/usage/StorageStats;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/pm/Installer;Lcom/android/server/pm/Installer;]Lcom/android/server/usage/StorageStatsService;Lcom/android/server/usage/StorageStatsService; HPLcom/android/server/usage/StorageStatsService;->translate(Landroid/content/pm/PackageStats;)Landroid/app/usage/StorageStats; -HPLcom/android/server/usage/UsageStatsProtoV2;->loadConfigStats(Landroid/util/proto/ProtoInputStream;Lcom/android/server/usage/IntervalStats;)V+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/util/proto/ProtoInputStream;Landroid/util/proto/ProtoInputStream;]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats; -HPLcom/android/server/usage/UsageStatsProtoV2;->parseEvent(Landroid/util/proto/ProtoInputStream;J)Landroid/app/usage/UsageEvents$Event;+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/util/proto/ProtoInputStream;Landroid/util/proto/ProtoInputStream; -HPLcom/android/server/usage/UsageStatsProtoV2;->parseUsageStats(Landroid/util/proto/ProtoInputStream;J)Landroid/app/usage/UsageStats;+]Landroid/util/proto/ProtoInputStream;Landroid/util/proto/ProtoInputStream; -HPLcom/android/server/usage/UsageStatsProtoV2;->read(Ljava/io/InputStream;Lcom/android/server/usage/IntervalStats;Z)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/proto/ProtoInputStream;Landroid/util/proto/ProtoInputStream; -HPLcom/android/server/usage/UsageStatsProtoV2;->write(Ljava/io/OutputStream;Lcom/android/server/usage/IntervalStats;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/proto/ProtoOutputStream;Landroid/util/proto/ProtoOutputStream; -HPLcom/android/server/usage/UsageStatsProtoV2;->writeOffsetTimestamp(Landroid/util/proto/ProtoOutputStream;JJJ)V+]Landroid/util/proto/ProtoOutputStream;Landroid/util/proto/ProtoOutputStream; -HPLcom/android/server/usage/UsageStatsProtoV2;->writeUsageStats(Landroid/util/proto/ProtoOutputStream;JLandroid/app/usage/UsageStats;)V+]Landroid/util/proto/ProtoOutputStream;Landroid/util/proto/ProtoOutputStream; -HSPLcom/android/server/usage/UsageStatsService$$ExternalSyntheticLambda0;->handleMessage(Landroid/os/Message;)Z -HSPLcom/android/server/usage/UsageStatsService$1;->onAppIdleStateChanged(Ljava/lang/String;IZII)V -HSPLcom/android/server/usage/UsageStatsService$3;->onUidStateChanged(IIJI)V+]Landroid/os/Handler;Landroid/os/Handler;]Landroid/os/Message;Landroid/os/Message; +HPLcom/android/server/usage/UsageStatsProtoV2;->loadConfigStats(Landroid/util/proto/ProtoInputStream;Lcom/android/server/usage/IntervalStats;)V+]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats; +HPLcom/android/server/usage/UsageStatsProtoV2;->parseEvent(Landroid/util/proto/ProtoInputStream;J)Landroid/app/usage/UsageEvents$Event; +HPLcom/android/server/usage/UsageStatsProtoV2;->parseUsageStats(Landroid/util/proto/ProtoInputStream;J)Landroid/app/usage/UsageStats; +HPLcom/android/server/usage/UsageStatsProtoV2;->read(Ljava/io/InputStream;Lcom/android/server/usage/IntervalStats;Z)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/usage/UsageStatsProtoV2;->write(Ljava/io/OutputStream;Lcom/android/server/usage/IntervalStats;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/SparseArray;Landroid/util/SparseArray; +HPLcom/android/server/usage/UsageStatsProtoV2;->writeOffsetTimestamp(Landroid/util/proto/ProtoOutputStream;JJJ)V +HSPLcom/android/server/usage/UsageStatsService$3;->onUidStateChanged(IIJI)V +HPLcom/android/server/usage/UsageStatsService$BinderService;->$r8$lambda$KcrJYyWcmAOKG3NFhWUYPCQlNFI(Lcom/android/server/usage/UsageStatsService$BinderService;IIZLandroid/app/usage/AppStandbyInfo;)Z HPLcom/android/server/usage/UsageStatsService$BinderService;->getAppStandbyBucket(Ljava/lang/String;Ljava/lang/String;I)I+]Landroid/app/IActivityManager;Lcom/android/server/am/ActivityManagerService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HPLcom/android/server/usage/UsageStatsService$BinderService;->hasQueryPermission(Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl; HPLcom/android/server/usage/UsageStatsService$BinderService;->isAppInactive(Ljava/lang/String;ILjava/lang/String;)Z+]Landroid/app/IActivityManager;Lcom/android/server/am/ActivityManagerService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; -HSPLcom/android/server/usage/UsageStatsService$H;->handleMessage(Landroid/os/Message;)V+]Landroid/app/usage/UsageStatsManagerInternal$EstimatedLaunchTimeChangedListener;Lcom/android/server/job/controllers/PrefetchController$1;]Landroid/os/Handler;Lcom/android/server/usage/UsageStatsService$H;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/usage/BroadcastResponseStatsTracker;Lcom/android/server/usage/BroadcastResponseStatsTracker;]Lcom/android/server/usage/UsageStatsService;Lcom/android/server/usage/UsageStatsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet; HSPLcom/android/server/usage/UsageStatsService$LocalService;->getAppStandbyBucket(Ljava/lang/String;IJ)I+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/usage/UsageStatsService$LocalService;->isAppIdle(Ljava/lang/String;II)Z+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; HSPLcom/android/server/usage/UsageStatsService$LocalService;->reportEvent(Ljava/lang/String;II)V HSPLcom/android/server/usage/UsageStatsService$LocalService;->setLastJobRunTime(Ljava/lang/String;IJ)V+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController; +HPLcom/android/server/usage/UsageStatsService;->-$$Nest$msameApp(Lcom/android/server/usage/UsageStatsService;IILjava/lang/String;)Z HPLcom/android/server/usage/UsageStatsService;->getUserUsageStatsServiceLocked(I)Lcom/android/server/usage/UserUsageStatsService;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/usage/UsageStatsService;->lambda$new$0(Landroid/os/Message;)Z+]Landroid/app/usage/UsageStatsManagerInternal$UsageEventListener;Lcom/android/server/apphibernation/AppHibernationService$$ExternalSyntheticLambda0;,Lcom/android/server/job/controllers/QuotaController$UsageEventTracker;,Lcom/android/server/pm/BackgroundInstallControlService$$ExternalSyntheticLambda0;,Lcom/android/server/usage/AppStandbyController;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/usage/UsageStatsService;Lcom/android/server/usage/UsageStatsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HPLcom/android/server/usage/UsageStatsService;->reportEvent(Landroid/app/usage/UsageEvents$Event;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/Handler;Landroid/os/Handler;,Lcom/android/server/usage/UsageStatsService$H;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/usage/AppTimeLimitController;Lcom/android/server/usage/AppTimeLimitController;]Lcom/android/server/usage/UsageStatsService;Lcom/android/server/usage/UsageStatsService;]Lcom/android/server/usage/UserUsageStatsService;Lcom/android/server/usage/UserUsageStatsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet; -HSPLcom/android/server/usage/UsageStatsService;->reportEventOrAddToQueue(ILandroid/app/usage/UsageEvents$Event;)V+]Landroid/os/Handler;Lcom/android/server/usage/UsageStatsService$H;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/LinkedList;Ljava/util/LinkedList;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet; -HPLcom/android/server/usage/UserUsageStatsService$4;->combine(Lcom/android/server/usage/IntervalStats;ZLjava/util/List;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/app/usage/UsageEvents$Event;Landroid/app/usage/UsageEvents$Event;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/usage/UserUsageStatsService;->checkAndGetTimeLocked()J+]Lcom/android/server/usage/UserUsageStatsService;Lcom/android/server/usage/UserUsageStatsService;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/usage/UsageStatsService;->lambda$new$0(Landroid/os/Message;)Z+]Landroid/app/usage/UsageStatsManagerInternal$UsageEventListener;Lcom/android/server/apphibernation/AppHibernationService$$ExternalSyntheticLambda0;,Lcom/android/server/job/controllers/QuotaController$UsageEventTracker;,Lcom/android/server/pm/BackgroundInstallControlService$$ExternalSyntheticLambda0;,Lcom/android/server/usage/AppStandbyController;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; +HPLcom/android/server/usage/UsageStatsService;->reportEvent(Landroid/app/usage/UsageEvents$Event;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/usage/AppTimeLimitController;Lcom/android/server/usage/AppTimeLimitController;]Lcom/android/server/usage/UserUsageStatsService;Lcom/android/server/usage/UserUsageStatsService;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet; +HSPLcom/android/server/usage/UsageStatsService;->reportEventOrAddToQueue(ILandroid/app/usage/UsageEvents$Event;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/LinkedList;Ljava/util/LinkedList;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet; +HPLcom/android/server/usage/UserUsageStatsService$1;->combine(Lcom/android/server/usage/IntervalStats;ZLjava/util/List;)Z+]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/usage/UserUsageStatsService$4;->combine(Lcom/android/server/usage/IntervalStats;ZLjava/util/List;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/usage/UserUsageStatsService;->checkAndGetTimeLocked()J HPLcom/android/server/usage/UserUsageStatsService;->queryEvents(JJI[ILandroid/util/ArraySet;)Landroid/app/usage/UsageEvents;+]Ljava/util/List;Ljava/util/ArrayList; HPLcom/android/server/usage/UserUsageStatsService;->queryStats(IJJLcom/android/server/usage/UsageStatsDatabase$StatCombiner;Z)Ljava/util/List;+]Lcom/android/server/usage/UsageStatsDatabase$StatCombiner;megamorphic_types]Lcom/android/server/usage/UsageStatsDatabase;Lcom/android/server/usage/UsageStatsDatabase; -HPLcom/android/server/usage/UserUsageStatsService;->reportEvent(Landroid/app/usage/UsageEvents$Event;)V+]Landroid/app/usage/UsageEvents$Event;Landroid/app/usage/UsageEvents$Event;]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats;]Lcom/android/server/usage/UnixCalendar;Lcom/android/server/usage/UnixCalendar;]Lcom/android/server/usage/UserUsageStatsService;Lcom/android/server/usage/UserUsageStatsService;]Ljava/lang/Object;Ljava/lang/String; -HSPLcom/android/server/usb/UsbDeviceManager$UsbHandler;->updateUsbNotification(Z)V+]Landroid/app/Notification$Builder;Landroid/app/Notification$Builder;]Landroid/app/NotificationManager;Landroid/app/NotificationManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/server/usb/UsbDeviceManager$UsbHandler;Lcom/android/server/usb/UsbDeviceManager$UsbHandlerHal; +HPLcom/android/server/usage/UserUsageStatsService;->reportEvent(Landroid/app/usage/UsageEvents$Event;)V+]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats;]Lcom/android/server/usage/UnixCalendar;Lcom/android/server/usage/UnixCalendar; HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I -HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;->lambda$static$0(Landroid/util/Pair;Landroid/util/Pair;)I+]Ljava/lang/Long;Ljava/lang/Long; +HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;->lambda$static$0(Landroid/util/Pair;Landroid/util/Pair;)I HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;->removeKey(Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/content/pm/UserPackage;,Lcom/android/server/job/controllers/JobStatus;,Ljava/lang/String;]Ljava/util/PriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; -HSPLcom/android/server/utils/AlarmQueue;->addAlarm(Ljava/lang/Object;J)V+]Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;,Lcom/android/server/job/controllers/PrefetchController$ThresholdAlarmListener;,Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue;,Lcom/android/server/usage/UsageStatsService$LaunchTimeAlarmQueue;]Ljava/util/PriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; -HSPLcom/android/server/utils/AlarmQueue;->removeAlarmForKey(Ljava/lang/Object;)V+]Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;]Lcom/android/server/utils/AlarmQueue;Lcom/android/server/job/controllers/FlexibilityController$FlexibilityAlarmQueue;,Lcom/android/server/job/controllers/PrefetchController$ThresholdAlarmListener;,Lcom/android/server/job/controllers/QuotaController$InQuotaAlarmQueue; -HSPLcom/android/server/utils/AlarmQueue;->setNextAlarmLocked(J)V+]Landroid/os/Handler;Landroid/os/Handler;]Ljava/lang/Long;Ljava/lang/Long;]Ljava/util/PriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; -HSPLcom/android/server/utils/AnrTimer$FeatureDisabled;->cancel(Ljava/lang/Object;)Z+]Landroid/os/Handler;Landroid/os/Handler;,Lcom/android/server/am/ActivityManagerService$MainHandler; -HSPLcom/android/server/utils/AnrTimer$FeatureDisabled;->start(Ljava/lang/Object;IIJ)V+]Landroid/os/Handler;Landroid/os/Handler;,Lcom/android/server/am/ActivityManagerService$MainHandler; +HSPLcom/android/server/utils/AlarmQueue;->addAlarm(Ljava/lang/Object;J)V+]Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;]Ljava/util/PriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; +HSPLcom/android/server/utils/AlarmQueue;->removeAlarmForKey(Ljava/lang/Object;)V+]Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; +HSPLcom/android/server/utils/AlarmQueue;->setNextAlarmLocked(J)V+]Ljava/util/PriorityQueue;Lcom/android/server/utils/AlarmQueue$AlarmPriorityQueue; +HSPLcom/android/server/utils/AnrTimer$FeatureDisabled;->cancel(Ljava/lang/Object;)Z +HSPLcom/android/server/utils/AnrTimer$FeatureDisabled;->start(Ljava/lang/Object;IIJ)V HSPLcom/android/server/utils/AnrTimer;->cancel(Ljava/lang/Object;)Z+]Lcom/android/server/utils/AnrTimer$FeatureSwitch;Lcom/android/server/utils/AnrTimer$FeatureDisabled; HSPLcom/android/server/utils/AnrTimer;->serviceEnabled()Z+]Lcom/android/server/utils/AnrTimer$FeatureSwitch;Lcom/android/server/utils/AnrTimer$FeatureDisabled; +HSPLcom/android/server/utils/AnrTimer;->start(Ljava/lang/Object;J)V+]Lcom/android/server/utils/AnrTimer$FeatureSwitch;Lcom/android/server/utils/AnrTimer$FeatureDisabled;]Lcom/android/server/utils/AnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer;,Lcom/android/server/am/ActiveServices$ServiceAnrTimer;,Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer; HSPLcom/android/server/utils/Slogf;->getMessage(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; HSPLcom/android/server/utils/SnapshotCache$Auto;->createSnapshot()Lcom/android/server/utils/Snappable;+]Lcom/android/server/utils/Snappable;megamorphic_types HSPLcom/android/server/utils/SnapshotCache;-><init>()V HSPLcom/android/server/utils/SnapshotCache;-><init>(Ljava/lang/Object;Lcom/android/server/utils/Watchable;Ljava/lang/String;)V+]Lcom/android/server/utils/Watchable;megamorphic_types]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap; HSPLcom/android/server/utils/SnapshotCache;->onChange(Lcom/android/server/utils/Watchable;)V -HSPLcom/android/server/utils/SnapshotCache;->snapshot()Ljava/lang/Object;+]Lcom/android/server/utils/SnapshotCache;megamorphic_types]Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger; +HSPLcom/android/server/utils/SnapshotCache;->snapshot()Ljava/lang/Object;+]Lcom/android/server/utils/SnapshotCache;megamorphic_types HSPLcom/android/server/utils/Snapshots;->maybeSnapshot(Ljava/lang/Object;)Ljava/lang/Object;+]Lcom/android/server/utils/Snappable;megamorphic_types HSPLcom/android/server/utils/WatchableImpl;-><init>()V HSPLcom/android/server/utils/WatchableImpl;->dispatchChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/Watcher;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; @@ -3330,25 +3488,25 @@ HSPLcom/android/server/utils/WatchedArrayList;->size()I+]Ljava/util/ArrayList;Lj HSPLcom/android/server/utils/WatchedArrayList;->snapshot(Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayList;]Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/utils/WatchedArrayMap$1;->onChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayMap; HSPLcom/android/server/utils/WatchedArrayMap;-><init>(IZ)V -HSPLcom/android/server/utils/WatchedArrayMap;->containsKey(Ljava/lang/Object;)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/utils/WatchedArrayMap;->containsKey(Ljava/lang/Object;)Z HSPLcom/android/server/utils/WatchedArrayMap;->entrySet()Ljava/util/Set; -HSPLcom/android/server/utils/WatchedArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/utils/WatchedArrayMap;->keyAt(I)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/utils/WatchedArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object; +HSPLcom/android/server/utils/WatchedArrayMap;->keyAt(I)Ljava/lang/Object; HSPLcom/android/server/utils/WatchedArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLcom/android/server/utils/WatchedArrayMap;->putAll(Ljava/util/Map;)V+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet; -HSPLcom/android/server/utils/WatchedArrayMap;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting;,Lcom/android/server/utils/WatchedLongSparseArray; -HSPLcom/android/server/utils/WatchedArrayMap;->size()I+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/utils/WatchedArrayMap;->snapshot(Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; -HSPLcom/android/server/utils/WatchedArrayMap;->valueAt(I)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; +HSPLcom/android/server/utils/WatchedArrayMap;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/utils/WatchedLongSparseArray; +HSPLcom/android/server/utils/WatchedArrayMap;->size()I +HSPLcom/android/server/utils/WatchedArrayMap;->snapshot(Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap; +HSPLcom/android/server/utils/WatchedArrayMap;->untrackedStorage()Landroid/util/ArrayMap; +HSPLcom/android/server/utils/WatchedArrayMap;->valueAt(I)Ljava/lang/Object; HSPLcom/android/server/utils/WatchedArraySet;-><init>(IZ)V HSPLcom/android/server/utils/WatchedArraySet;->add(Ljava/lang/Object;)Z HSPLcom/android/server/utils/WatchedArraySet;->clear()V -HSPLcom/android/server/utils/WatchedArraySet;->contains(Ljava/lang/Object;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/utils/WatchedArraySet;->contains(Ljava/lang/Object;)Z HSPLcom/android/server/utils/WatchedArraySet;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting; HSPLcom/android/server/utils/WatchedArraySet;->registerObserver(Lcom/android/server/utils/Watcher;)V -HSPLcom/android/server/utils/WatchedArraySet;->size()I+]Landroid/util/ArraySet;Landroid/util/ArraySet; -HSPLcom/android/server/utils/WatchedArraySet;->snapshot(Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArraySet;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; -HSPLcom/android/server/utils/WatchedArraySet;->valueAt(I)Ljava/lang/Object;+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/utils/WatchedArraySet;->snapshot(Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArraySet;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet; +HSPLcom/android/server/utils/WatchedArraySet;->untrackedStorage()Landroid/util/ArraySet; HSPLcom/android/server/utils/WatchedLongSparseArray;->size()I+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; HSPLcom/android/server/utils/WatchedLongSparseArray;->valueAt(I)Ljava/lang/Object;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray; HSPLcom/android/server/utils/WatchedSparseArray;-><init>()V @@ -3360,102 +3518,140 @@ HSPLcom/android/server/utils/WatchedSparseBooleanArray;->snapshot()Lcom/android/ HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->binarySearch([III)I HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->copyFrom(Lcom/android/server/utils/WatchedSparseBooleanMatrix;)V HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->indexOfKey(I)I -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->indexOfKey(IZ)I+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->nextFree(Z)I -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->onChanged()V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedSparseBooleanMatrix; +HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->indexOfKey(IZ)I HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->put(IIZ)V+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->setValueAt(IIZ)V+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; +HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->setValueAt(IIZ)V HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->setValueAtInternal(IIZ)V -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->validateIndex(II)V+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; -HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->valueAt(II)Z+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix; +HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->validateIndex(II)V +HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->valueAt(II)Z HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->valueAtInternal(II)Z -HSPLcom/android/server/utils/WatchedSparseSetArray;-><init>(Lcom/android/server/utils/WatchedSparseSetArray;)V+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray; +HSPLcom/android/server/utils/WatchedSparseSetArray;-><init>(Lcom/android/server/utils/WatchedSparseSetArray;)V HSPLcom/android/server/utils/WatchedSparseSetArray;->add(ILjava/lang/Object;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray; HSPLcom/android/server/utils/WatchedSparseSetArray;->contains(ILjava/lang/Object;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray; HSPLcom/android/server/utils/quota/Category;->equals(Ljava/lang/Object;)Z -HSPLcom/android/server/utils/quota/CountQuotaTracker;->getExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats;+]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; -HSPLcom/android/server/utils/quota/CountQuotaTracker;->getExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;Z)Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/utils/quota/Categorizer;Lcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda4;,Lcom/android/server/utils/quota/Categorizer$$ExternalSyntheticLambda0;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Lcom/android/server/utils/quota/QuotaTracker$Injector;Lcom/android/server/utils/quota/QuotaTracker$Injector;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap;]Ljava/lang/Integer;Ljava/lang/Integer;]Ljava/lang/Long;Ljava/lang/Long; +HSPLcom/android/server/utils/quota/Category;->hashCode()I +HSPLcom/android/server/utils/quota/CountQuotaTracker;->getExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats; +HSPLcom/android/server/utils/quota/CountQuotaTracker;->getExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;Z)Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats;+]Lcom/android/server/utils/quota/Categorizer;Lcom/android/server/job/JobSchedulerService$$ExternalSyntheticLambda4;,Lcom/android/server/utils/quota/Categorizer$$ExternalSyntheticLambda0;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Lcom/android/server/utils/quota/QuotaTracker$Injector;Lcom/android/server/utils/quota/QuotaTracker$Injector;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap; HSPLcom/android/server/utils/quota/CountQuotaTracker;->isWithinQuota(ILjava/lang/String;Ljava/lang/String;)Z HSPLcom/android/server/utils/quota/CountQuotaTracker;->isWithinQuotaLocked(ILjava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Lcom/android/server/utils/quota/QuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; HPLcom/android/server/utils/quota/CountQuotaTracker;->noteEvent(ILjava/lang/String;Ljava/lang/String;)Z+]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Lcom/android/server/utils/quota/QuotaTracker$Injector;Lcom/android/server/utils/quota/QuotaTracker$Injector;]Lcom/android/server/utils/quota/QuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap; HSPLcom/android/server/utils/quota/CountQuotaTracker;->updateExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats;)V+]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue;]Lcom/android/server/utils/quota/QuotaTracker$Injector;Lcom/android/server/utils/quota/QuotaTracker$Injector;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap; HSPLcom/android/server/utils/quota/QuotaTracker$Injector;->getElapsedRealtime()J -HSPLcom/android/server/utils/quota/QuotaTracker;->isQuotaFreeLocked(ILjava/lang/String;)Z+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/lang/Boolean;Ljava/lang/Boolean; +HSPLcom/android/server/utils/quota/QuotaTracker;->isEnabledLocked()Z +HSPLcom/android/server/utils/quota/QuotaTracker;->isQuotaFreeLocked(ILjava/lang/String;)Z+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap; HSPLcom/android/server/utils/quota/QuotaTracker;->isWithinQuota(ILjava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/utils/quota/QuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker; -HSPLcom/android/server/utils/quota/UptcMap;->getOrCreate(ILjava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap;]Ljava/util/function/Function;Lcom/android/server/utils/quota/CountQuotaTracker$$ExternalSyntheticLambda1;,Lcom/android/server/utils/quota/CountQuotaTracker$$ExternalSyntheticLambda2; +HSPLcom/android/server/utils/quota/UptcMap;->getOrCreate(ILjava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/utils/quota/UptcMap;Lcom/android/server/utils/quota/UptcMap;]Ljava/util/function/Function;Lcom/android/server/utils/quota/CountQuotaTracker$$ExternalSyntheticLambda1;,Lcom/android/server/utils/quota/CountQuotaTracker$$ExternalSyntheticLambda2; HSPLcom/android/server/vibrator/VibrationSettings$VibrationUidObserver;->onUidStateChanged(IIJI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/vibrator/VibrationStats$StatsInfo;-><init>(IIILcom/android/server/vibrator/Vibration$Status;Lcom/android/server/vibrator/VibrationStats;J)V HPLcom/android/server/webkit/WebViewUpdateService$BinderService;->getCurrentWebViewPackage()Landroid/content/pm/PackageInfo;+]Lcom/android/server/webkit/WebViewUpdateServiceInterface;Lcom/android/server/webkit/WebViewUpdateServiceImpl2; HPLcom/android/server/webkit/WebViewUpdateService$BinderService;->grantVisibilityToCaller(Ljava/lang/String;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; -HSPLcom/android/server/wm/AccessibilityController;->hasCallbacks()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/AccessibilityController$AccessibilityControllerInternalImpl;Lcom/android/server/wm/AccessibilityController$AccessibilityControllerInternalImpl; -HSPLcom/android/server/wm/ActivityRecord;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/WindowProcessController;IILjava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/pm/ActivityInfo;Landroid/content/res/Configuration;Lcom/android/server/wm/ActivityRecord;Ljava/lang/String;IZZLcom/android/server/wm/ActivityTaskSupervisor;Landroid/app/ActivityOptions;Lcom/android/server/wm/ActivityRecord;Landroid/os/PersistableBundle;Landroid/app/ActivityManager$TaskDescription;J)V+]Landroid/app/ActivityOptions$SceneTransitionInfo;Landroid/app/ActivityOptions$SceneTransitionInfo;]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/wm/PackageConfigPersister;Lcom/android/server/wm/PackageConfigPersister; +HSPLcom/android/server/wm/AccessibilityController;->hasCallbacks()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; +HSPLcom/android/server/wm/ActivityRecord;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/WindowProcessController;IILjava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/pm/ActivityInfo;Landroid/content/res/Configuration;Lcom/android/server/wm/ActivityRecord;Ljava/lang/String;IZZLcom/android/server/wm/ActivityTaskSupervisor;Landroid/app/ActivityOptions;Lcom/android/server/wm/ActivityRecord;Landroid/os/PersistableBundle;Landroid/app/ActivityManager$TaskDescription;J)V HSPLcom/android/server/wm/ActivityRecord;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/ActivityRecord;->canBeTopRunning()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->canReceiveKeys()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->canShowWhenLocked(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/ActivityRecord;->canShowWhenLockedInner(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->containsDismissKeyguardWindow()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/ActivityRecord;->containsShowWhenLockedWindow()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/ActivityRecord;->containsTurnScreenOnWindow()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/ActivityRecord;->findMainWindow(Z)Lcom/android/server/wm/WindowState;+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/ActivityRecord;->canBeTopRunning()Z +HSPLcom/android/server/wm/ActivityRecord;->canReceiveKeys()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; +HSPLcom/android/server/wm/ActivityRecord;->canShowWhenLockedInner(Lcom/android/server/wm/ActivityRecord;)Z +HSPLcom/android/server/wm/ActivityRecord;->containsDismissKeyguardWindow()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/ActivityRecord;->containsShowWhenLockedWindow()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/ActivityRecord;->containsTurnScreenOnWindow()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/ActivityRecord;->findMainWindow(Z)Lcom/android/server/wm/WindowState;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/ActivityRecord;->getActivity(Ljava/util/function/Predicate;ZLcom/android/server/wm/ActivityRecord;)Lcom/android/server/wm/ActivityRecord;+]Ljava/util/function/Predicate;megamorphic_types -HSPLcom/android/server/wm/ActivityRecord;->getAppCompatState(Z)I+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController; -HSPLcom/android/server/wm/ActivityRecord;->getBounds()Landroid/graphics/Rect;+]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Ljava/util/Optional;Ljava/util/Optional; -HSPLcom/android/server/wm/ActivityRecord;->getRootTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/ActivityRecord;->getAppCompatState(Z)I+]Lcom/android/server/wm/AppCompatAspectRatioPolicy;Lcom/android/server/wm/AppCompatAspectRatioPolicy;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatSizeCompatModePolicy;Lcom/android/server/wm/AppCompatSizeCompatModePolicy;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/ActivityRecord;->getBounds()Landroid/graphics/Rect;+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/ActivityRecord;->getScreenResolvedBounds()Landroid/graphics/Rect;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatSizeCompatModePolicy;Lcom/android/server/wm/AppCompatSizeCompatModePolicy; HSPLcom/android/server/wm/ActivityRecord;->getTask()Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/ActivityRecord;->getTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/ActivityRecord;->isFocusable()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord; +HSPLcom/android/server/wm/ActivityRecord;->getTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/ActivityRecord;->hasSizeCompatBounds()Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatSizeCompatModePolicy;Lcom/android/server/wm/AppCompatSizeCompatModePolicy; HSPLcom/android/server/wm/ActivityRecord;->isVisible()Z -HSPLcom/android/server/wm/ActivityRecord;->isWaitingForTransitionStart()Z+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->occludesParent(Z)Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->prepareSurfaces()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/ActivityRecord;->setState(Lcom/android/server/wm/ActivityRecord$State;Ljava/lang/String;)V+]Lcom/android/server/contentcapture/ContentCaptureManagerInternal;Lcom/android/server/contentcapture/ContentCaptureManagerService$LocalService;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/wm/ActivityRecord;->shouldBeVisibleUnchecked()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/ActivityRecord;->shouldMakeActive(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/ActivityRecord;->isWaitingForTransitionStart()Z+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition; +HSPLcom/android/server/wm/ActivityRecord;->occludesParent(Z)Z +HSPLcom/android/server/wm/ActivityRecord;->prepareSurfaces()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/ActivityRecord;->setState(Lcom/android/server/wm/ActivityRecord$State;Ljava/lang/String;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/ActivityRecord;->shouldBeVisibleUnchecked()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/ActivityRecord;->showToCurrentUser()Z+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; -HSPLcom/android/server/wm/ActivityRecord;->toString()Ljava/lang/String;+]Landroid/content/ComponentName;Landroid/content/ComponentName;]Landroid/content/Intent;Landroid/content/Intent;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/wm/ActivityRecord;->updateDrawnWindowStates(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/internal/protolog/ProtoLogGroup;Lcom/android/internal/protolog/ProtoLogGroup;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/ActivityRecord;->updateReportedConfigurationAndSend()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController; -HSPLcom/android/server/wm/ActivityRecord;->updateReportedVisibilityLocked()V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState$UpdateReportedVisibilityResults;Lcom/android/server/wm/WindowState$UpdateReportedVisibilityResults;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/ActivityRecordInputSink;->getInputWindowHandleWrapper()Lcom/android/server/wm/InputWindowHandleWrapper;+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/ActivityRecord;->toString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent; +HSPLcom/android/server/wm/ActivityRecord;->updateDrawnWindowStates(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/ActivityRecord;->updateReportedVisibilityLocked()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/ActivityRecord;->windowsAreFocusable(Z)Z +HSPLcom/android/server/wm/ActivityRecordInputSink;->getInputWindowHandleWrapper()Lcom/android/server/wm/InputWindowHandleWrapper;+]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/ActivityStarter$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->attachApplication(Lcom/android/server/wm/WindowProcessController;)Z+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->getTopApp()Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->getTopProcessState()I -HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->handleAppDied(Lcom/android/server/wm/WindowProcessController;ZLjava/lang/Runnable;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isCallerRecents(I)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isSleeping()Z HPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isUidForeground(I)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; -HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onProcessAdded(Lcom/android/server/wm/WindowProcessController;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap; +HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onProcessAdded(Lcom/android/server/wm/WindowProcessController;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/wm/PackageConfigPersister;Lcom/android/server/wm/PackageConfigPersister; HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onProcessRemoved(Ljava/lang/String;I)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->preBindApplication(Lcom/android/server/wm/WindowProcessController;)V+]Lcom/android/server/wm/ActivityMetricsLogger;Lcom/android/server/wm/ActivityMetricsLogger;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor; -HSPLcom/android/server/wm/ActivityTaskManagerService;->deferWindowLayout()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; +HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onUidProcStateChanged(II)V +HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->preBindApplication(Lcom/android/server/wm/WindowProcessController;Landroid/content/pm/ApplicationInfo;)Lcom/android/server/wm/ActivityTaskManagerInternal$PreBindInfo;+]Lcom/android/server/wm/ActivityMetricsLogger;Lcom/android/server/wm/ActivityMetricsLogger;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HPLcom/android/server/wm/ActivityTaskManagerService;->getLastStopAppSwitchesTime()J +HPLcom/android/server/wm/ActivityTaskManagerService;->getTasks(IZZI)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; HSPLcom/android/server/wm/ActivityTaskManagerService;->hasActiveVisibleWindow(I)Z+]Lcom/android/server/wm/MirrorActiveUids;Lcom/android/server/wm/MirrorActiveUids;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker; -HPLcom/android/server/wm/ActivityTaskManagerService;->hasSystemAlertWindowPermission(IILjava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; HSPLcom/android/server/wm/ActivityTaskManagerService;->isCallerRecents(I)Z+]Lcom/android/server/wm/RecentTasks;Lcom/android/server/wm/RecentTasks; HSPLcom/android/server/wm/ActivityTaskManagerService;->isGetTasksAllowed(Ljava/lang/String;II)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; HSPLcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;->getVisibleOpaqueActivity(Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;->test(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord; +HSPLcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;->test(Lcom/android/server/wm/ActivityRecord;)Z HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->accept(Lcom/android/server/wm/ActivityRecord;)V+]Landroid/app/TaskInfo;Landroid/app/ActivityManager$RecentTaskInfo;,Landroid/app/ActivityManager$RunningTaskInfo;,Landroid/app/ActivityTaskManager$RootTaskInfo; HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->fillAndReturnTop(Lcom/android/server/wm/Task;Landroid/app/TaskInfo;)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/ActivityTaskSupervisor;->beginActivityVisibilityUpdate()V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController; HSPLcom/android/server/wm/ActivityTaskSupervisor;->endActivityVisibilityUpdate()V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor; +HSPLcom/android/server/wm/ActivityTaskSupervisor;->getKeyguardController()Lcom/android/server/wm/KeyguardController; +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda0;->getAsBoolean()Z +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda1;->getAsBoolean()Z +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->isSystemOverrideToFullscreenEnabled()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp; +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->isUserFullscreenOverrideEnabled()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp; +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldApplyUserFullscreenOverride()Z+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides; +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldEnableUserAspectRatioSettings()Z+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp; +HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldOverrideMinAspectRatio()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp; +HSPLcom/android/server/wm/AppCompatAspectRatioPolicy;->isLetterboxedForAspectRatioOnly()Z+]Lcom/android/server/wm/AppCompatAspectRatioPolicy$AppCompatAspectRatioState;Lcom/android/server/wm/AppCompatAspectRatioPolicy$AppCompatAspectRatioState; +HSPLcom/android/server/wm/AppCompatAspectRatioPolicy;->isLetterboxedForFixedOrientationAndAspectRatio()Z+]Lcom/android/server/wm/AppCompatAspectRatioPolicy$AppCompatAspectRatioState;Lcom/android/server/wm/AppCompatAspectRatioPolicy$AppCompatAspectRatioState; +HSPLcom/android/server/wm/AppCompatConfiguration;->getDefaultLetterboxBackgroundType()I +HSPLcom/android/server/wm/AppCompatConfiguration;->isUserAppAspectRatioFullscreenEnabled()Z +HSPLcom/android/server/wm/AppCompatConfiguration;->isUserAppAspectRatioSettingsEnabled()Z +HSPLcom/android/server/wm/AppCompatController;->getAppCompatAspectRatioPolicy()Lcom/android/server/wm/AppCompatAspectRatioPolicy; +HSPLcom/android/server/wm/AppCompatController;->getAppCompatLetterboxOverrides()Lcom/android/server/wm/AppCompatLetterboxOverrides;+]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides; +HSPLcom/android/server/wm/AppCompatController;->getAppCompatSizeCompatModePolicy()Lcom/android/server/wm/AppCompatSizeCompatModePolicy; +HSPLcom/android/server/wm/AppCompatController;->getTransparentPolicy()Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/AppCompatLetterboxPolicy$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z +HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->shouldNotLayoutLetterbox(Lcom/android/server/wm/WindowState;)Z +HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->shouldShowLetterboxUi(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->start(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatLetterboxPolicy$LetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LetterboxPolicyState;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/AppCompatRoundedCorners;Lcom/android/server/wm/AppCompatRoundedCorners; +HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->updateLetterboxSurfaceIfNeeded(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatLetterboxPolicy$LetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LetterboxPolicyState; +HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->updateWallpaperForLetterbox(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides; +HSPLcom/android/server/wm/AppCompatOrientationPolicy;->overrideOrientationIfNeeded(I)I+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatCameraOverrides;Lcom/android/server/wm/AppCompatCameraOverrides;]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; +HSPLcom/android/server/wm/AppCompatReachabilityOverrides;->isHorizontalReachabilityEnabled()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/AppCompatReachabilityOverrides;->isHorizontalReachabilityEnabled(Landroid/content/res/Configuration;)Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatReachabilityOverrides;Lcom/android/server/wm/AppCompatReachabilityOverrides;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/AppCompatReachabilityOverrides;->isVerticalReachabilityEnabled()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/AppCompatReachabilityOverrides;->isVerticalReachabilityEnabled(Landroid/content/res/Configuration;)Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatReachabilityOverrides;Lcom/android/server/wm/AppCompatReachabilityOverrides;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/AppCompatRoundedCorners;->requiresRoundedCorners(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides;]Ljava/util/function/Predicate;Lcom/android/server/wm/AppCompatLetterboxPolicy$$ExternalSyntheticLambda0; +HSPLcom/android/server/wm/AppCompatRoundedCorners;->updateRoundedCornersIfNeeded(Lcom/android/server/wm/WindowState;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/AppCompatRoundedCorners;Lcom/android/server/wm/AppCompatRoundedCorners;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/AppCompatSizeCompatModePolicy;->getAppCompatDisplayInsets()Lcom/android/server/wm/AppCompatDisplayInsets;+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/AppCompatSizeCompatModePolicy;->hasSizeCompatBounds()Z +HSPLcom/android/server/wm/AppCompatUtils;->clearAppCompatTaskInfo(Landroid/app/AppCompatTaskInfo;)V+]Landroid/app/AppCompatTaskInfo;Landroid/app/AppCompatTaskInfo; +HSPLcom/android/server/wm/AppCompatUtils;->fillAppCompatTaskInfo(Lcom/android/server/wm/Task;Landroid/app/TaskInfo;Lcom/android/server/wm/ActivityRecord;)V+]Landroid/app/AppCompatTaskInfo;Landroid/app/AppCompatTaskInfo;]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatCameraOverrides;Lcom/android/server/wm/AppCompatCameraOverrides;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides;]Lcom/android/server/wm/AppCompatReachabilityOverrides;Lcom/android/server/wm/AppCompatReachabilityOverrides;]Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy; +HSPLcom/android/server/wm/AppCompatUtils;->getAppBounds(Lcom/android/server/wm/ActivityRecord;)Landroid/graphics/Rect;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/AppCompatUtils;->isChangeEnabled(Lcom/android/server/wm/ActivityRecord;J)Z+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo; HSPLcom/android/server/wm/AppTransition;->isTransitionSet()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/BLASTSyncEngine$SyncGroup;->finishNow()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/BLASTSyncEngine$TransactionReadyListener;Lcom/android/server/wm/Transition;,Lcom/android/server/wm/WindowOrganizerController;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Runnable;Lcom/android/server/wm/TransitionController$$ExternalSyntheticLambda3;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24; +HSPLcom/android/server/wm/BLASTSyncEngine$SyncGroup;->finishNow()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/BLASTSyncEngine$TransactionReadyListener;Lcom/android/server/wm/Transition;,Lcom/android/server/wm/WindowOrganizerController;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Runnable;Lcom/android/server/wm/TransitionController$$ExternalSyntheticLambda3;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; HSPLcom/android/server/wm/BLASTSyncEngine;->onSurfacePlacement()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/BackNavigationController;->shouldPauseTouch(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/BackNavigationController$AnimationHandler;Lcom/android/server/wm/BackNavigationController$AnimationHandler;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; HSPLcom/android/server/wm/BackgroundLaunchProcessController;->addBoundClientUid(ILjava/lang/String;J)V+]Landroid/util/IntArray;Landroid/util/IntArray; -HPLcom/android/server/wm/BackgroundLaunchProcessController;->areBackgroundActivityStartsAllowed(IILjava/lang/String;IZZZJJJ)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;+]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController; +HPLcom/android/server/wm/BackgroundLaunchProcessController;->areBackgroundActivityStartsAllowed(IILjava/lang/String;ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;ZZJJJ)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict; HSPLcom/android/server/wm/BackgroundLaunchProcessController;->clearBalOptInBoundClientUids()V+]Landroid/util/IntArray;Landroid/util/IntArray; -HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBackgroundStartAllowedByToken(ILjava/lang/String;Z)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/BackgroundActivityStartCallback;Lcom/android/server/notification/NotificationManagerService$NotificationTrampolineCallback;]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;]Ljava/util/List;Ljava/util/ArrayList; -HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBoundByForegroundUid()Z+]Landroid/util/IntArray;Landroid/util/IntArray;]Ljava/util/function/IntPredicate;Lcom/android/server/wm/WindowProcessController$$ExternalSyntheticLambda4;,Lcom/android/server/wm/WindowProcessController$$ExternalSyntheticLambda8; -HSPLcom/android/server/wm/BackgroundLaunchProcessController;->removeAllowBackgroundStartPrivileges(Landroid/os/Binder;)V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap; -HSPLcom/android/server/wm/ClientLifecycleManager;->dispatchPendingTransactions()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager; +HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBackgroundStartAllowedByToken(ILjava/lang/String;Z)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/wm/BackgroundActivityStartCallback;Lcom/android/server/notification/NotificationManagerService$NotificationTrampolineCallback;]Ljava/util/List;Ljava/util/ArrayList; +HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBoundByForegroundUid()Z+]Landroid/util/IntArray;Landroid/util/IntArray;]Ljava/util/function/IntPredicate;Lcom/android/server/wm/WindowProcessController$$ExternalSyntheticLambda5; +HSPLcom/android/server/wm/BackgroundLaunchProcessController;->removeAllowBackgroundStartPrivileges(Landroid/os/Binder;)V +HSPLcom/android/server/wm/ClientLifecycleManager;->dispatchPendingTransactions()V+]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager; +HSPLcom/android/server/wm/ClientLifecycleManager;->getOrCreatePendingTransaction(Landroid/app/IApplicationThread;)Landroid/app/servertransaction/ClientTransaction;+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred; HSPLcom/android/server/wm/ClientLifecycleManager;->shouldDispatchPendingTransactionsImmediately()Z+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; HSPLcom/android/server/wm/CompatModePackages;->compatibilityInfoForPackageLocked(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/CompatibilityInfo;+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; HSPLcom/android/server/wm/CompatModePackages;->getCompatScaleFromProvider(Ljava/lang/String;I)Landroid/content/res/CompatibilityInfo$CompatScale;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/CompatScaleProvider;Lcom/android/server/app/GameManagerService$LocalService; HSPLcom/android/server/wm/ConfigurationContainer;-><init>()V +HSPLcom/android/server/wm/ConfigurationContainer;->applyAppSpecificConfig(Ljava/lang/Integer;Landroid/os/LocaleList;Ljava/lang/Integer;)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/ConfigurationContainer;->applySizeOverrideIfNeeded(Lcom/android/server/wm/DisplayContent;Landroid/content/pm/ApplicationInfo;Landroid/content/res/Configuration;Landroid/content/res/Configuration;ZZZLcom/android/server/wm/Task;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/ConfigurationContainer;->getActivityType()I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; -HSPLcom/android/server/wm/ConfigurationContainer;->getBounds()Landroid/graphics/Rect;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types +HSPLcom/android/server/wm/ConfigurationContainer;->getBounds()Landroid/graphics/Rect;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types +HSPLcom/android/server/wm/ConfigurationContainer;->getConfiguration()Landroid/content/res/Configuration; HSPLcom/android/server/wm/ConfigurationContainer;->getWindowConfiguration()Landroid/app/WindowConfiguration; HSPLcom/android/server/wm/ConfigurationContainer;->getWindowingMode()I+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; HSPLcom/android/server/wm/ConfigurationContainer;->hasChild()Z+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types @@ -3464,70 +3660,78 @@ HSPLcom/android/server/wm/ConfigurationContainer;->inMultiWindowMode()Z+]Landroi HSPLcom/android/server/wm/ConfigurationContainer;->inPinnedWindowingMode()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; HSPLcom/android/server/wm/ConfigurationContainer;->isAlwaysOnTop()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration; HSPLcom/android/server/wm/ConfigurationContainer;->isCompatible(II)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/ConfigurationContainer;->onConfigurationChanged(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/ConfigurationContainerListener;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/ConfigurationContainer;->onMergedOverrideConfigurationChanged()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types +HSPLcom/android/server/wm/ConfigurationContainer;->onConfigurationChanged(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/ConfigurationContainerListener;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/ConfigurationContainer;->onMergedOverrideConfigurationChanged()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types HSPLcom/android/server/wm/ConfigurationContainer;->updateRequestedOverrideConfiguration(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types -HSPLcom/android/server/wm/DisplayArea$Dimmable;->prepareSurfaces()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayArea$Dimmable;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/SmoothDimmer;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayArea$Dimmable;,Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayArea$Dimmable; -HSPLcom/android/server/wm/DisplayArea$Tokens;->getOrientation(I)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayArea$Tokens; +HSPLcom/android/server/wm/DeferredDisplayUpdater;->calculateDisplayInfoDiff(Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;)I +HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->getMinAspectRatio(Lcom/android/server/wm/Task;)F+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy; +HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->hasMinAspectRatioOverride(Lcom/android/server/wm/Task;)Z+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo; +HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->shouldEnableUserAspectRatioSettings(Lcom/android/server/wm/Task;)Z+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/DisplayArea$Dimmable;->prepareSurfaces()V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayArea$Dimmable;,Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayArea$Dimmable;,Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayArea$Dimmable;,Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/DisplayArea$Tokens;->lambda$new$0(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayArea;->getItemFromTaskDisplayAreas(Ljava/util/function/Function;Z)Ljava/lang/Object;+]Lcom/android/server/wm/DisplayArea;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/DisplayArea;->asDisplayArea()Lcom/android/server/wm/DisplayArea; +HSPLcom/android/server/wm/DisplayArea;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V +HSPLcom/android/server/wm/DisplayArea;->getIgnoreOrientationRequest()Z+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; +HSPLcom/android/server/wm/DisplayArea;->getItemFromTaskDisplayAreas(Ljava/util/function/Function;Z)Ljava/lang/Object;+]Lcom/android/server/wm/DisplayArea;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/DisplayArea;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction; HSPLcom/android/server/wm/DisplayArea;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/DisplayArea;->getSyncTransaction()Landroid/view/SurfaceControl$Transaction; +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda12;-><init>(Lcom/android/server/wm/DisplayContent;Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Region;[ILandroid/graphics/Region;Landroid/graphics/Region;)V +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda12;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda2;->apply(Ljava/lang/Object;)Z +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda34;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda35;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda41;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda44;->accept(Ljava/lang/Object;)V HSPLcom/android/server/wm/DisplayContent$ApplySurfaceChangesTransactionState;->reset()V HSPLcom/android/server/wm/DisplayContent$ImeContainer;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z HSPLcom/android/server/wm/DisplayContent$ImeContainer;->skipImeWindowsDuringTraversal(Lcom/android/server/wm/DisplayContent;)Z HPLcom/android/server/wm/DisplayContent;->addToGlobalAndConsumeLimit(Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Rect;ILcom/android/server/wm/WindowState;I)I+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/DisplayContent$ApplySurfaceChangesTransactionState;Lcom/android/server/wm/DisplayContent$ApplySurfaceChangesTransactionState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/ImeInsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperVisibilityListeners;Lcom/android/server/wm/WallpaperVisibilityListeners;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Ljava/util/LinkedList;Ljava/util/LinkedList; -HSPLcom/android/server/wm/DisplayContent;->assignRelativeLayerForIme(Landroid/view/SurfaceControl$Transaction;Z)V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/DisplayContent$ImeContainer;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->calculateSystemGestureExclusion(Landroid/graphics/Region;Landroid/graphics/Region;)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; -HSPLcom/android/server/wm/DisplayContent;->ensureActivitiesVisible(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent; -HSPLcom/android/server/wm/DisplayContent;->finishHoldScreenUpdate()V+]Landroid/os/PowerManager$WakeLock;Landroid/os/PowerManager$WakeLock; +HSPLcom/android/server/wm/DisplayContent;->adjustDisplaySizeRanges(Landroid/view/DisplayInfo;IIIZ)V+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy; +HSPLcom/android/server/wm/DisplayContent;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperVisibilityListeners;Lcom/android/server/wm/WallpaperVisibilityListeners;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Ljava/util/LinkedList;Ljava/util/LinkedList; +HSPLcom/android/server/wm/DisplayContent;->assignRelativeLayerForIme(Landroid/view/SurfaceControl$Transaction;Z)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/DisplayContent$ImeContainer;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->calculateSystemGestureExclusion(Landroid/graphics/Region;Landroid/graphics/Region;)Z+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; +HSPLcom/android/server/wm/DisplayContent;->computeSizeRanges(Landroid/view/DisplayInfo;ZIIFLandroid/content/res/Configuration;Z)V +HSPLcom/android/server/wm/DisplayContent;->finishHoldScreenUpdate()V HSPLcom/android/server/wm/DisplayContent;->getAsyncRotationController()Lcom/android/server/wm/AsyncRotationController; HSPLcom/android/server/wm/DisplayContent;->getDefaultTaskDisplayArea()Lcom/android/server/wm/TaskDisplayArea;+]Lcom/android/server/wm/DisplayAreaPolicy;Lcom/android/server/wm/DisplayAreaPolicyBuilder$Result; HSPLcom/android/server/wm/DisplayContent;->getDisplayId()I HSPLcom/android/server/wm/DisplayContent;->getDisplayInfo()Landroid/view/DisplayInfo; HSPLcom/android/server/wm/DisplayContent;->getDisplayPolicy()Lcom/android/server/wm/DisplayPolicy; -HSPLcom/android/server/wm/DisplayContent;->getFocusedRootTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/DisplayContent;->getImeTarget(I)Lcom/android/server/wm/InsetsControlTarget; HSPLcom/android/server/wm/DisplayContent;->getInsetsPolicy()Lcom/android/server/wm/InsetsPolicy; HSPLcom/android/server/wm/DisplayContent;->getKeepClearAreas(Ljava/util/Set;Ljava/util/Set;)V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; -HSPLcom/android/server/wm/DisplayContent;->getOrientation()I+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayRotationCompatPolicy;Lcom/android/server/wm/DisplayRotationCompatPolicy;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController; -HSPLcom/android/server/wm/DisplayContent;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/DisplayContent;->getOrientation()I+]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/DisplayContent;->hasOwnFocus()Z -HSPLcom/android/server/wm/DisplayContent;->inTransition()Z HSPLcom/android/server/wm/DisplayContent;->isKeyguardGoingAway()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController; -HSPLcom/android/server/wm/DisplayContent;->isLayoutNeeded()Z -HSPLcom/android/server/wm/DisplayContent;->lambda$new$1(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->lambda$new$3(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->lambda$new$4(Lcom/android/server/wm/WindowState;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/DisplayContent;->lambda$calculateSystemGestureExclusion$34(Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Region;[ILandroid/graphics/Region;Landroid/graphics/Region;Lcom/android/server/wm/WindowState;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->lambda$getKeepClearAreas$37(Ljava/util/Set;Ljava/util/Set;Landroid/graphics/Matrix;[FLcom/android/server/wm/WindowState;)Z+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->lambda$new$1(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->lambda$new$3(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->lambda$new$4(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/DisplayContent;->lambda$new$7(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->lambda$new$8(Lcom/android/server/wm/WindowState;)V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/LinkedList;Ljava/util/LinkedList; +HSPLcom/android/server/wm/DisplayContent;->lambda$new$8(Lcom/android/server/wm/WindowState;)V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/LinkedList;Ljava/util/LinkedList; HSPLcom/android/server/wm/DisplayContent;->makeChildSurface(Lcom/android/server/wm/WindowContainer;)Landroid/view/SurfaceControl$Builder;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; HSPLcom/android/server/wm/DisplayContent;->needsGestureExclusionRestrictions(Lcom/android/server/wm/WindowState;Z)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->performLayout(ZZ)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; -HSPLcom/android/server/wm/DisplayContent;->performLayoutNoTrace(ZZ)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/DisplayContent;->performLayout(ZZ)V +HSPLcom/android/server/wm/DisplayContent;->performLayoutNoTrace(ZZ)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/DisplayContent;->prepareSurfaces()V -HSPLcom/android/server/wm/DisplayContent;->setDisplayMirroring()Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; -HSPLcom/android/server/wm/DisplayContent;->shouldImeAttachedToApp()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayContent;->updateBaseDisplayMetricsIfNeeded(Landroid/view/DisplayInfo;)V+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/DisplayUpdater;Lcom/android/server/wm/DeferredDisplayUpdater;]Lcom/android/server/wm/DisplayWindowSettings;Lcom/android/server/wm/DisplayWindowSettings; -HSPLcom/android/server/wm/DisplayContent;->updateFocusedWindowLocked(IZI)Z+]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/DisplayContent;->updateKeepClearAreas()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayWindowListenerController;Lcom/android/server/wm/DisplayWindowListenerController;]Ljava/lang/Object;Landroid/util/ArraySet;]Ljava/util/Set;Landroid/util/ArraySet; -HSPLcom/android/server/wm/DisplayContent;->updateOrientation(Z)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/DisplayRotationReversionController;Lcom/android/server/wm/DisplayRotationReversionController;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/DisplayContent;->updateRecording()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/DisplayContent;->setDisplayMirroring()Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService; +HSPLcom/android/server/wm/DisplayContent;->shouldImeAttachedToApp()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent$ImeContainer;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayContent;->updateKeepClearAreas()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayWindowListenerController;Lcom/android/server/wm/DisplayWindowListenerController;]Ljava/util/Set;Landroid/util/ArraySet; +HSPLcom/android/server/wm/DisplayContent;->updateOrientation(Z)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayContent;->updateSystemGestureExclusion()Z+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/view/ISystemGestureExclusionListener;Landroid/view/ISystemGestureExclusionListener$Stub$Proxy;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; -HSPLcom/android/server/wm/DisplayContent;->updateWindowsForAnimator()V+]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent; HPLcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; HSPLcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda13;->test(Ljava/lang/Object;)Z -HSPLcom/android/server/wm/DisplayPolicy;->applyKeyguardPolicy(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/ImeInsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/DisplayPolicy;->applyPostLayoutPolicyLw(Lcom/android/server/wm/WindowState;Landroid/view/WindowManager$LayoutParams;Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/DisplayPolicy;->beginPostLayoutPolicyLw()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HPLcom/android/server/wm/DisplayPolicy;->calculateInsetsFrame(Landroid/graphics/Rect;Landroid/graphics/Insets;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLcom/android/server/wm/DisplayPolicy;->adjustWindowParamsLw(Lcom/android/server/wm/WindowState;Landroid/view/WindowManager$LayoutParams;)V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayPolicy;->applyKeyguardPolicy(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/DisplayPolicy;->applyPostLayoutPolicyLw(Lcom/android/server/wm/WindowState;Landroid/view/WindowManager$LayoutParams;Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/DisplayPolicy;->beginPostLayoutPolicyLw()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/wm/DisplayPolicy;->calculateInsetsFrame(Landroid/graphics/Rect;Landroid/graphics/Insets;)V HSPLcom/android/server/wm/DisplayPolicy;->configureNavBarOpacity(IZZ)I+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy; HSPLcom/android/server/wm/DisplayPolicy;->configureStatusBarOpacity(I)I+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/DisplayPolicy;->drawsBarBackground(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayPolicy;->finishPostLayoutPolicyLw()V+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy; -HPLcom/android/server/wm/DisplayPolicy;->getBarContentFrameForWindow(Lcom/android/server/wm/WindowState;I)Landroid/graphics/Rect;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/DisplayCutout;Landroid/view/DisplayCutout;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HPLcom/android/server/wm/DisplayPolicy;->getBarContentFrameForWindow(Lcom/android/server/wm/WindowState;I)Landroid/graphics/Rect;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayPolicy;->getInsetsPolicy()Lcom/android/server/wm/InsetsPolicy;+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/DisplayPolicy;->getNotificationShade()Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayPolicy;->getRefreshRatePolicy()Lcom/android/server/wm/RefreshRatePolicy; @@ -3536,46 +3740,45 @@ HSPLcom/android/server/wm/DisplayPolicy;->intersectsAnyInsets(Landroid/graphics/ HSPLcom/android/server/wm/DisplayPolicy;->isImmersiveMode(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy; HSPLcom/android/server/wm/DisplayPolicy;->isKeyguardShowing()Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; HSPLcom/android/server/wm/DisplayPolicy;->isOverlappingWithNavBar(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HPLcom/android/server/wm/DisplayPolicy;->lambda$getFrameProvider$1(Lcom/android/server/wm/WindowState;IILcom/android/server/wm/DisplayFrames;Lcom/android/server/wm/WindowContainer;Landroid/graphics/Rect;)Ljava/lang/Integer;+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsFrameProvider$InsetsSizeOverride;Landroid/view/InsetsFrameProvider$InsetsSizeOverride;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; +HPLcom/android/server/wm/DisplayPolicy;->lambda$getFrameProvider$1(Lcom/android/server/wm/WindowState;IILcom/android/server/wm/DisplayFrames;Lcom/android/server/wm/WindowContainer;Landroid/graphics/Rect;)Ljava/lang/Integer;+]Landroid/view/InsetsFrameProvider$InsetsSizeOverride;Landroid/view/InsetsFrameProvider$InsetsSizeOverride;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams; HSPLcom/android/server/wm/DisplayPolicy;->lambda$updateSystemBarsLw$8(Lcom/android/server/wm/Task;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/DisplayPolicy;->layoutWindowLw(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;Lcom/android/server/wm/DisplayFrames;)V+]Landroid/view/WindowLayout;Landroid/view/WindowLayout;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HPLcom/android/server/wm/DisplayPolicy;->navigationBarPosition(I)I HSPLcom/android/server/wm/DisplayPolicy;->shouldBeHiddenByKeyguard(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayPolicy;->topAppHidesSystemBar(I)Z+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/DisplayPolicy;->updateLightNavigationBarLw(ILcom/android/server/wm/WindowState;)I -HSPLcom/android/server/wm/DisplayPolicy;->updateSystemBarAttributes()V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/input/InputManagerService;Lcom/android/server/input/InputManagerService;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/DisplayPolicy;->updateSystemBarsLw(Lcom/android/server/wm/WindowState;I)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/statusbar/StatusBarManagerInternal;Lcom/android/server/statusbar/StatusBarManagerService$1;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/ImmersiveModeConfirmation;Lcom/android/server/wm/ImmersiveModeConfirmation;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/EnsureActivitiesVisibleHelper;->process(Lcom/android/server/wm/ActivityRecord;Z)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/EnsureActivitiesVisibleHelper;Lcom/android/server/wm/EnsureActivitiesVisibleHelper;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;,Ljava/util/ArrayList; +HSPLcom/android/server/wm/DisplayPolicy;->updateSystemBarAttributes()V+]Lcom/android/server/input/InputManagerService;Lcom/android/server/input/InputManagerService;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/DisplayPolicy;->updateSystemBarsLw(Lcom/android/server/wm/WindowState;I)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/statusbar/StatusBarManagerInternal;Lcom/android/server/statusbar/StatusBarManagerService$1;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/ImmersiveModeConfirmation;Lcom/android/server/wm/ImmersiveModeConfirmation;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/EnsureActivitiesVisibleHelper;->process(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/EnsureActivitiesVisibleHelper;Lcom/android/server/wm/EnsureActivitiesVisibleHelper;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/EnsureActivitiesVisibleHelper;->reset(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/EnsureActivitiesVisibleHelper;->setActivityVisibilityState(Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/EnsureActivitiesVisibleHelper;Lcom/android/server/wm/EnsureActivitiesVisibleHelper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/HighRefreshRateDenylist;->isDenylisted(Ljava/lang/String;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet; +HSPLcom/android/server/wm/EnsureActivitiesVisibleHelper;->setActivityVisibilityState(Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/HighRefreshRateDenylist;->isDenylisted(Ljava/lang/String;)Z +HPLcom/android/server/wm/ImeInsetsSourceProvider;->onSourceChanged()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource; +HPLcom/android/server/wm/ImeInsetsSourceProvider;->setServerVisible(Z)V +HSPLcom/android/server/wm/InputConfigAdapter;->applyMapping(I[Lcom/android/server/wm/InputConfigAdapter$FlagMapping;)I HSPLcom/android/server/wm/InputConfigAdapter;->getInputConfigFromWindowParams(III)I -HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->accept(Lcom/android/server/wm/WindowState;)V+]Landroid/view/InputWindowHandle;Landroid/view/InputWindowHandle;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DragDropController;Lcom/android/server/wm/DragDropController;]Lcom/android/server/wm/InputConsumerImpl;Lcom/android/server/wm/InputConsumerImpl;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/Map;Ljava/util/Collections$SynchronizedMap; -HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->accept(Ljava/lang/Object;)V+]Lcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;Lcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer; -HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->updateInputWindows(Z)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputConsumerImpl;Lcom/android/server/wm/InputConsumerImpl;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->accept(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InputConsumerImpl;Lcom/android/server/wm/InputConsumerImpl;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/Map;Ljava/util/Collections$SynchronizedMap; +HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->accept(Ljava/lang/Object;)V +HSPLcom/android/server/wm/InputMonitor$UpdateInputForAllWindowsConsumer;->updateInputWindows(Z)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputConsumerImpl;Lcom/android/server/wm/InputConsumerImpl;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task; HSPLcom/android/server/wm/InputMonitor$UpdateInputWindows;->run()V+]Lcom/android/server/wm/DragDropController;Lcom/android/server/wm/DragDropController; -HSPLcom/android/server/wm/InputMonitor;->getInputConsumer(Ljava/lang/String;)Lcom/android/server/wm/InputConsumerImpl;+]Ljava/lang/Object;Ljava/lang/String;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/InputMonitor;->populateInputWindowHandle(Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/WindowState;)V+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/InputMonitor;->getInputConsumer(Ljava/lang/String;)Lcom/android/server/wm/InputConsumerImpl;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/InputMonitor;->populateInputWindowHandle(Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/WindowState;)V+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/InputMonitor;->resetInputConsumers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/InputConsumerImpl;Lcom/android/server/wm/InputConsumerImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/InputMonitor;->scheduleUpdateInputWindows()V+]Landroid/os/Handler;Landroid/os/Handler; -HSPLcom/android/server/wm/InputMonitor;->updateInputFocusRequest(Lcom/android/server/wm/InputConsumerImpl;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/inputmethod/InputMethodManagerInternal;Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor;]Lcom/android/server/wm/InputTarget;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord; +HSPLcom/android/server/wm/InputMonitor;->scheduleUpdateInputWindows()V +HSPLcom/android/server/wm/InputMonitor;->updateInputFocusRequest(Lcom/android/server/wm/InputConsumerImpl;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/inputmethod/InputMethodManagerInternal;Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputTarget;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; HSPLcom/android/server/wm/InputWindowHandleWrapper;->hasWallpaper()Z HSPLcom/android/server/wm/InputWindowHandleWrapper;->isFocusable()Z HSPLcom/android/server/wm/InputWindowHandleWrapper;->isPaused()Z HSPLcom/android/server/wm/InputWindowHandleWrapper;->setDispatchingTimeoutMillis(J)V -HSPLcom/android/server/wm/InputWindowHandleWrapper;->setInputApplicationHandle(Landroid/view/InputApplicationHandle;)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setInputConfigMasked(II)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setLayoutParamsFlags(I)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setName(Ljava/lang/String;)V -HSPLcom/android/server/wm/InputWindowHandleWrapper;->setPaused(Z)V+]Landroid/view/InputWindowHandle;Landroid/view/InputWindowHandle;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper; -HSPLcom/android/server/wm/InputWindowHandleWrapper;->setReplaceTouchableRegionWithCrop(Z)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setScaleFactor(F)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setToken(Landroid/os/IBinder;)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setTouchOcclusionMode(I)V HSPLcom/android/server/wm/InputWindowHandleWrapper;->setTouchableRegion(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region; -HSPLcom/android/server/wm/InputWindowHandleWrapper;->setTouchableRegionCrop(Landroid/view/SurfaceControl;)V+]Landroid/view/InputWindowHandle;Landroid/view/InputWindowHandle;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; -HSPLcom/android/server/wm/InputWindowHandleWrapper;->setWindowToken(Landroid/os/IBinder;)V+]Landroid/view/InputWindowHandle;Landroid/view/InputWindowHandle; -HSPLcom/android/server/wm/InsetsPolicy;->adjustInsetsForRoundedCorners(Lcom/android/server/wm/WindowToken;Landroid/view/InsetsState;Z)Landroid/view/InsetsState;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; +HSPLcom/android/server/wm/InputWindowHandleWrapper;->setTouchableRegionCrop(Landroid/view/SurfaceControl;)V+]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference; +HSPLcom/android/server/wm/InputWindowHandleWrapper;->setWindowToken(Landroid/os/IBinder;)V +HSPLcom/android/server/wm/InsetsPolicy;->adjustInsetsForRoundedCorners(Lcom/android/server/wm/WindowToken;Landroid/view/InsetsState;Z)Landroid/view/InsetsState;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord; HSPLcom/android/server/wm/InsetsPolicy;->adjustInsetsForWindow(Lcom/android/server/wm/WindowState;Landroid/view/InsetsState;Z)Landroid/view/InsetsState; HSPLcom/android/server/wm/InsetsPolicy;->adjustVisibilityForFakeControllingSources(Landroid/view/InsetsState;)Landroid/view/InsetsState;+]Landroid/view/InsetsState;Landroid/view/InsetsState; HSPLcom/android/server/wm/InsetsPolicy;->adjustVisibilityForIme(Lcom/android/server/wm/WindowState;Landroid/view/InsetsState;Z)Landroid/view/InsetsState;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; @@ -3583,155 +3786,132 @@ HSPLcom/android/server/wm/InsetsPolicy;->canBeTopFullscreenOpaqueWindow(Lcom/and HSPLcom/android/server/wm/InsetsPolicy;->enforceInsetsPolicyForTarget(Landroid/view/WindowManager$LayoutParams;IZLandroid/view/InsetsState;)Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; HSPLcom/android/server/wm/InsetsPolicy;->getNavControlTarget(Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/InsetsControlTarget;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/InsetsPolicy;->getStatusControlTarget(Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/InsetsControlTarget;+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/InsetsPolicy;->hasHiddenSources(I)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; -HSPLcom/android/server/wm/InsetsPolicy;->remoteInsetsControllerControlsSystemBars(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy; -HSPLcom/android/server/wm/InsetsPolicy;->updateBarControlTarget(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; +HSPLcom/android/server/wm/InsetsPolicy;->hasHiddenSources(I)Z+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; +HSPLcom/android/server/wm/InsetsPolicy;->updateBarControlTarget(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; HSPLcom/android/server/wm/InsetsPolicy;->updateSystemBars(Lcom/android/server/wm/WindowState;ZZ)V+]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; HPLcom/android/server/wm/InsetsSourceProvider;->getInsetsHint()Landroid/graphics/Insets;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/InsetsSourceProvider;->getSource()Landroid/view/InsetsSource; HPLcom/android/server/wm/InsetsSourceProvider;->getWindowFrameSurfacePosition()Landroid/graphics/Point;+]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HPLcom/android/server/wm/InsetsSourceProvider;->isClientVisible()Z -HSPLcom/android/server/wm/InsetsSourceProvider;->onPostLayout()V+]Landroid/graphics/Insets;Landroid/graphics/Insets;]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/function/Consumer;Lcom/android/server/wm/InsetsSourceProvider$$ExternalSyntheticLambda0; +HSPLcom/android/server/wm/InsetsSourceProvider;->onPostLayout()V+]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/InsetsSourceProvider;->overridesFrame(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray; HPLcom/android/server/wm/InsetsSourceProvider;->setServerVisible(Z)V+]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider; -HPLcom/android/server/wm/InsetsSourceProvider;->updateControlForTarget(Lcom/android/server/wm/InsetsControlTarget;Z)V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/InsetsStateController$1;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrame(Landroid/graphics/Rect;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/internal/util/function/TriFunction;Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda0;,Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda11;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Ljava/lang/Integer;Ljava/lang/Integer; -HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrameForServerVisibility()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState; +HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrame(Landroid/graphics/Rect;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/internal/util/function/TriFunction;Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda0;,Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda11;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrameForServerVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState; HPLcom/android/server/wm/InsetsSourceProvider;->updateVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource; HSPLcom/android/server/wm/InsetsStateController;->getImeSourceProvider()Lcom/android/server/wm/ImeInsetsSourceProvider;+]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; HSPLcom/android/server/wm/InsetsStateController;->getOrCreateSourceProvider(II)Lcom/android/server/wm/InsetsSourceProvider;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider; -HPLcom/android/server/wm/InsetsStateController;->lambda$notifyPendingInsetsControlChanged$3()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/InsetsPolicy$ControlTarget;,Lcom/android/server/wm/InsetsStateController$1;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; -HSPLcom/android/server/wm/InsetsStateController;->notifyPendingInsetsControlChanged()V+]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator; -HSPLcom/android/server/wm/InsetsStateController;->onBarControlTargetChanged(Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; -HPLcom/android/server/wm/InsetsStateController;->onControlTargetChanged(Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/InsetsControlTarget;Z)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; +HSPLcom/android/server/wm/InsetsStateController;->getRawInsetsState()Landroid/view/InsetsState; +HSPLcom/android/server/wm/InsetsStateController;->notifyPendingInsetsControlChanged()V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator; +HSPLcom/android/server/wm/InsetsStateController;->onBarControlTargetChanged(Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/InsetsControlTarget;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider; +HPLcom/android/server/wm/InsetsStateController;->onControlTargetChanged(Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/InsetsControlTarget;Z)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider; HSPLcom/android/server/wm/InsetsStateController;->onPostLayout()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; -HSPLcom/android/server/wm/KeyguardController$KeyguardDisplayState;->updateVisibility(Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/DisplayContent;)V+]Landroid/os/PowerManager;Landroid/os/PowerManager;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; +HSPLcom/android/server/wm/KeyguardController$KeyguardDisplayState;->updateVisibility(Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; HSPLcom/android/server/wm/KeyguardController;->getDisplayState(I)Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;+]Landroid/util/SparseArray;Landroid/util/SparseArray; -HSPLcom/android/server/wm/KeyguardController;->updateVisibility()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer; -HSPLcom/android/server/wm/LetterboxConfiguration;->getDefaultLetterboxBackgroundType()I+]Lcom/android/server/wm/SynchedDeviceConfig;Lcom/android/server/wm/SynchedDeviceConfig; -HSPLcom/android/server/wm/LetterboxConfiguration;->isUserAppAspectRatioSettingsEnabled()Z+]Lcom/android/server/wm/SynchedDeviceConfig;Lcom/android/server/wm/SynchedDeviceConfig; -HSPLcom/android/server/wm/LetterboxUiController;->findOpaqueNotFinishingActivityBelow()Ljava/util/Optional; -HSPLcom/android/server/wm/LetterboxUiController;->isHorizontalReachabilityEnabled(Landroid/content/res/Configuration;)Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/LetterboxConfiguration;Lcom/android/server/wm/LetterboxConfiguration;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController; -HSPLcom/android/server/wm/LetterboxUiController;->isUserFullscreenOverrideEnabled()Z+]Lcom/android/server/wm/LetterboxConfiguration;Lcom/android/server/wm/LetterboxConfiguration;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;]Ljava/lang/Object;Ljava/lang/Boolean; -HSPLcom/android/server/wm/LetterboxUiController;->isVerticalReachabilityEnabled(Landroid/content/res/Configuration;)Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/LetterboxConfiguration;Lcom/android/server/wm/LetterboxConfiguration;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController; -HSPLcom/android/server/wm/LetterboxUiController;->layoutLetterboxIfNeeded(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/Letterbox;Lcom/android/server/wm/Letterbox;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/LetterboxUiController;->overrideOrientationIfNeeded(I)I+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;]Ljava/lang/Object;Ljava/lang/Boolean;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/wm/LetterboxUiController;->shouldEnableUserAspectRatioSettings()Z+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/LetterboxConfiguration;Lcom/android/server/wm/LetterboxConfiguration;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;]Ljava/lang/Object;Ljava/lang/Boolean; -HSPLcom/android/server/wm/LetterboxUiController;->shouldNotLayoutLetterbox(Lcom/android/server/wm/WindowState;)Z -HSPLcom/android/server/wm/LetterboxUiController;->shouldShowLetterboxUi(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/LetterboxUiController;->updateRoundedCornersIfNeeded(Lcom/android/server/wm/WindowState;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/view/SurfaceControl;Landroid/view/SurfaceControl;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/LetterboxUiController;->updateWallpaperForLetterbox(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/LetterboxConfiguration;Lcom/android/server/wm/LetterboxConfiguration; +HSPLcom/android/server/wm/KeyguardController;->updateVisibility()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer; HSPLcom/android/server/wm/MirrorActiveUids;->hasNonAppVisibleWindow(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; HSPLcom/android/server/wm/MirrorActiveUids;->onUidProcStateChanged(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray; -HPLcom/android/server/wm/PointerEventDispatcher;->onInputEvent(Landroid/view/InputEvent;)V+]Landroid/view/InputEvent;Landroid/view/MotionEvent;]Landroid/view/InputEventReceiver;Lcom/android/server/wm/PointerEventDispatcher;]Landroid/view/WindowManagerPolicyConstants$PointerEventListener;Lcom/android/internal/widget/PointerLocationView;,Lcom/android/server/wm/RecentTasks$1;,Lcom/android/server/wm/SystemGesturesPointerEventListener; +HPLcom/android/server/wm/PointerEventDispatcher;->onInputEvent(Landroid/view/InputEvent;)V+]Landroid/view/WindowManagerPolicyConstants$PointerEventListener;Lcom/android/internal/widget/PointerLocationView;,Lcom/android/server/wm/RecentTasks$1;,Lcom/android/server/wm/SystemGesturesPointerEventListener; HSPLcom/android/server/wm/RecentTasks;->isCallerRecents(I)Z -HSPLcom/android/server/wm/RefreshRatePolicy$FrameRateVote;->update(FII)Z+]Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote; +HSPLcom/android/server/wm/RefreshRatePolicy$FrameRateVote;->update(FII)Z HSPLcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;->get(Ljava/lang/String;)Landroid/view/SurfaceControl$RefreshRateRange;+]Ljava/util/HashMap;Ljava/util/HashMap; -HSPLcom/android/server/wm/RefreshRatePolicy;->calculatePriority(Lcom/android/server/wm/WindowState;)I+]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredMaxRefreshRate(Lcom/android/server/wm/WindowState;)F+]Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredMinRefreshRate(Lcom/android/server/wm/WindowState;)F+]Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredModeId(Lcom/android/server/wm/WindowState;)I+]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/RefreshRatePolicy;->updateFrameRateVote(Lcom/android/server/wm/WindowState;)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/view/Display$Mode;Landroid/view/Display$Mode;]Lcom/android/server/wm/HighRefreshRateDenylist;Lcom/android/server/wm/HighRefreshRateDenylist;]Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/RootWindowContainer$MyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Ljava/lang/Long;Ljava/lang/Long; -HSPLcom/android/server/wm/RootWindowContainer;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/StrictModeFlash;Lcom/android/server/wm/StrictModeFlash;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/RootWindowContainer;->checkAppTransitionReady(Lcom/android/server/wm/WindowSurfacePlacer;)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredModeId(Lcom/android/server/wm/WindowState;)I +HSPLcom/android/server/wm/RefreshRatePolicy;->updateFrameRateVote(Lcom/android/server/wm/WindowState;)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/HighRefreshRateDenylist;Lcom/android/server/wm/HighRefreshRateDenylist;]Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/RootWindowContainer$MyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; +HSPLcom/android/server/wm/RootWindowContainer;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/StrictModeFlash;Lcom/android/server/wm/StrictModeFlash;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->checkAppTransitionReady(Lcom/android/server/wm/WindowSurfacePlacer;)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/AppTransitionController;Lcom/android/server/wm/AppTransitionController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/RootWindowContainer;->clearFrameChangingWindows()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/RootWindowContainer;->copyAnimToLayoutParams()Z -HSPLcom/android/server/wm/RootWindowContainer;->ensureActivitiesVisible(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer; -HSPLcom/android/server/wm/RootWindowContainer;->forAllDisplays(Ljava/util/function/Consumer;)V+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;]Ljava/util/function/Consumer;megamorphic_types +HSPLcom/android/server/wm/RootWindowContainer;->forAllDisplays(Ljava/util/function/Consumer;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types HSPLcom/android/server/wm/RootWindowContainer;->getDisplayContent(I)Lcom/android/server/wm/DisplayContent;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer; -HPLcom/android/server/wm/RootWindowContainer;->getRootTaskInfo(Lcom/android/server/wm/Task;)Landroid/app/ActivityTaskManager$RootTaskInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/RootWindowContainer;->handleNotObscuredLocked(Lcom/android/server/wm/WindowState;ZZ)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/RootWindowContainer;->handleResizingWindows()V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/RootWindowContainer;->hasPendingLayoutChanges(Lcom/android/server/wm/WindowAnimator;)Z+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/RootWindowContainer;->isLayoutNeeded()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/RootWindowContainer;->lambda$performSurfacePlacementNoTrace$7(Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor; +HPLcom/android/server/wm/RootWindowContainer;->getRootTaskInfo(Lcom/android/server/wm/Task;)Landroid/app/ActivityTaskManager$RootTaskInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/RootWindowContainer;->handleNotObscuredLocked(Lcom/android/server/wm/WindowState;ZZ)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/RootWindowContainer;->handleResizingWindows()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->hasPendingLayoutChanges(Lcom/android/server/wm/WindowAnimator;)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->isLayoutNeeded()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->lambda$performSurfacePlacementNoTrace$7(Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/RootWindowContainer;->performSurfacePlacement()V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; -HSPLcom/android/server/wm/RootWindowContainer;->performSurfacePlacementNoTrace()V+]Landroid/os/Handler;Lcom/android/server/wm/RootWindowContainer$MyHandler;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BLASTSyncEngine;Lcom/android/server/wm/BLASTSyncEngine;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/TaskFragmentOrganizerController;Lcom/android/server/wm/TaskFragmentOrganizerController;]Lcom/android/server/wm/TaskOrganizerController;Lcom/android/server/wm/TaskOrganizerController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;,Ljava/util/ArrayList; -HSPLcom/android/server/wm/RootWindowContainer;->updateFocusedWindowLocked(IZ)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/input/InputManagerService;Lcom/android/server/input/InputManagerService;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/RunningTasks;->getTasks(ILjava/util/List;ILcom/android/server/wm/RecentTasks;Lcom/android/server/wm/WindowContainer;ILandroid/util/ArraySet;)V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/RunningTasks;Lcom/android/server/wm/RunningTasks;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->performSurfacePlacementNoTrace()V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BLASTSyncEngine;Lcom/android/server/wm/BLASTSyncEngine;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/TaskFragmentOrganizerController;Lcom/android/server/wm/TaskFragmentOrganizerController;]Lcom/android/server/wm/TaskOrganizerController;Lcom/android/server/wm/TaskOrganizerController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/RootWindowContainer;->updateFocusedWindowLocked(IZ)Z+]Lcom/android/server/input/InputManagerService;Lcom/android/server/input/InputManagerService;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/wm/RunningTasks;->accept(Lcom/android/server/wm/Task;)V+]Lcom/android/server/wm/RecentTasks;Lcom/android/server/wm/RecentTasks;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/wm/RunningTasks;->createRunningTaskInfo(Lcom/android/server/wm/Task;J)Landroid/app/ActivityManager$RunningTaskInfo;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; +HPLcom/android/server/wm/RunningTasks;->getTasks(ILjava/util/List;ILcom/android/server/wm/RecentTasks;Lcom/android/server/wm/WindowContainer;ILandroid/util/ArraySet;)V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/wm/SafeActivityOptions;-><init>(Landroid/app/ActivityOptions;)V -HPLcom/android/server/wm/SafeActivityOptions;->setCallerOptions(Landroid/app/ActivityOptions;)V -HPLcom/android/server/wm/Session;->setWallpaperZoomOut(Landroid/os/IBinder;F)V+]Lcom/android/server/wm/Session;Lcom/android/server/wm/Session; -HSPLcom/android/server/wm/SmoothDimmer;->getDimBounds()Landroid/graphics/Rect; -HSPLcom/android/server/wm/SmoothDimmer;->resetDimStates()V -HPLcom/android/server/wm/SurfaceAnimator;->createAnimationLeash(Lcom/android/server/wm/SurfaceAnimator$Animatable;Landroid/view/SurfaceControl;Landroid/view/SurfaceControl$Transaction;IIIIIZLjava/util/function/Supplier;)Landroid/view/SurfaceControl;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/SurfaceAnimator$Animatable;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken; -HSPLcom/android/server/wm/SurfaceAnimator;->hasLeash()Z +HPLcom/android/server/wm/Session;->setWallpaperZoomOut(Landroid/os/IBinder;F)V +HPLcom/android/server/wm/SurfaceAnimator;->createAnimationLeash(Lcom/android/server/wm/SurfaceAnimator$Animatable;Landroid/view/SurfaceControl;Landroid/view/SurfaceControl$Transaction;IIIIIZLjava/util/function/Supplier;)Landroid/view/SurfaceControl;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/SurfaceAnimator$Animatable;megamorphic_types HSPLcom/android/server/wm/SurfaceAnimator;->isAnimating()Z -HSPLcom/android/server/wm/SurfaceAnimator;->reset(Landroid/view/SurfaceControl$Transaction;Z)V+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; -HPLcom/android/server/wm/SurfaceAnimator;->startAnimation(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/wm/AnimationAdapter;ZILcom/android/server/wm/SurfaceAnimator$OnAnimationFinishedCallback;Ljava/lang/Runnable;Lcom/android/server/wm/AnimationAdapter;Lcom/android/server/wm/SurfaceFreezer;)V+]Lcom/android/server/wm/AnimationAdapter;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator$Animatable;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/SurfaceFreezer;Lcom/android/server/wm/SurfaceFreezer; +HPLcom/android/server/wm/SurfaceAnimator;->startAnimation(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/wm/AnimationAdapter;ZILcom/android/server/wm/SurfaceAnimator$OnAnimationFinishedCallback;Ljava/lang/Runnable;Lcom/android/server/wm/AnimationAdapter;Lcom/android/server/wm/SurfaceFreezer;)V+]Lcom/android/server/wm/AnimationAdapter;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator$Animatable;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/SurfaceFreezer;Lcom/android/server/wm/SurfaceFreezer; HSPLcom/android/server/wm/SynchedDeviceConfig;->getFlagValue(Ljava/lang/String;)Z+]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap; HPLcom/android/server/wm/SystemGesturesPointerEventListener;->detectSwipe(IJFF)I HSPLcom/android/server/wm/SystemGesturesPointerEventListener;->onConfigurationChanged()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources; -HPLcom/android/server/wm/SystemGesturesPointerEventListener;->onPointerEvent(Landroid/view/MotionEvent;)V+]Landroid/view/GestureDetector;Lcom/android/server/wm/SystemGesturesPointerEventListener$1;]Landroid/view/MotionEvent;Landroid/view/MotionEvent;]Lcom/android/server/wm/SystemGesturesPointerEventListener$Callbacks;Lcom/android/server/wm/DisplayPolicy$1;]Lcom/android/server/wm/SystemGesturesPointerEventListener;Lcom/android/server/wm/SystemGesturesPointerEventListener; +HPLcom/android/server/wm/SystemGesturesPointerEventListener;->onPointerEvent(Landroid/view/MotionEvent;)V+]Landroid/view/GestureDetector;Lcom/android/server/wm/SystemGesturesPointerEventListener$1;]Lcom/android/server/wm/SystemGesturesPointerEventListener$Callbacks;Lcom/android/server/wm/DisplayPolicy$1; HSPLcom/android/server/wm/Task$FindRootHelper;->findRoot(ZZ)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/Task$FindRootHelper;->test(Lcom/android/server/wm/ActivityRecord;)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo; -HSPLcom/android/server/wm/Task;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/Task;->checkTranslucentActivityWaiting(Lcom/android/server/wm/ActivityRecord;)V+]Landroid/os/Handler;Lcom/android/server/wm/Task$ActivityTaskHandler;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/Task;->ensureActivitiesVisible(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/Task;->fillTaskInfo(Landroid/app/TaskInfo;ZLcom/android/server/wm/TaskDisplayArea;)V+]Landroid/app/AppCompatTaskInfo;Landroid/app/AppCompatTaskInfo;]Landroid/app/PictureInPictureParams;Landroid/app/PictureInPictureParams;]Landroid/app/TaskInfo;Landroid/app/ActivityManager$RecentTaskInfo;,Landroid/app/ActivityManager$RunningTaskInfo;,Landroid/app/ActivityTaskManager$RootTaskInfo;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer$RemoteToken;Lcom/android/server/wm/WindowContainer$RemoteToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;]Ljava/util/function/Consumer;megamorphic_types -HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;]Ljava/util/function/Predicate;Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda16;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda18;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda31;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda39;,Lcom/android/server/wm/RootWindowContainer$FindTaskResult; -HSPLcom/android/server/wm/Task;->forAllRootTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/function/Consumer;megamorphic_types -HSPLcom/android/server/wm/Task;->getDisplayCutoutInsets()Landroid/graphics/Rect;+]Landroid/view/DisplayCutout;Landroid/view/DisplayCutout;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/Task$FindRootHelper;->test(Ljava/lang/Object;)Z+]Lcom/android/server/wm/Task$FindRootHelper;Lcom/android/server/wm/Task$FindRootHelper; +HSPLcom/android/server/wm/Task;->asTask()Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/Task;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/Task;->cropWindowsToRootTaskBounds()Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/Task;->fillTaskInfo(Landroid/app/TaskInfo;ZLcom/android/server/wm/TaskDisplayArea;)V+]Landroid/app/TaskInfo;Landroid/app/ActivityManager$RecentTaskInfo;,Landroid/app/ActivityManager$RunningTaskInfo;,Landroid/app/ActivityTaskManager$RootTaskInfo;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer$RemoteToken;Lcom/android/server/wm/WindowContainer$RemoteToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types +HSPLcom/android/server/wm/Task;->getAdjacentTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea; +HSPLcom/android/server/wm/Task;->getDisplayCutoutInsets()Landroid/graphics/Rect;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/Task;->getRootActivity(ZZ)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task$FindRootHelper;Lcom/android/server/wm/Task$FindRootHelper; HSPLcom/android/server/wm/Task;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/function/Predicate;megamorphic_types -HSPLcom/android/server/wm/Task;->getTopLeafTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/Task;->getTopPausingActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/Task;->getTopResumedActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/Task;->getTopLeafTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/Task;->getTopResumedActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/Task;->hasVisibleChildren()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/Task;->isLeafTask()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/Task;->isResizeable(Z)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/Task;->isFocused()Z +HSPLcom/android/server/wm/Task;->isLeafTask()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/Task;->isOrganized()Z +HSPLcom/android/server/wm/Task;->isResizeable(Z)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; HSPLcom/android/server/wm/Task;->isRootTask()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/Task;->onDisplayChanged(Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController; -HSPLcom/android/server/wm/Task;->prepareSurfaces()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/LegacyDimmer;,Lcom/android/server/wm/SmoothDimmer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/Task;->prepareSurfaces()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/Task;->setTaskDescriptionFromActivityAboveRoot(Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityManager$TaskDescription;)Z+]Landroid/app/ActivityManager$TaskDescription;Landroid/app/ActivityManager$TaskDescription; HSPLcom/android/server/wm/Task;->shouldIgnoreInput()Z -HSPLcom/android/server/wm/Task;->shouldSleepActivities()Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/TaskChangeNotificationController;->forAllLocalListeners(Lcom/android/server/wm/TaskChangeNotificationController$TaskStackConsumer;Landroid/os/Message;)V+]Lcom/android/server/wm/TaskChangeNotificationController$TaskStackConsumer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/TaskChangeNotificationController;->forAllRemoteListeners(Lcom/android/server/wm/TaskChangeNotificationController$TaskStackConsumer;Landroid/os/Message;)V+]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Lcom/android/server/wm/TaskChangeNotificationController$TaskStackConsumer;megamorphic_types HSPLcom/android/server/wm/TaskDisplayArea$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z HSPLcom/android/server/wm/TaskDisplayArea;->adjustRootTaskLayer(Landroid/view/SurfaceControl$Transaction;Ljava/util/ArrayList;I)I+]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/TaskDisplayArea;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/TaskDisplayArea;->assignRootTaskOrdering(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;,Ljava/util/ArrayList; -HSPLcom/android/server/wm/TaskDisplayArea;->getRootTask(II)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/TaskDisplayArea; +HSPLcom/android/server/wm/TaskDisplayArea;->assignRootTaskOrdering(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/TaskDisplayArea;->getRootTask(II)Lcom/android/server/wm/Task; HSPLcom/android/server/wm/TaskDisplayArea;->lambda$getRootTask$0(IILcom/android/server/wm/Task;)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/TaskFragment;->forAllLeafTaskFragments(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;]Ljava/util/function/Predicate;Lcom/android/server/wm/ActivityRecord$$ExternalSyntheticLambda30;,Lcom/android/server/wm/ActivityRecord$$ExternalSyntheticLambda31;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda26;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda49;,Lcom/android/server/wm/Task$$ExternalSyntheticLambda15;,Lcom/android/server/wm/Task$$ExternalSyntheticLambda16;,Lcom/android/server/wm/Task$$ExternalSyntheticLambda27;,Lcom/android/server/wm/Task$$ExternalSyntheticLambda28;,Lcom/android/server/wm/TaskFragmentOrganizerController$$ExternalSyntheticLambda0; +HSPLcom/android/server/wm/TaskFragment;->asTaskFragment()Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->forAllLeafTaskFragments(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;megamorphic_types HSPLcom/android/server/wm/TaskFragment;->getActivityType()I+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/TaskFragment;->getDisplayArea()Lcom/android/server/wm/DisplayArea;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->getDisplayArea()Lcom/android/server/wm/TaskDisplayArea; -HSPLcom/android/server/wm/TaskFragment;->getOrganizedTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->getRootTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; -HSPLcom/android/server/wm/TaskFragment;->getRootTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->getOrganizedTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea; +HSPLcom/android/server/wm/TaskFragment;->getRootTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/TaskFragment;->getRootTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea; HSPLcom/android/server/wm/TaskFragment;->getTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->getTopNonFinishingActivity(Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->getVisibility(Lcom/android/server/wm/ActivityRecord;)I+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/wm/TaskFragment;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->getTopNonFinishingActivity(ZZ)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->getVisibility(Lcom/android/server/wm/ActivityRecord;)I+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->hasRunningActivity(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->isAttached()Z+]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->isFocusableAndVisible()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task; +HSPLcom/android/server/wm/TaskFragment;->isAttached()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->isForceHidden()Z -HSPLcom/android/server/wm/TaskFragment;->isLeafTaskFragment()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/TaskFragment;->isTopActivityFocusable()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->isTranslucent(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->isTranslucent(Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->prepareSurfaces()V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/SmoothDimmer;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->prepareSurfaces()V+]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->resumeTopActivity(Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityOptions;Z)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/wm/ActivityMetricsLogger;Lcom/android/server/wm/ActivityMetricsLogger;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/AppWarnings;Lcom/android/server/wm/AppWarnings;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/TaskFragment;->shouldDeferRemoval()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/TaskFragment;->supportsMultiWindowInDisplayArea(Lcom/android/server/wm/TaskDisplayArea;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/TaskFragment;->shouldSleepActivities()Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; +HSPLcom/android/server/wm/TaskFragment;->supportsMultiWindowInDisplayArea(Lcom/android/server/wm/TaskDisplayArea;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->topRunningActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->topRunningActivity(Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; HSPLcom/android/server/wm/TaskFragment;->updateActivityVisibilities(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/EnsureActivitiesVisibleHelper;Lcom/android/server/wm/EnsureActivitiesVisibleHelper; -HSPLcom/android/server/wm/TaskFragmentOrganizerController;->dispatchPendingEvents()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/TaskFragmentOrganizerController;Lcom/android/server/wm/TaskFragmentOrganizerController;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; -HSPLcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;->dispatchPendingEvents()V+]Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/TaskOrganizerController;->dispatchPendingEvents()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; +HSPLcom/android/server/wm/TaskFragmentOrganizerController;->dispatchPendingEvents()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; +HPLcom/android/server/wm/TaskFragmentOrganizerController;->shouldDeferPendingEvents(Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;Ljava/util/List;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/TaskFragment;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;->dispatchPendingEvents()V+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;->dispatchTaskInfoChanged(Lcom/android/server/wm/Task;Z)V+]Landroid/app/ActivityManager$RunningTaskInfo;Landroid/app/ActivityManager$RunningTaskInfo;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerCallbacks;Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerCallbacks;]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap; +HSPLcom/android/server/wm/TaskOrganizerController;->dispatchPendingEvents()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; HSPLcom/android/server/wm/Transition$ChangeInfo;-><init>(Lcom/android/server/wm/WindowContainer;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types +HSPLcom/android/server/wm/Transition;-><init>(IILcom/android/server/wm/TransitionController;Lcom/android/server/wm/BLASTSyncEngine;)V HSPLcom/android/server/wm/Transition;->calculateTransitionInfo(IILjava/util/ArrayList;Landroid/view/SurfaceControl$Transaction;)Landroid/window/TransitionInfo;+]Landroid/app/ActivityManager$TaskDescription;Landroid/app/ActivityManager$TaskDescription;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/Transition$ChangeInfo;Lcom/android/server/wm/Transition$ChangeInfo;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer$RemoteToken;Lcom/android/server/wm/WindowContainer$RemoteToken;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/Transition;->collect(Lcom/android/server/wm/WindowContainer;)V+]Lcom/android/server/wm/BLASTSyncEngine;Lcom/android/server/wm/BLASTSyncEngine;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/Transition;->finishTransition()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/os/Handler;Landroid/os/Handler;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/inputmethod/InputMethodManagerInternal;Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayRotationCompatPolicy;Lcom/android/server/wm/DisplayRotationCompatPolicy;]Lcom/android/server/wm/InputMonitor;Lcom/android/server/wm/InputMonitor;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/TaskDisplayArea;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskSnapshotController;Lcom/android/server/wm/TaskSnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/LegacyTransitionTracer;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda23;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24; -HSPLcom/android/server/wm/Transition;->isInTransition(Lcom/android/server/wm/WindowContainer;)Z+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/Transition;->onTransactionReady(ILandroid/view/SurfaceControl$Transaction;)V+]Landroid/util/ArraySet;Landroid/util/ArraySet;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/window/ITransitionPlayer;Landroid/window/ITransitionPlayer$Stub$Proxy;]Landroid/window/TransitionInfo$AnimationOptions;Landroid/window/TransitionInfo$AnimationOptions;]Landroid/window/TransitionInfo$Root;Landroid/window/TransitionInfo$Root;]Landroid/window/TransitionInfo;Landroid/window/TransitionInfo;]Lcom/android/server/wm/AccessibilityController;Lcom/android/server/wm/AccessibilityController;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController$Logger;Lcom/android/server/wm/TransitionController$Logger;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/LegacyTransitionTracer;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda23;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24; +HSPLcom/android/server/wm/Transition;->finishTransition(Lcom/android/server/wm/ActionChain;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/inputmethod/InputMethodManagerInternal;Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl;]Lcom/android/server/wm/ActionChain;Lcom/android/server/wm/ActionChain;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskSnapshotController;Lcom/android/server/wm/TaskSnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/LegacyTransitionTracer;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; +HSPLcom/android/server/wm/Transition;->isInTransition(Lcom/android/server/wm/WindowContainer;)Z +HSPLcom/android/server/wm/Transition;->onTransactionReady(ILandroid/view/SurfaceControl$Transaction;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/window/ITransitionPlayer;Landroid/window/ITransitionPlayer$Stub$Proxy;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController$Logger;Lcom/android/server/wm/TransitionController$Logger;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/LegacyTransitionTracer;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; HSPLcom/android/server/wm/TransitionController;->canAssignLayers(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;megamorphic_types HSPLcom/android/server/wm/TransitionController;->inCollectingTransition(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/TransitionController;->inPlayingTransition(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/TransitionController;->inTransition()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/TransitionController;->inTransition(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController; HSPLcom/android/server/wm/TransitionController;->isCollecting()Z HSPLcom/android/server/wm/TransitionController;->isPlaying()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; @@ -3739,91 +3919,99 @@ HSPLcom/android/server/wm/TransitionController;->isShellTransitionsEnabled()Z+]L HSPLcom/android/server/wm/TransitionController;->isTransientVisible(Lcom/android/server/wm/Task;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/TransitionController;->isTransitionOnDisplay(Lcom/android/server/wm/DisplayContent;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/TransitionController;->shouldKeepFocus(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/TransparentPolicy$TransparentPolicyState;->findOpaqueNotFinishingActivityBelow()Ljava/util/Optional; +HSPLcom/android/server/wm/TransparentPolicy;->findOpaqueNotFinishingActivityBelow()Ljava/util/Optional; +HSPLcom/android/server/wm/TransparentPolicy;->isRunning()Z HSPLcom/android/server/wm/VisibleActivityProcessTracker;->hasVisibleActivity(I)Z -HSPLcom/android/server/wm/VisibleActivityProcessTracker;->match(ILjava/util/function/Predicate;)Z+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Ljava/util/function/Predicate;Lcom/android/server/wm/VisibleActivityProcessTracker$$ExternalSyntheticLambda0; +HSPLcom/android/server/wm/VisibleActivityProcessTracker;->match(ILjava/util/function/Predicate;)Z+]Ljava/util/function/Predicate;Lcom/android/server/wm/VisibleActivityProcessTracker$$ExternalSyntheticLambda0; HSPLcom/android/server/wm/WallpaperController;->hideWallpapers(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WallpaperController;->isWallpaperVisible()Z+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WallpaperController;->lambda$new$0(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/AnimationAdapter;Lcom/android/server/wm/BackNavigationController$AnimationHandler$BackWindowAnimationAdaptor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController$FindWallpaperTargetResult;Lcom/android/server/wm/WallpaperController$FindWallpaperTargetResult;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WallpaperController;->updateWallpaperOffset(Lcom/android/server/wm/WindowState;Z)Z+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Lcom/android/server/wallpaper/WallpaperCropper$WallpaperCropUtils;Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda5;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/wm/WallpaperController;->lambda$new$0(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/AnimationAdapter;Lcom/android/server/wm/BackNavigationController$AnimationHandler$BackWindowAnimationAdaptor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WallpaperController;->updateWallpaperOffset(Lcom/android/server/wm/WindowState;Z)Z+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Lcom/android/server/wallpaper/WallpaperCropper$WallpaperCropUtils;Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda5;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WallpaperWindowToken;->isVisible()Z+]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WallpaperWindowToken; -HSPLcom/android/server/wm/WallpaperWindowToken;->setVisibility(Z)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken; -HSPLcom/android/server/wm/WindowAnimator;->animate(J)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/AccessibilityController;Lcom/android/server/wm/AccessibilityController;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/TaskOrganizerController;Lcom/android/server/wm/TaskOrganizerController;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Lcom/android/server/wm/WindowTracing;Lcom/android/server/wm/WindowTracing; +HSPLcom/android/server/wm/WallpaperWindowToken;->prepareSurfaces()V +HSPLcom/android/server/wm/WallpaperWindowToken;->setVisibility(Z)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken; +HSPLcom/android/server/wm/WindowAnimator;->animate(J)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/TaskOrganizerController;Lcom/android/server/wm/TaskOrganizerController;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Lcom/android/server/wm/WindowTracing;Lcom/android/server/wm/WindowTracing;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowAnimator;->cancelAnimation()V -HSPLcom/android/server/wm/WindowAnimator;->executeAfterPrepareSurfacesRunnables()V+]Ljava/lang/Runnable;Lcom/android/server/wm/BackNavigationController$$ExternalSyntheticLambda9;,Lcom/android/server/wm/InsetsStateController$$ExternalSyntheticLambda0;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WindowAnimator;->lambda$new$1(J)V+]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator; -HSPLcom/android/server/wm/WindowAnimator;->scheduleAnimation()V+]Landroid/view/Choreographer;Landroid/view/Choreographer; +HSPLcom/android/server/wm/WindowAnimator;->lambda$new$1(J)V +HSPLcom/android/server/wm/WindowAnimator;->scheduleAnimation()V HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->apply(Lcom/android/server/wm/WindowState;)Z+]Ljava/util/function/Consumer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->apply(Ljava/lang/Object;)Z+]Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper; -HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->release()V+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; -HSPLcom/android/server/wm/WindowContainer;-><init>(Lcom/android/server/wm/WindowManagerService;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24; -HSPLcom/android/server/wm/WindowContainer;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->apply(Ljava/lang/Object;)Z +HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->release()V +HSPLcom/android/server/wm/WindowContainer;-><init>(Lcom/android/server/wm/WindowManagerService;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; +HSPLcom/android/server/wm/WindowContainer;->asTaskFragment()Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/WindowContainer;->asWallpaperToken()Lcom/android/server/wm/WallpaperWindowToken; +HSPLcom/android/server/wm/WindowContainer;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->assignLayer(Landroid/view/SurfaceControl$Transaction;I)V+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->forAllActivities(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllActivities(Ljava/util/function/Predicate;Z)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllLeafTaskFragments(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllRootTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->forAllWindows(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;]Lcom/android/server/wm/WindowContainer;megamorphic_types +HSPLcom/android/server/wm/WindowContainer;->forAllActivities(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllActivities(Ljava/util/function/Predicate;Z)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllLeafTaskFragments(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllRootTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->forAllWindows(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/RootWindowContainer;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;Lcom/android/server/wm/WindowContainer;ZZ[Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;Lcom/android/server/wm/WindowContainer;ZZ[Z)Lcom/android/server/wm/ActivityRecord;+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;ZLcom/android/server/wm/ActivityRecord;)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->getAnimatingContainer(II)Lcom/android/server/wm/WindowContainer;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->getChildAt(I)Lcom/android/server/wm/WindowContainer;+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->getChildCount()I+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->getActivity(Ljava/util/function/Predicate;ZLcom/android/server/wm/ActivityRecord;)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getAnimatingContainer(II)Lcom/android/server/wm/WindowContainer;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getChildAt(I)Lcom/android/server/wm/WindowContainer;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getChildCount()I+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->getDisplayArea()Lcom/android/server/wm/DisplayArea;+]Lcom/android/server/wm/WindowContainer;megamorphic_types +HSPLcom/android/server/wm/WindowContainer;->getDisplayContent()Lcom/android/server/wm/DisplayContent; HPLcom/android/server/wm/WindowContainer;->getInsetsSourceProviders()Landroid/util/SparseArray; -HSPLcom/android/server/wm/WindowContainer;->getOrientation(I)I+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Object;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->getOrientation(I)I+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->getParent()Lcom/android/server/wm/WindowContainer; -HSPLcom/android/server/wm/WindowContainer;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction;+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->getRelativePosition(Landroid/graphics/Rect;Landroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction;+]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; +HSPLcom/android/server/wm/WindowContainer;->getRelativePosition(Landroid/graphics/Point;)V+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types +HSPLcom/android/server/wm/WindowContainer;->getRelativePosition(Landroid/graphics/Rect;Landroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types +HSPLcom/android/server/wm/WindowContainer;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getSurfaceControl()Landroid/view/SurfaceControl; HSPLcom/android/server/wm/WindowContainer;->getSyncTransaction()Landroid/view/SurfaceControl$Transaction;+]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->getTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->getTopChild()Lcom/android/server/wm/WindowContainer;+]Lcom/android/server/wm/WindowList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->getTopMostActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment; -HSPLcom/android/server/wm/WindowContainer;->getWindow(Ljava/util/function/Predicate;)Lcom/android/server/wm/WindowState;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->getTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getTopChild()Lcom/android/server/wm/WindowContainer;+]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->getTopMostActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment; +HSPLcom/android/server/wm/WindowContainer;->getWindow(Ljava/util/function/Predicate;)Lcom/android/server/wm/WindowState;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->hasInsetsSourceProvider()Z HSPLcom/android/server/wm/WindowContainer;->inTransition()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController; HSPLcom/android/server/wm/WindowContainer;->inTransitionSelfOrParent()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowContainer;->isAnimating(II)Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->isExitAnimationRunningSelfOrChild()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->isAttached()Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types +HSPLcom/android/server/wm/WindowContainer;->isExitAnimationRunningSelfOrChild()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->isFocusable()Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->isOnTop()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/RootWindowContainer; +HSPLcom/android/server/wm/WindowContainer;->isOnTop()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayArea$Dimmable;,Lcom/android/server/wm/RootWindowContainer; HSPLcom/android/server/wm/WindowContainer;->isSelfAnimating(II)Z+]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContainer;->isVisible()Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->isVisible()Z+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->isVisibleRequested()Z -HSPLcom/android/server/wm/WindowContainer;->needsZBoost()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowContainer;->obtainConsumerWrapper(Ljava/util/function/Consumer;)Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool;]Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper; -HSPLcom/android/server/wm/WindowContainer;->onDisplayChanged(Lcom/android/server/wm/DisplayContent;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowContainerListener;Lcom/android/server/wm/ContentRecorder;,Lcom/android/server/wm/DisplayContent$2;,Lcom/android/server/wm/WindowContainer$2;,Lcom/android/server/wm/WindowContextListenerController$WindowContextListenerImpl;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WindowContainer;->prepareSurfaces()V+]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowContainer;->isWaitingForTransitionStart()Z +HSPLcom/android/server/wm/WindowContainer;->needsZBoost()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->obtainConsumerWrapper(Ljava/util/function/Consumer;)Lcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;+]Landroid/util/Pools$SynchronizedPool;Landroid/util/Pools$SynchronizedPool; +HSPLcom/android/server/wm/WindowContainer;->onDisplayChanged(Lcom/android/server/wm/DisplayContent;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowContainerListener;Lcom/android/server/wm/ContentRecorder;,Lcom/android/server/wm/DisplayContent$2;,Lcom/android/server/wm/WindowContainer$2;,Lcom/android/server/wm/WindowContextListenerController$WindowContextListenerImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowContainer;->prepareSurfaces()V+]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowContainer;->scheduleAnimation()V+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; HSPLcom/android/server/wm/WindowContainer;->updateSurfacePositionNonOrganized()V+]Lcom/android/server/wm/WindowContainer;megamorphic_types -HSPLcom/android/server/wm/WindowContextListenerController$WindowContextListenerImpl;->dispatchWindowContextInfoChange()V+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/wm/WindowFrames;->didFrameSizeChange()Z+]Landroid/graphics/Rect;Landroid/graphics/Rect; +HSPLcom/android/server/wm/WindowFrames;->didFrameSizeChange()Z HSPLcom/android/server/wm/WindowFrames;->hasInsetsChanged()Z +HSPLcom/android/server/wm/WindowFrames;->setContentChanged(Z)V HSPLcom/android/server/wm/WindowFrames;->setReportResizeHints()Z+]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames; -HSPLcom/android/server/wm/WindowList;->peekLast()Ljava/lang/Object;+]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowManagerService;->addWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIILandroid/view/InputChannel;Landroid/view/InsetsState;Landroid/view/InsetsSourceControl$Array;Landroid/graphics/Rect;[F)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/Session;Lcom/android/server/wm/Session;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowContextListenerController;Lcom/android/server/wm/WindowContextListenerController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/wm/WindowManagerService;->addWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIILandroid/view/InputChannel;Landroid/view/InsetsState;Landroid/view/InsetsSourceControl$Array;Landroid/graphics/Rect;[F)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/Session;Lcom/android/server/wm/Session;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowContextListenerController;Lcom/android/server/wm/WindowContextListenerController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/wm/WindowManagerService;->boostPriorityForLockedSection()V+]Lcom/android/server/wm/WindowManagerThreadPriorityBooster;Lcom/android/server/wm/WindowManagerThreadPriorityBooster; -HSPLcom/android/server/wm/WindowManagerService;->checkDrawnWindowsLocked()V+]Landroid/os/Handler;Lcom/android/server/wm/WindowManagerService$H;]Landroid/os/Message;Landroid/os/Message;]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WindowManagerService;->enableScreenIfNeededLocked()V+]Ljava/lang/RuntimeException;Ljava/lang/RuntimeException; +HSPLcom/android/server/wm/WindowManagerService;->checkDrawnWindowsLocked()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowManagerService;->enableScreenIfNeededLocked()V HSPLcom/android/server/wm/WindowManagerService;->getDefaultDisplayContentLocked()Lcom/android/server/wm/DisplayContent;+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer; -HSPLcom/android/server/wm/WindowManagerService;->getRecentsAnimationController()Lcom/android/server/wm/RecentsAnimationController; HSPLcom/android/server/wm/WindowManagerService;->isKeyguardSecure(I)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; HSPLcom/android/server/wm/WindowManagerService;->isUserVisible(I)Z+]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService; +HSPLcom/android/server/wm/WindowManagerService;->relayoutWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIIIILandroid/view/WindowRelayoutResult;)I+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Landroid/view/InsetsFrameProvider$InsetsSizeOverride;Landroid/view/InsetsFrameProvider$InsetsSizeOverride;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; HSPLcom/android/server/wm/WindowManagerService;->resetPriorityAfterLockedSection()V+]Lcom/android/server/wm/WindowManagerThreadPriorityBooster;Lcom/android/server/wm/WindowManagerThreadPriorityBooster; HSPLcom/android/server/wm/WindowManagerService;->scheduleAnimationLocked()V+]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator; HSPLcom/android/server/wm/WindowManagerService;->setInsetsWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;ILandroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowManagerService;->windowForClientLocked(Lcom/android/server/wm/Session;Landroid/os/IBinder;Z)Lcom/android/server/wm/WindowState;+]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;]Ljava/util/HashMap;Ljava/util/HashMap; +HSPLcom/android/server/wm/WindowManagerService;->windowForClientLocked(Lcom/android/server/wm/Session;Landroid/os/IBinder;Z)Lcom/android/server/wm/WindowState;+]Ljava/util/HashMap;Ljava/util/HashMap; HSPLcom/android/server/wm/WindowManagerThreadPriorityBooster;->boost()V HSPLcom/android/server/wm/WindowManagerThreadPriorityBooster;->reset()V -HSPLcom/android/server/wm/WindowProcessController;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;IILjava/lang/Object;Lcom/android/server/wm/WindowProcessListener;)V+]Lcom/android/server/grammaticalinflection/GrammaticalInflectionManagerInternal;Lcom/android/server/grammaticalinflection/GrammaticalInflectionService$GrammaticalInflectionManagerInternalImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/PackageConfigPersister;Lcom/android/server/wm/PackageConfigPersister;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/WindowProcessController;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;IILjava/lang/Object;Lcom/android/server/wm/WindowProcessListener;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService; HSPLcom/android/server/wm/WindowProcessController;->addBoundClientUid(ILjava/lang/String;J)V+]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController; -HPLcom/android/server/wm/WindowProcessController;->areBackgroundActivityStartsAllowed(IZ)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HSPLcom/android/server/wm/WindowProcessController;->computeProcessActivityState()V+]Landroid/util/ArrayMap;Landroid/util/ArrayMap;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/wm/WindowProcessController;->areBackgroundActivityStartsAllowed(ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/WindowProcessController;->computeProcessActivityState()V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowProcessController;->dispatchConfiguration(Landroid/content/res/Configuration;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; HSPLcom/android/server/wm/WindowProcessController;->handleAppDied()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowProcessController;->hasActivities()Z @@ -3834,83 +4022,84 @@ HSPLcom/android/server/wm/WindowProcessController;->hasVisibleActivities()Z HSPLcom/android/server/wm/WindowProcessController;->isHeavyWeightProcess()Z HSPLcom/android/server/wm/WindowProcessController;->isHomeProcess()Z HSPLcom/android/server/wm/WindowProcessController;->isPreviousProcess()Z -HSPLcom/android/server/wm/WindowProcessController;->onConfigurationChanged(Landroid/content/res/Configuration;)V+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Lcom/android/server/grammaticalinflection/GrammaticalInflectionManagerInternal;Lcom/android/server/grammaticalinflection/GrammaticalInflectionService$GrammaticalInflectionManagerInternalImpl;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/wm/WindowProcessController;->onServiceStarted(Landroid/content/pm/ServiceInfo;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/lang/Object;Ljava/lang/String; +HSPLcom/android/server/wm/WindowProcessController;->onConfigurationChanged(Landroid/content/res/Configuration;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/WindowProcessController;->onServiceStarted(Landroid/content/pm/ServiceInfo;)V HSPLcom/android/server/wm/WindowProcessController;->registeredForDisplayAreaConfigChanges()Z HSPLcom/android/server/wm/WindowProcessController;->removeBackgroundStartPrivileges(Landroid/os/Binder;)V+]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController; -HSPLcom/android/server/wm/WindowProcessController;->resolveOverrideConfiguration(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController; +HSPLcom/android/server/wm/WindowProcessController;->resolveOverrideConfiguration(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService; +HSPLcom/android/server/wm/WindowProcessController;->scheduleClientTransactionItem(Landroid/app/IApplicationThread;Landroid/app/servertransaction/ClientTransactionItem;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/Session;Lcom/android/server/wm/Session; HSPLcom/android/server/wm/WindowProcessController;->setCurrentAdj(I)V HSPLcom/android/server/wm/WindowProcessController;->setCurrentProcState(I)V HSPLcom/android/server/wm/WindowProcessController;->setCurrentSchedulingGroup(I)V HSPLcom/android/server/wm/WindowProcessController;->setFgInteractionTime(J)V HSPLcom/android/server/wm/WindowProcessController;->setInteractionEventTime(J)V HSPLcom/android/server/wm/WindowProcessController;->setPerceptible(Z)V -HSPLcom/android/server/wm/WindowProcessController;->setReportedProcState(I)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; +HSPLcom/android/server/wm/WindowProcessController;->setReportedProcState(I)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager; HSPLcom/android/server/wm/WindowProcessController;->setThread(Landroid/app/IApplicationThread;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController; -HPLcom/android/server/wm/WindowProcessController;->setWhenUnimportant(J)V HSPLcom/android/server/wm/WindowProcessControllerMap;->put(ILcom/android/server/wm/WindowProcessController;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Map;Ljava/util/HashMap; -HSPLcom/android/server/wm/WindowState;-><init>(Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/Session;Landroid/view/IWindow;Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WindowState;ILandroid/view/WindowManager$LayoutParams;IIIZ)V+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24; -HSPLcom/android/server/wm/WindowState;->applyDims()V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/LegacyDimmer;,Lcom/android/server/wm/SmoothDimmer;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; +HSPLcom/android/server/wm/WindowState;-><init>(Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/Session;Landroid/view/IWindow;Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WindowState;ILandroid/view/WindowManager$LayoutParams;IIIZ)V+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25; +HSPLcom/android/server/wm/WindowState;->applyDims()V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; HSPLcom/android/server/wm/WindowState;->applyImeWindowsIfNeeded(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->applyInOrderWithImeWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/internal/util/ToBooleanFunction;megamorphic_types]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->applyInOrderWithImeWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/internal/util/ToBooleanFunction;megamorphic_types HSPLcom/android/server/wm/WindowState;->areAppWindowBoundsLetterboxed()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->assignLayer(Landroid/view/SurfaceControl$Transaction;I)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->canAddInternalSystemWindow()Z -HSPLcom/android/server/wm/WindowState;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; +HSPLcom/android/server/wm/WindowState;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; HSPLcom/android/server/wm/WindowState;->canBeHiddenByKeyguard()Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager; -HPLcom/android/server/wm/WindowState;->canBeImeTarget()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HPLcom/android/server/wm/WindowState;->canBeImeTarget()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->canReceiveKeys()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->canReceiveKeys(Z)Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->canReceiveTouchInput()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/WindowState;->computeDragResizing()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->canReceiveKeys(Z)Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->canReceiveTouchInput()Z+]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController; +HSPLcom/android/server/wm/WindowState;->computeDragResizing()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->cropRegionToRootTaskBoundsIfNeeded(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->fillClientWindowFramesAndConfiguration(Landroid/window/ClientWindowFrames;Landroid/util/MergedConfiguration;Landroid/window/ActivityWindowInfo;ZZ)V+]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Landroid/window/ClientWindowFrames;Landroid/window/ClientWindowFrames;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->fillInsetsSourceControls(Landroid/view/InsetsSourceControl$Array;Z)V+]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; +HSPLcom/android/server/wm/WindowState;->fillInsetsState(Landroid/view/InsetsState;Z)V+]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->fillsDisplay()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowState;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowState;->getAttrs()Landroid/view/WindowManager$LayoutParams; HSPLcom/android/server/wm/WindowState;->getBaseType()I+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getBounds()Landroid/graphics/Rect;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; -HSPLcom/android/server/wm/WindowState;->getConfiguration()Landroid/content/res/Configuration;+]Landroid/content/res/Configuration;Landroid/content/res/Configuration;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getBounds()Landroid/graphics/Rect;+]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; +HSPLcom/android/server/wm/WindowState;->getConfiguration()Landroid/content/res/Configuration; HSPLcom/android/server/wm/WindowState;->getDisplayFrames(Lcom/android/server/wm/DisplayFrames;)Lcom/android/server/wm/DisplayFrames;+]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; HSPLcom/android/server/wm/WindowState;->getEffectiveTouchableRegion(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->getFrame()Landroid/graphics/Rect; HSPLcom/android/server/wm/WindowState;->getInputDispatchingTimeoutMillis()J HSPLcom/android/server/wm/WindowState;->getInsetsState()Landroid/view/InsetsState;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getInsetsState(Z)Landroid/view/InsetsState;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; +HSPLcom/android/server/wm/WindowState;->getInsetsState(Z)Landroid/view/InsetsState;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; HSPLcom/android/server/wm/WindowState;->getKeepClearAreas(Ljava/util/Collection;Ljava/util/Collection;Landroid/graphics/Matrix;[F)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/Collection;Landroid/util/ArraySet; -HSPLcom/android/server/wm/WindowState;->getKeyInterceptionInfo()Lcom/android/internal/policy/KeyInterceptionInfo;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/CharSequence;Ljava/lang/String; -HSPLcom/android/server/wm/WindowState;->getMergedInsetsState()Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getName()Ljava/lang/String;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/StringBuilder;Ljava/lang/StringBuilder; -HSPLcom/android/server/wm/WindowState;->getOrientationChanging()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getKeyInterceptionInfo()Lcom/android/internal/policy/KeyInterceptionInfo;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Ljava/lang/String; +HSPLcom/android/server/wm/WindowState;->getMergedInsetsState()Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController; +HSPLcom/android/server/wm/WindowState;->getName()Ljava/lang/String;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getOrientationChanging()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController; HSPLcom/android/server/wm/WindowState;->getOwningPackage()Ljava/lang/String; +HSPLcom/android/server/wm/WindowState;->getOwningUid()I HSPLcom/android/server/wm/WindowState;->getParentWindow()Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->getRectsInScreenSpace(Ljava/util/List;Landroid/graphics/Matrix;[F)Ljava/util/List;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WindowState;->getSurfaceTouchableRegion(Landroid/graphics/Region;Landroid/view/WindowManager$LayoutParams;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/WindowState;->getTopParentWindow()Lcom/android/server/wm/WindowState;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getSurfaceTouchableRegion(Landroid/graphics/Region;Landroid/view/WindowManager$LayoutParams;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getTask()Lcom/android/server/wm/Task; HSPLcom/android/server/wm/WindowState;->getTouchOcclusionMode()I+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getTouchableRegion(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getTransformationMatrix([FLandroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->getWindowTag()Ljava/lang/CharSequence;+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Ljava/lang/CharSequence;Ljava/lang/String; +HSPLcom/android/server/wm/WindowState;->getTouchableRegion(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region; +HSPLcom/android/server/wm/WindowState;->getTransformationMatrix([FLandroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->getWindowTag()Ljava/lang/CharSequence;+]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Ljava/lang/String; HSPLcom/android/server/wm/WindowState;->getWindowType()I HSPLcom/android/server/wm/WindowState;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->handleWindowMovedIfNeeded()V+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Lcom/android/server/wm/AccessibilityController;Lcom/android/server/wm/AccessibilityController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->hasMoved()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->hasWallpaper()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isAnimationRunningSelfOrParent()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isChildWindow()Z -HSPLcom/android/server/wm/WindowState;->isDisplayed()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isDragResizeChanged()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isDisplayed()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isDragResizeChanged()Z HSPLcom/android/server/wm/WindowState;->isDrawn()Z HSPLcom/android/server/wm/WindowState;->isDreamWindow()Z -HSPLcom/android/server/wm/WindowState;->isFocused()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isFocused()Z HSPLcom/android/server/wm/WindowState;->isFullyTransparent()Z -HSPLcom/android/server/wm/WindowState;->isGoneForLayout()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isImeLayeringTarget()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isGoneForLayout()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isImeLayeringTarget()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent; HSPLcom/android/server/wm/WindowState;->isImplicitlyExcludingAllSystemGestures()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isLetterboxedForDisplayCutout()Z+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isLetterboxedForDisplayCutout()Z+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames; HSPLcom/android/server/wm/WindowState;->isObscuringDisplay()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isOnScreen()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isOpaqueDrawn()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isOnScreen()Z+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->isOpaqueDrawn()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isParentWindowGoneForLayout()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isParentWindowHidden()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isRequestedVisible(I)Z @@ -3919,129 +4108,1745 @@ HSPLcom/android/server/wm/WindowState;->isVisible()Z+]Lcom/android/server/wm/Win HSPLcom/android/server/wm/WindowState;->isVisibleByPolicy()Z HSPLcom/android/server/wm/WindowState;->isVisibleByPolicyOrInsets()Z+]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->isVisibleRequested()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->isVisibleRequestedOrAdding()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->needsRelativeLayeringToIme()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent$ImeContainer;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->needsZBoost()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->performShowLocked()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; +HSPLcom/android/server/wm/WindowState;->isVisibleRequestedOrAdding()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HPLcom/android/server/wm/WindowState;->matchesDisplayAreaBounds()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord; +HSPLcom/android/server/wm/WindowState;->needsZBoost()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->performShowLocked()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowState;->prepareSurfaces()V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; HSPLcom/android/server/wm/WindowState;->registeredForDisplayAreaConfigChanges()Z+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->relayoutVisibleWindow(I)I+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; HPLcom/android/server/wm/WindowState;->reportResized()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/util/MergedConfiguration;Landroid/util/MergedConfiguration;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->resetContentChanged()V+]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames; -HSPLcom/android/server/wm/WindowState;->setFrames(Landroid/window/ClientWindowFrames;II)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowState;->setFrames(Landroid/window/ClientWindowFrames;II)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HPLcom/android/server/wm/WindowState;->setLastExclusionHeights(III)V HSPLcom/android/server/wm/WindowState;->setReportResizeHints()Z+]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames; HSPLcom/android/server/wm/WindowState;->shouldCheckTokenVisibleRequested()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; -HSPLcom/android/server/wm/WindowState;->shouldDrawBlurBehind()Z HSPLcom/android/server/wm/WindowState;->subtractTouchExcludeRegionIfNeeded(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region; -HSPLcom/android/server/wm/WindowState;->transformFrameToSurfacePosition(IILandroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->transformFrameToSurfacePosition(IILandroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->transformSurfaceInsetsPosition(Landroid/graphics/Point;Landroid/graphics/Rect;)V HSPLcom/android/server/wm/WindowState;->updateFrameRateSelectionPriorityIfNeeded()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->updateRegionForModalActivityWindow(Landroid/graphics/Region;)V+]Landroid/graphics/Rect;Landroid/graphics/Rect;]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord; -HSPLcom/android/server/wm/WindowState;->updateReportedVisibility(Lcom/android/server/wm/WindowState$UpdateReportedVisibilityResults;)V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Lcom/android/server/wm/WindowList; -HSPLcom/android/server/wm/WindowState;->updateResizingWindowIfNeeded()V+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowState;->updateRegionForModalActivityWindow(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowState;->updateReportedVisibility(Lcom/android/server/wm/WindowState$UpdateReportedVisibilityResults;)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/WindowState;->updateResizingWindowIfNeeded()V+]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList; HSPLcom/android/server/wm/WindowState;->updateScaleIfNeeded()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->updateSourceFrame(Landroid/graphics/Rect;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowState;->updateSurfacePosition(Landroid/view/SurfaceControl$Transaction;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/graphics/Rect;Landroid/graphics/Rect;]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/LetterboxUiController;Lcom/android/server/wm/LetterboxUiController;]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Ljava/util/function/Consumer;Lcom/android/server/wm/WindowState$$ExternalSyntheticLambda1;,Lcom/android/server/wm/WindowState$$ExternalSyntheticLambda3; +HSPLcom/android/server/wm/WindowState;->updateSurfacePosition(Landroid/view/SurfaceControl$Transaction;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Ljava/util/function/Consumer;Lcom/android/server/wm/WindowState$$ExternalSyntheticLambda1; HSPLcom/android/server/wm/WindowState;->wouldBeVisibleIfPolicyIgnored()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowState;->wouldBeVisibleRequestedIfPolicyIgnored()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowStateAnimator;->applyAnimationLocked(IZ)Z+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; -HSPLcom/android/server/wm/WindowStateAnimator;->commitFinishDrawingLocked()Z+]Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; +HSPLcom/android/server/wm/WindowStateAnimator;->commitFinishDrawingLocked()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; HSPLcom/android/server/wm/WindowStateAnimator;->computeShownFrameLocked()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState; -HSPLcom/android/server/wm/WindowStateAnimator;->getShown()Z+]Lcom/android/server/wm/WindowSurfaceController;Lcom/android/server/wm/WindowSurfaceController; -HSPLcom/android/server/wm/WindowStateAnimator;->hasSurface()Z+]Lcom/android/server/wm/WindowSurfaceController;Lcom/android/server/wm/WindowSurfaceController; -HSPLcom/android/server/wm/WindowStateAnimator;->prepareSurfaceLocked(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Lcom/android/server/wm/WindowSurfaceController;Lcom/android/server/wm/WindowSurfaceController; -HSPLcom/android/server/wm/WindowSurfaceController;->hasSurface()Z -HSPLcom/android/server/wm/WindowSurfacePlacer$Traverser;->run()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; +HSPLcom/android/server/wm/WindowStateAnimator;->getShown()Z +HSPLcom/android/server/wm/WindowStateAnimator;->hasSurface()Z +HSPLcom/android/server/wm/WindowStateAnimator;->prepareSurfaceLocked(Landroid/view/SurfaceControl$Transaction;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator; +HSPLcom/android/server/wm/WindowSurfacePlacer$Traverser;->run()V HSPLcom/android/server/wm/WindowSurfacePlacer;->isLayoutDeferred()Z -HSPLcom/android/server/wm/WindowSurfacePlacer;->performSurfacePlacement(Z)V+]Landroid/os/Handler;Landroid/os/Handler;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer; +HSPLcom/android/server/wm/WindowSurfacePlacer;->performSurfacePlacement(Z)V HSPLcom/android/server/wm/WindowSurfacePlacer;->performSurfacePlacementLoop()V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Ljava/util/ArrayList;Ljava/util/ArrayList; -HSPLcom/android/server/wm/WindowSurfacePlacer;->requestTraversal()V+]Landroid/os/Handler;Landroid/os/Handler; +HSPLcom/android/server/wm/WindowSurfacePlacer;->requestTraversal()V HSPLcom/android/server/wm/WindowToken;->getFixedRotationTransformInsetsState()Landroid/view/InsetsState;+]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken; HSPLcom/android/server/wm/WindowToken;->isClientVisible()Z HSPLcom/android/server/wm/WindowToken;->isFixedRotationTransforming()Z +HSPLcom/android/server/wm/utils/DimenPxIntSupplier;->getAsInt()I+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources; HSPLcom/android/server/wm/utils/DisplayInfoOverrides;->lambda$static$0(Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;)V -HSPLcom/android/server/wm/utils/OptPropFactory$OptProp;->isFalse()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;]Ljava/util/function/BooleanSupplier;Lcom/android/server/wm/LetterboxUiController$$ExternalSyntheticLambda6;,Lcom/android/server/wm/LetterboxUiController$$ExternalSyntheticLambda7;,Lcom/android/server/wm/utils/OptPropFactory$OptProp$$ExternalSyntheticLambda0; -HPLcom/android/server/wm/utils/RegionUtils;->forEachRectReverse(Landroid/graphics/Region;Ljava/util/function/Consumer;)V+]Landroid/graphics/RegionIterator;Landroid/graphics/RegionIterator;]Ljava/util/ArrayList;Ljava/util/ArrayList; +HSPLcom/android/server/wm/utils/OptPropFactory$OptProp;->getValue()I+]Lcom/android/server/wm/utils/OptPropFactory$ThrowableBooleanSupplier;Lcom/android/server/wm/utils/OptPropFactory$$ExternalSyntheticLambda0;,Lcom/android/server/wm/utils/OptPropFactory$$ExternalSyntheticLambda1; +HSPLcom/android/server/wm/utils/OptPropFactory$OptProp;->isFalse()Z+]Ljava/util/function/BooleanSupplier;Lcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda0;,Lcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda1;,Lcom/android/server/wm/utils/OptPropFactory$OptProp$$ExternalSyntheticLambda0; +HSPLcom/android/server/wm/utils/OptPropFactory$OptProp;->shouldEnableWithOptInOverrideAndOptOutProperty(Z)Z+]Ljava/util/function/BooleanSupplier;Lcom/android/server/wm/AppCompatOrientationOverrides$$ExternalSyntheticLambda2;,Lcom/android/server/wm/AppCompatUtils$1;,Lcom/android/server/wm/utils/OptPropFactory$OptProp$$ExternalSyntheticLambda0; +HPLcom/android/server/wm/utils/RegionUtils;->forEachRectReverse(Landroid/graphics/Region;Ljava/util/function/Consumer;)V HSPLcom/android/server/wm/utils/RegionUtils;->rectListToRegion(Ljava/util/List;Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Ljava/util/List;Ljava/util/ArrayList; -Landroid/os/IInstalld$Stub$Proxy; +Landroid/content/pm/PackageManagerInternal$ExternalSourcesPolicy; +Landroid/content/pm/PackageManagerInternal; +Landroid/content/pm/TestUtilityService; +Landroid/hardware/light/HwLight$1; +Landroid/hardware/light/HwLight; +Landroid/hardware/light/ILights; +Landroid/hardware/power/stats/Channel; +Landroid/hardware/power/stats/EnergyConsumer; +Landroid/hardware/power/stats/IPowerStats$Stub$Proxy; +Landroid/hardware/power/stats/IPowerStats$Stub; +Landroid/hardware/power/stats/IPowerStats; +Landroid/net/ConnectivityModuleConnector$Dependencies; +Landroid/net/ConnectivityModuleConnector$DependenciesImpl; +Landroid/net/ConnectivityModuleConnector; +Landroid/os/BatteryStatsInternal; +Landroid/power/PowerStatsInternal; +Landroid/sysprop/SurfaceFlingerProperties; +Lcom/android/modules/utils/build/SdkLevel; +Lcom/android/modules/utils/build/UnboundedSdkLevel; +Lcom/android/server/AnimationThread; +Lcom/android/server/AppFuseMountException; Lcom/android/server/BatteryService$LocalService; Lcom/android/server/BinaryTransparencyService$BinaryTransparencyServiceImpl$$ExternalSyntheticLambda0; +Lcom/android/server/BundleUtils; +Lcom/android/server/ConsumerIrService; Lcom/android/server/DeviceIdleController$LocalService; +Lcom/android/server/DisplayThread; +Lcom/android/server/EventLogTags; +Lcom/android/server/ExplicitHealthCheckController; +Lcom/android/server/FgThread; +Lcom/android/server/HardwarePropertiesManagerService; +Lcom/android/server/IntentResolver$1; +Lcom/android/server/IntentResolver; +Lcom/android/server/IoThread; +Lcom/android/server/LocalManagerRegistry$ManagerNotFoundException; +Lcom/android/server/LocalManagerRegistry; +Lcom/android/server/LockGuard$LockInfo; +Lcom/android/server/LockGuard; +Lcom/android/server/PackageWatchdog$$ExternalSyntheticLambda0; +Lcom/android/server/PackageWatchdog$$ExternalSyntheticLambda1; +Lcom/android/server/PackageWatchdog$$ExternalSyntheticLambda2; +Lcom/android/server/PackageWatchdog$$ExternalSyntheticLambda3; +Lcom/android/server/PackageWatchdog$$ExternalSyntheticLambda4; +Lcom/android/server/PackageWatchdog$BootThreshold; +Lcom/android/server/PackageWatchdog$ObserverInternal; +Lcom/android/server/PackageWatchdog$PackageHealthObserver; +Lcom/android/server/PackageWatchdog$SystemClock; +Lcom/android/server/PackageWatchdog; +Lcom/android/server/RescueParty$RescuePartyObserver; +Lcom/android/server/RescueParty; +Lcom/android/server/SerialService; +Lcom/android/server/ServiceThread; +Lcom/android/server/SystemClockTime; +Lcom/android/server/SystemConfig$PermissionEntry; +Lcom/android/server/SystemConfig$SharedLibraryEntry; +Lcom/android/server/SystemConfig; +Lcom/android/server/SystemServer$$ExternalSyntheticLambda0; +Lcom/android/server/SystemServer$$ExternalSyntheticLambda1; +Lcom/android/server/SystemServer$$ExternalSyntheticLambda2; +Lcom/android/server/SystemServer$SystemServerDumper; +Lcom/android/server/SystemServer; +Lcom/android/server/SystemServerInitThreadPool$$ExternalSyntheticLambda1; +Lcom/android/server/SystemServerInitThreadPool; +Lcom/android/server/SystemService; +Lcom/android/server/SystemServiceManager; +Lcom/android/server/SystemTimeZone; +Lcom/android/server/ThreadPriorityBooster$1; +Lcom/android/server/ThreadPriorityBooster$PriorityState; +Lcom/android/server/ThreadPriorityBooster; +Lcom/android/server/UiThread; +Lcom/android/server/Watchdog$$ExternalSyntheticLambda0; +Lcom/android/server/Watchdog$1; +Lcom/android/server/Watchdog$BinderThreadMonitor; +Lcom/android/server/Watchdog$HandlerChecker; +Lcom/android/server/Watchdog$HandlerCheckerAndTimeout; +Lcom/android/server/Watchdog$Monitor; +Lcom/android/server/Watchdog$RebootRequestReceiver; +Lcom/android/server/Watchdog$SettingsObserver; +Lcom/android/server/Watchdog; +Lcom/android/server/accessibility/AccessibilityManagerService$$ExternalSyntheticLambda36; +Lcom/android/server/accessibility/BrailleDisplayConnection; +Lcom/android/server/adb/AdbDebuggingManager$PairingThread; Lcom/android/server/alarm/AlarmManagerService$LocalService; +Lcom/android/server/am/ActiveServices$1; +Lcom/android/server/am/ActiveServices$5; +Lcom/android/server/am/ActiveServices$MediaProjectionFgsTypeCustomPermission; Lcom/android/server/am/ActiveServices$ProcessAnrTimer; Lcom/android/server/am/ActiveServices$ServiceAnrTimer; +Lcom/android/server/am/ActiveServices$ServiceMap; +Lcom/android/server/am/ActiveServices$ServiceRestarter; +Lcom/android/server/am/ActiveServices$SystemExemptedFgsTypePermission; +Lcom/android/server/am/ActiveServices; +Lcom/android/server/am/ActiveUids; +Lcom/android/server/am/ActivityManagerConstants$1; +Lcom/android/server/am/ActivityManagerConstants$2; +Lcom/android/server/am/ActivityManagerConstants; +Lcom/android/server/am/ActivityManagerGlobalLock; +Lcom/android/server/am/ActivityManagerLocal; +Lcom/android/server/am/ActivityManagerProcLock; +Lcom/android/server/am/ActivityManagerService$$ExternalSyntheticLambda19; +Lcom/android/server/am/ActivityManagerService$11; +Lcom/android/server/am/ActivityManagerService$12; +Lcom/android/server/am/ActivityManagerService$14; +Lcom/android/server/am/ActivityManagerService$1; Lcom/android/server/am/ActivityManagerService$2; +Lcom/android/server/am/ActivityManagerService$5; +Lcom/android/server/am/ActivityManagerService$7; +Lcom/android/server/am/ActivityManagerService$FgsTempAllowListItem; +Lcom/android/server/am/ActivityManagerService$GetBackgroundStartPrivilegesFunctor; +Lcom/android/server/am/ActivityManagerService$HiddenApiSettings; +Lcom/android/server/am/ActivityManagerService$Injector; +Lcom/android/server/am/ActivityManagerService$IntentFirewallInterface; +Lcom/android/server/am/ActivityManagerService$Lifecycle; Lcom/android/server/am/ActivityManagerService$LocalService; +Lcom/android/server/am/ActivityManagerService$MainHandler$1; Lcom/android/server/am/ActivityManagerService$MainHandler; +Lcom/android/server/am/ActivityManagerService$PidMap; +Lcom/android/server/am/ActivityManagerService$ProcessChangeItem; +Lcom/android/server/am/ActivityManagerService$UiHandler; +Lcom/android/server/am/ActivityManagerService; +Lcom/android/server/am/ActivityManagerShellCommand; +Lcom/android/server/am/AnrHelper$$ExternalSyntheticLambda0; +Lcom/android/server/am/AnrHelper$$ExternalSyntheticLambda1; +Lcom/android/server/am/AnrHelper$AnrConsumerThread; +Lcom/android/server/am/AnrHelper; +Lcom/android/server/am/AppBatteryExemptionTracker$AppBatteryExemptionPolicy; +Lcom/android/server/am/AppBatteryExemptionTracker$UidBatteryStates; +Lcom/android/server/am/AppBatteryExemptionTracker; +Lcom/android/server/am/AppBatteryTracker$$ExternalSyntheticLambda0; +Lcom/android/server/am/AppBatteryTracker$$ExternalSyntheticLambda1; +Lcom/android/server/am/AppBatteryTracker$AppBatteryPolicy; +Lcom/android/server/am/AppBatteryTracker$BatteryUsage; +Lcom/android/server/am/AppBatteryTracker$ImmutableBatteryUsage; +Lcom/android/server/am/AppBatteryTracker; +Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy; +Lcom/android/server/am/AppBindServiceEventsTracker; +Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy; +Lcom/android/server/am/AppBroadcastEventsTracker; +Lcom/android/server/am/AppErrors; +Lcom/android/server/am/AppExitInfoTracker$1; +Lcom/android/server/am/AppExitInfoTracker$2; +Lcom/android/server/am/AppExitInfoTracker$AppExitInfoExternalSource; +Lcom/android/server/am/AppExitInfoTracker$AppTraceRetriever; +Lcom/android/server/am/AppExitInfoTracker$IsolatedUidRecords; +Lcom/android/server/am/AppExitInfoTracker$KillHandler; +Lcom/android/server/am/AppExitInfoTracker; +Lcom/android/server/am/AppFGSTracker$1; +Lcom/android/server/am/AppFGSTracker$AppFGSPolicy; +Lcom/android/server/am/AppFGSTracker$MyHandler; +Lcom/android/server/am/AppFGSTracker$NotificationListener; +Lcom/android/server/am/AppFGSTracker$PackageDurations; +Lcom/android/server/am/AppFGSTracker; +Lcom/android/server/am/AppMediaSessionTracker$$ExternalSyntheticLambda0; +Lcom/android/server/am/AppMediaSessionTracker$AppMediaSessionPolicy; +Lcom/android/server/am/AppMediaSessionTracker; +Lcom/android/server/am/AppPermissionTracker$AppPermissionPolicy; +Lcom/android/server/am/AppPermissionTracker$MyHandler; +Lcom/android/server/am/AppPermissionTracker; +Lcom/android/server/am/AppProfiler$$ExternalSyntheticLambda0; +Lcom/android/server/am/AppProfiler$1; +Lcom/android/server/am/AppProfiler$BgHandler; +Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData; +Lcom/android/server/am/AppProfiler$ProcessCpuThread; +Lcom/android/server/am/AppProfiler$ProfileData; +Lcom/android/server/am/AppProfiler; +Lcom/android/server/am/AppRestrictionController$$ExternalSyntheticLambda1; +Lcom/android/server/am/AppRestrictionController$1; +Lcom/android/server/am/AppRestrictionController$2; +Lcom/android/server/am/AppRestrictionController$3; +Lcom/android/server/am/AppRestrictionController$4; +Lcom/android/server/am/AppRestrictionController$5; +Lcom/android/server/am/AppRestrictionController$BgHandler; +Lcom/android/server/am/AppRestrictionController$ConstantsObserver; +Lcom/android/server/am/AppRestrictionController$Injector; +Lcom/android/server/am/AppRestrictionController$NotificationHelper$1; +Lcom/android/server/am/AppRestrictionController$NotificationHelper; +Lcom/android/server/am/AppRestrictionController$RestrictionSettings; +Lcom/android/server/am/AppRestrictionController$TrackerInfo; +Lcom/android/server/am/AppRestrictionController$UidBatteryUsageProvider; +Lcom/android/server/am/AppRestrictionController; +Lcom/android/server/am/AppStartInfoTracker$1; +Lcom/android/server/am/AppStartInfoTracker$2; +Lcom/android/server/am/AppStartInfoTracker; +Lcom/android/server/am/ApplicationThreadDeferred; +Lcom/android/server/am/BaseAppStateDurations; +Lcom/android/server/am/BaseAppStateDurationsTracker$SimplePackageDurations; +Lcom/android/server/am/BaseAppStateDurationsTracker$UidStateDurations; +Lcom/android/server/am/BaseAppStateDurationsTracker; +Lcom/android/server/am/BaseAppStateEvents$Factory; +Lcom/android/server/am/BaseAppStateEvents$MaxTrackingDurationConfig; +Lcom/android/server/am/BaseAppStateEvents; +Lcom/android/server/am/BaseAppStateEventsTracker$BaseAppStateEventsPolicy; +Lcom/android/server/am/BaseAppStateEventsTracker; +Lcom/android/server/am/BaseAppStatePolicy; +Lcom/android/server/am/BaseAppStateTimeEvents; +Lcom/android/server/am/BaseAppStateTimeSlotEvents; +Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy; +Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$H; +Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents; +Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker; +Lcom/android/server/am/BaseAppStateTracker$Injector; +Lcom/android/server/am/BaseAppStateTracker$StateListener; +Lcom/android/server/am/BaseAppStateTracker; +Lcom/android/server/am/BaseErrorDialog; +Lcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda14; +Lcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda15; +Lcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda16; +Lcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda33; +Lcom/android/server/am/BatteryStatsService$1; +Lcom/android/server/am/BatteryStatsService$2; Lcom/android/server/am/BatteryStatsService$3; Lcom/android/server/am/BatteryStatsService$LocalService; +Lcom/android/server/am/BatteryStatsService$WakeupReasonThread; +Lcom/android/server/am/BatteryStatsService; +Lcom/android/server/am/BroadcastConstants$SettingsObserver; +Lcom/android/server/am/BroadcastConstants; +Lcom/android/server/am/BroadcastController$1; +Lcom/android/server/am/BroadcastController; +Lcom/android/server/am/BroadcastDeliveryFailedException; +Lcom/android/server/am/BroadcastFilter; +Lcom/android/server/am/BroadcastHistory; +Lcom/android/server/am/BroadcastProcessQueue$BroadcastConsumer; +Lcom/android/server/am/BroadcastProcessQueue$BroadcastPredicate; +Lcom/android/server/am/BroadcastProcessQueue$BroadcastRecordConsumer; +Lcom/android/server/am/BroadcastProcessQueue; +Lcom/android/server/am/BroadcastQueue; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda12; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda13; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda14; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda15; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda16; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda17; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda18; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda6; +Lcom/android/server/am/BroadcastQueueModernImpl$$ExternalSyntheticLambda7; Lcom/android/server/am/BroadcastQueueModernImpl$BroadcastAnrTimer; +Lcom/android/server/am/BroadcastQueueModernImpl; +Lcom/android/server/am/BroadcastRecord; +Lcom/android/server/am/BroadcastRetryException; +Lcom/android/server/am/BroadcastSkipPolicy; +Lcom/android/server/am/CacheOomRanker$1; +Lcom/android/server/am/CacheOomRanker$CacheUseComparator; +Lcom/android/server/am/CacheOomRanker$LastActivityTimeComparator; +Lcom/android/server/am/CacheOomRanker$LastRssComparator; +Lcom/android/server/am/CacheOomRanker$ProcessDependencies; +Lcom/android/server/am/CacheOomRanker$ProcessDependenciesImpl; +Lcom/android/server/am/CacheOomRanker$RssComparator; +Lcom/android/server/am/CacheOomRanker$ScoreComparator; +Lcom/android/server/am/CacheOomRanker; +Lcom/android/server/am/CachedAppOptimizer$1; +Lcom/android/server/am/CachedAppOptimizer$2; +Lcom/android/server/am/CachedAppOptimizer$3; +Lcom/android/server/am/CachedAppOptimizer$4; +Lcom/android/server/am/CachedAppOptimizer$AggregatedCompactionStats; +Lcom/android/server/am/CachedAppOptimizer$AggregatedProcessCompactionStats; +Lcom/android/server/am/CachedAppOptimizer$AggregatedSourceCompactionStats; +Lcom/android/server/am/CachedAppOptimizer$CancelCompactReason; +Lcom/android/server/am/CachedAppOptimizer$CompactProfile; +Lcom/android/server/am/CachedAppOptimizer$CompactSource; +Lcom/android/server/am/CachedAppOptimizer$DefaultProcessDependencies; +Lcom/android/server/am/CachedAppOptimizer$FreezeHandler; +Lcom/android/server/am/CachedAppOptimizer$MemCompactionHandler; +Lcom/android/server/am/CachedAppOptimizer$ProcessDependencies; +Lcom/android/server/am/CachedAppOptimizer$PropertyChangedCallbackForTest; +Lcom/android/server/am/CachedAppOptimizer$SettingsContentObserver; +Lcom/android/server/am/CachedAppOptimizer; +Lcom/android/server/am/ComponentAliasResolver$1; +Lcom/android/server/am/ComponentAliasResolver; +Lcom/android/server/am/ContentProviderConnection; +Lcom/android/server/am/ContentProviderHelper; +Lcom/android/server/am/DropboxRateLimiter$Clock; +Lcom/android/server/am/DropboxRateLimiter$DefaultClock; +Lcom/android/server/am/DropboxRateLimiter; +Lcom/android/server/am/FgsTempAllowList; +Lcom/android/server/am/ForegroundServiceTypeLoggerModule; +Lcom/android/server/am/Freezer; +Lcom/android/server/am/HostingRecord; +Lcom/android/server/am/InstrumentationReporter$MyThread; +Lcom/android/server/am/InstrumentationReporter; +Lcom/android/server/am/LmkdConnection$LmkdConnectionListener; +Lcom/android/server/am/LmkdConnection; +Lcom/android/server/am/LowMemDetector$LowMemThread; +Lcom/android/server/am/LowMemDetector; +Lcom/android/server/am/NativeCrashListener; +Lcom/android/server/am/OomAdjuster$$ExternalSyntheticLambda0; +Lcom/android/server/am/OomAdjuster$1; Lcom/android/server/am/OomAdjuster$ComputeOomAdjWindowCallback; +Lcom/android/server/am/OomAdjuster$Injector; +Lcom/android/server/am/OomAdjuster; +Lcom/android/server/am/OomAdjusterDebugLogger; +Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionIgnoringReachableClientsConsumer; +Lcom/android/server/am/OomAdjusterModernImpl$ComputeConnectionsConsumer; +Lcom/android/server/am/OomAdjusterModernImpl$ComputeHostConsumer; +Lcom/android/server/am/OomAdjusterModernImpl$Connection; +Lcom/android/server/am/OomAdjusterModernImpl$OomAdjusterArgs; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda0; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda1; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda2; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$$ExternalSyntheticLambda3; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList; +Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes; +Lcom/android/server/am/OomAdjusterModernImpl$ReachableCollectingConsumer; +Lcom/android/server/am/OomAdjusterModernImpl; +Lcom/android/server/am/OomConnection$OomConnectionListener; +Lcom/android/server/am/OomConnection$OomConnectionThread; +Lcom/android/server/am/OomConnection; +Lcom/android/server/am/PendingIntentController; +Lcom/android/server/am/PendingIntentRecord; +Lcom/android/server/am/PendingStartActivityUids; +Lcom/android/server/am/PendingTempAllowlists; +Lcom/android/server/am/PhantomProcessList$Injector; +Lcom/android/server/am/PhantomProcessList; +Lcom/android/server/am/PreBootBroadcaster; +Lcom/android/server/am/ProcessList$$ExternalSyntheticLambda4; +Lcom/android/server/am/ProcessList$1; +Lcom/android/server/am/ProcessList$2; +Lcom/android/server/am/ProcessList$ImperceptibleKillRunner$H; +Lcom/android/server/am/ProcessList$ImperceptibleKillRunner$IdlenessReceiver; +Lcom/android/server/am/ProcessList$ImperceptibleKillRunner; +Lcom/android/server/am/ProcessList$IsolatedUidRange; +Lcom/android/server/am/ProcessList$IsolatedUidRangeAllocator; +Lcom/android/server/am/ProcessList$KillHandler; +Lcom/android/server/am/ProcessList$MyProcessMap; +Lcom/android/server/am/ProcessList$ProcStartHandler; +Lcom/android/server/am/ProcessList; Lcom/android/server/am/ProcessRecord; +Lcom/android/server/am/ProcessStatsService$1; +Lcom/android/server/am/ProcessStatsService$3; +Lcom/android/server/am/ProcessStatsService$4; +Lcom/android/server/am/ProcessStatsService$LocalService; +Lcom/android/server/am/ProcessStatsService; +Lcom/android/server/am/ProviderMap; +Lcom/android/server/am/ReceiverList; +Lcom/android/server/am/ServiceRecord; +Lcom/android/server/am/TraceErrorLogger; +Lcom/android/server/am/UidObserverController$$ExternalSyntheticLambda0; +Lcom/android/server/am/UidObserverController$ChangeRecord; +Lcom/android/server/am/UidObserverController; +Lcom/android/server/am/UidProcessMap; +Lcom/android/server/am/UserController$1; +Lcom/android/server/am/UserController$Injector$1; +Lcom/android/server/am/UserController$Injector; +Lcom/android/server/am/UserController$UserProgressListener; +Lcom/android/server/am/UserController; +Lcom/android/server/am/UserState; +Lcom/android/server/app/GameManagerService$LocalService; +Lcom/android/server/app/GameManagerService; Lcom/android/server/app/GameServiceProviderInstanceImpl$4; Lcom/android/server/apphibernation/AppHibernationService$$ExternalSyntheticLambda0; Lcom/android/server/apphibernation/AppHibernationService$LocalService; +Lcom/android/server/appop/AppOpMigrationHelper; +Lcom/android/server/appop/AppOpMigrationHelperImpl; +Lcom/android/server/appop/AppOpsCheckingServiceImpl; +Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener; +Lcom/android/server/appop/AppOpsCheckingServiceInterface; +Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator; +Lcom/android/server/appop/AppOpsManagerLocal; +Lcom/android/server/appop/AppOpsRecentAccessPersistence; +Lcom/android/server/appop/AppOpsRestrictions$AppOpsRestrictionRemovedListener; +Lcom/android/server/appop/AppOpsRestrictions; +Lcom/android/server/appop/AppOpsRestrictionsImpl; +Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda6; +Lcom/android/server/appop/AppOpsService$1$1; +Lcom/android/server/appop/AppOpsService$1; Lcom/android/server/appop/AppOpsService$2; +Lcom/android/server/appop/AppOpsService$3; +Lcom/android/server/appop/AppOpsService$4; +Lcom/android/server/appop/AppOpsService$8; Lcom/android/server/appop/AppOpsService$AppOpsManagerInternalImpl; +Lcom/android/server/appop/AppOpsService$AppOpsManagerLocalImpl; Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11; Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda1; Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7; Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda9; +Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher; +Lcom/android/server/appop/AppOpsService$Constants; +Lcom/android/server/appop/AppOpsService$ModeCallback; +Lcom/android/server/appop/AppOpsService$Op; +Lcom/android/server/appop/AppOpsService$Ops; +Lcom/android/server/appop/AppOpsService$Shell; +Lcom/android/server/appop/AppOpsService$UidState; +Lcom/android/server/appop/AppOpsService; +Lcom/android/server/appop/AppOpsUidStateTracker; +Lcom/android/server/appop/AppOpsUidStateTrackerImpl; +Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool; +Lcom/android/server/appop/AttributedOp$OpEventProxyInfoPool; +Lcom/android/server/appop/AttributedOp; +Lcom/android/server/appop/AudioRestrictionManager; +Lcom/android/server/appop/DiscreteRegistry$DiscreteOps; +Lcom/android/server/appop/DiscreteRegistry; +Lcom/android/server/appop/HistoricalRegistry$1; +Lcom/android/server/appop/HistoricalRegistry; +Lcom/android/server/appop/OnOpModeChangedListener; +Lcom/android/server/biometrics/sensors/face/FaceService; Lcom/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider$BiometricTaskStackListener; -Lcom/android/server/connectivity/MultipathPolicyTracker$2; +Lcom/android/server/broadcastradio/hal1/BroadcastRadioService; +Lcom/android/server/broadcastradio/hal1/Convert; +Lcom/android/server/broadcastradio/hal1/Tuner; +Lcom/android/server/broadcastradio/hal1/TunerCallback; +Lcom/android/server/companion/virtual/GenericWindowPolicyController$RunningAppsChangedListener; +Lcom/android/server/companion/virtual/InputController; +Lcom/android/server/companion/virtual/VirtualDeviceImpl; +Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal; +Lcom/android/server/compat/CompatChange$ChangeListener; +Lcom/android/server/compat/CompatChange; +Lcom/android/server/compat/CompatConfig; +Lcom/android/server/compat/OverrideValidatorImpl$SettingsObserver; +Lcom/android/server/compat/OverrideValidatorImpl; +Lcom/android/server/compat/PlatformCompat$1; +Lcom/android/server/compat/PlatformCompat; +Lcom/android/server/compat/PlatformCompatNative; +Lcom/android/server/compat/config/Change; +Lcom/android/server/compat/config/Config; +Lcom/android/server/compat/config/XmlParser; +Lcom/android/server/connectivity/Vpn; +Lcom/android/server/coverage/CoverageService; +Lcom/android/server/crashrecovery/CrashRecoveryHelper; +Lcom/android/server/criticalevents/CriticalEventLog$$ExternalSyntheticLambda0; +Lcom/android/server/criticalevents/CriticalEventLog$$ExternalSyntheticLambda1; +Lcom/android/server/criticalevents/CriticalEventLog$ILogLoader; +Lcom/android/server/criticalevents/CriticalEventLog$LogLoader; +Lcom/android/server/criticalevents/CriticalEventLog$ThreadSafeRingBuffer; +Lcom/android/server/criticalevents/CriticalEventLog; +Lcom/android/server/devicepolicy/CryptoTestHelper; Lcom/android/server/display/AutomaticBrightnessController$TaskStackListenerImpl; +Lcom/android/server/display/DeviceStateToLayoutMap; +Lcom/android/server/display/DisplayAdapter$$ExternalSyntheticLambda0; +Lcom/android/server/display/DisplayAdapter$$ExternalSyntheticLambda1; +Lcom/android/server/display/DisplayAdapter$Listener; +Lcom/android/server/display/DisplayAdapter; +Lcom/android/server/display/DisplayBlanker; +Lcom/android/server/display/DisplayControl; +Lcom/android/server/display/DisplayDevice; +Lcom/android/server/display/DisplayDeviceConfig$$ExternalSyntheticLambda0; +Lcom/android/server/display/DisplayDeviceConfig$1; +Lcom/android/server/display/DisplayDeviceConfig$ThermalBrightnessThrottlingData$ThrottlingLevel; +Lcom/android/server/display/DisplayDeviceConfig$ThermalBrightnessThrottlingData; +Lcom/android/server/display/DisplayDeviceConfig; +Lcom/android/server/display/DisplayDeviceInfo; +Lcom/android/server/display/DisplayDeviceRepository$Listener; +Lcom/android/server/display/DisplayDeviceRepository; +Lcom/android/server/display/DisplayGroup; +Lcom/android/server/display/DisplayInfoProxy; +Lcom/android/server/display/DisplayManagerService$$ExternalSyntheticLambda4; +Lcom/android/server/display/DisplayManagerService$1; +Lcom/android/server/display/DisplayManagerService$2; +Lcom/android/server/display/DisplayManagerService$3; +Lcom/android/server/display/DisplayManagerService$BinderService; +Lcom/android/server/display/DisplayManagerService$BrightnessPair; +Lcom/android/server/display/DisplayManagerService$DisplayManagerHandler; +Lcom/android/server/display/DisplayManagerService$ExternalDisplayPolicyInjector; +Lcom/android/server/display/DisplayManagerService$Injector; Lcom/android/server/display/DisplayManagerService$LocalService; +Lcom/android/server/display/DisplayManagerService$LogicalDisplayListener; +Lcom/android/server/display/DisplayManagerService$SyncRoot; +Lcom/android/server/display/DisplayManagerService$UidImportanceListener; +Lcom/android/server/display/DisplayManagerService; +Lcom/android/server/display/DisplayManagerShellCommand; +Lcom/android/server/display/ExternalDisplayPolicy$Injector; +Lcom/android/server/display/ExternalDisplayPolicy$SkinThermalStatusObserver; +Lcom/android/server/display/ExternalDisplayPolicy; +Lcom/android/server/display/ExternalDisplayStatsService$1$$ExternalSyntheticLambda0; +Lcom/android/server/display/ExternalDisplayStatsService$1$$ExternalSyntheticLambda1; +Lcom/android/server/display/ExternalDisplayStatsService$1; +Lcom/android/server/display/ExternalDisplayStatsService$2; +Lcom/android/server/display/ExternalDisplayStatsService$Injector; +Lcom/android/server/display/ExternalDisplayStatsService; +Lcom/android/server/display/HighBrightnessModeMetadataMapper; +Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter; +Lcom/android/server/display/LocalDisplayAdapter$DisplayEventListener; +Lcom/android/server/display/LocalDisplayAdapter$DisplayModeRecord; +Lcom/android/server/display/LocalDisplayAdapter$Injector; +Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice; +Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayEventListener; +Lcom/android/server/display/LocalDisplayAdapter$ProxyDisplayEventReceiver; +Lcom/android/server/display/LocalDisplayAdapter$SurfaceControlProxy; +Lcom/android/server/display/LocalDisplayAdapter; +Lcom/android/server/display/LogicalDisplay; +Lcom/android/server/display/LogicalDisplayMapper$$ExternalSyntheticLambda2; +Lcom/android/server/display/LogicalDisplayMapper$$ExternalSyntheticLambda3; +Lcom/android/server/display/LogicalDisplayMapper$Listener; +Lcom/android/server/display/LogicalDisplayMapper$LogicalDisplayMapperHandler; +Lcom/android/server/display/LogicalDisplayMapper; +Lcom/android/server/display/OverlayDisplayAdapter; +Lcom/android/server/display/PersistentDataStore$BrightnessConfigurations; +Lcom/android/server/display/PersistentDataStore$DisplayState; +Lcom/android/server/display/PersistentDataStore$Injector; +Lcom/android/server/display/PersistentDataStore$StableDeviceValues; +Lcom/android/server/display/PersistentDataStore; +Lcom/android/server/display/SmallAreaDetectionController; +Lcom/android/server/display/VirtualDisplayAdapter$1; +Lcom/android/server/display/VirtualDisplayAdapter$SurfaceControlDisplayFactory; +Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice; +Lcom/android/server/display/VirtualDisplayAdapter; +Lcom/android/server/display/WifiDisplayAdapter; +Lcom/android/server/display/config/AutoBrightnessModeName; +Lcom/android/server/display/config/AutoBrightnessSettingName; +Lcom/android/server/display/config/BrightnessThresholds; +Lcom/android/server/display/config/BrightnessThrottlingMap; +Lcom/android/server/display/config/BrightnessThrottlingPoint; +Lcom/android/server/display/config/DisplayBrightnessMappingConfig; +Lcom/android/server/display/config/DisplayConfiguration; +Lcom/android/server/display/config/HbmTiming; +Lcom/android/server/display/config/HdrBrightnessData; +Lcom/android/server/display/config/HighBrightnessMode; +Lcom/android/server/display/config/HighBrightnessModeData; +Lcom/android/server/display/config/HysteresisLevels; +Lcom/android/server/display/config/IntegerArray; +Lcom/android/server/display/config/NitsMap; +Lcom/android/server/display/config/Point; +Lcom/android/server/display/config/PredefinedBrightnessLimitNames; +Lcom/android/server/display/config/RefreshRateData; +Lcom/android/server/display/config/SensorData; +Lcom/android/server/display/config/SensorDetails; +Lcom/android/server/display/config/SupportedModeData; +Lcom/android/server/display/config/ThermalStatus; +Lcom/android/server/display/config/ThermalThrottling; +Lcom/android/server/display/config/Thresholds; +Lcom/android/server/display/config/XmlParser; +Lcom/android/server/display/feature/DeviceConfigParameterProvider; +Lcom/android/server/display/feature/DisplayManagerFlags$$ExternalSyntheticLambda0; +Lcom/android/server/display/feature/DisplayManagerFlags$$ExternalSyntheticLambda1; +Lcom/android/server/display/feature/DisplayManagerFlags$FlagState; +Lcom/android/server/display/feature/DisplayManagerFlags; +Lcom/android/server/display/layout/DisplayIdProducer; +Lcom/android/server/display/layout/Layout$Display; +Lcom/android/server/display/layout/Layout; +Lcom/android/server/display/mode/DisplayModeDirector$$ExternalSyntheticLambda0; +Lcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda10; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda11; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda12; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda13; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda2; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda5; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda6; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda7; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda8; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$$ExternalSyntheticLambda9; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$1; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$LightSensorEventListener$1; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver$LightSensorEventListener; +Lcom/android/server/display/mode/DisplayModeDirector$BrightnessObserver; +Lcom/android/server/display/mode/DisplayModeDirector$DesiredDisplayModeSpecs; +Lcom/android/server/display/mode/DisplayModeDirector$DeviceConfigDisplaySettings$$ExternalSyntheticLambda0; +Lcom/android/server/display/mode/DisplayModeDirector$DeviceConfigDisplaySettings$$ExternalSyntheticLambda1; +Lcom/android/server/display/mode/DisplayModeDirector$DeviceConfigDisplaySettings$$ExternalSyntheticLambda2; +Lcom/android/server/display/mode/DisplayModeDirector$DeviceConfigDisplaySettings$$ExternalSyntheticLambda3; +Lcom/android/server/display/mode/DisplayModeDirector$DeviceConfigDisplaySettings; +Lcom/android/server/display/mode/DisplayModeDirector$DisplayDeviceConfigProvider; +Lcom/android/server/display/mode/DisplayModeDirector$DisplayModeDirectorHandler; +Lcom/android/server/display/mode/DisplayModeDirector$DisplayObserver; +Lcom/android/server/display/mode/DisplayModeDirector$HbmObserver; +Lcom/android/server/display/mode/DisplayModeDirector$Injector; +Lcom/android/server/display/mode/DisplayModeDirector$RealInjector; +Lcom/android/server/display/mode/DisplayModeDirector$SettingsObserver$1; +Lcom/android/server/display/mode/DisplayModeDirector$SettingsObserver; +Lcom/android/server/display/mode/DisplayModeDirector$UdfpsObserver; +Lcom/android/server/display/mode/DisplayModeDirector; +Lcom/android/server/display/mode/ProximitySensorObserver; +Lcom/android/server/display/mode/RefreshRateVote$PhysicalVote; +Lcom/android/server/display/mode/RefreshRateVote$RenderVote; +Lcom/android/server/display/mode/RefreshRateVote; +Lcom/android/server/display/mode/SkinThermalStatusObserver; +Lcom/android/server/display/mode/SupportedRefreshRatesVote; +Lcom/android/server/display/mode/SyntheticModeManager; +Lcom/android/server/display/mode/SystemRequestObserver$1; +Lcom/android/server/display/mode/SystemRequestObserver; +Lcom/android/server/display/mode/Vote; +Lcom/android/server/display/mode/VotesStatsReporter; +Lcom/android/server/display/mode/VotesStorage$Listener; +Lcom/android/server/display/mode/VotesStorage; +Lcom/android/server/display/notifications/ConnectedDisplayUsbErrorsDetector$Listener; +Lcom/android/server/display/notifications/DisplayNotificationManager$1; +Lcom/android/server/display/notifications/DisplayNotificationManager$Injector; +Lcom/android/server/display/notifications/DisplayNotificationManager; +Lcom/android/server/display/utils/DebugUtils; +Lcom/android/server/display/utils/DeviceConfigParsingUtils; Lcom/android/server/dreams/DreamManagerService$LocalService; +Lcom/android/server/firewall/AndFilter$1; +Lcom/android/server/firewall/AndFilter; +Lcom/android/server/firewall/CategoryFilter$1; +Lcom/android/server/firewall/CategoryFilter; +Lcom/android/server/firewall/Filter; +Lcom/android/server/firewall/FilterFactory; +Lcom/android/server/firewall/FilterList; +Lcom/android/server/firewall/IntentFirewall$AMSInterface; +Lcom/android/server/firewall/IntentFirewall$FirewallHandler; +Lcom/android/server/firewall/IntentFirewall$FirewallIntentFilter; +Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver; +Lcom/android/server/firewall/IntentFirewall$Rule; +Lcom/android/server/firewall/IntentFirewall$RuleObserver; +Lcom/android/server/firewall/IntentFirewall; +Lcom/android/server/firewall/NotFilter$1; +Lcom/android/server/firewall/NotFilter; +Lcom/android/server/firewall/OrFilter$1; +Lcom/android/server/firewall/OrFilter; +Lcom/android/server/firewall/PortFilter$1; +Lcom/android/server/firewall/PortFilter; +Lcom/android/server/firewall/SenderFilter$1; +Lcom/android/server/firewall/SenderFilter$2; +Lcom/android/server/firewall/SenderFilter$3; +Lcom/android/server/firewall/SenderFilter$4; +Lcom/android/server/firewall/SenderFilter$5; +Lcom/android/server/firewall/SenderFilter; +Lcom/android/server/firewall/SenderPackageFilter$1; +Lcom/android/server/firewall/SenderPackageFilter; +Lcom/android/server/firewall/SenderPermissionFilter$1; +Lcom/android/server/firewall/SenderPermissionFilter; +Lcom/android/server/firewall/StringFilter$10; +Lcom/android/server/firewall/StringFilter$1; +Lcom/android/server/firewall/StringFilter$2; +Lcom/android/server/firewall/StringFilter$3; +Lcom/android/server/firewall/StringFilter$4; +Lcom/android/server/firewall/StringFilter$5; +Lcom/android/server/firewall/StringFilter$6; +Lcom/android/server/firewall/StringFilter$7; +Lcom/android/server/firewall/StringFilter$8; +Lcom/android/server/firewall/StringFilter$9; +Lcom/android/server/firewall/StringFilter$ContainsFilter; +Lcom/android/server/firewall/StringFilter$EqualsFilter; +Lcom/android/server/firewall/StringFilter$IsNullFilter; +Lcom/android/server/firewall/StringFilter$PatternStringFilter; +Lcom/android/server/firewall/StringFilter$RegexFilter; +Lcom/android/server/firewall/StringFilter$StartsWithFilter; +Lcom/android/server/firewall/StringFilter$ValueProvider; +Lcom/android/server/firewall/StringFilter; +Lcom/android/server/flags/DynamicFlagBinderDelegate$$ExternalSyntheticLambda0; +Lcom/android/server/flags/DynamicFlagBinderDelegate$$ExternalSyntheticLambda1; +Lcom/android/server/flags/DynamicFlagBinderDelegate$1; +Lcom/android/server/flags/DynamicFlagBinderDelegate$BinderGriever; +Lcom/android/server/flags/DynamicFlagBinderDelegate; +Lcom/android/server/flags/FeatureFlagsBinder; +Lcom/android/server/flags/FeatureFlagsService$PermissionsChecker; +Lcom/android/server/flags/FeatureFlagsService; +Lcom/android/server/flags/FlagCache$$ExternalSyntheticLambda0; +Lcom/android/server/flags/FlagCache; +Lcom/android/server/flags/FlagOverrideStore$FlagChangeCallback; +Lcom/android/server/flags/FlagOverrideStore; +Lcom/android/server/flags/FlagsShellCommand; +Lcom/android/server/flags/GlobalSettingsProxy; +Lcom/android/server/flags/SettingsProxy; +Lcom/android/server/gpu/GpuService; +Lcom/android/server/graphics/fonts/FontManagerService$Lifecycle; +Lcom/android/server/input/InputManagerInternal; +Lcom/android/server/input/InputManagerService$2; +Lcom/android/server/input/InputManagerService$AdditionalDisplayInputProperties; +Lcom/android/server/input/InputManagerService$InputFilterHost; +Lcom/android/server/input/InputManagerService$InputManagerHandler; Lcom/android/server/input/InputManagerService$LocalService; +Lcom/android/server/input/InputManagerService; +Lcom/android/server/input/InputShellCommand; +Lcom/android/server/input/NativeInputManagerService$NativeImpl; +Lcom/android/server/input/NativeInputManagerService; +Lcom/android/server/input/TouchpadFingerState; +Lcom/android/server/input/TouchpadHardwareProperties; +Lcom/android/server/input/TouchpadHardwareState; +Lcom/android/server/input/debug/FocusEventDebugView; Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl; Lcom/android/server/job/JobSchedulerService$4; Lcom/android/server/job/controllers/BackgroundJobsController$2; Lcom/android/server/job/controllers/QuotaController$TempAllowlistTracker; +Lcom/android/server/lights/LightsManager; +Lcom/android/server/lights/LightsService$1; Lcom/android/server/lights/LightsService$LightImpl; -Lcom/android/server/location/provider/StationaryThrottlingLocationProvider; +Lcom/android/server/lights/LightsService$LightsManagerBinderService; +Lcom/android/server/lights/LightsService$VintfHalCache; +Lcom/android/server/lights/LightsService; +Lcom/android/server/lights/LogicalLight; +Lcom/android/server/location/gnss/GnssConfiguration; +Lcom/android/server/location/gnss/GnssNetworkConnectivityHandler; +Lcom/android/server/location/gnss/GnssVisibilityControl; +Lcom/android/server/location/gnss/hal/GnssNative; +Lcom/android/server/locksettings/SyntheticPasswordManager; Lcom/android/server/media/projection/MediaProjectionManagerService$1; Lcom/android/server/net/NetworkManagementService$LocalService; Lcom/android/server/net/NetworkManagementService$NetdUnsolicitedEventListener; Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl; Lcom/android/server/net/watchlist/NetworkWatchlistService$1; Lcom/android/server/notification/NotificationManagerService$13; +Lcom/android/server/om/OverlayActorEnforcer$ActorState; +Lcom/android/server/om/OverlayActorEnforcer; +Lcom/android/server/om/OverlayManagerService; +Lcom/android/server/om/OverlayReferenceMapper$1; +Lcom/android/server/om/OverlayReferenceMapper$Provider; +Lcom/android/server/om/OverlayReferenceMapper; +Lcom/android/server/os/DeviceIdentifiersPolicyService$DeviceIdentifiersPolicy; +Lcom/android/server/os/DeviceIdentifiersPolicyService; +Lcom/android/server/pdb/PersistentDataBlockService; +Lcom/android/server/permission/PermissionManagerLocal; +Lcom/android/server/permission/access/AccessCheckingService; +Lcom/android/server/permission/access/AccessPersistence$Companion; +Lcom/android/server/permission/access/AccessPersistence$WriteHandler; +Lcom/android/server/permission/access/AccessPersistence; +Lcom/android/server/permission/access/AccessPolicy$Companion; +Lcom/android/server/permission/access/AccessPolicy; +Lcom/android/server/permission/access/AccessState; +Lcom/android/server/permission/access/ExternalState; +Lcom/android/server/permission/access/GetStateScope; +Lcom/android/server/permission/access/MutableAccessState; +Lcom/android/server/permission/access/MutableExternalState; +Lcom/android/server/permission/access/MutableSystemState; +Lcom/android/server/permission/access/MutableUserState; +Lcom/android/server/permission/access/MutateStateScope; +Lcom/android/server/permission/access/SchemePolicy; +Lcom/android/server/permission/access/SystemState; +Lcom/android/server/permission/access/UserState; +Lcom/android/server/permission/access/WritableState; +Lcom/android/server/permission/access/appop/AppIdAppOpMigration$Companion; +Lcom/android/server/permission/access/appop/AppIdAppOpMigration; +Lcom/android/server/permission/access/appop/AppIdAppOpPersistence$Companion; +Lcom/android/server/permission/access/appop/AppIdAppOpPersistence; +Lcom/android/server/permission/access/appop/AppIdAppOpPolicy$Companion; +Lcom/android/server/permission/access/appop/AppIdAppOpPolicy$OnAppOpModeChangedListener; +Lcom/android/server/permission/access/appop/AppIdAppOpPolicy; +Lcom/android/server/permission/access/appop/AppIdAppOpUpgrade; +Lcom/android/server/permission/access/appop/AppOpService$Companion; +Lcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener; +Lcom/android/server/permission/access/appop/AppOpService$OnPackageAppOpModeChangedListener; Lcom/android/server/permission/access/appop/AppOpService; +Lcom/android/server/permission/access/appop/BaseAppOpPersistence$Companion; +Lcom/android/server/permission/access/appop/BaseAppOpPersistence; +Lcom/android/server/permission/access/appop/BaseAppOpPolicy; +Lcom/android/server/permission/access/appop/PackageAppOpMigration$Companion; +Lcom/android/server/permission/access/appop/PackageAppOpMigration; +Lcom/android/server/permission/access/appop/PackageAppOpPersistence$Companion; +Lcom/android/server/permission/access/appop/PackageAppOpPersistence; +Lcom/android/server/permission/access/appop/PackageAppOpPolicy$Companion; +Lcom/android/server/permission/access/appop/PackageAppOpPolicy$OnAppOpModeChangedListener; +Lcom/android/server/permission/access/appop/PackageAppOpPolicy; +Lcom/android/server/permission/access/appop/PackageAppOpUpgrade; +Lcom/android/server/permission/access/collection/ArraySetExtensionsKt; +Lcom/android/server/permission/access/immutable/Immutable; +Lcom/android/server/permission/access/immutable/IndexedList; +Lcom/android/server/permission/access/immutable/IndexedListSet; +Lcom/android/server/permission/access/immutable/IndexedListSetExtensionsKt; +Lcom/android/server/permission/access/immutable/IndexedMap; +Lcom/android/server/permission/access/immutable/IndexedReferenceMap; +Lcom/android/server/permission/access/immutable/IndexedSet; +Lcom/android/server/permission/access/immutable/IndexedSetExtensionsKt; +Lcom/android/server/permission/access/immutable/IntMap; +Lcom/android/server/permission/access/immutable/IntMapExtensionsKt; +Lcom/android/server/permission/access/immutable/IntMapKt; +Lcom/android/server/permission/access/immutable/IntReferenceMap; +Lcom/android/server/permission/access/immutable/IntReferenceMapExtensionsKt; +Lcom/android/server/permission/access/immutable/IntSet; +Lcom/android/server/permission/access/immutable/IntSetExtensionsKt; +Lcom/android/server/permission/access/immutable/MutableIndexedList; +Lcom/android/server/permission/access/immutable/MutableIndexedListSet; +Lcom/android/server/permission/access/immutable/MutableIndexedMap; +Lcom/android/server/permission/access/immutable/MutableIndexedReferenceMap; +Lcom/android/server/permission/access/immutable/MutableIndexedSet; +Lcom/android/server/permission/access/immutable/MutableIntMap; +Lcom/android/server/permission/access/immutable/MutableIntReferenceMap; +Lcom/android/server/permission/access/immutable/MutableIntSet; +Lcom/android/server/permission/access/immutable/MutableReference; +Lcom/android/server/permission/access/permission/AppIdPermissionMigration$Companion; +Lcom/android/server/permission/access/permission/AppIdPermissionMigration; +Lcom/android/server/permission/access/permission/AppIdPermissionPersistence$Companion; +Lcom/android/server/permission/access/permission/AppIdPermissionPersistence; +Lcom/android/server/permission/access/permission/AppIdPermissionPolicy$Companion; +Lcom/android/server/permission/access/permission/AppIdPermissionPolicy$OnPermissionFlagsChangedListener; +Lcom/android/server/permission/access/permission/AppIdPermissionPolicy; +Lcom/android/server/permission/access/permission/AppIdPermissionUpgrade$Companion; +Lcom/android/server/permission/access/permission/AppIdPermissionUpgrade; +Lcom/android/server/permission/access/permission/DevicePermissionPersistence$Companion; +Lcom/android/server/permission/access/permission/DevicePermissionPersistence; +Lcom/android/server/permission/access/permission/DevicePermissionPolicy$Companion; +Lcom/android/server/permission/access/permission/DevicePermissionPolicy$OnDevicePermissionFlagsChangedListener; +Lcom/android/server/permission/access/permission/DevicePermissionPolicy; +Lcom/android/server/permission/access/permission/Permission$Companion; +Lcom/android/server/permission/access/permission/Permission; +Lcom/android/server/permission/access/permission/PermissionManagerLocalImpl; +Lcom/android/server/permission/access/permission/PermissionService$Companion; +Lcom/android/server/permission/access/permission/PermissionService$OnPermissionFlagsChangedListener; +Lcom/android/server/permission/access/permission/PermissionService$OnPermissionsChangeListeners$Companion; +Lcom/android/server/permission/access/permission/PermissionService$OnPermissionsChangeListeners; +Lcom/android/server/permission/access/permission/PermissionService; +Lcom/android/server/permission/access/util/PermissionApex; +Lcom/android/server/permission/jarjar/kotlin/Pair; +Lcom/android/server/permission/jarjar/kotlin/TuplesKt; +Lcom/android/server/permission/jarjar/kotlin/UninitializedPropertyAccessException; +Lcom/android/server/permission/jarjar/kotlin/Unit; +Lcom/android/server/permission/jarjar/kotlin/collections/ArraysKt__ArraysJVMKt; +Lcom/android/server/permission/jarjar/kotlin/collections/ArraysKt__ArraysKt; +Lcom/android/server/permission/jarjar/kotlin/collections/ArraysKt___ArraysJvmKt; +Lcom/android/server/permission/jarjar/kotlin/collections/ArraysUtilJVM; +Lcom/android/server/permission/jarjar/kotlin/collections/EmptyMap; +Lcom/android/server/permission/jarjar/kotlin/collections/MapsKt__MapWithDefaultKt; +Lcom/android/server/permission/jarjar/kotlin/collections/MapsKt__MapsJVMKt; +Lcom/android/server/permission/jarjar/kotlin/collections/MapsKt__MapsKt; +Lcom/android/server/permission/jarjar/kotlin/io/CloseableKt; +Lcom/android/server/permission/jarjar/kotlin/jdk7/AutoCloseableKt; +Lcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics; +Lcom/android/server/pm/AbstractStatsBase$1; +Lcom/android/server/pm/AbstractStatsBase; +Lcom/android/server/pm/ApexManager$1; +Lcom/android/server/pm/ApexManager$ActiveApexInfo; +Lcom/android/server/pm/ApexManager$ApexManagerImpl; +Lcom/android/server/pm/ApexManager$ScanResult; +Lcom/android/server/pm/ApexManager; +Lcom/android/server/pm/ApexSystemServiceInfo; +Lcom/android/server/pm/AppDataHelper; +Lcom/android/server/pm/AppIdSettingMap; +Lcom/android/server/pm/AppsFilterBase; +Lcom/android/server/pm/AppsFilterImpl$$ExternalSyntheticLambda0; +Lcom/android/server/pm/AppsFilterImpl$1; +Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl; +Lcom/android/server/pm/AppsFilterImpl; +Lcom/android/server/pm/AppsFilterLocked; +Lcom/android/server/pm/AppsFilterSnapshot; +Lcom/android/server/pm/AppsFilterSnapshotImpl; +Lcom/android/server/pm/AppsFilterUtils; +Lcom/android/server/pm/BroadcastHelper; +Lcom/android/server/pm/ChangedPackagesTracker; +Lcom/android/server/pm/CompilerStats; +Lcom/android/server/pm/Computer; +Lcom/android/server/pm/ComputerEngine$$ExternalSyntheticLambda1; +Lcom/android/server/pm/ComputerEngine$Settings; +Lcom/android/server/pm/ComputerEngine; +Lcom/android/server/pm/ComputerLocked; +Lcom/android/server/pm/CrossProfileIntentFilter; Lcom/android/server/pm/CrossProfileIntentResolver; +Lcom/android/server/pm/CrossProfileIntentResolverEngine; +Lcom/android/server/pm/CrossProfileResolver; +Lcom/android/server/pm/DataLoaderManagerService$DataLoaderManagerBinderService; +Lcom/android/server/pm/DataLoaderManagerService; +Lcom/android/server/pm/DefaultAppProvider; +Lcom/android/server/pm/DefaultCrossProfileIntentFilter$Builder; +Lcom/android/server/pm/DefaultCrossProfileIntentFilter; +Lcom/android/server/pm/DefaultCrossProfileIntentFiltersUtils; +Lcom/android/server/pm/DefaultCrossProfileResolver; +Lcom/android/server/pm/DeletePackageAction; +Lcom/android/server/pm/DeletePackageHelper; +Lcom/android/server/pm/DexOptHelper$1; +Lcom/android/server/pm/DexOptHelper$DexoptDoneHandler; +Lcom/android/server/pm/DexOptHelper; +Lcom/android/server/pm/DistractingPackageHelper; +Lcom/android/server/pm/DomainVerificationConnection; +Lcom/android/server/pm/FeatureConfig; +Lcom/android/server/pm/FreeStorageHelper; +Lcom/android/server/pm/IncrementalProgressListener; +Lcom/android/server/pm/InitAppsHelper$$ExternalSyntheticLambda1; +Lcom/android/server/pm/InitAppsHelper$$ExternalSyntheticLambda2; +Lcom/android/server/pm/InitAppsHelper; +Lcom/android/server/pm/InstallArgs; +Lcom/android/server/pm/InstallPackageHelper$$ExternalSyntheticLambda3; +Lcom/android/server/pm/InstallPackageHelper$$ExternalSyntheticLambda4; +Lcom/android/server/pm/InstallPackageHelper; +Lcom/android/server/pm/InstallRequest; +Lcom/android/server/pm/InstallSource; +Lcom/android/server/pm/Installer$$ExternalSyntheticLambda0; +Lcom/android/server/pm/Installer$InstallerException; +Lcom/android/server/pm/Installer$LegacyDexoptDisabledException; +Lcom/android/server/pm/Installer; +Lcom/android/server/pm/InstantAppRegistry$1; +Lcom/android/server/pm/InstantAppRegistry$2; +Lcom/android/server/pm/InstantAppRegistry$CookiePersistence; +Lcom/android/server/pm/InstantAppRegistry; +Lcom/android/server/pm/InstantAppResolverConnection; +Lcom/android/server/pm/InstructionSets; +Lcom/android/server/pm/KeySetHandle; +Lcom/android/server/pm/KeySetManagerService$PublicKeyHandle; +Lcom/android/server/pm/KeySetManagerService; +Lcom/android/server/pm/KnownPackages; +Lcom/android/server/pm/ModuleInfoProvider; +Lcom/android/server/pm/MovePackageHelper$MoveCallbacks; +Lcom/android/server/pm/NoFilteringResolver; +Lcom/android/server/pm/PackageAbiHelper$Abis; +Lcom/android/server/pm/PackageAbiHelper$NativeLibraryPaths; +Lcom/android/server/pm/PackageAbiHelper; +Lcom/android/server/pm/PackageAbiHelperImpl; +Lcom/android/server/pm/PackageArchiver$FixedSizeBitmapDrawable; +Lcom/android/server/pm/PackageArchiver; +Lcom/android/server/pm/PackageDexOptimizer$1; +Lcom/android/server/pm/PackageDexOptimizer$Injector; +Lcom/android/server/pm/PackageDexOptimizer; +Lcom/android/server/pm/PackageFreezer; Lcom/android/server/pm/PackageHandler; +Lcom/android/server/pm/PackageInstallerService$1; +Lcom/android/server/pm/PackageInstallerService$Lifecycle; +Lcom/android/server/pm/PackageInstallerService$PackageDeleteObserverAdapter; +Lcom/android/server/pm/PackageInstallerService; +Lcom/android/server/pm/PackageInstallerSession$1; +Lcom/android/server/pm/PackageInstallerSession$2; +Lcom/android/server/pm/PackageInstallerSession$3; +Lcom/android/server/pm/PackageInstallerSession; +Lcom/android/server/pm/PackageKeySetData; +Lcom/android/server/pm/PackageManagerException; +Lcom/android/server/pm/PackageManagerInternalBase; +Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot; +Lcom/android/server/pm/PackageManagerLocal; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda10; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda11; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda12; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda13; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda14; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda15; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda16; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda17; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda18; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda19; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda1; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda20; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda21; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda22; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda23; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda24; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda25; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda26; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda27; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda28; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda29; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda2; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda31; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda32; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda33; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda34; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda35; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda36; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda37; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda38; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda39; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda3; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda48; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda49; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda6; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda7; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda8; +Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda9; +Lcom/android/server/pm/PackageManagerService$1; +Lcom/android/server/pm/PackageManagerService$2; +Lcom/android/server/pm/PackageManagerService$3; +Lcom/android/server/pm/PackageManagerService$4; +Lcom/android/server/pm/PackageManagerService$5; +Lcom/android/server/pm/PackageManagerService$6; +Lcom/android/server/pm/PackageManagerService$DefaultSystemWrapper; Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl; Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl; +Lcom/android/server/pm/PackageManagerService$Snapshot; +Lcom/android/server/pm/PackageManagerService; +Lcom/android/server/pm/PackageManagerServiceCompilerMapping; +Lcom/android/server/pm/PackageManagerServiceInjector$Producer; +Lcom/android/server/pm/PackageManagerServiceInjector$ProducerWithArgument; +Lcom/android/server/pm/PackageManagerServiceInjector$ServiceProducer; +Lcom/android/server/pm/PackageManagerServiceInjector$Singleton; +Lcom/android/server/pm/PackageManagerServiceInjector$SystemWrapper; +Lcom/android/server/pm/PackageManagerServiceInjector; +Lcom/android/server/pm/PackageManagerServiceUtils$$ExternalSyntheticLambda0; +Lcom/android/server/pm/PackageManagerServiceUtils$$ExternalSyntheticLambda1; +Lcom/android/server/pm/PackageManagerServiceUtils$1; +Lcom/android/server/pm/PackageManagerServiceUtils; +Lcom/android/server/pm/PackageManagerShellCommandDataLoader; +Lcom/android/server/pm/PackageManagerTracedLock$RawLock; +Lcom/android/server/pm/PackageManagerTracedLock; +Lcom/android/server/pm/PackageMetrics; +Lcom/android/server/pm/PackageMonitorCallbackHelper; +Lcom/android/server/pm/PackageObserverHelper; +Lcom/android/server/pm/PackageProperty; +Lcom/android/server/pm/PackageRemovedInfo; +Lcom/android/server/pm/PackageSender; +Lcom/android/server/pm/PackageSessionProvider; +Lcom/android/server/pm/PackageSetting$1; +Lcom/android/server/pm/PackageSignatures; +Lcom/android/server/pm/PackageUsage; +Lcom/android/server/pm/ParallelPackageParser$$ExternalSyntheticLambda0; +Lcom/android/server/pm/ParallelPackageParser$ParseResult; +Lcom/android/server/pm/ParallelPackageParser; +Lcom/android/server/pm/PendingPackageBroadcasts; +Lcom/android/server/pm/PersistentPreferredActivity; +Lcom/android/server/pm/PersistentPreferredIntentResolver; +Lcom/android/server/pm/Policy$PolicyBuilder; +Lcom/android/server/pm/Policy; +Lcom/android/server/pm/PolicyComparator; +Lcom/android/server/pm/PreferredActivity$1; +Lcom/android/server/pm/PreferredActivity; +Lcom/android/server/pm/PreferredActivityHelper; +Lcom/android/server/pm/PreferredComponent$Callbacks; +Lcom/android/server/pm/PreferredComponent; +Lcom/android/server/pm/PreferredIntentResolver$1; Lcom/android/server/pm/PreferredIntentResolver; +Lcom/android/server/pm/PrepareFailure; +Lcom/android/server/pm/ProcessLoggingHandler; +Lcom/android/server/pm/ProtectedPackages; +Lcom/android/server/pm/ReconcileFailure; +Lcom/android/server/pm/ReconcilePackageUtils; +Lcom/android/server/pm/ReconciledPackage; +Lcom/android/server/pm/RemovePackageHelper; +Lcom/android/server/pm/ResilientAtomicFile$ReadEventLogger; +Lcom/android/server/pm/ResilientAtomicFile; +Lcom/android/server/pm/ResolveIntentHelper; +Lcom/android/server/pm/RestrictionsSet; +Lcom/android/server/pm/SELinuxMMAC; +Lcom/android/server/pm/ScanPackageUtils; +Lcom/android/server/pm/ScanPartition; +Lcom/android/server/pm/ScanRequest; +Lcom/android/server/pm/ScanResult; +Lcom/android/server/pm/SettingBase; +Lcom/android/server/pm/Settings$$ExternalSyntheticLambda1; +Lcom/android/server/pm/Settings$$ExternalSyntheticLambda2; +Lcom/android/server/pm/Settings$1; +Lcom/android/server/pm/Settings$2; +Lcom/android/server/pm/Settings$3; +Lcom/android/server/pm/Settings$KeySetToValueMap; +Lcom/android/server/pm/Settings$RuntimePermissionPersistence$MyHandler; +Lcom/android/server/pm/Settings$RuntimePermissionPersistence$PersistenceHandler; +Lcom/android/server/pm/Settings$RuntimePermissionPersistence; +Lcom/android/server/pm/Settings$VersionInfo; +Lcom/android/server/pm/Settings; +Lcom/android/server/pm/SettingsXml$ChildSection; +Lcom/android/server/pm/SettingsXml$ReadSection; +Lcom/android/server/pm/SettingsXml$ReadSectionImpl; +Lcom/android/server/pm/SettingsXml; +Lcom/android/server/pm/SharedLibrariesImpl$$ExternalSyntheticLambda0; +Lcom/android/server/pm/SharedLibrariesImpl$1; +Lcom/android/server/pm/SharedLibrariesImpl$2; +Lcom/android/server/pm/SharedLibrariesImpl; +Lcom/android/server/pm/SharedLibrariesRead; +Lcom/android/server/pm/SharedLibraryUtils; +Lcom/android/server/pm/SharedUidMigration; +Lcom/android/server/pm/SharedUserSetting$1; +Lcom/android/server/pm/SharedUserSetting$2; +Lcom/android/server/pm/SharedUserSetting; +Lcom/android/server/pm/SnapshotStatistics$1; +Lcom/android/server/pm/SnapshotStatistics$BinMap; +Lcom/android/server/pm/SnapshotStatistics$Stats; +Lcom/android/server/pm/SnapshotStatistics; +Lcom/android/server/pm/StorageEventHelper; +Lcom/android/server/pm/SuspendPackageHelper; +Lcom/android/server/pm/SystemDeleteException; +Lcom/android/server/pm/UpdateOwnershipHelper; +Lcom/android/server/pm/UserDataPreparer; +Lcom/android/server/pm/UserJourneyLogger; +Lcom/android/server/pm/UserManagerInternal$UserLifecycleListener; +Lcom/android/server/pm/UserManagerInternal; +Lcom/android/server/pm/UserManagerService$$ExternalSyntheticLambda1; +Lcom/android/server/pm/UserManagerService$$ExternalSyntheticLambda3; +Lcom/android/server/pm/UserManagerService$1; +Lcom/android/server/pm/UserManagerService$2; +Lcom/android/server/pm/UserManagerService$3; Lcom/android/server/pm/UserManagerService$LocalService; +Lcom/android/server/pm/UserManagerService$MainHandler; +Lcom/android/server/pm/UserManagerService$SettingsObserver; +Lcom/android/server/pm/UserManagerService$UserData; +Lcom/android/server/pm/UserManagerService$WatchedUserStates; +Lcom/android/server/pm/UserManagerService; +Lcom/android/server/pm/UserManagerServiceShellCommand; +Lcom/android/server/pm/UserNeedsBadgingCache; +Lcom/android/server/pm/UserRestrictionsUtils; +Lcom/android/server/pm/UserSystemPackageInstaller; +Lcom/android/server/pm/UserTypeDetails$Builder; +Lcom/android/server/pm/UserTypeDetails; +Lcom/android/server/pm/UserTypeFactory; +Lcom/android/server/pm/UserVisibilityMediator; +Lcom/android/server/pm/WatchedIntentFilter; +Lcom/android/server/pm/WatchedIntentResolver$1; +Lcom/android/server/pm/WatchedIntentResolver$2; +Lcom/android/server/pm/WatchedIntentResolver; +Lcom/android/server/pm/dex/ArtManagerService$ArtManagerInternalImpl; +Lcom/android/server/pm/dex/ArtManagerService; +Lcom/android/server/pm/dex/ArtStatsLogUtils$ArtStatsLogger; +Lcom/android/server/pm/dex/DexManager; +Lcom/android/server/pm/dex/DynamicCodeLogger; +Lcom/android/server/pm/dex/PackageDexUsage; +Lcom/android/server/pm/dex/PackageDynamicCodeLoading; +Lcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl; Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl; Lcom/android/server/pm/local/PackageManagerLocalImpl; +Lcom/android/server/pm/parsing/PackageCacher; +Lcom/android/server/pm/parsing/PackageInfoUtils; +Lcom/android/server/pm/parsing/library/AndroidHidlUpdater; +Lcom/android/server/pm/parsing/library/AndroidNetIpSecIkeUpdater; +Lcom/android/server/pm/parsing/library/AndroidTestBaseUpdater; +Lcom/android/server/pm/parsing/library/ApexSharedLibraryUpdater; +Lcom/android/server/pm/parsing/library/ComGoogleAndroidMapsUpdater; +Lcom/android/server/pm/parsing/library/OrgApacheHttpLegacyUpdater; +Lcom/android/server/pm/parsing/library/PackageBackwardCompatibility$AndroidTestRunnerSplitUpdater; +Lcom/android/server/pm/parsing/library/PackageBackwardCompatibility; +Lcom/android/server/pm/parsing/library/PackageSharedLibraryUpdater; +Lcom/android/server/pm/parsing/pkg/AndroidPackageUtils; +Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$1; +Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$2; +Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$DelayingPackageManagerCache; +Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy$PackageManagerWrapper; +Lcom/android/server/pm/permission/DefaultPermissionGrantPolicy; +Lcom/android/server/pm/permission/LegacyPermission; +Lcom/android/server/pm/permission/LegacyPermissionDataProvider; +Lcom/android/server/pm/permission/LegacyPermissionManagerInternal; +Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector; +Lcom/android/server/pm/permission/LegacyPermissionManagerService$Internal; +Lcom/android/server/pm/permission/LegacyPermissionManagerService; +Lcom/android/server/pm/permission/LegacyPermissionSettings; +Lcom/android/server/pm/permission/LegacyPermissionState$UserState; +Lcom/android/server/pm/permission/LegacyPermissionState; +Lcom/android/server/pm/permission/PermissionAllowlist; +Lcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry; +Lcom/android/server/pm/permission/PermissionManagerService$PermissionCheckerService; +Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl; +Lcom/android/server/pm/permission/PermissionManagerService; +Lcom/android/server/pm/permission/PermissionManagerServiceInterface; +Lcom/android/server/pm/permission/PermissionManagerServiceInternal; +Lcom/android/server/pm/permission/PermissionMigrationHelper; +Lcom/android/server/pm/permission/PermissionMigrationHelperImpl; +Lcom/android/server/pm/pkg/ArchiveState; +Lcom/android/server/pm/pkg/PackageState; +Lcom/android/server/pm/pkg/PackageStateInternal; +Lcom/android/server/pm/pkg/PackageStateUnserialized; +Lcom/android/server/pm/pkg/PackageStateUtils; +Lcom/android/server/pm/pkg/PackageUserState; +Lcom/android/server/pm/pkg/PackageUserStateDefault; +Lcom/android/server/pm/pkg/PackageUserStateImpl$1; +Lcom/android/server/pm/pkg/PackageUserStateImpl; +Lcom/android/server/pm/pkg/PackageUserStateInternal; +Lcom/android/server/pm/pkg/PackageUserStateUtils; +Lcom/android/server/pm/pkg/SELinuxUtil; +Lcom/android/server/pm/pkg/SharedLibrary; +Lcom/android/server/pm/pkg/SharedUserApi; +Lcom/android/server/pm/pkg/SuspendParams; +Lcom/android/server/pm/pkg/mutate/PackageStateMutator$StateWriteWrapper$UserStateWriteWrapper; +Lcom/android/server/pm/pkg/mutate/PackageStateMutator$StateWriteWrapper; +Lcom/android/server/pm/pkg/mutate/PackageStateMutator; +Lcom/android/server/pm/pkg/mutate/PackageStateWrite; +Lcom/android/server/pm/pkg/mutate/PackageUserStateWrite; +Lcom/android/server/pm/resolution/ComponentResolver$$ExternalSyntheticLambda0; +Lcom/android/server/pm/resolution/ComponentResolver$1; Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver; +Lcom/android/server/pm/resolution/ComponentResolver$MimeGroupsAwareIntentResolver; Lcom/android/server/pm/resolution/ComponentResolver$ProviderIntentResolver; Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver; Lcom/android/server/pm/resolution/ComponentResolver$ServiceIntentResolver; +Lcom/android/server/pm/resolution/ComponentResolver; +Lcom/android/server/pm/resolution/ComponentResolverApi; +Lcom/android/server/pm/resolution/ComponentResolverBase; +Lcom/android/server/pm/resolution/ComponentResolverLocked; +Lcom/android/server/pm/resolution/ComponentResolverSnapshot; +Lcom/android/server/pm/snapshot/PackageDataSnapshot; +Lcom/android/server/pm/verify/domain/DomainVerificationCollector$$ExternalSyntheticLambda0; +Lcom/android/server/pm/verify/domain/DomainVerificationCollector; +Lcom/android/server/pm/verify/domain/DomainVerificationDebug; +Lcom/android/server/pm/verify/domain/DomainVerificationEnforcer$Callback; +Lcom/android/server/pm/verify/domain/DomainVerificationEnforcer; +Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings$LegacyState; +Lcom/android/server/pm/verify/domain/DomainVerificationLegacySettings; +Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal$Connection; +Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal; +Lcom/android/server/pm/verify/domain/DomainVerificationManagerStub; +Lcom/android/server/pm/verify/domain/DomainVerificationPersistence$ReadResult; +Lcom/android/server/pm/verify/domain/DomainVerificationPersistence; +Lcom/android/server/pm/verify/domain/DomainVerificationService; +Lcom/android/server/pm/verify/domain/DomainVerificationSettings; +Lcom/android/server/pm/verify/domain/DomainVerificationShell$Callback; +Lcom/android/server/pm/verify/domain/DomainVerificationShell; +Lcom/android/server/pm/verify/domain/DomainVerificationUtils$$ExternalSyntheticLambda0; +Lcom/android/server/pm/verify/domain/DomainVerificationUtils; +Lcom/android/server/pm/verify/domain/models/DomainVerificationInternalUserState; +Lcom/android/server/pm/verify/domain/models/DomainVerificationPkgState; +Lcom/android/server/pm/verify/domain/models/DomainVerificationStateMap; +Lcom/android/server/pm/verify/domain/proxy/DomainVerificationProxy$BaseConnection; +Lcom/android/server/pm/verify/domain/proxy/DomainVerificationProxy; +Lcom/android/server/pm/verify/domain/proxy/DomainVerificationProxyUnavailable; +Lcom/android/server/pm/verify/domain/proxy/DomainVerificationProxyV1$Connection; +Lcom/android/server/pm/verify/domain/proxy/DomainVerificationProxyV2$Connection; +Lcom/android/server/policy/PermissionPolicyService$2; Lcom/android/server/policy/PermissionPolicyService$Internal; +Lcom/android/server/policy/PhoneWindowManager$5; Lcom/android/server/policy/PhoneWindowManager; +Lcom/android/server/policy/WindowManagerPolicy$DisplayContentInfo; +Lcom/android/server/policy/WindowManagerPolicy$WindowManagerFuncs; +Lcom/android/server/policy/WindowManagerPolicy$WindowState; +Lcom/android/server/power/AmbientDisplaySuppressionController$AmbientDisplaySuppressionChangedCallback; +Lcom/android/server/power/AmbientDisplaySuppressionController; +Lcom/android/server/power/AttentionDetector$1; +Lcom/android/server/power/AttentionDetector$AttentionCallbackInternalImpl; +Lcom/android/server/power/AttentionDetector; +Lcom/android/server/power/FaceDownDetector$$ExternalSyntheticLambda1; +Lcom/android/server/power/FaceDownDetector$ExponentialMovingAverage; +Lcom/android/server/power/FaceDownDetector$ScreenStateReceiver; +Lcom/android/server/power/FaceDownDetector; +Lcom/android/server/power/InattentiveSleepWarningController; +Lcom/android/server/power/LowPowerStandbyController$$ExternalSyntheticLambda1; +Lcom/android/server/power/LowPowerStandbyController$$ExternalSyntheticLambda2; +Lcom/android/server/power/LowPowerStandbyController$1; +Lcom/android/server/power/LowPowerStandbyController$2; +Lcom/android/server/power/LowPowerStandbyController$3; +Lcom/android/server/power/LowPowerStandbyController$Clock; +Lcom/android/server/power/LowPowerStandbyController$DeviceConfigWrapper; +Lcom/android/server/power/LowPowerStandbyController$LocalService; +Lcom/android/server/power/LowPowerStandbyController$LowPowerStandbyHandler; +Lcom/android/server/power/LowPowerStandbyController$PhoneCallServiceTracker; +Lcom/android/server/power/LowPowerStandbyController$RealClock; +Lcom/android/server/power/LowPowerStandbyController$SettingsObserver; +Lcom/android/server/power/LowPowerStandbyController$TempAllowlistChangeListener; +Lcom/android/server/power/LowPowerStandbyController; +Lcom/android/server/power/LowPowerStandbyControllerInternal; +Lcom/android/server/power/PowerGroup$PowerGroupListener; +Lcom/android/server/power/PowerManagerService$$ExternalSyntheticLambda0; +Lcom/android/server/power/PowerManagerService$$ExternalSyntheticLambda1; Lcom/android/server/power/PowerManagerService$1; +Lcom/android/server/power/PowerManagerService$3; +Lcom/android/server/power/PowerManagerService$4; +Lcom/android/server/power/PowerManagerService$BatteryReceiver; +Lcom/android/server/power/PowerManagerService$BinderService; +Lcom/android/server/power/PowerManagerService$Clock; +Lcom/android/server/power/PowerManagerService$Constants; +Lcom/android/server/power/PowerManagerService$DockReceiver; +Lcom/android/server/power/PowerManagerService$DreamReceiver; +Lcom/android/server/power/PowerManagerService$Injector$$ExternalSyntheticLambda0; +Lcom/android/server/power/PowerManagerService$Injector$1; +Lcom/android/server/power/PowerManagerService$Injector$2; +Lcom/android/server/power/PowerManagerService$Injector$3; +Lcom/android/server/power/PowerManagerService$Injector; Lcom/android/server/power/PowerManagerService$LocalService; +Lcom/android/server/power/PowerManagerService$NativeWrapper; +Lcom/android/server/power/PowerManagerService$PermissionCheckerWrapper; +Lcom/android/server/power/PowerManagerService$PowerGroupWakefulnessChangeListener; +Lcom/android/server/power/PowerManagerService$PowerManagerHandlerCallback; +Lcom/android/server/power/PowerManagerService$PowerPropertiesWrapper; +Lcom/android/server/power/PowerManagerService$SettingsObserver; +Lcom/android/server/power/PowerManagerService$SuspendBlockerImpl; +Lcom/android/server/power/PowerManagerService$UserSwitchedReceiver; +Lcom/android/server/power/PowerManagerService; +Lcom/android/server/power/PowerManagerShellCommand; +Lcom/android/server/power/ScreenUndimDetector$InternalClock; +Lcom/android/server/power/ScreenUndimDetector; +Lcom/android/server/power/SuspendBlocker; +Lcom/android/server/power/SystemPropertiesWrapper; +Lcom/android/server/power/ThermalManagerService$1; +Lcom/android/server/power/ThermalManagerService$TemperatureWatcher; +Lcom/android/server/power/ThermalManagerService$ThermalHal10Wrapper; +Lcom/android/server/power/ThermalManagerService$ThermalHal11Wrapper; +Lcom/android/server/power/ThermalManagerService$ThermalHal20Wrapper; +Lcom/android/server/power/ThermalManagerService$ThermalHalAidlWrapper; +Lcom/android/server/power/ThermalManagerService$ThermalHalWrapper; +Lcom/android/server/power/ThermalManagerService$ThermalShellCommand; +Lcom/android/server/power/ThermalManagerService; +Lcom/android/server/power/batterysaver/BatterySaverController$1; +Lcom/android/server/power/batterysaver/BatterySaverController$MyHandler; +Lcom/android/server/power/batterysaver/BatterySaverController; +Lcom/android/server/power/batterysaver/BatterySaverPolicy$$ExternalSyntheticLambda1; +Lcom/android/server/power/batterysaver/BatterySaverPolicy$BatterySaverPolicyListener; +Lcom/android/server/power/batterysaver/BatterySaverPolicy$Policy; +Lcom/android/server/power/batterysaver/BatterySaverPolicy$PolicyBoolean; +Lcom/android/server/power/batterysaver/BatterySaverPolicy; +Lcom/android/server/power/batterysaver/BatterySaverStateMachine$$ExternalSyntheticLambda2; +Lcom/android/server/power/batterysaver/BatterySaverStateMachine$1; +Lcom/android/server/power/batterysaver/BatterySaverStateMachine; +Lcom/android/server/power/batterysaver/BatterySavingStats; +Lcom/android/server/power/feature/PowerManagerFlags$FlagState; +Lcom/android/server/power/feature/PowerManagerFlags; +Lcom/android/server/power/hint/HintManagerService$NativeWrapper; +Lcom/android/server/power/stats/BatteryExternalStatsWorker$$ExternalSyntheticLambda0; +Lcom/android/server/power/stats/BatteryExternalStatsWorker$$ExternalSyntheticLambda5; +Lcom/android/server/power/stats/BatteryExternalStatsWorker$1; +Lcom/android/server/power/stats/BatteryExternalStatsWorker$2; +Lcom/android/server/power/stats/BatteryExternalStatsWorker$Injector; +Lcom/android/server/power/stats/BatteryExternalStatsWorker; +Lcom/android/server/power/stats/BatteryStatsDumpHelperImpl; +Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda2; +Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda3; +Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda4; +Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda5; +Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda6; Lcom/android/server/power/stats/BatteryStatsImpl$1; +Lcom/android/server/power/stats/BatteryStatsImpl$2; +Lcom/android/server/power/stats/BatteryStatsImpl$3; +Lcom/android/server/power/stats/BatteryStatsImpl$4; +Lcom/android/server/power/stats/BatteryStatsImpl$5; +Lcom/android/server/power/stats/BatteryStatsImpl$6; Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer; +Lcom/android/server/power/stats/BatteryStatsImpl$BatteryCallback; +Lcom/android/server/power/stats/BatteryStatsImpl$BatteryStatsConfig$Builder; +Lcom/android/server/power/stats/BatteryStatsImpl$BatteryStatsConfig; +Lcom/android/server/power/stats/BatteryStatsImpl$BinderCallStats; +Lcom/android/server/power/stats/BatteryStatsImpl$BluetoothActivityInfoCache; +Lcom/android/server/power/stats/BatteryStatsImpl$Constants; Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl; Lcom/android/server/power/stats/BatteryStatsImpl$Counter; +Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats; Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer; +Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer; +Lcom/android/server/power/stats/BatteryStatsImpl$EnergyStatsRetriever; +Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync; +Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger; +Lcom/android/server/power/stats/BatteryStatsImpl$HistoryStepDetailsCalculatorImpl; Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter; +Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray; +Lcom/android/server/power/stats/BatteryStatsImpl$MyHandler; +Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap; +Lcom/android/server/power/stats/BatteryStatsImpl$PlatformIdleStateCallback; +Lcom/android/server/power/stats/BatteryStatsImpl$PowerStatsCollectorInjector; +Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats; +Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer; Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; +Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase; +Lcom/android/server/power/stats/BatteryStatsImpl$TimeBaseObs; +Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter; Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter; +Lcom/android/server/power/stats/BatteryStatsImpl$Timer; +Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1; +Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2; +Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3; +Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv; Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg; +Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc; Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor; Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock; Lcom/android/server/power/stats/BatteryStatsImpl$Uid; +Lcom/android/server/power/stats/BatteryStatsImpl$UserInfoProvider; +Lcom/android/server/power/stats/BatteryStatsImpl; +Lcom/android/server/power/stats/BatteryUsageStatsProvider; +Lcom/android/server/power/stats/BatteryUsageStatsSection$Reader; +Lcom/android/server/power/stats/BatteryUsageStatsSection; +Lcom/android/server/power/stats/BluetoothPowerCalculator; +Lcom/android/server/power/stats/BluetoothPowerStatsCollector$Injector; +Lcom/android/server/power/stats/BluetoothPowerStatsCollector; +Lcom/android/server/power/stats/CameraPowerStatsCollector; +Lcom/android/server/power/stats/CpuPowerCalculator; +Lcom/android/server/power/stats/CpuPowerStatsCollector$Injector; +Lcom/android/server/power/stats/CpuPowerStatsCollector$KernelCpuStatsReader; +Lcom/android/server/power/stats/CpuPowerStatsCollector; +Lcom/android/server/power/stats/CustomEnergyConsumerPowerStatsCollector; +Lcom/android/server/power/stats/EnergyConsumerPowerStatsCollector$Injector; +Lcom/android/server/power/stats/EnergyConsumerPowerStatsCollector; +Lcom/android/server/power/stats/EnergyConsumerSnapshot; +Lcom/android/server/power/stats/GnssPowerStatsCollector; +Lcom/android/server/power/stats/KernelWakelockReader; +Lcom/android/server/power/stats/KernelWakelockStats$Entry; +Lcom/android/server/power/stats/KernelWakelockStats; +Lcom/android/server/power/stats/MobileRadioPowerCalculator; +Lcom/android/server/power/stats/MobileRadioPowerStatsCollector$Injector; +Lcom/android/server/power/stats/MobileRadioPowerStatsCollector$Observer; +Lcom/android/server/power/stats/MobileRadioPowerStatsCollector; +Lcom/android/server/power/stats/PowerAttributor; +Lcom/android/server/power/stats/PowerCalculator; +Lcom/android/server/power/stats/PowerStatsCollector$$ExternalSyntheticLambda0; +Lcom/android/server/power/stats/PowerStatsCollector$1; +Lcom/android/server/power/stats/PowerStatsCollector; +Lcom/android/server/power/stats/PowerStatsScheduler$AlarmScheduler; +Lcom/android/server/power/stats/PowerStatsScheduler; +Lcom/android/server/power/stats/PowerStatsSpan$Section; +Lcom/android/server/power/stats/PowerStatsSpan$SectionReader; +Lcom/android/server/power/stats/PowerStatsStore$$ExternalSyntheticLambda0; +Lcom/android/server/power/stats/PowerStatsStore; +Lcom/android/server/power/stats/PowerStatsUidResolver$Listener; +Lcom/android/server/power/stats/PowerStatsUidResolver; +Lcom/android/server/power/stats/ScreenPowerStatsCollector$Injector; +Lcom/android/server/power/stats/ScreenPowerStatsCollector$ScreenUsageTimeRetriever; +Lcom/android/server/power/stats/ScreenPowerStatsCollector; +Lcom/android/server/power/stats/WifiPowerCalculator; +Lcom/android/server/power/stats/WifiPowerStatsCollector$Injector; +Lcom/android/server/power/stats/WifiPowerStatsCollector$Observer; +Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiScanTimes; +Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiStatsRetriever; +Lcom/android/server/power/stats/WifiPowerStatsCollector; +Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout; +Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout; +Lcom/android/server/power/stats/format/CpuPowerStatsLayout; +Lcom/android/server/power/stats/format/EnergyConsumerPowerStatsLayout; +Lcom/android/server/power/stats/format/GnssPowerStatsLayout; +Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout; +Lcom/android/server/power/stats/format/PowerStatsLayout; +Lcom/android/server/power/stats/format/ScreenPowerStatsLayout; +Lcom/android/server/power/stats/format/WifiPowerStatsLayout; +Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$1; +Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent; +Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig; +Lcom/android/server/power/stats/processor/AggregatedPowerStatsSection$Reader; +Lcom/android/server/power/stats/processor/AggregatedPowerStatsSection; +Lcom/android/server/power/stats/processor/AudioPowerStatsProcessor; +Lcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor; +Lcom/android/server/power/stats/processor/BluetoothPowerStatsProcessor; +Lcom/android/server/power/stats/processor/CameraPowerStatsProcessor; +Lcom/android/server/power/stats/processor/CpuPowerStatsProcessor; +Lcom/android/server/power/stats/processor/FlashlightPowerStatsProcessor; +Lcom/android/server/power/stats/processor/GnssPowerStatsProcessor; +Lcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda0; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda10; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda11; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda12; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda13; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda1; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda2; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda3; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda4; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda5; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda6; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda7; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda8; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda9; +Lcom/android/server/power/stats/processor/MultiStatePowerAttributor; +Lcom/android/server/power/stats/processor/PowerStatsAggregator; +Lcom/android/server/power/stats/processor/PowerStatsExporter; +Lcom/android/server/power/stats/processor/PowerStatsProcessor; +Lcom/android/server/power/stats/processor/ScreenPowerStatsProcessor; +Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor; +Lcom/android/server/power/stats/processor/VideoPowerStatsProcessor; +Lcom/android/server/power/stats/processor/WifiPowerStatsProcessor; +Lcom/android/server/power/stats/wakeups/CpuWakeupStats$$ExternalSyntheticLambda0; +Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Config; +Lcom/android/server/power/stats/wakeups/CpuWakeupStats$WakingActivityHistory; +Lcom/android/server/power/stats/wakeups/CpuWakeupStats; +Lcom/android/server/power/stats/wakeups/IrqDeviceMap; +Lcom/android/server/powerstats/PowerStatsHALWrapper$IPowerStatsHALWrapper; +Lcom/android/server/powerstats/PowerStatsHALWrapper$PowerStatsHAL10WrapperImpl; +Lcom/android/server/powerstats/PowerStatsHALWrapper$PowerStatsHAL20WrapperImpl; +Lcom/android/server/powerstats/PowerStatsHALWrapper$VintfHalCache; +Lcom/android/server/powerstats/PowerStatsHALWrapper; +Lcom/android/server/powerstats/PowerStatsService$1; +Lcom/android/server/powerstats/PowerStatsService$DeviceConfigListener; +Lcom/android/server/powerstats/PowerStatsService$Injector; Lcom/android/server/powerstats/PowerStatsService$LocalService; +Lcom/android/server/powerstats/PowerStatsService; +Lcom/android/server/recoverysystem/RecoverySystemService$Injector; +Lcom/android/server/recoverysystem/RecoverySystemService$Lifecycle; +Lcom/android/server/recoverysystem/RecoverySystemService$PreferencesManager; +Lcom/android/server/recoverysystem/RecoverySystemService; +Lcom/android/server/recoverysystem/RecoverySystemShellCommand; +Lcom/android/server/resources/ResourcesManagerService; +Lcom/android/server/security/FileIntegrityService$BinderService; +Lcom/android/server/security/FileIntegrityService$FileIntegrityServiceShellCommand; +Lcom/android/server/security/FileIntegrityService; +Lcom/android/server/sensorprivacy/SensorPrivacyService; +Lcom/android/server/sensors/SensorManagerInternal$ProximityActiveListener; +Lcom/android/server/sensors/SensorManagerInternal$RuntimeSensorCallback; +Lcom/android/server/sensors/SensorService; +Lcom/android/server/soundtrigger_middleware/AudioSessionProviderImpl; +Lcom/android/server/soundtrigger_middleware/ExternalCaptureStateTracker; +Lcom/android/server/soundtrigger_middleware/ICaptureStateNotifier; +Lcom/android/server/soundtrigger_middleware/SoundTriggerMiddlewareImpl$AudioSessionProvider; Lcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomServiceInternalImpl; +Lcom/android/server/stats/pull/StatsPullAtomService; Lcom/android/server/statusbar/StatusBarManagerService$1; +Lcom/android/server/storage/AppFuseBridge; +Lcom/android/server/tv/TvInputHal; +Lcom/android/server/tv/UinputBridge; +Lcom/android/server/uri/UriGrantsManagerInternal; +Lcom/android/server/uri/UriGrantsManagerService$1; +Lcom/android/server/uri/UriGrantsManagerService$H; +Lcom/android/server/uri/UriGrantsManagerService$Lifecycle; Lcom/android/server/uri/UriGrantsManagerService$LocalService; +Lcom/android/server/uri/UriGrantsManagerService; +Lcom/android/server/uri/UriMetricsHelper$PersistentUriGrantsProvider; +Lcom/android/server/uri/UriMetricsHelper; Lcom/android/server/usage/AppStandbyController; Lcom/android/server/usage/UsageStatsService$LocalService; +Lcom/android/server/usb/UsbAlsaJackDetector; +Lcom/android/server/usb/UsbAlsaMidiDevice$2; +Lcom/android/server/usb/UsbAlsaMidiDevice$3; +Lcom/android/server/usb/UsbAlsaMidiDevice$InputReceiverProxy; +Lcom/android/server/usb/UsbAlsaMidiDevice; +Lcom/android/server/usb/UsbDeviceManager$1; +Lcom/android/server/usb/UsbDeviceManager$2; +Lcom/android/server/usb/UsbDeviceManager$3; +Lcom/android/server/usb/UsbDeviceManager$4; +Lcom/android/server/usb/UsbDeviceManager$UsbHandler; +Lcom/android/server/usb/UsbDeviceManager$UsbHandlerHal; +Lcom/android/server/usb/UsbDeviceManager$UsbHandlerLegacy; +Lcom/android/server/usb/UsbDeviceManager$UsbUEventObserver; Lcom/android/server/usb/UsbDeviceManager; +Lcom/android/server/usb/UsbHostManager; +Lcom/android/server/usb/descriptors/UsbDescriptor; +Lcom/android/server/usb/descriptors/UsbInterfaceDescriptor; +Lcom/android/server/utils/AnrTimer$1; +Lcom/android/server/utils/AnrTimer$Args; +Lcom/android/server/utils/AnrTimer$Error; +Lcom/android/server/utils/AnrTimer$FeatureDisabled; +Lcom/android/server/utils/AnrTimer$FeatureEnabled; +Lcom/android/server/utils/AnrTimer$FeatureSwitch; +Lcom/android/server/utils/AnrTimer$Injector; +Lcom/android/server/utils/AnrTimer; +Lcom/android/server/utils/FoldSettingProvider; +Lcom/android/server/utils/PriorityDump$PriorityDumper; +Lcom/android/server/utils/Slogf; +Lcom/android/server/utils/Snappable; +Lcom/android/server/utils/SnapshotCache$Auto; +Lcom/android/server/utils/SnapshotCache$Sealed; +Lcom/android/server/utils/SnapshotCache$Statistics; +Lcom/android/server/utils/SnapshotCache; +Lcom/android/server/utils/Snapshots; +Lcom/android/server/utils/TimingsTraceAndSlog; +Lcom/android/server/utils/UserSettingDeviceConfigMediator$SettingsOverridesIndividualMediator; +Lcom/android/server/utils/UserSettingDeviceConfigMediator; +Lcom/android/server/utils/Watchable; +Lcom/android/server/utils/WatchableImpl; +Lcom/android/server/utils/Watched; +Lcom/android/server/utils/WatchedArrayList$1; +Lcom/android/server/utils/WatchedArrayList; +Lcom/android/server/utils/WatchedArrayMap$1; +Lcom/android/server/utils/WatchedArrayMap; +Lcom/android/server/utils/WatchedArraySet$1; +Lcom/android/server/utils/WatchedArraySet; +Lcom/android/server/utils/WatchedLongSparseArray$1; +Lcom/android/server/utils/WatchedLongSparseArray; +Lcom/android/server/utils/WatchedSparseArray$1; +Lcom/android/server/utils/WatchedSparseArray; +Lcom/android/server/utils/WatchedSparseBooleanArray; +Lcom/android/server/utils/WatchedSparseBooleanMatrix; +Lcom/android/server/utils/WatchedSparseIntArray; +Lcom/android/server/utils/WatchedSparseSetArray; +Lcom/android/server/utils/Watcher; +Lcom/android/server/vibrator/VibratorController$NativeWrapper; +Lcom/android/server/vibrator/VibratorController$OnVibrationCompleteListener; +Lcom/android/server/vibrator/VibratorManagerService$OnSyncedVibrationCompleteListener; +Lcom/android/server/vibrator/VibratorManagerService; +Lcom/android/server/vr/EnabledComponentsObserver$EnabledComponentChangeListener; +Lcom/android/server/vr/VrManagerService; +Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda5; +Lcom/android/server/wm/AbsAppSnapshotController; +Lcom/android/server/wm/ActionChain$Tracker; +Lcom/android/server/wm/ActivityClientController; +Lcom/android/server/wm/ActivityMetricsLaunchObserver; +Lcom/android/server/wm/ActivityMetricsLaunchObserverRegistry; +Lcom/android/server/wm/ActivityMetricsLogger; +Lcom/android/server/wm/ActivityRecord; +Lcom/android/server/wm/ActivityStartController; +Lcom/android/server/wm/ActivityStartInterceptor; +Lcom/android/server/wm/ActivityStarter$DefaultFactory; +Lcom/android/server/wm/ActivityStarter$Factory; +Lcom/android/server/wm/ActivityTaskManagerInternal$ScreenObserver; +Lcom/android/server/wm/ActivityTaskManagerInternal; +Lcom/android/server/wm/ActivityTaskManagerService$1; +Lcom/android/server/wm/ActivityTaskManagerService$H; +Lcom/android/server/wm/ActivityTaskManagerService$Lifecycle; Lcom/android/server/wm/ActivityTaskManagerService$LocalService; +Lcom/android/server/wm/ActivityTaskManagerService$SleepTokenAcquirer; +Lcom/android/server/wm/ActivityTaskManagerService$UiHandler; +Lcom/android/server/wm/ActivityTaskManagerService$UpdateConfigurationResult; +Lcom/android/server/wm/ActivityTaskManagerService; +Lcom/android/server/wm/ActivityTaskSupervisor$ActivityTaskSupervisorHandler; +Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper; +Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper; +Lcom/android/server/wm/ActivityTaskSupervisor; +Lcom/android/server/wm/AppTaskImpl; +Lcom/android/server/wm/AppWarnings$BaseDialog; +Lcom/android/server/wm/AppWarnings$UiHandler; +Lcom/android/server/wm/AppWarnings$WriteConfigTask; +Lcom/android/server/wm/AppWarnings; +Lcom/android/server/wm/BLASTSyncEngine$TransactionReadyListener; +Lcom/android/server/wm/BackNavigationController$NavigationMonitor; +Lcom/android/server/wm/BackNavigationController; +Lcom/android/server/wm/BackgroundActivityStartController$FinishedActivityEntry; +Lcom/android/server/wm/BackgroundActivityStartController; +Lcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration; +Lcom/android/server/wm/ClientLifecycleManager; +Lcom/android/server/wm/CompatModePackages$CompatHandler; +Lcom/android/server/wm/CompatModePackages; +Lcom/android/server/wm/ConfigurationContainer; +Lcom/android/server/wm/ConfigurationContainerListener; +Lcom/android/server/wm/DeprecatedAbiDialog; +Lcom/android/server/wm/DeprecatedTargetSdkVersionDialog; +Lcom/android/server/wm/DesktopModeLaunchParamsModifier; +Lcom/android/server/wm/DisplayArea$Dimmable; +Lcom/android/server/wm/DisplayArea$Tokens; +Lcom/android/server/wm/DisplayArea; +Lcom/android/server/wm/DisplayAreaOrganizerController; +Lcom/android/server/wm/DisplayContent; +Lcom/android/server/wm/FactoryErrorDialog; +Lcom/android/server/wm/InputTarget; +Lcom/android/server/wm/InsetsControlTarget; +Lcom/android/server/wm/InsetsTarget; +Lcom/android/server/wm/KeyguardController$$ExternalSyntheticLambda0; +Lcom/android/server/wm/KeyguardController$$ExternalSyntheticLambda1; +Lcom/android/server/wm/KeyguardController; +Lcom/android/server/wm/LaunchObserverRegistryImpl; +Lcom/android/server/wm/LaunchParamsController$LaunchParams; +Lcom/android/server/wm/LaunchParamsController$LaunchParamsModifier; +Lcom/android/server/wm/LaunchParamsController; +Lcom/android/server/wm/LaunchParamsPersister$$ExternalSyntheticLambda3; +Lcom/android/server/wm/LaunchParamsPersister; +Lcom/android/server/wm/LockTaskController$LockTaskToken; +Lcom/android/server/wm/LockTaskController; +Lcom/android/server/wm/MirrorActiveUids; +Lcom/android/server/wm/PackageConfigPersister; +Lcom/android/server/wm/PendingRemoteAnimationRegistry; +Lcom/android/server/wm/PersisterQueue$$ExternalSyntheticLambda0; +Lcom/android/server/wm/PersisterQueue$LazyTaskWriterThread; +Lcom/android/server/wm/PersisterQueue$Listener; +Lcom/android/server/wm/PersisterQueue$WriteQueueItem; +Lcom/android/server/wm/PersisterQueue; +Lcom/android/server/wm/RecentTasks$$ExternalSyntheticLambda0; +Lcom/android/server/wm/RecentTasks$$ExternalSyntheticLambda1; +Lcom/android/server/wm/RecentTasks$1; +Lcom/android/server/wm/RecentTasks$Callbacks; +Lcom/android/server/wm/RecentTasks; +Lcom/android/server/wm/RootDisplayArea; +Lcom/android/server/wm/RootWindowContainer; +Lcom/android/server/wm/RunningTasks; +Lcom/android/server/wm/SurfaceAnimationThread; +Lcom/android/server/wm/SurfaceAnimator$Animatable; +Lcom/android/server/wm/SurfaceFreezer$Freezable; +Lcom/android/server/wm/Task; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda0; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda10; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda11; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda12; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda13; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda14; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda15; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda16; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda17; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda18; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda19; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda1; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda20; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda21; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda22; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda23; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda24; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda25; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda2; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda3; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda4; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda5; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda6; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda7; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda8; +Lcom/android/server/wm/TaskChangeNotificationController$$ExternalSyntheticLambda9; +Lcom/android/server/wm/TaskChangeNotificationController$MainHandler; +Lcom/android/server/wm/TaskChangeNotificationController$TaskStackConsumer; +Lcom/android/server/wm/TaskChangeNotificationController; +Lcom/android/server/wm/TaskDisplayArea; +Lcom/android/server/wm/TaskFpsCallbackController; +Lcom/android/server/wm/TaskFragment; +Lcom/android/server/wm/TaskFragmentOrganizerController; +Lcom/android/server/wm/TaskLaunchParamsModifier; +Lcom/android/server/wm/TaskOrganizerController; +Lcom/android/server/wm/TaskPersister; +Lcom/android/server/wm/TaskSnapshotController; +Lcom/android/server/wm/Transition$ReadyCondition; +Lcom/android/server/wm/Transition; +Lcom/android/server/wm/TransitionController$Lock; +Lcom/android/server/wm/TransitionController$RemotePlayer; +Lcom/android/server/wm/TransitionController$TransitionMetricsReporter; +Lcom/android/server/wm/TransitionController; +Lcom/android/server/wm/UnsupportedCompileSdkDialog; +Lcom/android/server/wm/UnsupportedDisplaySizeDialog; +Lcom/android/server/wm/VisibleActivityProcessTracker; +Lcom/android/server/wm/VrController$1; +Lcom/android/server/wm/VrController; +Lcom/android/server/wm/WallpaperWindowToken; +Lcom/android/server/wm/WindowContainer; +Lcom/android/server/wm/WindowManagerGlobalLock; +Lcom/android/server/wm/WindowManagerInternal$AppTransitionListener; +Lcom/android/server/wm/WindowManagerService$2; +Lcom/android/server/wm/WindowManagerService$4; +Lcom/android/server/wm/WindowManagerService$8; +Lcom/android/server/wm/WindowManagerService$AppFreezeListener; +Lcom/android/server/wm/WindowManagerService$H; Lcom/android/server/wm/WindowManagerService$LocalService; Lcom/android/server/wm/WindowManagerService; +Lcom/android/server/wm/WindowManagerShellCommand; +Lcom/android/server/wm/WindowManagerThreadPriorityBooster; +Lcom/android/server/wm/WindowOrganizerController; +Lcom/android/server/wm/WindowProcessController; +Lcom/android/server/wm/WindowProcessControllerMap; +Lcom/android/server/wm/WindowProcessListener; Lcom/android/server/wm/WindowState; +Lcom/android/server/wm/WindowToken; +Lcom/android/server/wm/utils/DisplayInfoOverrides$$ExternalSyntheticLambda0; +Lcom/android/server/wm/utils/DisplayInfoOverrides$DisplayInfoFieldsUpdater; +Lcom/android/server/wm/utils/DisplayInfoOverrides; +[Landroid/hardware/power/stats/Channel; +[Landroid/hardware/power/stats/EnergyConsumer; +[Lcom/android/server/am/ActivityManagerService$ProcessChangeItem; +[Lcom/android/server/am/BroadcastProcessQueue; +[Lcom/android/server/am/BroadcastRecord; +[Lcom/android/server/am/CachedAppOptimizer$CancelCompactReason; +[Lcom/android/server/am/CachedAppOptimizer$CompactSource; +[Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNode; +[Lcom/android/server/am/OomAdjusterModernImpl$ProcessRecordNodes$LinkedProcessRecordList; +[Lcom/android/server/am/UidObserverController$ChangeRecord; +[Lcom/android/server/display/config/AutoBrightnessModeName; +[Lcom/android/server/display/config/AutoBrightnessSettingName; +[Lcom/android/server/display/config/PredefinedBrightnessLimitNames; +[Lcom/android/server/display/config/ThermalStatus; +[Lcom/android/server/firewall/FilterFactory; +[Lcom/android/server/firewall/IntentFirewall$FirewallIntentResolver; +[Lcom/android/server/input/TouchpadFingerState; +[Lcom/android/server/lights/LightsService$LightImpl; +[Lcom/android/server/om/OverlayActorEnforcer$ActorState; +[Lcom/android/server/pm/DefaultCrossProfileIntentFilter; +[Lcom/android/server/pm/PreferredActivity; +[Lcom/android/server/pm/SnapshotStatistics$Stats; +[Lcom/android/server/pm/parsing/library/PackageSharedLibraryUpdater; +[Lcom/android/server/power/stats/BatteryStatsImpl$Counter; +[Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats; +[Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter; +[Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats; +[Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer; +[Lcom/android/server/power/stats/BatteryStatsImpl$TimeBaseObs; +[Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter; +[Lcom/android/server/utils/AnrTimer$Error; +[Lcom/android/server/wm/ActivityRecord; +[[Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter; +[[Lcom/android/server/power/stats/BatteryStatsImpl$TimeBaseObs; diff --git a/services/autofill/java/com/android/server/autofill/PresentationStatsEventLogger.java b/services/autofill/java/com/android/server/autofill/PresentationStatsEventLogger.java index d7da2f0052d3..443bb745ad84 100644 --- a/services/autofill/java/com/android/server/autofill/PresentationStatsEventLogger.java +++ b/services/autofill/java/com/android/server/autofill/PresentationStatsEventLogger.java @@ -685,15 +685,6 @@ public final class PresentationStatsEventLogger { } /** - * Set how many views are filtered from fill because they are not in current session - */ - public void maybeSetFilteredFillableViewsCount(int filteredViewsCount) { - mEventInternal.ifPresent(event -> { - event.mFilteredFillabaleViewCount = filteredViewsCount; - }); - } - - /** * Set views_filled_failure_count using failure count as long as mEventInternal * presents. */ @@ -789,7 +780,6 @@ public final class PresentationStatsEventLogger { + " mAppPackageUid=" + mCallingAppUid + " mIsCredentialRequest=" + event.mIsCredentialRequest + " mWebviewRequestedCredential=" + event.mWebviewRequestedCredential - + " mFilteredFillabaleViewCount=" + event.mFilteredFillabaleViewCount + " mViewFillableTotalCount=" + event.mViewFillableTotalCount + " mViewFillFailureCount=" + event.mViewFillFailureCount + " mFocusedId=" + event.mFocusedId @@ -846,7 +836,6 @@ public final class PresentationStatsEventLogger { mCallingAppUid, event.mIsCredentialRequest, event.mWebviewRequestedCredential, - event.mFilteredFillabaleViewCount, event.mViewFillableTotalCount, event.mViewFillFailureCount, event.mFocusedId, @@ -895,7 +884,6 @@ public final class PresentationStatsEventLogger { int mFieldClassificationRequestId = DEFAULT_VALUE_INT; boolean mIsCredentialRequest = false; boolean mWebviewRequestedCredential = false; - int mFilteredFillabaleViewCount = DEFAULT_VALUE_INT; int mViewFillableTotalCount = DEFAULT_VALUE_INT; int mViewFillFailureCount = DEFAULT_VALUE_INT; int mFocusedId = DEFAULT_VALUE_INT; diff --git a/services/autofill/java/com/android/server/autofill/RequestId.java b/services/autofill/java/com/android/server/autofill/RequestId.java index 29ad786dbd4b..d8069a840156 100644 --- a/services/autofill/java/com/android/server/autofill/RequestId.java +++ b/services/autofill/java/com/android/server/autofill/RequestId.java @@ -16,8 +16,14 @@ package com.android.server.autofill; -import java.util.List; +import static com.android.server.autofill.Helper.sDebug; + +import android.util.Slog; +import android.util.SparseArray; + import java.util.concurrent.atomic.AtomicInteger; +import java.util.List; +import java.util.Random; // Helper class containing various methods to deal with FillRequest Ids. // For authentication flows, there needs to be a way to know whether to retrieve the Fill @@ -25,56 +31,97 @@ import java.util.concurrent.atomic.AtomicInteger; // way to achieve this is by assigning odd number request ids to secondary provider and // even numbers to primary provider. public class RequestId { + private AtomicInteger sIdCounter; + + // The minimum request id is 2 to avoid possible authentication issues. + static final int MIN_REQUEST_ID = 2; + // The maximum request id is 0x7FFF to make sure the 16th bit is 0. + // This is to make sure the authentication id is always positive. + static final int MAX_REQUEST_ID = 0x7FFF; // 32767 + + // The maximum start id is made small to best avoid wrapping around. + static final int MAX_START_ID = 1000; + // The magic number is used to determine if a wrap has happened. + // The underlying assumption of MAGIC_NUMBER is that there can't be as many as MAGIC_NUMBER + // of fill requests in one session. so there can't be as many as MAGIC_NUMBER of fill requests + // getting dropped. + static final int MAGIC_NUMBER = 5000; + + static final int MIN_PRIMARY_REQUEST_ID = 2; + static final int MAX_PRIMARY_REQUEST_ID = 0x7FFE; // 32766 + + static final int MIN_SECONDARY_REQUEST_ID = 3; + static final int MAX_SECONDARY_REQUEST_ID = 0x7FFF; // 32767 + + private static final String TAG = "RequestId"; + + // WARNING: This constructor should only be used for testing + RequestId(int startId) { + if (startId < MIN_REQUEST_ID || startId > MAX_REQUEST_ID) { + throw new IllegalArgumentException("startId must be between " + MIN_REQUEST_ID + + " and " + MAX_REQUEST_ID); + } + if (sDebug) { + Slog.d(TAG, "RequestId(int): startId= " + startId); + } + sIdCounter = new AtomicInteger(startId); + } - private AtomicInteger sIdCounter; - - // Mainly used for tests - RequestId(int start) { - sIdCounter = new AtomicInteger(start); - } - - public RequestId() { - this((int) (Math.floor(Math.random() * 0xFFFF))); - } - - public static int getLastRequestIdIndex(List<Integer> requestIds) { - int lastId = -1; - int indexOfBiggest = -1; - // Biggest number is usually the latest request, since IDs only increase - // The only exception is when the request ID wraps around back to 0 - for (int i = requestIds.size() - 1; i >= 0; i--) { - if (requestIds.get(i) > lastId) { - lastId = requestIds.get(i); - indexOfBiggest = i; - } + // WARNING: This get method should only be used for testing + int getRequestId() { + return sIdCounter.get(); } - // 0xFFFE + 2 == 0x1 (for secondary) - // 0xFFFD + 2 == 0x0 (for primary) - // Wrap has occurred - if (lastId >= 0xFFFD) { - // Calculate the biggest size possible - // If list only has one kind of request ids - we need to multiple by 2 - // (since they skip odd ints) - // Also subtract one from size because at least one integer exists pre-wrap - int calcSize = (requestIds.size()) * 2; - //Biggest possible id after wrapping - int biggestPossible = (lastId + calcSize) % 0xFFFF; - lastId = -1; - indexOfBiggest = -1; - for (int i = 0; i < requestIds.size(); i++) { - int currentId = requestIds.get(i); - if (currentId <= biggestPossible && currentId > lastId) { - lastId = currentId; - indexOfBiggest = i; + public RequestId() { + Random random = new Random(); + int low = MIN_REQUEST_ID; + int high = MAX_START_ID + 1; // nextInt is exclusive on upper limit + + // Generate a random start request id that >= MIN_REQUEST_ID and <= MAX_START_ID + int startId = random.nextInt(high - low) + low; + if (sDebug) { + Slog.d(TAG, "RequestId(): startId= " + startId); } - } + sIdCounter = new AtomicInteger(startId); } - return indexOfBiggest; - } + // Given a list of request ids, find the index of the last request id. + // Note: Since the request id wraps around, the largest request id may not be + // the latest request id. + // + // @param requestIds List of request ids in ascending order with at least one element. + // @return Index of the last request id. + public static int getLastRequestIdIndex(List<Integer> requestIds) { + // If there is only one request id, return index as 0. + if (requestIds.size() == 1) { + return 0; + } + + // We have to use a magical number to determine if a wrap has happened because + // the request id could be lost. The underlying assumption of MAGIC_NUMBER is that + // there can't be as many as MAGIC_NUMBER of fill requests in one session. + boolean wrapHasHappened = false; + int latestRequestIdIndex = -1; + + for (int i = 0; i < requestIds.size() - 1; i++) { + if (requestIds.get(i+1) - requestIds.get(i) > MAGIC_NUMBER) { + wrapHasHappened = true; + latestRequestIdIndex = i; + break; + } + } + + // If there was no wrap, the last request index is the last index. + if (!wrapHasHappened) { + latestRequestIdIndex = requestIds.size() - 1; + } + if (sDebug) { + Slog.d(TAG, "getLastRequestIdIndex(): latestRequestIdIndex = " + latestRequestIdIndex); + } + return latestRequestIdIndex; + } - public int nextId(boolean isSecondary) { + public int nextId(boolean isSecondary) { // For authentication flows, there needs to be a way to know whether to retrieve the Fill // Response from the primary provider or the secondary provider from the requestId. A simple // way to achieve this is by assigning odd number request ids to secondary provider and @@ -82,13 +129,20 @@ public class RequestId { int requestId; do { - requestId = sIdCounter.incrementAndGet() % 0xFFFF; + requestId = sIdCounter.incrementAndGet() % (MAX_REQUEST_ID + 1); + // Skip numbers smaller than MIN_REQUEST_ID to avoid possible authentication issue + if (requestId < MIN_REQUEST_ID) { + requestId = MIN_REQUEST_ID; + } sIdCounter.set(requestId); } while (isSecondaryProvider(requestId) != isSecondary); + if (sDebug) { + Slog.d(TAG, "nextId(): requestId = " + requestId); + } return requestId; - } + } - public static boolean isSecondaryProvider(int requestId) { - return requestId % 2 == 1; - } + public static boolean isSecondaryProvider(int requestId) { + return requestId % 2 == 1; + } } diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java index 494e956c413f..4852478281d8 100644 --- a/services/autofill/java/com/android/server/autofill/Session.java +++ b/services/autofill/java/com/android/server/autofill/Session.java @@ -6641,8 +6641,6 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState boolean waitingDatasetAuth = false; boolean hideHighlight = (entryCount == 1 && dataset.getFieldIds().get(0).equals(mCurrentViewId)); - // Count how many views are filtered because they are not in current session - int numOfViewsFiltered = 0; for (int i = 0; i < entryCount; i++) { if (dataset.getFieldValues().get(i) == null) { continue; @@ -6655,7 +6653,6 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState Slog.v(TAG, "Skipping filling view: " + viewId + " as it isn't part of the current session: " + id); } - numOfViewsFiltered += 1; continue; } ids.add(viewId); @@ -6669,8 +6666,6 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState viewState.resetState(ViewState.STATE_WAITING_DATASET_AUTH); } } - mPresentationStatsEventLogger.maybeSetFilteredFillableViewsCount( - numOfViewsFiltered); if (!ids.isEmpty()) { if (waitingDatasetAuth) { mUi.hideFillUi(this); @@ -6902,17 +6897,18 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState return mPendingSaveUi != null && mPendingSaveUi.getState() == PendingUi.STATE_PENDING; } + // Return latest response index in mResponses SparseArray. @GuardedBy("mLock") private int getLastResponseIndexLocked() { - if (mResponses != null) { - List<Integer> requestIdList = new ArrayList<>(); - final int responseCount = mResponses.size(); - for (int i = 0; i < responseCount; i++) { - requestIdList.add(mResponses.keyAt(i)); - } - return mRequestId.getLastRequestIdIndex(requestIdList); + if (mResponses == null || mResponses.size() == 0) { + return -1; + } + List<Integer> requestIdList = new ArrayList<>(); + final int responseCount = mResponses.size(); + for (int i = 0; i < responseCount; i++) { + requestIdList.add(mResponses.keyAt(i)); } - return -1; + return mRequestId.getLastRequestIdIndex(requestIdList); } private LogMaker newLogMaker(int category) { diff --git a/services/autofill/java/com/android/server/autofill/TEST_MAPPING b/services/autofill/java/com/android/server/autofill/TEST_MAPPING index d8a69177387d..1dbeebe95904 100644 --- a/services/autofill/java/com/android/server/autofill/TEST_MAPPING +++ b/services/autofill/java/com/android/server/autofill/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit-large": [ { - "name": "CtsAutoFillServiceTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAutoFillServiceTestCases_android_server_autofill_Presubmit" } ] } diff --git a/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java b/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java index 2e9a4dcb45aa..a10039f9bf6c 100644 --- a/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java +++ b/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java @@ -462,7 +462,9 @@ public final class AutoFillUI { @Override public void onShown() { - mCallback.onShown(UI_TYPE_DIALOG, response.getDatasets().size()); + if (mCallback != null) { + mCallback.onShown(UI_TYPE_DIALOG, response.getDatasets().size()); + } } @Override @@ -511,7 +513,9 @@ public final class AutoFillUI { @Override public void startIntentSender(IntentSender intentSender) { - mCallback.startIntentSenderAndFinishSession(intentSender); + if (mCallback != null) { + mCallback.startIntentSenderAndFinishSession(intentSender); + } } private void log(int type) { diff --git a/services/backup/TEST_MAPPING b/services/backup/TEST_MAPPING index e1532309b78e..0c14e56932df 100644 --- a/services/backup/TEST_MAPPING +++ b/services/backup/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.backup" - } - ] + "name": "FrameworksMockingServicesTests_backup" }, { "name": "CtsBackupTestCases", diff --git a/services/backup/java/com/android/server/backup/utils/TarBackupReader.java b/services/backup/java/com/android/server/backup/utils/TarBackupReader.java index 4860a274cfa8..8abbe5666d58 100644 --- a/services/backup/java/com/android/server/backup/utils/TarBackupReader.java +++ b/services/backup/java/com/android/server/backup/utils/TarBackupReader.java @@ -792,10 +792,11 @@ public class TarBackupReader { } private String getVToUAllowlist(Context context, int userId) { - return Settings.Secure.getStringForUser( + String allowlist = Settings.Secure.getStringForUser( context.getContentResolver(), Settings.Secure.V_TO_U_RESTORE_ALLOWLIST, userId); + return (allowlist == null) ? "" : allowlist; } private static long extractRadix(byte[] data, int offset, int maxChars, int radix) diff --git a/services/companion/java/com/android/server/companion/virtual/OWNERS b/services/companion/java/com/android/server/companion/virtual/OWNERS index 4fe0592f9075..4b732ac8e5a9 100644 --- a/services/companion/java/com/android/server/companion/virtual/OWNERS +++ b/services/companion/java/com/android/server/companion/virtual/OWNERS @@ -2,7 +2,9 @@ set noparent -marvinramin@google.com vladokom@google.com +marvinramin@google.com +caen@google.com +biswarupp@google.com ogunwale@google.com michaelwr@google.com
\ No newline at end of file diff --git a/services/companion/java/com/android/server/companion/virtual/TEST_MAPPING b/services/companion/java/com/android/server/companion/virtual/TEST_MAPPING index caa877c2b964..14579c6fa3ad 100644 --- a/services/companion/java/com/android/server/companion/virtual/TEST_MAPPING +++ b/services/companion/java/com/android/server/companion/virtual/TEST_MAPPING @@ -1,81 +1,32 @@ { "presubmit": [ { - "name": "CtsVirtualDevicesTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVirtualDevicesTestCases" }, { - "name": "CtsVirtualDevicesAudioTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVirtualDevicesAudioTestCases" }, { - "name": "CtsVirtualDevicesSensorTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVirtualDevicesSensorTestCases" }, { - "name": "CtsVirtualDevicesAppLaunchTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVirtualDevicesAppLaunchTestCases" }, { "name": "CtsVirtualDevicesCameraTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], "keywords": ["primary-device"] }, { - "name": "CtsHardwareTestCases", - "options": [ - { - "include-filter": "android.hardware.input.cts.tests" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ], + "name": "CtsHardwareTestCases_cts_tests", "file_patterns": ["Virtual[^/]*\\.java"] }, { - "name": "CtsAccessibilityServiceTestCases", - "options": [ - { - "include-filter": "android.accessibilityservice.cts.AccessibilityDisplayProxyTest" - }, - { - "exclude-annotation": "android.support.test.filters.FlakyTest" - } - ] + "name": "CtsAccessibilityServiceTestCases_cts_accessibilitydisplayproxytest" } ], "postsubmit": [ { - "name": "CtsMediaAudioTestCases", - "options": [ - { - "include-filter": "android.media.audio.cts.AudioFocusWithVdmTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsMediaAudioTestCases_cts_audiofocuswithvdmtest" }, { "name": "CtsPermissionTestCases", @@ -92,12 +43,7 @@ ] }, { - "name": "CtsPermissionMultiDeviceTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsPermissionMultiDeviceTestCases" } ] } diff --git a/services/contentcapture/java/com/android/server/contentprotection/OWNERS b/services/contentcapture/java/com/android/server/contentprotection/OWNERS new file mode 100644 index 000000000000..3d09da303b0f --- /dev/null +++ b/services/contentcapture/java/com/android/server/contentprotection/OWNERS @@ -0,0 +1,4 @@ +# Bug component: 1040349 + +include /core/java/android/view/contentprotection/OWNERS + diff --git a/services/contextualsearch/java/com/android/server/contextualsearch/ContextualSearchManagerService.java b/services/contextualsearch/java/com/android/server/contextualsearch/ContextualSearchManagerService.java index b64aa8a1cbc9..ea6351baf597 100644 --- a/services/contextualsearch/java/com/android/server/contextualsearch/ContextualSearchManagerService.java +++ b/services/contextualsearch/java/com/android/server/contextualsearch/ContextualSearchManagerService.java @@ -364,7 +364,7 @@ public class ContextualSearchManagerService extends SystemService { } @RequiresPermission(android.Manifest.permission.START_TASKS_FROM_RECENTS) - private int invokeContextualSearchIntent(Intent launchIntent) { + private int invokeContextualSearchIntent(Intent launchIntent, final int userId) { // Contextual search starts with a frozen screen - so we launch without // any system animations or starting window. final ActivityOptions opts = ActivityOptions.makeCustomTaskAnimation(mContext, @@ -372,7 +372,7 @@ public class ContextualSearchManagerService extends SystemService { opts.setDisableStartingWindow(true); return mAtmInternal.startActivityWithScreenshot(launchIntent, mContext.getPackageName(), Binder.getCallingUid(), Binder.getCallingPid(), null, - opts.toBundle(), Binder.getCallingUserHandle().getIdentifier()); + opts.toBundle(), userId); } private void enforcePermission(@NonNull final String func) { @@ -446,6 +446,8 @@ public class ContextualSearchManagerService extends SystemService { synchronized (this) { if (DEBUG_USER) Log.d(TAG, "startContextualSearch"); enforcePermission("startContextualSearch"); + final int callingUserId = Binder.getCallingUserHandle().getIdentifier(); + mAssistDataRequester.cancel(); // Creates a new CallbackToken at mToken and an expiration handler. issueToken(); @@ -455,7 +457,7 @@ public class ContextualSearchManagerService extends SystemService { Binder.withCleanCallingIdentity(() -> { Intent launchIntent = getContextualSearchIntent(entrypoint, mToken); if (launchIntent != null) { - int result = invokeContextualSearchIntent(launchIntent); + int result = invokeContextualSearchIntent(launchIntent, callingUserId); if (DEBUG_USER) Log.d(TAG, "Launch result: " + result); } }); diff --git a/services/core/Android.bp b/services/core/Android.bp index d9962c7b02d5..f08c876e3104 100644 --- a/services/core/Android.bp +++ b/services/core/Android.bp @@ -30,6 +30,18 @@ filegroup { ], } +filegroup { + name: "services.core-aidl-sources", + srcs: [ + ":dumpstate_aidl", + ":framework_native_aidl", + ":gsiservice_aidl", + ":installd_aidl", + ":storaged_aidl", + ":vold_aidl", + ], +} + java_library_static { name: "services-config-update", srcs: [ @@ -38,7 +50,7 @@ java_library_static { ], } -genrule { +java_genrule { name: "services.core.protologsrc", srcs: [ ":protolog-impl", @@ -58,7 +70,7 @@ genrule { out: ["services.core.protolog.srcjar"], } -genrule { +java_genrule { name: "generate-protolog.json", srcs: [ ":protolog-groups", @@ -75,7 +87,7 @@ genrule { out: ["services.core.protolog.json"], } -genrule { +java_genrule { name: "gen-core.protolog.pb", srcs: [ ":protolog-groups", @@ -120,14 +132,9 @@ java_library_static { ":android.hardware.tv.hdmi.earc-V1-java-source", ":statslog-art-java-gen", ":statslog-contexthub-java-gen", + ":services.core-aidl-sources", ":services.core-sources", ":services.core.protologsrc", - ":dumpstate_aidl", - ":framework_native_aidl", - ":gsiservice_aidl", - ":installd_aidl", - ":storaged_aidl", - ":vold_aidl", ":platform-compat-config", ":platform-compat-overrides", ":display-device-config", @@ -226,8 +233,10 @@ java_library_static { "core_os_flags_lib", "connectivity_flags_lib", "dreams_flags_lib", + "aconfig_flags_java", "aconfig_new_storage_flags_lib", "powerstats_flags_lib", + "locksettings_flags_lib", ], javac_shard_size: 50, javacflags: [ @@ -273,7 +282,7 @@ prebuilt_etc { src: "java/com/android/server/location/gnss/gps_debug.conf", } -genrule { +java_genrule { name: "services.core.json.gz", srcs: [":generate-protolog.json"], out: ["services.core.protolog.json.gz"], diff --git a/services/core/java/com/android/server/BatteryService.java b/services/core/java/com/android/server/BatteryService.java index 1ccc48d44f99..8891d8eedfa6 100644 --- a/services/core/java/com/android/server/BatteryService.java +++ b/services/core/java/com/android/server/BatteryService.java @@ -157,7 +157,8 @@ public final class BatteryService extends SystemService { private int mLastMaxChargingVoltage; private int mLastChargeCounter; private int mLastBatteryCycleCount; - private int mLastCharingState; + private int mLastChargingState; + private int mLastBatteryCapacityLevel; /** * The last seen charging policy. This requires the * {@link android.Manifest.permission#BATTERY_STATS} permission and should therefore not be @@ -555,7 +556,8 @@ public final class BatteryService extends SystemService { || mHealthInfo.batteryChargeCounterUah != mLastChargeCounter || mInvalidCharger != mLastInvalidCharger || mHealthInfo.batteryCycleCount != mLastBatteryCycleCount - || mHealthInfo.chargingState != mLastCharingState)) { + || mHealthInfo.chargingState != mLastChargingState + || mHealthInfo.batteryCapacityLevel != mLastBatteryCapacityLevel)) { if (mPlugType != mLastPlugType) { if (mLastPlugType == BATTERY_PLUGGED_NONE) { @@ -738,7 +740,8 @@ public final class BatteryService extends SystemService { mLastBatteryLevelCritical = mBatteryLevelCritical; mLastInvalidCharger = mInvalidCharger; mLastBatteryCycleCount = mHealthInfo.batteryCycleCount; - mLastCharingState = mHealthInfo.chargingState; + mLastChargingState = mHealthInfo.chargingState; + mLastBatteryCapacityLevel = mHealthInfo.batteryCapacityLevel; } } @@ -772,6 +775,7 @@ public final class BatteryService extends SystemService { intent.putExtra(BatteryManager.EXTRA_CHARGE_COUNTER, mHealthInfo.batteryChargeCounterUah); intent.putExtra(BatteryManager.EXTRA_CYCLE_COUNT, mHealthInfo.batteryCycleCount); intent.putExtra(BatteryManager.EXTRA_CHARGING_STATUS, mHealthInfo.chargingState); + intent.putExtra(BatteryManager.EXTRA_CAPACITY_LEVEL, mHealthInfo.batteryCapacityLevel); if (DEBUG) { Slog.d(TAG, "Sending ACTION_BATTERY_CHANGED. scale:" + BATTERY_SCALE + ", info:" + mHealthInfo.toString()); @@ -817,6 +821,7 @@ public final class BatteryService extends SystemService { event.putLong(BatteryManager.EXTRA_EVENT_TIMESTAMP, now); event.putInt(BatteryManager.EXTRA_CYCLE_COUNT, mHealthInfo.batteryCycleCount); event.putInt(BatteryManager.EXTRA_CHARGING_STATUS, mHealthInfo.chargingState); + event.putInt(BatteryManager.EXTRA_CAPACITY_LEVEL, mHealthInfo.batteryCapacityLevel); boolean queueWasEmpty = mBatteryLevelsEventQueue.isEmpty(); mBatteryLevelsEventQueue.add(event); @@ -1254,6 +1259,7 @@ public final class BatteryService extends SystemService { pw.println(" technology: " + mHealthInfo.batteryTechnology); pw.println(" Charging state: " + mHealthInfo.chargingState); pw.println(" Charging policy: " + mHealthInfo.chargingPolicy); + pw.println(" Capacity level: " + mHealthInfo.batteryCapacityLevel); } else { Shell shell = new Shell(); shell.exec(mBinderService, null, fd, null, args, null, new ResultReceiver(null)); diff --git a/services/core/java/com/android/server/BinaryTransparencyService.java b/services/core/java/com/android/server/BinaryTransparencyService.java index 05d07ae761c1..485bf31dfb64 100644 --- a/services/core/java/com/android/server/BinaryTransparencyService.java +++ b/services/core/java/com/android/server/BinaryTransparencyService.java @@ -1523,7 +1523,7 @@ public class BinaryTransparencyService extends SystemService { @Override public void onApexStaged(ApexStagedEvent event) throws RemoteException { Slog.d(TAG, "A new APEX has been staged for update. There are currently " - + event.stagedApexModuleNames.length + " APEX(s) staged for update. " + + event.stagedApexInfos.length + " APEX(s) staged for update. " + "Scheduling measurement..."); UpdateMeasurementsJobService.scheduleBinaryMeasurements(mContext, BinaryTransparencyService.this); diff --git a/services/core/java/com/android/server/OWNERS b/services/core/java/com/android/server/OWNERS index a2bbff026b95..c15cf34b8955 100644 --- a/services/core/java/com/android/server/OWNERS +++ b/services/core/java/com/android/server/OWNERS @@ -10,9 +10,6 @@ per-file DisplayThread.java = michaelwr@google.com, ogunwale@google.com # Zram writeback per-file ZramWriteback.java = minchan@google.com, rajekumar@google.com -# Userspace reboot -per-file UserspaceRebootLogger.java = ioffe@google.com, dvander@google.com - # ServiceWatcher per-file ServiceWatcher.java = sooniln@google.com @@ -51,3 +48,6 @@ per-file SystemConfig.java = file:/PACKAGE_MANAGER_OWNERS # CertBlocklister per-file Cert*.java = tweek@google.com, brambonne@google.com, prb@google.com, miguelaranda@google.com + +# TradeInMode +per-file TradeInModeService.java = dvander@google.com, paullawrence@google.com diff --git a/services/core/java/com/android/server/PackageWatchdog.java b/services/core/java/com/android/server/PackageWatchdog.java index eb037095c6c9..d9926a4a0f0d 100644 --- a/services/core/java/com/android/server/PackageWatchdog.java +++ b/services/core/java/com/android/server/PackageWatchdog.java @@ -150,6 +150,15 @@ public class PackageWatchdog { private static final int DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD = PackageHealthObserverImpact.USER_IMPACT_LEVEL_71; + // Comma separated list of all packages exempt from user impact level threshold. If a package + // in the list is crash looping, all the mitigations including factory reset will be performed. + private static final String PACKAGES_EXEMPT_FROM_IMPACT_LEVEL_THRESHOLD = + "persist.device_config.configuration.packages_exempt_from_impact_level_threshold"; + + // Comma separated list of default packages exempt from user impact level threshold. + private static final String DEFAULT_PACKAGES_EXEMPT_FROM_IMPACT_LEVEL_THRESHOLD = + "com.android.systemui"; + private long mNumberOfNativeCrashPollsRemaining; private static final int DB_VERSION = 1; @@ -196,6 +205,8 @@ public class PackageWatchdog { private final DeviceConfig.OnPropertiesChangedListener mOnPropertyChangedListener = this::onPropertyChanged; + private final Set<String> mPackagesExemptFromImpactLevelThreshold = new ArraySet<>(); + // The set of packages that have been synced with the ExplicitHealthCheckController @GuardedBy("mLock") private Set<String> mRequestedHealthCheckPackages = new ArraySet<>(); @@ -518,7 +529,7 @@ public class PackageWatchdog { @FailureReasons int failureReason, int currentObserverImpact, int mitigationCount) { - if (currentObserverImpact < getUserImpactLevelLimit()) { + if (allowMitigations(currentObserverImpact, versionedPackage)) { synchronized (mLock) { mLastMitigation = mSystemClock.uptimeMillis(); } @@ -526,6 +537,13 @@ public class PackageWatchdog { } } + private boolean allowMitigations(int currentObserverImpact, + VersionedPackage versionedPackage) { + return currentObserverImpact < getUserImpactLevelLimit() + || getPackagesExemptFromImpactLevelThreshold().contains( + versionedPackage.getPackageName()); + } + private long getMitigationWindowMs() { return SystemProperties.getLong(MITIGATION_WINDOW_MS, DEFAULT_MITIGATION_WINDOW_MS); } @@ -657,6 +675,15 @@ public class PackageWatchdog { DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD); } + private Set<String> getPackagesExemptFromImpactLevelThreshold() { + if (mPackagesExemptFromImpactLevelThreshold.isEmpty()) { + String packageNames = SystemProperties.get(PACKAGES_EXEMPT_FROM_IMPACT_LEVEL_THRESHOLD, + DEFAULT_PACKAGES_EXEMPT_FROM_IMPACT_LEVEL_THRESHOLD); + return Set.of(packageNames.split("\\s*,\\s*")); + } + return mPackagesExemptFromImpactLevelThreshold; + } + /** Possible severity values of the user impact of a {@link PackageHealthObserver#execute}. */ @Retention(SOURCE) @IntDef(value = {PackageHealthObserverImpact.USER_IMPACT_LEVEL_0, diff --git a/services/core/java/com/android/server/RescueParty.java b/services/core/java/com/android/server/RescueParty.java index c2cb5e90ca58..0daeaf4d01dd 100644 --- a/services/core/java/com/android/server/RescueParty.java +++ b/services/core/java/com/android/server/RescueParty.java @@ -659,7 +659,7 @@ public class RescueParty { @Override public void run() { try { - RecoverySystem.rebootPromptAndWipeUserData(context, TAG); + RecoverySystem.rebootPromptAndWipeUserData(context, TAG + "," + failedPackage); } catch (Throwable t) { logRescueException(level, failedPackage, t); } diff --git a/services/core/java/com/android/server/SerialService.java b/services/core/java/com/android/server/SerialService.java index 82c2038d8011..71885fdc9c81 100644 --- a/services/core/java/com/android/server/SerialService.java +++ b/services/core/java/com/android/server/SerialService.java @@ -18,22 +18,30 @@ package com.android.server; import android.annotation.EnforcePermission; import android.annotation.NonNull; +import android.annotation.Nullable; import android.content.Context; import android.hardware.ISerialManager; import android.hardware.SerialManagerInternal; import android.os.ParcelFileDescriptor; import android.os.PermissionEnforcer; +import android.system.ErrnoException; +import android.system.Os; +import android.system.OsConstants; +import android.util.Slog; import com.android.internal.annotations.GuardedBy; import com.android.internal.util.Preconditions; import java.io.File; +import java.io.FileDescriptor; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.function.Supplier; @android.ravenwood.annotation.RavenwoodKeepWholeClass public class SerialService extends ISerialManager.Stub { + private static final String TAG = "SerialService"; + private final Context mContext; @GuardedBy("mSerialPorts") @@ -50,7 +58,7 @@ public class SerialService extends ISerialManager.Stub { final String[] serialPorts = getSerialPorts(context); for (String serialPort : serialPorts) { mSerialPorts.put(serialPort, () -> { - return native_open(serialPort); + return tryOpen(serialPort); }); } } @@ -135,5 +143,14 @@ public class SerialService extends ISerialManager.Stub { } }; - private native ParcelFileDescriptor native_open(String path); + private static @Nullable ParcelFileDescriptor tryOpen(String path) { + try { + FileDescriptor fd = Os.open(path, OsConstants.O_RDWR | OsConstants.O_NOCTTY, 0); + return new ParcelFileDescriptor(fd); + } catch (ErrnoException e) { + Slog.e(TAG, "Could not open: " + path, e); + // We return null to preserve API semantics from earlier implementation variants. + return null; + } + } } diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java index b35959f1a6e8..0c7840c0d5c2 100644 --- a/services/core/java/com/android/server/StorageManagerService.java +++ b/services/core/java/com/android/server/StorageManagerService.java @@ -2738,7 +2738,8 @@ class StorageManagerService extends IStorageManager.Stub boolean smartIdleMaintEnabled = DeviceConfig.getBoolean( DeviceConfig.NAMESPACE_STORAGE_NATIVE_BOOT, "smart_idle_maint_enabled", - DEFAULT_SMART_IDLE_MAINT_ENABLED); + DEFAULT_SMART_IDLE_MAINT_ENABLED) + && !SystemProperties.getBoolean("ro.boot.zufs_provisioned", false); if (smartIdleMaintEnabled) { mLifetimePercentThreshold = DeviceConfig.getInt( DeviceConfig.NAMESPACE_STORAGE_NATIVE_BOOT, diff --git a/services/core/java/com/android/server/SystemConfig.java b/services/core/java/com/android/server/SystemConfig.java index 651c13bd38c6..9b987e9850c4 100644 --- a/services/core/java/com/android/server/SystemConfig.java +++ b/services/core/java/com/android/server/SystemConfig.java @@ -46,6 +46,7 @@ import android.util.TimingsTraceLog; import android.util.Xml; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.pm.RoSystemFeatures; import com.android.internal.util.XmlUtils; import com.android.modules.utils.build.UnboundedSdkLevel; import com.android.server.pm.permission.PermissionAllowlist; @@ -212,6 +213,30 @@ public class SystemConfig { } } + /** + * Utility class for testing interaction with compile-time defined system features. + * @hide + */ + @VisibleForTesting + public static class Injector { + /** Whether a system feature is defined as enabled and available at compile-time. */ + public boolean isReadOnlySystemEnabledFeature(String featureName, int version) { + return Boolean.TRUE.equals(RoSystemFeatures.maybeHasFeature(featureName, version)); + } + + /** Whether a system feature is defined as disabled and unavailable at compile-time. */ + public boolean isReadOnlySystemDisabledFeature(String featureName, int version) { + return Boolean.FALSE.equals(RoSystemFeatures.maybeHasFeature(featureName, version)); + } + + /** The full set of system features defined as compile-time enabled and available. */ + public ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures() { + return RoSystemFeatures.getReadOnlySystemEnabledFeatures(); + } + } + + private final Injector mInjector; + // These are the built-in shared libraries that were read from the // system configuration files. Keys are the library names; values are // the individual entries that contain information such as filename @@ -220,7 +245,7 @@ public class SystemConfig { // These are the features this devices supports that were read from the // system configuration files. - final ArrayMap<String, FeatureInfo> mAvailableFeatures = new ArrayMap<>(); + final ArrayMap<String, FeatureInfo> mAvailableFeatures; // These are the features which this device doesn't support; the OEM // partition uses these to opt-out of features from the system image. @@ -602,12 +627,26 @@ public class SystemConfig { public ArrayMap<String, Integer> getOemDefinedUids() { return mOemDefinedUids; } + /** * Only use for testing. Do NOT use in production code. * @param readPermissions false to create an empty SystemConfig; true to read the permissions. */ @VisibleForTesting public SystemConfig(boolean readPermissions) { + this(readPermissions, new Injector()); + } + + /** + * Only use for testing. Do NOT use in production code. + * @param readPermissions false to create an empty SystemConfig; true to read the permissions. + * @param injector Additional dependency injection for testing. + */ + @VisibleForTesting + public SystemConfig(boolean readPermissions, Injector injector) { + mInjector = injector; + mAvailableFeatures = mInjector.getReadOnlySystemEnabledFeatures(); + if (readPermissions) { Slog.w(TAG, "Constructing a test SystemConfig"); readAllPermissions(); @@ -617,6 +656,9 @@ public class SystemConfig { } SystemConfig() { + mInjector = new Injector(); + mAvailableFeatures = mInjector.getReadOnlySystemEnabledFeatures(); + TimingsTraceLog log = new TimingsTraceLog(TAG, Trace.TRACE_TAG_SYSTEM_SERVER); log.traceBegin("readAllPermissions"); try { @@ -628,6 +670,17 @@ public class SystemConfig { } private void readAllPermissions() { + readAllPermissionsFromXml(); + readAllPermissionsFromEnvironment(); + + // Apply global feature removal last, after all features have been read. + // This only needs to happen once. + for (String featureName : mUnavailableFeatures) { + removeFeature(featureName); + } + } + + private void readAllPermissionsFromXml() { final XmlPullParser parser = Xml.newPullParser(); // Read configuration from system @@ -1611,7 +1664,7 @@ public class SystemConfig { } else { mPackageToSharedUidAllowList.put(pkgName, sharedUid); } - } + } break; case "asl-file": { String packageName = parser.getAttributeValue(null, "package"); String path = parser.getAttributeValue(null, "path"); @@ -1690,7 +1743,13 @@ public class SystemConfig { } finally { IoUtils.closeQuietly(permReader); } + } + // Add features or permission dependent on global system properties (as + // opposed to XML permission files). + // This only needs to be called once after all features have been parsed + // from various partition/apex sources. + private void readAllPermissionsFromEnvironment() { // Some devices can be field-converted to FBE, so offer to splice in // those features if not already defined by the static config if (StorageManager.isFileEncrypted()) { @@ -1731,10 +1790,6 @@ public class SystemConfig { addFeature(PackageManager.FEATURE_EROFS_LEGACY, 0); } } - - for (String featureName : mUnavailableFeatures) { - removeFeature(featureName); - } } private @Nullable SignedPackage parseEnhancedConfirmationTrustedPackage(XmlPullParser parser, @@ -1777,6 +1832,10 @@ public class SystemConfig { } private void addFeature(String name, int version) { + if (mInjector.isReadOnlySystemDisabledFeature(name, version)) { + Slog.w(TAG, "Skipping feature addition for compile-time disabled feature: " + name); + return; + } FeatureInfo fi = mAvailableFeatures.get(name); if (fi == null) { fi = new FeatureInfo(); @@ -1789,6 +1848,10 @@ public class SystemConfig { } private void removeFeature(String name) { + if (mInjector.isReadOnlySystemEnabledFeature(name, /*version=*/0)) { + Slog.w(TAG, "Skipping feature removal for compile-time enabled feature: " + name); + return; + } if (mAvailableFeatures.remove(name) != null) { Slog.d(TAG, "Removed unavailable feature " + name); } diff --git a/services/core/java/com/android/server/TEST_MAPPING b/services/core/java/com/android/server/TEST_MAPPING index a3b6d806c6ce..f2e4e7319075 100644 --- a/services/core/java/com/android/server/TEST_MAPPING +++ b/services/core/java/com/android/server/TEST_MAPPING @@ -1,13 +1,7 @@ { "presubmit": [ { - "name": "CtsLocationFineTestCases", - "options": [ - { - // TODO: Wait for test to deflake - b/293934372 - "exclude-filter":"android.location.cts.fine.ScanningSettingsTest" - } - ] + "name": "CtsLocationFineTestCases_android_server_location" }, { "name": "CtsLocationCoarseTestCases" @@ -20,12 +14,7 @@ "file_patterns": ["NotificationManagerService\\.java"] }, { - "name": "CtsWindowManagerDeviceWindow", - "options": [ - { - "include-filter": "android.server.wm.window.ToastWindowTest" - } - ], + "name": "CtsWindowManagerDeviceWindow_window_toastwindowtest", "file_patterns": ["NotificationManagerService\\.java"] }, { @@ -53,12 +42,7 @@ "file_patterns": ["StorageManagerService\\.java"] }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.sensorprivacy" - } - ], + "name": "FrameworksMockingServicesTests_sensorprivacy", "file_patterns": ["SensorPrivacyService\\.java"] }, { @@ -83,24 +67,11 @@ "file_patterns": ["StorageManagerService\\.java"] }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.BinaryTransparencyServiceTest" - } - ], + "name": "FrameworksServicesTests_binary_transparency", "file_patterns": ["BinaryTransparencyService\\.java"] }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.PinnerServiceTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ], + "name": "FrameworksServicesTests_pinner_service", "file_patterns": ["PinnerService\\.java"] }, { @@ -121,12 +92,7 @@ "file_patterns": ["VcnManagementService\\.java"] }, { - "name": "FrameworksVpnTests", - "options": [ - { - "exclude-annotation": "com.android.testutils.SkipPresubmit" - } - ], + "name": "FrameworksVpnTests_android_server_connectivity", "file_patterns": ["VpnManagerService\\.java"] }, { @@ -181,15 +147,7 @@ "name": "CtsPackageManagerTestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.PinnerServiceTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ], + "name": "FrameworksServicesTests_pinner_service", "file_patterns": ["PinnerService\\.java"] }, { diff --git a/services/core/java/com/android/server/UserspaceRebootLogger.java b/services/core/java/com/android/server/UserspaceRebootLogger.java deleted file mode 100644 index 89327b50883c..000000000000 --- a/services/core/java/com/android/server/UserspaceRebootLogger.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright (C) 2020 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.server; - -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_SHUTDOWN_SEQUENCE_ABORTED; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERDATA_REMOUNT; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERSPACE_REBOOT_WATCHDOG_TRIGGERED; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__OUTCOME__OUTCOME_UNKNOWN; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__OUTCOME__SUCCESS; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__USER_ENCRYPTION_STATE__LOCKED; -import static com.android.internal.util.FrameworkStatsLog.USERSPACE_REBOOT_REPORTED__USER_ENCRYPTION_STATE__UNLOCKED; - -import android.os.PowerManager; -import android.os.SystemClock; -import android.os.SystemProperties; -import android.text.TextUtils; -import android.util.Slog; - -import com.android.internal.util.FrameworkStatsLog; - -import java.util.concurrent.Executor; - -/** - * Utility class to help abstract logging {@code UserspaceRebootReported} atom. - */ -public final class UserspaceRebootLogger { - - private static final String TAG = "UserspaceRebootLogger"; - - private static final String USERSPACE_REBOOT_SHOULD_LOG_PROPERTY = - "persist.sys.userspace_reboot.log.should_log"; - private static final String USERSPACE_REBOOT_LAST_STARTED_PROPERTY = - "sys.userspace_reboot.log.last_started"; - private static final String USERSPACE_REBOOT_LAST_FINISHED_PROPERTY = - "sys.userspace_reboot.log.last_finished"; - private static final String LAST_BOOT_REASON_PROPERTY = "sys.boot.reason.last"; - - private UserspaceRebootLogger() {} - - /** - * Modifies internal state to note that {@code UserspaceRebootReported} atom needs to be - * logged on the next successful boot. - * - * <p>This call should only be made on devices supporting userspace reboot. - */ - public static void noteUserspaceRebootWasRequested() { - if (!PowerManager.isRebootingUserspaceSupportedImpl()) { - Slog.wtf(TAG, "noteUserspaceRebootWasRequested: Userspace reboot is not supported."); - return; - } - - SystemProperties.set(USERSPACE_REBOOT_SHOULD_LOG_PROPERTY, "1"); - SystemProperties.set(USERSPACE_REBOOT_LAST_STARTED_PROPERTY, - String.valueOf(SystemClock.elapsedRealtime())); - } - - /** - * Updates internal state on boot after successful userspace reboot. - * - * <p>Should be called right before framework sets {@code sys.boot_completed} property. - * - * <p>This call should only be made on devices supporting userspace reboot. - */ - public static void noteUserspaceRebootSuccess() { - if (!PowerManager.isRebootingUserspaceSupportedImpl()) { - Slog.wtf(TAG, "noteUserspaceRebootSuccess: Userspace reboot is not supported."); - return; - } - - SystemProperties.set(USERSPACE_REBOOT_LAST_FINISHED_PROPERTY, - String.valueOf(SystemClock.elapsedRealtime())); - } - - /** - * Returns {@code true} if {@code UserspaceRebootReported} atom should be logged. - * - * <p>On devices that do not support userspace reboot this method will always return {@code - * false}. - */ - public static boolean shouldLogUserspaceRebootEvent() { - if (!PowerManager.isRebootingUserspaceSupportedImpl()) { - return false; - } - - return SystemProperties.getBoolean(USERSPACE_REBOOT_SHOULD_LOG_PROPERTY, false); - } - - /** - * Asynchronously logs {@code UserspaceRebootReported} on the given {@code executor}. - * - * <p>Should be called in the end of {@link - * com.android.server.am.ActivityManagerService#finishBooting()} method, after framework have - * tried to proactivelly unlock storage of the primary user. - * - * <p>This call should only be made on devices supporting userspace reboot. - */ - public static void logEventAsync(boolean userUnlocked, Executor executor) { - if (!PowerManager.isRebootingUserspaceSupportedImpl()) { - Slog.wtf(TAG, "logEventAsync: Userspace reboot is not supported."); - return; - } - - final int outcome = computeOutcome(); - final long durationMillis; - if (outcome == USERSPACE_REBOOT_REPORTED__OUTCOME__SUCCESS) { - durationMillis = SystemProperties.getLong(USERSPACE_REBOOT_LAST_FINISHED_PROPERTY, 0) - - SystemProperties.getLong(USERSPACE_REBOOT_LAST_STARTED_PROPERTY, 0); - } else { - durationMillis = 0; - } - final int encryptionState = - userUnlocked - ? USERSPACE_REBOOT_REPORTED__USER_ENCRYPTION_STATE__UNLOCKED - : USERSPACE_REBOOT_REPORTED__USER_ENCRYPTION_STATE__LOCKED; - executor.execute( - () -> { - Slog.i(TAG, "Logging UserspaceRebootReported atom: { outcome: " + outcome - + " durationMillis: " + durationMillis + " encryptionState: " - + encryptionState + " }"); - FrameworkStatsLog.write(FrameworkStatsLog.USERSPACE_REBOOT_REPORTED, outcome, - durationMillis, encryptionState); - SystemProperties.set(USERSPACE_REBOOT_SHOULD_LOG_PROPERTY, ""); - }); - } - - private static int computeOutcome() { - if (SystemProperties.getLong(USERSPACE_REBOOT_LAST_STARTED_PROPERTY, -1) != -1) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__SUCCESS; - } - String reason = TextUtils.emptyIfNull(SystemProperties.get(LAST_BOOT_REASON_PROPERTY, "")); - if (reason.startsWith("reboot,")) { - reason = reason.substring("reboot".length()); - } - if (reason.startsWith("userspace_failed,watchdog_fork")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_SHUTDOWN_SEQUENCE_ABORTED; - } - if (reason.startsWith("userspace_failed,shutdown_aborted")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_SHUTDOWN_SEQUENCE_ABORTED; - } - if (reason.startsWith("mount_userdata_failed")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERDATA_REMOUNT; - } - if (reason.startsWith("userspace_failed,init_user0")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERDATA_REMOUNT; - } - if (reason.startsWith("userspace_failed,enablefilecrypto")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERDATA_REMOUNT; - } - if (reason.startsWith("userspace_failed,watchdog_triggered")) { - return USERSPACE_REBOOT_REPORTED__OUTCOME__FAILED_USERSPACE_REBOOT_WATCHDOG_TRIGGERED; - } - return USERSPACE_REBOOT_REPORTED__OUTCOME__OUTCOME_UNKNOWN; - } -} diff --git a/services/core/java/com/android/server/VcnManagementService.java b/services/core/java/com/android/server/VcnManagementService.java index e2b6bd6ae360..06e6c8b1ec53 100644 --- a/services/core/java/com/android/server/VcnManagementService.java +++ b/services/core/java/com/android/server/VcnManagementService.java @@ -76,6 +76,7 @@ import android.telephony.SubscriptionManager; import android.telephony.TelephonyManager; import android.util.ArrayMap; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.LocalLog; import android.util.Log; import android.util.Slog; @@ -83,7 +84,7 @@ import android.util.Slog; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; +import com.android.net.module.util.BinderUtils; import com.android.net.module.util.LocationPermissionChecker; import com.android.net.module.util.PermissionUtils; import com.android.server.vcn.TelephonySubscriptionTracker; @@ -178,9 +179,10 @@ public class VcnManagementService extends IVcnManagementService.Stub { public static final boolean VDBG = false; // STOPSHIP: if true + // The system path is copied from Environment.getDataSystemDirectory @VisibleForTesting(visibility = Visibility.PRIVATE) static final String VCN_CONFIG_FILE = - new File(Environment.getDataSystemDirectory(), "vcn/configs.xml").getPath(); + new File(Environment.getDataDirectory(), "system/vcn/configs.xml").getPath(); // TODO(b/176956496): Directly use CarrierServiceBindHelper.UNBIND_DELAY_MILLIS @VisibleForTesting(visibility = Visibility.PRIVATE) @@ -379,10 +381,12 @@ public class VcnManagementService extends IVcnManagementService.Stub { } /** Gets transports that need to be marked as restricted by the VCN from CarrierConfig */ + // TODO: b/262269892 This method was created to perform experiments before the relevant API + // was exposed. Now it is obsolete and should be removed. @VisibleForTesting(visibility = Visibility.PRIVATE) public Set<Integer> getRestrictedTransportsFromCarrierConfig( ParcelUuid subGrp, TelephonySubscriptionSnapshot lastSnapshot) { - if (!Build.IS_ENG && !Build.IS_USERDEBUG) { + if (!Build.isDebuggable()) { return RESTRICTED_TRANSPORTS_DEFAULT; } @@ -444,22 +448,16 @@ public class VcnManagementService extends IVcnManagementService.Stub { } final UserHandle userHandle = UserHandle.getUserHandleForUid(uid); + final UserManager userManager = mContext.getSystemService(UserManager.class); - if (Flags.enforceMainUser()) { - final UserManager userManager = mContext.getSystemService(UserManager.class); - - Binder.withCleanCallingIdentity( - () -> { - if (!Objects.equals(userManager.getMainUser(), userHandle)) { - throw new SecurityException( - "VcnManagementService can only be used by callers running as" - + " the main user"); - } - }); - } else if (!userHandle.isSystem()) { - throw new SecurityException( - "VcnManagementService can only be used by callers running as the primary user"); - } + BinderUtils.withCleanCallingIdentity( + () -> { + if (!Objects.equals(userManager.getMainUser(), userHandle)) { + throw new SecurityException( + "VcnManagementService can only be used by callers running as" + + " the main user"); + } + }); } private void enforceCallingUserAndCarrierPrivilege( @@ -472,7 +470,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { // TODO (b/172619301): Check based on events propagated from CarrierPrivilegesTracker final SubscriptionManager subMgr = mContext.getSystemService(SubscriptionManager.class); final List<SubscriptionInfo> subscriptionInfos = new ArrayList<>(); - Binder.withCleanCallingIdentity( + BinderUtils.withCleanCallingIdentity( () -> { List<SubscriptionInfo> subsInGroup = subMgr.getSubscriptionsInGroup(subscriptionGroup); @@ -489,7 +487,10 @@ public class VcnManagementService extends IVcnManagementService.Stub { // Check subscription is active first; much cheaper/faster check, and an app (currently) // cannot be carrier privileged for inactive subscriptions. - if (subMgr.isValidSlotIndex(info.getSimSlotIndex()) + final int simSlotIndex = info.getSimSlotIndex(); + final boolean isValidSlotIndex = + simSlotIndex >= 0 && simSlotIndex < telMgr.getActiveModemCount(); + if (isValidSlotIndex && telMgr.checkCarrierPrivilegesForPackage(pkgName) == TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS) { // TODO (b/173717728): Allow configuration for inactive, but manageable @@ -524,6 +525,9 @@ public class VcnManagementService extends IVcnManagementService.Stub { @Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); + if (action == null) { + return; + } switch (action) { case Intent.ACTION_PACKAGE_ADDED: // Fallthrough @@ -701,7 +705,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { @GuardedBy("mLock") private void notifyAllPolicyListenersLocked() { for (final PolicyListenerBinderDeath policyListener : mRegisteredPolicyListeners.values()) { - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { try { policyListener.mListener.onPolicyChanged(); } catch (RemoteException e) { @@ -716,7 +720,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { @NonNull ParcelUuid subGroup, @VcnStatusCode int statusCode) { for (final VcnStatusCallbackInfo cbInfo : mRegisteredStatusCallbacks.values()) { if (isCallbackPermissioned(cbInfo, subGroup)) { - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { try { cbInfo.mCallback.onVcnStatusChanged(statusCode); } catch (RemoteException e) { @@ -796,7 +800,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { enforceManageTestNetworksForTestMode(config); enforceCallingUserAndCarrierPrivilege(subscriptionGroup, opPkgName); - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { synchronized (mLock) { mConfigs.put(subscriptionGroup, config); startOrUpdateVcnLocked(subscriptionGroup, config); @@ -854,7 +858,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { .checkPackage(mDeps.getBinderCallingUid(), opPkgName); enforceCarrierPrivilegeOrProvisioningPackage(subscriptionGroup, opPkgName); - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { synchronized (mLock) { stopAndClearVcnConfigInternalLocked(subscriptionGroup); writeConfigsToDiskLocked(); @@ -878,6 +882,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { private void garbageCollectAndWriteVcnConfigsLocked() { final SubscriptionManager subMgr = mContext.getSystemService(SubscriptionManager.class); + final Set<ParcelUuid> subGroups = mLastSnapshot.getAllSubscriptionGroups(); boolean shouldWrite = false; @@ -885,11 +890,20 @@ public class VcnManagementService extends IVcnManagementService.Stub { while (configsIterator.hasNext()) { final ParcelUuid subGrp = configsIterator.next(); - final List<SubscriptionInfo> subscriptions = subMgr.getSubscriptionsInGroup(subGrp); - if (subscriptions == null || subscriptions.isEmpty()) { - // Trim subGrps with no more subscriptions; must have moved to another subGrp - configsIterator.remove(); - shouldWrite = true; + if (Flags.fixConfigGarbageCollection()) { + if (!subGroups.contains(subGrp)) { + // Trim subGrps with no more subscriptions; must have moved to another subGrp + logDbg("Garbage collect VcnConfig for group=" + subGrp); + configsIterator.remove(); + shouldWrite = true; + } + } else { + final List<SubscriptionInfo> subscriptions = subMgr.getSubscriptionsInGroup(subGrp); + if (subscriptions == null || subscriptions.isEmpty()) { + // Trim subGrps with no more subscriptions; must have moved to another subGrp + configsIterator.remove(); + shouldWrite = true; + } } } @@ -992,7 +1006,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { android.Manifest.permission.NETWORK_FACTORY, android.Manifest.permission.MANAGE_TEST_NETWORKS); - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { PolicyListenerBinderDeath listenerBinderDeath = new PolicyListenerBinderDeath(listener); synchronized (mLock) { @@ -1019,7 +1033,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { android.Manifest.permission.NETWORK_FACTORY, android.Manifest.permission.MANAGE_TEST_NETWORKS); - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { synchronized (mLock) { PolicyListenerBinderDeath listenerBinderDeath = mRegisteredPolicyListeners.remove(listener.asBinder()); @@ -1083,7 +1097,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { + " MANAGE_TEST_NETWORKS"); } - return Binder.withCleanCallingIdentity(() -> { + return BinderUtils.withCleanCallingIdentity(() -> { // Defensive copy in case this call is in-process and the given NetworkCapabilities // mutates final NetworkCapabilities ncCopy = new NetworkCapabilities(networkCapabilities); @@ -1094,13 +1108,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { synchronized (mLock) { final Vcn vcn = mVcns.get(subGrp); final VcnConfig vcnConfig = mConfigs.get(subGrp); - if (vcn != null) { - if (vcnConfig == null) { - // TODO: b/284381334 Investigate for the root cause of this issue - // and handle it properly - logWtf("Vcn instance exists but VcnConfig does not for " + subGrp); - } - + if (vcn != null && vcnConfig != null) { if (vcn.getStatus() == VCN_STATUS_CODE_ACTIVE) { isVcnManagedNetwork = true; } @@ -1120,6 +1128,8 @@ public class VcnManagementService extends IVcnManagementService.Stub { } } } + } else if (vcn != null && vcnConfig == null) { + logWtf("Vcn instance exists but VcnConfig does not for " + subGrp); } } @@ -1522,7 +1532,7 @@ public class VcnManagementService extends IVcnManagementService.Stub { // Notify all registered StatusCallbacks for this subGroup for (VcnStatusCallbackInfo cbInfo : mRegisteredStatusCallbacks.values()) { if (isCallbackPermissioned(cbInfo, mSubGroup)) { - Binder.withCleanCallingIdentity(() -> { + BinderUtils.withCleanCallingIdentity(() -> { try { cbInfo.mCallback.onGatewayConnectionError( gatewayConnectionName, diff --git a/services/core/java/com/android/server/Watchdog.java b/services/core/java/com/android/server/Watchdog.java index 918f13096cdc..0dedb739d6a2 100644 --- a/services/core/java/com/android/server/Watchdog.java +++ b/services/core/java/com/android/server/Watchdog.java @@ -289,7 +289,7 @@ public class Watchdog implements Dumpable { public void scheduleCheckLocked(long handlerCheckerTimeoutMillis) { mWaitMaxMillis = handlerCheckerTimeoutMillis; - if (mCompleted) { + if (mCompleted && !mMonitorQueue.isEmpty()) { // Safe to update monitors in queue, Handler is not in the middle of work mMonitors.addAll(mMonitorQueue); mMonitorQueue.clear(); diff --git a/services/core/java/com/android/server/WiredAccessoryManager.java b/services/core/java/com/android/server/WiredAccessoryManager.java index b271d7ece733..ab69cd1ef17c 100644 --- a/services/core/java/com/android/server/WiredAccessoryManager.java +++ b/services/core/java/com/android/server/WiredAccessoryManager.java @@ -118,8 +118,11 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { if (mInputManager.getSwitchState(-1, InputDevice.SOURCE_ANY, SW_LINEOUT_INSERT) == 1) { switchValues |= SW_LINEOUT_INSERT_BIT; } - notifyWiredAccessoryChanged(0, switchValues, - SW_HEADPHONE_INSERT_BIT | SW_MICROPHONE_INSERT_BIT | SW_LINEOUT_INSERT_BIT); + notifyWiredAccessoryChanged( + 0, + switchValues, + SW_HEADPHONE_INSERT_BIT | SW_MICROPHONE_INSERT_BIT | SW_LINEOUT_INSERT_BIT, + true /*isSynchronous*/); } @@ -135,7 +138,13 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { } @Override - public void notifyWiredAccessoryChanged(long whenNanos, int switchValues, int switchMask) { + public void notifyWiredAccessoryChanged( + long whenNanos, int switchValues, int switchMask) { + notifyWiredAccessoryChanged(whenNanos, switchValues, switchMask, false /*isSynchronous*/); + } + + public void notifyWiredAccessoryChanged( + long whenNanos, int switchValues, int switchMask, boolean isSynchronous) { if (LOG) { Slog.v(TAG, "notifyWiredAccessoryChanged: when=" + whenNanos + " bits=" + switchCodeToString(switchValues, switchMask) @@ -172,8 +181,10 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { break; } - updateLocked(NAME_H2W, - (mHeadsetState & ~(BIT_HEADSET | BIT_HEADSET_NO_MIC | BIT_LINEOUT)) | headset); + updateLocked( + NAME_H2W, + (mHeadsetState & ~(BIT_HEADSET | BIT_HEADSET_NO_MIC | BIT_LINEOUT)) | headset, + isSynchronous); } } @@ -195,8 +206,9 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { * * @param newName One of the NAME_xxx variables defined above. * @param newState 0 or one of the BIT_xxx variables defined above. + * @param isSynchronous boolean to determine whether should happen sync or async */ - private void updateLocked(String newName, int newState) { + private void updateLocked(String newName, int newState, boolean isSynchronous) { // Retain only relevant bits int headsetState = newState & SUPPORTED_HEADSETS; int usb_headset_anlg = headsetState & BIT_USB_HEADSET_ANLG; @@ -234,12 +246,15 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { return; } - mWakeLock.acquire(); - - Log.i(TAG, "MSG_NEW_DEVICE_STATE"); - Message msg = mHandler.obtainMessage(MSG_NEW_DEVICE_STATE, headsetState, - mHeadsetState, ""); - mHandler.sendMessage(msg); + if (isSynchronous) { + setDevicesState(headsetState, mHeadsetState, ""); + } else { + mWakeLock.acquire(); + Log.i(TAG, "MSG_NEW_DEVICE_STATE"); + Message msg = mHandler.obtainMessage(MSG_NEW_DEVICE_STATE, headsetState, + mHeadsetState, ""); + mHandler.sendMessage(msg); + } mHeadsetState = headsetState; } @@ -439,7 +454,10 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { for (int i = 0; i < mUEventInfo.size(); ++i) { UEventInfo uei = mUEventInfo.get(i); if (devPath.equals(uei.getDevPath())) { - updateLocked(name, uei.computeNewHeadsetState(mHeadsetState, state)); + updateLocked( + name, + uei.computeNewHeadsetState(mHeadsetState, state), + false /*isSynchronous*/); return; } } @@ -550,7 +568,10 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { synchronized (mLock) { int mask = maskAndState.first; int state = maskAndState.second; - updateLocked(name, mHeadsetState & ~(mask & ~state) | (mask & state)); + updateLocked( + name, + mHeadsetState & ~(mask & ~state) | (mask & state), + false /*isSynchronous*/); return; } } diff --git a/services/core/java/com/android/server/adb/AdbDebuggingManager.java b/services/core/java/com/android/server/adb/AdbDebuggingManager.java index 34c3d7ec8433..a73a991bc6a6 100644 --- a/services/core/java/com/android/server/adb/AdbDebuggingManager.java +++ b/services/core/java/com/android/server/adb/AdbDebuggingManager.java @@ -74,6 +74,7 @@ import android.util.Slog; import android.util.Xml; import com.android.internal.R; +import com.android.internal.annotations.Keep; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.internal.util.FrameworkStatsLog; @@ -214,7 +215,7 @@ public class AdbDebuggingManager { class PairingThread extends Thread implements NsdManager.RegistrationListener { private NsdManager mNsdManager; - private String mPublicKey; + @Keep private String mPublicKey; private String mPairingCode; private String mGuid; private String mServiceName; diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index affe2980532b..4a4a1b4de0f0 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -371,7 +371,6 @@ import android.os.storage.StorageManager; import android.provider.DeviceConfig; import android.provider.Settings; import android.server.ServerProtoEnums; -import android.sysprop.InitProperties; import android.system.Os; import android.system.OsConstants; import android.telephony.TelephonyManager; @@ -450,7 +449,6 @@ import com.android.server.SystemConfig; import com.android.server.SystemService; import com.android.server.SystemServiceManager; import com.android.server.ThreadPriorityBooster; -import com.android.server.UserspaceRebootLogger; import com.android.server.Watchdog; import com.android.server.am.ComponentAliasResolver.Resolution; import com.android.server.am.LowMemDetector.MemFactor; @@ -751,12 +749,14 @@ public class ActivityManagerService extends IActivityManager.Stub /** * Map userId to its companion app uids. */ + @GuardedBy("mCompanionAppUidsMap") private final Map<Integer, Set<Integer>> mCompanionAppUidsMap = new ArrayMap<>(); /** * The profile owner UIDs. */ - private ArraySet<Integer> mProfileOwnerUids = null; + @GuardedBy("mProfileOwnerUids") + private final ArraySet<Integer> mProfileOwnerUids = new ArraySet<>(); final UserController mUserController; @VisibleForTesting @@ -2350,20 +2350,6 @@ public class ActivityManagerService extends IActivityManager.Stub } } - private void maybeLogUserspaceRebootEvent() { - if (!UserspaceRebootLogger.shouldLogUserspaceRebootEvent()) { - return; - } - final int userId = mUserController.getCurrentUserId(); - if (userId != UserHandle.USER_SYSTEM) { - // Only log for user0. - return; - } - // TODO(b/148767783): should we check all profiles under user0? - UserspaceRebootLogger.logEventAsync(StorageManager.isCeStorageUnlocked(userId), - BackgroundThread.getExecutor()); - } - /** * Encapsulates global settings related to hidden API enforcement behaviour, including tracking * the latest value via a content observer. @@ -2873,8 +2859,11 @@ public class ActivityManagerService extends IActivityManager.Stub if (isolated) { if (mIsolatedAppBindArgs == null) { mIsolatedAppBindArgs = new ArrayMap<>(1); + // See b/79378449 about the following exemption. addServiceToMap(mIsolatedAppBindArgs, "package"); - addServiceToMap(mIsolatedAppBindArgs, "permissionmgr"); + if (!android.server.Flags.removeJavaServiceManagerCache()) { + addServiceToMap(mIsolatedAppBindArgs, "permissionmgr"); + } } return mIsolatedAppBindArgs; } @@ -2885,27 +2874,38 @@ public class ActivityManagerService extends IActivityManager.Stub // Add common services. // IMPORTANT: Before adding services here, make sure ephemeral apps can access them too. // Enable the check in ApplicationThread.bindApplication() to make sure. + + // Removing User Service and App Ops Service from cache breaks boot for auto. + // Removing permissionmgr breaks tests for Android Auto due to SELinux restrictions. + // TODO: fix SELinux restrictions and remove caching for Android Auto. + if (mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE) + || !android.server.Flags.removeJavaServiceManagerCache()) { + addServiceToMap(mAppBindArgs, Context.ALARM_SERVICE); + addServiceToMap(mAppBindArgs, Context.DISPLAY_SERVICE); + addServiceToMap(mAppBindArgs, Context.NETWORKMANAGEMENT_SERVICE); + addServiceToMap(mAppBindArgs, Context.CONNECTIVITY_SERVICE); + addServiceToMap(mAppBindArgs, Context.ACCESSIBILITY_SERVICE); + addServiceToMap(mAppBindArgs, Context.INPUT_METHOD_SERVICE); + addServiceToMap(mAppBindArgs, Context.INPUT_SERVICE); + addServiceToMap(mAppBindArgs, "graphicsstats"); + addServiceToMap(mAppBindArgs, "content"); + addServiceToMap(mAppBindArgs, Context.JOB_SCHEDULER_SERVICE); + addServiceToMap(mAppBindArgs, Context.NOTIFICATION_SERVICE); + addServiceToMap(mAppBindArgs, Context.VIBRATOR_SERVICE); + addServiceToMap(mAppBindArgs, Context.ACCOUNT_SERVICE); + addServiceToMap(mAppBindArgs, Context.POWER_SERVICE); + addServiceToMap(mAppBindArgs, "mount"); + addServiceToMap(mAppBindArgs, Context.PLATFORM_COMPAT_SERVICE); + } + // See b/79378449 + // Getting the window service and package service binder from servicemanager + // is blocked for Apps. However they are necessary for apps. + // TODO: remove exception addServiceToMap(mAppBindArgs, "package"); - addServiceToMap(mAppBindArgs, "permissionmgr"); addServiceToMap(mAppBindArgs, Context.WINDOW_SERVICE); - addServiceToMap(mAppBindArgs, Context.ALARM_SERVICE); - addServiceToMap(mAppBindArgs, Context.DISPLAY_SERVICE); - addServiceToMap(mAppBindArgs, Context.NETWORKMANAGEMENT_SERVICE); - addServiceToMap(mAppBindArgs, Context.CONNECTIVITY_SERVICE); - addServiceToMap(mAppBindArgs, Context.ACCESSIBILITY_SERVICE); - addServiceToMap(mAppBindArgs, Context.INPUT_METHOD_SERVICE); - addServiceToMap(mAppBindArgs, Context.INPUT_SERVICE); - addServiceToMap(mAppBindArgs, "graphicsstats"); - addServiceToMap(mAppBindArgs, Context.APP_OPS_SERVICE); - addServiceToMap(mAppBindArgs, "content"); - addServiceToMap(mAppBindArgs, Context.JOB_SCHEDULER_SERVICE); - addServiceToMap(mAppBindArgs, Context.NOTIFICATION_SERVICE); - addServiceToMap(mAppBindArgs, Context.VIBRATOR_SERVICE); - addServiceToMap(mAppBindArgs, Context.ACCOUNT_SERVICE); - addServiceToMap(mAppBindArgs, Context.POWER_SERVICE); addServiceToMap(mAppBindArgs, Context.USER_SERVICE); - addServiceToMap(mAppBindArgs, "mount"); - addServiceToMap(mAppBindArgs, Context.PLATFORM_COMPAT_SERVICE); + addServiceToMap(mAppBindArgs, "permissionmgr"); + addServiceToMap(mAppBindArgs, Context.APP_OPS_SERVICE); } return mAppBindArgs; } @@ -5239,6 +5239,11 @@ public class ActivityManagerService extends IActivityManager.Stub mContext.registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + return; + } + String[] pkgs = intent.getStringArrayExtra(Intent.EXTRA_PACKAGES); if (pkgs != null) { for (String pkg : pkgs) { @@ -5291,12 +5296,6 @@ public class ActivityManagerService extends IActivityManager.Stub // Start looking for apps that are abusing wake locks. Message nmsg = mHandler.obtainMessage(CHECK_EXCESSIVE_POWER_USE_MSG); mHandler.sendMessageDelayed(nmsg, mConstants.POWER_CHECK_INTERVAL); - // Check if we are performing userspace reboot before setting sys.boot_completed to - // avoid race with init reseting sys.init.userspace_reboot.in_progress once sys - // .boot_completed is 1. - if (InitProperties.userspace_reboot_in_progress().orElse(false)) { - UserspaceRebootLogger.noteUserspaceRebootSuccess(); - } // Tell anyone interested that we are done booting! SystemProperties.set("sys.boot_completed", "1"); SystemProperties.set("dev.bootcomplete", "1"); @@ -5320,7 +5319,6 @@ public class ActivityManagerService extends IActivityManager.Stub }, mConstants.FULL_PSS_MIN_INTERVAL); } }); - maybeLogUserspaceRebootEvent(); mUserController.scheduleStartProfiles(); } // UART is on if init's console service is running, send a warning notification. @@ -12531,7 +12529,7 @@ public class ActivityManagerService extends IActivityManager.Stub opts.dumpProto = true; } else if ("--logstats".equals(opt)) { opts.mDumpAllocatorStats = true; - } else if ("-h".equals(opt)) { + } else if ("-h".equals(opt) || "--help".equals(opt)) { pw.println("meminfo dump options: [-a] [-d] [-c] [-s] [--oom] [process]"); pw.println(" -a: include all available information for each process."); pw.println(" -d: include dalvik details."); @@ -12541,10 +12539,13 @@ public class ActivityManagerService extends IActivityManager.Stub pw.println(" -p: dump also private dirty memory usage."); pw.println(" --oom: only show processes organized by oom adj."); pw.println(" --local: only collect details locally, don't call process."); + pw.println(" --logstats: dump native allocator stats to log"); pw.println(" --package: interpret process arg as package, dumping all"); pw.println(" processes that have loaded that package."); pw.println(" --checkin: dump data for a checkin"); pw.println(" --proto: dump data to proto"); + pw.println(" --logstats: log native allocator statistics."); + pw.println(" --unreachable: dump unreachable native memory with libmemunreachable."); pw.println("If [process] is specified it can be the name or "); pw.println("pid of a specific process to dump."); return; @@ -12707,7 +12708,7 @@ public class ActivityManagerService extends IActivityManager.Stub continue; } endTime = SystemClock.currentThreadTimeMillis(); - hasSwapPss = mi.hasSwappedOutPss; + hasSwapPss = hasSwapPss || mi.hasSwappedOutPss; memtrackGraphics = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GRAPHICS); memtrackGl = mi.getOtherPrivate(Debug.MemoryInfo.OTHER_GL); } else { @@ -13161,6 +13162,8 @@ public class ActivityManagerService extends IActivityManager.Stub final long lostRAM = memInfo.getTotalSizeKb() - (ss[INDEX_TOTAL_PSS] - ss[INDEX_TOTAL_SWAP_PSS]) - memInfo.getFreeSizeKb() - memInfo.getCachedSizeKb() + // NR_SHMEM is subtracted twice (getCachedSizeKb() and getKernelUsedSizeKb()) + + memInfo.getShmemSizeKb() - kernelUsed - memInfo.getZramTotalSizeKb(); if (!opts.isCompact) { pw.print(" Used RAM: "); pw.print(stringifyKBSize(ss[INDEX_TOTAL_PSS] - cachedPss @@ -13383,7 +13386,7 @@ public class ActivityManagerService extends IActivityManager.Stub continue; } endTime = SystemClock.currentThreadTimeMillis(); - hasSwapPss = mi.hasSwappedOutPss; + hasSwapPss = hasSwapPss || mi.hasSwappedOutPss; } else { reportType = ProcessStats.ADD_PSS_EXTERNAL; startTime = SystemClock.currentThreadTimeMillis(); @@ -13674,6 +13677,8 @@ public class ActivityManagerService extends IActivityManager.Stub long lostRAM = memInfo.getTotalSizeKb() - (ss[INDEX_TOTAL_PSS] - ss[INDEX_TOTAL_SWAP_PSS]) - memInfo.getFreeSizeKb() - memInfo.getCachedSizeKb() + // NR_SHMEM is subtracted twice (getCachedSizeKb() and getKernelUsedSizeKb()) + + memInfo.getShmemSizeKb() - memInfo.getKernelUsedSizeKb() - memInfo.getZramTotalSizeKb(); proto.write(MemInfoDumpProto.USED_PSS_KB, ss[INDEX_TOTAL_PSS] - cachedPss); proto.write(MemInfoDumpProto.USED_KERNEL_KB, memInfo.getKernelUsedSizeKb()); @@ -17420,10 +17425,8 @@ public class ActivityManagerService extends IActivityManager.Stub } psr.setReportedForegroundServiceTypes(fgServiceTypes); - ProcessChangeItem item = mProcessList.enqueueProcessChangeItemLocked( - proc.getPid(), proc.info.uid); - item.changes |= ProcessChangeItem.CHANGE_FOREGROUND_SERVICES; - item.foregroundServiceTypes = fgServiceTypes; + mProcessList.enqueueProcessChangeItemLocked(proc.getPid(), proc.info.uid, + ProcessChangeItem.CHANGE_FOREGROUND_SERVICES, fgServiceTypes); } if (oomAdj) { updateOomAdjLocked(proc, OOM_ADJ_REASON_UI_VISIBILITY); @@ -19624,32 +19627,35 @@ public class ActivityManagerService extends IActivityManager.Stub @Override public void setProfileOwnerUid(ArraySet<Integer> profileOwnerUids) { - synchronized (ActivityManagerService.this) { - mProfileOwnerUids = profileOwnerUids; + synchronized (mProfileOwnerUids) { + mProfileOwnerUids.clear(); + mProfileOwnerUids.addAll(profileOwnerUids); } } @Override public boolean isProfileOwner(int uid) { - synchronized (ActivityManagerService.this) { - return mProfileOwnerUids != null && mProfileOwnerUids.indexOf(uid) >= 0; + synchronized (mProfileOwnerUids) { + return mProfileOwnerUids.indexOf(uid) >= 0; } } @Override public void setCompanionAppUids(int userId, Set<Integer> companionAppUids) { - synchronized (ActivityManagerService.this) { + synchronized (mCompanionAppUidsMap) { mCompanionAppUidsMap.put(userId, companionAppUids); } } @Override public boolean isAssociatedCompanionApp(int userId, int uid) { - final Set<Integer> allUids = mCompanionAppUidsMap.get(userId); - if (allUids == null) { - return false; + synchronized (mCompanionAppUidsMap) { + final Set<Integer> allUids = mCompanionAppUidsMap.get(userId); + if (allUids == null) { + return false; + } + return allUids.contains(uid); } - return allUids.contains(uid); } @Override diff --git a/services/core/java/com/android/server/am/ActivityManagerShellCommand.java b/services/core/java/com/android/server/am/ActivityManagerShellCommand.java index bbd432340e8f..3a3f041c4189 100644 --- a/services/core/java/com/android/server/am/ActivityManagerShellCommand.java +++ b/services/core/java/com/android/server/am/ActivityManagerShellCommand.java @@ -110,6 +110,7 @@ import android.os.SystemClock; import android.os.Trace; import android.os.UserHandle; import android.os.UserManager; +import android.os.ZygoteProcess; import android.text.TextUtils; import android.util.ArrayMap; import android.util.ArraySet; @@ -439,6 +440,8 @@ final class ActivityManagerShellCommand extends ShellCommand { return runSetForegroundServiceDelegate(pw); case "capabilities": return runCapabilities(pw); + case "set-app-zygote-preload-timeout": + return runSetAppZygotePreloadTimeout(pw); default: return handleDefaultCommands(cmd); } @@ -448,6 +451,15 @@ final class ActivityManagerShellCommand extends ShellCommand { return -1; } + int runSetAppZygotePreloadTimeout(PrintWriter pw) throws RemoteException { + final String timeout = getNextArgRequired(); + final int timeoutMs = Integer.parseInt(timeout); + + ZygoteProcess.setAppZygotePreloadTimeout(timeoutMs); + + return 0; + } + int runCapabilities(PrintWriter pw) throws RemoteException { final PrintWriter err = getErrPrintWriter(); boolean outputAsProtobuf = false; @@ -4603,6 +4615,8 @@ final class ActivityManagerShellCommand extends ShellCommand { pw.println(" capabilities [--protobuf]"); pw.println(" Output am supported features (text format). Options are:"); pw.println(" --protobuf: format output using protobuffer"); + pw.println(" set-app-zygote-preload-timeout <TIMEOUT_IN_MS>"); + pw.println(" Set the timeout for preloading code in the app-zygote"); Intent.printIntentArgsHelp(pw, ""); } } diff --git a/services/core/java/com/android/server/am/AppExitInfoTracker.java b/services/core/java/com/android/server/am/AppExitInfoTracker.java index 47b65eb885ab..1f88657e5dbc 100644 --- a/services/core/java/com/android/server/am/AppExitInfoTracker.java +++ b/services/core/java/com/android/server/am/AppExitInfoTracker.java @@ -353,8 +353,8 @@ public final class AppExitInfoTracker { } /** Called when there is a low memory kill */ - void scheduleNoteLmkdProcKilled(final int pid, final int uid) { - mKillHandler.obtainMessage(KillHandler.MSG_LMKD_PROC_KILLED, pid, uid) + void scheduleNoteLmkdProcKilled(final int pid, final int uid, final int rssKb) { + mKillHandler.obtainMessage(KillHandler.MSG_LMKD_PROC_KILLED, pid, uid, Long.valueOf(rssKb)) .sendToTarget(); } @@ -401,9 +401,9 @@ public final class AppExitInfoTracker { if (lmkd != null) { updateExistingExitInfoRecordLocked(info, null, - ApplicationExitInfo.REASON_LOW_MEMORY); + ApplicationExitInfo.REASON_LOW_MEMORY, (Long) lmkd.second); } else if (zygote != null) { - updateExistingExitInfoRecordLocked(info, (Integer) zygote.second, null); + updateExistingExitInfoRecordLocked(info, (Integer) zygote.second, null, null); } else { scheduleLogToStatsdLocked(info, false); } @@ -486,7 +486,7 @@ public final class AppExitInfoTracker { */ @GuardedBy("mLock") private void updateExistingExitInfoRecordLocked(ApplicationExitInfo info, - Integer status, Integer reason) { + Integer status, Integer reason, Long rssKb) { if (info == null || !isFresh(info.getTimestamp())) { // if the record is way outdated, don't update it then (because of potential pid reuse) return; @@ -513,6 +513,9 @@ public final class AppExitInfoTracker { immediateLog = true; } } + if (rssKb != null) { + info.setRss(rssKb.longValue()); + } scheduleLogToStatsdLocked(info, immediateLog); } @@ -523,7 +526,7 @@ public final class AppExitInfoTracker { */ @GuardedBy("mLock") private boolean updateExitInfoIfNecessaryLocked( - int pid, int uid, Integer status, Integer reason) { + int pid, int uid, Integer status, Integer reason, Long rssKb) { Integer k = mIsolatedUidRecords.getUidByIsolatedUid(uid); if (k != null) { uid = k; @@ -552,7 +555,7 @@ public final class AppExitInfoTracker { // always be the first one we se as `getExitInfosLocked()` returns them sorted // by most-recent-first. isModified[0] = true; - updateExistingExitInfoRecordLocked(info, status, reason); + updateExistingExitInfoRecordLocked(info, status, reason, rssKb); return FOREACH_ACTION_STOP_ITERATION; } return FOREACH_ACTION_NONE; @@ -1668,11 +1671,11 @@ public final class AppExitInfoTracker { switch (msg.what) { case MSG_LMKD_PROC_KILLED: mAppExitInfoSourceLmkd.onProcDied(msg.arg1 /* pid */, msg.arg2 /* uid */, - null /* status */); + null /* status */, (Long) msg.obj /* rss_kb */); break; case MSG_CHILD_PROC_DIED: mAppExitInfoSourceZygote.onProcDied(msg.arg1 /* pid */, msg.arg2 /* uid */, - (Integer) msg.obj /* status */); + (Integer) msg.obj /* status */, null /* rss_kb */); break; case MSG_PROC_DIED: { ApplicationExitInfo raw = (ApplicationExitInfo) msg.obj; @@ -1833,7 +1836,7 @@ public final class AppExitInfoTracker { } } - void onProcDied(final int pid, final int uid, final Integer status) { + void onProcDied(final int pid, final int uid, final Integer status, final Long rssKb) { if (DEBUG_PROCESSES) { Slog.i(TAG, mTag + ": proc died: pid=" + pid + " uid=" + uid + ", status=" + status); @@ -1846,8 +1849,12 @@ public final class AppExitInfoTracker { // Unlikely but possible: the record has been created // Let's update it if we could find a ApplicationExitInfo record synchronized (mLock) { - if (!updateExitInfoIfNecessaryLocked(pid, uid, status, mPresetReason)) { - addLocked(pid, uid, status); + if (!updateExitInfoIfNecessaryLocked(pid, uid, status, mPresetReason, rssKb)) { + if (rssKb != null) { + addLocked(pid, uid, rssKb); // lmkd + } else { + addLocked(pid, uid, status); // zygote + } } // Notify any interesed party regarding the lmkd kills diff --git a/services/core/java/com/android/server/am/AppRestrictionController.java b/services/core/java/com/android/server/am/AppRestrictionController.java index 4a31fd1f46e4..c036605b029f 100644 --- a/services/core/java/com/android/server/am/AppRestrictionController.java +++ b/services/core/java/com/android/server/am/AppRestrictionController.java @@ -308,7 +308,7 @@ public final class AppRestrictionController { /** * Cache the package name and information about if it's a system module. */ - @GuardedBy("mLock") + @GuardedBy("mSystemModulesCache") private final HashMap<String, Boolean> mSystemModulesCache = new HashMap<>(); /** @@ -373,7 +373,10 @@ public final class AppRestrictionController { @Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); - switch (intent.getAction()) { + if (action == null) { + return; + } + switch (action) { case Intent.ACTION_PACKAGE_ADDED: { if (!intent.getBooleanExtra(Intent.EXTRA_REPLACING, false)) { final int uid = intent.getIntExtra(Intent.EXTRA_UID, -1); @@ -1603,7 +1606,7 @@ public final class AppRestrictionController { if (moduleInfos == null) { return; } - synchronized (mLock) { + synchronized (mSystemModulesCache) { for (ModuleInfo info : moduleInfos) { mSystemModulesCache.put(info.getPackageName(), Boolean.TRUE); } @@ -1611,7 +1614,7 @@ public final class AppRestrictionController { } private boolean isSystemModule(String packageName) { - synchronized (mLock) { + synchronized (mSystemModulesCache) { final Boolean val = mSystemModulesCache.get(packageName); if (val != null) { return val.booleanValue(); @@ -1639,7 +1642,7 @@ public final class AppRestrictionController { } } // Update the cache. - synchronized (mLock) { + synchronized (mSystemModulesCache) { mSystemModulesCache.put(packageName, isSystemModule); } return isSystemModule; diff --git a/services/core/java/com/android/server/am/OWNERS b/services/core/java/com/android/server/am/OWNERS index b517631f35c0..6f99673a9ce6 100644 --- a/services/core/java/com/android/server/am/OWNERS +++ b/services/core/java/com/android/server/am/OWNERS @@ -1,47 +1,74 @@ # Applications & Processes -yamasani@google.com -jsharkey@google.com -hackbod@google.com -omakoto@google.com -ctate@google.com -huiyu@google.com -mwachens@google.com -sudheersai@google.com -suprabh@google.com -varunshah@google.com -bookatz@google.com -jji@google.com - -# Windows & Activities -ogunwale@google.com +per-file ActivityManager* = file:/ACTIVITY_MANAGER_OWNERS +per-file ActiveServices.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessList.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ActivityThread.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file SystemServer.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ServiceRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file AppProfiler.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessStateRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessServiceRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ForegroundServiceTypeLoggerModule.java = file:/ACTIVITY_MANAGER_OWNERS +per-file AppRestrictionController.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessErrorStateRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ProcessProfileRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file ConnectionRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file UidRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file IntentBindRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file AppFGSTracker.java = file:/ACTIVITY_MANAGER_OWNERS +per-file FgsTempAllowList.java = file:/ACTIVITY_MANAGER_OWNERS +per-file HostingRecord.java = file:/ACTIVITY_MANAGER_OWNERS +per-file App*ExitInfo* = file:/ACTIVITY_MANAGER_OWNERS +per-file appexitinfo.proto = file:/ACTIVITY_MANAGER_OWNERS +per-file App*StartInfo* = file:/PERFORMANCE_OWNERS +per-file appstartinfo.proto = file:/PERFORMANCE_OWNERS # Permissions & Packages -patb@google.com per-file AccessCheckDelegateHelper.java = file:/core/java/android/permission/OWNERS # Battery Stats -joeo@google.com +per-file AppBatteryTracker.java = file:/BATTERY_STATS_OWNERS per-file BatteryStats* = file:/BATTERY_STATS_OWNERS per-file BatteryExternalStats* = file:/BATTERY_STATS_OWNERS -# Londoners -michaelwr@google.com -narayan@google.com - # Voice Interaction per-file *Assist* = file:/core/java/android/service/voice/OWNERS per-file *Voice* = file:/core/java/android/service/voice/OWNERS -per-file SettingsToPropertiesMapper.java = omakoto@google.com, yamasani@google.com, dzshen@google.com, zhidou@google.com, tedbauer@google.com - -per-file CarUserSwitchingDialog.java = file:platform/packages/services/Car:/OWNERS - -per-file ContentProviderHelper.java = varunshah@google.com, omakoto@google.com, jsharkey@google.com, yamasani@google.com +# Content Provider +per-file ContentProvider* = varunshah@google.com, yamasani@google.com +# Cached App Freezer +per-file ProcessCachedOptimizerRecord.java = file:/PERFORMANCE_OWNERS per-file CachedAppOptimizer.java = file:/PERFORMANCE_OWNERS +per-file Freezer.java = file:/PERFORMANCE_OWNERS # Multiuser per-file User* = file:/MULTIUSER_OWNERS # Broadcasts per-file Broadcast* = file:/BROADCASTS_OWNERS + +# Permissions & Packages +per-file *Permission* = patb@google.com +per-file *Package* = patb@google.com + +# OOM Adjuster +per-file *Oom* = file:/OOM_ADJUSTER_OWNERS + +# Miscellaneous +per-file SettingsToPropertiesMapper.java = omakoto@google.com, yamasani@google.com, dzshen@google.com, zhidou@google.com, tedbauer@google.com +per-file CarUserSwitchingDialog.java = file:platform/packages/services/Car:/OWNERS + +# Activity Security +per-file ActivityManager* = file:/ACTIVITY_SECURITY_OWNERS + +# Londoners +michaelwr@google.com #{LAST_RESORT_SUGGESTION} +narayan@google.com #{LAST_RESORT_SUGGESTION} + +# Default +yamasani@google.com +hackbod@google.com #{LAST_RESORT_SUGGESTION} +omakoto@google.com #{LAST_RESORT_SUGGESTION}
\ No newline at end of file diff --git a/services/core/java/com/android/server/am/OomAdjuster.java b/services/core/java/com/android/server/am/OomAdjuster.java index c9e0666add42..f2c8373f7681 100644 --- a/services/core/java/com/android/server/am/OomAdjuster.java +++ b/services/core/java/com/android/server/am/OomAdjuster.java @@ -3588,14 +3588,12 @@ public class OomAdjuster { if (changes != 0) { if (DEBUG_PROCESS_OBSERVERS) Slog.i(TAG_PROCESS_OBSERVERS, "Changes in " + app + ": " + changes); - ActivityManagerService.ProcessChangeItem item = - mProcessList.enqueueProcessChangeItemLocked(app.getPid(), app.info.uid); - item.changes |= changes; - item.foregroundActivities = state.hasRepForegroundActivities(); + mProcessList.enqueueProcessChangeItemLocked(app.getPid(), app.info.uid, + changes, state.hasRepForegroundActivities()); if (DEBUG_PROCESS_OBSERVERS) Slog.i(TAG_PROCESS_OBSERVERS, - "Item " + Integer.toHexString(System.identityHashCode(item)) - + " " + app.toShortString() + ": changes=" + item.changes - + " foreground=" + item.foregroundActivities + "Enqueued process change item for " + + app.toShortString() + ": changes=" + changes + + " foreground=" + state.hasRepForegroundActivities() + " type=" + state.getAdjType() + " source=" + state.getAdjSource() + " target=" + state.getAdjTarget()); } diff --git a/services/core/java/com/android/server/am/OomAdjusterModernImpl.java b/services/core/java/com/android/server/am/OomAdjusterModernImpl.java index 21842db590b0..fb1c2e9a1f9d 100644 --- a/services/core/java/com/android/server/am/OomAdjusterModernImpl.java +++ b/services/core/java/com/android/server/am/OomAdjusterModernImpl.java @@ -331,7 +331,7 @@ public class OomAdjusterModernImpl extends OomAdjuster { void forEachNewNode(int slot, @NonNull Consumer<OomAdjusterArgs> callback) { ProcessRecordNode node = mLastNode[slot].mNext; final ProcessRecordNode tail = mProcessRecordNodes[slot].TAIL; - while (node != tail) { + while (node != null && node != tail) { mTmpOomAdjusterArgs.mApp = node.mApp; if (node.mApp == null) { // TODO(b/336178916) - Temporary logging for root causing b/336178916. @@ -365,7 +365,9 @@ public class OomAdjusterModernImpl extends OomAdjuster { } // Save the next before calling callback, since that may change the node.mNext. final ProcessRecordNode next = node.mNext; - callback.accept(mTmpOomAdjusterArgs); + if (mTmpOomAdjusterArgs.mApp != null) { + callback.accept(mTmpOomAdjusterArgs); + } // There are couple of cases: // a) The current node is moved to another slot // - for this case, we'd need to keep using the "next" node. diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java index bea0e00c2a55..554265abf94d 100644 --- a/services/core/java/com/android/server/am/ProcessList.java +++ b/services/core/java/com/android/server/am/ProcessList.java @@ -810,10 +810,8 @@ public final class ProcessList { private final Object mProcessChangeLock = new Object(); /** - * All of the applications we currently have running organized by name. - * The keys are strings of the application package name (as - * returned by the package manager), and the keys are ApplicationRecord - * objects. + * All of the processes that are running organized by name. + * The keys are process names and the values are the associated ProcessRecord objects. */ @CompositeRWLock({"mService", "mProcLock"}) private final MyProcessMap mProcessNames = new MyProcessMap(); @@ -951,12 +949,14 @@ public final class ProcessList { try { switch (inputData.readInt()) { case LMK_PROCKILL: - if (receivedLen != 12) { + if (receivedLen != 16) { return false; } final int pid = inputData.readInt(); final int uid = inputData.readInt(); - mAppExitInfoTracker.scheduleNoteLmkdProcKilled(pid, uid); + final int rssKb = inputData.readInt(); + mAppExitInfoTracker.scheduleNoteLmkdProcKilled(pid, uid, + rssKb); return true; case LMK_KILL_OCCURRED: if (receivedLen @@ -2388,8 +2388,8 @@ public final class ProcessList { } String volumeUuid = packageState.getVolumeUuid(); long inode = packageState.getUserStateOrDefault(userId).getCeDataInode(); - if (inode == 0) { - Slog.w(TAG, packageName + " inode == 0 (b/152760674)"); + if (inode <= 0) { + Slog.w(TAG, packageName + " inode == 0 or app uninstalled with keep-data"); return null; } result.put(packageName, Pair.create(volumeUuid, inode)); @@ -4985,50 +4985,67 @@ public final class ProcessList { } @GuardedBy("mService") - ProcessChangeItem enqueueProcessChangeItemLocked(int pid, int uid) { + void enqueueProcessChangeItemLocked(int pid, int uid, int changes, int foregroundServicetypes) { synchronized (mProcessChangeLock) { - int i = mPendingProcessChanges.size() - 1; - ActivityManagerService.ProcessChangeItem item = null; - while (i >= 0) { - item = mPendingProcessChanges.get(i); - if (item.pid == pid) { - if (DEBUG_PROCESS_OBSERVERS) { - Slog.i(TAG_PROCESS_OBSERVERS, "Re-using existing item: " + item); - } - break; + final ProcessChangeItem item = enqueueProcessChangeItemLocked(pid, uid); + item.changes |= changes; + item.foregroundServiceTypes = foregroundServicetypes; + } + } + + @GuardedBy("mService") + void enqueueProcessChangeItemLocked(int pid, int uid, int changes, + boolean hasForegroundActivities) { + synchronized (mProcessChangeLock) { + final ProcessChangeItem item = enqueueProcessChangeItemLocked(pid, uid); + item.changes |= changes; + item.foregroundActivities = hasForegroundActivities; + } + } + + @GuardedBy({"mService", "mProcessChangeLock"}) + private ProcessChangeItem enqueueProcessChangeItemLocked(int pid, int uid) { + int i = mPendingProcessChanges.size() - 1; + ActivityManagerService.ProcessChangeItem item = null; + while (i >= 0) { + item = mPendingProcessChanges.get(i); + if (item.pid == pid) { + if (DEBUG_PROCESS_OBSERVERS) { + Slog.i(TAG_PROCESS_OBSERVERS, "Re-using existing item: " + item); } - i--; + break; } + i--; + } - if (i < 0) { - // No existing item in pending changes; need a new one. - final int num = mAvailProcessChanges.size(); - if (num > 0) { - item = mAvailProcessChanges.remove(num - 1); - if (DEBUG_PROCESS_OBSERVERS) { - Slog.i(TAG_PROCESS_OBSERVERS, "Retrieving available item: " + item); - } - } else { - item = new ActivityManagerService.ProcessChangeItem(); - if (DEBUG_PROCESS_OBSERVERS) { - Slog.i(TAG_PROCESS_OBSERVERS, "Allocating new item: " + item); - } + if (i < 0) { + // No existing item in pending changes; need a new one. + final int num = mAvailProcessChanges.size(); + if (num > 0) { + item = mAvailProcessChanges.remove(num - 1); + if (DEBUG_PROCESS_OBSERVERS) { + Slog.i(TAG_PROCESS_OBSERVERS, "Retrieving available item: " + item); } - item.changes = 0; - item.pid = pid; - item.uid = uid; - if (mPendingProcessChanges.size() == 0) { - if (DEBUG_PROCESS_OBSERVERS) { - Slog.i(TAG_PROCESS_OBSERVERS, "*** Enqueueing dispatch processes changed!"); - } - mService.mUiHandler.obtainMessage(DISPATCH_PROCESSES_CHANGED_UI_MSG) - .sendToTarget(); + } else { + item = new ActivityManagerService.ProcessChangeItem(); + if (DEBUG_PROCESS_OBSERVERS) { + Slog.i(TAG_PROCESS_OBSERVERS, "Allocating new item: " + item); } - mPendingProcessChanges.add(item); } - - return item; + item.changes = 0; + item.pid = pid; + item.uid = uid; + if (mPendingProcessChanges.size() == 0) { + if (DEBUG_PROCESS_OBSERVERS) { + Slog.i(TAG_PROCESS_OBSERVERS, "*** Enqueueing dispatch processes changed!"); + } + mService.mUiHandler.obtainMessage(DISPATCH_PROCESSES_CHANGED_UI_MSG) + .sendToTarget(); + } + mPendingProcessChanges.add(item); } + + return item; } @GuardedBy("mService") @@ -5129,6 +5146,7 @@ public final class ProcessList { if (ai != null) { if (ai.packageName.equals(app.info.packageName)) { app.info = ai; + app.getWindowProcessController().updateApplicationInfo(ai); PlatformCompatCache.getInstance() .onApplicationInfoChanged(ai); } diff --git a/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java b/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java index cbea7aa9a92c..4ec2a04551e9 100644 --- a/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java +++ b/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java @@ -39,6 +39,7 @@ import android.aconfigd.Aconfigd.StorageRequestMessages; import android.aconfigd.Aconfigd.StorageReturnMessage; import android.aconfigd.Aconfigd.StorageReturnMessages; import static com.android.aconfig_new_storage.Flags.enableAconfigStorageDaemon; +import static com.android.aconfig.flags.Flags.enableSystemAconfigdRust; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -391,9 +392,11 @@ public class SettingsToPropertiesMapper { static ProtoInputStream sendAconfigdRequests(ProtoOutputStream requests) { // connect to aconfigd socket LocalSocket client = new LocalSocket(); - try{ + String socketName = enableSystemAconfigdRust() + ? "aconfigd_system" : "aconfigd"; + try { client.connect(new LocalSocketAddress( - "aconfigd", LocalSocketAddress.Namespace.RESERVED)); + socketName, LocalSocketAddress.Namespace.RESERVED)); Slog.d(TAG, "connected to aconfigd socket"); } catch (IOException ioe) { logErr("failed to connect to aconfigd socket", ioe); @@ -445,7 +448,9 @@ public class SettingsToPropertiesMapper { proto.write(StorageRequestMessage.FlagOverrideMessage.PACKAGE_NAME, packageName); proto.write(StorageRequestMessage.FlagOverrideMessage.FLAG_NAME, flagName); proto.write(StorageRequestMessage.FlagOverrideMessage.FLAG_VALUE, flagValue); - proto.write(StorageRequestMessage.FlagOverrideMessage.IS_LOCAL, isLocal); + proto.write(StorageRequestMessage.FlagOverrideMessage.OVERRIDE_TYPE, isLocal + ? StorageRequestMessage.LOCAL_ON_REBOOT + : StorageRequestMessage.SERVER_ON_REBOOT); proto.end(msgToken); proto.end(msgsToken); } diff --git a/services/core/java/com/android/server/am/TEST_MAPPING b/services/core/java/com/android/server/am/TEST_MAPPING index bac513221c78..6383dcb000ab 100644 --- a/services/core/java/com/android/server/am/TEST_MAPPING +++ b/services/core/java/com/android/server/am/TEST_MAPPING @@ -22,75 +22,24 @@ ] }, { - "name": "CtsAppFgsTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAppFgsTestCases_pm_Presubmit" }, { - "name": "CtsShortFgsTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsShortFgsTestCases_pm_Presubmit" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.am." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksServicesTests_android_server_am_Presubmit" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.am." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksMockingServicesTests_android_server_am_Presubmit" }, { "file_patterns": ["Battery[^/]*\\.java", "MeasuredEnergy[^/]*\\.java"], - "name": "FrameworksCoreTests", - "options": [ - { "include-filter": "com.android.internal.os.BatteryStatsTests" }, - { "exclude-annotation": "com.android.internal.os.SkipPresubmit" } - ] + "name": "FrameworksCoreTests_battery_stats" }, { "file_patterns": ["Battery[^/]*\\.java", "MeasuredEnergy[^/]*\\.java"], - "name": "FrameworksServicesTests", - "options": [ - { "include-filter": "com.android.server.am.BatteryStatsServiceTest" } - ] + "name": "FrameworksServicesTests_battery_stats" }, { "file_patterns": ["Battery[^/]*\\.java", "MeasuredEnergy[^/]*\\.java"], @@ -98,42 +47,23 @@ }, { "file_patterns": ["Broadcast.*"], - "name": "FrameworksMockingServicesTests", - "options": [ - { "include-filter": "com.android.server.am.BroadcastRecordTest" }, - { "include-filter": "com.android.server.am.BroadcastQueueTest" }, - { "include-filter": "com.android.server.am.BroadcastQueueModernImplTest" } - ] + "name": "FrameworksMockingServicesTests_android_server_am_broadcast" }, { "file_patterns": ["Broadcast.*"], - "name": "CtsBroadcastTestCases", - "options": [ - { "exclude-annotation": "androidx.test.filters.LargeTest" }, - { "exclude-annotation": "androidx.test.filters.FlakyTest" }, - { "exclude-annotation": "org.junit.Ignore" } - ] + "name": "CtsBroadcastTestCases_android_server_am" }, { - "name": "CtsBRSTestCases", "file_patterns": [ "ActivityManagerService\\.java", "BroadcastQueue\\.java" ], - "options": [ - { "exclude-annotation": "androidx.test.filters.FlakyTest" }, - { "exclude-annotation": "org.junit.Ignore" } - ] + "name": "CtsBRSTestCases" } ], "postsubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.am." - } - ] + "name": "FrameworksServicesTests_android_server_am" }, { "name": "CtsAppDataIsolationHostTestCases" @@ -149,13 +79,7 @@ ] }, { - "name": "CtsStatsdAtomHostTestCases", - "options": [ - { "include-filter": "android.cts.statsdatom.appexit.AppExitHostTest" }, - { "exclude-annotation": "androidx.test.filters.LargeTest" }, - { "exclude-annotation": "androidx.test.filters.FlakyTest" }, - { "exclude-annotation": "org.junit.Ignore" } - ] + "name": "CtsStatsdAtomHostTestCases_appexit_appexithosttest" }, { "name": "CtsContentTestCases", diff --git a/services/core/java/com/android/server/app/TEST_MAPPING b/services/core/java/com/android/server/app/TEST_MAPPING index 82840ee5fcbb..9e76175ae866 100644 --- a/services/core/java/com/android/server/app/TEST_MAPPING +++ b/services/core/java/com/android/server/app/TEST_MAPPING @@ -1,54 +1,19 @@ { "presubmit": [ { - "name": "CtsGameManagerTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsGameManagerTestCases" }, { - "name": "CtsStatsdAtomHostTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.cts.statsdatom.gamemanager" - } - ], + "name": "CtsStatsdAtomHostTestCases_statsdatom_gamemanager", "file_patterns": [ "(/|^)GameManagerService.java" ] }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.app" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksMockingServicesTests_android_server_app" }, { - "name": "FrameworksCoreGameManagerTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.app" - } - ], + "name": "FrameworksCoreGameManagerTests_android_app", "file_patterns": [ "(/|^)GameManagerService.java", "(/|^)GameManagerSettings.java" ] diff --git a/services/core/java/com/android/server/appbinding/AppBindingService.java b/services/core/java/com/android/server/appbinding/AppBindingService.java index 5db6dc7ccc15..6ccb3ee8bcc9 100644 --- a/services/core/java/com/android/server/appbinding/AppBindingService.java +++ b/services/core/java/com/android/server/appbinding/AppBindingService.java @@ -235,6 +235,9 @@ public class AppBindingService extends Binder { } final String action = intent.getAction(); + if (action == null) { + return; + } if (Intent.ACTION_USER_REMOVED.equals(action)) { onUserRemoved(userId); diff --git a/services/core/java/com/android/server/appop/AppOpsService.java b/services/core/java/com/android/server/appop/AppOpsService.java index 1bb792227798..7600855c0f58 100644 --- a/services/core/java/com/android/server/appop/AppOpsService.java +++ b/services/core/java/com/android/server/appop/AppOpsService.java @@ -1032,6 +1032,9 @@ public class AppOpsService extends IAppOpsService.Stub { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); + if (action == null) { + return; + } String pkgName = intent.getData().getEncodedSchemeSpecificPart(); int uid = intent.getIntExtra(Intent.EXTRA_UID, Process.INVALID_UID); @@ -2790,8 +2793,9 @@ public class AppOpsService extends IAppOpsService.Stub { * have information on them. */ private static boolean isOpAllowedForUid(int uid) { + int appId = UserHandle.getAppId(uid); return Flags.runtimePermissionAppopsMappingEnabled() - && (uid == Process.ROOT_UID || uid == Process.SYSTEM_UID); + && (appId == Process.ROOT_UID || appId == Process.SYSTEM_UID); } @Override @@ -4969,17 +4973,7 @@ public class AppOpsService extends IAppOpsService.Stub { } success = true; - } catch (IllegalStateException e) { - Slog.w(TAG, "Failed parsing " + e); - } catch (NullPointerException e) { - Slog.w(TAG, "Failed parsing " + e); - } catch (NumberFormatException e) { - Slog.w(TAG, "Failed parsing " + e); - } catch (XmlPullParserException e) { - Slog.w(TAG, "Failed parsing " + e); - } catch (IOException e) { - Slog.w(TAG, "Failed parsing " + e); - } catch (IndexOutOfBoundsException e) { + } catch (Exception e) { Slog.w(TAG, "Failed parsing " + e); } finally { if (!success) { diff --git a/services/core/java/com/android/server/appop/LegacyAppOpStateParser.java b/services/core/java/com/android/server/appop/LegacyAppOpStateParser.java index 9ed3a99013ea..b677a1dfc84b 100644 --- a/services/core/java/com/android/server/appop/LegacyAppOpStateParser.java +++ b/services/core/java/com/android/server/appop/LegacyAppOpStateParser.java @@ -50,6 +50,10 @@ class LegacyAppOpStateParser { public int readState(AtomicFile file, SparseArray<SparseIntArray> uidModes, SparseArray<ArrayMap<String, SparseIntArray>> userPackageModes) { try (FileInputStream stream = file.openRead()) { + SparseArray<SparseIntArray> parsedUidModes = new SparseArray<>(); + SparseArray<ArrayMap<String, SparseIntArray>> parsedUserPackageModes = + new SparseArray<>(); + TypedXmlPullParser parser = Xml.resolvePullParser(stream); int type; while ((type = parser.next()) != XmlPullParser.START_TAG @@ -75,26 +79,37 @@ class LegacyAppOpStateParser { // version 2 has the structure pkg -> uid -> op -> // in version 3, since pkg and uid states are kept completely // independent we switch to user -> pkg -> op - readPackage(parser, userPackageModes); + readPackage(parser, parsedUserPackageModes); } else if (tagName.equals("uid")) { - readUidOps(parser, uidModes); + readUidOps(parser, parsedUidModes); } else if (tagName.equals("user")) { - readUser(parser, userPackageModes); + readUser(parser, parsedUserPackageModes); } else { Slog.w(TAG, "Unknown element under <app-ops>: " + parser.getName()); XmlUtils.skipCurrentTag(parser); } } + + // Parsing is complete, copy all parsed values to output + final int parsedUidModesSize = parsedUidModes.size(); + for (int i = 0; i < parsedUidModesSize; i++) { + uidModes.put(parsedUidModes.keyAt(i), parsedUidModes.valueAt(i)); + } + final int parsedUserPackageModesSize = parsedUserPackageModes.size(); + for (int i = 0; i < parsedUserPackageModesSize; i++) { + userPackageModes.put(parsedUserPackageModes.keyAt(i), + parsedUserPackageModes.valueAt(i)); + } + return versionAtBoot; } catch (FileNotFoundException e) { Slog.i(TAG, "No existing app ops " + file.getBaseFile() + "; starting empty"); - return NO_FILE_VERSION; - } catch (XmlPullParserException e) { - throw new RuntimeException(e); - } catch (IOException e) { - throw new RuntimeException(e); + } catch (Exception e) { + // All exceptions must be caught, otherwise device will not be able to boot + Slog.wtf(TAG, "Failed parsing " + e); } + return NO_FILE_VERSION; } private void readPackage(TypedXmlPullParser parser, diff --git a/services/core/java/com/android/server/appop/TEST_MAPPING b/services/core/java/com/android/server/appop/TEST_MAPPING index 65f6af7d0309..25dd30b0226a 100644 --- a/services/core/java/com/android/server/appop/TEST_MAPPING +++ b/services/core/java/com/android/server/appop/TEST_MAPPING @@ -1,59 +1,22 @@ { "presubmit": [ { - "name": "CtsAppOpsTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAppOpsTestCases" }, { "name": "CtsAppOps2TestCases" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.appop" - } - ] + "name": "FrameworksServicesTests_android_server_appop" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.appop" - } - ] + "name": "FrameworksMockingServicesTests_android_server_appop" }, { - "name": "CtsPermissionTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.permission.cts.BackgroundPermissionsTest" - }, - { - "include-filter": "android.permission.cts.SplitPermissionTest" - }, - { - "include-filter": "android.permission.cts.PermissionFlagsTest" - }, - { - "include-filter": "android.permission.cts.SharedUidPermissionsTest" - } - ] + "name": "CtsPermissionTestCases_Platform" }, { - "name": "CtsAppTestCases", - "options": [ - { - "include-filter": "android.app.cts.ActivityManagerApi29Test" - } - ] + "name": "CtsAppTestCases_cts_activitymanagerapi29test" }, { "name": "CtsStatsdAtomHostTestCases", diff --git a/services/core/java/com/android/server/attention/TEST_MAPPING b/services/core/java/com/android/server/attention/TEST_MAPPING index e5b034415824..519ed071830d 100644 --- a/services/core/java/com/android/server/attention/TEST_MAPPING +++ b/services/core/java/com/android/server/attention/TEST_MAPPING @@ -1,24 +1,7 @@ { "presubmit": [ { - "name": "CtsVoiceInteractionTestCases", - "options": [ - { - "include-filter": "android.voiceinteraction.cts.AlwaysOnHotwordDetectorTest" - }, - { - "include-filter": "android.voiceinteraction.cts.unittests.HotwordDetectedResultTest" - }, - { - "include-filter": "android.voiceinteraction.cts.HotwordDetectionServiceBasicTest" - }, - { - "include-filter": "android.voiceinteraction.cts.HotwordDetectionServiceProximityTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVoiceInteractionTestCases_android_server_attention" } ] } diff --git a/services/core/java/com/android/server/audio/AudioDeviceBroker.java b/services/core/java/com/android/server/audio/AudioDeviceBroker.java index 0b3b1112e2ed..428bf13cf390 100644 --- a/services/core/java/com/android/server/audio/AudioDeviceBroker.java +++ b/services/core/java/com/android/server/audio/AudioDeviceBroker.java @@ -332,8 +332,8 @@ public class AudioDeviceBroker { Log.v(TAG, "setCommunicationDevice, device: " + device + ", uid: " + uid); } - synchronized (mDeviceStateLock) { - if (device == null) { + if (device == null) { + synchronized (mDeviceStateLock) { CommunicationRouteClient client = getCommunicationRouteClientForUid(uid); if (client == null) { return false; @@ -1483,38 +1483,6 @@ public class AudioDeviceBroker { sendLMsgNoDelay(MSG_L_COMMUNICATION_ROUTE_CLIENT_DIED, SENDMSG_QUEUE, client); } - /*package*/ void postSaveSetPreferredDevicesForStrategy(int strategy, - List<AudioDeviceAttributes> devices) - { - sendILMsgNoDelay(MSG_IL_SAVE_PREF_DEVICES_FOR_STRATEGY, SENDMSG_QUEUE, strategy, devices); - } - - /*package*/ void postSaveRemovePreferredDevicesForStrategy(int strategy) { - sendIMsgNoDelay(MSG_I_SAVE_REMOVE_PREF_DEVICES_FOR_STRATEGY, SENDMSG_QUEUE, strategy); - } - - /*package*/ void postSaveSetDeviceAsNonDefaultForStrategy( - int strategy, AudioDeviceAttributes device) { - sendILMsgNoDelay(MSG_IL_SAVE_NDEF_DEVICE_FOR_STRATEGY, SENDMSG_QUEUE, strategy, device); - } - - /*package*/ void postSaveRemoveDeviceAsNonDefaultForStrategy( - int strategy, AudioDeviceAttributes device) { - sendILMsgNoDelay( - MSG_IL_SAVE_REMOVE_NDEF_DEVICE_FOR_STRATEGY, SENDMSG_QUEUE, strategy, device); - } - - /*package*/ void postSaveSetPreferredDevicesForCapturePreset( - int capturePreset, List<AudioDeviceAttributes> devices) { - sendILMsgNoDelay( - MSG_IL_SAVE_PREF_DEVICES_FOR_CAPTURE_PRESET, SENDMSG_QUEUE, capturePreset, devices); - } - - /*package*/ void postSaveClearPreferredDevicesForCapturePreset(int capturePreset) { - sendIMsgNoDelay( - MSG_I_SAVE_CLEAR_PREF_DEVICES_FOR_CAPTURE_PRESET, SENDMSG_QUEUE, capturePreset); - } - /*package*/ void postUpdateCommunicationRouteClient( boolean wasBtScoRequested, String eventSource) { sendILMsgNoDelay(MSG_IL_UPDATE_COMMUNICATION_ROUTE_CLIENT, SENDMSG_QUEUE, @@ -1657,6 +1625,10 @@ public class AudioDeviceBroker { sendIILMsg(MSG_IIL_BTLEAUDIO_TIMEOUT, SENDMSG_QUEUE, device, codec, address, delayMs); } + /*package*/ void setHearingAidTimeout(String address, int delayMs) { + sendLMsg(MSG_IL_BT_HEARING_AID_TIMEOUT, SENDMSG_QUEUE, address, delayMs); + } + /*package*/ void setAvrcpAbsoluteVolumeSupported(boolean supported) { synchronized (mDeviceStateLock) { mBtHelper.setAvrcpAbsoluteVolumeSupported(supported); @@ -1899,6 +1871,13 @@ public class AudioDeviceBroker { (String) msg.obj, msg.arg1, msg.arg2); } break; + case MSG_IL_BT_HEARING_AID_TIMEOUT: + // msg.obj == address of Hearing Aid device + synchronized (mDeviceStateLock) { + mDeviceInventory.onMakeHearingAidDeviceUnavailableNow( + (String) msg.obj); + } + break; case MSG_L_BLUETOOTH_DEVICE_CONFIG_CHANGE: { final BtDeviceInfo btInfo = (BtDeviceInfo) msg.obj; final Pair<Integer, Boolean> codecAndChanged = mBtHelper.getCodecWithFallback( @@ -2014,40 +1993,9 @@ public class AudioDeviceBroker { mDeviceInventory.setBluetoothActiveDevice(btInfo); } } break; - case MSG_IL_SAVE_PREF_DEVICES_FOR_STRATEGY: { - final int strategy = msg.arg1; - final List<AudioDeviceAttributes> devices = - (List<AudioDeviceAttributes>) msg.obj; - mDeviceInventory.onSaveSetPreferredDevices(strategy, devices); - } break; - case MSG_I_SAVE_REMOVE_PREF_DEVICES_FOR_STRATEGY: { - final int strategy = msg.arg1; - mDeviceInventory.onSaveRemovePreferredDevices(strategy); - } break; - case MSG_IL_SAVE_NDEF_DEVICE_FOR_STRATEGY: { - final int strategy = msg.arg1; - final AudioDeviceAttributes device = (AudioDeviceAttributes) msg.obj; - mDeviceInventory.onSaveSetDeviceAsNonDefault(strategy, device); - } break; - case MSG_IL_SAVE_REMOVE_NDEF_DEVICE_FOR_STRATEGY: { - final int strategy = msg.arg1; - final AudioDeviceAttributes device = (AudioDeviceAttributes) msg.obj; - mDeviceInventory.onSaveRemoveDeviceAsNonDefault(strategy, device); - } break; case MSG_CHECK_MUTE_MUSIC: checkMessagesMuteMusic(0); break; - case MSG_IL_SAVE_PREF_DEVICES_FOR_CAPTURE_PRESET: { - final int capturePreset = msg.arg1; - final List<AudioDeviceAttributes> devices = - (List<AudioDeviceAttributes>) msg.obj; - mDeviceInventory.onSaveSetPreferredDevicesForCapturePreset( - capturePreset, devices); - } break; - case MSG_I_SAVE_CLEAR_PREF_DEVICES_FOR_CAPTURE_PRESET: { - final int capturePreset = msg.arg1; - mDeviceInventory.onSaveClearPreferredDevicesForCapturePreset(capturePreset); - } break; case MSG_L_NOTIFY_PREFERRED_AUDIOPROFILE_APPLIED: { final BluetoothDevice btDevice = (BluetoothDevice) msg.obj; BtHelper.onNotifyPreferredAudioProfileApplied(btDevice); @@ -2140,16 +2088,10 @@ public class AudioDeviceBroker { // process external command to (dis)connect a hearing aid device private static final int MSG_L_HEARING_AID_DEVICE_CONNECTION_CHANGE_EXT = 31; - private static final int MSG_IL_SAVE_PREF_DEVICES_FOR_STRATEGY = 32; - private static final int MSG_I_SAVE_REMOVE_PREF_DEVICES_FOR_STRATEGY = 33; - private static final int MSG_L_COMMUNICATION_ROUTE_CLIENT_DIED = 34; private static final int MSG_CHECK_MUTE_MUSIC = 35; private static final int MSG_REPORT_NEW_ROUTES_A2DP = 36; - private static final int MSG_IL_SAVE_PREF_DEVICES_FOR_CAPTURE_PRESET = 37; - private static final int MSG_I_SAVE_CLEAR_PREF_DEVICES_FOR_CAPTURE_PRESET = 38; - private static final int MSG_L_SET_COMMUNICATION_DEVICE_FOR_CLIENT = 42; private static final int MSG_IL_UPDATE_COMMUNICATION_ROUTE_CLIENT = 43; @@ -2158,8 +2100,6 @@ public class AudioDeviceBroker { // process set volume for Le Audio, obj is BleVolumeInfo private static final int MSG_II_SET_LE_AUDIO_OUT_VOLUME = 46; - private static final int MSG_IL_SAVE_NDEF_DEVICE_FOR_STRATEGY = 47; - private static final int MSG_IL_SAVE_REMOVE_NDEF_DEVICE_FOR_STRATEGY = 48; private static final int MSG_IIL_BTLEAUDIO_TIMEOUT = 49; private static final int MSG_L_NOTIFY_PREFERRED_AUDIOPROFILE_APPLIED = 52; @@ -2174,6 +2114,7 @@ public class AudioDeviceBroker { private static final int MSG_L_SYNCHRONIZE_ADI_DEVICES_IN_INVENTORY = 58; private static final int MSG_IL_UPDATED_ADI_DEVICE_STATE = 59; private static final int MSG_L_SET_FORCE_BT_A2DP_USE_NO_MUTE = 60; + private static final int MSG_IL_BT_HEARING_AID_TIMEOUT = 61; private static boolean isMessageHandledUnderWakelock(int msgId) { switch(msgId) { @@ -2186,6 +2127,7 @@ public class AudioDeviceBroker { case MSG_L_A2DP_DEVICE_CONNECTION_CHANGE_EXT: case MSG_L_HEARING_AID_DEVICE_CONNECTION_CHANGE_EXT: case MSG_CHECK_MUTE_MUSIC: + case MSG_IL_BT_HEARING_AID_TIMEOUT: return true; default: return false; @@ -2270,6 +2212,7 @@ public class AudioDeviceBroker { case MSG_IL_BTA2DP_TIMEOUT: case MSG_IIL_BTLEAUDIO_TIMEOUT: case MSG_L_BLUETOOTH_DEVICE_CONFIG_CHANGE: + case MSG_IL_BT_HEARING_AID_TIMEOUT: if (sLastDeviceConnectMsgTime >= time) { // add a little delay to make sure messages are ordered as expected time = sLastDeviceConnectMsgTime + 30; @@ -2799,12 +2742,13 @@ public class AudioDeviceBroker { return mDeviceInventory.getImmutableDeviceInventory(); } - void addOrUpdateDeviceSAStateInInventory(AdiDeviceState deviceState) { - mDeviceInventory.addOrUpdateDeviceSAStateInInventory(deviceState); + void addOrUpdateDeviceSAStateInInventory(AdiDeviceState deviceState, boolean syncInventory) { + mDeviceInventory.addOrUpdateDeviceSAStateInInventory(deviceState, syncInventory); } - void addOrUpdateBtAudioDeviceCategoryInInventory(AdiDeviceState deviceState) { - mDeviceInventory.addOrUpdateAudioDeviceCategoryInInventory(deviceState); + void addOrUpdateBtAudioDeviceCategoryInInventory( + AdiDeviceState deviceState, boolean syncInventory) { + mDeviceInventory.addOrUpdateAudioDeviceCategoryInInventory(deviceState, syncInventory); } @Nullable diff --git a/services/core/java/com/android/server/audio/AudioDeviceInventory.java b/services/core/java/com/android/server/audio/AudioDeviceInventory.java index ba7aee05159a..a916237364b4 100644 --- a/services/core/java/com/android/server/audio/AudioDeviceInventory.java +++ b/services/core/java/com/android/server/audio/AudioDeviceInventory.java @@ -39,6 +39,7 @@ import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothLeAudio; import android.bluetooth.BluetoothProfile; import android.content.Intent; +import android.media.AudioDescriptor; import android.media.AudioDeviceAttributes; import android.media.AudioDeviceInfo; import android.media.AudioDevicePort; @@ -46,6 +47,7 @@ import android.media.AudioFormat; import android.media.AudioManager; import android.media.AudioManager.AudioDeviceCategory; import android.media.AudioPort; +import android.media.AudioProfile; import android.media.AudioRoutesInfo; import android.media.AudioSystem; import android.media.IAudioRoutesObserver; @@ -135,9 +137,10 @@ public class AudioDeviceInventory { * AdiDeviceState in the {@link AudioDeviceInventory#mDeviceInventory} list. * @param deviceState the device to update */ - void addOrUpdateDeviceSAStateInInventory(AdiDeviceState deviceState) { + void addOrUpdateDeviceSAStateInInventory(AdiDeviceState deviceState, boolean syncInventory) { synchronized (mDeviceInventoryLock) { - mDeviceInventory.merge(deviceState.getDeviceId(), deviceState, (oldState, newState) -> { + mDeviceInventory.merge(deviceState.getDeviceId(), deviceState, + (oldState, newState) -> { oldState.setHasHeadTracker(newState.hasHeadTracker()); oldState.setHeadTrackerEnabled(newState.isHeadTrackerEnabled()); oldState.setSAEnabled(newState.isSAEnabled()); @@ -145,7 +148,9 @@ public class AudioDeviceInventory { }); checkDeviceInventorySize_l(); } - mDeviceBroker.postSynchronizeAdiDevicesInInventory(deviceState); + if (syncInventory) { + mDeviceBroker.postSynchronizeAdiDevicesInInventory(deviceState); + } } /** @@ -196,7 +201,8 @@ public class AudioDeviceInventory { * AdiDeviceState in the {@link AudioDeviceInventory#mDeviceInventory} list. * @param deviceState the device to update */ - void addOrUpdateAudioDeviceCategoryInInventory(AdiDeviceState deviceState) { + void addOrUpdateAudioDeviceCategoryInInventory( + AdiDeviceState deviceState, boolean syncInventory) { AtomicBoolean updatedCategory = new AtomicBoolean(false); synchronized (mDeviceInventoryLock) { if (automaticBtDeviceType()) { @@ -218,7 +224,9 @@ public class AudioDeviceInventory { if (updatedCategory.get()) { mDeviceBroker.postUpdatedAdiDeviceState(deviceState, false /*initSA*/); } - mDeviceBroker.postSynchronizeAdiDevicesInInventory(deviceState); + if (syncInventory) { + mDeviceBroker.postSynchronizeAdiDevicesInInventory(deviceState); + } } void addAudioDeviceWithCategoryInInventoryIfNeeded(@NonNull String address, @@ -235,14 +243,14 @@ public class AudioDeviceInventory { boolean bleCategoryFound = false; AdiDeviceState deviceState = findBtDeviceStateForAddress(address, DEVICE_OUT_BLE_HEADSET); if (deviceState != null) { - addOrUpdateAudioDeviceCategoryInInventory(deviceState); + addOrUpdateAudioDeviceCategoryInInventory(deviceState, true /*syncInventory*/); btCategory = deviceState.getAudioDeviceCategory(); bleCategoryFound = true; } deviceState = findBtDeviceStateForAddress(address, DEVICE_OUT_BLUETOOTH_A2DP); if (deviceState != null) { - addOrUpdateAudioDeviceCategoryInInventory(deviceState); + addOrUpdateAudioDeviceCategoryInInventory(deviceState, true /*syncInventory*/); int a2dpCategory = deviceState.getAudioDeviceCategory(); if (bleCategoryFound && a2dpCategory != btCategory) { Log.w(TAG, "Found different audio device category for A2DP and BLE profiles with " @@ -269,23 +277,43 @@ public class AudioDeviceInventory { } /** - * synchronize AdiDeviceState for LE devices in the same group + * Synchronize AdiDeviceState for LE devices in the same group + * or BT classic devices with the same address. + * @param updatedDevice the device state to synchronize or null. + * Called with null once after the device inventory and spatializer helper + * have been initialized to resync all devices. */ void onSynchronizeAdiDevicesInInventory(AdiDeviceState updatedDevice) { synchronized (mDevicesLock) { synchronized (mDeviceInventoryLock) { - boolean found = false; - found |= synchronizeBleDeviceInInventory(updatedDevice); - if (automaticBtDeviceType()) { - found |= synchronizeDeviceProfilesInInventory(updatedDevice); - } - if (found) { - mDeviceBroker.postPersistAudioDeviceSettings(); + if (updatedDevice != null) { + onSynchronizeAdiDeviceInInventory_l(updatedDevice); + } else { + for (AdiDeviceState ads : mDeviceInventory.values()) { + onSynchronizeAdiDeviceInInventory_l(ads); + } } } } } + /** + * Synchronize AdiDeviceState for LE devices in the same group + * or BT classic devices with the same address. + * @param updatedDevice the device state to synchronize. + */ + @GuardedBy({"mDevicesLock", "mDeviceInventoryLock"}) + void onSynchronizeAdiDeviceInInventory_l(AdiDeviceState updatedDevice) { + boolean found = false; + found |= synchronizeBleDeviceInInventory(updatedDevice); + if (automaticBtDeviceType()) { + found |= synchronizeDeviceProfilesInInventory(updatedDevice); + } + if (found) { + mDeviceBroker.postPersistAudioDeviceSettings(); + } + } + @GuardedBy("mDeviceInventoryLock") private void checkDeviceInventorySize_l() { if (mDeviceInventory.size() > MAX_DEVICE_INVENTORY_ENTRIES) { @@ -510,14 +538,17 @@ public class AudioDeviceInventory { @GuardedBy("mDevicesLock") private final ArrayMap<Integer, String> mApmConnectedDevices = new ArrayMap<>(); + @GuardedBy("mDevicesLock") // List of preferred devices for strategies private final ArrayMap<Integer, List<AudioDeviceAttributes>> mPreferredDevices = new ArrayMap<>(); + @GuardedBy("mDevicesLock") // List of non-default devices for strategies private final ArrayMap<Integer, List<AudioDeviceAttributes>> mNonDefaultDevices = new ArrayMap<>(); + @GuardedBy("mDevicesLock") // List of preferred devices of capture preset private final ArrayMap<Integer, List<AudioDeviceAttributes>> mPreferredDevicesForCapturePreset = new ArrayMap<>(); @@ -582,6 +613,8 @@ public class AudioDeviceInventory { final int mGroupId; @NonNull String mPeerDeviceAddress; @NonNull String mPeerIdentityDeviceAddress; + @NonNull List<AudioProfile> mAudioProfiles; + @NonNull List<AudioDescriptor> mAudioDescriptors; /** Disabled operating modes for this device. Use a negative logic so that by default * an empty list means all modes are allowed. @@ -590,15 +623,29 @@ public class AudioDeviceInventory { DeviceInfo(int deviceType, String deviceName, String address, String identityAddress, int codecFormat, - int groupId, String peerAddress, String peerIdentityAddress) { + int groupId, String peerAddress, String peerIdentityAddress, + List<AudioProfile> profiles, List<AudioDescriptor> descriptors) { mDeviceType = deviceType; mDeviceName = TextUtils.emptyIfNull(deviceName); mDeviceAddress = TextUtils.emptyIfNull(address); mDeviceIdentityAddress = TextUtils.emptyIfNull(identityAddress); + if (mDeviceIdentityAddress.isEmpty()) { + mDeviceIdentityAddress = mDeviceAddress; + } mDeviceCodecFormat = codecFormat; mGroupId = groupId; mPeerDeviceAddress = TextUtils.emptyIfNull(peerAddress); mPeerIdentityDeviceAddress = TextUtils.emptyIfNull(peerIdentityAddress); + mAudioProfiles = profiles; + mAudioDescriptors = descriptors; + } + + DeviceInfo(int deviceType, String deviceName, String address, + String identityAddress, int codecFormat, + int groupId, String peerAddress, String peerIdentityAddress) { + this(deviceType, deviceName, address, identityAddress, codecFormat, + groupId, peerAddress, peerIdentityAddress, + new ArrayList<>(), new ArrayList<>()); } /** Constructor for all devices except A2DP sink and LE Audio */ @@ -606,6 +653,13 @@ public class AudioDeviceInventory { this(deviceType, deviceName, address, null, AudioSystem.AUDIO_FORMAT_DEFAULT); } + /** Constructor for HDMI OUT, HDMI ARC/EARC sink devices */ + DeviceInfo(int deviceType, String deviceName, String address, + List<AudioProfile> profiles, List<AudioDescriptor> descriptors) { + this(deviceType, deviceName, address, null, AudioSystem.AUDIO_FORMAT_DEFAULT, + BluetoothLeAudio.GROUP_ID_INVALID, null, null, profiles, descriptors); + } + /** Constructor for A2DP sink devices */ DeviceInfo(int deviceType, String deviceName, String address, String identityAddress, int codecFormat) { @@ -752,24 +806,18 @@ public class AudioDeviceInventory { synchronized (mDevicesLock) { mAppliedStrategyRoles.clear(); mAppliedPresetRoles.clear(); - } - synchronized (mPreferredDevices) { mPreferredDevices.forEach((strategy, devices) -> { setPreferredDevicesForStrategy(strategy, devices); }); - } - synchronized (mNonDefaultDevices) { mNonDefaultDevices.forEach((strategy, devices) -> { addDevicesRoleForStrategy(strategy, AudioSystem.DEVICE_ROLE_DISABLED, devices, false /* internal */); }); - } - synchronized (mPreferredDevicesForCapturePreset) { mPreferredDevicesForCapturePreset.forEach((capturePreset, devices) -> { setDevicesRoleForCapturePreset( capturePreset, AudioSystem.DEVICE_ROLE_PREFERRED, devices); }); - } + } } /** only public for mocking/spying, do not call outside of AudioService */ @@ -994,6 +1042,11 @@ public class AudioDeviceInventory { } } + /*package*/ void onMakeHearingAidDeviceUnavailableNow(String address) { + synchronized (mDevicesLock) { + makeHearingAidDeviceUnavailable(address); + } + } /** * Goes over all connected LE Audio devices in the provided group ID and @@ -1141,30 +1194,35 @@ public class AudioDeviceInventory { } /*package*/ void onToggleHdmi() { - MediaMetrics.Item mmi = new MediaMetrics.Item(mMetricsId + "onToggleHdmi") - .set(MediaMetrics.Property.DEVICE, - AudioSystem.getDeviceName(AudioSystem.DEVICE_OUT_HDMI)); + final int[] hdmiDevices = { AudioSystem.DEVICE_OUT_HDMI, + AudioSystem.DEVICE_OUT_HDMI_ARC, AudioSystem.DEVICE_OUT_HDMI_EARC }; + synchronized (mDevicesLock) { - // Is HDMI connected? - final String key = DeviceInfo.makeDeviceListKey(AudioSystem.DEVICE_OUT_HDMI, ""); - final DeviceInfo di = mConnectedDevices.get(key); - if (di == null) { - Log.e(TAG, "invalid null DeviceInfo in onToggleHdmi"); - mmi.set(MediaMetrics.Property.EARLY_RETURN, "invalid null DeviceInfo").record(); - return; + for (DeviceInfo di : mConnectedDevices.values()) { + boolean isHdmiDevice = Arrays.stream(hdmiDevices).anyMatch(device -> + device == di.mDeviceType); + if (isHdmiDevice) { + MediaMetrics.Item mmi = new MediaMetrics.Item(mMetricsId + "onToggleHdmi") + .set(MediaMetrics.Property.DEVICE, + AudioSystem.getDeviceName(di.mDeviceType)); + AudioDeviceAttributes ada = new AudioDeviceAttributes( + AudioDeviceAttributes.ROLE_OUTPUT, + AudioDeviceInfo.convertInternalDeviceToDeviceType(di.mDeviceType), + di.mDeviceAddress, di.mDeviceName, di.mAudioProfiles, + di.mAudioDescriptors); + // Toggle HDMI to retrigger broadcast with proper formats. + setWiredDeviceConnectionState(ada, + AudioSystem.DEVICE_STATE_UNAVAILABLE, "onToggleHdmi"); // disconnect + setWiredDeviceConnectionState(ada, + AudioSystem.DEVICE_STATE_AVAILABLE, "onToggleHdmi"); // reconnect + mmi.record(); + } } - // Toggle HDMI to retrigger broadcast with proper formats. - setWiredDeviceConnectionState( - new AudioDeviceAttributes(AudioSystem.DEVICE_OUT_HDMI, ""), - AudioSystem.DEVICE_STATE_UNAVAILABLE, "android"); // disconnect - setWiredDeviceConnectionState( - new AudioDeviceAttributes(AudioSystem.DEVICE_OUT_HDMI, ""), - AudioSystem.DEVICE_STATE_AVAILABLE, "android"); // reconnect } - mmi.record(); } - /*package*/ void onSaveSetPreferredDevices(int strategy, + @GuardedBy("mDevicesLock") + private void saveSetPreferredDevices(int strategy, @NonNull List<AudioDeviceAttributes> devices) { mPreferredDevices.put(strategy, devices); List<AudioDeviceAttributes> nonDefaultDevices = mNonDefaultDevices.get(strategy); @@ -1182,12 +1240,14 @@ public class AudioDeviceInventory { dispatchPreferredDevice(strategy, devices); } - /*package*/ void onSaveRemovePreferredDevices(int strategy) { + @GuardedBy("mDevicesLock") + private void saveRemovePreferredDevices(int strategy) { mPreferredDevices.remove(strategy); dispatchPreferredDevice(strategy, new ArrayList<AudioDeviceAttributes>()); } - /*package*/ void onSaveSetDeviceAsNonDefault(int strategy, + @GuardedBy("mDevicesLock") + private void saveSetDeviceAsNonDefault(int strategy, @NonNull AudioDeviceAttributes device) { List<AudioDeviceAttributes> nonDefaultDevices = mNonDefaultDevices.get(strategy); if (nonDefaultDevices == null) { @@ -1211,7 +1271,8 @@ public class AudioDeviceInventory { } } - /*package*/ void onSaveRemoveDeviceAsNonDefault(int strategy, + @GuardedBy("mDevicesLock") + private void saveRemoveDeviceAsNonDefault(int strategy, @NonNull AudioDeviceAttributes device) { List<AudioDeviceAttributes> nonDefaultDevices = mNonDefaultDevices.get(strategy); if (nonDefaultDevices != null) { @@ -1221,14 +1282,16 @@ public class AudioDeviceInventory { } } - /*package*/ void onSaveSetPreferredDevicesForCapturePreset( + @GuardedBy("mDevicesLock") + private void saveSetPreferredDevicesForCapturePreset( int capturePreset, @NonNull List<AudioDeviceAttributes> devices) { mPreferredDevicesForCapturePreset.put(capturePreset, devices); dispatchDevicesRoleForCapturePreset( capturePreset, AudioSystem.DEVICE_ROLE_PREFERRED, devices); } - /*package*/ void onSaveClearPreferredDevicesForCapturePreset(int capturePreset) { + @GuardedBy("mDevicesLock") + private void saveClearPreferredDevicesForCapturePreset(int capturePreset) { mPreferredDevicesForCapturePreset.remove(capturePreset); dispatchDevicesRoleForCapturePreset( capturePreset, AudioSystem.DEVICE_ROLE_PREFERRED, @@ -1240,21 +1303,22 @@ public class AudioDeviceInventory { /*package*/ int setPreferredDevicesForStrategyAndSave(int strategy, @NonNull List<AudioDeviceAttributes> devices) { - final int status = setPreferredDevicesForStrategy(strategy, devices); - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveSetPreferredDevicesForStrategy(strategy, devices); + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + final int status = setPreferredDevicesForStrategy(strategy, devices); + if (status == AudioSystem.SUCCESS) { + saveSetPreferredDevices(strategy, devices); + } + return status; + } } - return status; } // Only used for external requests coming from an API /*package*/ int setPreferredDevicesForStrategy(int strategy, @NonNull List<AudioDeviceAttributes> devices) { - int status = AudioSystem.ERROR; - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - status = setDevicesRoleForStrategy( - strategy, AudioSystem.DEVICE_ROLE_PREFERRED, devices, false /* internal */); - } - return status; + + return setDevicesRoleForStrategy( + strategy, AudioSystem.DEVICE_ROLE_PREFERRED, devices, false /* internal */); } // Only used for internal requests /*package*/ int setPreferredDevicesForStrategyInt(int strategy, @@ -1265,21 +1329,21 @@ public class AudioDeviceInventory { } /*package*/ int removePreferredDevicesForStrategyAndSave(int strategy) { - final int status = removePreferredDevicesForStrategy(strategy); - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveRemovePreferredDevicesForStrategy(strategy); + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + final int status = removePreferredDevicesForStrategy(strategy); + if (status == AudioSystem.SUCCESS) { + saveRemovePreferredDevices(strategy); + } + return status; + } } - return status; } // Only used for external requests coming from an API /*package*/ int removePreferredDevicesForStrategy(int strategy) { - int status = AudioSystem.ERROR; - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - status = clearDevicesRoleForStrategy( + return clearDevicesRoleForStrategy( strategy, AudioSystem.DEVICE_ROLE_PREFERRED, false /*internal */); - } - return status; } // Only used for internal requests /*package*/ int removePreferredDevicesForStrategyInt(int strategy) { @@ -1290,16 +1354,17 @@ public class AudioDeviceInventory { /*package*/ int setDeviceAsNonDefaultForStrategyAndSave(int strategy, @NonNull AudioDeviceAttributes device) { int status = AudioSystem.ERROR; - - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - List<AudioDeviceAttributes> devices = new ArrayList<>(); - devices.add(device); - status = addDevicesRoleForStrategy( + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + List<AudioDeviceAttributes> devices = new ArrayList<>(); + devices.add(device); + status = addDevicesRoleForStrategy( strategy, AudioSystem.DEVICE_ROLE_DISABLED, devices, false /* internal */); - } - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveSetDeviceAsNonDefaultForStrategy(strategy, device); + if (status == AudioSystem.SUCCESS) { + saveSetDeviceAsNonDefault(strategy, device); + } + } } return status; } @@ -1307,16 +1372,17 @@ public class AudioDeviceInventory { /*package*/ int removeDeviceAsNonDefaultForStrategyAndSave(int strategy, @NonNull AudioDeviceAttributes device) { int status = AudioSystem.ERROR; - - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - List<AudioDeviceAttributes> devices = new ArrayList<>(); - devices.add(device); - status = removeDevicesRoleForStrategy( + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + List<AudioDeviceAttributes> devices = new ArrayList<>(); + devices.add(device); + status = removeDevicesRoleForStrategy( strategy, AudioSystem.DEVICE_ROLE_DISABLED, devices, false /* internal */); - } - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveRemoveDeviceAsNonDefaultForStrategy(strategy, device); + if (status == AudioSystem.SUCCESS) { + saveRemoveDeviceAsNonDefault(strategy, device); + } + } } return status; } @@ -1344,41 +1410,40 @@ public class AudioDeviceInventory { /*package*/ int setPreferredDevicesForCapturePresetAndSave( int capturePreset, @NonNull List<AudioDeviceAttributes> devices) { - final int status = setPreferredDevicesForCapturePreset(capturePreset, devices); - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveSetPreferredDevicesForCapturePreset(capturePreset, devices); + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + final int status = setPreferredDevicesForCapturePreset(capturePreset, devices); + if (status == AudioSystem.SUCCESS) { + saveSetPreferredDevicesForCapturePreset(capturePreset, devices); + } + return status; + } } - return status; } // Only used for external requests coming from an API private int setPreferredDevicesForCapturePreset( int capturePreset, @NonNull List<AudioDeviceAttributes> devices) { - int status = AudioSystem.ERROR; - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - status = setDevicesRoleForCapturePreset( + return setDevicesRoleForCapturePreset( capturePreset, AudioSystem.DEVICE_ROLE_PREFERRED, devices); - } - return status; } /*package*/ int clearPreferredDevicesForCapturePresetAndSave(int capturePreset) { - final int status = clearPreferredDevicesForCapturePreset(capturePreset); - if (status == AudioSystem.SUCCESS) { - mDeviceBroker.postSaveClearPreferredDevicesForCapturePreset(capturePreset); + synchronized(mDevicesLock){ + try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { + final int status = clearPreferredDevicesForCapturePreset(capturePreset); + if (status == AudioSystem.SUCCESS) { + saveClearPreferredDevicesForCapturePreset(capturePreset); + } + return status; + } } - return status; } // Only used for external requests coming from an API private int clearPreferredDevicesForCapturePreset(int capturePreset) { - int status = AudioSystem.ERROR; - - try (SafeCloseable ignored = ClearCallingIdentityContext.create()) { - status = clearDevicesRoleForCapturePreset( + return clearDevicesRoleForCapturePreset( capturePreset, AudioSystem.DEVICE_ROLE_PREFERRED); - } - return status; } // Only used for internal requests @@ -1748,7 +1813,15 @@ public class AudioDeviceInventory { .printSlog(EventLogger.Event.ALOGE, TAG)); return false; } - mConnectedDevices.put(deviceKey, new DeviceInfo(device, deviceName, address)); + + if (device == AudioSystem.DEVICE_OUT_HDMI || + device == AudioSystem.DEVICE_OUT_HDMI_ARC || + device == AudioSystem.DEVICE_OUT_HDMI_EARC) { + mConnectedDevices.put(deviceKey, new DeviceInfo(device, deviceName, + address, attributes.getAudioProfiles(), attributes.getAudioDescriptors())); + } else { + mConnectedDevices.put(deviceKey, new DeviceInfo(device, deviceName, address)); + } mDeviceBroker.postAccessoryPlugMediaUnmute(device); status = true; } else if (!connect && isConnected) { @@ -1837,12 +1910,10 @@ public class AudioDeviceInventory { .set(MediaMetrics.Property.EVENT, "disconnectHearingAid") .record(); if (toRemove.size() > 0) { - /*final int delay = */ - checkSendBecomingNoisyIntentInt(DEVICE_OUT_HEARING_AID, + final int delay = checkSendBecomingNoisyIntentInt(DEVICE_OUT_HEARING_AID, AudioService.CONNECTION_STATE_DISCONNECTED, AudioSystem.DEVICE_NONE); toRemove.stream().forEach(deviceAddress -> - // TODO delay not used? - makeHearingAidDeviceUnavailable(deviceAddress /*, delay*/) + makeHearingAidDeviceUnavailableLater(deviceAddress, delay) ); } } @@ -2421,6 +2492,15 @@ public class AudioDeviceInventory { mDeviceBroker.postCheckCommunicationDeviceRemoval(ada); } + @GuardedBy("mDevicesLock") + private void makeHearingAidDeviceUnavailableLater( + String address, int delayMs) { + // the device will be made unavailable later, so consider it disconnected right away + mConnectedDevices.remove(DeviceInfo.makeDeviceListKey(DEVICE_OUT_HEARING_AID, address)); + // send the delayed message to make the device unavailable later + mDeviceBroker.setHearingAidTimeout(address, delayMs); + } + /** * Returns whether a device of type DEVICE_OUT_HEARING_AID is connected. * Visibility by APM plays no role @@ -2951,8 +3031,8 @@ public class AudioDeviceInventory { // Note if the device is not compatible with spatialization mode or the device // type is not canonical, it will be ignored in {@link SpatializerHelper}. if (devState != null) { - addOrUpdateDeviceSAStateInInventory(devState); - addOrUpdateAudioDeviceCategoryInInventory(devState); + addOrUpdateDeviceSAStateInInventory(devState, false /*syncInventory*/); + addOrUpdateAudioDeviceCategoryInInventory(devState, false /*syncInventory*/); } } } diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index 64452a979edd..2d3b7f399fec 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -707,10 +707,14 @@ public class AudioService extends IAudioService.Stub // Streams currently muted by ringer mode and dnd protected static volatile int sRingerAndZenModeMutedStreams; - /** Streams that can be muted. Do not resolve to aliases when checking. + /** Streams that can be muted by system. Do not resolve to aliases when checking. * @see System#MUTE_STREAMS_AFFECTED */ private int mMuteAffectedStreams; + /** Streams that can be muted by user. Do not resolve to aliases when checking. + * @see System#MUTE_STREAMS_AFFECTED */ + private int mUserMutableStreams; + @NonNull private SoundEffectsHelper mSfxHelper; @@ -783,9 +787,11 @@ public class AudioService extends IAudioService.Stub AudioSystem.DEVICE_OUT_HDMI_EARC )); + private final Object mAbsoluteVolumeDeviceInfoMapLock = new Object(); // Devices where the framework sends a full scale audio signal, and controls the volume of // the external audio system separately. // For possible volume behaviors, see {@link AudioManager.AbsoluteDeviceVolumeBehavior}. + @GuardedBy("mAbsoluteVolumeDeviceInfoMapLock") Map<Integer, AbsoluteVolumeDeviceInfo> mAbsoluteVolumeDeviceInfoMap = new ArrayMap<>(); /** @@ -2343,6 +2349,7 @@ public class AudioService extends IAudioService.Stub mMuteAffectedStreams &= ~(1 << vss.mStreamType); } } + updateUserMutableStreams(); } private void createStreamStates() { @@ -2412,6 +2419,8 @@ public class AudioService extends IAudioService.Stub } pw.print("\n- mute affected streams = 0x"); pw.println(Integer.toHexString(mMuteAffectedStreams)); + pw.print("\n- user mutable streams = 0x"); + pw.println(Integer.toHexString(mUserMutableStreams)); } private void updateStreamVolumeAlias(boolean updateVolumes, String caller) { @@ -2906,6 +2915,7 @@ public class AudioService extends IAudioService.Stub mMuteAffectedStreams = mSettings.getSystemIntForUser(cr, System.MUTE_STREAMS_AFFECTED, AudioSystem.DEFAULT_MUTE_STREAMS_AFFECTED, UserHandle.USER_CURRENT); + updateUserMutableStreams(); updateMasterMono(cr); @@ -2925,6 +2935,12 @@ public class AudioService extends IAudioService.Stub mVolumeController.loadSettings(cr); } + private void updateUserMutableStreams() { + mUserMutableStreams = mMuteAffectedStreams; + mUserMutableStreams &= ~(1 << AudioSystem.STREAM_VOICE_CALL); + mUserMutableStreams &= ~(1 << AudioSystem.STREAM_BLUETOOTH_SCO); + } + @GuardedBy("mSettingsLock") private void resetActiveAssistantUidsLocked() { mActiveAssistantServiceUids = NO_ACTIVE_ASSISTANT_SERVICE_UIDS; @@ -3715,9 +3731,8 @@ public class AudioService extends IAudioService.Stub int oldIndex = mStreamStates[streamType].getIndex(device); // Check if the volume adjustment should be handled by an absolute volume controller instead - if (isAbsoluteVolumeDevice(device) - && (flags & AudioManager.FLAG_ABSOLUTE_VOLUME) == 0) { - AbsoluteVolumeDeviceInfo info = mAbsoluteVolumeDeviceInfoMap.get(device); + if (isAbsoluteVolumeDevice(device) && (flags & AudioManager.FLAG_ABSOLUTE_VOLUME) == 0) { + final AbsoluteVolumeDeviceInfo info = getAbsoluteVolumeDeviceInfo(device); if (info.mHandlesVolumeAdjustment) { dispatchAbsoluteVolumeAdjusted(streamType, info, oldIndex, direction, keyEventMode); @@ -3784,7 +3799,7 @@ public class AudioService extends IAudioService.Stub mDeviceBroker.postSetAvrcpAbsoluteVolumeIndex(newIndex / 10); } else if (isAbsoluteVolumeDevice(device) && (flags & AudioManager.FLAG_ABSOLUTE_VOLUME) == 0) { - AbsoluteVolumeDeviceInfo info = mAbsoluteVolumeDeviceInfoMap.get(device); + final AbsoluteVolumeDeviceInfo info = getAbsoluteVolumeDeviceInfo(device); dispatchAbsoluteVolumeChanged(streamType, info, newIndex); } @@ -4787,7 +4802,7 @@ public class AudioService extends IAudioService.Stub mDeviceBroker.postSetAvrcpAbsoluteVolumeIndex(index / 10); } else if (isAbsoluteVolumeDevice(device) && ((flags & AudioManager.FLAG_ABSOLUTE_VOLUME) == 0)) { - AbsoluteVolumeDeviceInfo info = mAbsoluteVolumeDeviceInfoMap.get(device); + final AbsoluteVolumeDeviceInfo info = getAbsoluteVolumeDeviceInfo(device); dispatchAbsoluteVolumeChanged(streamType, info, index); } @@ -7133,6 +7148,11 @@ public class AudioService extends IAudioService.Stub return (mMuteAffectedStreams & (1 << streamType)) != 0; } + @Override + public boolean isStreamMutableByUi(int streamType) { + return (mUserMutableStreams & (1 << streamType)) != 0; + } + private void ensureValidDirection(int direction) { switch (direction) { case AudioManager.ADJUST_LOWER: @@ -7584,7 +7604,8 @@ public class AudioService extends IAudioService.Stub if (register) { AbsoluteVolumeDeviceInfo info = new AbsoluteVolumeDeviceInfo( device, volumes, cb, handlesVolumeAdjustment, deviceVolumeBehavior); - AbsoluteVolumeDeviceInfo oldInfo = mAbsoluteVolumeDeviceInfoMap.get(deviceOut); + final AbsoluteVolumeDeviceInfo oldInfo = getAbsoluteVolumeDeviceInfo(deviceOut); + boolean volumeBehaviorChanged = (oldInfo == null) || (oldInfo.mDeviceVolumeBehavior != deviceVolumeBehavior); if (volumeBehaviorChanged) { @@ -7744,8 +7765,10 @@ public class AudioService extends IAudioService.Stub if (mAbsVolumeMultiModeCaseDevices.contains(audioSystemDeviceOut)) { return AudioManager.DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_MULTI_MODE; } - if (mAbsoluteVolumeDeviceInfoMap.containsKey(audioSystemDeviceOut)) { - return mAbsoluteVolumeDeviceInfoMap.get(audioSystemDeviceOut).mDeviceVolumeBehavior; + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + if (mAbsoluteVolumeDeviceInfoMap.containsKey(audioSystemDeviceOut)) { + return mAbsoluteVolumeDeviceInfoMap.get(audioSystemDeviceOut).mDeviceVolumeBehavior; + } } if (isA2dpAbsoluteVolumeDevice(audioSystemDeviceOut) @@ -9644,6 +9667,9 @@ public class AudioService extends IAudioService.Stub case MSG_INIT_SPATIALIZER: onInitSpatializer(); + // the device inventory can only be synchronized after the + // spatializer has been initialized + mDeviceBroker.postSynchronizeAdiDevicesInInventory(null); mAudioEventWakeLock.release(); break; @@ -11399,7 +11425,8 @@ public class AudioService extends IAudioService.Stub deviceState.setAudioDeviceCategory(btAudioDeviceCategory); - mDeviceBroker.addOrUpdateBtAudioDeviceCategoryInInventory(deviceState); + mDeviceBroker.addOrUpdateBtAudioDeviceCategoryInInventory( + deviceState, true /*syncInventory*/); mDeviceBroker.postPersistAudioDeviceSettings(); mSpatializerHelper.refreshDevice(deviceState.getAudioDeviceAttributes(), @@ -11783,10 +11810,12 @@ public class AudioService extends IAudioService.Stub } private Set<Integer> getAbsoluteVolumeDevicesWithBehavior(int behavior) { - return mAbsoluteVolumeDeviceInfoMap.entrySet().stream() - .filter(entry -> entry.getValue().mDeviceVolumeBehavior == behavior) - .map(Map.Entry::getKey) - .collect(Collectors.toSet()); + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + return mAbsoluteVolumeDeviceInfoMap.entrySet().stream() + .filter(entry -> entry.getValue().mDeviceVolumeBehavior == behavior) + .map(Map.Entry::getKey) + .collect(Collectors.toSet()); + } } private String dumpDeviceTypes(@NonNull Set<Integer> deviceTypes) { @@ -14279,14 +14308,26 @@ public class AudioService extends IAudioService.Stub } /** + * Returns the input device which uses absolute volume behavior, including its variants, + * or {@code null} if there is no mapping for the device type + */ + @Nullable + private AbsoluteVolumeDeviceInfo getAbsoluteVolumeDeviceInfo(int deviceType) { + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + return mAbsoluteVolumeDeviceInfoMap.get(deviceType); + } + } + + /** * Returns whether the input device uses absolute volume behavior, including its variants. * For included volume behaviors, see {@link AudioManager.AbsoluteDeviceVolumeBehavior}. - * - * This is distinct from Bluetooth A2DP absolute volume behavior + * <p>This is distinct from Bluetooth A2DP absolute volume behavior * ({@link #isA2dpAbsoluteVolumeDevice}). */ private boolean isAbsoluteVolumeDevice(int deviceType) { - return mAbsoluteVolumeDeviceInfoMap.containsKey(deviceType); + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + return mAbsoluteVolumeDeviceInfoMap.containsKey(deviceType); + } } /** @@ -14398,7 +14439,9 @@ public class AudioService extends IAudioService.Stub + AudioDeviceVolumeManager.volumeBehaviorName(info.mDeviceVolumeBehavior) ); } - mAbsoluteVolumeDeviceInfoMap.put(audioSystemDeviceOut, info); + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + mAbsoluteVolumeDeviceInfoMap.put(audioSystemDeviceOut, info); + } } private AbsoluteVolumeDeviceInfo removeAudioSystemDeviceOutFromAbsVolumeDevices( @@ -14407,7 +14450,10 @@ public class AudioService extends IAudioService.Stub Log.d(TAG, "Removing DeviceType: 0x" + Integer.toHexString(audioSystemDeviceOut) + " from mAbsoluteVolumeDeviceInfoMap"); } - return mAbsoluteVolumeDeviceInfoMap.remove(audioSystemDeviceOut); + + synchronized (mAbsoluteVolumeDeviceInfoMapLock) { + return mAbsoluteVolumeDeviceInfoMap.remove(audioSystemDeviceOut); + } } //==================== diff --git a/services/core/java/com/android/server/audio/BtHelper.java b/services/core/java/com/android/server/audio/BtHelper.java index a346a9b3ef73..f42bdeeb7356 100644 --- a/services/core/java/com/android/server/audio/BtHelper.java +++ b/services/core/java/com/android/server/audio/BtHelper.java @@ -603,7 +603,11 @@ public class BtHelper { break; case BluetoothProfile.LE_AUDIO: if (mLeAudio != null && mLeAudioCallback != null) { - mLeAudio.unregisterCallback(mLeAudioCallback); + try { + mLeAudio.unregisterCallback(mLeAudioCallback); + } catch (Exception e) { + Log.e(TAG, "Exception while unregistering callback for LE audio", e); + } } mLeAudio = null; mLeAudioCallback = null; @@ -680,12 +684,21 @@ public class BtHelper { return; } if (mLeAudio != null && mLeAudioCallback != null) { - mLeAudio.unregisterCallback(mLeAudioCallback); + try { + mLeAudio.unregisterCallback(mLeAudioCallback); + } catch (Exception e) { + Log.e(TAG, "Exception while unregistering callback for LE audio", e); + } } mLeAudio = (BluetoothLeAudio) proxy; mLeAudioCallback = new MyLeAudioCallback(); - mLeAudio.registerCallback( - mContext.getMainExecutor(), mLeAudioCallback); + try{ + mLeAudio.registerCallback( + mContext.getMainExecutor(), mLeAudioCallback); + } catch (Exception e) { + mLeAudioCallback = null; + Log.e(TAG, "Exception while registering callback for LE audio", e); + } break; case BluetoothProfile.A2DP_SINK: case BluetoothProfile.LE_AUDIO_BROADCAST: diff --git a/services/core/java/com/android/server/audio/LoudnessCodecHelper.java b/services/core/java/com/android/server/audio/LoudnessCodecHelper.java index 01f770b1e89f..9fa5da47aae7 100644 --- a/services/core/java/com/android/server/audio/LoudnessCodecHelper.java +++ b/services/core/java/com/android/server/audio/LoudnessCodecHelper.java @@ -133,6 +133,9 @@ public class LoudnessCodecHelper { private static final EventLogger sLogger = new EventLogger( AudioService.LOG_NB_EVENTS_LOUDNESS_CODEC, "Loudness updates"); + private final Object mDispatcherLock = new Object(); + + @GuardedBy("mDispatcherLock") private final LoudnessRemoteCallbackList mLoudnessUpdateDispatchers = new LoudnessRemoteCallbackList(this); @@ -339,12 +342,16 @@ public class LoudnessCodecHelper { } void registerLoudnessCodecUpdatesDispatcher(ILoudnessCodecUpdatesDispatcher dispatcher) { - mLoudnessUpdateDispatchers.register(dispatcher, Binder.getCallingPid()); + synchronized (mDispatcherLock) { + mLoudnessUpdateDispatchers.register(dispatcher, Binder.getCallingPid()); + } } void unregisterLoudnessCodecUpdatesDispatcher( ILoudnessCodecUpdatesDispatcher dispatcher) { - mLoudnessUpdateDispatchers.unregister(dispatcher); + synchronized (mDispatcherLock) { + mLoudnessUpdateDispatchers.unregister(dispatcher); + } } void startLoudnessCodecUpdates(int sessionId) { @@ -640,17 +647,20 @@ public class LoudnessCodecHelper { Log.d(TAG, "dispatchNewLoudnessParameters: sessionId " + sessionId + " bundle: " + bundle); } - final int nbDispatchers = mLoudnessUpdateDispatchers.beginBroadcast(); - for (int i = 0; i < nbDispatchers; ++i) { - try { - mLoudnessUpdateDispatchers.getBroadcastItem(i) - .dispatchLoudnessCodecParameterChange(sessionId, bundle); - } catch (RemoteException e) { - Log.e(TAG, "Error dispatching for sessionId " + sessionId + " bundle: " + bundle, - e); + synchronized (mDispatcherLock) { + final int nbDispatchers = mLoudnessUpdateDispatchers.beginBroadcast(); + for (int i = 0; i < nbDispatchers; ++i) { + try { + mLoudnessUpdateDispatchers.getBroadcastItem(i) + .dispatchLoudnessCodecParameterChange(sessionId, bundle); + } catch (RemoteException e) { + Log.e(TAG, + "Error dispatching for sessionId " + sessionId + " bundle: " + bundle, + e); + } } + mLoudnessUpdateDispatchers.finishBroadcast(); } - mLoudnessUpdateDispatchers.finishBroadcast(); } @GuardedBy("mLock") diff --git a/services/core/java/com/android/server/audio/SpatializerHelper.java b/services/core/java/com/android/server/audio/SpatializerHelper.java index cae169550d9a..9265ff2d9b2d 100644 --- a/services/core/java/com/android/server/audio/SpatializerHelper.java +++ b/services/core/java/com/android/server/audio/SpatializerHelper.java @@ -568,7 +568,8 @@ public class SpatializerHelper { updatedDevice = new AdiDeviceState(canonicalDeviceType, ada.getInternalType(), ada.getAddress()); initSAState(updatedDevice); - mDeviceBroker.addOrUpdateDeviceSAStateInInventory(updatedDevice); + mDeviceBroker.addOrUpdateDeviceSAStateInInventory( + updatedDevice, true /*syncInventory*/); } if (updatedDevice != null) { onRoutingUpdated(); @@ -723,7 +724,7 @@ public class SpatializerHelper { new AdiDeviceState(canonicalDeviceType, ada.getInternalType(), ada.getAddress()); initSAState(deviceState); - mDeviceBroker.addOrUpdateDeviceSAStateInInventory(deviceState); + mDeviceBroker.addOrUpdateDeviceSAStateInInventory(deviceState, true /*syncInventory*/); mDeviceBroker.postPersistAudioDeviceSettings(); logDeviceState(deviceState, "addWirelessDeviceIfNew"); // may be updated later. } diff --git a/services/core/java/com/android/server/audio/TEST_MAPPING b/services/core/java/com/android/server/audio/TEST_MAPPING index 2cea32af2396..ca462ce0ed8f 100644 --- a/services/core/java/com/android/server/audio/TEST_MAPPING +++ b/services/core/java/com/android/server/audio/TEST_MAPPING @@ -26,21 +26,7 @@ ] }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.audio" - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_android_server_audio" } ] } diff --git a/services/core/java/com/android/server/biometrics/OWNERS b/services/core/java/com/android/server/biometrics/OWNERS index 4703efbcd7be..13bba9dfa4ce 100644 --- a/services/core/java/com/android/server/biometrics/OWNERS +++ b/services/core/java/com/android/server/biometrics/OWNERS @@ -1,14 +1,12 @@ set noparent graciecheng@google.com -ilyamaty@google.com jbolinger@google.com jeffpu@google.com joshmccloskey@google.com diyab@google.com austindelgado@google.com spdonghao@google.com -wenhuiy@google.com firewall@google.com jasonsfchang@google.com diff --git a/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java b/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java index d061e2d21811..fbd32a67fe6c 100644 --- a/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java @@ -31,7 +31,6 @@ import android.util.Slog; import com.android.server.biometrics.log.BiometricContext; import com.android.server.biometrics.log.BiometricLogger; -import com.android.server.biometrics.sensors.fingerprint.aidl.AidlSession; import java.util.function.Supplier; @@ -203,16 +202,6 @@ public abstract class AcquisitionClient<T> extends HalClientMonitor<T> implement } } - // TODO(b/317414324): Deprecate setIgnoreDisplayTouches - protected final void resetIgnoreDisplayTouches() { - final AidlSession session = (AidlSession) getFreshDaemon(); - try { - session.getSession().setIgnoreDisplayTouches(false); - } catch (RemoteException e) { - Slog.e(TAG, "Remote exception when resetting setIgnoreDisplayTouches"); - } - } - @Override public boolean isInterruptable() { return true; diff --git a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java index daaafcb61bc5..c38ad6082dff 100644 --- a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java @@ -115,7 +115,7 @@ public abstract class AuthenticationClient<T, O extends AuthenticateOptions> } @LockoutTracker.LockoutMode - public int handleFailedAttempt(int userId) { + private int handleFailedAttempt(int userId) { if (mLockoutTracker != null) { mLockoutTracker.addFailedAttemptForUser(getTargetUserId()); } diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java index 4c86f57a190b..60cfd5a5a6ae 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java @@ -962,6 +962,19 @@ public class FingerprintService extends SystemService { provider.onUdfpsUiEvent(event, requestId, sensorId); } + @android.annotation.EnforcePermission(android.Manifest.permission.USE_BIOMETRIC_INTERNAL) + @Override + public void setIgnoreDisplayTouches(long requestId, int sensorId, boolean ignoreTouches) { + super.setIgnoreDisplayTouches_enforcePermission(); + + final ServiceProvider provider = mRegistry.getProviderForSensor(sensorId); + if (provider == null) { + Slog.w(TAG, + "No matching provider for setIgnoreDisplayTouches, sensorId: " + sensorId); + return; + } + provider.setIgnoreDisplayTouches(requestId, sensorId, ignoreTouches); + } @android.annotation.EnforcePermission(android.Manifest.permission.USE_BIOMETRIC_INTERNAL) @Override diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/ServiceProvider.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/ServiceProvider.java index a6cf2f4b31ae..e4a99e6be72c 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/ServiceProvider.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/ServiceProvider.java @@ -134,6 +134,8 @@ public interface ServiceProvider extends void setUdfpsOverlayController(@NonNull IUdfpsOverlayController controller); + void setIgnoreDisplayTouches(long requestId, int sensorId, boolean ignoreTouches); + void onPowerPressed(); @NonNull diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/Udfps.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/Udfps.java index dce0175ca593..15d7a476b345 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/Udfps.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/Udfps.java @@ -31,4 +31,5 @@ public interface Udfps { void onPointerUp(PointerContext pc); void onUdfpsUiEvent(@FingerprintManager.UdfpsUiEvent int event); boolean isPointerDown(); + void setIgnoreDisplayTouches(boolean ignoreTouches); } diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java index 72d92b974c1a..d04afdb72913 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java @@ -33,7 +33,6 @@ import android.hardware.biometrics.BiometricFingerprintConstants.FingerprintAcqu import android.hardware.biometrics.BiometricManager.Authenticators; import android.hardware.biometrics.BiometricSourceType; import android.hardware.biometrics.common.ICancellationSignal; -import android.hardware.biometrics.common.OperationState; import android.hardware.biometrics.events.AuthenticationAcquiredInfo; import android.hardware.biometrics.events.AuthenticationErrorInfo; import android.hardware.biometrics.events.AuthenticationFailedInfo; @@ -182,7 +181,6 @@ public class FingerprintAuthenticationClient handleLockout(authenticated); if (authenticated) { mState = STATE_STOPPED; - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); if (reportBiometricAuthAttempts()) { mAuthenticationStateListeners.onAuthenticationSucceeded( @@ -223,7 +221,6 @@ public class FingerprintAuthenticationClient // Send the error, but do not invoke the FinishCallback yet. Since lockout is not // controlled by the HAL, the framework must stop the sensor before finishing the // client. - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationError( new AuthenticationErrorInfo.Builder(BiometricSourceType.FINGERPRINT, @@ -275,7 +272,6 @@ public class FingerprintAuthenticationClient BiometricNotificationUtils.showBadCalibrationNotification(getContext()); } - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped(new AuthenticationStoppedInfo .Builder(BiometricSourceType.FINGERPRINT, getRequestReason()).build() @@ -284,7 +280,6 @@ public class FingerprintAuthenticationClient @Override protected void startHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.show(getSensorId(), getRequestReason(), this); mAuthenticationStateListeners.onAuthenticationStarted(new AuthenticationStartedInfo .Builder(BiometricSourceType.FINGERPRINT, getRequestReason()).build() @@ -331,12 +326,6 @@ public class FingerprintAuthenticationClient if (session.hasContextMethods()) { try { session.getSession().onContextChanged(ctx); - // TODO(b/317414324): Deprecate setIgnoreDisplayTouches - if (ctx.operationState != null && ctx.operationState.getTag() - == OperationState.fingerprintOperationState) { - session.getSession().setIgnoreDisplayTouches(ctx.operationState - .getFingerprintOperationState().isHardwareIgnoringTouches); - } } catch (RemoteException e) { Slog.e(TAG, "Unable to notify context changed", e); } @@ -353,7 +342,6 @@ public class FingerprintAuthenticationClient @Override protected void stopHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped(new AuthenticationStoppedInfo .Builder(BiometricSourceType.FINGERPRINT, getRequestReason()).build() @@ -415,6 +403,15 @@ public class FingerprintAuthenticationClient } @Override + public void setIgnoreDisplayTouches(boolean ignoreTouches) { + try { + getFreshDaemon().getSession().setIgnoreDisplayTouches(ignoreTouches); + } catch (RemoteException e) { + Slog.e(TAG, "Remote exception", e); + } + } + + @Override public boolean isPointerDown() { return mIsPointerDown; } @@ -457,7 +454,6 @@ public class FingerprintAuthenticationClient Slog.e(TAG, "Remote exception", e); } - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped(new AuthenticationStoppedInfo .Builder(BiometricSourceType.FINGERPRINT, getRequestReason()).build() @@ -492,7 +488,6 @@ public class FingerprintAuthenticationClient Slog.e(TAG, "Remote exception", e); } - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped(new AuthenticationStoppedInfo .Builder(BiometricSourceType.FINGERPRINT, getRequestReason()).build() diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintDetectClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintDetectClient.java index 36af5dba909f..fb48053913cf 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintDetectClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintDetectClient.java @@ -87,7 +87,6 @@ public class FingerprintDetectClient extends AcquisitionClient<AidlSession> @Override protected void stopHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped( new AuthenticationStoppedInfo.Builder(BiometricSourceType.FINGERPRINT, @@ -107,7 +106,6 @@ public class FingerprintDetectClient extends AcquisitionClient<AidlSession> @Override protected void startHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.show(getSensorId(), BiometricRequestConstants.REASON_AUTH_KEYGUARD, this); mAuthenticationStateListeners.onAuthenticationStarted( diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintEnrollClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintEnrollClient.java index 3a72d7e9a91a..993a68fd6ff8 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintEnrollClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintEnrollClient.java @@ -150,7 +150,6 @@ public class FingerprintEnrollClient extends EnrollClient<AidlSession> implement controller -> controller.onEnrollmentProgress(getSensorId(), remaining)); if (remaining == 0) { - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped( new AuthenticationStoppedInfo.Builder( @@ -211,7 +210,6 @@ public class FingerprintEnrollClient extends EnrollClient<AidlSession> implement ); super.onError(errorCode, vendorCode); - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped( new AuthenticationStoppedInfo.Builder(BiometricSourceType.FINGERPRINT, @@ -227,7 +225,6 @@ public class FingerprintEnrollClient extends EnrollClient<AidlSession> implement @Override protected void startHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.show(getSensorId(), getRequestReasonFromFingerprintEnrollReason(mEnrollReason), this); mAuthenticationStateListeners.onAuthenticationStarted(new AuthenticationStartedInfo @@ -277,7 +274,6 @@ public class FingerprintEnrollClient extends EnrollClient<AidlSession> implement @Override protected void stopHalOperation() { - resetIgnoreDisplayTouches(); mSensorOverlays.hide(getSensorId()); mAuthenticationStateListeners.onAuthenticationStopped(new AuthenticationStoppedInfo .Builder(BiometricSourceType.FINGERPRINT, @@ -359,5 +355,14 @@ public class FingerprintEnrollClient extends EnrollClient<AidlSession> implement } @Override + public void setIgnoreDisplayTouches(boolean ignoreTouches) { + try { + getFreshDaemon().getSession().setIgnoreDisplayTouches(ignoreTouches); + } catch (RemoteException e) { + Slog.e(TAG, "Unable to send setIgnoreDisplayTouches", e); + } + } + + @Override public void onPowerPressed() {} } diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider.java index 1bddb83b1441..12baf00c1c4a 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider.java @@ -790,6 +790,19 @@ public class FingerprintProvider implements IBinder.DeathRecipient, ServiceProvi } @Override + public void setIgnoreDisplayTouches(long requestId, int sensorId, boolean ignoreTouches) { + mFingerprintSensors.get(sensorId).getScheduler().getCurrentClientIfMatches( + requestId, (client) -> { + if (!(client instanceof Udfps)) { + Slog.e(getTag(), + "setIgnoreDisplayTouches received during client: " + client); + return; + } + ((Udfps) client).setIgnoreDisplayTouches(ignoreTouches); + }); + } + + @Override public void onPowerPressed() { for (int i = 0; i < mFingerprintSensors.size(); i++) { final Sensor sensor = mFingerprintSensors.valueAt(i); diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/FingerprintUpdateActiveUserClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/FingerprintUpdateActiveUserClient.java index 59e64cd06667..87bd80754269 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/FingerprintUpdateActiveUserClient.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/FingerprintUpdateActiveUserClient.java @@ -121,6 +121,11 @@ public class FingerprintUpdateActiveUserClient extends StartUserClient<ISession, final int targetId = getTargetUserId(); Slog.d(TAG, "Setting active user: " + targetId); HidlToAidlSessionAdapter sessionAdapter = (HidlToAidlSessionAdapter) getFreshDaemon(); + if (sessionAdapter.getIBiometricsFingerprint() == null) { + Slog.e(TAG, "Failed to setActiveGroup: HIDL daemon is null."); + mCallback.onClientFinished(this, false /* success */); + return; + } sessionAdapter.setActiveGroup(targetId, mDirectory.getAbsolutePath()); mAuthenticatorIds.put(targetId, mHasEnrolledBiometrics ? sessionAdapter.getAuthenticatorIdForUpdateClient() : 0L); diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/HidlToAidlSessionAdapter.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/HidlToAidlSessionAdapter.java index b469752d49cf..671bd875d194 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/HidlToAidlSessionAdapter.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/HidlToAidlSessionAdapter.java @@ -209,6 +209,10 @@ public class HidlToAidlSessionAdapter implements ISession { return null; } + protected IBiometricsFingerprint getIBiometricsFingerprint() { + return mSession.get(); + } + public long getAuthenticatorIdForUpdateClient() throws RemoteException { return mSession.get().getAuthenticatorId(); } diff --git a/services/core/java/com/android/server/broadcastradio/BroadcastRadioService.java b/services/core/java/com/android/server/broadcastradio/BroadcastRadioService.java index 028b9b0bcbc0..fcbcb0262c95 100644 --- a/services/core/java/com/android/server/broadcastradio/BroadcastRadioService.java +++ b/services/core/java/com/android/server/broadcastradio/BroadcastRadioService.java @@ -32,8 +32,9 @@ public final class BroadcastRadioService extends SystemService { public BroadcastRadioService(Context context) { super(context); ArrayList<String> serviceNameList = IRadioServiceAidlImpl.getServicesNames(); - mServiceImpl = serviceNameList.isEmpty() ? new IRadioServiceHidlImpl(this) - : new IRadioServiceAidlImpl(this, serviceNameList); + RadioServiceUserController userController = new RadioServiceUserControllerImpl(); + mServiceImpl = serviceNameList.isEmpty() ? new IRadioServiceHidlImpl(this, userController) + : new IRadioServiceAidlImpl(this, serviceNameList, userController); } @Override diff --git a/services/core/java/com/android/server/broadcastradio/IRadioServiceAidlImpl.java b/services/core/java/com/android/server/broadcastradio/IRadioServiceAidlImpl.java index 16514fa813dc..332958d39a8c 100644 --- a/services/core/java/com/android/server/broadcastradio/IRadioServiceAidlImpl.java +++ b/services/core/java/com/android/server/broadcastradio/IRadioServiceAidlImpl.java @@ -69,8 +69,9 @@ final class IRadioServiceAidlImpl extends IRadioService.Stub { return serviceList; } - IRadioServiceAidlImpl(BroadcastRadioService service, ArrayList<String> serviceList) { - this(service, new BroadcastRadioServiceImpl(serviceList)); + IRadioServiceAidlImpl(BroadcastRadioService service, List<String> serviceList, + RadioServiceUserController userController) { + this(service, new BroadcastRadioServiceImpl(serviceList, userController)); Slogf.i(TAG, "Initialize BroadcastRadioServiceAidl(%s)", service); } diff --git a/services/core/java/com/android/server/broadcastradio/IRadioServiceHidlImpl.java b/services/core/java/com/android/server/broadcastradio/IRadioServiceHidlImpl.java index ab083429a200..67d3c95f3a23 100644 --- a/services/core/java/com/android/server/broadcastradio/IRadioServiceHidlImpl.java +++ b/services/core/java/com/android/server/broadcastradio/IRadioServiceHidlImpl.java @@ -59,13 +59,16 @@ final class IRadioServiceHidlImpl extends IRadioService.Stub { @GuardedBy("mLock") private final List<RadioManager.ModuleProperties> mV1Modules; - IRadioServiceHidlImpl(BroadcastRadioService service) { + IRadioServiceHidlImpl(BroadcastRadioService service, + RadioServiceUserController userController) { mService = Objects.requireNonNull(service, "broadcast radio service cannot be null"); - mHal1Client = new com.android.server.broadcastradio.hal1.BroadcastRadioService(); + Objects.requireNonNull(userController, "user controller cannot be null"); + mHal1Client = new com.android.server.broadcastradio.hal1.BroadcastRadioService( + userController); mV1Modules = mHal1Client.loadModules(); OptionalInt max = mV1Modules.stream().mapToInt(RadioManager.ModuleProperties::getId).max(); mHal2Client = new com.android.server.broadcastradio.hal2.BroadcastRadioService( - max.isPresent() ? max.getAsInt() + 1 : 0); + max.isPresent() ? max.getAsInt() + 1 : 0, userController); } @VisibleForTesting diff --git a/services/core/java/com/android/server/broadcastradio/RadioServiceUserController.java b/services/core/java/com/android/server/broadcastradio/RadioServiceUserController.java index c705ebe686f2..c15ccf193563 100644 --- a/services/core/java/com/android/server/broadcastradio/RadioServiceUserController.java +++ b/services/core/java/com/android/server/broadcastradio/RadioServiceUserController.java @@ -16,19 +16,11 @@ package com.android.server.broadcastradio; -import android.app.ActivityManager; -import android.os.Binder; -import android.os.UserHandle; - /** - * Controller to handle users in {@link com.android.server.broadcastradio.BroadcastRadioService} + * Controller interface to handle users in + * {@link com.android.server.broadcastradio.BroadcastRadioService} */ -public final class RadioServiceUserController { - - private RadioServiceUserController() { - throw new UnsupportedOperationException( - "RadioServiceUserController class is noninstantiable"); - } +public interface RadioServiceUserController { /** * Check if the user calling the method in Broadcast Radio Service is the current user or the @@ -37,26 +29,20 @@ public final class RadioServiceUserController { * @return {@code true} if the user calling this method is the current user of system user, * {@code false} otherwise. */ - public static boolean isCurrentOrSystemUser() { - int callingUser = Binder.getCallingUserHandle().getIdentifier(); - return callingUser == getCurrentUser() || callingUser == UserHandle.USER_SYSTEM; - } + boolean isCurrentOrSystemUser(); /** * Get current foreground user for Broadcast Radio Service * * @return foreground user id. */ - public static int getCurrentUser() { - int userId = UserHandle.USER_NULL; - final long identity = Binder.clearCallingIdentity(); - try { - userId = ActivityManager.getCurrentUser(); - } catch (RuntimeException e) { - // Activity manager not running, nothing we can do assume user 0. - } finally { - Binder.restoreCallingIdentity(identity); - } - return userId; - } -} + int getCurrentUser(); + + /** + * Get id of the user handle assigned to the process that sent the binder transaction that is + * being processed + * + * @return Id of the user handle + */ + int getCallingUserId(); +}
\ No newline at end of file diff --git a/services/core/java/com/android/server/broadcastradio/RadioServiceUserControllerImpl.java b/services/core/java/com/android/server/broadcastradio/RadioServiceUserControllerImpl.java new file mode 100644 index 000000000000..e305d208000c --- /dev/null +++ b/services/core/java/com/android/server/broadcastradio/RadioServiceUserControllerImpl.java @@ -0,0 +1,62 @@ +/** + * Copyright (C) 2024 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.server.broadcastradio; + +import android.app.ActivityManager; +import android.os.Binder; +import android.os.UserHandle; + +/** + * Implementation for the controller to handle users in + * {@link com.android.server.broadcastradio.BroadcastRadioService} + */ +public final class RadioServiceUserControllerImpl implements RadioServiceUserController { + + /** + * @see RadioServiceUserController#isCurrentOrSystemUser() + */ + @Override + public boolean isCurrentOrSystemUser() { + int callingUser = getCallingUserId(); + return callingUser == getCurrentUser() || callingUser == UserHandle.USER_SYSTEM; + } + + /** + * @see RadioServiceUserController#getCurrentUser() + */ + @Override + public int getCurrentUser() { + int userId = UserHandle.USER_NULL; + final long identity = Binder.clearCallingIdentity(); + try { + userId = ActivityManager.getCurrentUser(); + } catch (RuntimeException e) { + // Activity manager not running, nothing we can do assume user 0. + } finally { + Binder.restoreCallingIdentity(identity); + } + return userId; + } + + /** + * @see RadioServiceUserController#getCallingUserId() + */ + @Override + public int getCallingUserId() { + return Binder.getCallingUserHandle().getIdentifier(); + } +} diff --git a/services/core/java/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImpl.java b/services/core/java/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImpl.java index d9f8588039da..bf9d1a34a37e 100644 --- a/services/core/java/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImpl.java +++ b/services/core/java/com/android/server/broadcastradio/aidl/BroadcastRadioServiceImpl.java @@ -51,6 +51,7 @@ public final class BroadcastRadioServiceImpl { private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private final Object mLock = new Object(); + private final RadioServiceUserController mUserController; @GuardedBy("mLock") private int mNextModuleId; @@ -77,7 +78,7 @@ public final class BroadcastRadioServiceImpl { } RadioModule radioModule = - RadioModule.tryLoadingModule(moduleId, name, newBinder); + RadioModule.tryLoadingModule(moduleId, name, newBinder, mUserController); if (radioModule == null) { Slogf.w(TAG, "No module %s with id %d (HAL AIDL)", name, moduleId); return; @@ -141,9 +142,12 @@ public final class BroadcastRadioServiceImpl { * BroadcastRadio HAL services * * @param serviceNameList list of names of AIDL BroadcastRadio HAL services + * @param userController User controller implementation */ - public BroadcastRadioServiceImpl(ArrayList<String> serviceNameList) { + public BroadcastRadioServiceImpl(List<String> serviceNameList, + RadioServiceUserController userController) { mNextModuleId = 0; + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); if (DEBUG) { Slogf.d(TAG, "Initializing BroadcastRadioServiceImpl %s", IBroadcastRadio.DESCRIPTOR); } @@ -202,7 +206,7 @@ public final class BroadcastRadioServiceImpl { if (DEBUG) { Slogf.d(TAG, "Open AIDL radio session"); } - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.e(TAG, "Cannot open tuner on AIDL HAL client for non-current user"); throw new IllegalStateException("Cannot open session for non-current user"); } diff --git a/services/core/java/com/android/server/broadcastradio/aidl/RadioModule.java b/services/core/java/com/android/server/broadcastradio/aidl/RadioModule.java index 03e347a903b5..928fa29b8f03 100644 --- a/services/core/java/com/android/server/broadcastradio/aidl/RadioModule.java +++ b/services/core/java/com/android/server/broadcastradio/aidl/RadioModule.java @@ -62,6 +62,7 @@ final class RadioModule { private final Handler mHandler; private final RadioEventLogger mLogger; private final RadioManager.ModuleProperties mProperties; + private final RadioServiceUserController mUserController; /** * Tracks antenna state reported by HAL (if any). @@ -194,15 +195,18 @@ final class RadioModule { }; @VisibleForTesting - RadioModule(IBroadcastRadio service, RadioManager.ModuleProperties properties) { + RadioModule(IBroadcastRadio service, RadioManager.ModuleProperties properties, + RadioServiceUserController userController) { mProperties = Objects.requireNonNull(properties, "properties cannot be null"); mService = Objects.requireNonNull(service, "service cannot be null"); mHandler = new Handler(Looper.getMainLooper()); + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); mLogger = new RadioEventLogger(TAG, RADIO_EVENT_LOGGER_QUEUE_SIZE); } @Nullable - static RadioModule tryLoadingModule(int moduleId, String moduleName, IBinder serviceBinder) { + static RadioModule tryLoadingModule(int moduleId, String moduleName, IBinder serviceBinder, + RadioServiceUserController userController) { try { Slogf.i(TAG, "Try loading module for module id = %d, module name = %s", moduleId, moduleName); @@ -232,7 +236,7 @@ final class RadioModule { RadioManager.ModuleProperties prop = ConversionUtils.propertiesFromHalProperties( moduleId, moduleName, service.getProperties(), amfmConfig, dabConfig); - return new RadioModule(service, prop); + return new RadioModule(service, prop, userController); } catch (RemoteException ex) { Slogf.e(TAG, ex, "Failed to load module %s", moduleName); return null; @@ -255,7 +259,7 @@ final class RadioModule { RadioManager.ProgramInfo currentProgramInfo; synchronized (mLock) { boolean isFirstTunerSession = mAidlTunerSessions.isEmpty(); - tunerSession = new TunerSession(this, mService, userCb); + tunerSession = new TunerSession(this, mService, userCb, mUserController); mAidlTunerSessions.add(tunerSession); antennaConnected = mAntennaConnected; currentProgramInfo = mCurrentProgramInfo; @@ -433,7 +437,7 @@ final class RadioModule { @GuardedBy("mLock") private void fanoutAidlCallbackLocked(AidlCallbackRunnable runnable) { - int currentUserId = RadioServiceUserController.getCurrentUser(); + int currentUserId = mUserController.getCurrentUser(); List<TunerSession> deadSessions = null; for (int i = 0; i < mAidlTunerSessions.size(); i++) { if (mAidlTunerSessions.valueAt(i).mUserId != currentUserId diff --git a/services/core/java/com/android/server/broadcastradio/aidl/TunerSession.java b/services/core/java/com/android/server/broadcastradio/aidl/TunerSession.java index e90a1dda6cf5..f22661b72da1 100644 --- a/services/core/java/com/android/server/broadcastradio/aidl/TunerSession.java +++ b/services/core/java/com/android/server/broadcastradio/aidl/TunerSession.java @@ -52,6 +52,7 @@ final class TunerSession extends ITuner.Stub { final android.hardware.radio.ITunerCallback mCallback; private final int mUid; private final IBroadcastRadio mService; + private final RadioServiceUserController mUserController; @GuardedBy("mLock") private boolean mIsClosed; @@ -65,11 +66,13 @@ final class TunerSession extends ITuner.Stub { private RadioManager.BandConfig mPlaceHolderConfig; TunerSession(RadioModule radioModule, IBroadcastRadio service, - android.hardware.radio.ITunerCallback callback) { + android.hardware.radio.ITunerCallback callback, + RadioServiceUserController userController) { mModule = Objects.requireNonNull(radioModule, "radioModule cannot be null"); mService = Objects.requireNonNull(service, "service cannot be null"); - mUserId = Binder.getCallingUserHandle().getIdentifier(); mCallback = Objects.requireNonNull(callback, "callback cannot be null"); + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); + mUserId = mUserController.getCallingUserId(); mUid = Binder.getCallingUid(); mLogger = new RadioEventLogger(TAG, TUNER_EVENT_LOGGER_QUEUE_SIZE); } @@ -126,7 +129,7 @@ final class TunerSession extends ITuner.Stub { @Override public void setConfiguration(RadioManager.BandConfig config) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set configuration for AIDL HAL client from non-current user"); return; } @@ -169,7 +172,7 @@ final class TunerSession extends ITuner.Stub { public void step(boolean directionDown, boolean skipSubChannel) throws RemoteException { mLogger.logRadioEvent("Step with direction %s, skipSubChannel? %s", directionDown ? "down" : "up", skipSubChannel ? "yes" : "no"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot step on AIDL HAL client from non-current user"); return; } @@ -187,7 +190,7 @@ final class TunerSession extends ITuner.Stub { public void seek(boolean directionDown, boolean skipSubChannel) throws RemoteException { mLogger.logRadioEvent("Seek with direction %s, skipSubChannel? %s", directionDown ? "down" : "up", skipSubChannel ? "yes" : "no"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot scan on AIDL HAL client from non-current user"); return; } @@ -204,7 +207,7 @@ final class TunerSession extends ITuner.Stub { @Override public void tune(ProgramSelector selector) throws RemoteException { mLogger.logRadioEvent("Tune with selector %s", selector); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot tune on AIDL HAL client from non-current user"); return; } @@ -226,7 +229,7 @@ final class TunerSession extends ITuner.Stub { @Override public void cancel() { Slogf.i(TAG, "Cancel"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot cancel on AIDL HAL client from non-current user"); return; } @@ -255,7 +258,7 @@ final class TunerSession extends ITuner.Stub { @Override public boolean startBackgroundScan() { Slogf.w(TAG, "Explicit background scan trigger is not supported with HAL AIDL"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start background scan on AIDL HAL client from non-current user"); return false; } @@ -268,7 +271,7 @@ final class TunerSession extends ITuner.Stub { @Override public void startProgramListUpdates(ProgramList.Filter filter) throws RemoteException { mLogger.logRadioEvent("Start programList updates %s", filter); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start program list updates on AIDL HAL client from non-current user"); return; @@ -344,7 +347,7 @@ final class TunerSession extends ITuner.Stub { @Override public void stopProgramListUpdates() throws RemoteException { mLogger.logRadioEvent("Stop programList updates"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot stop program list updates on AIDL HAL client from non-current user"); return; @@ -389,7 +392,7 @@ final class TunerSession extends ITuner.Stub { public void setConfigFlag(int flag, boolean value) throws RemoteException { mLogger.logRadioEvent("set ConfigFlag %s to %b ", ConfigFlag.$.toString(flag), value); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set config flag for AIDL HAL client from non-current user"); return; } @@ -406,7 +409,7 @@ final class TunerSession extends ITuner.Stub { @Override public Map<String, String> setParameters(Map<String, String> parameters) { mLogger.logRadioEvent("Set parameters "); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set parameters for AIDL HAL client from non-current user"); return new ArrayMap<>(); } diff --git a/services/core/java/com/android/server/broadcastradio/hal1/BroadcastRadioService.java b/services/core/java/com/android/server/broadcastradio/hal1/BroadcastRadioService.java index fb42c94b56f4..6a6a3ae44c8b 100644 --- a/services/core/java/com/android/server/broadcastradio/hal1/BroadcastRadioService.java +++ b/services/core/java/com/android/server/broadcastradio/hal1/BroadcastRadioService.java @@ -35,6 +35,7 @@ public class BroadcastRadioService { * This field is used by native code, do not access or modify. */ private final long mNativeContext = nativeInit(); + private final RadioServiceUserController mUserController; private final Object mLock = new Object(); @@ -50,6 +51,10 @@ public class BroadcastRadioService { private native Tuner nativeOpenTuner(long nativeContext, int moduleId, RadioManager.BandConfig config, boolean withAudio, ITunerCallback callback); + public BroadcastRadioService(RadioServiceUserController userController) { + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); + } + public @NonNull List<RadioManager.ModuleProperties> loadModules() { synchronized (mLock) { return Objects.requireNonNull(nativeLoadModules(mNativeContext)); @@ -58,7 +63,7 @@ public class BroadcastRadioService { public ITuner openTuner(int moduleId, RadioManager.BandConfig bandConfig, boolean withAudio, ITunerCallback callback) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.e(TAG, "Cannot open tuner on HAL 1.x client for non-current user"); throw new IllegalStateException("Cannot open tuner for non-current user"); } diff --git a/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java b/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java index 7cac4091c583..8e64600d2694 100644 --- a/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java +++ b/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java @@ -28,6 +28,7 @@ import android.os.IBinder; import android.os.RemoteException; import com.android.server.broadcastradio.RadioServiceUserController; +import com.android.server.broadcastradio.RadioServiceUserControllerImpl; import com.android.server.utils.Slogf; import java.util.List; @@ -51,6 +52,7 @@ class Tuner extends ITuner.Stub { private boolean mIsMuted = false; private int mRegion; private final boolean mWithAudio; + private final RadioServiceUserController mUserController = new RadioServiceUserControllerImpl(); Tuner(@NonNull ITunerCallback clientCallback, int halRev, int region, boolean withAudio, int band) { @@ -127,7 +129,7 @@ class Tuner extends ITuner.Stub { @Override public void setConfiguration(RadioManager.BandConfig config) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set configuration for HAL 1.x client from non-current user"); return; } @@ -176,7 +178,7 @@ class Tuner extends ITuner.Stub { @Override public void step(boolean directionDown, boolean skipSubChannel) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot step on HAL 1.x client from non-current user"); return; } @@ -189,7 +191,7 @@ class Tuner extends ITuner.Stub { @Override public void seek(boolean directionDown, boolean skipSubChannel) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot seek on HAL 1.x client from non-current user"); return; } @@ -202,7 +204,7 @@ class Tuner extends ITuner.Stub { @Override public void tune(ProgramSelector selector) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot tune on HAL 1.x client from non-current user"); return; } @@ -219,7 +221,7 @@ class Tuner extends ITuner.Stub { @Override public void cancel() { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot cancel on HAL 1.x client from non-current user"); return; } @@ -231,7 +233,7 @@ class Tuner extends ITuner.Stub { @Override public void cancelAnnouncement() { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot cancel announcement on HAL 1.x client from non-current user"); return; } @@ -260,7 +262,7 @@ class Tuner extends ITuner.Stub { @Override public boolean startBackgroundScan() { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start background scan on HAL 1.x client from non-current user"); return false; @@ -285,7 +287,7 @@ class Tuner extends ITuner.Stub { @Override public void startProgramListUpdates(ProgramList.Filter filter) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start program list updates on HAL 1.x client from non-current user"); return; @@ -295,7 +297,7 @@ class Tuner extends ITuner.Stub { @Override public void stopProgramListUpdates() { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot stop program list updates on HAL 1.x client from non-current user"); return; @@ -321,7 +323,7 @@ class Tuner extends ITuner.Stub { @Override public void setConfigFlag(int flag, boolean value) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set config flag for HAL 1.x client from non-current user"); return; } diff --git a/services/core/java/com/android/server/broadcastradio/hal2/BroadcastRadioService.java b/services/core/java/com/android/server/broadcastradio/hal2/BroadcastRadioService.java index a4efa2e330f8..3227afd82dbd 100644 --- a/services/core/java/com/android/server/broadcastradio/hal2/BroadcastRadioService.java +++ b/services/core/java/com/android/server/broadcastradio/hal2/BroadcastRadioService.java @@ -50,6 +50,8 @@ public final class BroadcastRadioService { private final Object mLock = new Object(); + private final RadioServiceUserController mUserController; + @GuardedBy("mLock") private int mNextModuleId; @@ -75,7 +77,8 @@ public final class BroadcastRadioService { moduleId = mNextModuleId; } - RadioModule radioModule = RadioModule.tryLoadingModule(moduleId, serviceName); + RadioModule radioModule = RadioModule.tryLoadingModule(moduleId, serviceName, + mUserController); if (radioModule == null) { return; } @@ -123,8 +126,9 @@ public final class BroadcastRadioService { } }; - public BroadcastRadioService(int nextModuleId) { + public BroadcastRadioService(int nextModuleId, RadioServiceUserController userController) { mNextModuleId = nextModuleId; + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); try { IServiceManager manager = IServiceManager.getService(); if (manager == null) { @@ -138,8 +142,10 @@ public final class BroadcastRadioService { } @VisibleForTesting - BroadcastRadioService(int nextModuleId, IServiceManager manager) { + BroadcastRadioService(int nextModuleId, IServiceManager manager, + RadioServiceUserController userController) { mNextModuleId = nextModuleId; + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); Objects.requireNonNull(manager, "Service manager cannot be null"); try { manager.registerForNotifications(IBroadcastRadio.kInterfaceName, "", mServiceListener); @@ -171,7 +177,7 @@ public final class BroadcastRadioService { public ITuner openSession(int moduleId, @Nullable RadioManager.BandConfig legacyConfig, boolean withAudio, @NonNull ITunerCallback callback) throws RemoteException { Slogf.v(TAG, "Open HIDL 2.0 session with module id " + moduleId); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.e(TAG, "Cannot open tuner on HAL 2.0 client for non-current user"); throw new IllegalStateException("Cannot open session for non-current user"); } diff --git a/services/core/java/com/android/server/broadcastradio/hal2/RadioModule.java b/services/core/java/com/android/server/broadcastradio/hal2/RadioModule.java index d3b244886a64..a0d6cc2c75b0 100644 --- a/services/core/java/com/android/server/broadcastradio/hal2/RadioModule.java +++ b/services/core/java/com/android/server/broadcastradio/hal2/RadioModule.java @@ -66,6 +66,7 @@ final class RadioModule { private final Object mLock = new Object(); private final Handler mHandler; private final RadioEventLogger mEventLogger; + private final RadioServiceUserController mUserController; @GuardedBy("mLock") private ITunerSession mHalTunerSession; @@ -148,16 +149,18 @@ final class RadioModule { private final Set<TunerSession> mAidlTunerSessions = new ArraySet<>(); @VisibleForTesting - RadioModule(@NonNull IBroadcastRadio service, - @NonNull RadioManager.ModuleProperties properties) { + RadioModule(IBroadcastRadio service, RadioManager.ModuleProperties properties, + RadioServiceUserController userController) { mProperties = Objects.requireNonNull(properties); mService = Objects.requireNonNull(service); mHandler = new Handler(Looper.getMainLooper()); + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); mEventLogger = new RadioEventLogger(TAG, RADIO_EVENT_LOGGER_QUEUE_SIZE); } @Nullable - static RadioModule tryLoadingModule(int idx, @NonNull String fqName) { + static RadioModule tryLoadingModule(int idx, String fqName, + RadioServiceUserController controller) { try { Slogf.i(TAG, "Try loading module for idx " + idx + ", fqName " + fqName); IBroadcastRadio service = IBroadcastRadio.getService(fqName); @@ -179,7 +182,7 @@ final class RadioModule { RadioManager.ModuleProperties prop = Convert.propertiesFromHal(idx, fqName, service.getProperties(), amfmConfig.value, dabConfig.value); - return new RadioModule(service, prop); + return new RadioModule(service, prop, controller); } catch (RemoteException ex) { Slogf.e(TAG, "Failed to load module " + fqName, ex); return null; @@ -208,7 +211,8 @@ final class RadioModule { }); mHalTunerSession = Objects.requireNonNull(hwSession.value); } - TunerSession tunerSession = new TunerSession(this, mHalTunerSession, userCb); + TunerSession tunerSession = new TunerSession(this, mHalTunerSession, userCb, + mUserController); mAidlTunerSessions.add(tunerSession); // Propagate state to new client. Note: These callbacks are invoked while holding mLock @@ -375,7 +379,7 @@ final class RadioModule { @GuardedBy("mLock") private void fanoutAidlCallbackLocked(AidlCallbackRunnable runnable) { - int currentUserId = RadioServiceUserController.getCurrentUser(); + int currentUserId = mUserController.getCurrentUser(); List<TunerSession> deadSessions = null; for (TunerSession tunerSession : mAidlTunerSessions) { if (tunerSession.mUserId != currentUserId && tunerSession.mUserId diff --git a/services/core/java/com/android/server/broadcastradio/hal2/TunerSession.java b/services/core/java/com/android/server/broadcastradio/hal2/TunerSession.java index 80efacdb12ee..dc164b1e6eff 100644 --- a/services/core/java/com/android/server/broadcastradio/hal2/TunerSession.java +++ b/services/core/java/com/android/server/broadcastradio/hal2/TunerSession.java @@ -16,7 +16,6 @@ package com.android.server.broadcastradio.hal2; -import android.annotation.NonNull; import android.annotation.Nullable; import android.graphics.Bitmap; import android.hardware.broadcastradio.V2_0.ConfigFlag; @@ -27,7 +26,6 @@ import android.hardware.radio.ITuner; import android.hardware.radio.ProgramList; import android.hardware.radio.ProgramSelector; import android.hardware.radio.RadioManager; -import android.os.Binder; import android.os.RemoteException; import android.util.ArrayMap; import android.util.ArraySet; @@ -55,6 +53,7 @@ final class TunerSession extends ITuner.Stub { private final ITunerSession mHwSession; final int mUserId; final android.hardware.radio.ITunerCallback mCallback; + private final RadioServiceUserController mUserController; @GuardedBy("mLock") private boolean mIsClosed = false; @@ -66,12 +65,14 @@ final class TunerSession extends ITuner.Stub { // necessary only for older APIs compatibility private RadioManager.BandConfig mDummyConfig = null; - TunerSession(@NonNull RadioModule module, @NonNull ITunerSession hwSession, - @NonNull android.hardware.radio.ITunerCallback callback) { + TunerSession(RadioModule module, ITunerSession hwSession, + android.hardware.radio.ITunerCallback callback, + RadioServiceUserController userController) { mModule = Objects.requireNonNull(module); mHwSession = Objects.requireNonNull(hwSession); - mUserId = Binder.getCallingUserHandle().getIdentifier(); mCallback = Objects.requireNonNull(callback); + mUserController = Objects.requireNonNull(userController, "User controller can not be null"); + mUserId = mUserController.getCallingUserId(); mEventLogger = new RadioEventLogger(TAG, TUNER_EVENT_LOGGER_QUEUE_SIZE); } @@ -120,7 +121,7 @@ final class TunerSession extends ITuner.Stub { @Override public void setConfiguration(RadioManager.BandConfig config) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set configuration for HAL 2.0 client from non-current user"); return; } @@ -162,7 +163,7 @@ final class TunerSession extends ITuner.Stub { public void step(boolean directionDown, boolean skipSubChannel) throws RemoteException { mEventLogger.logRadioEvent("Step with direction %s, skipSubChannel? %s", directionDown ? "down" : "up", skipSubChannel ? "yes" : "no"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot step on HAL 2.0 client from non-current user"); return; } @@ -177,7 +178,7 @@ final class TunerSession extends ITuner.Stub { public void seek(boolean directionDown, boolean skipSubChannel) throws RemoteException { mEventLogger.logRadioEvent("Seek with direction %s, skipSubChannel? %s", directionDown ? "down" : "up", skipSubChannel ? "yes" : "no"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot scan on HAL 2.0 client from non-current user"); return; } @@ -191,7 +192,7 @@ final class TunerSession extends ITuner.Stub { @Override public void tune(ProgramSelector selector) throws RemoteException { mEventLogger.logRadioEvent("Tune with selector %s", selector); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot tune on HAL 2.0 client from non-current user"); return; } @@ -205,7 +206,7 @@ final class TunerSession extends ITuner.Stub { @Override public void cancel() { Slogf.i(TAG, "Cancel"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot cancel on HAL 2.0 client from non-current user"); return; } @@ -230,7 +231,7 @@ final class TunerSession extends ITuner.Stub { @Override public boolean startBackgroundScan() { Slogf.w(TAG, "Explicit background scan trigger is not supported with HAL 2.0"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start background scan on HAL 2.0 client from non-current user"); return false; @@ -242,7 +243,7 @@ final class TunerSession extends ITuner.Stub { @Override public void startProgramListUpdates(ProgramList.Filter filter) { mEventLogger.logRadioEvent("start programList updates %s", filter); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot start program list updates on HAL 2.0 client from non-current user"); return; @@ -306,7 +307,7 @@ final class TunerSession extends ITuner.Stub { @Override public void stopProgramListUpdates() throws RemoteException { mEventLogger.logRadioEvent("Stop programList updates"); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot stop program list updates on HAL 2.0 client from non-current user"); return; @@ -355,7 +356,7 @@ final class TunerSession extends ITuner.Stub { @Override public void setConfigFlag(int flag, boolean value) throws RemoteException { mEventLogger.logRadioEvent("Set ConfigFlag %s = %b", ConfigFlag.toString(flag), value); - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set config flag for HAL 2.0 client from non-current user"); return; } @@ -368,7 +369,7 @@ final class TunerSession extends ITuner.Stub { @Override public Map<String, String> setParameters(Map<String, String> parameters) { - if (!RadioServiceUserController.isCurrentOrSystemUser()) { + if (!mUserController.isCurrentOrSystemUser()) { Slogf.w(TAG, "Cannot set parameters for HAL 2.0 client from non-current user"); return new ArrayMap<>(); } diff --git a/services/core/java/com/android/server/compat/PlatformCompat.java b/services/core/java/com/android/server/compat/PlatformCompat.java index f8fd0a0790e0..df49affa4d6f 100644 --- a/services/core/java/com/android/server/compat/PlatformCompat.java +++ b/services/core/java/com/android/server/compat/PlatformCompat.java @@ -236,6 +236,25 @@ public class PlatformCompat extends IPlatformCompat.Stub { return enabled; } + /** + * Internal version of {@link #isChangeEnabledByUid(long, int)}. + * + * <p>Does not perform costly permission check and logging. + */ + public boolean isChangeEnabledByUidInternalNoLogging(long changeId, int uid) { + String[] packages = mContext.getPackageManager().getPackagesForUid(uid); + if (packages == null || packages.length == 0) { + return mCompatConfig.defaultChangeIdValue(changeId); + } + boolean enabled = true; + final int userId = UserHandle.getUserId(uid); + for (String packageName : packages) { + final var appInfo = getApplicationInfo(packageName, userId); + enabled &= isChangeEnabledInternalNoLogging(changeId, appInfo); + } + return enabled; + } + @Override @EnforcePermission(OVERRIDE_COMPAT_CHANGE_CONFIG) public void setOverrides(CompatibilityChangeConfig overrides, String packageName) { diff --git a/services/core/java/com/android/server/compat/TEST_MAPPING b/services/core/java/com/android/server/compat/TEST_MAPPING index bc1c7287d04a..3997bcff8b37 100644 --- a/services/core/java/com/android/server/compat/TEST_MAPPING +++ b/services/core/java/com/android/server/compat/TEST_MAPPING @@ -2,12 +2,7 @@ "presubmit": [ // Unit tests { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.compat" - } - ] + "name": "FrameworksServicesTests_android_server_compat" }, // Tests for the TestRule { diff --git a/services/core/java/com/android/server/compat/overrides/TEST_MAPPING b/services/core/java/com/android/server/compat/overrides/TEST_MAPPING index 4b8f08ec9164..16497538344a 100644 --- a/services/core/java/com/android/server/compat/overrides/TEST_MAPPING +++ b/services/core/java/com/android/server/compat/overrides/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.compat.overrides" - } - ] + "name": "FrameworksMockingServicesTests_android_server_compat_overrides" } ] } diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index 5905b7de5b6e..e1bb8a1a0f21 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java @@ -344,7 +344,11 @@ public class Vpn { private final AppOpsManager mAppOpsManager; private final ConnectivityDiagnosticsManager mConnectivityDiagnosticsManager; private final TelephonyManager mTelephonyManager; + + // null if FEATURE_TELEPHONY_SUBSCRIPTION is not declared + @Nullable private final CarrierConfigManager mCarrierConfigManager; + private final SubscriptionManager mSubscriptionManager; // The context is for specific user which is created from mUserId @@ -2837,8 +2841,10 @@ public class Vpn { createUserAndRestrictedProfilesRanges(mUserId, mConfig.allowedApplications, mConfig.disallowedApplications)); - mCarrierConfigManager.registerCarrierConfigChangeListener(mExecutor, - mCarrierConfigChangeListener); + if (mCarrierConfigManager != null) { + mCarrierConfigManager.registerCarrierConfigChangeListener(mExecutor, + mCarrierConfigChangeListener); + } } @Override @@ -3343,6 +3349,10 @@ public class Vpn { */ @Nullable private CarrierConfigInfo getCarrierConfigForUnderlyingNetwork() { + if (mCarrierConfigManager == null) { + return null; + } + final int subId = getCellSubIdForNetworkCapabilities(mUnderlyingNetworkCapabilities); if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) { Log.d(TAG, "Underlying network is not a cellular network"); @@ -3962,8 +3972,10 @@ public class Vpn { resetIkeState(); - mCarrierConfigManager.unregisterCarrierConfigChangeListener( - mCarrierConfigChangeListener); + if (mCarrierConfigManager != null) { + mCarrierConfigManager.unregisterCarrierConfigChangeListener( + mCarrierConfigChangeListener); + } mConnectivityManager.unregisterNetworkCallback(mNetworkCallback); mExecutor.shutdown(); diff --git a/services/core/java/com/android/server/content/OWNERS b/services/core/java/com/android/server/content/OWNERS index b6a9fe869ffa..5642382767dc 100644 --- a/services/core/java/com/android/server/content/OWNERS +++ b/services/core/java/com/android/server/content/OWNERS @@ -1 +1,3 @@ -include /services/core/java/com/android/server/am/OWNERS
\ No newline at end of file +include /services/core/java/com/android/server/am/OWNERS + +per-file Sync* = file:/apex/jobscheduler/JOB_OWNERS
\ No newline at end of file diff --git a/services/core/java/com/android/server/display/AutomaticBrightnessController.java b/services/core/java/com/android/server/display/AutomaticBrightnessController.java index 7b5cff739ba1..03be1447a24d 100644 --- a/services/core/java/com/android/server/display/AutomaticBrightnessController.java +++ b/services/core/java/com/android/server/display/AutomaticBrightnessController.java @@ -917,7 +917,7 @@ public class AutomaticBrightnessController { setAmbientLux(mFastAmbientLux); if (mLoggingEnabled) { Slog.d(TAG, "updateAmbientLux: " - + ((mFastAmbientLux > mAmbientLux) ? "Brightened" : "Darkened") + ": " + + ((mFastAmbientLux > mPreThresholdLux) ? "Brightened" : "Darkened") + ": " + "mAmbientBrighteningThreshold=" + mAmbientBrighteningThreshold + ", " + "mAmbientDarkeningThreshold=" + mAmbientDarkeningThreshold + ", " + "mAmbientLightRingBuffer=" + mAmbientLightRingBuffer + ", " diff --git a/services/core/java/com/android/server/display/BrightnessSetting.java b/services/core/java/com/android/server/display/BrightnessSetting.java index 651828b6b9e2..7d26004b15c5 100644 --- a/services/core/java/com/android/server/display/BrightnessSetting.java +++ b/services/core/java/com/android/server/display/BrightnessSetting.java @@ -131,6 +131,25 @@ public class BrightnessSetting { } /** + * Sets the brightness. Does not send update event to listeners. + * @param brightness The value to which the brightness is to be set. + */ + public void setBrightnessNoNotify(float brightness) { + if (Float.isNaN(brightness)) { + Slog.w(TAG, "Attempting to init invalid brightness"); + return; + } + synchronized (mSyncRoot) { + if (brightness != mBrightness) { + mPersistentDataStore.setBrightness(mLogicalDisplay.getPrimaryDisplayDeviceLocked(), + brightness, mUserSerial + ); + } + mBrightness = brightness; + } + } + + /** * @return The brightness for the default display in nits. Used when the underlying display * device has changed but we want to persist the nit value. */ diff --git a/services/core/java/com/android/server/display/DisplayManagerService.java b/services/core/java/com/android/server/display/DisplayManagerService.java index 2d5f38e2dd8c..670d59c09e06 100644 --- a/services/core/java/com/android/server/display/DisplayManagerService.java +++ b/services/core/java/com/android/server/display/DisplayManagerService.java @@ -4782,6 +4782,8 @@ public final class DisplayManagerService extends SystemService { } final int[] supportedStates = mDeviceStateManager.getSupportedStateIdentifiers(); + // TODO(b/352019542): remove the log once b/345960547 is fixed. + Slog.d(TAG, "supportedStates=" + Arrays.toString(supportedStates)); DisplayInfo displayInfo; for (int state : supportedStates) { displayInfo = mLogicalDisplayMapper.getDisplayInfoForStateLocked(state, @@ -4790,6 +4792,8 @@ public final class DisplayManagerService extends SystemService { possibleInfo.add(displayInfo); } } + // TODO(b/352019542): remove the log once b/345960547 is fixed. + Slog.d(TAG, "possibleInfos=" + possibleInfo); return possibleInfo; } } diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index 65a729a0293e..df768dcc564f 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -587,7 +587,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mUniqueDisplayId, mThermalBrightnessThrottlingDataId, logicalDisplay.getPowerThrottlingDataIdLocked(), - mDisplayDeviceConfig), mContext, flags, mSensorManager); + mDisplayDeviceConfig, + mDisplayId), mContext, flags, mSensorManager); // Seed the cached brightness saveBrightnessInfo(getScreenBrightnessSetting()); mAutomaticBrightnessStrategy = @@ -892,7 +893,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // will call updatePowerState if needed. mBrightnessClamperController.onDisplayChanged( new BrightnessClamperController.DisplayDeviceData(uniqueId, - thermalBrightnessThrottlingDataId, powerThrottlingDataId, config)); + thermalBrightnessThrottlingDataId, powerThrottlingDataId, + config, mDisplayId)); if (changed) { updatePowerState(); @@ -1565,7 +1567,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // even if they range changes what it means in absolute terms. mDisplayBrightnessController.updateScreenBrightnessSetting( MathUtils.constrain(unthrottledBrightnessState, - clampedState.getMinBrightness(), clampedState.getMaxBrightness())); + clampedState.getMinBrightness(), clampedState.getMaxBrightness()), + Math.min(mBrightnessRangeController.getCurrentBrightnessMax(), + clampedState.getMaxBrightness())); } // The current brightness to use has been calculated at this point, and HbmController should @@ -2455,12 +2459,20 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call @Override public void setBrightness(float brightness) { - mDisplayBrightnessController.setBrightness(clampScreenBrightness(brightness)); + // After HBMController and NBMController migration to Clampers framework + // currentBrightnessMax should be taken from clampers controller + // TODO(b/263362199) + mDisplayBrightnessController.setBrightness(clampScreenBrightness(brightness), + mBrightnessRangeController.getCurrentBrightnessMax()); } @Override public void setBrightness(float brightness, int userSerial) { - mDisplayBrightnessController.setBrightness(clampScreenBrightness(brightness), userSerial); + // After HBMController and NBMController migration to Clampers framework + // currentBrightnessMax should be taken from clampers controller + // TODO(b/263362199) + mDisplayBrightnessController.setBrightness(clampScreenBrightness(brightness), userSerial, + mBrightnessRangeController.getCurrentBrightnessMax()); } @Override diff --git a/services/core/java/com/android/server/display/LogicalDisplayMapper.java b/services/core/java/com/android/server/display/LogicalDisplayMapper.java index e645e98c215c..4791cd1403e2 100644 --- a/services/core/java/com/android/server/display/LogicalDisplayMapper.java +++ b/services/core/java/com/android/server/display/LogicalDisplayMapper.java @@ -389,11 +389,15 @@ class LogicalDisplayMapper implements DisplayDeviceRepository.Listener { // Retrieve the layout for this particular state. final Layout layout = mDeviceStateToLayoutMap.get(deviceState); if (layout == null) { + // TODO(b/352019542): remove the log once b/345960547 is fixed. + Slog.d(TAG, "Cannot get layout for given state:" + deviceState); return null; } // Retrieve the details of the given display within this layout. Layout.Display display = layout.getById(displayId); if (display == null) { + // TODO(b/352019542): remove the log once b/345960547 is fixed. + Slog.d(TAG, "Cannot get display for given layout:" + layout); return null; } // Retrieve the display info for the display that matches the display id. diff --git a/services/core/java/com/android/server/display/TEST_MAPPING b/services/core/java/com/android/server/display/TEST_MAPPING index 049b2fd032db..4d7962f467fd 100644 --- a/services/core/java/com/android/server/display/TEST_MAPPING +++ b/services/core/java/com/android/server/display/TEST_MAPPING @@ -1,21 +1,12 @@ { "presubmit": [ { - "name": "DisplayServiceTests", - "options": [ - {"include-filter": "com.android.server.display"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "DisplayServiceTests_server_display" } ], "postsubmit": [ { - "name": "DisplayServiceTests", - "options": [ - {"include-filter": "com.android.server.display"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "DisplayServiceTests_server_display" } ] } diff --git a/services/core/java/com/android/server/display/brightness/DisplayBrightnessController.java b/services/core/java/com/android/server/display/brightness/DisplayBrightnessController.java index 4982a0b0b836..c632e77fe685 100644 --- a/services/core/java/com/android/server/display/brightness/DisplayBrightnessController.java +++ b/services/core/java/com/android/server/display/brightness/DisplayBrightnessController.java @@ -313,13 +313,18 @@ public final class DisplayBrightnessController { /** * Notifies the brightnessSetting to persist the supplied brightness value. */ - public void setBrightness(float brightnessValue) { + public void setBrightness(float brightnessValue, float maxBrightness) { // Update the setting, which will eventually call back into DPC to have us actually // update the display with the new value. mBrightnessSetting.setBrightness(brightnessValue); if (mDisplayId == Display.DEFAULT_DISPLAY && mPersistBrightnessNitsForDefaultDisplay) { float nits = convertToNits(brightnessValue); - if (nits >= 0) { + float currentlyStoredNits = mBrightnessSetting.getBrightnessNitsForDefaultDisplay(); + // Don't override settings if the brightness is set to max, but the currently + // stored value is greater. On multi-screen device, when switching between a + // screen with a wider brightness range and one with a narrower brightness range, + // the stored value shouldn't change. + if (nits >= 0 && !(brightnessValue == maxBrightness && currentlyStoredNits > nits)) { mBrightnessSetting.setBrightnessNitsForDefaultDisplay(nits); } } @@ -328,15 +333,15 @@ public final class DisplayBrightnessController { /** * Notifies the brightnessSetting to persist the supplied brightness value for a user. */ - public void setBrightness(float brightnessValue, int userSerial) { + public void setBrightness(float brightnessValue, int userSerial, float maxBrightness) { mBrightnessSetting.setUserSerial(userSerial); - setBrightness(brightnessValue); + setBrightness(brightnessValue, maxBrightness); } /** * Sets the current screen brightness, and notifies the BrightnessSetting about the change. */ - public void updateScreenBrightnessSetting(float brightnessValue) { + public void updateScreenBrightnessSetting(float brightnessValue, float maxBrightness) { synchronized (mLock) { if (!BrightnessUtils.isValidBrightnessValue(brightnessValue) || brightnessValue == mCurrentScreenBrightness) { @@ -345,7 +350,7 @@ public final class DisplayBrightnessController { setCurrentScreenBrightnessLocked(brightnessValue); } notifyCurrentScreenBrightness(); - setBrightness(brightnessValue); + setBrightness(brightnessValue, maxBrightness); } /** @@ -582,7 +587,7 @@ public final class DisplayBrightnessController { float brightnessForDefaultDisplay = getBrightnessFromNits( brightnessNitsForDefaultDisplay); if (BrightnessUtils.isValidBrightnessValue(brightnessForDefaultDisplay)) { - mBrightnessSetting.setBrightness(brightnessForDefaultDisplay); + mBrightnessSetting.setBrightnessNoNotify(brightnessForDefaultDisplay); currentBrightnessSetting = brightnessForDefaultDisplay; } } diff --git a/services/core/java/com/android/server/display/brightness/clamper/BrightnessClamperController.java b/services/core/java/com/android/server/display/brightness/clamper/BrightnessClamperController.java index 101ad307f50a..220640270e02 100644 --- a/services/core/java/com/android/server/display/brightness/clamper/BrightnessClamperController.java +++ b/services/core/java/com/android/server/display/brightness/clamper/BrightnessClamperController.java @@ -23,23 +23,17 @@ import static com.android.server.display.brightness.clamper.BrightnessClamper.Ty import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; -import android.content.res.Resources; -import android.hardware.Sensor; -import android.hardware.SensorEvent; -import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.hardware.display.BrightnessInfo; import android.hardware.display.DisplayManagerInternal; import android.os.Handler; import android.os.HandlerExecutor; import android.os.PowerManager; -import android.os.SystemClock; import android.provider.DeviceConfig; import android.provider.DeviceConfigInterface; import android.util.IndentingPrintWriter; import android.util.Slog; -import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.server.display.DisplayBrightnessState; import com.android.server.display.DisplayDeviceConfig; @@ -50,30 +44,22 @@ import com.android.server.display.brightness.BrightnessReason; import com.android.server.display.config.SensorData; import com.android.server.display.feature.DeviceConfigParameterProvider; import com.android.server.display.feature.DisplayManagerFlags; -import com.android.server.display.utils.AmbientFilter; -import com.android.server.display.utils.AmbientFilterFactory; -import com.android.server.display.utils.DebugUtils; -import com.android.server.display.utils.SensorUtils; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Executor; -import java.util.concurrent.TimeUnit; /** * Clampers controller, all in DisplayControllerHandler */ public class BrightnessClamperController { private static final String TAG = "BrightnessClamperController"; - // To enable these logs, run: - // 'adb shell setprop persist.log.tag.BrightnessClamperController DEBUG && adb reboot' - private static final boolean DEBUG = DebugUtils.isDebuggable(TAG); - public static final float INVALID_LUX = -1f; private final DeviceConfigParameterProvider mDeviceConfigParameterProvider; private final Handler mHandler; - private final SensorManager mSensorManager; + private final LightSensorController mLightSensorController; + private final ClamperChangeListener mClamperChangeListenerExternal; private final Executor mExecutor; private final List<BrightnessClamper<? super DisplayDeviceData>> mClampers; @@ -85,70 +71,49 @@ public class BrightnessClamperController { private float mCustomAnimationRate = DisplayBrightnessState.CUSTOM_ANIMATION_RATE_NOT_SET; @Nullable private Type mClamperType = null; - private final SensorEventListener mLightSensorListener; - private Sensor mRegisteredLightSensor = null; - private Sensor mLightSensor; - private String mLightSensorType; - private String mLightSensorName; - private AmbientFilter mAmbientFilter; - private final DisplayDeviceConfig mDisplayDeviceConfig; - private final Resources mResources; - private final int mLightSensorRate; - - private final Injector mInjector; + private boolean mClamperApplied = false; + private final LightSensorController.LightSensorListener mLightSensorListener = + new LightSensorController.LightSensorListener() { + @Override + public void onAmbientLuxChange(float lux) { + mModifiers.forEach(mModifier -> mModifier.setAmbientLux(lux)); + } + }; + public BrightnessClamperController(Handler handler, ClamperChangeListener clamperChangeListener, DisplayDeviceData data, Context context, DisplayManagerFlags flags, SensorManager sensorManager) { - this(null, handler, clamperChangeListener, data, context, flags, sensorManager); + this(new Injector(), handler, clamperChangeListener, data, context, flags, sensorManager); } @VisibleForTesting BrightnessClamperController(Injector injector, Handler handler, ClamperChangeListener clamperChangeListener, DisplayDeviceData data, Context context, DisplayManagerFlags flags, SensorManager sensorManager) { - mInjector = injector == null ? new Injector() : injector; - mDeviceConfigParameterProvider = mInjector.getDeviceConfigParameterProvider(); + mDeviceConfigParameterProvider = injector.getDeviceConfigParameterProvider(); mHandler = handler; - mSensorManager = sensorManager; - mDisplayDeviceConfig = data.mDisplayDeviceConfig; - mLightSensorListener = new SensorEventListener() { - @Override - public void onSensorChanged(SensorEvent event) { - long now = SystemClock.elapsedRealtime(); - mAmbientFilter.addValue(TimeUnit.NANOSECONDS.toMillis(event.timestamp), - event.values[0]); - final float lux = mAmbientFilter.getEstimate(now); - mModifiers.forEach(mModifier -> mModifier.setAmbientLux(lux)); - } - - @Override - public void onAccuracyChanged(Sensor sensor, int accuracy) { - // unused - } - }; + mLightSensorController = injector.getLightSensorController(sensorManager, context, + mLightSensorListener, mHandler); mClamperChangeListenerExternal = clamperChangeListener; mExecutor = new HandlerExecutor(handler); - mResources = context.getResources(); - mLightSensorRate = context.getResources().getInteger( - R.integer.config_autoBrightnessLightSensorRate); Runnable clamperChangeRunnableInternal = this::recalculateBrightnessCap; - ClamperChangeListener clamperChangeListenerInternal = () -> { if (!mHandler.hasCallbacks(clamperChangeRunnableInternal)) { mHandler.post(clamperChangeRunnableInternal); } }; - mClampers = mInjector.getClampers(handler, clamperChangeListenerInternal, data, flags, + mClampers = injector.getClampers(handler, clamperChangeListenerInternal, data, flags, context); - mModifiers = mInjector.getModifiers(flags, context, handler, clamperChangeListener, - data.mDisplayDeviceConfig, mSensorManager); + mModifiers = injector.getModifiers(flags, context, handler, clamperChangeListener, + data.mDisplayDeviceConfig); mOnPropertiesChangedListener = properties -> mClampers.forEach(BrightnessClamper::onDeviceConfigChanged); + mLightSensorController.configure(data.getAmbientLightSensor(), data.getDisplayId()); start(); } @@ -156,7 +121,9 @@ public class BrightnessClamperController { * Should be called when display changed. Forwards the call to individual clampers */ public void onDisplayChanged(DisplayDeviceData data) { + mLightSensorController.configure(data.getAmbientLightSensor(), data.getDisplayId()); mClampers.forEach(clamper -> clamper.onDisplayChanged(data)); + adjustLightSensorSubscription(); } /** @@ -184,9 +151,9 @@ public class BrightnessClamperController { } if (displayState != STATE_ON) { - unregisterSensorListener(); + mLightSensorController.stop(); } else { - maybeRegisterLightSensor(); + adjustLightSensorSubscription(); } for (int i = 0; i < mModifiers.size(); i++) { @@ -231,9 +198,8 @@ public class BrightnessClamperController { writer.println(" mBrightnessCap: " + mBrightnessCap); writer.println(" mClamperType: " + mClamperType); writer.println(" mClamperApplied: " + mClamperApplied); - writer.println(" mLightSensor=" + mLightSensor); - writer.println(" mRegisteredLightSensor=" + mRegisteredLightSensor); IndentingPrintWriter ipw = new IndentingPrintWriter(writer, " "); + mLightSensorController.dump(ipw); mClampers.forEach(clamper -> clamper.dump(ipw)); mModifiers.forEach(modifier -> modifier.dump(ipw)); } @@ -245,6 +211,7 @@ public class BrightnessClamperController { public void stop() { mDeviceConfigParameterProvider.removeOnPropertiesChangedListener( mOnPropertiesChangedListener); + mLightSensorController.stop(); mClampers.forEach(BrightnessClamper::stop); mModifiers.forEach(BrightnessStateModifier::stop); } @@ -281,10 +248,15 @@ public class BrightnessClamperController { if (!mClampers.isEmpty()) { mDeviceConfigParameterProvider.addOnPropertiesChangedListener( mExecutor, mOnPropertiesChangedListener); - reloadLightSensorData(mDisplayDeviceConfig); - mLightSensor = mInjector.getLightSensor( - mSensorManager, mLightSensorType, mLightSensorName); - maybeRegisterLightSensor(); + } + adjustLightSensorSubscription(); + } + + private void adjustLightSensorSubscription() { + if (mModifiers.stream().anyMatch(BrightnessStateModifier::shouldListenToLightSensor)) { + mLightSensorController.restart(); + } else { + mLightSensorController.stop(); } } @@ -323,7 +295,7 @@ public class BrightnessClamperController { List<BrightnessStateModifier> getModifiers(DisplayManagerFlags flags, Context context, Handler handler, ClamperChangeListener listener, - DisplayDeviceConfig displayDeviceConfig, SensorManager sensorManager) { + DisplayDeviceConfig displayDeviceConfig) { List<BrightnessStateModifier> modifiers = new ArrayList<>(); modifiers.add(new DisplayDimModifier(context)); modifiers.add(new BrightnessLowPowerModeModifier()); @@ -335,11 +307,12 @@ public class BrightnessClamperController { return modifiers; } - Sensor getLightSensor(SensorManager sensorManager, String type, String name) { - return SensorUtils.findSensor(sensorManager, type, - name, Sensor.TYPE_LIGHT); + LightSensorController getLightSensorController(SensorManager sensorManager, + Context context, LightSensorController.LightSensorListener listener, + Handler handler) { + return new LightSensorController(sensorManager, context.getResources(), + listener, handler); } - } /** @@ -354,17 +327,21 @@ public class BrightnessClamperController { private final String mThermalThrottlingDataId; @NonNull private final String mPowerThrottlingDataId; - + @NonNull private final DisplayDeviceConfig mDisplayDeviceConfig; + private final int mDisplayId; + public DisplayDeviceData(@NonNull String uniqueDisplayId, @NonNull String thermalThrottlingDataId, @NonNull String powerThrottlingDataId, - @NonNull DisplayDeviceConfig displayDeviceConfig) { + @NonNull DisplayDeviceConfig displayDeviceConfig, + int displayId) { mUniqueDisplayId = uniqueDisplayId; mThermalThrottlingDataId = thermalThrottlingDataId; mPowerThrottlingDataId = powerThrottlingDataId; mDisplayDeviceConfig = displayDeviceConfig; + mDisplayId = displayId; } @@ -412,55 +389,18 @@ public class BrightnessClamperController { } @NonNull + @Override public SensorData getTempSensor() { return mDisplayDeviceConfig.getTempSensor(); } - } - - private void maybeRegisterLightSensor() { - if (mModifiers.stream().noneMatch(BrightnessStateModifier::shouldListenToLightSensor)) { - return; - } - - if (mRegisteredLightSensor == mLightSensor) { - return; - } - if (mRegisteredLightSensor != null) { - unregisterSensorListener(); - } - - mAmbientFilter = AmbientFilterFactory.createBrightnessFilter(TAG, mResources); - mSensorManager.registerListener(mLightSensorListener, - mLightSensor, mLightSensorRate * 1000, mHandler); - mRegisteredLightSensor = mLightSensor; - - if (DEBUG) { - Slog.d(TAG, "maybeRegisterLightSensor"); - } - } - - private void unregisterSensorListener() { - mSensorManager.unregisterListener(mLightSensorListener); - mRegisteredLightSensor = null; - mModifiers.forEach(mModifier -> mModifier.setAmbientLux(INVALID_LUX)); // set lux to invalid - if (DEBUG) { - Slog.d(TAG, "unregisterSensorListener"); + @NonNull + SensorData getAmbientLightSensor() { + return mDisplayDeviceConfig.getAmbientLightSensor(); } - } - private void reloadLightSensorData(DisplayDeviceConfig displayDeviceConfig) { - // The displayDeviceConfig (ddc) contains display specific preferences. When loaded, - // it naturally falls back to the global config.xml. - if (displayDeviceConfig != null - && displayDeviceConfig.getAmbientLightSensor() != null) { - // This covers both the ddc and the config.xml fallback - mLightSensorType = displayDeviceConfig.getAmbientLightSensor().type; - mLightSensorName = displayDeviceConfig.getAmbientLightSensor().name; - } else if (mLightSensorName == null && mLightSensorType == null) { - mLightSensorType = mResources.getString( - com.android.internal.R.string.config_displayLightSensorType); - mLightSensorName = ""; + int getDisplayId() { + return mDisplayId; } } } diff --git a/services/core/java/com/android/server/display/brightness/clamper/LightSensorController.java b/services/core/java/com/android/server/display/brightness/clamper/LightSensorController.java new file mode 100644 index 000000000000..d89dd28c4a89 --- /dev/null +++ b/services/core/java/com/android/server/display/brightness/clamper/LightSensorController.java @@ -0,0 +1,163 @@ +/* + * Copyright (C) 2024 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.server.display.brightness.clamper; + +import android.annotation.Nullable; +import android.content.res.Resources; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; +import android.os.Handler; +import android.os.SystemClock; +import android.util.Slog; +import android.view.Display; + +import com.android.internal.R; +import com.android.internal.annotations.VisibleForTesting; +import com.android.server.display.config.SensorData; +import com.android.server.display.utils.AmbientFilter; +import com.android.server.display.utils.AmbientFilterFactory; +import com.android.server.display.utils.DebugUtils; +import com.android.server.display.utils.SensorUtils; + +import java.io.PrintWriter; +import java.util.concurrent.TimeUnit; + +/** + * Manages light sensor subscription and notifies its listener about ambient lux changes + */ +public class LightSensorController { + private static final String TAG = "LightSensorController"; + + // To enable these logs, run: + // 'adb shell setprop persist.log.tag.LightSensorController DEBUG && adb reboot' + private static final boolean DEBUG = DebugUtils.isDebuggable(TAG); + static final float INVALID_LUX = -1f; + + private final SensorManager mSensorManager; + private final LightSensorListener mLightSensorListener; + private final Handler mHandler; + private final Injector mInjector; + private final AmbientFilter mAmbientFilter; + + private Sensor mLightSensor; + private Sensor mRegisteredLightSensor = null; + private final int mLightSensorRate; + + private final SensorEventListener mLightSensorEventListener = new SensorEventListener() { + @Override + public void onSensorChanged(SensorEvent event) { + long now = mInjector.getTime(); + mAmbientFilter.addValue(TimeUnit.NANOSECONDS.toMillis(event.timestamp), + event.values[0]); + final float lux = mAmbientFilter.getEstimate(now); + mLightSensorListener.onAmbientLuxChange(lux); + } + + @Override + public void onAccuracyChanged(Sensor sensor, int accuracy) { + // unused + } + }; + + LightSensorController(SensorManager sensorManager, Resources resources, + LightSensorListener listener, Handler handler) { + this(sensorManager, resources, listener, handler, new Injector()); + } + + @VisibleForTesting + LightSensorController(SensorManager sensorManager, Resources resources, + LightSensorListener listener, Handler handler, Injector injector) { + mSensorManager = sensorManager; + mLightSensorRate = injector.getLightSensorRate(resources); + mAmbientFilter = injector.getAmbientFilter(resources); + mLightSensorListener = listener; + mHandler = handler; + mInjector = injector; + } + + void restart() { + if (mRegisteredLightSensor == mLightSensor) { + return; + } + if (mRegisteredLightSensor != null) { + stop(); + } + if (mLightSensor == null) { + return; + } + + mSensorManager.registerListener(mLightSensorEventListener, + mLightSensor, mLightSensorRate * 1000, mHandler); + mRegisteredLightSensor = mLightSensor; + + if (DEBUG) { + Slog.d(TAG, "restart"); + } + } + + void stop() { + if (mRegisteredLightSensor == null) { + return; + } + mSensorManager.unregisterListener(mLightSensorEventListener); + mRegisteredLightSensor = null; + mAmbientFilter.clear(); + mLightSensorListener.onAmbientLuxChange(INVALID_LUX); + if (DEBUG) { + Slog.d(TAG, "stop"); + } + } + + void configure(SensorData sensorData, int displayId) { + final int fallbackType = displayId == Display.DEFAULT_DISPLAY + ? Sensor.TYPE_LIGHT : SensorUtils.NO_FALLBACK; + mLightSensor = mInjector.getLightSensor(mSensorManager, sensorData, fallbackType); + } + + void dump(PrintWriter writer) { + writer.println("LightSensorController"); + writer.println(" mLightSensor=" + mLightSensor); + writer.println(" mRegisteredLightSensor=" + mRegisteredLightSensor); + } + + static class Injector { + @Nullable + Sensor getLightSensor(SensorManager sensorManager, SensorData sensorData, + int fallbackType) { + return SensorUtils.findSensor(sensorManager, sensorData, fallbackType); + } + + AmbientFilter getAmbientFilter(Resources resources) { + return AmbientFilterFactory.createBrightnessFilter(TAG, resources); + } + + int getLightSensorRate(Resources resources) { + return resources.getInteger(R.integer.config_autoBrightnessLightSensorRate); + } + + // should be consistent with SensorEvent.timestamp + long getTime() { + return SystemClock.elapsedRealtime(); + } + } + + interface LightSensorListener { + void onAmbientLuxChange(float ambientLux); + } +} diff --git a/services/core/java/com/android/server/display/color/ColorDisplayService.java b/services/core/java/com/android/server/display/color/ColorDisplayService.java index 3883604b7134..d23e76f4eb51 100644 --- a/services/core/java/com/android/server/display/color/ColorDisplayService.java +++ b/services/core/java/com/android/server/display/color/ColorDisplayService.java @@ -74,6 +74,7 @@ import android.view.animation.AnimationUtils; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.annotations.WeaklyReferencedCallback; import com.android.internal.util.DumpUtils; import com.android.server.DisplayThread; import com.android.server.LocalServices; @@ -1730,6 +1731,7 @@ public final class ColorDisplayService extends SystemService { /** * Interface for applying transforms to a given AppWindow. */ + @WeaklyReferencedCallback public interface ColorTransformController { /** diff --git a/services/core/java/com/android/server/hdmi/DelayedMessageBuffer.java b/services/core/java/com/android/server/hdmi/DelayedMessageBuffer.java index 46b4f48165f9..44907457f649 100644 --- a/services/core/java/com/android/server/hdmi/DelayedMessageBuffer.java +++ b/services/core/java/com/android/server/hdmi/DelayedMessageBuffer.java @@ -17,8 +17,10 @@ package com.android.server.hdmi; import android.hardware.hdmi.HdmiDeviceInfo; + import java.util.ArrayList; import java.util.Iterator; +import java.util.List; /** * Buffer storage to keep incoming messages for later processing. Used to @@ -83,6 +85,16 @@ final class DelayedMessageBuffer { return false; } + List<HdmiCecMessage> getBufferedMessagesWithOpcode(int opcode) { + List<HdmiCecMessage> messages = new ArrayList<>(); + for (HdmiCecMessage message : mBuffer) { + if (message.getOpcode() == opcode) { + messages.add(message); + } + } + return messages; + } + void processAllMessages() { // Use the copied buffer. ArrayList<HdmiCecMessage> copiedBuffer = new ArrayList<>(mBuffer); diff --git a/services/core/java/com/android/server/hdmi/HdmiCecController.java b/services/core/java/com/android/server/hdmi/HdmiCecController.java index cd2c0378446e..339a062c1a80 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecController.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecController.java @@ -1207,9 +1207,11 @@ final class HdmiCecController { @Override public void onValues(int result, short addr) { - if (result == Result.SUCCESS) { - synchronized (mLock) { - mPhysicalAddress = new Short(addr).intValue(); + synchronized (mLock) { + if (result == Result.SUCCESS) { + mPhysicalAddress = Short.toUnsignedInt(addr); + } else { + mPhysicalAddress = INVALID_PHYSICAL_ADDRESS; } } } @@ -1605,9 +1607,11 @@ final class HdmiCecController { @Override public void onValues(int result, short addr) { - if (result == Result.SUCCESS) { - synchronized (mLock) { - mPhysicalAddress = new Short(addr).intValue(); + synchronized (mLock) { + if (result == Result.SUCCESS) { + mPhysicalAddress = Short.toUnsignedInt(addr); + } else { + mPhysicalAddress = INVALID_PHYSICAL_ADDRESS; } } } diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java index 81204ef5d7ed..a8d5696e8c77 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java @@ -927,12 +927,14 @@ abstract class HdmiCecLocalDevice extends HdmiLocalDevice { protected int handleVendorCommandWithId(HdmiCecMessage message) { byte[] params = message.getParams(); int vendorId = HdmiUtils.threeBytesToInt(params); - if (message.getDestination() == Constants.ADDR_BROADCAST - || message.getSource() == Constants.ADDR_UNREGISTERED) { - Slog.v(TAG, "Wrong broadcast vendor command. Ignoring"); - } else if (!mService.invokeVendorCommandListenersOnReceived( + if (!mService.invokeVendorCommandListenersOnReceived( mDeviceType, message.getSource(), message.getDestination(), params, true)) { - return Constants.ABORT_REFUSED; + if (message.getDestination() == Constants.ADDR_BROADCAST + || message.getSource() == Constants.ADDR_UNREGISTERED) { + Slog.v(TAG, "Broadcast vendor command with no listeners. Ignoring"); + } else { + return Constants.ABORT_REFUSED; + } } return Constants.HANDLED; } diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index 275c9309ffc9..2000eb705247 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -205,7 +205,9 @@ public final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { resetSelectRequestBuffer(); launchDeviceDiscovery(); startQueuedActions(); - if (!mDelayedMessageBuffer.isBuffered(Constants.MESSAGE_ACTIVE_SOURCE)) { + List<HdmiCecMessage> bufferedActiveSource = mDelayedMessageBuffer + .getBufferedMessagesWithOpcode(Constants.MESSAGE_ACTIVE_SOURCE); + if (bufferedActiveSource.isEmpty()) { if (hasAction(RequestActiveSourceAction.class)) { Slog.i(TAG, "RequestActiveSourceAction is in progress. Restarting."); removeAction(RequestActiveSourceAction.class); @@ -224,7 +226,32 @@ public final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { } } })); + } else { + addCecDeviceForBufferedActiveSource(bufferedActiveSource.get(0)); + } + } + + // Add a new CEC device with known information from the buffered <Active Source> message. This + // helps TvInputCallback#onInputAdded to be called such that the message can be processed and + // the TV to switch to the new active input. + @ServiceThreadOnly + private void addCecDeviceForBufferedActiveSource(HdmiCecMessage bufferedActiveSource) { + assertRunOnServiceThread(); + if (bufferedActiveSource == null) { + return; } + int source = bufferedActiveSource.getSource(); + int physicalAddress = HdmiUtils.twoBytesToInt(bufferedActiveSource.getParams()); + List<Integer> deviceTypes = HdmiUtils.getTypeFromAddress(source); + HdmiDeviceInfo newDevice = HdmiDeviceInfo.cecDeviceBuilder() + .setLogicalAddress(source) + .setPhysicalAddress(physicalAddress) + .setDisplayName(HdmiUtils.getDefaultDeviceName(source)) + .setDeviceType(deviceTypes.get(0)) + .setVendorId(Constants.VENDOR_ID_UNKNOWN) + .setPortId(mService.getHdmiCecNetwork().physicalAddressToPortId(physicalAddress)) + .build(); + mService.getHdmiCecNetwork().addCecDevice(newDevice); } @ServiceThreadOnly @@ -581,6 +608,12 @@ public final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { @Constants.HandleMessageResult protected int handleReportPhysicalAddress(HdmiCecMessage message) { super.handleReportPhysicalAddress(message); + // Ignore <Report Physical Address> while DeviceDiscoveryAction is in progress to avoid + // starting a NewDeviceAction which might interfere in creating the list of known devices. + if (hasAction(DeviceDiscoveryAction.class)) { + return Constants.HANDLED; + } + int path = HdmiUtils.twoBytesToInt(message.getParams()); int address = message.getSource(); int type = message.getParams()[2]; @@ -1366,6 +1399,7 @@ public final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { protected void disableDevice(boolean initiatedByCec, PendingActionClearedCallback callback) { assertRunOnServiceThread(); mService.unregisterTvInputCallback(mTvInputCallback); + mTvInputs.clear(); // Remove any repeated working actions. // HotplugDetectionAction will be reinstated during the wake up process. // HdmiControlService.onWakeUp() -> initializeLocalDevices() -> diff --git a/services/core/java/com/android/server/hdmi/HdmiCecMessageValidator.java b/services/core/java/com/android/server/hdmi/HdmiCecMessageValidator.java index 3c3bdd5b69f6..310f592ddf5c 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecMessageValidator.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecMessageValidator.java @@ -485,6 +485,7 @@ public class HdmiCecMessageValidator { * @return true if the hour is valid */ private static boolean isValidHour(int value) { + value = bcdToDecimal(value); return isWithinRange(value, 0, 23); } @@ -496,6 +497,7 @@ public class HdmiCecMessageValidator { * @return true if the minute is valid */ private static boolean isValidMinute(int value) { + value = bcdToDecimal(value); return isWithinRange(value, 0, 59); } @@ -507,10 +509,24 @@ public class HdmiCecMessageValidator { * @return true if the duration hours is valid */ private static boolean isValidDurationHours(int value) { + value = bcdToDecimal(value); return isWithinRange(value, 0, 99); } /** + * Convert BCD value to decimal value. + * + * @param value BCD value + * @return decimal value + */ + private static int bcdToDecimal(int value) { + int tens = (value & 0xF0) >> 4; + int ones = (value & 0x0F); + + return tens * 10 + ones; + } + + /** * Check if the given value is a valid recording sequence. A valid value is adheres to range * description defined in CEC 1.4 Specification : Operand Descriptions (Section 17) * @@ -523,8 +539,7 @@ public class HdmiCecMessageValidator { if ((value & 0x80) != 0x00) { return false; } - // Validate than not more than one bit is set - return (Integer.bitCount(value) <= 1); + return true; } /** @@ -769,6 +784,7 @@ public class HdmiCecMessageValidator { * @return true if the UI Broadcast type is valid */ private static boolean isValidUiBroadcastType(int value) { + value = value & 0xFF; return ((value == 0x00) || (value == 0x01) || (value == 0x10) diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index bbe7b2b038c9..8436c809337b 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -1975,7 +1975,6 @@ public class HdmiControlService extends SystemService { void setAudioStatus(boolean mute, int volume) { if (!isTvDeviceEnabled() || !tv().isSystemAudioActivated() - || !tv().isArcEstablished() // Don't update TV volume when SAM is on and ARC is off || getHdmiCecVolumeControl() == HdmiControlManager.VOLUME_CONTROL_DISABLED) { return; diff --git a/services/core/java/com/android/server/hdmi/HdmiEarcController.java b/services/core/java/com/android/server/hdmi/HdmiEarcController.java index 46a8f039584b..1c947e9d626d 100644 --- a/services/core/java/com/android/server/hdmi/HdmiEarcController.java +++ b/services/core/java/com/android/server/hdmi/HdmiEarcController.java @@ -87,8 +87,8 @@ final class HdmiEarcController { } catch (ServiceSpecificException sse) { HdmiLogger.error( "Could not set eARC enabled to " + enabled + ". Error: ", sse.errorCode); - } catch (RemoteException re) { - HdmiLogger.error("Could not set eARC enabled to " + enabled + ":. Exception: ", re); + } catch (RemoteException | NullPointerException e) { + HdmiLogger.error("Could not set eARC enabled to " + enabled + ":. Exception: ", e); } } @@ -96,8 +96,8 @@ final class HdmiEarcController { public boolean nativeIsEarcEnabled() { try { return mEarc.isEArcEnabled(); - } catch (RemoteException re) { - HdmiLogger.error("Could not read if eARC is enabled. Exception: ", re); + } catch (RemoteException | NullPointerException e) { + HdmiLogger.error("Could not read if eARC is enabled. Exception: ", e); return false; } } @@ -107,8 +107,8 @@ final class HdmiEarcController { mEarcCallback = callback; try { mEarc.setCallback(callback); - } catch (RemoteException re) { - HdmiLogger.error("Could not set callback. Exception: ", re); + } catch (RemoteException | NullPointerException e) { + HdmiLogger.error("Could not set callback. Exception: ", e); } } @@ -116,8 +116,8 @@ final class HdmiEarcController { public byte nativeGetState(int portId) { try { return mEarc.getState(portId); - } catch (RemoteException re) { - HdmiLogger.error("Could not get eARC state. Exception: ", re); + } catch (RemoteException | NullPointerException e) { + HdmiLogger.error("Could not get eARC state. Exception: ", e); return -1; } } @@ -126,9 +126,9 @@ final class HdmiEarcController { public byte[] nativeGetLastReportedAudioCapabilities(int portId) { try { return mEarc.getLastReportedAudioCapabilities(portId); - } catch (RemoteException re) { + } catch (RemoteException | NullPointerException e) { HdmiLogger.error( - "Could not read last reported audio capabilities. Exception: ", re); + "Could not read last reported audio capabilities. Exception: ", e); return null; } } diff --git a/services/core/java/com/android/server/hdmi/TEST_MAPPING b/services/core/java/com/android/server/hdmi/TEST_MAPPING index c0fa12131e8e..bacacafb1153 100644 --- a/services/core/java/com/android/server/hdmi/TEST_MAPPING +++ b/services/core/java/com/android/server/hdmi/TEST_MAPPING @@ -1,51 +1,18 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.hdmi" - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_android_server_hdmi_Presubmit" } ], "postsubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.hdmi" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_android_server_hdmi" } ], // Postsubmit tests for TV devices "tv-postsubmit": [ { - "name": "HdmiCecTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "include-filter": "android.hardware.hdmi" - } - ], + "name": "HdmiCecTests_hardware_hdmi", "file_patterns": [ "(/|^)DeviceFeature[^/]*", "(/|^)Hdmi[^/]*" ] diff --git a/services/core/java/com/android/server/input/KeyboardLayoutManager.java b/services/core/java/com/android/server/input/KeyboardLayoutManager.java index 97c32b986d38..49934126ab8c 100644 --- a/services/core/java/com/android/server/input/KeyboardLayoutManager.java +++ b/services/core/java/com/android/server/input/KeyboardLayoutManager.java @@ -255,17 +255,6 @@ class KeyboardLayoutManager implements InputManager.InputDeviceListener { } } - private static boolean isCompatibleLocale(Locale systemLocale, Locale keyboardLocale) { - // Different languages are never compatible - if (!systemLocale.getLanguage().equals(keyboardLocale.getLanguage())) { - return false; - } - // If both the system and the keyboard layout have a country specifier, they must be equal. - return TextUtils.isEmpty(systemLocale.getCountry()) - || TextUtils.isEmpty(keyboardLocale.getCountry()) - || systemLocale.getCountry().equals(keyboardLocale.getCountry()); - } - @MainThread private void updateKeyboardLayouts() { // Scan all input devices state for keyboard layouts that have been uninstalled. @@ -953,21 +942,33 @@ class KeyboardLayoutManager implements InputManager.InputDeviceListener { return; } + List<String> layoutNames = new ArrayList<>(); + for (String layoutDesc : config.getConfiguredLayouts()) { + KeyboardLayout kl = getKeyboardLayout(layoutDesc); + if (kl == null) { + // b/349033234: Weird state with stale keyboard layout configured. + // Possibly due to race condition between KCM providing package being removed and + // corresponding layouts being removed from Datastore and cache. + // {@see updateKeyboardLayouts()} + // + // Ideally notification will be correctly shown after the keyboard layouts are + // configured again with the new package state. + return; + } + layoutNames.add(kl.getLabel()); + } showKeyboardLayoutNotification( r.getString( R.string.keyboard_layout_notification_selected_title, inputDevice.getName()), - createConfiguredNotificationText(mContext, config.getConfiguredLayouts()), + createConfiguredNotificationText(mContext, layoutNames), inputDevice); } @MainThread private String createConfiguredNotificationText(@NonNull Context context, - @NonNull Set<String> selectedLayouts) { + @NonNull List<String> layoutNames) { final Resources r = context.getResources(); - List<String> layoutNames = new ArrayList<>(); - selectedLayouts.forEach( - (layoutDesc) -> layoutNames.add(getKeyboardLayout(layoutDesc).getLabel())); Collections.sort(layoutNames); switch (layoutNames.size()) { case 1: diff --git a/services/core/java/com/android/server/input/OWNERS b/services/core/java/com/android/server/input/OWNERS index 4c20c4dc9d35..e2834ec246b6 100644 --- a/services/core/java/com/android/server/input/OWNERS +++ b/services/core/java/com/android/server/input/OWNERS @@ -1 +1,2 @@ +# Bug component: 136048 include /INPUT_OWNERS diff --git a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java index 183b4b520a52..0f8060bba1ab 100644 --- a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +++ b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java @@ -3951,7 +3951,7 @@ public final class InputMethodManagerService implements IInputMethodManagerImpl. } final var statsToken = createStatsTokenForFocusedClient(isShow, imeVisRes.getReason()); mVisibilityApplier.applyImeVisibility(mImeBindingState.mFocusedWindow, statsToken, - imeVisRes.getState(), imeVisRes.getReason()); + imeVisRes.getState(), imeVisRes.getReason(), bindingController.mUserId); if (imeVisRes.getReason() == SoftInputShowHideReason.HIDE_UNSPECIFIED_WINDOW) { // If focused display changed, we should unbind current method // to make app window in previous display relayout after Ime @@ -4837,7 +4837,7 @@ public final class InputMethodManagerService implements IInputMethodManagerImpl. @NonNull ImeVisibilityResult result) { synchronized (ImfLock.class) { mVisibilityApplier.applyImeVisibility(windowToken, statsToken, result.getState(), - result.getReason()); + result.getReason(), mCurrentUserId); } } @@ -5121,7 +5121,8 @@ public final class InputMethodManagerService implements IInputMethodManagerImpl. if (imeVisRes != null) { // Pass in a null statsToken as the IME snapshot is not tracked by ImeTracker. mVisibilityApplier.applyImeVisibility(mImeBindingState.mFocusedWindow, - null /* statsToken */, imeVisRes.getState(), imeVisRes.getReason()); + null /* statsToken */, imeVisRes.getState(), imeVisRes.getReason(), + mCurrentUserId); } // Eligible IME processes use new "setInteractive" protocol. mCurClient.mClient.setInteractive(mIsInteractive, mInFullscreenMode); diff --git a/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java b/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java index 5514ec701c15..bb4ae96da53b 100644 --- a/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java +++ b/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java @@ -17,122 +17,63 @@ package com.android.server.integrity; import static android.content.Intent.ACTION_PACKAGE_NEEDS_INTEGRITY_VERIFICATION; -import static android.content.Intent.EXTRA_LONG_VERSION_CODE; -import static android.content.Intent.EXTRA_ORIGINATING_UID; -import static android.content.Intent.EXTRA_PACKAGE_NAME; import static android.content.integrity.AppIntegrityManager.EXTRA_STATUS; import static android.content.integrity.AppIntegrityManager.STATUS_FAILURE; import static android.content.integrity.AppIntegrityManager.STATUS_SUCCESS; -import static android.content.integrity.InstallerAllowedByManifestFormula.INSTALLER_CERTIFICATE_NOT_EVALUATED; import static android.content.integrity.IntegrityUtils.getHexDigest; import static android.content.pm.PackageManager.EXTRA_VERIFICATION_ID; import android.annotation.BinderThread; -import android.annotation.NonNull; -import android.annotation.Nullable; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.IntentSender; -import android.content.integrity.AppInstallMetadata; import android.content.integrity.IAppIntegrityManager; import android.content.integrity.Rule; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManagerInternal; import android.content.pm.ParceledListSlice; -import android.content.pm.Signature; -import android.content.pm.SigningDetails; -import android.content.pm.parsing.result.ParseResult; -import android.content.pm.parsing.result.ParseTypeImpl; import android.net.Uri; import android.os.Binder; -import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.provider.Settings; import android.util.Pair; import android.util.Slog; -import android.util.apk.SourceStampVerificationResult; -import android.util.apk.SourceStampVerifier; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.pm.parsing.PackageParser2; -import com.android.internal.pm.pkg.parsing.ParsingPackageUtils; -import com.android.internal.util.ArrayUtils; -import com.android.internal.util.FrameworkStatsLog; import com.android.server.LocalServices; -import com.android.server.integrity.engine.RuleEvaluationEngine; -import com.android.server.integrity.model.IntegrityCheckResult; import com.android.server.integrity.model.RuleMetadata; -import com.android.server.pm.PackageManagerServiceUtils; -import com.android.server.pm.parsing.PackageParserUtils; -import java.io.ByteArrayInputStream; import java.io.File; -import java.io.IOException; -import java.io.InputStream; import java.nio.charset.StandardCharsets; import java.nio.file.Files; -import java.nio.file.Path; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; -import java.security.cert.CertificateEncodingException; -import java.security.cert.CertificateException; -import java.security.cert.CertificateFactory; -import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.function.Supplier; -import java.util.stream.Collectors; import java.util.stream.Stream; /** Implementation of {@link AppIntegrityManagerService}. */ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { - /** - * This string will be used as the "installer" for formula evaluation when the app's installer - * cannot be determined. - * - * <p>This may happen for various reasons. e.g., the installing app's package name may not match - * its UID. - */ - private static final String UNKNOWN_INSTALLER = ""; - /** - * This string will be used as the "installer" for formula evaluation when the app is being - * installed via ADB. - */ - public static final String ADB_INSTALLER = "adb"; private static final String TAG = "AppIntegrityManagerServiceImpl"; private static final String PACKAGE_MIME_TYPE = "application/vnd.android.package-archive"; - private static final String BASE_APK_FILE = "base.apk"; - private static final String ALLOWED_INSTALLERS_METADATA_NAME = "allowed-installers"; - private static final String ALLOWED_INSTALLER_DELIMITER = ","; - private static final String INSTALLER_PACKAGE_CERT_DELIMITER = "\\|"; public static final boolean DEBUG_INTEGRITY_COMPONENT = false; - private static final Set<String> PACKAGE_INSTALLER = - new HashSet<>( - Arrays.asList( - "com.google.android.packageinstaller", "com.android.packageinstaller")); - // Access to files inside mRulesDir is protected by mRulesLock; private final Context mContext; private final Handler mHandler; private final PackageManagerInternal mPackageManagerInternal; - private final Supplier<PackageParser2> mParserSupplier; - private final RuleEvaluationEngine mEvaluationEngine; - private final IntegrityFileManager mIntegrityFileManager; /** Create an instance of {@link AppIntegrityManagerServiceImpl}. */ public static AppIntegrityManagerServiceImpl create(Context context) { @@ -142,9 +83,6 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { return new AppIntegrityManagerServiceImpl( context, LocalServices.getService(PackageManagerInternal.class), - PackageParserUtils::forParsingFileWithDefaults, - RuleEvaluationEngine.getRuleEvaluationEngine(), - IntegrityFileManager.getInstance(), handlerThread.getThreadHandler()); } @@ -152,15 +90,9 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { AppIntegrityManagerServiceImpl( Context context, PackageManagerInternal packageManagerInternal, - Supplier<PackageParser2> parserSupplier, - RuleEvaluationEngine evaluationEngine, - IntegrityFileManager integrityFileManager, Handler handler) { mContext = context; mPackageManagerInternal = packageManagerInternal; - mParserSupplier = parserSupplier; - mEvaluationEngine = evaluationEngine; - mIntegrityFileManager = integrityFileManager; mHandler = handler; IntentFilter integrityVerificationFilter = new IntentFilter(); @@ -191,601 +123,45 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { @BinderThread public void updateRuleSet( String version, ParceledListSlice<Rule> rules, IntentSender statusReceiver) { - String ruleProvider = getCallerPackageNameOrThrow(Binder.getCallingUid()); - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.i(TAG, String.format("Calling rule provider name is: %s.", ruleProvider)); + Intent intent = new Intent(); + intent.putExtra(EXTRA_STATUS, STATUS_SUCCESS); + try { + statusReceiver.sendIntent( + mContext, + /* code= */ 0, + intent, + /* onFinished= */ null, + /* handler= */ null); + } catch (Exception e) { + Slog.e(TAG, "Error sending status feedback.", e); } - - mHandler.post( - () -> { - boolean success = true; - try { - mIntegrityFileManager.writeRules(version, ruleProvider, rules.getList()); - } catch (Exception e) { - Slog.e(TAG, "Error writing rules.", e); - success = false; - } - - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.i( - TAG, - String.format( - "Successfully pushed rule set to version '%s' from '%s'", - version, ruleProvider)); - } - - FrameworkStatsLog.write( - FrameworkStatsLog.INTEGRITY_RULES_PUSHED, - success, - ruleProvider, - version); - - Intent intent = new Intent(); - intent.putExtra(EXTRA_STATUS, success ? STATUS_SUCCESS : STATUS_FAILURE); - try { - statusReceiver.sendIntent( - mContext, - /* code= */ 0, - intent, - /* onFinished= */ null, - /* handler= */ null); - } catch (Exception e) { - Slog.e(TAG, "Error sending status feedback.", e); - } - }); } @Override @BinderThread public String getCurrentRuleSetVersion() { - getCallerPackageNameOrThrow(Binder.getCallingUid()); - - RuleMetadata ruleMetadata = mIntegrityFileManager.readMetadata(); - return (ruleMetadata != null && ruleMetadata.getVersion() != null) - ? ruleMetadata.getVersion() - : ""; + return ""; } @Override @BinderThread public String getCurrentRuleSetProvider() { - getCallerPackageNameOrThrow(Binder.getCallingUid()); - - RuleMetadata ruleMetadata = mIntegrityFileManager.readMetadata(); - return (ruleMetadata != null && ruleMetadata.getRuleProvider() != null) - ? ruleMetadata.getRuleProvider() - : ""; + return ""; } @Override public ParceledListSlice<Rule> getCurrentRules() { - List<Rule> rules = Collections.emptyList(); - try { - rules = mIntegrityFileManager.readRules(/* appInstallMetadata= */ null); - } catch (Exception e) { - Slog.e(TAG, "Error getting current rules", e); - } - return new ParceledListSlice<>(rules); + return new ParceledListSlice<>(Collections.emptyList()); } @Override public List<String> getWhitelistedRuleProviders() { - return getAllowedRuleProviderSystemApps(); + return Collections.emptyList(); } private void handleIntegrityVerification(Intent intent) { int verificationId = intent.getIntExtra(EXTRA_VERIFICATION_ID, -1); - - try { - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.d(TAG, "Received integrity verification intent " + intent.toString()); - Slog.d(TAG, "Extras " + intent.getExtras()); - } - - String installerPackageName = getInstallerPackageName(intent); - - // Skip integrity verification if the verifier is doing the install. - if (!integrityCheckIncludesRuleProvider() && isRuleProvider(installerPackageName)) { - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.i(TAG, "Verifier doing the install. Skipping integrity check."); - } - mPackageManagerInternal.setIntegrityVerificationResult( - verificationId, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); - return; - } - - String packageName = intent.getStringExtra(EXTRA_PACKAGE_NAME); - - Pair<SigningDetails, Bundle> packageSigningAndMetadata = - getPackageSigningAndMetadata(intent.getData()); - if (packageSigningAndMetadata == null) { - Slog.w(TAG, "Cannot parse package " + packageName); - // We can't parse the package. - mPackageManagerInternal.setIntegrityVerificationResult( - verificationId, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); - return; - } - - var signingDetails = packageSigningAndMetadata.first; - List<String> appCertificates = getCertificateFingerprint(packageName, signingDetails); - List<String> appCertificateLineage = getCertificateLineage(packageName, signingDetails); - List<String> installerCertificates = - getInstallerCertificateFingerprint(installerPackageName); - - AppInstallMetadata.Builder builder = new AppInstallMetadata.Builder(); - - builder.setPackageName(getPackageNameNormalized(packageName)); - builder.setAppCertificates(appCertificates); - builder.setAppCertificateLineage(appCertificateLineage); - builder.setVersionCode(intent.getLongExtra(EXTRA_LONG_VERSION_CODE, -1)); - builder.setInstallerName(getPackageNameNormalized(installerPackageName)); - builder.setInstallerCertificates(installerCertificates); - builder.setIsPreInstalled(isSystemApp(packageName)); - - Map<String, String> allowedInstallers = - getAllowedInstallers(packageSigningAndMetadata.second); - builder.setAllowedInstallersAndCert(allowedInstallers); - extractSourceStamp(intent.getData(), builder); - - AppInstallMetadata appInstallMetadata = builder.build(); - - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.i( - TAG, - "To be verified: " - + appInstallMetadata - + " installers " - + allowedInstallers); - } - IntegrityCheckResult result = mEvaluationEngine.evaluate(appInstallMetadata); - if (!result.getMatchedRules().isEmpty() || DEBUG_INTEGRITY_COMPONENT) { - Slog.i( - TAG, - String.format( - "Integrity check of %s result: %s due to %s", - packageName, result.getEffect(), result.getMatchedRules())); - } - - FrameworkStatsLog.write( - FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED, - packageName, - appCertificates.toString(), - appInstallMetadata.getVersionCode(), - installerPackageName, - result.getLoggingResponse(), - result.isCausedByAppCertRule(), - result.isCausedByInstallerRule()); - mPackageManagerInternal.setIntegrityVerificationResult( - verificationId, - result.getEffect() == IntegrityCheckResult.Effect.ALLOW - ? PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW - : PackageManagerInternal.INTEGRITY_VERIFICATION_REJECT); - } catch (IllegalArgumentException e) { - // This exception indicates something is wrong with the input passed by package manager. - // e.g., someone trying to trick the system. We block installs in this case. - Slog.e(TAG, "Invalid input to integrity verification", e); - mPackageManagerInternal.setIntegrityVerificationResult( - verificationId, PackageManagerInternal.INTEGRITY_VERIFICATION_REJECT); - } catch (Exception e) { - // Other exceptions indicate an error within the integrity component implementation and - // we allow them. - Slog.e(TAG, "Error handling integrity verification", e); - mPackageManagerInternal.setIntegrityVerificationResult( - verificationId, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); - } - } - - /** - * Verify the UID and return the installer package name. - * - * @return the package name of the installer, or null if it cannot be determined or it is - * installed via adb. - */ - @Nullable - private String getInstallerPackageName(Intent intent) { - String installer = - intent.getStringExtra(PackageManager.EXTRA_VERIFICATION_INSTALLER_PACKAGE); - if (PackageManagerServiceUtils.isInstalledByAdb(installer)) { - return ADB_INSTALLER; - } - int installerUid = intent.getIntExtra(PackageManager.EXTRA_VERIFICATION_INSTALLER_UID, -1); - if (installerUid < 0) { - Slog.e( - TAG, - "Installer cannot be determined: installer: " - + installer - + " installer UID: " - + installerUid); - return UNKNOWN_INSTALLER; - } - - // Verify that the installer UID actually contains the package. Note that comparing UIDs - // is not safe since context's uid can change in different settings; e.g. Android Auto. - if (!getPackageListForUid(installerUid).contains(installer)) { - return UNKNOWN_INSTALLER; - } - - // At this time we can trust "installer". - - // A common way for apps to install packages is to send an intent to PackageInstaller. In - // that case, the installer will always show up as PackageInstaller which is not what we - // want. - if (PACKAGE_INSTALLER.contains(installer)) { - int originatingUid = intent.getIntExtra(EXTRA_ORIGINATING_UID, -1); - if (originatingUid < 0) { - Slog.e(TAG, "Installer is package installer but originating UID not found."); - return UNKNOWN_INSTALLER; - } - List<String> installerPackages = getPackageListForUid(originatingUid); - if (installerPackages.isEmpty()) { - Slog.e(TAG, "No package found associated with originating UID " + originatingUid); - return UNKNOWN_INSTALLER; - } - // In the case of multiple package sharing a UID, we just return the first one. - return installerPackages.get(0); - } - - return installer; - } - - /** We will use the SHA256 digest of a package name if it is more than 32 bytes long. */ - private String getPackageNameNormalized(String packageName) { - if (packageName.length() <= 32) { - return packageName; - } - - try { - MessageDigest messageDigest = MessageDigest.getInstance("SHA-256"); - byte[] hashBytes = messageDigest.digest(packageName.getBytes(StandardCharsets.UTF_8)); - return getHexDigest(hashBytes); - } catch (NoSuchAlgorithmException e) { - throw new RuntimeException("SHA-256 algorithm not found", e); - } - } - - private List<String> getInstallerCertificateFingerprint(String installer) { - if (installer.equals(ADB_INSTALLER) || installer.equals(UNKNOWN_INSTALLER)) { - return Collections.emptyList(); - } - var installerPkg = mPackageManagerInternal.getPackage(installer); - if (installerPkg == null) { - Slog.w(TAG, "Installer package " + installer + " not found."); - return Collections.emptyList(); - } - return getCertificateFingerprint(installerPkg.getPackageName(), - installerPkg.getSigningDetails()); - } - - private List<String> getCertificateFingerprint(@NonNull String packageName, - @NonNull SigningDetails signingDetails) { - ArrayList<String> certificateFingerprints = new ArrayList(); - for (Signature signature : getSignatures(packageName, signingDetails)) { - certificateFingerprints.add(getFingerprint(signature)); - } - return certificateFingerprints; - } - - private List<String> getCertificateLineage(@NonNull String packageName, - @NonNull SigningDetails signingDetails) { - ArrayList<String> certificateLineage = new ArrayList(); - for (Signature signature : getSignatureLineage(packageName, signingDetails)) { - certificateLineage.add(getFingerprint(signature)); - } - return certificateLineage; - } - - /** Get the allowed installers and their associated certificate hashes from <meta-data> tag. */ - private Map<String, String> getAllowedInstallers(@Nullable Bundle metaData) { - Map<String, String> packageCertMap = new HashMap<>(); - if (metaData != null) { - String allowedInstallers = metaData.getString(ALLOWED_INSTALLERS_METADATA_NAME); - if (allowedInstallers != null) { - // parse the metadata for certs. - String[] installerCertPairs = allowedInstallers.split(ALLOWED_INSTALLER_DELIMITER); - for (String packageCertPair : installerCertPairs) { - String[] packageAndCert = - packageCertPair.split(INSTALLER_PACKAGE_CERT_DELIMITER); - if (packageAndCert.length == 2) { - String packageName = getPackageNameNormalized(packageAndCert[0]); - String cert = packageAndCert[1]; - packageCertMap.put(packageName, cert); - } else if (packageAndCert.length == 1) { - packageCertMap.put( - getPackageNameNormalized(packageAndCert[0]), - INSTALLER_CERTIFICATE_NOT_EVALUATED); - } - } - } - } - - return packageCertMap; - } - - /** Extract the source stamp embedded in the APK, if present. */ - private void extractSourceStamp(Uri dataUri, AppInstallMetadata.Builder appInstallMetadata) { - File installationPath = getInstallationPath(dataUri); - if (installationPath == null) { - throw new IllegalArgumentException("Installation path is null, package not found"); - } - - SourceStampVerificationResult sourceStampVerificationResult; - if (installationPath.isDirectory()) { - try (Stream<Path> filesList = Files.list(installationPath.toPath())) { - List<String> apkFiles = - filesList - .map(path -> path.toAbsolutePath().toString()) - .filter(str -> str.endsWith(".apk")) - .collect(Collectors.toList()); - sourceStampVerificationResult = SourceStampVerifier.verify(apkFiles); - } catch (IOException e) { - throw new IllegalArgumentException("Could not read APK directory"); - } - } else { - sourceStampVerificationResult = - SourceStampVerifier.verify(installationPath.getAbsolutePath()); - } - - appInstallMetadata.setIsStampPresent(sourceStampVerificationResult.isPresent()); - appInstallMetadata.setIsStampVerified(sourceStampVerificationResult.isVerified()); - // A verified stamp is set to be trusted. - appInstallMetadata.setIsStampTrusted(sourceStampVerificationResult.isVerified()); - if (sourceStampVerificationResult.isVerified()) { - X509Certificate sourceStampCertificate = - (X509Certificate) sourceStampVerificationResult.getCertificate(); - // Sets source stamp certificate digest. - try { - MessageDigest digest = MessageDigest.getInstance("SHA-256"); - byte[] certificateDigest = digest.digest(sourceStampCertificate.getEncoded()); - appInstallMetadata.setStampCertificateHash(getHexDigest(certificateDigest)); - } catch (NoSuchAlgorithmException | CertificateEncodingException e) { - throw new IllegalArgumentException( - "Error computing source stamp certificate digest", e); - } - } - } - - private static Signature[] getSignatures(@NonNull String packageName, - @NonNull SigningDetails signingDetails) { - Signature[] signatures = signingDetails.getSignatures(); - if (signatures == null || signatures.length < 1) { - throw new IllegalArgumentException("Package signature not found in " + packageName); - } - - // We are only interested in evaluating the active signatures. - return signatures; - } - - private static Signature[] getSignatureLineage(@NonNull String packageName, - @NonNull SigningDetails signingDetails) { - // Obtain the active signatures of the package. - Signature[] signatureLineage = getSignatures(packageName, signingDetails); - - var pastSignatures = signingDetails.getPastSigningCertificates(); - // Obtain the past signatures of the package. - if (signatureLineage.length == 1 && !ArrayUtils.isEmpty(pastSignatures)) { - // Merge the signatures and return. - Signature[] allSignatures = - new Signature[signatureLineage.length + pastSignatures.length]; - int i; - for (i = 0; i < signatureLineage.length; i++) { - allSignatures[i] = signatureLineage[i]; - } - for (int j = 0; j < pastSignatures.length; j++) { - allSignatures[i] = pastSignatures[j]; - i++; - } - signatureLineage = allSignatures; - } - - return signatureLineage; - } - - private static String getFingerprint(Signature cert) { - InputStream input = new ByteArrayInputStream(cert.toByteArray()); - - CertificateFactory factory; - try { - factory = CertificateFactory.getInstance("X509"); - } catch (CertificateException e) { - throw new RuntimeException("Error getting CertificateFactory", e); - } - X509Certificate certificate = null; - try { - if (factory != null) { - certificate = (X509Certificate) factory.generateCertificate(input); - } - } catch (CertificateException e) { - throw new RuntimeException("Error getting X509Certificate", e); - } - - if (certificate == null) { - throw new RuntimeException("X509 Certificate not found"); - } - - try { - MessageDigest digest = MessageDigest.getInstance("SHA-256"); - byte[] publicKey = digest.digest(certificate.getEncoded()); - return getHexDigest(publicKey); - } catch (NoSuchAlgorithmException | CertificateEncodingException e) { - throw new IllegalArgumentException("Error error computing fingerprint", e); - } - } - - @Nullable - private Pair<SigningDetails, Bundle> getPackageSigningAndMetadata(Uri dataUri) { - File installationPath = getInstallationPath(dataUri); - if (installationPath == null) { - throw new IllegalArgumentException("Installation path is null, package not found"); - } - - try (PackageParser2 parser = mParserSupplier.get()) { - var pkg = parser.parsePackage(installationPath, 0, false); - // APK signatures is already verified elsewhere in PackageManager. We do not need to - // verify it again since it could cause a timeout for large APKs. - final ParseTypeImpl input = ParseTypeImpl.forDefaultParsing(); - final ParseResult<SigningDetails> result = ParsingPackageUtils.getSigningDetails( - input, pkg, /* skipVerify= */ true); - if (result.isError()) { - Slog.w(TAG, result.getErrorMessage(), result.getException()); - return null; - } - return Pair.create(result.getResult(), pkg.getMetaData()); - } catch (Exception e) { - Slog.w(TAG, "Exception reading " + dataUri, e); - return null; - } - } - - private PackageInfo getMultiApkInfo(File multiApkDirectory) { - // The base apk will normally be called base.apk - File baseFile = new File(multiApkDirectory, BASE_APK_FILE); - PackageInfo basePackageInfo = - mContext.getPackageManager() - .getPackageArchiveInfo( - baseFile.getAbsolutePath(), - PackageManager.GET_SIGNING_CERTIFICATES - | PackageManager.GET_META_DATA); - - if (basePackageInfo == null) { - for (File apkFile : multiApkDirectory.listFiles()) { - if (apkFile.isDirectory()) { - continue; - } - - // If we didn't find a base.apk, then try to parse each apk until we find the one - // that succeeds. - try { - basePackageInfo = - mContext.getPackageManager() - .getPackageArchiveInfo( - apkFile.getAbsolutePath(), - PackageManager.GET_SIGNING_CERTIFICATES - | PackageManager.GET_META_DATA); - } catch (Exception e) { - // Some of the splits may not contain a valid android manifest. It is an - // expected exception. We still log it nonetheless but we should keep looking. - Slog.w(TAG, "Exception reading " + apkFile, e); - } - if (basePackageInfo != null) { - Slog.i(TAG, "Found package info from " + apkFile); - break; - } - } - } - - if (basePackageInfo == null) { - throw new IllegalArgumentException( - "Base package info cannot be found from installation directory"); - } - - return basePackageInfo; - } - - private File getInstallationPath(Uri dataUri) { - if (dataUri == null) { - throw new IllegalArgumentException("Null data uri"); - } - - String scheme = dataUri.getScheme(); - if (!"file".equalsIgnoreCase(scheme)) { - throw new IllegalArgumentException("Unsupported scheme for " + dataUri); - } - - File installationPath = new File(dataUri.getPath()); - if (!installationPath.exists()) { - throw new IllegalArgumentException("Cannot find file for " + dataUri); - } - if (!installationPath.canRead()) { - throw new IllegalArgumentException("Cannot read file for " + dataUri); - } - return installationPath; - } - - private String getCallerPackageNameOrThrow(int callingUid) { - String callerPackageName = getCallingRulePusherPackageName(callingUid); - if (callerPackageName == null) { - throw new SecurityException( - "Only system packages specified in config_integrityRuleProviderPackages are " - + "allowed to call this method."); - } - return callerPackageName; - } - - private String getCallingRulePusherPackageName(int callingUid) { - // Obtain the system apps that are allowlisted in config_integrityRuleProviderPackages. - List<String> allowedRuleProviders = getAllowedRuleProviderSystemApps(); - if (DEBUG_INTEGRITY_COMPONENT) { - Slog.i( - TAG, - String.format( - "Rule provider system app list contains: %s", allowedRuleProviders)); - } - - // Identify the package names in the caller list. - List<String> callingPackageNames = getPackageListForUid(callingUid); - - // Find the intersection between the allowed and calling packages. Ideally, we will have - // at most one package name here. But if we have more, it is fine. - List<String> allowedCallingPackages = new ArrayList<>(); - for (String packageName : callingPackageNames) { - if (allowedRuleProviders.contains(packageName)) { - allowedCallingPackages.add(packageName); - } - } - - return allowedCallingPackages.isEmpty() ? null : allowedCallingPackages.get(0); - } - - private boolean isRuleProvider(String installerPackageName) { - for (String ruleProvider : getAllowedRuleProviderSystemApps()) { - if (ruleProvider.matches(installerPackageName)) { - return true; - } - } - return false; - } - - private List<String> getAllowedRuleProviderSystemApps() { - List<String> integrityRuleProviders = - Arrays.asList( - mContext.getResources() - .getStringArray(R.array.config_integrityRuleProviderPackages)); - - // Filter out the rule provider packages that are not system apps. - List<String> systemAppRuleProviders = new ArrayList<>(); - for (String ruleProvider : integrityRuleProviders) { - if (isSystemApp(ruleProvider)) { - systemAppRuleProviders.add(ruleProvider); - } - } - return systemAppRuleProviders; - } - - private boolean isSystemApp(String packageName) { - try { - PackageInfo existingPackageInfo = - mContext.getPackageManager().getPackageInfo(packageName, /* flags= */ 0); - return existingPackageInfo.applicationInfo != null - && existingPackageInfo.applicationInfo.isSystemApp(); - } catch (PackageManager.NameNotFoundException e) { - return false; - } - } - - private boolean integrityCheckIncludesRuleProvider() { - return Settings.Global.getInt( - mContext.getContentResolver(), - Settings.Global.INTEGRITY_CHECK_INCLUDES_RULE_PROVIDER, - 0) - == 1; - } - - private List<String> getPackageListForUid(int uid) { - try { - return Arrays.asList(mContext.getPackageManager().getPackagesForUid(uid)); - } catch (NullPointerException e) { - Slog.w(TAG, String.format("No packages were found for uid: %d", uid)); - return List.of(); - } + mPackageManagerInternal.setIntegrityVerificationResult( + verificationId, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); } } diff --git a/services/core/java/com/android/server/integrity/IntegrityFileManager.java b/services/core/java/com/android/server/integrity/IntegrityFileManager.java deleted file mode 100644 index 7f0231e72373..000000000000 --- a/services/core/java/com/android/server/integrity/IntegrityFileManager.java +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity; - -import android.annotation.Nullable; -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.Rule; -import android.os.Environment; -import android.util.Slog; - -import com.android.internal.annotations.VisibleForTesting; -import com.android.server.integrity.model.RuleMetadata; -import com.android.server.integrity.parser.RandomAccessObject; -import com.android.server.integrity.parser.RuleBinaryParser; -import com.android.server.integrity.parser.RuleIndexRange; -import com.android.server.integrity.parser.RuleIndexingController; -import com.android.server.integrity.parser.RuleMetadataParser; -import com.android.server.integrity.parser.RuleParseException; -import com.android.server.integrity.parser.RuleParser; -import com.android.server.integrity.serializer.RuleBinarySerializer; -import com.android.server.integrity.serializer.RuleMetadataSerializer; -import com.android.server.integrity.serializer.RuleSerializeException; -import com.android.server.integrity.serializer.RuleSerializer; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.Collections; -import java.util.List; -import java.util.Optional; - -/** Abstraction over the underlying storage of rules and other metadata. */ -public class IntegrityFileManager { - private static final String TAG = "IntegrityFileManager"; - - private static final String METADATA_FILE = "metadata"; - private static final String RULES_FILE = "rules"; - private static final String INDEXING_FILE = "indexing"; - private static final Object RULES_LOCK = new Object(); - - private static IntegrityFileManager sInstance = null; - - private final RuleParser mRuleParser; - private final RuleSerializer mRuleSerializer; - - private final File mDataDir; - // mRulesDir contains data of the actual rules currently stored. - private final File mRulesDir; - // mStagingDir is used to store the temporary rules / metadata during updating, since we want to - // update rules atomically. - private final File mStagingDir; - - @Nullable private RuleMetadata mRuleMetadataCache; - @Nullable private RuleIndexingController mRuleIndexingController; - - /** Get the singleton instance of this class. */ - public static synchronized IntegrityFileManager getInstance() { - if (sInstance == null) { - sInstance = new IntegrityFileManager(); - } - return sInstance; - } - - private IntegrityFileManager() { - this( - new RuleBinaryParser(), - new RuleBinarySerializer(), - Environment.getDataSystemDirectory()); - } - - @VisibleForTesting - IntegrityFileManager(RuleParser ruleParser, RuleSerializer ruleSerializer, File dataDir) { - mRuleParser = ruleParser; - mRuleSerializer = ruleSerializer; - mDataDir = dataDir; - - mRulesDir = new File(dataDir, "integrity_rules"); - mStagingDir = new File(dataDir, "integrity_staging"); - - if (!mStagingDir.mkdirs() || !mRulesDir.mkdirs()) { - Slog.e(TAG, "Error creating staging and rules directory"); - // TODO: maybe throw an exception? - } - - File metadataFile = new File(mRulesDir, METADATA_FILE); - if (metadataFile.exists()) { - try (FileInputStream inputStream = new FileInputStream(metadataFile)) { - mRuleMetadataCache = RuleMetadataParser.parse(inputStream); - } catch (Exception e) { - Slog.e(TAG, "Error reading metadata file.", e); - } - } - - updateRuleIndexingController(); - } - - /** - * Returns if the rules have been initialized. - * - * <p>Used to fail early if there are no rules (so we don't need to parse the apk at all). - */ - public boolean initialized() { - return new File(mRulesDir, RULES_FILE).exists() - && new File(mRulesDir, METADATA_FILE).exists() - && new File(mRulesDir, INDEXING_FILE).exists(); - } - - /** Write rules to persistent storage. */ - public void writeRules(String version, String ruleProvider, List<Rule> rules) - throws IOException, RuleSerializeException { - try { - writeMetadata(mStagingDir, ruleProvider, version); - } catch (IOException e) { - Slog.e(TAG, "Error writing metadata.", e); - // We don't consider this fatal so we continue execution. - } - - try (FileOutputStream ruleFileOutputStream = - new FileOutputStream(new File(mStagingDir, RULES_FILE)); - FileOutputStream indexingFileOutputStream = - new FileOutputStream(new File(mStagingDir, INDEXING_FILE))) { - mRuleSerializer.serialize( - rules, Optional.empty(), ruleFileOutputStream, indexingFileOutputStream); - } - - switchStagingRulesDir(); - - // Update object holding the indexing information. - updateRuleIndexingController(); - } - - /** - * Read rules from persistent storage. - * - * @param appInstallMetadata information about the install used to select rules to read. If - * null, all rules will be read. - */ - public List<Rule> readRules(@Nullable AppInstallMetadata appInstallMetadata) - throws IOException, RuleParseException { - synchronized (RULES_LOCK) { - // Try to identify indexes from the index file. - List<RuleIndexRange> ruleReadingIndexes = Collections.emptyList(); - if (appInstallMetadata != null) { - try { - ruleReadingIndexes = - mRuleIndexingController.identifyRulesToEvaluate(appInstallMetadata); - } catch (Exception e) { - Slog.w(TAG, "Error identifying the rule indexes. Trying unindexed.", e); - } - } - - // Read the rules based on the index information when available. - File ruleFile = new File(mRulesDir, RULES_FILE); - List<Rule> rules = - mRuleParser.parse(RandomAccessObject.ofFile(ruleFile), ruleReadingIndexes); - return rules; - } - } - - /** Read the metadata of the current rules in storage. */ - @Nullable - public RuleMetadata readMetadata() { - return mRuleMetadataCache; - } - - private void switchStagingRulesDir() throws IOException { - synchronized (RULES_LOCK) { - File tmpDir = new File(mDataDir, "temp"); - - if (!(mRulesDir.renameTo(tmpDir) - && mStagingDir.renameTo(mRulesDir) - && tmpDir.renameTo(mStagingDir))) { - throw new IOException("Error switching staging/rules directory"); - } - - for (File file : mStagingDir.listFiles()) { - file.delete(); - } - } - } - - private void updateRuleIndexingController() { - File ruleIndexingFile = new File(mRulesDir, INDEXING_FILE); - if (ruleIndexingFile.exists()) { - try (FileInputStream inputStream = new FileInputStream(ruleIndexingFile)) { - mRuleIndexingController = new RuleIndexingController(inputStream); - } catch (Exception e) { - Slog.e(TAG, "Error parsing the rule indexing file.", e); - } - } - } - - private void writeMetadata(File directory, String ruleProvider, String version) - throws IOException { - mRuleMetadataCache = new RuleMetadata(ruleProvider, version); - - File metadataFile = new File(directory, METADATA_FILE); - - try (FileOutputStream outputStream = new FileOutputStream(metadataFile)) { - RuleMetadataSerializer.serialize(mRuleMetadataCache, outputStream); - } - } -} diff --git a/services/core/java/com/android/server/integrity/TEST_MAPPING b/services/core/java/com/android/server/integrity/TEST_MAPPING index be8d2e15a203..5c05fceed92e 100644 --- a/services/core/java/com/android/server/integrity/TEST_MAPPING +++ b/services/core/java/com/android/server/integrity/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.integrity." - } - ] + "name": "FrameworksServicesTests_android_server_integrity" }, { "name": "GtsSecurityHostTestCases", diff --git a/services/core/java/com/android/server/integrity/engine/RuleEvaluationEngine.java b/services/core/java/com/android/server/integrity/engine/RuleEvaluationEngine.java deleted file mode 100644 index 61da45ddbfef..000000000000 --- a/services/core/java/com/android/server/integrity/engine/RuleEvaluationEngine.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.engine; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.Rule; -import android.util.Slog; - -import com.android.internal.annotations.VisibleForTesting; -import com.android.server.integrity.IntegrityFileManager; -import com.android.server.integrity.model.IntegrityCheckResult; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -/** - * The engine used to evaluate rules against app installs. - * - * <p>Every app install is evaluated against rules (pushed by the verifier) by the evaluation engine - * to allow/block that install. - */ -public class RuleEvaluationEngine { - private static final String TAG = "RuleEvaluation"; - - // The engine for loading rules, retrieving metadata for app installs, and evaluating app - // installs against rules. - private static RuleEvaluationEngine sRuleEvaluationEngine; - - private final IntegrityFileManager mIntegrityFileManager; - - @VisibleForTesting - RuleEvaluationEngine(IntegrityFileManager integrityFileManager) { - mIntegrityFileManager = integrityFileManager; - } - - /** Provide a singleton instance of the rule evaluation engine. */ - public static synchronized RuleEvaluationEngine getRuleEvaluationEngine() { - if (sRuleEvaluationEngine == null) { - return new RuleEvaluationEngine(IntegrityFileManager.getInstance()); - } - return sRuleEvaluationEngine; - } - - /** - * Load, and match the list of rules against an app install metadata. - * - * @param appInstallMetadata Metadata of the app to be installed, and to evaluate the rules - * against. - * @return result of the integrity check - */ - public IntegrityCheckResult evaluate( - AppInstallMetadata appInstallMetadata) { - List<Rule> rules = loadRules(appInstallMetadata); - return RuleEvaluator.evaluateRules(rules, appInstallMetadata); - } - - private List<Rule> loadRules(AppInstallMetadata appInstallMetadata) { - if (!mIntegrityFileManager.initialized()) { - Slog.w(TAG, "Integrity rule files are not available."); - return Collections.emptyList(); - } - - try { - return mIntegrityFileManager.readRules(appInstallMetadata); - } catch (Exception e) { - Slog.e(TAG, "Error loading rules.", e); - return new ArrayList<>(); - } - } -} diff --git a/services/core/java/com/android/server/integrity/engine/RuleEvaluator.java b/services/core/java/com/android/server/integrity/engine/RuleEvaluator.java deleted file mode 100644 index 9d9430441e07..000000000000 --- a/services/core/java/com/android/server/integrity/engine/RuleEvaluator.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.engine; - -import static android.content.integrity.Rule.DENY; -import static android.content.integrity.Rule.FORCE_ALLOW; - -import android.annotation.NonNull; -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.Rule; - -import com.android.server.integrity.model.IntegrityCheckResult; - -import java.util.List; -import java.util.stream.Collectors; - -/** - * A helper class for evaluating rules against app install metadata to find if there are matching - * rules. - */ -final class RuleEvaluator { - - /** - * Match the list of rules against an app install metadata. - * - * <p>Rules must be in disjunctive normal form (DNF). A rule should contain AND'ed formulas - * only. All rules are OR'ed together by default. - * - * @param rules The list of rules to evaluate. - * @param appInstallMetadata Metadata of the app to be installed, and to evaluate the rules - * against. - * @return result of the integrity check - */ - @NonNull - static IntegrityCheckResult evaluateRules( - List<Rule> rules, AppInstallMetadata appInstallMetadata) { - - // Identify the rules that match the {@code appInstallMetadata}. - List<Rule> matchedRules = - rules.stream() - .filter(rule -> rule.getFormula().matches(appInstallMetadata)) - .collect(Collectors.toList()); - - // Identify the matched power allow rules and terminate early if we have any. - List<Rule> matchedPowerAllowRules = - matchedRules.stream() - .filter(rule -> rule.getEffect() == FORCE_ALLOW) - .collect(Collectors.toList()); - - if (!matchedPowerAllowRules.isEmpty()) { - return IntegrityCheckResult.allow(matchedPowerAllowRules); - } - - // Identify the matched deny rules. - List<Rule> matchedDenyRules = - matchedRules.stream() - .filter(rule -> rule.getEffect() == DENY) - .collect(Collectors.toList()); - - if (!matchedDenyRules.isEmpty()) { - return IntegrityCheckResult.deny(matchedDenyRules); - } - - // When no rules are denied, return default allow result. - return IntegrityCheckResult.allow(); - } -} diff --git a/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java b/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java index 1fa067065e1b..b0647fc46473 100644 --- a/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java +++ b/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java @@ -19,8 +19,6 @@ package com.android.server.integrity.model; import android.annotation.Nullable; import android.content.integrity.Rule; -import com.android.internal.util.FrameworkStatsLog; - import java.util.Collections; import java.util.List; @@ -82,21 +80,6 @@ public final class IntegrityCheckResult { return new IntegrityCheckResult(Effect.DENY, ruleList); } - /** - * Returns the in value of the integrity check result for logging purposes. - */ - public int getLoggingResponse() { - if (getEffect() == Effect.DENY) { - return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED; - } else if (getEffect() == Effect.ALLOW && getMatchedRules().isEmpty()) { - return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED; - } else if (getEffect() == Effect.ALLOW && !getMatchedRules().isEmpty()) { - return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED; - } else { - throw new IllegalStateException("IntegrityCheckResult is not valid."); - } - } - /** Returns true when the {@code mEffect} is caused by an app certificate mismatch. */ public boolean isCausedByAppCertRule() { return mRuleList.stream().anyMatch(rule -> rule.getFormula().isAppCertificateFormula()); diff --git a/services/core/java/com/android/server/integrity/parser/BinaryFileOperations.java b/services/core/java/com/android/server/integrity/parser/BinaryFileOperations.java deleted file mode 100644 index f09e035ecc78..000000000000 --- a/services/core/java/com/android/server/integrity/parser/BinaryFileOperations.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import static com.android.server.integrity.model.ComponentBitSize.IS_HASHED_BITS; -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; - -import android.content.integrity.IntegrityUtils; - -import com.android.server.integrity.model.BitInputStream; - -import java.io.IOException; -import java.nio.ByteBuffer; - -/** - * Helper methods for reading standard data structures from {@link BitInputStream}. - */ -public class BinaryFileOperations { - - /** - * Read an string value with the given size and hash status from a {@code BitInputStream}. - * - * If the value is hashed, get the hex-encoding of the value. Serialized values are in raw form. - * All hashed values are hex-encoded. - */ - public static String getStringValue(BitInputStream bitInputStream) throws IOException { - boolean isHashedValue = bitInputStream.getNext(IS_HASHED_BITS) == 1; - int valueSize = bitInputStream.getNext(VALUE_SIZE_BITS); - return getStringValue(bitInputStream, valueSize, isHashedValue); - } - - /** - * Read an string value with the given size and hash status from a {@code BitInputStream}. - * - * If the value is hashed, get the hex-encoding of the value. Serialized values are in raw form. - * All hashed values are hex-encoded. - */ - public static String getStringValue( - BitInputStream bitInputStream, int valueSize, boolean isHashedValue) - throws IOException { - if (!isHashedValue) { - StringBuilder value = new StringBuilder(); - while (valueSize-- > 0) { - value.append((char) bitInputStream.getNext(/* numOfBits= */ 8)); - } - return value.toString(); - } - ByteBuffer byteBuffer = ByteBuffer.allocate(valueSize); - while (valueSize-- > 0) { - byteBuffer.put((byte) (bitInputStream.getNext(/* numOfBits= */ 8) & 0xFF)); - } - return IntegrityUtils.getHexDigest(byteBuffer.array()); - } - - /** Read an integer value from a {@code BitInputStream}. */ - public static int getIntValue(BitInputStream bitInputStream) throws IOException { - return bitInputStream.getNext(/* numOfBits= */ 32); - } - - /** Read an boolean value from a {@code BitInputStream}. */ - public static boolean getBooleanValue(BitInputStream bitInputStream) throws IOException { - return bitInputStream.getNext(/* numOfBits= */ 1) == 1; - } -} diff --git a/services/core/java/com/android/server/integrity/parser/LimitInputStream.java b/services/core/java/com/android/server/integrity/parser/LimitInputStream.java deleted file mode 100644 index a91bbb7dbae1..000000000000 --- a/services/core/java/com/android/server/integrity/parser/LimitInputStream.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; - -/** An {@link InputStream} that basically truncates another {@link InputStream} */ -public class LimitInputStream extends FilterInputStream { - private int mReadBytes; - private final int mLimit; - - public LimitInputStream(InputStream in, int limit) { - super(in); - if (limit < 0) { - throw new IllegalArgumentException("limit " + limit + " cannot be negative"); - } - mReadBytes = 0; - mLimit = limit; - } - - @Override - public int available() throws IOException { - return Math.min(super.available(), mLimit - mReadBytes); - } - - @Override - public int read() throws IOException { - if (mReadBytes == mLimit) { - return -1; - } - mReadBytes++; - return super.read(); - } - - @Override - public int read(byte[] b) throws IOException { - return read(b, 0, b.length); - } - - @Override - public int read(byte[] b, int off, int len) throws IOException { - if (len <= 0) { - return 0; - } - int available = available(); - if (available <= 0) { - return -1; - } - int result = super.read(b, off, Math.min(len, available)); - mReadBytes += result; - return result; - } - - @Override - public long skip(long n) throws IOException { - if (n <= 0) { - return 0; - } - int available = available(); - if (available <= 0) { - return 0; - } - int bytesToSkip = (int) Math.min(available, n); - long bytesSkipped = super.skip(bytesToSkip); - mReadBytes += (int) bytesSkipped; - return bytesSkipped; - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RandomAccessInputStream.java b/services/core/java/com/android/server/integrity/parser/RandomAccessInputStream.java deleted file mode 100644 index 206e6a1f0197..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RandomAccessInputStream.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import java.io.IOException; -import java.io.InputStream; - -/** A wrapper around {@link RandomAccessObject} to turn it into a {@link InputStream}. */ -public class RandomAccessInputStream extends InputStream { - - private final RandomAccessObject mRandomAccessObject; - - private int mPosition; - - public RandomAccessInputStream(RandomAccessObject object) throws IOException { - mRandomAccessObject = object; - mPosition = 0; - } - - /** Returns the position of the file pointer. */ - public int getPosition() { - return mPosition; - } - - /** See {@link RandomAccessObject#seek(int)} */ - public void seek(int position) throws IOException { - mRandomAccessObject.seek(position); - mPosition = position; - } - - @Override - public int available() throws IOException { - return mRandomAccessObject.length() - mPosition; - } - - @Override - public void close() throws IOException { - mRandomAccessObject.close(); - } - - @Override - public int read() throws IOException { - if (available() <= 0) { - return -1; - } - mPosition++; - return mRandomAccessObject.read(); - } - - @Override - public int read(byte[] b) throws IOException { - return read(b, 0, b.length); - } - - @Override - public int read(byte[] b, int off, int len) throws IOException { - if (len <= 0) { - return 0; - } - int available = available(); - if (available <= 0) { - return -1; - } - int result = mRandomAccessObject.read(b, off, Math.min(len, available)); - mPosition += result; - return result; - } - - @Override - public long skip(long n) throws IOException { - if (n <= 0) { - return 0; - } - int available = available(); - if (available <= 0) { - return 0; - } - int skipAmount = (int) Math.min(available, n); - mPosition += skipAmount; - mRandomAccessObject.seek(mPosition); - return skipAmount; - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RandomAccessObject.java b/services/core/java/com/android/server/integrity/parser/RandomAccessObject.java deleted file mode 100644 index d9b2e38b0062..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RandomAccessObject.java +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import java.io.File; -import java.io.IOException; -import java.io.RandomAccessFile; -import java.nio.ByteBuffer; - -/** An interface for random access objects like RandomAccessFile or byte arrays. */ -public abstract class RandomAccessObject { - - /** See {@link RandomAccessFile#seek(long)}. */ - public abstract void seek(int position) throws IOException; - - /** See {@link RandomAccessFile#read()}. */ - public abstract int read() throws IOException; - - /** See {@link RandomAccessFile#read(byte[], int, int)}. */ - public abstract int read(byte[] bytes, int off, int len) throws IOException; - - /** See {@link RandomAccessFile#close()}. */ - public abstract void close() throws IOException; - - /** See {@link java.io.RandomAccessFile#length()}. */ - public abstract int length(); - - /** Static constructor from a file. */ - public static RandomAccessObject ofFile(File file) throws IOException { - return new RandomAccessFileObject(file); - } - - /** Static constructor from a byte array. */ - public static RandomAccessObject ofBytes(byte[] bytes) { - return new RandomAccessByteArrayObject(bytes); - } - - private static class RandomAccessFileObject extends RandomAccessObject { - private final RandomAccessFile mRandomAccessFile; - // We cache the length since File.length() invokes file IO. - private final int mLength; - - RandomAccessFileObject(File file) throws IOException { - long length = file.length(); - if (length > Integer.MAX_VALUE) { - throw new IOException("Unsupported file size (too big) " + length); - } - - mRandomAccessFile = new RandomAccessFile(file, /* mode= */ "r"); - mLength = (int) length; - } - - @Override - public void seek(int position) throws IOException { - mRandomAccessFile.seek(position); - } - - @Override - public int read() throws IOException { - return mRandomAccessFile.read(); - } - - @Override - public int read(byte[] bytes, int off, int len) throws IOException { - return mRandomAccessFile.read(bytes, off, len); - } - - @Override - public void close() throws IOException { - mRandomAccessFile.close(); - } - - @Override - public int length() { - return mLength; - } - } - - private static class RandomAccessByteArrayObject extends RandomAccessObject { - - private final ByteBuffer mBytes; - - RandomAccessByteArrayObject(byte[] bytes) { - mBytes = ByteBuffer.wrap(bytes); - } - - @Override - public void seek(int position) throws IOException { - mBytes.position(position); - } - - @Override - public int read() throws IOException { - if (!mBytes.hasRemaining()) { - return -1; - } - - return mBytes.get() & 0xFF; - } - - @Override - public int read(byte[] bytes, int off, int len) throws IOException { - int bytesToCopy = Math.min(len, mBytes.remaining()); - if (bytesToCopy <= 0) { - return 0; - } - mBytes.get(bytes, off, len); - return bytesToCopy; - } - - @Override - public void close() throws IOException {} - - @Override - public int length() { - return mBytes.capacity(); - } - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RuleBinaryParser.java b/services/core/java/com/android/server/integrity/parser/RuleBinaryParser.java deleted file mode 100644 index ea3a3d5f1c60..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RuleBinaryParser.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.parser; - -import static com.android.server.integrity.model.ComponentBitSize.ATOMIC_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.BYTE_BITS; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_END; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.CONNECTOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.EFFECT_BITS; -import static com.android.server.integrity.model.ComponentBitSize.FORMAT_VERSION_BITS; -import static com.android.server.integrity.model.ComponentBitSize.INSTALLER_ALLOWED_BY_MANIFEST_START; -import static com.android.server.integrity.model.ComponentBitSize.IS_HASHED_BITS; -import static com.android.server.integrity.model.ComponentBitSize.KEY_BITS; -import static com.android.server.integrity.model.ComponentBitSize.OPERATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.SEPARATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.SIGNAL_BIT; -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.parser.BinaryFileOperations.getBooleanValue; -import static com.android.server.integrity.parser.BinaryFileOperations.getIntValue; -import static com.android.server.integrity.parser.BinaryFileOperations.getStringValue; - -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.InstallerAllowedByManifestFormula; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.Rule; - -import com.android.server.integrity.model.BitInputStream; - -import java.io.BufferedInputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -/** A helper class to parse rules into the {@link Rule} model from Binary representation. */ -public class RuleBinaryParser implements RuleParser { - - @Override - public List<Rule> parse(byte[] ruleBytes) throws RuleParseException { - return parse(RandomAccessObject.ofBytes(ruleBytes), Collections.emptyList()); - } - - @Override - public List<Rule> parse(RandomAccessObject randomAccessObject, List<RuleIndexRange> indexRanges) - throws RuleParseException { - try (RandomAccessInputStream randomAccessInputStream = - new RandomAccessInputStream(randomAccessObject)) { - return parseRules(randomAccessInputStream, indexRanges); - } catch (Exception e) { - throw new RuleParseException(e.getMessage(), e); - } - } - - private List<Rule> parseRules( - RandomAccessInputStream randomAccessInputStream, List<RuleIndexRange> indexRanges) - throws IOException { - - // Read the rule binary file format version. - randomAccessInputStream.skip(FORMAT_VERSION_BITS / BYTE_BITS); - - return indexRanges.isEmpty() - ? parseAllRules(randomAccessInputStream) - : parseIndexedRules(randomAccessInputStream, indexRanges); - } - - private List<Rule> parseAllRules(RandomAccessInputStream randomAccessInputStream) - throws IOException { - List<Rule> parsedRules = new ArrayList<>(); - - BitInputStream inputStream = - new BitInputStream(new BufferedInputStream(randomAccessInputStream)); - while (inputStream.hasNext()) { - if (inputStream.getNext(SIGNAL_BIT) == 1) { - parsedRules.add(parseRule(inputStream)); - } - } - - return parsedRules; - } - - private List<Rule> parseIndexedRules( - RandomAccessInputStream randomAccessInputStream, List<RuleIndexRange> indexRanges) - throws IOException { - List<Rule> parsedRules = new ArrayList<>(); - - for (RuleIndexRange range : indexRanges) { - randomAccessInputStream.seek(range.getStartIndex()); - - BitInputStream inputStream = - new BitInputStream( - new BufferedInputStream( - new LimitInputStream( - randomAccessInputStream, - range.getEndIndex() - range.getStartIndex()))); - - // Read the rules until we reach the end index. available() here is not reliable. - while (inputStream.hasNext()) { - if (inputStream.getNext(SIGNAL_BIT) == 1) { - parsedRules.add(parseRule(inputStream)); - } - } - } - - return parsedRules; - } - - private Rule parseRule(BitInputStream bitInputStream) throws IOException { - IntegrityFormula formula = parseFormula(bitInputStream); - int effect = bitInputStream.getNext(EFFECT_BITS); - - if (bitInputStream.getNext(SIGNAL_BIT) != 1) { - throw new IllegalArgumentException("A rule must end with a '1' bit."); - } - - return new Rule(formula, effect); - } - - private IntegrityFormula parseFormula(BitInputStream bitInputStream) throws IOException { - int separator = bitInputStream.getNext(SEPARATOR_BITS); - switch (separator) { - case ATOMIC_FORMULA_START: - return parseAtomicFormula(bitInputStream); - case COMPOUND_FORMULA_START: - return parseCompoundFormula(bitInputStream); - case COMPOUND_FORMULA_END: - return null; - case INSTALLER_ALLOWED_BY_MANIFEST_START: - return new InstallerAllowedByManifestFormula(); - default: - throw new IllegalArgumentException( - String.format("Unknown formula separator: %s", separator)); - } - } - - private CompoundFormula parseCompoundFormula(BitInputStream bitInputStream) throws IOException { - int connector = bitInputStream.getNext(CONNECTOR_BITS); - List<IntegrityFormula> formulas = new ArrayList<>(); - - IntegrityFormula parsedFormula = parseFormula(bitInputStream); - while (parsedFormula != null) { - formulas.add(parsedFormula); - parsedFormula = parseFormula(bitInputStream); - } - - return new CompoundFormula(connector, formulas); - } - - private AtomicFormula parseAtomicFormula(BitInputStream bitInputStream) throws IOException { - int key = bitInputStream.getNext(KEY_BITS); - int operator = bitInputStream.getNext(OPERATOR_BITS); - - switch (key) { - case AtomicFormula.PACKAGE_NAME: - case AtomicFormula.APP_CERTIFICATE: - case AtomicFormula.APP_CERTIFICATE_LINEAGE: - case AtomicFormula.INSTALLER_NAME: - case AtomicFormula.INSTALLER_CERTIFICATE: - case AtomicFormula.STAMP_CERTIFICATE_HASH: - boolean isHashedValue = bitInputStream.getNext(IS_HASHED_BITS) == 1; - int valueSize = bitInputStream.getNext(VALUE_SIZE_BITS); - String stringValue = getStringValue(bitInputStream, valueSize, isHashedValue); - return new AtomicFormula.StringAtomicFormula(key, stringValue, isHashedValue); - case AtomicFormula.VERSION_CODE: - // TODO(b/147880712): temporary hack until our input handles long - long upper = getIntValue(bitInputStream); - long lower = getIntValue(bitInputStream); - long longValue = (upper << 32) | lower; - return new AtomicFormula.LongAtomicFormula(key, operator, longValue); - case AtomicFormula.PRE_INSTALLED: - case AtomicFormula.STAMP_TRUSTED: - boolean booleanValue = getBooleanValue(bitInputStream); - return new AtomicFormula.BooleanAtomicFormula(key, booleanValue); - default: - throw new IllegalArgumentException(String.format("Unknown key: %d", key)); - } - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RuleIndexRange.java b/services/core/java/com/android/server/integrity/parser/RuleIndexRange.java deleted file mode 100644 index 595a035baf1d..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RuleIndexRange.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import android.annotation.Nullable; - -/** - * A wrapper class to represent an indexing range that is identified by the {@link - * RuleIndexingController}. - */ -public class RuleIndexRange { - private int mStartIndex; - private int mEndIndex; - - /** Constructor with start and end indexes. */ - public RuleIndexRange(int startIndex, int endIndex) { - this.mStartIndex = startIndex; - this.mEndIndex = endIndex; - } - - /** Returns the startIndex. */ - public int getStartIndex() { - return mStartIndex; - } - - /** Returns the end index. */ - public int getEndIndex() { - return mEndIndex; - } - - @Override - public boolean equals(@Nullable Object object) { - return mStartIndex == ((RuleIndexRange) object).getStartIndex() - && mEndIndex == ((RuleIndexRange) object).getEndIndex(); - } - - @Override - public String toString() { - return String.format("Range{%d, %d}", mStartIndex, mEndIndex); - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RuleIndexingController.java b/services/core/java/com/android/server/integrity/parser/RuleIndexingController.java deleted file mode 100644 index 348a03be7317..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RuleIndexingController.java +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import static com.android.server.integrity.model.IndexingFileConstants.END_INDEXING_KEY; -import static com.android.server.integrity.model.IndexingFileConstants.START_INDEXING_KEY; -import static com.android.server.integrity.parser.BinaryFileOperations.getIntValue; -import static com.android.server.integrity.parser.BinaryFileOperations.getStringValue; - -import android.content.integrity.AppInstallMetadata; - -import com.android.server.integrity.model.BitInputStream; - -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.stream.Collectors; - -/** Helper class to identify the necessary indexes that needs to be read. */ -public class RuleIndexingController { - - private static LinkedHashMap<String, Integer> sPackageNameBasedIndexes; - private static LinkedHashMap<String, Integer> sAppCertificateBasedIndexes; - private static LinkedHashMap<String, Integer> sUnindexedRuleIndexes; - - /** - * Provide the indexing file to read and the object will be constructed by reading and - * identifying the indexes. - */ - public RuleIndexingController(InputStream inputStream) throws IOException { - BitInputStream bitInputStream = new BitInputStream(inputStream); - sPackageNameBasedIndexes = getNextIndexGroup(bitInputStream); - sAppCertificateBasedIndexes = getNextIndexGroup(bitInputStream); - sUnindexedRuleIndexes = getNextIndexGroup(bitInputStream); - } - - /** - * Returns a list of integers with the starting and ending bytes of the rules that needs to be - * read and evaluated. - */ - public List<RuleIndexRange> identifyRulesToEvaluate(AppInstallMetadata appInstallMetadata) { - List<RuleIndexRange> indexRanges = new ArrayList<>(); - - // Add the range for package name indexes rules. - indexRanges.add( - searchIndexingKeysRangeContainingKey( - sPackageNameBasedIndexes, appInstallMetadata.getPackageName())); - - // Add the range for app certificate indexes rules of all certificates. - for (String appCertificate : appInstallMetadata.getAppCertificates()) { - indexRanges.add( - searchIndexingKeysRangeContainingKey( - sAppCertificateBasedIndexes, appCertificate)); - } - - // Add the range for unindexed rules. - indexRanges.add( - new RuleIndexRange( - sUnindexedRuleIndexes.get(START_INDEXING_KEY), - sUnindexedRuleIndexes.get(END_INDEXING_KEY))); - - return indexRanges; - } - - private LinkedHashMap<String, Integer> getNextIndexGroup(BitInputStream bitInputStream) - throws IOException { - LinkedHashMap<String, Integer> keyToIndexMap = new LinkedHashMap<>(); - while (bitInputStream.hasNext()) { - String key = getStringValue(bitInputStream); - int value = getIntValue(bitInputStream); - - keyToIndexMap.put(key, value); - - if (key.matches(END_INDEXING_KEY)) { - break; - } - } - if (keyToIndexMap.size() < 2) { - throw new IllegalStateException("Indexing file is corrupt."); - } - return keyToIndexMap; - } - - private static RuleIndexRange searchIndexingKeysRangeContainingKey( - LinkedHashMap<String, Integer> indexMap, String searchedKey) { - List<String> keys = indexMap.keySet().stream().collect(Collectors.toList()); - List<String> identifiedKeyRange = - searchKeysRangeContainingKey(keys, searchedKey, 0, keys.size() - 1); - return new RuleIndexRange( - indexMap.get(identifiedKeyRange.get(0)), indexMap.get(identifiedKeyRange.get(1))); - } - - private static List<String> searchKeysRangeContainingKey( - List<String> sortedKeyList, String key, int startIndex, int endIndex) { - if (endIndex <= startIndex) { - throw new IllegalStateException("Indexing file is corrupt."); - } - if (endIndex - startIndex == 1) { - return Arrays.asList(sortedKeyList.get(startIndex), sortedKeyList.get(endIndex)); - } - - int midKeyIndex = startIndex + ((endIndex - startIndex) / 2); - String midKey = sortedKeyList.get(midKeyIndex); - - if (key.compareTo(midKey) >= 0) { - return searchKeysRangeContainingKey(sortedKeyList, key, midKeyIndex, endIndex); - } else { - return searchKeysRangeContainingKey(sortedKeyList, key, startIndex, midKeyIndex); - } - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RuleMetadataParser.java b/services/core/java/com/android/server/integrity/parser/RuleMetadataParser.java deleted file mode 100644 index e831e40e70d1..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RuleMetadataParser.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.parser; - -import android.annotation.Nullable; -import android.util.Xml; - -import com.android.modules.utils.TypedXmlPullParser; -import com.android.server.integrity.model.RuleMetadata; - -import org.xmlpull.v1.XmlPullParser; -import org.xmlpull.v1.XmlPullParserException; - -import java.io.IOException; -import java.io.InputStream; - -/** Helper class for parsing rule metadata. */ -public class RuleMetadataParser { - - public static final String RULE_PROVIDER_TAG = "P"; - public static final String VERSION_TAG = "V"; - - /** Parse the rule metadata from an input stream. */ - @Nullable - public static RuleMetadata parse(InputStream inputStream) - throws XmlPullParserException, IOException { - - String ruleProvider = ""; - String version = ""; - - TypedXmlPullParser xmlPullParser = Xml.resolvePullParser(inputStream); - - int eventType; - while ((eventType = xmlPullParser.next()) != XmlPullParser.END_DOCUMENT) { - if (eventType == XmlPullParser.START_TAG) { - String tag = xmlPullParser.getName(); - switch (tag) { - case RULE_PROVIDER_TAG: - ruleProvider = xmlPullParser.nextText(); - break; - case VERSION_TAG: - version = xmlPullParser.nextText(); - break; - default: - throw new IllegalStateException("Unknown tag in metadata: " + tag); - } - } - } - - return new RuleMetadata(ruleProvider, version); - } -} diff --git a/services/core/java/com/android/server/integrity/parser/RuleParser.java b/services/core/java/com/android/server/integrity/parser/RuleParser.java deleted file mode 100644 index 126dacc4fa40..000000000000 --- a/services/core/java/com/android/server/integrity/parser/RuleParser.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.parser; - -import android.content.integrity.Rule; - -import java.util.List; - -/** A helper class to parse rules into the {@link Rule} model. */ -public interface RuleParser { - - /** Parse rules from bytes. */ - List<Rule> parse(byte[] ruleBytes) throws RuleParseException; - - /** Parse rules from an input stream. */ - List<Rule> parse(RandomAccessObject randomAccessObject, List<RuleIndexRange> ruleIndexRanges) - throws RuleParseException; -} diff --git a/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java deleted file mode 100644 index 8ba5870aef0f..000000000000 --- a/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java +++ /dev/null @@ -1,324 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import static com.android.server.integrity.model.ComponentBitSize.ATOMIC_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_END; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.CONNECTOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.DEFAULT_FORMAT_VERSION; -import static com.android.server.integrity.model.ComponentBitSize.EFFECT_BITS; -import static com.android.server.integrity.model.ComponentBitSize.FORMAT_VERSION_BITS; -import static com.android.server.integrity.model.ComponentBitSize.INSTALLER_ALLOWED_BY_MANIFEST_START; -import static com.android.server.integrity.model.ComponentBitSize.KEY_BITS; -import static com.android.server.integrity.model.ComponentBitSize.OPERATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.SEPARATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.model.IndexingFileConstants.END_INDEXING_KEY; -import static com.android.server.integrity.model.IndexingFileConstants.INDEXING_BLOCK_SIZE; -import static com.android.server.integrity.model.IndexingFileConstants.START_INDEXING_KEY; -import static com.android.server.integrity.serializer.RuleIndexingDetails.APP_CERTIFICATE_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.NOT_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.PACKAGE_NAME_INDEXED; - -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.InstallerAllowedByManifestFormula; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.IntegrityUtils; -import android.content.integrity.Rule; - -import com.android.internal.util.Preconditions; -import com.android.server.integrity.model.BitOutputStream; -import com.android.server.integrity.model.ByteTrackedOutputStream; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.nio.charset.StandardCharsets; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Optional; -import java.util.stream.Collectors; - -/** A helper class to serialize rules from the {@link Rule} model to Binary representation. */ -public class RuleBinarySerializer implements RuleSerializer { - static final int TOTAL_RULE_SIZE_LIMIT = 200000; - static final int INDEXED_RULE_SIZE_LIMIT = 100000; - static final int NONINDEXED_RULE_SIZE_LIMIT = 1000; - - // Get the byte representation for a list of rules. - @Override - public byte[] serialize(List<Rule> rules, Optional<Integer> formatVersion) - throws RuleSerializeException { - try { - ByteArrayOutputStream rulesOutputStream = new ByteArrayOutputStream(); - serialize(rules, formatVersion, rulesOutputStream, new ByteArrayOutputStream()); - return rulesOutputStream.toByteArray(); - } catch (Exception e) { - throw new RuleSerializeException(e.getMessage(), e); - } - } - - // Get the byte representation for a list of rules, and write them to an output stream. - @Override - public void serialize( - List<Rule> rules, - Optional<Integer> formatVersion, - OutputStream rulesFileOutputStream, - OutputStream indexingFileOutputStream) - throws RuleSerializeException { - try { - if (rules == null) { - throw new IllegalArgumentException("Null rules cannot be serialized."); - } - - if (rules.size() > TOTAL_RULE_SIZE_LIMIT) { - throw new IllegalArgumentException("Too many rules provided: " + rules.size()); - } - - // Determine the indexing groups and the order of the rules within each indexed group. - Map<Integer, Map<String, List<Rule>>> indexedRules = - RuleIndexingDetailsIdentifier.splitRulesIntoIndexBuckets(rules); - - // Validate the rule blocks are not larger than expected limits. - verifySize(indexedRules.get(PACKAGE_NAME_INDEXED), INDEXED_RULE_SIZE_LIMIT); - verifySize(indexedRules.get(APP_CERTIFICATE_INDEXED), INDEXED_RULE_SIZE_LIMIT); - verifySize(indexedRules.get(NOT_INDEXED), NONINDEXED_RULE_SIZE_LIMIT); - - // Serialize the rules. - ByteTrackedOutputStream ruleFileByteTrackedOutputStream = - new ByteTrackedOutputStream(rulesFileOutputStream); - serializeRuleFileMetadata(formatVersion, ruleFileByteTrackedOutputStream); - LinkedHashMap<String, Integer> packageNameIndexes = - serializeRuleList( - indexedRules.get(PACKAGE_NAME_INDEXED), - ruleFileByteTrackedOutputStream); - LinkedHashMap<String, Integer> appCertificateIndexes = - serializeRuleList( - indexedRules.get(APP_CERTIFICATE_INDEXED), - ruleFileByteTrackedOutputStream); - LinkedHashMap<String, Integer> unindexedRulesIndexes = - serializeRuleList( - indexedRules.get(NOT_INDEXED), ruleFileByteTrackedOutputStream); - - // Serialize their indexes. - BitOutputStream indexingBitOutputStream = new BitOutputStream(indexingFileOutputStream); - serializeIndexGroup(packageNameIndexes, indexingBitOutputStream, /* isIndexed= */ true); - serializeIndexGroup( - appCertificateIndexes, indexingBitOutputStream, /* isIndexed= */ true); - serializeIndexGroup( - unindexedRulesIndexes, indexingBitOutputStream, /* isIndexed= */ false); - indexingBitOutputStream.flush(); - } catch (Exception e) { - throw new RuleSerializeException(e.getMessage(), e); - } - } - - private void verifySize(Map<String, List<Rule>> ruleListMap, int ruleSizeLimit) { - int totalRuleCount = - ruleListMap.values().stream() - .map(list -> list.size()) - .collect(Collectors.summingInt(Integer::intValue)); - if (totalRuleCount > ruleSizeLimit) { - throw new IllegalArgumentException( - "Too many rules provided in the indexing group. Provided " - + totalRuleCount - + " limit " - + ruleSizeLimit); - } - } - - private void serializeRuleFileMetadata( - Optional<Integer> formatVersion, ByteTrackedOutputStream outputStream) - throws IOException { - int formatVersionValue = formatVersion.orElse(DEFAULT_FORMAT_VERSION); - - BitOutputStream bitOutputStream = new BitOutputStream(outputStream); - bitOutputStream.setNext(FORMAT_VERSION_BITS, formatVersionValue); - bitOutputStream.flush(); - } - - private LinkedHashMap<String, Integer> serializeRuleList( - Map<String, List<Rule>> rulesMap, ByteTrackedOutputStream outputStream) - throws IOException { - Preconditions.checkArgument( - rulesMap != null, "serializeRuleList should never be called with null rule list."); - - BitOutputStream bitOutputStream = new BitOutputStream(outputStream); - LinkedHashMap<String, Integer> indexMapping = new LinkedHashMap(); - indexMapping.put(START_INDEXING_KEY, outputStream.getWrittenBytesCount()); - - List<String> sortedKeys = rulesMap.keySet().stream().sorted().collect(Collectors.toList()); - int indexTracker = 0; - for (String key : sortedKeys) { - if (indexTracker >= INDEXING_BLOCK_SIZE) { - indexMapping.put(key, outputStream.getWrittenBytesCount()); - indexTracker = 0; - } - - for (Rule rule : rulesMap.get(key)) { - serializeRule(rule, bitOutputStream); - bitOutputStream.flush(); - indexTracker++; - } - } - indexMapping.put(END_INDEXING_KEY, outputStream.getWrittenBytesCount()); - - return indexMapping; - } - - private void serializeRule(Rule rule, BitOutputStream bitOutputStream) throws IOException { - if (rule == null) { - throw new IllegalArgumentException("Null rule can not be serialized"); - } - - // Start with a '1' bit to mark the start of a rule. - bitOutputStream.setNext(); - - serializeFormula(rule.getFormula(), bitOutputStream); - bitOutputStream.setNext(EFFECT_BITS, rule.getEffect()); - - // End with a '1' bit to mark the end of a rule. - bitOutputStream.setNext(); - } - - private void serializeFormula(IntegrityFormula formula, BitOutputStream bitOutputStream) - throws IOException { - if (formula instanceof AtomicFormula) { - serializeAtomicFormula((AtomicFormula) formula, bitOutputStream); - } else if (formula instanceof CompoundFormula) { - serializeCompoundFormula((CompoundFormula) formula, bitOutputStream); - } else if (formula instanceof InstallerAllowedByManifestFormula) { - bitOutputStream.setNext(SEPARATOR_BITS, INSTALLER_ALLOWED_BY_MANIFEST_START); - } else { - throw new IllegalArgumentException( - String.format("Invalid formula type: %s", formula.getClass())); - } - } - - private void serializeCompoundFormula( - CompoundFormula compoundFormula, BitOutputStream bitOutputStream) throws IOException { - if (compoundFormula == null) { - throw new IllegalArgumentException("Null compound formula can not be serialized"); - } - - bitOutputStream.setNext(SEPARATOR_BITS, COMPOUND_FORMULA_START); - bitOutputStream.setNext(CONNECTOR_BITS, compoundFormula.getConnector()); - for (IntegrityFormula formula : compoundFormula.getFormulas()) { - serializeFormula(formula, bitOutputStream); - } - bitOutputStream.setNext(SEPARATOR_BITS, COMPOUND_FORMULA_END); - } - - private void serializeAtomicFormula( - AtomicFormula atomicFormula, BitOutputStream bitOutputStream) throws IOException { - if (atomicFormula == null) { - throw new IllegalArgumentException("Null atomic formula can not be serialized"); - } - - bitOutputStream.setNext(SEPARATOR_BITS, ATOMIC_FORMULA_START); - bitOutputStream.setNext(KEY_BITS, atomicFormula.getKey()); - if (atomicFormula.getTag() == AtomicFormula.STRING_ATOMIC_FORMULA_TAG) { - AtomicFormula.StringAtomicFormula stringAtomicFormula = - (AtomicFormula.StringAtomicFormula) atomicFormula; - bitOutputStream.setNext(OPERATOR_BITS, AtomicFormula.EQ); - serializeStringValue( - stringAtomicFormula.getValue(), - stringAtomicFormula.getIsHashedValue(), - bitOutputStream); - } else if (atomicFormula.getTag() == AtomicFormula.LONG_ATOMIC_FORMULA_TAG) { - AtomicFormula.LongAtomicFormula longAtomicFormula = - (AtomicFormula.LongAtomicFormula) atomicFormula; - bitOutputStream.setNext(OPERATOR_BITS, longAtomicFormula.getOperator()); - // TODO(b/147880712): Temporary hack until we support long values in bitOutputStream - long value = longAtomicFormula.getValue(); - serializeIntValue((int) (value >>> 32), bitOutputStream); - serializeIntValue((int) value, bitOutputStream); - } else if (atomicFormula.getTag() == AtomicFormula.BOOLEAN_ATOMIC_FORMULA_TAG) { - AtomicFormula.BooleanAtomicFormula booleanAtomicFormula = - (AtomicFormula.BooleanAtomicFormula) atomicFormula; - bitOutputStream.setNext(OPERATOR_BITS, AtomicFormula.EQ); - serializeBooleanValue(booleanAtomicFormula.getValue(), bitOutputStream); - } else { - throw new IllegalArgumentException( - String.format("Invalid atomic formula type: %s", atomicFormula.getClass())); - } - } - - private void serializeIndexGroup( - LinkedHashMap<String, Integer> indexes, - BitOutputStream bitOutputStream, - boolean isIndexed) - throws IOException { - // Output the starting location of this indexing group. - serializeStringValue(START_INDEXING_KEY, /* isHashedValue= */ false, bitOutputStream); - serializeIntValue(indexes.get(START_INDEXING_KEY), bitOutputStream); - - // If the group is indexed, output the locations of the indexes. - if (isIndexed) { - for (Map.Entry<String, Integer> entry : indexes.entrySet()) { - if (!entry.getKey().equals(START_INDEXING_KEY) - && !entry.getKey().equals(END_INDEXING_KEY)) { - serializeStringValue( - entry.getKey(), /* isHashedValue= */ false, bitOutputStream); - serializeIntValue(entry.getValue(), bitOutputStream); - } - } - } - - // Output the end location of this indexing group. - serializeStringValue(END_INDEXING_KEY, /*isHashedValue= */ false, bitOutputStream); - serializeIntValue(indexes.get(END_INDEXING_KEY), bitOutputStream); - } - - private void serializeStringValue( - String value, boolean isHashedValue, BitOutputStream bitOutputStream) - throws IOException { - if (value == null) { - throw new IllegalArgumentException("String value can not be null."); - } - byte[] valueBytes = getBytesForString(value, isHashedValue); - - bitOutputStream.setNext(isHashedValue); - bitOutputStream.setNext(VALUE_SIZE_BITS, valueBytes.length); - for (byte valueByte : valueBytes) { - bitOutputStream.setNext(/* numOfBits= */ 8, valueByte); - } - } - - private void serializeIntValue(int value, BitOutputStream bitOutputStream) throws IOException { - bitOutputStream.setNext(/* numOfBits= */ 32, value); - } - - private void serializeBooleanValue(boolean value, BitOutputStream bitOutputStream) - throws IOException { - bitOutputStream.setNext(value); - } - - // Get the byte array for a value. - // If the value is not hashed, use its byte array form directly. - // If the value is hashed, get the raw form decoding of the value. All hashed values are - // hex-encoded. Serialized values are in raw form. - private static byte[] getBytesForString(String value, boolean isHashedValue) { - if (!isHashedValue) { - return value.getBytes(StandardCharsets.UTF_8); - } - return IntegrityUtils.getBytesFromHexDigest(value); - } -} diff --git a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetails.java b/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetails.java deleted file mode 100644 index 2cbd4ede5214..000000000000 --- a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetails.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import android.annotation.IntDef; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -/** Holds the indexing type and indexing key of a given formula. */ -class RuleIndexingDetails { - - static final int NOT_INDEXED = 0; - static final int PACKAGE_NAME_INDEXED = 1; - static final int APP_CERTIFICATE_INDEXED = 2; - - static final String DEFAULT_RULE_KEY = "N/A"; - - /** Represents which indexed file the rule should be located. */ - @IntDef( - value = { - NOT_INDEXED, - PACKAGE_NAME_INDEXED, - APP_CERTIFICATE_INDEXED - }) - @Retention(RetentionPolicy.SOURCE) - public @interface IndexType { - } - - private @IndexType int mIndexType; - private String mRuleKey; - - /** Constructor without a ruleKey for {@code NOT_INDEXED}. */ - RuleIndexingDetails(@IndexType int indexType) { - this.mIndexType = indexType; - this.mRuleKey = DEFAULT_RULE_KEY; - } - - /** Constructor with a ruleKey for indexed rules. */ - RuleIndexingDetails(@IndexType int indexType, String ruleKey) { - this.mIndexType = indexType; - this.mRuleKey = ruleKey; - } - - /** Returns the indexing type for the rule. */ - @IndexType - public int getIndexType() { - return mIndexType; - } - - /** Returns the identified rule key. */ - public String getRuleKey() { - return mRuleKey; - } -} diff --git a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java b/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java deleted file mode 100644 index e7235591fb9b..000000000000 --- a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import static com.android.server.integrity.serializer.RuleIndexingDetails.APP_CERTIFICATE_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.NOT_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.PACKAGE_NAME_INDEXED; - -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.Rule; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Optional; - -/** A helper class for identifying the indexing type and key of a given rule. */ -class RuleIndexingDetailsIdentifier { - - /** - * Splits a given rule list into three indexing categories. Each rule category is returned as a - * TreeMap that is sorted by their indexing keys -- where keys correspond to package name for - * PACKAGE_NAME_INDEXED rules, app certificate for APP_CERTIFICATE_INDEXED rules and N/A for - * NOT_INDEXED rules. - */ - public static Map<Integer, Map<String, List<Rule>>> splitRulesIntoIndexBuckets( - List<Rule> rules) { - if (rules == null) { - throw new IllegalArgumentException( - "Index buckets cannot be created for null rule list."); - } - - Map<Integer, Map<String, List<Rule>>> typeOrganizedRuleMap = new HashMap(); - typeOrganizedRuleMap.put(NOT_INDEXED, new HashMap()); - typeOrganizedRuleMap.put(PACKAGE_NAME_INDEXED, new HashMap<>()); - typeOrganizedRuleMap.put(APP_CERTIFICATE_INDEXED, new HashMap<>()); - - // Split the rules into the appropriate indexed pattern. The Tree Maps help us to keep the - // entries sorted by their index key. - for (Rule rule : rules) { - RuleIndexingDetails indexingDetails; - try { - indexingDetails = getIndexingDetails(rule.getFormula()); - } catch (Exception e) { - throw new IllegalArgumentException( - String.format("Malformed rule identified. [%s]", rule.toString())); - } - - int ruleIndexType = indexingDetails.getIndexType(); - String ruleKey = indexingDetails.getRuleKey(); - - if (!typeOrganizedRuleMap.get(ruleIndexType).containsKey(ruleKey)) { - typeOrganizedRuleMap.get(ruleIndexType).put(ruleKey, new ArrayList()); - } - - typeOrganizedRuleMap.get(ruleIndexType).get(ruleKey).add(rule); - } - - return typeOrganizedRuleMap; - } - - private static RuleIndexingDetails getIndexingDetails(IntegrityFormula formula) { - switch (formula.getTag()) { - case IntegrityFormula.COMPOUND_FORMULA_TAG: - return getIndexingDetailsForCompoundFormula((CompoundFormula) formula); - case IntegrityFormula.STRING_ATOMIC_FORMULA_TAG: - return getIndexingDetailsForStringAtomicFormula( - (AtomicFormula.StringAtomicFormula) formula); - case IntegrityFormula.LONG_ATOMIC_FORMULA_TAG: - case IntegrityFormula.INSTALLER_ALLOWED_BY_MANIFEST_FORMULA_TAG: - case IntegrityFormula.BOOLEAN_ATOMIC_FORMULA_TAG: - // Package name and app certificate related formulas are string atomic formulas. - return new RuleIndexingDetails(NOT_INDEXED); - default: - throw new IllegalArgumentException( - String.format("Invalid formula tag type: %s", formula.getTag())); - } - } - - private static RuleIndexingDetails getIndexingDetailsForCompoundFormula( - CompoundFormula compoundFormula) { - int connector = compoundFormula.getConnector(); - List<IntegrityFormula> formulas = compoundFormula.getFormulas(); - - switch (connector) { - case CompoundFormula.AND: - case CompoundFormula.OR: - // If there is a package name related atomic rule, return package name indexed. - Optional<RuleIndexingDetails> packageNameRule = - formulas.stream() - .map(formula -> getIndexingDetails(formula)) - .filter(ruleIndexingDetails -> ruleIndexingDetails.getIndexType() - == PACKAGE_NAME_INDEXED) - .findAny(); - if (packageNameRule.isPresent()) { - return packageNameRule.get(); - } - - // If there is an app certificate related atomic rule but no package name related - // atomic rule, return app certificate indexed. - Optional<RuleIndexingDetails> appCertificateRule = - formulas.stream() - .map(formula -> getIndexingDetails(formula)) - .filter(ruleIndexingDetails -> ruleIndexingDetails.getIndexType() - == APP_CERTIFICATE_INDEXED) - .findAny(); - if (appCertificateRule.isPresent()) { - return appCertificateRule.get(); - } - - // Do not index when there is not package name or app certificate indexing. - return new RuleIndexingDetails(NOT_INDEXED); - default: - // Having a NOT operator in the indexing messes up the indexing; e.g., deny - // installation if app certificate is NOT X (should not be indexed with app cert - // X). We will not keep these rules indexed. - // Also any other type of unknown operators will not be indexed. - return new RuleIndexingDetails(NOT_INDEXED); - } - } - - private static RuleIndexingDetails getIndexingDetailsForStringAtomicFormula( - AtomicFormula.StringAtomicFormula atomicFormula) { - switch (atomicFormula.getKey()) { - case AtomicFormula.PACKAGE_NAME: - return new RuleIndexingDetails(PACKAGE_NAME_INDEXED, atomicFormula.getValue()); - case AtomicFormula.APP_CERTIFICATE: - return new RuleIndexingDetails(APP_CERTIFICATE_INDEXED, atomicFormula.getValue()); - default: - return new RuleIndexingDetails(NOT_INDEXED); - } - } -} - diff --git a/services/core/java/com/android/server/integrity/serializer/RuleMetadataSerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleMetadataSerializer.java deleted file mode 100644 index 022b4b8cb7eb..000000000000 --- a/services/core/java/com/android/server/integrity/serializer/RuleMetadataSerializer.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import static com.android.server.integrity.parser.RuleMetadataParser.RULE_PROVIDER_TAG; -import static com.android.server.integrity.parser.RuleMetadataParser.VERSION_TAG; - -import android.util.Xml; - -import com.android.modules.utils.TypedXmlSerializer; -import com.android.server.integrity.model.RuleMetadata; - -import org.xmlpull.v1.XmlSerializer; - -import java.io.IOException; -import java.io.OutputStream; -import java.nio.charset.StandardCharsets; - -/** Helper class for writing rule metadata. */ -public class RuleMetadataSerializer { - /** Serialize the rule metadata to an output stream. */ - public static void serialize(RuleMetadata ruleMetadata, OutputStream outputStream) - throws IOException { - TypedXmlSerializer xmlSerializer = Xml.resolveSerializer(outputStream); - - serializeTaggedValue(xmlSerializer, RULE_PROVIDER_TAG, ruleMetadata.getRuleProvider()); - serializeTaggedValue(xmlSerializer, VERSION_TAG, ruleMetadata.getVersion()); - - xmlSerializer.endDocument(); - } - - private static void serializeTaggedValue(TypedXmlSerializer xmlSerializer, String tag, - String value) throws IOException { - xmlSerializer.startTag(/* namespace= */ null, tag); - xmlSerializer.text(value); - xmlSerializer.endTag(/* namespace= */ null, tag); - } -} diff --git a/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java deleted file mode 100644 index 2941856915a8..000000000000 --- a/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import android.content.integrity.Rule; - -import java.io.OutputStream; -import java.util.List; -import java.util.Optional; - -/** A helper class to serialize rules from the {@link Rule} model. */ -public interface RuleSerializer { - - /** Serialize rules to an output stream */ - void serialize( - List<Rule> rules, - Optional<Integer> formatVersion, - OutputStream ruleFileOutputStream, - OutputStream indexingFileOutputStream) - throws RuleSerializeException; - - /** Serialize rules to a ByteArray. */ - byte[] serialize(List<Rule> rules, Optional<Integer> formatVersion) - throws RuleSerializeException; -} diff --git a/services/core/java/com/android/server/lights/TEST_MAPPING b/services/core/java/com/android/server/lights/TEST_MAPPING index 17b98ce8e2d5..8abdf0069e1f 100644 --- a/services/core/java/com/android/server/lights/TEST_MAPPING +++ b/services/core/java/com/android/server/lights/TEST_MAPPING @@ -1,19 +1,10 @@ { "presubmit": [ { - "name": "CtsHardwareTestCases", - "options": [ - {"include-filter": "com.android.hardware.lights"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "CtsHardwareTestCases_hardware_lights" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.lights"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksServicesTests_android_server_lights" } ] } diff --git a/services/core/java/com/android/server/locales/TEST_MAPPING b/services/core/java/com/android/server/locales/TEST_MAPPING index fd8cddc08fff..26e4685ad684 100644 --- a/services/core/java/com/android/server/locales/TEST_MAPPING +++ b/services/core/java/com/android/server/locales/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.locales." - } - ] + "name": "FrameworksServicesTests_android_server_locales" }, { "name": "CtsLocaleManagerHostTestCases" diff --git a/services/core/java/com/android/server/location/TEST_MAPPING b/services/core/java/com/android/server/location/TEST_MAPPING index f5deb2ba3e07..b2ac7d1ef7e7 100644 --- a/services/core/java/com/android/server/location/TEST_MAPPING +++ b/services/core/java/com/android/server/location/TEST_MAPPING @@ -1,13 +1,7 @@ { "presubmit": [ { - "name": "CtsLocationFineTestCases", - "options": [ - { - // TODO: Wait for test to deflake - b/293934372 - "exclude-filter":"android.location.cts.fine.ScanningSettingsTest" - } - ] + "name": "CtsLocationFineTestCases_android_server_location" }, { "name": "CtsLocationCoarseTestCases" @@ -16,10 +10,7 @@ "name": "CtsLocationNoneTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [{ - "include-filter": "com.android.server.location" - }] + "name": "FrameworksMockingServicesTests_location" } ] } diff --git a/services/core/java/com/android/server/location/contexthub/ContextHubClientBroker.java b/services/core/java/com/android/server/location/contexthub/ContextHubClientBroker.java index 363a4a7be3db..91a4d6f1707f 100644 --- a/services/core/java/com/android/server/location/contexthub/ContextHubClientBroker.java +++ b/services/core/java/com/android/server/location/contexthub/ContextHubClientBroker.java @@ -1126,7 +1126,7 @@ public class ContextHubClientBroker extends IContextHubClient.Stub } } - private void sendHostEndpointConnectedEvent() { + void sendHostEndpointConnectedEvent() { HostEndpointInfo info = new HostEndpointInfo(); info.hostEndpointId = (char) mHostEndPointId; info.packageName = mPackage; diff --git a/services/core/java/com/android/server/location/contexthub/ContextHubService.java b/services/core/java/com/android/server/location/contexthub/ContextHubService.java index b3fb147a318b..309dbed30d53 100644 --- a/services/core/java/com/android/server/location/contexthub/ContextHubService.java +++ b/services/core/java/com/android/server/location/contexthub/ContextHubService.java @@ -242,10 +242,14 @@ public class ContextHubService extends IContextHubService.Stub { @Override public void handleServiceRestart() { - Log.i(TAG, "Starting Context Hub Service restart"); + Log.i(TAG, "Recovering from Context Hub HAL restart..."); initExistingCallbacks(); resetSettings(); - Log.i(TAG, "Finished Context Hub Service restart"); + if (Flags.reconnectHostEndpointsAfterHalRestart()) { + mClientManager.forEachClientOfHub(mContextHubId, + ContextHubClientBroker::sendHostEndpointConnectedEvent); + } + Log.i(TAG, "Finished recovering from Context Hub HAL restart"); } @Override @@ -536,6 +540,7 @@ public class ContextHubService extends IContextHubService.Stub { for (int contextHubId : mContextHubIdToInfoMap.keySet()) { try { mContextHubWrapper.registerExistingCallback(contextHubId); + Log.i(TAG, "Re-registered callback to context hub " + contextHubId); } catch (RemoteException e) { Log.e(TAG, "RemoteException while registering existing service callback for hub " + "(ID = " + contextHubId + ")", e); diff --git a/services/core/java/com/android/server/location/contexthub/TEST_MAPPING b/services/core/java/com/android/server/location/contexthub/TEST_MAPPING index 2f6aa5308086..85ea5a474a90 100644 --- a/services/core/java/com/android/server/location/contexthub/TEST_MAPPING +++ b/services/core/java/com/android/server/location/contexthub/TEST_MAPPING @@ -1,21 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.location.contexthub." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_android_server_location_contexthub_Presubmit" } ], "imports": [ diff --git a/services/core/java/com/android/server/location/provider/LocationProviderManager.java b/services/core/java/com/android/server/location/provider/LocationProviderManager.java index 542a29ae4172..4a9bf88aae33 100644 --- a/services/core/java/com/android/server/location/provider/LocationProviderManager.java +++ b/services/core/java/com/android/server/location/provider/LocationProviderManager.java @@ -2584,6 +2584,9 @@ public class LocationProviderManager extends registration -> { if (registration.getIdentity().getPackageName().equals( packageName)) { + if (D) { + Log.d(TAG, "package reset remove registration " + registration); + } registration.remove(); } diff --git a/services/core/java/com/android/server/locksettings/Android.bp b/services/core/java/com/android/server/locksettings/Android.bp new file mode 100644 index 000000000000..53f1ac668e49 --- /dev/null +++ b/services/core/java/com/android/server/locksettings/Android.bp @@ -0,0 +1,11 @@ +aconfig_declarations { + name: "locksettings_flags", + package: "com.android.server.locksettings", + container: "system", + srcs: ["*.aconfig"], +} + +java_aconfig_library { + name: "locksettings_flags_lib", + aconfig_declarations: "locksettings_flags", +} diff --git a/services/core/java/com/android/server/locksettings/LockSettingsService.java b/services/core/java/com/android/server/locksettings/LockSettingsService.java index 6dd2dac22127..c314ab06fbad 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsService.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsService.java @@ -16,7 +16,6 @@ package com.android.server.locksettings; -import static android.security.Flags.reportPrimaryAuthAttempts; import static android.Manifest.permission.ACCESS_KEYGUARD_SECURE_STORAGE; import static android.Manifest.permission.CONFIGURE_FACTORY_RESET_PROTECTION; import static android.Manifest.permission.MANAGE_BIOMETRIC; @@ -32,6 +31,7 @@ import static android.content.Intent.ACTION_MAIN_USER_LOCKSCREEN_KNOWLEDGE_FACTO import static android.content.pm.PackageManager.PERMISSION_GRANTED; import static android.os.UserHandle.USER_ALL; import static android.os.UserHandle.USER_SYSTEM; +import static android.security.Flags.reportPrimaryAuthAttempts; import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE; import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PASSWORD_OR_PIN; @@ -253,10 +253,10 @@ public class LockSettingsService extends ILockSettings.Stub { private static final String MIGRATED_FRP2 = "migrated_frp2"; private static final String MIGRATED_KEYSTORE_NS = "migrated_keystore_namespace"; - private static final String MIGRATED_SP_CE_ONLY = "migrated_all_users_to_sp_and_bound_ce"; private static final String MIGRATED_SP_FULL = "migrated_all_users_to_sp_and_bound_keys"; private static final String MIGRATED_WEAVER_DISABLED_ON_UNSECURED_USERS = "migrated_weaver_disabled_on_unsecured_users"; + // Note: some other migrated_* strings used to be used and may exist in the database already. // Duration that LockSettingsService will store the gatekeeper password for. This allows // multiple biometric enrollments without prompting the user to enter their password via @@ -347,6 +347,8 @@ public class LockSettingsService extends ILockSettings.Stub { private final StorageManagerInternal mStorageManagerInternal; + private final Object mGcWorkToken = new Object(); + // This class manages life cycle events for encrypted users on File Based Encryption (FBE) // devices. The most basic of these is to show/hide notifications about missing features until // the user unlocks the account and credential-encrypted storage is available. @@ -768,15 +770,9 @@ public class LockSettingsService extends ILockSettings.Stub { unlockIntent.setFlags( Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); - PendingIntent intent; - if (android.app.admin.flags.Flags.hsumUnlockNotificationFix()) { - intent = PendingIntent.getActivityAsUser(mContext, 0, unlockIntent, - PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE_UNAUDITED, - null, parent); - } else { - intent = PendingIntent.getActivity(mContext, 0, unlockIntent, - PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE_UNAUDITED); - } + PendingIntent intent = PendingIntent.getActivityAsUser(mContext, 0, unlockIntent, + PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE_UNAUDITED, + null, parent); Slogf.d(TAG, "Showing encryption notification for user %d; reason: %s", user.getIdentifier(), reason); @@ -907,8 +903,14 @@ public class LockSettingsService extends ILockSettings.Stub { // Hide notification first, as tie profile lock takes time hideEncryptionNotification(new UserHandle(userId)); - if (isCredentialSharableWithParent(userId)) { - tieProfileLockIfNecessary(userId, LockscreenCredential.createNone()); + if (android.app.admin.flags.Flags.fixRaceConditionInTieProfileLock()) { + synchronized (mSpManager) { + tieProfileLockIfNecessary(userId, LockscreenCredential.createNone()); + } + } else { + if (isCredentialSharableWithParent(userId)) { + tieProfileLockIfNecessary(userId, LockscreenCredential.createNone()); + } } } }); @@ -1183,9 +1185,7 @@ public class LockSettingsService extends ILockSettings.Stub { // If config_disableWeaverOnUnsecuredUsers=true, then the Weaver HAL may be buggy and // need multiple retries before it works here to unwrap the SP, if the SP was already - // protected by Weaver. Note that the problematic HAL can also deadlock if called with - // the ActivityManagerService lock held, but that should not be a problem here since - // that lock isn't held here, unlike unlockUserKeyIfUnsecured() where it is. + // protected by Weaver. for (int i = 0; i < 12 && sp == null; i++) { Slog.e(TAG, "Failed to unwrap synthetic password. Waiting 5 seconds to retry."); SystemClock.sleep(5000); @@ -1221,21 +1221,16 @@ public class LockSettingsService extends ILockSettings.Stub { Slog.i(TAG, "Synthetic password is already not protected by Weaver"); } } else if (sp == null) { - Slogf.wtf(TAG, "Failed to unwrap synthetic password for unsecured user %d", userId); - return; + throw new IllegalStateException( + "Failed to unwrap synthetic password for unsecured user " + userId); } // Call setCeStorageProtection(), to re-encrypt the CE key with the SP if it's currently - // encrypted by an empty secret. Skip this if it was definitely already done as part of the - // upgrade to Android 14, since while setCeStorageProtection() is idempotent it does log - // some error messages when called again. Do not skip this if - // config_disableWeaverOnUnsecuredUsers=true, since in that case we'd like to recover from - // the case where an earlier upgrade to Android 14 incorrectly skipped this step. - if (getString(MIGRATED_SP_CE_ONLY, null, 0) == null - || isWeaverDisabledOnUnsecuredUsers()) { - Slogf.i(TAG, "Encrypting CE key of user %d with synthetic password", userId); - setCeStorageProtection(userId, sp); - } + // encrypted by an empty secret. If the CE key is already encrypted by the SP, then this is + // a no-op except for some log messages. + Slogf.i(TAG, "Encrypting CE key of user %d with synthetic password", userId); + setCeStorageProtection(userId, sp); + Slogf.i(TAG, "Initializing Keystore super keys for user %d", userId); initKeystoreSuperKeys(userId, sp, /* allowExisting= */ true); } @@ -1379,7 +1374,13 @@ public class LockSettingsService extends ILockSettings.Stub { mStorage.removeChildProfileLock(userId); removeKeystoreProfileKey(userId); } else { - tieProfileLockIfNecessary(userId, profileUserPassword); + if (android.app.admin.flags.Flags.fixRaceConditionInTieProfileLock()) { + synchronized (mSpManager) { + tieProfileLockIfNecessary(userId, profileUserPassword); + } + } else { + tieProfileLockIfNecessary(userId, profileUserPassword); + } } } catch (IllegalStateException e) { setBoolean(SEPARATE_PROFILE_CHALLENGE_KEY, old, userId); @@ -1916,6 +1917,13 @@ public class LockSettingsService extends ILockSettings.Stub { } /** + * Set a new LSKF for the given user/profile. Only succeeds if the synthetic password for the + * user is protected by the given {@param savedCredential}. + * <p> + * When {@link android.security.Flags#clearStrongAuthOnAddPrimaryCredential()} is enabled and + * setting a new credential where there was none, updates the strong auth state for + * {@param userId} to <tt>STRONG_AUTH_NOT_REQUIRED</tt>. + * * @param savedCredential if the user is a profile with * {@link UserManager#isCredentialSharableWithParent()} with unified challenge and * savedCredential is empty, LSS will try to re-derive the profile password internally. @@ -1964,6 +1972,12 @@ public class LockSettingsService extends ILockSettings.Stub { onSyntheticPasswordUnlocked(userId, sp); setLockCredentialWithSpLocked(credential, sp, userId); + if (android.security.Flags.clearStrongAuthOnAddPrimaryCredential() + && savedCredential.isNone() && !credential.isNone()) { + // Clear the strong auth value, since the LSKF has just been entered and set, + // but only when the previous credential was None. + mStrongAuth.reportUnlock(userId); + } sendCredentialsOnChangeIfRequired(credential, userId, isLockTiedToParent); return true; } @@ -3495,8 +3509,13 @@ public class LockSettingsService extends ILockSettings.Stub { // It's OK to dump the credential type since anyone with physical access can just // observe it from the keyguard directly. pw.println("Quality: " + getKeyguardStoredQuality(userId)); - pw.println("CredentialType: " + LockPatternUtils.credentialTypeToString( - getCredentialTypeInternal(userId))); + final int credentialType = getCredentialTypeInternal(userId); + pw.println("CredentialType: " + + LockPatternUtils.credentialTypeToString(credentialType)); + if (credentialType == CREDENTIAL_TYPE_NONE) { + pw.println("IsLockScreenDisabled: " + + getBoolean(LockPatternUtils.DISABLE_LOCKSCREEN_KEY, false, userId)); + } pw.println("SeparateChallenge: " + getSeparateProfileChallengeEnabledInternal(userId)); pw.println(TextUtils.formatSimple("Metrics: %s", getUserPasswordMetrics(userId) != null ? "known" : "unknown")); @@ -3615,11 +3634,19 @@ public class LockSettingsService extends ILockSettings.Stub { * release references to the argument. */ private void scheduleGc() { + // Cancel any existing GC request first, so that GC requests don't pile up if lockscreen + // credential operations are happening very quickly, e.g. as sometimes happens during tests. + // + // This delays the already-requested GC, but that is fine in practice where lockscreen + // operations don't happen very quickly. And the precise time that the sanitization happens + // isn't very important; doing it within a minute can be fine, for example. + mHandler.removeCallbacksAndMessages(mGcWorkToken); + mHandler.postDelayed(() -> { System.gc(); System.runFinalization(); System.gc(); - }, 2000); + }, mGcWorkToken, 2000); } private class DeviceProvisionedObserver extends ContentObserver { diff --git a/services/core/java/com/android/server/locksettings/LockSettingsShellCommand.java b/services/core/java/com/android/server/locksettings/LockSettingsShellCommand.java index 17f2fcc5b9d8..bb35b378866b 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsShellCommand.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsShellCommand.java @@ -340,6 +340,11 @@ class LockSettingsShellCommand extends ShellCommand { getOutPrintWriter().println("Profile uses unified challenge"); return false; } + if (mOld.isEmpty()) { + getOutPrintWriter().println( + "User has a lock credential, but old credential was not provided"); + return false; + } try { final boolean result = mLockPatternUtils.checkCredential(getOldCredential(), diff --git a/services/core/java/com/android/server/locksettings/LockSettingsStorage.java b/services/core/java/com/android/server/locksettings/LockSettingsStorage.java index 158d444bcff2..1e25f1cf1d5e 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsStorage.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsStorage.java @@ -140,7 +140,7 @@ class LockSettingsStorage { try { db.delete(TABLE, COLUMN_KEY + "=? AND " + COLUMN_USERID + "=?", new String[] {key, Integer.toString(userId)}); - db.insert(TABLE, null, cv); + db.insertOrThrow(TABLE, null, cv); db.setTransactionSuccessful(); mCache.putKeyValue(key, value, userId); } finally { diff --git a/services/core/java/com/android/server/locksettings/RebootEscrowManager.java b/services/core/java/com/android/server/locksettings/RebootEscrowManager.java index d0b8990e37c4..820c0efcc1cf 100644 --- a/services/core/java/com/android/server/locksettings/RebootEscrowManager.java +++ b/services/core/java/com/android/server/locksettings/RebootEscrowManager.java @@ -142,7 +142,6 @@ class RebootEscrowManager { ERROR_KEYSTORE_FAILURE, ERROR_NO_NETWORK, ERROR_TIMEOUT_EXHAUSTED, - ERROR_NO_REBOOT_ESCROW_DATA, }) @Retention(RetentionPolicy.SOURCE) @interface RebootEscrowErrorCode { @@ -158,7 +157,6 @@ class RebootEscrowManager { static final int ERROR_KEYSTORE_FAILURE = 7; static final int ERROR_NO_NETWORK = 8; static final int ERROR_TIMEOUT_EXHAUSTED = 9; - static final int ERROR_NO_REBOOT_ESCROW_DATA = 10; private @RebootEscrowErrorCode int mLoadEscrowDataErrorCode = ERROR_NONE; @@ -275,11 +273,6 @@ class RebootEscrowManager { "server_based_ror_enabled", false); } - public boolean waitForInternet() { - return DeviceConfig.getBoolean( - DeviceConfig.NAMESPACE_OTA, "wait_for_internet_ror", false); - } - public boolean isNetworkConnected() { final ConnectivityManager connectivityManager = mContext.getSystemService(ConnectivityManager.class); @@ -435,7 +428,7 @@ class RebootEscrowManager { /** Wrapper function to set error code serialized through handler, */ private void setLoadEscrowDataErrorCode(@RebootEscrowErrorCode int value, Handler handler) { - if (mInjector.waitForInternet()) { + if (Flags.waitForInternetRor()) { mInjector.post( handler, () -> { @@ -507,9 +500,6 @@ class RebootEscrowManager { if (rebootEscrowUsers.isEmpty()) { Slog.i(TAG, "No reboot escrow data found for users," + " skipping loading escrow data"); - setLoadEscrowDataErrorCode(ERROR_NO_REBOOT_ESCROW_DATA, retryHandler); - reportMetricOnRestoreComplete( - /* success= */ false, /* attemptCount= */ 1, retryHandler); clearMetricsStorage(); return; } @@ -521,7 +511,7 @@ class RebootEscrowManager { mWakeLock.acquire(mInjector.getWakeLockTimeoutMillis()); } - if (mInjector.waitForInternet()) { + if (Flags.waitForInternetRor()) { // Timeout to stop retrying same as the wake lock timeout. mInjector.postDelayed( retryHandler, @@ -558,7 +548,7 @@ class RebootEscrowManager { return; } - if (mInjector.waitForInternet()) { + if (Flags.waitForInternetRor()) { if (mRebootEscrowTimedOut) { Slog.w(TAG, "Failed to load reboot escrow data within timeout"); compareAndSetLoadEscrowDataErrorCode( diff --git a/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java b/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java index f4a6a0690656..47788f2e7d2f 100644 --- a/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java +++ b/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java @@ -1715,7 +1715,7 @@ class SyntheticPasswordManager { .setGatekeeperHAT(response.getPayload()).build(); if (response.getShouldReEnroll()) { try { - response = gatekeeper.enroll(userId, spHandle, spHandle, + response = gatekeeper.enroll(userId, spHandle, gatekeeperPassword, gatekeeperPassword); } catch (RemoteException e) { Slog.e(TAG, "Failed to invoke gatekeeper.enroll", e); diff --git a/services/core/java/com/android/server/locksettings/TEST_MAPPING b/services/core/java/com/android/server/locksettings/TEST_MAPPING index 256d9ba86a6f..d338c50bb8c1 100644 --- a/services/core/java/com/android/server/locksettings/TEST_MAPPING +++ b/services/core/java/com/android/server/locksettings/TEST_MAPPING @@ -1,28 +1,12 @@ { "presubmit-large": [ { - "name": "CtsDevicePolicyManagerTestCases", - "options": [ - { - "include-annotation": "com.android.cts.devicepolicy.annotations.LockSettingsTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsDevicePolicyManagerTestCases_LockSettingsTest" } ], "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.locksettings." - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksServicesTests_android_server_locksettings" } ], "postsubmit": [ diff --git a/services/core/java/com/android/server/locksettings/flags.aconfig b/services/core/java/com/android/server/locksettings/flags.aconfig new file mode 100644 index 000000000000..6818de91c98e --- /dev/null +++ b/services/core/java/com/android/server/locksettings/flags.aconfig @@ -0,0 +1,9 @@ +package: "com.android.server.locksettings" +container: "system" + +flag { + name: "wait_for_internet_ror" + namespace: "sudo" + description: "Feature flag to wait for internet connectivity before calling resume on reboot server." + bug: "231660348" +}
\ No newline at end of file diff --git a/services/core/java/com/android/server/locksettings/recoverablekeystore/storage/RecoverySnapshotStorage.java b/services/core/java/com/android/server/locksettings/recoverablekeystore/storage/RecoverySnapshotStorage.java index c02b103f1d33..404c8411f750 100644 --- a/services/core/java/com/android/server/locksettings/recoverablekeystore/storage/RecoverySnapshotStorage.java +++ b/services/core/java/com/android/server/locksettings/recoverablekeystore/storage/RecoverySnapshotStorage.java @@ -19,7 +19,6 @@ package com.android.server.locksettings.recoverablekeystore.storage; import android.annotation.Nullable; import android.os.Environment; import android.security.keystore.recovery.KeyChainSnapshot; -import android.util.Log; import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; @@ -29,9 +28,11 @@ import com.android.server.locksettings.recoverablekeystore.serialization import com.android.server.locksettings.recoverablekeystore.serialization .KeyChainSnapshotParserException; import com.android.server.locksettings.recoverablekeystore.serialization.KeyChainSnapshotSerializer; +import com.android.server.utils.Slogf; import java.io.File; import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.security.cert.CertificateEncodingException; @@ -81,12 +82,14 @@ public class RecoverySnapshotStorage { public synchronized void put(int uid, KeyChainSnapshot snapshot) { mSnapshotByUid.put(uid, snapshot); - try { - writeToDisk(uid, snapshot); + File snapshotFile = getSnapshotFile(uid); + try (FileOutputStream fileOutputStream = new FileOutputStream(snapshotFile)) { + KeyChainSnapshotSerializer.serialize(snapshot, fileOutputStream); } catch (IOException | CertificateEncodingException e) { - Log.e(TAG, - String.format(Locale.US, "Error persisting snapshot for %d to disk", uid), - e); + // If we fail to write the latest snapshot, we should delete any older snapshot that + // happens to be around. Otherwise snapshot syncs might end up going 'back in time'. + snapshotFile.delete(); + Slogf.e(TAG, e, "Error persisting snapshot for %d to disk", uid); } } @@ -100,10 +103,17 @@ public class RecoverySnapshotStorage { return snapshot; } - try { - return readFromDisk(uid); + File snapshotFile = getSnapshotFile(uid); + try (FileInputStream fileInputStream = new FileInputStream(snapshotFile)) { + return KeyChainSnapshotDeserializer.deserialize(fileInputStream); + } catch (FileNotFoundException e) { + Slogf.i(TAG, "Snapshot for uid %d not found", uid); + return null; } catch (IOException | KeyChainSnapshotParserException e) { - Log.e(TAG, String.format(Locale.US, "Error reading snapshot for %d from disk", uid), e); + // If we fail to read the latest snapshot, we should delete it in case it is in some way + // corrupted. We can regenerate snapshots anyway. + snapshotFile.delete(); + Slogf.e(TAG, e, "Error reading snapshot for %d from disk", uid); return null; } } @@ -116,50 +126,6 @@ public class RecoverySnapshotStorage { getSnapshotFile(uid).delete(); } - /** - * Writes the snapshot for recovery agent {@code uid} to disk. - * - * @throws IOException if an IO error occurs writing to disk. - */ - private void writeToDisk(int uid, KeyChainSnapshot snapshot) - throws IOException, CertificateEncodingException { - File snapshotFile = getSnapshotFile(uid); - - try ( - FileOutputStream fileOutputStream = new FileOutputStream(snapshotFile) - ) { - KeyChainSnapshotSerializer.serialize(snapshot, fileOutputStream); - } catch (IOException | CertificateEncodingException e) { - // If we fail to write the latest snapshot, we should delete any older snapshot that - // happens to be around. Otherwise snapshot syncs might end up going 'back in time'. - snapshotFile.delete(); - throw e; - } - } - - /** - * Reads the last snapshot for recovery agent {@code uid} from disk. - * - * @return The snapshot, or null if none existed. - * @throws IOException if an IO error occurs reading from disk. - */ - @Nullable - private KeyChainSnapshot readFromDisk(int uid) - throws IOException, KeyChainSnapshotParserException { - File snapshotFile = getSnapshotFile(uid); - - try ( - FileInputStream fileInputStream = new FileInputStream(snapshotFile) - ) { - return KeyChainSnapshotDeserializer.deserialize(fileInputStream); - } catch (IOException | KeyChainSnapshotParserException e) { - // If we fail to read the latest snapshot, we should delete it in case it is in some way - // corrupted. We can regenerate snapshots anyway. - snapshotFile.delete(); - throw e; - } - } - private File getSnapshotFile(int uid) { File folder = getStorageFolder(); String fileName = getSnapshotFileName(uid); diff --git a/services/core/java/com/android/server/logcat/TEST_MAPPING b/services/core/java/com/android/server/logcat/TEST_MAPPING index 904155226d7f..688dbe9ec444 100644 --- a/services/core/java/com/android/server/logcat/TEST_MAPPING +++ b/services/core/java/com/android/server/logcat/TEST_MAPPING @@ -1,19 +1,12 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.logcat"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksServicesTests_android_server_logcat" } ], "postsubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.logcat"} - ] + "name": "FrameworksServicesTests_android_server_logcat" } ] } diff --git a/services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java b/services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java index 3673eb027096..56b93e8ded82 100644 --- a/services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java +++ b/services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java @@ -839,6 +839,13 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider { + "Disallowed route: " + route); } + + if (route.isSystemRouteType()) { + throw new SecurityException( + "Only the system is allowed to publish routes with system route types. " + + "Disallowed route: " + + route); + } } Connection connection = mConnectionRef.get(); diff --git a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java index ba7d3b8c76d2..44fd3d6eb921 100644 --- a/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +++ b/services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java @@ -288,7 +288,7 @@ class MediaRouter2ServiceImpl { == PackageManager.PERMISSION_GRANTED; final boolean hasModifyAudioRoutingPermission = checkCallerHasModifyAudioRoutingPermission(pid, uid); - + boolean hasMediaContentControlPermission = checkMediaContentControlPermission(uid, pid); boolean hasMediaRoutingControlPermission = checkMediaRoutingControlPermission(uid, pid, packageName); @@ -303,6 +303,7 @@ class MediaRouter2ServiceImpl { userId, hasConfigureWifiDisplayPermission, hasModifyAudioRoutingPermission, + hasMediaContentControlPermission, hasMediaRoutingControlPermission); } } finally { @@ -323,6 +324,12 @@ class MediaRouter2ServiceImpl { } } + @RequiresPermission( + anyOf = { + Manifest.permission.MEDIA_ROUTING_CONTROL, + Manifest.permission.MEDIA_CONTENT_CONTROL + }, + conditional = true) public void updateScanningState( @NonNull IMediaRouter2 router, @ScanningState int scanningState) { Objects.requireNonNull(router, "router must not be null"); @@ -1129,6 +1136,7 @@ class MediaRouter2ServiceImpl { int userId, boolean hasConfigureWifiDisplayPermission, boolean hasModifyAudioRoutingPermission, + boolean hasMediaContentControlPermission, boolean hasMediaRoutingControlPermission) { final IBinder binder = router.asBinder(); if (mAllRouterRecords.get(binder) != null) { @@ -1147,6 +1155,7 @@ class MediaRouter2ServiceImpl { packageName, hasConfigureWifiDisplayPermission, hasModifyAudioRoutingPermission, + hasMediaContentControlPermission, hasMediaRoutingControlPermission); try { binder.linkToDeath(routerRecord, 0); @@ -1209,6 +1218,12 @@ class MediaRouter2ServiceImpl { disposeUserIfNeededLocked(userRecord); // since router removed from user } + @RequiresPermission( + anyOf = { + Manifest.permission.MEDIA_ROUTING_CONTROL, + Manifest.permission.MEDIA_CONTENT_CONTROL + }, + conditional = true) @GuardedBy("mLock") private void updateScanningStateLocked( @NonNull IMediaRouter2 router, @ScanningState int scanningState) { @@ -1219,7 +1234,11 @@ class MediaRouter2ServiceImpl { return; } + boolean enableScanViaMediaContentControl = + Flags.enableFullScanWithMediaContentControl() + && routerRecord.mHasMediaContentControlPermission; if (scanningState == SCANNING_STATE_SCANNING_FULL + && !enableScanViaMediaContentControl && !routerRecord.mHasMediaRoutingControl) { throw new SecurityException("Screen off scan requires MEDIA_ROUTING_CONTROL"); } @@ -1672,7 +1691,11 @@ class MediaRouter2ServiceImpl { return; } + boolean enableScanViaMediaContentControl = + Flags.enableFullScanWithMediaContentControl() + && managerRecord.mHasMediaContentControl; if (!managerRecord.mHasMediaRoutingControl + && !enableScanViaMediaContentControl && scanningState == SCANNING_STATE_SCANNING_FULL) { throw new SecurityException("Screen off scan requires MEDIA_ROUTING_CONTROL"); } @@ -2063,9 +2086,10 @@ class MediaRouter2ServiceImpl { public final int mPid; public final boolean mHasConfigureWifiDisplayPermission; public final boolean mHasModifyAudioRoutingPermission; + public final boolean mHasMediaContentControlPermission; + public final boolean mHasMediaRoutingControl; public final AtomicBoolean mHasBluetoothRoutingPermission; public final int mRouterId; - public final boolean mHasMediaRoutingControl; public @ScanningState int mScanningState = SCANNING_STATE_NOT_SCANNING; public RouteDiscoveryPreference mDiscoveryPreference; @@ -2079,6 +2103,7 @@ class MediaRouter2ServiceImpl { String packageName, boolean hasConfigureWifiDisplayPermission, boolean hasModifyAudioRoutingPermission, + boolean hasMediaContentControlPermission, boolean hasMediaRoutingControl) { mUserRecord = userRecord; mPackageName = packageName; @@ -2089,9 +2114,10 @@ class MediaRouter2ServiceImpl { mPid = pid; mHasConfigureWifiDisplayPermission = hasConfigureWifiDisplayPermission; mHasModifyAudioRoutingPermission = hasModifyAudioRoutingPermission; + mHasMediaContentControlPermission = hasMediaContentControlPermission; + mHasMediaRoutingControl = hasMediaRoutingControl; mHasBluetoothRoutingPermission = new AtomicBoolean(checkCallerHasBluetoothPermissions(mPid, mUid)); - mHasMediaRoutingControl = hasMediaRoutingControl; mRouterId = mNextRouterOrManagerId.getAndIncrement(); } diff --git a/services/core/java/com/android/server/media/MediaRouterService.java b/services/core/java/com/android/server/media/MediaRouterService.java index 1188a0764051..363b8e4228b0 100644 --- a/services/core/java/com/android/server/media/MediaRouterService.java +++ b/services/core/java/com/android/server/media/MediaRouterService.java @@ -443,6 +443,12 @@ public final class MediaRouterService extends IMediaRouterService.Stub // Binder call @Override + @RequiresPermission( + anyOf = { + Manifest.permission.MEDIA_ROUTING_CONTROL, + Manifest.permission.MEDIA_CONTENT_CONTROL + }, + conditional = true) public void updateScanningStateWithRouter2( IMediaRouter2 router, @ScanningState int scanningState) { mService2.updateScanningState(router, scanningState); diff --git a/services/core/java/com/android/server/media/MediaSession2Record.java b/services/core/java/com/android/server/media/MediaSession2Record.java index 89555a9f1de4..c8a87994ee16 100644 --- a/services/core/java/com/android/server/media/MediaSession2Record.java +++ b/services/core/java/com/android/server/media/MediaSession2Record.java @@ -161,6 +161,11 @@ public class MediaSession2Record extends MediaSessionRecordImpl { } @Override + public void onGlobalPrioritySessionActiveChanged(boolean isGlobalPrioritySessionActive) { + // NA as MediaSession2 doesn't support UserEngagementStates for FGS. + } + + @Override public boolean sendMediaButton(String packageName, int pid, int uid, boolean asSystemService, KeyEvent ke, int sequenceId, ResultReceiver cb) { // TODO(jaewan): Implement. diff --git a/services/core/java/com/android/server/media/MediaSessionRecord.java b/services/core/java/com/android/server/media/MediaSessionRecord.java index 0a9109b3e98c..0d779af22c2d 100644 --- a/services/core/java/com/android/server/media/MediaSessionRecord.java +++ b/services/core/java/com/android/server/media/MediaSessionRecord.java @@ -234,51 +234,49 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde private final Runnable mUserEngagementTimeoutExpirationRunnable = () -> { synchronized (mLock) { - updateUserEngagedStateIfNeededLocked(/* isTimeoutExpired= */ true); + updateUserEngagedStateIfNeededLocked( + /* isTimeoutExpired= */ true, + /* isGlobalPrioritySessionActive= */ false); } }; @GuardedBy("mLock") private @UserEngagementState int mUserEngagementState = USER_DISENGAGED; - @IntDef({USER_PERMANENTLY_ENGAGED, USER_TEMPORARY_ENGAGED, USER_DISENGAGED}) + @IntDef({USER_PERMANENTLY_ENGAGED, USER_TEMPORARILY_ENGAGED, USER_DISENGAGED}) @Retention(RetentionPolicy.SOURCE) private @interface UserEngagementState {} /** - * Indicates that the session is active and in one of the user engaged states. + * Indicates that the session is {@linkplain MediaSession#isActive() active} and in one of the + * {@linkplain PlaybackState#isActive() active states}. * * @see #updateUserEngagedStateIfNeededLocked(boolean) */ private static final int USER_PERMANENTLY_ENGAGED = 0; /** - * Indicates that the session is active and in {@link PlaybackState#STATE_PAUSED} state. + * Indicates that the session is {@linkplain MediaSession#isActive() active} and has recently + * switched to one of the {@linkplain PlaybackState#isActive() inactive states}. * * @see #updateUserEngagedStateIfNeededLocked(boolean) */ - private static final int USER_TEMPORARY_ENGAGED = 1; + private static final int USER_TEMPORARILY_ENGAGED = 1; /** - * Indicates that the session is either not active or in one of the user disengaged states + * Indicates that the session is either not {@linkplain MediaSession#isActive() active} or in + * one of the {@linkplain PlaybackState#isActive() inactive states}. * * @see #updateUserEngagedStateIfNeededLocked(boolean) */ private static final int USER_DISENGAGED = 2; /** - * Indicates the duration of the temporary engaged states, in milliseconds. + * Indicates the duration of the temporary engaged state, in milliseconds. * - * <p>Some {@link MediaSession} states like {@link PlaybackState#STATE_PAUSED} are temporarily - * engaged, meaning the corresponding session is only considered in an engaged state for the - * duration of this timeout, and only if coming from an engaged state. - * - * <p>For example, if a session is transitioning from a user-engaged state {@link - * PlaybackState#STATE_PLAYING} to a temporary user-engaged state {@link - * PlaybackState#STATE_PAUSED}, then the session will be considered in a user-engaged state for - * the duration of this timeout, starting at the transition instant. However, a temporary - * user-engaged state is not considered user-engaged when transitioning from a non-user engaged - * state {@link PlaybackState#STATE_STOPPED}. + * <p>When switching to an {@linkplain PlaybackState#isActive() inactive state}, the user is + * treated as temporarily engaged, meaning the corresponding session is only considered in an + * engaged state for the duration of this timeout, and only if coming from an engaged state. */ private static final int TEMP_USER_ENGAGED_TIMEOUT_MS = 600000; @@ -604,7 +602,8 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde mSessionCb.mCb.asBinder().unlinkToDeath(this, 0); mDestroyed = true; mPlaybackState = null; - updateUserEngagedStateIfNeededLocked(/* isTimeoutExpired= */ true); + updateUserEngagedStateIfNeededLocked( + /* isTimeoutExpired= */ true, /* isGlobalPrioritySessionActive= */ false); mHandler.post(MessageHandler.MSG_DESTROYED); } } @@ -621,6 +620,24 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde mHandler.post(mUserEngagementTimeoutExpirationRunnable); } + @Override + public void onGlobalPrioritySessionActiveChanged(boolean isGlobalPrioritySessionActive) { + mHandler.post( + () -> { + synchronized (mLock) { + if (isGlobalPrioritySessionActive) { + mHandler.removeCallbacks(mUserEngagementTimeoutExpirationRunnable); + } else { + if (mUserEngagementState == USER_TEMPORARILY_ENGAGED) { + mHandler.postDelayed( + mUserEngagementTimeoutExpirationRunnable, + TEMP_USER_ENGAGED_TIMEOUT_MS); + } + } + } + }); + } + /** * Sends media button. * @@ -1111,21 +1128,20 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde } @GuardedBy("mLock") - private void updateUserEngagedStateIfNeededLocked(boolean isTimeoutExpired) { + private void updateUserEngagedStateIfNeededLocked( + boolean isTimeoutExpired, boolean isGlobalPrioritySessionActive) { if (!Flags.enableNotifyingActivityManagerWithMediaSessionStatusChange()) { return; } int oldUserEngagedState = mUserEngagementState; int newUserEngagedState; - if (!isActive() || mPlaybackState == null || mDestroyed) { + if (!isActive() || mPlaybackState == null) { newUserEngagedState = USER_DISENGAGED; - } else if (isActive() && mPlaybackState.isActive()) { + } else if (mPlaybackState.isActive()) { newUserEngagedState = USER_PERMANENTLY_ENGAGED; - } else if (mPlaybackState.getState() == PlaybackState.STATE_PAUSED) { - newUserEngagedState = - oldUserEngagedState == USER_PERMANENTLY_ENGAGED || !isTimeoutExpired - ? USER_TEMPORARY_ENGAGED - : USER_DISENGAGED; + } else if (oldUserEngagedState == USER_PERMANENTLY_ENGAGED + || (oldUserEngagedState == USER_TEMPORARILY_ENGAGED && !isTimeoutExpired)) { + newUserEngagedState = USER_TEMPORARILY_ENGAGED; } else { newUserEngagedState = USER_DISENGAGED; } @@ -1134,7 +1150,7 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde } mUserEngagementState = newUserEngagedState; - if (newUserEngagedState == USER_TEMPORARY_ENGAGED) { + if (newUserEngagedState == USER_TEMPORARILY_ENGAGED && !isGlobalPrioritySessionActive) { mHandler.postDelayed( mUserEngagementTimeoutExpirationRunnable, TEMP_USER_ENGAGED_TIMEOUT_MS); } else { @@ -1189,9 +1205,11 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde .logFgsApiEnd(ActivityManager.FOREGROUND_SERVICE_API_TYPE_MEDIA_PLAYBACK, callingUid, callingPid); } + boolean isGlobalPrioritySessionActive = mService.isGlobalPrioritySessionActive(); synchronized (mLock) { mIsActive = active; - updateUserEngagedStateIfNeededLocked(/* isTimeoutExpired= */ false); + updateUserEngagedStateIfNeededLocked( + /* isTimeoutExpired= */ false, isGlobalPrioritySessionActive); } long token = Binder.clearCallingIdentity(); try { @@ -1348,9 +1366,11 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde boolean shouldUpdatePriority = ALWAYS_PRIORITY_STATES.contains(newState) || (!TRANSITION_PRIORITY_STATES.contains(oldState) && TRANSITION_PRIORITY_STATES.contains(newState)); + boolean isGlobalPrioritySessionActive = mService.isGlobalPrioritySessionActive(); synchronized (mLock) { mPlaybackState = state; - updateUserEngagedStateIfNeededLocked(/* isTimeoutExpired= */ false); + updateUserEngagedStateIfNeededLocked( + /* isTimeoutExpired= */ false, isGlobalPrioritySessionActive); } final long token = Binder.clearCallingIdentity(); try { diff --git a/services/core/java/com/android/server/media/MediaSessionRecordImpl.java b/services/core/java/com/android/server/media/MediaSessionRecordImpl.java index 15f90d4fdd0e..6c3b1234935a 100644 --- a/services/core/java/com/android/server/media/MediaSessionRecordImpl.java +++ b/services/core/java/com/android/server/media/MediaSessionRecordImpl.java @@ -206,6 +206,10 @@ public abstract class MediaSessionRecordImpl { */ public abstract void expireTempEngaged(); + /** Notifies record that the global priority session active state changed. */ + public abstract void onGlobalPrioritySessionActiveChanged( + boolean isGlobalPrioritySessionActive); + @Override public final boolean equals(Object o) { if (this == o) return true; diff --git a/services/core/java/com/android/server/media/MediaSessionService.java b/services/core/java/com/android/server/media/MediaSessionService.java index 1ebc856af2d8..2b29fbd9c5b5 100644 --- a/services/core/java/com/android/server/media/MediaSessionService.java +++ b/services/core/java/com/android/server/media/MediaSessionService.java @@ -362,6 +362,7 @@ public class MediaSessionService extends SystemService implements Monitor { + record.isActive()); } user.pushAddressedPlayerChangedLocked(); + mHandler.post(this::notifyGlobalPrioritySessionActiveChanged); } else { if (!user.mPriorityStack.contains(record)) { Log.w(TAG, "Unknown session updated. Ignoring."); @@ -394,11 +395,16 @@ public class MediaSessionService extends SystemService implements Monitor { // Currently only media1 can become global priority session. void setGlobalPrioritySession(MediaSessionRecord record) { + boolean globalPrioritySessionActiveChanged = false; synchronized (mLock) { FullUserRecord user = getFullUserRecordLocked(record.getUserId()); if (mGlobalPrioritySession != record) { Log.d(TAG, "Global priority session is changed from " + mGlobalPrioritySession + " to " + record); + globalPrioritySessionActiveChanged = + (mGlobalPrioritySession == null && record.isActive()) + || (mGlobalPrioritySession != null + && mGlobalPrioritySession.isActive() != record.isActive()); mGlobalPrioritySession = record; if (user != null && user.mPriorityStack.contains(record)) { // Handle the global priority session separately. @@ -409,6 +415,30 @@ public class MediaSessionService extends SystemService implements Monitor { } } } + if (globalPrioritySessionActiveChanged) { + mHandler.post(this::notifyGlobalPrioritySessionActiveChanged); + } + } + + /** Returns whether the global priority session is active. */ + boolean isGlobalPrioritySessionActive() { + synchronized (mLock) { + return isGlobalPriorityActiveLocked(); + } + } + + private void notifyGlobalPrioritySessionActiveChanged() { + if (!Flags.enableNotifyingActivityManagerWithMediaSessionStatusChange()) { + return; + } + synchronized (mLock) { + boolean isGlobalPriorityActive = isGlobalPriorityActiveLocked(); + for (Set<MediaSessionRecordImpl> records : mUserEngagedSessionsForFgs.values()) { + for (MediaSessionRecordImpl record : records) { + record.onGlobalPrioritySessionActiveChanged(isGlobalPriorityActive); + } + } + } } private List<MediaSessionRecord> getActiveSessionsLocked(int userId) { @@ -646,8 +676,11 @@ public class MediaSessionService extends SystemService implements Monitor { if (mGlobalPrioritySession == session) { mGlobalPrioritySession = null; - if (session.isActive() && user != null) { - user.pushAddressedPlayerChangedLocked(); + if (session.isActive()) { + if (user != null) { + user.pushAddressedPlayerChangedLocked(); + } + mHandler.post(this::notifyGlobalPrioritySessionActiveChanged); } } else { if (user != null) { diff --git a/services/core/java/com/android/server/media/projection/TEST_MAPPING b/services/core/java/com/android/server/media/projection/TEST_MAPPING index 7aa9118e45ee..b33097c50002 100644 --- a/services/core/java/com/android/server/media/projection/TEST_MAPPING +++ b/services/core/java/com/android/server/media/projection/TEST_MAPPING @@ -1,15 +1,7 @@ { "presubmit": [ { - "name": "MediaProjectionTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "MediaProjectionTests" } ] } diff --git a/services/core/java/com/android/server/net/Android.bp b/services/core/java/com/android/server/net/Android.bp index 3ac2d232dfc8..68dc7816c5a4 100644 --- a/services/core/java/com/android/server/net/Android.bp +++ b/services/core/java/com/android/server/net/Android.bp @@ -9,3 +9,10 @@ java_aconfig_library { name: "net_flags_lib", aconfig_declarations: "net_flags", } + +java_aconfig_library { + name: "net_flags_host_lib", + aconfig_declarations: "net_flags", + host_supported: true, + mode: "test", +} diff --git a/services/core/java/com/android/server/net/NetworkManagementService.java b/services/core/java/com/android/server/net/NetworkManagementService.java index 5ea3e70f7957..74f0d9cf3e39 100644 --- a/services/core/java/com/android/server/net/NetworkManagementService.java +++ b/services/core/java/com/android/server/net/NetworkManagementService.java @@ -81,8 +81,6 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.app.IBatteryStats; import com.android.internal.util.DumpUtils; import com.android.internal.util.HexDump; -import com.android.modules.utils.build.SdkLevel; -import com.android.net.module.util.NetdUtils; import com.android.net.module.util.PermissionUtils; import com.android.server.FgThread; import com.android.server.LocalServices; @@ -833,144 +831,6 @@ public class NetworkManagementService extends INetworkManagementService.Stub { } @Override - public boolean getIpForwardingEnabled() throws IllegalStateException{ - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException( - "NMS#getIpForwardingEnabled not supported in V+"); - } - try { - return mNetdService.ipfwdEnabled(); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void setIpForwardingEnabled(boolean enable) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException( - "NMS#setIpForwardingEnabled not supported in V+"); - } try { - if (enable) { - mNetdService.ipfwdEnableForwarding("tethering"); - } else { - mNetdService.ipfwdDisableForwarding("tethering"); - } - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void startTethering(String[] dhcpRange) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#startTethering not supported in V+"); - } - try { - NetdUtils.tetherStart(mNetdService, true /* usingLegacyDnsProxy */, dhcpRange); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void stopTethering() { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#stopTethering not supported in V+"); - } - try { - mNetdService.tetherStop(); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public boolean isTetheringStarted() { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#isTetheringStarted not supported in V+"); - } - try { - return mNetdService.tetherIsEnabled(); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void tetherInterface(String iface) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#tetherInterface not supported in V+"); - } - try { - final LinkAddress addr = getInterfaceConfig(iface).getLinkAddress(); - final IpPrefix dest = new IpPrefix(addr.getAddress(), addr.getPrefixLength()); - NetdUtils.tetherInterface(mNetdService, iface, dest); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void untetherInterface(String iface) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#untetherInterface not supported in V+"); - } - try { - NetdUtils.untetherInterface(mNetdService, iface); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public String[] listTetheredInterfaces() { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException( - "NMS#listTetheredInterfaces not supported in V+"); - } - try { - return mNetdService.tetherInterfaceList(); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void enableNat(String internalInterface, String externalInterface) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#enableNat not supported in V+"); - } - try { - mNetdService.tetherAddForward(internalInterface, externalInterface); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override - public void disableNat(String internalInterface, String externalInterface) { - PermissionUtils.enforceNetworkStackPermission(mContext); - if (SdkLevel.isAtLeastV()) { - throw new UnsupportedOperationException("NMS#disableNat not supported in V+"); - } - try { - mNetdService.tetherRemoveForward(internalInterface, externalInterface); - } catch (RemoteException | ServiceSpecificException e) { - throw new IllegalStateException(e); - } - } - - @Override public void setInterfaceQuota(String iface, long quotaBytes) { PermissionUtils.enforceNetworkStackPermission(mContext); @@ -1126,30 +986,19 @@ public class NetworkManagementService extends INetworkManagementService.Stub { } Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "setDataSaverModeEnabled"); try { - if (SdkLevel.isAtLeastV()) { - // setDataSaverEnabled throws if it fails to set data saver. - mContext.getSystemService(ConnectivityManager.class) - .setDataSaverEnabled(enable); - mDataSaverMode = enable; - if (mUseMeteredFirewallChains) { - // Copy mDataSaverMode state to FIREWALL_CHAIN_METERED_ALLOW - // until ConnectivityService allows manipulation of the data saver mode via - // FIREWALL_CHAIN_METERED_ALLOW. - synchronized (mRulesLock) { - mFirewallChainStates.put(FIREWALL_CHAIN_METERED_ALLOW, enable); - } - } - return true; - } else { - final boolean changed = mNetdService.bandwidthEnableDataSaver(enable); - if (changed) { - mDataSaverMode = enable; - } else { - Log.e(TAG, "setDataSaverMode(" + enable + "): failed to set iptables"); + // setDataSaverEnabled throws if it fails to set data saver. + mContext.getSystemService(ConnectivityManager.class).setDataSaverEnabled(enable); + mDataSaverMode = enable; + if (mUseMeteredFirewallChains) { + // Copy mDataSaverMode state to FIREWALL_CHAIN_METERED_ALLOW + // until ConnectivityService allows manipulation of the data saver mode via + // FIREWALL_CHAIN_METERED_ALLOW. + synchronized (mRulesLock) { + mFirewallChainStates.put(FIREWALL_CHAIN_METERED_ALLOW, enable); } - return changed; } - } catch (RemoteException | IllegalStateException e) { + return true; + } catch (IllegalStateException e) { Log.e(TAG, "setDataSaverMode(" + enable + "): failed with exception", e); return false; } finally { diff --git a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java index d9e22c5a270f..7de2815eba6b 100644 --- a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java +++ b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java @@ -513,12 +513,6 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { private boolean mLoadedRestrictBackground; /** - * Whether or not network for apps in proc-states greater than - * {@link NetworkPolicyManager#BACKGROUND_THRESHOLD_STATE} is always blocked. - */ - private boolean mBackgroundNetworkRestricted; - - /** * Whether or not metered firewall chains should be used for uid policy controlling access to * metered networks. */ @@ -530,6 +524,12 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { */ private boolean mUseDifferentDelaysForBackgroundChain; + /** + * Core uids and apps without the internet permission will not have any firewall rules applied + * to them. + */ + private boolean mNeverApplyRulesToCoreUids; + // See main javadoc for instructions on how to use these locks. final Object mUidRulesFirstLock = new Object(); final Object mNetworkPoliciesSecondLock = new Object(); @@ -622,16 +622,6 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { @GuardedBy("mUidRulesFirstLock") final SparseIntArray mUidFirewallStandbyRules = new SparseIntArray(); - @GuardedBy("mUidRulesFirstLock") - final SparseIntArray mUidFirewallDozableRules = new SparseIntArray(); - @GuardedBy("mUidRulesFirstLock") - final SparseIntArray mUidFirewallPowerSaveRules = new SparseIntArray(); - @GuardedBy("mUidRulesFirstLock") - final SparseIntArray mUidFirewallBackgroundRules = new SparseIntArray(); - @GuardedBy("mUidRulesFirstLock") - final SparseIntArray mUidFirewallRestrictedModeRules = new SparseIntArray(); - @GuardedBy("mUidRulesFirstLock") - final SparseIntArray mUidFirewallLowPowerStandbyModeRules = new SparseIntArray(); /** Set of states for the child firewall chains. True if the chain is active. */ @GuardedBy("mUidRulesFirstLock") @@ -770,7 +760,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { /** List of apps indexed by uid and whether they have the internet permission */ @GuardedBy("mUidRulesFirstLock") - private final SparseBooleanArray mInternetPermissionMap = new SparseBooleanArray(); + @VisibleForTesting + final SparseBooleanArray mInternetPermissionMap = new SparseBooleanArray(); /** * Map of uid -> UidStateCallbackInfo objects holding the data received from @@ -1048,6 +1039,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { mUseMeteredFirewallChains = Flags.useMeteredFirewallChains(); mUseDifferentDelaysForBackgroundChain = Flags.useDifferentDelaysForBackgroundChain(); + mNeverApplyRulesToCoreUids = Flags.neverApplyRulesToCoreUids(); synchronized (mUidRulesFirstLock) { synchronized (mNetworkPoliciesSecondLock) { @@ -1119,14 +1111,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { writePolicyAL(); } - // The flag is boot-stable. - mBackgroundNetworkRestricted = Flags.networkBlockedForTopSleepingAndAbove(); - if (mBackgroundNetworkRestricted) { - // Firewall rules and UidBlockedState will get updated in - // updateRulesForGlobalChangeAL below. - enableFirewallChainUL(FIREWALL_CHAIN_BACKGROUND, true); - } - + enableFirewallChainUL(FIREWALL_CHAIN_BACKGROUND, true); setRestrictBackgroundUL(mLoadedRestrictBackground, "init_service"); updateRulesForGlobalChangeAL(false); updateNotificationsNL(); @@ -1137,11 +1122,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { final int changes = ActivityManager.UID_OBSERVER_PROCSTATE | ActivityManager.UID_OBSERVER_GONE | ActivityManager.UID_OBSERVER_CAPABILITY; - - final int cutpoint = mBackgroundNetworkRestricted ? PROCESS_STATE_UNKNOWN - : NetworkPolicyManager.FOREGROUND_THRESHOLD_STATE; mActivityManagerInternal.registerNetworkPolicyUidObserver(mUidObserver, changes, - cutpoint, "android"); + PROCESS_STATE_UNKNOWN, "android"); mNetworkManager.registerObserver(mAlertObserver); } catch (RemoteException e) { // ignored; both services live in system_server @@ -1282,21 +1264,19 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { // different chains may change. return true; } - if (mBackgroundNetworkRestricted) { - if ((previousProcState >= BACKGROUND_THRESHOLD_STATE) + if ((previousProcState >= BACKGROUND_THRESHOLD_STATE) != (newProcState >= BACKGROUND_THRESHOLD_STATE)) { - // Proc-state change crossed BACKGROUND_THRESHOLD_STATE: The network rules will - // need to be re-evaluated for the background chain. - return true; - } - if (mUseDifferentDelaysForBackgroundChain - && newProcState >= BACKGROUND_THRESHOLD_STATE - && getBackgroundTransitioningDelay(newProcState) - < getBackgroundTransitioningDelay(previousProcState)) { - // The old and new proc-state both are in the blocked state but the background - // transition delay is reduced, so we may have to update the rules sooner. - return true; - } + // Proc-state change crossed BACKGROUND_THRESHOLD_STATE: The network rules will + // need to be re-evaluated for the background chain. + return true; + } + if (mUseDifferentDelaysForBackgroundChain + && newProcState >= BACKGROUND_THRESHOLD_STATE + && getBackgroundTransitioningDelay(newProcState) + < getBackgroundTransitioningDelay(previousProcState)) { + // The old and new proc-state both are in the blocked state but the background + // transition delay is reduced, so we may have to update the rules sooner. + return true; } final int networkCapabilities = PROCESS_CAPABILITY_POWER_RESTRICTED_NETWORK | PROCESS_CAPABILITY_USER_RESTRICTED_NETWORK; @@ -1369,9 +1349,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { // on background handler thread, and POWER_SAVE_WHITELIST_CHANGED is protected synchronized (mUidRulesFirstLock) { updatePowerSaveAllowlistUL(); - if (mBackgroundNetworkRestricted) { - updateRulesForBackgroundChainUL(); - } + updateRulesForBackgroundChainUL(); updateRulesForRestrictPowerUL(); updateRulesForAppIdleUL(); } @@ -3102,11 +3080,16 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } synchronized (mUidRulesFirstLock) { - final int oldPolicy = mUidPolicy.get(uid, POLICY_NONE); - policy |= oldPolicy; - if (oldPolicy != policy) { - setUidPolicyUncheckedUL(uid, oldPolicy, policy, true); - mLogger.uidPolicyChanged(uid, oldPolicy, policy); + final long token = Binder.clearCallingIdentity(); + try { + final int oldPolicy = mUidPolicy.get(uid, POLICY_NONE); + policy |= oldPolicy; + if (oldPolicy != policy) { + setUidPolicyUncheckedUL(uid, oldPolicy, policy, true); + mLogger.uidPolicyChanged(uid, oldPolicy, policy); + } + } finally { + Binder.restoreCallingIdentity(token); } } } @@ -3121,11 +3104,16 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } synchronized (mUidRulesFirstLock) { - final int oldPolicy = mUidPolicy.get(uid, POLICY_NONE); - policy = oldPolicy & ~policy; - if (oldPolicy != policy) { - setUidPolicyUncheckedUL(uid, oldPolicy, policy, true); - mLogger.uidPolicyChanged(uid, oldPolicy, policy); + final long token = Binder.clearCallingIdentity(); + try { + final int oldPolicy = mUidPolicy.get(uid, POLICY_NONE); + policy = oldPolicy & ~policy; + if (oldPolicy != policy) { + setUidPolicyUncheckedUL(uid, oldPolicy, policy, true); + mLogger.uidPolicyChanged(uid, oldPolicy, policy); + } + } finally { + Binder.restoreCallingIdentity(token); } } } @@ -4092,12 +4080,12 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { fout.println(); fout.println("Flags:"); - fout.println(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE + ": " - + mBackgroundNetworkRestricted); fout.println(Flags.FLAG_USE_METERED_FIREWALL_CHAINS + ": " + mUseMeteredFirewallChains); fout.println(Flags.FLAG_USE_DIFFERENT_DELAYS_FOR_BACKGROUND_CHAIN + ": " + mUseDifferentDelaysForBackgroundChain); + fout.println(Flags.FLAG_NEVER_APPLY_RULES_TO_CORE_UIDS + ": " + + mNeverApplyRulesToCoreUids); fout.println(); fout.println("mRestrictBackgroundLowPowerMode: " + mRestrictBackgroundLowPowerMode); @@ -4118,7 +4106,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { fout.increaseIndent(); for (int i = 0; i < mSubscriptionPlans.size(); i++) { final int subId = mSubscriptionPlans.keyAt(i); - fout.println("Subscriber ID " + subId + ":"); + fout.println("Subscription ID " + subId + ":"); fout.increaseIndent(); final SubscriptionPlan[] plans = mSubscriptionPlans.valueAt(i); if (!ArrayUtils.isEmpty(plans)) { @@ -4241,35 +4229,33 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { fout.decreaseIndent(); } - if (mBackgroundNetworkRestricted) { + fout.println(); + if (mUseDifferentDelaysForBackgroundChain) { + fout.print("Background restrictions short delay: "); + TimeUtils.formatDuration(mBackgroundRestrictionShortDelayMs, fout); fout.println(); - if (mUseDifferentDelaysForBackgroundChain) { - fout.print("Background restrictions short delay: "); - TimeUtils.formatDuration(mBackgroundRestrictionShortDelayMs, fout); - fout.println(); - fout.print("Background restrictions long delay: "); - TimeUtils.formatDuration(mBackgroundRestrictionLongDelayMs, fout); - fout.println(); - } + fout.print("Background restrictions long delay: "); + TimeUtils.formatDuration(mBackgroundRestrictionLongDelayMs, fout); + fout.println(); + } - size = mBackgroundTransitioningUids.size(); - if (size > 0) { - final long nowUptime = SystemClock.uptimeMillis(); - fout.println("Uids transitioning to background:"); - fout.increaseIndent(); - for (int i = 0; i < size; i++) { - fout.print("UID="); - fout.print(mBackgroundTransitioningUids.keyAt(i)); - fout.print(", "); - TimeUtils.formatDuration(mBackgroundTransitioningUids.valueAt(i), - nowUptime, fout); - fout.println(); - } - fout.decreaseIndent(); + size = mBackgroundTransitioningUids.size(); + if (size > 0) { + final long nowUptime = SystemClock.uptimeMillis(); + fout.println("Uids transitioning to background:"); + fout.increaseIndent(); + for (int i = 0; i < size; i++) { + fout.print("UID="); + fout.print(mBackgroundTransitioningUids.keyAt(i)); + fout.print(", "); + TimeUtils.formatDuration(mBackgroundTransitioningUids.valueAt(i), + nowUptime, fout); + fout.println(); } - fout.println(); + fout.decreaseIndent(); } + fout.println(); final SparseBooleanArray knownUids = new SparseBooleanArray(); collectKeys(mUidState, knownUids); @@ -4455,51 +4441,49 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } updatePowerRestrictionRules = true; } - if (mBackgroundNetworkRestricted) { - final boolean wasAllowed = isProcStateAllowedNetworkWhileBackground( - oldUidState); - final boolean isAllowed = isProcStateAllowedNetworkWhileBackground(newUidState); - if (!wasAllowed && isAllowed) { - mBackgroundTransitioningUids.delete(uid); - updateRuleForBackgroundUL(uid); - updatePowerRestrictionRules = true; - } else if (!isAllowed) { - final int transitionIdx = mBackgroundTransitioningUids.indexOfKey(uid); - final long completionTimeMs = SystemClock.uptimeMillis() - + getBackgroundTransitioningDelay(procState); - boolean completionTimeUpdated = false; - if (wasAllowed) { - // Rules need to transition from allowed to blocked after the respective - // delay. - if (transitionIdx < 0) { - // This is just a defensive check in case the upstream code ever - // makes multiple calls for the same process state change. - mBackgroundTransitioningUids.put(uid, completionTimeMs); - completionTimeUpdated = true; - } - } else if (mUseDifferentDelaysForBackgroundChain) { - // wasAllowed was false, but the transition delay may have reduced. - // Currently, this can happen when the uid transitions from - // LAST_ACTIVITY to CACHED_ACTIVITY, for example. - if (transitionIdx >= 0 - && completionTimeMs < mBackgroundTransitioningUids.valueAt( - transitionIdx)) { - mBackgroundTransitioningUids.setValueAt(transitionIdx, - completionTimeMs); - completionTimeUpdated = true; - } + final boolean wasAllowed = isProcStateAllowedNetworkWhileBackground( + oldUidState); + final boolean isAllowed = isProcStateAllowedNetworkWhileBackground(newUidState); + if (!wasAllowed && isAllowed) { + mBackgroundTransitioningUids.delete(uid); + updateRuleForBackgroundUL(uid); + updatePowerRestrictionRules = true; + } else if (!isAllowed) { + final int transitionIdx = mBackgroundTransitioningUids.indexOfKey(uid); + final long completionTimeMs = SystemClock.uptimeMillis() + + getBackgroundTransitioningDelay(procState); + boolean completionTimeUpdated = false; + if (wasAllowed) { + // Rules need to transition from allowed to blocked after the respective + // delay. + if (transitionIdx < 0) { + // This is just a defensive check in case the upstream code ever + // makes multiple calls for the same process state change. + mBackgroundTransitioningUids.put(uid, completionTimeMs); + completionTimeUpdated = true; } - if (completionTimeUpdated - && completionTimeMs < mNextProcessBackgroundUidsTime) { - // Many uids may be in this "transitioning" state at the same time, - // so we always keep one message to process transition completion at - // the earliest time. - mHandler.removeMessages(MSG_PROCESS_BACKGROUND_TRANSITIONING_UIDS); - mHandler.sendEmptyMessageAtTime( - MSG_PROCESS_BACKGROUND_TRANSITIONING_UIDS, completionTimeMs); - mNextProcessBackgroundUidsTime = completionTimeMs; + } else if (mUseDifferentDelaysForBackgroundChain) { + // wasAllowed was false, but the transition delay may have reduced. + // Currently, this can happen when the uid transitions from + // LAST_ACTIVITY to CACHED_ACTIVITY, for example. + if (transitionIdx >= 0 + && completionTimeMs < mBackgroundTransitioningUids.valueAt( + transitionIdx)) { + mBackgroundTransitioningUids.setValueAt(transitionIdx, + completionTimeMs); + completionTimeUpdated = true; } } + if (completionTimeUpdated + && completionTimeMs < mNextProcessBackgroundUidsTime) { + // Many uids may be in this "transitioning" state at the same time, + // so we always keep one message to process transition completion at + // the earliest time. + mHandler.removeMessages(MSG_PROCESS_BACKGROUND_TRANSITIONING_UIDS); + mHandler.sendEmptyMessageAtTime( + MSG_PROCESS_BACKGROUND_TRANSITIONING_UIDS, completionTimeMs); + mNextProcessBackgroundUidsTime = completionTimeMs; + } } if (mLowPowerStandbyActive) { boolean allowedInLpsChanged = @@ -4535,12 +4519,10 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { if (mRestrictPower) { updateRuleForRestrictPowerUL(uid); } - if (mBackgroundNetworkRestricted) { - // Uid is no longer running, there is no point in any grace period of network - // access during transitions to lower importance proc-states. - mBackgroundTransitioningUids.delete(uid); - updateRuleForBackgroundUL(uid); - } + // Uid is no longer running, there is no point in any grace period of network + // access during transitions to lower importance proc-states. + mBackgroundTransitioningUids.delete(uid); + updateRuleForBackgroundUL(uid); updateRulesForPowerRestrictionsUL(uid); if (mLowPowerStandbyActive) { updateRuleForLowPowerStandbyUL(uid); @@ -4589,7 +4571,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { @VisibleForTesting @GuardedBy("mUidRulesFirstLock") void updateRestrictedModeAllowlistUL() { - mUidFirewallRestrictedModeRules.clear(); + final SparseIntArray uidRules = new SparseIntArray(); forEachUid("updateRestrictedModeAllowlist", uid -> { synchronized (mUidRulesFirstLock) { final int effectiveBlockedReasons = updateBlockedReasonsForRestrictedModeUL( @@ -4599,13 +4581,13 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { // setUidFirewallRulesUL will allowlist all uids that are passed to it, so only add // non-default rules. if (newFirewallRule != FIREWALL_RULE_DEFAULT) { - mUidFirewallRestrictedModeRules.append(uid, newFirewallRule); + uidRules.append(uid, newFirewallRule); } } }); if (mRestrictedNetworkingMode) { // firewall rules only need to be set when this mode is being enabled. - setUidFirewallRulesUL(FIREWALL_CHAIN_RESTRICTED, mUidFirewallRestrictedModeRules); + setUidFirewallRulesUL(FIREWALL_CHAIN_RESTRICTED, uidRules); } enableFirewallChainUL(FIREWALL_CHAIN_RESTRICTED, mRestrictedNetworkingMode); } @@ -4689,8 +4671,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { void updateRulesForPowerSaveUL() { Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "updateRulesForPowerSaveUL"); try { - updateRulesForAllowlistedPowerSaveUL(mRestrictPower, FIREWALL_CHAIN_POWERSAVE, - mUidFirewallPowerSaveRules); + updateRulesForAllowlistedPowerSaveUL(mRestrictPower, FIREWALL_CHAIN_POWERSAVE); } finally { Trace.traceEnd(Trace.TRACE_TAG_NETWORK); } @@ -4705,8 +4686,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { void updateRulesForDeviceIdleUL() { Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "updateRulesForDeviceIdleUL"); try { - updateRulesForAllowlistedPowerSaveUL(mDeviceIdleMode, FIREWALL_CHAIN_DOZABLE, - mUidFirewallDozableRules); + updateRulesForAllowlistedPowerSaveUL(mDeviceIdleMode, FIREWALL_CHAIN_DOZABLE); } finally { Trace.traceEnd(Trace.TRACE_TAG_NETWORK); } @@ -4720,13 +4700,11 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { // NOTE: since both fw_dozable and fw_powersave uses the same map // (mPowerSaveTempWhitelistAppIds) for allowlisting, we can reuse their logic in this method. @GuardedBy("mUidRulesFirstLock") - private void updateRulesForAllowlistedPowerSaveUL(boolean enabled, int chain, - SparseIntArray rules) { + private void updateRulesForAllowlistedPowerSaveUL(boolean enabled, int chain) { if (enabled) { // Sync the allowlists before enabling the chain. We don't care about the rules if // we are disabling the chain. - final SparseIntArray uidRules = rules; - uidRules.clear(); + final SparseIntArray uidRules = new SparseIntArray(); final List<UserInfo> users = mUserManager.getUsers(); for (int ui = users.size() - 1; ui >= 0; ui--) { UserInfo user = users.get(ui); @@ -4755,9 +4733,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { private void updateRulesForBackgroundChainUL() { Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "updateRulesForBackgroundChainUL"); try { - final SparseIntArray uidRules = mUidFirewallBackgroundRules; - uidRules.clear(); - + final SparseIntArray uidRules = new SparseIntArray(); final List<UserInfo> users = mUserManager.getUsers(); for (int ui = users.size() - 1; ui >= 0; ui--) { final UserInfo user = users.get(ui); @@ -4794,17 +4770,17 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "updateRulesForLowPowerStandbyUL"); try { if (mLowPowerStandbyActive) { - mUidFirewallLowPowerStandbyModeRules.clear(); + final SparseIntArray uidRules = new SparseIntArray(); for (int i = mUidState.size() - 1; i >= 0; i--) { final int uid = mUidState.keyAt(i); final int effectiveBlockedReasons = getEffectiveBlockedReasons(uid); if (hasInternetPermissionUL(uid) && (effectiveBlockedReasons & BLOCKED_REASON_LOW_POWER_STANDBY) == 0) { - mUidFirewallLowPowerStandbyModeRules.put(uid, FIREWALL_RULE_ALLOW); + uidRules.put(uid, FIREWALL_RULE_ALLOW); } } setUidFirewallRulesUL(FIREWALL_CHAIN_LOW_POWER_STANDBY, - mUidFirewallLowPowerStandbyModeRules, CHAIN_TOGGLE_ENABLE); + uidRules, CHAIN_TOGGLE_ENABLE); } else { setUidFirewallRulesUL(FIREWALL_CHAIN_LOW_POWER_STANDBY, null, CHAIN_TOGGLE_DISABLE); } @@ -4822,10 +4798,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { final int effectiveBlockedReasons = getEffectiveBlockedReasons(uid); if (mUidState.contains(uid) && (effectiveBlockedReasons & BLOCKED_REASON_LOW_POWER_STANDBY) == 0) { - mUidFirewallLowPowerStandbyModeRules.put(uid, FIREWALL_RULE_ALLOW); setUidFirewallRuleUL(FIREWALL_CHAIN_LOW_POWER_STANDBY, uid, FIREWALL_RULE_ALLOW); } else { - mUidFirewallLowPowerStandbyModeRules.delete(uid); setUidFirewallRuleUL(FIREWALL_CHAIN_LOW_POWER_STANDBY, uid, FIREWALL_RULE_DEFAULT); } } @@ -4896,6 +4870,12 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { int[] idleUids = mUsageStats.getIdleUidsForUser(user.id); for (int uid : idleUids) { if (!mPowerSaveTempWhitelistAppIds.get(UserHandle.getAppId(uid), false)) { + if (mNeverApplyRulesToCoreUids && !isUidValidForRulesUL(uid)) { + // This check is needed to keep mUidFirewallStandbyRules free of any + // such uids. Doing this keeps it in sync with the actual rules applied + // in the underlying connectivity stack. + continue; + } // quick check: if this uid doesn't have INTERNET permission, it // doesn't have network access anyway, so it is a waste to mess // with it here. @@ -5013,9 +4993,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { "updateRulesForGlobalChangeAL: " + (restrictedNetworksChanged ? "R" : "-")); } try { - if (mBackgroundNetworkRestricted) { - updateRulesForBackgroundChainUL(); - } + updateRulesForBackgroundChainUL(); updateRulesForAppIdleUL(); updateRulesForRestrictPowerUL(); updateRulesForRestrictBackgroundUL(); @@ -5175,9 +5153,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { updateRuleForAppIdleUL(uid, PROCESS_STATE_UNKNOWN); updateRuleForDeviceIdleUL(uid); updateRuleForRestrictPowerUL(uid); - if (mBackgroundNetworkRestricted) { - updateRuleForBackgroundUL(uid); - } + updateRuleForBackgroundUL(uid); // Update internal rules. updateRulesForPowerRestrictionsUL(uid); } @@ -5198,6 +5174,11 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { @GuardedBy("mUidRulesFirstLock") private boolean isUidValidForAllowlistRulesUL(int uid) { + return isUidValidForRulesUL(uid); + } + + @GuardedBy("mUidRulesFirstLock") + private boolean isUidValidForRulesUL(int uid) { return UserHandle.isApp(uid) && hasInternetPermissionUL(uid); } @@ -5313,16 +5294,11 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { mActivityManagerInternal.onUidBlockedReasonsChanged(uid, BLOCKED_REASON_NONE); mUidPolicy.delete(uid); mUidFirewallStandbyRules.delete(uid); - mUidFirewallDozableRules.delete(uid); - mUidFirewallPowerSaveRules.delete(uid); - mUidFirewallBackgroundRules.delete(uid); mBackgroundTransitioningUids.delete(uid); mPowerSaveWhitelistExceptIdleAppIds.delete(uid); mPowerSaveWhitelistAppIds.delete(uid); mPowerSaveTempWhitelistAppIds.delete(uid); mAppIdleTempWhitelistAppIds.delete(uid); - mUidFirewallRestrictedModeRules.delete(uid); - mUidFirewallLowPowerStandbyModeRules.delete(uid); synchronized (mUidStateCallbackInfos) { mUidStateCallbackInfos.remove(uid); } @@ -5350,9 +5326,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { updateRuleForDeviceIdleUL(uid); updateRuleForAppIdleUL(uid, PROCESS_STATE_UNKNOWN); updateRuleForRestrictPowerUL(uid); - if (mBackgroundNetworkRestricted) { - updateRuleForBackgroundUL(uid); - } + updateRuleForBackgroundUL(uid); // If the uid has the necessary permissions, then it should be added to the restricted mode // firewall allowlist. @@ -5603,7 +5577,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { newBlockedReasons |= (mLowPowerStandbyActive ? BLOCKED_REASON_LOW_POWER_STANDBY : 0); newBlockedReasons |= (isUidIdle ? BLOCKED_REASON_APP_STANDBY : 0); newBlockedReasons |= (uidBlockedState.blockedReasons & BLOCKED_REASON_RESTRICTED_MODE); - newBlockedReasons |= mBackgroundNetworkRestricted ? BLOCKED_REASON_APP_BACKGROUND : 0; + newBlockedReasons |= BLOCKED_REASON_APP_BACKGROUND; newAllowedReasons |= (isSystem(uid) ? ALLOWED_REASON_SYSTEM : 0); newAllowedReasons |= (isForeground ? ALLOWED_REASON_FOREGROUND : 0); @@ -5616,8 +5590,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { & ALLOWED_REASON_RESTRICTED_MODE_PERMISSIONS); newAllowedReasons |= (isAllowlistedFromLowPowerStandbyUL(uid)) ? ALLOWED_REASON_LOW_POWER_STANDBY_ALLOWLIST : 0; - newAllowedReasons |= (mBackgroundNetworkRestricted - && isUidExemptFromBackgroundRestrictions(uid)) + newAllowedReasons |= isUidExemptFromBackgroundRestrictions(uid) ? ALLOWED_REASON_NOT_IN_BACKGROUND : 0; uidBlockedState.blockedReasons = (uidBlockedState.blockedReasons @@ -6217,41 +6190,33 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { } } - private void addSdkSandboxUidsIfNeeded(SparseIntArray uidRules) { - final int size = uidRules.size(); - final SparseIntArray sdkSandboxUids = new SparseIntArray(); - for (int index = 0; index < size; index++) { - final int uid = uidRules.keyAt(index); - final int rule = uidRules.valueAt(index); - if (Process.isApplicationUid(uid)) { - sdkSandboxUids.put(Process.toSdkSandboxUid(uid), rule); - } - } - - for (int index = 0; index < sdkSandboxUids.size(); index++) { - final int uid = sdkSandboxUids.keyAt(index); - final int rule = sdkSandboxUids.valueAt(index); - uidRules.put(uid, rule); - } - } - /** * Set uid rules on a particular firewall chain. This is going to synchronize the rules given * here to netd. It will clean up dead rules and make sure the target chain only contains rules * specified here. */ + @GuardedBy("mUidRulesFirstLock") private void setUidFirewallRulesUL(int chain, SparseIntArray uidRules) { - addSdkSandboxUidsIfNeeded(uidRules); try { int size = uidRules.size(); - int[] uids = new int[size]; - int[] rules = new int[size]; + final IntArray uids = new IntArray(size); + final IntArray rules = new IntArray(size); for(int index = size - 1; index >= 0; --index) { - uids[index] = uidRules.keyAt(index); - rules[index] = uidRules.valueAt(index); + final int uid = uidRules.keyAt(index); + if (mNeverApplyRulesToCoreUids && !isUidValidForRulesUL(uid)) { + continue; + } + uids.add(uid); + rules.add(uidRules.valueAt(index)); + if (Process.isApplicationUid(uid)) { + uids.add(Process.toSdkSandboxUid(uid)); + rules.add(uidRules.valueAt(index)); + } } - mNetworkManager.setFirewallUidRules(chain, uids, rules); - mLogger.firewallRulesChanged(chain, uids, rules); + final int[] uidArray = uids.toArray(); + final int[] ruleArray = rules.toArray(); + mNetworkManager.setFirewallUidRules(chain, uidArray, ruleArray); + mLogger.firewallRulesChanged(chain, uidArray, ruleArray); } catch (IllegalStateException e) { Log.wtf(TAG, "problem setting firewall uid rules", e); } catch (RemoteException e) { @@ -6264,26 +6229,17 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { */ @GuardedBy("mUidRulesFirstLock") private void setUidFirewallRuleUL(int chain, int uid, int rule) { + if (mNeverApplyRulesToCoreUids && !isUidValidForRulesUL(uid)) { + return; + } if (Trace.isTagEnabled(Trace.TRACE_TAG_NETWORK)) { Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "setUidFirewallRuleUL: " + chain + "/" + uid + "/" + rule); } try { - if (chain == FIREWALL_CHAIN_DOZABLE) { - mUidFirewallDozableRules.put(uid, rule); - } else if (chain == FIREWALL_CHAIN_STANDBY) { + if (chain == FIREWALL_CHAIN_STANDBY) { mUidFirewallStandbyRules.put(uid, rule); - } else if (chain == FIREWALL_CHAIN_POWERSAVE) { - mUidFirewallPowerSaveRules.put(uid, rule); - } else if (chain == FIREWALL_CHAIN_RESTRICTED) { - mUidFirewallRestrictedModeRules.put(uid, rule); - } else if (chain == FIREWALL_CHAIN_LOW_POWER_STANDBY) { - mUidFirewallLowPowerStandbyModeRules.put(uid, rule); - } else if (chain == FIREWALL_CHAIN_BACKGROUND) { - mUidFirewallBackgroundRules.put(uid, rule); - } - // Note that we do not need keep a separate cache of uid rules for chains that we do - // not call #setUidFirewallRulesUL for. + } try { mNetworkManager.setFirewallUidRule(chain, uid, rule); @@ -6328,6 +6284,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { * Resets all firewall rules associated with an UID. */ private void resetUidFirewallRules(int uid) { + // Resetting rules for uids with isUidValidForRulesUL = false should be OK as no rules + // should be previously set and the downstream code will skip no-op changes. try { mNetworkManager.setFirewallUidRule(FIREWALL_CHAIN_DOZABLE, uid, FIREWALL_RULE_DEFAULT); diff --git a/services/core/java/com/android/server/net/OWNERS b/services/core/java/com/android/server/net/OWNERS index bbc7c013f170..4596a445ed30 100644 --- a/services/core/java/com/android/server/net/OWNERS +++ b/services/core/java/com/android/server/net/OWNERS @@ -2,7 +2,5 @@ set noparent file:platform/packages/modules/Connectivity:main:/OWNERS_core_networking per-file NetworkPolicyManagerService.java=jackyu@google.com, sarahchin@google.com -jsharkey@android.com sudheersai@google.com -yamasani@google.com suprabh@google.com diff --git a/services/core/java/com/android/server/net/TEST_MAPPING b/services/core/java/com/android/server/net/TEST_MAPPING index ad6b0ca71527..d95849ec6d6a 100644 --- a/services/core/java/com/android/server/net/TEST_MAPPING +++ b/services/core/java/com/android/server/net/TEST_MAPPING @@ -1,40 +1,16 @@ { "presubmit-large": [ { - "name": "CtsHostsideNetworkPolicyTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "android.platform.test.annotations.FlakyTest" - } - ] + "name": "CtsHostsideNetworkPolicyTests" } ], "presubmit": [ { - "name": "FrameworksServicesTests", - "file_patterns": ["(/|^)Network(Policy|Management)[^/]*\\.java"], - "options": [ - { - "include-filter": "com.android.server.net." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksServicesTests_android_server_net_Presubmit", + "file_patterns": ["(/|^)Network(Policy|Management)[^/]*\\.java"] }, { - "name": "FrameworksVpnTests", - "options": [ - { - "exclude-annotation": "com.android.testutils.SkipPresubmit" - } - ], + "name": "FrameworksVpnTests_android_server_connectivity", "file_patterns": ["VpnManagerService\\.java"] } ] diff --git a/services/core/java/com/android/server/net/flags.aconfig b/services/core/java/com/android/server/net/flags.aconfig index 586baf022897..3c0ff6115fcd 100644 --- a/services/core/java/com/android/server/net/flags.aconfig +++ b/services/core/java/com/android/server/net/flags.aconfig @@ -2,13 +2,6 @@ package: "com.android.server.net" container: "system" flag { - name: "network_blocked_for_top_sleeping_and_above" - namespace: "backstage_power" - description: "Block network access for apps in a low importance background state" - bug: "304347838" -} - -flag { name: "use_metered_firewall_chains" namespace: "backstage_power" description: "Use metered firewall chains to control access to metered networks" @@ -27,3 +20,13 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + name: "never_apply_rules_to_core_uids" + namespace: "backstage_power" + description: "Removes all rule bookkeeping and evaluation logic for core uids and uids without the internet permission" + bug: "356956588" + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/services/core/java/com/android/server/net/watchlist/OWNERS b/services/core/java/com/android/server/net/watchlist/OWNERS index d0c4e553ad8c..eef1e46b2ba6 100644 --- a/services/core/java/com/android/server/net/watchlist/OWNERS +++ b/services/core/java/com/android/server/net/watchlist/OWNERS @@ -1,2 +1 @@ -alanstokes@google.com simonjw@google.com diff --git a/services/core/java/com/android/server/notification/NotificationAttentionHelper.java b/services/core/java/com/android/server/notification/NotificationAttentionHelper.java index a7e14d9baea2..9b02ed0ee0bd 100644 --- a/services/core/java/com/android/server/notification/NotificationAttentionHelper.java +++ b/services/core/java/com/android/server/notification/NotificationAttentionHelper.java @@ -79,6 +79,7 @@ import com.android.server.lights.LogicalLight; import java.io.PrintWriter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; +import com.android.internal.annotations.GuardedBy; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -119,6 +120,8 @@ public final class NotificationAttentionHelper { ); private final Context mContext; + //This is NMS.mNotificationLock. + private final Object mLock; private final PackageManager mPackageManager; private final TelephonyManager mTelephonyManager; private final UserManager mUm; @@ -132,6 +135,7 @@ public final class NotificationAttentionHelper { private VibratorHelper mVibratorHelper; // The last key in this list owns the hardware. + @GuardedBy("mLock") ArrayList<String> mLights = new ArrayList<>(); private LogicalLight mNotificationLight; private LogicalLight mAttentionLight; @@ -149,8 +153,10 @@ public final class NotificationAttentionHelper { private String mVibrateNotificationKey; private boolean mSystemReady; private boolean mInCallStateOffHook = false; + @GuardedBy("mLock") private boolean mScreenOn = true; private boolean mUserPresent = false; + @GuardedBy("mLock") private boolean mNotificationPulseEnabled; private final Uri mInCallNotificationUri; private final AudioAttributes mInCallNotificationAudioAttributes; @@ -166,12 +172,13 @@ public final class NotificationAttentionHelper { private final PolitenessStrategy mStrategy; private int mCurrentWorkProfileId = UserHandle.USER_NULL; - public NotificationAttentionHelper(Context context, LightsManager lightsManager, + public NotificationAttentionHelper(Context context, Object lock, LightsManager lightsManager, AccessibilityManager accessibilityManager, PackageManager packageManager, UserManager userManager, NotificationUsageStats usageStats, NotificationManagerPrivate notificationManagerPrivate, ZenModeHelper zenModeHelper, SystemUiSystemPropertiesFlags.FlagResolver flagResolver) { mContext = context; + mLock = lock; mPackageManager = packageManager; mTelephonyManager = context.getSystemService(TelephonyManager.class); mAccessibilityManager = accessibilityManager; @@ -315,9 +322,11 @@ public final class NotificationAttentionHelper { private void loadUserSettings() { boolean pulseEnabled = Settings.System.getIntForUser(mContext.getContentResolver(), Settings.System.NOTIFICATION_LIGHT_PULSE, 0, UserHandle.USER_CURRENT) != 0; - if (mNotificationPulseEnabled != pulseEnabled) { - mNotificationPulseEnabled = pulseEnabled; - updateLightsLocked(); + synchronized (mLock) { + if (mNotificationPulseEnabled != pulseEnabled) { + mNotificationPulseEnabled = pulseEnabled; + updateLightsLocked(); + } } if (Flags.politeNotifications()) { @@ -1063,7 +1072,8 @@ public final class NotificationAttentionHelper { } } - public void dump(PrintWriter pw, String prefix, NotificationManagerService.DumpFilter filter) { + public void dumpLocked(PrintWriter pw, String prefix, + NotificationManagerService.DumpFilter filter) { pw.println("\n Notification attention state:"); pw.print(prefix); pw.println(" mSoundNotificationKey=" + mSoundNotificationKey); @@ -1587,20 +1597,29 @@ public final class NotificationAttentionHelper { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); + if (action == null) { + return; + } if (action.equals(Intent.ACTION_SCREEN_ON)) { // Keep track of screen on/off state, but do not turn off the notification light // until user passes through the lock screen or views the notification. - mScreenOn = true; - updateLightsLocked(); + synchronized (mLock) { + mScreenOn = true; + updateLightsLocked(); + } } else if (action.equals(Intent.ACTION_SCREEN_OFF)) { - mScreenOn = false; - mUserPresent = false; - updateLightsLocked(); + synchronized (mLock) { + mScreenOn = false; + mUserPresent = false; + updateLightsLocked(); + } } else if (action.equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) { mInCallStateOffHook = TelephonyManager.EXTRA_STATE_OFFHOOK .equals(intent.getStringExtra(TelephonyManager.EXTRA_STATE)); - updateLightsLocked(); + synchronized (mLock) { + updateLightsLocked(); + } } else if (action.equals(Intent.ACTION_USER_PRESENT)) { mUserPresent = true; // turn off LED when user passes through lock screen @@ -1662,9 +1681,11 @@ public final class NotificationAttentionHelper { Settings.System.NOTIFICATION_LIGHT_PULSE, 0, UserHandle.USER_CURRENT) != 0; - if (mNotificationPulseEnabled != pulseEnabled) { - mNotificationPulseEnabled = pulseEnabled; - updateLightsLocked(); + synchronized (mLock) { + if (mNotificationPulseEnabled != pulseEnabled) { + mNotificationPulseEnabled = pulseEnabled; + updateLightsLocked(); + } } } if (Flags.politeNotifications()) { @@ -1747,7 +1768,9 @@ public final class NotificationAttentionHelper { @VisibleForTesting void setScreenOn(boolean on) { - mScreenOn = on; + synchronized (mLock) { + mScreenOn = on; + } } @VisibleForTesting diff --git a/services/core/java/com/android/server/notification/NotificationManagerService.java b/services/core/java/com/android/server/notification/NotificationManagerService.java index b436c8b42edf..c83351ddebea 100644 --- a/services/core/java/com/android/server/notification/NotificationManagerService.java +++ b/services/core/java/com/android/server/notification/NotificationManagerService.java @@ -2573,9 +2573,9 @@ public class NotificationManagerService extends SystemService { mToastRateLimiter = toastRateLimiter; - mAttentionHelper = new NotificationAttentionHelper(getContext(), lightsManager, - mAccessibilityManager, mPackageManagerClient, userManager, usageStats, - mNotificationManagerPrivate, mZenModeHelper, flagResolver); + mAttentionHelper = new NotificationAttentionHelper(getContext(), mNotificationLock, + lightsManager, mAccessibilityManager, mPackageManagerClient, userManager, + usageStats, mNotificationManagerPrivate, mZenModeHelper, flagResolver); // register for various Intents. // If this is called within a test, make sure to unregister the intent receivers by @@ -6916,7 +6916,7 @@ public class NotificationManagerService extends SystemService { pw.println(" mMaxPackageEnqueueRate=" + mMaxPackageEnqueueRate); pw.println(" hideSilentStatusBar=" + mPreferencesHelper.shouldHideSilentStatusIcons()); - mAttentionHelper.dump(pw, " ", filter); + mAttentionHelper.dumpLocked(pw, " ", filter); } pw.println(" mArchive=" + mArchive.toString()); mArchive.dumpImpl(pw, filter); diff --git a/services/core/java/com/android/server/notification/PreferencesHelper.java b/services/core/java/com/android/server/notification/PreferencesHelper.java index 309e9450a01d..bc19b995bc14 100644 --- a/services/core/java/com/android/server/notification/PreferencesHelper.java +++ b/services/core/java/com/android/server/notification/PreferencesHelper.java @@ -189,9 +189,12 @@ public class PreferencesHelper implements RankingConfig { int USER_LOCKED_BUBBLE = 0x00000002; } + private final Object mLock = new Object(); // pkg|uid => PackagePreferences + @GuardedBy("mLock") private final ArrayMap<String, PackagePreferences> mPackagePreferences = new ArrayMap<>(); // pkg|userId => PackagePreferences + @GuardedBy("mLock") private final ArrayMap<String, PackagePreferences> mRestoredWithoutUids = new ArrayMap<>(); private final Context mContext; @@ -263,7 +266,7 @@ public class PreferencesHelper implements RankingConfig { Settings.Global.REVIEW_PERMISSIONS_NOTIFICATION_STATE, NotificationManagerService.REVIEW_NOTIF_STATE_SHOULD_SHOW); } - synchronized (mPackagePreferences) { + synchronized (mLock) { while ((type = parser.next()) != XmlPullParser.END_DOCUMENT) { tag = parser.getName(); if (type == XmlPullParser.END_TAG && TAG_RANKING.equals(tag)) { @@ -485,6 +488,7 @@ public class PreferencesHelper implements RankingConfig { DEFAULT_BUBBLE_PREFERENCE, mClock.millis()); } + @GuardedBy("mLock") private PackagePreferences getOrCreatePackagePreferencesLocked(String pkg, @UserIdInt int userId, int uid, int importance, int priority, int visibility, boolean showBadge, int bubblePreference, long creationTime) { @@ -616,7 +620,7 @@ public class PreferencesHelper implements RankingConfig { notifPermissions = mPermissionHelper.getNotificationPermissionValues(userId); } - synchronized (mPackagePreferences) { + synchronized (mLock) { final int N = mPackagePreferences.size(); for (int i = 0; i < N; i++) { final PackagePreferences r = mPackagePreferences.valueAt(i); @@ -625,11 +629,10 @@ public class PreferencesHelper implements RankingConfig { } writePackageXml(r, out, notifPermissions, forBackup); } - } - if (Flags.persistIncompleteRestoreData() && !forBackup) { - synchronized (mRestoredWithoutUids) { - final int N = mRestoredWithoutUids.size(); - for (int i = 0; i < N; i++) { + + if (Flags.persistIncompleteRestoreData() && !forBackup) { + final int M = mRestoredWithoutUids.size(); + for (int i = 0; i < M; i++) { final PackagePreferences r = mRestoredWithoutUids.valueAt(i); writePackageXml(r, out, notifPermissions, false); } @@ -732,7 +735,7 @@ public class PreferencesHelper implements RankingConfig { */ public void setBubblesAllowed(String pkg, int uid, int bubblePreference) { boolean changed; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences p = getOrCreatePackagePreferencesLocked(pkg, uid); changed = p.bubblePreference != bubblePreference; p.bubblePreference = bubblePreference; @@ -752,20 +755,20 @@ public class PreferencesHelper implements RankingConfig { */ @Override public int getBubblePreference(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { return getOrCreatePackagePreferencesLocked(pkg, uid).bubblePreference; } } public int getAppLockedFields(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { return getOrCreatePackagePreferencesLocked(pkg, uid).lockedAppFields; } } @Override public boolean canShowBadge(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { return getOrCreatePackagePreferencesLocked(packageName, uid).showBadge; } } @@ -773,7 +776,7 @@ public class PreferencesHelper implements RankingConfig { @Override public void setShowBadge(String packageName, int uid, boolean showBadge) { boolean changed = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences pkgPrefs = getOrCreatePackagePreferencesLocked(packageName, uid); if (pkgPrefs.showBadge != showBadge) { pkgPrefs.showBadge = showBadge; @@ -786,28 +789,28 @@ public class PreferencesHelper implements RankingConfig { } public boolean isInInvalidMsgState(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return r.hasSentInvalidMessage && !r.hasSentValidMessage; } } public boolean hasUserDemotedInvalidMsgApp(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return isInInvalidMsgState(packageName, uid) ? r.userDemotedMsgApp : false; } } public void setInvalidMsgAppDemoted(String packageName, int uid, boolean isDemoted) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); r.userDemotedMsgApp = isDemoted; } } public boolean setInvalidMessageSent(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); boolean valueChanged = r.hasSentInvalidMessage == false; r.hasSentInvalidMessage = true; @@ -817,7 +820,7 @@ public class PreferencesHelper implements RankingConfig { } public boolean setValidMessageSent(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); boolean valueChanged = r.hasSentValidMessage == false; r.hasSentValidMessage = true; @@ -828,7 +831,7 @@ public class PreferencesHelper implements RankingConfig { @VisibleForTesting boolean hasSentInvalidMsg(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return r.hasSentInvalidMessage; } @@ -836,7 +839,7 @@ public class PreferencesHelper implements RankingConfig { @VisibleForTesting boolean hasSentValidMsg(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return r.hasSentValidMessage; } @@ -844,7 +847,7 @@ public class PreferencesHelper implements RankingConfig { @VisibleForTesting boolean didUserEverDemoteInvalidMsgApp(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return r.userDemotedMsgApp; } @@ -852,7 +855,7 @@ public class PreferencesHelper implements RankingConfig { /** Sets whether this package has sent a notification with valid bubble metadata. */ public boolean setValidBubbleSent(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); boolean valueChanged = !r.hasSentValidBubble; r.hasSentValidBubble = true; @@ -861,14 +864,14 @@ public class PreferencesHelper implements RankingConfig { } boolean hasSentValidBubble(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); return r.hasSentValidBubble; } } boolean isImportanceLocked(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); return r.fixedImportance || r.defaultAppLockedImportance; } @@ -879,7 +882,7 @@ public class PreferencesHelper implements RankingConfig { if (groupId == null) { return false; } - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(packageName, uid); NotificationChannelGroup group = r.groups.get(groupId); if (group == null) { @@ -890,13 +893,13 @@ public class PreferencesHelper implements RankingConfig { } int getPackagePriority(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { return getOrCreatePackagePreferencesLocked(pkg, uid).priority; } } int getPackageVisibility(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { return getOrCreatePackagePreferencesLocked(pkg, uid).visibility; } } @@ -911,7 +914,7 @@ public class PreferencesHelper implements RankingConfig { throw new IllegalArgumentException("group.getName() can't be empty"); } boolean needsDndChange = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { throw new IllegalArgumentException("Invalid package"); @@ -965,7 +968,7 @@ public class PreferencesHelper implements RankingConfig { && channel.getImportance() <= IMPORTANCE_MAX, "Invalid importance level"); boolean needsPolicyFileChange = false, wasUndeleted = false, needsDndChange = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { throw new IllegalArgumentException("Invalid package"); @@ -1109,7 +1112,7 @@ public class PreferencesHelper implements RankingConfig { void unlockNotificationChannelImportance(String pkg, int uid, String updatedChannelId) { Objects.requireNonNull(updatedChannelId); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { throw new IllegalArgumentException("Invalid package"); @@ -1131,7 +1134,7 @@ public class PreferencesHelper implements RankingConfig { Objects.requireNonNull(updatedChannel.getId()); boolean changed = false; boolean needsDndChange = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { throw new IllegalArgumentException("Invalid package"); @@ -1306,7 +1309,7 @@ public class PreferencesHelper implements RankingConfig { String channelId, String conversationId, boolean returnParentIfNoConversationChannel, boolean includeDeleted) { Preconditions.checkNotNull(pkg); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { return null; @@ -1347,7 +1350,7 @@ public class PreferencesHelper implements RankingConfig { Preconditions.checkNotNull(pkg); Preconditions.checkNotNull(conversationId); List<NotificationChannel> channels = new ArrayList<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r == null) { return channels; @@ -1367,7 +1370,7 @@ public class PreferencesHelper implements RankingConfig { int callingUid, boolean fromSystemOrSystemUi) { boolean deletedChannel = false; boolean channelBypassedDnd = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return false; @@ -1403,7 +1406,7 @@ public class PreferencesHelper implements RankingConfig { public void permanentlyDeleteNotificationChannel(String pkg, int uid, String channelId) { Objects.requireNonNull(pkg); Objects.requireNonNull(channelId); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return; @@ -1415,7 +1418,7 @@ public class PreferencesHelper implements RankingConfig { @Override public void permanentlyDeleteNotificationChannels(String pkg, int uid) { Objects.requireNonNull(pkg); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return; @@ -1446,7 +1449,7 @@ public class PreferencesHelper implements RankingConfig { boolean fixed = mPermissionHelper.isPermissionFixed( pi.packageName, user.getUserHandle().getIdentifier()); if (fixed) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences p = getOrCreatePackagePreferencesLocked( pi.packageName, pi.applicationInfo.uid); p.fixedImportance = true; @@ -1461,7 +1464,7 @@ public class PreferencesHelper implements RankingConfig { public void updateDefaultApps(int userId, ArraySet<String> toRemove, ArraySet<Pair<String, Integer>> toAdd) { - synchronized (mPackagePreferences) { + synchronized (mLock) { for (PackagePreferences p : mPackagePreferences.values()) { if (userId == UserHandle.getUserId(p.uid)) { if (toRemove != null && toRemove.contains(p.pkg)) { @@ -1491,7 +1494,7 @@ public class PreferencesHelper implements RankingConfig { public NotificationChannelGroup getNotificationChannelGroupWithChannels(String pkg, int uid, String groupId, boolean includeDeleted) { Objects.requireNonNull(pkg); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null || groupId == null || !r.groups.containsKey(groupId)) { return null; @@ -1514,7 +1517,7 @@ public class PreferencesHelper implements RankingConfig { public NotificationChannelGroup getNotificationChannelGroup(String groupId, String pkg, int uid) { Objects.requireNonNull(pkg); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return null; @@ -1528,7 +1531,7 @@ public class PreferencesHelper implements RankingConfig { boolean includeBlocked, Set<String> activeChannelFilter) { Objects.requireNonNull(pkg); Map<String, NotificationChannelGroup> groups = new ArrayMap<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return ParceledListSlice.emptyList(); @@ -1575,7 +1578,7 @@ public class PreferencesHelper implements RankingConfig { String groupId, int callingUid, boolean fromSystemOrSystemUi) { List<NotificationChannel> deletedChannels = new ArrayList<>(); boolean groupBypassedDnd = false; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null || TextUtils.isEmpty(groupId)) { return deletedChannels; @@ -1607,7 +1610,7 @@ public class PreferencesHelper implements RankingConfig { public Collection<NotificationChannelGroup> getNotificationChannelGroups(String pkg, int uid) { List<NotificationChannelGroup> groups = new ArrayList<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return groups; @@ -1618,7 +1621,7 @@ public class PreferencesHelper implements RankingConfig { } public NotificationChannelGroup getGroupForChannel(String pkg, int uid, String channelId) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences p = getPackagePreferencesLocked(pkg, uid); if (p != null) { NotificationChannel nc = p.channels.get(channelId); @@ -1637,7 +1640,7 @@ public class PreferencesHelper implements RankingConfig { public ArrayList<ConversationChannelWrapper> getConversations(IntArray userIds, boolean onlyImportant) { - synchronized (mPackagePreferences) { + synchronized (mLock) { ArrayList<ConversationChannelWrapper> conversations = new ArrayList<>(); for (PackagePreferences p : mPackagePreferences.values()) { if (userIds.binarySearch(UserHandle.getUserId(p.uid)) >= 0) { @@ -1681,7 +1684,7 @@ public class PreferencesHelper implements RankingConfig { public ArrayList<ConversationChannelWrapper> getConversations(String pkg, int uid) { Objects.requireNonNull(pkg); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return new ArrayList<>(); @@ -1723,7 +1726,7 @@ public class PreferencesHelper implements RankingConfig { public @NonNull List<String> deleteConversations(String pkg, int uid, Set<String> conversationIds, int callingUid, boolean fromSystemOrSystemUi) { List<String> deletedChannelIds = new ArrayList<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return deletedChannelIds; @@ -1756,7 +1759,7 @@ public class PreferencesHelper implements RankingConfig { boolean includeDeleted) { Objects.requireNonNull(pkg); List<NotificationChannel> channels = new ArrayList<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return ParceledListSlice.emptyList(); @@ -1778,7 +1781,7 @@ public class PreferencesHelper implements RankingConfig { public ParceledListSlice<NotificationChannel> getNotificationChannelsBypassingDnd(String pkg, int uid) { List<NotificationChannel> channels = new ArrayList<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { final PackagePreferences r = mPackagePreferences.get( packagePreferencesKey(pkg, uid)); if (r != null) { @@ -1799,7 +1802,7 @@ public class PreferencesHelper implements RankingConfig { * upgrades. */ public boolean onlyHasDefaultChannel(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); if (r.channels.size() == 1 && r.channels.containsKey(NotificationChannel.DEFAULT_CHANNEL_ID)) { @@ -1812,7 +1815,7 @@ public class PreferencesHelper implements RankingConfig { public int getDeletedChannelCount(String pkg, int uid) { Objects.requireNonNull(pkg); int deletedCount = 0; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return deletedCount; @@ -1831,7 +1834,7 @@ public class PreferencesHelper implements RankingConfig { public int getBlockedChannelCount(String pkg, int uid) { Objects.requireNonNull(pkg); int blockedCount = 0; - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences r = getPackagePreferencesLocked(pkg, uid); if (r == null) { return blockedCount; @@ -1874,7 +1877,7 @@ public class PreferencesHelper implements RankingConfig { ArraySet<Pair<String, Integer>> candidatePkgs = new ArraySet<>(); final IntArray currentUserIds = mUserProfiles.getCurrentProfileIds(); - synchronized (mPackagePreferences) { + synchronized (mLock) { final int numPackagePreferences = mPackagePreferences.size(); for (int i = 0; i < numPackagePreferences; i++) { final PackagePreferences r = mPackagePreferences.valueAt(i); @@ -1943,7 +1946,7 @@ public class PreferencesHelper implements RankingConfig { * considered for sentiment adjustments (and thus never show a blocking helper). */ public void setAppImportanceLocked(String packageName, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences prefs = getOrCreatePackagePreferencesLocked(packageName, uid); if ((prefs.lockedAppFields & LockableAppFields.USER_LOCKED_IMPORTANCE) != 0) { return; @@ -1959,7 +1962,7 @@ public class PreferencesHelper implements RankingConfig { * Returns the delegate for a given package, if it's allowed by the package and the user. */ public @Nullable String getNotificationDelegate(String sourcePkg, int sourceUid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences prefs = getPackagePreferencesLocked(sourcePkg, sourceUid); if (prefs == null || prefs.delegate == null) { @@ -1977,7 +1980,7 @@ public class PreferencesHelper implements RankingConfig { */ public void setNotificationDelegate(String sourcePkg, int sourceUid, String delegatePkg, int delegateUid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences prefs = getOrCreatePackagePreferencesLocked(sourcePkg, sourceUid); prefs.delegate = new Delegate(delegatePkg, delegateUid, true); } @@ -1987,7 +1990,7 @@ public class PreferencesHelper implements RankingConfig { * Used by an app to turn off its notification delegate. */ public void revokeNotificationDelegate(String sourcePkg, int sourceUid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences prefs = getPackagePreferencesLocked(sourcePkg, sourceUid); if (prefs != null && prefs.delegate != null) { prefs.delegate.mEnabled = false; @@ -2001,7 +2004,7 @@ public class PreferencesHelper implements RankingConfig { */ public boolean isDelegateAllowed(String sourcePkg, int sourceUid, String potentialDelegatePkg, int potentialDelegateUid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences prefs = getPackagePreferencesLocked(sourcePkg, sourceUid); return prefs != null && prefs.isValidDelegate(potentialDelegatePkg, @@ -2047,24 +2050,25 @@ public class PreferencesHelper implements RankingConfig { pw.println("per-package config version: " + XML_VERSION); pw.println("PackagePreferences:"); - synchronized (mPackagePreferences) { + synchronized (mLock) { dumpPackagePreferencesLocked(pw, prefix, filter, mPackagePreferences, pkgPermissions); + pw.println("Restored without uid:"); + dumpPackagePreferencesLocked(pw, prefix, filter, mRestoredWithoutUids, null); } - pw.println("Restored without uid:"); - dumpPackagePreferencesLocked(pw, prefix, filter, mRestoredWithoutUids, null); } public void dump(ProtoOutputStream proto, @NonNull NotificationManagerService.DumpFilter filter, ArrayMap<Pair<Integer, String>, Pair<Boolean, Boolean>> pkgPermissions) { - synchronized (mPackagePreferences) { + synchronized (mLock) { dumpPackagePreferencesLocked(proto, RankingHelperProto.RECORDS, filter, mPackagePreferences, pkgPermissions); + dumpPackagePreferencesLocked(proto, RankingHelperProto.RECORDS_RESTORED_WITHOUT_UID, + filter, mRestoredWithoutUids, null); } - dumpPackagePreferencesLocked(proto, RankingHelperProto.RECORDS_RESTORED_WITHOUT_UID, filter, - mRestoredWithoutUids, null); } + @GuardedBy("mLock") private void dumpPackagePreferencesLocked(PrintWriter pw, String prefix, @NonNull NotificationManagerService.DumpFilter filter, ArrayMap<String, PackagePreferences> packagePreferences, @@ -2249,7 +2253,7 @@ public class PreferencesHelper implements RankingConfig { pkgsWithPermissionsToHandle = pkgPermissions.keySet(); } int pulledEvents = 0; - synchronized (mPackagePreferences) { + synchronized (mLock) { for (int i = 0; i < mPackagePreferences.size(); i++) { if (pulledEvents > NOTIFICATION_PREFERENCES_PULL_LIMIT) { break; @@ -2329,7 +2333,7 @@ public class PreferencesHelper implements RankingConfig { * {@link StatsEvent}. */ public void pullPackageChannelPreferencesStats(List<StatsEvent> events) { - synchronized (mPackagePreferences) { + synchronized (mLock) { int totalChannelsPulled = 0; for (int i = 0; i < mPackagePreferences.size(); i++) { if (totalChannelsPulled > NOTIFICATION_CHANNEL_PULL_LIMIT) { @@ -2365,7 +2369,7 @@ public class PreferencesHelper implements RankingConfig { * {@link StatsEvent}. */ public void pullPackageChannelGroupPreferencesStats(List<StatsEvent> events) { - synchronized (mPackagePreferences) { + synchronized (mLock) { int totalGroupsPulled = 0; for (int i = 0; i < mPackagePreferences.size(); i++) { if (totalGroupsPulled > NOTIFICATION_CHANNEL_GROUP_PULL_LIMIT) { @@ -2394,10 +2398,12 @@ public class PreferencesHelper implements RankingConfig { ArrayMap<Pair<Integer, String>, Pair<Boolean, Boolean>> pkgPermissions) { JSONObject ranking = new JSONObject(); JSONArray PackagePreferencess = new JSONArray(); - try { - ranking.put("noUid", mRestoredWithoutUids.size()); - } catch (JSONException e) { - // pass + synchronized (mLock) { + try { + ranking.put("noUid", mRestoredWithoutUids.size()); + } catch (JSONException e) { + // pass + } } // Track data that we've handled from the permissions-based list @@ -2406,7 +2412,7 @@ public class PreferencesHelper implements RankingConfig { pkgsWithPermissionsToHandle = pkgPermissions.keySet(); } - synchronized (mPackagePreferences) { + synchronized (mLock) { final int N = mPackagePreferences.size(); for (int i = 0; i < N; i++) { final PackagePreferences r = mPackagePreferences.valueAt(i); @@ -2512,7 +2518,7 @@ public class PreferencesHelper implements RankingConfig { } public Map<Integer, String> getPackageBans() { - synchronized (mPackagePreferences) { + synchronized (mLock) { final int N = mPackagePreferences.size(); ArrayMap<Integer, String> packageBans = new ArrayMap<>(N); for (int i = 0; i < N; i++) { @@ -2571,7 +2577,7 @@ public class PreferencesHelper implements RankingConfig { private Map<String, Integer> getPackageChannels() { ArrayMap<String, Integer> packageChannels = new ArrayMap<>(); - synchronized (mPackagePreferences) { + synchronized (mLock) { for (int i = 0; i < mPackagePreferences.size(); i++) { final PackagePreferences r = mPackagePreferences.valueAt(i); int channelCount = 0; @@ -2587,7 +2593,7 @@ public class PreferencesHelper implements RankingConfig { } public void onUserRemoved(int userId) { - synchronized (mPackagePreferences) { + synchronized (mLock) { int N = mPackagePreferences.size(); for (int i = N - 1; i >= 0; i--) { PackagePreferences PackagePreferences = mPackagePreferences.valueAt(i); @@ -2599,7 +2605,7 @@ public class PreferencesHelper implements RankingConfig { } protected void onLocaleChanged(Context context, int userId) { - synchronized (mPackagePreferences) { + synchronized (mLock) { int N = mPackagePreferences.size(); for (int i = 0; i < N; i++) { PackagePreferences PackagePreferences = mPackagePreferences.valueAt(i); @@ -2628,22 +2634,24 @@ public class PreferencesHelper implements RankingConfig { for (int i = 0; i < size; i++) { final String pkg = pkgList[i]; final int uid = uidList[i]; - synchronized (mPackagePreferences) { + synchronized (mLock) { mPackagePreferences.remove(packagePreferencesKey(pkg, uid)); + mRestoredWithoutUids.remove(unrestoredPackageKey(pkg, changeUserId)); } - mRestoredWithoutUids.remove(unrestoredPackageKey(pkg, changeUserId)); updated = true; } } else { for (String pkg : pkgList) { - // Package install - final PackagePreferences r = - mRestoredWithoutUids.get(unrestoredPackageKey(pkg, changeUserId)); - if (r != null) { - try { - r.uid = mPm.getPackageUidAsUser(r.pkg, changeUserId); - mRestoredWithoutUids.remove(unrestoredPackageKey(pkg, changeUserId)); - synchronized (mPackagePreferences) { + try { + // Package install + int uid = mPm.getPackageUidAsUser(pkg, changeUserId); + PackagePermission p = null; + synchronized (mLock) { + final PackagePreferences r = + mRestoredWithoutUids.get(unrestoredPackageKey(pkg, changeUserId)); + if (r != null) { + r.uid = uid; + mRestoredWithoutUids.remove(unrestoredPackageKey(pkg, changeUserId)); mPackagePreferences.put(packagePreferencesKey(r.pkg, r.uid), r); // Try to restore any unrestored sound resources @@ -2665,32 +2673,29 @@ public class PreferencesHelper implements RankingConfig { channel.setSound(restoredUri, channel.getAudioAttributes()); } } - } - if (r.migrateToPm) { - try { - PackagePermission p = new PackagePermission( + + if (r.migrateToPm) { + p = new PackagePermission( r.pkg, UserHandle.getUserId(r.uid), r.importance != IMPORTANCE_NONE, hasUserConfiguredSettings(r)); - mPermissionHelper.setNotificationPermission(p); - } catch (Exception e) { - Slog.e(TAG, "could not migrate setting for " + r.pkg, e); } + updated = true; } - updated = true; - } catch (Exception e) { - Slog.e(TAG, "could not restore " + r.pkg, e); } + if (p != null) { + mPermissionHelper.setNotificationPermission(p); + } + } catch (Exception e) { + Slog.e(TAG, "could not restore " + pkg, e); } // Package upgrade try { - synchronized (mPackagePreferences) { - PackagePreferences fullPackagePreferences = getPackagePreferencesLocked(pkg, - mPm.getPackageUidAsUser(pkg, changeUserId)); - if (fullPackagePreferences != null) { - updated |= createDefaultChannelIfNeededLocked(fullPackagePreferences); - updated |= deleteDefaultChannelIfNeededLocked(fullPackagePreferences); - } + PackagePreferences fullPackagePreferences = getPackagePreferencesLocked(pkg, + mPm.getPackageUidAsUser(pkg, changeUserId)); + if (fullPackagePreferences != null) { + updated |= createDefaultChannelIfNeededLocked(fullPackagePreferences); + updated |= deleteDefaultChannelIfNeededLocked(fullPackagePreferences); } } catch (PackageManager.NameNotFoundException e) { } @@ -2704,7 +2709,7 @@ public class PreferencesHelper implements RankingConfig { } public void clearData(String pkg, int uid) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences p = getPackagePreferencesLocked(pkg, uid); if (p != null) { p.channels = new ArrayMap<>(); @@ -2891,7 +2896,7 @@ public class PreferencesHelper implements RankingConfig { } public void unlockAllNotificationChannels() { - synchronized (mPackagePreferences) { + synchronized (mLock) { final int numPackagePreferences = mPackagePreferences.size(); for (int i = 0; i < numPackagePreferences; i++) { final PackagePreferences r = mPackagePreferences.valueAt(i); @@ -2908,7 +2913,7 @@ public class PreferencesHelper implements RankingConfig { PackageManager.PackageInfoFlags.of(PackageManager.MATCH_ALL), user.getUserHandle().getIdentifier()); for (PackageInfo pi : packages) { - synchronized (mPackagePreferences) { + synchronized (mLock) { PackagePreferences p = getOrCreatePackagePreferencesLocked( pi.packageName, pi.applicationInfo.uid); if (p.migrateToPm && p.uid != UNKNOWN_UID) { diff --git a/services/core/java/com/android/server/notification/TEST_MAPPING b/services/core/java/com/android/server/notification/TEST_MAPPING index 468c4518602e..dc7129cde5e5 100644 --- a/services/core/java/com/android/server/notification/TEST_MAPPING +++ b/services/core/java/com/android/server/notification/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "CtsNotificationTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsNotificationTestCases_notification" }, { - "name": "FrameworksUiServicesTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "FrameworksUiServicesTests_notification" } ], "postsubmit": [ diff --git a/services/core/java/com/android/server/om/TEST_MAPPING b/services/core/java/com/android/server/om/TEST_MAPPING index 82e7817720af..ce047bb203b3 100644 --- a/services/core/java/com/android/server/om/TEST_MAPPING +++ b/services/core/java/com/android/server/om/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.om." - } - ] + "name": "FrameworksServicesTests_android_server_om" }, { "name": "OverlayDeviceTests" diff --git a/services/core/java/com/android/server/os/NativeTombstoneManager.java b/services/core/java/com/android/server/os/NativeTombstoneManager.java index 3bcaf58d0a13..f23d7823be94 100644 --- a/services/core/java/com/android/server/os/NativeTombstoneManager.java +++ b/services/core/java/com/android/server/os/NativeTombstoneManager.java @@ -96,12 +96,15 @@ public final class NativeTombstoneManager { mHandler = thread.getThreadHandler(); mWatcher = new TombstoneWatcher(); - mWatcher.startWatching(); } void onSystemReady() { registerForUserRemoval(); registerForPackageRemoval(); + // TombstoneWatcher depends on DropboxManagerService. + // DropboxManagerService started before systemReady. + // So it is good to call startWatching here. + mWatcher.startWatching(); BootReceiver.initDropboxRateLimiter(); diff --git a/services/core/java/com/android/server/os/TEST_MAPPING b/services/core/java/com/android/server/os/TEST_MAPPING index 50c8964b2aa4..3ffcd186dc4b 100644 --- a/services/core/java/com/android/server/os/TEST_MAPPING +++ b/services/core/java/com/android/server/os/TEST_MAPPING @@ -2,36 +2,18 @@ "presubmit": [ { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "BugreportManagerTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "BugreportManagerTestCases_android_server_os" }, { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "CtsBugreportTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - } - ] + "name": "CtsBugreportTestCases_android_server_os" }, { "name": "CtsUsbTests" }, { "file_patterns": ["Bugreport[^/]*\\.java"], - "name": "ShellTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "ShellTests_android_server_os" } ], "postsubmit": [ diff --git a/services/core/java/com/android/server/pdb/PersistentDataBlockService.java b/services/core/java/com/android/server/pdb/PersistentDataBlockService.java index c5e2bb87afd3..1e35a2735a5a 100644 --- a/services/core/java/com/android/server/pdb/PersistentDataBlockService.java +++ b/services/core/java/com/android/server/pdb/PersistentDataBlockService.java @@ -170,7 +170,6 @@ public class PersistentDataBlockService extends SystemService { static final int MAX_DATA_BLOCK_SIZE = 1024 * 100; public static final int DIGEST_SIZE_BYTES = 32; - private static final String OEM_UNLOCK_PROP = "sys.oem_unlock_allowed"; private static final String FLASH_LOCK_PROP = "ro.boot.flash.locked"; private static final String FLASH_LOCK_LOCKED = "1"; private static final String FLASH_LOCK_UNLOCKED = "0"; @@ -274,7 +273,6 @@ public class PersistentDataBlockService extends SystemService { enforceChecksumValidity(); if (mFrpEnforced) { automaticallyDeactivateFrpIfPossible(); - setOemUnlockEnabledProperty(doGetOemUnlockEnabled()); setOldSettingForBackworkCompatibility(mFrpActive); } else { formatIfOemUnlockEnabled(); @@ -302,10 +300,6 @@ public class PersistentDataBlockService extends SystemService { } } - private void setOemUnlockEnabledProperty(boolean oemUnlockEnabled) { - setProperty(OEM_UNLOCK_PROP, oemUnlockEnabled ? "1" : "0"); - } - @Override public void onBootPhase(int phase) { // Wait for initialization in onStart to finish @@ -341,7 +335,6 @@ public class PersistentDataBlockService extends SystemService { formatPartitionLocked(true); } } - setOemUnlockEnabledProperty(enabled); } private void enforceOemUnlockReadPermission() { @@ -808,17 +801,9 @@ public class PersistentDataBlockService extends SystemService { channel.force(true); } catch (IOException e) { Slog.e(TAG, "unable to access persistent partition", e); - return; - } finally { - setOemUnlockEnabledProperty(enabled); } } - @VisibleForTesting - void setProperty(String name, String value) { - SystemProperties.set(name, value); - } - private boolean doGetOemUnlockEnabled() { DataInputStream inputStream; try { diff --git a/services/core/java/com/android/server/pdb/TEST_MAPPING b/services/core/java/com/android/server/pdb/TEST_MAPPING index 9e9802354a4d..ed6dfd8e948f 100644 --- a/services/core/java/com/android/server/pdb/TEST_MAPPING +++ b/services/core/java/com/android/server/pdb/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.pdb.PersistentDataBlockServiceTest" - } - ] + "name": "FrameworksServicesTests_android_server_pdb" } ] } diff --git a/services/core/java/com/android/server/pm/ApexManager.java b/services/core/java/com/android/server/pm/ApexManager.java index 5d71439e8f46..458b46dab54c 100644 --- a/services/core/java/com/android/server/pm/ApexManager.java +++ b/services/core/java/com/android/server/pm/ApexManager.java @@ -592,7 +592,7 @@ public abstract class ApexManager { return apexSessionInfo; } catch (RemoteException re) { Slog.e(TAG, "Unable to contact apexservice", re); - throw new RuntimeException(re); + return null; } } @@ -607,7 +607,7 @@ public abstract class ApexManager { return result; } catch (RemoteException re) { Slog.e(TAG, "Unable to contact apexservice", re); - throw new RuntimeException(re); + return new SparseArray<>(0); } } @@ -619,7 +619,9 @@ public abstract class ApexManager { return apexInfoList; } catch (RemoteException re) { Slog.e(TAG, "Unable to contact apexservice", re); - throw new RuntimeException(re); + throw new PackageManagerException( + PackageManager.INSTALL_FAILED_VERIFICATION_FAILURE, + "apexd verification failed : " + re.getMessage()); } catch (Exception e) { throw new PackageManagerException( PackageManager.INSTALL_FAILED_VERIFICATION_FAILURE, @@ -633,7 +635,7 @@ public abstract class ApexManager { return waitForApexService().getStagedApexInfos(params); } catch (RemoteException re) { Slog.w(TAG, "Unable to contact apexservice" + re.getMessage()); - throw new RuntimeException(re); + return new ApexInfo[0]; } catch (Exception e) { Slog.w(TAG, "Failed to collect staged apex infos" + e.getMessage()); return new ApexInfo[0]; @@ -646,7 +648,9 @@ public abstract class ApexManager { waitForApexService().markStagedSessionReady(sessionId); } catch (RemoteException re) { Slog.e(TAG, "Unable to contact apexservice", re); - throw new RuntimeException(re); + throw new PackageManagerException( + PackageManager.INSTALL_FAILED_VERIFICATION_FAILURE, + "Failed to mark apexd session as ready : " + re.getMessage()); } catch (Exception e) { throw new PackageManagerException( PackageManager.INSTALL_FAILED_VERIFICATION_FAILURE, diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java index f59ae168bdc3..ee0159d722b1 100644 --- a/services/core/java/com/android/server/pm/ComputerEngine.java +++ b/services/core/java/com/android/server/pm/ComputerEngine.java @@ -2207,11 +2207,17 @@ public class ComputerEngine implements Computer { if (PackageManagerServiceUtils.isSystemOrRoot(callingUid)) { return true; } - if (requireFullPermission) { - return hasPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL); + boolean permissionGranted = requireFullPermission ? hasPermission( + Manifest.permission.INTERACT_ACROSS_USERS_FULL) + : (hasPermission( + android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) + || hasPermission(Manifest.permission.INTERACT_ACROSS_USERS)); + if (!permissionGranted) { + if (Process.isIsolatedUid(callingUid) && isKnownIsolatedComputeApp(callingUid)) { + return checkIsolatedOwnerHasPermission(callingUid, requireFullPermission); + } } - return hasPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) - || hasPermission(Manifest.permission.INTERACT_ACROSS_USERS); + return permissionGranted; } /** @@ -2227,6 +2233,24 @@ public class ComputerEngine implements Computer { == PackageManager.PERMISSION_GRANTED; } + private boolean hasPermission(String permission, int uid) { + return mContext.checkPermission(permission, Process.INVALID_PID, uid) + == PackageManager.PERMISSION_GRANTED; + } + + /** + * Since isolated process cannot hold permissions, we check the permissions on the owner app + * for known isolated_compute_app cases because they belong to the same package. + */ + private boolean checkIsolatedOwnerHasPermission(int callingUid, boolean requireFullPermission) { + int ownerUid = getIsolatedOwner(callingUid); + if (requireFullPermission) { + return hasPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL, ownerUid); + } + return hasPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL, ownerUid) + || hasPermission(Manifest.permission.INTERACT_ACROSS_USERS, ownerUid); + } + public final boolean isCallerSameApp(String packageName, int uid) { return isCallerSameApp(packageName, uid, false /* resolveIsolatedUid */); } diff --git a/services/core/java/com/android/server/pm/DexOptHelper.java b/services/core/java/com/android/server/pm/DexOptHelper.java index e34bdc60cfdb..07f069f98edc 100644 --- a/services/core/java/com/android/server/pm/DexOptHelper.java +++ b/services/core/java/com/android/server/pm/DexOptHelper.java @@ -87,6 +87,7 @@ import java.io.File; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.Comparator; @@ -813,7 +814,8 @@ public final class DexOptHelper { @Override public void onApexStaged(@NonNull ApexStagedEvent event) { - mArtManager.onApexStaged(event.stagedApexModuleNames); + mArtManager.onApexStaged(Arrays.stream(event.stagedApexInfos) + .map(info -> info.moduleName).toArray(String[]::new)); } } } diff --git a/services/core/java/com/android/server/pm/InstallPackageHelper.java b/services/core/java/com/android/server/pm/InstallPackageHelper.java index 1bdc58691114..26c1edb79787 100644 --- a/services/core/java/com/android/server/pm/InstallPackageHelper.java +++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java @@ -501,9 +501,9 @@ final class InstallPackageHelper { mPm.setUpCustomResolverActivity(pkg, pkgSetting); } - // When upgrading a package, pkgSetting is copied from oldPkgSetting. Clear the app - // metadata file path for the new package. - if (oldPkgSetting != null) { + // When upgrading a package, clear the app metadata file path for the new package. + if (oldPkgSetting != null + && oldPkgSetting.getLastUpdateTime() < pkgSetting.getLastUpdateTime()) { pkgSetting.setAppMetadataFilePath(null); pkgSetting.setAppMetadataSource(APP_METADATA_SOURCE_UNKNOWN); } @@ -2504,13 +2504,13 @@ final class InstallPackageHelper { Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER); } - private void enableRestrictedSettings(String pkgName, int appId, int userId) { + private void setAccessRestrictedSettingsMode(String pkgName, int appId, int userId, int mode) { final AppOpsManager appOpsManager = mPm.mContext.getSystemService(AppOpsManager.class); final int uid = UserHandle.getUid(userId, appId); appOpsManager.setMode(AppOpsManager.OP_ACCESS_RESTRICTED_SETTINGS, uid, pkgName, - AppOpsManager.MODE_ERRORED); + mode); } /** @@ -2888,8 +2888,21 @@ final class InstallPackageHelper { mPm.notifyPackageChanged(packageName, request.getAppId()); } - if (!android.permission.flags.Flags.enhancedConfirmationModeApisEnabled() - || !android.security.Flags.extendEcmToAllSettings()) { + // Set the OP_ACCESS_RESTRICTED_SETTINGS op, which is used by ECM (see {@link + // EnhancedConfirmationManager}) as a persistent state denoting whether an app is + // currently guarded by ECM, not guarded by ECM, or (in Android V+) that this should + // be decided later. + if (android.permission.flags.Flags.enhancedConfirmationModeApisEnabled() + && android.security.Flags.extendEcmToAllSettings()) { + final int appId = request.getAppId(); + mPm.mHandler.post(() -> { + for (int userId : firstUserIds) { + // MODE_DEFAULT means that the app's guardedness will be decided lazily + setAccessRestrictedSettingsMode(packageName, appId, userId, + AppOpsManager.MODE_DEFAULT); + } + }); + } else { // Apply restricted settings on potentially dangerous packages. Needs to happen // after appOpsManager is notified of the new package if (request.getPackageSource() == PackageInstaller.PACKAGE_SOURCE_LOCAL_FILE @@ -2898,7 +2911,9 @@ final class InstallPackageHelper { final int appId = request.getAppId(); mPm.mHandler.post(() -> { for (int userId : firstUserIds) { - enableRestrictedSettings(packageName, appId, userId); + // MODE_ERRORED means that the app is explicitly guarded + setAccessRestrictedSettingsMode(packageName, appId, userId, + AppOpsManager.MODE_ERRORED); } }); } diff --git a/services/core/java/com/android/server/pm/LauncherAppsService.java b/services/core/java/com/android/server/pm/LauncherAppsService.java index 563cfa4d0ecd..023f7655c7a8 100644 --- a/services/core/java/com/android/server/pm/LauncherAppsService.java +++ b/services/core/java/com/android/server/pm/LauncherAppsService.java @@ -71,6 +71,7 @@ import android.content.pm.IPackageInstallerCallback; import android.content.pm.IPackageManager; import android.content.pm.IShortcutChangeCallback; import android.content.pm.IncrementalStatesInfo; +import android.content.pm.InstallSourceInfo; import android.content.pm.LauncherActivityInfoInternal; import android.content.pm.LauncherApps; import android.content.pm.LauncherApps.ShortcutQuery; @@ -1856,9 +1857,11 @@ public class LauncherAppsService extends SystemService { private String getInstallerPackage(@NonNull String packageName, int callingUserId) { String installerPackageName = null; try { - installerPackageName = - mIPM.getInstallSourceInfo(packageName, callingUserId) - .getInstallingPackageName(); + InstallSourceInfo info = mIPM.getInstallSourceInfo(packageName, callingUserId); + if (info == null) { + return installerPackageName; + } + installerPackageName = info.getInstallingPackageName(); } catch (RemoteException re) { Slog.e(TAG, "Couldn't find installer for " + packageName, re); } diff --git a/services/core/java/com/android/server/pm/PackageManagerNative.java b/services/core/java/com/android/server/pm/PackageManagerNative.java index 66ecd6e67e56..7d8573e35522 100644 --- a/services/core/java/com/android/server/pm/PackageManagerNative.java +++ b/services/core/java/com/android/server/pm/PackageManagerNative.java @@ -20,7 +20,6 @@ import static android.content.pm.PackageManager.CERT_INPUT_SHA256; import static com.android.server.pm.PackageManagerService.TAG; -import android.annotation.Nullable; import android.content.pm.ApplicationInfo; import android.content.pm.IPackageManagerNative; import android.content.pm.IStagedApexObserver; @@ -184,14 +183,8 @@ final class PackageManagerNative extends IPackageManagerNative.Stub { } @Override - public String[] getStagedApexModuleNames() { - return mPm.mInstallerService.getStagingManager() - .getStagedApexModuleNames().toArray(new String[0]); - } - - @Override - @Nullable - public StagedApexInfo getStagedApexInfo(String moduleName) { - return mPm.mInstallerService.getStagingManager().getStagedApexInfo(moduleName); + public StagedApexInfo[] getStagedApexInfos() { + return mPm.mInstallerService.getStagingManager().getStagedApexInfos().toArray( + new StagedApexInfo[0]); } } diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 8279ea07dcc3..f9c103762815 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -371,6 +371,7 @@ public class PackageManagerService implements PackageSender, TestUtilityService private static final int SE_UID = Process.SE_UID; private static final int NETWORKSTACK_UID = Process.NETWORK_STACK_UID; private static final int UWB_UID = Process.UWB_UID; + private static final int VENDOR_DATA_UID = Process.VENDOR_DATA_UID; static final int SCAN_NO_DEX = 1 << 0; static final int SCAN_UPDATE_SIGNATURE = 1 << 1; @@ -4282,6 +4283,10 @@ public class PackageManagerService implements PackageSender, TestUtilityService if (intent == null) { return; } + final String action = intent.getAction(); + if (action == null) { + return; + } Uri data = intent.getData(); if (data == null) { return; diff --git a/services/core/java/com/android/server/pm/ReconcilePackageUtils.java b/services/core/java/com/android/server/pm/ReconcilePackageUtils.java index 90d6adc4fa52..630fcb614eb3 100644 --- a/services/core/java/com/android/server/pm/ReconcilePackageUtils.java +++ b/services/core/java/com/android/server/pm/ReconcilePackageUtils.java @@ -185,7 +185,8 @@ final class ReconcilePackageUtils { removeAppKeySetData = true; } - if (!installRequest.isInstallSystem() && !isSystemPackage && !isApex + if ((installRequest.getScanFlags() & SCAN_BOOTING) == 0 + && !installRequest.isInstallSystem() && !isSystemPackage && !isApex && signingDetails != null && systemPackage != null && systemPackage.getSigningDetails() != null && systemPackage.getSigningDetails().checkCapability( diff --git a/services/core/java/com/android/server/pm/ResolveIntentHelper.java b/services/core/java/com/android/server/pm/ResolveIntentHelper.java index 69490a81fc86..5b4f310655cd 100644 --- a/services/core/java/com/android/server/pm/ResolveIntentHelper.java +++ b/services/core/java/com/android/server/pm/ResolveIntentHelper.java @@ -126,10 +126,12 @@ final class ResolveIntentHelper { userId, resolveForStart, /*allowDynamicSplits*/ true); Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER); - var args = new SaferIntentUtils.IntentArgs(intent, resolvedType, - false /* isReceiver */, resolveForStart, filterCallingUid, callingPid); - args.platformCompat = mPlatformCompat; - SaferIntentUtils.filterNonExportedComponents(args, query); + if (resolveForStart) { + var args = new SaferIntentUtils.IntentArgs(intent, resolvedType, + false /* isReceiver */, true, filterCallingUid, callingPid); + args.platformCompat = mPlatformCompat; + SaferIntentUtils.filterNonExportedComponents(args, query); + } final boolean queryMayBeFiltered = UserHandle.getAppId(filterCallingUid) >= Process.FIRST_APPLICATION_UID diff --git a/services/core/java/com/android/server/pm/SaferIntentUtils.java b/services/core/java/com/android/server/pm/SaferIntentUtils.java index 8175321ea293..9a7ba0f082ea 100644 --- a/services/core/java/com/android/server/pm/SaferIntentUtils.java +++ b/services/core/java/com/android/server/pm/SaferIntentUtils.java @@ -104,6 +104,7 @@ public class SaferIntentUtils { @Disabled private static final long ENFORCE_INTENTS_TO_MATCH_INTENT_FILTERS = 161252188; + @Nullable private static ParsedMainComponent infoToComponent( ComponentInfo info, ComponentResolverApi resolver, boolean isReceiver) { if (info instanceof ActivityInfo) { @@ -186,7 +187,7 @@ public class SaferIntentUtils { } boolean isChangeEnabled(long changeId) { - return platformCompat == null || platformCompat.isChangeEnabledByUidInternal( + return platformCompat == null || platformCompat.isChangeEnabledByUidInternalNoLogging( changeId, callingUid); } @@ -233,7 +234,8 @@ public class SaferIntentUtils { } final ParsedMainComponent comp = infoToComponent( resolveInfo.getComponentInfo(), resolver, args.isReceiver); - if (!comp.getIntents().isEmpty() && args.intent.getAction() == null) { + if (comp != null && !comp.getIntents().isEmpty() + && args.intent.getAction() == null) { match = false; } } else if (c instanceof IntentFilter) { diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java index 2eb9a384a016..0a60b5936784 100644 --- a/services/core/java/com/android/server/pm/Settings.java +++ b/services/core/java/com/android/server/pm/Settings.java @@ -5478,18 +5478,18 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile } if (!paths.getOverlayPaths().isEmpty()) { pw.print(prefix); - pw.println(" "); + pw.print(" "); pw.print(libOverlayPaths.getKey()); pw.println(" overlay paths:"); for (String path : paths.getOverlayPaths()) { pw.print(prefix); - pw.print(" "); + pw.print(" "); pw.println(path); } } if (!paths.getResourceDirs().isEmpty()) { pw.print(prefix); - pw.println(" "); + pw.print(" "); pw.print(libOverlayPaths.getKey()); pw.println(" legacy overlay paths:"); for (String path : paths.getResourceDirs()) { diff --git a/services/core/java/com/android/server/pm/StagingManager.java b/services/core/java/com/android/server/pm/StagingManager.java index 74594cce0041..90b09cfe83c1 100644 --- a/services/core/java/com/android/server/pm/StagingManager.java +++ b/services/core/java/com/android/server/pm/StagingManager.java @@ -17,7 +17,6 @@ package com.android.server.pm; import android.annotation.NonNull; -import android.annotation.Nullable; import android.apex.ApexInfo; import android.apex.ApexSessionInfo; import android.apex.ApexSessionParams; @@ -38,7 +37,6 @@ import android.os.SystemProperties; import android.os.Trace; import android.os.UserHandle; import android.text.TextUtils; -import android.util.ArrayMap; import android.util.ArraySet; import android.util.IntArray; import android.util.Slog; @@ -65,9 +63,9 @@ import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Map; import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; @@ -807,14 +805,13 @@ public class StagingManager { } /** - * Returns ApexInfo about APEX contained inside the session as a {@code Map<String, ApexInfo>}, - * where the key of the map is the module name of the ApexInfo. + * Returns ApexInfo about APEX contained inside the session. * - * Returns an empty map if there is any error. + * Returns an empty list if there is any error. */ @VisibleForTesting @NonNull - Map<String, ApexInfo> getStagedApexInfos(@NonNull StagedSession session) { + List<ApexInfo> getStagedApexInfos(@NonNull StagedSession session) { Preconditions.checkArgument(session != null, "Session is null"); Preconditions.checkArgument(!session.hasParentSessionId(), session.sessionId() + " session has parent session"); @@ -824,7 +821,7 @@ public class StagingManager { // Even if caller calls this method on ready session, the session could be abandoned // right after this method is called. if (!session.isSessionReady() || session.isDestroyed()) { - return Collections.emptyMap(); + return Collections.emptyList(); } ApexSessionParams params = new ApexSessionParams(); @@ -838,38 +835,17 @@ public class StagingManager { } } params.childSessionIds = childSessionIds.toArray(); - - ApexInfo[] infos = mApexManager.getStagedApexInfos(params); - Map<String, ApexInfo> result = new ArrayMap<>(); - for (ApexInfo info : infos) { - result.put(info.moduleName, info); - } - return result; + return Arrays.asList(mApexManager.getStagedApexInfos(params)); } /** - * Returns apex module names of all packages that are staged ready - */ - List<String> getStagedApexModuleNames() { - List<String> result = new ArrayList<>(); - synchronized (mStagedSessions) { - for (int i = 0; i < mStagedSessions.size(); i++) { - final StagedSession session = mStagedSessions.valueAt(i); - if (!session.isSessionReady() || session.isDestroyed() - || session.hasParentSessionId() || !session.containsApexSession()) { - continue; - } - result.addAll(getStagedApexInfos(session).keySet()); - } - } - return result; - } - - /** - * Returns ApexInfo of the {@code moduleInfo} provided if it is staged, otherwise returns null. + * Returns ApexInfo list about APEXes contained inside all staged sessions. + * + * Returns an empty list if there is any error. */ - @Nullable - StagedApexInfo getStagedApexInfo(String moduleName) { + @NonNull + List<StagedApexInfo> getStagedApexInfos() { + List<StagedApexInfo> result = new ArrayList<>(); synchronized (mStagedSessions) { for (int i = 0; i < mStagedSessions.size(); i++) { final StagedSession session = mStagedSessions.valueAt(i); @@ -877,8 +853,7 @@ public class StagingManager { || session.hasParentSessionId() || !session.containsApexSession()) { continue; } - ApexInfo ai = getStagedApexInfos(session).get(moduleName); - if (ai != null) { + getStagedApexInfos(session).stream().map(ai -> { StagedApexInfo info = new StagedApexInfo(); info.moduleName = ai.moduleName; info.diskImagePath = ai.modulePath; @@ -886,17 +861,19 @@ public class StagingManager { info.versionName = ai.versionName; info.hasClassPathJars = ai.hasClassPathJars; return info; - } + }).forEach(result::add); } } - return null; + return result; } private void notifyStagedApexObservers() { synchronized (mStagedApexObservers) { + List<StagedApexInfo> stagedApexInfos = getStagedApexInfos(); + ApexStagedEvent event = new ApexStagedEvent(); + event.stagedApexInfos = + stagedApexInfos.toArray(new StagedApexInfo[stagedApexInfos.size()]); for (IStagedApexObserver observer : mStagedApexObservers) { - ApexStagedEvent event = new ApexStagedEvent(); - event.stagedApexModuleNames = getStagedApexModuleNames().toArray(new String[0]); try { observer.onApexStaged(event); } catch (RemoteException re) { diff --git a/services/core/java/com/android/server/pm/TEST_MAPPING b/services/core/java/com/android/server/pm/TEST_MAPPING index e12b70f033c3..372bbc445b79 100644 --- a/services/core/java/com/android/server/pm/TEST_MAPPING +++ b/services/core/java/com/android/server/pm/TEST_MAPPING @@ -29,12 +29,7 @@ "name": "CtsMatchFlagTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.pm." - } - ] + "name": "FrameworksMockingServicesTests_android_server_pm" }, { "file_patterns": ["(/|^)PackageManagerService\\.java","(/|^)UserManagerService\\.java"], diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index db94d0e8b0ba..695e58dad01c 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -58,6 +58,7 @@ import android.app.ActivityManager; import android.app.ActivityManagerInternal; import android.app.ActivityManagerNative; import android.app.ActivityOptions; +import android.app.AlarmManager; import android.app.BroadcastOptions; import android.app.IActivityManager; import android.app.IStopUserCallback; @@ -322,6 +323,12 @@ public class UserManagerService extends IUserManager.Stub { */ private static final long PRIVATE_SPACE_AUTO_LOCK_INACTIVITY_TIMEOUT_MS = 5 * 60 * 1000; + /** + * The time duration (in milliseconds) of the window length for the auto-lock message alarm + */ + private static final long PRIVATE_SPACE_AUTO_LOCK_INACTIVITY_ALARM_WINDOW_MS = + TimeUnit.SECONDS.toMillis(55); + // Tron counters private static final String TRON_GUEST_CREATED = "users_guest_created"; private static final String TRON_USER_CREATED = "users_user_created"; @@ -552,8 +559,15 @@ public class UserManagerService extends IUserManager.Stub { private KeyguardManager.KeyguardLockedStateListener mKeyguardLockedStateListener; - /** Token to identify and remove already scheduled private space auto-lock messages */ - private static final Object PRIVATE_SPACE_AUTO_LOCK_MESSAGE_TOKEN = new Object(); + /** + * {@link android.app.AlarmManager.OnAlarmListener} to schedule an alarm to enable + * auto-locking private space after screen timeout + */ + private PrivateSpaceAutoLockTimer mPrivateSpaceAutoLockTimer; + + /** Tag representing the alarm manager timer for auto-locking private space */ + private static final String PRIVATE_SPACE_AUTO_LOCK_TIMER_TAG = "PrivateSpaceAutoLockTimer"; + /** Content observer to get callbacks for privte space autolock settings changes */ private final SettingsObserver mPrivateSpaceAutoLockSettingsObserver; @@ -604,22 +618,28 @@ public class UserManagerService extends IUserManager.Stub { public void onReceive(Context context, Intent intent) { if (isAutoLockForPrivateSpaceEnabled()) { if (ACTION_SCREEN_OFF.equals(intent.getAction())) { - Slog.d(LOG_TAG, "SCREEN_OFF broadcast received"); - maybeScheduleMessageToAutoLockPrivateSpace(); + maybeScheduleAlarmToAutoLockPrivateSpace(); } else if (ACTION_SCREEN_ON.equals(intent.getAction())) { Slog.d(LOG_TAG, "SCREEN_ON broadcast received, " - + "removing queued message to auto-lock private space"); - // Remove any queued messages since the device is interactive again - mHandler.removeCallbacksAndMessages(PRIVATE_SPACE_AUTO_LOCK_MESSAGE_TOKEN); + + "removing pending alarms to auto-lock private space"); + // Remove any pending alarm since the device is interactive again + cancelPendingAutoLockAlarms(); } } } }; + private void cancelPendingAutoLockAlarms() { + final AlarmManager alarmManager = mContext.getSystemService(AlarmManager.class); + if (alarmManager != null && mPrivateSpaceAutoLockTimer != null) { + alarmManager.cancel(mPrivateSpaceAutoLockTimer); + } + } + @VisibleForTesting - void maybeScheduleMessageToAutoLockPrivateSpace() { + void maybeScheduleAlarmToAutoLockPrivateSpace() { // No action needed if auto-lock on inactivity not selected - int privateSpaceAutoLockPreference = + final int privateSpaceAutoLockPreference = Settings.Secure.getIntForUser(mContext.getContentResolver(), Settings.Secure.PRIVATE_SPACE_AUTO_LOCK, Settings.Secure.PRIVATE_SPACE_AUTO_LOCK_AFTER_DEVICE_RESTART, @@ -632,26 +652,65 @@ public class UserManagerService extends IUserManager.Stub { } int privateProfileUserId = getPrivateProfileUserId(); if (privateProfileUserId != UserHandle.USER_NULL) { - scheduleMessageToAutoLockPrivateSpace(privateProfileUserId, - PRIVATE_SPACE_AUTO_LOCK_MESSAGE_TOKEN, + if (isQuietModeEnabled(privateProfileUserId)) { + Slogf.d(LOG_TAG, "Not scheduling auto-lock alarm for %d, " + + "quiet mode already enabled", privateProfileUserId); + return; + } + scheduleAlarmToAutoLockPrivateSpace(privateProfileUserId, PRIVATE_SPACE_AUTO_LOCK_INACTIVITY_TIMEOUT_MS); } } @VisibleForTesting - void scheduleMessageToAutoLockPrivateSpace(int userId, Object token, - long delayInMillis) { - Slog.i(LOG_TAG, "Scheduling auto-lock message"); - mHandler.postDelayed(() -> { + void scheduleAlarmToAutoLockPrivateSpace(int userId, long delayInMillis) { + final AlarmManager alarmManager = mContext.getSystemService(AlarmManager.class); + if (alarmManager == null) { + Slog.e(LOG_TAG, "AlarmManager not available, cannot schedule auto-lock alarm"); + return; + } + initPrivateSpaceAutoLockTimer(userId); + final long alarmWindowStartTime = SystemClock.elapsedRealtime() + delayInMillis; + alarmManager.setWindow(AlarmManager.ELAPSED_REALTIME_WAKEUP, + alarmWindowStartTime, + PRIVATE_SPACE_AUTO_LOCK_INACTIVITY_ALARM_WINDOW_MS, + PRIVATE_SPACE_AUTO_LOCK_TIMER_TAG, + new HandlerExecutor(mHandler), + mPrivateSpaceAutoLockTimer); + } + + private void initPrivateSpaceAutoLockTimer(int userId) { + cancelPendingAutoLockAlarms(); + if (mPrivateSpaceAutoLockTimer == null + || mPrivateSpaceAutoLockTimer.getUserId() != userId) { + mPrivateSpaceAutoLockTimer = new PrivateSpaceAutoLockTimer(userId); + } + } + + private class PrivateSpaceAutoLockTimer implements AlarmManager.OnAlarmListener { + + private final int mUserId; + + PrivateSpaceAutoLockTimer(int userId) { + mUserId = userId; + } + + int getUserId() { + return mUserId; + } + + @Override + public void onAlarm() { final PowerManager powerManager = mContext.getSystemService(PowerManager.class); if (powerManager != null && !powerManager.isInteractive()) { - Slog.i(LOG_TAG, "Auto-locking private space with user-id " + userId); - setQuietModeEnabledAsync(userId, true, + Slog.i(LOG_TAG, "Auto-locking private space with user-id " + mUserId); + setQuietModeEnabledAsync(mUserId, true, /* target */ null, mContext.getPackageName()); } else { - Slog.i(LOG_TAG, "Device is interactive, skipping auto-lock"); + Slog.i(LOG_TAG, "Device is interactive, skipping auto-lock for profile user " + + mUserId); } - }, token, delayInMillis); + } } @RequiresPermission(Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) @@ -697,7 +756,7 @@ public class UserManagerService extends IUserManager.Stub { // Unregister device inactivity broadcasts if (mIsDeviceInactivityBroadcastReceiverRegistered) { Slog.i(LOG_TAG, "Removing device inactivity broadcast receivers"); - mHandler.removeCallbacksAndMessages(PRIVATE_SPACE_AUTO_LOCK_MESSAGE_TOKEN); + cancelPendingAutoLockAlarms(); mContext.unregisterReceiver(mDeviceInactivityBroadcastReceiver); mIsDeviceInactivityBroadcastReceiverRegistered = false; } diff --git a/services/core/java/com/android/server/pm/dex/TEST_MAPPING b/services/core/java/com/android/server/pm/dex/TEST_MAPPING index 1c86c4f72ff9..64bcc22586fc 100644 --- a/services/core/java/com/android/server/pm/dex/TEST_MAPPING +++ b/services/core/java/com/android/server/pm/dex/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.pm.dex" - } - ] + "name": "FrameworksServicesTests_android_server_pm_dex" }, { "name": "DynamicCodeLoggerIntegrationTests" diff --git a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java index 57ea233c0a2b..ada812e58e77 100644 --- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java +++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java @@ -149,6 +149,13 @@ final class DefaultPermissionGrantPolicy { CONTACTS_PERMISSIONS.add(Manifest.permission.GET_ACCOUNTS); } + private static final Set<String> CALL_LOG_PERMISSIONS = new ArraySet<>(); + static { + CALL_LOG_PERMISSIONS.add(Manifest.permission.READ_CALL_LOG); + CALL_LOG_PERMISSIONS.add(Manifest.permission.WRITE_CALL_LOG); + } + + private static final Set<String> ALWAYS_LOCATION_PERMISSIONS = new ArraySet<>(); static { ALWAYS_LOCATION_PERMISSIONS.add(Manifest.permission.ACCESS_FINE_LOCATION); @@ -753,7 +760,7 @@ final class DefaultPermissionGrantPolicy { String contactsProviderPackage = getDefaultProviderAuthorityPackage(ContactsContract.AUTHORITY, userId); grantSystemFixedPermissionsToSystemPackage(pm, contactsProviderPackage, userId, - CONTACTS_PERMISSIONS, PHONE_PERMISSIONS); + CONTACTS_PERMISSIONS, PHONE_PERMISSIONS, CALL_LOG_PERMISSIONS); grantPermissionsToSystemPackage(pm, contactsProviderPackage, userId, STORAGE_PERMISSIONS); // Device provisioning @@ -1353,7 +1360,7 @@ final class DefaultPermissionGrantPolicy { for (int requestedPermissionNum = 0; requestedPermissionNum < numRequestedPermissions; requestedPermissionNum++) { - String permission = requestedPermissions[requestedPermissionNum]; + String permission = sortedRequestedPermissions[requestedPermissionNum]; // If there is a disabled system app it may request a permission the updated // version ot the data partition doesn't, In this case skip the permission. diff --git a/services/core/java/com/android/server/pm/permission/TEST_MAPPING b/services/core/java/com/android/server/pm/permission/TEST_MAPPING index 24323c8bfbde..8a3c74b4879c 100644 --- a/services/core/java/com/android/server/pm/permission/TEST_MAPPING +++ b/services/core/java/com/android/server/pm/permission/TEST_MAPPING @@ -1,24 +1,7 @@ { "presubmit": [ { - "name": "CtsPermissionTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.permission.cts.BackgroundPermissionsTest" - }, - { - "include-filter": "android.permission.cts.SplitPermissionTest" - }, - { - "include-filter": "android.permission.cts.PermissionFlagsTest" - }, - { - "include-filter": "android.permission.cts.SharedUidPermissionsTest" - } - ] + "name": "CtsPermissionTestCases_Platform" }, { "name": "CtsAppSecurityHostTestCases", diff --git a/services/core/java/com/android/server/pm/verify/domain/TEST_MAPPING b/services/core/java/com/android/server/pm/verify/domain/TEST_MAPPING index 8a1982a339ea..db98c402eeeb 100644 --- a/services/core/java/com/android/server/pm/verify/domain/TEST_MAPPING +++ b/services/core/java/com/android/server/pm/verify/domain/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "PackageManagerServiceUnitTests", - "options": [ - { - "include-filter": "com.android.server.pm.test.verify.domain" - } - ] + "name": "PackageManagerServiceUnitTests_verify_domain" }, { "name": "CtsDomainVerificationDeviceStandaloneTestCases" diff --git a/services/core/java/com/android/server/policy/TEST_MAPPING b/services/core/java/com/android/server/policy/TEST_MAPPING index 338b479f1ad1..76a050350393 100644 --- a/services/core/java/com/android/server/policy/TEST_MAPPING +++ b/services/core/java/com/android/server/policy/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.policy." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksServicesTests_android_server_policy_Presubmit" }, { - "name": "WmTests", - "options": [ - { - "include-filter": "com.android.server.policy." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "WmTests_server_policy_Presubmit" }, { "name": "CtsPermissionPolicyTestCases", @@ -46,44 +24,18 @@ ] }, { - "name": "CtsPermissionTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.permission.cts.SplitPermissionTest" - }, - { - "include-filter": "android.permission.cts.BackgroundPermissionsTest" - } - ] + "name": "CtsPermissionTestCases_Platform" }, { - "name": "CtsBackupTestCases", - "options": [ - { - "include-filter": "android.backup.cts.PermissionTest" - } - ] + "name": "CtsBackupTestCases_cts_permissiontest" } ], "postsubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.policy." - } - ] + "name": "FrameworksServicesTests_android_server_policy" }, { - "name": "WmTests", - "options": [ - { - "include-filter": "com.android.server.policy." - } - ] + "name": "WmTests_server_policy" }, { "name": "CtsPermissionPolicyTestCases", diff --git a/services/core/java/com/android/server/policy/keyguard/KeyguardServiceDelegate.java b/services/core/java/com/android/server/policy/keyguard/KeyguardServiceDelegate.java index d0b70c391579..da8b01ac86fb 100644 --- a/services/core/java/com/android/server/policy/keyguard/KeyguardServiceDelegate.java +++ b/services/core/java/com/android/server/policy/keyguard/KeyguardServiceDelegate.java @@ -176,8 +176,9 @@ public class KeyguardServiceDelegate { final DreamManagerInternal dreamManager = LocalServices.getService(DreamManagerInternal.class); - - dreamManager.registerDreamManagerStateListener(mDreamManagerStateListener); + if(dreamManager != null){ + dreamManager.registerDreamManagerStateListener(mDreamManagerStateListener); + } } private final ServiceConnection mKeyguardConnection = new ServiceConnection() { diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java index ce0120c245d6..a36444bf5c0e 100644 --- a/services/core/java/com/android/server/power/PowerManagerService.java +++ b/services/core/java/com/android/server/power/PowerManagerService.java @@ -97,7 +97,6 @@ import android.provider.DeviceConfigInterface; import android.provider.Settings; import android.provider.Settings.SettingNotFoundException; import android.service.dreams.DreamManagerInternal; -import android.sysprop.InitProperties; import android.sysprop.PowerProperties; import android.util.ArrayMap; import android.util.IntArray; @@ -128,7 +127,6 @@ import com.android.server.RescueParty; import com.android.server.ServiceThread; import com.android.server.SystemService; import com.android.server.UiThread; -import com.android.server.UserspaceRebootLogger; import com.android.server.Watchdog; import com.android.server.am.BatteryStatsService; import com.android.server.display.feature.DeviceConfigParameterProvider; @@ -1274,8 +1272,7 @@ public final class PowerManagerService extends SystemService mHalInteractiveModeEnabled = true; mWakefulnessRaw = WAKEFULNESS_AWAKE; - sQuiescent = mSystemProperties.get(SYSTEM_PROPERTY_QUIESCENT, "0").equals("1") - || InitProperties.userspace_reboot_in_progress().orElse(false); + sQuiescent = mSystemProperties.get(SYSTEM_PROPERTY_QUIESCENT, "0").equals("1"); mNativeWrapper.nativeInit(this); mNativeWrapper.nativeSetAutoSuspend(false); @@ -1382,8 +1379,10 @@ public final class PowerManagerService extends SystemService new DisplayGroupPowerChangeListener(); mDisplayManagerInternal.registerDisplayGroupListener(displayGroupPowerChangeListener); - // This DreamManager method does not acquire a lock, so it should be safe to call. - mDreamManager.registerDreamManagerStateListener(new DreamManagerStateListener()); + if(mDreamManager != null){ + // This DreamManager method does not acquire a lock, so it should be safe to call. + mDreamManager.registerDreamManagerStateListener(new DreamManagerStateListener()); + } mWirelessChargerDetector = mInjector.createWirelessChargerDetector(sensorManager, mInjector.createSuspendBlocker( @@ -3540,7 +3539,7 @@ public final class PowerManagerService extends SystemService } // Stop dream. - if (isDreaming) { + if (isDreaming && mDreamManager != null) { mDreamManager.stopDream(/* immediate= */ false, "power manager request" /*reason*/); } } @@ -3660,7 +3659,7 @@ public final class PowerManagerService extends SystemService mBrightWhenDozingConfig); int wakefulness = powerGroup.getWakefulnessLocked(); if (DEBUG_SPEW) { - Slog.d(TAG, "updateDisplayPowerStateLocked: displayReady=" + ready + Slog.d(TAG, "updatePowerGroupsLocked: displayReady=" + ready + ", groupId=" + groupId + ", policy=" + policyToString(powerGroup.getPolicyLocked()) + ", mWakefulness=" @@ -4023,7 +4022,6 @@ public final class PowerManagerService extends SystemService throw new UnsupportedOperationException( "Attempted userspace reboot on a device that doesn't support it"); } - UserspaceRebootLogger.noteUserspaceRebootWasRequested(); } if (mHandler == null || !mSystemReady) { if (RescueParty.isRecoveryTriggeredReboot()) { diff --git a/services/core/java/com/android/server/power/TEST_MAPPING b/services/core/java/com/android/server/power/TEST_MAPPING index e64704a84cdf..f67f56db3c1e 100644 --- a/services/core/java/com/android/server/power/TEST_MAPPING +++ b/services/core/java/com/android/server/power/TEST_MAPPING @@ -1,26 +1,13 @@ { "presubmit": [ { - "name": "CtsBatterySavingTestCases", - "options": [ - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"} - ] + "name": "CtsBatterySavingTestCases_android_server_power" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.power"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"} - ] + "name": "FrameworksMockingServicesTests_android_server_power_Presubmit" }, { - "name": "PowerServiceTests", - "options": [ - {"include-filter": "com.android.server.power"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "PowerServiceTests_server_power" } ], "postsubmit": [ @@ -28,31 +15,16 @@ "name": "CtsBatterySavingTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.power"} - ] + "name": "FrameworksMockingServicesTests_android_server_power" }, { - "name": "FrameworksServicesTests", - "options": [ - {"include-filter": "com.android.server.power"} - ] + "name": "FrameworksServicesTests_android_server_power" }, { - "name": "PowerServiceTests", - "options": [ - {"include-filter": "com.android.server.power"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "PowerServiceTests_server_power" }, { - "name": "CtsStatsdAtomHostTestCases", - "options": [ - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"}, - {"include-filter": "android.cts.statsdatom.powermanager"} - ], + "name": "CtsStatsdAtomHostTestCases_statsdatom_powermanager", "file_patterns": [ "(/|^)ThermalManagerService.java" ] diff --git a/services/core/java/com/android/server/power/ThermalManagerService.java b/services/core/java/com/android/server/power/ThermalManagerService.java index 7f2476979635..dc6b1644db4d 100644 --- a/services/core/java/com/android/server/power/ThermalManagerService.java +++ b/services/core/java/com/android/server/power/ThermalManagerService.java @@ -54,6 +54,7 @@ import android.os.ShellCallback; import android.os.ShellCommand; import android.os.SystemClock; import android.os.Temperature; +import android.os.Trace; import android.util.ArrayMap; import android.util.EventLog; import android.util.Slog; @@ -247,6 +248,7 @@ public class ThermalManagerService extends SystemService { private void setStatusLocked(int newStatus) { if (newStatus != mStatus) { + Trace.traceCounter(Trace.TRACE_TAG_POWER, "ThermalManagerService.status", newStatus); mStatus = newStatus; notifyStatusListenersLocked(); } @@ -1626,9 +1628,9 @@ public class ThermalManagerService extends SystemService { long mInactivityThresholdMillis = INACTIVITY_THRESHOLD_MILLIS; void updateThresholds() { - synchronized (mSamples) { - List<TemperatureThreshold> thresholds = + List<TemperatureThreshold> thresholds = mHalWrapper.getTemperatureThresholds(true, Temperature.TYPE_SKIN); + synchronized (mSamples) { if (Flags.allowThermalHeadroomThresholds()) { Arrays.fill(mHeadroomThresholds, Float.NaN); } @@ -1644,8 +1646,7 @@ public class ThermalManagerService extends SystemService { if (Flags.allowThermalHeadroomThresholds()) { for (int severity = ThrottlingSeverity.LIGHT; severity <= ThrottlingSeverity.SHUTDOWN; severity++) { - if (severity != ThrottlingSeverity.SEVERE - && threshold.hotThrottlingThresholds.length > severity) { + if (threshold.hotThrottlingThresholds.length > severity) { updateHeadroomThreshold(severity, threshold.hotThrottlingThresholds[severity], severeThreshold); diff --git a/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING b/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING index eb91a72c127a..d29dbfe4aa87 100644 --- a/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING +++ b/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING @@ -11,10 +11,7 @@ "name": "CtsLocationNoneTestCases" }, { - "name": "FrameworksMockingServicesTests", - "options": [ - {"include-filter": "com.android.server.location"} - ] + "name": "FrameworksMockingServicesTests_location" } ] } diff --git a/services/core/java/com/android/server/power/stats/GnssPowerCalculator.java b/services/core/java/com/android/server/power/stats/GnssPowerCalculator.java index ab22e3e3f94c..1003a8152b92 100644 --- a/services/core/java/com/android/server/power/stats/GnssPowerCalculator.java +++ b/services/core/java/com/android/server/power/stats/GnssPowerCalculator.java @@ -126,7 +126,7 @@ public class GnssPowerCalculator extends PowerCalculator { long totalTime = 0; double totalPower = 0; for (int i = 0; i < GnssSignalQuality.NUM_GNSS_SIGNAL_QUALITY_LEVELS; i++) { - long timePerLevel = stats.getGpsSignalQualityTime(i, rawRealtimeUs, statsType); + long timePerLevel = stats.getGpsSignalQualityTime(i, rawRealtimeUs, statsType) / 1000; totalTime += timePerLevel; totalPower += mAveragePowerPerSignalQuality[i] * timePerLevel; } diff --git a/services/core/java/com/android/server/powerstats/TEST_MAPPING b/services/core/java/com/android/server/powerstats/TEST_MAPPING index 79224a580cd8..0ba1da9a9540 100644 --- a/services/core/java/com/android/server/powerstats/TEST_MAPPING +++ b/services/core/java/com/android/server/powerstats/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.powerstats" - } - ] + "name": "FrameworksServicesTests_android_server_powerstats" } ] } diff --git a/services/core/java/com/android/server/rollback/TEST_MAPPING b/services/core/java/com/android/server/rollback/TEST_MAPPING index 2cc931bfac5b..291b8dbfbf13 100644 --- a/services/core/java/com/android/server/rollback/TEST_MAPPING +++ b/services/core/java/com/android/server/rollback/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.rollback" - } - ] + "name": "FrameworksServicesTests_android_server_rollback" } ], "imports": [ diff --git a/services/core/java/com/android/server/security/TEST_MAPPING b/services/core/java/com/android/server/security/TEST_MAPPING index 29d52fff3eff..284e08e1e526 100644 --- a/services/core/java/com/android/server/security/TEST_MAPPING +++ b/services/core/java/com/android/server/security/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsSecurityTestCases", - "options": [ - { - "include-filter": "android.security.cts.FileIntegrityManagerTest" - } - ], + "name": "CtsSecurityTestCases_cts_fileintegritymanagertest", "file_patterns": ["FileIntegrity[^/]*\\.java"] } ] diff --git a/services/core/java/com/android/server/security/advancedprotection/OWNERS b/services/core/java/com/android/server/security/advancedprotection/OWNERS new file mode 100644 index 000000000000..9bf5e58c01a9 --- /dev/null +++ b/services/core/java/com/android/server/security/advancedprotection/OWNERS @@ -0,0 +1 @@ +file:platform/frameworks/base:main:/core/java/android/security/advancedprotection/OWNERS diff --git a/services/core/java/com/android/server/security/forensic/OWNERS b/services/core/java/com/android/server/security/forensic/OWNERS new file mode 100644 index 000000000000..3bc3eb5d1412 --- /dev/null +++ b/services/core/java/com/android/server/security/forensic/OWNERS @@ -0,0 +1 @@ +file:platform/frameworks/base:main:/core/java/android/security/forensic/OWNERS diff --git a/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java b/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java index 52ef87cf949f..06a2565da75a 100644 --- a/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java +++ b/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java @@ -130,6 +130,7 @@ import android.util.proto.ProtoOutputStream; import com.android.internal.R; import com.android.internal.annotations.GuardedBy; +import com.android.internal.annotations.KeepForWeakReference; import com.android.internal.camera.flags.Flags; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.internal.os.BackgroundThread; @@ -1944,8 +1945,12 @@ public final class SensorPrivacyService extends SystemService { } private class CallStateHelper { - private OutgoingEmergencyStateCallback mEmergencyStateCallback; - private CallStateCallback mCallStateCallback; + // TelephonyCallback instances are only weakly referenced when registered, so we need + // to ensure these fields are kept during optimization to preserve lifecycle semantics. + @KeepForWeakReference + private final OutgoingEmergencyStateCallback mEmergencyStateCallback; + @KeepForWeakReference + private final CallStateCallback mCallStateCallback; private boolean mIsInEmergencyCall; private boolean mMicUnmutedForEmergencyCall; diff --git a/services/core/java/com/android/server/slice/SliceManagerService.java b/services/core/java/com/android/server/slice/SliceManagerService.java index 881bdbd3bc6a..15fd35e15f83 100644 --- a/services/core/java/com/android/server/slice/SliceManagerService.java +++ b/services/core/java/com/android/server/slice/SliceManagerService.java @@ -604,6 +604,11 @@ public class SliceManagerService extends ISliceManager.Stub { private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + Slog.w(TAG, "Intent broadcast does not contain action: " + intent); + return; + } final int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, UserHandle.USER_NULL); if (userId == UserHandle.USER_NULL) { Slog.w(TAG, "Intent broadcast does not contain user handle: " + intent); @@ -615,7 +620,7 @@ public class SliceManagerService extends ISliceManager.Stub { Slog.w(TAG, "Intent broadcast does not contain package name: " + intent); return; } - switch (intent.getAction()) { + switch (action) { case Intent.ACTION_PACKAGE_REMOVED: final boolean replacing = intent.getBooleanExtra(Intent.EXTRA_REPLACING, false); diff --git a/services/core/java/com/android/server/stats/bootstrap/StatsBootstrapAtomService.java b/services/core/java/com/android/server/stats/bootstrap/StatsBootstrapAtomService.java index 0d420a535415..dcb47a7b60b6 100644 --- a/services/core/java/com/android/server/stats/bootstrap/StatsBootstrapAtomService.java +++ b/services/core/java/com/android/server/stats/bootstrap/StatsBootstrapAtomService.java @@ -62,6 +62,9 @@ public class StatsBootstrapAtomService extends IStatsBootstrapAtomService.Stub { case StatsBootstrapAtomValue.bytesValue: builder.writeByteArray(value.getBytesValue()); break; + case StatsBootstrapAtomValue.stringArrayValue: + builder.writeStringArray(value.getStringArrayValue()); + break; default: Slog.e(TAG, "Unexpected value type " + value.getTag() + " when logging atom " + atom.atomId); 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 c1b825b3f8d1..8dbaa7e26c20 100644 --- a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java +++ b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java @@ -69,6 +69,8 @@ import static com.android.server.stats.pull.IonMemoryUtil.readSystemIonHeapSizeF import static com.android.server.stats.pull.ProcfsMemoryUtil.getProcessCmdlines; import static com.android.server.stats.pull.ProcfsMemoryUtil.readCmdlineFromProcfs; import static com.android.server.stats.pull.ProcfsMemoryUtil.readMemorySnapshotFromProcfs; +import static com.android.server.stats.pull.netstats.NetworkStatsUtils.fromPublicNetworkStats; +import static com.android.server.stats.pull.netstats.NetworkStatsUtils.isAddEntriesSupported; import static libcore.io.IoUtils.closeQuietly; @@ -207,7 +209,6 @@ import com.android.internal.os.SelectedProcessCpuThreadReader; import com.android.internal.os.StoragedUidIoStatsReader; import com.android.internal.util.CollectionUtils; import com.android.internal.util.FrameworkStatsLog; -import com.android.net.module.util.NetworkStatsUtils; import com.android.role.RoleManagerLocal; import com.android.server.BinderCallsStatsService; import com.android.server.LocalManagerRegistry; @@ -1366,14 +1367,22 @@ public class StatsPullAtomService extends SystemService { @NonNull private static NetworkStats removeEmptyEntries(NetworkStats stats) { - NetworkStats ret = new NetworkStats(0, 1); + final ArrayList<NetworkStats.Entry> entries = new ArrayList<>(); for (NetworkStats.Entry e : stats) { if (e.getRxBytes() != 0 || e.getRxPackets() != 0 || e.getTxBytes() != 0 || e.getTxPackets() != 0 || e.getOperations() != 0) { - ret = ret.addEntry(e); + entries.add(e); } } - return ret; + if (isAddEntriesSupported()) { + return new NetworkStats(0, entries.size()).addEntries(entries); + } else { + NetworkStats outputStats = new NetworkStats(0L, 1); + for (NetworkStats.Entry e : entries) { + outputStats = outputStats.addEntry(e); + } + return outputStats; + } } private void addNetworkStats(int atomTag, @NonNull List<StatsEvent> ret, @@ -1552,7 +1561,7 @@ public class StatsPullAtomService extends SystemService { currentTimeInMillis); final NetworkStats nonTaggedStats = - NetworkStatsUtils.fromPublicNetworkStats(queryNonTaggedStats); + fromPublicNetworkStats(queryNonTaggedStats); queryNonTaggedStats.close(); if (!includeTags) return nonTaggedStats; @@ -1561,7 +1570,7 @@ public class StatsPullAtomService extends SystemService { currentTimeInMillis - elapsedMillisSinceBoot - bucketDuration, currentTimeInMillis); final NetworkStats taggedStats = - NetworkStatsUtils.fromPublicNetworkStats(queryTaggedStats); + fromPublicNetworkStats(queryTaggedStats); queryTaggedStats.close(); return nonTaggedStats.add(taggedStats); } @@ -1686,11 +1695,19 @@ public class StatsPullAtomService extends SystemService { @NonNull private NetworkStats sliceNetworkStats(@NonNull NetworkStats stats, @NonNull Function<NetworkStats.Entry, NetworkStats.Entry> slicer) { - NetworkStats ret = new NetworkStats(0, 1); + final ArrayList<NetworkStats.Entry> entries = new ArrayList(); for (NetworkStats.Entry e : stats) { - ret = ret.addEntry(slicer.apply(e)); + entries.add(slicer.apply(e)); + } + if (isAddEntriesSupported()) { + return new NetworkStats(0, entries.size()).addEntries(entries); + } else { + NetworkStats outputStats = new NetworkStats(0L, 1); + for (NetworkStats.Entry e : entries) { + outputStats = outputStats.addEntry(e); + } + return outputStats; } - return ret; } private void registerWifiBytesTransferBackground() { diff --git a/services/core/java/com/android/server/stats/pull/netstats/NetworkStatsUtils.java b/services/core/java/com/android/server/stats/pull/netstats/NetworkStatsUtils.java new file mode 100644 index 000000000000..0318bdd61473 --- /dev/null +++ b/services/core/java/com/android/server/stats/pull/netstats/NetworkStatsUtils.java @@ -0,0 +1,125 @@ +/* + * Copyright (C) 2024 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.server.stats.pull.netstats; + +import static android.net.NetworkStats.DEFAULT_NETWORK_ALL; +import static android.net.NetworkStats.METERED_ALL; +import static android.net.NetworkStats.ROAMING_ALL; +import static android.net.NetworkStats.SET_ALL; + +import android.app.usage.NetworkStats; + +import com.android.internal.annotations.VisibleForTesting; +import com.android.server.stats.Flags; + +import java.util.ArrayList; + +/** + * Utility methods for accessing {@link android.net.NetworkStats}. + */ +public class NetworkStatsUtils { + + /** + * Convert structure from android.app.usage.NetworkStats to android.net.NetworkStats. + */ + public static android.net.NetworkStats fromPublicNetworkStats( + NetworkStats publiceNetworkStats) { + final ArrayList<android.net.NetworkStats.Entry> entries = new ArrayList<>(); + while (publiceNetworkStats.hasNextBucket()) { + NetworkStats.Bucket bucket = new NetworkStats.Bucket(); + publiceNetworkStats.getNextBucket(bucket); + entries.add(fromBucket(bucket)); + } + android.net.NetworkStats stats = new android.net.NetworkStats(0L, 1); + // The new API is only supported on devices running the mainline version of `NetworkStats`. + // It should always be used when available for memory efficiency. + if (isAddEntriesSupported()) { + stats = stats.addEntries(entries); + } else { + for (android.net.NetworkStats.Entry entry : entries) { + stats = stats.addEntry(entry); + } + } + return stats; + } + + /** + * Convert structure from android.app.usage.NetworkStats.Bucket + * to android.net.NetworkStats.Entry. + */ + @VisibleForTesting + public static android.net.NetworkStats.Entry fromBucket(NetworkStats.Bucket bucket) { + return new android.net.NetworkStats.Entry( + null /* IFACE_ALL */, bucket.getUid(), convertBucketState(bucket.getState()), + convertBucketTag(bucket.getTag()), convertBucketMetered(bucket.getMetered()), + convertBucketRoaming(bucket.getRoaming()), + convertBucketDefaultNetworkStatus(bucket.getDefaultNetworkStatus()), + bucket.getRxBytes(), bucket.getRxPackets(), + bucket.getTxBytes(), bucket.getTxPackets(), 0 /* operations */); + } + + private static int convertBucketState(int networkStatsSet) { + switch (networkStatsSet) { + case NetworkStats.Bucket.STATE_ALL: return SET_ALL; + case NetworkStats.Bucket.STATE_DEFAULT: return android.net.NetworkStats.SET_DEFAULT; + case NetworkStats.Bucket.STATE_FOREGROUND: + return android.net.NetworkStats.SET_FOREGROUND; + } + return 0; + } + + private static int convertBucketTag(int tag) { + switch (tag) { + case NetworkStats.Bucket.TAG_NONE: return android.net.NetworkStats.TAG_NONE; + } + return tag; + } + + private static int convertBucketMetered(int metered) { + switch (metered) { + case NetworkStats.Bucket.METERED_ALL: return METERED_ALL; + case NetworkStats.Bucket.METERED_NO: return android.net.NetworkStats.METERED_NO; + case NetworkStats.Bucket.METERED_YES: return android.net.NetworkStats.METERED_YES; + } + return 0; + } + + private static int convertBucketRoaming(int roaming) { + switch (roaming) { + case NetworkStats.Bucket.ROAMING_ALL: return ROAMING_ALL; + case NetworkStats.Bucket.ROAMING_NO: return android.net.NetworkStats.ROAMING_NO; + case NetworkStats.Bucket.ROAMING_YES: return android.net.NetworkStats.ROAMING_YES; + } + return 0; + } + + private static int convertBucketDefaultNetworkStatus(int defaultNetworkStatus) { + switch (defaultNetworkStatus) { + case NetworkStats.Bucket.DEFAULT_NETWORK_ALL: + return DEFAULT_NETWORK_ALL; + case NetworkStats.Bucket.DEFAULT_NETWORK_NO: + return android.net.NetworkStats.DEFAULT_NETWORK_NO; + case NetworkStats.Bucket.DEFAULT_NETWORK_YES: + return android.net.NetworkStats.DEFAULT_NETWORK_YES; + } + return 0; + } + + public static boolean isAddEntriesSupported() { + return Flags.netstatsUseAddEntries(); + } +} diff --git a/services/core/java/com/android/server/stats/stats_flags.aconfig b/services/core/java/com/android/server/stats/stats_flags.aconfig index 6faa2737ac30..fd1088328bda 100644 --- a/services/core/java/com/android/server/stats/stats_flags.aconfig +++ b/services/core/java/com/android/server/stats/stats_flags.aconfig @@ -1,6 +1,20 @@ package: "com.android.server.stats" container: "system" +# Note: To ensure compatibility across all release configurations, initiate the ramp-up process +# only after the 'com.android.net.flags.netstats_add_entries' flag has been fully deployed. +# This flag provides the necessary API from the Connectivity module. +# The flag was added because the flag 'com.android.net.flags.netstats_add_entries' for API +# is already being rolled out, and modifying behavior during an active rollout might +# lead to unwanted issues. +flag { + name: "netstats_use_add_entries" + namespace: "statsd" + description: "Use NetworkStats#addEntries to reduce memory footprint" + bug: "335680025" + is_fixed_read_only: true +} + flag { name: "add_mobile_bytes_transfer_by_proc_state_puller" namespace: "statsd" diff --git a/services/core/java/com/android/server/statusbar/TEST_MAPPING b/services/core/java/com/android/server/statusbar/TEST_MAPPING index 67ea557d7806..8c7e74c7e2c5 100644 --- a/services/core/java/com/android/server/statusbar/TEST_MAPPING +++ b/services/core/java/com/android/server/statusbar/TEST_MAPPING @@ -1,29 +1,10 @@ { "presubmit": [ { - "name": "CtsTileServiceTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTileServiceTestCases" }, { - "name": "CtsAppTestCases", - "options": [ - { - "exclude-annotation": "org.junit.Ignore" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.app.cts.RequestTileServiceAddTest" - } - ] + "name": "CtsAppTestCases_cts_requesttileserviceaddtest" } ] }
\ No newline at end of file diff --git a/services/core/java/com/android/server/timedetector/TEST_MAPPING b/services/core/java/com/android/server/timedetector/TEST_MAPPING index 17d327e94d4d..f57b819e241f 100644 --- a/services/core/java/com/android/server/timedetector/TEST_MAPPING +++ b/services/core/java/com/android/server/timedetector/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsTimeTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTimeTestCases" }, { "name": "FrameworksTimeServicesTests" diff --git a/services/core/java/com/android/server/timezonedetector/TEST_MAPPING b/services/core/java/com/android/server/timezonedetector/TEST_MAPPING index 004d79964354..a237c346a637 100644 --- a/services/core/java/com/android/server/timezonedetector/TEST_MAPPING +++ b/services/core/java/com/android/server/timezonedetector/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsTimeTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTimeTestCases" }, { "name": "FrameworksTimeServicesTests" diff --git a/services/core/java/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessor.java b/services/core/java/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessor.java index aa2b74edaff2..58c3ba5013fa 100644 --- a/services/core/java/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessor.java +++ b/services/core/java/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessor.java @@ -56,12 +56,17 @@ public class ZoneInfoDbTimeZoneProviderEventPreProcessor // enables immediate failover to a secondary provider, one that might provide valid IDs for // the same location, which should provide better behavior than just ignoring the event. if (hasInvalidZones(event)) { - TimeZoneProviderStatus providerStatus = new TimeZoneProviderStatus.Builder( - event.getTimeZoneProviderStatus()) - .setTimeZoneResolutionOperationStatus(OPERATION_STATUS_FAILED) - .build(); - return TimeZoneProviderEvent.createUncertainEvent( - event.getCreationElapsedMillis(), providerStatus); + TimeZoneProviderStatus providerStatus = event.getTimeZoneProviderStatus(); + TimeZoneProviderStatus.Builder providerStatusBuilder; + if (providerStatus != null) { + providerStatusBuilder = new TimeZoneProviderStatus.Builder(providerStatus); + } else { + providerStatusBuilder = new TimeZoneProviderStatus.Builder(); + } + return TimeZoneProviderEvent.createUncertainEvent(event.getCreationElapsedMillis(), + providerStatusBuilder + .setTimeZoneResolutionOperationStatus(OPERATION_STATUS_FAILED) + .build()); } return event; diff --git a/services/core/java/com/android/server/tracing/TracingServiceProxy.java b/services/core/java/com/android/server/tracing/TracingServiceProxy.java index 68eb8eb1deaf..480db25ec606 100644 --- a/services/core/java/com/android/server/tracing/TracingServiceProxy.java +++ b/services/core/java/com/android/server/tracing/TracingServiceProxy.java @@ -76,8 +76,6 @@ public class TracingServiceProxy extends SystemService { // Keep this in sync with the definitions in TraceService private static final String INTENT_ACTION_NOTIFY_SESSION_STOPPED = "com.android.traceur.NOTIFY_SESSION_STOPPED"; - private static final String INTENT_ACTION_NOTIFY_SESSION_STOLEN = - "com.android.traceur.NOTIFY_SESSION_STOLEN"; private static final int REPORT_BEGIN = TRACING_SERVICE_REPORT_EVENT__EVENT__TRACING_SERVICE_REPORT_BEGIN; @@ -97,13 +95,12 @@ public class TracingServiceProxy extends SystemService { private final ITracingServiceProxy.Stub mTracingServiceProxy = new ITracingServiceProxy.Stub() { /** - * Notifies system tracing app that a tracing session has ended. If a session is repurposed - * for use in a bugreport, sessionStolen can be set to indicate that tracing has ended but - * there is no buffer available to dump. + * Notifies system tracing app that a tracing session has ended. sessionStolen is ignored, + * as trace sessions are no longer stolen and are always cloned instead. */ @Override - public void notifyTraceSessionEnded(boolean sessionStolen) { - TracingServiceProxy.this.notifyTraceur(sessionStolen); + public void notifyTraceSessionEnded(boolean sessionStolen /* unused */) { + TracingServiceProxy.this.notifyTraceur(); } @Override @@ -132,7 +129,7 @@ public class TracingServiceProxy extends SystemService { } } - private void notifyTraceur(boolean sessionStolen) { + private void notifyTraceur() { final Intent intent = new Intent(); try { @@ -141,11 +138,7 @@ public class TracingServiceProxy extends SystemService { PackageManager.MATCH_SYSTEM_ONLY); intent.setClassName(info.packageName, TRACING_APP_ACTIVITY); - if (sessionStolen) { - intent.setAction(INTENT_ACTION_NOTIFY_SESSION_STOLEN); - } else { - intent.setAction(INTENT_ACTION_NOTIFY_SESSION_STOPPED); - } + intent.setAction(INTENT_ACTION_NOTIFY_SESSION_STOPPED); final long identity = Binder.clearCallingIdentity(); try { diff --git a/services/core/java/com/android/server/trust/TEST_MAPPING b/services/core/java/com/android/server/trust/TEST_MAPPING index 0de7c28c209b..4c08455f713a 100644 --- a/services/core/java/com/android/server/trust/TEST_MAPPING +++ b/services/core/java/com/android/server/trust/TEST_MAPPING @@ -1,41 +1,17 @@ { "presubmit": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ], "postsubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.trust" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksMockingServicesTests_android_server_trust" } ], "trust-tablet": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ] }
\ No newline at end of file diff --git a/services/core/java/com/android/server/tv/TvInputManagerService.java b/services/core/java/com/android/server/tv/TvInputManagerService.java index e0a822604058..3d5fc7cf170e 100644 --- a/services/core/java/com/android/server/tv/TvInputManagerService.java +++ b/services/core/java/com/android/server/tv/TvInputManagerService.java @@ -3254,7 +3254,20 @@ public final class TvInputManagerService extends SystemService { return filteredDisplayName; } - private static final class UserState { + private class TvInputManagerCallbackList extends RemoteCallbackList<ITvInputManagerCallback> { + @Override + public void onCallbackDied(ITvInputManagerCallback callback) { + synchronized (mLock) { + for (int i = 0; i < mUserStates.size(); i++) { + int userId = mUserStates.keyAt(i); + UserState userState = getOrCreateUserStateLocked(userId); + userState.callbackPidUidMap.remove(callback); + } + } + } + } + + private final class UserState { // A mapping from the TV input id to its TvInputState. private Map<String, TvInputState> inputMap = new HashMap<>(); @@ -3275,8 +3288,8 @@ public final class TvInputManagerService extends SystemService { private final Map<IBinder, SessionState> sessionStateMap = new HashMap<>(); // A list of callbacks. - private final RemoteCallbackList<ITvInputManagerCallback> mCallbacks = - new RemoteCallbackList<>(); + private final TvInputManagerCallbackList mCallbacks = + new TvInputManagerCallbackList(); private final Map<ITvInputManagerCallback, Pair<Integer, Integer>> callbackPidUidMap = new HashMap<>(); diff --git a/services/core/java/com/android/server/uri/TEST_MAPPING b/services/core/java/com/android/server/uri/TEST_MAPPING index b42d154e04a7..45e3051d4d5d 100644 --- a/services/core/java/com/android/server/uri/TEST_MAPPING +++ b/services/core/java/com/android/server/uri/TEST_MAPPING @@ -1,32 +1,10 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.uri." - } - ] + "name": "FrameworksServicesTests_android_server_uri" }, { - "name": "CtsStorageHostTestCases", - "options": [ - { - "include-filter": "android.appsecurity.cts.ExternalStorageHostTest#testGrantUriPermission" - }, - { - "include-filter": "android.appsecurity.cts.ExternalStorageHostTest#testGrantUriPermission29" - }, - { - "include-filter": "android.appsecurity.cts.ExternalStorageHostTest#testMediaNone" - }, - { - "include-filter": "android.appsecurity.cts.ExternalStorageHostTest#testMediaNone28" - }, - { - "include-filter": "android.appsecurity.cts.ExternalStorageHostTest#testMediaNone29" - } - ] + "name": "CtsStorageHostTestCases_android_server_uri" } ], "postsubmit": [ @@ -39,12 +17,7 @@ ] }, { - "name": "CtsWindowManagerDeviceWindow", - "options": [ - { - "include-filter": "android.server.wm.window.CrossAppDragAndDropTests" - } - ] + "name": "CtsWindowManagerDeviceWindow_window_crossappdraganddroptests" } ] } diff --git a/services/core/java/com/android/server/utils/TEST_MAPPING b/services/core/java/com/android/server/utils/TEST_MAPPING index bb7cea98eda0..dcf0049001cd 100644 --- a/services/core/java/com/android/server/utils/TEST_MAPPING +++ b/services/core/java/com/android/server/utils/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.utils" - } - ] + "name": "FrameworksMockingServicesTests_android_server_utils" } ] }
\ No newline at end of file diff --git a/services/core/java/com/android/server/vcn/OWNERS b/services/core/java/com/android/server/vcn/OWNERS index 2441e772468c..937699a92968 100644 --- a/services/core/java/com/android/server/vcn/OWNERS +++ b/services/core/java/com/android/server/vcn/OWNERS @@ -1,7 +1,6 @@ set noparent -benedictwong@google.com -ckesting@google.com evitayan@google.com -junyin@google.com nharold@google.com +benedictwong@google.com #{LAST_RESORT_SUGGESTION} +yangji@google.com #{LAST_RESORT_SUGGESTION} diff --git a/services/core/java/com/android/server/vcn/TelephonySubscriptionTracker.java b/services/core/java/com/android/server/vcn/TelephonySubscriptionTracker.java index ecd140e23ab6..3392d039109a 100644 --- a/services/core/java/com/android/server/vcn/TelephonySubscriptionTracker.java +++ b/services/core/java/com/android/server/vcn/TelephonySubscriptionTracker.java @@ -40,12 +40,11 @@ import android.telephony.TelephonyManager; import android.telephony.TelephonyManager.CarrierPrivilegesCallback; import android.util.ArrayMap; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.telephony.flags.Flags; -import com.android.internal.util.IndentingPrintWriter; import com.android.server.vcn.util.PersistableBundleUtils.PersistableBundleWrapper; import java.util.ArrayList; @@ -323,12 +322,16 @@ public class TelephonySubscriptionTracker extends BroadcastReceiver { if (SubscriptionManager.isValidSubscriptionId(subId)) { // Get only configs as needed to save memory. - final PersistableBundle carrierConfig = - Flags.fixCrashOnGettingConfigWhenPhoneIsGone() - ? CarrierConfigManager.getCarrierConfigSubset(mContext, subId, - VcnManager.VCN_RELATED_CARRIER_CONFIG_KEYS) - : mCarrierConfigManager.getConfigForSubId(subId, - VcnManager.VCN_RELATED_CARRIER_CONFIG_KEYS); + PersistableBundle carrierConfig = new PersistableBundle(); + try { + carrierConfig = + mCarrierConfigManager.getConfigForSubId( + subId, VcnManager.VCN_RELATED_CARRIER_CONFIG_KEYS); + + } catch (RuntimeException exception) { + Slog.w(TAG, "CarrierConfigLoader is not available."); + } + if (mDeps.isConfigForIdentifiedCarrier(carrierConfig)) { mReadySubIdsBySlotId.put(slotId, subId); @@ -433,6 +436,17 @@ public class TelephonySubscriptionTracker extends BroadcastReceiver { return mPrivilegedPackages.keySet(); } + /** Returns all subscription groups */ + @NonNull + public Set<ParcelUuid> getAllSubscriptionGroups() { + final Set<ParcelUuid> subGroups = new ArraySet<>(); + for (SubscriptionInfo subInfo : mSubIdToInfoMap.values()) { + subGroups.add(subInfo.getGroupUuid()); + } + + return subGroups; + } + /** Checks if the provided package is carrier privileged for the specified sub group. */ public boolean packageHasPermissionsForSubscriptionGroup( @NonNull ParcelUuid subGrp, @NonNull String packageName) { diff --git a/services/core/java/com/android/server/vcn/Vcn.java b/services/core/java/com/android/server/vcn/Vcn.java index 5a5f7ef7b225..1fba29779f0f 100644 --- a/services/core/java/com/android/server/vcn/Vcn.java +++ b/services/core/java/com/android/server/vcn/Vcn.java @@ -47,11 +47,11 @@ import android.telephony.TelephonyCallback; import android.telephony.TelephonyManager; import android.util.ArrayMap; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import com.android.server.VcnManagementService.VcnCallback; import com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionSnapshot; import com.android.server.vcn.util.LogUtils; @@ -86,6 +86,9 @@ public class Vcn extends Handler { private static final int MSG_EVENT_BASE = 0; private static final int MSG_CMD_BASE = 100; + // Copied from Settings.Global.MOBILE_DATA + private static final String SETTINGS_GLOBAL_MOBILE_DATA_STRING = "mobile_data"; + /** * A carrier app updated the configuration. * @@ -219,7 +222,8 @@ public class Vcn extends Handler { mContentResolver = mDeps.newVcnContentResolver(mVcnContext); mMobileDataSettingsObserver = new VcnMobileDataContentObserver(this /* handler */); - final Uri uri = Settings.Global.getUriFor(Settings.Global.MOBILE_DATA); + // TODO: b/364740845: Replace it with DataEnabledListener + final Uri uri = Settings.Global.getUriFor(SETTINGS_GLOBAL_MOBILE_DATA_STRING); mContentResolver.registerContentObserver( uri, true /* notifyForDescendants */, mMobileDataSettingsObserver); diff --git a/services/core/java/com/android/server/vcn/VcnContext.java b/services/core/java/com/android/server/vcn/VcnContext.java index 6a4c9c26d314..9213d96ad4ca 100644 --- a/services/core/java/com/android/server/vcn/VcnContext.java +++ b/services/core/java/com/android/server/vcn/VcnContext.java @@ -18,7 +18,6 @@ package com.android.server.vcn; import android.annotation.NonNull; import android.content.Context; -import android.net.IpSecTransformState; import android.net.vcn.FeatureFlags; import android.net.vcn.FeatureFlagsImpl; import android.os.Looper; @@ -70,32 +69,11 @@ public class VcnContext { return mIsInTestMode; } - public boolean isFlagNetworkMetricMonitorEnabled() { - return mFeatureFlags.networkMetricMonitor(); - } - - public boolean isFlagIpSecTransformStateEnabled() { - // TODO: b/328844044: Ideally this code should gate the behavior by checking the - // android.net.platform.flags.ipsec_transform_state flag but that flag is not accessible - // right now. We should either update the code when the flag is accessible or remove the - // legacy behavior after VIC SDK finalization - try { - new IpSecTransformState.Builder(); - return true; - } catch (Exception e) { - return false; - } - } - @NonNull public FeatureFlags getFeatureFlags() { return mFeatureFlags; } - public boolean isFlagSafeModeTimeoutConfigEnabled() { - return mFeatureFlags.safeModeTimeoutConfig(); - } - /** * Verifies that the caller is running on the VcnContext Thread. * diff --git a/services/core/java/com/android/server/vcn/VcnGatewayConnection.java b/services/core/java/com/android/server/vcn/VcnGatewayConnection.java index 8d378a021f17..2325f358e301 100644 --- a/services/core/java/com/android/server/vcn/VcnGatewayConnection.java +++ b/services/core/java/com/android/server/vcn/VcnGatewayConnection.java @@ -90,11 +90,11 @@ import android.os.SystemClock; import android.provider.Settings; import android.telephony.TelephonyManager; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.State; import com.android.internal.util.StateMachine; import com.android.internal.util.WakeupMessage; @@ -177,6 +177,10 @@ public class VcnGatewayConnection extends StateMachine { /** Default number of parallel SAs requested */ static final int TUNNEL_AGGREGATION_SA_COUNT_MAX_DEFAULT = 1; + // The returned string of + // TelephonyManager#getNetworkTypeName(TelephonyManager.NETWORK_TYPE_UNKNOWN) + private static final String NETWORK_TYPE_STRING_UNKNOWN = "UNKNOWN"; + // Matches DataConnection.NETWORK_TYPE private constant, and magic string from // ConnectivityManager#getNetworkTypeName() @VisibleForTesting(visibility = Visibility.PRIVATE) @@ -1259,7 +1263,7 @@ public class VcnGatewayConnection extends StateMachine { final PersistableBundleWrapper carrierConfig = snapshot.getCarrierConfigForSubGrp(subGrp); int resultSeconds = defaultSeconds; - if (vcnContext.isFlagSafeModeTimeoutConfigEnabled() && carrierConfig != null) { + if (carrierConfig != null) { resultSeconds = carrierConfig.getInt( VcnManager.VCN_SAFE_MODE_TIMEOUT_SECONDS_KEY, defaultSeconds); @@ -1815,9 +1819,7 @@ public class VcnGatewayConnection extends StateMachine { .setLegacyType(ConnectivityManager.TYPE_MOBILE) .setLegacyTypeName(NETWORK_INFO_NETWORK_TYPE_STRING) .setLegacySubType(TelephonyManager.NETWORK_TYPE_UNKNOWN) - .setLegacySubTypeName( - TelephonyManager.getNetworkTypeName( - TelephonyManager.NETWORK_TYPE_UNKNOWN)) + .setLegacySubTypeName(NETWORK_TYPE_STRING_UNKNOWN) .setLegacyExtraInfo(NETWORK_INFO_EXTRA_INFO) .build(); @@ -1910,9 +1912,7 @@ public class VcnGatewayConnection extends StateMachine { // Transforms do not need to be persisted; the IkeSession will keep them alive mIpSecManager.applyTunnelModeTransform(tunnelIface, direction, transform); - if (direction == IpSecManager.DIRECTION_IN - && mVcnContext.isFlagNetworkMetricMonitorEnabled() - && mVcnContext.isFlagIpSecTransformStateEnabled()) { + if (direction == IpSecManager.DIRECTION_IN) { mUnderlyingNetworkController.updateInboundTransform(mUnderlying, transform); } diff --git a/services/core/java/com/android/server/vcn/VcnNetworkProvider.java b/services/core/java/com/android/server/vcn/VcnNetworkProvider.java index 31ee2477fa64..78ff432f5423 100644 --- a/services/core/java/com/android/server/vcn/VcnNetworkProvider.java +++ b/services/core/java/com/android/server/vcn/VcnNetworkProvider.java @@ -36,11 +36,11 @@ import android.os.Handler; import android.os.HandlerExecutor; import android.os.Looper; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import java.util.Objects; import java.util.Set; diff --git a/services/core/java/com/android/server/vcn/routeselection/IpSecPacketLossDetector.java b/services/core/java/com/android/server/vcn/routeselection/IpSecPacketLossDetector.java index 474253223628..16ab51e8d604 100644 --- a/services/core/java/com/android/server/vcn/routeselection/IpSecPacketLossDetector.java +++ b/services/core/java/com/android/server/vcn/routeselection/IpSecPacketLossDetector.java @@ -29,7 +29,6 @@ import android.content.IntentFilter; import android.net.ConnectivityManager; import android.net.IpSecTransformState; import android.net.Network; -import android.net.vcn.Flags; import android.net.vcn.VcnManager; import android.os.Handler; import android.os.HandlerExecutor; @@ -149,12 +148,6 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { Objects.requireNonNull(deps, "Missing deps"); - if (!vcnContext.isFlagIpSecTransformStateEnabled()) { - // Caller error - logWtf("ipsecTransformState flag disabled"); - throw new IllegalAccessException("ipsecTransformState flag disabled"); - } - mHandler = new Handler(getVcnContext().getLooper()); mPowerManager = getVcnContext().getContext().getSystemService(PowerManager.class); @@ -233,7 +226,7 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { @VisibleForTesting(visibility = Visibility.PRIVATE) static int getMaxSeqNumIncreasePerSecond(@Nullable PersistableBundleWrapper carrierConfig) { int maxSeqNumIncrease = MAX_SEQ_NUM_INCREASE_DEFAULT_DISABLED; - if (Flags.handleSeqNumLeap() && carrierConfig != null) { + if (carrierConfig != null) { maxSeqNumIncrease = carrierConfig.getInt( VcnManager.VCN_NETWORK_SELECTION_MAX_SEQ_NUM_INCREASE_PER_SECOND_KEY, @@ -276,7 +269,7 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { // enabled on the last one as a sample mInboundTransform = inboundTransform; - if (!Flags.allowDisableIpsecLossDetector() || canStart()) { + if (canStart()) { start(); } } @@ -287,12 +280,10 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { // with the new interval mPollIpSecStateIntervalMs = getPollIpSecStateIntervalMs(carrierConfig); - if (Flags.handleSeqNumLeap()) { - mPacketLossRatePercentThreshold = getPacketLossRatePercentThreshold(carrierConfig); - mMaxSeqNumIncreasePerSecond = getMaxSeqNumIncreasePerSecond(carrierConfig); - } + mPacketLossRatePercentThreshold = getPacketLossRatePercentThreshold(carrierConfig); + mMaxSeqNumIncreasePerSecond = getMaxSeqNumIncreasePerSecond(carrierConfig); - if (Flags.allowDisableIpsecLossDetector() && canStart() != isStarted()) { + if (canStart() != isStarted()) { if (canStart()) { start(); } else { @@ -438,13 +429,10 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { onValidationResultReceivedInternal(true /* isFailed */); } - // In both "valid" or "unusual_seq_num_leap" cases, trigger network validation - if (Flags.validateNetworkOnIpsecLoss()) { - // Trigger re-validation of the underlying network; if it fails, the VCN will - // attempt to migrate away. - mConnectivityManager.reportNetworkConnectivity( - getNetwork(), false /* hasConnectivity */); - } + // In both "invalid" and "unusual_seq_num_leap" cases, trigger network validation. If + // validation fails, the VCN will attempt to migrate away. + mConnectivityManager.reportNetworkConnectivity( + getNetwork(), false /* hasConnectivity */); } } @@ -474,8 +462,7 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { boolean isUnusualSeqNumLeap = false; // Handle sequence number leap - if (Flags.handleSeqNumLeap() - && maxSeqNumIncreasePerSecond != MAX_SEQ_NUM_INCREASE_DEFAULT_DISABLED) { + if (maxSeqNumIncreasePerSecond != MAX_SEQ_NUM_INCREASE_DEFAULT_DISABLED) { final long timeDiffMillis = newState.getTimestampMillis() - oldState.getTimestampMillis(); final long maxSeqNumIncrease = timeDiffMillis * maxSeqNumIncreasePerSecond / 1000; @@ -506,7 +493,7 @@ public class IpSecPacketLossDetector extends NetworkMetricMonitor { + " actualPktCntDiff: " + actualPktCntDiff); - if (Flags.handleSeqNumLeap() && expectedPktCntDiff < MIN_VALID_EXPECTED_RX_PACKET_NUM) { + if (expectedPktCntDiff < MIN_VALID_EXPECTED_RX_PACKET_NUM) { // The sample size is too small to ensure a reliable detection result return PacketLossCalculationResult.invalid(); } diff --git a/services/core/java/com/android/server/vcn/routeselection/NetworkMetricMonitor.java b/services/core/java/com/android/server/vcn/routeselection/NetworkMetricMonitor.java index b9b10606a188..0d4c3736775b 100644 --- a/services/core/java/com/android/server/vcn/routeselection/NetworkMetricMonitor.java +++ b/services/core/java/com/android/server/vcn/routeselection/NetworkMetricMonitor.java @@ -62,12 +62,6 @@ public abstract class NetworkMetricMonitor implements AutoCloseable { @Nullable PersistableBundleWrapper carrierConfig, @NonNull NetworkMetricMonitorCallback callback) throws IllegalAccessException { - if (!vcnContext.isFlagNetworkMetricMonitorEnabled()) { - // Caller error - logWtf("networkMetricMonitor flag disabled"); - throw new IllegalAccessException("networkMetricMonitor flag disabled"); - } - mVcnContext = Objects.requireNonNull(vcnContext, "Missing vcnContext"); mNetwork = Objects.requireNonNull(network, "Missing network"); mCallback = Objects.requireNonNull(callback, "Missing callback"); diff --git a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkController.java b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkController.java index 3f8d39e72e89..3eeeece5da46 100644 --- a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkController.java +++ b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkController.java @@ -46,11 +46,11 @@ import android.telephony.TelephonyCallback; import android.telephony.TelephonyManager; import android.util.ArrayMap; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionSnapshot; import com.android.server.vcn.VcnContext; import com.android.server.vcn.routeselection.UnderlyingNetworkEvaluator.NetworkEvaluatorCallback; @@ -204,11 +204,8 @@ public class UnderlyingNetworkController { List<NetworkCallback> oldCellCallbacks = new ArrayList<>(mCellBringupCallbacks); mCellBringupCallbacks.clear(); - if (mVcnContext.isFlagNetworkMetricMonitorEnabled() - && mVcnContext.isFlagIpSecTransformStateEnabled()) { - for (UnderlyingNetworkEvaluator evaluator : mUnderlyingNetworkRecords.values()) { - evaluator.close(); - } + for (UnderlyingNetworkEvaluator evaluator : mUnderlyingNetworkRecords.values()) { + evaluator.close(); } mUnderlyingNetworkRecords.clear(); @@ -360,7 +357,10 @@ public class UnderlyingNetworkController { final NetworkRequest.Builder nrBuilder = getBaseNetworkRequestBuilder() .addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR) - .setNetworkSpecifier(new TelephonyNetworkSpecifier(subId)); + .setNetworkSpecifier( + new TelephonyNetworkSpecifier.Builder() + .setSubscriptionId(subId) + .build()); for (CapabilityMatchCriteria capMatchCriteria : capsMatchCriteria) { final int cap = capMatchCriteria.capability; @@ -427,11 +427,7 @@ public class UnderlyingNetworkController { if (oldSnapshot .getAllSubIdsInGroup(mSubscriptionGroup) .equals(newSnapshot.getAllSubIdsInGroup(mSubscriptionGroup))) { - - if (mVcnContext.isFlagNetworkMetricMonitorEnabled() - && mVcnContext.isFlagIpSecTransformStateEnabled()) { - reevaluateNetworks(); - } + reevaluateNetworks(); return; } registerOrUpdateNetworkRequests(); @@ -444,12 +440,6 @@ public class UnderlyingNetworkController { */ public void updateInboundTransform( @NonNull UnderlyingNetworkRecord currentNetwork, @NonNull IpSecTransform transform) { - if (!mVcnContext.isFlagNetworkMetricMonitorEnabled() - || !mVcnContext.isFlagIpSecTransformStateEnabled()) { - logWtf("#updateInboundTransform: unexpected call; flags missing"); - return; - } - Objects.requireNonNull(currentNetwork, "currentNetwork is null"); Objects.requireNonNull(transform, "transform is null"); @@ -572,11 +562,7 @@ public class UnderlyingNetworkController { @Override public void onLost(@NonNull Network network) { - if (mVcnContext.isFlagNetworkMetricMonitorEnabled() - && mVcnContext.isFlagIpSecTransformStateEnabled()) { - mUnderlyingNetworkRecords.get(network).close(); - } - + mUnderlyingNetworkRecords.get(network).close(); mUnderlyingNetworkRecords.remove(network); reevaluateNetworks(); @@ -649,12 +635,6 @@ public class UnderlyingNetworkController { class NetworkEvaluatorCallbackImpl implements NetworkEvaluatorCallback { @Override public void onEvaluationResultChanged() { - if (!mVcnContext.isFlagNetworkMetricMonitorEnabled() - || !mVcnContext.isFlagIpSecTransformStateEnabled()) { - logWtf("#onEvaluationResultChanged: unexpected call; flags missing"); - return; - } - mVcnContext.ensureRunningOnLooperThread(); reevaluateNetworks(); } diff --git a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkEvaluator.java b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkEvaluator.java index 78e06d46c74c..08be11e29689 100644 --- a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkEvaluator.java +++ b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkEvaluator.java @@ -25,16 +25,15 @@ import android.net.IpSecTransform; import android.net.LinkProperties; import android.net.Network; import android.net.NetworkCapabilities; -import android.net.vcn.Flags; import android.net.vcn.VcnManager; import android.net.vcn.VcnUnderlyingNetworkTemplate; import android.os.Handler; import android.os.ParcelUuid; +import android.util.IndentingPrintWriter; import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionSnapshot; import com.android.server.vcn.VcnContext; @@ -103,17 +102,15 @@ public class UnderlyingNetworkEvaluator { updatePriorityClass( underlyingNetworkTemplates, subscriptionGroup, lastSnapshot, carrierConfig); - if (isIpSecPacketLossDetectorEnabled()) { - try { - mMetricMonitors.add( - mDependencies.newIpSecPacketLossDetector( - mVcnContext, - mNetworkRecordBuilder.getNetwork(), - carrierConfig, - new MetricMonitorCallbackImpl())); - } catch (IllegalAccessException e) { - // No action. Do not add anything to mMetricMonitors - } + try { + mMetricMonitors.add( + mDependencies.newIpSecPacketLossDetector( + mVcnContext, + mNetworkRecordBuilder.getNetwork(), + carrierConfig, + new MetricMonitorCallbackImpl())); + } catch (IllegalAccessException e) { + // No action. Do not add anything to mMetricMonitors } } @@ -189,23 +186,12 @@ public class UnderlyingNetworkEvaluator { } } - private boolean isIpSecPacketLossDetectorEnabled() { - return isIpSecPacketLossDetectorEnabled(mVcnContext); - } - - private static boolean isIpSecPacketLossDetectorEnabled(VcnContext vcnContext) { - return vcnContext.isFlagIpSecTransformStateEnabled() - && vcnContext.isFlagNetworkMetricMonitorEnabled(); - } - /** Get the comparator for UnderlyingNetworkEvaluator */ public static Comparator<UnderlyingNetworkEvaluator> getComparator(VcnContext vcnContext) { return (left, right) -> { - if (isIpSecPacketLossDetectorEnabled(vcnContext)) { - if (left.mIsPenalized != right.mIsPenalized) { - // A penalized network should have lower priority which means a larger index - return left.mIsPenalized ? 1 : -1; - } + if (left.mIsPenalized != right.mIsPenalized) { + // A penalized network should have lower priority which means a larger index + return left.mIsPenalized ? 1 : -1; } final int leftIndex = left.mPriorityClass; @@ -297,10 +283,8 @@ public class UnderlyingNetworkEvaluator { updatePriorityClass( underlyingNetworkTemplates, subscriptionGroup, lastSnapshot, carrierConfig); - if (Flags.evaluateIpsecLossOnLpNcChange()) { - for (NetworkMetricMonitor monitor : mMetricMonitors) { - monitor.onLinkPropertiesOrCapabilitiesChanged(); - } + for (NetworkMetricMonitor monitor : mMetricMonitors) { + monitor.onLinkPropertiesOrCapabilitiesChanged(); } } @@ -316,10 +300,8 @@ public class UnderlyingNetworkEvaluator { updatePriorityClass( underlyingNetworkTemplates, subscriptionGroup, lastSnapshot, carrierConfig); - if (Flags.evaluateIpsecLossOnLpNcChange()) { - for (NetworkMetricMonitor monitor : mMetricMonitors) { - monitor.onLinkPropertiesOrCapabilitiesChanged(); - } + for (NetworkMetricMonitor monitor : mMetricMonitors) { + monitor.onLinkPropertiesOrCapabilitiesChanged(); } } diff --git a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkRecord.java b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkRecord.java index 7ab8e552722a..1945052b92df 100644 --- a/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkRecord.java +++ b/services/core/java/com/android/server/vcn/routeselection/UnderlyingNetworkRecord.java @@ -22,10 +22,10 @@ import android.annotation.Nullable; import android.net.LinkProperties; import android.net.Network; import android.net.NetworkCapabilities; +import android.util.IndentingPrintWriter; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting.Visibility; -import com.android.internal.util.IndentingPrintWriter; import java.util.Objects; diff --git a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java index 8fc696556e29..72c7be34597e 100644 --- a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java +++ b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java @@ -17,6 +17,7 @@ package com.android.server.wallpaper; import static android.Manifest.permission.INTERACT_ACROSS_USERS_FULL; +import static android.Manifest.permission.MANAGE_EXTERNAL_STORAGE; import static android.Manifest.permission.READ_WALLPAPER_INTERNAL; import static android.app.ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND; import static android.app.WallpaperManager.COMMAND_REAPPLY; @@ -2209,7 +2210,8 @@ public class WallpaperManagerService extends IWallpaperManager.Stub public ParcelFileDescriptor getWallpaperWithFeature(String callingPkg, String callingFeatureId, IWallpaperManagerCallback cb, final int which, Bundle outParams, int wallpaperUserId, boolean getCropped) { - final boolean hasPrivilege = hasPermission(READ_WALLPAPER_INTERNAL); + final boolean hasPrivilege = hasPermission(READ_WALLPAPER_INTERNAL) + || hasPermission(MANAGE_EXTERNAL_STORAGE); if (!hasPrivilege) { mContext.getSystemService(StorageManager.class).checkPermissionReadImages(true, Binder.getCallingPid(), Binder.getCallingUid(), callingPkg, callingFeatureId); diff --git a/services/core/java/com/android/server/webkit/WebViewUpdateService.java b/services/core/java/com/android/server/webkit/WebViewUpdateService.java index 043470f62850..9ee42b17c2a4 100644 --- a/services/core/java/com/android/server/webkit/WebViewUpdateService.java +++ b/services/core/java/com/android/server/webkit/WebViewUpdateService.java @@ -84,8 +84,13 @@ public class WebViewUpdateService extends SystemService { mWebViewUpdatedReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { + final String action = intent.getAction(); + if (action == null) { + return; + } + int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, UserHandle.USER_NULL); - switch (intent.getAction()) { + switch (action) { case Intent.ACTION_PACKAGE_REMOVED: // When a package is replaced we will receive two intents, one // representing the removal of the old package and one representing the diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index d9dc7ba9ad12..3bca2d8e9957 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -53,7 +53,6 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.app.WindowConfiguration.activityTypeToString; -import static android.app.WindowConfiguration.isFloating; import static android.app.admin.DevicePolicyResources.Drawables.Source.PROFILE_SWITCH_ANIMATION; import static android.app.admin.DevicePolicyResources.Drawables.Style.OUTLINE; import static android.app.admin.DevicePolicyResources.Drawables.WORK_PROFILE_ICON; @@ -158,7 +157,6 @@ import static com.android.internal.util.FrameworkStatsLog.APP_COMPAT_STATE_CHANG import static com.android.internal.util.FrameworkStatsLog.APP_COMPAT_STATE_CHANGED__STATE__LETTERBOXED_FOR_SIZE_COMPAT_MODE; import static com.android.internal.util.FrameworkStatsLog.APP_COMPAT_STATE_CHANGED__STATE__NOT_LETTERBOXED; import static com.android.internal.util.FrameworkStatsLog.APP_COMPAT_STATE_CHANGED__STATE__NOT_VISIBLE; -import static com.android.internal.util.function.pooled.PooledLambda.obtainMessage; import static com.android.server.policy.WindowManagerPolicy.FINISH_LAYOUT_REDO_ANIM; import static com.android.server.policy.WindowManagerPolicy.FINISH_LAYOUT_REDO_WALLPAPER; import static com.android.server.wm.ActivityRecord.State.DESTROYED; @@ -343,7 +341,6 @@ import android.service.contentcapture.ActivityEvent; import android.service.dreams.DreamActivity; import android.service.voice.IVoiceInteractionSession; import android.util.ArraySet; -import android.util.DisplayMetrics; import android.util.EventLog; import android.util.Log; import android.util.MergedConfiguration; @@ -380,6 +377,7 @@ import android.window.WindowOnBackInvokedDispatcher; import com.android.internal.R; import com.android.internal.annotations.GuardedBy; +import com.android.internal.annotations.KeepForWeakReference; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.app.ResolverActivity; import com.android.internal.content.ReferrerIntent; @@ -971,6 +969,8 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A private RemoteCallbackList<IScreenCaptureObserver> mCaptureCallbacks; + // Ensure the field is kept during optimization to preserve downstream weak refs. + @KeepForWeakReference private final ColorDisplayService.ColorTransformController mColorTransformController = (matrix, translation) -> mWmService.mH.post(() -> { synchronized (mWmService.mGlobalLock) { @@ -1908,7 +1908,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } void updateLetterboxSurfaceIfNeeded(WindowState winHint, Transaction t) { - mLetterboxUiController.updateLetterboxSurfaceIfNeeded(winHint, t); + mLetterboxUiController.updateLetterboxSurfaceIfNeeded(winHint, t, getPendingTransaction()); } void updateLetterboxSurfaceIfNeeded(WindowState winHint) { @@ -6960,7 +6960,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } else if (associatedTask.getActivity( r -> r.isVisibleRequested() && !r.firstWindowDrawn) == null) { // The last drawn activity may not be the one that owns the starting window. - final ActivityRecord r = associatedTask.topActivityContainsStartingWindow(); + final ActivityRecord r = associatedTask.getActivity(ar -> ar.mStartingData != null); if (r != null) { r.removeStartingWindow(); } @@ -8668,108 +8668,21 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A resolvedConfig.windowConfiguration.setMaxBounds(mTmpBounds); } - applySizeOverrideIfNeeded(newParentConfiguration, parentWindowingMode, resolvedConfig); + applySizeOverrideIfNeeded( + mDisplayContent, + info.applicationInfo, + newParentConfiguration, + resolvedConfig, + mOptOutEdgeToEdge, + hasFixedRotationTransform(), + getCompatDisplayInsets() != null); mResolveConfigHint.resetTmpOverrides(); logAppCompatState(); } @Nullable Rect getParentAppBoundsOverride() { - return Rect.copyOrNull(mResolveConfigHint.mTmpParentAppBoundsOverride); - } - - /** - * If necessary, override configuration fields related to app bounds. - * This will happen when the app is targeting SDK earlier than 35. - * The insets and configuration has decoupled since SDK level 35, to make the system - * compatible to existing apps, override the configuration with legacy metrics. In legacy - * metrics, fields such as appBounds will exclude some of the system bar areas. - * The override contains all potentially affected fields in Configuration, including - * screenWidthDp, screenHeightDp, smallestScreenWidthDp, and orientation. - * All overrides to those fields should be in this method. - * - * TODO: Consider integrate this with computeConfigByResolveHint() - */ - private void applySizeOverrideIfNeeded(Configuration newParentConfiguration, - int parentWindowingMode, Configuration inOutConfig) { - if (mDisplayContent == null) { - return; - } - final Rect parentBounds = newParentConfiguration.windowConfiguration.getBounds(); - int rotation = newParentConfiguration.windowConfiguration.getRotation(); - if (rotation == ROTATION_UNDEFINED && !isFixedRotationTransforming()) { - rotation = mDisplayContent.getRotation(); - } - if (!mOptOutEdgeToEdge && (!mResolveConfigHint.mUseOverrideInsetsForConfig - || getCompatDisplayInsets() != null - || (isFloating(parentWindowingMode) - // Check the requested windowing mode of activity as well in case it is - // switching between PiP and fullscreen. - && (inOutConfig.windowConfiguration.getWindowingMode() - == WINDOWING_MODE_UNDEFINED - || isFloating(inOutConfig.windowConfiguration.getWindowingMode()))) - || rotation == ROTATION_UNDEFINED)) { - // If the insets configuration decoupled logic is not enabled for the app, or the app - // already has a compat override, or the context doesn't contain enough info to - // calculate the override, skip the override. - return; - } - // Make sure the orientation related fields will be updated by the override insets, because - // fixed rotation has assigned the fields from display's configuration. - if (hasFixedRotationTransform()) { - inOutConfig.windowConfiguration.setAppBounds(null); - inOutConfig.screenWidthDp = Configuration.SCREEN_WIDTH_DP_UNDEFINED; - inOutConfig.screenHeightDp = Configuration.SCREEN_HEIGHT_DP_UNDEFINED; - inOutConfig.smallestScreenWidthDp = Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED; - inOutConfig.orientation = ORIENTATION_UNDEFINED; - } - - // Override starts here. - final boolean rotated = (rotation == ROTATION_90 || rotation == ROTATION_270); - final int dw = rotated ? mDisplayContent.mBaseDisplayHeight - : mDisplayContent.mBaseDisplayWidth; - final int dh = rotated ? mDisplayContent.mBaseDisplayWidth - : mDisplayContent.mBaseDisplayHeight; - final Rect nonDecorInsets = mDisplayContent.getDisplayPolicy() - .getDecorInsetsInfo(rotation, dw, dh).mOverrideNonDecorInsets; - // This should be the only place override the configuration for ActivityRecord. Override - // the value if not calculated yet. - Rect outAppBounds = inOutConfig.windowConfiguration.getAppBounds(); - if (outAppBounds == null || outAppBounds.isEmpty()) { - inOutConfig.windowConfiguration.setAppBounds(parentBounds); - outAppBounds = inOutConfig.windowConfiguration.getAppBounds(); - outAppBounds.inset(nonDecorInsets); - } - float density = inOutConfig.densityDpi; - if (density == Configuration.DENSITY_DPI_UNDEFINED) { - density = newParentConfiguration.densityDpi; - } - density *= DisplayMetrics.DENSITY_DEFAULT_SCALE; - if (inOutConfig.screenWidthDp == Configuration.SCREEN_WIDTH_DP_UNDEFINED) { - inOutConfig.screenWidthDp = (int) (outAppBounds.width() / density + 0.5f); - } - if (inOutConfig.screenHeightDp == Configuration.SCREEN_HEIGHT_DP_UNDEFINED) { - inOutConfig.screenHeightDp = (int) (outAppBounds.height() / density + 0.5f); - } - if (inOutConfig.smallestScreenWidthDp - == Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED - && parentWindowingMode == WINDOWING_MODE_FULLSCREEN) { - // For the case of PIP transition and multi-window environment, the - // smallestScreenWidthDp is handled already. Override only if the app is in - // fullscreen. - final DisplayInfo info = new DisplayInfo(mDisplayContent.getDisplayInfo()); - mDisplayContent.computeSizeRanges(info, rotated, dw, dh, - mDisplayContent.getDisplayMetrics().density, - inOutConfig, true /* overrideConfig */); - } - - // It's possible that screen size will be considered in different orientation with or - // without considering the system bar insets. Override orientation as well. - if (inOutConfig.orientation == ORIENTATION_UNDEFINED) { - inOutConfig.orientation = - (inOutConfig.screenWidthDp <= inOutConfig.screenHeightDp) - ? ORIENTATION_PORTRAIT : ORIENTATION_LANDSCAPE; - } + return Rect.copyOrNull(mResolveConfigHint.mParentAppBoundsOverride); } private void computeConfigByResolveHint(@NonNull Configuration resolvedConfig, @@ -8860,7 +8773,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } final Rect screenResolvedBounds = mSizeCompatBounds != null ? mSizeCompatBounds : resolvedBounds; - final Rect parentAppBounds = mResolveConfigHint.mTmpParentAppBoundsOverride; + final Rect parentAppBounds = mResolveConfigHint.mParentAppBoundsOverride; final Rect parentBounds = newParentConfiguration.windowConfiguration.getBounds(); final float screenResolvedBoundsWidth = screenResolvedBounds.width(); final float parentAppBoundsWidth = parentAppBounds.width(); @@ -9269,7 +9182,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A */ private void resolveAspectRatioRestriction(Configuration newParentConfiguration) { final Configuration resolvedConfig = getResolvedOverrideConfiguration(); - final Rect parentAppBounds = mResolveConfigHint.mTmpParentAppBoundsOverride; + final Rect parentAppBounds = mResolveConfigHint.mParentAppBoundsOverride; final Rect parentBounds = newParentConfiguration.windowConfiguration.getBounds(); final Rect resolvedBounds = resolvedConfig.windowConfiguration.getBounds(); // Use tmp bounds to calculate aspect ratio so we can know whether the activity should use @@ -9310,7 +9223,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A : newParentConfiguration.windowConfiguration.getBounds(); final Rect containerAppBounds = useResolvedBounds ? new Rect(resolvedConfig.windowConfiguration.getAppBounds()) - : mResolveConfigHint.mTmpParentAppBoundsOverride; + : mResolveConfigHint.mParentAppBoundsOverride; final int requestedOrientation = getRequestedConfigurationOrientation(); final boolean orientationRequested = requestedOrientation != ORIENTATION_UNDEFINED; diff --git a/services/core/java/com/android/server/wm/ActivityStarter.java b/services/core/java/com/android/server/wm/ActivityStarter.java index e6d81324efa1..d2a128b74732 100644 --- a/services/core/java/com/android/server/wm/ActivityStarter.java +++ b/services/core/java/com/android/server/wm/ActivityStarter.java @@ -938,7 +938,6 @@ class ActivityStarter { mLastStartReason = request.reason; mLastStartActivityTimeMs = System.currentTimeMillis(); - final ActivityRecord previousStart = mLastStartActivityRecord; final IApplicationThread caller = request.caller; Intent intent = request.intent; NeededUriGrants intentGrants = request.intentGrants; diff --git a/services/core/java/com/android/server/wm/AppTransitionController.java b/services/core/java/com/android/server/wm/AppTransitionController.java index 939babc4df41..c55a1003f402 100644 --- a/services/core/java/com/android/server/wm/AppTransitionController.java +++ b/services/core/java/com/android/server/wm/AppTransitionController.java @@ -256,7 +256,8 @@ public class AppTransitionController { tmpCloseApps = new ArraySet<>(mDisplayContent.mClosingApps); if (mDisplayContent.mAtmService.mBackNavigationController .removeIfContainsBackAnimationTargets(tmpOpenApps, tmpCloseApps)) { - mDisplayContent.mAtmService.mBackNavigationController.clearBackAnimations(); + mDisplayContent.mAtmService.mBackNavigationController + .clearBackAnimations(false /* cancel */); } } diff --git a/services/core/java/com/android/server/wm/AppWarnings.java b/services/core/java/com/android/server/wm/AppWarnings.java index 9fd543fca30e..fcaab2c0f8c7 100644 --- a/services/core/java/com/android/server/wm/AppWarnings.java +++ b/services/core/java/com/android/server/wm/AppWarnings.java @@ -152,10 +152,12 @@ class AppWarnings { * @param r activity record for which the warning may be displayed */ public void showUnsupportedDisplaySizeDialogIfNeeded(ActivityRecord r) { - final Configuration globalConfig = mAtm.getGlobalConfiguration(); - if (globalConfig.densityDpi != DisplayMetrics.DENSITY_DEVICE_STABLE + final DisplayContent dc = r.getDisplayContent(); + final Configuration config = dc == null + ? mAtm.getGlobalConfiguration() : dc.getConfiguration(); + if (config.densityDpi != DisplayMetrics.DENSITY_DEVICE_STABLE && r.info.applicationInfo.requiresSmallestWidthDp - > globalConfig.smallestScreenWidthDp) { + > config.smallestScreenWidthDp) { mUiHandler.showUnsupportedDisplaySizeDialog(r); } } diff --git a/services/core/java/com/android/server/wm/BackNavigationController.java b/services/core/java/com/android/server/wm/BackNavigationController.java index 1ce324f68569..14ae918129f7 100644 --- a/services/core/java/com/android/server/wm/BackNavigationController.java +++ b/services/core/java/com/android/server/wm/BackNavigationController.java @@ -252,7 +252,8 @@ class BackNavigationController { // skip if one of participant activity is translucent backType = BackNavigationInfo.TYPE_CALLBACK; } else if (prevActivities.size() > 0) { - if (!isOccluded || isAllActivitiesCanShowWhenLocked(prevActivities)) { + if ((!isOccluded || isAllActivitiesCanShowWhenLocked(prevActivities)) + && isAllActivitiesCreated(prevActivities)) { // We have another Activity in the same currentTask to go to final WindowContainer parent = currentActivity.getParent(); final boolean canCustomize = parent != null @@ -549,6 +550,17 @@ class BackNavigationController { return !prevActivities.isEmpty(); } + private static boolean isAllActivitiesCreated( + @NonNull ArrayList<ActivityRecord> prevActivities) { + for (int i = prevActivities.size() - 1; i >= 0; --i) { + final ActivityRecord check = prevActivities.get(i); + if (check.isState(ActivityRecord.State.INITIALIZING)) { + return false; + } + } + return !prevActivities.isEmpty(); + } + boolean isMonitoringTransition() { return mAnimationHandler.mComposed || mNavigationMonitor.isMonitorForRemote(); } @@ -739,7 +751,7 @@ class BackNavigationController { mObserver.sendResult(null /* result */); } if (isMonitorAnimationOrTransition()) { - clearBackAnimations(); + clearBackAnimations(true /* cancel */); } cancelPendingAnimation(); } @@ -831,24 +843,23 @@ class BackNavigationController { * Cleanup animation, this can either happen when legacy transition ready, or when the Shell * transition finish. */ - void clearBackAnimations() { - mAnimationHandler.clearBackAnimateTarget(); + void clearBackAnimations(boolean cancel) { + mAnimationHandler.clearBackAnimateTarget(cancel); mNavigationMonitor.stopMonitorTransition(); mWaitTransitionFinish = null; } /** - * Called when a transition finished. - * Handle the pending animation when the running transition finished. + * Handle the pending animation when the running transition finished, all the visibility change + * has applied so ready to start pending predictive back animation. * @param targets The final animation targets derived in transition. * @param finishedTransition The finished transition target. */ void onTransitionFinish(ArrayList<Transition.ChangeInfo> targets, @NonNull Transition finishedTransition) { if (finishedTransition == mWaitTransitionFinish) { - clearBackAnimations(); + clearBackAnimations(false /* cancel */); } - if (!mBackAnimationInProgress || mPendingAnimationBuilder == null) { return; } @@ -982,7 +993,7 @@ class BackNavigationController { mCloseAdaptor = createAdaptor(close, false, mSwitchType); if (mCloseAdaptor.mAnimationTarget == null) { Slog.w(TAG, "composeNewAnimations fail, skip"); - clearBackAnimateTarget(); + clearBackAnimateTarget(true /* cancel */); return; } @@ -1001,7 +1012,7 @@ class BackNavigationController { mOpenAnimAdaptor = new BackWindowAnimationAdaptorWrapper(true, mSwitchType, open); if (!mOpenAnimAdaptor.isValid()) { Slog.w(TAG, "compose animations fail, skip"); - clearBackAnimateTarget(); + clearBackAnimateTarget(true /* cancel */); return; } mOpenActivities = openingActivities; @@ -1013,7 +1024,7 @@ class BackNavigationController { Slog.e(TAG, "Previous animation is running " + this); return false; } - clearBackAnimateTarget(); + clearBackAnimateTarget(true /* cancel */); if (close == null || open == null || open.length == 0 || open.length > 2) { Slog.e(TAG, "reset animation with null target close: " + close + " open: " + Arrays.toString(open)); @@ -1102,7 +1113,19 @@ class BackNavigationController { return false; } - void finishPresentAnimations() { + void finishPresentAnimations(boolean cancel) { + if (mOpenActivities != null) { + for (int i = mOpenActivities.length - 1; i >= 0; --i) { + final ActivityRecord resetActivity = mOpenActivities[i]; + if (resetActivity.mDisplayContent.isFixedRotationLaunchingApp(resetActivity)) { + resetActivity.mDisplayContent + .continueUpdateOrientationForDiffOrienLaunchingApp(); + } + if (resetActivity.mLaunchTaskBehind) { + restoreLaunchBehind(resetActivity, cancel); + } + } + } if (mCloseAdaptor != null) { mCloseAdaptor.mTarget.cancelAnimation(); mCloseAdaptor = null; @@ -1111,15 +1134,6 @@ class BackNavigationController { mOpenAnimAdaptor.cleanUp(mStartingSurfaceTargetMatch); mOpenAnimAdaptor = null; } - - if (mOpenActivities != null) { - for (int i = mOpenActivities.length - 1; i >= 0; --i) { - final ActivityRecord resetActivity = mOpenActivities[i]; - if (resetActivity.mLaunchTaskBehind) { - restoreLaunchBehind(resetActivity); - } - } - } } void markStartingSurfaceMatch(SurfaceControl.Transaction reparentTransaction) { @@ -1130,10 +1144,10 @@ class BackNavigationController { mOpenAnimAdaptor.reparentWindowlessSurfaceToTarget(reparentTransaction); } - void clearBackAnimateTarget() { + void clearBackAnimateTarget(boolean cancel) { if (mComposed) { mComposed = false; - finishPresentAnimations(); + finishPresentAnimations(cancel); } mWaitTransition = false; mStartingSurfaceTargetMatch = false; @@ -1649,7 +1663,7 @@ class BackNavigationController { return; } if (!triggerBack) { - clearBackAnimateTarget(); + clearBackAnimateTarget(true /* cancel */); } else { mWaitTransition = true; } @@ -1732,25 +1746,23 @@ class BackNavigationController { true /* notifyClients */); } - private static void restoreLaunchBehind(@NonNull ActivityRecord activity) { + private static void restoreLaunchBehind(@NonNull ActivityRecord activity, boolean cancel) { if (!activity.isAttached()) { // The activity was detached from hierarchy. return; } - - if (activity.mDisplayContent.isFixedRotationLaunchingApp(activity)) { - activity.mDisplayContent.continueUpdateOrientationForDiffOrienLaunchingApp(); - } - - // Restore the launch-behind state. - activity.mTaskSupervisor.scheduleLaunchTaskBehindComplete(activity.token); activity.mLaunchTaskBehind = false; - // Ignore all change - activity.mTransitionController.mSnapshotController - .mActivitySnapshotController.clearOnBackPressedActivities(); ProtoLog.d(WM_DEBUG_BACK_PREVIEW, "Setting Activity.mLauncherTaskBehind to false. Activity=%s", activity); + if (cancel) { + // Restore the launch-behind state + // TODO b/347168362 Change status directly during collecting for a transition. + activity.mTaskSupervisor.scheduleLaunchTaskBehindComplete(activity.token); + // Ignore all change + activity.mTransitionController.mSnapshotController + .mActivitySnapshotController.clearOnBackPressedActivities(); + } } void checkAnimationReady(WallpaperController wallpaperController) { @@ -1770,7 +1782,7 @@ class BackNavigationController { if (!mBackAnimationInProgress) { // gesture is already finished, do not start animation if (mPendingAnimation != null) { - clearBackAnimations(); + clearBackAnimations(true /* cancel */); mPendingAnimation = null; } return; diff --git a/services/core/java/com/android/server/wm/ConfigurationContainer.java b/services/core/java/com/android/server/wm/ConfigurationContainer.java index efd52026cfec..3ebaf03c4a31 100644 --- a/services/core/java/com/android/server/wm/ConfigurationContainer.java +++ b/services/core/java/com/android/server/wm/ConfigurationContainer.java @@ -22,14 +22,23 @@ import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED; +import static android.app.WindowConfiguration.ROTATION_UNDEFINED; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.app.WindowConfiguration.activityTypeToString; +import static android.app.WindowConfiguration.isFloating; import static android.app.WindowConfiguration.windowingModeToString; import static android.app.WindowConfigurationProto.WINDOWING_MODE; import static android.content.ConfigurationProto.WINDOW_CONFIGURATION; +import static android.content.pm.ActivityInfo.INSETS_DECOUPLED_CONFIGURATION_ENFORCED; +import static android.content.pm.ActivityInfo.OVERRIDE_ENABLE_INSETS_DECOUPLED_CONFIGURATION; +import static android.content.res.Configuration.ORIENTATION_LANDSCAPE; +import static android.content.res.Configuration.ORIENTATION_PORTRAIT; +import static android.content.res.Configuration.ORIENTATION_UNDEFINED; +import static android.view.Surface.ROTATION_270; +import static android.view.Surface.ROTATION_90; import static com.android.server.wm.ConfigurationContainerProto.FULL_CONFIGURATION; import static com.android.server.wm.ConfigurationContainerProto.MERGED_OVERRIDE_CONFIGURATION; @@ -38,11 +47,14 @@ import static com.android.server.wm.ConfigurationContainerProto.OVERRIDE_CONFIGU import android.annotation.CallSuper; import android.annotation.NonNull; import android.app.WindowConfiguration; +import android.content.pm.ApplicationInfo; import android.content.res.Configuration; import android.graphics.Point; import android.graphics.Rect; import android.os.LocaleList; +import android.util.DisplayMetrics; import android.util.proto.ProtoOutputStream; +import android.view.DisplayInfo; import com.android.internal.annotations.VisibleForTesting; @@ -173,6 +185,110 @@ public abstract class ConfigurationContainer<E extends ConfigurationContainer> { mResolvedOverrideConfiguration.setTo(mRequestedOverrideConfiguration); } + /** + * If necessary, override configuration fields related to app bounds. + * This will happen when the app is targeting SDK earlier than 35. + * The insets and configuration has decoupled since SDK level 35, to make the system + * compatible to existing apps, override the configuration with legacy metrics. In legacy + * metrics, fields such as appBounds will exclude some of the system bar areas. + * The override contains all potentially affected fields in Configuration, including + * screenWidthDp, screenHeightDp, smallestScreenWidthDp, and orientation. + * All overrides to those fields should be in this method. + * + * TODO: Consider integrate this with computeConfigByResolveHint() + */ + static void applySizeOverrideIfNeeded(DisplayContent displayContent, ApplicationInfo appInfo, + Configuration newParentConfiguration, Configuration inOutConfig, + boolean optsOutEdgeToEdge, boolean hasFixedRotationTransform, + boolean hasCompatDisplayInsets) { + if (displayContent == null) { + return; + } + final boolean useOverrideInsetsForConfig = + displayContent.mWmService.mFlags.mInsetsDecoupledConfiguration + ? !appInfo.isChangeEnabled(INSETS_DECOUPLED_CONFIGURATION_ENFORCED) + && !appInfo.isChangeEnabled( + OVERRIDE_ENABLE_INSETS_DECOUPLED_CONFIGURATION) + : appInfo.isChangeEnabled(OVERRIDE_ENABLE_INSETS_DECOUPLED_CONFIGURATION); + final int parentWindowingMode = + newParentConfiguration.windowConfiguration.getWindowingMode(); + final boolean isFloating = isFloating(parentWindowingMode) + // Check the requested windowing mode of activity as well in case it is + // switching between PiP and fullscreen. + && (inOutConfig.windowConfiguration.getWindowingMode() == WINDOWING_MODE_UNDEFINED + || isFloating(inOutConfig.windowConfiguration.getWindowingMode())); + int rotation = newParentConfiguration.windowConfiguration.getRotation(); + if (rotation == ROTATION_UNDEFINED && !hasFixedRotationTransform) { + rotation = displayContent.getRotation(); + } + if (!optsOutEdgeToEdge && (!useOverrideInsetsForConfig + || hasCompatDisplayInsets + || isFloating + || rotation == ROTATION_UNDEFINED)) { + // If the insets configuration decoupled logic is not enabled for the app, or the app + // already has a compat override, or the context doesn't contain enough info to + // calculate the override, skip the override. + return; + } + // Make sure the orientation related fields will be updated by the override insets, because + // fixed rotation has assigned the fields from display's configuration. + if (hasFixedRotationTransform) { + inOutConfig.windowConfiguration.setAppBounds(null); + inOutConfig.screenWidthDp = Configuration.SCREEN_WIDTH_DP_UNDEFINED; + inOutConfig.screenHeightDp = Configuration.SCREEN_HEIGHT_DP_UNDEFINED; + inOutConfig.smallestScreenWidthDp = Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED; + inOutConfig.orientation = ORIENTATION_UNDEFINED; + } + + // Override starts here. + final boolean rotated = (rotation == ROTATION_90 || rotation == ROTATION_270); + final int dw = rotated + ? displayContent.mBaseDisplayHeight + : displayContent.mBaseDisplayWidth; + final int dh = rotated + ? displayContent.mBaseDisplayWidth + : displayContent.mBaseDisplayHeight; + // This should be the only place override the configuration for ActivityRecord. Override + // the value if not calculated yet. + Rect outAppBounds = inOutConfig.windowConfiguration.getAppBounds(); + if (outAppBounds == null || outAppBounds.isEmpty()) { + inOutConfig.windowConfiguration.setAppBounds( + newParentConfiguration.windowConfiguration.getBounds()); + outAppBounds = inOutConfig.windowConfiguration.getAppBounds(); + outAppBounds.inset(displayContent.getDisplayPolicy() + .getDecorInsetsInfo(rotation, dw, dh).mOverrideNonDecorInsets); + } + float density = inOutConfig.densityDpi; + if (density == Configuration.DENSITY_DPI_UNDEFINED) { + density = newParentConfiguration.densityDpi; + } + density *= DisplayMetrics.DENSITY_DEFAULT_SCALE; + if (inOutConfig.screenWidthDp == Configuration.SCREEN_WIDTH_DP_UNDEFINED) { + inOutConfig.screenWidthDp = (int) (outAppBounds.width() / density + 0.5f); + } + if (inOutConfig.screenHeightDp == Configuration.SCREEN_HEIGHT_DP_UNDEFINED) { + inOutConfig.screenHeightDp = (int) (outAppBounds.height() / density + 0.5f); + } + if (inOutConfig.smallestScreenWidthDp == Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED + && parentWindowingMode == WINDOWING_MODE_FULLSCREEN) { + // For the case of PIP transition and multi-window environment, the + // smallestScreenWidthDp is handled already. Override only if the app is in + // fullscreen. + final DisplayInfo info = new DisplayInfo(displayContent.getDisplayInfo()); + displayContent.computeSizeRanges(info, rotated, dw, dh, + displayContent.getDisplayMetrics().density, + inOutConfig, true /* overrideConfig */); + } + + // It's possible that screen size will be considered in different orientation with or + // without considering the system bar insets. Override orientation as well. + if (inOutConfig.orientation == ORIENTATION_UNDEFINED) { + inOutConfig.orientation = (inOutConfig.screenWidthDp <= inOutConfig.screenHeightDp) + ? ORIENTATION_PORTRAIT + : ORIENTATION_LANDSCAPE; + } + } + /** Returns {@code true} if requested override override configuration is not empty. */ boolean hasRequestedOverrideConfiguration() { return mHasOverrideConfiguration; diff --git a/services/core/java/com/android/server/wm/KeyguardController.java b/services/core/java/com/android/server/wm/KeyguardController.java index f70d2a58e781..872b4e102565 100644 --- a/services/core/java/com/android/server/wm/KeyguardController.java +++ b/services/core/java/com/android/server/wm/KeyguardController.java @@ -16,7 +16,6 @@ package com.android.server.wm; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_DREAM; import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER; import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_APPEARING; @@ -657,7 +656,6 @@ class KeyguardController { final boolean lastKeyguardGoingAway = mKeyguardGoingAway; final ActivityRecord lastDismissKeyguardActivity = mDismissingKeyguardActivity; - final ActivityRecord lastTurnScreenOnActivity = mTopTurnScreenOnActivity; mRequestDismissKeyguard = false; mOccluded = false; @@ -666,7 +664,6 @@ class KeyguardController { mDismissingKeyguardActivity = null; mTopTurnScreenOnActivity = null; - boolean occludedByActivity = false; final Task task = getRootTaskForControllingOccluding(display); final ActivityRecord top = task != null ? task.getTopNonFinishingActivity() : null; if (top != null) { @@ -712,7 +709,7 @@ class KeyguardController { if (mTopTurnScreenOnActivity != null && !mService.mWindowManager.mPowerManager.isInteractive() - && (mRequestDismissKeyguard || occludedByActivity)) { + && (mRequestDismissKeyguard || mOccluded)) { controller.mTaskSupervisor.wakeUp("handleTurnScreenOn"); mTopTurnScreenOnActivity.setCurrentLaunchCanTurnScreenOn(false); } diff --git a/services/core/java/com/android/server/wm/Letterbox.java b/services/core/java/com/android/server/wm/Letterbox.java index 362d4efa0825..2aa7c0c0a401 100644 --- a/services/core/java/com/android/server/wm/Letterbox.java +++ b/services/core/java/com/android/server/wm/Letterbox.java @@ -20,6 +20,7 @@ import static android.os.InputConstants.DEFAULT_DISPATCHING_TIMEOUT_MILLIS; import static android.view.SurfaceControl.HIDDEN; import static android.window.TaskConstants.TASK_CHILD_LAYER_LETTERBOX_BACKGROUND; +import android.annotation.NonNull; import android.graphics.Color; import android.graphics.Point; import android.graphics.Rect; @@ -209,16 +210,18 @@ public class Letterbox { return false; } - public void applySurfaceChanges(SurfaceControl.Transaction t) { + /** Applies surface changes such as colour, window crop, position and input info. */ + public void applySurfaceChanges(@NonNull SurfaceControl.Transaction t, + @NonNull SurfaceControl.Transaction inputT) { if (useFullWindowSurface()) { - mFullWindowSurface.applySurfaceChanges(t); + mFullWindowSurface.applySurfaceChanges(t, inputT); for (LetterboxSurface surface : mSurfaces) { surface.remove(); } } else { for (LetterboxSurface surface : mSurfaces) { - surface.applySurfaceChanges(t); + surface.applySurfaceChanges(t, inputT); } mFullWindowSurface.remove(); @@ -418,7 +421,8 @@ public class Letterbox { return Math.max(0, mLayoutFrameGlobal.height()); } - public void applySurfaceChanges(SurfaceControl.Transaction t) { + public void applySurfaceChanges(@NonNull SurfaceControl.Transaction t, + @NonNull SurfaceControl.Transaction inputT) { if (!needsApplySurfaceChanges()) { // Nothing changed. return; @@ -446,7 +450,7 @@ public class Letterbox { } if (mSurface != null && mInputInterceptor != null) { mInputInterceptor.updateTouchableRegion(mSurfaceFrameRelative); - t.setInputWindowInfo(mSurface, mInputInterceptor.mWindowHandle); + inputT.setInputWindowInfo(mSurface, mInputInterceptor.mWindowHandle); } } diff --git a/services/core/java/com/android/server/wm/LetterboxUiController.java b/services/core/java/com/android/server/wm/LetterboxUiController.java index 14a0467b1d7b..e6f41ba4b496 100644 --- a/services/core/java/com/android/server/wm/LetterboxUiController.java +++ b/services/core/java/com/android/server/wm/LetterboxUiController.java @@ -785,16 +785,18 @@ final class LetterboxUiController { } void updateLetterboxSurfaceIfNeeded(WindowState winHint) { - updateLetterboxSurfaceIfNeeded(winHint, mActivityRecord.getSyncTransaction()); + updateLetterboxSurfaceIfNeeded(winHint, mActivityRecord.getSyncTransaction(), + mActivityRecord.getPendingTransaction()); } - void updateLetterboxSurfaceIfNeeded(WindowState winHint, Transaction t) { + void updateLetterboxSurfaceIfNeeded(WindowState winHint, @NonNull Transaction t, + @NonNull Transaction inputT) { if (shouldNotLayoutLetterbox(winHint)) { return; } layoutLetterboxIfNeeded(winHint); if (mLetterbox != null && mLetterbox.needsApplySurfaceChanges()) { - mLetterbox.applySurfaceChanges(t); + mLetterbox.applySurfaceChanges(t, inputT); } } diff --git a/services/core/java/com/android/server/wm/OWNERS b/services/core/java/com/android/server/wm/OWNERS index 60454fc5d7c6..63cd59e45ea6 100644 --- a/services/core/java/com/android/server/wm/OWNERS +++ b/services/core/java/com/android/server/wm/OWNERS @@ -24,9 +24,15 @@ pdwilliams@google.com per-file Background*Start* = set noparent per-file Background*Start* = file:/BAL_OWNERS per-file Background*Start* = ogunwale@google.com, louischang@google.com +per-file BackgroundLaunchProcessController.java = file:/BAL_OWNERS # File related to activity callers per-file ActivityCallerState.java = file:/core/java/android/app/COMPONENT_CALLER_OWNERS # Files related to tracing per-file *TransitionTracer.java = file:platform/development:/tools/winscope/OWNERS + +# Files related to activity security +per-file ActivityStarter.java = file:/ACTIVITY_SECURITY_OWNERS +per-file ActivityStartController.java = file:/ACTIVITY_SECURITY_OWNERS +per-file ActivityTaskManagerService.java = file:/ACTIVITY_SECURITY_OWNERS diff --git a/services/core/java/com/android/server/wm/RootWindowContainer.java b/services/core/java/com/android/server/wm/RootWindowContainer.java index f5ab38f72b54..94e3c1f48a50 100644 --- a/services/core/java/com/android/server/wm/RootWindowContainer.java +++ b/services/core/java/com/android/server/wm/RootWindowContainer.java @@ -1003,6 +1003,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> // complete configuration. continue; } + win.updateSurfacePositionIfNeeded(); win.reportResized(); mWmService.mResizingWindows.remove(i); } @@ -2163,6 +2164,12 @@ class RootWindowContainer extends WindowContainer<DisplayContent> // Use Task#setBoundsUnchecked to skip checking windowing mode as the windowing mode // will be updated later after this is collected in transition. rootTask.setBoundsUnchecked(taskFragment.getBounds()); + // The exit-PIP activity resumes early for seamless transition. In certain + // scenarios, this introduces unintended addition to recents. To address this, + // we mark the root task for automatic removal from recents. This ensures that + // after the pinned activity reparents to its original task, the root task is + // automatically removed from the recents list. + rootTask.autoRemoveRecents = true; // Move the last recents animation transaction from original task to the new one. if (task.mLastRecentsAnimationTransaction != null) { diff --git a/services/core/java/com/android/server/wm/Session.java b/services/core/java/com/android/server/wm/Session.java index 3b3eeb496ab7..0562cd979cb8 100644 --- a/services/core/java/com/android/server/wm/Session.java +++ b/services/core/java/com/android/server/wm/Session.java @@ -827,7 +827,7 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { if (changed && noSystemOverlayPermission) { if (mAlertWindowSurfaces.isEmpty()) { cancelAlertWindowNotification(); - } else if (mAlertWindowNotification == null) { + } else if (mAlertWindowNotification == null && !isSatellitePointingUiPackage()) { mAlertWindowNotification = new AlertWindowNotification(mService, mPackageName); if (mShowingAlertWindowNotificationAllowed) { mAlertWindowNotification.post(); @@ -842,6 +842,16 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { } } + // TODO b/349195999 - short term solution to not show the satellite pointing ui notification. + private boolean isSatellitePointingUiPackage() { + if (mPackageName == null || !mPackageName.equals(mService.mContext.getString( + com.android.internal.R.string.config_pointing_ui_package))) { + return false; + } + return ActivityTaskManagerService.checkPermission( + android.Manifest.permission.SATELLITE_COMMUNICATION, mPid, mUid) == PERMISSION_GRANTED; + } + void setShowingAlertWindowNotificationAllowed(boolean allowed) { mShowingAlertWindowNotificationAllowed = allowed; if (mAlertWindowNotification != null) { @@ -897,6 +907,9 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { pw.print(" mClientDead="); pw.print(mClientDead); pw.print(" mSurfaceSession="); pw.println(mSurfaceSession); pw.print(prefix); pw.print("mPackageName="); pw.println(mPackageName); + if (isSatellitePointingUiPackage()) { + pw.print(prefix); pw.println("mIsSatellitePointingUiPackage=true"); + } } @Override diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index 787c5d6f7699..cbf6c5a02ae3 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -1469,7 +1469,7 @@ class Task extends TaskFragment { // The starting window should keep covering its task when a pure TaskFragment is added // because its bounds may not fill the task. final ActivityRecord top = getTopMostActivity(); - if (top != null) { + if (top != null && !top.hasFixedRotationTransform()) { top.associateStartingWindowWithTaskIfNeeded(); } } @@ -2290,7 +2290,7 @@ class Task extends TaskFragment { // Apply crop to root tasks only and clear the crops of the descendant tasks. int width = 0; int height = 0; - if (isRootTask()) { + if (isRootTask() && !mTransitionController.mIsWaitingForDisplayEnabled) { final Rect taskBounds = getBounds(); width = taskBounds.width(); height = taskBounds.height(); @@ -2790,11 +2790,15 @@ class Task extends TaskFragment { @Override void onDisplayChanged(DisplayContent dc) { + final int lastDisplayId = getDisplayId(); super.onDisplayChanged(dc); if (isLeafTask()) { final int displayId = (dc != null) ? dc.getDisplayId() : INVALID_DISPLAY; - mWmService.mAtmService.getTaskChangeNotificationController().notifyTaskDisplayChanged( - mTaskId, displayId); + //Send the callback when the task reparented to another display. + if (lastDisplayId != displayId) { + mWmService.mAtmService.getTaskChangeNotificationController() + .notifyTaskDisplayChanged(mTaskId, displayId); + } } if (isRootTask()) { updateSurfaceBounds(); @@ -4771,6 +4775,9 @@ class Task extends TaskFragment { mTransitionController.collect(topActivity); final Task lastParentBeforePip = topActivity.getLastParentBeforePip(); + // Reset the activity windowing mode to match the parent. + topActivity.getRequestedOverrideConfiguration() + .windowConfiguration.setWindowingMode(WINDOWING_MODE_UNDEFINED); topActivity.reparent(lastParentBeforePip, lastParentBeforePip.getChildCount() /* top */, "movePinnedActivityToOriginalTask"); @@ -5800,6 +5807,12 @@ class Task extends TaskFragment { } private boolean canMoveTaskToBack(Task task) { + // Checks whether a task is a child of this task because it can be reparented when + // transition is deferred. + if (task != this && !task.isDescendantOf(this)) { + return false; + } + // In LockTask mode, moving a locked task to the back of the root task may expose unlocked // ones. Therefore we need to check if this operation is allowed. if (!mAtmService.getLockTaskController().canMoveTaskToBack(task)) { @@ -5869,7 +5882,7 @@ class Task extends TaskFragment { (deferred) -> { // Need to check again if deferred since the system might // be in a different state. - if (!isAttached() || (deferred && !canMoveTaskToBack(tr))) { + if (!tr.isAttached() || (deferred && !canMoveTaskToBack(tr))) { Slog.e(TAG, "Failed to move task to back after saying we could: " + tr.mTaskId); transition.abort(); diff --git a/services/core/java/com/android/server/wm/TaskFragment.java b/services/core/java/com/android/server/wm/TaskFragment.java index ab72e3c42d85..7f6499f0f4b5 100644 --- a/services/core/java/com/android/server/wm/TaskFragment.java +++ b/services/core/java/com/android/server/wm/TaskFragment.java @@ -2241,13 +2241,13 @@ class TaskFragment extends WindowContainer<WindowContainer> { static class ConfigOverrideHint { @Nullable DisplayInfo mTmpOverrideDisplayInfo; @Nullable ActivityRecord.CompatDisplayInsets mTmpCompatInsets; - @Nullable Rect mTmpParentAppBoundsOverride; + @Nullable Rect mParentAppBoundsOverride; int mTmpOverrideConfigOrientation; boolean mUseOverrideInsetsForConfig; void resolveTmpOverrides(DisplayContent dc, Configuration parentConfig, boolean isFixedRotationTransforming) { - mTmpParentAppBoundsOverride = new Rect(parentConfig.windowConfiguration.getAppBounds()); + mParentAppBoundsOverride = new Rect(parentConfig.windowConfiguration.getAppBounds()); final Insets insets; if (mUseOverrideInsetsForConfig && dc != null) { // Insets are decoupled from configuration by default from V+, use legacy @@ -2269,13 +2269,12 @@ class TaskFragment extends WindowContainer<WindowContainer> { } else { insets = Insets.NONE; } - mTmpParentAppBoundsOverride.inset(insets); + mParentAppBoundsOverride.inset(insets); } void resetTmpOverrides() { mTmpOverrideDisplayInfo = null; mTmpCompatInsets = null; - mTmpParentAppBoundsOverride = null; mTmpOverrideConfigOrientation = ORIENTATION_UNDEFINED; } } @@ -2364,7 +2363,7 @@ class TaskFragment extends WindowContainer<WindowContainer> { final Rect containingAppBounds; if (insideParentBounds) { containingAppBounds = useOverrideInsetsForConfig - ? overrideHint.mTmpParentAppBoundsOverride + ? overrideHint.mParentAppBoundsOverride : parentConfig.windowConfiguration.getAppBounds(); } else { // Restrict appBounds to display non-decor rather than parent because the diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java index 63ca46991c73..84df11a2746b 100644 --- a/services/core/java/com/android/server/wm/Transition.java +++ b/services/core/java/com/android/server/wm/Transition.java @@ -68,6 +68,8 @@ import static com.android.server.wm.ActivityRecord.State.RESUMED; import static com.android.server.wm.ActivityTaskManagerInternal.APP_TRANSITION_RECENTS_ANIM; import static com.android.server.wm.ActivityTaskManagerInternal.APP_TRANSITION_SPLASH_SCREEN; import static com.android.server.wm.ActivityTaskManagerInternal.APP_TRANSITION_WINDOWS_DRAWN; +import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_PREDICT_BACK; +import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowState.BLAST_TIMEOUT_DURATION; import android.annotation.IntDef; @@ -1195,7 +1197,6 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { throw new IllegalStateException("Can't finish a non-playing transition " + mSyncId); } mController.mFinishingTransition = this; - if (mTransientHideTasks != null && !mTransientHideTasks.isEmpty()) { // The transient hide tasks could be occluded now, e.g. returning to home. So trigger // the update to make the activities in the tasks invisible-requested, then the next @@ -1380,7 +1381,10 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { // If the activity was just inserted to an invisible task, it will keep INITIALIZING // state. Then no need to notify the callback to avoid clearing some states // unexpectedly, e.g. launch-task-behind. - if (ar.isVisibleRequested() || !ar.isState(ActivityRecord.State.INITIALIZING)) { + // However, skip dispatch to predictive back animation target, because it only set + // launch-task-behind to make the activity become visible. + if ((ar.isVisibleRequested() || !ar.isState(ActivityRecord.State.INITIALIZING)) + && !ar.isAnimating(PARENTS, ANIMATION_TYPE_PREDICT_BACK)) { mController.dispatchLegacyAppTransitionFinished(ar); } @@ -1690,7 +1694,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { // ActivityRecord#canShowWindows() may reject to show its window. The visibility also // needs to be updated for STATE_ABORT. commitVisibleActivities(transaction); - commitVisibleWallpapers(); + commitVisibleWallpapers(transaction); if (mTransactionCompletedListeners != null) { for (int i = 0; i < mTransactionCompletedListeners.size(); i++) { @@ -1805,8 +1809,9 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { // already been reset by the original hiding-transition's finishTransaction (we can't // show in the finishTransaction because by then the activity doesn't hide until // surface placement). - for (WindowContainer p = ar.getParent(); p != null && !containsChangeFor(p, mTargets); - p = p.getParent()) { + for (WindowContainer p = ar.getParent(); + p != null && !containsChangeFor(p, mTargets) && !p.isOrganized(); + p = p.getParent()) { if (p.getSurfaceControl() != null) { transaction.show(p.getSurfaceControl()); } @@ -2121,7 +2126,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { /** * Reset waitingToshow for all wallpapers, and commit the visibility of the visible ones */ - private void commitVisibleWallpapers() { + private void commitVisibleWallpapers(SurfaceControl.Transaction t) { boolean showWallpaper = shouldWallpaperBeVisible(); for (int i = mParticipants.size() - 1; i >= 0; --i) { final WallpaperWindowToken wallpaper = mParticipants.valueAt(i).asWallpaperToken(); @@ -2129,6 +2134,14 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { if (!wallpaper.isVisible() && wallpaper.isVisibleRequested()) { wallpaper.commitVisibility(showWallpaper); } + if (showWallpaper && Flags.ensureWallpaperInTransitions() + && wallpaper.isVisibleRequested() + && getLeashSurface(wallpaper, t) != wallpaper.getSurfaceControl()) { + // If on a rotation leash, we need to explicitly show the wallpaper surface + // because shell only gets the leash and we don't allow non-transition logic + // to touch the surfaces until the transition is over. + t.show(wallpaper.getSurfaceControl()); + } } } } @@ -2541,9 +2554,9 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { if (wc.asWindowState() != null) continue; final ChangeInfo changeInfo = changes.get(wc); - - // Reject no-ops - if (!changeInfo.hasChanged()) { + // Reject no-ops, unless wallpaper + if (!changeInfo.hasChanged() + && (!Flags.ensureWallpaperInTransitions() || wc.asWallpaperToken() == null)) { ProtoLog.v(ProtoLogGroup.WM_DEBUG_WINDOW_TRANSITIONS, " Rejecting as no-op: %s", wc); continue; @@ -2827,6 +2840,13 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { // Use parent rotation because shell doesn't know the surface is rotated. endRotation = parent.getWindowConfiguration().getRotation(); } + } else if (isWallpaper(target) && Flags.ensureWallpaperInTransitions() + && target.getRelativeDisplayRotation() != 0 + && !target.mTransitionController.useShellTransitionsRotation()) { + // If the wallpaper is "fixed-rotated", shell is unaware of this, so use the + // "as-if-not-rotating" bounds and rotation + change.setEndAbsBounds(parent.getBounds()); + endRotation = parent.getWindowConfiguration().getRotation(); } else { change.setEndAbsBounds(bounds); } diff --git a/services/core/java/com/android/server/wm/WallpaperController.java b/services/core/java/com/android/server/wm/WallpaperController.java index 3e43f5a2da66..a67e856f93cd 100644 --- a/services/core/java/com/android/server/wm/WallpaperController.java +++ b/services/core/java/com/android/server/wm/WallpaperController.java @@ -60,6 +60,7 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.ToBooleanFunction; import com.android.server.wallpaper.WallpaperCropper.WallpaperCropUtils; +import com.android.window.flags.Flags; import java.io.PrintWriter; import java.util.ArrayList; @@ -182,8 +183,8 @@ class WallpaperController { if (DEBUG_WALLPAPER) Slog.v(TAG, "Found recents animation wallpaper target: " + w); mFindResults.setWallpaperTarget(w); return true; - } else if (hasWallpaper && w.isOnScreen() - && (mWallpaperTarget == w || w.isDrawFinishedLw())) { + } else if (hasWallpaper + && (w.mActivityRecord != null ? w.isOnScreen() : w.isReadyForDisplay())) { if (DEBUG_WALLPAPER) Slog.v(TAG, "Found wallpaper target: " + w); mFindResults.setWallpaperTarget(w); mFindResults.setIsWallpaperTargetForLetterbox(w.hasWallpaperForLetterboxBackground()); @@ -764,10 +765,19 @@ class WallpaperController { void collectTopWallpapers(Transition transition) { if (mFindResults.hasTopShowWhenLockedWallpaper()) { - transition.collect(mFindResults.mTopWallpaper.mTopShowWhenLockedWallpaper); + if (Flags.ensureWallpaperInTransitions()) { + transition.collect(mFindResults.mTopWallpaper.mTopShowWhenLockedWallpaper.mToken); + } else { + transition.collect(mFindResults.mTopWallpaper.mTopShowWhenLockedWallpaper); + } + } if (mFindResults.hasTopHideWhenLockedWallpaper()) { - transition.collect(mFindResults.mTopWallpaper.mTopHideWhenLockedWallpaper); + if (Flags.ensureWallpaperInTransitions()) { + transition.collect(mFindResults.mTopWallpaper.mTopHideWhenLockedWallpaper.mToken); + } else { + transition.collect(mFindResults.mTopWallpaper.mTopHideWhenLockedWallpaper); + } } } diff --git a/services/core/java/com/android/server/wm/WallpaperWindowToken.java b/services/core/java/com/android/server/wm/WallpaperWindowToken.java index 9d1551c12216..b7f8505b4a65 100644 --- a/services/core/java/com/android/server/wm/WallpaperWindowToken.java +++ b/services/core/java/com/android/server/wm/WallpaperWindowToken.java @@ -32,6 +32,7 @@ import android.os.RemoteException; import android.util.SparseArray; import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import java.util.function.Consumer; @@ -80,6 +81,20 @@ class WallpaperWindowToken extends WindowToken { mDisplayContent.mWallpaperController.removeWallpaperToken(this); } + @Override + public void prepareSurfaces() { + super.prepareSurfaces(); + + if (Flags.ensureWallpaperInTransitions()) { + // Similar to Task.prepareSurfaces, outside of transitions we need to apply visibility + // changes directly. In transitions the transition player will take care of applying the + // visibility change. + if (!mTransitionController.inTransition(this)) { + getSyncTransaction().setVisibility(mSurfaceControl, isVisible()); + } + } + } + /** * Controls whether this wallpaper shows underneath the keyguard or is hidden and only * revealed once keyguard is dismissed. diff --git a/services/core/java/com/android/server/wm/WindowOrganizerController.java b/services/core/java/com/android/server/wm/WindowOrganizerController.java index 72109d34ec8a..89ddb3fd3e88 100644 --- a/services/core/java/com/android/server/wm/WindowOrganizerController.java +++ b/services/core/java/com/android/server/wm/WindowOrganizerController.java @@ -610,10 +610,16 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub ProtoLog.v(WM_DEBUG_WINDOW_ORGANIZER, "Apply window transaction, syncId=%d", syncId); mService.deferWindowLayout(); mService.mTaskSupervisor.setDeferRootVisibilityUpdate(true /* deferUpdate */); - final boolean shouldDeferTransitionReady = transition != null && !t.isEmpty() - && (transition.isCollecting() || Flags.alwaysDeferTransitionWhenApplyWct()); - if (shouldDeferTransitionReady) { - transition.deferTransitionReady(); + boolean deferTransitionReady = false; + if (transition != null && !t.isEmpty()) { + if (transition.isCollecting()) { + deferTransitionReady = true; + transition.deferTransitionReady(); + } else if (Flags.alwaysDeferTransitionWhenApplyWct()) { + Slog.w(TAG, "Transition is not collecting when applyTransaction." + + " transition=" + transition + " state=" + transition.getState()); + transition = null; + } } try { final ArraySet<WindowContainer<?>> haveConfigChanges = new ArraySet<>(); @@ -767,8 +773,13 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub mService.mWindowManager.mWindowPlacerLocked.requestTraversal(); } } finally { - if (shouldDeferTransitionReady) { - transition.continueTransitionReady(); + if (deferTransitionReady) { + if (transition.isCollecting()) { + transition.continueTransitionReady(); + } else { + Slog.wtf(TAG, "Too late, transition : " + transition.getSyncId() + + " state: " + transition.getState() + " is not collecting"); + } } mService.mTaskSupervisor.setDeferRootVisibilityUpdate(false /* deferUpdate */); mService.continueWindowLayout(); diff --git a/services/core/java/com/android/server/wm/WindowProcessController.java b/services/core/java/com/android/server/wm/WindowProcessController.java index 1c00fbbf5c92..a64bab1a5fcb 100644 --- a/services/core/java/com/android/server/wm/WindowProcessController.java +++ b/services/core/java/com/android/server/wm/WindowProcessController.java @@ -122,7 +122,7 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio private int mRapidActivityLaunchCount; // all about the first app in the process - final ApplicationInfo mInfo; + volatile ApplicationInfo mInfo; final String mName; final int mUid; @@ -1660,6 +1660,22 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio // Otherwise if other places send wpc.getConfiguration() to client, the configuration may // be ignored due to the seq is older. resolvedConfig.seq = newParentConfig.seq; + + if (mConfigActivityRecord != null) { + // Let the activity decide whether to apply the size override. + return; + } + final DisplayContent displayContent = mAtm.mWindowManager != null + ? mAtm.mWindowManager.getDefaultDisplayContentLocked() + : null; + applySizeOverrideIfNeeded( + displayContent, + mInfo, + newParentConfig, + resolvedConfig, + false /* optsOutEdgeToEdge */, + false /* hasFixedRotationTransform */, + false /* hasCompatDisplayInsets */); } void dispatchConfiguration(@NonNull Configuration config) { @@ -1773,12 +1789,17 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio Configuration overrideConfig = new Configuration(r.getRequestedOverrideConfiguration()); overrideConfig.assetsSeq = assetSeq; r.onRequestedOverrideConfigurationChanged(overrideConfig); + r.updateApplicationInfo(mInfo); if (r.isVisibleRequested()) { r.ensureActivityConfiguration(); } } } + public void updateApplicationInfo(ApplicationInfo aInfo) { + mInfo = aInfo; + } + /** * This is called for sending {@link android.app.servertransaction.LaunchActivityItem}. * The caller must call {@link #setLastReportedConfiguration} if the delivered configuration diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index dcd4bd68c3fc..fc7d3dca1c29 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -2374,6 +2374,8 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP mWmService.mDisplayManagerInternal.onPresentation(dc.getDisplay().getDisplayId(), /*isShown=*/ false); } + // Check if window provides non decor insets before clearing its provided insets. + final boolean windowProvidesDisplayDecorInsets = providesDisplayDecorInsets(); dc.getDisplayPolicy().removeWindowLw(this); @@ -2384,6 +2386,18 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP mWmService.postWindowRemoveCleanupLocked(this); consumeInsetsChange(); + + // Update the orientation when removing a window affecting the display orientation. + // Also recompute configuration if it provides screen decor insets. + boolean needToSendNewConfiguration = dc.getLastOrientationSource() == this + && dc.updateOrientation(); + if (windowProvidesDisplayDecorInsets) { + needToSendNewConfiguration |= dc.getDisplayPolicy().updateDecorInsetsInfo(); + } + + if (needToSendNewConfiguration) { + dc.sendNewConfiguration(); + } } @Override @@ -2436,16 +2450,10 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP mActivityRecord != null && mActivityRecord.isAnimating(PARENTS | TRANSITION), mWmService.mDisplayFrozen, Debug.getCallers(6)); - // Visibility of the removed window. Will be used later to update orientation later on. - boolean wasVisible = false; - // First, see if we need to run an animation. If we do, we have to hold off on removing the // window until the animation is done. If the display is frozen, just remove immediately, // since the animation wouldn't be seen. if (mHasSurface && mToken.okToAnimate()) { - // If we are not currently running the exit animation, we need to see about starting one - wasVisible = isVisible(); - // Remove immediately if there is display transition because the animation is // usually unnoticeable (e.g. covered by rotation animation) and the animation // bounds could be inconsistent, such as depending on when the window applies @@ -2455,7 +2463,9 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP // look weird if its orientation is changed. && !inRelaunchingActivity(); - if (wasVisible && isDisplayed()) { + // If we are not currently running the exit animation, + // we need to see about starting one + if (isVisible() && isDisplayed()) { final int transit = (!startingWindow) ? TRANSIT_EXIT : TRANSIT_PREVIEW_DONE; // Try starting an animation. @@ -2504,21 +2514,7 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP } } - // Check if window provides non decor insets before clearing its provided insets. - final boolean windowProvidesDisplayDecorInsets = providesDisplayDecorInsets(); - removeImmediately(); - // Removing a visible window may affect the display orientation so just update it if - // needed. Also recompute configuration if it provides screen decor insets. - boolean needToSendNewConfiguration = wasVisible && displayContent.updateOrientation(); - if (windowProvidesDisplayDecorInsets) { - needToSendNewConfiguration |= - displayContent.getDisplayPolicy().updateDecorInsetsInfo(); - } - - if (needToSendNewConfiguration) { - displayContent.sendNewConfiguration(); - } mWmService.updateFocusedWindowLocked(isFocused() ? UPDATE_FOCUS_REMOVING_FOCUS : UPDATE_FOCUS_NORMAL, @@ -5283,6 +5279,14 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP super.prepareSurfaces(); } + void updateSurfacePositionIfNeeded() { + if (mWindowFrames.mRelFrame.top == mWindowFrames.mLastRelFrame.top + && mWindowFrames.mRelFrame.left == mWindowFrames.mLastRelFrame.left) { + return; + } + updateSurfacePosition(getSyncTransaction()); + } + @Override @VisibleForTesting void updateSurfacePosition(Transaction t) { diff --git a/services/core/java/com/android/server/wm/WindowStateAnimator.java b/services/core/java/com/android/server/wm/WindowStateAnimator.java index 6fd7aa0e4a78..9ecd49213237 100644 --- a/services/core/java/com/android/server/wm/WindowStateAnimator.java +++ b/services/core/java/com/android/server/wm/WindowStateAnimator.java @@ -63,6 +63,7 @@ import android.view.animation.AnimationUtils; import com.android.internal.protolog.common.LogLevel; import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; @@ -374,9 +375,13 @@ class WindowStateAnimator { ProtoLog.i(WM_SHOW_SURFACE_ALLOC, "SURFACE DESTROY: %s. %s", mWin, new RuntimeException().fillInStackTrace()); destroySurface(t); - // Don't hide wallpaper if we're deferring the surface destroy - // because of a surface change. - mWallpaperControllerLocked.hideWallpapers(mWin); + if (Flags.ensureWallpaperInTransitions()) { + if (mWallpaperControllerLocked.isWallpaperTarget(mWin)) { + mWin.requestUpdateWallpaperIfNeeded(); + } + } else { + mWallpaperControllerLocked.hideWallpapers(mWin); + } } catch (RuntimeException e) { Slog.w(TAG, "Exception thrown when destroying Window " + this + " surface " + mSurfaceController + " session " + mSession + ": " @@ -431,7 +436,9 @@ class WindowStateAnimator { if (!w.isOnScreen()) { hide(t, "prepareSurfaceLocked"); - mWallpaperControllerLocked.hideWallpapers(w); + if (!w.mIsWallpaper || !Flags.ensureWallpaperInTransitions()) { + mWallpaperControllerLocked.hideWallpapers(w); + } // If we are waiting for this window to handle an orientation change. If this window is // really hidden (gone for layout), there is no point in still waiting for it. diff --git a/services/core/java/com/android/server/wm/utils/TEST_MAPPING b/services/core/java/com/android/server/wm/utils/TEST_MAPPING index aa69d2a18948..6f34cd047d5f 100644 --- a/services/core/java/com/android/server/wm/utils/TEST_MAPPING +++ b/services/core/java/com/android/server/wm/utils/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "WmTests", - "options": [ - { - "include-filter": "com.android.server.wm.utils" - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "WmTests_wm_utils_Presubmit" } ] } diff --git a/services/core/jni/Android.bp b/services/core/jni/Android.bp index 7a710dc51004..662f916d8a69 100644 --- a/services/core/jni/Android.bp +++ b/services/core/jni/Android.bp @@ -55,7 +55,6 @@ cc_library_static { "com_android_server_powerstats_PowerStatsService.cpp", "com_android_server_power_stats_CpuPowerStatsCollector.cpp", "com_android_server_hint_HintManagerService.cpp", - "com_android_server_SerialService.cpp", "com_android_server_soundtrigger_middleware_AudioSessionProviderImpl.cpp", "com_android_server_soundtrigger_middleware_ExternalCaptureStateTracker.cpp", "com_android_server_stats_pull_StatsPullAtomService.cpp", diff --git a/services/core/jni/OWNERS b/services/core/jni/OWNERS index 1667e273e19a..b622751fc3e8 100644 --- a/services/core/jni/OWNERS +++ b/services/core/jni/OWNERS @@ -27,7 +27,8 @@ per-file com_android_server_power_stats_* = file:/BATTERY_STATS_OWNERS per-file com_android_server_security_* = file:/core/java/android/security/OWNERS per-file com_android_server_tv_* = file:/media/java/android/media/tv/OWNERS per-file com_android_server_vibrator_* = file:/services/core/java/com/android/server/vibrator/OWNERS -per-file com_android_server_am_CachedAppOptimizer.cpp = timmurray@google.com, edgararriaga@google.com, dualli@google.com, carmenjackson@google.com, philipcuadra@google.com +per-file com_android_server_am_CachedAppOptimizer.cpp = file:/PERFORMANCE_OWNERS +per-file com_android_server_am_Freezer.cpp = file:/PERFORMANCE_OWNERS per-file com_android_server_companion_virtual_InputController.cpp = file:/services/companion/java/com/android/server/companion/virtual/OWNERS # Memory diff --git a/services/core/jni/com_android_server_SerialService.cpp b/services/core/jni/com_android_server_SerialService.cpp deleted file mode 100644 index 6600c981b68d..000000000000 --- a/services/core/jni/com_android_server_SerialService.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (C) 2011 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. - */ - -#define LOG_TAG "SerialServiceJNI" -#include "utils/Log.h" - -#include "jni.h" -#include <nativehelper/JNIPlatformHelp.h> -#include "android_runtime/AndroidRuntime.h" - -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> - -namespace android -{ - -static struct parcel_file_descriptor_offsets_t -{ - jclass mClass; - jmethodID mConstructor; -} gParcelFileDescriptorOffsets; - -static jobject android_server_SerialService_open(JNIEnv *env, jobject /* thiz */, jstring path) -{ - const char *pathStr = env->GetStringUTFChars(path, NULL); - - int fd = open(pathStr, O_RDWR | O_NOCTTY); - if (fd < 0) { - ALOGE("could not open %s", pathStr); - env->ReleaseStringUTFChars(path, pathStr); - return NULL; - } - env->ReleaseStringUTFChars(path, pathStr); - - jobject fileDescriptor = jniCreateFileDescriptor(env, fd); - if (fileDescriptor == NULL) { - close(fd); - return NULL; - } - return env->NewObject(gParcelFileDescriptorOffsets.mClass, - gParcelFileDescriptorOffsets.mConstructor, fileDescriptor); -} - - -static const JNINativeMethod method_table[] = { - { "native_open", "(Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;", - (void*)android_server_SerialService_open }, -}; - -int register_android_server_SerialService(JNIEnv *env) -{ - jclass clazz = env->FindClass("com/android/server/SerialService"); - if (clazz == NULL) { - ALOGE("Can't find com/android/server/SerialService"); - return -1; - } - - clazz = env->FindClass("android/os/ParcelFileDescriptor"); - LOG_FATAL_IF(clazz == NULL, "Unable to find class android.os.ParcelFileDescriptor"); - gParcelFileDescriptorOffsets.mClass = (jclass) env->NewGlobalRef(clazz); - gParcelFileDescriptorOffsets.mConstructor = env->GetMethodID(clazz, "<init>", "(Ljava/io/FileDescriptor;)V"); - LOG_FATAL_IF(gParcelFileDescriptorOffsets.mConstructor == NULL, - "Unable to find constructor for android.os.ParcelFileDescriptor"); - - return jniRegisterNativeMethods(env, "com/android/server/SerialService", - method_table, NELEM(method_table)); -} - -}; diff --git a/services/core/jni/onload.cpp b/services/core/jni/onload.cpp index 6464081d615a..f9633e2e0b23 100644 --- a/services/core/jni/onload.cpp +++ b/services/core/jni/onload.cpp @@ -33,7 +33,6 @@ int register_android_server_PowerStatsService(JNIEnv* env); int register_android_server_power_stats_CpuPowerStatsCollector(JNIEnv* env); int register_android_server_HintManagerService(JNIEnv* env); int register_android_server_storage_AppFuse(JNIEnv* env); -int register_android_server_SerialService(JNIEnv* env); int register_android_server_SystemServer(JNIEnv* env); int register_android_server_UsbAlsaJackDetector(JNIEnv* env); int register_android_server_UsbAlsaMidiDevice(JNIEnv* env); @@ -93,7 +92,6 @@ extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */) register_android_server_PowerStatsService(env); register_android_server_power_stats_CpuPowerStatsCollector(env); register_android_server_HintManagerService(env); - register_android_server_SerialService(env); register_android_server_InputManager(env); register_android_server_LightsService(env); register_android_server_UsbDeviceManager(env); diff --git a/services/core/xsd/vts/Android.bp b/services/core/xsd/vts/Android.bp index 4d3c79eb28ae..e1478d616121 100644 --- a/services/core/xsd/vts/Android.bp +++ b/services/core/xsd/vts/Android.bp @@ -15,6 +15,7 @@ // package { + default_team: "trendy_team_android_kernel", // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index e8204e0434c3..cc780132e0f5 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -1114,9 +1114,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { } @Override - public void onUserUnlocked(@NonNull TargetUser user) { - if (user.isPreCreated()) return; - mService.handleOnUserUnlocked(user.getUserIdentifier()); + public void onUserSwitching(@NonNull TargetUser from, @NonNull TargetUser to) { + if (to.isPreCreated()) return; + mService.handleOnUserSwitching(from.getUserIdentifier(), to.getUserIdentifier()); } } @@ -3696,8 +3696,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { mDevicePolicyEngine.handleUnlockUser(userId); } - void handleOnUserUnlocked(int userId) { - showNewUserDisclaimerIfNecessary(userId); + void handleOnUserSwitching(int fromUserId, int toUserId) { + showNewUserDisclaimerIfNecessary(toUserId); } void handleStopUser(int userId) { @@ -18578,11 +18578,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { toggleBackupServiceActive(caller.getUserId(), enabled); - if (Flags.backupServiceSecurityLogEventEnabled()) { - if (SecurityLog.isLoggingEnabled()) { - SecurityLog.writeEvent(SecurityLog.TAG_BACKUP_SERVICE_TOGGLED, - caller.getPackageName(), caller.getUserId(), enabled ? 1 : 0); - } + if (SecurityLog.isLoggingEnabled()) { + SecurityLog.writeEvent(SecurityLog.TAG_BACKUP_SERVICE_TOGGLED, + caller.getPackageName(), caller.getUserId(), enabled ? 1 : 0); } } diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/EnterpriseSpecificIdCalculator.java b/services/devicepolicy/java/com/android/server/devicepolicy/EnterpriseSpecificIdCalculator.java index cbd28475bc26..6e038f9b67a0 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/EnterpriseSpecificIdCalculator.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/EnterpriseSpecificIdCalculator.java @@ -17,6 +17,7 @@ package com.android.server.devicepolicy; import android.content.Context; +import android.content.pm.PackageManager; import android.content.pm.VerifierDeviceIdentity; import android.net.wifi.WifiManager; import android.os.Build; @@ -77,13 +78,14 @@ class EnterpriseSpecificIdCalculator { mMeid = meid; mSerialNumber = Build.getSerial(); WifiManager wifiManager = context.getSystemService(WifiManager.class); - Preconditions.checkState(wifiManager != null, "Unable to access WiFi service"); - final String[] macAddresses = wifiManager.getFactoryMacAddresses(); - if (macAddresses == null || macAddresses.length == 0) { - mMacAddress = ""; - } else { - mMacAddress = macAddresses[0]; + String macAddress = ""; + if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_WIFI)) { + final String[] macAddresses = wifiManager.getFactoryMacAddresses(); + if (macAddresses != null && macAddresses.length > 0) { + macAddress = macAddresses[0]; + } } + mMacAddress = macAddress; } private static String getPaddedTruncatedString(String input, int maxLength) { diff --git a/services/fakes/Android.bp b/services/fakes/Android.bp index 148054b31e89..d44bb5ae302c 100644 --- a/services/fakes/Android.bp +++ b/services/fakes/Android.bp @@ -16,5 +16,5 @@ filegroup { "java/**/*.java", ], path: "java", - visibility: ["//frameworks/base"], + visibility: ["//frameworks/base/ravenwood:__subpackages__"], } diff --git a/services/foldables/devicestateprovider/TEST_MAPPING b/services/foldables/devicestateprovider/TEST_MAPPING index 47de131803c5..05383814a040 100644 --- a/services/foldables/devicestateprovider/TEST_MAPPING +++ b/services/foldables/devicestateprovider/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "foldable-device-state-provider-tests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "foldable-device-state-provider-tests" } ] } diff --git a/services/foldables/devicestateprovider/src/com/android/server/policy/feature/Android.bp b/services/foldables/devicestateprovider/src/com/android/server/policy/feature/Android.bp index 6393e11b7432..1db9e8d545e4 100644 --- a/services/foldables/devicestateprovider/src/com/android/server/policy/feature/Android.bp +++ b/services/foldables/devicestateprovider/src/com/android/server/policy/feature/Android.bp @@ -1,7 +1,7 @@ aconfig_declarations { name: "device_state_flags", package: "com.android.server.policy.feature.flags", - container: "system", + container: "system_ext", srcs: [ "device_state_flags.aconfig", ], diff --git a/services/foldables/devicestateprovider/src/com/android/server/policy/feature/device_state_flags.aconfig b/services/foldables/devicestateprovider/src/com/android/server/policy/feature/device_state_flags.aconfig index 21e33dd1b99a..f827b5508015 100644 --- a/services/foldables/devicestateprovider/src/com/android/server/policy/feature/device_state_flags.aconfig +++ b/services/foldables/devicestateprovider/src/com/android/server/policy/feature/device_state_flags.aconfig @@ -1,5 +1,5 @@ package: "com.android.server.policy.feature.flags" -container: "system" +container: "system_ext" flag { name: "enable_dual_display_blocking" diff --git a/services/foldables/devicestateprovider/tests/Android.bp b/services/foldables/devicestateprovider/tests/Android.bp index 84a6df38e0a0..4352c15879e1 100644 --- a/services/foldables/devicestateprovider/tests/Android.bp +++ b/services/foldables/devicestateprovider/tests/Android.bp @@ -6,9 +6,9 @@ android_test { name: "foldable-device-state-provider-tests", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], jni_libs: [ "libdexmakerjvmtiagent", diff --git a/services/incremental/TEST_MAPPING b/services/incremental/TEST_MAPPING index 4c9403c9b21a..cbb99627d918 100644 --- a/services/incremental/TEST_MAPPING +++ b/services/incremental/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsPackageManagerStatsHostTestCases", - "options": [ - { - "include-filter": "com.android.cts.packagemanager.stats.host.PackageInstallerV2StatsTests" - } - ] + "name": "CtsPackageManagerStatsHostTestCases_host_packageinstallerv2statstests" }, { "name": "CtsPackageManagerIncrementalStatsHostTestCases", diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index cdca948f91ac..52a2fd6e4955 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -104,6 +104,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.notification.SystemNotificationChannels; import com.android.internal.os.BinderInternal; import com.android.internal.os.RuntimeInit; +import com.android.internal.pm.RoSystemFeatures; import com.android.internal.policy.AttributeCache; import com.android.internal.util.ConcurrentUtils; import com.android.internal.util.EmergencyAffordanceManager; @@ -428,6 +429,10 @@ public final class SystemServer implements Dumpable { private static final String PROFILING_SERVICE_JAR_PATH = "/apex/com.android.profiling/javalib/service-profiling.jar"; + private static final String RANGING_APEX_SERVICE_JAR_PATH = + "/apex/com.android.uwb/javalib/service-ranging.jar"; + private static final String RANGING_SERVICE_CLASS = "com.android.server.ranging.RangingService"; + private static final String TETHERING_CONNECTOR_CLASS = "android.net.ITetheringConnector"; private static final String PERSISTENT_DATA_BLOCK_PROP = "ro.frp.pst"; @@ -1461,8 +1466,7 @@ public final class SystemServer implements Dumpable { boolean disableCameraService = SystemProperties.getBoolean("config.disable_cameraservice", false); - boolean isWatch = context.getPackageManager().hasSystemFeature( - PackageManager.FEATURE_WATCH); + boolean isWatch = RoSystemFeatures.hasFeatureWatch(context); boolean isArc = context.getPackageManager().hasSystemFeature( "org.chromium.arc"); @@ -2704,7 +2708,7 @@ public final class SystemServer implements Dumpable { t.traceEnd(); } - if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_EMBEDDED)) { + if (RoSystemFeatures.hasFeatureEmbedded(context)) { t.traceBegin("StartIoTSystemService"); mSystemServiceManager.startService(IOT_SERVICE_CLASS); t.traceEnd(); @@ -2961,6 +2965,22 @@ public final class SystemServer implements Dumpable { t.traceEnd(); } + if (com.android.ranging.flags.Flags.rangingStackEnabled()) { + if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_UWB) + || context.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_WIFI_RTT)) { + t.traceBegin("RangingService"); + // TODO: b/375264320 - Remove after RELEASE_RANGING_STACK is ramped to next. + try { + mSystemServiceManager.startServiceFromJar(RANGING_SERVICE_CLASS, + RANGING_APEX_SERVICE_JAR_PATH); + } catch (Throwable e) { + Slog.d(TAG, "service-ranging.jar not found, not starting RangingService"); + } + t.traceEnd(); + } + } + t.traceBegin("StartBootPhaseDeviceSpecificServicesReady"); mSystemServiceManager.startBootPhase(t, SystemService.PHASE_DEVICE_SPECIFIC_SERVICES_READY); t.traceEnd(); @@ -3062,9 +3082,7 @@ public final class SystemServer implements Dumpable { }, WEBVIEW_PREPARATION); } - boolean isAutomotive = mPackageManager - .hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE); - if (isAutomotive) { + if (RoSystemFeatures.hasFeatureAutomotive(context)) { t.traceBegin("StartCarServiceHelperService"); final SystemService cshs = mSystemServiceManager .startService(CAR_SERVICE_HELPER_SERVICE_CLASS); diff --git a/services/java/com/android/server/flags.aconfig b/services/java/com/android/server/flags.aconfig index 38354e849129..41a9646cb6d5 100644 --- a/services/java/com/android/server/flags.aconfig +++ b/services/java/com/android/server/flags.aconfig @@ -10,6 +10,14 @@ flag { } flag { + name: "remove_java_service_manager_cache" + namespace: "system_performance" + description: "This flag turns off Java's Service Manager caching mechanism." + bug: "333854840" + is_fixed_read_only: true +} + +flag { name: "remove_text_service" namespace: "wear_frameworks" description: "Remove TextServiceManagerService on Wear" diff --git a/services/lint-baseline.xml b/services/lint-baseline.xml index a311d07e52fb..95da56da156c 100644 --- a/services/lint-baseline.xml +++ b/services/lint-baseline.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<issues format="6" by="lint 8.4.0-alpha01" type="baseline" client="" dependencies="true" name="" variant="all" version="8.4.0-alpha01"> +<issues format="6" by="lint 8.4.0-alpha08" type="baseline" client="" dependencies="true" name="" variant="all" version="8.4.0-alpha08"> <issue id="SimpleManualPermissionEnforcement" @@ -8,7 +8,7 @@ errorLine2=" ^"> <location file="frameworks/base/services/java/com/android/server/SystemConfigService.java" - line="46" + line="50" column="13"/> </issue> @@ -19,7 +19,7 @@ errorLine2=" ^"> <location file="frameworks/base/services/java/com/android/server/SystemConfigService.java" - line="54" + line="58" column="13"/> </issue> @@ -30,7 +30,7 @@ errorLine2=" ^"> <location file="frameworks/base/services/java/com/android/server/SystemConfigService.java" - line="67" + line="71" column="13"/> </issue> @@ -41,7 +41,7 @@ errorLine2=" ^"> <location file="frameworks/base/services/java/com/android/server/SystemConfigService.java" - line="76" + line="80" column="13"/> </issue> @@ -52,8 +52,30 @@ errorLine2=" ^"> <location file="frameworks/base/services/java/com/android/server/SystemConfigService.java" - line="107" + line="111" column="13"/> </issue> -</issues>
\ No newline at end of file + <issue + id="SimpleManualPermissionEnforcement" + message="ISystemConfig permission check should be converted to @EnforcePermission annotation" + errorLine1=" getContext().enforceCallingOrSelfPermission(" + errorLine2=" ^"> + <location + file="frameworks/base/services/java/com/android/server/SystemConfigService.java" + line="127" + column="13"/> + </issue> + + <issue + id="SimpleManualPermissionEnforcement" + message="ISystemConfig permission check should be converted to @EnforcePermission annotation" + errorLine1=" getContext().enforceCallingOrSelfPermission(" + errorLine2=" ^"> + <location + file="frameworks/base/services/java/com/android/server/SystemConfigService.java" + line="137" + column="13"/> + </issue> + +</issues> diff --git a/services/net/Android.bp b/services/net/Android.bp index 927146db0a24..62748e8641f2 100644 --- a/services/net/Android.bp +++ b/services/net/Android.bp @@ -31,7 +31,6 @@ java_library_static { filegroup { name: "services-tethering-shared-srcs", srcs: [ - ":framework-annotations", "java/android/net/util/NetworkConstants.java", ], visibility: [ diff --git a/services/people/java/com/android/server/people/TEST_MAPPING b/services/people/java/com/android/server/people/TEST_MAPPING index 55b355cbc991..867733754967 100644 --- a/services/people/java/com/android/server/people/TEST_MAPPING +++ b/services/people/java/com/android/server/people/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.people.data" - } - ] + "name": "FrameworksServicesTests_people_data" } ] }
\ No newline at end of file diff --git a/services/permission/TEST_MAPPING b/services/permission/TEST_MAPPING index 4de4a56aa806..af4aaf9736d8 100644 --- a/services/permission/TEST_MAPPING +++ b/services/permission/TEST_MAPPING @@ -105,26 +105,10 @@ ] }, { - "name": "CtsVirtualDevicesAudioTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.virtualdevice.cts.audio.VirtualAudioPermissionTest" - } - ] + "name": "CtsVirtualDevicesAudioTestCases_audio_virtualaudiopermissiontest" }, { - "name": "CtsVirtualDevicesAppLaunchTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "include-filter": "android.virtualdevice.cts.applaunch.VirtualDevicePermissionTest" - } - ] + "name": "CtsVirtualDevicesAppLaunchTestCases_applaunch_virtualdevicepermissiontest" } ], "imports": [ diff --git a/services/permission/java/com/android/server/permission/access/permission/AppIdPermissionPolicy.kt b/services/permission/java/com/android/server/permission/access/permission/AppIdPermissionPolicy.kt index bb0838db97b5..c558aae5248e 100644 --- a/services/permission/java/com/android/server/permission/access/permission/AppIdPermissionPolicy.kt +++ b/services/permission/java/com/android/server/permission/access/permission/AppIdPermissionPolicy.kt @@ -1115,8 +1115,10 @@ class AppIdPermissionPolicy : SchemePolicy() { } private fun MutateStateScope.inheritImplicitPermissionStates(appId: Int, userId: Int) { + var targetSdkVersion = Build.VERSION_CODES.CUR_DEVELOPMENT val implicitPermissions = MutableIndexedSet<String>() forEachPackageInAppId(appId) { + targetSdkVersion = targetSdkVersion.coerceAtMost(it.androidPackage!!.targetSdkVersion) implicitPermissions += it.androidPackage!!.implicitPermissions } implicitPermissions.forEachIndexed implicitPermissions@{ _, implicitPermissionName -> @@ -1153,7 +1155,10 @@ class AppIdPermissionPolicy : SchemePolicy() { newFlags = newFlags or (sourceFlags and PermissionFlags.MASK_RUNTIME) } } - if (implicitPermissionName in RETAIN_IMPLICIT_FLAGS_PERMISSIONS) { + if ( + targetSdkVersion >= Build.VERSION_CODES.M && + implicitPermissionName in NO_IMPLICIT_FLAG_PERMISSIONS + ) { newFlags = newFlags andInv PermissionFlags.IMPLICIT } else { newFlags = newFlags or PermissionFlags.IMPLICIT @@ -1782,7 +1787,7 @@ class AppIdPermissionPolicy : SchemePolicy() { private const val PLATFORM_PACKAGE_NAME = "android" // A set of permissions that we don't want to revoke when they are no longer implicit. - private val RETAIN_IMPLICIT_FLAGS_PERMISSIONS = + private val NO_IMPLICIT_FLAG_PERMISSIONS = indexedSetOf( Manifest.permission.ACCESS_MEDIA_LOCATION, Manifest.permission.ACTIVITY_RECOGNITION, diff --git a/services/permission/java/com/android/server/permission/access/util/AtomicFileExtensions.kt b/services/permission/java/com/android/server/permission/access/util/AtomicFileExtensions.kt index 6b20ef1d5519..996daf5a5f68 100644 --- a/services/permission/java/com/android/server/permission/access/util/AtomicFileExtensions.kt +++ b/services/permission/java/com/android/server/permission/access/util/AtomicFileExtensions.kt @@ -47,9 +47,8 @@ inline fun AtomicFile.readWithReserveCopy(block: (FileInputStream) -> Unit) { /** Write to actual file and reserve file. */ @Throws(IOException::class) inline fun AtomicFile.writeWithReserveCopy(block: (FileOutputStream) -> Unit) { - val reserveFile = File(baseFile.parentFile, baseFile.name + ".reservecopy") - reserveFile.delete() writeInlined(block) + val reserveFile = File(baseFile.parentFile, baseFile.name + ".reservecopy") try { FileInputStream(baseFile).use { inputStream -> FileOutputStream(reserveFile).use { outputStream -> diff --git a/services/print/java/com/android/server/print/TEST_MAPPING b/services/print/java/com/android/server/print/TEST_MAPPING index 4fa882265e53..1033b1a86edb 100644 --- a/services/print/java/com/android/server/print/TEST_MAPPING +++ b/services/print/java/com/android/server/print/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsPrintTestCases", - "options": [ - { - "include-annotation": "android.platform.test.annotations.Presubmit" - } - ] + "name": "CtsPrintTestCases_Presubmit" } ] } diff --git a/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java b/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java index 3ed6ad78343b..4e868887ea1b 100644 --- a/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java +++ b/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java @@ -16,6 +16,8 @@ package com.android.server.profcollect; +import android.Manifest; +import android.annotation.RequiresPermission; import android.app.job.JobInfo; import android.app.job.JobParameters; import android.app.job.JobScheduler; @@ -26,6 +28,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.hardware.camera2.CameraManager; +import android.hardware.usb.UsbManager; import android.os.Handler; import android.os.IBinder.DeathRecipient; import android.os.Looper; @@ -46,12 +49,12 @@ import com.android.server.LocalManagerRegistry; import com.android.server.LocalServices; import com.android.server.SystemService; import com.android.server.art.ArtManagerLocal; +import com.android.server.profcollect.Utils; import com.android.server.wm.ActivityMetricsLaunchObserver; import com.android.server.wm.ActivityMetricsLaunchObserverRegistry; import com.android.server.wm.ActivityTaskManagerInternal; import java.util.Arrays; -import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; /** @@ -67,6 +70,8 @@ public final class ProfcollectForwardingService extends SystemService { private int mUsageSetting; private boolean mUploadEnabled; + private boolean mAdbActive; + private IProfCollectd mIProfcollect; private static ProfcollectForwardingService sSelfService; private final Handler mHandler = new ProfcollectdHandler(IoThread.getHandler().getLooper()); @@ -84,6 +89,15 @@ public final class ProfcollectForwardingService extends SystemService { Log.d(LOG_TAG, "Received broadcast to pack and upload reports"); createAndUploadReport(sSelfService); } + if (UsbManager.ACTION_USB_STATE.equals(intent.getAction())) { + boolean isADB = intent.getBooleanExtra(UsbManager.USB_FUNCTION_ADB, false); + if (isADB) { + boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false); + Log.d(LOG_TAG, "Received broadcast that ADB became " + connected + + ", was " + mAdbActive); + mAdbActive = connected; + } + } } }; @@ -108,6 +122,7 @@ public final class ProfcollectForwardingService extends SystemService { final IntentFilter filter = new IntentFilter(); filter.addAction(INTENT_UPLOAD_PROFILES); + filter.addAction(UsbManager.ACTION_USB_STATE); context.registerReceiver(mBroadcastReceiver, filter, Context.RECEIVER_NOT_EXPORTED); } @@ -125,7 +140,13 @@ public final class ProfcollectForwardingService extends SystemService { } @Override + @RequiresPermission(Manifest.permission.MANAGE_USB) public void onBootPhase(int phase) { + if (phase == PHASE_SYSTEM_SERVICES_READY) { + UsbManager usbManager = getContext().getSystemService(UsbManager.class); + mAdbActive = ((usbManager.getCurrentFunctions() & UsbManager.FUNCTION_ADB) == 1); + Log.d(LOG_TAG, "ADB is " + mAdbActive + " on system startup"); + } if (phase == PHASE_BOOT_COMPLETED) { if (mIProfcollect == null) { return; @@ -275,30 +296,18 @@ public final class ProfcollectForwardingService extends SystemService { launchObserverRegistry.registerLaunchObserver(mAppLaunchObserver); } - private void traceOnAppStart(String packageName) { - if (mIProfcollect == null) { - return; - } - - // Sample for a fraction of app launches. - int traceFrequency = DeviceConfig.getInt(DeviceConfig.NAMESPACE_PROFCOLLECT_NATIVE_BOOT, - "applaunch_trace_freq", 2); - int randomNum = ThreadLocalRandom.current().nextInt(100); - if (randomNum < traceFrequency) { - BackgroundThread.get().getThreadHandler().post(() -> { - try { - mIProfcollect.trace_system("applaunch"); - } catch (RemoteException e) { - Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); - } - }); - } - } - private class AppLaunchObserver extends ActivityMetricsLaunchObserver { @Override public void onIntentStarted(Intent intent, long timestampNanos) { - traceOnAppStart(intent.getPackage()); + if (mIProfcollect == null) { + return; + } + if (mAdbActive) { + return; + } + if (Utils.withFrequency("applaunch_trace_freq", 5)) { + Utils.traceSystem(mIProfcollect, "applaunch"); + } } } @@ -318,20 +327,12 @@ public final class ProfcollectForwardingService extends SystemService { if (mIProfcollect == null) { return; } - // Sample for a fraction of dex2oat runs. - final int traceFrequency = - DeviceConfig.getInt(DeviceConfig.NAMESPACE_PROFCOLLECT_NATIVE_BOOT, - "dex2oat_trace_freq", 25); - int randomNum = ThreadLocalRandom.current().nextInt(100); - if (randomNum < traceFrequency) { + if (mAdbActive) { + return; + } + if (Utils.withFrequency("dex2oat_trace_freq", 25)) { // Dex2oat could take a while before it starts. Add a short delay before start tracing. - BackgroundThread.get().getThreadHandler().postDelayed(() -> { - try { - mIProfcollect.trace_system("dex2oat"); - } catch (RemoteException e) { - Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); - } - }, 1000); + Utils.traceSystem(mIProfcollect, "dex2oat", /* delayMs */ 1000); } } @@ -354,6 +355,9 @@ public final class ProfcollectForwardingService extends SystemService { private static void createAndUploadReport(ProfcollectForwardingService pfs) { BackgroundThread.get().getThreadHandler().post(() -> { + if (pfs.mIProfcollect == null) { + return; + } String reportName; try { reportName = pfs.mIProfcollect.report(pfs.mUsageSetting) + ".zip"; @@ -390,25 +394,12 @@ public final class ProfcollectForwardingService extends SystemService { if (Arrays.asList(cameraSkipPackages).contains(packageId)) { return; } - // Sample for a fraction of camera events. - final int traceFrequency = - DeviceConfig.getInt(DeviceConfig.NAMESPACE_PROFCOLLECT_NATIVE_BOOT, - "camera_trace_freq", 10); - int randomNum = ThreadLocalRandom.current().nextInt(100); - if (randomNum >= traceFrequency) { - return; + if (Utils.withFrequency("camera_trace_freq", 10)) { + Utils.traceProcess(mIProfcollect, + "camera", + "android.hardware.camera.provider", + /* durationMs */ 5000); } - // For a small percentage a traces, we collect the initialization behavior. - boolean traceInitialization = ThreadLocalRandom.current().nextInt(10) < 1; - int traceDelay = traceInitialization ? 0 : 1000; - String traceTag = traceInitialization ? "camera_init" : "camera"; - BackgroundThread.get().getThreadHandler().postDelayed(() -> { - try { - mIProfcollect.trace_process(traceTag, "android.hardware.camera.provider"); - } catch (RemoteException e) { - Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); - } - }, traceDelay); } }, null); } diff --git a/services/profcollect/src/com/android/server/profcollect/Utils.java b/services/profcollect/src/com/android/server/profcollect/Utils.java new file mode 100644 index 000000000000..a8016a0b641e --- /dev/null +++ b/services/profcollect/src/com/android/server/profcollect/Utils.java @@ -0,0 +1,108 @@ +/** + * Copyright (C) 2024 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.server.profcollect; + +import static com.android.server.profcollect.ProfcollectForwardingService.LOG_TAG; + +import android.os.RemoteException; +import android.os.ServiceSpecificException; +import android.provider.DeviceConfig; +import android.util.Log; + +import com.android.internal.os.BackgroundThread; + +import java.time.Instant; +import java.util.concurrent.ThreadLocalRandom; + +public final class Utils { + + private static Instant lastTraceTime = Instant.EPOCH; + private static final int TRACE_COOLDOWN_SECONDS = 30; + + public static boolean withFrequency(String configName, int defaultFrequency) { + int threshold = DeviceConfig.getInt( + DeviceConfig.NAMESPACE_PROFCOLLECT_NATIVE_BOOT, configName, defaultFrequency); + int randomNum = ThreadLocalRandom.current().nextInt(100); + return randomNum < threshold; + } + + public static boolean traceSystem(IProfCollectd mIProfcollect, String eventName) { + if (mIProfcollect == null) { + return false; + } + if (isInCooldownOrReset()) { + return false; + } + BackgroundThread.get().getThreadHandler().post(() -> { + try { + mIProfcollect.trace_system(eventName); + } catch (RemoteException | ServiceSpecificException e) { + Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); + } + }); + return true; + } + + public static boolean traceSystem(IProfCollectd mIProfcollect, String eventName, int delayMs) { + if (mIProfcollect == null) { + return false; + } + if (isInCooldownOrReset()) { + return false; + } + BackgroundThread.get().getThreadHandler().postDelayed(() -> { + try { + mIProfcollect.trace_system(eventName); + } catch (RemoteException | ServiceSpecificException e) { + Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); + } + }, delayMs); + return true; + } + + public static boolean traceProcess(IProfCollectd mIProfcollect, + String eventName, String processName, int durationMs) { + if (mIProfcollect == null) { + return false; + } + if (isInCooldownOrReset()) { + return false; + } + BackgroundThread.get().getThreadHandler().post(() -> { + try { + mIProfcollect.trace_process(eventName, + processName, + durationMs); + } catch (RemoteException | ServiceSpecificException e) { + Log.e(LOG_TAG, "Failed to initiate trace: " + e.getMessage()); + } + }); + return true; + } + + /** + * Returns true if the last trace is within the cooldown period. If the last trace is outside + * the cooldown period, the last trace time is reset to the current time. + */ + private static boolean isInCooldownOrReset() { + if (!Instant.now().isBefore(lastTraceTime.plusSeconds(TRACE_COOLDOWN_SECONDS))) { + lastTraceTime = Instant.now(); + return false; + } + return true; + } +} diff --git a/services/proguard.flags b/services/proguard.flags index bf30781b434e..cdd41abf6c7c 100644 --- a/services/proguard.flags +++ b/services/proguard.flags @@ -52,9 +52,6 @@ -keep public class com.android.server.utils.Slogf { *; } # Referenced in wear-service -# HIDL interfaces --keep public class android.hidl.base.** { *; } --keep public class android.hidl.manager.** { *; } -keep public class com.android.server.wm.WindowManagerInternal { *; } # JNI keep rules @@ -107,8 +104,23 @@ -keep,allowoptimization,allowaccessmodification class com.android.server.SystemService { *; } -keep,allowoptimization,allowaccessmodification class com.android.server.SystemService$TargetUser { *; } -keep,allowoptimization,allowaccessmodification class com.android.server.usage.StorageStatsManagerLocal { *; } --keep,allowoptimization,allowaccessmodification class com.android.internal.util.** { *; } --keep,allowoptimization,allowaccessmodification class android.os.** { *; } + +# Prevent optimizations of any statically linked code that may shadow code in +# the bootclasspath. See also StrictJavaPackagesTest for details on exceptions. +# TODO(b/222468116): Resolve such collisions in the build system. +-keep public class android.gsi.** { *; } +-keep public class android.hidl.base.** { *; } +-keep public class android.hidl.manager.** { *; } +-keep public class android.os.** { *; } +-keep public class com.android.internal.util.** { *; } +-keep public class com.android.modules.utils.build.** { *; } +# Also suppress related duplicate type warnings for the above kept classes. +-dontwarn android.gsi.** +-dontwarn android.hidl.base.** +-dontwarn android.hidl.manager.** +-dontwarn android.os.** +-dontwarn com.android.internal.util.** +-dontwarn com.android.modules.utils.build.** # CoverageService guards optional jacoco class references with a runtime guard, so we can safely # suppress build-time warnings. diff --git a/services/tests/BackgroundInstallControlServiceTests/host/Android.bp b/services/tests/BackgroundInstallControlServiceTests/host/Android.bp index 682ed91c22dd..8e1013656fe6 100644 --- a/services/tests/BackgroundInstallControlServiceTests/host/Android.bp +++ b/services/tests/BackgroundInstallControlServiceTests/host/Android.bp @@ -28,7 +28,7 @@ java_test_host { "compatibility-tradefed", "compatibility-host-util", ], - data: [ + device_common_data: [ ":BackgroundInstallControlServiceTestApp", ":BackgroundInstallControlMockApp1", ":BackgroundInstallControlMockApp2", diff --git a/services/tests/InputMethodSystemServerTests/Android.bp b/services/tests/InputMethodSystemServerTests/Android.bp index 0da17e126d7d..142e4664c0ee 100644 --- a/services/tests/InputMethodSystemServerTests/Android.bp +++ b/services/tests/InputMethodSystemServerTests/Android.bp @@ -50,9 +50,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], data: [ @@ -79,8 +79,8 @@ android_ravenwood_test { "services", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], srcs: [ "src/com/android/server/inputmethod/**/ClientControllerTest.java", @@ -122,9 +122,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], data: [ @@ -139,3 +139,17 @@ android_test { enabled: false, }, } + +test_module_config { + name: "FrameworksInputMethodSystemServerTests_server_inputmethod", + base: "FrameworksInputMethodSystemServerTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.inputmethod"], +} + +test_module_config { + name: "FrameworksImeTests_android_inputmethodservice", + base: "FrameworksImeTests", + test_suites: ["device-tests"], + include_filters: ["com.android.inputmethodservice"], +} diff --git a/services/tests/InputMethodSystemServerTests/TEST_MAPPING b/services/tests/InputMethodSystemServerTests/TEST_MAPPING index de9f771a2a36..7313941f57b4 100644 --- a/services/tests/InputMethodSystemServerTests/TEST_MAPPING +++ b/services/tests/InputMethodSystemServerTests/TEST_MAPPING @@ -1,22 +1,12 @@ { "presubmit": [ { - "name": "FrameworksInputMethodSystemServerTests", - "options": [ - {"include-filter": "com.android.server.inputmethod"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksInputMethodSystemServerTests_server_inputmethod" } ], "postsubmit": [ { - "name": "FrameworksImeTests", - "options": [ - {"include-filter": "com.android.inputmethodservice"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksImeTests_android_inputmethodservice" } ] } diff --git a/services/tests/PackageManagerServiceTests/TEST_MAPPING b/services/tests/PackageManagerServiceTests/TEST_MAPPING index 5d96af9df1fb..13ba3171e455 100644 --- a/services/tests/PackageManagerServiceTests/TEST_MAPPING +++ b/services/tests/PackageManagerServiceTests/TEST_MAPPING @@ -4,21 +4,7 @@ "name": "AppEnumerationInternalTests" }, { - "name": "PackageManagerServiceServerTests", - "options": [ - { - "include-filter": "com.android.server.pm." - }, - { - "include-annotation": "android.platform.test.annotations.Presubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "PackageManagerServiceServerTests_server_pm_Presubmit" } ], "postsubmit": [ @@ -26,21 +12,7 @@ "name": "PackageManagerServiceHostTests" }, { - "name": "PackageManagerServiceServerTests", - "options": [ - { - "include-filter": "com.android.server.pm." - }, - { - "include-annotation": "android.platform.test.annotations.Postsubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "PackageManagerServiceServerTests_server_pm_Postsubmit" } ], "kernel-presubmit": [ diff --git a/services/tests/PackageManagerServiceTests/host/Android.bp b/services/tests/PackageManagerServiceTests/host/Android.bp index 6fd21f74cf8c..6ad40f4d2733 100644 --- a/services/tests/PackageManagerServiceTests/host/Android.bp +++ b/services/tests/PackageManagerServiceTests/host/Android.bp @@ -44,7 +44,7 @@ java_test_host { "block_device_writer_jar", ], test_suites: ["device-tests"], - data: [ + device_common_data: [ ":PackageManagerTestApex", ":PackageManagerTestApexApp", ":PackageManagerServiceServerTests", @@ -53,7 +53,7 @@ java_test_host { "block_device_writer", "fsverity_multilib", ], - java_resources: [ + device_common_java_resources: [ ":PackageManagerTestOverlayActor", ":PackageManagerTestOverlay", ":PackageManagerTestOverlayTarget", @@ -73,7 +73,7 @@ java_test_host { ], } -genrule { +java_genrule { name: "PackageManagerTestAppVersion3Invalid", tools: [ "soong_zip", @@ -88,3 +88,17 @@ genrule { " && $(location soong_zip) -o $(genDir)/temp.apk -L 0 -C $(genDir)/apk -D $(genDir)/apk" + " && $(location zipalign) -f 4 $(genDir)/temp.apk $(out)", } + +test_module_config_host { + name: "PackageManagerServiceHostTests_test_overlayactorvisibilitytest", + base: "PackageManagerServiceHostTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.pm.test.OverlayActorVisibilityTest"], +} + +test_module_config_host { + name: "PackageManagerServiceHostTests_android_server_pm_Presubmit", + base: "PackageManagerServiceHostTests", + test_suites: ["device-tests"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/services/tests/PackageManagerServiceTests/host/test-apps/DeviceSide/Android.bp b/services/tests/PackageManagerServiceTests/host/test-apps/DeviceSide/Android.bp index 73cec6c13d6d..71ada2e973ce 100644 --- a/services/tests/PackageManagerServiceTests/host/test-apps/DeviceSide/Android.bp +++ b/services/tests/PackageManagerServiceTests/host/test-apps/DeviceSide/Android.bp @@ -29,7 +29,7 @@ android_test_helper_app { sdk_version: "test_current", srcs: ["src/**/*.kt"], libs: [ - "android.test.base", + "android.test.base.stubs.test", ], static_libs: [ "androidx.annotation_annotation", diff --git a/services/tests/PackageManagerServiceTests/server/Android.bp b/services/tests/PackageManagerServiceTests/server/Android.bp index a738acb299c1..bdae1052349f 100644 --- a/services/tests/PackageManagerServiceTests/server/Android.bp +++ b/services/tests/PackageManagerServiceTests/server/Android.bp @@ -65,9 +65,9 @@ android_test { "android.hardware.tv.cec-V1.0-java", "android.hardware.vibrator-V2-java", "android.hidl.manager-V1.0-java", - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], platform_apis: true, @@ -164,3 +164,35 @@ java_genrule { "done && " + "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res", } + +test_module_config { + name: "PackageManagerServiceServerTests_server_pm_Presubmit", + base: "PackageManagerServiceServerTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.pm."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "PackageManagerServiceServerTests_server_pm_Postsubmit", + base: "PackageManagerServiceServerTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.pm."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "PackageManagerServiceServerTests_Presubmit", + base: "PackageManagerServiceServerTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/services/tests/PackageManagerServiceTests/server/src/com/android/server/pm/parsing/SystemPartitionParseTest.kt b/services/tests/PackageManagerServiceTests/server/src/com/android/server/pm/parsing/SystemPartitionParseTest.kt index 1d668cd3e8f2..13cf1252cadf 100644 --- a/services/tests/PackageManagerServiceTests/server/src/com/android/server/pm/parsing/SystemPartitionParseTest.kt +++ b/services/tests/PackageManagerServiceTests/server/src/com/android/server/pm/parsing/SystemPartitionParseTest.kt @@ -17,6 +17,7 @@ package com.android.server.pm.parsing import android.content.pm.PackageManager +import android.content.pm.parsing.ApkLiteParseUtils import android.platform.test.annotations.Postsubmit import com.android.internal.pm.parsing.PackageParserException import com.android.internal.pm.pkg.parsing.ParsingPackageUtils @@ -81,8 +82,10 @@ class SystemPartitionParseTest { val exceptions = buildApks() .map { runCatching { - parser.parsePackage( + if (ApkLiteParseUtils.isApkFile(it) || it.isDirectory()) { + parser.parsePackage( it, ParsingPackageUtils.PARSE_IS_SYSTEM_DIR, false /*useCaches*/) + } } } .mapNotNull { it.exceptionOrNull() } diff --git a/services/tests/PackageManagerServiceTests/unit/Android.bp b/services/tests/PackageManagerServiceTests/unit/Android.bp index c93f48225e48..db88b166b13a 100644 --- a/services/tests/PackageManagerServiceTests/unit/Android.bp +++ b/services/tests/PackageManagerServiceTests/unit/Android.bp @@ -47,3 +47,10 @@ android_test { platform_apis: true, test_suites: ["device-tests"], } + +test_module_config { + name: "PackageManagerServiceUnitTests_verify_domain", + base: "PackageManagerServiceUnitTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.pm.test.verify.domain"], +} diff --git a/services/tests/RemoteProvisioningServiceTests/Android.bp b/services/tests/RemoteProvisioningServiceTests/Android.bp index 19c913620760..3a73c3954d52 100644 --- a/services/tests/RemoteProvisioningServiceTests/Android.bp +++ b/services/tests/RemoteProvisioningServiceTests/Android.bp @@ -31,7 +31,6 @@ android_test { "service-rkp.impl", "services.core", "truth", - "truth-java8-extension", ], test_suites: [ "device-tests", diff --git a/services/tests/RemoteProvisioningServiceTests/src/com/android/server/security/rkp/RemoteProvisioningShellCommandTest.java b/services/tests/RemoteProvisioningServiceTests/src/com/android/server/security/rkp/RemoteProvisioningShellCommandTest.java index 007c0db1b731..a1616c676dbd 100644 --- a/services/tests/RemoteProvisioningServiceTests/src/com/android/server/security/rkp/RemoteProvisioningShellCommandTest.java +++ b/services/tests/RemoteProvisioningServiceTests/src/com/android/server/security/rkp/RemoteProvisioningShellCommandTest.java @@ -17,7 +17,6 @@ package com.android.server.security.rkp; import static com.google.common.truth.Truth.assertThat; -import static com.google.common.truth.Truth8.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; diff --git a/services/tests/VpnTests/Android.bp b/services/tests/VpnTests/Android.bp index a5011a8d8b00..0568892c3684 100644 --- a/services/tests/VpnTests/Android.bp +++ b/services/tests/VpnTests/Android.bp @@ -38,8 +38,15 @@ android_test { "framework-connectivity-t.impl", "framework", "framework-res", - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs", + "android.test.base.stubs", + "android.test.mock.stubs", ], } + +test_module_config { + name: "FrameworksVpnTests_android_server_connectivity", + base: "FrameworksVpnTests", + test_suites: ["device-tests"], + exclude_annotations: ["com.android.testutils.SkipPresubmit"], +} diff --git a/services/tests/apexsystemservices/Android.bp b/services/tests/apexsystemservices/Android.bp index 9dacfeabf1ef..d0a2eb873fcb 100644 --- a/services/tests/apexsystemservices/Android.bp +++ b/services/tests/apexsystemservices/Android.bp @@ -27,7 +27,7 @@ java_test_host { name: "ApexSystemServicesTestCases", srcs: ["src/**/*.java"], libs: ["tradefed"], - java_resources: [ + device_common_java_resources: [ ":test_com.android.server", ], static_libs: [ diff --git a/services/tests/appfunctions/OWNERS b/services/tests/appfunctions/OWNERS new file mode 100644 index 000000000000..7fa891736efe --- /dev/null +++ b/services/tests/appfunctions/OWNERS @@ -0,0 +1,2 @@ +# Bug component: 1627156 +include platform/frameworks/base:/core/java/android/app/appfunctions/OWNERS diff --git a/services/tests/displayservicetests/Android.bp b/services/tests/displayservicetests/Android.bp index 3bafe7296fff..fe73025e9736 100644 --- a/services/tests/displayservicetests/Android.bp +++ b/services/tests/displayservicetests/Android.bp @@ -16,7 +16,7 @@ android_test { ], libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], static_libs: [ @@ -56,3 +56,13 @@ android_test { enabled: false, }, } + +test_module_config { + name: "DisplayServiceTests_server_display", + base: "DisplayServiceTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.display"], +} diff --git a/services/tests/displayservicetests/src/com/android/server/display/PersistentDataStoreTest.java b/services/tests/displayservicetests/src/com/android/server/display/PersistentDataStoreTest.java index 5676a388acff..6d14065b6248 100644 --- a/services/tests/displayservicetests/src/com/android/server/display/PersistentDataStoreTest.java +++ b/services/tests/displayservicetests/src/com/android/server/display/PersistentDataStoreTest.java @@ -459,7 +459,6 @@ public class PersistentDataStoreTest { ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); newInjector.setReadStream(bais); newDataStore.loadIfNeeded(); - assertNotNull(newDataStore.getUserPreferredRefreshRate(testDisplayDevice)); assertEquals(85.3f, mDataStore.getUserPreferredRefreshRate(testDisplayDevice), 01.f); assertEquals(85.3f, newDataStore.getUserPreferredRefreshRate(testDisplayDevice), 0.1f); } diff --git a/services/tests/displayservicetests/src/com/android/server/display/brightness/DisplayBrightnessControllerTest.java b/services/tests/displayservicetests/src/com/android/server/display/brightness/DisplayBrightnessControllerTest.java index 88d3238861f5..d7936fece089 100644 --- a/services/tests/displayservicetests/src/com/android/server/display/brightness/DisplayBrightnessControllerTest.java +++ b/services/tests/displayservicetests/src/com/android/server/display/brightness/DisplayBrightnessControllerTest.java @@ -20,6 +20,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.mock; @@ -255,7 +256,8 @@ public final class DisplayBrightnessControllerTest { @Test public void setBrightnessSetsInBrightnessSetting() { float brightnessValue = 0.3f; - mDisplayBrightnessController.setBrightness(brightnessValue); + float maxBrightnessValue = 0.65f; + mDisplayBrightnessController.setBrightness(brightnessValue, maxBrightnessValue); verify(mBrightnessSetting).setBrightness(brightnessValue); } @@ -266,20 +268,24 @@ public final class DisplayBrightnessControllerTest { // Sets the appropriate value when valid, and not equal to the current brightness float brightnessValue = 0.3f; - mDisplayBrightnessController.updateScreenBrightnessSetting(brightnessValue); + float maxBrightnessValue = 0.65f; + mDisplayBrightnessController.updateScreenBrightnessSetting(brightnessValue, + maxBrightnessValue); assertEquals(mDisplayBrightnessController.getCurrentBrightness(), brightnessValue, 0.0f); verify(mBrightnessChangeExecutor).execute(mOnBrightnessChangeRunnable); verify(mBrightnessSetting).setBrightness(brightnessValue); // Does nothing if the value is invalid - mDisplayBrightnessController.updateScreenBrightnessSetting(Float.NaN); + clearInvocations(mBrightnessSetting); + mDisplayBrightnessController.updateScreenBrightnessSetting(Float.NaN, maxBrightnessValue); verifyNoMoreInteractions(mBrightnessChangeExecutor, mBrightnessSetting); // Does nothing if the value is same as the current brightness brightnessValue = 0.2f; mDisplayBrightnessController.setAndNotifyCurrentScreenBrightness(brightnessValue); verify(mBrightnessChangeExecutor, times(2)).execute(mOnBrightnessChangeRunnable); - mDisplayBrightnessController.updateScreenBrightnessSetting(brightnessValue); + mDisplayBrightnessController.updateScreenBrightnessSetting(brightnessValue, + maxBrightnessValue); verifyNoMoreInteractions(mBrightnessChangeExecutor, mBrightnessSetting); } @@ -366,7 +372,7 @@ public final class DisplayBrightnessControllerTest { when(mBrightnessSetting.getBrightnessNitsForDefaultDisplay()).thenReturn(nits); mDisplayBrightnessController.setAutomaticBrightnessController( automaticBrightnessController); - verify(mBrightnessSetting).setBrightness(brightness); + verify(mBrightnessSetting).setBrightnessNoNotify(brightness); assertEquals(brightness, mDisplayBrightnessController.getCurrentBrightness(), 0.01f); clearInvocations(automaticBrightnessController, mBrightnessSetting); @@ -378,7 +384,7 @@ public final class DisplayBrightnessControllerTest { when(mBrightnessSetting.getBrightness()).thenReturn(brightness); mDisplayBrightnessController.setAutomaticBrightnessController( automaticBrightnessController); - verify(mBrightnessSetting, never()).setBrightness(brightness); + verify(mBrightnessSetting, never()).setBrightnessNoNotify(brightness); assertEquals(brightness, mDisplayBrightnessController.getCurrentBrightness(), 0.01f); clearInvocations(automaticBrightnessController, mBrightnessSetting); @@ -395,15 +401,73 @@ public final class DisplayBrightnessControllerTest { assertEquals(brightness, mDisplayBrightnessController.getCurrentBrightness(), 0.01f); verifyZeroInteractions(automaticBrightnessController); verify(mBrightnessSetting, never()).getBrightnessNitsForDefaultDisplay(); - verify(mBrightnessSetting, never()).setBrightness(brightness); + verify(mBrightnessSetting, never()).setBrightnessNoNotify(brightness); } @Test + public void testDoesNotSetBrightnessNits_settingMaxBrightnessAndStoredValueGreater() { + float brightnessValue = 0.65f; + float maxBrightness = 0.65f; + float nits = 200f; + float storedNits = 300f; + + when(mBrightnessSetting.getBrightnessNitsForDefaultDisplay()).thenReturn(storedNits); + AutomaticBrightnessController automaticBrightnessController = mock( + AutomaticBrightnessController.class); + when(automaticBrightnessController.convertToNits(brightnessValue)).thenReturn(nits); + mDisplayBrightnessController.mAutomaticBrightnessController = automaticBrightnessController; + + mDisplayBrightnessController.setBrightness(brightnessValue, maxBrightness); + + verify(mBrightnessSetting, never()).setBrightnessNitsForDefaultDisplay(anyFloat()); + } + + @Test + public void testSetsBrightnessNits_storedValueLower() { + float brightnessValue = 0.65f; + float maxBrightness = 0.65f; + float nits = 200f; + float storedNits = 100f; + + when(mBrightnessSetting.getBrightnessNitsForDefaultDisplay()).thenReturn(storedNits); + AutomaticBrightnessController automaticBrightnessController = mock( + AutomaticBrightnessController.class); + when(automaticBrightnessController.convertToNits(brightnessValue)).thenReturn(nits); + mDisplayBrightnessController.mAutomaticBrightnessController = automaticBrightnessController; + + mDisplayBrightnessController.setBrightness(brightnessValue, maxBrightness); + + verify(mBrightnessSetting).setBrightnessNitsForDefaultDisplay(nits); + } + + @Test + public void testSetsBrightnessNits_lowerThanMax() { + float brightnessValue = 0.60f; + float maxBrightness = 0.65f; + float nits = 200f; + float storedNits = 300f; + + when(mBrightnessSetting.getBrightnessNitsForDefaultDisplay()).thenReturn(storedNits); + AutomaticBrightnessController automaticBrightnessController = mock( + AutomaticBrightnessController.class); + when(automaticBrightnessController.convertToNits(brightnessValue)).thenReturn(nits); + mDisplayBrightnessController.mAutomaticBrightnessController = automaticBrightnessController; + + mDisplayBrightnessController.setBrightness(brightnessValue, maxBrightness); + + verify(mBrightnessSetting).setBrightnessNitsForDefaultDisplay(nits); + } + + + @Test public void testChangeBrightnessNitsWhenUserChanges() { float brightnessValue1 = 0.3f; float nits1 = 200f; + int userSerial1 = 1; float brightnessValue2 = 0.5f; float nits2 = 300f; + int userSerial2 = 2; + float maxBrightness = 0.65f; AutomaticBrightnessController automaticBrightnessController = mock( AutomaticBrightnessController.class); when(automaticBrightnessController.convertToNits(brightnessValue1)).thenReturn(nits1); @@ -417,13 +481,13 @@ public final class DisplayBrightnessControllerTest { verify(automaticBrightnessStrategy) .setAutomaticBrightnessController(automaticBrightnessController); - mDisplayBrightnessController.setBrightness(brightnessValue1, 1 /* user-serial */); - verify(mBrightnessSetting).setUserSerial(1); + mDisplayBrightnessController.setBrightness(brightnessValue1, userSerial1, maxBrightness); + verify(mBrightnessSetting).setUserSerial(userSerial1); verify(mBrightnessSetting).setBrightness(brightnessValue1); verify(mBrightnessSetting).setBrightnessNitsForDefaultDisplay(nits1); - mDisplayBrightnessController.setBrightness(brightnessValue2, 2 /* user-serial */); - verify(mBrightnessSetting).setUserSerial(2); + mDisplayBrightnessController.setBrightness(brightnessValue2, userSerial2, maxBrightness); + verify(mBrightnessSetting).setUserSerial(userSerial2); verify(mBrightnessSetting).setBrightness(brightnessValue2); verify(mBrightnessSetting).setBrightnessNitsForDefaultDisplay(nits2); } diff --git a/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/BrightnessClamperControllerTest.java b/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/BrightnessClamperControllerTest.java index 69043f5704de..e982153acbd1 100644 --- a/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/BrightnessClamperControllerTest.java +++ b/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/BrightnessClamperControllerTest.java @@ -16,19 +16,19 @@ package com.android.server.display.brightness.clamper; +import static android.view.Display.STATE_OFF; import static android.view.Display.STATE_ON; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.clearInvocations; +import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; -import android.hardware.Sensor; -import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.hardware.display.BrightnessInfo; import android.hardware.display.DisplayManagerInternal; @@ -40,12 +40,10 @@ import android.testing.TestableContext; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.internal.util.test.FakeSettingsProvider; -import com.android.internal.util.test.FakeSettingsProviderRule; import com.android.server.display.DisplayBrightnessState; import com.android.server.display.DisplayDeviceConfig; -import com.android.server.display.TestUtils; import com.android.server.display.brightness.BrightnessReason; +import com.android.server.display.config.SensorData; import com.android.server.display.feature.DeviceConfigParameterProvider; import com.android.server.display.feature.DisplayManagerFlags; import com.android.server.testutils.OffsettableClock; @@ -63,6 +61,7 @@ import java.util.List; @SmallTest public class BrightnessClamperControllerTest { private static final float FLOAT_TOLERANCE = 0.001f; + private static final int DISPLAY_ID = 2; private final OffsettableClock mClock = new OffsettableClock(); private final TestHandler mTestHandler = new TestHandler(null, mClock); @@ -78,8 +77,12 @@ public class BrightnessClamperControllerTest { @Mock private BrightnessClamperController.DisplayDeviceData mMockDisplayDeviceData; @Mock + private SensorData mMockSensorData; + @Mock private DeviceConfigParameterProvider mMockDeviceConfigParameterProvider; @Mock + private LightSensorController mMockLightSensorController; + @Mock private BrightnessClamper<BrightnessClamperController.DisplayDeviceData> mMockClamper; @Mock private DisplayManagerFlags mFlags; @@ -88,23 +91,17 @@ public class BrightnessClamperControllerTest { @Mock private DisplayManagerInternal.DisplayPowerRequest mMockRequest; - Sensor mLightSensor; - @Mock private DeviceConfig.Properties mMockProperties; private BrightnessClamperController mClamperController; private TestInjector mTestInjector; - @Rule - public FakeSettingsProviderRule mSettingsProviderRule = FakeSettingsProvider.rule(); - @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); - mLightSensor = TestUtils.createSensor(Sensor.TYPE_LIGHT, "Light Sensor"); mTestInjector = new TestInjector(List.of(mMockClamper), List.of(mMockModifier)); - when(mSensorManager.getDefaultSensor(anyInt())).thenReturn(mLightSensor); - when(mMockModifier.shouldListenToLightSensor()).thenReturn(true); + when(mMockDisplayDeviceData.getDisplayId()).thenReturn(DISPLAY_ID); + when(mMockDisplayDeviceData.getAmbientLightSensor()).thenReturn(mMockSensorData); mClamperController = createBrightnessClamperController(); } @@ -115,6 +112,25 @@ public class BrightnessClamperControllerTest { } @Test + public void testConstructor_ConfiguresLightSensorController() { + verify(mMockLightSensorController).configure(mMockSensorData, DISPLAY_ID); + } + + @Test + public void testConstructor_doesNotStartsLightSensorController() { + verify(mMockLightSensorController, never()).restart(); + } + + @Test + public void testConstructor_startsLightSensorController() { + when(mMockModifier.shouldListenToLightSensor()).thenReturn(true); + + mClamperController = createBrightnessClamperController(); + + verify(mMockLightSensorController).restart(); + } + + @Test public void testStop_RemovesOnPropertiesChangeListener() { ArgumentCaptor<DeviceConfig.OnPropertiesChangedListener> captor = ArgumentCaptor.forClass( DeviceConfig.OnPropertiesChangedListener.class); @@ -152,6 +168,21 @@ public class BrightnessClamperControllerTest { } @Test + public void testOnDisplayChanged_doesNotRestartLightSensor() { + mClamperController.onDisplayChanged(mMockDisplayDeviceData); + + verify(mMockLightSensorController, never()).restart(); + } + + @Test + public void testOnDisplayChanged_restartsLightSensor() { + when(mMockModifier.shouldListenToLightSensor()).thenReturn(true); + mClamperController.onDisplayChanged(mMockDisplayDeviceData); + + verify(mMockLightSensorController).restart(); + } + + @Test public void testClamp_AppliesModifier() { float initialBrightness = 0.2f; boolean initialSlowChange = true; @@ -161,6 +192,26 @@ public class BrightnessClamperControllerTest { } @Test + public void testClamp_restartsLightSensor() { + float initialBrightness = 0.2f; + boolean initialSlowChange = true; + when(mMockModifier.shouldListenToLightSensor()).thenReturn(true); + mClamperController.clamp(mMockRequest, initialBrightness, initialSlowChange, STATE_ON); + + verify(mMockLightSensorController).restart(); + } + + @Test + public void testClamp_stopsLightSensor() { + float initialBrightness = 0.2f; + boolean initialSlowChange = true; + clearInvocations(mMockLightSensorController); + mClamperController.clamp(mMockRequest, initialBrightness, initialSlowChange, STATE_OFF); + + verify(mMockLightSensorController).stop(); + } + + @Test public void testClamp_inactiveClamperNotApplied() { float initialBrightness = 0.8f; boolean initialSlowChange = true; @@ -260,33 +311,17 @@ public class BrightnessClamperControllerTest { } @Test - public void testAmbientLuxChanges() throws Exception { - ArgumentCaptor<SensorEventListener> listenerCaptor = ArgumentCaptor.forClass( - SensorEventListener.class); - - verify(mSensorManager).registerListener(listenerCaptor.capture(), eq(mLightSensor), - anyInt(), any(Handler.class)); - SensorEventListener listener = listenerCaptor.getValue(); - - when(mSensorManager.getSensorList(eq(Sensor.TYPE_ALL))).thenReturn(List.of(mLightSensor)); - - float initialBrightness = 0.8f; - boolean initialSlowChange = true; - - DisplayBrightnessState state = mClamperController.clamp(mMockRequest, initialBrightness, - initialSlowChange, STATE_ON); - assertEquals(initialBrightness, state.getBrightness(), FLOAT_TOLERANCE); + public void testAmbientLuxChanges() { + mTestInjector.mCapturedLightSensorListener.onAmbientLuxChange(50); - listener.onSensorChanged(TestUtils.createSensorEvent(mLightSensor, 50, mClock.now())); verify(mMockModifier).setAmbientLux(50); - - listener.onSensorChanged(TestUtils.createSensorEvent(mLightSensor, 300, mClock.now())); - verify(mMockModifier).setAmbientLux(300); } @Test public void testStop() { + clearInvocations(mMockLightSensorController); mClamperController.stop(); + verify(mMockLightSensorController).stop(); verify(mMockModifier).stop(); verify(mMockClamper).stop(); } @@ -303,6 +338,7 @@ public class BrightnessClamperControllerTest { private final List<BrightnessStateModifier> mModifiers; private BrightnessClamperController.ClamperChangeListener mCapturedChangeListener; + private LightSensorController.LightSensorListener mCapturedLightSensorListener; private TestInjector( List<BrightnessClamper<? super BrightnessClamperController.DisplayDeviceData>> @@ -330,8 +366,15 @@ public class BrightnessClamperControllerTest { @Override List<BrightnessStateModifier> getModifiers(DisplayManagerFlags flags, Context context, Handler handler, BrightnessClamperController.ClamperChangeListener listener, - DisplayDeviceConfig displayDeviceConfig, SensorManager sensorManager) { + DisplayDeviceConfig displayDeviceConfig) { return mModifiers; } + + @Override + LightSensorController getLightSensorController(SensorManager sensorManager, Context context, + LightSensorController.LightSensorListener listener, Handler handler) { + mCapturedLightSensorListener = listener; + return mMockLightSensorController; + } } } diff --git a/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/LightSensorControllerTest.kt b/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/LightSensorControllerTest.kt new file mode 100644 index 000000000000..b742d021f2e9 --- /dev/null +++ b/services/tests/displayservicetests/src/com/android/server/display/brightness/clamper/LightSensorControllerTest.kt @@ -0,0 +1,168 @@ +/* + * 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.server.display.brightness.clamper + +import android.content.res.Resources +import android.hardware.Sensor +import android.hardware.SensorEventListener +import android.hardware.SensorManager +import android.os.Handler +import androidx.test.filters.SmallTest +import com.android.server.display.TestUtils +import com.android.server.display.brightness.clamper.LightSensorController.Injector +import com.android.server.display.brightness.clamper.LightSensorController.LightSensorListener +import com.android.server.display.config.SensorData +import com.android.server.display.utils.AmbientFilter +import org.junit.Before +import org.mockito.kotlin.any +import org.mockito.kotlin.argumentCaptor +import org.mockito.kotlin.eq +import org.mockito.kotlin.inOrder +import org.mockito.kotlin.mock +import org.mockito.kotlin.verify +import org.mockito.kotlin.verifyNoMoreInteractions +import org.mockito.kotlin.whenever + +private const val LIGHT_SENSOR_RATE: Int = 10 +private const val DISPLAY_ID: Int = 3 +private const val NOW: Long = 3_000 + +@SmallTest +class LightSensorControllerTest { + + private val mockSensorManager: SensorManager = mock() + private val mockResources: Resources = mock() + private val mockLightSensorListener: LightSensorListener = mock() + private val mockHandler: Handler = mock() + private val mockAmbientFilter: AmbientFilter = mock() + + private val testInjector = TestInjector() + private val dummySensorData = SensorData() + + private lateinit var controller: LightSensorController + + @Before + fun setUp() { + controller = LightSensorController(mockSensorManager, mockResources, + mockLightSensorListener, mockHandler, testInjector) + } + + fun `does not register light sensor if is not configured`() { + controller.restart() + + verifyNoMoreInteractions(mockSensorManager, mockAmbientFilter, mockLightSensorListener) + } + + fun `does not register light sensor if missing`() { + controller.configure(dummySensorData, DISPLAY_ID) + controller.restart() + + verifyNoMoreInteractions(mockSensorManager, mockAmbientFilter, mockLightSensorListener) + } + + fun `register light sensor if configured and present`() { + testInjector.lightSensor = TestUtils + .createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT) + controller.configure(dummySensorData, DISPLAY_ID) + controller.restart() + + verify(mockSensorManager).registerListener(any(), + testInjector.lightSensor, LIGHT_SENSOR_RATE * 1000, mockHandler) + verifyNoMoreInteractions(mockSensorManager, mockAmbientFilter, mockLightSensorListener) + } + + fun `register light sensor once if not changed`() { + testInjector.lightSensor = TestUtils + .createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT) + controller.configure(dummySensorData, DISPLAY_ID) + + controller.restart() + controller.restart() + + verify(mockSensorManager).registerListener(any(), + testInjector.lightSensor, LIGHT_SENSOR_RATE * 1000, mockHandler) + verifyNoMoreInteractions(mockSensorManager, mockAmbientFilter, mockLightSensorListener) + } + + fun `register new light sensor and unregister old if changed`() { + val lightSensor1 = TestUtils + .createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT) + testInjector.lightSensor = lightSensor1 + controller.configure(dummySensorData, DISPLAY_ID) + controller.restart() + + val lightSensor2 = TestUtils + .createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT) + testInjector.lightSensor = lightSensor2 + controller.configure(dummySensorData, DISPLAY_ID) + controller.restart() + + inOrder { + verify(mockSensorManager).registerListener(any(), + lightSensor1, LIGHT_SENSOR_RATE * 1000, mockHandler) + verify(mockSensorManager).unregisterListener(any<SensorEventListener>()) + verify(mockAmbientFilter).clear() + verify(mockLightSensorListener).onAmbientLuxChange(LightSensorController.INVALID_LUX) + verify(mockSensorManager).registerListener(any(), + lightSensor2, LIGHT_SENSOR_RATE * 1000, mockHandler) + } + verifyNoMoreInteractions(mockSensorManager, mockAmbientFilter, mockLightSensorListener) + } + + fun `notifies listener on ambient lux change`() { + val expectedLux = 40f + val eventLux = 50 + val eventTime = 60L + whenever(mockAmbientFilter.getEstimate(NOW)).thenReturn(expectedLux) + val listenerCaptor = argumentCaptor<SensorEventListener>() + testInjector.lightSensor = TestUtils + .createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT) + controller.configure(dummySensorData, DISPLAY_ID) + controller.restart() + verify(mockSensorManager).registerListener(listenerCaptor.capture(), + eq(testInjector.lightSensor), eq(LIGHT_SENSOR_RATE * 1000), eq(mockHandler)) + + val listener = listenerCaptor.lastValue + listener.onSensorChanged(TestUtils.createSensorEvent(testInjector.lightSensor, + eventLux, eventTime * 1_000_000)) + + inOrder { + verify(mockAmbientFilter).addValue(eventTime, eventLux.toFloat()) + verify(mockLightSensorListener).onAmbientLuxChange(expectedLux) + } + } + + private inner class TestInjector : Injector() { + var lightSensor: Sensor? = null + override fun getLightSensor(sensorManager: SensorManager?, + sensorData: SensorData?, fallbackType: Int): Sensor? { + return lightSensor + } + + override fun getLightSensorRate(resources: Resources?): Int { + return LIGHT_SENSOR_RATE + } + + override fun getAmbientFilter(resources: Resources?): AmbientFilter { + return mockAmbientFilter + } + + override fun getTime(): Long { + return NOW + } + } +}
\ No newline at end of file diff --git a/services/tests/dreamservicetests/Android.bp b/services/tests/dreamservicetests/Android.bp index 6369d4564bf2..1f0e975a4c90 100644 --- a/services/tests/dreamservicetests/Android.bp +++ b/services/tests/dreamservicetests/Android.bp @@ -42,3 +42,13 @@ android_test { enabled: false, }, } + +test_module_config { + name: "DreamServiceTests_server_dreams", + base: "DreamServiceTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.dreams"], +} diff --git a/services/tests/dreamservicetests/TEST_MAPPING b/services/tests/dreamservicetests/TEST_MAPPING index a644ea690dcd..38d7000ceb6e 100644 --- a/services/tests/dreamservicetests/TEST_MAPPING +++ b/services/tests/dreamservicetests/TEST_MAPPING @@ -1,21 +1,12 @@ { "presubmit": [ { - "name": "DreamServiceTests", - "options": [ - {"include-filter": "com.android.server.dreams"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "DreamServiceTests_server_dreams" } ], "postsubmit": [ { - "name": "DreamServiceTests", - "options": [ - {"include-filter": "com.android.server.dreams"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "DreamServiceTests_server_dreams" } ] } diff --git a/services/tests/mockingservicestests/Android.bp b/services/tests/mockingservicestests/Android.bp index 5b2c0c651058..c81d6be43223 100644 --- a/services/tests/mockingservicestests/Android.bp +++ b/services/tests/mockingservicestests/Android.bp @@ -80,9 +80,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", "servicestests-core-utils", ], @@ -118,14 +118,14 @@ java_library { "mockito-target-extended-minus-junit4", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", ], } android_ravenwood_test { name: "FrameworksMockingServicesTestsRavenwood", libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], static_libs: [ "androidx.annotation_annotation", @@ -137,3 +137,267 @@ android_ravenwood_test { ], auto_gen_config: true, } + +test_module_config { + name: "FrameworksMockingServicesTests_blob", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.blob"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_IdleController", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.DeviceIdleControllerTest"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_AppStateTracker", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.AppStateTrackerTest"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_alarm", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.alarm"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_job_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.job"], + exclude_annotations: ["androidx.test.filters.LargeTest"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_job", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.job"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_tare_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.tare"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_tare", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.tare"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_games_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["android.service.games"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_location", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.location"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_backup", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.backup"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_sensorprivacy", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.sensorprivacy"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_am_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.am."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_am_broadcast", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: [ + "com.android.server.am.BroadcastQueueTest", + "com.android.server.am.BroadcastRecordTest", + "com.android.server.am.BroadcastQueueModernImplTest", + ], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_app", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + // Matches appop too + include_filters: ["com.android.server.app"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_appop", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.appop"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_compat_overrides", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.compat.overrides"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_crashrecovery", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.RescuePartyTest"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_pm", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.pm."], +} + +test_module_config { + name: "FrameworksMockingServicesTests_com_android_server_pm_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.pm"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_power_Presubmit", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.power"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_power", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.power"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_trust", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.trust"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server_utils", + base: "FrameworksMockingServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.utils"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_android_server", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_job", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.job"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_tare", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.tare"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_backup", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.backup"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_rescuepartytest", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.RescuePartyTest"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_power", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_trust", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.trust"], +} + +test_module_config { + name: "FrameworksMockingServicesTests_server_storagemanagerservicetest", + base: "FrameworksMockingServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.StorageManagerServiceTest"], +} diff --git a/services/tests/mockingservicestests/src/com/android/server/OWNERS b/services/tests/mockingservicestests/src/com/android/server/OWNERS index dc5cb8d6bdf5..0c9f70ca96b5 100644 --- a/services/tests/mockingservicestests/src/com/android/server/OWNERS +++ b/services/tests/mockingservicestests/src/com/android/server/OWNERS @@ -1,6 +1,6 @@ per-file *Alarm* = file:/apex/jobscheduler/OWNERS per-file *AppStateTracker* = file:/apex/jobscheduler/OWNERS -per-file *DeviceIdleController* = file:/apex/jobscheduler/OWNERS +per-file *DeviceIdleController* = file:/apex/jobscheduler/DEVICE_IDLE_OWNERS per-file SensitiveContentProtectionManagerService* = file:/core/java/android/permission/OWNERS per-file RescuePartyTest.java = file:/packages/CrashRecovery/OWNERS per-file *Storage* = file:/core/java/android/os/storage/OWNERS diff --git a/services/tests/mockingservicestests/src/com/android/server/SensitiveContentProtectionManagerServiceNotificationTest.java b/services/tests/mockingservicestests/src/com/android/server/SensitiveContentProtectionManagerServiceNotificationTest.java index 8b653378664e..32135f1cb7fa 100644 --- a/services/tests/mockingservicestests/src/com/android/server/SensitiveContentProtectionManagerServiceNotificationTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/SensitiveContentProtectionManagerServiceNotificationTest.java @@ -22,9 +22,10 @@ import static android.permission.flags.Flags.FLAG_SENSITIVE_NOTIFICATION_APP_PRO import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.doCallRealMethod; +import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.never; @@ -36,6 +37,7 @@ import android.content.pm.PackageManagerInternal; import android.media.projection.MediaProjectionInfo; import android.media.projection.MediaProjectionManager; import android.os.Process; +import android.os.RemoteException; import android.platform.test.annotations.RequiresFlagsDisabled; import android.platform.test.annotations.RequiresFlagsEnabled; import android.platform.test.flag.junit.CheckFlagsRule; @@ -137,9 +139,17 @@ public class SensitiveContentProtectionManagerServiceNotificationTest { mSensitiveContentProtectionManagerService.mNotificationListener = spy(mSensitiveContentProtectionManagerService.mNotificationListener); - doCallRealMethod() - .when(mSensitiveContentProtectionManagerService.mNotificationListener) - .onListenerConnected(); + + // Unexpected NLS interactions when registered cause test flakes. For purposes of this test, + // the test will control any NLS calls. + try { + doNothing().when(mSensitiveContentProtectionManagerService.mNotificationListener) + .registerAsSystemService(any(), any(), anyInt()); + doNothing().when(mSensitiveContentProtectionManagerService.mNotificationListener) + .unregisterAsSystemService(); + } catch (RemoteException e) { + // Intra-process call, should never happen. + } // Setup RankingMap and two possilbe rankings when(mSensitiveRanking.hasSensitiveContent()).thenReturn(true); diff --git a/services/tests/mockingservicestests/src/com/android/server/alarm/OWNERS b/services/tests/mockingservicestests/src/com/android/server/alarm/OWNERS index 6f207fb1a00e..6eb986b2b86b 100644 --- a/services/tests/mockingservicestests/src/com/android/server/alarm/OWNERS +++ b/services/tests/mockingservicestests/src/com/android/server/alarm/OWNERS @@ -1 +1 @@ -include /apex/jobscheduler/OWNERS +include /apex/jobscheduler/ALARM_OWNERS diff --git a/services/tests/mockingservicestests/src/com/android/server/am/ApplicationExitInfoTest.java b/services/tests/mockingservicestests/src/com/android/server/am/ApplicationExitInfoTest.java index adcbf5c9d059..194bf4ba73f3 100644 --- a/services/tests/mockingservicestests/src/com/android/server/am/ApplicationExitInfoTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/am/ApplicationExitInfoTest.java @@ -442,20 +442,24 @@ public class ApplicationExitInfoTest { IMPORTANCE_FOREGROUND_SERVICE, // importance null); // description - // Case 4: Create a process from another package with kill from lmkd + /* + * Case 4: Create a process from another package with kill from lmkd + * We expect LMKD's reported RSS to be the process' last seen RSS. + */ final int app2UidUser2 = 1010234; final int app2PidUser2 = 12348; final long app2Pss1 = 54321; final long app2Rss1 = 65432; + final long lmkd_reported_rss = 43215; final String app2ProcessName = "com.android.test.stub2:process"; final String app2PackageName = "com.android.test.stub2"; sleep(1); final long now4 = System.currentTimeMillis(); - doReturn(new Pair<Long, Object>(now4, Integer.valueOf(0))) + doReturn(null) .when(mAppExitInfoTracker.mAppExitInfoSourceZygote) .remove(anyInt(), anyInt()); - doReturn(new Pair<Long, Object>(now4, null)) + doReturn(new Pair<Long, Object>(now4, Long.valueOf(lmkd_reported_rss))) .when(mAppExitInfoTracker.mAppExitInfoSourceLmkd) .remove(anyInt(), anyInt()); @@ -490,7 +494,7 @@ public class ApplicationExitInfoTest { null, // subReason 0, // status app2Pss1, // pss - app2Rss1, // rss + lmkd_reported_rss, // rss IMPORTANCE_CACHED, // importance null); // description @@ -499,6 +503,11 @@ public class ApplicationExitInfoTest { mAppExitInfoTracker.getExitInfo(null, app2UidUser2, 0, 0, list); assertEquals(1, list.size()); + info = list.get(0); + + // Verify the AppExitInfo has the LMKD reported RSS + assertEquals(lmkd_reported_rss, info.getRss()); + // Case 5: App native crash final int app3UidUser2 = 1010345; final int app3PidUser2 = 12349; @@ -599,7 +608,7 @@ public class ApplicationExitInfoTest { null, // subReason 0, // status app2Pss1, // pss - app2Rss1, // rss + lmkd_reported_rss, // rss IMPORTANCE_CACHED, // importance null); // description diff --git a/services/tests/mockingservicestests/src/com/android/server/am/MockingOomAdjusterTests.java b/services/tests/mockingservicestests/src/com/android/server/am/MockingOomAdjusterTests.java index 488ce66ca99b..99dfc5cb0ec1 100644 --- a/services/tests/mockingservicestests/src/com/android/server/am/MockingOomAdjusterTests.java +++ b/services/tests/mockingservicestests/src/com/android/server/am/MockingOomAdjusterTests.java @@ -224,8 +224,10 @@ public class MockingOomAdjusterTests { doCallRealMethod().when(mService).enqueueOomAdjTargetLocked(any(ProcessRecord.class)); doCallRealMethod().when(mService).updateOomAdjPendingTargetsLocked(OOM_ADJ_REASON_ACTIVITY); setFieldValue(AppProfiler.class, profiler, "mProfilerLock", new Object()); - doReturn(new ActivityManagerService.ProcessChangeItem()).when(pr) - .enqueueProcessChangeItemLocked(anyInt(), anyInt()); + doNothing().when(pr).enqueueProcessChangeItemLocked(anyInt(), anyInt(), anyInt(), + anyInt()); + doNothing().when(pr).enqueueProcessChangeItemLocked(anyInt(), anyInt(), anyInt(), + anyBoolean()); mService.mOomAdjuster = mService.mConstants.ENABLE_NEW_OOMADJ ? new OomAdjusterModernImpl(mService, mService.mProcessList, new ActiveUids(mService, false), mInjector) diff --git a/services/tests/mockingservicestests/src/com/android/server/am/OWNERS b/services/tests/mockingservicestests/src/com/android/server/am/OWNERS index 2cbc226da780..809b7bbfd3a0 100644 --- a/services/tests/mockingservicestests/src/com/android/server/am/OWNERS +++ b/services/tests/mockingservicestests/src/com/android/server/am/OWNERS @@ -1,3 +1,5 @@ include /services/core/java/com/android/server/am/OWNERS per-file ApplicationStartInfoTest.java = yforta@google.com, carmenjackson@google.com, jji@google.com +per-file CachedAppOptimizerTest.java = file:/PERFORMANCE_OWNERS +per-file BaseBroadcastQueueTest.java = file:/BROADCASTS_OWNERS diff --git a/services/tests/mockingservicestests/src/com/android/server/job/OWNERS b/services/tests/mockingservicestests/src/com/android/server/job/OWNERS index 6f207fb1a00e..c8345f71b39a 100644 --- a/services/tests/mockingservicestests/src/com/android/server/job/OWNERS +++ b/services/tests/mockingservicestests/src/com/android/server/job/OWNERS @@ -1 +1 @@ -include /apex/jobscheduler/OWNERS +include /apex/jobscheduler/JOB_OWNERS diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/ApexManagerTest.java b/services/tests/mockingservicestests/src/com/android/server/pm/ApexManagerTest.java index d08cdc718a82..769f071e3ddc 100644 --- a/services/tests/mockingservicestests/src/com/android/server/pm/ApexManagerTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/pm/ApexManagerTest.java @@ -265,19 +265,19 @@ public class ApexManagerTest { } @Test - public void testSubmitStagedSession_throwRunTimeException() throws RemoteException { + public void testSubmitStagedSession_throwPackageManagerExceptionOnRemoteException() + throws RemoteException { doThrow(RemoteException.class).when(mApexService).submitStagedSession(any(), any()); - assertThrows(RuntimeException.class, + assertThrows(PackageManagerException.class, () -> mApexManager.submitStagedSession(testParamsWithChildren())); } @Test - public void testGetStagedApexInfos_throwRunTimeException() throws RemoteException { + public void testGetStagedApexInfos_returnsEmptyOnRemoteException() throws RemoteException { doThrow(RemoteException.class).when(mApexService).getStagedApexInfos(any()); - assertThrows(RuntimeException.class, - () -> mApexManager.getStagedApexInfos(testParamsWithChildren())); + assertThat(mApexManager.getStagedApexInfos(testParamsWithChildren())).hasLength(0); } @Test @@ -298,10 +298,11 @@ public class ApexManagerTest { } @Test - public void testMarkStagedSessionReady_throwRunTimeException() throws RemoteException { + public void testMarkStagedSessionReady_throwPackageManagerExceptionOnRemoteException() + throws RemoteException { doThrow(RemoteException.class).when(mApexService).markStagedSessionReady(anyInt()); - assertThrows(RuntimeException.class, + assertThrows(PackageManagerException.class, () -> mApexManager.markStagedSessionReady(TEST_SESSION_ID)); } diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/OWNERS b/services/tests/mockingservicestests/src/com/android/server/pm/OWNERS index 5181af14ff65..aa22790022c5 100644 --- a/services/tests/mockingservicestests/src/com/android/server/pm/OWNERS +++ b/services/tests/mockingservicestests/src/com/android/server/pm/OWNERS @@ -2,3 +2,4 @@ include /services/core/java/com/android/server/pm/OWNERS per-file BackgroundDexOptServiceUnitTest.java = file:/services/core/java/com/android/server/pm/dex/OWNERS per-file StagingManagerTest.java = dariofreni@google.com, ioffe@google.com, olilan@google.com +per-file ApexManagerTest.java = dariofreni@google.com, ioffe@google.com, olilan@google.com diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/StagingManagerTest.java b/services/tests/mockingservicestests/src/com/android/server/pm/StagingManagerTest.java index 6f9b8dfc023d..52fa331cf7c5 100644 --- a/services/tests/mockingservicestests/src/com/android/server/pm/StagingManagerTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/pm/StagingManagerTest.java @@ -72,7 +72,6 @@ import java.io.File; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.function.Predicate; @@ -486,7 +485,7 @@ public class StagingManagerTest { FakeStagedSession session = new FakeStagedSession(239); session.setIsApex(true); // Call and verify - Map<String, ApexInfo> result = mStagingManager.getStagedApexInfos(session); + var result = mStagingManager.getStagedApexInfos(session); assertThat(result).isEmpty(); } // Invalid session: destroyed @@ -496,7 +495,7 @@ public class StagingManagerTest { session.setIsApex(true); session.setDestroyed(true); // Call and verify - Map<String, ApexInfo> result = mStagingManager.getStagedApexInfos(session); + var result = mStagingManager.getStagedApexInfos(session); assertThat(result).isEmpty(); } } @@ -520,8 +519,8 @@ public class StagingManagerTest { when(mApexManager.getStagedApexInfos(any())).thenReturn(fakeApexInfos); // Call and verify - Map<String, ApexInfo> result = mStagingManager.getStagedApexInfos(validSession); - assertThat(result).containsExactly(fakeApexInfos[0].moduleName, fakeApexInfos[0]); + List<ApexInfo> result = mStagingManager.getStagedApexInfos(validSession); + assertThat(result).containsExactly(fakeApexInfos[0]); ArgumentCaptor<ApexSessionParams> argumentCaptor = ArgumentCaptor.forClass(ApexSessionParams.class); @@ -544,9 +543,8 @@ public class StagingManagerTest { when(mApexManager.getStagedApexInfos(any())).thenReturn(fakeApexInfos); // Call and verify - Map<String, ApexInfo> result = mStagingManager.getStagedApexInfos(parentSession); - assertThat(result).containsExactly(fakeApexInfos[0].moduleName, fakeApexInfos[0], - fakeApexInfos[1].moduleName, fakeApexInfos[1]); + List<ApexInfo> result = mStagingManager.getStagedApexInfos(parentSession); + assertThat(result).containsExactly(fakeApexInfos[0], fakeApexInfos[1]); ArgumentCaptor<ApexSessionParams> argumentCaptor = ArgumentCaptor.forClass(ApexSessionParams.class); @@ -557,7 +555,7 @@ public class StagingManagerTest { } @Test - public void getStagedApexModuleNames_returnsStagedApexModules() throws Exception { + public void getStagedApexInfos_returnsStagedApexModules() throws Exception { FakeStagedSession validSession1 = new FakeStagedSession(239); validSession1.setIsApex(true); validSession1.setSessionReady(); @@ -575,8 +573,8 @@ public class StagingManagerTest { mockApexManagerGetStagedApexInfoWithSessionId(); - List<String> result = mStagingManager.getStagedApexModuleNames(); - assertThat(result).containsExactly("239", "123", "124"); + List<StagedApexInfo> result = mStagingManager.getStagedApexInfos(); + assertThat(result).containsExactly((Object[]) fakeStagedApexInfos("239", "123", "124")); verify(mApexManager, times(2)).getStagedApexInfos(any()); } @@ -605,26 +603,12 @@ public class StagingManagerTest { }); } - @Test - public void getStagedApexInfo() throws Exception { - FakeStagedSession validSession1 = new FakeStagedSession(239); - validSession1.setIsApex(true); - validSession1.setSessionReady(); - mStagingManager.createSession(validSession1); - ApexInfo[] fakeApexInfos = getFakeApexInfo(Arrays.asList("module1")); - when(mApexManager.getStagedApexInfos(any())).thenReturn(fakeApexInfos); - - // Verify null is returned if module name is not found - StagedApexInfo result = mStagingManager.getStagedApexInfo("not found"); - assertThat(result).isNull(); - verify(mApexManager, times(1)).getStagedApexInfos(any()); - // Otherwise, the correct object is returned - result = mStagingManager.getStagedApexInfo("module1"); - assertThat(result.moduleName).isEqualTo(fakeApexInfos[0].moduleName); - assertThat(result.diskImagePath).isEqualTo(fakeApexInfos[0].modulePath); - assertThat(result.versionCode).isEqualTo(fakeApexInfos[0].versionCode); - assertThat(result.versionName).isEqualTo(fakeApexInfos[0].versionName); - verify(mApexManager, times(2)).getStagedApexInfos(any()); + private StagedApexInfo[] fakeStagedApexInfos(String... moduleNames) { + return Arrays.stream(moduleNames).map(moduleName -> { + StagedApexInfo info = new StagedApexInfo(); + info.moduleName = moduleName; + return info; + }).toArray(StagedApexInfo[]::new); } @Test @@ -646,8 +630,8 @@ public class StagingManagerTest { ArgumentCaptor<ApexStagedEvent> argumentCaptor = ArgumentCaptor.forClass( ApexStagedEvent.class); verify(observer, times(1)).onApexStaged(argumentCaptor.capture()); - assertThat(argumentCaptor.getValue().stagedApexModuleNames).isEqualTo( - new String[]{"239"}); + assertThat(argumentCaptor.getValue().stagedApexInfos).isEqualTo( + fakeStagedApexInfos("239")); } // Create another staged session and verify observers are notified of union @@ -662,8 +646,8 @@ public class StagingManagerTest { ArgumentCaptor<ApexStagedEvent> argumentCaptor = ArgumentCaptor.forClass( ApexStagedEvent.class); verify(observer, times(1)).onApexStaged(argumentCaptor.capture()); - assertThat(argumentCaptor.getValue().stagedApexModuleNames).isEqualTo( - new String[]{"239", "240"}); + assertThat(argumentCaptor.getValue().stagedApexInfos).isEqualTo( + fakeStagedApexInfos("239", "240")); } // Finally, verify that once unregistered, observer is not notified @@ -699,7 +683,7 @@ public class StagingManagerTest { ArgumentCaptor<ApexStagedEvent> argumentCaptor = ArgumentCaptor.forClass( ApexStagedEvent.class); verify(observer, times(1)).onApexStaged(argumentCaptor.capture()); - assertThat(argumentCaptor.getValue().stagedApexModuleNames).hasLength(0); + assertThat(argumentCaptor.getValue().stagedApexInfos).hasLength(0); } @Test diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/TEST_MAPPING b/services/tests/mockingservicestests/src/com/android/server/pm/TEST_MAPPING index 13e255fe4ab8..1f2d11c19a19 100644 --- a/services/tests/mockingservicestests/src/com/android/server/pm/TEST_MAPPING +++ b/services/tests/mockingservicestests/src/com/android/server/pm/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "FrameworksMockingServicesTests", - "options": [ - { - "include-filter": "com.android.server.pm" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksMockingServicesTests_com_android_server_pm_Presubmit" } ] } diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java b/services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java index 79f1574105ba..37d87c4e5d97 100644 --- a/services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java @@ -683,15 +683,14 @@ public final class UserManagerServiceTest { UserInfo privateProfileUser = mSpiedUms.createProfileForUserEvenWhenDisallowedWithThrow(PRIVATE_PROFILE_NAME, USER_TYPE_PROFILE_PRIVATE, 0, mainUser, null); - Mockito.doNothing().when(mSpiedUms).scheduleMessageToAutoLockPrivateSpace( - eq(privateProfileUser.getUserHandle().getIdentifier()), any(), - anyLong()); + Mockito.doNothing().when(mSpiedUms).scheduleAlarmToAutoLockPrivateSpace( + eq(privateProfileUser.getUserHandle().getIdentifier()), anyLong()); - mSpiedUms.maybeScheduleMessageToAutoLockPrivateSpace(); + mSpiedUms.maybeScheduleAlarmToAutoLockPrivateSpace(); - Mockito.verify(mSpiedUms).scheduleMessageToAutoLockPrivateSpace( - eq(privateProfileUser.getUserHandle().getIdentifier()), any(), anyLong()); + Mockito.verify(mSpiedUms).scheduleAlarmToAutoLockPrivateSpace( + eq(privateProfileUser.getUserHandle().getIdentifier()), anyLong()); } @Test diff --git a/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp b/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp index e94b8ad0a9ac..677ecf47355d 100644 --- a/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp +++ b/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp @@ -37,9 +37,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], jni_libs: [ @@ -54,3 +54,13 @@ android_test { "automotive-tests", ], } + +test_module_config { + name: "RollbackPackageHealthObserverTests_server_rollback", + base: "RollbackPackageHealthObserverTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.rollback"], +} diff --git a/services/tests/mockingservicestests/src/com/android/server/rollback/TEST_MAPPING b/services/tests/mockingservicestests/src/com/android/server/rollback/TEST_MAPPING index 4ac4484956fc..ef2d60530a73 100644 --- a/services/tests/mockingservicestests/src/com/android/server/rollback/TEST_MAPPING +++ b/services/tests/mockingservicestests/src/com/android/server/rollback/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "RollbackPackageHealthObserverTests", - "options": [ - { - "include-filter": "com.android.server.rollback" - } - ] + "name": "RollbackPackageHealthObserverTests_server_rollback" } ] }
\ No newline at end of file diff --git a/services/tests/ondeviceintelligencetests/Android.bp b/services/tests/ondeviceintelligencetests/Android.bp index aa859422f54f..a31a3fb65700 100644 --- a/services/tests/ondeviceintelligencetests/Android.bp +++ b/services/tests/ondeviceintelligencetests/Android.bp @@ -47,9 +47,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], certificate: "platform", diff --git a/services/tests/powerservicetests/Android.bp b/services/tests/powerservicetests/Android.bp index 729dcbd11f42..f03043ea0ae0 100644 --- a/services/tests/powerservicetests/Android.bp +++ b/services/tests/powerservicetests/Android.bp @@ -23,7 +23,7 @@ android_test { ], libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], defaults: [ @@ -44,3 +44,13 @@ android_test { enabled: false, }, } + +test_module_config { + name: "PowerServiceTests_server_power", + base: "PowerServiceTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power"], +} diff --git a/services/tests/powerstatstests/Android.bp b/services/tests/powerstatstests/Android.bp index f2b4136c51ed..631f76ace958 100644 --- a/services/tests/powerstatstests/Android.bp +++ b/services/tests/powerstatstests/Android.bp @@ -30,7 +30,7 @@ android_test { ], libs: [ - "android.test.base", + "android.test.base.stubs.system", ], resource_dirs: ["res/"], @@ -65,6 +65,7 @@ android_ravenwood_test { "androidx.annotation_annotation", "androidx.test.rules", "androidx.test.uiautomator_uiautomator", + "androidx.test.ext.junit", "modules-utils-binary-xml", "flag-junit", ], @@ -76,3 +77,23 @@ android_ravenwood_test { ], auto_gen_config: true, } + +test_module_config { + name: "PowerStatsTests_stats_bstatscputimesvalidationtest", + base: "PowerStatsTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power.stats.BstatsCpuTimesValidationTest"], +} + +test_module_config { + name: "PowerStatsTests_power_stats", + base: "PowerStatsTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power.stats"], +} diff --git a/services/tests/powerstatstests/TEST_MAPPING b/services/tests/powerstatstests/TEST_MAPPING index fb243616292d..d3d3cf641d9a 100644 --- a/services/tests/powerstatstests/TEST_MAPPING +++ b/services/tests/powerstatstests/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "PowerStatsTests", - "options": [ - {"include-filter": "com.android.server.power.stats"}, - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "PowerStatsTests_power_stats" } ], "ravenwood-presubmit": [ @@ -14,18 +9,13 @@ "name": "PowerStatsTestsRavenwood", "host": true, "options": [ - {"include-filter": "com.android.server.power.stats"}, - {"exclude-annotation": "android.platform.test.annotations.DisabledOnRavenwood"} + {"include-filter": "com.android.server.power.stats"} ] } ], "postsubmit": [ { - "name": "PowerStatsTests", - "options": [ - {"include-filter": "com.android.server.power.stats"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "PowerStatsTests_power_stats" } ] } diff --git a/services/tests/security/forensic/OWNERS b/services/tests/security/forensic/OWNERS new file mode 100644 index 000000000000..80c9afb96033 --- /dev/null +++ b/services/tests/security/forensic/OWNERS @@ -0,0 +1,3 @@ +# Bug component: 36824 + +file:platform/frameworks/base:main:/core/java/android/security/forensic/OWNERS diff --git a/services/tests/selinux/Android.bp b/services/tests/selinux/Android.bp index 12a70387affd..048978ab88a3 100644 --- a/services/tests/selinux/Android.bp +++ b/services/tests/selinux/Android.bp @@ -42,9 +42,9 @@ android_test { "mockito_extended", ], libs: [ - "android.test.base", - "android.test.mock", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", + "android.test.runner.stubs.system", "servicestests-core-utils", ], static_libs: [ diff --git a/services/tests/servicestests/Android.bp b/services/tests/servicestests/Android.bp index 753db125ffe3..d336c9962c17 100644 --- a/services/tests/servicestests/Android.bp +++ b/services/tests/servicestests/Android.bp @@ -84,9 +84,11 @@ android_test { "securebox", "flag-junit", "ravenwood-junit", + "net-tests-utils", "net_flags_lib", "CtsVirtualDeviceCommonLib", "com_android_server_accessibility_flags_lib", + "locksettings_flags_lib", ], libs: [ @@ -94,9 +96,9 @@ android_test { "android.hardware.tv.cec-V1.0-java", "android.hardware.vibrator-V2-java", "android.hidl.manager-V1.0-java", - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], platform_apis: true, @@ -150,7 +152,7 @@ android_test { android_ravenwood_test { name: "FrameworksServicesTestsRavenwood", libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], static_libs: [ "androidx.annotation_annotation", @@ -190,8 +192,8 @@ java_library { "src/com/android/server/devicepolicy/MockUtils.java", ], libs: [ - "android.test.mock", - "android.test.base", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", "mockito-target-minus-junit4", ], static_libs: [ @@ -216,7 +218,21 @@ java_library { "mockito-target-minus-junit4", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", + ], +} + +java_library { + name: "servicestests-utils-ravenwood", + srcs: [ + "utils/**/*.java", + "utils/**/*.kt", + "utils-mockito/**/*.kt", + ], + libs: [ + "android.test.runner.stubs.system", + "junit", + "mockito-ravenwood-prebuilt", ], } @@ -242,7 +258,7 @@ java_library { "mockito-target-extended-minus-junit4", ], libs: [ - "android.test.runner", + "android.test.runner.stubs.system", ], } @@ -271,88 +287,725 @@ java_genrule { "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res", } -FLAKY_AND_IGNORED = [ - "androidx.test.filters.FlakyTest", - "org.junit.Ignore", -] // Used by content protection TEST_MAPPING test_module_config { name: "FrameworksServicesTests_contentprotection", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.contentprotection"], - exclude_annotations: FLAKY_AND_IGNORED, } test_module_config { name: "FrameworksServicesTests_om", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.om."], - exclude_annotations: FLAKY_AND_IGNORED, } // Used by contexthub TEST_MAPPING test_module_config { name: "FrameworksServicesTests_contexthub_presubmit", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.location.contexthub."], // TODO(ron): are these right, does it run anything? include_annotations: ["android.platform.test.annotations.Presubmit"], - exclude_annotations: FLAKY_AND_IGNORED, } test_module_config { name: "FrameworksServicesTests_contexthub_postsubmit", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.location.contexthub."], // TODO(ron): are these right, does it run anything? include_annotations: ["android.platform.test.annotations.Postsubmit"], - exclude_annotations: FLAKY_AND_IGNORED, } // Used by contentcapture test_module_config { name: "FrameworksServicesTests_contentcapture", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.contentcapture"], - exclude_annotations: FLAKY_AND_IGNORED, } test_module_config { name: "FrameworksServicesTests_recoverysystem", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.recoverysystem."], - exclude_annotations: ["androidx.test.filters.FlakyTest"], } // server pm TEST_MAPPING test_module_config { name: "FrameworksServicesTests_pm_presubmit", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_annotations: ["android.platform.test.annotations.Presubmit"], include_filters: ["com.android.server.pm."], - exclude_annotations: FLAKY_AND_IGNORED, } test_module_config { name: "FrameworksServicesTests_pm_postsubmit", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_annotations: ["android.platform.test.annotations.Postsubmit"], include_filters: ["com.android.server.pm."], - exclude_annotations: FLAKY_AND_IGNORED, } // server os TEST_MAPPING test_module_config { name: "FrameworksServicesTests_os", base: "FrameworksServicesTests", - test_suites: ["device-tests"], + test_suites: [ + "device-tests", + "automotive-tests", + ], + include_filters: ["com.android.server.os."], } + +test_module_config { + name: "FrameworksServicesTests_presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_com_android_server_job_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.job"], + exclude_annotations: [ + "androidx.test.filters.LargeTest", + "androidx.test.filters.FlakyTest", + ], +} + +test_module_config { + name: "FrameworksServicesTests_com_android_server_job", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.job"], +} + +test_module_config { + name: "FrameworksServicesTests_com_android_server_tare", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.tare"], +} + +test_module_config { + name: "FrameworksServicesTests_com_android_server_usage", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.usage"], +} + +test_module_config { + name: "FrameworksServicesTests_battery_stats", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.am.BatteryStatsServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_accessibility", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.accessibility"], +} + +test_module_config { + name: "FrameworksServicesTests_binary_transparency", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.BinaryTransparencyServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_pinner_service", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.PinnerServiceTest"], + exclude_annotations: ["org.junit.Ignore"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_am_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.am."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_am", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.am."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_appop", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.appop"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_audio", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.audio"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_compat", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.compat"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_hdmi_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.hdmi"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_hdmi", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.hdmi"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_integrity", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.integrity."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_lights", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.lights"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_locales", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.locales."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_location_contexthub_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.location.contexthub."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_locksettings", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.locksettings."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_logcat", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.logcat"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_net_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.net."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_om", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.om."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_pdb", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.pdb.PersistentDataBlockServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_pm_dex", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.pm.dex"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_policy_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.policy."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_policy", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.policy."], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_power", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.power"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_power_hint", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.power.hint"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_powerstats", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.powerstats"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_rollback", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.rollback"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_uri", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.uri."], +} + +test_module_config { + name: "FrameworksServicesTests_com_android_server_location_contexthub", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.location.contexthub."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_usage", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.usage"], + exclude_filters: ["com.android.server.usage.StorageStatsServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_soundtrigger_middleware", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.soundtrigger_middleware"], +} + +test_module_config { + name: "FrameworksServicesTests_android_server_input", + base: "FrameworksServicesTests", + test_suites: [ + "device-tests", + "automotive-tests", + ], + + include_filters: ["com.android.server.input"], +} + +test_module_config { + name: "FrameworksServicesTests_server_job", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.job"], +} + +test_module_config { + name: "FrameworksServicesTests_server_tare", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.tare"], +} + +test_module_config { + name: "FrameworksServicesTests_server_usage", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.usage"], +} + +test_module_config { + name: "FrameworksServicesTests_server_om", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.om"], +} + +test_module_config { + name: "FrameworksServicesTests_server_accessibility", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.accessibility"], +} + +test_module_config { + name: "FrameworksServicesTests_server_binarytransparencyservicetest", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.BinaryTransparencyServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_server_pinnerservicetest", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.PinnerServiceTest"], +} + +test_module_config { + name: "FrameworksServicesTests_server_am", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.am."], +} + +test_module_config { + name: "FrameworksServicesTests_server_hdmi", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.hdmi"], +} + +test_module_config { + name: "FrameworksServicesTests_server_logcat", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.logcat"], +} + +test_module_config { + name: "FrameworksServicesTests_server_net_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.net."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_server_policy_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.policy."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_server_policy", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.policy."], +} + +test_module_config { + name: "FrameworksServicesTests_server_power", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power"], +} + +test_module_config { + name: "FrameworksServicesTests_power_hint", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.power.hint"], +} + +test_module_config { + name: "FrameworksServicesTests_location_contexthub_Postsubmit", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.location.contexthub."], + include_annotations: ["android.platform.test.annotations.Postsubmit"], +} + +test_module_config { + name: "FrameworksServicesTests_server_input", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.input"], +} + +test_module_config { + name: "FrameworksServicesTests_people_data", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.people.data"], +} + +test_module_config { + name: "FrameworksServicesTests_Presubmit", + base: "FrameworksServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/services/tests/servicestests/src/com/android/server/OWNERS b/services/tests/servicestests/src/com/android/server/OWNERS index d49bc4326a5a..d8a9400d5180 100644 --- a/services/tests/servicestests/src/com/android/server/OWNERS +++ b/services/tests/servicestests/src/com/android/server/OWNERS @@ -1,4 +1,4 @@ -per-file *Alarm* = file:/apex/jobscheduler/OWNERS +per-file *Alarm* = file:/apex/jobscheduler/ALARM_OWNERS per-file *AppOp* = file:/core/java/android/permission/OWNERS per-file *BinaryTransparency* = file:/core/java/android/transparency/OWNERS per-file *Bluetooth* = file:platform/packages/modules/Bluetooth:master:/framework/OWNERS diff --git a/services/tests/servicestests/src/com/android/server/appfunctions/OWNERS b/services/tests/servicestests/src/com/android/server/appfunctions/OWNERS new file mode 100644 index 000000000000..7fa891736efe --- /dev/null +++ b/services/tests/servicestests/src/com/android/server/appfunctions/OWNERS @@ -0,0 +1,2 @@ +# Bug component: 1627156 +include platform/frameworks/base:/core/java/android/app/appfunctions/OWNERS diff --git a/services/tests/servicestests/src/com/android/server/autofill/RequestIdTest.java b/services/tests/servicestests/src/com/android/server/autofill/RequestIdTest.java index 6d56c417f789..60c3659202be 100644 --- a/services/tests/servicestests/src/com/android/server/autofill/RequestIdTest.java +++ b/services/tests/servicestests/src/com/android/server/autofill/RequestIdTest.java @@ -17,17 +17,25 @@ package com.android.server.autofill; import static com.google.common.truth.Truth.assertThat; +import android.util.Slog; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; -import java.util.ArrayList; -import java.util.List; - @RunWith(JUnit4.class) public class RequestIdTest { + private static final int TEST_DATASET_SIZE = 300; + private static final int TEST_WRAP_SIZE = 50; // Number of request ids before wrap happens + private static final String TAG = "RequestIdTest"; + List<Integer> datasetPrimaryNoWrap = new ArrayList<>(); List<Integer> datasetPrimaryWrap = new ArrayList<>(); List<Integer> datasetSecondaryNoWrap = new ArrayList<>(); @@ -35,151 +43,200 @@ public class RequestIdTest { List<Integer> datasetMixedNoWrap = new ArrayList<>(); List<Integer> datasetMixedWrap = new ArrayList<>(); - @Before - public void setup() throws Exception { - int datasetSize = 300; + List<Integer> manualWrapRequestIdList = Arrays.asList(3, 9, 15, + RequestId.MAX_SECONDARY_REQUEST_ID - 5, + RequestId.MAX_SECONDARY_REQUEST_ID - 3); + List<Integer> manualNoWrapRequestIdList =Arrays.asList(2, 6, 10, 14, 18, 22, 26, 30); + List<Integer> manualOneElementRequestIdList = Arrays.asList(1); + + @Before + public void setup() throws IllegalArgumentException { + Slog.d(TAG, "setup()"); { // Generate primary only ids that do not wrap - RequestId requestId = new RequestId(0); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MIN_PRIMARY_REQUEST_ID); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetPrimaryNoWrap.add(requestId.nextId(false)); } + Collections.sort(datasetPrimaryNoWrap); } { // Generate primary only ids that wrap - RequestId requestId = new RequestId(0xff00); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MAX_PRIMARY_REQUEST_ID - + TEST_WRAP_SIZE * 2); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetPrimaryWrap.add(requestId.nextId(false)); } + Collections.sort(datasetPrimaryWrap); } { // Generate SECONDARY only ids that do not wrap - RequestId requestId = new RequestId(0); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MIN_SECONDARY_REQUEST_ID); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetSecondaryNoWrap.add(requestId.nextId(true)); } + Collections.sort(datasetSecondaryNoWrap); } { // Generate SECONDARY only ids that wrap - RequestId requestId = new RequestId(0xff00); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MAX_SECONDARY_REQUEST_ID - + TEST_WRAP_SIZE * 2); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetSecondaryWrap.add(requestId.nextId(true)); } + Collections.sort(datasetSecondaryWrap); } { // Generate MIXED only ids that do not wrap - RequestId requestId = new RequestId(0); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MIN_REQUEST_ID); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetMixedNoWrap.add(requestId.nextId(i % 2 != 0)); } + Collections.sort(datasetMixedNoWrap); } { // Generate MIXED only ids that wrap - RequestId requestId = new RequestId(0xff00); - for (int i = 0; i < datasetSize; i++) { + RequestId requestId = new RequestId(RequestId.MAX_REQUEST_ID - + TEST_WRAP_SIZE); + for (int i = 0; i < TEST_DATASET_SIZE; i++) { datasetMixedWrap.add(requestId.nextId(i % 2 != 0)); } + Collections.sort(datasetMixedWrap); } + Slog.d(TAG, "finishing setup()"); } @Test public void testRequestIdLists() { + Slog.d(TAG, "testRequestIdLists()"); for (int id : datasetPrimaryNoWrap) { assertThat(RequestId.isSecondaryProvider(id)).isFalse(); - assertThat(id >= 0).isTrue(); - assertThat(id < 0xffff).isTrue(); + assertThat(id).isAtLeast(RequestId.MIN_PRIMARY_REQUEST_ID); + assertThat(id).isAtMost(RequestId.MAX_PRIMARY_REQUEST_ID); } for (int id : datasetPrimaryWrap) { assertThat(RequestId.isSecondaryProvider(id)).isFalse(); - assertThat(id >= 0).isTrue(); - assertThat(id < 0xffff).isTrue(); + assertThat(id).isAtLeast(RequestId.MIN_PRIMARY_REQUEST_ID); + assertThat(id).isAtMost(RequestId.MAX_PRIMARY_REQUEST_ID); } for (int id : datasetSecondaryNoWrap) { assertThat(RequestId.isSecondaryProvider(id)).isTrue(); - assertThat(id >= 0).isTrue(); - assertThat(id < 0xffff).isTrue(); + assertThat(id).isAtLeast(RequestId.MIN_SECONDARY_REQUEST_ID); + assertThat(id).isAtMost(RequestId.MAX_SECONDARY_REQUEST_ID); } for (int id : datasetSecondaryWrap) { assertThat(RequestId.isSecondaryProvider(id)).isTrue(); - assertThat(id >= 0).isTrue(); - assertThat(id < 0xffff).isTrue(); + assertThat(id).isAtLeast(RequestId.MIN_SECONDARY_REQUEST_ID); + assertThat(id).isAtMost(RequestId.MAX_SECONDARY_REQUEST_ID); } } @Test - public void testRequestIdGeneration() { - RequestId requestId = new RequestId(0); + public void testCreateNewRequestId() { + Slog.d(TAG, "testCreateNewRequestId()"); + for (int i = 0; i < 100000; i++) { + RequestId requestId = new RequestId(); + assertThat(requestId.getRequestId()).isAtLeast(RequestId.MIN_REQUEST_ID); + assertThat(requestId.getRequestId()).isAtMost(RequestId.MAX_START_ID); + } + } + @Test + public void testGetNextRequestId() throws IllegalArgumentException{ + Slog.d(TAG, "testGetNextRequestId()"); + RequestId requestId = new RequestId(); // Large Primary for (int i = 0; i < 100000; i++) { int y = requestId.nextId(false); assertThat(RequestId.isSecondaryProvider(y)).isFalse(); - assertThat(y >= 0).isTrue(); - assertThat(y < 0xffff).isTrue(); + assertThat(y).isAtLeast(RequestId.MIN_PRIMARY_REQUEST_ID); + assertThat(y).isAtMost(RequestId.MAX_PRIMARY_REQUEST_ID); } // Large Secondary - requestId = new RequestId(0); + requestId = new RequestId(); for (int i = 0; i < 100000; i++) { int y = requestId.nextId(true); assertThat(RequestId.isSecondaryProvider(y)).isTrue(); - assertThat(y >= 0).isTrue(); - assertThat(y < 0xffff).isTrue(); + assertThat(y).isAtLeast(RequestId.MIN_SECONDARY_REQUEST_ID); + assertThat(y).isAtMost(RequestId.MAX_SECONDARY_REQUEST_ID); } // Large Mixed - requestId = new RequestId(0); + requestId = new RequestId(); for (int i = 0; i < 50000; i++) { int y = requestId.nextId(i % 2 != 0); - assertThat(RequestId.isSecondaryProvider(y)).isEqualTo(i % 2 == 0); - assertThat(y >= 0).isTrue(); - assertThat(y < 0xffff).isTrue(); + assertThat(y).isAtLeast(RequestId.MIN_REQUEST_ID); + assertThat(y).isAtMost(RequestId.MAX_REQUEST_ID); } } @Test public void testGetLastRequestId() { - // In this test, request ids are generated FIFO, so the last entry is also the last - // request + Slog.d(TAG, "testGetLastRequestId()"); - { // Primary no wrap - int lastIdIndex = datasetPrimaryNoWrap.size() - 1; - int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetPrimaryNoWrap); - assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); + { // Primary no wrap + int lastIdIndex = datasetPrimaryNoWrap.size() - 1; + int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetPrimaryNoWrap); + assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); } - { // Primary wrap - int lastIdIndex = datasetPrimaryWrap.size() - 1; + { // Primary wrap + // The last index would be the # of request ids left after wrap + // minus 1 (index starts at 0) + int lastIdIndex = TEST_DATASET_SIZE - TEST_WRAP_SIZE - 1; int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetPrimaryWrap); - assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); + assertThat(lastComputedIdIndex).isEqualTo(lastIdIndex); } - { // Secondary no wrap + { // Secondary no wrap int lastIdIndex = datasetSecondaryNoWrap.size() - 1; int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetSecondaryNoWrap); assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); } - { // Secondary wrap - int lastIdIndex = datasetSecondaryWrap.size() - 1; + { // Secondary wrap + int lastIdIndex = TEST_DATASET_SIZE - TEST_WRAP_SIZE - 1; int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetSecondaryWrap); assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); } - { // Mixed no wrap + { // Mixed no wrap int lastIdIndex = datasetMixedNoWrap.size() - 1; int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetMixedNoWrap); assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); } - { // Mixed wrap - int lastIdIndex = datasetMixedWrap.size() - 1; + { // Mixed wrap + int lastIdIndex = TEST_DATASET_SIZE - TEST_WRAP_SIZE - 1; int lastComputedIdIndex = RequestId.getLastRequestIdIndex(datasetMixedWrap); assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); } + { // Manual wrap + int lastIdIndex = 2; // [3, 9, 15, + // MAX_SECONDARY_REQUEST_ID - 5, MAX_SECONDARY_REQUEST_ID - 3] + int lastComputedIdIndex = RequestId.getLastRequestIdIndex(manualWrapRequestIdList); + assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); + } + + { // Manual no wrap + int lastIdIndex = manualNoWrapRequestIdList.size() - 1; // [2, 6, 10, 14, + // 18, 22, 26, 30] + int lastComputedIdIndex = RequestId.getLastRequestIdIndex(manualNoWrapRequestIdList); + assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); + + } + + { // Manual one element + int lastIdIndex = 0; // [1] + int lastComputedIdIndex = RequestId.getLastRequestIdIndex( + manualOneElementRequestIdList); + assertThat(lastIdIndex).isEqualTo(lastComputedIdIndex); + + } } } diff --git a/services/tests/servicestests/src/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClientTest.java b/services/tests/servicestests/src/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClientTest.java index ecd799f44552..6ec888cd2e45 100644 --- a/services/tests/servicestests/src/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClientTest.java +++ b/services/tests/servicestests/src/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClientTest.java @@ -406,8 +406,6 @@ public class FingerprintAuthenticationClientTest { mContextInjector.getValue().accept(opContext); verify(mHal).onContextChanged(same(opContext)); - verify(mHal, times(2)).setIgnoreDisplayTouches( - opContext.operationState.getFingerprintOperationState().isHardwareIgnoringTouches); client.stopHalOperation(); diff --git a/services/tests/servicestests/src/com/android/server/contentprotection/OWNERS b/services/tests/servicestests/src/com/android/server/contentprotection/OWNERS index 24561c59bba6..3d09da303b0f 100644 --- a/services/tests/servicestests/src/com/android/server/contentprotection/OWNERS +++ b/services/tests/servicestests/src/com/android/server/contentprotection/OWNERS @@ -1,3 +1,4 @@ -# Bug component: 544200 +# Bug component: 1040349 + +include /core/java/android/view/contentprotection/OWNERS -include /core/java/android/view/contentcapture/OWNERS diff --git a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTest.java b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTest.java index 004c6c68781c..21129a7a9d85 100644 --- a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTest.java +++ b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTest.java @@ -19,6 +19,7 @@ import static android.hardware.hdmi.HdmiDeviceInfo.DEVICE_TV; import static com.android.server.SystemService.PHASE_SYSTEM_SERVICES_READY; import static com.android.server.hdmi.Constants.ADDR_AUDIO_SYSTEM; +import static com.android.server.hdmi.Constants.ADDR_BROADCAST; import static com.android.server.hdmi.Constants.ADDR_PLAYBACK_1; import static com.android.server.hdmi.Constants.ADDR_TV; import static com.android.server.hdmi.Constants.MESSAGE_DEVICE_VENDOR_ID; @@ -529,21 +530,32 @@ public class HdmiCecLocalDeviceTest { public void handleVendorCommand_notHandled() { HdmiCecMessage vendorCommand = HdmiCecMessageBuilder.buildVendorCommand(ADDR_TV, ADDR_PLAYBACK_1, new byte[]{0}); - mNativeWrapper.onCecMessage(vendorCommand); + @Constants.HandleMessageResult int result = + mHdmiLocalDevice.handleVendorCommand(vendorCommand); mTestLooper.dispatchAll(); - HdmiCecMessageBuilder.buildFeatureAbortCommand(ADDR_PLAYBACK_1, ADDR_TV, - vendorCommand.getOpcode(), Constants.ABORT_REFUSED); + assertEquals(Constants.ABORT_REFUSED, result); } @Test public void handleVendorCommandWithId_notHandled_Cec14() { HdmiCecMessage vendorCommand = HdmiCecMessageBuilder.buildVendorCommandWithId(ADDR_TV, ADDR_PLAYBACK_1, 0x1234, new byte[]{0}); - mNativeWrapper.onCecMessage(vendorCommand); + @Constants.HandleMessageResult int result = + mHdmiLocalDevice.handleVendorCommandWithId(vendorCommand); mTestLooper.dispatchAll(); - HdmiCecMessageBuilder.buildFeatureAbortCommand(ADDR_PLAYBACK_1, ADDR_TV, - vendorCommand.getOpcode(), Constants.ABORT_REFUSED); + assertEquals(Constants.ABORT_REFUSED, result); + } + + @Test + public void handleVendorCommandWithId_broadcasted_handled() { + HdmiCecMessage vendorCommand = HdmiCecMessageBuilder.buildVendorCommandWithId(ADDR_TV, + ADDR_BROADCAST, 0x1234, new byte[]{0}); + @Constants.HandleMessageResult int result = + mHdmiLocalDevice.handleVendorCommandWithId(vendorCommand); + mTestLooper.dispatchAll(); + + assertEquals(Constants.HANDLED, result); } } diff --git a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java index 2a4b79730851..128d7381dc22 100644 --- a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java +++ b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java @@ -2046,4 +2046,61 @@ public class HdmiCecLocalDeviceTvTest { assertThat(mPowerManager.isInteractive()).isTrue(); } + + @Test + public void handleReportPhysicalAddress_DeviceDiscoveryActionInProgress_noNewDeviceAction() { + mHdmiControlService.getHdmiCecNetwork().clearDeviceList(); + mNativeWrapper.setPollAddressResponse(ADDR_PLAYBACK_1, SendMessageResult.SUCCESS); + mHdmiControlService.allocateLogicalAddress(mLocalDevices, INITIATED_BY_ENABLE_CEC); + mNativeWrapper.clearResultMessages(); + mTestLooper.dispatchAll(); + + HdmiCecMessage reportPhysicalAddressFromPlayback1 = + HdmiCecMessageBuilder.buildReportPhysicalAddressCommand( + ADDR_PLAYBACK_1, 0x1000, HdmiDeviceInfo.DEVICE_PLAYBACK); + HdmiCecMessage reportPhysicalAddressFromPlayback2 = + HdmiCecMessageBuilder.buildReportPhysicalAddressCommand( + ADDR_PLAYBACK_2, 0x2000, HdmiDeviceInfo.DEVICE_PLAYBACK); + HdmiCecMessage giveOsdName = HdmiCecMessageBuilder.buildGiveOsdNameCommand( + ADDR_TV, ADDR_PLAYBACK_2); + // Skip state waiting for <Report Physical Address> for DeviceDiscoveryAction s.t. message + // can be dispatched to local device TV. + mNativeWrapper.onCecMessage(reportPhysicalAddressFromPlayback1); + mNativeWrapper.clearResultMessages(); + mTestLooper.dispatchAll(); + + mNativeWrapper.onCecMessage(reportPhysicalAddressFromPlayback2); + mTestLooper.dispatchAll(); + + // NewDeviceAction did not start and <Give OSD Name> was not sent. + assertThat(mNativeWrapper.getResultMessages()).doesNotContain(giveOsdName); + } + + @Test + public void onOneTouchPlay_wakeUp_addCecDevice() { + assertThat(mHdmiControlService.getHdmiCecNetwork().getDeviceInfoList(false)) + .isEmpty(); + mHdmiCecLocalDeviceTv.mService.getHdmiCecConfig().setIntValue( + HdmiControlManager.CEC_SETTING_NAME_TV_WAKE_ON_ONE_TOUCH_PLAY, + HdmiControlManager.TV_WAKE_ON_ONE_TOUCH_PLAY_ENABLED); + mPowerManager.setInteractive(false); + mTestLooper.dispatchAll(); + + HdmiCecMessage textViewOn = HdmiCecMessageBuilder.buildTextViewOn(ADDR_PLAYBACK_1, + mTvLogicalAddress); + HdmiCecMessage activeSource = HdmiCecMessageBuilder.buildActiveSource(ADDR_PLAYBACK_1, + 0x1000); + assertThat(mHdmiCecLocalDeviceTv.dispatchMessage(textViewOn)).isEqualTo(Constants.HANDLED); + assertThat(mHdmiCecLocalDeviceTv.dispatchMessage(activeSource)).isEqualTo( + Constants.HANDLED); + mTestLooper.dispatchAll(); + assertThat(mPowerManager.isInteractive()).isTrue(); + + // FakePowerManagerWrapper#wakeUp() doesn't broadcast Intent.ACTION_SCREEN_ON so we have to + // manually call this method. + mHdmiControlService.onWakeUp(WAKE_UP_SCREEN_ON); + mTestLooper.dispatchAll(); + assertThat(mHdmiControlService.getHdmiCecNetwork().getDeviceInfoList(false)) + .hasSize(1); + } } diff --git a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecMessageValidatorTest.java b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecMessageValidatorTest.java index 473d1dc22d7a..6577e09a986e 100644 --- a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecMessageValidatorTest.java +++ b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecMessageValidatorTest.java @@ -240,6 +240,9 @@ public class HdmiCecMessageValidatorTest { public void isValid_setAnalogueTimer_clearAnalogueTimer() { assertMessageValidity("04:33:0C:08:10:1E:04:30:08:00:13:AD:06").isEqualTo(OK); assertMessageValidity("04:34:04:0C:16:0F:08:37:00:02:EA:60:03:34").isEqualTo(OK); + // Allow [Recording Sequence] set multiple days of the week. + // e.g. Monday (0x02) | Tuesday (0x04) -> Monday or Tuesday (0x06) + assertMessageValidity("04:34:04:0C:16:0F:08:37:06:02:EA:60:03:34").isEqualTo(OK); assertMessageValidity("0F:33:0C:08:10:1E:04:30:08:00:13:AD:06") .isEqualTo(ERROR_DESTINATION); @@ -247,120 +250,120 @@ public class HdmiCecMessageValidatorTest { assertMessageValidity("04:33:0C:08:10:1E:04:30:08:13:AD:06") .isEqualTo(ERROR_PARAMETER_SHORT); // Out of range Day of Month - assertMessageValidity("04:34:20:0C:16:0F:08:37:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:20:0C:22:15:08:55:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); // Out of range Month of Year - assertMessageValidity("04:33:0C:00:10:1E:04:30:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:33:0C:00:16:30:04:48:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Hour - assertMessageValidity("04:34:04:0C:18:0F:08:37:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:04:0C:24:15:08:55:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Minute - assertMessageValidity("04:33:0C:08:10:50:04:30:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:33:0C:08:16:60:04:48:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); // Out of range Duration - Duration Hours - assertMessageValidity("04:34:04:0C:16:0F:64:37:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:04:0C:22:15:9A:55:00:02:EA:60:03").isEqualTo(ERROR_PARAMETER); // Out of range Duration - Minute - assertMessageValidity("04:33:0C:08:10:1E:04:64:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:33:0C:08:16:30:04:60:08:00:13:AD:06").isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("04:34:04:0C:16:0F:08:37:88:02:EA:60:03").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:04:0C:22:15:08:55:88:02:EA:60:03").isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("04:33:0C:08:10:1E:04:30:A2:00:13:AD:06").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:33:0C:08:16:30:04:48:A2:00:13:AD:06").isEqualTo(ERROR_PARAMETER); // Out of range Analogue Broadcast Type - assertMessageValidity("04:34:04:0C:16:0F:08:37:00:03:EA:60:03").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:04:0C:22:15:08:55:00:03:EA:60:03").isEqualTo(ERROR_PARAMETER); // Out of range Analogue Frequency - assertMessageValidity("04:33:0C:08:10:1E:04:30:08:00:FF:FF:06").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:33:0C:08:16:30:04:48:08:00:FF:FF:06").isEqualTo(ERROR_PARAMETER); // Out of range Broadcast System - assertMessageValidity("04:34:04:0C:16:0F:08:37:00:02:EA:60:20").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:34:04:0C:22:15:08:55:00:02:EA:60:20").isEqualTo(ERROR_PARAMETER); } @Test public void isValid_setDigitalTimer_clearDigitalTimer() { // Services identified by Digital IDs - ARIB Broadcast System - assertMessageValidity("04:99:0C:08:15:05:04:1E:00:00:C4:C2:11:D8:75:30").isEqualTo(OK); + assertMessageValidity("04:99:0C:08:21:05:04:30:00:00:C4:C2:11:D8:75:30").isEqualTo(OK); // Service identified by Digital IDs - ATSC Broadcast System - assertMessageValidity("04:97:1E:07:12:20:50:28:01:01:8B:5E:39:5A").isEqualTo(OK); + assertMessageValidity("04:97:1E:07:18:32:80:40:01:01:8B:5E:39:5A").isEqualTo(OK); // Service identified by Digital IDs - DVB Broadcast System - assertMessageValidity("04:99:05:0C:06:0A:19:3B:40:19:8B:44:03:11:04:FC").isEqualTo(OK); + assertMessageValidity("04:99:05:0C:06:10:25:59:40:19:8B:44:03:11:04:FC").isEqualTo(OK); // Service identified by Channel - 1 part channel number - assertMessageValidity("04:97:12:06:0C:2D:5A:19:08:91:04:00:B1").isEqualTo(OK); + assertMessageValidity("04:97:12:06:12:45:90:25:08:91:04:00:B1").isEqualTo(OK); // Service identified by Channel - 2 part channel number - assertMessageValidity("04:99:15:09:00:0F:00:2D:04:82:09:C8:72:C8").isEqualTo(OK); + assertMessageValidity("04:99:15:09:00:15:00:45:04:82:09:C8:72:C8").isEqualTo(OK); - assertMessageValidity("4F:97:0C:08:15:05:04:1E:00:00:C4:C2:11:D8:75:30") + assertMessageValidity("4F:97:0C:08:21:05:04:30:00:00:C4:C2:11:D8:75:30") .isEqualTo(ERROR_DESTINATION); - assertMessageValidity("F0:99:15:09:00:0F:00:2D:04:82:09:C8:72:C8").isEqualTo(ERROR_SOURCE); + assertMessageValidity("F0:99:15:09:00:15:00:45:04:82:09:C8:72:C8").isEqualTo(ERROR_SOURCE); assertMessageValidity("04:97:1E:12:20:58:01:01:8B:5E:39:5A") .isEqualTo(ERROR_PARAMETER_SHORT); // Out of range Day of Month - assertMessageValidity("04:99:24:0C:06:0A:19:3B:40:19:8B:44:03:11:04:FC") + assertMessageValidity("04:99:24:0C:06:10:25:59:40:19:8B:44:03:11:04:FC") .isEqualTo(ERROR_PARAMETER); // Out of range Month of Year - assertMessageValidity("04:97:12:10:0C:2D:5A:19:08:91:04:00:B1").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:97:12:10:12:45:90:25:08:91:04:00:B1").isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Hour - assertMessageValidity("04:99:0C:08:20:05:04:1E:00:00:C4:C2:11:D8:75:30") + assertMessageValidity("04:99:0C:08:24:05:04:30:00:00:C4:C2:11:D8:75:30") .isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Minute - assertMessageValidity("04:97:15:09:00:4B:00:2D:04:82:09:C8:72:C8") + assertMessageValidity("04:97:15:09:00:60:00:45:04:82:09:C8:72:C8") .isEqualTo(ERROR_PARAMETER); // Out of range Duration - Duration Hours - assertMessageValidity("04:99:1E:07:12:20:78:28:01:01:8B:5E:39:5A") + assertMessageValidity("04:99:1E:07:18:32:9A:40:01:01:8B:5E:39:5A") .isEqualTo(ERROR_PARAMETER); // Out of range Duration - Minute - assertMessageValidity("04:97:05:0C:06:0A:19:48:40:19:8B:44:03:11:04:FC") + assertMessageValidity("04:97:05:0C:06:10:25:60:40:19:8B:44:03:11:04:FC") .isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("04:99:12:06:0C:2D:5A:19:90:91:04:00:B1").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:99:12:06:12:45:90:25:90:91:04:00:B1").isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("04:97:0C:08:15:05:04:1E:21:00:C4:C2:11:D8:75:30") + assertMessageValidity("04:97:0C:08:15:05:04:1E:A1:00:C4:C2:11:D8:75:30") .isEqualTo(ERROR_PARAMETER); // Invalid Digital Broadcast System - assertMessageValidity("04:99:1E:07:12:20:50:28:01:04:8B:5E:39:5A") + assertMessageValidity("04:99:1E:07:18:32:80:40:01:04:8B:5E:39:5A") .isEqualTo(ERROR_PARAMETER); // Invalid Digital Broadcast System - assertMessageValidity("04:97:05:0C:06:0A:19:3B:40:93:8B:44:03:11:04:FC") + assertMessageValidity("04:97:05:0C:06:10:25:59:40:93:8B:44:03:11:04:FC") .isEqualTo(ERROR_PARAMETER); // Insufficient data for ARIB Broadcast system - assertMessageValidity("04:99:0C:08:15:05:04:1E:00:00:C4:C2:11:D8:75") + assertMessageValidity("04:99:0C:08:21:05:04:30:00:00:C4:C2:11:D8:75") .isEqualTo(ERROR_PARAMETER); // Insufficient data for ATSC Broadcast system - assertMessageValidity("04:97:1E:07:12:20:50:28:01:01:8B:5E:39").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:97:1E:07:18:32:80:40:01:01:8B:5E:39").isEqualTo(ERROR_PARAMETER); // Insufficient data for DVB Broadcast system - assertMessageValidity("04:99:05:0C:06:0A:19:3B:40:19:8B:44:03:11:04") + assertMessageValidity("04:99:05:0C:06:10:25:59:40:19:8B:44:03:11:04") .isEqualTo(ERROR_PARAMETER); // Insufficient data for 2 part channel number - assertMessageValidity("04:97:15:09:00:0F:00:2D:04:82:09:C8:72").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:97:15:09:00:15:00:45:04:82:09:C8:72").isEqualTo(ERROR_PARAMETER); // Invalid Channel Number format - assertMessageValidity("04:99:12:06:0C:2D:5A:19:08:91:0D:00:B1").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:99:12:06:12:45:90:25:08:91:0D:00:B1").isEqualTo(ERROR_PARAMETER); } @Test public void isValid_setExternalTimer_clearExternalTimer() { - assertMessageValidity("40:A1:0C:08:15:05:04:1E:02:04:20").isEqualTo(OK); - assertMessageValidity("40:A2:14:09:12:28:4B:19:10:05:10:00").isEqualTo(OK); + assertMessageValidity("40:A1:0C:08:21:05:04:30:02:04:20").isEqualTo(OK); + assertMessageValidity("40:A2:14:09:18:40:75:25:10:05:10:00").isEqualTo(OK); - assertMessageValidity("4F:A1:0C:08:15:05:04:1E:02:04:20").isEqualTo(ERROR_DESTINATION); - assertMessageValidity("F4:A2:14:09:12:28:4B:19:10:05:10:00").isEqualTo(ERROR_SOURCE); - assertMessageValidity("40:A1:0C:08:15:05:04:1E:02:04").isEqualTo(ERROR_PARAMETER_SHORT); + assertMessageValidity("4F:A1:0C:08:21:05:04:30:02:04:20").isEqualTo(ERROR_DESTINATION); + assertMessageValidity("F4:A2:14:09:18:40:75:25:10:05:10:00").isEqualTo(ERROR_SOURCE); + assertMessageValidity("40:A1:0C:08:21:05:04:30:02:04").isEqualTo(ERROR_PARAMETER_SHORT); // Out of range Day of Month - assertMessageValidity("40:A2:28:09:12:28:4B:19:10:05:10:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:28:09:18:40:75:25:10:05:10:00").isEqualTo(ERROR_PARAMETER); // Out of range Month of Year - assertMessageValidity("40:A1:0C:0F:15:05:04:1E:02:04:20").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A1:0C:0F:21:05:04:30:02:04:20").isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Hour - assertMessageValidity("40:A2:14:09:1A:28:4B:19:10:05:10:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:14:09:24:40:75:25:10:05:10:00").isEqualTo(ERROR_PARAMETER); // Out of range Start Time - Minute - assertMessageValidity("40:A1:0C:08:15:48:04:1E:02:04:20").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A1:0C:08:21:60:04:30:02:04:20").isEqualTo(ERROR_PARAMETER); // Out of range Duration - Duration Hours - assertMessageValidity("40:A2:14:09:12:28:66:19:10:05:10:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:14:09:18:40:9A:25:10:05:10:00").isEqualTo(ERROR_PARAMETER); // Out of range Duration - Minute - assertMessageValidity("40:A1:0C:08:15:05:04:3F:02:04:20").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A1:0C:08:21:05:04:60:02:04:20").isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("40:A2:14:09:12:28:4B:19:84:05:10:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:14:09:18:40:75:25:84:05:10:00").isEqualTo(ERROR_PARAMETER); // Invalid Recording Sequence - assertMessageValidity("40:A1:0C:08:15:05:04:1E:14:04:20").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A1:0C:08:15:05:04:1E:94:04:20").isEqualTo(ERROR_PARAMETER); // Invalid external source specifier - assertMessageValidity("40:A2:14:09:12:28:4B:19:10:08:10:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:14:09:18:40:75:25:10:08:10:00").isEqualTo(ERROR_PARAMETER); // Invalid External PLug - assertMessageValidity("04:A1:0C:08:15:05:04:1E:02:04:00").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("04:A1:0C:08:21:05:04:30:02:04:00").isEqualTo(ERROR_PARAMETER); // Invalid Physical Address - assertMessageValidity("40:A2:14:09:12:28:4B:19:10:05:10:10").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:A2:14:09:18:40:75:25:10:05:10:10").isEqualTo(ERROR_PARAMETER); } @Test @@ -393,9 +396,9 @@ public class HdmiCecMessageValidatorTest { // Non programmed - Invalid not programmed error info assertMessageValidity("40:35:DE").isEqualTo(ERROR_PARAMETER); // Programmed - Might not be enough space available - Invalid duration hours - assertMessageValidity("40:35:BB:96:1C").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:35:BB:9A:28").isEqualTo(ERROR_PARAMETER); // Not programmed - Duplicate - Invalid duration minutes - assertMessageValidity("40:35:EE:52:4A").isEqualTo(ERROR_PARAMETER); + assertMessageValidity("40:35:EE:82:60").isEqualTo(ERROR_PARAMETER); } @Test diff --git a/services/tests/servicestests/src/com/android/server/integrity/AppIntegrityManagerServiceImplTest.java b/services/tests/servicestests/src/com/android/server/integrity/AppIntegrityManagerServiceImplTest.java index eb9cce007b77..93aa10b9112f 100644 --- a/services/tests/servicestests/src/com/android/server/integrity/AppIntegrityManagerServiceImplTest.java +++ b/services/tests/servicestests/src/com/android/server/integrity/AppIntegrityManagerServiceImplTest.java @@ -67,11 +67,8 @@ import android.provider.Settings; import androidx.test.InstrumentationRegistry; import com.android.internal.R; -import com.android.internal.pm.parsing.PackageParser2; import com.android.server.compat.PlatformCompat; -import com.android.server.integrity.engine.RuleEvaluationEngine; import com.android.server.integrity.model.IntegrityCheckResult; -import com.android.server.pm.parsing.TestPackageParser2; import com.android.server.testutils.TestUtils; import org.junit.After; @@ -138,12 +135,8 @@ public class AppIntegrityManagerServiceImplTest { @Mock PlatformCompat mPlatformCompat; @Mock Context mMockContext; @Mock Resources mMockResources; - @Mock RuleEvaluationEngine mRuleEvaluationEngine; - @Mock IntegrityFileManager mIntegrityFileManager; @Mock Handler mHandler; - private Supplier<PackageParser2> mParserSupplier = TestPackageParser2::new; - private final Context mRealContext = InstrumentationRegistry.getTargetContext(); private PackageManager mSpyPackageManager; @@ -175,9 +168,6 @@ public class AppIntegrityManagerServiceImplTest { new AppIntegrityManagerServiceImpl( mMockContext, mPackageManagerInternal, - mParserSupplier, - mRuleEvaluationEngine, - mIntegrityFileManager, mHandler); mSpyPackageManager = spy(mRealContext.getPackageManager()); @@ -185,7 +175,6 @@ public class AppIntegrityManagerServiceImplTest { when(mMockContext.getPackageManager()).thenReturn(mSpyPackageManager); when(mMockContext.getResources()).thenReturn(mMockResources); when(mMockResources.getStringArray(anyInt())).thenReturn(new String[] {}); - when(mIntegrityFileManager.initialized()).thenReturn(true); // These are needed to override the Settings.Global.get result. when(mMockContext.getContentResolver()).thenReturn(mRealContext.getContentResolver()); setIntegrityCheckIncludesRuleProvider(true); @@ -199,98 +188,6 @@ public class AppIntegrityManagerServiceImplTest { } @Test - public void updateRuleSet_notAuthorized() throws Exception { - makeUsSystemApp(); - Rule rule = - new Rule( - new AtomicFormula.BooleanAtomicFormula(AtomicFormula.PRE_INSTALLED, true), - Rule.DENY); - TestUtils.assertExpectException( - SecurityException.class, - "Only system packages specified in config_integrityRuleProviderPackages are" - + " allowed to call this method.", - () -> - mService.updateRuleSet( - VERSION, - new ParceledListSlice<>(Arrays.asList(rule)), - /* statusReceiver= */ null)); - } - - @Test - public void updateRuleSet_notSystemApp() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(false); - Rule rule = - new Rule( - new AtomicFormula.BooleanAtomicFormula(AtomicFormula.PRE_INSTALLED, true), - Rule.DENY); - TestUtils.assertExpectException( - SecurityException.class, - "Only system packages specified in config_integrityRuleProviderPackages are" - + " allowed to call this method.", - () -> - mService.updateRuleSet( - VERSION, - new ParceledListSlice<>(Arrays.asList(rule)), - /* statusReceiver= */ null)); - } - - @Test - public void updateRuleSet_authorized() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - Rule rule = - new Rule( - new AtomicFormula.BooleanAtomicFormula(AtomicFormula.PRE_INSTALLED, true), - Rule.DENY); - - // no SecurityException - mService.updateRuleSet( - VERSION, new ParceledListSlice<>(Arrays.asList(rule)), mock(IntentSender.class)); - } - - @Test - public void updateRuleSet_correctMethodCall() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - IntentSender mockReceiver = mock(IntentSender.class); - List<Rule> rules = - Arrays.asList( - new Rule( - IntegrityFormula.Application.packageNameEquals(PACKAGE_NAME), - Rule.DENY)); - - mService.updateRuleSet(VERSION, new ParceledListSlice<>(rules), mockReceiver); - runJobInHandler(); - - verify(mIntegrityFileManager).writeRules(VERSION, TEST_FRAMEWORK_PACKAGE, rules); - ArgumentCaptor<Intent> intentCaptor = ArgumentCaptor.forClass(Intent.class); - verify(mockReceiver).sendIntent(any(), anyInt(), intentCaptor.capture(), any(), any()); - assertEquals(STATUS_SUCCESS, intentCaptor.getValue().getIntExtra(EXTRA_STATUS, -1)); - } - - @Test - public void updateRuleSet_fail() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - doThrow(new IOException()).when(mIntegrityFileManager).writeRules(any(), any(), any()); - IntentSender mockReceiver = mock(IntentSender.class); - List<Rule> rules = - Arrays.asList( - new Rule( - IntegrityFormula.Application.packageNameEquals(PACKAGE_NAME), - Rule.DENY)); - - mService.updateRuleSet(VERSION, new ParceledListSlice<>(rules), mockReceiver); - runJobInHandler(); - - verify(mIntegrityFileManager).writeRules(VERSION, TEST_FRAMEWORK_PACKAGE, rules); - ArgumentCaptor<Intent> intentCaptor = ArgumentCaptor.forClass(Intent.class); - verify(mockReceiver).sendIntent(any(), anyInt(), intentCaptor.capture(), any(), any()); - assertEquals(STATUS_FAILURE, intentCaptor.getValue().getIntExtra(EXTRA_STATUS, -1)); - } - - @Test public void broadcastReceiverRegistration() throws Exception { allowlistUsAsRuleProvider(); makeUsSystemApp(); @@ -307,91 +204,6 @@ public class AppIntegrityManagerServiceImplTest { } @Test - public void handleBroadcast_correctArgs() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - Intent intent = makeVerificationIntent(); - when(mRuleEvaluationEngine.evaluate(any())).thenReturn(IntegrityCheckResult.allow()); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - ArgumentCaptor<AppInstallMetadata> metadataCaptor = - ArgumentCaptor.forClass(AppInstallMetadata.class); - verify(mRuleEvaluationEngine).evaluate(metadataCaptor.capture()); - AppInstallMetadata appInstallMetadata = metadataCaptor.getValue(); - assertEquals(PACKAGE_NAME, appInstallMetadata.getPackageName()); - assertThat(appInstallMetadata.getAppCertificates()).containsExactly(APP_CERT); - assertEquals(INSTALLER_SHA256, appInstallMetadata.getInstallerName()); - // we cannot check installer cert because it seems to be device specific. - assertEquals(VERSION_CODE, appInstallMetadata.getVersionCode()); - assertFalse(appInstallMetadata.isPreInstalled()); - // Asserting source stamp not present. - assertFalse(appInstallMetadata.isStampPresent()); - assertFalse(appInstallMetadata.isStampVerified()); - assertFalse(appInstallMetadata.isStampTrusted()); - assertNull(appInstallMetadata.getStampCertificateHash()); - // These are hardcoded in the test apk android manifest - Map<String, String> allowedInstallers = - appInstallMetadata.getAllowedInstallersAndCertificates(); - assertEquals(2, allowedInstallers.size()); - assertEquals(PLAY_STORE_CERT, allowedInstallers.get(PLAY_STORE_PKG)); - assertEquals(INSTALLER_CERTIFICATE_NOT_EVALUATED, allowedInstallers.get(ADB_INSTALLER)); - } - - @Test - public void handleBroadcast_correctArgs_multipleCerts() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - Intent intent = makeVerificationIntent(); - intent.setDataAndType(Uri.fromFile(mTestApkTwoCerts), PACKAGE_MIME_TYPE); - when(mRuleEvaluationEngine.evaluate(any())).thenReturn(IntegrityCheckResult.allow()); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - ArgumentCaptor<AppInstallMetadata> metadataCaptor = - ArgumentCaptor.forClass(AppInstallMetadata.class); - verify(mRuleEvaluationEngine).evaluate(metadataCaptor.capture()); - AppInstallMetadata appInstallMetadata = metadataCaptor.getValue(); - assertThat(appInstallMetadata.getAppCertificates()) - .containsExactly(DUMMY_APP_TWO_CERTS_CERT_1, DUMMY_APP_TWO_CERTS_CERT_2); - } - - @Test - public void handleBroadcast_correctArgs_sourceStamp() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - Intent intent = makeVerificationIntent(); - intent.setDataAndType(Uri.fromFile(mTestApkSourceStamp), PACKAGE_MIME_TYPE); - when(mRuleEvaluationEngine.evaluate(any())).thenReturn(IntegrityCheckResult.allow()); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - ArgumentCaptor<AppInstallMetadata> metadataCaptor = - ArgumentCaptor.forClass(AppInstallMetadata.class); - verify(mRuleEvaluationEngine).evaluate(metadataCaptor.capture()); - AppInstallMetadata appInstallMetadata = metadataCaptor.getValue(); - assertTrue(appInstallMetadata.isStampPresent()); - assertTrue(appInstallMetadata.isStampVerified()); - assertTrue(appInstallMetadata.isStampTrusted()); - assertEquals(SOURCE_STAMP_CERTIFICATE_HASH, appInstallMetadata.getStampCertificateHash()); - } - - @Test public void handleBroadcast_allow() throws Exception { allowlistUsAsRuleProvider(); makeUsSystemApp(); @@ -400,7 +212,6 @@ public class AppIntegrityManagerServiceImplTest { verify(mMockContext) .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); Intent intent = makeVerificationIntent(); - when(mRuleEvaluationEngine.evaluate(any())).thenReturn(IntegrityCheckResult.allow()); broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); runJobInHandler(); @@ -410,100 +221,6 @@ public class AppIntegrityManagerServiceImplTest { 1, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); } - @Test - public void handleBroadcast_reject() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - when(mRuleEvaluationEngine.evaluate(any())) - .thenReturn( - IntegrityCheckResult.deny( - Arrays.asList( - new Rule( - new AtomicFormula.BooleanAtomicFormula( - AtomicFormula.PRE_INSTALLED, false), - Rule.DENY)))); - Intent intent = makeVerificationIntent(); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - verify(mPackageManagerInternal) - .setIntegrityVerificationResult( - 1, PackageManagerInternal.INTEGRITY_VERIFICATION_REJECT); - } - - @Test - public void handleBroadcast_notInitialized() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - when(mIntegrityFileManager.initialized()).thenReturn(false); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - Intent intent = makeVerificationIntent(); - when(mRuleEvaluationEngine.evaluate(any())).thenReturn(IntegrityCheckResult.allow()); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - // The evaluation will still run since we still evaluate manifest based rules. - verify(mPackageManagerInternal) - .setIntegrityVerificationResult( - 1, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); - } - - @Test - public void verifierAsInstaller_skipIntegrityVerification() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - setIntegrityCheckIncludesRuleProvider(false); - ArgumentCaptor<BroadcastReceiver> broadcastReceiverCaptor = - ArgumentCaptor.forClass(BroadcastReceiver.class); - verify(mMockContext, atLeastOnce()) - .registerReceiver(broadcastReceiverCaptor.capture(), any(), any(), any()); - Intent intent = makeVerificationIntent(TEST_FRAMEWORK_PACKAGE); - when(mRuleEvaluationEngine.evaluate(any())) - .thenReturn(IntegrityCheckResult.deny(/* rule= */ null)); - - broadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); - runJobInHandler(); - - verify(mPackageManagerInternal) - .setIntegrityVerificationResult( - 1, PackageManagerInternal.INTEGRITY_VERIFICATION_ALLOW); - } - - @Test - public void getCurrentRules() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - Rule rule = new Rule(IntegrityFormula.Application.packageNameEquals("package"), Rule.DENY); - when(mIntegrityFileManager.readRules(any())).thenReturn(Arrays.asList(rule)); - - assertThat(mService.getCurrentRules().getList()).containsExactly(rule); - } - - @Test - public void getWhitelistedRuleProviders_returnsEmptyForNonSystemApps() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(false); - - assertThat(mService.getWhitelistedRuleProviders()).isEmpty(); - } - - @Test - public void getWhitelistedRuleProviders() throws Exception { - allowlistUsAsRuleProvider(); - makeUsSystemApp(); - - assertThat(mService.getWhitelistedRuleProviders()).containsExactly(TEST_FRAMEWORK_PACKAGE); - } - private void allowlistUsAsRuleProvider() { Resources mockResources = mock(Resources.class); when(mockResources.getStringArray(R.array.config_integrityRuleProviderPackages)) diff --git a/services/tests/servicestests/src/com/android/server/integrity/IntegrityFileManagerTest.java b/services/tests/servicestests/src/com/android/server/integrity/IntegrityFileManagerTest.java deleted file mode 100644 index 096c80b13b89..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/IntegrityFileManagerTest.java +++ /dev/null @@ -1,243 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity; - -import static com.android.server.integrity.model.IndexingFileConstants.INDEXING_BLOCK_SIZE; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.AtomicFormula; -import android.content.integrity.AtomicFormula.LongAtomicFormula; -import android.content.integrity.AtomicFormula.StringAtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.Rule; -import android.util.Slog; - -import com.android.server.integrity.parser.RuleBinaryParser; -import com.android.server.integrity.serializer.RuleBinarySerializer; - -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.io.File; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.Comparator; -import java.util.List; - -/** Unit test for {@link IntegrityFileManager} */ -@RunWith(JUnit4.class) -public class IntegrityFileManagerTest { - private static final String TAG = "IntegrityFileManagerTest"; - - private static final String VERSION = "version"; - private static final String RULE_PROVIDER = "rule_provider"; - - private File mTmpDir; - - // under test - private IntegrityFileManager mIntegrityFileManager; - - @Before - public void setUp() throws Exception { - mTmpDir = Files.createTempDirectory("IntegrityFileManagerTest").toFile(); - Slog.i(TAG, "Using temp directory " + mTmpDir); - - // Use Xml Parser/Serializer to help with debugging since we can just print the file. - mIntegrityFileManager = - new IntegrityFileManager( - new RuleBinaryParser(), new RuleBinarySerializer(), mTmpDir); - Files.walk(mTmpDir.toPath()) - .forEach( - path -> { - Slog.i(TAG, "before " + path); - }); - } - - @After - public void tearDown() throws Exception { - Files.walk(mTmpDir.toPath()) - .forEach( - path -> { - Slog.i(TAG, "after " + path); - }); - // Sorting paths in reverse order guarantees that we delete inside files before deleting - // directory. - Files.walk(mTmpDir.toPath()) - .sorted(Comparator.reverseOrder()) - .map(Path::toFile) - .forEach(File::delete); - } - - @Test - public void testGetMetadata() throws Exception { - assertThat(mIntegrityFileManager.readMetadata()).isNull(); - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, Collections.EMPTY_LIST); - - assertThat(mIntegrityFileManager.readMetadata()).isNotNull(); - assertThat(mIntegrityFileManager.readMetadata().getVersion()).isEqualTo(VERSION); - assertThat(mIntegrityFileManager.readMetadata().getRuleProvider()).isEqualTo(RULE_PROVIDER); - } - - @Test - public void testIsInitialized() throws Exception { - assertThat(mIntegrityFileManager.initialized()).isFalse(); - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, Collections.EMPTY_LIST); - assertThat(mIntegrityFileManager.initialized()).isTrue(); - } - - @Test - public void testGetRules() throws Exception { - String packageName = "package"; - String packageCert = "cert"; - int version = 123; - Rule packageNameRule = getPackageNameIndexedRule(packageName); - Rule packageCertRule = getAppCertificateIndexedRule(packageCert); - Rule versionCodeRule = - new Rule( - new LongAtomicFormula( - AtomicFormula.VERSION_CODE, AtomicFormula.EQ, version), - Rule.DENY); - Rule randomRule = - new Rule( - new CompoundFormula( - CompoundFormula.OR, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - "abc", - /* isHashedValue= */ false), - new LongAtomicFormula( - AtomicFormula.VERSION_CODE, - AtomicFormula.EQ, - version))), - Rule.DENY); - - List<Rule> rules = - Arrays.asList(packageNameRule, packageCertRule, versionCodeRule, randomRule); - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, rules); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName(packageName) - .setAppCertificates(Collections.singletonList(packageCert)) - .setAppCertificateLineage(Collections.singletonList(packageCert)) - .setVersionCode(version) - .setInstallerName("abc") - .setInstallerCertificates(Collections.singletonList("abc")) - .setIsPreInstalled(true) - .build(); - List<Rule> rulesFetched = mIntegrityFileManager.readRules(appInstallMetadata); - - assertThat(rulesFetched) - .containsExactly(packageNameRule, packageCertRule, versionCodeRule, randomRule); - } - - @Test - public void testGetRules_indexedForManyRules() throws Exception { - String packageName = "package"; - String installerName = "installer"; - String appCertificate = "cert"; - - // Create a rule set with 2500 package name indexed, 2500 app certificate indexed and - // 500 unindexed rules. - List<Rule> rules = new ArrayList<>(); - int unindexedRuleCount = 70; - - for (int i = 0; i < 2500; i++) { - rules.add(getPackageNameIndexedRule(String.format("%s%04d", packageName, i))); - rules.add(getAppCertificateIndexedRule(String.format("%s%04d", appCertificate, i))); - } - - for (int i = 0; i < unindexedRuleCount; i++) { - rules.add(getInstallerCertificateRule(String.format("%s%04d", installerName, i))); - } - - // Write the rules and get them indexed. - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, rules); - - // Read the rules for a specific rule. - String installedPackageName = String.format("%s%04d", packageName, 264); - String installedAppCertificate = String.format("%s%04d", appCertificate, 1264); - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName(installedPackageName) - .setAppCertificates(Collections.singletonList(installedAppCertificate)) - .setAppCertificateLineage( - Collections.singletonList(installedAppCertificate)) - .setVersionCode(250) - .setInstallerName("abc") - .setInstallerCertificates(Collections.singletonList("abc")) - .setIsPreInstalled(true) - .build(); - List<Rule> rulesFetched = mIntegrityFileManager.readRules(appInstallMetadata); - - // Verify that we do not load all the rules and we have the necessary rules to evaluate. - assertThat(rulesFetched.size()) - .isEqualTo(INDEXING_BLOCK_SIZE * 2 + unindexedRuleCount); - assertThat(rulesFetched) - .containsAtLeast( - getPackageNameIndexedRule(installedPackageName), - getAppCertificateIndexedRule(installedAppCertificate)); - } - - private Rule getPackageNameIndexedRule(String packageName) { - return new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, packageName, /* isHashedValue= */false), - Rule.DENY); - } - - private Rule getAppCertificateIndexedRule(String appCertificate) { - return new Rule( - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - appCertificate, /* isHashedValue= */ false), - Rule.DENY); - } - - private Rule getInstallerCertificateRule(String installerCert) { - return new Rule( - new StringAtomicFormula( - AtomicFormula.INSTALLER_NAME, installerCert, /* isHashedValue= */false), - Rule.DENY); - } - - @Test - public void testStagingDirectoryCleared() throws Exception { - // We must push rules two times to ensure that staging directory is empty because we cleared - // it, rather than because original rules directory is empty. - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, Collections.EMPTY_LIST); - mIntegrityFileManager.writeRules(VERSION, RULE_PROVIDER, Collections.EMPTY_LIST); - - assertStagingDirectoryCleared(); - } - - private void assertStagingDirectoryCleared() { - File stagingDir = new File(mTmpDir, "integrity_staging"); - assertThat(stagingDir.exists()).isTrue(); - assertThat(stagingDir.isDirectory()).isTrue(); - assertThat(stagingDir.listFiles()).isEmpty(); - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluationEngineTest.java b/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluationEngineTest.java deleted file mode 100644 index 1c860ca31990..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluationEngineTest.java +++ /dev/null @@ -1,192 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.engine; - -import static com.google.common.truth.Truth.assertThat; - -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.when; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.Rule; - -import com.android.server.integrity.IntegrityFileManager; -import com.android.server.integrity.model.IntegrityCheckResult; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; -import org.mockito.Mock; -import org.mockito.MockitoAnnotations; - -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -@RunWith(JUnit4.class) -public class RuleEvaluationEngineTest { - - private static final String INSTALLER_1 = "installer1"; - private static final String INSTALLER_1_CERT = "installer1_cert"; - private static final String INSTALLER_2 = "installer2"; - private static final String INSTALLER_2_CERT = "installer2_cert"; - - private static final String RANDOM_INSTALLER = "random"; - private static final String RANDOM_INSTALLER_CERT = "random_cert"; - - @Mock - private IntegrityFileManager mIntegrityFileManager; - - private RuleEvaluationEngine mEngine; - - @Before - public void setUp() throws Exception { - MockitoAnnotations.initMocks(this); - - mEngine = new RuleEvaluationEngine(mIntegrityFileManager); - - when(mIntegrityFileManager.readRules(any())).thenReturn(Collections.singletonList(new Rule( - IntegrityFormula.Installer.notAllowedByManifest(), Rule.DENY))); - - when(mIntegrityFileManager.initialized()).thenReturn(true); - } - - @Test - public void testAllowedInstallers_empty() { - AppInstallMetadata appInstallMetadata1 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setInstallerCertificates(Collections.singletonList(INSTALLER_1_CERT)) - .build(); - AppInstallMetadata appInstallMetadata2 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_2) - .setInstallerCertificates(Collections.singletonList(INSTALLER_2_CERT)) - .build(); - AppInstallMetadata appInstallMetadata3 = - getAppInstallMetadataBuilder() - .setInstallerName(RANDOM_INSTALLER) - .setInstallerCertificates(Collections.singletonList(RANDOM_INSTALLER_CERT)) - .build(); - - assertThat(mEngine.evaluate(appInstallMetadata1).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - assertThat(mEngine.evaluate(appInstallMetadata2).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - assertThat(mEngine.evaluate(appInstallMetadata3).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - } - - @Test - public void testAllowedInstallers_oneElement() { - Map<String, String> allowedInstallers = - Collections.singletonMap(INSTALLER_1, INSTALLER_1_CERT); - - AppInstallMetadata appInstallMetadata1 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setInstallerCertificates(Collections.singletonList(INSTALLER_1_CERT)) - .setAllowedInstallersAndCert(allowedInstallers) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata1).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - - AppInstallMetadata appInstallMetadata2 = - getAppInstallMetadataBuilder() - .setInstallerName(RANDOM_INSTALLER) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(INSTALLER_1_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata2).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.DENY); - - AppInstallMetadata appInstallMetadata3 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(RANDOM_INSTALLER_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata3).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.DENY); - - AppInstallMetadata appInstallMetadata4 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(RANDOM_INSTALLER_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata4).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.DENY); - } - - @Test - public void testAllowedInstallers_multipleElement() { - Map<String, String> allowedInstallers = new HashMap<>(2); - allowedInstallers.put(INSTALLER_1, INSTALLER_1_CERT); - allowedInstallers.put(INSTALLER_2, INSTALLER_2_CERT); - - AppInstallMetadata appInstallMetadata1 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(INSTALLER_1_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata1).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - - AppInstallMetadata appInstallMetadata2 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_2) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(INSTALLER_2_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata2).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.ALLOW); - - AppInstallMetadata appInstallMetadata3 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_1) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(INSTALLER_2_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata3).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.DENY); - - AppInstallMetadata appInstallMetadata4 = - getAppInstallMetadataBuilder() - .setInstallerName(INSTALLER_2) - .setAllowedInstallersAndCert(allowedInstallers) - .setInstallerCertificates(Collections.singletonList(INSTALLER_1_CERT)) - .build(); - assertThat(mEngine.evaluate(appInstallMetadata4).getEffect()) - .isEqualTo(IntegrityCheckResult.Effect.DENY); - } - - /** Returns a builder with all fields filled with some placeholder data. */ - private AppInstallMetadata.Builder getAppInstallMetadataBuilder() { - return new AppInstallMetadata.Builder() - .setPackageName("abc") - .setAppCertificates(Collections.singletonList("abc")) - .setAppCertificateLineage(Collections.singletonList("abc")) - .setInstallerCertificates(Collections.singletonList("abc")) - .setInstallerName("abc") - .setVersionCode(-1) - .setIsPreInstalled(true); - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluatorTest.java b/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluatorTest.java deleted file mode 100644 index 5089f74894d9..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/engine/RuleEvaluatorTest.java +++ /dev/null @@ -1,299 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.engine; - -import static com.android.server.integrity.model.IntegrityCheckResult.Effect.ALLOW; -import static com.android.server.integrity.model.IntegrityCheckResult.Effect.DENY; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.AtomicFormula; -import android.content.integrity.AtomicFormula.LongAtomicFormula; -import android.content.integrity.AtomicFormula.StringAtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.Rule; - -import com.android.server.integrity.model.IntegrityCheckResult; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -@RunWith(JUnit4.class) -public class RuleEvaluatorTest { - - private static final String PACKAGE_NAME_1 = "com.test.app"; - private static final String PACKAGE_NAME_2 = "com.test.app2"; - private static final String APP_CERTIFICATE = "test_cert"; - private static final AppInstallMetadata APP_INSTALL_METADATA = - new AppInstallMetadata.Builder() - .setPackageName(PACKAGE_NAME_1) - .setAppCertificates(Collections.singletonList(APP_CERTIFICATE)) - .setAppCertificateLineage(Collections.singletonList(APP_CERTIFICATE)) - .setVersionCode(2) - .build(); - - @Test - public void testEvaluateRules_noRules_allow() { - List<Rule> rules = new ArrayList<>(); - - IntegrityCheckResult result = RuleEvaluator.evaluateRules(rules, APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(ALLOW); - } - - @Test - public void testEvaluateRules_noMatchedRules_allow() { - Rule rule = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_2, - /* isHashedValue= */ false), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(ALLOW); - } - - @Test - public void testEvaluateRules_oneMatch_deny() { - Rule rule1 = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - Rule.DENY); - Rule rule2 = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_2, - /* isHashedValue= */ false), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Arrays.asList(rule1, rule2), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule1); - } - - @Test - public void testEvaluateRules_multipleMatches_deny() { - Rule rule1 = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - Rule.DENY); - Rule rule2 = new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Arrays.asList(rule1, rule2), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule1, rule2); - } - - @Test - public void testEvaluateRules_ruleWithNot_deny() { - Rule rule = new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Collections.singletonList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_2, - /* isHashedValue= */ false))), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule); - } - - @Test - public void testEvaluateRules_ruleWithIntegerOperators_deny() { - Rule rule = - new Rule( - new LongAtomicFormula(AtomicFormula.VERSION_CODE, - AtomicFormula.GT, 1), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule); - } - - @Test - public void testEvaluateRules_validForm_deny() { - Rule rule = new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule); - } - - @Test - public void testEvaluateRules_orRules() { - Rule rule = new Rule( - new CompoundFormula( - CompoundFormula.OR, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule); - } - - @Test - public void testEvaluateRules_compoundFormulaWithNot_deny() { - CompoundFormula openSubFormula = - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_2, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))); - CompoundFormula compoundFormula = - new CompoundFormula(CompoundFormula.NOT, Collections.singletonList(openSubFormula)); - Rule rule = new Rule(compoundFormula, Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Collections.singletonList(rule), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(DENY); - assertThat(result.getMatchedRules()).containsExactly(rule); - } - - @Test - public void testEvaluateRules_forceAllow() { - Rule rule1 = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - Rule.FORCE_ALLOW); - Rule rule2 = new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))), - Rule.DENY); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Arrays.asList(rule1, rule2), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(ALLOW); - assertThat(result.getMatchedRules()).containsExactly(rule1); - } - - @Test - public void testEvaluateRules_multipleMatches_forceAllow() { - Rule rule1 = - new Rule( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - Rule.FORCE_ALLOW); - Rule rule2 = new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - PACKAGE_NAME_1, - /* isHashedValue= */ false), - new StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - APP_CERTIFICATE, - /* isHashedValue= */ false))), - Rule.FORCE_ALLOW); - - IntegrityCheckResult result = - RuleEvaluator.evaluateRules(Arrays.asList(rule1, rule2), APP_INSTALL_METADATA); - - assertThat(result.getEffect()).isEqualTo(ALLOW); - assertThat(result.getMatchedRules()).containsExactly(rule1, rule2); - } -}
\ No newline at end of file diff --git a/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java b/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java index 6c23ff6fcb3c..d31ed689a7da 100644 --- a/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java +++ b/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java @@ -22,8 +22,6 @@ import android.content.integrity.AtomicFormula; import android.content.integrity.CompoundFormula; import android.content.integrity.Rule; -import com.android.internal.util.FrameworkStatsLog; - import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -40,8 +38,6 @@ public class IntegrityCheckResultTest { assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW); assertThat(allowResult.getMatchedRules()).isEmpty(); - assertThat(allowResult.getLoggingResponse()) - .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED); } @Test @@ -58,9 +54,6 @@ public class IntegrityCheckResultTest { assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW); assertThat(allowResult.getMatchedRules()).containsExactly(forceAllowRule); - assertThat(allowResult.getLoggingResponse()) - .isEqualTo( - FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED); } @Test @@ -77,8 +70,6 @@ public class IntegrityCheckResultTest { assertThat(denyResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.DENY); assertThat(denyResult.getMatchedRules()).containsExactly(failedRule); - assertThat(denyResult.getLoggingResponse()) - .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED); } @Test diff --git a/services/tests/servicestests/src/com/android/server/integrity/parser/BinaryFileOperationsTest.java b/services/tests/servicestests/src/com/android/server/integrity/parser/BinaryFileOperationsTest.java deleted file mode 100644 index 723b6c5af451..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/parser/BinaryFileOperationsTest.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.parser.BinaryFileOperations.getBooleanValue; -import static com.android.server.integrity.parser.BinaryFileOperations.getIntValue; -import static com.android.server.integrity.parser.BinaryFileOperations.getStringValue; -import static com.android.server.integrity.utils.TestUtils.getBits; -import static com.android.server.integrity.utils.TestUtils.getBytes; -import static com.android.server.integrity.utils.TestUtils.getValueBits; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.IntegrityUtils; - -import com.android.server.integrity.model.BitInputStream; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.nio.charset.StandardCharsets; - -@RunWith(JUnit4.class) -public class BinaryFileOperationsTest { - - private static final String IS_NOT_HASHED = "0"; - private static final String IS_HASHED = "1"; - private static final String PACKAGE_NAME = "com.test.app"; - private static final String APP_CERTIFICATE = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - - @Test - public void testGetStringValue() throws IOException { - byte[] stringBytes = - getBytes( - IS_NOT_HASHED - + getBits(PACKAGE_NAME.length(), VALUE_SIZE_BITS) - + getValueBits(PACKAGE_NAME)); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(stringBytes)); - - String resultString = getStringValue(inputStream); - - assertThat(resultString).isEqualTo(PACKAGE_NAME); - } - - @Test - public void testGetHashedStringValue() throws IOException { - byte[] ruleBytes = - getBytes( - IS_HASHED - + getBits(APP_CERTIFICATE.length(), VALUE_SIZE_BITS) - + getValueBits(APP_CERTIFICATE)); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(ruleBytes)); - - String resultString = getStringValue(inputStream); - - assertThat(resultString) - .isEqualTo(IntegrityUtils.getHexDigest( - APP_CERTIFICATE.getBytes(StandardCharsets.UTF_8))); - } - - @Test - public void testGetStringValue_withSizeAndHashingInfo() throws IOException { - byte[] ruleBytes = getBytes(getValueBits(PACKAGE_NAME)); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(ruleBytes)); - - String resultString = getStringValue(inputStream, - PACKAGE_NAME.length(), /* isHashedValue= */false); - - assertThat(resultString).isEqualTo(PACKAGE_NAME); - } - - @Test - public void testGetIntValue() throws IOException { - int randomValue = 15; - byte[] ruleBytes = getBytes(getBits(randomValue, /* numOfBits= */ 32)); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(ruleBytes)); - - assertThat(getIntValue(inputStream)).isEqualTo(randomValue); - } - - @Test - public void testGetBooleanValue_true() throws IOException { - String booleanValue = "1"; - byte[] ruleBytes = getBytes(booleanValue); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(ruleBytes)); - - assertThat(getBooleanValue(inputStream)).isEqualTo(true); - } - - @Test - public void testGetBooleanValue_false() throws IOException { - String booleanValue = "0"; - byte[] ruleBytes = getBytes(booleanValue); - BitInputStream inputStream = new BitInputStream(new ByteArrayInputStream(ruleBytes)); - - assertThat(getBooleanValue(inputStream)).isEqualTo(false); - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/parser/RuleBinaryParserTest.java b/services/tests/servicestests/src/com/android/server/integrity/parser/RuleBinaryParserTest.java deleted file mode 100644 index 03363a100841..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/parser/RuleBinaryParserTest.java +++ /dev/null @@ -1,693 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.parser; - -import static com.android.server.integrity.model.ComponentBitSize.ATOMIC_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_END; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.CONNECTOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.DEFAULT_FORMAT_VERSION; -import static com.android.server.integrity.model.ComponentBitSize.EFFECT_BITS; -import static com.android.server.integrity.model.ComponentBitSize.FORMAT_VERSION_BITS; -import static com.android.server.integrity.model.ComponentBitSize.KEY_BITS; -import static com.android.server.integrity.model.ComponentBitSize.OPERATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.SEPARATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.utils.TestUtils.getBits; -import static com.android.server.integrity.utils.TestUtils.getBytes; -import static com.android.server.integrity.utils.TestUtils.getValueBits; -import static com.android.server.testutils.TestUtils.assertExpectException; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.IntegrityUtils; -import android.content.integrity.Rule; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.nio.ByteBuffer; -import java.nio.charset.StandardCharsets; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -@RunWith(JUnit4.class) -public class RuleBinaryParserTest { - - private static final String COMPOUND_FORMULA_START_BITS = - getBits(COMPOUND_FORMULA_START, SEPARATOR_BITS); - private static final String COMPOUND_FORMULA_END_BITS = - getBits(COMPOUND_FORMULA_END, SEPARATOR_BITS); - private static final String ATOMIC_FORMULA_START_BITS = - getBits(ATOMIC_FORMULA_START, SEPARATOR_BITS); - private static final int INVALID_FORMULA_SEPARATOR_VALUE = (1 << SEPARATOR_BITS) - 1; - private static final String INVALID_FORMULA_SEPARATOR_BITS = - getBits(INVALID_FORMULA_SEPARATOR_VALUE, SEPARATOR_BITS); - - private static final String NOT = getBits(CompoundFormula.NOT, CONNECTOR_BITS); - private static final String AND = getBits(CompoundFormula.AND, CONNECTOR_BITS); - private static final String OR = getBits(CompoundFormula.OR, CONNECTOR_BITS); - private static final int INVALID_CONNECTOR_VALUE = 3; - private static final String INVALID_CONNECTOR = - getBits(INVALID_CONNECTOR_VALUE, CONNECTOR_BITS); - - private static final String PACKAGE_NAME = getBits(AtomicFormula.PACKAGE_NAME, KEY_BITS); - private static final String APP_CERTIFICATE = getBits(AtomicFormula.APP_CERTIFICATE, KEY_BITS); - private static final String APP_CERTIFICATE_LINEAGE = - getBits(AtomicFormula.APP_CERTIFICATE_LINEAGE, KEY_BITS); - private static final String VERSION_CODE = getBits(AtomicFormula.VERSION_CODE, KEY_BITS); - private static final String PRE_INSTALLED = getBits(AtomicFormula.PRE_INSTALLED, KEY_BITS); - private static final int INVALID_KEY_VALUE = 9; - private static final String INVALID_KEY = getBits(INVALID_KEY_VALUE, KEY_BITS); - - private static final String EQ = getBits(AtomicFormula.EQ, OPERATOR_BITS); - private static final int INVALID_OPERATOR_VALUE = 5; - private static final String INVALID_OPERATOR = getBits(INVALID_OPERATOR_VALUE, OPERATOR_BITS); - - private static final String IS_NOT_HASHED = "0"; - private static final String IS_HASHED = "1"; - - private static final String DENY = getBits(Rule.DENY, EFFECT_BITS); - private static final int INVALID_EFFECT_VALUE = 5; - private static final String INVALID_EFFECT = getBits(INVALID_EFFECT_VALUE, EFFECT_BITS); - - private static final String START_BIT = "1"; - private static final String END_BIT = "1"; - private static final String INVALID_MARKER_BIT = "0"; - - private static final byte[] DEFAULT_FORMAT_VERSION_BYTES = - getBytes(getBits(DEFAULT_FORMAT_VERSION, FORMAT_VERSION_BITS)); - - private static final List<RuleIndexRange> NO_INDEXING = Collections.emptyList(); - - @Test - public void testBinaryStream_validCompoundFormula_noIndexing() throws Exception { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Collections.singletonList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false))), - Rule.DENY); - - List<Rule> rules = - binaryParser.parse(RandomAccessObject.ofBytes(rule.array()), NO_INDEXING); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validCompoundFormula_notConnector_noIndexing() throws Exception { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Collections.singletonList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false))), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validCompoundFormula_andConnector_noIndexing() throws Exception { - String packageName = "com.test.app"; - String appCertificate = "test_cert"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + AND - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - appCertificate, - /* isHashedValue= */ false))), - Rule.DENY); - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validCompoundFormula_orConnector_noIndexing() throws Exception { - String packageName = "com.test.app"; - String appCertificate = "test_cert"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + OR - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new CompoundFormula( - CompoundFormula.OR, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - appCertificate, - /* isHashedValue= */ false))), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validAtomicFormula_stringValue_noIndexing() throws Exception { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validAtomicFormula_hashedValue_noIndexing() throws Exception { - String appCertificate = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - IntegrityUtils.getHexDigest( - appCertificate.getBytes(StandardCharsets.UTF_8)), - /* isHashedValue= */ true), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validAtomicFormulaWithCertificateLineage() throws Exception { - String appCertificate = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE_LINEAGE - + EQ - + IS_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE_LINEAGE, - IntegrityUtils.getHexDigest( - appCertificate.getBytes(StandardCharsets.UTF_8)), - /* isHashedValue= */ true), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validAtomicFormula_integerValue_noIndexing() throws Exception { - int versionCode = 1; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + VERSION_CODE - + EQ - + getBits(versionCode, /* numOfBits= */ 64) - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new AtomicFormula.LongAtomicFormula( - AtomicFormula.VERSION_CODE, AtomicFormula.EQ, 1), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_validAtomicFormula_booleanValue_noIndexing() throws Exception { - String isPreInstalled = "1"; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + PRE_INSTALLED - + EQ - + isPreInstalled - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - Rule expectedRule = - new Rule( - new AtomicFormula.BooleanAtomicFormula( - AtomicFormula.PRE_INSTALLED, true), - Rule.DENY); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEqualTo(Collections.singletonList(expectedRule)); - } - - @Test - public void testBinaryString_invalidAtomicFormula_noIndexing() { - int versionCode = 1; - String ruleBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + VERSION_CODE - + EQ - + getBits(versionCode, /* numOfBits= */ 64) - + DENY; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex= */ "A rule must end with a '1' bit.", - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_withNoRuleList_noIndexing() throws RuleParseException { - ByteBuffer rule = ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - RuleParser binaryParser = new RuleBinaryParser(); - - List<Rule> rules = binaryParser.parse(rule.array()); - - assertThat(rules).isEmpty(); - } - - @Test - public void testBinaryString_withEmptyRule_noIndexing() { - String ruleBits = START_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ "", - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidCompoundFormula_invalidNumberOfFormulas_noIndexing() { - String packageName = "com.test.app"; - String appCertificate = "test_cert"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ "Connector NOT must have 1 formula only", - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidOperator_noIndexing() { - int versionCode = 1; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + VERSION_CODE - + INVALID_OPERATOR - + getBits(versionCode, /* numOfBits= */ 64) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ String.format( - "Unknown operator: %d", INVALID_OPERATOR_VALUE), - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidEffect_noIndexing() { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + INVALID_EFFECT - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ String.format( - "Unknown effect: %d", INVALID_EFFECT_VALUE), - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidConnector_noIndexing() { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + INVALID_CONNECTOR - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ String.format( - "Unknown connector: %d", INVALID_CONNECTOR_VALUE), - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidKey_noIndexing() { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + INVALID_KEY - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ String.format( - "Unknown key: %d", INVALID_KEY_VALUE), - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidSeparator_noIndexing() { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + INVALID_FORMULA_SEPARATOR_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ String.format( - "Unknown formula separator: %d", INVALID_FORMULA_SEPARATOR_VALUE), - () -> binaryParser.parse(rule.array())); - } - - @Test - public void testBinaryString_invalidRule_invalidEndMarker_noIndexing() { - String packageName = "com.test.app"; - String ruleBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + INVALID_MARKER_BIT; - byte[] ruleBytes = getBytes(ruleBits); - ByteBuffer rule = - ByteBuffer.allocate(DEFAULT_FORMAT_VERSION_BYTES.length + ruleBytes.length); - rule.put(DEFAULT_FORMAT_VERSION_BYTES); - rule.put(ruleBytes); - RuleParser binaryParser = new RuleBinaryParser(); - - assertExpectException( - RuleParseException.class, - /* expectedExceptionMessageRegex */ "A rule must end with a '1' bit", - () -> binaryParser.parse(rule.array())); - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/parser/RuleIndexingControllerTest.java b/services/tests/servicestests/src/com/android/server/integrity/parser/RuleIndexingControllerTest.java deleted file mode 100644 index 370bd80003bd..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/parser/RuleIndexingControllerTest.java +++ /dev/null @@ -1,216 +0,0 @@ -/* - * Copyright (C) 2020 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.server.integrity.parser; - -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.model.IndexingFileConstants.END_INDEXING_KEY; -import static com.android.server.integrity.model.IndexingFileConstants.START_INDEXING_KEY; -import static com.android.server.integrity.utils.TestUtils.getBits; -import static com.android.server.integrity.utils.TestUtils.getBytes; -import static com.android.server.integrity.utils.TestUtils.getValueBits; - -import static com.google.common.truth.Truth.assertThat; - -import static org.testng.Assert.assertThrows; - -import android.content.integrity.AppInstallMetadata; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteBuffer; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -@RunWith(JUnit4.class) -public class RuleIndexingControllerTest { - - @Test - public void verifyIndexRangeSearchIsCorrect() throws IOException { - InputStream inputStream = obtainDefaultIndexingMapForTest(); - - RuleIndexingController indexingController = new RuleIndexingController(inputStream); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName("ddd") - .setAppCertificates(Collections.singletonList("777")) - .setAppCertificateLineage(Collections.singletonList("777")) - .build(); - - List<RuleIndexRange> resultingIndexes = - indexingController.identifyRulesToEvaluate(appInstallMetadata); - - assertThat(resultingIndexes) - .containsExactly( - new RuleIndexRange(200, 300), - new RuleIndexRange(700, 800), - new RuleIndexRange(900, 945)); - } - - @Test - public void verifyIndexRangeSearchIsCorrect_multipleAppCertificates() throws IOException { - InputStream inputStream = obtainDefaultIndexingMapForTest(); - - RuleIndexingController indexingController = new RuleIndexingController(inputStream); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName("ddd") - .setAppCertificates(Arrays.asList("777", "999")) - .setAppCertificateLineage(Arrays.asList("777", "999")) - .build(); - - List<RuleIndexRange> resultingIndexes = - indexingController.identifyRulesToEvaluate(appInstallMetadata); - - assertThat(resultingIndexes) - .containsExactly( - new RuleIndexRange(200, 300), - new RuleIndexRange(700, 800), - new RuleIndexRange(800, 900), - new RuleIndexRange(900, 945)); - } - - @Test - public void verifyIndexRangeSearchIsCorrect_keysInFirstAndLastBlock() throws IOException { - InputStream inputStream = obtainDefaultIndexingMapForTest(); - - RuleIndexingController indexingController = new RuleIndexingController(inputStream); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName("bbb") - .setAppCertificates(Collections.singletonList("999")) - .setAppCertificateLineage(Collections.singletonList("999")) - .build(); - - List<RuleIndexRange> resultingIndexes = - indexingController.identifyRulesToEvaluate(appInstallMetadata); - - assertThat(resultingIndexes) - .containsExactly( - new RuleIndexRange(100, 200), - new RuleIndexRange(800, 900), - new RuleIndexRange(900, 945)); - } - - @Test - public void verifyIndexRangeSearchIsCorrect_keysMatchWithValues() throws IOException { - InputStream inputStream = obtainDefaultIndexingMapForTest(); - - RuleIndexingController indexingController = new RuleIndexingController(inputStream); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName("ccc") - .setAppCertificates(Collections.singletonList("444")) - .setAppCertificateLineage(Collections.singletonList("444")) - .build(); - - List<RuleIndexRange> resultingIndexes = - indexingController.identifyRulesToEvaluate(appInstallMetadata); - - assertThat(resultingIndexes) - .containsExactly( - new RuleIndexRange(200, 300), - new RuleIndexRange(700, 800), - new RuleIndexRange(900, 945)); - } - - @Test - public void verifyIndexRangeSearchIsCorrect_noIndexesAvailable() throws IOException { - byte[] stringBytes = - getBytes( - getKeyValueString(START_INDEXING_KEY, 100) - + getKeyValueString(END_INDEXING_KEY, 500) - + getKeyValueString(START_INDEXING_KEY, 500) - + getKeyValueString(END_INDEXING_KEY, 900) - + getKeyValueString(START_INDEXING_KEY, 900) - + getKeyValueString(END_INDEXING_KEY, 945)); - ByteBuffer rule = ByteBuffer.allocate(stringBytes.length); - rule.put(stringBytes); - InputStream inputStream = new ByteArrayInputStream(rule.array()); - - RuleIndexingController indexingController = new RuleIndexingController(inputStream); - - AppInstallMetadata appInstallMetadata = - new AppInstallMetadata.Builder() - .setPackageName("ccc") - .setAppCertificates(Collections.singletonList("444")) - .setAppCertificateLineage(Collections.singletonList("444")) - .build(); - - List<RuleIndexRange> resultingIndexes = - indexingController.identifyRulesToEvaluate(appInstallMetadata); - - assertThat(resultingIndexes) - .containsExactly( - new RuleIndexRange(100, 500), - new RuleIndexRange(500, 900), - new RuleIndexRange(900, 945)); - } - - @Test - public void verifyIndexingFileIsCorrupt() throws IOException { - byte[] stringBytes = - getBytes( - getKeyValueString(START_INDEXING_KEY, 100) - + getKeyValueString("ccc", 200) - + getKeyValueString(END_INDEXING_KEY, 300) - + getKeyValueString(END_INDEXING_KEY, 900)); - ByteBuffer rule = ByteBuffer.allocate(stringBytes.length); - rule.put(stringBytes); - InputStream inputStream = new ByteArrayInputStream(rule.array()); - - assertThrows(IllegalStateException.class, - () -> new RuleIndexingController(inputStream)); - } - - private static InputStream obtainDefaultIndexingMapForTest() { - byte[] stringBytes = - getBytes( - getKeyValueString(START_INDEXING_KEY, 100) - + getKeyValueString("ccc", 200) - + getKeyValueString("eee", 300) - + getKeyValueString("hhh", 400) - + getKeyValueString(END_INDEXING_KEY, 500) - + getKeyValueString(START_INDEXING_KEY, 500) - + getKeyValueString("111", 600) - + getKeyValueString("444", 700) - + getKeyValueString("888", 800) - + getKeyValueString(END_INDEXING_KEY, 900) - + getKeyValueString(START_INDEXING_KEY, 900) - + getKeyValueString(END_INDEXING_KEY, 945)); - ByteBuffer rule = ByteBuffer.allocate(stringBytes.length); - rule.put(stringBytes); - return new ByteArrayInputStream(rule.array()); - } - - private static String getKeyValueString(String key, int value) { - String isNotHashed = "0"; - return isNotHashed - + getBits(key.length(), VALUE_SIZE_BITS) - + getValueBits(key) - + getBits(value, /* numOfBits= */ 32); - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleBinarySerializerTest.java b/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleBinarySerializerTest.java deleted file mode 100644 index 9ed2e88bd6a2..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleBinarySerializerTest.java +++ /dev/null @@ -1,914 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import static com.android.server.integrity.model.ComponentBitSize.ATOMIC_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_END; -import static com.android.server.integrity.model.ComponentBitSize.COMPOUND_FORMULA_START; -import static com.android.server.integrity.model.ComponentBitSize.CONNECTOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.DEFAULT_FORMAT_VERSION; -import static com.android.server.integrity.model.ComponentBitSize.EFFECT_BITS; -import static com.android.server.integrity.model.ComponentBitSize.FORMAT_VERSION_BITS; -import static com.android.server.integrity.model.ComponentBitSize.KEY_BITS; -import static com.android.server.integrity.model.ComponentBitSize.OPERATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.SEPARATOR_BITS; -import static com.android.server.integrity.model.ComponentBitSize.VALUE_SIZE_BITS; -import static com.android.server.integrity.model.IndexingFileConstants.END_INDEXING_KEY; -import static com.android.server.integrity.model.IndexingFileConstants.INDEXING_BLOCK_SIZE; -import static com.android.server.integrity.model.IndexingFileConstants.START_INDEXING_KEY; -import static com.android.server.integrity.serializer.RuleBinarySerializer.INDEXED_RULE_SIZE_LIMIT; -import static com.android.server.integrity.serializer.RuleBinarySerializer.NONINDEXED_RULE_SIZE_LIMIT; -import static com.android.server.integrity.utils.TestUtils.getBits; -import static com.android.server.integrity.utils.TestUtils.getBytes; -import static com.android.server.integrity.utils.TestUtils.getValueBits; -import static com.android.server.testutils.TestUtils.assertExpectException; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.IntegrityUtils; -import android.content.integrity.Rule; - -import androidx.annotation.NonNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.io.ByteArrayOutputStream; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.Optional; - -@RunWith(JUnit4.class) -public class RuleBinarySerializerTest { - - private static final String SAMPLE_INSTALLER_NAME = "com.test.installer"; - private static final String SAMPLE_INSTALLER_CERT = "installer_cert"; - - private static final String COMPOUND_FORMULA_START_BITS = - getBits(COMPOUND_FORMULA_START, SEPARATOR_BITS); - private static final String COMPOUND_FORMULA_END_BITS = - getBits(COMPOUND_FORMULA_END, SEPARATOR_BITS); - private static final String ATOMIC_FORMULA_START_BITS = - getBits(ATOMIC_FORMULA_START, SEPARATOR_BITS); - - private static final String NOT = getBits(CompoundFormula.NOT, CONNECTOR_BITS); - private static final String AND = getBits(CompoundFormula.AND, CONNECTOR_BITS); - private static final String OR = getBits(CompoundFormula.OR, CONNECTOR_BITS); - - private static final String PACKAGE_NAME = getBits(AtomicFormula.PACKAGE_NAME, KEY_BITS); - private static final String APP_CERTIFICATE = getBits(AtomicFormula.APP_CERTIFICATE, KEY_BITS); - private static final String INSTALLER_NAME = getBits(AtomicFormula.INSTALLER_NAME, KEY_BITS); - private static final String INSTALLER_CERTIFICATE = - getBits(AtomicFormula.INSTALLER_CERTIFICATE, KEY_BITS); - private static final String VERSION_CODE = getBits(AtomicFormula.VERSION_CODE, KEY_BITS); - private static final String PRE_INSTALLED = getBits(AtomicFormula.PRE_INSTALLED, KEY_BITS); - - private static final String EQ = getBits(AtomicFormula.EQ, OPERATOR_BITS); - - private static final String IS_NOT_HASHED = "0"; - private static final String IS_HASHED = "1"; - - private static final String DENY = getBits(Rule.DENY, EFFECT_BITS); - - private static final String START_BIT = "1"; - private static final String END_BIT = "1"; - - private static final byte[] DEFAULT_FORMAT_VERSION_BYTES = - getBytes(getBits(DEFAULT_FORMAT_VERSION, FORMAT_VERSION_BITS)); - - private static final String SERIALIZED_START_INDEXING_KEY = - IS_NOT_HASHED - + getBits(START_INDEXING_KEY.length(), VALUE_SIZE_BITS) - + getValueBits(START_INDEXING_KEY); - private static final String SERIALIZED_END_INDEXING_KEY = - IS_NOT_HASHED - + getBits(END_INDEXING_KEY.length(), VALUE_SIZE_BITS) - + getValueBits(END_INDEXING_KEY); - - @Test - public void testBinaryString_serializeNullRules() { - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - /* expectedExceptionMessageRegex= */ "Null rules cannot be serialized.", - () -> binarySerializer.serialize(null, /* formatVersion= */ Optional.empty())); - } - - @Test - public void testBinaryString_emptyRules() throws Exception { - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - binarySerializer.serialize( - Collections.emptyList(), - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream); - - ByteArrayOutputStream expectedRuleOutputStream = new ByteArrayOutputStream(); - expectedRuleOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - assertThat(ruleOutputStream.toByteArray()) - .isEqualTo(expectedRuleOutputStream.toByteArray()); - - ByteArrayOutputStream expectedIndexingOutputStream = new ByteArrayOutputStream(); - String serializedIndexingBytes = - SERIALIZED_START_INDEXING_KEY - + getBits(DEFAULT_FORMAT_VERSION_BYTES.length, /* numOfBits= */ 32) - + SERIALIZED_END_INDEXING_KEY - + getBits(DEFAULT_FORMAT_VERSION_BYTES.length, /* numOfBits= */ 32); - byte[] expectedIndexingBytes = - getBytes( - serializedIndexingBytes - + serializedIndexingBytes - + serializedIndexingBytes); - expectedIndexingOutputStream.write(expectedIndexingBytes); - assertThat(indexingOutputStream.toByteArray()) - .isEqualTo(expectedIndexingOutputStream.toByteArray()); - } - - @Test - public void testBinaryStream_serializeValidCompoundFormula() throws Exception { - String packageName = "com.test.app"; - Rule rule = - new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Collections.singletonList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false))), - Rule.DENY); - - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - binarySerializer.serialize( - Collections.singletonList(rule), - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream); - - String expectedBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - ByteArrayOutputStream expectedRuleOutputStream = new ByteArrayOutputStream(); - expectedRuleOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - expectedRuleOutputStream.write(getBytes(expectedBits)); - assertThat(ruleOutputStream.toByteArray()) - .isEqualTo(expectedRuleOutputStream.toByteArray()); - - ByteArrayOutputStream expectedIndexingOutputStream = new ByteArrayOutputStream(); - String expectedIndexingBitsForIndexed = - SERIALIZED_START_INDEXING_KEY - + getBits(DEFAULT_FORMAT_VERSION_BYTES.length, /* numOfBits= */ 32) - + SERIALIZED_END_INDEXING_KEY - + getBits(DEFAULT_FORMAT_VERSION_BYTES.length, /* numOfBits= */ 32); - String expectedIndexingBitsForUnindexed = - SERIALIZED_START_INDEXING_KEY - + getBits(DEFAULT_FORMAT_VERSION_BYTES.length, /* numOfBits= */ 32) - + SERIALIZED_END_INDEXING_KEY - + getBits( - DEFAULT_FORMAT_VERSION_BYTES.length + getBytes(expectedBits).length, - /* numOfBits= */ 32); - expectedIndexingOutputStream.write( - getBytes( - expectedIndexingBitsForIndexed - + expectedIndexingBitsForIndexed - + expectedIndexingBitsForUnindexed)); - - assertThat(indexingOutputStream.toByteArray()) - .isEqualTo(expectedIndexingOutputStream.toByteArray()); - } - - @Test - public void testBinaryString_serializeValidCompoundFormula_notConnector() throws Exception { - String packageName = "com.test.app"; - Rule rule = - new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Collections.singletonList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false))), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + NOT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidCompoundFormula_andConnector() throws Exception { - String packageName = "com.test.app"; - String appCertificate = "test_cert"; - Rule rule = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - appCertificate, - /* isHashedValue= */ false))), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + AND - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidCompoundFormula_orConnector() throws Exception { - String packageName = "com.test.app"; - String appCertificate = "test_cert"; - Rule rule = - new Rule( - new CompoundFormula( - CompoundFormula.OR, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - appCertificate, - /* isHashedValue= */ false))), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + COMPOUND_FORMULA_START_BITS - + OR - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidAtomicFormula_stringValue() throws Exception { - String packageName = "com.test.app"; - Rule rule = - new Rule( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidAtomicFormula_hashedValue() throws Exception { - String appCertificate = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - Rule rule = - new Rule( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - IntegrityUtils.getHexDigest( - appCertificate.getBytes(StandardCharsets.UTF_8)), - /* isHashedValue= */ true), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidAtomicFormula_integerValue() throws Exception { - long versionCode = 1; - Rule rule = - new Rule( - new AtomicFormula.LongAtomicFormula( - AtomicFormula.VERSION_CODE, AtomicFormula.EQ, versionCode), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + VERSION_CODE - + EQ - + getBits(versionCode, /* numOfBits= */ 64) - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeValidAtomicFormula_booleanValue() throws Exception { - String preInstalled = "1"; - Rule rule = - new Rule( - new AtomicFormula.BooleanAtomicFormula(AtomicFormula.PRE_INSTALLED, true), - Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = - START_BIT - + ATOMIC_FORMULA_START_BITS - + PRE_INSTALLED - + EQ - + preInstalled - + DENY - + END_BIT; - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - byteArrayOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - byteArrayOutputStream.write(getBytes(expectedBits)); - byte[] expectedRules = byteArrayOutputStream.toByteArray(); - - byte[] actualRules = - binarySerializer.serialize( - Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_serializeInvalidFormulaType() throws Exception { - IntegrityFormula invalidFormula = getInvalidFormula(); - Rule rule = new Rule(invalidFormula, Rule.DENY); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - /* expectedExceptionMessageRegex= */ "Malformed rule identified.", - () -> - binarySerializer.serialize( - Collections.singletonList(rule), - /* formatVersion= */ Optional.empty())); - } - - @Test - public void testBinaryString_serializeFormatVersion() throws Exception { - int formatVersion = 1; - RuleSerializer binarySerializer = new RuleBinarySerializer(); - String expectedBits = getBits(formatVersion, FORMAT_VERSION_BITS); - byte[] expectedRules = getBytes(expectedBits); - - byte[] actualRules = - binarySerializer.serialize( - Collections.emptyList(), /* formatVersion= */ Optional.of(formatVersion)); - - assertThat(actualRules).isEqualTo(expectedRules); - } - - @Test - public void testBinaryString_verifyManyRulesAreIndexedCorrectly() throws Exception { - int ruleCount = 225; - String packagePrefix = "package.name."; - String appCertificatePrefix = "app.cert."; - String installerNamePrefix = "installer."; - - // Create the rule set with 225 package name based rules, 225 app certificate indexed rules, - // and 225 non-indexed rules.. - List<Rule> ruleList = new ArrayList(); - for (int count = 0; count < ruleCount; count++) { - ruleList.add( - getRuleWithPackageNameAndSampleInstallerName( - String.format("%s%04d", packagePrefix, count))); - } - for (int count = 0; count < ruleCount; count++) { - ruleList.add( - getRuleWithAppCertificateAndSampleInstallerName( - String.format("%s%04d", appCertificatePrefix, count))); - } - for (int count = 0; count < ruleCount; count++) { - ruleList.add( - getNonIndexedRuleWithInstallerName( - String.format("%s%04d", installerNamePrefix, count))); - } - - // Serialize the rules. - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - binarySerializer.serialize( - ruleList, - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream); - - // Verify the rules file and index files. - ByteArrayOutputStream expectedOrderedRuleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream expectedIndexingOutputStream = new ByteArrayOutputStream(); - - expectedOrderedRuleOutputStream.write(DEFAULT_FORMAT_VERSION_BYTES); - int totalBytesWritten = DEFAULT_FORMAT_VERSION_BYTES.length; - - String expectedIndexingBytesForPackageNameIndexed = - SERIALIZED_START_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - for (int count = 0; count < ruleCount; count++) { - String packageName = String.format("%s%04d", packagePrefix, count); - if (count > 0 && count % INDEXING_BLOCK_SIZE == 0) { - expectedIndexingBytesForPackageNameIndexed += - IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + getBits(totalBytesWritten, /* numOfBits= */ 32); - } - - byte[] bytesForPackage = - getBytes( - getSerializedCompoundRuleWithPackageNameAndSampleInstallerName( - packageName)); - expectedOrderedRuleOutputStream.write(bytesForPackage); - totalBytesWritten += bytesForPackage.length; - } - expectedIndexingBytesForPackageNameIndexed += - SERIALIZED_END_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - - String expectedIndexingBytesForAppCertificateIndexed = - SERIALIZED_START_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - for (int count = 0; count < ruleCount; count++) { - String appCertificate = String.format("%s%04d", appCertificatePrefix, count); - if (count > 0 && count % INDEXING_BLOCK_SIZE == 0) { - expectedIndexingBytesForAppCertificateIndexed += - IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + getBits(totalBytesWritten, /* numOfBits= */ 32); - } - - byte[] bytesForPackage = - getBytes( - getSerializedCompoundRuleWithCertificateNameAndSampleInstallerName( - appCertificate)); - expectedOrderedRuleOutputStream.write(bytesForPackage); - totalBytesWritten += bytesForPackage.length; - } - expectedIndexingBytesForAppCertificateIndexed += - SERIALIZED_END_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - - String expectedIndexingBytesForUnindexed = - SERIALIZED_START_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - for (int count = 0; count < ruleCount; count++) { - byte[] bytesForPackage = - getBytes( - getSerializedCompoundRuleWithInstallerNameAndInstallerCert( - String.format("%s%04d", installerNamePrefix, count))); - expectedOrderedRuleOutputStream.write(bytesForPackage); - totalBytesWritten += bytesForPackage.length; - } - expectedIndexingBytesForUnindexed += - SERIALIZED_END_INDEXING_KEY + getBits(totalBytesWritten, /* numOfBits= */ 32); - expectedIndexingOutputStream.write( - getBytes( - expectedIndexingBytesForPackageNameIndexed - + expectedIndexingBytesForAppCertificateIndexed - + expectedIndexingBytesForUnindexed)); - - assertThat(ruleOutputStream.toByteArray()) - .isEqualTo(expectedOrderedRuleOutputStream.toByteArray()); - assertThat(indexingOutputStream.toByteArray()) - .isEqualTo(expectedIndexingOutputStream.toByteArray()); - } - - @Test - public void testBinaryString_totalRuleSizeLimitReached() { - int ruleCount = INDEXED_RULE_SIZE_LIMIT - 1; - String packagePrefix = "package.name."; - String appCertificatePrefix = "app.cert."; - String installerNamePrefix = "installer."; - - // Create the rule set with more rules than the system can handle in total. - List<Rule> ruleList = new ArrayList(); - for (int count = 0; count < ruleCount; count++) { - ruleList.add( - getRuleWithPackageNameAndSampleInstallerName( - String.format("%s%04d", packagePrefix, count))); - } - for (int count = 0; count < ruleCount; count++) { - ruleList.add( - getRuleWithAppCertificateAndSampleInstallerName( - String.format("%s%04d", appCertificatePrefix, count))); - } - for (int count = 0; count < NONINDEXED_RULE_SIZE_LIMIT - 1; count++) { - ruleList.add( - getNonIndexedRuleWithInstallerName( - String.format("%s%04d", installerNamePrefix, count))); - } - - // Serialize the rules. - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - "Too many rules provided", - () -> - binarySerializer.serialize( - ruleList, - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream)); - } - - @Test - public void testBinaryString_tooManyPackageNameIndexedRules() { - String packagePrefix = "package.name."; - - // Create a rule set with too many package name indexed rules. - List<Rule> ruleList = new ArrayList(); - for (int count = 0; count < INDEXED_RULE_SIZE_LIMIT + 1; count++) { - ruleList.add( - getRuleWithPackageNameAndSampleInstallerName( - String.format("%s%04d", packagePrefix, count))); - } - - // Serialize the rules. - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - "Too many rules provided in the indexing group.", - () -> - binarySerializer.serialize( - ruleList, - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream)); - } - - @Test - public void testBinaryString_tooManyAppCertificateIndexedRules() { - String appCertificatePrefix = "app.cert."; - - // Create a rule set with too many app certificate indexed rules. - List<Rule> ruleList = new ArrayList(); - for (int count = 0; count < INDEXED_RULE_SIZE_LIMIT + 1; count++) { - ruleList.add( - getRuleWithAppCertificateAndSampleInstallerName( - String.format("%s%04d", appCertificatePrefix, count))); - } - - // Serialize the rules. - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - "Too many rules provided in the indexing group.", - () -> - binarySerializer.serialize( - ruleList, - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream)); - } - - @Test - public void testBinaryString_tooManyNonIndexedRules() { - String installerNamePrefix = "installer."; - - // Create a rule set with too many unindexed rules. - List<Rule> ruleList = new ArrayList(); - for (int count = 0; count < NONINDEXED_RULE_SIZE_LIMIT + 1; count++) { - ruleList.add( - getNonIndexedRuleWithInstallerName( - String.format("%s%04d", installerNamePrefix, count))); - } - - // Serialize the rules. - ByteArrayOutputStream ruleOutputStream = new ByteArrayOutputStream(); - ByteArrayOutputStream indexingOutputStream = new ByteArrayOutputStream(); - RuleSerializer binarySerializer = new RuleBinarySerializer(); - - assertExpectException( - RuleSerializeException.class, - "Too many rules provided in the indexing group.", - () -> - binarySerializer.serialize( - ruleList, - /* formatVersion= */ Optional.empty(), - ruleOutputStream, - indexingOutputStream)); - } - - private Rule getRuleWithPackageNameAndSampleInstallerName(String packageName) { - return new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_NAME, - SAMPLE_INSTALLER_NAME, - /* isHashedValue= */ false))), - Rule.DENY); - } - - private String getSerializedCompoundRuleWithPackageNameAndSampleInstallerName( - String packageName) { - return START_BIT - + COMPOUND_FORMULA_START_BITS - + AND - + ATOMIC_FORMULA_START_BITS - + PACKAGE_NAME - + EQ - + IS_NOT_HASHED - + getBits(packageName.length(), VALUE_SIZE_BITS) - + getValueBits(packageName) - + ATOMIC_FORMULA_START_BITS - + INSTALLER_NAME - + EQ - + IS_NOT_HASHED - + getBits(SAMPLE_INSTALLER_NAME.length(), VALUE_SIZE_BITS) - + getValueBits(SAMPLE_INSTALLER_NAME) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - } - - private Rule getRuleWithAppCertificateAndSampleInstallerName(String certificate) { - return new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - certificate, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_NAME, - SAMPLE_INSTALLER_NAME, - /* isHashedValue= */ false))), - Rule.DENY); - } - - private String getSerializedCompoundRuleWithCertificateNameAndSampleInstallerName( - String appCertificate) { - return START_BIT - + COMPOUND_FORMULA_START_BITS - + AND - + ATOMIC_FORMULA_START_BITS - + APP_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(appCertificate.length(), VALUE_SIZE_BITS) - + getValueBits(appCertificate) - + ATOMIC_FORMULA_START_BITS - + INSTALLER_NAME - + EQ - + IS_NOT_HASHED - + getBits(SAMPLE_INSTALLER_NAME.length(), VALUE_SIZE_BITS) - + getValueBits(SAMPLE_INSTALLER_NAME) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - } - - private Rule getNonIndexedRuleWithInstallerName(String installerName) { - return new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_NAME, - installerName, - /* isHashedValue= */ false), - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_CERTIFICATE, - SAMPLE_INSTALLER_CERT, - /* isHashedValue= */ false))), - Rule.DENY); - } - - private String getSerializedCompoundRuleWithInstallerNameAndInstallerCert( - String installerName) { - return START_BIT - + COMPOUND_FORMULA_START_BITS - + AND - + ATOMIC_FORMULA_START_BITS - + INSTALLER_NAME - + EQ - + IS_NOT_HASHED - + getBits(installerName.length(), VALUE_SIZE_BITS) - + getValueBits(installerName) - + ATOMIC_FORMULA_START_BITS - + INSTALLER_CERTIFICATE - + EQ - + IS_NOT_HASHED - + getBits(SAMPLE_INSTALLER_CERT.length(), VALUE_SIZE_BITS) - + getValueBits(SAMPLE_INSTALLER_CERT) - + COMPOUND_FORMULA_END_BITS - + DENY - + END_BIT; - } - - private static IntegrityFormula getInvalidFormula() { - return new AtomicFormula(0) { - @Override - public int getTag() { - return 0; - } - - @Override - public boolean matches(AppInstallMetadata appInstallMetadata) { - return false; - } - - @Override - public boolean isAppCertificateFormula() { - return false; - } - - @Override - public boolean isAppCertificateLineageFormula() { - return false; - } - - @Override - public boolean isInstallerFormula() { - return false; - } - - @Override - public int hashCode() { - return super.hashCode(); - } - - @Override - public boolean equals(Object obj) { - return super.equals(obj); - } - - @NonNull - @Override - protected Object clone() throws CloneNotSupportedException { - return super.clone(); - } - - @Override - public String toString() { - return super.toString(); - } - - @Override - protected void finalize() throws Throwable { - super.finalize(); - } - }; - } -} diff --git a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifierTest.java b/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifierTest.java deleted file mode 100644 index 6dccdf51af02..000000000000 --- a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifierTest.java +++ /dev/null @@ -1,344 +0,0 @@ -/* - * Copyright (C) 2019 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.server.integrity.serializer; - -import static com.android.server.integrity.serializer.RuleIndexingDetails.APP_CERTIFICATE_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.NOT_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetails.PACKAGE_NAME_INDEXED; -import static com.android.server.integrity.serializer.RuleIndexingDetailsIdentifier.splitRulesIntoIndexBuckets; -import static com.android.server.testutils.TestUtils.assertExpectException; - -import static com.google.common.truth.Truth.assertThat; - -import android.content.integrity.AppInstallMetadata; -import android.content.integrity.AtomicFormula; -import android.content.integrity.CompoundFormula; -import android.content.integrity.IntegrityFormula; -import android.content.integrity.Rule; - -import androidx.annotation.NonNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -/** Unit tests for {@link RuleIndexingDetailsIdentifier}. */ -@RunWith(JUnit4.class) -public class RuleIndexingDetailsIdentifierTest { - - private static final String SAMPLE_APP_CERTIFICATE = "testcert"; - private static final String SAMPLE_INSTALLER_NAME = "com.test.installer"; - private static final String SAMPLE_INSTALLER_CERTIFICATE = "installercert"; - private static final String SAMPLE_PACKAGE_NAME = "com.test.package"; - - private static final AtomicFormula ATOMIC_FORMULA_WITH_PACKAGE_NAME = - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - SAMPLE_PACKAGE_NAME, - /* isHashedValue= */ false); - private static final AtomicFormula ATOMIC_FORMULA_WITH_APP_CERTIFICATE = - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - SAMPLE_APP_CERTIFICATE, - /* isHashedValue= */ false); - private static final AtomicFormula ATOMIC_FORMULA_WITH_INSTALLER_NAME = - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_NAME, - SAMPLE_INSTALLER_NAME, - /* isHashedValue= */ false); - private static final AtomicFormula ATOMIC_FORMULA_WITH_INSTALLER_CERTIFICATE = - new AtomicFormula.StringAtomicFormula( - AtomicFormula.INSTALLER_CERTIFICATE, - SAMPLE_INSTALLER_CERTIFICATE, - /* isHashedValue= */ false); - private static final AtomicFormula ATOMIC_FORMULA_WITH_VERSION_CODE = - new AtomicFormula.LongAtomicFormula(AtomicFormula.VERSION_CODE, - AtomicFormula.EQ, 12); - private static final AtomicFormula ATOMIC_FORMULA_WITH_ISPREINSTALLED = - new AtomicFormula.BooleanAtomicFormula( - AtomicFormula.PRE_INSTALLED, /* booleanValue= */ - true); - - - private static final Rule RULE_WITH_PACKAGE_NAME = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - ATOMIC_FORMULA_WITH_PACKAGE_NAME, - ATOMIC_FORMULA_WITH_INSTALLER_NAME)), - Rule.DENY); - private static final Rule RULE_WITH_APP_CERTIFICATE = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - ATOMIC_FORMULA_WITH_APP_CERTIFICATE, - ATOMIC_FORMULA_WITH_INSTALLER_NAME)), - Rule.DENY); - private static final Rule RULE_WITH_INSTALLER_RESTRICTIONS = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - ATOMIC_FORMULA_WITH_INSTALLER_NAME, - ATOMIC_FORMULA_WITH_INSTALLER_CERTIFICATE)), - Rule.DENY); - - private static final Rule RULE_WITH_NONSTRING_RESTRICTIONS = - new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - ATOMIC_FORMULA_WITH_VERSION_CODE, - ATOMIC_FORMULA_WITH_ISPREINSTALLED)), - Rule.DENY); - public static final int INVALID_FORMULA_TAG = -1; - - @Test - public void getIndexType_nullRule() { - List<Rule> ruleList = null; - - assertExpectException( - IllegalArgumentException.class, - /* expectedExceptionMessageRegex= */ - "Index buckets cannot be created for null rule list.", - () -> splitRulesIntoIndexBuckets(ruleList)); - } - - @Test - public void getIndexType_invalidFormula() { - List<Rule> ruleList = new ArrayList(); - ruleList.add(new Rule(getInvalidFormula(), Rule.DENY)); - - assertExpectException( - IllegalArgumentException.class, - /* expectedExceptionMessageRegex= */ "Malformed rule identified.", - () -> splitRulesIntoIndexBuckets(ruleList)); - } - - @Test - public void getIndexType_ruleContainingPackageNameFormula() { - List<Rule> ruleList = new ArrayList(); - ruleList.add(RULE_WITH_PACKAGE_NAME); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - // Verify the resulting map content. - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - assertThat(result.get(NOT_INDEXED)).isEmpty(); - assertThat(result.get(APP_CERTIFICATE_INDEXED)).isEmpty(); - assertThat(result.get(PACKAGE_NAME_INDEXED).keySet()).containsExactly(SAMPLE_PACKAGE_NAME); - assertThat(result.get(PACKAGE_NAME_INDEXED).get(SAMPLE_PACKAGE_NAME)) - .containsExactly(RULE_WITH_PACKAGE_NAME); - } - - @Test - public void getIndexType_ruleContainingAppCertificateFormula() { - List<Rule> ruleList = new ArrayList(); - ruleList.add(RULE_WITH_APP_CERTIFICATE); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - assertThat(result.get(NOT_INDEXED)).isEmpty(); - assertThat(result.get(PACKAGE_NAME_INDEXED)).isEmpty(); - assertThat(result.get(APP_CERTIFICATE_INDEXED).keySet()) - .containsExactly(SAMPLE_APP_CERTIFICATE); - assertThat(result.get(APP_CERTIFICATE_INDEXED).get(SAMPLE_APP_CERTIFICATE)) - .containsExactly(RULE_WITH_APP_CERTIFICATE); - } - - @Test - public void getIndexType_ruleWithUnindexedCompoundFormula() { - List<Rule> ruleList = new ArrayList(); - ruleList.add(RULE_WITH_INSTALLER_RESTRICTIONS); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - assertThat(result.get(PACKAGE_NAME_INDEXED)).isEmpty(); - assertThat(result.get(APP_CERTIFICATE_INDEXED)).isEmpty(); - assertThat(result.get(NOT_INDEXED).get("N/A")) - .containsExactly(RULE_WITH_INSTALLER_RESTRICTIONS); - } - - @Test - public void getIndexType_ruleContainingCompoundFormulaWithIntAndBoolean() { - List<Rule> ruleList = new ArrayList(); - ruleList.add(RULE_WITH_NONSTRING_RESTRICTIONS); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - assertThat(result.get(PACKAGE_NAME_INDEXED)).isEmpty(); - assertThat(result.get(APP_CERTIFICATE_INDEXED)).isEmpty(); - assertThat(result.get(NOT_INDEXED).get("N/A")) - .containsExactly(RULE_WITH_NONSTRING_RESTRICTIONS); - } - - @Test - public void getIndexType_negatedRuleContainingPackageNameFormula() { - Rule negatedRule = - new Rule( - new CompoundFormula( - CompoundFormula.NOT, - Arrays.asList( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - ATOMIC_FORMULA_WITH_PACKAGE_NAME, - ATOMIC_FORMULA_WITH_APP_CERTIFICATE)))), - Rule.DENY); - List<Rule> ruleList = new ArrayList(); - ruleList.add(negatedRule); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - assertThat(result.get(PACKAGE_NAME_INDEXED)).isEmpty(); - assertThat(result.get(APP_CERTIFICATE_INDEXED)).isEmpty(); - assertThat(result.get(NOT_INDEXED).get("N/A")).containsExactly(negatedRule); - } - - @Test - public void getIndexType_allRulesTogetherSplitCorrectly() { - Rule packageNameRuleA = getRuleWithPackageName("aaa"); - Rule packageNameRuleB = getRuleWithPackageName("bbb"); - Rule packageNameRuleC = getRuleWithPackageName("ccc"); - Rule certificateRule1 = getRuleWithAppCertificate("cert1"); - Rule certificateRule2 = getRuleWithAppCertificate("cert2"); - Rule certificateRule3 = getRuleWithAppCertificate("cert3"); - - List<Rule> ruleList = new ArrayList(); - ruleList.add(packageNameRuleB); - ruleList.add(packageNameRuleC); - ruleList.add(packageNameRuleA); - ruleList.add(certificateRule3); - ruleList.add(certificateRule2); - ruleList.add(certificateRule1); - ruleList.add(RULE_WITH_INSTALLER_RESTRICTIONS); - ruleList.add(RULE_WITH_NONSTRING_RESTRICTIONS); - - Map<Integer, Map<String, List<Rule>>> result = splitRulesIntoIndexBuckets(ruleList); - - assertThat(result.keySet()) - .containsExactly(NOT_INDEXED, PACKAGE_NAME_INDEXED, APP_CERTIFICATE_INDEXED); - - // We check asserts this way to ensure ordering based on package name. - assertThat(result.get(PACKAGE_NAME_INDEXED).keySet()).containsExactly("aaa", "bbb", "ccc"); - - // We check asserts this way to ensure ordering based on app certificate. - assertThat(result.get(APP_CERTIFICATE_INDEXED).keySet()).containsExactly("cert1", "cert2", - "cert3"); - - assertThat(result.get(NOT_INDEXED).get("N/A")) - .containsExactly(RULE_WITH_INSTALLER_RESTRICTIONS, - RULE_WITH_NONSTRING_RESTRICTIONS); - } - - private Rule getRuleWithPackageName(String packageName) { - return new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.PACKAGE_NAME, - packageName, - /* isHashedValue= */ false), - ATOMIC_FORMULA_WITH_INSTALLER_NAME)), - Rule.DENY); - } - - private Rule getRuleWithAppCertificate(String certificate) { - return new Rule( - new CompoundFormula( - CompoundFormula.AND, - Arrays.asList( - new AtomicFormula.StringAtomicFormula( - AtomicFormula.APP_CERTIFICATE, - certificate, - /* isHashedValue= */ false), - ATOMIC_FORMULA_WITH_INSTALLER_NAME)), - Rule.DENY); - } - - private IntegrityFormula getInvalidFormula() { - return new AtomicFormula(0) { - @Override - public int getTag() { - return INVALID_FORMULA_TAG; - } - - @Override - public boolean matches(AppInstallMetadata appInstallMetadata) { - return false; - } - - @Override - public boolean isAppCertificateFormula() { - return false; - } - - @Override - public boolean isAppCertificateLineageFormula() { - return false; - } - - @Override - public boolean isInstallerFormula() { - return false; - } - - @Override - public int hashCode() { - return super.hashCode(); - } - - @Override - public boolean equals(Object obj) { - return super.equals(obj); - } - - @NonNull - @Override - protected Object clone() throws CloneNotSupportedException { - return super.clone(); - } - - @Override - public String toString() { - return super.toString(); - } - - @Override - protected void finalize() throws Throwable { - super.finalize(); - } - }; - } -} diff --git a/services/tests/servicestests/src/com/android/server/location/contexthub/TEST_MAPPING b/services/tests/servicestests/src/com/android/server/location/contexthub/TEST_MAPPING index 58f5bb3eb7d0..9b23b4908a78 100644 --- a/services/tests/servicestests/src/com/android/server/location/contexthub/TEST_MAPPING +++ b/services/tests/servicestests/src/com/android/server/location/contexthub/TEST_MAPPING @@ -6,23 +6,7 @@ ], "postsubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.location.contexthub." - }, - { - // I believe this include annotation is preventing tests from being run - // as there are no matching tests with the Postsubmit annotation. - "include-annotation": "android.platform.test.annotations.Postsubmit" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "FrameworksServicesTests_com_android_server_location_contexthub" } ] } diff --git a/services/tests/servicestests/src/com/android/server/locksettings/BaseLockSettingsServiceTests.java b/services/tests/servicestests/src/com/android/server/locksettings/BaseLockSettingsServiceTests.java index 2ba3969bb9e5..87c9db2fe565 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/BaseLockSettingsServiceTests.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/BaseLockSettingsServiceTests.java @@ -92,6 +92,7 @@ public abstract class BaseLockSettingsServiceTests { MockLockSettingsContext mContext; LockSettingsStorageTestable mStorage; + LockSettingsStrongAuth mStrongAuth; Resources mResources; FakeGateKeeperService mGateKeeperService; @@ -135,6 +136,7 @@ public abstract class BaseLockSettingsServiceTests { mFingerprintManager = mock(FingerprintManager.class); mFaceManager = mock(FaceManager.class); mPackageManager = mock(PackageManager.class); + mStrongAuth = mock(LockSettingsStrongAuth.class); LocalServices.removeServiceForTest(LockSettingsInternal.class); LocalServices.removeServiceForTest(DevicePolicyManagerInternal.class); @@ -162,7 +164,7 @@ public abstract class BaseLockSettingsServiceTests { mInjector = new LockSettingsServiceTestable.MockInjector( mContext, - mStorage, + mStorage, mStrongAuth, mActivityManager, setUpStorageManagerMock(), mSpManager, diff --git a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTestable.java b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTestable.java index 93fc071a5bb7..abd39b0bb963 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTestable.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTestable.java @@ -50,6 +50,7 @@ public class LockSettingsServiceTestable extends LockSettingsService { public static class MockInjector extends LockSettingsService.Injector { private LockSettingsStorage mLockSettingsStorage; + private final LockSettingsStrongAuth mStrongAuth; private IActivityManager mActivityManager; private IStorageManager mStorageManager; private SyntheticPasswordManager mSpManager; @@ -62,12 +63,14 @@ public class LockSettingsServiceTestable extends LockSettingsService { public boolean mIsMainUserPermanentAdmin = false; public MockInjector(Context context, LockSettingsStorage storage, + LockSettingsStrongAuth strongAuth, IActivityManager activityManager, IStorageManager storageManager, SyntheticPasswordManager spManager, FakeGsiService gsiService, RecoverableKeyStoreManager recoverableKeyStoreManager, UserManagerInternal userManagerInternal, DeviceStateCache deviceStateCache) { super(context); mLockSettingsStorage = storage; + mStrongAuth = strongAuth; mActivityManager = activityManager; mStorageManager = storageManager; mSpManager = spManager; @@ -89,7 +92,7 @@ public class LockSettingsServiceTestable extends LockSettingsService { @Override public LockSettingsStrongAuth getStrongAuth() { - return mock(LockSettingsStrongAuth.class); + return mStrongAuth; } @Override diff --git a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTests.java b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTests.java index 601a01624189..2868e559e02f 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTests.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/LockSettingsServiceTests.java @@ -17,6 +17,7 @@ package com.android.server.locksettings; import static android.Manifest.permission.CONFIGURE_FACTORY_RESET_PROTECTION; +import static android.security.Flags.FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL; import static android.security.Flags.FLAG_REPORT_PRIMARY_AUTH_ATTEMPTS; import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE; @@ -46,6 +47,10 @@ import android.os.UserHandle; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; import android.platform.test.annotations.Presubmit; +import android.platform.test.annotations.RequiresFlagsDisabled; +import android.platform.test.annotations.RequiresFlagsEnabled; +import android.platform.test.flag.junit.CheckFlagsRule; +import android.platform.test.flag.junit.DeviceFlagsValueProvider; import android.platform.test.flag.junit.SetFlagsRule; import android.service.gatekeeper.GateKeeperResponse; import android.text.TextUtils; @@ -71,6 +76,8 @@ import org.junit.runner.RunWith; @RunWith(AndroidJUnit4.class) public class LockSettingsServiceTests extends BaseLockSettingsServiceTests { @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); + @Rule + public final CheckFlagsRule mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule(); @Before public void setUp() { @@ -258,6 +265,34 @@ public class LockSettingsServiceTests extends BaseLockSettingsServiceTests { } @Test + @RequiresFlagsEnabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_forPrimaryUser_clearsStrongAuthWhenFlagIsOn() + throws Exception { + setCredential(PRIMARY_USER_ID, newPassword("password")); + + verify(mStrongAuth).reportUnlock(PRIMARY_USER_ID); + } + + @Test + @RequiresFlagsDisabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_forPrimaryUser_leavesStrongAuthWhenFlagIsOff() + throws Exception { + setCredential(PRIMARY_USER_ID, newPassword("password")); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + @Test + public void setLockCredential_forPrimaryUserWithCredential_leavesStrongAuth() throws Exception { + setCredential(PRIMARY_USER_ID, newPassword("password")); + reset(mStrongAuth); + + setCredential(PRIMARY_USER_ID, newPassword("password2"), newPassword("password")); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + @Test public void testSetLockCredential_forProfileWithSeparateChallenge_sendsCredentials() throws Exception { setCredential(MANAGED_PROFILE_USER_ID, newPattern("12345")); @@ -278,6 +313,28 @@ public class LockSettingsServiceTests extends BaseLockSettingsServiceTests { } @Test + @RequiresFlagsEnabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_profileWithNewSeparateChallenge_clearsStrongAuthWhenFlagIsOn() + throws Exception { + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, true, null); + + setCredential(MANAGED_PROFILE_USER_ID, newPattern("12345")); + + verify(mStrongAuth).reportUnlock(MANAGED_PROFILE_USER_ID); + } + + @Test + @RequiresFlagsDisabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_profileWithNewSeparateChallenge_leavesStrongAuthWhenFlagIsOff() + throws Exception { + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, true, null); + + setCredential(MANAGED_PROFILE_USER_ID, newPattern("12345")); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + @Test public void testSetLockCredential_forProfileWithUnifiedChallenge_doesNotSendRandomCredential() throws Exception { mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); @@ -305,6 +362,67 @@ public class LockSettingsServiceTests extends BaseLockSettingsServiceTests { MANAGED_PROFILE_USER_ID); } + + @Test + public void setLockCredential_primaryWithUnifiedProfileAndCredential_leavesStrongAuthForBoth() + throws Exception { + final LockscreenCredential oldCredential = newPassword("oldPassword"); + final LockscreenCredential newCredential = newPassword("newPassword"); + setCredential(PRIMARY_USER_ID, oldCredential); + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); + reset(mStrongAuth); + + setCredential(PRIMARY_USER_ID, newCredential, oldCredential); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + @Test + @RequiresFlagsEnabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_primaryWithUnifiedProfile_clearsStrongAuthForBothWhenFlagIsOn() + throws Exception { + final LockscreenCredential credential = newPassword("oldPassword"); + setCredential(PRIMARY_USER_ID, credential); + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); + clearCredential(PRIMARY_USER_ID, credential); + reset(mStrongAuth); + + setCredential(PRIMARY_USER_ID, credential); + + verify(mStrongAuth).reportUnlock(PRIMARY_USER_ID); + verify(mStrongAuth).reportUnlock(MANAGED_PROFILE_USER_ID); + } + + @Test + @RequiresFlagsDisabled(FLAG_CLEAR_STRONG_AUTH_ON_ADD_PRIMARY_CREDENTIAL) + public void setLockCredential_primaryWithUnifiedProfile_leavesStrongAuthForBothWhenFlagIsOff() + throws Exception { + final LockscreenCredential credential = newPassword("oldPassword"); + setCredential(PRIMARY_USER_ID, credential); + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); + clearCredential(PRIMARY_USER_ID, credential); + reset(mStrongAuth); + + setCredential(PRIMARY_USER_ID, credential); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + + @Test + public void setLockCredential_primaryWithUnifiedProfileWithCredential_leavesStrongAuthForBoth() + throws Exception { + final LockscreenCredential oldCredential = newPassword("oldPassword"); + final LockscreenCredential newCredential = newPassword("newPassword"); + setCredential(PRIMARY_USER_ID, oldCredential); + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); + reset(mStrongAuth); + + setCredential(PRIMARY_USER_ID, newCredential, oldCredential); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + @Test public void testSetLockCredential_forPrimaryUserWithUnifiedChallengeProfile_removesBothCredentials() @@ -343,6 +461,18 @@ public class LockSettingsServiceTests extends BaseLockSettingsServiceTests { } @Test + public void clearLockCredential_primaryWithUnifiedProfile_leavesStrongAuthForBoth() + throws Exception { + setCredential(PRIMARY_USER_ID, newPassword("password")); + mService.setSeparateProfileChallengeEnabled(MANAGED_PROFILE_USER_ID, false, null); + reset(mStrongAuth); + + clearCredential(PRIMARY_USER_ID, newPassword("password")); + + verify(mStrongAuth, never()).reportUnlock(anyInt()); + } + + @Test public void testSetLockCredential_forUnifiedToSeparateChallengeProfile_sendsNewCredentials() throws Exception { final LockscreenCredential parentPassword = newPassword("parentPassword"); diff --git a/services/tests/servicestests/src/com/android/server/locksettings/RebootEscrowManagerTests.java b/services/tests/servicestests/src/com/android/server/locksettings/RebootEscrowManagerTests.java index 17b499e112bc..ae781dcb834a 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/RebootEscrowManagerTests.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/RebootEscrowManagerTests.java @@ -60,6 +60,10 @@ import android.os.RemoteException; import android.os.ServiceSpecificException; import android.os.UserManager; import android.platform.test.annotations.Presubmit; +import android.platform.test.annotations.RequiresFlagsDisabled; +import android.platform.test.annotations.RequiresFlagsEnabled; +import android.platform.test.flag.junit.CheckFlagsRule; +import android.platform.test.flag.junit.DeviceFlagsValueProvider; import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; @@ -70,6 +74,7 @@ import com.android.server.locksettings.ResumeOnRebootServiceProvider.ResumeOnReb import com.android.server.pm.UserManagerInternal; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; @@ -108,6 +113,9 @@ public class RebootEscrowManagerTests { 0x26, 0x52, 0x72, 0x63, 0x63, 0x61, 0x78, 0x23, }; + @Rule + public final CheckFlagsRule mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule(); + private Context mContext; private UserManager mUserManager; private UserManagerInternal mUserManagerInternal; @@ -123,6 +131,7 @@ public class RebootEscrowManagerTests { private SecretKey mAesKey; private MockInjector mMockInjector; private Handler mHandler; + private Network mNetwork; public interface MockableRebootEscrowInjected { int getBootCount(); @@ -145,7 +154,6 @@ public class RebootEscrowManagerTests { private RebootEscrowProviderInterface mRebootEscrowProviderInUse; private ConnectivityManager.NetworkCallback mNetworkCallback; private Consumer<ConnectivityManager.NetworkCallback> mNetworkConsumer; - private boolean mWaitForInternet; MockInjector( Context context, @@ -159,7 +167,6 @@ public class RebootEscrowManagerTests { super(context, storage, userManagerInternal); mRebootEscrow = rebootEscrow; mServerBased = false; - mWaitForInternet = false; RebootEscrowProviderHalImpl.Injector halInjector = new RebootEscrowProviderHalImpl.Injector() { @Override @@ -185,7 +192,6 @@ public class RebootEscrowManagerTests { super(context, storage, userManagerInternal); mRebootEscrow = null; mServerBased = true; - mWaitForInternet = false; RebootEscrowProviderServerBasedImpl.Injector injector = new RebootEscrowProviderServerBasedImpl.Injector(serviceConnection) { @Override @@ -227,15 +233,6 @@ public class RebootEscrowManagerTests { } @Override - public boolean waitForInternet() { - return mWaitForInternet; - } - - public void setWaitForNetwork(boolean waitForNetworkEnabled) { - mWaitForInternet = waitForNetworkEnabled; - } - - @Override public boolean isNetworkConnected() { return false; } @@ -347,6 +344,7 @@ public class RebootEscrowManagerTests { when(mCallbacks.isUserSecure(NONSECURE_SECONDARY_USER_ID)).thenReturn(false); when(mCallbacks.isUserSecure(SECURE_SECONDARY_USER_ID)).thenReturn(true); mInjected = mock(MockableRebootEscrowInjected.class); + mNetwork = mock(Network.class); mMockInjector = new MockInjector( mContext, @@ -356,6 +354,10 @@ public class RebootEscrowManagerTests { mKeyStoreManager, mStorage, mInjected); + mMockInjector.mNetworkConsumer = + (callback) -> { + callback.onAvailable(mNetwork); + }; HandlerThread thread = new HandlerThread("RebootEscrowManagerTest"); thread.start(); mHandler = new Handler(thread.getLooper()); @@ -372,6 +374,10 @@ public class RebootEscrowManagerTests { mKeyStoreManager, mStorage, mInjected); + mMockInjector.mNetworkConsumer = + (callback) -> { + callback.onAvailable(mNetwork); + }; mService = new RebootEscrowManager(mMockInjector, mCallbacks, mStorage, mHandler); } @@ -625,25 +631,10 @@ public class RebootEscrowManagerTests { // pretend reboot happens here when(mInjected.getBootCount()).thenReturn(1); - ArgumentCaptor<Boolean> metricsSuccessCaptor = ArgumentCaptor.forClass(Boolean.class); - ArgumentCaptor<Integer> metricsErrorCodeCaptor = ArgumentCaptor.forClass(Integer.class); - doNothing() - .when(mInjected) - .reportMetric( - metricsSuccessCaptor.capture(), - metricsErrorCodeCaptor.capture(), - eq(2) /* Server based */, - eq(1) /* attempt count */, - anyInt(), - eq(0) /* vbmeta status */, - anyInt()); - mService.loadRebootEscrowDataIfAvailable(null); + + mService.loadRebootEscrowDataIfAvailable(mHandler); verify(mServiceConnection, never()).unwrap(any(), anyLong()); verify(mCallbacks, never()).onRebootEscrowRestored(anyByte(), any(), anyInt()); - assertFalse(metricsSuccessCaptor.getValue()); - assertEquals( - Integer.valueOf(RebootEscrowManager.ERROR_NO_REBOOT_ESCROW_DATA), - metricsErrorCodeCaptor.getValue()); } @Test @@ -698,7 +689,7 @@ public class RebootEscrowManagerTests { when(mServiceConnection.unwrap(any(), anyLong())) .thenAnswer(invocation -> invocation.getArgument(0)); - mService.loadRebootEscrowDataIfAvailable(null); + mService.loadRebootEscrowDataIfAvailable(mHandler); verify(mServiceConnection).unwrap(any(), anyLong()); verify(mCallbacks).onRebootEscrowRestored(anyByte(), any(), eq(PRIMARY_USER_ID)); @@ -754,7 +745,7 @@ public class RebootEscrowManagerTests { when(mServiceConnection.unwrap(any(), anyLong())) .thenAnswer(invocation -> invocation.getArgument(0)); - mService.loadRebootEscrowDataIfAvailable(null); + mService.loadRebootEscrowDataIfAvailable(mHandler); verify(mServiceConnection).unwrap(any(), anyLong()); verify(mCallbacks).onRebootEscrowRestored(anyByte(), any(), eq(PRIMARY_USER_ID)); @@ -803,7 +794,7 @@ public class RebootEscrowManagerTests { when(mServiceConnection.unwrap(any(), anyLong())) .thenAnswer(invocation -> invocation.getArgument(0)); - mService.loadRebootEscrowDataIfAvailable(null); + mService.loadRebootEscrowDataIfAvailable(mHandler); verify(mServiceConnection).unwrap(any(), anyLong()); assertTrue(metricsSuccessCaptor.getValue()); verify(mKeyStoreManager).clearKeyStoreEncryptionKey(); @@ -847,7 +838,7 @@ public class RebootEscrowManagerTests { anyInt()); when(mServiceConnection.unwrap(any(), anyLong())).thenThrow(RemoteException.class); - mService.loadRebootEscrowDataIfAvailable(null); + mService.loadRebootEscrowDataIfAvailable(mHandler); verify(mServiceConnection).unwrap(any(), anyLong()); assertFalse(metricsSuccessCaptor.getValue()); assertEquals( @@ -856,6 +847,7 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsDisabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_ServerBasedIoError_RetryFailure() throws Exception { setServerBasedRebootEscrowProvider(); @@ -949,118 +941,10 @@ public class RebootEscrowManagerTests { } @Test - public void loadRebootEscrowDataIfAvailable_serverBasedWaitForInternet_success() - throws Exception { - setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); - - when(mInjected.getBootCount()).thenReturn(0); - RebootEscrowListener mockListener = mock(RebootEscrowListener.class); - mService.setRebootEscrowListener(mockListener); - mService.prepareRebootEscrow(); - - clearInvocations(mServiceConnection); - callToRebootEscrowIfNeededAndWait(PRIMARY_USER_ID); - verify(mockListener).onPreparedForReboot(eq(true)); - verify(mServiceConnection, never()).wrapBlob(any(), anyLong(), anyLong()); - - // Use x -> x for both wrap & unwrap functions. - when(mServiceConnection.wrapBlob(any(), anyLong(), anyLong())) - .thenAnswer(invocation -> invocation.getArgument(0)); - assertEquals(ARM_REBOOT_ERROR_NONE, mService.armRebootEscrowIfNeeded()); - verify(mServiceConnection).wrapBlob(any(), anyLong(), anyLong()); - assertTrue(mStorage.hasRebootEscrowServerBlob()); - - // pretend reboot happens here - when(mInjected.getBootCount()).thenReturn(1); - ArgumentCaptor<Boolean> metricsSuccessCaptor = ArgumentCaptor.forClass(Boolean.class); - doNothing() - .when(mInjected) - .reportMetric( - metricsSuccessCaptor.capture(), - eq(0) /* error code */, - eq(2) /* Server based */, - eq(1) /* attempt count */, - anyInt(), - eq(0) /* vbmeta status */, - anyInt()); - - // load escrow data - when(mServiceConnection.unwrap(any(), anyLong())) - .thenAnswer(invocation -> invocation.getArgument(0)); - Network mockNetwork = mock(Network.class); - mMockInjector.mNetworkConsumer = - (callback) -> { - callback.onAvailable(mockNetwork); - }; - - mService.loadRebootEscrowDataIfAvailable(mHandler); - verify(mServiceConnection).unwrap(any(), anyLong()); - assertTrue(metricsSuccessCaptor.getValue()); - verify(mKeyStoreManager).clearKeyStoreEncryptionKey(); - assertNull(mMockInjector.mNetworkCallback); - } - - @Test - public void loadRebootEscrowDataIfAvailable_serverBasedWaitForInternetRemoteException_Failure() - throws Exception { - setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); - - when(mInjected.getBootCount()).thenReturn(0); - RebootEscrowListener mockListener = mock(RebootEscrowListener.class); - mService.setRebootEscrowListener(mockListener); - mService.prepareRebootEscrow(); - - clearInvocations(mServiceConnection); - callToRebootEscrowIfNeededAndWait(PRIMARY_USER_ID); - verify(mockListener).onPreparedForReboot(eq(true)); - verify(mServiceConnection, never()).wrapBlob(any(), anyLong(), anyLong()); - - // Use x -> x for both wrap & unwrap functions. - when(mServiceConnection.wrapBlob(any(), anyLong(), anyLong())) - .thenAnswer(invocation -> invocation.getArgument(0)); - assertEquals(ARM_REBOOT_ERROR_NONE, mService.armRebootEscrowIfNeeded()); - verify(mServiceConnection).wrapBlob(any(), anyLong(), anyLong()); - assertTrue(mStorage.hasRebootEscrowServerBlob()); - - // pretend reboot happens here - when(mInjected.getBootCount()).thenReturn(1); - ArgumentCaptor<Boolean> metricsSuccessCaptor = ArgumentCaptor.forClass(Boolean.class); - ArgumentCaptor<Integer> metricsErrorCodeCaptor = ArgumentCaptor.forClass(Integer.class); - doNothing() - .when(mInjected) - .reportMetric( - metricsSuccessCaptor.capture(), - metricsErrorCodeCaptor.capture(), - eq(2) /* Server based */, - eq(1) /* attempt count */, - anyInt(), - eq(0) /* vbmeta status */, - anyInt()); - - // load escrow data - when(mServiceConnection.unwrap(any(), anyLong())).thenThrow(RemoteException.class); - Network mockNetwork = mock(Network.class); - mMockInjector.mNetworkConsumer = - (callback) -> { - callback.onAvailable(mockNetwork); - }; - - mService.loadRebootEscrowDataIfAvailable(mHandler); - verify(mServiceConnection).unwrap(any(), anyLong()); - assertFalse(metricsSuccessCaptor.getValue()); - assertEquals( - Integer.valueOf(RebootEscrowManager.ERROR_LOAD_ESCROW_KEY), - metricsErrorCodeCaptor.getValue()); - assertNull(mMockInjector.mNetworkCallback); - } - - @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_waitForInternet_networkUnavailable() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); @@ -1105,9 +989,9 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_waitForInternet_networkLost() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); @@ -1160,10 +1044,10 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_waitForInternet_networkAvailableWithDelay() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); @@ -1219,10 +1103,10 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_waitForInternet_timeoutExhausted() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); @@ -1279,10 +1163,10 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_serverBasedWaitForNetwork_retryCountExhausted() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); @@ -1335,10 +1219,10 @@ public class RebootEscrowManagerTests { } @Test + @RequiresFlagsEnabled(Flags.FLAG_WAIT_FOR_INTERNET_ROR) public void loadRebootEscrowDataIfAvailable_ServerBasedWaitForInternet_RetrySuccess() throws Exception { setServerBasedRebootEscrowProvider(); - mMockInjector.setWaitForNetwork(true); when(mInjected.getBootCount()).thenReturn(0); RebootEscrowListener mockListener = mock(RebootEscrowListener.class); diff --git a/services/tests/servicestests/src/com/android/server/net/NetworkPolicyManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/net/NetworkPolicyManagerServiceTest.java index 3d6884925098..5a7027edc20d 100644 --- a/services/tests/servicestests/src/com/android/server/net/NetworkPolicyManagerServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/net/NetworkPolicyManagerServiceTest.java @@ -108,6 +108,7 @@ import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.ArgumentMatchers.argThat; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.isA; import static org.mockito.Mockito.CALLS_REAL_METHODS; @@ -165,6 +166,7 @@ import android.os.PowerExemptionManager; import android.os.PowerManager; import android.os.PowerManagerInternal; import android.os.PowerSaveState; +import android.os.Process; import android.os.RemoteException; import android.os.SimpleClock; import android.os.SystemClock; @@ -197,6 +199,7 @@ import androidx.test.filters.FlakyTest; import androidx.test.filters.MediumTest; import androidx.test.runner.AndroidJUnit4; +import com.android.internal.util.ArrayUtils; import com.android.internal.util.test.BroadcastInterceptingContext; import com.android.internal.util.test.BroadcastInterceptingContext.FutureIntent; import com.android.internal.util.test.FsUtil; @@ -2155,13 +2158,11 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testBackgroundChainEnabled() throws Exception { verify(mNetworkManager).setFirewallChainEnabled(FIREWALL_CHAIN_BACKGROUND, true); } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) @RequiresFlagsDisabled(Flags.FLAG_USE_DIFFERENT_DELAYS_FOR_BACKGROUND_CHAIN) public void testBackgroundChainOnProcStateChangeSameDelay() throws Exception { // initialization calls setFirewallChainEnabled, so we want to reset the invocations. @@ -2191,10 +2192,7 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled({ - Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE, - Flags.FLAG_USE_DIFFERENT_DELAYS_FOR_BACKGROUND_CHAIN - }) + @RequiresFlagsEnabled(Flags.FLAG_USE_DIFFERENT_DELAYS_FOR_BACKGROUND_CHAIN) public void testBackgroundChainOnProcStateChangeDifferentDelays() throws Exception { // The app will be blocked when there is no prior proc-state. assertTrue(mService.isUidNetworkingBlocked(UID_A, false)); @@ -2244,7 +2242,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testBackgroundChainOnAllowlistChange() throws Exception { // initialization calls setFirewallChainEnabled, so we want to reset the invocations. clearInvocations(mNetworkManager); @@ -2282,7 +2279,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testBackgroundChainOnTempAllowlistChange() throws Exception { // initialization calls setFirewallChainEnabled, so we want to reset the invocations. clearInvocations(mNetworkManager); @@ -2310,6 +2306,70 @@ public class NetworkPolicyManagerServiceTest { assertTrue(mService.isUidNetworkingBlocked(UID_A, false)); } + @SuppressWarnings("GuardedBy") // For not holding mUidRulesFirstLock + @Test + @RequiresFlagsEnabled(Flags.FLAG_NEVER_APPLY_RULES_TO_CORE_UIDS) + public void testRulesNeverAppliedToCoreUids() throws Exception { + clearInvocations(mNetworkManager); + + final int coreAppId = Process.FIRST_APPLICATION_UID - 102; + final int coreUid = UserHandle.getUid(USER_ID, coreAppId); + + // Enable all restrictions and add this core uid to all allowlists. + mService.mDeviceIdleMode = true; + mService.mRestrictPower = true; + setRestrictBackground(true); + expectHasUseRestrictedNetworksPermission(coreUid, true); + enableRestrictedMode(true); + final NetworkPolicyManagerInternal internal = LocalServices.getService( + NetworkPolicyManagerInternal.class); + internal.setLowPowerStandbyActive(true); + internal.setLowPowerStandbyAllowlist(new int[]{coreUid}); + internal.onTempPowerSaveWhitelistChange(coreAppId, true, REASON_OTHER, "testing"); + + when(mPowerExemptionManager.getAllowListedAppIds(anyBoolean())) + .thenReturn(new int[]{coreAppId}); + mPowerAllowlistReceiver.onReceive(mServiceContext, null); + + // A normal uid would undergo a rule change from denied to allowed on all chains, but we + // should not request any rule change for this core uid. + verify(mNetworkManager, never()).setFirewallUidRule(anyInt(), eq(coreUid), anyInt()); + verify(mNetworkManager, never()).setFirewallUidRules(anyInt(), + argThat(ar -> ArrayUtils.contains(ar, coreUid)), any(int[].class)); + } + + @SuppressWarnings("GuardedBy") // For not holding mUidRulesFirstLock + @Test + @RequiresFlagsEnabled(Flags.FLAG_NEVER_APPLY_RULES_TO_CORE_UIDS) + public void testRulesNeverAppliedToUidsWithoutInternetPermission() throws Exception { + clearInvocations(mNetworkManager); + + mService.mInternetPermissionMap.clear(); + expectHasInternetPermission(UID_A, false); + + // Enable all restrictions and add this uid to all allowlists. + mService.mDeviceIdleMode = true; + mService.mRestrictPower = true; + setRestrictBackground(true); + expectHasUseRestrictedNetworksPermission(UID_A, true); + enableRestrictedMode(true); + final NetworkPolicyManagerInternal internal = LocalServices.getService( + NetworkPolicyManagerInternal.class); + internal.setLowPowerStandbyActive(true); + internal.setLowPowerStandbyAllowlist(new int[]{UID_A}); + internal.onTempPowerSaveWhitelistChange(APP_ID_A, true, REASON_OTHER, "testing"); + + when(mPowerExemptionManager.getAllowListedAppIds(anyBoolean())) + .thenReturn(new int[]{APP_ID_A}); + mPowerAllowlistReceiver.onReceive(mServiceContext, null); + + // A normal uid would undergo a rule change from denied to allowed on all chains, but we + // should not request any rule this uid without the INTERNET permission. + verify(mNetworkManager, never()).setFirewallUidRule(anyInt(), eq(UID_A), anyInt()); + verify(mNetworkManager, never()).setFirewallUidRules(anyInt(), + argThat(ar -> ArrayUtils.contains(ar, UID_A)), any(int[].class)); + } + private boolean isUidState(int uid, int procState, int procStateSeq, int capability) { final NetworkPolicyManager.UidState uidState = mService.getUidStateForTest(uid); if (uidState == null) { @@ -2320,7 +2380,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testUidObserverFiltersProcStateChanges() throws Exception { int testProcStateSeq = 0; try (SyncBarrier b = new SyncBarrier(mService.mUidEventHandler)) { @@ -2383,7 +2442,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testUidObserverFiltersStaleChanges() throws Exception { final int testProcStateSeq = 51; try (SyncBarrier b = new SyncBarrier(mService.mUidEventHandler)) { @@ -2403,7 +2461,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testUidObserverFiltersCapabilityChanges() throws Exception { int testProcStateSeq = 0; try (SyncBarrier b = new SyncBarrier(mService.mUidEventHandler)) { @@ -2492,7 +2549,6 @@ public class NetworkPolicyManagerServiceTest { } @Test - @RequiresFlagsEnabled(Flags.FLAG_NETWORK_BLOCKED_FOR_TOP_SLEEPING_AND_ABOVE) public void testObsoleteHandleUidChanged() throws Exception { callAndWaitOnUidGone(UID_A); assertTrue(mService.isUidNetworkingBlocked(UID_A, false)); diff --git a/services/tests/servicestests/src/com/android/server/om/TEST_MAPPING b/services/tests/servicestests/src/com/android/server/om/TEST_MAPPING index 944c1df94b92..dc3b1447c13e 100644 --- a/services/tests/servicestests/src/com/android/server/om/TEST_MAPPING +++ b/services/tests/servicestests/src/com/android/server/om/TEST_MAPPING @@ -4,12 +4,7 @@ "name": "FrameworksServicesTests_om" }, { - "name": "PackageManagerServiceHostTests", - "options": [ - { - "include-filter": "com.android.server.pm.test.OverlayActorVisibilityTest" - } - ] + "name": "PackageManagerServiceHostTests_test_overlayactorvisibilitytest" } ] } diff --git a/services/tests/servicestests/src/com/android/server/pdb/PersistentDataBlockServiceTest.java b/services/tests/servicestests/src/com/android/server/pdb/PersistentDataBlockServiceTest.java index f91f77a56385..cdfc521dff13 100644 --- a/services/tests/servicestests/src/com/android/server/pdb/PersistentDataBlockServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/pdb/PersistentDataBlockServiceTest.java @@ -86,7 +86,6 @@ public class PersistentDataBlockServiceTest { private File mDataBlockFile; private File mFrpSecretFile; private File mFrpSecretTmpFile; - private String mOemUnlockPropertyValue; private boolean mIsUpgradingFromPreV = false; @Mock private UserManager mUserManager; @@ -105,13 +104,6 @@ public class PersistentDataBlockServiceTest { } @Override - void setProperty(String key, String value) { - // Override to capture the value instead of actually setting the property. - assertThat(key).isEqualTo("sys.oem_unlock_allowed"); - mOemUnlockPropertyValue = value; - } - - @Override boolean isUpgradingFromPreVRelease() { return mIsUpgradingFromPreV; } @@ -598,7 +590,6 @@ public class PersistentDataBlockServiceTest { mInterface.setOemUnlockEnabled(true); assertThat(mInterface.getOemUnlockEnabled()).isTrue(); - assertThat(mOemUnlockPropertyValue).isEqualTo("1"); } @Test @@ -635,7 +626,6 @@ public class PersistentDataBlockServiceTest { // The current implementation does not check digest before set or get the oem unlock bit. tamperWithDigest(); mInterface.setOemUnlockEnabled(true); - assertThat(mOemUnlockPropertyValue).isEqualTo("1"); tamperWithDigest(); assertThat(mInterface.getOemUnlockEnabled()).isTrue(); } @@ -676,7 +666,6 @@ public class PersistentDataBlockServiceTest { mInternalInterface.forceOemUnlockEnabled(true); - assertThat(mOemUnlockPropertyValue).isEqualTo("1"); assertThat(readBackingFile(mPdbService.getOemUnlockDataOffset(), 1).array()) .isEqualTo(new byte[] { 1 }); } diff --git a/services/tests/servicestests/src/com/android/server/security/advancedprotection/OWNERS b/services/tests/servicestests/src/com/android/server/security/advancedprotection/OWNERS new file mode 100644 index 000000000000..9bf5e58c01a9 --- /dev/null +++ b/services/tests/servicestests/src/com/android/server/security/advancedprotection/OWNERS @@ -0,0 +1 @@ +file:platform/frameworks/base:main:/core/java/android/security/advancedprotection/OWNERS diff --git a/services/tests/servicestests/src/com/android/server/stats/pull/netstats/NetworkStatsUtilsTest.kt b/services/tests/servicestests/src/com/android/server/stats/pull/netstats/NetworkStatsUtilsTest.kt new file mode 100644 index 000000000000..c560c04e72cd --- /dev/null +++ b/services/tests/servicestests/src/com/android/server/stats/pull/netstats/NetworkStatsUtilsTest.kt @@ -0,0 +1,119 @@ +/* + * Copyright (C) 2024 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.server.stats.pull.netstats + +import android.net.NetworkStats +import android.net.NetworkStats.DEFAULT_NETWORK_NO +import android.net.NetworkStats.DEFAULT_NETWORK_YES +import android.net.NetworkStats.Entry +import android.net.NetworkStats.METERED_NO +import android.net.NetworkStats.ROAMING_NO +import android.net.NetworkStats.ROAMING_YES +import android.net.NetworkStats.SET_DEFAULT +import android.net.NetworkStats.TAG_NONE +import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.testutils.assertEntryEquals +import com.android.testutils.assertNetworkStatsEquals +import com.android.testutils.makePublicStatsFromAndroidNetStats +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.Mockito.doReturn +import org.mockito.Mockito.mock +import org.mockito.Mockito.`when` + +/** + * Build/Install/Run: + * atest FrameworksServicesTests:NetworkStatsUtilsTest + */ +@RunWith(AndroidJUnit4::class) +class NetworkStatsUtilsTest { + + @Test + fun testBucketToEntry() { + val bucket = makeMockBucket(android.app.usage.NetworkStats.Bucket.UID_ALL, + android.app.usage.NetworkStats.Bucket.TAG_NONE, + android.app.usage.NetworkStats.Bucket.STATE_DEFAULT, + android.app.usage.NetworkStats.Bucket.METERED_YES, + android.app.usage.NetworkStats.Bucket.ROAMING_NO, + android.app.usage.NetworkStats.Bucket.DEFAULT_NETWORK_ALL, 1024, 8, 2048, 12) + val entry = NetworkStatsUtils.fromBucket(bucket) + val expectedEntry = NetworkStats.Entry(null /* IFACE_ALL */, NetworkStats.UID_ALL, + NetworkStats.SET_DEFAULT, NetworkStats.TAG_NONE, NetworkStats.METERED_YES, + NetworkStats.ROAMING_NO, NetworkStats.DEFAULT_NETWORK_ALL, 1024, 8, 2048, 12, + 0 /* operations */) + + assertEntryEquals(expectedEntry, entry) + } + + @Test + fun testPublicStatsToAndroidNetStats() { + val uid1 = 10001 + val uid2 = 10002 + val testIface = "wlan0" + val testAndroidNetStats = NetworkStats(0L, 3) + .addEntry(Entry(testIface, uid1, SET_DEFAULT, TAG_NONE, + METERED_NO, ROAMING_NO, DEFAULT_NETWORK_YES, 20, 3, 57, 40, 3)) + .addEntry(Entry( + testIface, uid2, SET_DEFAULT, TAG_NONE, + METERED_NO, ROAMING_YES, DEFAULT_NETWORK_NO, 2, 7, 2, 5, 7)) + .addEntry(Entry(testIface, uid2, SET_DEFAULT, TAG_NONE, + METERED_NO, ROAMING_YES, DEFAULT_NETWORK_NO, 4, 5, 3, 1, 8)) + val publicStats: android.app.usage.NetworkStats = + makePublicStatsFromAndroidNetStats(testAndroidNetStats) + val androidNetStats: NetworkStats = + NetworkStatsUtils.fromPublicNetworkStats(publicStats) + + // 1. The public `NetworkStats` class does not include interface information. + // Interface details must be removed and items with duplicated + // keys need to be merged before making any comparisons. + // 2. The public `NetworkStats` class lacks an operations field. + // Thus, the information will not be preserved during the conversion. + val expectedStats = NetworkStats(0L, 2) + .addEntry(Entry(null, uid1, SET_DEFAULT, TAG_NONE, + METERED_NO, ROAMING_NO, DEFAULT_NETWORK_YES, 20, 3, 57, 40, 0)) + .addEntry(Entry(null, uid2, SET_DEFAULT, TAG_NONE, + METERED_NO, ROAMING_YES, DEFAULT_NETWORK_NO, 6, 12, 5, 6, 0)) + assertNetworkStatsEquals(expectedStats, androidNetStats) + } + + private fun makeMockBucket( + uid: Int, + tag: Int, + state: Int, + metered: Int, + roaming: Int, + defaultNetwork: Int, + rxBytes: Long, + rxPackets: Long, + txBytes: Long, + txPackets: Long + ): android.app.usage.NetworkStats.Bucket { + val ret: android.app.usage.NetworkStats.Bucket = + mock(android.app.usage.NetworkStats.Bucket::class.java) + doReturn(uid).`when`(ret).getUid() + doReturn(tag).`when`(ret).getTag() + doReturn(state).`when`(ret).getState() + doReturn(metered).`when`(ret).getMetered() + doReturn(roaming).`when`(ret).getRoaming() + doReturn(defaultNetwork).`when`(ret).getDefaultNetworkStatus() + doReturn(rxBytes).`when`(ret).getRxBytes() + doReturn(rxPackets).`when`(ret).getRxPackets() + doReturn(txBytes).`when`(ret).getTxBytes() + doReturn(txPackets).`when`(ret).getTxPackets() + return ret + } +}
\ No newline at end of file diff --git a/services/tests/servicestests/src/com/android/server/systemconfig/SystemConfigReadOnlyFeaturesTest.kt b/services/tests/servicestests/src/com/android/server/systemconfig/SystemConfigReadOnlyFeaturesTest.kt new file mode 100644 index 000000000000..22d894a5a739 --- /dev/null +++ b/services/tests/servicestests/src/com/android/server/systemconfig/SystemConfigReadOnlyFeaturesTest.kt @@ -0,0 +1,167 @@ +/* + * Copyright (C) 2024 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.server.systemconfig + +import android.content.Context +import android.content.pm.FeatureInfo +import android.util.ArrayMap +import android.util.Xml + +import androidx.test.filters.SmallTest +import androidx.test.platform.app.InstrumentationRegistry +import com.android.server.SystemConfig +import com.google.common.truth.Truth.assertThat +import org.junit.runner.RunWith +import org.junit.Rule + +import org.junit.Test +import org.junit.rules.TemporaryFolder +import org.junit.runners.JUnit4 + +@SmallTest +@RunWith(JUnit4::class) +class SystemConfigReadOnlyFeaturesTest { + + companion object { + private const val FEATURE_ONE = "feature.test.1" + private const val FEATURE_TWO = "feature.test.2" + private const val FEATURE_RUNTIME_AVAILABLE_TEMPLATE = + """ + <permissions> + <feature name="%s" /> + </permissions> + """ + private const val FEATURE_RUNTIME_DISABLED_TEMPLATE = + """ + <permissions> + <Disabled-feature name="%s" /> + </permissions> + """ + + fun featureInfo(featureName: String) = FeatureInfo().apply { name = featureName } + } + + private val context: Context = InstrumentationRegistry.getInstrumentation().context + + @get:Rule + val tempFolder = TemporaryFolder(context.filesDir) + + private val injector = TestInjector() + + private var uniqueCounter = 0 + + @Test + fun empty() { + assertFeatures().isEmpty() + } + + @Test + fun readOnlyEnabled() { + addReadOnlyEnabledFeature(FEATURE_ONE) + addReadOnlyEnabledFeature(FEATURE_TWO) + + assertFeatures().containsAtLeast(FEATURE_ONE, FEATURE_TWO) + } + + @Test + fun readOnlyAndRuntimeEnabled() { + addReadOnlyEnabledFeature(FEATURE_ONE) + addRuntimeEnabledFeature(FEATURE_TWO) + + // No issues with matching availability. + assertFeatures().containsAtLeast(FEATURE_ONE, FEATURE_TWO) + } + + @Test + fun readOnlyEnabledRuntimeDisabled() { + addReadOnlyEnabledFeature(FEATURE_ONE) + addRuntimeDisabledFeature(FEATURE_ONE) + + // Read-only feature availability should take precedence. + assertFeatures().contains(FEATURE_ONE) + } + + @Test + fun readOnlyDisabled() { + addReadOnlyDisabledFeature(FEATURE_ONE) + + assertFeatures().doesNotContain(FEATURE_ONE) + } + + @Test + fun readOnlyAndRuntimeDisabled() { + addReadOnlyDisabledFeature(FEATURE_ONE) + addRuntimeDisabledFeature(FEATURE_ONE) + + // No issues with matching (un)availability. + assertFeatures().doesNotContain(FEATURE_ONE) + } + + @Test + fun readOnlyDisabledRuntimeEnabled() { + addReadOnlyDisabledFeature(FEATURE_ONE) + addRuntimeEnabledFeature(FEATURE_ONE) + addRuntimeEnabledFeature(FEATURE_TWO) + + // Read-only feature (un)availability should take precedence. + assertFeatures().doesNotContain(FEATURE_ONE) + assertFeatures().contains(FEATURE_TWO) + } + + fun addReadOnlyEnabledFeature(featureName: String) { + injector.readOnlyEnabledFeatures[featureName] = featureInfo(featureName) + } + + fun addReadOnlyDisabledFeature(featureName: String) { + injector.readOnlyDisabledFeatures.add(featureName) + } + + fun addRuntimeEnabledFeature(featureName: String) { + FEATURE_RUNTIME_AVAILABLE_TEMPLATE.format(featureName).write() + } + + fun addRuntimeDisabledFeature(featureName: String) { + FEATURE_RUNTIME_DISABLED_TEMPLATE.format(featureName).write() + } + + private fun String.write() = tempFolder.root.resolve("${uniqueCounter++}.xml") + .writeText(this.trimIndent()) + + private fun assertFeatures() = assertThat(availableFeatures().keys) + + private fun availableFeatures() = SystemConfig(false, injector).apply { + val parser = Xml.newPullParser() + readPermissions(parser, tempFolder.root, /*Grant all permission flags*/ 0.inv()) + }.let { it.availableFeatures } + + internal class TestInjector() : SystemConfig.Injector() { + val readOnlyEnabledFeatures = ArrayMap<String, FeatureInfo>() + val readOnlyDisabledFeatures = mutableSetOf<String>() + + override fun isReadOnlySystemEnabledFeature(featureName: String, version: Int): Boolean { + return readOnlyEnabledFeatures.containsKey(featureName) + } + + override fun isReadOnlySystemDisabledFeature(featureName: String, version: Int): Boolean { + return readOnlyDisabledFeatures.contains(featureName) + } + + override fun getReadOnlySystemEnabledFeatures(): ArrayMap<String, FeatureInfo> { + return readOnlyEnabledFeatures + } + } +} diff --git a/services/tests/servicestests/test-apps/DisplayManagerTestApp/OWNERS b/services/tests/servicestests/test-apps/DisplayManagerTestApp/OWNERS new file mode 100644 index 000000000000..e9557f84f8fb --- /dev/null +++ b/services/tests/servicestests/test-apps/DisplayManagerTestApp/OWNERS @@ -0,0 +1,3 @@ +# Bug component: 345010 + +include /services/core/java/com/android/server/display/OWNERS diff --git a/services/tests/timetests/Android.bp b/services/tests/timetests/Android.bp index 23ab85996fff..aae6acc7c53a 100644 --- a/services/tests/timetests/Android.bp +++ b/services/tests/timetests/Android.bp @@ -20,8 +20,32 @@ android_test { "services.core", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], platform_apis: true, certificate: "platform", test_suites: ["device-tests"], } + +test_module_config { + name: "FrameworksTimeServicesTests_time", + base: "FrameworksTimeServicesTests", + test_suites: ["device-tests"], + include_filters: [ + "com.android.server.timezonedetector.", + "com.android.server.timedetector.", + ], +} + +test_module_config { + name: "FrameworksTimeServicesTests_server_timedetector", + base: "FrameworksTimeServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.timedetector."], +} + +test_module_config { + name: "FrameworksTimeServicesTests_server_timezonedetector", + base: "FrameworksTimeServicesTests", + test_suites: ["device-tests"], + include_filters: ["com.android.server.timezonedetector."], +} diff --git a/services/tests/timetests/src/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessorTest.java b/services/tests/timetests/src/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessorTest.java index f3440f7c9d1c..ea3b409e5929 100644 --- a/services/tests/timetests/src/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessorTest.java +++ b/services/tests/timetests/src/com/android/server/timezonedetector/location/ZoneInfoDbTimeZoneProviderEventPreProcessorTest.java @@ -39,13 +39,23 @@ public class ZoneInfoDbTimeZoneProviderEventPreProcessorTest { private static final long ARBITRARY_TIME_MILLIS = 11223344; + private final List<String> mNonExistingTimeZones = Arrays.asList( + "SystemV/HST10", "Atlantic/Atlantis", "EUROPE/LONDON", "Etc/GMT-5:30"); private final ZoneInfoDbTimeZoneProviderEventPreProcessor mPreProcessor = new ZoneInfoDbTimeZoneProviderEventPreProcessor(); + private static final TimeZoneProviderStatus ARBITRARY_TIME_ZONE_PROVIDER_STATUS = + new TimeZoneProviderStatus.Builder() + .setConnectivityDependencyStatus(DEPENDENCY_STATUS_OK) + .setLocationDetectionDependencyStatus(DEPENDENCY_STATUS_OK) + .setTimeZoneResolutionOperationStatus(OPERATION_STATUS_OK) + .build(); + @Test public void timeZoneIdsFromZoneInfoDbAreValid() { for (String timeZone : TimeZone.getAvailableIDs()) { - TimeZoneProviderEvent event = timeZoneProviderEvent(timeZone); + TimeZoneProviderEvent event = timeZoneProviderEvent(timeZone, + ARBITRARY_TIME_ZONE_PROVIDER_STATUS); assertWithMessage("Time zone %s should be supported", timeZone) .that(mPreProcessor.preProcess(event)).isEqualTo(event); } @@ -53,11 +63,9 @@ public class ZoneInfoDbTimeZoneProviderEventPreProcessorTest { @Test public void eventWithNonExistingZones_areMappedToUncertainEvent() { - List<String> nonExistingTimeZones = Arrays.asList( - "SystemV/HST10", "Atlantic/Atlantis", "EUROPE/LONDON", "Etc/GMT-5:30"); - - for (String timeZone : nonExistingTimeZones) { - TimeZoneProviderEvent event = timeZoneProviderEvent(timeZone); + for (String timeZone : mNonExistingTimeZones) { + TimeZoneProviderEvent event = timeZoneProviderEvent(timeZone, + ARBITRARY_TIME_ZONE_PROVIDER_STATUS); TimeZoneProviderStatus expectedProviderStatus = new TimeZoneProviderStatus.Builder(event.getTimeZoneProviderStatus()) @@ -73,14 +81,31 @@ public class ZoneInfoDbTimeZoneProviderEventPreProcessorTest { } } - private static TimeZoneProviderEvent timeZoneProviderEvent(String... timeZoneIds) { - TimeZoneProviderStatus providerStatus = new TimeZoneProviderStatus.Builder() - .setLocationDetectionDependencyStatus(DEPENDENCY_STATUS_OK) - .setConnectivityDependencyStatus(DEPENDENCY_STATUS_OK) - .setTimeZoneResolutionOperationStatus(OPERATION_STATUS_OK) - .build(); + @Test + public void eventWithNullProviderStatus_areMappedToUncertainEvent() { + for (String timeZone : mNonExistingTimeZones) { + TimeZoneProviderEvent eventWithNullStatus = timeZoneProviderEvent(timeZone, + /* providerStatus= */ null); + + TimeZoneProviderStatus expectedProviderStatus = + new TimeZoneProviderStatus.Builder() + .setTimeZoneResolutionOperationStatus(OPERATION_STATUS_FAILED) + .build(); + + TimeZoneProviderEvent expectedResultEvent = + TimeZoneProviderEvent.createUncertainEvent( + eventWithNullStatus.getCreationElapsedMillis(), + expectedProviderStatus); + assertWithMessage(timeZone + " with null time zone provider status") + .that(mPreProcessor.preProcess(eventWithNullStatus)) + .isEqualTo(expectedResultEvent); + } + } + + private static TimeZoneProviderEvent timeZoneProviderEvent(String timeZoneId, + TimeZoneProviderStatus providerStatus) { TimeZoneProviderSuggestion suggestion = new TimeZoneProviderSuggestion.Builder() - .setTimeZoneIds(Arrays.asList(timeZoneIds)) + .setTimeZoneIds(Arrays.asList(timeZoneId)) .setElapsedRealtimeMillis(ARBITRARY_TIME_MILLIS) .build(); return TimeZoneProviderEvent.createSuggestionEvent( diff --git a/services/tests/uiservicestests/Android.bp b/services/tests/uiservicestests/Android.bp index e6cf0c38a10c..a63a38da3740 100644 --- a/services/tests/uiservicestests/Android.bp +++ b/services/tests/uiservicestests/Android.bp @@ -54,9 +54,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], dxflags: ["--multi-dex"], @@ -92,3 +92,13 @@ android_test { // Required for TestParameterInjector javacflags: ["-parameters"], } + +test_module_config { + name: "FrameworksUiServicesTests_notification", + base: "FrameworksUiServicesTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + exclude_annotations: ["androidx.test.filters.LargeTest"], +} diff --git a/services/tests/uiservicestests/src/com/android/server/notification/NotificationAttentionHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationAttentionHelperTest.java index 3da80314e6d4..2429ff334efe 100644 --- a/services/tests/uiservicestests/src/com/android/server/notification/NotificationAttentionHelperTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/NotificationAttentionHelperTest.java @@ -243,9 +243,10 @@ public class NotificationAttentionHelperTest extends UiServiceTestCase { } private void initAttentionHelper(TestableFlagResolver flagResolver) { - mAttentionHelper = new NotificationAttentionHelper(getContext(), mock(LightsManager.class), - mAccessibilityManager, mPackageManager, mUserManager, mUsageStats, - mService.mNotificationManagerPrivate, mock(ZenModeHelper.class), flagResolver); + mAttentionHelper = new NotificationAttentionHelper(getContext(), new Object(), + mock(LightsManager.class),mAccessibilityManager, mPackageManager, + mUserManager, mUsageStats, mService.mNotificationManagerPrivate, + mock(ZenModeHelper.class), flagResolver); mAttentionHelper.onSystemReady(); mAttentionHelper.setVibratorHelper(spy(new VibratorHelper(getContext()))); mAttentionHelper.setAudioManager(mAudioManager); diff --git a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java index d1880d2f3528..c95d19539486 100644 --- a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java @@ -180,6 +180,7 @@ import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; +import java.util.concurrent.CountDownLatch; import java.util.concurrent.ThreadLocalRandom; @SmallTest @@ -480,6 +481,34 @@ public class PreferencesHelperTest extends UiServiceTestCase { when(mPm.getPackageUidAsUser(eq(packageName), anyInt())).thenReturn(uid); } + private static void testThreadSafety(Runnable operationToTest, int nThreads, + int nRunsPerThread) throws Exception { + final CountDownLatch startLatch = new CountDownLatch(1); + final CountDownLatch doneLatch = new CountDownLatch(nThreads); + + for (int i = 0; i < nThreads; i++) { + Runnable threadRunnable = () -> { + try { + startLatch.await(); + for (int j = 0; j < nRunsPerThread; j++) { + operationToTest.run(); + } + } catch (InterruptedException e) { + e.printStackTrace(); + } finally { + doneLatch.countDown(); + } + }; + new Thread(threadRunnable, "Test Thread #" + i).start(); + } + + // Ready set go + startLatch.countDown(); + + // Wait for all test threads to be done. + doneLatch.await(); + } + @Test public void testWriteXml_onlyBackupsTargetUser() throws Exception { // Setup package notifications. @@ -6044,6 +6073,35 @@ public class PreferencesHelperTest extends UiServiceTestCase { assertEquals(0, actual.getChannels().stream().filter(c -> c.getId().equals("id2")).count()); } + @Test + public void testRestoredWithoutUid_threadSafety() throws Exception { + when(mPm.getPackageUidAsUser(anyString(), anyInt())).thenReturn(UNKNOWN_UID); + when(mPm.getApplicationInfoAsUser(anyString(), anyInt(), anyInt())).thenThrow( + new PackageManager.NameNotFoundException()); + when(mClock.millis()).thenReturn(System.currentTimeMillis()); + testThreadSafety(() -> { + String id = "id"; + String xml = "<ranking version=\"1\">\n" + + "<package name=\"" + Thread.currentThread()+ "\" show_badge=\"true\">\n" + + "<channel id=\"" + id + "\" name=\"name\" importance=\"2\" " + + "show_badge=\"true\" />\n" + + "</package>\n" + + "<package name=\"" + PKG_P + "\" show_badge=\"true\">\n" + + "</package>\n" + + "</ranking>\n"; + + try { + loadByteArrayXml(xml.getBytes(), true, USER_SYSTEM); + } catch (Exception e) { + throw new RuntimeException(e); + } + + // trigger a removal from the list + mXmlHelper.onPackagesChanged(true, USER_SYSTEM, new String[]{PKG_P}, + new int[]{UNKNOWN_UID}); + }, 20, 50); + } + private static NotificationChannel cloneChannel(NotificationChannel original) { Parcel parcel = Parcel.obtain(); try { diff --git a/services/tests/vibrator/Android.bp b/services/tests/vibrator/Android.bp index da21cd3cf919..9a727eb7603e 100644 --- a/services/tests/vibrator/Android.bp +++ b/services/tests/vibrator/Android.bp @@ -17,9 +17,9 @@ android_test { libs: [ "android.hardware.vibrator-V2-java", - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], static_libs: [ diff --git a/services/tests/vibrator/TEST_MAPPING b/services/tests/vibrator/TEST_MAPPING index 39bd238fc202..b17b96add466 100644 --- a/services/tests/vibrator/TEST_MAPPING +++ b/services/tests/vibrator/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksVibratorServicesTests", - "options": [ - {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "androidx.test.filters.LargeTest"}, - {"exclude-annotation": "org.junit.Ignore"} - ] + "name": "FrameworksVibratorServicesTests" } ], "postsubmit": [ diff --git a/services/tests/vibrator/src/com/android/server/vibrator/VibrationThreadTest.java b/services/tests/vibrator/src/com/android/server/vibrator/VibrationThreadTest.java index 9dac23f075e6..d7004e72bc52 100644 --- a/services/tests/vibrator/src/com/android/server/vibrator/VibrationThreadTest.java +++ b/services/tests/vibrator/src/com/android/server/vibrator/VibrationThreadTest.java @@ -1746,10 +1746,6 @@ public class VibrationThreadTest { assertTrue("Tested duration=" + duration4, duration4 < 2000); // Effect5: played normally after effect4, which may or may not have played. - - verify(mControllerCallbacks).onComplete(eq(VIBRATOR_ID), eq(vibrationId5)); - verifyCallbacksTriggered(vibrationId5, Vibration.Status.FINISHED); - assertEquals(Arrays.asList(expectedPrebaked(VibrationEffect.EFFECT_CLICK)), fakeVibrator.getEffectSegments(vibrationId5)); } diff --git a/services/tests/voiceinteractiontests/Android.bp b/services/tests/voiceinteractiontests/Android.bp index 8c70851f87df..5fbf02cfc984 100644 --- a/services/tests/voiceinteractiontests/Android.bp +++ b/services/tests/voiceinteractiontests/Android.bp @@ -49,9 +49,9 @@ android_test { ], libs: [ - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], certificate: "platform", diff --git a/services/tests/voiceinteractiontests/TEST_MAPPING b/services/tests/voiceinteractiontests/TEST_MAPPING index 6cbc49a2a7e1..466ba54fc8a4 100644 --- a/services/tests/voiceinteractiontests/TEST_MAPPING +++ b/services/tests/voiceinteractiontests/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksVoiceInteractionTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksVoiceInteractionTests" } ], "postsubmit": [ diff --git a/services/tests/wmtests/Android.bp b/services/tests/wmtests/Android.bp index b2922945aff9..d99a6e922ce7 100644 --- a/services/tests/wmtests/Android.bp +++ b/services/tests/wmtests/Android.bp @@ -19,7 +19,7 @@ filegroup { ], } -genrule { +java_genrule { name: "wmtests.protologsrc", srcs: [ ":protolog-impl", @@ -75,9 +75,9 @@ android_test { libs: [ "android.hardware.power-V1-java", - "android.test.mock", - "android.test.base", - "android.test.runner", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], defaults: [ @@ -108,3 +108,35 @@ android_test { ":OverlayTestApp", ], } + +test_module_config { + name: "WmTests_server_policy_Presubmit", + base: "WmTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.policy."], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} + +test_module_config { + name: "WmTests_server_policy", + base: "WmTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.policy."], +} + +test_module_config { + name: "WmTests_wm_utils_Presubmit", + base: "WmTests", + test_suites: [ + "automotive-tests", + "device-tests", + ], + include_filters: ["com.android.server.wm.utils"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java b/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java index a39a1a8637df..3867c44696d3 100644 --- a/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java @@ -30,6 +30,7 @@ import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.verify; +import static com.android.server.wm.ActivityRecord.State.STOPPED; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertWithMessage; @@ -158,7 +159,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { // reset drawing status to test translucent activity backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); final ActivityRecord topActivity = topTask.getTopMostActivity(); makeWindowVisibleAndDrawn(topActivity.findMainWindow()); // simulate translucent @@ -169,7 +170,8 @@ public class BackNavigationControllerTests extends WindowTestsBase { // reset drawing status to test if previous task is translucent activity backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); + makeWindowVisibleAndDrawn(topActivity.findMainWindow()); // simulate translucent recordA.setOccludesParent(false); backNavigationInfo = startBackNavigation(); @@ -180,7 +182,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { topActivity.setOccludesParent(true); recordA.setOccludesParent(true); backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); makeWindowVisibleAndDrawn(topActivity.findMainWindow()); setupKeyguardOccluded(); backNavigationInfo = startBackNavigation(); @@ -188,7 +190,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { .isEqualTo(typeToString(BackNavigationInfo.TYPE_CALLBACK)); backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); doReturn(true).when(recordA).canShowWhenLocked(); backNavigationInfo = startBackNavigation(); assertThat(typeToString(backNavigationInfo.getType())) @@ -245,8 +247,9 @@ public class BackNavigationControllerTests extends WindowTestsBase { assertTrue("Animation scheduled", backNavigationInfo.isPrepareRemoteAnimation()); // reset drawing status + testCase.recordBack.setState(STOPPED, "stopped"); backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); makeWindowVisibleAndDrawn(testCase.recordFront.findMainWindow()); setupKeyguardOccluded(); backNavigationInfo = startBackNavigation(); @@ -255,7 +258,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { // reset drawing status, test if top activity is translucent backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); makeWindowVisibleAndDrawn(testCase.recordFront.findMainWindow()); // simulate translucent testCase.recordFront.setOccludesParent(false); @@ -266,7 +269,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { // reset drawing status, test if bottom activity is translucent backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); makeWindowVisibleAndDrawn(testCase.recordBack.findMainWindow()); // simulate translucent testCase.recordBack.setOccludesParent(false); @@ -277,7 +280,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { // reset drawing status, test canShowWhenLocked backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); doReturn(true).when(testCase.recordBack).canShowWhenLocked(); backNavigationInfo = startBackNavigation(); assertThat(typeToString(backNavigationInfo.getType())) @@ -480,7 +483,10 @@ public class BackNavigationControllerTests extends WindowTestsBase { .isEqualTo(typeToString(BackNavigationInfo.TYPE_RETURN_TO_HOME)); backNavigationInfo.onBackNavigationFinished(false); - mBackNavigationController.clearBackAnimations(); + mBackNavigationController.clearBackAnimations(true); + + final WindowState window = topTask.getTopVisibleAppMainWindow(); + makeWindowVisibleAndDrawn(window); setupKeyguardOccluded(); backNavigationInfo = startBackNavigation(); assertThat(typeToString(backNavigationInfo.getType())) @@ -840,7 +846,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { toHomeBuilder.build(); verify(mAtm.mTaskOrganizerController, never()).addWindowlessStartingSurface( any(), any(), any(), any(), any(), any()); - animationHandler.clearBackAnimateTarget(); + animationHandler.clearBackAnimateTarget(true); openActivities.clear(); // Back to ACTIVITY and TASK have the same logic, just with different target. @@ -937,6 +943,7 @@ public class BackNavigationControllerTests extends WindowTestsBase { testCase.recordFront = record2; testCase.windowBack = window1; testCase.windowFront = window2; + record1.setState(STOPPED, "stopped"); return testCase; } diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayRotationImmersiveAppCompatPolicyTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayRotationImmersiveAppCompatPolicyTests.java index b1057032eb36..393181705f34 100644 --- a/services/tests/wmtests/src/com/android/server/wm/DisplayRotationImmersiveAppCompatPolicyTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/DisplayRotationImmersiveAppCompatPolicyTests.java @@ -26,7 +26,6 @@ import static android.content.res.Configuration.ORIENTATION_UNDEFINED; import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.mock; -import static com.android.dx.mockito.inline.extended.ExtendedMockito.spy; import static com.android.dx.mockito.inline.extended.ExtendedMockito.when; import static org.junit.Assert.assertFalse; @@ -73,7 +72,6 @@ public class DisplayRotationImmersiveAppCompatPolicyTests extends WindowTestsBas when(mMockWindowState.getRequestedVisibleTypes()).thenReturn(0); when(mMockActivityRecord.findMainWindow()).thenReturn(mMockWindowState); - spy(mDisplayContent); doReturn(mMockActivityRecord).when(mDisplayContent).topRunningActivity(); when(mDisplayContent.getIgnoreOrientationRequest()).thenReturn(true); diff --git a/services/tests/wmtests/src/com/android/server/wm/LetterboxTest.java b/services/tests/wmtests/src/com/android/server/wm/LetterboxTest.java index d2494ff3fc9a..fbc4c7b6bd34 100644 --- a/services/tests/wmtests/src/com/android/server/wm/LetterboxTest.java +++ b/services/tests/wmtests/src/com/android/server/wm/LetterboxTest.java @@ -172,14 +172,14 @@ public class LetterboxTest { @Test public void testSurfaceOrigin_applied() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setPosition(mSurfaces.top, -1000, -2000); } @Test public void testApplySurfaceChanges_setColor() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setColor(mSurfaces.top, new float[]{0, 0, 0}); @@ -187,7 +187,7 @@ public class LetterboxTest { assertTrue(mLetterbox.needsApplySurfaceChanges()); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setColor(mSurfaces.top, new float[]{0, 1, 0}); } @@ -195,7 +195,7 @@ public class LetterboxTest { @Test public void testNeedsApplySurfaceChanges_wallpaperBackgroundRequested() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setAlpha(mSurfaces.top, 1.0f); assertFalse(mLetterbox.needsApplySurfaceChanges()); @@ -204,14 +204,14 @@ public class LetterboxTest { assertTrue(mLetterbox.needsApplySurfaceChanges()); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setAlpha(mSurfaces.fullWindowSurface, mDarkScrimAlpha); } @Test public void testNeedsApplySurfaceChanges_setParentSurface() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).reparent(mSurfaces.top, mParentSurface); assertFalse(mLetterbox.needsApplySurfaceChanges()); @@ -220,14 +220,14 @@ public class LetterboxTest { assertTrue(mLetterbox.needsApplySurfaceChanges()); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).reparent(mSurfaces.top, mParentSurface); } @Test public void testApplySurfaceChanges_cornersNotRounded_surfaceFullWindowSurfaceNotCreated() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); assertNull(mSurfaces.fullWindowSurface); } @@ -236,7 +236,7 @@ public class LetterboxTest { public void testApplySurfaceChanges_cornersRounded_surfaceFullWindowSurfaceCreated() { mAreCornersRounded = true; mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); assertNotNull(mSurfaces.fullWindowSurface); } @@ -245,7 +245,7 @@ public class LetterboxTest { public void testApplySurfaceChanges_wallpaperBackground_surfaceFullWindowSurfaceCreated() { mHasWallpaperBackground = true; mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); assertNotNull(mSurfaces.fullWindowSurface); } @@ -254,7 +254,7 @@ public class LetterboxTest { public void testNotIntersectsOrFullyContains_cornersRounded() { mAreCornersRounded = true; mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(0, 0)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); assertTrue(mLetterbox.notIntersectsOrFullyContains(new Rect(1, 2, 9, 9))); } @@ -262,14 +262,19 @@ public class LetterboxTest { @Test public void testSurfaceOrigin_changeCausesReapply() { mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(1000, 2000)); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); clearInvocations(mTransaction); mLetterbox.layout(new Rect(0, 0, 10, 10), new Rect(0, 1, 10, 10), new Point(0, 0)); assertTrue(mLetterbox.needsApplySurfaceChanges()); - mLetterbox.applySurfaceChanges(mTransaction); + applySurfaceChanges(); verify(mTransaction).setPosition(mSurfaces.top, 0, 0); } + private void applySurfaceChanges() { + mLetterbox.applySurfaceChanges(/* syncTransaction */ mTransaction, + /* pendingTransaction */ mTransaction); + } + class SurfaceControlMocker implements Supplier<SurfaceControl.Builder> { private SurfaceControl.Builder mLeftBuilder; public SurfaceControl left; diff --git a/services/tests/wmtests/src/com/android/server/wm/RootWindowContainerTests.java b/services/tests/wmtests/src/com/android/server/wm/RootWindowContainerTests.java index eb79118fe1c7..3078df026d8a 100644 --- a/services/tests/wmtests/src/com/android/server/wm/RootWindowContainerTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/RootWindowContainerTests.java @@ -392,6 +392,8 @@ public class RootWindowContainerTests extends WindowTestsBase { assertEquals(newPipTask, mDisplayContent.getDefaultTaskDisplayArea().getRootPinnedTask()); assertNotEquals(newPipTask, activity1.getTask()); assertFalse("Created PiP task must not be in recents", newPipTask.inRecents); + assertThat(newPipTask.autoRemoveRecents).isTrue(); + assertThat(activity1.getTask().autoRemoveRecents).isFalse(); } /** @@ -427,6 +429,7 @@ public class RootWindowContainerTests extends WindowTestsBase { bounds.scale(0.5f); task.setBounds(bounds); assertFalse(activity.isLetterboxedForFixedOrientationAndAspectRatio()); + assertThat(task.autoRemoveRecents).isFalse(); } /** @@ -451,6 +454,7 @@ public class RootWindowContainerTests extends WindowTestsBase { // Ensure a task has moved over. ensureTaskPlacement(task, activity); assertTrue(task.inPinnedWindowingMode()); + assertThat(task.autoRemoveRecents).isFalse(); } /** @@ -480,6 +484,8 @@ public class RootWindowContainerTests extends WindowTestsBase { ensureTaskPlacement(fullscreenTask, secondActivity); assertTrue(pinnedRootTask.inPinnedWindowingMode()); assertEquals(WINDOWING_MODE_FULLSCREEN, fullscreenTask.getWindowingMode()); + assertThat(pinnedRootTask.autoRemoveRecents).isTrue(); + assertThat(secondActivity.getTask().autoRemoveRecents).isFalse(); } @Test diff --git a/services/tests/wmtests/src/com/android/server/wm/ScreenshotTests.java b/services/tests/wmtests/src/com/android/server/wm/ScreenshotTests.java index 280fe4c30739..34f7ebb0f7dd 100644 --- a/services/tests/wmtests/src/com/android/server/wm/ScreenshotTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/ScreenshotTests.java @@ -66,6 +66,7 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.TestName; +import java.time.Duration; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @@ -131,7 +132,7 @@ public class ScreenshotTests { assertTrue("Failed to wait for transaction to get committed", countDownLatch.await(WAIT_TIME_S, TimeUnit.SECONDS)); assertTrue("Failed to wait for stable geometry", - waitForStableWindowGeometry(WAIT_TIME_S, TimeUnit.SECONDS)); + waitForStableWindowGeometry(Duration.ofSeconds(WAIT_TIME_S))); ScreenCapture.LayerCaptureArgs args = new ScreenCapture.LayerCaptureArgs.Builder(secureSC) .setCaptureSecureLayers(true) @@ -212,7 +213,7 @@ public class ScreenshotTests { assertTrue("Failed to wait for transaction to get committed", countDownLatch.await(WAIT_TIME_S, TimeUnit.SECONDS)); assertTrue("Failed to wait for stable geometry", - waitForStableWindowGeometry(WAIT_TIME_S, TimeUnit.SECONDS)); + waitForStableWindowGeometry(Duration.ofSeconds(WAIT_TIME_S))); ScreenshotHardwareBuffer[] screenCapture = new ScreenshotHardwareBuffer[1]; Bitmap screenshot = null; diff --git a/services/tests/wmtests/src/com/android/server/wm/TaskTests.java b/services/tests/wmtests/src/com/android/server/wm/TaskTests.java index e01cea3d62f8..ef0aa9ef7666 100644 --- a/services/tests/wmtests/src/com/android/server/wm/TaskTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/TaskTests.java @@ -42,6 +42,7 @@ import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.times; import static com.android.dx.mockito.inline.extended.ExtendedMockito.verify; import static com.android.server.policy.WindowManagerPolicy.USER_ROTATION_FREE; +import static com.android.server.wm.ActivityRecord.State.RESUMED; import static com.android.server.wm.Task.FLAG_FORCE_HIDDEN_FOR_TASK_ORG; import static com.android.server.wm.TaskFragment.EMBEDDED_DIM_AREA_PARENT_TASK; import static com.android.server.wm.TaskFragment.TASK_FRAGMENT_VISIBILITY_VISIBLE_BEHIND_TRANSLUCENT; @@ -222,6 +223,27 @@ public class TaskTests extends WindowTestsBase { } @Test + public void testReparentPinnedActivityBackToOriginalTask() { + final ActivityRecord activityMain = new ActivityBuilder(mAtm).setCreateTask(true).build(); + final Task originalTask = activityMain.getTask(); + final ActivityRecord activityPip = new ActivityBuilder(mAtm).setTask(originalTask).build(); + activityPip.setState(RESUMED, "test"); + mAtm.mRootWindowContainer.moveActivityToPinnedRootTask(activityPip, + null /* launchIntoPipHostActivity */, "test"); + final Task pinnedActivityTask = activityPip.getTask(); + + // Simulate pinnedActivityTask unintentionally added to recent during top activity resume. + mAtm.getRecentTasks().getRawTasks().add(pinnedActivityTask); + + // Reparent the activity back to its original task when exiting PIP mode. + pinnedActivityTask.setWindowingMode(WINDOWING_MODE_FULLSCREEN); + + assertThat(activityPip.getTask()).isEqualTo(originalTask); + assertThat(originalTask.autoRemoveRecents).isFalse(); + assertThat(mAtm.getRecentTasks().getRawTasks()).containsExactly(originalTask); + } + + @Test public void testReparent_BetweenDisplays() { // Create first task on primary display. final Task rootTask1 = createTask(mDisplayContent); diff --git a/services/tests/wmtests/src/com/android/server/wm/TrustedOverlayTests.java b/services/tests/wmtests/src/com/android/server/wm/TrustedOverlayTests.java index f1d84cfc636d..529e9b77b4e0 100644 --- a/services/tests/wmtests/src/com/android/server/wm/TrustedOverlayTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/TrustedOverlayTests.java @@ -49,6 +49,7 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.TestName; +import java.time.Duration; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @@ -144,7 +145,7 @@ public class TrustedOverlayTests { } } return false; - }, TIMEOUT_S, TimeUnit.SECONDS); + }, Duration.ofSeconds(TIMEOUT_S)); assertAndDumpWindowState(TAG, "Failed to find window or was not marked trusted", foundTrusted[0]); @@ -209,7 +210,7 @@ public class TrustedOverlayTests { } } return foundTrusted[0] && foundTrusted[1]; - }, TIMEOUT_S, TimeUnit.SECONDS); + }, Duration.ofSeconds(TIMEOUT_S)); if (!foundTrusted[0] || !foundTrusted[1]) { CtsWindowInfoUtils.dumpWindowsOnScreen(TAG, mName.getMethodName()); diff --git a/services/tests/wmtests/src/com/android/server/wm/WindowProcessControllerTests.java b/services/tests/wmtests/src/com/android/server/wm/WindowProcessControllerTests.java index 059fed20c38d..b11eca9963a7 100644 --- a/services/tests/wmtests/src/com/android/server/wm/WindowProcessControllerTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/WindowProcessControllerTests.java @@ -18,6 +18,7 @@ package com.android.server.wm; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED; +import static android.content.pm.ActivityInfo.INSETS_DECOUPLED_CONFIGURATION_ENFORCED; import static android.content.res.Configuration.GRAMMATICAL_GENDER_NOT_SPECIFIED; import static android.content.res.Configuration.ORIENTATION_LANDSCAPE; import static android.content.res.Configuration.ORIENTATION_PORTRAIT; @@ -86,6 +87,7 @@ public class WindowProcessControllerTests extends WindowTestsBase { ApplicationInfo info = mock(ApplicationInfo.class); info.packageName = "test.package.name"; + doReturn(true).when(info).isChangeEnabled(INSETS_DECOUPLED_CONFIGURATION_ENFORCED); mWpc = new WindowProcessController( mAtm, info, null, 0, -1, null, mMockListener); mWpc.setThread(mock(IApplicationThread.class)); diff --git a/services/translation/java/com/android/server/translation/TEST_MAPPING b/services/translation/java/com/android/server/translation/TEST_MAPPING index 4090b4ab2c75..0b97358d430d 100644 --- a/services/translation/java/com/android/server/translation/TEST_MAPPING +++ b/services/translation/java/com/android/server/translation/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "CtsTranslationTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTranslationTestCases" } ] } diff --git a/services/usage/OWNERS b/services/usage/OWNERS index 26d9b10c7907..678c7acc7fec 100644 --- a/services/usage/OWNERS +++ b/services/usage/OWNERS @@ -1,7 +1,9 @@ +# Bug component: 532296 +set noparent + mwachens@google.com varunshah@google.com -huiyu@google.com -yamasani@google.com +guanxin@google.com per-file *StorageStats* = file:/core/java/android/os/storage/OWNERS per-file *Broadcast* = sudheersai@google.com
\ No newline at end of file diff --git a/services/usage/java/com/android/server/usage/TEST_MAPPING b/services/usage/java/com/android/server/usage/TEST_MAPPING index 6e845433492b..79b294c00262 100644 --- a/services/usage/java/com/android/server/usage/TEST_MAPPING +++ b/services/usage/java/com/android/server/usage/TEST_MAPPING @@ -1,52 +1,21 @@ { "presubmit": [ { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.app.usage" - } - ] + "name": "FrameworksCoreTests_usage" }, { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.usage" - }, - { - "exclude-filter": "com.android.server.usage.StorageStatsServiceTest" - } - ] + "name": "FrameworksServicesTests_android_server_usage" }, { - "name": "CtsBRSTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "CtsBRSTestCases" } ], "postsubmit": [ { - "name": "CtsUsageStatsTestCases", - "options": [ - { - "include-filter": "android.app.usage.cts.UsageStatsTest" - } - ] + "name": "CtsUsageStatsTestCases_cts_usagestatstest_ExcludeMediumAndLarge" }, { - "name": "CtsShortcutManagerTestCases", - "options": [ - { - "include-filter": "android.content.pm.cts.shortcutmanager.ShortcutManagerUsageTest" - } - ] + "name": "CtsShortcutManagerTestCases_shortcutmanager_shortcutmanagerusagetest" } ] } diff --git a/services/usb/OWNERS b/services/usb/OWNERS index d35dbb56437b..2dff392d4e34 100644 --- a/services/usb/OWNERS +++ b/services/usb/OWNERS @@ -1,9 +1,9 @@ -aprasath@google.com -kumarashishg@google.com -sarup@google.com anothermark@google.com +febinthattil@google.com +aprasath@google.com badhri@google.com elaurent@google.com albertccwang@google.com jameswei@google.com -howardyen@google.com
\ No newline at end of file +howardyen@google.com +kumarashishg@google.com
\ No newline at end of file diff --git a/services/voiceinteraction/TEST_MAPPING b/services/voiceinteraction/TEST_MAPPING index e3d254948f8d..3a68b3327bbd 100644 --- a/services/voiceinteraction/TEST_MAPPING +++ b/services/voiceinteraction/TEST_MAPPING @@ -12,44 +12,19 @@ ] }, { - "name": "CtsAssistTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsAssistTestCases" }, { - "name": "CtsVoiceInteractionHostTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsVoiceInteractionHostTestCases" }, { - "name": "CtsLocalVoiceInteraction", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsLocalVoiceInteraction" }, { - "name": "FrameworksVoiceInteractionTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "FrameworksVoiceInteractionTests" }, { - "name": "CtsSoundTriggerTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsSoundTriggerTestCases" } ] } diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger_middleware/TEST_MAPPING b/services/voiceinteraction/java/com/android/server/soundtrigger_middleware/TEST_MAPPING index 9ed894bc1ca9..509d95e01f47 100644 --- a/services/voiceinteraction/java/com/android/server/soundtrigger_middleware/TEST_MAPPING +++ b/services/voiceinteraction/java/com/android/server/soundtrigger_middleware/TEST_MAPPING @@ -1,12 +1,7 @@ { "presubmit": [ { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.soundtrigger_middleware" - } - ] + "name": "FrameworksServicesTests_android_server_soundtrigger_middleware" } ] } diff --git a/telecomm/TEST_MAPPING b/telecomm/TEST_MAPPING index 775f1b83af94..4f6e55858b8d 100644 --- a/telecomm/TEST_MAPPING +++ b/telecomm/TEST_MAPPING @@ -1,70 +1,30 @@ { "presubmit": [ { - "name": "TeleServiceTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TeleServiceTests" }, { - "name": "TelecomUnitTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TelecomUnitTests" }, { - "name": "TelephonyProviderTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TelephonyProviderTests" }, { - "name": "CtsTelephony2TestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephony2TestCases" }, { - "name": "CtsTelephony3TestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephony3TestCases" }, { - "name": "CtsSimRestrictedApisTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsSimRestrictedApisTestCases" }, { - "name": "CtsTelephonyProviderTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephonyProviderTestCases" } ], "presubmit-large": [ { - "name": "CtsTelecomTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelecomTestCases" } ] } diff --git a/telephony/OWNERS b/telephony/OWNERS index 7607c64150d8..92af034217a9 100644 --- a/telephony/OWNERS +++ b/telephony/OWNERS @@ -15,4 +15,4 @@ per-file CarrierConfigManager.java=set noparent per-file CarrierConfigManager.java=amruthr@google.com,tgunn@google.com,rgreenwalt@google.com,satk@google.com #Domain Selection is jointly owned, add additional owners for domain selection specific files -per-file TransportSelectorCallback.java,WwanSelectorCallback.java,DomainSelectionService.java,DomainSelectionService.aidl,DomainSelector.java,EmergencyRegResult.java,EmergencyRegResult.aidl,IDomainSelectionServiceController.aidl,IDomainSelector.aidl,ITransportSelectorCallback.aidl,ITransportSelectorResultCallback.aidl,IWwanSelectorCallback.aidl,IWwanSelectorResultCallback.aidl=hwangoo@google.com,forestchoi@google.com,avinashmp@google.com,mkoon@google.com,seheele@google.com,radhikaagrawal@google.com,jdyou@google.com +per-file TransportSelectorCallback.java,WwanSelectorCallback.java,DomainSelectionService.java,DomainSelectionService.aidl,DomainSelector.java,EmergencyRegResult.java,EmergencyRegResult.aidl,IDomainSelectionServiceController.aidl,IDomainSelector.aidl,ITransportSelectorCallback.aidl,ITransportSelectorResultCallback.aidl,IWwanSelectorCallback.aidl,IWwanSelectorResultCallback.aidl=hwangoo@google.com,jaesikkong@google.com,avinashmp@google.com,mkoon@google.com,seheele@google.com,radhikaagrawal@google.com,jdyou@google.com diff --git a/telephony/TEST_MAPPING b/telephony/TEST_MAPPING index 73e3dcdb8dd0..4a4bae32ed8d 100644 --- a/telephony/TEST_MAPPING +++ b/telephony/TEST_MAPPING @@ -1,60 +1,25 @@ { "presubmit": [ { - "name": "TeleServiceTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TeleServiceTests" }, { - "name": "TelecomUnitTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TelecomUnitTests" }, { - "name": "TelephonyProviderTests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TelephonyProviderTests" }, { - "name": "CtsTelephony2TestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephony2TestCases" }, { - "name": "CtsTelephony3TestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephony3TestCases" }, { - "name": "CtsSimRestrictedApisTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsSimRestrictedApisTestCases" }, { - "name": "CtsTelephonyProviderTestCases", - "options": [ - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "CtsTelephonyProviderTestCases" } ] } diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index dbe4f2782616..609449ff40bd 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -10586,20 +10586,31 @@ public class TelephonyManager { return null; } - /** @hide */ + /** + * Get the names of packages with carrier privileges for the current subscription. + * + * @throws UnsupportedOperationException If the device does not have {@link + * PackageManager#FEATURE_TELEPHONY_SUBSCRIPTION} + * @hide + */ + @FlaggedApi(android.os.Flags.FLAG_MAINLINE_VCN_PLATFORM_API) + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) - public List<String> getPackagesWithCarrierPrivileges() { + @RequiresFeature(PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION) + @NonNull + public Set<String> getPackagesWithCarrierPrivileges() { + final Set<String> result = new HashSet<>(); try { ITelephony telephony = getITelephony(); if (telephony != null) { - return telephony.getPackagesWithCarrierPrivileges(getPhoneId()); + result.addAll(telephony.getPackagesWithCarrierPrivileges(getPhoneId())); } } catch (RemoteException ex) { Rlog.e(TAG, "getPackagesWithCarrierPrivileges RemoteException", ex); } catch (NullPointerException ex) { Rlog.e(TAG, "getPackagesWithCarrierPrivileges NPE", ex); } - return Collections.EMPTY_LIST; + return result; } /** diff --git a/telephony/java/android/telephony/satellite/SatelliteManager.java b/telephony/java/android/telephony/satellite/SatelliteManager.java index 2a359cd56d1b..6caed14bc31d 100644 --- a/telephony/java/android/telephony/satellite/SatelliteManager.java +++ b/telephony/java/android/telephony/satellite/SatelliteManager.java @@ -371,6 +371,24 @@ public final class SatelliteManager { @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG) public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24; + /** + * Telephony framework needs to access the current location of the device to perform the + * request. However, location in the settings is disabled by users. + * + * @hide + */ + @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG) + public static final int SATELLITE_RESULT_LOCATION_DISABLED = 25; + + /** + * Telephony framework needs to access the current location of the device to perform the + * request. However, Telephony fails to fetch the current location from location service. + * + * @hide + */ + @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG) + public static final int SATELLITE_RESULT_LOCATION_NOT_AVAILABLE = 26; + /** @hide */ @IntDef(prefix = {"SATELLITE_RESULT_"}, value = { SATELLITE_RESULT_SUCCESS, @@ -397,7 +415,9 @@ public final class SatelliteManager { SATELLITE_RESULT_REQUEST_IN_PROGRESS, SATELLITE_RESULT_MODEM_BUSY, SATELLITE_RESULT_ILLEGAL_STATE, - SATELLITE_RESULT_MODEM_TIMEOUT + SATELLITE_RESULT_MODEM_TIMEOUT, + SATELLITE_RESULT_LOCATION_DISABLED, + SATELLITE_RESULT_LOCATION_NOT_AVAILABLE }) @Retention(RetentionPolicy.SOURCE) public @interface SatelliteResult {} diff --git a/test-mock/Android.bp b/test-mock/Android.bp index e29d321e5105..71f303311047 100644 --- a/test-mock/Android.bp +++ b/test-mock/Android.bp @@ -47,14 +47,16 @@ java_sdk_library { compile_dex: true, default_to_stubs: true, dist_group: "android", + + // This module cannot generate stubs from the api signature files as stubs depends on the + // private APIs, which are not visible in the api signature files. + build_from_text_stub: false, } java_library { name: "android.test.mock.ravenwood", + defaults: ["ravenwood-internal-only-visibility-java"], srcs: [":android-test-mock-sources"], - visibility: [ - "//frameworks/base", - ], } android_ravenwood_test { diff --git a/test-runner/Android.bp b/test-runner/Android.bp index 6b5be3cba204..bb2c4d97c87a 100644 --- a/test-runner/Android.bp +++ b/test-runner/Android.bp @@ -32,14 +32,28 @@ java_sdk_library { javacflags: ["-Xep:DepAnn:ERROR"], }, - libs: [ - "android.test.base", - "android.test.mock", - ], - stub_only_libs: [ - "android.test.base", - "android.test.mock", + impl_only_libs: [ + "android.test.base.impl", + "android.test.mock.impl", ], + public: { + libs: [ + "android.test.base.stubs", + "android.test.mock.stubs", + ], + }, + system: { + libs: [ + "android.test.base.stubs.system", + "android.test.mock.stubs.system", + ], + }, + test: { + libs: [ + "android.test.base.stubs.test", + "android.test.mock.stubs.test", + ], + }, api_packages: [ "android.test", "android.test.suitebuilder", @@ -64,7 +78,7 @@ java_library { sdk_version: "current", libs: [ "android.test.base_static", - "android.test.mock", + "android.test.mock.stubs", "junit", ], } diff --git a/test-runner/tests/Android.bp b/test-runner/tests/Android.bp index 0c0c0805f2d3..39f41ed7f667 100644 --- a/test-runner/tests/Android.bp +++ b/test-runner/tests/Android.bp @@ -30,8 +30,8 @@ android_test { libs: [ "android.test.runner.impl", - "android.test.base", - "android.test.mock", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], static_libs: [ "junit", diff --git a/tests/AppLaunch/Android.bp b/tests/AppLaunch/Android.bp index f838c5a80c28..90a00fe6083e 100644 --- a/tests/AppLaunch/Android.bp +++ b/tests/AppLaunch/Android.bp @@ -14,11 +14,12 @@ android_test { platform_apis: true, certificate: "platform", libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], static_libs: [ "androidx.test.rules", - "ub-uiautomator"], + "ub-uiautomator", + ], test_suites: ["device-tests"], } diff --git a/tests/AttestationVerificationTest/Android.bp b/tests/AttestationVerificationTest/Android.bp index b98f8cb0c21d..5f0908959ed5 100644 --- a/tests/AttestationVerificationTest/Android.bp +++ b/tests/AttestationVerificationTest/Android.bp @@ -32,8 +32,8 @@ android_test { }, test_suites: ["device-tests"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "compatibility-device-util-axt", diff --git a/tests/BinaryTransparencyHostTest/Android.bp b/tests/BinaryTransparencyHostTest/Android.bp index 38cb9869f165..e14e5fea001f 100644 --- a/tests/BinaryTransparencyHostTest/Android.bp +++ b/tests/BinaryTransparencyHostTest/Android.bp @@ -32,7 +32,7 @@ java_test_host { static_libs: [ "truth", ], - data: [ + device_common_data: [ ":BinaryTransparencyTestApp", ":EasterEgg", ":FeatureSplitBase", diff --git a/tests/BrowserPowerTest/Android.bp b/tests/BrowserPowerTest/Android.bp index a8a9897c0e86..100e975b4d5e 100644 --- a/tests/BrowserPowerTest/Android.bp +++ b/tests/BrowserPowerTest/Android.bp @@ -24,8 +24,8 @@ package { android_test { name: "BrowserPowerTests", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], // Include all test java files. diff --git a/tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.bp b/tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.bp index 5edb1de9586e..4aeca5b04602 100644 --- a/tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.bp +++ b/tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.bp @@ -24,7 +24,7 @@ android_test { name: "SmartCamera-tests", platform_apis: true, srcs: ["src/**/*.java"], - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], static_libs: [ "guava", "junit", diff --git a/tests/ChoreographerTests/Android.bp b/tests/ChoreographerTests/Android.bp index 3f48d70d659f..69a9d180bfd3 100644 --- a/tests/ChoreographerTests/Android.bp +++ b/tests/ChoreographerTests/Android.bp @@ -26,8 +26,8 @@ android_test { name: "ChoreographerTests", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/tests/CompanionDeviceMultiDeviceTests/client/Android.bp b/tests/CompanionDeviceMultiDeviceTests/client/Android.bp index 9994826d061a..ce63fe89fe2e 100644 --- a/tests/CompanionDeviceMultiDeviceTests/client/Android.bp +++ b/tests/CompanionDeviceMultiDeviceTests/client/Android.bp @@ -40,8 +40,8 @@ android_test { "mobly-snippet-lib", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], optimize: { diff --git a/tests/CompanionDeviceMultiDeviceTests/host/Android.bp b/tests/CompanionDeviceMultiDeviceTests/host/Android.bp index 37cb8500fbab..a0e047759dab 100644 --- a/tests/CompanionDeviceMultiDeviceTests/host/Android.bp +++ b/tests/CompanionDeviceMultiDeviceTests/host/Android.bp @@ -36,7 +36,7 @@ python_test_host { unit_test: false, tags: ["mobly"], }, - data: [ + device_common_data: [ ":cdm_snippet_legacy", ], version: { diff --git a/tests/CoreTests/android/Android.bp b/tests/CoreTests/android/Android.bp index 97a6e5fd4d1b..85e951e099ce 100644 --- a/tests/CoreTests/android/Android.bp +++ b/tests/CoreTests/android/Android.bp @@ -12,7 +12,7 @@ android_test { srcs: ["**/*.java"], libs: [ "android.test.runner.stubs", - "org.apache.http.legacy", + "org.apache.http.legacy.stubs", "android.test.base.stubs", ], sdk_version: "current", diff --git a/tests/CtsSurfaceControlTestsStaging/Android.bp b/tests/CtsSurfaceControlTestsStaging/Android.bp index 1038c9e93931..8d93b28b9acb 100644 --- a/tests/CtsSurfaceControlTestsStaging/Android.bp +++ b/tests/CtsSurfaceControlTestsStaging/Android.bp @@ -28,8 +28,8 @@ android_test { name: "CtsSurfaceControlTestsStaging", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/tests/DataIdleTest/Android.bp b/tests/DataIdleTest/Android.bp index f9509cc9a4bf..8839df664abf 100644 --- a/tests/DataIdleTest/Android.bp +++ b/tests/DataIdleTest/Android.bp @@ -27,8 +27,8 @@ android_test { name: "DataIdleTest", platform_apis: true, libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], srcs: ["src/**/*.java"], diff --git a/tests/DynamicCodeLoggerIntegrationTests/Android.bp b/tests/DynamicCodeLoggerIntegrationTests/Android.bp index 3f2c80831565..45bbcb434da5 100644 --- a/tests/DynamicCodeLoggerIntegrationTests/Android.bp +++ b/tests/DynamicCodeLoggerIntegrationTests/Android.bp @@ -55,6 +55,8 @@ android_test { java_resources: [ ":DynamicCodeLoggerTestLibrary", + ], + device_first_java_resources: [ ":DynamicCodeLoggerNativeExecutable", ], } diff --git a/tests/EnforcePermission/perf-app/Android.bp b/tests/EnforcePermission/perf-app/Android.bp index 6d04fdc821bb..dbafd739c7bc 100644 --- a/tests/EnforcePermission/perf-app/Android.bp +++ b/tests/EnforcePermission/perf-app/Android.bp @@ -32,8 +32,8 @@ android_test { "androidx.test.rules", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], data: [ ":EnforcePermissionTestHelper", diff --git a/tests/EnforcePermission/test-app/Android.bp b/tests/EnforcePermission/test-app/Android.bp index 065ab33448e3..64f850b1e147 100644 --- a/tests/EnforcePermission/test-app/Android.bp +++ b/tests/EnforcePermission/test-app/Android.bp @@ -27,8 +27,8 @@ android_test { "androidx.test.rules", ], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], data: [ ":EnforcePermissionTestHelper", diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/close/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/close/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/close/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/layoutchange/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/layoutchange/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/layoutchange/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/open/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/open/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/open/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/pip/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/pip/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/pip/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rotation/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rotation/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rotation/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rtl/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rtl/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/rtl/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/splitscreen/OWNERS b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/splitscreen/OWNERS new file mode 100644 index 000000000000..981b3168cdbb --- /dev/null +++ b/tests/FlickerTests/ActivityEmbedding/src/com/android/server/wm/flicker/activityembedding/splitscreen/OWNERS @@ -0,0 +1 @@ +# Bug component: 1168918 diff --git a/tests/FlickerTests/Android.bp b/tests/FlickerTests/Android.bp index d658d5991a57..27e9ffa4cea5 100644 --- a/tests/FlickerTests/Android.bp +++ b/tests/FlickerTests/Android.bp @@ -31,7 +31,7 @@ java_defaults { enabled: false, }, test_suites: ["device-tests"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], static_libs: [ "androidx.test.ext.junit", "flickertestapplib", diff --git a/tests/FrameworkPerf/Android.bp b/tests/FrameworkPerf/Android.bp index 9be3ab795b86..4e39fe1c5e4a 100644 --- a/tests/FrameworkPerf/Android.bp +++ b/tests/FrameworkPerf/Android.bp @@ -12,8 +12,8 @@ android_test { srcs: ["**/*.java"], platform_apis: true, libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], aaptflags: [ diff --git a/tests/FsVerityTest/Android.bp b/tests/FsVerityTest/Android.bp index 02268c37a5a3..c2dfa0fffb3b 100644 --- a/tests/FsVerityTest/Android.bp +++ b/tests/FsVerityTest/Android.bp @@ -43,7 +43,7 @@ java_test_host { data_device_bins_both: [ "block_device_writer", ], - data: [ + device_common_data: [ ":FsVerityTestApp", ], } diff --git a/tests/GamePerformance/Android.bp b/tests/GamePerformance/Android.bp index f250a1bbdaca..964f0b914c65 100644 --- a/tests/GamePerformance/Android.bp +++ b/tests/GamePerformance/Android.bp @@ -33,8 +33,8 @@ android_test_helper_app { srcs: ["src/**/*.java"], static_libs: ["androidx.test.rules"], libs: [ - "android.test.base", - "android.test.runner", + "android.test.base.stubs.system", + "android.test.runner.stubs.system", ], platform_apis: true, certificate: "platform", diff --git a/tests/Input/Android.bp b/tests/Input/Android.bp index f367c38b06e9..084f9bd6d682 100644 --- a/tests/Input/Android.bp +++ b/tests/Input/Android.bp @@ -50,8 +50,8 @@ android_test { "truth", ], libs: [ - "android.test.mock", - "android.test.base", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", ], test_suites: ["device-tests"], } diff --git a/tests/Input/src/com/android/test/input/AnrTest.kt b/tests/Input/src/com/android/test/input/AnrTest.kt index 8d1fc508ffe7..d32cedb24a36 100644 --- a/tests/Input/src/com/android/test/input/AnrTest.kt +++ b/tests/Input/src/com/android/test/input/AnrTest.kt @@ -40,7 +40,7 @@ import androidx.test.uiautomator.Until import com.android.cts.input.DebugInputRule import com.android.cts.input.UinputTouchScreen -import java.util.concurrent.TimeUnit +import java.time.Duration import org.junit.After import org.junit.Assert.assertEquals @@ -193,6 +193,6 @@ class AnrTest { val flags = " -W -n " val startCmd = "am start $flags $PACKAGE_NAME/.UnresponsiveGestureMonitorActivity" instrumentation.uiAutomation.executeShellCommand(startCmd) - waitForStableWindowGeometry(5L, TimeUnit.SECONDS) + waitForStableWindowGeometry(Duration.ofSeconds(5)) } } diff --git a/tests/InputMethodStressTest/Android.bp b/tests/InputMethodStressTest/Android.bp index 5ed8d8d528c4..2697d32dd622 100644 --- a/tests/InputMethodStressTest/Android.bp +++ b/tests/InputMethodStressTest/Android.bp @@ -20,7 +20,7 @@ package { android_test { name: "InputMethodStressTest", srcs: ["src/**/*.java"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs"], static_libs: [ "androidx.test.ext.junit", "androidx.test.uiautomator_uiautomator", diff --git a/tests/InputScreenshotTest/Android.bp b/tests/InputScreenshotTest/Android.bp index 927b101012c5..12ab550c2da2 100644 --- a/tests/InputScreenshotTest/Android.bp +++ b/tests/InputScreenshotTest/Android.bp @@ -67,8 +67,8 @@ android_test { "truth", ], libs: [ - "android.test.mock", - "android.test.base", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", ], test_suites: ["device-tests"], compile_multilib: "both", diff --git a/tests/InputScreenshotTest/robotests/Android.bp b/tests/InputScreenshotTest/robotests/Android.bp index d63fd69ae4d9..b2414a85c095 100644 --- a/tests/InputScreenshotTest/robotests/Android.bp +++ b/tests/InputScreenshotTest/robotests/Android.bp @@ -61,9 +61,9 @@ android_robolectric_test { "uiautomator-helpers", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "truth", ], upstream: true, diff --git a/tests/Internal/Android.bp b/tests/Internal/Android.bp index 827ff4fbd989..bb4e1ec9b6f2 100644 --- a/tests/Internal/Android.bp +++ b/tests/Internal/Android.bp @@ -14,7 +14,7 @@ android_test { }, // Include some source files directly to be able to access package members srcs: ["src/**/*.java"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], static_libs: [ "junit", "androidx.test.rules", diff --git a/tests/Internal/src/com/android/internal/os/OWNERS b/tests/Internal/src/com/android/internal/os/OWNERS new file mode 100644 index 000000000000..64ffa463bac1 --- /dev/null +++ b/tests/Internal/src/com/android/internal/os/OWNERS @@ -0,0 +1,2 @@ +# ApplicationSharedMemory +per-file *ApplicationSharedMemory* = file:/PERFORMANCE_OWNERS diff --git a/tests/JobSchedulerPerfTests/OWNERS b/tests/JobSchedulerPerfTests/OWNERS index 6f207fb1a00e..c8345f71b39a 100644 --- a/tests/JobSchedulerPerfTests/OWNERS +++ b/tests/JobSchedulerPerfTests/OWNERS @@ -1 +1 @@ -include /apex/jobscheduler/OWNERS +include /apex/jobscheduler/JOB_OWNERS diff --git a/tests/JobSchedulerTestApp/OWNERS b/tests/JobSchedulerTestApp/OWNERS index 6f207fb1a00e..c8345f71b39a 100644 --- a/tests/JobSchedulerTestApp/OWNERS +++ b/tests/JobSchedulerTestApp/OWNERS @@ -1 +1 @@ -include /apex/jobscheduler/OWNERS +include /apex/jobscheduler/JOB_OWNERS diff --git a/tests/LocalizationTest/Android.bp b/tests/LocalizationTest/Android.bp index 909ca5972552..5d9901bb4d0d 100644 --- a/tests/LocalizationTest/Android.bp +++ b/tests/LocalizationTest/Android.bp @@ -25,9 +25,9 @@ android_test { name: "LocalizationTest", srcs: ["java/**/*.kt"], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], static_libs: [ "androidx.test.core", diff --git a/tests/MemoryUsage/Android.bp b/tests/MemoryUsage/Android.bp index e30a0a7cd8b5..deb46636e5b2 100644 --- a/tests/MemoryUsage/Android.bp +++ b/tests/MemoryUsage/Android.bp @@ -14,8 +14,8 @@ android_test { platform_apis: true, certificate: "platform", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], } diff --git a/tests/MultiUser/Android.bp b/tests/MultiUser/Android.bp index bde309fe3015..e4d9f02b3d02 100644 --- a/tests/MultiUser/Android.bp +++ b/tests/MultiUser/Android.bp @@ -18,9 +18,9 @@ android_test { "services.core", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], certificate: "platform", test_suites: ["device-tests"], diff --git a/tests/NetworkSecurityConfigTest/Android.bp b/tests/NetworkSecurityConfigTest/Android.bp index 473eadbcad73..4c48eaa4622e 100644 --- a/tests/NetworkSecurityConfigTest/Android.bp +++ b/tests/NetworkSecurityConfigTest/Android.bp @@ -11,8 +11,8 @@ android_test { name: "NetworkSecurityConfigTests", certificate: "platform", libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], static_libs: ["junit"], // Include all test java files. diff --git a/tests/OdmApps/Android.bp b/tests/OdmApps/Android.bp index a5c6d6513f50..9f32d4628769 100644 --- a/tests/OdmApps/Android.bp +++ b/tests/OdmApps/Android.bp @@ -26,7 +26,7 @@ java_test_host { srcs: ["src/**/*.java"], libs: ["tradefed"], test_suites: ["device-tests"], - data: [ + device_common_data: [ ":TestOdmApp", ":TestOdmPrivApp", ], diff --git a/tests/OneMedia/Android.bp b/tests/OneMedia/Android.bp index a43cd39f0dcb..a1817ccb662a 100644 --- a/tests/OneMedia/Android.bp +++ b/tests/OneMedia/Android.bp @@ -15,7 +15,7 @@ android_app { ], platform_apis: true, certificate: "platform", - libs: ["org.apache.http.legacy"], + libs: ["org.apache.http.legacy.stubs.system"], optional_uses_libs: ["org.apache.http.legacy"], optimize: { enabled: false, diff --git a/tests/PackageWatchdog/Android.bp b/tests/PackageWatchdog/Android.bp index 2c5fdd3228ed..096555eb3056 100644 --- a/tests/PackageWatchdog/Android.bp +++ b/tests/PackageWatchdog/Android.bp @@ -36,7 +36,7 @@ android_test { "services.net", "truth", ], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], jni_libs: [ // mockito-target-extended dependencies "libdexmakerjvmtiagent", diff --git a/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java b/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java index 3722fefb12ad..c0e90f9232d6 100644 --- a/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java +++ b/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java @@ -35,6 +35,7 @@ import static org.mockito.Mockito.when; import android.Manifest; import android.content.Context; +import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.VersionedPackage; @@ -77,6 +78,7 @@ import org.mockito.stubbing.Answer; import java.io.File; import java.lang.reflect.Field; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -413,6 +415,311 @@ public class CrashRecoveryTest { verify(rescuePartyObserver, never()).executeBootLoopMitigation(2); } + @Test + @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS) + public void testCrashLoopWithRescuePartyAndRollbackObserver() throws Exception { + PackageWatchdog watchdog = createWatchdog(); + RescuePartyObserver rescuePartyObserver = setUpRescuePartyObserver(watchdog); + RollbackPackageHealthObserver rollbackObserver = + setUpRollbackPackageHealthObserver(watchdog); + VersionedPackage versionedPackageA = new VersionedPackage(APP_A, VERSION_CODE); + + when(mMockPackageManager.getApplicationInfo(anyString(), anyInt())).then(inv -> { + ApplicationInfo info = new ApplicationInfo(); + info.flags |= ApplicationInfo.FLAG_PERSISTENT + | ApplicationInfo.FLAG_SYSTEM; + return info; + }); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: SCOPED_DEVICE_CONFIG_RESET + verify(rescuePartyObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: ALL_DEVICE_CONFIG_RESET + verify(rescuePartyObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 3); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: WARM_REBOOT + verify(rescuePartyObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 3); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Low impact rollback + verify(rollbackObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + + // update available rollbacks to mock rollbacks being applied after the call to + // rollbackObserver.execute + when(mRollbackManager.getAvailableRollbacks()).thenReturn( + List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL)); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD reached. No more mitigations applied + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + } + + @Test + @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS) + public void testCrashLoopWithRescuePartyAndRollbackObserverEnableDeprecateFlagReset() + throws Exception { + PackageWatchdog watchdog = createWatchdog(); + RescuePartyObserver rescuePartyObserver = setUpRescuePartyObserver(watchdog); + RollbackPackageHealthObserver rollbackObserver = + setUpRollbackPackageHealthObserver(watchdog); + VersionedPackage versionedPackageA = new VersionedPackage(APP_A, VERSION_CODE); + + when(mMockPackageManager.getApplicationInfo(anyString(), anyInt())).then(inv -> { + ApplicationInfo info = new ApplicationInfo(); + info.flags |= ApplicationInfo.FLAG_PERSISTENT + | ApplicationInfo.FLAG_SYSTEM; + return info; + }); + + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: WARM_REBOOT + verify(rescuePartyObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Low impact rollback + verify(rollbackObserver).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + // update available rollbacks to mock rollbacks being applied after the call to + // rollbackObserver.execute + when(mRollbackManager.getAvailableRollbacks()).thenReturn( + List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL)); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD reached. No more mitigations applied + verify(rescuePartyObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageA, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + } + + @Test + @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS) + public void testCrashLoopSystemUIWithRescuePartyAndRollbackObserver() throws Exception { + PackageWatchdog watchdog = createWatchdog(); + RescuePartyObserver rescuePartyObserver = setUpRescuePartyObserver(watchdog); + RollbackPackageHealthObserver rollbackObserver = + setUpRollbackPackageHealthObserver(watchdog); + String systemUi = "com.android.systemui"; + VersionedPackage versionedPackageUi = new VersionedPackage( + systemUi, VERSION_CODE); + RollbackInfo rollbackInfoUi = getRollbackInfo(systemUi, VERSION_CODE, 1, + PackageManager.ROLLBACK_USER_IMPACT_LOW); + when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_LOW, + ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL, rollbackInfoUi)); + + when(mMockPackageManager.getApplicationInfo(anyString(), anyInt())).then(inv -> { + ApplicationInfo info = new ApplicationInfo(); + info.flags |= ApplicationInfo.FLAG_PERSISTENT + | ApplicationInfo.FLAG_SYSTEM; + return info; + }); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: SCOPED_DEVICE_CONFIG_RESET + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: ALL_DEVICE_CONFIG_RESET + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 3); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: WARM_REBOOT + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 3); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Low impact rollback + verify(rollbackObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + // update available rollbacks to mock rollbacks being applied after the call to + // rollbackObserver.execute + when(mRollbackManager.getAvailableRollbacks()).thenReturn( + List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL)); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: RESET_SETTINGS_UNTRUSTED_DEFAULTS + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 4); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 5); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: RESET_SETTINGS_UNTRUSTED_CHANGES + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 5); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 6); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: RESET_SETTINGS_TRUSTED_DEFAULTS + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 6); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 7); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Factory reset. High impact rollbacks are performed only for boot loops. + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 7); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 8); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + } + + @Test + @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS) + public void testCrashLoopSystemUIWithRescuePartyAndRollbackObserverEnableDeprecateFlagReset() + throws Exception { + PackageWatchdog watchdog = createWatchdog(); + RescuePartyObserver rescuePartyObserver = setUpRescuePartyObserver(watchdog); + RollbackPackageHealthObserver rollbackObserver = + setUpRollbackPackageHealthObserver(watchdog); + String systemUi = "com.android.systemui"; + VersionedPackage versionedPackageUi = new VersionedPackage( + systemUi, VERSION_CODE); + RollbackInfo rollbackInfoUi = getRollbackInfo(systemUi, VERSION_CODE, 1, + PackageManager.ROLLBACK_USER_IMPACT_LOW); + when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_LOW, + ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL, rollbackInfoUi)); + + when(mMockPackageManager.getApplicationInfo(anyString(), anyInt())).then(inv -> { + ApplicationInfo info = new ApplicationInfo(); + info.flags |= ApplicationInfo.FLAG_PERSISTENT + | ApplicationInfo.FLAG_SYSTEM; + return info; + }); + + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: WARM_REBOOT + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Low impact rollback + verify(rollbackObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 1); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + + // update available rollbacks to mock rollbacks being applied after the call to + // rollbackObserver.execute + when(mRollbackManager.getAvailableRollbacks()).thenReturn( + List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL)); + + raiseFatalFailureAndDispatch(watchdog, + Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH); + + // Mitigation: Factory reset. High impact rollbacks are performed only for boot loops. + verify(rescuePartyObserver).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + verify(rescuePartyObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 3); + verify(rollbackObserver, never()).execute(versionedPackageUi, + PackageWatchdog.FAILURE_REASON_APP_CRASH, 2); + } + RollbackPackageHealthObserver setUpRollbackPackageHealthObserver(PackageWatchdog watchdog) { RollbackPackageHealthObserver rollbackObserver = spy(new RollbackPackageHealthObserver(mSpyContext, mApexManager)); @@ -424,7 +731,6 @@ public class CrashRecoveryTest { watchdog.registerHealthObserver(rollbackObserver); return rollbackObserver; } - RescuePartyObserver setUpRescuePartyObserver(PackageWatchdog watchdog) { setCrashRecoveryPropRescueBootCount(0); RescuePartyObserver rescuePartyObserver = spy(RescuePartyObserver.getInstance(mSpyContext)); @@ -686,4 +992,20 @@ public class CrashRecoveryTest { mTestLooper.moveTimeForward(milliSeconds); mTestLooper.dispatchAll(); } + + private void raiseFatalFailureAndDispatch(PackageWatchdog watchdog, + List<VersionedPackage> packages, int failureReason) { + long triggerFailureCount = watchdog.getTriggerFailureCount(); + if (failureReason == PackageWatchdog.FAILURE_REASON_EXPLICIT_HEALTH_CHECK + || failureReason == PackageWatchdog.FAILURE_REASON_NATIVE_CRASH) { + triggerFailureCount = 1; + } + for (int i = 0; i < triggerFailureCount; i++) { + watchdog.onPackageFailure(packages, failureReason); + } + mTestLooper.dispatchAll(); + if (Flags.recoverabilityDetection()) { + moveTimeForwardAndDispatch(watchdog.DEFAULT_MITIGATION_WINDOW_MS); + } + } } diff --git a/tests/ProtoInputStreamTests/Android.bp b/tests/ProtoInputStreamTests/Android.bp index 0029080b5a89..40ab257fef37 100644 --- a/tests/ProtoInputStreamTests/Android.bp +++ b/tests/ProtoInputStreamTests/Android.bp @@ -33,7 +33,7 @@ android_test { platform_apis: true, certificate: "platform", test_suites: ["device-tests"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.system"], static_libs: [ "androidx.test.rules", "frameworks-base-testutils", diff --git a/tests/RemoteDisplayProvider/Android.bp b/tests/RemoteDisplayProvider/Android.bp index 55732d14af46..468bdda75713 100644 --- a/tests/RemoteDisplayProvider/Android.bp +++ b/tests/RemoteDisplayProvider/Android.bp @@ -27,6 +27,6 @@ android_test { sdk_version: "system_current", srcs: ["src/**/*.java"], resource_dirs: ["res"], - libs: ["com.android.media.remotedisplay"], + libs: ["com.android.media.remotedisplay.stubs.system"], certificate: "platform", } diff --git a/tests/RollbackTest/Android.bp b/tests/RollbackTest/Android.bp index 21007ef1396f..766ff4a727bd 100644 --- a/tests/RollbackTest/Android.bp +++ b/tests/RollbackTest/Android.bp @@ -26,7 +26,11 @@ android_test { manifest: "RollbackTest/AndroidManifest.xml", platform_apis: true, srcs: ["RollbackTest/src/**/*.java"], - static_libs: ["androidx.test.rules", "cts-rollback-lib", "cts-install-lib"], + static_libs: [ + "androidx.test.rules", + "cts-rollback-lib", + "cts-install-lib", + ], test_suites: ["general-tests"], test_config: "RollbackTest.xml", java_resources: [ @@ -48,7 +52,7 @@ java_test_host { ], test_suites: ["general-tests"], test_config: "StagedRollbackTest.xml", - data: [ + device_common_data: [ ":com.android.apex.apkrollback.test_v1", ":test.rebootless_apex_v1", ":RollbackTest", @@ -59,10 +63,13 @@ java_test_host { name: "NetworkStagedRollbackTest", srcs: ["NetworkStagedRollbackTest/src/**/*.java"], libs: ["tradefed"], - static_libs: ["RollbackTestLib", "frameworks-base-hostutils"], + static_libs: [ + "RollbackTestLib", + "frameworks-base-hostutils", + ], test_suites: ["general-tests"], test_config: "NetworkStagedRollbackTest.xml", - data: [":RollbackTest"], + device_common_data: [":RollbackTest"], } java_test_host { @@ -74,7 +81,7 @@ java_test_host { ], test_suites: ["general-tests"], test_config: "MultiUserRollbackTest.xml", - data : [":RollbackTest"], + device_common_data: [":RollbackTest"], } java_library_host { @@ -84,55 +91,55 @@ java_library_host { } genrule { - name: "com.android.apex.apkrollback.test.pem", - out: ["com.android.apex.apkrollback.test.pem"], - cmd: "openssl genrsa -out $(out) 4096", + name: "com.android.apex.apkrollback.test.pem", + out: ["com.android.apex.apkrollback.test.pem"], + cmd: "openssl genrsa -out $(out) 4096", } genrule { - name: "com.android.apex.apkrollback.test.pubkey", - srcs: [":com.android.apex.apkrollback.test.pem"], - out: ["com.android.apex.apkrollback.test.pubkey"], - tools: ["avbtool"], - cmd: "$(location avbtool) extract_public_key --key $(in) --output $(out)", + name: "com.android.apex.apkrollback.test.pubkey", + srcs: [":com.android.apex.apkrollback.test.pem"], + out: ["com.android.apex.apkrollback.test.pubkey"], + tools: ["avbtool"], + cmd: "$(location avbtool) extract_public_key --key $(in) --output $(out)", } apex_key { - name: "com.android.apex.apkrollback.test.key", - private_key: ":com.android.apex.apkrollback.test.pem", - public_key: ":com.android.apex.apkrollback.test.pubkey", - installable: false, + name: "com.android.apex.apkrollback.test.key", + private_key: ":com.android.apex.apkrollback.test.pem", + public_key: ":com.android.apex.apkrollback.test.pubkey", + installable: false, } apex { - name: "com.android.apex.apkrollback.test_v1", - manifest: "testdata/manifest_v1.json", - androidManifest: "testdata/AndroidManifest.xml", - file_contexts: ":apex.test-file_contexts", - key: "com.android.apex.apkrollback.test.key", - apps: ["TestAppAv1"], - installable: false, - updatable: false, + name: "com.android.apex.apkrollback.test_v1", + manifest: "testdata/manifest_v1.json", + androidManifest: "testdata/AndroidManifest.xml", + file_contexts: ":apex.test-file_contexts", + key: "com.android.apex.apkrollback.test.key", + apps: ["TestAppAv1"], + installable: false, + updatable: false, } apex { - name: "com.android.apex.apkrollback.test_v2", - manifest: "testdata/manifest_v2.json", - androidManifest: "testdata/AndroidManifest.xml", - file_contexts: ":apex.test-file_contexts", - key: "com.android.apex.apkrollback.test.key", - apps: ["TestAppAv2"], - installable: false, - updatable: false, + name: "com.android.apex.apkrollback.test_v2", + manifest: "testdata/manifest_v2.json", + androidManifest: "testdata/AndroidManifest.xml", + file_contexts: ":apex.test-file_contexts", + key: "com.android.apex.apkrollback.test.key", + apps: ["TestAppAv2"], + installable: false, + updatable: false, } apex { - name: "com.android.apex.apkrollback.test_v2Crashing", - manifest: "testdata/manifest_v2.json", - androidManifest: "testdata/AndroidManifest.xml", - file_contexts: ":apex.test-file_contexts", - key: "com.android.apex.apkrollback.test.key", - apps: ["TestAppACrashingV2"], - installable: false, - updatable: false, + name: "com.android.apex.apkrollback.test_v2Crashing", + manifest: "testdata/manifest_v2.json", + androidManifest: "testdata/AndroidManifest.xml", + file_contexts: ":apex.test-file_contexts", + key: "com.android.apex.apkrollback.test.key", + apps: ["TestAppACrashingV2"], + installable: false, + updatable: false, } diff --git a/tests/ServiceCrashTest/Android.bp b/tests/ServiceCrashTest/Android.bp index fb98b7631b7e..82f397ffe259 100644 --- a/tests/ServiceCrashTest/Android.bp +++ b/tests/ServiceCrashTest/Android.bp @@ -13,7 +13,7 @@ android_test { srcs: ["src/**/*.java"], platform_apis: true, certificate: "platform", - libs: ["android.test.base"], + libs: ["android.test.base.stubs.system"], static_libs: [ "compatibility-device-util-axt", "androidx.test.rules", diff --git a/tests/SharedLibraryLoadingTest/Android.bp b/tests/SharedLibraryLoadingTest/Android.bp index 088278d6ee89..8027519b95fb 100644 --- a/tests/SharedLibraryLoadingTest/Android.bp +++ b/tests/SharedLibraryLoadingTest/Android.bp @@ -28,7 +28,7 @@ java_test_host { "junit", ], test_suites: ["general-tests"], - data: [ + device_common_data: [ ":SharedLibraryLoadingTests_StandardSharedLibrary", ":SharedLibraryLoadingTests_SharedLibraryLoadedAfter", ":SharedLibraryLoadingTests_SharedLibraryClientTests", diff --git a/tests/SharedLibraryLoadingTest/test-apps/SharedLibraryClientTests/Android.bp b/tests/SharedLibraryLoadingTest/test-apps/SharedLibraryClientTests/Android.bp index 0d204979cb92..c0ac50c962f2 100644 --- a/tests/SharedLibraryLoadingTest/test-apps/SharedLibraryClientTests/Android.bp +++ b/tests/SharedLibraryLoadingTest/test-apps/SharedLibraryClientTests/Android.bp @@ -23,7 +23,7 @@ android_test_helper_app { libs: [ "SharedLibraryLoadingTests_StandardSharedLibrary", "SharedLibraryLoadingTests_SharedLibraryLoadedAfter", - "android.test.base", + "android.test.base.stubs.system", ], static_libs: [ "androidx.test.ext.junit", diff --git a/tests/StagedInstallTest/Android.bp b/tests/StagedInstallTest/Android.bp index 27511411c97e..451870ee4c9a 100644 --- a/tests/StagedInstallTest/Android.bp +++ b/tests/StagedInstallTest/Android.bp @@ -55,7 +55,7 @@ java_test_host { "frameworks-base-hostutils", "cts-install-lib-host", ], - data: [ + device_common_data: [ ":StagedInstallInternalTestApp", ":apex.apexd_test", ":com.android.apex.apkrollback.test_v1", diff --git a/tests/StagedInstallTest/app/src/com/android/tests/stagedinstallinternal/StagedInstallInternalTest.java b/tests/StagedInstallTest/app/src/com/android/tests/stagedinstallinternal/StagedInstallInternalTest.java index 0375f66069c3..d9295dd17dd0 100644 --- a/tests/StagedInstallTest/app/src/com/android/tests/stagedinstallinternal/StagedInstallInternalTest.java +++ b/tests/StagedInstallTest/app/src/com/android/tests/stagedinstallinternal/StagedInstallInternalTest.java @@ -515,33 +515,27 @@ public class StagedInstallInternalTest { Install.single(APEX_V2)); } - @Test - public void testGetStagedModuleNames() throws Exception { - // Before staging a session - String[] result = getPackageManagerNative().getStagedApexModuleNames(); - assertThat(result).hasLength(0); - // Stage an apex - int sessionId = Install.single(APEX_V2).setStaged().commit(); - result = getPackageManagerNative().getStagedApexModuleNames(); - assertThat(result).hasLength(1); - assertThat(result).isEqualTo(new String[]{SHIM_APEX_PACKAGE_NAME}); - // Abandon the session - InstallUtils.openPackageInstallerSession(sessionId).abandon(); - result = getPackageManagerNative().getStagedApexModuleNames(); - assertThat(result).hasLength(0); + private StagedApexInfo findStagedApexInfo(StagedApexInfo[] infos, String moduleName) { + for (StagedApexInfo info: infos) { + if (info.moduleName.equals(moduleName)) { + return info; + } + } + return null; } @Test - public void testGetStagedApexInfo() throws Exception { - // Ask for non-existing module - StagedApexInfo result = getPackageManagerNative().getStagedApexInfo("not found"); - assertThat(result).isNull(); + public void testGetStagedApexInfos() throws Exception { + // Not found before staging + StagedApexInfo[] result = getPackageManagerNative().getStagedApexInfos(); + assertThat(findStagedApexInfo(result, TEST_APEX_PACKAGE_NAME)).isNull(); // Stage an apex int sessionId = Install.single(TEST_APEX_CLASSPATH).setStaged().commit(); // Query proper module name - result = getPackageManagerNative().getStagedApexInfo(TEST_APEX_PACKAGE_NAME); - assertThat(result.moduleName).isEqualTo(TEST_APEX_PACKAGE_NAME); - assertThat(result.hasClassPathJars).isTrue(); + result = getPackageManagerNative().getStagedApexInfos(); + StagedApexInfo found = findStagedApexInfo(result, TEST_APEX_PACKAGE_NAME); + assertThat(found).isNotNull(); + assertThat(found.hasClassPathJars).isTrue(); InstallUtils.openPackageInstallerSession(sessionId).abandon(); } @@ -573,14 +567,15 @@ public class StagedInstallInternalTest { int sessionId = Install.single(APEX_V2).setStaged().commit(); ArgumentCaptor<ApexStagedEvent> captor = ArgumentCaptor.forClass(ApexStagedEvent.class); verify(observer, timeout(5000)).onApexStaged(captor.capture()); - assertThat(captor.getValue().stagedApexModuleNames).isEqualTo( - new String[] {SHIM_APEX_PACKAGE_NAME}); + StagedApexInfo found = + findStagedApexInfo(captor.getValue().stagedApexInfos, SHIM_APEX_PACKAGE_NAME); + assertThat(found).isNotNull(); // Abandon and verify observer is called Mockito.clearInvocations(observer); InstallUtils.openPackageInstallerSession(sessionId).abandon(); verify(observer, timeout(5000)).onApexStaged(captor.capture()); - assertThat(captor.getValue().stagedApexModuleNames).hasLength(0); + assertThat(captor.getValue().stagedApexInfos).hasLength(0); } @Test diff --git a/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java b/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java index f1fc503c8556..97abcd77e6b9 100644 --- a/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java +++ b/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java @@ -592,23 +592,15 @@ public class StagedInstallInternalTest extends BaseHostJUnit4Test { } @Test - public void testGetStagedModuleNames() throws Exception { - assumeTrue("Device does not support updating APEX", - mHostUtils.isApexUpdateSupported()); - - runPhase("testGetStagedModuleNames"); - } - - @Test @LargeTest - public void testGetStagedApexInfo() throws Exception { + public void testGetStagedApexInfos() throws Exception { assumeTrue("Device does not support updating APEX", mHostUtils.isApexUpdateSupported()); pushTestApex(APEXD_TEST_APEX); getDevice().reboot(); - runPhase("testGetStagedApexInfo"); + runPhase("testGetStagedApexInfos"); } @Test diff --git a/tests/SystemMemoryTest/host/Android.bp b/tests/SystemMemoryTest/host/Android.bp index cc8bc45a7411..153569746cd2 100644 --- a/tests/SystemMemoryTest/host/Android.bp +++ b/tests/SystemMemoryTest/host/Android.bp @@ -26,7 +26,7 @@ java_test_host { srcs: ["src/**/*.java"], libs: ["tradefed"], test_suites: ["general-tests"], - data: [ + device_common_data: [ ":SystemMemoryTestDevice", ], } diff --git a/tests/TelephonyCommonTests/Android.bp b/tests/TelephonyCommonTests/Android.bp index b968e5d81148..b1af6aed27a0 100644 --- a/tests/TelephonyCommonTests/Android.bp +++ b/tests/TelephonyCommonTests/Android.bp @@ -50,9 +50,9 @@ android_test { platform_apis: true, libs: [ - "android.test.runner", - "android.test.mock", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.mock.stubs.system", + "android.test.base.stubs.system", "unsupportedappusage", ], } diff --git a/tests/Tracing/Android.bp b/tests/Tracing/Android.bp new file mode 100644 index 000000000000..f5c1ae57e8c2 --- /dev/null +++ b/tests/Tracing/Android.bp @@ -0,0 +1,33 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_team: "trendy_team_windowing_tools", + default_applicable_licenses: ["frameworks_base_license"], +} + +android_test { + name: "TracingTests", + proto: { + type: "nano", + }, + // Include some source files directly to be able to access package members + srcs: ["src/**/*.java"], + libs: ["android.test.runner.impl"], + static_libs: [ + "junit", + "androidx.test.rules", + "mockito-target-minus-junit4", + "truth", + "platform-test-annotations", + "flickerlib-parsers", + "perfetto_trace_java_protos", + "flickerlib-trace_processor_shell", + ], + java_resource_dirs: ["res"], + certificate: "platform", + platform_apis: true, + test_suites: ["device-tests"], +} diff --git a/tests/Tracing/AndroidManifest.xml b/tests/Tracing/AndroidManifest.xml new file mode 100644 index 000000000000..7254f81307ad --- /dev/null +++ b/tests/Tracing/AndroidManifest.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2017 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 + --> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.tracing.tests"> + <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> + <uses-permission android:name="android.permission.BIND_WALLPAPER"/> + <!-- Allow the test to connect to perfetto trace processor --> + <uses-permission android:name="android.permission.INTERNET"/> + <application + android:requestLegacyExternalStorage="true" + android:networkSecurityConfig="@xml/network_security_config"> + <uses-library android:name="android.test.runner"/> + </application> + + <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner" + android:targetPackage="com.android.tracing.tests" + android:label="Tracing Tests"/> +</manifest> diff --git a/tests/Tracing/AndroidTest.xml b/tests/Tracing/AndroidTest.xml new file mode 100644 index 000000000000..9a404203ee18 --- /dev/null +++ b/tests/Tracing/AndroidTest.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2017 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 + --> +<configuration description="Runs tests for tracing classes/utilities."> + <target_preparer class="com.android.tradefed.targetprep.TestAppInstallSetup"> + <option name="test-file-name" value="TracingTests.apk" /> + </target_preparer> + + <!-- Needed for pushing the trace config file --> + <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer"/> + + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="framework-base-presubmit" /> + <option name="test-tag" value="TracingTests" /> + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.tracing.tests" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + </test> + + <metrics_collector class="com.android.tradefed.device.metric.FilePullerLogCollector"> + <option name="pull-pattern-keys" value="perfetto_file_path"/> + <option name="directory-keys" + value="/data/user/0/com.android.tracing.tests/files"/> + <option name="collect-on-run-ended-only" value="true"/> + <option name="clean-up" value="true"/> + </metrics_collector> +</configuration>
\ No newline at end of file diff --git a/tests/Internal/src/com/android/internal/protolog/OWNERS b/tests/Tracing/OWNERS index 18cf2be9f7df..4a5033800b8e 100644 --- a/tests/Internal/src/com/android/internal/protolog/OWNERS +++ b/tests/Tracing/OWNERS @@ -1,3 +1,3 @@ -# ProtoLog owners +# Tracing owners # Bug component: 1157642 include platform/development:/tools/winscope/OWNERS diff --git a/tests/Tracing/TEST_MAPPING b/tests/Tracing/TEST_MAPPING new file mode 100644 index 000000000000..7f58fceee24d --- /dev/null +++ b/tests/Tracing/TEST_MAPPING @@ -0,0 +1,7 @@ +{ + "postsubmit": [ + { + "name": "TracingTests" + } + ] +}
\ No newline at end of file diff --git a/tests/Tracing/res/xml/network_security_config.xml b/tests/Tracing/res/xml/network_security_config.xml new file mode 100644 index 000000000000..fdf1dbbe7672 --- /dev/null +++ b/tests/Tracing/res/xml/network_security_config.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2024 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. + --> +<network-security-config> + <domain-config cleartextTrafficPermitted="true"> + <domain includeSubdomains="true">localhost</domain> + </domain-config> +</network-security-config> diff --git a/tests/Internal/src/com/android/internal/protolog/LegacyProtoLogImplTest.java b/tests/Tracing/src/com/android/internal/protolog/LegacyProtoLogImplTest.java index 5a27593c7a36..e9ff691151fe 100644 --- a/tests/Internal/src/com/android/internal/protolog/LegacyProtoLogImplTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/LegacyProtoLogImplTest.java @@ -181,7 +181,6 @@ public class LegacyProtoLogImplTest { verify(implSpy).passToLogcat(eq(TestProtoLogGroup.TEST_GROUP.getTag()), eq( LogLevel.INFO), eq("test 5")); - verify(mReader, never()).getViewerString(anyLong()); } @Test diff --git a/tests/Internal/src/com/android/internal/protolog/ProtoLogViewerConfigReaderTest.java b/tests/Tracing/src/com/android/internal/protolog/LegacyProtoLogViewerConfigReaderTest.java index dbd85d38b7f2..253965337824 100644 --- a/tests/Internal/src/com/android/internal/protolog/ProtoLogViewerConfigReaderTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/LegacyProtoLogViewerConfigReaderTest.java @@ -38,7 +38,7 @@ import java.util.zip.GZIPOutputStream; @SmallTest @Presubmit @RunWith(JUnit4.class) -public class ProtoLogViewerConfigReaderTest { +public class LegacyProtoLogViewerConfigReaderTest { private static final String TEST_VIEWER_CONFIG = "{\n" + " \"version\": \"1.0.0\",\n" + " \"messages\": {\n" diff --git a/tests/Internal/src/com/android/internal/protolog/PerfettoProtoLogImplTest.java b/tests/Tracing/src/com/android/internal/protolog/PerfettoProtoLogImplTest.java index 1d7b6b348e10..1d7b6b348e10 100644 --- a/tests/Internal/src/com/android/internal/protolog/PerfettoProtoLogImplTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/PerfettoProtoLogImplTest.java diff --git a/tests/Internal/src/com/android/internal/protolog/ProtoLogImplTest.java b/tests/Tracing/src/com/android/internal/protolog/ProtoLogImplTest.java index 60456f9ea10f..60456f9ea10f 100644 --- a/tests/Internal/src/com/android/internal/protolog/ProtoLogImplTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/ProtoLogImplTest.java diff --git a/tests/Internal/src/com/android/internal/protolog/ProtologDataSourceTest.java b/tests/Tracing/src/com/android/internal/protolog/ProtologDataSourceTest.java index be9fb1b309f6..be9fb1b309f6 100644 --- a/tests/Internal/src/com/android/internal/protolog/ProtologDataSourceTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/ProtologDataSourceTest.java diff --git a/tests/Internal/src/com/android/internal/protolog/common/LogDataTypeTest.java b/tests/Tracing/src/com/android/internal/protolog/common/LogDataTypeTest.java index 9c2f74eabe02..9c2f74eabe02 100644 --- a/tests/Internal/src/com/android/internal/protolog/common/LogDataTypeTest.java +++ b/tests/Tracing/src/com/android/internal/protolog/common/LogDataTypeTest.java diff --git a/tests/TrustTests/Android.bp b/tests/TrustTests/Android.bp index 4e75a1d02a41..f22feb3f88fa 100644 --- a/tests/TrustTests/Android.bp +++ b/tests/TrustTests/Android.bp @@ -31,8 +31,8 @@ android_test { "truth", ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], test_suites: [ "device-tests", @@ -40,3 +40,10 @@ android_test { platform_apis: true, certificate: "platform", } + +test_module_config { + name: "TrustTests_trust_test", + base: "TrustTests", + test_suites: ["device-tests"], + include_filters: ["android.trust.test"], +} diff --git a/tests/TrustTests/TEST_MAPPING b/tests/TrustTests/TEST_MAPPING index 23923eeb83ee..b0dd55100c8a 100644 --- a/tests/TrustTests/TEST_MAPPING +++ b/tests/TrustTests/TEST_MAPPING @@ -1,28 +1,12 @@ { "presubmit": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ], "trust-tablet": [ { - "name": "TrustTests", - "options": [ - { - "include-filter": "android.trust.test" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] + "name": "TrustTests_trust_test" } ] }
\ No newline at end of file diff --git a/tests/TtsTests/Android.bp b/tests/TtsTests/Android.bp index b7aa5d4a38aa..e28f69b78141 100644 --- a/tests/TtsTests/Android.bp +++ b/tests/TtsTests/Android.bp @@ -28,8 +28,8 @@ android_test { srcs: ["**/*.java"], static_libs: ["mockito-target"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", ], platform_apis: true, } diff --git a/tests/UpdatableSystemFontTest/Android.bp b/tests/UpdatableSystemFontTest/Android.bp index 12d43383a6e2..34eff4f4579b 100644 --- a/tests/UpdatableSystemFontTest/Android.bp +++ b/tests/UpdatableSystemFontTest/Android.bp @@ -25,7 +25,7 @@ package { android_test { name: "UpdatableSystemFontTest", srcs: ["src/**/*.java"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs.test"], static_libs: [ "androidx.test.ext.junit", "androidx.test.uiautomator_uiautomator", diff --git a/tests/UsbManagerTests/Android.bp b/tests/UsbManagerTests/Android.bp index 2909e66b53be..331a21a0215b 100644 --- a/tests/UsbManagerTests/Android.bp +++ b/tests/UsbManagerTests/Android.bp @@ -44,7 +44,7 @@ android_test { "libstaticjvmtiagent", ], libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], certificate: "platform", platform_apis: true, diff --git a/tests/UsbManagerTests/lib/Android.bp b/tests/UsbManagerTests/lib/Android.bp index 4e5a70fef0ca..506de5c26e3b 100644 --- a/tests/UsbManagerTests/lib/Android.bp +++ b/tests/UsbManagerTests/lib/Android.bp @@ -38,6 +38,6 @@ android_library { "androidx.core_core", ], libs: [ - "android.test.mock", + "android.test.mock.stubs.system", ], } diff --git a/tests/inputmethod/ConcurrentMultiSessionImeTest/Android.bp b/tests/inputmethod/ConcurrentMultiSessionImeTest/Android.bp index 4c531b8f9ee0..b68937f268e2 100644 --- a/tests/inputmethod/ConcurrentMultiSessionImeTest/Android.bp +++ b/tests/inputmethod/ConcurrentMultiSessionImeTest/Android.bp @@ -21,7 +21,7 @@ android_test { name: "ConcurrentMultiSessionImeTest", srcs: ["src/**/*.java"], resource_dirs: ["res"], - libs: ["android.test.runner"], + libs: ["android.test.runner.stubs"], static_libs: [ "androidx.test.ext.junit", "androidx.test.rules", diff --git a/tests/permission/Android.bp b/tests/permission/Android.bp index b02f410c733e..1a08f998442d 100644 --- a/tests/permission/Android.bp +++ b/tests/permission/Android.bp @@ -12,8 +12,8 @@ android_test { // Include all test java files. srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", "telephony-common", ], static_libs: [ @@ -25,3 +25,10 @@ android_test { platform_apis: true, test_suites: ["device-tests"], } + +test_module_config { + name: "FrameworkPermissionTests_Presubmit", + base: "FrameworkPermissionTests", + test_suites: ["device-tests"], + include_annotations: ["android.platform.test.annotations.Presubmit"], +} diff --git a/tests/testables/Android.bp b/tests/testables/Android.bp index c0e3d630d1ab..7596ee722d01 100644 --- a/tests/testables/Android.bp +++ b/tests/testables/Android.bp @@ -27,8 +27,8 @@ java_library { name: "testables", srcs: ["src/**/*.java"], libs: [ - "android.test.runner", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.mock.stubs.system", "androidx.test.rules", "mockito-target-inline-minus-junit4", ], diff --git a/tests/testables/tests/Android.bp b/tests/testables/tests/Android.bp index 06449e0ce574..2a3e4ae0c039 100644 --- a/tests/testables/tests/Android.bp +++ b/tests/testables/tests/Android.bp @@ -41,9 +41,9 @@ android_test { "libmultiplejvmtiagentsinterferenceagent", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], certificate: "platform", test_suites: [ diff --git a/tests/utils/testutils/Android.bp b/tests/utils/testutils/Android.bp index deff42a27f47..35fd5b1e6ed0 100644 --- a/tests/utils/testutils/Android.bp +++ b/tests/utils/testutils/Android.bp @@ -35,9 +35,9 @@ java_library { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", "mockito-target-extended-minus-junit4", ], } diff --git a/tests/utils/testutils/TEST_MAPPING b/tests/utils/testutils/TEST_MAPPING index 52fd5a8779ad..71e9ad37dd3c 100644 --- a/tests/utils/testutils/TEST_MAPPING +++ b/tests/utils/testutils/TEST_MAPPING @@ -1,18 +1,7 @@ { "presubmit": [ { - "name": "frameworks-base-testutils-tests", - "options": [ - { - "exclude-annotation": "androidx.test.filters.LargeTest" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - }, - { - "exclude-annotation": "org.junit.Ignore" - } - ] + "name": "frameworks-base-testutils-tests" } ], "postsubmit": [ diff --git a/tests/utils/testutils/tests/Android.bp b/tests/utils/testutils/tests/Android.bp index 8104280cdd5e..3bb02e42ca3b 100644 --- a/tests/utils/testutils/tests/Android.bp +++ b/tests/utils/testutils/tests/Android.bp @@ -35,9 +35,9 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + "android.test.mock.stubs.system", ], certificate: "platform", diff --git a/tests/vcn/Android.bp b/tests/vcn/Android.bp index ee2e7cfcd480..b16ba15a6867 100644 --- a/tests/vcn/Android.bp +++ b/tests/vcn/Android.bp @@ -34,8 +34,8 @@ android_test { "flag-junit", ], libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", + "android.test.runner.stubs", + "android.test.base.stubs", + "android.test.mock.stubs", ], } diff --git a/tests/vcn/OWNERS b/tests/vcn/OWNERS index 2441e772468c..937699a92968 100644 --- a/tests/vcn/OWNERS +++ b/tests/vcn/OWNERS @@ -1,7 +1,6 @@ set noparent -benedictwong@google.com -ckesting@google.com evitayan@google.com -junyin@google.com nharold@google.com +benedictwong@google.com #{LAST_RESORT_SUGGESTION} +yangji@google.com #{LAST_RESORT_SUGGESTION} diff --git a/tests/vcn/java/android/net/vcn/VcnTransportInfoTest.java b/tests/vcn/java/android/net/vcn/VcnTransportInfoTest.java index 81814b67f5ee..7bc9970629a6 100644 --- a/tests/vcn/java/android/net/vcn/VcnTransportInfoTest.java +++ b/tests/vcn/java/android/net/vcn/VcnTransportInfoTest.java @@ -25,6 +25,7 @@ import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNull; +import static org.junit.Assert.fail; import android.net.NetworkCapabilities; import android.net.wifi.WifiConfiguration; @@ -39,6 +40,7 @@ public class VcnTransportInfoTest { private static final int SUB_ID = 1; private static final int NETWORK_ID = 5; private static final int MIN_UDP_PORT_4500_NAT_TIMEOUT = 120; + private static final int MIN_UDP_PORT_4500_NAT_TIMEOUT_INVALID = 119; private static final WifiInfo WIFI_INFO = new WifiInfo.Builder().setNetworkId(NETWORK_ID).build(); @@ -48,6 +50,27 @@ public class VcnTransportInfoTest { new VcnTransportInfo(WIFI_INFO, MIN_UDP_PORT_4500_NAT_TIMEOUT); @Test + public void testBuilder() { + final VcnTransportInfo transportInfo = + new VcnTransportInfo.Builder() + .setMinUdpPort4500NatTimeoutSeconds(MIN_UDP_PORT_4500_NAT_TIMEOUT) + .build(); + + assertEquals( + MIN_UDP_PORT_4500_NAT_TIMEOUT, transportInfo.getMinUdpPort4500NatTimeoutSeconds()); + } + + @Test + public void testBuilder_withInvalidNatTimeout() { + try { + new VcnTransportInfo.Builder() + .setMinUdpPort4500NatTimeoutSeconds(MIN_UDP_PORT_4500_NAT_TIMEOUT_INVALID); + fail("Expected to fail due to invalid NAT timeout"); + } catch (Exception expected) { + } + } + + @Test public void testGetWifiInfo() { assertEquals(WIFI_INFO, WIFI_UNDERLYING_INFO.getWifiInfo()); diff --git a/tests/vcn/java/android/net/vcn/VcnUtilsTest.java b/tests/vcn/java/android/net/vcn/VcnUtilsTest.java new file mode 100644 index 000000000000..3ce6c8f9386d --- /dev/null +++ b/tests/vcn/java/android/net/vcn/VcnUtilsTest.java @@ -0,0 +1,136 @@ +/* + * Copyright (C) 2021 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.net.vcn; + +import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR; +import static android.net.NetworkCapabilities.TRANSPORT_WIFI; +import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import android.net.ConnectivityManager; +import android.net.Network; +import android.net.NetworkCapabilities; +import android.net.TelephonyNetworkSpecifier; +import android.net.wifi.WifiInfo; + +import org.junit.Before; +import org.junit.Test; + +import java.util.Arrays; +import java.util.Collections; + +public class VcnUtilsTest { + private static final int SUB_ID = 1; + + private static final WifiInfo WIFI_INFO = new WifiInfo.Builder().build(); + private static final TelephonyNetworkSpecifier TEL_NETWORK_SPECIFIER = + new TelephonyNetworkSpecifier.Builder().setSubscriptionId(SUB_ID).build(); + private static final VcnTransportInfo VCN_TRANSPORT_INFO = + new VcnTransportInfo.Builder().build(); + + private ConnectivityManager mMockConnectivityManager; + private Network mMockWifiNetwork; + private Network mMockCellNetwork; + + private NetworkCapabilities mVcnCapsWithUnderlyingWifi; + private NetworkCapabilities mVcnCapsWithUnderlyingCell; + + @Before + public void setUp() { + mMockConnectivityManager = mock(ConnectivityManager.class); + + mMockWifiNetwork = mock(Network.class); + mVcnCapsWithUnderlyingWifi = newVcnCaps(VCN_TRANSPORT_INFO, mMockWifiNetwork); + final NetworkCapabilities wifiCaps = + new NetworkCapabilities.Builder() + .addTransportType(TRANSPORT_WIFI) + .setTransportInfo(WIFI_INFO) + .build(); + when(mMockConnectivityManager.getNetworkCapabilities(mMockWifiNetwork)) + .thenReturn(wifiCaps); + + mMockCellNetwork = mock(Network.class); + mVcnCapsWithUnderlyingCell = newVcnCaps(VCN_TRANSPORT_INFO, mMockCellNetwork); + final NetworkCapabilities cellCaps = + new NetworkCapabilities.Builder() + .addTransportType(TRANSPORT_CELLULAR) + .setNetworkSpecifier(TEL_NETWORK_SPECIFIER) + .build(); + when(mMockConnectivityManager.getNetworkCapabilities(mMockCellNetwork)) + .thenReturn(cellCaps); + } + + private static NetworkCapabilities newVcnCaps( + VcnTransportInfo vcnTransportInfo, Network underlyingNetwork) { + return new NetworkCapabilities.Builder() + .setTransportInfo(vcnTransportInfo) + .setUnderlyingNetworks(Collections.singletonList(underlyingNetwork)) + .build(); + } + + @Test + public void getWifiInfoFromVcnCaps() { + assertEquals( + WIFI_INFO, + VcnUtils.getWifiInfoFromVcnCaps( + mMockConnectivityManager, mVcnCapsWithUnderlyingWifi)); + } + + @Test + public void getWifiInfoFromVcnCaps_onVcnWithUnderlyingCell() { + assertNull( + VcnUtils.getWifiInfoFromVcnCaps( + mMockConnectivityManager, mVcnCapsWithUnderlyingCell)); + } + + @Test + public void getSubIdFromVcnCaps() { + assertEquals( + SUB_ID, + VcnUtils.getSubIdFromVcnCaps(mMockConnectivityManager, mVcnCapsWithUnderlyingCell)); + } + + @Test + public void getSubIdFromVcnCaps_onVcnWithUnderlyingWifi() { + assertEquals( + INVALID_SUBSCRIPTION_ID, + VcnUtils.getSubIdFromVcnCaps(mMockConnectivityManager, mVcnCapsWithUnderlyingWifi)); + } + + @Test + public void getSubIdFromVcnCaps_onNonVcnNetwork() { + assertEquals( + INVALID_SUBSCRIPTION_ID, + VcnUtils.getSubIdFromVcnCaps( + mMockConnectivityManager, new NetworkCapabilities.Builder().build())); + } + + @Test + public void getSubIdFromVcnCaps_withMultipleUnderlyingNetworks() { + final NetworkCapabilities vcnCaps = + new NetworkCapabilities.Builder(mVcnCapsWithUnderlyingCell) + .setUnderlyingNetworks( + Arrays.asList( + new Network[] {mMockCellNetwork, mock(Network.class)})) + .build(); + assertEquals(SUB_ID, VcnUtils.getSubIdFromVcnCaps(mMockConnectivityManager, vcnCaps)); + } +} diff --git a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java index 580efe126ea3..3828a71d7b28 100644 --- a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java +++ b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java @@ -146,6 +146,8 @@ public class VcnManagementServiceTest { private static final LinkProperties TEST_LP_1 = new LinkProperties(); private static final LinkProperties TEST_LP_2 = new LinkProperties(); + private static final int ACTIVE_MODEM_COUNT = 2; + static { TEST_LP_1.setInterfaceName(TEST_IFACE_NAME); TEST_LP_2.setInterfaceName(TEST_IFACE_NAME_2); @@ -233,6 +235,7 @@ public class VcnManagementServiceTest { setupSystemService(mMockContext, mUserManager, Context.USER_SERVICE, UserManager.class); doReturn(TEST_USER_HANDLE).when(mUserManager).getMainUser(); + doReturn(ACTIVE_MODEM_COUNT).when(mTelMgr).getActiveModemCount(); doReturn(TEST_PACKAGE_NAME).when(mMockContext).getOpPackageName(); @@ -282,8 +285,6 @@ public class VcnManagementServiceTest { @Before public void setUp() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENFORCE_MAIN_USER); - doNothing() .when(mMockContext) .enforceCallingOrSelfPermission( @@ -292,6 +293,8 @@ public class VcnManagementServiceTest { doReturn(Collections.singleton(TRANSPORT_WIFI)) .when(mMockDeps) .getRestrictedTransports(any(), any(), any()); + + mSetFlagsRule.enableFlags(Flags.FLAG_FIX_CONFIG_GARBAGE_COLLECTION); } @@ -442,6 +445,14 @@ public class VcnManagementServiceTest { return subIds; }).when(snapshot).getAllSubIdsInGroup(any()); + doAnswer(invocation -> { + final Set<ParcelUuid> subGroups = new ArraySet<>(); + for (Entry<Integer, ParcelUuid> entry : subIdToGroupMap.entrySet()) { + subGroups.add(entry.getValue()); + } + return subGroups; + }).when(snapshot).getAllSubscriptionGroups(); + return snapshot; } @@ -1487,6 +1498,28 @@ public class VcnManagementServiceTest { } @Test + public void testGarbageCollectionKeepConfigUntilNewSnapshot() throws Exception { + setupActiveSubscription(TEST_UUID_2); + startAndGetVcnInstance(TEST_UUID_2); + + // Report loss of subscription from mSubMgr + doReturn(Collections.emptyList()).when(mSubMgr).getSubscriptionsInGroup(any()); + triggerSubscriptionTrackerCbAndGetSnapshot( + TEST_UUID_2, + Collections.singleton(TEST_UUID_2), + Collections.singletonMap(TEST_SUBSCRIPTION_ID, TEST_UUID_2)); + + assertTrue(mVcnMgmtSvc.getConfigs().containsKey(TEST_UUID_2)); + + // Report loss of subscription from snapshot + triggerSubscriptionTrackerCbAndGetSnapshot(null, Collections.emptySet()); + + mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS); + mTestLooper.dispatchAll(); + assertFalse(mVcnMgmtSvc.getConfigs().containsKey(TEST_UUID_2)); + } + + @Test public void testVcnCarrierConfigChangeUpdatesPolicyListener() throws Exception { setupActiveSubscription(TEST_UUID_2); diff --git a/tests/vcn/java/com/android/server/vcn/TelephonySubscriptionTrackerTest.java b/tests/vcn/java/com/android/server/vcn/TelephonySubscriptionTrackerTest.java index 887630b03a8c..f1f74bca2ef9 100644 --- a/tests/vcn/java/com/android/server/vcn/TelephonySubscriptionTrackerTest.java +++ b/tests/vcn/java/com/android/server/vcn/TelephonySubscriptionTrackerTest.java @@ -59,7 +59,6 @@ import android.os.HandlerExecutor; import android.os.ParcelUuid; import android.os.PersistableBundle; import android.os.test.TestLooper; -import android.platform.test.flag.junit.SetFlagsRule; import android.telephony.CarrierConfigManager; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; @@ -73,10 +72,7 @@ import android.util.ArraySet; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; -import com.android.internal.telephony.flags.Flags; - import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; @@ -133,8 +129,6 @@ public class TelephonySubscriptionTrackerTest { TEST_SUBID_TO_CARRIER_CONFIG_MAP = Collections.unmodifiableMap(subIdToCarrierConfigMap); } - @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); - @NonNull private final Context mContext; @NonNull private final TestLooper mTestLooper; @@ -193,7 +187,6 @@ public class TelephonySubscriptionTrackerTest { @Before public void setUp() throws Exception { - mSetFlagsRule.enableFlags(Flags.FLAG_FIX_CRASH_ON_GETTING_CONFIG_WHEN_PHONE_IS_GONE); doReturn(2).when(mTelephonyManager).getActiveModemCount(); mCallback = mock(TelephonySubscriptionTrackerCallback.class); @@ -213,7 +206,7 @@ public class TelephonySubscriptionTrackerTest { .getAllSubscriptionInfoList(); doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(anyInt()); - setPrivilegedPackagesForMock(Collections.singletonList(PACKAGE_NAME)); + setPrivilegedPackagesForMock(Collections.singleton(PACKAGE_NAME)); } private IntentFilter getIntentFilter() { @@ -300,7 +293,7 @@ public class TelephonySubscriptionTrackerTest { Collections.singletonMap(TEST_SUBSCRIPTION_ID_1, TEST_CARRIER_CONFIG_WRAPPER)); } - private void setPrivilegedPackagesForMock(@NonNull List<String> privilegedPackages) { + private void setPrivilegedPackagesForMock(@NonNull Set<String> privilegedPackages) { doReturn(privilegedPackages).when(mTelephonyManager).getPackagesWithCarrierPrivileges(); } @@ -397,7 +390,7 @@ public class TelephonySubscriptionTrackerTest { @Test public void testOnSubscriptionsChangedFired_onActiveSubIdsChanged() throws Exception { setupReadySubIds(); - setPrivilegedPackagesForMock(Collections.emptyList()); + setPrivilegedPackagesForMock(Collections.emptySet()); doReturn(TEST_SUBSCRIPTION_ID_2).when(mDeps).getActiveDataSubscriptionId(); final ActiveDataSubscriptionIdListener listener = getActiveDataSubscriptionIdListener(); @@ -418,7 +411,7 @@ public class TelephonySubscriptionTrackerTest { public void testOnSubscriptionsChangedFired_WithReadySubidsNoPrivilegedPackages() throws Exception { setupReadySubIds(); - setPrivilegedPackagesForMock(Collections.emptyList()); + setPrivilegedPackagesForMock(Collections.emptySet()); final OnSubscriptionsChangedListener listener = getOnSubscriptionsChangedListener(); listener.onSubscriptionsChanged(); @@ -574,7 +567,7 @@ public class TelephonySubscriptionTrackerTest { verify(mCallback).onNewSnapshot(eq(buildExpectedSnapshot(TEST_PRIVILEGED_PACKAGES))); // Simulate a loss of carrier privileges - setPrivilegedPackagesForMock(Collections.emptyList()); + setPrivilegedPackagesForMock(Collections.emptySet()); listener.onSubscriptionsChanged(); mTestLooper.dispatchAll(); diff --git a/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTest.java b/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTest.java index 49665f7a3304..613b92616707 100644 --- a/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTest.java +++ b/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTest.java @@ -360,12 +360,10 @@ public class VcnGatewayConnectionTest extends VcnGatewayConnectionTestBase { private void verifyGetSafeModeTimeoutMs( boolean isInTestMode, - boolean isConfigTimeoutSupported, PersistableBundleWrapper carrierConfig, long expectedTimeoutMs) throws Exception { doReturn(isInTestMode).when(mVcnContext).isInTestMode(); - doReturn(isConfigTimeoutSupported).when(mVcnContext).isFlagSafeModeTimeoutConfigEnabled(); final TelephonySubscriptionSnapshot snapshot = mock(TelephonySubscriptionSnapshot.class); doReturn(carrierConfig).when(snapshot).getCarrierConfigForSubGrp(TEST_SUB_GRP); @@ -377,16 +375,7 @@ public class VcnGatewayConnectionTest extends VcnGatewayConnectionTestBase { } @Test - public void testGetSafeModeTimeoutMs_configTimeoutUnsupported() throws Exception { - verifyGetSafeModeTimeoutMs( - false /* isInTestMode */, - false /* isConfigTimeoutSupported */, - null /* carrierConfig */, - TimeUnit.SECONDS.toMillis(SAFEMODE_TIMEOUT_SECONDS)); - } - - @Test - public void testGetSafeModeTimeoutMs_configTimeoutSupported() throws Exception { + public void testGetSafeModeTimeoutMs() throws Exception { final int carrierConfigTimeoutSeconds = 20; final PersistableBundleWrapper carrierConfig = mock(PersistableBundleWrapper.class); doReturn(carrierConfigTimeoutSeconds) @@ -395,17 +384,14 @@ public class VcnGatewayConnectionTest extends VcnGatewayConnectionTestBase { verifyGetSafeModeTimeoutMs( false /* isInTestMode */, - true /* isConfigTimeoutSupported */, carrierConfig, TimeUnit.SECONDS.toMillis(carrierConfigTimeoutSeconds)); } @Test - public void testGetSafeModeTimeoutMs_configTimeoutSupported_carrierConfigNull() - throws Exception { + public void testGetSafeModeTimeoutMs_carrierConfigNull() throws Exception { verifyGetSafeModeTimeoutMs( false /* isInTestMode */, - true /* isConfigTimeoutSupported */, null /* carrierConfig */, TimeUnit.SECONDS.toMillis(SAFEMODE_TIMEOUT_SECONDS)); } @@ -420,7 +406,6 @@ public class VcnGatewayConnectionTest extends VcnGatewayConnectionTestBase { verifyGetSafeModeTimeoutMs( true /* isInTestMode */, - true /* isConfigTimeoutSupported */, carrierConfig, TimeUnit.SECONDS.toMillis(carrierConfigTimeoutSeconds)); } diff --git a/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTestBase.java b/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTestBase.java index e29e4621d571..8374fd944568 100644 --- a/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTestBase.java +++ b/tests/vcn/java/com/android/server/vcn/VcnGatewayConnectionTestBase.java @@ -222,9 +222,6 @@ public class VcnGatewayConnectionTestBase { doReturn(mTestLooper.getLooper()).when(mVcnContext).getLooper(); doReturn(mVcnNetworkProvider).when(mVcnContext).getVcnNetworkProvider(); doReturn(mFeatureFlags).when(mVcnContext).getFeatureFlags(); - doReturn(true).when(mVcnContext).isFlagSafeModeTimeoutConfigEnabled(); - doReturn(true).when(mVcnContext).isFlagIpSecTransformStateEnabled(); - doReturn(true).when(mVcnContext).isFlagNetworkMetricMonitorEnabled(); doReturn(mUnderlyingNetworkController) .when(mDeps) diff --git a/tests/vcn/java/com/android/server/vcn/routeselection/NetworkEvaluationTestBase.java b/tests/vcn/java/com/android/server/vcn/routeselection/NetworkEvaluationTestBase.java index 0439d5f54e23..441b78035703 100644 --- a/tests/vcn/java/com/android/server/vcn/routeselection/NetworkEvaluationTestBase.java +++ b/tests/vcn/java/com/android/server/vcn/routeselection/NetworkEvaluationTestBase.java @@ -20,7 +20,6 @@ import static com.android.server.vcn.VcnTestUtils.setupSystemService; import static com.android.server.vcn.routeselection.UnderlyingNetworkControllerTest.getLinkPropertiesWithName; import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; @@ -34,14 +33,12 @@ import android.net.Network; import android.net.NetworkCapabilities; import android.net.TelephonyNetworkSpecifier; import android.net.vcn.FeatureFlags; -import android.net.vcn.Flags; import android.os.Handler; import android.os.IPowerManager; import android.os.IThermalService; import android.os.ParcelUuid; import android.os.PowerManager; import android.os.test.TestLooper; -import android.platform.test.flag.junit.SetFlagsRule; import android.telephony.TelephonyManager; import com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionSnapshot; @@ -49,7 +46,6 @@ import com.android.server.vcn.VcnContext; import com.android.server.vcn.VcnNetworkProvider; import org.junit.Before; -import org.junit.Rule; import org.mockito.Mock; import org.mockito.MockitoAnnotations; @@ -57,8 +53,6 @@ import java.util.Set; import java.util.UUID; public abstract class NetworkEvaluationTestBase { - @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); - protected static final String SSID = "TestWifi"; protected static final String SSID_OTHER = "TestWifiOther"; protected static final String PLMN_ID = "123456"; @@ -120,11 +114,6 @@ public abstract class NetworkEvaluationTestBase { public void setUp() throws Exception { MockitoAnnotations.initMocks(this); - mSetFlagsRule.enableFlags(Flags.FLAG_VALIDATE_NETWORK_ON_IPSEC_LOSS); - mSetFlagsRule.enableFlags(Flags.FLAG_EVALUATE_IPSEC_LOSS_ON_LP_NC_CHANGE); - mSetFlagsRule.enableFlags(Flags.FLAG_HANDLE_SEQ_NUM_LEAP); - mSetFlagsRule.enableFlags(Flags.FLAG_ALLOW_DISABLE_IPSEC_LOSS_DETECTOR); - when(mNetwork.getNetId()).thenReturn(-1); mTestLooper = new TestLooper(); @@ -137,9 +126,6 @@ public abstract class NetworkEvaluationTestBase { false /* isInTestMode */)); doNothing().when(mVcnContext).ensureRunningOnLooperThread(); - doReturn(true).when(mVcnContext).isFlagNetworkMetricMonitorEnabled(); - doReturn(true).when(mVcnContext).isFlagIpSecTransformStateEnabled(); - setupSystemService( mContext, mConnectivityManager, diff --git a/tests/vcn/java/com/android/server/vcn/routeselection/UnderlyingNetworkControllerTest.java b/tests/vcn/java/com/android/server/vcn/routeselection/UnderlyingNetworkControllerTest.java index 588624b56221..e540932d0e1f 100644 --- a/tests/vcn/java/com/android/server/vcn/routeselection/UnderlyingNetworkControllerTest.java +++ b/tests/vcn/java/com/android/server/vcn/routeselection/UnderlyingNetworkControllerTest.java @@ -226,8 +226,6 @@ public class UnderlyingNetworkControllerTest { private void resetVcnContext(VcnContext vcnContext) { reset(vcnContext); doNothing().when(vcnContext).ensureRunningOnLooperThread(); - doReturn(true).when(vcnContext).isFlagNetworkMetricMonitorEnabled(); - doReturn(true).when(vcnContext).isFlagIpSecTransformStateEnabled(); } // Package private for use in NetworkPriorityClassifierTest diff --git a/tools/aapt2/SdkConstants.cpp b/tools/aapt2/SdkConstants.cpp index 83f2eb31aa57..993516d07386 100644 --- a/tools/aapt2/SdkConstants.cpp +++ b/tools/aapt2/SdkConstants.cpp @@ -28,8 +28,19 @@ using namespace std::literals; namespace aapt { static constexpr ApiVersion sDevelopmentSdkLevel = 10000; + +// clang-format off static constexpr StringPiece sDevelopmentSdkCodeNames[] = { - "Q"sv, "R"sv, "S"sv, "Sv2"sv, "Tiramisu"sv, "UpsideDownCake"sv, "VanillaIceCream"sv}; + "Q"sv, + "R"sv, + "S"sv, + "Sv2"sv, + "Tiramisu"sv, + "UpsideDownCake"sv, + "VanillaIceCream"sv, + "Baklava"sv, +}; +// clang-format on static constexpr auto sPrivacySandboxSuffix = "PrivacySandbox"sv; diff --git a/tools/aapt2/cmd/Compile.cpp b/tools/aapt2/cmd/Compile.cpp index 031dd5bb139c..9b8c3b3d549c 100644 --- a/tools/aapt2/cmd/Compile.cpp +++ b/tools/aapt2/cmd/Compile.cpp @@ -836,6 +836,28 @@ int CompileCommand::Action(const std::vector<std::string>& args) { return 1; } + // Parse the feature flag values. An argument that starts with '@' points to a file to read flag + // values from. + std::vector<std::string> all_feature_flags_args; + for (const std::string& arg : feature_flags_args_) { + if (util::StartsWith(arg, "@")) { + const std::string path = arg.substr(1, arg.size() - 1); + std::string error; + if (!file::AppendArgsFromFile(path, &all_feature_flags_args, &error)) { + context.GetDiagnostics()->Error(android::DiagMessage(path) << error); + return 1; + } + } else { + all_feature_flags_args.push_back(arg); + } + } + + for (const std::string& arg : all_feature_flags_args) { + if (!ParseFeatureFlagsParameter(arg, context.GetDiagnostics(), &options_.feature_flag_values)) { + return 1; + } + } + return Compile(&context, file_collection.get(), archive_writer.get(), options_); } diff --git a/tools/aapt2/cmd/Compile.h b/tools/aapt2/cmd/Compile.h index 61c5b60adb76..70c8791524c8 100644 --- a/tools/aapt2/cmd/Compile.h +++ b/tools/aapt2/cmd/Compile.h @@ -24,6 +24,7 @@ #include "Command.h" #include "ResourceTable.h" #include "androidfw/IDiagnostics.h" +#include "cmd/Util.h" #include "format/Archive.h" #include "process/IResourceTableConsumer.h" @@ -45,6 +46,7 @@ struct CompileOptions { bool preserve_visibility_of_styleables = false; bool verbose = false; std::optional<std::string> product_; + FeatureFlagValues feature_flag_values; }; /** Parses flags and compiles resources to be used in linking. */ @@ -92,6 +94,12 @@ class CompileCommand : public Command { "Leave only resources specific to the given product. All " "other resources (including defaults) are removed.", &options_.product_); + AddOptionalFlagList("--feature-flags", + "Specify the values of feature flags. The pairs in the argument\n" + "are separated by ',' the name is separated from the value by '='.\n" + "The name can have a suffix of ':ro' to indicate it is read only." + "Example: \"flag1=true,flag2:ro=false,flag3=\" (flag3 has no given value).", + &feature_flags_args_); } int Action(const std::vector<std::string>& args) override; @@ -101,6 +109,7 @@ class CompileCommand : public Command { CompileOptions options_; std::optional<std::string> visibility_; std::optional<std::string> trace_folder_; + std::vector<std::string> feature_flags_args_; }; int Compile(IAaptContext* context, io::IFileCollection* inputs, IArchiveWriter* output_writer, diff --git a/tools/aapt2/cmd/Link.h b/tools/aapt2/cmd/Link.h index 8fe414f4f660..2f17853718ec 100644 --- a/tools/aapt2/cmd/Link.h +++ b/tools/aapt2/cmd/Link.h @@ -332,8 +332,9 @@ class LinkCommand : public Command { AddOptionalSwitch("-v", "Enables verbose logging.", &verbose_); AddOptionalFlagList("--feature-flags", "Specify the values of feature flags. The pairs in the argument\n" - "are separated by ',' and the name is separated from the value by '='.\n" - "Example: \"flag1=true,flag2=false,flag3=\" (flag3 has no given value).", + "are separated by ',' the name is separated from the value by '='.\n" + "The name can have a suffix of ':ro' to indicate it is read only." + "Example: \"flag1=true,flag2:ro=false,flag3=\" (flag3 has no given value).", &feature_flags_args_); AddOptionalSwitch("--non-updatable-system", "Mark the app as a non-updatable system app. This inserts\n" diff --git a/tools/aapt2/cmd/Util.cpp b/tools/aapt2/cmd/Util.cpp index 678d84628015..7739171b347f 100644 --- a/tools/aapt2/cmd/Util.cpp +++ b/tools/aapt2/cmd/Util.cpp @@ -128,7 +128,7 @@ bool ParseFeatureFlagsParameter(StringPiece arg, android::IDiagnostics* diag, if (parts.size() > 2) { diag->Error(android::DiagMessage() << "Invalid feature flag and optional value '" << flag_and_value - << "'. Must be in the format 'flag_name[=true|false]"); + << "'. Must be in the format 'flag_name[:ro][=true|false]"); return false; } @@ -138,6 +138,28 @@ bool ParseFeatureFlagsParameter(StringPiece arg, android::IDiagnostics* diag, return false; } + std::vector<std::string> name_parts = util::Split(flag_name, ':'); + if (name_parts.size() > 2) { + diag->Error(android::DiagMessage() + << "Invalid feature flag and optional value '" << flag_and_value + << "'. Must be in the format 'flag_name[:READ_ONLY|READ_WRITE][=true|false]"); + return false; + } + flag_name = name_parts[0]; + bool read_only = false; + if (name_parts.size() == 2) { + if (name_parts[1] == "ro" || name_parts[1] == "READ_ONLY") { + read_only = true; + } else if (name_parts[1] == "READ_WRITE") { + read_only = false; + } else { + diag->Error(android::DiagMessage() + << "Invalid feature flag and optional value '" << flag_and_value + << "'. Must be in the format 'flag_name[:READ_ONLY|READ_WRITE][=true|false]"); + return false; + } + } + std::optional<bool> flag_value = {}; if (parts.size() == 2) { StringPiece str_flag_value = util::TrimWhitespace(parts[1]); @@ -151,13 +173,13 @@ bool ParseFeatureFlagsParameter(StringPiece arg, android::IDiagnostics* diag, } } - if (auto [it, inserted] = - out_feature_flag_values->try_emplace(std::string(flag_name), flag_value); + auto ffp = FeatureFlagProperties{read_only, flag_value}; + if (auto [it, inserted] = out_feature_flag_values->try_emplace(std::string(flag_name), ffp); !inserted) { // We are allowing the same flag to appear multiple times, last value wins. diag->Note(android::DiagMessage() << "Value for feature flag '" << flag_name << "' was given more than once"); - it->second = flag_value; + it->second = ffp; } } return true; diff --git a/tools/aapt2/cmd/Util.h b/tools/aapt2/cmd/Util.h index 9ece5dd4d720..6b8813b34082 100644 --- a/tools/aapt2/cmd/Util.h +++ b/tools/aapt2/cmd/Util.h @@ -37,7 +37,17 @@ namespace aapt { -using FeatureFlagValues = std::map<std::string, std::optional<bool>, std::less<>>; +struct FeatureFlagProperties { + bool read_only; + std::optional<bool> enabled; + + FeatureFlagProperties(bool ro, std::optional<bool> e) : read_only(ro), enabled(e) { + } + + bool operator==(const FeatureFlagProperties&) const = default; +}; + +using FeatureFlagValues = std::map<std::string, FeatureFlagProperties, std::less<>>; // Parses a configuration density (ex. hdpi, xxhdpi, 234dpi, anydpi, etc). // Returns Nothing and logs a human friendly error message if the string was not legal. diff --git a/tools/aapt2/cmd/Util_test.cpp b/tools/aapt2/cmd/Util_test.cpp index 723d87ed0af3..78183409ad8f 100644 --- a/tools/aapt2/cmd/Util_test.cpp +++ b/tools/aapt2/cmd/Util_test.cpp @@ -383,21 +383,25 @@ TEST(UtilTest, ParseFeatureFlagsParameter_InvalidValue) { TEST(UtilTest, ParseFeatureFlagsParameter_DuplicateFlag) { auto diagnostics = test::ContextBuilder().Build()->GetDiagnostics(); FeatureFlagValues feature_flag_values; - ASSERT_TRUE( - ParseFeatureFlagsParameter("foo=true,bar=true,foo=false", diagnostics, &feature_flag_values)); - EXPECT_THAT(feature_flag_values, UnorderedElementsAre(Pair("foo", std::optional<bool>(false)), - Pair("bar", std::optional<bool>(true)))); + ASSERT_TRUE(ParseFeatureFlagsParameter("foo=true,bar:READ_WRITE=true,foo:ro=false", diagnostics, + &feature_flag_values)); + EXPECT_THAT( + feature_flag_values, + UnorderedElementsAre(Pair("foo", FeatureFlagProperties{true, std::optional<bool>(false)}), + Pair("bar", FeatureFlagProperties{false, std::optional<bool>(true)}))); } TEST(UtilTest, ParseFeatureFlagsParameter_Valid) { auto diagnostics = test::ContextBuilder().Build()->GetDiagnostics(); FeatureFlagValues feature_flag_values; - ASSERT_TRUE(ParseFeatureFlagsParameter("foo= true, bar =FALSE,baz=, quux", diagnostics, - &feature_flag_values)); - EXPECT_THAT(feature_flag_values, - UnorderedElementsAre(Pair("foo", std::optional<bool>(true)), - Pair("bar", std::optional<bool>(false)), - Pair("baz", std::nullopt), Pair("quux", std::nullopt))); + ASSERT_TRUE(ParseFeatureFlagsParameter("foo:READ_ONLY= true, bar:ro =FALSE,baz:READ_WRITE=, quux", + diagnostics, &feature_flag_values)); + EXPECT_THAT( + feature_flag_values, + UnorderedElementsAre(Pair("foo", FeatureFlagProperties{true, std::optional<bool>(true)}), + Pair("bar", FeatureFlagProperties{true, std::optional<bool>(false)}), + Pair("baz", FeatureFlagProperties{false, std::nullopt}), + Pair("quux", FeatureFlagProperties{false, std::nullopt}))); } TEST (UtilTest, AdjustSplitConstraintsForMinSdk) { diff --git a/tools/aapt2/link/FeatureFlagsFilter.cpp b/tools/aapt2/link/FeatureFlagsFilter.cpp index fdf3f74d4e18..9d40db521e13 100644 --- a/tools/aapt2/link/FeatureFlagsFilter.cpp +++ b/tools/aapt2/link/FeatureFlagsFilter.cpp @@ -63,12 +63,11 @@ class FlagsVisitor : public xml::Visitor { flag_name = flag_name.substr(1); } - if (auto it = feature_flag_values_.find(std::string(flag_name)); - it != feature_flag_values_.end()) { - if (it->second.has_value()) { + if (auto it = feature_flag_values_.find(flag_name); it != feature_flag_values_.end()) { + if (it->second.enabled.has_value()) { if (options_.remove_disabled_elements) { // Remove if flag==true && attr=="!flag" (negated) OR flag==false && attr=="flag" - return *it->second == negated; + return *it->second.enabled == negated; } } else if (options_.flags_must_have_value) { diagnostics_->Error(android::DiagMessage(node->line_number) diff --git a/tools/aapt2/link/FeatureFlagsFilter_test.cpp b/tools/aapt2/link/FeatureFlagsFilter_test.cpp index 53086cc30f18..2db2899e716c 100644 --- a/tools/aapt2/link/FeatureFlagsFilter_test.cpp +++ b/tools/aapt2/link/FeatureFlagsFilter_test.cpp @@ -48,7 +48,7 @@ TEST(FeatureFlagsFilterTest, NoFeatureFlagAttributes) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" /> </manifest>)EOF", - {{"flag", false}}); + {{"flag", FeatureFlagProperties{false, false}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -60,7 +60,7 @@ TEST(FeatureFlagsFilterTest, RemoveElementWithDisabledFlag) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="flag" /> </manifest>)EOF", - {{"flag", false}}); + {{"flag", FeatureFlagProperties{false, false}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -73,7 +73,7 @@ TEST(FeatureFlagsFilterTest, RemoveElementWithNegatedEnabledFlag) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="!flag" /> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -86,7 +86,7 @@ TEST(FeatureFlagsFilterTest, KeepElementWithEnabledFlag) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="flag" /> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -102,7 +102,7 @@ TEST(FeatureFlagsFilterTest, SideBySideEnabledAndDisabled) { <permission android:name="FOO" android:featureFlag="flag" android:protectionLevel="dangerous" /> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -123,7 +123,7 @@ TEST(FeatureFlagsFilterTest, RemoveDeeplyNestedElement) { </activity> </application> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -145,7 +145,7 @@ TEST(FeatureFlagsFilterTest, KeepDeeplyNestedElement) { </activity> </application> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -162,7 +162,7 @@ TEST(FeatureFlagsFilterTest, FailOnEmptyFeatureFlagAttribute) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag=" " /> </manifest>)EOF", - {{"flag", false}}); + {{"flag", FeatureFlagProperties{false, false}}}); ASSERT_THAT(doc, IsNull()); } @@ -171,7 +171,7 @@ TEST(FeatureFlagsFilterTest, FailOnFlagWithNoGivenValue) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="flag" /> </manifest>)EOF", - {{"flag", std::nullopt}}); + {{"flag", FeatureFlagProperties{false, std::nullopt}}}); ASSERT_THAT(doc, IsNull()); } @@ -180,7 +180,7 @@ TEST(FeatureFlagsFilterTest, FailOnUnrecognizedFlag) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="unrecognized" /> </manifest>)EOF", - {{"flag", true}}); + {{"flag", FeatureFlagProperties{false, true}}}); ASSERT_THAT(doc, IsNull()); } @@ -190,7 +190,7 @@ TEST(FeatureFlagsFilterTest, FailOnMultipleValidationErrors) { <permission android:name="FOO" android:featureFlag="bar" /> <permission android:name="FOO" android:featureFlag="unrecognized" /> </manifest>)EOF", - {{"flag", std::nullopt}}); + {{"flag", FeatureFlagProperties{false, std::nullopt}}}); ASSERT_THAT(doc, IsNull()); } @@ -199,7 +199,8 @@ TEST(FeatureFlagsFilterTest, OptionRemoveDisabledElementsIsFalse) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="flag" /> </manifest>)EOF", - {{"flag", false}}, {.remove_disabled_elements = false}); + {{"flag", FeatureFlagProperties{false, false}}}, + {.remove_disabled_elements = false}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -212,7 +213,8 @@ TEST(FeatureFlagsFilterTest, OptionFlagsMustHaveValueIsFalse) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="flag" /> </manifest>)EOF", - {{"flag", std::nullopt}}, {.flags_must_have_value = false}); + {{"flag", FeatureFlagProperties{false, std::nullopt}}}, + {.flags_must_have_value = false}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); @@ -225,7 +227,8 @@ TEST(FeatureFlagsFilterTest, OptionFailOnUnrecognizedFlagsIsFalse) { <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android"> <permission android:name="FOO" android:featureFlag="unrecognized" /> </manifest>)EOF", - {{"flag", true}}, {.fail_on_unrecognized_flags = false}); + {{"flag", FeatureFlagProperties{false, true}}}, + {.fail_on_unrecognized_flags = false}); ASSERT_THAT(doc, NotNull()); auto root = doc->root.get(); ASSERT_THAT(root, NotNull()); diff --git a/tools/fonts/fontchain_linter.py b/tools/fonts/fontchain_linter.py index 006a02908643..3bde92909cd5 100755 --- a/tools/fonts/fontchain_linter.py +++ b/tools/fonts/fontchain_linter.py @@ -10,6 +10,14 @@ from xml.etree import ElementTree from fontTools import ttLib +# TODO(nona): Remove hard coded font version and unicode versions. +# Figure out a way of giving this information with command lines. +EMOJI_FONT_TO_UNICODE_MAP = { + '2.034': 15.0, + '2.042': 15.1, + '2.047': 16.0, +} + EMOJI_VS = 0xFE0F LANG_TO_SCRIPT = { @@ -217,9 +225,8 @@ def check_hyphens(hyphens_dir): class FontRecord(object): - def __init__(self, name, psName, scripts, variant, weight, style, fallback_for, font): + def __init__(self, name, scripts, variant, weight, style, fallback_for, font): self.name = name - self.psName = psName self.scripts = scripts self.variant = variant self.weight = weight @@ -282,13 +289,23 @@ def parse_fonts_xml(fonts_xml_path): m = trim_re.match(font_file) font_file = m.group(1) - weight = int(child.get('weight')) - assert weight % 100 == 0, ( - 'Font weight "%d" is not a multiple of 100.' % weight) - - style = child.get('style') - assert style in {'normal', 'italic'}, ( - 'Unknown style "%s"' % style) + # In case of variable font and it supports `wght` axis, the weight attribute can be + # dropped which is automatically adjusted at runtime. + if 'weight' in child: + weight = int(child.get('weight')) + assert weight % 100 == 0, ( + 'Font weight "%d" is not a multiple of 100.' % weight) + else: + weight = None + + # In case of variable font and it supports `ital` or `slnt` axes, the style attribute + # can be dropped which is automatically adjusted at runtime. + if 'style' in child: + style = child.get('style') + assert style in {'normal', 'italic'}, ( + 'Unknown style "%s"' % style) + else: + style = None fallback_for = child.get('fallbackFor') @@ -306,7 +323,6 @@ def parse_fonts_xml(fonts_xml_path): record = FontRecord( name, - child.get('postScriptName'), frozenset(scripts), variant, weight, @@ -357,6 +373,11 @@ def is_regional_indicator(x): # regional indicator A..Z return 0x1F1E6 <= x <= 0x1F1FF +def is_flag_sequence(seq): + if type(seq) == int: + return False + len(seq) == 2 and is_regional_indicator(seq[0]) and is_regional_indicator(seq[1]) + def is_tag(x): # tag block return 0xE0000 <= x <= 0xE007F @@ -391,17 +412,43 @@ def check_emoji_not_compat(all_emoji, equivalent_emoji): if "meta" in ttf: assert 'Emji' not in ttf["meta"].data, 'NotoColorEmoji MUST be a compat font' +def is_flag_emoji(font): + return 0x1F1E6 in get_best_cmap(font) + +def emoji_font_version_to_unicode_version(font_version): + version_str = '%.3f' % font_version + assert version_str in EMOJI_FONT_TO_UNICODE_MAP, 'Unknown emoji font verion: %s' % version_str + return EMOJI_FONT_TO_UNICODE_MAP[version_str] + def check_emoji_font_coverage(emoji_fonts, all_emoji, equivalent_emoji): coverages = [] + emoji_font_version = 0 + emoji_flag_font_version = 0 for emoji_font in emoji_fonts: coverages.append(get_emoji_map(emoji_font)) + # Find the largest version of the installed emoji font. + version = open_font(emoji_font)['head'].fontRevision + if is_flag_emoji(emoji_font): + emoji_flag_font_version = max(emoji_flag_font_version, version) + else: + emoji_font_version = max(emoji_font_version, version) + + emoji_flag_unicode_version = emoji_font_version_to_unicode_version(emoji_flag_font_version) + emoji_unicode_version = emoji_font_version_to_unicode_version(emoji_font_version) + errors = [] for sequence in all_emoji: if all([sequence not in coverage for coverage in coverages]): - errors.append('%s is not supported in the emoji font.' % printable(sequence)) + sequence_version = float(_age_by_chars[sequence]) + if is_flag_sequence(sequence): + if sequence_version <= emoji_flag_unicode_version: + errors.append('%s is not supported in the emoji font.' % printable(sequence)) + else: + if sequence_version <= emoji_unicode_version: + errors.append('%s is not supported in the emoji font.' % printable(sequence)) for coverage in coverages: for sequence in coverage: @@ -480,6 +527,19 @@ def check_emoji_defaults(default_emoji): repr(missing_text_chars)) +def parse_unicode_seq(chars): + if ' ' in chars: # character sequence + sequence = [int(ch, 16) for ch in chars.split(' ')] + additions = [tuple(sequence)] + elif '..' in chars: # character range + char_start, char_end = chars.split('..') + char_start = int(char_start, 16) + char_end = int(char_end, 16) + additions = range(char_start, char_end+1) + else: # single character + additions = [int(chars, 16)] + return additions + # Setting reverse to true returns a dictionary that maps the values to sets of # characters, useful for some binary properties. Otherwise, we get a # dictionary that maps characters to the property values, assuming there's only @@ -501,16 +561,8 @@ def parse_unicode_datafile(file_path, reverse=False): chars = chars.strip() prop = prop.strip() - if ' ' in chars: # character sequence - sequence = [int(ch, 16) for ch in chars.split(' ')] - additions = [tuple(sequence)] - elif '..' in chars: # character range - char_start, char_end = chars.split('..') - char_start = int(char_start, 16) - char_end = int(char_end, 16) - additions = range(char_start, char_end+1) - else: # singe character - additions = [int(chars, 16)] + additions = parse_unicode_seq(chars) + if reverse: output_dict[prop].update(additions) else: @@ -519,6 +571,32 @@ def parse_unicode_datafile(file_path, reverse=False): output_dict[addition] = prop return output_dict +def parse_sequence_age(file_path): + VERSION_RE = re.compile(r'E([\d\.]+)') + output_dict = {} + with open(file_path) as datafile: + for line in datafile: + comment = '' + if '#' in line: + hash_pos = line.index('#') + comment = line[hash_pos + 1:].strip() + line = line[:hash_pos] + line = line.strip() + if not line: + continue + + chars = line[:line.index(';')].strip() + + m = VERSION_RE.match(comment) + assert m, 'Version not found: unknown format: %s' % line + version = m.group(1) + + additions = parse_unicode_seq(chars) + + for addition in additions: + assert addition not in output_dict + output_dict[addition] = version + return output_dict def parse_emoji_variants(file_path): emoji_set = set() @@ -543,7 +621,7 @@ def parse_emoji_variants(file_path): def parse_ucd(ucd_path): - global _emoji_properties, _chars_by_age + global _emoji_properties, _chars_by_age, _age_by_chars global _text_variation_sequences, _emoji_variation_sequences global _emoji_sequences, _emoji_zwj_sequences _emoji_properties = parse_unicode_datafile( @@ -555,6 +633,10 @@ def parse_ucd(ucd_path): _chars_by_age = parse_unicode_datafile( path.join(ucd_path, 'DerivedAge.txt'), reverse=True) + _age_by_chars = parse_unicode_datafile( + path.join(ucd_path, 'DerivedAge.txt')) + _age_by_chars.update(parse_sequence_age( + path.join(ucd_path, 'emoji-sequences.txt'))) sequences = parse_emoji_variants( path.join(ucd_path, 'emoji-variation-sequences.txt')) _text_variation_sequences, _emoji_variation_sequences = sequences @@ -743,44 +825,12 @@ def check_cjk_punctuation(): break assert_font_supports_none_of_chars(record.font, cjk_punctuation, name) -def getPostScriptName(font): - font_file, index = font - font_path = path.join(_fonts_dir, font_file) - if index is not None: - # Use the first font file in the collection for resolving post script name. - ttf = ttLib.TTFont(font_path, fontNumber=0) - else: - ttf = ttLib.TTFont(font_path) - - nameTable = ttf['name'] - for name in nameTable.names: - if (name.nameID == 6 and name.platformID == 3 and name.platEncID == 1 - and name.langID == 0x0409): - return str(name) - -def check_canonical_name(): - for record in _all_fonts: - file_name, index = record.font - - psName = getPostScriptName(record.font) - if record.psName: - # If fonts element has postScriptName attribute, it should match with the PostScript - # name in the name table. - assert psName == record.psName, ('postScriptName attribute %s should match with %s' % ( - record.psName, psName)) - else: - # If fonts element doesn't have postScriptName attribute, the file name should match - # with the PostScript name in the name table. - assert psName == file_name[:-4], ('file name %s should match with %s' % ( - file_name, psName)) - - def main(): global _fonts_dir target_out = sys.argv[1] _fonts_dir = path.join(target_out, 'fonts') - fonts_xml_path = path.join(target_out, 'etc', 'fonts.xml') + fonts_xml_path = path.join(target_out, 'etc', 'font_fallback.xml') parse_fonts_xml(fonts_xml_path) @@ -793,8 +843,6 @@ def main(): check_cjk_punctuation() - check_canonical_name() - check_emoji = sys.argv[2] if check_emoji == 'true': ucd_path = sys.argv[3] diff --git a/tools/hoststubgen/.gitignore b/tools/hoststubgen/.gitignore deleted file mode 100644 index 6453bdef8cee..000000000000 --- a/tools/hoststubgen/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -out/ -*-out/ -*.log diff --git a/tools/hoststubgen/OWNERS b/tools/hoststubgen/OWNERS deleted file mode 100644 index 3d8888d83cf4..000000000000 --- a/tools/hoststubgen/OWNERS +++ /dev/null @@ -1 +0,0 @@ -file:platform/frameworks/base:/ravenwood/OWNERS diff --git a/tools/hoststubgen/TEST_MAPPING b/tools/hoststubgen/TEST_MAPPING deleted file mode 100644 index 856e6eefba15..000000000000 --- a/tools/hoststubgen/TEST_MAPPING +++ /dev/null @@ -1,7 +0,0 @@ -{ - "imports": [ - { - "path": "frameworks/base/ravenwood" - } - ] -} diff --git a/tools/hoststubgen/hoststubgen/.gitignore b/tools/hoststubgen/hoststubgen/.gitignore deleted file mode 100644 index 0f384074ed7f..000000000000 --- a/tools/hoststubgen/hoststubgen/.gitignore +++ /dev/null @@ -1 +0,0 @@ -framework-all-stub-out
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassStub.java b/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassStub.java deleted file mode 100644 index 1824f6f01516..000000000000 --- a/tools/hoststubgen/hoststubgen/annotations-src/android/hosttest/annotation/HostSideTestWholeClassStub.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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.hosttest.annotation; - -import static java.lang.annotation.ElementType.TYPE; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * THIS ANNOTATION IS EXPERIMENTAL. REACH OUT TO g/ravenwood BEFORE USING IT, OR YOU HAVE ANY - * QUESTIONS ABOUT IT. - * - * Same as {@link HostSideTestStub} but it'll change the visibility of all its members too. - * - * @hide - */ -@Target({TYPE}) -@Retention(RetentionPolicy.CLASS) -public @interface HostSideTestWholeClassStub { -} diff --git a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenKeptInStub.java b/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenKeptInStub.java deleted file mode 100644 index 12b9875fcf53..000000000000 --- a/tools/hoststubgen/hoststubgen/helper-runtime-src/com/android/hoststubgen/hosthelper/HostStubGenKeptInStub.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * 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.hoststubgen.hosthelper; - -import static java.lang.annotation.ElementType.CONSTRUCTOR; -import static java.lang.annotation.ElementType.FIELD; -import static java.lang.annotation.ElementType.METHOD; -import static java.lang.annotation.ElementType.TYPE; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Annotation injected to all classes/methods/fields that are kept in the "stub" jar. - * - * All items in the stub jar are automatically kept in the impl jar as well, so - * the items with this annotation will all have {@link HostStubGenKeptInImpl} too. - */ -@Target({TYPE, METHOD, CONSTRUCTOR, FIELD}) -@Retention(RetentionPolicy.RUNTIME) -public @interface HostStubGenKeptInStub { - String CLASS_INTERNAL_NAME = HostTestUtils.getInternalName(HostStubGenKeptInStub.class); - String CLASS_DESCRIPTOR = "L" + CLASS_INTERNAL_NAME + ";"; -} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt deleted file mode 100644 index 248121c63d78..000000000000 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AnnotationBasedFilter.kt +++ /dev/null @@ -1,446 +0,0 @@ -/* - * 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.hoststubgen.filters - -import com.android.hoststubgen.ClassParseException -import com.android.hoststubgen.HostStubGenErrors -import com.android.hoststubgen.HostStubGenInternalException -import com.android.hoststubgen.InvalidAnnotationException -import com.android.hoststubgen.addNonNullElement -import com.android.hoststubgen.asm.CLASS_INITIALIZER_DESC -import com.android.hoststubgen.asm.CLASS_INITIALIZER_NAME -import com.android.hoststubgen.asm.ClassNodes -import com.android.hoststubgen.asm.findAnnotationValueAsString -import com.android.hoststubgen.asm.findAnyAnnotation -import com.android.hoststubgen.asm.toHumanReadableClassName -import com.android.hoststubgen.asm.toHumanReadableMethodName -import com.android.hoststubgen.asm.toJvmClassName -import com.android.hoststubgen.log -import com.android.hoststubgen.utils.ClassFilter -import org.objectweb.asm.tree.AnnotationNode -import org.objectweb.asm.tree.ClassNode - -// TODO: Detect invalid cases, such as... -// - Class's visibility is lower than the members'. -// - HostSideTestSubstituteWith is set, but it doesn't have @Stub or @Keep - -/** - * [OutputFilter] using Java annotations. - */ -class AnnotationBasedFilter( - private val errors: HostStubGenErrors, - private val classes: ClassNodes, - stubAnnotations_: Set<String>, - keepAnnotations_: Set<String>, - stubClassAnnotations_: Set<String>, - keepClassAnnotations_: Set<String>, - throwAnnotations_: Set<String>, - removeAnnotations_: Set<String>, - substituteAnnotations_: Set<String>, - nativeSubstituteAnnotations_: Set<String>, - classLoadHookAnnotations_: Set<String>, - keepStaticInitializerAnnotations_: Set<String>, - private val annotationAllowedClassesFilter: ClassFilter, - fallback: OutputFilter, -) : DelegatingFilter(fallback) { - private var stubAnnotations = convertToInternalNames(stubAnnotations_) - private var keepAnnotations = convertToInternalNames(keepAnnotations_) - private var stubClassAnnotations = convertToInternalNames(stubClassAnnotations_) - private var keepClassAnnotations = convertToInternalNames(keepClassAnnotations_) - private var throwAnnotations = convertToInternalNames(throwAnnotations_) - private var removeAnnotations = convertToInternalNames(removeAnnotations_) - private var substituteAnnotations = convertToInternalNames(substituteAnnotations_) - private var nativeSubstituteAnnotations = convertToInternalNames(nativeSubstituteAnnotations_) - private var classLoadHookAnnotations = convertToInternalNames(classLoadHookAnnotations_) - private var keepStaticInitializerAnnotations = - convertToInternalNames(keepStaticInitializerAnnotations_) - - /** Annotations that control API visibility. */ - private var visibilityAnnotations: Set<String> = convertToInternalNames( - stubAnnotations_ + - keepAnnotations_ + - stubClassAnnotations_ + - keepClassAnnotations_ + - throwAnnotations_ + - removeAnnotations_) - - /** - * All the annotations we use. Note, this one is in a [convertToJvmNames] format unlike - * other ones, because of how it's used. - */ - private var allAnnotations: Set<String> = convertToJvmNames( - stubAnnotations_ + - keepAnnotations_ + - stubClassAnnotations_ + - keepClassAnnotations_ + - throwAnnotations_ + - removeAnnotations_ + - substituteAnnotations_ + - nativeSubstituteAnnotations_ + - classLoadHookAnnotations_) - - private val substitutionHelper = SubstitutionHelper() - - private val reasonAnnotation = "annotation" - private val reasonClassAnnotation = "class-annotation" - - /** - * Throw if an item has more than one visibility annotations. - * - * name1 - 4 are only used in exception messages. We take them as separate strings - * to avoid unnecessary string concatenations. - */ - private fun detectInvalidAnnotations( - visibles: List<AnnotationNode>?, - invisibles: List<AnnotationNode>?, - type: String, - name1: String, - name2: String, - name3: String, - ) { - var count = 0 - for (an in visibles ?: emptyList()) { - if (visibilityAnnotations.contains(an.desc)) { - count++ - } - } - for (an in invisibles ?: emptyList()) { - if (visibilityAnnotations.contains(an.desc)) { - count++ - } - } - if (count > 1) { - val description = if (name2 == "" && name3 == "") { - "$type $name1" - } else { - "$type $name1.$name2$name3" - } - throw InvalidAnnotationException( - "Found more than one visibility annotations on $description") - } - } - - fun findAnyAnnotation( - className: String, - anyAnnotations: Set<String>, - visibleAnnotations: List<AnnotationNode>?, - invisibleAnnotations: List<AnnotationNode>?, - ): AnnotationNode? { - val ret = findAnyAnnotation(anyAnnotations, visibleAnnotations, invisibleAnnotations) - - if (ret != null) { - if (!annotationAllowedClassesFilter.matches(className)) { - throw InvalidAnnotationException( - "Class ${className.toHumanReadableClassName()} is not allowed to have " + - "Ravenwood annotations. Contact g/ravenwood for more details.") - } - } - - return ret - } - - /** - * Find a visibility annotation. - * - * name1 - 4 are only used in exception messages. - */ - private fun findAnnotation( - className: String, - visibles: List<AnnotationNode>?, - invisibles: List<AnnotationNode>?, - type: String, - name1: String, - name2: String = "", - name3: String = "", - ): FilterPolicyWithReason? { - detectInvalidAnnotations(visibles, invisibles, type, name1, name2, name3) - - findAnyAnnotation(className, stubAnnotations, visibles, invisibles)?.let { - return FilterPolicy.Stub.withReason(reasonAnnotation) - } - findAnyAnnotation(className, stubClassAnnotations, visibles, invisibles)?.let { - return FilterPolicy.StubClass.withReason(reasonClassAnnotation) - } - findAnyAnnotation(className, keepAnnotations, visibles, invisibles)?.let { - return FilterPolicy.Keep.withReason(reasonAnnotation) - } - findAnyAnnotation(className, keepClassAnnotations, visibles, invisibles)?.let { - return FilterPolicy.KeepClass.withReason(reasonClassAnnotation) - } - findAnyAnnotation(className, throwAnnotations, visibles, invisibles)?.let { - return FilterPolicy.Throw.withReason(reasonAnnotation) - } - findAnyAnnotation(className, removeAnnotations, visibles, invisibles)?.let { - return FilterPolicy.Remove.withReason(reasonAnnotation) - } - - return null - } - - override fun getPolicyForClass(className: String): FilterPolicyWithReason { - val cn = classes.getClass(className) - - findAnnotation( - cn.name, - cn.visibleAnnotations, - cn.invisibleAnnotations, - "class", - className)?.let { - return it - } - - // If it's any of the annotations, then always keep it. - if (allAnnotations.contains(className)) { - return FilterPolicy.KeepClass.withReason("HostStubGen Annotation") - } - - return super.getPolicyForClass(className) - } - - override fun getPolicyForField( - className: String, - fieldName: String - ): FilterPolicyWithReason { - val cn = classes.getClass(className) - - cn.fields?.firstOrNull { it.name == fieldName }?.let {fn -> - findAnnotation( - cn.name, - fn.visibleAnnotations, - fn.invisibleAnnotations, - "field", - className, - fieldName - )?.let { policy -> - // If the item has an annotation, then use it. - return policy - } - } - return super.getPolicyForField(className, fieldName) - } - - override fun getPolicyForMethod( - className: String, - methodName: String, - descriptor: String - ): FilterPolicyWithReason { - val cn = classes.getClass(className) - - if (methodName == CLASS_INITIALIZER_NAME && descriptor == CLASS_INITIALIZER_DESC) { - findAnyAnnotation(cn.name, keepStaticInitializerAnnotations, - cn.visibleAnnotations, cn.invisibleAnnotations)?.let { - return FilterPolicy.Keep.withReason(reasonAnnotation) - } - } - - cn.methods?.firstOrNull { it.name == methodName && it.desc == descriptor }?.let { mn -> - // @SubstituteWith is going to complicate the policy here, so we ask helper - // what to do. - substitutionHelper.getPolicyFromSubstitution(cn, mn.name, mn.desc)?.let { - return it - } - - // If there's no substitution, then we check the annotation. - findAnnotation( - cn.name, - mn.visibleAnnotations, - mn.invisibleAnnotations, - "method", - className, - methodName, - descriptor - )?.let { policy -> - return policy - } - } - return super.getPolicyForMethod(className, methodName, descriptor) - } - - override fun getRenameTo( - className: String, - methodName: String, - descriptor: String - ): String? { - val cn = classes.getClass(className) - - // If the method has a "substitute with" annotation, then return its "value" parameter. - cn.methods?.firstOrNull { it.name == methodName && it.desc == descriptor }?.let { mn -> - return substitutionHelper.getRenameTo(cn, mn.name, mn.desc) - } - return null - } - - override fun getNativeSubstitutionClass(className: String): String? { - classes.getClass(className).let { cn -> - findAnyAnnotation(nativeSubstituteAnnotations, - cn.visibleAnnotations, cn.invisibleAnnotations)?.let { an -> - return getAnnotationField(an, "value")?.toJvmClassName() - } - } - return null - } - - override fun getClassLoadHooks(className: String): List<String> { - val e = classes.getClass(className).let { cn -> - findAnyAnnotation(classLoadHookAnnotations, - cn.visibleAnnotations, cn.invisibleAnnotations)?.let { an -> - getAnnotationField(an, "value")?.toHumanReadableMethodName() - } - } - return addNonNullElement(super.getClassLoadHooks(className), e) - } - - private data class MethodKey(val name: String, val desc: String) - - /** - * In order to handle substitution, we need to build a reverse mapping of substitution - * methods. - * - * This class automatically builds such a map internally that the above methods can - * take advantage of. - */ - private inner class SubstitutionHelper { - private var currentClass: ClassNode? = null - - private var policiesFromSubstitution = mutableMapOf<MethodKey, FilterPolicyWithReason>() - private var substituteToMethods = mutableMapOf<MethodKey, String>() - - fun getPolicyFromSubstitution(cn: ClassNode, methodName: String, descriptor: String): - FilterPolicyWithReason? { - setClass(cn) - return policiesFromSubstitution[MethodKey(methodName, descriptor)] - } - - fun getRenameTo(cn: ClassNode, methodName: String, descriptor: String): String? { - setClass(cn) - return substituteToMethods[MethodKey(methodName, descriptor)] - } - - /** - * Every time we see a different class, we scan all its methods for substitution attributes, - * and compute (implicit) policies caused by them. - * - * For example, for the following methods: - * - * @Stub - * @Substitute(suffix = "_host") - * private void foo() { - * // This isn't supported on the host side. - * } - * private void foo_host() { - * // Host side implementation - * } - * - * We internally handle them as: - * - * foo() -> Remove - * foo_host() -> Stub, and then rename it to foo(). - */ - private fun setClass(cn: ClassNode) { - if (currentClass == cn) { - return - } - // If the class is changing, we'll rebuild the internal structure. - currentClass = cn - - policiesFromSubstitution.clear() - substituteToMethods.clear() - - for (mn in cn.methods ?: emptyList()) { - findAnyAnnotation(substituteAnnotations, - mn.visibleAnnotations, - mn.invisibleAnnotations)?.let { an -> - - // Find the policy for this method. - val policy = outermostFilter.getPolicyForMethod(cn.name, mn.name, mn.desc) - .policy.resolveClassWidePolicy() - // Make sure it's either Stub or Keep. - if (!(policy.needsInStub || policy.needsInImpl)) { - // TODO: Use the real annotation names in the message - errors.onErrorFound("@SubstituteWith must have either @Stub or @Keep") - return@let - } - if (!policy.isUsableWithMethods) { - throw HostStubGenInternalException("Policy $policy shouldn't show up here") - } - - val suffix = getAnnotationField(an, "suffix", false) ?: "\$ravenwood" - val renameFrom = mn.name + suffix - val renameTo = mn.name - - if (renameFrom == renameTo) { - errors.onErrorFound("@SubstituteWith have a different name") - return@let - } - - // This mn has "SubstituteWith". This means, - // 1. Re move the "rename-to" method, so add it to substitutedMethods. - policiesFromSubstitution[MethodKey(renameTo, mn.desc)] = - FilterPolicy.Remove.withReason("substitute-to") - - // If the policy is "stub", use "stub". - // Otherwise, it must be "keep" or "throw", but there's no point in using - // "throw", so let's use "keep". - val newPolicy = if (policy.needsInStub) policy else FilterPolicy.Keep - // 2. We also keep the from-to in the map. - policiesFromSubstitution[MethodKey(renameFrom, mn.desc)] = - newPolicy.withReason("substitute-from") - substituteToMethods[MethodKey(renameFrom, mn.desc)] = renameTo - - log.v("Substitution found: %s%s -> %s", renameFrom, mn.desc, renameTo) - } - } - } - } - - /** - * Return the (String) value of 'value' parameter from an annotation. - */ - private fun getAnnotationField(an: AnnotationNode, name: String, - required: Boolean = true): String? { - try { - val suffix = findAnnotationValueAsString(an, name) - if (suffix == null && required) { - errors.onErrorFound("Annotation \"${an.desc}\" must have field $name") - } - return suffix - } catch (e: ClassParseException) { - errors.onErrorFound(e.message!!) - return null - } - } - - companion object { - /** - * Convert from human-readable type names (e.g. "com.android.TypeName") to the internal type - * names (e.g. "Lcom/android/TypeName). - */ - private fun convertToInternalNames(input: Set<String>): Set<String> { - val ret = mutableSetOf<String>() - input.forEach { ret.add("L" + it.toJvmClassName() + ";") } - return ret - } - - /** - * Convert from human-readable type names to JVM type names. - */ - private fun convertToJvmNames(input: Set<String>): Set<String> { - val ret = mutableSetOf<String>() - input.forEach { ret.add(it.toJvmClassName()) } - return ret - } - } -} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt deleted file mode 100644 index 47790b10782a..000000000000 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/ClassWidePolicyPropagatingFilter.kt +++ /dev/null @@ -1,97 +0,0 @@ -/* - * 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.hoststubgen.filters - -import com.android.hoststubgen.asm.ClassNodes -import com.android.hoststubgen.asm.getDirectOuterClassName - -/** - * This is used as the second last fallback filter. This filter propagates the class-wide policy - * (obtained from [outermostFilter]) to the fields and methods. - */ -class ClassWidePolicyPropagatingFilter( - private val classes: ClassNodes, - fallback: OutputFilter, - ) : DelegatingFilter(fallback) { - - private fun getClassWidePolicy(className: String, resolve: Boolean): FilterPolicyWithReason? { - var currentClass = className - - - // If the class name is `a.b.c.A$B$C`, then we try to get the class wide policy - // from a.b.c.A$B$C, then a.b.c.A$B, and then a.b.c.A. - while (true) { - // Sometimes a class name has a `$` in it but not as a nest class name separator -- - // e.g. class name like "MyClass$$". In this case, `MyClass$` may not actually be - // a class name. - // So before getting the class policy on a nonexistent class, which may cause an - // incorrect result, we make sure if className actually exists. - if (classes.hasClass(className)) { - outermostFilter.getPolicyForClass(className).let { policy -> - if (policy.policy.isClassWidePolicy) { - val p = if (resolve) { - policy.policy.resolveClassWidePolicy() - } else { - policy.policy - } - - return p.withReason(policy.reason) - .wrapReason("class-wide in $currentClass") - } - // If the class's policy is remove, then remove it. - if (policy.policy == FilterPolicy.Remove) { - return FilterPolicy.Remove.withReason("class-wide in $currentClass") - } - } - } - - // Next, look at the outer class... - val outer = getDirectOuterClassName(currentClass) - if (outer == null) { - return null - } - currentClass = outer - } - } - - override fun getPolicyForClass(className: String): FilterPolicyWithReason { - // If it's a nested class, use the outer class's policy. - getDirectOuterClassName(className)?.let { outerName -> - getClassWidePolicy(outerName, resolve = false)?.let { policy -> - return policy - } - } - - return super.getPolicyForClass(className) - } - - override fun getPolicyForField( - className: String, - fieldName: String - ): FilterPolicyWithReason { - return getClassWidePolicy(className, resolve = true) - ?: super.getPolicyForField(className, fieldName) - } - - override fun getPolicyForMethod( - className: String, - methodName: String, - descriptor: String - ): FilterPolicyWithReason { - return getClassWidePolicy(className, resolve = true) - ?: super.getPolicyForMethod(className, methodName, descriptor) - } -}
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/StubIntersectingFilter.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/StubIntersectingFilter.kt deleted file mode 100644 index f92a0271d7c7..000000000000 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/StubIntersectingFilter.kt +++ /dev/null @@ -1,91 +0,0 @@ -/* - * 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.hoststubgen.filters - -import com.android.hoststubgen.HostStubGenErrors -import com.android.hoststubgen.asm.ClassNodes - -private const val REASON = "demoted, not in intersect jars" - -/** - * An [OutputFilter] that will restrict what to put in stub to only what shows up in "intersecting - * jar" files. - * - * For example, if the Android public API stub jar is provided, then the HostStubGen's output - * stub will be restricted to public APIs. - */ -class StubIntersectingFilter( - private val errors: HostStubGenErrors, - /** - * If a class / field / method is not in any of these jars, then we will not put it in - * stub. - */ - private val intersectingJars: Map<String, ClassNodes>, - fallback: OutputFilter, -) : DelegatingFilter(fallback) { - private inline fun exists(predicate: (ClassNodes) -> Boolean): Boolean { - intersectingJars.forEach { entry -> - if (predicate(entry.value)) { - return true - } - } - return false - } - - /** - * If [origPolicy] is less than "Stub", then return it as-is. - * - * Otherwise, call [inStubChecker] to see if the API is in any of [intersectingJars]. - * If yes, then return [origPolicy] as-is. Otherwise, demote to "Keep". - */ - private fun intersectWithStub( - origPolicy: FilterPolicyWithReason, - inStubChecker: () -> Boolean, - ): FilterPolicyWithReason { - if (origPolicy.policy.needsInStub) { - // Only check the stub jars, when the class is supposed to be in stub otherwise. - if (!inStubChecker()) { - return origPolicy.demoteToKeep(REASON) - } - } - return origPolicy - } - - override fun getPolicyForClass(className: String): FilterPolicyWithReason { - return intersectWithStub(super.getPolicyForClass(className)) { - exists { classes -> classes.findClass(className) != null } - } - } - - override fun getPolicyForField( - className: String, - fieldName: String - ): FilterPolicyWithReason { - return intersectWithStub(super.getPolicyForField(className, fieldName)) { - exists { classes -> classes.findField(className, fieldName) != null } - } - } - - override fun getPolicyForMethod( - className: String, - methodName: String, - descriptor: String - ): FilterPolicyWithReason { - return intersectWithStub(super.getPolicyForMethod(className, methodName, descriptor)) { - exists { classes -> classes.findMethod(className, methodName, descriptor) != null } - } - } -}
\ No newline at end of file diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt deleted file mode 100644 index c5acd81f1cf2..000000000000 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/TextFileFilterPolicyParser.kt +++ /dev/null @@ -1,294 +0,0 @@ -/* - * 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.hoststubgen.filters - -import com.android.hoststubgen.ParseException -import com.android.hoststubgen.asm.ClassNodes -import com.android.hoststubgen.asm.toHumanReadableClassName -import com.android.hoststubgen.log -import com.android.hoststubgen.normalizeTextLine -import com.android.hoststubgen.whitespaceRegex -import org.objectweb.asm.Opcodes -import org.objectweb.asm.tree.ClassNode -import java.io.BufferedReader -import java.io.FileReader -import java.io.PrintWriter -import java.util.Objects - -/** - * Print a class node as a "keep" policy. - */ -fun printAsTextPolicy(pw: PrintWriter, cn: ClassNode) { - pw.printf("class %s %s\n", cn.name.toHumanReadableClassName(), "keep") - - cn.fields?.let { - for (f in it.sortedWith(compareBy({ it.name }))) { - pw.printf(" field %s %s\n", f.name, "keep") - } - } - cn.methods?.let { - for (m in it.sortedWith(compareBy({ it.name }, { it.desc }))) { - pw.printf(" method %s %s %s\n", m.name, m.desc, "keep") - } - } -} - -/** Return true if [access] is either public or protected. */ -private fun isVisible(access: Int): Boolean { - return (access and (Opcodes.ACC_PUBLIC or Opcodes.ACC_PROTECTED)) != 0 -} - -private const val FILTER_REASON = "file-override" - -/** - * Read a given "policy" file and return as an [OutputFilter] - */ -fun createFilterFromTextPolicyFile( - filename: String, - classes: ClassNodes, - fallback: OutputFilter, - ): OutputFilter { - log.i("Loading offloaded annotations from $filename ...") - log.withIndent { - val subclassFilter = SubclassFilter(classes, fallback) - val imf = InMemoryOutputFilter(classes, subclassFilter) - - var lineNo = 0 - - var aidlPolicy: FilterPolicyWithReason? = null - var featureFlagsPolicy: FilterPolicyWithReason? = null - var syspropsPolicy: FilterPolicyWithReason? = null - var rFilePolicy: FilterPolicyWithReason? = null - - try { - BufferedReader(FileReader(filename)).use { reader -> - var className = "" - - while (true) { - var line = reader.readLine() - if (line == null) { - break - } - lineNo++ - - line = normalizeTextLine(line) - - if (line.isEmpty()) { - continue // skip empty lines. - } - - - // TODO: Method too long, break it up. - - val fields = line.split(whitespaceRegex).toTypedArray() - when (fields[0].lowercase()) { - "c", "class" -> { - if (fields.size < 3) { - throw ParseException("Class ('c') expects 2 fields.") - } - className = fields[1] - - // superClass is set when the class name starts with a "*". - val superClass = resolveExtendingClass(className) - - // :aidl, etc? - val classType = resolveSpecialClass(className) - - if (fields[2].startsWith("!")) { - if (classType != SpecialClass.NotSpecial) { - // We could support it, but not needed at least for now. - throw ParseException( - "Special class can't have a substitution") - } - // It's a native-substitution. - val toClass = fields[2].substring(1) - imf.setNativeSubstitutionClass(className, toClass) - } else if (fields[2].startsWith("~")) { - if (classType != SpecialClass.NotSpecial) { - // We could support it, but not needed at least for now. - throw ParseException( - "Special class can't have a class load hook") - } - // It's a class-load hook - val callback = fields[2].substring(1) - imf.setClassLoadHook(className, callback) - } else { - val policy = parsePolicy(fields[2]) - if (!policy.isUsableWithClasses) { - throw ParseException("Class can't have policy '$policy'") - } - Objects.requireNonNull(className) - - when (classType) { - SpecialClass.NotSpecial -> { - // TODO: Duplicate check, etc - if (superClass == null) { - imf.setPolicyForClass( - className, policy.withReason(FILTER_REASON) - ) - } else { - subclassFilter.addPolicy(superClass, - policy.withReason("extends $superClass")) - } - } - SpecialClass.Aidl -> { - if (aidlPolicy != null) { - throw ParseException( - "Policy for AIDL classes already defined") - } - aidlPolicy = policy.withReason( - "$FILTER_REASON (special-class AIDL)") - } - SpecialClass.FeatureFlags -> { - if (featureFlagsPolicy != null) { - throw ParseException( - "Policy for feature flags already defined") - } - featureFlagsPolicy = policy.withReason( - "$FILTER_REASON (special-class feature flags)") - } - SpecialClass.Sysprops -> { - if (syspropsPolicy != null) { - throw ParseException( - "Policy for sysprops already defined") - } - syspropsPolicy = policy.withReason( - "$FILTER_REASON (special-class sysprops)") - } - SpecialClass.RFile -> { - if (rFilePolicy != null) { - throw ParseException( - "Policy for R file already defined") - } - rFilePolicy = policy.withReason( - "$FILTER_REASON (special-class R file)") - } - } - } - } - - "f", "field" -> { - if (fields.size < 3) { - throw ParseException("Field ('f') expects 2 fields.") - } - val name = fields[1] - val policy = parsePolicy(fields[2]) - if (!policy.isUsableWithFields) { - throw ParseException("Field can't have policy '$policy'") - } - Objects.requireNonNull(className) - - // TODO: Duplicate check, etc - imf.setPolicyForField(className, name, policy.withReason(FILTER_REASON)) - } - - "m", "method" -> { - if (fields.size < 4) { - throw ParseException("Method ('m') expects 3 fields.") - } - val name = fields[1] - val signature = fields[2] - val policy = parsePolicy(fields[3]) - - if (!policy.isUsableWithMethods) { - throw ParseException("Method can't have policy '$policy'") - } - - Objects.requireNonNull(className) - - imf.setPolicyForMethod(className, name, signature, - policy.withReason(FILTER_REASON)) - if (policy.isSubstitute) { - val fromName = fields[3].substring(1) - - if (fromName == name) { - throw ParseException( - "Substitution must have a different name") - } - - // Set the policy for the "from" method. - imf.setPolicyForMethod(className, fromName, signature, - policy.getSubstitutionBasePolicy() - .withReason(FILTER_REASON)) - - // Keep "from" -> "to" mapping. - imf.setRenameTo(className, fromName, signature, name) - } - } - - else -> { - throw ParseException("Unknown directive \"${fields[0]}\"") - } - } - } - } - } catch (e: ParseException) { - throw e.withSourceInfo(filename, lineNo) - } - - // Wrap the in-memory-filter with AHF. - return AndroidHeuristicsFilter( - classes, aidlPolicy, featureFlagsPolicy, syspropsPolicy, rFilePolicy, imf) - } -} - -private enum class SpecialClass { - NotSpecial, - Aidl, - FeatureFlags, - Sysprops, - RFile, -} - -private fun resolveSpecialClass(className: String): SpecialClass { - if (!className.startsWith(":")) { - return SpecialClass.NotSpecial - } - when (className.lowercase()) { - ":aidl" -> return SpecialClass.Aidl - ":feature_flags" -> return SpecialClass.FeatureFlags - ":sysprops" -> return SpecialClass.Sysprops - ":r" -> return SpecialClass.RFile - } - throw ParseException("Invalid special class name \"$className\"") -} - -private fun resolveExtendingClass(className: String): String? { - if (!className.startsWith("*")) { - return null - } - return className.substring(1) -} - -private fun parsePolicy(s: String): FilterPolicy { - return when (s.lowercase()) { - "s", "stub" -> FilterPolicy.Stub - "k", "keep" -> FilterPolicy.Keep - "t", "throw" -> FilterPolicy.Throw - "r", "remove" -> FilterPolicy.Remove - "sc", "stubclass" -> FilterPolicy.StubClass - "kc", "keepclass" -> FilterPolicy.KeepClass - else -> { - if (s.startsWith("@")) { - FilterPolicy.SubstituteAndStub - } else if (s.startsWith("%")) { - FilterPolicy.SubstituteAndKeep - } else { - throw ParseException("Invalid policy \"$s\"") - } - } - } -} diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/StubGeneratingAdapter.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/StubGeneratingAdapter.kt deleted file mode 100644 index fc20f2832d28..000000000000 --- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/visitors/StubGeneratingAdapter.kt +++ /dev/null @@ -1,86 +0,0 @@ -/* - * 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.hoststubgen.visitors - -import com.android.hoststubgen.asm.ClassNodes -import com.android.hoststubgen.filters.FilterPolicy -import com.android.hoststubgen.filters.FilterPolicyWithReason -import com.android.hoststubgen.filters.OutputFilter -import com.android.hoststubgen.log -import org.objectweb.asm.ClassVisitor -import org.objectweb.asm.MethodVisitor -import org.objectweb.asm.Opcodes - -/** - * An adapter that generates the "impl" class file from an input class file. - */ -class StubGeneratingAdapter( - classes: ClassNodes, - nextVisitor: ClassVisitor, - filter: OutputFilter, - options: Options, -) : BaseAdapter(classes, nextVisitor, filter, options) { - - override fun shouldEmit(policy: FilterPolicy): Boolean { - return policy.needsInStub - } - - override fun visitMethodInner( - access: Int, - name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - policy: FilterPolicyWithReason, - substituted: Boolean, - superVisitor: MethodVisitor?, - ): MethodVisitor? { - return StubMethodVisitor(access, name, descriptor, signature, exceptions, superVisitor) - } - - private inner class StubMethodVisitor( - access: Int, - val name: String, - descriptor: String, - signature: String?, - exceptions: Array<String>?, - next: MethodVisitor? - ) : BodyReplacingMethodVisitor(access, name, descriptor, signature, exceptions, next) { - override fun emitNewCode() { - log.d(" Generating stub method for $currentClassName.$name") - - // Inject the following code: - // throw new RuntimeException("Stub!"); - - /* - NEW java/lang/RuntimeException - DUP - LDC "not supported on host side" - INVOKESPECIAL java/lang/RuntimeException.<init> (Ljava/lang/String;)V - ATHROW - MAXSTACK = 3 - MAXLOCALS = 2 <- 1 for this, 1 for return value. - */ - visitTypeInsn(Opcodes.NEW, "java/lang/RuntimeException") - visitInsn(Opcodes.DUP) - visitLdcInsn("Stub!") - visitMethodInsn(Opcodes.INVOKESPECIAL, "java/lang/RuntimeException", - "<init>", "(Ljava/lang/String;)V", false) - visitInsn(Opcodes.ATHROW) - visitMaxs(0, 0) // We let ASM figure them out. - } - } -} diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/02-hoststubgen-test-tiny-framework-host-stub-dump.txt b/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/02-hoststubgen-test-tiny-framework-host-stub-dump.txt deleted file mode 100644 index 906a81cf45e3..000000000000 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/02-hoststubgen-test-tiny-framework-host-stub-dump.txt +++ /dev/null @@ -1,2389 +0,0 @@ -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy.class - Compiled from "IPretendingAidl.java" -public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Proxy - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - public com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Proxy(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int addTwo(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub.class - Compiled from "IPretendingAidl.java" -public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - public com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int addOne(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl.class - Compiled from "IPretendingAidl.java" -public interface com.android.hoststubgen.test.tinyframework.IPretendingAidl - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 4 -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestMembers: - com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub - com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy -## Class: com/android/hoststubgen/test/tinyframework/R$Nested.class - Compiled from "R.java" -public class com.android.hoststubgen.test.tinyframework.R$Nested - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/R$Nested - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 4 - public static int[] ARRAY; - descriptor: [I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.R$Nested(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R -SourceFile: "R.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/R -## Class: com/android/hoststubgen/test/tinyframework/R.class - Compiled from "R.java" -public class com.android.hoststubgen.test.tinyframework.R - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/R - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 1, attributes: 4 - public com.android.hoststubgen.test.tinyframework.R(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R -SourceFile: "R.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestMembers: - com/android/hoststubgen/test/tinyframework/R$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.class - Compiled from "TinyFrameworkCallerCheck.java" -class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl - minor version: 0 - major version: 61 - flags: (0x0020) ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - private com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOneStub(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.class - Compiled from "TinyFrameworkCallerCheck.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 5 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_withCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_noCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.class - Compiled from "TinyFrameworkClassAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 5, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -SourceFile: "TinyFrameworkClassAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestClassLoadHook( - value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" - ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.class - Compiled from "TinyFrameworkClassClassWideAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 8, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int remove; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public void toBeRemoved(java.lang.String); - descriptor: (Ljava/lang/String;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String unsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassClassWideAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class - Compiled from "TinyFrameworkClassLoadHook.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 3 - public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; - descriptor: Ljava/util/Set; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void onClassLoaded(java.lang.Class<?>); - descriptor: (Ljava/lang/Class;)V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // (Ljava/lang/Class<*>;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassLoadHook.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.class - Compiled from "TinyFrameworkClassWithInitializerDefault.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 0, attributes: 3 - public static boolean sInitialized; - descriptor: Z - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.lang.Object sObject; - descriptor: Ljava/lang/Object; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - -} -SourceFile: "TinyFrameworkClassWithInitializerDefault.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.class - Compiled from "TinyFrameworkClassWithInitializerStub.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 0, attributes: 3 - public static boolean sInitialized; - descriptor: Z - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.lang.Object sObject; - descriptor: Ljava/lang/Object; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - -} -SourceFile: "TinyFrameworkClassWithInitializerStub.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestClassLoadHook( - value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" - ) - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.class - Compiled from "TinyFrameworkEnumComplex.java" -public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex> - minor version: 0 - major version: 61 - flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ENUM - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex - super_class: #x // java/lang/Enum - interfaces: 0, fields: 4, methods: 7, attributes: 4 - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex RED; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex GREEN; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex BLUE; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $VALUES; - descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex valueOf(java.lang.String); - descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> mandated - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex(java.lang.String, java.lang.String); - descriptor: (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=5, args_size=5 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // (Ljava/lang/String;Ljava/lang/String;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - MethodParameters: - Name Flags - <no name> synthetic - <no name> synthetic - <no name> - <no name> - - public java.lang.String getLongName(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.lang.String getShortName(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex;>; -SourceFile: "TinyFrameworkEnumComplex.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.class - Compiled from "TinyFrameworkEnumSimple.java" -public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple> - minor version: 0 - major version: 61 - flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ENUM - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple - super_class: #x // java/lang/Enum - interfaces: 0, fields: 3, methods: 5, attributes: 4 - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple CAT; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple DOG; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $VALUES; - descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple valueOf(java.lang.String); - descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> mandated - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple(); - descriptor: (Ljava/lang/String;I)V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=3, args_size=3 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> synthetic - <no name> synthetic - - private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple;>; -SourceFile: "TinyFrameworkEnumSimple.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.class - Compiled from "TinyFrameworkExceptionTester.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int testException(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkExceptionTester.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class - Compiled from "TinyFrameworkForTextPolicy.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 5, attributes: 2 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkForTextPolicy.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested.class - Compiled from "TinyFrameworkLambdas.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 7, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static java.lang.Integer lambda$getSupplier_static$3(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$getSupplier$2(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$static$1(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$new$0(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles -SourceFile: "TinyFrameworkLambdas.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.class - Compiled from "TinyFrameworkLambdas.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 7, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static java.lang.Integer lambda$getSupplier_static$3(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$getSupplier$2(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$static$1(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$new$0(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles -SourceFile: "TinyFrameworkLambdas.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.class - Compiled from "TinyFrameworkNative.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 10, attributes: 3 - int value; - descriptor: I - flags: (0x0000) - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNative(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native int nativeAddTwo(int); - descriptor: (I)I - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddTwo_should_be_like_this(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native long nativeLongPlus(long, long); - descriptor: (JJ)J - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static long nativeLongPlus_should_be_like_this(long, long); - descriptor: (JJ)J - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=4, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public void setValue(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public native int nativeNonStaticAddToValue(int); - descriptor: (I)I - flags: (0x0101) ACC_PUBLIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int nativeNonStaticAddToValue_should_be_like_this(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void nativeStillNotSupported_should_be_like_this(); - descriptor: ()V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native byte nativeBytePlus(byte, byte); - descriptor: (BB)B - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkNative.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestNativeSubstitutionClass( - value="TinyFrameworkNative_host" - ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 1, attributes: 4 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$InnerClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 1, attributes: 5 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - final com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses this$0; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; - flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$InnerClass(com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses); - descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> final mandated -} -InnerClasses: - public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 5 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$SubClass extends com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass - super_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - interfaces: 0, fields: 0, methods: 1, attributes: 4 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$SubClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 4, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.class - Compiled from "TinyFrameworkPackageRedirect.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedirect - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedirect(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int foo(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkPackageRedirect.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C1.class - Compiled from "C1.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C1 - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C1.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C2.class - Compiled from "C2.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C2 - super_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C1 - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C2.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C3.class - Compiled from "C3.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C3 - super_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C2 - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C3.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CA.class - Compiled from "CA.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.CA - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/CA - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "CA.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CB.class - Compiled from "CB.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.CB - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/CB - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "CB.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I1.class - Compiled from "I1.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I1 - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I1.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I2.class - Compiled from "I2.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 extends com.android.hoststubgen.test.tinyframework.subclasstest.I1 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I2 - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I2.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I3.class - Compiled from "I3.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 extends com.android.hoststubgen.test.tinyframework.subclasstest.I2 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I3 - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I3.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IA.class - Compiled from "IA.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/IA - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "IA.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IB.class - Compiled from "IB.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/IB - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "IB.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/unsupported/UnsupportedClass.class - Compiled from "UnsupportedClass.java" -public class com.unsupported.UnsupportedClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/unsupported/UnsupportedClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.unsupported.UnsupportedClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int getValue(); - descriptor: ()I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "UnsupportedClass.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/12-hoststubgen-test-tiny-framework-host-ext-stub-dump.txt b/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/12-hoststubgen-test-tiny-framework-host-ext-stub-dump.txt deleted file mode 100644 index 906a81cf45e3..000000000000 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/golden-output/12-hoststubgen-test-tiny-framework-host-ext-stub-dump.txt +++ /dev/null @@ -1,2389 +0,0 @@ -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy.class - Compiled from "IPretendingAidl.java" -public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Proxy - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - public com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub$Proxy(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int addTwo(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub.class - Compiled from "IPretendingAidl.java" -public class com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - public com.android.hoststubgen.test.tinyframework.IPretendingAidl$Stub(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int addOne(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/IPretendingAidl -## Class: com/android/hoststubgen/test/tinyframework/IPretendingAidl.class - Compiled from "IPretendingAidl.java" -public interface com.android.hoststubgen.test.tinyframework.IPretendingAidl - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/IPretendingAidl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 4 -} -InnerClasses: - public static #x= #x of #x; // Stub=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub of class com/android/hoststubgen/test/tinyframework/IPretendingAidl - public static #x= #x of #x; // Proxy=class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy of class com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub -SourceFile: "IPretendingAidl.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestMembers: - com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub - com/android/hoststubgen/test/tinyframework/IPretendingAidl$Stub$Proxy -## Class: com/android/hoststubgen/test/tinyframework/R$Nested.class - Compiled from "R.java" -public class com.android.hoststubgen.test.tinyframework.R$Nested - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/R$Nested - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 4 - public static int[] ARRAY; - descriptor: [I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.R$Nested(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R -SourceFile: "R.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/R -## Class: com/android/hoststubgen/test/tinyframework/R.class - Compiled from "R.java" -public class com.android.hoststubgen.test.tinyframework.R - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/R - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 1, attributes: 4 - public com.android.hoststubgen.test.tinyframework.R(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/R$Nested of class com/android/hoststubgen/test/tinyframework/R -SourceFile: "R.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestMembers: - com/android/hoststubgen/test/tinyframework/R$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl.class - Compiled from "TinyFrameworkCallerCheck.java" -class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl - minor version: 0 - major version: 61 - flags: (0x0020) ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 4 - private com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck$Impl(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOneStub(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.class - Compiled from "TinyFrameworkCallerCheck.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 3, attributes: 5 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkCallerCheck(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_withCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int getOne_noCheck(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - private static #x= #x of #x; // Impl=class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl of class com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck -SourceFile: "TinyFrameworkCallerCheck.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck$Impl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations.class - Compiled from "TinyFrameworkClassAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 5, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassAnnotations(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -} -SourceFile: "TinyFrameworkClassAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestClassLoadHook( - value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" - ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations.class - Compiled from "TinyFrameworkClassClassWideAnnotations.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassClassWideAnnotations - super_class: #x // java/lang/Object - interfaces: 0, fields: 3, methods: 8, attributes: 3 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int keep; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int remove; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkClassClassWideAnnotations(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOneInner(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public void toBeRemoved(java.lang.String); - descriptor: (Ljava/lang/String;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String unsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassClassWideAnnotations.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook.class - Compiled from "TinyFrameworkClassLoadHook.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassLoadHook - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 3, attributes: 3 - public static final java.util.Set<java.lang.Class<?>> sLoadedClasses; - descriptor: Ljava/util/Set; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/Set<Ljava/lang/Class<*>;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook(); - descriptor: ()V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void onClassLoaded(java.lang.Class<?>); - descriptor: (Ljava/lang/Class;)V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // (Ljava/lang/Class<*>;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkClassLoadHook.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault.class - Compiled from "TinyFrameworkClassWithInitializerDefault.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerDefault - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerDefault - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 0, attributes: 3 - public static boolean sInitialized; - descriptor: Z - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.lang.Object sObject; - descriptor: Ljava/lang/Object; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - -} -SourceFile: "TinyFrameworkClassWithInitializerDefault.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub.class - Compiled from "TinyFrameworkClassWithInitializerStub.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkClassWithInitializerStub - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkClassWithInitializerStub - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 0, attributes: 3 - public static boolean sInitialized; - descriptor: Z - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.lang.Object sObject; - descriptor: Ljava/lang/Object; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - -} -SourceFile: "TinyFrameworkClassWithInitializerStub.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestClassLoadHook( - value="com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded" - ) - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex.class - Compiled from "TinyFrameworkEnumComplex.java" -public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex> - minor version: 0 - major version: 61 - flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ENUM - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex - super_class: #x // java/lang/Enum - interfaces: 0, fields: 4, methods: 7, attributes: 4 - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex RED; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex GREEN; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex BLUE; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $VALUES; - descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex valueOf(java.lang.String); - descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> mandated - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex(java.lang.String, java.lang.String); - descriptor: (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=5, args_size=5 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // (Ljava/lang/String;Ljava/lang/String;)V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - MethodParameters: - Name Flags - <no name> synthetic - <no name> synthetic - <no name> - <no name> - - public java.lang.String getLongName(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.lang.String getShortName(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumComplex[] $values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumComplex;>; -SourceFile: "TinyFrameworkEnumComplex.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple.class - Compiled from "TinyFrameworkEnumSimple.java" -public final class com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple extends java.lang.Enum<com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple> - minor version: 0 - major version: 61 - flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ENUM - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple - super_class: #x // java/lang/Enum - interfaces: 0, fields: 3, methods: 5, attributes: 4 - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple CAT; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple DOG; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ENUM - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static final com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $VALUES; - descriptor: [Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple valueOf(java.lang.String); - descriptor: (Ljava/lang/String;)Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> mandated - - private com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple(); - descriptor: (Ljava/lang/String;I)V - flags: (0x0002) ACC_PRIVATE - Code: - stack=3, locals=3, args_size=3 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()V - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> synthetic - <no name> synthetic - - private static com.android.hoststubgen.test.tinyframework.TinyFrameworkEnumSimple[] $values(); - descriptor: ()[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -Signature: #x // Ljava/lang/Enum<Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkEnumSimple;>; -SourceFile: "TinyFrameworkEnumSimple.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester.class - Compiled from "TinyFrameworkExceptionTester.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkExceptionTester - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkExceptionTester(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int testException(); - descriptor: ()I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkExceptionTester.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class - Compiled from "TinyFrameworkForTextPolicy.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 5, attributes: 2 - public int stub; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addOne(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int addTwo(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddThree(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.lang.String visibleButUsesUnsupportedMethod(); - descriptor: ()Ljava/lang/String; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkForTextPolicy.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested.class - Compiled from "TinyFrameworkLambdas.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 7, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas$Nested(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static java.lang.Integer lambda$getSupplier_static$3(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$getSupplier$2(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$static$1(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$new$0(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles -SourceFile: "TinyFrameworkLambdas.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas.class - Compiled from "TinyFrameworkLambdas.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 7, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkLambdas(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - - private static java.lang.Integer lambda$getSupplier_static$3(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$getSupplier$2(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$static$1(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - private static java.lang.Integer lambda$new$0(); - descriptor: ()Ljava/lang/Integer; - flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // Nested=class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested of class com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas - public static final #x= #x of #x; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles -SourceFile: "TinyFrameworkLambdas.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestStub - x: #x() - android.hosttest.annotation.HostSideTestStaticInitializerKeep -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkLambdas$Nested -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNative.class - Compiled from "TinyFrameworkNative.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNative - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNative - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 10, attributes: 3 - int value; - descriptor: I - flags: (0x0000) - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNative(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native int nativeAddTwo(int); - descriptor: (I)I - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int nativeAddTwo_should_be_like_this(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native long nativeLongPlus(long, long); - descriptor: (JJ)J - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static long nativeLongPlus_should_be_like_this(long, long); - descriptor: (JJ)J - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=4, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public void setValue(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public native int nativeNonStaticAddToValue(int); - descriptor: (I)I - flags: (0x0101) ACC_PUBLIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int nativeNonStaticAddToValue_should_be_like_this(int); - descriptor: (I)I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static void nativeStillNotSupported_should_be_like_this(); - descriptor: ()V - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static native byte nativeBytePlus(byte, byte); - descriptor: (BB)B - flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkNative.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub - x: #x(#x=s#x) - android.hosttest.annotation.HostSideTestNativeSubstitutionClass( - value="TinyFrameworkNative_host" - ) -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 1, attributes: 4 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$InnerClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 1, attributes: 5 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - final com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses this$0; - descriptor: Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses; - flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$InnerClass(com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses); - descriptor: (Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses;)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - MethodParameters: - Name Flags - <no name> final mandated -} -InnerClasses: - public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 1, methods: 2, attributes: 5 - public int value; - descriptor: I - flags: (0x0001) ACC_PUBLIC - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$StaticNestedClass(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$SubClass extends com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$BaseClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass - super_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - interfaces: 0, fields: 0, methods: 1, attributes: 4 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses$SubClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -NestHost: class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses.class - Compiled from "TinyFrameworkNestedClasses.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - super_class: #x // java/lang/Object - interfaces: 0, fields: 2, methods: 4, attributes: 5 - public final java.util.function.Supplier<java.lang.Integer> mSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0011) ACC_PUBLIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static final java.util.function.Supplier<java.lang.Integer> sSupplier; - descriptor: Ljava/util/function/Supplier; - flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL - Signature: #x // Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public com.android.hoststubgen.test.tinyframework.TinyFrameworkNestedClasses(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public java.util.function.Supplier<java.lang.Integer> getSupplier(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static java.util.function.Supplier<java.lang.Integer> getSupplier_static(); - descriptor: ()Ljava/util/function/Supplier; - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - Signature: #x // ()Ljava/util/function/Supplier<Ljava/lang/Integer;>; - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - static {}; - descriptor: ()V - flags: (0x0008) ACC_STATIC - Code: - stack=3, locals=0, args_size=0 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -InnerClasses: - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - public static #x= #x of #x; // SubClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // BaseClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public static #x= #x of #x; // StaticNestedClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - public #x= #x of #x; // InnerClass=class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass of class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses - #x; // class com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 -SourceFile: "TinyFrameworkNestedClasses.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -NestMembers: - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$SubClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$BaseClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$StaticNestedClass$1 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$InnerClass - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$4 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$3 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$2 - com/android/hoststubgen/test/tinyframework/TinyFrameworkNestedClasses$1 -## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect.class - Compiled from "TinyFrameworkPackageRedirect.java" -public class com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedirect - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/TinyFrameworkPackageRedirect - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.android.hoststubgen.test.tinyframework.TinyFrameworkPackageRedirect(); - descriptor: ()V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public static int foo(int); - descriptor: (I)I - flags: (0x0009) ACC_PUBLIC, ACC_STATIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "TinyFrameworkPackageRedirect.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C1.class - Compiled from "C1.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C1 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C1 - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C1.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C2.class - Compiled from "C2.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C2 extends com.android.hoststubgen.test.tinyframework.subclasstest.C1 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C2 - super_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C1 - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C2.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/C3.class - Compiled from "C3.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.C3 extends com.android.hoststubgen.test.tinyframework.subclasstest.C2 - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C3 - super_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/C2 - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "C3.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CA.class - Compiled from "CA.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.CA - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/CA - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "CA.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/CB.class - Compiled from "CB.java" -public class com.android.hoststubgen.test.tinyframework.subclasstest.CB - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/CB - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "CB.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I1.class - Compiled from "I1.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I1 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I1 - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I1.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I2.class - Compiled from "I2.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I2 extends com.android.hoststubgen.test.tinyframework.subclasstest.I1 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I2 - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I2.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/I3.class - Compiled from "I3.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.I3 extends com.android.hoststubgen.test.tinyframework.subclasstest.I2 - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/I3 - super_class: #x // java/lang/Object - interfaces: 1, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "I3.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IA.class - Compiled from "IA.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.IA - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/IA - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "IA.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/android/hoststubgen/test/tinyframework/subclasstest/IB.class - Compiled from "IB.java" -public interface com.android.hoststubgen.test.tinyframework.subclasstest.IB - minor version: 0 - major version: 61 - flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT - this_class: #x // com/android/hoststubgen/test/tinyframework/subclasstest/IB - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 0, attributes: 2 -} -SourceFile: "IB.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -## Class: com/unsupported/UnsupportedClass.class - Compiled from "UnsupportedClass.java" -public class com.unsupported.UnsupportedClass - minor version: 0 - major version: 61 - flags: (0x0021) ACC_PUBLIC, ACC_SUPER - this_class: #x // com/unsupported/UnsupportedClass - super_class: #x // java/lang/Object - interfaces: 0, fields: 0, methods: 2, attributes: 3 - public com.unsupported.UnsupportedClass(int); - descriptor: (I)V - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=2, args_size=2 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl - - public int getValue(); - descriptor: ()I - flags: (0x0001) ACC_PUBLIC - Code: - stack=3, locals=1, args_size=1 - x: new #x // class java/lang/RuntimeException - x: dup - x: ldc #x // String Stub! - x: invokespecial #x // Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V - x: athrow - RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -} -SourceFile: "UnsupportedClass.java" -RuntimeVisibleAnnotations: - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInStub - x: #x() - com.android.hoststubgen.hosthelper.HostStubGenKeptInImpl -RuntimeInvisibleAnnotations: - x: #x() - android.hosttest.annotation.HostSideTestWholeClassStub diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt b/tools/hoststubgen/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt deleted file mode 100644 index 696b6d009dc2..000000000000 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/policy-override-tiny-framework.txt +++ /dev/null @@ -1,42 +0,0 @@ -class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy stub - field stub stub - field keep keep - # field remove remove # Implicitly remove - method <init> ()V stub - method addOne (I)I stub - method addOneInner (I)I keep - method toBeRemoved (Ljava/lang/String;)V remove - method addTwo (I)I @addTwo_host - # method addTwo_host (I)I # used as a substitute - method nativeAddThree (I)I @addThree_host - # method addThree_host (I)I # used as a substitute - method unsupportedMethod ()Ljava/lang/String; throw - method visibleButUsesUnsupportedMethod ()Ljava/lang/String; stub - -# Class load hook -class com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy ~com.android.hoststubgen.test.tinyframework.TinyFrameworkClassLoadHook.onClassLoaded - -# Heuristics rule: Stub all the AIDL classes. -class :aidl stubclass - -# Heuristics rule: Stub all the R classes. -class :r stubclass - -# Default is "remove", so let's put all the base classes / interfaces in the stub first. -class com.android.hoststubgen.test.tinyframework.subclasstest.C1 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.C2 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.C3 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.CA stub -class com.android.hoststubgen.test.tinyframework.subclasstest.CB stub -class com.android.hoststubgen.test.tinyframework.subclasstest.I1 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.I2 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.I3 stub -class com.android.hoststubgen.test.tinyframework.subclasstest.IA stub -class com.android.hoststubgen.test.tinyframework.subclasstest.IB stub - -# Then define inheritance based policies. -class *com.android.hoststubgen.test.tinyframework.subclasstest.C1 keep -class *com.android.hoststubgen.test.tinyframework.subclasstest.CA remove - -class *com.android.hoststubgen.test.tinyframework.subclasstest.I1 keep -class *com.android.hoststubgen.test.tinyframework.subclasstest.IA remove diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.java b/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.java deleted file mode 100644 index f53020771cc3..000000000000 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkCallerCheck.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * 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.hoststubgen.test.tinyframework; - -import android.hosttest.annotation.HostSideTestKeep; -import android.hosttest.annotation.HostSideTestStub; -import android.hosttest.annotation.HostSideTestWholeClassStub; - -/** - * Used by the benchmark. - */ -@HostSideTestWholeClassStub -public class TinyFrameworkCallerCheck { - - /** - * This method uses an inner method (which has the caller check). - * - * Benchmark result: 768ns - */ - public static int getOne_withCheck() { - return Impl.getOneKeep(); - } - - /** - * This method doesn't have any caller check. - * - * Benchmark result: 2ns - */ - public static int getOne_noCheck() { - return Impl.getOneStub(); - } - - private static class Impl { - @HostSideTestKeep - public static int getOneKeep() { - return 1; - } - - @HostSideTestStub - public static int getOneStub() { - return 1; - } - } -} diff --git a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkBenchmark.java b/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkBenchmark.java deleted file mode 100644 index d57735b1987c..000000000000 --- a/tools/hoststubgen/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkBenchmark.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * 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.hoststubgen.test.tinyframework; - -import org.junit.Test; - -import java.text.DecimalFormat; - -/** - * Contains simple micro-benchmarks. - */ -@LargeTest -public class TinyFrameworkBenchmark { - private static final int MINIMAL_ITERATION = 1000; - private static final int MEASURE_SECONDS = 1; - - private static final DecimalFormat sFormatter = new DecimalFormat("#,###"); - - private void doBenchmark(String name, Runnable r) { - // Worm up - for (int i = 0; i < MINIMAL_ITERATION; i++) { - r.run(); - } - - // Start measuring. - final long start = System.nanoTime(); - final long end = start + MEASURE_SECONDS * 1_000_000_000L; - - double iteration = 0; - while (System.nanoTime() <= end) { - for (int i = 0; i < MINIMAL_ITERATION; i++) { - r.run(); - } - iteration += MINIMAL_ITERATION; - } - - final long realEnd = System.nanoTime(); - - System.out.println(String.format("%s\t%s", name, - sFormatter.format((((double) realEnd - start)) / iteration))); - } - - /** - * Micro-benchmark for a method without a non-stub caller check. - */ - @Test - public void benchNoCallerCheck() { - doBenchmark("No caller check", TinyFrameworkCallerCheck::getOne_noCheck); - } - - /** - * Micro-benchmark for a method with a non-stub caller check. - */ - @Test - public void benchWithCallerCheck() { - doBenchmark("With caller check", TinyFrameworkCallerCheck::getOne_withCheck); - } -} diff --git a/tools/lint/common/src/main/java/com/google/android/lint/aidl/EnforcePermissionUtils.kt b/tools/lint/common/src/main/java/com/google/android/lint/aidl/EnforcePermissionUtils.kt index 24d203fd1116..b79563f740ee 100644 --- a/tools/lint/common/src/main/java/com/google/android/lint/aidl/EnforcePermissionUtils.kt +++ b/tools/lint/common/src/main/java/com/google/android/lint/aidl/EnforcePermissionUtils.kt @@ -24,20 +24,31 @@ import com.intellij.psi.PsiReferenceList import org.jetbrains.uast.UMethod /** - * Given a UMethod, determine if this method is the entrypoint to an interface - * generated by AIDL, returning the interface name if so, otherwise returning - * null + * Given a UMethod, determine if this method is the entrypoint to an interface generated by AIDL, + * returning the interface name if so, otherwise returning null. */ fun getContainingAidlInterface(context: JavaContext, node: UMethod): String? { + return containingAidlInterfacePsiClass(context, node)?.name +} + +/** + * Given a UMethod, determine if this method is the entrypoint to an interface generated by AIDL, + * returning the fully qualified interface name if so, otherwise returning null. + */ +fun getContainingAidlInterfaceQualified(context: JavaContext, node: UMethod): String? { + return containingAidlInterfacePsiClass(context, node)?.qualifiedName +} + +private fun containingAidlInterfacePsiClass(context: JavaContext, node: UMethod): PsiClass? { val containingStub = containingStub(context, node) ?: return null val superMethod = node.findSuperMethods(containingStub) if (superMethod.isEmpty()) return null - return containingStub.containingClass?.name + return containingStub.containingClass } -/* Returns the containing Stub class if any. This is not sufficient to infer - * that the method itself extends an AIDL generated method. See - * getContainingAidlInterface for that purpose. +/** + * Returns the containing Stub class if any. This is not sufficient to infer that the method itself + * extends an AIDL generated method. See getContainingAidlInterface for that purpose. */ fun containingStub(context: JavaContext, node: UMethod?): PsiClass? { var superClass = node?.containingClass?.superClass @@ -48,7 +59,7 @@ fun containingStub(context: JavaContext, node: UMethod?): PsiClass? { return null } -private fun isStub(context: JavaContext, psiClass: PsiClass?): Boolean { +fun isStub(context: JavaContext, psiClass: PsiClass?): Boolean { if (psiClass == null) return false if (psiClass.name != "Stub") return false if (!context.evaluator.isStatic(psiClass)) return false @@ -92,3 +103,26 @@ fun getHelperMethodFix( return fix.build() } + +/** + * PermissionAnnotationDetector uses this method to determine whether a specific file should be + * checked for unannotated methods. Only files located in directories whose paths begin with one + * of these prefixes will be considered. + */ +fun isSystemServicePath(context: JavaContext): Boolean { + val systemServicePathPrefixes = setOf( + "frameworks/base/services", + "frameworks/base/apex", + "frameworks/opt/wear", + "packages/modules" + ) + + val filePath = context.file.path + + // We perform `filePath.contains` instead of `filePath.startsWith` since getting the + // relative path of a source file is non-trivial. That is because `context.file.path` + // returns the path to where soong builds the file (i.e. /out/soong/...). Moreover, the + // logic to extract the relative path would need to consider several /out/soong/... + // locations patterns. + return systemServicePathPrefixes.any { filePath.contains(it) } +} diff --git a/tools/lint/framework/checks/src/main/java/com/google/android/lint/AndroidFrameworkIssueRegistry.kt b/tools/lint/framework/checks/src/main/java/com/google/android/lint/AndroidFrameworkIssueRegistry.kt index 624a1987638e..af753e5963a3 100644 --- a/tools/lint/framework/checks/src/main/java/com/google/android/lint/AndroidFrameworkIssueRegistry.kt +++ b/tools/lint/framework/checks/src/main/java/com/google/android/lint/AndroidFrameworkIssueRegistry.kt @@ -20,7 +20,6 @@ import com.android.tools.lint.client.api.IssueRegistry import com.android.tools.lint.client.api.Vendor import com.android.tools.lint.detector.api.CURRENT_API import com.google.android.lint.parcel.SaferParcelChecker -import com.google.android.lint.aidl.PermissionAnnotationDetector import com.google.auto.service.AutoService @AutoService(IssueRegistry::class) @@ -38,9 +37,9 @@ class AndroidFrameworkIssueRegistry : IssueRegistry() { SaferParcelChecker.ISSUE_UNSAFE_API_USAGE, // TODO: Currently crashes due to OOM issue // PackageVisibilityDetector.ISSUE_PACKAGE_NAME_NO_PACKAGE_VISIBILITY_FILTERS, - PermissionAnnotationDetector.ISSUE_MISSING_PERMISSION_ANNOTATION, PermissionMethodDetector.ISSUE_PERMISSION_METHOD_USAGE, PermissionMethodDetector.ISSUE_CAN_BE_PERMISSION_METHOD, + FeatureAutomotiveDetector.ISSUE, ) override val api: Int diff --git a/tools/lint/framework/checks/src/main/java/com/google/android/lint/FeatureAutomotiveDetector.kt b/tools/lint/framework/checks/src/main/java/com/google/android/lint/FeatureAutomotiveDetector.kt new file mode 100644 index 000000000000..972b0c98eb94 --- /dev/null +++ b/tools/lint/framework/checks/src/main/java/com/google/android/lint/FeatureAutomotiveDetector.kt @@ -0,0 +1,90 @@ +/* + * Copyright (C) 2024 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.google.android.lint + +import com.android.tools.lint.detector.api.Category +import com.android.tools.lint.detector.api.ConstantEvaluator +import com.android.tools.lint.detector.api.Detector +import com.android.tools.lint.detector.api.Implementation +import com.android.tools.lint.detector.api.Issue +import com.android.tools.lint.detector.api.JavaContext +import com.android.tools.lint.detector.api.Scope +import com.android.tools.lint.detector.api.Severity +import com.android.tools.lint.detector.api.SourceCodeScanner +import com.intellij.psi.PsiMethod +import java.util.EnumSet +import org.jetbrains.uast.UCallExpression +import org.jetbrains.uast.ULiteralExpression +import org.jetbrains.uast.UReferenceExpression + +/** + * A detector to check the usage of PackageManager.hasSystemFeature(" + * android.hardware.type.automotive") in CTS tests. + */ +class FeatureAutomotiveDetector : Detector(), SourceCodeScanner { + + companion object { + + val EXPLANATION = + """ + This class uses PackageManager.hasSystemFeature(\"android.hardware.type.automotive\") \ + or other equivalent methods. \ + If it is used to make a CTS test behave differently on AAOS, you should use \ + @RequireAutomotive or @RequireNotAutomotive instead; otherwise, please ignore this \ + warning. See https://g3doc.corp.google.com/wireless/android/partner/compatibility/\ + g3doc/dev/write-a-test/index.md#write-a-test-that-behaves-differently-on-aaos + """ + + val ISSUE: Issue = + Issue.create( + id = "UsingFeatureAutomotiveInCTS", + briefDescription = + "PackageManager.hasSystemFeature(\"" + + " android.hardware.type.automotive\") is used in CTS tests", + explanation = EXPLANATION, + category = Category.TESTING, + priority = 8, + severity = Severity.WARNING, + implementation = + Implementation( + FeatureAutomotiveDetector::class.java, + EnumSet.of(Scope.JAVA_FILE, Scope.TEST_SOURCES) + ) + ) + } + + override fun getApplicableMethodNames() = + listOf("hasSystemFeature", "hasFeature", "hasDeviceFeature", "bypassTestForFeatures") + + override fun visitMethodCall(context: JavaContext, node: UCallExpression, method: PsiMethod) { + node.valueArguments.forEach { + val value = + when (it) { + is ULiteralExpression -> it.value + is UReferenceExpression -> ConstantEvaluator.evaluate(context, it) + else -> null + } + if (value is String && value == "android.hardware.type.automotive") { + context.report( + issue = ISSUE, + location = context.getNameLocation(method), + message = EXPLANATION + ) + } + } + } +} diff --git a/tools/lint/framework/checks/src/test/java/com/google/android/lint/FeatureAutomotiveDetectorTest.kt b/tools/lint/framework/checks/src/test/java/com/google/android/lint/FeatureAutomotiveDetectorTest.kt new file mode 100644 index 000000000000..b5e2c00965f5 --- /dev/null +++ b/tools/lint/framework/checks/src/test/java/com/google/android/lint/FeatureAutomotiveDetectorTest.kt @@ -0,0 +1,366 @@ +/* + * Copyright (C) 2024 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.google.android.lint + +import com.android.tools.lint.checks.infrastructure.LintDetectorTest +import com.android.tools.lint.checks.infrastructure.TestFile +import com.android.tools.lint.checks.infrastructure.TestLintTask +import com.android.tools.lint.detector.api.Detector +import com.android.tools.lint.detector.api.Issue +import org.junit.Test + +@Suppress("UnstableApiUsage") +class FeatureAutomotiveDetectorTest : LintDetectorTest() { + val explanation = + FeatureAutomotiveDetector.EXPLANATION.replace("\\", "").replace("\n ", "") + + " [UsingFeatureAutomotiveInCTS]" + + override fun getDetector(): Detector = FeatureAutomotiveDetector() + override fun getIssues(): List<Issue> = listOf(FeatureAutomotiveDetector.ISSUE) + override fun lint(): TestLintTask = super.lint().allowMissingSdk(true) + + @Test + fun testWarning1() { + lint() + .files( + java( + """ + import android.content.pm.PackageManager; + + public class Foo { + + private void fun() { + PackageManager.getInstance().hasSystemFeature( + "android.hardware.type.automotive"); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/android/content/pm/PackageManager.java:13: Warning: $explanation + public boolean hasSystemFeature(String feature) { + ~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning2() { + lint() + .files( + java( + """ + import android.content.pm.PackageManager; + + public class Foo { + + private void fun() { + String featureName = "android.hardware.type.automotive"; + PackageManager.getInstance().hasSystemFeature(featureName); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/android/content/pm/PackageManager.java:13: Warning: $explanation + public boolean hasSystemFeature(String feature) { + ~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning3() { + lint() + .files( + java( + """ + import android.content.pm.PackageManager; + + public class Foo { + + private void fun() { + PackageManager.getInstance().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/android/content/pm/PackageManager.java:13: Warning: $explanation + public boolean hasSystemFeature(String feature) { + ~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning4() { + lint() + .files( + java( + """ + import android.content.pm.PackageManager; + + public class Foo { + + private void fun() { + String featureName = PackageManager.FEATURE_AUTOMOTIVE; + PackageManager.getInstance().hasSystemFeature(featureName); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/android/content/pm/PackageManager.java:13: Warning: $explanation + public boolean hasSystemFeature(String feature) { + ~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning5() { + lint() + .files( + java( + """ + import com.android.example.Utils; + + public class Foo { + + private void fun() { + Utils.hasFeature("android.hardware.type.automotive"); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/com/android/example/Utils.java:7: Warning: $explanation + public static boolean hasFeature(String feature) { + ~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning6() { + lint() + .files( + java( + """ + import com.android.example.Utils; + + public class Foo { + + private void fun() { + Utils.hasDeviceFeature("android.hardware.type.automotive"); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/com/android/example/Utils.java:11: Warning: $explanation + public static boolean hasDeviceFeature(String feature) { + ~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning7() { + lint() + .files( + java( + """ + import com.android.example.Utils; + + public class Foo { + + private void fun() { + Utils.hasFeature(new Object(), "android.hardware.type.automotive"); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/com/android/example/Utils.java:15: Warning: $explanation + public static boolean hasFeature(Object object, String feature) { + ~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testWarning8() { + lint() + .files( + java( + """ + import com.android.example.Utils; + + public class Foo { + + private void fun() { + Utils.bypassTestForFeatures("android.hardware.type.automotive"); + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expect( + """ + src/com/android/example/Utils.java:19: Warning: $explanation + public static boolean bypassTestForFeatures(String feature) { + ~~~~~~~~~~~~~~~~~~~~~ + 0 errors, 1 warnings + """ + ) + } + + @Test + fun testNoWarning() { + lint() + .files( + java( + """ + import android.content.pm.PackageManager; + + public class Foo { + private void fun() { + String featureName1 = "android.hardware.type.automotive"; + String featureName2 = PackageManager.FEATURE_AUTOMOTIVE; + String notFeatureName = "FEATURE_AUTOMOTIVE"; + PackageManager.getInstance().hasSystemFeature(notFeatureName); + /* + PackageManager.getInstance().hasSystemFeature( + "android.hardware.type.automotive"); + */ + } + } + """ + ) + .indented(), + *stubs + ) + .issues(FeatureAutomotiveDetector.ISSUE) + .run() + .expectClean() + } + + private val pmStub: TestFile = + java( + """ + package android.content.pm; + + import java.lang.String; + + public class PackageManager { + public static final String FEATURE_AUTOMOTIVE = "android.hardware.type.automotive"; + + public static PackageManager getInstance() { + return new PackageManager(); + } + + public boolean hasSystemFeature(String feature) { + return true; + } + } + """ + ) + + private val exampleStub: TestFile = + java( + """ + package com.android.example; + + import java.lang.String; + + public class Utils { + public static boolean hasFeature(String feature) { + return true; + } + + public static boolean hasDeviceFeature(String feature) { + return true; + } + + public static boolean hasFeature(Object object, String feature) { + return true; + } + + public static boolean bypassTestForFeatures(String feature) { + return true; + } + } + """ + ) + + private val stubs = arrayOf(pmStub, exampleStub) +} diff --git a/tools/lint/framework/checks/src/test/java/com/google/android/lint/PermissionAnnotationDetectorTest.kt b/tools/lint/framework/checks/src/test/java/com/google/android/lint/PermissionAnnotationDetectorTest.kt deleted file mode 100644 index bce848a2e3a7..000000000000 --- a/tools/lint/framework/checks/src/test/java/com/google/android/lint/PermissionAnnotationDetectorTest.kt +++ /dev/null @@ -1,134 +0,0 @@ -/* - * 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.google.android.lint.aidl - -import com.android.tools.lint.checks.infrastructure.LintDetectorTest -import com.android.tools.lint.checks.infrastructure.TestFile -import com.android.tools.lint.checks.infrastructure.TestLintTask -import com.android.tools.lint.detector.api.Detector -import com.android.tools.lint.detector.api.Issue - -@Suppress("UnstableApiUsage") -class PermissionAnnotationDetectorTest : LintDetectorTest() { - override fun getDetector(): Detector = PermissionAnnotationDetector() - - override fun getIssues(): List<Issue> = listOf( - PermissionAnnotationDetector.ISSUE_MISSING_PERMISSION_ANNOTATION, - ) - - override fun lint(): TestLintTask = super.lint().allowMissingSdk(true) - - /** No issue scenario */ - - fun testDoesNotDetectIssuesInCorrectScenario() { - lint().files( - java( - """ - public class Foo extends IFoo.Stub { - @Override - @android.annotation.EnforcePermission("android.Manifest.permission.READ_CONTACTS") - public void testMethod() { } - } - """ - ).indented(), - *stubs - ) - .run() - .expectClean() - } - - fun testMissingAnnotation() { - lint().files( - java( - """ - public class Bar extends IBar.Stub { - public void testMethod() { } - } - """ - ).indented(), - *stubs - ) - .run() - .expect( - """ - src/Bar.java:2: Error: The method testMethod is not permission-annotated. [MissingPermissionAnnotation] - public void testMethod() { } - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 1 errors, 0 warnings - """ - ) - } - - fun testNoIssueWhenExtendingWithAnotherSubclass() { - lint().files( - java( - """ - public class Foo extends IFoo.Stub { - @Override - @android.annotation.EnforcePermission(android.Manifest.permission.READ_PHONE_STATE) - public void testMethod() { } - // not an AIDL method, just another method - public void someRandomMethod() { } - } - """).indented(), - java( - """ - public class Baz extends Bar { - @Override - public void someRandomMethod() { } - } - """).indented(), - *stubs - ) - .run() - .expectClean() - } - - /* Stubs */ - - // A service with permission annotation on the method. - private val interfaceIFoo: TestFile = java( - """ - public interface IFoo extends android.os.IInterface { - public static abstract class Stub extends android.os.Binder implements IFoo { - } - @Override - @android.annotation.EnforcePermission(android.Manifest.permission.READ_PHONE_STATE) - public void testMethod(); - @Override - @android.annotation.RequiresNoPermission - public void testMethodNoPermission(); - @Override - @android.annotation.PermissionManuallyEnforced - public void testMethodManual(); - } - """ - ).indented() - - // A service with no permission annotation. - private val interfaceIBar: TestFile = java( - """ - public interface IBar extends android.os.IInterface { - public static abstract class Stub extends android.os.Binder implements IBar { - } - public void testMethod(); - } - """ - ).indented() - - private val stubs = arrayOf(interfaceIFoo, interfaceIBar) -} diff --git a/tools/lint/global/checks/src/main/java/com/google/android/lint/AndroidGlobalIssueRegistry.kt b/tools/lint/global/checks/src/main/java/com/google/android/lint/AndroidGlobalIssueRegistry.kt index 28eab8f62e74..94674348df08 100644 --- a/tools/lint/global/checks/src/main/java/com/google/android/lint/AndroidGlobalIssueRegistry.kt +++ b/tools/lint/global/checks/src/main/java/com/google/android/lint/AndroidGlobalIssueRegistry.kt @@ -20,7 +20,9 @@ import com.android.tools.lint.client.api.IssueRegistry import com.android.tools.lint.client.api.Vendor import com.android.tools.lint.detector.api.CURRENT_API import com.google.android.lint.aidl.EnforcePermissionDetector +import com.google.android.lint.aidl.PermissionAnnotationDetector import com.google.android.lint.aidl.SimpleManualPermissionEnforcementDetector +import com.google.android.lint.aidl.SimpleRequiresNoPermissionDetector import com.google.auto.service.AutoService @AutoService(IssueRegistry::class) @@ -31,7 +33,9 @@ class AndroidGlobalIssueRegistry : IssueRegistry() { EnforcePermissionDetector.ISSUE_MISMATCHING_ENFORCE_PERMISSION, EnforcePermissionDetector.ISSUE_ENFORCE_PERMISSION_HELPER, EnforcePermissionDetector.ISSUE_MISUSING_ENFORCE_PERMISSION, + PermissionAnnotationDetector.ISSUE_MISSING_PERMISSION_ANNOTATION, SimpleManualPermissionEnforcementDetector.ISSUE_SIMPLE_MANUAL_PERMISSION_ENFORCEMENT, + SimpleRequiresNoPermissionDetector.ISSUE_SIMPLE_REQUIRES_NO_PERMISSION, ) override val api: Int diff --git a/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfaces.kt b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfaces.kt new file mode 100644 index 000000000000..e163ef470355 --- /dev/null +++ b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfaces.kt @@ -0,0 +1,767 @@ +/* + * Copyright (C) 2024 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.google.android.lint.aidl + +/** + * The exemptAidlInterfaces set was generated by running ExemptAidlInterfacesGenerator on the + * entire source tree. To reproduce the results, run generate-exempt-aidl-interfaces.sh + * located in tools/lint/utils. + */ +val exemptAidlInterfaces = setOf( + "android.accessibilityservice.IBrailleDisplayConnection", + "android.accounts.IAccountAuthenticatorResponse", + "android.accounts.IAccountManager", + "android.accounts.IAccountManagerResponse", + "android.adservices.adid.IAdIdProviderService", + "android.adservices.adid.IAdIdService", + "android.adservices.adid.IGetAdIdCallback", + "android.adservices.adid.IGetAdIdProviderCallback", + "android.adservices.adselection.AdSelectionCallback", + "android.adservices.adselection.AdSelectionOverrideCallback", + "android.adservices.adselection.AdSelectionService", + "android.adservices.adselection.GetAdSelectionDataCallback", + "android.adservices.adselection.PersistAdSelectionResultCallback", + "android.adservices.adselection.ReportImpressionCallback", + "android.adservices.adselection.ReportInteractionCallback", + "android.adservices.adselection.SetAppInstallAdvertisersCallback", + "android.adservices.adselection.UpdateAdCounterHistogramCallback", + "android.adservices.appsetid.IAppSetIdProviderService", + "android.adservices.appsetid.IAppSetIdService", + "android.adservices.appsetid.IGetAppSetIdCallback", + "android.adservices.appsetid.IGetAppSetIdProviderCallback", + "android.adservices.cobalt.IAdServicesCobaltUploadService", + "android.adservices.common.IAdServicesCommonCallback", + "android.adservices.common.IAdServicesCommonService", + "android.adservices.common.IAdServicesCommonStatesCallback", + "android.adservices.common.IEnableAdServicesCallback", + "android.adservices.common.IUpdateAdIdCallback", + "android.adservices.customaudience.CustomAudienceOverrideCallback", + "android.adservices.customaudience.FetchAndJoinCustomAudienceCallback", + "android.adservices.customaudience.ICustomAudienceCallback", + "android.adservices.customaudience.ICustomAudienceService", + "android.adservices.customaudience.ScheduleCustomAudienceUpdateCallback", + "android.adservices.extdata.IAdServicesExtDataStorageService", + "android.adservices.extdata.IGetAdServicesExtDataCallback", + "android.adservices.measurement.IMeasurementApiStatusCallback", + "android.adservices.measurement.IMeasurementCallback", + "android.adservices.measurement.IMeasurementService", + "android.adservices.ondevicepersonalization.aidl.IDataAccessService", + "android.adservices.ondevicepersonalization.aidl.IDataAccessServiceCallback", + "android.adservices.ondevicepersonalization.aidl.IExecuteCallback", + "android.adservices.ondevicepersonalization.aidl.IFederatedComputeCallback", + "android.adservices.ondevicepersonalization.aidl.IFederatedComputeService", + "android.adservices.ondevicepersonalization.aidl.IIsolatedModelService", + "android.adservices.ondevicepersonalization.aidl.IIsolatedModelServiceCallback", + "android.adservices.ondevicepersonalization.aidl.IIsolatedService", + "android.adservices.ondevicepersonalization.aidl.IIsolatedServiceCallback", + "android.adservices.ondevicepersonalization.aidl.IOnDevicePersonalizationConfigService", + "android.adservices.ondevicepersonalization.aidl.IOnDevicePersonalizationConfigServiceCallback", + "android.adservices.ondevicepersonalization.aidl.IOnDevicePersonalizationDebugService", + "android.adservices.ondevicepersonalization.aidl.IOnDevicePersonalizationManagingService", + "android.adservices.ondevicepersonalization.aidl.IRegisterMeasurementEventCallback", + "android.adservices.ondevicepersonalization.aidl.IRequestSurfacePackageCallback", + "android.adservices.shell.IShellCommand", + "android.adservices.shell.IShellCommandCallback", + "android.adservices.signals.IProtectedSignalsService", + "android.adservices.signals.UpdateSignalsCallback", + "android.adservices.topics.IGetTopicsCallback", + "android.adservices.topics.ITopicsService", + "android.app.admin.IDevicePolicyManager", + "android.app.adservices.IAdServicesManager", + "android.app.ambientcontext.IAmbientContextManager", + "android.app.ambientcontext.IAmbientContextObserver", + "android.app.appsearch.aidl.IAppFunctionService", + "android.app.appsearch.aidl.IAppSearchBatchResultCallback", + "android.app.appsearch.aidl.IAppSearchManager", + "android.app.appsearch.aidl.IAppSearchObserverProxy", + "android.app.appsearch.aidl.IAppSearchResultCallback", + "android.app.backup.IBackupCallback", + "android.app.backup.IBackupManager", + "android.app.backup.IRestoreSession", + "android.app.blob.IBlobCommitCallback", + "android.app.blob.IBlobStoreManager", + "android.app.blob.IBlobStoreSession", + "android.app.contentsuggestions.IContentSuggestionsManager", + "android.app.contextualsearch.IContextualSearchManager", + "android.app.ecm.IEnhancedConfirmationManager", + "android.apphibernation.IAppHibernationService", + "android.app.IActivityClientController", + "android.app.IActivityController", + "android.app.IActivityTaskManager", + "android.app.IAlarmCompleteListener", + "android.app.IAlarmListener", + "android.app.IAlarmManager", + "android.app.IApplicationThread", + "android.app.IAppTask", + "android.app.IAppTraceRetriever", + "android.app.IAssistDataReceiver", + "android.app.IForegroundServiceObserver", + "android.app.IGameManagerService", + "android.app.IGrammaticalInflectionManager", + "android.app.ILocaleManager", + "android.app.INotificationManager", + "android.app.IParcelFileDescriptorRetriever", + "android.app.IProcessObserver", + "android.app.ISearchManager", + "android.app.IStopUserCallback", + "android.app.ITaskStackListener", + "android.app.IUiModeManager", + "android.app.IUriGrantsManager", + "android.app.IUserSwitchObserver", + "android.app.IWallpaperManager", + "android.app.job.IJobCallback", + "android.app.job.IJobScheduler", + "android.app.job.IJobService", + "android.app.ondeviceintelligence.IDownloadCallback", + "android.app.ondeviceintelligence.IFeatureCallback", + "android.app.ondeviceintelligence.IFeatureDetailsCallback", + "android.app.ondeviceintelligence.IListFeaturesCallback", + "android.app.ondeviceintelligence.IOnDeviceIntelligenceManager", + "android.app.ondeviceintelligence.IProcessingSignal", + "android.app.ondeviceintelligence.IResponseCallback", + "android.app.ondeviceintelligence.IStreamingResponseCallback", + "android.app.ondeviceintelligence.ITokenInfoCallback", + "android.app.people.IPeopleManager", + "android.app.pinner.IPinnerService", + "android.app.prediction.IPredictionManager", + "android.app.role.IOnRoleHoldersChangedListener", + "android.app.role.IRoleController", + "android.app.role.IRoleManager", + "android.app.sdksandbox.ILoadSdkCallback", + "android.app.sdksandbox.IRequestSurfacePackageCallback", + "android.app.sdksandbox.ISdkSandboxManager", + "android.app.sdksandbox.ISdkSandboxProcessDeathCallback", + "android.app.sdksandbox.ISdkToServiceCallback", + "android.app.sdksandbox.ISharedPreferencesSyncCallback", + "android.app.sdksandbox.IUnloadSdkCallback", + "android.app.sdksandbox.testutils.testscenario.ISdkSandboxTestExecutor", + "android.app.search.ISearchUiManager", + "android.app.slice.ISliceManager", + "android.app.smartspace.ISmartspaceManager", + "android.app.timedetector.ITimeDetectorService", + "android.app.timezonedetector.ITimeZoneDetectorService", + "android.app.trust.ITrustManager", + "android.app.usage.IStorageStatsManager", + "android.app.usage.IUsageStatsManager", + "android.app.wallpapereffectsgeneration.IWallpaperEffectsGenerationManager", + "android.app.wearable.IWearableSensingCallback", + "android.app.wearable.IWearableSensingManager", + "android.bluetooth.IBluetooth", + "android.bluetooth.IBluetoothA2dp", + "android.bluetooth.IBluetoothA2dpSink", + "android.bluetooth.IBluetoothActivityEnergyInfoListener", + "android.bluetooth.IBluetoothAvrcpController", + "android.bluetooth.IBluetoothCallback", + "android.bluetooth.IBluetoothConnectionCallback", + "android.bluetooth.IBluetoothCsipSetCoordinator", + "android.bluetooth.IBluetoothCsipSetCoordinatorLockCallback", + "android.bluetooth.IBluetoothGatt", + "android.bluetooth.IBluetoothGattCallback", + "android.bluetooth.IBluetoothGattServerCallback", + "android.bluetooth.IBluetoothHapClient", + "android.bluetooth.IBluetoothHapClientCallback", + "android.bluetooth.IBluetoothHeadset", + "android.bluetooth.IBluetoothHeadsetClient", + "android.bluetooth.IBluetoothHearingAid", + "android.bluetooth.IBluetoothHidDevice", + "android.bluetooth.IBluetoothHidDeviceCallback", + "android.bluetooth.IBluetoothHidHost", + "android.bluetooth.IBluetoothLeAudio", + "android.bluetooth.IBluetoothLeAudioCallback", + "android.bluetooth.IBluetoothLeBroadcastAssistant", + "android.bluetooth.IBluetoothLeBroadcastAssistantCallback", + "android.bluetooth.IBluetoothLeBroadcastCallback", + "android.bluetooth.IBluetoothLeCallControl", + "android.bluetooth.IBluetoothLeCallControlCallback", + "android.bluetooth.IBluetoothManager", + "android.bluetooth.IBluetoothManagerCallback", + "android.bluetooth.IBluetoothMap", + "android.bluetooth.IBluetoothMapClient", + "android.bluetooth.IBluetoothMcpServiceManager", + "android.bluetooth.IBluetoothMetadataListener", + "android.bluetooth.IBluetoothOobDataCallback", + "android.bluetooth.IBluetoothPan", + "android.bluetooth.IBluetoothPanCallback", + "android.bluetooth.IBluetoothPbap", + "android.bluetooth.IBluetoothPbapClient", + "android.bluetooth.IBluetoothPreferredAudioProfilesCallback", + "android.bluetooth.IBluetoothQualityReportReadyCallback", + "android.bluetooth.IBluetoothSap", + "android.bluetooth.IBluetoothScan", + "android.bluetooth.IBluetoothSocketManager", + "android.bluetooth.IBluetoothVolumeControl", + "android.bluetooth.IBluetoothVolumeControlCallback", + "android.bluetooth.le.IAdvertisingSetCallback", + "android.bluetooth.le.IDistanceMeasurementCallback", + "android.bluetooth.le.IPeriodicAdvertisingCallback", + "android.bluetooth.le.IScannerCallback", + "android.companion.ICompanionDeviceManager", + "android.companion.IOnMessageReceivedListener", + "android.companion.IOnTransportsChangedListener", + "android.companion.virtualcamera.IVirtualCameraCallback", + "android.companion.virtual.IVirtualDevice", + "android.companion.virtual.IVirtualDeviceManager", + "android.companion.virtualnative.IVirtualDeviceManagerNative", + "android.content.IClipboard", + "android.content.IContentService", + "android.content.IIntentReceiver", + "android.content.IIntentSender", + "android.content.integrity.IAppIntegrityManager", + "android.content.IRestrictionsManager", + "android.content.ISyncAdapterUnsyncableAccountCallback", + "android.content.ISyncContext", + "android.content.om.IOverlayManager", + "android.content.pm.dex.IArtManager", + "android.content.pm.dex.ISnapshotRuntimeProfileCallback", + "android.content.pm.IBackgroundInstallControlService", + "android.content.pm.ICrossProfileApps", + "android.content.pm.IDataLoaderManager", + "android.content.pm.IDataLoaderStatusListener", + "android.content.pm.ILauncherApps", + "android.content.pm.IOnChecksumsReadyListener", + "android.content.pm.IOtaDexopt", + "android.content.pm.IPackageDataObserver", + "android.content.pm.IPackageDeleteObserver", + "android.content.pm.IPackageInstaller", + "android.content.pm.IPackageInstallerSession", + "android.content.pm.IPackageInstallerSessionFileSystemConnector", + "android.content.pm.IPackageInstallObserver2", + "android.content.pm.IPackageLoadingProgressCallback", + "android.content.pm.IPackageManager", + "android.content.pm.IPackageManagerNative", + "android.content.pm.IPackageMoveObserver", + "android.content.pm.IPinItemRequest", + "android.content.pm.IShortcutService", + "android.content.pm.IStagedApexObserver", + "android.content.pm.verify.domain.IDomainVerificationManager", + "android.content.res.IResourcesManager", + "android.content.rollback.IRollbackManager", + "android.credentials.ICredentialManager", + "android.debug.IAdbTransport", + "android.devicelock.IDeviceLockService", + "android.devicelock.IGetDeviceIdCallback", + "android.devicelock.IGetKioskAppsCallback", + "android.devicelock.IIsDeviceLockedCallback", + "android.devicelock.ILockUnlockDeviceCallback", + "android.federatedcompute.aidl.IExampleStoreCallback", + "android.federatedcompute.aidl.IExampleStoreIterator", + "android.federatedcompute.aidl.IExampleStoreIteratorCallback", + "android.federatedcompute.aidl.IExampleStoreService", + "android.federatedcompute.aidl.IFederatedComputeCallback", + "android.federatedcompute.aidl.IFederatedComputeService", + "android.federatedcompute.aidl.IResultHandlingService", + "android.flags.IFeatureFlags", + "android.frameworks.location.altitude.IAltitudeService", + "android.frameworks.vibrator.IVibratorController", + "android.frameworks.vibrator.IVibratorControlService", + "android.gsi.IGsiServiceCallback", + "android.hardware.biometrics.AuthenticationStateListener", + "android.hardware.biometrics.common.ICancellationSignal", + "android.hardware.biometrics.face.IFace", + "android.hardware.biometrics.face.ISession", + "android.hardware.biometrics.face.ISessionCallback", + "android.hardware.biometrics.fingerprint.IFingerprint", + "android.hardware.biometrics.fingerprint.ISession", + "android.hardware.biometrics.fingerprint.ISessionCallback", + "android.hardware.biometrics.IAuthService", + "android.hardware.biometrics.IBiometricAuthenticator", + "android.hardware.biometrics.IBiometricContextListener", + "android.hardware.biometrics.IBiometricSensorReceiver", + "android.hardware.biometrics.IBiometricService", + "android.hardware.biometrics.IBiometricStateListener", + "android.hardware.biometrics.IBiometricSysuiReceiver", + "android.hardware.biometrics.IInvalidationCallback", + "android.hardware.biometrics.ITestSession", + "android.hardware.broadcastradio.IAnnouncementListener", + "android.hardware.broadcastradio.ITunerCallback", + "android.hardware.contexthub.IContextHubCallback", + "android.hardware.devicestate.IDeviceStateManager", + "android.hardware.display.IColorDisplayManager", + "android.hardware.display.IDisplayManager", + "android.hardware.face.IFaceAuthenticatorsRegisteredCallback", + "android.hardware.face.IFaceService", + "android.hardware.face.IFaceServiceReceiver", + "android.hardware.fingerprint.IFingerprintAuthenticatorsRegisteredCallback", + "android.hardware.fingerprint.IFingerprintClientActiveCallback", + "android.hardware.fingerprint.IFingerprintService", + "android.hardware.fingerprint.IFingerprintServiceReceiver", + "android.hardware.fingerprint.IUdfpsOverlayControllerCallback", + "android.hardware.fingerprint.IUdfpsRefreshRateRequestCallback", + "android.hardware.hdmi.IHdmiControlCallback", + "android.hardware.hdmi.IHdmiControlService", + "android.hardware.hdmi.IHdmiDeviceEventListener", + "android.hardware.hdmi.IHdmiHotplugEventListener", + "android.hardware.hdmi.IHdmiSystemAudioModeChangeListener", + "android.hardware.health.IHealthInfoCallback", + "android.hardware.ICameraServiceProxy", + "android.hardware.IConsumerIrService", + "android.hardware.input.IInputManager", + "android.hardware.iris.IIrisService", + "android.hardware.ISensorPrivacyManager", + "android.hardware.ISerialManager", + "android.hardware.lights.ILightsManager", + "android.hardware.location.IContextHubClient", + "android.hardware.location.IContextHubClientCallback", + "android.hardware.location.IContextHubService", + "android.hardware.location.IContextHubTransactionCallback", + "android.hardware.location.ISignificantPlaceProviderManager", + "android.hardware.radio.IAnnouncementListener", + "android.hardware.radio.ICloseHandle", + "android.hardware.radio.ims.media.IImsMedia", + "android.hardware.radio.ims.media.IImsMediaListener", + "android.hardware.radio.ims.media.IImsMediaSession", + "android.hardware.radio.ims.media.IImsMediaSessionListener", + "android.hardware.radio.IRadioService", + "android.hardware.radio.ITuner", + "android.hardware.radio.sap.ISapCallback", + "android.hardware.soundtrigger3.ISoundTriggerHw", + "android.hardware.soundtrigger3.ISoundTriggerHwCallback", + "android.hardware.soundtrigger3.ISoundTriggerHwGlobalCallback", + "android.hardware.soundtrigger.IRecognitionStatusCallback", + "android.hardware.tetheroffload.ITetheringOffloadCallback", + "android.hardware.thermal.IThermalChangedCallback", + "android.hardware.tv.hdmi.cec.IHdmiCecCallback", + "android.hardware.tv.hdmi.connection.IHdmiConnectionCallback", + "android.hardware.tv.hdmi.earc.IEArcCallback", + "android.hardware.usb.gadget.IUsbGadgetCallback", + "android.hardware.usb.IUsbCallback", + "android.hardware.usb.IUsbManager", + "android.hardware.usb.IUsbSerialReader", + "android.hardware.wifi.hostapd.IHostapdCallback", + "android.hardware.wifi.IWifiChipEventCallback", + "android.hardware.wifi.IWifiEventCallback", + "android.hardware.wifi.IWifiNanIfaceEventCallback", + "android.hardware.wifi.IWifiRttControllerEventCallback", + "android.hardware.wifi.IWifiStaIfaceEventCallback", + "android.hardware.wifi.supplicant.INonStandardCertCallback", + "android.hardware.wifi.supplicant.ISupplicantP2pIfaceCallback", + "android.hardware.wifi.supplicant.ISupplicantStaIfaceCallback", + "android.hardware.wifi.supplicant.ISupplicantStaNetworkCallback", + "android.health.connect.aidl.IAccessLogsResponseCallback", + "android.health.connect.aidl.IActivityDatesResponseCallback", + "android.health.connect.aidl.IAggregateRecordsResponseCallback", + "android.health.connect.aidl.IApplicationInfoResponseCallback", + "android.health.connect.aidl.IChangeLogsResponseCallback", + "android.health.connect.aidl.IDataStagingFinishedCallback", + "android.health.connect.aidl.IEmptyResponseCallback", + "android.health.connect.aidl.IGetChangeLogTokenCallback", + "android.health.connect.aidl.IGetHealthConnectDataStateCallback", + "android.health.connect.aidl.IGetHealthConnectMigrationUiStateCallback", + "android.health.connect.aidl.IGetPriorityResponseCallback", + "android.health.connect.aidl.IHealthConnectService", + "android.health.connect.aidl.IInsertRecordsResponseCallback", + "android.health.connect.aidl.IMigrationCallback", + "android.health.connect.aidl.IReadMedicalResourcesResponseCallback", + "android.health.connect.aidl.IReadRecordsResponseCallback", + "android.health.connect.aidl.IRecordTypeInfoResponseCallback", + "android.health.connect.exportimport.IImportStatusCallback", + "android.health.connect.exportimport.IQueryDocumentProvidersCallback", + "android.health.connect.exportimport.IScheduledExportStatusCallback", + "android.location.ICountryDetector", + "android.location.IGpsGeofenceHardware", + "android.location.ILocationManager", + "android.location.provider.ILocationProviderManager", + "android.media.IAudioRoutesObserver", + "android.media.IMediaCommunicationService", + "android.media.IMediaCommunicationServiceCallback", + "android.media.IMediaController2", + "android.media.IMediaRoute2ProviderServiceCallback", + "android.media.IMediaRouterService", + "android.media.IMediaSession2", + "android.media.IMediaSession2Service", + "android.media.INativeSpatializerCallback", + "android.media.IPlaybackConfigDispatcher", + "android.media.IRecordingConfigDispatcher", + "android.media.IRemoteDisplayCallback", + "android.media.ISoundDoseCallback", + "android.media.ISpatializerHeadTrackingCallback", + "android.media.ITranscodingClientCallback", + "android.media.metrics.IMediaMetricsManager", + "android.media.midi.IMidiManager", + "android.media.musicrecognition.IMusicRecognitionAttributionTagCallback", + "android.media.musicrecognition.IMusicRecognitionManager", + "android.media.musicrecognition.IMusicRecognitionServiceCallback", + "android.media.projection.IMediaProjection", + "android.media.projection.IMediaProjectionCallback", + "android.media.projection.IMediaProjectionManager", + "android.media.projection.IMediaProjectionWatcherCallback", + "android.media.session.ISession", + "android.media.session.ISessionController", + "android.media.session.ISessionManager", + "android.media.soundtrigger.ISoundTriggerDetectionServiceClient", + "android.media.soundtrigger_middleware.IInjectGlobalEvent", + "android.media.soundtrigger_middleware.IInjectModelEvent", + "android.media.soundtrigger_middleware.IInjectRecognitionEvent", + "android.media.soundtrigger_middleware.ISoundTriggerMiddlewareService", + "android.media.soundtrigger_middleware.ISoundTriggerModule", + "android.media.tv.ad.ITvAdManager", + "android.media.tv.ad.ITvAdSessionCallback", + "android.media.tv.interactive.ITvInteractiveAppManager", + "android.media.tv.interactive.ITvInteractiveAppServiceCallback", + "android.media.tv.interactive.ITvInteractiveAppSessionCallback", + "android.media.tv.ITvInputHardware", + "android.media.tv.ITvInputManager", + "android.media.tv.ITvInputServiceCallback", + "android.media.tv.ITvInputSessionCallback", + "android.media.tv.ITvRemoteServiceInput", + "android.nearby.aidl.IOffloadCallback", + "android.nearby.IBroadcastListener", + "android.nearby.INearbyManager", + "android.nearby.IScanListener", + "android.net.connectivity.aidl.ConnectivityNative", + "android.net.dhcp.IDhcpEventCallbacks", + "android.net.dhcp.IDhcpServer", + "android.net.dhcp.IDhcpServerCallbacks", + "android.net.ICaptivePortal", + "android.net.IConnectivityDiagnosticsCallback", + "android.net.IConnectivityManager", + "android.net.IEthernetManager", + "android.net.IEthernetServiceListener", + "android.net.IIntResultListener", + "android.net.IIpConnectivityMetrics", + "android.net.IIpMemoryStore", + "android.net.IIpMemoryStoreCallbacks", + "android.net.IIpSecService", + "android.net.INetdEventCallback", + "android.net.INetdUnsolicitedEventListener", + "android.net.INetworkActivityListener", + "android.net.INetworkAgent", + "android.net.INetworkAgentRegistry", + "android.net.INetworkInterfaceOutcomeReceiver", + "android.net.INetworkManagementEventObserver", + "android.net.INetworkMonitor", + "android.net.INetworkMonitorCallbacks", + "android.net.INetworkOfferCallback", + "android.net.INetworkPolicyListener", + "android.net.INetworkPolicyManager", + "android.net.INetworkScoreService", + "android.net.INetworkStackConnector", + "android.net.INetworkStackStatusCallback", + "android.net.INetworkStatsService", + "android.net.INetworkStatsSession", + "android.net.IOnCompleteListener", + "android.net.IPacProxyManager", + "android.net.ip.IIpClient", + "android.net.ip.IIpClientCallbacks", + "android.net.ipmemorystore.IOnBlobRetrievedListener", + "android.net.ipmemorystore.IOnL2KeyResponseListener", + "android.net.ipmemorystore.IOnNetworkAttributesRetrievedListener", + "android.net.ipmemorystore.IOnNetworkEventCountRetrievedListener", + "android.net.ipmemorystore.IOnSameL3NetworkResponseListener", + "android.net.ipmemorystore.IOnStatusAndCountListener", + "android.net.ipmemorystore.IOnStatusListener", + "android.net.IQosCallback", + "android.net.ISocketKeepaliveCallback", + "android.net.ITestNetworkManager", + "android.net.ITetheredInterfaceCallback", + "android.net.ITetheringConnector", + "android.net.ITetheringEventCallback", + "android.net.IVpnManager", + "android.net.mdns.aidl.IMDnsEventListener", + "android.net.metrics.INetdEventListener", + "android.net.netstats.IUsageCallback", + "android.net.netstats.provider.INetworkStatsProvider", + "android.net.netstats.provider.INetworkStatsProviderCallback", + "android.net.nsd.INsdManager", + "android.net.nsd.INsdManagerCallback", + "android.net.nsd.INsdServiceConnector", + "android.net.nsd.IOffloadEngine", + "android.net.resolv.aidl.IDnsResolverUnsolicitedEventListener", + "android.net.thread.IActiveOperationalDatasetReceiver", + "android.net.thread.IConfigurationReceiver", + "android.net.thread.IOperationalDatasetCallback", + "android.net.thread.IOperationReceiver", + "android.net.thread.IOutputReceiver", + "android.net.thread.IStateCallback", + "android.net.thread.IThreadNetworkController", + "android.net.thread.IThreadNetworkManager", + "android.net.vcn.IVcnManagementService", + "android.net.wear.ICompanionDeviceManagerProxy", + "android.net.wifi.aware.IWifiAwareDiscoverySessionCallback", + "android.net.wifi.aware.IWifiAwareEventCallback", + "android.net.wifi.aware.IWifiAwareMacAddressProvider", + "android.net.wifi.aware.IWifiAwareManager", + "android.net.wifi.hotspot2.IProvisioningCallback", + "android.net.wifi.IActionListener", + "android.net.wifi.IBooleanListener", + "android.net.wifi.IByteArrayListener", + "android.net.wifi.ICoexCallback", + "android.net.wifi.IDppCallback", + "android.net.wifi.IIntegerListener", + "android.net.wifi.IInterfaceCreationInfoCallback", + "android.net.wifi.ILastCallerListener", + "android.net.wifi.IListListener", + "android.net.wifi.ILocalOnlyConnectionStatusListener", + "android.net.wifi.ILocalOnlyHotspotCallback", + "android.net.wifi.IMacAddressListListener", + "android.net.wifi.IMapListener", + "android.net.wifi.INetworkRequestMatchCallback", + "android.net.wifi.INetworkRequestUserSelectionCallback", + "android.net.wifi.IOnWifiActivityEnergyInfoListener", + "android.net.wifi.IOnWifiDriverCountryCodeChangedListener", + "android.net.wifi.IOnWifiUsabilityStatsListener", + "android.net.wifi.IPnoScanResultsCallback", + "android.net.wifi.IScanDataListener", + "android.net.wifi.IScanResultsCallback", + "android.net.wifi.IScoreUpdateObserver", + "android.net.wifi.ISoftApCallback", + "android.net.wifi.IStringListener", + "android.net.wifi.ISubsystemRestartCallback", + "android.net.wifi.ISuggestionConnectionStatusListener", + "android.net.wifi.ISuggestionUserApprovalStatusListener", + "android.net.wifi.ITrafficStateCallback", + "android.net.wifi.ITwtCallback", + "android.net.wifi.ITwtCapabilitiesListener", + "android.net.wifi.ITwtStatsListener", + "android.net.wifi.IWifiBandsListener", + "android.net.wifi.IWifiConnectedNetworkScorer", + "android.net.wifi.IWifiLowLatencyLockListener", + "android.net.wifi.IWifiManager", + "android.net.wifi.IWifiNetworkSelectionConfigListener", + "android.net.wifi.IWifiNetworkStateChangedListener", + "android.net.wifi.IWifiScanner", + "android.net.wifi.IWifiScannerListener", + "android.net.wifi.IWifiVerboseLoggingStatusChangedListener", + "android.net.wifi.p2p.IWifiP2pListener", + "android.net.wifi.p2p.IWifiP2pManager", + "android.net.wifi.rtt.IRttCallback", + "android.net.wifi.rtt.IWifiRttManager", + "android.ondevicepersonalization.IOnDevicePersonalizationSystemService", + "android.ondevicepersonalization.IOnDevicePersonalizationSystemServiceCallback", + "android.os.IBatteryPropertiesRegistrar", + "android.os.ICancellationSignal", + "android.os.IDeviceIdentifiersPolicyService", + "android.os.IDeviceIdleController", + "android.os.IDumpstate", + "android.os.IDumpstateListener", + "android.os.IExternalVibratorService", + "android.os.IHardwarePropertiesManager", + "android.os.IHintManager", + "android.os.IHintSession", + "android.os.IIncidentCompanion", + "android.os.image.IDynamicSystemService", + "android.os.incremental.IStorageHealthListener", + "android.os.INetworkManagementService", + "android.os.IPendingIntentRef", + "android.os.IPowerStatsService", + "android.os.IProfilingResultCallback", + "android.os.IProfilingService", + "android.os.IProgressListener", + "android.os.IPullAtomCallback", + "android.os.IRecoverySystem", + "android.os.IRemoteCallback", + "android.os.ISecurityStateManager", + "android.os.IServiceCallback", + "android.os.IStatsCompanionService", + "android.os.IStatsManagerService", + "android.os.IStatsQueryCallback", + "android.os.ISystemConfig", + "android.os.ISystemUpdateManager", + "android.os.IThermalEventListener", + "android.os.IUpdateLock", + "android.os.IUserManager", + "android.os.IUserRestrictionsListener", + "android.os.IVibratorManagerService", + "android.os.IVoldListener", + "android.os.IVoldMountCallback", + "android.os.IVoldTaskListener", + "android.os.logcat.ILogcatManagerService", + "android.permission.ILegacyPermissionManager", + "android.permission.IPermissionChecker", + "android.permission.IPermissionManager", + "android.print.IPrintManager", + "android.print.IPrintSpoolerCallbacks", + "android.print.IPrintSpoolerClient", + "android.printservice.IPrintServiceClient", + "android.printservice.recommendation.IRecommendationServiceCallbacks", + "android.provider.aidl.IDeviceConfigManager", + "android.remoteauth.IDeviceDiscoveryListener", + "android.safetycenter.IOnSafetyCenterDataChangedListener", + "android.safetycenter.ISafetyCenterManager", + "android.scheduling.IRebootReadinessManager", + "android.scheduling.IRequestRebootReadinessStatusListener", + "android.security.attestationverification.IAttestationVerificationManagerService", + "android.security.IFileIntegrityService", + "android.security.keystore.IKeyAttestationApplicationIdProvider", + "android.security.rkp.IRegistration", + "android.security.rkp.IRemoteProvisioning", + "android.service.appprediction.IPredictionService", + "android.service.assist.classification.IFieldClassificationCallback", + "android.service.attention.IAttentionCallback", + "android.service.attention.IProximityUpdateCallback", + "android.service.autofill.augmented.IFillCallback", + "android.service.autofill.IConvertCredentialCallback", + "android.service.autofill.IFillCallback", + "android.service.autofill.IInlineSuggestionUiCallback", + "android.service.autofill.ISaveCallback", + "android.service.autofill.ISurfacePackageResultCallback", + "android.service.contentcapture.IContentCaptureServiceCallback", + "android.service.contentcapture.IContentProtectionAllowlistCallback", + "android.service.contentcapture.IDataShareCallback", + "android.service.credentials.IBeginCreateCredentialCallback", + "android.service.credentials.IBeginGetCredentialCallback", + "android.service.credentials.IClearCredentialStateCallback", + "android.service.dreams.IDreamManager", + "android.service.games.IGameServiceController", + "android.service.games.IGameSessionController", + "android.service.notification.IStatusBarNotificationHolder", + "android.service.oemlock.IOemLockService", + "android.service.ondeviceintelligence.IProcessingUpdateStatusCallback", + "android.service.ondeviceintelligence.IRemoteProcessingService", + "android.service.ondeviceintelligence.IRemoteStorageService", + "android.service.persistentdata.IPersistentDataBlockService", + "android.service.resolver.IResolverRankerResult", + "android.service.rotationresolver.IRotationResolverCallback", + "android.service.textclassifier.ITextClassifierCallback", + "android.service.textclassifier.ITextClassifierService", + "android.service.timezone.ITimeZoneProviderManager", + "android.service.trust.ITrustAgentServiceCallback", + "android.service.voice.IDetectorSessionStorageService", + "android.service.voice.IDetectorSessionVisualQueryDetectionCallback", + "android.service.voice.IDspHotwordDetectionCallback", + "android.service.wallpaper.IWallpaperConnection", + "android.speech.IRecognitionListener", + "android.speech.IRecognitionService", + "android.speech.IRecognitionServiceManager", + "android.speech.tts.ITextToSpeechManager", + "android.speech.tts.ITextToSpeechSession", + "android.system.composd.ICompilationTaskCallback", + "android.system.virtualizationmaintenance.IVirtualizationReconciliationCallback", + "android.system.virtualizationservice.IVirtualMachineCallback", + "android.system.vmtethering.IVmTethering", + "android.telephony.imsmedia.IImsAudioSession", + "android.telephony.imsmedia.IImsAudioSessionCallback", + "android.telephony.imsmedia.IImsMedia", + "android.telephony.imsmedia.IImsMediaCallback", + "android.telephony.imsmedia.IImsTextSession", + "android.telephony.imsmedia.IImsTextSessionCallback", + "android.telephony.imsmedia.IImsVideoSession", + "android.telephony.imsmedia.IImsVideoSessionCallback", + "android.tracing.ITracingServiceProxy", + "android.uwb.IOnUwbActivityEnergyInfoListener", + "android.uwb.IUwbAdapter", + "android.uwb.IUwbAdapterStateCallbacks", + "android.uwb.IUwbAdfProvisionStateCallbacks", + "android.uwb.IUwbOemExtensionCallback", + "android.uwb.IUwbRangingCallbacks", + "android.uwb.IUwbVendorUciCallback", + "android.view.autofill.IAutoFillManager", + "android.view.autofill.IAutofillWindowPresenter", + "android.view.contentcapture.IContentCaptureManager", + "android.view.IDisplayChangeWindowCallback", + "android.view.IDisplayWindowListener", + "android.view.IInputFilter", + "android.view.IInputFilterHost", + "android.view.IInputMonitorHost", + "android.view.IRecentsAnimationController", + "android.view.IRemoteAnimationFinishedCallback", + "android.view.ISensitiveContentProtectionManager", + "android.view.IWindowId", + "android.view.IWindowManager", + "android.view.IWindowSession", + "android.view.translation.ITranslationManager", + "android.view.translation.ITranslationServiceCallback", + "android.webkit.IWebViewUpdateService", + "android.window.IBackAnimationFinishedCallback", + "android.window.IDisplayAreaOrganizerController", + "android.window.ITaskFragmentOrganizerController", + "android.window.ITaskOrganizerController", + "android.window.ITransitionMetricsReporter", + "android.window.IUnhandledDragCallback", + "android.window.IWindowContainerToken", + "android.window.IWindowlessStartingSurfaceCallback", + "android.window.IWindowOrganizerController", + "androidx.core.uwb.backend.IUwb", + "androidx.core.uwb.backend.IUwbClient", + "com.android.clockwork.modes.IModeManager", + "com.android.clockwork.modes.IStateChangeListener", + "com.android.clockwork.power.IWearPowerService", + "com.android.devicelockcontroller.IDeviceLockControllerService", + "com.android.devicelockcontroller.storage.IGlobalParametersService", + "com.android.devicelockcontroller.storage.ISetupParametersService", + "com.android.federatedcompute.services.training.aidl.IIsolatedTrainingService", + "com.android.federatedcompute.services.training.aidl.ITrainingResultCallback", + "com.android.internal.app.IAppOpsActiveCallback", + "com.android.internal.app.ILogAccessDialogCallback", + "com.android.internal.app.ISoundTriggerService", + "com.android.internal.app.ISoundTriggerSession", + "com.android.internal.app.IVoiceInteractionAccessibilitySettingsListener", + "com.android.internal.app.IVoiceInteractionManagerService", + "com.android.internal.app.IVoiceInteractionSessionListener", + "com.android.internal.app.IVoiceInteractionSessionShowCallback", + "com.android.internal.app.IVoiceInteractionSoundTriggerSession", + "com.android.internal.app.procstats.IProcessStats", + "com.android.internal.appwidget.IAppWidgetService", + "com.android.internal.backup.ITransportStatusCallback", + "com.android.internal.compat.IOverrideValidator", + "com.android.internal.compat.IPlatformCompat", + "com.android.internal.compat.IPlatformCompatNative", + "com.android.internal.graphics.fonts.IFontManager", + "com.android.internal.inputmethod.IAccessibilityInputMethodSessionCallback", + "com.android.internal.inputmethod.IConnectionlessHandwritingCallback", + "com.android.internal.inputmethod.IImeTracker", + "com.android.internal.inputmethod.IInlineSuggestionsRequestCallback", + "com.android.internal.inputmethod.IInputContentUriToken", + "com.android.internal.inputmethod.IInputMethodPrivilegedOperations", + "com.android.internal.inputmethod.IInputMethodSessionCallback", + "com.android.internal.net.INetworkWatchlistManager", + "com.android.internal.os.IBinaryTransparencyService", + "com.android.internal.os.IDropBoxManagerService", + "com.android.internal.policy.IKeyguardDismissCallback", + "com.android.internal.policy.IKeyguardDrawnCallback", + "com.android.internal.policy.IKeyguardExitCallback", + "com.android.internal.policy.IKeyguardStateCallback", + "com.android.internal.statusbar.IAddTileResultCallback", + "com.android.internal.statusbar.ISessionListener", + "com.android.internal.statusbar.IStatusBarService", + "com.android.internal.telecom.IDeviceIdleControllerAdapter", + "com.android.internal.telecom.IInternalServiceRetriever", + "com.android.internal.telephony.IMms", + "com.android.internal.telephony.ITelephonyRegistry", + "com.android.internal.textservice.ISpellCheckerServiceCallback", + "com.android.internal.textservice.ITextServicesManager", + "com.android.internal.view.IDragAndDropPermissions", + "com.android.internal.view.IInputMethodManager", + "com.android.internal.view.inline.IInlineContentProvider", + "com.android.internal.widget.ILockSettings", + "com.android.net.IProxyPortListener", + "com.android.net.module.util.IRoutingCoordinator", + "com.android.ondevicepersonalization.libraries.plugin.internal.IPluginCallback", + "com.android.ondevicepersonalization.libraries.plugin.internal.IPluginExecutorService", + "com.android.ondevicepersonalization.libraries.plugin.internal.IPluginStateCallback", + "com.android.rkpdapp.IGetKeyCallback", + "com.android.rkpdapp.IGetRegistrationCallback", + "com.android.rkpdapp.IRegistration", + "com.android.rkpdapp.IRemoteProvisioning", + "com.android.rkpdapp.IStoreUpgradedKeyCallback", + "com.android.sdksandbox.IComputeSdkStorageCallback", + "com.android.sdksandbox.ILoadSdkInSandboxCallback", + "com.android.sdksandbox.IRequestSurfacePackageFromSdkCallback", + "com.android.sdksandbox.ISdkSandboxManagerToSdkSandboxCallback", + "com.android.sdksandbox.ISdkSandboxService", + "com.android.sdksandbox.IUnloadSdkInSandboxCallback", + "com.android.server.profcollect.IProviderStatusCallback", + "com.android.server.thread.openthread.IChannelMasksReceiver", + "com.android.server.thread.openthread.INsdPublisher", + "com.android.server.thread.openthread.IOtDaemonCallback", + "com.android.server.thread.openthread.IOtOutputReceiver", + "com.android.server.thread.openthread.IOtStatusReceiver", + "com.google.android.clockwork.ambient.offload.IDisplayOffloadService", + "com.google.android.clockwork.ambient.offload.IDisplayOffloadTransitionFinishedCallbacks", + "com.google.android.clockwork.healthservices.IHealthService", + "vendor.google_clockwork.healthservices.IHealthServicesCallback", +) diff --git a/tools/lint/framework/checks/src/main/java/com/google/android/lint/PermissionAnnotationDetector.kt b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/PermissionAnnotationDetector.kt index 6b50cfd9e5ab..8d6e32022ae7 100644 --- a/tools/lint/framework/checks/src/main/java/com/google/android/lint/PermissionAnnotationDetector.kt +++ b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/PermissionAnnotationDetector.kt @@ -43,15 +43,24 @@ class PermissionAnnotationDetector : AidlImplementationDetector() { interfaceName: String, body: UBlockExpression ) { + if (!isSystemServicePath(context)) return + if (context.evaluator.isAbstract(node)) return + val fullyQualifiedInterfaceName = + getContainingAidlInterfaceQualified(context, node) ?: return + if (exemptAidlInterfaces.contains(fullyQualifiedInterfaceName)) return + if (AIDL_PERMISSION_ANNOTATIONS.any { node.hasAnnotation(it) }) return context.report( ISSUE_MISSING_PERMISSION_ANNOTATION, node, context.getLocation(node), - "The method ${node.name} is not permission-annotated." + """ + ${node.name} should be annotated with either @EnforcePermission, \ + @RequiresNoPermission or @PermissionManuallyEnforced. + """.trimMargin() ) } @@ -80,8 +89,7 @@ class PermissionAnnotationDetector : AidlImplementationDetector() { implementation = Implementation( PermissionAnnotationDetector::class.java, Scope.JAVA_FILE_SCOPE - ), - enabledByDefault = false + ) ) } } diff --git a/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetector.kt b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetector.kt new file mode 100644 index 000000000000..1a13c0280ec6 --- /dev/null +++ b/tools/lint/global/checks/src/main/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetector.kt @@ -0,0 +1,118 @@ +/* + * Copyright (C) 2024 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.google.android.lint.aidl + +import com.android.tools.lint.detector.api.Category +import com.android.tools.lint.detector.api.Implementation +import com.android.tools.lint.detector.api.Issue +import com.android.tools.lint.detector.api.JavaContext +import com.android.tools.lint.detector.api.Scope +import com.android.tools.lint.detector.api.Severity +import org.jetbrains.uast.UastCallKind +import org.jetbrains.uast.UBlockExpression +import org.jetbrains.uast.UCallExpression +import org.jetbrains.uast.UElement +import org.jetbrains.uast.UMethod +import org.jetbrains.uast.visitor.AbstractUastVisitor + +/** + * Ensures all AIDL implementations hosted by system_server which don't call other methods are + * annotated with @RequiresNoPermission. AIDL Interfaces part of `exemptAidlInterfaces` are skipped + * during this search to ensure the detector targets only new AIDL Interfaces. + */ +class SimpleRequiresNoPermissionDetector : AidlImplementationDetector() { + override fun visitAidlMethod( + context: JavaContext, + node: UMethod, + interfaceName: String, + body: UBlockExpression + ) { + if (!isSystemServicePath(context)) return + if (context.evaluator.isAbstract(node)) return + + val fullyQualifiedInterfaceName = + getContainingAidlInterfaceQualified(context, node) ?: return + if (exemptAidlInterfaces.contains(fullyQualifiedInterfaceName)) return + + if (node.hasAnnotation(ANNOTATION_REQUIRES_NO_PERMISSION)) return + + if (!isCallingMethod(node)) { + context.report( + ISSUE_SIMPLE_REQUIRES_NO_PERMISSION, + node, + context.getLocation(node), + """ + Method ${node.name} doesn't perform any permission checks, meaning it should \ + be annotated with @RequiresNoPermission. + """.trimMargin() + ) + } + } + + private fun isCallingMethod(node: UMethod): Boolean { + val uCallExpressionVisitor = UCallExpressionVisitor() + node.accept(uCallExpressionVisitor) + + return uCallExpressionVisitor.isCallingMethod + } + + /** + * Visits the body of a `UMethod` and determines if it encounters a `UCallExpression` which is + * a `UastCallKind.METHOD_CALL`. `isCallingMethod` will hold the result of the search procedure. + */ + private class UCallExpressionVisitor : AbstractUastVisitor() { + var isCallingMethod = false + + override fun visitElement(node: UElement): Boolean { + // Stop the search early when a method call has been found. + return isCallingMethod + } + + override fun visitCallExpression(node: UCallExpression): Boolean { + if (node.kind != UastCallKind.METHOD_CALL) return false + + isCallingMethod = true + return true + } + } + + companion object { + + private val EXPLANATION = """ + Method implementations of AIDL Interfaces hosted by the `system_server` which do not + call any other methods should be annotated with @RequiresNoPermission. That is because + not calling any other methods implies that the method does not perform any permission + checking. + + Please migrate to an @RequiresNoPermission annotation. + """.trimIndent() + + @JvmField + val ISSUE_SIMPLE_REQUIRES_NO_PERMISSION = Issue.create( + id = "SimpleRequiresNoPermission", + briefDescription = "System Service APIs not calling other methods should use @RNP", + explanation = EXPLANATION, + category = Category.SECURITY, + priority = 5, + severity = Severity.ERROR, + implementation = Implementation( + SimpleRequiresNoPermissionDetector::class.java, + Scope.JAVA_FILE_SCOPE + ), + ) + } +} diff --git a/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/PermissionAnnotationDetectorTest.kt b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/PermissionAnnotationDetectorTest.kt new file mode 100644 index 000000000000..f985d026de16 --- /dev/null +++ b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/PermissionAnnotationDetectorTest.kt @@ -0,0 +1,185 @@ +/* + * 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.google.android.lint.aidl + +import com.android.tools.lint.checks.infrastructure.LintDetectorTest +import com.android.tools.lint.checks.infrastructure.TestLintTask +import com.android.tools.lint.detector.api.Detector +import com.android.tools.lint.detector.api.Issue + +@Suppress("UnstableApiUsage") +class PermissionAnnotationDetectorTest : LintDetectorTest() { + override fun getDetector(): Detector = + PermissionAnnotationDetector() + + override fun getIssues(): List<Issue> = listOf( + PermissionAnnotationDetector.ISSUE_MISSING_PERMISSION_ANNOTATION, + ) + + override fun lint(): TestLintTask = super.lint().allowMissingSdk(true) + + /** No issue scenario */ + + fun testDoesNotDetectIssuesInCorrectScenario() { + lint() + .files( + java( + createVisitedPath("Foo.java"), + """ + package com.android.server; + public class Foo extends IFoo.Stub { + @Override + @android.annotation.EnforcePermission("android.Manifest.permission.READ_CONTACTS") + public void testMethod() { } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testMissingAnnotation() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends IBar.Stub { + public void testMethod(int parameter1, int parameter2) { } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expect( + """ + src/frameworks/base/services/java/com/android/server/Bar.java:3: Error: testMethod should be annotated with either @EnforcePermission, @RequiresNoPermission or @PermissionManuallyEnforced. [MissingPermissionAnnotation] + public void testMethod(int parameter1, int parameter2) { } + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1 errors, 0 warnings + """ + ) + } + + fun testMissingAnnotationInIgnoredDirectory() { + lint() + .files( + java( + ignoredPath, + """ + package com.android.server; + public class Bar extends IBar.Stub { + public void testMethod(int parameter1, int parameter2) { } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + // If this test fails, consider the following steps: + // 1. Pick the first entry (interface) from `exemptAidlInterfaces`. + // 2. Change `interfaceIExempted` to use that interface. + // 3. Change this test's class to extend the interface's Stub. + fun testMissingAnnotationAidlInterfaceExempted() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends android.accessibilityservice.IBrailleDisplayConnection.Stub { + public void testMethod() { } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testMissingAnnotationAidlInterfaceAbstractMethod() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public abstract class Bar extends IBar.Stub { + public abstract void testMethod(int parameter1, int parameter2); + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testNoIssueWhenExtendingWithAnotherSubclass() { + lint() + .files( + java( + createVisitedPath("Foo.java"), + """ + package com.android.server; + public class Foo extends IFoo.Stub { + @Override + @android.annotation.EnforcePermission(android.Manifest.permission.READ_PHONE_STATE) + public void testMethod() { } + // not an AIDL method, just another method + public void someRandomMethod() { } + } + """ + ) + .indented(), + java( + createVisitedPath("Baz.java"), + """ + package com.android.server; + public class Baz extends Bar { + @Override + public void someRandomMethod() { } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + private val stubs = arrayOf(interfaceIFoo, interfaceIBar, interfaceIExempted) + + private fun createVisitedPath(filename: String) = + "src/frameworks/base/services/java/com/android/server/$filename" + + private val ignoredPath = "src/test/pkg/TestClass.java" +} diff --git a/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetectorTest.kt b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetectorTest.kt new file mode 100644 index 000000000000..a33b48c7eaa0 --- /dev/null +++ b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/SimpleRequiresNoPermissionDetectorTest.kt @@ -0,0 +1,244 @@ +/* + * Copyright (C) 2024 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.google.android.lint.aidl + +import com.android.tools.lint.checks.infrastructure.LintDetectorTest +import com.android.tools.lint.checks.infrastructure.TestLintTask +import com.android.tools.lint.detector.api.Detector +import com.android.tools.lint.detector.api.Issue + +class SimpleRequiresNoPermissionDetectorTest : LintDetectorTest() { + override fun getDetector(): Detector = SimpleRequiresNoPermissionDetector() + override fun getIssues(): List<Issue> = listOf( + SimpleRequiresNoPermissionDetector + .ISSUE_SIMPLE_REQUIRES_NO_PERMISSION + ) + + override fun lint(): TestLintTask = super.lint().allowMissingSdk() + + fun testRequiresNoPermissionUsedCorrectly_shouldNotWarn() { + lint() + .files( + java( + createVisitedPath("Foo.java"), + """ + package com.android.server; + public class Foo extends IFoo.Stub { + private int memberInt; + + @Override + @android.annotation.RequiresNoPermission + public void testMethodNoPermission(int parameter1, int parameter2) { + if (parameter1 < parameter2) { + memberInt = parameter1; + } else { + memberInt = parameter2; + } + } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testMissingRequiresNoPermission_shouldWarn() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends IBar.Stub { + private int memberInt; + + @Override + public void testMethod(int parameter1, int parameter2) { + if (parameter1 < parameter2) { + memberInt = parameter1; + } else { + memberInt = parameter2; + } + } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expect( + """ + src/frameworks/base/services/java/com/android/server/Bar.java:5: Error: Method testMethod doesn't perform any permission checks, meaning it should be annotated with @RequiresNoPermission. [SimpleRequiresNoPermission] + @Override + ^ + 1 errors, 0 warnings + """ + ) + } + + fun testMethodOnlyPerformsConstructorCall_shouldWarn() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends IBar.Stub { + private IntPair memberIntPair; + + @Override + public void testMethod(int parameter1, int parameter2) { + memberIntPair = new IntPair(parameter1, parameter2); + } + + private static class IntPair { + public int first; + public int second; + + public IntPair(int first, int second) { + this.first = first; + this.second = second; + } + } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expect( + """ + src/frameworks/base/services/java/com/android/server/Bar.java:5: Error: Method testMethod doesn't perform any permission checks, meaning it should be annotated with @RequiresNoPermission. [SimpleRequiresNoPermission] + @Override + ^ + 1 errors, 0 warnings + """ + ) + } + + fun testMissingRequiresNoPermissionInIgnoredDirectory_shouldNotWarn() { + lint() + .files( + java( + ignoredPath, + """ + package com.android.server; + public class Bar extends IBar.Stub { + @Override + public void testMethod(int parameter1, int parameter2) {} + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testMissingRequiresNoPermissionAbstractMethod_shouldNotWarn() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public abstract class Bar extends IBar.Stub { + private int memberInt; + + @Override + public abstract void testMethodNoPermission(int parameter1, int parameter2); + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + // If this test fails, consider the following steps: + // 1. Pick the first entry (interface) from `exemptAidlInterfaces`. + // 2. Change `interfaceIExempted` to use that interface. + // 3. Change this test's class to extend the interface's Stub. + fun testMissingRequiresNoPermissionAidlInterfaceExempted_shouldNotWarn() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends android.accessibilityservice.IBrailleDisplayConnection.Stub { + public void testMethod(int parameter1, int parameter2) {} + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testMethodMakesAnotherMethodCall_shouldNotWarn() { + lint() + .files( + java( + createVisitedPath("Bar.java"), + """ + package com.android.server; + public class Bar extends IBar.Stub { + private int memberInt; + + @Override + public void testMethod(int parameter1, int parameter2) { + if (!hasPermission()) return; + + if (parameter1 < parameter2) { + memberInt = parameter1; + } else { + memberInt = parameter2; + } + } + + private bool hasPermission() { + // Perform a permission check. + return true; + } + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + private val stubs = arrayOf(interfaceIFoo, interfaceIBar, interfaceIExempted) + + private fun createVisitedPath(filename: String) = + "src/frameworks/base/services/java/com/android/server/$filename" + + private val ignoredPath = "src/test/pkg/TestClass.java" +} diff --git a/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/Stubs.kt b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/Stubs.kt index 2ec8fddbb4e9..18a8f186b624 100644 --- a/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/Stubs.kt +++ b/tools/lint/global/checks/src/test/java/com/google/android/lint/aidl/Stubs.kt @@ -85,4 +85,46 @@ val manifestStub: TestFile = java( } } """.trimIndent() -)
\ No newline at end of file +) + +// A service with permission annotation on the method. +val interfaceIFoo: TestFile = java( + """ + public interface IFoo extends android.os.IInterface { + public static abstract class Stub extends android.os.Binder implements IFoo { + } + @Override + @android.annotation.EnforcePermission(android.Manifest.permission.READ_PHONE_STATE) + public void testMethod(); + @Override + @android.annotation.RequiresNoPermission + public void testMethodNoPermission(int parameter1, int parameter2); + @Override + @android.annotation.PermissionManuallyEnforced + public void testMethodManual(); + } + """ +).indented() + +// A service with no permission annotation. +val interfaceIBar: TestFile = java( + """ + public interface IBar extends android.os.IInterface { + public static abstract class Stub extends android.os.Binder implements IBar { + } + public void testMethod(int parameter1, int parameter2); + } + """ +).indented() + +// A service whose AIDL Interface is exempted. +val interfaceIExempted: TestFile = java( + """ + package android.accessibilityservice; + public interface IBrailleDisplayConnection extends android.os.IInterface { + public static abstract class Stub extends android.os.Binder implements IBrailleDisplayConnection { + } + public void testMethod(); + } + """ +).indented() diff --git a/tools/lint/global/integration_tests/Android.bp b/tools/lint/global/integration_tests/Android.bp index 40281d263a4c..05ba405d2c52 100644 --- a/tools/lint/global/integration_tests/Android.bp +++ b/tools/lint/global/integration_tests/Android.bp @@ -38,7 +38,7 @@ java_library { python_library_host { name: "AndroidGlobalLintTestNoAidl_py", - data: [":AndroidGlobalLintTestNoAidl{.lint}"], + device_common_data: [":AndroidGlobalLintTestNoAidl{.lint}"], pkg_path: "no_aidl", } @@ -53,7 +53,7 @@ java_library { python_library_host { name: "AndroidGlobalLintTestMissingAnnotation_py", - data: [":AndroidGlobalLintTestMissingAnnotation{.lint}"], + device_common_data: [":AndroidGlobalLintTestMissingAnnotation{.lint}"], pkg_path: "missing_annotation", } diff --git a/tools/lint/utils/README.md b/tools/lint/utils/README.md new file mode 100644 index 000000000000..b5583c54b25c --- /dev/null +++ b/tools/lint/utils/README.md @@ -0,0 +1,11 @@ +# Utility Android Lint Checks for AOSP + +This directory contains scripts that execute utility Android Lint Checks for AOSP, specifically: +* `enforce_permission_counter.py`: Provides statistics regarding the percentage of annotated/not + annotated `AIDL` methods with `@EnforcePermission` annotations. +* `generate-exempt-aidl-interfaces.sh`: Provides a list of all `AIDL` interfaces in the entire + source tree. + +When adding a new utility Android Lint check to this directory, consider adding any utility or +data processing tool you might require. Make sure that your contribution is documented in this +README file. diff --git a/tools/lint/utils/checks/src/main/java/com/google/android/lint/AndroidUtilsIssueRegistry.kt b/tools/lint/utils/checks/src/main/java/com/google/android/lint/AndroidUtilsIssueRegistry.kt index fa61c42ef8e6..98428810c0fc 100644 --- a/tools/lint/utils/checks/src/main/java/com/google/android/lint/AndroidUtilsIssueRegistry.kt +++ b/tools/lint/utils/checks/src/main/java/com/google/android/lint/AndroidUtilsIssueRegistry.kt @@ -19,6 +19,7 @@ package com.google.android.lint import com.android.tools.lint.client.api.IssueRegistry import com.android.tools.lint.client.api.Vendor import com.android.tools.lint.detector.api.CURRENT_API +import com.google.android.lint.aidl.ExemptAidlInterfacesGenerator import com.google.android.lint.aidl.AnnotatedAidlCounter import com.google.auto.service.AutoService @@ -27,6 +28,7 @@ import com.google.auto.service.AutoService class AndroidUtilsIssueRegistry : IssueRegistry() { override val issues = listOf( AnnotatedAidlCounter.ISSUE_ANNOTATED_AIDL_COUNTER, + ExemptAidlInterfacesGenerator.ISSUE_PERMISSION_ANNOTATION_EXEMPT_AIDL_INTERFACES, ) override val api: Int @@ -38,6 +40,6 @@ class AndroidUtilsIssueRegistry : IssueRegistry() { override val vendor: Vendor = Vendor( vendorName = "Android", feedbackUrl = "http://b/issues/new?component=315013", - contact = "tweek@google.com" + contact = "android-platform-abuse-prevention-withfriends@google.com" ) } diff --git a/tools/lint/utils/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfacesGenerator.kt b/tools/lint/utils/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfacesGenerator.kt new file mode 100644 index 000000000000..57c2e5aa9767 --- /dev/null +++ b/tools/lint/utils/checks/src/main/java/com/google/android/lint/aidl/ExemptAidlInterfacesGenerator.kt @@ -0,0 +1,83 @@ +/* + * Copyright (C) 2024 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.google.android.lint.aidl + +import com.android.tools.lint.detector.api.Category +import com.android.tools.lint.detector.api.Context +import com.android.tools.lint.detector.api.Implementation +import com.android.tools.lint.detector.api.Issue +import com.android.tools.lint.detector.api.JavaContext +import com.android.tools.lint.detector.api.Scope +import com.android.tools.lint.detector.api.Severity +import org.jetbrains.uast.UBlockExpression +import org.jetbrains.uast.UMethod + +/** + * Generates a set of fully qualified AIDL Interface names present in the entire source tree with + * the following requirement: their implementations have to be inside directories whose path + * prefixes match `systemServicePathPrefixes`. + */ +class ExemptAidlInterfacesGenerator : AidlImplementationDetector() { + private val targetExemptAidlInterfaceNames = mutableSetOf<String>() + + // We could've improved performance by visiting classes rather than methods, however, this lint + // check won't be run regularly, hence we've decided not to add extra overrides to + // AidlImplementationDetector. + override fun visitAidlMethod( + context: JavaContext, + node: UMethod, + interfaceName: String, + body: UBlockExpression + ) { + if (!isSystemServicePath(context)) return + + val fullyQualifiedInterfaceName = + getContainingAidlInterfaceQualified(context, node) ?: return + + targetExemptAidlInterfaceNames.add("\"$fullyQualifiedInterfaceName\",") + } + + override fun afterCheckEachProject(context: Context) { + if (targetExemptAidlInterfaceNames.isEmpty()) return + + val message = targetExemptAidlInterfaceNames.joinToString("\n") + + context.report( + ISSUE_PERMISSION_ANNOTATION_EXEMPT_AIDL_INTERFACES, + context.getLocation(context.project.dir), + "\n" + message + "\n", + ) + } + + companion object { + @JvmField + val ISSUE_PERMISSION_ANNOTATION_EXEMPT_AIDL_INTERFACES = Issue.create( + id = "PermissionAnnotationExemptAidlInterfaces", + briefDescription = "Returns a set of all AIDL interfaces", + explanation = """ + Produces the exemptAidlInterfaces set used by PermissionAnnotationDetector + """.trimIndent(), + category = Category.SECURITY, + priority = 5, + severity = Severity.INFORMATIONAL, + implementation = Implementation( + ExemptAidlInterfacesGenerator::class.java, + Scope.JAVA_FILE_SCOPE + ) + ) + } +} diff --git a/tools/lint/utils/checks/src/test/java/com/google/android/lint/aidl/ExemptAidlInterfacesGeneratorTest.kt b/tools/lint/utils/checks/src/test/java/com/google/android/lint/aidl/ExemptAidlInterfacesGeneratorTest.kt new file mode 100644 index 000000000000..9a17bb4c8d3e --- /dev/null +++ b/tools/lint/utils/checks/src/test/java/com/google/android/lint/aidl/ExemptAidlInterfacesGeneratorTest.kt @@ -0,0 +1,191 @@ +/* + * Copyright (C) 2024 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.google.android.lint.aidl + +import com.android.tools.lint.checks.infrastructure.LintDetectorTest +import com.android.tools.lint.checks.infrastructure.TestFile +import com.android.tools.lint.checks.infrastructure.TestLintTask +import com.android.tools.lint.detector.api.Detector +import com.android.tools.lint.detector.api.Issue + +class ExemptAidlInterfacesGeneratorTest : LintDetectorTest() { + override fun getDetector(): Detector = ExemptAidlInterfacesGenerator() + + override fun getIssues(): List<Issue> = listOf( + ExemptAidlInterfacesGenerator.ISSUE_PERMISSION_ANNOTATION_EXEMPT_AIDL_INTERFACES, + ) + + override fun lint(): TestLintTask = super.lint().allowMissingSdk(true) + + fun testMultipleAidlInterfacesImplemented() { + lint() + .files( + java( + createVisitedPath("TestClass1.java"), + """ + package com.android.server; + public class TestClass1 extends IFoo.Stub { + public void testMethod() {} + } + """ + ) + .indented(), + java( + createVisitedPath("TestClass2.java"), + """ + package com.android.server; + public class TestClass2 extends IBar.Stub { + public void testMethod() {} + } + """ + ) + .indented(), + *stubs, + ) + .run() + .expect( + """ + app: Information: "IFoo", + "IBar", [PermissionAnnotationExemptAidlInterfaces] + 0 errors, 0 warnings + """ + ) + } + + fun testSingleAidlInterfaceRepeated() { + lint() + .files( + java( + createVisitedPath("TestClass1.java"), + """ + package com.android.server; + public class TestClass1 extends IFoo.Stub { + public void testMethod() {} + } + """ + ) + .indented(), + java( + createVisitedPath("TestClass2.java"), + """ + package com.android.server; + public class TestClass2 extends IFoo.Stub { + public void testMethod() {} + } + """ + ) + .indented(), + *stubs, + ) + .run() + .expect( + """ + app: Information: "IFoo", [PermissionAnnotationExemptAidlInterfaces] + 0 errors, 0 warnings + """ + ) + } + + fun testAnonymousClassExtendsAidlStub() { + lint() + .files( + java( + createVisitedPath("TestClass.java"), + """ + package com.android.server; + public class TestClass { + private IBinder aidlImpl = new IFoo.Stub() { + public void testMethod() {} + }; + } + """ + ) + .indented(), + *stubs, + ) + .run() + .expect( + """ + app: Information: "IFoo", [PermissionAnnotationExemptAidlInterfaces] + 0 errors, 0 warnings + """ + ) + } + + fun testNoAidlInterfacesImplemented() { + lint() + .files( + java( + createVisitedPath("TestClass.java"), + """ + package com.android.server; + public class TestClass { + public void testMethod() {} + } + """ + ) + .indented(), + *stubs + ) + .run() + .expectClean() + } + + fun testAidlInterfaceImplementedInIgnoredDirectory() { + lint() + .files( + java( + ignoredPath, + """ + package com.android.server; + public class TestClass1 extends IFoo.Stub { + public void testMethod() {} + } + """ + ) + .indented(), + *stubs, + ) + .run() + .expectClean() + } + + private val interfaceIFoo: TestFile = java( + """ + public interface IFoo extends android.os.IInterface { + public static abstract class Stub extends android.os.Binder implements IFoo {} + public void testMethod(); + } + """ + ).indented() + + private val interfaceIBar: TestFile = java( + """ + public interface IBar extends android.os.IInterface { + public static abstract class Stub extends android.os.Binder implements IBar {} + public void testMethod(); + } + """ + ).indented() + + private val stubs = arrayOf(interfaceIFoo, interfaceIBar) + + private fun createVisitedPath(filename: String) = + "src/frameworks/base/services/java/com/android/server/$filename" + + private val ignoredPath = "src/test/pkg/TestClass.java" +} diff --git a/tools/lint/utils/generate-exempt-aidl-interfaces.sh b/tools/lint/utils/generate-exempt-aidl-interfaces.sh new file mode 100755 index 000000000000..44dcdd74fe06 --- /dev/null +++ b/tools/lint/utils/generate-exempt-aidl-interfaces.sh @@ -0,0 +1,59 @@ +# +# Copyright (C) 2024 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. +# + +# Create a directory for the results and a nested temporary directory. +mkdir -p $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/tmp + +# Create a copy of `AndroidGlobalLintChecker.jar` to restore it afterwards. +cp $ANDROID_BUILD_TOP/prebuilts/cmdline-tools/AndroidGlobalLintChecker.jar \ + $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/AndroidGlobalLintChecker.jar + +# Configure the environment variable required for running the lint check on the entire source tree. +export ANDROID_LINT_CHECK=PermissionAnnotationExemptAidlInterfaces + +# Build the target corresponding to the lint checks present in the `utils` directory. +m AndroidUtilsLintChecker + +# Replace `AndroidGlobalLintChecker.jar` with the newly built `jar` file. +cp $ANDROID_BUILD_TOP/out/host/linux-x86/framework/AndroidUtilsLintChecker.jar \ + $ANDROID_BUILD_TOP/prebuilts/cmdline-tools/AndroidGlobalLintChecker.jar; + +# Run the lint check on the entire source tree. +m lint-check + +# Copy the archive containing the results of `lint-check` into the temporary directory. +cp $ANDROID_BUILD_TOP/out/soong/lint-report-text.zip \ + $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/tmp + +cd $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/tmp + +# Unzip the archive containing the results of `lint-check`. +unzip lint-report-text.zip + +# Concatenate the results of `lint-check` into a single string. +concatenated_reports=$(find . -type f | xargs cat) + +# Extract the fully qualified names of the AIDL Interfaces from the concatenated results. Output +# this list into `out/soong/exempt_aidl_interfaces_generator_output/exempt_aidl_interfaces`. +echo $concatenated_reports | grep -Eo '\"([a-zA-Z0-9_]*\.)+[a-zA-Z0-9_]*\",' | sort | uniq > ../exempt_aidl_interfaces + +# Remove the temporary directory. +rm -rf $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/tmp + +# Restore the original copy of `AndroidGlobalLintChecker.jar` and delete the copy. +cp $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/AndroidGlobalLintChecker.jar \ + $ANDROID_BUILD_TOP/prebuilts/cmdline-tools/AndroidGlobalLintChecker.jar +rm $ANDROID_BUILD_TOP/out/soong/exempt_aidl_interfaces_generator_output/AndroidGlobalLintChecker.jar diff --git a/tools/preload-check/Android.bp b/tools/preload-check/Android.bp index 73caac694cb4..24ec12c50520 100644 --- a/tools/preload-check/Android.bp +++ b/tools/preload-check/Android.bp @@ -28,5 +28,5 @@ java_test_host { libs: ["tradefed"], test_suites: ["general-tests"], required: ["preload-check-device"], - data: [":preload-check-device"], + device_common_data: [":preload-check-device"], } diff --git a/tools/protologtool/src/com/android/protolog/tool/ProtoLogTool.kt b/tools/protologtool/src/com/android/protolog/tool/ProtoLogTool.kt index 0f1373c34ce6..fd7d2b35bb6f 100644 --- a/tools/protologtool/src/com/android/protolog/tool/ProtoLogTool.kt +++ b/tools/protologtool/src/com/android/protolog/tool/ProtoLogTool.kt @@ -27,7 +27,6 @@ import com.github.javaparser.ast.CompilationUnit import com.github.javaparser.ast.Modifier import com.github.javaparser.ast.NodeList import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration -import com.github.javaparser.ast.body.InitializerDeclaration import com.github.javaparser.ast.expr.ArrayAccessExpr import com.github.javaparser.ast.expr.ArrayCreationExpr import com.github.javaparser.ast.expr.ArrayInitializerExpr @@ -43,7 +42,10 @@ import com.github.javaparser.ast.expr.NullLiteralExpr import com.github.javaparser.ast.expr.ObjectCreationExpr import com.github.javaparser.ast.expr.SimpleName import com.github.javaparser.ast.expr.StringLiteralExpr +import com.github.javaparser.ast.expr.VariableDeclarationExpr import com.github.javaparser.ast.stmt.BlockStmt +import com.github.javaparser.ast.stmt.ReturnStmt +import com.github.javaparser.ast.type.ClassOrInterfaceType import java.io.File import java.io.FileInputStream import java.io.FileNotFoundException @@ -194,6 +196,7 @@ object ProtoLogTool { groups: Map<String, LogGroup>, protoLogGroupsClassName: String ) { + var needsCreateLogGroupsMap = false classDeclaration.fields.forEach { field -> field.getAnnotationByClass(ProtoLogToolInjected::class.java) .ifPresent { annotationExpr -> @@ -221,33 +224,10 @@ object ProtoLogTool { } ?: NullLiteralExpr()) } ProtoLogToolInjected.Value.LOG_GROUPS.name -> { - val initializerBlockStmt = BlockStmt() - for (group in groups) { - initializerBlockStmt.addStatement( - MethodCallExpr() - .setName("put") - .setArguments( - NodeList(StringLiteralExpr(group.key), - FieldAccessExpr() - .setScope( - NameExpr( - protoLogGroupsClassName - )) - .setName(group.value.name))) - ) - group.key - } - - val treeMapCreation = ObjectCreationExpr() - .setType("TreeMap<String, IProtoLogGroup>") - .setAnonymousClassBody(NodeList( - InitializerDeclaration().setBody( - initializerBlockStmt - ) - )) - + needsCreateLogGroupsMap = true field.setFinal(true) - field.variables.first().setInitializer(treeMapCreation) + field.variables.first().setInitializer( + MethodCallExpr().setName("createLogGroupsMap")) } ProtoLogToolInjected.Value.CACHE_UPDATER.name -> { field.setFinal(true) @@ -260,6 +240,45 @@ object ProtoLogTool { } } } + + if (needsCreateLogGroupsMap) { + val body = BlockStmt() + body.addStatement(AssignExpr( + VariableDeclarationExpr( + ClassOrInterfaceType("TreeMap<String, IProtoLogGroup>"), + "result" + ), + ObjectCreationExpr().setType("TreeMap<String, IProtoLogGroup>"), + AssignExpr.Operator.ASSIGN + )) + for (group in groups) { + body.addStatement( + MethodCallExpr( + NameExpr("result"), + "put", + NodeList( + StringLiteralExpr(group.key), + FieldAccessExpr() + .setScope( + NameExpr( + protoLogGroupsClassName + )) + .setName(group.value.name) + ) + ) + ) + } + body.addStatement(ReturnStmt(NameExpr("result"))) + + val method = classDeclaration.addMethod( + "createLogGroupsMap", + Modifier.Keyword.PRIVATE, + Modifier.Keyword.STATIC, + Modifier.Keyword.FINAL + ) + method.setType("TreeMap<String, IProtoLogGroup>") + method.setBody(body) + } } private fun injectCacheClass( diff --git a/tools/sdkparcelables/src/com/android/sdkparcelables/Main.kt b/tools/sdkparcelables/src/com/android/sdkparcelables/Main.kt index 0b619488c49c..9c443324defb 100644 --- a/tools/sdkparcelables/src/com/android/sdkparcelables/Main.kt +++ b/tools/sdkparcelables/src/com/android/sdkparcelables/Main.kt @@ -23,13 +23,21 @@ import java.io.IOException import java.util.zip.ZipFile fun main(args: Array<String>) { - if (args.size != 2) { + if (args.size < 2 || args.size > 3) { usage() } val zipFileName = args[0] val aidlFileName = args[1] + var stable = false + if (args.size == 3) { + if (args[2] != "--guarantee_stable") { + usage() + } + stable = true + } + val zipFile: ZipFile try { @@ -55,6 +63,9 @@ fun main(args: Array<String>) { val outFile = File(aidlFileName) val outWriter = outFile.bufferedWriter() for (parcelable in parcelables) { + if (stable) { + outWriter.write("@JavaOnlyStableParcelable ") + } outWriter.write("parcelable ") outWriter.write(parcelable.replace('/', '.').replace('$', '.')) outWriter.write(";\n") diff --git a/tools/systemfeatures/Android.bp b/tools/systemfeatures/Android.bp new file mode 100644 index 000000000000..e6d0a3d4149f --- /dev/null +++ b/tools/systemfeatures/Android.bp @@ -0,0 +1,94 @@ +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], + default_team: "trendy_team_system_performance", +} + +java_library_host { + name: "systemfeatures-gen-lib", + srcs: [ + "src/**/*.java", + "src/**/*.kt", + ], + static_libs: [ + "guava", + "javapoet", + ], +} + +java_binary_host { + name: "systemfeatures-gen-tool", + main_class: "com.android.systemfeatures.SystemFeaturesGenerator", + static_libs: ["systemfeatures-gen-lib"], +} + +genrule { + name: "systemfeatures-gen-tests-srcs", + cmd: "$(location systemfeatures-gen-tool) com.android.systemfeatures.RwNoFeatures --readonly=false > $(location RwNoFeatures.java) && " + + "$(location systemfeatures-gen-tool) com.android.systemfeatures.RoNoFeatures --readonly=true --feature-apis=WATCH > $(location RoNoFeatures.java) && " + + "$(location systemfeatures-gen-tool) com.android.systemfeatures.RwFeatures --readonly=false --feature=WATCH:1 --feature=WIFI:0 --feature=VULKAN:UNAVAILABLE --feature=AUTO: > $(location RwFeatures.java) && " + + "$(location systemfeatures-gen-tool) com.android.systemfeatures.RoFeatures --readonly=true --feature=WATCH:1 --feature=WIFI:0 --feature=VULKAN:UNAVAILABLE --feature=AUTO: --feature-apis=WATCH,PC > $(location RoFeatures.java)", + out: [ + "RwNoFeatures.java", + "RoNoFeatures.java", + "RwFeatures.java", + "RoFeatures.java", + ], + tools: ["systemfeatures-gen-tool"], +} + +// Functional runtime behavior testing. +java_test_host { + name: "systemfeatures-gen-tests", + test_suites: ["general-tests"], + srcs: [ + "tests/src/**/*.java", + ":systemfeatures-gen-tests-srcs", + ], + test_options: { + unit_test: true, + }, + static_libs: [ + "aconfig-annotations-lib", + "framework-annotations-lib", + "junit", + "objenesis", + "mockito", + "systemfeatures-gen-lib", + "truth", + ], +} + +// Rename the goldens as they may be copied into the source tree, and we don't +// need or want the usual `.java` linting (e.g., copyright checks). +genrule { + name: "systemfeatures-gen-tests-golden-srcs", + cmd: "for f in $(in); do cp $$f $(genDir)/tests/gen/$$(basename $$f).gen; done", + srcs: [":systemfeatures-gen-tests-srcs"], + out: [ + "tests/gen/RwNoFeatures.java.gen", + "tests/gen/RoNoFeatures.java.gen", + "tests/gen/RwFeatures.java.gen", + "tests/gen/RoFeatures.java.gen", + ], +} + +// Golden output testing. Golden sources can be updated via: +// $ANDROID_BUILD_TOP/frameworks/base/tools/systemfeatures/tests/golden_test.sh --update +sh_test_host { + name: "systemfeatures-gen-golden-tests", + src: "tests/golden_test.sh", + filename: "systemfeatures-gen-golden-tests.sh", + test_config: "tests/systemfeatures-gen-golden-tests.xml", + data: [ + "tests/golden/**/*.java*", + ":systemfeatures-gen-tests-golden-srcs", + ], + test_options: { + unit_test: true, + }, +} diff --git a/tools/systemfeatures/OWNERS b/tools/systemfeatures/OWNERS new file mode 100644 index 000000000000..66c8506f58be --- /dev/null +++ b/tools/systemfeatures/OWNERS @@ -0,0 +1 @@ +include /PERFORMANCE_OWNERS diff --git a/tools/systemfeatures/README.md b/tools/systemfeatures/README.md new file mode 100644 index 000000000000..5836f81e5fd3 --- /dev/null +++ b/tools/systemfeatures/README.md @@ -0,0 +1,11 @@ +# Build-time system feature support + +## Overview + +System features exposed from `PackageManager` are defined and aggregated as +`<feature>` xml attributes across various partitions, and are currently queried +at runtime through the framework. This directory contains tooling that will +support *build-time* queries of select system features, enabling optimizations +like code stripping and conditionally dependencies when so configured. + +### TODO(b/203143243): Expand readme after landing codegen. diff --git a/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt b/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt new file mode 100644 index 000000000000..f260e2733843 --- /dev/null +++ b/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt @@ -0,0 +1,345 @@ +/* + * Copyright (C) 2024 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.systemfeatures + +import com.google.common.base.CaseFormat +import com.squareup.javapoet.ClassName +import com.squareup.javapoet.JavaFile +import com.squareup.javapoet.MethodSpec +import com.squareup.javapoet.ParameterizedTypeName +import com.squareup.javapoet.TypeSpec +import javax.lang.model.element.Modifier + +/* + * Simple Java code generator that takes as input a list of defined features and generates an + * accessory class based on the provided versions. + * + * <p>Example: + * + * <pre> + * <cmd> com.foo.RoSystemFeatures --readonly=true \ + * --feature=WATCH:0 --feature=AUTOMOTIVE: --feature=VULKAN:9348 --feature=PC:UNAVAILABLE + * --feature-apis=WATCH,PC,LEANBACK + * </pre> + * + * This generates a class that has the following signature: + * + * <pre> + * package com.foo; + * public final class RoSystemFeatures { + * @AssumeTrueForR8 + * public static boolean hasFeatureWatch(Context context); + * @AssumeFalseForR8 + * public static boolean hasFeaturePc(Context context); + * @AssumeTrueForR8 + * public static boolean hasFeatureVulkan(Context context); + * public static boolean hasFeatureAutomotive(Context context); + * public static boolean hasFeatureLeanback(Context context); + * public static Boolean maybeHasFeature(String feature, int version); + * public static ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures(); + * } + * </pre> + */ +object SystemFeaturesGenerator { + private const val FEATURE_ARG = "--feature=" + private const val FEATURE_APIS_ARG = "--feature-apis=" + private const val READONLY_ARG = "--readonly=" + private val PACKAGEMANAGER_CLASS = ClassName.get("android.content.pm", "PackageManager") + private val CONTEXT_CLASS = ClassName.get("android.content", "Context") + private val FEATUREINFO_CLASS = ClassName.get("android.content.pm", "FeatureInfo") + private val ARRAYMAP_CLASS = ClassName.get("android.util", "ArrayMap") + private val ASSUME_TRUE_CLASS = + ClassName.get("com.android.aconfig.annotations", "AssumeTrueForR8") + private val ASSUME_FALSE_CLASS = + ClassName.get("com.android.aconfig.annotations", "AssumeFalseForR8") + + private fun usage() { + println("Usage: SystemFeaturesGenerator <outputClassName> [options]") + println(" Options:") + println(" --readonly=true|false Whether to encode features as build-time constants") + println(" --feature=\$NAME:\$VER A feature+version pair, where \$VER can be:") + println(" * blank/empty == undefined (variable API)") + println(" * valid int == enabled (constant API)") + println(" * UNAVAILABLE == disabled (constant API)") + println(" This will always generate associated query APIs,") + println(" adding to or replacing those from `--feature-apis=`.") + println(" --feature-apis=\$NAME_1,\$NAME_2") + println(" A comma-separated set of features for which to always") + println(" generate named query APIs. If a feature in this set is") + println(" not explicitly defined via `--feature=`, then a simple") + println(" runtime passthrough API will be generated, regardless") + println(" of the `--readonly` flag. This allows decoupling the") + println(" API surface from variations in device feature sets.") + } + + /** Main entrypoint for build-time system feature codegen. */ + @JvmStatic + fun main(args: Array<String>) { + generate(args, System.out) + } + + /** + * Simple API entrypoint for build-time system feature codegen. + * + * Note: Typically this would be implemented in terms of a proper Builder-type input argument, + * but it's primarily used for testing as opposed to direct production usage. + */ + @JvmStatic + fun generate(args: Array<String>, output: Appendable) { + if (args.size < 1) { + usage() + return + } + + var readonly = false + var outputClassName: ClassName? = null + val featureArgs = mutableListOf<FeatureInfo>() + // We could just as easily hardcode this list, as the static API surface should change + // somewhat infrequently, but this decouples the codegen from the framework completely. + val featureApiArgs = mutableSetOf<String>() + for (arg in args) { + when { + arg.startsWith(READONLY_ARG) -> + readonly = arg.substring(READONLY_ARG.length).toBoolean() + arg.startsWith(FEATURE_ARG) -> { + featureArgs.add(parseFeatureArg(arg)) + } + arg.startsWith(FEATURE_APIS_ARG) -> { + featureApiArgs.addAll( + arg.substring(FEATURE_APIS_ARG.length).split(",").map { + parseFeatureName(it) + } + ) + } + else -> outputClassName = ClassName.bestGuess(arg) + } + } + + // First load in all of the feature APIs we want to generate. Explicit feature definitions + // will then override this set with the appropriate readonly and version value. + val features = mutableMapOf<String, FeatureInfo>() + featureApiArgs.associateByTo( + features, + { it }, + { FeatureInfo(it, version = null, readonly = false) }, + ) + featureArgs.associateByTo( + features, + { it.name }, + { FeatureInfo(it.name, it.version, it.readonly && readonly) }, + ) + + outputClassName + ?: run { + println("Output class name must be provided.") + usage() + return + } + + val classBuilder = + TypeSpec.classBuilder(outputClassName) + .addModifiers(Modifier.PUBLIC, Modifier.FINAL) + .addJavadoc("@hide") + + addFeatureMethodsToClass(classBuilder, features.values) + addMaybeFeatureMethodToClass(classBuilder, features.values) + addGetFeaturesMethodToClass(classBuilder, features.values) + + // TODO(b/203143243): Add validation of build vs runtime values to ensure consistency. + JavaFile.builder(outputClassName.packageName(), classBuilder.build()) + .indent(" ") + .skipJavaLangImports(true) + .addFileComment("This file is auto-generated. DO NOT MODIFY.\n") + .addFileComment("Args: ${args.joinToString(" \\\n ")}") + .build() + .writeTo(output) + } + + /* + * Parses a feature argument of the form "--feature=$NAME:$VER", where "$VER" is optional. + * * "--feature=WATCH:0" -> Feature enabled w/ version 0 (default version when enabled) + * * "--feature=WATCH:7" -> Feature enabled w/ version 7 + * * "--feature=WATCH:" -> Feature status undefined, runtime API generated + * * "--feature=WATCH:UNAVAILABLE" -> Feature disabled + */ + private fun parseFeatureArg(arg: String): FeatureInfo { + val featureArgs = arg.substring(FEATURE_ARG.length).split(":") + val name = parseFeatureName(featureArgs[0]) + return when (featureArgs.getOrNull(1)) { + null, "" -> FeatureInfo(name, null, readonly = false) + "UNAVAILABLE" -> FeatureInfo(name, null, readonly = true) + else -> { + val featureVersion = + featureArgs[1].toIntOrNull() + ?: throw IllegalArgumentException( + "Invalid feature version input for $name: ${featureArgs[1]}" + ) + FeatureInfo(name, featureVersion, readonly = true) + } + } + } + + private fun parseFeatureName(name: String): String = + when { + name.startsWith("android") -> + throw IllegalArgumentException( + "Invalid feature name input: \"android\"-namespaced features must be " + + "provided as PackageManager.FEATURE_* suffixes, not raw feature strings." + ) + name.startsWith("FEATURE_") -> name + else -> "FEATURE_$name" + } + + /* + * Adds per-feature query methods to the class with the form: + * {@code public static boolean hasFeatureX(Context context)}, + * returning the fallback value from PackageManager if not readonly. + */ + private fun addFeatureMethodsToClass( + builder: TypeSpec.Builder, + features: Collection<FeatureInfo>, + ) { + for (feature in features) { + // Turn "FEATURE_FOO" into "hasFeatureFoo". + val methodName = + "has" + CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, feature.name) + val methodBuilder = + MethodSpec.methodBuilder(methodName) + .addModifiers(Modifier.PUBLIC, Modifier.STATIC) + .addJavadoc("Check for ${feature.name}.\n\n@hide") + .returns(Boolean::class.java) + .addParameter(CONTEXT_CLASS, "context") + + if (feature.readonly) { + val featureEnabled = compareValues(feature.version, 0) >= 0 + methodBuilder.addAnnotation( + if (featureEnabled) ASSUME_TRUE_CLASS else ASSUME_FALSE_CLASS + ) + methodBuilder.addStatement("return $featureEnabled") + } else { + methodBuilder.addStatement( + "return hasFeatureFallback(context, \$T.\$N)", + PACKAGEMANAGER_CLASS, + feature.name + ) + } + builder.addMethod(methodBuilder.build()) + } + + // This is a trivial method, even if unused based on readonly-codegen, it does little harm + // to always include it. + builder.addMethod( + MethodSpec.methodBuilder("hasFeatureFallback") + .addModifiers(Modifier.PRIVATE, Modifier.STATIC) + .returns(Boolean::class.java) + .addParameter(CONTEXT_CLASS, "context") + .addParameter(String::class.java, "featureName") + .addStatement("return context.getPackageManager().hasSystemFeature(featureName, 0)") + .build() + ) + } + + /* + * Adds a generic query method to the class with the form: {@code public static boolean + * maybeHasFeature(String featureName, int version)}, returning null if the feature version is + * undefined or not (compile-time) readonly. + * + * This method is useful for internal usage within the framework, e.g., from the implementation + * of {@link android.content.pm.PackageManager#hasSystemFeature(Context)}, when we may only + * want a valid result if it's defined as readonly, and we want a custom fallback otherwise + * (e.g., to the existing runtime binder query). + */ + private fun addMaybeFeatureMethodToClass( + builder: TypeSpec.Builder, + features: Collection<FeatureInfo>, + ) { + val methodBuilder = + MethodSpec.methodBuilder("maybeHasFeature") + .addModifiers(Modifier.PUBLIC, Modifier.STATIC) + .addAnnotation(ClassName.get("android.annotation", "Nullable")) + .addJavadoc("@hide") + .returns(Boolean::class.javaObjectType) // Use object type for nullability + .addParameter(String::class.java, "featureName") + .addParameter(Int::class.java, "version") + + var hasSwitchBlock = false + for (feature in features) { + // We only return non-null results for queries against readonly-defined features. + if (!feature.readonly) { + continue + } + if (!hasSwitchBlock) { + // As an optimization, only create the switch block if needed. Even an empty + // switch-on-string block can induce a hash, which we can avoid if readonly + // support is completely disabled. + hasSwitchBlock = true + methodBuilder.beginControlFlow("switch (featureName)") + } + methodBuilder.addCode("case \$T.\$N: ", PACKAGEMANAGER_CLASS, feature.name) + if (feature.version != null) { + methodBuilder.addStatement("return \$L >= version", feature.version) + } else { + methodBuilder.addStatement("return false") + } + } + if (hasSwitchBlock) { + methodBuilder.addCode("default: ") + methodBuilder.addStatement("break") + methodBuilder.endControlFlow() + } + methodBuilder.addStatement("return null") + builder.addMethod(methodBuilder.build()) + } + + /* + * Adds a method to get all compile-time enabled features. + * + * This method is useful for internal usage within the framework to augment + * any system features that are parsed from the various partitions. + */ + private fun addGetFeaturesMethodToClass( + builder: TypeSpec.Builder, + features: Collection<FeatureInfo>, + ) { + val methodBuilder = + MethodSpec.methodBuilder("getReadOnlySystemEnabledFeatures") + .addModifiers(Modifier.PUBLIC, Modifier.STATIC) + .addAnnotation(ClassName.get("android.annotation", "NonNull")) + .addJavadoc("Gets features marked as available at compile-time, keyed by name." + + "\n\n@hide") + .returns(ParameterizedTypeName.get( + ARRAYMAP_CLASS, + ClassName.get(String::class.java), + FEATUREINFO_CLASS)) + + val availableFeatures = features.filter { it.readonly && it.version != null } + methodBuilder.addStatement("\$T<String, FeatureInfo> features = new \$T<>(\$L)", + ARRAYMAP_CLASS, ARRAYMAP_CLASS, availableFeatures.size) + if (!availableFeatures.isEmpty()) { + methodBuilder.addStatement("FeatureInfo fi = new FeatureInfo()") + } + for (feature in availableFeatures) { + methodBuilder.addStatement("fi.name = \$T.\$N", PACKAGEMANAGER_CLASS, feature.name) + methodBuilder.addStatement("fi.version = \$L", feature.version) + methodBuilder.addStatement("features.put(fi.name, new FeatureInfo(fi))") + } + methodBuilder.addStatement("return features") + builder.addMethod(methodBuilder.build()) + } + + private data class FeatureInfo(val name: String, val version: Int?, val readonly: Boolean) +} diff --git a/tools/systemfeatures/tests/golden/RoFeatures.java.gen b/tools/systemfeatures/tests/golden/RoFeatures.java.gen new file mode 100644 index 000000000000..ee97b26159de --- /dev/null +++ b/tools/systemfeatures/tests/golden/RoFeatures.java.gen @@ -0,0 +1,107 @@ +// This file is auto-generated. DO NOT MODIFY. +// Args: com.android.systemfeatures.RoFeatures \ +// --readonly=true \ +// --feature=WATCH:1 \ +// --feature=WIFI:0 \ +// --feature=VULKAN:UNAVAILABLE \ +// --feature=AUTO: \ +// --feature-apis=WATCH,PC +package com.android.systemfeatures; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.FeatureInfo; +import android.content.pm.PackageManager; +import android.util.ArrayMap; +import com.android.aconfig.annotations.AssumeFalseForR8; +import com.android.aconfig.annotations.AssumeTrueForR8; + +/** + * @hide + */ +public final class RoFeatures { + /** + * Check for FEATURE_WATCH. + * + * @hide + */ + @AssumeTrueForR8 + public static boolean hasFeatureWatch(Context context) { + return true; + } + + /** + * Check for FEATURE_PC. + * + * @hide + */ + public static boolean hasFeaturePc(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_PC); + } + + /** + * Check for FEATURE_WIFI. + * + * @hide + */ + @AssumeTrueForR8 + public static boolean hasFeatureWifi(Context context) { + return true; + } + + /** + * Check for FEATURE_VULKAN. + * + * @hide + */ + @AssumeFalseForR8 + public static boolean hasFeatureVulkan(Context context) { + return false; + } + + /** + * Check for FEATURE_AUTO. + * + * @hide + */ + public static boolean hasFeatureAuto(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_AUTO); + } + + private static boolean hasFeatureFallback(Context context, String featureName) { + return context.getPackageManager().hasSystemFeature(featureName, 0); + } + + /** + * @hide + */ + @Nullable + public static Boolean maybeHasFeature(String featureName, int version) { + switch (featureName) { + case PackageManager.FEATURE_WATCH: return 1 >= version; + case PackageManager.FEATURE_WIFI: return 0 >= version; + case PackageManager.FEATURE_VULKAN: return false; + default: break; + } + return null; + } + + /** + * Gets features marked as available at compile-time, keyed by name. + * + * @hide + */ + @NonNull + public static ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures() { + ArrayMap<String, FeatureInfo> features = new ArrayMap<>(2); + FeatureInfo fi = new FeatureInfo(); + fi.name = PackageManager.FEATURE_WATCH; + fi.version = 1; + features.put(fi.name, new FeatureInfo(fi)); + fi.name = PackageManager.FEATURE_WIFI; + fi.version = 0; + features.put(fi.name, new FeatureInfo(fi)); + return features; + } +} diff --git a/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen b/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen new file mode 100644 index 000000000000..40c7db7ff1df --- /dev/null +++ b/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen @@ -0,0 +1,49 @@ +// This file is auto-generated. DO NOT MODIFY. +// Args: com.android.systemfeatures.RoNoFeatures \ +// --readonly=true \ +// --feature-apis=WATCH +package com.android.systemfeatures; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.FeatureInfo; +import android.content.pm.PackageManager; +import android.util.ArrayMap; + +/** + * @hide + */ +public final class RoNoFeatures { + /** + * Check for FEATURE_WATCH. + * + * @hide + */ + public static boolean hasFeatureWatch(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_WATCH); + } + + private static boolean hasFeatureFallback(Context context, String featureName) { + return context.getPackageManager().hasSystemFeature(featureName, 0); + } + + /** + * @hide + */ + @Nullable + public static Boolean maybeHasFeature(String featureName, int version) { + return null; + } + + /** + * Gets features marked as available at compile-time, keyed by name. + * + * @hide + */ + @NonNull + public static ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures() { + ArrayMap<String, FeatureInfo> features = new ArrayMap<>(0); + return features; + } +} diff --git a/tools/systemfeatures/tests/golden/RwFeatures.java.gen b/tools/systemfeatures/tests/golden/RwFeatures.java.gen new file mode 100644 index 000000000000..7bf89614b92d --- /dev/null +++ b/tools/systemfeatures/tests/golden/RwFeatures.java.gen @@ -0,0 +1,79 @@ +// This file is auto-generated. DO NOT MODIFY. +// Args: com.android.systemfeatures.RwFeatures \ +// --readonly=false \ +// --feature=WATCH:1 \ +// --feature=WIFI:0 \ +// --feature=VULKAN:UNAVAILABLE \ +// --feature=AUTO: +package com.android.systemfeatures; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.FeatureInfo; +import android.content.pm.PackageManager; +import android.util.ArrayMap; + +/** + * @hide + */ +public final class RwFeatures { + /** + * Check for FEATURE_WATCH. + * + * @hide + */ + public static boolean hasFeatureWatch(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_WATCH); + } + + /** + * Check for FEATURE_WIFI. + * + * @hide + */ + public static boolean hasFeatureWifi(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_WIFI); + } + + /** + * Check for FEATURE_VULKAN. + * + * @hide + */ + public static boolean hasFeatureVulkan(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_VULKAN); + } + + /** + * Check for FEATURE_AUTO. + * + * @hide + */ + public static boolean hasFeatureAuto(Context context) { + return hasFeatureFallback(context, PackageManager.FEATURE_AUTO); + } + + private static boolean hasFeatureFallback(Context context, String featureName) { + return context.getPackageManager().hasSystemFeature(featureName, 0); + } + + /** + * @hide + */ + @Nullable + public static Boolean maybeHasFeature(String featureName, int version) { + return null; + } + + /** + * Gets features marked as available at compile-time, keyed by name. + * + * @hide + */ + @NonNull + public static ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures() { + ArrayMap<String, FeatureInfo> features = new ArrayMap<>(0); + return features; + } +} diff --git a/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen b/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen new file mode 100644 index 000000000000..eb7ec63f1d7d --- /dev/null +++ b/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen @@ -0,0 +1,38 @@ +// This file is auto-generated. DO NOT MODIFY. +// Args: com.android.systemfeatures.RwNoFeatures \ +// --readonly=false +package com.android.systemfeatures; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.FeatureInfo; +import android.util.ArrayMap; + +/** + * @hide + */ +public final class RwNoFeatures { + private static boolean hasFeatureFallback(Context context, String featureName) { + return context.getPackageManager().hasSystemFeature(featureName, 0); + } + + /** + * @hide + */ + @Nullable + public static Boolean maybeHasFeature(String featureName, int version) { + return null; + } + + /** + * Gets features marked as available at compile-time, keyed by name. + * + * @hide + */ + @NonNull + public static ArrayMap<String, FeatureInfo> getReadOnlySystemEnabledFeatures() { + ArrayMap<String, FeatureInfo> features = new ArrayMap<>(0); + return features; + } +} diff --git a/tools/systemfeatures/tests/golden_test.sh b/tools/systemfeatures/tests/golden_test.sh new file mode 100755 index 000000000000..c2492542bc37 --- /dev/null +++ b/tools/systemfeatures/tests/golden_test.sh @@ -0,0 +1,52 @@ +#!/usr/bin/env bash + +# Copyright (C) 2024 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. + +set -e + +GEN_DIR="tests/gen" +GOLDEN_DIR="tests/golden" + +if [[ $(basename $0) == "golden_test.sh" ]]; then + # We're running via command-line, so we need to: + # 1) manually update generated srcs + # 2) use absolute paths + if [ -z $ANDROID_BUILD_TOP ]; then + echo "You need to source and lunch before you can use this script directly." + exit 1 + fi + GEN_DIR="$ANDROID_BUILD_TOP/out/soong/.intermediates/frameworks/base/tools/systemfeatures/systemfeatures-gen-tests-golden-srcs/gen/$GEN_DIR" + GOLDEN_DIR="$ANDROID_BUILD_TOP/frameworks/base/tools/systemfeatures/$GOLDEN_DIR" + rm -rf "$GEN_DIR" + "$ANDROID_BUILD_TOP"/build/soong/soong_ui.bash --make-mode systemfeatures-gen-tests-golden-srcs +fi + +if [[ "$1" == "--update" ]]; then + rm -rf "$GOLDEN_DIR" + cp -R "$GEN_DIR" "$GOLDEN_DIR" + echo "Updated golden test files." +else + echo "Running diff from test output against golden test files..." + if diff -ruN "$GOLDEN_DIR" "$GEN_DIR" ; then + echo "No changes." + else + echo + echo "----------------------------------------------------------------------------------------" + echo "If changes look OK, run:" + echo " \$ANDROID_BUILD_TOP/frameworks/base/tools/systemfeatures/tests/golden_test.sh --update" + echo "----------------------------------------------------------------------------------------" + exit 1 + fi +fi diff --git a/tools/systemfeatures/tests/src/ArrayMap.java b/tools/systemfeatures/tests/src/ArrayMap.java new file mode 100644 index 000000000000..a5ed9b088896 --- /dev/null +++ b/tools/systemfeatures/tests/src/ArrayMap.java @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2024 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.util; + +import java.util.HashMap; + +/** Stub for testing. */ +public final class ArrayMap<K, V> extends HashMap<K, V> { + public ArrayMap(int capacity) { + super(capacity); + } +} diff --git a/tools/systemfeatures/tests/src/Context.java b/tools/systemfeatures/tests/src/Context.java new file mode 100644 index 000000000000..630bc0771a01 --- /dev/null +++ b/tools/systemfeatures/tests/src/Context.java @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2024 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.content; + +import android.content.pm.PackageManager; + +/** Stub for testing. */ +public class Context { + /** @hide */ + public PackageManager getPackageManager() { + return null; + } +} diff --git a/tools/systemfeatures/tests/src/FeatureInfo.java b/tools/systemfeatures/tests/src/FeatureInfo.java new file mode 100644 index 000000000000..9d57edc64ca5 --- /dev/null +++ b/tools/systemfeatures/tests/src/FeatureInfo.java @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2024 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.content.pm; + +/** Stub for testing */ +public final class FeatureInfo { + public String name; + public int version; + + public FeatureInfo() {} + + public FeatureInfo(FeatureInfo orig) { + name = orig.name; + version = orig.version; + } +} diff --git a/tools/systemfeatures/tests/src/PackageManager.java b/tools/systemfeatures/tests/src/PackageManager.java new file mode 100644 index 000000000000..db670482065a --- /dev/null +++ b/tools/systemfeatures/tests/src/PackageManager.java @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2024 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.content.pm; + +/** Stub for testing */ +public class PackageManager { + public static final String FEATURE_AUTO = "automotive"; + public static final String FEATURE_PC = "pc"; + public static final String FEATURE_VULKAN = "vulkan"; + public static final String FEATURE_WATCH = "watch"; + public static final String FEATURE_WIFI = "wifi"; + + /** @hide */ + public boolean hasSystemFeature(String featureName, int version) { + return false; + } +} diff --git a/tools/systemfeatures/tests/src/SystemFeaturesGeneratorApiTest.java b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorApiTest.java new file mode 100644 index 000000000000..f8c585d60ef7 --- /dev/null +++ b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorApiTest.java @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2024 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.systemfeatures; + +import static org.mockito.Mockito.any; +import static org.mockito.Mockito.atLeastOnce; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.verify; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; +import org.mockito.Mock; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; + +import java.io.IOException; + +// Note: This is a very simple argument test to validate certain behaviors for +// invalid arguments. Correctness and validity is largely exercised by +// SystemFeaturesGeneratorTest. +@RunWith(JUnit4.class) +public class SystemFeaturesGeneratorApiTest { + + @Rule public final MockitoRule mockito = MockitoJUnit.rule(); + + @Mock private Appendable mOut; + + @Test + public void testEmpty() throws IOException { + final String[] args = new String[] {}; + // This should just print the commandline and return. + SystemFeaturesGenerator.generate(args, mOut); + verify(mOut, never()).append(any()); + } + + @Test + public void testBasic() throws IOException { + final String[] args = new String[] { + "com.foo.Features", + "--feature=TELEVISION:0", + }; + SystemFeaturesGenerator.generate(args, mOut); + verify(mOut, atLeastOnce()).append(any()); + } + + @Test(expected = IllegalArgumentException.class) + public void testInvalidFeatureVersion() throws IOException { + final String[] args = new String[] { + "com.foo.Features", + "--feature=TELEVISION:blarg", + }; + SystemFeaturesGenerator.generate(args, mOut); + verify(mOut, never()).append(any()); + } + + @Test(expected = IllegalArgumentException.class) + public void testInvalidFeatureNameFromAndroidNamespace() throws IOException { + final String[] args = new String[] { + "com.foo.Features", + "--feature=android.hardware.doesntexist:0", + }; + SystemFeaturesGenerator.generate(args, mOut); + verify(mOut, never()).append(any()); + } +} diff --git a/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java new file mode 100644 index 000000000000..ed3f5c94ba79 --- /dev/null +++ b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java @@ -0,0 +1,172 @@ +/* + * Copyright (C) 2024 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.systemfeatures; + +import static com.google.common.truth.Truth.assertThat; + +import static org.mockito.Mockito.anyInt; +import static org.mockito.Mockito.anyString; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +import android.content.Context; +import android.content.pm.FeatureInfo; +import android.content.pm.PackageManager; + +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; +import org.mockito.Mock; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; + +import java.util.Map; + +@RunWith(JUnit4.class) +public class SystemFeaturesGeneratorTest { + + @Rule public final MockitoRule mockito = MockitoJUnit.rule(); + + @Mock private Context mContext; + @Mock private PackageManager mPackageManager; + + @Before + public void setUp() { + when(mContext.getPackageManager()).thenReturn(mPackageManager); + } + + @Test + public void testReadonlyDisabledNoDefinedFeatures() { + // Always report null for conditional queries if readonly codegen is disabled. + assertThat(RwNoFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, 0)).isNull(); + assertThat(RwNoFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, 0)).isNull(); + assertThat(RwNoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 0)).isNull(); + assertThat(RwNoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 0)).isNull(); + assertThat(RwNoFeatures.maybeHasFeature("com.arbitrary.feature", 0)).isNull(); + assertThat(RwNoFeatures.getReadOnlySystemEnabledFeatures()).isEmpty(); + } + + @Test + public void testReadonlyNoDefinedFeatures() { + // If no features are explicitly declared as readonly available, always report + // null for conditional queries. + assertThat(RoNoFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, 0)).isNull(); + assertThat(RoNoFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, 0)).isNull(); + assertThat(RoNoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 0)).isNull(); + assertThat(RoNoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 0)).isNull(); + assertThat(RoNoFeatures.maybeHasFeature("com.arbitrary.feature", 0)).isNull(); + assertThat(RoNoFeatures.getReadOnlySystemEnabledFeatures()).isEmpty(); + + // Also ensure we fall back to the PackageManager for feature APIs without an accompanying + // versioned feature definition. + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(true); + assertThat(RwFeatures.hasFeatureWatch(mContext)).isTrue(); + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(false); + assertThat(RwFeatures.hasFeatureWatch(mContext)).isFalse(); + } + + @Test + public void testReadonlyDisabledWithDefinedFeatures() { + // Always fall back to the PackageManager for defined, explicit features queries. + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(true); + assertThat(RwFeatures.hasFeatureWatch(mContext)).isTrue(); + + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(false); + assertThat(RwFeatures.hasFeatureWatch(mContext)).isFalse(); + + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WIFI, 0)).thenReturn(true); + assertThat(RwFeatures.hasFeatureWifi(mContext)).isTrue(); + + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN, 0)).thenReturn(false); + assertThat(RwFeatures.hasFeatureVulkan(mContext)).isFalse(); + + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(false); + assertThat(RwFeatures.hasFeatureAuto(mContext)).isFalse(); + + // For defined and undefined features, conditional queries should report null (unknown). + assertThat(RwFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, 0)).isNull(); + assertThat(RwFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, 0)).isNull(); + assertThat(RwFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 0)).isNull(); + assertThat(RwFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 0)).isNull(); + assertThat(RwFeatures.maybeHasFeature("com.arbitrary.feature", 0)).isNull(); + assertThat(RwFeatures.getReadOnlySystemEnabledFeatures()).isEmpty(); + } + + @Test + public void testReadonlyWithDefinedFeatures() { + // Always use the build-time feature version for defined, explicit feature queries, never + // falling back to the runtime query. + assertThat(RoFeatures.hasFeatureWatch(mContext)).isTrue(); + assertThat(RoFeatures.hasFeatureWifi(mContext)).isTrue(); + assertThat(RoFeatures.hasFeatureVulkan(mContext)).isFalse(); + verify(mPackageManager, never()).hasSystemFeature(anyString(), anyInt()); + + // For defined feature types, conditional queries should reflect either: + // * Enabled if the feature version is specified + // * Disabled if UNAVAILABLE is specified + // * Unknown if no version value is provided + + // VERSION=1 + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, -1)).isTrue(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, 0)).isTrue(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WATCH, 100)).isFalse(); + + // VERSION=0 + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, -1)).isTrue(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, 0)).isTrue(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_WIFI, 100)).isFalse(); + + // VERSION=UNAVAILABLE + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, -1)).isFalse(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 0)).isFalse(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 100)).isFalse(); + + // VERSION= + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(false); + assertThat(RoFeatures.hasFeatureAuto(mContext)).isFalse(); + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(true); + assertThat(RoFeatures.hasFeatureAuto(mContext)).isTrue(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, -1)).isNull(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 0)).isNull(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 100)).isNull(); + + // For feature APIs without an associated feature definition, conditional queries should + // report null, and explicit queries should report runtime-defined versions. + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC, 0)).thenReturn(true); + assertThat(RoFeatures.hasFeaturePc(mContext)).isTrue(); + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC, 0)).thenReturn(false); + assertThat(RoFeatures.hasFeaturePc(mContext)).isFalse(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_PC, -1)).isNull(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_PC, 0)).isNull(); + assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_PC, 100)).isNull(); + + // For undefined types, conditional queries should report null (unknown). + assertThat(RoFeatures.maybeHasFeature("com.arbitrary.feature", -1)).isNull(); + assertThat(RoFeatures.maybeHasFeature("com.arbitrary.feature", 0)).isNull(); + assertThat(RoFeatures.maybeHasFeature("com.arbitrary.feature", 100)).isNull(); + assertThat(RoFeatures.maybeHasFeature("", 0)).isNull(); + + Map<String, FeatureInfo> compiledFeatures = RoFeatures.getReadOnlySystemEnabledFeatures(); + assertThat(compiledFeatures.keySet()) + .containsExactly(PackageManager.FEATURE_WATCH, PackageManager.FEATURE_WIFI); + assertThat(compiledFeatures.get(PackageManager.FEATURE_WATCH).version).isEqualTo(1); + assertThat(compiledFeatures.get(PackageManager.FEATURE_WIFI).version).isEqualTo(0); + } +} diff --git a/tools/systemfeatures/tests/systemfeatures-gen-golden-tests.xml b/tools/systemfeatures/tests/systemfeatures-gen-golden-tests.xml new file mode 100644 index 000000000000..e3a5841d8abb --- /dev/null +++ b/tools/systemfeatures/tests/systemfeatures-gen-golden-tests.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 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. +--> +<configuration description="Runs systemfeatures-gen golden diff test"> + <test class="com.android.tradefed.testtype.binary.ExecutableHostTest" > + <option name="binary" value="systemfeatures-gen-golden-tests.sh"/> + </test> +</configuration> diff --git a/wifi/tests/Android.bp b/wifi/tests/Android.bp index 1d3e4bd531b4..74a6be9baa56 100644 --- a/wifi/tests/Android.bp +++ b/wifi/tests/Android.bp @@ -44,8 +44,8 @@ android_test { ], libs: [ - "android.test.runner", - "android.test.base", + "android.test.runner.stubs", + "android.test.base.stubs", ], // Required by Extended Mockito |